[fix]修复部分常量构建,[Pass]建立Pass基类和管理器,预重构优化遍结构

This commit is contained in:
rain2133
2025-07-18 21:28:36 +08:00
parent 34b5a93aaf
commit 10b011a1de
3 changed files with 119 additions and 2 deletions

View File

@@ -463,9 +463,9 @@ bool SysYCFGOpt::SysYAddReturn(Function *func, IRBuilder* pBuilder) {
pBuilder->setPosition(block.get(), block->end());
// TODO: 如果int float函数缺少返回值是否需要报错
if (func->getReturnType()->isInt()) {
pBuilder->createReturnInst(ConstantValue::get(0));
pBuilder->createReturnInst(ConstantInteger::get(0));
} else if (func->getReturnType()->isFloat()) {
pBuilder->createReturnInst(ConstantValue::get(0.0F));
pBuilder->createReturnInst(ConstantFloating::get(0.0F));
} else {
pBuilder->createReturnInst();
}