File sliver_83cb34f62800fed14e14547c39337aab8e0427fe2c6310a3fb40ce0ac36168c9.elf
Function:
Loading..
00034dc0
00034dc0runtime.scanblock: ; void runtime.scanblock(uintptr b0, uintptr n0, uint8 * ptrmask, runtime.gcWork * gcw, runtime.stackScanState * stk)
00034dc0ldr x16, [x28+16]
00034dc4subs xzr, sp, x16
00034dc8b.ls 0x34f14
00034dccstr x30, [sp-112]!
00034dd0stur x29, [sp-8]
00034dd4sub x29, sp, 8
00034dd8str x0, [sp+120]
00034ddcstr x1, [sp+128]
00034de0str x2, [sp+136]
00034de4str x3, [sp+144]
00034de8str x4, [sp+152]
00034decmov x5, xzr
00034df0b 0x34e08
00034df4
00034df4loc_34df4:
00034df4mov x0, x1
00034df8mov x1, x3
00034dfcldr x2, [sp+136]
00034e00ldr x3, [sp+144]
00034e04ldr x4, [sp+152]
00034e08
00034e08loc_34e08:
00034e08subs xzr, x1, x5
00034e0cb.ls 0x34e54
00034e10str x5, [sp+88]
00034e14ubfm x1, x5, 6, 63
00034e18mov x0, x2
00034e1cbl runtime.addb
00034e20ldrb w2, [x0]
00034e24cbnz w2, 0x34e40
00034e28ldr x2, [sp+88]
00034e2cadd x2, x2, 64
00034e30ldr x1, [sp+120]
00034e34ldr x3, [sp+128]
00034e38mov x5, x2
00034e3cb 0x34df4
00034e40
00034e40loc_34e40:
00034e40ldr x3, [sp+128]
00034e44ldr x1, [sp+120]
00034e48ldr x5, [sp+88]
00034e4cmov x0, xzr
00034e50b 0x34e6c
00034e54
00034e54loc_34e54:
00034e54ldur x29, [sp-8]
00034e58ldr x30, [sp], 112
00034e5cret x30
00034e60
00034e60loc_34e60:
00034e60add x0, x0, 1
00034e64ubfm x2, x2, 1, 31
00034e68add x5, x5, 8
00034e6c
00034e6cloc_34e6c:
00034e6csubs xzr, x0, 8
00034e70b.ge 0x34df4
00034e74subs xzr, x3, x5
00034e78b.ls 0x34df4
00034e7ctbz w2, 0, 0x34e60
00034e80add x4, x5, x1
00034e84ldr x4, [x4]
00034e88cbz x4, 0x34e60
00034e8cstr x0, [sp+80]
00034e90str x4, [sp+72]
00034e94str x5, [sp+96]
00034e98str w2, [sp+68]
00034e9cmov x0, x4
00034ea0mov x2, x5
00034ea4bl runtime.findObject
00034ea8cbnz x0, 0x34ee0
00034eacldr x0, [sp+152]
00034eb0cbz x0, 0x34efc
00034eb4ldr x3, [x0]
00034eb8ldr x1, [sp+72]
00034ebcsubs xzr, x3, x1
00034ec0b.hi 0x34efc
00034ec4ldr x3, [x0+8]
00034ec8subs xzr, x3, x1
00034eccb.ls 0x34efc
00034ed0mov x2, xzr
00034ed4bl runtime.(*stackScanState).putPtr
00034ed8ldr x0, [sp+152]
00034edcb 0x34efc
00034ee0
00034ee0loc_34ee0:
00034ee0mov x3, x1
00034ee4ldr x4, [sp+144]
00034ee8mov x5, x2
00034eecldr x1, [sp+120]
00034ef0ldr x2, [sp+96]
00034ef4bl runtime.greyobject
00034ef8ldr x0, [sp+152]
00034efc
00034efcloc_34efc:
00034efcldr x0, [sp+80]
00034f00ldr x1, [sp+120]
00034f04ldr w2, [sp+68]
00034f08ldr x3, [sp+128]
00034f0cldr x5, [sp+96]
00034f10b 0x34e60
00034f14
00034f14loc_34f14:
00034f14stp x0, x1, [sp+8]
00034f18stp x2, x3, [sp+24]
00034f1cstr x4, [sp+40]
00034f20mov x3, x30
00034f24bl runtime.morestack_noctxt.abi0
00034f28ldp x0, x1, [sp+8]
00034f2cldp x2, x3, [sp+24]
00034f30ldr x4, [sp+40]
00034f34b 0x34dc0
00034f38udf 0
00034f3cudf 0
00034dc0
00034dc0runtime.scanblock: ; void runtime.scanblock(uintptr b0, uintptr n0, uint8 * ptrmask, runtime.gcWork * gcw, runtime.stackScanState * stk)
00034dc0ldr x16, [x28+16]
00034dc4subs xzr, sp, x16
00034dc8b.ls 0x34f14
00034dccstr x30, [sp-112]!
00034dd0stur x29, [sp-8]
00034dd4sub x29, sp, 8
00034dd8str x0, [sp+120]
00034ddcstr x1, [sp+128]
00034de0str x2, [sp+136]
00034de4str x3, [sp+144]
00034de8str x4, [sp+152]
00034decmov x5, xzr
00034df0b 0x34e08
00034df4
00034df4loc_34df4:
00034df4mov x0, x1
00034df8mov x1, x3
00034dfcldr x2, [sp+136]
00034e00ldr x3, [sp+144]
00034e04ldr x4, [sp+152]
00034e08
00034e08loc_34e08:
00034e08subs xzr, x1, x5
00034e0cb.ls 0x34e54
00034e10str x5, [sp+88]
00034e14ubfm x1, x5, 6, 63
00034e18mov x0, x2
00034e1cbl runtime.addb
00034e20ldrb w2, [x0]
00034e24cbnz w2, 0x34e40
00034e28ldr x2, [sp+88]
00034e2cadd x2, x2, 64
00034e30ldr x1, [sp+120]
00034e34ldr x3, [sp+128]
00034e38mov x5, x2
00034e3cb 0x34df4
00034e40
00034e40loc_34e40:
00034e40ldr x3, [sp+128]
00034e44ldr x1, [sp+120]
00034e48ldr x5, [sp+88]
00034e4cmov x0, xzr
00034e50b 0x34e6c
00034e54
00034e54loc_34e54:
00034e54ldur x29, [sp-8]
00034e58ldr x30, [sp], 112
00034e5cret x30
00034e60
00034e60loc_34e60:
00034e60add x0, x0, 1
00034e64ubfm x2, x2, 1, 31
00034e68add x5, x5, 8
00034e6c
00034e6cloc_34e6c:
00034e6csubs xzr, x0, 8
00034e70b.ge 0x34df4
00034e74subs xzr, x3, x5
00034e78b.ls 0x34df4
00034e7ctbz w2, 0, 0x34e60
00034e80add x4, x5, x1
00034e84ldr x4, [x4]
00034e88cbz x4, 0x34e60
00034e8cstr x0, [sp+80]
00034e90str x4, [sp+72]
00034e94str x5, [sp+96]
00034e98str w2, [sp+68]
00034e9cmov x0, x4
00034ea0mov x2, x5
00034ea4bl runtime.findObject
00034ea8cbnz x0, 0x34ee0
00034eacldr x0, [sp+152]
00034eb0cbz x0, 0x34efc
00034eb4ldr x3, [x0]
00034eb8ldr x1, [sp+72]
00034ebcsubs xzr, x3, x1
00034ec0b.hi 0x34efc
00034ec4ldr x3, [x0+8]
00034ec8subs xzr, x3, x1
00034eccb.ls 0x34efc
00034ed0mov x2, xzr
00034ed4bl runtime.(*stackScanState).putPtr
00034ed8ldr x0, [sp+152]
00034edcb 0x34efc
00034ee0
00034ee0loc_34ee0:
00034ee0mov x3, x1
00034ee4ldr x4, [sp+144]
00034ee8mov x5, x2
00034eecldr x1, [sp+120]
00034ef0ldr x2, [sp+96]
00034ef4bl runtime.greyobject
00034ef8ldr x0, [sp+152]
00034efc
00034efcloc_34efc:
00034efcldr x0, [sp+80]
00034f00ldr x1, [sp+120]
00034f04ldr w2, [sp+68]
00034f08ldr x3, [sp+128]
00034f0cldr x5, [sp+96]
00034f10b 0x34e60
00034f14
00034f14loc_34f14:
00034f14stp x0, x1, [sp+8]
00034f18stp x2, x3, [sp+24]
00034f1cstr x4, [sp+40]
00034f20mov x3, x30
00034f24bl runtime.morestack_noctxt.abi0
00034f28ldp x0, x1, [sp+8]
00034f2cldp x2, x3, [sp+24]
00034f30ldr x4, [sp+40]
00034f34b 0x34dc0
00034f38udf 0
00034f3cudf 0
00034dc0
00034f40
00034f40runtime.scanobject: ; void runtime.scanobject(uintptr b, runtime.gcWork * gcw)
00034f40ldr x16, [x28+16]
00034f44sub x17, sp, 16
00034f48subs xzr, x17, x16
00034f4cb.ls 0x35180
00034f50str x30, [sp-144]!
00034f54stur x29, [sp-8]
00034f58sub x29, sp, 8
00034f5cstr x0, [sp+152]
00034f60str x1, [sp+160]
00034f64prfm
00034f68bl runtime.spanOfUnchecked
00034f6cldr x1, [x0+104]
00034f70cbz x1, 0x3516c
00034f74str x0, [sp+88]
00034f78str x1, [sp+104]
00034f7cldrb w0, [x0+98]
00034f80bl runtime.spanClass.noscan
00034f84tbnz w0, 0, 0x3515c
00034f88ldr x2, [sp+104]
00034f8csubs xzr, x2, 0x20000
00034f90b.ls 0x34fb0
00034f94ldr x0, [sp+88]
00034f98bl runtime.(*mspan).base
00034f9cldr x1, [sp+152]
00034fa0subs xzr, x0, x1
00034fa4b.ne 0x350ac
00034fa8add x2, x1, 0x20000
00034facb 0x35118
00034fb0
00034fb0loc_34fb0:
00034fb0ldr x0, [sp+88]
00034fb4ldr x1, [sp+152]
00034fb8bl runtime.(*mspan).typePointersOfUnchecked
00034fbcldr x4, [sp+104]
00034fc0
00034fc0loc_34fc0:
00034fc0str x4, [sp+104]
00034fc4mov x5, xzr
00034fc8b 0x34fd0
00034fcc
00034fccloc_34fcc:
00034fccadd x5, x5, 8
00034fd0
00034fd0loc_34fd0:
00034fd0str x5, [sp+80]
00034fd4bl runtime.typePointers.nextFast
00034fd8cbnz x4, 0x34ff0
00034fdcldr x5, [sp+152]
00034fe0ldr x6, [sp+104]
00034fe4add x4, x5, x6
00034fe8bl runtime.typePointers.next
00034feccbz x4, 0x3507c
00034ff0
00034ff0loc_34ff0:
00034ff0mov x5, x4
00034ff4ldr x6, [sp+152]
00034ff8sub x5, x5, x6
00034ffcldr x4, [x4]
00035000cbz x4, 0x35074
00035004sub x7, x4, x6
00035008ldr x8, [sp+104]
0003500csubs xzr, x8, x7
00035010b.hi 0x34fcc
00035014str x5, [sp+120]
00035018str x3, [sp+128]
0003501cstr x2, [sp+56]
00035020str x1, [sp+72]
00035024str x0, [sp+64]
00035028mov x0, x4
0003502cmov x1, x6
00035030mov x2, x5
00035034bl runtime.findObject
00035038cbz x0, 0x35054
0003503cmov x3, x1
00035040ldr x4, [sp+160]
00035044mov x5, x2
00035048ldr x1, [sp+152]
0003504cldr x2, [sp+120]
00035050bl runtime.greyobject
00035054
00035054loc_35054:
00035054ldr x0, [sp+64]
00035058ldr x1, [sp+72]
0003505cldr x2, [sp+56]
00035060ldr x3, [sp+128]
00035064ldr x5, [sp+120]
00035068ldr x6, [sp+152]
0003506cldr x8, [sp+104]
00035070b 0x34fcc
00035074
00035074loc_35074:
00035074ldr x8, [sp+104]
00035078b 0x34fcc
0003507c
0003507cloc_3507c:
0003507cldr x0, [sp+160]
00035080ldr x1, [x0+16]
00035084ldr x2, [sp+104]
00035088add x1, x1, x2
0003508cstr x1, [x0+16]
00035090ldr x1, [x0+24]
00035094ldr x2, [sp+80]
00035098add x1, x1, x2
0003509cstr x1, [x0+24]
000350a0ldur x29, [sp-8]
000350a4ldr x30, [sp], 144
000350a8ret x30
000350ac
000350acloc_350ac:
000350acldr x0, [sp+88]
000350b0bl runtime.(*mspan).base
000350b4str x0, [sp+120]
000350b8ldr x0, [sp+88]
000350bcldr x1, [x0+104]
000350c0str x1, [sp+112]
000350c4bl runtime.(*mspan).base
000350c8mov x1, x0
000350ccldr x0, [sp+88]
000350d0bl runtime.(*mspan).typePointersOfUnchecked
000350d4ldr x4, [sp+112]
000350d8ldr x5, [sp+120]
000350dcadd x4, x4, x5
000350e0ldr x5, [sp+152]
000350e4sub x4, x4, x5
000350e8sub x6, x5, x1
000350ecsubs xzr, x4, 0x20000
000350f0orr x7, xzr, 0x20000
000350f4csel x4, x7, x4, hi
000350f8str x4, [sp+104]
000350fcadd x5, x4, x5
00035100mov x4, x6
00035104bl runtime.typePointers.fastForward
00035108ldr x4, [sp+104]
0003510cb 0x34fc0
00035110
00035110loc_35110:
00035110ldr x1, [sp+96]
00035114add x2, x1, 0x20000
00035118
00035118loc_35118:
00035118str x2, [sp+96]
0003511cldr x0, [sp+88]
00035120bl runtime.(*mspan).base
00035124ldr x1, [sp+88]
00035128ldr x2, [x1+104]
0003512cadd x2, x2, x0
00035130ldr x3, [sp+96]
00035134subs xzr, x3, x2
00035138b.hs 0x350ac
0003513cldr x0, [sp+160]
00035140mov x1, x3
00035144bl runtime.(*gcWork).putFast
00035148tbnz w0, 0, 0x35110
0003514cldr x0, [sp+160]
00035150ldr x1, [sp+96]
00035154bl runtime.(*gcWork).put
00035158b 0x35110
0003515c
0003515cloc_3515c:
0003515cadrp x0, 0x687000
00035160add x0, x0, 830
00035164movz x1, 29
00035168bl runtime.throw
0003516c
0003516cloc_3516c:
0003516cadrp x0, 0x680000
00035170add x0, x0, 183
00035174movz x1, 17
00035178bl runtime.throw
0003517chint
00035180
00035180loc_35180:
00035180stp x0, x1, [sp+8]
00035184mov x3, x30
00035188bl runtime.morestack_noctxt.abi0
0003518cldp x0, x1, [sp+8]
00035190b 0x34f40
00035194udf 0
00035198udf 0
0003519cudf 0
00034f40
00034f40runtime.scanobject: ; void runtime.scanobject(uintptr b, runtime.gcWork * gcw)
00034f40ldr x16, [x28+16]
00034f44sub x17, sp, 16
00034f48subs xzr, x17, x16
00034f4cb.ls 0x35180
00034f50str x30, [sp-144]!
00034f54stur x29, [sp-8]
00034f58sub x29, sp, 8
00034f5cstr x0, [sp+152]
00034f60str x1, [sp+160]
00034f64prfm
00034f68bl runtime.spanOfUnchecked
00034f6cldr x1, [x0+104]
00034f70cbz x1, 0x3516c
00034f74str x0, [sp+88]
00034f78str x1, [sp+104]
00034f7cldrb w0, [x0+98]
00034f80bl runtime.spanClass.noscan
00034f84tbnz w0, 0, 0x3515c
00034f88ldr x2, [sp+104]
00034f8csubs xzr, x2, 0x20000
00034f90b.ls 0x34fb0
00034f94ldr x0, [sp+88]
00034f98bl runtime.(*mspan).base
00034f9cldr x1, [sp+152]
00034fa0subs xzr, x0, x1
00034fa4b.ne 0x350ac
00034fa8add x2, x1, 0x20000
00034facb 0x35118
00034fb0
00034fb0loc_34fb0:
00034fb0ldr x0, [sp+88]
00034fb4ldr x1, [sp+152]
00034fb8bl runtime.(*mspan).typePointersOfUnchecked
00034fbcldr x4, [sp+104]
00034fc0
00034fc0loc_34fc0:
00034fc0str x4, [sp+104]
00034fc4mov x5, xzr
00034fc8b 0x34fd0
00034fcc
00034fccloc_34fcc:
00034fccadd x5, x5, 8
00034fd0
00034fd0loc_34fd0:
00034fd0str x5, [sp+80]
00034fd4bl runtime.typePointers.nextFast
00034fd8cbnz x4, 0x34ff0
00034fdcldr x5, [sp+152]
00034fe0ldr x6, [sp+104]
00034fe4add x4, x5, x6
00034fe8bl runtime.typePointers.next
00034feccbz x4, 0x3507c
00034ff0
00034ff0loc_34ff0:
00034ff0mov x5, x4
00034ff4ldr x6, [sp+152]
00034ff8sub x5, x5, x6
00034ffcldr x4, [x4]
00035000cbz x4, 0x35074
00035004sub x7, x4, x6
00035008ldr x8, [sp+104]
0003500csubs xzr, x8, x7
00035010b.hi 0x34fcc
00035014str x5, [sp+120]
00035018str x3, [sp+128]
0003501cstr x2, [sp+56]
00035020str x1, [sp+72]
00035024str x0, [sp+64]
00035028mov x0, x4
0003502cmov x1, x6
00035030mov x2, x5
00035034bl runtime.findObject
00035038cbz x0, 0x35054
0003503cmov x3, x1
00035040ldr x4, [sp+160]
00035044mov x5, x2
00035048ldr x1, [sp+152]
0003504cldr x2, [sp+120]
00035050bl runtime.greyobject
00035054
00035054loc_35054:
00035054ldr x0, [sp+64]
00035058ldr x1, [sp+72]
0003505cldr x2, [sp+56]
00035060ldr x3, [sp+128]
00035064ldr x5, [sp+120]
00035068ldr x6, [sp+152]
0003506cldr x8, [sp+104]
00035070b 0x34fcc
00035074
00035074loc_35074:
00035074ldr x8, [sp+104]
00035078b 0x34fcc
0003507c
0003507cloc_3507c:
0003507cldr x0, [sp+160]
00035080ldr x1, [x0+16]
00035084ldr x2, [sp+104]
00035088add x1, x1, x2
0003508cstr x1, [x0+16]
00035090ldr x1, [x0+24]
00035094ldr x2, [sp+80]
00035098add x1, x1, x2
0003509cstr x1, [x0+24]
000350a0ldur x29, [sp-8]
000350a4ldr x30, [sp], 144
000350a8ret x30
000350ac
000350acloc_350ac:
000350acldr x0, [sp+88]
000350b0bl runtime.(*mspan).base
000350b4str x0, [sp+120]
000350b8ldr x0, [sp+88]
000350bcldr x1, [x0+104]
000350c0str x1, [sp+112]
000350c4bl runtime.(*mspan).base
000350c8mov x1, x0
000350ccldr x0, [sp+88]
000350d0bl runtime.(*mspan).typePointersOfUnchecked
000350d4ldr x4, [sp+112]
000350d8ldr x5, [sp+120]
000350dcadd x4, x4, x5
000350e0ldr x5, [sp+152]
000350e4sub x4, x4, x5
000350e8sub x6, x5, x1
000350ecsubs xzr, x4, 0x20000
000350f0orr x7, xzr, 0x20000
000350f4csel x4, x7, x4, hi
000350f8str x4, [sp+104]
000350fcadd x5, x4, x5
00035100mov x4, x6
00035104bl runtime.typePointers.fastForward
00035108ldr x4, [sp+104]
0003510cb 0x34fc0
00035110
00035110loc_35110:
00035110ldr x1, [sp+96]
00035114add x2, x1, 0x20000
00035118
00035118loc_35118:
00035118str x2, [sp+96]
0003511cldr x0, [sp+88]
00035120bl runtime.(*mspan).base
00035124ldr x1, [sp+88]
00035128ldr x2, [x1+104]
0003512cadd x2, x2, x0
00035130ldr x3, [sp+96]
00035134subs xzr, x3, x2
00035138b.hs 0x350ac
0003513cldr x0, [sp+160]
00035140mov x1, x3
00035144bl runtime.(*gcWork).putFast
00035148tbnz w0, 0, 0x35110
0003514cldr x0, [sp+160]
00035150ldr x1, [sp+96]
00035154bl runtime.(*gcWork).put
00035158b 0x35110
0003515c
0003515cloc_3515c:
0003515cadrp x0, 0x687000
00035160add x0, x0, 830
00035164movz x1, 29
00035168bl runtime.throw
0003516c
0003516cloc_3516c:
0003516cadrp x0, 0x680000
00035170add x0, x0, 183
00035174movz x1, 17
00035178bl runtime.throw
0003517chint
00035180
00035180loc_35180:
00035180stp x0, x1, [sp+8]
00035184mov x3, x30
00035188bl runtime.morestack_noctxt.abi0
0003518cldp x0, x1, [sp+8]
00035190b 0x34f40
00035194udf 0
00035198udf 0
0003519cudf 0
00034f40
000351a0
000351a0runtime.scanConservative: ; void runtime.scanConservative(uintptr b, uintptr n, uint8 * ptrmask, runtime.gcWork * gcw, runtime.stackScanState * state)
000351a0ldr x16, [x28+16]
000351a4subs xzr, sp, x16
000351a8b.ls 0x35328
000351acstr x30, [sp-96]!
000351b0stur x29, [sp-8]
000351b4sub x29, sp, 8
000351b8str x0, [sp+104]
000351bcstr x1, [sp+112]
000351c0str x2, [sp+120]
000351c4str x3, [sp+128]
000351c8str x4, [sp+136]
000351ccmov x5, xzr
000351d0b 0x351ec
000351d4
000351d4loc_351d4:
000351d4add x5, x5, 8
000351d8ldr x0, [sp+104]
000351dcldr x1, [sp+112]
000351e0ldr x2, [sp+120]
000351e4ldr x3, [sp+128]
000351e8ldr x4, [sp+136]
000351ec
000351ecloc_351ec:
000351ecsubs xzr, x1, x5
000351f0b.ls 0x35308
000351f4str x5, [sp+80]
000351f8cbz x2, 0x3525c
000351fcubfm x1, x5, 6, 63
00035200mov x0, x2
00035204bl runtime.addb
00035208ldrb w2, [x0]
0003520cmov x3, x2
00035210cbnz w3, 0x35228
00035214ldr x3, [sp+80]
00035218ands xzr, x3, 63
0003521cb.ne 0x35314
00035220add x5, x3, 56
00035224b 0x351d4
00035228
00035228loc_35228:
00035228mov x3, x2
0003522cldr x4, [sp+80]
00035230ubfm x5, x4, 3, 5
00035234lsrv x3, x3, x5
00035238tbnz w3, 0, 0x35244
0003523cmov x5, x4
00035240b 0x351d4
00035244
00035244loc_35244:
00035244ldr x0, [sp+104]
00035248ldr x1, [sp+112]
0003524cldr x2, [sp+120]
00035250ldr x3, [sp+128]
00035254ldr x4, [sp+136]
00035258ldr x5, [sp+80]
0003525c
0003525cloc_3525c:
0003525cadd x6, x5, x0
00035260ldr x6, [x6]
00035264cbz x4, 0x35298
00035268ldr x7, [x4]
0003526csubs xzr, x7, x6
00035270b.hi 0x35298
00035274ldr x7, [x4+8]
00035278subs xzr, x7, x6
0003527cb.ls 0x35298
00035280mov x0, x4
00035284mov x1, x6
00035288orr x2, xzr, 1
0003528cbl runtime.(*stackScanState).putPtr
00035290ldr x5, [sp+80]
00035294b 0x351d4
00035298
00035298loc_35298:
00035298str x6, [sp+56]
0003529cmov x0, x6
000352a0bl runtime.spanOfHeap
000352a4cbnz x0, 0x352b0
000352a8ldr x5, [sp+80]
000352acb 0x351d4
000352b0
000352b0loc_352b0:
000352b0str x0, [sp+64]
000352b4ldr x1, [sp+56]
000352b8bl runtime.(*mspan).objIndex
000352bcstr x0, [sp+72]
000352c0mov x1, x0
000352c4ldr x0, [sp+64]
000352c8bl runtime.(*mspan).isFree
000352cctbz w0, 0, 0x352d8
000352d0ldr x5, [sp+80]
000352d4b 0x351d4
000352d8
000352d8loc_352d8:
000352d8ldr x0, [sp+64]
000352dcbl runtime.(*mspan).base
000352e0ldr x3, [sp+64]
000352e4ldr x1, [x3+104]
000352e8ldr x5, [sp+72]
000352ecmadd x0, x1, x5, x0
000352f0ldr x1, [sp+104]
000352f4ldr x2, [sp+80]
000352f8ldr x4, [sp+128]
000352fcbl runtime.greyobject
00035300ldr x5, [sp+80]
00035304b 0x351d4
00035308
00035308loc_35308:
00035308ldur x29, [sp-8]
0003530cldr x30, [sp], 96
00035310ret x30
00035314
00035314loc_35314:
00035314adrp x0, 0x67f000
00035318add x0, x0, 567
0003531corr x1, xzr, 15
00035320bl runtime.throw
00035324hint
00035328
00035328loc_35328:
00035328stp x0, x1, [sp+8]
0003532cstp x2, x3, [sp+24]
00035330str x4, [sp+40]
00035334mov x3, x30
00035338bl runtime.morestack_noctxt.abi0
0003533cldp x0, x1, [sp+8]
00035340ldp x2, x3, [sp+24]
00035344ldr x4, [sp+40]
00035348b 0x351a0
0003534cudf 0
000351a0
000351a0runtime.scanConservative: ; void runtime.scanConservative(uintptr b, uintptr n, uint8 * ptrmask, runtime.gcWork * gcw, runtime.stackScanState * state)
000351a0ldr x16, [x28+16]
000351a4subs xzr, sp, x16
000351a8b.ls 0x35328
000351acstr x30, [sp-96]!
000351b0stur x29, [sp-8]
000351b4sub x29, sp, 8
000351b8str x0, [sp+104]
000351bcstr x1, [sp+112]
000351c0str x2, [sp+120]
000351c4str x3, [sp+128]
000351c8str x4, [sp+136]
000351ccmov x5, xzr
000351d0b 0x351ec
000351d4
000351d4loc_351d4:
000351d4add x5, x5, 8
000351d8ldr x0, [sp+104]
000351dcldr x1, [sp+112]
000351e0ldr x2, [sp+120]
000351e4ldr x3, [sp+128]
000351e8ldr x4, [sp+136]
000351ec
000351ecloc_351ec:
000351ecsubs xzr, x1, x5
000351f0b.ls 0x35308
000351f4str x5, [sp+80]
000351f8cbz x2, 0x3525c
000351fcubfm x1, x5, 6, 63
00035200mov x0, x2
00035204bl runtime.addb
00035208ldrb w2, [x0]
0003520cmov x3, x2
00035210cbnz w3, 0x35228
00035214ldr x3, [sp+80]
00035218ands xzr, x3, 63
0003521cb.ne 0x35314
00035220add x5, x3, 56
00035224b 0x351d4
00035228
00035228loc_35228:
00035228mov x3, x2
0003522cldr x4, [sp+80]
00035230ubfm x5, x4, 3, 5
00035234lsrv x3, x3, x5
00035238tbnz w3, 0, 0x35244
0003523cmov x5, x4
00035240b 0x351d4
00035244
00035244loc_35244:
00035244ldr x0, [sp+104]
00035248ldr x1, [sp+112]
0003524cldr x2, [sp+120]
00035250ldr x3, [sp+128]
00035254ldr x4, [sp+136]
00035258ldr x5, [sp+80]
0003525c
0003525cloc_3525c:
0003525cadd x6, x5, x0
00035260ldr x6, [x6]
00035264cbz x4, 0x35298
00035268ldr x7, [x4]
0003526csubs xzr, x7, x6
00035270b.hi 0x35298
00035274ldr x7, [x4+8]
00035278subs xzr, x7, x6
0003527cb.ls 0x35298
00035280mov x0, x4
00035284mov x1, x6
00035288orr x2, xzr, 1
0003528cbl runtime.(*stackScanState).putPtr
00035290ldr x5, [sp+80]
00035294b 0x351d4
00035298
00035298loc_35298:
00035298str x6, [sp+56]
0003529cmov x0, x6
000352a0bl runtime.spanOfHeap
000352a4cbnz x0, 0x352b0
000352a8ldr x5, [sp+80]
000352acb 0x351d4
000352b0
000352b0loc_352b0:
000352b0str x0, [sp+64]
000352b4ldr x1, [sp+56]
000352b8bl runtime.(*mspan).objIndex
000352bcstr x0, [sp+72]
000352c0mov x1, x0
000352c4ldr x0, [sp+64]
000352c8bl runtime.(*mspan).isFree
000352cctbz w0, 0, 0x352d8
000352d0ldr x5, [sp+80]
000352d4b 0x351d4
000352d8
000352d8loc_352d8:
000352d8ldr x0, [sp+64]
000352dcbl runtime.(*mspan).base
000352e0ldr x3, [sp+64]
000352e4ldr x1, [x3+104]
000352e8ldr x5, [sp+72]
000352ecmadd x0, x1, x5, x0
000352f0ldr x1, [sp+104]
000352f4ldr x2, [sp+80]
000352f8ldr x4, [sp+128]
000352fcbl runtime.greyobject
00035300ldr x5, [sp+80]
00035304b 0x351d4
00035308
00035308loc_35308:
00035308ldur x29, [sp-8]
0003530cldr x30, [sp], 96
00035310ret x30
00035314
00035314loc_35314:
00035314adrp x0, 0x67f000
00035318add x0, x0, 567
0003531corr x1, xzr, 15
00035320bl runtime.throw
00035324hint
00035328
00035328loc_35328:
00035328stp x0, x1, [sp+8]
0003532cstp x2, x3, [sp+24]
00035330str x4, [sp+40]
00035334mov x3, x30
00035338bl runtime.morestack_noctxt.abi0
0003533cldp x0, x1, [sp+8]
00035340ldp x2, x3, [sp+24]
00035344ldr x4, [sp+40]
00035348b 0x351a0
0003534cudf 0
000351a0
00035350
00035350runtime.shade: ; void runtime.shade(uintptr b)
00035350ldr x16, [x28+16]
00035354subs xzr, sp, x16
00035358b.ls 0x353c0
0003535cstr x30, [sp-96]!
00035360stur x29, [sp-8]
00035364sub x29, sp, 8
00035368mov x1, xzr
0003536cmov x2, x1
00035370bl runtime.findObject
00035374cbz x0, 0x353b4
00035378str x0, [sp+80]
0003537cstr x1, [sp+64]
00035380str x2, [sp+72]
00035384ldr x1, [x28+48]
00035388ldr x0, [x1+208]
0003538cbl runtime.puintptr.ptr
00035390ldrsb x27, [x0]
00035394movz x1, 4680
00035398add x4, x0, x1
0003539cldr x0, [sp+80]
000353a0mov x1, xzr
000353a4mov x2, x1
000353a8ldr x3, [sp+64]
000353acldr x5, [sp+72]
000353b0bl runtime.greyobject
000353b4
000353b4loc_353b4:
000353b4ldur x29, [sp-8]
000353b8ldr x30, [sp], 96
000353bcret x30
000353c0
000353c0loc_353c0:
000353c0str x0, [sp+8]
000353c4mov x3, x30
000353c8bl runtime.morestack_noctxt.abi0
000353ccldr x0, [sp+8]
000353d0b 0x35350
000353d4udf 0
000353d8udf 0
000353dcudf 0
00035350
00035350runtime.shade: ; void runtime.shade(uintptr b)
00035350ldr x16, [x28+16]
00035354subs xzr, sp, x16
00035358b.ls 0x353c0
0003535cstr x30, [sp-96]!
00035360stur x29, [sp-8]
00035364sub x29, sp, 8
00035368mov x1, xzr
0003536cmov x2, x1
00035370bl runtime.findObject
00035374cbz x0, 0x353b4
00035378str x0, [sp+80]
0003537cstr x1, [sp+64]
00035380str x2, [sp+72]
00035384ldr x1, [x28+48]
00035388ldr x0, [x1+208]
0003538cbl runtime.puintptr.ptr
00035390ldrsb x27, [x0]
00035394movz x1, 4680
00035398add x4, x0, x1
0003539cldr x0, [sp+80]
000353a0mov x1, xzr
000353a4mov x2, x1
000353a8ldr x3, [sp+64]
000353acldr x5, [sp+72]
000353b0bl runtime.greyobject
000353b4
000353b4loc_353b4:
000353b4ldur x29, [sp-8]
000353b8ldr x30, [sp], 96
000353bcret x30
000353c0
000353c0loc_353c0:
000353c0str x0, [sp+8]
000353c4mov x3, x30
000353c8bl runtime.morestack_noctxt.abi0
000353ccldr x0, [sp+8]
000353d0b 0x35350
000353d4udf 0
000353d8udf 0
000353dcudf 0
00035350
000353e0
000353e0runtime.greyobject: ; void runtime.greyobject(uintptr obj, uintptr base, uintptr off, runtime.mspan * span, runtime.gcWork * gcw, uintptr objIndex)
000353e0ldr x16, [x28+16]
000353e4subs xzr, sp, x16
000353e8b.ls 0x35640
000353ecstr x30, [sp-96]!
000353f0stur x29, [sp-8]
000353f4sub x29, sp, 8
000353f8ands xzr, x0, 7
000353fcb.ne 0x3562c
00035400str x0, [sp+104]
00035404str x1, [sp+112]
00035408str x2, [sp+120]
0003540cstr x3, [sp+128]
00035410str x4, [sp+136]
00035414str x5, [sp+144]
00035418mov x0, x3
0003541cmov x1, x5
00035420bl runtime.(*mspan).markBitsForIndex
00035424adrp x27, 0xa16000
00035428ldrb w3, [x27+1519]
0003542ctbnz w3, 0, 0x3551c
00035430str x2, [sp+72]
00035434strb w1, [sp+71]
00035438str x0, [sp+80]
0003543cadrp x27, 0xa17000
00035440ldrsw x3, [x27+244]
00035444subs wzr, w3, 0
00035448b.le 0x35468
0003544cldr x0, [sp+128]
00035450ldr x1, [sp+144]
00035454bl runtime.(*mspan).isFree
00035458tbnz w0, 0, 0x35580
0003545cldr x0, [sp+80]
00035460ldrb w1, [sp+71]
00035464ldr x2, [sp+72]
00035468
00035468loc_35468:
00035468bl runtime.markBits.isMarked
0003546ctbnz w0, 0, 0x35510
00035470ldr x0, [sp+80]
00035474ldrb w1, [sp+71]
00035478ldr x2, [sp+72]
0003547cbl runtime.markBits.setMarked
00035480ldr x0, [sp+128]
00035484bl runtime.(*mspan).base
00035488bl runtime.pageIndexOf
0003548cldrsb x27, [x0]
00035490movz x3, 1024
00035494movk x3, 0x10000
00035498add x3, x0, x3
0003549csubs xzr, x1, 1024
000354a0b.hs 0x35574
000354a4ldrb w4, [x3+x1]
000354a8and x4, x4, x2
000354acadd x1, x3, x1
000354b0ubfm x3, x4, 0, 7
000354b4cbnz w3, 0x354dc
000354b8adrp x27, 0xa16000
000354bcldrb w3, [x27+1516]
000354c0tbz w3, 0, 0x354cc
000354c4ldsetalb w2, w3, [x1]
000354c8b 0x354dc
000354cc
000354ccloc_354cc:
000354ccldaxrb w4, [x1]
000354d0orr x3, x4, x2
000354d4stlxrb w27, w3, [x1]
000354d8cbnz x27, 0x354cc
000354dc
000354dcloc_354dc:
000354dcldr x1, [sp+128]
000354e0ldrb w0, [x1+98]
000354e4bl runtime.spanClass.noscan
000354e8tbz w0, 0, 0x3553c
000354ecldr x0, [sp+136]
000354f0ldr x1, [x0+16]
000354f4ldr x2, [sp+128]
000354f8ldr x2, [x2+104]
000354fcadd x1, x1, x2
00035500str x1, [x0+16]
00035504ldur x29, [sp-8]
00035508ldr x30, [sp], 96
0003550cret x30
00035510
00035510loc_35510:
00035510ldur x29, [sp-8]
00035514ldr x30, [sp], 96
00035518ret x30
0003551c
0003551cloc_3551c:
0003551cmov x3, x0
00035520mov x4, x1
00035524mov x5, x2
00035528ldr x0, [sp+104]
0003552cldr x1, [sp+112]
00035530ldr x2, [sp+120]
00035534bl runtime.setCheckmark
00035538tbnz w0, 0, 0x35568
0003553c
0003553cloc_3553c:
0003553cldr x1, [sp+104]
00035540prfm
00035544ldr x0, [sp+136]
00035548bl runtime.(*gcWork).putFast
0003554ctbnz w0, 0, 0x3555c
00035550ldr x0, [sp+136]
00035554ldr x1, [sp+104]
00035558bl runtime.(*gcWork).put
0003555c
0003555cloc_3555c:
0003555cldur x29, [sp-8]
00035560ldr x30, [sp], 96
00035564ret x30
00035568
00035568loc_35568:
00035568ldur x29, [sp-8]
0003556cldr x30, [sp], 96
00035570ret x30
00035574
00035574loc_35574:
00035574mov x0, x1
00035578orr x1, xzr, 1024
0003557cbl runtime.panicIndexU
00035580
00035580loc_35580:
00035580bl runtime.printlock
00035584adrp x0, 0x687000
00035588add x0, x0, 859
0003558cmovz x1, 29
00035590bl runtime.printstring
00035594ldr x0, [sp+104]
00035598bl runtime.printhex
0003559cadrp x0, 0x67d000
000355a0add x0, x0, 3844
000355a4orr x1, xzr, 12
000355a8bl runtime.printstring
000355acldr x0, [sp+112]
000355b0bl runtime.printhex
000355b4adrp x0, 0x6da000
000355b8add x0, x0, 696
000355bcorr x1, xzr, 1
000355c0bl runtime.printstring
000355c4ldr x0, [sp+120]
000355c8bl runtime.printhex
000355ccadrp x0, 0x67a000
000355d0add x0, x0, 4061
000355d4orr x1, xzr, 2
000355d8bl runtime.printstring
000355dcbl runtime.printunlock
000355e0adrp x0, 0x67b000
000355e4add x0, x0, 802
000355e8orr x1, xzr, 4
000355ecldr x2, [sp+112]
000355f0ldr x3, [sp+120]
000355f4bl runtime.gcDumpObject
000355f8adrp x0, 0x67b000
000355fcadd x0, x0, 318
00035600orr x1, xzr, 3
00035604ldr x2, [sp+104]
00035608movn x3, 0
0003560cbl runtime.gcDumpObject
00035610ldr x0, [x28+48]
00035614orr x1, xzr, 2
00035618strb w1, [x0+290]
0003561cadrp x0, 0x681000
00035620add x0, x0, 35
00035624movz x1, 19
00035628bl runtime.throw
0003562c
0003562cloc_3562c:
0003562cadrp x0, 0x68b000
00035630add x0, x0, 2141
00035634movz x1, 35
00035638bl runtime.throw
0003563chint
00035640
00035640loc_35640:
00035640stp x0, x1, [sp+8]
00035644stp x2, x3, [sp+24]
00035648stp x4, x5, [sp+40]
0003564cmov x3, x30
00035650bl runtime.morestack_noctxt.abi0
00035654ldp x0, x1, [sp+8]
00035658ldp x2, x3, [sp+24]
0003565cldp x4, x5, [sp+40]
00035660b 0x353e0
00035664udf 0
00035668udf 0
0003566cudf 0
000353e0
000353e0runtime.greyobject: ; void runtime.greyobject(uintptr obj, uintptr base, uintptr off, runtime.mspan * span, runtime.gcWork * gcw, uintptr objIndex)
000353e0ldr x16, [x28+16]
000353e4subs xzr, sp, x16
000353e8b.ls 0x35640
000353ecstr x30, [sp-96]!
000353f0stur x29, [sp-8]
000353f4sub x29, sp, 8
000353f8ands xzr, x0, 7
000353fcb.ne 0x3562c
00035400str x0, [sp+104]
00035404str x1, [sp+112]
00035408str x2, [sp+120]
0003540cstr x3, [sp+128]
00035410str x4, [sp+136]
00035414str x5, [sp+144]
00035418mov x0, x3
0003541cmov x1, x5
00035420bl runtime.(*mspan).markBitsForIndex
00035424adrp x27, 0xa16000
00035428ldrb w3, [x27+1519]
0003542ctbnz w3, 0, 0x3551c
00035430str x2, [sp+72]
00035434strb w1, [sp+71]
00035438str x0, [sp+80]
0003543cadrp x27, 0xa17000
00035440ldrsw x3, [x27+244]
00035444subs wzr, w3, 0
00035448b.le 0x35468
0003544cldr x0, [sp+128]
00035450ldr x1, [sp+144]
00035454bl runtime.(*mspan).isFree
00035458tbnz w0, 0, 0x35580
0003545cldr x0, [sp+80]
00035460ldrb w1, [sp+71]
00035464ldr x2, [sp+72]
00035468
00035468loc_35468:
00035468bl runtime.markBits.isMarked
0003546ctbnz w0, 0, 0x35510
00035470ldr x0, [sp+80]
00035474ldrb w1, [sp+71]
00035478ldr x2, [sp+72]
0003547cbl runtime.markBits.setMarked
00035480ldr x0, [sp+128]
00035484bl runtime.(*mspan).base
00035488bl runtime.pageIndexOf
0003548cldrsb x27, [x0]
00035490movz x3, 1024
00035494movk x3, 0x10000
00035498add x3, x0, x3
0003549csubs xzr, x1, 1024
000354a0b.hs 0x35574
000354a4ldrb w4, [x3+x1]
000354a8and x4, x4, x2
000354acadd x1, x3, x1
000354b0ubfm x3, x4, 0, 7
000354b4cbnz w3, 0x354dc
000354b8adrp x27, 0xa16000
000354bcldrb w3, [x27+1516]
000354c0tbz w3, 0, 0x354cc
000354c4ldsetalb w2, w3, [x1]
000354c8b 0x354dc
000354cc
000354ccloc_354cc:
000354ccldaxrb w4, [x1]
000354d0orr x3, x4, x2
000354d4stlxrb w27, w3, [x1]
000354d8cbnz x27, 0x354cc
000354dc
000354dcloc_354dc:
000354dcldr x1, [sp+128]
000354e0ldrb w0, [x1+98]
000354e4bl runtime.spanClass.noscan
000354e8tbz w0, 0, 0x3553c
000354ecldr x0, [sp+136]
000354f0ldr x1, [x0+16]
000354f4ldr x2, [sp+128]
000354f8ldr x2, [x2+104]
000354fcadd x1, x1, x2
00035500str x1, [x0+16]
00035504ldur x29, [sp-8]
00035508ldr x30, [sp], 96
0003550cret x30
00035510
00035510loc_35510:
00035510ldur x29, [sp-8]
00035514ldr x30, [sp], 96
00035518ret x30
0003551c
0003551cloc_3551c:
0003551cmov x3, x0
00035520mov x4, x1
00035524mov x5, x2
00035528ldr x0, [sp+104]
0003552cldr x1, [sp+112]
00035530ldr x2, [sp+120]
00035534bl runtime.setCheckmark
00035538tbnz w0, 0, 0x35568
0003553c
0003553cloc_3553c:
0003553cldr x1, [sp+104]
00035540prfm
00035544ldr x0, [sp+136]
00035548bl runtime.(*gcWork).putFast
0003554ctbnz w0, 0, 0x3555c
00035550ldr x0, [sp+136]
00035554ldr x1, [sp+104]
00035558bl runtime.(*gcWork).put
0003555c
0003555cloc_3555c:
0003555cldur x29, [sp-8]
00035560ldr x30, [sp], 96
00035564ret x30
00035568
00035568loc_35568:
00035568ldur x29, [sp-8]
0003556cldr x30, [sp], 96
00035570ret x30
00035574
00035574loc_35574:
00035574mov x0, x1
00035578orr x1, xzr, 1024
0003557cbl runtime.panicIndexU
00035580
00035580loc_35580:
00035580bl runtime.printlock
00035584adrp x0, 0x687000
00035588add x0, x0, 859
0003558cmovz x1, 29
00035590bl runtime.printstring
00035594ldr x0, [sp+104]
00035598bl runtime.printhex
0003559cadrp x0, 0x67d000
000355a0add x0, x0, 3844
000355a4orr x1, xzr, 12
000355a8bl runtime.printstring
000355acldr x0, [sp+112]
000355b0bl runtime.printhex
000355b4adrp x0, 0x6da000
000355b8add x0, x0, 696
000355bcorr x1, xzr, 1
000355c0bl runtime.printstring
000355c4ldr x0, [sp+120]
000355c8bl runtime.printhex
000355ccadrp x0, 0x67a000
000355d0add x0, x0, 4061
000355d4orr x1, xzr, 2
000355d8bl runtime.printstring
000355dcbl runtime.printunlock
000355e0adrp x0, 0x67b000
000355e4add x0, x0, 802
000355e8orr x1, xzr, 4
000355ecldr x2, [sp+112]
000355f0ldr x3, [sp+120]
000355f4bl runtime.gcDumpObject
000355f8adrp x0, 0x67b000
000355fcadd x0, x0, 318
00035600orr x1, xzr, 3
00035604ldr x2, [sp+104]
00035608movn x3, 0
0003560cbl runtime.gcDumpObject
00035610ldr x0, [x28+48]
00035614orr x1, xzr, 2
00035618strb w1, [x0+290]
0003561cadrp x0, 0x681000
00035620add x0, x0, 35
00035624movz x1, 19
00035628bl runtime.throw
0003562c
0003562cloc_3562c:
0003562cadrp x0, 0x68b000
00035630add x0, x0, 2141
00035634movz x1, 35
00035638bl runtime.throw
0003563chint
00035640
00035640loc_35640:
00035640stp x0, x1, [sp+8]
00035644stp x2, x3, [sp+24]
00035648stp x4, x5, [sp+40]
0003564cmov x3, x30
00035650bl runtime.morestack_noctxt.abi0
00035654ldp x0, x1, [sp+8]
00035658ldp x2, x3, [sp+24]
0003565cldp x4, x5, [sp+40]
00035660b 0x353e0
00035664udf 0
00035668udf 0
0003566cudf 0
000353e0
00035670
00035670runtime.gcDumpObject: ; void runtime.gcDumpObject(struct string label, uintptr obj, uintptr off)
00035670ldr x16, [x28+16]
00035674subs xzr, sp, x16
00035678b.ls 0x359a8
0003567cstr x30, [sp-128]!
00035680stur x29, [sp-8]
00035684sub x29, sp, 8
00035688str x2, [sp+152]
0003568cstr x3, [sp+160]
00035690str x0, [sp+136]
00035694str x1, [sp+144]
00035698mov x0, x2
0003569cbl runtime.spanOf
000356a0str x0, [sp+48]
000356a4bl runtime.printlock
000356a8ldr x0, [sp+136]
000356acldr x1, [sp+144]
000356b0bl runtime.printstring
000356b4adrp x0, 0x6da000
000356b8add x0, x0, 720
000356bcorr x1, xzr, 1
000356c0bl runtime.printstring
000356c4ldr x0, [sp+152]
000356c8bl runtime.printhex
000356ccbl runtime.printunlock
000356d0ldr x0, [sp+48]
000356d4cbz x0, 0x35858
000356d8bl runtime.(*mspan).base
000356dcstr x0, [sp+96]
000356e0ldr x1, [sp+48]
000356e4ldr x2, [x1+112]
000356e8str x2, [sp+88]
000356ecldrb w2, [x1+98]
000356f0str x2, [sp+80]
000356f4ldr x1, [x1+104]
000356f8str x1, [sp+72]
000356fcbl runtime.printlock
00035700adrp x0, 0x67d000
00035704add x0, x0, 204
00035708movz x1, 10
0003570cbl runtime.printstring
00035710ldr x0, [sp+96]
00035714bl runtime.printhex
00035718adrp x0, 0x67c000
0003571cadd x0, x0, 2830
00035720movz x1, 9
00035724bl runtime.printstring
00035728ldr x0, [sp+88]
0003572cbl runtime.printhex
00035730adrp x0, 0x67e000
00035734add x0, x0, 1537
00035738movz x1, 13
0003573cbl runtime.printstring
00035740ldr x0, [sp+80]
00035744bl runtime.printuint
00035748adrp x0, 0x67d000
0003574cadd x0, x0, 3856
00035750orr x1, xzr, 12
00035754bl runtime.printstring
00035758ldr x0, [sp+72]
0003575cbl runtime.printuint
00035760adrp x0, 0x67c000
00035764add x0, x0, 2839
00035768movz x1, 9
0003576cbl runtime.printstring
00035770bl runtime.printunlock
00035774ldr x1, [sp+48]
00035778add x0, x1, 99
0003577cstr x0, [sp+112]
00035780bl runtime.(*mSpanStateBox).get
00035784ubfm x1, x0, 0, 7
00035788adrp x27, 0x9d8000
0003578cldr x2, [x27+3608]
00035790subs xzr, x1, x2
00035794b.ge 0x357d4
00035798adrp x27, 0x9d8000
0003579cldr x2, [x27+3600]
000357a0ubfm x0, x0, 60, 7
000357a4ldr x0, [x2+x0]
000357a8str x0, [sp+104]
000357acadd x0, x2, x1, lsl #4
000357b0ldr x0, [x0+8]
000357b4str x0, [sp+64]
000357b8bl runtime.printlock
000357bcldr x0, [sp+104]
000357c0ldr x1, [sp+64]
000357c4bl runtime.printstring
000357c8bl runtime.printnl
000357ccbl runtime.printunlock
000357d0b 0x35808
000357d4
000357d4loc_357d4:
000357d4strb w0, [sp+39]
000357d8bl runtime.printlock
000357dcadrp x0, 0x67c000
000357e0add x0, x0, 644
000357e4orr x1, xzr, 8
000357e8bl runtime.printstring
000357ecldrb w0, [sp+39]
000357f0bl runtime.printuint
000357f4adrp x0, 0x67a000
000357f8add x0, x0, 4061
000357fcorr x1, xzr, 2
00035800bl runtime.printstring
00035804bl runtime.printunlock
00035808
00035808loc_35808:
00035808ldr x1, [sp+48]
0003580cldr x1, [x1+104]
00035810str x1, [sp+40]
00035814ldr x0, [sp+112]
00035818bl runtime.(*mSpanStateBox).get
0003581cubfm x1, x0, 0, 7
00035820subs wzr, w1, 2
00035824b.ne 0x3583c
00035828ldr x0, [sp+40]
0003582ccbnz x0, 0x35840
00035830ldr x0, [sp+160]
00035834add x1, x0, 8
00035838b 0x35848
0003583c
0003583cloc_3583c:
0003583cldr x0, [sp+40]
00035840
00035840loc_35840:
00035840ldr x0, [sp+160]
00035844ldr x1, [sp+40]
00035848
00035848loc_35848:
00035848str x1, [sp+40]
0003584cmov x2, xzr
00035850mov x3, xzr
00035854b 0x35880
00035858
00035858loc_35858:
00035858bl runtime.printlock
0003585cadrp x0, 0x67b000
00035860add x0, x0, 3444
00035864orr x1, xzr, 7
00035868bl runtime.printstring
0003586cbl runtime.printunlock
00035870ldur x29, [sp-8]
00035874ldr x30, [sp], 128
00035878ret x30
0003587c
0003587cloc_3587c:
0003587cadd x2, x2, 8
00035880
00035880loc_35880:
00035880subs xzr, x1, x2
00035884b.ls 0x35980
00035888subs xzr, x2, 1024
0003588cb.lo 0x358b0
00035890sub x4, x0, 128
00035894subs xzr, x2, x4
00035898b.ls 0x358a8
0003589cadd x4, x0, 128
000358a0subs xzr, x2, x4
000358a4b.lo 0x358b0
000358a8
000358a8loc_358a8:
000358a8orr x3, xzr, 1
000358acb 0x3587c
000358b0
000358b0loc_358b0:
000358b0str x2, [sp+56]
000358b4tbz w3, 0, 0x358d4
000358b8bl runtime.printlock
000358bcadrp x0, 0x67b000
000358c0add x0, x0, 1652
000358c4movz x1, 5
000358c8bl runtime.printstring
000358ccbl runtime.printunlock
000358d0ldr x2, [sp+56]
000358d4
000358d4loc_358d4:
000358d4ldr x0, [sp+152]
000358d8add x0, x2, x0
000358dcldr x0, [x0]
000358e0str x0, [sp+96]
000358e4bl runtime.printlock
000358e8adrp x0, 0x67b000
000358ecadd x0, x0, 330
000358f0orr x1, xzr, 3
000358f4bl runtime.printstring
000358f8ldr x0, [sp+136]
000358fcldr x1, [sp+144]
00035900bl runtime.printstring
00035904adrp x0, 0x6da000
00035908add x0, x0, 696
0003590corr x1, xzr, 1
00035910bl runtime.printstring
00035914ldr x0, [sp+56]
00035918bl runtime.printuint
0003591cadrp x0, 0x67b000
00035920add x0, x0, 810
00035924orr x1, xzr, 4
00035928bl runtime.printstring
0003592cldr x0, [sp+96]
00035930bl runtime.printhex
00035934bl runtime.printunlock
00035938ldr x0, [sp+160]
0003593cldr x1, [sp+56]
00035940subs xzr, x0, x1
00035944b.ne 0x35960
00035948bl runtime.printlock
0003594cadrp x0, 0x67b000
00035950add x0, x0, 814
00035954orr x1, xzr, 4
00035958bl runtime.printstring
0003595cbl runtime.printunlock
00035960
00035960loc_35960:
00035960bl runtime.printlock
00035964bl runtime.printnl
00035968bl runtime.printunlock
0003596cldr x0, [sp+160]
00035970ldr x1, [sp+40]
00035974ldr x2, [sp+56]
00035978mov x3, xzr
0003597cb 0x3587c
00035980
00035980loc_35980:
00035980tbz w3, 0, 0x3599c
00035984bl runtime.printlock
00035988adrp x0, 0x67b000
0003598cadd x0, x0, 1652
00035990movz x1, 5
00035994bl runtime.printstring
00035998bl runtime.printunlock
0003599c
0003599cloc_3599c:
0003599cldur x29, [sp-8]
000359a0ldr x30, [sp], 128
000359a4ret x30
000359a8
000359a8loc_359a8:
000359a8stp x0, x1, [sp+8]
000359acstp x2, x3, [sp+24]
000359b0mov x3, x30
000359b4bl runtime.morestack_noctxt.abi0
000359b8ldp x0, x1, [sp+8]
000359bcldp x2, x3, [sp+24]
000359c0b 0x35670
000359c4udf 0
000359c8udf 0
000359ccudf 0
00035670
00035670runtime.gcDumpObject: ; void runtime.gcDumpObject(struct string label, uintptr obj, uintptr off)
00035670ldr x16, [x28+16]
00035674subs xzr, sp, x16
00035678b.ls 0x359a8
0003567cstr x30, [sp-128]!
00035680stur x29, [sp-8]
00035684sub x29, sp, 8
00035688str x2, [sp+152]
0003568cstr x3, [sp+160]
00035690str x0, [sp+136]
00035694str x1, [sp+144]
00035698mov x0, x2
0003569cbl runtime.spanOf
000356a0str x0, [sp+48]
000356a4bl runtime.printlock
000356a8ldr x0, [sp+136]
000356acldr x1, [sp+144]
000356b0bl runtime.printstring
000356b4adrp x0, 0x6da000
000356b8add x0, x0, 720
000356bcorr x1, xzr, 1
000356c0bl runtime.printstring
000356c4ldr x0, [sp+152]
000356c8bl runtime.printhex
000356ccbl runtime.printunlock
000356d0ldr x0, [sp+48]
000356d4cbz x0, 0x35858
000356d8bl runtime.(*mspan).base
000356dcstr x0, [sp+96]
000356e0ldr x1, [sp+48]
000356e4ldr x2, [x1+112]
000356e8str x2, [sp+88]
000356ecldrb w2, [x1+98]
000356f0str x2, [sp+80]
000356f4ldr x1, [x1+104]
000356f8str x1, [sp+72]
000356fcbl runtime.printlock
00035700adrp x0, 0x67d000
00035704add x0, x0, 204
00035708movz x1, 10
0003570cbl runtime.printstring
00035710ldr x0, [sp+96]
00035714bl runtime.printhex
00035718adrp x0, 0x67c000
0003571cadd x0, x0, 2830
00035720movz x1, 9
00035724bl runtime.printstring
00035728ldr x0, [sp+88]
0003572cbl runtime.printhex
00035730adrp x0, 0x67e000
00035734add x0, x0, 1537
00035738movz x1, 13
0003573cbl runtime.printstring
00035740ldr x0, [sp+80]
00035744bl runtime.printuint
00035748adrp x0, 0x67d000
0003574cadd x0, x0, 3856
00035750orr x1, xzr, 12
00035754bl runtime.printstring
00035758ldr x0, [sp+72]
0003575cbl runtime.printuint
00035760adrp x0, 0x67c000
00035764add x0, x0, 2839
00035768movz x1, 9
0003576cbl runtime.printstring
00035770bl runtime.printunlock
00035774ldr x1, [sp+48]
00035778add x0, x1, 99
0003577cstr x0, [sp+112]
00035780bl runtime.(*mSpanStateBox).get
00035784ubfm x1, x0, 0, 7
00035788adrp x27, 0x9d8000
0003578cldr x2, [x27+3608]
00035790subs xzr, x1, x2
00035794b.ge 0x357d4
00035798adrp x27, 0x9d8000
0003579cldr x2, [x27+3600]
000357a0ubfm x0, x0, 60, 7
000357a4ldr x0, [x2+x0]
000357a8str x0, [sp+104]
000357acadd x0, x2, x1, lsl #4
000357b0ldr x0, [x0+8]
000357b4str x0, [sp+64]
000357b8bl runtime.printlock
000357bcldr x0, [sp+104]
000357c0ldr x1, [sp+64]
000357c4bl runtime.printstring
000357c8bl runtime.printnl
000357ccbl runtime.printunlock
000357d0b 0x35808
000357d4
000357d4loc_357d4:
000357d4strb w0, [sp+39]
000357d8bl runtime.printlock
000357dcadrp x0, 0x67c000
000357e0add x0, x0, 644
000357e4orr x1, xzr, 8
000357e8bl runtime.printstring
000357ecldrb w0, [sp+39]
000357f0bl runtime.printuint
000357f4adrp x0, 0x67a000
000357f8add x0, x0, 4061
000357fcorr x1, xzr, 2
00035800bl runtime.printstring
00035804bl runtime.printunlock
00035808
00035808loc_35808:
00035808ldr x1, [sp+48]
0003580cldr x1, [x1+104]
00035810str x1, [sp+40]
00035814ldr x0, [sp+112]
00035818bl runtime.(*mSpanStateBox).get
0003581cubfm x1, x0, 0, 7
00035820subs wzr, w1, 2
00035824b.ne 0x3583c
00035828ldr x0, [sp+40]
0003582ccbnz x0, 0x35840
00035830ldr x0, [sp+160]
00035834add x1, x0, 8
00035838b 0x35848
0003583c
0003583cloc_3583c:
0003583cldr x0, [sp+40]
00035840
00035840loc_35840:
00035840ldr x0, [sp+160]
00035844ldr x1, [sp+40]
00035848
00035848loc_35848:
00035848str x1, [sp+40]
0003584cmov x2, xzr
00035850mov x3, xzr
00035854b 0x35880
00035858
00035858loc_35858:
00035858bl runtime.printlock
0003585cadrp x0, 0x67b000
00035860add x0, x0, 3444
00035864orr x1, xzr, 7
00035868bl runtime.printstring
0003586cbl runtime.printunlock
00035870ldur x29, [sp-8]
00035874ldr x30, [sp], 128
00035878ret x30
0003587c
0003587cloc_3587c:
0003587cadd x2, x2, 8
00035880
00035880loc_35880:
00035880subs xzr, x1, x2
00035884b.ls 0x35980
00035888subs xzr, x2, 1024
0003588cb.lo 0x358b0
00035890sub x4, x0, 128
00035894subs xzr, x2, x4
00035898b.ls 0x358a8
0003589cadd x4, x0, 128
000358a0subs xzr, x2, x4
000358a4b.lo 0x358b0
000358a8
000358a8loc_358a8:
000358a8orr x3, xzr, 1
000358acb 0x3587c
000358b0
000358b0loc_358b0:
000358b0str x2, [sp+56]
000358b4tbz w3, 0, 0x358d4
000358b8bl runtime.printlock
000358bcadrp x0, 0x67b000
000358c0add x0, x0, 1652
000358c4movz x1, 5
000358c8bl runtime.printstring
000358ccbl runtime.printunlock
000358d0ldr x2, [sp+56]
000358d4
000358d4loc_358d4:
000358d4ldr x0, [sp+152]
000358d8add x0, x2, x0
000358dcldr x0, [x0]
000358e0str x0, [sp+96]
000358e4bl runtime.printlock
000358e8adrp x0, 0x67b000
000358ecadd x0, x0, 330
000358f0orr x1, xzr, 3
000358f4bl runtime.printstring
000358f8ldr x0, [sp+136]
000358fcldr x1, [sp+144]
00035900bl runtime.printstring
00035904adrp x0, 0x6da000
00035908add x0, x0, 696
0003590corr x1, xzr, 1
00035910bl runtime.printstring
00035914ldr x0, [sp+56]
00035918bl runtime.printuint
0003591cadrp x0, 0x67b000
00035920add x0, x0, 810
00035924orr x1, xzr, 4
00035928bl runtime.printstring
0003592cldr x0, [sp+96]
00035930bl runtime.printhex
00035934bl runtime.printunlock
00035938ldr x0, [sp+160]
0003593cldr x1, [sp+56]
00035940subs xzr, x0, x1
00035944b.ne 0x35960
00035948bl runtime.printlock
0003594cadrp x0, 0x67b000
00035950add x0, x0, 814
00035954orr x1, xzr, 4
00035958bl runtime.printstring
0003595cbl runtime.printunlock
00035960
00035960loc_35960:
00035960bl runtime.printlock
00035964bl runtime.printnl
00035968bl runtime.printunlock
0003596cldr x0, [sp+160]
00035970ldr x1, [sp+40]
00035974ldr x2, [sp+56]
00035978mov x3, xzr
0003597cb 0x3587c
00035980
00035980loc_35980:
00035980tbz w3, 0, 0x3599c
00035984bl runtime.printlock
00035988adrp x0, 0x67b000
0003598cadd x0, x0, 1652
00035990movz x1, 5
00035994bl runtime.printstring
00035998bl runtime.printunlock
0003599c
0003599cloc_3599c:
0003599cldur x29, [sp-8]
000359a0ldr x30, [sp], 128
000359a4ret x30
000359a8
000359a8loc_359a8:
000359a8stp x0, x1, [sp+8]
000359acstp x2, x3, [sp+24]
000359b0mov x3, x30
000359b4bl runtime.morestack_noctxt.abi0
000359b8ldp x0, x1, [sp+8]
000359bcldp x2, x3, [sp+24]
000359c0b 0x35670
000359c4udf 0
000359c8udf 0
000359ccudf 0
00035670
000359d0
000359d0runtime.gcmarknewobject: ; void runtime.gcmarknewobject(runtime.mspan * span, uintptr obj)
000359d0str x30, [sp-48]!
000359d4stur x29, [sp-8]
000359d8sub x29, sp, 8
000359dcadrp x27, 0xa16000
000359e0ldrb w2, [x27+1519]
000359e4tbnz w2, 0, 0x35ab8
000359e8adrp x27, 0xa16000
000359ecldr w2, [x27+1600]
000359f0subs wzr, w2, 2
000359f4b.eq 0x35aa8
000359f8str x0, [sp+56]
000359fcbl runtime.(*mspan).objIndex
00035a00mov x1, x0
00035a04ldr x0, [sp+56]
00035a08bl runtime.(*mspan).markBitsForIndex
00035a0cbl runtime.markBits.setMarked
00035a10ldr x0, [sp+56]
00035a14bl runtime.(*mspan).base
00035a18bl runtime.pageIndexOf
00035a1cldrsb x27, [x0]
00035a20movz x3, 1024
00035a24movk x3, 0x10000
00035a28add x3, x0, x3
00035a2csubs xzr, x1, 1024
00035a30b.hs 0x35a9c
00035a34ldrb w4, [x3+x1]
00035a38and x4, x4, x2
00035a3cadd x1, x3, x1
00035a40ubfm x3, x4, 0, 7
00035a44cbnz w3, 0x35a6c
00035a48adrp x27, 0xa16000
00035a4cldrb w3, [x27+1516]
00035a50tbz w3, 0, 0x35a5c
00035a54ldsetalb w2, w3, [x1]
00035a58b 0x35a6c
00035a5c
00035a5cloc_35a5c:
00035a5cldaxrb w4, [x1]
00035a60orr x3, x4, x2
00035a64stlxrb w27, w3, [x1]
00035a68cbnz x27, 0x35a5c
00035a6c
00035a6cloc_35a6c:
00035a6cldr x1, [x28+48]
00035a70ldr x0, [x1+208]
00035a74bl runtime.puintptr.ptr
00035a78ldrsb x27, [x0]
00035a7cldr x1, [x0+4696]
00035a80ldr x2, [sp+56]
00035a84ldr x2, [x2+104]
00035a88add x1, x1, x2
00035a8cstr x1, [x0+4696]
00035a90ldur x29, [sp-8]
00035a94ldr x30, [sp], 48
00035a98ret x30
00035a9c
00035a9cloc_35a9c:
00035a9cmov x0, x1
00035aa0orr x1, xzr, 1024
00035aa4bl runtime.panicIndexU
00035aa8
00035aa8loc_35aa8:
00035aa8adrp x0, 0x694000
00035aacadd x0, x0, 858
00035ab0movz x1, 50
00035ab4bl runtime.throw
00035ab8
00035ab8loc_35ab8:
00035ab8adrp x0, 0x691000
00035abcadd x0, x0, 1244
00035ac0movz x1, 44
00035ac4bl runtime.throw
00035ac8hint
00035accudf 0
000359d0
000359d0runtime.gcmarknewobject: ; void runtime.gcmarknewobject(runtime.mspan * span, uintptr obj)
000359d0str x30, [sp-48]!
000359d4stur x29, [sp-8]
000359d8sub x29, sp, 8
000359dcadrp x27, 0xa16000
000359e0ldrb w2, [x27+1519]
000359e4tbnz w2, 0, 0x35ab8
000359e8adrp x27, 0xa16000
000359ecldr w2, [x27+1600]
000359f0subs wzr, w2, 2
000359f4b.eq 0x35aa8
000359f8str x0, [sp+56]
000359fcbl runtime.(*mspan).objIndex
00035a00mov x1, x0
00035a04ldr x0, [sp+56]
00035a08bl runtime.(*mspan).markBitsForIndex
00035a0cbl runtime.markBits.setMarked
00035a10ldr x0, [sp+56]
00035a14bl runtime.(*mspan).base
00035a18bl runtime.pageIndexOf
00035a1cldrsb x27, [x0]
00035a20movz x3, 1024
00035a24movk x3, 0x10000
00035a28add x3, x0, x3
00035a2csubs xzr, x1, 1024
00035a30b.hs 0x35a9c
00035a34ldrb w4, [x3+x1]
00035a38and x4, x4, x2
00035a3cadd x1, x3, x1
00035a40ubfm x3, x4, 0, 7
00035a44cbnz w3, 0x35a6c
00035a48adrp x27, 0xa16000
00035a4cldrb w3, [x27+1516]
00035a50tbz w3, 0, 0x35a5c
00035a54ldsetalb w2, w3, [x1]
00035a58b 0x35a6c
00035a5c
00035a5cloc_35a5c:
00035a5cldaxrb w4, [x1]
00035a60orr x3, x4, x2
00035a64stlxrb w27, w3, [x1]
00035a68cbnz x27, 0x35a5c
00035a6c
00035a6cloc_35a6c:
00035a6cldr x1, [x28+48]
00035a70ldr x0, [x1+208]
00035a74bl runtime.puintptr.ptr
00035a78ldrsb x27, [x0]
00035a7cldr x1, [x0+4696]
00035a80ldr x2, [sp+56]
00035a84ldr x2, [x2+104]
00035a88add x1, x1, x2
00035a8cstr x1, [x0+4696]
00035a90ldur x29, [sp-8]
00035a94ldr x30, [sp], 48
00035a98ret x30
00035a9c
00035a9cloc_35a9c:
00035a9cmov x0, x1
00035aa0orr x1, xzr, 1024
00035aa4bl runtime.panicIndexU
00035aa8
00035aa8loc_35aa8:
00035aa8adrp x0, 0x694000
00035aacadd x0, x0, 858
00035ab0movz x1, 50
00035ab4bl runtime.throw
00035ab8
00035ab8loc_35ab8:
00035ab8adrp x0, 0x691000
00035abcadd x0, x0, 1244
00035ac0movz x1, 44
00035ac4bl runtime.throw
00035ac8hint
00035accudf 0
000359d0
00035ad0
00035ad0runtime.gcMarkTinyAllocs: ; void runtime.gcMarkTinyAllocs(void)
00035ad0ldr x16, [x28+16]
00035ad4subs xzr, sp, x16
00035ad8b.ls 0x35b8c
00035adcstr x30, [sp-112]!
00035ae0stur x29, [sp-8]
00035ae4sub x29, sp, 8
00035ae8bl runtime.assertWorldStopped
00035aecadrp x27, 0x9ed000
00035af0ldr x0, [x27+3040]
00035af4str x0, [sp+96]
00035af8adrp x27, 0x9ed000
00035afcldr x1, [x27+3048]
00035b00str x1, [sp+80]
00035b04mov x2, xzr
00035b08b 0x35b10
00035b0c
00035b0cloc_35b0c:
00035b0cadd x2, x2, 1
00035b10
00035b10loc_35b10:
00035b10subs xzr, x2, x1
00035b14b.ge 0x35b80
00035b18ldr x3, [x0+3*x2]
00035b1cldr x4, [x3+56]
00035b20cbz x4, 0x35b0c
00035b24ldr x5, [x4+24]
00035b28cbz x5, 0x35b0c
00035b2cstr x2, [sp+72]
00035b30str x3, [sp+88]
00035b34str x4, [sp+64]
00035b38mov x0, x5
00035b3cmov x1, xzr
00035b40mov x2, x1
00035b44bl runtime.findObject
00035b48ldr x3, [sp+88]
00035b4cmovz x4, 4680
00035b50add x4, x3, x4
00035b54ldr x3, [sp+64]
00035b58ldr x0, [x3+24]
00035b5cmov x3, x1
00035b60mov x5, x2
00035b64mov x1, xzr
00035b68mov x2, x1
00035b6cbl runtime.greyobject
00035b70ldr x0, [sp+96]
00035b74ldr x1, [sp+80]
00035b78ldr x2, [sp+72]
00035b7cb 0x35b0c
00035b80
00035b80loc_35b80:
00035b80ldur x29, [sp-8]
00035b84ldr x30, [sp], 112
00035b88ret x30
00035b8c
00035b8cloc_35b8c:
00035b8cmov x3, x30
00035b90bl runtime.morestack_noctxt.abi0
00035b94b 0x35ad0
00035b98udf 0
00035b9cudf 0
00035ad0
00035ad0runtime.gcMarkTinyAllocs: ; void runtime.gcMarkTinyAllocs(void)
00035ad0ldr x16, [x28+16]
00035ad4subs xzr, sp, x16
00035ad8b.ls 0x35b8c
00035adcstr x30, [sp-112]!
00035ae0stur x29, [sp-8]
00035ae4sub x29, sp, 8
00035ae8bl runtime.assertWorldStopped
00035aecadrp x27, 0x9ed000
00035af0ldr x0, [x27+3040]
00035af4str x0, [sp+96]
00035af8adrp x27, 0x9ed000
00035afcldr x1, [x27+3048]
00035b00str x1, [sp+80]
00035b04mov x2, xzr
00035b08b 0x35b10
00035b0c
00035b0cloc_35b0c:
00035b0cadd x2, x2, 1
00035b10
00035b10loc_35b10:
00035b10subs xzr, x2, x1
00035b14b.ge 0x35b80
00035b18ldr x3, [x0+3*x2]
00035b1cldr x4, [x3+56]
00035b20cbz x4, 0x35b0c
00035b24ldr x5, [x4+24]
00035b28cbz x5, 0x35b0c
00035b2cstr x2, [sp+72]
00035b30str x3, [sp+88]
00035b34str x4, [sp+64]
00035b38mov x0, x5
00035b3cmov x1, xzr
00035b40mov x2, x1
00035b44bl runtime.findObject
00035b48ldr x3, [sp+88]
00035b4cmovz x4, 4680
00035b50add x4, x3, x4
00035b54ldr x3, [sp+64]
00035b58ldr x0, [x3+24]
00035b5cmov x3, x1
00035b60mov x5, x2
00035b64mov x1, xzr
00035b68mov x2, x1
00035b6cbl runtime.greyobject
00035b70ldr x0, [sp+96]
00035b74ldr x1, [sp+80]
00035b78ldr x2, [sp+72]
00035b7cb 0x35b0c
00035b80
00035b80loc_35b80:
00035b80ldur x29, [sp-8]
00035b84ldr x30, [sp], 112
00035b88ret x30
00035b8c
00035b8cloc_35b8c:
00035b8cmov x3, x30
00035b90bl runtime.morestack_noctxt.abi0
00035b94b 0x35ad0
00035b98udf 0
00035b9cudf 0
00035ad0
00035ba0
00035ba0runtime.(*gcControllerState).init: ; void runtime.(*gcControllerState).init(runtime.gcControllerState * c, int32 gcPercent, int64 memoryLimit)
00035ba0ldr x16, [x28+16]
00035ba4subs xzr, sp, x16
00035ba8b.ls 0x35bf8
00035bacstr x30, [sp-32]!
00035bb0stur x29, [sp-8]
00035bb4sub x29, sp, 8
00035bb8str x0, [sp+40]
00035bbcstr x2, [sp+56]
00035bc0orr x2, xzr, 0x400000
00035bc4str x2, [x0+16]
00035bc8movn x2, 0
00035bccstr x2, [x0+88]
00035bd0bl runtime.(*gcControllerState).setGCPercent
00035bd4ldr x0, [sp+40]
00035bd8ldr x1, [sp+56]
00035bdcbl runtime.(*gcControllerState).setMemoryLimit
00035be0ldr x0, [sp+40]
00035be4orr x1, xzr, 1
00035be8bl runtime.(*gcControllerState).commit
00035becldur x29, [sp-8]
00035bf0ldr x30, [sp], 32
00035bf4ret x30
00035bf8
00035bf8loc_35bf8:
00035bf8str x0, [sp+8]
00035bfcstr w1, [sp+16]
00035c00str x2, [sp+24]
00035c04mov x3, x30
00035c08bl runtime.morestack_noctxt.abi0
00035c0cldr x0, [sp+8]
00035c10ldrsw x1, [sp+16]
00035c14ldr x2, [sp+24]
00035c18b 0x35ba0
00035c1cudf 0
00035ba0
00035ba0runtime.(*gcControllerState).init: ; void runtime.(*gcControllerState).init(runtime.gcControllerState * c, int32 gcPercent, int64 memoryLimit)
00035ba0ldr x16, [x28+16]
00035ba4subs xzr, sp, x16
00035ba8b.ls 0x35bf8
00035bacstr x30, [sp-32]!
00035bb0stur x29, [sp-8]
00035bb4sub x29, sp, 8
00035bb8str x0, [sp+40]
00035bbcstr x2, [sp+56]
00035bc0orr x2, xzr, 0x400000
00035bc4str x2, [x0+16]
00035bc8movn x2, 0
00035bccstr x2, [x0+88]
00035bd0bl runtime.(*gcControllerState).setGCPercent
00035bd4ldr x0, [sp+40]
00035bd8ldr x1, [sp+56]
00035bdcbl runtime.(*gcControllerState).setMemoryLimit
00035be0ldr x0, [sp+40]
00035be4orr x1, xzr, 1
00035be8bl runtime.(*gcControllerState).commit
00035becldur x29, [sp-8]
00035bf0ldr x30, [sp], 32
00035bf4ret x30
00035bf8
00035bf8loc_35bf8:
00035bf8str x0, [sp+8]
00035bfcstr w1, [sp+16]
00035c00str x2, [sp+24]
00035c04mov x3, x30
00035c08bl runtime.morestack_noctxt.abi0
00035c0cldr x0, [sp+8]
00035c10ldrsw x1, [sp+16]
00035c14ldr x2, [sp+24]
00035c18b 0x35ba0
00035c1cudf 0
00035ba0
00035c20
00035c20runtime.(*gcControllerState).startCycle: ; void runtime.(*gcControllerState).startCycle(runtime.gcControllerState * c, int64 markStartTime, int procs, runtime.gcTrigger trigger)
00035c20ldr x16, [x28+16]
00035c24subs xzr, sp, x16
00035c28b.ls 0x35f24
00035c2cstr x30, [sp-96]!
00035c30stur x29, [sp-8]
00035c34sub x29, sp, 8
00035c38str x0, [sp+104]
00035c3cstr x1, [sp+112]
00035c40str x2, [sp+120]
00035c44str x3, [sp+80]
00035c48ldrsb x27, [x0]
00035c4cadd x0, x0, 160
00035c50mov x1, xzr
00035c54bl internal/runtime/atomic.(*Int64).Store
00035c58ldr x2, [sp+104]
00035c5cadd x0, x2, 168
00035c60mov x1, xzr
00035c64bl internal/runtime/atomic.(*Int64).Store
00035c68ldr x2, [sp+104]
00035c6cadd x0, x2, 176
00035c70mov x1, xzr
00035c74bl internal/runtime/atomic.(*Int64).Store
00035c78ldr x2, [sp+104]
00035c7cadd x0, x2, 184
00035c80mov x1, xzr
00035c84bl internal/runtime/atomic.(*Int64).Store
00035c88ldr x2, [sp+104]
00035c8cadd x0, x2, 192
00035c90mov x1, xzr
00035c94bl internal/runtime/atomic.(*Int64).Store
00035c98ldr x2, [sp+104]
00035c9cadd x0, x2, 200
00035ca0mov x1, xzr
00035ca4bl internal/runtime/atomic.(*Int64).Store
00035ca8ldr x2, [sp+104]
00035cacadd x0, x2, 208
00035cb0mov x1, xzr
00035cb4bl internal/runtime/atomic.(*Int64).Store
00035cb8ldr x2, [sp+104]
00035cbcadd x0, x2, 216
00035cc0mov x1, xzr
00035cc4bl internal/runtime/atomic.(*Int64).Store
00035cc8ldr x2, [sp+112]
00035cccldr x3, [sp+104]
00035cd0str x2, [x3+224]
00035cd4add x0, x3, 104
00035cd8bl internal/runtime/atomic.(*Uint64).Load
00035cdcldr x2, [sp+104]
00035ce0str x0, [x2+88]
00035ce4ldr x3, [sp+120]
00035ce8scvtf d0, x3
00035cecfmov d1
00035cf0fmul d2, d0, d1
00035cf4fmov d3
00035cf8fmadd d3, d1, d0, d3
00035cfcfcvtzs x4, d3
00035d00scvtf d3, x4
00035d04fdiv d4, d3, d2
00035d08fmov d5
00035d0cfsub d4, d4, d5
00035d10adrp x27, 0x6db000
00035d14ldr d5, [x27+3264]
00035d18fcmp d4, d5
00035d1cb.mi 0x35d30
00035d20adrp x27, 0x6db000
00035d24ldr d5, [x27+3176]
00035d28fcmp d5, d4
00035d2cb.pl 0x35d50
00035d30
00035d30loc_35d30:
00035d30sub x5, x4, 1
00035d34fcmp d2, d3
00035d38csel x4, x5, x4, mi
00035d3cscvtf d2, x4
00035d40fnmsub d1, d1, d0, d2
00035d44fdiv d0, d1, d0
00035d48str d0, [x2+264]
00035d4cb 0x35d58
00035d50
00035d50loc_35d50:
00035d50fmov d0, xzr
00035d54str d0, [x2+264]
00035d58
00035d58loc_35d58:
00035d58adrp x27, 0xa17000
00035d5cldrsw x5, [x27+256]
00035d60subs wzr, w5, 0
00035d64b.le 0x35d78
00035d68fmov d0, xzr
00035d6cstr d0, [x2+264]
00035d70mov x0, x3
00035d74b 0x35d80
00035d78
00035d78loc_35d78:
00035d78mov x0, x3
00035d7cmov x3, x4
00035d80
00035d80loc_35d80:
00035d80adrp x27, 0x9ed000
00035d84ldr x4, [x27+3040]
00035d88adrp x27, 0x9ed000
00035d8cldr x5, [x27+3048]
00035d90mov x1, xzr
00035d94b 0x35db0
00035d98
00035d98loc_35d98:
00035d98ldr x6, [x4+3*x1]
00035d9cldrsb x27, [x6]
00035da0add x27, x6, 544
00035da4add x27, x27, 4096
00035da8stp xzr, xzr, [x27]
00035dacadd x1, x1, 1
00035db0
00035db0loc_35db0:
00035db0subs xzr, x1, x5
00035db4b.lt 0x35d98
00035db8str x3, [sp+32]
00035dbcldr x4, [sp+80]
00035dc0subs xzr, x4, 1
00035dc4b.ne 0x35df0
00035dc8subs xzr, x3, 0
00035dccb.le 0x35de0
00035dd0mov x0, x2
00035dd4mov x1, xzr
00035dd8bl runtime.(*gcControllerState).setMaxIdleMarkWorkers
00035ddcb 0x35dfc
00035de0
00035de0loc_35de0:
00035de0mov x0, x2
00035de4orr x1, xzr, 1
00035de8bl runtime.(*gcControllerState).setMaxIdleMarkWorkers
00035decb 0x35dfc
00035df0
00035df0loc_35df0:
00035df0sub x1, x0, x3
00035df4mov x0, x2
00035df8bl runtime.(*gcControllerState).setMaxIdleMarkWorkers
00035dfc
00035dfcloc_35dfc:
00035dfcldr x2, [sp+104]
00035e00add x0, x2, 232
00035e04ldr x1, [sp+32]
00035e08bl internal/runtime/atomic.(*Int64).Store
00035e0cldr x0, [sp+104]
00035e10bl runtime.(*gcControllerState).revise
00035e14adrp x27, 0xa17000
00035e18ldrsw x2, [x27+248]
00035e1csubs wzr, w2, 0
00035e20b.le 0x35f18
00035e24ldr x0, [sp+104]
00035e28bl runtime.(*gcControllerState).heapGoal
00035e2cstr x0, [sp+24]
00035e30ldr x1, [sp+104]
00035e34add x0, x1, 248
00035e38bl internal/runtime/atomic.(*Float64).Load
00035e3cstr d0, [sp+40]
00035e40adrp x0, 0xa17000
00035e44add x0, x0, 2608
00035e48bl internal/runtime/atomic.(*Uint64).Load
00035e4cubfm x1, x0, 20, 63
00035e50str x1, [sp+72]
00035e54adrp x27, 0x9ef000
00035e58ldr x1, [x27+3128]
00035e5cubfm x1, x1, 20, 63
00035e60str x1, [sp+64]
00035e64ldr x1, [sp+24]
00035e68ubfm x1, x1, 20, 63
00035e6cstr x1, [sp+56]
00035e70ldr x1, [sp+104]
00035e74ldr d0, [x1+264]
00035e78str d0, [sp+48]
00035e7cbl runtime.printlock
00035e80adrp x0, 0x681000
00035e84add x0, x0, 2507
00035e88movz x1, 20
00035e8cbl runtime.printstring
00035e90ldr d0, [sp+40]
00035e94bl runtime.printfloat
00035e98adrp x0, 0x67b000
00035e9cadd x0, x0, 3451
00035ea0orr x1, xzr, 7
00035ea4bl runtime.printstring
00035ea8ldr x0, [sp+72]
00035eacbl runtime.printuint
00035eb0adrp x0, 0x67b000
00035eb4add x0, x0, 3458
00035eb8orr x1, xzr, 7
00035ebcbl runtime.printstring
00035ec0ldr x0, [sp+64]
00035ec4bl runtime.printuint
00035ec8adrp x0, 0x67a000
00035eccadd x0, x0, 4067
00035ed0orr x1, xzr, 2
00035ed4bl runtime.printstring
00035ed8ldr x0, [sp+56]
00035edcbl runtime.printuint
00035ee0adrp x0, 0x67e000
00035ee4add x0, x0, 1550
00035ee8movz x1, 13
00035eecbl runtime.printstring
00035ef0ldr x0, [sp+32]
00035ef4bl runtime.printint
00035ef8adrp x0, 0x6da000
00035efcadd x0, x0, 696
00035f00orr x1, xzr, 1
00035f04bl runtime.printstring
00035f08ldr d0, [sp+48]
00035f0cbl runtime.printfloat
00035f10bl runtime.printnl
00035f14bl runtime.printunlock
00035f18
00035f18loc_35f18:
00035f18ldur x29, [sp-8]
00035f1cldr x30, [sp], 96
00035f20ret x30
00035f24
00035f24loc_35f24:
00035f24stp x0, x1, [sp+8]
00035f28stp x2, x3, [sp+24]
00035f2cstr x4, [sp+40]
00035f30str w5, [sp+48]
00035f34mov x3, x30
00035f38bl runtime.morestack_noctxt.abi0
00035f3cldp x0, x1, [sp+8]
00035f40ldp x2, x3, [sp+24]
00035f44ldr x4, [sp+40]
00035f48ldr w5, [sp+48]
00035f4cb 0x35c20
00035c20
00035c20runtime.(*gcControllerState).startCycle: ; void runtime.(*gcControllerState).startCycle(runtime.gcControllerState * c, int64 markStartTime, int procs, runtime.gcTrigger trigger)
00035c20ldr x16, [x28+16]
00035c24subs xzr, sp, x16
00035c28b.ls 0x35f24
00035c2cstr x30, [sp-96]!
00035c30stur x29, [sp-8]
00035c34sub x29, sp, 8
00035c38str x0, [sp+104]
00035c3cstr x1, [sp+112]
00035c40str x2, [sp+120]
00035c44str x3, [sp+80]
00035c48ldrsb x27, [x0]
00035c4cadd x0, x0, 160
00035c50mov x1, xzr
00035c54bl internal/runtime/atomic.(*Int64).Store
00035c58ldr x2, [sp+104]
00035c5cadd x0, x2, 168
00035c60mov x1, xzr
00035c64bl internal/runtime/atomic.(*Int64).Store
00035c68ldr x2, [sp+104]
00035c6cadd x0, x2, 176
00035c70mov x1, xzr
00035c74bl internal/runtime/atomic.(*Int64).Store
00035c78ldr x2, [sp+104]
00035c7cadd x0, x2, 184
00035c80mov x1, xzr
00035c84bl internal/runtime/atomic.(*Int64).Store
00035c88ldr x2, [sp+104]
00035c8cadd x0, x2, 192
00035c90mov x1, xzr
00035c94bl internal/runtime/atomic.(*Int64).Store
00035c98ldr x2, [sp+104]
00035c9cadd x0, x2, 200
00035ca0mov x1, xzr
00035ca4bl internal/runtime/atomic.(*Int64).Store
00035ca8ldr x2, [sp+104]
00035cacadd x0, x2, 208
00035cb0mov x1, xzr
00035cb4bl internal/runtime/atomic.(*Int64).Store
00035cb8ldr x2, [sp+104]
00035cbcadd x0, x2, 216
00035cc0mov x1, xzr
00035cc4bl internal/runtime/atomic.(*Int64).Store
00035cc8ldr x2, [sp+112]
00035cccldr x3, [sp+104]
00035cd0str x2, [x3+224]
00035cd4add x0, x3, 104
00035cd8bl internal/runtime/atomic.(*Uint64).Load
00035cdcldr x2, [sp+104]
00035ce0str x0, [x2+88]
00035ce4ldr x3, [sp+120]
00035ce8scvtf d0, x3
00035cecfmov d1
00035cf0fmul d2, d0, d1
00035cf4fmov d3
00035cf8fmadd d3, d1, d0, d3
00035cfcfcvtzs x4, d3
00035d00scvtf d3, x4
00035d04fdiv d4, d3, d2
00035d08fmov d5
00035d0cfsub d4, d4, d5
00035d10adrp x27, 0x6db000
00035d14ldr d5, [x27+3264]
00035d18fcmp d4, d5
00035d1cb.mi 0x35d30
00035d20adrp x27, 0x6db000
00035d24ldr d5, [x27+3176]
00035d28fcmp d5, d4
00035d2cb.pl 0x35d50
00035d30
00035d30loc_35d30:
00035d30sub x5, x4, 1
00035d34fcmp d2, d3
00035d38csel x4, x5, x4, mi
00035d3cscvtf d2, x4
00035d40fnmsub d1, d1, d0, d2
00035d44fdiv d0, d1, d0
00035d48str d0, [x2+264]
00035d4cb 0x35d58
00035d50
00035d50loc_35d50:
00035d50fmov d0, xzr
00035d54str d0, [x2+264]
00035d58
00035d58loc_35d58:
00035d58adrp x27, 0xa17000
00035d5cldrsw x5, [x27+256]
00035d60subs wzr, w5, 0
00035d64b.le 0x35d78
00035d68fmov d0, xzr
00035d6cstr d0, [x2+264]
00035d70mov x0, x3
00035d74b 0x35d80
00035d78
00035d78loc_35d78:
00035d78mov x0, x3
00035d7cmov x3, x4
00035d80
00035d80loc_35d80:
00035d80adrp x27, 0x9ed000
00035d84ldr x4, [x27+3040]
00035d88adrp x27, 0x9ed000
00035d8cldr x5, [x27+3048]
00035d90mov x1, xzr
00035d94b 0x35db0
00035d98
00035d98loc_35d98:
00035d98ldr x6, [x4+3*x1]
00035d9cldrsb x27, [x6]
00035da0add x27, x6, 544
00035da4add x27, x27, 4096
00035da8stp xzr, xzr, [x27]
00035dacadd x1, x1, 1
00035db0
00035db0loc_35db0:
00035db0subs xzr, x1, x5
00035db4b.lt 0x35d98
00035db8str x3, [sp+32]
00035dbcldr x4, [sp+80]
00035dc0subs xzr, x4, 1
00035dc4b.ne 0x35df0
00035dc8subs xzr, x3, 0
00035dccb.le 0x35de0
00035dd0mov x0, x2
00035dd4mov x1, xzr
00035dd8bl runtime.(*gcControllerState).setMaxIdleMarkWorkers
00035ddcb 0x35dfc
00035de0
00035de0loc_35de0:
00035de0mov x0, x2
00035de4orr x1, xzr, 1
00035de8bl runtime.(*gcControllerState).setMaxIdleMarkWorkers
00035decb 0x35dfc
00035df0
00035df0loc_35df0:
00035df0sub x1, x0, x3
00035df4mov x0, x2
00035df8bl runtime.(*gcControllerState).setMaxIdleMarkWorkers
00035dfc
00035dfcloc_35dfc:
00035dfcldr x2, [sp+104]
00035e00add x0, x2, 232
00035e04ldr x1, [sp+32]
00035e08bl internal/runtime/atomic.(*Int64).Store
00035e0cldr x0, [sp+104]
00035e10bl runtime.(*gcControllerState).revise
00035e14adrp x27, 0xa17000
00035e18ldrsw x2, [x27+248]
00035e1csubs wzr, w2, 0
00035e20b.le 0x35f18
00035e24ldr x0, [sp+104]
00035e28bl runtime.(*gcControllerState).heapGoal
00035e2cstr x0, [sp+24]
00035e30ldr x1, [sp+104]
00035e34add x0, x1, 248
00035e38bl internal/runtime/atomic.(*Float64).Load
00035e3cstr d0, [sp+40]
00035e40adrp x0, 0xa17000
00035e44add x0, x0, 2608
00035e48bl internal/runtime/atomic.(*Uint64).Load
00035e4cubfm x1, x0, 20, 63
00035e50str x1, [sp+72]
00035e54adrp x27, 0x9ef000
00035e58ldr x1, [x27+3128]
00035e5cubfm x1, x1, 20, 63
00035e60str x1, [sp+64]
00035e64ldr x1, [sp+24]
00035e68ubfm x1, x1, 20, 63
00035e6cstr x1, [sp+56]
00035e70ldr x1, [sp+104]
00035e74ldr d0, [x1+264]
00035e78str d0, [sp+48]
00035e7cbl runtime.printlock
00035e80adrp x0, 0x681000
00035e84add x0, x0, 2507
00035e88movz x1, 20
00035e8cbl runtime.printstring
00035e90ldr d0, [sp+40]
00035e94bl runtime.printfloat
00035e98adrp x0, 0x67b000
00035e9cadd x0, x0, 3451
00035ea0orr x1, xzr, 7
00035ea4bl runtime.printstring
00035ea8ldr x0, [sp+72]
00035eacbl runtime.printuint
00035eb0adrp x0, 0x67b000
00035eb4add x0, x0, 3458
00035eb8orr x1, xzr, 7
00035ebcbl runtime.printstring
00035ec0ldr x0, [sp+64]
00035ec4bl runtime.printuint
00035ec8adrp x0, 0x67a000
00035eccadd x0, x0, 4067
00035ed0orr x1, xzr, 2
00035ed4bl runtime.printstring
00035ed8ldr x0, [sp+56]
00035edcbl runtime.printuint
00035ee0adrp x0, 0x67e000
00035ee4add x0, x0, 1550
00035ee8movz x1, 13
00035eecbl runtime.printstring
00035ef0ldr x0, [sp+32]
00035ef4bl runtime.printint
00035ef8adrp x0, 0x6da000
00035efcadd x0, x0, 696
00035f00orr x1, xzr, 1
00035f04bl runtime.printstring
00035f08ldr d0, [sp+48]
00035f0cbl runtime.printfloat
00035f10bl runtime.printnl
00035f14bl runtime.printunlock
00035f18
00035f18loc_35f18:
00035f18ldur x29, [sp-8]
00035f1cldr x30, [sp], 96
00035f20ret x30
00035f24
00035f24loc_35f24:
00035f24stp x0, x1, [sp+8]
00035f28stp x2, x3, [sp+24]
00035f2cstr x4, [sp+40]
00035f30str w5, [sp+48]
00035f34mov x3, x30
00035f38bl runtime.morestack_noctxt.abi0
00035f3cldp x0, x1, [sp+8]
00035f40ldp x2, x3, [sp+24]
00035f44ldr x4, [sp+40]
00035f48ldr w5, [sp+48]
00035f4cb 0x35c20
00035c20
00035f50
00035f50runtime.(*gcControllerState).revise: ; void runtime.(*gcControllerState).revise(runtime.gcControllerState * c)
00035f50ldr x16, [x28+16]
00035f54sub x17, sp, 16
00035f58subs xzr, x17, x16
00035f5cb.ls 0x3616c
00035f60str x30, [sp-144]!
00035f64stur x29, [sp-8]
00035f68sub x29, sp, 8
00035f6cstr x0, [sp+152]
00035f70ldrsb x27, [x0]
00035f74bl internal/runtime/atomic.(*Int32).Load
00035f78str w0, [sp+36]
00035f7cldr x1, [sp+152]
00035f80add x0, x1, 104
00035f84bl internal/runtime/atomic.(*Uint64).Load
00035f88str x0, [sp+64]
00035f8cldr x1, [sp+152]
00035f90add x0, x1, 112
00035f94bl internal/runtime/atomic.(*Uint64).Load
00035f98str x0, [sp+48]
00035f9cldr x1, [sp+152]
00035fa0add x0, x1, 160
00035fa4bl internal/runtime/atomic.(*Int64).Load
00035fa8str x0, [sp+112]
00035facldr x1, [sp+152]
00035fb0add x0, x1, 168
00035fb4bl internal/runtime/atomic.(*Int64).Load
00035fb8ldr x1, [sp+112]
00035fbcadd x1, x1, x0
00035fc0str x1, [sp+112]
00035fc4ldr x1, [sp+152]
00035fc8add x0, x1, 176
00035fccbl internal/runtime/atomic.(*Int64).Load
00035fd0str x0, [sp+104]
00035fd4ldr x0, [sp+152]
00035fd8bl runtime.(*gcControllerState).heapGoal
00035fdcstr x0, [sp+96]
00035fe0ldr x1, [sp+112]
00035fe4ldr x2, [sp+104]
00035fe8add x1, x1, x2
00035fecstr x1, [sp+40]
00035ff0ldr x1, [sp+152]
00035ff4add x0, x1, 128
00035ff8bl internal/runtime/atomic.(*Uint64).Load
00035ffcstr x0, [sp+88]
00036000ldr x1, [sp+152]
00036004add x0, x1, 144
00036008str x0, [sp+128]
0003600cbl internal/runtime/atomic.(*Uint64).Load
00036010ldr x1, [sp+152]
00036014ldr x2, [x1+120]
00036018ldr x3, [sp+88]
0003601cadd x2, x2, x3
00036020add x2, x0, x2
00036024str x2, [sp+88]
00036028add x0, x1, 136
0003602cbl internal/runtime/atomic.(*Uint64).Load
00036030str x0, [sp+56]
00036034ldr x0, [sp+128]
00036038bl internal/runtime/atomic.(*Uint64).Load
0003603cldr x1, [sp+56]
00036040ldr x2, [sp+48]
00036044add x1, x1, x2
00036048add x1, x0, x1
0003604cldrsw x2, [sp+36]
00036050subs wzr, w2, 0
00036054movz x3, 34464
00036058movk x3, 0x10000
0003605ccsel x2, x3, x2, lt
00036060ldr x3, [sp+88]
00036064ldr x4, [sp+40]
00036068subs xzr, x3, x4
0003606cb.ge 0x360d0
00036070ldr x5, [sp+152]
00036074ldr x6, [x5+88]
00036078ldr x7, [sp+96]
0003607csub x8, x7, x6
00036080scvtf d1, x8
00036084scvtf d2, x3
00036088fdiv d1, d1, d2
0003608cscvtf d2, x1
00036090fmul d1, d2, d1
00036094fcvtzs x3, d1
00036098add x3, x6, x3
0003609cscvtf d1, w2
000360a0adrp x27, 0x6da000
000360a4ldr d2, [x27+3208]
000360a8fdiv d1, d1, d2
000360acfmov d2
000360b0fadd d1, d2, d1
000360b4scvtf d2, x7
000360b8fmul d1, d2, d1
000360bcfcvtzs x6, d1
000360c0subs xzr, x6, x3
000360c4csel x0, x6, x3, lt
000360c8mov x2, x1
000360ccb 0x360e0
000360d0
000360d0loc_360d0:
000360d0mov x2, x1
000360d4ldr x5, [sp+152]
000360d8ldr x0, [sp+96]
000360dcmov x1, x3
000360e0
000360e0loc_360e0:
000360e0ldr x3, [sp+64]
000360e4subs xzr, x3, x0
000360e8b.le 0x36104
000360ecscvtf d1, x0
000360f0adrp x27, 0x6da000
000360f4ldr d2, [x27+3192]
000360f8fmul d1, d2, d1
000360fcfcvtzs x0, d1
00036100b 0x36108
00036104
00036104loc_36104:
00036104mov x2, x1
00036108
00036108loc_36108:
00036108sub x1, x2, x4
0003610csub x2, x0, x3
00036110add x0, x5, 248
00036114add x3, x5, 256
00036118str x3, [sp+120]
0003611csubs xzr, x1, 1000
00036120movz x3, 1000
00036124csel x1, x3, x1, lt
00036128scvtf d1, x1
0003612cstr d1, [sp+80]
00036130subs xzr, x2, 0
00036134orr x1, xzr, 1
00036138csel x1, x1, x2, le
0003613cscvtf d2, x1
00036140str d2, [sp+72]
00036144fdiv d0, d1, d2
00036148bl internal/runtime/atomic.(*Float64).Store
0003614cldr d1, [sp+72]
00036150ldr d2, [sp+80]
00036154fdiv d0, d1, d2
00036158ldr x0, [sp+120]
0003615cbl internal/runtime/atomic.(*Float64).Store
00036160ldur x29, [sp-8]
00036164ldr x30, [sp], 144
00036168ret x30
0003616c
0003616cloc_3616c:
0003616cstr x0, [sp+8]
00036170mov x3, x30
00036174bl runtime.morestack_noctxt.abi0
00036178ldr x0, [sp+8]
0003617cb 0x35f50
00035f50
00035f50runtime.(*gcControllerState).revise: ; void runtime.(*gcControllerState).revise(runtime.gcControllerState * c)
00035f50ldr x16, [x28+16]
00035f54sub x17, sp, 16
00035f58subs xzr, x17, x16
00035f5cb.ls 0x3616c
00035f60str x30, [sp-144]!
00035f64stur x29, [sp-8]
00035f68sub x29, sp, 8
00035f6cstr x0, [sp+152]
00035f70ldrsb x27, [x0]
00035f74bl internal/runtime/atomic.(*Int32).Load
00035f78str w0, [sp+36]
00035f7cldr x1, [sp+152]
00035f80add x0, x1, 104
00035f84bl internal/runtime/atomic.(*Uint64).Load
00035f88str x0, [sp+64]
00035f8cldr x1, [sp+152]
00035f90add x0, x1, 112
00035f94bl internal/runtime/atomic.(*Uint64).Load
00035f98str x0, [sp+48]
00035f9cldr x1, [sp+152]
00035fa0add x0, x1, 160
00035fa4bl internal/runtime/atomic.(*Int64).Load
00035fa8str x0, [sp+112]
00035facldr x1, [sp+152]
00035fb0add x0, x1, 168
00035fb4bl internal/runtime/atomic.(*Int64).Load
00035fb8ldr x1, [sp+112]
00035fbcadd x1, x1, x0
00035fc0str x1, [sp+112]
00035fc4ldr x1, [sp+152]
00035fc8add x0, x1, 176
00035fccbl internal/runtime/atomic.(*Int64).Load
00035fd0str x0, [sp+104]
00035fd4ldr x0, [sp+152]
00035fd8bl runtime.(*gcControllerState).heapGoal
00035fdcstr x0, [sp+96]
00035fe0ldr x1, [sp+112]
00035fe4ldr x2, [sp+104]
00035fe8add x1, x1, x2
00035fecstr x1, [sp+40]
00035ff0ldr x1, [sp+152]
00035ff4add x0, x1, 128
00035ff8bl internal/runtime/atomic.(*Uint64).Load
00035ffcstr x0, [sp+88]
00036000ldr x1, [sp+152]
00036004add x0, x1, 144
00036008str x0, [sp+128]
0003600cbl internal/runtime/atomic.(*Uint64).Load
00036010ldr x1, [sp+152]
00036014ldr x2, [x1+120]
00036018ldr x3, [sp+88]
0003601cadd x2, x2, x3
00036020add x2, x0, x2
00036024str x2, [sp+88]
00036028add x0, x1, 136
0003602cbl internal/runtime/atomic.(*Uint64).Load
00036030str x0, [sp+56]
00036034ldr x0, [sp+128]
00036038bl internal/runtime/atomic.(*Uint64).Load
0003603cldr x1, [sp+56]
00036040ldr x2, [sp+48]
00036044add x1, x1, x2
00036048add x1, x0, x1
0003604cldrsw x2, [sp+36]
00036050subs wzr, w2, 0
00036054movz x3, 34464
00036058movk x3, 0x10000
0003605ccsel x2, x3, x2, lt
00036060ldr x3, [sp+88]
00036064ldr x4, [sp+40]
00036068subs xzr, x3, x4
0003606cb.ge 0x360d0
00036070ldr x5, [sp+152]
00036074ldr x6, [x5+88]
00036078ldr x7, [sp+96]
0003607csub x8, x7, x6
00036080scvtf d1, x8
00036084scvtf d2, x3
00036088fdiv d1, d1, d2
0003608cscvtf d2, x1
00036090fmul d1, d2, d1
00036094fcvtzs x3, d1
00036098add x3, x6, x3
0003609cscvtf d1, w2
000360a0adrp x27, 0x6da000
000360a4ldr d2, [x27+3208]
000360a8fdiv d1, d1, d2
000360acfmov d2
000360b0fadd d1, d2, d1
000360b4scvtf d2, x7
000360b8fmul d1, d2, d1
000360bcfcvtzs x6, d1
000360c0subs xzr, x6, x3
000360c4csel x0, x6, x3, lt
000360c8mov x2, x1
000360ccb 0x360e0
000360d0
000360d0loc_360d0:
000360d0mov x2, x1
000360d4ldr x5, [sp+152]
000360d8ldr x0, [sp+96]
000360dcmov x1, x3
000360e0
000360e0loc_360e0:
000360e0ldr x3, [sp+64]
000360e4subs xzr, x3, x0
000360e8b.le 0x36104
000360ecscvtf d1, x0
000360f0adrp x27, 0x6da000
000360f4ldr d2, [x27+3192]
000360f8fmul d1, d2, d1
000360fcfcvtzs x0, d1
00036100b 0x36108
00036104
00036104loc_36104:
00036104mov x2, x1
00036108
00036108loc_36108:
00036108sub x1, x2, x4
0003610csub x2, x0, x3
00036110add x0, x5, 248
00036114add x3, x5, 256
00036118str x3, [sp+120]
0003611csubs xzr, x1, 1000
00036120movz x3, 1000
00036124csel x1, x3, x1, lt
00036128scvtf d1, x1
0003612cstr d1, [sp+80]
00036130subs xzr, x2, 0
00036134orr x1, xzr, 1
00036138csel x1, x1, x2, le
0003613cscvtf d2, x1
00036140str d2, [sp+72]
00036144fdiv d0, d1, d2
00036148bl internal/runtime/atomic.(*Float64).Store
0003614cldr d1, [sp+72]
00036150ldr d2, [sp+80]
00036154fdiv d0, d1, d2
00036158ldr x0, [sp+120]
0003615cbl internal/runtime/atomic.(*Float64).Store
00036160ldur x29, [sp-8]
00036164ldr x30, [sp], 144
00036168ret x30
0003616c
0003616cloc_3616c:
0003616cstr x0, [sp+8]
00036170mov x3, x30
00036174bl runtime.morestack_noctxt.abi0
00036178ldr x0, [sp+8]
0003617cb 0x35f50
00035f50
00036180
00036180runtime.(*gcControllerState).endCycle: ; void runtime.(*gcControllerState).endCycle(runtime.gcControllerState * c, int64 now, int procs, bool userForced)
00036180ldr x16, [x28+16]
00036184sub x17, sp, 48
00036188subs xzr, x17, x16
0003618cb.ls 0x36540
00036190str x30, [sp-176]!
00036194stur x29, [sp-8]
00036198sub x29, sp, 8
0003619cstr x0, [sp+184]
000361a0str x1, [sp+192]
000361a4str x2, [sp+200]
000361a8bl runtime.(*gcControllerState).heapGoal
000361acadrp x27, 0xa16000
000361b0str x0, [x27+2592]
000361b4ldr x1, [sp+184]
000361b8ldr x2, [x1+224]
000361bcldr x3, [sp+192]
000361c0sub x2, x3, x2
000361c4str x2, [sp+80]
000361c8subs xzr, x2, 0
000361ccb.gt 0x361d8
000361d0fmov d0
000361d4b 0x36204
000361d8
000361d8loc_361d8:
000361d8add x0, x1, 192
000361dcbl internal/runtime/atomic.(*Int64).Load
000361e0scvtf d0, x0
000361e4ldr x1, [sp+80]
000361e8ldr x2, [sp+200]
000361ecmadd x3, x1, x2, xzr
000361f0scvtf d1, x3
000361f4fdiv d0, d0, d1
000361f8fmov d1
000361fcfadd d0, d0, d1
00036200ldr x1, [sp+184]
00036204
00036204loc_36204:
00036204str d0, [sp+40]
00036208add x0, x1, 104
0003620cstr x0, [sp+160]
00036210bl internal/runtime/atomic.(*Uint64).Load
00036214ldr x1, [sp+184]
00036218ldr x2, [x1+88]
0003621csubs xzr, x0, x2
00036220b.ls 0x362f8
00036224ldr x2, [sp+80]
00036228subs xzr, x2, 0
0003622cb.gt 0x36238
00036230fmov d0, xzr
00036234b 0x3625c
00036238
00036238loc_36238:
00036238add x0, x1, 216
0003623cbl internal/runtime/atomic.(*Int64).Load
00036240scvtf d0, x0
00036244ldr x1, [sp+80]
00036248ldr x2, [sp+200]
0003624cmadd x1, x1, x2, xzr
00036250scvtf d1, x1
00036254fdiv d0, d0, d1
00036258ldr x1, [sp+184]
0003625c
0003625cloc_3625c:
0003625cstr d0, [sp+64]
00036260add x0, x1, 160
00036264str x0, [sp+152]
00036268bl internal/runtime/atomic.(*Int64).Load
0003626cstr x0, [sp+128]
00036270ldr x1, [sp+184]
00036274add x0, x1, 168
00036278str x0, [sp+144]
0003627cbl internal/runtime/atomic.(*Int64).Load
00036280ldr x1, [sp+128]
00036284add x1, x1, x0
00036288str x1, [sp+128]
0003628cldr x1, [sp+184]
00036290add x0, x1, 176
00036294str x0, [sp+136]
00036298bl internal/runtime/atomic.(*Int64).Load
0003629cstr x0, [sp+120]
000362a0ldr x0, [sp+160]
000362a4bl internal/runtime/atomic.(*Uint64).Load
000362a8ldr x1, [sp+128]
000362acldr x2, [sp+120]
000362b0add x1, x1, x2
000362b4ldr x2, [sp+184]
000362b8ldr x3, [x2+88]
000362bcsub x3, x0, x3
000362c0ucvtf d0, x3
000362c4ldr d1, [sp+40]
000362c8ldr d2, [sp+64]
000362ccfadd d2, d1, d2
000362d0fmul d0, d0, d2
000362d4scvtf d2, x1
000362d8fmov d3
000362dcfsub d3, d3, d1
000362e0fmul d2, d3, d2
000362e4fdiv d0, d0, d2
000362e8ldr d2, [x2+32]
000362ecstr d0, [x2+32]
000362f0mov x0, xzr
000362f4b 0x36308
000362f8
000362f8loc_362f8:
000362f8ldur x29, [sp-8]
000362fcldr x30, [sp], 176
00036300ret x30
00036304
00036304loc_36304:
00036304add x0, x0, 1
00036308
00036308loc_36308:
00036308subs xzr, x0, 4
0003630cb.ge 0x3632c
00036310add x3, x2, 40
00036314ldr d3, [x3+3*x0]
00036318ldr d4, [x2+32]
0003631cfcmp d4, d3
00036320b.pl 0x36304
00036324str d3, [x2+32]
00036328b 0x36304
0003632c
0003632cloc_3632c:
0003632cstr d0, [sp+72]
00036330str d2, [sp+48]
00036334add x0, x2, 40
00036338add x1, x2, 48
0003633corr x2, xzr, 24
00036340bl runtime.memmove
00036344ldr x3, [sp+184]
00036348ldr d0, [sp+72]
0003634cstr d0, [x3+64]
00036350adrp x27, 0xa16000
00036354ldrsw x4, [x27+248]
00036358subs wzr, w4, 0
0003635cb.le 0x36534
00036360bl runtime.printlock
00036364bl runtime.printlock
00036368adrp x0, 0x67a000
0003636cadd x0, x0, 3465
00036370orr x1, xzr, 7
00036374bl runtime.printstring
00036378ldr d0, [sp+40]
0003637cadrp x27, 0x6da000
00036380ldr d1, [x27+3208]
00036384fmul d0, d0, d1
00036388fcvtzs x0, d0
0003638cbl runtime.printint
00036390adrp x0, 0x67a000
00036394add x0, x0, 3472
00036398orr x1, xzr, 7
0003639cbl runtime.printstring
000363a0movz x0, 25
000363a4bl runtime.printint
000363a8adrp x0, 0x67c000
000363acadd x0, x0, 1999
000363b0movz x1, 11
000363b4bl runtime.printstring
000363b8bl runtime.printunlock
000363bcldr x0, [sp+152]
000363c0bl internal/runtime/atomic.(*Int64).Load
000363c4str x0, [sp+128]
000363c8ldr x0, [sp+144]
000363ccbl internal/runtime/atomic.(*Int64).Load
000363d0str x0, [sp+120]
000363d4ldr x0, [sp+136]
000363d8bl internal/runtime/atomic.(*Int64).Load
000363dcstr x0, [sp+112]
000363e0ldr x0, [sp+184]
000363e4add x0, x0, 128
000363e8bl internal/runtime/atomic.(*Uint64).Load
000363ecstr x0, [sp+104]
000363f0ldr x0, [sp+184]
000363f4add x0, x0, 144
000363f8bl internal/runtime/atomic.(*Uint64).Load
000363fcstr x0, [sp+96]
00036400ldr x0, [sp+184]
00036404ldr x0, [x0+120]
00036408str x0, [sp+88]
0003640cbl runtime.printlock
00036410ldr x0, [sp+128]
00036414bl runtime.printint
00036418adrp x0, 0x6d9000
0003641cadd x0, x0, 696
00036420orr x1, xzr, 1
00036424bl runtime.printstring
00036428ldr x0, [sp+120]
0003642cbl runtime.printint
00036430adrp x0, 0x6d9000
00036434add x0, x0, 696
00036438orr x1, xzr, 1
0003643cbl runtime.printstring
00036440ldr x0, [sp+112]
00036444bl runtime.printint
00036448adrp x0, 0x67b000
0003644cadd x0, x0, 2848
00036450movz x1, 9
00036454bl runtime.printstring
00036458ldr x0, [sp+88]
0003645cldr x1, [sp+104]
00036460add x0, x0, x1
00036464ldr x1, [sp+96]
00036468add x0, x1, x0
0003646cbl runtime.printuint
00036470adrp x0, 0x67b000
00036474add x0, x0, 2857
00036478movz x1, 9
0003647cbl runtime.printstring
00036480bl runtime.printunlock
00036484ldr x0, [sp+160]
00036488bl internal/runtime/atomic.(*Uint64).Load
0003648cstr x0, [sp+56]
00036490ldr x0, [sp+184]
00036494ldr x1, [x0+88]
00036498str x1, [sp+104]
0003649cldr x0, [x0+96]
000364a0str x0, [sp+96]
000364a4bl runtime.printlock
000364a8adrp x0, 0x67a000
000364acadd x0, x0, 333
000364b0orr x1, xzr, 3
000364b4bl runtime.printstring
000364b8ldr x0, [sp+104]
000364bcbl runtime.printuint
000364c0adrp x0, 0x67a000
000364c4add x0, x0, 2419
000364c8orr x1, xzr, 6
000364ccbl runtime.printstring
000364d0ldr x0, [sp+56]
000364d4bl runtime.printuint
000364d8adrp x0, 0x67c000
000364dcadd x0, x0, 3868
000364e0orr x1, xzr, 12
000364e4bl runtime.printstring
000364e8ldr x0, [sp+56]
000364ecldr x1, [sp+96]
000364f0sub x0, x0, x1
000364f4bl runtime.printint
000364f8adrp x0, 0x67c000
000364fcadd x0, x0, 3880
00036500orr x1, xzr, 12
00036504bl runtime.printstring
00036508ldr d0, [sp+48]
0003650cbl runtime.printfloat
00036510adrp x0, 0x6d9000
00036514add x0, x0, 304
00036518orr x1, xzr, 1
0003651cbl runtime.printstring
00036520bl runtime.printunlock
00036524bl runtime.printlock
00036528bl runtime.printnl
0003652cbl runtime.printunlock
00036530bl runtime.printunlock
00036534
00036534loc_36534:
00036534ldur x29, [sp-8]
00036538ldr x30, [sp], 176
0003653cret x30
00036540
00036540loc_36540:
00036540stp x0, x1, [sp+8]
00036544str x2, [sp+24]
00036548strb w3, [sp+32]
0003654cmov x3, x30
00036550bl runtime.morestack_noctxt.abi0
00036554ldp x0, x1, [sp+8]
00036558ldr x2, [sp+24]
0003655cldrb w3, [sp+32]
00036560b 0x36180
00036564udf 0
00036568udf 0
0003656cudf 0
00036180
00036180runtime.(*gcControllerState).endCycle: ; void runtime.(*gcControllerState).endCycle(runtime.gcControllerState * c, int64 now, int procs, bool userForced)
00036180ldr x16, [x28+16]
00036184sub x17, sp, 48
00036188subs xzr, x17, x16
0003618cb.ls 0x36540
00036190str x30, [sp-176]!
00036194stur x29, [sp-8]
00036198sub x29, sp, 8
0003619cstr x0, [sp+184]
000361a0str x1, [sp+192]
000361a4str x2, [sp+200]
000361a8bl runtime.(*gcControllerState).heapGoal
000361acadrp x27, 0xa16000
000361b0str x0, [x27+2592]
000361b4ldr x1, [sp+184]
000361b8ldr x2, [x1+224]
000361bcldr x3, [sp+192]
000361c0sub x2, x3, x2
000361c4str x2, [sp+80]
000361c8subs xzr, x2, 0
000361ccb.gt 0x361d8
000361d0fmov d0
000361d4b 0x36204
000361d8
000361d8loc_361d8:
000361d8add x0, x1, 192
000361dcbl internal/runtime/atomic.(*Int64).Load
000361e0scvtf d0, x0
000361e4ldr x1, [sp+80]
000361e8ldr x2, [sp+200]
000361ecmadd x3, x1, x2, xzr
000361f0scvtf d1, x3
000361f4fdiv d0, d0, d1
000361f8fmov d1
000361fcfadd d0, d0, d1
00036200ldr x1, [sp+184]
00036204
00036204loc_36204:
00036204str d0, [sp+40]
00036208add x0, x1, 104
0003620cstr x0, [sp+160]
00036210bl internal/runtime/atomic.(*Uint64).Load
00036214ldr x1, [sp+184]
00036218ldr x2, [x1+88]
0003621csubs xzr, x0, x2
00036220b.ls 0x362f8
00036224ldr x2, [sp+80]
00036228subs xzr, x2, 0
0003622cb.gt 0x36238
00036230fmov d0, xzr
00036234b 0x3625c
00036238
00036238loc_36238:
00036238add x0, x1, 216
0003623cbl internal/runtime/atomic.(*Int64).Load
00036240scvtf d0, x0
00036244ldr x1, [sp+80]
00036248ldr x2, [sp+200]
0003624cmadd x1, x1, x2, xzr
00036250scvtf d1, x1
00036254fdiv d0, d0, d1
00036258ldr x1, [sp+184]
0003625c
0003625cloc_3625c:
0003625cstr d0, [sp+64]
00036260add x0, x1, 160
00036264str x0, [sp+152]
00036268bl internal/runtime/atomic.(*Int64).Load
0003626cstr x0, [sp+128]
00036270ldr x1, [sp+184]
00036274add x0, x1, 168
00036278str x0, [sp+144]
0003627cbl internal/runtime/atomic.(*Int64).Load
00036280ldr x1, [sp+128]
00036284add x1, x1, x0
00036288str x1, [sp+128]
0003628cldr x1, [sp+184]
00036290add x0, x1, 176
00036294str x0, [sp+136]
00036298bl internal/runtime/atomic.(*Int64).Load
0003629cstr x0, [sp+120]
000362a0ldr x0, [sp+160]
000362a4bl internal/runtime/atomic.(*Uint64).Load
000362a8ldr x1, [sp+128]
000362acldr x2, [sp+120]
000362b0add x1, x1, x2
000362b4ldr x2, [sp+184]
000362b8ldr x3, [x2+88]
000362bcsub x3, x0, x3
000362c0ucvtf d0, x3
000362c4ldr d1, [sp+40]
000362c8ldr d2, [sp+64]
000362ccfadd d2, d1, d2
000362d0fmul d0, d0, d2
000362d4scvtf d2, x1
000362d8fmov d3
000362dcfsub d3, d3, d1
000362e0fmul d2, d3, d2
000362e4fdiv d0, d0, d2
000362e8ldr d2, [x2+32]
000362ecstr d0, [x2+32]
000362f0mov x0, xzr
000362f4b 0x36308
000362f8
000362f8loc_362f8:
000362f8ldur x29, [sp-8]
000362fcldr x30, [sp], 176
00036300ret x30
00036304
00036304loc_36304:
00036304add x0, x0, 1
00036308
00036308loc_36308:
00036308subs xzr, x0, 4
0003630cb.ge 0x3632c
00036310add x3, x2, 40
00036314ldr d3, [x3+3*x0]
00036318ldr d4, [x2+32]
0003631cfcmp d4, d3
00036320b.pl 0x36304
00036324str d3, [x2+32]
00036328b 0x36304
0003632c
0003632cloc_3632c:
0003632cstr d0, [sp+72]
00036330str d2, [sp+48]
00036334add x0, x2, 40
00036338add x1, x2, 48
0003633corr x2, xzr, 24
00036340bl runtime.memmove
00036344ldr x3, [sp+184]
00036348ldr d0, [sp+72]
0003634cstr d0, [x3+64]
00036350adrp x27, 0xa16000
00036354ldrsw x4, [x27+248]
00036358subs wzr, w4, 0
0003635cb.le 0x36534
00036360bl runtime.printlock
00036364bl runtime.printlock
00036368adrp x0, 0x67a000
0003636cadd x0, x0, 3465
00036370orr x1, xzr, 7
00036374bl runtime.printstring
00036378ldr d0, [sp+40]
0003637cadrp x27, 0x6da000
00036380ldr d1, [x27+3208]
00036384fmul d0, d0, d1
00036388fcvtzs x0, d0
0003638cbl runtime.printint
00036390adrp x0, 0x67a000
00036394add x0, x0, 3472
00036398orr x1, xzr, 7
0003639cbl runtime.printstring
000363a0movz x0, 25
000363a4bl runtime.printint
000363a8adrp x0, 0x67c000
000363acadd x0, x0, 1999
000363b0movz x1, 11
000363b4bl runtime.printstring
000363b8bl runtime.printunlock
000363bcldr x0, [sp+152]
000363c0bl internal/runtime/atomic.(*Int64).Load
000363c4str x0, [sp+128]
000363c8ldr x0, [sp+144]
000363ccbl internal/runtime/atomic.(*Int64).Load
000363d0str x0, [sp+120]
000363d4ldr x0, [sp+136]
000363d8bl internal/runtime/atomic.(*Int64).Load
000363dcstr x0, [sp+112]
000363e0ldr x0, [sp+184]
000363e4add x0, x0, 128
000363e8bl internal/runtime/atomic.(*Uint64).Load
000363ecstr x0, [sp+104]
000363f0ldr x0, [sp+184]
000363f4add x0, x0, 144
000363f8bl internal/runtime/atomic.(*Uint64).Load
000363fcstr x0, [sp+96]
00036400ldr x0, [sp+184]
00036404ldr x0, [x0+120]
00036408str x0, [sp+88]
0003640cbl runtime.printlock
00036410ldr x0, [sp+128]
00036414bl runtime.printint
00036418adrp x0, 0x6d9000
0003641cadd x0, x0, 696
00036420orr x1, xzr, 1
00036424bl runtime.printstring
00036428ldr x0, [sp+120]
0003642cbl runtime.printint
00036430adrp x0, 0x6d9000
00036434add x0, x0, 696
00036438orr x1, xzr, 1
0003643cbl runtime.printstring
00036440ldr x0, [sp+112]
00036444bl runtime.printint
00036448adrp x0, 0x67b000
0003644cadd x0, x0, 2848
00036450movz x1, 9
00036454bl runtime.printstring
00036458ldr x0, [sp+88]
0003645cldr x1, [sp+104]
00036460add x0, x0, x1
00036464ldr x1, [sp+96]
00036468add x0, x1, x0
0003646cbl runtime.printuint
00036470adrp x0, 0x67b000
00036474add x0, x0, 2857
00036478movz x1, 9
0003647cbl runtime.printstring
00036480bl runtime.printunlock
00036484ldr x0, [sp+160]
00036488bl internal/runtime/atomic.(*Uint64).Load
0003648cstr x0, [sp+56]
00036490ldr x0, [sp+184]
00036494ldr x1, [x0+88]
00036498str x1, [sp+104]
0003649cldr x0, [x0+96]
000364a0str x0, [sp+96]
000364a4bl runtime.printlock
000364a8adrp x0, 0x67a000
000364acadd x0, x0, 333
000364b0orr x1, xzr, 3
000364b4bl runtime.printstring
000364b8ldr x0, [sp+104]
000364bcbl runtime.printuint
000364c0adrp x0, 0x67a000
000364c4add x0, x0, 2419
000364c8orr x1, xzr, 6
000364ccbl runtime.printstring
000364d0ldr x0, [sp+56]
000364d4bl runtime.printuint
000364d8adrp x0, 0x67c000
000364dcadd x0, x0, 3868
000364e0orr x1, xzr, 12
000364e4bl runtime.printstring
000364e8ldr x0, [sp+56]
000364ecldr x1, [sp+96]
000364f0sub x0, x0, x1
000364f4bl runtime.printint
000364f8adrp x0, 0x67c000
000364fcadd x0, x0, 3880
00036500orr x1, xzr, 12
00036504bl runtime.printstring
00036508ldr d0, [sp+48]
0003650cbl runtime.printfloat
00036510adrp x0, 0x6d9000
00036514add x0, x0, 304
00036518orr x1, xzr, 1
0003651cbl runtime.printstring
00036520bl runtime.printunlock
00036524bl runtime.printlock
00036528bl runtime.printnl
0003652cbl runtime.printunlock
00036530bl runtime.printunlock
00036534
00036534loc_36534:
00036534ldur x29, [sp-8]
00036538ldr x30, [sp], 176
0003653cret x30
00036540
00036540loc_36540:
00036540stp x0, x1, [sp+8]
00036544str x2, [sp+24]
00036548strb w3, [sp+32]
0003654cmov x3, x30
00036550bl runtime.morestack_noctxt.abi0
00036554ldp x0, x1, [sp+8]
00036558ldr x2, [sp+24]
0003655cldrb w3, [sp+32]
00036560b 0x36180
00036564udf 0
00036568udf 0
0003656cudf 0
00036180
00036570
00036570runtime.(*gcControllerState).enlistWorker: ; void runtime.(*gcControllerState).enlistWorker(runtime.gcControllerState * c)
00036570ldr x16, [x28+16]
00036574subs xzr, sp, x16
00036578b.ls 0x36690
0003657cstr x30, [sp-48]!
00036580stur x29, [sp-8]
00036584sub x29, sp, 8
00036588ldrsb x27, [x0]
0003658cadd x0, x0, 232
00036590bl internal/runtime/atomic.(*Int64).Load
00036594subs xzr, x0, 0
00036598b.le 0x365f0
0003659cadrp x27, 0xa15000
000365a0ldrsw x1, [x27+1648]
000365a4subs wzr, w1, 1
000365a8b.le 0x365e4
000365acmov x0, x28
000365b0cbz x0, 0x365d8
000365b4ldr x1, [x0+48]
000365b8cbz x1, 0x365d8
000365bcldr x0, [x1+208]
000365c0cbz x0, 0x365d8
000365c4bl runtime.puintptr.ptr
000365c8ldrsw x1, [x0]
000365ccstr w1, [sp+28]
000365d0mov x0, xzr
000365d4b 0x36604
000365d8
000365d8loc_365d8:
000365d8ldur x29, [sp-8]
000365dcldr x30, [sp], 48
000365e0ret x30
000365e4
000365e4loc_365e4:
000365e4ldur x29, [sp-8]
000365e8ldr x30, [sp], 48
000365ecret x30
000365f0
000365f0loc_365f0:
000365f0ldur x29, [sp-8]
000365f4ldr x30, [sp], 48
000365f8ret x30
000365fc
000365fcloc_365fc:
000365fcldr x2, [sp+32]
00036600add x0, x2, 1
00036604
00036604loc_36604:
00036604subs xzr, x0, 5
00036608b.ge 0x36678
0003660cstr x0, [sp+32]
00036610adrp x27, 0xa15000
00036614ldrsw x1, [x27+1648]
00036618sub x0, x1, 1
0003661cbl runtime.cheaprandn
00036620ldrsw x1, [sp+28]
00036624subs wzr, w0, w1
00036628b.lt 0x36630
0003662cadd x0, x0, 1
00036630
00036630loc_36630:
00036630sbfm x0, x0, 0, 31
00036634adrp x27, 0x9ec000
00036638ldr x2, [x27+3048]
0003663csubs xzr, x0, x2
00036640b.hs 0x36684
00036644adrp x27, 0x9ec000
00036648ldr x2, [x27+3040]
0003664cldr x0, [x2+3*x0]
00036650ldr w2, [x0+4]
00036654subs wzr, w2, 1
00036658b.ne 0x365fc
0003665cbl runtime.preemptone
00036660tbnz w0, 0, 0x3666c
00036664ldrsw x1, [sp+28]
00036668b 0x365fc
0003666c
0003666cloc_3666c:
0003666cldur x29, [sp-8]
00036670ldr x30, [sp], 48
00036674ret x30
00036678
00036678loc_36678:
00036678ldur x29, [sp-8]
0003667cldr x30, [sp], 48
00036680ret x30
00036684
00036684loc_36684:
00036684mov x1, x2
00036688bl runtime.panicIndex
0003668chint
00036690
00036690loc_36690:
00036690str x0, [sp+8]
00036694mov x3, x30
00036698bl runtime.morestack_noctxt.abi0
0003669cldr x0, [sp+8]
000366a0b 0x36570
000366a4udf 0
000366a8udf 0
000366acudf 0
00036570
00036570runtime.(*gcControllerState).enlistWorker: ; void runtime.(*gcControllerState).enlistWorker(runtime.gcControllerState * c)
00036570ldr x16, [x28+16]
00036574subs xzr, sp, x16
00036578b.ls 0x36690
0003657cstr x30, [sp-48]!
00036580stur x29, [sp-8]
00036584sub x29, sp, 8
00036588ldrsb x27, [x0]
0003658cadd x0, x0, 232
00036590bl internal/runtime/atomic.(*Int64).Load
00036594subs xzr, x0, 0
00036598b.le 0x365f0
0003659cadrp x27, 0xa15000
000365a0ldrsw x1, [x27+1648]
000365a4subs wzr, w1, 1
000365a8b.le 0x365e4
000365acmov x0, x28
000365b0cbz x0, 0x365d8
000365b4ldr x1, [x0+48]
000365b8cbz x1, 0x365d8
000365bcldr x0, [x1+208]
000365c0cbz x0, 0x365d8
000365c4bl runtime.puintptr.ptr
000365c8ldrsw x1, [x0]
000365ccstr w1, [sp+28]
000365d0mov x0, xzr
000365d4b 0x36604
000365d8
000365d8loc_365d8:
000365d8ldur x29, [sp-8]
000365dcldr x30, [sp], 48
000365e0ret x30
000365e4
000365e4loc_365e4:
000365e4ldur x29, [sp-8]
000365e8ldr x30, [sp], 48
000365ecret x30
000365f0
000365f0loc_365f0:
000365f0ldur x29, [sp-8]
000365f4ldr x30, [sp], 48
000365f8ret x30
000365fc
000365fcloc_365fc:
000365fcldr x2, [sp+32]
00036600add x0, x2, 1
00036604
00036604loc_36604:
00036604subs xzr, x0, 5
00036608b.ge 0x36678
0003660cstr x0, [sp+32]
00036610adrp x27, 0xa15000
00036614ldrsw x1, [x27+1648]
00036618sub x0, x1, 1
0003661cbl runtime.cheaprandn
00036620ldrsw x1, [sp+28]
00036624subs wzr, w0, w1
00036628b.lt 0x36630
0003662cadd x0, x0, 1
00036630
00036630loc_36630:
00036630sbfm x0, x0, 0, 31
00036634adrp x27, 0x9ec000
00036638ldr x2, [x27+3048]
0003663csubs xzr, x0, x2
00036640b.hs 0x36684
00036644adrp x27, 0x9ec000
00036648ldr x2, [x27+3040]
0003664cldr x0, [x2+3*x0]
00036650ldr w2, [x0+4]
00036654subs wzr, w2, 1
00036658b.ne 0x365fc
0003665cbl runtime.preemptone
00036660tbnz w0, 0, 0x3666c
00036664ldrsw x1, [sp+28]
00036668b 0x365fc
0003666c
0003666cloc_3666c:
0003666cldur x29, [sp-8]
00036670ldr x30, [sp], 48
00036674ret x30
00036678
00036678loc_36678:
00036678ldur x29, [sp-8]
0003667cldr x30, [sp], 48
00036680ret x30
00036684
00036684loc_36684:
00036684mov x1, x2
00036688bl runtime.panicIndex
0003668chint
00036690
00036690loc_36690:
00036690str x0, [sp+8]
00036694mov x3, x30
00036698bl runtime.morestack_noctxt.abi0
0003669cldr x0, [sp+8]
000366a0b 0x36570
000366a4udf 0
000366a8udf 0
000366acudf 0
00036570
000366b0
000366b0runtime.(*gcControllerState).findRunnableGCWorker: ; void runtime.(*gcControllerState).findRunnableGCWorker(runtime.gcControllerState * c, runtime.p * pp, int64 now)
000366b0ldr x16, [x28+16]
000366b4subs xzr, sp, x16
000366b8b.ls 0x368e8
000366bcstr x30, [sp-96]!
000366c0stur x29, [sp-8]
000366c4sub x29, sp, 8
000366c8adrp x27, 0xa15000
000366ccldr w3, [x27+1604]
000366d0cbz w3, 0x368d4
000366d4str x0, [sp+104]
000366d8str x1, [sp+112]
000366dccbnz x2, 0x366e8
000366e0bl runtime.nanotime
000366e4mov x2, x0
000366e8
000366e8loc_366e8:
000366e8str x2, [sp+48]
000366ecadrp x0, 0xa15000
000366f0add x0, x0, 4032
000366f4mov x1, x2
000366f8bl runtime.(*gcCPULimiterState).needUpdate
000366fctbz w0, 0, 0x36710
00036700adrp x0, 0xa15000
00036704add x0, x0, 4032
00036708ldr x1, [sp+48]
0003670cbl runtime.(*gcCPULimiterState).update
00036710
00036710loc_36710:
00036710ldr x0, [sp+112]
00036714bl runtime.gcMarkWorkAvailable
00036718tbz w0, 0, 0x368c0
0003671cldr x1, [sp+104]
00036720ldrsb x27, [x1]
00036724add x0, x1, 232
00036728str x0, [sp+80]
0003672cbl internal/runtime/atomic.(*Int64).Load
00036730subs xzr, x0, 0
00036734b.gt 0x3675c
00036738ldr x2, [sp+104]
0003673cldr d0, [x2+264]
00036740fcmp d0
00036744b.ne 0x3675c
00036748mov x0, xzr
0003674cldr x1, [sp+48]
00036750ldur x29, [sp-8]
00036754ldr x30, [sp], 96
00036758ret x30
0003675c
0003675cloc_3675c:
0003675cadrp x0, 0xa15000
00036760add x0, x0, 2032
00036764bl runtime.(*lfstack).pop
00036768cbz x0, 0x368ac
0003676cstr x0, [sp+72]
00036770adrp x27, 0x6a2000
00036774ldr x1, [x27+1568]
00036778ldr x0, [sp+80]
0003677cadrp x26, 0x6a2000
00036780add x26, x26, 1568
00036784blr x1
00036788tbz w0, 0, 0x367a0
0003678cldr x1, [sp+112]
00036790ldrsb x27, [x1]
00036794orr x2, xzr, 1
00036798str x2, [x1+4664]
0003679cb 0x36818
000367a0
000367a0loc_367a0:
000367a0ldr x2, [sp+104]
000367a4ldr d0, [x2+264]
000367a8fcmp d0
000367acb.eq 0x36888
000367b0ldr x2, [x2+224]
000367b4ldr x3, [sp+48]
000367b8sub x2, x3, x2
000367bcsubs xzr, x2, 0
000367c0b.le 0x36808
000367c4ldr x4, [sp+112]
000367c8ldrsb x27, [x4]
000367ccldr x5, [x4+4648]
000367d0scvtf d1, x5
000367d4scvtf d2, x2
000367d8fdiv d1, d1, d2
000367dcfcmp d0, d1
000367e0b.pl 0x3680c
000367e4adrp x0, 0xa15000
000367e8add x0, x0, 2032
000367ecldr x1, [sp+72]
000367f0bl runtime.(*lfstack).push
000367f4mov x0, xzr
000367f8ldr x1, [sp+48]
000367fcldur x29, [sp-8]
00036800ldr x30, [sp], 96
00036804ret x30
00036808
00036808loc_36808:
00036808ldr x4, [sp+112]
0003680c
0003680cloc_3680c:
0003680cldrsb x27, [x4]
00036810orr x1, xzr, 2
00036814str x1, [x4+4664]
00036818
00036818loc_36818:
00036818ldr x1, [sp+72]
0003681cldr x0, [x1+16]
00036820bl runtime.guintptr.ptr
00036824str x0, [sp+56]
00036828bl runtime.traceAcquire
0003682cstr x0, [sp+64]
00036830str x1, [sp+40]
00036834ldr x0, [sp+56]
00036838orr x1, xzr, 4
0003683corr x2, xzr, 1
00036840bl runtime.casgstatus
00036844ldr x0, [sp+64]
00036848ldr x1, [sp+40]
0003684cbl runtime.traceLocker.ok
00036850tbz w0, 0, 0x36874
00036854ldr x0, [sp+64]
00036858ldr x1, [sp+40]
0003685cldr x2, [sp+56]
00036860mov x3, xzr
00036864bl runtime.traceLocker.GoUnpark
00036868ldr x0, [sp+64]
0003686cldr x1, [sp+40]
00036870bl runtime.traceRelease
00036874
00036874loc_36874:
00036874ldr x0, [sp+56]
00036878ldr x1, [sp+48]
0003687cldur x29, [sp-8]
00036880ldr x30, [sp], 96
00036884ret x30
00036888
00036888loc_36888:
00036888adrp x0, 0xa15000
0003688cadd x0, x0, 2032
00036890ldr x1, [sp+72]
00036894bl runtime.(*lfstack).push
00036898mov x0, xzr
0003689cldr x1, [sp+48]
000368a0ldur x29, [sp-8]
000368a4ldr x30, [sp], 96
000368a8ret x30
000368ac
000368acloc_368ac:
000368acmov x0, xzr
000368b0ldr x1, [sp+48]
000368b4ldur x29, [sp-8]
000368b8ldr x30, [sp], 96
000368bcret x30
000368c0
000368c0loc_368c0:
000368c0mov x0, xzr
000368c4ldr x1, [sp+48]
000368c8ldur x29, [sp-8]
000368ccldr x30, [sp], 96
000368d0ret x30
000368d4
000368d4loc_368d4:
000368d4adrp x0, 0x694000
000368d8add x0, x0, 2068
000368dcmovz x1, 54
000368e0bl runtime.throw
000368e4hint
000368e8
000368e8loc_368e8:
000368e8stp x0, x1, [sp+8]
000368ecstr x2, [sp+24]
000368f0mov x3, x30
000368f4bl runtime.morestack_noctxt.abi0
000368f8ldp x0, x1, [sp+8]
000368fcldr x2, [sp+24]
00036900b 0x366b0
00036904udf 0
00036908udf 0
0003690cudf 0
000366b0
000366b0runtime.(*gcControllerState).findRunnableGCWorker: ; void runtime.(*gcControllerState).findRunnableGCWorker(runtime.gcControllerState * c, runtime.p * pp, int64 now)
000366b0ldr x16, [x28+16]
000366b4subs xzr, sp, x16
000366b8b.ls 0x368e8
000366bcstr x30, [sp-96]!
000366c0stur x29, [sp-8]
000366c4sub x29, sp, 8
000366c8adrp x27, 0xa15000
000366ccldr w3, [x27+1604]
000366d0cbz w3, 0x368d4
000366d4str x0, [sp+104]
000366d8str x1, [sp+112]
000366dccbnz x2, 0x366e8
000366e0bl runtime.nanotime
000366e4mov x2, x0
000366e8
000366e8loc_366e8:
000366e8str x2, [sp+48]
000366ecadrp x0, 0xa15000
000366f0add x0, x0, 4032
000366f4mov x1, x2
000366f8bl runtime.(*gcCPULimiterState).needUpdate
000366fctbz w0, 0, 0x36710
00036700adrp x0, 0xa15000
00036704add x0, x0, 4032
00036708ldr x1, [sp+48]
0003670cbl runtime.(*gcCPULimiterState).update
00036710
00036710loc_36710:
00036710ldr x0, [sp+112]
00036714bl runtime.gcMarkWorkAvailable
00036718tbz w0, 0, 0x368c0
0003671cldr x1, [sp+104]
00036720ldrsb x27, [x1]
00036724add x0, x1, 232
00036728str x0, [sp+80]
0003672cbl internal/runtime/atomic.(*Int64).Load
00036730subs xzr, x0, 0
00036734b.gt 0x3675c
00036738ldr x2, [sp+104]
0003673cldr d0, [x2+264]
00036740fcmp d0
00036744b.ne 0x3675c
00036748mov x0, xzr
0003674cldr x1, [sp+48]
00036750ldur x29, [sp-8]
00036754ldr x30, [sp], 96
00036758ret x30
0003675c
0003675cloc_3675c:
0003675cadrp x0, 0xa15000
00036760add x0, x0, 2032
00036764bl runtime.(*lfstack).pop
00036768cbz x0, 0x368ac
0003676cstr x0, [sp+72]
00036770adrp x27, 0x6a2000
00036774ldr x1, [x27+1568]
00036778ldr x0, [sp+80]
0003677cadrp x26, 0x6a2000
00036780add x26, x26, 1568
00036784blr x1
00036788tbz w0, 0, 0x367a0
0003678cldr x1, [sp+112]
00036790ldrsb x27, [x1]
00036794orr x2, xzr, 1
00036798str x2, [x1+4664]
0003679cb 0x36818
000367a0
000367a0loc_367a0:
000367a0ldr x2, [sp+104]
000367a4ldr d0, [x2+264]
000367a8fcmp d0
000367acb.eq 0x36888
000367b0ldr x2, [x2+224]
000367b4ldr x3, [sp+48]
000367b8sub x2, x3, x2
000367bcsubs xzr, x2, 0
000367c0b.le 0x36808
000367c4ldr x4, [sp+112]
000367c8ldrsb x27, [x4]
000367ccldr x5, [x4+4648]
000367d0scvtf d1, x5
000367d4scvtf d2, x2
000367d8fdiv d1, d1, d2
000367dcfcmp d0, d1
000367e0b.pl 0x3680c
000367e4adrp x0, 0xa15000
000367e8add x0, x0, 2032
000367ecldr x1, [sp+72]
000367f0bl runtime.(*lfstack).push
000367f4mov x0, xzr
000367f8ldr x1, [sp+48]
000367fcldur x29, [sp-8]
00036800ldr x30, [sp], 96
00036804ret x30
00036808
00036808loc_36808:
00036808ldr x4, [sp+112]
0003680c
0003680cloc_3680c:
0003680cldrsb x27, [x4]
00036810orr x1, xzr, 2
00036814str x1, [x4+4664]
00036818
00036818loc_36818:
00036818ldr x1, [sp+72]
0003681cldr x0, [x1+16]
00036820bl runtime.guintptr.ptr
00036824str x0, [sp+56]
00036828bl runtime.traceAcquire
0003682cstr x0, [sp+64]
00036830str x1, [sp+40]
00036834ldr x0, [sp+56]
00036838orr x1, xzr, 4
0003683corr x2, xzr, 1
00036840bl runtime.casgstatus
00036844ldr x0, [sp+64]
00036848ldr x1, [sp+40]
0003684cbl runtime.traceLocker.ok
00036850tbz w0, 0, 0x36874
00036854ldr x0, [sp+64]
00036858ldr x1, [sp+40]
0003685cldr x2, [sp+56]
00036860mov x3, xzr
00036864bl runtime.traceLocker.GoUnpark
00036868ldr x0, [sp+64]
0003686cldr x1, [sp+40]
00036870bl runtime.traceRelease
00036874
00036874loc_36874:
00036874ldr x0, [sp+56]
00036878ldr x1, [sp+48]
0003687cldur x29, [sp-8]
00036880ldr x30, [sp], 96
00036884ret x30
00036888
00036888loc_36888:
00036888adrp x0, 0xa15000
0003688cadd x0, x0, 2032
00036890ldr x1, [sp+72]
00036894bl runtime.(*lfstack).push
00036898mov x0, xzr
0003689cldr x1, [sp+48]
000368a0ldur x29, [sp-8]
000368a4ldr x30, [sp], 96
000368a8ret x30
000368ac
000368acloc_368ac:
000368acmov x0, xzr
000368b0ldr x1, [sp+48]
000368b4ldur x29, [sp-8]
000368b8ldr x30, [sp], 96
000368bcret x30
000368c0
000368c0loc_368c0:
000368c0mov x0, xzr
000368c4ldr x1, [sp+48]
000368c8ldur x29, [sp-8]
000368ccldr x30, [sp], 96
000368d0ret x30
000368d4
000368d4loc_368d4:
000368d4adrp x0, 0x694000
000368d8add x0, x0, 2068
000368dcmovz x1, 54
000368e0bl runtime.throw
000368e4hint
000368e8
000368e8loc_368e8:
000368e8stp x0, x1, [sp+8]
000368ecstr x2, [sp+24]
000368f0mov x3, x30
000368f4bl runtime.morestack_noctxt.abi0
000368f8ldp x0, x1, [sp+8]
000368fcldr x2, [sp+24]
00036900b 0x366b0
00036904udf 0
00036908udf 0
0003690cudf 0
000366b0
00036910
00036910runtime.(*gcControllerState).resetLive: ; void runtime.(*gcControllerState).resetLive(runtime.gcControllerState * c, uint64 bytesMarked)
00036910ldr x16, [x28+16]
00036914subs xzr, sp, x16
00036918b.ls 0x369d4
0003691cstr x30, [sp-80]!
00036920stur x29, [sp-8]
00036924sub x29, sp, 8
00036928str x0, [sp+88]
0003692cstr x1, [sp+96]
00036930str x1, [x0+152]
00036934add x0, x0, 104
00036938bl internal/runtime/atomic.(*Uint64).Store
0003693cldr x2, [sp+88]
00036940add x3, x2, 112
00036944str x3, [sp+64]
00036948add x0, x2, 160
0003694cstr x0, [sp+56]
00036950bl internal/runtime/atomic.(*Int64).Load
00036954mov x1, x0
00036958ldr x0, [sp+64]
0003695cbl internal/runtime/atomic.(*Uint64).Store
00036960ldr x0, [sp+56]
00036964bl internal/runtime/atomic.(*Int64).Load
00036968ldr x2, [sp+88]
0003696cstr x0, [x2+120]
00036970add x3, x2, 128
00036974str x3, [sp+64]
00036978add x0, x2, 168
0003697cbl internal/runtime/atomic.(*Int64).Load
00036980mov x1, x0
00036984ldr x0, [sp+64]
00036988bl internal/runtime/atomic.(*Uint64).Store
0003698cmovn x2, 0
00036990ldr x3, [sp+88]
00036994str x2, [x3+88]
00036998bl runtime.traceAcquire
0003699cstr x0, [sp+48]
000369a0str x1, [sp+40]
000369a4bl runtime.traceLocker.ok
000369a8tbz w0, 0, 0x369c8
000369acldr x0, [sp+48]
000369b0ldr x1, [sp+40]
000369b4ldr x2, [sp+96]
000369b8bl runtime.traceLocker.HeapAlloc
000369bcldr x0, [sp+48]
000369c0ldr x1, [sp+40]
000369c4bl runtime.traceRelease
000369c8
000369c8loc_369c8:
000369c8ldur x29, [sp-8]
000369ccldr x30, [sp], 80
000369d0ret x30
000369d4
000369d4loc_369d4:
000369d4stp x0, x1, [sp+8]
000369d8mov x3, x30
000369dcbl runtime.morestack_noctxt.abi0
000369e0ldp x0, x1, [sp+8]
000369e4b 0x36910
000369e8udf 0
000369ecudf 0
00036910
00036910runtime.(*gcControllerState).resetLive: ; void runtime.(*gcControllerState).resetLive(runtime.gcControllerState * c, uint64 bytesMarked)
00036910ldr x16, [x28+16]
00036914subs xzr, sp, x16
00036918b.ls 0x369d4
0003691cstr x30, [sp-80]!
00036920stur x29, [sp-8]
00036924sub x29, sp, 8
00036928str x0, [sp+88]
0003692cstr x1, [sp+96]
00036930str x1, [x0+152]
00036934add x0, x0, 104
00036938bl internal/runtime/atomic.(*Uint64).Store
0003693cldr x2, [sp+88]
00036940add x3, x2, 112
00036944str x3, [sp+64]
00036948add x0, x2, 160
0003694cstr x0, [sp+56]
00036950bl internal/runtime/atomic.(*Int64).Load
00036954mov x1, x0
00036958ldr x0, [sp+64]
0003695cbl internal/runtime/atomic.(*Uint64).Store
00036960ldr x0, [sp+56]
00036964bl internal/runtime/atomic.(*Int64).Load
00036968ldr x2, [sp+88]
0003696cstr x0, [x2+120]
00036970add x3, x2, 128
00036974str x3, [sp+64]
00036978add x0, x2, 168
0003697cbl internal/runtime/atomic.(*Int64).Load
00036980mov x1, x0
00036984ldr x0, [sp+64]
00036988bl internal/runtime/atomic.(*Uint64).Store
0003698cmovn x2, 0
00036990ldr x3, [sp+88]
00036994str x2, [x3+88]
00036998bl runtime.traceAcquire
0003699cstr x0, [sp+48]
000369a0str x1, [sp+40]
000369a4bl runtime.traceLocker.ok
000369a8tbz w0, 0, 0x369c8
000369acldr x0, [sp+48]
000369b0ldr x1, [sp+40]
000369b4ldr x2, [sp+96]
000369b8bl runtime.traceLocker.HeapAlloc
000369bcldr x0, [sp+48]
000369c0ldr x1, [sp+40]
000369c4bl runtime.traceRelease
000369c8
000369c8loc_369c8:
000369c8ldur x29, [sp-8]
000369ccldr x30, [sp], 80
000369d0ret x30
000369d4
000369d4loc_369d4:
000369d4stp x0, x1, [sp+8]
000369d8mov x3, x30
000369dcbl runtime.morestack_noctxt.abi0
000369e0ldp x0, x1, [sp+8]
000369e4b 0x36910
000369e8udf 0
000369ecudf 0
00036910
000369f0
000369f0runtime.(*gcControllerState).markWorkerStop: ; void runtime.(*gcControllerState).markWorkerStop(runtime.gcControllerState * c, runtime.gcMarkWorkerMode mode, int64 duration)
000369f0ldr x16, [x28+16]
000369f4subs xzr, sp, x16
000369f8b.ls 0x36a94
000369fcstr x30, [sp-32]!
00036a00stur x29, [sp-8]
00036a04sub x29, sp, 8
00036a08str x0, [sp+40]
00036a0csubs xzr, x1, 1
00036a10b.eq 0x36a54
00036a14subs xzr, x1, 2
00036a18b.eq 0x36a40
00036a1csubs xzr, x1, 3
00036a20b.ne 0x36a80
00036a24ldrsb x27, [x0]
00036a28add x0, x0, 216
00036a2cmov x1, x2
00036a30bl internal/runtime/atomic.(*Int64).Add
00036a34ldr x0, [sp+40]
00036a38bl runtime.(*gcControllerState).removeIdleMarkWorker
00036a3cb 0x36a74
00036a40
00036a40loc_36a40:
00036a40ldrsb x27, [x0]
00036a44add x0, x0, 208
00036a48mov x1, x2
00036a4cbl internal/runtime/atomic.(*Int64).Add
00036a50b 0x36a74
00036a54
00036a54loc_36a54:
00036a54ldrsb x27, [x0]
00036a58add x0, x0, 200
00036a5cmov x1, x2
00036a60bl internal/runtime/atomic.(*Int64).Add
00036a64ldr x2, [sp+40]
00036a68add x0, x2, 232
00036a6corr x1, xzr, 1
00036a70bl internal/runtime/atomic.(*Int64).Add
00036a74
00036a74loc_36a74:
00036a74ldur x29, [sp-8]
00036a78ldr x30, [sp], 32
00036a7cret x30
00036a80
00036a80loc_36a80:
00036a80adrp x0, 0x68e000
00036a84add x0, x0, 59
00036a88movz x1, 40
00036a8cbl runtime.throw
00036a90hint
00036a94
00036a94loc_36a94:
00036a94stp x0, x1, [sp+8]
00036a98str x2, [sp+24]
00036a9cmov x3, x30
00036aa0bl runtime.morestack_noctxt.abi0
00036aa4ldp x0, x1, [sp+8]
00036aa8ldr x2, [sp+24]
00036aacb 0x369f0
000369f0
000369f0runtime.(*gcControllerState).markWorkerStop: ; void runtime.(*gcControllerState).markWorkerStop(runtime.gcControllerState * c, runtime.gcMarkWorkerMode mode, int64 duration)
000369f0ldr x16, [x28+16]
000369f4subs xzr, sp, x16
000369f8b.ls 0x36a94
000369fcstr x30, [sp-32]!
00036a00stur x29, [sp-8]
00036a04sub x29, sp, 8
00036a08str x0, [sp+40]
00036a0csubs xzr, x1, 1
00036a10b.eq 0x36a54
00036a14subs xzr, x1, 2
00036a18b.eq 0x36a40
00036a1csubs xzr, x1, 3
00036a20b.ne 0x36a80
00036a24ldrsb x27, [x0]
00036a28add x0, x0, 216
00036a2cmov x1, x2
00036a30bl internal/runtime/atomic.(*Int64).Add
00036a34ldr x0, [sp+40]
00036a38bl runtime.(*gcControllerState).removeIdleMarkWorker
00036a3cb 0x36a74
00036a40
00036a40loc_36a40:
00036a40ldrsb x27, [x0]
00036a44add x0, x0, 208
00036a48mov x1, x2
00036a4cbl internal/runtime/atomic.(*Int64).Add
00036a50b 0x36a74
00036a54
00036a54loc_36a54:
00036a54ldrsb x27, [x0]
00036a58add x0, x0, 200
00036a5cmov x1, x2
00036a60bl internal/runtime/atomic.(*Int64).Add
00036a64ldr x2, [sp+40]
00036a68add x0, x2, 232
00036a6corr x1, xzr, 1
00036a70bl internal/runtime/atomic.(*Int64).Add
00036a74
00036a74loc_36a74:
00036a74ldur x29, [sp-8]
00036a78ldr x30, [sp], 32
00036a7cret x30
00036a80
00036a80loc_36a80:
00036a80adrp x0, 0x68e000
00036a84add x0, x0, 59
00036a88movz x1, 40
00036a8cbl runtime.throw
00036a90hint
00036a94
00036a94loc_36a94:
00036a94stp x0, x1, [sp+8]
00036a98str x2, [sp+24]
00036a9cmov x3, x30
00036aa0bl runtime.morestack_noctxt.abi0
00036aa4ldp x0, x1, [sp+8]
00036aa8ldr x2, [sp+24]
00036aacb 0x369f0
000369f0
00036ab0
00036ab0runtime.(*gcControllerState).update: ; void runtime.(*gcControllerState).update(runtime.gcControllerState * c, int64 dHeapLive, int64 dHeapScan)
00036ab0ldr x16, [x28+16]
00036ab4subs xzr, sp, x16
00036ab8b.ls 0x36b60
00036abcstr x30, [sp-64]!
00036ac0stur x29, [sp-8]
00036ac4sub x29, sp, 8
00036ac8cbz x1, 0x36b2c
00036accstr x0, [sp+72]
00036ad0str x1, [sp+80]
00036ad4str x2, [sp+88]
00036ad8bl runtime.traceAcquire
00036adcstr x0, [sp+48]
00036ae0str x1, [sp+40]
00036ae4adrp x0, 0xa16000
00036ae8add x0, x0, 2600
00036aecldr x1, [sp+80]
00036af0bl internal/runtime/atomic.(*Uint64).Add
00036af4str x0, [sp+32]
00036af8ldr x0, [sp+48]
00036afcldr x1, [sp+40]
00036b00bl runtime.traceLocker.ok
00036b04tbz w0, 0, 0x36b24
00036b08ldr x0, [sp+48]
00036b0cldr x1, [sp+40]
00036b10ldr x2, [sp+32]
00036b14bl runtime.traceLocker.HeapAlloc
00036b18ldr x0, [sp+48]
00036b1cldr x1, [sp+40]
00036b20bl runtime.traceRelease
00036b24
00036b24loc_36b24:
00036b24ldr x0, [sp+72]
00036b28ldr x2, [sp+88]
00036b2c
00036b2cloc_36b2c:
00036b2cadrp x27, 0xa15000
00036b30ldr w3, [x27+1604]
00036b34cbnz w3, 0x36b50
00036b38cbz x2, 0x36b54
00036b3cadrp x0, 0xa16000
00036b40add x0, x0, 2608
00036b44mov x1, x2
00036b48bl internal/runtime/atomic.(*Uint64).Add
00036b4cb 0x36b54
00036b50
00036b50loc_36b50:
00036b50bl runtime.(*gcControllerState).revise
00036b54
00036b54loc_36b54:
00036b54ldur x29, [sp-8]
00036b58ldr x30, [sp], 64
00036b5cret x30
00036b60
00036b60loc_36b60:
00036b60stp x0, x1, [sp+8]
00036b64str x2, [sp+24]
00036b68mov x3, x30
00036b6cbl runtime.morestack_noctxt.abi0
00036b70ldp x0, x1, [sp+8]
00036b74ldr x2, [sp+24]
00036b78b 0x36ab0
00036b7cudf 0
00036ab0
00036ab0runtime.(*gcControllerState).update: ; void runtime.(*gcControllerState).update(runtime.gcControllerState * c, int64 dHeapLive, int64 dHeapScan)
00036ab0ldr x16, [x28+16]
00036ab4subs xzr, sp, x16
00036ab8b.ls 0x36b60
00036abcstr x30, [sp-64]!
00036ac0stur x29, [sp-8]
00036ac4sub x29, sp, 8
00036ac8cbz x1, 0x36b2c
00036accstr x0, [sp+72]
00036ad0str x1, [sp+80]
00036ad4str x2, [sp+88]
00036ad8bl runtime.traceAcquire
00036adcstr x0, [sp+48]
00036ae0str x1, [sp+40]
00036ae4adrp x0, 0xa16000
00036ae8add x0, x0, 2600
00036aecldr x1, [sp+80]
00036af0bl internal/runtime/atomic.(*Uint64).Add
00036af4str x0, [sp+32]
00036af8ldr x0, [sp+48]
00036afcldr x1, [sp+40]
00036b00bl runtime.traceLocker.ok
00036b04tbz w0, 0, 0x36b24
00036b08ldr x0, [sp+48]
00036b0cldr x1, [sp+40]
00036b10ldr x2, [sp+32]
00036b14bl runtime.traceLocker.HeapAlloc
00036b18ldr x0, [sp+48]
00036b1cldr x1, [sp+40]
00036b20bl runtime.traceRelease
00036b24
00036b24loc_36b24:
00036b24ldr x0, [sp+72]
00036b28ldr x2, [sp+88]
00036b2c
00036b2cloc_36b2c:
00036b2cadrp x27, 0xa15000
00036b30ldr w3, [x27+1604]
00036b34cbnz w3, 0x36b50
00036b38cbz x2, 0x36b54
00036b3cadrp x0, 0xa16000
00036b40add x0, x0, 2608
00036b44mov x1, x2
00036b48bl internal/runtime/atomic.(*Uint64).Add
00036b4cb 0x36b54
00036b50
00036b50loc_36b50:
00036b50bl runtime.(*gcControllerState).revise
00036b54
00036b54loc_36b54:
00036b54ldur x29, [sp-8]
00036b58ldr x30, [sp], 64
00036b5cret x30
00036b60
00036b60loc_36b60:
00036b60stp x0, x1, [sp+8]
00036b64str x2, [sp+24]
00036b68mov x3, x30
00036b6cbl runtime.morestack_noctxt.abi0
00036b70ldp x0, x1, [sp+8]
00036b74ldr x2, [sp+24]
00036b78b 0x36ab0
00036b7cudf 0
00036ab0
00036b80
00036b80runtime.(*gcControllerState).addScannableStack: ; void runtime.(*gcControllerState).addScannableStack(runtime.gcControllerState * c, runtime.p * pp, int64 amount)
00036b80ldr x16, [x28+16]
00036b84subs xzr, sp, x16
00036b88b.ls 0x36c00
00036b8cstr x30, [sp-32]!
00036b90stur x29, [sp-8]
00036b94sub x29, sp, 8
00036b98cbz x1, 0x36be4
00036b9cldr x3, [x1+8912]
00036ba0add x2, x3, x2
00036ba4str x2, [x1+8912]
00036ba8movz x3, 8191
00036bacadd x3, x3, x2
00036bb0movz x4, 16383
00036bb4subs xzr, x3, x4
00036bb8b.lo 0x36bd8
00036bbcstr x1, [sp+48]
00036bc0ldrsb x27, [x0]
00036bc4add x0, x0, 136
00036bc8mov x1, x2
00036bccbl internal/runtime/atomic.(*Uint64).Add
00036bd0ldr x2, [sp+48]
00036bd4str xzr, [x2+8912]
00036bd8
00036bd8loc_36bd8:
00036bd8ldur x29, [sp-8]
00036bdcldr x30, [sp], 32
00036be0ret x30
00036be4
00036be4loc_36be4:
00036be4ldrsb x27, [x0]
00036be8add x0, x0, 136
00036becmov x1, x2
00036bf0bl internal/runtime/atomic.(*Uint64).Add
00036bf4ldur x29, [sp-8]
00036bf8ldr x30, [sp], 32
00036bfcret x30
00036c00
00036c00loc_36c00:
00036c00stp x0, x1, [sp+8]
00036c04str x2, [sp+24]
00036c08mov x3, x30
00036c0cbl runtime.morestack_noctxt.abi0
00036c10ldp x0, x1, [sp+8]
00036c14ldr x2, [sp+24]
00036c18b 0x36b80
00036c1cudf 0
00036b80
00036b80runtime.(*gcControllerState).addScannableStack: ; void runtime.(*gcControllerState).addScannableStack(runtime.gcControllerState * c, runtime.p * pp, int64 amount)
00036b80ldr x16, [x28+16]
00036b84subs xzr, sp, x16
00036b88b.ls 0x36c00
00036b8cstr x30, [sp-32]!
00036b90stur x29, [sp-8]
00036b94sub x29, sp, 8
00036b98cbz x1, 0x36be4
00036b9cldr x3, [x1+8912]
00036ba0add x2, x3, x2
00036ba4str x2, [x1+8912]
00036ba8movz x3, 8191
00036bacadd x3, x3, x2
00036bb0movz x4, 16383
00036bb4subs xzr, x3, x4
00036bb8b.lo 0x36bd8
00036bbcstr x1, [sp+48]
00036bc0ldrsb x27, [x0]
00036bc4add x0, x0, 136
00036bc8mov x1, x2
00036bccbl internal/runtime/atomic.(*Uint64).Add
00036bd0ldr x2, [sp+48]
00036bd4str xzr, [x2+8912]
00036bd8
00036bd8loc_36bd8:
00036bd8ldur x29, [sp-8]
00036bdcldr x30, [sp], 32
00036be0ret x30
00036be4
00036be4loc_36be4:
00036be4ldrsb x27, [x0]
00036be8add x0, x0, 136
00036becmov x1, x2
00036bf0bl internal/runtime/atomic.(*Uint64).Add
00036bf4ldur x29, [sp-8]
00036bf8ldr x30, [sp], 32
00036bfcret x30
00036c00
00036c00loc_36c00:
00036c00stp x0, x1, [sp+8]
00036c04str x2, [sp+24]
00036c08mov x3, x30
00036c0cbl runtime.morestack_noctxt.abi0
00036c10ldp x0, x1, [sp+8]
00036c14ldr x2, [sp+24]
00036c18b 0x36b80
00036c1cudf 0
00036b80
00036c20
00036c20runtime.(*gcControllerState).addGlobals: ; void runtime.(*gcControllerState).addGlobals(runtime.gcControllerState * c, int64 amount)
00036c20ldr x16, [x28+16]
00036c24subs xzr, sp, x16
00036c28b.ls 0x36c50
00036c2cstr x30, [sp-32]!
00036c30stur x29, [sp-8]
00036c34sub x29, sp, 8
00036c38ldrsb x27, [x0]
00036c3cadd x0, x0, 144
00036c40bl internal/runtime/atomic.(*Uint64).Add
00036c44ldur x29, [sp-8]
00036c48ldr x30, [sp], 32
00036c4cret x30
00036c50
00036c50loc_36c50:
00036c50stp x0, x1, [sp+8]
00036c54mov x3, x30
00036c58bl runtime.morestack_noctxt.abi0
00036c5cldp x0, x1, [sp+8]
00036c60b 0x36c20
00036c64udf 0
00036c68udf 0
00036c6cudf 0
00036c20
00036c20runtime.(*gcControllerState).addGlobals: ; void runtime.(*gcControllerState).addGlobals(runtime.gcControllerState * c, int64 amount)
00036c20ldr x16, [x28+16]
00036c24subs xzr, sp, x16
00036c28b.ls 0x36c50
00036c2cstr x30, [sp-32]!
00036c30stur x29, [sp-8]
00036c34sub x29, sp, 8
00036c38ldrsb x27, [x0]
00036c3cadd x0, x0, 144
00036c40bl internal/runtime/atomic.(*Uint64).Add
00036c44ldur x29, [sp-8]
00036c48ldr x30, [sp], 32
00036c4cret x30
00036c50
00036c50loc_36c50:
00036c50stp x0, x1, [sp+8]
00036c54mov x3, x30
00036c58bl runtime.morestack_noctxt.abi0
00036c5cldp x0, x1, [sp+8]
00036c60b 0x36c20
00036c64udf 0
00036c68udf 0
00036c6cudf 0
00036c20
00036c70
00036c70runtime.(*gcControllerState).heapGoal: ; void runtime.(*gcControllerState).heapGoal(runtime.gcControllerState * c)
00036c70ldr x16, [x28+16]
00036c74subs xzr, sp, x16
00036c78b.ls 0x36c98
00036c7cstr x30, [sp-32]!
00036c80stur x29, [sp-8]
00036c84sub x29, sp, 8
00036c88bl runtime.(*gcControllerState).heapGoalInternal
00036c8cldur x29, [sp-8]
00036c90ldr x30, [sp], 32
00036c94ret x30
00036c98
00036c98loc_36c98:
00036c98str x0, [sp+8]
00036c9cmov x3, x30
00036ca0bl runtime.morestack_noctxt.abi0
00036ca4ldr x0, [sp+8]
00036ca8b 0x36c70
00036cacudf 0
00036c70
00036c70runtime.(*gcControllerState).heapGoal: ; void runtime.(*gcControllerState).heapGoal(runtime.gcControllerState * c)
00036c70ldr x16, [x28+16]
00036c74subs xzr, sp, x16
00036c78b.ls 0x36c98
00036c7cstr x30, [sp-32]!
00036c80stur x29, [sp-8]
00036c84sub x29, sp, 8
00036c88bl runtime.(*gcControllerState).heapGoalInternal
00036c8cldur x29, [sp-8]
00036c90ldr x30, [sp], 32
00036c94ret x30
00036c98
00036c98loc_36c98:
00036c98str x0, [sp+8]
00036c9cmov x3, x30
00036ca0bl runtime.morestack_noctxt.abi0
00036ca4ldr x0, [sp+8]
00036ca8b 0x36c70
00036cacudf 0
00036c70
00036cb0
00036cb0runtime.(*gcControllerState).heapGoalInternal: ; void runtime.(*gcControllerState).heapGoalInternal(runtime.gcControllerState * c)
00036cb0ldr x16, [x28+16]
00036cb4subs xzr, sp, x16
00036cb8b.ls 0x36d44
00036cbcstr x30, [sp-32]!
00036cc0stur x29, [sp-8]
00036cc4sub x29, sp, 8
00036cc8str x0, [sp+40]
00036cccldrsb x27, [x0]
00036cd0add x0, x0, 72
00036cd4bl internal/runtime/atomic.(*Uint64).Load
00036cd8str x0, [sp+16]
00036cdcldr x0, [sp+40]
00036ce0bl runtime.(*gcControllerState).memoryLimitHeapGoal
00036ce4ldr x1, [sp+16]
00036ce8subs xzr, x0, x1
00036cecb.hs 0x36cf8
00036cf0mov x1, xzr
00036cf4b 0x36d38
00036cf8
00036cf8loc_36cf8:
00036cf8ldr x1, [sp+40]
00036cfcadd x0, x1, 80
00036d00bl internal/runtime/atomic.(*Uint64).Load
00036d04ldr x1, [sp+40]
00036d08ldr x1, [x1+88]
00036d0cldr x2, [sp+16]
00036d10subs xzr, x0, x2
00036d14csel x2, x0, x2, hi
00036d18adds xzr, x1, 1
00036d1cb.eq 0x36d2c
00036d20add x3, x1, 0x10000
00036d24subs xzr, x2, x3
00036d28b.lo 0x36d30
00036d2c
00036d2cloc_36d2c:
00036d2cmov x3, x2
00036d30
00036d30loc_36d30:
00036d30mov x1, x0
00036d34mov x0, x3
00036d38
00036d38loc_36d38:
00036d38ldur x29, [sp-8]
00036d3cldr x30, [sp], 32
00036d40ret x30
00036d44
00036d44loc_36d44:
00036d44str x0, [sp+8]
00036d48mov x3, x30
00036d4cbl runtime.morestack_noctxt.abi0
00036d50ldr x0, [sp+8]
00036d54b 0x36cb0
00036d58udf 0
00036d5cudf 0
00036cb0
00036cb0runtime.(*gcControllerState).heapGoalInternal: ; void runtime.(*gcControllerState).heapGoalInternal(runtime.gcControllerState * c)
00036cb0ldr x16, [x28+16]
00036cb4subs xzr, sp, x16
00036cb8b.ls 0x36d44
00036cbcstr x30, [sp-32]!
00036cc0stur x29, [sp-8]
00036cc4sub x29, sp, 8
00036cc8str x0, [sp+40]
00036cccldrsb x27, [x0]
00036cd0add x0, x0, 72
00036cd4bl internal/runtime/atomic.(*Uint64).Load
00036cd8str x0, [sp+16]
00036cdcldr x0, [sp+40]
00036ce0bl runtime.(*gcControllerState).memoryLimitHeapGoal
00036ce4ldr x1, [sp+16]
00036ce8subs xzr, x0, x1
00036cecb.hs 0x36cf8
00036cf0mov x1, xzr
00036cf4b 0x36d38
00036cf8
00036cf8loc_36cf8:
00036cf8ldr x1, [sp+40]
00036cfcadd x0, x1, 80
00036d00bl internal/runtime/atomic.(*Uint64).Load
00036d04ldr x1, [sp+40]
00036d08ldr x1, [x1+88]
00036d0cldr x2, [sp+16]
00036d10subs xzr, x0, x2
00036d14csel x2, x0, x2, hi
00036d18adds xzr, x1, 1
00036d1cb.eq 0x36d2c
00036d20add x3, x1, 0x10000
00036d24subs xzr, x2, x3
00036d28b.lo 0x36d30
00036d2c
00036d2cloc_36d2c:
00036d2cmov x3, x2
00036d30
00036d30loc_36d30:
00036d30mov x1, x0
00036d34mov x0, x3
00036d38
00036d38loc_36d38:
00036d38ldur x29, [sp-8]
00036d3cldr x30, [sp], 32
00036d40ret x30
00036d44
00036d44loc_36d44:
00036d44str x0, [sp+8]
00036d48mov x3, x30
00036d4cbl runtime.morestack_noctxt.abi0
00036d50ldr x0, [sp+8]
00036d54b 0x36cb0
00036d58udf 0
00036d5cudf 0
00036cb0
00036d60
00036d60runtime.(*gcControllerState).memoryLimitHeapGoal: ; void runtime.(*gcControllerState).memoryLimitHeapGoal(runtime.gcControllerState * c)
00036d60ldr x16, [x28+16]
00036d64subs xzr, sp, x16
00036d68b.ls 0x36ea0
00036d6cstr x30, [sp-64]!
00036d70stur x29, [sp-8]
00036d74sub x29, sp, 8
00036d78str x0, [sp+72]
00036d7cb 0x36d84
00036d80
00036d80loc_36d80:
00036d80ldr x0, [sp+72]
00036d84
00036d84loc_36d84:
00036d84ldrsb x27, [x0]
00036d88add x0, x0, 288
00036d8cbl runtime.(*sysMemStat).load
00036d90str x0, [sp+24]
00036d94ldr x1, [sp+72]
00036d98add x0, x1, 296
00036d9cbl internal/runtime/atomic.(*Uint64).Load
00036da0str x0, [sp+48]
00036da4ldr x1, [sp+72]
00036da8add x0, x1, 304
00036dacbl internal/runtime/atomic.(*Uint64).Load
00036db0str x0, [sp+40]
00036db4ldr x1, [sp+48]
00036db8sub x1, x1, x0
00036dbcstr x1, [sp+32]
00036dc0ldr x1, [sp+72]
00036dc4add x0, x1, 312
00036dc8bl internal/runtime/atomic.(*Uint64).Load
00036dccldr x1, [sp+24]
00036dd0ldr x2, [sp+32]
00036dd4add x2, x1, x2
00036dd8subs xzr, x0, x2
00036ddcb.lo 0x36d80
00036de0str x0, [sp+16]
00036de4ldr x1, [sp+72]
00036de8add x0, x1, 8
00036decbl internal/runtime/atomic.(*Int64).Load
00036df0ldr x1, [sp+16]
00036df4ldr x2, [sp+24]
00036df8sub x2, x1, x2
00036dfcldr x3, [sp+40]
00036e00add x2, x3, x2
00036e04ldr x3, [sp+48]
00036e08sub x2, x2, x3
00036e0csub x3, x1, x0
00036e10subs xzr, x0, x1
00036e14csel x1, x3, xzr, lo
00036e18add x1, x1, x2
00036e1csubs xzr, x0, x1
00036e20b.ls 0x36e8c
00036e24sub x2, x0, x1
00036e28ubfm x3, x2, 1, 63
00036e2cmovz x4, 55051
00036e30movk x4, 0x70a30000
00036e34movk x4, 0xa3d00000000
00036e38movk x4, 0xa3d7000000000000
00036e3cumulh x3, x4, x3
00036e40ubfm x3, x3, 5, 63
00036e44add x3, x3, x3, lsl #1
00036e48subs xzr, x3, 0x100000
00036e4corr x4, xzr, 0x100000
00036e50csel x3, x4, x3, lo
00036e54subs xzr, x3, x2
00036e58b.hi 0x36e70
00036e5cadd x1, x1, x3
00036e60sub x1, x0, x1
00036e64subs xzr, x3, x1
00036e68b.hi 0x36e70
00036e6cmov x3, x1
00036e70
00036e70loc_36e70:
00036e70ldr x1, [sp+72]
00036e74ldr x1, [x1+152]
00036e78subs xzr, x3, x1
00036e7ccsel x0, x1, x3, lo
00036e80ldur x29, [sp-8]
00036e84ldr x30, [sp], 64
00036e88ret x30
00036e8c
00036e8cloc_36e8c:
00036e8cldr x1, [sp+72]
00036e90ldr x0, [x1+152]
00036e94ldur x29, [sp-8]
00036e98ldr x30, [sp], 64
00036e9cret x30
00036ea0
00036ea0loc_36ea0:
00036ea0str x0, [sp+8]
00036ea4mov x3, x30
00036ea8bl runtime.morestack_noctxt.abi0
00036eacldr x0, [sp+8]
00036eb0b 0x36d60
00036eb4udf 0
00036eb8udf 0
00036ebcudf 0
00036d60
00036d60runtime.(*gcControllerState).memoryLimitHeapGoal: ; void runtime.(*gcControllerState).memoryLimitHeapGoal(runtime.gcControllerState * c)
00036d60ldr x16, [x28+16]
00036d64subs xzr, sp, x16
00036d68b.ls 0x36ea0
00036d6cstr x30, [sp-64]!
00036d70stur x29, [sp-8]
00036d74sub x29, sp, 8
00036d78str x0, [sp+72]
00036d7cb 0x36d84
00036d80
00036d80loc_36d80:
00036d80ldr x0, [sp+72]
00036d84
00036d84loc_36d84:
00036d84ldrsb x27, [x0]
00036d88add x0, x0, 288
00036d8cbl runtime.(*sysMemStat).load
00036d90str x0, [sp+24]
00036d94ldr x1, [sp+72]
00036d98add x0, x1, 296
00036d9cbl internal/runtime/atomic.(*Uint64).Load
00036da0str x0, [sp+48]
00036da4ldr x1, [sp+72]
00036da8add x0, x1, 304
00036dacbl internal/runtime/atomic.(*Uint64).Load
00036db0str x0, [sp+40]
00036db4ldr x1, [sp+48]
00036db8sub x1, x1, x0
00036dbcstr x1, [sp+32]
00036dc0ldr x1, [sp+72]
00036dc4add x0, x1, 312
00036dc8bl internal/runtime/atomic.(*Uint64).Load
00036dccldr x1, [sp+24]
00036dd0ldr x2, [sp+32]
00036dd4add x2, x1, x2
00036dd8subs xzr, x0, x2
00036ddcb.lo 0x36d80
00036de0str x0, [sp+16]
00036de4ldr x1, [sp+72]
00036de8add x0, x1, 8
00036decbl internal/runtime/atomic.(*Int64).Load
00036df0ldr x1, [sp+16]
00036df4ldr x2, [sp+24]
00036df8sub x2, x1, x2
00036dfcldr x3, [sp+40]
00036e00add x2, x3, x2
00036e04ldr x3, [sp+48]
00036e08sub x2, x2, x3
00036e0csub x3, x1, x0
00036e10subs xzr, x0, x1
00036e14csel x1, x3, xzr, lo
00036e18add x1, x1, x2
00036e1csubs xzr, x0, x1
00036e20b.ls 0x36e8c
00036e24sub x2, x0, x1
00036e28ubfm x3, x2, 1, 63
00036e2cmovz x4, 55051
00036e30movk x4, 0x70a30000
00036e34movk x4, 0xa3d00000000
00036e38movk x4, 0xa3d7000000000000
00036e3cumulh x3, x4, x3
00036e40ubfm x3, x3, 5, 63
00036e44add x3, x3, x3, lsl #1
00036e48subs xzr, x3, 0x100000
00036e4corr x4, xzr, 0x100000
00036e50csel x3, x4, x3, lo
00036e54subs xzr, x3, x2
00036e58b.hi 0x36e70
00036e5cadd x1, x1, x3
00036e60sub x1, x0, x1
00036e64subs xzr, x3, x1
00036e68b.hi 0x36e70
00036e6cmov x3, x1
00036e70
00036e70loc_36e70:
00036e70ldr x1, [sp+72]
00036e74ldr x1, [x1+152]
00036e78subs xzr, x3, x1
00036e7ccsel x0, x1, x3, lo
00036e80ldur x29, [sp-8]
00036e84ldr x30, [sp], 64
00036e88ret x30
00036e8c
00036e8cloc_36e8c:
00036e8cldr x1, [sp+72]
00036e90ldr x0, [x1+152]
00036e94ldur x29, [sp-8]
00036e98ldr x30, [sp], 64
00036e9cret x30
00036ea0
00036ea0loc_36ea0:
00036ea0str x0, [sp+8]
00036ea4mov x3, x30
00036ea8bl runtime.morestack_noctxt.abi0
00036eacldr x0, [sp+8]
00036eb0b 0x36d60
00036eb4udf 0
00036eb8udf 0
00036ebcudf 0
00036d60
Loading..