Hello,
following previous discussions in this mailing list and the approval
from RMS and the steering committee about a CLI port of gcc, I've opened
a development branch to host its development. The branch is st/cli.
The CLI port project aims at producing highly-optimized CIL binaries,
compliant with ECMA specification
(http://www.ecma-international.org/publications/standards/Ecma-335.htm).
The initial focus is on C language (more precisely, C99), C++ is likely
to be considered in the future, as well as any other language for which
there is an interest for a CLI back-end.
For futher details about the CLI port and about CIL (the byte-code
representation used in CLI), you may also look at my initial post:
http://gcc.gnu.org/ml/gcc/2006-06/msg00420.html
In the current status, the back-end should be seen as a prototype.
Several bugs are probably still hiding and looking for an adventurer who
discovers them, performance tracking has still to come and it is not yet
possible to build a full toolchain based on it.
Nevertheless, nearly all C99 features are already supported (complex
numbers and variable-length arrays are the only I recall to be missing)
and the already low number of unexpected failures in gcc testsuite is
encouraging.
Needless to say, everyone is welcome to contribute, be that through
active development or even with ideas or suggestions!
For those willing to collaborate in the development, please don't
hesitate to contact me personally or through the mailing list to discuss
about useful tasks, sub-projects, ... in order to avoid duplicated work.
Eventually, I'll set up a section about the project in gcc wiki pages.
To make easier having a look at the current status, I've also posted a
patch to gcc-patch list:
http://gcc.gnu.org/ml/gcc-patches/2006-09/msg00215.html
Finally, the CLI port project was initially hosted on gna.org, as I also
announced to the mailing list time ago.
That gna.org project is now obsolete and cli branch in gcc.org has
become the main center for the developement of CLI back-end.
Cheers,
Roberto