# HG changeset patch # User mir3636 # Date 1487124399 -32400 # Node ID b35c8fcff7d5668bcc4e3d1e8bfa24deb4dbc939 # Parent 10c4d21cc7f4b38f707c77c410b91daad24580f9 update diff -r 10c4d21cc7f4 -r b35c8fcff7d5 final_main/chapter3.tex --- a/final_main/chapter3.tex Tue Feb 14 22:02:53 2017 +0900 +++ b/final_main/chapter3.tex Wed Feb 15 11:06:39 2017 +0900 @@ -76,6 +76,33 @@ } \end{lstlisting} +\section{Gearef、GearImpl} +Context には Allocation 等で生成した Data Gear へのポインタが格納されている。 +Code Gear が Context にアクセスする際、ポインタを使用してデータを取り出すためコードが煩雑になってしまう(リスト\ref{ref})。 +そこで Code Gear がデータを参照するための Gearef というマクロを定義した。 +Gearef に Context と型を渡すことでデータの参照が行える。 +また impliment を参照する際も、ポインタでの記述が複雑になってしまうため 同様に GearImpl を定義した。 +Gearef と GearImpl を用いたコードがリスト\ref{Gearef}である。 + +\begin{lstlisting}[frame=lrbt,label=ref,caption={Gearef、GearImplのないコード}] +__code pushSingleLinkedStack_stub(struct Context* context) { + SingleLinkedStack* stack = (SingleLinkedStack*)context->data[D_Stack]->Stack.stack->Stack.stack; + Data* data = Gearef(context, Stack)->data; + Data* data = context->data[D_Stack]->Stack.data; + enum Code next = context->data[D_Stack]->Stack.next; + goto pushSingleLinkedStack(context, stack, data, next); +} +\end{lstlisting} + +\begin{lstlisting}[frame=lrbt,label=Gearef,caption={Gearef、GearImplを使ったコード}] +__code pushSingleLinkedStack_stub(struct Context* context) { + SingleLinkedStack* stack = (SingleLinkedStack*)GearImpl(context, Stack, stack); + Data* data = Gearef(context, Stack)->data; + enum Code next = Gearef(context, Stack)->next; + goto pushSingleLinkedStack(context, stack, data, next); +} +\end{lstlisting} + \section{stub Code Gear} Code Gear が必要とする Data Gear を取り出す際に Context を通す必要がある。 diff -r 10c4d21cc7f4 -r b35c8fcff7d5 final_main/chapter5.tex --- a/final_main/chapter5.tex Tue Feb 14 22:02:53 2017 +0900 +++ b/final_main/chapter5.tex Wed Feb 15 11:06:39 2017 +0900 @@ -10,7 +10,7 @@ stub Code Gear を 自動生成することによって Code Gear の記述量を約半分にすることができる。 stub を生成するために perl スクリプトは指定された cbc ファイルの \_\_code型である Code Gear を取得し、引数から必要な Data Gear を選択する。 -この時既に stub Code Gear が生成されている Code Gear は無視される。 +この時既に stub Code Gear が記述されている Code Gear は無視される。 cbc ファイル(リスト\ref{stack_cbc}) に生成した stub Code Gear を c ファイル(\ref{stack_c})を出力する。 diff -r 10c4d21cc7f4 -r b35c8fcff7d5 final_main/main.aux --- a/final_main/main.aux Tue Feb 14 22:02:53 2017 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,70 +0,0 @@ -\relax -\@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@ }} -\@writefile{toc}{\contentsline {section}{\numberline {2.1}Continuation based C (CbC)}{2}} -\@writefile{lof}{\contentsline {figure}{\numberline {2.1}{\ignorespaces goto による code gear 間の継続}}{2}} -\newlabel{fig:cs}{{2.1}{2}} -\@writefile{toc}{\contentsline {section}{\numberline {2.2}Code Gear}{2}} -\newlabel{code_simple}{{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 code segment の軽量継続}{3}} -\@writefile{lof}{\contentsline {figure}{\numberline {2.2}{\ignorespaces code segment の軽量継続}}{3}} -\newlabel{fig:code_simple}{{2.2}{3}} -\newlabel{factorial}{{2.2}{3}} -\@writefile{lol}{\contentsline {lstlisting}{\numberline {2.2}\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{lof}{\contentsline {figure}{\numberline {2.3}{\ignorespaces 階乗を求める CbC プログラムの軽量継続図}}{4}} -\newlabel{fig:factorial}{{2.3}{4}} -\@writefile{toc}{\contentsline {section}{\numberline {2.3}環境付き継続}{4}} -\newlabel{gotoWithTheEnv}{{2.3}{4}} -\@writefile{lol}{\contentsline {lstlisting}{\numberline {2.3}環境付き継続}{4}} -\@writefile{lof}{\contentsline {figure}{\numberline {2.4}{\ignorespaces 環境付き継続}}{5}} -\newlabel{fig:gotoWithTheEnv}{{2.4}{5}} -\@writefile{toc}{\contentsline {chapter}{\numberline {第3章}Gears OS}{6}} -\@writefile{lof}{\addvspace {10\p@ }} -\@writefile{lot}{\addvspace {10\p@ }} -\@writefile{toc}{\contentsline {section}{\numberline {3.1}Gears OS}{6}} -\@writefile{lof}{\contentsline {figure}{\numberline {3.1}{\ignorespaces Gears OS の構成図}}{6}} -\newlabel{fig:gearsos}{{3.1}{6}} -\@writefile{toc}{\contentsline {section}{\numberline {3.2}Context}{7}} -\@writefile{toc}{\contentsline {section}{\numberline {3.3}interface の記述}{7}} -\newlabel{interface}{{3.1}{7}} -\@writefile{lol}{\contentsline {lstlisting}{\numberline {3.1}interface}{7}} -\newlabel{create}{{3.2}{7}} -\@writefile{lol}{\contentsline {lstlisting}{\numberline {3.2}createSingleLinkedStack}{7}} -\@writefile{toc}{\contentsline {section}{\numberline {3.4}stub Code Gear}{8}} -\@writefile{toc}{\contentsline {chapter}{\numberline {第4章}LLVM/clang による CbC の実装}{9}} -\@writefile{lof}{\addvspace {10\p@ }} -\@writefile{lot}{\addvspace {10\p@ }} -\@writefile{toc}{\contentsline {section}{\numberline {4.1}LLVM clang}{9}} -\@writefile{toc}{\contentsline {section}{\numberline {4.2}clang の基本構造}{9}} -\newlabel{sec:clang}{{4.2}{9}} -\@writefile{lof}{\contentsline {figure}{\numberline {4.1}{\ignorespaces clang の 処理過程}}{10}} -\newlabel{fig:clangProcess}{{4.1}{10}} -\@writefile{toc}{\contentsline {section}{\numberline {4.3}LLVM の基本構造}{10}} -\@writefile{lof}{\contentsline {figure}{\numberline {4.2}{\ignorespaces LLVM の 処理過程}}{11}} -\newlabel{fig:llvmProcess}{{4.2}{11}} -\@writefile{toc}{\contentsline {section}{\numberline {4.4}LLVM/clang のデバッグ}{11}} -\newlabel{ir_a}{{4.1}{11}} -\@writefile{lol}{\contentsline {lstlisting}{\numberline {4.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 LLVM IR コード 修正前}{11}} -\newlabel{ir_b}{{4.2}{12}} -\@writefile{lol}{\contentsline {lstlisting}{\numberline {4.2}\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 LLVM IR コード 修正後}{12}} -\@writefile{toc}{\contentsline {chapter}{\numberline {第5章}Context、stub Code Segment の自動生成}{13}} -\@writefile{lof}{\addvspace {10\p@ }} -\@writefile{lot}{\addvspace {10\p@ }} -\@writefile{toc}{\contentsline {section}{\numberline {5.1}stub Code Segment の生成}{13}} -\newlabel{stack_cbc}{{5.1}{13}} -\@writefile{lol}{\contentsline {lstlisting}{\numberline {5.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 SingleLinkedStack.cbc}{13}} -\newlabel{stack_c}{{5.2}{14}} -\@writefile{lol}{\contentsline {lstlisting}{\numberline {5.2}\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 生成される stub}{14}} -\@writefile{toc}{\contentsline {section}{\numberline {5.2}Context の生成}{14}} -\newlabel{context}{{5.3}{15}} -\@writefile{lol}{\contentsline {lstlisting}{\numberline {5.3}\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 context の定義}{15}} -\newlabel{init_context}{{5.4}{16}} -\@writefile{lol}{\contentsline {lstlisting}{\numberline {5.4}\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 生成された context}{16}} -\@writefile{toc}{\contentsline {chapter}{\numberline {第6章}今後の課題}{18}} -\@writefile{lof}{\addvspace {10\p@ }} -\@writefile{lot}{\addvspace {10\p@ }} diff -r 10c4d21cc7f4 -r b35c8fcff7d5 final_main/main.dvi Binary file final_main/main.dvi has changed diff -r 10c4d21cc7f4 -r b35c8fcff7d5 final_main/main.lof --- a/final_main/main.lof Tue Feb 14 22:02:53 2017 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,13 +0,0 @@ -\addvspace {10\p@ } -\addvspace {10\p@ } -\contentsline {figure}{\numberline {2.1}{\ignorespaces goto による code gear 間の継続}}{2} -\contentsline {figure}{\numberline {2.2}{\ignorespaces code segment の軽量継続}}{3} -\contentsline {figure}{\numberline {2.3}{\ignorespaces 階乗を求める CbC プログラムの軽量継続図}}{4} -\contentsline {figure}{\numberline {2.4}{\ignorespaces 環境付き継続}}{5} -\addvspace {10\p@ } -\contentsline {figure}{\numberline {3.1}{\ignorespaces Gears OS の構成図}}{6} -\addvspace {10\p@ } -\contentsline {figure}{\numberline {4.1}{\ignorespaces clang の 処理過程}}{10} -\contentsline {figure}{\numberline {4.2}{\ignorespaces LLVM の 処理過程}}{11} -\addvspace {10\p@ } -\addvspace {10\p@ } diff -r 10c4d21cc7f4 -r b35c8fcff7d5 final_main/main.log --- a/final_main/main.log Tue Feb 14 22:02:53 2017 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,245 +0,0 @@ -This is e-pTeX, Version 3.14159265-p3.7-160201-2.6 (utf8.euc) (TeX Live 2016) (preloaded format=platex 2017.2.4) 14 FEB 2017 21:33 -entering extended mode - restricted \write18 enabled. - %&-line parsing enabled. -**main -(./main.tex -pLaTeX2e <2016/11/29> (based on LaTeX2e <2017/01/01> patch level 1) -Babel <3.9r> and hyphenation patterns for 83 language(s) loaded. -(/usr/local/texlive/2016/texmf-dist/tex/platex/base/jreport.cls -Document Class: jreport 2016/11/22 v1.7b Standard pLaTeX class -\c@@paper=\count82 -(/usr/local/texlive/2016/texmf-dist/tex/platex/base/jsize12.clo -File: jsize12.clo 2016/11/22 v1.7b Standard pLaTeX file (size option) -) -\c@part=\count83 -\c@chapter=\count84 -\c@section=\count85 -\c@subsection=\count86 -\c@subsubsection=\count87 -\c@paragraph=\count88 -\c@subparagraph=\count89 -\c@figure=\count90 -\c@table=\count91 -\abovecaptionskip=\skip41 -\belowcaptionskip=\skip42 -\symmincho=\mathgroup4 -LaTeX Font Info: Overwriting symbol font `mincho' in version `bold' -(Font) JY1/mc/m/n --> JY1/gt/m/n on input line 653. -\toclineskip=\dimen118 -\@lnumwidth=\dimen119 -\bibindent=\dimen120 -\heisei=\count92 -) -(/usr/local/texlive/2016/texmf-dist/tex/latex/graphics/graphicx.sty -Package: graphicx 2014/10/28 v1.0g Enhanced LaTeX Graphics (DPC,SPQR) - -(/usr/local/texlive/2016/texmf-dist/tex/latex/graphics/keyval.sty -Package: keyval 2014/10/28 v1.15 key=value parser (DPC) -\KV@toks@=\toks15 -) -(/usr/local/texlive/2016/texmf-dist/tex/latex/graphics/graphics.sty -Package: graphics 2016/10/09 v1.0u Standard LaTeX Graphics (DPC,SPQR) - -(/usr/local/texlive/2016/texmf-dist/tex/latex/graphics/trig.sty -Package: trig 2016/01/03 v1.10 sin cos tan (DPC) -) -(/usr/local/texlive/2016/texmf-dist/tex/latex/graphics-cfg/graphics.cfg -File: graphics.cfg 2016/06/04 v1.11 sample graphics configuration -) -Package graphics Info: Driver file: dvipdfmx.def on input line 99. - -(/usr/local/texlive/2016/texmf-dist/tex/latex/graphics-def/dvipdfmx.def -File: dvipdfmx.def 2016/07/11 v4.12 LaTeX color/graphics driver for dvipdfmx (L -3/ChoF) -)) -\Gin@req@height=\dimen121 -\Gin@req@width=\dimen122 -) -(./mythesis.sty) -(/usr/local/texlive/2016/texmf-dist/tex/latex/multirow/multirow.sty -Package: multirow 2016/11/25 v2.2 Span multiple rows of a table -\multirow@colwidth=\skip43 -\multirow@cntb=\count93 -\multirow@dima=\skip44 -\bigstrutjot=\dimen123 -) -(/usr/local/texlive/2016/texmf-dist/tex/latex/here/here.sty) -(/usr/local/texlive/2016/texmf-dist/tex/latex/float/float.sty -Package: float 2001/11/08 v1.3d Float enhancements (AL) -\c@float@type=\count94 -\float@exts=\toks16 -\float@box=\box41 -\@float@everytoks=\toks17 -\@floatcapt=\box42 -) -(/usr/local/texlive/2016/texmf-dist/tex/latex/listings/listings.sty -\lst@mode=\count95 -\lst@gtempboxa=\box43 -\lst@token=\toks18 -\lst@length=\count96 -\lst@currlwidth=\dimen124 -\lst@column=\count97 -\lst@pos=\count98 -\lst@lostspace=\dimen125 -\lst@width=\dimen126 -\lst@newlines=\count99 -\lst@lineno=\count100 -\lst@maxwidth=\dimen127 - -(/usr/local/texlive/2016/texmf-dist/tex/latex/listings/lstmisc.sty -File: lstmisc.sty 2015/06/04 1.6 (Carsten Heinz) -\c@lstnumber=\count101 -\lst@skipnumbers=\count102 -\lst@framebox=\box44 -) -(/usr/local/texlive/2016/texmf-dist/tex/latex/listings/listings.cfg -File: listings.cfg 2015/06/04 1.6 listings configuration -)) -Package: listings 2015/06/04 1.6 (Carsten Heinz) - -(/usr/local/texlive/2016/texmf-dist/tex/latex/listings/lstlang1.sty -File: lstlang1.sty 2015/06/04 1.6 listings language file -) -(/usr/local/texlive/2016/texmf-dist/tex/latex/listings/lstmisc.sty -File: lstmisc.sty 2015/06/04 1.6 (Carsten Heinz) -) (./main.aux) -\openout1 = `main.aux'. - -LaTeX Font Info: Checking defaults for OML/cmm/m/it on input line 46. -LaTeX Font Info: ... okay on input line 46. -LaTeX Font Info: Checking defaults for T1/cmr/m/n on input line 46. -LaTeX Font Info: ... okay on input line 46. -LaTeX Font Info: Checking defaults for OT1/cmr/m/n on input line 46. -LaTeX Font Info: ... okay on input line 46. -LaTeX Font Info: Checking defaults for OMS/cmsy/m/n on input line 46. -LaTeX Font Info: ... okay on input line 46. -LaTeX Font Info: Checking defaults for OMX/cmex/m/n on input line 46. -LaTeX Font Info: ... okay on input line 46. -LaTeX Font Info: Checking defaults for U/cmr/m/n on input line 46. -LaTeX Font Info: ... okay on input line 46. -LaTeX Font Info: Checking defaults for JY1/mc/m/n on input line 46. -LaTeX Font Info: ... okay on input line 46. -LaTeX Font Info: Checking defaults for JT1/mc/m/n on input line 46. -LaTeX Font Info: ... okay on input line 46. -\c@lstlisting=\count103 -File: fig/ryukyu.pdf Graphic file (type pdf) - [0 - -] -LaTeX Font Info: Font shape `JT1/mc/bx/n' in size <24.88> not available -(Font) Font shape `JT1/gt/m/n' tried instead on input line 55. -LaTeX Font Info: Font shape `JY1/mc/bx/n' in size <24.88> not available -(Font) Font shape `JY1/gt/m/n' tried instead on input line 55. - (./main.toc -LaTeX Font Info: Font shape `JT1/mc/bx/n' in size <12> not available -(Font) Font shape `JT1/gt/m/n' tried instead on input line 1. -LaTeX Font Info: Font shape `JY1/mc/bx/n' in size <12> not available -(Font) Font shape `JY1/gt/m/n' tried instead on input line 1. -LaTeX Font Info: External font `cmex10' loaded for size -(Font) <12> on input line 3. -LaTeX Font Info: External font `cmex10' loaded for size -(Font) <8> on input line 3. -LaTeX Font Info: External font `cmex10' loaded for size -(Font) <6> on input line 3. -) -\tf@toc=\write3 -\openout3 = `main.toc'. - - [1 - -] (./main.lof) -\tf@lof=\write4 -\openout4 = `main.lof'. - - [2 - -] (./main.lol) -\tf@lol=\write5 -\openout5 = `main.lol'. - - -(./chapter1.tex [3 - -] -第 1 章 -) (./chapter2.tex [1 - -] -第 2 章 -LaTeX Font Info: Font shape `JT1/mc/bx/n' in size <17.28> not available -(Font) Font shape `JT1/gt/m/n' tried instead on input line 2. -LaTeX Font Info: Font shape `JY1/mc/bx/n' in size <17.28> not available -(Font) Font shape `JY1/gt/m/n' tried instead on input line 2. -File: fig/codesegment.pdf Graphic file (type pdf) - [2 - -] -LaTeX Font Info: Font shape `JT1/mc/bx/n' in size <10> not available -(Font) Font shape `JT1/gt/m/n' tried instead on input line 31. -LaTeX Font Info: Font shape `JY1/mc/bx/n' in size <10> not available -(Font) Font shape `JY1/gt/m/n' tried instead on input line 31. -LaTeX Font Info: Font shape `OT1/cmtt/bx/n' in size <10> not available -(Font) Font shape `OT1/cmtt/m/n' tried instead on input line 31. -File: fig/codesegment2.pdf Graphic file (type pdf) - -File: fig/factorial.pdf Graphic file (type pdf) - [3] - -LaTeX Font Warning: Font shape `JT1/mc/m/it' undefined -(Font) using `JT1/mc/m/n' instead on input line 109. - - -LaTeX Font Warning: Font shape `JY1/mc/m/it' undefined -(Font) using `JY1/mc/m/n' instead on input line 109. - -File: fig/gotowithenv.pdf Graphic file (type pdf) - [4]) (./chapter3.tex [5] -第 3 章 -File: fig/gearsos.pdf Graphic file (type pdf) - [6 - -] [7]) (./chapter4.tex [8] -第 4 章 -[9 - -] -File: fig/clangProcess.pdf Graphic file (type pdf) - [10] -File: fig/llvmProcess.pdf Graphic file (type pdf) - -Overfull \hbox (19.03606pt too wide) in paragraph at lines 78--79 - [] - [] - -[11]) (./chapter5.tex [12] -第 5 章 -[13 - -] [14] [15] [16]) (./chapter6.tex [17] -第 6 章 -) (./bibliography.tex [18 - -] - -LaTeX Warning: Empty `thebibliography' environment on input line 11. - -) (./thanks.tex [19 - -]) [20 - -] (./main.aux) - -LaTeX Font Warning: Some font shapes were not available, defaults substituted. - - ) -Here is how much of TeX's memory you used: - 2555 strings out of 493683 - 35151 string characters out of 6149654 - 377243 words of memory out of 5000000 - 6097 multiletter control sequences out of 15000+600000 - 14691 words of font info for 58 fonts, out of 8000000 for 9000 - 929 hyphenation exceptions out of 8191 - 26i,5n,49p,564b,1677s stack positions out of 5000i,500n,10000p,200000b,80000s - -Output written on main.dvi (24 pages, 88872 bytes). diff -r 10c4d21cc7f4 -r b35c8fcff7d5 final_main/main.lol --- a/final_main/main.lol Tue Feb 14 22:02:53 2017 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,11 +0,0 @@ -\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 code segment の軽量継続}{3} -\contentsline {lstlisting}{\numberline {2.2}\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} -\contentsline {lstlisting}{\numberline {2.3}環境付き継続}{4} -\contentsline {lstlisting}{\numberline {3.1}interface}{7} -\contentsline {lstlisting}{\numberline {3.2}createSingleLinkedStack}{7} -\contentsline {lstlisting}{\numberline {4.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 LLVM IR コード 修正前}{11} -\contentsline {lstlisting}{\numberline {4.2}\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 LLVM IR コード 修正後}{12} -\contentsline {lstlisting}{\numberline {5.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 SingleLinkedStack.cbc}{13} -\contentsline {lstlisting}{\numberline {5.2}\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 生成される stub}{14} -\contentsline {lstlisting}{\numberline {5.3}\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 context の定義}{15} -\contentsline {lstlisting}{\numberline {5.4}\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 生成された context}{16} diff -r 10c4d21cc7f4 -r b35c8fcff7d5 final_main/main.pdf Binary file final_main/main.pdf has changed diff -r 10c4d21cc7f4 -r b35c8fcff7d5 final_main/main.toc --- a/final_main/main.toc Tue Feb 14 22:02:53 2017 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,19 +0,0 @@ -\contentsline {chapter}{\numberline {第1章}メタ計算の重要性}{1} -\contentsline {chapter}{\numberline {第2章}Continuation based C (CbC)}{2} -\contentsline {section}{\numberline {2.1}Continuation based C (CbC)}{2} -\contentsline {section}{\numberline {2.2}Code Gear}{2} -\contentsline {section}{\numberline {2.3}環境付き継続}{4} -\contentsline {chapter}{\numberline {第3章}Gears OS}{6} -\contentsline {section}{\numberline {3.1}Gears OS}{6} -\contentsline {section}{\numberline {3.2}Context}{7} -\contentsline {section}{\numberline {3.3}interface の記述}{7} -\contentsline {section}{\numberline {3.4}stub Code Gear}{8} -\contentsline {chapter}{\numberline {第4章}LLVM/clang による CbC の実装}{9} -\contentsline {section}{\numberline {4.1}LLVM clang}{9} -\contentsline {section}{\numberline {4.2}clang の基本構造}{9} -\contentsline {section}{\numberline {4.3}LLVM の基本構造}{10} -\contentsline {section}{\numberline {4.4}LLVM/clang のデバッグ}{11} -\contentsline {chapter}{\numberline {第5章}Context、stub Code Segment の自動生成}{13} -\contentsline {section}{\numberline {5.1}stub Code Segment の生成}{13} -\contentsline {section}{\numberline {5.2}Context の生成}{14} -\contentsline {chapter}{\numberline {第6章}今後の課題}{18}