64 lines · plain
1; RUN: llc < %s -mtriple=thumbv7-apple-darwin102; <rdar://problem/8264008>3 4define linkonce_odr arm_apcscc void @func1() personality ptr @__gxx_personality_sj0 {5entry:6 %save_filt.936 = alloca i32 ; <ptr> [#uses=2]7 %save_eptr.935 = alloca ptr ; <ptr> [#uses=2]8 %eh_exception = alloca ptr ; <ptr> [#uses=5]9 %eh_selector = alloca i32 ; <ptr> [#uses=3]10 %"alloca point" = bitcast i32 0 to i32 ; <i32> [#uses=0]11 call arm_apcscc void @func2()12 br label %return13 14bb: ; No predecessors!15 %eh_select = load i32, ptr %eh_selector ; <i32> [#uses=1]16 store i32 %eh_select, ptr %save_filt.936, align 417 %eh_value = load ptr, ptr %eh_exception ; <ptr> [#uses=1]18 store ptr %eh_value, ptr %save_eptr.935, align 419 invoke arm_apcscc void @func3()20 to label %invcont unwind label %lpad21 22invcont: ; preds = %bb23 %tmp6 = load ptr, ptr %save_eptr.935, align 4 ; <ptr> [#uses=1]24 store ptr %tmp6, ptr %eh_exception, align 425 %tmp7 = load i32, ptr %save_filt.936, align 4 ; <i32> [#uses=1]26 store i32 %tmp7, ptr %eh_selector, align 427 br label %Unwind28 29bb12: ; preds = %ppad30 call arm_apcscc void @_ZSt9terminatev() noreturn nounwind31 unreachable32 33return: ; preds = %entry34 ret void35 36lpad: ; preds = %bb37 %eh_ptr = landingpad { ptr, i32 }38 cleanup39 %exn = extractvalue { ptr, i32 } %eh_ptr, 040 store ptr %exn, ptr %eh_exception41 %eh_ptr13 = load ptr, ptr %eh_exception ; <ptr> [#uses=1]42 %eh_select14 = extractvalue { ptr, i32 } %eh_ptr, 143 store i32 %eh_select14, ptr %eh_selector44 br label %ppad45 46ppad:47 br label %bb1248 49Unwind:50 %eh_ptr15 = load ptr, ptr %eh_exception51 call arm_apcscc void @_Unwind_SjLj_Resume(ptr %eh_ptr15)52 unreachable53}54 55declare arm_apcscc void @func2()56 57declare arm_apcscc void @_ZSt9terminatev() noreturn nounwind58 59declare arm_apcscc void @_Unwind_SjLj_Resume(ptr)60 61declare arm_apcscc void @func3()62 63declare arm_apcscc i32 @__gxx_personality_sj0(...)64