名称: LLVM后端 描述: LLVM集成专家技能,包括IR生成、优化通道和原生代码发射 类别: 代码生成 允许工具:
- 读取
- 写入
- 编辑
- 全局搜索
- 文本搜索
- Bash
LLVM后端技能
概述
LLVM集成专家技能,包括IR生成、优化通道和原生代码发射。
能力
- 从高级AST/IR生成LLVM IR
- 配置和运行LLVM优化通道
- 实现自定义LLVM通道
- 处理LLVM类型系统映射
- 生成调试信息(DWARF)
- 配置目标机器和代码生成选项
- 实现LLVM JIT(ORC、MCJIT)集成
- 处理交叉编译目标三元组
目标流程
- code-generation-llvm.js
- jit-compiler-development.js
- debugger-adapter-development.js
- ir-design.js
依赖项
- LLVM C++ API
- llvm-sys绑定
- Inkwell(Rust LLVM绑定)
使用指南
- 类型映射:建立源类型与LLVM类型之间的清晰映射
- SSA形式:利用LLVM的SSA形式;生成干净的IR并让LLVM进行优化
- 调试信息:从一开始就使用DIBuilder生成调试信息
- 优化级别:首先使用-O0进行测试,然后逐步启用优化
- 目标配置:将目标特定代码抽象在目标三元组配置之后
输出模式
{
"type": "object",
"properties": {
"llvmVersion": { "type": "string" },
"targetTriple": { "type": "string" },
"optimizationLevel": {
"type": "string",
"enum": ["O0", "O1", "O2", "O3", "Os", "Oz"]
},
"passes": {
"type": "array",
"items": { "type": "string" }
},
"generatedFiles": {
"type": "array",
"items": { "type": "string" }
}
}
}