Next: TC-7 Samples, Up: TC-7 [Contents][Index]
Things to learn during this stage that you should remember:
Different kinds of microprocessors, different spirits in assembly.
Understanding how computer actually run.
Recursive languages need memory management to implement automatic variables.
Writing/debugging a code generator with MonoBURG.
ios::xalloc
Instr
are contained in Instrs
, itself in Fragment
,
itself in Fragments
. Suppose you mean to add a debugging flag to
print an Instr
, what shall you do? Add another argument to all
the dump
methods in these four hierarchies? The problem with
Temp
is even worse: they are scattered everywhere, yet we would like
to specify how to output them thanks to a std::map
. Should we
pass this map in each and every single call?
Using ios::xalloc
, ostream::pword
, and
ostream::iword
saves the day.