Apple will use LLVM

Vladimir Makarov vmakarov at redhat.com
Thu Feb 16 17:00:12 UTC 2012


On 02/16/2012 11:08 AM, Gregory Maxwell wrote:
> On Thu, Feb 16, 2012 at 10:25 AM, Vladimir Makarov<vmakarov at redhat.com>  wrote:
>> GCC has a big community of very dedicated people.  LLVM has no such
>> community.  So IMHO GCC will be more high quality compiler than LLVM until
>> LLVM gets such community.
>>
> That can't be expected to continue now that there are many employers
> hiring people and forbidding them from working on GCC, even in their
> own time, while permitting them to work on LLVM.
>
That is why I wrote 'until'.   Apple has a lot of resources (e.g. i 
guess they are just buying BSD developers to try them to compile the 
system by LLVM).   There is some danger for GCC community from LLVM.  
I'd say now companies hiring to work on LLVM and GCC is about 50/50% 
(that is my impression of checking http://compilerjobs.com/ for long 
time).  Also LLVM is more popular for younger people because of steep 
learning curve.  GCC has more experienced compiler specialists.  LLVM 
community simply can overlive GCC community if GCC community has not 
enough fresh blood.

But still LLVM are many years behind GCC generated code quality 
(although for many programs better quality is not important) and it is 
much harder to get 10-15% improvement (see Proebsting's law) especially 
when you already have classical optimizations implemented: some people 
says with some point it needs exponential efforts.

But the most important is differences in views of Apple and open source 
projects (like Fedora) on software role and development in the world.

When Apple used GCC they were quit bad at contributing their code to 
community.  It could happen LLVM the same if they have such choice.
> I'm not just spreading sour news for the sake of it, here is an
> example of where I ran into this impeding a GCC crash bug:
> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50335#c8
>
I checked the bugzilla.  The graphyte project is pain for GCC community 
too.   It promised a lot but never delivered it.  Most developers were 
from AMD and AMD finally fired all of them.  So we have practically no 
people working on it.  Also their approach had some mistakes even with 
the design point of view, some bugs will never be fixed because of 
underlying used libraries (which are not part of GCC project).
> (Though it will be quite ironic when LLVM becomes unusable to everyone
> because the "we don't give up our patent rights for this when we
> contribute to it" turns it into a thicket)



More information about the devel mailing list