fix PR4963: folding insertvalue would sometimes turn a packed struct into
[llvm/avr.git] / test / Transforms / LoopStrengthReduce / pr3571.ll
blob9ad27d5ff11464d8927bf7b7aa10e150ad469bc8
1 ; RUN: opt < %s -loop-reduce | llvm-dis
2 ; PR3571
4 target triple = "i386-mingw32"
5 define void @_ZNK18qdesigner_internal10TreeWidget12drawBranchesEP8QPainterRK5QRectRK11QModelIndex() nounwind {
6 entry:
7         br label %_ZNK11QModelIndex7isValidEv.exit.i
9 bb.i:           ; preds = %_ZNK11QModelIndex7isValidEv.exit.i
10         %indvar.next = add i32 %result.0.i, 1           ; <i32> [#uses=1]
11         br label %_ZNK11QModelIndex7isValidEv.exit.i
13 _ZNK11QModelIndex7isValidEv.exit.i:             ; preds = %bb.i, %entry
14         %result.0.i = phi i32 [ 0, %entry ], [ %indvar.next, %bb.i ]            ; <i32> [#uses=2]
15         %0 = load i32** null, align 4           ; <%struct.QAbstractItemDelegate*> [#uses=0]
16         br i1 false, label %_ZN18qdesigner_internalL5levelEP18QAbstractItemModelRK11QModelIndex.exit, label %bb.i
18 _ZN18qdesigner_internalL5levelEP18QAbstractItemModelRK11QModelIndex.exit:               ; preds = %_ZNK11QModelIndex7isValidEv.exit.i
19         %1 = call i32 @_ZNK9QTreeView11indentationEv(i32* null) nounwind                ; <i32> [#uses=1]
20         %2 = mul i32 %1, %result.0.i            ; <i32> [#uses=1]
21         %3 = add i32 %2, -2             ; <i32> [#uses=1]
22         %4 = add i32 %3, 0              ; <i32> [#uses=1]
23         store i32 %4, i32* null, align 8
24         unreachable
27 declare i32 @_ZNK9QTreeView11indentationEv(i32*)