1; NOTE: Assertions have been autogenerated by utils/update_test_checks.py 2; RUN: opt < %s -passes=simplifycfg -S | FileCheck %s 3 4declare void @foo() 5 6; FIXME: We can replace %phi with true. 7define void @test_01(i1 %cond) { 8; CHECK-LABEL: @test_01( 9; CHECK-NEXT: entry: 10; CHECK-NEXT: [[DOT:%.*]] = select i1 [[COND:%.*]], i1 true, i1 undef 11; CHECK-NEXT: br i1 [[DOT]], label [[RET_1:%.*]], label [[COMMON_RET:%.*]] 12; CHECK: common.ret: 13; CHECK-NEXT: ret void 14; CHECK: ret_1: 15; CHECK-NEXT: call void @foo() 16; CHECK-NEXT: br label [[COMMON_RET]] 17; 18entry: 19 br i1 %cond, label %if.true, label %if.false 20 21if.true: 22 br label %merge 23 24if.false: 25 br label %merge 26 27merge: 28 %phi = phi i1 [true, %if.true], [undef, %if.false] 29 br i1 %phi, label %ret_1, label %ret_2 30 31ret_1: 32 call void @foo() 33 ret void 34 35ret_2: 36 ret void 37} 38