Use DominatorTree instead of ETForest.

llvm-svn: 37495
This commit is contained in:
Devang Patel 2007-06-07 18:45:06 +00:00
parent 700d930e73
commit 5c0808db4f

View File

@ -48,7 +48,6 @@ namespace {
// This transformation requires dominator and immediate dominator info
virtual void getAnalysisUsage(AnalysisUsage &AU) const {
AU.setPreservesCFG();
AU.addRequired<ETForest>();
AU.addRequired<DominatorTree>();
AU.addRequired<ValueNumbering>();
}
@ -69,7 +68,6 @@ bool GCSE::runOnFunction(Function &F) {
// Get pointers to the analysis results that we will be using...
DominatorTree &DT = getAnalysis<DominatorTree>();
ETForest &ET = getAnalysis<ETForest>();
ValueNumbering &VN = getAnalysis<ValueNumbering>();
std::vector<Value*> EqualValues;
@ -145,7 +143,7 @@ bool GCSE::runOnFunction(Function &F) {
if (OtherI->getParent() == BB)
Dominates = BlockInsts.count(OtherI);
else
Dominates = ET.dominates(OtherI->getParent(), BB);
Dominates = DT.dominates(OtherI->getParent(), BB);
if (Dominates) {
// Okay, we found an instruction with the same value as this one