summaryrefslogtreecommitdiffstats
path: root/clang/lib/CodeGen/CodeGenTBAA.cpp
diff options
context:
space:
mode:
authorIvan A. Kosarev <ikosarev@accesssoftek.com>2017-10-17 09:12:13 +0000
committerIvan A. Kosarev <ikosarev@accesssoftek.com>2017-10-17 09:12:13 +0000
commited141bab630026a6109acc89556dd8ff3eaee504 (patch)
treee59c276f26db097ff62ae194542ad754325e720a /clang/lib/CodeGen/CodeGenTBAA.cpp
parent5bfbfb48b5e92b2cdd6832b09051ac41c6549534 (diff)
downloadbcm5719-llvm-ed141bab630026a6109acc89556dd8ff3eaee504.tar.gz
bcm5719-llvm-ed141bab630026a6109acc89556dd8ff3eaee504.zip
[CodeGen] EmitPointerWithAlignment() to generate TBAA info along with LValue base info
Differential Revision: https://reviews.llvm.org/D38796 llvm-svn: 315984
Diffstat (limited to 'clang/lib/CodeGen/CodeGenTBAA.cpp')
-rw-r--r--clang/lib/CodeGen/CodeGenTBAA.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/clang/lib/CodeGen/CodeGenTBAA.cpp b/clang/lib/CodeGen/CodeGenTBAA.cpp
index 49a49c1f5d7..6f9747e2f0b 100644
--- a/clang/lib/CodeGen/CodeGenTBAA.cpp
+++ b/clang/lib/CodeGen/CodeGenTBAA.cpp
@@ -309,3 +309,11 @@ llvm::MDNode *CodeGenTBAA::getAccessTagInfo(TBAAAccessInfo Info) {
TBAAAccessInfo CodeGenTBAA::getMayAliasAccessInfo() {
return TBAAAccessInfo(getChar());
}
+
+TBAAAccessInfo CodeGenTBAA::mergeTBAAInfoForCast(TBAAAccessInfo SourceInfo,
+ TBAAAccessInfo TargetInfo) {
+ TBAAAccessInfo MayAliasInfo = getMayAliasAccessInfo();
+ if (SourceInfo == MayAliasInfo || TargetInfo == MayAliasInfo)
+ return MayAliasInfo;
+ return TargetInfo;
+}
OpenPOWER on IntegriCloud