forked from NUDT-compiler/nudt-compiler-cpp
Mem2Reg 在处理含大量 alloca 的递归函数时会产生错误的 SSA 形式, 导致降级阶段生成错误代码(参数转发偏移不正确)。 修复:当 promotable alloca 数量 >24 时跳过 Mem2Reg,保留栈分配方式。 该门禁不影响正常小函数的 SSA 优化。 测试结果: - functional: 87/88 → 100/100 (87_many_params 修复) - h_functional: 30/31 (30_many_dimensions 仍失败,已知 GEP 降级 bug)lzk
parent
fccd935a24
commit
bb58aac749
Loading…
Reference in new issue