forked from OSchip/llvm-project
When clearing a non-local pointer dependency cache entry, clear
the reverse map too. This fixes seflhost build errors. llvm-svn: 118729
This commit is contained in:
parent
eb97f59753
commit
6791936848
llvm/lib/Analysis
|
@ -783,6 +783,10 @@ getNonLocalPointerDepFromBB(const PHITransAddr &Pointer,
|
||||||
// cached data and procede with the query at the greater size.
|
// cached data and procede with the query at the greater size.
|
||||||
CacheInfo->Pair = BBSkipFirstBlockPair();
|
CacheInfo->Pair = BBSkipFirstBlockPair();
|
||||||
CacheInfo->Size = Loc.Size;
|
CacheInfo->Size = Loc.Size;
|
||||||
|
for (NonLocalDepInfo::iterator DI = CacheInfo->NonLocalDeps.begin(),
|
||||||
|
DE = CacheInfo->NonLocalDeps.end(); DI != DE; ++DI)
|
||||||
|
if (Instruction *Inst = DI->getResult().getInst())
|
||||||
|
RemoveFromReverseMap(ReverseNonLocalPtrDeps, Inst, CacheKey);
|
||||||
CacheInfo->NonLocalDeps.clear();
|
CacheInfo->NonLocalDeps.clear();
|
||||||
} else if (CacheInfo->Size > Loc.Size) {
|
} else if (CacheInfo->Size > Loc.Size) {
|
||||||
// This query's Size is less than the cached one. Conservatively restart
|
// This query's Size is less than the cached one. Conservatively restart
|
||||||
|
@ -800,6 +804,10 @@ getNonLocalPointerDepFromBB(const PHITransAddr &Pointer,
|
||||||
if (CacheInfo->TBAATag) {
|
if (CacheInfo->TBAATag) {
|
||||||
CacheInfo->Pair = BBSkipFirstBlockPair();
|
CacheInfo->Pair = BBSkipFirstBlockPair();
|
||||||
CacheInfo->TBAATag = 0;
|
CacheInfo->TBAATag = 0;
|
||||||
|
for (NonLocalDepInfo::iterator DI = CacheInfo->NonLocalDeps.begin(),
|
||||||
|
DE = CacheInfo->NonLocalDeps.end(); DI != DE; ++DI)
|
||||||
|
if (Instruction *Inst = DI->getResult().getInst())
|
||||||
|
RemoveFromReverseMap(ReverseNonLocalPtrDeps, Inst, CacheKey);
|
||||||
CacheInfo->NonLocalDeps.clear();
|
CacheInfo->NonLocalDeps.clear();
|
||||||
}
|
}
|
||||||
if (Loc.TBAATag)
|
if (Loc.TBAATag)
|
||||||
|
|
Loading…
Reference in New Issue