diff options
author | Manoj Gupta <manojgupta@google.com> | 2018-07-30 19:33:53 +0000 |
---|---|---|
committer | Manoj Gupta <manojgupta@google.com> | 2018-07-30 19:33:53 +0000 |
commit | b22576f80da5780c56f9957c2fc206757a48ac18 (patch) | |
tree | 75f7ced9f3d20bde75254bf26ae7b47a2598bb74 /include | |
parent | 7e678dc65bb7ddadb4ee9f62e567ec176c8b77d9 (diff) |
[Inline] Copy "null-pointer-is-valid" attribute in caller.
Summary:
Normally, inling does not happen if caller does not have
"null-pointer-is-valid"="true" attibute but callee has it.
However, alwaysinline may force callee to be inlined.
In this case, if the caller has the "null-pointer-is-valid"="true"
attribute, copy the attribute to caller.
Reviewers: efriedma, a.elovikov, lebedev.ri, jyknight
Reviewed By: efriedma
Subscribers: eraman, llvm-commits
Differential Revision: https://reviews.llvm.org/D50000
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@338292 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include')
-rw-r--r-- | include/llvm/IR/Attributes.td | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/include/llvm/IR/Attributes.td b/include/llvm/IR/Attributes.td index 1019f867aab..39978c41ac7 100644 --- a/include/llvm/IR/Attributes.td +++ b/include/llvm/IR/Attributes.td @@ -236,3 +236,4 @@ def : MergeRule<"adjustCallerSSPLevel">; def : MergeRule<"adjustCallerStackProbes">; def : MergeRule<"adjustCallerStackProbeSize">; def : MergeRule<"adjustMinLegalVectorWidth">; +def : MergeRule<"adjustNullPointerValidAttr">; |