diff options
author | Eli Friedman <efriedma@quicinc.com> | 2020-01-21 16:51:17 -0800 |
---|---|---|
committer | Eli Friedman <efriedma@quicinc.com> | 2020-01-28 15:47:08 -0800 |
commit | 2f6b9edfa8a2aa901ed35dc754ebc3e7c3cd2a33 (patch) | |
tree | f27c4bb75f897eee6532d5054635fc206f8d7049 /llvm/lib/Transforms/Utils/InlineFunction.cpp | |
parent | 0d401fa36b532b7d766fd51368b9afb88ad46d1a (diff) | |
download | llvm-2f6b9edfa8a2aa901ed35dc754ebc3e7c3cd2a33.zip llvm-2f6b9edfa8a2aa901ed35dc754ebc3e7c3cd2a33.tar.gz llvm-2f6b9edfa8a2aa901ed35dc754ebc3e7c3cd2a33.tar.bz2 |
[AliasAnalysis] Add missing FMRB_* enums.
Previously, the enums didn't account for all the possible cases, which
could cause misleading results (particularly for a "switch" on
FunctionModRefBehavior).
Fixes regression in polly from recent patch to add writeonly to memset.
While I'm here, also fix a few dubious uses of the FMRB_* enum values.
Differential Revision: https://reviews.llvm.org/D73154
Diffstat (limited to 'llvm/lib/Transforms/Utils/InlineFunction.cpp')
-rw-r--r-- | llvm/lib/Transforms/Utils/InlineFunction.cpp | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/llvm/lib/Transforms/Utils/InlineFunction.cpp b/llvm/lib/Transforms/Utils/InlineFunction.cpp index 35ce5ba..90da27c 100644 --- a/llvm/lib/Transforms/Utils/InlineFunction.cpp +++ b/llvm/lib/Transforms/Utils/InlineFunction.cpp @@ -1002,8 +1002,7 @@ static void AddAliasScopeMetadata(CallSite CS, ValueToValueMapTy &VMap, IsFuncCall = true; if (CalleeAAR) { FunctionModRefBehavior MRB = CalleeAAR->getModRefBehavior(Call); - if (MRB == FMRB_OnlyAccessesArgumentPointees || - MRB == FMRB_OnlyReadsArgumentPointees) + if (AAResults::onlyAccessesArgPointees(MRB)) IsArgMemOnlyCall = true; } |