46 lines · plain
1; RUN: opt < %s -passes=loop-simplify -S | FileCheck %s2; PR115753 4@catchtypeinfo = external unnamed_addr constant { ptr, ptr, ptr }5 6define void @main() uwtable ssp personality ptr @__gxx_personality_v0 {7entry:8 invoke void @f1()9 to label %try.cont19 unwind label %catch10 11; CHECK: catch.preheader:12; CHECK-NEXT: landingpad13; CHECK: br label %catch14 15; CHECK: catch.preheader.split-lp:16; CHECK-NEXT: landingpad17; CHECK: br label %catch18 19catch: ; preds = %if.else, %entry20 %0 = landingpad { ptr, i32 }21 catch ptr @catchtypeinfo22 invoke void @f3()23 to label %if.else unwind label %eh.resume24 25if.else: ; preds = %catch26 invoke void @f2()27 to label %try.cont19 unwind label %catch28 29try.cont19: ; preds = %if.else, %entry30 ret void31 32eh.resume: ; preds = %catch33 %1 = landingpad { ptr, i32 }34 cleanup35 catch ptr @catchtypeinfo36 resume { ptr, i32 } undef37}38 39declare i32 @__gxx_personality_v0(...)40 41declare void @f1()42 43declare void @f2()44 45declare void @f3()46