llvm-6502/lib
Jingyue Wu e4d0a5ec18 [ValueTracking] Extend range metadata to call/invoke
Summary:
With this patch, range metadata can be added to call/invoke including
IntrinsicInst. Previously, it could only be added to load.

Rename computeKnownBitsLoad to computeKnownBitsFromRangeMetadata because
range metadata is not only used by load.

Update the language reference to reflect this change.

Test Plan:
Add several tests in range-2.ll to confirm the verifier is happy with
having range metadata on call/invoke.

Add two tests in AddOverFlow.ll to confirm annotating range metadata to
call/invoke can benefit InstCombine.

Reviewers: meheff, nlewycky, reames, hfinkel, eliben

Reviewed By: eliben

Subscribers: llvm-commits

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

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@211281 91177308-0d34-0410-b5e6-96231b3b80d8
2014-06-19 16:50:16 +00:00
..
Analysis [ValueTracking] Extend range metadata to call/invoke 2014-06-19 16:50:16 +00:00
AsmParser IR: add "cmpxchg weak" variant to support permitted failure. 2014-06-13 14:24:07 +00:00
Bitcode Revert a C API difference that I incorrectly introduced. 2014-06-18 20:07:35 +00:00
CodeGen [ValueTracking] Extend range metadata to call/invoke 2014-06-19 16:50:16 +00:00
DebugInfo [DWARF parser] Use distinction between DW_AT_ranges_base and DW_AT_GNU_ranges_base instead of DWARF version 2014-06-13 22:31:03 +00:00
ExecutionEngine Replace Execution Engine's mutex with std::recursive_mutex. 2014-06-18 20:17:35 +00:00
IR [ValueTracking] Extend range metadata to call/invoke 2014-06-19 16:50:16 +00:00
IRReader Remove 'using std::errro_code' from lib. 2014-06-13 02:24:39 +00:00
LineEditor
Linker Replace some assert(0)'s with llvm_unreachable. 2014-06-18 05:05:13 +00:00
LTO Remove 'using std::errro_code' from lib. 2014-06-13 02:24:39 +00:00
MC Emit DWARF info for all code section in an assembly file 2014-06-19 15:52:37 +00:00
Object Teach llvm-size to know about Mach-O universal files (aka fat files) and 2014-06-18 22:04:40 +00:00
Option Options: Use erase_if to remove Args from the list. 2014-05-18 15:14:13 +00:00
ProfileData Renaming SwapByteOrder() to getSwappedBytes() 2014-06-14 11:36:01 +00:00
Support Kill the LLVM global lock. 2014-06-19 16:17:42 +00:00
TableGen Convert some assert(0) to llvm_unreachable or fold an 'if' condition into the assert. 2014-06-19 06:10:58 +00:00
Target [mips] Implementation of dli. 2014-06-19 15:08:04 +00:00
Transforms Updated comments as suggested by Rafael. Thanks. 2014-06-19 14:11:53 +00:00
CMakeLists.txt
LLVMBuild.txt
Makefile