`C and tcc

`C is an extension of ANSI C that provides the programmer with the ability to explicitly denote dynamic code generation (the creation of executable code at run time, while the application is running) at the level of C statements and expressions. `C provides primitives for dynamic code generation which are flexible, expressive, and machine-independent. The changes to ANSI C are small: `C preserves the spirit and "feel" of C, making it easy to learn and facilitating incremental modification of existing C code.

tcc is an implementation of `C. It is based on the lcc compiler. It generates code at a rate on the order of 60-600 instructions per generated instruction, depending on the level of dynamic optimization employed.tcc generates code for DECstations running Ultrix and Sun SparcStations running SunOS and Solaris. It also works as a cross-compiler for the architecture implemented by the SimpleScalar simulator tool set.


Max Poletto, the main person working on the `C/tcc research project on dynamic compilation, graduated in the summer of 1999, and the project is now over. tcc is still available for download, but is no longer being developed or maintained. A planned port to the Intel x86 architecture has been scrapped.

To Learn More

More information about `C and tcc:
Back to PDOS.