aboutsummaryrefslogtreecommitdiffstats
path: root/test/MC
diff options
context:
space:
mode:
authorJim Grosbach <grosbach@apple.com>2011-07-20 18:37:08 +0000
committerJim Grosbach <grosbach@apple.com>2011-07-20 18:37:08 +0000
commitc3635c2e928a7ecde11398ff272411f6dea2dcd2 (patch)
treea8e681c39d80bd70903dfeacf6106d6260d0a15c /test/MC
parentab40f4b737b0a87c4048a9ad2f0c02be735e3770 (diff)
downloadexternal_llvm-c3635c2e928a7ecde11398ff272411f6dea2dcd2.zip
external_llvm-c3635c2e928a7ecde11398ff272411f6dea2dcd2.tar.gz
external_llvm-c3635c2e928a7ecde11398ff272411f6dea2dcd2.tar.bz2
ARM parsing and encoding tests for MVN
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135599 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/MC')
-rw-r--r--test/MC/ARM/basic-arm-instructions.s57
1 files changed, 57 insertions, 0 deletions
diff --git a/test/MC/ARM/basic-arm-instructions.s b/test/MC/ARM/basic-arm-instructions.s
index 9fb90d2..652c400 100644
--- a/test/MC/ARM/basic-arm-instructions.s
+++ b/test/MC/ARM/basic-arm-instructions.s
@@ -825,6 +825,63 @@ _func:
@ CHECK: mulgt r5, r6, r7 @ encoding: [0x96,0x07,0x05,0xc0]
@ CHECK: mulsle r5, r6, r7 @ encoding: [0x96,0x07,0x15,0xd0]
+
+@------------------------------------------------------------------------------
+@ MVN (immediate)
+@------------------------------------------------------------------------------
+ mvn r3, #7
+ mvn r4, #0xff0
+ mvn r5, #0xff0000
+ mvns r3, #7
+ mvneq r4, #0xff0
+ mvnseq r5, #0xff0000
+
+@ CHECK: mvn r3, #7 @ encoding: [0x07,0x30,0xe0,0xe3]
+@ CHECK: mvn r4, #4080 @ encoding: [0xff,0x4e,0xe0,0xe3]
+@ CHECK: mvn r5, #16711680 @ encoding: [0xff,0x58,0xe0,0xe3]
+@ CHECK: mvns r3, #7 @ encoding: [0x07,0x30,0xf0,0xe3]
+@ CHECK: mvneq r4, #4080 @ encoding: [0xff,0x4e,0xe0,0x03]
+@ CHECK: mvnseq r5, #16711680 @ encoding: [0xff,0x58,0xf0,0x03]
+
+
+@------------------------------------------------------------------------------
+@ MVN (register)
+@------------------------------------------------------------------------------
+ mvn r2, r3
+ mvns r2, r3
+ mvn r5, r6, lsl #19
+ mvn r5, r6, lsr #9
+ mvn r5, r6, asr #4
+ mvn r5, r6, ror #6
+ mvn r5, r6, rrx
+ mvneq r2, r3
+ mvnseq r2, r3, lsl #10
+
+@ CHECK: mvn r2, r3 @ encoding: [0x03,0x20,0xe0,0xe1]
+@ CHECK: mvns r2, r3 @ encoding: [0x03,0x20,0xf0,0xe1]
+@ CHECK: mvn r5, r6, lsl #19 @ encoding: [0x86,0x59,0xe0,0xe1]
+@ CHECK: mvn r5, r6, lsr #9 @ encoding: [0xa6,0x54,0xe0,0xe1]
+@ CHECK: mvn r5, r6, asr #4 @ encoding: [0x46,0x52,0xe0,0xe1]
+@ CHECK: mvn r5, r6, ror #6 @ encoding: [0x66,0x53,0xe0,0xe1]
+@ CHECK: mvn r5, r6, rrx @ encoding: [0x66,0x50,0xe0,0xe1]
+@ CHECK: mvneq r2, r3 @ encoding: [0x03,0x20,0xe0,0x01]
+@ CHECK: mvnseq r2, r3, lsl #10 @ encoding: [0x03,0x25,0xf0,0x01]
+
+
+@------------------------------------------------------------------------------
+@ MVN (shifted register)
+@------------------------------------------------------------------------------
+ mvn r5, r6, lsl r7
+ mvns r5, r6, lsr r7
+ mvngt r5, r6, asr r7
+ mvnslt r5, r6, ror r7
+
+@ CHECK: mvn r5, r6, lsl r7 @ encoding: [0x16,0x57,0xe0,0xe1]
+@ CHECK: mvns r5, r6, lsr r7 @ encoding: [0x36,0x57,0xf0,0xe1]
+@ CHECK: mvngt r5, r6, asr r7 @ encoding: [0x56,0x57,0xe0,0xc1]
+@ CHECK: mvnslt r5, r6, ror r7 @ encoding: [0x76,0x57,0xf0,0xb1]
+
+
@------------------------------------------------------------------------------
@ STM*
@------------------------------------------------------------------------------