桂林市网站建设_网站建设公司_UX设计_seo优化
2025/12/24 5:43:30
网站建设
项目流程
缩略语大全之:编译器篇 —— 从源代码到二进制的一切黑魔法
一、编译器总体与通用术语 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 动态编译