5.1.1 Module, Function, BasicBlock, Instruction 层级 在 LLVM 的世界里,IR 不是某种抽象的“中间表示”教科书插图,而是一套可精确构造、可逐字解析、可动态验证、可按需重写的内存数据结构体系。它不靠语法糖维系,也不依赖隐式上下文;它的每一个 都是一棵有根、有边、有约束的 DAG;每一个 都是一组受 CFG 约束的 节点集合;每一个 又是一条由 构成的、严格满足 SSA 形式的指令链;而每一条 ,哪怕只是 ,其内部字段、操作数绑定、类型校验、元数据附着、调试信息映射——全都在 类的虚函数表与 机制中被严密管控。这不是设计模式的优雅,而是编译器工程对确定性的死守。 我们今天要钻进的,正是这套结构最基础、也最不容出错的四层骨架: 。