Commit Graph

34 Commits

Author SHA1 Message Date
rain2133
f7e318e623 [SCCP]初步构建SCCP,.cpp仍不完善暂不commit 2025-07-16 22:01:37 +08:00
rain2133
00348c1931 修改CFG优化的文件名,修改phidel标签 2025-07-16 22:01:37 +08:00
rain2133
5a6cfbee1e [SysYIROptUtils]增加通用优化工具类,修改相关代码 2025-07-16 22:01:37 +08:00
Lixuanwang
f4d599a567 Merge remote-tracking branch 'origin/loopinfo' 2025-07-16 13:17:32 +08:00
rain2133
50fd9cffe9 [IRPrinter&DCE]修改定义方便调试打印,在DEC中增加调试信息 2025-07-16 13:04:05 +08:00
LixuanWang
bd7f6ea6f6 [deploy]移除了Backend.h和.cpp 2025-07-16 10:37:19 +08:00
LixuanWang
bb1602aa5f [deploy]把Antlr生成的代码直接放到源代码文件夹中 2025-07-16 10:32:18 +08:00
rain2133
3419f84898 Merge remote-tracking branch 'origin/backend' into loopinfo 2025-07-15 13:09:55 +08:00
rain2133
ede6465e8c [IR]:增加默认添加ret指令逻辑 2025-07-15 12:53:03 +08:00
Lixuanwang
a509dabbf0 [backend]解决了数组访存地址计算问题,加入了参数控制的中端、后端调试选项 2025-07-15 11:32:53 +08:00
rain2133
0d23475aa1 [死代码删除]:保证扩展性、模块化构建死代码删除,包括消除无用store,alloca,load,globalval,mem2reg引入的无用alloca以及reg2mem导致的store-load-store冗余存储 2025-06-25 15:33:25 +08:00
rain2133
b12732f10d 修复分析器逻辑,保证优化遍共享一个分析器(主要是在mem2reg) 2025-06-25 15:30:28 +08:00
rain2133
1e06c5a446 debugging 2025-06-25 14:00:27 +08:00
rain2133
050113d31d 增加Reg2Mem,但是会生成死存储指令,需要死代码删除支持识别死存储指令 2025-06-25 13:17:16 +08:00
rain2133
4fabcc9952 mem2reg流程基本跑通,修复phi函数打印,需要删除调试print 2025-06-25 12:23:59 +08:00
rain2133
bd0b624e87 debugging 2025-06-25 02:22:16 +08:00
rain2133
ac7644f450 添加数据流分析类,实现前向后向分析的模板动作,实现活跃变量分析,基本借鉴学长代码,后续可优化实现 2025-06-24 23:45:43 +08:00
rain2133
3dbb394bc2 初步构建分析器,增加控制流分析,实现支配节点计算,支配树构建,支配边界计算,为后续Mem2reg做准备 2025-06-24 22:39:20 +08:00
rain2133
73dd8eba22 删除IR中关于分析的属性,准备建立分析器 2025-06-24 10:18:29 +08:00
rain2133
10b43fc90d 修复若干bug 2025-06-23 17:04:45 +08:00
rain2133
3d233ff199 基本完成CFG优化(IR修复) 2025-06-23 16:25:52 +08:00
rain2133
568e9af626 IRoptpre 初步构建 2025-06-23 13:17:15 +08:00
rain2133
63fc92dcbd 数组命名修复 2025-06-23 11:35:44 +08:00
rain2133
9d8930f5df fix % repeat in IR print 2025-06-23 00:22:15 +08:00
rain2133
496e2abfb6 构建IR打印器,llvm风格,跑通大部分样例(9/10),待修复 2025-06-22 17:59:19 +08:00
lixuanwang
dda8bbe444 Merge branch 'array_add' 2025-06-22 14:24:00 +08:00
rain2133
4828c18f96 前端基本构建完毕,build前端部分无报错,argument类删除后端报错,llvmIR输出待完成 2025-06-22 00:25:43 +08:00
rain2133
0a04c816cf 更新IR,.g4修改 2025-06-21 18:06:29 +08:00
rain2133
3ed1c7fecd 更改前置声明,IR生成更新 2025-06-21 16:39:13 +08:00
rain2133
ba5f2a0620 删除格式化功能 2025-06-21 15:40:00 +08:00
rain2133
2b038e671b 修复bug 2025-06-21 14:33:22 +08:00
rain2133
c1583e447d 更改g4文件,优化IR生成流程 2025-06-21 13:44:51 +08:00
rain2133
30f89bba23 更新IR结构,重写IRBuilder 2025-06-21 12:53:41 +08:00
rain2133
c54543bff3 更新目录结构,修改IR结构,部分修复IR生成 2025-06-20 22:46:04 +08:00