2003-12-11-SinkingToPHI.ll 424 B

12345678910111213141516
  1. ; RUN: opt < %s -licm | lli -force-interpreter
  2. define i32 @main() {
  3. entry:
  4. br label %Loop
  5. Loop: ; preds = %LoopCont, %entry
  6. br i1 true, label %LoopCont, label %Out
  7. LoopCont: ; preds = %Loop
  8. %X = add i32 1, 0 ; <i32> [#uses=1]
  9. br i1 true, label %Out, label %Loop
  10. Out: ; preds = %LoopCont, %Loop
  11. %V = phi i32 [ 2, %Loop ], [ %X, %LoopCont ] ; <i32> [#uses=1]
  12. %V2 = sub i32 %V, 1 ; <i32> [#uses=1]
  13. ret i32 %V2
  14. }