diff options
Diffstat (limited to 'llvm/lib/Analysis/NoAliasAnalysis.cpp')
-rw-r--r-- | llvm/lib/Analysis/NoAliasAnalysis.cpp | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/llvm/lib/Analysis/NoAliasAnalysis.cpp b/llvm/lib/Analysis/NoAliasAnalysis.cpp index 139fa38b8a9..483a81e93a7 100644 --- a/llvm/lib/Analysis/NoAliasAnalysis.cpp +++ b/llvm/lib/Analysis/NoAliasAnalysis.cpp @@ -57,8 +57,11 @@ namespace { Location getArgLocation(ImmutableCallSite CS, unsigned ArgIdx, ModRefResult &Mask) override { Mask = ModRef; - return Location(CS.getArgument(ArgIdx), UnknownSize, - CS.getInstruction()->getMetadata(LLVMContext::MD_tbaa)); + AAMDNodes AATags( + CS.getInstruction()->getMetadata(LLVMContext::MD_tbaa), + CS.getInstruction()->getMetadata(LLVMContext::MD_alias_scope), + CS.getInstruction()->getMetadata(LLVMContext::MD_noalias)); + return Location(CS.getArgument(ArgIdx), UnknownSize, AATags); } ModRefResult getModRefInfo(ImmutableCallSite CS, |