首页
›
热销单品
›
软件编程与计算机基础
›
《LLVMClang编译器架构从入门到精通》
所属分类:软件编程与计算机基础
当前为单品课程,可返回上一级继续浏览同方向资料。
← 返回上一级
← 返回所属目录
咨询 / 购买
📘
LLVMClang编译器架构从入门到精通
共计 30 章节
点击此处阅读海量试读课程:100+行业、1000+细分领域
01
课程导入
学习目标 · 编译器发展史 · LLVM/Clang的定位与优势
课程导入
学习目标
02
环境搭建与工具链
LLVM/Clang的源码获取 · 编译安装 · 常用命令行工具(clang
环境搭建
工具链
03
编译器基础概念
词法分析 · 语法分析 · 语义分析
编译器基础概念
词法分析
04
LLVM架构总览
LLVM的模块化设计 · 前端(Clang) · 中间层(IR
LLVM
架构总览
05
Clang前端架构
Clang的驱动流程 · 词法分析器(Lexer) · 预处理器(Preprocessor)
Clang
前端架构
06
AST(抽象语法树)
AST的节点类型 · 构建过程 · AST的遍历与打印(clang -a…
AST
抽象语法树
07
语义分析与Sema
类型检查 · 作用域解析 · 重载决议
Sema
语义分析
08
LLVM IR基础
IR的三种形式(内存表示 · 位码 · 文本)
LLVM
IR
09
LLVM IR生成
从AST到IR的转换(CodeGen… · IRBuilder的使用 · 基本块的构建
LLVM
IR
10
LLVM IR高级特性
元数据 · 属性 · 内建函数
LLVM
IR
11
优化器架构
PassManager的机制 · Pass的类型(分析 · 变换)
优化器架构
PassManager
12
常用优化Pass详解
函数内联 · 循环优化(LICM · unroll)
Pass
常用优化
13
编写自定义Pass
开发环境配置 · Pass的注册与编写 · 使用opt运行自定义Pass
Pass
编写自定义
14
Pass分析与数据流框架
Dominator树 · 循环分析 · 别名分析
Pass
分析
15
目标描述与后端架构
TargetMachine · TargetLowering · 指令选择
目标描述
后端架构
16
指令选择与SelectionDAG
从IR到SelectionDAG · 模式匹配 · 指令选择算法
SelectionDAG
指令选择
17
寄存器分配
线性扫描 · 图着色 · 寄存器压力管理
寄存器分配
线性扫描
18
代码生成与汇编
指令调度 · MC层(MachineCode) · 汇编输出
代码生成
汇编
19
Clang插件开发
编写Clang插件 · ASTMatcher的使用 · 插件加载与运行
Clang
插件开发
20
LibTooling与重构工具
利用LibTooling构建独立工具 · 源码级重构 · 代码分析工具实战
LibTooling
重构工具
21
LLVM测试框架
单元测试(gtest) · 集成测试(lit) · 测试用例编写
LLVM
测试框架
22
调试LLVM/Clang
使用gdb/lldb调试编译器 · 日志与统计 · 常用调试技巧
LLVM/Clang
调试
23
常见问题与解决方案
编译错误 · 链接错误 · IR验证失败
常见问题
解决方案
24
实战项目一
编写一个简单的静态分析工具 · 检测特定代码模式并输出报告
实战项目一
编写一个简单的静…
25
实战项目二
实现一个自定义优化Pass · 对特定循环进行变换 · 并评估性能提升
实战项目二
Pass
26
实战项目三
为一种简单语言编写前端 · 生成LLVM IR并编译执行
实战项目三
为一种简单语言编…
27
实战项目四
修改Clang以支持自定义语法或属性 · 并集成到编译流程中
实战项目四
Clang
28
性能优化与工程实践
编译时间优化 · 内存占用控制 · 并行编译
性能优化
工程实践
29
LLVM生态与前沿
LLVM在GPU · AI · 安全
LLVM
生态
30
综合提升与总结
课程知识体系回顾 · 综合实战挑战 · 学习资源推荐
综合提升
课程知识体系回顾
所属VIP或分类
同VIP:45天精通C++编程
同VIP:45天精通Rust编程
同VIP:AE自动曝光算法设计实战