Skip to content

Commit a5e37a9

Browse files
committed
fixup! [AArch64][llvm] Armv9.7-A: Add support for SVE2p3 DOT and MLA operations
Remove tests which aren't useful after CR comments
1 parent cb8ee8a commit a5e37a9

File tree

4 files changed

+1
-82
lines changed

4 files changed

+1
-82
lines changed

llvm/lib/Target/AArch64/SVEInstrFormats.td

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3833,7 +3833,7 @@ class sve_intx_dot_by_indexed_elem_x<bit opc, string asm>
38333833
bits<3> iop;
38343834
bits<3> Zm;
38353835
let Inst{23} = 0b0;
3836-
let Inst{22} = iop{2-2};
3836+
let Inst{22} = iop{2};
38373837
let Inst{20-19} = iop{1-0};
38383838
let Inst{18-16} = Zm;
38393839
}

llvm/test/MC/AArch64/SVE2p2/fmmla-diagnostics.s

Lines changed: 0 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -7,18 +7,3 @@ fmmla z0.b, z0.b, z0.b
77
// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid element width
88
// CHECK-NEXT: fmmla z0.b, z0.b, z0.b
99
// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:
10-
11-
// --------------------------------------------------------------------------//
12-
// Negative tests for instructions that are incompatible with movprfx
13-
14-
movprfx z0.h, p0/m, z7.h
15-
fmmla z0.h, z0.h, z0.h
16-
// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: instruction is unpredictable when following a movprfx and destination also used as non-destructive source
17-
// CHECK-NEXT: fmmla z0.h, z0.h, z0.h
18-
// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:
19-
20-
movprfx z0, z7
21-
fmmla z0.h, z0.h, z0.h
22-
// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: instruction is unpredictable when following a movprfx and destination also used as non-destructive source
23-
// CHECK-NEXT: fmmla z0.h, z0.h, z0.h
24-
// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:

llvm/test/MC/AArch64/SVE2p3/bfmmla-diagnostics.s

Lines changed: 0 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -17,18 +17,3 @@ bfmmla z0.d, z0.d, z0.d
1717
// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid element width
1818
// CHECK-NEXT: bfmmla z0.d, z0.d, z0.d
1919
// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:
20-
21-
// --------------------------------------------------------------------------//
22-
// Negative tests for instructions that are incompatible with movprfx
23-
24-
movprfx z0.h, p0/m, z7.h
25-
bfmmla z0.h, z0.h, z0.h
26-
// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: instruction is unpredictable when following a movprfx and destination also used as non-destructive source
27-
// CHECK-NEXT: bfmmla z0.h, z0.h, z0.h
28-
// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:
29-
30-
movprfx z0, z7
31-
bfmmla z0.h, z0.h, z0.h
32-
// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: instruction is unpredictable when following a movprfx and destination also used as non-destructive source
33-
// CHECK-NEXT: bfmmla z0.h, z0.h, z0.h
34-
// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:

llvm/test/MC/AArch64/SVE2p3/dot-diagnostics.s

Lines changed: 0 additions & 51 deletions
Original file line numberDiff line numberDiff line change
@@ -135,54 +135,3 @@ udot z0.h, z0.b, z0.b[8]
135135
// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: vector lane must be an integer in range [0, 7].
136136
// CHECK-NEXT: udot z0.h, z0.b, z0.b[8]
137137
// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:
138-
139-
// --------------------------------------------------------------------------//
140-
// Negative tests for instructions that are incompatible with movprfx
141-
142-
movprfx z0.h, p0/m, z7.h
143-
sdot z0.h, z0.b, z0.b[0]
144-
// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: instruction is unpredictable when following a movprfx and destination also used as non-destructive source
145-
// CHECK-NEXT: sdot z0.h, z0.b, z0.b[0]
146-
// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:
147-
148-
movprfx z0, z7
149-
sdot z0.h, z0.b, z0.b[0]
150-
// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: instruction is unpredictable when following a movprfx and destination also used as non-destructive source
151-
// CHECK-NEXT: sdot z0.h, z0.b, z0.b[0]
152-
// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:
153-
154-
movprfx z0.h, p0/m, z7.h
155-
sdot z0.h, z0.b, z0.b
156-
// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: instruction is unpredictable when following a movprfx and destination also used as non-destructive source
157-
// CHECK-NEXT: sdot z0.h, z0.b, z0.b
158-
// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:
159-
160-
movprfx z0, z7
161-
sdot z0.h, z0.b, z0.b
162-
// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: instruction is unpredictable when following a movprfx and destination also used as non-destructive source
163-
// CHECK-NEXT: sdot z0.h, z0.b, z0.b
164-
// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:
165-
166-
movprfx z0.h, p0/m, z7.h
167-
udot z0.h, z0.b, z0.b[0]
168-
// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: instruction is unpredictable when following a movprfx and destination also used as non-destructive source
169-
// CHECK-NEXT: udot z0.h, z0.b, z0.b[0]
170-
// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:
171-
172-
movprfx z0, z7
173-
udot z0.h, z0.b, z0.b[0]
174-
// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: instruction is unpredictable when following a movprfx and destination also used as non-destructive source
175-
// CHECK-NEXT: udot z0.h, z0.b, z0.b[0]
176-
// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:
177-
178-
movprfx z0.h, p0/m, z7.h
179-
udot z0.h, z0.b, z0.b
180-
// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: instruction is unpredictable when following a movprfx and destination also used as non-destructive source
181-
// CHECK-NEXT: udot z0.h, z0.b, z0.b
182-
// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:
183-
184-
movprfx z0, z7
185-
udot z0.h, z0.b, z0.b
186-
// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: instruction is unpredictable when following a movprfx and destination also used as non-destructive source
187-
// CHECK-NEXT: udot z0.h, z0.b, z0.b
188-
// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:

0 commit comments

Comments
 (0)