[DAGCombiner] Add target hook function to decide folding (mul (add x, c1), c2)
[llvm-project.git] / llvm / test / Transforms / LICM / 2003-12-11-SinkingToPHI.ll
blobd111ff1e67cf91905cfae3dc075a7dd637ab4417
1 ; RUN: opt < %s -licm | lli -jit-kind=mcjit -force-interpreter
3 define i32 @main() {
4 entry:
5         br label %Loop
6 Loop:           ; preds = %LoopCont, %entry
7         br i1 true, label %LoopCont, label %Out
8 LoopCont:               ; preds = %Loop
9         %X = add i32 1, 0               ; <i32> [#uses=1]
10         br i1 true, label %Out, label %Loop
11 Out:            ; preds = %LoopCont, %Loop
12         %V = phi i32 [ 2, %Loop ], [ %X, %LoopCont ]            ; <i32> [#uses=1]
13         %V2 = sub i32 %V, 1             ; <i32> [#uses=1]
14         ret i32 %V2