diff --git a/verfahren.pdf b/verfahren.pdf index dba7581..f7c7ee4 100644 Binary files a/verfahren.pdf and b/verfahren.pdf differ diff --git a/verfahren.tex b/verfahren.tex index dc5406d..84eef19 100644 --- a/verfahren.tex +++ b/verfahren.tex @@ -326,5 +326,22 @@ \end{enumerate} \section{Registerzuteilung} +\begin{itemize} + \item Lebendigkeit der Definition eines symbolischen Registers (einer Variable), wenn Pfad von Eintrittsknoten über Definition und Definition nach Verwendung noch gebraucht wird + \item Lebensspanne einer Definition umfasst alle Punkte, an denen Definition lebendig ist + \item Lebensspannen zweier Definitionen des selben symbolischen Registers verschmelzen, sofern sich beide überschneiden + \item Generelles Vorgehen: \begin{enumerate} + \item Konstruktion des Kollisionsgraphs:\begin{enumerate} + \item Knoten für jede Lebensspanne von symbolischen Registern + \item Kanten zwischen kollidierenden (sich überschneidende) Lebensspannen + \end{enumerate} + \item Konstruktion des Interferenzgraphs:\begin{enumerate} + \item Erweiterung des Kollisionsgraphs um einen Knoten pro realem Register + \item Einfügen von Kanten zwischen allen realen Registern (\enquote{Clique}) + \item Einfügen von Kanten zwischen sich (aufgrund von Limitationen der Befehle) ausschließenden realen und symbolischen Registern + \end{enumerate} + \item Färben des Interferenzgraphs mit $r$ (Anzahl der realen Register) Farben entspricht Registerzuteilung + \end{enumerate} +\end{itemize} %\printbibliography \end{document}