summaryrefslogtreecommitdiff
path: root/test/MC
diff options
context:
space:
mode:
authorRichard Barton <richard.barton@arm.com>2012-05-02 09:43:18 +0000
committerRichard Barton <richard.barton@arm.com>2012-05-02 09:43:18 +0000
commit0a552d611efe9d1070aff1d35c7f169dd1ab0be7 (patch)
tree4cfbbafaf2fb2ff61c56f36ab3f376ac27a4777d /test/MC
parenta9a568a79dbaf7315db863b4808d31ad9f5f91dc (diff)
downloadllvm-0a552d611efe9d1070aff1d35c7f169dd1ab0be7.tar.gz
llvm-0a552d611efe9d1070aff1d35c7f169dd1ab0be7.tar.bz2
llvm-0a552d611efe9d1070aff1d35c7f169dd1ab0be7.tar.xz
Disallow YIELD and other allocated nop hints in pre-ARMv6 architectures.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@155983 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/MC')
-rw-r--r--test/MC/ARM/basic-thumb-instructions.s10
-rw-r--r--test/MC/ARM/thumb-diagnostics.s18
-rw-r--r--test/MC/ARM/thumb.s7
-rw-r--r--test/MC/Disassembler/ARM/thumb1.txt12
4 files changed, 18 insertions, 29 deletions
diff --git a/test/MC/ARM/basic-thumb-instructions.s b/test/MC/ARM/basic-thumb-instructions.s
index bc2605c16e..231b3338e4 100644
--- a/test/MC/ARM/basic-thumb-instructions.s
+++ b/test/MC/ARM/basic-thumb-instructions.s
@@ -635,13 +635,3 @@ _func:
@ CHECK: uxth r1, r4 @ encoding: [0xa1,0xb2]
-@------------------------------------------------------------------------------
-@ WFE/WFI/YIELD
-@------------------------------------------------------------------------------
- wfe
- wfi
- yield
-
-@ CHECK: wfe @ encoding: [0x20,0xbf]
-@ CHECK: wfi @ encoding: [0x30,0xbf]
-@ CHECK: yield @ encoding: [0x10,0xbf]
diff --git a/test/MC/ARM/thumb-diagnostics.s b/test/MC/ARM/thumb-diagnostics.s
index 0902f4e6fb..6f822d1c8e 100644
--- a/test/MC/ARM/thumb-diagnostics.s
+++ b/test/MC/ARM/thumb-diagnostics.s
@@ -138,3 +138,21 @@ error: invalid operand for instruction
@ CHECK-ERRORS: error: source register must be the same as destination
@ CHECK-ERRORS: add r2, sp, ip
@ CHECK-ERRORS: ^
+
+@------------------------------------------------------------------------------
+@ WFE/WFI/YIELD - are not supported pre v6T2
+@------------------------------------------------------------------------------
+ wfe
+ wfi
+ yield
+
+@ CHECK-ERRORS: error: instruction requires: thumb2
+@ CHECK-ERRORS: wfe
+@ CHECK-ERRORS: ^
+@ CHECK-ERRORS: error: instruction requires: thumb2
+@ CHECK-ERRORS: wfi
+@ CHECK-ERRORS: ^
+@ CHECK-ERRORS: error: instruction requires: thumb2
+@ CHECK-ERRORS: yield
+@ CHECK-ERRORS: ^
+
diff --git a/test/MC/ARM/thumb.s b/test/MC/ARM/thumb.s
index 625882c737..2223bdcd46 100644
--- a/test/MC/ARM/thumb.s
+++ b/test/MC/ARM/thumb.s
@@ -44,13 +44,6 @@
nop
@ CHECK: nop @ encoding: [0xc0,0x46]
- wfe
- wfi
- yield
-@ CHECK: wfe @ encoding: [0x20,0xbf]
-@ CHECK: wfi @ encoding: [0x30,0xbf]
-@ CHECK: yield @ encoding: [0x10,0xbf]
-
cpsie aif
@ CHECK: cpsie aif @ encoding: [0x67,0xb6]
diff --git a/test/MC/Disassembler/ARM/thumb1.txt b/test/MC/Disassembler/ARM/thumb1.txt
index 17c4bad239..825b2be915 100644
--- a/test/MC/Disassembler/ARM/thumb1.txt
+++ b/test/MC/Disassembler/ARM/thumb1.txt
@@ -516,15 +516,3 @@
0xd7 0xb2
0xa1 0xb2
-
-
-#------------------------------------------------------------------------------
-# WFE/WFI/YIELD
-#------------------------------------------------------------------------------
-# CHECK: wfe
-# CHECK: wfi
-# CHECK: yield
-
-0x20 0xbf
-0x30 0xbf
-0x10 0xbf