llvm-6502/lib/Transforms
Bjorn Steinbrink 6eaa62af77 Allow call-slop optzn for destinations with a suitable dereferenceable attribute
Summary:
Currently, call slot optimization requires that if the destination is an
argument, the argument has the sret attribute. This is to ensure that
the memory access won't trap. In addition to sret, we can also allow the
optimization to happen for arguments that have the new dereferenceable
attribute, which gives the same guarantee.

Subscribers: llvm-commits

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

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@219950 91177308-0d34-0410-b5e6-96231b3b80d8
2014-10-16 19:43:08 +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 Reapply r219832 - InstCombine: Narrow switch instructions using known bits. 2014-10-16 06:00:46 +00:00
Instrumentation Use triple's isiOS() and isOSDarwin() methods. 2014-10-09 05:43:30 +00:00
IPO Add some optional passes around the vectorizer to both better prepare 2014-10-14 00:31:29 +00:00
ObjCARC Simplify creation of a bunch of ArrayRefs by using None, makeArrayRef or just letting them be implicitly created. 2014-08-27 05:25:25 +00:00
Scalar Allow call-slop optzn for destinations with a suitable dereferenceable attribute 2014-10-16 19:43:08 +00:00
Utils fold: sqrt(x * x * y) -> fabs(x) * sqrt(y) 2014-10-16 18:48:17 +00:00
Vectorize [SLPVectorize] Basic ephemeral-value awareness 2014-10-15 17:35:01 +00:00
CMakeLists.txt
LLVMBuild.txt
Makefile