Re: Alternatives to gcc (was Re: gcc 4.3: when will it become standard compiler?)

From: Maxim Sobolev <sobomax_at_FreeBSD.org>
Date: Wed, 14 Jan 2009 01:40:11 -0800
Adrian Chadd wrote:
> So I re-iterate. Why all of the discussion having the default compiler
> be something new and shiny, when those who need the performance gains
> can just install -that- compiler as a port and use that?

First of all let's make it clean that I did not tell anything about 
expecting any magic speed up by just dropping a new compiler in, at 
least not for the software in the base system. You are simply putting 
somebody's else words into my mouth. Anybody who has even small 
understanding of compiler technology understands that without major 
paradigm changes there is not much room for improvement left for better 
code generation in C language, especially for the kind of code we have 
in /usr/src.

My point is that in 1-2 years from now our outdated compiler might get 
in the way of using new features in state of the art CPUs and porting 
FreeBSD to new architectures. If nothing else, some new ideas should 
come out of CPU/GPU fusion work and/or massively multi-core designs soon 
and they would likely to require some kind of compiler support.

Also, outdated C++ could cause issues with importing 3rd party software 
to the base system. I am only one who still remember horrible base 
system compiler C++ performance during gcc 2.7x times and eventual 
painful upgrade that broke all third-party libraries and required 
everything to be recompiled?

Not to mention important new features like TLS support, symbol 
versioning and so on. If my memory serves, all of them required some 
kind binutils/compiler upgrade. And I am pretty sure something else of 
similar importance will appear on radar relatively soon.

I don't have the answer to the GPLv2 vs. GPLv3 compiler issue. My point 
is that anybody here who thinks that we can get away with stale compiler 
  in the base system for a long period of time by just hiding head in 
the sand, ignoring the issue and doing nothing is fooling himself.

IMHO it seems highly unlikely that some new kid on the block like llvm 
will be able to answer our problems. The argument that "it's good for 
Apple, it should be good for us" to me seems to be little out of touch 
with reality. First of all, Apple cares about significantly lesser 
number of architectures. They don't have IA64, Sparc or MIPS, they will 
probably drop PPC soon. Second, they have a capacity (read "big money") 
to port compiler to a new architecture, fix it as needed or extend it to 
support some features provided by never chips if they need to. We don't 
have that capacity.

-Maxim
Received on Wed Jan 14 2009 - 08:40:32 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:40 UTC