From 8f10e387bbc6cd5e428214f159ddcd0995098756 Mon Sep 17 00:00:00 2001 From: Daniel Berlin Date: Mon, 26 Jan 2015 17:30:39 +0000 Subject: Fix delegation llvm-svn: 227098 --- llvm/lib/Analysis/CFLAliasAnalysis.cpp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'llvm/lib/Analysis/CFLAliasAnalysis.cpp') diff --git a/llvm/lib/Analysis/CFLAliasAnalysis.cpp b/llvm/lib/Analysis/CFLAliasAnalysis.cpp index 9783671b09a..321b57b433c 100644 --- a/llvm/lib/Analysis/CFLAliasAnalysis.cpp +++ b/llvm/lib/Analysis/CFLAliasAnalysis.cpp @@ -227,10 +227,13 @@ public: // Comparisons between global variables and other constants should be // handled by BasicAA. if (isa(LocA.Ptr) && isa(LocB.Ptr)) { - return MayAlias; + return AliasAnalysis::alias(LocA, LocB); } + AliasResult QueryResult = query(LocA, LocB); + if (QueryResult == MayAlias) + return AliasAnalysis::alias(LocA, LocB); - return query(LocA, LocB); + return QueryResult; } void initializePass() override { InitializeAliasAnalysis(this); } -- cgit v1.2.3