File sliver_83cb34f62800fed14e14547c39337aab8e0427fe2c6310a3fb40ce0ac36168c9.elf
Function:
    00030cf0
    00030cf0runtime.gcBgMarkWorker.func2: ; void runtime.gcBgMarkWorker.func2(void)
    00030cf0ldr x16, [x28+16]
    00030cf4subs xzr, sp, x16
    00030cf8b.ls 0x30e00
    00030cfcstr x30, [sp-80]!
    00030d00stur x29, [sp-8]
    00030d04sub x29, sp, 8
    00030d08ldr x3, [x26+16]
    00030d0cstr x3, [sp+48]
    00030d10ldr x0, [x26+8]
    00030d14str x0, [sp+56]
    00030d18orr x1, xzr, 2
    00030d1corr x2, xzr, 28
    00030d20bl runtime.casGToWaitingForSuspendG
    00030d24ldr x3, [sp+48]
    00030d28ldrsb x27, [x3]
    00030d2cldr x4, [x3+4664]
    00030d30subs xzr, x4, 1
    00030d34b.eq 0x30d68
    00030d38subs xzr, x4, 2
    00030d3cb.eq 0x30d58
    00030d40subs xzr, x4, 3
    00030d44b.ne 0x30dec
    00030d48movz x1, 4680
    00030d4cadd x0, x3, x1
    00030d50bl runtime.gcDrainMarkWorkerIdle
    00030d54b 0x30dd0
    00030d58
    00030d58loc_30d58:
    00030d58movz x1, 4680
    00030d5cadd x0, x3, x1
    00030d60bl runtime.gcDrainMarkWorkerFractional
    00030d64b 0x30dd0
    00030d68
    00030d68loc_30d68:
    00030d68movz x2, 4680
    00030d6cadd x0, x3, x2
    00030d70str x0, [sp+64]
    00030d74orr x1, xzr, 1
    00030d78bl runtime.gcDrainMarkWorkerDedicated
    00030d7cldr x2, [sp+56]
    00030d80ldrb w3, [x2+185]
    00030d84tbz w3, 0, 0x30dc4
    00030d88ldr x0, [sp+48]
    00030d8cbl runtime.runqdrain
    00030d90str x0, [sp+32]
    00030d94str x1, [sp+40]
    00030d98cbz w2, 0x30dc4
    00030d9cstr w2, [sp+28]
    00030da0adrp x0, 0x9f7000
    00030da4add x0, x0, 152
    00030da8bl runtime.lock
    00030dacadd x0, sp, 32
    00030db0ldr w1, [sp+28]
    00030db4bl runtime.globrunqputbatch
    00030db8adrp x0, 0x9f7000
    00030dbcadd x0, x0, 152
    00030dc0bl runtime.unlock
    00030dc4
    00030dc4loc_30dc4:
    00030dc4ldr x0, [sp+64]
    00030dc8mov x1, xzr
    00030dccbl runtime.gcDrainMarkWorkerDedicated
    00030dd0
    00030dd0loc_30dd0:
    00030dd0ldr x0, [sp+56]
    00030dd4orr x1, xzr, 4
    00030dd8orr x2, xzr, 2
    00030ddcbl runtime.casgstatus
    00030de0ldur x29, [sp-8]
    00030de4ldr x30, [sp], 80
    00030de8ret x30
    00030dec
    00030decloc_30dec:
    00030decadrp x0, 0x695000
    00030df0add x0, x0, 3053
    00030df4movz x1, 43
    00030df8bl runtime.throw
    00030dfchint
    00030e00
    00030e00loc_30e00:
    00030e00mov x3, x30
    00030e04bl runtime.morestack.abi0
    00030e08b 0x30cf0
    00030e0cudf 0
    00030cf0
    00030e10
    00030e10runtime.gcMarkWorkAvailable: ; void runtime.gcMarkWorkAvailable(runtime.p * p)
    00030e10ldr x16, [x28+16]
    00030e14subs xzr, sp, x16
    00030e18b.ls 0x30ea4
    00030e1cstr x30, [sp-32]!
    00030e20stur x29, [sp-8]
    00030e24sub x29, sp, 8
    00030e28cbz x0, 0x30e3c
    00030e2cmovz x1, 4680
    00030e30add x0, x0, x1
    00030e34bl runtime.(*gcWork).empty
    00030e38tbz w0, 0, 0x30e94
    00030e3c
    00030e3cloc_30e3c:
    00030e3cadrp x0, 0x9f4000
    00030e40add x0, x0, 2656
    00030e44bl runtime.(*lfstack).empty
    00030e48tbz w0, 0, 0x30e84
    00030e4cadrp x27, 0x9f4000
    00030e50ldr w1, [x27+2984]
    00030e54adrp x27, 0x9f4000
    00030e58ldr w2, [x27+2988]
    00030e5csubs wzr, w2, w1
    00030e60b.ls 0x30e74
    00030e64orr x0, xzr, 1
    00030e68ldur x29, [sp-8]
    00030e6cldr x30, [sp], 32
    00030e70ret x30
    00030e74
    00030e74loc_30e74:
    00030e74mov x0, xzr
    00030e78ldur x29, [sp-8]
    00030e7cldr x30, [sp], 32
    00030e80ret x30
    00030e84
    00030e84loc_30e84:
    00030e84orr x0, xzr, 1
    00030e88ldur x29, [sp-8]
    00030e8cldr x30, [sp], 32
    00030e90ret x30
    00030e94
    00030e94loc_30e94:
    00030e94orr x0, xzr, 1
    00030e98ldur x29, [sp-8]
    00030e9cldr x30, [sp], 32
    00030ea0ret x30
    00030ea4
    00030ea4loc_30ea4:
    00030ea4str x0, [sp+8]
    00030ea8mov x3, x30
    00030eacbl runtime.morestack_noctxt.abi0
    00030eb0ldr x0, [sp+8]
    00030eb4b 0x30e10
    00030eb8udf 0
    00030ebcudf 0
    00030e10
    00030ec0
    00030ec0runtime.gcMark: ; void runtime.gcMark(int64 startTime)
    00030ec0ldr x16, [x28+16]
    00030ec4subs xzr, sp, x16
    00030ec8b.ls 0x31280
    00030eccstr x30, [sp-128]!
    00030ed0stur x29, [sp-8]
    00030ed4sub x29, sp, 8
    00030ed8adrp x27, 0xa1b000
    00030edcldr w2, [x27+1600]
    00030ee0subs wzr, w2, 2
    00030ee4b.ne 0x3126c
    00030ee8adrp x27, 0x9f4000
    00030eecstr x0, [x27+3000]
    00030ef0adrp x27, 0x9f4000
    00030ef4ldr x2, [x27+2656]
    00030ef8str x2, [sp+88]
    00030efccbnz x2, 0x3115c
    00030f00adrp x27, 0x9f4000
    00030f04ldr w3, [x27+2984]
    00030f08adrp x27, 0x9f4000
    00030f0cldr w4, [x27+2988]
    00030f10subs wzr, w4, w3
    00030f14b.hi 0x3115c
    00030f18adrp x27, 0xa1c000
    00030f1cldrsw x2, [x27+244]
    00030f20subs wzr, w2, 0
    00030f24b.le 0x30f2c
    00030f28bl runtime.gcMarkRootCheck
    00030f2c
    00030f2cloc_30f2c:
    00030f2cadrp x27, 0x9f4000
    00030f30add x27, x27, 3080
    00030f34stp xzr, xzr, [x27]
    00030f38adrp x27, 0xa1b000
    00030f3cldr w2, [x27+3056]
    00030f40cbz w2, 0x30f54
    00030f44adrp x27, 0x9f4000
    00030f48ldr x2, [x27+3072]
    00030f4cbl runtime.gcWriteBarrier1
    00030f50str x2, [x25]
    00030f54
    00030f54loc_30f54:
    00030f54adrp x27, 0x9f4000
    00030f58str xzr, [x27+3072]
    00030f5cadrp x27, 0x9f2000
    00030f60ldr x2, [x27+3040]
    00030f64str x2, [sp+112]
    00030f68adrp x27, 0x9f2000
    00030f6cldr x3, [x27+3048]
    00030f70str x3, [sp+80]
    00030f74mov x0, xzr
    00030f78b 0x30f94
    00030f7c
    00030f7cloc_30f7c:
    00030f7cldr x0, [sp+104]
    00030f80bl runtime.(*gcWork).dispose
    00030f84ldr x1, [sp+72]
    00030f88add x0, x1, 1
    00030f8cldr x2, [sp+112]
    00030f90ldr x3, [sp+80]
    00030f94
    00030f94loc_30f94:
    00030f94subs xzr, x0, x3
    00030f98b.ge 0x30ff4
    00030f9cstr x0, [sp+72]
    00030fa0adrp x27, 0xa1c000
    00030fa4ldrsw x1, [x27+244]
    00030fa8ldr x4, [x2+3*x0]
    00030facstr x4, [sp+96]
    00030fb0subs wzr, w1, 0
    00030fb4b.le 0x30fc4
    00030fb8mov x0, x4
    00030fbcbl runtime.wbBufFlush1
    00030fc0b 0x30fd4
    00030fc4
    00030fc4loc_30fc4:
    00030fc4ldrsb x27, [x4]
    00030fc8movz x1, 4720
    00030fccadd x0, x4, x1
    00030fd0bl runtime.(*wbBuf).reset
    00030fd4
    00030fd4loc_30fd4:
    00030fd4ldr x1, [sp+96]
    00030fd8ldrsb x27, [x1]
    00030fdcmovz x2, 4680
    00030fe0add x0, x1, x2
    00030fe4str x0, [sp+104]
    00030fe8bl runtime.(*gcWork).empty
    00030fectbnz w0, 0, 0x30f7c
    00030ff0b 0x3104c
    00030ff4
    00030ff4loc_30ff4:
    00030ff4adrp x27, 0x9f2000
    00030ff8ldr x2, [x27+3040]
    00030ffcadrp x27, 0x9f2000
    00031000ldr x3, [x27+3048]
    00031004mov x0, xzr
    00031008b 0x31010
    0003100c
    0003100cloc_3100c:
    0003100cadd x0, x0, 1
    00031010
    00031010loc_31010:
    00031010subs xzr, x0, x3
    00031014b.ge 0x3102c
    00031018ldr x4, [x2+3*x0]
    0003101cldr x4, [x4+56]
    00031020cbz x4, 0x3100c
    00031024str xzr, [x4+16]
    00031028b 0x3100c
    0003102c
    0003102cloc_3102c:
    0003102cadrp x27, 0x9f3000
    00031030ldr x1, [x27+2976]
    00031034adrp x0, 0xa1b000
    00031038add x0, x0, 2496
    0003103cbl runtime.(*gcControllerState).resetLive
    00031040ldur x29, [sp-8]
    00031044ldr x30, [sp], 128
    00031048ret x30
    0003104c
    0003104cloc_3104c:
    0003104cbl runtime.printlock
    00031050ldr x0, [sp+96]
    00031054ldrsw x1, [x0]
    00031058str x1, [sp+64]
    0003105cadd x27, x0, 4096
    00031060ldrb w0, [x27+616]
    00031064strb w0, [sp+31]
    00031068bl runtime.printlock
    0003106cadrp x0, 0x681000
    00031070add x0, x0, 1988
    00031074movz x1, 11
    00031078bl runtime.printstring
    0003107cldr x0, [sp+64]
    00031080bl runtime.printint
    00031084adrp x0, 0x682000
    00031088add x0, x0, 1511
    0003108cmovz x1, 13
    00031090bl runtime.printstring
    00031094ldrb w0, [sp+31]
    00031098bl runtime.printbool
    0003109cbl runtime.printunlock
    000310a0ldr x0, [sp+96]
    000310a4ldr x1, [x0+4680]
    000310a8cbz x1, 0x31140
    000310acldr x0, [x1+16]
    000310b0str x0, [sp+80]
    000310b4bl runtime.printlock
    000310b8adrp x0, 0x680000
    000310bcadd x0, x0, 2812
    000310c0movz x1, 9
    000310c4bl runtime.printstring
    000310c8ldr x0, [sp+80]
    000310ccbl runtime.printint
    000310d0bl runtime.printunlock
    000310d4
    000310d4loc_310d4:
    000310d4ldr x0, [sp+96]
    000310d8ldr x0, [x0+4688]
    000310dccbz x0, 0x31124
    000310e0ldr x0, [x0+16]
    000310e4str x0, [sp+80]
    000310e8bl runtime.printlock
    000310ecadrp x0, 0x680000
    000310f0add x0, x0, 2821
    000310f4movz x1, 9
    000310f8bl runtime.printstring
    000310fcldr x0, [sp+80]
    00031100bl runtime.printint
    00031104bl runtime.printunlock
    00031108
    00031108loc_31108:
    00031108bl runtime.printlock
    0003110cbl runtime.printnl
    00031110bl runtime.printunlock
    00031114adrp x0, 0x696000
    00031118add x0, x0, 3151
    0003111cmovz x1, 47
    00031120bl runtime.throw
    00031124
    00031124loc_31124:
    00031124bl runtime.printlock
    00031128adrp x0, 0x681000
    0003112cadd x0, x0, 3808
    00031130orr x1, xzr, 12
    00031134bl runtime.printstring
    00031138bl runtime.printunlock
    0003113cb 0x31108
    00031140
    00031140loc_31140:
    00031140bl runtime.printlock
    00031144adrp x0, 0x681000
    00031148add x0, x0, 3796
    0003114corr x1, xzr, 12
    00031150bl runtime.printstring
    00031154bl runtime.printunlock
    00031158b 0x310d4
    0003115c
    0003115cloc_3115c:
    0003115cadrp x27, 0x9f3000
    00031160ldr w0, [x27+2984]
    00031164str x0, [sp+56]
    00031168adrp x27, 0x9f3000
    0003116cldr w0, [x27+2988]
    00031170str x0, [sp+48]
    00031174adrp x27, 0x9f3000
    00031178ldr x0, [x27+3016]
    0003117cstr x0, [sp+80]
    00031180adrp x27, 0x9f3000
    00031184ldr x0, [x27+3024]
    00031188str x0, [sp+72]
    0003118cadrp x27, 0x9f3000
    00031190ldr x0, [x27+3032]
    00031194str x0, [sp+40]
    00031198adrp x27, 0x9f3000
    0003119cldr x0, [x27+3040]
    000311a0str x0, [sp+32]
    000311a4bl runtime.printlock
    000311a8adrp x0, 0x682000
    000311acadd x0, x0, 3206
    000311b0orr x1, xzr, 14
    000311b4bl runtime.printstring
    000311b8ldr x0, [sp+88]
    000311bcbl runtime.printhex
    000311c0adrp x0, 0x67f000
    000311c4add x0, x0, 2395
    000311c8orr x1, xzr, 6
    000311ccbl runtime.printstring
    000311d0ldr x0, [sp+56]
    000311d4bl runtime.printuint
    000311d8adrp x0, 0x67f000
    000311dcadd x0, x0, 2401
    000311e0orr x1, xzr, 6
    000311e4bl runtime.printstring
    000311e8ldr x0, [sp+48]
    000311ecbl runtime.printuint
    000311f0adrp x0, 0x681000
    000311f4add x0, x0, 3772
    000311f8orr x1, xzr, 12
    000311fcbl runtime.printstring
    00031200ldr x0, [sp+80]
    00031204bl runtime.printint
    00031208adrp x0, 0x681000
    0003120cadd x0, x0, 1977
    00031210movz x1, 11
    00031214bl runtime.printstring
    00031218ldr x0, [sp+72]
    0003121cbl runtime.printint
    00031220adrp x0, 0x681000
    00031224add x0, x0, 3784
    00031228orr x1, xzr, 12
    0003122cbl runtime.printstring
    00031230ldr x0, [sp+40]
    00031234bl runtime.printint
    00031238adrp x0, 0x682000
    0003123cadd x0, x0, 1498
    00031240movz x1, 13
    00031244bl runtime.printstring
    00031248ldr x0, [sp+32]
    0003124cbl runtime.printint
    00031250bl runtime.printnl
    00031254bl runtime.printunlock
    00031258adrp x0, 0x5c4000
    0003125cadd x0, x0, 2944
    00031260adrp x1, 0x6e0000
    00031264add x1, x1, 352
    00031268bl runtime.gopanic
    0003126c
    0003126cloc_3126c:
    0003126cadrp x0, 0x69a000
    00031270add x0, x0, 1354
    00031274orr x1, xzr, 56
    00031278bl runtime.throw
    0003127chint
    00031280
    00031280loc_31280:
    00031280str x0, [sp+8]
    00031284mov x3, x30
    00031288bl runtime.morestack_noctxt.abi0
    0003128cldr x0, [sp+8]
    00031290b 0x30ec0
    00031294udf 0
    00031298udf 0
    0003129cudf 0
    00030ec0
    000312a0
    000312a0runtime.gcSweep: ; void runtime.gcSweep(runtime.gcMode mode)
    000312a0ldr x16, [x28+24]
    000312a4subs xzr, sp, x16
    000312a8b.ls 0x314a0
    000312acstr x30, [sp-64]!
    000312b0stur x29, [sp-8]
    000312b4sub x29, sp, 8
    000312b8str x0, [sp+72]
    000312bcbl runtime.assertWorldStopped
    000312c0adrp x27, 0xa1a000
    000312c4ldr w0, [x27+1600]
    000312c8cbnz w0, 0x3148c
    000312ccadrp x0, 0xa01000
    000312d0add x0, x0, 2112
    000312d4bl runtime.lock
    000312d8adrp x27, 0xa11000
    000312dcldr w1, [x27+2432]
    000312e0add x1, x1, 2
    000312e4adrp x27, 0xa11000
    000312e8str w1, [x27+2432]
    000312ecadrp x0, 0x9f2000
    000312f0add x0, x0, 948
    000312f4bl runtime.(*activeSweep).reset
    000312f8adrp x0, 0xa11000
    000312fcadd x0, x0, 2472
    00031300mov x1, xzr
    00031304bl internal/runtime/atomic.(*Uint64).Store
    00031308adrp x27, 0xa11000
    0003130cldr x1, [x27+2744]
    00031310adrp x27, 0xa11000
    00031314ldr x2, [x27+2752]
    00031318adrp x27, 0xa11000
    0003131cldr x3, [x27+2736]
    00031320adrp x27, 0xa11000
    00031324str x1, [x27+2768]
    00031328adrp x27, 0xa11000
    0003132cstr x2, [x27+2776]
    00031330adrp x27, 0xa1a000
    00031334ldr w1, [x27+3056]
    00031338cbz w1, 0x31350
    0003133cbl runtime.gcWriteBarrier2
    00031340str x3, [x25]
    00031344adrp x27, 0xa11000
    00031348ldr x2, [x27+2760]
    0003134cstr x2, [x25+8]
    00031350
    00031350loc_31350:
    00031350adrp x27, 0xa11000
    00031354str x3, [x27+2760]
    00031358adrp x0, 0xa11000
    0003135cadd x0, x0, 2504
    00031360mov x1, xzr
    00031364bl internal/runtime/atomic.(*Uint64).Store
    00031368adrp x0, 0xa11000
    0003136cadd x0, x0, 2512
    00031370mov x1, xzr
    00031374bl internal/runtime/atomic.(*Uintptr).Store
    00031378adrp x0, 0xa01000
    0003137cadd x0, x0, 2112
    00031380bl runtime.unlock
    00031384adrp x0, 0x9f2000
    00031388add x0, x0, 952
    0003138cbl runtime.(*sweepClass).clear
    00031390ldr x2, [sp+72]
    00031394subs xzr, x2, 2
    00031398b.ne 0x313e0
    0003139cadrp x0, 0xa01000
    000313a0add x0, x0, 2112
    000313a4bl runtime.lock
    000313a8fmov d0, xzr
    000313acadrp x27, 0xa11000
    000313b0str d0, [x27+2496]
    000313b4adrp x0, 0xa01000
    000313b8add x0, x0, 2112
    000313bcbl runtime.unlock
    000313c0adrp x27, 0x9f1000
    000313c4ldr x1, [x27+3040]
    000313c8str x1, [sp+48]
    000313ccadrp x27, 0x9f1000
    000313d0ldr x2, [x27+3048]
    000313d4str x2, [sp+40]
    000313d8mov x0, xzr
    000313dcb 0x31450
    000313e0
    000313e0loc_313e0:
    000313e0adrp x0, 0x9f2000
    000313e4add x0, x0, 928
    000313e8bl runtime.lock
    000313ecadrp x27, 0x9f2000
    000313f0ldrb w1, [x27+944]
    000313f4tbz w1, 0, 0x31414
    000313f8adrp x27, 0x9f2000
    000313fcstrb wzr, [x27+944]
    00031400adrp x27, 0x9f2000
    00031404ldr x0, [x27+936]
    00031408mov x1, xzr
    0003140corr x2, xzr, 1
    00031410bl runtime.ready
    00031414
    00031414loc_31414:
    00031414adrp x0, 0x9f2000
    00031418add x0, x0, 928
    0003141cbl runtime.unlock
    00031420mov x0, xzr
    00031424ldur x29, [sp-8]
    00031428ldr x30, [sp], 64
    0003142cret x30
    00031430
    00031430loc_31430:
    00031430str x0, [sp+32]
    00031434ldr x1, [x1+3*x0]
    00031438ldr x0, [x1+56]
    0003143cbl runtime.(*mcache).prepareForSweep
    00031440ldr x1, [sp+32]
    00031444add x0, x1, 1
    00031448ldr x1, [sp+48]
    0003144cldr x2, [sp+40]
    00031450
    00031450loc_31450:
    00031450subs xzr, x0, x2
    00031454b.lt 0x31430
    00031458
    00031458loc_31458:
    00031458bl runtime.sweepone
    0003145cadds xzr, x0, 1
    00031460b.ne 0x31458
    00031464bl runtime.prepareFreeWorkbufs
    00031468
    00031468loc_31468:
    00031468mov x0, xzr
    0003146cbl runtime.freeSomeWbufs
    00031470tbnz w0, 0, 0x31468
    00031474bl runtime.mProf_NextCycle
    00031478bl runtime.mProf_Flush
    0003147corr x0, xzr, 1
    00031480ldur x29, [sp-8]
    00031484ldr x30, [sp], 64
    00031488ret x30
    0003148c
    0003148cloc_3148c:
    0003148cadrp x0, 0x693000
    00031490add x0, x0, 2864
    00031494movz x1, 41
    00031498bl runtime.throw
    0003149chint
    000314a0
    000314a0loc_314a0:
    000314a0str x0, [sp+8]
    000314a4mov x3, x30
    000314a8bl runtime.morestackc.abi0
    000314acldr x0, [sp+8]
    000314b0b 0x312a0
    000314b4udf 0
    000314b8udf 0
    000314bcudf 0
    000312a0
    000314c0
    000314c0runtime.gcResetMarkState: ; void runtime.gcResetMarkState(void)
    000314c0ldr x16, [x28+24]
    000314c4subs xzr, sp, x16
    000314c8b.ls 0x315dc
    000314ccstr x30, [sp-80]!
    000314d0stur x29, [sp-8]
    000314d4sub x29, sp, 8
    000314d8adrp x0, 0x6a7000
    000314dcadd x0, x0, 1856
    000314e0bl runtime.forEachG
    000314e4adrp x0, 0xa01000
    000314e8add x0, x0, 2112
    000314ecbl runtime.lock
    000314f0adrp x27, 0xa11000
    000314f4ldr x1, [x27+2736]
    000314f8str x1, [sp+64]
    000314fcadrp x27, 0xa11000
    00031500ldr x1, [x27+2744]
    00031504str x1, [sp+32]
    00031508adrp x0, 0xa01000
    0003150cadd x0, x0, 2112
    00031510bl runtime.unlock
    00031514mov x0, xzr
    00031518b 0x31558
    0003151c
    0003151cloc_3151c:
    0003151cadrp x27, 0xa11000
    00031520ldr x1, [x27+2648]
    00031524ldrsb x27, [x1]
    00031528ldr x1, [x1+3*x0]
    0003152cldrsb x27, [x1]
    00031530movz x2, 1024
    00031534movk x2, 0x10000
    00031538add x20, x1, x2
    0003153cadr x27, 16
    00031540stp x29, x27, [sp-24]
    00031544sub x29, sp, 24
    00031548bl runtime.duffzero
    0003154csub x29, sp, 8
    00031550ldr x1, [sp+56]
    00031554add x0, x1, 1
    00031558
    00031558loc_31558:
    00031558ldr x1, [sp+32]
    0003155csubs xzr, x0, x1
    00031560b.ge 0x3159c
    00031564str x0, [sp+56]
    00031568ldr x1, [sp+64]
    0003156cldr x0, [x1+3*x0]
    00031570str x0, [sp+40]
    00031574bl runtime.arenaIdx.l1
    00031578str x0, [sp+48]
    0003157cldr x0, [sp+40]
    00031580bl runtime.arenaIdx.l2
    00031584ldr x1, [sp+48]
    00031588subs xzr, x1, 1
    0003158cb.hs 0x315cc
    00031590subs xzr, x0, 0x400000
    00031594b.lo 0x3151c
    00031598b 0x315c4
    0003159c
    0003159cloc_3159c:
    0003159cadrp x27, 0x9f3000
    000315a0str xzr, [x27+2976]
    000315a4adrp x0, 0xa1b000
    000315a8add x0, x0, 2600
    000315acbl internal/runtime/atomic.(*Uint64).Load
    000315b0adrp x27, 0x9f3000
    000315b4str x0, [x27+3128]
    000315b8ldur x29, [sp-8]
    000315bcldr x30, [sp], 80
    000315c0ret x30
    000315c4
    000315c4loc_315c4:
    000315c4orr x1, xzr, 0x400000
    000315c8bl runtime.panicIndexU
    000315cc
    000315ccloc_315cc:
    000315ccmov x0, x1
    000315d0orr x1, xzr, 1
    000315d4bl runtime.panicIndexU
    000315d8hint
    000315dc
    000315dcloc_315dc:
    000315dcmov x3, x30
    000315e0bl runtime.morestackc.abi0
    000315e4b 0x314c0
    000315e8udf 0
    000315ecudf 0
    000314c0
    000315f0
    000315f0runtime.unique_runtime_registerUniqueMapCleanup.gowrap1: ; void runtime.unique_runtime_registerUniqueMapCleanup.gowrap1(void)
    000315f0ldr x16, [x28+16]
    000315f4subs xzr, sp, x16
    000315f8b.ls 0x3162c
    000315fcstr x30, [sp-32]!
    00031600stur x29, [sp-8]
    00031604sub x29, sp, 8
    00031608ldr x16, [x28+32]
    0003160ccbnz x16, 0x31638
    00031610
    00031610loc_31610:
    00031610ldr x0, [x26+16]
    00031614ldr x26, [x26+8]
    00031618ldr x1, [x26]
    0003161cblr x1
    00031620ldur x29, [sp-8]
    00031624ldr x30, [sp], 32
    00031628ret x30
    0003162c
    0003162cloc_3162c:
    0003162cmov x3, x30
    00031630bl runtime.morestack.abi0
    00031634b 0x315f0
    00031638
    00031638loc_31638:
    00031638ldr x17, [x16]
    0003163cadd x20, sp, 40
    00031640subs xzr, x20, x17
    00031644b.ne 0x31610
    00031648add x20, sp, 8
    0003164cstr x20, [x16]
    00031650b 0x31610
    00031654udf 0
    00031658udf 0
    0003165cudf 0
    000315f0
    00031660
    00031660runtime.clearpools: ; void runtime.clearpools(void)
    00031660ldr x16, [x28+16]
    00031664subs xzr, sp, x16
    00031668b.ls 0x317dc
    0003166cstr x30, [sp-64]!
    00031670stur x29, [sp-8]
    00031674sub x29, sp, 8
    00031678adrp x27, 0x9ef000
    0003167cldr x26, [x27+2960]
    00031680cbz x26, 0x3168c
    00031684ldr x0, [x26]
    00031688blr x0
    0003168c
    0003168cloc_3168c:
    0003168cadrp x27, 0x9f1000
    00031690ldr x2, [x27+2816]
    00031694str x2, [sp+48]
    00031698adrp x27, 0x9f1000
    0003169cldr x3, [x27+2824]
    000316a0str x3, [sp+40]
    000316a4mov x0, xzr
    000316a8b 0x316cc
    000316ac
    000316acloc_316ac:
    000316acstr x0, [sp+32]
    000316b0ldr x0, [x2+3*x0]
    000316b4mov x1, xzr
    000316b8bl runtime.atomicstorep
    000316bcldr x2, [sp+32]
    000316c0add x0, x2, 1
    000316c4ldr x2, [sp+48]
    000316c8ldr x3, [sp+40]
    000316cc
    000316ccloc_316cc:
    000316ccsubs xzr, x0, x3
    000316d0b.lt 0x316ac
    000316d4adrp x27, 0x9ef000
    000316d8ldr x0, [x27+2968]
    000316dccbz x0, 0x316e8
    000316e0add x1, sp, 32
    000316e4bl runtime.selectnbsend
    000316e8
    000316e8loc_316e8:
    000316e8adrp x0, 0x9f6000
    000316ecadd x0, x0, 320
    000316f0bl runtime.lock
    000316f4adrp x27, 0x9f6000
    000316f8ldr x1, [x27+328]
    000316fcb 0x31708
    00031700
    00031700loc_31700:
    00031700str xzr, [x1+8]
    00031704mov x1, x2
    00031708
    00031708loc_31708:
    00031708cbz x1, 0x3172c
    0003170cldr x2, [x1+8]
    00031710adrp x27, 0xa1a000
    00031714ldr w3, [x27+3056]
    00031718cbz w3, 0x31700
    0003171cldr x3, [x1+8]
    00031720bl runtime.gcWriteBarrier1
    00031724str x3, [x25]
    00031728b 0x31700
    0003172c
    0003172cloc_3172c:
    0003172cadrp x27, 0xa1a000
    00031730ldr w1, [x27+3056]
    00031734cbz w1, 0x31748
    00031738adrp x27, 0x9f6000
    0003173cldr x1, [x27+328]
    00031740bl runtime.gcWriteBarrier1
    00031744str x1, [x25]
    00031748
    00031748loc_31748:
    00031748adrp x27, 0x9f6000
    0003174cstr xzr, [x27+328]
    00031750adrp x0, 0x9f6000
    00031754add x0, x0, 320
    00031758bl runtime.unlock
    0003175cadrp x0, 0x9f6000
    00031760add x0, x0, 336
    00031764bl runtime.lock
    00031768adrp x27, 0x9f6000
    0003176cldr x1, [x27+344]
    00031770b 0x3177c
    00031774
    00031774loc_31774:
    00031774str xzr, [x1+32]
    00031778mov x1, x2
    0003177c
    0003177cloc_3177c:
    0003177ccbz x1, 0x317a0
    00031780ldr x2, [x1+32]
    00031784adrp x27, 0xa1a000
    00031788ldr w3, [x27+3056]
    0003178ccbz w3, 0x31774
    00031790ldr x3, [x1+32]
    00031794bl runtime.gcWriteBarrier1
    00031798str x3, [x25]
    0003179cb 0x31774
    000317a0
    000317a0loc_317a0:
    000317a0adrp x27, 0xa1a000
    000317a4ldr w1, [x27+3056]
    000317a8cbz w1, 0x317bc
    000317acadrp x27, 0x9f6000
    000317b0ldr x1, [x27+344]
    000317b4bl runtime.gcWriteBarrier1
    000317b8str x1, [x25]
    000317bc
    000317bcloc_317bc:
    000317bcadrp x27, 0x9f6000
    000317c0str xzr, [x27+344]
    000317c4adrp x0, 0x9f6000
    000317c8add x0, x0, 336
    000317ccbl runtime.unlock
    000317d0ldur x29, [sp-8]
    000317d4ldr x30, [sp], 64
    000317d8ret x30
    000317dc
    000317dcloc_317dc:
    000317dcmov x3, x30
    000317e0bl runtime.morestack_noctxt.abi0
    000317e4b 0x31660
    000317e8udf 0
    000317ecudf 0
    00031660
    000317f0
    000317f0runtime.itoaDiv: ; void runtime.itoaDiv(struct []uint8 buf, uint64 val, int dec)
    000317f0ldr x16, [x28+16]
    000317f4subs xzr, sp, x16
    000317f8b.ls 0x318dc
    000317fcstr x30, [sp-32]!
    00031800stur x29, [sp-8]
    00031804sub x29, sp, 8
    00031808str x0, [sp+40]
    0003180csub x4, x1, x4
    00031810sub x5, x1, 1
    00031814sub x4, x4, 1
    00031818b 0x31824
    0003181c
    0003181cloc_3181c:
    0003181cmov x5, x3
    00031820mov x3, x7
    00031824
    00031824loc_31824:
    00031824subs xzr, x3, 10
    00031828b.hs 0x31834
    0003182csubs xzr, x5, x4
    00031830b.lt 0x31890
    00031834
    00031834loc_31834:
    00031834movz x6, 52429
    00031838movk x6, 0xcccc0000
    0003183cmovk x6, 0xcccc00000000
    00031840movk x6, 0xcccc000000000000
    00031844umulh x7, x6, x3
    00031848ubfm x7, x7, 3, 63
    0003184cadd x8, x7, x7, lsl #2
    00031850sub x3, x3, x8, lsl #1
    00031854subs xzr, x1, x5
    00031858b.ls 0x318d0
    0003185cadd x3, x3, 48
    00031860strb w3, [x0+x5]
    00031864sub x3, x5, 1
    00031868subs xzr, x3, x4
    0003186cb.ne 0x31888
    00031870subs xzr, x1, x3
    00031874b.ls 0x318c8
    00031878movz x8, 46
    0003187cstrb w8, [x0+x3]
    00031880sub x3, x5, 2
    00031884b 0x3181c
    00031888
    00031888loc_31888:
    00031888movz x8, 46
    0003188cb 0x3181c
    00031890
    00031890loc_31890:
    00031890subs xzr, x1, x5
    00031894b.ls 0x318c0
    00031898add x3, x3, 48
    0003189cstrb w3, [x0+x5]
    000318a0sub x2, x2, x5
    000318a4sub x3, xzr, x2
    000318a8and x3, x5, x3, asr #63
    000318acadd x0, x0, x3
    000318b0sub x1, x1, x5
    000318b4ldur x29, [sp-8]
    000318b8ldr x30, [sp], 32
    000318bcret x30
    000318c0
    000318c0loc_318c0:
    000318c0mov x0, x5
    000318c4bl runtime.panicIndex
    000318c8
    000318c8loc_318c8:
    000318c8mov x0, x3
    000318ccbl runtime.panicIndex
    000318d0
    000318d0loc_318d0:
    000318d0mov x0, x5
    000318d4bl runtime.panicIndex
    000318d8hint
    000318dc
    000318dcloc_318dc:
    000318dcstp x0, x1, [sp+8]
    000318e0stp x2, x3, [sp+24]
    000318e4str x4, [sp+40]
    000318e8mov x3, x30
    000318ecbl runtime.morestack_noctxt.abi0
    000318f0ldp x0, x1, [sp+8]
    000318f4ldp x2, x3, [sp+24]
    000318f8ldr x4, [sp+40]
    000318fcb 0x317f0
    000317f0
    00031900
    00031900runtime.fmtNSAsMS: ; void runtime.fmtNSAsMS(struct []uint8 buf, uint64 ns)
    00031900ldr x16, [x28+16]
    00031904subs xzr, sp, x16
    00031908b.ls 0x319e8
    0003190cstr x30, [sp-64]!
    00031910stur x29, [sp-8]
    00031914sub x29, sp, 8
    00031918str x0, [sp+72]
    0003191cmovz x5, 38528
    00031920movk x5, 0x980000
    00031924subs xzr, x3, x5
    00031928b.hs 0x31974
    0003192cubfm x5, x3, 1, 63
    00031930movz x6, 57148
    00031934movk x6, 0x8d4f0000
    00031938movk x6, 0x6e9700000000
    0003193cmovk x6, 0x8312000000000000
    00031940umulh x5, x6, x5
    00031944ubfm x5, x5, 8, 63
    00031948cbz x5, 0x31954
    0003194corr x3, xzr, 3
    00031950b 0x319c8
    00031954
    00031954loc_31954:
    00031954subs xzr, x1, 0
    00031958b.ls 0x319a0
    0003195corr x3, xzr, 48
    00031960strb w3, [x0]
    00031964orr x1, xzr, 1
    00031968ldur x29, [sp-8]
    0003196cldr x30, [sp], 64
    00031970ret x30
    00031974
    00031974loc_31974:
    00031974movz x5, 27062
    00031978movk x5, 0xaf6c0000
    0003197cmovk x5, 0xbd0500000000
    00031980movk x5, 0x8637000000000000
    00031984umulh x5, x5, x3
    00031988ubfm x3, x5, 19, 63
    0003198cmov x4, xzr
    00031990bl runtime.itoaDiv
    00031994ldur x29, [sp-8]
    00031998ldr x30, [sp], 64
    0003199cret x30
    000319a0
    000319a0loc_319a0:
    000319a0mov x0, xzr
    000319a4mov x1, x0
    000319a8bl runtime.panicIndex
    000319ac
    000319acloc_319ac:
    000319acmovz x6, 52429
    000319b0movk x6, 0xcccc0000
    000319b4movk x6, 0xcccc00000000
    000319b8movk x6, 0xcccc000000000000
    000319bcumulh x7, x5, x6
    000319c0ubfm x5, x7, 3, 63
    000319c4sub x3, x3, 1
    000319c8
    000319c8loc_319c8:
    000319c8subs xzr, x5, 100
    000319ccb.hs 0x319ac
    000319d0mov x4, x3
    000319d4mov x3, x5
    000319d8bl runtime.itoaDiv
    000319dcldur x29, [sp-8]
    000319e0ldr x30, [sp], 64
    000319e4ret x30
    000319e8
    000319e8loc_319e8:
    000319e8stp x0, x1, [sp+8]
    000319ecstp x2, x3, [sp+24]
    000319f0mov x3, x30
    000319f4bl runtime.morestack_noctxt.abi0
    000319f8ldp x0, x1, [sp+8]
    000319fcldp x2, x3, [sp+24]
    00031a00b 0x31900
    00031a04udf 0
    00031a08udf 0
    00031a0cudf 0
    00031900
    00031a10
    00031a10runtime.(*gcCPULimiterState).limiting: ; void runtime.(*gcCPULimiterState).limiting(runtime.gcCPULimiterState * l)
    00031a10ldr x16, [x28+16]
    00031a14subs xzr, sp, x16
    00031a18b.ls 0x31a40
    00031a1cstr x30, [sp-32]!
    00031a20stur x29, [sp-8]
    00031a24sub x29, sp, 8
    00031a28ldrsb x27, [x0]
    00031a2cadd x0, x0, 4
    00031a30bl internal/runtime/atomic.(*Bool).Load
    00031a34ldur x29, [sp-8]
    00031a38ldr x30, [sp], 32
    00031a3cret x30
    00031a40
    00031a40loc_31a40:
    00031a40str x0, [sp+8]
    00031a44mov x3, x30
    00031a48bl runtime.morestack_noctxt.abi0
    00031a4cldr x0, [sp+8]
    00031a50b 0x31a10
    00031a54udf 0
    00031a58udf 0
    00031a5cudf 0
    00031a10
    00031a60
    00031a60runtime.(*gcCPULimiterState).startGCTransition: ; void runtime.(*gcCPULimiterState).startGCTransition(runtime.gcCPULimiterState * l, bool enableGC, int64 now)
    00031a60ldr x16, [x28+16]
    00031a64subs xzr, sp, x16
    00031a68b.ls 0x31af0
    00031a6cstr x30, [sp-32]!
    00031a70stur x29, [sp-8]
    00031a74sub x29, sp, 8
    00031a78str x0, [sp+40]
    00031a7cstrb w1, [sp+48]
    00031a80str x2, [sp+56]
    00031a84bl runtime.(*gcCPULimiterState).tryLock
    00031a88tbz w0, 0, 0x31adc
    00031a8cldr x0, [sp+40]
    00031a90ldrb w2, [x0+5]
    00031a94ldrb w3, [sp+48]
    00031a98eor x2, x2, x3
    00031a9ceor x2, x2, 1
    00031aa0tbnz w2, 0, 0x31acc
    00031aa4ldr x1, [sp+56]
    00031aa8bl runtime.(*gcCPULimiterState).updateLocked
    00031aacldrb w2, [sp+48]
    00031ab0ldr x3, [sp+40]
    00031ab4strb w2, [x3+5]
    00031ab8orr x2, xzr, 1
    00031abcstrb w2, [x3+6]
    00031ac0ldur x29, [sp-8]
    00031ac4ldr x30, [sp], 32
    00031ac8ret x30
    00031acc
    00031accloc_31acc:
    00031accadrp x0, 0x695000
    00031ad0add x0, x0, 3051
    00031ad4movz x1, 45
    00031ad8bl runtime.throw
    00031adc
    00031adcloc_31adc:
    00031adcadrp x0, 0x696000
    00031ae0add x0, x0, 3198
    00031ae4movz x1, 47
    00031ae8bl runtime.throw
    00031aechint
    00031af0
    00031af0loc_31af0:
    00031af0str x0, [sp+8]
    00031af4strb w1, [sp+16]
    00031af8str x2, [sp+24]
    00031afcmov x3, x30
    00031b00bl runtime.morestack_noctxt.abi0
    00031b04ldr x0, [sp+8]
    00031b08ldrb w1, [sp+16]
    00031b0cldr x2, [sp+24]
    00031b10b 0x31a60
    00031b14udf 0
    00031b18udf 0
    00031b1cudf 0
    00031a60
    00031b20
    00031b20runtime.(*gcCPULimiterState).finishGCTransition: ; void runtime.(*gcCPULimiterState).finishGCTransition(runtime.gcCPULimiterState * l, int64 now)
    00031b20ldr x16, [x28+16]
    00031b24subs xzr, sp, x16
    00031b28b.ls 0x31bb0
    00031b2cstr x30, [sp-48]!
    00031b30stur x29, [sp-8]
    00031b34sub x29, sp, 8
    00031b38ldrb w2, [x0+6]
    00031b3ctbz w2, 0, 0x31b9c
    00031b40str x0, [sp+56]
    00031b44str x1, [sp+64]
    00031b48add x0, x0, 56
    00031b4cstr x0, [sp+32]
    00031b50bl internal/runtime/atomic.(*Int64).Load
    00031b54ldr x1, [sp+64]
    00031b58subs xzr, x0, x1
    00031b5cb.gt 0x31b7c
    00031b60sub x3, x1, x0
    00031b64ldr x0, [sp+56]
    00031b68ldrsw x4, [x0+68]
    00031b6cmadd x2, x3, x4, xzr
    00031b70mov x1, xzr
    00031b74bl runtime.(*gcCPULimiterState).accumulate
    00031b78ldr x1, [sp+64]
    00031b7c
    00031b7cloc_31b7c:
    00031b7cldr x0, [sp+32]
    00031b80bl internal/runtime/atomic.(*Int64).Store
    00031b84ldr x0, [sp+56]
    00031b88strb wzr, [x0+6]
    00031b8cbl runtime.(*gcCPULimiterState).unlock
    00031b90ldur x29, [sp-8]
    00031b94ldr x30, [sp], 48
    00031b98ret x30
    00031b9c
    00031b9cloc_31b9c:
    00031b9cadrp x0, 0x696000
    00031ba0add x0, x0, 3245
    00031ba4movz x1, 47
    00031ba8bl runtime.throw
    00031bachint
    00031bb0
    00031bb0loc_31bb0:
    00031bb0stp x0, x1, [sp+8]
    00031bb4mov x3, x30
    00031bb8bl runtime.morestack_noctxt.abi0
    00031bbcldp x0, x1, [sp+8]
    00031bc0b 0x31b20
    00031bc4udf 0
    00031bc8udf 0
    00031bccudf 0
    00031b20
    00031bd0
    00031bd0runtime.(*gcCPULimiterState).needUpdate: ; void runtime.(*gcCPULimiterState).needUpdate(runtime.gcCPULimiterState * l, int64 now)
    00031bd0ldr x16, [x28+16]
    00031bd4subs xzr, sp, x16
    00031bd8b.ls 0x31c1c
    00031bdcstr x30, [sp-32]!
    00031be0stur x29, [sp-8]
    00031be4sub x29, sp, 8
    00031be8str x1, [sp+48]
    00031becldrsb x27, [x0]
    00031bf0add x0, x0, 56
    00031bf4bl internal/runtime/atomic.(*Int64).Load
    00031bf8ldr x1, [sp+48]
    00031bfcsub x1, x1, x0
    00031c00movz x2, 38528
    00031c04movk x2, 0x980000
    00031c08subs xzr, x1, x2
    00031c0ccset x0, gt
    00031c10ldur x29, [sp-8]
    00031c14ldr x30, [sp], 32
    00031c18ret x30
    00031c1c
    00031c1cloc_31c1c:
    00031c1cstp x0, x1, [sp+8]
    00031c20mov x3, x30
    00031c24bl runtime.morestack_noctxt.abi0
    00031c28ldp x0, x1, [sp+8]
    00031c2cb 0x31bd0
    00031bd0
    00031c30
    00031c30runtime.(*gcCPULimiterState).addAssistTime: ; void runtime.(*gcCPULimiterState).addAssistTime(runtime.gcCPULimiterState * l, int64 t)
    00031c30ldr x16, [x28+16]
    00031c34subs xzr, sp, x16
    00031c38b.ls 0x31c60
    00031c3cstr x30, [sp-32]!
    00031c40stur x29, [sp-8]
    00031c44sub x29, sp, 8
    00031c48ldrsb x27, [x0]
    00031c4cadd x0, x0, 32
    00031c50bl internal/runtime/atomic.(*Int64).Add
    00031c54ldur x29, [sp-8]
    00031c58ldr x30, [sp], 32
    00031c5cret x30
    00031c60
    00031c60loc_31c60:
    00031c60stp x0, x1, [sp+8]
    00031c64mov x3, x30
    00031c68bl runtime.morestack_noctxt.abi0
    00031c6cldp x0, x1, [sp+8]
    00031c70b 0x31c30
    00031c74udf 0
    00031c78udf 0
    00031c7cudf 0
    00031c30
    00031c80
    00031c80runtime.(*gcCPULimiterState).addIdleTime: ; void runtime.(*gcCPULimiterState).addIdleTime(runtime.gcCPULimiterState * l, int64 t)
    00031c80ldr x16, [x28+16]
    00031c84subs xzr, sp, x16
    00031c88b.ls 0x31cb0
    00031c8cstr x30, [sp-32]!
    00031c90stur x29, [sp-8]
    00031c94sub x29, sp, 8
    00031c98ldrsb x27, [x0]
    00031c9cadd x0, x0, 48
    00031ca0bl internal/runtime/atomic.(*Int64).Add
    00031ca4ldur x29, [sp-8]
    00031ca8ldr x30, [sp], 32
    00031cacret x30
    00031cb0
    00031cb0loc_31cb0:
    00031cb0stp x0, x1, [sp+8]
    00031cb4mov x3, x30
    00031cb8bl runtime.morestack_noctxt.abi0
    00031cbcldp x0, x1, [sp+8]
    00031cc0b 0x31c80
    00031cc4udf 0
    00031cc8udf 0
    00031cccudf 0
    00031c80
    00031cd0
    00031cd0runtime.(*gcCPULimiterState).update: ; void runtime.(*gcCPULimiterState).update(runtime.gcCPULimiterState * l, int64 now)
    00031cd0ldr x16, [x28+16]
    00031cd4subs xzr, sp, x16
    00031cd8b.ls 0x31d40
    00031cdcstr x30, [sp-32]!
    00031ce0stur x29, [sp-8]
    00031ce4sub x29, sp, 8
    00031ce8str x0, [sp+40]
    00031cecstr x1, [sp+48]
    00031cf0bl runtime.(*gcCPULimiterState).tryLock
    00031cf4tbz w0, 0, 0x31d20
    00031cf8ldr x0, [sp+40]
    00031cfcldrb w2, [x0+6]
    00031d00tbnz w2, 0, 0x31d2c
    00031d04ldr x1, [sp+48]
    00031d08bl runtime.(*gcCPULimiterState).updateLocked
    00031d0cldr x0, [sp+40]
    00031d10bl runtime.(*gcCPULimiterState).unlock
    00031d14ldur x29, [sp-8]
    00031d18ldr x30, [sp], 32
    00031d1cret x30
    00031d20
    00031d20loc_31d20:
    00031d20ldur x29, [sp-8]
    00031d24ldr x30, [sp], 32
    00031d28ret x30
    00031d2c
    00031d2cloc_31d2c:
    00031d2cadrp x0, 0x687000
    00031d30add x0, x0, 4078
    00031d34orr x1, xzr, 24
    00031d38bl runtime.throw
    00031d3chint
    00031d40
    00031d40loc_31d40:
    00031d40stp x0, x1, [sp+8]
    00031d44mov x3, x30
    00031d48bl runtime.morestack_noctxt.abi0
    00031d4cldp x0, x1, [sp+8]
    00031d50b 0x31cd0
    00031d54udf 0
    00031d58udf 0
    00031d5cudf 0
    00031cd0
    00031d60
    00031d60runtime.(*gcCPULimiterState).updateLocked: ; void runtime.(*gcCPULimiterState).updateLocked(runtime.gcCPULimiterState * l, int64 now)
    00031d60ldr x16, [x28+16]
    00031d64subs xzr, sp, x16
    00031d68b.ls 0x31f80
    00031d6cstr x30, [sp-128]!
    00031d70stur x29, [sp-8]
    00031d74sub x29, sp, 8
    00031d78str x0, [sp+136]
    00031d7cstr x1, [sp+144]
    00031d80ldrsb x27, [x0]
    00031d84add x0, x0, 56
    00031d88str x0, [sp+112]
    00031d8cbl internal/runtime/atomic.(*Int64).Load
    00031d90ldr x1, [sp+144]
    00031d94subs xzr, x0, x1
    00031d98b.gt 0x31e58
    00031d9csub x2, x1, x0
    00031da0str x2, [sp+88]
    00031da4ldr x2, [sp+136]
    00031da8ldrsw x2, [x2+68]
    00031dacstr w2, [sp+36]
    00031db0ldr x0, [sp+112]
    00031db4bl internal/runtime/atomic.(*Int64).Store
    00031db8ldrsw x2, [sp+36]
    00031dbcldr x3, [sp+136]
    00031dc0add x0, x3, 32
    00031dc4str x0, [sp+112]
    00031dc8ldr x3, [sp+88]
    00031dccmadd x2, x3, x2, xzr
    00031dd0str x2, [sp+40]
    00031dd4bl internal/runtime/atomic.(*Int64).Load
    00031dd8str x0, [sp+64]
    00031ddccbz x0, 0x31dec
    00031de0sub x1, xzr, x0
    00031de4ldr x0, [sp+112]
    00031de8bl internal/runtime/atomic.(*Int64).Add
    00031dec
    00031decloc_31dec:
    00031decldr x1, [sp+136]
    00031df0add x0, x1, 48
    00031df4str x0, [sp+112]
    00031df8bl internal/runtime/atomic.(*Int64).Load
    00031dfcstr x0, [sp+48]
    00031e00cbz x0, 0x31e14
    00031e04sub x1, xzr, x0
    00031e08ldr x0, [sp+112]
    00031e0cbl internal/runtime/atomic.(*Int64).Add
    00031e10ldr x0, [sp+48]
    00031e14
    00031e14loc_31e14:
    00031e14ldr x3, [sp+136]
    00031e18ldrb w4, [x3+7]
    00031e1ctbnz w4, 0, 0x31e50
    00031e20bl runtime.acquirem
    00031e24str x0, [sp+96]
    00031e28adrp x27, 0x9f1000
    00031e2cldr x1, [x27+3040]
    00031e30str x1, [sp+104]
    00031e34adrp x27, 0x9f1000
    00031e38ldr x2, [x27+3048]
    00031e3cstr x2, [sp+80]
    00031e40mov x3, xzr
    00031e44ldr x4, [sp+64]
    00031e48ldr x5, [sp+48]
    00031e4cb 0x31ec4
    00031e50
    00031e50loc_31e50:
    00031e50ldr x1, [sp+64]
    00031e54b 0x31e64
    00031e58
    00031e58loc_31e58:
    00031e58ldur x29, [sp-8]
    00031e5cldr x30, [sp], 128
    00031e60ret x30
    00031e64
    00031e64loc_31e64:
    00031e64ldrb w4, [x3+5]
    00031e68tbz w4, 0, 0x31e88
    00031e6cldr x4, [sp+40]
    00031e70scvtf d0, x4
    00031e74fmov d1
    00031e78fmul d0, d0, d1
    00031e7cfcvtzs x5, d0
    00031e80add x1, x5, x1
    00031e84b 0x31e8c
    00031e88
    00031e88loc_31e88:
    00031e88ldr x4, [sp+40]
    00031e8c
    00031e8cloc_31e8c:
    00031e8cadd x5, x1, x0
    00031e90sub x4, x4, x5
    00031e94mov x0, x3
    00031e98mov x2, x1
    00031e9cmov x1, x4
    00031ea0bl runtime.(*gcCPULimiterState).accumulate
    00031ea4ldur x29, [sp-8]
    00031ea8ldr x30, [sp], 128
    00031eacret x30
    00031eb0
    00031eb0loc_31eb0:
    00031eb0ldr x6, [sp+72]
    00031eb4add x3, x6, 1
    00031eb8ldr x0, [sp+96]
    00031ebcldr x1, [sp+104]
    00031ec0ldr x2, [sp+80]
    00031ec4
    00031ec4loc_31ec4:
    00031ec4str x5, [sp+48]
    00031ec8str x4, [sp+64]
    00031eccsubs xzr, x3, x2
    00031ed0b.ge 0x31f58
    00031ed4str x3, [sp+72]
    00031ed8ldr x2, [x1+3*x3]
    00031edcldrsb x27, [x2]
    00031ee0movz x3, 4656
    00031ee4add x0, x2, x3
    00031ee8ldr x1, [sp+144]
    00031eecbl runtime.(*limiterEvent).consume
    00031ef0ubfm x2, x0, 0, 7
    00031ef4subs wzr, w2, 1
    00031ef8b.hi 0x31f0c
    00031efccbnz w2, 0x31f34
    00031f00ldr x4, [sp+64]
    00031f04ldr x5, [sp+48]
    00031f08b 0x31eb0
    00031f0c
    00031f0cloc_31f0c:
    00031f0csubs wzr, w2, 2
    00031f10b.eq 0x31f1c
    00031f14subs wzr, w2, 3
    00031f18b.ne 0x31f2c
    00031f1c
    00031f1cloc_31f1c:
    00031f1cldr x2, [sp+64]
    00031f20add x4, x2, x1
    00031f24ldr x5, [sp+48]
    00031f28b 0x31eb0
    00031f2c
    00031f2cloc_31f2c:
    00031f2csubs wzr, w2, 4
    00031f30b.ne 0x31f6c
    00031f34
    00031f34loc_31f34:
    00031f34str x1, [sp+56]
    00031f38adrp x0, 0x9f6000
    00031f3cadd x0, x0, 1744
    00031f40bl internal/runtime/atomic.(*Int64).Add
    00031f44ldr x2, [sp+48]
    00031f48ldr x3, [sp+56]
    00031f4cadd x5, x2, x3
    00031f50ldr x4, [sp+64]
    00031f54b 0x31eb0
    00031f58
    00031f58loc_31f58:
    00031f58bl runtime.releasem
    00031f5cldr x3, [sp+136]
    00031f60ldr x1, [sp+64]
    00031f64ldr x0, [sp+48]
    00031f68b 0x31e64
    00031f6c
    00031f6cloc_31f6c:
    00031f6cadrp x0, 0x68d000
    00031f70add x0, x0, 1168
    00031f74orr x1, xzr, 32
    00031f78bl runtime.throw
    00031f7chint
    00031f80
    00031f80loc_31f80:
    00031f80stp x0, x1, [sp+8]
    00031f84mov x3, x30
    00031f88bl runtime.morestack_noctxt.abi0
    00031f8cldp x0, x1, [sp+8]
    00031f90b 0x31d60
    00031f94udf 0
    00031f98udf 0
    00031f9cudf 0
    00031d60
    00031fa0
    00031fa0runtime.(*gcCPULimiterState).accumulate: ; void runtime.(*gcCPULimiterState).accumulate(runtime.gcCPULimiterState * l, int64 mutatorTime, int64 gcTime)
    00031fa0ldr x16, [x28+16]
    00031fa4subs xzr, sp, x16
    00031fa8b.ls 0x32070
    00031facstr x30, [sp-32]!
    00031fb0stur x29, [sp-8]
    00031fb4sub x29, sp, 8
    00031fb8ldr x3, [x0+16]
    00031fbcldr x4, [x0+8]
    00031fc0sub x5, x2, x1
    00031fc4sub x6, x3, x4
    00031fc8subs xzr, x5, 0
    00031fccb.le 0x3202c
    00031fd0subs xzr, x5, x6
    00031fd4b.lo 0x3202c
    00031fd8ldr x2, [x0+24]
    00031fdcadd x4, x4, x5
    00031fe0sub x3, x4, x3
    00031fe4add x2, x2, x3
    00031fe8str x2, [x0+24]
    00031fecldr x2, [x0+16]
    00031ff0str x2, [x0+8]
    00031ff4cbz x6, 0x32020
    00031ff8str x0, [sp+40]
    00031ffcadd x0, x0, 4
    00032000orr x1, xzr, 1
    00032004bl internal/runtime/atomic.(*Bool).Store
    00032008ldr x2, [sp+40]
    0003200cadd x0, x2, 64
    00032010adrp x27, 0xa20000
    00032014ldr w2, [x27+568]
    00032018add x1, x2, 1
    0003201cbl internal/runtime/atomic.(*Uint32).Store
    00032020
    00032020loc_32020:
    00032020ldur x29, [sp-8]
    00032024ldr x30, [sp], 32
    00032028ret x30
    0003202c
    0003202cloc_3202c:
    0003202ctbz x5, 63, 0x32044
    00032030sub x3, x1, x2
    00032034subs xzr, x4, x3
    00032038b.hi 0x32044
    0003203cstr xzr, [x0+8]
    00032040b 0x32050
    00032044
    00032044loc_32044:
    00032044add x2, x4, x2
    00032048sub x2, x2, x1
    0003204cstr x2, [x0+8]
    00032050
    00032050loc_32050:
    00032050cbz x5, 0x32064
    00032054cbnz x6, 0x32064
    00032058add x0, x0, 4
    0003205cmov x1, xzr
    00032060bl internal/runtime/atomic.(*Bool).Store
    00032064
    00032064loc_32064:
    00032064ldur x29, [sp-8]
    00032068ldr x30, [sp], 32
    0003206cret x30
    00032070
    00032070loc_32070:
    00032070stp x0, x1, [sp+8]
    00032074str x2, [sp+24]
    00032078mov x3, x30
    0003207cbl runtime.morestack_noctxt.abi0
    00032080ldp x0, x1, [sp+8]
    00032084ldr x2, [sp+24]
    00032088b 0x31fa0
    0003208cudf 0
    00031fa0
    00032090
    00032090runtime.(*gcCPULimiterState).tryLock: ; void runtime.(*gcCPULimiterState).tryLock(runtime.gcCPULimiterState * l)
    00032090ldr x16, [x28+16]
    00032094subs xzr, sp, x16
    00032098b.ls 0x320c4
    0003209cstr x30, [sp-32]!
    000320a0stur x29, [sp-8]
    000320a4sub x29, sp, 8
    000320a8ldrsb x27, [x0]
    000320acmov x1, xzr
    000320b0orr x2, xzr, 1
    000320b4bl internal/runtime/atomic.(*Uint32).CompareAndSwap
    000320b8ldur x29, [sp-8]
    000320bcldr x30, [sp], 32
    000320c0ret x30
    000320c4
    000320c4loc_320c4:
    000320c4str x0, [sp+8]
    000320c8mov x3, x30
    000320ccbl runtime.morestack_noctxt.abi0
    000320d0ldr x0, [sp+8]
    000320d4b 0x32090
    000320d8udf 0
    000320dcudf 0
    00032090
    000320e0
    000320e0runtime.(*gcCPULimiterState).unlock: ; void runtime.(*gcCPULimiterState).unlock(runtime.gcCPULimiterState * l)
    000320e0ldr x16, [x28+16]
    000320e4subs xzr, sp, x16
    000320e8b.ls 0x3212c
    000320ecstr x30, [sp-32]!
    000320f0stur x29, [sp-8]
    000320f4sub x29, sp, 8
    000320f8ldrsb x27, [x0]
    000320fcmov x1, xzr
    00032100bl internal/runtime/atomic.(*Uint32).Swap
    00032104subs wzr, w0, 1
    00032108b.ne 0x32118
    0003210cldur x29, [sp-8]
    00032110ldr x30, [sp], 32
    00032114ret x30
    00032118
    00032118loc_32118:
    00032118adrp x0, 0x681000
    0003211cadd x0, x0, 1524
    00032120movz x1, 13
    00032124bl runtime.throw
    00032128hint
    0003212c
    0003212cloc_3212c:
    0003212cstr x0, [sp+8]
    00032130mov x3, x30
    00032134bl runtime.morestack_noctxt.abi0
    00032138ldr x0, [sp+8]
    0003213cb 0x320e0
    000320e0
    00032140
    00032140runtime.(*gcCPULimiterState).resetCapacity: ; void runtime.(*gcCPULimiterState).resetCapacity(runtime.gcCPULimiterState * l, int64 now, int32 nprocs)
    00032140ldr x16, [x28+16]
    00032144subs xzr, sp, x16
    00032148b.ls 0x32208
    0003214cstr x30, [sp-32]!
    00032150stur x29, [sp-8]
    00032154sub x29, sp, 8
    00032158str x0, [sp+40]
    0003215cstr x1, [sp+48]
    00032160str w2, [sp+56]
    00032164bl runtime.(*gcCPULimiterState).tryLock
    00032168tbz w0, 0, 0x321f4
    0003216cldr x0, [sp+40]
    00032170ldr x1, [sp+48]
    00032174bl runtime.(*gcCPULimiterState).updateLocked
    00032178ldrsw x2, [sp+56]
    0003217cldr x0, [sp+40]
    00032180str w2, [x0+68]
    00032184movz x3, 51712
    00032188movk x3, 0x3b9a0000
    0003218cmadd x2, x2, x3, xzr
    00032190str x2, [x0+16]
    00032194ldr x3, [x0+8]
    00032198subs xzr, x3, x2
    0003219cb.hi 0x321b8
    000321a0b.hs 0x321e4
    000321a4add x0, x0, 4
    000321a8mov x1, xzr
    000321acbl internal/runtime/atomic.(*Bool).Store
    000321b0ldr x0, [sp+40]
    000321b4b 0x321e4
    000321b8
    000321b8loc_321b8:
    000321b8str x2, [x0+8]
    000321bcadd x0, x0, 4
    000321c0orr x1, xzr, 1
    000321c4bl internal/runtime/atomic.(*Bool).Store
    000321c8ldr x2, [sp+40]
    000321ccadd x0, x2, 64
    000321d0adrp x27, 0xa20000
    000321d4ldr w2, [x27+568]
    000321d8add x1, x2, 1
    000321dcbl internal/runtime/atomic.(*Uint32).Store
    000321e0ldr x0, [sp+40]
    000321e4
    000321e4loc_321e4:
    000321e4bl runtime.(*gcCPULimiterState).unlock
    000321e8ldur x29, [sp-8]
    000321ecldr x30, [sp], 32
    000321f0ret x30
    000321f4
    000321f4loc_321f4:
    000321f4adrp x0, 0x692000
    000321f8add x0, x0, 19
    000321fcmovz x1, 40
    00032200bl runtime.throw
    00032204hint
    00032208
    00032208loc_32208:
    00032208stp x0, x1, [sp+8]
    0003220cstr w2, [sp+24]
    00032210mov x3, x30
    00032214bl runtime.morestack_noctxt.abi0
    00032218ldp x0, x1, [sp+8]
    0003221cldrsw x2, [sp+24]
    00032220b 0x32140
    00032224udf 0
    00032228udf 0
    0003222cudf 0
    00032140
    00032230
    00032230runtime.makeLimiterEventStamp: ; void runtime.makeLimiterEventStamp(runtime.limiterEventType typ, int64 now)
    00032230ubfm x2, x0, 0, 7
    00032234and x1, x1, 0x1fffffffffffffff
    00032238orr x0, x1, x2, lsl #61
    0003223cret x30
    00032230
    00032240
    00032240runtime.limiterEventStamp.duration: ; void runtime.limiterEventStamp.duration(runtime.limiterEventStamp s, int64 now)
    00032240and x2, x1, 0xe000000000000000
    00032244and x3, x0, 0x1fffffffffffffff
    00032248orr x2, x2, x3
    0003224csubs xzr, x1, x2
    00032250b.ge 0x3225c
    00032254mov x0, xzr
    00032258ret x30
    0003225c
    0003225cloc_3225c:
    0003225csub x0, x1, x2
    00032260ret x30
    00032264udf 0
    00032268udf 0
    0003226cudf 0
    00032240
    00032270
    00032270runtime.limiterEventStamp.typ: ; void runtime.limiterEventStamp.typ(runtime.limiterEventStamp s)
    00032270ubfm x0, x0, 61, 63
    00032274ret x30
    00032278udf 0
    0003227cudf 0
    00032270
    00032280
    00032280runtime.(*limiterEvent).start: ; void runtime.(*limiterEvent).start(runtime.limiterEvent * e, runtime.limiterEventType typ, int64 now)
    00032280ldr x16, [x28+16]
    00032284subs xzr, sp, x16
    00032288b.ls 0x322f0
    0003228cstr x30, [sp-32]!
    00032290stur x29, [sp-8]
    00032294sub x29, sp, 8
    00032298str x0, [sp+40]
    0003229cstrb w1, [sp+48]
    000322a0str x2, [sp+56]
    000322a4ldrsb x27, [x0]
    000322a8bl internal/runtime/atomic.(*Uint64).Load
    000322acbl runtime.limiterEventStamp.typ
    000322b0ubfm x1, x0, 0, 7
    000322b4cbz w1, 0x322c8
    000322b8mov x0, xzr
    000322bcldur x29, [sp-8]
    000322c0ldr x30, [sp], 32
    000322c4ret x30
    000322c8
    000322c8loc_322c8:
    000322c8ldrb w0, [sp+48]
    000322ccldr x1, [sp+56]
    000322d0bl runtime.makeLimiterEventStamp
    000322d4mov x1, x0
    000322d8ldr x0, [sp+40]
    000322dcbl internal/runtime/atomic.(*Uint64).Store
    000322e0orr x0, xzr, 1
    000322e4ldur x29, [sp-8]
    000322e8ldr x30, [sp], 32
    000322ecret x30
    000322f0
    000322f0loc_322f0:
    000322f0str x0, [sp+8]
    000322f4strb w1, [sp+16]
    000322f8str x2, [sp+24]
    000322fcmov x3, x30
    00032300bl runtime.morestack_noctxt.abi0
    00032304ldr x0, [sp+8]
    00032308ldrb w1, [sp+16]
    0003230cldr x2, [sp+24]
    00032310b 0x32280
    00032314udf 0
    00032318udf 0
    0003231cudf 0
    00032280
    00032320
    00032320runtime.(*limiterEvent).consume: ; void runtime.(*limiterEvent).consume(runtime.limiterEvent * e, int64 now)
    00032320ldr x16, [x28+16]
    00032324subs xzr, sp, x16
    00032328b.ls 0x323e0
    0003232cstr x30, [sp-64]!
    00032330stur x29, [sp-8]
    00032334sub x29, sp, 8
    00032338str x0, [sp+72]
    0003233cstr x1, [sp+80]
    00032340mov x2, xzr
    00032344b 0x32350
    00032348
    00032348loc_32348:
    00032348ldr x0, [sp+72]
    0003234cldr x2, [sp+48]
    00032350
    00032350loc_32350:
    00032350str x2, [sp+48]
    00032354ldrsb x27, [x0]
    00032358bl internal/runtime/atomic.(*Uint64).Load
    0003235cstr x0, [sp+40]
    00032360bl runtime.limiterEventStamp.typ
    00032364ubfm x1, x0, 0, 7
    00032368cbz w1, 0x323cc
    0003236cstrb w0, [sp+39]
    00032370ldr x0, [sp+40]
    00032374ldr x1, [sp+80]
    00032378bl runtime.limiterEventStamp.duration
    0003237ccbz x0, 0x323b8
    00032380str x0, [sp+48]
    00032384ldrb w0, [sp+39]
    00032388ldr x1, [sp+80]
    0003238cbl runtime.makeLimiterEventStamp
    00032390ldr x1, [sp+40]
    00032394mov x2, x0
    00032398ldr x0, [sp+72]
    0003239cbl internal/runtime/atomic.(*Uint64).CompareAndSwap
    000323a0tbz w0, 0, 0x32348
    000323a4ldrb w0, [sp+39]
    000323a8ldr x1, [sp+48]
    000323acldur x29, [sp-8]
    000323b0ldr x30, [sp], 64
    000323b4ret x30
    000323b8
    000323b8loc_323b8:
    000323b8mov x0, xzr
    000323bcmov x1, xzr
    000323c0ldur x29, [sp-8]
    000323c4ldr x30, [sp], 64
    000323c8ret x30
    000323cc
    000323ccloc_323cc:
    000323ccmov x0, xzr
    000323d0ldr x1, [sp+48]
    000323d4ldur x29, [sp-8]
    000323d8ldr x30, [sp], 64
    000323dcret x30
    000323e0
    000323e0loc_323e0:
    000323e0stp x0, x1, [sp+8]
    000323e4mov x3, x30
    000323e8bl runtime.morestack_noctxt.abi0
    000323ecldp x0, x1, [sp+8]
    000323f0b 0x32320
    000323f4udf 0
    000323f8udf 0
    000323fcudf 0
    00032320
    00032400
    00032400runtime.(*limiterEvent).stop: ; void runtime.(*limiterEvent).stop(runtime.limiterEvent * e, runtime.limiterEventType typ, int64 now)
    00032400ldr x16, [x28+16]
    00032404subs xzr, sp, x16
    00032408b.ls 0x32580
    0003240cstr x30, [sp-64]!
    00032410stur x29, [sp-8]
    00032414sub x29, sp, 8
    00032418str x0, [sp+72]
    0003241cstrb w1, [sp+80]
    00032420str x2, [sp+88]
    00032424b 0x3242c
    00032428
    00032428loc_32428:
    00032428ldr x0, [sp+72]
    0003242c
    0003242cloc_3242c:
    0003242cldrsb x27, [x0]
    00032430bl internal/runtime/atomic.(*Uint64).Load
    00032434str x0, [sp+48]
    00032438bl runtime.limiterEventStamp.typ
    0003243cldrb w1, [sp+80]
    00032440mov x2, x1
    00032444ubfm x3, x0, 0, 7
    00032448subs wzr, w2, w3
    0003244cb.ne 0x3251c
    00032450str w2, [sp+36]
    00032454ldr x0, [sp+72]
    00032458ldr x1, [sp+48]
    0003245cmov x2, xzr
    00032460bl internal/runtime/atomic.(*Uint64).CompareAndSwap
    00032464tbz w0, 0, 0x32428
    00032468ldr x0, [sp+48]
    0003246cldr x1, [sp+88]
    00032470bl runtime.limiterEventStamp.duration
    00032474cbz x0, 0x32500
    00032478ldr w2, [sp+36]
    0003247csubs wzr, w2, 2
    00032480b.hi 0x324ac
    00032484subs wzr, w2, 1
    00032488b.eq 0x32498
    0003248csubs wzr, w2, 2
    00032490b.eq 0x324b4
    00032494b 0x3250c
    00032498
    00032498loc_32498:
    00032498mov x1, x0
    0003249cadrp x0, 0xa19000
    000324a0add x0, x0, 4032
    000324a4bl runtime.(*gcCPULimiterState).addIdleTime
    000324a8b 0x324f4
    000324ac
    000324acloc_324ac:
    000324acsubs wzr, w2, 3
    000324b0b.ne 0x324c8
    000324b4
    000324b4loc_324b4:
    000324b4mov x1, x0
    000324b8adrp x0, 0xa19000
    000324bcadd x0, x0, 4032
    000324c0bl runtime.(*gcCPULimiterState).addAssistTime
    000324c4b 0x324f4
    000324c8
    000324c8loc_324c8:
    000324c8subs wzr, w2, 4
    000324ccb.ne 0x3250c
    000324d0str x0, [sp+40]
    000324d4mov x1, x0
    000324d8adrp x0, 0xa19000
    000324dcadd x0, x0, 4032
    000324e0bl runtime.(*gcCPULimiterState).addIdleTime
    000324e4adrp x0, 0x9f5000
    000324e8add x0, x0, 1744
    000324ecldr x1, [sp+40]
    000324f0bl internal/runtime/atomic.(*Int64).Add
    000324f4
    000324f4loc_324f4:
    000324f4ldur x29, [sp-8]
    000324f8ldr x30, [sp], 64
    000324fcret x30
    00032500
    00032500loc_32500:
    00032500ldur x29, [sp-8]
    00032504ldr x30, [sp], 64
    00032508ret x30
    0003250c
    0003250cloc_3250c:
    0003250cadrp x0, 0x697000
    00032510add x0, x0, 2209
    00032514movz x1, 51
    00032518bl runtime.throw
    0003251c
    0003251cloc_3251c:
    0003251cldr x0, [sp+48]
    00032520bl runtime.limiterEventStamp.typ
    00032524strb w0, [sp+35]
    00032528bl runtime.printlock
    0003252cadrp x0, 0x681000
    00032530add x0, x0, 3220
    00032534orr x1, xzr, 14
    00032538bl runtime.printstring
    0003253cldrb w1, [sp+80]
    00032540mov x0, x1
    00032544bl runtime.printuint
    00032548adrp x0, 0x67e000
    0003254cadd x0, x0, 1647
    00032550movz x1, 5
    00032554bl runtime.printstring
    00032558ldrb w1, [sp+35]
    0003255cmov x0, x1
    00032560bl runtime.printuint
    00032564bl runtime.printnl
    00032568bl runtime.printunlock
    0003256cadrp x0, 0x69a000
    00032570add x0, x0, 3256
    00032574orr x1, xzr, 62
    00032578bl runtime.throw
    0003257chint
    00032580
    00032580loc_32580:
    00032580str x0, [sp+8]
    00032584strb w1, [sp+16]
    00032588str x2, [sp+24]
    0003258cmov x3, x30
    00032590bl runtime.morestack_noctxt.abi0
    00032594ldr x0, [sp+8]
    00032598ldrb w1, [sp+16]
    0003259cldr x2, [sp+24]
    000325a0b 0x32400
    000325a4udf 0
    000325a8udf 0
    000325acudf 0
    00032400
    000325b0
    000325b0runtime.gcMarkRootPrepare: ; void runtime.gcMarkRootPrepare(void)
    000325b0ldr x16, [x28+16]
    000325b4subs xzr, sp, x16
    000325b8b.ls 0x327d4
    000325bcstr x30, [sp-64]!
    000325c0stur x29, [sp-8]
    000325c4sub x29, sp, 8
    000325c8bl runtime.assertWorldStopped
    000325ccadrp x27, 0x9f2000
    000325d0add x27, x27, 3016
    000325d4stp xzr, xzr, [x27]
    000325d8bl runtime.activeModules
    000325dcstr x0, [sp+48]
    000325e0str x1, [sp+40]
    000325e4mov x2, xzr
    000325e8b 0x325fc
    000325ec
    000325ecloc_325ec:
    000325ecldr x3, [sp+32]
    000325f0add x2, x3, 1
    000325f4ldr x0, [sp+48]
    000325f8ldr x1, [sp+40]
    000325fc
    000325fcloc_325fc:
    000325fcsubs xzr, x1, x2
    00032600b.le 0x32688
    00032604str x2, [sp+32]
    00032608ldr x1, [x0+3*x2]
    0003260cstr x1, [sp+24]
    00032610adrp x27, 0x6a6000
    00032614ldr x2, [x27+1824]
    00032618ldr x3, [x1+216]
    0003261cldr x1, [x1+208]
    00032620sub x0, x3, x1
    00032624adrp x26, 0x6a6000
    00032628add x26, x26, 1824
    0003262cblr x2
    00032630adrp x27, 0x9f2000
    00032634ldr x1, [x27+3016]
    00032638subs xzr, x0, x1
    0003263cb.le 0x32648
    00032640adrp x27, 0x9f2000
    00032644str x0, [x27+3016]
    00032648
    00032648loc_32648:
    00032648adrp x27, 0x6a6000
    0003264cldr x1, [x27+1824]
    00032650ldr x2, [sp+24]
    00032654ldr x3, [x2+232]
    00032658ldr x2, [x2+224]
    0003265csub x0, x3, x2
    00032660adrp x26, 0x6a6000
    00032664add x26, x26, 1824
    00032668blr x1
    0003266cadrp x27, 0x9f2000
    00032670ldr x1, [x27+3024]
    00032674subs xzr, x0, x1
    00032678b.le 0x325ec
    0003267cadrp x27, 0x9f2000
    00032680str x0, [x27+3024]
    00032684b 0x325ec
    00032688
    00032688loc_32688:
    00032688adrp x27, 0xa10000
    0003268cldr x0, [x27+2744]
    00032690adrp x27, 0xa10000
    00032694ldr x1, [x27+2736]
    00032698adrp x27, 0xa10000
    0003269cstr x0, [x27+2792]
    000326a0adrp x27, 0xa10000
    000326a4str x0, [x27+2800]
    000326a8adrp x27, 0xa19000
    000326acldr w2, [x27+3056]
    000326b0cbz w2, 0x326c8
    000326b4bl runtime.gcWriteBarrier2
    000326b8str x1, [x25]
    000326bcadrp x27, 0xa10000
    000326c0ldr x2, [x27+2784]
    000326c4str x2, [x25+8]
    000326c8
    000326c8loc_326c8:
    000326c8adrp x27, 0xa10000
    000326ccstr x1, [x27+2784]
    000326d0ubfm x0, x0, 60, 59
    000326d4adrp x27, 0x9f2000
    000326d8str x0, [x27+3032]
    000326dcbl runtime.allGsSnapshot
    000326e0adrp x27, 0x9f2000
    000326e4str x1, [x27+3080]
    000326e8adrp x27, 0x9f2000
    000326ecstr x2, [x27+3088]
    000326f0adrp x27, 0xa19000
    000326f4ldr w2, [x27+3056]
    000326f8cbz w2, 0x32710
    000326fcbl runtime.gcWriteBarrier2
    00032700str x0, [x25]
    00032704adrp x27, 0x9f2000
    00032708ldr x2, [x27+3072]
    0003270cstr x2, [x25+8]
    00032710
    00032710loc_32710:
    00032710adrp x27, 0x9f2000
    00032714str x0, [x27+3072]
    00032718adrp x27, 0x9f2000
    0003271cstr x1, [x27+3040]
    00032720adrp x27, 0x9f2000
    00032724str wzr, [x27+2984]
    00032728adrp x27, 0x9f2000
    0003272cldr x0, [x27+3016]
    00032730adrp x27, 0x9f2000
    00032734ldr x1, [x27+3024]
    00032738add x0, x1, x0
    0003273cadrp x27, 0x9f2000
    00032740ldr x1, [x27+3032]
    00032744add x0, x1, x0
    00032748adrp x27, 0x9f2000
    0003274cldr x1, [x27+3040]
    00032750add x0, x1, x0
    00032754add x0, x0, 2
    00032758adrp x27, 0x9f2000
    0003275cstr w0, [x27+2988]
    00032760orr x0, xzr, 2
    00032764adrp x27, 0x9f2000
    00032768str w0, [x27+3048]
    0003276cadrp x27, 0x9f2000
    00032770ldr x0, [x27+3016]
    00032774add x1, x0, 2
    00032778adrp x27, 0x9f2000
    0003277cstr w1, [x27+3052]
    00032780adrp x27, 0x9f2000
    00032784ldr x1, [x27+3024]
    00032788add x0, x0, x1
    0003278cadd x1, x0, 2
    00032790adrp x27, 0x9f2000
    00032794str w1, [x27+3056]
    00032798adrp x27, 0x9f2000
    0003279cldr x1, [x27+3032]
    000327a0add x0, x0, x1
    000327a4add x1, x0, 2
    000327a8adrp x27, 0x9f2000
    000327acstr w1, [x27+3060]
    000327b0adrp x27, 0x9f2000
    000327b4ldr x1, [x27+3040]
    000327b8add x0, x0, x1
    000327bcadd x0, x0, 2
    000327c0adrp x27, 0x9f2000
    000327c4str w0, [x27+3064]
    000327c8ldur x29, [sp-8]
    000327ccldr x30, [sp], 64
    000327d0ret x30
    000327d4
    000327d4loc_327d4:
    000327d4mov x3, x30
    000327d8bl runtime.morestack_noctxt.abi0
    000327dcb 0x325b0
    000325b0
    000327e0
    000327e0runtime.gcMarkRootCheck: ; void runtime.gcMarkRootCheck(void)
    000327e0ldr x16, [x28+16]
    000327e4subs xzr, sp, x16
    000327e8b.ls 0x32898
    000327ecstr x30, [sp-80]!
    000327f0stur x29, [sp-8]
    000327f4sub x29, sp, 8
    000327f8adrp x27, 0x9f2000
    000327fcldr w1, [x27+2984]
    00032800adrp x27, 0x9f2000
    00032804ldr w2, [x27+2988]
    00032808subs wzr, w2, w1
    0003280cb.hi 0x3283c
    00032810str xzr, [sp+40]
    00032814adrp x1, 0
    00032818add x1, x1, 2224
    0003281cstr x1, [sp+56]
    00032820add x1, sp, 40
    00032824str x1, [sp+64]
    00032828add x0, sp, 56
    0003282cbl runtime.forEachGRace
    00032830ldur x29, [sp-8]
    00032834ldr x30, [sp], 80
    00032838ret x30
    0003283c
    0003283cloc_3283c:
    0003283cstr w1, [sp+36]
    00032840str w2, [sp+32]
    00032844bl runtime.printlock
    00032848ldr w0, [sp+32]
    0003284cstr x0, [sp+48]
    00032850ldr w0, [sp+36]
    00032854bl runtime.printuint
    00032858adrp x0, 0x67e000
    0003285cadd x0, x0, 806
    00032860orr x1, xzr, 4
    00032864bl runtime.printstring
    00032868ldr x0, [sp+48]
    0003286cbl runtime.printuint
    00032870adrp x0, 0x684000
    00032874add x0, x0, 2487
    00032878movz x1, 20
    0003287cbl runtime.printstring
    00032880bl runtime.printunlock
    00032884adrp x0, 0x686000
    00032888add x0, x0, 1099
    0003288cmovz x1, 23
    00032890bl runtime.throw
    00032894hint
    00032898
    00032898loc_32898:
    00032898mov x3, x30
    0003289cbl runtime.morestack_noctxt.abi0
    000328a0b 0x327e0
    000328a4udf 0
    000328a8udf 0
    000328acudf 0
    000327e0
    000328b0
    000328b0runtime.gcMarkRootCheck.func1: ; void runtime.gcMarkRootCheck.func1(runtime.g * gp)
    000328b0ldr x16, [x28+16]
    000328b4subs xzr, sp, x16
    000328b8b.ls 0x329ac
    000328bcstr x30, [sp-64]!
    000328c0stur x29, [sp-8]
    000328c4sub x29, sp, 8
    000328c8ldr x1, [x26+8]
    000328ccldr x2, [x1]
    000328d0adrp x27, 0x9f2000
    000328d4ldr x3, [x27+3040]
    000328d8subs xzr, x3, x2
    000328dcb.le 0x328fc
    000328e0ldrb w3, [x0+190]
    000328e4tbz w3, 0, 0x32908
    000328e8add x0, x2, 1
    000328ecstr x0, [x1]
    000328f0ldur x29, [sp-8]
    000328f4ldr x30, [sp], 64
    000328f8ret x30
    000328fc
    000328fcloc_328fc:
    000328fcldur x29, [sp-8]
    00032900ldr x30, [sp], 64
    00032904ret x30
    00032908
    00032908loc_32908:
    00032908str x0, [sp+72]
    0003290cbl runtime.readgstatus
    00032910mov w1, w0
    00032914str x1, [sp+48]
    00032918ldr x1, [sp+72]
    0003291cldr x2, [x1+160]
    00032920str x2, [sp+40]
    00032924ldrb w1, [x1+190]
    00032928strb w1, [sp+39]
    0003292cbl runtime.printlock
    00032930adrp x0, 0x67e000
    00032934add x0, x0, 327
    00032938orr x1, xzr, 3
    0003293cbl runtime.printstring
    00032940ldr x0, [sp+72]
    00032944bl runtime.printpointer
    00032948adrp x0, 0x67e000
    0003294cadd x0, x0, 2407
    00032950orr x1, xzr, 6
    00032954bl runtime.printstring
    00032958ldr x0, [sp+40]
    0003295cbl runtime.printuint
    00032960adrp x0, 0x67f000
    00032964add x0, x0, 636
    00032968orr x1, xzr, 8
    0003296cbl runtime.printstring
    00032970ldr x0, [sp+48]
    00032974bl runtime.printuint
    00032978adrp x0, 0x680000
    0003297cadd x0, x0, 3820
    00032980orr x1, xzr, 12
    00032984bl runtime.printstring
    00032988ldrb w0, [sp+39]
    0003298cbl runtime.printbool
    00032990bl runtime.printnl
    00032994bl runtime.printunlock
    00032998adrp x0, 0x682000
    0003299cadd x0, x0, 552
    000329a0orr x1, xzr, 15
    000329a4bl runtime.throw
    000329a8hint
    000329ac
    000329acloc_329ac:
    000329acstr x0, [sp+8]
    000329b0mov x3, x30
    000329b4bl runtime.morestack.abi0
    000329b8ldr x0, [sp+8]
    000329bcb 0x328b0
    000328b0
    000329c0
    000329c0runtime.markroot: ; void runtime.markroot(runtime.gcWork * gcw, uint32 i, bool flushBgCredit)
    000329c0ldr x16, [x28+16]
    000329c4sub x17, sp, 32
    000329c8subs xzr, x17, x16
    000329ccb.ls 0x32d50
    000329d0str x30, [sp-160]!
    000329d4stur x29, [sp-8]
    000329d8sub x29, sp, 8
    000329dcstr x0, [sp+168]
    000329e0str w1, [sp+176]
    000329e4strb w2, [sp+180]
    000329e8str xzr, [sp+56]
    000329ecadrp x27, 0x9f2000
    000329f0ldr w5, [x27+3048]
    000329f4subs wzr, w1, w5
    000329f8b.lo 0x32a20
    000329fcadrp x27, 0x9f2000
    00032a00ldr w5, [x27+3052]
    00032a04subs wzr, w1, w5
    00032a08b.hs 0x32a20
    00032a0cbl runtime.activeModules
    00032a10str x0, [sp+112]
    00032a14str x1, [sp+96]
    00032a18mov x2, xzr
    00032a1cb 0x32d3c
    00032a20
    00032a20loc_32a20:
    00032a20adrp x27, 0x9f2000
    00032a24ldr w5, [x27+3052]
    00032a28subs wzr, w1, w5
    00032a2cb.lo 0x32a54
    00032a30adrp x27, 0x9f2000
    00032a34ldr w5, [x27+3056]
    00032a38subs wzr, w1, w5
    00032a3cb.hs 0x32a54
    00032a40bl runtime.activeModules
    00032a44str x0, [sp+112]
    00032a48str x1, [sp+96]
    00032a4cmov x2, xzr
    00032a50b 0x32cd8
    00032a54
    00032a54loc_32a54:
    00032a54cbnz w1, 0x32a64
    00032a58adrp x27, 0xa19000
    00032a5cldr x5, [x27+1816]
    00032a60b 0x32c7c
    00032a64
    00032a64loc_32a64:
    00032a64subs wzr, w1, 1
    00032a68b.eq 0x32b54
    00032a6cadrp x27, 0x9f2000
    00032a70ldr w3, [x27+3056]
    00032a74subs wzr, w1, w3
    00032a78b.lo 0x32aa0
    00032a7cadrp x27, 0x9f2000
    00032a80ldr w4, [x27+3060]
    00032a84subs wzr, w1, w4
    00032a88b.hs 0x32aa0
    00032a8csub x2, x1, x3
    00032a90mov w1, w2
    00032a94bl runtime.markrootSpans
    00032a98mov x0, xzr
    00032a9cb 0x32b68
    00032aa0
    00032aa0loc_32aa0:
    00032aa0adrp x27, 0x9f2000
    00032aa4ldr w3, [x27+3060]
    00032aa8subs wzr, w1, w3
    00032aacb.lo 0x32ba4
    00032ab0adrp x27, 0x9f2000
    00032ab4ldr w4, [x27+3064]
    00032ab8subs wzr, w1, w4
    00032abcb.hs 0x32ba4
    00032ac0adrp x27, 0x9f2000
    00032ac4ldr x4, [x27+3080]
    00032ac8sub x3, x1, x3
    00032accmov w3, w3
    00032ad0subs xzr, x3, x4
    00032ad4b.hs 0x32b98
    00032ad8adrp x27, 0x9f2000
    00032adcldr x1, [x27+3072]
    00032ae0ldr x0, [x1+3*x3]
    00032ae4str x0, [sp+104]
    00032ae8bl runtime.readgstatus
    00032aecsubs wzr, w0, 4
    00032af0b.eq 0x32afc
    00032af4subs wzr, w0, 3
    00032af8b.ne 0x32b18
    00032afc
    00032afcloc_32afc:
    00032afcldr x0, [sp+104]
    00032b00ldr x1, [x0+176]
    00032b04cbnz x1, 0x32b1c
    00032b08adrp x27, 0x9f2000
    00032b0cldr x1, [x27+3000]
    00032b10str x1, [x0+176]
    00032b14b 0x32b1c
    00032b18
    00032b18loc_32b18:
    00032b18ldr x0, [sp+104]
    00032b1c
    00032b1cloc_32b1c:
    00032b1cadrp x1, 0
    00032b20add x1, x1, 3456
    00032b24str x1, [sp+120]
    00032b28str x0, [sp+128]
    00032b2cadd x0, sp, 56
    00032b30str x0, [sp+136]
    00032b34ldr x0, [sp+168]
    00032b38str x0, [sp+144]
    00032b3cadd x0, sp, 120
    00032b40str x0, [sp+8]
    00032b44bl runtime.systemstack.abi0
    00032b48adrp x0, 0xa1a000
    00032b4cadd x0, x0, 2664
    00032b50b 0x32b68
    00032b54
    00032b54loc_32b54:
    00032b54adrp x0, 0x6a6000
    00032b58add x0, x0, 2400
    00032b5cstr x0, [sp+8]
    00032b60bl runtime.systemstack.abi0
    00032b64mov x0, xzr
    00032b68
    00032b68loc_32b68:
    00032b68cbz x0, 0x32b88
    00032b6cldr x1, [sp+56]
    00032b70cbz x1, 0x32b88
    00032b74bl internal/runtime/atomic.(*Int64).Add
    00032b78ldrb w0, [sp+180]
    00032b7ctbz w0, 0, 0x32b88
    00032b80ldr x0, [sp+56]
    00032b84bl runtime.gcFlushBgCredit
    00032b88
    00032b88loc_32b88:
    00032b88ldr x0, [sp+56]
    00032b8cldur x29, [sp-8]
    00032b90ldr x30, [sp], 160
    00032b94ret x30
    00032b98
    00032b98loc_32b98:
    00032b98mov x0, x3
    00032b9cmov x1, x4
    00032ba0bl runtime.panicIndex
    00032ba4
    00032ba4loc_32ba4:
    00032ba4bl runtime.printlock
    00032ba8ldr w0, [sp+176]
    00032bacstr x0, [sp+88]
    00032bb0adrp x27, 0x9f2000
    00032bb4ldr w0, [x27+3060]
    00032bb8str x0, [sp+80]
    00032bbcadrp x27, 0x9f2000
    00032bc0ldr w0, [x27+3064]
    00032bc4str w0, [sp+52]
    00032bc8bl runtime.printlock
    00032bccadrp x0, 0x687000
    00032bd0add x0, x0, 6
    00032bd4orr x1, xzr, 24
    00032bd8bl runtime.printstring
    00032bdcldr x0, [sp+88]
    00032be0bl runtime.printuint
    00032be4adrp x0, 0x688000
    00032be8add x0, x0, 3362
    00032becmovz x1, 27
    00032bf0bl runtime.printstring
    00032bf4ldr x0, [sp+80]
    00032bf8bl runtime.printuint
    00032bfcadrp x0, 0x67d000
    00032c00add x0, x0, 4049
    00032c04orr x1, xzr, 2
    00032c08bl runtime.printstring
    00032c0cldr w0, [sp+52]
    00032c10bl runtime.printuint
    00032c14adrp x0, 0x67d000
    00032c18add x0, x0, 4061
    00032c1corr x1, xzr, 2
    00032c20bl runtime.printstring
    00032c24bl runtime.printunlock
    00032c28adrp x0, 0x683000
    00032c2cadd x0, x0, 4074
    00032c30movz x1, 19
    00032c34bl runtime.throw
    00032c38
    00032c38loc_32c38:
    00032c38str x5, [sp+64]
    00032c3cadd x6, x5, 16
    00032c40ldar w6, [x6]
    00032c44mov w6, w6
    00032c48add x5, x5, 24
    00032c4cadd x6, x6, x6, lsl #2
    00032c50ubfm x1, x6, 61, 60
    00032c54adrp x2, 0xa19000
    00032c58add x2, x2, 3968
    00032c5cmov x3, x0
    00032c60mov x4, xzr
    00032c64mov x0, x5
    00032c68bl runtime.scanblock
    00032c6cldr x5, [sp+64]
    00032c70ldr x5, [x5]
    00032c74ldr x0, [sp+168]
    00032c78ldrb w2, [sp+180]
    00032c7c
    00032c7cloc_32c7c:
    00032c7ccbnz x5, 0x32c38
    00032c80mov x0, xzr
    00032c84b 0x32b68
    00032c88
    00032c88loc_32c88:
    00032c88str x2, [sp+72]
    00032c8cldr x5, [x0+3*x2]
    00032c90ldr x0, [x5+224]
    00032c94ldr x6, [x5+232]
    00032c98sub x1, x6, x0
    00032c9cldr x2, [x5+560]
    00032ca0adrp x27, 0x9f2000
    00032ca4ldr w5, [x27+3052]
    00032ca8ldr w6, [sp+176]
    00032cacsub x5, x6, x5
    00032cb0mov w4, w5
    00032cb4ldr x3, [sp+168]
    00032cb8bl runtime.markrootBlock
    00032cbcldr x5, [sp+56]
    00032cc0add x5, x5, x0
    00032cc4str x5, [sp+56]
    00032cc8ldr x5, [sp+72]
    00032cccadd x2, x5, 1
    00032cd0ldr x0, [sp+112]
    00032cd4ldr x1, [sp+96]
    00032cd8
    00032cd8loc_32cd8:
    00032cd8subs xzr, x1, x2
    00032cdcb.gt 0x32c88
    00032ce0adrp x0, 0xa1a000
    00032ce4add x0, x0, 2672
    00032ce8b 0x32b68
    00032cec
    00032cecloc_32cec:
    00032cecstr x2, [sp+72]
    00032cf0ldr x5, [x0+3*x2]
    00032cf4ldr x0, [x5+208]
    00032cf8ldr x6, [x5+216]
    00032cfcsub x1, x6, x0
    00032d00ldr x2, [x5+544]
    00032d04adrp x27, 0x9f2000
    00032d08ldr w5, [x27+3048]
    00032d0cldr w6, [sp+176]
    00032d10sub x5, x6, x5
    00032d14mov w4, w5
    00032d18ldr x3, [sp+168]
    00032d1cbl runtime.markrootBlock
    00032d20ldr x5, [sp+56]
    00032d24add x5, x5, x0
    00032d28str x5, [sp+56]
    00032d2cldr x5, [sp+72]
    00032d30add x2, x5, 1
    00032d34ldr x0, [sp+112]
    00032d38ldr x1, [sp+96]
    00032d3c
    00032d3cloc_32d3c:
    00032d3csubs xzr, x1, x2
    00032d40b.gt 0x32cec
    00032d44adrp x0, 0xa1a000
    00032d48add x0, x0, 2672
    00032d4cb 0x32b68
    00032d50
    00032d50loc_32d50:
    00032d50str x0, [sp+8]
    00032d54str w1, [sp+16]
    00032d58strb w2, [sp+20]
    00032d5cmov x3, x30
    00032d60bl runtime.morestack_noctxt.abi0
    00032d64ldr x0, [sp+8]
    00032d68ldr w1, [sp+16]
    00032d6cldrb w2, [sp+20]
    00032d70b 0x329c0
    00032d74udf 0
    00032d78udf 0
    00032d7cudf 0
    000329c0
    00032d80
    00032d80runtime.markroot.func1: ; void runtime.markroot.func1(void)
    00032d80ldr x16, [x28+16]
    00032d84subs xzr, sp, x16
    00032d88b.ls 0x32eb0
    00032d8cstr x30, [sp-80]!
    00032d90stur x29, [sp-8]
    00032d94sub x29, sp, 8
    00032d98ldr x0, [x26+8]
    00032d9cstr x0, [sp+40]
    00032da0ldr x3, [x28+48]
    00032da4ldr x3, [x3+192]
    00032da8str x3, [sp+32]
    00032dacldr x4, [x26+16]
    00032db0str x4, [sp+64]
    00032db4ldr x5, [x26+24]
    00032db8str x5, [sp+48]
    00032dbcsubs xzr, x3, x0
    00032dc0b.eq 0x32dcc
    00032dc4mov x1, xzr
    00032dc8b 0x32dec
    00032dcc
    00032dccloc_32dcc:
    00032dccmov x0, x3
    00032dd0bl runtime.readgstatus
    00032dd4subs wzr, w0, 2
    00032dd8cset x1, eq
    00032ddcldr x0, [sp+40]
    00032de0ldr x3, [sp+32]
    00032de4ldr x4, [sp+64]
    00032de8ldr x5, [sp+48]
    00032dec
    00032decloc_32dec:
    00032decstrb w1, [sp+29]
    00032df0tbz w1, 0, 0x32e08
    00032df4mov x0, x3
    00032df8orr x1, xzr, 2
    00032dfcorr x2, xzr, 7
    00032e00bl runtime.casGToWaitingForSuspendG
    00032e04ldr x0, [sp+40]
    00032e08
    00032e08loc_32e08:
    00032e08bl runtime.suspendG
    00032e0ctbnz w1, 0, 0x32e84
    00032e10ldr x3, [sp+40]
    00032e14ldrb w4, [x3+190]
    00032e18tbnz w4, 0, 0x32e9c
    00032e1cstrb w2, [sp+31]
    00032e20strb w1, [sp+30]
    00032e24str x0, [sp+56]
    00032e28mov x0, x3
    00032e2cldr x1, [sp+48]
    00032e30bl runtime.scanstack
    00032e34ldr x2, [sp+64]
    00032e38ldr x3, [x2]
    00032e3cadd x3, x3, x0
    00032e40str x3, [x2]
    00032e44orr x2, xzr, 1
    00032e48ldr x3, [sp+40]
    00032e4cstrb w2, [x3+190]
    00032e50ldr x0, [sp+56]
    00032e54ldrb w1, [sp+30]
    00032e58ldrb w2, [sp+31]
    00032e5cbl runtime.resumeG
    00032e60ldrb w0, [sp+29]
    00032e64tbz w0, 0, 0x32e78
    00032e68ldr x0, [sp+32]
    00032e6corr x1, xzr, 4
    00032e70orr x2, xzr, 2
    00032e74bl runtime.casgstatus
    00032e78
    00032e78loc_32e78:
    00032e78ldur x29, [sp-8]
    00032e7cldr x30, [sp], 80
    00032e80ret x30
    00032e84
    00032e84loc_32e84:
    00032e84orr x0, xzr, 1
    00032e88ldr x1, [sp+40]
    00032e8cstrb w0, [x1+190]
    00032e90ldur x29, [sp-8]
    00032e94ldr x30, [sp], 80
    00032e98ret x30
    00032e9c
    00032e9cloc_32e9c:
    00032e9cadrp x0, 0x683000
    00032ea0add x0, x0, 149
    00032ea4movz x1, 17
    00032ea8bl runtime.throw
    00032eachint
    00032eb0
    00032eb0loc_32eb0:
    00032eb0mov x3, x30
    00032eb4bl runtime.morestack.abi0
    00032eb8b 0x32d80
    00032ebcudf 0
    00032d80