diff options
Diffstat (limited to 'llvm/test/MC/AArch64/SVE/nand-diagnostics.s')
| -rw-r--r-- | llvm/test/MC/AArch64/SVE/nand-diagnostics.s | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/llvm/test/MC/AArch64/SVE/nand-diagnostics.s b/llvm/test/MC/AArch64/SVE/nand-diagnostics.s new file mode 100644 index 00000000000..5094d9a2461 --- /dev/null +++ b/llvm/test/MC/AArch64/SVE/nand-diagnostics.s @@ -0,0 +1,27 @@ +// RUN: not llvm-mc -triple=aarch64 -show-encoding -mattr=+sve 2>&1 < %s| FileCheck %s + +// --------------------------------------------------------------------------// +// Predicate register must have .b suffix + +nand p0.h, p0/z, p0.h, p1.h +// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid predicate register. +// CHECK-NEXT: nand p0.h, p0/z, p0.h, p1.h +// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}: + +nand p0.s, p0/z, p0.s, p1.s +// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid predicate register. +// CHECK-NEXT: nand p0.s, p0/z, p0.s, p1.s +// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}: + +nand p0.d, p0/z, p0.d, p1.d +// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid predicate register. +// CHECK-NEXT: nand p0.d, p0/z, p0.d, p1.d +// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}: + +// --------------------------------------------------------------------------// +// Operation only has zeroing predicate behaviour (p0/z). + +nand p0.b, p0/m, p1.b, p2.b +// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid operand +// CHECK-NEXT: nand p0.b, p0/m, p1.b, p2.b +// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}: |

