Ssa ir design
Skill a5c-ai/babysitter/library/specializations/programming-languages/skills/ssa-ir-design
Babysitter enforces obedience on agentic workforces and enables them to manage extremely complex tasks and workflows through deterministic, hallucination-free self-orchestration
npx -y skills add a5c-ai/babysitter --skill ssa-ir-designAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
What its author says it does
Copied from the file, not written here
Expert skill for designing intermediate representations and implementing SSA construction
SKILL.md
2.0 KB, as published. Nobody here has run it
SSA/IR Design Skill
Overview
Expert skill for designing intermediate representations and implementing SSA (Static Single Assignment) construction.
Capabilities
- Design control flow graph (CFG) structures
- Implement dominance tree computation
- Implement SSA construction algorithms (Cytron et al.)
- Design phi function placement and pruning
- Implement SSA destruction for register allocation
- Design sea-of-nodes IR representations
- Implement basic block reordering
- Design IR verification passes
Target Processes
- ir-design.js
- code-generation-llvm.js
- jit-compiler-development.js
- semantic-analysis.js
Dependencies
Compiler optimization textbooks (Engineering a Compiler, Modern Compiler Implementation)
Usage Guidelines
- CFG Design: Start with a clear CFG representation with explicit entry/exit blocks
- Dominance: Implement dominance computation before SSA construction
- Phi Placement: Use dominance frontiers for minimal phi placement
- Verification: Build IR verification passes to catch malformed IR early
- Debugging: Include IR pretty-printing from the start for debugging
Output Schema
{
"type": "object",
"properties": {
"irStyle": {
"type": "string",
"enum": ["basic-blocks", "sea-of-nodes", "continuation-passing"]
},
"ssaConstruction": {
"type": "string",
"enum": ["cytron", "braun", "sreedhar"]
},
"passes": {
"type": "array",
"items": { "type": "string" }
},
"generatedFiles": {
"type": "array",
"items": { "type": "string" }
}
}
}