summaryrefslogtreecommitdiff
path: root/test/MC/AArch64/SVE/prfd-diagnostics.s
diff options
context:
space:
mode:
Diffstat (limited to 'test/MC/AArch64/SVE/prfd-diagnostics.s')
-rw-r--r--test/MC/AArch64/SVE/prfd-diagnostics.s16
1 files changed, 16 insertions, 0 deletions
diff --git a/test/MC/AArch64/SVE/prfd-diagnostics.s b/test/MC/AArch64/SVE/prfd-diagnostics.s
index bca2f5b71218..2fb6a296576f 100644
--- a/test/MC/AArch64/SVE/prfd-diagnostics.s
+++ b/test/MC/AArch64/SVE/prfd-diagnostics.s
@@ -114,3 +114,19 @@ prfd #0, p8, [x0]
// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: restricted predicate has range [0, 7].
// CHECK-NEXT: prfd #0, p8, [x0]
// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:
+
+
+// --------------------------------------------------------------------------//
+// Negative tests for instructions that are incompatible with movprfx
+
+movprfx z0.d, p0/z, z7.d
+prfd pldl1keep, p0, [x0, z0.d, lsl #3]
+// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: instruction is unpredictable when following a movprfx, suggest replacing movprfx with mov
+// CHECK-NEXT: prfd pldl1keep, p0, [x0, z0.d, lsl #3]
+// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:
+
+movprfx z0, z7
+prfd pldl1keep, p0, [x0, z0.d, lsl #3]
+// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: instruction is unpredictable when following a movprfx, suggest replacing movprfx with mov
+// CHECK-NEXT: prfd pldl1keep, p0, [x0, z0.d, lsl #3]
+// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}: