1*9880d681SAndroid Build Coastguard Worker; RUN: opt < %s -deadargelim | llvm-dis 2*9880d681SAndroid Build Coastguard Worker; PR3807 3*9880d681SAndroid Build Coastguard Worker 4*9880d681SAndroid Build Coastguard Workerdefine internal { i32, i32 } @foo() { 5*9880d681SAndroid Build Coastguard Worker ret {i32,i32} {i32 42, i32 4} 6*9880d681SAndroid Build Coastguard Worker} 7*9880d681SAndroid Build Coastguard Worker 8*9880d681SAndroid Build Coastguard Workerdefine i32 @bar() personality i32 (...)* @__gxx_personality_v0 { 9*9880d681SAndroid Build Coastguard Worker %x = invoke {i32,i32} @foo() to label %T unwind label %T2 10*9880d681SAndroid Build Coastguard WorkerT: 11*9880d681SAndroid Build Coastguard Worker %y = extractvalue {i32,i32} %x, 1 12*9880d681SAndroid Build Coastguard Worker ret i32 %y 13*9880d681SAndroid Build Coastguard WorkerT2: 14*9880d681SAndroid Build Coastguard Worker %exn = landingpad {i8*, i32} 15*9880d681SAndroid Build Coastguard Worker cleanup 16*9880d681SAndroid Build Coastguard Worker unreachable 17*9880d681SAndroid Build Coastguard Worker} 18*9880d681SAndroid Build Coastguard Worker 19*9880d681SAndroid Build Coastguard Workerdefine i32 @bar2() personality i32 (...)* @__gxx_personality_v0 { 20*9880d681SAndroid Build Coastguard Workerentry: 21*9880d681SAndroid Build Coastguard Worker %x = invoke {i32,i32} @foo() to label %T unwind label %T2 22*9880d681SAndroid Build Coastguard WorkerT: 23*9880d681SAndroid Build Coastguard Worker %PN = phi i32 [0, %entry] 24*9880d681SAndroid Build Coastguard Worker %y = extractvalue {i32,i32} %x, 1 25*9880d681SAndroid Build Coastguard Worker ret i32 %y 26*9880d681SAndroid Build Coastguard WorkerT2: 27*9880d681SAndroid Build Coastguard Worker %exn = landingpad {i8*, i32} 28*9880d681SAndroid Build Coastguard Worker cleanup 29*9880d681SAndroid Build Coastguard Worker unreachable 30*9880d681SAndroid Build Coastguard Worker} 31*9880d681SAndroid Build Coastguard Worker 32*9880d681SAndroid Build Coastguard Workerdeclare i32 @__gxx_personality_v0(...) 33