Skip to content

Commit

Permalink
New testcase, allow folding of binary operators that use PHI nodes, a…
Browse files Browse the repository at this point in the history
…s long

as the result of the binary operator is always constant.  This does not require
the PHI itself to be constant though.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10762 91177308-0d34-0410-b5e6-96231b3b80d8
  • Loading branch information
lattner committed Jan 12, 2004
1 parent 2d11f16 commit ff2ab4d
Showing 1 changed file with 23 additions and 0 deletions.
23 changes: 23 additions & 0 deletions test/Transforms/SCCP/phitest.ll
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
; RUN: llvm-as < %s | 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
}

0 comments on commit ff2ab4d

Please sign in to comment.