|  | ; RUN: opt < %s -passes=loop-simplify -S | FileCheck %s | 
|  | ; PR11575 | 
|  |  | 
|  | @catchtypeinfo = external unnamed_addr constant { ptr, ptr, ptr } | 
|  |  | 
|  | define void @main() uwtable ssp personality ptr @__gxx_personality_v0 { | 
|  | entry: | 
|  | invoke void @f1() | 
|  | to label %try.cont19 unwind label %catch | 
|  |  | 
|  | ; CHECK: catch.preheader: | 
|  | ; CHECK-NEXT: landingpad | 
|  | ; CHECK: br label %catch | 
|  |  | 
|  | ; CHECK: catch.preheader.split-lp: | 
|  | ; CHECK-NEXT: landingpad | 
|  | ; CHECK: br label %catch | 
|  |  | 
|  | catch:                                            ; preds = %if.else, %entry | 
|  | %0 = landingpad { ptr, i32 } | 
|  | catch ptr @catchtypeinfo | 
|  | invoke void @f3() | 
|  | to label %if.else unwind label %eh.resume | 
|  |  | 
|  | if.else:                                          ; preds = %catch | 
|  | invoke void @f2() | 
|  | to label %try.cont19 unwind label %catch | 
|  |  | 
|  | try.cont19:                                       ; preds = %if.else, %entry | 
|  | ret void | 
|  |  | 
|  | eh.resume:                                        ; preds = %catch | 
|  | %1 = landingpad { ptr, i32 } | 
|  | cleanup | 
|  | catch ptr @catchtypeinfo | 
|  | resume { ptr, i32 } undef | 
|  | } | 
|  |  | 
|  | declare i32 @__gxx_personality_v0(...) | 
|  |  | 
|  | declare void @f1() | 
|  |  | 
|  | declare void @f2() | 
|  |  | 
|  | declare void @f3() |