1*9880d681SAndroid Build Coastguard Worker; RUN: opt < %s -disable-verify -instcombine -S | opt -S | FileCheck %s 2*9880d681SAndroid Build Coastguard Worker; Formerly crashed, PR8490. 3*9880d681SAndroid Build Coastguard Worker 4*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: @test3( 5*9880d681SAndroid Build Coastguard Workerdefine i32 @test3(i1 %bool, i32 %a) { 6*9880d681SAndroid Build Coastguard Workerentry: 7*9880d681SAndroid Build Coastguard Worker %cond = or i1 %bool, true 8*9880d681SAndroid Build Coastguard Worker br i1 %cond, label %return, label %xpto 9*9880d681SAndroid Build Coastguard Worker 10*9880d681SAndroid Build Coastguard Worker; technically reachable, but this malformed IR may appear as a result of constant propagation 11*9880d681SAndroid Build Coastguard Workerxpto: 12*9880d681SAndroid Build Coastguard Worker %select = select i1 %bool, i32 %a, i32 %select 13*9880d681SAndroid Build Coastguard Worker %select2 = select i1 %bool, i32 %select2, i32 %a 14*9880d681SAndroid Build Coastguard Worker %sum = add i32 %select, %select2 15*9880d681SAndroid Build Coastguard Worker ret i32 %sum 16*9880d681SAndroid Build Coastguard Worker 17*9880d681SAndroid Build Coastguard Workerreturn: 18*9880d681SAndroid Build Coastguard Worker ret i32 7 19*9880d681SAndroid Build Coastguard Worker} 20