summaryrefslogtreecommitdiff
path: root/test/CodeGen/ARM/iabs.ll
diff options
context:
space:
mode:
authorAnton Korobeynikov <asl@math.spbu.ru>2011-10-07 16:15:08 +0000
committerAnton Korobeynikov <asl@math.spbu.ru>2011-10-07 16:15:08 +0000
commit244455e6d6bb95c5e556ace66adb148dbcd16a27 (patch)
tree4f53569ab317f3e7df55bf6e4eab1757229856ae /test/CodeGen/ARM/iabs.ll
parent3f329cb781492e19a72af267cd3b7c2d8307a818 (diff)
downloadllvm-244455e6d6bb95c5e556ace66adb148dbcd16a27.tar.gz
llvm-244455e6d6bb95c5e556ace66adb148dbcd16a27.tar.bz2
llvm-244455e6d6bb95c5e556ace66adb148dbcd16a27.tar.xz
Peephole optimization for ABS on ARM.
Patch by Ana Pazos! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141365 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/CodeGen/ARM/iabs.ll')
-rw-r--r--test/CodeGen/ARM/iabs.ll8
1 files changed, 4 insertions, 4 deletions
diff --git a/test/CodeGen/ARM/iabs.ll b/test/CodeGen/ARM/iabs.ll
index c01c041cfe..89e309d160 100644
--- a/test/CodeGen/ARM/iabs.ll
+++ b/test/CodeGen/ARM/iabs.ll
@@ -1,8 +1,8 @@
; RUN: llc < %s -march=arm -mattr=+v4t | FileCheck %s
;; Integer absolute value, should produce something as good as: ARM:
-;; add r3, r0, r0, asr #31
-;; eor r0, r3, r0, asr #31
+;; movs r0, r0
+;; rsbmi r0, r0, #0
;; bx lr
define i32 @test(i32 %a) {
@@ -10,7 +10,7 @@ define i32 @test(i32 %a) {
%b = icmp sgt i32 %a, -1
%abs = select i1 %b, i32 %a, i32 %tmp1neg
ret i32 %abs
-; CHECK: add r1, r0, r0, asr #31
-; CHECK: eor r0, r1, r0, asr #31
+; CHECK: movs r0, r0
+; CHECK: rsbmi r0, r0, #0
; CHECK: bx lr
}