首页
›
热销单品
›
软件编程与计算机基础
›
《LLVM编译器架构与实现》
所属分类:软件编程与计算机基础
当前为单品课程,可返回上一级继续浏览同方向资料。
← 返回上一级
← 返回所属目录
咨询 / 购买
📘
LLVM编译器架构与实现
共计 30 章节
点击此处阅读海量试读课程:100+行业、1000+细分领域
01
课程导入
LLVM的历史 · 设计哲学 · 整体架构概览
课程导入
LLVM
02
编译原理基础回顾
词法分析 · 语法分析 · 语义分析
编译原理基础回顾
词法分析
03
LLVM核心组件与源码结构
llvm-project仓库布局 · 主要子项目(llvm · clang
LLVM
核心组件
04
LLVM中间表示(IR)基础
IR的三种形式(内存 · 文本 · bitcode)
LLVM
IR
05
LLVM IR深入
控制流图(CFG) · 基本块 · Phi节点
LLVM
IR
06
LLVM工具链使用
clang编译流程 · llvm-as · llvm-dis
LLVM
工具链使用
07
前端与Clang
Clang的架构 · 词法分析器 · 语法分析器
Clang
前端
08
AST到IR的转换
CodeGen的基本流程 · 如何将C/C++ AST转换为LLV… · 处理作用域与类型
AST
IR
09
LLVM Pass基础
Pass的概念 · PassManager的演进(leg… · 如何编写第一个HelloWorld…
LLVM
Pass
10
Pass的编写与调试
分析Pass与变换Pass的区别 · Pass依赖 · 使用opt运行Pass
Pass
的编写
11
函数内优化Pass实战
指令合并 · 常量传播 · 死代码消除(DCE)
Pass
函数内优化
12
循环优化Pass实战
循环不变量外提 · 循环展开 · 循环向量化
Pass
循环优化
13
数据流分析框架
到达定义 · 活跃变量 · 可用表达式
数据流分析框架
到达定义
14
别名分析与内存依赖
AliasAnalysis框架 · MemorySSA · 如何利用别名信息进行优化
别名分析
内存依赖
15
目标描述与后端架构
TargetDescription · 寄存器 · 指令选择
目标描述
后端架构
16
指令选择与SelectionDAG
从IR到SelectionDAG的转… · 模式匹配 · 指令选择算法
SelectionDAG
指令选择
17
寄存器分配
线性扫描 · 图着色 · 基本块与函数级寄存器分配
寄存器分配
线性扫描
18
指令调度与优化
列表调度 · 软件流水线 · 指令级并行
指令调度
优化
19
代码生成与目标汇编
MC层 · 汇编器 · 对象文件生成
代码生成
目标汇编
20
链接器lld
LLVM链接器的架构 · 符号解析 · 重定位
lld
链接器
21
JIT与解释执行
LLVM JIT(MCJIT · ORC) · 如何实现即时编译
JIT
解释执行
22
LLVM的调试与测试基础设施
lit测试框架 · FileCheck · 单元测试
LLVM
的调试
23
常见优化案例分析
真实程序中的性能瓶颈 · 如何利用llvm-opt和perf定… · 优化前后对比
常见优化案例分析
真实程序
24
自定义语言前端实战
使用Lexer和Parser实现一个… · 并生成LLVM IR
自定义语言前端实…
Lexer
25
自定义Pass实战
实现一个业务相关的优化Pass(如特… · 并集成到工具链中
Pass
自定义
26
LTO与跨模块优化
链接时优化的原理 · ThinLTO · 如何利用LTO提升性能
LTO
跨模块优化
27
Sanitizer与安全工具
AddressSanitizer · UndefinedBehaviorS… · ThreadSanitizer的实现…
Sanitizer
安全工具
28
LLVM在GPU与异构计算中的应用
NVPTX后端 · AMDGPU后端 · OpenMP与CUDA的编译支持
LLVM
GPU
29
常见问题与调试技巧
IR验证错误 · Pass崩溃 · 内存泄漏
常见问题
调试技巧
30
综合项目实战
从零构建一个完整的编译器前端与后端 · 集成优化Pass · 并生成可执行文件
综合项目实战
从零构建一个完整…
所属VIP或分类
同VIP:45天精通C++编程
同VIP:45天精通Rust编程
同VIP:AE自动曝光算法设计实战