1 // RUN
: not llvm-mc
-o
- -triple arm
-mattr
=+v8.6
a -show-encoding
%s
2>&1 | FileCheck
%s
9 vfmat.bf16 q0
, q0
, q0
[3]
10 vfmat.bf16 q0
, q0
, q0
[3]
11 vfmat.bf16 q0
, d0
, d0
[0]
12 vfmat.bf16 d0
, q0
, d0
[0]
13 vfmat.bf16 q0
, d0
, d0
[9]
22 vfmab.bf16 q0
, q0
, q0
[3]
23 vfmab.bf16 q0
, q0
, q0
[3]
24 vfmab.bf16 q0
, d0
, d0
[0]
25 vfmab.bf16 d0
, q0
, d0
[0]
26 vfmab.bf16 q0
, d0
, d0
[9]
28 //CHECK
:error
: invalid instruction
29 //CHECK-NEXT
:vfmat.bf16 d0
, d0
, d0
31 //CHECK-NEXT
:error
: invalid instruction
32 //CHECK-NEXT
:vfmat.bf16 d0
, d0
, q0
34 //CHECK-NEXT
:error
: invalid instruction
35 //CHECK-NEXT
:vfmat.bf16 d0
, q0
, d0
37 //CHECK-NEXT
:error
: invalid instruction
38 //CHECK-NEXT
:vfmat.bf16 q0
, d0
, d0
40 //CHECK-NEXT
:error
: invalid instruction
, any one of the following would fix this
:
41 //CHECK-NEXT
:vfmat.bf16 q0
, q0
, d0
43 //CHECK-NEXT
:note
: too few operands for instruction
44 //CHECK-NEXT
:vfmat.bf16 q0
, q0
, d0
46 //CHECK-NEXT
:note
: operand must
be a register in range
[q0
, q15
]
47 //CHECK-NEXT
:vfmat.bf16 q0
, q0
, d0
49 //CHECK-NEXT
:error
: operand must
be a register in range
[q0
, q15
]
50 //CHECK-NEXT
:vfmat.bf16 q0
, d0
, q0
52 //CHECK-NEXT
:error
: operand must
be a register in range
[q0
, q15
]
53 //CHECK-NEXT
:vfmat.bf16 d0
, q0
, q0
55 //CHECK-NEXT
:error
: invalid instruction
, any one of the following would fix this
:
56 //CHECK-NEXT
:vfmat.bf16 q0
, q0
, q0
[3]
58 //CHECK-NEXT
:note
: operand must
be a register in range
[d0
, d7
]
59 //CHECK-NEXT
:vfmat.bf16 q0
, q0
, q0
[3]
61 //CHECK-NEXT
:note
: too many operands for instruction
62 //CHECK-NEXT
:vfmat.bf16 q0
, q0
, q0
[3]
64 //CHECK-NEXT
:error
: invalid instruction
, any one of the following would fix this
:
65 //CHECK-NEXT
:vfmat.bf16 q0
, q0
, q0
[3]
67 //CHECK-NEXT
:note
: operand must
be a register in range
[d0
, d7
]
68 //CHECK-NEXT
:vfmat.bf16 q0
, q0
, q0
[3]
70 //CHECK-NEXT
:note
: too many operands for instruction
71 //CHECK-NEXT
:vfmat.bf16 q0
, q0
, q0
[3]
73 //CHECK-NEXT
:error
: operand must
be a register in range
[q0
, q15
]
74 //CHECK-NEXT
:vfmat.bf16 q0
, d0
, d0
[0]
76 //CHECK-NEXT
:error
: operand must
be a register in range
[q0
, q15
]
77 //CHECK-NEXT
:vfmat.bf16 d0
, q0
, d0
[0]
79 //CHECK-NEXT
:error
: invalid instruction
80 //CHECK-NEXT
:vfmat.bf16 q0
, d0
, d0
[9]
82 //CHECK-NEXT
:error
: invalid instruction
83 //CHECK-NEXT
:vfmab.bf16 d0
, d0
, d0
85 //CHECK-NEXT
:error
: invalid instruction
86 //CHECK-NEXT
:vfmab.bf16 d0
, d0
, q0
88 //CHECK-NEXT
:error
: invalid instruction
89 //CHECK-NEXT
:vfmab.bf16 d0
, q0
, d0
91 //CHECK-NEXT
:error
: invalid instruction
92 //CHECK-NEXT
:vfmab.bf16 q0
, d0
, d0
94 //CHECK-NEXT
:error
: invalid instruction
, any one of the following would fix this
:
95 //CHECK-NEXT
:vfmab.bf16 q0
, q0
, d0
97 //CHECK-NEXT
:note
: too few operands for instruction
98 //CHECK-NEXT
:vfmab.bf16 q0
, q0
, d0
100 //CHECK-NEXT
:note
: operand must
be a register in range
[q0
, q15
]
101 //CHECK-NEXT
:vfmab.bf16 q0
, q0
, d0
103 //CHECK-NEXT
:error
: operand must
be a register in range
[q0
, q15
]
104 //CHECK-NEXT
:vfmab.bf16 q0
, d0
, q0
106 //CHECK-NEXT
:error
: operand must
be a register in range
[q0
, q15
]
107 //CHECK-NEXT
:vfmab.bf16 d0
, q0
, q0
109 //CHECK-NEXT
:error
: invalid instruction
, any one of the following would fix this
:
110 //CHECK-NEXT
:vfmab.bf16 q0
, q0
, q0
[3]
112 //CHECK-NEXT
:note
: operand must
be a register in range
[d0
, d7
]
113 //CHECK-NEXT
:vfmab.bf16 q0
, q0
, q0
[3]
115 //CHECK-NEXT
:note
: too many operands for instruction
116 //CHECK-NEXT
:vfmab.bf16 q0
, q0
, q0
[3]
118 //CHECK-NEXT
:error
: invalid instruction
, any one of the following would fix this
:
119 //CHECK-NEXT
:vfmab.bf16 q0
, q0
, q0
[3]
121 //CHECK-NEXT
:note
: operand must
be a register in range
[d0
, d7
]
122 //CHECK-NEXT
:vfmab.bf16 q0
, q0
, q0
[3]
124 //CHECK-NEXT
:note
: too many operands for instruction
125 //CHECK-NEXT
:vfmab.bf16 q0
, q0
, q0
[3]
127 //CHECK-NEXT
:error
: operand must
be a register in range
[q0
, q15
]
128 //CHECK-NEXT
:vfmab.bf16 q0
, d0
, d0
[0]
130 //CHECK-NEXT
:error
: operand must
be a register in range
[q0
, q15
]
131 //CHECK-NEXT
:vfmab.bf16 d0
, q0
, d0
[0]
133 //CHECK-NEXT
:error
: invalid instruction
134 //CHECK-NEXT
:vfmab.bf16 q0
, d0
, d0
[9]