1*9880d681SAndroid Build Coastguard Worker; RUN: opt < %s -instcombine -S | FileCheck %s 2*9880d681SAndroid Build Coastguard Worker 3*9880d681SAndroid Build Coastguard Workerdefine void @entry() nounwind { 4*9880d681SAndroid Build Coastguard Workerentry: 5*9880d681SAndroid Build Coastguard Worker br label %for.cond 6*9880d681SAndroid Build Coastguard Worker 7*9880d681SAndroid Build Coastguard Worker; CHECK: br label %for.cond 8*9880d681SAndroid Build Coastguard Workerfor.cond: 9*9880d681SAndroid Build Coastguard Worker %local = phi <1 x i32> [ <i32 0>, %entry ], [ %phi2, %cond.end47 ] 10*9880d681SAndroid Build Coastguard Worker %phi3 = sub <1 x i32> zeroinitializer, %local 11*9880d681SAndroid Build Coastguard Worker br label %cond.end 12*9880d681SAndroid Build Coastguard Worker 13*9880d681SAndroid Build Coastguard Workercond.false: 14*9880d681SAndroid Build Coastguard Worker br label %cond.end 15*9880d681SAndroid Build Coastguard Worker 16*9880d681SAndroid Build Coastguard Workercond.end: 17*9880d681SAndroid Build Coastguard Worker %cond = phi <1 x i32> [ %phi3, %for.cond ], [ undef, %cond.false ] 18*9880d681SAndroid Build Coastguard Worker br label %cond.end47 19*9880d681SAndroid Build Coastguard Worker 20*9880d681SAndroid Build Coastguard Workercond.end47: 21*9880d681SAndroid Build Coastguard Worker %sum = add <1 x i32> %cond, <i32 92> 22*9880d681SAndroid Build Coastguard Worker %phi2 = sub <1 x i32> zeroinitializer, %sum 23*9880d681SAndroid Build Coastguard Worker br label %for.cond 24*9880d681SAndroid Build Coastguard Worker} 25