aboutsummaryrefslogtreecommitdiffstats
path: root/include/llvm/IR/Argument.h
diff options
context:
space:
mode:
authorStephen Lin <stephenwlin@gmail.com>2013-04-20 05:14:40 +0000
committerStephen Lin <stephenwlin@gmail.com>2013-04-20 05:14:40 +0000
commit456ca048af35163b9f52187e92a23ee0a9f059e8 (patch)
treef7b4d4711424b927d5b323a9e4ef4d97742beeb4 /include/llvm/IR/Argument.h
parent5c34e08b9fff9d4df2421e4f41ff15b85f638dd1 (diff)
downloadexternal_llvm-456ca048af35163b9f52187e92a23ee0a9f059e8.zip
external_llvm-456ca048af35163b9f52187e92a23ee0a9f059e8.tar.gz
external_llvm-456ca048af35163b9f52187e92a23ee0a9f059e8.tar.bz2
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
Diffstat (limited to 'include/llvm/IR/Argument.h')
-rw-r--r--include/llvm/IR/Argument.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/include/llvm/IR/Argument.h b/include/llvm/IR/Argument.h
index ef4e4fc..40d61ff 100644
--- a/include/llvm/IR/Argument.h
+++ b/include/llvm/IR/Argument.h
@@ -78,6 +78,10 @@ public:
/// containing function.
bool hasStructRetAttr() const;
+ /// \brief Return true if this argument has the returned attribute on it in
+ /// its containing function.
+ bool hasReturnedAttr() const;
+
/// \brief Add a Attribute to an argument.
void addAttr(AttributeSet AS);