Of Bounties and Mercenaries
Chris Lattner
sabre@nondot.org
Tue Apr 6 05:24:00 GMT 2004
Stephan T. Lavavej wrote:
>[Ben Elliston]
>> This should be a side goal of future GCC work: to develop it
>> in a way that makes it easier for the uninitiated to hack on
>> it. This includes removing complicated cruft and generally
>> trying to keep the code base small and as simple as possible.
> How about writing gcc in Modern, Standard C++?
You might be interested in LLVM: http://llvm.cs.uiuc.edu/
We are doing basically that. The other advantage is that you can also use
algorithms and data structures that make sense in the process. In C++
it's much easier to not use linked-lists for every data structure in the
compiler. :) Using C++ well has been a HUGE reason that LLVM has made as
much progress as it has in the time it has existed (it's only 3.5 years
old, basically the same "age" as tree-ssa).
Despite the fact that LLVM makes EXTENSIVE use of the STL and other modern
C++ features, it can already bootstrap itself. It also has a large number
of aggressive intra- and inter- procedural optimizations, a JIT compiler,
profile-driven optimization support, aggressive alias analysis, ...
> You could do away with your crazy garbage-collected C (double ugh).
Exactly. In LLVM, the ownership model for IR objects is trivial,
completely eliminating the need for a GC. This and many other things
makes the optimizer *FAST*.
-Chris
--
http://llvm.cs.uiuc.edu/
http://www.nondot.org/~sabre/Projects/
More information about the Gcc
mailing list