6.2.1 方言 (Dialects):领域的特定抽象 在 MLIR 的浩瀚宇宙里,方言(Dialect)不是语法的变体,而是计算范式的主权宣言——它不妥协于通用性,而是在特定领域内行使定义权:定义什么算“合法操作”,什么算“可验证语义”,什么算“可向下转换的底层原语”。当你写下 、 或 ,你不是在调用函数,而是在向一个经过严格注册、类型约束、验证闭环与转换契约保障的领域主权实体提交一份结构化契约。本节不谈概念泛论,不列抽象分类,我们直接切入 LLVM 项目中 目录下的 文件、 的构造逻辑、 中的断言边界、以及 如何在 IR 层面完成一次毫秒级的语义重写——这才是方言的血肉。 一、方言不是插件,是编译器的“宪法性文件” 初学者常误以为方言是“加个头文件就能用”的扩展机制。错。