1. Computers
  2. Display Drivers
  3. Graphics Cards
  4. Memory
  5. Motherboards
  6. Processors
  7. Software
  8. Storage
  9. Operating Systems


Facebook RSS Twitter Twitter Google Plus


Phoronix Test Suite

OpenBenchmarking.org

Apple Originally Tried To Give GPL'ed LLVM To GCC

Compiler

Published on 25 January 2014 10:55 AM EST
Written by Michael Larabel in Compiler
76 Comments

Phoronix was the first to report widespread on Richard Stallman calling LLVM a "terrible setback" with the innovative and growing compiler infrastructure being put out under a BSD-style license instead of the GPL. Well, a little known fact is that when LLVM was first starting out, Apple tried integrating LLVM changes with GCC but it was rejected by the GCC developers.

While many were quick to turn anti-Apple after Stallman's comments and there was the always heated BSD vs. GPL fighting, LLVM originally was proposed for integration with GCC and under a GPL license until upstream GCC didn't welcome the work.

I was reminded in a private email exchange this morning with a Phoronix tipster that Chris Lattner in his early days at Apple was working on LLVM/GCC integration and -- with Apple's support -- was willing to contribute back his changes into the upstream GNU Compiler Collection under the GPL. The code at the time was already under the University of Illinois' open-source license but the authors were willing to re-license to the GPL.

There's several messages about this back in November of 2005 that began with Chris Lattner writing the LLVM/GCC Integration Proposal and the actual LLVM integration patch, etc.

However, in the end it was the GCC developers that rejected Apple's willing GPL contribution to GCC (still in the pre-GPLv3 days when GCC was GPLv2 licensed). The upstream GCC developers didn't want LLVM because of wanting C instead of C++ code, GCC developers didn't like the modular and library design of LLVM, LLVM wasn't formally "done" at that point, and there was some "Not Invented Here" syndrome going on by the FSF developers.

There's plenty of other old mailing list posts you can read through from November 2005 that show Apple was trying to do the good thing back in the early days. Since then we have seen GCC adopt support for compiler plug-ins, a rather new GCC JIT compiler option, talk of GCC 5.0 possibly being more modular, and GCC building in C++ mode. So while LLVM was originally critique for some of these features not wanted at the time in GCC, since then the Free Software Foundation developers have moved in that direction.

About The Author
Michael Larabel is the principal author of Phoronix.com and founded the web-site in 2004 with a focus on enriching the Linux hardware experience and being the largest web-site devoted to Linux hardware reviews, particularly for products relevant to Linux gamers and enthusiasts but also commonly reviewing servers/workstations and embedded Linux devices. Michael has written more than 10,000 articles covering the state of Linux hardware support, Linux performance, graphics hardware drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated testing software. He can be followed via and or contacted via .
Latest Linux Hardware Reviews
  1. MSI X99S SLI PLUS On Linux
  2. NVIDIA GeForce GTX 970 Offers Great Linux Performance
  3. CompuLab Intense-PC2: An Excellent, Fanless, Mini PC Powered By Intel's i7 Haswell
  4. From The Atom 330 To Haswell ULT: Intel Linux Performance Benchmarks
Latest Linux Articles
  1. Open-Source Radeon 2D Performance Is Better With Ubuntu 14.10
  2. RunAbove: A POWER8 Compute Cloud With Offerings Up To 176 Threads
  3. 6-Way Ubuntu 14.10 Linux Desktop Benchmarks
  4. Ubuntu 14.10 XMir System Compositor Benchmarks
Latest Linux News
  1. Dead Island GOTY Now Available On Linux/SteamOS
  2. Ubuntu 14.04 In The Power8 Cloud From RunAbove
  3. KDE With Theoretical Client-Side Decorations, Windows 10 Influence
  4. Sandusky Lee: Great Cabinets For Storing All Your Computer Gear
  5. Fedora 21 Beta & Final Release Slip Further
  6. Mesa 10.3.2 Has A Couple Bug-Fixes
  7. RadeonSI/R600g HyperZ Support Gets Turned Back On
  8. openSUSE Factory & Tumbleweed Are Merging
  9. More Fedora Delays: Fedora 21 Beta Slips
  10. Mono Brings C# To The Unreal Engine 4
Latest Forum Discussions
  1. Users/Developers Threatening Fork Of Debian GNU/Linux
  2. Updated and Optimized Ubuntu Free Graphics Drivers
  3. HOPE: The Ease Of Python With The Speed Of C++
  4. Use Ubuntu MATE 14.10 Make it an official distro.
  5. Debian Is Back To Discussing Init Systems, Freedom of Choice
  6. AMD Radeon VDPAU Video Performance With Gallium3D
  7. Ubuntu 16.04 Might Be The Distribution's Last 32-Bit Release
  8. Linux hacker compares Solaris kernel code: