Commit Graph

359 Commits

Author SHA1 Message Date
33ca8ecf34 [document]修改编译器文档中端设计部分 2025-08-05 21:37:48 +08:00
d439ef7e8e [document]初步添加编译器文档 2025-08-05 20:53:44 +08:00
32684d8255 [backend]继续增强寄存器分配器健壮性 2025-08-05 13:50:55 +08:00
f2477c4af3 [backend]修复浮点数截断逻辑 h36通过 2025-08-05 02:44:23 +08:00
b1efd481b4 [midend]BinaryExpStack表达式弹出部分优化 2025-08-05 02:44:23 +08:00
676880ca05 [backend]消除了线性扫描分配器对参数寄存器的引用 2025-08-05 02:21:42 +08:00
df50eedaeb [backend]将浮点逻辑改为与开发板一致 2025-08-05 01:08:42 +08:00
dcc075b39c [backend]修复线性扫描逻辑 2025-08-05 01:06:07 +08:00
f7f1cf2b41 [backend]浮点逻辑与gcc保持一致 2025-08-04 21:54:24 +08:00
881c2a9723 [backend]强化了线性扫描逻辑 2025-08-04 19:28:15 +08:00
b5f14d9385 [backend]在后端主函数中添加了调试逻辑 2025-08-04 18:17:09 +08:00
72b06c67ca [backend]为图着色引入保底修复 2025-08-04 18:13:09 +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