llvm-project/llvm/test/Transforms/SCCP/phitest.ll

24 lines
494 B
LLVM

; RUN: llvm-upgrade < %s | llvm-as | opt -sccp -dce -simplifycfg | llvm-dis | not grep br
int %test(int %param) {
entry:
%tmp.1 = setne int %param, 0
br bool %tmp.1, label %endif.0, label %else
else:
br label %endif.0
endif.0:
%a.0 = phi int [ 2, %else ], [ 3, %entry ]
%b.0 = phi int [ 3, %else ], [ 2, %entry ]
%tmp.5 = add int %a.0, %b.0
%tmp.7 = setne int %tmp.5, 5
br bool %tmp.7, label %UnifiedReturnBlock, label %endif.1
endif.1:
ret int 0
UnifiedReturnBlock:
ret int 2
}