aboutsummaryrefslogtreecommitdiffstats
path: root/test
diff options
context:
space:
mode:
authorJim Grosbach <grosbach@apple.com>2011-07-13 22:01:08 +0000
committerJim Grosbach <grosbach@apple.com>2011-07-13 22:01:08 +0000
commit83ab070fc1fbb02ca77b0a37e6ae0eacf58001e1 (patch)
tree202b1ae7d985e5aa5abd796e9f540d790d1f6f65 /test
parent466b022c9956b320a62eac7057eba632c6e512f9 (diff)
downloadexternal_llvm-83ab070fc1fbb02ca77b0a37e6ae0eacf58001e1.zip
external_llvm-83ab070fc1fbb02ca77b0a37e6ae0eacf58001e1.tar.gz
external_llvm-83ab070fc1fbb02ca77b0a37e6ae0eacf58001e1.tar.bz2
Range checking for CDP[2] immediates.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135092 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test')
-rw-r--r--test/MC/ARM/basic-arm-instructions.s14
-rw-r--r--test/MC/ARM/diagnostics.s13
2 files changed, 27 insertions, 0 deletions
diff --git a/test/MC/ARM/basic-arm-instructions.s b/test/MC/ARM/basic-arm-instructions.s
index 6c1b39d..1483377 100644
--- a/test/MC/ARM/basic-arm-instructions.s
+++ b/test/MC/ARM/basic-arm-instructions.s
@@ -357,3 +357,17 @@ _func:
@ CHECK: bxj r2 @ encoding: [0x22,0xff,0x2f,0xe1]
@ CHECK: bxjne r2 @ encoding: [0x22,0xff,0x2f,0x11]
+
+@------------------------------------------------------------------------------
+@ FIXME: CBNZ/CBZ
+@------------------------------------------------------------------------------
+
+
+@------------------------------------------------------------------------------
+@ CDP/CDP2
+@------------------------------------------------------------------------------
+ cdp p7, #1, c1, c1, c1, #4
+ cdp2 p7, #1, c1, c1, c1, #4
+
+@ CHECK: cdp p7, #1, c1, c1, c1, #4 @ encoding: [0x81,0x17,0x11,0xee]
+@ CHECK: cdp2 p7, #1, c1, c1, c1, #4 @ encoding: [0x81,0x17,0x11,0xfe]
diff --git a/test/MC/ARM/diagnostics.s b/test/MC/ARM/diagnostics.s
index bf8f125..4069fea 100644
--- a/test/MC/ARM/diagnostics.s
+++ b/test/MC/ARM/diagnostics.s
@@ -46,3 +46,16 @@
bkpt #65536
@ CHECK-ERRORS: error: invalid operand for instruction
+
+ @ Out of range 4 and 3 bit immediates on CDP[2]
+
+ @ Out of range immediates for CDP/CDP2
+ cdp p7, #2, c1, c1, c1, #8
+ cdp p7, #1, c1, c1, c1, #8
+ cdp2 p7, #2, c1, c1, c1, #8
+ cdp2 p7, #1, c1, c1, c1, #8
+
+@ CHECK-ERRORS: error: invalid operand for instruction
+@ CHECK-ERRORS: error: invalid operand for instruction
+@ CHECK-ERRORS: error: invalid operand for instruction
+@ CHECK-ERRORS: error: invalid operand for instruction