llvm/test/CodeGen/Mips/llvm-ir
Sanjay Patel 85745f9561 [DAG] optimize negation of bool
Use mask and negate for legalization of i1 source type with SIGN_EXTEND_INREG.
With the mask, this should be no worse than 2 shifts. The mask can be eliminated
in some cases, so that should be better than 2 shifts.

This change exposed some missing folds related to negation:
https://reviews.llvm.org/rL284239
https://reviews.llvm.org/rL284395

There may be others, so please let me know if you see any regressions.

Differential Revision: https://reviews.llvm.org/D25485


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@284611 91177308-0d34-0410-b5e6-96231b3b80d8
2016-10-19 16:58:59 +00:00
..
add.ll [DAG] optimize negation of bool 2016-10-19 16:58:59 +00:00
addrspacecast.ll
and.ll
ashr.ll
atomicrmx.ll
call.ll
extractelement.ll
indirectbr.ll
lh_lhu.ll
load-atomic.ll
lshr.ll
mul.ll [DAG] optimize negation of bool 2016-10-19 16:58:59 +00:00
not.ll
or.ll
ret.ll
sdiv.ll [DAG] optimize negation of bool 2016-10-19 16:58:59 +00:00
select-dbl.ll
select-flt.ll
select-int.ll
shl.ll
sqrt.ll
srem.ll [DAG] optimize negation of bool 2016-10-19 16:58:59 +00:00
store-atomic.ll
sub.ll [DAG] optimize negation of bool 2016-10-19 16:58:59 +00:00
udiv.ll
urem.ll [DAG] optimize negation of bool 2016-10-19 16:58:59 +00:00
xor.ll