|
|
08fcda939b
|
[midend-llvmirprint]实现了大部分函数的print方法,TODO:需要完善func和module的print方法以及重命名的逻辑
|
2025-08-06 01:02:11 +08:00 |
|
|
|
5f63554ca3
|
[midend]修正合并基本块链会将entry块纳入考虑范围的问题。上次commit同时修改了alloca创建的逻辑保证了alloca的声明全部在entry块中
|
2025-08-04 18:56:57 +08:00 |
|
|
|
4db3cc3fb5
|
Merge branch 'midend' into backend
|
2025-08-04 16:48:30 +08:00 |
|
|
|
17f1bed310
|
Merge branch 'backend-lag' into backend
|
2025-08-04 16:43:43 +08:00 |
|
|
|
b848ffca5a
|
[midend]在生成IR时引进了简单的CSE(二元一元loadgep的cse)
|
2025-08-04 16:38:12 +08:00 |
|
|
|
603506d142
|
Merge branch 'backend' of gitee.com:lixuanwang/mysysy into backend
|
2025-08-04 16:34:22 +08:00 |
|
|
|
0179c13cf4
|
[backend]添加了一些工具函数
|
2025-08-04 16:32:54 +08:00 |
|
|
|
7e5f6800b7
|
[backend]修复寄存器分配算法死循环bug,89通过
|
2025-08-04 16:04:35 +08:00 |
|
|
|
64ba25a77e
|
[backend]移除了冗余的keepalive伪指令
|
2025-08-04 14:11:27 +08:00 |
|
|
|
208d5528b5
|
Merge branch 'midend' into backend
|
2025-08-04 02:37:27 +08:00 |
|
|
|
a269366ac5
|
[backend]修复了较小全零全局数组未显示初始化导致未定义行为的问题
|
2025-08-04 02:31:18 +08:00 |
|
|
|
1b9a7a4827
|
[backend]修复了函数序言处理错误且与尾声栈不匹配的bug
|
2025-08-04 01:57:34 +08:00 |
|
|
|
b2c2f3289d
|
[backend]修改了编译器后端 RISCv64ISel.cpp,在 kFtoI 的处理逻辑中,用一段指令序列模拟了正确的“向零取整”行为。95 h35 h37 h38通过。
|
2025-08-04 01:35:26 +08:00 |
|
|
|
0ecd47f0ac
|
修复IR打印器中浮点比较指令的类型错误,确保生成正确的LLVM IR代码
|
2025-08-04 01:35:26 +08:00 |
|
|
|
6550c8a25b
|
[backend-LAG]添加新的LargeArrayToGlobal中端Pass,以及栈保护逻辑
|
2025-08-04 01:01:29 +08:00 |
|
|
|
f24cc7ec88
|
[midend]修复replaceAllUsesWith中由于setOperand 间接调用 removeUse 或 addUse导致的迭代器失效问题
|
2025-08-04 00:59:39 +08:00 |
|
|
|
c8a8bf9a37
|
[backend]修复了溢出位置错误的问题
|
2025-08-03 23:28:38 +08:00 |
|
|
|
446a6a6fcb
|
[midend]修复phi指令接口,优化遍适配
|
2025-08-03 22:18:00 +08:00 |
|
|
|
d8b004e5e5
|
[midend]修改use关系相关的函数,使其能自动的正确维护,修改了phi指令的各种接口
|
2025-08-03 22:16:40 +08:00 |
|
|
|
cd814de495
|
Merge commit 'e4ad23a1a594a9da6b96655d4256352d5f6d277d' into midend
|
2025-08-03 18:37:36 +08:00 |
|
|
|
e4ad23a1a5
|
[backend]修复了寄存器分配器在处理全物理寄存器操作数时的bug
|
2025-08-03 18:37:08 +08:00 |
|
|
|
58c8cd53f5
|
Merge branch 'midend' of gitee.com:lixuanwang/mysysy into midend
|
2025-08-03 17:26:38 +08:00 |
|
|
|
ec91a4e259
|
[backend]更新脚本,现在会拷贝.sy文件到tmp目录
|
2025-08-03 17:26:09 +08:00 |
|
|
|
91f755959b
|
[midend]修改中端流水线
|
2025-08-03 17:25:05 +08:00 |
|
|
|
92c89f7616
|
[midend]修正了脚本错误
|
2025-08-03 17:12:39 +08:00 |
|
|
|
66047dc6a3
|
Merge branch 'buildcfg' into midend
|
2025-08-03 16:40:48 +08:00 |
|
|
|
22cf18a1d6
|
[midend-BuildCFG]修复逻辑
|
2025-08-03 16:14:31 +08:00 |
|
|
|
19a433c94f
|
[midend]为脚本添加了-O1参数,支持测试性能
|
2025-08-03 15:41:29 +08:00 |
|
|
|
45dfbc8d59
|
Merge branch 'backend' into midend
|
2025-08-03 15:25:51 +08:00 |
|
|
|
f8e423f579
|
合并backend、backend-IRC到midend
|
2025-08-03 15:18:52 +08:00 |
|
|
|
5b43f208ac
|
Merge branch 'backend-divopt' into midend
|
2025-08-03 14:53:22 +08:00 |
|
|
|
845f969c2e
|
[backend-IRC]修复了现场管理与溢出处理的栈偏移量错误问题
|
2025-08-03 14:42:19 +08:00 |
|
|
|
9c5d9ea78c
|
[optimize]删除多余测试文件
|
2025-08-03 14:38:27 +08:00 |
|
|
|
0ce742a86e
|
[optimize]添加更为通用的除法强度削减Pass, 不受除数限制替换div指令,不影响当前分数
|
2025-08-03 14:37:33 +08:00 |
|
|
|
f312792fe9
|
[optimze]添加基础的除法指令优化,目前只对除以2的幂数生效
|
2025-08-03 13:46:42 +08:00 |
|
|
|
32ea24df56
|
[midend]修复entryBB和funcBodyEntry的初始化,Dom计算引进逆后续遍历和LT算法,Pass先默认关掉CFGOpt
|
2025-08-03 00:51:49 +08:00 |
|
|
|
a1cf60c420
|
[midend-BuildCFG]新增BuildCFG优化通道,实现控制流图的构建与分析
|
2025-08-02 22:48:21 +08:00 |
|
|
|
f879a0f521
|
[midend]修复了后端不适配中端全局变量定义的问题
|
2025-08-02 22:06:37 +08:00 |
|
|
|
004ef82488
|
[backend-IRC]修复了后端不适配中端全局变量定义的问题
|
2025-08-02 15:10:19 +08:00 |
|
|
|
8f1d592d4e
|
Merge branch 'midend' into backend-IRC
|
2025-08-02 12:47:27 +08:00 |
|
|
|
537533ee43
|
Merge branch 'midend' into backend-IRC
|
2025-08-02 12:43:18 +08:00 |
|
|
|
bfe218be07
|
[midend]非全0初始化数组情况下,检查0初始值个数,超过阈值(目前为16)则生成menset减少大量store操作
|
2025-08-02 02:33:25 +08:00 |
|
|
|
384f7c548b
|
[backend-IRC]添加了三级调试打印逻辑
|
2025-08-01 23:18:53 +08:00 |
|
|
|
57fe17dc21
|
[backend-IRC]为虚拟寄存器与物理寄存器之间添加冲突
|
2025-08-01 21:20:04 +08:00 |
|
|
|
e48cddab9f
|
[midend]修复多维数组维度信息的计算值(理论上计算结果一定是常量),TODO:修复类似问题
|
2025-08-01 19:19:05 +08:00 |
|
|
|
aef10b48e8
|
[midend]删除前驱后继移除时不存在的检查,phi增加llvm风格接口,重构CFGOpt特别是空块删除的逻辑(待验证)
|
2025-08-01 18:34:43 +08:00 |
|
|
|
373726b02f
|
[backend-IRC]修复了极其隐蔽的寄存器分配问题
|
2025-08-01 17:29:18 +08:00 |
|
|
|
a0b69f20fb
|
[midend]合并了SCCP和backend,修复了支配树的错误求解,修复了Mem2Reg的重命名alloca的栈管理
|
2025-08-01 15:18:33 +08:00 |
|
|
|
999f2c6615
|
Merge remote-tracking branch 'origin/backend' into midend
|
2025-08-01 14:06:20 +08:00 |
|
|
|
1eedb55ca0
|
Merge branch 'midend-SCCP' into midend
|
2025-08-01 14:02:14 +08:00 |
|