[ARM] Better OR's for MVE compares
[llvm-core.git] / test / Transforms / LoopStrengthReduce / dont_reverse.ll
blob551bd03f0ae3fbefe6c37e3bc49c31e28a283174
1 ; RUN: opt < %s -loop-reduce -S \
2 ; RUN:    | grep "icmp eq i2 %lsr.iv.next, %xmp4344"
4 ; Don't reverse the iteration if the rhs of the compare is defined
5 ; inside the loop.
7 ; Provide legal integer types.
8 ; Declare i2 as legal so that IVUsers accepts to consider %indvar3451
9 target datalayout = "n2:8:16:32:64"
11 define void @Fill_Buffer(i2* %p) nounwind {
12 entry:
13         br label %bb8
15 bb8:
16         %indvar34 = phi i32 [ 0, %entry ], [ %indvar.next35, %bb8 ]
17         %indvar3451 = trunc i32 %indvar34 to i2
18         %xmp4344 = load i2, i2* %p
19         %xmp104 = icmp eq i2 %indvar3451, %xmp4344
20         %indvar.next35 = add i32 %indvar34, 1
21         br i1 %xmp104, label %bb10, label %bb8
23 bb10:
24         unreachable