summaryrefslogtreecommitdiffstats
path: root/llvm/test
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/test')
-rw-r--r--llvm/test/MC/AArch64/csdb.s4
-rw-r--r--llvm/test/MC/ARM/csdb-errors.s6
-rw-r--r--llvm/test/MC/ARM/csdb.s8
-rw-r--r--llvm/test/MC/Disassembler/AArch64/csdb.txt4
-rw-r--r--llvm/test/MC/Disassembler/ARM/csdb-arm.txt4
-rw-r--r--llvm/test/MC/Disassembler/ARM/csdb-thumb.txt4
6 files changed, 30 insertions, 0 deletions
diff --git a/llvm/test/MC/AArch64/csdb.s b/llvm/test/MC/AArch64/csdb.s
new file mode 100644
index 00000000000..bc52280ba85
--- /dev/null
+++ b/llvm/test/MC/AArch64/csdb.s
@@ -0,0 +1,4 @@
+// RUN: llvm-mc -triple aarch64-none-linux-gnu -show-encoding < %s | FileCheck %s
+
+ csdb
+// CHECK: csdb // encoding: [0x9f,0x22,0x03,0xd5]
diff --git a/llvm/test/MC/ARM/csdb-errors.s b/llvm/test/MC/ARM/csdb-errors.s
new file mode 100644
index 00000000000..af74a46b27c
--- /dev/null
+++ b/llvm/test/MC/ARM/csdb-errors.s
@@ -0,0 +1,6 @@
+// RUN: not llvm-mc -triple armv8a-none-eabi %s 2>&1 | FileCheck %s
+// RUN: not llvm-mc -triple thumbv8a-none-eabi %s 2>&1 | FileCheck %s
+
+ it eq
+ csdbeq
+// CHECK: error: instruction 'csdb' is not predicable, but condition code specified
diff --git a/llvm/test/MC/ARM/csdb.s b/llvm/test/MC/ARM/csdb.s
new file mode 100644
index 00000000000..4d78be40fa0
--- /dev/null
+++ b/llvm/test/MC/ARM/csdb.s
@@ -0,0 +1,8 @@
+@ RUN: llvm-mc -triple armv8a-none-eabi -show-encoding %s | FileCheck %s --check-prefix=ARM
+@ RUN: llvm-mc -triple thumbv8a-none-eabi -show-encoding %s | FileCheck %s --check-prefix=THUMB
+@ RUN: not llvm-mc -triple thumbv6m-none-eabi -show-encoding %s 2>&1 | FileCheck %s --check-prefix=ERROR
+
+ csdb
+@ ARM: csdb @ encoding: [0x14,0xf0,0x20,0xe3]
+@ THUMB: csdb @ encoding: [0xaf,0xf3,0x14,0x80]
+@ ERROR: error: instruction requires: thumb2
diff --git a/llvm/test/MC/Disassembler/AArch64/csdb.txt b/llvm/test/MC/Disassembler/AArch64/csdb.txt
new file mode 100644
index 00000000000..ca78f765122
--- /dev/null
+++ b/llvm/test/MC/Disassembler/AArch64/csdb.txt
@@ -0,0 +1,4 @@
+# RUN: llvm-mc -triple aarch64-none-linux-gnu --disassemble < %s | FileCheck %s
+
+[0x9f,0x22,0x03,0xd5]
+# CHECK: csdb
diff --git a/llvm/test/MC/Disassembler/ARM/csdb-arm.txt b/llvm/test/MC/Disassembler/ARM/csdb-arm.txt
new file mode 100644
index 00000000000..afea2a84fa6
--- /dev/null
+++ b/llvm/test/MC/Disassembler/ARM/csdb-arm.txt
@@ -0,0 +1,4 @@
+# RUN: llvm-mc < %s -triple armv8a-none-eabi -disassemble | FileCheck %s
+
+[0x14,0xf0,0x20,0xe3]
+# CHECK: csdb
diff --git a/llvm/test/MC/Disassembler/ARM/csdb-thumb.txt b/llvm/test/MC/Disassembler/ARM/csdb-thumb.txt
new file mode 100644
index 00000000000..094c1d7ae22
--- /dev/null
+++ b/llvm/test/MC/Disassembler/ARM/csdb-thumb.txt
@@ -0,0 +1,4 @@
+# RUN: llvm-mc < %s -triple thumbv8a-none-eabi -disassemble | FileCheck %s
+
+[0xaf,0xf3,0x14,0x80]
+# CHECK: csdb
OpenPOWER on IntegriCloud