1 ; RUN: opt -simplifycfg -S < %s | FileCheck %s 2 target datalayout = "e-m:x-p:32:32-i64:64-f80:32-n8:16:32-a:0:32-S32" 3 target triple = "i686-pc-win32" 4 5 declare i32 @__CxxFrameHandler3(...) 6 7 declare void @fn_2() 8 9 define void @fn_1(i1 %B) personality i32 (...)* @__CxxFrameHandler3 { 10 entry: 11 br i1 %B, label %__Ea.exit, label %lor.lhs.false.i.i 12 13 lor.lhs.false.i.i: 14 br i1 %B, label %if.end.i.i, label %__Ea.exit 15 16 if.end.i.i: 17 invoke void @fn_2() 18 to label %__Ea.exit unwind label %ehcleanup.i 19 20 ehcleanup.i: 21 %t4 = cleanuppad within none [] 22 br label %arraydestroy.body.i 23 24 arraydestroy.body.i: 25 %gep = getelementptr i8, i8* null, i32 -1 26 br label %dtor.exit.i 27 28 dtor.exit.i: 29 br i1 %B, label %arraydestroy.done3.i, label %arraydestroy.body.i 30 31 arraydestroy.done3.i: 32 cleanupret from %t4 unwind to caller 33 34 __Ea.exit: 35 ret void 36 } 37 38 ; CHECK-LABEL: define void @fn_1( 39 ; CHECK-NEXT: entry: 40 ; CHECK-NEXT: ret void 41