llvm-6502/test/MC/AArch64/noneon-diagnostics.s
Tim Northover c08733f867 AArch64/ARM64: enable MC-level diagnostic tests for NEON insts.
Obviously we can't expect the two backends to produce identical diagnostics,
since what's possible depends quite a bit on how the .td files are structured.
I think the ARM64 diagnostics are basically of the same quality in all the
changed cases, so I've split the CHECK lines.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@208084 91177308-0d34-0410-b5e6-96231b3b80d8
2014-05-06 12:50:55 +00:00

52 lines
2.3 KiB
ArmAsm

// RUN: not llvm-mc -triple aarch64-none-linux-gnu -mattr=-neon < %s 2> %t
// RUN: FileCheck --check-prefix=CHECK-ERROR < %t %s
// RUN: not llvm-mc -triple arm64-none-linux-gnu -mattr=-neon < %s 2> %t
// RUN: FileCheck --check-prefix=CHECK-ARM64-ERROR < %t %s
fmla v3.4s, v12.4s, v17.4s
fmla v1.2d, v30.2d, v20.2d
fmla v9.2s, v9.2s, v0.2s
// CHECK-ERROR: error: instruction requires a CPU feature not currently enabled
// CHECK-ERROR-NEXT: fmla v3.4s, v12.4s, v17.4s
// CHECK-ERROR-NEXT: ^
// CHECK-ERROR-NEXT: error: instruction requires a CPU feature not currently enabled
// CHECK-ERROR-NEXT: fmla v1.2d, v30.2d, v20.2d
// CHECK-ERROR-NEXT: ^
// CHECK-ERROR-NEXT: error: instruction requires a CPU feature not currently enabled
// CHECK-ERROR-NEXT: fmla v9.2s, v9.2s, v0.2s
// CHECK-ERROR-NEXT: ^
// CHECK-ARM64-ERROR: error: instruction requires: neon
// CHECK-ARM64-ERROR-NEXT: fmla v3.4s, v12.4s, v17.4s
// CHECK-ARM64-ERROR-NEXT: ^
// CHECK-ARM64-ERROR-NEXT: error: instruction requires: neon
// CHECK-ARM64-ERROR-NEXT: fmla v1.2d, v30.2d, v20.2d
// CHECK-ARM64-ERROR-NEXT: ^
// CHECK-ARM64-ERROR-NEXT: error: instruction requires: neon
// CHECK-ARM64-ERROR-NEXT: fmla v9.2s, v9.2s, v0.2s
// CHECK-ARM64-ERROR-NEXT: ^
fmls v3.4s, v12.4s, v17.4s
fmls v1.2d, v30.2d, v20.2d
fmls v9.2s, v9.2s, v0.2s
// CHECK-ERROR: error: instruction requires a CPU feature not currently enabled
// CHECK-ERROR-NEXT: fmls v3.4s, v12.4s, v17.4s
// CHECK-ERROR-NEXT: ^
// CHECK-ERROR-NEXT: error: instruction requires a CPU feature not currently enabled
// CHECK-ERROR-NEXT: fmls v1.2d, v30.2d, v20.2d
// CHECK-ERROR-NEXT: ^
// CHECK-ERROR-NEXT: error: instruction requires a CPU feature not currently enabled
// CHECK-ERROR-NEXT: fmls v9.2s, v9.2s, v0.2s
// CHECK-ERROR-NEXT: ^
// CHECK-ARM64-ERROR: error: instruction requires: neon
// CHECK-ARM64-ERROR-NEXT: fmls v3.4s, v12.4s, v17.4s
// CHECK-ARM64-ERROR-NEXT: ^
// CHECK-ARM64-ERROR-NEXT: error: instruction requires: neon
// CHECK-ARM64-ERROR-NEXT: fmls v1.2d, v30.2d, v20.2d
// CHECK-ARM64-ERROR-NEXT: ^
// CHECK-ARM64-ERROR-NEXT: error: instruction requires: neon
// CHECK-ARM64-ERROR-NEXT: fmls v9.2s, v9.2s, v0.2s
// CHECK-ARM64-ERROR-NEXT: ^