Files
scc/libs
zzy e5cb70732e feat(lir): 添加函数参数操作数类型支持
添加 SCC_LIR_INSTR_KIND_ARG 枚举值用于表示函数参数操作数,
修改 scc_lir_instr 结构体以支持参数类型的值存储,
新增 SCC_LIR_ARG 宏定义用于创建参数操作数,
更新 HIR 到 LIR 的转换逻辑以正确处理函数参数引用。

BREAKING CHANGE: 修改了 LIR 指令格式以支持参数操作数类型。

refactor(mir): 重命名并重构 x86_64 指令选择模块

将 mir_x86.c 重命名为 arch/x86_64_isel.c,
创建新的头文件 arch/x86_64_isel.h,
重构结构体名称为 scc_x86_64_isel_t,
统一函数命名前缀为 scc_x86_,
移除重复的包含头文件。

feat(abi): 添加 ABI 降低框架接口定义

定义 scc_abi_lowering_t 结构体用于 ABI 降低功能,
提供函数指针类型定义用于调用、返回、参数等处理,
为后续实现不同平台 ABI 支持奠定基础。

fix(x86): 支持参数操作数的 MIR 转换

更新 lir_val_to_mir_op 函数以处理 SCC_LIR_INSTR_KIND_ARG 类型,
通过 ABI 降低框架获取参数的实际物理位置,
修复移位运算和除法运算中的函数调用命名。

test: 更新测试用例期望值

调整多个测试用例的期望返回值,
修改字符串字面量和循环条件以匹配新的预期行为,
确保测试用例与编译器功能变化保持一致。
2026-05-07 20:07:27 +08:00
..

lexer

(Lexical Analysis) 词法分析

pproc

(Preprocessor) 预处理器

parser

(Syntax analysis) 语法分析

sema

(Semantic Analysis) 语义分析

ast

(Abstract Syntax Tree) 抽象语法树

ast2ir

抽象语法树到中间代码

ir

(Intermediate Representation) 中间代码标识

cfg

(Control Flow Graph) 控制流图

hir

(High-Level Intermediate Representation) 高级中间代码标识

lir

(Low-Level Intermediate Representation) 低级中间代码标识

mir

(Machine Intermediate Representation) 机器中间代码标识

ir2mcode

中间代码到机器码

mcode

(Machine Code) 机器码

sccf

统一输出格式

target

目标平台支持

Windows Portable Executable Format

Windows Portable Executable Format 中文文档