From 1bde3f86d108f48f202f0042f8995b389d7f6872 Mon Sep 17 00:00:00 2001 From: Hal Finkel Date: Fri, 10 Feb 2012 15:52:40 +0000 Subject: Update BBVectorize to use aliasesUnknownInst. This allows BBVectorize to check the "unknown instruction" list in the alias sets. This is important to prevent instruction fusing from reordering function calls. Resolves PR11920. llvm-svn: 150250 --- llvm/lib/Transforms/Vectorize/BBVectorize.cpp | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) (limited to 'llvm/lib') diff --git a/llvm/lib/Transforms/Vectorize/BBVectorize.cpp b/llvm/lib/Transforms/Vectorize/BBVectorize.cpp index ea26c1a3d37..9592d2572f2 100644 --- a/llvm/lib/Transforms/Vectorize/BBVectorize.cpp +++ b/llvm/lib/Transforms/Vectorize/BBVectorize.cpp @@ -692,16 +692,10 @@ namespace { } else { for (AliasSetTracker::iterator W = WriteSet.begin(), WE = WriteSet.end(); W != WE; ++W) { - for (AliasSet::iterator A = W->begin(), AE = W->end(); - A != AE; ++A) { - AliasAnalysis::Location ptrLoc(A->getValue(), A->getSize(), - A->getTBAAInfo()); - if (AA->getModRefInfo(J, ptrLoc) != AliasAnalysis::NoModRef) { - UsesI = true; - break; - } + if (W->aliasesUnknownInst(J, *AA)) { + UsesI = true; + break; } - if (UsesI) break; } } } -- cgit v1.2.3