Home My Page Projects Code Snippets Project Openings SML/NJ
 Summary Activity Forums Tracker Lists Tasks Docs Surveys News SCM Files

# SCM Repository

[smlnj] View of /sml/trunk/src/MLRISC/Doc/latex/line-counts.tex
 [smlnj] / sml / trunk / src / MLRISC / Doc / latex / line-counts.tex

# View of /sml/trunk/src/MLRISC/Doc/latex/line-counts.tex

Thu Jun 1 18:34:03 2000 UTC (19 years, 1 month ago) by monnier
File size: 2060 byte(s)
bring revisions from the vendor branch to the trunk

\section{Line Counts}

\begin{Table}{|l|r|r|}{align=right} \hline
& SML/NJ & MLRISC \\ \hline
\begin{color}{#00aa00}Generic\end{color} & 3,023 & 6,814 \\
\begin{color}{#00aa00}Hppa\end{color}    &  725  & 2,285 \\
\begin{color}{#00aa00}Alpha\end{color}   &  614  & 2,316 \\ \hline
TOTAL & 4,362 & 11,415 \\ \hline
\end{Table}
The table shows the number of lines involved in a basic MLRISC code
generator for SML/NJ that only does graph coloring register
allocation. The SML/NJ column shows the number of lines specific to
SML/N and the MLRISC column shows the number of lines specific to
MLRISC. The \begin{color}{#00aa00}Generic\end{color} shows the
number of lines that are target independent for both SML/NJ and
MLRISC. The \begin{color}{#00aa00}Hppa\end{color} and
\begin{color}{#00aa00}Alpha\end{color} shows the number of lines that are
target dependent for both the HP Hppa and DEC Alpha targets.

The bulk of the \sml{3,023} generic to SML/NJ is involved in the
generation of MLRisc trees. Once this is done the incremental cost
of adding a target is between \sml{600} to \sml{700} lines.

The MLRISC column shows that the bulk of MLRISC is quite generic and
a client is saved from writing \sml{11,415} lines of code.

\begin{Table}{|l|r|r|}{align=left} \hline
& SML/NJ & MLRISC \\ \hline
\begin{color}{#00aa00}Generic\end{color} & 121 + 3,023 & 15,686 + 6,814\\
\begin{color}{#00aa00}Hppa\end{color}    & 32 + 725    & 920 + 2,285 \\
\begin{color}{#00aa00}Alpha\end{color}   & 614         & 2,316 \\ \hline
TOTAL & 153 + 4,362 & 16,606 + 11,415 \\ \hline
\end{Table}
If one were to include the preliminary numbers for global acyclic
scheduling in the above table, we find that the incremental cost
required by the client is quite small -- approximately \sml{153}
lines of which \sml{121} are generic. However, the scheduling
infra structure is quite large, a lot of it being quite generic.

\br{left=clear}