gcc 4.3: when will it become standard compiler?
Roman Divacky
rdivacky at freebsd.org
Fri Jan 9 05:47:44 PST 2009
On Fri, Jan 09, 2009 at 02:32:01PM +0100, Christoph Mallon wrote:
> Roman Divacky schrieb:
> >>I'm not saying it's wrong to look for alternatives, but you cannot just
> >>change your system compiler like you change underwear.
> >
> >well... the first step is imho starting to compile world with C99...
> >that might reveal some bugs, note that as of a few months ago
> >8-current compiles cleanly with C99, that does not mean that it's
> >working when you run those programs correctly :)
>
> One step in the right direction is embracing the nice features modern C
> offers you. For example declaring a variable right were you need it
> instead of dozens of lines away is one such nice thing which improves
> readability. Designated initializers improve readability, too.
> But I'm not exactly sure what you mean by "compile world with C99". C99
> is pretty much backwards compatible to C89.
sorry for the bad wording - I meant to turn C99 compilation on default.
We compile in gnu89 mode now.
> >>PCC cannot seriously be considered. Its design is stuck in the
> >>seventies. From the point of view of compiler construction it is plain
> >>plain out of question. I especially was amused by the statement of the
> >>author who claimed PCC supports SSA - except for phi-functions.
> >
> >what's wrong with design stuck in 70's when it compiles the whole
> >world/kernel?
> >
> >I would not use it for default compilation of releases but it might be
> >useful when you are developing - because of its fast compilation times
>
> If you want a real speed devil, try TCC.
well.. tcc does not seem to be integrated by any *BSD while pcc has been
adopted by netbsd and openbsd :) that shows it has something good (at least
good promotion *grin*)
> >btw.. are you sure the design is stuck in the 70's? the author claims
> >to have rewritten almost the whole thing. have you looked at the recent
> >code?
>
> It's still a simple tree based approach. From point of view of
> optimisations this often gets in the way. For example you need temporary
> variables as helper construct which just complicates things (yes, there
> are intermediate representations which do not have temporary variables
> at all). Much has happend in compiler land in the last 30 years. Now we
> have stuff like SSA and some are even doing code generation in this
> form. I can go into more details, but this is not the right place.
ok.. I just wanted to be sure you looked at the new version.
> >another question - how is libfirm/cparser? last time I tried it didnt
> >support much of the gcc options (-Wsomething -f-something etc.) so
> >it could not be used as a direct drop-in
>
> The next release will support several more switches for GCC
> compatibility. Here's the latest manpage:
> http://tron.homeunix.org/cparser.1 - you can view it with "nroff -man
> cparser.1". Switches like -Wl, and -Wp, are supported. Many bugs have
> been resolved. More warning options have been added - many similar to
> what GCC does, some doing a better job. We plan to make a new release
> Really Soon Now(TM).
ok.. looking forward :)
More information about the freebsd-current
mailing list