llvm/lib
Chris Lattner 3bf6815556 enhance x-(-A) -> x+A to preserve NUW/NSW.
Use the presence of NSW/NUW to fold "icmp (x+cst), x" to a constant in
cases where it would otherwise be undefined behavior.

Surprisingly (to me at least), this triggers hundreds of the times in
a few benchmarks: lencode, ldecode, and 466.h264ref seem to *really*
like this.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91812 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-21 04:04:05 +00:00
..
Analysis fix an overly conservative caching issue that caused memdep to 2009-12-19 21:29:22 +00:00
Archive
AsmParser Add MSP430 interrupt calling conv. No functionality change yet. 2009-12-07 02:27:35 +00:00
Bitcode Remove isPod() from DenseMapInfo, splitting it out to its own 2009-12-15 07:26:43 +00:00
CodeGen Fix a bunch of little errors that Clang complains about when its being pedantic 2009-12-19 07:05:23 +00:00
CompilerDriver Make Path use StringRef instead of std::string where possible. 2009-12-17 21:02:39 +00:00
ExecutionEngine Don't codegen available_externally functions. Fixes http://llvm.org/PR5735. 2009-12-17 21:35:29 +00:00
Linker Fix MemoryBuffer::getSTDIN to *not* return null if stdin is empty, this is a lame API. 2009-11-10 00:43:58 +00:00
MC Pass StringRef by value. 2009-11-06 10:58:06 +00:00
Support Make some methods const. The only interesting change here is that 2009-12-19 01:38:42 +00:00
System Fix Win32 Path.inc for API update. 2009-12-18 19:59:48 +00:00
Target Remove unused variable (noticed by clang++). 2009-12-19 18:58:49 +00:00
Transforms enhance x-(-A) -> x+A to preserve NUW/NSW. 2009-12-21 04:04:05 +00:00
VMCore Qualify a bunch of explicit template instantiations to satisfy clang++. 2009-12-19 00:55:12 +00:00
Makefile