1*9880d681SAndroid Build Coastguard Worker; RUN: opt -S -loop-simplify -disable-output -verify-loop-info -verify-dom-info < %s 2*9880d681SAndroid Build Coastguard Worker; PR5235 3*9880d681SAndroid Build Coastguard Worker 4*9880d681SAndroid Build Coastguard Worker; When loopsimplify inserts a preheader for this loop, it should add the new 5*9880d681SAndroid Build Coastguard Worker; block to the enclosing loop and not get confused by the unreachable 6*9880d681SAndroid Build Coastguard Worker; bogus loop entry. 7*9880d681SAndroid Build Coastguard Worker 8*9880d681SAndroid Build Coastguard Workerdefine void @is_extract_cab() nounwind { 9*9880d681SAndroid Build Coastguard Workerentry: 10*9880d681SAndroid Build Coastguard Worker br label %header 11*9880d681SAndroid Build Coastguard Worker 12*9880d681SAndroid Build Coastguard Workerheader: ; preds = %if.end206, %cond.end66, %if.end23 13*9880d681SAndroid Build Coastguard Worker br label %while.body115 14*9880d681SAndroid Build Coastguard Worker 15*9880d681SAndroid Build Coastguard Workerwhile.body115: ; preds = %9, %if.end192, %if.end101 16*9880d681SAndroid Build Coastguard Worker br i1 undef, label %header, label %while.body115 17*9880d681SAndroid Build Coastguard Worker 18*9880d681SAndroid Build Coastguard Workerfoo: 19*9880d681SAndroid Build Coastguard Worker br label %while.body115 20*9880d681SAndroid Build Coastguard Worker} 21