[缩略语大全]之[编译器]篇

缩略语大全之:编译器篇

------ 从源代码到二进制的一切黑魔法

一、编译器总体与通用术语

1.1 编译流程全局概念

|-----------|------------------------------|--------------|
| 缩略语 | 全称 | 说明 |
| Compiler | Compiler | 编译器 |
| Toolchain | Toolchain | 工具链 |
| Frontend | Front End | 前端(语法 → IR) |
| Backend | Back End | 后端(IR → 机器码) |
| Driver | Compiler Driver | 编译驱动(如 gcc) |
| Pipeline | Compilation Pipeline | 编译流水线 |
| Pass | Compiler Pass | 编译器处理阶段 |
| IR | Intermediate Representation | 中间表示 |
| Target | Target Architecture | 目标架构 |
| ABI | Application Binary Interface | 应用二进制接口 |


1.2 编译阶段缩略语

|-----|------------------------|-------|
| 缩略语 | 全称 | 说明 |
| PP | Preprocessor | 预处理 |
| CC | Compilation | 编译 |
| AS | Assembler | 汇编 |
| LD | Linker | 链接 |
| LTO | Link Time Optimization | 链接时优化 |
| JIT | Just-In-Time | 即时编译 |
| AOT | Ahead-Of-Time | 预编译 |


二、主流编译器与工具链家族


2.1 GCC 家族

|-----------|-------------------------|------------|
| 缩略语 | 全称 | 说明 |
| GCC | GNU Compiler Collection | GNU 编译器集合 |
| cc | C Compiler | C 编译器别名 |
| g++ | GNU C++ Compiler | C++ 编译器 |
| gcov | GNU Coverage | 覆盖率分析 |
| gprof | GNU Profiler | 性能分析 |
| libgcc | libgcc | GCC 运行时支持库 |
| libstdc++ | libstdc++ | C++ 标准库实现 |


2.2 LLVM / Clang 生态

|-------------|---------------------------|----------|
| 缩略语 | 全称 | 说明 |
| LLVM | Low Level Virtual Machine | 编译器基础设施 |
| Clang | Clang Frontend | LLVM 前端 |
| clang++ | C++ Frontend | C++ 前端 |
| clangd | Clang Daemon | LSP 编译服务 |
| llc | LLVM Static Compiler | IR → 机器码 |
| opt | LLVM Optimizer | IR 优化器 |
| lld | LLVM Linker | 链接器 |
| libc++ | libc++ | C++ 标准库 |
| compiler-rt | compiler-rt | 编译器运行时 |


2.3 Intel / 商业编译器

|-------|----------------------|-------------|
| 缩略语 | 全称 | 说明 |
| ICC | Intel C Compiler | Intel 经典编译器 |
| ICX | Intel LLVM Compiler | LLVM-based |
| IFX | Intel Fortran LLVM | Fortran 编译器 |
| MSVC | Microsoft Visual C++ | 微软编译器 |
| NVCC | NVIDIA CUDA Compiler | CUDA 编译器 |
| HIPCC | HIP Compiler | AMD GPU 编译 |


三、前端(Frontend)相关缩略语


3.1 词法、语法、语义分析

|-----------|----------------------|---------|
| 缩略语 | 全称 | 说明 |
| Lexer | Lexical Analyzer | 词法分析 |
| Parser | Syntax Parser | 语法分析 |
| AST | Abstract Syntax Tree | 抽象语法树 |
| CFG | Context-Free Grammar | 上下文无关文法 |
| Sema | Semantic Analysis | 语义分析 |
| TypeCheck | Type Checking | 类型检查 |


3.2 前端工具与生成器

|-------|---------------------------------------|---------|
| 缩略语 | 全称 | 说明 |
| Lex | Lexical Generator | 词法生成 |
| Yacc | Yet Another Compiler Compiler | 语法生成 |
| Bison | GNU Bison | Yacc 实现 |
| ANTLR | ANother Tool for Language Recognition | 现代解析器 |


四、中间表示(IR)体系


4.1 IR 形式

|---------|-----------------------------|------------|
| 缩略语 | 全称 | 说明 |
| IR | Intermediate Representation | 中间表示 |
| SSA | Static Single Assignment | 静态单赋值 |
| GIMPLE | GIMPLE | GCC IR |
| RTL | Register Transfer Language | GCC 后端 IR |
| LLVM IR | LLVM IR | LLVM 核心 IR |
| MIR | Machine IR | 机器相关 IR |


4.2 控制与数据流

|-----------|--------------------|----------|
| 缩略语 | 全称 | 说明 |
| CFG | Control Flow Graph | 控制流图 |
| DFG | Data Flow Graph | 数据流图 |
| PHI | PHI Node | SSA 合流节点 |
| BB | Basic Block | 基本块 |
| Dominator | Dominator Tree | 支配树 |


五、优化(Optimization)相关缩略语


5.1 常见优化技术

|-----------|----------------------------------|----------|
| 缩略语 | 全称 | 说明 |
| DCE | Dead Code Elimination | 死代码消除 |
| CSE | Common Subexpression Elimination | 公共子表达式 |
| LICM | Loop Invariant Code Motion | 循环不变代码外提 |
| SROA | Scalar Replacement of Aggregates | 标量替换 |
| Inlining | Function Inlining | 内联 |
| Unroll | Loop Unrolling | 循环展开 |
| Vectorize | Vectorization | 向量化 |


5.2 架构相关优化

|---------|----------------------------------|--------|
| 缩略语 | 全称 | 说明 |
| ILP | Instruction Level Parallelism | 指令级并行 |
| SIMD | Single Instruction Multiple Data | 向量化 |
| PGO | Profile Guided Optimization | 配置引导优化 |
| BOLT | Binary Optimization | 二进制级优化 |
| AutoVec | Auto Vectorization | 自动向量化 |


六、后端(Backend)与代码生成


6.1 代码生成流程

|------------|------------------------|-------|
| 缩略语 | 全称 | 说明 |
| ISel | Instruction Selection | 指令选择 |
| RA | Register Allocation | 寄存器分配 |
| Scheduling | Instruction Scheduling | 指令调度 |
| Peephole | Peephole Optimization | 窗口优化 |
| MC | Machine Code | 机器码 |


6.2 汇编与目标格式

|--------|--------------------------------|---------|
| 缩略语 | 全称 | 说明 |
| ASM | Assembly | 汇编 |
| ELF | Executable and Linkable Format | 可执行格式 |
| COFF | Common Object File Format | Windows |
| Mach-O | Mach Object | macOS |
| DWARF | DWARF | 调试信息格式 |


七、链接、加载与运行时


7.1 链接相关

|-------|-------------------------|----------|
| 缩略语 | 全称 | 说明 |
| LD | Linker | 链接器 |
| LLD | LLVM Linker | LLVM 链接器 |
| BFD | Binary File Descriptor | GNU 后端 |
| PLT | Procedure Linkage Table | 过程链接表 |
| GOT | Global Offset Table | 全局偏移表 |
| RELRO | Relocation Read-Only | 安全机制 |


7.2 运行时支持

|------|----------------------|--------|
| 缩略语 | 全称 | 说明 |
| CRT | C Runtime | C 运行时 |
| libc | C Standard Library | C 标准库 |
| ABI | ABI | 二进制接口 |
| TLS | Thread Local Storage | 线程局部存储 |
| EH | Exception Handling | 异常处理 |


八、调试、分析与工具


8.1 调试相关

|-------|------------------------------|----------|
| 缩略语 | 全称 | 说明 |
| GDB | GNU Debugger | 调试器 |
| LLDB | LLVM Debugger | LLVM 调试器 |
| DWARF | DWARF Debug Info | 调试信息 |
| ASan | Address Sanitizer | 内存检测 |
| TSan | Thread Sanitizer | 线程检测 |
| UBSan | Undefined Behavior Sanitizer | 未定义行为 |


8.2 静态与动态分析

|---------|-------------------------|---------|
| 缩略语 | 全称 | 说明 |
| LTO | Link Time Optimization | 链接期优化 |
| ThinLTO | ThinLTO | 分布式 LTO |
| SCA | Static Code Analysis | 静态分析 |
| DSA | Dynamic Static Analysis | 动态分析 |


九、现代趋势与前沿方向

|------------|-------------------------------|------------|
| 缩略语 | 全称 | 说明 |
| MLIR | Multi-Level IR | 多层 IR |
| CIR | C Intermediate Representation | Clang 新 IR |
| WASM | WebAssembly | Web IR |
| eBPF | Extended BPF | 内核 IR |
| Polyhedral | Polyhedral Model | 多面体优化 |
| JIT | Just-In-Time | 动态编译 |

相关推荐
驱动探索者10 小时前
[缩略语大全]之[计算机图形学]篇
计算机·显示器·图形学·显示
yy我不解释11 小时前
关于comfyui的token顺序打乱(三)
python·ai作画·flask·状态模式·comfyui
程序员鱼皮1 天前
突发,快手被色情直播刷屏!背后的原因竟然是?
计算机·程序员·互联网·编程·事故
梁辰兴1 天前
计算机网络基础:以太网的 MAC 层
网络·计算机网络·macos·计算机·mac·以太网·梁辰兴
Teable任意门互动1 天前
飞书多维表格vsTeable 如何选?把握“内外兼修”是关键决策点
运维·自动化·飞书·数据库开发·wps
TrueFurina(互关互赞)1 天前
7-4 区间水仙花数 Python程序设计-MJU实验四(编程入门•多代码实现•测试均通过)
数据结构·算法·飞书·创业创新·学习方法·远程工作·改行学it
workflower2 天前
用户体验的要素
状态模式·需求分析·个人开发·ux·规格说明书·极限编程
程序员鱼皮2 天前
从夯到拉,锐评 28 个后端技术!
后端·计算机·程序员·开发·编程经验