File sliver_83cb34f62800fed14e14547c39337aab8e0427fe2c6310a3fb40ce0ac36168c9.elf
Function:
Loading..
000242c0
000242c0runtime.buildTypeAssertCache.func1: ; void runtime.buildTypeAssertCache.func1(internal/abi.Type * typ, internal/abi.ITab * tab)
000242c0ldr x16, [x28+16]
000242c4subs xzr, sp, x16
000242c8b.ls 0x24338
000242ccstr x30, [sp-32]!
000242d0stur x29, [sp-8]
000242d4sub x29, sp, 8
000242d8ldr x2, [x26+8]
000242dcldr w3, [x0+16]
000242e0sub x2, x2, 1
000242e4ldr x4, [x26+16]
000242e8ldr x5, [x26+24]
000242ecand x3, x2, x3
000242f0b 0x242fc
000242f4
000242f4loc_242f4:
000242f4add x6, x3, 1
000242f8and x3, x6, x2
000242fc
000242fcloc_242fc:
000242fcsubs xzr, x3, x5
00024300b.hs 0x24328
00024304ubfm x6, x3, 60, 59
00024308add x7, x4, x3, lsl #4
0002430cldr x8, [x4+x6]
00024310cbnz x8, 0x242f4
00024314str x0, [x4+x6]
00024318str x1, [x7+8]
0002431cldur x29, [sp-8]
00024320ldr x30, [sp], 32
00024324ret x30
00024328
00024328loc_24328:
00024328mov x0, x3
0002432cmov x1, x5
00024330bl runtime.panicIndex
00024334hint
00024338
00024338loc_24338:
00024338stp x0, x1, [sp+8]
0002433cmov x3, x30
00024340bl runtime.morestack.abi0
00024344ldp x0, x1, [sp+8]
00024348b 0x242c0
0002434cudf 0
000242c0
000242c0runtime.buildTypeAssertCache.func1: ; void runtime.buildTypeAssertCache.func1(internal/abi.Type * typ, internal/abi.ITab * tab)
000242c0ldr x16, [x28+16]
000242c4subs xzr, sp, x16
000242c8b.ls 0x24338
000242ccstr x30, [sp-32]!
000242d0stur x29, [sp-8]
000242d4sub x29, sp, 8
000242d8ldr x2, [x26+8]
000242dcldr w3, [x0+16]
000242e0sub x2, x2, 1
000242e4ldr x4, [x26+16]
000242e8ldr x5, [x26+24]
000242ecand x3, x2, x3
000242f0b 0x242fc
000242f4
000242f4loc_242f4:
000242f4add x6, x3, 1
000242f8and x3, x6, x2
000242fc
000242fcloc_242fc:
000242fcsubs xzr, x3, x5
00024300b.hs 0x24328
00024304ubfm x6, x3, 60, 59
00024308add x7, x4, x3, lsl #4
0002430cldr x8, [x4+x6]
00024310cbnz x8, 0x242f4
00024314str x0, [x4+x6]
00024318str x1, [x7+8]
0002431cldur x29, [sp-8]
00024320ldr x30, [sp], 32
00024324ret x30
00024328
00024328loc_24328:
00024328mov x0, x3
0002432cmov x1, x5
00024330bl runtime.panicIndex
00024334hint
00024338
00024338loc_24338:
00024338stp x0, x1, [sp+8]
0002433cmov x3, x30
00024340bl runtime.morestack.abi0
00024344ldp x0, x1, [sp+8]
00024348b 0x242c0
0002434cudf 0
000242c0
00024350
00024350runtime.interfaceSwitch: ; void runtime.interfaceSwitch(internal/abi.InterfaceSwitch * s, internal/abi.Type * t)
00024350ldr x16, [x28+16]
00024354subs xzr, sp, x16
00024358b.ls 0x244b4
0002435cstr x30, [sp-96]!
00024360stur x29, [sp-8]
00024364sub x29, sp, 8
00024368ldr x3, [x0+8]
0002436ctbnz x3, 63, 0x244ac
00024370orr x4, xzr, 8
00024374umulh x4, x4, x3
00024378cbnz x4, 0x244a8
0002437cadd x4, x0, 16
00024380mov x5, x4
00024384sub x4, xzr, x4
00024388subs xzr, x4, x3, lsl #3
0002438cb.lo 0x244a8
00024390str x0, [sp+104]
00024394str x1, [sp+112]
00024398str x5, [sp+80]
0002439cstr x3, [sp+48]
000243a0mov x2, xzr
000243a4mov x4, xzr
000243a8b 0x243c8
000243ac
000243acloc_243ac:
000243acldr x6, [sp+56]
000243b0add x2, x6, 1
000243b4ldr x1, [sp+112]
000243b8ldr x3, [sp+48]
000243bcldr x5, [sp+80]
000243c0mov x4, x0
000243c4ldr x0, [sp+104]
000243c8
000243c8loc_243c8:
000243c8subs xzr, x2, x3
000243ccb.ge 0x243ec
000243d0str x2, [sp+56]
000243d4ldr x0, [x5+3*x2]
000243d8orr x2, xzr, 1
000243dcbl runtime.getitab
000243e0cbz x0, 0x243ac
000243e4ldr x3, [sp+56]
000243e8mov x4, x0
000243ec
000243ecloc_243ec:
000243ecstr x4, [sp+64]
000243f0str x3, [sp+56]
000243f4adrp x0, 0x68c000
000243f8add x0, x0, 1492
000243fcmovz x1, 5
00024400bl internal/abi.UseInterfaceSwitchCache
00024404tbz w0, 0, 0x24494
00024408bl runtime.cheaprand
0002440cands wzr, w0, 1023
00024410b.ne 0x24480
00024414ldr x0, [sp+104]
00024418ldar x0, [x0]
0002441cstr x0, [sp+72]
00024420bl runtime.cheaprand
00024424ldr x1, [sp+72]
00024428ldr x2, [x1]
0002442cands wzr, w2, w0
00024430b.eq 0x24448
00024434ldr x0, [sp+56]
00024438ldr x1, [sp+64]
0002443cldur x29, [sp-8]
00024440ldr x30, [sp], 96
00024444ret x30
00024448
00024448loc_24448:
00024448mov x0, x1
0002444cldr x1, [sp+112]
00024450ldr x2, [sp+56]
00024454ldr x3, [sp+64]
00024458bl runtime.buildInterfaceSwitchCache
0002445cldr x1, [sp+72]
00024460mov x2, x0
00024464ldr x0, [sp+104]
00024468bl internal/runtime/atomic.casPointer
0002446cldr x0, [sp+56]
00024470ldr x1, [sp+64]
00024474ldur x29, [sp-8]
00024478ldr x30, [sp], 96
0002447cret x30
00024480
00024480loc_24480:
00024480ldr x0, [sp+56]
00024484ldr x1, [sp+64]
00024488ldur x29, [sp-8]
0002448cldr x30, [sp], 96
00024490ret x30
00024494
00024494loc_24494:
00024494ldr x0, [sp+56]
00024498ldr x1, [sp+64]
0002449cldur x29, [sp-8]
000244a0ldr x30, [sp], 96
000244a4ret x30
000244a8
000244a8loc_244a8:
000244a8bl runtime.panicunsafeslicelen
000244ac
000244acloc_244ac:
000244acbl runtime.panicunsafeslicelen
000244b0hint
000244b4
000244b4loc_244b4:
000244b4stp x0, x1, [sp+8]
000244b8mov x3, x30
000244bcbl runtime.morestack_noctxt.abi0
000244c0ldp x0, x1, [sp+8]
000244c4b 0x24350
000244c8udf 0
000244ccudf 0
00024350
00024350runtime.interfaceSwitch: ; void runtime.interfaceSwitch(internal/abi.InterfaceSwitch * s, internal/abi.Type * t)
00024350ldr x16, [x28+16]
00024354subs xzr, sp, x16
00024358b.ls 0x244b4
0002435cstr x30, [sp-96]!
00024360stur x29, [sp-8]
00024364sub x29, sp, 8
00024368ldr x3, [x0+8]
0002436ctbnz x3, 63, 0x244ac
00024370orr x4, xzr, 8
00024374umulh x4, x4, x3
00024378cbnz x4, 0x244a8
0002437cadd x4, x0, 16
00024380mov x5, x4
00024384sub x4, xzr, x4
00024388subs xzr, x4, x3, lsl #3
0002438cb.lo 0x244a8
00024390str x0, [sp+104]
00024394str x1, [sp+112]
00024398str x5, [sp+80]
0002439cstr x3, [sp+48]
000243a0mov x2, xzr
000243a4mov x4, xzr
000243a8b 0x243c8
000243ac
000243acloc_243ac:
000243acldr x6, [sp+56]
000243b0add x2, x6, 1
000243b4ldr x1, [sp+112]
000243b8ldr x3, [sp+48]
000243bcldr x5, [sp+80]
000243c0mov x4, x0
000243c4ldr x0, [sp+104]
000243c8
000243c8loc_243c8:
000243c8subs xzr, x2, x3
000243ccb.ge 0x243ec
000243d0str x2, [sp+56]
000243d4ldr x0, [x5+3*x2]
000243d8orr x2, xzr, 1
000243dcbl runtime.getitab
000243e0cbz x0, 0x243ac
000243e4ldr x3, [sp+56]
000243e8mov x4, x0
000243ec
000243ecloc_243ec:
000243ecstr x4, [sp+64]
000243f0str x3, [sp+56]
000243f4adrp x0, 0x68c000
000243f8add x0, x0, 1492
000243fcmovz x1, 5
00024400bl internal/abi.UseInterfaceSwitchCache
00024404tbz w0, 0, 0x24494
00024408bl runtime.cheaprand
0002440cands wzr, w0, 1023
00024410b.ne 0x24480
00024414ldr x0, [sp+104]
00024418ldar x0, [x0]
0002441cstr x0, [sp+72]
00024420bl runtime.cheaprand
00024424ldr x1, [sp+72]
00024428ldr x2, [x1]
0002442cands wzr, w2, w0
00024430b.eq 0x24448
00024434ldr x0, [sp+56]
00024438ldr x1, [sp+64]
0002443cldur x29, [sp-8]
00024440ldr x30, [sp], 96
00024444ret x30
00024448
00024448loc_24448:
00024448mov x0, x1
0002444cldr x1, [sp+112]
00024450ldr x2, [sp+56]
00024454ldr x3, [sp+64]
00024458bl runtime.buildInterfaceSwitchCache
0002445cldr x1, [sp+72]
00024460mov x2, x0
00024464ldr x0, [sp+104]
00024468bl internal/runtime/atomic.casPointer
0002446cldr x0, [sp+56]
00024470ldr x1, [sp+64]
00024474ldur x29, [sp-8]
00024478ldr x30, [sp], 96
0002447cret x30
00024480
00024480loc_24480:
00024480ldr x0, [sp+56]
00024484ldr x1, [sp+64]
00024488ldur x29, [sp-8]
0002448cldr x30, [sp], 96
00024490ret x30
00024494
00024494loc_24494:
00024494ldr x0, [sp+56]
00024498ldr x1, [sp+64]
0002449cldur x29, [sp-8]
000244a0ldr x30, [sp], 96
000244a4ret x30
000244a8
000244a8loc_244a8:
000244a8bl runtime.panicunsafeslicelen
000244ac
000244acloc_244ac:
000244acbl runtime.panicunsafeslicelen
000244b0hint
000244b4
000244b4loc_244b4:
000244b4stp x0, x1, [sp+8]
000244b8mov x3, x30
000244bcbl runtime.morestack_noctxt.abi0
000244c0ldp x0, x1, [sp+8]
000244c4b 0x24350
000244c8udf 0
000244ccudf 0
00024350
000244d0
000244d0runtime.buildInterfaceSwitchCache: ; void runtime.buildInterfaceSwitchCache(internal/abi.InterfaceSwitchCache * oldC, internal/abi.Type * typ, int case_, internal/abi.ITab * tab)
000244d0ldr x16, [x28+16]
000244d4subs xzr, sp, x16
000244d8b.ls 0x24690
000244dcstr x30, [sp-128]!
000244e0stur x29, [sp-8]
000244e4sub x29, sp, 8
000244e8ldr x4, [x0]
000244ecadd x4, x4, 1
000244f0tbnz x4, 63, 0x24688
000244f4add x5, x4, x4, lsl #1
000244f8orr x6, xzr, 24
000244fcumulh x7, x6, x4
00024500cbnz x7, 0x24684
00024504add x7, x0, 8
00024508mov x8, x7
0002450csub x9, xzr, x7
00024510subs xzr, x9, x5, lsl #3
00024514b.lo 0x24684
00024518mov x0, x4
0002451corr x5, xzr, 1
00024520b 0x2453c
00024524
00024524loc_24524:
00024524mov x9, x7
00024528ldr x10, [x7]
0002452cadd x7, x9, 24
00024530sub x4, x4, 1
00024534subs xzr, x10, 0
00024538cinc x5, x5, ne
0002453c
0002453cloc_2453c:
0002453csubs xzr, x4, 0
00024540b.gt 0x24524
00024544str x1, [sp+144]
00024548str x2, [sp+152]
0002454cstr x3, [sp+160]
00024550str x8, [sp+72]
00024554str x0, [sp+48]
00024558ubfm x3, x5, 63, 62
0002455csub x3, x3, 1
00024560clz x3, x3
00024564orr x4, xzr, 64
00024568sub x3, x4, x3
0002456corr x4, xzr, 1
00024570lslv x4, x4, x3
00024574subs xzr, x3, 64
00024578csel x3, x4, xzr, lo
0002457cstr x3, [sp+32]
00024580sub x3, x3, 1
00024584str x3, [sp+40]
00024588add x3, x3, x3, lsl #1
0002458cubfm x3, x3, 61, 60
00024590add x0, x3, 32
00024594mov x1, xzr
00024598orr x2, xzr, 1
0002459cbl runtime.mallocgc
000245a0ldr x3, [sp+40]
000245a4str x3, [x0]
000245a8ldr x1, [sp+32]
000245actbnz x1, 63, 0x24680
000245b0add x3, x1, x1, lsl #1
000245b4orr x4, xzr, 24
000245b8umulh x4, x1, x4
000245bccbnz x4, 0x2467c
000245c0add x4, x0, 8
000245c4mov x5, x4
000245c8sub x4, xzr, x4
000245ccsubs xzr, x4, x3, lsl #3
000245d0b.lo 0x2467c
000245d4str x0, [sp+64]
000245d8stp xzr, xzr, [sp+80]
000245dcstp xzr, xzr, [sp+96]
000245e0str xzr, [sp+112]
000245e4adrp x3, 0
000245e8add x3, x3, 1712
000245ecstr x3, [sp+80]
000245f0str x1, [sp+88]
000245f4str x1, [sp+104]
000245f8str x1, [sp+112]
000245fcstr x5, [sp+96]
00024600ldr x3, [sp+72]
00024604ldr x4, [sp+48]
00024608b 0x24614
0002460c
0002460cloc_2460c:
0002460cadd x3, x3, 24
00024610sub x4, x4, 1
00024614
00024614loc_24614:
00024614subs xzr, x4, 0
00024618b.le 0x24654
0002461cldr x5, [x3]
00024620cbz x5, 0x2460c
00024624str x4, [sp+40]
00024628str x3, [sp+56]
0002462cldr x1, [x3+8]
00024630ldr x2, [x3+16]
00024634ldr x3, [sp+80]
00024638mov x0, x5
0002463cadd x26, sp, 80
00024640blr x3
00024644ldr x0, [sp+64]
00024648ldr x3, [sp+56]
0002464cldr x4, [sp+40]
00024650b 0x2460c
00024654
00024654loc_24654:
00024654ldr x3, [sp+80]
00024658ldr x0, [sp+144]
0002465cldr x1, [sp+152]
00024660ldr x2, [sp+160]
00024664add x26, sp, 80
00024668blr x3
0002466cldr x0, [sp+64]
00024670ldur x29, [sp-8]
00024674ldr x30, [sp], 128
00024678ret x30
0002467c
0002467cloc_2467c:
0002467cbl runtime.panicunsafeslicelen
00024680
00024680loc_24680:
00024680bl runtime.panicunsafeslicelen
00024684
00024684loc_24684:
00024684bl runtime.panicunsafeslicelen
00024688
00024688loc_24688:
00024688bl runtime.panicunsafeslicelen
0002468chint
00024690
00024690loc_24690:
00024690stp x0, x1, [sp+8]
00024694stp x2, x3, [sp+24]
00024698mov x3, x30
0002469cbl runtime.morestack_noctxt.abi0
000246a0ldp x0, x1, [sp+8]
000246a4ldp x2, x3, [sp+24]
000246a8b 0x244d0
000246acudf 0
000244d0
000244d0runtime.buildInterfaceSwitchCache: ; void runtime.buildInterfaceSwitchCache(internal/abi.InterfaceSwitchCache * oldC, internal/abi.Type * typ, int case_, internal/abi.ITab * tab)
000244d0ldr x16, [x28+16]
000244d4subs xzr, sp, x16
000244d8b.ls 0x24690
000244dcstr x30, [sp-128]!
000244e0stur x29, [sp-8]
000244e4sub x29, sp, 8
000244e8ldr x4, [x0]
000244ecadd x4, x4, 1
000244f0tbnz x4, 63, 0x24688
000244f4add x5, x4, x4, lsl #1
000244f8orr x6, xzr, 24
000244fcumulh x7, x6, x4
00024500cbnz x7, 0x24684
00024504add x7, x0, 8
00024508mov x8, x7
0002450csub x9, xzr, x7
00024510subs xzr, x9, x5, lsl #3
00024514b.lo 0x24684
00024518mov x0, x4
0002451corr x5, xzr, 1
00024520b 0x2453c
00024524
00024524loc_24524:
00024524mov x9, x7
00024528ldr x10, [x7]
0002452cadd x7, x9, 24
00024530sub x4, x4, 1
00024534subs xzr, x10, 0
00024538cinc x5, x5, ne
0002453c
0002453cloc_2453c:
0002453csubs xzr, x4, 0
00024540b.gt 0x24524
00024544str x1, [sp+144]
00024548str x2, [sp+152]
0002454cstr x3, [sp+160]
00024550str x8, [sp+72]
00024554str x0, [sp+48]
00024558ubfm x3, x5, 63, 62
0002455csub x3, x3, 1
00024560clz x3, x3
00024564orr x4, xzr, 64
00024568sub x3, x4, x3
0002456corr x4, xzr, 1
00024570lslv x4, x4, x3
00024574subs xzr, x3, 64
00024578csel x3, x4, xzr, lo
0002457cstr x3, [sp+32]
00024580sub x3, x3, 1
00024584str x3, [sp+40]
00024588add x3, x3, x3, lsl #1
0002458cubfm x3, x3, 61, 60
00024590add x0, x3, 32
00024594mov x1, xzr
00024598orr x2, xzr, 1
0002459cbl runtime.mallocgc
000245a0ldr x3, [sp+40]
000245a4str x3, [x0]
000245a8ldr x1, [sp+32]
000245actbnz x1, 63, 0x24680
000245b0add x3, x1, x1, lsl #1
000245b4orr x4, xzr, 24
000245b8umulh x4, x1, x4
000245bccbnz x4, 0x2467c
000245c0add x4, x0, 8
000245c4mov x5, x4
000245c8sub x4, xzr, x4
000245ccsubs xzr, x4, x3, lsl #3
000245d0b.lo 0x2467c
000245d4str x0, [sp+64]
000245d8stp xzr, xzr, [sp+80]
000245dcstp xzr, xzr, [sp+96]
000245e0str xzr, [sp+112]
000245e4adrp x3, 0
000245e8add x3, x3, 1712
000245ecstr x3, [sp+80]
000245f0str x1, [sp+88]
000245f4str x1, [sp+104]
000245f8str x1, [sp+112]
000245fcstr x5, [sp+96]
00024600ldr x3, [sp+72]
00024604ldr x4, [sp+48]
00024608b 0x24614
0002460c
0002460cloc_2460c:
0002460cadd x3, x3, 24
00024610sub x4, x4, 1
00024614
00024614loc_24614:
00024614subs xzr, x4, 0
00024618b.le 0x24654
0002461cldr x5, [x3]
00024620cbz x5, 0x2460c
00024624str x4, [sp+40]
00024628str x3, [sp+56]
0002462cldr x1, [x3+8]
00024630ldr x2, [x3+16]
00024634ldr x3, [sp+80]
00024638mov x0, x5
0002463cadd x26, sp, 80
00024640blr x3
00024644ldr x0, [sp+64]
00024648ldr x3, [sp+56]
0002464cldr x4, [sp+40]
00024650b 0x2460c
00024654
00024654loc_24654:
00024654ldr x3, [sp+80]
00024658ldr x0, [sp+144]
0002465cldr x1, [sp+152]
00024660ldr x2, [sp+160]
00024664add x26, sp, 80
00024668blr x3
0002466cldr x0, [sp+64]
00024670ldur x29, [sp-8]
00024674ldr x30, [sp], 128
00024678ret x30
0002467c
0002467cloc_2467c:
0002467cbl runtime.panicunsafeslicelen
00024680
00024680loc_24680:
00024680bl runtime.panicunsafeslicelen
00024684
00024684loc_24684:
00024684bl runtime.panicunsafeslicelen
00024688
00024688loc_24688:
00024688bl runtime.panicunsafeslicelen
0002468chint
00024690
00024690loc_24690:
00024690stp x0, x1, [sp+8]
00024694stp x2, x3, [sp+24]
00024698mov x3, x30
0002469cbl runtime.morestack_noctxt.abi0
000246a0ldp x0, x1, [sp+8]
000246a4ldp x2, x3, [sp+24]
000246a8b 0x244d0
000246acudf 0
000244d0
000246b0
000246b0runtime.buildInterfaceSwitchCache.func1: ; void runtime.buildInterfaceSwitchCache.func1(internal/abi.Type * typ, int case_, internal/abi.ITab * tab)
000246b0ldr x16, [x28+16]
000246b4subs xzr, sp, x16
000246b8b.ls 0x2472c
000246bcstr x30, [sp-32]!
000246c0stur x29, [sp-8]
000246c4sub x29, sp, 8
000246c8ldr x3, [x26+8]
000246ccldr w4, [x0+16]
000246d0sub x3, x3, 1
000246d4ldr x5, [x26+24]
000246d8ldr x6, [x26+16]
000246dcand x4, x3, x4
000246e0b 0x246ec
000246e4
000246e4loc_246e4:
000246e4add x7, x4, 1
000246e8and x4, x7, x3
000246ec
000246ecloc_246ec:
000246ecsubs xzr, x4, x5
000246f0b.hs 0x2471c
000246f4sub x7, x4, x4, lsl #2
000246f8sub x7, x6, x7, lsl #3
000246fcldr x8, [x7]
00024700cbnz x8, 0x246e4
00024704str x0, [x7]
00024708str x1, [x7+8]
0002470cstr x2, [x7+16]
00024710ldur x29, [sp-8]
00024714ldr x30, [sp], 32
00024718ret x30
0002471c
0002471cloc_2471c:
0002471cmov x0, x4
00024720mov x1, x5
00024724bl runtime.panicIndex
00024728hint
0002472c
0002472cloc_2472c:
0002472cstp x0, x1, [sp+8]
00024730str x2, [sp+24]
00024734mov x3, x30
00024738bl runtime.morestack.abi0
0002473cldp x0, x1, [sp+8]
00024740ldr x2, [sp+24]
00024744b 0x246b0
00024748udf 0
0002474cudf 0
000246b0
000246b0runtime.buildInterfaceSwitchCache.func1: ; void runtime.buildInterfaceSwitchCache.func1(internal/abi.Type * typ, int case_, internal/abi.ITab * tab)
000246b0ldr x16, [x28+16]
000246b4subs xzr, sp, x16
000246b8b.ls 0x2472c
000246bcstr x30, [sp-32]!
000246c0stur x29, [sp-8]
000246c4sub x29, sp, 8
000246c8ldr x3, [x26+8]
000246ccldr w4, [x0+16]
000246d0sub x3, x3, 1
000246d4ldr x5, [x26+24]
000246d8ldr x6, [x26+16]
000246dcand x4, x3, x4
000246e0b 0x246ec
000246e4
000246e4loc_246e4:
000246e4add x7, x4, 1
000246e8and x4, x7, x3
000246ec
000246ecloc_246ec:
000246ecsubs xzr, x4, x5
000246f0b.hs 0x2471c
000246f4sub x7, x4, x4, lsl #2
000246f8sub x7, x6, x7, lsl #3
000246fcldr x8, [x7]
00024700cbnz x8, 0x246e4
00024704str x0, [x7]
00024708str x1, [x7+8]
0002470cstr x2, [x7+16]
00024710ldur x29, [sp-8]
00024714ldr x30, [sp], 32
00024718ret x30
0002471c
0002471cloc_2471c:
0002471cmov x0, x4
00024720mov x1, x5
00024724bl runtime.panicIndex
00024728hint
0002472c
0002472cloc_2472c:
0002472cstp x0, x1, [sp+8]
00024730str x2, [sp+24]
00024734mov x3, x30
00024738bl runtime.morestack.abi0
0002473cldp x0, x1, [sp+8]
00024740ldr x2, [sp+24]
00024744b 0x246b0
00024748udf 0
0002474cudf 0
000246b0
00024750
00024750runtime.iterate_itabs: ; void runtime.iterate_itabs(func(*internal/abi.ITab) fn)
00024750ldr x16, [x28+16]
00024754subs xzr, sp, x16
00024758b.ls 0x247d0
0002475cstr x30, [sp-48]!
00024760stur x29, [sp-8]
00024764sub x29, sp, 8
00024768str x0, [sp+56]
0002476cadrp x27, 0x9e8000
00024770ldr x2, [x27+4064]
00024774str x2, [sp+32]
00024778mov x1, xzr
0002477cb 0x24790
00024780
00024780loc_24780:
00024780ldr x3, [sp+24]
00024784add x1, x3, 1
00024788ldr x0, [sp+56]
0002478cldr x2, [sp+32]
00024790
00024790loc_24790:
00024790ldr x3, [x2]
00024794subs xzr, x1, x3
00024798b.hs 0x247c4
0002479cstr x1, [sp+24]
000247a0add x0, x2, 16
000247a4ubfm x1, x1, 61, 60
000247a8bl runtime.add
000247acldr x0, [x0]
000247b0cbz x0, 0x24780
000247b4ldr x26, [sp+56]
000247b8ldr x1, [x26]
000247bcblr x1
000247c0b 0x24780
000247c4
000247c4loc_247c4:
000247c4ldur x29, [sp-8]
000247c8ldr x30, [sp], 48
000247ccret x30
000247d0
000247d0loc_247d0:
000247d0str x0, [sp+8]
000247d4mov x3, x30
000247d8bl runtime.morestack_noctxt.abi0
000247dcldr x0, [sp+8]
000247e0b 0x24750
000247e4udf 0
000247e8udf 0
000247ecudf 0
00024750
00024750runtime.iterate_itabs: ; void runtime.iterate_itabs(func(*internal/abi.ITab) fn)
00024750ldr x16, [x28+16]
00024754subs xzr, sp, x16
00024758b.ls 0x247d0
0002475cstr x30, [sp-48]!
00024760stur x29, [sp-8]
00024764sub x29, sp, 8
00024768str x0, [sp+56]
0002476cadrp x27, 0x9e8000
00024770ldr x2, [x27+4064]
00024774str x2, [sp+32]
00024778mov x1, xzr
0002477cb 0x24790
00024780
00024780loc_24780:
00024780ldr x3, [sp+24]
00024784add x1, x3, 1
00024788ldr x0, [sp+56]
0002478cldr x2, [sp+32]
00024790
00024790loc_24790:
00024790ldr x3, [x2]
00024794subs xzr, x1, x3
00024798b.hs 0x247c4
0002479cstr x1, [sp+24]
000247a0add x0, x2, 16
000247a4ubfm x1, x1, 61, 60
000247a8bl runtime.add
000247acldr x0, [x0]
000247b0cbz x0, 0x24780
000247b4ldr x26, [sp+56]
000247b8ldr x1, [x26]
000247bcblr x1
000247c0b 0x24780
000247c4
000247c4loc_247c4:
000247c4ldur x29, [sp-8]
000247c8ldr x30, [sp], 48
000247ccret x30
000247d0
000247d0loc_247d0:
000247d0str x0, [sp+8]
000247d4mov x3, x30
000247d8bl runtime.morestack_noctxt.abi0
000247dcldr x0, [sp+8]
000247e0b 0x24750
000247e4udf 0
000247e8udf 0
000247ecudf 0
00024750
000247f0
000247f0runtime.unreachableMethod: ; void runtime.unreachableMethod(void)
000247f0ldr x16, [x28+16]
000247f4subs xzr, sp, x16
000247f8b.ls 0x2481c
000247fcstr x30, [sp-32]!
00024800stur x29, [sp-8]
00024804sub x29, sp, 8
00024808adrp x0, 0x69e000
0002480cadd x0, x0, 2544
00024810movz x1, 38
00024814bl runtime.throw
00024818hint
0002481c
0002481cloc_2481c:
0002481cmov x3, x30
00024820bl runtime.morestack_noctxt.abi0
00024824b 0x247f0
00024828udf 0
0002482cudf 0
000247f0
000247f0runtime.unreachableMethod: ; void runtime.unreachableMethod(void)
000247f0ldr x16, [x28+16]
000247f4subs xzr, sp, x16
000247f8b.ls 0x2481c
000247fcstr x30, [sp-32]!
00024800stur x29, [sp-8]
00024804sub x29, sp, 8
00024808adrp x0, 0x69e000
0002480cadd x0, x0, 2544
00024810movz x1, 38
00024814bl runtime.throw
00024818hint
0002481c
0002481cloc_2481c:
0002481cmov x3, x30
00024820bl runtime.morestack_noctxt.abi0
00024824b 0x247f0
00024828udf 0
0002482cudf 0
000247f0
00024830
00024830runtime.(*lfstack).push: ; void runtime.(*lfstack).push(runtime.lfstack * head, runtime.lfnode * node)
00024830ldr x16, [x28+16]
00024834subs xzr, sp, x16
00024838b.ls 0x24960
0002483cstr x30, [sp-64]!
00024840stur x29, [sp-8]
00024844sub x29, sp, 8
00024848str x0, [sp+72]
0002484cstr x1, [sp+80]
00024850ldr x2, [x1+8]
00024854add x2, x2, 1
00024858str x2, [x1+8]
0002485cmov x0, x1
00024860mov x1, x2
00024864bl runtime.lfstackPack
00024868str x0, [sp+32]
0002486cbl runtime.lfstackUnpack
00024870ldr x2, [sp+80]
00024874subs xzr, x0, x2
00024878b.ne 0x248d4
0002487cldr x0, [sp+72]
00024880ldr x1, [sp+32]
00024884
00024884loc_24884:
00024884ldar x3, [x0]
00024888str x3, [x2]
0002488cadrp x27, 0xa27000
00024890ldrb w4, [x27+1516]
00024894tbz w4, 0, 0x248ac
00024898mov x27, x3
0002489ccasal x27, x1, [x0]
000248a0subs xzr, x27, x3
000248a4cset x4, eq
000248a8b 0x248c4
000248ac
000248acloc_248ac:
000248acldaxr x27, [x0]
000248b0subs xzr, x27, x3
000248b4b.ne 0x248c0
000248b8stlxr w27, x1, [x0]
000248bccbnz x27, 0x248ac
000248c0
000248c0loc_248c0:
000248c0cset x4, eq
000248c4
000248c4loc_248c4:
000248c4tbz w4, 0, 0x24884
000248c8ldur x29, [sp-8]
000248ccldr x30, [sp], 64
000248d0ret x30
000248d4
000248d4loc_248d4:
000248d4str x0, [sp+48]
000248d8ldr x0, [x2+8]
000248dcstr x0, [sp+40]
000248e0bl runtime.printlock
000248e4adrp x0, 0x6a2000
000248e8add x0, x0, 1024
000248ecmovz x1, 44
000248f0bl runtime.printstring
000248f4ldr x0, [sp+80]
000248f8bl runtime.printpointer
000248fcadrp x0, 0x68c000
00024900add x0, x0, 1632
00024904movz x1, 5
00024908bl runtime.printstring
0002490cldr x0, [sp+40]
00024910bl runtime.printhex
00024914adrp x0, 0x68d000
00024918add x0, x0, 620
0002491corr x1, xzr, 8
00024920bl runtime.printstring
00024924ldr x0, [sp+32]
00024928bl runtime.printhex
0002492cadrp x0, 0x68d000
00024930add x0, x0, 2785
00024934movz x1, 9
00024938bl runtime.printstring
0002493cldr x0, [sp+48]
00024940bl runtime.printpointer
00024944bl runtime.printnl
00024948bl runtime.printunlock
0002494cadrp x0, 0x68e000
00024950add x0, x0, 3700
00024954orr x1, xzr, 12
00024958bl runtime.throw
0002495chint
00024960
00024960loc_24960:
00024960stp x0, x1, [sp+8]
00024964mov x3, x30
00024968bl runtime.morestack_noctxt.abi0
0002496cldp x0, x1, [sp+8]
00024970b 0x24830
00024974udf 0
00024978udf 0
0002497cudf 0
00024830
00024830runtime.(*lfstack).push: ; void runtime.(*lfstack).push(runtime.lfstack * head, runtime.lfnode * node)
00024830ldr x16, [x28+16]
00024834subs xzr, sp, x16
00024838b.ls 0x24960
0002483cstr x30, [sp-64]!
00024840stur x29, [sp-8]
00024844sub x29, sp, 8
00024848str x0, [sp+72]
0002484cstr x1, [sp+80]
00024850ldr x2, [x1+8]
00024854add x2, x2, 1
00024858str x2, [x1+8]
0002485cmov x0, x1
00024860mov x1, x2
00024864bl runtime.lfstackPack
00024868str x0, [sp+32]
0002486cbl runtime.lfstackUnpack
00024870ldr x2, [sp+80]
00024874subs xzr, x0, x2
00024878b.ne 0x248d4
0002487cldr x0, [sp+72]
00024880ldr x1, [sp+32]
00024884
00024884loc_24884:
00024884ldar x3, [x0]
00024888str x3, [x2]
0002488cadrp x27, 0xa27000
00024890ldrb w4, [x27+1516]
00024894tbz w4, 0, 0x248ac
00024898mov x27, x3
0002489ccasal x27, x1, [x0]
000248a0subs xzr, x27, x3
000248a4cset x4, eq
000248a8b 0x248c4
000248ac
000248acloc_248ac:
000248acldaxr x27, [x0]
000248b0subs xzr, x27, x3
000248b4b.ne 0x248c0
000248b8stlxr w27, x1, [x0]
000248bccbnz x27, 0x248ac
000248c0
000248c0loc_248c0:
000248c0cset x4, eq
000248c4
000248c4loc_248c4:
000248c4tbz w4, 0, 0x24884
000248c8ldur x29, [sp-8]
000248ccldr x30, [sp], 64
000248d0ret x30
000248d4
000248d4loc_248d4:
000248d4str x0, [sp+48]
000248d8ldr x0, [x2+8]
000248dcstr x0, [sp+40]
000248e0bl runtime.printlock
000248e4adrp x0, 0x6a2000
000248e8add x0, x0, 1024
000248ecmovz x1, 44
000248f0bl runtime.printstring
000248f4ldr x0, [sp+80]
000248f8bl runtime.printpointer
000248fcadrp x0, 0x68c000
00024900add x0, x0, 1632
00024904movz x1, 5
00024908bl runtime.printstring
0002490cldr x0, [sp+40]
00024910bl runtime.printhex
00024914adrp x0, 0x68d000
00024918add x0, x0, 620
0002491corr x1, xzr, 8
00024920bl runtime.printstring
00024924ldr x0, [sp+32]
00024928bl runtime.printhex
0002492cadrp x0, 0x68d000
00024930add x0, x0, 2785
00024934movz x1, 9
00024938bl runtime.printstring
0002493cldr x0, [sp+48]
00024940bl runtime.printpointer
00024944bl runtime.printnl
00024948bl runtime.printunlock
0002494cadrp x0, 0x68e000
00024950add x0, x0, 3700
00024954orr x1, xzr, 12
00024958bl runtime.throw
0002495chint
00024960
00024960loc_24960:
00024960stp x0, x1, [sp+8]
00024964mov x3, x30
00024968bl runtime.morestack_noctxt.abi0
0002496cldp x0, x1, [sp+8]
00024970b 0x24830
00024974udf 0
00024978udf 0
0002497cudf 0
00024830
00024980
00024980runtime.(*lfstack).pop: ; void runtime.(*lfstack).pop(runtime.lfstack * head)
00024980ldr x16, [x28+16]
00024984subs xzr, sp, x16
00024988b.ls 0x24a24
0002498cstr x30, [sp-32]!
00024990stur x29, [sp-8]
00024994sub x29, sp, 8
00024998str x0, [sp+40]
0002499cb 0x249a4
000249a0
000249a0loc_249a0:
000249a0mov x0, x3
000249a4
000249a4loc_249a4:
000249a4ldar x1, [x0]
000249a8cbz x1, 0x24a14
000249acstr x1, [sp+16]
000249b0mov x0, x1
000249b4bl runtime.lfstackUnpack
000249b8ldar x1, [x0]
000249bcadrp x27, 0xa27000
000249c0ldrb w2, [x27+1516]
000249c4tbz w2, 0, 0x249e4
000249c8ldr x2, [sp+16]
000249ccldr x3, [sp+40]
000249d0mov x27, x2
000249d4casal x27, x1, [x3]
000249d8subs xzr, x27, x2
000249dccset x4, eq
000249e0b 0x24a04
000249e4
000249e4loc_249e4:
000249e4ldr x2, [sp+16]
000249e8ldr x3, [sp+40]
000249ec
000249ecloc_249ec:
000249ecldaxr x27, [x3]
000249f0subs xzr, x27, x2
000249f4b.ne 0x24a00
000249f8stlxr w27, x1, [x3]
000249fccbnz x27, 0x249ec
00024a00
00024a00loc_24a00:
00024a00cset x4, eq
00024a04
00024a04loc_24a04:
00024a04tbz w4, 0, 0x249a0
00024a08ldur x29, [sp-8]
00024a0cldr x30, [sp], 32
00024a10ret x30
00024a14
00024a14loc_24a14:
00024a14mov x0, xzr
00024a18ldur x29, [sp-8]
00024a1cldr x30, [sp], 32
00024a20ret x30
00024a24
00024a24loc_24a24:
00024a24str x0, [sp+8]
00024a28mov x3, x30
00024a2cbl runtime.morestack_noctxt.abi0
00024a30ldr x0, [sp+8]
00024a34b 0x24980
00024a38udf 0
00024a3cudf 0
00024980
00024980runtime.(*lfstack).pop: ; void runtime.(*lfstack).pop(runtime.lfstack * head)
00024980ldr x16, [x28+16]
00024984subs xzr, sp, x16
00024988b.ls 0x24a24
0002498cstr x30, [sp-32]!
00024990stur x29, [sp-8]
00024994sub x29, sp, 8
00024998str x0, [sp+40]
0002499cb 0x249a4
000249a0
000249a0loc_249a0:
000249a0mov x0, x3
000249a4
000249a4loc_249a4:
000249a4ldar x1, [x0]
000249a8cbz x1, 0x24a14
000249acstr x1, [sp+16]
000249b0mov x0, x1
000249b4bl runtime.lfstackUnpack
000249b8ldar x1, [x0]
000249bcadrp x27, 0xa27000
000249c0ldrb w2, [x27+1516]
000249c4tbz w2, 0, 0x249e4
000249c8ldr x2, [sp+16]
000249ccldr x3, [sp+40]
000249d0mov x27, x2
000249d4casal x27, x1, [x3]
000249d8subs xzr, x27, x2
000249dccset x4, eq
000249e0b 0x24a04
000249e4
000249e4loc_249e4:
000249e4ldr x2, [sp+16]
000249e8ldr x3, [sp+40]
000249ec
000249ecloc_249ec:
000249ecldaxr x27, [x3]
000249f0subs xzr, x27, x2
000249f4b.ne 0x24a00
000249f8stlxr w27, x1, [x3]
000249fccbnz x27, 0x249ec
00024a00
00024a00loc_24a00:
00024a00cset x4, eq
00024a04
00024a04loc_24a04:
00024a04tbz w4, 0, 0x249a0
00024a08ldur x29, [sp-8]
00024a0cldr x30, [sp], 32
00024a10ret x30
00024a14
00024a14loc_24a14:
00024a14mov x0, xzr
00024a18ldur x29, [sp-8]
00024a1cldr x30, [sp], 32
00024a20ret x30
00024a24
00024a24loc_24a24:
00024a24str x0, [sp+8]
00024a28mov x3, x30
00024a2cbl runtime.morestack_noctxt.abi0
00024a30ldr x0, [sp+8]
00024a34b 0x24980
00024a38udf 0
00024a3cudf 0
00024980
00024a40
00024a40runtime.(*lfstack).empty: ; void runtime.(*lfstack).empty(runtime.lfstack * head)
00024a40ldar x1, [x0]
00024a44subs xzr, x1, 0
00024a48cset x0, eq
00024a4cret x30
00024a40
00024a40runtime.(*lfstack).empty: ; void runtime.(*lfstack).empty(runtime.lfstack * head)
00024a40ldar x1, [x0]
00024a44subs xzr, x1, 0
00024a48cset x0, eq
00024a4cret x30
00024a40
00024a50
00024a50runtime.lfnodeValidate: ; void runtime.lfnodeValidate(runtime.lfnode * node)
00024a50ldr x16, [x28+16]
00024a54subs xzr, sp, x16
00024a58b.ls 0x24b00
00024a5cstr x30, [sp-48]!
00024a60stur x29, [sp-8]
00024a64sub x29, sp, 8
00024a68str x0, [sp+56]
00024a6cmov x3, x0
00024a70mov x0, x3
00024a74mov x1, xzr
00024a78mov x2, x1
00024a7cbl runtime.findObject
00024a80cbnz x0, 0x24aec
00024a84ldr x0, [sp+56]
00024a88movn x1, 0
00024a8cbl runtime.lfstackPack
00024a90bl runtime.lfstackUnpack
00024a94ldr x2, [sp+56]
00024a98subs xzr, x0, x2
00024a9cb.ne 0x24aac
00024aa0ldur x29, [sp-8]
00024aa4ldr x30, [sp], 48
00024aa8ret x30
00024aac
00024aacloc_24aac:
00024aacbl runtime.printlock
00024ab0ldr x0, [sp+56]
00024ab4str x0, [sp+32]
00024ab8bl runtime.printlock
00024abcadrp x0, 0x697000
00024ac0add x0, x0, 1892
00024ac4orr x1, xzr, 28
00024ac8bl runtime.printstring
00024accldr x0, [sp+32]
00024ad0bl runtime.printhex
00024ad4bl runtime.printnl
00024ad8bl runtime.printunlock
00024adcadrp x0, 0x691000
00024ae0add x0, x0, 2165
00024ae4movz x1, 18
00024ae8bl runtime.throw
00024aec
00024aecloc_24aec:
00024aecadrp x0, 0x69d000
00024af0add x0, x0, 1057
00024af4movz x1, 36
00024af8bl runtime.throw
00024afchint
00024b00
00024b00loc_24b00:
00024b00str x0, [sp+8]
00024b04mov x3, x30
00024b08bl runtime.morestack_noctxt.abi0
00024b0cldr x0, [sp+8]
00024b10b 0x24a50
00024b14udf 0
00024b18udf 0
00024b1cudf 0
00024a50
00024a50runtime.lfnodeValidate: ; void runtime.lfnodeValidate(runtime.lfnode * node)
00024a50ldr x16, [x28+16]
00024a54subs xzr, sp, x16
00024a58b.ls 0x24b00
00024a5cstr x30, [sp-48]!
00024a60stur x29, [sp-8]
00024a64sub x29, sp, 8
00024a68str x0, [sp+56]
00024a6cmov x3, x0
00024a70mov x0, x3
00024a74mov x1, xzr
00024a78mov x2, x1
00024a7cbl runtime.findObject
00024a80cbnz x0, 0x24aec
00024a84ldr x0, [sp+56]
00024a88movn x1, 0
00024a8cbl runtime.lfstackPack
00024a90bl runtime.lfstackUnpack
00024a94ldr x2, [sp+56]
00024a98subs xzr, x0, x2
00024a9cb.ne 0x24aac
00024aa0ldur x29, [sp-8]
00024aa4ldr x30, [sp], 48
00024aa8ret x30
00024aac
00024aacloc_24aac:
00024aacbl runtime.printlock
00024ab0ldr x0, [sp+56]
00024ab4str x0, [sp+32]
00024ab8bl runtime.printlock
00024abcadrp x0, 0x697000
00024ac0add x0, x0, 1892
00024ac4orr x1, xzr, 28
00024ac8bl runtime.printstring
00024accldr x0, [sp+32]
00024ad0bl runtime.printhex
00024ad4bl runtime.printnl
00024ad8bl runtime.printunlock
00024adcadrp x0, 0x691000
00024ae0add x0, x0, 2165
00024ae4movz x1, 18
00024ae8bl runtime.throw
00024aec
00024aecloc_24aec:
00024aecadrp x0, 0x69d000
00024af0add x0, x0, 1057
00024af4movz x1, 36
00024af8bl runtime.throw
00024afchint
00024b00
00024b00loc_24b00:
00024b00str x0, [sp+8]
00024b04mov x3, x30
00024b08bl runtime.morestack_noctxt.abi0
00024b0cldr x0, [sp+8]
00024b10b 0x24a50
00024b14udf 0
00024b18udf 0
00024b1cudf 0
00024a50
00024b20
00024b20runtime.lfstackPack: ; void runtime.lfstackPack(runtime.lfnode * node, uintptr cnt)
00024b20ldr x16, [x28+16]
00024b24subs xzr, sp, x16
00024b28b.ls 0x24b48
00024b2cstr x30, [sp-32]!
00024b30stur x29, [sp-8]
00024b34sub x29, sp, 8
00024b38bl runtime.taggedPointerPack
00024b3cldur x29, [sp-8]
00024b40ldr x30, [sp], 32
00024b44ret x30
00024b48
00024b48loc_24b48:
00024b48stp x0, x1, [sp+8]
00024b4cmov x3, x30
00024b50bl runtime.morestack_noctxt.abi0
00024b54ldp x0, x1, [sp+8]
00024b58b 0x24b20
00024b5cudf 0
00024b20
00024b20runtime.lfstackPack: ; void runtime.lfstackPack(runtime.lfnode * node, uintptr cnt)
00024b20ldr x16, [x28+16]
00024b24subs xzr, sp, x16
00024b28b.ls 0x24b48
00024b2cstr x30, [sp-32]!
00024b30stur x29, [sp-8]
00024b34sub x29, sp, 8
00024b38bl runtime.taggedPointerPack
00024b3cldur x29, [sp-8]
00024b40ldr x30, [sp], 32
00024b44ret x30
00024b48
00024b48loc_24b48:
00024b48stp x0, x1, [sp+8]
00024b4cmov x3, x30
00024b50bl runtime.morestack_noctxt.abi0
00024b54ldp x0, x1, [sp+8]
00024b58b 0x24b20
00024b5cudf 0
00024b20
00024b60
00024b60runtime.lfstackUnpack: ; void runtime.lfstackUnpack(uint64 val)
00024b60ldr x16, [x28+16]
00024b64subs xzr, sp, x16
00024b68b.ls 0x24b88
00024b6cstr x30, [sp-32]!
00024b70stur x29, [sp-8]
00024b74sub x29, sp, 8
00024b78bl runtime.taggedPointer.pointer
00024b7cldur x29, [sp-8]
00024b80ldr x30, [sp], 32
00024b84ret x30
00024b88
00024b88loc_24b88:
00024b88str x0, [sp+8]
00024b8cmov x3, x30
00024b90bl runtime.morestack_noctxt.abi0
00024b94ldr x0, [sp+8]
00024b98b 0x24b60
00024b9cudf 0
00024b60
00024b60runtime.lfstackUnpack: ; void runtime.lfstackUnpack(uint64 val)
00024b60ldr x16, [x28+16]
00024b64subs xzr, sp, x16
00024b68b.ls 0x24b88
00024b6cstr x30, [sp-32]!
00024b70stur x29, [sp-8]
00024b74sub x29, sp, 8
00024b78bl runtime.taggedPointer.pointer
00024b7cldur x29, [sp-8]
00024b80ldr x30, [sp], 32
00024b84ret x30
00024b88
00024b88loc_24b88:
00024b88str x0, [sp+8]
00024b8cmov x3, x30
00024b90bl runtime.morestack_noctxt.abi0
00024b94ldr x0, [sp+8]
00024b98b 0x24b60
00024b9cudf 0
00024b60
00024ba0
00024ba0runtime.key32: ; void runtime.key32(uintptr * p)
00024ba0ret x30
00024ba4udf 0
00024ba8udf 0
00024bacudf 0
00024ba0
00024ba0runtime.key32: ; void runtime.key32(uintptr * p)
00024ba0ret x30
00024ba4udf 0
00024ba8udf 0
00024bacudf 0
00024ba0
00024bb0
00024bb0runtime.noteclear: ; void runtime.noteclear(runtime.note * n)
00024bb0str xzr, [x0]
00024bb4ret x30
00024bb8udf 0
00024bbcudf 0
00024bb0
00024bb0runtime.noteclear: ; void runtime.noteclear(runtime.note * n)
00024bb0str xzr, [x0]
00024bb4ret x30
00024bb8udf 0
00024bbcudf 0
00024bb0
00024bc0
00024bc0runtime.notewakeup: ; void runtime.notewakeup(runtime.note * n)
00024bc0ldr x16, [x28+16]
00024bc4subs xzr, sp, x16
00024bc8b.ls 0x24c74
00024bccstr x30, [sp-48]!
00024bd0stur x29, [sp-8]
00024bd4sub x29, sp, 8
00024bd8str x0, [sp+56]
00024bdcldrsb x27, [x0]
00024be0bl runtime.key32
00024be4adrp x27, 0xa27000
00024be8ldrb w1, [x27+1516]
00024bectbz w1, 0, 0x24bfc
00024bf0orr x1, xzr, 1
00024bf4swpal w1, w2, [x0]
00024bf8b 0x24c0c
00024bfc
00024bfcloc_24bfc:
00024bfcorr x1, xzr, 1
00024c00
00024c00loc_24c00:
00024c00ldaxr w2, [x0]
00024c04stlxr w27, w1, [x0]
00024c08cbnz x27, 0x24c00
00024c0c
00024c0cloc_24c0c:
00024c0ccbnz w2, 0x24c2c
00024c10ldr x0, [sp+56]
00024c14bl runtime.key32
00024c18orr x1, xzr, 1
00024c1cbl runtime.futexwakeup
00024c20ldur x29, [sp-8]
00024c24ldr x30, [sp], 48
00024c28ret x30
00024c2c
00024c2cloc_24c2c:
00024c2cstr w2, [sp+36]
00024c30bl runtime.printlock
00024c34adrp x0, 0x697000
00024c38add x0, x0, 1920
00024c3corr x1, xzr, 28
00024c40bl runtime.printstring
00024c44ldr w0, [sp+36]
00024c48bl runtime.printuint
00024c4cadrp x0, 0x68b000
00024c50add x0, x0, 4061
00024c54orr x1, xzr, 2
00024c58bl runtime.printstring
00024c5cbl runtime.printunlock
00024c60adrp x0, 0x696000
00024c64add x0, x0, 539
00024c68movz x1, 26
00024c6cbl runtime.throw
00024c70hint
00024c74
00024c74loc_24c74:
00024c74str x0, [sp+8]
00024c78mov x3, x30
00024c7cbl runtime.morestack_noctxt.abi0
00024c80ldr x0, [sp+8]
00024c84b 0x24bc0
00024c88udf 0
00024c8cudf 0
00024bc0
00024bc0runtime.notewakeup: ; void runtime.notewakeup(runtime.note * n)
00024bc0ldr x16, [x28+16]
00024bc4subs xzr, sp, x16
00024bc8b.ls 0x24c74
00024bccstr x30, [sp-48]!
00024bd0stur x29, [sp-8]
00024bd4sub x29, sp, 8
00024bd8str x0, [sp+56]
00024bdcldrsb x27, [x0]
00024be0bl runtime.key32
00024be4adrp x27, 0xa27000
00024be8ldrb w1, [x27+1516]
00024bectbz w1, 0, 0x24bfc
00024bf0orr x1, xzr, 1
00024bf4swpal w1, w2, [x0]
00024bf8b 0x24c0c
00024bfc
00024bfcloc_24bfc:
00024bfcorr x1, xzr, 1
00024c00
00024c00loc_24c00:
00024c00ldaxr w2, [x0]
00024c04stlxr w27, w1, [x0]
00024c08cbnz x27, 0x24c00
00024c0c
00024c0cloc_24c0c:
00024c0ccbnz w2, 0x24c2c
00024c10ldr x0, [sp+56]
00024c14bl runtime.key32
00024c18orr x1, xzr, 1
00024c1cbl runtime.futexwakeup
00024c20ldur x29, [sp-8]
00024c24ldr x30, [sp], 48
00024c28ret x30
00024c2c
00024c2cloc_24c2c:
00024c2cstr w2, [sp+36]
00024c30bl runtime.printlock
00024c34adrp x0, 0x697000
00024c38add x0, x0, 1920
00024c3corr x1, xzr, 28
00024c40bl runtime.printstring
00024c44ldr w0, [sp+36]
00024c48bl runtime.printuint
00024c4cadrp x0, 0x68b000
00024c50add x0, x0, 4061
00024c54orr x1, xzr, 2
00024c58bl runtime.printstring
00024c5cbl runtime.printunlock
00024c60adrp x0, 0x696000
00024c64add x0, x0, 539
00024c68movz x1, 26
00024c6cbl runtime.throw
00024c70hint
00024c74
00024c74loc_24c74:
00024c74str x0, [sp+8]
00024c78mov x3, x30
00024c7cbl runtime.morestack_noctxt.abi0
00024c80ldr x0, [sp+8]
00024c84b 0x24bc0
00024c88udf 0
00024c8cudf 0
00024bc0
00024c90
00024c90runtime.notesleep: ; void runtime.notesleep(runtime.note * n)
00024c90ldr x16, [x28+16]
00024c94subs xzr, sp, x16
00024c98b.ls 0x24d6c
00024c9cstr x30, [sp-64]!
00024ca0stur x29, [sp-8]
00024ca4sub x29, sp, 8
00024ca8ldr x2, [x28+48]
00024cacldr x2, [x2]
00024cb0subs xzr, x28, x2
00024cb4b.ne 0x24d58
00024cb8str x0, [sp+72]
00024cbcstr x28, [sp+48]
00024cc0adrp x27, 0x9e8000
00024cc4ldr x1, [x27+4056]
00024cc8ldr x1, [x1]
00024cccsubs xzr, x1, 0
00024cd0movz x1, 38528
00024cd4movk x1, 0x980000
00024cd8movn x2, 0
00024cdccsel x1, x1, x2, ne
00024ce0str x1, [sp+40]
00024ce4b 0x24cf8
00024ce8
00024ce8loc_24ce8:
00024ce8ldr x1, [sp+48]
00024cecldr x2, [x1+48]
00024cf0strb wzr, [x2+277]
00024cf4ldr x0, [sp+72]
00024cf8
00024cf8loc_24cf8:
00024cf8ldrsb x27, [x0]
00024cfcbl runtime.key32
00024d00ldar w1, [x0]
00024d04cbnz w1, 0x24d4c
00024d08ldr x1, [sp+48]
00024d0cldr x1, [x1+48]
00024d10orr x2, xzr, 1
00024d14strb w2, [x1+277]
00024d18ldr x0, [sp+72]
00024d1cbl runtime.key32
00024d20mov x1, xzr
00024d24ldr x2, [sp+40]
00024d28bl runtime.futexsleep
00024d2cadrp x27, 0x9e8000
00024d30ldr x1, [x27+4056]
00024d34ldr x1, [x1]
00024d38cbz x1, 0x24ce8
00024d3cstr x1, [sp+8]
00024d40str xzr, [sp+16]
00024d44bl runtime.asmcgocall.abi0
00024d48b 0x24ce8
00024d4c
00024d4cloc_24d4c:
00024d4cldur x29, [sp-8]
00024d50ldr x30, [sp], 64
00024d54ret x30
00024d58
00024d58loc_24d58:
00024d58adrp x0, 0x691000
00024d5cadd x0, x0, 3941
00024d60movz x1, 19
00024d64bl runtime.throw
00024d68hint
00024d6c
00024d6cloc_24d6c:
00024d6cstr x0, [sp+8]
00024d70mov x3, x30
00024d74bl runtime.morestack_noctxt.abi0
00024d78ldr x0, [sp+8]
00024d7cb 0x24c90
00024c90
00024c90runtime.notesleep: ; void runtime.notesleep(runtime.note * n)
00024c90ldr x16, [x28+16]
00024c94subs xzr, sp, x16
00024c98b.ls 0x24d6c
00024c9cstr x30, [sp-64]!
00024ca0stur x29, [sp-8]
00024ca4sub x29, sp, 8
00024ca8ldr x2, [x28+48]
00024cacldr x2, [x2]
00024cb0subs xzr, x28, x2
00024cb4b.ne 0x24d58
00024cb8str x0, [sp+72]
00024cbcstr x28, [sp+48]
00024cc0adrp x27, 0x9e8000
00024cc4ldr x1, [x27+4056]
00024cc8ldr x1, [x1]
00024cccsubs xzr, x1, 0
00024cd0movz x1, 38528
00024cd4movk x1, 0x980000
00024cd8movn x2, 0
00024cdccsel x1, x1, x2, ne
00024ce0str x1, [sp+40]
00024ce4b 0x24cf8
00024ce8
00024ce8loc_24ce8:
00024ce8ldr x1, [sp+48]
00024cecldr x2, [x1+48]
00024cf0strb wzr, [x2+277]
00024cf4ldr x0, [sp+72]
00024cf8
00024cf8loc_24cf8:
00024cf8ldrsb x27, [x0]
00024cfcbl runtime.key32
00024d00ldar w1, [x0]
00024d04cbnz w1, 0x24d4c
00024d08ldr x1, [sp+48]
00024d0cldr x1, [x1+48]
00024d10orr x2, xzr, 1
00024d14strb w2, [x1+277]
00024d18ldr x0, [sp+72]
00024d1cbl runtime.key32
00024d20mov x1, xzr
00024d24ldr x2, [sp+40]
00024d28bl runtime.futexsleep
00024d2cadrp x27, 0x9e8000
00024d30ldr x1, [x27+4056]
00024d34ldr x1, [x1]
00024d38cbz x1, 0x24ce8
00024d3cstr x1, [sp+8]
00024d40str xzr, [sp+16]
00024d44bl runtime.asmcgocall.abi0
00024d48b 0x24ce8
00024d4c
00024d4cloc_24d4c:
00024d4cldur x29, [sp-8]
00024d50ldr x30, [sp], 64
00024d54ret x30
00024d58
00024d58loc_24d58:
00024d58adrp x0, 0x691000
00024d5cadd x0, x0, 3941
00024d60movz x1, 19
00024d64bl runtime.throw
00024d68hint
00024d6c
00024d6cloc_24d6c:
00024d6cstr x0, [sp+8]
00024d70mov x3, x30
00024d74bl runtime.morestack_noctxt.abi0
00024d78ldr x0, [sp+8]
00024d7cb 0x24c90
00024c90
00024d80
00024d80runtime.notetsleep_internal: ; void runtime.notetsleep_internal(runtime.note * n, int64 ns)
00024d80str x30, [sp-64]!
00024d84stur x29, [sp-8]
00024d88sub x29, sp, 8
00024d8cstr x0, [sp+72]
00024d90str x28, [sp+48]
00024d94tbz x1, 63, 0x24dbc
00024d98adrp x27, 0x9e8000
00024d9cldr x2, [x27+4056]
00024da0ldr x2, [x2]
00024da4subs xzr, x2, 0
00024da8movz x2, 38528
00024dacmovk x2, 0x980000
00024db0csel x1, x2, x1, ne
00024db4str x1, [sp+40]
00024db8b 0x24ec8
00024dbc
00024dbcloc_24dbc:
00024dbcstr x1, [sp+80]
00024dc0ldrsb x27, [x0]
00024dc4bl runtime.key32
00024dc8ldar w1, [x0]
00024dcccbnz w1, 0x24de4
00024dd0bl runtime.nanotime
00024dd4ldr x1, [sp+80]
00024dd8add x0, x0, x1
00024ddcstr x0, [sp+32]
00024de0b 0x24e00
00024de4
00024de4loc_24de4:
00024de4orr x0, xzr, 1
00024de8ldur x29, [sp-8]
00024decldr x30, [sp], 64
00024df0ret x30
00024df4
00024df4loc_24df4:
00024df4sub x2, x1, x0
00024df8mov x0, x1
00024dfcmov x1, x2
00024e00
00024e00loc_24e00:
00024e00adrp x27, 0x9e8000
00024e04ldr x2, [x27+4056]
00024e08ldr x2, [x2]
00024e0ccbz x2, 0x24e28
00024e10movz x2, 38528
00024e14movk x2, 0x980000
00024e18subs xzr, x1, x2
00024e1cb.le 0x24e28
00024e20movz x1, 38528
00024e24movk x1, 0x980000
00024e28
00024e28loc_24e28:
00024e28str x1, [sp+40]
00024e2cldr x1, [sp+48]
00024e30ldr x1, [x1+48]
00024e34orr x2, xzr, 1
00024e38strb w2, [x1+277]
00024e3cldr x0, [sp+72]
00024e40bl runtime.key32
00024e44mov x1, xzr
00024e48ldr x2, [sp+40]
00024e4cbl runtime.futexsleep
00024e50adrp x27, 0x9e8000
00024e54ldr x1, [x27+4056]
00024e58ldr x1, [x1]
00024e5ccbz x1, 0x24e6c
00024e60str x1, [sp+8]
00024e64str xzr, [sp+16]
00024e68bl runtime.asmcgocall.abi0
00024e6c
00024e6cloc_24e6c:
00024e6cldr x1, [sp+48]
00024e70ldr x1, [x1+48]
00024e74strb wzr, [x1+277]
00024e78ldr x0, [sp+72]
00024e7cbl runtime.key32
00024e80ldar w1, [x0]
00024e84cbnz w1, 0x24e98
00024e88bl runtime.nanotime
00024e8cldr x1, [sp+32]
00024e90subs xzr, x0, x1
00024e94b.lt 0x24df4
00024e98
00024e98loc_24e98:
00024e98ldr x0, [sp+72]
00024e9cbl runtime.key32
00024ea0ldar w1, [x0]
00024ea4subs wzr, w1, 0
00024ea8cset x0, ne
00024eacldur x29, [sp-8]
00024eb0ldr x30, [sp], 64
00024eb4ret x30
00024eb8
00024eb8loc_24eb8:
00024eb8ldr x1, [sp+48]
00024ebcldr x2, [x1+48]
00024ec0strb wzr, [x2+277]
00024ec4ldr x0, [sp+72]
00024ec8
00024ec8loc_24ec8:
00024ec8ldrsb x27, [x0]
00024eccbl runtime.key32
00024ed0ldar w1, [x0]
00024ed4cbnz w1, 0x24f1c
00024ed8ldr x1, [sp+48]
00024edcldr x1, [x1+48]
00024ee0orr x2, xzr, 1
00024ee4strb w2, [x1+277]
00024ee8ldr x0, [sp+72]
00024eecbl runtime.key32
00024ef0mov x1, xzr
00024ef4ldr x2, [sp+40]
00024ef8bl runtime.futexsleep
00024efcadrp x27, 0x9e8000
00024f00ldr x1, [x27+4056]
00024f04ldr x1, [x1]
00024f08cbz x1, 0x24eb8
00024f0cstr x1, [sp+8]
00024f10str xzr, [sp+16]
00024f14bl runtime.asmcgocall.abi0
00024f18b 0x24eb8
00024f1c
00024f1cloc_24f1c:
00024f1corr x0, xzr, 1
00024f20ldur x29, [sp-8]
00024f24ldr x30, [sp], 64
00024f28ret x30
00024f2cudf 0
00024d80
00024d80runtime.notetsleep_internal: ; void runtime.notetsleep_internal(runtime.note * n, int64 ns)
00024d80str x30, [sp-64]!
00024d84stur x29, [sp-8]
00024d88sub x29, sp, 8
00024d8cstr x0, [sp+72]
00024d90str x28, [sp+48]
00024d94tbz x1, 63, 0x24dbc
00024d98adrp x27, 0x9e8000
00024d9cldr x2, [x27+4056]
00024da0ldr x2, [x2]
00024da4subs xzr, x2, 0
00024da8movz x2, 38528
00024dacmovk x2, 0x980000
00024db0csel x1, x2, x1, ne
00024db4str x1, [sp+40]
00024db8b 0x24ec8
00024dbc
00024dbcloc_24dbc:
00024dbcstr x1, [sp+80]
00024dc0ldrsb x27, [x0]
00024dc4bl runtime.key32
00024dc8ldar w1, [x0]
00024dcccbnz w1, 0x24de4
00024dd0bl runtime.nanotime
00024dd4ldr x1, [sp+80]
00024dd8add x0, x0, x1
00024ddcstr x0, [sp+32]
00024de0b 0x24e00
00024de4
00024de4loc_24de4:
00024de4orr x0, xzr, 1
00024de8ldur x29, [sp-8]
00024decldr x30, [sp], 64
00024df0ret x30
00024df4
00024df4loc_24df4:
00024df4sub x2, x1, x0
00024df8mov x0, x1
00024dfcmov x1, x2
00024e00
00024e00loc_24e00:
00024e00adrp x27, 0x9e8000
00024e04ldr x2, [x27+4056]
00024e08ldr x2, [x2]
00024e0ccbz x2, 0x24e28
00024e10movz x2, 38528
00024e14movk x2, 0x980000
00024e18subs xzr, x1, x2
00024e1cb.le 0x24e28
00024e20movz x1, 38528
00024e24movk x1, 0x980000
00024e28
00024e28loc_24e28:
00024e28str x1, [sp+40]
00024e2cldr x1, [sp+48]
00024e30ldr x1, [x1+48]
00024e34orr x2, xzr, 1
00024e38strb w2, [x1+277]
00024e3cldr x0, [sp+72]
00024e40bl runtime.key32
00024e44mov x1, xzr
00024e48ldr x2, [sp+40]
00024e4cbl runtime.futexsleep
00024e50adrp x27, 0x9e8000
00024e54ldr x1, [x27+4056]
00024e58ldr x1, [x1]
00024e5ccbz x1, 0x24e6c
00024e60str x1, [sp+8]
00024e64str xzr, [sp+16]
00024e68bl runtime.asmcgocall.abi0
00024e6c
00024e6cloc_24e6c:
00024e6cldr x1, [sp+48]
00024e70ldr x1, [x1+48]
00024e74strb wzr, [x1+277]
00024e78ldr x0, [sp+72]
00024e7cbl runtime.key32
00024e80ldar w1, [x0]
00024e84cbnz w1, 0x24e98
00024e88bl runtime.nanotime
00024e8cldr x1, [sp+32]
00024e90subs xzr, x0, x1
00024e94b.lt 0x24df4
00024e98
00024e98loc_24e98:
00024e98ldr x0, [sp+72]
00024e9cbl runtime.key32
00024ea0ldar w1, [x0]
00024ea4subs wzr, w1, 0
00024ea8cset x0, ne
00024eacldur x29, [sp-8]
00024eb0ldr x30, [sp], 64
00024eb4ret x30
00024eb8
00024eb8loc_24eb8:
00024eb8ldr x1, [sp+48]
00024ebcldr x2, [x1+48]
00024ec0strb wzr, [x2+277]
00024ec4ldr x0, [sp+72]
00024ec8
00024ec8loc_24ec8:
00024ec8ldrsb x27, [x0]
00024eccbl runtime.key32
00024ed0ldar w1, [x0]
00024ed4cbnz w1, 0x24f1c
00024ed8ldr x1, [sp+48]
00024edcldr x1, [x1+48]
00024ee0orr x2, xzr, 1
00024ee4strb w2, [x1+277]
00024ee8ldr x0, [sp+72]
00024eecbl runtime.key32
00024ef0mov x1, xzr
00024ef4ldr x2, [sp+40]
00024ef8bl runtime.futexsleep
00024efcadrp x27, 0x9e8000
00024f00ldr x1, [x27+4056]
00024f04ldr x1, [x1]
00024f08cbz x1, 0x24eb8
00024f0cstr x1, [sp+8]
00024f10str xzr, [sp+16]
00024f14bl runtime.asmcgocall.abi0
00024f18b 0x24eb8
00024f1c
00024f1cloc_24f1c:
00024f1corr x0, xzr, 1
00024f20ldur x29, [sp-8]
00024f24ldr x30, [sp], 64
00024f28ret x30
00024f2cudf 0
00024d80
00024f30
00024f30runtime.notetsleep: ; void runtime.notetsleep(runtime.note * n, int64 ns)
00024f30ldr x16, [x28+16]
00024f34subs xzr, sp, x16
00024f38b.ls 0x24f84
00024f3cstr x30, [sp-32]!
00024f40stur x29, [sp-8]
00024f44sub x29, sp, 8
00024f48ldr x2, [x28+48]
00024f4cldr x3, [x2]
00024f50subs xzr, x28, x3
00024f54b.eq 0x24f60
00024f58ldr x2, [x2+256]
00024f5ccbnz x2, 0x24f70
00024f60
00024f60loc_24f60:
00024f60bl runtime.notetsleep_internal
00024f64ldur x29, [sp-8]
00024f68ldr x30, [sp], 32
00024f6cret x30
00024f70
00024f70loc_24f70:
00024f70adrp x0, 0x692000
00024f74add x0, x0, 2327
00024f78movz x1, 20
00024f7cbl runtime.throw
00024f80hint
00024f84
00024f84loc_24f84:
00024f84stp x0, x1, [sp+8]
00024f88mov x3, x30
00024f8cbl runtime.morestack_noctxt.abi0
00024f90ldp x0, x1, [sp+8]
00024f94b 0x24f30
00024f98udf 0
00024f9cudf 0
00024f30
00024f30runtime.notetsleep: ; void runtime.notetsleep(runtime.note * n, int64 ns)
00024f30ldr x16, [x28+16]
00024f34subs xzr, sp, x16
00024f38b.ls 0x24f84
00024f3cstr x30, [sp-32]!
00024f40stur x29, [sp-8]
00024f44sub x29, sp, 8
00024f48ldr x2, [x28+48]
00024f4cldr x3, [x2]
00024f50subs xzr, x28, x3
00024f54b.eq 0x24f60
00024f58ldr x2, [x2+256]
00024f5ccbnz x2, 0x24f70
00024f60
00024f60loc_24f60:
00024f60bl runtime.notetsleep_internal
00024f64ldur x29, [sp-8]
00024f68ldr x30, [sp], 32
00024f6cret x30
00024f70
00024f70loc_24f70:
00024f70adrp x0, 0x692000
00024f74add x0, x0, 2327
00024f78movz x1, 20
00024f7cbl runtime.throw
00024f80hint
00024f84
00024f84loc_24f84:
00024f84stp x0, x1, [sp+8]
00024f88mov x3, x30
00024f8cbl runtime.morestack_noctxt.abi0
00024f90ldp x0, x1, [sp+8]
00024f94b 0x24f30
00024f98udf 0
00024f9cudf 0
00024f30
00024fa0
00024fa0runtime.notetsleepg: ; void runtime.notetsleepg(runtime.note * n, int64 ns)
00024fa0ldr x16, [x28+16]
00024fa4subs xzr, sp, x16
00024fa8b.ls 0x2500c
00024facstr x30, [sp-48]!
00024fb0stur x29, [sp-8]
00024fb4sub x29, sp, 8
00024fb8ldr x2, [x28+48]
00024fbcldr x2, [x2]
00024fc0subs xzr, x28, x2
00024fc4b.eq 0x24ff8
00024fc8str x0, [sp+56]
00024fccstr x1, [sp+64]
00024fd0bl runtime.entersyscallblock
00024fd4ldr x0, [sp+56]
00024fd8ldr x1, [sp+64]
00024fdcbl runtime.notetsleep_internal
00024fe0strb w0, [sp+39]
00024fe4bl runtime.exitsyscall
00024fe8ldrb w0, [sp+39]
00024fecldur x29, [sp-8]
00024ff0ldr x30, [sp], 48
00024ff4ret x30
00024ff8
00024ff8loc_24ff8:
00024ff8adrp x0, 0x691000
00024ffcadd x0, x0, 98
00025000movz x1, 17
00025004bl runtime.throw
00025008hint
0002500c
0002500cloc_2500c:
0002500cstp x0, x1, [sp+8]
00025010mov x3, x30
00025014bl runtime.morestack_noctxt.abi0
00025018ldp x0, x1, [sp+8]
0002501cb 0x24fa0
00024fa0
00024fa0runtime.notetsleepg: ; void runtime.notetsleepg(runtime.note * n, int64 ns)
00024fa0ldr x16, [x28+16]
00024fa4subs xzr, sp, x16
00024fa8b.ls 0x2500c
00024facstr x30, [sp-48]!
00024fb0stur x29, [sp-8]
00024fb4sub x29, sp, 8
00024fb8ldr x2, [x28+48]
00024fbcldr x2, [x2]
00024fc0subs xzr, x28, x2
00024fc4b.eq 0x24ff8
00024fc8str x0, [sp+56]
00024fccstr x1, [sp+64]
00024fd0bl runtime.entersyscallblock
00024fd4ldr x0, [sp+56]
00024fd8ldr x1, [sp+64]
00024fdcbl runtime.notetsleep_internal
00024fe0strb w0, [sp+39]
00024fe4bl runtime.exitsyscall
00024fe8ldrb w0, [sp+39]
00024fecldur x29, [sp-8]
00024ff0ldr x30, [sp], 48
00024ff4ret x30
00024ff8
00024ff8loc_24ff8:
00024ff8adrp x0, 0x691000
00024ffcadd x0, x0, 98
00025000movz x1, 17
00025004bl runtime.throw
00025008hint
0002500c
0002500cloc_2500c:
0002500cstp x0, x1, [sp+8]
00025010mov x3, x30
00025014bl runtime.morestack_noctxt.abi0
00025018ldp x0, x1, [sp+8]
0002501cb 0x24fa0
00024fa0
00025020
00025020runtime.beforeIdle: ; void runtime.beforeIdle(int64 p0, int64 p1)
00025020mov x0, xzr
00025024mov x1, xzr
00025028ret x30
0002502cudf 0
00025020
00025020runtime.beforeIdle: ; void runtime.beforeIdle(int64 p0, int64 p1)
00025020mov x0, xzr
00025024mov x1, xzr
00025028ret x30
0002502cudf 0
00025020
00025030
00025030runtime.checkTimeouts: ; void runtime.checkTimeouts(void)
00025030ret x30
00025034udf 0
00025038udf 0
0002503cudf 0
00025030
00025030runtime.checkTimeouts: ; void runtime.checkTimeouts(void)
00025030ret x30
00025034udf 0
00025038udf 0
0002503cudf 0
00025030
00025040
00025040runtime.semacreate: ; void runtime.semacreate(runtime.m * mp)
00025040ret x30
00025044udf 0
00025048udf 0
0002504cudf 0
00025040
00025040runtime.semacreate: ; void runtime.semacreate(runtime.m * mp)
00025040ret x30
00025044udf 0
00025048udf 0
0002504cudf 0
00025040
00025050
00025050runtime.semasleep: ; void runtime.semasleep(int64 ns)
00025050str x30, [sp-48]!
00025054stur x29, [sp-8]
00025058sub x29, sp, 8
0002505cldr x3, [x28+48]
00025060ldrsb x27, [x3]
00025064add x3, x3, 1312
00025068adrp x27, 0xa26000
0002506cldrb w4, [x27+1516]
00025070tbz w4, 0, 0x25084
00025074movn x4, 0
00025078ldaddal w4, w5, [x3]
0002507cadd x5, x5, x4
00025080b 0x25098
00025084
00025084loc_25084:
00025084movn x4, 0
00025088
00025088loc_25088:
00025088ldaxr w5, [x3]
0002508cadd x5, x5, x4
00025090stlxr w27, w5, [x3]
00025094cbnz x27, 0x25088
00025098
00025098loc_25098:
00025098str x0, [sp+56]
0002509cstr x3, [sp+32]
000250a0b 0x250b0
000250a4
000250a4loc_250a4:
000250a4ldr x3, [sp+32]
000250a8ldar w5, [x3]
000250acmovn x4, 0
000250b0
000250b0loc_250b0:
000250b0tbz w5, 31, 0x250dc
000250b4mov x1, x5
000250b8mov x2, x0
000250bcmov x0, x3
000250c0bl runtime.futexsleep
000250c4ldr x0, [sp+56]
000250c8tbnz x0, 63, 0x250a4
000250ccmovn x0, 0
000250d0ldur x29, [sp-8]
000250d4ldr x30, [sp], 48
000250d8ret x30
000250dc
000250dcloc_250dc:
000250dcmov x0, xzr
000250e0ldur x29, [sp-8]
000250e4ldr x30, [sp], 48
000250e8ret x30
000250ecudf 0
00025050
00025050runtime.semasleep: ; void runtime.semasleep(int64 ns)
00025050str x30, [sp-48]!
00025054stur x29, [sp-8]
00025058sub x29, sp, 8
0002505cldr x3, [x28+48]
00025060ldrsb x27, [x3]
00025064add x3, x3, 1312
00025068adrp x27, 0xa26000
0002506cldrb w4, [x27+1516]
00025070tbz w4, 0, 0x25084
00025074movn x4, 0
00025078ldaddal w4, w5, [x3]
0002507cadd x5, x5, x4
00025080b 0x25098
00025084
00025084loc_25084:
00025084movn x4, 0
00025088
00025088loc_25088:
00025088ldaxr w5, [x3]
0002508cadd x5, x5, x4
00025090stlxr w27, w5, [x3]
00025094cbnz x27, 0x25088
00025098
00025098loc_25098:
00025098str x0, [sp+56]
0002509cstr x3, [sp+32]
000250a0b 0x250b0
000250a4
000250a4loc_250a4:
000250a4ldr x3, [sp+32]
000250a8ldar w5, [x3]
000250acmovn x4, 0
000250b0
000250b0loc_250b0:
000250b0tbz w5, 31, 0x250dc
000250b4mov x1, x5
000250b8mov x2, x0
000250bcmov x0, x3
000250c0bl runtime.futexsleep
000250c4ldr x0, [sp+56]
000250c8tbnz x0, 63, 0x250a4
000250ccmovn x0, 0
000250d0ldur x29, [sp-8]
000250d4ldr x30, [sp], 48
000250d8ret x30
000250dc
000250dcloc_250dc:
000250dcmov x0, xzr
000250e0ldur x29, [sp-8]
000250e4ldr x30, [sp], 48
000250e8ret x30
000250ecudf 0
00025050
000250f0
000250f0runtime.semawakeup: ; void runtime.semawakeup(runtime.m * mp)
000250f0str x30, [sp-32]!
000250f4stur x29, [sp-8]
000250f8sub x29, sp, 8
000250fcldrsb x27, [x0]
00025100add x0, x0, 1312
00025104adrp x27, 0xa26000
00025108ldrb w2, [x27+1516]
0002510ctbz w2, 0, 0x25120
00025110orr x2, xzr, 1
00025114ldaddal w2, w3, [x0]
00025118add x3, x3, x2
0002511cb 0x25134
00025120
00025120loc_25120:
00025120orr x2, xzr, 1
00025124
00025124loc_25124:
00025124ldaxr w3, [x0]
00025128add x3, x3, x2
0002512cstlxr w27, w3, [x0]
00025130cbnz x27, 0x25124
00025134
00025134loc_25134:
00025134cbnz w3, 0x25140
00025138orr x1, xzr, 1
0002513cbl runtime.futexwakeup
00025140
00025140loc_25140:
00025140ldur x29, [sp-8]
00025144ldr x30, [sp], 32
00025148ret x30
0002514cudf 0
000250f0
000250f0runtime.semawakeup: ; void runtime.semawakeup(runtime.m * mp)
000250f0str x30, [sp-32]!
000250f4stur x29, [sp-8]
000250f8sub x29, sp, 8
000250fcldrsb x27, [x0]
00025100add x0, x0, 1312
00025104adrp x27, 0xa26000
00025108ldrb w2, [x27+1516]
0002510ctbz w2, 0, 0x25120
00025110orr x2, xzr, 1
00025114ldaddal w2, w3, [x0]
00025118add x3, x3, x2
0002511cb 0x25134
00025120
00025120loc_25120:
00025120orr x2, xzr, 1
00025124
00025124loc_25124:
00025124ldaxr w3, [x0]
00025128add x3, x3, x2
0002512cstlxr w27, w3, [x0]
00025130cbnz x27, 0x25124
00025134
00025134loc_25134:
00025134cbnz w3, 0x25140
00025138orr x1, xzr, 1
0002513cbl runtime.futexwakeup
00025140
00025140loc_25140:
00025140ldur x29, [sp-8]
00025144ldr x30, [sp], 32
00025148ret x30
0002514cudf 0
000250f0
00025150
00025150runtime.key8: ; void runtime.key8(uintptr * p)
00025150ldrsb x27, [x0]
00025154ret x30
00025158udf 0
0002515cudf 0
00025150
00025150runtime.key8: ; void runtime.key8(uintptr * p)
00025150ldrsb x27, [x0]
00025154ret x30
00025158udf 0
0002515cudf 0
00025150
00025160
00025160runtime.lockVerifyMSize: ; void runtime.lockVerifyMSize(void)
00025160ldr x16, [x28+16]
00025164subs xzr, sp, x16
00025168b.ls 0x25208
0002516cstr x30, [sp-48]!
00025170stur x29, [sp-8]
00025174sub x29, sp, 8
00025178movz x0, 1808
0002517cmov x1, xzr
00025180bl runtime.roundupsize
00025184add x2, x0, 8
00025188ands xzr, x2, 1023
0002518cb.ne 0x2519c
00025190ldur x29, [sp-8]
00025194ldr x30, [sp], 48
00025198ret x30
0002519c
0002519cloc_2519c:
0002519cstr x2, [sp+32]
000251a0bl runtime.printlock
000251a4adrp x0, 0x695000
000251a8add x0, x0, 3146
000251acmovz x1, 27
000251b0bl runtime.printstring
000251b4ldr x0, [sp+32]
000251b8bl runtime.printuint
000251bcadrp x0, 0x68a000
000251c0add x0, x0, 4032
000251c4orr x1, xzr, 1
000251c8bl runtime.printstring
000251ccldr x0, [sp+32]
000251d0bl runtime.printhex
000251d4adrp x0, 0x6a0000
000251d8add x0, x0, 655
000251dcmovz x1, 42
000251e0bl runtime.printstring
000251e4orr x0, xzr, 1023
000251e8bl runtime.printhex
000251ecbl runtime.printnl
000251f0bl runtime.printunlock
000251f4adrp x0, 0x6a5000
000251f8add x0, x0, 1960
000251fcmovz x1, 54
00025200bl runtime.throw
00025204hint
00025208
00025208loc_25208:
00025208mov x3, x30
0002520cbl runtime.morestack_noctxt.abi0
00025210b 0x25160
00025214udf 0
00025218udf 0
0002521cudf 0
00025160
00025160runtime.lockVerifyMSize: ; void runtime.lockVerifyMSize(void)
00025160ldr x16, [x28+16]
00025164subs xzr, sp, x16
00025168b.ls 0x25208
0002516cstr x30, [sp-48]!
00025170stur x29, [sp-8]
00025174sub x29, sp, 8
00025178movz x0, 1808
0002517cmov x1, xzr
00025180bl runtime.roundupsize
00025184add x2, x0, 8
00025188ands xzr, x2, 1023
0002518cb.ne 0x2519c
00025190ldur x29, [sp-8]
00025194ldr x30, [sp], 48
00025198ret x30
0002519c
0002519cloc_2519c:
0002519cstr x2, [sp+32]
000251a0bl runtime.printlock
000251a4adrp x0, 0x695000
000251a8add x0, x0, 3146
000251acmovz x1, 27
000251b0bl runtime.printstring
000251b4ldr x0, [sp+32]
000251b8bl runtime.printuint
000251bcadrp x0, 0x68a000
000251c0add x0, x0, 4032
000251c4orr x1, xzr, 1
000251c8bl runtime.printstring
000251ccldr x0, [sp+32]
000251d0bl runtime.printhex
000251d4adrp x0, 0x6a0000
000251d8add x0, x0, 655
000251dcmovz x1, 42
000251e0bl runtime.printstring
000251e4orr x0, xzr, 1023
000251e8bl runtime.printhex
000251ecbl runtime.printnl
000251f0bl runtime.printunlock
000251f4adrp x0, 0x6a5000
000251f8add x0, x0, 1960
000251fcmovz x1, 54
00025200bl runtime.throw
00025204hint
00025208
00025208loc_25208:
00025208mov x3, x30
0002520cbl runtime.morestack_noctxt.abi0
00025210b 0x25160
00025214udf 0
00025218udf 0
0002521cudf 0
00025160
00025220
00025220runtime.mutexWaitListHead: ; void runtime.mutexWaitListHead(uintptr v)
00025220and x1, x0, -1024
00025224cbz x1, 0x25248
00025228adrp x0, 0x9ff000
0002522cadd x0, x0, 3392
00025230and x2, x0, -1024
00025234subs xzr, x2, x1
00025238b.ne 0x25240
0002523cret x30
00025240
00025240loc_25240:
00025240add x0, x1, 8
00025244ret x30
00025248
00025248loc_25248:
00025248mov x0, xzr
0002524cret x30
00025220
00025220runtime.mutexWaitListHead: ; void runtime.mutexWaitListHead(uintptr v)
00025220and x1, x0, -1024
00025224cbz x1, 0x25248
00025228adrp x0, 0x9ff000
0002522cadd x0, x0, 3392
00025230and x2, x0, -1024
00025234subs xzr, x2, x1
00025238b.ne 0x25240
0002523cret x30
00025240
00025240loc_25240:
00025240add x0, x1, 8
00025244ret x30
00025248
00025248loc_25248:
00025248mov x0, xzr
0002524cret x30
00025220
00025250
00025250runtime.mutexPreferLowLatency: ; void runtime.mutexPreferLowLatency(runtime.mutex * l)
00025250adrp x1, 0xa02000
00025254add x1, x1, 152
00025258subs xzr, x0, x1
0002525cb.ne 0x25268
00025260orr x0, xzr, 1
00025264ret x30
00025268
00025268loc_25268:
00025268mov x0, xzr
0002526cret x30
00025250
00025250runtime.mutexPreferLowLatency: ; void runtime.mutexPreferLowLatency(runtime.mutex * l)
00025250adrp x1, 0xa02000
00025254add x1, x1, 152
00025258subs xzr, x0, x1
0002525cb.ne 0x25268
00025260orr x0, xzr, 1
00025264ret x30
00025268
00025268loc_25268:
00025268mov x0, xzr
0002526cret x30
00025250
00025270
00025270runtime.lock: ; void runtime.lock(runtime.mutex * l)
00025270ldr x16, [x28+16]
00025274subs xzr, sp, x16
00025278b.ls 0x252a8
0002527cstr x30, [sp-32]!
00025280stur x29, [sp-8]
00025284sub x29, sp, 8
00025288str x0, [sp+40]
0002528cbl runtime.getLockRank
00025290mov x1, x0
00025294ldr x0, [sp+40]
00025298bl runtime.lockWithRank
0002529cldur x29, [sp-8]
000252a0ldr x30, [sp], 32
000252a4ret x30
000252a8
000252a8loc_252a8:
000252a8str x0, [sp+8]
000252acmov x3, x30
000252b0bl runtime.morestack_noctxt.abi0
000252b4ldr x0, [sp+8]
000252b8b 0x25270
000252bcudf 0
00025270
00025270runtime.lock: ; void runtime.lock(runtime.mutex * l)
00025270ldr x16, [x28+16]
00025274subs xzr, sp, x16
00025278b.ls 0x252a8
0002527cstr x30, [sp-32]!
00025280stur x29, [sp-8]
00025284sub x29, sp, 8
00025288str x0, [sp+40]
0002528cbl runtime.getLockRank
00025290mov x1, x0
00025294ldr x0, [sp+40]
00025298bl runtime.lockWithRank
0002529cldur x29, [sp-8]
000252a0ldr x30, [sp], 32
000252a4ret x30
000252a8
000252a8loc_252a8:
000252a8str x0, [sp+8]
000252acmov x3, x30
000252b0bl runtime.morestack_noctxt.abi0
000252b4ldr x0, [sp+8]
000252b8b 0x25270
000252bcudf 0
00025270
000252c0
000252c0runtime.lock2: ; void runtime.lock2(runtime.mutex * l)
000252c0ldr x16, [x28+16]
000252c4subs xzr, sp, x16
000252c8b.ls 0x25690
000252ccstr x30, [sp-112]!
000252d0stur x29, [sp-8]
000252d4sub x29, sp, 8
000252d8ldr x2, [x28+48]
000252dcldrsw x3, [x2+264]
000252e0tbnz w3, 31, 0x2567c
000252e4str x0, [sp+120]
000252e8str x28, [sp+64]
000252ecadd x1, x3, 1
000252f0str w1, [x2+264]
000252f4ldrsb x27, [x0]
000252f8bl runtime.key8
000252fcadrp x27, 0xa26000
00025300ldrb w1, [x27+1516]
00025304tbz w1, 0, 0x25314
00025308orr x1, xzr, 1
0002530cswpalb w1, w2, [x0]
00025310b 0x25324
00025314
00025314loc_25314:
00025314orr x1, xzr, 1
00025318
00025318loc_25318:
00025318ldaxrb w2, [x0]
0002531cstlxrb w27, w1, [x0]
00025320cbnz x27, 0x25318
00025324
00025324loc_25324:
00025324tbz w2, 0, 0x25388
00025328str x0, [sp+56]
0002532cldr x1, [sp+64]
00025330ldr x0, [x1+48]
00025334bl runtime.semacreate
00025338stp xzr, xzr, [sp+88]
0002533cstp xzr, xzr, [sp+80]
00025340str xzr, [sp+96]
00025344ldr x1, [sp+120]
00025348str x1, [sp+72]
0002534cadd x0, sp, 72
00025350bl runtime.(*lockTimer).begin
00025354adrp x27, 0xa26000
00025358ldrsw x1, [x27+1652]
0002535cldr x0, [sp+120]
00025360ldar x2, [x0]
00025364subs wzr, w1, 1
00025368orr x1, xzr, 4
0002536ccsel x1, x1, xzr, gt
00025370str x1, [sp+40]
00025374ldr x3, [sp+56]
00025378mov x4, xzr
0002537cmov x5, xzr
00025380mov x6, xzr
00025384b 0x253c8
00025388
00025388loc_25388:
00025388tbz w2, 1, 0x253b8
0002538cadrp x27, 0xa26000
00025390ldrb w1, [x27+1516]
00025394tbz w1, 0, 0x253a4
00025398orr x1, xzr, 2
0002539cldsetalb w1, w2, [x0]
000253a0b 0x253b8
000253a4
000253a4loc_253a4:
000253a4orr x1, xzr, 2
000253a8
000253a8loc_253a8:
000253a8ldaxrb w3, [x0]
000253acorr x2, x3, x1
000253b0stlxrb w27, w2, [x0]
000253b4cbnz x27, 0x253a8
000253b8
000253b8loc_253b8:
000253b8ldur x29, [sp-8]
000253bcldr x30, [sp], 112
000253c0ret x30
000253c4
000253c4loc_253c4:
000253c4add x6, x6, 1
000253c8
000253c8loc_253c8:
000253c8tbnz w2, 0, 0x2545c
000253cctbz w4, 0, 0x25428
000253d0and x7, x2, -257
000253d4orr x7, x7, 3
000253d8and x8, x7, -1024
000253dcand x9, x7, -3
000253e0subs xzr, x8, 0
000253e4csel x7, x9, x7, eq
000253e8adrp x27, 0xa26000
000253ecldrb w8, [x27+1516]
000253f0tbz w8, 0, 0x25408
000253f4mov x27, x2
000253f8casal x27, x7, [x0]
000253fcsubs xzr, x27, x2
00025400cset x8, eq
00025404b 0x25420
00025408
00025408loc_25408:
00025408ldaxr x27, [x0]
0002540csubs xzr, x27, x2
00025410b.ne 0x2541c
00025414stlxr w27, x7, [x0]
00025418cbnz x27, 0x25408
0002541c
0002541cloc_2541c:
0002541ccset x8, eq
00025420
00025420loc_25420:
00025420tbz w8, 0, 0x25454
00025424b 0x25644
00025428
00025428loc_25428:
00025428adrp x27, 0xa26000
0002542cldrb w2, [x27+1516]
00025430tbz w2, 0, 0x25440
00025434orr x2, xzr, 3
00025438swpalb w2, w7, [x3]
0002543cb 0x25450
00025440
00025440loc_25440:
00025440orr x2, xzr, 3
00025444
00025444loc_25444:
00025444ldaxrb w7, [x3]
00025448stlxrb w27, w2, [x3]
0002544ccbnz x27, 0x25444
00025450
00025450loc_25450:
00025450tbz w7, 0, 0x25658
00025454
00025454loc_25454:
00025454ldar x2, [x0]
00025458b 0x253c4
0002545c
0002545cloc_2545c:
0002545ctbnz w4, 0, 0x254ac
00025460tbnz w2, 8, 0x254ac
00025464orr x7, x2, 256
00025468adrp x27, 0xa26000
0002546cldrb w8, [x27+1516]
00025470tbz w8, 0, 0x25488
00025474mov x27, x2
00025478casal x27, x7, [x0]
0002547csubs xzr, x27, x2
00025480cset x8, eq
00025484b 0x254a0
00025488
00025488loc_25488:
00025488ldaxr x27, [x0]
0002548csubs xzr, x27, x2
00025490b.ne 0x2549c
00025494stlxr w27, x7, [x0]
00025498cbnz x27, 0x25488
0002549c
0002549cloc_2549c:
0002549ccset x8, eq
000254a0
000254a0loc_254a0:
000254a0tbz w8, 0, 0x254ac
000254a4orr x4, xzr, 1
000254a8mov x2, x7
000254ac
000254acloc_254ac:
000254acstrb w4, [sp+30]
000254b0str x6, [sp+48]
000254b4str x2, [sp+32]
000254b8strb w5, [sp+31]
000254bctbz w4, 0, 0x254c8
000254c0orr x7, xzr, 1
000254c4b 0x254f8
000254c8
000254c8loc_254c8:
000254c8tbz w5, 0, 0x254d4
000254ccorr x7, xzr, 1
000254d0b 0x254f8
000254d4
000254d4loc_254d4:
000254d4bl runtime.mutexPreferLowLatency
000254d8ldr x1, [sp+40]
000254dcldr x2, [sp+32]
000254e0ldr x3, [sp+56]
000254e4ldrb w4, [sp+30]
000254e8ldrb w5, [sp+31]
000254ecldr x6, [sp+48]
000254f0mov x7, x0
000254f4ldr x0, [sp+120]
000254f8
000254f8loc_254f8:
000254f8tbz w7, 0, 0x25560
000254fcsubs xzr, x6, x1
00025500b.lt 0x25534
00025504add x7, x1, 1
00025508subs xzr, x6, x7
0002550cb.ge 0x25560
00025510bl runtime.osyield.abi0
00025514ldr x0, [sp+120]
00025518ldar x2, [x0]
0002551cldr x1, [sp+40]
00025520ldr x3, [sp+56]
00025524ldr x6, [sp+48]
00025528ldrb w4, [sp+30]
0002552cldrb w5, [sp+31]
00025530b 0x253c4
00025534
00025534loc_25534:
00025534orr x0, xzr, 30
00025538str w0, [sp+8]
0002553cbl runtime.procyield.abi0
00025540ldr x0, [sp+120]
00025544ldar x2, [x0]
00025548ldr x1, [sp+40]
0002554cldr x3, [sp+56]
00025550ldr x6, [sp+48]
00025554ldrb w4, [sp+30]
00025558ldrb w5, [sp+31]
0002555cb 0x253c4
00025560
00025560loc_25560:
00025560tbz w2, 0, 0x2566c
00025564mov x0, x2
00025568bl runtime.mutexWaitListHead
0002556cldr x1, [sp+64]
00025570ldr x2, [x1+48]
00025574str x0, [x2+616]
00025578ldr x2, [x1+48]
0002557cand x2, x2, -1024
00025580ldr x3, [sp+32]
00025584and x4, x3, 1023
00025588orr x2, x4, x2
0002558corr x2, x2, 2
00025590and x4, x2, -257
00025594ldrb w5, [sp+30]
00025598ands wzr, w5, 1
0002559ccsel x2, x4, x2, ne
000255a0adrp x27, 0xa26000
000255a4ldrb w4, [x27+1516]
000255a8tbz w4, 0, 0x255c4
000255acldr x0, [sp+120]
000255b0mov x27, x3
000255b4casal x27, x2, [x0]
000255b8subs xzr, x27, x3
000255bccset x4, eq
000255c0b 0x255e0
000255c4
000255c4loc_255c4:
000255c4ldr x0, [sp+120]
000255c8
000255c8loc_255c8:
000255c8ldaxr x27, [x0]
000255ccsubs xzr, x27, x3
000255d0b.ne 0x255dc
000255d4stlxr w27, x2, [x0]
000255d8cbnz x27, 0x255c8
000255dc
000255dcloc_255dc:
000255dccset x4, eq
000255e0
000255e0loc_255e0:
000255e0tbnz w4, 0, 0x255f4
000255e4ldr x0, [sp+48]
000255e8mov x2, x5
000255ecldrb w5, [sp+31]
000255f0b 0x25618
000255f4
000255f4loc_255f4:
000255f4movn x0, 0
000255f8bl runtime.semasleep
000255fcldr x1, [sp+64]
00025600ldr x2, [x1+48]
00025604ldr x2, [x2+616]
00025608subs xzr, x2, 0
0002560ccset x5, eq
00025610mov x0, xzr
00025614mov x2, xzr
00025618
00025618loc_25618:
00025618ldr x3, [x1+48]
0002561cstr xzr, [x3+616]
00025620ldr x3, [sp+120]
00025624ldar x7, [x3]
00025628ldr x1, [sp+40]
0002562cldr x3, [sp+56]
00025630mov x6, x0
00025634mov x4, x2
00025638ldr x0, [sp+120]
0002563cmov x2, x7
00025640b 0x253c4
00025644
00025644loc_25644:
00025644add x0, sp, 72
00025648bl runtime.(*lockTimer).end
0002564cldur x29, [sp-8]
00025650ldr x30, [sp], 112
00025654ret x30
00025658
00025658loc_25658:
00025658add x0, sp, 72
0002565cbl runtime.(*lockTimer).end
00025660ldur x29, [sp-8]
00025664ldr x30, [sp], 112
00025668ret x30
0002566c
0002566cloc_2566c:
0002566cadrp x0, 0x6a2000
00025670add x0, x0, 3104
00025674movz x1, 47
00025678bl runtime.throw
0002567c
0002567cloc_2567c:
0002567cadrp x0, 0x694000
00025680add x0, x0, 1979
00025684movz x1, 25
00025688bl runtime.throw
0002568chint
00025690
00025690loc_25690:
00025690str x0, [sp+8]
00025694mov x3, x30
00025698bl runtime.morestack_noctxt.abi0
0002569cldr x0, [sp+8]
000256a0b 0x252c0
000256a4udf 0
000256a8udf 0
000256acudf 0
000252c0
000252c0runtime.lock2: ; void runtime.lock2(runtime.mutex * l)
000252c0ldr x16, [x28+16]
000252c4subs xzr, sp, x16
000252c8b.ls 0x25690
000252ccstr x30, [sp-112]!
000252d0stur x29, [sp-8]
000252d4sub x29, sp, 8
000252d8ldr x2, [x28+48]
000252dcldrsw x3, [x2+264]
000252e0tbnz w3, 31, 0x2567c
000252e4str x0, [sp+120]
000252e8str x28, [sp+64]
000252ecadd x1, x3, 1
000252f0str w1, [x2+264]
000252f4ldrsb x27, [x0]
000252f8bl runtime.key8
000252fcadrp x27, 0xa26000
00025300ldrb w1, [x27+1516]
00025304tbz w1, 0, 0x25314
00025308orr x1, xzr, 1
0002530cswpalb w1, w2, [x0]
00025310b 0x25324
00025314
00025314loc_25314:
00025314orr x1, xzr, 1
00025318
00025318loc_25318:
00025318ldaxrb w2, [x0]
0002531cstlxrb w27, w1, [x0]
00025320cbnz x27, 0x25318
00025324
00025324loc_25324:
00025324tbz w2, 0, 0x25388
00025328str x0, [sp+56]
0002532cldr x1, [sp+64]
00025330ldr x0, [x1+48]
00025334bl runtime.semacreate
00025338stp xzr, xzr, [sp+88]
0002533cstp xzr, xzr, [sp+80]
00025340str xzr, [sp+96]
00025344ldr x1, [sp+120]
00025348str x1, [sp+72]
0002534cadd x0, sp, 72
00025350bl runtime.(*lockTimer).begin
00025354adrp x27, 0xa26000
00025358ldrsw x1, [x27+1652]
0002535cldr x0, [sp+120]
00025360ldar x2, [x0]
00025364subs wzr, w1, 1
00025368orr x1, xzr, 4
0002536ccsel x1, x1, xzr, gt
00025370str x1, [sp+40]
00025374ldr x3, [sp+56]
00025378mov x4, xzr
0002537cmov x5, xzr
00025380mov x6, xzr
00025384b 0x253c8
00025388
00025388loc_25388:
00025388tbz w2, 1, 0x253b8
0002538cadrp x27, 0xa26000
00025390ldrb w1, [x27+1516]
00025394tbz w1, 0, 0x253a4
00025398orr x1, xzr, 2
0002539cldsetalb w1, w2, [x0]
000253a0b 0x253b8
000253a4
000253a4loc_253a4:
000253a4orr x1, xzr, 2
000253a8
000253a8loc_253a8:
000253a8ldaxrb w3, [x0]
000253acorr x2, x3, x1
000253b0stlxrb w27, w2, [x0]
000253b4cbnz x27, 0x253a8
000253b8
000253b8loc_253b8:
000253b8ldur x29, [sp-8]
000253bcldr x30, [sp], 112
000253c0ret x30
000253c4
000253c4loc_253c4:
000253c4add x6, x6, 1
000253c8
000253c8loc_253c8:
000253c8tbnz w2, 0, 0x2545c
000253cctbz w4, 0, 0x25428
000253d0and x7, x2, -257
000253d4orr x7, x7, 3
000253d8and x8, x7, -1024
000253dcand x9, x7, -3
000253e0subs xzr, x8, 0
000253e4csel x7, x9, x7, eq
000253e8adrp x27, 0xa26000
000253ecldrb w8, [x27+1516]
000253f0tbz w8, 0, 0x25408
000253f4mov x27, x2
000253f8casal x27, x7, [x0]
000253fcsubs xzr, x27, x2
00025400cset x8, eq
00025404b 0x25420
00025408
00025408loc_25408:
00025408ldaxr x27, [x0]
0002540csubs xzr, x27, x2
00025410b.ne 0x2541c
00025414stlxr w27, x7, [x0]
00025418cbnz x27, 0x25408
0002541c
0002541cloc_2541c:
0002541ccset x8, eq
00025420
00025420loc_25420:
00025420tbz w8, 0, 0x25454
00025424b 0x25644
00025428
00025428loc_25428:
00025428adrp x27, 0xa26000
0002542cldrb w2, [x27+1516]
00025430tbz w2, 0, 0x25440
00025434orr x2, xzr, 3
00025438swpalb w2, w7, [x3]
0002543cb 0x25450
00025440
00025440loc_25440:
00025440orr x2, xzr, 3
00025444
00025444loc_25444:
00025444ldaxrb w7, [x3]
00025448stlxrb w27, w2, [x3]
0002544ccbnz x27, 0x25444
00025450
00025450loc_25450:
00025450tbz w7, 0, 0x25658
00025454
00025454loc_25454:
00025454ldar x2, [x0]
00025458b 0x253c4
0002545c
0002545cloc_2545c:
0002545ctbnz w4, 0, 0x254ac
00025460tbnz w2, 8, 0x254ac
00025464orr x7, x2, 256
00025468adrp x27, 0xa26000
0002546cldrb w8, [x27+1516]
00025470tbz w8, 0, 0x25488
00025474mov x27, x2
00025478casal x27, x7, [x0]
0002547csubs xzr, x27, x2
00025480cset x8, eq
00025484b 0x254a0
00025488
00025488loc_25488:
00025488ldaxr x27, [x0]
0002548csubs xzr, x27, x2
00025490b.ne 0x2549c
00025494stlxr w27, x7, [x0]
00025498cbnz x27, 0x25488
0002549c
0002549cloc_2549c:
0002549ccset x8, eq
000254a0
000254a0loc_254a0:
000254a0tbz w8, 0, 0x254ac
000254a4orr x4, xzr, 1
000254a8mov x2, x7
000254ac
000254acloc_254ac:
000254acstrb w4, [sp+30]
000254b0str x6, [sp+48]
000254b4str x2, [sp+32]
000254b8strb w5, [sp+31]
000254bctbz w4, 0, 0x254c8
000254c0orr x7, xzr, 1
000254c4b 0x254f8
000254c8
000254c8loc_254c8:
000254c8tbz w5, 0, 0x254d4
000254ccorr x7, xzr, 1
000254d0b 0x254f8
000254d4
000254d4loc_254d4:
000254d4bl runtime.mutexPreferLowLatency
000254d8ldr x1, [sp+40]
000254dcldr x2, [sp+32]
000254e0ldr x3, [sp+56]
000254e4ldrb w4, [sp+30]
000254e8ldrb w5, [sp+31]
000254ecldr x6, [sp+48]
000254f0mov x7, x0
000254f4ldr x0, [sp+120]
000254f8
000254f8loc_254f8:
000254f8tbz w7, 0, 0x25560
000254fcsubs xzr, x6, x1
00025500b.lt 0x25534
00025504add x7, x1, 1
00025508subs xzr, x6, x7
0002550cb.ge 0x25560
00025510bl runtime.osyield.abi0
00025514ldr x0, [sp+120]
00025518ldar x2, [x0]
0002551cldr x1, [sp+40]
00025520ldr x3, [sp+56]
00025524ldr x6, [sp+48]
00025528ldrb w4, [sp+30]
0002552cldrb w5, [sp+31]
00025530b 0x253c4
00025534
00025534loc_25534:
00025534orr x0, xzr, 30
00025538str w0, [sp+8]
0002553cbl runtime.procyield.abi0
00025540ldr x0, [sp+120]
00025544ldar x2, [x0]
00025548ldr x1, [sp+40]
0002554cldr x3, [sp+56]
00025550ldr x6, [sp+48]
00025554ldrb w4, [sp+30]
00025558ldrb w5, [sp+31]
0002555cb 0x253c4
00025560
00025560loc_25560:
00025560tbz w2, 0, 0x2566c
00025564mov x0, x2
00025568bl runtime.mutexWaitListHead
0002556cldr x1, [sp+64]
00025570ldr x2, [x1+48]
00025574str x0, [x2+616]
00025578ldr x2, [x1+48]
0002557cand x2, x2, -1024
00025580ldr x3, [sp+32]
00025584and x4, x3, 1023
00025588orr x2, x4, x2
0002558corr x2, x2, 2
00025590and x4, x2, -257
00025594ldrb w5, [sp+30]
00025598ands wzr, w5, 1
0002559ccsel x2, x4, x2, ne
000255a0adrp x27, 0xa26000
000255a4ldrb w4, [x27+1516]
000255a8tbz w4, 0, 0x255c4
000255acldr x0, [sp+120]
000255b0mov x27, x3
000255b4casal x27, x2, [x0]
000255b8subs xzr, x27, x3
000255bccset x4, eq
000255c0b 0x255e0
000255c4
000255c4loc_255c4:
000255c4ldr x0, [sp+120]
000255c8
000255c8loc_255c8:
000255c8ldaxr x27, [x0]
000255ccsubs xzr, x27, x3
000255d0b.ne 0x255dc
000255d4stlxr w27, x2, [x0]
000255d8cbnz x27, 0x255c8
000255dc
000255dcloc_255dc:
000255dccset x4, eq
000255e0
000255e0loc_255e0:
000255e0tbnz w4, 0, 0x255f4
000255e4ldr x0, [sp+48]
000255e8mov x2, x5
000255ecldrb w5, [sp+31]
000255f0b 0x25618
000255f4
000255f4loc_255f4:
000255f4movn x0, 0
000255f8bl runtime.semasleep
000255fcldr x1, [sp+64]
00025600ldr x2, [x1+48]
00025604ldr x2, [x2+616]
00025608subs xzr, x2, 0
0002560ccset x5, eq
00025610mov x0, xzr
00025614mov x2, xzr
00025618
00025618loc_25618:
00025618ldr x3, [x1+48]
0002561cstr xzr, [x3+616]
00025620ldr x3, [sp+120]
00025624ldar x7, [x3]
00025628ldr x1, [sp+40]
0002562cldr x3, [sp+56]
00025630mov x6, x0
00025634mov x4, x2
00025638ldr x0, [sp+120]
0002563cmov x2, x7
00025640b 0x253c4
00025644
00025644loc_25644:
00025644add x0, sp, 72
00025648bl runtime.(*lockTimer).end
0002564cldur x29, [sp-8]
00025650ldr x30, [sp], 112
00025654ret x30
00025658
00025658loc_25658:
00025658add x0, sp, 72
0002565cbl runtime.(*lockTimer).end
00025660ldur x29, [sp-8]
00025664ldr x30, [sp], 112
00025668ret x30
0002566c
0002566cloc_2566c:
0002566cadrp x0, 0x6a2000
00025670add x0, x0, 3104
00025674movz x1, 47
00025678bl runtime.throw
0002567c
0002567cloc_2567c:
0002567cadrp x0, 0x694000
00025680add x0, x0, 1979
00025684movz x1, 25
00025688bl runtime.throw
0002568chint
00025690
00025690loc_25690:
00025690str x0, [sp+8]
00025694mov x3, x30
00025698bl runtime.morestack_noctxt.abi0
0002569cldr x0, [sp+8]
000256a0b 0x252c0
000256a4udf 0
000256a8udf 0
000256acudf 0
000252c0
000256b0
000256b0runtime.unlock: ; void runtime.unlock(runtime.mutex * l)
000256b0ldr x16, [x28+16]
000256b4subs xzr, sp, x16
000256b8b.ls 0x256d8
000256bcstr x30, [sp-32]!
000256c0stur x29, [sp-8]
000256c4sub x29, sp, 8
000256c8bl runtime.unlockWithRank
000256ccldur x29, [sp-8]
000256d0ldr x30, [sp], 32
000256d4ret x30
000256d8
000256d8loc_256d8:
000256d8str x0, [sp+8]
000256dcmov x3, x30
000256e0bl runtime.morestack_noctxt.abi0
000256e4ldr x0, [sp+8]
000256e8b 0x256b0
000256ecudf 0
000256b0
000256b0runtime.unlock: ; void runtime.unlock(runtime.mutex * l)
000256b0ldr x16, [x28+16]
000256b4subs xzr, sp, x16
000256b8b.ls 0x256d8
000256bcstr x30, [sp-32]!
000256c0stur x29, [sp-8]
000256c4sub x29, sp, 8
000256c8bl runtime.unlockWithRank
000256ccldur x29, [sp-8]
000256d0ldr x30, [sp], 32
000256d4ret x30
000256d8
000256d8loc_256d8:
000256d8str x0, [sp+8]
000256dcmov x3, x30
000256e0bl runtime.morestack_noctxt.abi0
000256e4ldr x0, [sp+8]
000256e8b 0x256b0
000256ecudf 0
000256b0
000256f0
000256f0runtime.unlock2: ; void runtime.unlock2(runtime.mutex * l)
000256f0ldr x16, [x28+16]
000256f4subs xzr, sp, x16
000256f8b.ls 0x257cc
000256fcstr x30, [sp-48]!
00025700stur x29, [sp-8]
00025704sub x29, sp, 8
00025708str x0, [sp+56]
0002570cldrsb x27, [x0]
00025710str x28, [sp+32]
00025714bl runtime.key8
00025718adrp x27, 0xa26000
0002571cldrb w1, [x27+1516]
00025720tbz w1, 0, 0x25730
00025724mov x2, xzr
00025728swpalb w2, w3, [x0]
0002572cb 0x25740
00025730
00025730loc_25730:
00025730mov x2, xzr
00025734
00025734loc_25734:
00025734ldaxrb w3, [x0]
00025738stlxrb w27, w2, [x0]
0002573ccbnz x27, 0x25734
00025740
00025740loc_25740:
00025740tbz w3, 0, 0x257b8
00025744tbz w3, 1, 0x25750
00025748ldr x0, [sp+56]
0002574cbl runtime.unlock2Wake
00025750
00025750loc_25750:
00025750ldr x2, [sp+32]
00025754ldr x2, [x2+48]
00025758ldrsb x27, [x2]
0002575cadd x0, x2, 624
00025760ldr x1, [sp+56]
00025764bl runtime.(*mLockProfile).recordUnlock
00025768ldr x2, [sp+32]
0002576cldr x3, [x2+48]
00025770ldrsw x4, [x3+264]
00025774sub x4, x4, 1
00025778str w4, [x3+264]
0002577cldr x3, [x2+48]
00025780ldrsw x3, [x3+264]
00025784tbnz w3, 31, 0x257a8
00025788cbnz w3, 0x2579c
0002578cldrb w0, [x2+185]
00025790tbz w0, 0, 0x2579c
00025794movn x0, 1313
00025798str x0, [x2+16]
0002579c
0002579cloc_2579c:
0002579cldur x29, [sp-8]
000257a0ldr x30, [sp], 48
000257a4ret x30
000257a8
000257a8loc_257a8:
000257a8adrp x0, 0x695000
000257acadd x0, x0, 3173
000257b0movz x1, 27
000257b4bl runtime.throw
000257b8
000257b8loc_257b8:
000257b8adrp x0, 0x693000
000257bcadd x0, x0, 892
000257c0movz x1, 23
000257c4bl runtime.throw
000257c8hint
000257cc
000257ccloc_257cc:
000257ccstr x0, [sp+8]
000257d0mov x3, x30
000257d4bl runtime.morestack_noctxt.abi0
000257d8ldr x0, [sp+8]
000257dcb 0x256f0
000256f0
000256f0runtime.unlock2: ; void runtime.unlock2(runtime.mutex * l)
000256f0ldr x16, [x28+16]
000256f4subs xzr, sp, x16
000256f8b.ls 0x257cc
000256fcstr x30, [sp-48]!
00025700stur x29, [sp-8]
00025704sub x29, sp, 8
00025708str x0, [sp+56]
0002570cldrsb x27, [x0]
00025710str x28, [sp+32]
00025714bl runtime.key8
00025718adrp x27, 0xa26000
0002571cldrb w1, [x27+1516]
00025720tbz w1, 0, 0x25730
00025724mov x2, xzr
00025728swpalb w2, w3, [x0]
0002572cb 0x25740
00025730
00025730loc_25730:
00025730mov x2, xzr
00025734
00025734loc_25734:
00025734ldaxrb w3, [x0]
00025738stlxrb w27, w2, [x0]
0002573ccbnz x27, 0x25734
00025740
00025740loc_25740:
00025740tbz w3, 0, 0x257b8
00025744tbz w3, 1, 0x25750
00025748ldr x0, [sp+56]
0002574cbl runtime.unlock2Wake
00025750
00025750loc_25750:
00025750ldr x2, [sp+32]
00025754ldr x2, [x2+48]
00025758ldrsb x27, [x2]
0002575cadd x0, x2, 624
00025760ldr x1, [sp+56]
00025764bl runtime.(*mLockProfile).recordUnlock
00025768ldr x2, [sp+32]
0002576cldr x3, [x2+48]
00025770ldrsw x4, [x3+264]
00025774sub x4, x4, 1
00025778str w4, [x3+264]
0002577cldr x3, [x2+48]
00025780ldrsw x3, [x3+264]
00025784tbnz w3, 31, 0x257a8
00025788cbnz w3, 0x2579c
0002578cldrb w0, [x2+185]
00025790tbz w0, 0, 0x2579c
00025794movn x0, 1313
00025798str x0, [x2+16]
0002579c
0002579cloc_2579c:
0002579cldur x29, [sp-8]
000257a0ldr x30, [sp], 48
000257a4ret x30
000257a8
000257a8loc_257a8:
000257a8adrp x0, 0x695000
000257acadd x0, x0, 3173
000257b0movz x1, 27
000257b4bl runtime.throw
000257b8
000257b8loc_257b8:
000257b8adrp x0, 0x693000
000257bcadd x0, x0, 892
000257c0movz x1, 23
000257c4bl runtime.throw
000257c8hint
000257cc
000257ccloc_257cc:
000257ccstr x0, [sp+8]
000257d0mov x3, x30
000257d4bl runtime.morestack_noctxt.abi0
000257d8ldr x0, [sp+8]
000257dcb 0x256f0
000256f0
000257e0
000257e0runtime.unlock2Wake: ; void runtime.unlock2Wake(runtime.mutex * l)
000257e0ldr x16, [x28+16]
000257e4subs xzr, sp, x16
000257e8b.ls 0x25a0c
000257ecstr x30, [sp-80]!
000257f0stur x29, [sp-8]
000257f4sub x29, sp, 8
000257f8str x0, [sp+88]
000257fcldar x1, [x0]
00025800str x1, [sp+40]
00025804orr x0, xzr, 16
00025808bl runtime.cheaprandn
0002580cstr w0, [sp+28]
00025810cbnz w0, 0x2581c
00025814ldr x1, [sp+40]
00025818b 0x25838
0002581c
0002581cloc_2581c:
0002581cldr x1, [sp+40]
00025820tbz w1, 8, 0x25838
00025824ldr x0, [sp+88]
00025828bl runtime.mutexPreferLowLatency
0002582ctbz w0, 0, 0x25840
00025830ldr w0, [sp+28]
00025834ldr x1, [sp+40]
00025838
00025838loc_25838:
00025838ldr x2, [sp+88]
0002583cb 0x25850
00025840
00025840loc_25840:
00025840ldur x29, [sp-8]
00025844ldr x30, [sp], 80
00025848ret x30
0002584c
0002584cloc_2584c:
0002584cldar x1, [x2]
00025850
00025850loc_25850:
00025850ands xzr, x1, -1024
00025854b.eq 0x258a4
00025858tbnz w1, 9, 0x258a4
0002585corr x3, x1, 512
00025860adrp x27, 0xa26000
00025864ldrb w4, [x27+1516]
00025868tbz w4, 0, 0x25880
0002586cmov x27, x1
00025870casal x27, x3, [x2]
00025874subs xzr, x27, x1
00025878cset x4, eq
0002587cb 0x25898
00025880
00025880loc_25880:
00025880ldaxr x27, [x2]
00025884subs xzr, x27, x1
00025888b.ne 0x25894
0002588cstlxr w27, x3, [x2]
00025890cbnz x27, 0x25880
00025894
00025894loc_25894:
00025894cset x4, eq
00025898
00025898loc_25898:
00025898tbz w4, 0, 0x2584c
0002589cmov x3, xzr
000258a0b 0x258b8
000258a4
000258a4loc_258a4:
000258a4ldur x29, [sp-8]
000258a8ldr x30, [sp], 80
000258acret x30
000258b0
000258b0loc_258b0:
000258b0ldar x1, [x5]
000258b4mov x3, x4
000258b8
000258b8loc_258b8:
000258b8str x3, [sp+64]
000258bcstr x1, [sp+32]
000258c0mov x0, x1
000258c4bl runtime.mutexWaitListHead
000258c8bl runtime.muintptr.ptr
000258ccldr x1, [sp+64]
000258d0cbz x1, 0x258ec
000258d4ldr x1, [sp+32]
000258d8mov x2, x0
000258dcldr w3, [sp+28]
000258e0ldr x0, [sp+64]
000258e4mov x4, x0
000258e8b 0x25974
000258ec
000258ecloc_258ec:
000258ecstr x0, [sp+56]
000258f0ldr x1, [sp+32]
000258f4tbz w1, 8, 0x2590c
000258f8ldr x0, [sp+88]
000258fcbl runtime.mutexPreferLowLatency
00025900tbz w0, 0, 0x25914
00025904ldr x0, [sp+56]
00025908ldr x1, [sp+32]
0002590c
0002590cloc_2590c:
0002590cmov x2, x0
00025910b 0x25920
00025914
00025914loc_25914:
00025914ldr x1, [sp+32]
00025918ldr x2, [sp+56]
0002591cmov x0, xzr
00025920
00025920loc_25920:
00025920ldr w3, [sp+28]
00025924cbz w3, 0x25930
00025928mov x4, xzr
0002592cb 0x25974
00025930
00025930loc_25930:
00025930mov x0, x2
00025934b 0x259e0
00025938
00025938loc_25938:
00025938ldr x1, [sp+56]
0002593cldr x2, [sp+64]
00025940subs xzr, x1, x2
00025944b.eq 0x2595c
00025948ldr x3, [x2+616]
0002594cldr x4, [sp+48]
00025950str x3, [x4+616]
00025954mov x0, x2
00025958b 0x25964
0002595c
0002595cloc_2595c:
0002595cmov x0, x2
00025960mov x2, xzr
00025964
00025964loc_25964:
00025964ldr w3, [sp+28]
00025968mov x4, x2
0002596cmov x2, x1
00025970ldr x1, [sp+32]
00025974
00025974loc_25974:
00025974and x5, x1, -1024
00025978subs xzr, x2, x0
0002597cb.ne 0x25988
00025980ldr x2, [x2+616]
00025984and x5, x2, -1024
00025988
00025988loc_25988:
00025988and x2, x1, 511
0002598corr x2, x5, x2
00025990adrp x27, 0xa26000
00025994ldrb w5, [x27+1516]
00025998tbz w5, 0, 0x259b4
0002599cldr x5, [sp+88]
000259a0mov x27, x1
000259a4casal x27, x2, [x5]
000259a8subs xzr, x27, x1
000259accset x6, eq
000259b0b 0x259d0
000259b4
000259b4loc_259b4:
000259b4ldr x5, [sp+88]
000259b8
000259b8loc_259b8:
000259b8ldaxr x27, [x5]
000259bcsubs xzr, x27, x1
000259c0b.ne 0x259cc
000259c4stlxr w27, x2, [x5]
000259c8cbnz x27, 0x259b8
000259cc
000259ccloc_259cc:
000259cccset x6, eq
000259d0
000259d0loc_259d0:
000259d0tbz w6, 0, 0x258b0
000259d4b 0x259f8
000259d8
000259d8loc_259d8:
000259d8mov x2, x0
000259dcldr x0, [sp+64]
000259e0
000259e0loc_259e0:
000259e0str x0, [sp+48]
000259e4str x2, [sp+64]
000259e8ldr x0, [x2+616]
000259ecbl runtime.muintptr.ptr
000259f0cbnz x0, 0x259d8
000259f4b 0x25938
000259f8
000259f8loc_259f8:
000259f8cbz x0, 0x25a00
000259fcbl runtime.semawakeup
00025a00
00025a00loc_25a00:
00025a00ldur x29, [sp-8]
00025a04ldr x30, [sp], 80
00025a08ret x30
00025a0c
00025a0cloc_25a0c:
00025a0cstr x0, [sp+8]
00025a10mov x3, x30
00025a14bl runtime.morestack_noctxt.abi0
00025a18ldr x0, [sp+8]
00025a1cb 0x257e0
000257e0
000257e0runtime.unlock2Wake: ; void runtime.unlock2Wake(runtime.mutex * l)
000257e0ldr x16, [x28+16]
000257e4subs xzr, sp, x16
000257e8b.ls 0x25a0c
000257ecstr x30, [sp-80]!
000257f0stur x29, [sp-8]
000257f4sub x29, sp, 8
000257f8str x0, [sp+88]
000257fcldar x1, [x0]
00025800str x1, [sp+40]
00025804orr x0, xzr, 16
00025808bl runtime.cheaprandn
0002580cstr w0, [sp+28]
00025810cbnz w0, 0x2581c
00025814ldr x1, [sp+40]
00025818b 0x25838
0002581c
0002581cloc_2581c:
0002581cldr x1, [sp+40]
00025820tbz w1, 8, 0x25838
00025824ldr x0, [sp+88]
00025828bl runtime.mutexPreferLowLatency
0002582ctbz w0, 0, 0x25840
00025830ldr w0, [sp+28]
00025834ldr x1, [sp+40]
00025838
00025838loc_25838:
00025838ldr x2, [sp+88]
0002583cb 0x25850
00025840
00025840loc_25840:
00025840ldur x29, [sp-8]
00025844ldr x30, [sp], 80
00025848ret x30
0002584c
0002584cloc_2584c:
0002584cldar x1, [x2]
00025850
00025850loc_25850:
00025850ands xzr, x1, -1024
00025854b.eq 0x258a4
00025858tbnz w1, 9, 0x258a4
0002585corr x3, x1, 512
00025860adrp x27, 0xa26000
00025864ldrb w4, [x27+1516]
00025868tbz w4, 0, 0x25880
0002586cmov x27, x1
00025870casal x27, x3, [x2]
00025874subs xzr, x27, x1
00025878cset x4, eq
0002587cb 0x25898
00025880
00025880loc_25880:
00025880ldaxr x27, [x2]
00025884subs xzr, x27, x1
00025888b.ne 0x25894
0002588cstlxr w27, x3, [x2]
00025890cbnz x27, 0x25880
00025894
00025894loc_25894:
00025894cset x4, eq
00025898
00025898loc_25898:
00025898tbz w4, 0, 0x2584c
0002589cmov x3, xzr
000258a0b 0x258b8
000258a4
000258a4loc_258a4:
000258a4ldur x29, [sp-8]
000258a8ldr x30, [sp], 80
000258acret x30
000258b0
000258b0loc_258b0:
000258b0ldar x1, [x5]
000258b4mov x3, x4
000258b8
000258b8loc_258b8:
000258b8str x3, [sp+64]
000258bcstr x1, [sp+32]
000258c0mov x0, x1
000258c4bl runtime.mutexWaitListHead
000258c8bl runtime.muintptr.ptr
000258ccldr x1, [sp+64]
000258d0cbz x1, 0x258ec
000258d4ldr x1, [sp+32]
000258d8mov x2, x0
000258dcldr w3, [sp+28]
000258e0ldr x0, [sp+64]
000258e4mov x4, x0
000258e8b 0x25974
000258ec
000258ecloc_258ec:
000258ecstr x0, [sp+56]
000258f0ldr x1, [sp+32]
000258f4tbz w1, 8, 0x2590c
000258f8ldr x0, [sp+88]
000258fcbl runtime.mutexPreferLowLatency
00025900tbz w0, 0, 0x25914
00025904ldr x0, [sp+56]
00025908ldr x1, [sp+32]
0002590c
0002590cloc_2590c:
0002590cmov x2, x0
00025910b 0x25920
00025914
00025914loc_25914:
00025914ldr x1, [sp+32]
00025918ldr x2, [sp+56]
0002591cmov x0, xzr
00025920
00025920loc_25920:
00025920ldr w3, [sp+28]
00025924cbz w3, 0x25930
00025928mov x4, xzr
0002592cb 0x25974
00025930
00025930loc_25930:
00025930mov x0, x2
00025934b 0x259e0
00025938
00025938loc_25938:
00025938ldr x1, [sp+56]
0002593cldr x2, [sp+64]
00025940subs xzr, x1, x2
00025944b.eq 0x2595c
00025948ldr x3, [x2+616]
0002594cldr x4, [sp+48]
00025950str x3, [x4+616]
00025954mov x0, x2
00025958b 0x25964
0002595c
0002595cloc_2595c:
0002595cmov x0, x2
00025960mov x2, xzr
00025964
00025964loc_25964:
00025964ldr w3, [sp+28]
00025968mov x4, x2
0002596cmov x2, x1
00025970ldr x1, [sp+32]
00025974
00025974loc_25974:
00025974and x5, x1, -1024
00025978subs xzr, x2, x0
0002597cb.ne 0x25988
00025980ldr x2, [x2+616]
00025984and x5, x2, -1024
00025988
00025988loc_25988:
00025988and x2, x1, 511
0002598corr x2, x5, x2
00025990adrp x27, 0xa26000
00025994ldrb w5, [x27+1516]
00025998tbz w5, 0, 0x259b4
0002599cldr x5, [sp+88]
000259a0mov x27, x1
000259a4casal x27, x2, [x5]
000259a8subs xzr, x27, x1
000259accset x6, eq
000259b0b 0x259d0
000259b4
000259b4loc_259b4:
000259b4ldr x5, [sp+88]
000259b8
000259b8loc_259b8:
000259b8ldaxr x27, [x5]
000259bcsubs xzr, x27, x1
000259c0b.ne 0x259cc
000259c4stlxr w27, x2, [x5]
000259c8cbnz x27, 0x259b8
000259cc
000259ccloc_259cc:
000259cccset x6, eq
000259d0
000259d0loc_259d0:
000259d0tbz w6, 0, 0x258b0
000259d4b 0x259f8
000259d8
000259d8loc_259d8:
000259d8mov x2, x0
000259dcldr x0, [sp+64]
000259e0
000259e0loc_259e0:
000259e0str x0, [sp+48]
000259e4str x2, [sp+64]
000259e8ldr x0, [x2+616]
000259ecbl runtime.muintptr.ptr
000259f0cbnz x0, 0x259d8
000259f4b 0x25938
000259f8
000259f8loc_259f8:
000259f8cbz x0, 0x25a00
000259fcbl runtime.semawakeup
00025a00
00025a00loc_25a00:
00025a00ldur x29, [sp-8]
00025a04ldr x30, [sp], 80
00025a08ret x30
00025a0c
00025a0cloc_25a0c:
00025a0cstr x0, [sp+8]
00025a10mov x3, x30
00025a14bl runtime.morestack_noctxt.abi0
00025a18ldr x0, [sp+8]
00025a1cb 0x257e0
000257e0
00025a20
00025a20runtime.lockRank.String: ; void runtime.lockRank.String(runtime.lockRank rank)
00025a20cbz x0, 0x25a80
00025a24subs xzr, x0, 1000
00025a28b.eq 0x25a70
00025a2ctbnz x0, 63, 0x25a40
00025a30adrp x27, 0x9e8000
00025a34ldr x2, [x27+3576]
00025a38subs xzr, x0, x2
00025a3cb.lt 0x25a50
00025a40
00025a40loc_25a40:
00025a40adrp x0, 0x68c000
00025a44add x0, x0, 628
00025a48orr x1, xzr, 8
00025a4cret x30
00025a50
00025a50loc_25a50:
00025a50adrp x27, 0x9e8000
00025a54ldr x2, [x27+3568]
00025a58ubfm x3, x0, 60, 59
00025a5cldr x3, [x2+x3]
00025a60add x2, x2, x0, lsl #4
00025a64ldr x1, [x2+8]
00025a68mov x0, x3
00025a6cret x30
00025a70
00025a70loc_25a70:
00025a70adrp x0, 0x68b000
00025a74add x0, x0, 798
00025a78orr x1, xzr, 4
00025a7cret x30
00025a80
00025a80loc_25a80:
00025a80adrp x0, 0x68b000
00025a84add x0, x0, 3423
00025a88orr x1, xzr, 7
00025a8cret x30
00025a20
00025a20runtime.lockRank.String: ; void runtime.lockRank.String(runtime.lockRank rank)
00025a20cbz x0, 0x25a80
00025a24subs xzr, x0, 1000
00025a28b.eq 0x25a70
00025a2ctbnz x0, 63, 0x25a40
00025a30adrp x27, 0x9e8000
00025a34ldr x2, [x27+3576]
00025a38subs xzr, x0, x2
00025a3cb.lt 0x25a50
00025a40
00025a40loc_25a40:
00025a40adrp x0, 0x68c000
00025a44add x0, x0, 628
00025a48orr x1, xzr, 8
00025a4cret x30
00025a50
00025a50loc_25a50:
00025a50adrp x27, 0x9e8000
00025a54ldr x2, [x27+3568]
00025a58ubfm x3, x0, 60, 59
00025a5cldr x3, [x2+x3]
00025a60add x2, x2, x0, lsl #4
00025a64ldr x1, [x2+8]
00025a68mov x0, x3
00025a6cret x30
00025a70
00025a70loc_25a70:
00025a70adrp x0, 0x68b000
00025a74add x0, x0, 798
00025a78orr x1, xzr, 4
00025a7cret x30
00025a80
00025a80loc_25a80:
00025a80adrp x0, 0x68b000
00025a84add x0, x0, 3423
00025a88orr x1, xzr, 7
00025a8cret x30
00025a20
00025a90
00025a90runtime.lockInit: ; void runtime.lockInit(runtime.mutex * l, runtime.lockRank rank)
00025a90ret x30
00025a94udf 0
00025a98udf 0
00025a9cudf 0
00025a90
00025a90runtime.lockInit: ; void runtime.lockInit(runtime.mutex * l, runtime.lockRank rank)
00025a90ret x30
00025a94udf 0
00025a98udf 0
00025a9cudf 0
00025a90
00025aa0
00025aa0runtime.getLockRank: ; void runtime.getLockRank(runtime.mutex * l)
00025aa0mov x0, xzr
00025aa4ret x30
00025aa8udf 0
00025aacudf 0
00025aa0
00025aa0runtime.getLockRank: ; void runtime.getLockRank(runtime.mutex * l)
00025aa0mov x0, xzr
00025aa4ret x30
00025aa8udf 0
00025aacudf 0
00025aa0
00025ab0
00025ab0runtime.lockWithRank: ; void runtime.lockWithRank(runtime.mutex * l, runtime.lockRank rank)
00025ab0ldr x16, [x28+16]
00025ab4subs xzr, sp, x16
00025ab8b.ls 0x25ad8
00025abcstr x30, [sp-32]!
00025ac0stur x29, [sp-8]
00025ac4sub x29, sp, 8
00025ac8bl runtime.lock2
00025accldur x29, [sp-8]
00025ad0ldr x30, [sp], 32
00025ad4ret x30
00025ad8
00025ad8loc_25ad8:
00025ad8stp x0, x1, [sp+8]
00025adcmov x3, x30
00025ae0bl runtime.morestack_noctxt.abi0
00025ae4ldp x0, x1, [sp+8]
00025ae8b 0x25ab0
00025aecudf 0
00025ab0
00025ab0runtime.lockWithRank: ; void runtime.lockWithRank(runtime.mutex * l, runtime.lockRank rank)
00025ab0ldr x16, [x28+16]
00025ab4subs xzr, sp, x16
00025ab8b.ls 0x25ad8
00025abcstr x30, [sp-32]!
00025ac0stur x29, [sp-8]
00025ac4sub x29, sp, 8
00025ac8bl runtime.lock2
00025accldur x29, [sp-8]
00025ad0ldr x30, [sp], 32
00025ad4ret x30
00025ad8
00025ad8loc_25ad8:
00025ad8stp x0, x1, [sp+8]
00025adcmov x3, x30
00025ae0bl runtime.morestack_noctxt.abi0
00025ae4ldp x0, x1, [sp+8]
00025ae8b 0x25ab0
00025aecudf 0
00025ab0
00025af0
00025af0runtime.acquireLockRankAndM: ; void runtime.acquireLockRankAndM(runtime.lockRank rank)
00025af0str x30, [sp-16]!
00025af4stur x29, [sp-8]
00025af8sub x29, sp, 8
00025afcbl runtime.acquirem
00025b00ldur x29, [sp-8]
00025b04ldr x30, [sp], 16
00025b08ret x30
00025b0cudf 0
00025af0
00025af0runtime.acquireLockRankAndM: ; void runtime.acquireLockRankAndM(runtime.lockRank rank)
00025af0str x30, [sp-16]!
00025af4stur x29, [sp-8]
00025af8sub x29, sp, 8
00025afcbl runtime.acquirem
00025b00ldur x29, [sp-8]
00025b04ldr x30, [sp], 16
00025b08ret x30
00025b0cudf 0
00025af0
00025b10
00025b10runtime.unlockWithRank: ; void runtime.unlockWithRank(runtime.mutex * l)
00025b10ldr x16, [x28+16]
00025b14subs xzr, sp, x16
00025b18b.ls 0x25b38
00025b1cstr x30, [sp-32]!
00025b20stur x29, [sp-8]
00025b24sub x29, sp, 8
00025b28bl runtime.unlock2
00025b2cldur x29, [sp-8]
00025b30ldr x30, [sp], 32
00025b34ret x30
00025b38
00025b38loc_25b38:
00025b38str x0, [sp+8]
00025b3cmov x3, x30
00025b40bl runtime.morestack_noctxt.abi0
00025b44ldr x0, [sp+8]
00025b48b 0x25b10
00025b4cudf 0
00025b10
00025b10runtime.unlockWithRank: ; void runtime.unlockWithRank(runtime.mutex * l)
00025b10ldr x16, [x28+16]
00025b14subs xzr, sp, x16
00025b18b.ls 0x25b38
00025b1cstr x30, [sp-32]!
00025b20stur x29, [sp-8]
00025b24sub x29, sp, 8
00025b28bl runtime.unlock2
00025b2cldur x29, [sp-8]
00025b30ldr x30, [sp], 32
00025b34ret x30
00025b38
00025b38loc_25b38:
00025b38str x0, [sp+8]
00025b3cmov x3, x30
00025b40bl runtime.morestack_noctxt.abi0
00025b44ldr x0, [sp+8]
00025b48b 0x25b10
00025b4cudf 0
00025b10
00025b50
00025b50runtime.releaseLockRankAndM: ; void runtime.releaseLockRankAndM(runtime.lockRank rank)
00025b50str x30, [sp-32]!
00025b54stur x29, [sp-8]
00025b58sub x29, sp, 8
00025b5cldr x0, [x28+48]
00025b60bl runtime.releasem
00025b64ldur x29, [sp-8]
00025b68ldr x30, [sp], 32
00025b6cret x30
00025b50
00025b50runtime.releaseLockRankAndM: ; void runtime.releaseLockRankAndM(runtime.lockRank rank)
00025b50str x30, [sp-32]!
00025b54stur x29, [sp-8]
00025b58sub x29, sp, 8
00025b5cldr x0, [x28+48]
00025b60bl runtime.releasem
00025b64ldur x29, [sp-8]
00025b68ldr x30, [sp], 32
00025b6cret x30
00025b50
00025b70
00025b70runtime.lockWithRankMayAcquire: ; void runtime.lockWithRankMayAcquire(runtime.mutex * l, runtime.lockRank rank)
00025b70ret x30
00025b74udf 0
00025b78udf 0
00025b7cudf 0
00025b70
00025b70runtime.lockWithRankMayAcquire: ; void runtime.lockWithRankMayAcquire(runtime.mutex * l, runtime.lockRank rank)
00025b70ret x30
00025b74udf 0
00025b78udf 0
00025b7cudf 0
00025b70
00025b80
00025b80runtime.assertLockHeld: ; void runtime.assertLockHeld(runtime.mutex * l)
00025b80ret x30
00025b84udf 0
00025b88udf 0
00025b8cudf 0
00025b80
00025b80runtime.assertLockHeld: ; void runtime.assertLockHeld(runtime.mutex * l)
00025b80ret x30
00025b84udf 0
00025b88udf 0
00025b8cudf 0
00025b80
00025b90
00025b90runtime.worldStopped: ; void runtime.worldStopped(void)
00025b90ret x30
00025b94udf 0
00025b98udf 0
00025b9cudf 0
00025b90
00025b90runtime.worldStopped: ; void runtime.worldStopped(void)
00025b90ret x30
00025b94udf 0
00025b98udf 0
00025b9cudf 0
00025b90
00025ba0
00025ba0runtime.worldStarted: ; void runtime.worldStarted(void)
00025ba0ret x30
00025ba4udf 0
00025ba8udf 0
00025bacudf 0
00025ba0
00025ba0runtime.worldStarted: ; void runtime.worldStarted(void)
00025ba0ret x30
00025ba4udf 0
00025ba8udf 0
00025bacudf 0
00025ba0
00025bb0
00025bb0runtime.assertWorldStopped: ; void runtime.assertWorldStopped(void)
00025bb0ret x30
00025bb4udf 0
00025bb8udf 0
00025bbcudf 0
00025bb0
00025bb0runtime.assertWorldStopped: ; void runtime.assertWorldStopped(void)
00025bb0ret x30
00025bb4udf 0
00025bb8udf 0
00025bbcudf 0
00025bb0
00025bc0
00025bc0runtime.assertWorldStoppedOrLockHeld: ; void runtime.assertWorldStoppedOrLockHeld(runtime.mutex * l)
00025bc0ret x30
00025bc4udf 0
00025bc8udf 0
00025bccudf 0
00025bc0
00025bc0runtime.assertWorldStoppedOrLockHeld: ; void runtime.assertWorldStoppedOrLockHeld(runtime.mutex * l)
00025bc0ret x30
00025bc4udf 0
00025bc8udf 0
00025bccudf 0
00025bc0
00025bd0
00025bd0runtime.mallocinit: ; void runtime.mallocinit(void)
00025bd0ldr x16, [x28+16]
00025bd4subs xzr, sp, x16
00025bd8b.ls 0x25f74
00025bdcstr x30, [sp-64]!
00025be0stur x29, [sp-8]
00025be4sub x29, sp, 8
00025be8adrp x27, 0x9a0000
00025becldrh w2, [x27+484]
00025bf0subs wzr, w2, 16
00025bf4b.ne 0x25f60
00025bf8adrp x27, 0xa26000
00025bfcldr x2, [x27+1760]
00025c00cbz x2, 0x25f50
00025c04subs xzr, x2, 0x80000
00025c08b.hi 0x25ef4
00025c0csubs xzr, x2, 4096
00025c10b.lo 0x25e98
00025c14sub x3, x2, 1
00025c18ands xzr, x2, x3
00025c1cb.ne 0x25e54
00025c20adrp x27, 0xa26000
00025c24ldr x2, [x27+1768]
00025c28sub x3, x2, 1
00025c2cands xzr, x2, x3
00025c30b.ne 0x25e10
00025c34subs xzr, x2, 0x400000
00025c38b.ls 0x25c44
00025c3cadrp x27, 0xa26000
00025c40str xzr, [x27+1768]
00025c44
00025c44loc_25c44:
00025c44adrp x27, 0xa26000
00025c48ldr x2, [x27+1768]
00025c4ccbnz x2, 0x25de4
00025c50
00025c50loc_25c50:
00025c50mov x0, xzr
00025c54orr x1, xzr, 1
00025c58b 0x25c60
00025c5c
00025c5cloc_25c5c:
00025c5cadd x0, x0, 1
00025c60
00025c60loc_25c60:
00025c60subs xzr, x0, 68
00025c64b.ge 0x25dc8
00025c68adrp x2, 0x99e000
00025c6cadd x2, x2, 2848
00025c70ldrb w3, [x2+x0]
00025c74subs wzr, w3, 1
00025c78b.ls 0x25c80
00025c7cmov x1, xzr
00025c80
00025c80loc_25c80:
00025c80adrp x3, 0x9a0000
00025c84add x3, x3, 480
00025c88ldrh w4, [x3+x0]
00025c8csubs xzr, x4, 512
00025c90b.ne 0x25c5c
00025c94tbz w1, 0, 0x25db8
00025c98adrp x0, 0xa0d000
00025c9cadd x0, x0, 2112
00025ca0bl runtime.(*mheap).init
00025ca4bl runtime.allocmcache
00025ca8adrp x27, 0xa26000
00025cacstr x0, [x27+1936]
00025cb0adrp x0, 0xa26000
00025cb4add x0, x0, 3712
00025cb8movz x1, 40
00025cbcbl runtime.lockInit
00025cc0adrp x0, 0xa26000
00025cc4add x0, x0, 1824
00025cc8movz x1, 41
00025cccbl runtime.lockInit
00025cd0adrp x0, 0xa26000
00025cd4add x0, x0, 1832
00025cd8movz x1, 42
00025cdcbl runtime.lockInit
00025ce0adrp x0, 0xa26000
00025ce4add x0, x0, 1840
00025ce8movz x1, 43
00025cecbl runtime.lockInit
00025cf0mov x0, xzr
00025cf4b 0x25d18
00025cf8
00025cf8loc_25cf8:
00025cf8str x0, [sp+40]
00025cfcadrp x2, 0xa26000
00025d00add x2, x2, 3168
00025d04add x0, x2, x0, lsl #3
00025d08movz x1, 44
00025d0cbl runtime.lockInit
00025d10ldr x2, [sp+40]
00025d14add x0, x2, 1
00025d18
00025d18loc_25d18:
00025d18subs xzr, x0, 3
00025d1cb.lt 0x25cf8
00025d20adrp x0, 0xa26000
00025d24add x0, x0, 3136
00025d28movz x1, 52
00025d2cbl runtime.lockInit
00025d30orr x0, xzr, 127
00025d34b 0x25d78
00025d38
00025d38loc_25d38:
00025d38str x0, [sp+32]
00025d3cstr x1, [sp+48]
00025d40ubfm x1, x0, 24, 23
00025d44orr x1, x1, 0x4000000000
00025d48str x1, [sp+24]
00025d4cadrp x0, 0xa26000
00025d50add x0, x0, 1360
00025d54bl runtime.(*fixalloc).alloc
00025d58ldr x1, [sp+24]
00025d5cstr x1, [x0]
00025d60ldr x1, [sp+48]
00025d64ldr x2, [x1]
00025d68str x2, [x0+16]
00025d6cstr x0, [x1]
00025d70ldr x1, [sp+32]
00025d74sub x0, x1, 1
00025d78
00025d78loc_25d78:
00025d78tbnz x0, 63, 0x25d9c
00025d7csubs xzr, x0, 63
00025d80b.le 0x25d90
00025d84adrp x1, 0xa26000
00025d88add x1, x1, 1432
00025d8cb 0x25d38
00025d90
00025d90loc_25d90:
00025d90adrp x1, 0xa1d000
00025d94add x1, x1, 2696
00025d98b 0x25d38
00025d9c
00025d9cloc_25d9c:
00025d9cadrp x0, 0xa27000
00025da0add x0, x0, 2504
00025da4movn x1, 0x8000000000000000
00025da8bl internal/runtime/atomic.(*Int64).Store
00025dacldur x29, [sp-8]
00025db0ldr x30, [sp], 64
00025db4ret x30
00025db8
00025db8loc_25db8:
00025db8adrp x0, 0x6aa000
00025dbcadd x0, x0, 3464
00025dc0movz x1, 83
00025dc4bl runtime.throw
00025dc8
00025dc8loc_25dc8:
00025dc8adrp x0, 0x6a5000
00025dccadd x0, x0, 2014
00025dd0movz x1, 54
00025dd4bl runtime.throw
00025dd8
00025dd8loc_25dd8:
00025dd8add x2, x2, 1
00025ddcadrp x27, 0xa26000
00025de0str x2, [x27+1776]
00025de4
00025de4loc_25de4:
00025de4adrp x27, 0xa26000
00025de8ldr x2, [x27+1776]
00025decorr x3, xzr, 1
00025df0lslv x4, x3, x2
00025df4adrp x27, 0xa26000
00025df8ldr x5, [x27+1768]
00025dfcsubs xzr, x2, 64
00025e00csel x4, x4, xzr, lo
00025e04subs xzr, x4, x5
00025e08b.ne 0x25dd8
00025e0cb 0x25c50
00025e10
00025e10loc_25e10:
00025e10bl runtime.printlock
00025e14adrp x0, 0x693000
00025e18add x0, x0, 938
00025e1cmovz x1, 23
00025e20bl runtime.printstring
00025e24adrp x27, 0xa26000
00025e28ldr x0, [x27+1768]
00025e2cbl runtime.printuint
00025e30adrp x0, 0x693000
00025e34add x0, x0, 915
00025e38movz x1, 23
00025e3cbl runtime.printstring
00025e40bl runtime.printunlock
00025e44adrp x0, 0x694000
00025e48add x0, x0, 2004
00025e4cmovz x1, 25
00025e50bl runtime.throw
00025e54
00025e54loc_25e54:
00025e54bl runtime.printlock
00025e58adrp x0, 0x690000
00025e5cadd x0, x0, 2183
00025e60movz x1, 18
00025e64bl runtime.printstring
00025e68adrp x27, 0xa26000
00025e6cldr x0, [x27+1760]
00025e70bl runtime.printuint
00025e74adrp x0, 0x693000
00025e78add x0, x0, 915
00025e7cmovz x1, 23
00025e80bl runtime.printstring
00025e84bl runtime.printunlock
00025e88adrp x0, 0x691000
00025e8cadd x0, x0, 2347
00025e90movz x1, 20
00025e94bl runtime.throw
00025e98
00025e98loc_25e98:
00025e98bl runtime.printlock
00025e9cadrp x0, 0x690000
00025ea0add x0, x0, 2183
00025ea4movz x1, 18
00025ea8bl runtime.printstring
00025eacadrp x27, 0xa26000
00025eb0ldr x0, [x27+1760]
00025eb4bl runtime.printuint
00025eb8adrp x0, 0x69c000
00025ebcadd x0, x0, 4010
00025ec0movz x1, 37
00025ec4bl runtime.printstring
00025ec8orr x0, xzr, 4096
00025eccbl runtime.printint
00025ed0adrp x0, 0x68a000
00025ed4add x0, x0, 4061
00025ed8orr x1, xzr, 2
00025edcbl runtime.printstring
00025ee0bl runtime.printunlock
00025ee4adrp x0, 0x691000
00025ee8add x0, x0, 2347
00025eecmovz x1, 20
00025ef0bl runtime.throw
00025ef4
00025ef4loc_25ef4:
00025ef4bl runtime.printlock
00025ef8adrp x0, 0x690000
00025efcadd x0, x0, 2183
00025f00movz x1, 18
00025f04bl runtime.printstring
00025f08adrp x27, 0xa26000
00025f0cldr x0, [x27+1760]
00025f10bl runtime.printuint
00025f14adrp x0, 0x69c000
00025f18add x0, x0, 1093
00025f1cmovz x1, 36
00025f20bl runtime.printstring
00025f24orr x0, xzr, 0x80000
00025f28bl runtime.printint
00025f2cadrp x0, 0x68a000
00025f30add x0, x0, 4061
00025f34orr x1, xzr, 2
00025f38bl runtime.printstring
00025f3cbl runtime.printunlock
00025f40adrp x0, 0x691000
00025f44add x0, x0, 2347
00025f48movz x1, 20
00025f4cbl runtime.throw
00025f50
00025f50loc_25f50:
00025f50adrp x0, 0x697000
00025f54add x0, x0, 3968
00025f58orr x1, xzr, 30
00025f5cbl runtime.throw
00025f60
00025f60loc_25f60:
00025f60adrp x0, 0x690000
00025f64add x0, x0, 115
00025f68movz x1, 17
00025f6cbl runtime.throw
00025f70hint
00025f74
00025f74loc_25f74:
00025f74mov x3, x30
00025f78bl runtime.morestack_noctxt.abi0
00025f7cb 0x25bd0
00025bd0
00025bd0runtime.mallocinit: ; void runtime.mallocinit(void)
00025bd0ldr x16, [x28+16]
00025bd4subs xzr, sp, x16
00025bd8b.ls 0x25f74
00025bdcstr x30, [sp-64]!
00025be0stur x29, [sp-8]
00025be4sub x29, sp, 8
00025be8adrp x27, 0x9a0000
00025becldrh w2, [x27+484]
00025bf0subs wzr, w2, 16
00025bf4b.ne 0x25f60
00025bf8adrp x27, 0xa26000
00025bfcldr x2, [x27+1760]
00025c00cbz x2, 0x25f50
00025c04subs xzr, x2, 0x80000
00025c08b.hi 0x25ef4
00025c0csubs xzr, x2, 4096
00025c10b.lo 0x25e98
00025c14sub x3, x2, 1
00025c18ands xzr, x2, x3
00025c1cb.ne 0x25e54
00025c20adrp x27, 0xa26000
00025c24ldr x2, [x27+1768]
00025c28sub x3, x2, 1
00025c2cands xzr, x2, x3
00025c30b.ne 0x25e10
00025c34subs xzr, x2, 0x400000
00025c38b.ls 0x25c44
00025c3cadrp x27, 0xa26000
00025c40str xzr, [x27+1768]
00025c44
00025c44loc_25c44:
00025c44adrp x27, 0xa26000
00025c48ldr x2, [x27+1768]
00025c4ccbnz x2, 0x25de4
00025c50
00025c50loc_25c50:
00025c50mov x0, xzr
00025c54orr x1, xzr, 1
00025c58b 0x25c60
00025c5c
00025c5cloc_25c5c:
00025c5cadd x0, x0, 1
00025c60
00025c60loc_25c60:
00025c60subs xzr, x0, 68
00025c64b.ge 0x25dc8
00025c68adrp x2, 0x99e000
00025c6cadd x2, x2, 2848
00025c70ldrb w3, [x2+x0]
00025c74subs wzr, w3, 1
00025c78b.ls 0x25c80
00025c7cmov x1, xzr
00025c80
00025c80loc_25c80:
00025c80adrp x3, 0x9a0000
00025c84add x3, x3, 480
00025c88ldrh w4, [x3+x0]
00025c8csubs xzr, x4, 512
00025c90b.ne 0x25c5c
00025c94tbz w1, 0, 0x25db8
00025c98adrp x0, 0xa0d000
00025c9cadd x0, x0, 2112
00025ca0bl runtime.(*mheap).init
00025ca4bl runtime.allocmcache
00025ca8adrp x27, 0xa26000
00025cacstr x0, [x27+1936]
00025cb0adrp x0, 0xa26000
00025cb4add x0, x0, 3712
00025cb8movz x1, 40
00025cbcbl runtime.lockInit
00025cc0adrp x0, 0xa26000
00025cc4add x0, x0, 1824
00025cc8movz x1, 41
00025cccbl runtime.lockInit
00025cd0adrp x0, 0xa26000
00025cd4add x0, x0, 1832
00025cd8movz x1, 42
00025cdcbl runtime.lockInit
00025ce0adrp x0, 0xa26000
00025ce4add x0, x0, 1840
00025ce8movz x1, 43
00025cecbl runtime.lockInit
00025cf0mov x0, xzr
00025cf4b 0x25d18
00025cf8
00025cf8loc_25cf8:
00025cf8str x0, [sp+40]
00025cfcadrp x2, 0xa26000
00025d00add x2, x2, 3168
00025d04add x0, x2, x0, lsl #3
00025d08movz x1, 44
00025d0cbl runtime.lockInit
00025d10ldr x2, [sp+40]
00025d14add x0, x2, 1
00025d18
00025d18loc_25d18:
00025d18subs xzr, x0, 3
00025d1cb.lt 0x25cf8
00025d20adrp x0, 0xa26000
00025d24add x0, x0, 3136
00025d28movz x1, 52
00025d2cbl runtime.lockInit
00025d30orr x0, xzr, 127
00025d34b 0x25d78
00025d38
00025d38loc_25d38:
00025d38str x0, [sp+32]
00025d3cstr x1, [sp+48]
00025d40ubfm x1, x0, 24, 23
00025d44orr x1, x1, 0x4000000000
00025d48str x1, [sp+24]
00025d4cadrp x0, 0xa26000
00025d50add x0, x0, 1360
00025d54bl runtime.(*fixalloc).alloc
00025d58ldr x1, [sp+24]
00025d5cstr x1, [x0]
00025d60ldr x1, [sp+48]
00025d64ldr x2, [x1]
00025d68str x2, [x0+16]
00025d6cstr x0, [x1]
00025d70ldr x1, [sp+32]
00025d74sub x0, x1, 1
00025d78
00025d78loc_25d78:
00025d78tbnz x0, 63, 0x25d9c
00025d7csubs xzr, x0, 63
00025d80b.le 0x25d90
00025d84adrp x1, 0xa26000
00025d88add x1, x1, 1432
00025d8cb 0x25d38
00025d90
00025d90loc_25d90:
00025d90adrp x1, 0xa1d000
00025d94add x1, x1, 2696
00025d98b 0x25d38
00025d9c
00025d9cloc_25d9c:
00025d9cadrp x0, 0xa27000
00025da0add x0, x0, 2504
00025da4movn x1, 0x8000000000000000
00025da8bl internal/runtime/atomic.(*Int64).Store
00025dacldur x29, [sp-8]
00025db0ldr x30, [sp], 64
00025db4ret x30
00025db8
00025db8loc_25db8:
00025db8adrp x0, 0x6aa000
00025dbcadd x0, x0, 3464
00025dc0movz x1, 83
00025dc4bl runtime.throw
00025dc8
00025dc8loc_25dc8:
00025dc8adrp x0, 0x6a5000
00025dccadd x0, x0, 2014
00025dd0movz x1, 54
00025dd4bl runtime.throw
00025dd8
00025dd8loc_25dd8:
00025dd8add x2, x2, 1
00025ddcadrp x27, 0xa26000
00025de0str x2, [x27+1776]
00025de4
00025de4loc_25de4:
00025de4adrp x27, 0xa26000
00025de8ldr x2, [x27+1776]
00025decorr x3, xzr, 1
00025df0lslv x4, x3, x2
00025df4adrp x27, 0xa26000
00025df8ldr x5, [x27+1768]
00025dfcsubs xzr, x2, 64
00025e00csel x4, x4, xzr, lo
00025e04subs xzr, x4, x5
00025e08b.ne 0x25dd8
00025e0cb 0x25c50
00025e10
00025e10loc_25e10:
00025e10bl runtime.printlock
00025e14adrp x0, 0x693000
00025e18add x0, x0, 938
00025e1cmovz x1, 23
00025e20bl runtime.printstring
00025e24adrp x27, 0xa26000
00025e28ldr x0, [x27+1768]
00025e2cbl runtime.printuint
00025e30adrp x0, 0x693000
00025e34add x0, x0, 915
00025e38movz x1, 23
00025e3cbl runtime.printstring
00025e40bl runtime.printunlock
00025e44adrp x0, 0x694000
00025e48add x0, x0, 2004
00025e4cmovz x1, 25
00025e50bl runtime.throw
00025e54
00025e54loc_25e54:
00025e54bl runtime.printlock
00025e58adrp x0, 0x690000
00025e5cadd x0, x0, 2183
00025e60movz x1, 18
00025e64bl runtime.printstring
00025e68adrp x27, 0xa26000
00025e6cldr x0, [x27+1760]
00025e70bl runtime.printuint
00025e74adrp x0, 0x693000
00025e78add x0, x0, 915
00025e7cmovz x1, 23
00025e80bl runtime.printstring
00025e84bl runtime.printunlock
00025e88adrp x0, 0x691000
00025e8cadd x0, x0, 2347
00025e90movz x1, 20
00025e94bl runtime.throw
00025e98
00025e98loc_25e98:
00025e98bl runtime.printlock
00025e9cadrp x0, 0x690000
00025ea0add x0, x0, 2183
00025ea4movz x1, 18
00025ea8bl runtime.printstring
00025eacadrp x27, 0xa26000
00025eb0ldr x0, [x27+1760]
00025eb4bl runtime.printuint
00025eb8adrp x0, 0x69c000
00025ebcadd x0, x0, 4010
00025ec0movz x1, 37
00025ec4bl runtime.printstring
00025ec8orr x0, xzr, 4096
00025eccbl runtime.printint
00025ed0adrp x0, 0x68a000
00025ed4add x0, x0, 4061
00025ed8orr x1, xzr, 2
00025edcbl runtime.printstring
00025ee0bl runtime.printunlock
00025ee4adrp x0, 0x691000
00025ee8add x0, x0, 2347
00025eecmovz x1, 20
00025ef0bl runtime.throw
00025ef4
00025ef4loc_25ef4:
00025ef4bl runtime.printlock
00025ef8adrp x0, 0x690000
00025efcadd x0, x0, 2183
00025f00movz x1, 18
00025f04bl runtime.printstring
00025f08adrp x27, 0xa26000
00025f0cldr x0, [x27+1760]
00025f10bl runtime.printuint
00025f14adrp x0, 0x69c000
00025f18add x0, x0, 1093
00025f1cmovz x1, 36
00025f20bl runtime.printstring
00025f24orr x0, xzr, 0x80000
00025f28bl runtime.printint
00025f2cadrp x0, 0x68a000
00025f30add x0, x0, 4061
00025f34orr x1, xzr, 2
00025f38bl runtime.printstring
00025f3cbl runtime.printunlock
00025f40adrp x0, 0x691000
00025f44add x0, x0, 2347
00025f48movz x1, 20
00025f4cbl runtime.throw
00025f50
00025f50loc_25f50:
00025f50adrp x0, 0x697000
00025f54add x0, x0, 3968
00025f58orr x1, xzr, 30
00025f5cbl runtime.throw
00025f60
00025f60loc_25f60:
00025f60adrp x0, 0x690000
00025f64add x0, x0, 115
00025f68movz x1, 17
00025f6cbl runtime.throw
00025f70hint
00025f74
00025f74loc_25f74:
00025f74mov x3, x30
00025f78bl runtime.morestack_noctxt.abi0
00025f7cb 0x25bd0
00025bd0
00025f80
00025f80runtime.(*mheap).sysAlloc: ; void runtime.(*mheap).sysAlloc(runtime.mheap * h, uintptr n, runtime.arenaHint ** hintList, bool register)
00025f80ldr x16, [x28+16]
00025f84sub x17, sp, 48
00025f88subs xzr, x17, x16
00025f8cb.ls 0x265dc
00025f90str x30, [sp-176]!
00025f94stur x29, [sp-8]
00025f98sub x29, sp, 8
00025f9cstr x0, [sp+184]
00025fa0str x1, [sp+192]
00025fa4str x2, [sp+200]
00025fa8strb w3, [sp+208]
00025facldrsb x27, [x0]
00025fb0bl runtime.assertLockHeld
00025fb4ldr x0, [sp+192]
00025fb8movz x1, 0x4000000
00025fbcbl runtime.alignUp
00025fc0str x0, [sp+120]
00025fc4ldr x1, [sp+184]
00025fc8movz x2, 584
00025fccmovk x2, 0x10000
00025fd0add x2, x1, x2
00025fd4ldr x3, [sp+200]
00025fd8subs xzr, x3, x2
00025fdcb.eq 0x25fe8
00025fe0mov x2, xzr
00025fe4b 0x2606c
00025fe8
00025fe8loc_25fe8:
00025fe8movz x4, 592
00025fecmovk x4, 0x10000
00025ff0add x4, x4, x1
00025ff4mov x1, x0
00025ff8movz x2, 0x4000000
00025ffcadrp x3, 0xa27000
00026000add x3, x3, 2776
00026004mov x0, x4
00026008bl runtime.(*linearAlloc).alloc
0002600ccbz x0, 0x2601c
00026010mov x3, x0
00026014ldr x0, [sp+120]
00026018b 0x26278
0002601c
0002601cloc_2601c:
0002601cldr x1, [sp+184]
00026020ldr x3, [sp+200]
00026024mov x2, x0
00026028ldr x0, [sp+120]
0002602cb 0x2606c
00026030
00026030loc_26030:
00026030ldr x2, [x4+16]
00026034str x2, [x3]
00026038movz x2, 36112
0002603cmovk x2, 0x10000
00026040add x0, x1, x2
00026044mov x1, x4
00026048bl runtime.(*fixalloc).free
0002604cldr x2, [sp+184]
00026050ldr x3, [sp+120]
00026054ldr x4, [sp+200]
00026058ldr x5, [sp+160]
0002605cmov x0, x3
00026060mov x1, x2
00026064mov x3, x4
00026068mov x2, x5
0002606c
0002606cloc_2606c:
0002606cldr x4, [x3]
00026070cbz x4, 0x26138
00026074str x4, [sp+112]
00026078ldr x5, [x4]
0002607cldrb w6, [x4+8]
00026080sub x7, x5, x0
00026084ands wzr, w6, 1
00026088csel x5, x7, x5, ne
0002608cadd x6, x5, x0
00026090subs xzr, x5, x6
00026094b.ls 0x260a0
00026098mov x2, xzr
0002609cb 0x260f0
000260a0
000260a0loc_260a0:
000260a0str x5, [sp+80]
000260a4str x6, [sp+104]
000260a8sub x0, x6, 1
000260acbl runtime.arenaIndex
000260b0subs xzr, x0, 0x400000
000260b4b.lo 0x260c0
000260b8mov x0, xzr
000260bcb 0x260d4
000260c0
000260c0loc_260c0:
000260c0ldr x0, [sp+80]
000260c4mov x2, x0
000260c8mov x0, x2
000260ccldr x1, [sp+120]
000260d0bl runtime.sysReserve
000260d4
000260d4loc_260d4:
000260d4ldr x1, [sp+184]
000260d8ldr x3, [sp+200]
000260dcldr x4, [sp+112]
000260e0ldr x5, [sp+80]
000260e4ldr x6, [sp+104]
000260e8mov x2, x0
000260ecldr x0, [sp+120]
000260f0
000260f0loc_260f0:
000260f0mov x7, x2
000260f4subs xzr, x2, x5
000260f8b.eq 0x26120
000260fcstr x7, [sp+160]
00026100cbz x7, 0x26030
00026104mov x1, x0
00026108mov x0, x7
0002610cbl runtime.sysFreeOS
00026110ldr x1, [sp+184]
00026114ldr x3, [sp+200]
00026118ldr x4, [sp+112]
0002611cb 0x26030
00026120
00026120loc_26120:
00026120ldrb w3, [x4+8]
00026124ands wzr, w3, 1
00026128csel x3, x5, x6, ne
0002612cstr x3, [x4]
00026130mov x2, x0
00026134b 0x26144
00026138
00026138loc_26138:
00026138mov x7, x2
0002613cmov x2, x0
00026140mov x0, xzr
00026144
00026144loc_26144:
00026144cbnz x0, 0x261d8
00026148mov x0, xzr
0002614cmov x1, x2
00026150movz x2, 0x4000000
00026154bl runtime.sysReserveAligned
00026158cbz x0, 0x2628c
0002615cstr x0, [sp+160]
00026160str x1, [sp+120]
00026164ldr x1, [sp+184]
00026168movz x2, 36112
0002616cmovk x2, 0x10000
00026170add x0, x1, x2
00026174str x0, [sp+152]
00026178bl runtime.(*fixalloc).alloc
0002617cldr x1, [sp+160]
00026180str x1, [x0]
00026184orr x1, xzr, 1
00026188strb w1, [x0+8]
0002618cadrp x27, 0xa1c000
00026190ldr x1, [x27+2696]
00026194str x1, [x0+16]
00026198adrp x27, 0xa1c000
0002619cstr x0, [x27+2696]
000261a0ldr x0, [sp+152]
000261a4bl runtime.(*fixalloc).alloc
000261a8ldr x7, [sp+160]
000261acmov x1, x7
000261b0ldr x2, [sp+120]
000261b4add x1, x2, x1
000261b8str x1, [x0]
000261bcadrp x27, 0xa1c000
000261c0ldr x1, [x27+2696]
000261c4str x1, [x0+16]
000261c8adrp x27, 0xa1c000
000261ccstr x0, [x27+2696]
000261d0ldr x1, [sp+184]
000261d4mov x0, x2
000261d8
000261d8loc_261d8:
000261d8mov x2, x7
000261dcstr x7, [sp+72]
000261e0add x3, x0, x7
000261e4str x3, [sp+120]
000261e8subs xzr, x7, x3
000261ecb.ls 0x26200
000261f0orr x4, xzr, 28
000261f4adrp x5, 0x695000
000261f8add x5, x5, 1948
000261fcb 0x26268
00026200
00026200loc_26200:
00026200str x2, [sp+160]
00026204str x0, [sp+96]
00026208mov x0, x7
0002620cbl runtime.arenaIndex
00026210subs xzr, x0, 0x400000
00026214b.lo 0x26228
00026218movz x1, 33
0002621cadrp x2, 0x699000
00026220add x2, x2, 309
00026224b 0x2624c
00026228
00026228loc_26228:
00026228ldr x1, [sp+120]
0002622csub x0, x1, 1
00026230bl runtime.arenaIndex
00026234subs xzr, x0, 0x400000
00026238orr x1, xzr, 32
0002623ccsel x1, x1, xzr, hs
00026240adrp x2, 0x698000
00026244add x2, x2, 1104
00026248csel x2, x2, xzr, hs
0002624c
0002624cloc_2624c:
0002624cldr x0, [sp+96]
00026250ldr x3, [sp+120]
00026254ldr x7, [sp+72]
00026258mov x4, x1
0002625cmov x5, x2
00026260ldr x1, [sp+184]
00026264ldr x2, [sp+160]
00026268
00026268loc_26268:
00026268cbnz x4, 0x26568
0002626cmov x3, x2
00026270ands xzr, x2, 0x3ffffff
00026274b.ne 0x26558
00026278
00026278loc_26278:
00026278str x3, [sp+160]
0002627cstr x0, [sp+120]
00026280mov x0, x3
00026284bl runtime.arenaIndex
00026288b 0x262b8
0002628c
0002628cloc_2628c:
0002628cmov x0, xzr
00026290mov x1, xzr
00026294ldur x29, [sp-8]
00026298ldr x30, [sp], 176
0002629cret x30
000262a0
000262a0loc_262a0:
000262a0ldr x1, [sp+128]
000262a4add x1, x1, x0, lsl #3
000262a8ldr x2, [sp+64]
000262acstlr x2, [x1]
000262b0ldr x1, [sp+56]
000262b4add x0, x1, 1
000262b8
000262b8loc_262b8:
000262b8str x0, [sp+56]
000262bcldr x1, [sp+160]
000262c0ldr x2, [sp+120]
000262c4add x1, x2, x1
000262c8sub x0, x1, 1
000262ccbl runtime.arenaIndex
000262d0ldr x1, [sp+56]
000262d4subs xzr, x0, x1
000262d8b.lo 0x264d0
000262dcmov x0, x1
000262e0bl runtime.arenaIdx.l1
000262e4subs xzr, x0, 1
000262e8b.hs 0x26550
000262ecldr x1, [sp+184]
000262f0add x27, x1, 0x10000
000262f4ldr x2, [x27+536]
000262f8cbnz x2, 0x26358
000262fcmovz x0, 0x2000000
00026300bl runtime.sysAllocOS
00026304cbz x0, 0x26540
00026308str x0, [sp+144]
0002630cldr x2, [sp+184]
00026310add x27, x2, 0x10000
00026314ldrb w3, [x27+544]
00026318tbz w3, 0, 0x26328
0002631cmovz x1, 0x2000000
00026320bl runtime.sysHugePage
00026324b 0x26330
00026328
00026328loc_26328:
00026328movz x1, 0x2000000
0002632cbl runtime.sysNoHugePage
00026330
00026330loc_26330:
00026330ldr x0, [sp+56]
00026334bl runtime.arenaIdx.l1
00026338subs xzr, x0, 1
0002633cb.hs 0x26538
00026340ldr x1, [sp+184]
00026344movz x3, 536
00026348movk x3, 0x10000
0002634cadd x3, x1, x3
00026350ldr x2, [sp+144]
00026354stlr x2, [x3]
00026358
00026358loc_26358:
00026358str x2, [sp+128]
0002635cldr x0, [sp+56]
00026360bl runtime.arenaIdx.l2
00026364subs xzr, x0, 0x400000
00026368b.hs 0x26530
0002636cldr x4, [sp+128]
00026370ldrsb x27, [x4]
00026374ldr x5, [x4+3*x0]
00026378cbnz x5, 0x26520
0002637cmovz x4, 552
00026380movk x4, 0x10000
00026384ldr x5, [sp+184]
00026388add x0, x4, x5
0002638cmovz x1, 3088
00026390movk x1, 0x10000
00026394orr x2, xzr, 8
00026398adrp x3, 0xa2b000
0002639cadd x3, x3, 536
000263a0bl runtime.(*linearAlloc).alloc
000263a4cbnz x0, 0x263c4
000263a8movz x0, 3088
000263acmovk x0, 0x10000
000263b0orr x1, xzr, 8
000263b4adrp x2, 0xa2b000
000263b8add x2, x2, 536
000263bcbl runtime.persistentalloc
000263c0cbz x0, 0x26510
000263c4
000263c4loc_263c4:
000263c4str x0, [sp+64]
000263c8ldrb w1, [sp+208]
000263cctbz w1, 0, 0x264b8
000263d0ldr x3, [sp+184]
000263d4add x27, x3, 0x10000
000263d8ldr x4, [x27+640]
000263dcadd x27, x3, 0x10000
000263e0ldr x5, [x27+632]
000263e4subs xzr, x4, x5
000263e8b.ne 0x26478
000263ecubfm x4, x4, 60, 59
000263f0cbnz x4, 0x263fc
000263f4adrp x27, 0xa25000
000263f8ldr x4, [x27+1760]
000263fc
000263fcloc_263fc:
000263fcstr x4, [sp+48]
00026400mov x0, x4
00026404orr x1, xzr, 8
00026408adrp x2, 0xa2b000
0002640cadd x2, x2, 536
00026410bl runtime.persistentalloc
00026414cbz x0, 0x26500
00026418ldr x3, [sp+184]
0002641cadd x27, x3, 0x10000
00026420ldr x4, [x27+632]
00026424add x27, x3, 0x10000
00026428ldr x1, [x27+624]
0002642cadd x27, x3, 0x10000
00026430str x0, [x27+624]
00026434ldr x5, [sp+48]
00026438ubfm x5, x5, 3, 63
0002643cadd x27, x3, 0x10000
00026440str x5, [x27+640]
00026444add x27, x3, 0x10000
00026448ldr x0, [x27+624]
0002644cadd x27, x3, 0x10000
00026450ldr x5, [x27+632]
00026454subs xzr, x5, x4
00026458csel x4, x4, x5, gt
0002645csubs xzr, x0, x1
00026460b.eq 0x26470
00026464ubfm x2, x4, 61, 60
00026468bl runtime.memmove
0002646cldr x3, [sp+184]
00026470
00026470loc_26470:
00026470ldr x0, [sp+64]
00026474ldrb w1, [sp+208]
00026478
00026478loc_26478:
00026478add x27, x3, 0x10000
0002647cldr x4, [x27+632]
00026480add x27, x3, 0x10000
00026484ldr x2, [x27+640]
00026488add x5, x4, 1
0002648csubs xzr, x2, x5
00026490b.lo 0x264f8
00026494add x27, x3, 0x10000
00026498str x5, [x27+632]
0002649csubs xzr, x4, x5
000264a0b.hs 0x264ec
000264a4add x27, x3, 0x10000
000264a8ldr x2, [x27+624]
000264acldr x5, [sp+56]
000264b0str x5, [x2+3*x4]
000264b4b 0x264bc
000264b8
000264b8loc_264b8:
000264b8ldr x5, [sp+56]
000264bc
000264bcloc_264bc:
000264bcmov x0, x5
000264c0bl runtime.arenaIdx.l2
000264c4subs xzr, x0, 0x400000
000264c8b.lo 0x262a0
000264ccb 0x264e4
000264d0
000264d0loc_264d0:
000264d0ldr x0, [sp+160]
000264d4ldr x1, [sp+120]
000264d8ldur x29, [sp-8]
000264dcldr x30, [sp], 176
000264e0ret x30
000264e4
000264e4loc_264e4:
000264e4orr x1, xzr, 0x400000
000264e8bl runtime.panicIndexU
000264ec
000264ecloc_264ec:
000264ecmov x0, x4
000264f0mov x1, x5
000264f4bl runtime.panicIndex
000264f8
000264f8loc_264f8:
000264f8mov x1, x5
000264fcbl runtime.panicSliceAcap
00026500
00026500loc_26500:
00026500adrp x0, 0x699000
00026504add x0, x0, 3547
00026508movz x1, 34
0002650cbl runtime.throw
00026510
00026510loc_26510:
00026510adrp x0, 0x6a0000
00026514add x0, x0, 1068
00026518movz x1, 44
0002651cbl runtime.throw
00026520
00026520loc_26520:
00026520adrp x0, 0x693000
00026524add x0, x0, 2029
00026528movz x1, 25
0002652cbl runtime.throw
00026530
00026530loc_26530:
00026530orr x1, xzr, 0x400000
00026534bl runtime.panicIndexU
00026538
00026538loc_26538:
00026538orr x1, xzr, 1
0002653cbl runtime.panicIndexU
00026540
00026540loc_26540:
00026540adrp x0, 0x69d000
00026544add x0, x0, 1261
00026548movz x1, 39
0002654cbl runtime.throw
00026550
00026550loc_26550:
00026550orr x1, xzr, 1
00026554bl runtime.panicIndexU
00026558
00026558loc_26558:
00026558adrp x0, 0x699000
0002655cadd x0, x0, 375
00026560movz x1, 33
00026564bl runtime.throw
00026568
00026568loc_26568:
00026568str x4, [sp+88]
0002656cstr x5, [sp+136]
00026570bl runtime.printlock
00026574adrp x0, 0x699000
00026578add x0, x0, 342
0002657cmovz x1, 33
00026580bl runtime.printstring
00026584ldr x0, [sp+72]
00026588bl runtime.printhex
0002658cadrp x0, 0x689000
00026590add x0, x0, 4049
00026594orr x1, xzr, 2
00026598bl runtime.printstring
0002659cldr x0, [sp+120]
000265a0bl runtime.printhex
000265a4adrp x0, 0x697000
000265a8add x0, x0, 2370
000265acorr x1, xzr, 31
000265b0bl runtime.printstring
000265b4ldr x0, [sp+136]
000265b8ldr x1, [sp+88]
000265bcbl runtime.printstring
000265c0bl runtime.printnl
000265c4bl runtime.printunlock
000265c8adrp x0, 0x6a1000
000265ccadd x0, x0, 893
000265d0movz x1, 46
000265d4bl runtime.throw
000265d8hint
000265dc
000265dcloc_265dc:
000265dcstp x0, x1, [sp+8]
000265e0str x2, [sp+24]
000265e4strb w3, [sp+32]
000265e8mov x3, x30
000265ecbl runtime.morestack_noctxt.abi0
000265f0ldp x0, x1, [sp+8]
000265f4ldr x2, [sp+24]
000265f8ldrb w3, [sp+32]
000265fcb 0x25f80
00025f80
00025f80runtime.(*mheap).sysAlloc: ; void runtime.(*mheap).sysAlloc(runtime.mheap * h, uintptr n, runtime.arenaHint ** hintList, bool register)
00025f80ldr x16, [x28+16]
00025f84sub x17, sp, 48
00025f88subs xzr, x17, x16
00025f8cb.ls 0x265dc
00025f90str x30, [sp-176]!
00025f94stur x29, [sp-8]
00025f98sub x29, sp, 8
00025f9cstr x0, [sp+184]
00025fa0str x1, [sp+192]
00025fa4str x2, [sp+200]
00025fa8strb w3, [sp+208]
00025facldrsb x27, [x0]
00025fb0bl runtime.assertLockHeld
00025fb4ldr x0, [sp+192]
00025fb8movz x1, 0x4000000
00025fbcbl runtime.alignUp
00025fc0str x0, [sp+120]
00025fc4ldr x1, [sp+184]
00025fc8movz x2, 584
00025fccmovk x2, 0x10000
00025fd0add x2, x1, x2
00025fd4ldr x3, [sp+200]
00025fd8subs xzr, x3, x2
00025fdcb.eq 0x25fe8
00025fe0mov x2, xzr
00025fe4b 0x2606c
00025fe8
00025fe8loc_25fe8:
00025fe8movz x4, 592
00025fecmovk x4, 0x10000
00025ff0add x4, x4, x1
00025ff4mov x1, x0
00025ff8movz x2, 0x4000000
00025ffcadrp x3, 0xa27000
00026000add x3, x3, 2776
00026004mov x0, x4
00026008bl runtime.(*linearAlloc).alloc
0002600ccbz x0, 0x2601c
00026010mov x3, x0
00026014ldr x0, [sp+120]
00026018b 0x26278
0002601c
0002601cloc_2601c:
0002601cldr x1, [sp+184]
00026020ldr x3, [sp+200]
00026024mov x2, x0
00026028ldr x0, [sp+120]
0002602cb 0x2606c
00026030
00026030loc_26030:
00026030ldr x2, [x4+16]
00026034str x2, [x3]
00026038movz x2, 36112
0002603cmovk x2, 0x10000
00026040add x0, x1, x2
00026044mov x1, x4
00026048bl runtime.(*fixalloc).free
0002604cldr x2, [sp+184]
00026050ldr x3, [sp+120]
00026054ldr x4, [sp+200]
00026058ldr x5, [sp+160]
0002605cmov x0, x3
00026060mov x1, x2
00026064mov x3, x4
00026068mov x2, x5
0002606c
0002606cloc_2606c:
0002606cldr x4, [x3]
00026070cbz x4, 0x26138
00026074str x4, [sp+112]
00026078ldr x5, [x4]
0002607cldrb w6, [x4+8]
00026080sub x7, x5, x0
00026084ands wzr, w6, 1
00026088csel x5, x7, x5, ne
0002608cadd x6, x5, x0
00026090subs xzr, x5, x6
00026094b.ls 0x260a0
00026098mov x2, xzr
0002609cb 0x260f0
000260a0
000260a0loc_260a0:
000260a0str x5, [sp+80]
000260a4str x6, [sp+104]
000260a8sub x0, x6, 1
000260acbl runtime.arenaIndex
000260b0subs xzr, x0, 0x400000
000260b4b.lo 0x260c0
000260b8mov x0, xzr
000260bcb 0x260d4
000260c0
000260c0loc_260c0:
000260c0ldr x0, [sp+80]
000260c4mov x2, x0
000260c8mov x0, x2
000260ccldr x1, [sp+120]
000260d0bl runtime.sysReserve
000260d4
000260d4loc_260d4:
000260d4ldr x1, [sp+184]
000260d8ldr x3, [sp+200]
000260dcldr x4, [sp+112]
000260e0ldr x5, [sp+80]
000260e4ldr x6, [sp+104]
000260e8mov x2, x0
000260ecldr x0, [sp+120]
000260f0
000260f0loc_260f0:
000260f0mov x7, x2
000260f4subs xzr, x2, x5
000260f8b.eq 0x26120
000260fcstr x7, [sp+160]
00026100cbz x7, 0x26030
00026104mov x1, x0
00026108mov x0, x7
0002610cbl runtime.sysFreeOS
00026110ldr x1, [sp+184]
00026114ldr x3, [sp+200]
00026118ldr x4, [sp+112]
0002611cb 0x26030
00026120
00026120loc_26120:
00026120ldrb w3, [x4+8]
00026124ands wzr, w3, 1
00026128csel x3, x5, x6, ne
0002612cstr x3, [x4]
00026130mov x2, x0
00026134b 0x26144
00026138
00026138loc_26138:
00026138mov x7, x2
0002613cmov x2, x0
00026140mov x0, xzr
00026144
00026144loc_26144:
00026144cbnz x0, 0x261d8
00026148mov x0, xzr
0002614cmov x1, x2
00026150movz x2, 0x4000000
00026154bl runtime.sysReserveAligned
00026158cbz x0, 0x2628c
0002615cstr x0, [sp+160]
00026160str x1, [sp+120]
00026164ldr x1, [sp+184]
00026168movz x2, 36112
0002616cmovk x2, 0x10000
00026170add x0, x1, x2
00026174str x0, [sp+152]
00026178bl runtime.(*fixalloc).alloc
0002617cldr x1, [sp+160]
00026180str x1, [x0]
00026184orr x1, xzr, 1
00026188strb w1, [x0+8]
0002618cadrp x27, 0xa1c000
00026190ldr x1, [x27+2696]
00026194str x1, [x0+16]
00026198adrp x27, 0xa1c000
0002619cstr x0, [x27+2696]
000261a0ldr x0, [sp+152]
000261a4bl runtime.(*fixalloc).alloc
000261a8ldr x7, [sp+160]
000261acmov x1, x7
000261b0ldr x2, [sp+120]
000261b4add x1, x2, x1
000261b8str x1, [x0]
000261bcadrp x27, 0xa1c000
000261c0ldr x1, [x27+2696]
000261c4str x1, [x0+16]
000261c8adrp x27, 0xa1c000
000261ccstr x0, [x27+2696]
000261d0ldr x1, [sp+184]
000261d4mov x0, x2
000261d8
000261d8loc_261d8:
000261d8mov x2, x7
000261dcstr x7, [sp+72]
000261e0add x3, x0, x7
000261e4str x3, [sp+120]
000261e8subs xzr, x7, x3
000261ecb.ls 0x26200
000261f0orr x4, xzr, 28
000261f4adrp x5, 0x695000
000261f8add x5, x5, 1948
000261fcb 0x26268
00026200
00026200loc_26200:
00026200str x2, [sp+160]
00026204str x0, [sp+96]
00026208mov x0, x7
0002620cbl runtime.arenaIndex
00026210subs xzr, x0, 0x400000
00026214b.lo 0x26228
00026218movz x1, 33
0002621cadrp x2, 0x699000
00026220add x2, x2, 309
00026224b 0x2624c
00026228
00026228loc_26228:
00026228ldr x1, [sp+120]
0002622csub x0, x1, 1
00026230bl runtime.arenaIndex
00026234subs xzr, x0, 0x400000
00026238orr x1, xzr, 32
0002623ccsel x1, x1, xzr, hs
00026240adrp x2, 0x698000
00026244add x2, x2, 1104
00026248csel x2, x2, xzr, hs
0002624c
0002624cloc_2624c:
0002624cldr x0, [sp+96]
00026250ldr x3, [sp+120]
00026254ldr x7, [sp+72]
00026258mov x4, x1
0002625cmov x5, x2
00026260ldr x1, [sp+184]
00026264ldr x2, [sp+160]
00026268
00026268loc_26268:
00026268cbnz x4, 0x26568
0002626cmov x3, x2
00026270ands xzr, x2, 0x3ffffff
00026274b.ne 0x26558
00026278
00026278loc_26278:
00026278str x3, [sp+160]
0002627cstr x0, [sp+120]
00026280mov x0, x3
00026284bl runtime.arenaIndex
00026288b 0x262b8
0002628c
0002628cloc_2628c:
0002628cmov x0, xzr
00026290mov x1, xzr
00026294ldur x29, [sp-8]
00026298ldr x30, [sp], 176
0002629cret x30
000262a0
000262a0loc_262a0:
000262a0ldr x1, [sp+128]
000262a4add x1, x1, x0, lsl #3
000262a8ldr x2, [sp+64]
000262acstlr x2, [x1]
000262b0ldr x1, [sp+56]
000262b4add x0, x1, 1
000262b8
000262b8loc_262b8:
000262b8str x0, [sp+56]
000262bcldr x1, [sp+160]
000262c0ldr x2, [sp+120]
000262c4add x1, x2, x1
000262c8sub x0, x1, 1
000262ccbl runtime.arenaIndex
000262d0ldr x1, [sp+56]
000262d4subs xzr, x0, x1
000262d8b.lo 0x264d0
000262dcmov x0, x1
000262e0bl runtime.arenaIdx.l1
000262e4subs xzr, x0, 1
000262e8b.hs 0x26550
000262ecldr x1, [sp+184]
000262f0add x27, x1, 0x10000
000262f4ldr x2, [x27+536]
000262f8cbnz x2, 0x26358
000262fcmovz x0, 0x2000000
00026300bl runtime.sysAllocOS
00026304cbz x0, 0x26540
00026308str x0, [sp+144]
0002630cldr x2, [sp+184]
00026310add x27, x2, 0x10000
00026314ldrb w3, [x27+544]
00026318tbz w3, 0, 0x26328
0002631cmovz x1, 0x2000000
00026320bl runtime.sysHugePage
00026324b 0x26330
00026328
00026328loc_26328:
00026328movz x1, 0x2000000
0002632cbl runtime.sysNoHugePage
00026330
00026330loc_26330:
00026330ldr x0, [sp+56]
00026334bl runtime.arenaIdx.l1
00026338subs xzr, x0, 1
0002633cb.hs 0x26538
00026340ldr x1, [sp+184]
00026344movz x3, 536
00026348movk x3, 0x10000
0002634cadd x3, x1, x3
00026350ldr x2, [sp+144]
00026354stlr x2, [x3]
00026358
00026358loc_26358:
00026358str x2, [sp+128]
0002635cldr x0, [sp+56]
00026360bl runtime.arenaIdx.l2
00026364subs xzr, x0, 0x400000
00026368b.hs 0x26530
0002636cldr x4, [sp+128]
00026370ldrsb x27, [x4]
00026374ldr x5, [x4+3*x0]
00026378cbnz x5, 0x26520
0002637cmovz x4, 552
00026380movk x4, 0x10000
00026384ldr x5, [sp+184]
00026388add x0, x4, x5
0002638cmovz x1, 3088
00026390movk x1, 0x10000
00026394orr x2, xzr, 8
00026398adrp x3, 0xa2b000
0002639cadd x3, x3, 536
000263a0bl runtime.(*linearAlloc).alloc
000263a4cbnz x0, 0x263c4
000263a8movz x0, 3088
000263acmovk x0, 0x10000
000263b0orr x1, xzr, 8
000263b4adrp x2, 0xa2b000
000263b8add x2, x2, 536
000263bcbl runtime.persistentalloc
000263c0cbz x0, 0x26510
000263c4
000263c4loc_263c4:
000263c4str x0, [sp+64]
000263c8ldrb w1, [sp+208]
000263cctbz w1, 0, 0x264b8
000263d0ldr x3, [sp+184]
000263d4add x27, x3, 0x10000
000263d8ldr x4, [x27+640]
000263dcadd x27, x3, 0x10000
000263e0ldr x5, [x27+632]
000263e4subs xzr, x4, x5
000263e8b.ne 0x26478
000263ecubfm x4, x4, 60, 59
000263f0cbnz x4, 0x263fc
000263f4adrp x27, 0xa25000
000263f8ldr x4, [x27+1760]
000263fc
000263fcloc_263fc:
000263fcstr x4, [sp+48]
00026400mov x0, x4
00026404orr x1, xzr, 8
00026408adrp x2, 0xa2b000
0002640cadd x2, x2, 536
00026410bl runtime.persistentalloc
00026414cbz x0, 0x26500
00026418ldr x3, [sp+184]
0002641cadd x27, x3, 0x10000
00026420ldr x4, [x27+632]
00026424add x27, x3, 0x10000
00026428ldr x1, [x27+624]
0002642cadd x27, x3, 0x10000
00026430str x0, [x27+624]
00026434ldr x5, [sp+48]
00026438ubfm x5, x5, 3, 63
0002643cadd x27, x3, 0x10000
00026440str x5, [x27+640]
00026444add x27, x3, 0x10000
00026448ldr x0, [x27+624]
0002644cadd x27, x3, 0x10000
00026450ldr x5, [x27+632]
00026454subs xzr, x5, x4
00026458csel x4, x4, x5, gt
0002645csubs xzr, x0, x1
00026460b.eq 0x26470
00026464ubfm x2, x4, 61, 60
00026468bl runtime.memmove
0002646cldr x3, [sp+184]
00026470
00026470loc_26470:
00026470ldr x0, [sp+64]
00026474ldrb w1, [sp+208]
00026478
00026478loc_26478:
00026478add x27, x3, 0x10000
0002647cldr x4, [x27+632]
00026480add x27, x3, 0x10000
00026484ldr x2, [x27+640]
00026488add x5, x4, 1
0002648csubs xzr, x2, x5
00026490b.lo 0x264f8
00026494add x27, x3, 0x10000
00026498str x5, [x27+632]
0002649csubs xzr, x4, x5
000264a0b.hs 0x264ec
000264a4add x27, x3, 0x10000
000264a8ldr x2, [x27+624]
000264acldr x5, [sp+56]
000264b0str x5, [x2+3*x4]
000264b4b 0x264bc
000264b8
000264b8loc_264b8:
000264b8ldr x5, [sp+56]
000264bc
000264bcloc_264bc:
000264bcmov x0, x5
000264c0bl runtime.arenaIdx.l2
000264c4subs xzr, x0, 0x400000
000264c8b.lo 0x262a0
000264ccb 0x264e4
000264d0
000264d0loc_264d0:
000264d0ldr x0, [sp+160]
000264d4ldr x1, [sp+120]
000264d8ldur x29, [sp-8]
000264dcldr x30, [sp], 176
000264e0ret x30
000264e4
000264e4loc_264e4:
000264e4orr x1, xzr, 0x400000
000264e8bl runtime.panicIndexU
000264ec
000264ecloc_264ec:
000264ecmov x0, x4
000264f0mov x1, x5
000264f4bl runtime.panicIndex
000264f8
000264f8loc_264f8:
000264f8mov x1, x5
000264fcbl runtime.panicSliceAcap
00026500
00026500loc_26500:
00026500adrp x0, 0x699000
00026504add x0, x0, 3547
00026508movz x1, 34
0002650cbl runtime.throw
00026510
00026510loc_26510:
00026510adrp x0, 0x6a0000
00026514add x0, x0, 1068
00026518movz x1, 44
0002651cbl runtime.throw
00026520
00026520loc_26520:
00026520adrp x0, 0x693000
00026524add x0, x0, 2029
00026528movz x1, 25
0002652cbl runtime.throw
00026530
00026530loc_26530:
00026530orr x1, xzr, 0x400000
00026534bl runtime.panicIndexU
00026538
00026538loc_26538:
00026538orr x1, xzr, 1
0002653cbl runtime.panicIndexU
00026540
00026540loc_26540:
00026540adrp x0, 0x69d000
00026544add x0, x0, 1261
00026548movz x1, 39
0002654cbl runtime.throw
00026550
00026550loc_26550:
00026550orr x1, xzr, 1
00026554bl runtime.panicIndexU
00026558
00026558loc_26558:
00026558adrp x0, 0x699000
0002655cadd x0, x0, 375
00026560movz x1, 33
00026564bl runtime.throw
00026568
00026568loc_26568:
00026568str x4, [sp+88]
0002656cstr x5, [sp+136]
00026570bl runtime.printlock
00026574adrp x0, 0x699000
00026578add x0, x0, 342
0002657cmovz x1, 33
00026580bl runtime.printstring
00026584ldr x0, [sp+72]
00026588bl runtime.printhex
0002658cadrp x0, 0x689000
00026590add x0, x0, 4049
00026594orr x1, xzr, 2
00026598bl runtime.printstring
0002659cldr x0, [sp+120]
000265a0bl runtime.printhex
000265a4adrp x0, 0x697000
000265a8add x0, x0, 2370
000265acorr x1, xzr, 31
000265b0bl runtime.printstring
000265b4ldr x0, [sp+136]
000265b8ldr x1, [sp+88]
000265bcbl runtime.printstring
000265c0bl runtime.printnl
000265c4bl runtime.printunlock
000265c8adrp x0, 0x6a1000
000265ccadd x0, x0, 893
000265d0movz x1, 46
000265d4bl runtime.throw
000265d8hint
000265dc
000265dcloc_265dc:
000265dcstp x0, x1, [sp+8]
000265e0str x2, [sp+24]
000265e4strb w3, [sp+32]
000265e8mov x3, x30
000265ecbl runtime.morestack_noctxt.abi0
000265f0ldp x0, x1, [sp+8]
000265f4ldr x2, [sp+24]
000265f8ldrb w3, [sp+32]
000265fcb 0x25f80
00025f80
Loading..