summaryrefslogtreecommitdiff
path: root/lib/Analysis/TypeBasedAliasAnalysis.cpp
diff options
context:
space:
mode:
authorManman Ren <manman.ren@gmail.com>2013-09-27 22:59:21 +0000
committerManman Ren <manman.ren@gmail.com>2013-09-27 22:59:21 +0000
commite5f32cf3207da58359a6e3aeeb5b01205645f710 (patch)
tree7827d7b7a3bebd9baaf0083520284224d173dd57 /lib/Analysis/TypeBasedAliasAnalysis.cpp
parent0b15e9893d8dc71127e722d122214d6ec5d89d0e (diff)
downloadllvm-e5f32cf3207da58359a6e3aeeb5b01205645f710.tar.gz
llvm-e5f32cf3207da58359a6e3aeeb5b01205645f710.tar.bz2
llvm-e5f32cf3207da58359a6e3aeeb5b01205645f710.tar.xz
TBAA: try to fix the dragonegg bots.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@191585 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Analysis/TypeBasedAliasAnalysis.cpp')
-rw-r--r--lib/Analysis/TypeBasedAliasAnalysis.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/lib/Analysis/TypeBasedAliasAnalysis.cpp b/lib/Analysis/TypeBasedAliasAnalysis.cpp
index ef37bdccbf..9026dc9114 100644
--- a/lib/Analysis/TypeBasedAliasAnalysis.cpp
+++ b/lib/Analysis/TypeBasedAliasAnalysis.cpp
@@ -326,7 +326,9 @@ TypeBasedAliasAnalysis::getAnalysisUsage(AnalysisUsage &AU) const {
/// it as struct-path aware TBAA format, otherwise, we treat it as scalar TBAA
/// format.
static bool isStructPathTBAA(const MDNode *MD) {
- return isa<MDNode>(MD->getOperand(0));
+ // Anonymous TBAA root starts with a MDNode and dragonegg uses it as
+ // a TBAA tag.
+ return isa<MDNode>(MD->getOperand(0)) && MD->getNumOperands() >= 3;
}
/// Aliases - Test whether the type represented by A may alias the