Commit ffc54189 authored by Vladimír Uhlík's avatar Vladimír Uhlík
Browse files

Add actual state.

parent e4811f9d
Loading
Loading
Loading
Loading
Loading
+0 −44
Original line number Diff line number Diff line
@ONLINE{msl,
    title={Many-Sorted Logic},
    url={https://plato.stanford.edu/entries/logic-many-sorted/#ManySortLogiUnifFram},
    urldate={28.~2.~2024},
    author={María Manzano, Víctor Aranda}
}

@ONLINE{cstandard,
    title     = {C standard},
    url       = {https://www.open-std.org/jtc1/sc22/wg14/www/docs/n1256.pdf},
@@ -96,22 +89,6 @@
    langid    = {english}
}

@book{wb,
    title={\LaTeX},
    author={Přispěvatelé Wikibooks},
    url={https://en.wikibooks.org/wiki/LaTeX}
}

@book{handpt,
    author    = {Buss, Samuel R. (ed.)},
	address   = {New York},
	editor    = {Samuel R. Buss},
	publisher = {Elsevier},
	title     = {Handbook of Proof Theory},
	year      = {1998},
    isbn      = {0444898409}
}

@book{dragonbook,
    title = {Compilers: Principles, Techniques, and Tools (2nd Edition)},
    author = {A. V. Aho and  M. S. Lam and R. Sethi and   J. D. Ullman},
@@ -171,30 +148,9 @@
    pages = {10--11, 505--506}
}

@article{sorensen1998curry,
  title={Curry-Howard Isomorphism},
  author={S{\o}rensen, Morten Heine B and l Urzyczyn, Pawe},
  journal={Studies in Logic and the Foundations of Mathematics},
  volume={149},
  pages={77--101},
  year={1998}
}

@inproceedings{nadel2016bit,
  title={Bit-vector optimization},
  author={Nadel, Alexander and Ryvchin, Vadim},
  booktitle={Tools and Algorithms for the Construction and Analysis of Systems: 22nd International Conference,
            TACAS 2016, Held as Part of the European Joint Conferences on Theory and Practice of Software,
            ETAPS 2016, Eindhoven, The Netherlands, April 2-8, 2016, Proceedings 22},
  pages={851--867},
  year={2016},
  organization={Springer}
}

@misc{chibicc,
    author =       {Ueyama, Rui},
    title =        {chibicc},
    year =         {2013},
    publisher =    {GitHub},
    journal =      {GitHub repository},
    howpublished = {\url{https://github.com/rui314/chibicc}},
+0 −4
Original line number Diff line number Diff line
@@ -19,10 +19,6 @@ and \textit{type checker} as described in \myref{chapter}{compilers}. The result
front-end phase of compilation is an abstract syntax tree, from which the code generator
emits Cthulhu code.

The current version of the CCC does not support preproccessing. Therefore, the
input C programs can not contain \textit{macros} or \textit{include} directives. However, the
CCC support usage of the \texttt{NULL} macro, which is simply added to the grammar of the language. 

\section{Memory model}\label{memory_model}
This subsection introduces stack memory in the compiled C programs. Since the Cthulhu machine
does not support dynamic allocation at the time, it's wholly omitted from the description.
+134 −125

File changed.

Preview size limit exceeded, changes collapsed.

+212 −255

File changed.

Preview size limit exceeded, changes collapsed.

+2 −2
Original line number Diff line number Diff line
@@ -4,8 +4,8 @@
\addvspace {10\p@ }
\addvspace {10\p@ }
\addvspace {10\p@ }
\contentsline {figure}{\numberline {5.1}{\ignorespaces Memory layout of a C program in the Cthulhu machine.}}{23}{figure.caption.17}%
\contentsline {figure}{\numberline {5.2}{\ignorespaces Procedure emit\_number.}}{24}{figure.caption.18}%
\contentsline {figure}{\numberline {5.1}{\ignorespaces Memory layout of a C program in the Cthulhu machine.}}{23}{figure.caption.13}%
\contentsline {figure}{\numberline {5.2}{\ignorespaces Procedure emit\_number.}}{24}{figure.caption.14}%
\addvspace {10\p@ }
\addvspace {10\p@ }
\addvspace {10\p@ }