summaryrefslogtreecommitdiff
path: root/gen/README.md
blob: 958814c2472215958d308868db233adeed162b9b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
# Code Generators (C Programs)

Each generator reads the ISA definitions (`../isa/`) and produces C source
code for the assembler, disassembler, simulator, and documentation.

| Generator        | Input             | Output                           |
|------------------|-------------------|----------------------------------|
| `tablegen/`      | ISA encoding      | Instruction decode tables        |
| `decoder/`       | Encoding tables   | Decode switch/case source        |
| `encoder/`       | Opcode tables     | Assembler encode logic           |
| `disassembler/`  | Opcode tables     | Disassembler string formatting   |
| `opcodes/`       | Opcode YAML       | `opcodes.h`, `opcodes.c`         |
| `abi/`           | ABI spec          | Calling convention stubs         |
| `docs/`          | ISA YAML          | RST/Markdown/HTML ISA manual     |