xref: /llvm-project/llvm/test/Transforms/SCCP/2003-08-26-InvokeHandling.ll (revision 0991da36906bdb29b8f1030d5123bafb58fee79e)
1; The PHI cannot be eliminated from this testcase, SCCP is mishandling invoke's!
2; RUN: opt < %s -passes=sccp -S | grep phi
3
4declare void @foo()
5
6define i32 @test(i1 %cond) personality ptr @__gxx_personality_v0 {
7Entry:
8	br i1 %cond, label %Inv, label %Cont
9Inv:		; preds = %Entry
10	invoke void @foo( )
11			to label %Ok unwind label %LPad
12Ok:		; preds = %Inv
13	br label %Cont
14LPad:
15        %val = landingpad { ptr, i32 }
16                 catch ptr null
17        br label %Cont
18Cont:		; preds = %Ok, %Inv, %Entry
19	%X = phi i32 [ 0, %Entry ], [ 1, %Ok ], [ 0, %LPad ]		; <i32> [#uses=1]
20	ret i32 %X
21}
22
23declare i32 @__gxx_personality_v0(...)
24