%% -*- mode: latex; TeX-master: "compilerbau.tex"; -*-

\begin{slide}{Peephole-Optimierung, Instruction Selection}

\kopf{$ $Id: is.tex,v 1.1 2011-10-16 14:06:16 waldmann Exp $ $}

\begin{itemize}\itemsep 2pt
\item
Zwischencode-Liste übersetzen in Zielcode-Liste.
\item
kurze Blöcke von aufeinanderfolgenden Anweisungen optimieren
(peephole --- Blick durchs Schlüsselloch) 
\item
und dann passenden Maschinenbefehl auswählen.
\item
durch Mustervergleich (pattern matching), \\
dabei Kosten berechnen und optimieren
\end{itemize}
\bigskip

\verb|gcc|: Zwischencode ist 
maschinenunabhängige RTL (Register Transfer Language),

damit ist nur Instruction Selection maschinenabhängig

$\to$ leichter portierbar.

\end{slide}
