1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-24 03:33:20 +01:00

Use more caching when computing non-local dependence. This makes bzip2 not

use up the entire 32-bit address space.

llvm-svn: 40596
This commit is contained in:
Owen Anderson 2007-07-30 17:29:24 +00:00
parent a8d0a6ee40
commit fff534d147
2 changed files with 5 additions and 1 deletions

View File

@ -129,6 +129,8 @@ bool MemoryDependenceAnalysis::nonLocalHelper(Instruction* query,
if (!inserted && !predOnStack)
resp.insert(std::make_pair(block, None));
else if (inserted && predOnStack)
resp.insert(std::make_pair(block, NonLocal));
return inserted;
}

View File

@ -752,7 +752,9 @@ bool GVN::processNonLocalLoad(LoadInst* L, SmallVector<Instruction*, 4>& toErase
I != E; ++I)
if (I->second == MemoryDependenceAnalysis::None) {
return false;
} else if (StoreInst* S = dyn_cast<StoreInst>(I->second)) {
} else if (I->second == MemoryDependenceAnalysis::NonLocal) {
continue;
}else if (StoreInst* S = dyn_cast<StoreInst>(I->second)) {
if (S->getPointerOperand() == L->getPointerOperand())
repl.insert(std::make_pair(I->first, S->getOperand(0)));
else