37 lines · plain
1; RUN: llc -simplifycfg-require-and-preserve-domtree=1 < %s -mtriple=i386-pc-mingw322 3define void @func() nounwind personality ptr @__gxx_personality_v0 {4invoke.cont:5 %call = tail call ptr @malloc()6 %a = invoke i32 @bar()7 to label %bb1 unwind label %lpad8 9bb1:10 ret void11 12lpad:13 %exn.ptr = landingpad { ptr, i32 }14 catch ptr null15 %exn = extractvalue { ptr, i32 } %exn.ptr, 016 %eh.selector = extractvalue { ptr, i32 } %exn.ptr, 117 %ehspec.fails = icmp slt i32 %eh.selector, 018 br i1 %ehspec.fails, label %ehspec.unexpected, label %cleanup19 20cleanup:21 resume { ptr, i32 } %exn.ptr22 23ehspec.unexpected:24 tail call void @__cxa_call_unexpected(ptr %exn) noreturn nounwind25 unreachable26}27 28declare noalias ptr @malloc()29 30declare i32 @__gxx_personality_v0(...)31 32declare void @_Unwind_Resume_or_Rethrow(ptr)33 34declare void @__cxa_call_unexpected(ptr)35 36declare i32 @bar()37