Mercurial > hg > Papers > 2014 > kaito_thesis
diff final_main/main.aux @ 0:ce014a8b669e draft default tip
wrote final thesis
author | kaito |
---|---|
date | Mon, 21 Apr 2014 21:42:23 +0900 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/final_main/main.aux Mon Apr 21 21:42:23 2014 +0900 @@ -0,0 +1,147 @@ +\relax +\citation{gcc46} +\citation{FreeBSD} +\@writefile{toc}{\contentsline {chapter}{\numberline {第1章}背景と目的}{1}} +\@writefile{lof}{\addvspace {10\p@ }} +\@writefile{lot}{\addvspace {10\p@ }} +\newlabel{chap:introduction}{{1}{1}} +\@writefile{toc}{\contentsline {chapter}{\numberline {第2章}Continuation based C (CbC)}{2}} +\@writefile{lof}{\addvspace {10\p@ }} +\@writefile{lot}{\addvspace {10\p@ }} +\newlabel{chapter:CbC}{{2}{2}} +\@writefile{toc}{\contentsline {section}{\numberline {2.1}CbCとは}{2}} +\@writefile{lof}{\contentsline {figure}{\numberline {2.1}{\ignorespaces goto による code segment 間の継続}}{2}} +\newlabel{fig:cs}{{2.1}{2}} +\@writefile{toc}{\contentsline {section}{\numberline {2.2}code segment}{2}} +\@writefile{toc}{\contentsline {section}{\numberline {2.3}コード例}{3}} +\newlabel{factorial}{{2.1}{3}} +\@writefile{lol}{\contentsline {lstlisting}{\numberline {2.1}\relax \fontsize {10}{12}\selectfont \abovedisplayskip 10\p@ plus2\p@ minus5\p@ \abovedisplayshortskip \z@ plus3\p@ \belowdisplayshortskip 6\p@ plus3\p@ minus3\p@ \def \leftmargin \leftmargini \parsep 5\p@ plus2.5\p@ minus\p@ \topsep 10\p@ plus4\p@ minus6\p@ \itemsep 5\p@ plus2.5\p@ minus\p@ {\leftmargin \leftmargini \topsep 6\p@ plus2\p@ minus2\p@ \parsep 3\p@ plus2\p@ minus\p@ \itemsep \parsep }\belowdisplayskip \abovedisplayskip 階乗を求める CbC プログラムの例}{3}} +\@writefile{toc}{\contentsline {section}{\numberline {2.4}環境付き継続}{3}} +\newlabel{sec:withEnv}{{2.4}{3}} +\newlabel{gotoWithTheEnv}{{2.2}{4}} +\@writefile{lol}{\contentsline {lstlisting}{\numberline {2.2}環境付き継続}{4}} +\@writefile{lof}{\contentsline {figure}{\numberline {2.2}{\ignorespaces 環境付き継続}}{4}} +\newlabel{fig:gotoWithTheEnv}{{2.2}{4}} +\@writefile{toc}{\contentsline {chapter}{\numberline {第3章}LLVM/clang}{6}} +\@writefile{lof}{\addvspace {10\p@ }} +\@writefile{lot}{\addvspace {10\p@ }} +\newlabel{chapter:LLVM/clang}{{3}{6}} +\@writefile{toc}{\contentsline {section}{\numberline {3.1}LLVM/clang の概要}{6}} +\@writefile{toc}{\contentsline {section}{\numberline {3.2}clang の基本構造}{6}} +\citation{clang} +\citation{clangAPI} +\@writefile{lof}{\contentsline {figure}{\numberline {3.1}{\ignorespaces clang の 処理過程}}{7}} +\newlabel{fig:clangProcess}{{3.1}{7}} +\@writefile{toc}{\contentsline {subsection}{\numberline {3.2.1}Abstract Syntax Tree (AST)}{7}} +\newlabel{ASTSampleCode}{{3.1}{8}} +\@writefile{lol}{\contentsline {lstlisting}{\numberline {3.1}sample.c}{8}} +\newlabel{AST}{{3.2}{8}} +\@writefile{lol}{\contentsline {lstlisting}{\numberline {3.2}sample.c の AST}{8}} +\@writefile{toc}{\contentsline {subsection}{\numberline {3.2.2}QualType}{9}} +\newlabel{sec:QualType}{{3.2.2}{9}} +\@writefile{lof}{\contentsline {figure}{\numberline {3.2}{\ignorespaces const int * に対応する QualType}}{9}} +\newlabel{fig:qual}{{3.2}{9}} +\citation{LLVM} +\@writefile{toc}{\contentsline {section}{\numberline {3.3}LLVM の基本構造}{10}} +\newlabel{sec:llvm}{{3.3}{10}} +\citation{LLVMIR} +\@writefile{lof}{\contentsline {figure}{\numberline {3.3}{\ignorespaces LLVM の 処理過程}}{11}} +\newlabel{fig:llvmProcess}{{3.3}{11}} +\@writefile{toc}{\contentsline {subsection}{\numberline {3.3.1}LLVM IR}{11}} +\newlabel{IRtestC}{{3.3}{11}} +\@writefile{lol}{\contentsline {lstlisting}{\numberline {3.3}c での関数 test}{11}} +\newlabel{IRtestIR}{{3.4}{12}} +\@writefile{lol}{\contentsline {lstlisting}{\numberline {3.4}LLVM IR での関数 test}{12}} +\@writefile{toc}{\contentsline {subsection}{\numberline {3.3.2}SelectionDAG}{12}} +\@writefile{toc}{\contentsline {subsection}{\numberline {3.3.3}Machine Code}{13}} +\newlabel{MachineCodeSSA}{{3.5}{13}} +\@writefile{lol}{\contentsline {lstlisting}{\numberline {3.5}test関数の Machine Code (SSA)}{13}} +\newlabel{MachineCodeNonSSA}{{3.6}{14}} +\@writefile{lol}{\contentsline {lstlisting}{\numberline {3.6}test関数の Machine Code (non-SSA)}{14}} +\citation{LLVM} +\@writefile{toc}{\contentsline {subsection}{\numberline {3.3.4}MC Layer}{15}} +\@writefile{toc}{\contentsline {subsection}{\numberline {3.3.5}最適化機構}{15}} +\@writefile{toc}{\contentsline {section}{\numberline {3.4}Tail call elimination}{15}} +\@writefile{toc}{\contentsline {subsection}{\numberline {3.4.1}Tail call elimination 概要}{15}} +\newlabel{tailCall}{{3.7}{16}} +\@writefile{lol}{\contentsline {lstlisting}{\numberline {3.7}Tail call の例}{16}} +\@writefile{lof}{\contentsline {figure}{\numberline {3.4}{\ignorespaces Tail call elimination}}{16}} +\newlabel{fig:TCE}{{3.4}{16}} +\newlabel{tailCall2}{{3.8}{16}} +\@writefile{lol}{\contentsline {lstlisting}{\numberline {3.8}caller, B, main 関数の定義}{16}} +\citation{LLVM} +\newlabel{asmCaller}{{3.9}{17}} +\@writefile{lol}{\contentsline {lstlisting}{\numberline {3.9}関数 caller (tail call elimination 無し)}{17}} +\newlabel{asmCallerTCE}{{3.10}{17}} +\@writefile{lol}{\contentsline {lstlisting}{\numberline {3.10}関数 caller (tail call elimination 有り)}{17}} +\@writefile{toc}{\contentsline {subsection}{\numberline {3.4.2}Tail call elimination の要件}{17}} +\newlabel{sec:TCE}{{3.4.2}{17}} +\@writefile{toc}{\contentsline {chapter}{\numberline {第4章}実装}{19}} +\@writefile{lof}{\addvspace {10\p@ }} +\@writefile{lot}{\addvspace {10\p@ }} +\@writefile{toc}{\contentsline {section}{\numberline {4.1}clang 側での \_\_code 型の追加とその構文解析}{19}} +\newlabel{sec:add__code}{{4.1}{19}} +\newlabel{token}{{4.1}{20}} +\@writefile{lol}{\contentsline {lstlisting}{\numberline {4.1}TokenKinds.def}{20}} +\newlabel{TST}{{4.2}{20}} +\@writefile{lol}{\contentsline {lstlisting}{\numberline {4.2}Specifiers.h}{20}} +\newlabel{clangType}{{4.3}{20}} +\@writefile{lol}{\contentsline {lstlisting}{\numberline {4.3}BuiltinTypes.def}{20}} +\newlabel{parse__Code}{{4.4}{21}} +\@writefile{lol}{\contentsline {lstlisting}{\numberline {4.4}\_\_code の parse}{21}} +\newlabel{langOpt}{{4.5}{21}} +\@writefile{lol}{\contentsline {lstlisting}{\numberline {4.5}LangOptions の追加}{21}} +\@writefile{toc}{\contentsline {section}{\numberline {4.2}LLVM 側での \_\_code 型の追加}{21}} +\newlabel{LLVMType}{{4.6}{22}} +\@writefile{lol}{\contentsline {lstlisting}{\numberline {4.6}LLVMContextImpl.h}{22}} +\newlabel{LLVMType}{{4.7}{22}} +\@writefile{lol}{\contentsline {lstlisting}{\numberline {4.7}Type.h}{22}} +\@writefile{toc}{\contentsline {section}{\numberline {4.3}継続のための goto syntax の構文解析}{22}} +\newlabel{ParseStmt}{{4.8}{22}} +\@writefile{lol}{\contentsline {lstlisting}{\numberline {4.8}goto 文の構文解析}{22}} +\newlabel{ParseCbCGotoStmt}{{4.9}{23}} +\@writefile{lol}{\contentsline {lstlisting}{\numberline {4.9}ParseCbCGotoStatement}{23}} +\@writefile{toc}{\contentsline {section}{\numberline {4.4}Tail call elimination pass の条件の達成}{24}} +\newlabel{sec:TCEreq}{{4.4}{24}} +\newlabel{PassManager}{{4.10}{24}} +\@writefile{lol}{\contentsline {lstlisting}{\numberline {4.10}tail call elimnation pass の追加}{24}} +\newlabel{CC}{{4.11}{26}} +\@writefile{lol}{\contentsline {lstlisting}{\numberline {4.11}fastcc の追加}{26}} +\newlabel{option}{{4.12}{26}} +\@writefile{lol}{\contentsline {lstlisting}{\numberline {4.12}オプションの引き継ぎ}{26}} +\@writefile{toc}{\contentsline {section}{\numberline {4.5}環境付き継続の実装}{27}} +\@writefile{toc}{\contentsline {subsection}{\numberline {4.5.1}clang により追加されるコード}{27}} +\newlabel{autoCodeGenB}{{4.13}{27}} +\@writefile{lol}{\contentsline {lstlisting}{\numberline {4.13}環境付き継続の例}{27}} +\newlabel{autoCodeGenA}{{4.14}{27}} +\@writefile{lol}{\contentsline {lstlisting}{\numberline {4.14}内部での解釈}{27}} +\@writefile{toc}{\contentsline {section}{\numberline {4.6}実装方法}{28}} +\newlabel{IncludeHeader}{{4.15}{29}} +\@writefile{lol}{\contentsline {lstlisting}{\numberline {4.15}IncludeHeader 関数}{29}} +\newlabel{return1}{{4.16}{30}} +\@writefile{lol}{\contentsline {lstlisting}{\numberline {4.16}CreateRetCS 関数}{30}} +\newlabel{CbC_env}{{4.17}{31}} +\@writefile{lol}{\contentsline {lstlisting}{\numberline {4.17}Create\_\_CbC\_envStruct 関数}{31}} +\newlabel{DeclStmt}{{4.18}{32}} +\@writefile{lol}{\contentsline {lstlisting}{\numberline {4.18}CreateDeclStmt 関数}{32}} +\newlabel{assignment}{{4.19}{33}} +\@writefile{lol}{\contentsline {lstlisting}{\numberline {4.19}CreateAssignmentStmt 関数}{33}} +\@writefile{toc}{\contentsline {chapter}{\numberline {第5章}評価と考察}{34}} +\@writefile{lof}{\addvspace {10\p@ }} +\@writefile{lot}{\addvspace {10\p@ }} +\@writefile{lot}{\contentsline {table}{\numberline {5.1}{\ignorespaces Mac OS X での Micro-C, GCC, LLVM/clang の実行速度比較 (単位 : 秒)}}{34}} +\newlabel{result}{{5.1}{34}} +\@writefile{toc}{\contentsline {section}{\numberline {5.1}考察}{34}} +\@writefile{toc}{\contentsline {chapter}{\numberline {第6章}今後の課題}{36}} +\@writefile{lof}{\addvspace {10\p@ }} +\@writefile{lot}{\addvspace {10\p@ }} +\bibcite{gcc46}{1} +\bibcite{FreeBSD}{2} +\bibcite{clang}{3} +\bibcite{clangAPI}{4} +\bibcite{LLVM}{5} +\bibcite{LLVMIR}{6} +\@writefile{toc}{\contentsline {chapter}{\numberline {付 録A }conv1 のソースコード}{39}} +\@writefile{lof}{\addvspace {10\p@ }} +\@writefile{lot}{\addvspace {10\p@ }} +\newlabel{conv1}{{A}{39}}