Parcourir la source

some tuple fixes

Jeremy Siek il y a 3 ans
Parent
commit
29ea58ae53
1 fichiers modifiés avec 5 ajouts et 4 suppressions
  1. 5 4
      book.tex

+ 5 - 4
book.tex

@@ -11941,8 +11941,11 @@ movq |$\itm{rhs}'$|, |$8(n+1)$|(%r11)
 \fi}
 \end{minipage}
 \end{center}
-The $\itm{lhs}'$, $\itm{tup}'$, and $\itm{rhs}'$ are obtained by
-translating $\itm{tup}$ and $\itm{rhs}$ to x86.  The move of $\itm{tup}'$ to
+\racket{The $\itm{lhs}'$, $\itm{tup}'$, and $\itm{rhs}'$}
+\python{The $\itm{tup}'$ and $\itm{rhs}'$}
+are obtained by translating from \LangCVec{} to x86.
+%
+The move of $\itm{tup}'$ to
 register \code{r11} ensures that offset expression
 \code{$-8(n+1)$(\%r11)} contains a register operand.  This requires
 removing \code{r11} from consideration by the register allocating.
@@ -11952,7 +11955,6 @@ Why not use \code{rax} instead of \code{r11}? Suppose we instead used
 \begin{lstlisting}
 movq |$\itm{tup}'$|, %rax
 movq |$\itm{rhs}'$|, |$8(n+1)$|(%rax)
-movq $0, |$\itm{lhs}'$|
 \end{lstlisting}
 Next, suppose that $\itm{rhs}'$ ends up as a stack location, so
 \code{patch\_instructions} would insert a move through \code{rax}
@@ -11961,7 +11963,6 @@ as follows.
 movq |$\itm{tup}'$|, %rax
 movq |$\itm{rhs}'$|, %rax
 movq %rax, |$8(n+1)$|(%rax)
-movq $0, |$\itm{lhs}'$|
 \end{lstlisting}
 But the above sequence of instructions does not work because we're
 trying to use \code{rax} for two different values ($\itm{tup}'$ and