.data .globl n .p2align 2 n: .word 0 .text .globl bubblesort .p2align 2 bubblesort: .L.bubblesort.0: stp x29, x30, [sp, #-16]! mov x29, sp sub sp, sp, #96 stur x0, [x29, #-8] mov w8, #0 stur w8, [x29, #-12] mov w8, #0 stur w8, [x29, #-16] mov w8, #0 stur w8, [x29, #-12] b .L.bubblesort.1 .L.bubblesort.1: ldur w8, [x29, #-12] stur w8, [x29, #-24] adrp x13, n ldr w8, [x13, #:lo12:n] stur w8, [x29, #-28] ldur w8, [x29, #-24] ldur w9, [x29, #-28] mov w10, #1 sub w9, w9, w10 cmp w8, w9 b.lt .L.bubblesort.2 b .L.bubblesort.3 .L.bubblesort.2: mov w8, #0 stur w8, [x29, #-16] b .L.bubblesort.4 .L.bubblesort.3: mov w0, #0 add sp, sp, #96 ldp x29, x30, [sp], #16 ret .L.bubblesort.4: ldur w8, [x29, #-16] stur w8, [x29, #-32] adrp x13, n ldr w8, [x13, #:lo12:n] stur w8, [x29, #-36] ldur w8, [x29, #-12] stur w8, [x29, #-40] ldur w8, [x29, #-32] ldur w9, [x29, #-36] ldur w11, [x29, #-40] sub w9, w9, w11 mov w10, #1 sub w9, w9, w10 cmp w8, w9 b.lt .L.bubblesort.5 b .L.bubblesort.6 .L.bubblesort.5: ldur w8, [x29, #-16] stur w8, [x29, #-44] ldur x15, [x29, #-8] ldur w14, [x29, #-44] sxtw x14, w14 lsl x14, x14, #2 add x15, x15, x14 ldr w8, [x15] stur w8, [x29, #-48] ldur w8, [x29, #-16] stur w8, [x29, #-52] ldur x15, [x29, #-8] ldur w14, [x29, #-52] mov w8, #1 add w14, w14, w8 sxtw x14, w14 lsl x14, x14, #2 add x15, x15, x14 ldr w8, [x15] stur w8, [x29, #-56] ldur w8, [x29, #-48] ldur w9, [x29, #-56] cmp w8, w9 b.gt .L.bubblesort.7 b .L.bubblesort.8 .L.bubblesort.6: ldur w8, [x29, #-12] stur w8, [x29, #-60] ldur w8, [x29, #-60] mov w9, #1 add w8, w8, w9 stur w8, [x29, #-12] b .L.bubblesort.1 .L.bubblesort.7: mov w8, #0 stur w8, [x29, #-20] ldur w8, [x29, #-16] stur w8, [x29, #-64] ldur x15, [x29, #-8] ldur w14, [x29, #-64] mov w8, #1 add w14, w14, w8 sxtw x14, w14 lsl x14, x14, #2 add x15, x15, x14 ldr w8, [x15] stur w8, [x29, #-68] ldur w8, [x29, #-68] stur w8, [x29, #-20] ldur w8, [x29, #-16] stur w8, [x29, #-72] ldur w8, [x29, #-16] stur w8, [x29, #-76] ldur x15, [x29, #-8] ldur w14, [x29, #-76] sxtw x14, w14 lsl x14, x14, #2 add x15, x15, x14 ldr w8, [x15] stur w8, [x29, #-80] ldur x15, [x29, #-8] ldur w14, [x29, #-72] mov w8, #1 add w14, w14, w8 sxtw x14, w14 lsl x14, x14, #2 add x15, x15, x14 ldur w8, [x29, #-80] str w8, [x15] ldur w8, [x29, #-16] stur w8, [x29, #-84] ldur w8, [x29, #-20] stur w8, [x29, #-88] ldur x15, [x29, #-8] ldur w14, [x29, #-84] sxtw x14, w14 lsl x14, x14, #2 add x15, x15, x14 ldur w8, [x29, #-88] str w8, [x15] b .L.bubblesort.8 .L.bubblesort.8: ldur w8, [x29, #-16] stur w8, [x29, #-92] ldur w8, [x29, #-92] mov w9, #1 add w8, w8, w9 stur w8, [x29, #-16] b .L.bubblesort.4 .text .globl insertsort .p2align 2 insertsort: .L.insertsort.0: stp x29, x30, [sp, #-16]! mov x29, sp sub sp, sp, #96 stur x0, [x29, #-8] mov w8, #0 stur w8, [x29, #-12] mov w8, #1 stur w8, [x29, #-12] b .L.insertsort.1 .L.insertsort.1: ldur w8, [x29, #-12] stur w8, [x29, #-24] adrp x13, n ldr w8, [x13, #:lo12:n] stur w8, [x29, #-28] ldur w8, [x29, #-24] ldur w9, [x29, #-28] cmp w8, w9 b.lt .L.insertsort.2 b .L.insertsort.3 .L.insertsort.2: mov w8, #0 stur w8, [x29, #-16] ldur w8, [x29, #-12] stur w8, [x29, #-32] ldur x15, [x29, #-8] ldur w14, [x29, #-32] sxtw x14, w14 lsl x14, x14, #2 add x15, x15, x14 ldr w8, [x15] stur w8, [x29, #-36] ldur w8, [x29, #-36] stur w8, [x29, #-16] mov w8, #0 stur w8, [x29, #-20] ldur w8, [x29, #-12] stur w8, [x29, #-40] ldur w8, [x29, #-40] mov w9, #1 sub w8, w8, w9 stur w8, [x29, #-20] b .L.insertsort.4 .L.insertsort.3: mov w0, #0 add sp, sp, #96 ldp x29, x30, [sp], #16 ret .L.insertsort.4: ldur w8, [x29, #-20] stur w8, [x29, #-44] ldur w8, [x29, #-44] mov w9, #-1 cmp w8, w9 b.gt .L.insertsort.7 b .L.insertsort.6 .L.insertsort.5: ldur w8, [x29, #-20] stur w8, [x29, #-48] ldur w8, [x29, #-20] stur w8, [x29, #-52] ldur x15, [x29, #-8] ldur w14, [x29, #-52] sxtw x14, w14 lsl x14, x14, #2 add x15, x15, x14 ldr w8, [x15] stur w8, [x29, #-56] ldur x15, [x29, #-8] ldur w14, [x29, #-48] mov w8, #1 add w14, w14, w8 sxtw x14, w14 lsl x14, x14, #2 add x15, x15, x14 ldur w8, [x29, #-56] str w8, [x15] ldur w8, [x29, #-20] stur w8, [x29, #-60] ldur w8, [x29, #-60] mov w9, #1 sub w8, w8, w9 stur w8, [x29, #-20] b .L.insertsort.4 .L.insertsort.6: ldur w8, [x29, #-20] stur w8, [x29, #-64] ldur w8, [x29, #-16] stur w8, [x29, #-68] ldur x15, [x29, #-8] ldur w14, [x29, #-64] mov w8, #1 add w14, w14, w8 sxtw x14, w14 lsl x14, x14, #2 add x15, x15, x14 ldur w8, [x29, #-68] str w8, [x15] ldur w8, [x29, #-12] stur w8, [x29, #-72] ldur w8, [x29, #-72] mov w9, #1 add w8, w8, w9 stur w8, [x29, #-12] b .L.insertsort.1 .L.insertsort.7: ldur w8, [x29, #-16] stur w8, [x29, #-76] ldur w8, [x29, #-20] stur w8, [x29, #-80] ldur x15, [x29, #-8] ldur w14, [x29, #-80] sxtw x14, w14 lsl x14, x14, #2 add x15, x15, x14 ldr w8, [x15] stur w8, [x29, #-84] ldur w8, [x29, #-76] ldur w9, [x29, #-84] cmp w8, w9 b.lt .L.insertsort.5 b .L.insertsort.6 .text .globl QuickSort .p2align 2 QuickSort: .L.QuickSort.0: stp x29, x30, [sp, #-16]! mov x29, sp sub sp, sp, #208 stur x0, [x29, #-8] stur w1, [x29, #-12] stur w2, [x29, #-16] ldur w8, [x29, #-12] stur w8, [x29, #-36] ldur w8, [x29, #-16] stur w8, [x29, #-40] ldur w8, [x29, #-36] stur w8, [x29, #-44] ldur w8, [x29, #-40] stur w8, [x29, #-48] ldur w8, [x29, #-44] ldur w9, [x29, #-48] cmp w8, w9 b.lt .L.QuickSort.1 b .L.QuickSort.2 .L.QuickSort.1: mov w8, #0 stur w8, [x29, #-20] ldur w8, [x29, #-36] stur w8, [x29, #-52] ldur w8, [x29, #-52] stur w8, [x29, #-20] mov w8, #0 stur w8, [x29, #-24] ldur w8, [x29, #-40] stur w8, [x29, #-56] ldur w8, [x29, #-56] stur w8, [x29, #-24] mov w8, #0 stur w8, [x29, #-28] ldur w8, [x29, #-36] stur w8, [x29, #-60] ldur x15, [x29, #-8] ldur w14, [x29, #-60] sxtw x14, w14 lsl x14, x14, #2 add x15, x15, x14 ldr w8, [x15] stur w8, [x29, #-64] ldur w8, [x29, #-64] stur w8, [x29, #-28] b .L.QuickSort.3 .L.QuickSort.2: mov w0, #0 add sp, sp, #208 ldp x29, x30, [sp], #16 ret .L.QuickSort.3: ldur w8, [x29, #-20] stur w8, [x29, #-68] ldur w8, [x29, #-24] stur w8, [x29, #-72] ldur w8, [x29, #-68] ldur w9, [x29, #-72] cmp w8, w9 b.lt .L.QuickSort.4 b .L.QuickSort.5 .L.QuickSort.4: b .L.QuickSort.6 .L.QuickSort.5: ldur w8, [x29, #-20] stur w8, [x29, #-76] ldur w8, [x29, #-28] stur w8, [x29, #-80] ldur x15, [x29, #-8] ldur w14, [x29, #-76] sxtw x14, w14 lsl x14, x14, #2 add x15, x15, x14 ldur w8, [x29, #-80] str w8, [x15] mov w8, #0 stur w8, [x29, #-32] ldur w8, [x29, #-20] stur w8, [x29, #-84] ldur w8, [x29, #-84] mov w9, #1 sub w8, w8, w9 stur w8, [x29, #-32] ldur w8, [x29, #-36] stur w8, [x29, #-88] ldur w8, [x29, #-32] stur w8, [x29, #-92] ldur x0, [x29, #-8] ldur w1, [x29, #-88] ldur w2, [x29, #-92] bl QuickSort stur w0, [x29, #-96] ldur w8, [x29, #-96] stur w8, [x29, #-32] ldur w8, [x29, #-20] stur w8, [x29, #-100] ldur w8, [x29, #-100] mov w9, #1 add w8, w8, w9 stur w8, [x29, #-32] ldur w8, [x29, #-32] stur w8, [x29, #-104] ldur w8, [x29, #-40] stur w8, [x29, #-108] ldur x0, [x29, #-8] ldur w1, [x29, #-104] ldur w2, [x29, #-108] bl QuickSort stur w0, [x29, #-112] ldur w8, [x29, #-112] stur w8, [x29, #-32] b .L.QuickSort.2 .L.QuickSort.6: ldur w8, [x29, #-20] stur w8, [x29, #-116] ldur w8, [x29, #-24] stur w8, [x29, #-120] ldur w8, [x29, #-116] ldur w9, [x29, #-120] cmp w8, w9 b.lt .L.QuickSort.9 b .L.QuickSort.8 .L.QuickSort.7: ldur w8, [x29, #-24] stur w8, [x29, #-124] ldur w8, [x29, #-124] mov w9, #1 sub w8, w8, w9 stur w8, [x29, #-24] b .L.QuickSort.6 .L.QuickSort.8: ldur w8, [x29, #-20] stur w8, [x29, #-128] ldur w8, [x29, #-24] stur w8, [x29, #-132] ldur w8, [x29, #-128] ldur w9, [x29, #-132] cmp w8, w9 b.lt .L.QuickSort.10 b .L.QuickSort.11 .L.QuickSort.9: ldur w8, [x29, #-24] stur w8, [x29, #-136] ldur x15, [x29, #-8] ldur w14, [x29, #-136] sxtw x14, w14 lsl x14, x14, #2 add x15, x15, x14 ldr w8, [x15] stur w8, [x29, #-140] ldur w8, [x29, #-28] stur w8, [x29, #-144] ldur w8, [x29, #-140] ldur w9, [x29, #-144] mov w10, #1 sub w9, w9, w10 cmp w8, w9 b.gt .L.QuickSort.7 b .L.QuickSort.8 .L.QuickSort.10: ldur w8, [x29, #-20] stur w8, [x29, #-148] ldur w8, [x29, #-24] stur w8, [x29, #-152] ldur x15, [x29, #-8] ldur w14, [x29, #-152] sxtw x14, w14 lsl x14, x14, #2 add x15, x15, x14 ldr w8, [x15] stur w8, [x29, #-156] ldur x15, [x29, #-8] ldur w14, [x29, #-148] sxtw x14, w14 lsl x14, x14, #2 add x15, x15, x14 ldur w8, [x29, #-156] str w8, [x15] ldur w8, [x29, #-20] stur w8, [x29, #-160] ldur w8, [x29, #-160] mov w9, #1 add w8, w8, w9 stur w8, [x29, #-20] b .L.QuickSort.11 .L.QuickSort.11: b .L.QuickSort.12 .L.QuickSort.12: ldur w8, [x29, #-20] stur w8, [x29, #-164] ldur w8, [x29, #-24] stur w8, [x29, #-168] ldur w8, [x29, #-164] ldur w9, [x29, #-168] cmp w8, w9 b.lt .L.QuickSort.15 b .L.QuickSort.14 .L.QuickSort.13: ldur w8, [x29, #-20] stur w8, [x29, #-172] ldur w8, [x29, #-172] mov w9, #1 add w8, w8, w9 stur w8, [x29, #-20] b .L.QuickSort.12 .L.QuickSort.14: ldur w8, [x29, #-20] stur w8, [x29, #-176] ldur w8, [x29, #-24] stur w8, [x29, #-180] ldur w8, [x29, #-176] ldur w9, [x29, #-180] cmp w8, w9 b.lt .L.QuickSort.16 b .L.QuickSort.17 .L.QuickSort.15: ldur w8, [x29, #-20] stur w8, [x29, #-184] ldur x15, [x29, #-8] ldur w14, [x29, #-184] sxtw x14, w14 lsl x14, x14, #2 add x15, x15, x14 ldr w8, [x15] stur w8, [x29, #-188] ldur w8, [x29, #-28] stur w8, [x29, #-192] ldur w8, [x29, #-188] ldur w9, [x29, #-192] cmp w8, w9 b.lt .L.QuickSort.13 b .L.QuickSort.14 .L.QuickSort.16: ldur w8, [x29, #-24] stur w8, [x29, #-196] ldur w8, [x29, #-20] stur w8, [x29, #-200] ldur x15, [x29, #-8] ldur w14, [x29, #-200] sxtw x14, w14 lsl x14, x14, #2 add x15, x15, x14 ldr w8, [x15] stur w8, [x29, #-204] ldur x15, [x29, #-8] ldur w14, [x29, #-196] sxtw x14, w14 lsl x14, x14, #2 add x15, x15, x14 ldur w8, [x29, #-204] str w8, [x15] ldur w8, [x29, #-24] stur w8, [x29, #-208] ldur w8, [x29, #-208] mov w9, #1 sub w8, w8, w9 stur w8, [x29, #-24] b .L.QuickSort.17 .L.QuickSort.17: b .L.QuickSort.3 .text .globl getMid .p2align 2 getMid: .L.getMid.0: stp x29, x30, [sp, #-16]! mov x29, sp sub sp, sp, #48 stur x0, [x29, #-8] mov w8, #0 stur w8, [x29, #-12] adrp x13, n ldr w8, [x13, #:lo12:n] stur w8, [x29, #-16] ldur w8, [x29, #-16] mov w9, #2 sdiv w12, w8, w9 msub w8, w12, w9, w8 mov w9, #0 cmp w8, w9 b.eq .L.getMid.1 b .L.getMid.2 .L.getMid.1: adrp x13, n ldr w8, [x13, #:lo12:n] stur w8, [x29, #-20] ldur w8, [x29, #-20] mov w9, #2 sdiv w8, w8, w9 stur w8, [x29, #-12] ldur w8, [x29, #-12] stur w8, [x29, #-24] ldur x15, [x29, #-8] ldur w14, [x29, #-24] sxtw x14, w14 lsl x14, x14, #2 add x15, x15, x14 ldr w8, [x15] stur w8, [x29, #-28] ldur w8, [x29, #-12] stur w8, [x29, #-32] ldur x15, [x29, #-8] ldur w14, [x29, #-32] mov w8, #1 sub w14, w14, w8 sxtw x14, w14 lsl x14, x14, #2 add x15, x15, x14 ldr w8, [x15] stur w8, [x29, #-36] ldur w0, [x29, #-28] ldur w9, [x29, #-36] add w0, w0, w9 mov w8, #2 sdiv w0, w0, w8 add sp, sp, #48 ldp x29, x30, [sp], #16 ret .L.getMid.2: adrp x13, n ldr w8, [x13, #:lo12:n] stur w8, [x29, #-40] ldur w8, [x29, #-40] mov w9, #2 sdiv w8, w8, w9 stur w8, [x29, #-12] ldur w8, [x29, #-12] stur w8, [x29, #-44] ldur x15, [x29, #-8] ldur w14, [x29, #-44] sxtw x14, w14 lsl x14, x14, #2 add x15, x15, x14 ldr w8, [x15] stur w8, [x29, #-48] ldur w0, [x29, #-48] add sp, sp, #48 ldp x29, x30, [sp], #16 ret .L.getMid.3: mov w0, #0 add sp, sp, #48 ldp x29, x30, [sp], #16 ret .text .globl getMost .p2align 2 getMost: .L.getMost.0: stp x29, x30, [sp, #-16]! mov x29, sp sub sp, sp, #4095 sub sp, sp, #1 stur x0, [x29, #-8] mov w8, #0 mov x13, x29 sub x13, x13, #4012 str w8, [x13] mov w8, #0 mov x13, x29 sub x13, x13, #4012 str w8, [x13] b .L.getMost.1 .L.getMost.1: mov x13, x29 sub x13, x13, #4012 ldr w8, [x13] mov x13, x29 sub x13, x13, #4028 str w8, [x13] mov x13, x29 sub x13, x13, #4028 ldr w8, [x13] mov w9, #1000 cmp w8, w9 b.lt .L.getMost.2 b .L.getMost.3 .L.getMost.2: mov x13, x29 sub x13, x13, #4012 ldr w8, [x13] mov x13, x29 sub x13, x13, #4032 str w8, [x13] mov x15, x29 sub x15, x15, #4008 mov x13, x29 sub x13, x13, #4032 ldr w14, [x13] sxtw x14, w14 lsl x14, x14, #2 add x15, x15, x14 mov w8, #0 str w8, [x15] mov x13, x29 sub x13, x13, #4012 ldr w8, [x13] mov x13, x29 sub x13, x13, #4036 str w8, [x13] mov x13, x29 sub x13, x13, #4036 ldr w8, [x13] mov w9, #1 add w8, w8, w9 mov x13, x29 sub x13, x13, #4012 str w8, [x13] b .L.getMost.1 .L.getMost.3: mov w8, #0 mov x13, x29 sub x13, x13, #4012 str w8, [x13] mov w8, #0 mov x13, x29 sub x13, x13, #4016 str w8, [x13] mov w8, #0 mov x13, x29 sub x13, x13, #4020 str w8, [x13] mov w8, #0 mov x13, x29 sub x13, x13, #4016 str w8, [x13] b .L.getMost.4 .L.getMost.4: mov x13, x29 sub x13, x13, #4012 ldr w8, [x13] mov x13, x29 sub x13, x13, #4040 str w8, [x13] adrp x13, n ldr w8, [x13, #:lo12:n] mov x13, x29 sub x13, x13, #4044 str w8, [x13] mov x13, x29 sub x13, x13, #4040 ldr w8, [x13] mov x13, x29 sub x13, x13, #4044 ldr w9, [x13] cmp w8, w9 b.lt .L.getMost.5 b .L.getMost.6 .L.getMost.5: mov w8, #0 mov x13, x29 sub x13, x13, #4024 str w8, [x13] mov x13, x29 sub x13, x13, #4012 ldr w8, [x13] mov x13, x29 sub x13, x13, #4048 str w8, [x13] ldur x15, [x29, #-8] mov x13, x29 sub x13, x13, #4048 ldr w14, [x13] sxtw x14, w14 lsl x14, x14, #2 add x15, x15, x14 ldr w8, [x15] mov x13, x29 sub x13, x13, #4052 str w8, [x13] mov x13, x29 sub x13, x13, #4052 ldr w8, [x13] mov x13, x29 sub x13, x13, #4024 str w8, [x13] mov x13, x29 sub x13, x13, #4024 ldr w8, [x13] mov x13, x29 sub x13, x13, #4056 str w8, [x13] mov x13, x29 sub x13, x13, #4024 ldr w8, [x13] mov x13, x29 sub x13, x13, #4060 str w8, [x13] mov x15, x29 sub x15, x15, #4008 mov x13, x29 sub x13, x13, #4060 ldr w14, [x13] sxtw x14, w14 lsl x14, x14, #2 add x15, x15, x14 ldr w8, [x15] mov x13, x29 sub x13, x13, #4064 str w8, [x13] mov x15, x29 sub x15, x15, #4008 mov x13, x29 sub x13, x13, #4056 ldr w14, [x13] sxtw x14, w14 lsl x14, x14, #2 add x15, x15, x14 mov x13, x29 sub x13, x13, #4064 ldr w8, [x13] mov w9, #1 add w8, w8, w9 str w8, [x15] mov x13, x29 sub x13, x13, #4024 ldr w8, [x13] mov x13, x29 sub x13, x13, #4068 str w8, [x13] mov x15, x29 sub x15, x15, #4008 mov x13, x29 sub x13, x13, #4068 ldr w14, [x13] sxtw x14, w14 lsl x14, x14, #2 add x15, x15, x14 ldr w8, [x15] mov x13, x29 sub x13, x13, #4072 str w8, [x13] mov x13, x29 sub x13, x13, #4016 ldr w8, [x13] mov x13, x29 sub x13, x13, #4076 str w8, [x13] mov x13, x29 sub x13, x13, #4072 ldr w8, [x13] mov x13, x29 sub x13, x13, #4076 ldr w9, [x13] cmp w8, w9 b.gt .L.getMost.7 b .L.getMost.8 .L.getMost.6: mov x13, x29 sub x13, x13, #4020 ldr w8, [x13] mov x13, x29 sub x13, x13, #4080 str w8, [x13] mov x13, x29 sub x13, x13, #4080 ldr w0, [x13] add sp, sp, #4095 add sp, sp, #1 ldp x29, x30, [sp], #16 ret .L.getMost.7: mov x13, x29 sub x13, x13, #4024 ldr w8, [x13] mov x13, x29 sub x13, x13, #4084 str w8, [x13] mov x15, x29 sub x15, x15, #4008 mov x13, x29 sub x13, x13, #4084 ldr w14, [x13] sxtw x14, w14 lsl x14, x14, #2 add x15, x15, x14 ldr w8, [x15] mov x13, x29 sub x13, x13, #4088 str w8, [x13] mov x13, x29 sub x13, x13, #4088 ldr w8, [x13] mov x13, x29 sub x13, x13, #4016 str w8, [x13] mov x13, x29 sub x13, x13, #4024 ldr w8, [x13] mov x13, x29 sub x13, x13, #4092 str w8, [x13] mov x13, x29 sub x13, x13, #4092 ldr w8, [x13] mov x13, x29 sub x13, x13, #4020 str w8, [x13] b .L.getMost.8 .L.getMost.8: mov x13, x29 sub x13, x13, #4012 ldr w8, [x13] mov x13, x29 sub x13, x13, #4095 sub x13, x13, #1 str w8, [x13] mov x13, x29 sub x13, x13, #4095 sub x13, x13, #1 ldr w8, [x13] mov w9, #1 add w8, w8, w9 mov x13, x29 sub x13, x13, #4012 str w8, [x13] b .L.getMost.4 .text .globl revert .p2align 2 revert: .L.revert.0: stp x29, x30, [sp, #-16]! mov x29, sp sub sp, sp, #64 stur x0, [x29, #-8] mov w8, #0 stur w8, [x29, #-12] mov w8, #0 stur w8, [x29, #-16] mov w8, #0 stur w8, [x29, #-20] mov w8, #0 stur w8, [x29, #-16] mov w8, #0 stur w8, [x29, #-20] b .L.revert.1 .L.revert.1: ldur w8, [x29, #-16] stur w8, [x29, #-24] ldur w8, [x29, #-20] stur w8, [x29, #-28] ldur w8, [x29, #-24] ldur w9, [x29, #-28] cmp w8, w9 b.lt .L.revert.2 b .L.revert.3 .L.revert.2: ldur w8, [x29, #-16] stur w8, [x29, #-32] ldur x15, [x29, #-8] ldur w14, [x29, #-32] sxtw x14, w14 lsl x14, x14, #2 add x15, x15, x14 ldr w8, [x15] stur w8, [x29, #-36] ldur w8, [x29, #-36] stur w8, [x29, #-12] ldur w8, [x29, #-16] stur w8, [x29, #-40] ldur w8, [x29, #-20] stur w8, [x29, #-44] ldur x15, [x29, #-8] ldur w14, [x29, #-44] sxtw x14, w14 lsl x14, x14, #2 add x15, x15, x14 ldr w8, [x15] stur w8, [x29, #-48] ldur x15, [x29, #-8] ldur w14, [x29, #-40] sxtw x14, w14 lsl x14, x14, #2 add x15, x15, x14 ldur w8, [x29, #-48] str w8, [x15] ldur w8, [x29, #-20] stur w8, [x29, #-52] ldur w8, [x29, #-12] stur w8, [x29, #-56] ldur x15, [x29, #-8] ldur w14, [x29, #-52] sxtw x14, w14 lsl x14, x14, #2 add x15, x15, x14 ldur w8, [x29, #-56] str w8, [x15] ldur w8, [x29, #-16] stur w8, [x29, #-60] ldur w8, [x29, #-60] mov w9, #1 add w8, w8, w9 stur w8, [x29, #-16] ldur w8, [x29, #-20] stur w8, [x29, #-64] ldur w8, [x29, #-64] mov w9, #1 sub w8, w8, w9 stur w8, [x29, #-20] b .L.revert.1 .L.revert.3: mov w0, #0 add sp, sp, #64 ldp x29, x30, [sp], #16 ret .text .globl arrCopy .p2align 2 arrCopy: .L.arrCopy.0: stp x29, x30, [sp, #-16]! mov x29, sp sub sp, sp, #48 stur x0, [x29, #-8] stur x1, [x29, #-16] mov w8, #0 stur w8, [x29, #-20] mov w8, #0 stur w8, [x29, #-20] b .L.arrCopy.1 .L.arrCopy.1: ldur w8, [x29, #-20] stur w8, [x29, #-24] adrp x13, n ldr w8, [x13, #:lo12:n] stur w8, [x29, #-28] ldur w8, [x29, #-24] ldur w9, [x29, #-28] cmp w8, w9 b.lt .L.arrCopy.2 b .L.arrCopy.3 .L.arrCopy.2: ldur w8, [x29, #-20] stur w8, [x29, #-32] ldur w8, [x29, #-20] stur w8, [x29, #-36] ldur x15, [x29, #-8] ldur w14, [x29, #-36] sxtw x14, w14 lsl x14, x14, #2 add x15, x15, x14 ldr w8, [x15] stur w8, [x29, #-40] ldur x15, [x29, #-16] ldur w14, [x29, #-32] sxtw x14, w14 lsl x14, x14, #2 add x15, x15, x14 ldur w8, [x29, #-40] str w8, [x15] ldur w8, [x29, #-20] stur w8, [x29, #-44] ldur w8, [x29, #-44] mov w9, #1 add w8, w8, w9 stur w8, [x29, #-20] b .L.arrCopy.1 .L.arrCopy.3: mov w0, #0 add sp, sp, #48 ldp x29, x30, [sp], #16 ret .text .globl calSum .p2align 2 calSum: .L.calSum.0: stp x29, x30, [sp, #-16]! mov x29, sp sub sp, sp, #80 stur x0, [x29, #-8] stur w1, [x29, #-12] ldur w8, [x29, #-12] stur w8, [x29, #-24] mov w8, #0 stur w8, [x29, #-16] mov w8, #0 stur w8, [x29, #-16] mov w8, #0 stur w8, [x29, #-20] mov w8, #0 stur w8, [x29, #-20] b .L.calSum.1 .L.calSum.1: ldur w8, [x29, #-20] stur w8, [x29, #-28] adrp x13, n ldr w8, [x13, #:lo12:n] stur w8, [x29, #-32] ldur w8, [x29, #-28] ldur w9, [x29, #-32] cmp w8, w9 b.lt .L.calSum.2 b .L.calSum.3 .L.calSum.2: ldur w8, [x29, #-16] stur w8, [x29, #-36] ldur w8, [x29, #-20] stur w8, [x29, #-40] ldur x15, [x29, #-8] ldur w14, [x29, #-40] sxtw x14, w14 lsl x14, x14, #2 add x15, x15, x14 ldr w8, [x15] stur w8, [x29, #-44] ldur w8, [x29, #-36] ldur w9, [x29, #-44] add w8, w8, w9 stur w8, [x29, #-16] ldur w8, [x29, #-20] stur w8, [x29, #-48] ldur w8, [x29, #-24] stur w8, [x29, #-52] ldur w8, [x29, #-24] stur w8, [x29, #-56] ldur w8, [x29, #-48] ldur w10, [x29, #-52] sdiv w12, w8, w10 msub w8, w12, w10, w8 ldur w9, [x29, #-56] mov w10, #1 sub w9, w9, w10 cmp w8, w9 b.ne .L.calSum.4 b .L.calSum.5 .L.calSum.3: mov w0, #0 add sp, sp, #80 ldp x29, x30, [sp], #16 ret .L.calSum.4: ldur w8, [x29, #-20] stur w8, [x29, #-60] ldur x15, [x29, #-8] ldur w14, [x29, #-60] sxtw x14, w14 lsl x14, x14, #2 add x15, x15, x14 mov w8, #0 str w8, [x15] b .L.calSum.6 .L.calSum.5: ldur w8, [x29, #-20] stur w8, [x29, #-64] ldur w8, [x29, #-16] stur w8, [x29, #-68] ldur x15, [x29, #-8] ldur w14, [x29, #-64] sxtw x14, w14 lsl x14, x14, #2 add x15, x15, x14 ldur w8, [x29, #-68] str w8, [x15] mov w8, #0 stur w8, [x29, #-16] b .L.calSum.6 .L.calSum.6: ldur w8, [x29, #-20] stur w8, [x29, #-72] ldur w8, [x29, #-72] mov w9, #1 add w8, w8, w9 stur w8, [x29, #-20] b .L.calSum.1 .text .globl avgPooling .p2align 2 avgPooling: .L.avgPooling.0: stp x29, x30, [sp, #-16]! mov x29, sp sub sp, sp, #160 stur x0, [x29, #-8] stur w1, [x29, #-12] ldur w8, [x29, #-12] stur w8, [x29, #-28] mov w8, #0 stur w8, [x29, #-16] mov w8, #0 stur w8, [x29, #-20] mov w8, #0 stur w8, [x29, #-20] mov w8, #0 stur w8, [x29, #-16] mov w8, #0 stur w8, [x29, #-24] b .L.avgPooling.1 .L.avgPooling.1: ldur w8, [x29, #-20] stur w8, [x29, #-32] adrp x13, n ldr w8, [x13, #:lo12:n] stur w8, [x29, #-36] ldur w8, [x29, #-32] ldur w9, [x29, #-36] cmp w8, w9 b.lt .L.avgPooling.2 b .L.avgPooling.3 .L.avgPooling.2: ldur w8, [x29, #-20] stur w8, [x29, #-40] ldur w8, [x29, #-28] stur w8, [x29, #-44] ldur w8, [x29, #-40] ldur w9, [x29, #-44] mov w10, #1 sub w9, w9, w10 cmp w8, w9 b.lt .L.avgPooling.4 b .L.avgPooling.5 .L.avgPooling.3: adrp x13, n ldr w8, [x13, #:lo12:n] stur w8, [x29, #-48] ldur w8, [x29, #-28] stur w8, [x29, #-52] ldur w8, [x29, #-48] ldur w10, [x29, #-52] sub w8, w8, w10 mov w9, #1 add w8, w8, w9 stur w8, [x29, #-20] b .L.avgPooling.10 .L.avgPooling.4: ldur w8, [x29, #-16] stur w8, [x29, #-56] ldur w8, [x29, #-20] stur w8, [x29, #-60] ldur x15, [x29, #-8] ldur w14, [x29, #-60] sxtw x14, w14 lsl x14, x14, #2 add x15, x15, x14 ldr w8, [x15] stur w8, [x29, #-64] ldur w8, [x29, #-56] ldur w9, [x29, #-64] add w8, w8, w9 stur w8, [x29, #-16] b .L.avgPooling.6 .L.avgPooling.5: ldur w8, [x29, #-20] stur w8, [x29, #-68] ldur w8, [x29, #-28] stur w8, [x29, #-72] ldur w8, [x29, #-68] ldur w9, [x29, #-72] mov w10, #1 sub w9, w9, w10 cmp w8, w9 b.eq .L.avgPooling.7 b .L.avgPooling.8 .L.avgPooling.6: ldur w8, [x29, #-20] stur w8, [x29, #-76] ldur w8, [x29, #-76] mov w9, #1 add w8, w8, w9 stur w8, [x29, #-20] b .L.avgPooling.1 .L.avgPooling.7: ldur x15, [x29, #-8] ldr w8, [x15] stur w8, [x29, #-80] ldur w8, [x29, #-80] stur w8, [x29, #-24] ldur w8, [x29, #-16] stur w8, [x29, #-84] ldur w8, [x29, #-28] stur w8, [x29, #-88] ldur x15, [x29, #-8] ldur w8, [x29, #-84] ldur w9, [x29, #-88] sdiv w8, w8, w9 str w8, [x15] b .L.avgPooling.9 .L.avgPooling.8: ldur w8, [x29, #-16] stur w8, [x29, #-92] ldur w8, [x29, #-20] stur w8, [x29, #-96] ldur x15, [x29, #-8] ldur w14, [x29, #-96] sxtw x14, w14 lsl x14, x14, #2 add x15, x15, x14 ldr w8, [x15] stur w8, [x29, #-100] ldur w8, [x29, #-24] stur w8, [x29, #-104] ldur w8, [x29, #-92] ldur w10, [x29, #-100] add w8, w8, w10 ldur w9, [x29, #-104] sub w8, w8, w9 stur w8, [x29, #-16] ldur w8, [x29, #-20] stur w8, [x29, #-108] ldur w8, [x29, #-28] stur w8, [x29, #-112] ldur x15, [x29, #-8] ldur w14, [x29, #-108] ldur w9, [x29, #-112] sub w14, w14, w9 mov w8, #1 add w14, w14, w8 sxtw x14, w14 lsl x14, x14, #2 add x15, x15, x14 ldr w8, [x15] stur w8, [x29, #-116] ldur w8, [x29, #-116] stur w8, [x29, #-24] ldur w8, [x29, #-20] stur w8, [x29, #-120] ldur w8, [x29, #-28] stur w8, [x29, #-124] ldur w8, [x29, #-16] stur w8, [x29, #-128] ldur w8, [x29, #-28] stur w8, [x29, #-132] ldur x15, [x29, #-8] ldur w14, [x29, #-120] ldur w9, [x29, #-124] sub w14, w14, w9 mov w8, #1 add w14, w14, w8 sxtw x14, w14 lsl x14, x14, #2 add x15, x15, x14 ldur w8, [x29, #-128] ldur w9, [x29, #-132] sdiv w8, w8, w9 str w8, [x15] b .L.avgPooling.9 .L.avgPooling.9: b .L.avgPooling.6 .L.avgPooling.10: ldur w8, [x29, #-20] stur w8, [x29, #-136] adrp x13, n ldr w8, [x13, #:lo12:n] stur w8, [x29, #-140] ldur w8, [x29, #-136] ldur w9, [x29, #-140] cmp w8, w9 b.lt .L.avgPooling.11 b .L.avgPooling.12 .L.avgPooling.11: ldur w8, [x29, #-20] stur w8, [x29, #-144] ldur x15, [x29, #-8] ldur w14, [x29, #-144] sxtw x14, w14 lsl x14, x14, #2 add x15, x15, x14 mov w8, #0 str w8, [x15] ldur w8, [x29, #-20] stur w8, [x29, #-148] ldur w8, [x29, #-148] mov w9, #1 add w8, w8, w9 stur w8, [x29, #-20] b .L.avgPooling.10 .L.avgPooling.12: mov w0, #0 add sp, sp, #160 ldp x29, x30, [sp], #16 ret .text .globl main .p2align 2 main: .L.main.0: stp x29, x30, [sp, #-16]! mov x29, sp sub sp, sp, #480 mov w8, #32 adrp x13, n str w8, [x13, #:lo12:n] mov x15, x29 sub x15, x15, #128 mov w8, #7 str w8, [x15] mov x15, x29 sub x15, x15, #128 mov x14, #4 add x15, x15, x14 mov w8, #23 str w8, [x15] mov x15, x29 sub x15, x15, #128 mov x14, #8 add x15, x15, x14 mov w8, #89 str w8, [x15] mov x15, x29 sub x15, x15, #128 mov x14, #12 add x15, x15, x14 mov w8, #26 str w8, [x15] mov x15, x29 sub x15, x15, #128 mov x14, #16 add x15, x15, x14 mov w8, #282 str w8, [x15] mov x15, x29 sub x15, x15, #128 mov x14, #20 add x15, x15, x14 mov w8, #254 str w8, [x15] mov x15, x29 sub x15, x15, #128 mov x14, #24 add x15, x15, x14 mov w8, #27 str w8, [x15] mov x15, x29 sub x15, x15, #128 mov x14, #28 add x15, x15, x14 mov w8, #5 str w8, [x15] mov x15, x29 sub x15, x15, #128 mov x14, #32 add x15, x15, x14 mov w8, #83 str w8, [x15] mov x15, x29 sub x15, x15, #128 mov x14, #36 add x15, x15, x14 mov w8, #273 str w8, [x15] mov x15, x29 sub x15, x15, #128 mov x14, #40 add x15, x15, x14 mov w8, #574 str w8, [x15] mov x15, x29 sub x15, x15, #128 mov x14, #44 add x15, x15, x14 mov w8, #905 str w8, [x15] mov x15, x29 sub x15, x15, #128 mov x14, #48 add x15, x15, x14 mov w8, #354 str w8, [x15] mov x15, x29 sub x15, x15, #128 mov x14, #52 add x15, x15, x14 mov w8, #657 str w8, [x15] mov x15, x29 sub x15, x15, #128 mov x14, #56 add x15, x15, x14 mov w8, #935 str w8, [x15] mov x15, x29 sub x15, x15, #128 mov x14, #60 add x15, x15, x14 mov w8, #264 str w8, [x15] mov x15, x29 sub x15, x15, #128 mov x14, #64 add x15, x15, x14 mov w8, #639 str w8, [x15] mov x15, x29 sub x15, x15, #128 mov x14, #68 add x15, x15, x14 mov w8, #459 str w8, [x15] mov x15, x29 sub x15, x15, #128 mov x14, #72 add x15, x15, x14 mov w8, #29 str w8, [x15] mov x15, x29 sub x15, x15, #128 mov x14, #76 add x15, x15, x14 mov w8, #68 str w8, [x15] mov x15, x29 sub x15, x15, #128 mov x14, #80 add x15, x15, x14 mov w8, #929 str w8, [x15] mov x15, x29 sub x15, x15, #128 mov x14, #84 add x15, x15, x14 mov w8, #756 str w8, [x15] mov x15, x29 sub x15, x15, #128 mov x14, #88 add x15, x15, x14 mov w8, #452 str w8, [x15] mov x15, x29 sub x15, x15, #128 mov x14, #92 add x15, x15, x14 mov w8, #279 str w8, [x15] mov x15, x29 sub x15, x15, #128 mov x14, #96 add x15, x15, x14 mov w8, #58 str w8, [x15] mov x15, x29 sub x15, x15, #128 mov x14, #100 add x15, x15, x14 mov w8, #87 str w8, [x15] mov x15, x29 sub x15, x15, #128 mov x14, #104 add x15, x15, x14 mov w8, #96 str w8, [x15] mov x15, x29 sub x15, x15, #128 mov x14, #108 add x15, x15, x14 mov w8, #36 str w8, [x15] mov x15, x29 sub x15, x15, #128 mov x14, #112 add x15, x15, x14 mov w8, #39 str w8, [x15] mov x15, x29 sub x15, x15, #128 mov x14, #116 add x15, x15, x14 mov w8, #28 str w8, [x15] mov x15, x29 sub x15, x15, #128 mov x14, #120 add x15, x15, x14 mov w8, #1 str w8, [x15] mov x15, x29 sub x15, x15, #128 mov x14, #124 add x15, x15, x14 mov w8, #290 str w8, [x15] mov w8, #0 mov x13, x29 sub x13, x13, #260 str w8, [x13] mov x0, x29 sub x0, x0, #128 mov x1, x29 sub x1, x1, #256 bl arrCopy mov x13, x29 sub x13, x13, #268 str w0, [x13] mov x13, x29 sub x13, x13, #268 ldr w8, [x13] mov x13, x29 sub x13, x13, #260 str w8, [x13] mov x0, x29 sub x0, x0, #256 bl revert mov x13, x29 sub x13, x13, #272 str w0, [x13] mov x13, x29 sub x13, x13, #272 ldr w8, [x13] mov x13, x29 sub x13, x13, #260 str w8, [x13] mov w8, #0 mov x13, x29 sub x13, x13, #264 str w8, [x13] mov w8, #0 mov x13, x29 sub x13, x13, #264 str w8, [x13] b .L.main.1 .L.main.1: mov x13, x29 sub x13, x13, #264 ldr w8, [x13] mov x13, x29 sub x13, x13, #276 str w8, [x13] mov x13, x29 sub x13, x13, #276 ldr w8, [x13] mov w9, #32 cmp w8, w9 b.lt .L.main.2 b .L.main.3 .L.main.2: mov x13, x29 sub x13, x13, #264 ldr w8, [x13] mov x13, x29 sub x13, x13, #280 str w8, [x13] mov x15, x29 sub x15, x15, #256 mov x13, x29 sub x13, x13, #280 ldr w14, [x13] sxtw x14, w14 lsl x14, x14, #2 add x15, x15, x14 ldr w8, [x15] mov x13, x29 sub x13, x13, #284 str w8, [x13] mov x13, x29 sub x13, x13, #284 ldr w8, [x13] mov x13, x29 sub x13, x13, #260 str w8, [x13] mov x13, x29 sub x13, x13, #260 ldr w8, [x13] mov x13, x29 sub x13, x13, #288 str w8, [x13] mov x13, x29 sub x13, x13, #288 ldr w0, [x13] bl putint mov x13, x29 sub x13, x13, #264 ldr w8, [x13] mov x13, x29 sub x13, x13, #292 str w8, [x13] mov x13, x29 sub x13, x13, #292 ldr w8, [x13] mov w9, #1 add w8, w8, w9 mov x13, x29 sub x13, x13, #264 str w8, [x13] b .L.main.1 .L.main.3: mov x0, x29 sub x0, x0, #256 bl bubblesort mov x13, x29 sub x13, x13, #296 str w0, [x13] mov x13, x29 sub x13, x13, #296 ldr w8, [x13] mov x13, x29 sub x13, x13, #260 str w8, [x13] mov w8, #0 mov x13, x29 sub x13, x13, #264 str w8, [x13] b .L.main.4 .L.main.4: mov x13, x29 sub x13, x13, #264 ldr w8, [x13] mov x13, x29 sub x13, x13, #300 str w8, [x13] mov x13, x29 sub x13, x13, #300 ldr w8, [x13] mov w9, #32 cmp w8, w9 b.lt .L.main.5 b .L.main.6 .L.main.5: mov x13, x29 sub x13, x13, #264 ldr w8, [x13] mov x13, x29 sub x13, x13, #304 str w8, [x13] mov x15, x29 sub x15, x15, #256 mov x13, x29 sub x13, x13, #304 ldr w14, [x13] sxtw x14, w14 lsl x14, x14, #2 add x15, x15, x14 ldr w8, [x15] mov x13, x29 sub x13, x13, #308 str w8, [x13] mov x13, x29 sub x13, x13, #308 ldr w8, [x13] mov x13, x29 sub x13, x13, #260 str w8, [x13] mov x13, x29 sub x13, x13, #260 ldr w8, [x13] mov x13, x29 sub x13, x13, #312 str w8, [x13] mov x13, x29 sub x13, x13, #312 ldr w0, [x13] bl putint mov x13, x29 sub x13, x13, #264 ldr w8, [x13] mov x13, x29 sub x13, x13, #316 str w8, [x13] mov x13, x29 sub x13, x13, #316 ldr w8, [x13] mov w9, #1 add w8, w8, w9 mov x13, x29 sub x13, x13, #264 str w8, [x13] b .L.main.4 .L.main.6: mov x0, x29 sub x0, x0, #256 bl getMid mov x13, x29 sub x13, x13, #320 str w0, [x13] mov x13, x29 sub x13, x13, #320 ldr w8, [x13] mov x13, x29 sub x13, x13, #260 str w8, [x13] mov x13, x29 sub x13, x13, #260 ldr w8, [x13] mov x13, x29 sub x13, x13, #324 str w8, [x13] mov x13, x29 sub x13, x13, #324 ldr w0, [x13] bl putint mov x0, x29 sub x0, x0, #256 bl getMost mov x13, x29 sub x13, x13, #328 str w0, [x13] mov x13, x29 sub x13, x13, #328 ldr w8, [x13] mov x13, x29 sub x13, x13, #260 str w8, [x13] mov x13, x29 sub x13, x13, #260 ldr w8, [x13] mov x13, x29 sub x13, x13, #332 str w8, [x13] mov x13, x29 sub x13, x13, #332 ldr w0, [x13] bl putint mov x0, x29 sub x0, x0, #128 mov x1, x29 sub x1, x1, #256 bl arrCopy mov x13, x29 sub x13, x13, #336 str w0, [x13] mov x13, x29 sub x13, x13, #336 ldr w8, [x13] mov x13, x29 sub x13, x13, #260 str w8, [x13] mov x0, x29 sub x0, x0, #256 bl bubblesort mov x13, x29 sub x13, x13, #340 str w0, [x13] mov x13, x29 sub x13, x13, #340 ldr w8, [x13] mov x13, x29 sub x13, x13, #260 str w8, [x13] mov w8, #0 mov x13, x29 sub x13, x13, #264 str w8, [x13] b .L.main.7 .L.main.7: mov x13, x29 sub x13, x13, #264 ldr w8, [x13] mov x13, x29 sub x13, x13, #344 str w8, [x13] mov x13, x29 sub x13, x13, #344 ldr w8, [x13] mov w9, #32 cmp w8, w9 b.lt .L.main.8 b .L.main.9 .L.main.8: mov x13, x29 sub x13, x13, #264 ldr w8, [x13] mov x13, x29 sub x13, x13, #348 str w8, [x13] mov x15, x29 sub x15, x15, #256 mov x13, x29 sub x13, x13, #348 ldr w14, [x13] sxtw x14, w14 lsl x14, x14, #2 add x15, x15, x14 ldr w8, [x15] mov x13, x29 sub x13, x13, #352 str w8, [x13] mov x13, x29 sub x13, x13, #352 ldr w8, [x13] mov x13, x29 sub x13, x13, #260 str w8, [x13] mov x13, x29 sub x13, x13, #260 ldr w8, [x13] mov x13, x29 sub x13, x13, #356 str w8, [x13] mov x13, x29 sub x13, x13, #356 ldr w0, [x13] bl putint mov x13, x29 sub x13, x13, #264 ldr w8, [x13] mov x13, x29 sub x13, x13, #360 str w8, [x13] mov x13, x29 sub x13, x13, #360 ldr w8, [x13] mov w9, #1 add w8, w8, w9 mov x13, x29 sub x13, x13, #264 str w8, [x13] b .L.main.7 .L.main.9: mov x0, x29 sub x0, x0, #128 mov x1, x29 sub x1, x1, #256 bl arrCopy mov x13, x29 sub x13, x13, #364 str w0, [x13] mov x13, x29 sub x13, x13, #364 ldr w8, [x13] mov x13, x29 sub x13, x13, #260 str w8, [x13] mov x0, x29 sub x0, x0, #256 bl insertsort mov x13, x29 sub x13, x13, #368 str w0, [x13] mov x13, x29 sub x13, x13, #368 ldr w8, [x13] mov x13, x29 sub x13, x13, #260 str w8, [x13] mov w8, #0 mov x13, x29 sub x13, x13, #264 str w8, [x13] b .L.main.10 .L.main.10: mov x13, x29 sub x13, x13, #264 ldr w8, [x13] mov x13, x29 sub x13, x13, #372 str w8, [x13] mov x13, x29 sub x13, x13, #372 ldr w8, [x13] mov w9, #32 cmp w8, w9 b.lt .L.main.11 b .L.main.12 .L.main.11: mov x13, x29 sub x13, x13, #264 ldr w8, [x13] mov x13, x29 sub x13, x13, #376 str w8, [x13] mov x15, x29 sub x15, x15, #256 mov x13, x29 sub x13, x13, #376 ldr w14, [x13] sxtw x14, w14 lsl x14, x14, #2 add x15, x15, x14 ldr w8, [x15] mov x13, x29 sub x13, x13, #380 str w8, [x13] mov x13, x29 sub x13, x13, #380 ldr w8, [x13] mov x13, x29 sub x13, x13, #260 str w8, [x13] mov x13, x29 sub x13, x13, #260 ldr w8, [x13] mov x13, x29 sub x13, x13, #384 str w8, [x13] mov x13, x29 sub x13, x13, #384 ldr w0, [x13] bl putint mov x13, x29 sub x13, x13, #264 ldr w8, [x13] mov x13, x29 sub x13, x13, #388 str w8, [x13] mov x13, x29 sub x13, x13, #388 ldr w8, [x13] mov w9, #1 add w8, w8, w9 mov x13, x29 sub x13, x13, #264 str w8, [x13] b .L.main.10 .L.main.12: mov x0, x29 sub x0, x0, #128 mov x1, x29 sub x1, x1, #256 bl arrCopy mov x13, x29 sub x13, x13, #392 str w0, [x13] mov x13, x29 sub x13, x13, #392 ldr w8, [x13] mov x13, x29 sub x13, x13, #260 str w8, [x13] mov w8, #0 mov x13, x29 sub x13, x13, #264 str w8, [x13] mov w8, #31 mov x13, x29 sub x13, x13, #260 str w8, [x13] mov x13, x29 sub x13, x13, #264 ldr w8, [x13] mov x13, x29 sub x13, x13, #396 str w8, [x13] mov x13, x29 sub x13, x13, #260 ldr w8, [x13] mov x13, x29 sub x13, x13, #400 str w8, [x13] mov x0, x29 sub x0, x0, #256 mov x13, x29 sub x13, x13, #396 ldr w1, [x13] mov x13, x29 sub x13, x13, #400 ldr w2, [x13] bl QuickSort mov x13, x29 sub x13, x13, #404 str w0, [x13] mov x13, x29 sub x13, x13, #404 ldr w8, [x13] mov x13, x29 sub x13, x13, #260 str w8, [x13] b .L.main.13 .L.main.13: mov x13, x29 sub x13, x13, #264 ldr w8, [x13] mov x13, x29 sub x13, x13, #408 str w8, [x13] mov x13, x29 sub x13, x13, #408 ldr w8, [x13] mov w9, #32 cmp w8, w9 b.lt .L.main.14 b .L.main.15 .L.main.14: mov x13, x29 sub x13, x13, #264 ldr w8, [x13] mov x13, x29 sub x13, x13, #412 str w8, [x13] mov x15, x29 sub x15, x15, #256 mov x13, x29 sub x13, x13, #412 ldr w14, [x13] sxtw x14, w14 lsl x14, x14, #2 add x15, x15, x14 ldr w8, [x15] mov x13, x29 sub x13, x13, #416 str w8, [x13] mov x13, x29 sub x13, x13, #416 ldr w8, [x13] mov x13, x29 sub x13, x13, #260 str w8, [x13] mov x13, x29 sub x13, x13, #260 ldr w8, [x13] mov x13, x29 sub x13, x13, #420 str w8, [x13] mov x13, x29 sub x13, x13, #420 ldr w0, [x13] bl putint mov x13, x29 sub x13, x13, #264 ldr w8, [x13] mov x13, x29 sub x13, x13, #424 str w8, [x13] mov x13, x29 sub x13, x13, #424 ldr w8, [x13] mov w9, #1 add w8, w8, w9 mov x13, x29 sub x13, x13, #264 str w8, [x13] b .L.main.13 .L.main.15: mov x0, x29 sub x0, x0, #128 mov x1, x29 sub x1, x1, #256 bl arrCopy mov x13, x29 sub x13, x13, #428 str w0, [x13] mov x13, x29 sub x13, x13, #428 ldr w8, [x13] mov x13, x29 sub x13, x13, #260 str w8, [x13] mov x0, x29 sub x0, x0, #256 mov w1, #4 bl calSum mov x13, x29 sub x13, x13, #432 str w0, [x13] mov x13, x29 sub x13, x13, #432 ldr w8, [x13] mov x13, x29 sub x13, x13, #260 str w8, [x13] mov w8, #0 mov x13, x29 sub x13, x13, #264 str w8, [x13] b .L.main.16 .L.main.16: mov x13, x29 sub x13, x13, #264 ldr w8, [x13] mov x13, x29 sub x13, x13, #436 str w8, [x13] mov x13, x29 sub x13, x13, #436 ldr w8, [x13] mov w9, #32 cmp w8, w9 b.lt .L.main.17 b .L.main.18 .L.main.17: mov x13, x29 sub x13, x13, #264 ldr w8, [x13] mov x13, x29 sub x13, x13, #440 str w8, [x13] mov x15, x29 sub x15, x15, #256 mov x13, x29 sub x13, x13, #440 ldr w14, [x13] sxtw x14, w14 lsl x14, x14, #2 add x15, x15, x14 ldr w8, [x15] mov x13, x29 sub x13, x13, #444 str w8, [x13] mov x13, x29 sub x13, x13, #444 ldr w8, [x13] mov x13, x29 sub x13, x13, #260 str w8, [x13] mov x13, x29 sub x13, x13, #260 ldr w8, [x13] mov x13, x29 sub x13, x13, #448 str w8, [x13] mov x13, x29 sub x13, x13, #448 ldr w0, [x13] bl putint mov x13, x29 sub x13, x13, #264 ldr w8, [x13] mov x13, x29 sub x13, x13, #452 str w8, [x13] mov x13, x29 sub x13, x13, #452 ldr w8, [x13] mov w9, #1 add w8, w8, w9 mov x13, x29 sub x13, x13, #264 str w8, [x13] b .L.main.16 .L.main.18: mov x0, x29 sub x0, x0, #128 mov x1, x29 sub x1, x1, #256 bl arrCopy mov x13, x29 sub x13, x13, #456 str w0, [x13] mov x13, x29 sub x13, x13, #456 ldr w8, [x13] mov x13, x29 sub x13, x13, #260 str w8, [x13] mov x0, x29 sub x0, x0, #256 mov w1, #3 bl avgPooling mov x13, x29 sub x13, x13, #460 str w0, [x13] mov x13, x29 sub x13, x13, #460 ldr w8, [x13] mov x13, x29 sub x13, x13, #260 str w8, [x13] mov w8, #0 mov x13, x29 sub x13, x13, #264 str w8, [x13] b .L.main.19 .L.main.19: mov x13, x29 sub x13, x13, #264 ldr w8, [x13] mov x13, x29 sub x13, x13, #464 str w8, [x13] mov x13, x29 sub x13, x13, #464 ldr w8, [x13] mov w9, #32 cmp w8, w9 b.lt .L.main.20 b .L.main.21 .L.main.20: mov x13, x29 sub x13, x13, #264 ldr w8, [x13] mov x13, x29 sub x13, x13, #468 str w8, [x13] mov x15, x29 sub x15, x15, #256 mov x13, x29 sub x13, x13, #468 ldr w14, [x13] sxtw x14, w14 lsl x14, x14, #2 add x15, x15, x14 ldr w8, [x15] mov x13, x29 sub x13, x13, #472 str w8, [x13] mov x13, x29 sub x13, x13, #472 ldr w8, [x13] mov x13, x29 sub x13, x13, #260 str w8, [x13] mov x13, x29 sub x13, x13, #260 ldr w8, [x13] mov x13, x29 sub x13, x13, #476 str w8, [x13] mov x13, x29 sub x13, x13, #476 ldr w0, [x13] bl putint mov x13, x29 sub x13, x13, #264 ldr w8, [x13] mov x13, x29 sub x13, x13, #480 str w8, [x13] mov x13, x29 sub x13, x13, #480 ldr w8, [x13] mov w9, #1 add w8, w8, w9 mov x13, x29 sub x13, x13, #264 str w8, [x13] b .L.main.19 .L.main.21: mov w0, #0 add sp, sp, #480 ldp x29, x30, [sp], #16 ret