2
0

2003-09-23-NotAtTop.ll 691 B

1234567891011121314151617181920
  1. ; RUN: opt -S -indvars < %s | FileCheck %s
  2. ; The indvar simplification code should ensure that the first PHI in the block
  3. ; is the canonical one!
  4. define i32 @test() {
  5. ; <label>:0
  6. br label %Loop
  7. Loop: ; preds = %Loop, %0
  8. ; CHECK: Loop:
  9. ; CHECK-NEXT: Canonical
  10. %NonIndvar = phi i32 [ 200, %0 ], [ %NonIndvarNext, %Loop ] ; <i32> [#uses=1]
  11. %Canonical = phi i32 [ 0, %0 ], [ %CanonicalNext, %Loop ] ; <i32> [#uses=2]
  12. store i32 %Canonical, i32* null
  13. %NonIndvarNext = sdiv i32 %NonIndvar, 2 ; <i32> [#uses=1]
  14. %CanonicalNext = add i32 %Canonical, 1 ; <i32> [#uses=1]
  15. br label %Loop
  16. }