diff --git a/slides.tex b/slides.tex index 2bbe736..79a7640 100644 --- a/slides.tex +++ b/slides.tex @@ -1,6 +1,6 @@ % vim: spell spelllang=en -\documentclass[11pt,xcolor={usenames,dvipsnames}]{beamer} +\documentclass[12pt,xcolor={usenames,dvipsnames}]{beamer} \usetheme{Warsaw} \usepackage[utf8]{inputenc} \usepackage[english]{babel} @@ -183,7 +183,6 @@ Segmentation fault. \newcolumntype{a}{>{\columncolor{RedOrange}}l} \begin{frame}{DWARF unwinding data} - \vspace{2em} \tt \footnotesize \begin{center} \begin{tabular}{ @@ -205,7 +204,6 @@ Segmentation fault. 0084a1e & rsp+40 & c-56 & c-48 & c-40 & c-32 & c-24 & c-16 & c-8 \\ \end{tabular} \end{center} - \vspace{1em} \only<1>{\vspace{19mm}} \begin{columns} @@ -284,7 +282,7 @@ Segmentation fault. \end{center} In \prog{glibc}, \prog{lowlevellock.h}: - \alert{off by one error in unwinding data}. Result: + \alert{off by one error in unwinding data}. \lstinputlisting[language=gdb,numbers=none]{src/lowlevellock_backtrace} \end{column} @@ -294,7 +292,7 @@ Segmentation fault. \only<2->{ \begin{textblock*}{0.90\textwidth}[0.5,0](0.5\paperwidth,0.10\paperheight)% \begin{tcolorbox}[halign=center, colframe=red, colback=Lavender] - \bf \huge + \bf \LARGE Complex \,\& \,slow \end{tcolorbox} \end{textblock*} @@ -303,8 +301,8 @@ Segmentation fault. \only<3->{ \begin{textblock*}{0.90\textwidth}[0.5,0](0.5\paperwidth,0.30\paperheight)% \begin{tcolorbox}[halign=center, colframe=red, colback=Lavender] - \huge - \textbf{Pervasive:}\\ relied upon by debuggers, profilers, + \LARGE + \textbf{Pervasive:}\\ relied upon by profilers, debuggers, aaand\ldots{} \onslide<4->{ C++ exceptions. \\ @@ -419,18 +417,17 @@ Segmentation fault. \firsttblrows{}% \tblrowval{add}{\$0x68,\%rsp}{rsp+160}{c-8} \tblrowval{pop}{\%rbx}{rsp+56}{c-8} -\tblrowval{pop}{\%rbp}{rsp+48}{c-8} \end{tabularx} \end{table} \blknote{ \centering - \begin{overlayarea}{0.9\textwidth}{4.8ex} + \begin{overlayarea}{0.9\textwidth}{2.6em} \only<4>{Upon function call, \alert{ra = *(\reg{rsp})}} \only<5>{\texttt{push} decreases \reg{rsp} by 8: % \alert{ra = *(\reg{rsp} + 8)}} \only<6>{and again: % \alert{ra = *(\reg{rsp} + 16)}} - \only<7>{This \texttt{mov} leaves \reg{rsp} untouched: % + \only<7>{This \texttt{mov} leaves \reg{rsp} untouched: \\% \alert{ra = *(\reg{rsp} + 16)}} \only<8>{The unwinding table captures an \alert{abstract execution} of the code\ldots}