File sliver_83cb34f62800fed14e14547c39337aab8e0427fe2c6310a3fb40ce0ac36168c9.elf
Function:
Loading..
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
000405f0
000405f0runtime.blockAlignSummaryRange: ; void runtime.blockAlignSummaryRange(int level, int lo, int hi)
000405f0ldr x16, [x28+16]
000405f4subs xzr, sp, x16
000405f8b.ls 0x40670
000405fcstr x30, [sp-48]!
00040600stur x29, [sp-8]
00040604sub x29, sp, 8
00040608subs xzr, x0, 5
0004060cb.hs 0x40664
00040610str x2, [sp+72]
00040614adrp x2, 0x982000
00040618add x2, x2, 2272
0004061cldr x2, [x2+3*x0]
00040620orr x3, xzr, 1
00040624lslv x3, x3, x2
00040628subs xzr, x2, 64
0004062ccsel x2, x3, xzr, lo
00040630str x2, [sp+24]
00040634mov x0, x1
00040638mov x1, x2
0004063cbl runtime.alignDown
00040640str x0, [sp+32]
00040644ldr x0, [sp+72]
00040648ldr x1, [sp+24]
0004064cbl runtime.alignUp
00040650mov x1, x0
00040654ldr x0, [sp+32]
00040658ldur x29, [sp-8]
0004065cldr x30, [sp], 48
00040660ret x30
00040664
00040664loc_40664:
00040664movz x1, 5
00040668bl runtime.panicIndex
0004066chint
00040670
00040670loc_40670:
00040670stp x0, x1, [sp+8]
00040674str x2, [sp+24]
00040678mov x3, x30
0004067cbl runtime.morestack_noctxt.abi0
00040680ldp x0, x1, [sp+8]
00040684ldr x2, [sp+24]
00040688b 0x405f0
0004068cudf 0
000405f0
000405f0runtime.blockAlignSummaryRange: ; void runtime.blockAlignSummaryRange(int level, int lo, int hi)
000405f0ldr x16, [x28+16]
000405f4subs xzr, sp, x16
000405f8b.ls 0x40670
000405fcstr x30, [sp-48]!
00040600stur x29, [sp-8]
00040604sub x29, sp, 8
00040608subs xzr, x0, 5
0004060cb.hs 0x40664
00040610str x2, [sp+72]
00040614adrp x2, 0x982000
00040618add x2, x2, 2272
0004061cldr x2, [x2+3*x0]
00040620orr x3, xzr, 1
00040624lslv x3, x3, x2
00040628subs xzr, x2, 64
0004062ccsel x2, x3, xzr, lo
00040630str x2, [sp+24]
00040634mov x0, x1
00040638mov x1, x2
0004063cbl runtime.alignDown
00040640str x0, [sp+32]
00040644ldr x0, [sp+72]
00040648ldr x1, [sp+24]
0004064cbl runtime.alignUp
00040650mov x1, x0
00040654ldr x0, [sp+32]
00040658ldur x29, [sp-8]
0004065cldr x30, [sp], 48
00040660ret x30
00040664
00040664loc_40664:
00040664movz x1, 5
00040668bl runtime.panicIndex
0004066chint
00040670
00040670loc_40670:
00040670stp x0, x1, [sp+8]
00040674str x2, [sp+24]
00040678mov x3, x30
0004067cbl runtime.morestack_noctxt.abi0
00040680ldp x0, x1, [sp+8]
00040684ldr x2, [sp+24]
00040688b 0x405f0
0004068cudf 0
000405f0
00040690
00040690runtime.(*pageAlloc).init: ; void runtime.(*pageAlloc).init(runtime.pageAlloc * p, runtime.mutex * mheapLock, runtime.sysMemStat * sysStat, bool test)
00040690ldr x16, [x28+16]
00040694subs xzr, sp, x16
00040698b.ls 0x4081c
0004069cstr x30, [sp-64]!
000406a0stur x29, [sp-8]
000406a4sub x29, sp, 8
000406a8adrp x27, 0x982000
000406acldr x4, [x27+2400]
000406b0subs xzr, x4, 21
000406b4b.hi 0x407ac
000406b8str x1, [sp+80]
000406bcstrb w3, [sp+96]
000406c0ldrsb x27, [x0]
000406c4movz x4, 144
000406c8movk x4, 0x10000
000406ccadd x4, x0, x4
000406d0movz x5, 184
000406d4movk x5, 0x10000
000406d8add x5, x0, x5
000406dcstr x5, [sp+48]
000406e0adrp x27, 0xa0b000
000406e4ldr w6, [x27+3056]
000406e8cbz w6, 0x40700
000406ecbl runtime.gcWriteBarrier2
000406f0str x2, [x25]
000406f4add x27, x0, 0x10000
000406f8ldr x6, [x27+288]
000406fcstr x6, [x25+8]
00040700
00040700loc_40700:
00040700str x0, [sp+72]
00040704str x2, [sp+88]
00040708add x27, x0, 0x10000
0004070cstr x2, [x27+288]
00040710mov x0, x4
00040714mov x1, x2
00040718bl runtime.(*addrRanges).init
0004071cldr x0, [sp+72]
00040720ldrb w1, [sp+96]
00040724bl runtime.(*pageAlloc).sysInit
00040728bl runtime.maxSearchAddr
0004072cldr x2, [sp+72]
00040730add x27, x2, 0x10000
00040734str x0, [x27+120]
00040738adrp x27, 0xa0b000
0004073cldr w3, [x27+3056]
00040740cbnz w3, 0x4074c
00040744ldr x3, [sp+80]
00040748b 0x40764
0004074c
0004074cloc_4074c:
0004074cbl runtime.gcWriteBarrier2
00040750ldr x3, [sp+80]
00040754str x3, [x25]
00040758add x27, x2, 0x10000
0004075cldr x4, [x27+280]
00040760str x4, [x25+8]
00040764
00040764loc_40764:
00040764add x27, x2, 0x10000
00040768str x3, [x27+280]
0004076cldr x0, [sp+48]
00040770ldrb w1, [sp+96]
00040774ldr x2, [sp+88]
00040778bl runtime.(*scavengeIndex).init
0004077cldr x3, [sp+72]
00040780add x27, x3, 0x10000
00040784ldr x4, [x27+296]
00040788add x4, x4, x0
0004078cadd x27, x3, 0x10000
00040790str x4, [x27+296]
00040794ldrb w4, [sp+96]
00040798add x27, x3, 0x10000
0004079cstrb w4, [x27+305]
000407a0ldur x29, [sp-8]
000407a4ldr x30, [sp], 64
000407a8ret x30
000407ac
000407acloc_407ac:
000407acstr x4, [sp+40]
000407b0bl runtime.printlock
000407b4adrp x0, 0x67e000
000407b8add x0, x0, 1360
000407bcorr x1, xzr, 32
000407c0bl runtime.printstring
000407c4orr x0, xzr, 1
000407c8ldr x1, [sp+40]
000407cclslv x0, x0, x1
000407d0subs xzr, x1, 64
000407d4csel x0, x0, xzr, lo
000407d8bl runtime.printint
000407dcbl runtime.printnl
000407e0bl runtime.printunlock
000407e4bl runtime.printlock
000407e8adrp x0, 0x67c000
000407ecadd x0, x0, 917
000407f0movz x1, 29
000407f4bl runtime.printstring
000407f8orr x0, xzr, 0x200000
000407fcbl runtime.printint
00040800bl runtime.printnl
00040804bl runtime.printunlock
00040808adrp x0, 0x685000
0004080cadd x0, x0, 3182
00040810movz x1, 43
00040814bl runtime.throw
00040818hint
0004081c
0004081cloc_4081c:
0004081cstp x0, x1, [sp+8]
00040820str x2, [sp+24]
00040824strb w3, [sp+32]
00040828mov x3, x30
0004082cbl runtime.morestack_noctxt.abi0
00040830ldp x0, x1, [sp+8]
00040834ldr x2, [sp+24]
00040838ldrb w3, [sp+32]
0004083cb 0x40690
00040690
00040690runtime.(*pageAlloc).init: ; void runtime.(*pageAlloc).init(runtime.pageAlloc * p, runtime.mutex * mheapLock, runtime.sysMemStat * sysStat, bool test)
00040690ldr x16, [x28+16]
00040694subs xzr, sp, x16
00040698b.ls 0x4081c
0004069cstr x30, [sp-64]!
000406a0stur x29, [sp-8]
000406a4sub x29, sp, 8
000406a8adrp x27, 0x982000
000406acldr x4, [x27+2400]
000406b0subs xzr, x4, 21
000406b4b.hi 0x407ac
000406b8str x1, [sp+80]
000406bcstrb w3, [sp+96]
000406c0ldrsb x27, [x0]
000406c4movz x4, 144
000406c8movk x4, 0x10000
000406ccadd x4, x0, x4
000406d0movz x5, 184
000406d4movk x5, 0x10000
000406d8add x5, x0, x5
000406dcstr x5, [sp+48]
000406e0adrp x27, 0xa0b000
000406e4ldr w6, [x27+3056]
000406e8cbz w6, 0x40700
000406ecbl runtime.gcWriteBarrier2
000406f0str x2, [x25]
000406f4add x27, x0, 0x10000
000406f8ldr x6, [x27+288]
000406fcstr x6, [x25+8]
00040700
00040700loc_40700:
00040700str x0, [sp+72]
00040704str x2, [sp+88]
00040708add x27, x0, 0x10000
0004070cstr x2, [x27+288]
00040710mov x0, x4
00040714mov x1, x2
00040718bl runtime.(*addrRanges).init
0004071cldr x0, [sp+72]
00040720ldrb w1, [sp+96]
00040724bl runtime.(*pageAlloc).sysInit
00040728bl runtime.maxSearchAddr
0004072cldr x2, [sp+72]
00040730add x27, x2, 0x10000
00040734str x0, [x27+120]
00040738adrp x27, 0xa0b000
0004073cldr w3, [x27+3056]
00040740cbnz w3, 0x4074c
00040744ldr x3, [sp+80]
00040748b 0x40764
0004074c
0004074cloc_4074c:
0004074cbl runtime.gcWriteBarrier2
00040750ldr x3, [sp+80]
00040754str x3, [x25]
00040758add x27, x2, 0x10000
0004075cldr x4, [x27+280]
00040760str x4, [x25+8]
00040764
00040764loc_40764:
00040764add x27, x2, 0x10000
00040768str x3, [x27+280]
0004076cldr x0, [sp+48]
00040770ldrb w1, [sp+96]
00040774ldr x2, [sp+88]
00040778bl runtime.(*scavengeIndex).init
0004077cldr x3, [sp+72]
00040780add x27, x3, 0x10000
00040784ldr x4, [x27+296]
00040788add x4, x4, x0
0004078cadd x27, x3, 0x10000
00040790str x4, [x27+296]
00040794ldrb w4, [sp+96]
00040798add x27, x3, 0x10000
0004079cstrb w4, [x27+305]
000407a0ldur x29, [sp-8]
000407a4ldr x30, [sp], 64
000407a8ret x30
000407ac
000407acloc_407ac:
000407acstr x4, [sp+40]
000407b0bl runtime.printlock
000407b4adrp x0, 0x67e000
000407b8add x0, x0, 1360
000407bcorr x1, xzr, 32
000407c0bl runtime.printstring
000407c4orr x0, xzr, 1
000407c8ldr x1, [sp+40]
000407cclslv x0, x0, x1
000407d0subs xzr, x1, 64
000407d4csel x0, x0, xzr, lo
000407d8bl runtime.printint
000407dcbl runtime.printnl
000407e0bl runtime.printunlock
000407e4bl runtime.printlock
000407e8adrp x0, 0x67c000
000407ecadd x0, x0, 917
000407f0movz x1, 29
000407f4bl runtime.printstring
000407f8orr x0, xzr, 0x200000
000407fcbl runtime.printint
00040800bl runtime.printnl
00040804bl runtime.printunlock
00040808adrp x0, 0x685000
0004080cadd x0, x0, 3182
00040810movz x1, 43
00040814bl runtime.throw
00040818hint
0004081c
0004081cloc_4081c:
0004081cstp x0, x1, [sp+8]
00040820str x2, [sp+24]
00040824strb w3, [sp+32]
00040828mov x3, x30
0004082cbl runtime.morestack_noctxt.abi0
00040830ldp x0, x1, [sp+8]
00040834ldr x2, [sp+24]
00040838ldrb w3, [sp+32]
0004083cb 0x40690
00040690
00040840
00040840runtime.(*pageAlloc).chunkOf: ; void runtime.(*pageAlloc).chunkOf(runtime.pageAlloc * p, runtime.chunkIdx ci)
00040840ldr x16, [x28+16]
00040844subs xzr, sp, x16
00040848b.ls 0x408c4
0004084cstr x30, [sp-48]!
00040850stur x29, [sp-8]
00040854sub x29, sp, 8
00040858str x0, [sp+56]
0004085cstr x1, [sp+64]
00040860mov x0, x1
00040864bl runtime.chunkIdx.l1
00040868str x0, [sp+32]
0004086cldr x0, [sp+64]
00040870bl runtime.chunkIdx.l2
00040874ldr x1, [sp+32]
00040878subs xzr, x1, 8192
0004087cb.hs 0x408b4
00040880ldr x2, [sp+56]
00040884ldrsb x27, [x2]
00040888add x2, x2, 120
0004088cldr x2, [x2+3*x1]
00040890subs xzr, x0, 8192
00040894b.hs 0x408ac
00040898ldrsb x27, [x2]
0004089cadd x0, x2, x0, lsl #7
000408a0ldur x29, [sp-8]
000408a4ldr x30, [sp], 48
000408a8ret x30
000408ac
000408acloc_408ac:
000408acorr x1, xzr, 8192
000408b0bl runtime.panicIndexU
000408b4
000408b4loc_408b4:
000408b4mov x0, x1
000408b8orr x1, xzr, 8192
000408bcbl runtime.panicIndexU
000408c0hint
000408c4
000408c4loc_408c4:
000408c4stp x0, x1, [sp+8]
000408c8mov x3, x30
000408ccbl runtime.morestack_noctxt.abi0
000408d0ldp x0, x1, [sp+8]
000408d4b 0x40840
000408d8udf 0
000408dcudf 0
00040840
00040840runtime.(*pageAlloc).chunkOf: ; void runtime.(*pageAlloc).chunkOf(runtime.pageAlloc * p, runtime.chunkIdx ci)
00040840ldr x16, [x28+16]
00040844subs xzr, sp, x16
00040848b.ls 0x408c4
0004084cstr x30, [sp-48]!
00040850stur x29, [sp-8]
00040854sub x29, sp, 8
00040858str x0, [sp+56]
0004085cstr x1, [sp+64]
00040860mov x0, x1
00040864bl runtime.chunkIdx.l1
00040868str x0, [sp+32]
0004086cldr x0, [sp+64]
00040870bl runtime.chunkIdx.l2
00040874ldr x1, [sp+32]
00040878subs xzr, x1, 8192
0004087cb.hs 0x408b4
00040880ldr x2, [sp+56]
00040884ldrsb x27, [x2]
00040888add x2, x2, 120
0004088cldr x2, [x2+3*x1]
00040890subs xzr, x0, 8192
00040894b.hs 0x408ac
00040898ldrsb x27, [x2]
0004089cadd x0, x2, x0, lsl #7
000408a0ldur x29, [sp-8]
000408a4ldr x30, [sp], 48
000408a8ret x30
000408ac
000408acloc_408ac:
000408acorr x1, xzr, 8192
000408b0bl runtime.panicIndexU
000408b4
000408b4loc_408b4:
000408b4mov x0, x1
000408b8orr x1, xzr, 8192
000408bcbl runtime.panicIndexU
000408c0hint
000408c4
000408c4loc_408c4:
000408c4stp x0, x1, [sp+8]
000408c8mov x3, x30
000408ccbl runtime.morestack_noctxt.abi0
000408d0ldp x0, x1, [sp+8]
000408d4b 0x40840
000408d8udf 0
000408dcudf 0
00040840
000408e0
000408e0runtime.(*pageAlloc).grow: ; void runtime.(*pageAlloc).grow(runtime.pageAlloc * p, uintptr base, uintptr size)
000408e0ldr x16, [x28+16]
000408e4subs xzr, sp, x16
000408e8b.ls 0x40b7c
000408ecstr x30, [sp-112]!
000408f0stur x29, [sp-8]
000408f4sub x29, sp, 8
000408f8str x0, [sp+120]
000408fcstr x1, [sp+128]
00040900str x2, [sp+136]
00040904ldrsb x27, [x0]
00040908add x27, x0, 0x10000
0004090cldr x0, [x27+280]
00040910bl runtime.assertLockHeld
00040914ldr x1, [sp+136]
00040918ldr x2, [sp+128]
0004091cadd x0, x1, x2
00040920orr x1, xzr, 0x400000
00040924bl runtime.alignUp
00040928str x0, [sp+56]
0004092cldr x0, [sp+128]
00040930orr x1, xzr, 0x400000
00040934bl runtime.alignDown
00040938str x0, [sp+72]
0004093cmov x1, x0
00040940ldr x2, [sp+56]
00040944ldr x0, [sp+120]
00040948bl runtime.(*pageAlloc).sysGrow
0004094cldr x1, [sp+120]
00040950movz x2, 184
00040954movk x2, 0x10000
00040958add x0, x1, x2
0004095cadd x27, x1, 0x10000
00040960ldr x3, [x27+288]
00040964ldr x1, [sp+72]
00040968ldr x2, [sp+56]
0004096cbl runtime.(*scavengeIndex).grow
00040970ldr x1, [sp+120]
00040974add x27, x1, 0x10000
00040978ldr x2, [x27+296]
0004097cadd x2, x2, x0
00040980add x27, x1, 0x10000
00040984str x2, [x27+296]
00040988add x27, x1, 0x10000
0004098cldr x1, [x27+128]
00040990str x1, [sp+80]
00040994ldr x0, [sp+72]
00040998bl runtime.chunkIndex
0004099cstr x0, [sp+48]
000409a0ldr x0, [sp+56]
000409a4bl runtime.chunkIndex
000409a8ldr x1, [sp+80]
000409accbnz x1, 0x409bc
000409b0ldr x2, [sp+120]
000409b4ldr x4, [sp+48]
000409b8b 0x409d4
000409bc
000409bcloc_409bc:
000409bcldr x2, [sp+120]
000409c0add x27, x2, 0x10000
000409c4ldr x3, [x27+128]
000409c8ldr x4, [sp+48]
000409ccsubs xzr, x4, x3
000409d0b.hs 0x409dc
000409d4
000409d4loc_409d4:
000409d4add x27, x2, 0x10000
000409d8str x4, [x27+128]
000409dc
000409dcloc_409dc:
000409dcadd x27, x2, 0x10000
000409e0ldr x3, [x27+136]
000409e4subs xzr, x0, x3
000409e8b.ls 0x409f4
000409ecadd x27, x2, 0x10000
000409f0str x0, [x27+136]
000409f4
000409f4loc_409f4:
000409f4ldr x0, [sp+72]
000409f8ldr x1, [sp+56]
000409fcbl runtime.makeAddrRange
00040a00ldr x2, [sp+120]
00040a04movz x3, 144
00040a08movk x3, 0x10000
00040a0cadd x2, x2, x3
00040a10mov x3, x0
00040a14mov x0, x2
00040a18mov x4, x1
00040a1cmov x1, x3
00040a20mov x2, x4
00040a24bl runtime.(*addrRanges).add
00040a28ldr x2, [sp+120]
00040a2cadd x27, x2, 0x10000
00040a30ldr x1, [x27+120]
00040a34ldr x0, [sp+72]
00040a38bl runtime.offAddr.lessThan
00040a3ctbz w0, 0, 0x40a54
00040a40ldr x0, [sp+72]
00040a44ldr x1, [sp+120]
00040a48add x27, x1, 0x10000
00040a4cstr x0, [x27+120]
00040a50b 0x40a58
00040a54
00040a54loc_40a54:
00040a54ldr x0, [sp+72]
00040a58
00040a58loc_40a58:
00040a58bl runtime.chunkIndex
00040a5cb 0x40a88
00040a60
00040a60loc_40a60:
00040a60mov x0, x2
00040a64ldr x1, [sp+64]
00040a68bl runtime.(*pageAlloc).chunkOf
00040a6cldrsb x27, [x0]
00040a70add x0, x0, 64
00040a74mov x1, xzr
00040a78orr x2, xzr, 512
00040a7cbl runtime.(*pageBits).setRange
00040a80ldr x2, [sp+64]
00040a84add x0, x2, 1
00040a88
00040a88loc_40a88:
00040a88str x0, [sp+64]
00040a8cldr x0, [sp+56]
00040a90bl runtime.chunkIndex
00040a94ldr x1, [sp+64]
00040a98subs xzr, x0, x1
00040a9cb.ls 0x40b30
00040aa0mov x0, x1
00040aa4bl runtime.chunkIdx.l1
00040aa8subs xzr, x0, 8192
00040aacb.hs 0x40b70
00040ab0ldr x2, [sp+120]
00040ab4add x3, x2, 120
00040ab8ldr x4, [x3+3*x0]
00040abccbnz x4, 0x40a60
00040ac0str x3, [sp+96]
00040ac4add x27, x2, 0x10000
00040ac8ldr x1, [x27+288]
00040accorr x0, xzr, 0x100000
00040ad0bl runtime.sysAlloc
00040ad4cbz x0, 0x40b60
00040ad8str x0, [sp+88]
00040adcldr x2, [sp+120]
00040ae0add x27, x2, 0x10000
00040ae4ldrb w3, [x27+305]
00040ae8tbnz w3, 0, 0x40b0c
00040aecadd x27, x2, 0x10000
00040af0ldrb w3, [x27+304]
00040af4tbz w3, 0, 0x40b04
00040af8orr x1, xzr, 0x100000
00040afcbl runtime.sysHugePage
00040b00b 0x40b0c
00040b04
00040b04loc_40b04:
00040b04orr x1, xzr, 0x100000
00040b08bl runtime.sysNoHugePage
00040b0c
00040b0cloc_40b0c:
00040b0cldr x0, [sp+64]
00040b10bl runtime.chunkIdx.l1
00040b14subs xzr, x0, 8192
00040b18b.hs 0x40b58
00040b1cldr x2, [sp+88]
00040b20ldr x3, [sp+96]
00040b24str x2, [x3+3*x0]
00040b28ldr x2, [sp+120]
00040b2cb 0x40a60
00040b30
00040b30loc_40b30:
00040b30ldr x5, [sp+136]
00040b34ubfm x2, x5, 13, 63
00040b38ldr x0, [sp+120]
00040b3cldr x1, [sp+72]
00040b40orr x3, xzr, 1
00040b44mov x4, xzr
00040b48bl runtime.(*pageAlloc).update
00040b4cldur x29, [sp-8]
00040b50ldr x30, [sp], 112
00040b54ret x30
00040b58
00040b58loc_40b58:
00040b58orr x1, xzr, 8192
00040b5cbl runtime.panicIndexU
00040b60
00040b60loc_40b60:
00040b60adrp x0, 0x679000
00040b64add x0, x0, 78
00040b68orr x1, xzr, 24
00040b6cbl runtime.throw
00040b70
00040b70loc_40b70:
00040b70orr x1, xzr, 8192
00040b74bl runtime.panicIndexU
00040b78hint
00040b7c
00040b7cloc_40b7c:
00040b7cstp x0, x1, [sp+8]
00040b80str x2, [sp+24]
00040b84mov x3, x30
00040b88bl runtime.morestack_noctxt.abi0
00040b8cldp x0, x1, [sp+8]
00040b90ldr x2, [sp+24]
00040b94b 0x408e0
00040b98udf 0
00040b9cudf 0
000408e0
000408e0runtime.(*pageAlloc).grow: ; void runtime.(*pageAlloc).grow(runtime.pageAlloc * p, uintptr base, uintptr size)
000408e0ldr x16, [x28+16]
000408e4subs xzr, sp, x16
000408e8b.ls 0x40b7c
000408ecstr x30, [sp-112]!
000408f0stur x29, [sp-8]
000408f4sub x29, sp, 8
000408f8str x0, [sp+120]
000408fcstr x1, [sp+128]
00040900str x2, [sp+136]
00040904ldrsb x27, [x0]
00040908add x27, x0, 0x10000
0004090cldr x0, [x27+280]
00040910bl runtime.assertLockHeld
00040914ldr x1, [sp+136]
00040918ldr x2, [sp+128]
0004091cadd x0, x1, x2
00040920orr x1, xzr, 0x400000
00040924bl runtime.alignUp
00040928str x0, [sp+56]
0004092cldr x0, [sp+128]
00040930orr x1, xzr, 0x400000
00040934bl runtime.alignDown
00040938str x0, [sp+72]
0004093cmov x1, x0
00040940ldr x2, [sp+56]
00040944ldr x0, [sp+120]
00040948bl runtime.(*pageAlloc).sysGrow
0004094cldr x1, [sp+120]
00040950movz x2, 184
00040954movk x2, 0x10000
00040958add x0, x1, x2
0004095cadd x27, x1, 0x10000
00040960ldr x3, [x27+288]
00040964ldr x1, [sp+72]
00040968ldr x2, [sp+56]
0004096cbl runtime.(*scavengeIndex).grow
00040970ldr x1, [sp+120]
00040974add x27, x1, 0x10000
00040978ldr x2, [x27+296]
0004097cadd x2, x2, x0
00040980add x27, x1, 0x10000
00040984str x2, [x27+296]
00040988add x27, x1, 0x10000
0004098cldr x1, [x27+128]
00040990str x1, [sp+80]
00040994ldr x0, [sp+72]
00040998bl runtime.chunkIndex
0004099cstr x0, [sp+48]
000409a0ldr x0, [sp+56]
000409a4bl runtime.chunkIndex
000409a8ldr x1, [sp+80]
000409accbnz x1, 0x409bc
000409b0ldr x2, [sp+120]
000409b4ldr x4, [sp+48]
000409b8b 0x409d4
000409bc
000409bcloc_409bc:
000409bcldr x2, [sp+120]
000409c0add x27, x2, 0x10000
000409c4ldr x3, [x27+128]
000409c8ldr x4, [sp+48]
000409ccsubs xzr, x4, x3
000409d0b.hs 0x409dc
000409d4
000409d4loc_409d4:
000409d4add x27, x2, 0x10000
000409d8str x4, [x27+128]
000409dc
000409dcloc_409dc:
000409dcadd x27, x2, 0x10000
000409e0ldr x3, [x27+136]
000409e4subs xzr, x0, x3
000409e8b.ls 0x409f4
000409ecadd x27, x2, 0x10000
000409f0str x0, [x27+136]
000409f4
000409f4loc_409f4:
000409f4ldr x0, [sp+72]
000409f8ldr x1, [sp+56]
000409fcbl runtime.makeAddrRange
00040a00ldr x2, [sp+120]
00040a04movz x3, 144
00040a08movk x3, 0x10000
00040a0cadd x2, x2, x3
00040a10mov x3, x0
00040a14mov x0, x2
00040a18mov x4, x1
00040a1cmov x1, x3
00040a20mov x2, x4
00040a24bl runtime.(*addrRanges).add
00040a28ldr x2, [sp+120]
00040a2cadd x27, x2, 0x10000
00040a30ldr x1, [x27+120]
00040a34ldr x0, [sp+72]
00040a38bl runtime.offAddr.lessThan
00040a3ctbz w0, 0, 0x40a54
00040a40ldr x0, [sp+72]
00040a44ldr x1, [sp+120]
00040a48add x27, x1, 0x10000
00040a4cstr x0, [x27+120]
00040a50b 0x40a58
00040a54
00040a54loc_40a54:
00040a54ldr x0, [sp+72]
00040a58
00040a58loc_40a58:
00040a58bl runtime.chunkIndex
00040a5cb 0x40a88
00040a60
00040a60loc_40a60:
00040a60mov x0, x2
00040a64ldr x1, [sp+64]
00040a68bl runtime.(*pageAlloc).chunkOf
00040a6cldrsb x27, [x0]
00040a70add x0, x0, 64
00040a74mov x1, xzr
00040a78orr x2, xzr, 512
00040a7cbl runtime.(*pageBits).setRange
00040a80ldr x2, [sp+64]
00040a84add x0, x2, 1
00040a88
00040a88loc_40a88:
00040a88str x0, [sp+64]
00040a8cldr x0, [sp+56]
00040a90bl runtime.chunkIndex
00040a94ldr x1, [sp+64]
00040a98subs xzr, x0, x1
00040a9cb.ls 0x40b30
00040aa0mov x0, x1
00040aa4bl runtime.chunkIdx.l1
00040aa8subs xzr, x0, 8192
00040aacb.hs 0x40b70
00040ab0ldr x2, [sp+120]
00040ab4add x3, x2, 120
00040ab8ldr x4, [x3+3*x0]
00040abccbnz x4, 0x40a60
00040ac0str x3, [sp+96]
00040ac4add x27, x2, 0x10000
00040ac8ldr x1, [x27+288]
00040accorr x0, xzr, 0x100000
00040ad0bl runtime.sysAlloc
00040ad4cbz x0, 0x40b60
00040ad8str x0, [sp+88]
00040adcldr x2, [sp+120]
00040ae0add x27, x2, 0x10000
00040ae4ldrb w3, [x27+305]
00040ae8tbnz w3, 0, 0x40b0c
00040aecadd x27, x2, 0x10000
00040af0ldrb w3, [x27+304]
00040af4tbz w3, 0, 0x40b04
00040af8orr x1, xzr, 0x100000
00040afcbl runtime.sysHugePage
00040b00b 0x40b0c
00040b04
00040b04loc_40b04:
00040b04orr x1, xzr, 0x100000
00040b08bl runtime.sysNoHugePage
00040b0c
00040b0cloc_40b0c:
00040b0cldr x0, [sp+64]
00040b10bl runtime.chunkIdx.l1
00040b14subs xzr, x0, 8192
00040b18b.hs 0x40b58
00040b1cldr x2, [sp+88]
00040b20ldr x3, [sp+96]
00040b24str x2, [x3+3*x0]
00040b28ldr x2, [sp+120]
00040b2cb 0x40a60
00040b30
00040b30loc_40b30:
00040b30ldr x5, [sp+136]
00040b34ubfm x2, x5, 13, 63
00040b38ldr x0, [sp+120]
00040b3cldr x1, [sp+72]
00040b40orr x3, xzr, 1
00040b44mov x4, xzr
00040b48bl runtime.(*pageAlloc).update
00040b4cldur x29, [sp-8]
00040b50ldr x30, [sp], 112
00040b54ret x30
00040b58
00040b58loc_40b58:
00040b58orr x1, xzr, 8192
00040b5cbl runtime.panicIndexU
00040b60
00040b60loc_40b60:
00040b60adrp x0, 0x679000
00040b64add x0, x0, 78
00040b68orr x1, xzr, 24
00040b6cbl runtime.throw
00040b70
00040b70loc_40b70:
00040b70orr x1, xzr, 8192
00040b74bl runtime.panicIndexU
00040b78hint
00040b7c
00040b7cloc_40b7c:
00040b7cstp x0, x1, [sp+8]
00040b80str x2, [sp+24]
00040b84mov x3, x30
00040b88bl runtime.morestack_noctxt.abi0
00040b8cldp x0, x1, [sp+8]
00040b90ldr x2, [sp+24]
00040b94b 0x408e0
00040b98udf 0
00040b9cudf 0
000408e0
00040ba0
00040ba0runtime.(*pageAlloc).enableChunkHugePages: ; void runtime.(*pageAlloc).enableChunkHugePages(runtime.pageAlloc * p)
00040ba0ldr x16, [x28+24]
00040ba4subs xzr, sp, x16
00040ba8b.ls 0x40cf4
00040bacstr x30, [sp-112]!
00040bb0stur x29, [sp-8]
00040bb4sub x29, sp, 8
00040bb8str x0, [sp+120]
00040bbcadrp x0, 0x9f2000
00040bc0add x0, x0, 2112
00040bc4bl runtime.lock
00040bc8ldr x1, [sp+120]
00040bccldrsb x27, [x1]
00040bd0add x27, x1, 0x10000
00040bd4ldrb w2, [x27+304]
00040bd8tbnz w2, 0, 0x40c38
00040bdcorr x2, xzr, 1
00040be0add x27, x1, 0x10000
00040be4strb w2, [x27+304]
00040be8stp xzr, xzr, [sp+56]
00040becstp xzr, xzr, [sp+72]
00040bf0str xzr, [sp+88]
00040bf4add x27, x1, 0x10000
00040bf8ldr x2, [x27+288]
00040bfcstr x2, [sp+88]
00040c00movz x2, 144
00040c04movk x2, 0x10000
00040c08add x0, x1, x2
00040c0cadd x1, sp, 56
00040c10bl runtime.(*addrRanges).cloneInto
00040c14adrp x0, 0x9f2000
00040c18add x0, x0, 2112
00040c1cbl runtime.unlock
00040c20ldr x2, [sp+120]
00040c24add x27, x2, 0x10000
00040c28ldr x3, [x27+144]
00040c2cadd x27, x2, 0x10000
00040c30ldr x4, [x27+152]
00040c34b 0x40c64
00040c38
00040c38loc_40c38:
00040c38adrp x0, 0x9f2000
00040c3cadd x0, x0, 2112
00040c40bl runtime.unlock
00040c44ldur x29, [sp-8]
00040c48ldr x30, [sp], 112
00040c4cret x30
00040c50
00040c50loc_40c50:
00040c50ldr x1, [sp+96]
00040c54add x3, x1, 16
00040c58ldr x1, [sp+48]
00040c5csub x4, x1, 1
00040c60ldr x2, [sp+120]
00040c64
00040c64loc_40c64:
00040c64subs xzr, x4, 0
00040c68b.le 0x40c90
00040c6cstr x4, [sp+48]
00040c70str x3, [sp+96]
00040c74ldr x0, [x3]
00040c78ldr x1, [x3+8]
00040c7cstr x1, [sp+40]
00040c80bl runtime.offAddr.addr
00040c84bl runtime.chunkIndex
00040c88bl runtime.chunkIdx.l1
00040c8cb 0x40cb8
00040c90
00040c90loc_40c90:
00040c90ldur x29, [sp-8]
00040c94ldr x30, [sp], 112
00040c98ret x30
00040c9c
00040c9cloc_40c9c:
00040c9cldr x2, [sp+120]
00040ca0add x2, x2, 120
00040ca4ldr x0, [x2+3*x1]
00040ca8orr x1, xzr, 0x100000
00040cacbl runtime.sysHugePage
00040cb0ldr x2, [sp+32]
00040cb4add x0, x2, 1
00040cb8
00040cb8loc_40cb8:
00040cb8str x0, [sp+32]
00040cbcldr x0, [sp+40]
00040cc0bl runtime.offAddr.addr
00040cc4sub x0, x0, 1
00040cc8bl runtime.chunkIndex
00040cccbl runtime.chunkIdx.l1
00040cd0ldr x1, [sp+32]
00040cd4subs xzr, x0, x1
00040cd8b.ls 0x40c50
00040cdcsubs xzr, x1, 8192
00040ce0b.lo 0x40c9c
00040ce4mov x0, x1
00040ce8orr x1, xzr, 8192
00040cecbl runtime.panicIndexU
00040cf0hint
00040cf4
00040cf4loc_40cf4:
00040cf4str x0, [sp+8]
00040cf8mov x3, x30
00040cfcbl runtime.morestackc.abi0
00040d00ldr x0, [sp+8]
00040d04b 0x40ba0
00040d08udf 0
00040d0cudf 0
00040ba0
00040ba0runtime.(*pageAlloc).enableChunkHugePages: ; void runtime.(*pageAlloc).enableChunkHugePages(runtime.pageAlloc * p)
00040ba0ldr x16, [x28+24]
00040ba4subs xzr, sp, x16
00040ba8b.ls 0x40cf4
00040bacstr x30, [sp-112]!
00040bb0stur x29, [sp-8]
00040bb4sub x29, sp, 8
00040bb8str x0, [sp+120]
00040bbcadrp x0, 0x9f2000
00040bc0add x0, x0, 2112
00040bc4bl runtime.lock
00040bc8ldr x1, [sp+120]
00040bccldrsb x27, [x1]
00040bd0add x27, x1, 0x10000
00040bd4ldrb w2, [x27+304]
00040bd8tbnz w2, 0, 0x40c38
00040bdcorr x2, xzr, 1
00040be0add x27, x1, 0x10000
00040be4strb w2, [x27+304]
00040be8stp xzr, xzr, [sp+56]
00040becstp xzr, xzr, [sp+72]
00040bf0str xzr, [sp+88]
00040bf4add x27, x1, 0x10000
00040bf8ldr x2, [x27+288]
00040bfcstr x2, [sp+88]
00040c00movz x2, 144
00040c04movk x2, 0x10000
00040c08add x0, x1, x2
00040c0cadd x1, sp, 56
00040c10bl runtime.(*addrRanges).cloneInto
00040c14adrp x0, 0x9f2000
00040c18add x0, x0, 2112
00040c1cbl runtime.unlock
00040c20ldr x2, [sp+120]
00040c24add x27, x2, 0x10000
00040c28ldr x3, [x27+144]
00040c2cadd x27, x2, 0x10000
00040c30ldr x4, [x27+152]
00040c34b 0x40c64
00040c38
00040c38loc_40c38:
00040c38adrp x0, 0x9f2000
00040c3cadd x0, x0, 2112
00040c40bl runtime.unlock
00040c44ldur x29, [sp-8]
00040c48ldr x30, [sp], 112
00040c4cret x30
00040c50
00040c50loc_40c50:
00040c50ldr x1, [sp+96]
00040c54add x3, x1, 16
00040c58ldr x1, [sp+48]
00040c5csub x4, x1, 1
00040c60ldr x2, [sp+120]
00040c64
00040c64loc_40c64:
00040c64subs xzr, x4, 0
00040c68b.le 0x40c90
00040c6cstr x4, [sp+48]
00040c70str x3, [sp+96]
00040c74ldr x0, [x3]
00040c78ldr x1, [x3+8]
00040c7cstr x1, [sp+40]
00040c80bl runtime.offAddr.addr
00040c84bl runtime.chunkIndex
00040c88bl runtime.chunkIdx.l1
00040c8cb 0x40cb8
00040c90
00040c90loc_40c90:
00040c90ldur x29, [sp-8]
00040c94ldr x30, [sp], 112
00040c98ret x30
00040c9c
00040c9cloc_40c9c:
00040c9cldr x2, [sp+120]
00040ca0add x2, x2, 120
00040ca4ldr x0, [x2+3*x1]
00040ca8orr x1, xzr, 0x100000
00040cacbl runtime.sysHugePage
00040cb0ldr x2, [sp+32]
00040cb4add x0, x2, 1
00040cb8
00040cb8loc_40cb8:
00040cb8str x0, [sp+32]
00040cbcldr x0, [sp+40]
00040cc0bl runtime.offAddr.addr
00040cc4sub x0, x0, 1
00040cc8bl runtime.chunkIndex
00040cccbl runtime.chunkIdx.l1
00040cd0ldr x1, [sp+32]
00040cd4subs xzr, x0, x1
00040cd8b.ls 0x40c50
00040cdcsubs xzr, x1, 8192
00040ce0b.lo 0x40c9c
00040ce4mov x0, x1
00040ce8orr x1, xzr, 8192
00040cecbl runtime.panicIndexU
00040cf0hint
00040cf4
00040cf4loc_40cf4:
00040cf4str x0, [sp+8]
00040cf8mov x3, x30
00040cfcbl runtime.morestackc.abi0
00040d00ldr x0, [sp+8]
00040d04b 0x40ba0
00040d08udf 0
00040d0cudf 0
00040ba0
00040d10
00040d10runtime.(*pageAlloc).update: ; void runtime.(*pageAlloc).update(runtime.pageAlloc * p, uintptr base, uintptr npages, bool contig, bool alloc)
00040d10ldr x16, [x28+16]
00040d14sub x17, sp, 64
00040d18subs xzr, x17, x16
00040d1cb.ls 0x4111c
00040d20str x30, [sp-192]!
00040d24stur x29, [sp-8]
00040d28sub x29, sp, 8
00040d2cstr x0, [sp+200]
00040d30str x1, [sp+208]
00040d34str x2, [sp+216]
00040d38strb w3, [sp+224]
00040d3cstrb w4, [sp+225]
00040d40ldrsb x27, [x0]
00040d44add x27, x0, 0x10000
00040d48ldr x0, [x27+280]
00040d4cbl runtime.assertLockHeld
00040d50ldr x0, [sp+208]
00040d54bl runtime.chunkIndex
00040d58str x0, [sp+80]
00040d5cldr x1, [sp+208]
00040d60ldr x2, [sp+216]
00040d64add x1, x1, x2, lsl #13
00040d68str x1, [sp+160]
00040d6csub x0, x1, 1
00040d70bl runtime.chunkIndex
00040d74ldr x1, [sp+80]
00040d78subs xzr, x0, x1
00040d7cb.eq 0x40e54
00040d80str x0, [sp+128]
00040d84ldrb w2, [sp+224]
00040d88tbnz w2, 0, 0x40da4
00040d8cldr x3, [sp+200]
00040d90ldr x4, [x3+104]
00040d94str x4, [sp+64]
00040d98ldr x5, [x3+96]
00040d9cstr x5, [sp+168]
00040da0b 0x410e4
00040da4
00040da4loc_40da4:
00040da4ldr x0, [sp+200]
00040da8ldr x2, [x0+104]
00040dacstr x2, [sp+72]
00040db0ldr x2, [x0+96]
00040db4str x2, [sp+176]
00040db8bl runtime.(*pageAlloc).chunkOf
00040dbcldrsb x27, [x0]
00040dc0bl runtime.(*pallocBits).summarize
00040dc4ldr x2, [sp+80]
00040dc8ldr x1, [sp+72]
00040dccsubs xzr, x2, x1
00040dd0b.hs 0x410c0
00040dd4ldr x3, [sp+176]
00040dd8str x0, [x3+3*x2]
00040ddcldr x0, [sp+200]
00040de0ldr x4, [x0+112]
00040de4ldr x5, [sp+128]
00040de8subs xzr, x5, x4
00040decb.hi 0x410b4
00040df0add x6, x2, 1
00040df4subs xzr, x5, x6
00040df8b.lo 0x410a8
00040dfcldr x7, [x0+96]
00040e00sub x8, x5, x2
00040e04sub x2, x4, x2
00040e08sub x2, x2, 1
00040e0csub x2, xzr, x2
00040e10sbfm x2, x2, 63, 63
00040e14and x2, x2, x6, lsl #3
00040e18add x2, x2, x7
00040e1csub x4, x8, 1
00040e20ldrb w6, [sp+225]
00040e24tbnz w6, 0, 0x40e30
00040e28mov x6, xzr
00040e2cb 0x4109c
00040e30
00040e30loc_40e30:
00040e30cbz x4, 0x41050
00040e34ubfm x1, x4, 61, 60
00040e38mov x0, x2
00040e3cbl runtime.memclrNoHeapPointers
00040e40ldr x0, [sp+200]
00040e44ldr x1, [sp+72]
00040e48ldr x3, [sp+176]
00040e4cldr x5, [sp+128]
00040e50b 0x41050
00040e54
00040e54loc_40e54:
00040e54ldr x0, [sp+200]
00040e58ldr x2, [x0+104]
00040e5csubs xzr, x1, x2
00040e60b.hs 0x41044
00040e64ldr x2, [x0+96]
00040e68ldr x2, [x2+3*x1]
00040e6cstr x2, [sp+56]
00040e70bl runtime.(*pageAlloc).chunkOf
00040e74ldrsb x27, [x0]
00040e78bl runtime.(*pallocBits).summarize
00040e7cldr x2, [sp+56]
00040e80subs xzr, x0, x2
00040e84b.eq 0x40ea8
00040e88ldr x3, [sp+200]
00040e8cldr x1, [x3+104]
00040e90ldr x4, [sp+80]
00040e94subs xzr, x4, x1
00040e98b.hs 0x4103c
00040e9cldr x5, [x3+96]
00040ea0str x0, [x5+3*x4]
00040ea4b 0x40eb4
00040ea8
00040ea8loc_40ea8:
00040ea8ldur x29, [sp-8]
00040eacldr x30, [sp], 192
00040eb0ret x30
00040eb4
00040eb4loc_40eb4:
00040eb4ldr x1, [sp+208]
00040eb8ldr x2, [sp+160]
00040ebcorr x0, xzr, 3
00040ec0orr x4, xzr, 1
00040ec4b 0x40ee0
00040ec8
00040ec8loc_40ec8:
00040ec8sub x0, x4, 1
00040eccldr x1, [sp+208]
00040ed0ldr x6, [sp+160]
00040ed4mov x3, x5
00040ed8mov x4, x2
00040edcmov x2, x6
00040ee0
00040ee0loc_40ee0:
00040ee0tbnz x0, 63, 0x40f30
00040ee4tbz w4, 0, 0x40f30
00040ee8str x0, [sp+104]
00040eecadd x3, x0, 1
00040ef0adrp x4, 0x982000
00040ef4add x4, x4, 2272
00040ef8ldr x4, [x4+3*x3]
00040efcstr x4, [sp+96]
00040f00adrp x4, 0x982000
00040f04add x4, x4, 2400
00040f08ldr x3, [x4+3*x3]
00040f0cstr x3, [sp+88]
00040f10bl runtime.addrsToSummaryRange
00040f14str x1, [sp+120]
00040f18ldr x3, [sp+96]
00040f1cldr x4, [sp+104]
00040f20ldr x5, [sp+200]
00040f24ldr x6, [sp+88]
00040f28mov x2, xzr
00040f2cb 0x40f60
00040f30
00040f30loc_40f30:
00040f30ldur x29, [sp-8]
00040f34ldr x30, [sp], 192
00040f38ret x30
00040f3c
00040f3cloc_40f3c:
00040f3cldr x3, [sp+96]
00040f40ldr x7, [sp+104]
00040f44ldr x1, [sp+120]
00040f48ldr x6, [sp+88]
00040f4cldr x8, [sp+144]
00040f50mov x4, x7
00040f54ldr x5, [sp+200]
00040f58mov x2, x0
00040f5cmov x0, x8
00040f60
00040f60loc_40f60:
00040f60subs xzr, x1, x0
00040f64b.le 0x40ec8
00040f68add x7, x4, x4, lsl #1
00040f6cubfm x8, x7, 61, 60
00040f70add x8, x8, 24
00040f74add x9, x5, x8
00040f78ldr x9, [x9+16]
00040f7cadd x10, x0, 1
00040f80lslv x11, x10, x3
00040f84ldr x8, [x5+x8]
00040f88lslv x12, x0, x3
00040f8csubs xzr, x3, 64
00040f90csel x11, x11, xzr, lo
00040f94subs xzr, x11, x9
00040f98b.hi 0x41030
00040f9csubs xzr, x3, 64
00040fa0csel x12, x12, xzr, lo
00040fa4subs xzr, x11, x12
00040fa8b.lo 0x41024
00040facstr x7, [sp+152]
00040fb0str x0, [sp+112]
00040fb4str x10, [sp+144]
00040fb8strb w2, [sp+55]
00040fbcsub x2, x9, x12
00040fc0sub x1, x11, x12
00040fc4sub x4, xzr, x2
00040fc8sbfm x4, x4, 63, 63
00040fccand x4, x4, x12, lsl #3
00040fd0add x0, x8, x4
00040fd4mov x3, x6
00040fd8bl runtime.mergeSummaries
00040fdcldr x4, [sp+200]
00040fe0ldr x5, [sp+152]
00040fe4add x6, x4, x5, lsl #3
00040fe8ldr x1, [x6+8]
00040fecldr x5, [x4+3*x5]
00040ff0ldr x6, [sp+112]
00040ff4subs xzr, x6, x1
00040ff8b.hs 0x4101c
00040ffcldr x7, [x5+3*x6]
00041000subs xzr, x0, x7
00041004b.eq 0x41014
00041008str x0, [x5+3*x6]
0004100corr x0, xzr, 1
00041010b 0x40f3c
00041014
00041014loc_41014:
00041014ldrb w0, [sp+55]
00041018b 0x40f3c
0004101c
0004101cloc_4101c:
0004101cmov x0, x6
00041020bl runtime.panicIndex
00041024
00041024loc_41024:
00041024mov x0, x12
00041028mov x1, x11
0004102cbl runtime.panicSliceB
00041030
00041030loc_41030:
00041030mov x1, x11
00041034mov x2, x9
00041038bl runtime.panicSliceAcap
0004103c
0004103cloc_4103c:
0004103cmov x0, x4
00041040bl runtime.panicIndexU
00041044
00041044loc_41044:
00041044mov x0, x1
00041048mov x1, x2
0004104cbl runtime.panicIndexU
00041050
00041050loc_41050:
00041050mov x1, x5
00041054bl runtime.(*pageAlloc).chunkOf
00041058ldrsb x27, [x0]
0004105cbl runtime.(*pallocBits).summarize
00041060ldr x2, [sp+128]
00041064ldr x1, [sp+72]
00041068subs xzr, x2, x1
0004106cb.hs 0x41080
00041070ldr x3, [sp+176]
00041074str x0, [x3+3*x2]
00041078
00041078loc_41078:
00041078ldr x3, [sp+200]
0004107cb 0x40eb4
00041080
00041080loc_41080:
00041080mov x0, x2
00041084bl runtime.panicIndexU
00041088
00041088loc_41088:
00041088movz x7, 512
0004108cmovk x7, 0x40000000
00041090movk x7, 0x8000000000000
00041094str x7, [x2+3*x6]
00041098add x6, x6, 1
0004109c
0004109cloc_4109c:
0004109csubs xzr, x6, x4
000410a0b.lt 0x41088
000410a4b 0x41050
000410a8
000410a8loc_410a8:
000410a8mov x0, x6
000410acmov x1, x5
000410b0bl runtime.panicSliceBU
000410b4
000410b4loc_410b4:
000410b4mov x1, x5
000410b8mov x2, x4
000410bcbl runtime.panicSliceAcapU
000410c0
000410c0loc_410c0:
000410c0mov x0, x2
000410c4bl runtime.panicIndexU
000410c8
000410c8loc_410c8:
000410c8ldr x5, [sp+168]
000410ccstr x0, [x5+3*x2]
000410d0add x6, x2, 1
000410d4ldr x0, [sp+128]
000410d8ldr x3, [sp+200]
000410dcmov x4, x1
000410e0mov x1, x6
000410e4
000410e4loc_410e4:
000410e4subs xzr, x0, x1
000410e8b.lo 0x41078
000410ecstr x1, [sp+136]
000410f0mov x0, x3
000410f4bl runtime.(*pageAlloc).chunkOf
000410f8ldrsb x27, [x0]
000410fcbl runtime.(*pallocBits).summarize
00041100ldr x2, [sp+136]
00041104ldr x1, [sp+64]
00041108subs xzr, x2, x1
0004110cb.lo 0x410c8
00041110mov x0, x2
00041114bl runtime.panicIndexU
00041118hint
0004111c
0004111cloc_4111c:
0004111cstp x0, x1, [sp+8]
00041120str x2, [sp+24]
00041124strb w3, [sp+32]
00041128strb w4, [sp+33]
0004112cmov x3, x30
00041130bl runtime.morestack_noctxt.abi0
00041134ldp x0, x1, [sp+8]
00041138ldr x2, [sp+24]
0004113cldrb w3, [sp+32]
00041140ldrb w4, [sp+33]
00041144b 0x40d10
00041148udf 0
0004114cudf 0
00040d10
00040d10runtime.(*pageAlloc).update: ; void runtime.(*pageAlloc).update(runtime.pageAlloc * p, uintptr base, uintptr npages, bool contig, bool alloc)
00040d10ldr x16, [x28+16]
00040d14sub x17, sp, 64
00040d18subs xzr, x17, x16
00040d1cb.ls 0x4111c
00040d20str x30, [sp-192]!
00040d24stur x29, [sp-8]
00040d28sub x29, sp, 8
00040d2cstr x0, [sp+200]
00040d30str x1, [sp+208]
00040d34str x2, [sp+216]
00040d38strb w3, [sp+224]
00040d3cstrb w4, [sp+225]
00040d40ldrsb x27, [x0]
00040d44add x27, x0, 0x10000
00040d48ldr x0, [x27+280]
00040d4cbl runtime.assertLockHeld
00040d50ldr x0, [sp+208]
00040d54bl runtime.chunkIndex
00040d58str x0, [sp+80]
00040d5cldr x1, [sp+208]
00040d60ldr x2, [sp+216]
00040d64add x1, x1, x2, lsl #13
00040d68str x1, [sp+160]
00040d6csub x0, x1, 1
00040d70bl runtime.chunkIndex
00040d74ldr x1, [sp+80]
00040d78subs xzr, x0, x1
00040d7cb.eq 0x40e54
00040d80str x0, [sp+128]
00040d84ldrb w2, [sp+224]
00040d88tbnz w2, 0, 0x40da4
00040d8cldr x3, [sp+200]
00040d90ldr x4, [x3+104]
00040d94str x4, [sp+64]
00040d98ldr x5, [x3+96]
00040d9cstr x5, [sp+168]
00040da0b 0x410e4
00040da4
00040da4loc_40da4:
00040da4ldr x0, [sp+200]
00040da8ldr x2, [x0+104]
00040dacstr x2, [sp+72]
00040db0ldr x2, [x0+96]
00040db4str x2, [sp+176]
00040db8bl runtime.(*pageAlloc).chunkOf
00040dbcldrsb x27, [x0]
00040dc0bl runtime.(*pallocBits).summarize
00040dc4ldr x2, [sp+80]
00040dc8ldr x1, [sp+72]
00040dccsubs xzr, x2, x1
00040dd0b.hs 0x410c0
00040dd4ldr x3, [sp+176]
00040dd8str x0, [x3+3*x2]
00040ddcldr x0, [sp+200]
00040de0ldr x4, [x0+112]
00040de4ldr x5, [sp+128]
00040de8subs xzr, x5, x4
00040decb.hi 0x410b4
00040df0add x6, x2, 1
00040df4subs xzr, x5, x6
00040df8b.lo 0x410a8
00040dfcldr x7, [x0+96]
00040e00sub x8, x5, x2
00040e04sub x2, x4, x2
00040e08sub x2, x2, 1
00040e0csub x2, xzr, x2
00040e10sbfm x2, x2, 63, 63
00040e14and x2, x2, x6, lsl #3
00040e18add x2, x2, x7
00040e1csub x4, x8, 1
00040e20ldrb w6, [sp+225]
00040e24tbnz w6, 0, 0x40e30
00040e28mov x6, xzr
00040e2cb 0x4109c
00040e30
00040e30loc_40e30:
00040e30cbz x4, 0x41050
00040e34ubfm x1, x4, 61, 60
00040e38mov x0, x2
00040e3cbl runtime.memclrNoHeapPointers
00040e40ldr x0, [sp+200]
00040e44ldr x1, [sp+72]
00040e48ldr x3, [sp+176]
00040e4cldr x5, [sp+128]
00040e50b 0x41050
00040e54
00040e54loc_40e54:
00040e54ldr x0, [sp+200]
00040e58ldr x2, [x0+104]
00040e5csubs xzr, x1, x2
00040e60b.hs 0x41044
00040e64ldr x2, [x0+96]
00040e68ldr x2, [x2+3*x1]
00040e6cstr x2, [sp+56]
00040e70bl runtime.(*pageAlloc).chunkOf
00040e74ldrsb x27, [x0]
00040e78bl runtime.(*pallocBits).summarize
00040e7cldr x2, [sp+56]
00040e80subs xzr, x0, x2
00040e84b.eq 0x40ea8
00040e88ldr x3, [sp+200]
00040e8cldr x1, [x3+104]
00040e90ldr x4, [sp+80]
00040e94subs xzr, x4, x1
00040e98b.hs 0x4103c
00040e9cldr x5, [x3+96]
00040ea0str x0, [x5+3*x4]
00040ea4b 0x40eb4
00040ea8
00040ea8loc_40ea8:
00040ea8ldur x29, [sp-8]
00040eacldr x30, [sp], 192
00040eb0ret x30
00040eb4
00040eb4loc_40eb4:
00040eb4ldr x1, [sp+208]
00040eb8ldr x2, [sp+160]
00040ebcorr x0, xzr, 3
00040ec0orr x4, xzr, 1
00040ec4b 0x40ee0
00040ec8
00040ec8loc_40ec8:
00040ec8sub x0, x4, 1
00040eccldr x1, [sp+208]
00040ed0ldr x6, [sp+160]
00040ed4mov x3, x5
00040ed8mov x4, x2
00040edcmov x2, x6
00040ee0
00040ee0loc_40ee0:
00040ee0tbnz x0, 63, 0x40f30
00040ee4tbz w4, 0, 0x40f30
00040ee8str x0, [sp+104]
00040eecadd x3, x0, 1
00040ef0adrp x4, 0x982000
00040ef4add x4, x4, 2272
00040ef8ldr x4, [x4+3*x3]
00040efcstr x4, [sp+96]
00040f00adrp x4, 0x982000
00040f04add x4, x4, 2400
00040f08ldr x3, [x4+3*x3]
00040f0cstr x3, [sp+88]
00040f10bl runtime.addrsToSummaryRange
00040f14str x1, [sp+120]
00040f18ldr x3, [sp+96]
00040f1cldr x4, [sp+104]
00040f20ldr x5, [sp+200]
00040f24ldr x6, [sp+88]
00040f28mov x2, xzr
00040f2cb 0x40f60
00040f30
00040f30loc_40f30:
00040f30ldur x29, [sp-8]
00040f34ldr x30, [sp], 192
00040f38ret x30
00040f3c
00040f3cloc_40f3c:
00040f3cldr x3, [sp+96]
00040f40ldr x7, [sp+104]
00040f44ldr x1, [sp+120]
00040f48ldr x6, [sp+88]
00040f4cldr x8, [sp+144]
00040f50mov x4, x7
00040f54ldr x5, [sp+200]
00040f58mov x2, x0
00040f5cmov x0, x8
00040f60
00040f60loc_40f60:
00040f60subs xzr, x1, x0
00040f64b.le 0x40ec8
00040f68add x7, x4, x4, lsl #1
00040f6cubfm x8, x7, 61, 60
00040f70add x8, x8, 24
00040f74add x9, x5, x8
00040f78ldr x9, [x9+16]
00040f7cadd x10, x0, 1
00040f80lslv x11, x10, x3
00040f84ldr x8, [x5+x8]
00040f88lslv x12, x0, x3
00040f8csubs xzr, x3, 64
00040f90csel x11, x11, xzr, lo
00040f94subs xzr, x11, x9
00040f98b.hi 0x41030
00040f9csubs xzr, x3, 64
00040fa0csel x12, x12, xzr, lo
00040fa4subs xzr, x11, x12
00040fa8b.lo 0x41024
00040facstr x7, [sp+152]
00040fb0str x0, [sp+112]
00040fb4str x10, [sp+144]
00040fb8strb w2, [sp+55]
00040fbcsub x2, x9, x12
00040fc0sub x1, x11, x12
00040fc4sub x4, xzr, x2
00040fc8sbfm x4, x4, 63, 63
00040fccand x4, x4, x12, lsl #3
00040fd0add x0, x8, x4
00040fd4mov x3, x6
00040fd8bl runtime.mergeSummaries
00040fdcldr x4, [sp+200]
00040fe0ldr x5, [sp+152]
00040fe4add x6, x4, x5, lsl #3
00040fe8ldr x1, [x6+8]
00040fecldr x5, [x4+3*x5]
00040ff0ldr x6, [sp+112]
00040ff4subs xzr, x6, x1
00040ff8b.hs 0x4101c
00040ffcldr x7, [x5+3*x6]
00041000subs xzr, x0, x7
00041004b.eq 0x41014
00041008str x0, [x5+3*x6]
0004100corr x0, xzr, 1
00041010b 0x40f3c
00041014
00041014loc_41014:
00041014ldrb w0, [sp+55]
00041018b 0x40f3c
0004101c
0004101cloc_4101c:
0004101cmov x0, x6
00041020bl runtime.panicIndex
00041024
00041024loc_41024:
00041024mov x0, x12
00041028mov x1, x11
0004102cbl runtime.panicSliceB
00041030
00041030loc_41030:
00041030mov x1, x11
00041034mov x2, x9
00041038bl runtime.panicSliceAcap
0004103c
0004103cloc_4103c:
0004103cmov x0, x4
00041040bl runtime.panicIndexU
00041044
00041044loc_41044:
00041044mov x0, x1
00041048mov x1, x2
0004104cbl runtime.panicIndexU
00041050
00041050loc_41050:
00041050mov x1, x5
00041054bl runtime.(*pageAlloc).chunkOf
00041058ldrsb x27, [x0]
0004105cbl runtime.(*pallocBits).summarize
00041060ldr x2, [sp+128]
00041064ldr x1, [sp+72]
00041068subs xzr, x2, x1
0004106cb.hs 0x41080
00041070ldr x3, [sp+176]
00041074str x0, [x3+3*x2]
00041078
00041078loc_41078:
00041078ldr x3, [sp+200]
0004107cb 0x40eb4
00041080
00041080loc_41080:
00041080mov x0, x2
00041084bl runtime.panicIndexU
00041088
00041088loc_41088:
00041088movz x7, 512
0004108cmovk x7, 0x40000000
00041090movk x7, 0x8000000000000
00041094str x7, [x2+3*x6]
00041098add x6, x6, 1
0004109c
0004109cloc_4109c:
0004109csubs xzr, x6, x4
000410a0b.lt 0x41088
000410a4b 0x41050
000410a8
000410a8loc_410a8:
000410a8mov x0, x6
000410acmov x1, x5
000410b0bl runtime.panicSliceBU
000410b4
000410b4loc_410b4:
000410b4mov x1, x5
000410b8mov x2, x4
000410bcbl runtime.panicSliceAcapU
000410c0
000410c0loc_410c0:
000410c0mov x0, x2
000410c4bl runtime.panicIndexU
000410c8
000410c8loc_410c8:
000410c8ldr x5, [sp+168]
000410ccstr x0, [x5+3*x2]
000410d0add x6, x2, 1
000410d4ldr x0, [sp+128]
000410d8ldr x3, [sp+200]
000410dcmov x4, x1
000410e0mov x1, x6
000410e4
000410e4loc_410e4:
000410e4subs xzr, x0, x1
000410e8b.lo 0x41078
000410ecstr x1, [sp+136]
000410f0mov x0, x3
000410f4bl runtime.(*pageAlloc).chunkOf
000410f8ldrsb x27, [x0]
000410fcbl runtime.(*pallocBits).summarize
00041100ldr x2, [sp+136]
00041104ldr x1, [sp+64]
00041108subs xzr, x2, x1
0004110cb.lo 0x410c8
00041110mov x0, x2
00041114bl runtime.panicIndexU
00041118hint
0004111c
0004111cloc_4111c:
0004111cstp x0, x1, [sp+8]
00041120str x2, [sp+24]
00041124strb w3, [sp+32]
00041128strb w4, [sp+33]
0004112cmov x3, x30
00041130bl runtime.morestack_noctxt.abi0
00041134ldp x0, x1, [sp+8]
00041138ldr x2, [sp+24]
0004113cldrb w3, [sp+32]
00041140ldrb w4, [sp+33]
00041144b 0x40d10
00041148udf 0
0004114cudf 0
00040d10
Loading..