summaryrefslogtreecommitdiffstats
path: root/llvm/test/CodeGen/ARM/su-addsub-overflow.ll
Commit message (Collapse)AuthorAgeFilesLines
* [ARM] Optimize {s,u}mul.with.overflow.Joel Galenson2018-01-171-166/+0
| | | | | | | | This extends my previous patches to also optimize overflow-checked multiplies during SelectionDAG. Differential revision: https://reviews.llvm.org/D40922 llvm-svn: 322738
* [ARM] Optimize {s,u}{add,sub}.with.overflow.Joel Galenson2018-01-171-16/+47
| | | | | | | | The ARM backend contains code that tries to optimize compares by replacing them with an existing instruction that sets the flags the same way. This allows it to replace a "cmp" with a "adds", generalizing the code that replaces "cmp" with "sub". It also heuristically disables sinking of instructions that could potentially be used to replace compares (currently only if they're next to each other). Differential revision: https://reviews.llvm.org/D38378 llvm-svn: 322737
* [ARM] Optimize {s,u}{add,sub}.with.overflow.Joel Galenson2017-12-201-0/+135
The AArch64 backend contains code to optimize {s,u}{add,sub}.with.overflow during SelectionDAG. This commit ports that code to the ARM backend. Differential revision: https://reviews.llvm.org/D35635 llvm-svn: 321224
OpenPOWER on IntegriCloud