Missed pass that should be skipped when pseudo memory ops are supposed to be left unchanged.
This commit is contained in:
8
opt.cpp
8
opt.cpp
@@ -368,8 +368,10 @@ Optimize(llvm::Module *module, int optLevel) {
|
|||||||
optPM.add(CreateMaskedStoreOptPass());
|
optPM.add(CreateMaskedStoreOptPass());
|
||||||
optPM.add(CreateMaskedLoadOptPass());
|
optPM.add(CreateMaskedLoadOptPass());
|
||||||
}
|
}
|
||||||
optPM.add(CreatePseudoMaskedStorePass());
|
if (g->opt.disableHandlePseudoMemoryOps == false)
|
||||||
if (!g->opt.disableGatherScatterOptimizations)
|
optPM.add(CreatePseudoMaskedStorePass());
|
||||||
|
if (g->opt.disableGatherScatterOptimizations == false &&
|
||||||
|
g->opt.disableHandlePseudoMemoryOps == false)
|
||||||
optPM.add(CreateGSToLoadStorePass());
|
optPM.add(CreateGSToLoadStorePass());
|
||||||
if (g->opt.disableHandlePseudoMemoryOps == false) {
|
if (g->opt.disableHandlePseudoMemoryOps == false) {
|
||||||
optPM.add(CreatePseudoMaskedStorePass());
|
optPM.add(CreatePseudoMaskedStorePass());
|
||||||
@@ -1865,6 +1867,7 @@ MaskedStoreOptPass::runOnBasicBlock(llvm::BasicBlock &bb) {
|
|||||||
goto restart;
|
goto restart;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return modifiedAny;
|
return modifiedAny;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -2102,6 +2105,7 @@ PseudoMaskedStorePass::runOnBasicBlock(llvm::BasicBlock &bb) {
|
|||||||
modifiedAny = true;
|
modifiedAny = true;
|
||||||
goto restart;
|
goto restart;
|
||||||
}
|
}
|
||||||
|
|
||||||
return modifiedAny;
|
return modifiedAny;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user