[ARM] More MVE compare vector splat combines for ANDs
[llvm-complete.git] / test / CodeGen / ARM / 2011-04-15-AndVFlagPeepholeBug.ll
blob91adba41b1ac6a3be708a0b0d1996ce663877c39
1 ; RUN: llc < %s -mtriple=thumbv7-apple-darwin10 | FileCheck %s
3 ; CHECK: _f
4 ; CHECK-NOT: ands
5 ; CHECK: cmp
6 ; CHECK: blle _g
8 define i32 @f(i32 %a, i32 %b) nounwind ssp {
9 entry:
10   %and = and i32 %b, %a
11   %cmp = icmp slt i32 %and, 1
12   br i1 %cmp, label %if.then, label %if.end
14 if.then:                                          ; preds = %entry
15   tail call void (...) @g(i32 %a, i32 %b) nounwind
16   br label %if.end
18 if.end:                                           ; preds = %if.then, %entry
19   ret i32 %and
22 declare void @g(...)