\relax 
\@writefile{toc}{\contentsline {section}{\numberline {1}Introduction}{1}}
\@writefile{toc}{\contentsline {section}{\numberline {2}Installation}{2}}
\@writefile{toc}{\contentsline {subsection}{\numberline {2.1}Building CIL on Windows with Microsoft Visual C}{3}}
\gdef \LT@i {\LT@entry 
    {4}{137.99892pt}\LT@entry 
    {1}{301.07999pt}}
\@writefile{toc}{\contentsline {section}{\numberline {3}Distribution Contents}{4}}
\@writefile{toc}{\contentsline {section}{\numberline {4}Compiling C to CIL}{5}}
\newlabel{sec-cabs2cil}{{4}{5}}
\@writefile{toc}{\contentsline {section}{\numberline {5}How to Use CIL}{10}}
\newlabel{sec-cil}{{5}{10}}
\@writefile{toc}{\contentsline {subsection}{\numberline {5.1}Using {\tt  cilly}, the CIL driver}{10}}
\@writefile{toc}{\contentsline {subsection}{\numberline {5.2}Using CIL as a library}{12}}
\@writefile{toc}{\contentsline {section}{\numberline {6}CIL API Documentation}{12}}
\newlabel{sec-api}{{6}{12}}
\@writefile{toc}{\contentsline {subsection}{\numberline {6.1}Using the visitor}{13}}
\newlabel{sec-visitor}{{6.1}{13}}
\@writefile{toc}{\contentsline {subsection}{\numberline {6.2}Interpreted Constructors and Deconstructors}{14}}
\@writefile{toc}{\contentsline {subsubsection}{\numberline {6.2.1}Performance considerations for interpreted constructors}{18}}
\@writefile{toc}{\contentsline {subsection}{\numberline {6.3}Printing and Debugging support}{18}}
\@writefile{toc}{\contentsline {subsection}{\numberline {6.4}Attributes}{19}}
\newlabel{sec-attrib}{{6.4}{19}}
\@writefile{toc}{\contentsline {paragraph}{Handling of predefined GCC attributes}{21}}
\@writefile{toc}{\contentsline {paragraph}{Handling of predefined MSVC attributes}{21}}
\@writefile{toc}{\contentsline {section}{\numberline {7}The CIL Driver}{21}}
\newlabel{sec-driver}{{7}{21}}
\@writefile{toc}{\contentsline {subsection}{\numberline {7.1}{\tt  cilly} Options}{23}}
\@writefile{toc}{\contentsline {subsection}{\numberline {7.2}{\tt  cilly.asm} Options}{24}}
\newlabel{sec-cilly-asm-options}{{7.2}{24}}
\@writefile{toc}{\contentsline {subsection}{\numberline {7.3}Internal Options}{25}}
\newlabel{sec-cilly-internal-options}{{7.3}{25}}
\@writefile{toc}{\contentsline {subsection}{\numberline {7.4}Specifying a machine model}{26}}
\newlabel{sec-cilmachine}{{7.4}{26}}
\@writefile{toc}{\contentsline {section}{\numberline {8}Library of CIL Modules}{27}}
\newlabel{sec-Extension}{{8}{27}}
\@writefile{toc}{\contentsline {subsection}{\numberline {8.1}Control-Flow Graphs}{27}}
\newlabel{sec-cfg}{{8.1}{27}}
\@writefile{toc}{\contentsline {subsubsection}{\numberline {8.1.1}The CFG module (new in CIL 1.3.5)}{27}}
\@writefile{toc}{\contentsline {subsubsection}{\numberline {8.1.2}Simplified control flow}{27}}
\@writefile{toc}{\contentsline {subsection}{\numberline {8.2}Data flow analysis framework}{28}}
\@writefile{toc}{\contentsline {subsection}{\numberline {8.3}Inliner}{28}}
\@writefile{toc}{\contentsline {subsection}{\numberline {8.4}Dominators}{28}}
\@writefile{toc}{\contentsline {subsection}{\numberline {8.5}Points-to Analysis}{28}}
\@writefile{toc}{\contentsline {subsection}{\numberline {8.6}StackGuard}{29}}
\@writefile{toc}{\contentsline {subsection}{\numberline {8.7}Heapify}{30}}
\@writefile{toc}{\contentsline {subsection}{\numberline {8.8}One Return}{30}}
\@writefile{toc}{\contentsline {subsection}{\numberline {8.9}Partial Evaluation and Constant Folding}{30}}
\newlabel{enum:partial-empty-proc}{{1}{30}}
\newlabel{enum:partial-const-func}{{2}{30}}
\@writefile{toc}{\contentsline {subsection}{\numberline {8.10}Reaching Definitions}{31}}
\@writefile{toc}{\contentsline {subsection}{\numberline {8.11}Available Expressions}{32}}
\@writefile{toc}{\contentsline {subsection}{\numberline {8.12}Liveness Analysis}{32}}
\@writefile{toc}{\contentsline {subsection}{\numberline {8.13}Dead Code Elimination}{33}}
\@writefile{toc}{\contentsline {subsection}{\numberline {8.14}Simple Memory Operations}{33}}
\@writefile{toc}{\contentsline {subsection}{\numberline {8.15}Simple Three-Address Code}{33}}
\@writefile{toc}{\contentsline {subsection}{\numberline {8.16}Converting C to C++}{34}}
\@writefile{toc}{\contentsline {subsection}{\numberline {8.17}Generating LLVM code (new in 1.3.7)}{34}}
\@writefile{toc}{\contentsline {section}{\numberline {9}Controlling CIL}{35}}
\@writefile{toc}{\contentsline {section}{\numberline {10}GCC Extensions}{35}}
\@writefile{toc}{\contentsline {section}{\numberline {11}CIL Limitations}{36}}
\@writefile{toc}{\contentsline {section}{\numberline {12}Known Bugs and Limitations}{36}}
\@writefile{toc}{\contentsline {subsection}{\numberline {12.1}Code that CIL won't compile}{36}}
\@writefile{toc}{\contentsline {subsection}{\numberline {12.2}Code that behaves differently under CIL}{37}}
\@writefile{toc}{\contentsline {subsection}{\numberline {12.3}Effects of the CIL translation}{38}}
\@writefile{toc}{\contentsline {section}{\numberline {13}Using the merger}{38}}
\newlabel{sec-merger}{{13}{38}}
\@writefile{toc}{\contentsline {section}{\numberline {14}Using the patcher}{40}}
\newlabel{sec-patcher}{{14}{40}}
\@writefile{toc}{\contentsline {section}{\numberline {15}Debugging support}{42}}
\newlabel{sec-debugger}{{15}{42}}
\@writefile{toc}{\contentsline {section}{\numberline {16}Who Says C is Simple?}{42}}
\newlabel{sec-simplec}{{16}{42}}
\@writefile{toc}{\contentsline {subsection}{\numberline {16.1}Standard C}{42}}
\@writefile{toc}{\contentsline {subsection}{\numberline {16.2}GCC ugliness}{45}}
\newlabel{sec-ugly-gcc}{{16.2}{45}}
\@writefile{toc}{\contentsline {subsection}{\numberline {16.3}Microsoft VC ugliness}{47}}
\@writefile{toc}{\contentsline {section}{\numberline {17}Authors}{47}}
\@writefile{toc}{\contentsline {section}{\numberline {18}License}{47}}
\@writefile{toc}{\contentsline {section}{\numberline {19}Bug reports}{48}}
