llvm-6502/lib/Transforms
Hal Finkel e1e7862f6e Copy noalias metadata from call sites to inlined instructions
When a call site with noalias metadata is inlined, that metadata can be
propagated directly to the inlined instructions (only those that might access
memory because it is not useful on the others). Prior to inlining, the noalias
metadata could express that a call would not alias with some other memory
access, which implies that no instruction within that called function would
alias. By propagating the metadata to the inlined instructions, we preserve
that knowledge.

This should complete the enhancements requested in PR20500.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@215676 91177308-0d34-0410-b5e6-96231b3b80d8
2014-08-14 21:09:37 +00:00
..
Hello [CMake] Add LLVM_LINK_COMPONENTS to loadable modules, LLVMHello and BugpointPasses, on Win32. 2014-07-13 13:36:48 +00:00
InstCombine InstCombine: ((A | ~B) ^ (~A | B)) to A ^ B 2014-08-14 06:46:25 +00:00
Instrumentation Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
IPO [optnone] Make the optnone attribute effective at suppressing function 2014-08-13 10:49:33 +00:00
ObjCARC Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
Scalar [Reassociation] Add support for reassociation with unsafe algebra. 2014-08-14 15:23:01 +00:00
Utils Copy noalias metadata from call sites to inlined instructions 2014-08-14 21:09:37 +00:00
Vectorize [LoopVectorizer] Enable support for floating-point subtraction reductions 2014-08-08 12:41:08 +00:00
CMakeLists.txt Extracted ObjCARC.cpp into its own library libLLVMObjCARCOpts in preparation for refactoring the ARC Optimizer. 2013-01-28 01:35:51 +00:00
LLVMBuild.txt Extracted ObjCARC.cpp into its own library libLLVMObjCARCOpts in preparation for refactoring the ARC Optimizer. 2013-01-28 01:35:51 +00:00
Makefile Extracted ObjCARC.cpp into its own library libLLVMObjCARCOpts in preparation for refactoring the ARC Optimizer. 2013-01-28 01:35:51 +00:00