File sliver_83cb34f62800fed14e14547c39337aab8e0427fe2c6310a3fb40ce0ac36168c9.elf
Function:
    0003b5a0
    0003b5a0runtime.(*mspan).reportZombies: ; void runtime.(*mspan).reportZombies(runtime.mspan * s)
    0003b5a0ldr x16, [x28+16]
    0003b5a4subs xzr, sp, x16
    0003b5a8b.ls 0x3b820
    0003b5acstr x30, [sp-128]!
    0003b5b0stur x29, [sp-8]
    0003b5b4sub x29, sp, 8
    0003b5b8str x0, [sp+136]
    0003b5bcbl runtime.printlock
    0003b5c0ldr x0, [sp+136]
    0003b5c4ldr x1, [x0+104]
    0003b5c8str x1, [sp+64]
    0003b5ccldrh w0, [x0+48]
    0003b5d0strh w0, [sp+38]
    0003b5d4bl runtime.printlock
    0003b5d8adrp x0, 0x686000
    0003b5dcadd x0, x0, 1309
    0003b5e0movz x1, 36
    0003b5e4bl runtime.printstring
    0003b5e8ldr x0, [sp+136]
    0003b5ecmov x1, x0
    0003b5f0mov x0, x1
    0003b5f4bl runtime.printuintptr
    0003b5f8adrp x0, 0x677000
    0003b5fcadd x0, x0, 2043
    0003b600movz x1, 11
    0003b604bl runtime.printstring
    0003b608ldr x0, [sp+64]
    0003b60cbl runtime.printuint
    0003b610adrp x0, 0x677000
    0003b614add x0, x0, 2054
    0003b618movz x1, 11
    0003b61cbl runtime.printstring
    0003b620ldrh w0, [sp+38]
    0003b624bl runtime.printuint
    0003b628adrp x0, 0x694000
    0003b62cadd x0, x0, 2813
    0003b630movz x1, 81
    0003b634bl runtime.printstring
    0003b638bl runtime.printunlock
    0003b63cldr x0, [sp+136]
    0003b640bl runtime.(*mspan).markBitsForBase
    0003b644str x0, [sp+72]
    0003b648strb w1, [sp+80]
    0003b64cstr x2, [sp+88]
    0003b650ldr x0, [sp+136]
    0003b654mov x1, xzr
    0003b658bl runtime.(*mspan).allocBitsForIndex
    0003b65cstr x0, [sp+96]
    0003b660strb w1, [sp+104]
    0003b664str x2, [sp+112]
    0003b668mov x0, xzr
    0003b66cb 0x3b688
    0003b670
    0003b670loc_3b670:
    0003b670add x0, sp, 72
    0003b674bl runtime.(*markBits).advance
    0003b678add x0, sp, 96
    0003b67cbl runtime.(*markBits).advance
    0003b680ldr x1, [sp+40]
    0003b684add x0, x1, 1
    0003b688
    0003b688loc_3b688:
    0003b688ldr x2, [sp+136]
    0003b68cldrh w3, [x2+50]
    0003b690subs xzr, x0, x3
    0003b694b.hs 0x3b80c
    0003b698str x0, [sp+40]
    0003b69cmov x0, x2
    0003b6a0bl runtime.(*mspan).base
    0003b6a4str x0, [sp+64]
    0003b6a8ldr x1, [sp+136]
    0003b6acldr x1, [x1+104]
    0003b6b0str x1, [sp+56]
    0003b6b4bl runtime.printlock
    0003b6b8ldr x1, [sp+64]
    0003b6bcldr x2, [sp+40]
    0003b6c0ldr x3, [sp+56]
    0003b6c4madd x0, x3, x2, x1
    0003b6c8str x0, [sp+48]
    0003b6ccbl runtime.printhex
    0003b6d0bl runtime.printunlock
    0003b6d4ldr x1, [sp+136]
    0003b6d8ldrh w2, [x1+48]
    0003b6dcldr x3, [sp+40]
    0003b6e0subs xzr, x3, x2
    0003b6e4b.hs 0x3b6f0
    0003b6e8orr x0, xzr, 1
    0003b6ecb 0x3b708
    0003b6f0
    0003b6f0loc_3b6f0:
    0003b6f0ldr x0, [sp+96]
    0003b6f4ldrb w1, [sp+104]
    0003b6f8ldr x2, [sp+112]
    0003b6fcbl runtime.markBits.isMarked
    0003b700ldr x1, [sp+136]
    0003b704ldr x3, [sp+40]
    0003b708
    0003b708loc_3b708:
    0003b708strb w0, [sp+37]
    0003b70ctbz w0, 0, 0x3b72c
    0003b710bl runtime.printlock
    0003b714adrp x0, 0x675000
    0003b718add x0, x0, 2431
    0003b71corr x1, xzr, 6
    0003b720bl runtime.printstring
    0003b724bl runtime.printunlock
    0003b728b 0x3b744
    0003b72c
    0003b72cloc_3b72c:
    0003b72cbl runtime.printlock
    0003b730adrp x0, 0x675000
    0003b734add x0, x0, 2437
    0003b738orr x1, xzr, 6
    0003b73cbl runtime.printstring
    0003b740bl runtime.printunlock
    0003b744
    0003b744loc_3b744:
    0003b744ldr x0, [sp+72]
    0003b748ldrb w1, [sp+80]
    0003b74cldr x2, [sp+88]
    0003b750bl runtime.markBits.isMarked
    0003b754tbz w0, 0, 0x3b774
    0003b758bl runtime.printlock
    0003b75cadrp x0, 0x676000
    0003b760add x0, x0, 2866
    0003b764movz x1, 9
    0003b768bl runtime.printstring
    0003b76cbl runtime.printunlock
    0003b770b 0x3b78c
    0003b774
    0003b774loc_3b774:
    0003b774bl runtime.printlock
    0003b778adrp x0, 0x676000
    0003b77cadd x0, x0, 2875
    0003b780movz x1, 9
    0003b784bl runtime.printstring
    0003b788bl runtime.printunlock
    0003b78c
    0003b78cloc_3b78c:
    0003b78cldr x0, [sp+72]
    0003b790ldrb w1, [sp+80]
    0003b794ldr x2, [sp+88]
    0003b798bl runtime.markBits.isMarked
    0003b79ctbz w0, 0, 0x3b7ac
    0003b7a0ldrb w0, [sp+37]
    0003b7a4eor x0, x0, 1
    0003b7a8b 0x3b7b0
    0003b7ac
    0003b7acloc_3b7ac:
    0003b7acmov x0, xzr
    0003b7b0
    0003b7b0loc_3b7b0:
    0003b7b0strb w0, [sp+36]
    0003b7b4tbz w0, 0, 0x3b7d0
    0003b7b8bl runtime.printlock
    0003b7bcadrp x0, 0x675000
    0003b7c0add x0, x0, 3479
    0003b7c4orr x1, xzr, 7
    0003b7c8bl runtime.printstring
    0003b7ccbl runtime.printunlock
    0003b7d0
    0003b7d0loc_3b7d0:
    0003b7d0bl runtime.printlock
    0003b7d4bl runtime.printnl
    0003b7d8bl runtime.printunlock
    0003b7dcldrb w0, [sp+36]
    0003b7e0tbz w0, 0, 0x3b670
    0003b7e4ldr x3, [sp+136]
    0003b7e8ldr x3, [x3+104]
    0003b7ecsubs xzr, x3, 1024
    0003b7f0orr x4, xzr, 1024
    0003b7f4csel x3, x4, x3, hi
    0003b7f8ldr x0, [sp+48]
    0003b7fcadd x1, x3, x0
    0003b800mov x2, xzr
    0003b804bl runtime.hexdumpWords
    0003b808b 0x3b670
    0003b80c
    0003b80cloc_3b80c:
    0003b80cadrp x0, 0x680000
    0003b810add x0, x0, 2116
    0003b814orr x1, xzr, 28
    0003b818bl runtime.throw
    0003b81chint
    0003b820
    0003b820loc_3b820:
    0003b820str x0, [sp+8]
    0003b824mov x3, x30
    0003b828bl runtime.morestack_noctxt.abi0
    0003b82cldr x0, [sp+8]
    0003b830b 0x3b5a0
    0003b834udf 0
    0003b838udf 0
    0003b83cudf 0
    0003b5a0
    0003b840
    0003b840runtime.deductSweepCredit: ; void runtime.deductSweepCredit(uintptr spanBytes, uintptr callerSweepPages)
    0003b840ldr x16, [x28+16]
    0003b844subs xzr, sp, x16
    0003b848b.ls 0x3b990
    0003b84cstr x30, [sp-64]!
    0003b850stur x29, [sp-8]
    0003b854sub x29, sp, 8
    0003b858adrp x27, 0xa07000
    0003b85cldr d0, [x27+2496]
    0003b860fcmp d0
    0003b864b.eq 0x3b8a0
    0003b868str x0, [sp+72]
    0003b86cstr x1, [sp+80]
    0003b870bl runtime.traceAcquire
    0003b874str x0, [sp+48]
    0003b878str x1, [sp+40]
    0003b87cbl runtime.traceLocker.ok
    0003b880tbz w0, 0, 0x3b8ac
    0003b884ldr x0, [sp+48]
    0003b888ldr x1, [sp+40]
    0003b88cbl runtime.traceLocker.GCSweepStart
    0003b890ldr x0, [sp+48]
    0003b894ldr x1, [sp+40]
    0003b898bl runtime.traceRelease
    0003b89cb 0x3b8ac
    0003b8a0
    0003b8a0loc_3b8a0:
    0003b8a0ldur x29, [sp-8]
    0003b8a4ldr x30, [sp], 64
    0003b8a8ret x30
    0003b8ac
    0003b8acloc_3b8ac:
    0003b8acadrp x0, 0xa07000
    0003b8b0add x0, x0, 2480
    0003b8b4bl internal/runtime/atomic.(*Uint64).Load
    0003b8b8str x0, [sp+24]
    0003b8bcadrp x0, 0xa11000
    0003b8c0add x0, x0, 2600
    0003b8c4bl internal/runtime/atomic.(*Uint64).Load
    0003b8c8adrp x27, 0xa07000
    0003b8ccldr x1, [x27+2488]
    0003b8d0sub x2, x0, x1
    0003b8d4ldr x3, [sp+72]
    0003b8d8add x2, x3, x2
    0003b8dcadrp x27, 0xa07000
    0003b8e0ldr d0, [x27+2496]
    0003b8e4subs xzr, x0, x1
    0003b8e8csel x1, x2, x3, hi
    0003b8ecucvtf d1, x1
    0003b8f0fmul d0, d0, d1
    0003b8f4fcvtzs x1, d0
    0003b8f8ldr x2, [sp+80]
    0003b8fcsub x1, x1, x2
    0003b900str x1, [sp+32]
    0003b904
    0003b904loc_3b904:
    0003b904adrp x0, 0xa07000
    0003b908add x0, x0, 2472
    0003b90cbl internal/runtime/atomic.(*Uint64).Load
    0003b910ldr x1, [sp+24]
    0003b914sub x2, x0, x1
    0003b918ldr x3, [sp+32]
    0003b91csubs xzr, x2, x3
    0003b920b.ge 0x3b958
    0003b924bl runtime.sweepone
    0003b928adds xzr, x0, 1
    0003b92cb.eq 0x3b94c
    0003b930adrp x0, 0xa07000
    0003b934add x0, x0, 2480
    0003b938bl internal/runtime/atomic.(*Uint64).Load
    0003b93cldr x1, [sp+24]
    0003b940subs xzr, x0, x1
    0003b944b.eq 0x3b904
    0003b948b 0x3b8ac
    0003b94c
    0003b94cloc_3b94c:
    0003b94cfmov d0, xzr
    0003b950adrp x27, 0xa07000
    0003b954str d0, [x27+2496]
    0003b958
    0003b958loc_3b958:
    0003b958bl runtime.traceAcquire
    0003b95cstr x0, [sp+48]
    0003b960str x1, [sp+40]
    0003b964bl runtime.traceLocker.ok
    0003b968tbz w0, 0, 0x3b984
    0003b96cldr x0, [sp+48]
    0003b970ldr x1, [sp+40]
    0003b974bl runtime.traceLocker.GCSweepDone
    0003b978ldr x0, [sp+48]
    0003b97cldr x1, [sp+40]
    0003b980bl runtime.traceRelease
    0003b984
    0003b984loc_3b984:
    0003b984ldur x29, [sp-8]
    0003b988ldr x30, [sp], 64
    0003b98cret x30
    0003b990
    0003b990loc_3b990:
    0003b990stp x0, x1, [sp+8]
    0003b994mov x3, x30
    0003b998bl runtime.morestack_noctxt.abi0
    0003b99cldp x0, x1, [sp+8]
    0003b9a0b 0x3b840
    0003b9a4udf 0
    0003b9a8udf 0
    0003b9acudf 0
    0003b840
    0003b9b0
    0003b9b0runtime.clobberfree: ; void runtime.clobberfree(void * x, uintptr size)
    0003b9b0ldr x16, [x28+16]
    0003b9b4subs xzr, sp, x16
    0003b9b8b.ls 0x3ba18
    0003b9bcstr x30, [sp-48]!
    0003b9c0stur x29, [sp-8]
    0003b9c4sub x29, sp, 8
    0003b9c8str x0, [sp+56]
    0003b9ccstr x1, [sp+64]
    0003b9d0mov x2, xzr
    0003b9d4b 0x3ba04
    0003b9d8
    0003b9d8loc_3b9d8:
    0003b9d8str x2, [sp+32]
    0003b9dcmov x1, x2
    0003b9e0bl runtime.add
    0003b9e4movn x2, 16656
    0003b9e8movk x2, 0xdead0000
    0003b9ecstr w2, [x0]
    0003b9f0ldr x3, [sp+32]
    0003b9f4add x3, x3, 4
    0003b9f8ldr x0, [sp+56]
    0003b9fcldr x1, [sp+64]
    0003ba00mov x2, x3
    0003ba04
    0003ba04loc_3ba04:
    0003ba04subs xzr, x1, x2
    0003ba08b.hi 0x3b9d8
    0003ba0cldur x29, [sp-8]
    0003ba10ldr x30, [sp], 48
    0003ba14ret x30
    0003ba18
    0003ba18loc_3ba18:
    0003ba18stp x0, x1, [sp+8]
    0003ba1cmov x3, x30
    0003ba20bl runtime.morestack_noctxt.abi0
    0003ba24ldp x0, x1, [sp+8]
    0003ba28b 0x3b9b0
    0003ba2cudf 0
    0003b9b0
    0003ba30
    0003ba30runtime.gcPaceSweeper: ; void runtime.gcPaceSweeper(uint64 trigger)
    0003ba30ldr x16, [x28+16]
    0003ba34subs xzr, sp, x16
    0003ba38b.ls 0x3bb14
    0003ba3cstr x30, [sp-64]!
    0003ba40stur x29, [sp-8]
    0003ba44sub x29, sp, 8
    0003ba48str x0, [sp+72]
    0003ba4cadrp x0, 0x9f7000
    0003ba50add x0, x0, 2112
    0003ba54bl runtime.assertWorldStoppedOrLockHeld
    0003ba58bl runtime.isSweepDone
    0003ba5ctbz w0, 0, 0x3ba70
    0003ba60fmov d0, xzr
    0003ba64adrp x27, 0xa07000
    0003ba68str d0, [x27+2496]
    0003ba6cb 0x3bb08
    0003ba70
    0003ba70loc_3ba70:
    0003ba70adrp x0, 0xa11000
    0003ba74add x0, x0, 2600
    0003ba78bl internal/runtime/atomic.(*Uint64).Load
    0003ba7cstr x0, [sp+40]
    0003ba80ldr x1, [sp+72]
    0003ba84sub x1, x1, x0
    0003ba88sub x1, x1, 0x100000
    0003ba8cstr x1, [sp+48]
    0003ba90adrp x0, 0xa07000
    0003ba94add x0, x0, 2472
    0003ba98bl internal/runtime/atomic.(*Uint64).Load
    0003ba9cstr x0, [sp+32]
    0003baa0adrp x0, 0xa07000
    0003baa4add x0, x0, 2464
    0003baa8bl internal/runtime/atomic.(*Uintptr).Load
    0003baacldr x1, [sp+32]
    0003bab0sub x2, x0, x1
    0003bab4ldr x3, [sp+48]
    0003bab8subs xzr, x3, 8192
    0003babcorr x4, xzr, 8192
    0003bac0csel x3, x4, x3, lt
    0003bac4subs xzr, x2, 0
    0003bac8b.gt 0x3badc
    0003baccfmov d0, xzr
    0003bad0adrp x27, 0xa07000
    0003bad4str d0, [x27+2496]
    0003bad8b 0x3bb08
    0003badc
    0003badcloc_3badc:
    0003badcscvtf d0, x2
    0003bae0scvtf d1, x3
    0003bae4fdiv d0, d0, d1
    0003bae8adrp x27, 0xa07000
    0003baecstr d0, [x27+2496]
    0003baf0ldr x2, [sp+40]
    0003baf4adrp x27, 0xa07000
    0003baf8str x2, [x27+2488]
    0003bafcadrp x0, 0xa07000
    0003bb00add x0, x0, 2480
    0003bb04bl internal/runtime/atomic.(*Uint64).Store
    0003bb08
    0003bb08loc_3bb08:
    0003bb08ldur x29, [sp-8]
    0003bb0cldr x30, [sp], 64
    0003bb10ret x30
    0003bb14
    0003bb14loc_3bb14:
    0003bb14str x0, [sp+8]
    0003bb18mov x3, x30
    0003bb1cbl runtime.morestack_noctxt.abi0
    0003bb20ldr x0, [sp+8]
    0003bb24b 0x3ba30
    0003bb28udf 0
    0003bb2cudf 0
    0003ba30
    0003bb30
    0003bb30runtime.(*gcWork).init: ; void runtime.(*gcWork).init(runtime.gcWork * w)
    0003bb30ldr x16, [x28+16]
    0003bb34subs xzr, sp, x16
    0003bb38b.ls 0x3bb78
    0003bb3cstr x30, [sp-16]!
    0003bb40stur x29, [sp-8]
    0003bb44sub x29, sp, 8
    0003bb48str x0, [sp+24]
    0003bb4cbl runtime.getempty
    0003bb50ldr x1, [sp+24]
    0003bb54str x0, [x1]
    0003bb58bl runtime.trygetfull
    0003bb5ccbnz x0, 0x3bb64
    0003bb60bl runtime.getempty
    0003bb64
    0003bb64loc_3bb64:
    0003bb64ldr x1, [sp+24]
    0003bb68str x0, [x1+8]
    0003bb6cldur x29, [sp-8]
    0003bb70ldr x30, [sp], 16
    0003bb74ret x30
    0003bb78
    0003bb78loc_3bb78:
    0003bb78str x0, [sp+8]
    0003bb7cmov x3, x30
    0003bb80bl runtime.morestack_noctxt.abi0
    0003bb84ldr x0, [sp+8]
    0003bb88b 0x3bb30
    0003bb8cudf 0
    0003bb30
    0003bb90
    0003bb90runtime.(*gcWork).put: ; void runtime.(*gcWork).put(runtime.gcWork * w, uintptr obj)
    0003bb90ldr x16, [x28+16]
    0003bb94subs xzr, sp, x16
    0003bb98b.ls 0x3bcb8
    0003bb9cstr x30, [sp-48]!
    0003bba0stur x29, [sp-8]
    0003bba4sub x29, sp, 8
    0003bba8str x0, [sp+56]
    0003bbacstr x1, [sp+64]
    0003bbb0ldr x2, [x0]
    0003bbb4str x2, [sp+24]
    0003bbb8adrp x0, 0x9e9000
    0003bbbcadd x0, x0, 2928
    0003bbc0movz x1, 49
    0003bbc4bl runtime.lockWithRankMayAcquire
    0003bbc8adrp x0, 0x9f7000
    0003bbccadd x0, x0, 2112
    0003bbd0movz x1, 50
    0003bbd4bl runtime.lockWithRankMayAcquire
    0003bbd8ldr x0, [sp+24]
    0003bbdccbz x0, 0x3bc44
    0003bbe0ldr x2, [x0+16]
    0003bbe4subs xzr, x2, 253
    0003bbe8b.ne 0x3bc3c
    0003bbecldr x2, [sp+56]
    0003bbf0ldr x0, [x2+8]
    0003bbf4ldr x3, [x2]
    0003bbf8str x0, [x2]
    0003bbfcstr x3, [x2+8]
    0003bc00ldr x3, [x0+16]
    0003bc04subs xzr, x3, 253
    0003bc08b.ne 0x3bc34
    0003bc0cstr x3, [sp+32]
    0003bc10bl runtime.putfull
    0003bc14orr x1, xzr, 1
    0003bc18ldr x2, [sp+56]
    0003bc1cstrb w1, [x2+32]
    0003bc20bl runtime.getempty
    0003bc24ldr x1, [sp+56]
    0003bc28str x0, [x1]
    0003bc2cldr x1, [sp+32]
    0003bc30subs xzr, x1, 253
    0003bc34
    0003bc34loc_3bc34:
    0003bc34cset x3, eq
    0003bc38b 0x3bc58
    0003bc3c
    0003bc3cloc_3bc3c:
    0003bc3cmov x3, xzr
    0003bc40b 0x3bc58
    0003bc44
    0003bc44loc_3bc44:
    0003bc44ldr x0, [sp+56]
    0003bc48bl runtime.(*gcWork).init
    0003bc4cldr x1, [sp+56]
    0003bc50ldr x0, [x1]
    0003bc54mov x3, xzr
    0003bc58
    0003bc58loc_3bc58:
    0003bc58ldr x2, [x0+16]
    0003bc5csubs xzr, x2, 253
    0003bc60b.hs 0x3bca8
    0003bc64add x1, x0, 24
    0003bc68ldr x4, [sp+64]
    0003bc6cstr x4, [x1+3*x2]
    0003bc70ldr x1, [x0+16]
    0003bc74add x1, x1, 1
    0003bc78str x1, [x0+16]
    0003bc7ctbz w3, 0, 0x3bc9c
    0003bc80adrp x27, 0xa10000
    0003bc84ldr w1, [x27+1600]
    0003bc88subs wzr, w1, 1
    0003bc8cb.ne 0x3bc9c
    0003bc90adrp x0, 0xa11000
    0003bc94add x0, x0, 2496
    0003bc98bl runtime.(*gcControllerState).enlistWorker
    0003bc9c
    0003bc9cloc_3bc9c:
    0003bc9cldur x29, [sp-8]
    0003bca0ldr x30, [sp], 48
    0003bca4ret x30
    0003bca8
    0003bca8loc_3bca8:
    0003bca8mov x0, x2
    0003bcacmovz x1, 253
    0003bcb0bl runtime.panicIndex
    0003bcb4hint
    0003bcb8
    0003bcb8loc_3bcb8:
    0003bcb8stp x0, x1, [sp+8]
    0003bcbcmov x3, x30
    0003bcc0bl runtime.morestack_noctxt.abi0
    0003bcc4ldp x0, x1, [sp+8]
    0003bcc8b 0x3bb90
    0003bcccudf 0
    0003bb90
    0003bcd0
    0003bcd0runtime.(*gcWork).putFast: ; void runtime.(*gcWork).putFast(runtime.gcWork * w, uintptr obj)
    0003bcd0ldr x16, [x28+16]
    0003bcd4subs xzr, sp, x16
    0003bcd8b.ls 0x3bd40
    0003bcdcstr x30, [sp-32]!
    0003bce0stur x29, [sp-8]
    0003bce4sub x29, sp, 8
    0003bce8ldr x2, [x0]
    0003bceccbz x2, 0x3bd24
    0003bcf0ldr x0, [x2+16]
    0003bcf4subs xzr, x0, 253
    0003bcf8b.eq 0x3bd24
    0003bcfcb.hs 0x3bd34
    0003bd00add x3, x2, 24
    0003bd04str x1, [x3+3*x0]
    0003bd08ldr x1, [x2+16]
    0003bd0cadd x1, x1, 1
    0003bd10str x1, [x2+16]
    0003bd14orr x0, xzr, 1
    0003bd18ldur x29, [sp-8]
    0003bd1cldr x30, [sp], 32
    0003bd20ret x30
    0003bd24
    0003bd24loc_3bd24:
    0003bd24mov x0, xzr
    0003bd28ldur x29, [sp-8]
    0003bd2cldr x30, [sp], 32
    0003bd30ret x30
    0003bd34
    0003bd34loc_3bd34:
    0003bd34movz x1, 253
    0003bd38bl runtime.panicIndex
    0003bd3chint
    0003bd40
    0003bd40loc_3bd40:
    0003bd40stp x0, x1, [sp+8]
    0003bd44mov x3, x30
    0003bd48bl runtime.morestack_noctxt.abi0
    0003bd4cldp x0, x1, [sp+8]
    0003bd50b 0x3bcd0
    0003bd54udf 0
    0003bd58udf 0
    0003bd5cudf 0
    0003bcd0
    0003bd60
    0003bd60runtime.(*gcWork).putBatch: ; void runtime.(*gcWork).putBatch(runtime.gcWork * w, struct []uintptr obj)
    0003bd60ldr x16, [x28+16]
    0003bd64subs xzr, sp, x16
    0003bd68b.ls 0x3bef4
    0003bd6cstr x30, [sp-96]!
    0003bd70stur x29, [sp-8]
    0003bd74sub x29, sp, 8
    0003bd78str x1, [sp+112]
    0003bd7ccbz x2, 0x3bdbc
    0003bd80str x0, [sp+104]
    0003bd84ldr x4, [x0]
    0003bd88cbnz x4, 0x3bdb4
    0003bd8cstr x3, [sp+128]
    0003bd90str x2, [sp+120]
    0003bd94str x1, [sp+112]
    0003bd98bl runtime.(*gcWork).init
    0003bd9cldr x1, [sp+104]
    0003bda0ldr x4, [x1]
    0003bda4mov x0, x1
    0003bda8ldr x1, [sp+112]
    0003bdacldr x2, [sp+120]
    0003bdb0ldr x3, [sp+128]
    0003bdb4
    0003bdb4loc_3bdb4:
    0003bdb4mov x5, xzr
    0003bdb8b 0x3bdec
    0003bdbc
    0003bdbcloc_3bdbc:
    0003bdbcldur x29, [sp-8]
    0003bdc0ldr x30, [sp], 96
    0003bdc4ret x30
    0003bdc8
    0003bdc8loc_3bdc8:
    0003bdc8ldr x6, [x4+16]
    0003bdccadd x6, x6, x7
    0003bdd0str x6, [x4+16]
    0003bdd4sub x3, x3, x7
    0003bdd8sub x6, xzr, x3
    0003bddcsbfm x6, x6, 63, 63
    0003bde0and x6, x6, x7, lsl #3
    0003bde4add x1, x1, x6
    0003bde8sub x2, x2, x7
    0003bdec
    0003bdecloc_3bdec:
    0003bdeccbz x2, 0x3be6c
    0003bdf0str x2, [sp+72]
    0003bdf4str x1, [sp+80]
    0003bdf8str x3, [sp+64]
    0003bdfcb 0x3bed4
    0003be00
    0003be00loc_3be00:
    0003be00b.hi 0x3bee4
    0003be04add x7, x4, 24
    0003be08movz x8, 253
    0003be0csub x9, x8, x6
    0003be10sub x10, xzr, x9
    0003be14sbfm x10, x10, 63, 63
    0003be18and x6, x10, x6, lsl #3
    0003be1cadd x6, x7, x6
    0003be20subs xzr, x2, x9
    0003be24csel x7, x2, x9, lt
    0003be28subs xzr, x1, x6
    0003be2cb.eq 0x3bdc8
    0003be30str x4, [sp+48]
    0003be34str x7, [sp+56]
    0003be38strb w5, [sp+47]
    0003be3cubfm x2, x7, 61, 60
    0003be40mov x0, x6
    0003be44bl runtime.memmove
    0003be48ldr x0, [sp+104]
    0003be4cldr x1, [sp+80]
    0003be50ldr x2, [sp+72]
    0003be54ldr x3, [sp+64]
    0003be58ldr x4, [sp+48]
    0003be5cldrb w5, [sp+47]
    0003be60ldr x7, [sp+56]
    0003be64movz x8, 253
    0003be68b 0x3bdc8
    0003be6c
    0003be6cloc_3be6c:
    0003be6ctbz w5, 0, 0x3be8c
    0003be70adrp x27, 0xa10000
    0003be74ldr w1, [x27+1600]
    0003be78subs wzr, w1, 1
    0003be7cb.ne 0x3be8c
    0003be80adrp x0, 0xa11000
    0003be84add x0, x0, 2496
    0003be88bl runtime.(*gcControllerState).enlistWorker
    0003be8c
    0003be8cloc_3be8c:
    0003be8cldur x29, [sp-8]
    0003be90ldr x30, [sp], 96
    0003be94ret x30
    0003be98
    0003be98loc_3be98:
    0003be98mov x0, x4
    0003be9cbl runtime.putfull
    0003bea0orr x1, xzr, 1
    0003bea4ldr x2, [sp+104]
    0003bea8strb w1, [x2+32]
    0003beacbl runtime.getempty
    0003beb0ldr x1, [sp+104]
    0003beb4ldr x4, [x1+8]
    0003beb8str x4, [x1]
    0003bebcstr x0, [x1+8]
    0003bec0mov x0, x1
    0003bec4ldr x1, [sp+80]
    0003bec8ldr x2, [sp+72]
    0003beccldr x3, [sp+64]
    0003bed0orr x5, xzr, 1
    0003bed4
    0003bed4loc_3bed4:
    0003bed4ldr x6, [x4+16]
    0003bed8subs xzr, x6, 253
    0003bedcb.eq 0x3be98
    0003bee0b 0x3be00
    0003bee4
    0003bee4loc_3bee4:
    0003bee4mov x0, x6
    0003bee8movz x1, 253
    0003beecbl runtime.panicSliceB
    0003bef0hint
    0003bef4
    0003bef4loc_3bef4:
    0003bef4stp x0, x1, [sp+8]
    0003bef8stp x2, x3, [sp+24]
    0003befcmov x3, x30
    0003bf00bl runtime.morestack_noctxt.abi0
    0003bf04ldp x0, x1, [sp+8]
    0003bf08ldp x2, x3, [sp+24]
    0003bf0cb 0x3bd60
    0003bd60
    0003bf10
    0003bf10runtime.(*gcWork).tryGet: ; void runtime.(*gcWork).tryGet(runtime.gcWork * w)
    0003bf10ldr x16, [x28+16]
    0003bf14subs xzr, sp, x16
    0003bf18b.ls 0x3bfd0
    0003bf1cstr x30, [sp-48]!
    0003bf20stur x29, [sp-8]
    0003bf24sub x29, sp, 8
    0003bf28str x0, [sp+56]
    0003bf2cldr x2, [x0]
    0003bf30cbnz x2, 0x3bf44
    0003bf34bl runtime.(*gcWork).init
    0003bf38ldr x1, [sp+56]
    0003bf3cldr x2, [x1]
    0003bf40mov x0, x1
    0003bf44
    0003bf44loc_3bf44:
    0003bf44ldr x3, [x2+16]
    0003bf48cbnz x3, 0x3bf9c
    0003bf4cldr x2, [x0+8]
    0003bf50ldr x3, [x0]
    0003bf54str x2, [x0]
    0003bf58str x3, [x0+8]
    0003bf5cldr x3, [x2+16]
    0003bf60cbnz x3, 0x3bf9c
    0003bf64str x2, [sp+32]
    0003bf68bl runtime.trygetfull
    0003bf6ccbz x0, 0x3bf8c
    0003bf70str x0, [sp+24]
    0003bf74ldr x0, [sp+32]
    0003bf78bl runtime.putempty
    0003bf7cldr x2, [sp+24]
    0003bf80ldr x1, [sp+56]
    0003bf84str x2, [x1]
    0003bf88b 0x3bf9c
    0003bf8c
    0003bf8cloc_3bf8c:
    0003bf8cmov x0, xzr
    0003bf90ldur x29, [sp-8]
    0003bf94ldr x30, [sp], 48
    0003bf98ret x30
    0003bf9c
    0003bf9cloc_3bf9c:
    0003bf9cldr x3, [x2+16]
    0003bfa0sub x0, x3, 1
    0003bfa4str x0, [x2+16]
    0003bfa8subs xzr, x0, 253
    0003bfacb.hs 0x3bfc4
    0003bfb0add x1, x2, 24
    0003bfb4ldr x0, [x1+3*x0]
    0003bfb8ldur x29, [sp-8]
    0003bfbcldr x30, [sp], 48
    0003bfc0ret x30
    0003bfc4
    0003bfc4loc_3bfc4:
    0003bfc4movz x1, 253
    0003bfc8bl runtime.panicIndex
    0003bfcchint
    0003bfd0
    0003bfd0loc_3bfd0:
    0003bfd0str x0, [sp+8]
    0003bfd4mov x3, x30
    0003bfd8bl runtime.morestack_noctxt.abi0
    0003bfdcldr x0, [sp+8]
    0003bfe0b 0x3bf10
    0003bfe4udf 0
    0003bfe8udf 0
    0003bfecudf 0
    0003bf10
    0003bff0
    0003bff0runtime.(*gcWork).tryGetFast: ; void runtime.(*gcWork).tryGetFast(runtime.gcWork * w)
    0003bff0ldr x16, [x28+16]
    0003bff4subs xzr, sp, x16
    0003bff8b.ls 0x3c058
    0003bffcstr x30, [sp-32]!
    0003c000stur x29, [sp-8]
    0003c004sub x29, sp, 8
    0003c008ldr x2, [x0]
    0003c00ccbz x2, 0x3c03c
    0003c010ldr x3, [x2+16]
    0003c014cbz x3, 0x3c03c
    0003c018sub x0, x3, 1
    0003c01cstr x0, [x2+16]
    0003c020subs xzr, x0, 253
    0003c024b.hs 0x3c04c
    0003c028add x1, x2, 24
    0003c02cldr x0, [x1+3*x0]
    0003c030ldur x29, [sp-8]
    0003c034ldr x30, [sp], 32
    0003c038ret x30
    0003c03c
    0003c03cloc_3c03c:
    0003c03cmov x0, xzr
    0003c040ldur x29, [sp-8]
    0003c044ldr x30, [sp], 32
    0003c048ret x30
    0003c04c
    0003c04cloc_3c04c:
    0003c04cmovz x1, 253
    0003c050bl runtime.panicIndex
    0003c054hint
    0003c058
    0003c058loc_3c058:
    0003c058str x0, [sp+8]
    0003c05cmov x3, x30
    0003c060bl runtime.morestack_noctxt.abi0
    0003c064ldr x0, [sp+8]
    0003c068b 0x3bff0
    0003c06cudf 0
    0003bff0
    0003c070
    0003c070runtime.(*gcWork).dispose: ; void runtime.(*gcWork).dispose(runtime.gcWork * w)
    0003c070ldr x16, [x28+16]
    0003c074subs xzr, sp, x16
    0003c078b.ls 0x3c168
    0003c07cstr x30, [sp-32]!
    0003c080stur x29, [sp-8]
    0003c084sub x29, sp, 8
    0003c088str x0, [sp+40]
    0003c08cldr x2, [x0]
    0003c090cbz x2, 0x3c0f8
    0003c094ldr x1, [x2+16]
    0003c098cbnz x1, 0x3c0b0
    0003c09cmov x0, x2
    0003c0a0bl runtime.putempty
    0003c0a4orr x1, xzr, 1
    0003c0a8ldr x2, [sp+40]
    0003c0acb 0x3c0c4
    0003c0b0
    0003c0b0loc_3c0b0:
    0003c0b0mov x0, x2
    0003c0b4bl runtime.putfull
    0003c0b8orr x1, xzr, 1
    0003c0bcldr x2, [sp+40]
    0003c0c0strb w1, [x2+32]
    0003c0c4
    0003c0c4loc_3c0c4:
    0003c0c4str xzr, [x2]
    0003c0c8ldr x0, [x2+8]
    0003c0ccldr x3, [x0+16]
    0003c0d0cbnz x3, 0x3c0e0
    0003c0d4bl runtime.putempty
    0003c0d8ldr x2, [sp+40]
    0003c0dcb 0x3c0f0
    0003c0e0
    0003c0e0loc_3c0e0:
    0003c0e0bl runtime.putfull
    0003c0e4orr x1, xzr, 1
    0003c0e8ldr x2, [sp+40]
    0003c0ecstrb w1, [x2+32]
    0003c0f0
    0003c0f0loc_3c0f0:
    0003c0f0str xzr, [x2+8]
    0003c0f4b 0x3c0fc
    0003c0f8
    0003c0f8loc_3c0f8:
    0003c0f8mov x2, x0
    0003c0fc
    0003c0fcloc_3c0fc:
    0003c0fcldr x3, [x2+16]
    0003c100cbz x3, 0x3c140
    0003c104adrp x27, 0xa0f000
    0003c108ldrb w4, [x27+1516]
    0003c10ctbz w4, 0, 0x3c124
    0003c110adrp x4, 0x9e8000
    0003c114add x4, x4, 2976
    0003c118ldaddal x3, x5, [x4]
    0003c11cadd x5, x5, x3
    0003c120b 0x3c13c
    0003c124
    0003c124loc_3c124:
    0003c124adrp x4, 0x9e8000
    0003c128add x4, x4, 2976
    0003c12c
    0003c12cloc_3c12c:
    0003c12cldaxr x5, [x4]
    0003c130add x5, x5, x3
    0003c134stlxr w27, x5, [x4]
    0003c138cbnz x27, 0x3c12c
    0003c13c
    0003c13cloc_3c13c:
    0003c13cstr xzr, [x2+16]
    0003c140
    0003c140loc_3c140:
    0003c140ldr x1, [x2+24]
    0003c144cbz x1, 0x3c15c
    0003c148adrp x0, 0xa10000
    0003c14cadd x0, x0, 2656
    0003c150bl internal/runtime/atomic.(*Int64).Add
    0003c154ldr x2, [sp+40]
    0003c158str xzr, [x2+24]
    0003c15c
    0003c15cloc_3c15c:
    0003c15cldur x29, [sp-8]
    0003c160ldr x30, [sp], 32
    0003c164ret x30
    0003c168
    0003c168loc_3c168:
    0003c168str x0, [sp+8]
    0003c16cmov x3, x30
    0003c170bl runtime.morestack_noctxt.abi0
    0003c174ldr x0, [sp+8]
    0003c178b 0x3c070
    0003c17cudf 0
    0003c070
    0003c180
    0003c180runtime.(*gcWork).balance: ; void runtime.(*gcWork).balance(runtime.gcWork * w)
    0003c180ldr x16, [x28+16]
    0003c184subs xzr, sp, x16
    0003c188b.ls 0x3c238
    0003c18cstr x30, [sp-32]!
    0003c190stur x29, [sp-8]
    0003c194sub x29, sp, 8
    0003c198ldr x1, [x0]
    0003c19ccbz x1, 0x3c22c
    0003c1a0str x0, [sp+40]
    0003c1a4ldr x2, [x0+8]
    0003c1a8ldr x3, [x2+16]
    0003c1accbnz x3, 0x3c1e4
    0003c1b0ldr x2, [x1+16]
    0003c1b4subs xzr, x2, 4
    0003c1b8b.le 0x3c1d8
    0003c1bcmov x0, x1
    0003c1c0bl runtime.handoff
    0003c1c4ldr x1, [sp+40]
    0003c1c8str x0, [x1]
    0003c1ccorr x2, xzr, 1
    0003c1d0strb w2, [x1+32]
    0003c1d4b 0x3c204
    0003c1d8
    0003c1d8loc_3c1d8:
    0003c1d8ldur x29, [sp-8]
    0003c1dcldr x30, [sp], 32
    0003c1e0ret x30
    0003c1e4
    0003c1e4loc_3c1e4:
    0003c1e4mov x0, x2
    0003c1e8bl runtime.putfull
    0003c1ecorr x1, xzr, 1
    0003c1f0ldr x2, [sp+40]
    0003c1f4strb w1, [x2+32]
    0003c1f8bl runtime.getempty
    0003c1fcldr x1, [sp+40]
    0003c200str x0, [x1+8]
    0003c204
    0003c204loc_3c204:
    0003c204adrp x27, 0xa0f000
    0003c208ldr w1, [x27+1600]
    0003c20csubs wzr, w1, 1
    0003c210b.ne 0x3c220
    0003c214adrp x0, 0xa10000
    0003c218add x0, x0, 2496
    0003c21cbl runtime.(*gcControllerState).enlistWorker
    0003c220
    0003c220loc_3c220:
    0003c220ldur x29, [sp-8]
    0003c224ldr x30, [sp], 32
    0003c228ret x30
    0003c22c
    0003c22cloc_3c22c:
    0003c22cldur x29, [sp-8]
    0003c230ldr x30, [sp], 32
    0003c234ret x30
    0003c238
    0003c238loc_3c238:
    0003c238str x0, [sp+8]
    0003c23cmov x3, x30
    0003c240bl runtime.morestack_noctxt.abi0
    0003c244ldr x0, [sp+8]
    0003c248b 0x3c180
    0003c24cudf 0
    0003c180
    0003c250
    0003c250runtime.(*gcWork).empty: ; void runtime.(*gcWork).empty(runtime.gcWork * w)
    0003c250ldr x1, [x0]
    0003c254cbz x1, 0x3c27c
    0003c258ldr x1, [x1+16]
    0003c25ccbnz x1, 0x3c274
    0003c260ldr x1, [x0+8]
    0003c264ldr x1, [x1+16]
    0003c268subs xzr, x1, 0
    0003c26ccset x1, eq
    0003c270b 0x3c280
    0003c274
    0003c274loc_3c274:
    0003c274mov x1, xzr
    0003c278b 0x3c280
    0003c27c
    0003c27cloc_3c27c:
    0003c27corr x1, xzr, 1
    0003c280
    0003c280loc_3c280:
    0003c280mov x0, x1
    0003c284ret x30
    0003c288udf 0
    0003c28cudf 0
    0003c250
    0003c290
    0003c290runtime.(*workbuf).checknonempty: ; void runtime.(*workbuf).checknonempty(runtime.workbuf * b)
    0003c290ldr x16, [x28+16]
    0003c294subs xzr, sp, x16
    0003c298b.ls 0x3c2d0
    0003c29cstr x30, [sp-32]!
    0003c2a0stur x29, [sp-8]
    0003c2a4sub x29, sp, 8
    0003c2a8ldr x2, [x0+16]
    0003c2accbz x2, 0x3c2bc
    0003c2b0ldur x29, [sp-8]
    0003c2b4ldr x30, [sp], 32
    0003c2b8ret x30
    0003c2bc
    0003c2bcloc_3c2bc:
    0003c2bcadrp x0, 0x678000
    0003c2c0add x0, x0, 2308
    0003c2c4orr x1, xzr, 16
    0003c2c8bl runtime.throw
    0003c2cchint
    0003c2d0
    0003c2d0loc_3c2d0:
    0003c2d0str x0, [sp+8]
    0003c2d4mov x3, x30
    0003c2d8bl runtime.morestack_noctxt.abi0
    0003c2dcldr x0, [sp+8]
    0003c2e0b 0x3c290
    0003c2e4udf 0
    0003c2e8udf 0
    0003c2ecudf 0
    0003c290
    0003c2f0
    0003c2f0runtime.(*workbuf).checkempty: ; void runtime.(*workbuf).checkempty(runtime.workbuf * b)
    0003c2f0ldr x16, [x28+16]
    0003c2f4subs xzr, sp, x16
    0003c2f8b.ls 0x3c330
    0003c2fcstr x30, [sp-32]!
    0003c300stur x29, [sp-8]
    0003c304sub x29, sp, 8
    0003c308ldr x2, [x0+16]
    0003c30ccbnz x2, 0x3c31c
    0003c310ldur x29, [sp-8]
    0003c314ldr x30, [sp], 32
    0003c318ret x30
    0003c31c
    0003c31cloc_3c31c:
    0003c31cadrp x0, 0x67a000
    0003c320add x0, x0, 2527
    0003c324movz x1, 20
    0003c328bl runtime.throw
    0003c32chint
    0003c330
    0003c330loc_3c330:
    0003c330str x0, [sp+8]
    0003c334mov x3, x30
    0003c338bl runtime.morestack_noctxt.abi0
    0003c33cldr x0, [sp+8]
    0003c340b 0x3c2f0
    0003c344udf 0
    0003c348udf 0
    0003c34cudf 0
    0003c2f0
    0003c350
    0003c350runtime.getempty: ; void runtime.getempty(void)
    0003c350ldr x16, [x28+16]
    0003c354subs xzr, sp, x16
    0003c358b.ls 0x3c500
    0003c35cstr x30, [sp-96]!
    0003c360stur x29, [sp-8]
    0003c364sub x29, sp, 8
    0003c368adrp x27, 0x9e8000
    0003c36cldr x2, [x27+2792]
    0003c370cbnz x2, 0x3c37c
    0003c374mov x0, xzr
    0003c378b 0x3c398
    0003c37c
    0003c37cloc_3c37c:
    0003c37cadrp x0, 0x9e8000
    0003c380add x0, x0, 2792
    0003c384bl runtime.(*lfstack).pop
    0003c388cbz x0, 0x3c398
    0003c38cstr x0, [sp+80]
    0003c390bl runtime.(*workbuf).checkempty
    0003c394ldr x0, [sp+80]
    0003c398
    0003c398loc_3c398:
    0003c398str x0, [sp+40]
    0003c39cadrp x0, 0x9e8000
    0003c3a0add x0, x0, 2928
    0003c3a4movz x1, 49
    0003c3a8bl runtime.lockWithRankMayAcquire
    0003c3acadrp x0, 0x9f6000
    0003c3b0add x0, x0, 2112
    0003c3b4movz x1, 50
    0003c3b8bl runtime.lockWithRankMayAcquire
    0003c3bcldr x0, [sp+40]
    0003c3c0cbnz x0, 0x3c47c
    0003c3c4str xzr, [sp+24]
    0003c3c8adrp x27, 0x9e8000
    0003c3ccldr x1, [x27+2936]
    0003c3d0cbz x1, 0x3c418
    0003c3d4adrp x0, 0x9e8000
    0003c3d8add x0, x0, 2928
    0003c3dcbl runtime.lock
    0003c3e0adrp x27, 0x9e8000
    0003c3e4ldr x1, [x27+2936]
    0003c3e8str x1, [sp+24]
    0003c3eccbz x1, 0x3c40c
    0003c3f0adrp x0, 0x9e8000
    0003c3f4add x0, x0, 2936
    0003c3f8bl runtime.(*mSpanList).remove
    0003c3fcldr x1, [sp+24]
    0003c400adrp x0, 0x9e8000
    0003c404add x0, x0, 2952
    0003c408bl runtime.(*mSpanList).insert
    0003c40c
    0003c40cloc_3c40c:
    0003c40cadrp x0, 0x9e8000
    0003c410add x0, x0, 2928
    0003c414bl runtime.unlock
    0003c418
    0003c418loc_3c418:
    0003c418ldr x1, [sp+24]
    0003c41ccbnz x1, 0x3c470
    0003c420adrp x0, 0
    0003c424add x0, x0, 1296
    0003c428str x0, [sp+64]
    0003c42cadd x0, sp, 24
    0003c430str x0, [sp+72]
    0003c434add x0, sp, 64
    0003c438str x0, [sp+8]
    0003c43cbl runtime.systemstack.abi0
    0003c440ldr x0, [sp+24]
    0003c444cbz x0, 0x3c4ec
    0003c448adrp x0, 0x9e8000
    0003c44cadd x0, x0, 2928
    0003c450bl runtime.lock
    0003c454ldr x1, [sp+24]
    0003c458adrp x0, 0x9e8000
    0003c45cadd x0, x0, 2952
    0003c460bl runtime.(*mSpanList).insert
    0003c464adrp x0, 0x9e8000
    0003c468add x0, x0, 2928
    0003c46cbl runtime.unlock
    0003c470
    0003c470loc_3c470:
    0003c470mov x0, xzr
    0003c474mov x1, xzr
    0003c478b 0x3c490
    0003c47c
    0003c47cloc_3c47c:
    0003c47cldur x29, [sp-8]
    0003c480ldr x30, [sp], 96
    0003c484ret x30
    0003c488
    0003c488loc_3c488:
    0003c488mov x1, x0
    0003c48cldr x0, [sp+56]
    0003c490
    0003c490loc_3c490:
    0003c490add x2, x0, 2048
    0003c494subs xzr, x2, 32768
    0003c498b.hi 0x3c4e4
    0003c49cstr x0, [sp+32]
    0003c4a0str x2, [sp+56]
    0003c4a4str x1, [sp+48]
    0003c4a8ldr x0, [sp+24]
    0003c4acbl runtime.(*mspan).base
    0003c4b0ldr x1, [sp+32]
    0003c4b4add x0, x1, x0
    0003c4b8str x0, [sp+80]
    0003c4bcstr xzr, [x0+16]
    0003c4c0bl runtime.lfnodeValidate
    0003c4c4ldr x0, [sp+32]
    0003c4c8cbnz x0, 0x3c4d4
    0003c4ccldr x0, [sp+80]
    0003c4d0b 0x3c488
    0003c4d4
    0003c4d4loc_3c4d4:
    0003c4d4ldr x0, [sp+80]
    0003c4d8bl runtime.putempty
    0003c4dcldr x0, [sp+48]
    0003c4e0b 0x3c488
    0003c4e4
    0003c4e4loc_3c4e4:
    0003c4e4mov x0, x1
    0003c4e8b 0x3c47c
    0003c4ec
    0003c4ecloc_3c4ec:
    0003c4ecadrp x0, 0x677000
    0003c4f0add x0, x0, 1368
    0003c4f4movz x1, 13
    0003c4f8bl runtime.throw
    0003c4fchint
    0003c500
    0003c500loc_3c500:
    0003c500mov x3, x30
    0003c504bl runtime.morestack_noctxt.abi0
    0003c508b 0x3c350
    0003c50cudf 0
    0003c350
    0003c510
    0003c510runtime.getempty.func1: ; void runtime.getempty.func1(void)
    0003c510ldr x16, [x28+16]
    0003c514subs xzr, sp, x16
    0003c518b.ls 0x3c558
    0003c51cstr x30, [sp-48]!
    0003c520stur x29, [sp-8]
    0003c524sub x29, sp, 8
    0003c528ldr x3, [x26+8]
    0003c52cstr x3, [sp+32]
    0003c530adrp x0, 0x9f6000
    0003c534add x0, x0, 2112
    0003c538orr x1, xzr, 4
    0003c53corr x2, xzr, 3
    0003c540bl runtime.(*mheap).allocManual
    0003c544ldr x3, [sp+32]
    0003c548str x0, [x3]
    0003c54cldur x29, [sp-8]
    0003c550ldr x30, [sp], 48
    0003c554ret x30
    0003c558
    0003c558loc_3c558:
    0003c558mov x3, x30
    0003c55cbl runtime.morestack.abi0
    0003c560b 0x3c510
    0003c564udf 0
    0003c568udf 0
    0003c56cudf 0
    0003c510
    0003c570
    0003c570runtime.putempty: ; void runtime.putempty(runtime.workbuf * b)
    0003c570ldr x16, [x28+16]
    0003c574subs xzr, sp, x16
    0003c578b.ls 0x3c5b0
    0003c57cstr x30, [sp-32]!
    0003c580stur x29, [sp-8]
    0003c584sub x29, sp, 8
    0003c588str x0, [sp+40]
    0003c58cbl runtime.(*workbuf).checkempty
    0003c590ldr x1, [sp+40]
    0003c594ldrsb x27, [x1]
    0003c598adrp x0, 0x9e8000
    0003c59cadd x0, x0, 2792
    0003c5a0bl runtime.(*lfstack).push
    0003c5a4ldur x29, [sp-8]
    0003c5a8ldr x30, [sp], 32
    0003c5acret x30
    0003c5b0
    0003c5b0loc_3c5b0:
    0003c5b0str x0, [sp+8]
    0003c5b4mov x3, x30
    0003c5b8bl runtime.morestack_noctxt.abi0
    0003c5bcldr x0, [sp+8]
    0003c5c0b 0x3c570
    0003c5c4udf 0
    0003c5c8udf 0
    0003c5ccudf 0
    0003c570
    0003c5d0
    0003c5d0runtime.putfull: ; void runtime.putfull(runtime.workbuf * b)
    0003c5d0ldr x16, [x28+16]
    0003c5d4subs xzr, sp, x16
    0003c5d8b.ls 0x3c610
    0003c5dcstr x30, [sp-32]!
    0003c5e0stur x29, [sp-8]
    0003c5e4sub x29, sp, 8
    0003c5e8str x0, [sp+40]
    0003c5ecbl runtime.(*workbuf).checknonempty
    0003c5f0ldr x1, [sp+40]
    0003c5f4ldrsb x27, [x1]
    0003c5f8adrp x0, 0x9e8000
    0003c5fcadd x0, x0, 2656
    0003c600bl runtime.(*lfstack).push
    0003c604ldur x29, [sp-8]
    0003c608ldr x30, [sp], 32
    0003c60cret x30
    0003c610
    0003c610loc_3c610:
    0003c610str x0, [sp+8]
    0003c614mov x3, x30
    0003c618bl runtime.morestack_noctxt.abi0
    0003c61cldr x0, [sp+8]
    0003c620b 0x3c5d0
    0003c624udf 0
    0003c628udf 0
    0003c62cudf 0
    0003c5d0
    0003c630
    0003c630runtime.trygetfull: ; void runtime.trygetfull(void)
    0003c630ldr x16, [x28+16]
    0003c634subs xzr, sp, x16
    0003c638b.ls 0x3c680
    0003c63cstr x30, [sp-32]!
    0003c640stur x29, [sp-8]
    0003c644sub x29, sp, 8
    0003c648adrp x0, 0x9e8000
    0003c64cadd x0, x0, 2656
    0003c650bl runtime.(*lfstack).pop
    0003c654cbz x0, 0x3c670
    0003c658str x0, [sp+16]
    0003c65cbl runtime.(*workbuf).checknonempty
    0003c660ldr x0, [sp+16]
    0003c664ldur x29, [sp-8]
    0003c668ldr x30, [sp], 32
    0003c66cret x30
    0003c670
    0003c670loc_3c670:
    0003c670mov x0, xzr
    0003c674ldur x29, [sp-8]
    0003c678ldr x30, [sp], 32
    0003c67cret x30
    0003c680
    0003c680loc_3c680:
    0003c680mov x3, x30
    0003c684bl runtime.morestack_noctxt.abi0
    0003c688b 0x3c630
    0003c68cudf 0
    0003c630
    0003c690
    0003c690runtime.handoff: ; void runtime.handoff(runtime.workbuf * b)
    0003c690ldr x16, [x28+16]
    0003c694subs xzr, sp, x16
    0003c698b.ls 0x3c718
    0003c69cstr x30, [sp-48]!
    0003c6a0stur x29, [sp-8]
    0003c6a4sub x29, sp, 8
    0003c6a8str x0, [sp+56]
    0003c6acbl runtime.getempty
    0003c6b0ldr x1, [sp+56]
    0003c6b4ldr x2, [x1+16]
    0003c6b8add x3, x2, x2, lsr #63
    0003c6bcsbfm x4, x3, 1, 63
    0003c6c0sub x2, x2, x3, asr #1
    0003c6c4str x2, [x1+16]
    0003c6c8str x4, [x0+16]
    0003c6ccldr x2, [x1+16]
    0003c6d0subs xzr, x2, 253
    0003c6d4b.hs 0x3c708
    0003c6d8str x0, [sp+32]
    0003c6dcadd x0, x0, 24
    0003c6e0add x3, x1, 24
    0003c6e4add x1, x3, x2, lsl #3
    0003c6e8ubfm x2, x4, 61, 60
    0003c6ecbl runtime.memmove
    0003c6f0ldr x0, [sp+56]
    0003c6f4bl runtime.putfull
    0003c6f8ldr x0, [sp+32]
    0003c6fcldur x29, [sp-8]
    0003c700ldr x30, [sp], 48
    0003c704ret x30
    0003c708
    0003c708loc_3c708:
    0003c708mov x0, x2
    0003c70cmovz x1, 253
    0003c710bl runtime.panicIndex
    0003c714hint
    0003c718
    0003c718loc_3c718:
    0003c718str x0, [sp+8]
    0003c71cmov x3, x30
    0003c720bl runtime.morestack_noctxt.abi0
    0003c724ldr x0, [sp+8]
    0003c728b 0x3c690
    0003c72cudf 0
    0003c690
    0003c730
    0003c730runtime.prepareFreeWorkbufs: ; void runtime.prepareFreeWorkbufs(void)
    0003c730ldr x16, [x28+16]
    0003c734subs xzr, sp, x16
    0003c738b.ls 0x3c7a8
    0003c73cstr x30, [sp-32]!
    0003c740stur x29, [sp-8]
    0003c744sub x29, sp, 8
    0003c748adrp x0, 0x9e8000
    0003c74cadd x0, x0, 2928
    0003c750bl runtime.lock
    0003c754adrp x27, 0x9e8000
    0003c758ldr x1, [x27+2656]
    0003c75ccbnz x1, 0x3c794
    0003c760adrp x27, 0x9e8000
    0003c764str xzr, [x27+2792]
    0003c768adrp x0, 0x9e8000
    0003c76cadd x0, x0, 2936
    0003c770adrp x1, 0x9e8000
    0003c774add x1, x1, 2952
    0003c778bl runtime.(*mSpanList).takeAll
    0003c77cadrp x0, 0x9e8000
    0003c780add x0, x0, 2928
    0003c784bl runtime.unlock
    0003c788ldur x29, [sp-8]
    0003c78cldr x30, [sp], 32
    0003c790ret x30
    0003c794
    0003c794loc_3c794:
    0003c794adrp x0, 0x688000
    0003c798add x0, x0, 99
    0003c79cmovz x1, 40
    0003c7a0bl runtime.throw
    0003c7a4hint
    0003c7a8
    0003c7a8loc_3c7a8:
    0003c7a8mov x3, x30
    0003c7acbl runtime.morestack_noctxt.abi0
    0003c7b0b 0x3c730
    0003c7b4udf 0
    0003c7b8udf 0
    0003c7bcudf 0
    0003c730
    0003c7c0
    0003c7c0runtime.freeSomeWbufs: ; void runtime.freeSomeWbufs(bool preemptible)
    0003c7c0ldr x16, [x28+16]
    0003c7c4subs xzr, sp, x16
    0003c7c8b.ls 0x3c870
    0003c7ccstr x30, [sp-48]!
    0003c7d0stur x29, [sp-8]
    0003c7d4sub x29, sp, 8
    0003c7d8strb w0, [sp+56]
    0003c7dcadrp x0, 0x9e8000
    0003c7e0add x0, x0, 2928
    0003c7e4bl runtime.lock
    0003c7e8adrp x27, 0xa0f000
    0003c7ecldr w1, [x27+1600]
    0003c7f0cbnz w1, 0x3c804
    0003c7f4adrp x0, 0x9e8000
    0003c7f8add x0, x0, 2936
    0003c7fcbl runtime.(*mSpanList).isEmpty
    0003c800tbz w0, 0, 0x3c820
    0003c804
    0003c804loc_3c804:
    0003c804adrp x0, 0x9e8000
    0003c808add x0, x0, 2928
    0003c80cbl runtime.unlock
    0003c810mov x0, xzr
    0003c814ldur x29, [sp-8]
    0003c818ldr x30, [sp], 48
    0003c81cret x30
    0003c820
    0003c820loc_3c820:
    0003c820adrp x0, 0
    0003c824add x0, x0, 2192
    0003c828str x0, [sp+24]
    0003c82cldrb w0, [sp+56]
    0003c830strb w0, [sp+32]
    0003c834add x0, sp, 24
    0003c838str x0, [sp+8]
    0003c83cbl runtime.systemstack.abi0
    0003c840adrp x0, 0x9e8000
    0003c844add x0, x0, 2936
    0003c848bl runtime.(*mSpanList).isEmpty
    0003c84cstrb w0, [sp+23]
    0003c850adrp x0, 0x9e8000
    0003c854add x0, x0, 2928
    0003c858bl runtime.unlock
    0003c85cldrb w0, [sp+23]
    0003c860eor x0, x0, 1
    0003c864ldur x29, [sp-8]
    0003c868ldr x30, [sp], 48
    0003c86cret x30
    0003c870
    0003c870loc_3c870:
    0003c870strb w0, [sp+8]
    0003c874mov x3, x30
    0003c878bl runtime.morestack_noctxt.abi0
    0003c87cldrb w0, [sp+8]
    0003c880b 0x3c7c0
    0003c884udf 0
    0003c888udf 0
    0003c88cudf 0
    0003c7c0
    0003c890
    0003c890runtime.freeSomeWbufs.func1: ; void runtime.freeSomeWbufs.func1(void)
    0003c890ldr x16, [x28+16]
    0003c894subs xzr, sp, x16
    0003c898b.ls 0x3c930
    0003c89cstr x30, [sp-80]!
    0003c8a0stur x29, [sp-8]
    0003c8a4sub x29, sp, 8
    0003c8a8ldr x2, [x28+48]
    0003c8acldrb w3, [x26+8]
    0003c8b0strb w3, [sp+47]
    0003c8b4ldr x2, [x2+192]
    0003c8b8str x2, [sp+64]
    0003c8bcmov x0, xzr
    0003c8c0b 0x3c904
    0003c8c4
    0003c8c4loc_3c8c4:
    0003c8c4str x0, [sp+56]
    0003c8c8str x1, [sp+48]
    0003c8ccadrp x0, 0x9e8000
    0003c8d0add x0, x0, 2936
    0003c8d4bl runtime.(*mSpanList).remove
    0003c8d8adrp x0, 0x9f6000
    0003c8dcadd x0, x0, 2112
    0003c8e0ldr x1, [sp+48]
    0003c8e4orr x2, xzr, 3
    0003c8e8bl runtime.(*mheap).freeManual
    0003c8ecldr x2, [sp+56]
    0003c8f0add x0, x2, 1
    0003c8f4ldrb w2, [sp+47]
    0003c8f8ldr x3, [sp+64]
    0003c8fcmov x2, x3
    0003c900ldrb w3, [sp+47]
    0003c904
    0003c904loc_3c904:
    0003c904subs xzr, x0, 64
    0003c908b.ge 0x3c924
    0003c90ctbz w3, 0, 0x3c918
    0003c910ldrb w4, [x2+185]
    0003c914tbnz w4, 0, 0x3c924
    0003c918
    0003c918loc_3c918:
    0003c918adrp x27, 0x9e8000
    0003c91cldr x1, [x27+2936]
    0003c920cbnz x1, 0x3c8c4
    0003c924
    0003c924loc_3c924:
    0003c924ldur x29, [sp-8]
    0003c928ldr x30, [sp], 80
    0003c92cret x30
    0003c930
    0003c930loc_3c930:
    0003c930mov x3, x30
    0003c934bl runtime.morestack.abi0
    0003c938b 0x3c890
    0003c93cudf 0
    0003c890
    0003c940
    0003c940runtime.(*mSpanStateBox).set: ; void runtime.(*mSpanStateBox).set(runtime.mSpanStateBox * b, runtime.mSpanState s)
    0003c940str x30, [sp-32]!
    0003c944stur x29, [sp-8]
    0003c948sub x29, sp, 8
    0003c94cldrsb x27, [x0]
    0003c950bl internal/runtime/atomic.(*Uint8).Store
    0003c954ldur x29, [sp-8]
    0003c958ldr x30, [sp], 32
    0003c95cret x30
    0003c940
    0003c960
    0003c960runtime.(*mSpanStateBox).get: ; void runtime.(*mSpanStateBox).get(runtime.mSpanStateBox * b)
    0003c960str x30, [sp-32]!
    0003c964stur x29, [sp-8]
    0003c968sub x29, sp, 8
    0003c96cldrsb x27, [x0]
    0003c970bl internal/runtime/atomic.(*Uint8).Load
    0003c974ldur x29, [sp-8]
    0003c978ldr x30, [sp], 32
    0003c97cret x30
    0003c960
    0003c980
    0003c980runtime.(*mspan).base: ; void runtime.(*mspan).base(runtime.mspan * s)
    0003c980ldr x0, [x0+24]
    0003c984ret x30
    0003c988udf 0
    0003c98cudf 0
    0003c980
    0003c990
    0003c990runtime.recordspan: ; void runtime.recordspan(void * vh, void * p)
    0003c990ldr x16, [x28+16]
    0003c994subs xzr, sp, x16
    0003c998b.ls 0x3cb20
    0003c99cstr x30, [sp-80]!
    0003c9a0stur x29, [sp-8]
    0003c9a4sub x29, sp, 8
    0003c9a8str x0, [sp+88]
    0003c9acstr x1, [sp+96]
    0003c9b0ldrsb x27, [x0]
    0003c9b4bl runtime.assertLockHeld
    0003c9b8ldr x1, [sp+88]
    0003c9bcadd x27, x1, 0x10000
    0003c9c0ldr x2, [x27+344]
    0003c9c4add x27, x1, 0x10000
    0003c9c8ldr x3, [x27+336]
    0003c9ccsubs xzr, x3, x2
    0003c9d0b.lt 0x3cab4
    0003c9d4add x2, x2, x2, lsl #1
    0003c9d8add x2, x2, x2, lsr #63
    0003c9dcsbfm x2, x2, 1, 63
    0003c9e0str xzr, [sp+48]
    0003c9e4stp xzr, xzr, [sp+56]
    0003c9e8subs xzr, x2, 8192
    0003c9ecorr x3, xzr, 8192
    0003c9f0csel x2, x2, x3, gt
    0003c9f4str x2, [sp+40]
    0003c9f8ubfm x0, x2, 61, 60
    0003c9fcadrp x1, 0xa15000
    0003ca00add x1, x1, 544
    0003ca04bl runtime.sysAlloc
    0003ca08str x0, [sp+48]
    0003ca0ccbz x0, 0x3cb0c
    0003ca10ldr x3, [sp+88]
    0003ca14add x27, x3, 0x10000
    0003ca18ldr x4, [x27+336]
    0003ca1cstr x4, [sp+56]
    0003ca20ldr x5, [sp+40]
    0003ca24str x5, [sp+64]
    0003ca28add x27, x3, 0x10000
    0003ca2cldr x5, [x27+336]
    0003ca30cbz x5, 0x3ca5c
    0003ca34add x27, x3, 0x10000
    0003ca38ldr x1, [x27+328]
    0003ca3cldr x0, [sp+48]
    0003ca40subs xzr, x5, x4
    0003ca44csel x4, x5, x4, lt
    0003ca48subs xzr, x0, x1
    0003ca4cb.eq 0x3ca5c
    0003ca50ubfm x2, x4, 61, 60
    0003ca54bl runtime.memmove
    0003ca58ldr x3, [sp+88]
    0003ca5c
    0003ca5cloc_3ca5c:
    0003ca5cldr x4, [sp+56]
    0003ca60ldr x5, [sp+64]
    0003ca64ldr x6, [sp+48]
    0003ca68add x27, x3, 0x10000
    0003ca6cldr x0, [x27+328]
    0003ca70add x27, x3, 0x10000
    0003ca74ldr x7, [x27+344]
    0003ca78add x27, x3, 0x10000
    0003ca7cldr x8, [x27+336]
    0003ca80add x27, x3, 0x10000
    0003ca84str x6, [x27+328]
    0003ca88add x27, x3, 0x10000
    0003ca8cstr x4, [x27+336]
    0003ca90add x27, x3, 0x10000
    0003ca94str x5, [x27+344]
    0003ca98cbz x8, 0x3cab0
    0003ca9cubfm x1, x7, 61, 60
    0003caa0adrp x2, 0xa15000
    0003caa4add x2, x2, 544
    0003caa8bl runtime.sysFree
    0003caacldr x3, [sp+88]
    0003cab0
    0003cab0loc_3cab0:
    0003cab0mov x1, x3
    0003cab4
    0003cab4loc_3cab4:
    0003cab4add x27, x1, 0x10000
    0003cab8ldr x0, [x27+336]
    0003cabcadd x27, x1, 0x10000
    0003cac0ldr x2, [x27+344]
    0003cac4add x3, x0, 1
    0003cac8subs xzr, x2, x3
    0003caccb.lo 0x3cb04
    0003cad0add x27, x1, 0x10000
    0003cad4str x3, [x27+336]
    0003cad8subs xzr, x0, x3
    0003cadcb.hs 0x3cafc
    0003cae0add x27, x1, 0x10000
    0003cae4ldr x1, [x27+328]
    0003cae8ldr x2, [sp+96]
    0003caecstr x2, [x1+3*x0]
    0003caf0ldur x29, [sp-8]
    0003caf4ldr x30, [sp], 80
    0003caf8ret x30
    0003cafc
    0003cafcloc_3cafc:
    0003cafcmov x1, x3
    0003cb00bl runtime.panicIndex
    0003cb04
    0003cb04loc_3cb04:
    0003cb04mov x1, x3
    0003cb08bl runtime.panicSliceAcap
    0003cb0c
    0003cb0cloc_3cb0c:
    0003cb0cadrp x0, 0x681000
    0003cb10add x0, x0, 2401
    0003cb14orr x1, xzr, 31
    0003cb18bl runtime.throw
    0003cb1chint
    0003cb20
    0003cb20loc_3cb20:
    0003cb20stp x0, x1, [sp+8]
    0003cb24mov x3, x30
    0003cb28bl runtime.morestack_noctxt.abi0
    0003cb2cldp x0, x1, [sp+8]
    0003cb30b 0x3c990
    0003cb34udf 0
    0003cb38udf 0
    0003cb3cudf 0
    0003c990
    0003cb40
    0003cb40runtime.makeSpanClass: ; void runtime.makeSpanClass(uint8 sizeclass, bool noscan)
    0003cb40ldr x16, [x28+16]
    0003cb44subs xzr, sp, x16
    0003cb48b.ls 0x3cb78
    0003cb4cstr x30, [sp-32]!
    0003cb50stur x29, [sp-8]
    0003cb54sub x29, sp, 8
    0003cb58strb w0, [sp+40]
    0003cb5cmov x0, x1
    0003cb60bl runtime.bool2int
    0003cb64ldrb w1, [sp+40]
    0003cb68orr x0, x0, x1, lsl #1
    0003cb6cldur x29, [sp-8]
    0003cb70ldr x30, [sp], 32
    0003cb74ret x30
    0003cb78
    0003cb78loc_3cb78:
    0003cb78strb w0, [sp+8]
    0003cb7cstrb w1, [sp+9]
    0003cb80mov x3, x30
    0003cb84bl runtime.morestack_noctxt.abi0
    0003cb88ldrb w0, [sp+8]
    0003cb8cldrb w1, [sp+9]
    0003cb90b 0x3cb40
    0003cb94udf 0
    0003cb98udf 0
    0003cb9cudf 0
    0003cb40
    0003cba0
    0003cba0runtime.spanClass.sizeclass: ; void runtime.spanClass.sizeclass(runtime.spanClass sc)
    0003cba0ubfm x0, x0, 1, 7
    0003cba4ret x30
    0003cba8udf 0
    0003cbacudf 0
    0003cba0
    0003cbb0
    0003cbb0runtime.spanClass.noscan: ; void runtime.spanClass.noscan(runtime.spanClass sc)
    0003cbb0ands wzr, w0, 1
    0003cbb4cset x0, ne
    0003cbb8ret x30
    0003cbbcudf 0
    0003cbb0
    0003cbc0
    0003cbc0runtime.arenaIndex: ; void runtime.arenaIndex(uintptr p)
    0003cbc0ubfm x0, x0, 26, 63
    0003cbc4ret x30
    0003cbc8udf 0
    0003cbccudf 0
    0003cbc0
    0003cbd0
    0003cbd0runtime.arenaIdx.l1: ; void runtime.arenaIdx.l1(runtime.arenaIdx i)
    0003cbd0mov x0, xzr
    0003cbd4ret x30
    0003cbd8udf 0
    0003cbdcudf 0
    0003cbd0
    0003cbe0
    0003cbe0runtime.arenaIdx.l2: ; void runtime.arenaIdx.l2(runtime.arenaIdx i)
    0003cbe0ret x30
    0003cbe4udf 0
    0003cbe8udf 0
    0003cbecudf 0
    0003cbe0
    0003cbf0
    0003cbf0runtime.spanOf: ; void runtime.spanOf(uintptr p)
    0003cbf0str x30, [sp-48]!
    0003cbf4stur x29, [sp-8]
    0003cbf8sub x29, sp, 8
    0003cbfcstr x0, [sp+56]
    0003cc00bl runtime.arenaIndex
    0003cc04str x0, [sp+24]
    0003cc08bl runtime.arenaIdx.l2
    0003cc0csubs xzr, x0, 0x400000
    0003cc10b.hs 0x3cc7c
    0003cc14ldr x0, [sp+24]
    0003cc18bl runtime.arenaIdx.l1
    0003cc1csubs xzr, x0, 1
    0003cc20b.hs 0x3cc94
    0003cc24adrp x27, 0xa06000
    0003cc28ldr x1, [x27+2648]
    0003cc2cstr x1, [sp+32]
    0003cc30ldr x0, [sp+24]
    0003cc34bl runtime.arenaIdx.l2
    0003cc38subs xzr, x0, 0x400000
    0003cc3cb.hs 0x3cc8c
    0003cc40ldr x1, [sp+32]
    0003cc44ldrsb x27, [x1]
    0003cc48ldr x1, [x1+3*x0]
    0003cc4ccbz x1, 0x3cc6c
    0003cc50ldr x2, [sp+56]
    0003cc54ubfm x2, x2, 10, 63
    0003cc58and x2, x2, 65528
    0003cc5cldr x0, [x1+x2]
    0003cc60ldur x29, [sp-8]
    0003cc64ldr x30, [sp], 48
    0003cc68ret x30
    0003cc6c
    0003cc6cloc_3cc6c:
    0003cc6cmov x0, xzr
    0003cc70ldur x29, [sp-8]
    0003cc74ldr x30, [sp], 48
    0003cc78ret x30
    0003cc7c
    0003cc7cloc_3cc7c:
    0003cc7cmov x0, xzr
    0003cc80ldur x29, [sp-8]
    0003cc84ldr x30, [sp], 48
    0003cc88ret x30
    0003cc8c
    0003cc8cloc_3cc8c:
    0003cc8corr x1, xzr, 0x400000
    0003cc90bl runtime.panicIndexU
    0003cc94
    0003cc94loc_3cc94:
    0003cc94orr x1, xzr, 1
    0003cc98bl runtime.panicIndexU
    0003cc9chint
    0003cbf0
    0003cca0
    0003cca0runtime.spanOfUnchecked: ; void runtime.spanOfUnchecked(uintptr p)
    0003cca0str x30, [sp-48]!
    0003cca4stur x29, [sp-8]
    0003cca8sub x29, sp, 8
    0003ccacstr x0, [sp+56]
    0003ccb0bl runtime.arenaIndex
    0003ccb4str x0, [sp+24]
    0003ccb8bl runtime.arenaIdx.l1
    0003ccbcstr x0, [sp+32]
    0003ccc0ldr x0, [sp+24]
    0003ccc4bl runtime.arenaIdx.l2
    0003ccc8ldr x1, [sp+32]
    0003ccccsubs xzr, x1, 1
    0003ccd0b.hs 0x3cd14
    0003ccd4subs xzr, x0, 0x400000
    0003ccd8b.hs 0x3cd0c
    0003ccdcadrp x27, 0xa06000
    0003cce0ldr x1, [x27+2648]
    0003cce4ldrsb x27, [x1]
    0003cce8ldr x1, [x1+3*x0]
    0003ccecldrsb x27, [x1]
    0003ccf0ldr x2, [sp+56]
    0003ccf4ubfm x2, x2, 10, 63
    0003ccf8and x2, x2, 65528
    0003ccfcldr x0, [x1+x2]
    0003cd00ldur x29, [sp-8]
    0003cd04ldr x30, [sp], 48
    0003cd08ret x30
    0003cd0c
    0003cd0cloc_3cd0c:
    0003cd0corr x1, xzr, 0x400000
    0003cd10bl runtime.panicIndexU
    0003cd14
    0003cd14loc_3cd14:
    0003cd14mov x0, x1
    0003cd18orr x1, xzr, 1
    0003cd1cbl runtime.panicIndexU
    0003cd20hint
    0003cd24udf 0
    0003cd28udf 0
    0003cd2cudf 0
    0003cca0
    0003cd30
    0003cd30runtime.spanOfHeap: ; void runtime.spanOfHeap(uintptr p)
    0003cd30str x30, [sp-32]!
    0003cd34stur x29, [sp-8]
    0003cd38sub x29, sp, 8
    0003cd3cstr x0, [sp+40]
    0003cd40bl runtime.spanOf
    0003cd44cbnz x0, 0x3cd50
    0003cd48orr x2, xzr, 1
    0003cd4cb 0x3cd8c
    0003cd50
    0003cd50loc_3cd50:
    0003cd50str x0, [sp+16]
    0003cd54add x0, x0, 99
    0003cd58bl runtime.(*mSpanStateBox).get
    0003cd5cubfm x1, x0, 0, 7
    0003cd60subs wzr, w1, 1
    0003cd64b.eq 0x3cd74
    0003cd68ldr x0, [sp+16]
    0003cd6corr x2, xzr, 1
    0003cd70b 0x3cd8c
    0003cd74
    0003cd74loc_3cd74:
    0003cd74ldr x0, [sp+16]
    0003cd78bl runtime.(*mspan).base
    0003cd7cldr x1, [sp+40]
    0003cd80subs xzr, x0, x1
    0003cd84cset x2, hi
    0003cd88ldr x0, [sp+16]
    0003cd8c
    0003cd8cloc_3cd8c:
    0003cd8ctbnz w2, 0, 0x3cda0
    0003cd90ldr x1, [x0+112]
    0003cd94ldr x2, [sp+40]
    0003cd98subs xzr, x2, x1
    0003cd9cb.lo 0x3cdb0
    0003cda0
    0003cda0loc_3cda0:
    0003cda0mov x0, xzr
    0003cda4ldur x29, [sp-8]
    0003cda8ldr x30, [sp], 32
    0003cdacret x30
    0003cdb0
    0003cdb0loc_3cdb0:
    0003cdb0ldur x29, [sp-8]
    0003cdb4ldr x30, [sp], 32
    0003cdb8ret x30
    0003cdbcudf 0
    0003cd30
    0003cdc0
    0003cdc0runtime.pageIndexOf: ; void runtime.pageIndexOf(uintptr p)
    0003cdc0ldr x16, [x28+16]
    0003cdc4subs xzr, sp, x16
    0003cdc8b.ls 0x3ce50
    0003cdccstr x30, [sp-48]!
    0003cdd0stur x29, [sp-8]
    0003cdd4sub x29, sp, 8
    0003cdd8str x0, [sp+56]
    0003cddcbl runtime.arenaIndex
    0003cde0str x0, [sp+24]
    0003cde4bl runtime.arenaIdx.l1
    0003cde8str x0, [sp+32]
    0003cdecldr x0, [sp+24]
    0003cdf0bl runtime.arenaIdx.l2
    0003cdf4ldr x1, [sp+32]
    0003cdf8subs xzr, x1, 1
    0003cdfcb.hs 0x3ce40
    0003ce00subs xzr, x0, 0x400000
    0003ce04b.hs 0x3ce38
    0003ce08adrp x27, 0xa06000
    0003ce0cldr x3, [x27+2648]
    0003ce10ldrsb x27, [x3]
    0003ce14ldr x0, [x3+3*x0]
    0003ce18ldr x3, [sp+56]
    0003ce1cubfm x1, x3, 16, 25
    0003ce20ubfm x3, x3, 13, 15
    0003ce24orr x4, xzr, 1
    0003ce28lslv x2, x4, x3
    0003ce2cldur x29, [sp-8]
    0003ce30ldr x30, [sp], 48
    0003ce34ret x30
    0003ce38
    0003ce38loc_3ce38:
    0003ce38orr x1, xzr, 0x400000
    0003ce3cbl runtime.panicIndexU
    0003ce40
    0003ce40loc_3ce40:
    0003ce40mov x0, x1
    0003ce44orr x1, xzr, 1
    0003ce48bl runtime.panicIndexU
    0003ce4chint
    0003ce50
    0003ce50loc_3ce50:
    0003ce50str x0, [sp+8]
    0003ce54mov x3, x30
    0003ce58bl runtime.morestack_noctxt.abi0
    0003ce5cldr x0, [sp+8]
    0003ce60b 0x3cdc0
    0003ce64udf 0
    0003ce68udf 0
    0003ce6cudf 0
    0003cdc0
    0003ce70
    0003ce70runtime.(*mheap).init: ; void runtime.(*mheap).init(runtime.mheap * h)
    0003ce70ldr x16, [x28+16]
    0003ce74subs xzr, sp, x16
    0003ce78b.ls 0x3d080
    0003ce7cstr x30, [sp-64]!
    0003ce80stur x29, [sp-8]
    0003ce84sub x29, sp, 8
    0003ce88str x0, [sp+72]
    0003ce8cldrsb x27, [x0]
    0003ce90movz x1, 50
    0003ce94bl runtime.lockInit
    0003ce98ldr x2, [sp+72]
    0003ce9cmovz x3, 36104
    0003cea0movk x3, 0x10000
    0003cea4add x0, x2, x3
    0003cea8movz x1, 51
    0003ceacbl runtime.lockInit
    0003ceb0movz x2, 35528
    0003ceb4movk x2, 0x10000
    0003ceb8ldr x3, [sp+72]
    0003cebcadd x0, x2, x3
    0003cec0movz x1, 160
    0003cec4adrp x2, 0x69c000
    0003cec8add x2, x2, 2512
    0003ceccadrp x4, 0xa15000
    0003ced0add x4, x4, 512
    0003ced4bl runtime.(*fixalloc).init
    0003ced8movz x2, 35600
    0003cedcmovk x2, 0x10000
    0003cee0ldr x3, [sp+72]
    0003cee4add x0, x2, x3
    0003cee8movz x1, 1208
    0003ceecmov x2, xzr
    0003cef0mov x3, xzr
    0003cef4adrp x4, 0xa15000
    0003cef8add x4, x4, 520
    0003cefcbl runtime.(*fixalloc).init
    0003cf00movz x2, 35672
    0003cf04movk x2, 0x10000
    0003cf08ldr x3, [sp+72]
    0003cf0cadd x0, x2, x3
    0003cf10orr x1, xzr, 56
    0003cf14mov x2, xzr
    0003cf18mov x3, xzr
    0003cf1cadrp x4, 0xa15000
    0003cf20add x4, x4, 544
    0003cf24bl runtime.(*fixalloc).init
    0003cf28movz x2, 35744
    0003cf2cmovk x2, 0x10000
    0003cf30ldr x3, [sp+72]
    0003cf34add x0, x2, x3
    0003cf38movz x1, 40
    0003cf3cmov x2, xzr
    0003cf40mov x3, xzr
    0003cf44adrp x4, 0xa15000
    0003cf48add x4, x4, 544
    0003cf4cbl runtime.(*fixalloc).init
    0003cf50movz x2, 35816
    0003cf54movk x2, 0x10000
    0003cf58ldr x3, [sp+72]
    0003cf5cadd x0, x2, x3
    0003cf60orr x1, xzr, 32
    0003cf64mov x2, xzr
    0003cf68mov x3, xzr
    0003cf6cadrp x4, 0xa15000
    0003cf70add x4, x4, 544
    0003cf74bl runtime.(*fixalloc).init
    0003cf78movz x2, 35888
    0003cf7cmovk x2, 0x10000
    0003cf80ldr x3, [sp+72]
    0003cf84add x0, x2, x3
    0003cf88orr x1, xzr, 32
    0003cf8cmov x2, xzr
    0003cf90mov x3, xzr
    0003cf94adrp x4, 0xa15000
    0003cf98add x4, x4, 544
    0003cf9cbl runtime.(*fixalloc).init
    0003cfa0movz x2, 35960
    0003cfa4movk x2, 0x10000
    0003cfa8ldr x3, [sp+72]
    0003cfacadd x0, x2, x3
    0003cfb0orr x1, xzr, 32
    0003cfb4mov x2, xzr
    0003cfb8mov x3, xzr
    0003cfbcadrp x4, 0xa15000
    0003cfc0add x4, x4, 544
    0003cfc4bl runtime.(*fixalloc).init
    0003cfc8movz x2, 36032
    0003cfccmovk x2, 0x10000
    0003cfd0ldr x3, [sp+72]
    0003cfd4add x0, x2, x3
    0003cfd8orr x1, xzr, 32
    0003cfdcmov x2, xzr
    0003cfe0mov x3, xzr
    0003cfe4adrp x4, 0xa15000
    0003cfe8add x4, x4, 536
    0003cfecbl runtime.(*fixalloc).init
    0003cff0movz x2, 36112
    0003cff4movk x2, 0x10000
    0003cff8ldr x3, [sp+72]
    0003cffcadd x0, x2, x3
    0003d000orr x1, xzr, 24
    0003d004mov x2, xzr
    0003d008mov x3, xzr
    0003d00cadrp x4, 0xa14000
    0003d010add x4, x4, 544
    0003d014bl runtime.(*fixalloc).init
    0003d018ldr x1, [sp+72]
    0003d01cadd x27, x1, 0x18000
    0003d020strb wzr, [x27+2824]
    0003d024mov x0, xzr
    0003d028b 0x3d058
    0003d02c
    0003d02cloc_3d02c:
    0003d02cstr x0, [sp+48]
    0003d030movz x2, 712
    0003d034movk x2, 0x10000
    0003d038add x2, x1, x2
    0003d03cadd x2, x2, x0, lsl #8
    0003d040mov x1, x0
    0003d044mov x0, x2
    0003d048bl runtime.(*mcentral).init
    0003d04cldr x2, [sp+48]
    0003d050add x0, x2, 1
    0003d054ldr x1, [sp+72]
    0003d058
    0003d058loc_3d058:
    0003d058subs xzr, x0, 136
    0003d05cb.lt 0x3d02c
    0003d060add x0, x1, 8
    0003d064adrp x2, 0xa14000
    0003d068add x2, x2, 536
    0003d06cmov x3, xzr
    0003d070bl runtime.(*pageAlloc).init
    0003d074ldur x29, [sp-8]
    0003d078ldr x30, [sp], 64
    0003d07cret x30
    0003d080
    0003d080loc_3d080:
    0003d080str x0, [sp+8]
    0003d084mov x3, x30
    0003d088bl runtime.morestack_noctxt.abi0
    0003d08cldr x0, [sp+8]
    0003d090b 0x3ce70
    0003d094udf 0
    0003d098udf 0
    0003d09cudf 0
    0003ce70
    0003d0a0
    0003d0a0runtime.(*mheap).reclaim: ; void runtime.(*mheap).reclaim(runtime.mheap * h, uintptr npage)
    0003d0a0ldr x16, [x28+16]
    0003d0a4sub x17, sp, 32
    0003d0a8subs xzr, x17, x16
    0003d0acb.ls 0x3d2a8
    0003d0b0str x30, [sp-160]!
    0003d0b4stur x29, [sp-8]
    0003d0b8sub x29, sp, 8
    0003d0bcstr x0, [sp+168]
    0003d0c0str x1, [sp+176]
    0003d0c4ldrsb x27, [x0]
    0003d0c8movz x1, 392
    0003d0ccmovk x1, 0x10000
    0003d0d0add x0, x0, x1
    0003d0d4str x0, [sp+144]
    0003d0d8bl internal/runtime/atomic.(*Uint64).Load
    0003d0dcmovz x1, 0x8000000000000000
    0003d0e0subs xzr, x0, x1
    0003d0e4b.hs 0x3d150
    0003d0e8bl runtime.acquirem
    0003d0ecstr x0, [sp+112]
    0003d0f0bl runtime.traceAcquire
    0003d0f4str x0, [sp+136]
    0003d0f8str x1, [sp+104]
    0003d0fcbl runtime.traceLocker.ok
    0003d100tbz w0, 0, 0x3d11c
    0003d104ldr x0, [sp+136]
    0003d108ldr x1, [sp+104]
    0003d10cbl runtime.traceLocker.GCSweepStart
    0003d110ldr x0, [sp+136]
    0003d114ldr x1, [sp+104]
    0003d118bl runtime.traceRelease
    0003d11c
    0003d11cloc_3d11c:
    0003d11cldr x0, [sp+168]
    0003d120add x27, x0, 0x10000
    0003d124ldr x2, [x27+656]
    0003d128str x2, [sp+80]
    0003d12cadd x27, x0, 0x10000
    0003d130ldr x3, [x27+648]
    0003d134str x3, [sp+120]
    0003d138add x27, x0, 0x10000
    0003d13cldr x4, [x27+664]
    0003d140str x4, [sp+88]
    0003d144ldr x1, [sp+176]
    0003d148mov x5, xzr
    0003d14cb 0x3d170
    0003d150
    0003d150loc_3d150:
    0003d150ldur x29, [sp-8]
    0003d154ldr x30, [sp], 160
    0003d158ret x30
    0003d15c
    0003d15cloc_3d15c:
    0003d15cldr x2, [sp+80]
    0003d160ldr x3, [sp+120]
    0003d164ldr x4, [sp+88]
    0003d168mov x5, x0
    0003d16cldr x0, [sp+168]
    0003d170
    0003d170loc_3d170:
    0003d170cbz x1, 0x3d260
    0003d174str x1, [sp+72]
    0003d178strb w5, [sp+71]
    0003d17cmovz x1, 400
    0003d180movk x1, 0x10000
    0003d184add x0, x0, x1
    0003d188str x0, [sp+128]
    0003d18cbl internal/runtime/atomic.(*Uintptr).Load
    0003d190cbz x0, 0x3d1d4
    0003d194ldr x3, [sp+72]
    0003d198subs xzr, x0, x3
    0003d19ccsel x3, x3, x0, hi
    0003d1a0str x3, [sp+104]
    0003d1a4sub x2, x0, x3
    0003d1a8mov x1, x0
    0003d1acldr x0, [sp+128]
    0003d1b0bl internal/runtime/atomic.(*Uintptr).CompareAndSwap
    0003d1b4ldr x3, [sp+72]
    0003d1b8ldr x4, [sp+104]
    0003d1bcsub x4, x3, x4
    0003d1c0ands wzr, w0, 1
    0003d1c4csel x3, x4, x3, ne
    0003d1c8mov x1, x3
    0003d1ccldrb w0, [sp+71]
    0003d1d0b 0x3d15c
    0003d1d4
    0003d1d4loc_3d1d4:
    0003d1d4ldr x0, [sp+144]
    0003d1d8orr x1, xzr, 512
    0003d1dcbl internal/runtime/atomic.(*Uint64).Add
    0003d1e0sub x4, x0, 512
    0003d1e4ldr x2, [sp+80]
    0003d1e8subs xzr, x2, x4, lsr #13
    0003d1ecb.ls 0x3d24c
    0003d1f0ldrb w0, [sp+71]
    0003d1f4tbnz w0, 0, 0x3d20c
    0003d1f8str x4, [sp+96]
    0003d1fcldr x0, [sp+168]
    0003d200bl runtime.lock
    0003d204ldr x2, [sp+80]
    0003d208ldr x4, [sp+96]
    0003d20c
    0003d20cloc_3d20c:
    0003d20cldr x0, [sp+168]
    0003d210ldr x1, [sp+120]
    0003d214ldr x3, [sp+88]
    0003d218orr x5, xzr, 512
    0003d21cbl runtime.(*mheap).reclaimChunk
    0003d220ldr x6, [sp+72]
    0003d224subs xzr, x0, x6
    0003d228b.hi 0x3d234
    0003d22csub x1, x6, x0
    0003d230b 0x3d244
    0003d234
    0003d234loc_3d234:
    0003d234sub x1, x0, x6
    0003d238ldr x0, [sp+128]
    0003d23cbl internal/runtime/atomic.(*Uintptr).Add
    0003d240mov x1, xzr
    0003d244
    0003d244loc_3d244:
    0003d244orr x0, xzr, 1
    0003d248b 0x3d15c
    0003d24c
    0003d24cloc_3d24c:
    0003d24cldr x0, [sp+144]
    0003d250movz x1, 0x8000000000000000
    0003d254bl internal/runtime/atomic.(*Uint64).Store
    0003d258ldr x0, [sp+168]
    0003d25cldrb w5, [sp+71]
    0003d260
    0003d260loc_3d260:
    0003d260tbz w5, 0, 0x3d268
    0003d264bl runtime.unlock
    0003d268
    0003d268loc_3d268:
    0003d268bl runtime.traceAcquire
    0003d26cstr x0, [sp+136]
    0003d270str x1, [sp+104]
    0003d274bl runtime.traceLocker.ok
    0003d278tbz w0, 0, 0x3d294
    0003d27cldr x0, [sp+136]
    0003d280ldr x1, [sp+104]
    0003d284bl runtime.traceLocker.GCSweepDone
    0003d288ldr x0, [sp+136]
    0003d28cldr x1, [sp+104]
    0003d290bl runtime.traceRelease
    0003d294
    0003d294loc_3d294:
    0003d294ldr x0, [sp+112]
    0003d298bl runtime.releasem
    0003d29cldur x29, [sp-8]
    0003d2a0ldr x30, [sp], 160
    0003d2a4ret x30
    0003d2a8
    0003d2a8loc_3d2a8:
    0003d2a8stp x0, x1, [sp+8]
    0003d2acmov x3, x30
    0003d2b0bl runtime.morestack_noctxt.abi0
    0003d2b4ldp x0, x1, [sp+8]
    0003d2b8b 0x3d0a0
    0003d2bcudf 0
    0003d0a0
    0003d2c0
    0003d2c0runtime.(*mheap).reclaimChunk: ; void runtime.(*mheap).reclaimChunk(runtime.mheap * h, struct []runtime.arenaIdx arenas, uintptr pageIdx, uintptr n)
    0003d2c0ldr x16, [x28+16]
    0003d2c4sub x17, sp, 64
    0003d2c8subs xzr, x17, x16
    0003d2ccb.ls 0x3d610
    0003d2d0str x30, [sp-192]!
    0003d2d4stur x29, [sp-8]
    0003d2d8sub x29, sp, 8
    0003d2dcstr x0, [sp+200]
    0003d2e0str x4, [sp+232]
    0003d2e4str x5, [sp+240]
    0003d2e8str x2, [sp+216]
    0003d2ecstr x1, [sp+208]
    0003d2f0ldrsb x27, [x0]
    0003d2f4bl runtime.assertLockHeld
    0003d2f8adrp x0, 0x9e6000
    0003d2fcadd x0, x0, 948
    0003d300bl runtime.(*activeSweep).begin
    0003d304str w0, [sp+40]
    0003d308strb w1, [sp+44]
    0003d30ctbz w1, 0, 0x3d32c
    0003d310ldr x1, [sp+216]
    0003d314ldr x5, [sp+240]
    0003d318ldr x3, [sp+208]
    0003d31cldr x4, [sp+232]
    0003d320mov x0, x5
    0003d324mov x2, xzr
    0003d328b 0x3d354
    0003d32c
    0003d32cloc_3d32c:
    0003d32cmov x0, xzr
    0003d330ldur x29, [sp-8]
    0003d334ldr x30, [sp], 192
    0003d338ret x30
    0003d33c
    0003d33cloc_3d33c:
    0003d33cadd x4, x5, x9, lsl #3
    0003d340sub x5, x11, x9, lsl #3
    0003d344ldr x1, [sp+216]
    0003d348ldr x6, [sp+208]
    0003d34cldr x0, [sp+240]
    0003d350mov x3, x6
    0003d354
    0003d354loc_3d354:
    0003d354str x2, [sp+64]
    0003d358cbz x5, 0x3d424
    0003d35cubfm x6, x4, 13, 63
    0003d360subs xzr, x1, x4, lsr #13
    0003d364b.ls 0x3d604
    0003d368str x5, [sp+144]
    0003d36cstr x4, [sp+136]
    0003d370ldr x0, [x3+3*x6]
    0003d374str x0, [sp+104]
    0003d378bl runtime.arenaIdx.l1
    0003d37cstr x0, [sp+128]
    0003d380ldr x0, [sp+104]
    0003d384bl runtime.arenaIdx.l2
    0003d388ldr x1, [sp+128]
    0003d38csubs xzr, x1, 1
    0003d390b.hs 0x3d5f8
    0003d394subs xzr, x0, 0x400000
    0003d398b.hs 0x3d5f0
    0003d39cldr x3, [sp+200]
    0003d3a0add x27, x3, 0x10000
    0003d3a4ldr x4, [x27+536]
    0003d3a8ldrsb x27, [x4]
    0003d3acldr x5, [sp+136]
    0003d3b0ubfm x6, x5, 3, 12
    0003d3b4ldr x4, [x4+3*x0]
    0003d3b8subs xzr, x6, 1024
    0003d3bcb.hi 0x3d5e4
    0003d3c0ldrsb x27, [x4]
    0003d3c4and x6, x5, 8191
    0003d3c8add x7, x4, 0x10000
    0003d3ccorr x8, xzr, 1024
    0003d3d0sub x9, x8, x6, lsr #3
    0003d3d4sub x10, xzr, x9
    0003d3d8sbfm x10, x10, 63, 63
    0003d3dcand x10, x10, x6, lsr #3
    0003d3e0movz x11, 1024
    0003d3e4movk x11, 0x10000
    0003d3e8add x11, x4, x11
    0003d3ecadd x7, x10, x7
    0003d3f0add x10, x11, x10
    0003d3f4ldr x11, [sp+144]
    0003d3f8subs xzr, x9, x11, lsr #3
    0003d3fcb.ls 0x3d404
    0003d400ubfm x9, x11, 3, 63
    0003d404
    0003d404loc_3d404:
    0003d404str x4, [sp+96]
    0003d408str x6, [sp+120]
    0003d40cstr x7, [sp+160]
    0003d410str x10, [sp+152]
    0003d414str x9, [sp+72]
    0003d418ldr x2, [sp+64]
    0003d41cmov x0, xzr
    0003d420b 0x3d4a0
    0003d424
    0003d424loc_3d424:
    0003d424ldr w1, [sp+40]
    0003d428ldrb w2, [sp+44]
    0003d42cadrp x0, 0x9e6000
    0003d430add x0, x0, 948
    0003d434bl runtime.(*activeSweep).end
    0003d438bl runtime.traceAcquire
    0003d43cstr x0, [sp+176]
    0003d440str x1, [sp+144]
    0003d444bl runtime.traceLocker.ok
    0003d448tbz w0, 0, 0x3d484
    0003d44cldr x0, [sp+200]
    0003d450bl runtime.unlock
    0003d454ldr x1, [sp+240]
    0003d458ldr x2, [sp+64]
    0003d45csub x1, x1, x2
    0003d460ubfm x2, x1, 51, 50
    0003d464ldr x0, [sp+176]
    0003d468ldr x1, [sp+144]
    0003d46cbl runtime.traceLocker.GCSweepSpan
    0003d470ldr x0, [sp+176]
    0003d474ldr x1, [sp+144]
    0003d478bl runtime.traceRelease
    0003d47cldr x0, [sp+200]
    0003d480bl runtime.lock
    0003d484
    0003d484loc_3d484:
    0003d484ldr x0, [sp+200]
    0003d488bl runtime.assertLockHeld
    0003d48cldr x0, [sp+64]
    0003d490ldur x29, [sp-8]
    0003d494ldr x30, [sp], 192
    0003d498ret x30
    0003d49c
    0003d49cloc_3d49c:
    0003d49cadd x0, x0, 1
    0003d4a0
    0003d4a0loc_3d4a0:
    0003d4a0subs xzr, x9, x0
    0003d4a4b.le 0x3d33c
    0003d4a8add x12, x0, x7
    0003d4acldarb w13, [x12]
    0003d4b0b.ls 0x3d5dc
    0003d4b4ldrb w14, [x10+x0]
    0003d4b8bic x13, x13, x14
    0003d4bcubfm x14, x13, 0, 7
    0003d4c0cbz w14, 0x3d49c
    0003d4c4str x0, [sp+88]
    0003d4c8str x12, [sp+168]
    0003d4ccmov x1, xzr
    0003d4d0b 0x3d4d8
    0003d4d4
    0003d4d4loc_3d4d4:
    0003d4d4add x1, x1, 1
    0003d4d8
    0003d4d8loc_3d4d8:
    0003d4d8subs xzr, x1, 8
    0003d4dcb.hs 0x3d49c
    0003d4e0orr x14, xzr, 1
    0003d4e4lslv x15, x14, x1
    0003d4e8and x15, x13, x15
    0003d4ecubfm x15, x15, 0, 7
    0003d4f0cbz w15, 0x3d4d4
    0003d4f4add x15, x6, x0, lsl #3
    0003d4f8add x15, x1, x15
    0003d4fcsubs xzr, x15, 8192
    0003d500b.hs 0x3d5d0
    0003d504str x1, [sp+80]
    0003d508str x2, [sp+112]
    0003d50cstrb w13, [sp+38]
    0003d510ldr x1, [x4+3*x15]
    0003d514add x0, sp, 40
    0003d518bl runtime.(*sweepLocker).tryAcquire
    0003d51cstr x0, [sp+48]
    0003d520tbnz w1, 0, 0x3d53c
    0003d524ldr x1, [sp+168]
    0003d528ldr x5, [sp+88]
    0003d52cldr x6, [sp+152]
    0003d530ldrb w13, [sp+38]
    0003d534ldr x2, [sp+112]
    0003d538b 0x3d598
    0003d53c
    0003d53cloc_3d53c:
    0003d53cldr x1, [sp+48]
    0003d540ldr x1, [x1+32]
    0003d544str x1, [sp+56]
    0003d548ldr x0, [sp+200]
    0003d54cbl runtime.unlock
    0003d550add x0, sp, 48
    0003d554mov x1, xzr
    0003d558bl runtime.(*sweepLocked).sweep
    0003d55cstrb w0, [sp+39]
    0003d560ldr x0, [sp+200]
    0003d564bl runtime.lock
    0003d568ldr x1, [sp+168]
    0003d56cldarb w2, [x1]
    0003d570ldr x3, [sp+112]
    0003d574ldr x4, [sp+56]
    0003d578add x4, x3, x4
    0003d57cldr x5, [sp+88]
    0003d580ldr x6, [sp+152]
    0003d584ldrb w7, [x6+x5]
    0003d588bic x13, x2, x7
    0003d58cldrb w2, [sp+39]
    0003d590ands wzr, w2, 1
    0003d594csel x2, x4, x3, ne
    0003d598
    0003d598loc_3d598:
    0003d598mov x0, x5
    0003d59cldr x1, [sp+80]
    0003d5a0ldr x3, [sp+200]
    0003d5a4ldr x4, [sp+96]
    0003d5a8ldr x5, [sp+136]
    0003d5acldr x6, [sp+120]
    0003d5b0ldr x7, [sp+160]
    0003d5b4orr x8, xzr, 1024
    0003d5b8ldr x9, [sp+72]
    0003d5bcldr x10, [sp+152]
    0003d5c0ldr x11, [sp+144]
    0003d5c4ldr x12, [sp+168]
    0003d5c8orr x14, xzr, 1
    0003d5ccb 0x3d4d4
    0003d5d0
    0003d5d0loc_3d5d0:
    0003d5d0mov x0, x15
    0003d5d4orr x1, xzr, 8192
    0003d5d8bl runtime.panicIndexU
    0003d5dc
    0003d5dcloc_3d5dc:
    0003d5dcmov x1, x9
    0003d5e0bl runtime.panicIndex
    0003d5e4
    0003d5e4loc_3d5e4:
    0003d5e4mov x0, x6
    0003d5e8orr x1, xzr, 1024
    0003d5ecbl runtime.panicSliceBU
    0003d5f0
    0003d5f0loc_3d5f0:
    0003d5f0orr x1, xzr, 0x400000
    0003d5f4bl runtime.panicIndexU
    0003d5f8
    0003d5f8loc_3d5f8:
    0003d5f8mov x0, x1
    0003d5fcorr x1, xzr, 1
    0003d600bl runtime.panicIndexU
    0003d604
    0003d604loc_3d604:
    0003d604mov x0, x6
    0003d608bl runtime.panicIndexU
    0003d60chint
    0003d610
    0003d610loc_3d610:
    0003d610stp x0, x1, [sp+8]
    0003d614stp x2, x3, [sp+24]
    0003d618stp x4, x5, [sp+40]
    0003d61cmov x3, x30
    0003d620bl runtime.morestack_noctxt.abi0
    0003d624ldp x0, x1, [sp+8]
    0003d628ldp x2, x3, [sp+24]
    0003d62cldp x4, x5, [sp+40]
    0003d630b 0x3d2c0
    0003d634udf 0
    0003d638udf 0
    0003d63cudf 0
    0003d2c0