| 1 | |
| 2 | .comm data0,4,4 |
| 3 | .text |
| 4 | .align 2 |
| 5 | .global main |
| 6 | .type main, %function |
| 7 | main: |
| 8 | sub sp, sp, #16 |
| 9 | mov x7, 13 |
| 10 | str w7, [sp,12] |
| 11 | b e843419 |
| 12 | ret |
| 13 | .size main, .-main |
| 14 | |
| 15 | .section .e843419, "xa" |
| 16 | .align 2 |
| 17 | .global e843419 |
| 18 | .type e843419, %function |
| 19 | e843419: |
| 20 | sub sp, sp, #16 |
| 21 | mov x7, 13 |
| 22 | str w7, [sp,12] |
| 23 | b e843419_1 |
| 24 | .fill 4072,1,0 |
| 25 | e843419_1: |
| 26 | adrp x0, data0 |
| 27 | str x7, [x0,12] |
| 28 | mov x8, 9 |
| 29 | str x8, [x0, :lo12:data0] |
| 30 | |
| 31 | add x0, x1, x5 |
| 32 | ldr w7, [sp,12] |
| 33 | add w0, w7, w7 |
| 34 | add sp, sp, 16 |
| 35 | b e835769 |
| 36 | ret |
| 37 | .size e843419, .-e843419 |
| 38 | |
| 39 | .section .e835769, "xa" |
| 40 | .align 2 |
| 41 | .global e835769 |
| 42 | .type e835769, %function |
| 43 | e835769: |
| 44 | ldr w7, [x4,8]! |
| 45 | mul w6, w0, w1 |
| 46 | ldr x4, [x4] |
| 47 | madd x5, x2, x3, x6 |
| 48 | mov x0, x5 |
| 49 | ret |
| 50 | .size e835769, .-e835769 |
| 51 | |
| 52 | # --- |
| 53 | |
| 54 | |
| 55 | |
| 56 | |
| 57 | |
| 58 | # --- |
| 59 | |
| 60 | .data |
| 61 | data0: |
| 62 | .fill 8,1,255 |
| 63 | .balign 512 |
| 64 | .fill 4,1,255 |
| 65 | # double word access that crosses a 64 bit boundary |
| 66 | data1: |
| 67 | .fill 2,1,255 |
| 68 | |
| 69 | # word access that crosses a 64 boundary |
| 70 | data2: |
| 71 | .fill 2,1,255 |
| 72 | |
| 73 | data5: |
| 74 | .fill 4,1,255 |
| 75 | |
| 76 | # double word access that crosses a 128 boundary |
| 77 | data3: |
| 78 | .fill 2,1,255 |
| 79 | |
| 80 | # word access that crosses a 128 bit boundary |
| 81 | data4: |
| 82 | .fill 2,1,255 |
| 83 | data6: |
| 84 | .fill 496,1,255 |