File sliver_83cb34f62800fed14e14547c39337aab8e0427fe2c6310a3fb40ce0ac36168c9.elf
Function:
Loading..
0002fbd0
0002fbd0runtime.gcMarkTermination: ; void runtime.gcMarkTermination(runtime.worldStop stw)
0002fbd0ldr x16, [x28+16]
0002fbd4sub x17, sp, 416
0002fbd8subs xzr, x17, x16
0002fbdcb.ls 0x305a4
0002fbe0sub x20, sp, 544
0002fbe4stp x29, x30, [x20-8]
0002fbe8add sp, x20, 0
0002fbecsub x29, sp, 8
0002fbf0str x3, [sp+336]
0002fbf4str x2, [sp+328]
0002fbf8str x1, [sp+320]
0002fbfcstrb w0, [sp+79]
0002fc00orr x0, xzr, 2
0002fc04bl runtime.setGCPhase
0002fc08adrp x0, 0xa1d000
0002fc0cadd x0, x0, 2600
0002fc10bl internal/runtime/atomic.(*Uint64).Load
0002fc14adrp x27, 0x9f5000
0002fc18str x0, [x27+3272]
0002fc1cbl runtime.nanotime
0002fc20str x0, [sp+192]
0002fc24bl runtime.acquirem
0002fc28movz x1, 5
0002fc2cstr x1, [x0+256]
0002fc30adrp x27, 0xa1c000
0002fc34ldr w2, [x27+3056]
0002fc38cbz w2, 0x2fc48
0002fc3cldr x3, [x0+248]
0002fc40bl runtime.gcWriteBarrier1
0002fc44str x3, [x25]
0002fc48
0002fc48loc_2fc48:
0002fc48str x0, [sp+472]
0002fc4cadrp x3, 0x681000
0002fc50add x3, x3, 1637
0002fc54str x3, [x0+248]
0002fc58orr x3, xzr, 2
0002fc5cstrb w3, [x0+290]
0002fc60ldr x0, [x0+192]
0002fc64str x0, [sp+488]
0002fc68orr x1, xzr, 2
0002fc6corr x2, xzr, 6
0002fc70bl runtime.casGToWaitingForSuspendG
0002fc74adrp x3, 4096
0002fc78add x3, x3, 1760
0002fc7cstr x3, [sp+456]
0002fc80ldr x3, [sp+192]
0002fc84str x3, [sp+464]
0002fc88add x3, sp, 456
0002fc8cstr x3, [sp+8]
0002fc90bl runtime.systemstack.abi0
0002fc94strb wzr, [sp+53]
0002fc98adrp x3, 4096
0002fc9cadd x3, x3, 1568
0002fca0str x3, [sp+520]
0002fca4add x3, sp, 53
0002fca8str x3, [sp+528]
0002fcacadd x3, sp, 520
0002fcb0str x3, [sp+8]
0002fcb4bl runtime.systemstack.abi0
0002fcb8ldr x3, [sp+472]
0002fcbcstrb wzr, [x3+290]
0002fcc0ldr x0, [sp+488]
0002fcc4orr x1, xzr, 4
0002fcc8orr x2, xzr, 2
0002fcccbl runtime.casgstatus
0002fcd0bl runtime.traceAcquire
0002fcd4str x0, [sp+512]
0002fcd8str x1, [sp+312]
0002fcdcbl runtime.traceLocker.ok
0002fce0tbz w0, 0, 0x2fcfc
0002fce4ldr x0, [sp+512]
0002fce8ldr x1, [sp+312]
0002fcecbl runtime.traceLocker.GCDone
0002fcf0ldr x0, [sp+512]
0002fcf4ldr x1, [sp+312]
0002fcf8bl runtime.traceRelease
0002fcfc
0002fcfcloc_2fcfc:
0002fcfcldr x2, [sp+472]
0002fd00str xzr, [x2+256]
0002fd04adrp x27, 0xa1c000
0002fd08ldr w3, [x27+3056]
0002fd0ccbz w3, 0x2fd1c
0002fd10ldr x3, [x2+248]
0002fd14bl runtime.gcWriteBarrier1
0002fd18str x3, [x25]
0002fd1c
0002fd1cloc_2fd1c:
0002fd1cstr xzr, [x2+248]
0002fd20adrp x27, 0xa1c000
0002fd24ldr w3, [x27+1600]
0002fd28cbnz w3, 0x30590
0002fd2cadrp x0, 0xa1d000
0002fd30add x0, x0, 2768
0002fd34bl runtime.(*sysMemStat).load
0002fd38adrp x27, 0xa23000
0002fd3cstr x0, [x27+592]
0002fd40adrp x1, 0x6a9000
0002fd44add x1, x1, 1808
0002fd48str x1, [sp+8]
0002fd4cbl runtime.systemstack.abi0
0002fd50bl runtime.nanotime
0002fd54str x0, [sp+216]
0002fd58bl time.now
0002fd5csbfm x1, x1, 0, 31
0002fd60movz x2, 51712
0002fd64movk x2, 0x3b9a0000
0002fd68madd x1, x0, x2, x1
0002fd6cadrp x27, 0x9f5000
0002fd70ldr x2, [x27+3256]
0002fd74ldr x3, [sp+216]
0002fd78ldr x4, [sp+320]
0002fd7csub x4, x3, x4
0002fd80add x2, x4, x2
0002fd84adrp x27, 0x9f5000
0002fd88str x2, [x27+3256]
0002fd8cadrp x27, 0x9f5000
0002fd90str x3, [x27+3248]
0002fd94adrp x2, 0xa22000
0002fd98add x2, x2, 552
0002fd9cstlr x1, [x2]
0002fda0adrp x2, 0xa23000
0002fda4add x2, x2, 584
0002fda8stlr x3, [x2]
0002fdacadrp x27, 0xa23000
0002fdb0ldr w2, [x27+568]
0002fdb4and x2, x2, 255
0002fdb8adrp x27, 0x9f5000
0002fdbcldr x4, [x27+3256]
0002fdc0adrp x5, 0xa22000
0002fdc4add x5, x5, 568
0002fdc8str x4, [x5+3*x2]
0002fdccadrp x27, 0xa23000
0002fdd0ldr w2, [x27+568]
0002fdd4and x2, x2, 255
0002fdd8adrp x4, 0xa22000
0002fddcadd x4, x4, 2616
0002fde0str x1, [x4+3*x2]
0002fde4adrp x27, 0xa22000
0002fde8ldr x1, [x27+560]
0002fdecadrp x27, 0x9f5000
0002fdf0ldr x2, [x27+3256]
0002fdf4add x1, x1, x2
0002fdf8adrp x27, 0xa22000
0002fdfcstr x1, [x27+560]
0002fe00ldr x1, [sp+328]
0002fe04sub x1, x3, x1
0002fe08adrp x27, 0x9f5000
0002fe0cldrsw x2, [x27+3216]
0002fe10adrp x0, 0x9f5000
0002fe14add x0, x0, 3288
0002fe18bl runtime.(*cpuStats).accumulateGCPauseTime
0002fe1cadrp x0, 0x9f5000
0002fe20add x0, x0, 3288
0002fe24ldr x1, [sp+216]
0002fe28orr x2, xzr, 1
0002fe2cbl runtime.(*cpuStats).accumulate
0002fe30adrp x27, 0x9f5000
0002fe34ldr x1, [x27+3320]
0002fe38adrp x27, 0x9f5000
0002fe3cldr x2, [x27+3304]
0002fe40sub x1, x1, x2
0002fe44scvtf d0, x1
0002fe48adrp x27, 0x9f5000
0002fe4cldr x1, [x27+3368]
0002fe50scvtf d1, x1
0002fe54fdiv d0, d0, d1
0002fe58adrp x27, 0xa23000
0002fe5cstr d0, [x27+576]
0002fe60adrp x0, 0xa1c000
0002fe64add x0, x0, 3504
0002fe68mov x1, xzr
0002fe6cbl internal/runtime/atomic.(*Int64).Store
0002fe70adrp x0, 0xa1c000
0002fe74add x0, x0, 3512
0002fe78mov x1, xzr
0002fe7cbl internal/runtime/atomic.(*Int64).Store
0002fe80adrp x0, 0x9f8000
0002fe84add x0, x0, 1744
0002fe88mov x1, xzr
0002fe8cbl internal/runtime/atomic.(*Int64).Store
0002fe90adrp x27, 0x9f5000
0002fe94ldrb w1, [x27+3120]
0002fe98tbz w1, 0, 0x2feb0
0002fe9cadrp x27, 0xa23000
0002fea0ldr w1, [x27+572]
0002fea4add x1, x1, 1
0002fea8adrp x27, 0xa23000
0002feacstr w1, [x27+572]
0002feb0
0002feb0loc_2feb0:
0002feb0adrp x0, 0x9f5000
0002feb4add x0, x0, 3160
0002feb8bl runtime.lock
0002febcadrp x27, 0xa23000
0002fec0ldr w1, [x27+568]
0002fec4add x1, x1, 1
0002fec8adrp x27, 0xa23000
0002feccstr w1, [x27+568]
0002fed0adrp x0, 0x9f5000
0002fed4add x0, x0, 3168
0002fed8bl runtime.injectglist
0002fedcadrp x0, 0x9f5000
0002fee0add x0, x0, 3160
0002fee4bl runtime.unlock
0002fee8adrp x0, 0xa13000
0002feecadd x0, x0, 2304
0002fef0bl runtime.(*scavengeIndex).nextGen
0002fef4adrp x0, 0xa1c000
0002fef8add x0, x0, 4032
0002fefcldr x1, [sp+216]
0002ff00bl runtime.(*gcCPULimiterState).finishGCTransition
0002ff04bl runtime.mProf_NextCycle
0002ff08adrp x0, 0x9f4000
0002ff0cadd x0, x0, 948
0002ff10bl runtime.(*activeSweep).begin
0002ff14str w0, [sp+180]
0002ff18strb w1, [sp+78]
0002ff1cldrb w2, [sp+53]
0002ff20tbnz w2, 0, 0x2ff2c
0002ff24tbz w1, 0, 0x30580
0002ff28tbz w2, 0, 0x2ff30
0002ff2c
0002ff2cloc_2ff2c:
0002ff2ctbnz w1, 0, 0x30570
0002ff30
0002ff30loc_2ff30:
0002ff30stp xzr, xzr, [sp+408]
0002ff34stp xzr, xzr, [sp+424]
0002ff38stp xzr, xzr, [sp+440]
0002ff3cadrp x0, 4096
0002ff40add x0, x0, 1488
0002ff44str x0, [sp+408]
0002ff48ldr x0, [sp+216]
0002ff4cstr x0, [sp+416]
0002ff50ldrb w0, [sp+79]
0002ff54strb w0, [sp+424]
0002ff58ldr x0, [sp+320]
0002ff5cstr x0, [sp+432]
0002ff60ldr x0, [sp+328]
0002ff64str x0, [sp+440]
0002ff68ldr x0, [sp+336]
0002ff6cstr x0, [sp+448]
0002ff70add x0, sp, 408
0002ff74str x0, [sp+8]
0002ff78bl runtime.systemstack.abi0
0002ff7cbl runtime.mProf_Flush
0002ff80bl runtime.prepareFreeWorkbufs
0002ff84adrp x0, 0x6a9000
0002ff88add x0, x0, 1792
0002ff8cstr x0, [sp+8]
0002ff90bl runtime.systemstack.abi0
0002ff94movz x0, 33
0002ff98adrp x1, 0x6a9000
0002ff9cadd x1, x1, 1832
0002ffa0bl runtime.forEachP
0002ffa4ldrb w0, [sp+78]
0002ffa8tbz w0, 0, 0x2ffc0
0002ffacldr w1, [sp+180]
0002ffb0mov x2, x0
0002ffb4adrp x0, 0x9f4000
0002ffb8add x0, x0, 948
0002ffbcbl runtime.(*activeSweep).end
0002ffc0
0002ffc0loc_2ffc0:
0002ffc0adrp x27, 0xa1d000
0002ffc4ldrsw x1, [x27+260]
0002ffc8subs wzr, w1, 0
0002ffccb.le 0x30488
0002ffd0adrp x27, 0xa23000
0002ffd4ldr d0, [x27+576]
0002ffd8str d0, [sp+304]
0002ffdcadd x27, sp, 54
0002ffe0stp xzr, xzr, [x27]
0002ffe4stur xzr, [sp+70]
0002ffe8bl runtime.printlock
0002ffecldr d0, [sp+304]
0002fff0adrp x27, 0x6e1000
0002fff4ldr d1, [x27+3208]
0002fff8fmul d0, d0, d1
0002fffcfcvtzs x0, d0
00030000str x0, [sp+184]
00030004adrp x27, 0x9f4000
00030008ldr x0, [x27+3224]
0003000cadrp x27, 0xa1b000
00030010ldr x1, [x27+1944]
00030014sub x0, x0, x1
00030018movz x1, 27062
0003001cmovk x1, 0xaf6c0000
00030020movk x1, 0xbd0500000000
00030024movk x1, 0x8637000000000000
00030028umulh x0, x1, x0
0003002cubfm x3, x0, 19, 63
00030030add x0, sp, 54
00030034orr x1, xzr, 24
00030038mov x2, x1
0003003corr x4, xzr, 3
00030040bl runtime.itoaDiv
00030044adrp x27, 0xa22000
00030048ldr w2, [x27+568]
0003004cstr w2, [sp+180]
00030050mov x2, x1
00030054mov x1, x0
00030058add x0, sp, 144
0003005cbl runtime.slicebytetostring
00030060str x0, [sp+504]
00030064str x1, [sp+296]
00030068bl runtime.printlock
0003006cadrp x0, 0x680000
00030070add x0, x0, 321
00030074orr x1, xzr, 3
00030078bl runtime.printstring
0003007cldr w0, [sp+180]
00030080bl runtime.printuint
00030084adrp x0, 0x67f000
00030088add x0, x0, 4063
0003008corr x1, xzr, 2
00030090bl runtime.printstring
00030094ldr x0, [sp+504]
00030098ldr x1, [sp+296]
0003009cbl runtime.printstring
000300a0adrp x0, 0x67f000
000300a4add x0, x0, 4065
000300a8orr x1, xzr, 2
000300acbl runtime.printstring
000300b0ldr x0, [sp+184]
000300b4bl runtime.printint
000300b8adrp x0, 0x680000
000300bcadd x0, x0, 324
000300c0orr x1, xzr, 3
000300c4bl runtime.printstring
000300c8bl runtime.printunlock
000300ccadrp x27, 0x9f4000
000300d0ldr x0, [x27+3224]
000300d4stp xzr, xzr, [sp+384]
000300d8str xzr, [sp+400]
000300dcadrp x27, 0x9f4000
000300e0ldr x1, [x27+3232]
000300e4str x1, [sp+384]
000300e8adrp x27, 0x9f4000
000300ecldr x1, [x27+3240]
000300f0str x1, [sp+392]
000300f4adrp x27, 0x9f4000
000300f8ldr x1, [x27+3248]
000300fcstr x1, [sp+400]
00030100mov x1, xzr
00030104b 0x30154
00030108
00030108loc_30108:
00030108sub x3, x5, x0
0003010cadd x0, sp, 54
00030110orr x1, xzr, 24
00030114mov x2, x1
00030118bl runtime.fmtNSAsMS
0003011cmov x2, x1
00030120mov x1, x0
00030124add x0, sp, 112
00030128bl runtime.slicebytetostring
0003012cstr x0, [sp+504]
00030130str x1, [sp+296]
00030134bl runtime.printlock
00030138ldr x0, [sp+504]
0003013cldr x1, [sp+296]
00030140bl runtime.printstring
00030144bl runtime.printunlock
00030148ldr x4, [sp+232]
0003014cadd x1, x4, 1
00030150ldr x0, [sp+200]
00030154
00030154loc_30154:
00030154subs xzr, x1, 3
00030158b.ge 0x30198
0003015cstr x1, [sp+232]
00030160add x4, sp, 384
00030164ldr x5, [x4+3*x1]
00030168str x5, [sp+200]
0003016ccbz x1, 0x30108
00030170str x0, [sp+336]
00030174bl runtime.printlock
00030178adrp x0, 0x6df000
0003017cadd x0, x0, 696
00030180orr x1, xzr, 1
00030184bl runtime.printstring
00030188bl runtime.printunlock
0003018cldr x0, [sp+336]
00030190ldr x5, [sp+200]
00030194b 0x30108
00030198
00030198loc_30198:
00030198bl runtime.printlock
0003019cadrp x0, 0x682000
000301a0add x0, x0, 1966
000301a4movz x1, 11
000301a8bl runtime.printstring
000301acbl runtime.printunlock
000301b0adrp x0, 0xa1c000
000301b4add x0, x0, 2688
000301b8bl internal/runtime/atomic.(*Int64).Load
000301bcstr x0, [sp+336]
000301c0adrp x0, 0xa1c000
000301c4add x0, x0, 2696
000301c8bl internal/runtime/atomic.(*Int64).Load
000301ccstr x0, [sp+328]
000301d0adrp x0, 0xa1c000
000301d4add x0, x0, 2704
000301d8bl internal/runtime/atomic.(*Int64).Load
000301dcldr x1, [sp+328]
000301e0add x0, x1, x0
000301e4str x0, [sp+328]
000301e8adrp x0, 0xa1c000
000301ecadd x0, x0, 2712
000301f0bl internal/runtime/atomic.(*Int64).Load
000301f4stp xzr, xzr, [sp+344]
000301f8stp xzr, xzr, [sp+360]
000301fcstr xzr, [sp+376]
00030200adrp x27, 0x9f4000
00030204ldrsw x1, [x27+3212]
00030208adrp x27, 0x9f4000
0003020cldr x2, [x27+3232]
00030210adrp x27, 0x9f4000
00030214ldr x3, [x27+3224]
00030218sub x2, x2, x3
0003021cmadd x1, x2, x1, xzr
00030220str x1, [sp+344]
00030224ldr x1, [sp+336]
00030228str x1, [sp+352]
0003022cldr x1, [sp+328]
00030230str x1, [sp+360]
00030234str x0, [sp+368]
00030238adrp x27, 0x9f4000
0003023cldrsw x0, [x27+3212]
00030240adrp x27, 0x9f4000
00030244ldr x1, [x27+3248]
00030248adrp x27, 0x9f4000
0003024cldr x2, [x27+3240]
00030250sub x1, x1, x2
00030254madd x0, x1, x0, xzr
00030258str x0, [sp+376]
0003025cmov x0, xzr
00030260b 0x302a8
00030264
00030264loc_30264:
00030264add x0, sp, 54
00030268orr x1, xzr, 24
0003026cmov x2, x1
00030270bl runtime.fmtNSAsMS
00030274mov x2, x1
00030278mov x1, x0
0003027cadd x0, sp, 80
00030280bl runtime.slicebytetostring
00030284str x0, [sp+504]
00030288str x1, [sp+296]
0003028cbl runtime.printlock
00030290ldr x0, [sp+504]
00030294ldr x1, [sp+296]
00030298bl runtime.printstring
0003029cbl runtime.printunlock
000302a0ldr x4, [sp+224]
000302a4add x0, x4, 1
000302a8
000302a8loc_302a8:
000302a8subs xzr, x0, 5
000302acb.ge 0x3031c
000302b0str x0, [sp+224]
000302b4add x4, sp, 344
000302b8ldr x3, [x4+3*x0]
000302bcstr x3, [sp+208]
000302c0subs xzr, x0, 2
000302c4b.eq 0x302d0
000302c8subs xzr, x0, 3
000302ccb.ne 0x302f0
000302d0
000302d0loc_302d0:
000302d0bl runtime.printlock
000302d4adrp x0, 0x67f000
000302d8add x0, x0, 4032
000302dcorr x1, xzr, 1
000302e0bl runtime.printstring
000302e4bl runtime.printunlock
000302e8ldr x3, [sp+208]
000302ecb 0x30264
000302f0
000302f0loc_302f0:
000302f0cbz x0, 0x30264
000302f4bl runtime.printlock
000302f8adrp x0, 0x6df000
000302fcadd x0, x0, 696
00030300orr x1, xzr, 1
00030304bl runtime.printstring
00030308bl runtime.printunlock
0003030cldr x0, [sp+224]
00030310ldr x3, [sp+208]
00030314add x4, sp, 344
00030318b 0x30264
0003031c
0003031cloc_3031c:
0003031cadrp x0, 0xa1c000
00030320add x0, x0, 2624
00030324bl internal/runtime/atomic.(*Uint64).Load
00030328ubfm x1, x0, 20, 63
0003032cstr x1, [sp+288]
00030330adrp x0, 0xa1c000
00030334add x0, x0, 2640
00030338bl internal/runtime/atomic.(*Uint64).Load
0003033cadrp x27, 0x9f4000
00030340ldr x1, [x27+3264]
00030344ubfm x1, x1, 20, 63
00030348str x1, [sp+280]
0003034cadrp x27, 0x9f4000
00030350ldr x1, [x27+3272]
00030354ubfm x1, x1, 20, 63
00030358str x1, [sp+272]
0003035cadrp x27, 0x9f4000
00030360ldr x1, [x27+3280]
00030364ubfm x1, x1, 20, 63
00030368str x1, [sp+264]
0003036cadrp x27, 0xa1c000
00030370ldr x1, [x27+2592]
00030374ubfm x1, x1, 20, 63
00030378str x1, [sp+256]
0003037cubfm x1, x0, 20, 63
00030380str x1, [sp+248]
00030384adrp x27, 0x9f4000
00030388ldrsw x1, [x27+3216]
0003038cstr w1, [sp+176]
00030390bl runtime.printlock
00030394adrp x0, 0x681000
00030398add x0, x0, 2794
0003039cmovz x1, 9
000303a0bl runtime.printstring
000303a4ldr x0, [sp+280]
000303a8bl runtime.printuint
000303acadrp x0, 0x67f000
000303b0add x0, x0, 4067
000303b4orr x1, xzr, 2
000303b8bl runtime.printstring
000303bcldr x0, [sp+272]
000303c0bl runtime.printuint
000303c4adrp x0, 0x67f000
000303c8add x0, x0, 4067
000303ccorr x1, xzr, 2
000303d0bl runtime.printstring
000303d4ldr x0, [sp+264]
000303d8bl runtime.printuint
000303dcadrp x0, 0x680000
000303e0add x0, x0, 1642
000303e4movz x1, 5
000303e8bl runtime.printstring
000303ecldr x0, [sp+256]
000303f0bl runtime.printuint
000303f4adrp x0, 0x682000
000303f8add x0, x0, 184
000303fcmovz x1, 10
00030400bl runtime.printstring
00030404ldr x0, [sp+288]
00030408bl runtime.printuint
0003040cadrp x0, 0x682000
00030410add x0, x0, 3748
00030414orr x1, xzr, 12
00030418bl runtime.printstring
0003041cldr x0, [sp+248]
00030420bl runtime.printuint
00030424adrp x0, 0x683000
00030428add x0, x0, 1459
0003042cmovz x1, 13
00030430bl runtime.printstring
00030434ldrsw x1, [sp+176]
00030438mov x0, x1
0003043cbl runtime.printint
00030440adrp x0, 0x67f000
00030444add x0, x0, 4069
00030448orr x1, xzr, 2
0003044cbl runtime.printstring
00030450bl runtime.printunlock
00030454adrp x27, 0x9f4000
00030458ldrb w1, [x27+3120]
0003045ctbz w1, 0, 0x30478
00030460bl runtime.printlock
00030464adrp x0, 0x681000
00030468add x0, x0, 2803
0003046cmovz x1, 9
00030470bl runtime.printstring
00030474bl runtime.printunlock
00030478
00030478loc_30478:
00030478bl runtime.printlock
0003047cbl runtime.printnl
00030480bl runtime.printunlock
00030484bl runtime.printunlock
00030488
00030488loc_30488:
00030488adrp x0, 0x9f3000
0003048cadd x0, x0, 3552
00030490bl runtime.lock
00030494adrp x27, 0x9f3000
00030498ldr x1, [x27+3584]
0003049cstr x1, [sp+480]
000304a0adrp x27, 0x9f3000
000304a4ldr x2, [x27+3592]
000304a8str x2, [sp+240]
000304acadrp x27, 0x9f3000
000304b0add x27, x27, 3592
000304b4stp xzr, xzr, [x27]
000304b8adrp x27, 0xa1b000
000304bcldr w3, [x27+3056]
000304c0cbz w3, 0x304d4
000304c4adrp x27, 0x9f3000
000304c8ldr x3, [x27+3584]
000304ccbl runtime.gcWriteBarrier1
000304d0str x3, [x25]
000304d4
000304d4loc_304d4:
000304d4adrp x27, 0x9f3000
000304d8str xzr, [x27+3584]
000304dcadrp x0, 0x9f3000
000304e0add x0, x0, 3552
000304e4bl runtime.unlock
000304e8ldr x1, [sp+480]
000304ecldr x0, [sp+240]
000304f0b 0x30514
000304f4
000304f4loc_304f4:
000304f4str x0, [sp+296]
000304f8str x1, [sp+496]
000304fcldr x0, [x1]
00030500bl runtime.(*mspan).setUserArenaChunkToFault
00030504ldr x1, [sp+496]
00030508add x1, x1, 16
0003050cldr x2, [sp+296]
00030510sub x0, x2, 1
00030514
00030514loc_30514:
00030514subs xzr, x0, 0
00030518b.gt 0x304f4
0003051cadrp x0, 0xa1c000
00030520add x0, x0, 2496
00030524bl runtime.(*gcControllerState).heapGoal
00030528movz x1, 0x40000000
0003052csubs xzr, x0, x1
00030530b.ls 0x30544
00030534adrp x0, 0x6a8000
00030538add x0, x0, 1840
0003053cstr x0, [sp+8]
00030540bl runtime.systemstack.abi0
00030544
00030544loc_30544:
00030544adrp x0, 0x990000
00030548add x0, x0, 1416
0003054cbl runtime.semrelease
00030550adrp x0, 0x990000
00030554add x0, x0, 1420
00030558bl runtime.semrelease
0003055cldr x0, [sp+472]
00030560bl runtime.releasem
00030564ldp x29, x30, [sp-8]
00030568add sp, sp, 544
0003056cret x30
00030570
00030570loc_30570:
00030570adrp x0, 0x69a000
00030574add x0, x0, 635
00030578movz x1, 53
0003057cbl runtime.throw
00030580
00030580loc_30580:
00030580adrp x0, 0x68a000
00030584add x0, x0, 3308
00030588movz x1, 27
0003058cbl runtime.throw
00030590
00030590loc_30590:
00030590adrp x0, 0x68c000
00030594add x0, x0, 772
00030598movz x1, 29
0003059cbl runtime.throw
000305a0hint
000305a4
000305a4loc_305a4:
000305a4strb w0, [sp+8]
000305a8stp x1, x2, [sp+16]
000305acstr x3, [sp+32]
000305b0mov x3, x30
000305b4bl runtime.morestack_noctxt.abi0
000305b8ldrb w0, [sp+8]
000305bcldp x1, x2, [sp+16]
000305c0ldr x3, [sp+32]
000305c4b 0x2fbd0
000305c8udf 0
000305ccudf 0
0002fbd0
0002fbd0runtime.gcMarkTermination: ; void runtime.gcMarkTermination(runtime.worldStop stw)
0002fbd0ldr x16, [x28+16]
0002fbd4sub x17, sp, 416
0002fbd8subs xzr, x17, x16
0002fbdcb.ls 0x305a4
0002fbe0sub x20, sp, 544
0002fbe4stp x29, x30, [x20-8]
0002fbe8add sp, x20, 0
0002fbecsub x29, sp, 8
0002fbf0str x3, [sp+336]
0002fbf4str x2, [sp+328]
0002fbf8str x1, [sp+320]
0002fbfcstrb w0, [sp+79]
0002fc00orr x0, xzr, 2
0002fc04bl runtime.setGCPhase
0002fc08adrp x0, 0xa1d000
0002fc0cadd x0, x0, 2600
0002fc10bl internal/runtime/atomic.(*Uint64).Load
0002fc14adrp x27, 0x9f5000
0002fc18str x0, [x27+3272]
0002fc1cbl runtime.nanotime
0002fc20str x0, [sp+192]
0002fc24bl runtime.acquirem
0002fc28movz x1, 5
0002fc2cstr x1, [x0+256]
0002fc30adrp x27, 0xa1c000
0002fc34ldr w2, [x27+3056]
0002fc38cbz w2, 0x2fc48
0002fc3cldr x3, [x0+248]
0002fc40bl runtime.gcWriteBarrier1
0002fc44str x3, [x25]
0002fc48
0002fc48loc_2fc48:
0002fc48str x0, [sp+472]
0002fc4cadrp x3, 0x681000
0002fc50add x3, x3, 1637
0002fc54str x3, [x0+248]
0002fc58orr x3, xzr, 2
0002fc5cstrb w3, [x0+290]
0002fc60ldr x0, [x0+192]
0002fc64str x0, [sp+488]
0002fc68orr x1, xzr, 2
0002fc6corr x2, xzr, 6
0002fc70bl runtime.casGToWaitingForSuspendG
0002fc74adrp x3, 4096
0002fc78add x3, x3, 1760
0002fc7cstr x3, [sp+456]
0002fc80ldr x3, [sp+192]
0002fc84str x3, [sp+464]
0002fc88add x3, sp, 456
0002fc8cstr x3, [sp+8]
0002fc90bl runtime.systemstack.abi0
0002fc94strb wzr, [sp+53]
0002fc98adrp x3, 4096
0002fc9cadd x3, x3, 1568
0002fca0str x3, [sp+520]
0002fca4add x3, sp, 53
0002fca8str x3, [sp+528]
0002fcacadd x3, sp, 520
0002fcb0str x3, [sp+8]
0002fcb4bl runtime.systemstack.abi0
0002fcb8ldr x3, [sp+472]
0002fcbcstrb wzr, [x3+290]
0002fcc0ldr x0, [sp+488]
0002fcc4orr x1, xzr, 4
0002fcc8orr x2, xzr, 2
0002fcccbl runtime.casgstatus
0002fcd0bl runtime.traceAcquire
0002fcd4str x0, [sp+512]
0002fcd8str x1, [sp+312]
0002fcdcbl runtime.traceLocker.ok
0002fce0tbz w0, 0, 0x2fcfc
0002fce4ldr x0, [sp+512]
0002fce8ldr x1, [sp+312]
0002fcecbl runtime.traceLocker.GCDone
0002fcf0ldr x0, [sp+512]
0002fcf4ldr x1, [sp+312]
0002fcf8bl runtime.traceRelease
0002fcfc
0002fcfcloc_2fcfc:
0002fcfcldr x2, [sp+472]
0002fd00str xzr, [x2+256]
0002fd04adrp x27, 0xa1c000
0002fd08ldr w3, [x27+3056]
0002fd0ccbz w3, 0x2fd1c
0002fd10ldr x3, [x2+248]
0002fd14bl runtime.gcWriteBarrier1
0002fd18str x3, [x25]
0002fd1c
0002fd1cloc_2fd1c:
0002fd1cstr xzr, [x2+248]
0002fd20adrp x27, 0xa1c000
0002fd24ldr w3, [x27+1600]
0002fd28cbnz w3, 0x30590
0002fd2cadrp x0, 0xa1d000
0002fd30add x0, x0, 2768
0002fd34bl runtime.(*sysMemStat).load
0002fd38adrp x27, 0xa23000
0002fd3cstr x0, [x27+592]
0002fd40adrp x1, 0x6a9000
0002fd44add x1, x1, 1808
0002fd48str x1, [sp+8]
0002fd4cbl runtime.systemstack.abi0
0002fd50bl runtime.nanotime
0002fd54str x0, [sp+216]
0002fd58bl time.now
0002fd5csbfm x1, x1, 0, 31
0002fd60movz x2, 51712
0002fd64movk x2, 0x3b9a0000
0002fd68madd x1, x0, x2, x1
0002fd6cadrp x27, 0x9f5000
0002fd70ldr x2, [x27+3256]
0002fd74ldr x3, [sp+216]
0002fd78ldr x4, [sp+320]
0002fd7csub x4, x3, x4
0002fd80add x2, x4, x2
0002fd84adrp x27, 0x9f5000
0002fd88str x2, [x27+3256]
0002fd8cadrp x27, 0x9f5000
0002fd90str x3, [x27+3248]
0002fd94adrp x2, 0xa22000
0002fd98add x2, x2, 552
0002fd9cstlr x1, [x2]
0002fda0adrp x2, 0xa23000
0002fda4add x2, x2, 584
0002fda8stlr x3, [x2]
0002fdacadrp x27, 0xa23000
0002fdb0ldr w2, [x27+568]
0002fdb4and x2, x2, 255
0002fdb8adrp x27, 0x9f5000
0002fdbcldr x4, [x27+3256]
0002fdc0adrp x5, 0xa22000
0002fdc4add x5, x5, 568
0002fdc8str x4, [x5+3*x2]
0002fdccadrp x27, 0xa23000
0002fdd0ldr w2, [x27+568]
0002fdd4and x2, x2, 255
0002fdd8adrp x4, 0xa22000
0002fddcadd x4, x4, 2616
0002fde0str x1, [x4+3*x2]
0002fde4adrp x27, 0xa22000
0002fde8ldr x1, [x27+560]
0002fdecadrp x27, 0x9f5000
0002fdf0ldr x2, [x27+3256]
0002fdf4add x1, x1, x2
0002fdf8adrp x27, 0xa22000
0002fdfcstr x1, [x27+560]
0002fe00ldr x1, [sp+328]
0002fe04sub x1, x3, x1
0002fe08adrp x27, 0x9f5000
0002fe0cldrsw x2, [x27+3216]
0002fe10adrp x0, 0x9f5000
0002fe14add x0, x0, 3288
0002fe18bl runtime.(*cpuStats).accumulateGCPauseTime
0002fe1cadrp x0, 0x9f5000
0002fe20add x0, x0, 3288
0002fe24ldr x1, [sp+216]
0002fe28orr x2, xzr, 1
0002fe2cbl runtime.(*cpuStats).accumulate
0002fe30adrp x27, 0x9f5000
0002fe34ldr x1, [x27+3320]
0002fe38adrp x27, 0x9f5000
0002fe3cldr x2, [x27+3304]
0002fe40sub x1, x1, x2
0002fe44scvtf d0, x1
0002fe48adrp x27, 0x9f5000
0002fe4cldr x1, [x27+3368]
0002fe50scvtf d1, x1
0002fe54fdiv d0, d0, d1
0002fe58adrp x27, 0xa23000
0002fe5cstr d0, [x27+576]
0002fe60adrp x0, 0xa1c000
0002fe64add x0, x0, 3504
0002fe68mov x1, xzr
0002fe6cbl internal/runtime/atomic.(*Int64).Store
0002fe70adrp x0, 0xa1c000
0002fe74add x0, x0, 3512
0002fe78mov x1, xzr
0002fe7cbl internal/runtime/atomic.(*Int64).Store
0002fe80adrp x0, 0x9f8000
0002fe84add x0, x0, 1744
0002fe88mov x1, xzr
0002fe8cbl internal/runtime/atomic.(*Int64).Store
0002fe90adrp x27, 0x9f5000
0002fe94ldrb w1, [x27+3120]
0002fe98tbz w1, 0, 0x2feb0
0002fe9cadrp x27, 0xa23000
0002fea0ldr w1, [x27+572]
0002fea4add x1, x1, 1
0002fea8adrp x27, 0xa23000
0002feacstr w1, [x27+572]
0002feb0
0002feb0loc_2feb0:
0002feb0adrp x0, 0x9f5000
0002feb4add x0, x0, 3160
0002feb8bl runtime.lock
0002febcadrp x27, 0xa23000
0002fec0ldr w1, [x27+568]
0002fec4add x1, x1, 1
0002fec8adrp x27, 0xa23000
0002feccstr w1, [x27+568]
0002fed0adrp x0, 0x9f5000
0002fed4add x0, x0, 3168
0002fed8bl runtime.injectglist
0002fedcadrp x0, 0x9f5000
0002fee0add x0, x0, 3160
0002fee4bl runtime.unlock
0002fee8adrp x0, 0xa13000
0002feecadd x0, x0, 2304
0002fef0bl runtime.(*scavengeIndex).nextGen
0002fef4adrp x0, 0xa1c000
0002fef8add x0, x0, 4032
0002fefcldr x1, [sp+216]
0002ff00bl runtime.(*gcCPULimiterState).finishGCTransition
0002ff04bl runtime.mProf_NextCycle
0002ff08adrp x0, 0x9f4000
0002ff0cadd x0, x0, 948
0002ff10bl runtime.(*activeSweep).begin
0002ff14str w0, [sp+180]
0002ff18strb w1, [sp+78]
0002ff1cldrb w2, [sp+53]
0002ff20tbnz w2, 0, 0x2ff2c
0002ff24tbz w1, 0, 0x30580
0002ff28tbz w2, 0, 0x2ff30
0002ff2c
0002ff2cloc_2ff2c:
0002ff2ctbnz w1, 0, 0x30570
0002ff30
0002ff30loc_2ff30:
0002ff30stp xzr, xzr, [sp+408]
0002ff34stp xzr, xzr, [sp+424]
0002ff38stp xzr, xzr, [sp+440]
0002ff3cadrp x0, 4096
0002ff40add x0, x0, 1488
0002ff44str x0, [sp+408]
0002ff48ldr x0, [sp+216]
0002ff4cstr x0, [sp+416]
0002ff50ldrb w0, [sp+79]
0002ff54strb w0, [sp+424]
0002ff58ldr x0, [sp+320]
0002ff5cstr x0, [sp+432]
0002ff60ldr x0, [sp+328]
0002ff64str x0, [sp+440]
0002ff68ldr x0, [sp+336]
0002ff6cstr x0, [sp+448]
0002ff70add x0, sp, 408
0002ff74str x0, [sp+8]
0002ff78bl runtime.systemstack.abi0
0002ff7cbl runtime.mProf_Flush
0002ff80bl runtime.prepareFreeWorkbufs
0002ff84adrp x0, 0x6a9000
0002ff88add x0, x0, 1792
0002ff8cstr x0, [sp+8]
0002ff90bl runtime.systemstack.abi0
0002ff94movz x0, 33
0002ff98adrp x1, 0x6a9000
0002ff9cadd x1, x1, 1832
0002ffa0bl runtime.forEachP
0002ffa4ldrb w0, [sp+78]
0002ffa8tbz w0, 0, 0x2ffc0
0002ffacldr w1, [sp+180]
0002ffb0mov x2, x0
0002ffb4adrp x0, 0x9f4000
0002ffb8add x0, x0, 948
0002ffbcbl runtime.(*activeSweep).end
0002ffc0
0002ffc0loc_2ffc0:
0002ffc0adrp x27, 0xa1d000
0002ffc4ldrsw x1, [x27+260]
0002ffc8subs wzr, w1, 0
0002ffccb.le 0x30488
0002ffd0adrp x27, 0xa23000
0002ffd4ldr d0, [x27+576]
0002ffd8str d0, [sp+304]
0002ffdcadd x27, sp, 54
0002ffe0stp xzr, xzr, [x27]
0002ffe4stur xzr, [sp+70]
0002ffe8bl runtime.printlock
0002ffecldr d0, [sp+304]
0002fff0adrp x27, 0x6e1000
0002fff4ldr d1, [x27+3208]
0002fff8fmul d0, d0, d1
0002fffcfcvtzs x0, d0
00030000str x0, [sp+184]
00030004adrp x27, 0x9f4000
00030008ldr x0, [x27+3224]
0003000cadrp x27, 0xa1b000
00030010ldr x1, [x27+1944]
00030014sub x0, x0, x1
00030018movz x1, 27062
0003001cmovk x1, 0xaf6c0000
00030020movk x1, 0xbd0500000000
00030024movk x1, 0x8637000000000000
00030028umulh x0, x1, x0
0003002cubfm x3, x0, 19, 63
00030030add x0, sp, 54
00030034orr x1, xzr, 24
00030038mov x2, x1
0003003corr x4, xzr, 3
00030040bl runtime.itoaDiv
00030044adrp x27, 0xa22000
00030048ldr w2, [x27+568]
0003004cstr w2, [sp+180]
00030050mov x2, x1
00030054mov x1, x0
00030058add x0, sp, 144
0003005cbl runtime.slicebytetostring
00030060str x0, [sp+504]
00030064str x1, [sp+296]
00030068bl runtime.printlock
0003006cadrp x0, 0x680000
00030070add x0, x0, 321
00030074orr x1, xzr, 3
00030078bl runtime.printstring
0003007cldr w0, [sp+180]
00030080bl runtime.printuint
00030084adrp x0, 0x67f000
00030088add x0, x0, 4063
0003008corr x1, xzr, 2
00030090bl runtime.printstring
00030094ldr x0, [sp+504]
00030098ldr x1, [sp+296]
0003009cbl runtime.printstring
000300a0adrp x0, 0x67f000
000300a4add x0, x0, 4065
000300a8orr x1, xzr, 2
000300acbl runtime.printstring
000300b0ldr x0, [sp+184]
000300b4bl runtime.printint
000300b8adrp x0, 0x680000
000300bcadd x0, x0, 324
000300c0orr x1, xzr, 3
000300c4bl runtime.printstring
000300c8bl runtime.printunlock
000300ccadrp x27, 0x9f4000
000300d0ldr x0, [x27+3224]
000300d4stp xzr, xzr, [sp+384]
000300d8str xzr, [sp+400]
000300dcadrp x27, 0x9f4000
000300e0ldr x1, [x27+3232]
000300e4str x1, [sp+384]
000300e8adrp x27, 0x9f4000
000300ecldr x1, [x27+3240]
000300f0str x1, [sp+392]
000300f4adrp x27, 0x9f4000
000300f8ldr x1, [x27+3248]
000300fcstr x1, [sp+400]
00030100mov x1, xzr
00030104b 0x30154
00030108
00030108loc_30108:
00030108sub x3, x5, x0
0003010cadd x0, sp, 54
00030110orr x1, xzr, 24
00030114mov x2, x1
00030118bl runtime.fmtNSAsMS
0003011cmov x2, x1
00030120mov x1, x0
00030124add x0, sp, 112
00030128bl runtime.slicebytetostring
0003012cstr x0, [sp+504]
00030130str x1, [sp+296]
00030134bl runtime.printlock
00030138ldr x0, [sp+504]
0003013cldr x1, [sp+296]
00030140bl runtime.printstring
00030144bl runtime.printunlock
00030148ldr x4, [sp+232]
0003014cadd x1, x4, 1
00030150ldr x0, [sp+200]
00030154
00030154loc_30154:
00030154subs xzr, x1, 3
00030158b.ge 0x30198
0003015cstr x1, [sp+232]
00030160add x4, sp, 384
00030164ldr x5, [x4+3*x1]
00030168str x5, [sp+200]
0003016ccbz x1, 0x30108
00030170str x0, [sp+336]
00030174bl runtime.printlock
00030178adrp x0, 0x6df000
0003017cadd x0, x0, 696
00030180orr x1, xzr, 1
00030184bl runtime.printstring
00030188bl runtime.printunlock
0003018cldr x0, [sp+336]
00030190ldr x5, [sp+200]
00030194b 0x30108
00030198
00030198loc_30198:
00030198bl runtime.printlock
0003019cadrp x0, 0x682000
000301a0add x0, x0, 1966
000301a4movz x1, 11
000301a8bl runtime.printstring
000301acbl runtime.printunlock
000301b0adrp x0, 0xa1c000
000301b4add x0, x0, 2688
000301b8bl internal/runtime/atomic.(*Int64).Load
000301bcstr x0, [sp+336]
000301c0adrp x0, 0xa1c000
000301c4add x0, x0, 2696
000301c8bl internal/runtime/atomic.(*Int64).Load
000301ccstr x0, [sp+328]
000301d0adrp x0, 0xa1c000
000301d4add x0, x0, 2704
000301d8bl internal/runtime/atomic.(*Int64).Load
000301dcldr x1, [sp+328]
000301e0add x0, x1, x0
000301e4str x0, [sp+328]
000301e8adrp x0, 0xa1c000
000301ecadd x0, x0, 2712
000301f0bl internal/runtime/atomic.(*Int64).Load
000301f4stp xzr, xzr, [sp+344]
000301f8stp xzr, xzr, [sp+360]
000301fcstr xzr, [sp+376]
00030200adrp x27, 0x9f4000
00030204ldrsw x1, [x27+3212]
00030208adrp x27, 0x9f4000
0003020cldr x2, [x27+3232]
00030210adrp x27, 0x9f4000
00030214ldr x3, [x27+3224]
00030218sub x2, x2, x3
0003021cmadd x1, x2, x1, xzr
00030220str x1, [sp+344]
00030224ldr x1, [sp+336]
00030228str x1, [sp+352]
0003022cldr x1, [sp+328]
00030230str x1, [sp+360]
00030234str x0, [sp+368]
00030238adrp x27, 0x9f4000
0003023cldrsw x0, [x27+3212]
00030240adrp x27, 0x9f4000
00030244ldr x1, [x27+3248]
00030248adrp x27, 0x9f4000
0003024cldr x2, [x27+3240]
00030250sub x1, x1, x2
00030254madd x0, x1, x0, xzr
00030258str x0, [sp+376]
0003025cmov x0, xzr
00030260b 0x302a8
00030264
00030264loc_30264:
00030264add x0, sp, 54
00030268orr x1, xzr, 24
0003026cmov x2, x1
00030270bl runtime.fmtNSAsMS
00030274mov x2, x1
00030278mov x1, x0
0003027cadd x0, sp, 80
00030280bl runtime.slicebytetostring
00030284str x0, [sp+504]
00030288str x1, [sp+296]
0003028cbl runtime.printlock
00030290ldr x0, [sp+504]
00030294ldr x1, [sp+296]
00030298bl runtime.printstring
0003029cbl runtime.printunlock
000302a0ldr x4, [sp+224]
000302a4add x0, x4, 1
000302a8
000302a8loc_302a8:
000302a8subs xzr, x0, 5
000302acb.ge 0x3031c
000302b0str x0, [sp+224]
000302b4add x4, sp, 344
000302b8ldr x3, [x4+3*x0]
000302bcstr x3, [sp+208]
000302c0subs xzr, x0, 2
000302c4b.eq 0x302d0
000302c8subs xzr, x0, 3
000302ccb.ne 0x302f0
000302d0
000302d0loc_302d0:
000302d0bl runtime.printlock
000302d4adrp x0, 0x67f000
000302d8add x0, x0, 4032
000302dcorr x1, xzr, 1
000302e0bl runtime.printstring
000302e4bl runtime.printunlock
000302e8ldr x3, [sp+208]
000302ecb 0x30264
000302f0
000302f0loc_302f0:
000302f0cbz x0, 0x30264
000302f4bl runtime.printlock
000302f8adrp x0, 0x6df000
000302fcadd x0, x0, 696
00030300orr x1, xzr, 1
00030304bl runtime.printstring
00030308bl runtime.printunlock
0003030cldr x0, [sp+224]
00030310ldr x3, [sp+208]
00030314add x4, sp, 344
00030318b 0x30264
0003031c
0003031cloc_3031c:
0003031cadrp x0, 0xa1c000
00030320add x0, x0, 2624
00030324bl internal/runtime/atomic.(*Uint64).Load
00030328ubfm x1, x0, 20, 63
0003032cstr x1, [sp+288]
00030330adrp x0, 0xa1c000
00030334add x0, x0, 2640
00030338bl internal/runtime/atomic.(*Uint64).Load
0003033cadrp x27, 0x9f4000
00030340ldr x1, [x27+3264]
00030344ubfm x1, x1, 20, 63
00030348str x1, [sp+280]
0003034cadrp x27, 0x9f4000
00030350ldr x1, [x27+3272]
00030354ubfm x1, x1, 20, 63
00030358str x1, [sp+272]
0003035cadrp x27, 0x9f4000
00030360ldr x1, [x27+3280]
00030364ubfm x1, x1, 20, 63
00030368str x1, [sp+264]
0003036cadrp x27, 0xa1c000
00030370ldr x1, [x27+2592]
00030374ubfm x1, x1, 20, 63
00030378str x1, [sp+256]
0003037cubfm x1, x0, 20, 63
00030380str x1, [sp+248]
00030384adrp x27, 0x9f4000
00030388ldrsw x1, [x27+3216]
0003038cstr w1, [sp+176]
00030390bl runtime.printlock
00030394adrp x0, 0x681000
00030398add x0, x0, 2794
0003039cmovz x1, 9
000303a0bl runtime.printstring
000303a4ldr x0, [sp+280]
000303a8bl runtime.printuint
000303acadrp x0, 0x67f000
000303b0add x0, x0, 4067
000303b4orr x1, xzr, 2
000303b8bl runtime.printstring
000303bcldr x0, [sp+272]
000303c0bl runtime.printuint
000303c4adrp x0, 0x67f000
000303c8add x0, x0, 4067
000303ccorr x1, xzr, 2
000303d0bl runtime.printstring
000303d4ldr x0, [sp+264]
000303d8bl runtime.printuint
000303dcadrp x0, 0x680000
000303e0add x0, x0, 1642
000303e4movz x1, 5
000303e8bl runtime.printstring
000303ecldr x0, [sp+256]
000303f0bl runtime.printuint
000303f4adrp x0, 0x682000
000303f8add x0, x0, 184
000303fcmovz x1, 10
00030400bl runtime.printstring
00030404ldr x0, [sp+288]
00030408bl runtime.printuint
0003040cadrp x0, 0x682000
00030410add x0, x0, 3748
00030414orr x1, xzr, 12
00030418bl runtime.printstring
0003041cldr x0, [sp+248]
00030420bl runtime.printuint
00030424adrp x0, 0x683000
00030428add x0, x0, 1459
0003042cmovz x1, 13
00030430bl runtime.printstring
00030434ldrsw x1, [sp+176]
00030438mov x0, x1
0003043cbl runtime.printint
00030440adrp x0, 0x67f000
00030444add x0, x0, 4069
00030448orr x1, xzr, 2
0003044cbl runtime.printstring
00030450bl runtime.printunlock
00030454adrp x27, 0x9f4000
00030458ldrb w1, [x27+3120]
0003045ctbz w1, 0, 0x30478
00030460bl runtime.printlock
00030464adrp x0, 0x681000
00030468add x0, x0, 2803
0003046cmovz x1, 9
00030470bl runtime.printstring
00030474bl runtime.printunlock
00030478
00030478loc_30478:
00030478bl runtime.printlock
0003047cbl runtime.printnl
00030480bl runtime.printunlock
00030484bl runtime.printunlock
00030488
00030488loc_30488:
00030488adrp x0, 0x9f3000
0003048cadd x0, x0, 3552
00030490bl runtime.lock
00030494adrp x27, 0x9f3000
00030498ldr x1, [x27+3584]
0003049cstr x1, [sp+480]
000304a0adrp x27, 0x9f3000
000304a4ldr x2, [x27+3592]
000304a8str x2, [sp+240]
000304acadrp x27, 0x9f3000
000304b0add x27, x27, 3592
000304b4stp xzr, xzr, [x27]
000304b8adrp x27, 0xa1b000
000304bcldr w3, [x27+3056]
000304c0cbz w3, 0x304d4
000304c4adrp x27, 0x9f3000
000304c8ldr x3, [x27+3584]
000304ccbl runtime.gcWriteBarrier1
000304d0str x3, [x25]
000304d4
000304d4loc_304d4:
000304d4adrp x27, 0x9f3000
000304d8str xzr, [x27+3584]
000304dcadrp x0, 0x9f3000
000304e0add x0, x0, 3552
000304e4bl runtime.unlock
000304e8ldr x1, [sp+480]
000304ecldr x0, [sp+240]
000304f0b 0x30514
000304f4
000304f4loc_304f4:
000304f4str x0, [sp+296]
000304f8str x1, [sp+496]
000304fcldr x0, [x1]
00030500bl runtime.(*mspan).setUserArenaChunkToFault
00030504ldr x1, [sp+496]
00030508add x1, x1, 16
0003050cldr x2, [sp+296]
00030510sub x0, x2, 1
00030514
00030514loc_30514:
00030514subs xzr, x0, 0
00030518b.gt 0x304f4
0003051cadrp x0, 0xa1c000
00030520add x0, x0, 2496
00030524bl runtime.(*gcControllerState).heapGoal
00030528movz x1, 0x40000000
0003052csubs xzr, x0, x1
00030530b.ls 0x30544
00030534adrp x0, 0x6a8000
00030538add x0, x0, 1840
0003053cstr x0, [sp+8]
00030540bl runtime.systemstack.abi0
00030544
00030544loc_30544:
00030544adrp x0, 0x990000
00030548add x0, x0, 1416
0003054cbl runtime.semrelease
00030550adrp x0, 0x990000
00030554add x0, x0, 1420
00030558bl runtime.semrelease
0003055cldr x0, [sp+472]
00030560bl runtime.releasem
00030564ldp x29, x30, [sp-8]
00030568add sp, sp, 544
0003056cret x30
00030570
00030570loc_30570:
00030570adrp x0, 0x69a000
00030574add x0, x0, 635
00030578movz x1, 53
0003057cbl runtime.throw
00030580
00030580loc_30580:
00030580adrp x0, 0x68a000
00030584add x0, x0, 3308
00030588movz x1, 27
0003058cbl runtime.throw
00030590
00030590loc_30590:
00030590adrp x0, 0x68c000
00030594add x0, x0, 772
00030598movz x1, 29
0003059cbl runtime.throw
000305a0hint
000305a4
000305a4loc_305a4:
000305a4strb w0, [sp+8]
000305a8stp x1, x2, [sp+16]
000305acstr x3, [sp+32]
000305b0mov x3, x30
000305b4bl runtime.morestack_noctxt.abi0
000305b8ldrb w0, [sp+8]
000305bcldp x1, x2, [sp+16]
000305c0ldr x3, [sp+32]
000305c4b 0x2fbd0
000305c8udf 0
000305ccudf 0
0002fbd0
000305d0
000305d0runtime.gcMarkTermination.func3: ; void runtime.gcMarkTermination.func3(void)
000305d0ldr x16, [x28+16]
000305d4subs xzr, sp, x16
000305d8b.ls 0x3060c
000305dcstr x30, [sp-64]!
000305e0stur x29, [sp-8]
000305e4sub x29, sp, 8
000305e8ldrb w1, [x26+16]
000305ecldr x2, [x26+24]
000305f0ldr x3, [x26+32]
000305f4ldr x4, [x26+40]
000305f8ldr x0, [x26+8]
000305fcbl runtime.startTheWorldWithSema
00030600ldur x29, [sp-8]
00030604ldr x30, [sp], 64
00030608ret x30
0003060c
0003060cloc_3060c:
0003060cmov x3, x30
00030610bl runtime.morestack.abi0
00030614b 0x305d0
00030618udf 0
0003061cudf 0
000305d0
000305d0runtime.gcMarkTermination.func3: ; void runtime.gcMarkTermination.func3(void)
000305d0ldr x16, [x28+16]
000305d4subs xzr, sp, x16
000305d8b.ls 0x3060c
000305dcstr x30, [sp-64]!
000305e0stur x29, [sp-8]
000305e4sub x29, sp, 8
000305e8ldrb w1, [x26+16]
000305ecldr x2, [x26+24]
000305f0ldr x3, [x26+32]
000305f4ldr x4, [x26+40]
000305f8ldr x0, [x26+8]
000305fcbl runtime.startTheWorldWithSema
00030600ldur x29, [sp-8]
00030604ldr x30, [sp], 64
00030608ret x30
0003060c
0003060cloc_3060c:
0003060cmov x3, x30
00030610bl runtime.morestack.abi0
00030614b 0x305d0
00030618udf 0
0003061cudf 0
000305d0
00030620
00030620runtime.gcMarkTermination.func2: ; void runtime.gcMarkTermination.func2(void)
00030620ldr x16, [x28+16]
00030624subs xzr, sp, x16
00030628b.ls 0x306d0
0003062cstr x30, [sp-48]!
00030630stur x29, [sp-8]
00030634sub x29, sp, 8
00030638adrp x27, 0x9f4000
0003063cldr x1, [x27+2976]
00030640ldr x2, [x26+8]
00030644str x2, [sp+32]
00030648adrp x27, 0x9f4000
0003064cstr x1, [x27+3280]
00030650adrp x27, 0xa1c000
00030654ldrsw x1, [x27+244]
00030658subs wzr, w1, 0
0003065cb.le 0x306a8
00030660bl runtime.startCheckmarks
00030664bl runtime.gcResetMarkState
00030668ldr x0, [x28+48]
0003066cldr x0, [x0+208]
00030670bl runtime.puintptr.ptr
00030674ldrsb x27, [x0]
00030678movz x1, 4680
0003067cadd x0, x0, x1
00030680str x0, [sp+24]
00030684mov x1, xzr
00030688bl runtime.gcDrain
0003068cldr x0, [x28+48]
00030690ldr x0, [x0+208]
00030694bl runtime.puintptr.ptr
00030698bl runtime.wbBufFlush1
0003069cldr x0, [sp+24]
000306a0bl runtime.(*gcWork).dispose
000306a4bl runtime.endCheckmarks
000306a8
000306a8loc_306a8:
000306a8mov x0, xzr
000306acbl runtime.setGCPhase
000306b0adrp x27, 0x9f4000
000306b4ldr x0, [x27+3112]
000306b8bl runtime.gcSweep
000306bcldr x1, [sp+32]
000306c0strb w0, [x1]
000306c4ldur x29, [sp-8]
000306c8ldr x30, [sp], 48
000306ccret x30
000306d0
000306d0loc_306d0:
000306d0mov x3, x30
000306d4bl runtime.morestack.abi0
000306d8b 0x30620
000306dcudf 0
00030620
00030620runtime.gcMarkTermination.func2: ; void runtime.gcMarkTermination.func2(void)
00030620ldr x16, [x28+16]
00030624subs xzr, sp, x16
00030628b.ls 0x306d0
0003062cstr x30, [sp-48]!
00030630stur x29, [sp-8]
00030634sub x29, sp, 8
00030638adrp x27, 0x9f4000
0003063cldr x1, [x27+2976]
00030640ldr x2, [x26+8]
00030644str x2, [sp+32]
00030648adrp x27, 0x9f4000
0003064cstr x1, [x27+3280]
00030650adrp x27, 0xa1c000
00030654ldrsw x1, [x27+244]
00030658subs wzr, w1, 0
0003065cb.le 0x306a8
00030660bl runtime.startCheckmarks
00030664bl runtime.gcResetMarkState
00030668ldr x0, [x28+48]
0003066cldr x0, [x0+208]
00030670bl runtime.puintptr.ptr
00030674ldrsb x27, [x0]
00030678movz x1, 4680
0003067cadd x0, x0, x1
00030680str x0, [sp+24]
00030684mov x1, xzr
00030688bl runtime.gcDrain
0003068cldr x0, [x28+48]
00030690ldr x0, [x0+208]
00030694bl runtime.puintptr.ptr
00030698bl runtime.wbBufFlush1
0003069cldr x0, [sp+24]
000306a0bl runtime.(*gcWork).dispose
000306a4bl runtime.endCheckmarks
000306a8
000306a8loc_306a8:
000306a8mov x0, xzr
000306acbl runtime.setGCPhase
000306b0adrp x27, 0x9f4000
000306b4ldr x0, [x27+3112]
000306b8bl runtime.gcSweep
000306bcldr x1, [sp+32]
000306c0strb w0, [x1]
000306c4ldur x29, [sp-8]
000306c8ldr x30, [sp], 48
000306ccret x30
000306d0
000306d0loc_306d0:
000306d0mov x3, x30
000306d4bl runtime.morestack.abi0
000306d8b 0x30620
000306dcudf 0
00030620
000306e0
000306e0runtime.gcMarkTermination.func1: ; void runtime.gcMarkTermination.func1(void)
000306e0ldr x16, [x28+16]
000306e4subs xzr, sp, x16
000306e8b.ls 0x3070c
000306ecstr x30, [sp-32]!
000306f0stur x29, [sp-8]
000306f4sub x29, sp, 8
000306f8ldr x0, [x26+8]
000306fcbl runtime.gcMark
00030700ldur x29, [sp-8]
00030704ldr x30, [sp], 32
00030708ret x30
0003070c
0003070cloc_3070c:
0003070cmov x3, x30
00030710bl runtime.morestack.abi0
00030714b 0x306e0
00030718udf 0
0003071cudf 0
000306e0
000306e0runtime.gcMarkTermination.func1: ; void runtime.gcMarkTermination.func1(void)
000306e0ldr x16, [x28+16]
000306e4subs xzr, sp, x16
000306e8b.ls 0x3070c
000306ecstr x30, [sp-32]!
000306f0stur x29, [sp-8]
000306f4sub x29, sp, 8
000306f8ldr x0, [x26+8]
000306fcbl runtime.gcMark
00030700ldur x29, [sp-8]
00030704ldr x30, [sp], 32
00030708ret x30
0003070c
0003070cloc_3070c:
0003070cmov x3, x30
00030710bl runtime.morestack.abi0
00030714b 0x306e0
00030718udf 0
0003071cudf 0
000306e0
00030720
00030720runtime.gcBgMarkStartWorkers: ; void runtime.gcBgMarkStartWorkers(void)
00030720ldr x16, [x28+16]
00030724subs xzr, sp, x16
00030728b.ls 0x3081c
0003072cstr x30, [sp-64]!
00030730stur x29, [sp-8]
00030734sub x29, sp, 8
00030738adrp x27, 0xa1b000
0003073cldrsw x0, [x27+1648]
00030740adrp x27, 0xa1b000
00030744ldrsw x1, [x27+1660]
00030748subs wzr, w0, w1
0003074cb.le 0x30778
00030750bl runtime.acquirem
00030754str x0, [sp+48]
00030758adrp x0, 0x5c6000
0003075cadd x0, x0, 4032
00030760orr x1, xzr, 1
00030764bl runtime.makechan
00030768str x0, [sp+32]
0003076cldr x0, [sp+48]
00030770bl runtime.releasem
00030774b 0x307b4
00030778
00030778loc_30778:
00030778ldur x29, [sp-8]
0003077cldr x30, [sp], 64
00030780ret x30
00030784
00030784loc_30784:
00030784str x2, [x0+8]
00030788bl runtime.newproc
0003078cldr x0, [sp+40]
00030790bl runtime.releasem
00030794ldr x0, [sp+32]
00030798mov x1, xzr
0003079cbl runtime.chanrecv1
000307a0adrp x27, 0xa1b000
000307a4ldrsw x1, [x27+1660]
000307a8add x1, x1, 1
000307acadrp x27, 0xa1b000
000307b0str w1, [x27+1660]
000307b4
000307b4loc_307b4:
000307b4adrp x27, 0xa1b000
000307b8ldrsw x0, [x27+1648]
000307bcadrp x27, 0xa1b000
000307c0ldrsw x1, [x27+1660]
000307c4subs wzr, w0, w1
000307c8b.le 0x30810
000307ccbl runtime.acquirem
000307d0str x0, [sp+40]
000307d4adrp x0, 0x600000
000307d8add x0, x0, 3008
000307dcbl runtime.newobject
000307e0adrp x1, 0
000307e4add x1, x1, 2096
000307e8str x1, [x0]
000307ecadrp x27, 0xa1b000
000307f0ldr w2, [x27+3056]
000307f4cbnz w2, 0x30800
000307f8ldr x2, [sp+32]
000307fcb 0x30784
00030800
00030800loc_30800:
00030800bl runtime.gcWriteBarrier1
00030804ldr x2, [sp+32]
00030808str x2, [x25]
0003080cb 0x30784
00030810
00030810loc_30810:
00030810ldur x29, [sp-8]
00030814ldr x30, [sp], 64
00030818ret x30
0003081c
0003081cloc_3081c:
0003081cmov x3, x30
00030820bl runtime.morestack_noctxt.abi0
00030824b 0x30720
00030828udf 0
0003082cudf 0
00030720
00030720runtime.gcBgMarkStartWorkers: ; void runtime.gcBgMarkStartWorkers(void)
00030720ldr x16, [x28+16]
00030724subs xzr, sp, x16
00030728b.ls 0x3081c
0003072cstr x30, [sp-64]!
00030730stur x29, [sp-8]
00030734sub x29, sp, 8
00030738adrp x27, 0xa1b000
0003073cldrsw x0, [x27+1648]
00030740adrp x27, 0xa1b000
00030744ldrsw x1, [x27+1660]
00030748subs wzr, w0, w1
0003074cb.le 0x30778
00030750bl runtime.acquirem
00030754str x0, [sp+48]
00030758adrp x0, 0x5c6000
0003075cadd x0, x0, 4032
00030760orr x1, xzr, 1
00030764bl runtime.makechan
00030768str x0, [sp+32]
0003076cldr x0, [sp+48]
00030770bl runtime.releasem
00030774b 0x307b4
00030778
00030778loc_30778:
00030778ldur x29, [sp-8]
0003077cldr x30, [sp], 64
00030780ret x30
00030784
00030784loc_30784:
00030784str x2, [x0+8]
00030788bl runtime.newproc
0003078cldr x0, [sp+40]
00030790bl runtime.releasem
00030794ldr x0, [sp+32]
00030798mov x1, xzr
0003079cbl runtime.chanrecv1
000307a0adrp x27, 0xa1b000
000307a4ldrsw x1, [x27+1660]
000307a8add x1, x1, 1
000307acadrp x27, 0xa1b000
000307b0str w1, [x27+1660]
000307b4
000307b4loc_307b4:
000307b4adrp x27, 0xa1b000
000307b8ldrsw x0, [x27+1648]
000307bcadrp x27, 0xa1b000
000307c0ldrsw x1, [x27+1660]
000307c4subs wzr, w0, w1
000307c8b.le 0x30810
000307ccbl runtime.acquirem
000307d0str x0, [sp+40]
000307d4adrp x0, 0x600000
000307d8add x0, x0, 3008
000307dcbl runtime.newobject
000307e0adrp x1, 0
000307e4add x1, x1, 2096
000307e8str x1, [x0]
000307ecadrp x27, 0xa1b000
000307f0ldr w2, [x27+3056]
000307f4cbnz w2, 0x30800
000307f8ldr x2, [sp+32]
000307fcb 0x30784
00030800
00030800loc_30800:
00030800bl runtime.gcWriteBarrier1
00030804ldr x2, [sp+32]
00030808str x2, [x25]
0003080cb 0x30784
00030810
00030810loc_30810:
00030810ldur x29, [sp-8]
00030814ldr x30, [sp], 64
00030818ret x30
0003081c
0003081cloc_3081c:
0003081cmov x3, x30
00030820bl runtime.morestack_noctxt.abi0
00030824b 0x30720
00030828udf 0
0003082cudf 0
00030720
00030830
00030830runtime.gcBgMarkStartWorkers.gowrap1: ; void runtime.gcBgMarkStartWorkers.gowrap1(void)
00030830ldr x16, [x28+16]
00030834subs xzr, sp, x16
00030838b.ls 0x30864
0003083cstr x30, [sp-32]!
00030840stur x29, [sp-8]
00030844sub x29, sp, 8
00030848ldr x16, [x28+32]
0003084ccbnz x16, 0x30870
00030850
00030850loc_30850:
00030850ldr x0, [x26+8]
00030854bl runtime.gcBgMarkWorker
00030858ldur x29, [sp-8]
0003085cldr x30, [sp], 32
00030860ret x30
00030864
00030864loc_30864:
00030864mov x3, x30
00030868bl runtime.morestack.abi0
0003086cb 0x30830
00030870
00030870loc_30870:
00030870ldr x17, [x16]
00030874add x20, sp, 40
00030878subs xzr, x20, x17
0003087cb.ne 0x30850
00030880add x20, sp, 8
00030884str x20, [x16]
00030888b 0x30850
0003088cudf 0
00030830
00030830runtime.gcBgMarkStartWorkers.gowrap1: ; void runtime.gcBgMarkStartWorkers.gowrap1(void)
00030830ldr x16, [x28+16]
00030834subs xzr, sp, x16
00030838b.ls 0x30864
0003083cstr x30, [sp-32]!
00030840stur x29, [sp-8]
00030844sub x29, sp, 8
00030848ldr x16, [x28+32]
0003084ccbnz x16, 0x30870
00030850
00030850loc_30850:
00030850ldr x0, [x26+8]
00030854bl runtime.gcBgMarkWorker
00030858ldur x29, [sp-8]
0003085cldr x30, [sp], 32
00030860ret x30
00030864
00030864loc_30864:
00030864mov x3, x30
00030868bl runtime.morestack.abi0
0003086cb 0x30830
00030870
00030870loc_30870:
00030870ldr x17, [x16]
00030874add x20, sp, 40
00030878subs xzr, x20, x17
0003087cb.ne 0x30850
00030880add x20, sp, 8
00030884str x20, [x16]
00030888b 0x30850
0003088cudf 0
00030830
00030890
00030890runtime.gcBgMarkPrepare: ; void runtime.gcBgMarkPrepare(void)
00030890movn x0, 0
00030894adrp x27, 0x9f4000
00030898str w0, [x27+2992]
0003089cadrp x27, 0x9f4000
000308a0str w0, [x27+3008]
000308a4ret x30
000308a8udf 0
000308acudf 0
00030890
00030890runtime.gcBgMarkPrepare: ; void runtime.gcBgMarkPrepare(void)
00030890movn x0, 0
00030894adrp x27, 0x9f4000
00030898str w0, [x27+2992]
0003089cadrp x27, 0x9f4000
000308a0str w0, [x27+3008]
000308a4ret x30
000308a8udf 0
000308acudf 0
00030890
000308b0
000308b0runtime.gcBgMarkWorker: ; void runtime.gcBgMarkWorker(chan struct {} ready)
000308b0ldr x16, [x28+16]
000308b4sub x17, sp, 48
000308b8subs xzr, x17, x16
000308bcb.ls 0x30cd8
000308c0str x30, [sp-176]!
000308c4stur x29, [sp-8]
000308c8sub x29, sp, 8
000308ccstr x0, [sp+184]
000308d0str x28, [sp+128]
000308d4ldr x1, [x28+48]
000308d8orr x2, xzr, 14
000308dcstr x2, [x1+256]
000308e0adrp x27, 0xa1b000
000308e4ldr w2, [x27+3056]
000308e8cbz w2, 0x308f8
000308ecldr x2, [x1+248]
000308f0bl runtime.gcWriteBarrier1
000308f4str x2, [x25]
000308f8
000308f8loc_308f8:
000308f8adrp x2, 0x683000
000308fcadd x2, x2, 3192
00030900str x2, [x1+248]
00030904adrp x0, 0x61f000
00030908add x0, x0, 3200
0003090cbl runtime.newobject
00030910ldr x1, [sp+128]
00030914ldr x2, [x1+48]
00030918str xzr, [x2+256]
0003091cadrp x27, 0xa1b000
00030920ldr w3, [x27+3056]
00030924cbz w3, 0x30934
00030928ldr x3, [x2+248]
0003092cbl runtime.gcWriteBarrier1
00030930str x3, [x25]
00030934
00030934loc_30934:
00030934str x0, [sp+120]
00030938str xzr, [x2+248]
0003093cadd x0, x0, 16
00030940bl runtime.(*guintptr).set
00030944bl runtime.acquirem
00030948ldr x2, [sp+120]
0003094cadd x2, x2, 24
00030950str x2, [sp+136]
00030954mov x1, x0
00030958mov x0, x2
0003095cbl runtime.(*muintptr).set
00030960ldr x0, [sp+184]
00030964add x1, sp, 56
00030968bl runtime.chansend1
0003096c
0003096cloc_3096c:
0003096cadrp x0, 0x6a8000
00030970add x0, x0, 1800
00030974ldr x1, [sp+120]
00030978movz x2, 27
0003097cmovz x3, 10
00030980mov x4, xzr
00030984bl runtime.gopark
00030988bl runtime.acquirem
0003098cmov x1, x0
00030990ldr x0, [sp+136]
00030994bl runtime.(*muintptr).set
00030998ldr x5, [sp+128]
0003099cldr x5, [x5+48]
000309a0ldr x0, [x5+208]
000309a4bl runtime.puintptr.ptr
000309a8adrp x27, 0xa1b000
000309acldr w5, [x27+1604]
000309b0cbz w5, 0x30c94
000309b4ldrsb x27, [x0]
000309b8ldr x2, [x0+4664]
000309bccbz x2, 0x30c84
000309c0str x0, [sp+112]
000309c4bl runtime.nanotime
000309c8str x0, [sp+64]
000309ccldr x1, [sp+112]
000309d0str x0, [x1+4672]
000309d4ldr x2, [x1+4664]
000309d8subs xzr, x2, 3
000309dcb.eq 0x309e8
000309e0mov x2, xzr
000309e4b 0x30a0c
000309e8
000309e8loc_309e8:
000309e8movz x3, 4656
000309ecadd x3, x3, x1
000309f0orr x1, xzr, 1
000309f4mov x2, x0
000309f8mov x0, x3
000309fcbl runtime.(*limiterEvent).start
00030a00ldr x1, [sp+112]
00030a04mov x2, x0
00030a08ldr x0, [sp+64]
00030a0c
00030a0cloc_30a0c:
00030a0cadrp x27, 0xa1b000
00030a10ldrb w3, [x27+1516]
00030a14tbz w3, 0, 0x30a30
00030a18movn x3, 0
00030a1cadrp x4, 0x9f4000
00030a20add x4, x4, 3008
00030a24ldaddal w3, w5, [x4]
00030a28add x5, x5, x3
00030a2cb 0x30a4c
00030a30
00030a30loc_30a30:
00030a30movn x3, 0
00030a34adrp x4, 0x9f4000
00030a38add x4, x4, 3008
00030a3c
00030a3cloc_30a3c:
00030a3cldaxr w5, [x4]
00030a40add x5, x5, x3
00030a44stlxr w27, w5, [x4]
00030a48cbnz x27, 0x30a3c
00030a4c
00030a4cloc_30a4c:
00030a4cadrp x27, 0x9f4000
00030a50ldr w6, [x27+2992]
00030a54subs wzr, w5, w6
00030a58b.eq 0x30c30
00030a5cstrb w2, [sp+55]
00030a60adrp x0, 0
00030a64add x0, x0, 3312
00030a68str x0, [sp+144]
00030a6cldr x0, [sp+128]
00030a70str x0, [sp+152]
00030a74str x1, [sp+160]
00030a78add x0, sp, 144
00030a7cstr x0, [sp+8]
00030a80bl runtime.systemstack.abi0
00030a84bl runtime.nanotime
00030a88str x0, [sp+72]
00030a8cldr x1, [sp+64]
00030a90sub x2, x0, x1
00030a94str x2, [sp+80]
00030a98ldr x0, [sp+112]
00030a9cldr x1, [x0+4664]
00030aa0adrp x0, 0xa1c000
00030aa4add x0, x0, 2496
00030aa8bl runtime.(*gcControllerState).markWorkerStop
00030aacldrb w0, [sp+55]
00030ab0tbz w0, 0, 0x30acc
00030ab4movz x3, 4656
00030ab8ldr x4, [sp+112]
00030abcadd x0, x3, x4
00030ac0orr x1, xzr, 1
00030ac4ldr x2, [sp+72]
00030ac8bl runtime.(*limiterEvent).stop
00030acc
00030accloc_30acc:
00030accldr x5, [sp+112]
00030ad0ldr x6, [x5+4664]
00030ad4subs xzr, x6, 2
00030ad8b.ne 0x30b14
00030adcmovz x6, 4648
00030ae0add x6, x5, x6
00030ae4adrp x27, 0xa1b000
00030ae8ldrb w7, [x27+1516]
00030aectbz w7, 0, 0x30b00
00030af0ldr x7, [sp+80]
00030af4ldaddal x7, x8, [x6]
00030af8add x8, x8, x7
00030afcb 0x30b14
00030b00
00030b00loc_30b00:
00030b00ldr x7, [sp+80]
00030b04
00030b04loc_30b04:
00030b04ldaxr x8, [x6]
00030b08add x8, x8, x7
00030b0cstlxr w27, x8, [x6]
00030b10cbnz x27, 0x30b04
00030b14
00030b14loc_30b14:
00030b14adrp x27, 0xa1b000
00030b18ldrb w6, [x27+1516]
00030b1ctbz w6, 0, 0x30b38
00030b20orr x6, xzr, 1
00030b24adrp x7, 0x9f4000
00030b28add x7, x7, 3008
00030b2cldaddal w6, w8, [x7]
00030b30add x8, x8, x6
00030b34b 0x30b54
00030b38
00030b38loc_30b38:
00030b38orr x6, xzr, 1
00030b3cadrp x7, 0x9f4000
00030b40add x7, x7, 3008
00030b44
00030b44loc_30b44:
00030b44ldaxr w8, [x7]
00030b48add x8, x8, x6
00030b4cstlxr w27, w8, [x7]
00030b50cbnz x27, 0x30b44
00030b54
00030b54loc_30b54:
00030b54adrp x27, 0x9f4000
00030b58ldr w7, [x27+2992]
00030b5csubs wzr, w8, w7
00030b60b.hi 0x30bb4
00030b64str xzr, [x5+4664]
00030b68adrp x27, 0x9f4000
00030b6cldr w5, [x27+2992]
00030b70subs wzr, w8, w5
00030b74b.ne 0x3096c
00030b78mov x0, xzr
00030b7cbl runtime.gcMarkWorkAvailable
00030b80tbz w0, 0, 0x30b8c
00030b84orr x6, xzr, 1
00030b88b 0x3096c
00030b8c
00030b8cloc_30b8c:
00030b8cldr x1, [sp+120]
00030b90ldr x0, [x1+24]
00030b94bl runtime.muintptr.ptr
00030b98bl runtime.releasem
00030b9cldr x0, [sp+136]
00030ba0mov x1, xzr
00030ba4bl runtime.(*muintptr).set
00030ba8bl runtime.gcMarkDone
00030bacorr x6, xzr, 1
00030bb0b 0x3096c
00030bb4
00030bb4loc_30bb4:
00030bb4mov w0, w8
00030bb8str x0, [sp+104]
00030bbcmov x0, x7
00030bc0str x0, [sp+96]
00030bc4ldr x0, [x5+4664]
00030bc8str x0, [sp+88]
00030bccbl runtime.printlock
00030bd0adrp x0, 0x68c000
00030bd4add x0, x0, 801
00030bd8movz x1, 29
00030bdcbl runtime.printstring
00030be0ldr x0, [sp+88]
00030be4bl runtime.printint
00030be8adrp x0, 0x683000
00030becadd x0, x0, 1485
00030bf0movz x1, 13
00030bf4bl runtime.printstring
00030bf8ldr x0, [sp+104]
00030bfcbl runtime.printuint
00030c00adrp x0, 0x683000
00030c04add x0, x0, 1472
00030c08movz x1, 13
00030c0cbl runtime.printstring
00030c10ldr x0, [sp+96]
00030c14bl runtime.printuint
00030c18bl runtime.printnl
00030c1cbl runtime.printunlock
00030c20adrp x0, 0x688000
00030c24add x0, x0, 1076
00030c28movz x1, 23
00030c2cbl runtime.throw
00030c30
00030c30loc_30c30:
00030c30str w5, [sp+56]
00030c34str w6, [sp+60]
00030c38bl runtime.printlock
00030c3cadrp x0, 0x687000
00030c40add x0, x0, 459
00030c44movz x1, 21
00030c48bl runtime.printstring
00030c4cldr w0, [sp+56]
00030c50bl runtime.printuint
00030c54adrp x0, 0x683000
00030c58add x0, x0, 1472
00030c5cmovz x1, 13
00030c60bl runtime.printstring
00030c64ldr w0, [sp+60]
00030c68bl runtime.printuint
00030c6cbl runtime.printnl
00030c70bl runtime.printunlock
00030c74adrp x0, 0x68a000
00030c78add x0, x0, 3335
00030c7cmovz x1, 27
00030c80bl runtime.throw
00030c84
00030c84loc_30c84:
00030c84adrp x0, 0x68b000
00030c88add x0, x0, 2060
00030c8corr x1, xzr, 28
00030c90bl runtime.throw
00030c94
00030c94loc_30c94:
00030c94ldrsb x27, [x0]
00030c98ldr x0, [x0+4664]
00030c9cstr x0, [sp+88]
00030ca0bl runtime.printlock
00030ca4adrp x0, 0x682000
00030ca8add x0, x0, 3760
00030cacorr x1, xzr, 12
00030cb0bl runtime.printstring
00030cb4ldr x0, [sp+88]
00030cb8bl runtime.printint
00030cbcbl runtime.printnl
00030cc0bl runtime.printunlock
00030cc4adrp x0, 0x692000
00030cc8add x0, x0, 2582
00030cccmovz x1, 38
00030cd0bl runtime.throw
00030cd4hint
00030cd8
00030cd8loc_30cd8:
00030cd8str x0, [sp+8]
00030cdcmov x3, x30
00030ce0bl runtime.morestack_noctxt.abi0
00030ce4ldr x0, [sp+8]
00030ce8b 0x308b0
00030cecudf 0
000308b0
000308b0runtime.gcBgMarkWorker: ; void runtime.gcBgMarkWorker(chan struct {} ready)
000308b0ldr x16, [x28+16]
000308b4sub x17, sp, 48
000308b8subs xzr, x17, x16
000308bcb.ls 0x30cd8
000308c0str x30, [sp-176]!
000308c4stur x29, [sp-8]
000308c8sub x29, sp, 8
000308ccstr x0, [sp+184]
000308d0str x28, [sp+128]
000308d4ldr x1, [x28+48]
000308d8orr x2, xzr, 14
000308dcstr x2, [x1+256]
000308e0adrp x27, 0xa1b000
000308e4ldr w2, [x27+3056]
000308e8cbz w2, 0x308f8
000308ecldr x2, [x1+248]
000308f0bl runtime.gcWriteBarrier1
000308f4str x2, [x25]
000308f8
000308f8loc_308f8:
000308f8adrp x2, 0x683000
000308fcadd x2, x2, 3192
00030900str x2, [x1+248]
00030904adrp x0, 0x61f000
00030908add x0, x0, 3200
0003090cbl runtime.newobject
00030910ldr x1, [sp+128]
00030914ldr x2, [x1+48]
00030918str xzr, [x2+256]
0003091cadrp x27, 0xa1b000
00030920ldr w3, [x27+3056]
00030924cbz w3, 0x30934
00030928ldr x3, [x2+248]
0003092cbl runtime.gcWriteBarrier1
00030930str x3, [x25]
00030934
00030934loc_30934:
00030934str x0, [sp+120]
00030938str xzr, [x2+248]
0003093cadd x0, x0, 16
00030940bl runtime.(*guintptr).set
00030944bl runtime.acquirem
00030948ldr x2, [sp+120]
0003094cadd x2, x2, 24
00030950str x2, [sp+136]
00030954mov x1, x0
00030958mov x0, x2
0003095cbl runtime.(*muintptr).set
00030960ldr x0, [sp+184]
00030964add x1, sp, 56
00030968bl runtime.chansend1
0003096c
0003096cloc_3096c:
0003096cadrp x0, 0x6a8000
00030970add x0, x0, 1800
00030974ldr x1, [sp+120]
00030978movz x2, 27
0003097cmovz x3, 10
00030980mov x4, xzr
00030984bl runtime.gopark
00030988bl runtime.acquirem
0003098cmov x1, x0
00030990ldr x0, [sp+136]
00030994bl runtime.(*muintptr).set
00030998ldr x5, [sp+128]
0003099cldr x5, [x5+48]
000309a0ldr x0, [x5+208]
000309a4bl runtime.puintptr.ptr
000309a8adrp x27, 0xa1b000
000309acldr w5, [x27+1604]
000309b0cbz w5, 0x30c94
000309b4ldrsb x27, [x0]
000309b8ldr x2, [x0+4664]
000309bccbz x2, 0x30c84
000309c0str x0, [sp+112]
000309c4bl runtime.nanotime
000309c8str x0, [sp+64]
000309ccldr x1, [sp+112]
000309d0str x0, [x1+4672]
000309d4ldr x2, [x1+4664]
000309d8subs xzr, x2, 3
000309dcb.eq 0x309e8
000309e0mov x2, xzr
000309e4b 0x30a0c
000309e8
000309e8loc_309e8:
000309e8movz x3, 4656
000309ecadd x3, x3, x1
000309f0orr x1, xzr, 1
000309f4mov x2, x0
000309f8mov x0, x3
000309fcbl runtime.(*limiterEvent).start
00030a00ldr x1, [sp+112]
00030a04mov x2, x0
00030a08ldr x0, [sp+64]
00030a0c
00030a0cloc_30a0c:
00030a0cadrp x27, 0xa1b000
00030a10ldrb w3, [x27+1516]
00030a14tbz w3, 0, 0x30a30
00030a18movn x3, 0
00030a1cadrp x4, 0x9f4000
00030a20add x4, x4, 3008
00030a24ldaddal w3, w5, [x4]
00030a28add x5, x5, x3
00030a2cb 0x30a4c
00030a30
00030a30loc_30a30:
00030a30movn x3, 0
00030a34adrp x4, 0x9f4000
00030a38add x4, x4, 3008
00030a3c
00030a3cloc_30a3c:
00030a3cldaxr w5, [x4]
00030a40add x5, x5, x3
00030a44stlxr w27, w5, [x4]
00030a48cbnz x27, 0x30a3c
00030a4c
00030a4cloc_30a4c:
00030a4cadrp x27, 0x9f4000
00030a50ldr w6, [x27+2992]
00030a54subs wzr, w5, w6
00030a58b.eq 0x30c30
00030a5cstrb w2, [sp+55]
00030a60adrp x0, 0
00030a64add x0, x0, 3312
00030a68str x0, [sp+144]
00030a6cldr x0, [sp+128]
00030a70str x0, [sp+152]
00030a74str x1, [sp+160]
00030a78add x0, sp, 144
00030a7cstr x0, [sp+8]
00030a80bl runtime.systemstack.abi0
00030a84bl runtime.nanotime
00030a88str x0, [sp+72]
00030a8cldr x1, [sp+64]
00030a90sub x2, x0, x1
00030a94str x2, [sp+80]
00030a98ldr x0, [sp+112]
00030a9cldr x1, [x0+4664]
00030aa0adrp x0, 0xa1c000
00030aa4add x0, x0, 2496
00030aa8bl runtime.(*gcControllerState).markWorkerStop
00030aacldrb w0, [sp+55]
00030ab0tbz w0, 0, 0x30acc
00030ab4movz x3, 4656
00030ab8ldr x4, [sp+112]
00030abcadd x0, x3, x4
00030ac0orr x1, xzr, 1
00030ac4ldr x2, [sp+72]
00030ac8bl runtime.(*limiterEvent).stop
00030acc
00030accloc_30acc:
00030accldr x5, [sp+112]
00030ad0ldr x6, [x5+4664]
00030ad4subs xzr, x6, 2
00030ad8b.ne 0x30b14
00030adcmovz x6, 4648
00030ae0add x6, x5, x6
00030ae4adrp x27, 0xa1b000
00030ae8ldrb w7, [x27+1516]
00030aectbz w7, 0, 0x30b00
00030af0ldr x7, [sp+80]
00030af4ldaddal x7, x8, [x6]
00030af8add x8, x8, x7
00030afcb 0x30b14
00030b00
00030b00loc_30b00:
00030b00ldr x7, [sp+80]
00030b04
00030b04loc_30b04:
00030b04ldaxr x8, [x6]
00030b08add x8, x8, x7
00030b0cstlxr w27, x8, [x6]
00030b10cbnz x27, 0x30b04
00030b14
00030b14loc_30b14:
00030b14adrp x27, 0xa1b000
00030b18ldrb w6, [x27+1516]
00030b1ctbz w6, 0, 0x30b38
00030b20orr x6, xzr, 1
00030b24adrp x7, 0x9f4000
00030b28add x7, x7, 3008
00030b2cldaddal w6, w8, [x7]
00030b30add x8, x8, x6
00030b34b 0x30b54
00030b38
00030b38loc_30b38:
00030b38orr x6, xzr, 1
00030b3cadrp x7, 0x9f4000
00030b40add x7, x7, 3008
00030b44
00030b44loc_30b44:
00030b44ldaxr w8, [x7]
00030b48add x8, x8, x6
00030b4cstlxr w27, w8, [x7]
00030b50cbnz x27, 0x30b44
00030b54
00030b54loc_30b54:
00030b54adrp x27, 0x9f4000
00030b58ldr w7, [x27+2992]
00030b5csubs wzr, w8, w7
00030b60b.hi 0x30bb4
00030b64str xzr, [x5+4664]
00030b68adrp x27, 0x9f4000
00030b6cldr w5, [x27+2992]
00030b70subs wzr, w8, w5
00030b74b.ne 0x3096c
00030b78mov x0, xzr
00030b7cbl runtime.gcMarkWorkAvailable
00030b80tbz w0, 0, 0x30b8c
00030b84orr x6, xzr, 1
00030b88b 0x3096c
00030b8c
00030b8cloc_30b8c:
00030b8cldr x1, [sp+120]
00030b90ldr x0, [x1+24]
00030b94bl runtime.muintptr.ptr
00030b98bl runtime.releasem
00030b9cldr x0, [sp+136]
00030ba0mov x1, xzr
00030ba4bl runtime.(*muintptr).set
00030ba8bl runtime.gcMarkDone
00030bacorr x6, xzr, 1
00030bb0b 0x3096c
00030bb4
00030bb4loc_30bb4:
00030bb4mov w0, w8
00030bb8str x0, [sp+104]
00030bbcmov x0, x7
00030bc0str x0, [sp+96]
00030bc4ldr x0, [x5+4664]
00030bc8str x0, [sp+88]
00030bccbl runtime.printlock
00030bd0adrp x0, 0x68c000
00030bd4add x0, x0, 801
00030bd8movz x1, 29
00030bdcbl runtime.printstring
00030be0ldr x0, [sp+88]
00030be4bl runtime.printint
00030be8adrp x0, 0x683000
00030becadd x0, x0, 1485
00030bf0movz x1, 13
00030bf4bl runtime.printstring
00030bf8ldr x0, [sp+104]
00030bfcbl runtime.printuint
00030c00adrp x0, 0x683000
00030c04add x0, x0, 1472
00030c08movz x1, 13
00030c0cbl runtime.printstring
00030c10ldr x0, [sp+96]
00030c14bl runtime.printuint
00030c18bl runtime.printnl
00030c1cbl runtime.printunlock
00030c20adrp x0, 0x688000
00030c24add x0, x0, 1076
00030c28movz x1, 23
00030c2cbl runtime.throw
00030c30
00030c30loc_30c30:
00030c30str w5, [sp+56]
00030c34str w6, [sp+60]
00030c38bl runtime.printlock
00030c3cadrp x0, 0x687000
00030c40add x0, x0, 459
00030c44movz x1, 21
00030c48bl runtime.printstring
00030c4cldr w0, [sp+56]
00030c50bl runtime.printuint
00030c54adrp x0, 0x683000
00030c58add x0, x0, 1472
00030c5cmovz x1, 13
00030c60bl runtime.printstring
00030c64ldr w0, [sp+60]
00030c68bl runtime.printuint
00030c6cbl runtime.printnl
00030c70bl runtime.printunlock
00030c74adrp x0, 0x68a000
00030c78add x0, x0, 3335
00030c7cmovz x1, 27
00030c80bl runtime.throw
00030c84
00030c84loc_30c84:
00030c84adrp x0, 0x68b000
00030c88add x0, x0, 2060
00030c8corr x1, xzr, 28
00030c90bl runtime.throw
00030c94
00030c94loc_30c94:
00030c94ldrsb x27, [x0]
00030c98ldr x0, [x0+4664]
00030c9cstr x0, [sp+88]
00030ca0bl runtime.printlock
00030ca4adrp x0, 0x682000
00030ca8add x0, x0, 3760
00030cacorr x1, xzr, 12
00030cb0bl runtime.printstring
00030cb4ldr x0, [sp+88]
00030cb8bl runtime.printint
00030cbcbl runtime.printnl
00030cc0bl runtime.printunlock
00030cc4adrp x0, 0x692000
00030cc8add x0, x0, 2582
00030cccmovz x1, 38
00030cd0bl runtime.throw
00030cd4hint
00030cd8
00030cd8loc_30cd8:
00030cd8str x0, [sp+8]
00030cdcmov x3, x30
00030ce0bl runtime.morestack_noctxt.abi0
00030ce4ldr x0, [sp+8]
00030ce8b 0x308b0
00030cecudf 0
000308b0
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
Loading..