C source
Standard input
▶Output
1Tokenize
The lexer expands #defines and splits the source into tokens.
2Parse
A recursive-descent parser builds the syntax tree.
3Generate assembly
Code generation type-checks the tree and emits ARM assembly plus the runtime it uses.
4Assemble
The assembler encodes each instruction as a 32-bit word, split into its fields.