File sliver_83cb34f62800fed14e14547c39337aab8e0427fe2c6310a3fb40ce0ac36168c9.elf
Function:
    0003e590
    0003e590runtime.(*mheap).grow: ; void runtime.(*mheap).grow(runtime.mheap * h, uintptr npage)
    0003e590ldr x16, [x28+16]
    0003e594subs xzr, sp, x16
    0003e598b.ls 0x3e8ac
    0003e59cstr x30, [sp-128]!
    0003e5a0stur x29, [sp-8]
    0003e5a4sub x29, sp, 8
    0003e5a8str x0, [sp+136]
    0003e5acstr x1, [sp+144]
    0003e5b0ldrsb x27, [x0]
    0003e5b4bl runtime.assertLockHeld
    0003e5b8ldr x0, [sp+144]
    0003e5bcorr x1, xzr, 512
    0003e5c0bl runtime.alignUp
    0003e5c4str x0, [sp+104]
    0003e5c8ldr x1, [sp+136]
    0003e5ccadd x27, x1, 0x10000
    0003e5d0ldr x1, [x27+696]
    0003e5d4add x0, x1, x0, lsl #13
    0003e5d8str x0, [sp+64]
    0003e5dcadrp x27, 0xa0d000
    0003e5e0ldr x1, [x27+1760]
    0003e5e4bl runtime.alignUp
    0003e5e8ldr x1, [sp+136]
    0003e5ecadd x27, x1, 0x10000
    0003e5f0ldr x2, [x27+704]
    0003e5f4subs xzr, x0, x2
    0003e5f8b.hi 0x3e610
    0003e5fcadd x27, x1, 0x10000
    0003e600ldr x4, [x27+696]
    0003e604ldr x5, [sp+64]
    0003e608subs xzr, x4, x5
    0003e60cb.ls 0x3e7f4
    0003e610
    0003e610loc_3e610:
    0003e610ldr x4, [sp+104]
    0003e614ubfm x4, x4, 51, 50
    0003e618str x4, [sp+72]
    0003e61cmovz x5, 584
    0003e620movk x5, 0x10000
    0003e624add x2, x1, x5
    0003e628mov x0, x1
    0003e62cmov x1, x4
    0003e630orr x3, xzr, 1
    0003e634bl runtime.(*mheap).sysAlloc
    0003e638cbz x0, 0x3e758
    0003e63cmov x3, x0
    0003e640ldr x4, [sp+136]
    0003e644add x27, x4, 0x10000
    0003e648ldr x5, [x27+704]
    0003e64csubs xzr, x0, x5
    0003e650b.ne 0x3e668
    0003e654add x2, x0, x1
    0003e658add x27, x4, 0x10000
    0003e65cstr x2, [x27+704]
    0003e660mov x0, xzr
    0003e664b 0x3e72c
    0003e668
    0003e668loc_3e668:
    0003e668add x27, x4, 0x10000
    0003e66cldr x0, [x27+696]
    0003e670sub x5, x5, x0
    0003e674cbnz x5, 0x3e680
    0003e678mov x0, xzr
    0003e67cb 0x3e714
    0003e680
    0003e680loc_3e680:
    0003e680str x3, [sp+112]
    0003e684str x1, [sp+80]
    0003e688str x5, [sp+56]
    0003e68cmov x1, x5
    0003e690adrp x2, 0xa0e000
    0003e694add x2, x2, 2776
    0003e698bl runtime.sysMap
    0003e69cadrp x0, 0xa12000
    0003e6a0add x0, x0, 1056
    0003e6a4bl runtime.(*consistentHeapStats).acquire
    0003e6a8ldrsb x27, [x0]
    0003e6acadd x3, x0, 8
    0003e6b0adrp x27, 0xa0d000
    0003e6b4ldrb w4, [x27+1516]
    0003e6b8tbz w4, 0, 0x3e6cc
    0003e6bcldr x1, [sp+56]
    0003e6c0ldaddal x1, x2, [x3]
    0003e6c4add x2, x2, x1
    0003e6c8b 0x3e6e0
    0003e6cc
    0003e6ccloc_3e6cc:
    0003e6ccldr x1, [sp+56]
    0003e6d0
    0003e6d0loc_3e6d0:
    0003e6d0ldaxr x2, [x3]
    0003e6d4add x2, x2, x1
    0003e6d8stlxr w27, x2, [x3]
    0003e6dccbnz x27, 0x3e6d0
    0003e6e0
    0003e6e0loc_3e6e0:
    0003e6e0adrp x0, 0xa12000
    0003e6e4add x0, x0, 1056
    0003e6e8bl runtime.(*consistentHeapStats).release
    0003e6ecldr x1, [sp+136]
    0003e6f0add x0, x1, 8
    0003e6f4add x27, x1, 0x10000
    0003e6f8ldr x1, [x27+696]
    0003e6fcldr x2, [sp+56]
    0003e700bl runtime.(*pageAlloc).grow
    0003e704ldr x1, [sp+80]
    0003e708ldr x3, [sp+112]
    0003e70cldr x4, [sp+136]
    0003e710ldr x0, [sp+56]
    0003e714
    0003e714loc_3e714:
    0003e714mov x2, x3
    0003e718add x27, x4, 0x10000
    0003e71cstr x3, [x27+696]
    0003e720add x2, x2, x1
    0003e724add x27, x4, 0x10000
    0003e728str x2, [x27+704]
    0003e72c
    0003e72cloc_3e72c:
    0003e72cstr x0, [sp+48]
    0003e730adrp x27, 0xa0d000
    0003e734ldr x1, [x27+1760]
    0003e738add x27, x4, 0x10000
    0003e73cldr x2, [x27+696]
    0003e740ldr x3, [sp+104]
    0003e744add x0, x2, x3, lsl #13
    0003e748bl runtime.alignUp
    0003e74cldr x1, [sp+136]
    0003e750ldr x2, [sp+48]
    0003e754b 0x3e7f8
    0003e758
    0003e758loc_3e758:
    0003e758adrp x0, 0xa0e000
    0003e75cadd x0, x0, 2784
    0003e760bl runtime.(*sysMemStat).load
    0003e764str x0, [sp+96]
    0003e768adrp x0, 0xa0e000
    0003e76cadd x0, x0, 2776
    0003e770bl runtime.(*sysMemStat).load
    0003e774ldr x1, [sp+96]
    0003e778add x1, x1, x0
    0003e77cstr x1, [sp+96]
    0003e780adrp x0, 0xa0e000
    0003e784add x0, x0, 2768
    0003e788bl runtime.(*sysMemStat).load
    0003e78cstr x0, [sp+88]
    0003e790bl runtime.printlock
    0003e794adrp x0, 0x686000
    0003e798add x0, x0, 139
    0003e79cmovz x1, 40
    0003e7a0bl runtime.printstring
    0003e7a4ldr x0, [sp+72]
    0003e7a8bl runtime.printuint
    0003e7acadrp x0, 0x675000
    0003e7b0add x0, x0, 1576
    0003e7b4movz x1, 13
    0003e7b8bl runtime.printstring
    0003e7bcldr x1, [sp+96]
    0003e7c0ldr x2, [sp+88]
    0003e7c4add x0, x1, x2
    0003e7c8bl runtime.printuint
    0003e7ccadrp x0, 0x673000
    0003e7d0add x0, x0, 2884
    0003e7d4movz x1, 9
    0003e7d8bl runtime.printstring
    0003e7dcbl runtime.printunlock
    0003e7e0mov x0, xzr
    0003e7e4mov x1, xzr
    0003e7e8ldur x29, [sp-8]
    0003e7ecldr x30, [sp], 128
    0003e7f0ret x30
    0003e7f4
    0003e7f4loc_3e7f4:
    0003e7f4mov x2, xzr
    0003e7f8
    0003e7f8loc_3e7f8:
    0003e7f8str x2, [sp+48]
    0003e7fcadd x27, x1, 0x10000
    0003e800ldr x3, [x27+696]
    0003e804str x3, [sp+40]
    0003e808add x27, x1, 0x10000
    0003e80cstr x0, [x27+696]
    0003e810mov x4, x3
    0003e814sub x1, x0, x4
    0003e818str x1, [sp+104]
    0003e81cmov x0, x3
    0003e820adrp x2, 0xa0e000
    0003e824add x2, x2, 2776
    0003e828bl runtime.sysMap
    0003e82cadrp x0, 0xa12000
    0003e830add x0, x0, 1056
    0003e834bl runtime.(*consistentHeapStats).acquire
    0003e838ldrsb x27, [x0]
    0003e83cadd x3, x0, 8
    0003e840adrp x27, 0xa0d000
    0003e844ldrb w4, [x27+1516]
    0003e848tbz w4, 0, 0x3e85c
    0003e84cldr x1, [sp+104]
    0003e850ldaddal x1, x2, [x3]
    0003e854add x2, x2, x1
    0003e858b 0x3e870
    0003e85c
    0003e85cloc_3e85c:
    0003e85cldr x1, [sp+104]
    0003e860
    0003e860loc_3e860:
    0003e860ldaxr x2, [x3]
    0003e864add x2, x2, x1
    0003e868stlxr w27, x2, [x3]
    0003e86ccbnz x27, 0x3e860
    0003e870
    0003e870loc_3e870:
    0003e870adrp x0, 0xa12000
    0003e874add x0, x0, 1056
    0003e878bl runtime.(*consistentHeapStats).release
    0003e87cldr x1, [sp+136]
    0003e880add x0, x1, 8
    0003e884ldr x1, [sp+40]
    0003e888ldr x2, [sp+104]
    0003e88cbl runtime.(*pageAlloc).grow
    0003e890ldr x1, [sp+48]
    0003e894ldr x2, [sp+104]
    0003e898add x0, x1, x2
    0003e89corr x1, xzr, 1
    0003e8a0ldur x29, [sp-8]
    0003e8a4ldr x30, [sp], 128
    0003e8a8ret x30
    0003e8ac
    0003e8acloc_3e8ac:
    0003e8acstp x0, x1, [sp+8]
    0003e8b0mov x3, x30
    0003e8b4bl runtime.morestack_noctxt.abi0
    0003e8b8ldp x0, x1, [sp+8]
    0003e8bcb 0x3e590
    0003e590
    0003e8c0
    0003e8c0runtime.(*mheap).freeSpan: ; void runtime.(*mheap).freeSpan(runtime.mheap * h, runtime.mspan * s)
    0003e8c0ldr x16, [x28+16]
    0003e8c4subs xzr, sp, x16
    0003e8c8b.ls 0x3e904
    0003e8ccstr x30, [sp-48]!
    0003e8d0stur x29, [sp-8]
    0003e8d4sub x29, sp, 8
    0003e8d8adrp x2, 0
    0003e8dcadd x2, x2, 2336
    0003e8e0str x2, [sp+16]
    0003e8e4str x1, [sp+24]
    0003e8e8str x0, [sp+32]
    0003e8ecadd x0, sp, 16
    0003e8f0str x0, [sp+8]
    0003e8f4bl runtime.systemstack.abi0
    0003e8f8ldur x29, [sp-8]
    0003e8fcldr x30, [sp], 48
    0003e900ret x30
    0003e904
    0003e904loc_3e904:
    0003e904stp x0, x1, [sp+8]
    0003e908mov x3, x30
    0003e90cbl runtime.morestack_noctxt.abi0
    0003e910ldp x0, x1, [sp+8]
    0003e914b 0x3e8c0
    0003e918udf 0
    0003e91cudf 0
    0003e8c0
    0003e920
    0003e920runtime.(*mheap).freeSpan.func1: ; void runtime.(*mheap).freeSpan.func1(void)
    0003e920ldr x16, [x28+16]
    0003e924subs xzr, sp, x16
    0003e928b.ls 0x3e9b0
    0003e92cstr x30, [sp-80]!
    0003e930stur x29, [sp-8]
    0003e934sub x29, sp, 8
    0003e938ldr x0, [x26+16]
    0003e93cstr x0, [sp+48]
    0003e940ldr x0, [x26+8]
    0003e944str x0, [sp+40]
    0003e948bl runtime.traceAllocFreeEnabled
    0003e94ctbz w0, 0, 0x3e980
    0003e950bl runtime.traceAcquire
    0003e954str x0, [sp+64]
    0003e958str x1, [sp+56]
    0003e95cbl runtime.traceLocker.ok
    0003e960tbz w0, 0, 0x3e980
    0003e964ldr x0, [sp+64]
    0003e968ldr x1, [sp+56]
    0003e96cldr x2, [sp+40]
    0003e970bl runtime.traceLocker.SpanFree
    0003e974ldr x0, [sp+64]
    0003e978ldr x1, [sp+56]
    0003e97cbl runtime.traceRelease
    0003e980
    0003e980loc_3e980:
    0003e980ldr x0, [sp+48]
    0003e984ldrsb x27, [x0]
    0003e988bl runtime.lock
    0003e98cldr x0, [sp+48]
    0003e990ldr x1, [sp+40]
    0003e994mov x2, xzr
    0003e998bl runtime.(*mheap).freeSpanLocked
    0003e99cldr x0, [sp+48]
    0003e9a0bl runtime.unlock
    0003e9a4ldur x29, [sp-8]
    0003e9a8ldr x30, [sp], 80
    0003e9acret x30
    0003e9b0
    0003e9b0loc_3e9b0:
    0003e9b0mov x3, x30
    0003e9b4bl runtime.morestack.abi0
    0003e9b8b 0x3e920
    0003e9bcudf 0
    0003e920
    0003e9c0
    0003e9c0runtime.(*mheap).freeManual: ; void runtime.(*mheap).freeManual(runtime.mheap * h, runtime.mspan * s, runtime.spanAllocType typ)
    0003e9c0ldr x16, [x28+24]
    0003e9c4subs xzr, sp, x16
    0003e9c8b.ls 0x3ea58
    0003e9ccstr x30, [sp-64]!
    0003e9d0stur x29, [sp-8]
    0003e9d4sub x29, sp, 8
    0003e9d8str x0, [sp+72]
    0003e9dcstr x1, [sp+80]
    0003e9e0strb w2, [sp+88]
    0003e9e4bl runtime.traceAllocFreeEnabled
    0003e9e8tbz w0, 0, 0x3ea1c
    0003e9ecbl runtime.traceAcquire
    0003e9f0str x0, [sp+48]
    0003e9f4str x1, [sp+40]
    0003e9f8bl runtime.traceLocker.ok
    0003e9fctbz w0, 0, 0x3ea1c
    0003ea00ldr x0, [sp+48]
    0003ea04ldr x1, [sp+40]
    0003ea08ldr x2, [sp+80]
    0003ea0cbl runtime.traceLocker.SpanFree
    0003ea10ldr x0, [sp+48]
    0003ea14ldr x1, [sp+40]
    0003ea18bl runtime.traceRelease
    0003ea1c
    0003ea1cloc_3ea1c:
    0003ea1corr x1, xzr, 1
    0003ea20ldr x2, [sp+80]
    0003ea24strb w1, [x2+100]
    0003ea28ldr x0, [sp+72]
    0003ea2cldrsb x27, [x0]
    0003ea30bl runtime.lock
    0003ea34ldr x0, [sp+72]
    0003ea38ldr x1, [sp+80]
    0003ea3cldrb w2, [sp+88]
    0003ea40bl runtime.(*mheap).freeSpanLocked
    0003ea44ldr x0, [sp+72]
    0003ea48bl runtime.unlock
    0003ea4cldur x29, [sp-8]
    0003ea50ldr x30, [sp], 64
    0003ea54ret x30
    0003ea58
    0003ea58loc_3ea58:
    0003ea58stp x0, x1, [sp+8]
    0003ea5cstrb w2, [sp+24]
    0003ea60mov x3, x30
    0003ea64bl runtime.morestackc.abi0
    0003ea68ldp x0, x1, [sp+8]
    0003ea6cldrb w2, [sp+24]
    0003ea70b 0x3e9c0
    0003ea74udf 0
    0003ea78udf 0
    0003ea7cudf 0
    0003e9c0
    0003ea80
    0003ea80runtime.(*mheap).freeSpanLocked: ; void runtime.(*mheap).freeSpanLocked(runtime.mheap * h, runtime.mspan * s, runtime.spanAllocType typ)
    0003ea80ldr x16, [x28+16]
    0003ea84subs xzr, sp, x16
    0003ea88b.ls 0x3ee28
    0003ea8cstr x30, [sp-80]!
    0003ea90stur x29, [sp-8]
    0003ea94sub x29, sp, 8
    0003ea98str x0, [sp+88]
    0003ea9cstr x1, [sp+96]
    0003eaa0strb w2, [sp+104]
    0003eaa4ldrsb x27, [x0]
    0003eaa8bl runtime.assertLockHeld
    0003eaacldr x1, [sp+96]
    0003eab0ldrsb x27, [x1]
    0003eab4add x0, x1, 99
    0003eab8str x0, [sp+64]
    0003eabcbl runtime.(*mSpanStateBox).get
    0003eac0ubfm x1, x0, 0, 7
    0003eac4subs wzr, w1, 1
    0003eac8b.ne 0x3eb68
    0003eaccldr x0, [sp+96]
    0003ead0ldrb w2, [x0+101]
    0003ead4tbnz w2, 0, 0x3ee14
    0003ead8ldrh w2, [x0+96]
    0003eadccbnz w2, 0x3ed50
    0003eae0ldr w2, [x0+88]
    0003eae4ldr x3, [sp+88]
    0003eae8add x27, x3, 0x10000
    0003eaecldr w4, [x27+320]
    0003eaf0subs wzr, w4, w2
    0003eaf4b.ne 0x3ed50
    0003eaf8movz x2, 352
    0003eafcmovk x2, 0x10000
    0003eb00add x2, x3, x2
    0003eb04ldr x3, [x0+32]
    0003eb08sub x1, xzr, x3
    0003eb0cmov x0, x2
    0003eb10bl internal/runtime/atomic.(*Uintptr).Add
    0003eb14ldr x0, [sp+96]
    0003eb18bl runtime.(*mspan).base
    0003eb1cbl runtime.pageIndexOf
    0003eb20subs xzr, x1, 1024
    0003eb24b.hs 0x3ed44
    0003eb28ldrsb x27, [x0]
    0003eb2cadd x3, x0, 0x10000
    0003eb30add x3, x3, x1
    0003eb34orn x2, xzr, x2
    0003eb38adrp x27, 0xa0d000
    0003eb3cldrb w4, [x27+1516]
    0003eb40tbz w4, 0, 0x3eb50
    0003eb44orn x27, xzr, x2
    0003eb48ldclralb w27, w4, [x3]
    0003eb4cb 0x3eb60
    0003eb50
    0003eb50loc_3eb50:
    0003eb50ldaxrb w5, [x3]
    0003eb54and x4, x5, x2
    0003eb58stlxrb w27, w4, [x3]
    0003eb5ccbnz x27, 0x3eb50
    0003eb60
    0003eb60loc_3eb60:
    0003eb60ldr x2, [sp+96]
    0003eb64b 0x3eb7c
    0003eb68
    0003eb68loc_3eb68:
    0003eb68subs wzr, w1, 2
    0003eb6cb.ne 0x3ed34
    0003eb70ldr x2, [sp+96]
    0003eb74ldrh w3, [x2+96]
    0003eb78cbnz w3, 0x3ed24
    0003eb7c
    0003eb7cloc_3eb7c:
    0003eb7cldr x2, [x2+32]
    0003eb80str x2, [sp+56]
    0003eb84ubfm x1, x2, 51, 50
    0003eb88adrp x0, 0xa0e000
    0003eb8cadd x0, x0, 2784
    0003eb90bl runtime.(*sysMemStat).add
    0003eb94ldrb w2, [sp+104]
    0003eb98str w2, [sp+36]
    0003eb9ccbnz w2, 0x3ebb4
    0003eba0ldr x2, [sp+56]
    0003eba4sub x1, xzr, x2, lsl #13
    0003eba8adrp x0, 0xa0e000
    0003ebacadd x0, x0, 2768
    0003ebb0bl runtime.(*sysMemStat).add
    0003ebb4
    0003ebb4loc_3ebb4:
    0003ebb4adrp x0, 0xa12000
    0003ebb8add x0, x0, 1056
    0003ebbcbl runtime.(*consistentHeapStats).acquire
    0003ebc0ldr w1, [sp+36]
    0003ebc4subs wzr, w1, 1
    0003ebc8b.hi 0x3ec48
    0003ebcccbnz w1, 0x3ec0c
    0003ebd0ldrsb x27, [x0]
    0003ebd4add x1, x0, 16
    0003ebd8ldr x2, [sp+56]
    0003ebdcsub x2, xzr, x2, lsl #13
    0003ebe0adrp x27, 0xa0d000
    0003ebe4ldrb w3, [x27+1516]
    0003ebe8tbz w3, 0, 0x3ebf8
    0003ebecldaddal x2, x3, [x1]
    0003ebf0add x3, x3, x2
    0003ebf4b 0x3eccc
    0003ebf8
    0003ebf8loc_3ebf8:
    0003ebf8ldaxr x3, [x1]
    0003ebfcadd x3, x3, x2
    0003ec00stlxr w27, x3, [x1]
    0003ec04cbnz x27, 0x3ebf8
    0003ec08b 0x3eccc
    0003ec0c
    0003ec0cloc_3ec0c:
    0003ec0cldrsb x27, [x0]
    0003ec10add x1, x0, 24
    0003ec14ldr x2, [sp+56]
    0003ec18sub x2, xzr, x2, lsl #13
    0003ec1cadrp x27, 0xa0d000
    0003ec20ldrb w3, [x27+1516]
    0003ec24tbz w3, 0, 0x3ec34
    0003ec28ldaddal x2, x3, [x1]
    0003ec2cadd x3, x3, x2
    0003ec30b 0x3eccc
    0003ec34
    0003ec34loc_3ec34:
    0003ec34ldaxr x3, [x1]
    0003ec38add x3, x3, x2
    0003ec3cstlxr w27, x3, [x1]
    0003ec40cbnz x27, 0x3ec34
    0003ec44b 0x3eccc
    0003ec48
    0003ec48loc_3ec48:
    0003ec48subs wzr, w1, 2
    0003ec4cb.ne 0x3ec8c
    0003ec50ldrsb x27, [x0]
    0003ec54add x1, x0, 40
    0003ec58ldr x2, [sp+56]
    0003ec5csub x2, xzr, x2, lsl #13
    0003ec60adrp x27, 0xa0d000
    0003ec64ldrb w3, [x27+1516]
    0003ec68tbz w3, 0, 0x3ec78
    0003ec6cldaddal x2, x3, [x1]
    0003ec70add x3, x3, x2
    0003ec74b 0x3eccc
    0003ec78
    0003ec78loc_3ec78:
    0003ec78ldaxr x3, [x1]
    0003ec7cadd x3, x3, x2
    0003ec80stlxr w27, x3, [x1]
    0003ec84cbnz x27, 0x3ec78
    0003ec88b 0x3eccc
    0003ec8c
    0003ec8cloc_3ec8c:
    0003ec8csubs wzr, w1, 3
    0003ec90b.ne 0x3eccc
    0003ec94ldrsb x27, [x0]
    0003ec98add x1, x0, 32
    0003ec9cldr x2, [sp+56]
    0003eca0sub x2, xzr, x2, lsl #13
    0003eca4adrp x27, 0xa0d000
    0003eca8ldrb w3, [x27+1516]
    0003ecactbz w3, 0, 0x3ecbc
    0003ecb0ldaddal x2, x3, [x1]
    0003ecb4add x3, x3, x2
    0003ecb8b 0x3eccc
    0003ecbc
    0003ecbcloc_3ecbc:
    0003ecbcldaxr x3, [x1]
    0003ecc0add x3, x3, x2
    0003ecc4stlxr w27, x3, [x1]
    0003ecc8cbnz x27, 0x3ecbc
    0003eccc
    0003ecccloc_3eccc:
    0003ecccadrp x0, 0xa12000
    0003ecd0add x0, x0, 1056
    0003ecd4bl runtime.(*consistentHeapStats).release
    0003ecd8ldr x0, [sp+96]
    0003ecdcbl runtime.(*mspan).base
    0003ece0ldr x1, [sp+88]
    0003ece4add x1, x1, 8
    0003ece8ldr x2, [sp+96]
    0003ececldr x2, [x2+32]
    0003ecf0mov x3, x0
    0003ecf4mov x0, x1
    0003ecf8mov x1, x3
    0003ecfcbl runtime.(*pageAlloc).free
    0003ed00ldr x0, [sp+64]
    0003ed04mov x1, xzr
    0003ed08bl runtime.(*mSpanStateBox).set
    0003ed0cldr x0, [sp+88]
    0003ed10ldr x1, [sp+96]
    0003ed14bl runtime.(*mheap).freeMSpanLocked
    0003ed18ldur x29, [sp-8]
    0003ed1cldr x30, [sp], 80
    0003ed20ret x30
    0003ed24
    0003ed24loc_3ed24:
    0003ed24adrp x0, 0x686000
    0003ed28add x0, x0, 2946
    0003ed2cmovz x1, 41
    0003ed30bl runtime.throw
    0003ed34
    0003ed34loc_3ed34:
    0003ed34adrp x0, 0x686000
    0003ed38add x0, x0, 2987
    0003ed3cmovz x1, 41
    0003ed40bl runtime.throw
    0003ed44
    0003ed44loc_3ed44:
    0003ed44mov x0, x1
    0003ed48orr x1, xzr, 1024
    0003ed4cbl runtime.panicIndexU
    0003ed50
    0003ed50loc_3ed50:
    0003ed50bl runtime.(*mspan).base
    0003ed54str x0, [sp+56]
    0003ed58ldr x1, [sp+96]
    0003ed5cldrh w2, [x1+96]
    0003ed60str x2, [sp+48]
    0003ed64ldr w1, [x1+88]
    0003ed68str x1, [sp+40]
    0003ed6cldr x1, [sp+88]
    0003ed70add x27, x1, 0x10000
    0003ed74ldr w1, [x27+320]
    0003ed78str w1, [sp+36]
    0003ed7cbl runtime.printlock
    0003ed80adrp x0, 0x67d000
    0003ed84add x0, x0, 2144
    0003ed88orr x1, xzr, 28
    0003ed8cbl runtime.printstring
    0003ed90ldr x0, [sp+96]
    0003ed94bl runtime.printuintptr
    0003ed98adrp x0, 0x672000
    0003ed9cadd x0, x0, 1667
    0003eda0movz x1, 5
    0003eda4bl runtime.printstring
    0003eda8ldr x0, [sp+56]
    0003edacbl runtime.printhex
    0003edb0adrp x0, 0x674000
    0003edb4add x0, x0, 3928
    0003edb8orr x1, xzr, 12
    0003edbcbl runtime.printstring
    0003edc0ldr x0, [sp+48]
    0003edc4bl runtime.printuint
    0003edc8adrp x0, 0x674000
    0003edccadd x0, x0, 264
    0003edd0movz x1, 10
    0003edd4bl runtime.printstring
    0003edd8ldr x0, [sp+40]
    0003eddcbl runtime.printuint
    0003ede0adrp x0, 0x671000
    0003ede4add x0, x0, 4032
    0003ede8orr x1, xzr, 1
    0003edecbl runtime.printstring
    0003edf0ldr w1, [sp+36]
    0003edf4mov x0, x1
    0003edf8bl runtime.printuint
    0003edfcbl runtime.printnl
    0003ee00bl runtime.printunlock
    0003ee04adrp x0, 0x682000
    0003ee08add x0, x0, 2211
    0003ee0cmovz x1, 35
    0003ee10bl runtime.throw
    0003ee14
    0003ee14loc_3ee14:
    0003ee14adrp x0, 0x68c000
    0003ee18add x0, x0, 3797
    0003ee1cmovz x1, 55
    0003ee20bl runtime.throw
    0003ee24hint
    0003ee28
    0003ee28loc_3ee28:
    0003ee28stp x0, x1, [sp+8]
    0003ee2cstrb w2, [sp+24]
    0003ee30mov x3, x30
    0003ee34bl runtime.morestack_noctxt.abi0
    0003ee38ldp x0, x1, [sp+8]
    0003ee3cldrb w2, [sp+24]
    0003ee40b 0x3ea80
    0003ee44udf 0
    0003ee48udf 0
    0003ee4cudf 0
    0003ea80
    0003ee50
    0003ee50runtime.(*mspan).init: ; void runtime.(*mspan).init(runtime.mspan * span, uintptr base, uintptr npages)
    0003ee50ldr x16, [x28+16]
    0003ee54subs xzr, sp, x16
    0003ee58b.ls 0x3eed0
    0003ee5cstr x30, [sp-32]!
    0003ee60stur x29, [sp-8]
    0003ee64sub x29, sp, 8
    0003ee68str x0, [sp+40]
    0003ee6cstp xzr, xzr, [x0]
    0003ee70str xzr, [x0+16]
    0003ee74str x1, [x0+24]
    0003ee78str x2, [x0+32]
    0003ee7cadd x2, x1, x2, lsl #13
    0003ee80str x2, [x0+112]
    0003ee84strh wzr, [x0+96]
    0003ee88strb wzr, [x0+98]
    0003ee8cstr xzr, [x0+104]
    0003ee90stp xzr, xzr, [x0+120]
    0003ee94strb wzr, [x0+100]
    0003ee98strh wzr, [x0+48]
    0003ee9cstrh wzr, [x0+52]
    0003eea0stp xzr, xzr, [x0+64]
    0003eea4str xzr, [x0+80]
    0003eea8add x0, x0, 99
    0003eeacmov x1, xzr
    0003eeb0bl runtime.(*mSpanStateBox).set
    0003eeb4ldr x2, [sp+40]
    0003eeb8add x0, x2, 120
    0003eebcmovz x1, 38
    0003eec0bl runtime.lockInit
    0003eec4ldur x29, [sp-8]
    0003eec8ldr x30, [sp], 32
    0003eeccret x30
    0003eed0
    0003eed0loc_3eed0:
    0003eed0stp x0, x1, [sp+8]
    0003eed4str x2, [sp+24]
    0003eed8mov x3, x30
    0003eedcbl runtime.morestack_noctxt.abi0
    0003eee0ldp x0, x1, [sp+8]
    0003eee4ldr x2, [sp+24]
    0003eee8b 0x3ee50
    0003eeecudf 0
    0003ee50
    0003eef0
    0003eef0runtime.(*mSpanList).init: ; void runtime.(*mSpanList).init(runtime.mSpanList * list)
    0003eef0stp xzr, xzr, [x0]
    0003eef4ret x30
    0003eef8udf 0
    0003eefcudf 0
    0003eef0
    0003ef00
    0003ef00runtime.(*mSpanList).remove: ; void runtime.(*mSpanList).remove(runtime.mSpanList * list, runtime.mspan * span)
    0003ef00ldr x16, [x28+16]
    0003ef04subs xzr, sp, x16
    0003ef08b.ls 0x3f034
    0003ef0cstr x30, [sp-64]!
    0003ef10stur x29, [sp-8]
    0003ef14sub x29, sp, 8
    0003ef18ldr x2, [x1+16]
    0003ef1csubs xzr, x0, x2
    0003ef20b.ne 0x3ef80
    0003ef24ldr x2, [x0]
    0003ef28subs xzr, x1, x2
    0003ef2cb.ne 0x3ef3c
    0003ef30ldr x2, [x1]
    0003ef34str x2, [x0]
    0003ef38b 0x3ef48
    0003ef3c
    0003ef3cloc_3ef3c:
    0003ef3cldr x2, [x1+8]
    0003ef40ldr x3, [x1]
    0003ef44str x3, [x2]
    0003ef48
    0003ef48loc_3ef48:
    0003ef48ldr x2, [x0+8]
    0003ef4csubs xzr, x1, x2
    0003ef50b.ne 0x3ef60
    0003ef54ldr x2, [x1+8]
    0003ef58str x2, [x0+8]
    0003ef5cb 0x3ef6c
    0003ef60
    0003ef60loc_3ef60:
    0003ef60ldr x0, [x1]
    0003ef64ldr x2, [x1+8]
    0003ef68str x2, [x0+8]
    0003ef6c
    0003ef6cloc_3ef6c:
    0003ef6cstp xzr, xzr, [x1]
    0003ef70str xzr, [x1+16]
    0003ef74ldur x29, [sp-8]
    0003ef78ldr x30, [sp], 64
    0003ef7cret x30
    0003ef80
    0003ef80loc_3ef80:
    0003ef80str x0, [sp+72]
    0003ef84str x1, [sp+80]
    0003ef88str x2, [sp+48]
    0003ef8cldr x0, [x1+32]
    0003ef90str x0, [sp+40]
    0003ef94ldr x0, [x1+8]
    0003ef98str x0, [sp+32]
    0003ef9cbl runtime.printlock
    0003efa0adrp x0, 0x688000
    0003efa4add x0, x0, 3186
    0003efa8movz x1, 45
    0003efacbl runtime.printstring
    0003efb0ldr x0, [sp+40]
    0003efb4bl runtime.printuint
    0003efb8adrp x0, 0x672000
    0003efbcadd x0, x0, 2443
    0003efc0orr x1, xzr, 6
    0003efc4bl runtime.printstring
    0003efc8ldr x0, [sp+80]
    0003efccbl runtime.printuintptr
    0003efd0adrp x0, 0x672000
    0003efd4add x0, x0, 2449
    0003efd8orr x1, xzr, 6
    0003efdcbl runtime.printstring
    0003efe0ldr x0, [sp+32]
    0003efe4bl runtime.printuintptr
    0003efe8adrp x0, 0x674000
    0003efecadd x0, x0, 2065
    0003eff0movz x1, 11
    0003eff4bl runtime.printstring
    0003eff8ldr x0, [sp+48]
    0003effcbl runtime.printuintptr
    0003f000adrp x0, 0x671000
    0003f004add x0, x0, 2455
    0003f008orr x1, xzr, 6
    0003f00cbl runtime.printstring
    0003f010ldr x0, [sp+72]
    0003f014bl runtime.printuintptr
    0003f018bl runtime.printnl
    0003f01cbl runtime.printunlock
    0003f020adrp x0, 0x675000
    0003f024add x0, x0, 2324
    0003f028orr x1, xzr, 16
    0003f02cbl runtime.throw
    0003f030hint
    0003f034
    0003f034loc_3f034:
    0003f034stp x0, x1, [sp+8]
    0003f038mov x3, x30
    0003f03cbl runtime.morestack_noctxt.abi0
    0003f040ldp x0, x1, [sp+8]
    0003f044b 0x3ef00
    0003f048udf 0
    0003f04cudf 0
    0003ef00
    0003f050
    0003f050runtime.(*mSpanList).isEmpty: ; void runtime.(*mSpanList).isEmpty(runtime.mSpanList * list)
    0003f050ldr x1, [x0]
    0003f054subs xzr, x1, 0
    0003f058cset x1, ne
    0003f05ceor x0, x1, 1
    0003f060ret x30
    0003f064udf 0
    0003f068udf 0
    0003f06cudf 0
    0003f050
    0003f070
    0003f070runtime.(*mSpanList).insert: ; void runtime.(*mSpanList).insert(runtime.mSpanList * list, runtime.mspan * span)
    0003f070ldr x16, [x28+16]
    0003f074subs xzr, sp, x16
    0003f078b.ls 0x3f144
    0003f07cstr x30, [sp-64]!
    0003f080stur x29, [sp-8]
    0003f084sub x29, sp, 8
    0003f088ldr x2, [x1]
    0003f08cstr x2, [sp+48]
    0003f090cbnz x2, 0x3f0d4
    0003f094ldr x3, [x1+8]
    0003f098cbnz x3, 0x3f0d4
    0003f09cldr x3, [x1+16]
    0003f0a0cbnz x3, 0x3f0d4
    0003f0a4ldr x2, [x0]
    0003f0a8str x2, [x1]
    0003f0acldr x2, [x0]
    0003f0b0cbz x2, 0x3f0bc
    0003f0b4str x1, [x2+8]
    0003f0b8b 0x3f0c0
    0003f0bc
    0003f0bcloc_3f0bc:
    0003f0bcstr x1, [x0+8]
    0003f0c0
    0003f0c0loc_3f0c0:
    0003f0c0str x1, [x0]
    0003f0c4str x0, [x1+16]
    0003f0c8ldur x29, [sp-8]
    0003f0ccldr x30, [sp], 64
    0003f0d0ret x30
    0003f0d4
    0003f0d4loc_3f0d4:
    0003f0d4str x1, [sp+80]
    0003f0d8ldr x0, [x1+8]
    0003f0dcstr x0, [sp+40]
    0003f0e0ldr x0, [x1+16]
    0003f0e4str x0, [sp+32]
    0003f0e8bl runtime.printlock
    0003f0ecadrp x0, 0x680000
    0003f0f0add x0, x0, 672
    0003f0f4movz x1, 33
    0003f0f8bl runtime.printstring
    0003f0fcldr x0, [sp+80]
    0003f100bl runtime.printuintptr
    0003f104bl runtime.printsp
    0003f108ldr x0, [sp+48]
    0003f10cbl runtime.printuintptr
    0003f110bl runtime.printsp
    0003f114ldr x0, [sp+40]
    0003f118bl runtime.printuintptr
    0003f11cbl runtime.printsp
    0003f120ldr x0, [sp+32]
    0003f124bl runtime.printuintptr
    0003f128bl runtime.printnl
    0003f12cbl runtime.printunlock
    0003f130adrp x0, 0x675000
    0003f134add x0, x0, 2340
    0003f138orr x1, xzr, 16
    0003f13cbl runtime.throw
    0003f140hint
    0003f144
    0003f144loc_3f144:
    0003f144stp x0, x1, [sp+8]
    0003f148mov x3, x30
    0003f14cbl runtime.morestack_noctxt.abi0
    0003f150ldp x0, x1, [sp+8]
    0003f154b 0x3f070
    0003f158udf 0
    0003f15cudf 0
    0003f070
    0003f160
    0003f160runtime.(*mSpanList).takeAll: ; void runtime.(*mSpanList).takeAll(runtime.mSpanList * list, runtime.mSpanList * other)
    0003f160ldr x16, [x28+16]
    0003f164subs xzr, sp, x16
    0003f168b.ls 0x3f210
    0003f16cstr x30, [sp-32]!
    0003f170stur x29, [sp-8]
    0003f174sub x29, sp, 8
    0003f178str x0, [sp+40]
    0003f17cstr x1, [sp+48]
    0003f180mov x0, x1
    0003f184bl runtime.(*mSpanList).isEmpty
    0003f188tbnz w0, 0, 0x3f19c
    0003f18cldr x1, [sp+48]
    0003f190ldr x2, [x1]
    0003f194ldr x0, [sp+40]
    0003f198b 0x3f1b0
    0003f19c
    0003f19cloc_3f19c:
    0003f19cldur x29, [sp-8]
    0003f1a0ldr x30, [sp], 32
    0003f1a4ret x30
    0003f1a8
    0003f1a8loc_3f1a8:
    0003f1a8str x0, [x2+16]
    0003f1acldr x2, [x2]
    0003f1b0
    0003f1b0loc_3f1b0:
    0003f1b0cbnz x2, 0x3f1a8
    0003f1b4bl runtime.(*mSpanList).isEmpty
    0003f1b8tbz w0, 0, 0x3f1d8
    0003f1bcldr x0, [sp+48]
    0003f1c0ldr x1, [x0+8]
    0003f1c4ldr x2, [x0]
    0003f1c8ldr x3, [sp+40]
    0003f1ccstr x2, [x3]
    0003f1d0str x1, [x3+8]
    0003f1d4b 0x3f200
    0003f1d8
    0003f1d8loc_3f1d8:
    0003f1d8ldr x0, [sp+48]
    0003f1dcldr x1, [x0+8]
    0003f1e0ldr x2, [sp+40]
    0003f1e4ldr x3, [x2]
    0003f1e8str x3, [x1]
    0003f1ecldr x1, [x2]
    0003f1f0ldr x3, [x0+8]
    0003f1f4str x3, [x1+8]
    0003f1f8ldr x1, [x0]
    0003f1fcstr x1, [x2]
    0003f200
    0003f200loc_3f200:
    0003f200stp xzr, xzr, [x0]
    0003f204ldur x29, [sp-8]
    0003f208ldr x30, [sp], 32
    0003f20cret x30
    0003f210
    0003f210loc_3f210:
    0003f210stp x0, x1, [sp+8]
    0003f214mov x3, x30
    0003f218bl runtime.morestack_noctxt.abi0
    0003f21cldp x0, x1, [sp+8]
    0003f220b 0x3f160
    0003f224udf 0
    0003f228udf 0
    0003f22cudf 0
    0003f160
    0003f230
    0003f230runtime.spanHasSpecials: ; void runtime.spanHasSpecials(runtime.mspan * s)
    0003f230ldr x16, [x28+16]
    0003f234subs xzr, sp, x16
    0003f238b.ls 0x3f31c
    0003f23cstr x30, [sp-64]!
    0003f240stur x29, [sp-8]
    0003f244sub x29, sp, 8
    0003f248str x0, [sp+72]
    0003f24cbl runtime.(*mspan).base
    0003f250str x0, [sp+40]
    0003f254ldr x0, [sp+72]
    0003f258bl runtime.(*mspan).base
    0003f25cbl runtime.arenaIndex
    0003f260str x0, [sp+32]
    0003f264bl runtime.arenaIdx.l1
    0003f268str x0, [sp+48]
    0003f26cldr x0, [sp+32]
    0003f270bl runtime.arenaIdx.l2
    0003f274ldr x1, [sp+48]
    0003f278subs xzr, x1, 1
    0003f27cb.hs 0x3f30c
    0003f280subs xzr, x0, 0x400000
    0003f284b.hs 0x3f304
    0003f288adrp x27, 0xa03000
    0003f28cldr x2, [x27+2648]
    0003f290ldrsb x27, [x2]
    0003f294ldr x2, [x2+3*x0]
    0003f298ldrsb x27, [x2]
    0003f29cldr x3, [sp+40]
    0003f2a0ubfm x0, x3, 16, 25
    0003f2a4movz x4, 2048
    0003f2a8movk x4, 0x10000
    0003f2acadd x2, x2, x4
    0003f2b0subs xzr, x0, 1024
    0003f2b4b.hs 0x3f2fc
    0003f2b8ubfm x0, x3, 13, 25
    0003f2bcubfm x1, x3, 13, 15
    0003f2c0add x0, x2, x0, lsr #3
    0003f2c4orr x2, xzr, 1
    0003f2c8lslv x1, x2, x1
    0003f2ccadrp x27, 0xa0c000
    0003f2d0ldrb w2, [x27+1516]
    0003f2d4tbz w2, 0, 0x3f2e0
    0003f2d8ldsetalb w1, w2, [x0]
    0003f2dcb 0x3f2f0
    0003f2e0
    0003f2e0loc_3f2e0:
    0003f2e0ldaxrb w3, [x0]
    0003f2e4orr x2, x3, x1
    0003f2e8stlxrb w27, w2, [x0]
    0003f2eccbnz x27, 0x3f2e0
    0003f2f0
    0003f2f0loc_3f2f0:
    0003f2f0ldur x29, [sp-8]
    0003f2f4ldr x30, [sp], 64
    0003f2f8ret x30
    0003f2fc
    0003f2fcloc_3f2fc:
    0003f2fcorr x1, xzr, 1024
    0003f300bl runtime.panicIndexU
    0003f304
    0003f304loc_3f304:
    0003f304orr x1, xzr, 0x400000
    0003f308bl runtime.panicIndexU
    0003f30c
    0003f30cloc_3f30c:
    0003f30cmov x0, x1
    0003f310orr x1, xzr, 1
    0003f314bl runtime.panicIndexU
    0003f318hint
    0003f31c
    0003f31cloc_3f31c:
    0003f31cstr x0, [sp+8]
    0003f320mov x3, x30
    0003f324bl runtime.morestack_noctxt.abi0
    0003f328ldr x0, [sp+8]
    0003f32cb 0x3f230
    0003f230
    0003f330
    0003f330runtime.spanHasNoSpecials: ; void runtime.spanHasNoSpecials(runtime.mspan * s)
    0003f330ldr x16, [x28+16]
    0003f334subs xzr, sp, x16
    0003f338b.ls 0x3f424
    0003f33cstr x30, [sp-64]!
    0003f340stur x29, [sp-8]
    0003f344sub x29, sp, 8
    0003f348str x0, [sp+72]
    0003f34cbl runtime.(*mspan).base
    0003f350str x0, [sp+40]
    0003f354ldr x0, [sp+72]
    0003f358bl runtime.(*mspan).base
    0003f35cbl runtime.arenaIndex
    0003f360str x0, [sp+32]
    0003f364bl runtime.arenaIdx.l1
    0003f368str x0, [sp+48]
    0003f36cldr x0, [sp+32]
    0003f370bl runtime.arenaIdx.l2
    0003f374ldr x1, [sp+48]
    0003f378subs xzr, x1, 1
    0003f37cb.hs 0x3f414
    0003f380subs xzr, x0, 0x400000
    0003f384b.hs 0x3f40c
    0003f388adrp x27, 0xa03000
    0003f38cldr x2, [x27+2648]
    0003f390ldrsb x27, [x2]
    0003f394ldr x2, [x2+3*x0]
    0003f398ldrsb x27, [x2]
    0003f39cldr x3, [sp+40]
    0003f3a0ubfm x0, x3, 16, 25
    0003f3a4movz x4, 2048
    0003f3a8movk x4, 0x10000
    0003f3acadd x2, x2, x4
    0003f3b0subs xzr, x0, 1024
    0003f3b4b.hs 0x3f404
    0003f3b8ubfm x0, x3, 13, 25
    0003f3bcubfm x1, x3, 13, 15
    0003f3c0orr x3, xzr, 1
    0003f3c4lslv x1, x3, x1
    0003f3c8add x0, x2, x0, lsr #3
    0003f3ccorn x1, xzr, x1
    0003f3d0adrp x27, 0xa0c000
    0003f3d4ldrb w2, [x27+1516]
    0003f3d8tbz w2, 0, 0x3f3e8
    0003f3dcorn x27, xzr, x1
    0003f3e0ldclralb w27, w2, [x0]
    0003f3e4b 0x3f3f8
    0003f3e8
    0003f3e8loc_3f3e8:
    0003f3e8ldaxrb w3, [x0]
    0003f3ecand x2, x3, x1
    0003f3f0stlxrb w27, w2, [x0]
    0003f3f4cbnz x27, 0x3f3e8
    0003f3f8
    0003f3f8loc_3f3f8:
    0003f3f8ldur x29, [sp-8]
    0003f3fcldr x30, [sp], 64
    0003f400ret x30
    0003f404
    0003f404loc_3f404:
    0003f404orr x1, xzr, 1024
    0003f408bl runtime.panicIndexU
    0003f40c
    0003f40cloc_3f40c:
    0003f40corr x1, xzr, 0x400000
    0003f410bl runtime.panicIndexU
    0003f414
    0003f414loc_3f414:
    0003f414mov x0, x1
    0003f418orr x1, xzr, 1
    0003f41cbl runtime.panicIndexU
    0003f420hint
    0003f424
    0003f424loc_3f424:
    0003f424str x0, [sp+8]
    0003f428mov x3, x30
    0003f42cbl runtime.morestack_noctxt.abi0
    0003f430ldr x0, [sp+8]
    0003f434b 0x3f330
    0003f438udf 0
    0003f43cudf 0
    0003f330
    0003f440
    0003f440runtime.addspecial: ; void runtime.addspecial(void * p, runtime.special * s, bool force)
    0003f440ldr x16, [x28+16]
    0003f444subs xzr, sp, x16
    0003f448b.ls 0x3f53c
    0003f44cstr x30, [sp-80]!
    0003f450stur x29, [sp-8]
    0003f454sub x29, sp, 8
    0003f458str x0, [sp+88]
    0003f45cstr x1, [sp+96]
    0003f460strb w2, [sp+104]
    0003f464mov x1, x0
    0003f468mov x0, x1
    0003f46cbl runtime.spanOfHeap
    0003f470cbz x0, 0x3f528
    0003f474str x0, [sp+40]
    0003f478bl runtime.acquirem
    0003f47cstr x0, [sp+56]
    0003f480ldr x0, [sp+40]
    0003f484bl runtime.(*mspan).ensureSwept
    0003f488ldr x0, [sp+40]
    0003f48cbl runtime.(*mspan).base
    0003f490ldr x1, [sp+88]
    0003f494sub x0, x1, x0
    0003f498str x0, [sp+48]
    0003f49cldr x0, [sp+96]
    0003f4a0ldrb w0, [x0+16]
    0003f4a4strb w0, [sp+38]
    0003f4a8ldr x0, [sp+40]
    0003f4acadd x0, x0, 120
    0003f4b0str x0, [sp+64]
    0003f4b4bl runtime.lock
    0003f4b8ldr x0, [sp+40]
    0003f4bcldr x1, [sp+48]
    0003f4c0ldrb w2, [sp+38]
    0003f4c4bl runtime.(*mspan).specialFindSplicePoint
    0003f4c8strb w1, [sp+39]
    0003f4cctbz w1, 0, 0x3f4d8
    0003f4d0ldrb w2, [sp+104]
    0003f4d4tbz w2, 0, 0x3f4f8
    0003f4d8
    0003f4d8loc_3f4d8:
    0003f4d8ldr x1, [sp+48]
    0003f4dcldr x2, [sp+96]
    0003f4e0str x1, [x2+8]
    0003f4e4ldr x1, [x0]
    0003f4e8str x1, [x2]
    0003f4ecstr x2, [x0]
    0003f4f0ldr x0, [sp+40]
    0003f4f4bl runtime.spanHasSpecials
    0003f4f8
    0003f4f8loc_3f4f8:
    0003f4f8ldr x0, [sp+64]
    0003f4fcbl runtime.unlock
    0003f500ldr x0, [sp+56]
    0003f504bl runtime.releasem
    0003f508ldrb w0, [sp+39]
    0003f50ctbz w0, 0, 0x3f518
    0003f510ldrb w0, [sp+104]
    0003f514b 0x3f51c
    0003f518
    0003f518loc_3f518:
    0003f518orr x0, xzr, 1
    0003f51c
    0003f51cloc_3f51c:
    0003f51cldur x29, [sp-8]
    0003f520ldr x30, [sp], 80
    0003f524ret x30
    0003f528
    0003f528loc_3f528:
    0003f528adrp x0, 0x67d000
    0003f52cadd x0, x0, 888
    0003f530movz x1, 29
    0003f534bl runtime.throw
    0003f538hint
    0003f53c
    0003f53cloc_3f53c:
    0003f53cstp x0, x1, [sp+8]
    0003f540strb w2, [sp+24]
    0003f544mov x3, x30
    0003f548bl runtime.morestack_noctxt.abi0
    0003f54cldp x0, x1, [sp+8]
    0003f550ldrb w2, [sp+24]
    0003f554b 0x3f440
    0003f558udf 0
    0003f55cudf 0
    0003f440
    0003f560
    0003f560runtime.removespecial: ; void runtime.removespecial(void * p, uint8 kind)
    0003f560ldr x16, [x28+16]
    0003f564subs xzr, sp, x16
    0003f568b.ls 0x3f638
    0003f56cstr x30, [sp-80]!
    0003f570stur x29, [sp-8]
    0003f574sub x29, sp, 8
    0003f578str x0, [sp+88]
    0003f57cstrb w1, [sp+96]
    0003f580mov x1, x0
    0003f584mov x0, x1
    0003f588bl runtime.spanOfHeap
    0003f58ccbz x0, 0x3f624
    0003f590str x0, [sp+32]
    0003f594bl runtime.acquirem
    0003f598str x0, [sp+56]
    0003f59cldr x0, [sp+32]
    0003f5a0bl runtime.(*mspan).ensureSwept
    0003f5a4ldr x0, [sp+32]
    0003f5a8bl runtime.(*mspan).base
    0003f5acldr x1, [sp+88]
    0003f5b0sub x0, x1, x0
    0003f5b4str x0, [sp+48]
    0003f5b8ldr x0, [sp+32]
    0003f5bcadd x0, x0, 120
    0003f5c0str x0, [sp+64]
    0003f5c4bl runtime.lock
    0003f5c8ldr x0, [sp+32]
    0003f5ccldr x1, [sp+48]
    0003f5d0ldrb w2, [sp+96]
    0003f5d4bl runtime.(*mspan).specialFindSplicePoint
    0003f5d8tbz w1, 0, 0x3f5ec
    0003f5dcldr x1, [x0]
    0003f5e0ldr x2, [x1]
    0003f5e4str x2, [x0]
    0003f5e8b 0x3f5f0
    0003f5ec
    0003f5ecloc_3f5ec:
    0003f5ecmov x1, xzr
    0003f5f0
    0003f5f0loc_3f5f0:
    0003f5f0str x1, [sp+40]
    0003f5f4ldr x0, [sp+32]
    0003f5f8ldr x2, [x0+128]
    0003f5fccbnz x2, 0x3f604
    0003f600bl runtime.spanHasNoSpecials
    0003f604
    0003f604loc_3f604:
    0003f604ldr x0, [sp+64]
    0003f608bl runtime.unlock
    0003f60cldr x0, [sp+56]
    0003f610bl runtime.releasem
    0003f614ldr x0, [sp+40]
    0003f618ldur x29, [sp-8]
    0003f61cldr x30, [sp], 80
    0003f620ret x30
    0003f624
    0003f624loc_3f624:
    0003f624adrp x0, 0x67f000
    0003f628add x0, x0, 1296
    0003f62corr x1, xzr, 32
    0003f630bl runtime.throw
    0003f634hint
    0003f638
    0003f638loc_3f638:
    0003f638str x0, [sp+8]
    0003f63cstrb w1, [sp+16]
    0003f640mov x3, x30
    0003f644bl runtime.morestack_noctxt.abi0
    0003f648ldr x0, [sp+8]
    0003f64cldrb w1, [sp+16]
    0003f650b 0x3f560
    0003f654udf 0
    0003f658udf 0
    0003f65cudf 0
    0003f560
    0003f660
    0003f660runtime.(*mspan).specialFindSplicePoint: ; void runtime.(*mspan).specialFindSplicePoint(runtime.mspan * span, uintptr offset, uint8 kind)
    0003f660ldrsb x27, [x0]
    0003f664add x3, x0, 128
    0003f668b 0x3f670
    0003f66c
    0003f66cloc_3f66c:
    0003f66cmov x3, x4
    0003f670
    0003f670loc_3f670:
    0003f670ldr x4, [x3]
    0003f674cbz x4, 0x3f6c4
    0003f678ldr x5, [x4+8]
    0003f67csubs xzr, x1, x5
    0003f680b.ne 0x3f698
    0003f684ubfm x6, x2, 0, 7
    0003f688ldrb w7, [x4+16]
    0003f68csubs wzr, w6, w7
    0003f690b.eq 0x3f6b4
    0003f694subs xzr, x1, x5
    0003f698
    0003f698loc_3f698:
    0003f698b.lo 0x3f6bc
    0003f69cb.ne 0x3f66c
    0003f6a0ubfm x5, x2, 0, 7
    0003f6a4ldrb w6, [x4+16]
    0003f6a8subs wzr, w6, w5
    0003f6acb.ls 0x3f66c
    0003f6b0b 0x3f6bc
    0003f6b4
    0003f6b4loc_3f6b4:
    0003f6b4orr x0, xzr, 1
    0003f6b8b 0x3f6c8
    0003f6bc
    0003f6bcloc_3f6bc:
    0003f6bcmov x0, xzr
    0003f6c0b 0x3f6c8
    0003f6c4
    0003f6c4loc_3f6c4:
    0003f6c4mov x0, xzr
    0003f6c8
    0003f6c8loc_3f6c8:
    0003f6c8mov x1, x0
    0003f6ccmov x0, x3
    0003f6d0ret x30
    0003f6d4udf 0
    0003f6d8udf 0
    0003f6dcudf 0
    0003f660
    0003f6e0
    0003f6e0runtime.addfinalizer: ; void runtime.addfinalizer(void * p, runtime.funcval * f, uintptr nret, internal/abi.Type * fint, internal/abi.PtrType * ot)
    0003f6e0ldr x16, [x28+16]
    0003f6e4subs xzr, sp, x16
    0003f6e8b.ls 0x3f88c
    0003f6ecstr x30, [sp-96]!
    0003f6f0stur x29, [sp-8]
    0003f6f4sub x29, sp, 8
    0003f6f8str x0, [sp+104]
    0003f6fcstr x1, [sp+112]
    0003f700str x2, [sp+120]
    0003f704str x3, [sp+128]
    0003f708str x4, [sp+136]
    0003f70cadrp x0, 0xa0c000
    0003f710add x0, x0, 1352
    0003f714bl runtime.lock
    0003f718adrp x0, 0xa0c000
    0003f71cadd x0, x0, 920
    0003f720bl runtime.(*fixalloc).alloc
    0003f724str x0, [sp+80]
    0003f728adrp x0, 0xa0c000
    0003f72cadd x0, x0, 1352
    0003f730bl runtime.unlock
    0003f734orr x1, xzr, 1
    0003f738ldr x2, [sp+80]
    0003f73cstrb w1, [x2+16]
    0003f740adrp x27, 0xa0c000
    0003f744ldr w1, [x27+3056]
    0003f748cbnz w1, 0x3f75c
    0003f74cldr x3, [sp+112]
    0003f750ldr x4, [sp+128]
    0003f754ldr x5, [sp+136]
    0003f758b 0x3f790
    0003f75c
    0003f75cloc_3f75c:
    0003f75cbl runtime.gcWriteBarrier6
    0003f760ldr x3, [sp+112]
    0003f764str x3, [x25]
    0003f768ldr x4, [x2+24]
    0003f76cstr x4, [x25+8]
    0003f770ldr x4, [sp+128]
    0003f774str x4, [x25+16]
    0003f778ldr x5, [x2+40]
    0003f77cstr x5, [x25+24]
    0003f780ldr x5, [sp+136]
    0003f784str x5, [x25+32]
    0003f788ldr x6, [x2+48]
    0003f78cstr x6, [x25+40]
    0003f790
    0003f790loc_3f790:
    0003f790str x3, [x2+24]
    0003f794ldr x3, [sp+120]
    0003f798str x3, [x2+32]
    0003f79cstr x4, [x2+40]
    0003f7a0str x5, [x2+48]
    0003f7a4ldr x0, [sp+104]
    0003f7a8mov x1, x2
    0003f7acmov x2, xzr
    0003f7b0bl runtime.addspecial
    0003f7b4tbz w0, 0, 0x3f854
    0003f7b8adrp x27, 0xa0c000
    0003f7bcldr w3, [x27+1600]
    0003f7c0cbz w3, 0x3f844
    0003f7c4ldr x0, [sp+104]
    0003f7c8mov x1, xzr
    0003f7ccmov x2, x1
    0003f7d0bl runtime.findObject
    0003f7d4str x1, [sp+48]
    0003f7d8str x0, [sp+56]
    0003f7dcbl runtime.acquirem
    0003f7e0str x0, [sp+64]
    0003f7e4ldr x0, [x0+208]
    0003f7e8bl runtime.puintptr.ptr
    0003f7ecldrsb x27, [x0]
    0003f7f0ldr x3, [sp+48]
    0003f7f4ldrb w3, [x3+98]
    0003f7f8movz x4, 4680
    0003f7fcadd x4, x0, x4
    0003f800str x4, [sp+72]
    0003f804mov x0, x3
    0003f808bl runtime.spanClass.noscan
    0003f80ctbnz w0, 0, 0x3f81c
    0003f810ldr x0, [sp+56]
    0003f814ldr x1, [sp+72]
    0003f818bl runtime.scanobject
    0003f81c
    0003f81cloc_3f81c:
    0003f81cldr x5, [sp+80]
    0003f820add x0, x5, 24
    0003f824orr x1, xzr, 8
    0003f828adrp x2, 0x981000
    0003f82cadd x2, x2, 1377
    0003f830ldr x3, [sp+72]
    0003f834mov x4, xzr
    0003f838bl runtime.scanblock
    0003f83cldr x0, [sp+64]
    0003f840bl runtime.releasem
    0003f844
    0003f844loc_3f844:
    0003f844orr x0, xzr, 1
    0003f848ldur x29, [sp-8]
    0003f84cldr x30, [sp], 96
    0003f850ret x30
    0003f854
    0003f854loc_3f854:
    0003f854adrp x0, 0xa0c000
    0003f858add x0, x0, 1352
    0003f85cbl runtime.lock
    0003f860adrp x0, 0xa0c000
    0003f864add x0, x0, 920
    0003f868ldr x1, [sp+80]
    0003f86cbl runtime.(*fixalloc).free
    0003f870adrp x0, 0xa0c000
    0003f874add x0, x0, 1352
    0003f878bl runtime.unlock
    0003f87cmov x0, xzr
    0003f880ldur x29, [sp-8]
    0003f884ldr x30, [sp], 96
    0003f888ret x30
    0003f88c
    0003f88cloc_3f88c:
    0003f88cstp x0, x1, [sp+8]
    0003f890stp x2, x3, [sp+24]
    0003f894str x4, [sp+40]
    0003f898mov x3, x30
    0003f89cbl runtime.morestack_noctxt.abi0
    0003f8a0ldp x0, x1, [sp+8]
    0003f8a4ldp x2, x3, [sp+24]
    0003f8a8ldr x4, [sp+40]
    0003f8acb 0x3f6e0
    0003f6e0
    0003f8b0
    0003f8b0runtime.removefinalizer: ; void runtime.removefinalizer(void * p)
    0003f8b0ldr x16, [x28+16]
    0003f8b4subs xzr, sp, x16
    0003f8b8b.ls 0x3f918
    0003f8bcstr x30, [sp-48]!
    0003f8c0stur x29, [sp-8]
    0003f8c4sub x29, sp, 8
    0003f8c8orr x1, xzr, 1
    0003f8ccbl runtime.removespecial
    0003f8d0cbz x0, 0x3f90c
    0003f8d4str x0, [sp+32]
    0003f8d8adrp x0, 0xa0c000
    0003f8dcadd x0, x0, 1352
    0003f8e0bl runtime.lock
    0003f8e4adrp x0, 0xa0c000
    0003f8e8add x0, x0, 920
    0003f8ecldr x1, [sp+32]
    0003f8f0bl runtime.(*fixalloc).free
    0003f8f4adrp x0, 0xa0c000
    0003f8f8add x0, x0, 1352
    0003f8fcbl runtime.unlock
    0003f900ldur x29, [sp-8]
    0003f904ldr x30, [sp], 48
    0003f908ret x30
    0003f90c
    0003f90cloc_3f90c:
    0003f90cldur x29, [sp-8]
    0003f910ldr x30, [sp], 48
    0003f914ret x30
    0003f918
    0003f918loc_3f918:
    0003f918str x0, [sp+8]
    0003f91cmov x3, x30
    0003f920bl runtime.morestack_noctxt.abi0
    0003f924ldr x0, [sp+8]
    0003f928b 0x3f8b0
    0003f92cudf 0
    0003f8b0
    0003f930
    0003f930runtime.gcParkStrongFromWeak: ; void runtime.gcParkStrongFromWeak(void)
    0003f930ldr x16, [x28+16]
    0003f934subs xzr, sp, x16
    0003f938b.ls 0x3f9ac
    0003f93cstr x30, [sp-48]!
    0003f940stur x29, [sp-8]
    0003f944sub x29, sp, 8
    0003f948bl runtime.acquirem
    0003f94cb 0x3f994
    0003f950
    0003f950loc_3f950:
    0003f950str x0, [sp+32]
    0003f954adrp x0, 0x9e5000
    0003f958add x0, x0, 3184
    0003f95cbl runtime.lock
    0003f960ldr x0, [sp+32]
    0003f964bl runtime.releasem
    0003f968adrp x0, 0x9e5000
    0003f96cadd x0, x0, 3192
    0003f970mov x1, x28
    0003f974bl runtime.(*gQueue).pushBack
    0003f978adrp x0, 0x9e5000
    0003f97cadd x0, x0, 3184
    0003f980movz x1, 38
    0003f984orr x2, xzr, 15
    0003f988orr x3, xzr, 2
    0003f98cbl runtime.goparkunlock
    0003f990bl runtime.acquirem
    0003f994
    0003f994loc_3f994:
    0003f994adrp x27, 0x9e5000
    0003f998ldrb w1, [x27+3176]
    0003f99ctbnz w1, 0, 0x3f950
    0003f9a0ldur x29, [sp-8]
    0003f9a4ldr x30, [sp], 48
    0003f9a8ret x30
    0003f9ac
    0003f9acloc_3f9ac:
    0003f9acmov x3, x30
    0003f9b0bl runtime.morestack_noctxt.abi0
    0003f9b4b 0x3f930
    0003f9b8udf 0
    0003f9bcudf 0
    0003f930
    0003f9c0
    0003f9c0runtime.gcWakeAllStrongFromWeak: ; void runtime.gcWakeAllStrongFromWeak(void)
    0003f9c0ldr x16, [x28+16]
    0003f9c4subs xzr, sp, x16
    0003f9c8b.ls 0x3fa14
    0003f9ccstr x30, [sp-32]!
    0003f9d0stur x29, [sp-8]
    0003f9d4sub x29, sp, 8
    0003f9d8adrp x0, 0x9e5000
    0003f9dcadd x0, x0, 3184
    0003f9e0bl runtime.lock
    0003f9e4adrp x0, 0x9e5000
    0003f9e8add x0, x0, 3192
    0003f9ecbl runtime.(*gQueue).popList
    0003f9f0str x0, [sp+16]
    0003f9f4add x0, sp, 16
    0003f9f8bl runtime.injectglist
    0003f9fcadrp x0, 0x9e5000
    0003fa00add x0, x0, 3184
    0003fa04bl runtime.unlock
    0003fa08ldur x29, [sp-8]
    0003fa0cldr x30, [sp], 32
    0003fa10ret x30
    0003fa14
    0003fa14loc_3fa14:
    0003fa14mov x3, x30
    0003fa18bl runtime.morestack_noctxt.abi0
    0003fa1cb 0x3f9c0
    0003f9c0
    0003fa20
    0003fa20runtime.getOrAddWeakHandle: ; void runtime.getOrAddWeakHandle(void * p)
    0003fa20ldr x16, [x28+16]
    0003fa24subs xzr, sp, x16
    0003fa28b.ls 0x3fb88
    0003fa2cstr x30, [sp-80]!
    0003fa30stur x29, [sp-8]
    0003fa34sub x29, sp, 8
    0003fa38str x0, [sp+88]
    0003fa3cbl runtime.getWeakHandle
    0003fa40cbnz x0, 0x3fb68
    0003fa44adrp x0, 0xa0c000
    0003fa48add x0, x0, 1352
    0003fa4cbl runtime.lock
    0003fa50adrp x0, 0xa0c000
    0003fa54add x0, x0, 1280
    0003fa58bl runtime.(*fixalloc).alloc
    0003fa5cstr x0, [sp+64]
    0003fa60adrp x0, 0xa0c000
    0003fa64add x0, x0, 1352
    0003fa68bl runtime.unlock
    0003fa6cadrp x0, 0x602000
    0003fa70add x0, x0, 2848
    0003fa74bl runtime.newobject
    0003fa78orr x1, xzr, 2
    0003fa7cldr x2, [sp+64]
    0003fa80strb w1, [x2+16]
    0003fa84adrp x27, 0xa0c000
    0003fa88ldr w1, [x27+3056]
    0003fa8ccbz w1, 0x3faa0
    0003fa90bl runtime.gcWriteBarrier2
    0003fa94str x0, [x25]
    0003fa98ldr x3, [x2+24]
    0003fa9cstr x3, [x25+8]
    0003faa0
    0003faa0loc_3faa0:
    0003faa0str x0, [sp+56]
    0003faa4str x0, [x2+24]
    0003faa8ldr x1, [sp+88]
    0003faacmov x2, x1
    0003fab0mov x1, x2
    0003fab4bl internal/runtime/atomic.(*Uintptr).Store
    0003fab8ldr x0, [sp+88]
    0003fabcldr x1, [sp+64]
    0003fac0mov x2, xzr
    0003fac4bl runtime.addspecial
    0003fac8tbz w0, 0, 0x3fb28
    0003faccadrp x27, 0xa0c000
    0003fad0ldr w1, [x27+1600]
    0003fad4cbz w1, 0x3fb18
    0003fad8bl runtime.acquirem
    0003fadcstr x0, [sp+48]
    0003fae0ldr x0, [x0+208]
    0003fae4bl runtime.puintptr.ptr
    0003fae8ldrsb x27, [x0]
    0003faecmovz x1, 4680
    0003faf0add x3, x0, x1
    0003faf4ldr x0, [sp+64]
    0003faf8add x0, x0, 24
    0003fafcorr x1, xzr, 8
    0003fb00adrp x2, 0x981000
    0003fb04add x2, x2, 1377
    0003fb08mov x4, xzr
    0003fb0cbl runtime.scanblock
    0003fb10ldr x0, [sp+48]
    0003fb14bl runtime.releasem
    0003fb18
    0003fb18loc_3fb18:
    0003fb18ldr x0, [sp+56]
    0003fb1cldur x29, [sp-8]
    0003fb20ldr x30, [sp], 80
    0003fb24ret x30
    0003fb28
    0003fb28loc_3fb28:
    0003fb28adrp x0, 0xa0c000
    0003fb2cadd x0, x0, 1352
    0003fb30bl runtime.lock
    0003fb34adrp x0, 0xa0c000
    0003fb38add x0, x0, 1280
    0003fb3cldr x1, [sp+64]
    0003fb40bl runtime.(*fixalloc).free
    0003fb44adrp x0, 0xa0c000
    0003fb48add x0, x0, 1352
    0003fb4cbl runtime.unlock
    0003fb50ldr x0, [sp+88]
    0003fb54bl runtime.getWeakHandle
    0003fb58cbz x0, 0x3fb74
    0003fb5cldur x29, [sp-8]
    0003fb60ldr x30, [sp], 80
    0003fb64ret x30
    0003fb68
    0003fb68loc_3fb68:
    0003fb68ldur x29, [sp-8]
    0003fb6cldr x30, [sp], 80
    0003fb70ret x30
    0003fb74
    0003fb74loc_3fb74:
    0003fb74adrp x0, 0x681000
    0003fb78add x0, x0, 2246
    0003fb7cmovz x1, 35
    0003fb80bl runtime.throw
    0003fb84hint
    0003fb88
    0003fb88loc_3fb88:
    0003fb88str x0, [sp+8]
    0003fb8cmov x3, x30
    0003fb90bl runtime.morestack_noctxt.abi0
    0003fb94ldr x0, [sp+8]
    0003fb98b 0x3fa20
    0003fb9cudf 0
    0003fa20
    0003fba0
    0003fba0runtime.getWeakHandle: ; void runtime.getWeakHandle(void * p)
    0003fba0ldr x16, [x28+16]
    0003fba4subs xzr, sp, x16
    0003fba8b.ls 0x3fc60
    0003fbacstr x30, [sp-80]!
    0003fbb0stur x29, [sp-8]
    0003fbb4sub x29, sp, 8
    0003fbb8str x0, [sp+88]
    0003fbbcmov x1, x0
    0003fbc0mov x0, x1
    0003fbc4bl runtime.spanOfHeap
    0003fbc8cbz x0, 0x3fc4c
    0003fbccstr x0, [sp+32]
    0003fbd0bl runtime.acquirem
    0003fbd4str x0, [sp+48]
    0003fbd8ldr x0, [sp+32]
    0003fbdcbl runtime.(*mspan).ensureSwept
    0003fbe0ldr x0, [sp+32]
    0003fbe4bl runtime.(*mspan).base
    0003fbe8ldr x1, [sp+88]
    0003fbecsub x0, x1, x0
    0003fbf0str x0, [sp+40]
    0003fbf4ldr x0, [sp+32]
    0003fbf8add x0, x0, 120
    0003fbfcstr x0, [sp+64]
    0003fc00bl runtime.lock
    0003fc04ldr x0, [sp+32]
    0003fc08ldr x1, [sp+40]
    0003fc0corr x2, xzr, 2
    0003fc10bl runtime.(*mspan).specialFindSplicePoint
    0003fc14tbz w1, 0, 0x3fc24
    0003fc18ldr x1, [x0]
    0003fc1cldr x1, [x1+24]
    0003fc20b 0x3fc28
    0003fc24
    0003fc24loc_3fc24:
    0003fc24mov x1, xzr
    0003fc28
    0003fc28loc_3fc28:
    0003fc28str x1, [sp+56]
    0003fc2cldr x0, [sp+64]
    0003fc30bl runtime.unlock
    0003fc34ldr x0, [sp+48]
    0003fc38bl runtime.releasem
    0003fc3cldr x0, [sp+56]
    0003fc40ldur x29, [sp-8]
    0003fc44ldr x30, [sp], 80
    0003fc48ret x30
    0003fc4c
    0003fc4cloc_3fc4c:
    0003fc4cadrp x0, 0x67f000
    0003fc50add x0, x0, 1328
    0003fc54orr x1, xzr, 32
    0003fc58bl runtime.throw
    0003fc5chint
    0003fc60
    0003fc60loc_3fc60:
    0003fc60str x0, [sp+8]
    0003fc64mov x3, x30
    0003fc68bl runtime.morestack_noctxt.abi0
    0003fc6cldr x0, [sp+8]
    0003fc70b 0x3fba0
    0003fc74udf 0
    0003fc78udf 0
    0003fc7cudf 0
    0003fba0
    0003fc80
    0003fc80runtime.setprofilebucket: ; void runtime.setprofilebucket(void * p, runtime.bucket * b)
    0003fc80ldr x16, [x28+16]
    0003fc84subs xzr, sp, x16
    0003fc88b.ls 0x3fd10
    0003fc8cstr x30, [sp-48]!
    0003fc90stur x29, [sp-8]
    0003fc94sub x29, sp, 8
    0003fc98str x0, [sp+56]
    0003fc9cstr x1, [sp+64]
    0003fca0adrp x0, 0xa0c000
    0003fca4add x0, x0, 1352
    0003fca8bl runtime.lock
    0003fcacadrp x0, 0xa0c000
    0003fcb0add x0, x0, 1064
    0003fcb4bl runtime.(*fixalloc).alloc
    0003fcb8str x0, [sp+32]
    0003fcbcadrp x0, 0xa0c000
    0003fcc0add x0, x0, 1352
    0003fcc4bl runtime.unlock
    0003fcc8orr x1, xzr, 3
    0003fcccldr x2, [sp+32]
    0003fcd0strb w1, [x2+16]
    0003fcd4ldr x1, [sp+64]
    0003fcd8str x1, [x2+24]
    0003fcdcldr x0, [sp+56]
    0003fce0mov x1, x2
    0003fce4mov x2, xzr
    0003fce8bl runtime.addspecial
    0003fcectbz w0, 0, 0x3fcfc
    0003fcf0ldur x29, [sp-8]
    0003fcf4ldr x30, [sp], 48
    0003fcf8ret x30
    0003fcfc
    0003fcfcloc_3fcfc:
    0003fcfcadrp x0, 0x682000
    0003fd00add x0, x0, 4084
    0003fd04movz x1, 37
    0003fd08bl runtime.throw
    0003fd0chint
    0003fd10
    0003fd10loc_3fd10:
    0003fd10stp x0, x1, [sp+8]
    0003fd14mov x3, x30
    0003fd18bl runtime.morestack_noctxt.abi0
    0003fd1cldp x0, x1, [sp+8]
    0003fd20b 0x3fc80
    0003fd24udf 0
    0003fd28udf 0
    0003fd2cudf 0
    0003fc80
    0003fd30
    0003fd30runtime.newSpecialsIter: ; void runtime.newSpecialsIter(runtime.mspan * span)
    0003fd30add x2, x0, 128
    0003fd34ldr x1, [x0+128]
    0003fd38mov x0, x2
    0003fd3cret x30
    0003fd30
    0003fd40
    0003fd40runtime.(*specialsIter).valid: ; void runtime.(*specialsIter).valid(runtime.specialsIter * i)
    0003fd40ldr x1, [x0+8]
    0003fd44subs xzr, x1, 0
    0003fd48cset x0, ne
    0003fd4cret x30
    0003fd40
    0003fd50
    0003fd50runtime.(*specialsIter).next: ; void runtime.(*specialsIter).next(runtime.specialsIter * i)
    0003fd50ldr x16, [x28+16]
    0003fd54subs xzr, sp, x16
    0003fd58b.ls 0x3fda4
    0003fd5cstr x30, [sp-16]!
    0003fd60stur x29, [sp-8]
    0003fd64sub x29, sp, 8
    0003fd68ldr x1, [x0+8]
    0003fd6cldrsb x27, [x1]
    0003fd70adrp x27, 0xa0c000
    0003fd74ldr w2, [x27+3056]
    0003fd78cbz w2, 0x3fd8c
    0003fd7cbl runtime.gcWriteBarrier2
    0003fd80str x1, [x25]
    0003fd84ldr x2, [x0]
    0003fd88str x2, [x25+8]
    0003fd8c
    0003fd8cloc_3fd8c:
    0003fd8cstr x1, [x0]
    0003fd90ldr x1, [x1]
    0003fd94str x1, [x0+8]
    0003fd98ldur x29, [sp-8]
    0003fd9cldr x30, [sp], 16
    0003fda0ret x30
    0003fda4
    0003fda4loc_3fda4:
    0003fda4str x0, [sp+8]
    0003fda8mov x3, x30
    0003fdacbl runtime.morestack_noctxt.abi0
    0003fdb0ldr x0, [sp+8]
    0003fdb4b 0x3fd50
    0003fdb8udf 0
    0003fdbcudf 0
    0003fd50
    0003fdc0
    0003fdc0runtime.(*specialsIter).unlinkAndNext: ; void runtime.(*specialsIter).unlinkAndNext(runtime.specialsIter * i)
    0003fdc0ldr x1, [x0+8]
    0003fdc4ldr x2, [x1]
    0003fdc8str x2, [x0+8]
    0003fdccldr x3, [x0]
    0003fdd0str x2, [x3]
    0003fdd4mov x0, x1
    0003fdd8ret x30
    0003fddcudf 0
    0003fdc0
    0003fde0
    0003fde0runtime.freeSpecial: ; void runtime.freeSpecial(runtime.special * s, void * p, uintptr size)
    0003fde0ldr x16, [x28+16]
    0003fde4subs xzr, sp, x16
    0003fde8b.ls 0x3ff88
    0003fdecstr x30, [sp-64]!
    0003fdf0stur x29, [sp-8]
    0003fdf4sub x29, sp, 8
    0003fdf8str x0, [sp+72]
    0003fdfcldrb w5, [x0+16]
    0003fe00subs wzr, w5, 3
    0003fe04b.hi 0x3fed8
    0003fe08subs wzr, w5, 1
    0003fe0cb.eq 0x3fe90
    0003fe10subs wzr, w5, 2
    0003fe14b.eq 0x3fe58
    0003fe18subs wzr, w5, 3
    0003fe1cb.ne 0x3ff74
    0003fe20ldr x0, [x0+24]
    0003fe24mov x1, x2
    0003fe28bl runtime.mProf_Free
    0003fe2cadrp x0, 0xa0c000
    0003fe30add x0, x0, 1352
    0003fe34bl runtime.lock
    0003fe38adrp x0, 0xa0c000
    0003fe3cadd x0, x0, 1064
    0003fe40ldr x1, [sp+72]
    0003fe44bl runtime.(*fixalloc).free
    0003fe48adrp x0, 0xa0c000
    0003fe4cadd x0, x0, 1352
    0003fe50bl runtime.unlock
    0003fe54b 0x3ff68
    0003fe58
    0003fe58loc_3fe58:
    0003fe58ldr x0, [x0+24]
    0003fe5cmov x1, xzr
    0003fe60bl internal/runtime/atomic.(*Uintptr).Store
    0003fe64adrp x0, 0xa0c000
    0003fe68add x0, x0, 1352
    0003fe6cbl runtime.lock
    0003fe70adrp x0, 0xa0c000
    0003fe74add x0, x0, 1280
    0003fe78ldr x1, [sp+72]
    0003fe7cbl runtime.(*fixalloc).free
    0003fe80adrp x0, 0xa0c000
    0003fe84add x0, x0, 1352
    0003fe88bl runtime.unlock
    0003fe8cb 0x3ff68
    0003fe90
    0003fe90loc_3fe90:
    0003fe90ldr x5, [x0+24]
    0003fe94ldr x2, [x0+32]
    0003fe98ldr x3, [x0+40]
    0003fe9cldr x4, [x0+48]
    0003fea0mov x0, x1
    0003fea4mov x1, x5
    0003fea8bl runtime.queuefinalizer
    0003feacadrp x0, 0xa0c000
    0003feb0add x0, x0, 1352
    0003feb4bl runtime.lock
    0003feb8adrp x0, 0xa0c000
    0003febcadd x0, x0, 920
    0003fec0ldr x1, [sp+72]
    0003fec4bl runtime.(*fixalloc).free
    0003fec8adrp x0, 0xa0c000
    0003feccadd x0, x0, 1352
    0003fed0bl runtime.unlock
    0003fed4b 0x3ff68
    0003fed8
    0003fed8loc_3fed8:
    0003fed8subs wzr, w5, 4
    0003fedcb.ne 0x3feec
    0003fee0orr x1, xzr, 1
    0003fee4strb w1, [x0+24]
    0003fee8b 0x3ff68
    0003feec
    0003feecloc_3feec:
    0003feecsubs wzr, w5, 5
    0003fef0b.eq 0x3ff40
    0003fef4subs wzr, w5, 6
    0003fef8b.ne 0x3ff74
    0003fefcldr x1, [x0+24]
    0003ff00mov x0, xzr
    0003ff04mov x2, xzr
    0003ff08mov x3, xzr
    0003ff0cmov x4, xzr
    0003ff10bl runtime.queuefinalizer
    0003ff14adrp x0, 0xa0c000
    0003ff18add x0, x0, 1352
    0003ff1cbl runtime.lock
    0003ff20adrp x0, 0xa0c000
    0003ff24add x0, x0, 992
    0003ff28ldr x1, [sp+72]
    0003ff2cbl runtime.(*fixalloc).free
    0003ff30adrp x0, 0xa0c000
    0003ff34add x0, x0, 1352
    0003ff38bl runtime.unlock
    0003ff3cb 0x3ff68
    0003ff40
    0003ff40loc_3ff40:
    0003ff40adrp x0, 0xa0c000
    0003ff44add x0, x0, 1352
    0003ff48bl runtime.lock
    0003ff4cadrp x0, 0xa0c000
    0003ff50add x0, x0, 1208
    0003ff54ldr x1, [sp+72]
    0003ff58bl runtime.(*fixalloc).free
    0003ff5cadrp x0, 0xa0c000
    0003ff60add x0, x0, 1352
    0003ff64bl runtime.unlock
    0003ff68
    0003ff68loc_3ff68:
    0003ff68ldur x29, [sp-8]
    0003ff6cldr x30, [sp], 64
    0003ff70ret x30
    0003ff74
    0003ff74loc_3ff74:
    0003ff74adrp x0, 0x675000
    0003ff78add x0, x0, 2356
    0003ff7corr x1, xzr, 16
    0003ff80bl runtime.throw
    0003ff84hint
    0003ff88
    0003ff88loc_3ff88:
    0003ff88stp x0, x1, [sp+8]
    0003ff8cstr x2, [sp+24]
    0003ff90mov x3, x30
    0003ff94bl runtime.morestack_noctxt.abi0
    0003ff98ldp x0, x1, [sp+8]
    0003ff9cldr x2, [sp+24]
    0003ffa0b 0x3fde0
    0003ffa4udf 0
    0003ffa8udf 0
    0003ffacudf 0
    0003fde0
    0003ffb0
    0003ffb0runtime.(*gcBits).bytep: ; void runtime.(*gcBits).bytep(runtime.gcBits * b, uintptr n)
    0003ffb0ldr x16, [x28+16]
    0003ffb4subs xzr, sp, x16
    0003ffb8b.ls 0x3ffdc
    0003ffbcstr x30, [sp-32]!
    0003ffc0stur x29, [sp-8]
    0003ffc4sub x29, sp, 8
    0003ffc8ldrsb x27, [x0]
    0003ffccbl runtime.addb
    0003ffd0ldur x29, [sp-8]
    0003ffd4ldr x30, [sp], 32
    0003ffd8ret x30
    0003ffdc
    0003ffdcloc_3ffdc:
    0003ffdcstp x0, x1, [sp+8]
    0003ffe0mov x3, x30
    0003ffe4bl runtime.morestack_noctxt.abi0
    0003ffe8ldp x0, x1, [sp+8]
    0003ffecb 0x3ffb0
    0003ffb0
    0003fff0
    0003fff0runtime.(*gcBits).bitp: ; void runtime.(*gcBits).bitp(runtime.gcBits * b, uintptr n)
    0003fff0ldr x16, [x28+16]
    0003fff4subs xzr, sp, x16
    0003fff8b.ls 0x40030
    0003fffcstr x30, [sp-32]!
    00040000stur x29, [sp-8]
    00040004sub x29, sp, 8
    00040008str x1, [sp+48]
    0004000cubfm x1, x1, 3, 63
    00040010bl runtime.(*gcBits).bytep
    00040014ldr x2, [sp+48]
    00040018and x2, x2, 7
    0004001corr x3, xzr, 1
    00040020lslv x1, x3, x2
    00040024ldur x29, [sp-8]
    00040028ldr x30, [sp], 32
    0004002cret x30
    00040030
    00040030loc_40030:
    00040030stp x0, x1, [sp+8]
    00040034mov x3, x30
    00040038bl runtime.morestack_noctxt.abi0
    0004003cldp x0, x1, [sp+8]
    00040040b 0x3fff0
    00040044udf 0
    00040048udf 0
    0004004cudf 0
    0003fff0
    00040050
    00040050runtime.(*gcBitsArena).tryAlloc: ; void runtime.(*gcBitsArena).tryAlloc(runtime.gcBitsArena * b, uintptr bytes)
    00040050ldr x16, [x28+16]
    00040054subs xzr, sp, x16
    00040058b.ls 0x40100
    0004005cstr x30, [sp-32]!
    00040060stur x29, [sp-8]
    00040064sub x29, sp, 8
    00040068cbz x0, 0x400e0
    0004006cldar x2, [x0]
    00040070add x2, x2, x1
    00040074movz x3, 65520
    00040078subs xzr, x2, x3
    0004007cb.hi 0x400e0
    00040080adrp x27, 0xa0b000
    00040084ldrb w2, [x27+1516]
    00040088tbz w2, 0, 0x40098
    0004008cldaddal x1, x2, [x0]
    00040090add x2, x2, x1
    00040094b 0x400a8
    00040098
    00040098loc_40098:
    00040098ldaxr x2, [x0]
    0004009cadd x2, x2, x1
    000400a0stlxr w27, x2, [x0]
    000400a4cbnz x27, 0x40098
    000400a8
    000400a8loc_400a8:
    000400a8subs xzr, x2, x3
    000400acb.hi 0x400d0
    000400b0sub x2, x2, x1
    000400b4subs xzr, x2, x3
    000400b8b.hs 0x400f0
    000400bcadd x1, x0, 16
    000400c0add x0, x1, x2
    000400c4ldur x29, [sp-8]
    000400c8ldr x30, [sp], 32
    000400ccret x30
    000400d0
    000400d0loc_400d0:
    000400d0mov x0, xzr
    000400d4ldur x29, [sp-8]
    000400d8ldr x30, [sp], 32
    000400dcret x30
    000400e0
    000400e0loc_400e0:
    000400e0mov x0, xzr
    000400e4ldur x29, [sp-8]
    000400e8ldr x30, [sp], 32
    000400ecret x30
    000400f0
    000400f0loc_400f0:
    000400f0mov x0, x2
    000400f4movz x1, 65520
    000400f8bl runtime.panicIndexU
    000400fchint
    00040100
    00040100loc_40100:
    00040100stp x0, x1, [sp+8]
    00040104mov x3, x30
    00040108bl runtime.morestack_noctxt.abi0
    0004010cldp x0, x1, [sp+8]
    00040110b 0x40050
    00040114udf 0
    00040118udf 0
    0004011cudf 0
    00040050
    00040120
    00040120runtime.newMarkBits: ; void runtime.newMarkBits(uintptr nelems)
    00040120ldr x16, [x28+16]
    00040124subs xzr, sp, x16
    00040128b.ls 0x4025c
    0004012cstr x30, [sp-80]!
    00040130stur x29, [sp-8]
    00040134sub x29, sp, 8
    00040138add x2, x0, 63
    0004013cubfm x2, x2, 6, 63
    00040140ubfm x1, x2, 61, 60
    00040144str x1, [sp+64]
    00040148adrp x2, 0xa0b000
    0004014cadd x2, x2, 3728
    00040150ldar x0, [x2]
    00040154bl runtime.(*gcBitsArena).tryAlloc
    00040158cbnz x0, 0x4023c
    0004015cadrp x0, 0xa0b000
    00040160add x0, x0, 3712
    00040164bl runtime.lock
    00040168adrp x27, 0xa0b000
    0004016cldr x0, [x27+3728]
    00040170ldr x1, [sp+64]
    00040174bl runtime.(*gcBitsArena).tryAlloc
    00040178cbnz x0, 0x4021c
    0004017cbl runtime.newArenaMayUnlock
    00040180str x0, [sp+56]
    00040184adrp x27, 0xa0b000
    00040188ldr x0, [x27+3728]
    0004018cldr x1, [sp+64]
    00040190bl runtime.(*gcBitsArena).tryAlloc
    00040194cbnz x0, 0x401e4
    00040198ldr x0, [sp+56]
    0004019cldr x1, [sp+64]
    000401a0bl runtime.(*gcBitsArena).tryAlloc
    000401a4cbz x0, 0x40248
    000401a8str x0, [sp+32]
    000401acadrp x27, 0xa0b000
    000401b0ldr x1, [x27+3728]
    000401b4ldr x2, [sp+56]
    000401b8str x1, [x2+8]
    000401bcadrp x1, 0xa0b000
    000401c0add x1, x1, 3728
    000401c4stlr x2, [x1]
    000401c8adrp x0, 0xa0b000
    000401ccadd x0, x0, 3712
    000401d0bl runtime.unlock
    000401d4ldr x0, [sp+32]
    000401d8ldur x29, [sp-8]
    000401dcldr x30, [sp], 80
    000401e0ret x30
    000401e4
    000401e4loc_401e4:
    000401e4str x0, [sp+40]
    000401e8adrp x27, 0xa0b000
    000401ecldr x1, [x27+3720]
    000401f0ldr x2, [sp+56]
    000401f4str x1, [x2+8]
    000401f8adrp x27, 0xa0b000
    000401fcstr x2, [x27+3720]
    00040200adrp x0, 0xa0b000
    00040204add x0, x0, 3712
    00040208bl runtime.unlock
    0004020cldr x0, [sp+40]
    00040210ldur x29, [sp-8]
    00040214ldr x30, [sp], 80
    00040218ret x30
    0004021c
    0004021cloc_4021c:
    0004021cstr x0, [sp+48]
    00040220adrp x0, 0xa0b000
    00040224add x0, x0, 3712
    00040228bl runtime.unlock
    0004022cldr x0, [sp+48]
    00040230ldur x29, [sp-8]
    00040234ldr x30, [sp], 80
    00040238ret x30
    0004023c
    0004023cloc_4023c:
    0004023cldur x29, [sp-8]
    00040240ldr x30, [sp], 80
    00040244ret x30
    00040248
    00040248loc_40248:
    00040248adrp x0, 0x675000
    0004024cadd x0, x0, 217
    00040250movz x1, 17
    00040254bl runtime.throw
    00040258hint
    0004025c
    0004025cloc_4025c:
    0004025cstr x0, [sp+8]
    00040260mov x3, x30
    00040264bl runtime.morestack_noctxt.abi0
    00040268ldr x0, [sp+8]
    0004026cb 0x40120
    00040120
    00040270
    00040270runtime.newAllocBits: ; void runtime.newAllocBits(uintptr nelems)
    00040270ldr x16, [x28+16]
    00040274subs xzr, sp, x16
    00040278b.ls 0x40298
    0004027cstr x30, [sp-32]!
    00040280stur x29, [sp-8]
    00040284sub x29, sp, 8
    00040288bl runtime.newMarkBits
    0004028cldur x29, [sp-8]
    00040290ldr x30, [sp], 32
    00040294ret x30
    00040298
    00040298loc_40298:
    00040298str x0, [sp+8]
    0004029cmov x3, x30
    000402a0bl runtime.morestack_noctxt.abi0
    000402a4ldr x0, [sp+8]
    000402a8b 0x40270
    000402acudf 0
    00040270
    000402b0
    000402b0runtime.nextMarkBitArenaEpoch: ; void runtime.nextMarkBitArenaEpoch(void)
    000402b0ldr x16, [x28+16]
    000402b4subs xzr, sp, x16
    000402b8b.ls 0x40360
    000402bcstr x30, [sp-32]!
    000402c0stur x29, [sp-8]
    000402c4sub x29, sp, 8
    000402c8adrp x0, 0xa0b000
    000402ccadd x0, x0, 3712
    000402d0bl runtime.lock
    000402d4adrp x27, 0xa0b000
    000402d8ldr x1, [x27+3744]
    000402dccbz x1, 0x402f4
    000402e0adrp x27, 0xa0b000
    000402e4ldr x2, [x27+3720]
    000402e8cbnz x2, 0x40340
    000402ecadrp x27, 0xa0b000
    000402f0str x1, [x27+3720]
    000402f4
    000402f4loc_402f4:
    000402f4adrp x27, 0xa0b000
    000402f8ldr x1, [x27+3736]
    000402fcadrp x27, 0xa0b000
    00040300str x1, [x27+3744]
    00040304adrp x27, 0xa0b000
    00040308ldr x1, [x27+3728]
    0004030cadrp x27, 0xa0b000
    00040310str x1, [x27+3736]
    00040314mov x1, xzr
    00040318adrp x2, 0xa0b000
    0004031cadd x2, x2, 3728
    00040320stlr x1, [x2]
    00040324adrp x0, 0xa0b000
    00040328add x0, x0, 3712
    0004032cbl runtime.unlock
    00040330ldur x29, [sp-8]
    00040334ldr x30, [sp], 32
    00040338ret x30
    0004033c
    0004033cloc_4033c:
    0004033cmov x1, x3
    00040340
    00040340loc_40340:
    00040340ldr x3, [x1+8]
    00040344cbnz x3, 0x4033c
    00040348str x2, [x1+8]
    0004034cadrp x27, 0xa0b000
    00040350ldr x1, [x27+3744]
    00040354adrp x27, 0xa0b000
    00040358str x1, [x27+3720]
    0004035cb 0x402f4
    00040360
    00040360loc_40360:
    00040360mov x3, x30
    00040364bl runtime.morestack_noctxt.abi0
    00040368b 0x402b0
    0004036cudf 0
    000402b0
    00040370
    00040370runtime.newArenaMayUnlock: ; void runtime.newArenaMayUnlock(void)
    00040370ldr x16, [x28+16]
    00040374subs xzr, sp, x16
    00040378b.ls 0x40418
    0004037cstr x30, [sp-48]!
    00040380stur x29, [sp-8]
    00040384sub x29, sp, 8
    00040388adrp x27, 0xa0b000
    0004038cldr x16, [x27+3720]
    00040390cbz x16, 0x403c0
    00040394str x16, [sp+24]
    00040398ldr x1, [x16+8]
    0004039cadrp x27, 0xa0b000
    000403a0str x1, [x27+3720]
    000403a4movz x1, 65520
    000403a8add x1, x16, x1
    000403ac
    000403acloc_403ac:
    000403acstp xzr, xzr, [x16], 16
    000403b0subs xzr, x16, x1
    000403b4b.le 0x403ac
    000403b8ldr x0, [sp+24]
    000403bcb 0x403f4
    000403c0
    000403c0loc_403c0:
    000403c0adrp x0, 0xa0b000
    000403c4add x0, x0, 3712
    000403c8bl runtime.unlock
    000403ccorr x0, xzr, 0x10000
    000403d0adrp x1, 0xa11000
    000403d4add x1, x1, 536
    000403d8bl runtime.sysAlloc
    000403dccbz x0, 0x40404
    000403e0str x0, [sp+32]
    000403e4adrp x0, 0xa0b000
    000403e8add x0, x0, 3712
    000403ecbl runtime.lock
    000403f0ldr x0, [sp+32]
    000403f4
    000403f4loc_403f4:
    000403f4stp xzr, xzr, [x0]
    000403f8ldur x29, [sp-8]
    000403fcldr x30, [sp], 48
    00040400ret x30
    00040404
    00040404loc_40404:
    00040404adrp x0, 0x67d000
    00040408add x0, x0, 2401
    0004040corr x1, xzr, 31
    00040410bl runtime.throw
    00040414hint
    00040418
    00040418loc_40418:
    00040418mov x3, x30
    0004041cbl runtime.morestack_noctxt.abi0
    00040420b 0x40370
    00040424udf 0
    00040428udf 0
    0004042cudf 0
    00040370
    00040430
    00040430runtime.maxSearchAddr: ; void runtime.maxSearchAddr(void)
    00040430adrp x27, 0x980000
    00040434ldr x0, [x27+1696]
    00040438ret x30
    0004043cudf 0
    00040430
    00040440
    00040440runtime.chunkIndex: ; void runtime.chunkIndex(uintptr p)
    00040440ubfm x0, x0, 22, 63
    00040444ret x30
    00040448udf 0
    0004044cudf 0
    00040440
    00040450
    00040450runtime.chunkBase: ; void runtime.chunkBase(runtime.chunkIdx ci)
    00040450ubfm x0, x0, 42, 41
    00040454ret x30
    00040458udf 0
    0004045cudf 0
    00040450
    00040460
    00040460runtime.chunkPageIndex: ; void runtime.chunkPageIndex(uintptr p)
    00040460ubfm x0, x0, 13, 21
    00040464ret x30
    00040468udf 0
    0004046cudf 0
    00040460
    00040470
    00040470runtime.chunkIdx.l1: ; void runtime.chunkIdx.l1(runtime.chunkIdx i)
    00040470ubfm x0, x0, 13, 63
    00040474ret x30
    00040478udf 0
    0004047cudf 0
    00040470
    00040480
    00040480runtime.chunkIdx.l2: ; void runtime.chunkIdx.l2(runtime.chunkIdx i)
    00040480and x0, x0, 8191
    00040484ret x30
    00040488udf 0
    0004048cudf 0
    00040480
    00040490
    00040490runtime.offAddrToLevelIndex: ; void runtime.offAddrToLevelIndex(int level, runtime.offAddr addr)
    00040490ldr x16, [x28+16]
    00040494subs xzr, sp, x16
    00040498b.ls 0x404e0
    0004049cstr x30, [sp-32]!
    000404a0stur x29, [sp-8]
    000404a4sub x29, sp, 8
    000404a8subs xzr, x0, 5
    000404acb.hs 0x404d4
    000404b0adrp x2, 0x982000
    000404b4add x2, x2, 2336
    000404b8ldr x2, [x2+3*x0]
    000404bclsrv x1, x1, x2
    000404c0subs xzr, x2, 64
    000404c4csel x0, x1, xzr, lo
    000404c8ldur x29, [sp-8]
    000404ccldr x30, [sp], 32
    000404d0ret x30
    000404d4
    000404d4loc_404d4:
    000404d4movz x1, 5
    000404d8bl runtime.panicIndex
    000404dchint
    000404e0
    000404e0loc_404e0:
    000404e0stp x0, x1, [sp+8]
    000404e4mov x3, x30
    000404e8bl runtime.morestack_noctxt.abi0
    000404ecldp x0, x1, [sp+8]
    000404f0b 0x40490
    000404f4udf 0
    000404f8udf 0
    000404fcudf 0
    00040490
    00040500
    00040500runtime.levelIndexToOffAddr: ; void runtime.levelIndexToOffAddr(int level, int idx)
    00040500ldr x16, [x28+16]
    00040504subs xzr, sp, x16
    00040508b.ls 0x40550
    0004050cstr x30, [sp-32]!
    00040510stur x29, [sp-8]
    00040514sub x29, sp, 8
    00040518subs xzr, x0, 5
    0004051cb.hs 0x40544
    00040520adrp x2, 0x982000
    00040524add x2, x2, 2336
    00040528ldr x2, [x2+3*x0]
    0004052clslv x1, x1, x2
    00040530subs xzr, x2, 64
    00040534csel x0, x1, xzr, lo
    00040538ldur x29, [sp-8]
    0004053cldr x30, [sp], 32
    00040540ret x30
    00040544
    00040544loc_40544:
    00040544movz x1, 5
    00040548bl runtime.panicIndex
    0004054chint
    00040550
    00040550loc_40550:
    00040550stp x0, x1, [sp+8]
    00040554mov x3, x30
    00040558bl runtime.morestack_noctxt.abi0
    0004055cldp x0, x1, [sp+8]
    00040560b 0x40500
    00040564udf 0
    00040568udf 0
    0004056cudf 0
    00040500
    00040570
    00040570runtime.addrsToSummaryRange: ; void runtime.addrsToSummaryRange(int level, uintptr base, uintptr limit)
    00040570ldr x16, [x28+16]
    00040574subs xzr, sp, x16
    00040578b.ls 0x405d0
    0004057cstr x30, [sp-32]!
    00040580stur x29, [sp-8]
    00040584sub x29, sp, 8
    00040588subs xzr, x0, 5
    0004058cb.hs 0x405c4
    00040590adrp x3, 0x982000
    00040594add x3, x3, 2336
    00040598ldr x3, [x3+3*x0]
    0004059clsrv x4, x1, x3
    000405a0sub x2, x2, 1
    000405a4lsrv x2, x2, x3
    000405a8subs xzr, x3, 64
    000405accsel x0, x4, xzr, lo
    000405b0csel x2, x2, xzr, lo
    000405b4add x1, x2, 1
    000405b8ldur x29, [sp-8]
    000405bcldr x30, [sp], 32
    000405c0ret x30
    000405c4
    000405c4loc_405c4:
    000405c4movz x1, 5
    000405c8bl runtime.panicIndex
    000405cchint
    000405d0
    000405d0loc_405d0:
    000405d0stp x0, x1, [sp+8]
    000405d4str x2, [sp+24]
    000405d8mov x3, x30
    000405dcbl runtime.morestack_noctxt.abi0
    000405e0ldp x0, x1, [sp+8]
    000405e4ldr x2, [sp+24]
    000405e8b 0x40570
    000405ecudf 0
    00040570