summaryrefslogtreecommitdiffstats
path: root/llvm/test/MC/ARM/coprocessors.s
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/test/MC/ARM/coprocessors.s')
-rw-r--r--llvm/test/MC/ARM/coprocessors.s74
1 files changed, 74 insertions, 0 deletions
diff --git a/llvm/test/MC/ARM/coprocessors.s b/llvm/test/MC/ARM/coprocessors.s
new file mode 100644
index 00000000000..d2ef5815788
--- /dev/null
+++ b/llvm/test/MC/ARM/coprocessors.s
@@ -0,0 +1,74 @@
+@ RUN: not llvm-mc -triple=armv7 < %s 2> %t | FileCheck --check-prefix=ACCEPT-01234567CD --check-prefix=ACCEPT-89 --check-prefix=ACCEPT-EF %s
+@ RUN: FileCheck --check-prefix=REJECT-AB < %t %s
+@ RUN: not llvm-mc -triple=thumbv7 < %s 2> %t | FileCheck --check-prefix=ACCEPT-01234567CD --check-prefix=ACCEPT-89 --check-prefix=ACCEPT-EF %s
+@ RUN: FileCheck --check-prefix=REJECT-AB < %t %s
+@ RUN: not llvm-mc -triple=armv8 < %s 2> %t | FileCheck --check-prefix=ACCEPT-EF %s
+@ RUN: FileCheck --check-prefix=REJECT-01234567CD --check-prefix=REJECT-89 --check-prefix=REJECT-AB < %t %s
+@ RUN: not llvm-mc -triple=thumbv8 < %s 2> %t | FileCheck --check-prefix=ACCEPT-EF %s
+@ RUN: FileCheck --check-prefix=REJECT-01234567CD --check-prefix=REJECT-89 --check-prefix=REJECT-AB < %t %s
+@ RUN: not llvm-mc -triple=thumbv8.1m.main < %s 2> %t | FileCheck --check-prefix=ACCEPT-01234567CD %s
+@ RUN: FileCheck --check-prefix=REJECT-89 --check-prefix=REJECT-AB --check-prefix=REJECT-EF < %t %s
+
+mrc p0, #1, r2, c3, c4, #5
+@ ACCEPT-01234567CD: mrc p0, #1, r2, c3, c4, #5
+@ REJECT-01234567CD: [[@LINE-2]]:7: error: invalid operand for instruction
+
+mrc p1, #1, r2, c3, c4, #5
+@ ACCEPT-01234567CD: mrc p1, #1, r2, c3, c4, #5
+@ REJECT-01234567CD: [[@LINE-2]]:7: error: invalid operand for instruction
+
+mrc p2, #1, r2, c3, c4, #5
+@ ACCEPT-01234567CD: mrc p2, #1, r2, c3, c4, #5
+@ REJECT-01234567CD: [[@LINE-2]]:7: error: invalid operand for instruction
+
+mrc p3, #1, r2, c3, c4, #5
+@ ACCEPT-01234567CD: mrc p3, #1, r2, c3, c4, #5
+@ REJECT-01234567CD: [[@LINE-2]]:7: error: invalid operand for instruction
+
+mrc p4, #1, r2, c3, c4, #5
+@ ACCEPT-01234567CD: mrc p4, #1, r2, c3, c4, #5
+@ REJECT-01234567CD: [[@LINE-2]]:7: error: invalid operand for instruction
+
+mrc p5, #1, r2, c3, c4, #5
+@ ACCEPT-01234567CD: mrc p5, #1, r2, c3, c4, #5
+@ REJECT-01234567CD: [[@LINE-2]]:7: error: invalid operand for instruction
+
+mrc p6, #1, r2, c3, c4, #5
+@ ACCEPT-01234567CD: mrc p6, #1, r2, c3, c4, #5
+@ REJECT-01234567CD: [[@LINE-2]]:7: error: invalid operand for instruction
+
+mrc p7, #1, r2, c3, c4, #5
+@ ACCEPT-01234567CD: mrc p7, #1, r2, c3, c4, #5
+@ REJECT-01234567CD: [[@LINE-2]]:7: error: invalid operand for instruction
+
+mrc p8, #1, r2, c3, c4, #5
+@ ACCEPT-89: mrc p8, #1, r2, c3, c4, #5
+@ REJECT-89: [[@LINE-2]]:7: error: invalid operand for instruction
+
+mrc p9, #1, r2, c3, c4, #5
+@ ACCEPT-89: mrc p9, #1, r2, c3, c4, #5
+@ REJECT-89: [[@LINE-2]]:7: error: invalid operand for instruction
+
+mrc p10, #1, r2, c3, c4, #5
+@ ACCEPT-AB: mrc p10, #1, r2, c3, c4, #5
+@ REJECT-AB: [[@LINE-2]]:7: error: invalid operand for instruction
+
+mrc p11, #1, r2, c3, c4, #5
+@ ACCEPT-AB: mrc p11, #1, r2, c3, c4, #5
+@ REJECT-AB: [[@LINE-2]]:7: error: invalid operand for instruction
+
+mrc p12, #1, r2, c3, c4, #5
+@ ACCEPT-01234567CD: mrc p12, #1, r2, c3, c4, #5
+@ REJECT-01234567CD: [[@LINE-2]]:7: error: invalid operand for instruction
+
+mrc p13, #1, r2, c3, c4, #5
+@ ACCEPT-01234567CD: mrc p13, #1, r2, c3, c4, #5
+@ REJECT-01234567CD: [[@LINE-2]]:7: error: invalid operand for instruction
+
+mrc p14, #1, r2, c3, c4, #5
+@ ACCEPT-EF: mrc p14, #1, r2, c3, c4, #5
+@ REJECT-EF: [[@LINE-2]]:7: error: invalid operand for instruction
+
+mrc p15, #1, r2, c3, c4, #5
+@ ACCEPT-EF: mrc p15, #1, r2, c3, c4, #5
+@ REJECT-EF: [[@LINE-2]]:7: error: invalid operand for instruction
OpenPOWER on IntegriCloud