llvm-6502/lib
Hal Finkel 3d03d60ca8 Add functions for finding ephemeral values
This adds a set of utility functions for collecting 'ephemeral' values. These
are LLVM IR values that are used only by @llvm.assume intrinsics (directly or
indirectly), and thus will be removed prior to code generation, implying that
they should be considered free for certain purposes (like inlining). The
inliner's cost analysis, and a few other passes, have been updated to account
for ephemeral values using the provided functionality.

This functionality is important for the usability of @llvm.assume, because it
limits the "non-local" side-effects of adding llvm.assume on inlining, loop
unrolling, etc. (these are hints, and do not generate code, so they should not
directly contribute to estimates of execution cost).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@217335 91177308-0d34-0410-b5e6-96231b3b80d8
2014-09-07 13:49:57 +00:00
..
Analysis Add functions for finding ephemeral values 2014-09-07 13:49:57 +00:00
AsmParser Fix typos in comments, NFC 2014-08-29 21:53:01 +00:00
Bitcode Pass a && to getLazyBitcodeModule. 2014-09-03 17:31:46 +00:00
CodeGen Allow vector fsub ops with constants to get the same optimizations as scalars. 2014-09-05 22:26:22 +00:00
DebugInfo [DWARF parser] Fix nasty memory corruption in .dwo files handling. 2014-09-05 19:29:45 +00:00
ExecutionEngine [MCJIT] Revert partial RuntimeDyldELF cleanup that was prematurely committed in 2014-09-07 04:13:13 +00:00
IR [x86] Fix a pretty horrible bug and inconsistency in the x86 asm 2014-09-06 10:00:01 +00:00
IRReader Pass a && to getLazyBitcodeModule. 2014-09-03 17:31:46 +00:00
LineEditor
Linker Fix pr20078. 2014-09-05 21:27:52 +00:00
LTO unique_ptrify LTOCodeGenerator::NativeObjectFile 2014-09-02 18:21:06 +00:00
MC MC: correct DWARF line info for PE/COFF 2014-09-06 19:57:48 +00:00
Object Restore the ability to check if LLVMCreateObjectFile was successful 2014-09-05 21:22:09 +00:00
Option
ProfileData Make some helpers static or move into the llvm namespace. 2014-09-03 21:04:12 +00:00
Support Check whether the iterator p == the end iterator before trying to dereference it. This is a speculative fix for a failure found on the valgrind buildbot triggered by a clang test. 2014-09-06 01:16:42 +00:00
TableGen Comment only: Annotate loop as per mailing list discussion 2014-08-29 22:43:30 +00:00
Target [x86] Revert my over-eager commit in r217332. 2014-09-07 12:37:11 +00:00
Transforms Add functions for finding ephemeral values 2014-09-07 13:49:57 +00:00
CMakeLists.txt
LLVMBuild.txt
Makefile