[PATCH 57/57][Arm][GAS] MVE Tests
[external/binutils.git] / gas / testsuite / gas / arm / mve-vstld.s
1 .syntax unified
2 .thumb
3
4 .macro all_vstld2 op
5 .irp part, 0, 1
6 .irp size, .8, .16, .32
7 .irp op2, r0, r1, r2, r4, r7, r8, r10, r12, r13, r14
8 \op\()\part\()\size {q0, q1}, [\op2]
9 \op\()\part\()\size {q1, q2}, [\op2]
10 \op\()\part\()\size {q2, q3}, [\op2]
11 \op\()\part\()\size {q3, q4}, [\op2]
12 \op\()\part\()\size {q4, q5}, [\op2]
13 \op\()\part\()\size {q5, q6}, [\op2]
14 \op\()\part\()\size {q6, q7}, [\op2]
15 .endr
16 .irp op2, r0, r1, r2, r4, r7, r8, r10, r12,  r14
17 \op\()\part\()\size {q0, q1}, [\op2]!
18 \op\()\part\()\size {q1, q2}, [\op2]!
19 \op\()\part\()\size {q2, q3}, [\op2]!
20 \op\()\part\()\size {q3, q4}, [\op2]!
21 \op\()\part\()\size {q4, q5}, [\op2]!
22 \op\()\part\()\size {q5, q6}, [\op2]!
23 \op\()\part\()\size {q6, q7}, [\op2]!
24 .endr
25 .endr
26 .endr
27 .endm
28
29 .macro all_vstld4 op
30 .irp part, 0, 1, 2, 3
31 .irp size, .8, .16, .32
32 .irp op2, r0, r1, r2, r4, r7, r8, r10, r12, r13, r14
33 \op\()\part\()\size {q0, q1, q2, q3}, [\op2]
34 \op\()\part\()\size {q1, q2, q3, q4}, [\op2]
35 \op\()\part\()\size {q2, q3, q4, q5}, [\op2]
36 \op\()\part\()\size {q3, q4, q5, q6}, [\op2]
37 \op\()\part\()\size {q4, q5, q6, q7}, [\op2]
38 .endr
39 .irp op2, r0, r1, r2, r4, r7, r8, r10, r12,  r14
40 \op\()\part\()\size {q0, q1, q2, q3}, [\op2]!
41 \op\()\part\()\size {q1, q2, q3, q4}, [\op2]!
42 \op\()\part\()\size {q2, q3, q4, q5}, [\op2]!
43 \op\()\part\()\size {q3, q4, q5, q6}, [\op2]!
44 \op\()\part\()\size {q4, q5, q6, q7}, [\op2]!
45 .endr
46 .endr
47 .endr
48 .endm
49 all_vstld2 vst2
50 all_vstld2 vld2
51 all_vstld4 vst4
52 all_vstld4 vld4