File sliver_83cb34f62800fed14e14547c39337aab8e0427fe2c6310a3fb40ce0ac36168c9.elf
Function:
Loading..
000329c0
000329c0runtime.markroot: ; void runtime.markroot(runtime.gcWork * gcw, uint32 i, bool flushBgCredit)
000329c0ldr x16, [x28+16]
000329c4sub x17, sp, 32
000329c8subs xzr, x17, x16
000329ccb.ls 0x32d50
000329d0str x30, [sp-160]!
000329d4stur x29, [sp-8]
000329d8sub x29, sp, 8
000329dcstr x0, [sp+168]
000329e0str w1, [sp+176]
000329e4strb w2, [sp+180]
000329e8str xzr, [sp+56]
000329ecadrp x27, 0x9f2000
000329f0ldr w5, [x27+3048]
000329f4subs wzr, w1, w5
000329f8b.lo 0x32a20
000329fcadrp x27, 0x9f2000
00032a00ldr w5, [x27+3052]
00032a04subs wzr, w1, w5
00032a08b.hs 0x32a20
00032a0cbl runtime.activeModules
00032a10str x0, [sp+112]
00032a14str x1, [sp+96]
00032a18mov x2, xzr
00032a1cb 0x32d3c
00032a20
00032a20loc_32a20:
00032a20adrp x27, 0x9f2000
00032a24ldr w5, [x27+3052]
00032a28subs wzr, w1, w5
00032a2cb.lo 0x32a54
00032a30adrp x27, 0x9f2000
00032a34ldr w5, [x27+3056]
00032a38subs wzr, w1, w5
00032a3cb.hs 0x32a54
00032a40bl runtime.activeModules
00032a44str x0, [sp+112]
00032a48str x1, [sp+96]
00032a4cmov x2, xzr
00032a50b 0x32cd8
00032a54
00032a54loc_32a54:
00032a54cbnz w1, 0x32a64
00032a58adrp x27, 0xa19000
00032a5cldr x5, [x27+1816]
00032a60b 0x32c7c
00032a64
00032a64loc_32a64:
00032a64subs wzr, w1, 1
00032a68b.eq 0x32b54
00032a6cadrp x27, 0x9f2000
00032a70ldr w3, [x27+3056]
00032a74subs wzr, w1, w3
00032a78b.lo 0x32aa0
00032a7cadrp x27, 0x9f2000
00032a80ldr w4, [x27+3060]
00032a84subs wzr, w1, w4
00032a88b.hs 0x32aa0
00032a8csub x2, x1, x3
00032a90mov w1, w2
00032a94bl runtime.markrootSpans
00032a98mov x0, xzr
00032a9cb 0x32b68
00032aa0
00032aa0loc_32aa0:
00032aa0adrp x27, 0x9f2000
00032aa4ldr w3, [x27+3060]
00032aa8subs wzr, w1, w3
00032aacb.lo 0x32ba4
00032ab0adrp x27, 0x9f2000
00032ab4ldr w4, [x27+3064]
00032ab8subs wzr, w1, w4
00032abcb.hs 0x32ba4
00032ac0adrp x27, 0x9f2000
00032ac4ldr x4, [x27+3080]
00032ac8sub x3, x1, x3
00032accmov w3, w3
00032ad0subs xzr, x3, x4
00032ad4b.hs 0x32b98
00032ad8adrp x27, 0x9f2000
00032adcldr x1, [x27+3072]
00032ae0ldr x0, [x1+3*x3]
00032ae4str x0, [sp+104]
00032ae8bl runtime.readgstatus
00032aecsubs wzr, w0, 4
00032af0b.eq 0x32afc
00032af4subs wzr, w0, 3
00032af8b.ne 0x32b18
00032afc
00032afcloc_32afc:
00032afcldr x0, [sp+104]
00032b00ldr x1, [x0+176]
00032b04cbnz x1, 0x32b1c
00032b08adrp x27, 0x9f2000
00032b0cldr x1, [x27+3000]
00032b10str x1, [x0+176]
00032b14b 0x32b1c
00032b18
00032b18loc_32b18:
00032b18ldr x0, [sp+104]
00032b1c
00032b1cloc_32b1c:
00032b1cadrp x1, 0
00032b20add x1, x1, 3456
00032b24str x1, [sp+120]
00032b28str x0, [sp+128]
00032b2cadd x0, sp, 56
00032b30str x0, [sp+136]
00032b34ldr x0, [sp+168]
00032b38str x0, [sp+144]
00032b3cadd x0, sp, 120
00032b40str x0, [sp+8]
00032b44bl runtime.systemstack.abi0
00032b48adrp x0, 0xa1a000
00032b4cadd x0, x0, 2664
00032b50b 0x32b68
00032b54
00032b54loc_32b54:
00032b54adrp x0, 0x6a6000
00032b58add x0, x0, 2400
00032b5cstr x0, [sp+8]
00032b60bl runtime.systemstack.abi0
00032b64mov x0, xzr
00032b68
00032b68loc_32b68:
00032b68cbz x0, 0x32b88
00032b6cldr x1, [sp+56]
00032b70cbz x1, 0x32b88
00032b74bl internal/runtime/atomic.(*Int64).Add
00032b78ldrb w0, [sp+180]
00032b7ctbz w0, 0, 0x32b88
00032b80ldr x0, [sp+56]
00032b84bl runtime.gcFlushBgCredit
00032b88
00032b88loc_32b88:
00032b88ldr x0, [sp+56]
00032b8cldur x29, [sp-8]
00032b90ldr x30, [sp], 160
00032b94ret x30
00032b98
00032b98loc_32b98:
00032b98mov x0, x3
00032b9cmov x1, x4
00032ba0bl runtime.panicIndex
00032ba4
00032ba4loc_32ba4:
00032ba4bl runtime.printlock
00032ba8ldr w0, [sp+176]
00032bacstr x0, [sp+88]
00032bb0adrp x27, 0x9f2000
00032bb4ldr w0, [x27+3060]
00032bb8str x0, [sp+80]
00032bbcadrp x27, 0x9f2000
00032bc0ldr w0, [x27+3064]
00032bc4str w0, [sp+52]
00032bc8bl runtime.printlock
00032bccadrp x0, 0x687000
00032bd0add x0, x0, 6
00032bd4orr x1, xzr, 24
00032bd8bl runtime.printstring
00032bdcldr x0, [sp+88]
00032be0bl runtime.printuint
00032be4adrp x0, 0x688000
00032be8add x0, x0, 3362
00032becmovz x1, 27
00032bf0bl runtime.printstring
00032bf4ldr x0, [sp+80]
00032bf8bl runtime.printuint
00032bfcadrp x0, 0x67d000
00032c00add x0, x0, 4049
00032c04orr x1, xzr, 2
00032c08bl runtime.printstring
00032c0cldr w0, [sp+52]
00032c10bl runtime.printuint
00032c14adrp x0, 0x67d000
00032c18add x0, x0, 4061
00032c1corr x1, xzr, 2
00032c20bl runtime.printstring
00032c24bl runtime.printunlock
00032c28adrp x0, 0x683000
00032c2cadd x0, x0, 4074
00032c30movz x1, 19
00032c34bl runtime.throw
00032c38
00032c38loc_32c38:
00032c38str x5, [sp+64]
00032c3cadd x6, x5, 16
00032c40ldar w6, [x6]
00032c44mov w6, w6
00032c48add x5, x5, 24
00032c4cadd x6, x6, x6, lsl #2
00032c50ubfm x1, x6, 61, 60
00032c54adrp x2, 0xa19000
00032c58add x2, x2, 3968
00032c5cmov x3, x0
00032c60mov x4, xzr
00032c64mov x0, x5
00032c68bl runtime.scanblock
00032c6cldr x5, [sp+64]
00032c70ldr x5, [x5]
00032c74ldr x0, [sp+168]
00032c78ldrb w2, [sp+180]
00032c7c
00032c7cloc_32c7c:
00032c7ccbnz x5, 0x32c38
00032c80mov x0, xzr
00032c84b 0x32b68
00032c88
00032c88loc_32c88:
00032c88str x2, [sp+72]
00032c8cldr x5, [x0+3*x2]
00032c90ldr x0, [x5+224]
00032c94ldr x6, [x5+232]
00032c98sub x1, x6, x0
00032c9cldr x2, [x5+560]
00032ca0adrp x27, 0x9f2000
00032ca4ldr w5, [x27+3052]
00032ca8ldr w6, [sp+176]
00032cacsub x5, x6, x5
00032cb0mov w4, w5
00032cb4ldr x3, [sp+168]
00032cb8bl runtime.markrootBlock
00032cbcldr x5, [sp+56]
00032cc0add x5, x5, x0
00032cc4str x5, [sp+56]
00032cc8ldr x5, [sp+72]
00032cccadd x2, x5, 1
00032cd0ldr x0, [sp+112]
00032cd4ldr x1, [sp+96]
00032cd8
00032cd8loc_32cd8:
00032cd8subs xzr, x1, x2
00032cdcb.gt 0x32c88
00032ce0adrp x0, 0xa1a000
00032ce4add x0, x0, 2672
00032ce8b 0x32b68
00032cec
00032cecloc_32cec:
00032cecstr x2, [sp+72]
00032cf0ldr x5, [x0+3*x2]
00032cf4ldr x0, [x5+208]
00032cf8ldr x6, [x5+216]
00032cfcsub x1, x6, x0
00032d00ldr x2, [x5+544]
00032d04adrp x27, 0x9f2000
00032d08ldr w5, [x27+3048]
00032d0cldr w6, [sp+176]
00032d10sub x5, x6, x5
00032d14mov w4, w5
00032d18ldr x3, [sp+168]
00032d1cbl runtime.markrootBlock
00032d20ldr x5, [sp+56]
00032d24add x5, x5, x0
00032d28str x5, [sp+56]
00032d2cldr x5, [sp+72]
00032d30add x2, x5, 1
00032d34ldr x0, [sp+112]
00032d38ldr x1, [sp+96]
00032d3c
00032d3cloc_32d3c:
00032d3csubs xzr, x1, x2
00032d40b.gt 0x32cec
00032d44adrp x0, 0xa1a000
00032d48add x0, x0, 2672
00032d4cb 0x32b68
00032d50
00032d50loc_32d50:
00032d50str x0, [sp+8]
00032d54str w1, [sp+16]
00032d58strb w2, [sp+20]
00032d5cmov x3, x30
00032d60bl runtime.morestack_noctxt.abi0
00032d64ldr x0, [sp+8]
00032d68ldr w1, [sp+16]
00032d6cldrb w2, [sp+20]
00032d70b 0x329c0
00032d74udf 0
00032d78udf 0
00032d7cudf 0
000329c0
000329c0runtime.markroot: ; void runtime.markroot(runtime.gcWork * gcw, uint32 i, bool flushBgCredit)
000329c0ldr x16, [x28+16]
000329c4sub x17, sp, 32
000329c8subs xzr, x17, x16
000329ccb.ls 0x32d50
000329d0str x30, [sp-160]!
000329d4stur x29, [sp-8]
000329d8sub x29, sp, 8
000329dcstr x0, [sp+168]
000329e0str w1, [sp+176]
000329e4strb w2, [sp+180]
000329e8str xzr, [sp+56]
000329ecadrp x27, 0x9f2000
000329f0ldr w5, [x27+3048]
000329f4subs wzr, w1, w5
000329f8b.lo 0x32a20
000329fcadrp x27, 0x9f2000
00032a00ldr w5, [x27+3052]
00032a04subs wzr, w1, w5
00032a08b.hs 0x32a20
00032a0cbl runtime.activeModules
00032a10str x0, [sp+112]
00032a14str x1, [sp+96]
00032a18mov x2, xzr
00032a1cb 0x32d3c
00032a20
00032a20loc_32a20:
00032a20adrp x27, 0x9f2000
00032a24ldr w5, [x27+3052]
00032a28subs wzr, w1, w5
00032a2cb.lo 0x32a54
00032a30adrp x27, 0x9f2000
00032a34ldr w5, [x27+3056]
00032a38subs wzr, w1, w5
00032a3cb.hs 0x32a54
00032a40bl runtime.activeModules
00032a44str x0, [sp+112]
00032a48str x1, [sp+96]
00032a4cmov x2, xzr
00032a50b 0x32cd8
00032a54
00032a54loc_32a54:
00032a54cbnz w1, 0x32a64
00032a58adrp x27, 0xa19000
00032a5cldr x5, [x27+1816]
00032a60b 0x32c7c
00032a64
00032a64loc_32a64:
00032a64subs wzr, w1, 1
00032a68b.eq 0x32b54
00032a6cadrp x27, 0x9f2000
00032a70ldr w3, [x27+3056]
00032a74subs wzr, w1, w3
00032a78b.lo 0x32aa0
00032a7cadrp x27, 0x9f2000
00032a80ldr w4, [x27+3060]
00032a84subs wzr, w1, w4
00032a88b.hs 0x32aa0
00032a8csub x2, x1, x3
00032a90mov w1, w2
00032a94bl runtime.markrootSpans
00032a98mov x0, xzr
00032a9cb 0x32b68
00032aa0
00032aa0loc_32aa0:
00032aa0adrp x27, 0x9f2000
00032aa4ldr w3, [x27+3060]
00032aa8subs wzr, w1, w3
00032aacb.lo 0x32ba4
00032ab0adrp x27, 0x9f2000
00032ab4ldr w4, [x27+3064]
00032ab8subs wzr, w1, w4
00032abcb.hs 0x32ba4
00032ac0adrp x27, 0x9f2000
00032ac4ldr x4, [x27+3080]
00032ac8sub x3, x1, x3
00032accmov w3, w3
00032ad0subs xzr, x3, x4
00032ad4b.hs 0x32b98
00032ad8adrp x27, 0x9f2000
00032adcldr x1, [x27+3072]
00032ae0ldr x0, [x1+3*x3]
00032ae4str x0, [sp+104]
00032ae8bl runtime.readgstatus
00032aecsubs wzr, w0, 4
00032af0b.eq 0x32afc
00032af4subs wzr, w0, 3
00032af8b.ne 0x32b18
00032afc
00032afcloc_32afc:
00032afcldr x0, [sp+104]
00032b00ldr x1, [x0+176]
00032b04cbnz x1, 0x32b1c
00032b08adrp x27, 0x9f2000
00032b0cldr x1, [x27+3000]
00032b10str x1, [x0+176]
00032b14b 0x32b1c
00032b18
00032b18loc_32b18:
00032b18ldr x0, [sp+104]
00032b1c
00032b1cloc_32b1c:
00032b1cadrp x1, 0
00032b20add x1, x1, 3456
00032b24str x1, [sp+120]
00032b28str x0, [sp+128]
00032b2cadd x0, sp, 56
00032b30str x0, [sp+136]
00032b34ldr x0, [sp+168]
00032b38str x0, [sp+144]
00032b3cadd x0, sp, 120
00032b40str x0, [sp+8]
00032b44bl runtime.systemstack.abi0
00032b48adrp x0, 0xa1a000
00032b4cadd x0, x0, 2664
00032b50b 0x32b68
00032b54
00032b54loc_32b54:
00032b54adrp x0, 0x6a6000
00032b58add x0, x0, 2400
00032b5cstr x0, [sp+8]
00032b60bl runtime.systemstack.abi0
00032b64mov x0, xzr
00032b68
00032b68loc_32b68:
00032b68cbz x0, 0x32b88
00032b6cldr x1, [sp+56]
00032b70cbz x1, 0x32b88
00032b74bl internal/runtime/atomic.(*Int64).Add
00032b78ldrb w0, [sp+180]
00032b7ctbz w0, 0, 0x32b88
00032b80ldr x0, [sp+56]
00032b84bl runtime.gcFlushBgCredit
00032b88
00032b88loc_32b88:
00032b88ldr x0, [sp+56]
00032b8cldur x29, [sp-8]
00032b90ldr x30, [sp], 160
00032b94ret x30
00032b98
00032b98loc_32b98:
00032b98mov x0, x3
00032b9cmov x1, x4
00032ba0bl runtime.panicIndex
00032ba4
00032ba4loc_32ba4:
00032ba4bl runtime.printlock
00032ba8ldr w0, [sp+176]
00032bacstr x0, [sp+88]
00032bb0adrp x27, 0x9f2000
00032bb4ldr w0, [x27+3060]
00032bb8str x0, [sp+80]
00032bbcadrp x27, 0x9f2000
00032bc0ldr w0, [x27+3064]
00032bc4str w0, [sp+52]
00032bc8bl runtime.printlock
00032bccadrp x0, 0x687000
00032bd0add x0, x0, 6
00032bd4orr x1, xzr, 24
00032bd8bl runtime.printstring
00032bdcldr x0, [sp+88]
00032be0bl runtime.printuint
00032be4adrp x0, 0x688000
00032be8add x0, x0, 3362
00032becmovz x1, 27
00032bf0bl runtime.printstring
00032bf4ldr x0, [sp+80]
00032bf8bl runtime.printuint
00032bfcadrp x0, 0x67d000
00032c00add x0, x0, 4049
00032c04orr x1, xzr, 2
00032c08bl runtime.printstring
00032c0cldr w0, [sp+52]
00032c10bl runtime.printuint
00032c14adrp x0, 0x67d000
00032c18add x0, x0, 4061
00032c1corr x1, xzr, 2
00032c20bl runtime.printstring
00032c24bl runtime.printunlock
00032c28adrp x0, 0x683000
00032c2cadd x0, x0, 4074
00032c30movz x1, 19
00032c34bl runtime.throw
00032c38
00032c38loc_32c38:
00032c38str x5, [sp+64]
00032c3cadd x6, x5, 16
00032c40ldar w6, [x6]
00032c44mov w6, w6
00032c48add x5, x5, 24
00032c4cadd x6, x6, x6, lsl #2
00032c50ubfm x1, x6, 61, 60
00032c54adrp x2, 0xa19000
00032c58add x2, x2, 3968
00032c5cmov x3, x0
00032c60mov x4, xzr
00032c64mov x0, x5
00032c68bl runtime.scanblock
00032c6cldr x5, [sp+64]
00032c70ldr x5, [x5]
00032c74ldr x0, [sp+168]
00032c78ldrb w2, [sp+180]
00032c7c
00032c7cloc_32c7c:
00032c7ccbnz x5, 0x32c38
00032c80mov x0, xzr
00032c84b 0x32b68
00032c88
00032c88loc_32c88:
00032c88str x2, [sp+72]
00032c8cldr x5, [x0+3*x2]
00032c90ldr x0, [x5+224]
00032c94ldr x6, [x5+232]
00032c98sub x1, x6, x0
00032c9cldr x2, [x5+560]
00032ca0adrp x27, 0x9f2000
00032ca4ldr w5, [x27+3052]
00032ca8ldr w6, [sp+176]
00032cacsub x5, x6, x5
00032cb0mov w4, w5
00032cb4ldr x3, [sp+168]
00032cb8bl runtime.markrootBlock
00032cbcldr x5, [sp+56]
00032cc0add x5, x5, x0
00032cc4str x5, [sp+56]
00032cc8ldr x5, [sp+72]
00032cccadd x2, x5, 1
00032cd0ldr x0, [sp+112]
00032cd4ldr x1, [sp+96]
00032cd8
00032cd8loc_32cd8:
00032cd8subs xzr, x1, x2
00032cdcb.gt 0x32c88
00032ce0adrp x0, 0xa1a000
00032ce4add x0, x0, 2672
00032ce8b 0x32b68
00032cec
00032cecloc_32cec:
00032cecstr x2, [sp+72]
00032cf0ldr x5, [x0+3*x2]
00032cf4ldr x0, [x5+208]
00032cf8ldr x6, [x5+216]
00032cfcsub x1, x6, x0
00032d00ldr x2, [x5+544]
00032d04adrp x27, 0x9f2000
00032d08ldr w5, [x27+3048]
00032d0cldr w6, [sp+176]
00032d10sub x5, x6, x5
00032d14mov w4, w5
00032d18ldr x3, [sp+168]
00032d1cbl runtime.markrootBlock
00032d20ldr x5, [sp+56]
00032d24add x5, x5, x0
00032d28str x5, [sp+56]
00032d2cldr x5, [sp+72]
00032d30add x2, x5, 1
00032d34ldr x0, [sp+112]
00032d38ldr x1, [sp+96]
00032d3c
00032d3cloc_32d3c:
00032d3csubs xzr, x1, x2
00032d40b.gt 0x32cec
00032d44adrp x0, 0xa1a000
00032d48add x0, x0, 2672
00032d4cb 0x32b68
00032d50
00032d50loc_32d50:
00032d50str x0, [sp+8]
00032d54str w1, [sp+16]
00032d58strb w2, [sp+20]
00032d5cmov x3, x30
00032d60bl runtime.morestack_noctxt.abi0
00032d64ldr x0, [sp+8]
00032d68ldr w1, [sp+16]
00032d6cldrb w2, [sp+20]
00032d70b 0x329c0
00032d74udf 0
00032d78udf 0
00032d7cudf 0
000329c0
00032d80
00032d80runtime.markroot.func1: ; void runtime.markroot.func1(void)
00032d80ldr x16, [x28+16]
00032d84subs xzr, sp, x16
00032d88b.ls 0x32eb0
00032d8cstr x30, [sp-80]!
00032d90stur x29, [sp-8]
00032d94sub x29, sp, 8
00032d98ldr x0, [x26+8]
00032d9cstr x0, [sp+40]
00032da0ldr x3, [x28+48]
00032da4ldr x3, [x3+192]
00032da8str x3, [sp+32]
00032dacldr x4, [x26+16]
00032db0str x4, [sp+64]
00032db4ldr x5, [x26+24]
00032db8str x5, [sp+48]
00032dbcsubs xzr, x3, x0
00032dc0b.eq 0x32dcc
00032dc4mov x1, xzr
00032dc8b 0x32dec
00032dcc
00032dccloc_32dcc:
00032dccmov x0, x3
00032dd0bl runtime.readgstatus
00032dd4subs wzr, w0, 2
00032dd8cset x1, eq
00032ddcldr x0, [sp+40]
00032de0ldr x3, [sp+32]
00032de4ldr x4, [sp+64]
00032de8ldr x5, [sp+48]
00032dec
00032decloc_32dec:
00032decstrb w1, [sp+29]
00032df0tbz w1, 0, 0x32e08
00032df4mov x0, x3
00032df8orr x1, xzr, 2
00032dfcorr x2, xzr, 7
00032e00bl runtime.casGToWaitingForSuspendG
00032e04ldr x0, [sp+40]
00032e08
00032e08loc_32e08:
00032e08bl runtime.suspendG
00032e0ctbnz w1, 0, 0x32e84
00032e10ldr x3, [sp+40]
00032e14ldrb w4, [x3+190]
00032e18tbnz w4, 0, 0x32e9c
00032e1cstrb w2, [sp+31]
00032e20strb w1, [sp+30]
00032e24str x0, [sp+56]
00032e28mov x0, x3
00032e2cldr x1, [sp+48]
00032e30bl runtime.scanstack
00032e34ldr x2, [sp+64]
00032e38ldr x3, [x2]
00032e3cadd x3, x3, x0
00032e40str x3, [x2]
00032e44orr x2, xzr, 1
00032e48ldr x3, [sp+40]
00032e4cstrb w2, [x3+190]
00032e50ldr x0, [sp+56]
00032e54ldrb w1, [sp+30]
00032e58ldrb w2, [sp+31]
00032e5cbl runtime.resumeG
00032e60ldrb w0, [sp+29]
00032e64tbz w0, 0, 0x32e78
00032e68ldr x0, [sp+32]
00032e6corr x1, xzr, 4
00032e70orr x2, xzr, 2
00032e74bl runtime.casgstatus
00032e78
00032e78loc_32e78:
00032e78ldur x29, [sp-8]
00032e7cldr x30, [sp], 80
00032e80ret x30
00032e84
00032e84loc_32e84:
00032e84orr x0, xzr, 1
00032e88ldr x1, [sp+40]
00032e8cstrb w0, [x1+190]
00032e90ldur x29, [sp-8]
00032e94ldr x30, [sp], 80
00032e98ret x30
00032e9c
00032e9cloc_32e9c:
00032e9cadrp x0, 0x683000
00032ea0add x0, x0, 149
00032ea4movz x1, 17
00032ea8bl runtime.throw
00032eachint
00032eb0
00032eb0loc_32eb0:
00032eb0mov x3, x30
00032eb4bl runtime.morestack.abi0
00032eb8b 0x32d80
00032ebcudf 0
00032d80
00032d80runtime.markroot.func1: ; void runtime.markroot.func1(void)
00032d80ldr x16, [x28+16]
00032d84subs xzr, sp, x16
00032d88b.ls 0x32eb0
00032d8cstr x30, [sp-80]!
00032d90stur x29, [sp-8]
00032d94sub x29, sp, 8
00032d98ldr x0, [x26+8]
00032d9cstr x0, [sp+40]
00032da0ldr x3, [x28+48]
00032da4ldr x3, [x3+192]
00032da8str x3, [sp+32]
00032dacldr x4, [x26+16]
00032db0str x4, [sp+64]
00032db4ldr x5, [x26+24]
00032db8str x5, [sp+48]
00032dbcsubs xzr, x3, x0
00032dc0b.eq 0x32dcc
00032dc4mov x1, xzr
00032dc8b 0x32dec
00032dcc
00032dccloc_32dcc:
00032dccmov x0, x3
00032dd0bl runtime.readgstatus
00032dd4subs wzr, w0, 2
00032dd8cset x1, eq
00032ddcldr x0, [sp+40]
00032de0ldr x3, [sp+32]
00032de4ldr x4, [sp+64]
00032de8ldr x5, [sp+48]
00032dec
00032decloc_32dec:
00032decstrb w1, [sp+29]
00032df0tbz w1, 0, 0x32e08
00032df4mov x0, x3
00032df8orr x1, xzr, 2
00032dfcorr x2, xzr, 7
00032e00bl runtime.casGToWaitingForSuspendG
00032e04ldr x0, [sp+40]
00032e08
00032e08loc_32e08:
00032e08bl runtime.suspendG
00032e0ctbnz w1, 0, 0x32e84
00032e10ldr x3, [sp+40]
00032e14ldrb w4, [x3+190]
00032e18tbnz w4, 0, 0x32e9c
00032e1cstrb w2, [sp+31]
00032e20strb w1, [sp+30]
00032e24str x0, [sp+56]
00032e28mov x0, x3
00032e2cldr x1, [sp+48]
00032e30bl runtime.scanstack
00032e34ldr x2, [sp+64]
00032e38ldr x3, [x2]
00032e3cadd x3, x3, x0
00032e40str x3, [x2]
00032e44orr x2, xzr, 1
00032e48ldr x3, [sp+40]
00032e4cstrb w2, [x3+190]
00032e50ldr x0, [sp+56]
00032e54ldrb w1, [sp+30]
00032e58ldrb w2, [sp+31]
00032e5cbl runtime.resumeG
00032e60ldrb w0, [sp+29]
00032e64tbz w0, 0, 0x32e78
00032e68ldr x0, [sp+32]
00032e6corr x1, xzr, 4
00032e70orr x2, xzr, 2
00032e74bl runtime.casgstatus
00032e78
00032e78loc_32e78:
00032e78ldur x29, [sp-8]
00032e7cldr x30, [sp], 80
00032e80ret x30
00032e84
00032e84loc_32e84:
00032e84orr x0, xzr, 1
00032e88ldr x1, [sp+40]
00032e8cstrb w0, [x1+190]
00032e90ldur x29, [sp-8]
00032e94ldr x30, [sp], 80
00032e98ret x30
00032e9c
00032e9cloc_32e9c:
00032e9cadrp x0, 0x683000
00032ea0add x0, x0, 149
00032ea4movz x1, 17
00032ea8bl runtime.throw
00032eachint
00032eb0
00032eb0loc_32eb0:
00032eb0mov x3, x30
00032eb4bl runtime.morestack.abi0
00032eb8b 0x32d80
00032ebcudf 0
00032d80
00032ec0
00032ec0runtime.markrootBlock: ; void runtime.markrootBlock(uintptr b0, uintptr n0, uint8 * ptrmask0, runtime.gcWork * gcw, int shard)
00032ec0ldr x16, [x28+16]
00032ec4subs xzr, sp, x16
00032ec8b.ls 0x32f60
00032eccstr x30, [sp-80]!
00032ed0stur x29, [sp-8]
00032ed4sub x29, sp, 8
00032ed8subs xzr, x1, x4, lsl #18
00032edcb.hi 0x32ef0
00032ee0mov x0, xzr
00032ee4ldur x29, [sp-8]
00032ee8ldr x30, [sp], 80
00032eecret x30
00032ef0
00032ef0loc_32ef0:
00032ef0str x1, [sp+96]
00032ef4str x3, [sp+112]
00032ef8str x4, [sp+120]
00032efcubfm x3, x4, 46, 45
00032f00str x3, [sp+48]
00032f04add x3, x0, x4, lsl #18
00032f08str x3, [sp+64]
00032f0cubfm x1, x4, 52, 51
00032f10mov x0, x2
00032f14bl runtime.add
00032f18ldr x2, [sp+48]
00032f1cadd x2, x2, 0x40000
00032f20ldr x3, [sp+96]
00032f24ldr x4, [sp+120]
00032f28sub x4, x3, x4, lsl #18
00032f2csubs xzr, x3, x2
00032f30orr x2, xzr, 0x40000
00032f34csel x1, x4, x2, lo
00032f38str x1, [sp+56]
00032f3cmov x2, x0
00032f40ldr x3, [sp+112]
00032f44mov x4, xzr
00032f48ldr x0, [sp+64]
00032f4cbl runtime.scanblock
00032f50ldr x0, [sp+56]
00032f54ldur x29, [sp-8]
00032f58ldr x30, [sp], 80
00032f5cret x30
00032f60
00032f60loc_32f60:
00032f60stp x0, x1, [sp+8]
00032f64stp x2, x3, [sp+24]
00032f68str x4, [sp+40]
00032f6cmov x3, x30
00032f70bl runtime.morestack_noctxt.abi0
00032f74ldp x0, x1, [sp+8]
00032f78ldp x2, x3, [sp+24]
00032f7cldr x4, [sp+40]
00032f80b 0x32ec0
00032f84udf 0
00032f88udf 0
00032f8cudf 0
00032ec0
00032ec0runtime.markrootBlock: ; void runtime.markrootBlock(uintptr b0, uintptr n0, uint8 * ptrmask0, runtime.gcWork * gcw, int shard)
00032ec0ldr x16, [x28+16]
00032ec4subs xzr, sp, x16
00032ec8b.ls 0x32f60
00032eccstr x30, [sp-80]!
00032ed0stur x29, [sp-8]
00032ed4sub x29, sp, 8
00032ed8subs xzr, x1, x4, lsl #18
00032edcb.hi 0x32ef0
00032ee0mov x0, xzr
00032ee4ldur x29, [sp-8]
00032ee8ldr x30, [sp], 80
00032eecret x30
00032ef0
00032ef0loc_32ef0:
00032ef0str x1, [sp+96]
00032ef4str x3, [sp+112]
00032ef8str x4, [sp+120]
00032efcubfm x3, x4, 46, 45
00032f00str x3, [sp+48]
00032f04add x3, x0, x4, lsl #18
00032f08str x3, [sp+64]
00032f0cubfm x1, x4, 52, 51
00032f10mov x0, x2
00032f14bl runtime.add
00032f18ldr x2, [sp+48]
00032f1cadd x2, x2, 0x40000
00032f20ldr x3, [sp+96]
00032f24ldr x4, [sp+120]
00032f28sub x4, x3, x4, lsl #18
00032f2csubs xzr, x3, x2
00032f30orr x2, xzr, 0x40000
00032f34csel x1, x4, x2, lo
00032f38str x1, [sp+56]
00032f3cmov x2, x0
00032f40ldr x3, [sp+112]
00032f44mov x4, xzr
00032f48ldr x0, [sp+64]
00032f4cbl runtime.scanblock
00032f50ldr x0, [sp+56]
00032f54ldur x29, [sp-8]
00032f58ldr x30, [sp], 80
00032f5cret x30
00032f60
00032f60loc_32f60:
00032f60stp x0, x1, [sp+8]
00032f64stp x2, x3, [sp+24]
00032f68str x4, [sp+40]
00032f6cmov x3, x30
00032f70bl runtime.morestack_noctxt.abi0
00032f74ldp x0, x1, [sp+8]
00032f78ldp x2, x3, [sp+24]
00032f7cldr x4, [sp+40]
00032f80b 0x32ec0
00032f84udf 0
00032f88udf 0
00032f8cudf 0
00032ec0
00032f90
00032f90runtime.markrootFreeGStacks: ; void runtime.markrootFreeGStacks(void)
00032f90ldr x16, [x28+16]
00032f94subs xzr, sp, x16
00032f98b.ls 0x3306c
00032f9cstr x30, [sp-80]!
00032fa0stur x29, [sp-8]
00032fa4sub x29, sp, 8
00032fa8adrp x0, 0x9f5000
00032facadd x0, x0, 288
00032fb0bl runtime.lock
00032fb4adrp x27, 0x9f5000
00032fb8ldr x1, [x27+296]
00032fbcstr x1, [sp+56]
00032fc0adrp x27, 0x9f5000
00032fc4str xzr, [x27+296]
00032fc8adrp x0, 0x9f5000
00032fccadd x0, x0, 288
00032fd0bl runtime.unlock
00032fd4add x0, sp, 56
00032fd8bl runtime.(*gList).empty
00032fdctbnz w0, 0, 0x32ff8
00032fe0ldr x1, [sp+56]
00032fe4str x1, [sp+40]
00032fe8str x1, [sp+48]
00032fecldr x0, [sp+56]
00032ff0bl runtime.guintptr.ptr
00032ff4b 0x33030
00032ff8
00032ff8loc_32ff8:
00032ff8ldur x29, [sp-8]
00032ffcldr x30, [sp], 80
00033000ret x30
00033004
00033004loc_33004:
00033004str x0, [sp+64]
00033008ldr x1, [x0+8]
0003300cldr x0, [x0]
00033010bl runtime.stackfree
00033014ldr x1, [sp+64]
00033018stp xzr, xzr, [x1]
0003301cadd x0, sp, 48
00033020bl runtime.(*guintptr).set
00033024ldr x2, [sp+64]
00033028ldr x0, [x2+168]
0003302cbl runtime.guintptr.ptr
00033030
00033030loc_33030:
00033030cbnz x0, 0x33004
00033034adrp x0, 0x9f4000
00033038add x0, x0, 288
0003303cbl runtime.lock
00033040ldr x1, [sp+40]
00033044ldr x2, [sp+48]
00033048adrp x0, 0x9f4000
0003304cadd x0, x0, 304
00033050bl runtime.(*gList).pushAll
00033054adrp x0, 0x9f4000
00033058add x0, x0, 288
0003305cbl runtime.unlock
00033060ldur x29, [sp-8]
00033064ldr x30, [sp], 80
00033068ret x30
0003306c
0003306cloc_3306c:
0003306cmov x3, x30
00033070bl runtime.morestack_noctxt.abi0
00033074b 0x32f90
00033078udf 0
0003307cudf 0
00032f90
00032f90runtime.markrootFreeGStacks: ; void runtime.markrootFreeGStacks(void)
00032f90ldr x16, [x28+16]
00032f94subs xzr, sp, x16
00032f98b.ls 0x3306c
00032f9cstr x30, [sp-80]!
00032fa0stur x29, [sp-8]
00032fa4sub x29, sp, 8
00032fa8adrp x0, 0x9f5000
00032facadd x0, x0, 288
00032fb0bl runtime.lock
00032fb4adrp x27, 0x9f5000
00032fb8ldr x1, [x27+296]
00032fbcstr x1, [sp+56]
00032fc0adrp x27, 0x9f5000
00032fc4str xzr, [x27+296]
00032fc8adrp x0, 0x9f5000
00032fccadd x0, x0, 288
00032fd0bl runtime.unlock
00032fd4add x0, sp, 56
00032fd8bl runtime.(*gList).empty
00032fdctbnz w0, 0, 0x32ff8
00032fe0ldr x1, [sp+56]
00032fe4str x1, [sp+40]
00032fe8str x1, [sp+48]
00032fecldr x0, [sp+56]
00032ff0bl runtime.guintptr.ptr
00032ff4b 0x33030
00032ff8
00032ff8loc_32ff8:
00032ff8ldur x29, [sp-8]
00032ffcldr x30, [sp], 80
00033000ret x30
00033004
00033004loc_33004:
00033004str x0, [sp+64]
00033008ldr x1, [x0+8]
0003300cldr x0, [x0]
00033010bl runtime.stackfree
00033014ldr x1, [sp+64]
00033018stp xzr, xzr, [x1]
0003301cadd x0, sp, 48
00033020bl runtime.(*guintptr).set
00033024ldr x2, [sp+64]
00033028ldr x0, [x2+168]
0003302cbl runtime.guintptr.ptr
00033030
00033030loc_33030:
00033030cbnz x0, 0x33004
00033034adrp x0, 0x9f4000
00033038add x0, x0, 288
0003303cbl runtime.lock
00033040ldr x1, [sp+40]
00033044ldr x2, [sp+48]
00033048adrp x0, 0x9f4000
0003304cadd x0, x0, 304
00033050bl runtime.(*gList).pushAll
00033054adrp x0, 0x9f4000
00033058add x0, x0, 288
0003305cbl runtime.unlock
00033060ldur x29, [sp-8]
00033064ldr x30, [sp], 80
00033068ret x30
0003306c
0003306cloc_3306c:
0003306cmov x3, x30
00033070bl runtime.morestack_noctxt.abi0
00033074b 0x32f90
00033078udf 0
0003307cudf 0
00032f90
00033080
00033080runtime.markrootSpans: ; void runtime.markrootSpans(runtime.gcWork * gcw, int shard)
00033080ldr x16, [x28+16]
00033084sub x17, sp, 48
00033088subs xzr, x17, x16
0003308cb.ls 0x33414
00033090str x30, [sp-176]!
00033094stur x29, [sp-8]
00033098sub x29, sp, 8
0003309cadrp x27, 0xa0f000
000330a0ldr x2, [x27+2792]
000330a4sbfm x3, x1, 63, 63
000330a8add x3, x1, x3, lsr #60
000330acadrp x27, 0xa0f000
000330b0ldr w4, [x27+2432]
000330b4sbfm x5, x3, 4, 63
000330b8subs xzr, x2, x3, asr #4
000330bcb.ls 0x33404
000330c0str x0, [sp+184]
000330c4str x1, [sp+192]
000330c8str w4, [sp+64]
000330ccadrp x27, 0xa0f000
000330d0ldr x1, [x27+2784]
000330d4ldr x0, [x1+3*x5]
000330d8str x0, [sp+112]
000330dcbl runtime.arenaIdx.l1
000330e0str x0, [sp+144]
000330e4ldr x0, [sp+112]
000330e8bl runtime.arenaIdx.l2
000330ecldr x1, [sp+144]
000330f0subs xzr, x1, 1
000330f4b.hs 0x333f8
000330f8subs xzr, x0, 0x400000
000330fcb.hs 0x333f0
00033100adrp x27, 0xa0f000
00033104ldr x3, [x27+2648]
00033108ldrsb x27, [x3]
0003310cldr x3, [x3+3*x0]
00033110ldrsb x27, [x3]
00033114ldr x4, [sp+192]
00033118ubfm x0, x4, 58, 3
0003311cmovz x5, 2048
00033120movk x5, 0x10000
00033124add x5, x3, x5
00033128subs xzr, x0, 1024
0003312cb.hi 0x333e8
00033130ubfm x4, x4, 55, 3
00033134orr x6, xzr, 1024
00033138sub x2, x6, x4, lsr #3
0003313csub x6, xzr, x2
00033140sbfm x6, x6, 63, 63
00033144and x6, x6, x4, lsr #3
00033148add x5, x6, x5
0003314csubs xzr, x2, 64
00033150b.lo 0x333e0
00033154str x3, [sp+104]
00033158str x4, [sp+136]
0003315cstr x5, [sp+152]
00033160mov x0, xzr
00033164b 0x3316c
00033168
00033168loc_33168:
00033168add x0, x0, 1
0003316c
0003316cloc_3316c:
0003316csubs xzr, x0, 64
00033170b.ge 0x33194
00033174add x2, x0, x5
00033178ldarb w2, [x2]
0003317cubfm x6, x2, 0, 7
00033180cbz w6, 0x33168
00033184str x0, [sp+96]
00033188strb w2, [sp+63]
0003318cmov x1, xzr
00033190b 0x331a4
00033194
00033194loc_33194:
00033194ldur x29, [sp-8]
00033198ldr x30, [sp], 176
0003319cret x30
000331a0
000331a0loc_331a0:
000331a0add x1, x1, 1
000331a4
000331a4loc_331a4:
000331a4subs xzr, x1, 8
000331a8b.hs 0x33168
000331acorr x6, xzr, 1
000331b0lslv x7, x6, x1
000331b4and x7, x2, x7
000331b8ubfm x7, x7, 0, 7
000331bccbz w7, 0x331a0
000331c0add x7, x4, x0, lsl #3
000331c4add x7, x1, x7
000331c8subs xzr, x7, 8192
000331ccb.hs 0x333d4
000331d0str x1, [sp+88]
000331d4ldr x1, [x3+3*x7]
000331d8str x1, [sp+72]
000331dcldrsb x27, [x1]
000331e0add x0, x1, 99
000331e4bl runtime.(*mSpanStateBox).get
000331e8ubfm x1, x0, 0, 7
000331ecsubs wzr, w1, 1
000331f0b.ne 0x3339c
000331f4adrp x27, 0xa18000
000331f8ldrb w1, [x27+1519]
000331fctbz w1, 0, 0x33208
00033200ldr x1, [sp+72]
00033204b 0x33228
00033208
00033208loc_33208:
00033208ldr x1, [sp+72]
0003320cldr w2, [x1+88]
00033210ldr w3, [sp+64]
00033214subs wzr, w2, w3
00033218b.eq 0x33228
0003321cadd x4, x3, 3
00033220subs wzr, w2, w4
00033224b.ne 0x33350
00033228
00033228loc_33228:
00033228add x0, x1, 120
0003322cstr x0, [sp+160]
00033230bl runtime.lock
00033234ldr x0, [sp+72]
00033238ldr x1, [x0+128]
0003323cb 0x3326c
00033240
00033240loc_33240:
00033240ldr x0, [sp+160]
00033244bl runtime.unlock
00033248ldr x0, [sp+96]
0003324cldr x1, [sp+88]
00033250ldrb w2, [sp+63]
00033254ldr x3, [sp+104]
00033258ldr x4, [sp+136]
0003325cldr x5, [sp+152]
00033260orr x6, xzr, 1
00033264b 0x331a0
00033268
00033268loc_33268:
00033268ldr x1, [x1]
0003326c
0003326cloc_3326c:
0003326ccbz x1, 0x33240
00033270str x1, [sp+128]
00033274ldrb w5, [x1+16]
00033278subs wzr, w5, 1
0003327cb.eq 0x332e0
00033280subs wzr, w5, 2
00033284b.eq 0x332b8
00033288subs wzr, w5, 6
0003328cb.ne 0x33268
00033290add x0, x1, 24
00033294orr x1, xzr, 8
00033298adrp x2, 0x98d000
0003329cadd x2, x2, 1377
000332a0ldr x3, [sp+184]
000332a4mov x4, xzr
000332a8bl runtime.scanblock
000332acldr x0, [sp+72]
000332b0ldr x1, [sp+128]
000332b4b 0x33268
000332b8
000332b8loc_332b8:
000332b8add x0, x1, 24
000332bcorr x1, xzr, 8
000332c0adrp x2, 0x98d000
000332c4add x2, x2, 1377
000332c8ldr x3, [sp+184]
000332ccmov x4, xzr
000332d0bl runtime.scanblock
000332d4ldr x0, [sp+72]
000332d8ldr x1, [sp+128]
000332dcb 0x33268
000332e0
000332e0loc_332e0:
000332e0bl runtime.(*mspan).base
000332e4ldr x1, [sp+72]
000332e8ldr x2, [x1+104]
000332eccbz x2, 0x3334c
000332f0ldr x3, [sp+128]
000332f4ldr x3, [x3+8]
000332f8udiv x3, x3, x2
000332fcldrb w1, [x1+98]
00033300madd x2, x2, x3, x0
00033304str x2, [sp+80]
00033308mov x0, x1
0003330cbl runtime.spanClass.noscan
00033310tbnz w0, 0, 0x33320
00033314ldr x0, [sp+80]
00033318ldr x1, [sp+184]
0003331cbl runtime.scanobject
00033320
00033320loc_33320:
00033320ldr x5, [sp+128]
00033324add x0, x5, 24
00033328orr x1, xzr, 8
0003332cadrp x2, 0x98d000
00033330add x2, x2, 1377
00033334ldr x3, [sp+184]
00033338mov x4, xzr
0003333cbl runtime.scanblock
00033340ldr x0, [sp+72]
00033344ldr x1, [sp+128]
00033348b 0x33268
0003334c
0003334cloc_3334c:
0003334cbl runtime.panicdivide
00033350
00033350loc_33350:
00033350str w2, [sp+68]
00033354bl runtime.printlock
00033358adrp x0, 0x67d000
0003335cadd x0, x0, 2413
00033360orr x1, xzr, 6
00033364bl runtime.printstring
00033368ldr w0, [sp+64]
0003336cstr x0, [sp+120]
00033370ldr w0, [sp+68]
00033374bl runtime.printuint
00033378bl runtime.printsp
0003337cldr x0, [sp+120]
00033380bl runtime.printuint
00033384bl runtime.printnl
00033388bl runtime.printunlock
0003338cadrp x0, 0x681000
00033390add x0, x0, 2244
00033394orr x1, xzr, 16
00033398bl runtime.throw
0003339c
0003339cloc_3339c:
0003339cstrb w0, [sp+62]
000333a0bl runtime.printlock
000333a4adrp x0, 0x67f000
000333a8add x0, x0, 194
000333acmovz x1, 10
000333b0bl runtime.printstring
000333b4ldrb w0, [sp+62]
000333b8bl runtime.printuint
000333bcbl runtime.printnl
000333c0bl runtime.printunlock
000333c4adrp x0, 0x692000
000333c8add x0, x0, 3096
000333ccmovz x1, 43
000333d0bl runtime.throw
000333d4
000333d4loc_333d4:
000333d4mov x0, x7
000333d8orr x1, xzr, 8192
000333dcbl runtime.panicIndexU
000333e0
000333e0loc_333e0:
000333e0orr x1, xzr, 64
000333e4bl runtime.panicSliceAcap
000333e8
000333e8loc_333e8:
000333e8orr x1, xzr, 1024
000333ecbl runtime.panicSliceBU
000333f0
000333f0loc_333f0:
000333f0orr x1, xzr, 0x400000
000333f4bl runtime.panicIndexU
000333f8
000333f8loc_333f8:
000333f8mov x0, x1
000333fcorr x1, xzr, 1
00033400bl runtime.panicIndexU
00033404
00033404loc_33404:
00033404mov x0, x5
00033408mov x1, x2
0003340cbl runtime.panicIndex
00033410hint
00033414
00033414loc_33414:
00033414stp x0, x1, [sp+8]
00033418mov x3, x30
0003341cbl runtime.morestack_noctxt.abi0
00033420ldp x0, x1, [sp+8]
00033424b 0x33080
00033428udf 0
0003342cudf 0
00033080
00033080runtime.markrootSpans: ; void runtime.markrootSpans(runtime.gcWork * gcw, int shard)
00033080ldr x16, [x28+16]
00033084sub x17, sp, 48
00033088subs xzr, x17, x16
0003308cb.ls 0x33414
00033090str x30, [sp-176]!
00033094stur x29, [sp-8]
00033098sub x29, sp, 8
0003309cadrp x27, 0xa0f000
000330a0ldr x2, [x27+2792]
000330a4sbfm x3, x1, 63, 63
000330a8add x3, x1, x3, lsr #60
000330acadrp x27, 0xa0f000
000330b0ldr w4, [x27+2432]
000330b4sbfm x5, x3, 4, 63
000330b8subs xzr, x2, x3, asr #4
000330bcb.ls 0x33404
000330c0str x0, [sp+184]
000330c4str x1, [sp+192]
000330c8str w4, [sp+64]
000330ccadrp x27, 0xa0f000
000330d0ldr x1, [x27+2784]
000330d4ldr x0, [x1+3*x5]
000330d8str x0, [sp+112]
000330dcbl runtime.arenaIdx.l1
000330e0str x0, [sp+144]
000330e4ldr x0, [sp+112]
000330e8bl runtime.arenaIdx.l2
000330ecldr x1, [sp+144]
000330f0subs xzr, x1, 1
000330f4b.hs 0x333f8
000330f8subs xzr, x0, 0x400000
000330fcb.hs 0x333f0
00033100adrp x27, 0xa0f000
00033104ldr x3, [x27+2648]
00033108ldrsb x27, [x3]
0003310cldr x3, [x3+3*x0]
00033110ldrsb x27, [x3]
00033114ldr x4, [sp+192]
00033118ubfm x0, x4, 58, 3
0003311cmovz x5, 2048
00033120movk x5, 0x10000
00033124add x5, x3, x5
00033128subs xzr, x0, 1024
0003312cb.hi 0x333e8
00033130ubfm x4, x4, 55, 3
00033134orr x6, xzr, 1024
00033138sub x2, x6, x4, lsr #3
0003313csub x6, xzr, x2
00033140sbfm x6, x6, 63, 63
00033144and x6, x6, x4, lsr #3
00033148add x5, x6, x5
0003314csubs xzr, x2, 64
00033150b.lo 0x333e0
00033154str x3, [sp+104]
00033158str x4, [sp+136]
0003315cstr x5, [sp+152]
00033160mov x0, xzr
00033164b 0x3316c
00033168
00033168loc_33168:
00033168add x0, x0, 1
0003316c
0003316cloc_3316c:
0003316csubs xzr, x0, 64
00033170b.ge 0x33194
00033174add x2, x0, x5
00033178ldarb w2, [x2]
0003317cubfm x6, x2, 0, 7
00033180cbz w6, 0x33168
00033184str x0, [sp+96]
00033188strb w2, [sp+63]
0003318cmov x1, xzr
00033190b 0x331a4
00033194
00033194loc_33194:
00033194ldur x29, [sp-8]
00033198ldr x30, [sp], 176
0003319cret x30
000331a0
000331a0loc_331a0:
000331a0add x1, x1, 1
000331a4
000331a4loc_331a4:
000331a4subs xzr, x1, 8
000331a8b.hs 0x33168
000331acorr x6, xzr, 1
000331b0lslv x7, x6, x1
000331b4and x7, x2, x7
000331b8ubfm x7, x7, 0, 7
000331bccbz w7, 0x331a0
000331c0add x7, x4, x0, lsl #3
000331c4add x7, x1, x7
000331c8subs xzr, x7, 8192
000331ccb.hs 0x333d4
000331d0str x1, [sp+88]
000331d4ldr x1, [x3+3*x7]
000331d8str x1, [sp+72]
000331dcldrsb x27, [x1]
000331e0add x0, x1, 99
000331e4bl runtime.(*mSpanStateBox).get
000331e8ubfm x1, x0, 0, 7
000331ecsubs wzr, w1, 1
000331f0b.ne 0x3339c
000331f4adrp x27, 0xa18000
000331f8ldrb w1, [x27+1519]
000331fctbz w1, 0, 0x33208
00033200ldr x1, [sp+72]
00033204b 0x33228
00033208
00033208loc_33208:
00033208ldr x1, [sp+72]
0003320cldr w2, [x1+88]
00033210ldr w3, [sp+64]
00033214subs wzr, w2, w3
00033218b.eq 0x33228
0003321cadd x4, x3, 3
00033220subs wzr, w2, w4
00033224b.ne 0x33350
00033228
00033228loc_33228:
00033228add x0, x1, 120
0003322cstr x0, [sp+160]
00033230bl runtime.lock
00033234ldr x0, [sp+72]
00033238ldr x1, [x0+128]
0003323cb 0x3326c
00033240
00033240loc_33240:
00033240ldr x0, [sp+160]
00033244bl runtime.unlock
00033248ldr x0, [sp+96]
0003324cldr x1, [sp+88]
00033250ldrb w2, [sp+63]
00033254ldr x3, [sp+104]
00033258ldr x4, [sp+136]
0003325cldr x5, [sp+152]
00033260orr x6, xzr, 1
00033264b 0x331a0
00033268
00033268loc_33268:
00033268ldr x1, [x1]
0003326c
0003326cloc_3326c:
0003326ccbz x1, 0x33240
00033270str x1, [sp+128]
00033274ldrb w5, [x1+16]
00033278subs wzr, w5, 1
0003327cb.eq 0x332e0
00033280subs wzr, w5, 2
00033284b.eq 0x332b8
00033288subs wzr, w5, 6
0003328cb.ne 0x33268
00033290add x0, x1, 24
00033294orr x1, xzr, 8
00033298adrp x2, 0x98d000
0003329cadd x2, x2, 1377
000332a0ldr x3, [sp+184]
000332a4mov x4, xzr
000332a8bl runtime.scanblock
000332acldr x0, [sp+72]
000332b0ldr x1, [sp+128]
000332b4b 0x33268
000332b8
000332b8loc_332b8:
000332b8add x0, x1, 24
000332bcorr x1, xzr, 8
000332c0adrp x2, 0x98d000
000332c4add x2, x2, 1377
000332c8ldr x3, [sp+184]
000332ccmov x4, xzr
000332d0bl runtime.scanblock
000332d4ldr x0, [sp+72]
000332d8ldr x1, [sp+128]
000332dcb 0x33268
000332e0
000332e0loc_332e0:
000332e0bl runtime.(*mspan).base
000332e4ldr x1, [sp+72]
000332e8ldr x2, [x1+104]
000332eccbz x2, 0x3334c
000332f0ldr x3, [sp+128]
000332f4ldr x3, [x3+8]
000332f8udiv x3, x3, x2
000332fcldrb w1, [x1+98]
00033300madd x2, x2, x3, x0
00033304str x2, [sp+80]
00033308mov x0, x1
0003330cbl runtime.spanClass.noscan
00033310tbnz w0, 0, 0x33320
00033314ldr x0, [sp+80]
00033318ldr x1, [sp+184]
0003331cbl runtime.scanobject
00033320
00033320loc_33320:
00033320ldr x5, [sp+128]
00033324add x0, x5, 24
00033328orr x1, xzr, 8
0003332cadrp x2, 0x98d000
00033330add x2, x2, 1377
00033334ldr x3, [sp+184]
00033338mov x4, xzr
0003333cbl runtime.scanblock
00033340ldr x0, [sp+72]
00033344ldr x1, [sp+128]
00033348b 0x33268
0003334c
0003334cloc_3334c:
0003334cbl runtime.panicdivide
00033350
00033350loc_33350:
00033350str w2, [sp+68]
00033354bl runtime.printlock
00033358adrp x0, 0x67d000
0003335cadd x0, x0, 2413
00033360orr x1, xzr, 6
00033364bl runtime.printstring
00033368ldr w0, [sp+64]
0003336cstr x0, [sp+120]
00033370ldr w0, [sp+68]
00033374bl runtime.printuint
00033378bl runtime.printsp
0003337cldr x0, [sp+120]
00033380bl runtime.printuint
00033384bl runtime.printnl
00033388bl runtime.printunlock
0003338cadrp x0, 0x681000
00033390add x0, x0, 2244
00033394orr x1, xzr, 16
00033398bl runtime.throw
0003339c
0003339cloc_3339c:
0003339cstrb w0, [sp+62]
000333a0bl runtime.printlock
000333a4adrp x0, 0x67f000
000333a8add x0, x0, 194
000333acmovz x1, 10
000333b0bl runtime.printstring
000333b4ldrb w0, [sp+62]
000333b8bl runtime.printuint
000333bcbl runtime.printnl
000333c0bl runtime.printunlock
000333c4adrp x0, 0x692000
000333c8add x0, x0, 3096
000333ccmovz x1, 43
000333d0bl runtime.throw
000333d4
000333d4loc_333d4:
000333d4mov x0, x7
000333d8orr x1, xzr, 8192
000333dcbl runtime.panicIndexU
000333e0
000333e0loc_333e0:
000333e0orr x1, xzr, 64
000333e4bl runtime.panicSliceAcap
000333e8
000333e8loc_333e8:
000333e8orr x1, xzr, 1024
000333ecbl runtime.panicSliceBU
000333f0
000333f0loc_333f0:
000333f0orr x1, xzr, 0x400000
000333f4bl runtime.panicIndexU
000333f8
000333f8loc_333f8:
000333f8mov x0, x1
000333fcorr x1, xzr, 1
00033400bl runtime.panicIndexU
00033404
00033404loc_33404:
00033404mov x0, x5
00033408mov x1, x2
0003340cbl runtime.panicIndex
00033410hint
00033414
00033414loc_33414:
00033414stp x0, x1, [sp+8]
00033418mov x3, x30
0003341cbl runtime.morestack_noctxt.abi0
00033420ldp x0, x1, [sp+8]
00033424b 0x33080
00033428udf 0
0003342cudf 0
00033080
00033430
00033430runtime.gcAssistAlloc: ; void runtime.gcAssistAlloc(runtime.g * gp)
00033430ldr x16, [x28+16]
00033434sub x17, sp, 48
00033438subs xzr, x17, x16
0003343cb.ls 0x33840
00033440str x30, [sp-176]!
00033444stur x29, [sp-8]
00033448sub x29, sp, 8
0003344cstr xzr, [sp+160]
00033450strb wzr, [sp+31]
00033454ldr x1, [x0+48]
00033458ldr x1, [x1]
0003345csubs xzr, x28, x1
00033460b.eq 0x334f0
00033464ldr x1, [x28+48]
00033468ldrsw x2, [x1+264]
0003346csubs wzr, w2, 0
00033470b.gt 0x3347c
00033474ldr x1, [x1+256]
00033478cbz x1, 0x33488
0003347c
0003347cloc_3347c:
0003347cldur x29, [sp-8]
00033480ldr x30, [sp], 176
00033484ret x30
00033488
00033488loc_33488:
00033488ldr x1, [x28+392]
0003348ccbz x1, 0x334d8
00033490str x28, [sp+104]
00033494adrp x27, 0xa18000
00033498ldr w2, [x27+3056]
0003349ccbz w2, 0x334ac
000334a0ldr x2, [x28+392]
000334a4bl runtime.gcWriteBarrier1
000334a8str x2, [x25]
000334ac
000334acloc_334ac:
000334acldr x2, [sp+104]
000334b0str xzr, [x2+392]
000334b4adrp x3, 0
000334b8add x3, x3, 2208
000334bcstr x3, [sp+112]
000334c0str x2, [sp+120]
000334c4str x1, [sp+128]
000334c8add x2, sp, 112
000334ccstr x2, [sp+160]
000334d0orr x2, xzr, 1
000334d4strb w2, [sp+31]
000334d8
000334d8loc_334d8:
000334d8str x0, [sp+184]
000334dcsubs xzr, x1, 0
000334e0cset x1, ne
000334e4strb w1, [sp+30]
000334e8mov x2, xzr
000334ecb 0x33500
000334f0
000334f0loc_334f0:
000334f0ldur x29, [sp-8]
000334f4ldr x30, [sp], 176
000334f8ret x30
000334fc
000334fcloc_334fc:
000334fcorr x2, xzr, 1
00033500
00033500loc_33500:
00033500strb w2, [sp+29]
00033504adrp x0, 0xa18000
00033508add x0, x0, 4032
0003350cbl runtime.(*gcCPULimiterState).limiting
00033510tbnz w0, 0, 0x337c0
00033514adrp x0, 0xa19000
00033518add x0, x0, 2744
0003351cbl internal/runtime/atomic.(*Float64).Load
00033520str d0, [sp+56]
00033524adrp x0, 0xa19000
00033528add x0, x0, 2752
0003352cbl internal/runtime/atomic.(*Float64).Load
00033530str d0, [sp+64]
00033534ldr x1, [sp+184]
00033538ldr x1, [x1+432]
0003353cstr x1, [sp+88]
00033540sub x1, xzr, x1
00033544scvtf d1, x1
00033548ldr d2, [sp+56]
0003354cfmul d1, d2, d1
00033550fcvtzs x1, d1
00033554str x1, [sp+40]
00033558adrp x27, 0x6dd000
0003355cldr d1, [x27+3224]
00033560fmul d0, d1, d0
00033564fcvtzs x1, d0
00033568str x1, [sp+48]
0003356cadrp x0, 0xa19000
00033570add x0, x0, 2680
00033574bl internal/runtime/atomic.(*Int64).Load
00033578ldr x1, [sp+40]
0003357csubs xzr, x1, 0x10000
00033580ldr x2, [sp+48]
00033584ldr x3, [sp+88]
00033588csneg x2, x2, x3, lt
0003358corr x3, xzr, 0x10000
00033590csel x1, x3, x1, lt
00033594subs xzr, x0, 0
00033598b.le 0x33610
0003359cstr x1, [sp+80]
000335a0subs xzr, x0, x1
000335a4b.ge 0x335d0
000335a8ldr x2, [sp+184]
000335acldr x4, [x2+432]
000335b0scvtf d0, x0
000335b4ldr d1, [sp+64]
000335b8fmul d0, d1, d0
000335bcfcvtzs x5, d0
000335c0add x4, x4, x5
000335c4add x4, x4, 1
000335c8str x4, [x2+432]
000335ccb 0x335e4
000335d0
000335d0loc_335d0:
000335d0ldr x4, [sp+184]
000335d4ldr x5, [x4+432]
000335d8add x2, x2, x5
000335dcstr x2, [x4+432]
000335e0mov x0, x1
000335e4
000335e4loc_335e4:
000335e4str x0, [sp+32]
000335e8sub x1, xzr, x0
000335ecadrp x0, 0xa19000
000335f0add x0, x0, 2680
000335f4bl internal/runtime/atomic.(*Int64).Add
000335f8ldr x2, [sp+80]
000335fcldr x3, [sp+32]
00033600sub x2, x2, x3
00033604cbz x2, 0x33750
00033608orr x3, xzr, 0x10000
0003360cmov x1, x2
00033610
00033610loc_33610:
00033610ldrb w0, [sp+29]
00033614tbnz w0, 0, 0x33670
00033618str x1, [sp+40]
0003361cbl runtime.traceAcquire
00033620str x0, [sp+96]
00033624str x1, [sp+72]
00033628bl runtime.traceLocker.ok
0003362ctbnz w0, 0, 0x33640
00033630orr x0, xzr, 1
00033634ldr x1, [sp+184]
00033638strb w0, [x1+194]
0003363cb 0x3366c
00033640
00033640loc_33640:
00033640ldr x0, [sp+96]
00033644ldr x1, [sp+72]
00033648bl runtime.traceLocker.GCMarkAssistStart
0003364corr x2, xzr, 1
00033650ldr x3, [sp+184]
00033654strb w2, [x3+194]
00033658ldr x0, [sp+96]
0003365cldr x1, [sp+72]
00033660bl runtime.traceRelease
00033664orr x0, xzr, 1
00033668ldr x1, [sp+184]
0003366c
0003366cloc_3366c:
0003366cldr x1, [sp+40]
00033670
00033670loc_33670:
00033670adrp x0, 0
00033674add x0, x0, 2144
00033678str x0, [sp+136]
0003367cldr x0, [sp+184]
00033680str x0, [sp+144]
00033684str x1, [sp+152]
00033688add x0, sp, 136
0003368cstr x0, [sp+8]
00033690bl runtime.systemstack.abi0
00033694ldr x0, [sp+184]
00033698ldr x1, [x0+144]
0003369cadrp x27, 0xa18000
000336a0ldr w2, [x27+3056]
000336a4cbz w2, 0x336b4
000336a8ldr x2, [x0+144]
000336acbl runtime.gcWriteBarrier1
000336b0str x2, [x25]
000336b4
000336b4loc_336b4:
000336b4str xzr, [x0+144]
000336b8cbz x1, 0x336c4
000336bcbl runtime.gcMarkDone
000336c0ldr x0, [sp+184]
000336c4
000336c4loc_336c4:
000336c4ldr x1, [x0+432]
000336c8tbz x1, 63, 0x336e8
000336ccldrb w1, [x0+185]
000336d0tbz w1, 0, 0x336e0
000336d4bl runtime.Gosched
000336d8orr x2, xzr, 1
000336dcb 0x33500
000336e0
000336e0loc_336e0:
000336e0bl runtime.gcParkAssist
000336e4tbz w0, 0, 0x334fc
000336e8
000336e8loc_336e8:
000336e8bl runtime.traceAcquire
000336ecstr x0, [sp+96]
000336f0str x1, [sp+72]
000336f4bl runtime.traceLocker.ok
000336f8tbnz w0, 0, 0x33708
000336fcldr x0, [sp+184]
00033700strb wzr, [x0+194]
00033704b 0x33728
00033708
00033708loc_33708:
00033708ldr x0, [sp+96]
0003370cldr x1, [sp+72]
00033710bl runtime.traceLocker.GCMarkAssistDone
00033714ldr x2, [sp+184]
00033718strb wzr, [x2+194]
0003371cldr x0, [sp+96]
00033720ldr x1, [sp+72]
00033724bl runtime.traceRelease
00033728
00033728loc_33728:
00033728ldrb w0, [sp+30]
0003372ctbz w0, 0, 0x33744
00033730and x0, x0, -2
00033734strb w0, [sp+31]
00033738ldr x26, [sp+160]
0003373cldr x0, [x26]
00033740blr x0
00033744
00033744loc_33744:
00033744ldur x29, [sp-8]
00033748ldr x30, [sp], 176
0003374cret x30
00033750
00033750loc_33750:
00033750ldrb w0, [sp+29]
00033754tbz w0, 0, 0x33798
00033758bl runtime.traceAcquire
0003375cstr x0, [sp+96]
00033760str x1, [sp+72]
00033764bl runtime.traceLocker.ok
00033768tbnz w0, 0, 0x33778
0003376cldr x0, [sp+184]
00033770strb wzr, [x0+194]
00033774b 0x33798
00033778
00033778loc_33778:
00033778ldr x0, [sp+96]
0003377cldr x1, [sp+72]
00033780bl runtime.traceLocker.GCMarkAssistDone
00033784ldr x2, [sp+184]
00033788strb wzr, [x2+194]
0003378cldr x0, [sp+96]
00033790ldr x1, [sp+72]
00033794bl runtime.traceRelease
00033798
00033798loc_33798:
00033798ldrb w0, [sp+30]
0003379ctbz w0, 0, 0x337b4
000337a0and x0, x0, -2
000337a4strb w0, [sp+31]
000337a8ldr x26, [sp+160]
000337acldr x0, [x26]
000337b0blr x0
000337b4
000337b4loc_337b4:
000337b4ldur x29, [sp-8]
000337b8ldr x30, [sp], 176
000337bcret x30
000337c0
000337c0loc_337c0:
000337c0ldrb w0, [sp+29]
000337c4tbz w0, 0, 0x33808
000337c8bl runtime.traceAcquire
000337ccstr x0, [sp+96]
000337d0str x1, [sp+72]
000337d4bl runtime.traceLocker.ok
000337d8tbnz w0, 0, 0x337e8
000337dcldr x0, [sp+184]
000337e0strb wzr, [x0+194]
000337e4b 0x33808
000337e8
000337e8loc_337e8:
000337e8ldr x0, [sp+96]
000337ecldr x1, [sp+72]
000337f0bl runtime.traceLocker.GCMarkAssistDone
000337f4ldr x2, [sp+184]
000337f8strb wzr, [x2+194]
000337fcldr x0, [sp+96]
00033800ldr x1, [sp+72]
00033804bl runtime.traceRelease
00033808
00033808loc_33808:
00033808ldrb w0, [sp+30]
0003380ctbz w0, 0, 0x33824
00033810and x0, x0, -2
00033814strb w0, [sp+31]
00033818ldr x26, [sp+160]
0003381cldr x0, [x26]
00033820blr x0
00033824
00033824loc_33824:
00033824ldur x29, [sp-8]
00033828ldr x30, [sp], 176
0003382cret x30
00033830bl runtime.deferreturn
00033834ldur x29, [sp-8]
00033838ldr x30, [sp], 176
0003383cret x30
00033840
00033840loc_33840:
00033840str x0, [sp+8]
00033844mov x3, x30
00033848bl runtime.morestack_noctxt.abi0
0003384cldr x0, [sp+8]
00033850b 0x33430
00033854udf 0
00033858udf 0
0003385cudf 0
00033430
00033430runtime.gcAssistAlloc: ; void runtime.gcAssistAlloc(runtime.g * gp)
00033430ldr x16, [x28+16]
00033434sub x17, sp, 48
00033438subs xzr, x17, x16
0003343cb.ls 0x33840
00033440str x30, [sp-176]!
00033444stur x29, [sp-8]
00033448sub x29, sp, 8
0003344cstr xzr, [sp+160]
00033450strb wzr, [sp+31]
00033454ldr x1, [x0+48]
00033458ldr x1, [x1]
0003345csubs xzr, x28, x1
00033460b.eq 0x334f0
00033464ldr x1, [x28+48]
00033468ldrsw x2, [x1+264]
0003346csubs wzr, w2, 0
00033470b.gt 0x3347c
00033474ldr x1, [x1+256]
00033478cbz x1, 0x33488
0003347c
0003347cloc_3347c:
0003347cldur x29, [sp-8]
00033480ldr x30, [sp], 176
00033484ret x30
00033488
00033488loc_33488:
00033488ldr x1, [x28+392]
0003348ccbz x1, 0x334d8
00033490str x28, [sp+104]
00033494adrp x27, 0xa18000
00033498ldr w2, [x27+3056]
0003349ccbz w2, 0x334ac
000334a0ldr x2, [x28+392]
000334a4bl runtime.gcWriteBarrier1
000334a8str x2, [x25]
000334ac
000334acloc_334ac:
000334acldr x2, [sp+104]
000334b0str xzr, [x2+392]
000334b4adrp x3, 0
000334b8add x3, x3, 2208
000334bcstr x3, [sp+112]
000334c0str x2, [sp+120]
000334c4str x1, [sp+128]
000334c8add x2, sp, 112
000334ccstr x2, [sp+160]
000334d0orr x2, xzr, 1
000334d4strb w2, [sp+31]
000334d8
000334d8loc_334d8:
000334d8str x0, [sp+184]
000334dcsubs xzr, x1, 0
000334e0cset x1, ne
000334e4strb w1, [sp+30]
000334e8mov x2, xzr
000334ecb 0x33500
000334f0
000334f0loc_334f0:
000334f0ldur x29, [sp-8]
000334f4ldr x30, [sp], 176
000334f8ret x30
000334fc
000334fcloc_334fc:
000334fcorr x2, xzr, 1
00033500
00033500loc_33500:
00033500strb w2, [sp+29]
00033504adrp x0, 0xa18000
00033508add x0, x0, 4032
0003350cbl runtime.(*gcCPULimiterState).limiting
00033510tbnz w0, 0, 0x337c0
00033514adrp x0, 0xa19000
00033518add x0, x0, 2744
0003351cbl internal/runtime/atomic.(*Float64).Load
00033520str d0, [sp+56]
00033524adrp x0, 0xa19000
00033528add x0, x0, 2752
0003352cbl internal/runtime/atomic.(*Float64).Load
00033530str d0, [sp+64]
00033534ldr x1, [sp+184]
00033538ldr x1, [x1+432]
0003353cstr x1, [sp+88]
00033540sub x1, xzr, x1
00033544scvtf d1, x1
00033548ldr d2, [sp+56]
0003354cfmul d1, d2, d1
00033550fcvtzs x1, d1
00033554str x1, [sp+40]
00033558adrp x27, 0x6dd000
0003355cldr d1, [x27+3224]
00033560fmul d0, d1, d0
00033564fcvtzs x1, d0
00033568str x1, [sp+48]
0003356cadrp x0, 0xa19000
00033570add x0, x0, 2680
00033574bl internal/runtime/atomic.(*Int64).Load
00033578ldr x1, [sp+40]
0003357csubs xzr, x1, 0x10000
00033580ldr x2, [sp+48]
00033584ldr x3, [sp+88]
00033588csneg x2, x2, x3, lt
0003358corr x3, xzr, 0x10000
00033590csel x1, x3, x1, lt
00033594subs xzr, x0, 0
00033598b.le 0x33610
0003359cstr x1, [sp+80]
000335a0subs xzr, x0, x1
000335a4b.ge 0x335d0
000335a8ldr x2, [sp+184]
000335acldr x4, [x2+432]
000335b0scvtf d0, x0
000335b4ldr d1, [sp+64]
000335b8fmul d0, d1, d0
000335bcfcvtzs x5, d0
000335c0add x4, x4, x5
000335c4add x4, x4, 1
000335c8str x4, [x2+432]
000335ccb 0x335e4
000335d0
000335d0loc_335d0:
000335d0ldr x4, [sp+184]
000335d4ldr x5, [x4+432]
000335d8add x2, x2, x5
000335dcstr x2, [x4+432]
000335e0mov x0, x1
000335e4
000335e4loc_335e4:
000335e4str x0, [sp+32]
000335e8sub x1, xzr, x0
000335ecadrp x0, 0xa19000
000335f0add x0, x0, 2680
000335f4bl internal/runtime/atomic.(*Int64).Add
000335f8ldr x2, [sp+80]
000335fcldr x3, [sp+32]
00033600sub x2, x2, x3
00033604cbz x2, 0x33750
00033608orr x3, xzr, 0x10000
0003360cmov x1, x2
00033610
00033610loc_33610:
00033610ldrb w0, [sp+29]
00033614tbnz w0, 0, 0x33670
00033618str x1, [sp+40]
0003361cbl runtime.traceAcquire
00033620str x0, [sp+96]
00033624str x1, [sp+72]
00033628bl runtime.traceLocker.ok
0003362ctbnz w0, 0, 0x33640
00033630orr x0, xzr, 1
00033634ldr x1, [sp+184]
00033638strb w0, [x1+194]
0003363cb 0x3366c
00033640
00033640loc_33640:
00033640ldr x0, [sp+96]
00033644ldr x1, [sp+72]
00033648bl runtime.traceLocker.GCMarkAssistStart
0003364corr x2, xzr, 1
00033650ldr x3, [sp+184]
00033654strb w2, [x3+194]
00033658ldr x0, [sp+96]
0003365cldr x1, [sp+72]
00033660bl runtime.traceRelease
00033664orr x0, xzr, 1
00033668ldr x1, [sp+184]
0003366c
0003366cloc_3366c:
0003366cldr x1, [sp+40]
00033670
00033670loc_33670:
00033670adrp x0, 0
00033674add x0, x0, 2144
00033678str x0, [sp+136]
0003367cldr x0, [sp+184]
00033680str x0, [sp+144]
00033684str x1, [sp+152]
00033688add x0, sp, 136
0003368cstr x0, [sp+8]
00033690bl runtime.systemstack.abi0
00033694ldr x0, [sp+184]
00033698ldr x1, [x0+144]
0003369cadrp x27, 0xa18000
000336a0ldr w2, [x27+3056]
000336a4cbz w2, 0x336b4
000336a8ldr x2, [x0+144]
000336acbl runtime.gcWriteBarrier1
000336b0str x2, [x25]
000336b4
000336b4loc_336b4:
000336b4str xzr, [x0+144]
000336b8cbz x1, 0x336c4
000336bcbl runtime.gcMarkDone
000336c0ldr x0, [sp+184]
000336c4
000336c4loc_336c4:
000336c4ldr x1, [x0+432]
000336c8tbz x1, 63, 0x336e8
000336ccldrb w1, [x0+185]
000336d0tbz w1, 0, 0x336e0
000336d4bl runtime.Gosched
000336d8orr x2, xzr, 1
000336dcb 0x33500
000336e0
000336e0loc_336e0:
000336e0bl runtime.gcParkAssist
000336e4tbz w0, 0, 0x334fc
000336e8
000336e8loc_336e8:
000336e8bl runtime.traceAcquire
000336ecstr x0, [sp+96]
000336f0str x1, [sp+72]
000336f4bl runtime.traceLocker.ok
000336f8tbnz w0, 0, 0x33708
000336fcldr x0, [sp+184]
00033700strb wzr, [x0+194]
00033704b 0x33728
00033708
00033708loc_33708:
00033708ldr x0, [sp+96]
0003370cldr x1, [sp+72]
00033710bl runtime.traceLocker.GCMarkAssistDone
00033714ldr x2, [sp+184]
00033718strb wzr, [x2+194]
0003371cldr x0, [sp+96]
00033720ldr x1, [sp+72]
00033724bl runtime.traceRelease
00033728
00033728loc_33728:
00033728ldrb w0, [sp+30]
0003372ctbz w0, 0, 0x33744
00033730and x0, x0, -2
00033734strb w0, [sp+31]
00033738ldr x26, [sp+160]
0003373cldr x0, [x26]
00033740blr x0
00033744
00033744loc_33744:
00033744ldur x29, [sp-8]
00033748ldr x30, [sp], 176
0003374cret x30
00033750
00033750loc_33750:
00033750ldrb w0, [sp+29]
00033754tbz w0, 0, 0x33798
00033758bl runtime.traceAcquire
0003375cstr x0, [sp+96]
00033760str x1, [sp+72]
00033764bl runtime.traceLocker.ok
00033768tbnz w0, 0, 0x33778
0003376cldr x0, [sp+184]
00033770strb wzr, [x0+194]
00033774b 0x33798
00033778
00033778loc_33778:
00033778ldr x0, [sp+96]
0003377cldr x1, [sp+72]
00033780bl runtime.traceLocker.GCMarkAssistDone
00033784ldr x2, [sp+184]
00033788strb wzr, [x2+194]
0003378cldr x0, [sp+96]
00033790ldr x1, [sp+72]
00033794bl runtime.traceRelease
00033798
00033798loc_33798:
00033798ldrb w0, [sp+30]
0003379ctbz w0, 0, 0x337b4
000337a0and x0, x0, -2
000337a4strb w0, [sp+31]
000337a8ldr x26, [sp+160]
000337acldr x0, [x26]
000337b0blr x0
000337b4
000337b4loc_337b4:
000337b4ldur x29, [sp-8]
000337b8ldr x30, [sp], 176
000337bcret x30
000337c0
000337c0loc_337c0:
000337c0ldrb w0, [sp+29]
000337c4tbz w0, 0, 0x33808
000337c8bl runtime.traceAcquire
000337ccstr x0, [sp+96]
000337d0str x1, [sp+72]
000337d4bl runtime.traceLocker.ok
000337d8tbnz w0, 0, 0x337e8
000337dcldr x0, [sp+184]
000337e0strb wzr, [x0+194]
000337e4b 0x33808
000337e8
000337e8loc_337e8:
000337e8ldr x0, [sp+96]
000337ecldr x1, [sp+72]
000337f0bl runtime.traceLocker.GCMarkAssistDone
000337f4ldr x2, [sp+184]
000337f8strb wzr, [x2+194]
000337fcldr x0, [sp+96]
00033800ldr x1, [sp+72]
00033804bl runtime.traceRelease
00033808
00033808loc_33808:
00033808ldrb w0, [sp+30]
0003380ctbz w0, 0, 0x33824
00033810and x0, x0, -2
00033814strb w0, [sp+31]
00033818ldr x26, [sp+160]
0003381cldr x0, [x26]
00033820blr x0
00033824
00033824loc_33824:
00033824ldur x29, [sp-8]
00033828ldr x30, [sp], 176
0003382cret x30
00033830bl runtime.deferreturn
00033834ldur x29, [sp-8]
00033838ldr x30, [sp], 176
0003383cret x30
00033840
00033840loc_33840:
00033840str x0, [sp+8]
00033844mov x3, x30
00033848bl runtime.morestack_noctxt.abi0
0003384cldr x0, [sp+8]
00033850b 0x33430
00033854udf 0
00033858udf 0
0003385cudf 0
00033430
00033860
00033860runtime.gcAssistAlloc.func2: ; void runtime.gcAssistAlloc.func2(void)
00033860ldr x16, [x28+16]
00033864subs xzr, sp, x16
00033868b.ls 0x33890
0003386cstr x30, [sp-32]!
00033870stur x29, [sp-8]
00033874sub x29, sp, 8
00033878ldr x1, [x26+16]
0003387cldr x0, [x26+8]
00033880bl runtime.gcAssistAlloc1
00033884ldur x29, [sp-8]
00033888ldr x30, [sp], 32
0003388cret x30
00033890
00033890loc_33890:
00033890mov x3, x30
00033894bl runtime.morestack.abi0
00033898b 0x33860
0003389cudf 0
00033860
00033860runtime.gcAssistAlloc.func2: ; void runtime.gcAssistAlloc.func2(void)
00033860ldr x16, [x28+16]
00033864subs xzr, sp, x16
00033868b.ls 0x33890
0003386cstr x30, [sp-32]!
00033870stur x29, [sp-8]
00033874sub x29, sp, 8
00033878ldr x1, [x26+16]
0003387cldr x0, [x26+8]
00033880bl runtime.gcAssistAlloc1
00033884ldur x29, [sp-8]
00033888ldr x30, [sp], 32
0003388cret x30
00033890
00033890loc_33890:
00033890mov x3, x30
00033894bl runtime.morestack.abi0
00033898b 0x33860
0003389cudf 0
00033860
000338a0
000338a0runtime.gcAssistAlloc.func1: ; void runtime.gcAssistAlloc.func1(void)
000338a0ldr x16, [x28+16]
000338a4subs xzr, sp, x16
000338a8b.ls 0x338f0
000338acstr x30, [sp-16]!
000338b0stur x29, [sp-8]
000338b4sub x29, sp, 8
000338b8ldr x0, [x26+8]
000338bcldrsb x27, [x0]
000338c0ldr x1, [x26+16]
000338c4adrp x27, 0xa18000
000338c8ldr w2, [x27+3056]
000338cccbz w2, 0x338e0
000338d0bl runtime.gcWriteBarrier2
000338d4str x1, [x25]
000338d8ldr x2, [x0+392]
000338dcstr x2, [x25+8]
000338e0
000338e0loc_338e0:
000338e0str x1, [x0+392]
000338e4ldur x29, [sp-8]
000338e8ldr x30, [sp], 16
000338ecret x30
000338f0
000338f0loc_338f0:
000338f0mov x3, x30
000338f4bl runtime.morestack.abi0
000338f8b 0x338a0
000338fcudf 0
000338a0
000338a0runtime.gcAssistAlloc.func1: ; void runtime.gcAssistAlloc.func1(void)
000338a0ldr x16, [x28+16]
000338a4subs xzr, sp, x16
000338a8b.ls 0x338f0
000338acstr x30, [sp-16]!
000338b0stur x29, [sp-8]
000338b4sub x29, sp, 8
000338b8ldr x0, [x26+8]
000338bcldrsb x27, [x0]
000338c0ldr x1, [x26+16]
000338c4adrp x27, 0xa18000
000338c8ldr w2, [x27+3056]
000338cccbz w2, 0x338e0
000338d0bl runtime.gcWriteBarrier2
000338d4str x1, [x25]
000338d8ldr x2, [x0+392]
000338dcstr x2, [x25+8]
000338e0
000338e0loc_338e0:
000338e0str x1, [x0+392]
000338e4ldur x29, [sp-8]
000338e8ldr x30, [sp], 16
000338ecret x30
000338f0
000338f0loc_338f0:
000338f0mov x3, x30
000338f4bl runtime.morestack.abi0
000338f8b 0x338a0
000338fcudf 0
000338a0
00033900
00033900runtime.gcAssistAlloc1: ; void runtime.gcAssistAlloc1(runtime.g * gp, int64 scanWork)
00033900ldr x16, [x28+24]
00033904subs xzr, sp, x16
00033908b.ls 0x33c2c
0003390cstr x30, [sp-96]!
00033910stur x29, [sp-8]
00033914sub x29, sp, 8
00033918ldrsb x27, [x0]
0003391cadrp x27, 0xa18000
00033920ldr w2, [x27+3056]
00033924cbz w2, 0x33934
00033928ldr x2, [x0+144]
0003392cbl runtime.gcWriteBarrier1
00033930str x2, [x25]
00033934
00033934loc_33934:
00033934str xzr, [x0+144]
00033938adrp x2, 0xa18000
0003393cadd x2, x2, 1604
00033940ldar w2, [x2]
00033944cbz w2, 0x33b70
00033948str x0, [sp+104]
0003394cstr x1, [sp+112]
00033950bl runtime.nanotime
00033954str x0, [sp+56]
00033958ldr x0, [sp+104]
0003395cldr x0, [x0+48]
00033960ldr x0, [x0+208]
00033964bl runtime.puintptr.ptr
00033968ldrsb x27, [x0]
0003396cmovz x1, 4656
00033970add x0, x0, x1
00033974orr x1, xzr, 2
00033978ldr x2, [sp+56]
0003397cbl runtime.(*limiterEvent).start
00033980adrp x27, 0xa18000
00033984ldrb w1, [x27+1516]
00033988tbz w1, 0, 0x339a4
0003398cmovn x3, 0
00033990adrp x4, 0x9f1000
00033994add x4, x4, 3008
00033998ldaddal w3, w5, [x4]
0003399cadd x5, x5, x3
000339a0b 0x339c0
000339a4
000339a4loc_339a4:
000339a4movn x3, 0
000339a8adrp x4, 0x9f1000
000339acadd x4, x4, 3008
000339b0
000339b0loc_339b0:
000339b0ldaxr w5, [x4]
000339b4add x5, x5, x3
000339b8stlxr w27, w5, [x4]
000339bccbnz x27, 0x339b0
000339c0
000339c0loc_339c0:
000339c0adrp x27, 0x9f1000
000339c4ldr w3, [x27+2992]
000339c8subs wzr, w5, w3
000339ccb.eq 0x33bd4
000339d0strb w0, [sp+35]
000339d4ldr x0, [sp+104]
000339d8orr x1, xzr, 2
000339dcorr x2, xzr, 1
000339e0bl runtime.casGToWaitingForSuspendG
000339e4ldr x3, [x28+48]
000339e8ldr x0, [x3+208]
000339ecbl runtime.puintptr.ptr
000339f0ldrsb x27, [x0]
000339f4movz x3, 4680
000339f8add x0, x0, x3
000339fcldr x1, [sp+112]
00033a00bl runtime.gcDrainN
00033a04str x0, [sp+48]
00033a08ldr x0, [sp+104]
00033a0corr x1, xzr, 4
00033a10orr x2, xzr, 2
00033a14bl runtime.casgstatus
00033a18adrp x0, 0xa19000
00033a1cadd x0, x0, 2752
00033a20bl internal/runtime/atomic.(*Float64).Load
00033a24ldr x3, [sp+104]
00033a28ldr x4, [x3+432]
00033a2cldr x5, [sp+48]
00033a30scvtf d1, x5
00033a34fmul d0, d0, d1
00033a38fcvtzs x5, d0
00033a3cadd x4, x5, x4
00033a40add x4, x4, 1
00033a44str x4, [x3+432]
00033a48adrp x27, 0xa18000
00033a4cldrb w4, [x27+1516]
00033a50tbz w4, 0, 0x33a6c
00033a54orr x1, xzr, 1
00033a58adrp x2, 0x9f1000
00033a5cadd x2, x2, 3008
00033a60ldaddal w1, w4, [x2]
00033a64add x4, x4, x1
00033a68b 0x33a88
00033a6c
00033a6cloc_33a6c:
00033a6corr x1, xzr, 1
00033a70adrp x2, 0x9f1000
00033a74add x2, x2, 3008
00033a78
00033a78loc_33a78:
00033a78ldaxr w4, [x2]
00033a7cadd x4, x4, x1
00033a80stlxr w27, w4, [x2]
00033a84cbnz x27, 0x33a78
00033a88
00033a88loc_33a88:
00033a88adrp x27, 0x9f1000
00033a8cldr w1, [x27+2992]
00033a90subs wzr, w4, w1
00033a94b.hi 0x33b80
00033a98b.ne 0x33ad4
00033a9cmov x0, xzr
00033aa0bl runtime.gcMarkWorkAvailable
00033aa4tbnz w0, 0, 0x33ad4
00033aa8adrp x27, 0xa18000
00033aacldr w0, [x27+3056]
00033ab0cbnz w0, 0x33abc
00033ab4ldr x0, [sp+104]
00033ab8b 0x33ad0
00033abc
00033abcloc_33abc:
00033abcbl runtime.gcWriteBarrier2
00033ac0ldr x0, [sp+104]
00033ac4str x0, [x25]
00033ac8ldr x1, [x0+144]
00033accstr x1, [x25+8]
00033ad0
00033ad0loc_33ad0:
00033ad0str x0, [x0+144]
00033ad4
00033ad4loc_33ad4:
00033ad4bl runtime.nanotime
00033ad8str x0, [sp+64]
00033adcldr x1, [sp+56]
00033ae0sub x0, x0, x1
00033ae4str x0, [sp+72]
00033ae8ldr x0, [sp+104]
00033aecldr x0, [x0+48]
00033af0ldr x0, [x0+208]
00033af4bl runtime.puintptr.ptr
00033af8str x0, [sp+80]
00033afcldrsb x27, [x0]
00033b00ldr x1, [x0+4640]
00033b04ldr x2, [sp+72]
00033b08add x1, x2, x1
00033b0cstr x1, [x0+4640]
00033b10ldrb w1, [sp+35]
00033b14tbz w1, 0, 0x33b30
00033b18movz x3, 4656
00033b1cadd x0, x0, x3
00033b20orr x1, xzr, 2
00033b24ldr x2, [sp+64]
00033b28bl runtime.(*limiterEvent).stop
00033b2cldr x0, [sp+80]
00033b30
00033b30loc_33b30:
00033b30ldr x1, [x0+4640]
00033b34movz x2, 5000
00033b38subs xzr, x1, x2
00033b3cb.le 0x33b64
00033b40adrp x0, 0xa19000
00033b44add x0, x0, 2688
00033b48bl internal/runtime/atomic.(*Int64).Add
00033b4cadrp x0, 0xa18000
00033b50add x0, x0, 4032
00033b54ldr x1, [sp+64]
00033b58bl runtime.(*gcCPULimiterState).update
00033b5cldr x2, [sp+80]
00033b60str xzr, [x2+4640]
00033b64
00033b64loc_33b64:
00033b64ldur x29, [sp-8]
00033b68ldr x30, [sp], 96
00033b6cret x30
00033b70
00033b70loc_33b70:
00033b70str xzr, [x0+432]
00033b74ldur x29, [sp-8]
00033b78ldr x30, [sp], 96
00033b7cret x30
00033b80
00033b80loc_33b80:
00033b80str w4, [sp+36]
00033b84str w1, [sp+44]
00033b88bl runtime.printlock
00033b8cadrp x0, 0x684000
00033b90add x0, x0, 459
00033b94movz x1, 21
00033b98bl runtime.printstring
00033b9cldr w0, [sp+36]
00033ba0bl runtime.printuint
00033ba4adrp x0, 0x680000
00033ba8add x0, x0, 1472
00033bacmovz x1, 13
00033bb0bl runtime.printstring
00033bb4ldr w0, [sp+44]
00033bb8bl runtime.printuint
00033bbcbl runtime.printnl
00033bc0bl runtime.printunlock
00033bc4adrp x0, 0x685000
00033bc8add x0, x0, 1076
00033bccmovz x1, 23
00033bd0bl runtime.throw
00033bd4
00033bd4loc_33bd4:
00033bd4str w5, [sp+40]
00033bd8str w3, [sp+44]
00033bdcbl runtime.printlock
00033be0adrp x0, 0x684000
00033be4add x0, x0, 2600
00033be8movz x1, 22
00033becbl runtime.printstring
00033bf0ldr w0, [sp+40]
00033bf4bl runtime.printuint
00033bf8adrp x0, 0x680000
00033bfcadd x0, x0, 1472
00033c00movz x1, 13
00033c04bl runtime.printstring
00033c08ldr w0, [sp+44]
00033c0cbl runtime.printuint
00033c10bl runtime.printnl
00033c14bl runtime.printunlock
00033c18adrp x0, 0x682000
00033c1cadd x0, x0, 4093
00033c20movz x1, 19
00033c24bl runtime.throw
00033c28hint
00033c2c
00033c2cloc_33c2c:
00033c2cstp x0, x1, [sp+8]
00033c30mov x3, x30
00033c34bl runtime.morestackc.abi0
00033c38ldp x0, x1, [sp+8]
00033c3cb 0x33900
00033900
00033900runtime.gcAssistAlloc1: ; void runtime.gcAssistAlloc1(runtime.g * gp, int64 scanWork)
00033900ldr x16, [x28+24]
00033904subs xzr, sp, x16
00033908b.ls 0x33c2c
0003390cstr x30, [sp-96]!
00033910stur x29, [sp-8]
00033914sub x29, sp, 8
00033918ldrsb x27, [x0]
0003391cadrp x27, 0xa18000
00033920ldr w2, [x27+3056]
00033924cbz w2, 0x33934
00033928ldr x2, [x0+144]
0003392cbl runtime.gcWriteBarrier1
00033930str x2, [x25]
00033934
00033934loc_33934:
00033934str xzr, [x0+144]
00033938adrp x2, 0xa18000
0003393cadd x2, x2, 1604
00033940ldar w2, [x2]
00033944cbz w2, 0x33b70
00033948str x0, [sp+104]
0003394cstr x1, [sp+112]
00033950bl runtime.nanotime
00033954str x0, [sp+56]
00033958ldr x0, [sp+104]
0003395cldr x0, [x0+48]
00033960ldr x0, [x0+208]
00033964bl runtime.puintptr.ptr
00033968ldrsb x27, [x0]
0003396cmovz x1, 4656
00033970add x0, x0, x1
00033974orr x1, xzr, 2
00033978ldr x2, [sp+56]
0003397cbl runtime.(*limiterEvent).start
00033980adrp x27, 0xa18000
00033984ldrb w1, [x27+1516]
00033988tbz w1, 0, 0x339a4
0003398cmovn x3, 0
00033990adrp x4, 0x9f1000
00033994add x4, x4, 3008
00033998ldaddal w3, w5, [x4]
0003399cadd x5, x5, x3
000339a0b 0x339c0
000339a4
000339a4loc_339a4:
000339a4movn x3, 0
000339a8adrp x4, 0x9f1000
000339acadd x4, x4, 3008
000339b0
000339b0loc_339b0:
000339b0ldaxr w5, [x4]
000339b4add x5, x5, x3
000339b8stlxr w27, w5, [x4]
000339bccbnz x27, 0x339b0
000339c0
000339c0loc_339c0:
000339c0adrp x27, 0x9f1000
000339c4ldr w3, [x27+2992]
000339c8subs wzr, w5, w3
000339ccb.eq 0x33bd4
000339d0strb w0, [sp+35]
000339d4ldr x0, [sp+104]
000339d8orr x1, xzr, 2
000339dcorr x2, xzr, 1
000339e0bl runtime.casGToWaitingForSuspendG
000339e4ldr x3, [x28+48]
000339e8ldr x0, [x3+208]
000339ecbl runtime.puintptr.ptr
000339f0ldrsb x27, [x0]
000339f4movz x3, 4680
000339f8add x0, x0, x3
000339fcldr x1, [sp+112]
00033a00bl runtime.gcDrainN
00033a04str x0, [sp+48]
00033a08ldr x0, [sp+104]
00033a0corr x1, xzr, 4
00033a10orr x2, xzr, 2
00033a14bl runtime.casgstatus
00033a18adrp x0, 0xa19000
00033a1cadd x0, x0, 2752
00033a20bl internal/runtime/atomic.(*Float64).Load
00033a24ldr x3, [sp+104]
00033a28ldr x4, [x3+432]
00033a2cldr x5, [sp+48]
00033a30scvtf d1, x5
00033a34fmul d0, d0, d1
00033a38fcvtzs x5, d0
00033a3cadd x4, x5, x4
00033a40add x4, x4, 1
00033a44str x4, [x3+432]
00033a48adrp x27, 0xa18000
00033a4cldrb w4, [x27+1516]
00033a50tbz w4, 0, 0x33a6c
00033a54orr x1, xzr, 1
00033a58adrp x2, 0x9f1000
00033a5cadd x2, x2, 3008
00033a60ldaddal w1, w4, [x2]
00033a64add x4, x4, x1
00033a68b 0x33a88
00033a6c
00033a6cloc_33a6c:
00033a6corr x1, xzr, 1
00033a70adrp x2, 0x9f1000
00033a74add x2, x2, 3008
00033a78
00033a78loc_33a78:
00033a78ldaxr w4, [x2]
00033a7cadd x4, x4, x1
00033a80stlxr w27, w4, [x2]
00033a84cbnz x27, 0x33a78
00033a88
00033a88loc_33a88:
00033a88adrp x27, 0x9f1000
00033a8cldr w1, [x27+2992]
00033a90subs wzr, w4, w1
00033a94b.hi 0x33b80
00033a98b.ne 0x33ad4
00033a9cmov x0, xzr
00033aa0bl runtime.gcMarkWorkAvailable
00033aa4tbnz w0, 0, 0x33ad4
00033aa8adrp x27, 0xa18000
00033aacldr w0, [x27+3056]
00033ab0cbnz w0, 0x33abc
00033ab4ldr x0, [sp+104]
00033ab8b 0x33ad0
00033abc
00033abcloc_33abc:
00033abcbl runtime.gcWriteBarrier2
00033ac0ldr x0, [sp+104]
00033ac4str x0, [x25]
00033ac8ldr x1, [x0+144]
00033accstr x1, [x25+8]
00033ad0
00033ad0loc_33ad0:
00033ad0str x0, [x0+144]
00033ad4
00033ad4loc_33ad4:
00033ad4bl runtime.nanotime
00033ad8str x0, [sp+64]
00033adcldr x1, [sp+56]
00033ae0sub x0, x0, x1
00033ae4str x0, [sp+72]
00033ae8ldr x0, [sp+104]
00033aecldr x0, [x0+48]
00033af0ldr x0, [x0+208]
00033af4bl runtime.puintptr.ptr
00033af8str x0, [sp+80]
00033afcldrsb x27, [x0]
00033b00ldr x1, [x0+4640]
00033b04ldr x2, [sp+72]
00033b08add x1, x2, x1
00033b0cstr x1, [x0+4640]
00033b10ldrb w1, [sp+35]
00033b14tbz w1, 0, 0x33b30
00033b18movz x3, 4656
00033b1cadd x0, x0, x3
00033b20orr x1, xzr, 2
00033b24ldr x2, [sp+64]
00033b28bl runtime.(*limiterEvent).stop
00033b2cldr x0, [sp+80]
00033b30
00033b30loc_33b30:
00033b30ldr x1, [x0+4640]
00033b34movz x2, 5000
00033b38subs xzr, x1, x2
00033b3cb.le 0x33b64
00033b40adrp x0, 0xa19000
00033b44add x0, x0, 2688
00033b48bl internal/runtime/atomic.(*Int64).Add
00033b4cadrp x0, 0xa18000
00033b50add x0, x0, 4032
00033b54ldr x1, [sp+64]
00033b58bl runtime.(*gcCPULimiterState).update
00033b5cldr x2, [sp+80]
00033b60str xzr, [x2+4640]
00033b64
00033b64loc_33b64:
00033b64ldur x29, [sp-8]
00033b68ldr x30, [sp], 96
00033b6cret x30
00033b70
00033b70loc_33b70:
00033b70str xzr, [x0+432]
00033b74ldur x29, [sp-8]
00033b78ldr x30, [sp], 96
00033b7cret x30
00033b80
00033b80loc_33b80:
00033b80str w4, [sp+36]
00033b84str w1, [sp+44]
00033b88bl runtime.printlock
00033b8cadrp x0, 0x684000
00033b90add x0, x0, 459
00033b94movz x1, 21
00033b98bl runtime.printstring
00033b9cldr w0, [sp+36]
00033ba0bl runtime.printuint
00033ba4adrp x0, 0x680000
00033ba8add x0, x0, 1472
00033bacmovz x1, 13
00033bb0bl runtime.printstring
00033bb4ldr w0, [sp+44]
00033bb8bl runtime.printuint
00033bbcbl runtime.printnl
00033bc0bl runtime.printunlock
00033bc4adrp x0, 0x685000
00033bc8add x0, x0, 1076
00033bccmovz x1, 23
00033bd0bl runtime.throw
00033bd4
00033bd4loc_33bd4:
00033bd4str w5, [sp+40]
00033bd8str w3, [sp+44]
00033bdcbl runtime.printlock
00033be0adrp x0, 0x684000
00033be4add x0, x0, 2600
00033be8movz x1, 22
00033becbl runtime.printstring
00033bf0ldr w0, [sp+40]
00033bf4bl runtime.printuint
00033bf8adrp x0, 0x680000
00033bfcadd x0, x0, 1472
00033c00movz x1, 13
00033c04bl runtime.printstring
00033c08ldr w0, [sp+44]
00033c0cbl runtime.printuint
00033c10bl runtime.printnl
00033c14bl runtime.printunlock
00033c18adrp x0, 0x682000
00033c1cadd x0, x0, 4093
00033c20movz x1, 19
00033c24bl runtime.throw
00033c28hint
00033c2c
00033c2cloc_33c2c:
00033c2cstp x0, x1, [sp+8]
00033c30mov x3, x30
00033c34bl runtime.morestackc.abi0
00033c38ldp x0, x1, [sp+8]
00033c3cb 0x33900
00033900
00033c40
00033c40runtime.gcWakeAllAssists: ; void runtime.gcWakeAllAssists(void)
00033c40ldr x16, [x28+16]
00033c44subs xzr, sp, x16
00033c48b.ls 0x33c94
00033c4cstr x30, [sp-32]!
00033c50stur x29, [sp-8]
00033c54sub x29, sp, 8
00033c58adrp x0, 0x9f1000
00033c5cadd x0, x0, 3136
00033c60bl runtime.lock
00033c64adrp x0, 0x9f1000
00033c68add x0, x0, 3144
00033c6cbl runtime.(*gQueue).popList
00033c70str x0, [sp+16]
00033c74add x0, sp, 16
00033c78bl runtime.injectglist
00033c7cadrp x0, 0x9f1000
00033c80add x0, x0, 3136
00033c84bl runtime.unlock
00033c88ldur x29, [sp-8]
00033c8cldr x30, [sp], 32
00033c90ret x30
00033c94
00033c94loc_33c94:
00033c94mov x3, x30
00033c98bl runtime.morestack_noctxt.abi0
00033c9cb 0x33c40
00033c40
00033c40runtime.gcWakeAllAssists: ; void runtime.gcWakeAllAssists(void)
00033c40ldr x16, [x28+16]
00033c44subs xzr, sp, x16
00033c48b.ls 0x33c94
00033c4cstr x30, [sp-32]!
00033c50stur x29, [sp-8]
00033c54sub x29, sp, 8
00033c58adrp x0, 0x9f1000
00033c5cadd x0, x0, 3136
00033c60bl runtime.lock
00033c64adrp x0, 0x9f1000
00033c68add x0, x0, 3144
00033c6cbl runtime.(*gQueue).popList
00033c70str x0, [sp+16]
00033c74add x0, sp, 16
00033c78bl runtime.injectglist
00033c7cadrp x0, 0x9f1000
00033c80add x0, x0, 3136
00033c84bl runtime.unlock
00033c88ldur x29, [sp-8]
00033c8cldr x30, [sp], 32
00033c90ret x30
00033c94
00033c94loc_33c94:
00033c94mov x3, x30
00033c98bl runtime.morestack_noctxt.abi0
00033c9cb 0x33c40
00033c40
00033ca0
00033ca0runtime.gcParkAssist: ; void runtime.gcParkAssist(void)
00033ca0ldr x16, [x28+16]
00033ca4subs xzr, sp, x16
00033ca8b.ls 0x33da0
00033cacstr x30, [sp-64]!
00033cb0stur x29, [sp-8]
00033cb4sub x29, sp, 8
00033cb8adrp x0, 0x9f1000
00033cbcadd x0, x0, 3136
00033cc0bl runtime.lock
00033cc4adrp x1, 0xa18000
00033cc8add x1, x1, 1604
00033cccldar w1, [x1]
00033cd0cbz w1, 0x33d84
00033cd4adrp x27, 0x9f1000
00033cd8ldr x2, [x27+3152]
00033cdcstr x2, [sp+40]
00033ce0adrp x27, 0x9f1000
00033ce4ldr x2, [x27+3144]
00033ce8str x2, [sp+48]
00033cecadrp x0, 0x9f1000
00033cf0add x0, x0, 3144
00033cf4mov x1, x28
00033cf8bl runtime.(*gQueue).pushBack
00033cfcadrp x0, 0xa19000
00033d00add x0, x0, 2680
00033d04bl internal/runtime/atomic.(*Int64).Load
00033d08subs xzr, x0, 0
00033d0cb.le 0x33d5c
00033d10ldr x1, [sp+48]
00033d14adrp x27, 0x9f1000
00033d18str x1, [x27+3144]
00033d1cldr x0, [sp+40]
00033d20adrp x27, 0x9f1000
00033d24str x0, [x27+3152]
00033d28cbz x0, 0x33d40
00033d2cbl runtime.guintptr.ptr
00033d30ldrsb x27, [x0]
00033d34add x0, x0, 168
00033d38mov x1, xzr
00033d3cbl runtime.(*guintptr).set
00033d40
00033d40loc_33d40:
00033d40adrp x0, 0x9f1000
00033d44add x0, x0, 3136
00033d48bl runtime.unlock
00033d4cmov x0, xzr
00033d50ldur x29, [sp-8]
00033d54ldr x30, [sp], 64
00033d58ret x30
00033d5c
00033d5cloc_33d5c:
00033d5cadrp x0, 0x9f1000
00033d60add x0, x0, 3136
00033d64movz x1, 11
00033d68orr x2, xzr, 8
00033d6corr x3, xzr, 2
00033d70bl runtime.goparkunlock
00033d74orr x0, xzr, 1
00033d78ldur x29, [sp-8]
00033d7cldr x30, [sp], 64
00033d80ret x30
00033d84
00033d84loc_33d84:
00033d84adrp x0, 0x9f1000
00033d88add x0, x0, 3136
00033d8cbl runtime.unlock
00033d90orr x0, xzr, 1
00033d94ldur x29, [sp-8]
00033d98ldr x30, [sp], 64
00033d9cret x30
00033da0
00033da0loc_33da0:
00033da0mov x3, x30
00033da4bl runtime.morestack_noctxt.abi0
00033da8b 0x33ca0
00033dacudf 0
00033ca0
00033ca0runtime.gcParkAssist: ; void runtime.gcParkAssist(void)
00033ca0ldr x16, [x28+16]
00033ca4subs xzr, sp, x16
00033ca8b.ls 0x33da0
00033cacstr x30, [sp-64]!
00033cb0stur x29, [sp-8]
00033cb4sub x29, sp, 8
00033cb8adrp x0, 0x9f1000
00033cbcadd x0, x0, 3136
00033cc0bl runtime.lock
00033cc4adrp x1, 0xa18000
00033cc8add x1, x1, 1604
00033cccldar w1, [x1]
00033cd0cbz w1, 0x33d84
00033cd4adrp x27, 0x9f1000
00033cd8ldr x2, [x27+3152]
00033cdcstr x2, [sp+40]
00033ce0adrp x27, 0x9f1000
00033ce4ldr x2, [x27+3144]
00033ce8str x2, [sp+48]
00033cecadrp x0, 0x9f1000
00033cf0add x0, x0, 3144
00033cf4mov x1, x28
00033cf8bl runtime.(*gQueue).pushBack
00033cfcadrp x0, 0xa19000
00033d00add x0, x0, 2680
00033d04bl internal/runtime/atomic.(*Int64).Load
00033d08subs xzr, x0, 0
00033d0cb.le 0x33d5c
00033d10ldr x1, [sp+48]
00033d14adrp x27, 0x9f1000
00033d18str x1, [x27+3144]
00033d1cldr x0, [sp+40]
00033d20adrp x27, 0x9f1000
00033d24str x0, [x27+3152]
00033d28cbz x0, 0x33d40
00033d2cbl runtime.guintptr.ptr
00033d30ldrsb x27, [x0]
00033d34add x0, x0, 168
00033d38mov x1, xzr
00033d3cbl runtime.(*guintptr).set
00033d40
00033d40loc_33d40:
00033d40adrp x0, 0x9f1000
00033d44add x0, x0, 3136
00033d48bl runtime.unlock
00033d4cmov x0, xzr
00033d50ldur x29, [sp-8]
00033d54ldr x30, [sp], 64
00033d58ret x30
00033d5c
00033d5cloc_33d5c:
00033d5cadrp x0, 0x9f1000
00033d60add x0, x0, 3136
00033d64movz x1, 11
00033d68orr x2, xzr, 8
00033d6corr x3, xzr, 2
00033d70bl runtime.goparkunlock
00033d74orr x0, xzr, 1
00033d78ldur x29, [sp-8]
00033d7cldr x30, [sp], 64
00033d80ret x30
00033d84
00033d84loc_33d84:
00033d84adrp x0, 0x9f1000
00033d88add x0, x0, 3136
00033d8cbl runtime.unlock
00033d90orr x0, xzr, 1
00033d94ldur x29, [sp-8]
00033d98ldr x30, [sp], 64
00033d9cret x30
00033da0
00033da0loc_33da0:
00033da0mov x3, x30
00033da4bl runtime.morestack_noctxt.abi0
00033da8b 0x33ca0
00033dacudf 0
00033ca0
00033db0
00033db0runtime.gcFlushBgCredit: ; void runtime.gcFlushBgCredit(int64 scanWork)
00033db0ldr x16, [x28+16]
00033db4subs xzr, sp, x16
00033db8b.ls 0x33eec
00033dbcstr x30, [sp-64]!
00033dc0stur x29, [sp-8]
00033dc4sub x29, sp, 8
00033dc8str x0, [sp+72]
00033dccadrp x0, 0x9f1000
00033dd0add x0, x0, 3144
00033dd4bl runtime.(*gQueue).empty
00033dd8tbnz w0, 0, 0x33e10
00033ddcadrp x0, 0xa19000
00033de0add x0, x0, 2752
00033de4bl internal/runtime/atomic.(*Float64).Load
00033de8ldr x1, [sp+72]
00033decscvtf d1, x1
00033df0fmul d0, d1, d0
00033df4str d0, [sp+48]
00033df8adrp x0, 0x9f1000
00033dfcadd x0, x0, 3136
00033e00bl runtime.lock
00033e04ldr d0, [sp+48]
00033e08fcvtzs x1, d0
00033e0cb 0x33e44
00033e10
00033e10loc_33e10:
00033e10adrp x0, 0xa19000
00033e14add x0, x0, 2680
00033e18ldr x1, [sp+72]
00033e1cbl internal/runtime/atomic.(*Int64).Add
00033e20ldur x29, [sp-8]
00033e24ldr x30, [sp], 64
00033e28ret x30
00033e2c
00033e2cloc_33e2c:
00033e2cstr x1, [sp+40]
00033e30str xzr, [x0+432]
00033e34mov x1, xzr
00033e38mov x2, xzr
00033e3cbl runtime.ready
00033e40ldr x1, [sp+40]
00033e44
00033e44loc_33e44:
00033e44str x1, [sp+32]
00033e48adrp x0, 0x9f1000
00033e4cadd x0, x0, 3144
00033e50bl runtime.(*gQueue).empty
00033e54tbnz w0, 0, 0x33e9c
00033e58ldr x1, [sp+32]
00033e5csubs xzr, x1, 0
00033e60b.le 0x33ea0
00033e64adrp x0, 0x9f1000
00033e68add x0, x0, 3144
00033e6cbl runtime.(*gQueue).pop
00033e70ldr x1, [x0+432]
00033e74ldr x2, [sp+32]
00033e78add x1, x2, x1
00033e7ctbz x1, 63, 0x33e2c
00033e80str x1, [x0+432]
00033e84mov x1, x0
00033e88adrp x0, 0x9f1000
00033e8cadd x0, x0, 3144
00033e90bl runtime.(*gQueue).pushBack
00033e94mov x1, xzr
00033e98b 0x33ea0
00033e9c
00033e9cloc_33e9c:
00033e9cldr x1, [sp+32]
00033ea0
00033ea0loc_33ea0:
00033ea0subs xzr, x1, 0
00033ea4b.le 0x33ed4
00033ea8str x1, [sp+32]
00033eacadrp x0, 0xa19000
00033eb0add x0, x0, 2744
00033eb4bl internal/runtime/atomic.(*Float64).Load
00033eb8ldr x1, [sp+32]
00033ebcscvtf d1, x1
00033ec0fmul d0, d1, d0
00033ec4fcvtzs x1, d0
00033ec8adrp x0, 0xa19000
00033eccadd x0, x0, 2680
00033ed0bl internal/runtime/atomic.(*Int64).Add
00033ed4
00033ed4loc_33ed4:
00033ed4adrp x0, 0x9f1000
00033ed8add x0, x0, 3136
00033edcbl runtime.unlock
00033ee0ldur x29, [sp-8]
00033ee4ldr x30, [sp], 64
00033ee8ret x30
00033eec
00033eecloc_33eec:
00033eecstr x0, [sp+8]
00033ef0mov x3, x30
00033ef4bl runtime.morestack_noctxt.abi0
00033ef8ldr x0, [sp+8]
00033efcb 0x33db0
00033db0
00033db0runtime.gcFlushBgCredit: ; void runtime.gcFlushBgCredit(int64 scanWork)
00033db0ldr x16, [x28+16]
00033db4subs xzr, sp, x16
00033db8b.ls 0x33eec
00033dbcstr x30, [sp-64]!
00033dc0stur x29, [sp-8]
00033dc4sub x29, sp, 8
00033dc8str x0, [sp+72]
00033dccadrp x0, 0x9f1000
00033dd0add x0, x0, 3144
00033dd4bl runtime.(*gQueue).empty
00033dd8tbnz w0, 0, 0x33e10
00033ddcadrp x0, 0xa19000
00033de0add x0, x0, 2752
00033de4bl internal/runtime/atomic.(*Float64).Load
00033de8ldr x1, [sp+72]
00033decscvtf d1, x1
00033df0fmul d0, d1, d0
00033df4str d0, [sp+48]
00033df8adrp x0, 0x9f1000
00033dfcadd x0, x0, 3136
00033e00bl runtime.lock
00033e04ldr d0, [sp+48]
00033e08fcvtzs x1, d0
00033e0cb 0x33e44
00033e10
00033e10loc_33e10:
00033e10adrp x0, 0xa19000
00033e14add x0, x0, 2680
00033e18ldr x1, [sp+72]
00033e1cbl internal/runtime/atomic.(*Int64).Add
00033e20ldur x29, [sp-8]
00033e24ldr x30, [sp], 64
00033e28ret x30
00033e2c
00033e2cloc_33e2c:
00033e2cstr x1, [sp+40]
00033e30str xzr, [x0+432]
00033e34mov x1, xzr
00033e38mov x2, xzr
00033e3cbl runtime.ready
00033e40ldr x1, [sp+40]
00033e44
00033e44loc_33e44:
00033e44str x1, [sp+32]
00033e48adrp x0, 0x9f1000
00033e4cadd x0, x0, 3144
00033e50bl runtime.(*gQueue).empty
00033e54tbnz w0, 0, 0x33e9c
00033e58ldr x1, [sp+32]
00033e5csubs xzr, x1, 0
00033e60b.le 0x33ea0
00033e64adrp x0, 0x9f1000
00033e68add x0, x0, 3144
00033e6cbl runtime.(*gQueue).pop
00033e70ldr x1, [x0+432]
00033e74ldr x2, [sp+32]
00033e78add x1, x2, x1
00033e7ctbz x1, 63, 0x33e2c
00033e80str x1, [x0+432]
00033e84mov x1, x0
00033e88adrp x0, 0x9f1000
00033e8cadd x0, x0, 3144
00033e90bl runtime.(*gQueue).pushBack
00033e94mov x1, xzr
00033e98b 0x33ea0
00033e9c
00033e9cloc_33e9c:
00033e9cldr x1, [sp+32]
00033ea0
00033ea0loc_33ea0:
00033ea0subs xzr, x1, 0
00033ea4b.le 0x33ed4
00033ea8str x1, [sp+32]
00033eacadrp x0, 0xa19000
00033eb0add x0, x0, 2744
00033eb4bl internal/runtime/atomic.(*Float64).Load
00033eb8ldr x1, [sp+32]
00033ebcscvtf d1, x1
00033ec0fmul d0, d1, d0
00033ec4fcvtzs x1, d0
00033ec8adrp x0, 0xa19000
00033eccadd x0, x0, 2680
00033ed0bl internal/runtime/atomic.(*Int64).Add
00033ed4
00033ed4loc_33ed4:
00033ed4adrp x0, 0x9f1000
00033ed8add x0, x0, 3136
00033edcbl runtime.unlock
00033ee0ldur x29, [sp-8]
00033ee4ldr x30, [sp], 64
00033ee8ret x30
00033eec
00033eecloc_33eec:
00033eecstr x0, [sp+8]
00033ef0mov x3, x30
00033ef4bl runtime.morestack_noctxt.abi0
00033ef8ldr x0, [sp+8]
00033efcb 0x33db0
00033db0
00033f00
00033f00runtime.scanstack: ; void runtime.scanstack(runtime.g * gp, runtime.gcWork * gcw)
00033f00ldr x16, [x28+24]
00033f04sub x17, sp, 176
00033f08subs xzr, x17, x16
00033f0cb.ls 0x343fc
00033f10sub x20, sp, 304
00033f14stp x29, x30, [x20-8]
00033f18add sp, x20, 0
00033f1csub x29, sp, 8
00033f20str x0, [sp+312]
00033f24str x1, [sp+320]
00033f28bl runtime.readgstatus
00033f2ctbz w0, 12, 0x34378
00033f30ldr x0, [sp+312]
00033f34bl runtime.readgstatus
00033f38and x1, x0, -4097
00033f3csubs wzr, w1, 2
00033f40b.hi 0x33f50
00033f44subs wzr, w1, 1
00033f48b.eq 0x33f58
00033f4cb 0x342f0
00033f50
00033f50loc_33f50:
00033f50subs wzr, w1, 4
00033f54b.hi 0x34050
00033f58
00033f58loc_33f58:
00033f58ldr x2, [sp+312]
00033f5csubs xzr, x28, x2
00033f60b.eq 0x342e0
00033f64str x28, [sp+288]
00033f68ldr x1, [x2+112]
00033f6ccbnz x1, 0x33f74
00033f70ldr x1, [x2+56]
00033f74
00033f74loc_33f74:
00033f74ldr x2, [x2+8]
00033f78sub x1, x2, x1
00033f7cstr x1, [sp+240]
00033f80ldr x1, [sp+288]
00033f84ldr x1, [x1+48]
00033f88ldr x0, [x1+208]
00033f8cbl runtime.puintptr.ptr
00033f90ldrsb x27, [x0]
00033f94ldr x1, [x0+8920]
00033f98ldr x2, [sp+240]
00033f9cadd x1, x2, x1
00033fa0str x1, [x0+8920]
00033fa4ldr x1, [x0+8928]
00033fa8add x1, x1, 1
00033facstr x1, [x0+8928]
00033fb0ldr x0, [sp+312]
00033fb4bl runtime.isShrinkStackSafe
00033fb8tbnz w0, 0, 0x33fcc
00033fbcorr x5, xzr, 1
00033fc0ldr x1, [sp+312]
00033fc4strb w5, [x1+187]
00033fc8b 0x33fd8
00033fcc
00033fccloc_33fcc:
00033fccldr x0, [sp+312]
00033fd0bl runtime.shrinkstack
00033fd4ldr x1, [sp+312]
00033fd8
00033fd8loc_33fd8:
00033fd8add x20, sp, 160
00033fdcadr x27, 16
00033fe0stp x29, x27, [sp-24]
00033fe4sub x29, sp, 24
00033fe8bl fn_87cfc
00033fecsub x29, sp, 8
00033ff0ldr x5, [x1+8]
00033ff4ldr x6, [x1]
00033ff8str x6, [sp+160]
00033ffcstr x5, [sp+168]
00034000ldr x5, [x1+80]
00034004cbz x5, 0x34028
00034008add x0, x1, 80
0003400corr x1, xzr, 8
00034010adrp x2, 0x98c000
00034014add x2, x2, 1377
00034018ldr x3, [sp+320]
0003401cadd x4, sp, 160
00034020bl runtime.scanblock
00034024ldr x1, [sp+312]
00034028
00034028loc_34028:
00034028add x20, sp, 64
0003402cadr x27, 16
00034030stp x29, x27, [sp-24]
00034034sub x29, sp, 24
00034038bl fn_87cf8
0003403csub x29, sp, 8
00034040add x0, sp, 64
00034044mov x2, xzr
00034048bl runtime.(*unwinder).init
0003404cb 0x34100
00034050
00034050loc_34050:
00034050subs wzr, w1, 6
00034054b.ne 0x34068
00034058mov x0, xzr
0003405cldp x29, x30, [sp-8]
00034060add sp, sp, 304
00034064ret x30
00034068
00034068loc_34068:
00034068ldr x0, [sp+312]
0003406cbl runtime.readgstatus
00034070mov w1, w0
00034074str x1, [sp+264]
00034078ldr x1, [sp+312]
0003407cldr x1, [x1+160]
00034080str x1, [sp+256]
00034084bl runtime.printlock
00034088adrp x0, 0x67e000
0003408cadd x0, x0, 3832
00034090orr x1, xzr, 12
00034094bl runtime.printstring
00034098ldr x0, [sp+312]
0003409cbl runtime.printpointer
000340a0adrp x0, 0x67c000
000340a4add x0, x0, 3437
000340a8orr x1, xzr, 7
000340acbl runtime.printstring
000340b0ldr x0, [sp+256]
000340b4bl runtime.printuint
000340b8adrp x0, 0x682000
000340bcadd x0, x0, 16
000340c0movz x1, 19
000340c4bl runtime.printstring
000340c8ldr x0, [sp+264]
000340ccbl runtime.printuint
000340d0bl runtime.printnl
000340d4bl runtime.printunlock
000340d8adrp x0, 0x681000
000340dcadd x0, x0, 166
000340e0movz x1, 17
000340e4bl runtime.throw
000340e8
000340e8loc_340e8:
000340e8add x0, sp, 64
000340ecadd x1, sp, 160
000340f0ldr x2, [sp+320]
000340f4bl runtime.scanframeworker
000340f8add x0, sp, 64
000340fcbl runtime.(*unwinder).next
00034100
00034100loc_34100:
00034100add x0, sp, 64
00034104bl runtime.(*unwinder).valid
00034108tbnz w0, 0, 0x340e8
0003410cldr x5, [sp+312]
00034110ldr x6, [x5+40]
00034114orr x0, xzr, 1
00034118b 0x34120
0003411c
0003411cloc_3411c:
0003411cldr x6, [sp+280]
00034120
00034120loc_34120:
00034120str x6, [sp+280]
00034124tbz w0, 0, 0x34130
00034128mov x0, xzr
0003412cb 0x34138
00034130
00034130loc_34130:
00034130ldr x6, [x6+32]
00034134str x6, [sp+280]
00034138
00034138loc_34138:
00034138ldr x6, [sp+280]
0003413ccbz x6, 0x341d4
00034140strb w0, [sp+59]
00034144ldr x7, [x6+24]
00034148cbz x7, 0x34170
0003414cadd x0, x6, 24
00034150orr x1, xzr, 8
00034154adrp x2, 0x98c000
00034158add x2, x2, 1377
0003415cldr x3, [sp+320]
00034160add x4, sp, 160
00034164bl runtime.scanblock
00034168ldrb w0, [sp+59]
0003416cldr x5, [sp+312]
00034170
00034170loc_34170:
00034170ldr x6, [sp+280]
00034174ldr x7, [x6+32]
00034178cbz x7, 0x341a0
0003417cadd x0, x6, 32
00034180orr x1, xzr, 8
00034184adrp x2, 0x98c000
00034188add x2, x2, 1377
0003418cldr x3, [sp+320]
00034190add x4, sp, 160
00034194bl runtime.scanblock
00034198ldrb w0, [sp+59]
0003419cldr x5, [sp+312]
000341a0
000341a0loc_341a0:
000341a0ldr x6, [sp+280]
000341a4ldrb w6, [x6]
000341a8tbz w6, 0, 0x3411c
000341acadd x0, sp, 280
000341b0orr x1, xzr, 8
000341b4adrp x2, 0x98c000
000341b8add x2, x2, 1377
000341bcldr x3, [sp+320]
000341c0add x4, sp, 160
000341c4bl runtime.scanblock
000341c8ldrb w0, [sp+59]
000341ccldr x5, [sp+312]
000341d0b 0x3411c
000341d4
000341d4loc_341d4:
000341d4ldr x1, [x5+32]
000341d8cbz x1, 0x341e8
000341dcadd x0, sp, 160
000341e0mov x2, xzr
000341e4bl runtime.(*stackScanState).putPtr
000341e8
000341e8loc_341e8:
000341e8add x0, sp, 160
000341ecbl runtime.(*stackScanState).buildIndex
000341f0
000341f0loc_341f0:
000341f0add x0, sp, 160
000341f4bl runtime.(*stackScanState).getPtr
000341f8cbz x0, 0x342a0
000341fcstrb w1, [sp+58]
00034200mov x1, x0
00034204add x0, sp, 160
00034208bl runtime.(*stackScanState).findObject
0003420ccbz x0, 0x341f0
00034210ldr x2, [x0+8]
00034214cbz x2, 0x341f0
00034218str x0, [sp+248]
0003421cstr x2, [sp+272]
00034220mov x1, xzr
00034224bl runtime.(*stackObject).setRecord
00034228ldr x0, [sp+272]
0003422cbl runtime.(*stackObjectRecord).gcdata
00034230ldr x2, [sp+160]
00034234ldr x3, [sp+248]
00034238ldr w3, [x3]
0003423cadd x2, x2, x3
00034240ldrb w3, [sp+58]
00034244tbz w3, 0, 0x3426c
00034248ldr x3, [sp+320]
0003424cadd x4, sp, 160
00034250mov x5, x0
00034254mov x0, x2
00034258mov x6, x1
0003425cmov x1, x5
00034260mov x2, x6
00034264bl runtime.scanConservative
00034268b 0x341f0
0003426c
0003426cloc_3426c:
0003426cldr x3, [sp+320]
00034270add x4, sp, 160
00034274mov x5, x0
00034278mov x0, x2
0003427cmov x6, x1
00034280mov x1, x5
00034284mov x2, x6
00034288bl runtime.scanblock
0003428cb 0x341f0
00034290
00034290loc_34290:
00034290ldr x1, [x0+24]
00034294str x1, [sp+208]
00034298str xzr, [x0+16]
0003429cbl runtime.putempty
000342a0
000342a0loc_342a0:
000342a0ldr x0, [sp+208]
000342a4cbnz x0, 0x34290
000342a8ldr x2, [sp+184]
000342accbnz x2, 0x342d0
000342b0ldr x2, [sp+200]
000342b4cbnz x2, 0x342d0
000342b8ldr x2, [sp+192]
000342bccbnz x2, 0x342d0
000342c0ldr x0, [sp+240]
000342c4ldp x29, x30, [sp-8]
000342c8add sp, sp, 304
000342ccret x30
000342d0
000342d0loc_342d0:
000342d0adrp x0, 0x685000
000342d4add x0, x0, 2129
000342d8movz x1, 25
000342dcbl runtime.throw
000342e0
000342e0loc_342e0:
000342e0adrp x0, 0x685000
000342e4add x0, x0, 30
000342e8orr x1, xzr, 24
000342ecbl runtime.throw
000342f0
000342f0loc_342f0:
000342f0subs wzr, w1, 2
000342f4b.ne 0x34068
000342f8ldr x0, [sp+312]
000342fcbl runtime.readgstatus
00034300mov w1, w0
00034304str x1, [sp+264]
00034308ldr x1, [sp+312]
0003430cldr x1, [x1+160]
00034310str x1, [sp+256]
00034314bl runtime.printlock
00034318adrp x0, 0x67e000
0003431cadd x0, x0, 3832
00034320orr x1, xzr, 12
00034324bl runtime.printstring
00034328ldr x0, [sp+312]
0003432cbl runtime.printpointer
00034330adrp x0, 0x67c000
00034334add x0, x0, 3437
00034338orr x1, xzr, 7
0003433cbl runtime.printstring
00034340ldr x0, [sp+256]
00034344bl runtime.printuint
00034348adrp x0, 0x682000
0003434cadd x0, x0, 16
00034350movz x1, 19
00034354bl runtime.printstring
00034358ldr x0, [sp+264]
0003435cbl runtime.printuint
00034360bl runtime.printnl
00034364bl runtime.printunlock
00034368adrp x0, 0x68a000
0003436cadd x0, x0, 1200
00034370orr x1, xzr, 32
00034374bl runtime.throw
00034378
00034378loc_34378:
00034378ldr x0, [sp+312]
0003437cbl runtime.readgstatus
00034380str w0, [sp+60]
00034384ldr x1, [sp+312]
00034388ldr x1, [x1+160]
0003438cstr x1, [sp+264]
00034390bl runtime.printlock
00034394adrp x0, 0x683000
00034398add x0, x0, 2622
0003439cmovz x1, 22
000343a0bl runtime.printstring
000343a4ldr x0, [sp+312]
000343a8bl runtime.printpointer
000343acadrp x0, 0x67c000
000343b0add x0, x0, 3437
000343b4orr x1, xzr, 7
000343b8bl runtime.printstring
000343bcldr x0, [sp+264]
000343c0bl runtime.printuint
000343c4adrp x0, 0x682000
000343c8add x0, x0, 16
000343ccmovz x1, 19
000343d0bl runtime.printstring
000343d4ldr w1, [sp+60]
000343d8mov x0, x1
000343dcbl runtime.printhex
000343e0bl runtime.printnl
000343e4bl runtime.printunlock
000343e8adrp x0, 0x683000
000343ecadd x0, x0, 2644
000343f0movz x1, 22
000343f4bl runtime.throw
000343f8hint
000343fc
000343fcloc_343fc:
000343fcstp x0, x1, [sp+8]
00034400mov x3, x30
00034404bl runtime.morestackc.abi0
00034408ldp x0, x1, [sp+8]
0003440cb 0x33f00
00033f00
00033f00runtime.scanstack: ; void runtime.scanstack(runtime.g * gp, runtime.gcWork * gcw)
00033f00ldr x16, [x28+24]
00033f04sub x17, sp, 176
00033f08subs xzr, x17, x16
00033f0cb.ls 0x343fc
00033f10sub x20, sp, 304
00033f14stp x29, x30, [x20-8]
00033f18add sp, x20, 0
00033f1csub x29, sp, 8
00033f20str x0, [sp+312]
00033f24str x1, [sp+320]
00033f28bl runtime.readgstatus
00033f2ctbz w0, 12, 0x34378
00033f30ldr x0, [sp+312]
00033f34bl runtime.readgstatus
00033f38and x1, x0, -4097
00033f3csubs wzr, w1, 2
00033f40b.hi 0x33f50
00033f44subs wzr, w1, 1
00033f48b.eq 0x33f58
00033f4cb 0x342f0
00033f50
00033f50loc_33f50:
00033f50subs wzr, w1, 4
00033f54b.hi 0x34050
00033f58
00033f58loc_33f58:
00033f58ldr x2, [sp+312]
00033f5csubs xzr, x28, x2
00033f60b.eq 0x342e0
00033f64str x28, [sp+288]
00033f68ldr x1, [x2+112]
00033f6ccbnz x1, 0x33f74
00033f70ldr x1, [x2+56]
00033f74
00033f74loc_33f74:
00033f74ldr x2, [x2+8]
00033f78sub x1, x2, x1
00033f7cstr x1, [sp+240]
00033f80ldr x1, [sp+288]
00033f84ldr x1, [x1+48]
00033f88ldr x0, [x1+208]
00033f8cbl runtime.puintptr.ptr
00033f90ldrsb x27, [x0]
00033f94ldr x1, [x0+8920]
00033f98ldr x2, [sp+240]
00033f9cadd x1, x2, x1
00033fa0str x1, [x0+8920]
00033fa4ldr x1, [x0+8928]
00033fa8add x1, x1, 1
00033facstr x1, [x0+8928]
00033fb0ldr x0, [sp+312]
00033fb4bl runtime.isShrinkStackSafe
00033fb8tbnz w0, 0, 0x33fcc
00033fbcorr x5, xzr, 1
00033fc0ldr x1, [sp+312]
00033fc4strb w5, [x1+187]
00033fc8b 0x33fd8
00033fcc
00033fccloc_33fcc:
00033fccldr x0, [sp+312]
00033fd0bl runtime.shrinkstack
00033fd4ldr x1, [sp+312]
00033fd8
00033fd8loc_33fd8:
00033fd8add x20, sp, 160
00033fdcadr x27, 16
00033fe0stp x29, x27, [sp-24]
00033fe4sub x29, sp, 24
00033fe8bl fn_87cfc
00033fecsub x29, sp, 8
00033ff0ldr x5, [x1+8]
00033ff4ldr x6, [x1]
00033ff8str x6, [sp+160]
00033ffcstr x5, [sp+168]
00034000ldr x5, [x1+80]
00034004cbz x5, 0x34028
00034008add x0, x1, 80
0003400corr x1, xzr, 8
00034010adrp x2, 0x98c000
00034014add x2, x2, 1377
00034018ldr x3, [sp+320]
0003401cadd x4, sp, 160
00034020bl runtime.scanblock
00034024ldr x1, [sp+312]
00034028
00034028loc_34028:
00034028add x20, sp, 64
0003402cadr x27, 16
00034030stp x29, x27, [sp-24]
00034034sub x29, sp, 24
00034038bl fn_87cf8
0003403csub x29, sp, 8
00034040add x0, sp, 64
00034044mov x2, xzr
00034048bl runtime.(*unwinder).init
0003404cb 0x34100
00034050
00034050loc_34050:
00034050subs wzr, w1, 6
00034054b.ne 0x34068
00034058mov x0, xzr
0003405cldp x29, x30, [sp-8]
00034060add sp, sp, 304
00034064ret x30
00034068
00034068loc_34068:
00034068ldr x0, [sp+312]
0003406cbl runtime.readgstatus
00034070mov w1, w0
00034074str x1, [sp+264]
00034078ldr x1, [sp+312]
0003407cldr x1, [x1+160]
00034080str x1, [sp+256]
00034084bl runtime.printlock
00034088adrp x0, 0x67e000
0003408cadd x0, x0, 3832
00034090orr x1, xzr, 12
00034094bl runtime.printstring
00034098ldr x0, [sp+312]
0003409cbl runtime.printpointer
000340a0adrp x0, 0x67c000
000340a4add x0, x0, 3437
000340a8orr x1, xzr, 7
000340acbl runtime.printstring
000340b0ldr x0, [sp+256]
000340b4bl runtime.printuint
000340b8adrp x0, 0x682000
000340bcadd x0, x0, 16
000340c0movz x1, 19
000340c4bl runtime.printstring
000340c8ldr x0, [sp+264]
000340ccbl runtime.printuint
000340d0bl runtime.printnl
000340d4bl runtime.printunlock
000340d8adrp x0, 0x681000
000340dcadd x0, x0, 166
000340e0movz x1, 17
000340e4bl runtime.throw
000340e8
000340e8loc_340e8:
000340e8add x0, sp, 64
000340ecadd x1, sp, 160
000340f0ldr x2, [sp+320]
000340f4bl runtime.scanframeworker
000340f8add x0, sp, 64
000340fcbl runtime.(*unwinder).next
00034100
00034100loc_34100:
00034100add x0, sp, 64
00034104bl runtime.(*unwinder).valid
00034108tbnz w0, 0, 0x340e8
0003410cldr x5, [sp+312]
00034110ldr x6, [x5+40]
00034114orr x0, xzr, 1
00034118b 0x34120
0003411c
0003411cloc_3411c:
0003411cldr x6, [sp+280]
00034120
00034120loc_34120:
00034120str x6, [sp+280]
00034124tbz w0, 0, 0x34130
00034128mov x0, xzr
0003412cb 0x34138
00034130
00034130loc_34130:
00034130ldr x6, [x6+32]
00034134str x6, [sp+280]
00034138
00034138loc_34138:
00034138ldr x6, [sp+280]
0003413ccbz x6, 0x341d4
00034140strb w0, [sp+59]
00034144ldr x7, [x6+24]
00034148cbz x7, 0x34170
0003414cadd x0, x6, 24
00034150orr x1, xzr, 8
00034154adrp x2, 0x98c000
00034158add x2, x2, 1377
0003415cldr x3, [sp+320]
00034160add x4, sp, 160
00034164bl runtime.scanblock
00034168ldrb w0, [sp+59]
0003416cldr x5, [sp+312]
00034170
00034170loc_34170:
00034170ldr x6, [sp+280]
00034174ldr x7, [x6+32]
00034178cbz x7, 0x341a0
0003417cadd x0, x6, 32
00034180orr x1, xzr, 8
00034184adrp x2, 0x98c000
00034188add x2, x2, 1377
0003418cldr x3, [sp+320]
00034190add x4, sp, 160
00034194bl runtime.scanblock
00034198ldrb w0, [sp+59]
0003419cldr x5, [sp+312]
000341a0
000341a0loc_341a0:
000341a0ldr x6, [sp+280]
000341a4ldrb w6, [x6]
000341a8tbz w6, 0, 0x3411c
000341acadd x0, sp, 280
000341b0orr x1, xzr, 8
000341b4adrp x2, 0x98c000
000341b8add x2, x2, 1377
000341bcldr x3, [sp+320]
000341c0add x4, sp, 160
000341c4bl runtime.scanblock
000341c8ldrb w0, [sp+59]
000341ccldr x5, [sp+312]
000341d0b 0x3411c
000341d4
000341d4loc_341d4:
000341d4ldr x1, [x5+32]
000341d8cbz x1, 0x341e8
000341dcadd x0, sp, 160
000341e0mov x2, xzr
000341e4bl runtime.(*stackScanState).putPtr
000341e8
000341e8loc_341e8:
000341e8add x0, sp, 160
000341ecbl runtime.(*stackScanState).buildIndex
000341f0
000341f0loc_341f0:
000341f0add x0, sp, 160
000341f4bl runtime.(*stackScanState).getPtr
000341f8cbz x0, 0x342a0
000341fcstrb w1, [sp+58]
00034200mov x1, x0
00034204add x0, sp, 160
00034208bl runtime.(*stackScanState).findObject
0003420ccbz x0, 0x341f0
00034210ldr x2, [x0+8]
00034214cbz x2, 0x341f0
00034218str x0, [sp+248]
0003421cstr x2, [sp+272]
00034220mov x1, xzr
00034224bl runtime.(*stackObject).setRecord
00034228ldr x0, [sp+272]
0003422cbl runtime.(*stackObjectRecord).gcdata
00034230ldr x2, [sp+160]
00034234ldr x3, [sp+248]
00034238ldr w3, [x3]
0003423cadd x2, x2, x3
00034240ldrb w3, [sp+58]
00034244tbz w3, 0, 0x3426c
00034248ldr x3, [sp+320]
0003424cadd x4, sp, 160
00034250mov x5, x0
00034254mov x0, x2
00034258mov x6, x1
0003425cmov x1, x5
00034260mov x2, x6
00034264bl runtime.scanConservative
00034268b 0x341f0
0003426c
0003426cloc_3426c:
0003426cldr x3, [sp+320]
00034270add x4, sp, 160
00034274mov x5, x0
00034278mov x0, x2
0003427cmov x6, x1
00034280mov x1, x5
00034284mov x2, x6
00034288bl runtime.scanblock
0003428cb 0x341f0
00034290
00034290loc_34290:
00034290ldr x1, [x0+24]
00034294str x1, [sp+208]
00034298str xzr, [x0+16]
0003429cbl runtime.putempty
000342a0
000342a0loc_342a0:
000342a0ldr x0, [sp+208]
000342a4cbnz x0, 0x34290
000342a8ldr x2, [sp+184]
000342accbnz x2, 0x342d0
000342b0ldr x2, [sp+200]
000342b4cbnz x2, 0x342d0
000342b8ldr x2, [sp+192]
000342bccbnz x2, 0x342d0
000342c0ldr x0, [sp+240]
000342c4ldp x29, x30, [sp-8]
000342c8add sp, sp, 304
000342ccret x30
000342d0
000342d0loc_342d0:
000342d0adrp x0, 0x685000
000342d4add x0, x0, 2129
000342d8movz x1, 25
000342dcbl runtime.throw
000342e0
000342e0loc_342e0:
000342e0adrp x0, 0x685000
000342e4add x0, x0, 30
000342e8orr x1, xzr, 24
000342ecbl runtime.throw
000342f0
000342f0loc_342f0:
000342f0subs wzr, w1, 2
000342f4b.ne 0x34068
000342f8ldr x0, [sp+312]
000342fcbl runtime.readgstatus
00034300mov w1, w0
00034304str x1, [sp+264]
00034308ldr x1, [sp+312]
0003430cldr x1, [x1+160]
00034310str x1, [sp+256]
00034314bl runtime.printlock
00034318adrp x0, 0x67e000
0003431cadd x0, x0, 3832
00034320orr x1, xzr, 12
00034324bl runtime.printstring
00034328ldr x0, [sp+312]
0003432cbl runtime.printpointer
00034330adrp x0, 0x67c000
00034334add x0, x0, 3437
00034338orr x1, xzr, 7
0003433cbl runtime.printstring
00034340ldr x0, [sp+256]
00034344bl runtime.printuint
00034348adrp x0, 0x682000
0003434cadd x0, x0, 16
00034350movz x1, 19
00034354bl runtime.printstring
00034358ldr x0, [sp+264]
0003435cbl runtime.printuint
00034360bl runtime.printnl
00034364bl runtime.printunlock
00034368adrp x0, 0x68a000
0003436cadd x0, x0, 1200
00034370orr x1, xzr, 32
00034374bl runtime.throw
00034378
00034378loc_34378:
00034378ldr x0, [sp+312]
0003437cbl runtime.readgstatus
00034380str w0, [sp+60]
00034384ldr x1, [sp+312]
00034388ldr x1, [x1+160]
0003438cstr x1, [sp+264]
00034390bl runtime.printlock
00034394adrp x0, 0x683000
00034398add x0, x0, 2622
0003439cmovz x1, 22
000343a0bl runtime.printstring
000343a4ldr x0, [sp+312]
000343a8bl runtime.printpointer
000343acadrp x0, 0x67c000
000343b0add x0, x0, 3437
000343b4orr x1, xzr, 7
000343b8bl runtime.printstring
000343bcldr x0, [sp+264]
000343c0bl runtime.printuint
000343c4adrp x0, 0x682000
000343c8add x0, x0, 16
000343ccmovz x1, 19
000343d0bl runtime.printstring
000343d4ldr w1, [sp+60]
000343d8mov x0, x1
000343dcbl runtime.printhex
000343e0bl runtime.printnl
000343e4bl runtime.printunlock
000343e8adrp x0, 0x683000
000343ecadd x0, x0, 2644
000343f0movz x1, 22
000343f4bl runtime.throw
000343f8hint
000343fc
000343fcloc_343fc:
000343fcstp x0, x1, [sp+8]
00034400mov x3, x30
00034404bl runtime.morestackc.abi0
00034408ldp x0, x1, [sp+8]
0003440cb 0x33f00
00033f00
00034410
00034410runtime.scanframeworker: ; void runtime.scanframeworker(runtime.stkframe * frame, runtime.stackScanState * state, runtime.gcWork * gcw)
00034410ldr x16, [x28+16]
00034414subs xzr, sp, x16
00034418b.ls 0x34648
0003441cstr x30, [sp-96]!
00034420stur x29, [sp-8]
00034424sub x29, sp, 8
00034428str x0, [sp+104]
0003442cstr x1, [sp+112]
00034430str x2, [sp+120]
00034434ldr x2, [x0]
00034438ldr x1, [x0+8]
0003443cmov x0, x2
00034440bl runtime.funcInfo.valid
00034444tbz w0, 0, 0x34460
00034448ldr x2, [sp+104]
0003444cldr x3, [x2]
00034450ldrb w3, [x3+40]
00034454subs wzr, w3, 3
00034458cset x3, eq
0003445cb 0x34468
00034460
00034460loc_34460:
00034460ldr x2, [sp+104]
00034464mov x3, xzr
00034468
00034468loc_34468:
00034468strb w3, [sp+51]
0003446cldr x1, [x2+8]
00034470ldr x0, [x2]
00034474bl runtime.funcInfo.valid
00034478tbz w0, 0, 0x34494
0003447cldr x0, [sp+104]
00034480ldr x5, [x0]
00034484ldrb w5, [x5+40]
00034488subs wzr, w5, 6
0003448ccset x5, eq
00034490b 0x3449c
00034494
00034494loc_34494:
00034494ldr x0, [sp+104]
00034498mov x5, xzr
0003449c
0003449cloc_3449c:
0003449cldr x4, [sp+112]
000344a0ldrb w6, [x4+16]
000344a4tbnz w6, 0, 0x3454c
000344a8ldrb w1, [sp+51]
000344actbnz w1, 0, 0x34550
000344b0tbnz w5, 0, 0x34550
000344b4mov x1, xzr
000344b8bl runtime.(*stkframe).getStackMap
000344bcstr x4, [sp+72]
000344c0str x5, [sp+56]
000344c4subs wzr, w0, 0
000344c8b.le 0x3450c
000344ccstr x3, [sp+80]
000344d0str w2, [sp+52]
000344d4sbfm x5, x0, 0, 31
000344d8sbfm x6, x0, 61, 31
000344dcldr x7, [sp+104]
000344e0ldr x7, [x7+56]
000344e4sub x0, x7, x5, lsl #3
000344e8mov x2, x1
000344ecldr x3, [sp+120]
000344f0ldr x4, [sp+112]
000344f4mov x1, x6
000344f8bl runtime.scanblock
000344fcldrsw x2, [sp+52]
00034500ldr x3, [sp+80]
00034504ldr x4, [sp+72]
00034508ldr x5, [sp+56]
0003450c
0003450cloc_3450c:
0003450csubs wzr, w2, 0
00034510b.le 0x34538
00034514ldr x5, [sp+104]
00034518ldr x0, [x5+64]
0003451csbfm x1, x2, 61, 31
00034520mov x2, x3
00034524ldr x3, [sp+120]
00034528ldr x4, [sp+112]
0003452cbl runtime.scanblock
00034530ldr x4, [sp+72]
00034534ldr x5, [sp+56]
00034538
00034538loc_34538:
00034538ldr x3, [sp+104]
0003453cldr x6, [x3+56]
00034540cbz x6, 0x345e8
00034544mov x0, xzr
00034548b 0x345f8
0003454c
0003454cloc_3454c:
0003454cldrb w1, [sp+51]
00034550
00034550loc_34550:
00034550strb w5, [sp+50]
00034554ldr x6, [x0+56]
00034558cbz x6, 0x3458c
0003455cldr x7, [x0+40]
00034560sub x6, x6, x7
00034564cbz x6, 0x3458c
00034568mov x0, x7
0003456cmov x1, x6
00034570mov x2, xzr
00034574ldr x3, [sp+120]
00034578bl runtime.scanConservative
0003457cldr x0, [sp+104]
00034580ldrb w1, [sp+51]
00034584ldr x4, [sp+112]
00034588ldrb w5, [sp+50]
0003458c
0003458cloc_3458c:
0003458cbl runtime.(*stkframe).argBytes
00034590cbz x0, 0x345b4
00034594ldr x5, [sp+104]
00034598ldr x5, [x5+64]
0003459cmov x1, x0
000345a0mov x2, xzr
000345a4ldr x3, [sp+120]
000345a8ldr x4, [sp+112]
000345acmov x0, x5
000345b0bl runtime.scanConservative
000345b4
000345b4loc_345b4:
000345b4ldrb w0, [sp+51]
000345b8tbnz w0, 0, 0x345c4
000345bcldrb w0, [sp+50]
000345c0tbz w0, 0, 0x345d4
000345c4
000345c4loc_345c4:
000345c4orr x0, xzr, 1
000345c8ldr x1, [sp+112]
000345ccstrb w0, [x1+16]
000345d0b 0x345dc
000345d4
000345d4loc_345d4:
000345d4ldr x0, [sp+112]
000345d8strb wzr, [x0+16]
000345dc
000345dcloc_345dc:
000345dcldur x29, [sp-8]
000345e0ldr x30, [sp], 96
000345e4ret x30
000345e8
000345e8loc_345e8:
000345e8ldur x29, [sp-8]
000345ecldr x30, [sp], 96
000345f0ret x30
000345f4
000345f4loc_345f4:
000345f4add x0, x0, 1
000345f8
000345f8loc_345f8:
000345f8subs xzr, x5, x0
000345fcb.le 0x345e8
00034600ubfm x6, x0, 60, 59
00034604add x2, x4, x0, lsl #4
00034608ldr x7, [x3+56]
0003460cldrsw x6, [x4+x6]
00034610tbnz w6, 31, 0x34618
00034614ldr x7, [x3+64]
00034618
00034618loc_34618:
00034618add x1, x7, x6
0003461cldr x6, [x3+40]
00034620subs xzr, x6, x1
00034624b.hi 0x345f4
00034628str x0, [sp+64]
0003462cldr x0, [sp+112]
00034630bl runtime.(*stackScanState).addObject
00034634ldr x0, [sp+64]
00034638ldr x3, [sp+104]
0003463cldr x4, [sp+72]
00034640ldr x5, [sp+56]
00034644b 0x345f4
00034648
00034648loc_34648:
00034648stp x0, x1, [sp+8]
0003464cstr x2, [sp+24]
00034650mov x3, x30
00034654bl runtime.morestack_noctxt.abi0
00034658ldp x0, x1, [sp+8]
0003465cldr x2, [sp+24]
00034660b 0x34410
00034664udf 0
00034668udf 0
0003466cudf 0
00034410
00034410runtime.scanframeworker: ; void runtime.scanframeworker(runtime.stkframe * frame, runtime.stackScanState * state, runtime.gcWork * gcw)
00034410ldr x16, [x28+16]
00034414subs xzr, sp, x16
00034418b.ls 0x34648
0003441cstr x30, [sp-96]!
00034420stur x29, [sp-8]
00034424sub x29, sp, 8
00034428str x0, [sp+104]
0003442cstr x1, [sp+112]
00034430str x2, [sp+120]
00034434ldr x2, [x0]
00034438ldr x1, [x0+8]
0003443cmov x0, x2
00034440bl runtime.funcInfo.valid
00034444tbz w0, 0, 0x34460
00034448ldr x2, [sp+104]
0003444cldr x3, [x2]
00034450ldrb w3, [x3+40]
00034454subs wzr, w3, 3
00034458cset x3, eq
0003445cb 0x34468
00034460
00034460loc_34460:
00034460ldr x2, [sp+104]
00034464mov x3, xzr
00034468
00034468loc_34468:
00034468strb w3, [sp+51]
0003446cldr x1, [x2+8]
00034470ldr x0, [x2]
00034474bl runtime.funcInfo.valid
00034478tbz w0, 0, 0x34494
0003447cldr x0, [sp+104]
00034480ldr x5, [x0]
00034484ldrb w5, [x5+40]
00034488subs wzr, w5, 6
0003448ccset x5, eq
00034490b 0x3449c
00034494
00034494loc_34494:
00034494ldr x0, [sp+104]
00034498mov x5, xzr
0003449c
0003449cloc_3449c:
0003449cldr x4, [sp+112]
000344a0ldrb w6, [x4+16]
000344a4tbnz w6, 0, 0x3454c
000344a8ldrb w1, [sp+51]
000344actbnz w1, 0, 0x34550
000344b0tbnz w5, 0, 0x34550
000344b4mov x1, xzr
000344b8bl runtime.(*stkframe).getStackMap
000344bcstr x4, [sp+72]
000344c0str x5, [sp+56]
000344c4subs wzr, w0, 0
000344c8b.le 0x3450c
000344ccstr x3, [sp+80]
000344d0str w2, [sp+52]
000344d4sbfm x5, x0, 0, 31
000344d8sbfm x6, x0, 61, 31
000344dcldr x7, [sp+104]
000344e0ldr x7, [x7+56]
000344e4sub x0, x7, x5, lsl #3
000344e8mov x2, x1
000344ecldr x3, [sp+120]
000344f0ldr x4, [sp+112]
000344f4mov x1, x6
000344f8bl runtime.scanblock
000344fcldrsw x2, [sp+52]
00034500ldr x3, [sp+80]
00034504ldr x4, [sp+72]
00034508ldr x5, [sp+56]
0003450c
0003450cloc_3450c:
0003450csubs wzr, w2, 0
00034510b.le 0x34538
00034514ldr x5, [sp+104]
00034518ldr x0, [x5+64]
0003451csbfm x1, x2, 61, 31
00034520mov x2, x3
00034524ldr x3, [sp+120]
00034528ldr x4, [sp+112]
0003452cbl runtime.scanblock
00034530ldr x4, [sp+72]
00034534ldr x5, [sp+56]
00034538
00034538loc_34538:
00034538ldr x3, [sp+104]
0003453cldr x6, [x3+56]
00034540cbz x6, 0x345e8
00034544mov x0, xzr
00034548b 0x345f8
0003454c
0003454cloc_3454c:
0003454cldrb w1, [sp+51]
00034550
00034550loc_34550:
00034550strb w5, [sp+50]
00034554ldr x6, [x0+56]
00034558cbz x6, 0x3458c
0003455cldr x7, [x0+40]
00034560sub x6, x6, x7
00034564cbz x6, 0x3458c
00034568mov x0, x7
0003456cmov x1, x6
00034570mov x2, xzr
00034574ldr x3, [sp+120]
00034578bl runtime.scanConservative
0003457cldr x0, [sp+104]
00034580ldrb w1, [sp+51]
00034584ldr x4, [sp+112]
00034588ldrb w5, [sp+50]
0003458c
0003458cloc_3458c:
0003458cbl runtime.(*stkframe).argBytes
00034590cbz x0, 0x345b4
00034594ldr x5, [sp+104]
00034598ldr x5, [x5+64]
0003459cmov x1, x0
000345a0mov x2, xzr
000345a4ldr x3, [sp+120]
000345a8ldr x4, [sp+112]
000345acmov x0, x5
000345b0bl runtime.scanConservative
000345b4
000345b4loc_345b4:
000345b4ldrb w0, [sp+51]
000345b8tbnz w0, 0, 0x345c4
000345bcldrb w0, [sp+50]
000345c0tbz w0, 0, 0x345d4
000345c4
000345c4loc_345c4:
000345c4orr x0, xzr, 1
000345c8ldr x1, [sp+112]
000345ccstrb w0, [x1+16]
000345d0b 0x345dc
000345d4
000345d4loc_345d4:
000345d4ldr x0, [sp+112]
000345d8strb wzr, [x0+16]
000345dc
000345dcloc_345dc:
000345dcldur x29, [sp-8]
000345e0ldr x30, [sp], 96
000345e4ret x30
000345e8
000345e8loc_345e8:
000345e8ldur x29, [sp-8]
000345ecldr x30, [sp], 96
000345f0ret x30
000345f4
000345f4loc_345f4:
000345f4add x0, x0, 1
000345f8
000345f8loc_345f8:
000345f8subs xzr, x5, x0
000345fcb.le 0x345e8
00034600ubfm x6, x0, 60, 59
00034604add x2, x4, x0, lsl #4
00034608ldr x7, [x3+56]
0003460cldrsw x6, [x4+x6]
00034610tbnz w6, 31, 0x34618
00034614ldr x7, [x3+64]
00034618
00034618loc_34618:
00034618add x1, x7, x6
0003461cldr x6, [x3+40]
00034620subs xzr, x6, x1
00034624b.hi 0x345f4
00034628str x0, [sp+64]
0003462cldr x0, [sp+112]
00034630bl runtime.(*stackScanState).addObject
00034634ldr x0, [sp+64]
00034638ldr x3, [sp+104]
0003463cldr x4, [sp+72]
00034640ldr x5, [sp+56]
00034644b 0x345f4
00034648
00034648loc_34648:
00034648stp x0, x1, [sp+8]
0003464cstr x2, [sp+24]
00034650mov x3, x30
00034654bl runtime.morestack_noctxt.abi0
00034658ldp x0, x1, [sp+8]
0003465cldr x2, [sp+24]
00034660b 0x34410
00034664udf 0
00034668udf 0
0003466cudf 0
00034410
00034670
00034670runtime.gcDrainMarkWorkerIdle: ; void runtime.gcDrainMarkWorkerIdle(runtime.gcWork * gcw)
00034670ldr x16, [x28+16]
00034674subs xzr, sp, x16
00034678b.ls 0x3469c
0003467cstr x30, [sp-32]!
00034680stur x29, [sp-8]
00034684sub x29, sp, 8
00034688orr x1, xzr, 7
0003468cbl runtime.gcDrain
00034690ldur x29, [sp-8]
00034694ldr x30, [sp], 32
00034698ret x30
0003469c
0003469cloc_3469c:
0003469cstr x0, [sp+8]
000346a0mov x3, x30
000346a4bl runtime.morestack_noctxt.abi0
000346a8ldr x0, [sp+8]
000346acb 0x34670
00034670
00034670runtime.gcDrainMarkWorkerIdle: ; void runtime.gcDrainMarkWorkerIdle(runtime.gcWork * gcw)
00034670ldr x16, [x28+16]
00034674subs xzr, sp, x16
00034678b.ls 0x3469c
0003467cstr x30, [sp-32]!
00034680stur x29, [sp-8]
00034684sub x29, sp, 8
00034688orr x1, xzr, 7
0003468cbl runtime.gcDrain
00034690ldur x29, [sp-8]
00034694ldr x30, [sp], 32
00034698ret x30
0003469c
0003469cloc_3469c:
0003469cstr x0, [sp+8]
000346a0mov x3, x30
000346a4bl runtime.morestack_noctxt.abi0
000346a8ldr x0, [sp+8]
000346acb 0x34670
00034670
000346b0
000346b0runtime.gcDrainMarkWorkerDedicated: ; void runtime.gcDrainMarkWorkerDedicated(runtime.gcWork * gcw, bool untilPreempt)
000346b0ldr x16, [x28+16]
000346b4subs xzr, sp, x16
000346b8b.ls 0x346e8
000346bcstr x30, [sp-32]!
000346c0stur x29, [sp-8]
000346c4sub x29, sp, 8
000346c8ands wzr, w1, 1
000346ccorr x2, xzr, 3
000346d0orr x3, xzr, 2
000346d4csel x1, x2, x3, ne
000346d8bl runtime.gcDrain
000346dcldur x29, [sp-8]
000346e0ldr x30, [sp], 32
000346e4ret x30
000346e8
000346e8loc_346e8:
000346e8str x0, [sp+8]
000346ecstrb w1, [sp+16]
000346f0mov x3, x30
000346f4bl runtime.morestack_noctxt.abi0
000346f8ldr x0, [sp+8]
000346fcldrb w1, [sp+16]
00034700b 0x346b0
00034704udf 0
00034708udf 0
0003470cudf 0
000346b0
000346b0runtime.gcDrainMarkWorkerDedicated: ; void runtime.gcDrainMarkWorkerDedicated(runtime.gcWork * gcw, bool untilPreempt)
000346b0ldr x16, [x28+16]
000346b4subs xzr, sp, x16
000346b8b.ls 0x346e8
000346bcstr x30, [sp-32]!
000346c0stur x29, [sp-8]
000346c4sub x29, sp, 8
000346c8ands wzr, w1, 1
000346ccorr x2, xzr, 3
000346d0orr x3, xzr, 2
000346d4csel x1, x2, x3, ne
000346d8bl runtime.gcDrain
000346dcldur x29, [sp-8]
000346e0ldr x30, [sp], 32
000346e4ret x30
000346e8
000346e8loc_346e8:
000346e8str x0, [sp+8]
000346ecstrb w1, [sp+16]
000346f0mov x3, x30
000346f4bl runtime.morestack_noctxt.abi0
000346f8ldr x0, [sp+8]
000346fcldrb w1, [sp+16]
00034700b 0x346b0
00034704udf 0
00034708udf 0
0003470cudf 0
000346b0
00034710
00034710runtime.gcDrainMarkWorkerFractional: ; void runtime.gcDrainMarkWorkerFractional(runtime.gcWork * gcw)
00034710ldr x16, [x28+16]
00034714subs xzr, sp, x16
00034718b.ls 0x3473c
0003471cstr x30, [sp-32]!
00034720stur x29, [sp-8]
00034724sub x29, sp, 8
00034728movz x1, 11
0003472cbl runtime.gcDrain
00034730ldur x29, [sp-8]
00034734ldr x30, [sp], 32
00034738ret x30
0003473c
0003473cloc_3473c:
0003473cstr x0, [sp+8]
00034740mov x3, x30
00034744bl runtime.morestack_noctxt.abi0
00034748ldr x0, [sp+8]
0003474cb 0x34710
00034710
00034710runtime.gcDrainMarkWorkerFractional: ; void runtime.gcDrainMarkWorkerFractional(runtime.gcWork * gcw)
00034710ldr x16, [x28+16]
00034714subs xzr, sp, x16
00034718b.ls 0x3473c
0003471cstr x30, [sp-32]!
00034720stur x29, [sp-8]
00034724sub x29, sp, 8
00034728movz x1, 11
0003472cbl runtime.gcDrain
00034730ldur x29, [sp-8]
00034734ldr x30, [sp], 32
00034738ret x30
0003473c
0003473cloc_3473c:
0003473cstr x0, [sp+8]
00034740mov x3, x30
00034744bl runtime.morestack_noctxt.abi0
00034748ldr x0, [sp+8]
0003474cb 0x34710
00034710
00034750
00034750runtime.gcDrain: ; void runtime.gcDrain(runtime.gcWork * gcw, runtime.gcDrainFlags flags)
00034750ldr x16, [x28+16]
00034754subs xzr, sp, x16
00034758b.ls 0x34bbc
0003475cstr x30, [sp-96]!
00034760stur x29, [sp-8]
00034764sub x29, sp, 8
00034768adrp x27, 0xa17000
0003476cldrb w2, [x27+3056]
00034770tbz w2, 0, 0x34ba8
00034774str x0, [sp+104]
00034778str x1, [sp+112]
0003477cldr x1, [x28+48]
00034780ldr x1, [x1+192]
00034784str x1, [sp+72]
00034788ldr x1, [x1+48]
0003478cldr x0, [x1+208]
00034790bl runtime.puintptr.ptr
00034794ldr x1, [sp+104]
00034798ldr x2, [x1+24]
0003479cldr x3, [sp+112]
000347a0ands xzr, x3, 12
000347a4b.eq 0x347dc
000347a8movz x4, 34464
000347acmovk x4, 0x10000
000347b0add x4, x4, x2
000347b4tbz w3, 2, 0x347c4
000347b8adrp x5, 0x6a4000
000347bcadd x5, x5, 2480
000347c0b 0x347e4
000347c4
000347c4loc_347c4:
000347c4and x5, x3, 8
000347c8subs xzr, x5, 0
000347ccadrp x5, 0x6a4000
000347d0add x5, x5, 2472
000347d4csel x5, x5, xzr, ne
000347d8b 0x347e4
000347dc
000347dcloc_347dc:
000347dcmovn x4, 0x8000000000000000
000347e0mov x5, xzr
000347e4
000347e4loc_347e4:
000347e4str x0, [sp+64]
000347e8str x5, [sp+80]
000347ecadrp x27, 0x9f0000
000347f0ldr w6, [x27+2984]
000347f4adrp x27, 0x9f0000
000347f8ldr w7, [x27+2988]
000347fcsubs wzr, w7, w6
00034800b.ls 0x34820
00034804str x2, [sp+32]
00034808str x4, [sp+40]
0003480cands xzr, x3, 2
00034810cset x6, ne
00034814strb w6, [sp+31]
00034818ldr x7, [sp+72]
0003481cb 0x34a7c
00034820
00034820loc_34820:
00034820ldr x6, [sp+72]
00034824b 0x34844
00034828
00034828loc_34828:
00034828ldr x6, [sp+72]
0003482cldr x0, [sp+64]
00034830mov x5, x4
00034834mov x4, x3
00034838mov x2, x1
0003483cldr x1, [sp+104]
00034840ldr x3, [sp+112]
00034844
00034844loc_34844:
00034844str x2, [sp+32]
00034848str x4, [sp+40]
0003484cldrb w7, [x6+185]
00034850tbz w7, 0, 0x348cc
00034854tbz w3, 0, 0x34860
00034858orr x7, xzr, 1
0003485cb 0x348d0
00034860
00034860loc_34860:
00034860adrp x0, 0x9f3000
00034864add x0, x0, 360
00034868bl internal/runtime/atomic.(*Bool).Load
0003486ctbz w0, 0, 0x34894
00034870ldr x0, [sp+64]
00034874ldr x1, [sp+104]
00034878ldr x2, [sp+32]
0003487cldr x3, [sp+112]
00034880ldr x4, [sp+40]
00034884ldr x5, [sp+80]
00034888ldr x6, [sp+72]
0003488corr x7, xzr, 1
00034890b 0x348d0
00034894
00034894loc_34894:
00034894ldr x2, [sp+64]
00034898ldrsb x27, [x2]
0003489cldr w3, [x2+8832]
000348a0subs wzr, w3, 0
000348a4cset x3, ne
000348a8mov x0, x2
000348acldr x1, [sp+104]
000348b0ldr x2, [sp+32]
000348b4ldr x4, [sp+40]
000348b8ldr x5, [sp+80]
000348bcldr x6, [sp+72]
000348c0mov x7, x3
000348c4ldr x3, [sp+112]
000348c8b 0x348d0
000348cc
000348ccloc_348cc:
000348ccmov x7, xzr
000348d0
000348d0loc_348d0:
000348d0tbnz w7, 0, 0x34a00
000348d4adrp x27, 0x9f0000
000348d8ldr x7, [x27+2656]
000348dccbnz x7, 0x348ec
000348e0mov x0, x1
000348e4bl runtime.(*gcWork).balance
000348e8ldr x1, [sp+104]
000348ec
000348ecloc_348ec:
000348ecmov x0, x1
000348f0bl runtime.(*gcWork).tryGetFast
000348f4cbnz x0, 0x34910
000348f8ldr x0, [sp+104]
000348fcbl runtime.(*gcWork).tryGet
00034900cbnz x0, 0x34910
00034904bl runtime.wbBufFlush
00034908ldr x0, [sp+104]
0003490cbl runtime.(*gcWork).tryGet
00034910
00034910loc_34910:
00034910cbz x0, 0x349f0
00034914ldr x1, [sp+104]
00034918bl runtime.scanobject
0003491cldr x0, [sp+104]
00034920ldr x1, [x0+24]
00034924subs xzr, x1, 2000
00034928b.ge 0x34944
0003492cldr x0, [sp+112]
00034930ldr x2, [sp+104]
00034934ldr x4, [sp+80]
00034938ldr x3, [sp+40]
0003493cldr x1, [sp+32]
00034940b 0x34828
00034944
00034944loc_34944:
00034944adrp x0, 0xa18000
00034948add x0, x0, 2656
0003494cbl internal/runtime/atomic.(*Int64).Add
00034950ldr x0, [sp+112]
00034954tbnz w0, 1, 0x34960
00034958ldr x1, [sp+32]
0003495cb 0x3497c
00034960
00034960loc_34960:
00034960ldr x1, [sp+104]
00034964ldr x1, [x1+24]
00034968ldr x2, [sp+32]
0003496csub x0, x1, x2
00034970bl runtime.gcFlushBgCredit
00034974ldr x0, [sp+112]
00034978mov x1, xzr
0003497c
0003497cloc_3497c:
0003497cldr x2, [sp+104]
00034980ldr x3, [x2+24]
00034984str xzr, [x2+24]
00034988ldr x4, [sp+40]
0003498csub x3, x4, x3
00034990subs xzr, x3, 0
00034994b.gt 0x349e8
00034998movz x4, 34464
0003499cmovk x4, 0x10000
000349a0add x3, x3, x4
000349a4ldr x4, [sp+80]
000349a8cbnz x4, 0x349b4
000349acmov x5, xzr
000349b0b 0x349e0
000349b4
000349b4loc_349b4:
000349b4str x3, [sp+56]
000349b8str x1, [sp+48]
000349bcldr x0, [x4]
000349c0mov x26, x4
000349c4blr x0
000349c8ldr x1, [sp+48]
000349ccldr x2, [sp+104]
000349d0ldr x3, [sp+56]
000349d4ldr x4, [sp+80]
000349d8mov x5, x0
000349dcldr x0, [sp+112]
000349e0
000349e0loc_349e0:
000349e0tbz w5, 0, 0x34828
000349e4b 0x34a0c
000349e8
000349e8loc_349e8:
000349e8ldr x4, [sp+80]
000349ecb 0x34828
000349f0
000349f0loc_349f0:
000349f0ldr x0, [sp+112]
000349f4ldr x2, [sp+104]
000349f8ldr x1, [sp+32]
000349fcb 0x34a0c
00034a00
00034a00loc_34a00:
00034a00mov x0, x3
00034a04mov x2, x1
00034a08ldr x1, [sp+32]
00034a0c
00034a0cloc_34a0c:
00034a0cldr x3, [x2+24]
00034a10subs xzr, x3, 0
00034a14b.le 0x34a50
00034a18str x1, [sp+32]
00034a1cadrp x0, 0xa18000
00034a20add x0, x0, 2656
00034a24mov x1, x3
00034a28bl internal/runtime/atomic.(*Int64).Add
00034a2cldr x0, [sp+112]
00034a30tbz w0, 1, 0x34a48
00034a34ldr x1, [sp+104]
00034a38ldr x1, [x1+24]
00034a3cldr x2, [sp+32]
00034a40sub x0, x1, x2
00034a44bl runtime.gcFlushBgCredit
00034a48
00034a48loc_34a48:
00034a48ldr x0, [sp+104]
00034a4cstr xzr, [x0+24]
00034a50
00034a50loc_34a50:
00034a50ldur x29, [sp-8]
00034a54ldr x30, [sp], 96
00034a58ret x30
00034a5c
00034a5cloc_34a5c:
00034a5cldr x1, [sp+104]
00034a60ldr x3, [sp+112]
00034a64ldr x7, [sp+72]
00034a68ldrb w6, [sp+31]
00034a6cldr x0, [sp+64]
00034a70ldr x2, [sp+32]
00034a74ldr x4, [sp+40]
00034a78ldr x5, [sp+80]
00034a7c
00034a7cloc_34a7c:
00034a7cldrb w8, [x7+185]
00034a80tbz w8, 0, 0x34b04
00034a84tbz w3, 0, 0x34a90
00034a88orr x8, xzr, 1
00034a8cb 0x34b08
00034a90
00034a90loc_34a90:
00034a90adrp x0, 0x9f3000
00034a94add x0, x0, 360
00034a98bl internal/runtime/atomic.(*Bool).Load
00034a9ctbz w0, 0, 0x34ac8
00034aa0ldr x0, [sp+64]
00034aa4ldr x1, [sp+104]
00034aa8ldr x2, [sp+32]
00034aacldr x3, [sp+112]
00034ab0ldr x4, [sp+40]
00034ab4ldr x5, [sp+80]
00034ab8ldrb w6, [sp+31]
00034abcldr x7, [sp+72]
00034ac0orr x8, xzr, 1
00034ac4b 0x34b08
00034ac8
00034ac8loc_34ac8:
00034ac8ldr x3, [sp+64]
00034accldrsb x27, [x3]
00034ad0ldr w4, [x3+8832]
00034ad4subs wzr, w4, 0
00034ad8cset x4, ne
00034adcmov x0, x3
00034ae0ldr x1, [sp+104]
00034ae4ldr x2, [sp+32]
00034ae8ldr x3, [sp+112]
00034aecldr x5, [sp+80]
00034af0ldrb w6, [sp+31]
00034af4ldr x7, [sp+72]
00034af8mov x8, x4
00034afcldr x4, [sp+40]
00034b00b 0x34b08
00034b04
00034b04loc_34b04:
00034b04mov x8, xzr
00034b08
00034b08loc_34b08:
00034b08tbnz w8, 0, 0x34820
00034b0cadrp x27, 0xa17000
00034b10ldrb w8, [x27+1516]
00034b14tbz w8, 0, 0x34b30
00034b18orr x8, xzr, 1
00034b1cadrp x9, 0x9f0000
00034b20add x9, x9, 2984
00034b24ldaddal w8, w10, [x9]
00034b28add x10, x10, x8
00034b2cb 0x34b4c
00034b30
00034b30loc_34b30:
00034b30orr x8, xzr, 1
00034b34adrp x9, 0x9f0000
00034b38add x9, x9, 2984
00034b3c
00034b3cloc_34b3c:
00034b3cldaxr w10, [x9]
00034b40add x10, x10, x8
00034b44stlxr w27, w10, [x9]
00034b48cbnz x27, 0x34b3c
00034b4c
00034b4cloc_34b4c:
00034b4csub x10, x10, 1
00034b50adrp x27, 0x9f0000
00034b54ldr w11, [x27+2988]
00034b58subs wzr, w11, w10
00034b5cb.ls 0x34820
00034b60mov x0, x1
00034b64mov x1, x10
00034b68mov x2, x6
00034b6cbl runtime.markroot
00034b70ldr x0, [sp+80]
00034b74cbnz x0, 0x34b80
00034b78mov x1, xzr
00034b7cb 0x34b94
00034b80
00034b80loc_34b80:
00034b80ldr x1, [x0]
00034b84mov x26, x0
00034b88blr x1
00034b8cmov x1, x0
00034b90ldr x0, [sp+80]
00034b94
00034b94loc_34b94:
00034b94tbz w1, 0, 0x34a5c
00034b98ldr x0, [sp+112]
00034b9cldr x2, [sp+104]
00034ba0ldr x1, [sp+32]
00034ba4b 0x34a0c
00034ba8
00034ba8loc_34ba8:
00034ba8adrp x0, 0x684000
00034bacadd x0, x0, 1122
00034bb0movz x1, 23
00034bb4bl runtime.throw
00034bb8hint
00034bbc
00034bbcloc_34bbc:
00034bbcstp x0, x1, [sp+8]
00034bc0mov x3, x30
00034bc4bl runtime.morestack_noctxt.abi0
00034bc8ldp x0, x1, [sp+8]
00034bccb 0x34750
00034750
00034750runtime.gcDrain: ; void runtime.gcDrain(runtime.gcWork * gcw, runtime.gcDrainFlags flags)
00034750ldr x16, [x28+16]
00034754subs xzr, sp, x16
00034758b.ls 0x34bbc
0003475cstr x30, [sp-96]!
00034760stur x29, [sp-8]
00034764sub x29, sp, 8
00034768adrp x27, 0xa17000
0003476cldrb w2, [x27+3056]
00034770tbz w2, 0, 0x34ba8
00034774str x0, [sp+104]
00034778str x1, [sp+112]
0003477cldr x1, [x28+48]
00034780ldr x1, [x1+192]
00034784str x1, [sp+72]
00034788ldr x1, [x1+48]
0003478cldr x0, [x1+208]
00034790bl runtime.puintptr.ptr
00034794ldr x1, [sp+104]
00034798ldr x2, [x1+24]
0003479cldr x3, [sp+112]
000347a0ands xzr, x3, 12
000347a4b.eq 0x347dc
000347a8movz x4, 34464
000347acmovk x4, 0x10000
000347b0add x4, x4, x2
000347b4tbz w3, 2, 0x347c4
000347b8adrp x5, 0x6a4000
000347bcadd x5, x5, 2480
000347c0b 0x347e4
000347c4
000347c4loc_347c4:
000347c4and x5, x3, 8
000347c8subs xzr, x5, 0
000347ccadrp x5, 0x6a4000
000347d0add x5, x5, 2472
000347d4csel x5, x5, xzr, ne
000347d8b 0x347e4
000347dc
000347dcloc_347dc:
000347dcmovn x4, 0x8000000000000000
000347e0mov x5, xzr
000347e4
000347e4loc_347e4:
000347e4str x0, [sp+64]
000347e8str x5, [sp+80]
000347ecadrp x27, 0x9f0000
000347f0ldr w6, [x27+2984]
000347f4adrp x27, 0x9f0000
000347f8ldr w7, [x27+2988]
000347fcsubs wzr, w7, w6
00034800b.ls 0x34820
00034804str x2, [sp+32]
00034808str x4, [sp+40]
0003480cands xzr, x3, 2
00034810cset x6, ne
00034814strb w6, [sp+31]
00034818ldr x7, [sp+72]
0003481cb 0x34a7c
00034820
00034820loc_34820:
00034820ldr x6, [sp+72]
00034824b 0x34844
00034828
00034828loc_34828:
00034828ldr x6, [sp+72]
0003482cldr x0, [sp+64]
00034830mov x5, x4
00034834mov x4, x3
00034838mov x2, x1
0003483cldr x1, [sp+104]
00034840ldr x3, [sp+112]
00034844
00034844loc_34844:
00034844str x2, [sp+32]
00034848str x4, [sp+40]
0003484cldrb w7, [x6+185]
00034850tbz w7, 0, 0x348cc
00034854tbz w3, 0, 0x34860
00034858orr x7, xzr, 1
0003485cb 0x348d0
00034860
00034860loc_34860:
00034860adrp x0, 0x9f3000
00034864add x0, x0, 360
00034868bl internal/runtime/atomic.(*Bool).Load
0003486ctbz w0, 0, 0x34894
00034870ldr x0, [sp+64]
00034874ldr x1, [sp+104]
00034878ldr x2, [sp+32]
0003487cldr x3, [sp+112]
00034880ldr x4, [sp+40]
00034884ldr x5, [sp+80]
00034888ldr x6, [sp+72]
0003488corr x7, xzr, 1
00034890b 0x348d0
00034894
00034894loc_34894:
00034894ldr x2, [sp+64]
00034898ldrsb x27, [x2]
0003489cldr w3, [x2+8832]
000348a0subs wzr, w3, 0
000348a4cset x3, ne
000348a8mov x0, x2
000348acldr x1, [sp+104]
000348b0ldr x2, [sp+32]
000348b4ldr x4, [sp+40]
000348b8ldr x5, [sp+80]
000348bcldr x6, [sp+72]
000348c0mov x7, x3
000348c4ldr x3, [sp+112]
000348c8b 0x348d0
000348cc
000348ccloc_348cc:
000348ccmov x7, xzr
000348d0
000348d0loc_348d0:
000348d0tbnz w7, 0, 0x34a00
000348d4adrp x27, 0x9f0000
000348d8ldr x7, [x27+2656]
000348dccbnz x7, 0x348ec
000348e0mov x0, x1
000348e4bl runtime.(*gcWork).balance
000348e8ldr x1, [sp+104]
000348ec
000348ecloc_348ec:
000348ecmov x0, x1
000348f0bl runtime.(*gcWork).tryGetFast
000348f4cbnz x0, 0x34910
000348f8ldr x0, [sp+104]
000348fcbl runtime.(*gcWork).tryGet
00034900cbnz x0, 0x34910
00034904bl runtime.wbBufFlush
00034908ldr x0, [sp+104]
0003490cbl runtime.(*gcWork).tryGet
00034910
00034910loc_34910:
00034910cbz x0, 0x349f0
00034914ldr x1, [sp+104]
00034918bl runtime.scanobject
0003491cldr x0, [sp+104]
00034920ldr x1, [x0+24]
00034924subs xzr, x1, 2000
00034928b.ge 0x34944
0003492cldr x0, [sp+112]
00034930ldr x2, [sp+104]
00034934ldr x4, [sp+80]
00034938ldr x3, [sp+40]
0003493cldr x1, [sp+32]
00034940b 0x34828
00034944
00034944loc_34944:
00034944adrp x0, 0xa18000
00034948add x0, x0, 2656
0003494cbl internal/runtime/atomic.(*Int64).Add
00034950ldr x0, [sp+112]
00034954tbnz w0, 1, 0x34960
00034958ldr x1, [sp+32]
0003495cb 0x3497c
00034960
00034960loc_34960:
00034960ldr x1, [sp+104]
00034964ldr x1, [x1+24]
00034968ldr x2, [sp+32]
0003496csub x0, x1, x2
00034970bl runtime.gcFlushBgCredit
00034974ldr x0, [sp+112]
00034978mov x1, xzr
0003497c
0003497cloc_3497c:
0003497cldr x2, [sp+104]
00034980ldr x3, [x2+24]
00034984str xzr, [x2+24]
00034988ldr x4, [sp+40]
0003498csub x3, x4, x3
00034990subs xzr, x3, 0
00034994b.gt 0x349e8
00034998movz x4, 34464
0003499cmovk x4, 0x10000
000349a0add x3, x3, x4
000349a4ldr x4, [sp+80]
000349a8cbnz x4, 0x349b4
000349acmov x5, xzr
000349b0b 0x349e0
000349b4
000349b4loc_349b4:
000349b4str x3, [sp+56]
000349b8str x1, [sp+48]
000349bcldr x0, [x4]
000349c0mov x26, x4
000349c4blr x0
000349c8ldr x1, [sp+48]
000349ccldr x2, [sp+104]
000349d0ldr x3, [sp+56]
000349d4ldr x4, [sp+80]
000349d8mov x5, x0
000349dcldr x0, [sp+112]
000349e0
000349e0loc_349e0:
000349e0tbz w5, 0, 0x34828
000349e4b 0x34a0c
000349e8
000349e8loc_349e8:
000349e8ldr x4, [sp+80]
000349ecb 0x34828
000349f0
000349f0loc_349f0:
000349f0ldr x0, [sp+112]
000349f4ldr x2, [sp+104]
000349f8ldr x1, [sp+32]
000349fcb 0x34a0c
00034a00
00034a00loc_34a00:
00034a00mov x0, x3
00034a04mov x2, x1
00034a08ldr x1, [sp+32]
00034a0c
00034a0cloc_34a0c:
00034a0cldr x3, [x2+24]
00034a10subs xzr, x3, 0
00034a14b.le 0x34a50
00034a18str x1, [sp+32]
00034a1cadrp x0, 0xa18000
00034a20add x0, x0, 2656
00034a24mov x1, x3
00034a28bl internal/runtime/atomic.(*Int64).Add
00034a2cldr x0, [sp+112]
00034a30tbz w0, 1, 0x34a48
00034a34ldr x1, [sp+104]
00034a38ldr x1, [x1+24]
00034a3cldr x2, [sp+32]
00034a40sub x0, x1, x2
00034a44bl runtime.gcFlushBgCredit
00034a48
00034a48loc_34a48:
00034a48ldr x0, [sp+104]
00034a4cstr xzr, [x0+24]
00034a50
00034a50loc_34a50:
00034a50ldur x29, [sp-8]
00034a54ldr x30, [sp], 96
00034a58ret x30
00034a5c
00034a5cloc_34a5c:
00034a5cldr x1, [sp+104]
00034a60ldr x3, [sp+112]
00034a64ldr x7, [sp+72]
00034a68ldrb w6, [sp+31]
00034a6cldr x0, [sp+64]
00034a70ldr x2, [sp+32]
00034a74ldr x4, [sp+40]
00034a78ldr x5, [sp+80]
00034a7c
00034a7cloc_34a7c:
00034a7cldrb w8, [x7+185]
00034a80tbz w8, 0, 0x34b04
00034a84tbz w3, 0, 0x34a90
00034a88orr x8, xzr, 1
00034a8cb 0x34b08
00034a90
00034a90loc_34a90:
00034a90adrp x0, 0x9f3000
00034a94add x0, x0, 360
00034a98bl internal/runtime/atomic.(*Bool).Load
00034a9ctbz w0, 0, 0x34ac8
00034aa0ldr x0, [sp+64]
00034aa4ldr x1, [sp+104]
00034aa8ldr x2, [sp+32]
00034aacldr x3, [sp+112]
00034ab0ldr x4, [sp+40]
00034ab4ldr x5, [sp+80]
00034ab8ldrb w6, [sp+31]
00034abcldr x7, [sp+72]
00034ac0orr x8, xzr, 1
00034ac4b 0x34b08
00034ac8
00034ac8loc_34ac8:
00034ac8ldr x3, [sp+64]
00034accldrsb x27, [x3]
00034ad0ldr w4, [x3+8832]
00034ad4subs wzr, w4, 0
00034ad8cset x4, ne
00034adcmov x0, x3
00034ae0ldr x1, [sp+104]
00034ae4ldr x2, [sp+32]
00034ae8ldr x3, [sp+112]
00034aecldr x5, [sp+80]
00034af0ldrb w6, [sp+31]
00034af4ldr x7, [sp+72]
00034af8mov x8, x4
00034afcldr x4, [sp+40]
00034b00b 0x34b08
00034b04
00034b04loc_34b04:
00034b04mov x8, xzr
00034b08
00034b08loc_34b08:
00034b08tbnz w8, 0, 0x34820
00034b0cadrp x27, 0xa17000
00034b10ldrb w8, [x27+1516]
00034b14tbz w8, 0, 0x34b30
00034b18orr x8, xzr, 1
00034b1cadrp x9, 0x9f0000
00034b20add x9, x9, 2984
00034b24ldaddal w8, w10, [x9]
00034b28add x10, x10, x8
00034b2cb 0x34b4c
00034b30
00034b30loc_34b30:
00034b30orr x8, xzr, 1
00034b34adrp x9, 0x9f0000
00034b38add x9, x9, 2984
00034b3c
00034b3cloc_34b3c:
00034b3cldaxr w10, [x9]
00034b40add x10, x10, x8
00034b44stlxr w27, w10, [x9]
00034b48cbnz x27, 0x34b3c
00034b4c
00034b4cloc_34b4c:
00034b4csub x10, x10, 1
00034b50adrp x27, 0x9f0000
00034b54ldr w11, [x27+2988]
00034b58subs wzr, w11, w10
00034b5cb.ls 0x34820
00034b60mov x0, x1
00034b64mov x1, x10
00034b68mov x2, x6
00034b6cbl runtime.markroot
00034b70ldr x0, [sp+80]
00034b74cbnz x0, 0x34b80
00034b78mov x1, xzr
00034b7cb 0x34b94
00034b80
00034b80loc_34b80:
00034b80ldr x1, [x0]
00034b84mov x26, x0
00034b88blr x1
00034b8cmov x1, x0
00034b90ldr x0, [sp+80]
00034b94
00034b94loc_34b94:
00034b94tbz w1, 0, 0x34a5c
00034b98ldr x0, [sp+112]
00034b9cldr x2, [sp+104]
00034ba0ldr x1, [sp+32]
00034ba4b 0x34a0c
00034ba8
00034ba8loc_34ba8:
00034ba8adrp x0, 0x684000
00034bacadd x0, x0, 1122
00034bb0movz x1, 23
00034bb4bl runtime.throw
00034bb8hint
00034bbc
00034bbcloc_34bbc:
00034bbcstp x0, x1, [sp+8]
00034bc0mov x3, x30
00034bc4bl runtime.morestack_noctxt.abi0
00034bc8ldp x0, x1, [sp+8]
00034bccb 0x34750
00034750
00034bd0
00034bd0runtime.gcDrainN: ; void runtime.gcDrainN(runtime.gcWork * gcw, int64 scanWork)
00034bd0ldr x16, [x28+24]
00034bd4subs xzr, sp, x16
00034bd8b.ls 0x34da0
00034bdcstr x30, [sp-48]!
00034be0stur x29, [sp-8]
00034be4sub x29, sp, 8
00034be8adrp x27, 0xa17000
00034becldrb w2, [x27+3056]
00034bf0tbz w2, 0, 0x34d8c
00034bf4str x0, [sp+56]
00034bf8str x1, [sp+64]
00034bfcldr x2, [x0+24]
00034c00ldr x3, [x28+48]
00034c04sub x2, xzr, x2
00034c08ldr x3, [x3+192]
00034c0cstr x3, [sp+32]
00034c10b 0x34c1c
00034c14
00034c14loc_34c14:
00034c14ldr x3, [sp+32]
00034c18ldr x1, [sp+64]
00034c1c
00034c1cloc_34c1c:
00034c1cstr x2, [sp+24]
00034c20ldrb w4, [x3+185]
00034c24tbz w4, 0, 0x34c30
00034c28mov x4, xzr
00034c2cb 0x34c54
00034c30
00034c30loc_34c30:
00034c30adrp x0, 0xa17000
00034c34add x0, x0, 4032
00034c38bl runtime.(*gcCPULimiterState).limiting
00034c3ceor x1, x0, 1
00034c40ldr x0, [sp+56]
00034c44ldr x2, [sp+24]
00034c48ldr x3, [sp+32]
00034c4cmov x4, x1
00034c50ldr x1, [sp+64]
00034c54
00034c54loc_34c54:
00034c54tbz w4, 0, 0x34d78
00034c58ldr x4, [x0+24]
00034c5cadd x4, x2, x4
00034c60subs xzr, x1, x4
00034c64b.le 0x34d78
00034c68adrp x27, 0x9f0000
00034c6cldr x4, [x27+2656]
00034c70cbnz x4, 0x34c7c
00034c74bl runtime.(*gcWork).balance
00034c78ldr x0, [sp+56]
00034c7c
00034c7cloc_34c7c:
00034c7cbl runtime.(*gcWork).tryGetFast
00034c80cbnz x0, 0x34c9c
00034c84ldr x0, [sp+56]
00034c88bl runtime.(*gcWork).tryGet
00034c8ccbnz x0, 0x34c9c
00034c90bl runtime.wbBufFlush
00034c94ldr x0, [sp+56]
00034c98bl runtime.(*gcWork).tryGet
00034c9c
00034c9cloc_34c9c:
00034c9ccbnz x0, 0x34d2c
00034ca0adrp x27, 0x9f0000
00034ca4ldr w3, [x27+2984]
00034ca8adrp x27, 0x9f0000
00034cacldr w4, [x27+2988]
00034cb0subs wzr, w4, w3
00034cb4b.ls 0x34d70
00034cb8adrp x27, 0xa17000
00034cbcldrb w3, [x27+1516]
00034cc0tbz w3, 0, 0x34cdc
00034cc4orr x3, xzr, 1
00034cc8adrp x4, 0x9f0000
00034cccadd x4, x4, 2984
00034cd0ldaddal w3, w5, [x4]
00034cd4add x5, x5, x3
00034cd8b 0x34cf8
00034cdc
00034cdcloc_34cdc:
00034cdcorr x3, xzr, 1
00034ce0adrp x4, 0x9f0000
00034ce4add x4, x4, 2984
00034ce8
00034ce8loc_34ce8:
00034ce8ldaxr w5, [x4]
00034cecadd x5, x5, x3
00034cf0stlxr w27, w5, [x4]
00034cf4cbnz x27, 0x34ce8
00034cf8
00034cf8loc_34cf8:
00034cf8sub x1, x5, 1
00034cfcadrp x27, 0x9f0000
00034d00ldr w4, [x27+2988]
00034d04subs wzr, w4, w1
00034d08b.ls 0x34d70
00034d0cldr x0, [sp+56]
00034d10mov x2, xzr
00034d14bl runtime.markroot
00034d18ldr x3, [sp+24]
00034d1cadd x3, x3, x0
00034d20ldr x0, [sp+56]
00034d24mov x2, x3
00034d28b 0x34c14
00034d2c
00034d2cloc_34d2c:
00034d2cldr x1, [sp+56]
00034d30bl runtime.scanobject
00034d34ldr x0, [sp+56]
00034d38ldr x1, [x0+24]
00034d3csubs xzr, x1, 2000
00034d40b.ge 0x34d4c
00034d44ldr x2, [sp+24]
00034d48b 0x34c14
00034d4c
00034d4cloc_34d4c:
00034d4cadrp x0, 0xa18000
00034d50add x0, x0, 2656
00034d54bl internal/runtime/atomic.(*Int64).Add
00034d58ldr x0, [sp+56]
00034d5cldr x2, [x0+24]
00034d60str xzr, [x0+24]
00034d64ldr x3, [sp+24]
00034d68add x2, x3, x2
00034d6cb 0x34c14
00034d70
00034d70loc_34d70:
00034d70ldr x0, [sp+56]
00034d74ldr x2, [sp+24]
00034d78
00034d78loc_34d78:
00034d78ldr x1, [x0+24]
00034d7cadd x0, x2, x1
00034d80ldur x29, [sp-8]
00034d84ldr x30, [sp], 48
00034d88ret x30
00034d8c
00034d8cloc_34d8c:
00034d8cadrp x0, 0x685000
00034d90add x0, x0, 54
00034d94orr x1, xzr, 24
00034d98bl runtime.throw
00034d9chint
00034da0
00034da0loc_34da0:
00034da0stp x0, x1, [sp+8]
00034da4mov x3, x30
00034da8bl runtime.morestackc.abi0
00034dacldp x0, x1, [sp+8]
00034db0b 0x34bd0
00034db4udf 0
00034db8udf 0
00034dbcudf 0
00034bd0
00034bd0runtime.gcDrainN: ; void runtime.gcDrainN(runtime.gcWork * gcw, int64 scanWork)
00034bd0ldr x16, [x28+24]
00034bd4subs xzr, sp, x16
00034bd8b.ls 0x34da0
00034bdcstr x30, [sp-48]!
00034be0stur x29, [sp-8]
00034be4sub x29, sp, 8
00034be8adrp x27, 0xa17000
00034becldrb w2, [x27+3056]
00034bf0tbz w2, 0, 0x34d8c
00034bf4str x0, [sp+56]
00034bf8str x1, [sp+64]
00034bfcldr x2, [x0+24]
00034c00ldr x3, [x28+48]
00034c04sub x2, xzr, x2
00034c08ldr x3, [x3+192]
00034c0cstr x3, [sp+32]
00034c10b 0x34c1c
00034c14
00034c14loc_34c14:
00034c14ldr x3, [sp+32]
00034c18ldr x1, [sp+64]
00034c1c
00034c1cloc_34c1c:
00034c1cstr x2, [sp+24]
00034c20ldrb w4, [x3+185]
00034c24tbz w4, 0, 0x34c30
00034c28mov x4, xzr
00034c2cb 0x34c54
00034c30
00034c30loc_34c30:
00034c30adrp x0, 0xa17000
00034c34add x0, x0, 4032
00034c38bl runtime.(*gcCPULimiterState).limiting
00034c3ceor x1, x0, 1
00034c40ldr x0, [sp+56]
00034c44ldr x2, [sp+24]
00034c48ldr x3, [sp+32]
00034c4cmov x4, x1
00034c50ldr x1, [sp+64]
00034c54
00034c54loc_34c54:
00034c54tbz w4, 0, 0x34d78
00034c58ldr x4, [x0+24]
00034c5cadd x4, x2, x4
00034c60subs xzr, x1, x4
00034c64b.le 0x34d78
00034c68adrp x27, 0x9f0000
00034c6cldr x4, [x27+2656]
00034c70cbnz x4, 0x34c7c
00034c74bl runtime.(*gcWork).balance
00034c78ldr x0, [sp+56]
00034c7c
00034c7cloc_34c7c:
00034c7cbl runtime.(*gcWork).tryGetFast
00034c80cbnz x0, 0x34c9c
00034c84ldr x0, [sp+56]
00034c88bl runtime.(*gcWork).tryGet
00034c8ccbnz x0, 0x34c9c
00034c90bl runtime.wbBufFlush
00034c94ldr x0, [sp+56]
00034c98bl runtime.(*gcWork).tryGet
00034c9c
00034c9cloc_34c9c:
00034c9ccbnz x0, 0x34d2c
00034ca0adrp x27, 0x9f0000
00034ca4ldr w3, [x27+2984]
00034ca8adrp x27, 0x9f0000
00034cacldr w4, [x27+2988]
00034cb0subs wzr, w4, w3
00034cb4b.ls 0x34d70
00034cb8adrp x27, 0xa17000
00034cbcldrb w3, [x27+1516]
00034cc0tbz w3, 0, 0x34cdc
00034cc4orr x3, xzr, 1
00034cc8adrp x4, 0x9f0000
00034cccadd x4, x4, 2984
00034cd0ldaddal w3, w5, [x4]
00034cd4add x5, x5, x3
00034cd8b 0x34cf8
00034cdc
00034cdcloc_34cdc:
00034cdcorr x3, xzr, 1
00034ce0adrp x4, 0x9f0000
00034ce4add x4, x4, 2984
00034ce8
00034ce8loc_34ce8:
00034ce8ldaxr w5, [x4]
00034cecadd x5, x5, x3
00034cf0stlxr w27, w5, [x4]
00034cf4cbnz x27, 0x34ce8
00034cf8
00034cf8loc_34cf8:
00034cf8sub x1, x5, 1
00034cfcadrp x27, 0x9f0000
00034d00ldr w4, [x27+2988]
00034d04subs wzr, w4, w1
00034d08b.ls 0x34d70
00034d0cldr x0, [sp+56]
00034d10mov x2, xzr
00034d14bl runtime.markroot
00034d18ldr x3, [sp+24]
00034d1cadd x3, x3, x0
00034d20ldr x0, [sp+56]
00034d24mov x2, x3
00034d28b 0x34c14
00034d2c
00034d2cloc_34d2c:
00034d2cldr x1, [sp+56]
00034d30bl runtime.scanobject
00034d34ldr x0, [sp+56]
00034d38ldr x1, [x0+24]
00034d3csubs xzr, x1, 2000
00034d40b.ge 0x34d4c
00034d44ldr x2, [sp+24]
00034d48b 0x34c14
00034d4c
00034d4cloc_34d4c:
00034d4cadrp x0, 0xa18000
00034d50add x0, x0, 2656
00034d54bl internal/runtime/atomic.(*Int64).Add
00034d58ldr x0, [sp+56]
00034d5cldr x2, [x0+24]
00034d60str xzr, [x0+24]
00034d64ldr x3, [sp+24]
00034d68add x2, x3, x2
00034d6cb 0x34c14
00034d70
00034d70loc_34d70:
00034d70ldr x0, [sp+56]
00034d74ldr x2, [sp+24]
00034d78
00034d78loc_34d78:
00034d78ldr x1, [x0+24]
00034d7cadd x0, x2, x1
00034d80ldur x29, [sp-8]
00034d84ldr x30, [sp], 48
00034d88ret x30
00034d8c
00034d8cloc_34d8c:
00034d8cadrp x0, 0x685000
00034d90add x0, x0, 54
00034d94orr x1, xzr, 24
00034d98bl runtime.throw
00034d9chint
00034da0
00034da0loc_34da0:
00034da0stp x0, x1, [sp+8]
00034da4mov x3, x30
00034da8bl runtime.morestackc.abi0
00034dacldp x0, x1, [sp+8]
00034db0b 0x34bd0
00034db4udf 0
00034db8udf 0
00034dbcudf 0
00034bd0
Loading..