| ; NOTE: Assertions have been autogenerated by utils/update_test_checks.py | 
 | ; RUN: opt < %s -passes=simplifycfg -S | FileCheck %s | 
 |  | 
 | declare void @foo() | 
 |  | 
 | ; FIXME: We can replace %phi with true. | 
 | define void @test_01(i1 %cond) { | 
 | ; CHECK-LABEL: @test_01( | 
 | ; CHECK-NEXT:  entry: | 
 | ; CHECK-NEXT:    [[DOT:%.*]] = select i1 [[COND:%.*]], i1 true, i1 undef | 
 | ; CHECK-NEXT:    br i1 [[DOT]], label [[RET_1:%.*]], label [[COMMON_RET:%.*]] | 
 | ; CHECK:       common.ret: | 
 | ; CHECK-NEXT:    ret void | 
 | ; CHECK:       ret_1: | 
 | ; CHECK-NEXT:    call void @foo() | 
 | ; CHECK-NEXT:    br label [[COMMON_RET]] | 
 | ; | 
 | entry: | 
 |   br i1 %cond, label %if.true, label %if.false | 
 |  | 
 | if.true: | 
 |   br label %merge | 
 |  | 
 | if.false: | 
 |   br label %merge | 
 |  | 
 | merge: | 
 |   %phi = phi i1 [true, %if.true], [undef, %if.false] | 
 |   br i1 %phi, label %ret_1, label %ret_2 | 
 |  | 
 | ret_1: | 
 |   call void @foo() | 
 |   ret void | 
 |  | 
 | ret_2: | 
 |   ret void | 
 | } |