 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
• |
Tree code is
simple (!) to generate from the
|
|
|
abstract syntax
of a language
|
|
|
• |
Mismatches
however
|
|
|
|
– |
ESEQ fixes order
of evaluation of subtrees
|
|
|
|
– |
CALL does the
same
|
|
|
|
– |
CALL nodes
within argument list of other CALL nodes
|
|
complicates
register allocation
|
|
|
|
– |
CJUMP has two
possible targets
|
|
|
• |
Use these as a
vehicle to look at tree rewriting
|
|