4 ms·
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 n
by fleitz 16y ago
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.
- uxp 16y agoLinux 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 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.
- ptomato 16y agoPart of this is probably that philosophically the *BSDs don't really want to be reliant on GNU tools.
- rmjb 16y agoThe 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.
- asymmetric 16y agointeresting. is that only due to the different licenses used in the two projects?
- uxp 16y agoThats 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.
- _delirium 16y agoIt'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.
- protomyth 16y agoApple 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.
- sjs 16y agoTo 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.
- watmough 16y agoThis is really interesting, Fabrice Bellard's tcc is able to build and boot a Linux kernel. http://bellard.org/tcc/ http://bellard.org/tcc/