summaryrefslogtreecommitdiff
path: root/test/CodeGen/Thumb2/carry.ll
diff options
context:
space:
mode:
authorEvan Cheng <evan.cheng@apple.com>2009-08-12 01:49:45 +0000
committerEvan Cheng <evan.cheng@apple.com>2009-08-12 01:49:45 +0000
commit05c269c64593d8cc6aeb0780a5a8afbb86da5691 (patch)
tree2feafb24323164a330960808b072e03e2a6f6ac8 /test/CodeGen/Thumb2/carry.ll
parent394346ba3a67f85320f4dc121284b37502902f95 (diff)
downloadllvm-05c269c64593d8cc6aeb0780a5a8afbb86da5691.tar.gz
llvm-05c269c64593d8cc6aeb0780a5a8afbb86da5691.tar.bz2
llvm-05c269c64593d8cc6aeb0780a5a8afbb86da5691.tar.xz
Shrink ADDS, ADC, RSB, and SUBS.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78776 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/CodeGen/Thumb2/carry.ll')
-rw-r--r--test/CodeGen/Thumb2/carry.ll12
1 files changed, 9 insertions, 3 deletions
diff --git a/test/CodeGen/Thumb2/carry.ll b/test/CodeGen/Thumb2/carry.ll
index 3388e22549..a55c16f219 100644
--- a/test/CodeGen/Thumb2/carry.ll
+++ b/test/CodeGen/Thumb2/carry.ll
@@ -1,15 +1,21 @@
-; RUN: llvm-as < %s | llc -march=thumb -mattr=+thumb2 | grep "subs\\.w r" | count 2
-; RUN: llvm-as < %s | llc -march=thumb -mattr=+thumb2 | grep "adc\\.w r"
-; RUN: llvm-as < %s | llc -march=thumb -mattr=+thumb2 | grep "sbc\\.w r" | count 2
+; RUN: llvm-as < %s | llc -march=thumb -mattr=+thumb2 | FileCheck %s
define i64 @f1(i64 %a, i64 %b) {
entry:
+; CHECK: f1:
+; CHECK: subs r0, r0, r2
+; CHECK: sbcs r1, r3
%tmp = sub i64 %a, %b
ret i64 %tmp
}
define i64 @f2(i64 %a, i64 %b) {
entry:
+; CHECK: f2:
+; CHECK: adds r0, r0, r0
+; CHECK: adcs r1, r1
+; CHECK: subs r0, r0, r2
+; CHECK: sbcs r1, r3
%tmp1 = shl i64 %a, 1
%tmp2 = sub i64 %tmp1, %b
ret i64 %tmp2