1*9880d681SAndroid Build Coastguard Worker; RUN: opt < %s -analyze -scalar-evolution 2*9880d681SAndroid Build Coastguard Worker; PR2602 3*9880d681SAndroid Build Coastguard Worker 4*9880d681SAndroid Build Coastguard Workerdefine i32 @a() nounwind { 5*9880d681SAndroid Build Coastguard Workerentry: 6*9880d681SAndroid Build Coastguard Worker br label %bb 7*9880d681SAndroid Build Coastguard Worker 8*9880d681SAndroid Build Coastguard Workerbb: ; preds = %bb, %entry 9*9880d681SAndroid Build Coastguard Worker %w.0 = phi i32 [ 0, %entry ], [ %tmp, %bb ] ; <i32> [#uses=2] 10*9880d681SAndroid Build Coastguard Worker %e.0 = phi i32 [ 0, %entry ], [ %e.1, %bb ] ; <i32> [#uses=2] 11*9880d681SAndroid Build Coastguard Worker %w.1 = add i32 0, %w.0 ; <i32>:0 [#uses=1] 12*9880d681SAndroid Build Coastguard Worker %tmp = add i32 %e.0, %w.0 ; <i32>:1 [#uses=1] 13*9880d681SAndroid Build Coastguard Worker %e.1 = add i32 %e.0, 1 ; <i32>:2 [#uses=1] 14*9880d681SAndroid Build Coastguard Worker %cond = icmp eq i32 %w.1, -1 ; <i1>:3 [#uses=1] 15*9880d681SAndroid Build Coastguard Worker br i1 %cond, label %return, label %bb 16*9880d681SAndroid Build Coastguard Worker 17*9880d681SAndroid Build Coastguard Workerreturn: ; preds = %bb 18*9880d681SAndroid Build Coastguard Worker ret i32 undef 19*9880d681SAndroid Build Coastguard Worker} 20