|  | ; RUN: opt -S -indvars < %s | FileCheck %s | 
|  |  | 
|  | ; The indvar simplification code should ensure that the first PHI in the block | 
|  | ; is the canonical one! | 
|  |  | 
|  | define i32 @test() { | 
|  | ; <label>:0 | 
|  | br label %Loop | 
|  |  | 
|  | Loop:           ; preds = %Loop, %0 | 
|  | ; CHECK: Loop: | 
|  | ; CHECK-NEXT: Canonical | 
|  | %NonIndvar = phi i32 [ 200, %0 ], [ %NonIndvarNext, %Loop ]             ; <i32> [#uses=1] | 
|  | %Canonical = phi i32 [ 0, %0 ], [ %CanonicalNext, %Loop ]               ; <i32> [#uses=2] | 
|  | store i32 %Canonical, i32* null | 
|  | %NonIndvarNext = sdiv i32 %NonIndvar, 2         ; <i32> [#uses=1] | 
|  | %CanonicalNext = add i32 %Canonical, 1          ; <i32> [#uses=1] | 
|  | br label %Loop | 
|  | } | 
|  |  |