1*9880d681SAndroid Build Coastguard Worker; This testcases makes sure that mem2reg can handle unreachable blocks. 2*9880d681SAndroid Build Coastguard Worker; RUN: opt < %s -mem2reg 3*9880d681SAndroid Build Coastguard Worker 4*9880d681SAndroid Build Coastguard Workerdefine i32 @test() { 5*9880d681SAndroid Build Coastguard Worker %X = alloca i32 ; <i32*> [#uses=2] 6*9880d681SAndroid Build Coastguard Worker store i32 6, i32* %X 7*9880d681SAndroid Build Coastguard Worker br label %Loop 8*9880d681SAndroid Build Coastguard WorkerLoop: ; preds = %EndOfLoop, %0 9*9880d681SAndroid Build Coastguard Worker store i32 5, i32* %X 10*9880d681SAndroid Build Coastguard Worker br label %EndOfLoop 11*9880d681SAndroid Build Coastguard WorkerUnreachable: ; No predecessors! 12*9880d681SAndroid Build Coastguard Worker br label %EndOfLoop 13*9880d681SAndroid Build Coastguard WorkerEndOfLoop: ; preds = %Unreachable, %Loop 14*9880d681SAndroid Build Coastguard Worker br label %Loop 15*9880d681SAndroid Build Coastguard Worker} 16*9880d681SAndroid Build Coastguard Worker 17