summaryrefslogtreecommitdiff
path: root/test/CodeGen/Thumb2/thumb2-add.ll
diff options
context:
space:
mode:
authorEvan Cheng <evan.cheng@apple.com>2009-06-24 06:36:07 +0000
committerEvan Cheng <evan.cheng@apple.com>2009-06-24 06:36:07 +0000
commit9f76ed512747fc95400b4963900cd3d316c3182e (patch)
tree0fd51c27c3bb6fee75fab11e568771175d14c44f /test/CodeGen/Thumb2/thumb2-add.ll
parent974469d7aa2b5761d34dbf6c750b3e55057cc4bc (diff)
downloadllvm-9f76ed512747fc95400b4963900cd3d316c3182e.tar.gz
llvm-9f76ed512747fc95400b4963900cd3d316c3182e.tar.bz2
llvm-9f76ed512747fc95400b4963900cd3d316c3182e.tar.xz
Move thumb and thumb2 tests into separate directories.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74068 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/CodeGen/Thumb2/thumb2-add.ll')
-rw-r--r--test/CodeGen/Thumb2/thumb2-add.ll50
1 files changed, 50 insertions, 0 deletions
diff --git a/test/CodeGen/Thumb2/thumb2-add.ll b/test/CodeGen/Thumb2/thumb2-add.ll
new file mode 100644
index 0000000000..d4f408ff76
--- /dev/null
+++ b/test/CodeGen/Thumb2/thumb2-add.ll
@@ -0,0 +1,50 @@
+; RUN: llvm-as < %s | llc -march=thumb -mattr=+thumb2 | grep add | grep #255
+; RUN: llvm-as < %s | llc -march=thumb -mattr=+thumb2 | grep add | grep #256
+; RUN: llvm-as < %s | llc -march=thumb -mattr=+thumb2 | grep add | grep #257
+; RUN: llvm-as < %s | llc -march=thumb -mattr=+thumb2 | grep add | grep #4094
+; RUN: llvm-as < %s | llc -march=thumb -mattr=+thumb2 | grep add | grep #4095
+; RUN: llvm-as < %s | llc -march=thumb -mattr=+thumb2 | grep add | grep #4096
+; RUN: llvm-as < %s | llc -march=thumb -mattr=+thumb2 | grep add
+; RUN: llvm-as < %s | llc -march=thumb -mattr=+thumb2 | grep add | grep lsl | grep #8
+
+define i32 @t2ADDrc_255(i32 %lhs) {
+ %Rd = add i32 %lhs, 255;
+ ret i32 %Rd
+}
+
+define i32 @t2ADDrc_256(i32 %lhs) {
+ %Rd = add i32 %lhs, 256;
+ ret i32 %Rd
+}
+
+define i32 @t2ADDrc_257(i32 %lhs) {
+ %Rd = add i32 %lhs, 257;
+ ret i32 %Rd
+}
+
+define i32 @t2ADDrc_4094(i32 %lhs) {
+ %Rd = add i32 %lhs, 4094;
+ ret i32 %Rd
+}
+
+define i32 @t2ADDrc_4095(i32 %lhs) {
+ %Rd = add i32 %lhs, 4095;
+ ret i32 %Rd
+}
+
+define i32 @t2ADDrc_4096(i32 %lhs) {
+ %Rd = add i32 %lhs, 4096;
+ ret i32 %Rd
+}
+
+define i32 @t2ADDrr(i32 %lhs, i32 %rhs) {
+ %Rd = add i32 %lhs, %rhs;
+ ret i32 %Rd
+}
+
+define i32 @t2ADDrs(i32 %lhs, i32 %rhs) {
+ %tmp = shl i32 %rhs, 8
+ %Rd = add i32 %lhs, %tmp;
+ ret i32 %Rd
+}
+