|  | ; RUN: opt < %s -loop-simplify -S | FileCheck %s | 
|  | ; PR11575 | 
|  |  | 
|  | @catchtypeinfo = external unnamed_addr constant { i8*, i8*, i8* } | 
|  |  | 
|  | define void @main() uwtable ssp personality i8* bitcast (i32 (...)* @__gxx_personality_v0 to i8*) { | 
|  | 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 { i8*, i32 } | 
|  | catch i8* bitcast ({ i8*, i8*, i8* }* @catchtypeinfo to i8*) | 
|  | 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 { i8*, i32 } | 
|  | cleanup | 
|  | catch i8* bitcast ({ i8*, i8*, i8* }* @catchtypeinfo to i8*) | 
|  | resume { i8*, i32 } undef | 
|  | } | 
|  |  | 
|  | declare i32 @__gxx_personality_v0(...) | 
|  |  | 
|  | declare void @f1() | 
|  |  | 
|  | declare void @f2() | 
|  |  | 
|  | declare void @f3() |