Parse local variables
This commit is contained in:
17
TODO
17
TODO
@ -1,9 +1,12 @@
|
||||
# Intermediate code generation
|
||||
|
||||
- To access named parameters and local variables inside a procedure, IR should
|
||||
be able to reference them. During the generation the needed information (e.g.
|
||||
offsets or registers) can be extracted from the symbol table and saved in the
|
||||
operands.
|
||||
- To access named parameters inside a procedure, IR should be able to reference
|
||||
them. During the generation the needed information (e.g. offsets or registers)
|
||||
can be extracted from the symbol table and saved in the operands.
|
||||
- Glue always generates the same intermediate variable (LocalVariable 0) for
|
||||
local variables. (LocalVariable 0) is handled the same as temporary variables
|
||||
that are currently saved only in registers. There space on the stack allocated
|
||||
for local variables.
|
||||
|
||||
# ELF generation
|
||||
|
||||
@ -15,3 +18,9 @@
|
||||
- Each temporary variable gets a tn register where n is the variable index. If
|
||||
there more variables the allocation will fail with out of bounds runtime
|
||||
error. Implement spill over.
|
||||
- The allocator puts temporary and local variables into the same registers,
|
||||
causing conflicts.
|
||||
|
||||
# Language
|
||||
|
||||
- Array support.
|
||||
|
Reference in New Issue
Block a user