[PATCH 57/57][Arm][GAS] MVE Tests
[external/binutils.git] / gas / testsuite / gas / arm / mve-vcmul.s
1 .syntax unified
2 .thumb
3 .macro vcmul_q0 data, op4
4 .irp op2, q1, q2, q4, q7
5 .irp op3, q1, q2, q4, q7
6 vcmul.\data q0, \op2, \op3, \op4
7 .endr
8 .endr
9 .endm
10
11 .macro vcmul_q1 data, op4
12 .irp op2, q0, q2, q4, q7
13 .irp op3, q0, q2, q4, q7
14 vcmul.\data q1, \op2, \op3, \op4
15 .endr
16 .endr
17 .endm
18
19 .macro vcmul_q2 data, op4
20 .irp op2, q0, q1, q4, q7
21 .irp op3, q0, q1, q4, q7
22 vcmul.\data q2, \op2, \op3, \op4
23 .endr
24 .endr
25 .endm
26
27 .macro vcmul_q4 data, op4
28 .irp op2, q0, q1, q2, q7
29 .irp op3, q0, q1, q2, q7
30 vcmul.\data q4, \op2, \op3, \op4
31 .endr
32 .endr
33 .endm
34
35 .macro vcmul_q7 data, op4
36 .irp op2, q0, q1, q2, q4
37 .irp op3, q0, q1, q2, q4
38 vcmul.\data q7, \op2, \op3, \op4
39 .endr
40 .endr
41 .endm
42
43 .irp data, f16, f32
44 .irp op4, #0, #90, #180, #270
45 vcmul_q0 \data, \op4
46 vcmul_q1 \data, \op4
47 vcmul_q2 \data, \op4
48 vcmul_q4 \data, \op4
49 vcmul_q7 \data, \op4
50 .endr
51 .endr
52 vpstete
53 vcmult.f16 q7, q7, q7, #0
54 vcmule.f16 q6, q3, q1, #90
55 vcmult.f32 q2, q5, q4, #180
56 vcmule.f32 q5, q6, q7, #270