diff --git a/src/midend/Pass/Pass.cpp b/src/midend/Pass/Pass.cpp index ba258d1..c7c3626 100644 --- a/src/midend/Pass/Pass.cpp +++ b/src/midend/Pass/Pass.cpp @@ -128,77 +128,77 @@ void PassManager::runOptimizationPipeline(Module* moduleIR, IRBuilder* builderIR this->addPass(&Mem2Reg::ID); this->run(); - if(DEBUG) { - std::cout << "=== IR After Mem2Reg Optimizations ===\n"; - printPasses(); - } + // if(DEBUG) { + // std::cout << "=== IR After Mem2Reg Optimizations ===\n"; + // printPasses(); + // } + + // // this->clearPasses(); + // // this->addPass(&GVN::ID); + // // this->run(); // this->clearPasses(); - // this->addPass(&GVN::ID); + // this->addPass(&TailCallOpt::ID); // this->run(); - this->clearPasses(); - this->addPass(&TailCallOpt::ID); - this->run(); + // if(DEBUG) { + // std::cout << "=== IR After TailCallOpt ===\n"; + // SysYPrinter printer(moduleIR); + // printer.printIR(); + // } - if(DEBUG) { - std::cout << "=== IR After TailCallOpt ===\n"; - SysYPrinter printer(moduleIR); - printer.printIR(); - } + // if(DEBUG) { + // std::cout << "=== IR After GVN Optimizations ===\n"; + // printPasses(); + // } - if(DEBUG) { - std::cout << "=== IR After GVN Optimizations ===\n"; - printPasses(); - } + // // this->clearPasses(); + // // this->addPass(&SCCP::ID); + // // this->run(); + + // if(DEBUG) { + // std::cout << "=== IR After SCCP Optimizations ===\n"; + // printPasses(); + // } // this->clearPasses(); - // this->addPass(&SCCP::ID); + // this->addPass(&LoopNormalizationPass::ID); + // this->addPass(&InductionVariableElimination::ID); // this->run(); - if(DEBUG) { - std::cout << "=== IR After SCCP Optimizations ===\n"; - printPasses(); - } - - this->clearPasses(); - this->addPass(&LoopNormalizationPass::ID); - this->addPass(&InductionVariableElimination::ID); - this->run(); - - if(DEBUG) { - std::cout << "=== IR After Loop Normalization, Induction Variable Elimination ===\n"; - printPasses(); - } + // if(DEBUG) { + // std::cout << "=== IR After Loop Normalization, Induction Variable Elimination ===\n"; + // printPasses(); + // } - this->clearPasses(); - this->addPass(&LICM::ID); - this->run(); - - if(DEBUG) { - std::cout << "=== IR After LICM ===\n"; - printPasses(); - } - - this->clearPasses(); - this->addPass(&LoopStrengthReduction::ID); - this->run(); - - if(DEBUG) { - std::cout << "=== IR After Loop Normalization, and Strength Reduction Optimizations ===\n"; - printPasses(); - } - - // // 全局强度削弱优化,包括代数优化和魔数除法 // this->clearPasses(); - // this->addPass(&GlobalStrengthReduction::ID); + // this->addPass(&LICM::ID); // this->run(); - if(DEBUG) { - std::cout << "=== IR After Global Strength Reduction Optimizations ===\n"; - printPasses(); - } + // if(DEBUG) { + // std::cout << "=== IR After LICM ===\n"; + // printPasses(); + // } + + // this->clearPasses(); + // this->addPass(&LoopStrengthReduction::ID); + // this->run(); + + // if(DEBUG) { + // std::cout << "=== IR After Loop Normalization, and Strength Reduction Optimizations ===\n"; + // printPasses(); + // } + + // // // 全局强度削弱优化,包括代数优化和魔数除法 + // // this->clearPasses(); + // // this->addPass(&GlobalStrengthReduction::ID); + // // this->run(); + + // if(DEBUG) { + // std::cout << "=== IR After Global Strength Reduction Optimizations ===\n"; + // printPasses(); + // } this->clearPasses(); this->addPass(&Reg2Mem::ID);