summaryrefslogtreecommitdiff
path: root/spec/compiler/compiler.txt
diff options
context:
space:
mode:
authorKyle Gunger <kgunger12@gmail.com>2021-04-30 14:06:58 -0400
committerKyle Gunger <kgunger12@gmail.com>2021-04-30 14:06:58 -0400
commitc625ed1cfe7f7ea4ab2a75a8a0a6a6772f86431c (patch)
tree55aab8a27a6cd3b0a979002afa6899a4bda94b74 /spec/compiler/compiler.txt
parent60f7c4f7272079e635010e464d8ce3a3a427f97f (diff)
Destroy my own code by using goto
Diffstat (limited to 'spec/compiler/compiler.txt')
-rw-r--r--spec/compiler/compiler.txt9
1 files changed, 7 insertions, 2 deletions
diff --git a/spec/compiler/compiler.txt b/spec/compiler/compiler.txt
index dbc64c0..df7a591 100644
--- a/spec/compiler/compiler.txt
+++ b/spec/compiler/compiler.txt
@@ -10,9 +10,14 @@ in their own file.
2) Validation
- 2a) The expander - expands pre-processor commands and macrosoperations
+ 2a) The expander - expands pre-processor commands and macro operations
2b) The validator - checks all requirements for all functions and expressions are valid
3) Translation
- 3a) ??? \ No newline at end of file
+ 3a) Variable resolver - chooses and creates an internal model of where variables are on the stack, as well as calling conventions for functions
+ 3b) Type translator - places and translates types (internal and external)
+ 3c) Container resolver - checks container (elf, exe, dll, app, out, etc.) and decides how to map the types for future linking
+ 3d) Final translation - translates all logic and expressions into native binary code
+ 3e) Optimization
+ 3f) Container Writer - writes the final output of the previous steps into the specified container