summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Analysis/SparsePropagation.cpp
diff options
context:
space:
mode:
authorJakob Stoklund Olesen <stoklund@2pi.dk>2012-08-18 21:25:16 +0000
committerJakob Stoklund Olesen <stoklund@2pi.dk>2012-08-18 21:25:16 +0000
commitaab43dbfbbac19cc51c22f2a09aba5d33919a7bb (patch)
treed6e16b71fc96671e2d23c02f0855451cb09fa17e /llvm/lib/Analysis/SparsePropagation.cpp
parent9282aef86df69235f02ff5d6380d55207e0cce06 (diff)
downloadbcm5719-llvm-aab43dbfbbac19cc51c22f2a09aba5d33919a7bb.tar.gz
bcm5719-llvm-aab43dbfbbac19cc51c22f2a09aba5d33919a7bb.zip
Also pass logical ops to combineSelectAndUse.
Add these transformations to the existing add/sub ones: (and (select cc, -1, c), x) -> (select cc, x, (and, x, c)) (or (select cc, 0, c), x) -> (select cc, x, (or, x, c)) (xor (select cc, 0, c), x) -> (select cc, x, (xor, x, c)) The selects can then be transformed to a single predicated instruction by peephole. This transformation will make it possible to eliminate the ISD::CAND, COR, and CXOR custom DAG nodes. llvm-svn: 162176
Diffstat (limited to 'llvm/lib/Analysis/SparsePropagation.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud