compilers/imcc/imc.c
Routines for handling imc_units,
which represent subs.
Moved all register allocation and spill code to reg_alloc.c
void imc_compile_all_units
- Compile all imc_units,
and free all memory of instructions and structures afterwards.
void imc_compile_unit
- imc_compile_unit is the main loop of the IMC compiler for each unit.
It operates on a single compilation unit at a time.
void imc_cleanup
- Any activity required to cleanup the compiler state and be ready for a new compiler invocation goes here.
static IMC_Unit *imc_new_unit
- Create a new IMC_Unit.
IMC_Unit *imc_open_unit
- Create a new IMC_Unit and "open" it for construction.
This sets the current state of the parser.
The unit can be closed later retaining all the current state.
void imc_close_unit
- Close a unit from compilation.
Does not destroy the unit,
leaves it on the list.
static void imc_free_unit
- Free all memory allocated of an IMC_Unit structure.