Add some DAGCombines for (adde 0, 0, glue), which are useful to optimize legalized...
authorBenjamin Kramer <benny.kra@googlemail.com>
Sat, 26 Feb 2011 22:48:07 +0000 (22:48 +0000)
committerBenjamin Kramer <benny.kra@googlemail.com>
Sat, 26 Feb 2011 22:48:07 +0000 (22:48 +0000)
commit7466678003f38f985d5b2dffd0917643137b11cf
tree8a0315a7b150080615e132dfa9cfc54c82fa42b1
parent981b1c4c62054e4e39570a9230c0318f13f9a0a9
Add some DAGCombines for (adde 0, 0, glue), which are useful to optimize legalized code for large integer arithmetic.

1. Inform users of ADDEs with two 0 operands that it never sets carry
2. Fold other ADDs or ADDCs into the ADDE if possible

It would be neat if we could do the same thing for SETCC+ADD eventually, but we can't do that in target independent code.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@126557 91177308-0d34-0410-b5e6-96231b3b80d8
lib/CodeGen/SelectionDAG/DAGCombiner.cpp
lib/Target/README.txt
test/CodeGen/X86/adde-carry.ll [new file with mode: 0644]