| ; RUN: opt < %s -instcombine -simplifycfg -S | grep { = phi } | count 1 | |
| ; instcombine should sort the PHI operands so that simplifycfg can see the | |
| ; duplicate and remove it. | |
| define i32 @foo(i1 %t) { | |
| entry: | |
| call void @bar() | |
| br i1 %t, label %true, label %false | |
| true: | |
| call void @bar() | |
| br label %false | |
| false: | |
| %a = phi i32 [ 2, %true ], [ 5, %entry ] | |
| %b = phi i32 [ 5, %entry ], [ 2, %true ] | |
| call void @bar() | |
| %c = add i32 %a, %b | |
| ret i32 %c | |
| } | |
| declare void @bar() |