Land the long talked about "type system rewrite" patch. This
[llvm/stm8.git] / test / Transforms / DeadArgElim / 2009-03-17-MRE-Invoke.ll
blob161821f3f8f79b73c167923eb07680aeceae2711
1 ; RUN: opt < %s -deadargelim | llvm-dis
2 ; PR3807
4 define internal { i32, i32 } @foo() {
5   ret {i32,i32} {i32 42, i32 4}
8 define i32 @bar() {
9   %x = invoke {i32,i32} @foo() to label %T unwind label %T2
11   %y = extractvalue {i32,i32} %x, 1
12   ret i32 %y
13 T2:
14   unreachable
17 define i32 @bar2() {
18 entry:
19   %x = invoke {i32,i32} @foo() to label %T unwind label %T2
21   %PN = phi i32 [0, %entry]
22   %y = extractvalue {i32,i32} %x, 1
23   ret i32 %y
24 T2:
25   unreachable