跳到正文
cccskills
免费在 GitHub 公开

compiler-design-expert

Expert-level compiler design covering lexical analysis, parsing, semantic analysis, intermediate representations, optimization passes, and code generation.

中文简介正在准备中。当前显示原文说明。

实测评分 未实测

查看安装方法

包含的文件(2)

  • SKILL.md2.8 KB
  • .gitkeep0 B

SKILL.md(原文)

安装前可以查看交给 AI 代理的指令内容。

Compiler Design Expert

Before Starting

  1. Which compilation phase?
  2. New language or existing compiler modification?
  3. Optimization or correctness focus?

Core Expertise Areas

Lexical Analysis

Tokens: atomic units — keywords, identifiers, literals, operators. Regular expressions: define token patterns. Finite automata: DFA and NFA implement lexers. Lexer generators: Lex, Flex, ANTLR — generate lexer from token rules.

Parsing

Context-free grammars: productions defining language syntax. Top-down: recursive descent, LL parsers — predictive, left-to-right. Bottom-up: LR parsers — shift-reduce, more powerful, handles more grammars. Parser generators: Yacc, Bison, ANTLR — generate parser from grammar. Parse tree vs AST: AST removes redundant nodes, better for analysis.

Semantic Analysis

Type checking: static vs dynamic typing, type inference. Symbol table: scope management, variable binding, type lookup. Attribute grammars: synthesized and inherited attributes on parse tree. Name resolution: binding identifiers to declarations.

Intermediate Representation

Three-address code: at most three operands per instruction. SSA form: single static assignment, each variable defined exactly once. LLVM IR: typed, SSA-based, platform-independent, widely used. Control flow graph: basic blocks connected by edges.

Optimization

Constant folding: evaluate constant expressions at compile time. Dead code elimination: remove unreachable or unused code. Common subexpression elimination: compute repeated expressions once. Loop optimizations: unrolling, invariant code motion, vectorization. Inlining: replace function call with function body.

Code Generation

Instruction selection: map IR to target instructions. Register allocation: map variables to physical registers, spill to stack. Instruction scheduling: reorder instructions to minimize pipeline stalls.

Best Practices

  • Separate phases clearly for maintainability
  • Use SSA form for most optimization passes
  • Test with both valid and invalid input programs
  • Profile optimization passes on real workloads

Common Pitfalls

PitfallFix
Shift-reduce conflictsRefactor grammar or use precedence declarations
Missing phi nodes in SSACompute dominance frontiers correctly
Unsafe optimizationsProve correctness of each transformation
Register spill stormImprove register allocator or reduce register pressure

Related Skills

  • compiler-expert
  • algorithms-cs-expert
  • computer-architecture-expert

评价

还没有评价。欢迎分享你的使用感受。

评论

无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。

还没有评论。来写第一条吧。

提交后会立即公开。请勿填写邮箱、电话等个人信息。URL 最多 2 个。

0 / 1000 字

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

同一仓库的技能

Expert-level abstract algebra knowledge. Use when working with groups, rings, fields, modules, Galois theory, representation theory, or algebraic structures. Also use when the user mentions 'group', 'ring', 'field', 'homomorphism', 'isomorphism', 'normal subgroup', 'quotient group', 'Sylow theorem', 'Galois theory', 'polynomial ring', 'ideal', 'module', 'vector space', or 'representation theory'.

中文简介正在准备中。当前显示原文说明。

luokai0/ai-agent-skills-by-luo-kai132026年5月6日 更新

Expert-level acoustics knowledge. Use when working with sound waves, acoustic propagation, resonance, standing waves, Doppler effect, room acoustics, ultrasound, noise control, musical acoustics, or architectural acoustics. Also use when the user mentions 'sound wave', 'decibel', 'frequency', 'resonance', 'standing wave', 'Doppler effect', 'acoustic impedance', 'reverberation', 'ultrasound', 'noise control', 'harmonics', or 'sound intensity'.

中文简介正在准备中。当前显示原文说明。

luokai0/ai-agent-skills-by-luo-kai132026年5月6日 更新

Expert-level aerodynamics covering subsonic and supersonic flow, lift and drag, airfoil theory, boundary layers, compressible flow, and CFD methods.

中文简介正在准备中。当前显示原文说明。

luokai0/ai-agent-skills-by-luo-kai132026年5月6日 更新

Expert-level air quality engineering covering pollutant sources, atmospheric dispersion, air quality standards, emission controls, and air quality modeling.

中文简介正在准备中。当前显示原文说明。

luokai0/ai-agent-skills-by-luo-kai132026年5月6日 更新

Expert-level aircraft structures covering structural design philosophy, wing and fuselage analysis, fatigue and damage tolerance, composite structures, and certification.

中文简介正在准备中。当前显示原文说明。

luokai0/ai-agent-skills-by-luo-kai132026年5月6日 更新

Expert-level algorithms and complexity theory covering sorting, searching, graph algorithms, dynamic programming, greedy algorithms, NP-completeness, and algorithm design paradigms.

中文简介正在准备中。当前显示原文说明。

luokai0/ai-agent-skills-by-luo-kai132026年5月6日 更新

查看 luokai0 的全部技能

报告此技能的问题