llvm-6502/test
Peter Collingbourne 6e5bbb57e4 ArgumentPromotion: Drop sret attribute on functions that are only called directly.
If the first argument to a function is a 'this' argument and the second
has the sret attribute, the ArgumentPromotion pass may promote the 'this'
argument to more than one argument, violating the IR constraint that 'sret'
may only be applied to the first or second argument.

Although this IR constraint is arguably unnecessary, it highlighted the fact
that ArgPromotion does not need to preserve this attribute. Dropping the
attribute reduces register pressure in the backend by avoiding the register
copy required by sret. Because sret implies noalias, we also replace the
former with the latter.

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

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@239488 91177308-0d34-0410-b5e6-96231b3b80d8
2015-06-10 21:14:34 +00:00
..
Analysis Minor refactoring of GEP handling in isDereferenceablePointer 2015-06-08 11:58:13 +00:00
Assembler Make the test introduced in r239015 more targeted. 2015-06-04 07:21:42 +00:00
Bindings
Bitcode [BitcodeReader] Diagnose type mismatches with aliases 2015-06-03 01:30:13 +00:00
BugPoint
CodeGen [x86] Add a reassociation optimization to increase ILP via the MachineCombiner pass 2015-06-10 20:32:21 +00:00
DebugInfo Revert "[DWARF] Fix a few corner cases in expression emission" 2015-06-09 18:01:51 +00:00
ExecutionEngine [Mips64][mcjit] Add R_MIPS_PC32 relocation 2015-06-08 14:10:23 +00:00
Feature
FileCheck
Instrumentation [asan] Prevent __attribute__((annotate)) triggering errors on Darwin 2015-06-09 00:58:08 +00:00
Integer
JitListener
Linker
LTO
MC [Hexagon] Adding decoders for signed operands and ensuring all signed operand types disassemble correctly. 2015-06-10 16:52:32 +00:00
Object Move dllimport name mangling to IR mangler. 2015-06-09 22:09:53 +00:00
Other
SymbolRewriter
TableGen
tools [dsymutil] Fix misspelled CHECK line. 2015-06-05 23:46:18 +00:00
Transforms ArgumentPromotion: Drop sret attribute on functions that are only called directly. 2015-06-10 21:14:34 +00:00
Unit
Verifier
YAMLParser
.clang-format
CMakeLists.txt LibDriver, llvm-lib: introduce. 2015-06-09 21:50:22 +00:00
lit.cfg LibDriver, llvm-lib: introduce. 2015-06-09 21:50:22 +00:00
lit.site.cfg.in
Makefile
Makefile.tests
TestRunner.sh