File sliver_83cb34f62800fed14e14547c39337aab8e0427fe2c6310a3fb40ce0ac36168c9.elf
Function:
Loading..
0018c7d0
0018c7d0sort.partitionEqual_func: ; void sort.partitionEqual_func(sort.lessSwap data, int a, int b, int pivot)
0018c7d0ldr x16, [x28+16]
0018c7d4subs xzr, sp, x16
0018c7d8b.ls 0x18c960
0018c7dcstr x30, [sp-64]!
0018c7e0stur x29, [sp-8]
0018c7e4sub x29, sp, 8
0018c7e8str x0, [sp+72]
0018c7ecstr x1, [sp+80]
0018c7f0str x2, [sp+88]
0018c7f4str x3, [sp+96]
0018c7f8str x4, [sp+104]
0018c7fcstr xzr, [sp+32]
0018c800ldr x26, [sp+80]
0018c804ldr x3, [x26]
0018c808mov x0, x2
0018c80cmov x1, x4
0018c810blr x3
0018c814ldr x2, [sp+88]
0018c818add x2, x2, 1
0018c81cstr x2, [sp+48]
0018c820ldr x2, [sp+96]
0018c824sub x2, x2, 1
0018c828str x2, [sp+40]
0018c82cb 0x18c830
0018c830
0018c830loc_18c830:
0018c830b 0x18c834
0018c834
0018c834loc_18c834:
0018c834b 0x18c838
0018c838
0018c838loc_18c838:
0018c838ldr x2, [sp+40]
0018c83cldr x3, [sp+48]
0018c840subs xzr, x2, x3
0018c844cset x2, ge
0018c848strb w2, [sp+31]
0018c84cb.ge 0x18c854
0018c850b 0x18c878
0018c854
0018c854loc_18c854:
0018c854ldr x26, [sp+72]
0018c858ldr x0, [sp+88]
0018c85cldr x1, [sp+48]
0018c860ldr x2, [x26]
0018c864blr x2
0018c868strb w0, [sp+30]
0018c86ceor x2, x0, 1
0018c870strb w2, [sp+31]
0018c874b 0x18c87c
0018c878
0018c878loc_18c878:
0018c878b 0x18c87c
0018c87c
0018c87cloc_18c87c:
0018c87cldrb w2, [sp+31]
0018c880tbnz w2, 0, 0x18c888
0018c884b 0x18c89c
0018c888
0018c888loc_18c888:
0018c888ldr x2, [sp+48]
0018c88cadd x2, x2, 1
0018c890str x2, [sp+48]
0018c894b 0x18c898
0018c898
0018c898loc_18c898:
0018c898b 0x18c838
0018c89c
0018c89cloc_18c89c:
0018c89cb 0x18c8a0
0018c8a0
0018c8a0loc_18c8a0:
0018c8a0ldr x2, [sp+40]
0018c8a4ldr x3, [sp+48]
0018c8a8subs xzr, x2, x3
0018c8accset x2, ge
0018c8b0strb w2, [sp+31]
0018c8b4b.ge 0x18c8bc
0018c8b8b 0x18c8dc
0018c8bc
0018c8bcloc_18c8bc:
0018c8bcldr x26, [sp+72]
0018c8c0ldr x0, [sp+88]
0018c8c4ldr x1, [sp+40]
0018c8c8ldr x2, [x26]
0018c8ccblr x2
0018c8d0strb w0, [sp+30]
0018c8d4strb w0, [sp+31]
0018c8d8b 0x18c8e0
0018c8dc
0018c8dcloc_18c8dc:
0018c8dcb 0x18c8e0
0018c8e0
0018c8e0loc_18c8e0:
0018c8e0ldrb w2, [sp+31]
0018c8e4tbnz w2, 0, 0x18c8ec
0018c8e8b 0x18c900
0018c8ec
0018c8ecloc_18c8ec:
0018c8ecldr x2, [sp+40]
0018c8f0sub x2, x2, 1
0018c8f4str x2, [sp+40]
0018c8f8b 0x18c8fc
0018c8fc
0018c8fcloc_18c8fc:
0018c8fcb 0x18c8a0
0018c900
0018c900loc_18c900:
0018c900ldr x2, [sp+40]
0018c904ldr x3, [sp+48]
0018c908subs xzr, x2, x3
0018c90cb.lt 0x18c914
0018c910b 0x18c92c
0018c914
0018c914loc_18c914:
0018c914b 0x18c918
0018c918
0018c918loc_18c918:
0018c918ldr x0, [sp+48]
0018c91cstr x0, [sp+32]
0018c920ldur x29, [sp-8]
0018c924ldr x30, [sp], 64
0018c928ret x30
0018c92c
0018c92cloc_18c92c:
0018c92cldr x26, [sp+80]
0018c930ldr x0, [sp+48]
0018c934ldr x1, [sp+40]
0018c938ldr x2, [x26]
0018c93cblr x2
0018c940ldr x2, [sp+48]
0018c944add x2, x2, 1
0018c948str x2, [sp+48]
0018c94cldr x2, [sp+40]
0018c950sub x2, x2, 1
0018c954str x2, [sp+40]
0018c958b 0x18c95c
0018c95c
0018c95cloc_18c95c:
0018c95cb 0x18c830
0018c960
0018c960loc_18c960:
0018c960stp x0, x1, [sp+8]
0018c964stp x2, x3, [sp+24]
0018c968str x4, [sp+40]
0018c96cmov x3, x30
0018c970bl runtime.morestack_noctxt.abi0
0018c974ldp x0, x1, [sp+8]
0018c978ldp x2, x3, [sp+24]
0018c97cldr x4, [sp+40]
0018c980b 0x18c7d0
0018c984udf 0
0018c988udf 0
0018c98cudf 0
0018c7d0
0018c7d0sort.partitionEqual_func: ; void sort.partitionEqual_func(sort.lessSwap data, int a, int b, int pivot)
0018c7d0ldr x16, [x28+16]
0018c7d4subs xzr, sp, x16
0018c7d8b.ls 0x18c960
0018c7dcstr x30, [sp-64]!
0018c7e0stur x29, [sp-8]
0018c7e4sub x29, sp, 8
0018c7e8str x0, [sp+72]
0018c7ecstr x1, [sp+80]
0018c7f0str x2, [sp+88]
0018c7f4str x3, [sp+96]
0018c7f8str x4, [sp+104]
0018c7fcstr xzr, [sp+32]
0018c800ldr x26, [sp+80]
0018c804ldr x3, [x26]
0018c808mov x0, x2
0018c80cmov x1, x4
0018c810blr x3
0018c814ldr x2, [sp+88]
0018c818add x2, x2, 1
0018c81cstr x2, [sp+48]
0018c820ldr x2, [sp+96]
0018c824sub x2, x2, 1
0018c828str x2, [sp+40]
0018c82cb 0x18c830
0018c830
0018c830loc_18c830:
0018c830b 0x18c834
0018c834
0018c834loc_18c834:
0018c834b 0x18c838
0018c838
0018c838loc_18c838:
0018c838ldr x2, [sp+40]
0018c83cldr x3, [sp+48]
0018c840subs xzr, x2, x3
0018c844cset x2, ge
0018c848strb w2, [sp+31]
0018c84cb.ge 0x18c854
0018c850b 0x18c878
0018c854
0018c854loc_18c854:
0018c854ldr x26, [sp+72]
0018c858ldr x0, [sp+88]
0018c85cldr x1, [sp+48]
0018c860ldr x2, [x26]
0018c864blr x2
0018c868strb w0, [sp+30]
0018c86ceor x2, x0, 1
0018c870strb w2, [sp+31]
0018c874b 0x18c87c
0018c878
0018c878loc_18c878:
0018c878b 0x18c87c
0018c87c
0018c87cloc_18c87c:
0018c87cldrb w2, [sp+31]
0018c880tbnz w2, 0, 0x18c888
0018c884b 0x18c89c
0018c888
0018c888loc_18c888:
0018c888ldr x2, [sp+48]
0018c88cadd x2, x2, 1
0018c890str x2, [sp+48]
0018c894b 0x18c898
0018c898
0018c898loc_18c898:
0018c898b 0x18c838
0018c89c
0018c89cloc_18c89c:
0018c89cb 0x18c8a0
0018c8a0
0018c8a0loc_18c8a0:
0018c8a0ldr x2, [sp+40]
0018c8a4ldr x3, [sp+48]
0018c8a8subs xzr, x2, x3
0018c8accset x2, ge
0018c8b0strb w2, [sp+31]
0018c8b4b.ge 0x18c8bc
0018c8b8b 0x18c8dc
0018c8bc
0018c8bcloc_18c8bc:
0018c8bcldr x26, [sp+72]
0018c8c0ldr x0, [sp+88]
0018c8c4ldr x1, [sp+40]
0018c8c8ldr x2, [x26]
0018c8ccblr x2
0018c8d0strb w0, [sp+30]
0018c8d4strb w0, [sp+31]
0018c8d8b 0x18c8e0
0018c8dc
0018c8dcloc_18c8dc:
0018c8dcb 0x18c8e0
0018c8e0
0018c8e0loc_18c8e0:
0018c8e0ldrb w2, [sp+31]
0018c8e4tbnz w2, 0, 0x18c8ec
0018c8e8b 0x18c900
0018c8ec
0018c8ecloc_18c8ec:
0018c8ecldr x2, [sp+40]
0018c8f0sub x2, x2, 1
0018c8f4str x2, [sp+40]
0018c8f8b 0x18c8fc
0018c8fc
0018c8fcloc_18c8fc:
0018c8fcb 0x18c8a0
0018c900
0018c900loc_18c900:
0018c900ldr x2, [sp+40]
0018c904ldr x3, [sp+48]
0018c908subs xzr, x2, x3
0018c90cb.lt 0x18c914
0018c910b 0x18c92c
0018c914
0018c914loc_18c914:
0018c914b 0x18c918
0018c918
0018c918loc_18c918:
0018c918ldr x0, [sp+48]
0018c91cstr x0, [sp+32]
0018c920ldur x29, [sp-8]
0018c924ldr x30, [sp], 64
0018c928ret x30
0018c92c
0018c92cloc_18c92c:
0018c92cldr x26, [sp+80]
0018c930ldr x0, [sp+48]
0018c934ldr x1, [sp+40]
0018c938ldr x2, [x26]
0018c93cblr x2
0018c940ldr x2, [sp+48]
0018c944add x2, x2, 1
0018c948str x2, [sp+48]
0018c94cldr x2, [sp+40]
0018c950sub x2, x2, 1
0018c954str x2, [sp+40]
0018c958b 0x18c95c
0018c95c
0018c95cloc_18c95c:
0018c95cb 0x18c830
0018c960
0018c960loc_18c960:
0018c960stp x0, x1, [sp+8]
0018c964stp x2, x3, [sp+24]
0018c968str x4, [sp+40]
0018c96cmov x3, x30
0018c970bl runtime.morestack_noctxt.abi0
0018c974ldp x0, x1, [sp+8]
0018c978ldp x2, x3, [sp+24]
0018c97cldr x4, [sp+40]
0018c980b 0x18c7d0
0018c984udf 0
0018c988udf 0
0018c98cudf 0
0018c7d0
0018c990
0018c990sort.partialInsertionSort_func: ; void sort.partialInsertionSort_func(sort.lessSwap data, int a, int b)
0018c990ldr x16, [x28+16]
0018c994subs xzr, sp, x16
0018c998b.ls 0x18cc14
0018c99cstr x30, [sp-80]!
0018c9a0stur x29, [sp-8]
0018c9a4sub x29, sp, 8
0018c9a8str x0, [sp+88]
0018c9acstr x1, [sp+96]
0018c9b0str x2, [sp+104]
0018c9b4str x3, [sp+112]
0018c9b8strb wzr, [sp+37]
0018c9bcldr x2, [sp+104]
0018c9c0add x2, x2, 1
0018c9c4str x2, [sp+64]
0018c9c8str xzr, [sp+56]
0018c9ccb 0x18c9d0
0018c9d0
0018c9d0loc_18c9d0:
0018c9d0ldr x2, [sp+56]
0018c9d4subs xzr, x2, 5
0018c9d8b.lt 0x18c9e0
0018c9dcb 0x18c9e4
0018c9e0
0018c9e0loc_18c9e0:
0018c9e0b 0x18c9f8
0018c9e4
0018c9e4loc_18c9e4:
0018c9e4strb wzr, [sp+37]
0018c9e8mov x0, xzr
0018c9ecldur x29, [sp-8]
0018c9f0ldr x30, [sp], 80
0018c9f4ret x30
0018c9f8
0018c9f8loc_18c9f8:
0018c9f8ldr x2, [sp+112]
0018c9fcldr x3, [sp+64]
0018ca00subs xzr, x2, x3
0018ca04cset x2, gt
0018ca08strb w2, [sp+39]
0018ca0cb.gt 0x18ca14
0018ca10b 0x18ca3c
0018ca14
0018ca14loc_18ca14:
0018ca14ldr x26, [sp+88]
0018ca18ldr x0, [sp+64]
0018ca1cldr x2, [x26]
0018ca20ldr x3, [sp+64]
0018ca24sub x1, x3, 1
0018ca28blr x2
0018ca2cstrb w0, [sp+38]
0018ca30eor x2, x0, 1
0018ca34strb w2, [sp+39]
0018ca38b 0x18ca40
0018ca3c
0018ca3cloc_18ca3c:
0018ca3cb 0x18ca40
0018ca40
0018ca40loc_18ca40:
0018ca40ldrb w2, [sp+39]
0018ca44tbnz w2, 0, 0x18ca4c
0018ca48b 0x18ca60
0018ca4c
0018ca4cloc_18ca4c:
0018ca4cldr x2, [sp+64]
0018ca50add x2, x2, 1
0018ca54str x2, [sp+64]
0018ca58b 0x18ca5c
0018ca5c
0018ca5cloc_18ca5c:
0018ca5cb 0x18c9f8
0018ca60
0018ca60loc_18ca60:
0018ca60ldr x2, [sp+112]
0018ca64ldr x3, [sp+64]
0018ca68subs xzr, x2, x3
0018ca6cb.eq 0x18ca74
0018ca70b 0x18ca88
0018ca74
0018ca74loc_18ca74:
0018ca74orr x0, xzr, 1
0018ca78strb w0, [sp+37]
0018ca7cldur x29, [sp-8]
0018ca80ldr x30, [sp], 80
0018ca84ret x30
0018ca88
0018ca88loc_18ca88:
0018ca88ldr x2, [sp+104]
0018ca8cldr x3, [sp+112]
0018ca90sub x2, x3, x2
0018ca94subs xzr, x2, 50
0018ca98b.lt 0x18caa0
0018ca9cb 0x18cab4
0018caa0
0018caa0loc_18caa0:
0018caa0strb wzr, [sp+37]
0018caa4mov x0, xzr
0018caa8ldur x29, [sp-8]
0018caacldr x30, [sp], 80
0018cab0ret x30
0018cab4
0018cab4loc_18cab4:
0018cab4ldr x26, [sp+96]
0018cab8ldr x0, [sp+64]
0018cabcldr x2, [x26]
0018cac0ldr x3, [sp+64]
0018cac4sub x1, x3, 1
0018cac8blr x2
0018caccldr x2, [sp+104]
0018cad0ldr x3, [sp+64]
0018cad4sub x2, x3, x2
0018cad8subs xzr, x2, 2
0018cadcb.ge 0x18cae4
0018cae0b 0x18caf4
0018cae4
0018cae4loc_18cae4:
0018cae4ldr x2, [sp+64]
0018cae8sub x2, x2, 1
0018caecstr x2, [sp+48]
0018caf0b 0x18cba8
0018caf4
0018caf4loc_18caf4:
0018caf4b 0x18caf8
0018caf8
0018caf8loc_18caf8:
0018caf8ldr x2, [sp+64]
0018cafcldr x3, [sp+112]
0018cb00sub x2, x3, x2
0018cb04subs xzr, x2, 2
0018cb08b.ge 0x18cb10
0018cb0cb 0x18cb20
0018cb10
0018cb10loc_18cb10:
0018cb10ldr x2, [sp+64]
0018cb14add x2, x2, 1
0018cb18str x2, [sp+40]
0018cb1cb 0x18cb38
0018cb20
0018cb20loc_18cb20:
0018cb20b 0x18cb24
0018cb24
0018cb24loc_18cb24:
0018cb24b 0x18cb28
0018cb28
0018cb28loc_18cb28:
0018cb28ldr x2, [sp+56]
0018cb2cadd x2, x2, 1
0018cb30str x2, [sp+56]
0018cb34b 0x18c9d0
0018cb38
0018cb38loc_18cb38:
0018cb38ldr x2, [sp+112]
0018cb3cldr x3, [sp+40]
0018cb40subs xzr, x2, x3
0018cb44b.gt 0x18cb4c
0018cb48b 0x18cba0
0018cb4c
0018cb4cloc_18cb4c:
0018cb4cldr x26, [sp+88]
0018cb50ldr x0, [sp+40]
0018cb54ldr x2, [x26]
0018cb58ldr x3, [sp+40]
0018cb5csub x1, x3, 1
0018cb60blr x2
0018cb64strb w0, [sp+39]
0018cb68tbnz w0, 0, 0x18cb70
0018cb6cb 0x18cb9c
0018cb70
0018cb70loc_18cb70:
0018cb70ldr x26, [sp+96]
0018cb74ldr x0, [sp+40]
0018cb78ldr x2, [x26]
0018cb7cldr x3, [sp+40]
0018cb80sub x1, x3, 1
0018cb84blr x2
0018cb88b 0x18cb8c
0018cb8c
0018cb8cloc_18cb8c:
0018cb8cldr x2, [sp+40]
0018cb90add x2, x2, 1
0018cb94str x2, [sp+40]
0018cb98b 0x18cb38
0018cb9c
0018cb9cloc_18cb9c:
0018cb9cb 0x18cba4
0018cba0
0018cba0loc_18cba0:
0018cba0b 0x18cba4
0018cba4
0018cba4loc_18cba4:
0018cba4b 0x18cb24
0018cba8
0018cba8loc_18cba8:
0018cba8ldr x2, [sp+48]
0018cbacsubs xzr, x2, 0
0018cbb0b.gt 0x18cbb8
0018cbb4b 0x18cc0c
0018cbb8
0018cbb8loc_18cbb8:
0018cbb8ldr x26, [sp+88]
0018cbbcldr x0, [sp+48]
0018cbc0ldr x2, [x26]
0018cbc4ldr x3, [sp+48]
0018cbc8sub x1, x3, 1
0018cbccblr x2
0018cbd0strb w0, [sp+39]
0018cbd4tbnz w0, 0, 0x18cbdc
0018cbd8b 0x18cc08
0018cbdc
0018cbdcloc_18cbdc:
0018cbdcldr x26, [sp+96]
0018cbe0ldr x0, [sp+48]
0018cbe4ldr x2, [x26]
0018cbe8ldr x3, [sp+48]
0018cbecsub x1, x3, 1
0018cbf0blr x2
0018cbf4b 0x18cbf8
0018cbf8
0018cbf8loc_18cbf8:
0018cbf8ldr x2, [sp+48]
0018cbfcsub x2, x2, 1
0018cc00str x2, [sp+48]
0018cc04b 0x18cba8
0018cc08
0018cc08loc_18cc08:
0018cc08b 0x18cc10
0018cc0c
0018cc0cloc_18cc0c:
0018cc0cb 0x18cc10
0018cc10
0018cc10loc_18cc10:
0018cc10b 0x18caf8
0018cc14
0018cc14loc_18cc14:
0018cc14stp x0, x1, [sp+8]
0018cc18stp x2, x3, [sp+24]
0018cc1cmov x3, x30
0018cc20bl runtime.morestack_noctxt.abi0
0018cc24ldp x0, x1, [sp+8]
0018cc28ldp x2, x3, [sp+24]
0018cc2cb 0x18c990
0018c990
0018c990sort.partialInsertionSort_func: ; void sort.partialInsertionSort_func(sort.lessSwap data, int a, int b)
0018c990ldr x16, [x28+16]
0018c994subs xzr, sp, x16
0018c998b.ls 0x18cc14
0018c99cstr x30, [sp-80]!
0018c9a0stur x29, [sp-8]
0018c9a4sub x29, sp, 8
0018c9a8str x0, [sp+88]
0018c9acstr x1, [sp+96]
0018c9b0str x2, [sp+104]
0018c9b4str x3, [sp+112]
0018c9b8strb wzr, [sp+37]
0018c9bcldr x2, [sp+104]
0018c9c0add x2, x2, 1
0018c9c4str x2, [sp+64]
0018c9c8str xzr, [sp+56]
0018c9ccb 0x18c9d0
0018c9d0
0018c9d0loc_18c9d0:
0018c9d0ldr x2, [sp+56]
0018c9d4subs xzr, x2, 5
0018c9d8b.lt 0x18c9e0
0018c9dcb 0x18c9e4
0018c9e0
0018c9e0loc_18c9e0:
0018c9e0b 0x18c9f8
0018c9e4
0018c9e4loc_18c9e4:
0018c9e4strb wzr, [sp+37]
0018c9e8mov x0, xzr
0018c9ecldur x29, [sp-8]
0018c9f0ldr x30, [sp], 80
0018c9f4ret x30
0018c9f8
0018c9f8loc_18c9f8:
0018c9f8ldr x2, [sp+112]
0018c9fcldr x3, [sp+64]
0018ca00subs xzr, x2, x3
0018ca04cset x2, gt
0018ca08strb w2, [sp+39]
0018ca0cb.gt 0x18ca14
0018ca10b 0x18ca3c
0018ca14
0018ca14loc_18ca14:
0018ca14ldr x26, [sp+88]
0018ca18ldr x0, [sp+64]
0018ca1cldr x2, [x26]
0018ca20ldr x3, [sp+64]
0018ca24sub x1, x3, 1
0018ca28blr x2
0018ca2cstrb w0, [sp+38]
0018ca30eor x2, x0, 1
0018ca34strb w2, [sp+39]
0018ca38b 0x18ca40
0018ca3c
0018ca3cloc_18ca3c:
0018ca3cb 0x18ca40
0018ca40
0018ca40loc_18ca40:
0018ca40ldrb w2, [sp+39]
0018ca44tbnz w2, 0, 0x18ca4c
0018ca48b 0x18ca60
0018ca4c
0018ca4cloc_18ca4c:
0018ca4cldr x2, [sp+64]
0018ca50add x2, x2, 1
0018ca54str x2, [sp+64]
0018ca58b 0x18ca5c
0018ca5c
0018ca5cloc_18ca5c:
0018ca5cb 0x18c9f8
0018ca60
0018ca60loc_18ca60:
0018ca60ldr x2, [sp+112]
0018ca64ldr x3, [sp+64]
0018ca68subs xzr, x2, x3
0018ca6cb.eq 0x18ca74
0018ca70b 0x18ca88
0018ca74
0018ca74loc_18ca74:
0018ca74orr x0, xzr, 1
0018ca78strb w0, [sp+37]
0018ca7cldur x29, [sp-8]
0018ca80ldr x30, [sp], 80
0018ca84ret x30
0018ca88
0018ca88loc_18ca88:
0018ca88ldr x2, [sp+104]
0018ca8cldr x3, [sp+112]
0018ca90sub x2, x3, x2
0018ca94subs xzr, x2, 50
0018ca98b.lt 0x18caa0
0018ca9cb 0x18cab4
0018caa0
0018caa0loc_18caa0:
0018caa0strb wzr, [sp+37]
0018caa4mov x0, xzr
0018caa8ldur x29, [sp-8]
0018caacldr x30, [sp], 80
0018cab0ret x30
0018cab4
0018cab4loc_18cab4:
0018cab4ldr x26, [sp+96]
0018cab8ldr x0, [sp+64]
0018cabcldr x2, [x26]
0018cac0ldr x3, [sp+64]
0018cac4sub x1, x3, 1
0018cac8blr x2
0018caccldr x2, [sp+104]
0018cad0ldr x3, [sp+64]
0018cad4sub x2, x3, x2
0018cad8subs xzr, x2, 2
0018cadcb.ge 0x18cae4
0018cae0b 0x18caf4
0018cae4
0018cae4loc_18cae4:
0018cae4ldr x2, [sp+64]
0018cae8sub x2, x2, 1
0018caecstr x2, [sp+48]
0018caf0b 0x18cba8
0018caf4
0018caf4loc_18caf4:
0018caf4b 0x18caf8
0018caf8
0018caf8loc_18caf8:
0018caf8ldr x2, [sp+64]
0018cafcldr x3, [sp+112]
0018cb00sub x2, x3, x2
0018cb04subs xzr, x2, 2
0018cb08b.ge 0x18cb10
0018cb0cb 0x18cb20
0018cb10
0018cb10loc_18cb10:
0018cb10ldr x2, [sp+64]
0018cb14add x2, x2, 1
0018cb18str x2, [sp+40]
0018cb1cb 0x18cb38
0018cb20
0018cb20loc_18cb20:
0018cb20b 0x18cb24
0018cb24
0018cb24loc_18cb24:
0018cb24b 0x18cb28
0018cb28
0018cb28loc_18cb28:
0018cb28ldr x2, [sp+56]
0018cb2cadd x2, x2, 1
0018cb30str x2, [sp+56]
0018cb34b 0x18c9d0
0018cb38
0018cb38loc_18cb38:
0018cb38ldr x2, [sp+112]
0018cb3cldr x3, [sp+40]
0018cb40subs xzr, x2, x3
0018cb44b.gt 0x18cb4c
0018cb48b 0x18cba0
0018cb4c
0018cb4cloc_18cb4c:
0018cb4cldr x26, [sp+88]
0018cb50ldr x0, [sp+40]
0018cb54ldr x2, [x26]
0018cb58ldr x3, [sp+40]
0018cb5csub x1, x3, 1
0018cb60blr x2
0018cb64strb w0, [sp+39]
0018cb68tbnz w0, 0, 0x18cb70
0018cb6cb 0x18cb9c
0018cb70
0018cb70loc_18cb70:
0018cb70ldr x26, [sp+96]
0018cb74ldr x0, [sp+40]
0018cb78ldr x2, [x26]
0018cb7cldr x3, [sp+40]
0018cb80sub x1, x3, 1
0018cb84blr x2
0018cb88b 0x18cb8c
0018cb8c
0018cb8cloc_18cb8c:
0018cb8cldr x2, [sp+40]
0018cb90add x2, x2, 1
0018cb94str x2, [sp+40]
0018cb98b 0x18cb38
0018cb9c
0018cb9cloc_18cb9c:
0018cb9cb 0x18cba4
0018cba0
0018cba0loc_18cba0:
0018cba0b 0x18cba4
0018cba4
0018cba4loc_18cba4:
0018cba4b 0x18cb24
0018cba8
0018cba8loc_18cba8:
0018cba8ldr x2, [sp+48]
0018cbacsubs xzr, x2, 0
0018cbb0b.gt 0x18cbb8
0018cbb4b 0x18cc0c
0018cbb8
0018cbb8loc_18cbb8:
0018cbb8ldr x26, [sp+88]
0018cbbcldr x0, [sp+48]
0018cbc0ldr x2, [x26]
0018cbc4ldr x3, [sp+48]
0018cbc8sub x1, x3, 1
0018cbccblr x2
0018cbd0strb w0, [sp+39]
0018cbd4tbnz w0, 0, 0x18cbdc
0018cbd8b 0x18cc08
0018cbdc
0018cbdcloc_18cbdc:
0018cbdcldr x26, [sp+96]
0018cbe0ldr x0, [sp+48]
0018cbe4ldr x2, [x26]
0018cbe8ldr x3, [sp+48]
0018cbecsub x1, x3, 1
0018cbf0blr x2
0018cbf4b 0x18cbf8
0018cbf8
0018cbf8loc_18cbf8:
0018cbf8ldr x2, [sp+48]
0018cbfcsub x2, x2, 1
0018cc00str x2, [sp+48]
0018cc04b 0x18cba8
0018cc08
0018cc08loc_18cc08:
0018cc08b 0x18cc10
0018cc0c
0018cc0cloc_18cc0c:
0018cc0cb 0x18cc10
0018cc10
0018cc10loc_18cc10:
0018cc10b 0x18caf8
0018cc14
0018cc14loc_18cc14:
0018cc14stp x0, x1, [sp+8]
0018cc18stp x2, x3, [sp+24]
0018cc1cmov x3, x30
0018cc20bl runtime.morestack_noctxt.abi0
0018cc24ldp x0, x1, [sp+8]
0018cc28ldp x2, x3, [sp+24]
0018cc2cb 0x18c990
0018c990
0018cc30
0018cc30sort.breakPatterns_func: ; void sort.breakPatterns_func(sort.lessSwap data, int a, int b)
0018cc30ldr x16, [x28+16]
0018cc34subs xzr, sp, x16
0018cc38b.ls 0x18cd54
0018cc3cstr x30, [sp-80]!
0018cc40stur x29, [sp-8]
0018cc44sub x29, sp, 8
0018cc48str x0, [sp+88]
0018cc4cstr x1, [sp+96]
0018cc50str x2, [sp+104]
0018cc54str x3, [sp+112]
0018cc58sub x0, x3, x2
0018cc5cstr x0, [sp+48]
0018cc60subs xzr, x0, 8
0018cc64b.ge 0x18cc6c
0018cc68b 0x18cc9c
0018cc6c
0018cc6cloc_18cc6c:
0018cc6cstr x0, [sp+24]
0018cc70bl sort.nextPowerOfTwo
0018cc74str x0, [sp+40]
0018cc78ldr x1, [sp+104]
0018cc7cldr x2, [sp+48]
0018cc80sbfm x3, x2, 63, 63
0018cc84add x2, x2, x3, lsr #62
0018cc88sbfm x2, x2, 2, 63
0018cc8cadd x1, x1, x2, lsl #1
0018cc90sub x1, x1, 1
0018cc94str x1, [sp+56]
0018cc98b 0x18ccac
0018cc9c
0018cc9cloc_18cc9c:
0018cc9cb 0x18cca0
0018cca0
0018cca0loc_18cca0:
0018cca0ldur x29, [sp-8]
0018cca4ldr x30, [sp], 80
0018cca8ret x30
0018ccac
0018ccacloc_18ccac:
0018ccacldr x1, [sp+56]
0018ccb0ldr x2, [sp+104]
0018ccb4ldr x3, [sp+48]
0018ccb8sbfm x4, x3, 63, 63
0018ccbcadd x3, x3, x4, lsr #62
0018ccc0sbfm x3, x3, 2, 63
0018ccc4add x2, x2, x3, lsl #1
0018ccc8add x2, x2, 1
0018ccccsubs xzr, x1, x2
0018ccd0b.le 0x18ccd8
0018ccd4b 0x18cd50
0018ccd8
0018ccd8loc_18ccd8:
0018ccd8add x0, sp, 24
0018ccdcbl sort.(*xorshift).Next
0018cce0str x0, [sp+64]
0018cce4ldr x1, [sp+40]
0018cce8sub x1, x1, 1
0018ccecand x1, x0, x1
0018ccf0str x1, [sp+32]
0018ccf4ldr x1, [sp+48]
0018ccf8ldr x2, [sp+32]
0018ccfcsubs xzr, x1, x2
0018cd00b.le 0x18cd08
0018cd04b 0x18cd1c
0018cd08
0018cd08loc_18cd08:
0018cd08ldr x2, [sp+48]
0018cd0cldr x3, [sp+32]
0018cd10sub x2, x3, x2
0018cd14str x2, [sp+32]
0018cd18b 0x18cd20
0018cd1c
0018cd1cloc_18cd1c:
0018cd1cb 0x18cd20
0018cd20
0018cd20loc_18cd20:
0018cd20ldr x26, [sp+96]
0018cd24ldr x0, [sp+56]
0018cd28ldr x2, [x26]
0018cd2cldr x3, [sp+104]
0018cd30ldr x4, [sp+32]
0018cd34add x1, x3, x4
0018cd38blr x2
0018cd3cb 0x18cd40
0018cd40
0018cd40loc_18cd40:
0018cd40ldr x1, [sp+56]
0018cd44add x1, x1, 1
0018cd48str x1, [sp+56]
0018cd4cb 0x18ccac
0018cd50
0018cd50loc_18cd50:
0018cd50b 0x18cca0
0018cd54
0018cd54loc_18cd54:
0018cd54stp x0, x1, [sp+8]
0018cd58stp x2, x3, [sp+24]
0018cd5cmov x3, x30
0018cd60bl runtime.morestack_noctxt.abi0
0018cd64ldp x0, x1, [sp+8]
0018cd68ldp x2, x3, [sp+24]
0018cd6cb 0x18cc30
0018cc30
0018cc30sort.breakPatterns_func: ; void sort.breakPatterns_func(sort.lessSwap data, int a, int b)
0018cc30ldr x16, [x28+16]
0018cc34subs xzr, sp, x16
0018cc38b.ls 0x18cd54
0018cc3cstr x30, [sp-80]!
0018cc40stur x29, [sp-8]
0018cc44sub x29, sp, 8
0018cc48str x0, [sp+88]
0018cc4cstr x1, [sp+96]
0018cc50str x2, [sp+104]
0018cc54str x3, [sp+112]
0018cc58sub x0, x3, x2
0018cc5cstr x0, [sp+48]
0018cc60subs xzr, x0, 8
0018cc64b.ge 0x18cc6c
0018cc68b 0x18cc9c
0018cc6c
0018cc6cloc_18cc6c:
0018cc6cstr x0, [sp+24]
0018cc70bl sort.nextPowerOfTwo
0018cc74str x0, [sp+40]
0018cc78ldr x1, [sp+104]
0018cc7cldr x2, [sp+48]
0018cc80sbfm x3, x2, 63, 63
0018cc84add x2, x2, x3, lsr #62
0018cc88sbfm x2, x2, 2, 63
0018cc8cadd x1, x1, x2, lsl #1
0018cc90sub x1, x1, 1
0018cc94str x1, [sp+56]
0018cc98b 0x18ccac
0018cc9c
0018cc9cloc_18cc9c:
0018cc9cb 0x18cca0
0018cca0
0018cca0loc_18cca0:
0018cca0ldur x29, [sp-8]
0018cca4ldr x30, [sp], 80
0018cca8ret x30
0018ccac
0018ccacloc_18ccac:
0018ccacldr x1, [sp+56]
0018ccb0ldr x2, [sp+104]
0018ccb4ldr x3, [sp+48]
0018ccb8sbfm x4, x3, 63, 63
0018ccbcadd x3, x3, x4, lsr #62
0018ccc0sbfm x3, x3, 2, 63
0018ccc4add x2, x2, x3, lsl #1
0018ccc8add x2, x2, 1
0018ccccsubs xzr, x1, x2
0018ccd0b.le 0x18ccd8
0018ccd4b 0x18cd50
0018ccd8
0018ccd8loc_18ccd8:
0018ccd8add x0, sp, 24
0018ccdcbl sort.(*xorshift).Next
0018cce0str x0, [sp+64]
0018cce4ldr x1, [sp+40]
0018cce8sub x1, x1, 1
0018ccecand x1, x0, x1
0018ccf0str x1, [sp+32]
0018ccf4ldr x1, [sp+48]
0018ccf8ldr x2, [sp+32]
0018ccfcsubs xzr, x1, x2
0018cd00b.le 0x18cd08
0018cd04b 0x18cd1c
0018cd08
0018cd08loc_18cd08:
0018cd08ldr x2, [sp+48]
0018cd0cldr x3, [sp+32]
0018cd10sub x2, x3, x2
0018cd14str x2, [sp+32]
0018cd18b 0x18cd20
0018cd1c
0018cd1cloc_18cd1c:
0018cd1cb 0x18cd20
0018cd20
0018cd20loc_18cd20:
0018cd20ldr x26, [sp+96]
0018cd24ldr x0, [sp+56]
0018cd28ldr x2, [x26]
0018cd2cldr x3, [sp+104]
0018cd30ldr x4, [sp+32]
0018cd34add x1, x3, x4
0018cd38blr x2
0018cd3cb 0x18cd40
0018cd40
0018cd40loc_18cd40:
0018cd40ldr x1, [sp+56]
0018cd44add x1, x1, 1
0018cd48str x1, [sp+56]
0018cd4cb 0x18ccac
0018cd50
0018cd50loc_18cd50:
0018cd50b 0x18cca0
0018cd54
0018cd54loc_18cd54:
0018cd54stp x0, x1, [sp+8]
0018cd58stp x2, x3, [sp+24]
0018cd5cmov x3, x30
0018cd60bl runtime.morestack_noctxt.abi0
0018cd64ldp x0, x1, [sp+8]
0018cd68ldp x2, x3, [sp+24]
0018cd6cb 0x18cc30
0018cc30
0018cd70
0018cd70sort.choosePivot_func: ; void sort.choosePivot_func(sort.lessSwap data, int a, int b)
0018cd70ldr x16, [x28+16]
0018cd74subs xzr, sp, x16
0018cd78b.ls 0x18cf08
0018cd7cstr x30, [sp-128]!
0018cd80stur x29, [sp-8]
0018cd84sub x29, sp, 8
0018cd88str x0, [sp+136]
0018cd8cstr x1, [sp+144]
0018cd90str x2, [sp+152]
0018cd94str x3, [sp+160]
0018cd98str xzr, [sp+64]
0018cd9cstr xzr, [sp+104]
0018cda0sub x6, x3, x2
0018cda4str x6, [sp+72]
0018cda8str xzr, [sp+56]
0018cdacldr x7, [sp+152]
0018cdb0sbfm x8, x6, 63, 63
0018cdb4add x8, x6, x8, lsr #62
0018cdb8add x2, x7, x8, asr #2
0018cdbcstr x2, [sp+96]
0018cdc0ldr x7, [sp+152]
0018cdc4sbfm x8, x6, 63, 63
0018cdc8add x8, x6, x8, lsr #62
0018cdccsbfm x8, x8, 2, 63
0018cdd0add x7, x7, x8, lsl #1
0018cdd4str x7, [sp+88]
0018cdd8ldr x7, [sp+152]
0018cddcsbfm x8, x6, 63, 63
0018cde0add x6, x6, x8, lsr #62
0018cde4sbfm x6, x6, 2, 63
0018cde8add x6, x6, x6, lsl #1
0018cdecadd x6, x7, x6
0018cdf0str x6, [sp+80]
0018cdf4ldr x6, [sp+72]
0018cdf8subs xzr, x6, 8
0018cdfcb.ge 0x18ce04
0018ce00b 0x18ce84
0018ce04
0018ce04loc_18ce04:
0018ce04ldr x6, [sp+72]
0018ce08subs xzr, x6, 50
0018ce0cb.ge 0x18ce14
0018ce10b 0x18ce5c
0018ce14
0018ce14loc_18ce14:
0018ce14ldr x0, [sp+136]
0018ce18ldr x1, [sp+144]
0018ce1cadd x3, sp, 56
0018ce20bl sort.medianAdjacent_func
0018ce24str x0, [sp+96]
0018ce28ldr x2, [sp+88]
0018ce2cldr x0, [sp+136]
0018ce30ldr x1, [sp+144]
0018ce34add x3, sp, 56
0018ce38bl sort.medianAdjacent_func
0018ce3cstr x0, [sp+88]
0018ce40ldr x2, [sp+80]
0018ce44ldr x0, [sp+136]
0018ce48ldr x1, [sp+144]
0018ce4cadd x3, sp, 56
0018ce50bl sort.medianAdjacent_func
0018ce54str x0, [sp+80]
0018ce58b 0x18ce60
0018ce5c
0018ce5cloc_18ce5c:
0018ce5cb 0x18ce60
0018ce60
0018ce60loc_18ce60:
0018ce60ldr x3, [sp+88]
0018ce64ldr x4, [sp+80]
0018ce68ldr x2, [sp+96]
0018ce6cldr x0, [sp+136]
0018ce70ldr x1, [sp+144]
0018ce74add x5, sp, 56
0018ce78bl sort.median_func
0018ce7cstr x0, [sp+88]
0018ce80b 0x18ce88
0018ce84
0018ce84loc_18ce84:
0018ce84b 0x18ce88
0018ce88
0018ce88loc_18ce88:
0018ce88ldr x2, [sp+56]
0018ce8cstr x2, [sp+112]
0018ce90cbz x2, 0x18ce98
0018ce94b 0x18ceb8
0018ce98
0018ce98loc_18ce98:
0018ce98b 0x18ce9c
0018ce9c
0018ce9cloc_18ce9c:
0018ce9cldr x0, [sp+88]
0018cea0str x0, [sp+64]
0018cea4orr x1, xzr, 1
0018cea8str x1, [sp+104]
0018ceacldur x29, [sp-8]
0018ceb0ldr x30, [sp], 128
0018ceb4ret x30
0018ceb8
0018ceb8loc_18ceb8:
0018ceb8subs xzr, x2, 12
0018cebcb.eq 0x18cec4
0018cec0b 0x18cee4
0018cec4
0018cec4loc_18cec4:
0018cec4b 0x18cec8
0018cec8
0018cec8loc_18cec8:
0018cec8ldr x0, [sp+88]
0018ceccstr x0, [sp+64]
0018ced0orr x1, xzr, 2
0018ced4str x1, [sp+104]
0018ced8ldur x29, [sp-8]
0018cedcldr x30, [sp], 128
0018cee0ret x30
0018cee4
0018cee4loc_18cee4:
0018cee4b 0x18cee8
0018cee8
0018cee8loc_18cee8:
0018cee8b 0x18ceec
0018ceec
0018ceecloc_18ceec:
0018ceecldr x0, [sp+88]
0018cef0str x0, [sp+64]
0018cef4str xzr, [sp+104]
0018cef8mov x1, xzr
0018cefcldur x29, [sp-8]
0018cf00ldr x30, [sp], 128
0018cf04ret x30
0018cf08
0018cf08loc_18cf08:
0018cf08stp x0, x1, [sp+8]
0018cf0cstp x2, x3, [sp+24]
0018cf10mov x3, x30
0018cf14bl runtime.morestack_noctxt.abi0
0018cf18ldp x0, x1, [sp+8]
0018cf1cldp x2, x3, [sp+24]
0018cf20b 0x18cd70
0018cf24udf 0
0018cf28udf 0
0018cf2cudf 0
0018cd70
0018cd70sort.choosePivot_func: ; void sort.choosePivot_func(sort.lessSwap data, int a, int b)
0018cd70ldr x16, [x28+16]
0018cd74subs xzr, sp, x16
0018cd78b.ls 0x18cf08
0018cd7cstr x30, [sp-128]!
0018cd80stur x29, [sp-8]
0018cd84sub x29, sp, 8
0018cd88str x0, [sp+136]
0018cd8cstr x1, [sp+144]
0018cd90str x2, [sp+152]
0018cd94str x3, [sp+160]
0018cd98str xzr, [sp+64]
0018cd9cstr xzr, [sp+104]
0018cda0sub x6, x3, x2
0018cda4str x6, [sp+72]
0018cda8str xzr, [sp+56]
0018cdacldr x7, [sp+152]
0018cdb0sbfm x8, x6, 63, 63
0018cdb4add x8, x6, x8, lsr #62
0018cdb8add x2, x7, x8, asr #2
0018cdbcstr x2, [sp+96]
0018cdc0ldr x7, [sp+152]
0018cdc4sbfm x8, x6, 63, 63
0018cdc8add x8, x6, x8, lsr #62
0018cdccsbfm x8, x8, 2, 63
0018cdd0add x7, x7, x8, lsl #1
0018cdd4str x7, [sp+88]
0018cdd8ldr x7, [sp+152]
0018cddcsbfm x8, x6, 63, 63
0018cde0add x6, x6, x8, lsr #62
0018cde4sbfm x6, x6, 2, 63
0018cde8add x6, x6, x6, lsl #1
0018cdecadd x6, x7, x6
0018cdf0str x6, [sp+80]
0018cdf4ldr x6, [sp+72]
0018cdf8subs xzr, x6, 8
0018cdfcb.ge 0x18ce04
0018ce00b 0x18ce84
0018ce04
0018ce04loc_18ce04:
0018ce04ldr x6, [sp+72]
0018ce08subs xzr, x6, 50
0018ce0cb.ge 0x18ce14
0018ce10b 0x18ce5c
0018ce14
0018ce14loc_18ce14:
0018ce14ldr x0, [sp+136]
0018ce18ldr x1, [sp+144]
0018ce1cadd x3, sp, 56
0018ce20bl sort.medianAdjacent_func
0018ce24str x0, [sp+96]
0018ce28ldr x2, [sp+88]
0018ce2cldr x0, [sp+136]
0018ce30ldr x1, [sp+144]
0018ce34add x3, sp, 56
0018ce38bl sort.medianAdjacent_func
0018ce3cstr x0, [sp+88]
0018ce40ldr x2, [sp+80]
0018ce44ldr x0, [sp+136]
0018ce48ldr x1, [sp+144]
0018ce4cadd x3, sp, 56
0018ce50bl sort.medianAdjacent_func
0018ce54str x0, [sp+80]
0018ce58b 0x18ce60
0018ce5c
0018ce5cloc_18ce5c:
0018ce5cb 0x18ce60
0018ce60
0018ce60loc_18ce60:
0018ce60ldr x3, [sp+88]
0018ce64ldr x4, [sp+80]
0018ce68ldr x2, [sp+96]
0018ce6cldr x0, [sp+136]
0018ce70ldr x1, [sp+144]
0018ce74add x5, sp, 56
0018ce78bl sort.median_func
0018ce7cstr x0, [sp+88]
0018ce80b 0x18ce88
0018ce84
0018ce84loc_18ce84:
0018ce84b 0x18ce88
0018ce88
0018ce88loc_18ce88:
0018ce88ldr x2, [sp+56]
0018ce8cstr x2, [sp+112]
0018ce90cbz x2, 0x18ce98
0018ce94b 0x18ceb8
0018ce98
0018ce98loc_18ce98:
0018ce98b 0x18ce9c
0018ce9c
0018ce9cloc_18ce9c:
0018ce9cldr x0, [sp+88]
0018cea0str x0, [sp+64]
0018cea4orr x1, xzr, 1
0018cea8str x1, [sp+104]
0018ceacldur x29, [sp-8]
0018ceb0ldr x30, [sp], 128
0018ceb4ret x30
0018ceb8
0018ceb8loc_18ceb8:
0018ceb8subs xzr, x2, 12
0018cebcb.eq 0x18cec4
0018cec0b 0x18cee4
0018cec4
0018cec4loc_18cec4:
0018cec4b 0x18cec8
0018cec8
0018cec8loc_18cec8:
0018cec8ldr x0, [sp+88]
0018ceccstr x0, [sp+64]
0018ced0orr x1, xzr, 2
0018ced4str x1, [sp+104]
0018ced8ldur x29, [sp-8]
0018cedcldr x30, [sp], 128
0018cee0ret x30
0018cee4
0018cee4loc_18cee4:
0018cee4b 0x18cee8
0018cee8
0018cee8loc_18cee8:
0018cee8b 0x18ceec
0018ceec
0018ceecloc_18ceec:
0018ceecldr x0, [sp+88]
0018cef0str x0, [sp+64]
0018cef4str xzr, [sp+104]
0018cef8mov x1, xzr
0018cefcldur x29, [sp-8]
0018cf00ldr x30, [sp], 128
0018cf04ret x30
0018cf08
0018cf08loc_18cf08:
0018cf08stp x0, x1, [sp+8]
0018cf0cstp x2, x3, [sp+24]
0018cf10mov x3, x30
0018cf14bl runtime.morestack_noctxt.abi0
0018cf18ldp x0, x1, [sp+8]
0018cf1cldp x2, x3, [sp+24]
0018cf20b 0x18cd70
0018cf24udf 0
0018cf28udf 0
0018cf2cudf 0
0018cd70
0018cf30
0018cf30sort.order2_func: ; void sort.order2_func(sort.lessSwap data, int a, int b, int * swaps)
0018cf30ldr x16, [x28+16]
0018cf34subs xzr, sp, x16
0018cf38b.ls 0x18cfd8
0018cf3cstr x30, [sp-64]!
0018cf40stur x29, [sp-8]
0018cf44sub x29, sp, 8
0018cf48str x0, [sp+72]
0018cf4cstr x1, [sp+80]
0018cf50str x2, [sp+88]
0018cf54str x3, [sp+96]
0018cf58str x4, [sp+104]
0018cf5cstr xzr, [sp+48]
0018cf60str xzr, [sp+40]
0018cf64ldr x26, [sp+72]
0018cf68ldr x1, [sp+88]
0018cf6cldr x2, [x26]
0018cf70mov x0, x3
0018cf74blr x2
0018cf78strb w0, [sp+39]
0018cf7ctbnz w0, 0, 0x18cf84
0018cf80b 0x18cfbc
0018cf84
0018cf84loc_18cf84:
0018cf84ldr x2, [sp+104]
0018cf88ldrsb x27, [x2]
0018cf8cldr x3, [sp+104]
0018cf90ldrsb x27, [x3]
0018cf94ldr x3, [x3]
0018cf98add x3, x3, 1
0018cf9cstr x3, [x2]
0018cfa0ldr x0, [sp+96]
0018cfa4str x0, [sp+48]
0018cfa8ldr x1, [sp+88]
0018cfacstr x1, [sp+40]
0018cfb0ldur x29, [sp-8]
0018cfb4ldr x30, [sp], 64
0018cfb8ret x30
0018cfbc
0018cfbcloc_18cfbc:
0018cfbcldr x0, [sp+88]
0018cfc0str x0, [sp+48]
0018cfc4ldr x1, [sp+96]
0018cfc8str x1, [sp+40]
0018cfccldur x29, [sp-8]
0018cfd0ldr x30, [sp], 64
0018cfd4ret x30
0018cfd8
0018cfd8loc_18cfd8:
0018cfd8stp x0, x1, [sp+8]
0018cfdcstp x2, x3, [sp+24]
0018cfe0str x4, [sp+40]
0018cfe4mov x3, x30
0018cfe8bl runtime.morestack_noctxt.abi0
0018cfecldp x0, x1, [sp+8]
0018cff0ldp x2, x3, [sp+24]
0018cff4ldr x4, [sp+40]
0018cff8b 0x18cf30
0018cffcudf 0
0018cf30
0018cf30sort.order2_func: ; void sort.order2_func(sort.lessSwap data, int a, int b, int * swaps)
0018cf30ldr x16, [x28+16]
0018cf34subs xzr, sp, x16
0018cf38b.ls 0x18cfd8
0018cf3cstr x30, [sp-64]!
0018cf40stur x29, [sp-8]
0018cf44sub x29, sp, 8
0018cf48str x0, [sp+72]
0018cf4cstr x1, [sp+80]
0018cf50str x2, [sp+88]
0018cf54str x3, [sp+96]
0018cf58str x4, [sp+104]
0018cf5cstr xzr, [sp+48]
0018cf60str xzr, [sp+40]
0018cf64ldr x26, [sp+72]
0018cf68ldr x1, [sp+88]
0018cf6cldr x2, [x26]
0018cf70mov x0, x3
0018cf74blr x2
0018cf78strb w0, [sp+39]
0018cf7ctbnz w0, 0, 0x18cf84
0018cf80b 0x18cfbc
0018cf84
0018cf84loc_18cf84:
0018cf84ldr x2, [sp+104]
0018cf88ldrsb x27, [x2]
0018cf8cldr x3, [sp+104]
0018cf90ldrsb x27, [x3]
0018cf94ldr x3, [x3]
0018cf98add x3, x3, 1
0018cf9cstr x3, [x2]
0018cfa0ldr x0, [sp+96]
0018cfa4str x0, [sp+48]
0018cfa8ldr x1, [sp+88]
0018cfacstr x1, [sp+40]
0018cfb0ldur x29, [sp-8]
0018cfb4ldr x30, [sp], 64
0018cfb8ret x30
0018cfbc
0018cfbcloc_18cfbc:
0018cfbcldr x0, [sp+88]
0018cfc0str x0, [sp+48]
0018cfc4ldr x1, [sp+96]
0018cfc8str x1, [sp+40]
0018cfccldur x29, [sp-8]
0018cfd0ldr x30, [sp], 64
0018cfd4ret x30
0018cfd8
0018cfd8loc_18cfd8:
0018cfd8stp x0, x1, [sp+8]
0018cfdcstp x2, x3, [sp+24]
0018cfe0str x4, [sp+40]
0018cfe4mov x3, x30
0018cfe8bl runtime.morestack_noctxt.abi0
0018cfecldp x0, x1, [sp+8]
0018cff0ldp x2, x3, [sp+24]
0018cff4ldr x4, [sp+40]
0018cff8b 0x18cf30
0018cffcudf 0
0018cf30
0018d000
0018d000sort.median_func: ; void sort.median_func(sort.lessSwap data, int a, int b, int c, int * swaps)
0018d000ldr x16, [x28+16]
0018d004subs xzr, sp, x16
0018d008b.ls 0x18d0dc
0018d00cstr x30, [sp-128]!
0018d010stur x29, [sp-8]
0018d014sub x29, sp, 8
0018d018str x0, [sp+136]
0018d01cstr x1, [sp+144]
0018d020str x2, [sp+152]
0018d024str x3, [sp+160]
0018d028str x4, [sp+168]
0018d02cstr x5, [sp+176]
0018d030str xzr, [sp+48]
0018d034ldr x2, [sp+152]
0018d038ldr x0, [sp+136]
0018d03cldr x1, [sp+144]
0018d040mov x4, x5
0018d044bl sort.order2_func
0018d048str x0, [sp+96]
0018d04cstr x1, [sp+88]
0018d050str x0, [sp+80]
0018d054str x1, [sp+72]
0018d058str x0, [sp+152]
0018d05cstr x1, [sp+160]
0018d060ldr x3, [sp+168]
0018d064ldr x4, [sp+176]
0018d068ldr x0, [sp+136]
0018d06cldr x5, [sp+144]
0018d070mov x2, x1
0018d074mov x1, x5
0018d078bl sort.order2_func
0018d07cstr x0, [sp+88]
0018d080str x1, [sp+96]
0018d084str x0, [sp+64]
0018d088str x1, [sp+56]
0018d08cstr x0, [sp+160]
0018d090str x1, [sp+168]
0018d094ldr x4, [sp+176]
0018d098ldr x2, [sp+152]
0018d09cldr x5, [sp+136]
0018d0a0ldr x1, [sp+144]
0018d0a4mov x3, x0
0018d0a8mov x0, x5
0018d0acbl sort.order2_func
0018d0b0str x0, [sp+96]
0018d0b4str x1, [sp+88]
0018d0b8str x0, [sp+112]
0018d0bcstr x1, [sp+104]
0018d0c0str x0, [sp+152]
0018d0c4str x1, [sp+160]
0018d0c8str x1, [sp+48]
0018d0ccmov x0, x1
0018d0d0ldur x29, [sp-8]
0018d0d4ldr x30, [sp], 128
0018d0d8ret x30
0018d0dc
0018d0dcloc_18d0dc:
0018d0dcstp x0, x1, [sp+8]
0018d0e0stp x2, x3, [sp+24]
0018d0e4stp x4, x5, [sp+40]
0018d0e8mov x3, x30
0018d0ecbl runtime.morestack_noctxt.abi0
0018d0f0ldp x0, x1, [sp+8]
0018d0f4ldp x2, x3, [sp+24]
0018d0f8ldp x4, x5, [sp+40]
0018d0fcb 0x18d000
0018d000
0018d000sort.median_func: ; void sort.median_func(sort.lessSwap data, int a, int b, int c, int * swaps)
0018d000ldr x16, [x28+16]
0018d004subs xzr, sp, x16
0018d008b.ls 0x18d0dc
0018d00cstr x30, [sp-128]!
0018d010stur x29, [sp-8]
0018d014sub x29, sp, 8
0018d018str x0, [sp+136]
0018d01cstr x1, [sp+144]
0018d020str x2, [sp+152]
0018d024str x3, [sp+160]
0018d028str x4, [sp+168]
0018d02cstr x5, [sp+176]
0018d030str xzr, [sp+48]
0018d034ldr x2, [sp+152]
0018d038ldr x0, [sp+136]
0018d03cldr x1, [sp+144]
0018d040mov x4, x5
0018d044bl sort.order2_func
0018d048str x0, [sp+96]
0018d04cstr x1, [sp+88]
0018d050str x0, [sp+80]
0018d054str x1, [sp+72]
0018d058str x0, [sp+152]
0018d05cstr x1, [sp+160]
0018d060ldr x3, [sp+168]
0018d064ldr x4, [sp+176]
0018d068ldr x0, [sp+136]
0018d06cldr x5, [sp+144]
0018d070mov x2, x1
0018d074mov x1, x5
0018d078bl sort.order2_func
0018d07cstr x0, [sp+88]
0018d080str x1, [sp+96]
0018d084str x0, [sp+64]
0018d088str x1, [sp+56]
0018d08cstr x0, [sp+160]
0018d090str x1, [sp+168]
0018d094ldr x4, [sp+176]
0018d098ldr x2, [sp+152]
0018d09cldr x5, [sp+136]
0018d0a0ldr x1, [sp+144]
0018d0a4mov x3, x0
0018d0a8mov x0, x5
0018d0acbl sort.order2_func
0018d0b0str x0, [sp+96]
0018d0b4str x1, [sp+88]
0018d0b8str x0, [sp+112]
0018d0bcstr x1, [sp+104]
0018d0c0str x0, [sp+152]
0018d0c4str x1, [sp+160]
0018d0c8str x1, [sp+48]
0018d0ccmov x0, x1
0018d0d0ldur x29, [sp-8]
0018d0d4ldr x30, [sp], 128
0018d0d8ret x30
0018d0dc
0018d0dcloc_18d0dc:
0018d0dcstp x0, x1, [sp+8]
0018d0e0stp x2, x3, [sp+24]
0018d0e4stp x4, x5, [sp+40]
0018d0e8mov x3, x30
0018d0ecbl runtime.morestack_noctxt.abi0
0018d0f0ldp x0, x1, [sp+8]
0018d0f4ldp x2, x3, [sp+24]
0018d0f8ldp x4, x5, [sp+40]
0018d0fcb 0x18d000
0018d000
0018d100
0018d100sort.medianAdjacent_func: ; void sort.medianAdjacent_func(sort.lessSwap data, int a, int * swaps)
0018d100ldr x16, [x28+16]
0018d104subs xzr, sp, x16
0018d108b.ls 0x18d15c
0018d10cstr x30, [sp-80]!
0018d110stur x29, [sp-8]
0018d114sub x29, sp, 8
0018d118str x0, [sp+88]
0018d11cstr x1, [sp+96]
0018d120str x2, [sp+104]
0018d124str x3, [sp+112]
0018d128str xzr, [sp+56]
0018d12cldr x0, [sp+88]
0018d130sub x6, x2, 1
0018d134add x4, x2, 1
0018d138mov x5, x3
0018d13cmov x3, x2
0018d140mov x2, x6
0018d144bl sort.median_func
0018d148str x0, [sp+64]
0018d14cstr x0, [sp+56]
0018d150ldur x29, [sp-8]
0018d154ldr x30, [sp], 80
0018d158ret x30
0018d15c
0018d15cloc_18d15c:
0018d15cstp x0, x1, [sp+8]
0018d160stp x2, x3, [sp+24]
0018d164mov x3, x30
0018d168bl runtime.morestack_noctxt.abi0
0018d16cldp x0, x1, [sp+8]
0018d170ldp x2, x3, [sp+24]
0018d174b 0x18d100
0018d178udf 0
0018d17cudf 0
0018d100
0018d100sort.medianAdjacent_func: ; void sort.medianAdjacent_func(sort.lessSwap data, int a, int * swaps)
0018d100ldr x16, [x28+16]
0018d104subs xzr, sp, x16
0018d108b.ls 0x18d15c
0018d10cstr x30, [sp-80]!
0018d110stur x29, [sp-8]
0018d114sub x29, sp, 8
0018d118str x0, [sp+88]
0018d11cstr x1, [sp+96]
0018d120str x2, [sp+104]
0018d124str x3, [sp+112]
0018d128str xzr, [sp+56]
0018d12cldr x0, [sp+88]
0018d130sub x6, x2, 1
0018d134add x4, x2, 1
0018d138mov x5, x3
0018d13cmov x3, x2
0018d140mov x2, x6
0018d144bl sort.median_func
0018d148str x0, [sp+64]
0018d14cstr x0, [sp+56]
0018d150ldur x29, [sp-8]
0018d154ldr x30, [sp], 80
0018d158ret x30
0018d15c
0018d15cloc_18d15c:
0018d15cstp x0, x1, [sp+8]
0018d160stp x2, x3, [sp+24]
0018d164mov x3, x30
0018d168bl runtime.morestack_noctxt.abi0
0018d16cldp x0, x1, [sp+8]
0018d170ldp x2, x3, [sp+24]
0018d174b 0x18d100
0018d178udf 0
0018d17cudf 0
0018d100
0018d180
0018d180sort.reverseRange_func: ; void sort.reverseRange_func(sort.lessSwap data, int a, int b)
0018d180ldr x16, [x28+16]
0018d184subs xzr, sp, x16
0018d188b.ls 0x18d20c
0018d18cstr x30, [sp-48]!
0018d190stur x29, [sp-8]
0018d194sub x29, sp, 8
0018d198str x0, [sp+56]
0018d19cstr x1, [sp+64]
0018d1a0str x2, [sp+72]
0018d1a4str x3, [sp+80]
0018d1a8str x2, [sp+32]
0018d1acsub x2, x3, 1
0018d1b0str x2, [sp+24]
0018d1b4b 0x18d1b8
0018d1b8
0018d1b8loc_18d1b8:
0018d1b8ldr x2, [sp+24]
0018d1bcldr x3, [sp+32]
0018d1c0subs xzr, x2, x3
0018d1c4b.gt 0x18d1cc
0018d1c8b 0x18d200
0018d1cc
0018d1ccloc_18d1cc:
0018d1ccldr x26, [sp+64]
0018d1d0ldr x0, [sp+32]
0018d1d4ldr x1, [sp+24]
0018d1d8ldr x2, [x26]
0018d1dcblr x2
0018d1e0ldr x2, [sp+32]
0018d1e4add x2, x2, 1
0018d1e8str x2, [sp+32]
0018d1ecldr x2, [sp+24]
0018d1f0sub x2, x2, 1
0018d1f4str x2, [sp+24]
0018d1f8b 0x18d1fc
0018d1fc
0018d1fcloc_18d1fc:
0018d1fcb 0x18d1b8
0018d200
0018d200loc_18d200:
0018d200ldur x29, [sp-8]
0018d204ldr x30, [sp], 48
0018d208ret x30
0018d20c
0018d20cloc_18d20c:
0018d20cstp x0, x1, [sp+8]
0018d210stp x2, x3, [sp+24]
0018d214mov x3, x30
0018d218bl runtime.morestack_noctxt.abi0
0018d21cldp x0, x1, [sp+8]
0018d220ldp x2, x3, [sp+24]
0018d224b 0x18d180
0018d228udf 0
0018d22cudf 0
0018d180
0018d180sort.reverseRange_func: ; void sort.reverseRange_func(sort.lessSwap data, int a, int b)
0018d180ldr x16, [x28+16]
0018d184subs xzr, sp, x16
0018d188b.ls 0x18d20c
0018d18cstr x30, [sp-48]!
0018d190stur x29, [sp-8]
0018d194sub x29, sp, 8
0018d198str x0, [sp+56]
0018d19cstr x1, [sp+64]
0018d1a0str x2, [sp+72]
0018d1a4str x3, [sp+80]
0018d1a8str x2, [sp+32]
0018d1acsub x2, x3, 1
0018d1b0str x2, [sp+24]
0018d1b4b 0x18d1b8
0018d1b8
0018d1b8loc_18d1b8:
0018d1b8ldr x2, [sp+24]
0018d1bcldr x3, [sp+32]
0018d1c0subs xzr, x2, x3
0018d1c4b.gt 0x18d1cc
0018d1c8b 0x18d200
0018d1cc
0018d1ccloc_18d1cc:
0018d1ccldr x26, [sp+64]
0018d1d0ldr x0, [sp+32]
0018d1d4ldr x1, [sp+24]
0018d1d8ldr x2, [x26]
0018d1dcblr x2
0018d1e0ldr x2, [sp+32]
0018d1e4add x2, x2, 1
0018d1e8str x2, [sp+32]
0018d1ecldr x2, [sp+24]
0018d1f0sub x2, x2, 1
0018d1f4str x2, [sp+24]
0018d1f8b 0x18d1fc
0018d1fc
0018d1fcloc_18d1fc:
0018d1fcb 0x18d1b8
0018d200
0018d200loc_18d200:
0018d200ldur x29, [sp-8]
0018d204ldr x30, [sp], 48
0018d208ret x30
0018d20c
0018d20cloc_18d20c:
0018d20cstp x0, x1, [sp+8]
0018d210stp x2, x3, [sp+24]
0018d214mov x3, x30
0018d218bl runtime.morestack_noctxt.abi0
0018d21cldp x0, x1, [sp+8]
0018d220ldp x2, x3, [sp+24]
0018d224b 0x18d180
0018d228udf 0
0018d22cudf 0
0018d180
0018d230
0018d230sort.insertionSort: ; void sort.insertionSort(sort.Interface data, int a, int b)
0018d230ldr x16, [x28+16]
0018d234subs xzr, sp, x16
0018d238b.ls 0x18d330
0018d23cstr x30, [sp-64]!
0018d240stur x29, [sp-8]
0018d244sub x29, sp, 8
0018d248str x0, [sp+72]
0018d24cstr x1, [sp+80]
0018d250str x2, [sp+88]
0018d254str x3, [sp+96]
0018d258add x3, x2, 1
0018d25cstr x3, [sp+48]
0018d260b 0x18d264
0018d264
0018d264loc_18d264:
0018d264ldr x3, [sp+96]
0018d268ldr x4, [sp+48]
0018d26csubs xzr, x3, x4
0018d270b.gt 0x18d278
0018d274b 0x18d284
0018d278
0018d278loc_18d278:
0018d278ldr x3, [sp+48]
0018d27cstr x3, [sp+40]
0018d280b 0x18d290
0018d284
0018d284loc_18d284:
0018d284ldur x29, [sp-8]
0018d288ldr x30, [sp], 64
0018d28cret x30
0018d290
0018d290loc_18d290:
0018d290ldr x3, [sp+88]
0018d294ldr x4, [sp+40]
0018d298subs xzr, x3, x4
0018d29ccset x3, lt
0018d2a0strb w3, [sp+39]
0018d2a4b.lt 0x18d2ac
0018d2a8b 0x18d2d8
0018d2ac
0018d2acloc_18d2ac:
0018d2acldr x3, [sp+72]
0018d2b0ldrsb x27, [x3]
0018d2b4ldr x1, [sp+40]
0018d2b8ldr x0, [sp+80]
0018d2bcldr x3, [x3+32]
0018d2c0ldr x4, [sp+40]
0018d2c4sub x2, x4, 1
0018d2c8blr x3
0018d2ccstrb w0, [sp+38]
0018d2d0strb w0, [sp+39]
0018d2d4b 0x18d2dc
0018d2d8
0018d2d8loc_18d2d8:
0018d2d8b 0x18d2dc
0018d2dc
0018d2dcloc_18d2dc:
0018d2dcldrb w3, [sp+39]
0018d2e0tbnz w3, 0, 0x18d2e8
0018d2e4b 0x18d31c
0018d2e8
0018d2e8loc_18d2e8:
0018d2e8ldr x1, [sp+40]
0018d2ecldr x3, [sp+72]
0018d2f0ldrsb x27, [x3]
0018d2f4ldr x3, [x3+40]
0018d2f8ldr x0, [sp+80]
0018d2fcldr x4, [sp+40]
0018d300sub x2, x4, 1
0018d304blr x3
0018d308b 0x18d30c
0018d30c
0018d30cloc_18d30c:
0018d30cldr x3, [sp+40]
0018d310sub x3, x3, 1
0018d314str x3, [sp+40]
0018d318b 0x18d290
0018d31c
0018d31cloc_18d31c:
0018d31cb 0x18d320
0018d320
0018d320loc_18d320:
0018d320ldr x3, [sp+48]
0018d324add x3, x3, 1
0018d328str x3, [sp+48]
0018d32cb 0x18d264
0018d330
0018d330loc_18d330:
0018d330stp x0, x1, [sp+8]
0018d334stp x2, x3, [sp+24]
0018d338mov x3, x30
0018d33cbl runtime.morestack_noctxt.abi0
0018d340ldp x0, x1, [sp+8]
0018d344ldp x2, x3, [sp+24]
0018d348b 0x18d230
0018d34cudf 0
0018d230
0018d230sort.insertionSort: ; void sort.insertionSort(sort.Interface data, int a, int b)
0018d230ldr x16, [x28+16]
0018d234subs xzr, sp, x16
0018d238b.ls 0x18d330
0018d23cstr x30, [sp-64]!
0018d240stur x29, [sp-8]
0018d244sub x29, sp, 8
0018d248str x0, [sp+72]
0018d24cstr x1, [sp+80]
0018d250str x2, [sp+88]
0018d254str x3, [sp+96]
0018d258add x3, x2, 1
0018d25cstr x3, [sp+48]
0018d260b 0x18d264
0018d264
0018d264loc_18d264:
0018d264ldr x3, [sp+96]
0018d268ldr x4, [sp+48]
0018d26csubs xzr, x3, x4
0018d270b.gt 0x18d278
0018d274b 0x18d284
0018d278
0018d278loc_18d278:
0018d278ldr x3, [sp+48]
0018d27cstr x3, [sp+40]
0018d280b 0x18d290
0018d284
0018d284loc_18d284:
0018d284ldur x29, [sp-8]
0018d288ldr x30, [sp], 64
0018d28cret x30
0018d290
0018d290loc_18d290:
0018d290ldr x3, [sp+88]
0018d294ldr x4, [sp+40]
0018d298subs xzr, x3, x4
0018d29ccset x3, lt
0018d2a0strb w3, [sp+39]
0018d2a4b.lt 0x18d2ac
0018d2a8b 0x18d2d8
0018d2ac
0018d2acloc_18d2ac:
0018d2acldr x3, [sp+72]
0018d2b0ldrsb x27, [x3]
0018d2b4ldr x1, [sp+40]
0018d2b8ldr x0, [sp+80]
0018d2bcldr x3, [x3+32]
0018d2c0ldr x4, [sp+40]
0018d2c4sub x2, x4, 1
0018d2c8blr x3
0018d2ccstrb w0, [sp+38]
0018d2d0strb w0, [sp+39]
0018d2d4b 0x18d2dc
0018d2d8
0018d2d8loc_18d2d8:
0018d2d8b 0x18d2dc
0018d2dc
0018d2dcloc_18d2dc:
0018d2dcldrb w3, [sp+39]
0018d2e0tbnz w3, 0, 0x18d2e8
0018d2e4b 0x18d31c
0018d2e8
0018d2e8loc_18d2e8:
0018d2e8ldr x1, [sp+40]
0018d2ecldr x3, [sp+72]
0018d2f0ldrsb x27, [x3]
0018d2f4ldr x3, [x3+40]
0018d2f8ldr x0, [sp+80]
0018d2fcldr x4, [sp+40]
0018d300sub x2, x4, 1
0018d304blr x3
0018d308b 0x18d30c
0018d30c
0018d30cloc_18d30c:
0018d30cldr x3, [sp+40]
0018d310sub x3, x3, 1
0018d314str x3, [sp+40]
0018d318b 0x18d290
0018d31c
0018d31cloc_18d31c:
0018d31cb 0x18d320
0018d320
0018d320loc_18d320:
0018d320ldr x3, [sp+48]
0018d324add x3, x3, 1
0018d328str x3, [sp+48]
0018d32cb 0x18d264
0018d330
0018d330loc_18d330:
0018d330stp x0, x1, [sp+8]
0018d334stp x2, x3, [sp+24]
0018d338mov x3, x30
0018d33cbl runtime.morestack_noctxt.abi0
0018d340ldp x0, x1, [sp+8]
0018d344ldp x2, x3, [sp+24]
0018d348b 0x18d230
0018d34cudf 0
0018d230
0018d350
0018d350sort.siftDown: ; void sort.siftDown(sort.Interface data, int lo, int hi, int first)
0018d350ldr x16, [x28+16]
0018d354subs xzr, sp, x16
0018d358b.ls 0x18d4b4
0018d35cstr x30, [sp-64]!
0018d360stur x29, [sp-8]
0018d364sub x29, sp, 8
0018d368str x0, [sp+72]
0018d36cstr x1, [sp+80]
0018d370str x2, [sp+88]
0018d374str x3, [sp+96]
0018d378str x4, [sp+104]
0018d37cstr x2, [sp+40]
0018d380b 0x18d384
0018d384
0018d384loc_18d384:
0018d384b 0x18d388
0018d388
0018d388loc_18d388:
0018d388ldr x3, [sp+40]
0018d38cubfm x3, x3, 63, 62
0018d390add x4, x3, 1
0018d394str x4, [sp+48]
0018d398ldr x5, [sp+96]
0018d39csubs xzr, x5, x4
0018d3a0b.le 0x18d3a8
0018d3a4b 0x18d3b8
0018d3a8
0018d3a8loc_18d3a8:
0018d3a8b 0x18d3ac
0018d3ac
0018d3acloc_18d3ac:
0018d3acldur x29, [sp-8]
0018d3b0ldr x30, [sp], 64
0018d3b4ret x30
0018d3b8
0018d3b8loc_18d3b8:
0018d3b8add x3, x3, 2
0018d3bcldr x4, [sp+96]
0018d3c0subs xzr, x4, x3
0018d3c4cset x3, gt
0018d3c8strb w3, [sp+39]
0018d3ccb.gt 0x18d3d4
0018d3d0b 0x18d410
0018d3d4
0018d3d4loc_18d3d4:
0018d3d4ldr x3, [sp+72]
0018d3d8ldrsb x27, [x3]
0018d3dcldr x0, [sp+80]
0018d3e0ldr x3, [x3+32]
0018d3e4ldr x4, [sp+104]
0018d3e8ldr x5, [sp+48]
0018d3ecadd x1, x4, x5
0018d3f0ldr x4, [sp+104]
0018d3f4ldr x5, [sp+48]
0018d3f8add x4, x4, x5
0018d3fcadd x2, x4, 1
0018d400blr x3
0018d404strb w0, [sp+38]
0018d408strb w0, [sp+39]
0018d40cb 0x18d414
0018d410
0018d410loc_18d410:
0018d410b 0x18d414
0018d414
0018d414loc_18d414:
0018d414ldrb w3, [sp+39]
0018d418tbnz w3, 0, 0x18d420
0018d41cb 0x18d430
0018d420
0018d420loc_18d420:
0018d420ldr x3, [sp+48]
0018d424add x3, x3, 1
0018d428str x3, [sp+48]
0018d42cb 0x18d434
0018d430
0018d430loc_18d430:
0018d430b 0x18d434
0018d434
0018d434loc_18d434:
0018d434ldr x3, [sp+72]
0018d438ldrsb x27, [x3]
0018d43cldr x3, [x3+32]
0018d440ldr x0, [sp+80]
0018d444ldr x4, [sp+104]
0018d448ldr x5, [sp+40]
0018d44cadd x1, x4, x5
0018d450ldr x4, [sp+104]
0018d454ldr x5, [sp+48]
0018d458add x2, x4, x5
0018d45cblr x3
0018d460strb w0, [sp+39]
0018d464tbnz w0, 0, 0x18d46c
0018d468b 0x18d4a8
0018d46c
0018d46cloc_18d46c:
0018d46cldr x3, [sp+72]
0018d470ldrsb x27, [x3]
0018d474ldr x3, [x3+40]
0018d478ldr x0, [sp+80]
0018d47cldr x4, [sp+104]
0018d480ldr x5, [sp+40]
0018d484add x1, x4, x5
0018d488ldr x4, [sp+104]
0018d48cldr x5, [sp+48]
0018d490add x2, x4, x5
0018d494blr x3
0018d498ldr x3, [sp+48]
0018d49cstr x3, [sp+40]
0018d4a0b 0x18d4a4
0018d4a4
0018d4a4loc_18d4a4:
0018d4a4b 0x18d384
0018d4a8
0018d4a8loc_18d4a8:
0018d4a8ldur x29, [sp-8]
0018d4acldr x30, [sp], 64
0018d4b0ret x30
0018d4b4
0018d4b4loc_18d4b4:
0018d4b4stp x0, x1, [sp+8]
0018d4b8stp x2, x3, [sp+24]
0018d4bcstr x4, [sp+40]
0018d4c0mov x3, x30
0018d4c4bl runtime.morestack_noctxt.abi0
0018d4c8ldp x0, x1, [sp+8]
0018d4ccldp x2, x3, [sp+24]
0018d4d0ldr x4, [sp+40]
0018d4d4b 0x18d350
0018d4d8udf 0
0018d4dcudf 0
0018d350
0018d350sort.siftDown: ; void sort.siftDown(sort.Interface data, int lo, int hi, int first)
0018d350ldr x16, [x28+16]
0018d354subs xzr, sp, x16
0018d358b.ls 0x18d4b4
0018d35cstr x30, [sp-64]!
0018d360stur x29, [sp-8]
0018d364sub x29, sp, 8
0018d368str x0, [sp+72]
0018d36cstr x1, [sp+80]
0018d370str x2, [sp+88]
0018d374str x3, [sp+96]
0018d378str x4, [sp+104]
0018d37cstr x2, [sp+40]
0018d380b 0x18d384
0018d384
0018d384loc_18d384:
0018d384b 0x18d388
0018d388
0018d388loc_18d388:
0018d388ldr x3, [sp+40]
0018d38cubfm x3, x3, 63, 62
0018d390add x4, x3, 1
0018d394str x4, [sp+48]
0018d398ldr x5, [sp+96]
0018d39csubs xzr, x5, x4
0018d3a0b.le 0x18d3a8
0018d3a4b 0x18d3b8
0018d3a8
0018d3a8loc_18d3a8:
0018d3a8b 0x18d3ac
0018d3ac
0018d3acloc_18d3ac:
0018d3acldur x29, [sp-8]
0018d3b0ldr x30, [sp], 64
0018d3b4ret x30
0018d3b8
0018d3b8loc_18d3b8:
0018d3b8add x3, x3, 2
0018d3bcldr x4, [sp+96]
0018d3c0subs xzr, x4, x3
0018d3c4cset x3, gt
0018d3c8strb w3, [sp+39]
0018d3ccb.gt 0x18d3d4
0018d3d0b 0x18d410
0018d3d4
0018d3d4loc_18d3d4:
0018d3d4ldr x3, [sp+72]
0018d3d8ldrsb x27, [x3]
0018d3dcldr x0, [sp+80]
0018d3e0ldr x3, [x3+32]
0018d3e4ldr x4, [sp+104]
0018d3e8ldr x5, [sp+48]
0018d3ecadd x1, x4, x5
0018d3f0ldr x4, [sp+104]
0018d3f4ldr x5, [sp+48]
0018d3f8add x4, x4, x5
0018d3fcadd x2, x4, 1
0018d400blr x3
0018d404strb w0, [sp+38]
0018d408strb w0, [sp+39]
0018d40cb 0x18d414
0018d410
0018d410loc_18d410:
0018d410b 0x18d414
0018d414
0018d414loc_18d414:
0018d414ldrb w3, [sp+39]
0018d418tbnz w3, 0, 0x18d420
0018d41cb 0x18d430
0018d420
0018d420loc_18d420:
0018d420ldr x3, [sp+48]
0018d424add x3, x3, 1
0018d428str x3, [sp+48]
0018d42cb 0x18d434
0018d430
0018d430loc_18d430:
0018d430b 0x18d434
0018d434
0018d434loc_18d434:
0018d434ldr x3, [sp+72]
0018d438ldrsb x27, [x3]
0018d43cldr x3, [x3+32]
0018d440ldr x0, [sp+80]
0018d444ldr x4, [sp+104]
0018d448ldr x5, [sp+40]
0018d44cadd x1, x4, x5
0018d450ldr x4, [sp+104]
0018d454ldr x5, [sp+48]
0018d458add x2, x4, x5
0018d45cblr x3
0018d460strb w0, [sp+39]
0018d464tbnz w0, 0, 0x18d46c
0018d468b 0x18d4a8
0018d46c
0018d46cloc_18d46c:
0018d46cldr x3, [sp+72]
0018d470ldrsb x27, [x3]
0018d474ldr x3, [x3+40]
0018d478ldr x0, [sp+80]
0018d47cldr x4, [sp+104]
0018d480ldr x5, [sp+40]
0018d484add x1, x4, x5
0018d488ldr x4, [sp+104]
0018d48cldr x5, [sp+48]
0018d490add x2, x4, x5
0018d494blr x3
0018d498ldr x3, [sp+48]
0018d49cstr x3, [sp+40]
0018d4a0b 0x18d4a4
0018d4a4
0018d4a4loc_18d4a4:
0018d4a4b 0x18d384
0018d4a8
0018d4a8loc_18d4a8:
0018d4a8ldur x29, [sp-8]
0018d4acldr x30, [sp], 64
0018d4b0ret x30
0018d4b4
0018d4b4loc_18d4b4:
0018d4b4stp x0, x1, [sp+8]
0018d4b8stp x2, x3, [sp+24]
0018d4bcstr x4, [sp+40]
0018d4c0mov x3, x30
0018d4c4bl runtime.morestack_noctxt.abi0
0018d4c8ldp x0, x1, [sp+8]
0018d4ccldp x2, x3, [sp+24]
0018d4d0ldr x4, [sp+40]
0018d4d4b 0x18d350
0018d4d8udf 0
0018d4dcudf 0
0018d350
0018d4e0
0018d4e0sort.heapSort: ; void sort.heapSort(sort.Interface data, int a, int b)
0018d4e0ldr x16, [x28+16]
0018d4e4subs xzr, sp, x16
0018d4e8b.ls 0x18d5e0
0018d4ecstr x30, [sp-96]!
0018d4f0stur x29, [sp-8]
0018d4f4sub x29, sp, 8
0018d4f8str x0, [sp+104]
0018d4fcstr x1, [sp+112]
0018d500str x2, [sp+120]
0018d504str x3, [sp+128]
0018d508str x2, [sp+80]
0018d50cstr xzr, [sp+48]
0018d510sub x5, x3, x2
0018d514str x5, [sp+72]
0018d518sub x6, x5, 1
0018d51cadd x5, x5, x6, lsr #63
0018d520sub x5, x5, 1
0018d524sbfm x5, x5, 1, 63
0018d528str x5, [sp+64]
0018d52cb 0x18d530
0018d530
0018d530loc_18d530:
0018d530ldr x5, [sp+64]
0018d534tbz x5, 63, 0x18d53c
0018d538b 0x18d568
0018d53c
0018d53cloc_18d53c:
0018d53cldr x3, [sp+72]
0018d540ldr x4, [sp+80]
0018d544ldr x2, [sp+64]
0018d548ldr x0, [sp+104]
0018d54cldr x1, [sp+112]
0018d550bl sort.siftDown
0018d554b 0x18d558
0018d558
0018d558loc_18d558:
0018d558ldr x5, [sp+64]
0018d55csub x5, x5, 1
0018d560str x5, [sp+64]
0018d564b 0x18d530
0018d568
0018d568loc_18d568:
0018d568ldr x3, [sp+72]
0018d56csub x3, x3, 1
0018d570str x3, [sp+56]
0018d574b 0x18d578
0018d578
0018d578loc_18d578:
0018d578ldr x3, [sp+56]
0018d57ctbz x3, 63, 0x18d584
0018d580b 0x18d5d4
0018d584
0018d584loc_18d584:
0018d584ldr x1, [sp+80]
0018d588ldr x3, [sp+104]
0018d58cldrsb x27, [x3]
0018d590ldr x3, [x3+40]
0018d594ldr x0, [sp+112]
0018d598ldr x4, [sp+80]
0018d59cldr x5, [sp+56]
0018d5a0add x2, x4, x5
0018d5a4blr x3
0018d5a8ldr x3, [sp+56]
0018d5acldr x4, [sp+80]
0018d5b0ldr x2, [sp+48]
0018d5b4ldr x0, [sp+104]
0018d5b8ldr x1, [sp+112]
0018d5bcbl sort.siftDown
0018d5c0b 0x18d5c4
0018d5c4
0018d5c4loc_18d5c4:
0018d5c4ldr x3, [sp+56]
0018d5c8sub x3, x3, 1
0018d5ccstr x3, [sp+56]
0018d5d0b 0x18d578
0018d5d4
0018d5d4loc_18d5d4:
0018d5d4ldur x29, [sp-8]
0018d5d8ldr x30, [sp], 96
0018d5dcret x30
0018d5e0
0018d5e0loc_18d5e0:
0018d5e0stp x0, x1, [sp+8]
0018d5e4stp x2, x3, [sp+24]
0018d5e8mov x3, x30
0018d5ecbl runtime.morestack_noctxt.abi0
0018d5f0ldp x0, x1, [sp+8]
0018d5f4ldp x2, x3, [sp+24]
0018d5f8b 0x18d4e0
0018d5fcudf 0
0018d4e0
0018d4e0sort.heapSort: ; void sort.heapSort(sort.Interface data, int a, int b)
0018d4e0ldr x16, [x28+16]
0018d4e4subs xzr, sp, x16
0018d4e8b.ls 0x18d5e0
0018d4ecstr x30, [sp-96]!
0018d4f0stur x29, [sp-8]
0018d4f4sub x29, sp, 8
0018d4f8str x0, [sp+104]
0018d4fcstr x1, [sp+112]
0018d500str x2, [sp+120]
0018d504str x3, [sp+128]
0018d508str x2, [sp+80]
0018d50cstr xzr, [sp+48]
0018d510sub x5, x3, x2
0018d514str x5, [sp+72]
0018d518sub x6, x5, 1
0018d51cadd x5, x5, x6, lsr #63
0018d520sub x5, x5, 1
0018d524sbfm x5, x5, 1, 63
0018d528str x5, [sp+64]
0018d52cb 0x18d530
0018d530
0018d530loc_18d530:
0018d530ldr x5, [sp+64]
0018d534tbz x5, 63, 0x18d53c
0018d538b 0x18d568
0018d53c
0018d53cloc_18d53c:
0018d53cldr x3, [sp+72]
0018d540ldr x4, [sp+80]
0018d544ldr x2, [sp+64]
0018d548ldr x0, [sp+104]
0018d54cldr x1, [sp+112]
0018d550bl sort.siftDown
0018d554b 0x18d558
0018d558
0018d558loc_18d558:
0018d558ldr x5, [sp+64]
0018d55csub x5, x5, 1
0018d560str x5, [sp+64]
0018d564b 0x18d530
0018d568
0018d568loc_18d568:
0018d568ldr x3, [sp+72]
0018d56csub x3, x3, 1
0018d570str x3, [sp+56]
0018d574b 0x18d578
0018d578
0018d578loc_18d578:
0018d578ldr x3, [sp+56]
0018d57ctbz x3, 63, 0x18d584
0018d580b 0x18d5d4
0018d584
0018d584loc_18d584:
0018d584ldr x1, [sp+80]
0018d588ldr x3, [sp+104]
0018d58cldrsb x27, [x3]
0018d590ldr x3, [x3+40]
0018d594ldr x0, [sp+112]
0018d598ldr x4, [sp+80]
0018d59cldr x5, [sp+56]
0018d5a0add x2, x4, x5
0018d5a4blr x3
0018d5a8ldr x3, [sp+56]
0018d5acldr x4, [sp+80]
0018d5b0ldr x2, [sp+48]
0018d5b4ldr x0, [sp+104]
0018d5b8ldr x1, [sp+112]
0018d5bcbl sort.siftDown
0018d5c0b 0x18d5c4
0018d5c4
0018d5c4loc_18d5c4:
0018d5c4ldr x3, [sp+56]
0018d5c8sub x3, x3, 1
0018d5ccstr x3, [sp+56]
0018d5d0b 0x18d578
0018d5d4
0018d5d4loc_18d5d4:
0018d5d4ldur x29, [sp-8]
0018d5d8ldr x30, [sp], 96
0018d5dcret x30
0018d5e0
0018d5e0loc_18d5e0:
0018d5e0stp x0, x1, [sp+8]
0018d5e4stp x2, x3, [sp+24]
0018d5e8mov x3, x30
0018d5ecbl runtime.morestack_noctxt.abi0
0018d5f0ldp x0, x1, [sp+8]
0018d5f4ldp x2, x3, [sp+24]
0018d5f8b 0x18d4e0
0018d5fcudf 0
0018d4e0
0018d600
0018d600sort.pdqsort: ; void sort.pdqsort(sort.Interface data, int a, int b, int limit)
0018d600ldr x16, [x28+16]
0018d604sub x17, sp, 48
0018d608subs xzr, x17, x16
0018d60cb.ls 0x18d950
0018d610str x30, [sp-176]!
0018d614stur x29, [sp-8]
0018d618sub x29, sp, 8
0018d61cstr x0, [sp+184]
0018d620str x1, [sp+192]
0018d624str x2, [sp+200]
0018d628str x3, [sp+208]
0018d62cstr x4, [sp+216]
0018d630orr x4, xzr, 1
0018d634strb w4, [sp+59]
0018d638strb w4, [sp+58]
0018d63cb 0x18d640
0018d640
0018d640loc_18d640:
0018d640b 0x18d644
0018d644
0018d644loc_18d644:
0018d644ldr x4, [sp+208]
0018d648ldr x5, [sp+200]
0018d64csub x4, x4, x5
0018d650str x4, [sp+96]
0018d654subs xzr, x4, 12
0018d658b.le 0x18d660
0018d65cb 0x18d680
0018d660
0018d660loc_18d660:
0018d660ldr x3, [sp+208]
0018d664ldr x2, [sp+200]
0018d668ldr x0, [sp+184]
0018d66cldr x1, [sp+192]
0018d670bl sort.insertionSort
0018d674ldur x29, [sp-8]
0018d678ldr x30, [sp], 176
0018d67cret x30
0018d680
0018d680loc_18d680:
0018d680ldr x4, [sp+216]
0018d684cbz x4, 0x18d68c
0018d688b 0x18d6ac
0018d68c
0018d68cloc_18d68c:
0018d68cldr x3, [sp+208]
0018d690ldr x2, [sp+200]
0018d694ldr x0, [sp+184]
0018d698ldr x1, [sp+192]
0018d69cbl sort.heapSort
0018d6a0ldur x29, [sp-8]
0018d6a4ldr x30, [sp], 176
0018d6a8ret x30
0018d6ac
0018d6acloc_18d6ac:
0018d6acldrb w4, [sp+59]
0018d6b0tbnz w4, 0, 0x18d6b8
0018d6b4b 0x18d6bc
0018d6b8
0018d6b8loc_18d6b8:
0018d6b8b 0x18d6e0
0018d6bc
0018d6bcloc_18d6bc:
0018d6bcldr x3, [sp+208]
0018d6c0ldr x2, [sp+200]
0018d6c4ldr x0, [sp+184]
0018d6c8ldr x1, [sp+192]
0018d6ccbl sort.breakPatterns
0018d6d0ldr x4, [sp+216]
0018d6d4sub x4, x4, 1
0018d6d8str x4, [sp+216]
0018d6dcb 0x18d6e0
0018d6e0
0018d6e0loc_18d6e0:
0018d6e0ldr x3, [sp+208]
0018d6e4ldr x2, [sp+200]
0018d6e8ldr x0, [sp+184]
0018d6ecldr x1, [sp+192]
0018d6f0bl sort.choosePivot
0018d6f4str x0, [sp+144]
0018d6f8str x1, [sp+136]
0018d6fcstr x0, [sp+128]
0018d700str x1, [sp+160]
0018d704str x0, [sp+72]
0018d708str x1, [sp+112]
0018d70csubs xzr, x1, 2
0018d710b.eq 0x18d718
0018d714b 0x18d754
0018d718
0018d718loc_18d718:
0018d718ldr x3, [sp+208]
0018d71cldr x2, [sp+200]
0018d720ldr x0, [sp+184]
0018d724ldr x1, [sp+192]
0018d728bl sort.reverseRange
0018d72cldr x4, [sp+208]
0018d730ldr x5, [sp+72]
0018d734ldr x6, [sp+200]
0018d738add x4, x4, x6
0018d73csub x4, x4, x5
0018d740sub x4, x4, 1
0018d744str x4, [sp+72]
0018d748orr x4, xzr, 1
0018d74cstr x4, [sp+112]
0018d750b 0x18d75c
0018d754
0018d754loc_18d754:
0018d754orr x4, xzr, 1
0018d758b 0x18d75c
0018d75c
0018d75cloc_18d75c:
0018d75cldrb w5, [sp+59]
0018d760strb w5, [sp+61]
0018d764tbnz w5, 0, 0x18d76c
0018d768b 0x18d778
0018d76c
0018d76cloc_18d76c:
0018d76cldrb w5, [sp+58]
0018d770strb w5, [sp+61]
0018d774b 0x18d77c
0018d778
0018d778loc_18d778:
0018d778b 0x18d77c
0018d77c
0018d77cloc_18d77c:
0018d77cldrb w5, [sp+61]
0018d780strb w5, [sp+62]
0018d784tbnz w5, 0, 0x18d78c
0018d788b 0x18d7a0
0018d78c
0018d78cloc_18d78c:
0018d78cldr x5, [sp+112]
0018d790subs xzr, x5, 1
0018d794cset x5, eq
0018d798strb w5, [sp+62]
0018d79cb 0x18d7a4
0018d7a0
0018d7a0loc_18d7a0:
0018d7a0b 0x18d7a4
0018d7a4
0018d7a4loc_18d7a4:
0018d7a4ldrb w5, [sp+62]
0018d7a8tbnz w5, 0, 0x18d7b0
0018d7acb 0x18d7e0
0018d7b0
0018d7b0loc_18d7b0:
0018d7b0ldr x3, [sp+208]
0018d7b4ldr x2, [sp+200]
0018d7b8ldr x0, [sp+184]
0018d7bcldr x1, [sp+192]
0018d7c0bl sort.partialInsertionSort
0018d7c4strb w0, [sp+61]
0018d7c8tbnz w0, 0, 0x18d7d0
0018d7ccb 0x18d7dc
0018d7d0
0018d7d0loc_18d7d0:
0018d7d0ldur x29, [sp-8]
0018d7d4ldr x30, [sp], 176
0018d7d8ret x30
0018d7dc
0018d7dcloc_18d7dc:
0018d7dcb 0x18d7e4
0018d7e0
0018d7e0loc_18d7e0:
0018d7e0b 0x18d7e4
0018d7e4
0018d7e4loc_18d7e4:
0018d7e4ldr x5, [sp+200]
0018d7e8subs xzr, x5, 0
0018d7eccset x5, gt
0018d7f0strb w5, [sp+61]
0018d7f4b.gt 0x18d7fc
0018d7f8b 0x18d82c
0018d7fc
0018d7fcloc_18d7fc:
0018d7fcldr x3, [sp+184]
0018d800ldrsb x27, [x3]
0018d804ldr x2, [sp+72]
0018d808ldr x0, [sp+192]
0018d80cldr x3, [x3+32]
0018d810ldr x4, [sp+200]
0018d814sub x1, x4, 1
0018d818blr x3
0018d81cstrb w0, [sp+62]
0018d820eor x3, x0, 1
0018d824strb w3, [sp+61]
0018d828b 0x18d830
0018d82c
0018d82cloc_18d82c:
0018d82cb 0x18d830
0018d830
0018d830loc_18d830:
0018d830ldrb w5, [sp+61]
0018d834tbnz w5, 0, 0x18d83c
0018d838b 0x18d860
0018d83c
0018d83cloc_18d83c:
0018d83cldr x3, [sp+208]
0018d840ldr x4, [sp+72]
0018d844ldr x2, [sp+200]
0018d848ldr x0, [sp+184]
0018d84cldr x1, [sp+192]
0018d850bl sort.partitionEqual
0018d854str x0, [sp+88]
0018d858str x0, [sp+200]
0018d85cb 0x18d94c
0018d860
0018d860loc_18d860:
0018d860ldr x3, [sp+208]
0018d864ldr x4, [sp+72]
0018d868ldr x2, [sp+200]
0018d86cldr x0, [sp+184]
0018d870ldr x1, [sp+192]
0018d874bl sort.partition
0018d878str x0, [sp+144]
0018d87cstrb w1, [sp+61]
0018d880ldr x5, [sp+144]
0018d884str x5, [sp+152]
0018d888ldrb w5, [sp+61]
0018d88cstrb w5, [sp+63]
0018d890ldr x5, [sp+152]
0018d894str x5, [sp+80]
0018d898ldrb w6, [sp+63]
0018d89cstrb w6, [sp+60]
0018d8a0strb w6, [sp+58]
0018d8a4ldr x6, [sp+200]
0018d8a8ldr x7, [sp+80]
0018d8acsub x6, x7, x6
0018d8b0str x6, [sp+104]
0018d8b4ldr x7, [sp+208]
0018d8b8sub x5, x7, x5
0018d8bcstr x5, [sp+64]
0018d8c0ldr x7, [sp+96]
0018d8c4sbfm x8, x7, 63, 63
0018d8c8add x7, x7, x8, lsr #61
0018d8ccsbfm x8, x7, 3, 63
0018d8d0str x8, [sp+120]
0018d8d4subs xzr, x5, x6
0018d8d8b.gt 0x18d8e0
0018d8dcb 0x18d914
0018d8e0
0018d8e0loc_18d8e0:
0018d8e0subs xzr, x6, x7, asr #3
0018d8e4cset x5, ge
0018d8e8strb w5, [sp+59]
0018d8ecldr x3, [sp+80]
0018d8f0ldr x4, [sp+216]
0018d8f4ldr x2, [sp+200]
0018d8f8ldr x0, [sp+184]
0018d8fcldr x1, [sp+192]
0018d900bl sort.pdqsort
0018d904ldr x5, [sp+80]
0018d908add x5, x5, 1
0018d90cstr x5, [sp+200]
0018d910b 0x18d948
0018d914
0018d914loc_18d914:
0018d914subs xzr, x5, x7, asr #3
0018d918cset x5, ge
0018d91cstrb w5, [sp+59]
0018d920ldr x3, [sp+208]
0018d924ldr x4, [sp+216]
0018d928ldr x0, [sp+184]
0018d92cldr x1, [sp+192]
0018d930ldr x5, [sp+80]
0018d934add x2, x5, 1
0018d938bl sort.pdqsort
0018d93cldr x5, [sp+80]
0018d940str x5, [sp+208]
0018d944b 0x18d948
0018d948
0018d948loc_18d948:
0018d948b 0x18d94c
0018d94c
0018d94cloc_18d94c:
0018d94cb 0x18d640
0018d950
0018d950loc_18d950:
0018d950stp x0, x1, [sp+8]
0018d954stp x2, x3, [sp+24]
0018d958str x4, [sp+40]
0018d95cmov x3, x30
0018d960bl runtime.morestack_noctxt.abi0
0018d964ldp x0, x1, [sp+8]
0018d968ldp x2, x3, [sp+24]
0018d96cldr x4, [sp+40]
0018d970b 0x18d600
0018d974udf 0
0018d978udf 0
0018d97cudf 0
0018d600
0018d600sort.pdqsort: ; void sort.pdqsort(sort.Interface data, int a, int b, int limit)
0018d600ldr x16, [x28+16]
0018d604sub x17, sp, 48
0018d608subs xzr, x17, x16
0018d60cb.ls 0x18d950
0018d610str x30, [sp-176]!
0018d614stur x29, [sp-8]
0018d618sub x29, sp, 8
0018d61cstr x0, [sp+184]
0018d620str x1, [sp+192]
0018d624str x2, [sp+200]
0018d628str x3, [sp+208]
0018d62cstr x4, [sp+216]
0018d630orr x4, xzr, 1
0018d634strb w4, [sp+59]
0018d638strb w4, [sp+58]
0018d63cb 0x18d640
0018d640
0018d640loc_18d640:
0018d640b 0x18d644
0018d644
0018d644loc_18d644:
0018d644ldr x4, [sp+208]
0018d648ldr x5, [sp+200]
0018d64csub x4, x4, x5
0018d650str x4, [sp+96]
0018d654subs xzr, x4, 12
0018d658b.le 0x18d660
0018d65cb 0x18d680
0018d660
0018d660loc_18d660:
0018d660ldr x3, [sp+208]
0018d664ldr x2, [sp+200]
0018d668ldr x0, [sp+184]
0018d66cldr x1, [sp+192]
0018d670bl sort.insertionSort
0018d674ldur x29, [sp-8]
0018d678ldr x30, [sp], 176
0018d67cret x30
0018d680
0018d680loc_18d680:
0018d680ldr x4, [sp+216]
0018d684cbz x4, 0x18d68c
0018d688b 0x18d6ac
0018d68c
0018d68cloc_18d68c:
0018d68cldr x3, [sp+208]
0018d690ldr x2, [sp+200]
0018d694ldr x0, [sp+184]
0018d698ldr x1, [sp+192]
0018d69cbl sort.heapSort
0018d6a0ldur x29, [sp-8]
0018d6a4ldr x30, [sp], 176
0018d6a8ret x30
0018d6ac
0018d6acloc_18d6ac:
0018d6acldrb w4, [sp+59]
0018d6b0tbnz w4, 0, 0x18d6b8
0018d6b4b 0x18d6bc
0018d6b8
0018d6b8loc_18d6b8:
0018d6b8b 0x18d6e0
0018d6bc
0018d6bcloc_18d6bc:
0018d6bcldr x3, [sp+208]
0018d6c0ldr x2, [sp+200]
0018d6c4ldr x0, [sp+184]
0018d6c8ldr x1, [sp+192]
0018d6ccbl sort.breakPatterns
0018d6d0ldr x4, [sp+216]
0018d6d4sub x4, x4, 1
0018d6d8str x4, [sp+216]
0018d6dcb 0x18d6e0
0018d6e0
0018d6e0loc_18d6e0:
0018d6e0ldr x3, [sp+208]
0018d6e4ldr x2, [sp+200]
0018d6e8ldr x0, [sp+184]
0018d6ecldr x1, [sp+192]
0018d6f0bl sort.choosePivot
0018d6f4str x0, [sp+144]
0018d6f8str x1, [sp+136]
0018d6fcstr x0, [sp+128]
0018d700str x1, [sp+160]
0018d704str x0, [sp+72]
0018d708str x1, [sp+112]
0018d70csubs xzr, x1, 2
0018d710b.eq 0x18d718
0018d714b 0x18d754
0018d718
0018d718loc_18d718:
0018d718ldr x3, [sp+208]
0018d71cldr x2, [sp+200]
0018d720ldr x0, [sp+184]
0018d724ldr x1, [sp+192]
0018d728bl sort.reverseRange
0018d72cldr x4, [sp+208]
0018d730ldr x5, [sp+72]
0018d734ldr x6, [sp+200]
0018d738add x4, x4, x6
0018d73csub x4, x4, x5
0018d740sub x4, x4, 1
0018d744str x4, [sp+72]
0018d748orr x4, xzr, 1
0018d74cstr x4, [sp+112]
0018d750b 0x18d75c
0018d754
0018d754loc_18d754:
0018d754orr x4, xzr, 1
0018d758b 0x18d75c
0018d75c
0018d75cloc_18d75c:
0018d75cldrb w5, [sp+59]
0018d760strb w5, [sp+61]
0018d764tbnz w5, 0, 0x18d76c
0018d768b 0x18d778
0018d76c
0018d76cloc_18d76c:
0018d76cldrb w5, [sp+58]
0018d770strb w5, [sp+61]
0018d774b 0x18d77c
0018d778
0018d778loc_18d778:
0018d778b 0x18d77c
0018d77c
0018d77cloc_18d77c:
0018d77cldrb w5, [sp+61]
0018d780strb w5, [sp+62]
0018d784tbnz w5, 0, 0x18d78c
0018d788b 0x18d7a0
0018d78c
0018d78cloc_18d78c:
0018d78cldr x5, [sp+112]
0018d790subs xzr, x5, 1
0018d794cset x5, eq
0018d798strb w5, [sp+62]
0018d79cb 0x18d7a4
0018d7a0
0018d7a0loc_18d7a0:
0018d7a0b 0x18d7a4
0018d7a4
0018d7a4loc_18d7a4:
0018d7a4ldrb w5, [sp+62]
0018d7a8tbnz w5, 0, 0x18d7b0
0018d7acb 0x18d7e0
0018d7b0
0018d7b0loc_18d7b0:
0018d7b0ldr x3, [sp+208]
0018d7b4ldr x2, [sp+200]
0018d7b8ldr x0, [sp+184]
0018d7bcldr x1, [sp+192]
0018d7c0bl sort.partialInsertionSort
0018d7c4strb w0, [sp+61]
0018d7c8tbnz w0, 0, 0x18d7d0
0018d7ccb 0x18d7dc
0018d7d0
0018d7d0loc_18d7d0:
0018d7d0ldur x29, [sp-8]
0018d7d4ldr x30, [sp], 176
0018d7d8ret x30
0018d7dc
0018d7dcloc_18d7dc:
0018d7dcb 0x18d7e4
0018d7e0
0018d7e0loc_18d7e0:
0018d7e0b 0x18d7e4
0018d7e4
0018d7e4loc_18d7e4:
0018d7e4ldr x5, [sp+200]
0018d7e8subs xzr, x5, 0
0018d7eccset x5, gt
0018d7f0strb w5, [sp+61]
0018d7f4b.gt 0x18d7fc
0018d7f8b 0x18d82c
0018d7fc
0018d7fcloc_18d7fc:
0018d7fcldr x3, [sp+184]
0018d800ldrsb x27, [x3]
0018d804ldr x2, [sp+72]
0018d808ldr x0, [sp+192]
0018d80cldr x3, [x3+32]
0018d810ldr x4, [sp+200]
0018d814sub x1, x4, 1
0018d818blr x3
0018d81cstrb w0, [sp+62]
0018d820eor x3, x0, 1
0018d824strb w3, [sp+61]
0018d828b 0x18d830
0018d82c
0018d82cloc_18d82c:
0018d82cb 0x18d830
0018d830
0018d830loc_18d830:
0018d830ldrb w5, [sp+61]
0018d834tbnz w5, 0, 0x18d83c
0018d838b 0x18d860
0018d83c
0018d83cloc_18d83c:
0018d83cldr x3, [sp+208]
0018d840ldr x4, [sp+72]
0018d844ldr x2, [sp+200]
0018d848ldr x0, [sp+184]
0018d84cldr x1, [sp+192]
0018d850bl sort.partitionEqual
0018d854str x0, [sp+88]
0018d858str x0, [sp+200]
0018d85cb 0x18d94c
0018d860
0018d860loc_18d860:
0018d860ldr x3, [sp+208]
0018d864ldr x4, [sp+72]
0018d868ldr x2, [sp+200]
0018d86cldr x0, [sp+184]
0018d870ldr x1, [sp+192]
0018d874bl sort.partition
0018d878str x0, [sp+144]
0018d87cstrb w1, [sp+61]
0018d880ldr x5, [sp+144]
0018d884str x5, [sp+152]
0018d888ldrb w5, [sp+61]
0018d88cstrb w5, [sp+63]
0018d890ldr x5, [sp+152]
0018d894str x5, [sp+80]
0018d898ldrb w6, [sp+63]
0018d89cstrb w6, [sp+60]
0018d8a0strb w6, [sp+58]
0018d8a4ldr x6, [sp+200]
0018d8a8ldr x7, [sp+80]
0018d8acsub x6, x7, x6
0018d8b0str x6, [sp+104]
0018d8b4ldr x7, [sp+208]
0018d8b8sub x5, x7, x5
0018d8bcstr x5, [sp+64]
0018d8c0ldr x7, [sp+96]
0018d8c4sbfm x8, x7, 63, 63
0018d8c8add x7, x7, x8, lsr #61
0018d8ccsbfm x8, x7, 3, 63
0018d8d0str x8, [sp+120]
0018d8d4subs xzr, x5, x6
0018d8d8b.gt 0x18d8e0
0018d8dcb 0x18d914
0018d8e0
0018d8e0loc_18d8e0:
0018d8e0subs xzr, x6, x7, asr #3
0018d8e4cset x5, ge
0018d8e8strb w5, [sp+59]
0018d8ecldr x3, [sp+80]
0018d8f0ldr x4, [sp+216]
0018d8f4ldr x2, [sp+200]
0018d8f8ldr x0, [sp+184]
0018d8fcldr x1, [sp+192]
0018d900bl sort.pdqsort
0018d904ldr x5, [sp+80]
0018d908add x5, x5, 1
0018d90cstr x5, [sp+200]
0018d910b 0x18d948
0018d914
0018d914loc_18d914:
0018d914subs xzr, x5, x7, asr #3
0018d918cset x5, ge
0018d91cstrb w5, [sp+59]
0018d920ldr x3, [sp+208]
0018d924ldr x4, [sp+216]
0018d928ldr x0, [sp+184]
0018d92cldr x1, [sp+192]
0018d930ldr x5, [sp+80]
0018d934add x2, x5, 1
0018d938bl sort.pdqsort
0018d93cldr x5, [sp+80]
0018d940str x5, [sp+208]
0018d944b 0x18d948
0018d948
0018d948loc_18d948:
0018d948b 0x18d94c
0018d94c
0018d94cloc_18d94c:
0018d94cb 0x18d640
0018d950
0018d950loc_18d950:
0018d950stp x0, x1, [sp+8]
0018d954stp x2, x3, [sp+24]
0018d958str x4, [sp+40]
0018d95cmov x3, x30
0018d960bl runtime.morestack_noctxt.abi0
0018d964ldp x0, x1, [sp+8]
0018d968ldp x2, x3, [sp+24]
0018d96cldr x4, [sp+40]
0018d970b 0x18d600
0018d974udf 0
0018d978udf 0
0018d97cudf 0
0018d600
0018d980
0018d980sort.partition: ; void sort.partition(sort.Interface data, int a, int b, int pivot)
0018d980ldr x16, [x28+16]
0018d984subs xzr, sp, x16
0018d988b.ls 0x18dcbc
0018d98cstr x30, [sp-80]!
0018d990stur x29, [sp-8]
0018d994sub x29, sp, 8
0018d998str x0, [sp+88]
0018d99cstr x1, [sp+96]
0018d9a0str x2, [sp+104]
0018d9a4str x3, [sp+112]
0018d9a8str x4, [sp+120]
0018d9acstr xzr, [sp+48]
0018d9b0strb wzr, [sp+45]
0018d9b4ldr x1, [sp+104]
0018d9b8ldr x2, [sp+120]
0018d9bcldr x3, [sp+88]
0018d9c0ldrsb x27, [x3]
0018d9c4ldr x3, [x3+40]
0018d9c8ldr x0, [sp+96]
0018d9ccblr x3
0018d9d0ldr x3, [sp+104]
0018d9d4add x3, x3, 1
0018d9d8str x3, [sp+64]
0018d9dcldr x3, [sp+112]
0018d9e0sub x3, x3, 1
0018d9e4str x3, [sp+56]
0018d9e8b 0x18d9ec
0018d9ec
0018d9ecloc_18d9ec:
0018d9ecldr x3, [sp+56]
0018d9f0ldr x4, [sp+64]
0018d9f4subs xzr, x3, x4
0018d9f8cset x3, ge
0018d9fcstrb w3, [sp+47]
0018da00b.ge 0x18da08
0018da04b 0x18da30
0018da08
0018da08loc_18da08:
0018da08ldr x3, [sp+88]
0018da0cldrsb x27, [x3]
0018da10ldr x1, [sp+64]
0018da14ldr x2, [sp+104]
0018da18ldr x0, [sp+96]
0018da1cldr x3, [x3+32]
0018da20blr x3
0018da24strb w0, [sp+46]
0018da28strb w0, [sp+47]
0018da2cb 0x18da34
0018da30
0018da30loc_18da30:
0018da30b 0x18da34
0018da34
0018da34loc_18da34:
0018da34ldrb w3, [sp+47]
0018da38tbnz w3, 0, 0x18da40
0018da3cb 0x18da54
0018da40
0018da40loc_18da40:
0018da40ldr x3, [sp+64]
0018da44add x3, x3, 1
0018da48str x3, [sp+64]
0018da4cb 0x18da50
0018da50
0018da50loc_18da50:
0018da50b 0x18d9ec
0018da54
0018da54loc_18da54:
0018da54b 0x18da58
0018da58
0018da58loc_18da58:
0018da58ldr x3, [sp+56]
0018da5cldr x4, [sp+64]
0018da60subs xzr, x3, x4
0018da64cset x3, ge
0018da68strb w3, [sp+47]
0018da6cb.ge 0x18da74
0018da70b 0x18daa0
0018da74
0018da74loc_18da74:
0018da74ldr x3, [sp+88]
0018da78ldrsb x27, [x3]
0018da7cldr x1, [sp+56]
0018da80ldr x2, [sp+104]
0018da84ldr x0, [sp+96]
0018da88ldr x3, [x3+32]
0018da8cblr x3
0018da90strb w0, [sp+46]
0018da94eor x3, x0, 1
0018da98strb w3, [sp+47]
0018da9cb 0x18daa4
0018daa0
0018daa0loc_18daa0:
0018daa0b 0x18daa4
0018daa4
0018daa4loc_18daa4:
0018daa4ldrb w3, [sp+47]
0018daa8tbnz w3, 0, 0x18dab0
0018daacb 0x18dac4
0018dab0
0018dab0loc_18dab0:
0018dab0ldr x3, [sp+56]
0018dab4sub x3, x3, 1
0018dab8str x3, [sp+56]
0018dabcb 0x18dac0
0018dac0
0018dac0loc_18dac0:
0018dac0b 0x18da58
0018dac4
0018dac4loc_18dac4:
0018dac4ldr x3, [sp+56]
0018dac8ldr x4, [sp+64]
0018daccsubs xzr, x3, x4
0018dad0b.lt 0x18dad8
0018dad4b 0x18db14
0018dad8
0018dad8loc_18dad8:
0018dad8ldr x1, [sp+56]
0018dadcldr x2, [sp+104]
0018dae0ldr x3, [sp+88]
0018dae4ldrsb x27, [x3]
0018dae8ldr x3, [x3+40]
0018daecldr x0, [sp+96]
0018daf0blr x3
0018daf4ldr x3, [sp+56]
0018daf8str x3, [sp+48]
0018dafcorr x1, xzr, 1
0018db00strb w1, [sp+45]
0018db04ldr x0, [sp+48]
0018db08ldur x29, [sp-8]
0018db0cldr x30, [sp], 80
0018db10ret x30
0018db14
0018db14loc_18db14:
0018db14ldr x1, [sp+64]
0018db18ldr x2, [sp+56]
0018db1cldr x3, [sp+88]
0018db20ldrsb x27, [x3]
0018db24ldr x3, [x3+40]
0018db28ldr x0, [sp+96]
0018db2cblr x3
0018db30ldr x3, [sp+64]
0018db34add x3, x3, 1
0018db38str x3, [sp+64]
0018db3cldr x3, [sp+56]
0018db40sub x3, x3, 1
0018db44str x3, [sp+56]
0018db48b 0x18db4c
0018db4c
0018db4cloc_18db4c:
0018db4cb 0x18db50
0018db50
0018db50loc_18db50:
0018db50b 0x18db54
0018db54
0018db54loc_18db54:
0018db54ldr x3, [sp+56]
0018db58ldr x4, [sp+64]
0018db5csubs xzr, x3, x4
0018db60cset x3, ge
0018db64strb w3, [sp+47]
0018db68b.ge 0x18db70
0018db6cb 0x18db98
0018db70
0018db70loc_18db70:
0018db70ldr x3, [sp+88]
0018db74ldrsb x27, [x3]
0018db78ldr x1, [sp+64]
0018db7cldr x2, [sp+104]
0018db80ldr x0, [sp+96]
0018db84ldr x3, [x3+32]
0018db88blr x3
0018db8cstrb w0, [sp+46]
0018db90strb w0, [sp+47]
0018db94b 0x18db9c
0018db98
0018db98loc_18db98:
0018db98b 0x18db9c
0018db9c
0018db9cloc_18db9c:
0018db9cldrb w3, [sp+47]
0018dba0tbnz w3, 0, 0x18dba8
0018dba4b 0x18dbbc
0018dba8
0018dba8loc_18dba8:
0018dba8ldr x3, [sp+64]
0018dbacadd x3, x3, 1
0018dbb0str x3, [sp+64]
0018dbb4b 0x18dbb8
0018dbb8
0018dbb8loc_18dbb8:
0018dbb8b 0x18db54
0018dbbc
0018dbbcloc_18dbbc:
0018dbbcb 0x18dbc0
0018dbc0
0018dbc0loc_18dbc0:
0018dbc0ldr x3, [sp+56]
0018dbc4ldr x4, [sp+64]
0018dbc8subs xzr, x3, x4
0018dbcccset x3, ge
0018dbd0strb w3, [sp+47]
0018dbd4b.ge 0x18dbdc
0018dbd8b 0x18dc08
0018dbdc
0018dbdcloc_18dbdc:
0018dbdcldr x3, [sp+88]
0018dbe0ldrsb x27, [x3]
0018dbe4ldr x1, [sp+56]
0018dbe8ldr x2, [sp+104]
0018dbecldr x0, [sp+96]
0018dbf0ldr x3, [x3+32]
0018dbf4blr x3
0018dbf8strb w0, [sp+46]
0018dbfceor x3, x0, 1
0018dc00strb w3, [sp+47]
0018dc04b 0x18dc0c
0018dc08
0018dc08loc_18dc08:
0018dc08b 0x18dc0c
0018dc0c
0018dc0cloc_18dc0c:
0018dc0cldrb w3, [sp+47]
0018dc10tbnz w3, 0, 0x18dc18
0018dc14b 0x18dc2c
0018dc18
0018dc18loc_18dc18:
0018dc18ldr x3, [sp+56]
0018dc1csub x3, x3, 1
0018dc20str x3, [sp+56]
0018dc24b 0x18dc28
0018dc28
0018dc28loc_18dc28:
0018dc28b 0x18dbc0
0018dc2c
0018dc2cloc_18dc2c:
0018dc2cldr x3, [sp+56]
0018dc30ldr x4, [sp+64]
0018dc34subs xzr, x3, x4
0018dc38b.lt 0x18dc40
0018dc3cb 0x18dc80
0018dc40
0018dc40loc_18dc40:
0018dc40b 0x18dc44
0018dc44
0018dc44loc_18dc44:
0018dc44ldr x1, [sp+56]
0018dc48ldr x2, [sp+104]
0018dc4cldr x3, [sp+88]
0018dc50ldrsb x27, [x3]
0018dc54ldr x3, [x3+40]
0018dc58ldr x0, [sp+96]
0018dc5cblr x3
0018dc60ldr x3, [sp+56]
0018dc64str x3, [sp+48]
0018dc68strb wzr, [sp+45]
0018dc6cldr x0, [sp+48]
0018dc70mov x1, xzr
0018dc74ldur x29, [sp-8]
0018dc78ldr x30, [sp], 80
0018dc7cret x30
0018dc80
0018dc80loc_18dc80:
0018dc80ldr x1, [sp+64]
0018dc84ldr x2, [sp+56]
0018dc88ldr x3, [sp+88]
0018dc8cldrsb x27, [x3]
0018dc90ldr x3, [x3+40]
0018dc94ldr x0, [sp+96]
0018dc98blr x3
0018dc9cldr x3, [sp+64]
0018dca0add x3, x3, 1
0018dca4str x3, [sp+64]
0018dca8ldr x3, [sp+56]
0018dcacsub x3, x3, 1
0018dcb0str x3, [sp+56]
0018dcb4b 0x18dcb8
0018dcb8
0018dcb8loc_18dcb8:
0018dcb8b 0x18db4c
0018dcbc
0018dcbcloc_18dcbc:
0018dcbcstp x0, x1, [sp+8]
0018dcc0stp x2, x3, [sp+24]
0018dcc4str x4, [sp+40]
0018dcc8mov x3, x30
0018dcccbl runtime.morestack_noctxt.abi0
0018dcd0ldp x0, x1, [sp+8]
0018dcd4ldp x2, x3, [sp+24]
0018dcd8ldr x4, [sp+40]
0018dcdcb 0x18d980
0018d980
0018d980sort.partition: ; void sort.partition(sort.Interface data, int a, int b, int pivot)
0018d980ldr x16, [x28+16]
0018d984subs xzr, sp, x16
0018d988b.ls 0x18dcbc
0018d98cstr x30, [sp-80]!
0018d990stur x29, [sp-8]
0018d994sub x29, sp, 8
0018d998str x0, [sp+88]
0018d99cstr x1, [sp+96]
0018d9a0str x2, [sp+104]
0018d9a4str x3, [sp+112]
0018d9a8str x4, [sp+120]
0018d9acstr xzr, [sp+48]
0018d9b0strb wzr, [sp+45]
0018d9b4ldr x1, [sp+104]
0018d9b8ldr x2, [sp+120]
0018d9bcldr x3, [sp+88]
0018d9c0ldrsb x27, [x3]
0018d9c4ldr x3, [x3+40]
0018d9c8ldr x0, [sp+96]
0018d9ccblr x3
0018d9d0ldr x3, [sp+104]
0018d9d4add x3, x3, 1
0018d9d8str x3, [sp+64]
0018d9dcldr x3, [sp+112]
0018d9e0sub x3, x3, 1
0018d9e4str x3, [sp+56]
0018d9e8b 0x18d9ec
0018d9ec
0018d9ecloc_18d9ec:
0018d9ecldr x3, [sp+56]
0018d9f0ldr x4, [sp+64]
0018d9f4subs xzr, x3, x4
0018d9f8cset x3, ge
0018d9fcstrb w3, [sp+47]
0018da00b.ge 0x18da08
0018da04b 0x18da30
0018da08
0018da08loc_18da08:
0018da08ldr x3, [sp+88]
0018da0cldrsb x27, [x3]
0018da10ldr x1, [sp+64]
0018da14ldr x2, [sp+104]
0018da18ldr x0, [sp+96]
0018da1cldr x3, [x3+32]
0018da20blr x3
0018da24strb w0, [sp+46]
0018da28strb w0, [sp+47]
0018da2cb 0x18da34
0018da30
0018da30loc_18da30:
0018da30b 0x18da34
0018da34
0018da34loc_18da34:
0018da34ldrb w3, [sp+47]
0018da38tbnz w3, 0, 0x18da40
0018da3cb 0x18da54
0018da40
0018da40loc_18da40:
0018da40ldr x3, [sp+64]
0018da44add x3, x3, 1
0018da48str x3, [sp+64]
0018da4cb 0x18da50
0018da50
0018da50loc_18da50:
0018da50b 0x18d9ec
0018da54
0018da54loc_18da54:
0018da54b 0x18da58
0018da58
0018da58loc_18da58:
0018da58ldr x3, [sp+56]
0018da5cldr x4, [sp+64]
0018da60subs xzr, x3, x4
0018da64cset x3, ge
0018da68strb w3, [sp+47]
0018da6cb.ge 0x18da74
0018da70b 0x18daa0
0018da74
0018da74loc_18da74:
0018da74ldr x3, [sp+88]
0018da78ldrsb x27, [x3]
0018da7cldr x1, [sp+56]
0018da80ldr x2, [sp+104]
0018da84ldr x0, [sp+96]
0018da88ldr x3, [x3+32]
0018da8cblr x3
0018da90strb w0, [sp+46]
0018da94eor x3, x0, 1
0018da98strb w3, [sp+47]
0018da9cb 0x18daa4
0018daa0
0018daa0loc_18daa0:
0018daa0b 0x18daa4
0018daa4
0018daa4loc_18daa4:
0018daa4ldrb w3, [sp+47]
0018daa8tbnz w3, 0, 0x18dab0
0018daacb 0x18dac4
0018dab0
0018dab0loc_18dab0:
0018dab0ldr x3, [sp+56]
0018dab4sub x3, x3, 1
0018dab8str x3, [sp+56]
0018dabcb 0x18dac0
0018dac0
0018dac0loc_18dac0:
0018dac0b 0x18da58
0018dac4
0018dac4loc_18dac4:
0018dac4ldr x3, [sp+56]
0018dac8ldr x4, [sp+64]
0018daccsubs xzr, x3, x4
0018dad0b.lt 0x18dad8
0018dad4b 0x18db14
0018dad8
0018dad8loc_18dad8:
0018dad8ldr x1, [sp+56]
0018dadcldr x2, [sp+104]
0018dae0ldr x3, [sp+88]
0018dae4ldrsb x27, [x3]
0018dae8ldr x3, [x3+40]
0018daecldr x0, [sp+96]
0018daf0blr x3
0018daf4ldr x3, [sp+56]
0018daf8str x3, [sp+48]
0018dafcorr x1, xzr, 1
0018db00strb w1, [sp+45]
0018db04ldr x0, [sp+48]
0018db08ldur x29, [sp-8]
0018db0cldr x30, [sp], 80
0018db10ret x30
0018db14
0018db14loc_18db14:
0018db14ldr x1, [sp+64]
0018db18ldr x2, [sp+56]
0018db1cldr x3, [sp+88]
0018db20ldrsb x27, [x3]
0018db24ldr x3, [x3+40]
0018db28ldr x0, [sp+96]
0018db2cblr x3
0018db30ldr x3, [sp+64]
0018db34add x3, x3, 1
0018db38str x3, [sp+64]
0018db3cldr x3, [sp+56]
0018db40sub x3, x3, 1
0018db44str x3, [sp+56]
0018db48b 0x18db4c
0018db4c
0018db4cloc_18db4c:
0018db4cb 0x18db50
0018db50
0018db50loc_18db50:
0018db50b 0x18db54
0018db54
0018db54loc_18db54:
0018db54ldr x3, [sp+56]
0018db58ldr x4, [sp+64]
0018db5csubs xzr, x3, x4
0018db60cset x3, ge
0018db64strb w3, [sp+47]
0018db68b.ge 0x18db70
0018db6cb 0x18db98
0018db70
0018db70loc_18db70:
0018db70ldr x3, [sp+88]
0018db74ldrsb x27, [x3]
0018db78ldr x1, [sp+64]
0018db7cldr x2, [sp+104]
0018db80ldr x0, [sp+96]
0018db84ldr x3, [x3+32]
0018db88blr x3
0018db8cstrb w0, [sp+46]
0018db90strb w0, [sp+47]
0018db94b 0x18db9c
0018db98
0018db98loc_18db98:
0018db98b 0x18db9c
0018db9c
0018db9cloc_18db9c:
0018db9cldrb w3, [sp+47]
0018dba0tbnz w3, 0, 0x18dba8
0018dba4b 0x18dbbc
0018dba8
0018dba8loc_18dba8:
0018dba8ldr x3, [sp+64]
0018dbacadd x3, x3, 1
0018dbb0str x3, [sp+64]
0018dbb4b 0x18dbb8
0018dbb8
0018dbb8loc_18dbb8:
0018dbb8b 0x18db54
0018dbbc
0018dbbcloc_18dbbc:
0018dbbcb 0x18dbc0
0018dbc0
0018dbc0loc_18dbc0:
0018dbc0ldr x3, [sp+56]
0018dbc4ldr x4, [sp+64]
0018dbc8subs xzr, x3, x4
0018dbcccset x3, ge
0018dbd0strb w3, [sp+47]
0018dbd4b.ge 0x18dbdc
0018dbd8b 0x18dc08
0018dbdc
0018dbdcloc_18dbdc:
0018dbdcldr x3, [sp+88]
0018dbe0ldrsb x27, [x3]
0018dbe4ldr x1, [sp+56]
0018dbe8ldr x2, [sp+104]
0018dbecldr x0, [sp+96]
0018dbf0ldr x3, [x3+32]
0018dbf4blr x3
0018dbf8strb w0, [sp+46]
0018dbfceor x3, x0, 1
0018dc00strb w3, [sp+47]
0018dc04b 0x18dc0c
0018dc08
0018dc08loc_18dc08:
0018dc08b 0x18dc0c
0018dc0c
0018dc0cloc_18dc0c:
0018dc0cldrb w3, [sp+47]
0018dc10tbnz w3, 0, 0x18dc18
0018dc14b 0x18dc2c
0018dc18
0018dc18loc_18dc18:
0018dc18ldr x3, [sp+56]
0018dc1csub x3, x3, 1
0018dc20str x3, [sp+56]
0018dc24b 0x18dc28
0018dc28
0018dc28loc_18dc28:
0018dc28b 0x18dbc0
0018dc2c
0018dc2cloc_18dc2c:
0018dc2cldr x3, [sp+56]
0018dc30ldr x4, [sp+64]
0018dc34subs xzr, x3, x4
0018dc38b.lt 0x18dc40
0018dc3cb 0x18dc80
0018dc40
0018dc40loc_18dc40:
0018dc40b 0x18dc44
0018dc44
0018dc44loc_18dc44:
0018dc44ldr x1, [sp+56]
0018dc48ldr x2, [sp+104]
0018dc4cldr x3, [sp+88]
0018dc50ldrsb x27, [x3]
0018dc54ldr x3, [x3+40]
0018dc58ldr x0, [sp+96]
0018dc5cblr x3
0018dc60ldr x3, [sp+56]
0018dc64str x3, [sp+48]
0018dc68strb wzr, [sp+45]
0018dc6cldr x0, [sp+48]
0018dc70mov x1, xzr
0018dc74ldur x29, [sp-8]
0018dc78ldr x30, [sp], 80
0018dc7cret x30
0018dc80
0018dc80loc_18dc80:
0018dc80ldr x1, [sp+64]
0018dc84ldr x2, [sp+56]
0018dc88ldr x3, [sp+88]
0018dc8cldrsb x27, [x3]
0018dc90ldr x3, [x3+40]
0018dc94ldr x0, [sp+96]
0018dc98blr x3
0018dc9cldr x3, [sp+64]
0018dca0add x3, x3, 1
0018dca4str x3, [sp+64]
0018dca8ldr x3, [sp+56]
0018dcacsub x3, x3, 1
0018dcb0str x3, [sp+56]
0018dcb4b 0x18dcb8
0018dcb8
0018dcb8loc_18dcb8:
0018dcb8b 0x18db4c
0018dcbc
0018dcbcloc_18dcbc:
0018dcbcstp x0, x1, [sp+8]
0018dcc0stp x2, x3, [sp+24]
0018dcc4str x4, [sp+40]
0018dcc8mov x3, x30
0018dcccbl runtime.morestack_noctxt.abi0
0018dcd0ldp x0, x1, [sp+8]
0018dcd4ldp x2, x3, [sp+24]
0018dcd8ldr x4, [sp+40]
0018dcdcb 0x18d980
0018d980
0018dce0
0018dce0sort.partitionEqual: ; void sort.partitionEqual(sort.Interface data, int a, int b, int pivot)
0018dce0ldr x16, [x28+16]
0018dce4subs xzr, sp, x16
0018dce8b.ls 0x18de90
0018dcecstr x30, [sp-80]!
0018dcf0stur x29, [sp-8]
0018dcf4sub x29, sp, 8
0018dcf8str x0, [sp+88]
0018dcfcstr x1, [sp+96]
0018dd00str x2, [sp+104]
0018dd04str x3, [sp+112]
0018dd08str x4, [sp+120]
0018dd0cstr xzr, [sp+48]
0018dd10ldr x3, [sp+88]
0018dd14ldrsb x27, [x3]
0018dd18ldr x3, [x3+40]
0018dd1cldr x0, [sp+96]
0018dd20mov x1, x2
0018dd24mov x2, x4
0018dd28blr x3
0018dd2cldr x3, [sp+104]
0018dd30add x3, x3, 1
0018dd34str x3, [sp+64]
0018dd38ldr x3, [sp+112]
0018dd3csub x3, x3, 1
0018dd40str x3, [sp+56]
0018dd44b 0x18dd48
0018dd48
0018dd48loc_18dd48:
0018dd48b 0x18dd4c
0018dd4c
0018dd4cloc_18dd4c:
0018dd4cb 0x18dd50
0018dd50
0018dd50loc_18dd50:
0018dd50ldr x3, [sp+56]
0018dd54ldr x4, [sp+64]
0018dd58subs xzr, x3, x4
0018dd5ccset x3, ge
0018dd60strb w3, [sp+47]
0018dd64b.ge 0x18dd6c
0018dd68b 0x18dd98
0018dd6c
0018dd6cloc_18dd6c:
0018dd6cldr x3, [sp+88]
0018dd70ldrsb x27, [x3]
0018dd74ldr x1, [sp+104]
0018dd78ldr x2, [sp+64]
0018dd7cldr x0, [sp+96]
0018dd80ldr x3, [x3+32]
0018dd84blr x3
0018dd88strb w0, [sp+46]
0018dd8ceor x3, x0, 1
0018dd90strb w3, [sp+47]
0018dd94b 0x18dd9c
0018dd98
0018dd98loc_18dd98:
0018dd98b 0x18dd9c
0018dd9c
0018dd9cloc_18dd9c:
0018dd9cldrb w3, [sp+47]
0018dda0tbnz w3, 0, 0x18dda8
0018dda4b 0x18ddbc
0018dda8
0018dda8loc_18dda8:
0018dda8ldr x3, [sp+64]
0018ddacadd x3, x3, 1
0018ddb0str x3, [sp+64]
0018ddb4b 0x18ddb8
0018ddb8
0018ddb8loc_18ddb8:
0018ddb8b 0x18dd50
0018ddbc
0018ddbcloc_18ddbc:
0018ddbcb 0x18ddc0
0018ddc0
0018ddc0loc_18ddc0:
0018ddc0ldr x3, [sp+56]
0018ddc4ldr x4, [sp+64]
0018ddc8subs xzr, x3, x4
0018ddcccset x3, ge
0018ddd0strb w3, [sp+47]
0018ddd4b.ge 0x18dddc
0018ddd8b 0x18de04
0018dddc
0018dddcloc_18dddc:
0018dddcldr x3, [sp+88]
0018dde0ldrsb x27, [x3]
0018dde4ldr x1, [sp+104]
0018dde8ldr x2, [sp+56]
0018ddecldr x0, [sp+96]
0018ddf0ldr x3, [x3+32]
0018ddf4blr x3
0018ddf8strb w0, [sp+46]
0018ddfcstrb w0, [sp+47]
0018de00b 0x18de08
0018de04
0018de04loc_18de04:
0018de04b 0x18de08
0018de08
0018de08loc_18de08:
0018de08ldrb w3, [sp+47]
0018de0ctbnz w3, 0, 0x18de14
0018de10b 0x18de28
0018de14
0018de14loc_18de14:
0018de14ldr x3, [sp+56]
0018de18sub x3, x3, 1
0018de1cstr x3, [sp+56]
0018de20b 0x18de24
0018de24
0018de24loc_18de24:
0018de24b 0x18ddc0
0018de28
0018de28loc_18de28:
0018de28ldr x3, [sp+56]
0018de2cldr x4, [sp+64]
0018de30subs xzr, x3, x4
0018de34b.lt 0x18de3c
0018de38b 0x18de54
0018de3c
0018de3cloc_18de3c:
0018de3cb 0x18de40
0018de40
0018de40loc_18de40:
0018de40ldr x0, [sp+64]
0018de44str x0, [sp+48]
0018de48ldur x29, [sp-8]
0018de4cldr x30, [sp], 80
0018de50ret x30
0018de54
0018de54loc_18de54:
0018de54ldr x1, [sp+64]
0018de58ldr x2, [sp+56]
0018de5cldr x3, [sp+88]
0018de60ldrsb x27, [x3]
0018de64ldr x3, [x3+40]
0018de68ldr x0, [sp+96]
0018de6cblr x3
0018de70ldr x3, [sp+64]
0018de74add x3, x3, 1
0018de78str x3, [sp+64]
0018de7cldr x3, [sp+56]
0018de80sub x3, x3, 1
0018de84str x3, [sp+56]
0018de88b 0x18de8c
0018de8c
0018de8cloc_18de8c:
0018de8cb 0x18dd48
0018de90
0018de90loc_18de90:
0018de90stp x0, x1, [sp+8]
0018de94stp x2, x3, [sp+24]
0018de98str x4, [sp+40]
0018de9cmov x3, x30
0018dea0bl runtime.morestack_noctxt.abi0
0018dea4ldp x0, x1, [sp+8]
0018dea8ldp x2, x3, [sp+24]
0018deacldr x4, [sp+40]
0018deb0b 0x18dce0
0018deb4udf 0
0018deb8udf 0
0018debcudf 0
0018dce0
0018dce0sort.partitionEqual: ; void sort.partitionEqual(sort.Interface data, int a, int b, int pivot)
0018dce0ldr x16, [x28+16]
0018dce4subs xzr, sp, x16
0018dce8b.ls 0x18de90
0018dcecstr x30, [sp-80]!
0018dcf0stur x29, [sp-8]
0018dcf4sub x29, sp, 8
0018dcf8str x0, [sp+88]
0018dcfcstr x1, [sp+96]
0018dd00str x2, [sp+104]
0018dd04str x3, [sp+112]
0018dd08str x4, [sp+120]
0018dd0cstr xzr, [sp+48]
0018dd10ldr x3, [sp+88]
0018dd14ldrsb x27, [x3]
0018dd18ldr x3, [x3+40]
0018dd1cldr x0, [sp+96]
0018dd20mov x1, x2
0018dd24mov x2, x4
0018dd28blr x3
0018dd2cldr x3, [sp+104]
0018dd30add x3, x3, 1
0018dd34str x3, [sp+64]
0018dd38ldr x3, [sp+112]
0018dd3csub x3, x3, 1
0018dd40str x3, [sp+56]
0018dd44b 0x18dd48
0018dd48
0018dd48loc_18dd48:
0018dd48b 0x18dd4c
0018dd4c
0018dd4cloc_18dd4c:
0018dd4cb 0x18dd50
0018dd50
0018dd50loc_18dd50:
0018dd50ldr x3, [sp+56]
0018dd54ldr x4, [sp+64]
0018dd58subs xzr, x3, x4
0018dd5ccset x3, ge
0018dd60strb w3, [sp+47]
0018dd64b.ge 0x18dd6c
0018dd68b 0x18dd98
0018dd6c
0018dd6cloc_18dd6c:
0018dd6cldr x3, [sp+88]
0018dd70ldrsb x27, [x3]
0018dd74ldr x1, [sp+104]
0018dd78ldr x2, [sp+64]
0018dd7cldr x0, [sp+96]
0018dd80ldr x3, [x3+32]
0018dd84blr x3
0018dd88strb w0, [sp+46]
0018dd8ceor x3, x0, 1
0018dd90strb w3, [sp+47]
0018dd94b 0x18dd9c
0018dd98
0018dd98loc_18dd98:
0018dd98b 0x18dd9c
0018dd9c
0018dd9cloc_18dd9c:
0018dd9cldrb w3, [sp+47]
0018dda0tbnz w3, 0, 0x18dda8
0018dda4b 0x18ddbc
0018dda8
0018dda8loc_18dda8:
0018dda8ldr x3, [sp+64]
0018ddacadd x3, x3, 1
0018ddb0str x3, [sp+64]
0018ddb4b 0x18ddb8
0018ddb8
0018ddb8loc_18ddb8:
0018ddb8b 0x18dd50
0018ddbc
0018ddbcloc_18ddbc:
0018ddbcb 0x18ddc0
0018ddc0
0018ddc0loc_18ddc0:
0018ddc0ldr x3, [sp+56]
0018ddc4ldr x4, [sp+64]
0018ddc8subs xzr, x3, x4
0018ddcccset x3, ge
0018ddd0strb w3, [sp+47]
0018ddd4b.ge 0x18dddc
0018ddd8b 0x18de04
0018dddc
0018dddcloc_18dddc:
0018dddcldr x3, [sp+88]
0018dde0ldrsb x27, [x3]
0018dde4ldr x1, [sp+104]
0018dde8ldr x2, [sp+56]
0018ddecldr x0, [sp+96]
0018ddf0ldr x3, [x3+32]
0018ddf4blr x3
0018ddf8strb w0, [sp+46]
0018ddfcstrb w0, [sp+47]
0018de00b 0x18de08
0018de04
0018de04loc_18de04:
0018de04b 0x18de08
0018de08
0018de08loc_18de08:
0018de08ldrb w3, [sp+47]
0018de0ctbnz w3, 0, 0x18de14
0018de10b 0x18de28
0018de14
0018de14loc_18de14:
0018de14ldr x3, [sp+56]
0018de18sub x3, x3, 1
0018de1cstr x3, [sp+56]
0018de20b 0x18de24
0018de24
0018de24loc_18de24:
0018de24b 0x18ddc0
0018de28
0018de28loc_18de28:
0018de28ldr x3, [sp+56]
0018de2cldr x4, [sp+64]
0018de30subs xzr, x3, x4
0018de34b.lt 0x18de3c
0018de38b 0x18de54
0018de3c
0018de3cloc_18de3c:
0018de3cb 0x18de40
0018de40
0018de40loc_18de40:
0018de40ldr x0, [sp+64]
0018de44str x0, [sp+48]
0018de48ldur x29, [sp-8]
0018de4cldr x30, [sp], 80
0018de50ret x30
0018de54
0018de54loc_18de54:
0018de54ldr x1, [sp+64]
0018de58ldr x2, [sp+56]
0018de5cldr x3, [sp+88]
0018de60ldrsb x27, [x3]
0018de64ldr x3, [x3+40]
0018de68ldr x0, [sp+96]
0018de6cblr x3
0018de70ldr x3, [sp+64]
0018de74add x3, x3, 1
0018de78str x3, [sp+64]
0018de7cldr x3, [sp+56]
0018de80sub x3, x3, 1
0018de84str x3, [sp+56]
0018de88b 0x18de8c
0018de8c
0018de8cloc_18de8c:
0018de8cb 0x18dd48
0018de90
0018de90loc_18de90:
0018de90stp x0, x1, [sp+8]
0018de94stp x2, x3, [sp+24]
0018de98str x4, [sp+40]
0018de9cmov x3, x30
0018dea0bl runtime.morestack_noctxt.abi0
0018dea4ldp x0, x1, [sp+8]
0018dea8ldp x2, x3, [sp+24]
0018deacldr x4, [sp+40]
0018deb0b 0x18dce0
0018deb4udf 0
0018deb8udf 0
0018debcudf 0
0018dce0
0018dec0
0018dec0sort.partialInsertionSort: ; void sort.partialInsertionSort(sort.Interface data, int a, int b)
0018dec0ldr x16, [x28+16]
0018dec4subs xzr, sp, x16
0018dec8b.ls 0x18e174
0018deccstr x30, [sp-80]!
0018ded0stur x29, [sp-8]
0018ded4sub x29, sp, 8
0018ded8str x0, [sp+88]
0018dedcstr x1, [sp+96]
0018dee0str x2, [sp+104]
0018dee4str x3, [sp+112]
0018dee8strb wzr, [sp+37]
0018deecldr x3, [sp+104]
0018def0add x3, x3, 1
0018def4str x3, [sp+64]
0018def8str xzr, [sp+56]
0018defcb 0x18df00
0018df00
0018df00loc_18df00:
0018df00ldr x3, [sp+56]
0018df04subs xzr, x3, 5
0018df08b.lt 0x18df10
0018df0cb 0x18df14
0018df10
0018df10loc_18df10:
0018df10b 0x18df28
0018df14
0018df14loc_18df14:
0018df14strb wzr, [sp+37]
0018df18mov x0, xzr
0018df1cldur x29, [sp-8]
0018df20ldr x30, [sp], 80
0018df24ret x30
0018df28
0018df28loc_18df28:
0018df28ldr x3, [sp+112]
0018df2cldr x4, [sp+64]
0018df30subs xzr, x3, x4
0018df34cset x3, gt
0018df38strb w3, [sp+39]
0018df3cb.gt 0x18df44
0018df40b 0x18df74
0018df44
0018df44loc_18df44:
0018df44ldr x3, [sp+88]
0018df48ldrsb x27, [x3]
0018df4cldr x1, [sp+64]
0018df50ldr x0, [sp+96]
0018df54ldr x3, [x3+32]
0018df58ldr x4, [sp+64]
0018df5csub x2, x4, 1
0018df60blr x3
0018df64strb w0, [sp+38]
0018df68eor x3, x0, 1
0018df6cstrb w3, [sp+39]
0018df70b 0x18df78
0018df74
0018df74loc_18df74:
0018df74b 0x18df78
0018df78
0018df78loc_18df78:
0018df78ldrb w3, [sp+39]
0018df7ctbnz w3, 0, 0x18df84
0018df80b 0x18df98
0018df84
0018df84loc_18df84:
0018df84ldr x3, [sp+64]
0018df88add x3, x3, 1
0018df8cstr x3, [sp+64]
0018df90b 0x18df94
0018df94
0018df94loc_18df94:
0018df94b 0x18df28
0018df98
0018df98loc_18df98:
0018df98ldr x3, [sp+112]
0018df9cldr x4, [sp+64]
0018dfa0subs xzr, x3, x4
0018dfa4b.eq 0x18dfac
0018dfa8b 0x18dfc0
0018dfac
0018dfacloc_18dfac:
0018dfacorr x0, xzr, 1
0018dfb0strb w0, [sp+37]
0018dfb4ldur x29, [sp-8]
0018dfb8ldr x30, [sp], 80
0018dfbcret x30
0018dfc0
0018dfc0loc_18dfc0:
0018dfc0ldr x3, [sp+104]
0018dfc4ldr x4, [sp+112]
0018dfc8sub x3, x4, x3
0018dfccsubs xzr, x3, 50
0018dfd0b.lt 0x18dfd8
0018dfd4b 0x18dfec
0018dfd8
0018dfd8loc_18dfd8:
0018dfd8strb wzr, [sp+37]
0018dfdcmov x0, xzr
0018dfe0ldur x29, [sp-8]
0018dfe4ldr x30, [sp], 80
0018dfe8ret x30
0018dfec
0018dfecloc_18dfec:
0018dfecldr x1, [sp+64]
0018dff0ldr x3, [sp+88]
0018dff4ldrsb x27, [x3]
0018dff8ldr x3, [x3+40]
0018dffcldr x0, [sp+96]
0018e000ldr x4, [sp+64]
0018e004sub x2, x4, 1
0018e008blr x3
0018e00cldr x3, [sp+104]
0018e010ldr x4, [sp+64]
0018e014sub x3, x4, x3
0018e018subs xzr, x3, 2
0018e01cb.ge 0x18e024
0018e020b 0x18e034
0018e024
0018e024loc_18e024:
0018e024ldr x3, [sp+64]
0018e028sub x3, x3, 1
0018e02cstr x3, [sp+48]
0018e030b 0x18e0f8
0018e034
0018e034loc_18e034:
0018e034b 0x18e038
0018e038
0018e038loc_18e038:
0018e038ldr x3, [sp+64]
0018e03cldr x4, [sp+112]
0018e040sub x3, x4, x3
0018e044subs xzr, x3, 2
0018e048b.ge 0x18e050
0018e04cb 0x18e060
0018e050
0018e050loc_18e050:
0018e050ldr x3, [sp+64]
0018e054add x3, x3, 1
0018e058str x3, [sp+40]
0018e05cb 0x18e078
0018e060
0018e060loc_18e060:
0018e060b 0x18e064
0018e064
0018e064loc_18e064:
0018e064b 0x18e068
0018e068
0018e068loc_18e068:
0018e068ldr x3, [sp+56]
0018e06cadd x3, x3, 1
0018e070str x3, [sp+56]
0018e074b 0x18df00
0018e078
0018e078loc_18e078:
0018e078ldr x3, [sp+112]
0018e07cldr x4, [sp+40]
0018e080subs xzr, x3, x4
0018e084b.gt 0x18e08c
0018e088b 0x18e0f0
0018e08c
0018e08cloc_18e08c:
0018e08cldr x1, [sp+40]
0018e090ldr x3, [sp+88]
0018e094ldrsb x27, [x3]
0018e098ldr x3, [x3+32]
0018e09cldr x0, [sp+96]
0018e0a0ldr x4, [sp+40]
0018e0a4sub x2, x4, 1
0018e0a8blr x3
0018e0acstrb w0, [sp+39]
0018e0b0tbnz w0, 0, 0x18e0b8
0018e0b4b 0x18e0ec
0018e0b8
0018e0b8loc_18e0b8:
0018e0b8ldr x1, [sp+40]
0018e0bcldr x3, [sp+88]
0018e0c0ldrsb x27, [x3]
0018e0c4ldr x3, [x3+40]
0018e0c8ldr x0, [sp+96]
0018e0ccldr x4, [sp+40]
0018e0d0sub x2, x4, 1
0018e0d4blr x3
0018e0d8b 0x18e0dc
0018e0dc
0018e0dcloc_18e0dc:
0018e0dcldr x3, [sp+40]
0018e0e0add x3, x3, 1
0018e0e4str x3, [sp+40]
0018e0e8b 0x18e078
0018e0ec
0018e0ecloc_18e0ec:
0018e0ecb 0x18e0f4
0018e0f0
0018e0f0loc_18e0f0:
0018e0f0b 0x18e0f4
0018e0f4
0018e0f4loc_18e0f4:
0018e0f4b 0x18e064
0018e0f8
0018e0f8loc_18e0f8:
0018e0f8ldr x3, [sp+48]
0018e0fcsubs xzr, x3, 0
0018e100b.gt 0x18e108
0018e104b 0x18e16c
0018e108
0018e108loc_18e108:
0018e108ldr x1, [sp+48]
0018e10cldr x3, [sp+88]
0018e110ldrsb x27, [x3]
0018e114ldr x3, [x3+32]
0018e118ldr x0, [sp+96]
0018e11cldr x4, [sp+48]
0018e120sub x2, x4, 1
0018e124blr x3
0018e128strb w0, [sp+39]
0018e12ctbnz w0, 0, 0x18e134
0018e130b 0x18e168
0018e134
0018e134loc_18e134:
0018e134ldr x1, [sp+48]
0018e138ldr x3, [sp+88]
0018e13cldrsb x27, [x3]
0018e140ldr x3, [x3+40]
0018e144ldr x0, [sp+96]
0018e148ldr x4, [sp+48]
0018e14csub x2, x4, 1
0018e150blr x3
0018e154b 0x18e158
0018e158
0018e158loc_18e158:
0018e158ldr x3, [sp+48]
0018e15csub x3, x3, 1
0018e160str x3, [sp+48]
0018e164b 0x18e0f8
0018e168
0018e168loc_18e168:
0018e168b 0x18e170
0018e16c
0018e16cloc_18e16c:
0018e16cb 0x18e170
0018e170
0018e170loc_18e170:
0018e170b 0x18e038
0018e174
0018e174loc_18e174:
0018e174stp x0, x1, [sp+8]
0018e178stp x2, x3, [sp+24]
0018e17cmov x3, x30
0018e180bl runtime.morestack_noctxt.abi0
0018e184ldp x0, x1, [sp+8]
0018e188ldp x2, x3, [sp+24]
0018e18cb 0x18dec0
0018dec0
0018dec0sort.partialInsertionSort: ; void sort.partialInsertionSort(sort.Interface data, int a, int b)
0018dec0ldr x16, [x28+16]
0018dec4subs xzr, sp, x16
0018dec8b.ls 0x18e174
0018deccstr x30, [sp-80]!
0018ded0stur x29, [sp-8]
0018ded4sub x29, sp, 8
0018ded8str x0, [sp+88]
0018dedcstr x1, [sp+96]
0018dee0str x2, [sp+104]
0018dee4str x3, [sp+112]
0018dee8strb wzr, [sp+37]
0018deecldr x3, [sp+104]
0018def0add x3, x3, 1
0018def4str x3, [sp+64]
0018def8str xzr, [sp+56]
0018defcb 0x18df00
0018df00
0018df00loc_18df00:
0018df00ldr x3, [sp+56]
0018df04subs xzr, x3, 5
0018df08b.lt 0x18df10
0018df0cb 0x18df14
0018df10
0018df10loc_18df10:
0018df10b 0x18df28
0018df14
0018df14loc_18df14:
0018df14strb wzr, [sp+37]
0018df18mov x0, xzr
0018df1cldur x29, [sp-8]
0018df20ldr x30, [sp], 80
0018df24ret x30
0018df28
0018df28loc_18df28:
0018df28ldr x3, [sp+112]
0018df2cldr x4, [sp+64]
0018df30subs xzr, x3, x4
0018df34cset x3, gt
0018df38strb w3, [sp+39]
0018df3cb.gt 0x18df44
0018df40b 0x18df74
0018df44
0018df44loc_18df44:
0018df44ldr x3, [sp+88]
0018df48ldrsb x27, [x3]
0018df4cldr x1, [sp+64]
0018df50ldr x0, [sp+96]
0018df54ldr x3, [x3+32]
0018df58ldr x4, [sp+64]
0018df5csub x2, x4, 1
0018df60blr x3
0018df64strb w0, [sp+38]
0018df68eor x3, x0, 1
0018df6cstrb w3, [sp+39]
0018df70b 0x18df78
0018df74
0018df74loc_18df74:
0018df74b 0x18df78
0018df78
0018df78loc_18df78:
0018df78ldrb w3, [sp+39]
0018df7ctbnz w3, 0, 0x18df84
0018df80b 0x18df98
0018df84
0018df84loc_18df84:
0018df84ldr x3, [sp+64]
0018df88add x3, x3, 1
0018df8cstr x3, [sp+64]
0018df90b 0x18df94
0018df94
0018df94loc_18df94:
0018df94b 0x18df28
0018df98
0018df98loc_18df98:
0018df98ldr x3, [sp+112]
0018df9cldr x4, [sp+64]
0018dfa0subs xzr, x3, x4
0018dfa4b.eq 0x18dfac
0018dfa8b 0x18dfc0
0018dfac
0018dfacloc_18dfac:
0018dfacorr x0, xzr, 1
0018dfb0strb w0, [sp+37]
0018dfb4ldur x29, [sp-8]
0018dfb8ldr x30, [sp], 80
0018dfbcret x30
0018dfc0
0018dfc0loc_18dfc0:
0018dfc0ldr x3, [sp+104]
0018dfc4ldr x4, [sp+112]
0018dfc8sub x3, x4, x3
0018dfccsubs xzr, x3, 50
0018dfd0b.lt 0x18dfd8
0018dfd4b 0x18dfec
0018dfd8
0018dfd8loc_18dfd8:
0018dfd8strb wzr, [sp+37]
0018dfdcmov x0, xzr
0018dfe0ldur x29, [sp-8]
0018dfe4ldr x30, [sp], 80
0018dfe8ret x30
0018dfec
0018dfecloc_18dfec:
0018dfecldr x1, [sp+64]
0018dff0ldr x3, [sp+88]
0018dff4ldrsb x27, [x3]
0018dff8ldr x3, [x3+40]
0018dffcldr x0, [sp+96]
0018e000ldr x4, [sp+64]
0018e004sub x2, x4, 1
0018e008blr x3
0018e00cldr x3, [sp+104]
0018e010ldr x4, [sp+64]
0018e014sub x3, x4, x3
0018e018subs xzr, x3, 2
0018e01cb.ge 0x18e024
0018e020b 0x18e034
0018e024
0018e024loc_18e024:
0018e024ldr x3, [sp+64]
0018e028sub x3, x3, 1
0018e02cstr x3, [sp+48]
0018e030b 0x18e0f8
0018e034
0018e034loc_18e034:
0018e034b 0x18e038
0018e038
0018e038loc_18e038:
0018e038ldr x3, [sp+64]
0018e03cldr x4, [sp+112]
0018e040sub x3, x4, x3
0018e044subs xzr, x3, 2
0018e048b.ge 0x18e050
0018e04cb 0x18e060
0018e050
0018e050loc_18e050:
0018e050ldr x3, [sp+64]
0018e054add x3, x3, 1
0018e058str x3, [sp+40]
0018e05cb 0x18e078
0018e060
0018e060loc_18e060:
0018e060b 0x18e064
0018e064
0018e064loc_18e064:
0018e064b 0x18e068
0018e068
0018e068loc_18e068:
0018e068ldr x3, [sp+56]
0018e06cadd x3, x3, 1
0018e070str x3, [sp+56]
0018e074b 0x18df00
0018e078
0018e078loc_18e078:
0018e078ldr x3, [sp+112]
0018e07cldr x4, [sp+40]
0018e080subs xzr, x3, x4
0018e084b.gt 0x18e08c
0018e088b 0x18e0f0
0018e08c
0018e08cloc_18e08c:
0018e08cldr x1, [sp+40]
0018e090ldr x3, [sp+88]
0018e094ldrsb x27, [x3]
0018e098ldr x3, [x3+32]
0018e09cldr x0, [sp+96]
0018e0a0ldr x4, [sp+40]
0018e0a4sub x2, x4, 1
0018e0a8blr x3
0018e0acstrb w0, [sp+39]
0018e0b0tbnz w0, 0, 0x18e0b8
0018e0b4b 0x18e0ec
0018e0b8
0018e0b8loc_18e0b8:
0018e0b8ldr x1, [sp+40]
0018e0bcldr x3, [sp+88]
0018e0c0ldrsb x27, [x3]
0018e0c4ldr x3, [x3+40]
0018e0c8ldr x0, [sp+96]
0018e0ccldr x4, [sp+40]
0018e0d0sub x2, x4, 1
0018e0d4blr x3
0018e0d8b 0x18e0dc
0018e0dc
0018e0dcloc_18e0dc:
0018e0dcldr x3, [sp+40]
0018e0e0add x3, x3, 1
0018e0e4str x3, [sp+40]
0018e0e8b 0x18e078
0018e0ec
0018e0ecloc_18e0ec:
0018e0ecb 0x18e0f4
0018e0f0
0018e0f0loc_18e0f0:
0018e0f0b 0x18e0f4
0018e0f4
0018e0f4loc_18e0f4:
0018e0f4b 0x18e064
0018e0f8
0018e0f8loc_18e0f8:
0018e0f8ldr x3, [sp+48]
0018e0fcsubs xzr, x3, 0
0018e100b.gt 0x18e108
0018e104b 0x18e16c
0018e108
0018e108loc_18e108:
0018e108ldr x1, [sp+48]
0018e10cldr x3, [sp+88]
0018e110ldrsb x27, [x3]
0018e114ldr x3, [x3+32]
0018e118ldr x0, [sp+96]
0018e11cldr x4, [sp+48]
0018e120sub x2, x4, 1
0018e124blr x3
0018e128strb w0, [sp+39]
0018e12ctbnz w0, 0, 0x18e134
0018e130b 0x18e168
0018e134
0018e134loc_18e134:
0018e134ldr x1, [sp+48]
0018e138ldr x3, [sp+88]
0018e13cldrsb x27, [x3]
0018e140ldr x3, [x3+40]
0018e144ldr x0, [sp+96]
0018e148ldr x4, [sp+48]
0018e14csub x2, x4, 1
0018e150blr x3
0018e154b 0x18e158
0018e158
0018e158loc_18e158:
0018e158ldr x3, [sp+48]
0018e15csub x3, x3, 1
0018e160str x3, [sp+48]
0018e164b 0x18e0f8
0018e168
0018e168loc_18e168:
0018e168b 0x18e170
0018e16c
0018e16cloc_18e16c:
0018e16cb 0x18e170
0018e170
0018e170loc_18e170:
0018e170b 0x18e038
0018e174
0018e174loc_18e174:
0018e174stp x0, x1, [sp+8]
0018e178stp x2, x3, [sp+24]
0018e17cmov x3, x30
0018e180bl runtime.morestack_noctxt.abi0
0018e184ldp x0, x1, [sp+8]
0018e188ldp x2, x3, [sp+24]
0018e18cb 0x18dec0
0018dec0
0018e190
0018e190sort.breakPatterns: ; void sort.breakPatterns(sort.Interface data, int a, int b)
0018e190ldr x16, [x28+16]
0018e194subs xzr, sp, x16
0018e198b.ls 0x18e2bc
0018e19cstr x30, [sp-96]!
0018e1a0stur x29, [sp-8]
0018e1a4sub x29, sp, 8
0018e1a8str x0, [sp+104]
0018e1acstr x1, [sp+112]
0018e1b0str x2, [sp+120]
0018e1b4str x3, [sp+128]
0018e1b8sub x0, x3, x2
0018e1bcstr x0, [sp+64]
0018e1c0subs xzr, x0, 8
0018e1c4b.ge 0x18e1cc
0018e1c8b 0x18e1fc
0018e1cc
0018e1ccloc_18e1cc:
0018e1ccstr x0, [sp+40]
0018e1d0bl sort.nextPowerOfTwo
0018e1d4str x0, [sp+56]
0018e1d8ldr x1, [sp+120]
0018e1dcldr x2, [sp+64]
0018e1e0sbfm x3, x2, 63, 63
0018e1e4add x2, x2, x3, lsr #62
0018e1e8sbfm x2, x2, 2, 63
0018e1ecadd x1, x1, x2, lsl #1
0018e1f0sub x1, x1, 1
0018e1f4str x1, [sp+72]
0018e1f8b 0x18e20c
0018e1fc
0018e1fcloc_18e1fc:
0018e1fcb 0x18e200
0018e200
0018e200loc_18e200:
0018e200ldur x29, [sp-8]
0018e204ldr x30, [sp], 96
0018e208ret x30
0018e20c
0018e20cloc_18e20c:
0018e20cldr x1, [sp+72]
0018e210ldr x2, [sp+120]
0018e214ldr x3, [sp+64]
0018e218sbfm x4, x3, 63, 63
0018e21cadd x3, x3, x4, lsr #62
0018e220sbfm x3, x3, 2, 63
0018e224add x2, x2, x3, lsl #1
0018e228add x2, x2, 1
0018e22csubs xzr, x1, x2
0018e230b.le 0x18e238
0018e234b 0x18e2b8
0018e238
0018e238loc_18e238:
0018e238add x0, sp, 40
0018e23cbl sort.(*xorshift).Next
0018e240str x0, [sp+80]
0018e244ldr x1, [sp+56]
0018e248sub x1, x1, 1
0018e24cand x1, x0, x1
0018e250str x1, [sp+48]
0018e254ldr x1, [sp+64]
0018e258ldr x2, [sp+48]
0018e25csubs xzr, x1, x2
0018e260b.le 0x18e268
0018e264b 0x18e27c
0018e268
0018e268loc_18e268:
0018e268ldr x3, [sp+64]
0018e26cldr x4, [sp+48]
0018e270sub x3, x4, x3
0018e274str x3, [sp+48]
0018e278b 0x18e280
0018e27c
0018e27cloc_18e27c:
0018e27cb 0x18e280
0018e280
0018e280loc_18e280:
0018e280ldr x1, [sp+72]
0018e284ldr x3, [sp+104]
0018e288ldrsb x27, [x3]
0018e28cldr x3, [x3+40]
0018e290ldr x0, [sp+112]
0018e294ldr x4, [sp+120]
0018e298ldr x5, [sp+48]
0018e29cadd x2, x4, x5
0018e2a0blr x3
0018e2a4b 0x18e2a8
0018e2a8
0018e2a8loc_18e2a8:
0018e2a8ldr x1, [sp+72]
0018e2acadd x1, x1, 1
0018e2b0str x1, [sp+72]
0018e2b4b 0x18e20c
0018e2b8
0018e2b8loc_18e2b8:
0018e2b8b 0x18e200
0018e2bc
0018e2bcloc_18e2bc:
0018e2bcstp x0, x1, [sp+8]
0018e2c0stp x2, x3, [sp+24]
0018e2c4mov x3, x30
0018e2c8bl runtime.morestack_noctxt.abi0
0018e2ccldp x0, x1, [sp+8]
0018e2d0ldp x2, x3, [sp+24]
0018e2d4b 0x18e190
0018e2d8udf 0
0018e2dcudf 0
0018e190
0018e190sort.breakPatterns: ; void sort.breakPatterns(sort.Interface data, int a, int b)
0018e190ldr x16, [x28+16]
0018e194subs xzr, sp, x16
0018e198b.ls 0x18e2bc
0018e19cstr x30, [sp-96]!
0018e1a0stur x29, [sp-8]
0018e1a4sub x29, sp, 8
0018e1a8str x0, [sp+104]
0018e1acstr x1, [sp+112]
0018e1b0str x2, [sp+120]
0018e1b4str x3, [sp+128]
0018e1b8sub x0, x3, x2
0018e1bcstr x0, [sp+64]
0018e1c0subs xzr, x0, 8
0018e1c4b.ge 0x18e1cc
0018e1c8b 0x18e1fc
0018e1cc
0018e1ccloc_18e1cc:
0018e1ccstr x0, [sp+40]
0018e1d0bl sort.nextPowerOfTwo
0018e1d4str x0, [sp+56]
0018e1d8ldr x1, [sp+120]
0018e1dcldr x2, [sp+64]
0018e1e0sbfm x3, x2, 63, 63
0018e1e4add x2, x2, x3, lsr #62
0018e1e8sbfm x2, x2, 2, 63
0018e1ecadd x1, x1, x2, lsl #1
0018e1f0sub x1, x1, 1
0018e1f4str x1, [sp+72]
0018e1f8b 0x18e20c
0018e1fc
0018e1fcloc_18e1fc:
0018e1fcb 0x18e200
0018e200
0018e200loc_18e200:
0018e200ldur x29, [sp-8]
0018e204ldr x30, [sp], 96
0018e208ret x30
0018e20c
0018e20cloc_18e20c:
0018e20cldr x1, [sp+72]
0018e210ldr x2, [sp+120]
0018e214ldr x3, [sp+64]
0018e218sbfm x4, x3, 63, 63
0018e21cadd x3, x3, x4, lsr #62
0018e220sbfm x3, x3, 2, 63
0018e224add x2, x2, x3, lsl #1
0018e228add x2, x2, 1
0018e22csubs xzr, x1, x2
0018e230b.le 0x18e238
0018e234b 0x18e2b8
0018e238
0018e238loc_18e238:
0018e238add x0, sp, 40
0018e23cbl sort.(*xorshift).Next
0018e240str x0, [sp+80]
0018e244ldr x1, [sp+56]
0018e248sub x1, x1, 1
0018e24cand x1, x0, x1
0018e250str x1, [sp+48]
0018e254ldr x1, [sp+64]
0018e258ldr x2, [sp+48]
0018e25csubs xzr, x1, x2
0018e260b.le 0x18e268
0018e264b 0x18e27c
0018e268
0018e268loc_18e268:
0018e268ldr x3, [sp+64]
0018e26cldr x4, [sp+48]
0018e270sub x3, x4, x3
0018e274str x3, [sp+48]
0018e278b 0x18e280
0018e27c
0018e27cloc_18e27c:
0018e27cb 0x18e280
0018e280
0018e280loc_18e280:
0018e280ldr x1, [sp+72]
0018e284ldr x3, [sp+104]
0018e288ldrsb x27, [x3]
0018e28cldr x3, [x3+40]
0018e290ldr x0, [sp+112]
0018e294ldr x4, [sp+120]
0018e298ldr x5, [sp+48]
0018e29cadd x2, x4, x5
0018e2a0blr x3
0018e2a4b 0x18e2a8
0018e2a8
0018e2a8loc_18e2a8:
0018e2a8ldr x1, [sp+72]
0018e2acadd x1, x1, 1
0018e2b0str x1, [sp+72]
0018e2b4b 0x18e20c
0018e2b8
0018e2b8loc_18e2b8:
0018e2b8b 0x18e200
0018e2bc
0018e2bcloc_18e2bc:
0018e2bcstp x0, x1, [sp+8]
0018e2c0stp x2, x3, [sp+24]
0018e2c4mov x3, x30
0018e2c8bl runtime.morestack_noctxt.abi0
0018e2ccldp x0, x1, [sp+8]
0018e2d0ldp x2, x3, [sp+24]
0018e2d4b 0x18e190
0018e2d8udf 0
0018e2dcudf 0
0018e190
0018e2e0
0018e2e0sort.choosePivot: ; void sort.choosePivot(sort.Interface data, int a, int b)
0018e2e0ldr x16, [x28+16]
0018e2e4subs xzr, sp, x16
0018e2e8b.ls 0x18e478
0018e2ecstr x30, [sp-128]!
0018e2f0stur x29, [sp-8]
0018e2f4sub x29, sp, 8
0018e2f8str x0, [sp+136]
0018e2fcstr x1, [sp+144]
0018e300str x2, [sp+152]
0018e304str x3, [sp+160]
0018e308str xzr, [sp+64]
0018e30cstr xzr, [sp+104]
0018e310sub x6, x3, x2
0018e314str x6, [sp+72]
0018e318str xzr, [sp+56]
0018e31cldr x7, [sp+152]
0018e320sbfm x8, x6, 63, 63
0018e324add x8, x6, x8, lsr #62
0018e328add x2, x7, x8, asr #2
0018e32cstr x2, [sp+96]
0018e330ldr x7, [sp+152]
0018e334sbfm x8, x6, 63, 63
0018e338add x8, x6, x8, lsr #62
0018e33csbfm x8, x8, 2, 63
0018e340add x7, x7, x8, lsl #1
0018e344str x7, [sp+88]
0018e348ldr x7, [sp+152]
0018e34csbfm x8, x6, 63, 63
0018e350add x6, x6, x8, lsr #62
0018e354sbfm x6, x6, 2, 63
0018e358add x6, x6, x6, lsl #1
0018e35cadd x6, x7, x6
0018e360str x6, [sp+80]
0018e364ldr x6, [sp+72]
0018e368subs xzr, x6, 8
0018e36cb.ge 0x18e374
0018e370b 0x18e3f4
0018e374
0018e374loc_18e374:
0018e374ldr x6, [sp+72]
0018e378subs xzr, x6, 50
0018e37cb.ge 0x18e384
0018e380b 0x18e3cc
0018e384
0018e384loc_18e384:
0018e384ldr x0, [sp+136]
0018e388ldr x1, [sp+144]
0018e38cadd x3, sp, 56
0018e390bl sort.medianAdjacent
0018e394str x0, [sp+96]
0018e398ldr x2, [sp+88]
0018e39cldr x0, [sp+136]
0018e3a0ldr x1, [sp+144]
0018e3a4add x3, sp, 56
0018e3a8bl sort.medianAdjacent
0018e3acstr x0, [sp+88]
0018e3b0ldr x2, [sp+80]
0018e3b4ldr x0, [sp+136]
0018e3b8ldr x1, [sp+144]
0018e3bcadd x3, sp, 56
0018e3c0bl sort.medianAdjacent
0018e3c4str x0, [sp+80]
0018e3c8b 0x18e3d0
0018e3cc
0018e3ccloc_18e3cc:
0018e3ccb 0x18e3d0
0018e3d0
0018e3d0loc_18e3d0:
0018e3d0ldr x3, [sp+88]
0018e3d4ldr x4, [sp+80]
0018e3d8ldr x2, [sp+96]
0018e3dcldr x0, [sp+136]
0018e3e0ldr x1, [sp+144]
0018e3e4add x5, sp, 56
0018e3e8bl sort.median
0018e3ecstr x0, [sp+88]
0018e3f0b 0x18e3f8
0018e3f4
0018e3f4loc_18e3f4:
0018e3f4b 0x18e3f8
0018e3f8
0018e3f8loc_18e3f8:
0018e3f8ldr x2, [sp+56]
0018e3fcstr x2, [sp+112]
0018e400cbz x2, 0x18e408
0018e404b 0x18e428
0018e408
0018e408loc_18e408:
0018e408b 0x18e40c
0018e40c
0018e40cloc_18e40c:
0018e40cldr x0, [sp+88]
0018e410str x0, [sp+64]
0018e414orr x1, xzr, 1
0018e418str x1, [sp+104]
0018e41cldur x29, [sp-8]
0018e420ldr x30, [sp], 128
0018e424ret x30
0018e428
0018e428loc_18e428:
0018e428subs xzr, x2, 12
0018e42cb.eq 0x18e434
0018e430b 0x18e454
0018e434
0018e434loc_18e434:
0018e434b 0x18e438
0018e438
0018e438loc_18e438:
0018e438ldr x0, [sp+88]
0018e43cstr x0, [sp+64]
0018e440orr x1, xzr, 2
0018e444str x1, [sp+104]
0018e448ldur x29, [sp-8]
0018e44cldr x30, [sp], 128
0018e450ret x30
0018e454
0018e454loc_18e454:
0018e454b 0x18e458
0018e458
0018e458loc_18e458:
0018e458b 0x18e45c
0018e45c
0018e45cloc_18e45c:
0018e45cldr x0, [sp+88]
0018e460str x0, [sp+64]
0018e464str xzr, [sp+104]
0018e468mov x1, xzr
0018e46cldur x29, [sp-8]
0018e470ldr x30, [sp], 128
0018e474ret x30
0018e478
0018e478loc_18e478:
0018e478stp x0, x1, [sp+8]
0018e47cstp x2, x3, [sp+24]
0018e480mov x3, x30
0018e484bl runtime.morestack_noctxt.abi0
0018e488ldp x0, x1, [sp+8]
0018e48cldp x2, x3, [sp+24]
0018e490b 0x18e2e0
0018e494udf 0
0018e498udf 0
0018e49cudf 0
0018e2e0
0018e2e0sort.choosePivot: ; void sort.choosePivot(sort.Interface data, int a, int b)
0018e2e0ldr x16, [x28+16]
0018e2e4subs xzr, sp, x16
0018e2e8b.ls 0x18e478
0018e2ecstr x30, [sp-128]!
0018e2f0stur x29, [sp-8]
0018e2f4sub x29, sp, 8
0018e2f8str x0, [sp+136]
0018e2fcstr x1, [sp+144]
0018e300str x2, [sp+152]
0018e304str x3, [sp+160]
0018e308str xzr, [sp+64]
0018e30cstr xzr, [sp+104]
0018e310sub x6, x3, x2
0018e314str x6, [sp+72]
0018e318str xzr, [sp+56]
0018e31cldr x7, [sp+152]
0018e320sbfm x8, x6, 63, 63
0018e324add x8, x6, x8, lsr #62
0018e328add x2, x7, x8, asr #2
0018e32cstr x2, [sp+96]
0018e330ldr x7, [sp+152]
0018e334sbfm x8, x6, 63, 63
0018e338add x8, x6, x8, lsr #62
0018e33csbfm x8, x8, 2, 63
0018e340add x7, x7, x8, lsl #1
0018e344str x7, [sp+88]
0018e348ldr x7, [sp+152]
0018e34csbfm x8, x6, 63, 63
0018e350add x6, x6, x8, lsr #62
0018e354sbfm x6, x6, 2, 63
0018e358add x6, x6, x6, lsl #1
0018e35cadd x6, x7, x6
0018e360str x6, [sp+80]
0018e364ldr x6, [sp+72]
0018e368subs xzr, x6, 8
0018e36cb.ge 0x18e374
0018e370b 0x18e3f4
0018e374
0018e374loc_18e374:
0018e374ldr x6, [sp+72]
0018e378subs xzr, x6, 50
0018e37cb.ge 0x18e384
0018e380b 0x18e3cc
0018e384
0018e384loc_18e384:
0018e384ldr x0, [sp+136]
0018e388ldr x1, [sp+144]
0018e38cadd x3, sp, 56
0018e390bl sort.medianAdjacent
0018e394str x0, [sp+96]
0018e398ldr x2, [sp+88]
0018e39cldr x0, [sp+136]
0018e3a0ldr x1, [sp+144]
0018e3a4add x3, sp, 56
0018e3a8bl sort.medianAdjacent
0018e3acstr x0, [sp+88]
0018e3b0ldr x2, [sp+80]
0018e3b4ldr x0, [sp+136]
0018e3b8ldr x1, [sp+144]
0018e3bcadd x3, sp, 56
0018e3c0bl sort.medianAdjacent
0018e3c4str x0, [sp+80]
0018e3c8b 0x18e3d0
0018e3cc
0018e3ccloc_18e3cc:
0018e3ccb 0x18e3d0
0018e3d0
0018e3d0loc_18e3d0:
0018e3d0ldr x3, [sp+88]
0018e3d4ldr x4, [sp+80]
0018e3d8ldr x2, [sp+96]
0018e3dcldr x0, [sp+136]
0018e3e0ldr x1, [sp+144]
0018e3e4add x5, sp, 56
0018e3e8bl sort.median
0018e3ecstr x0, [sp+88]
0018e3f0b 0x18e3f8
0018e3f4
0018e3f4loc_18e3f4:
0018e3f4b 0x18e3f8
0018e3f8
0018e3f8loc_18e3f8:
0018e3f8ldr x2, [sp+56]
0018e3fcstr x2, [sp+112]
0018e400cbz x2, 0x18e408
0018e404b 0x18e428
0018e408
0018e408loc_18e408:
0018e408b 0x18e40c
0018e40c
0018e40cloc_18e40c:
0018e40cldr x0, [sp+88]
0018e410str x0, [sp+64]
0018e414orr x1, xzr, 1
0018e418str x1, [sp+104]
0018e41cldur x29, [sp-8]
0018e420ldr x30, [sp], 128
0018e424ret x30
0018e428
0018e428loc_18e428:
0018e428subs xzr, x2, 12
0018e42cb.eq 0x18e434
0018e430b 0x18e454
0018e434
0018e434loc_18e434:
0018e434b 0x18e438
0018e438
0018e438loc_18e438:
0018e438ldr x0, [sp+88]
0018e43cstr x0, [sp+64]
0018e440orr x1, xzr, 2
0018e444str x1, [sp+104]
0018e448ldur x29, [sp-8]
0018e44cldr x30, [sp], 128
0018e450ret x30
0018e454
0018e454loc_18e454:
0018e454b 0x18e458
0018e458
0018e458loc_18e458:
0018e458b 0x18e45c
0018e45c
0018e45cloc_18e45c:
0018e45cldr x0, [sp+88]
0018e460str x0, [sp+64]
0018e464str xzr, [sp+104]
0018e468mov x1, xzr
0018e46cldur x29, [sp-8]
0018e470ldr x30, [sp], 128
0018e474ret x30
0018e478
0018e478loc_18e478:
0018e478stp x0, x1, [sp+8]
0018e47cstp x2, x3, [sp+24]
0018e480mov x3, x30
0018e484bl runtime.morestack_noctxt.abi0
0018e488ldp x0, x1, [sp+8]
0018e48cldp x2, x3, [sp+24]
0018e490b 0x18e2e0
0018e494udf 0
0018e498udf 0
0018e49cudf 0
0018e2e0
0018e4a0
0018e4a0sort.order2: ; void sort.order2(sort.Interface data, int a, int b, int * swaps)
0018e4a0ldr x16, [x28+16]
0018e4a4subs xzr, sp, x16
0018e4a8b.ls 0x18e550
0018e4acstr x30, [sp-64]!
0018e4b0stur x29, [sp-8]
0018e4b4sub x29, sp, 8
0018e4b8str x0, [sp+72]
0018e4bcstr x1, [sp+80]
0018e4c0str x2, [sp+88]
0018e4c4str x3, [sp+96]
0018e4c8str x4, [sp+104]
0018e4ccstr xzr, [sp+48]
0018e4d0str xzr, [sp+40]
0018e4d4ldr x2, [sp+88]
0018e4d8ldr x4, [sp+72]
0018e4dcldrsb x27, [x4]
0018e4e0ldr x4, [x4+32]
0018e4e4ldr x0, [sp+80]
0018e4e8mov x1, x3
0018e4ecblr x4
0018e4f0strb w0, [sp+39]
0018e4f4tbnz w0, 0, 0x18e4fc
0018e4f8b 0x18e534
0018e4fc
0018e4fcloc_18e4fc:
0018e4fcldr x2, [sp+104]
0018e500ldrsb x27, [x2]
0018e504ldr x3, [sp+104]
0018e508ldrsb x27, [x3]
0018e50cldr x3, [x3]
0018e510add x3, x3, 1
0018e514str x3, [x2]
0018e518ldr x0, [sp+96]
0018e51cstr x0, [sp+48]
0018e520ldr x1, [sp+88]
0018e524str x1, [sp+40]
0018e528ldur x29, [sp-8]
0018e52cldr x30, [sp], 64
0018e530ret x30
0018e534
0018e534loc_18e534:
0018e534ldr x0, [sp+88]
0018e538str x0, [sp+48]
0018e53cldr x1, [sp+96]
0018e540str x1, [sp+40]
0018e544ldur x29, [sp-8]
0018e548ldr x30, [sp], 64
0018e54cret x30
0018e550
0018e550loc_18e550:
0018e550stp x0, x1, [sp+8]
0018e554stp x2, x3, [sp+24]
0018e558str x4, [sp+40]
0018e55cmov x3, x30
0018e560bl runtime.morestack_noctxt.abi0
0018e564ldp x0, x1, [sp+8]
0018e568ldp x2, x3, [sp+24]
0018e56cldr x4, [sp+40]
0018e570b 0x18e4a0
0018e574udf 0
0018e578udf 0
0018e57cudf 0
0018e4a0
0018e4a0sort.order2: ; void sort.order2(sort.Interface data, int a, int b, int * swaps)
0018e4a0ldr x16, [x28+16]
0018e4a4subs xzr, sp, x16
0018e4a8b.ls 0x18e550
0018e4acstr x30, [sp-64]!
0018e4b0stur x29, [sp-8]
0018e4b4sub x29, sp, 8
0018e4b8str x0, [sp+72]
0018e4bcstr x1, [sp+80]
0018e4c0str x2, [sp+88]
0018e4c4str x3, [sp+96]
0018e4c8str x4, [sp+104]
0018e4ccstr xzr, [sp+48]
0018e4d0str xzr, [sp+40]
0018e4d4ldr x2, [sp+88]
0018e4d8ldr x4, [sp+72]
0018e4dcldrsb x27, [x4]
0018e4e0ldr x4, [x4+32]
0018e4e4ldr x0, [sp+80]
0018e4e8mov x1, x3
0018e4ecblr x4
0018e4f0strb w0, [sp+39]
0018e4f4tbnz w0, 0, 0x18e4fc
0018e4f8b 0x18e534
0018e4fc
0018e4fcloc_18e4fc:
0018e4fcldr x2, [sp+104]
0018e500ldrsb x27, [x2]
0018e504ldr x3, [sp+104]
0018e508ldrsb x27, [x3]
0018e50cldr x3, [x3]
0018e510add x3, x3, 1
0018e514str x3, [x2]
0018e518ldr x0, [sp+96]
0018e51cstr x0, [sp+48]
0018e520ldr x1, [sp+88]
0018e524str x1, [sp+40]
0018e528ldur x29, [sp-8]
0018e52cldr x30, [sp], 64
0018e530ret x30
0018e534
0018e534loc_18e534:
0018e534ldr x0, [sp+88]
0018e538str x0, [sp+48]
0018e53cldr x1, [sp+96]
0018e540str x1, [sp+40]
0018e544ldur x29, [sp-8]
0018e548ldr x30, [sp], 64
0018e54cret x30
0018e550
0018e550loc_18e550:
0018e550stp x0, x1, [sp+8]
0018e554stp x2, x3, [sp+24]
0018e558str x4, [sp+40]
0018e55cmov x3, x30
0018e560bl runtime.morestack_noctxt.abi0
0018e564ldp x0, x1, [sp+8]
0018e568ldp x2, x3, [sp+24]
0018e56cldr x4, [sp+40]
0018e570b 0x18e4a0
0018e574udf 0
0018e578udf 0
0018e57cudf 0
0018e4a0
0018e580
0018e580sort.median: ; void sort.median(sort.Interface data, int a, int b, int c, int * swaps)
0018e580ldr x16, [x28+16]
0018e584subs xzr, sp, x16
0018e588b.ls 0x18e65c
0018e58cstr x30, [sp-128]!
0018e590stur x29, [sp-8]
0018e594sub x29, sp, 8
0018e598str x0, [sp+136]
0018e59cstr x1, [sp+144]
0018e5a0str x2, [sp+152]
0018e5a4str x3, [sp+160]
0018e5a8str x4, [sp+168]
0018e5acstr x5, [sp+176]
0018e5b0str xzr, [sp+48]
0018e5b4ldr x2, [sp+152]
0018e5b8ldr x0, [sp+136]
0018e5bcldr x1, [sp+144]
0018e5c0mov x4, x5
0018e5c4bl sort.order2
0018e5c8str x0, [sp+96]
0018e5ccstr x1, [sp+88]
0018e5d0str x0, [sp+80]
0018e5d4str x1, [sp+72]
0018e5d8str x0, [sp+152]
0018e5dcstr x1, [sp+160]
0018e5e0ldr x4, [sp+176]
0018e5e4ldr x3, [sp+168]
0018e5e8ldr x0, [sp+136]
0018e5ecldr x5, [sp+144]
0018e5f0mov x2, x1
0018e5f4mov x1, x5
0018e5f8bl sort.order2
0018e5fcstr x0, [sp+88]
0018e600str x1, [sp+96]
0018e604str x0, [sp+64]
0018e608str x1, [sp+56]
0018e60cstr x0, [sp+160]
0018e610str x1, [sp+168]
0018e614ldr x4, [sp+176]
0018e618ldr x2, [sp+152]
0018e61cldr x5, [sp+136]
0018e620ldr x1, [sp+144]
0018e624mov x3, x0
0018e628mov x0, x5
0018e62cbl sort.order2
0018e630str x0, [sp+96]
0018e634str x1, [sp+88]
0018e638str x0, [sp+112]
0018e63cstr x1, [sp+104]
0018e640str x0, [sp+152]
0018e644str x1, [sp+160]
0018e648str x1, [sp+48]
0018e64cmov x0, x1
0018e650ldur x29, [sp-8]
0018e654ldr x30, [sp], 128
0018e658ret x30
0018e65c
0018e65cloc_18e65c:
0018e65cstp x0, x1, [sp+8]
0018e660stp x2, x3, [sp+24]
0018e664stp x4, x5, [sp+40]
0018e668mov x3, x30
0018e66cbl runtime.morestack_noctxt.abi0
0018e670ldp x0, x1, [sp+8]
0018e674ldp x2, x3, [sp+24]
0018e678ldp x4, x5, [sp+40]
0018e67cb 0x18e580
0018e580
0018e580sort.median: ; void sort.median(sort.Interface data, int a, int b, int c, int * swaps)
0018e580ldr x16, [x28+16]
0018e584subs xzr, sp, x16
0018e588b.ls 0x18e65c
0018e58cstr x30, [sp-128]!
0018e590stur x29, [sp-8]
0018e594sub x29, sp, 8
0018e598str x0, [sp+136]
0018e59cstr x1, [sp+144]
0018e5a0str x2, [sp+152]
0018e5a4str x3, [sp+160]
0018e5a8str x4, [sp+168]
0018e5acstr x5, [sp+176]
0018e5b0str xzr, [sp+48]
0018e5b4ldr x2, [sp+152]
0018e5b8ldr x0, [sp+136]
0018e5bcldr x1, [sp+144]
0018e5c0mov x4, x5
0018e5c4bl sort.order2
0018e5c8str x0, [sp+96]
0018e5ccstr x1, [sp+88]
0018e5d0str x0, [sp+80]
0018e5d4str x1, [sp+72]
0018e5d8str x0, [sp+152]
0018e5dcstr x1, [sp+160]
0018e5e0ldr x4, [sp+176]
0018e5e4ldr x3, [sp+168]
0018e5e8ldr x0, [sp+136]
0018e5ecldr x5, [sp+144]
0018e5f0mov x2, x1
0018e5f4mov x1, x5
0018e5f8bl sort.order2
0018e5fcstr x0, [sp+88]
0018e600str x1, [sp+96]
0018e604str x0, [sp+64]
0018e608str x1, [sp+56]
0018e60cstr x0, [sp+160]
0018e610str x1, [sp+168]
0018e614ldr x4, [sp+176]
0018e618ldr x2, [sp+152]
0018e61cldr x5, [sp+136]
0018e620ldr x1, [sp+144]
0018e624mov x3, x0
0018e628mov x0, x5
0018e62cbl sort.order2
0018e630str x0, [sp+96]
0018e634str x1, [sp+88]
0018e638str x0, [sp+112]
0018e63cstr x1, [sp+104]
0018e640str x0, [sp+152]
0018e644str x1, [sp+160]
0018e648str x1, [sp+48]
0018e64cmov x0, x1
0018e650ldur x29, [sp-8]
0018e654ldr x30, [sp], 128
0018e658ret x30
0018e65c
0018e65cloc_18e65c:
0018e65cstp x0, x1, [sp+8]
0018e660stp x2, x3, [sp+24]
0018e664stp x4, x5, [sp+40]
0018e668mov x3, x30
0018e66cbl runtime.morestack_noctxt.abi0
0018e670ldp x0, x1, [sp+8]
0018e674ldp x2, x3, [sp+24]
0018e678ldp x4, x5, [sp+40]
0018e67cb 0x18e580
0018e580
0018e680
0018e680sort.medianAdjacent: ; void sort.medianAdjacent(sort.Interface data, int a, int * swaps)
0018e680ldr x16, [x28+16]
0018e684subs xzr, sp, x16
0018e688b.ls 0x18e6dc
0018e68cstr x30, [sp-80]!
0018e690stur x29, [sp-8]
0018e694sub x29, sp, 8
0018e698str x0, [sp+88]
0018e69cstr x1, [sp+96]
0018e6a0str x2, [sp+104]
0018e6a4str x3, [sp+112]
0018e6a8str xzr, [sp+56]
0018e6acldr x0, [sp+88]
0018e6b0sub x6, x2, 1
0018e6b4add x4, x2, 1
0018e6b8mov x5, x3
0018e6bcmov x3, x2
0018e6c0mov x2, x6
0018e6c4bl sort.median
0018e6c8str x0, [sp+64]
0018e6ccstr x0, [sp+56]
0018e6d0ldur x29, [sp-8]
0018e6d4ldr x30, [sp], 80
0018e6d8ret x30
0018e6dc
0018e6dcloc_18e6dc:
0018e6dcstp x0, x1, [sp+8]
0018e6e0stp x2, x3, [sp+24]
0018e6e4mov x3, x30
0018e6e8bl runtime.morestack_noctxt.abi0
0018e6ecldp x0, x1, [sp+8]
0018e6f0ldp x2, x3, [sp+24]
0018e6f4b 0x18e680
0018e6f8udf 0
0018e6fcudf 0
0018e680
0018e680sort.medianAdjacent: ; void sort.medianAdjacent(sort.Interface data, int a, int * swaps)
0018e680ldr x16, [x28+16]
0018e684subs xzr, sp, x16
0018e688b.ls 0x18e6dc
0018e68cstr x30, [sp-80]!
0018e690stur x29, [sp-8]
0018e694sub x29, sp, 8
0018e698str x0, [sp+88]
0018e69cstr x1, [sp+96]
0018e6a0str x2, [sp+104]
0018e6a4str x3, [sp+112]
0018e6a8str xzr, [sp+56]
0018e6acldr x0, [sp+88]
0018e6b0sub x6, x2, 1
0018e6b4add x4, x2, 1
0018e6b8mov x5, x3
0018e6bcmov x3, x2
0018e6c0mov x2, x6
0018e6c4bl sort.median
0018e6c8str x0, [sp+64]
0018e6ccstr x0, [sp+56]
0018e6d0ldur x29, [sp-8]
0018e6d4ldr x30, [sp], 80
0018e6d8ret x30
0018e6dc
0018e6dcloc_18e6dc:
0018e6dcstp x0, x1, [sp+8]
0018e6e0stp x2, x3, [sp+24]
0018e6e4mov x3, x30
0018e6e8bl runtime.morestack_noctxt.abi0
0018e6ecldp x0, x1, [sp+8]
0018e6f0ldp x2, x3, [sp+24]
0018e6f4b 0x18e680
0018e6f8udf 0
0018e6fcudf 0
0018e680
0018e700
0018e700sort.reverseRange: ; void sort.reverseRange(sort.Interface data, int a, int b)
0018e700ldr x16, [x28+16]
0018e704subs xzr, sp, x16
0018e708b.ls 0x18e794
0018e70cstr x30, [sp-64]!
0018e710stur x29, [sp-8]
0018e714sub x29, sp, 8
0018e718str x0, [sp+72]
0018e71cstr x1, [sp+80]
0018e720str x2, [sp+88]
0018e724str x3, [sp+96]
0018e728str x2, [sp+48]
0018e72csub x3, x3, 1
0018e730str x3, [sp+40]
0018e734b 0x18e738
0018e738
0018e738loc_18e738:
0018e738ldr x3, [sp+40]
0018e73cldr x4, [sp+48]
0018e740subs xzr, x3, x4
0018e744b.gt 0x18e74c
0018e748b 0x18e788
0018e74c
0018e74cloc_18e74c:
0018e74cldr x1, [sp+48]
0018e750ldr x2, [sp+40]
0018e754ldr x3, [sp+72]
0018e758ldrsb x27, [x3]
0018e75cldr x3, [x3+40]
0018e760ldr x0, [sp+80]
0018e764blr x3
0018e768ldr x3, [sp+48]
0018e76cadd x3, x3, 1
0018e770str x3, [sp+48]
0018e774ldr x3, [sp+40]
0018e778sub x3, x3, 1
0018e77cstr x3, [sp+40]
0018e780b 0x18e784
0018e784
0018e784loc_18e784:
0018e784b 0x18e738
0018e788
0018e788loc_18e788:
0018e788ldur x29, [sp-8]
0018e78cldr x30, [sp], 64
0018e790ret x30
0018e794
0018e794loc_18e794:
0018e794stp x0, x1, [sp+8]
0018e798stp x2, x3, [sp+24]
0018e79cmov x3, x30
0018e7a0bl runtime.morestack_noctxt.abi0
0018e7a4ldp x0, x1, [sp+8]
0018e7a8ldp x2, x3, [sp+24]
0018e7acb 0x18e700
0018e700
0018e700sort.reverseRange: ; void sort.reverseRange(sort.Interface data, int a, int b)
0018e700ldr x16, [x28+16]
0018e704subs xzr, sp, x16
0018e708b.ls 0x18e794
0018e70cstr x30, [sp-64]!
0018e710stur x29, [sp-8]
0018e714sub x29, sp, 8
0018e718str x0, [sp+72]
0018e71cstr x1, [sp+80]
0018e720str x2, [sp+88]
0018e724str x3, [sp+96]
0018e728str x2, [sp+48]
0018e72csub x3, x3, 1
0018e730str x3, [sp+40]
0018e734b 0x18e738
0018e738
0018e738loc_18e738:
0018e738ldr x3, [sp+40]
0018e73cldr x4, [sp+48]
0018e740subs xzr, x3, x4
0018e744b.gt 0x18e74c
0018e748b 0x18e788
0018e74c
0018e74cloc_18e74c:
0018e74cldr x1, [sp+48]
0018e750ldr x2, [sp+40]
0018e754ldr x3, [sp+72]
0018e758ldrsb x27, [x3]
0018e75cldr x3, [x3+40]
0018e760ldr x0, [sp+80]
0018e764blr x3
0018e768ldr x3, [sp+48]
0018e76cadd x3, x3, 1
0018e770str x3, [sp+48]
0018e774ldr x3, [sp+40]
0018e778sub x3, x3, 1
0018e77cstr x3, [sp+40]
0018e780b 0x18e784
0018e784
0018e784loc_18e784:
0018e784b 0x18e738
0018e788
0018e788loc_18e788:
0018e788ldur x29, [sp-8]
0018e78cldr x30, [sp], 64
0018e790ret x30
0018e794
0018e794loc_18e794:
0018e794stp x0, x1, [sp+8]
0018e798stp x2, x3, [sp+24]
0018e79cmov x3, x30
0018e7a0bl runtime.morestack_noctxt.abi0
0018e7a4ldp x0, x1, [sp+8]
0018e7a8ldp x2, x3, [sp+24]
0018e7acb 0x18e700
0018e700
0018e7b0
0018e7b0slices.Sort[go.shape.[]string,go.shape.string]: ; void slices.Sort[go.shape.[]string,go.shape.string](uintptr[4] * dict, int64_t x)
0018e7b0ldr x16, [x28+16]
0018e7b4subs xzr, sp, x16
0018e7b8b.ls 0x18e820
0018e7bcstr x30, [sp-96]!
0018e7c0stur x29, [sp-8]
0018e7c4sub x29, sp, 8
0018e7c8str x0, [sp+104]
0018e7ccstr x1, [sp+112]
0018e7d0str x2, [sp+120]
0018e7d4str x3, [sp+128]
0018e7d8str x2, [sp+64]
0018e7dcclz x7, x2
0018e7e0orr x8, xzr, 64
0018e7e4sub x7, x8, x7
0018e7e8str x7, [sp+72]
0018e7ecldrsb x27, [x0]
0018e7f0ldr x0, [x0]
0018e7f4str x0, [sp+80]
0018e7f8ldr x5, [sp+64]
0018e7fcldr x6, [sp+72]
0018e800ldr x1, [sp+112]
0018e804ldr x2, [sp+120]
0018e808ldr x3, [sp+128]
0018e80cmov x4, xzr
0018e810bl slices.pdqsortOrdered[go.shape.string]
0018e814ldur x29, [sp-8]
0018e818ldr x30, [sp], 96
0018e81cret x30
0018e820
0018e820loc_18e820:
0018e820stp x0, x1, [sp+8]
0018e824stp x2, x3, [sp+24]
0018e828mov x3, x30
0018e82cbl runtime.morestack_noctxt.abi0
0018e830ldp x0, x1, [sp+8]
0018e834ldp x2, x3, [sp+24]
0018e838b 0x18e7b0
0018e83cudf 0
0018e7b0
0018e7b0slices.Sort[go.shape.[]string,go.shape.string]: ; void slices.Sort[go.shape.[]string,go.shape.string](uintptr[4] * dict, int64_t x)
0018e7b0ldr x16, [x28+16]
0018e7b4subs xzr, sp, x16
0018e7b8b.ls 0x18e820
0018e7bcstr x30, [sp-96]!
0018e7c0stur x29, [sp-8]
0018e7c4sub x29, sp, 8
0018e7c8str x0, [sp+104]
0018e7ccstr x1, [sp+112]
0018e7d0str x2, [sp+120]
0018e7d4str x3, [sp+128]
0018e7d8str x2, [sp+64]
0018e7dcclz x7, x2
0018e7e0orr x8, xzr, 64
0018e7e4sub x7, x8, x7
0018e7e8str x7, [sp+72]
0018e7ecldrsb x27, [x0]
0018e7f0ldr x0, [x0]
0018e7f4str x0, [sp+80]
0018e7f8ldr x5, [sp+64]
0018e7fcldr x6, [sp+72]
0018e800ldr x1, [sp+112]
0018e804ldr x2, [sp+120]
0018e808ldr x3, [sp+128]
0018e80cmov x4, xzr
0018e810bl slices.pdqsortOrdered[go.shape.string]
0018e814ldur x29, [sp-8]
0018e818ldr x30, [sp], 96
0018e81cret x30
0018e820
0018e820loc_18e820:
0018e820stp x0, x1, [sp+8]
0018e824stp x2, x3, [sp+24]
0018e828mov x3, x30
0018e82cbl runtime.morestack_noctxt.abi0
0018e830ldp x0, x1, [sp+8]
0018e834ldp x2, x3, [sp+24]
0018e838b 0x18e7b0
0018e83cudf 0
0018e7b0
0018e840
0018e840google.golang.org/protobuf/internal/order.init.func1: ; void google.golang.org/protobuf/internal/order.init.func1(google.golang.org/protobuf/reflect/protoreflect.FieldDescriptor x, google.golang.org/protobuf/reflect/protoreflect.FieldDescriptor y)
0018e840ldr x16, [x28+16]
0018e844sub x17, sp, 16
0018e848subs xzr, x17, x16
0018e84cb.ls 0x18eb50
0018e850str x30, [sp-144]!
0018e854stur x29, [sp-8]
0018e858sub x29, sp, 8
0018e85cstr x0, [sp+152]
0018e860str x1, [sp+160]
0018e864str x2, [sp+168]
0018e868str x3, [sp+176]
0018e86cstrb wzr, [sp+35]
0018e870ldr x1, [sp+152]
0018e874ldrsb x27, [x1]
0018e878ldr x1, [x1+40]
0018e87cldr x0, [sp+160]
0018e880blr x1
0018e884str x0, [sp+120]
0018e888str x1, [sp+128]
0018e88cldr x0, [sp+176]
0018e890ldr x1, [sp+168]
0018e894ldrsb x27, [x1]
0018e898ldr x1, [x1+40]
0018e89cblr x1
0018e8a0str x0, [sp+104]
0018e8a4str x1, [sp+112]
0018e8a8ldr x1, [sp+120]
0018e8acldr x2, [sp+128]
0018e8b0str x1, [sp+80]
0018e8b4str x2, [sp+88]
0018e8b8ldr x1, [sp+104]
0018e8bcldr x2, [sp+112]
0018e8c0str x1, [sp+64]
0018e8c4str x2, [sp+72]
0018e8c8adrp x1, 0x54b000
0018e8ccadd x1, x1, 344
0018e8d0str x1, [sp+96]
0018e8d4ldr x1, [sp+152]
0018e8d8ldrsb x27, [x1]
0018e8dcldr x1, [x1+120]
0018e8e0ldr x0, [sp+160]
0018e8e4blr x1
0018e8e8strb w0, [sp+37]
0018e8ecldr x0, [sp+176]
0018e8f0ldr x1, [sp+168]
0018e8f4ldrsb x27, [x1]
0018e8f8ldr x1, [x1+120]
0018e8fcblr x1
0018e900strb w0, [sp+36]
0018e904ldrb w1, [sp+37]
0018e908eor x1, x1, x0
0018e90ctbnz w1, 0, 0x18e914
0018e910b 0x18e974
0018e914
0018e914loc_18e914:
0018e914ldr x1, [sp+152]
0018e918ldrsb x27, [x1]
0018e91cldr x1, [x1+120]
0018e920ldr x0, [sp+160]
0018e924blr x1
0018e928strb w0, [sp+37]
0018e92cstrb w0, [sp+36]
0018e930tbnz w0, 0, 0x18e938
0018e934b 0x18e95c
0018e938
0018e938loc_18e938:
0018e938ldr x1, [sp+168]
0018e93cldrsb x27, [x1]
0018e940ldr x0, [sp+176]
0018e944ldr x1, [x1+120]
0018e948blr x1
0018e94cstrb w0, [sp+39]
0018e950eor x1, x0, 1
0018e954strb w1, [sp+36]
0018e958b 0x18e960
0018e95c
0018e95cloc_18e95c:
0018e95cb 0x18e960
0018e960
0018e960loc_18e960:
0018e960ldrb w0, [sp+36]
0018e964strb w0, [sp+35]
0018e968ldur x29, [sp-8]
0018e96cldr x30, [sp], 144
0018e970ret x30
0018e974
0018e974loc_18e974:
0018e974ldr x0, [sp+80]
0018e978ldr x1, [sp+88]
0018e97cldr x26, [sp+96]
0018e980ldr x2, [x26]
0018e984blr x2
0018e988strb w0, [sp+37]
0018e98cldr x0, [sp+64]
0018e990ldr x26, [sp+96]
0018e994ldr x2, [x26]
0018e998ldr x1, [sp+72]
0018e99cblr x2
0018e9a0strb w0, [sp+36]
0018e9a4ldrb w2, [sp+37]
0018e9a8eor x2, x2, x0
0018e9actbnz w2, 0, 0x18e9b4
0018e9b0b 0x18ea14
0018e9b4
0018e9b4loc_18e9b4:
0018e9b4ldr x0, [sp+80]
0018e9b8ldr x1, [sp+88]
0018e9bcldr x26, [sp+96]
0018e9c0ldr x2, [x26]
0018e9c4blr x2
0018e9c8strb w0, [sp+37]
0018e9cceor x2, x0, 1
0018e9d0strb w2, [sp+36]
0018e9d4tbnz w0, 0, 0x18e9dc
0018e9d8b 0x18e9e0
0018e9dc
0018e9dcloc_18e9dc:
0018e9dcb 0x18ea00
0018e9e0
0018e9e0loc_18e9e0:
0018e9e0ldr x0, [sp+64]
0018e9e4ldr x26, [sp+96]
0018e9e8ldr x2, [x26]
0018e9ecldr x1, [sp+72]
0018e9f0blr x2
0018e9f4strb w0, [sp+39]
0018e9f8strb w0, [sp+36]
0018e9fcb 0x18ea00
0018ea00
0018ea00loc_18ea00:
0018ea00ldrb w0, [sp+36]
0018ea04strb w0, [sp+35]
0018ea08ldur x29, [sp-8]
0018ea0cldr x30, [sp], 144
0018ea10ret x30
0018ea14
0018ea14loc_18ea14:
0018ea14ldr x0, [sp+80]
0018ea18ldr x1, [sp+88]
0018ea1cldr x26, [sp+96]
0018ea20ldr x2, [x26]
0018ea24blr x2
0018ea28strb w0, [sp+39]
0018ea2cstrb w0, [sp+36]
0018ea30tbnz w0, 0, 0x18ea38
0018ea34b 0x18ea58
0018ea38
0018ea38loc_18ea38:
0018ea38ldr x26, [sp+96]
0018ea3cldr x2, [x26]
0018ea40ldr x0, [sp+64]
0018ea44ldr x1, [sp+72]
0018ea48blr x2
0018ea4cstrb w0, [sp+38]
0018ea50strb w0, [sp+36]
0018ea54b 0x18ea5c
0018ea58
0018ea58loc_18ea58:
0018ea58b 0x18ea5c
0018ea5c
0018ea5cloc_18ea5c:
0018ea5cldrb w3, [sp+36]
0018ea60strb w3, [sp+37]
0018ea64tbnz w3, 0, 0x18ea6c
0018ea68b 0x18eaa8
0018ea6c
0018ea6cloc_18ea6c:
0018ea6cldr x3, [sp+80]
0018ea70ldr x4, [sp+64]
0018ea74subs xzr, x4, x3
0018ea78cset x3, ne
0018ea7cb.ne 0x18ea84
0018ea80b 0x18ea88
0018ea84
0018ea84loc_18ea84:
0018ea84b 0x18eaa0
0018ea88
0018ea88loc_18ea88:
0018ea88ldr x0, [sp+80]
0018ea8cldr x1, [sp+88]
0018ea90ldr x2, [sp+72]
0018ea94bl runtime.ifaceeq
0018ea98eor x3, x0, 1
0018ea9cb 0x18eaa0
0018eaa0
0018eaa0loc_18eaa0:
0018eaa0strb w3, [sp+37]
0018eaa4b 0x18eaac
0018eaa8
0018eaa8loc_18eaa8:
0018eaa8b 0x18eaac
0018eaac
0018eaacloc_18eaac:
0018eaacldrb w1, [sp+37]
0018eab0tbnz w1, 0, 0x18eab8
0018eab4b 0x18eb04
0018eab8
0018eab8loc_18eab8:
0018eab8ldr x1, [sp+80]
0018eabcldrsb x27, [x1]
0018eac0ldr x1, [x1+40]
0018eac4ldr x0, [sp+88]
0018eac8blr x1
0018eaccstr x0, [sp+56]
0018ead0ldr x0, [sp+72]
0018ead4ldr x1, [sp+64]
0018ead8ldrsb x27, [x1]
0018eadcldr x1, [x1+40]
0018eae0blr x1
0018eae4str x0, [sp+48]
0018eae8ldr x1, [sp+56]
0018eaecsubs xzr, x0, x1
0018eaf0cset x0, gt
0018eaf4strb w0, [sp+35]
0018eaf8ldur x29, [sp-8]
0018eafcldr x30, [sp], 144
0018eb00ret x30
0018eb04
0018eb04loc_18eb04:
0018eb04ldr x1, [sp+152]
0018eb08ldrsb x27, [x1]
0018eb0cldr x1, [x1+216]
0018eb10ldr x0, [sp+160]
0018eb14blr x1
0018eb18str w0, [sp+44]
0018eb1cldr x0, [sp+176]
0018eb20ldr x1, [sp+168]
0018eb24ldrsb x27, [x1]
0018eb28ldr x1, [x1+216]
0018eb2cblr x1
0018eb30str w0, [sp+40]
0018eb34ldrsw x1, [sp+44]
0018eb38subs wzr, w0, w1
0018eb3ccset x0, gt
0018eb40strb w0, [sp+35]
0018eb44ldur x29, [sp-8]
0018eb48ldr x30, [sp], 144
0018eb4cret x30
0018eb50
0018eb50loc_18eb50:
0018eb50stp x0, x1, [sp+8]
0018eb54stp x2, x3, [sp+24]
0018eb58mov x3, x30
0018eb5cbl runtime.morestack_noctxt.abi0
0018eb60ldp x0, x1, [sp+8]
0018eb64ldp x2, x3, [sp+24]
0018eb68b 0x18e840
0018eb6cudf 0
0018e840
0018e840google.golang.org/protobuf/internal/order.init.func1: ; void google.golang.org/protobuf/internal/order.init.func1(google.golang.org/protobuf/reflect/protoreflect.FieldDescriptor x, google.golang.org/protobuf/reflect/protoreflect.FieldDescriptor y)
0018e840ldr x16, [x28+16]
0018e844sub x17, sp, 16
0018e848subs xzr, x17, x16
0018e84cb.ls 0x18eb50
0018e850str x30, [sp-144]!
0018e854stur x29, [sp-8]
0018e858sub x29, sp, 8
0018e85cstr x0, [sp+152]
0018e860str x1, [sp+160]
0018e864str x2, [sp+168]
0018e868str x3, [sp+176]
0018e86cstrb wzr, [sp+35]
0018e870ldr x1, [sp+152]
0018e874ldrsb x27, [x1]
0018e878ldr x1, [x1+40]
0018e87cldr x0, [sp+160]
0018e880blr x1
0018e884str x0, [sp+120]
0018e888str x1, [sp+128]
0018e88cldr x0, [sp+176]
0018e890ldr x1, [sp+168]
0018e894ldrsb x27, [x1]
0018e898ldr x1, [x1+40]
0018e89cblr x1
0018e8a0str x0, [sp+104]
0018e8a4str x1, [sp+112]
0018e8a8ldr x1, [sp+120]
0018e8acldr x2, [sp+128]
0018e8b0str x1, [sp+80]
0018e8b4str x2, [sp+88]
0018e8b8ldr x1, [sp+104]
0018e8bcldr x2, [sp+112]
0018e8c0str x1, [sp+64]
0018e8c4str x2, [sp+72]
0018e8c8adrp x1, 0x54b000
0018e8ccadd x1, x1, 344
0018e8d0str x1, [sp+96]
0018e8d4ldr x1, [sp+152]
0018e8d8ldrsb x27, [x1]
0018e8dcldr x1, [x1+120]
0018e8e0ldr x0, [sp+160]
0018e8e4blr x1
0018e8e8strb w0, [sp+37]
0018e8ecldr x0, [sp+176]
0018e8f0ldr x1, [sp+168]
0018e8f4ldrsb x27, [x1]
0018e8f8ldr x1, [x1+120]
0018e8fcblr x1
0018e900strb w0, [sp+36]
0018e904ldrb w1, [sp+37]
0018e908eor x1, x1, x0
0018e90ctbnz w1, 0, 0x18e914
0018e910b 0x18e974
0018e914
0018e914loc_18e914:
0018e914ldr x1, [sp+152]
0018e918ldrsb x27, [x1]
0018e91cldr x1, [x1+120]
0018e920ldr x0, [sp+160]
0018e924blr x1
0018e928strb w0, [sp+37]
0018e92cstrb w0, [sp+36]
0018e930tbnz w0, 0, 0x18e938
0018e934b 0x18e95c
0018e938
0018e938loc_18e938:
0018e938ldr x1, [sp+168]
0018e93cldrsb x27, [x1]
0018e940ldr x0, [sp+176]
0018e944ldr x1, [x1+120]
0018e948blr x1
0018e94cstrb w0, [sp+39]
0018e950eor x1, x0, 1
0018e954strb w1, [sp+36]
0018e958b 0x18e960
0018e95c
0018e95cloc_18e95c:
0018e95cb 0x18e960
0018e960
0018e960loc_18e960:
0018e960ldrb w0, [sp+36]
0018e964strb w0, [sp+35]
0018e968ldur x29, [sp-8]
0018e96cldr x30, [sp], 144
0018e970ret x30
0018e974
0018e974loc_18e974:
0018e974ldr x0, [sp+80]
0018e978ldr x1, [sp+88]
0018e97cldr x26, [sp+96]
0018e980ldr x2, [x26]
0018e984blr x2
0018e988strb w0, [sp+37]
0018e98cldr x0, [sp+64]
0018e990ldr x26, [sp+96]
0018e994ldr x2, [x26]
0018e998ldr x1, [sp+72]
0018e99cblr x2
0018e9a0strb w0, [sp+36]
0018e9a4ldrb w2, [sp+37]
0018e9a8eor x2, x2, x0
0018e9actbnz w2, 0, 0x18e9b4
0018e9b0b 0x18ea14
0018e9b4
0018e9b4loc_18e9b4:
0018e9b4ldr x0, [sp+80]
0018e9b8ldr x1, [sp+88]
0018e9bcldr x26, [sp+96]
0018e9c0ldr x2, [x26]
0018e9c4blr x2
0018e9c8strb w0, [sp+37]
0018e9cceor x2, x0, 1
0018e9d0strb w2, [sp+36]
0018e9d4tbnz w0, 0, 0x18e9dc
0018e9d8b 0x18e9e0
0018e9dc
0018e9dcloc_18e9dc:
0018e9dcb 0x18ea00
0018e9e0
0018e9e0loc_18e9e0:
0018e9e0ldr x0, [sp+64]
0018e9e4ldr x26, [sp+96]
0018e9e8ldr x2, [x26]
0018e9ecldr x1, [sp+72]
0018e9f0blr x2
0018e9f4strb w0, [sp+39]
0018e9f8strb w0, [sp+36]
0018e9fcb 0x18ea00
0018ea00
0018ea00loc_18ea00:
0018ea00ldrb w0, [sp+36]
0018ea04strb w0, [sp+35]
0018ea08ldur x29, [sp-8]
0018ea0cldr x30, [sp], 144
0018ea10ret x30
0018ea14
0018ea14loc_18ea14:
0018ea14ldr x0, [sp+80]
0018ea18ldr x1, [sp+88]
0018ea1cldr x26, [sp+96]
0018ea20ldr x2, [x26]
0018ea24blr x2
0018ea28strb w0, [sp+39]
0018ea2cstrb w0, [sp+36]
0018ea30tbnz w0, 0, 0x18ea38
0018ea34b 0x18ea58
0018ea38
0018ea38loc_18ea38:
0018ea38ldr x26, [sp+96]
0018ea3cldr x2, [x26]
0018ea40ldr x0, [sp+64]
0018ea44ldr x1, [sp+72]
0018ea48blr x2
0018ea4cstrb w0, [sp+38]
0018ea50strb w0, [sp+36]
0018ea54b 0x18ea5c
0018ea58
0018ea58loc_18ea58:
0018ea58b 0x18ea5c
0018ea5c
0018ea5cloc_18ea5c:
0018ea5cldrb w3, [sp+36]
0018ea60strb w3, [sp+37]
0018ea64tbnz w3, 0, 0x18ea6c
0018ea68b 0x18eaa8
0018ea6c
0018ea6cloc_18ea6c:
0018ea6cldr x3, [sp+80]
0018ea70ldr x4, [sp+64]
0018ea74subs xzr, x4, x3
0018ea78cset x3, ne
0018ea7cb.ne 0x18ea84
0018ea80b 0x18ea88
0018ea84
0018ea84loc_18ea84:
0018ea84b 0x18eaa0
0018ea88
0018ea88loc_18ea88:
0018ea88ldr x0, [sp+80]
0018ea8cldr x1, [sp+88]
0018ea90ldr x2, [sp+72]
0018ea94bl runtime.ifaceeq
0018ea98eor x3, x0, 1
0018ea9cb 0x18eaa0
0018eaa0
0018eaa0loc_18eaa0:
0018eaa0strb w3, [sp+37]
0018eaa4b 0x18eaac
0018eaa8
0018eaa8loc_18eaa8:
0018eaa8b 0x18eaac
0018eaac
0018eaacloc_18eaac:
0018eaacldrb w1, [sp+37]
0018eab0tbnz w1, 0, 0x18eab8
0018eab4b 0x18eb04
0018eab8
0018eab8loc_18eab8:
0018eab8ldr x1, [sp+80]
0018eabcldrsb x27, [x1]
0018eac0ldr x1, [x1+40]
0018eac4ldr x0, [sp+88]
0018eac8blr x1
0018eaccstr x0, [sp+56]
0018ead0ldr x0, [sp+72]
0018ead4ldr x1, [sp+64]
0018ead8ldrsb x27, [x1]
0018eadcldr x1, [x1+40]
0018eae0blr x1
0018eae4str x0, [sp+48]
0018eae8ldr x1, [sp+56]
0018eaecsubs xzr, x0, x1
0018eaf0cset x0, gt
0018eaf4strb w0, [sp+35]
0018eaf8ldur x29, [sp-8]
0018eafcldr x30, [sp], 144
0018eb00ret x30
0018eb04
0018eb04loc_18eb04:
0018eb04ldr x1, [sp+152]
0018eb08ldrsb x27, [x1]
0018eb0cldr x1, [x1+216]
0018eb10ldr x0, [sp+160]
0018eb14blr x1
0018eb18str w0, [sp+44]
0018eb1cldr x0, [sp+176]
0018eb20ldr x1, [sp+168]
0018eb24ldrsb x27, [x1]
0018eb28ldr x1, [x1+216]
0018eb2cblr x1
0018eb30str w0, [sp+40]
0018eb34ldrsw x1, [sp+44]
0018eb38subs wzr, w0, w1
0018eb3ccset x0, gt
0018eb40strb w0, [sp+35]
0018eb44ldur x29, [sp-8]
0018eb48ldr x30, [sp], 144
0018eb4cret x30
0018eb50
0018eb50loc_18eb50:
0018eb50stp x0, x1, [sp+8]
0018eb54stp x2, x3, [sp+24]
0018eb58mov x3, x30
0018eb5cbl runtime.morestack_noctxt.abi0
0018eb60ldp x0, x1, [sp+8]
0018eb64ldp x2, x3, [sp+24]
0018eb68b 0x18e840
0018eb6cudf 0
0018e840
Loading..