Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

It has 20 years less baggage and 20 years of lessons learned of what not to do. And 20 years of CPU development, remember that when GCC was started there were no superscalar CPUs.

GCC isn't a particularly high bar to hit ICC and MSVC have been killing it for years.

It's largely the same reason that the ZFS codebase is drastically smaller than the UFS codebase. You don't think of the fastest / shortest way to do X the first time.

Not all the code works with LLVM, for example if you use LLVM to compile the linux kernel it won't boot.



Linux and GCC(GNU) have had a special relationship for a long time. It might be a while until LLVM can handle that task.

FreeBSD however will actually compile and boot. http://wiki.freebsd.org/BuildingFreeBSDWithClang . It's not completely foolproof yet. I think the BSD community has welcomed LLVM a little more warmly than GNU/Linux.


Part of this is probably that philosophically the *BSDs don't really want to be reliant on GNU tools.


The OpenBSD folks have been searching for a replacement for quite some time now. IIRC, they even got their kernel building with the ancient PCC compiler, which is also BSD licensed.


interesting. is that only due to the different licenses used in the two projects?


Apple wants to use the actual compiler code in XCode and that wouldn't be possible with GPL and their current license. That is also why clang is structured as libraries.


It's one of the main ones, but two additional ones, depending on the person, are: 1) some people don't like GNU and/or Stallman having influence on their OS, either for political reasons or due to personality clashes; and 2) some people don't like GCC's design as a technical matter.


Thats what I was implying in my earlier comment. Though I wouldn't say its the only reason, in my view as an advocate of the BSD License, it's a major reason.


To be fair Linux has always been designed and written with GCC in mind. I don't think portability (between compilers) has ever been a goal.


This is really interesting, Fabrice Bellard's tcc is able to build and boot a Linux kernel.

http://bellard.org/tcc/




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: