Fix vbroadcast matching logic to early unmatch if the node doesn't have
[oota-llvm.git] / test / CodeGen / X86 / lsr-quadratic-expand.ll
1 ; RUN: llc -march=x86-64 < %s
2
3 define void @dw2102_i2c_transfer() nounwind {
4 entry:
5   br label %bb
6
7 bb:                                               ; preds = %bb, %entry
8   %z = phi i64 [ 0, %entry ], [ %z3, %bb ]
9   %z1 = phi i16 [ undef, %entry ], [ %z6, %bb ]
10   %z2 = phi i32 [ 0, %entry ], [ %z8, %bb ]
11   %z3 = add i64 %z, 1
12   %z4 = zext i16 %z1 to i32
13   %z5 = add nsw i32 %z4, %z2
14   %z6 = trunc i32 %z5 to i16
15   call fastcc void @dw210x_op_rw(i16 zeroext %z6)
16   %z7 = getelementptr i8* null, i64 %z
17   store i8 undef, i8* %z7, align 1
18   %z8 = add nsw i32 %z2, 1
19   br label %bb
20 }
21
22 declare fastcc void @dw210x_op_rw(i16 zeroext) nounwind