Add CodeGen support for functions that always return arguments via a new parameter...
authorStephen Lin <stephenwlin@gmail.com>
Sat, 20 Apr 2013 05:14:40 +0000 (05:14 +0000)
committerStephen Lin <stephenwlin@gmail.com>
Sat, 20 Apr 2013 05:14:40 +0000 (05:14 +0000)
commit456ca048af35163b9f52187e92a23ee0a9f059e8
treef7b4d4711424b927d5b323a9e4ef4d97742beeb4
parent5c34e08b9fff9d4df2421e4f41ff15b85f638dd1
Add CodeGen support for functions that always return arguments via a new parameter attribute 'returned', which is taken advantage of in target-independent tail call opportunity detection and in ARM call lowering (when placed on an integral first parameter).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179925 91177308-0d34-0410-b5e6-96231b3b80d8
20 files changed:
docs/LangRef.rst
include/llvm/IR/Argument.h
include/llvm/IR/Attributes.h
include/llvm/Target/TargetCallingConv.h
include/llvm/Target/TargetLowering.h
lib/AsmParser/LLLexer.cpp
lib/AsmParser/LLParser.cpp
lib/AsmParser/LLToken.h
lib/CodeGen/Analysis.cpp
lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
lib/IR/Attributes.cpp
lib/IR/Function.cpp
lib/IR/Verifier.cpp
lib/Target/ARM/ARMBaseRegisterInfo.cpp
lib/Target/ARM/ARMBaseRegisterInfo.h
lib/Target/ARM/ARMCallingConv.td
lib/Target/ARM/ARMISelLowering.cpp
lib/Target/ARM/ARMISelLowering.h
test/CodeGen/ARM/this-return.ll [new file with mode: 0644]
test/CodeGen/X86/this-return-64.ll [new file with mode: 0644]