1*9880d681SAndroid Build Coastguard Worker; RUN: opt -S -globaldce -sjljehprepare < %s | FileCheck %s 2*9880d681SAndroid Build Coastguard Workertarget datalayout = "e-m:o-p:32:32-f64:32:64-v64:32:64-v128:32:128-a:0:32-n32-S32" 3*9880d681SAndroid Build Coastguard Workertarget triple = "thumbv7--ios5.0.0" 4*9880d681SAndroid Build Coastguard Worker 5*9880d681SAndroid Build Coastguard Workerdefine void @g() personality i32 (...)* @__gxx_personality_sj0 { 6*9880d681SAndroid Build Coastguard Workerentry: 7*9880d681SAndroid Build Coastguard Worker %exn.slot = alloca i8* 8*9880d681SAndroid Build Coastguard Worker %ehselector.slot = alloca i32 9*9880d681SAndroid Build Coastguard Worker invoke void @f() 10*9880d681SAndroid Build Coastguard Worker to label %try.cont unwind label %lpad 11*9880d681SAndroid Build Coastguard Worker 12*9880d681SAndroid Build Coastguard Workerlpad: ; preds = %entry 13*9880d681SAndroid Build Coastguard Worker %0 = landingpad { i8*, i32 } 14*9880d681SAndroid Build Coastguard Worker cleanup 15*9880d681SAndroid Build Coastguard Worker br label %try.cont 16*9880d681SAndroid Build Coastguard Worker 17*9880d681SAndroid Build Coastguard Workertry.cont: ; preds = %catch, %invoke.cont 18*9880d681SAndroid Build Coastguard Worker ret void 19*9880d681SAndroid Build Coastguard Worker} 20*9880d681SAndroid Build Coastguard Worker 21*9880d681SAndroid Build Coastguard Workerdeclare void @f() 22*9880d681SAndroid Build Coastguard Worker 23*9880d681SAndroid Build Coastguard Workerdeclare i32 @__gxx_personality_sj0(...) 24*9880d681SAndroid Build Coastguard Worker 25*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: define void @g( 26*9880d681SAndroid Build Coastguard Worker; CHECK: call void @llvm.eh.sjlj.callsite( 27*9880d681SAndroid Build Coastguard Worker; CHECK: call void @_Unwind_SjLj_Register( 28*9880d681SAndroid Build Coastguard Worker; CHECK: invoke void @f( 29*9880d681SAndroid Build Coastguard Worker; CHECK: landingpad 30*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: cleanup 31*9880d681SAndroid Build Coastguard Worker; CHECK: call void @_Unwind_SjLj_Unregister( 32