Cut out a bit more

This commit is contained in:
Théophile Bastian 2019-10-08 12:13:01 +02:00
parent 7cd581fbd0
commit 4ccd4618f7

View file

@ -259,6 +259,9 @@ $1 = 84
\begin{center} \begin{center}
\textbf{\Large{}Debug data is not only for debugging} \textbf{\Large{}Debug data is not only for debugging}
\end{center} \end{center}
\vspace{1em}
$\leadsto$ we might want \alert{an alternative time/space trade-off}
\end{frame} \end{frame}
\newcommand{\LinusMailOne}{ \newcommand{\LinusMailOne}{
@ -464,24 +467,6 @@ $1 = 84
\subsection{Compilation ahead-of-time} \subsection{Compilation ahead-of-time}
\begin{frame}{Why compiling?}
\begin{itemize}
\item Remember that \alert{DWARF is slow}!
\item \alert{Bytecode} interpreted \alert{on the fly} to
generate the data tables
\item Done so for \alert{extreme compacity}
\end{itemize}
\pause{}
\vspace{1em}
\begin{itemize}
\item Goal: \alert{reasonable time-space trade-off} to speed up DWARF
\item Tables are now \alert{compiled functions} returning the requested
DAWRF row
\end{itemize}
\end{frame}
\begin{frame}{Compilation overview} \begin{frame}{Compilation overview}
\begin{itemize} \begin{itemize}
\item Compiled to \alert{C code} \item Compiled to \alert{C code}
@ -501,6 +486,12 @@ $1 = 84
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}[shrink]{Compilation example: generated C} \begin{frame}[shrink]{Compilation example: generated C}
\lstinputlisting[language=C]{src/fib7/fib7.eh_elf_basic.c} \lstinputlisting[language=C]{src/fib7/fib7.eh_elf_basic.c}
\pause{}
\vspace{1em}
\begin{center}
The real code is optimised, but boils down to this.
\end{center}
\end{frame} \end{frame}
@ -517,12 +508,7 @@ $1 = 84
\item \texttt{libunwind-eh\_elf}: alternative implementation using \item \texttt{libunwind-eh\_elf}: alternative implementation using
\ehelfs{} \ehelfs{}
\item[$\leadsto$] \alert{alternative implementation} of libunwind, \item[$\leadsto$] almost \alert{``relink-and-play''} for existing projects!
almost plug-and-play for existing projects!
\begin{itemize}
\item[$\leadsto$] It is \alert{easy} to use \ehelfs{}: just
link against the right library!
\end{itemize}
\end{itemize} \end{itemize}
\end{frame} \end{frame}