summaryrefslogtreecommitdiffstats
path: root/clang/lib/CodeGen/CodeGenTBAA.cpp
diff options
context:
space:
mode:
authorIvan A. Kosarev <ikosarev@accesssoftek.com>2017-10-13 18:40:18 +0000
committerIvan A. Kosarev <ikosarev@accesssoftek.com>2017-10-13 18:40:18 +0000
commit0e528202b85c80b0d027d19bf82dc09ae4b7a7e3 (patch)
treed929ea170f664b7766508aecb763bfdb026fe1ca /clang/lib/CodeGen/CodeGenTBAA.cpp
parent8a8d945df7aa1b1f6d13bf72691b6628068488e4 (diff)
downloadbcm5719-llvm-0e528202b85c80b0d027d19bf82dc09ae4b7a7e3.tar.gz
bcm5719-llvm-0e528202b85c80b0d027d19bf82dc09ae4b7a7e3.zip
[CodeGen] EmitPointerWithAlignment() to generate TBAA info along with LValue base info
Differential Revision: https://reviews.llvm.org/D38796 llvm-svn: 315731
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