|
@@ -3714,6 +3714,8 @@ if_end21289:
|
|
|
|
|
|
\marginpar{\scriptsize To do: look through Andre's code comments for extra
|
|
|
things to discuss in this chapter. \\ --Jeremy}
|
|
|
+\marginpar{\scriptsize To do: Flesh out this chapter, e.g., make sure
|
|
|
+ all the IR grammars are spelled out! \\ --Jeremy}
|
|
|
|
|
|
In this chapter we study the implementation of mutable tuples (called
|
|
|
``vectors'' in Racket). This language feature is the first to require
|
|
@@ -4738,6 +4740,10 @@ $8n-8$\key{(\%rsp)} & $8n+8$(\key{\%rbp})& argument $n$ \\
|
|
|
|
|
|
\section{The compilation of functions}
|
|
|
|
|
|
+\marginpar{\scriptsize To do: discuss the need to push and
|
|
|
+ pop call-live pointers (vectors and functions)
|
|
|
+ to the root stack \\ --Jeremy}
|
|
|
+
|
|
|
Now that we have a good understanding of functions as they appear in
|
|
|
$R_4$ and the support for functions in x86, we need to plan the
|
|
|
changes to our compiler, that is, do we need any new passes and/or do
|