1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-23 03:02:36 +01:00
llvm-mirror/lib
Sanjoy Das f52081da0a [ValueTracking] Add a framework for encoding implication rules
Summary:
This change adds a framework for adding more smarts to
`isImpliedCondition` around inequalities.  Informally,
`isImpliedCondition` will now try to prove "A < B ==> C < D" by proving
"C <= A && B <= D", since then it follows "C <= A < B <= D".

While this change is in principle NFC, I could not think of a way to not
handle cases like "i +_nsw 1 < L ==> i < L +_nsw 1" (that ValueTracking
did not handle before) while keeping the change understandable.  I've
added tests for these cases.

Reviewers: reames, majnemer, hfinkel

Subscribers: llvm-commits

Differential Revision: http://reviews.llvm.org/D14368

llvm-svn: 252331
2015-11-06 19:00:57 +00:00
..
Analysis [ValueTracking] Add a framework for encoding implication rules 2015-11-06 19:00:57 +00:00
AsmParser Add a new attribute: norecurse 2015-11-06 10:32:53 +00:00
Bitcode Add a new attribute: norecurse 2015-11-06 10:32:53 +00:00
CodeGen [WinEH] Mark funclet entries and exits as clobbering all registers 2015-11-06 17:06:38 +00:00
DebugInfo [LLVMSymbolize] Reduce indentation by using helper function. NFC. 2015-11-04 00:30:26 +00:00
ExecutionEngine Refactor: Simplify boolean conditional return statements in lib/llvm/ExecutionEngine/Orc 2015-11-05 21:18:09 +00:00
Fuzzer [libFuzzer] print a bit fewer lines 2015-11-05 01:19:42 +00:00
IR Add a new attribute: norecurse 2015-11-06 10:32:53 +00:00
IRReader Return a unique_ptr from getLazyBitcodeModule and parseBitcodeFile. NFC. 2015-06-16 22:27:55 +00:00
LibDriver [Option] Use an ArrayRef to store the Option Infos in OptTable. NFC 2015-10-21 16:30:42 +00:00
LineEditor
Linker Restore "Move metadata linking after lazy global materialization/linking." 2015-11-06 17:50:53 +00:00
LTO Reapply "LTO: Disable extra verify runs in release builds" 2015-09-15 23:05:59 +00:00
MC Bring r252305 back with a test fix. 2015-11-06 15:30:45 +00:00
Object Reapply r250906 with many suggested updates from Rafael Espindola. 2015-11-05 19:24:56 +00:00
Option [Option] Use an ArrayRef to store the Option Infos in OptTable. NFC 2015-10-21 16:30:42 +00:00
Passes [PM] Port StripDeadPrototypes to the new pass manager 2015-10-30 23:28:12 +00:00
ProfileData Code style fix (caused by wrongly default clang-format style) (NFC) 2015-11-06 07:54:21 +00:00
Support Fix a signed/unsigned mismatch warning; NFC. 2015-11-05 14:22:56 +00:00
TableGen [TblGen] ArrayRefize TGParser. No functional change intended. 2015-10-24 12:46:45 +00:00
Target AMDGPU: Cleanup includes 2015-11-06 18:23:00 +00:00
Transforms [LIR] Simplify code by making DataLayout globally accessible. NFC. 2015-11-06 16:33:57 +00:00
CMakeLists.txt LibDriver, llvm-lib: introduce. 2015-06-09 21:50:22 +00:00
LLVMBuild.txt Wrap some long lines in LLVMBuild files. NFC 2015-06-12 18:44:57 +00:00
Makefile LibDriver, llvm-lib: introduce. 2015-06-09 21:50:22 +00:00