No announcement yet.

Tiny C Compiler Is Still Around, But Not Quickly Moving

  • Filter
  • Time
  • Show
Clear All
new posts

  • Tiny C Compiler Is Still Around, But Not Quickly Moving

    Phoronix: Tiny C Compiler Is Still Around, But Not Quickly Moving

    While the Tiny C Compiler may be quick at compiling code, the lightweight C compiler hasn't been too quick to advance with new releases and features...

  • #2
    Rob Landley has been thinking about branching off of the old tcc code and creating a new more flexible version called qcc. Which would reuse the TCG code generator from QEMU. Seems like a good idea possibly benefiting QEMU as well.

    For the time being though he is mainly working on toybox which is a BSD licensed busybox alike that focuses maintainabilty and fedelity to specs. It is also worth noting that Rob knows his stuff and his branch of tcc had 64bit support before the "official" one which was stuck rotting in ancient CVS at the time.
    Last edited by cb88; 11-15-2012, 01:56 PM.


    • #3
      Tiny is tiny

      I suspect that "tiny" and "marvelous new features" are, to some extent, going to be mutually exclusive. You can't have a rapidly expanding feature set and still be tiny. Also, it's filling a niche need rather than the mainstream needs. It only makes sense that the project moves a bit slower.


      • #4
        Cute thing.

        It has small source code that is relatively understandable and manageable.


        • #5
          "C script supported : just add '#!/usr/local/bin/tcc -run' at the first line of your C source, and execute it directly from the command line."

          Nice hack. Enables one to use C as an pseudointerpreted language ;o)


          • #6
            0.9.26 released

            Greetings everybody,

            it is my pleasure to finally announce the release of TinyCC 0.9.26. This
            release has been longer than previously to come along but it's finally here.
            This release would not have been possible without the contributions of many
            developpers and testers. Thank you:

            Akim Demaille
            Alexandre Becoulet
            Ali Gholami Rudi
            Andrew Mulbrook
            Ben Bacarisse
            Bernhard Reutner-Fischer
            Changming Xu
            Christian Jullien
            Claudio Bley
            Daniel Gl?ckner
            Detlef Riekenberg
            Domingo Alvarez Duarte
            Frederic Feret
            Gabriel Corneanu
            Henry Kroll III
            Hitoshi Mitake
            Jaroslav Kysela
            Joe Soroka
            Kirill Smelkov
            Luigi Rizzo
            Manuel Simoni
            Michael Matz
            Milutin Jovanovic
            Nicolas Limare
            Nikos Mavrogiannopoulos
            Ramsay Jones
            Romain Francoise
            Roy Tam
            Sam Watkins
            Sergei Trofimovich
            Sergey Vinokurov
            Shinichiro Hamaji
            Soloist Deng
            Thomas Preud'homme
            Timo VJ Lahde
            Urs Jan?en
            Vincent Lefevre

            for improving tinycc and:

            Aharon Robbins
            Austin English
            Christian Jullien
            Didier Barvaux
            Domingo Alvarez Duarte
            Feng Nauh
            Jerry Reed
            Ramsay Jones
            Robert Clausecker
            Urs Jan?en

            for your prompt and thorough testing. A special thanks as well for Grishka,
            who despite not doing the release, have constantly supervized the
            developpement of TinyCC by reviewing most of the commits that where done, by
            giving advices, and by all the commits he did himself.

            Most important changes since previous release are summarized below. For more
            details, please refer to the git log.

            *** Major changes since TinyCC 0.9.25 ***

            User interface:
            - -MD/-MF (automatically generate dependencies for make)
            - -pthread option (same as -D_REENTRANT -lpthread) (Henry Kroll III)
            - -m32/-m64 to re-exec cross compiler (Henry Kroll III)
            - -Wl, Mimic all GNU -option forms supported by ld (Kirill Smelkov)
            - new LIBTCCAPI tcc_set_options() (grischka)

            - Many improvements for x86-64 target (Shinichiro Hamaji, Michael Matz,
            - x86-64 assembler (Frederic Feret)
            - Many improvements for ARM target (Daniel Gl?ckner, Thomas Preud'homme)
            - Support WinCE PE ARM (Timo VJ Lahde)
            - Support ARM hardfloat calling convention (Thomas Preud'homme)
            - Support SELinux (Security-Enhanced Linux) (Henry Kroll III)
            - Support Debian GNU/kFreeBSD kernels (Pierre Chifflier)
            - Support GNU/Hurd kernels (Thomas Preud'homme)
            - Support OSX (tcc -run only) (Milutin Jovanovic)
            - Support multiarch configuration (Thomas Preud'homme)
            - Support out-of-tree build (Akim Demaille)

            - C99 variable length arrays (Thomas Preud'homme & Joe Soroka)
            - Asm labels for variables and functions (Thomas Preud'homme)
            - STT_GNU_IFUNC (Indirect functions as externals) (Thomas Preud'homme)
            - More tests (tests2) (Milutin Jovanovic)

            Best regards,

            Thomas Preud'homme