X-Git-Url: http://plrg.eecs.uci.edu/git/?a=blobdiff_plain;f=test%2FCodeGen%2FThumb%2Fiabs.ll;h=76224bc5348cda15e4c5f508fc0201f316fc1f99;hb=8aeca44558234ae3703c565854c31d38034e56cb;hp=2e77660c45c1d72773c517ab6cc2421752058173;hpb=49589f0d0e35f643e697ab7ae8a51a530d38b0d8;p=oota-llvm.git diff --git a/test/CodeGen/Thumb/iabs.ll b/test/CodeGen/Thumb/iabs.ll index 2e77660c45c..76224bc5348 100644 --- a/test/CodeGen/Thumb/iabs.ll +++ b/test/CodeGen/Thumb/iabs.ll @@ -1,22 +1,20 @@ -; RUN: llc < %s -march=thumb -stats 2>&1 | \ -; RUN: grep "4 .*Number of machine instrs printed" - -;; Integer absolute value, should produce something as good as: -;; Thumb: -;; movs r0, r0 -;; bpl -;; rsb r0, r0, #0 (with opitmization, bpl + rsb is if-converted into rsbmi) -;; bx lr +; RUN: llc < %s -mtriple=thumb-unknown-unknown -filetype=obj -o %t.o +; RUN: llvm-objdump -disassemble -arch=thumb %t.o | FileCheck %s define i32 @test(i32 %a) { %tmp1neg = sub i32 0, %a %b = icmp sgt i32 %a, -1 %abs = select i1 %b, i32 %a, i32 %tmp1neg ret i32 %abs -; CHECK: movs r0, r0 -; CHECK: bpl -; CHECK: rsb r0, r0, #0 -; CHECK: bx lr -} +; This test just checks that 4 instructions were emitted + +; CHECK: {{text}} +; CHECK: 0: +; CHECK-NEXT: 2: +; CHECK-NEXT: 4: +; CHECK-NEXT: 6: + +; CHECK-NOT: 8: +}