tcc(ID:3609/tcc001)


compiler for `C (pronounced "Tick-C")



Related languages
`C => tcc   Compiled by

References:
  • M. Poletto, D. R. Engler and M. F. Kaashoek, "tcc: a System for Fast, Flexible and High-level Dynamic Code Generation," view details External link: Cite seer Abstract: tcc is a compiler that provides efficient and high-level access to
    dynamic code generation. It implements the `C ("Tick-C")
    programming language, an extension of ANSI C that supports dynamic code generation.

    `C gives power and flexibility in specifying dynamically generated code: whereas most other systems use annotations to denote run-time invariants, `C allows the programmer to specify and compose arbitrary expressions and statements at run time. This degree of control is needed to efficiently implement some of the most important applications of dynamic code generation, such as "just in time" compilers and efficient simulators.

    The paper focuses on the techniques that allow tcc to provide `C's flexibility and expressiveness without sacrificing run-time code generation efficiency. These techniques include fast register allocation, efficient creation and composition of dynamic code specifications, and link-time analysis to reduce the size of dynamic code generator
          in [ACM SIGPLAN] SIGPLAN Notices 32(05) May 1997 view details