317 Commits (lzk)
 

Author SHA1 Message Date
lzkk f608d852bf 基础优化
2 days ago
lzkk eb83ab5cd3 基础优化
2 days ago
lzkk 32f5dd4f75 perf(ir): IfConversion + LoopUnroll增强——if-else→算术select + 多phi追踪 + 单BB展开
2 days ago
lzkk 2c43ea28f9 fix(mir): 浮点比较被错误降级为整数比较——95_float 修复
2 days ago
lzkk ec8c874829 fix(ir): LoopUnroll 限制 i32 函数 + 支持 float cast 克隆
2 days ago
lzkk 608aa98f4e perf(ir): 简单递减循环全展开——countdown loop unrolling
2 days ago
lzkk b3187edbbf perf(mir): MIR 清扫——%2指令精简 + 算术select死代码消除
2 days ago
lzkk f9bea1bf85 chore: 更新脚本和 sylib——clang 参考支持 + 提交脚本
2 days ago
lzkk 1b9c8cc40d fix(mir): 修复全局变量 .bss/.data 段反复切换——统一分组输出
2 days ago
lzkk d9ebea6668 perf(ir): if-else→mul select 转换 + 死BB清理,使多BB函数可内联
3 days ago
lzkk 40eb6784d3 perf(ir): 添加 And/Or 操作码 + if-else→select 转换框架
3 days ago
lzkk 4403dc08b8 perf(mir): 常量除法魔法数优化——smull+asr 替代 sdiv
3 days ago
lzkk ea790dd05d fix(scripts): score.sh 使用 canon_diff 忽略尾部空白——匹配 2026test.sh 行为
3 days ago
lzkk 8d4a34aa10 fix(scripts): 修复 score.sh 输出对比逻辑——适配 SysY 非零返回值 + .out 格式
3 days ago
lzkk 5cd5c54764 feat(scripts): 添加本地评分脚本 score.sh——按比赛计分公式计算分数
3 days ago
lzkk 635f01bd48 perf(mir): 添加 Lsr64RR 支持——64位逻辑右移,为常量除法优化铺路
3 days ago
lzkk 422f1848fc perf(mir): Lowering 直接生成 AddShiftRR——x+(x*2^n) → add x,x,lsl#n
3 days ago
lzkk 8d0c5ebcd0 perf(mir): 添加 AddShiftRR/SubShiftRR 支持——lsl+add 合并为 add lsl
3 days ago
lzkk e1944acc6b perf(mir): Peephole 增强——StoreGlobal→LoadGlobal 跨指令转发 + 冗余 adrp 消除
3 days ago
lzkk 00c489f0be perf(mir): 消除 Mul 幂次方优化产生的死 MovImm——先检测后发射 rhs
3 days ago
lzkk 4179f40264 perf(mir): leaf 函数省略帧指针——无调用+无栈帧时跳过 stp/ldp x29,x30
3 days ago
lzkk 10a59110eb perf: 函数内联 + csneg 取模优化,crypto 1.76x→1.69x
3 days ago
lzkk 2f1d7dc856 perf(ir): 保守函数内联——纯算术单BB leaf 函数自底向上迭代内联
3 days ago
lzkk feab5508a8 fix(irgen): starttime/stoptime 函数名恢复为 _sysy_starttime/_sysy_stoptime
3 days ago
lzkk 56b37ac060 chore: 删除死代码——LinearScanAlloc/GreedyAlloc/InstLiveness(共2072行)
3 days ago
lzkk 862c1bfe7b 第一次优化
3 days ago
lzkk 1149d53d42 chore: 移除 LICM.cpp 空桩——实现已在 LoopInfo.cpp (ir_analysis)
3 days ago
lzkk 0eb1cf4a7f chore: 移除空桩文件(PassManager.cpp/ConstEval.cpp)从构建
3 days ago
lzkk 5d43539290 chore: 代码彻底清理——删除死代码、旧备份、生成文件
3 days ago
lzkk 39e4dada13 perf(mir): 添加 Madd(乘加)指令——sum+a*b → madd sum,a,b,sum
3 days ago
lzkk 035f83b209 fix(mir): 模2^n AND优化——修复 x<0 且 x%2^n==0 时的零值错误
3 days ago
lzkk 2cfc9e2fc8 perf(mir): MIR预分配 MovImm 转发——消除常数二次传递
3 days ago
lzkk bf5956e3cc perf(mir): Pettis-Hansen 基本块重排序——链合并+频率排序
3 days ago
lzkk e23d047e5f feat(scripts): 添加 LLVM/clang 差分测试脚本 diff_test_llvm.sh
3 days ago
lzkk c277aa2226 perf(mir): 帧槽按大小重排序——小槽优先获得 ldur 范围内偏移
3 days ago
lzkk f65fe9fc20 perf(mir): 扩展缩放寻址到 EmitStatement Load 路径(ptr/float/int)
3 days ago
lzkk be3a5640ee perf(mir): AArch64 缩放寻址——GEP+Load/Store 直接生成 ldr/str [base, idx, uxtw #2]
3 days ago
lzkk 3ece3d09f4 perf(mir): CMP常量lhs交换——mov+cmp优化为cmp#imm+条件翻转
3 days ago
lzkk e826f9ee57 perf(mir): 负除数模2^n同样使用AND优化
3 days ago
lzkk 421df18c81 perf(mir): 模2^n运算优化——AND+符号修正替代 Msub
3 days ago
lzkk 2a67ef0f06 perf(mir): FixFallThrough——CondBr 条件反转消除冗余 Br
3 days ago
lzkk 667c342c51 perf(mir): Lowering 立即数折叠——AddRR/SubRR/CmpRR 常量 rhs 直接用 Imm
3 days ago
lzkk d51cbc49f1 perf(mir): RegAlloc 偏置着色调和(copy_edges coalescing)
3 days ago
lzkk 9095cbe0db perf(ir): 启用 LICM + 迭代优化循环(ConstFold/ConstProp/CSE/DCE 收敛)
3 days ago
lzkk 1993380d4a chore: 移除 git 冲突残留文件
3 days ago
lzkk ee3b42ac40 feat(opt): 切换至队友代码基线——100%功能正确
3 days ago
lzkk bfe105c2cd fix(mir): 别名无条件冲突 + per-round reserve防指针失效
3 days ago
lzkk d6f42a2a2e fix(mir): 回退到稳定版本——PhysReg映射+spill reload+别名无条件冲突
3 days ago
lzkk 0f1b545568 fix(mir): 分配顺序改为FirstUsePos + 别名无条件冲突 + per-round reserve
4 days ago
lzkk 83228a8123 fix(mir): GPR32/GPR64别名检查移除segments.empty()条件
4 days ago