[midend-SCCP]bug修复,增加不可达指令(理论来说后端不会出现这条指令,只是为了IR完整性添加),添加相关方法,phi指令方法修复;目前能够跑完所有优化,但是User的析构函数重定义导致全局析构不能正确完成,需要修复

This commit is contained in:
rain2133
2025-07-31 22:03:35 +08:00
parent 9a53e1b917
commit c5af4f1c49
6 changed files with 73 additions and 88 deletions

View File

@@ -83,11 +83,19 @@ void PassManager::runOptimizationPipeline(Module* moduleIR, IRBuilder* builderIR
this->clearPasses();
this->addPass(&Mem2Reg::ID);
this->run();
if(DEBUG) {
std::cout << "=== IR After Mem2Reg Optimizations ===\n";
printPasses();
}
this->clearPasses();
this->addPass(&SCCP::ID);
this->run();
if(DEBUG) {
std::cout << "=== IR After Mem2Reg And SCCP Optimizations ===\n";
std::cout << "=== IR After SCCP Optimizations ===\n";
printPasses();
}