Richard Stallman Calls LLVM A "Terrible Setback"

Written by Michael Larabel in LLVM on 24 January 2014 at 11:09 AM EST. 221 Comments
LLVM
In the days since Eric S. Raymond had some choice words about GCC vs. Clang, the bickering and fighting over GCC vs. Clang compilers has continued. Richard M. Stallman has come out this morning on the Free Software Foundation's mailing list with his views to reiterate.

Richard Stallman's views aren't anything too surprising in this GCC vs. Clang debate but he wrote:
In the free software movement, we campaign for the freedom of the users of computing. The values of free software are fundamentally different from the values of open source, which make "better code" the ultimate goal. If GCC were to change from a free compiler into a platform for nonfree compilers, it would no longer serve the goal of freedom very well. Therefore, we had to take care to prevent that.

The Clang and LLVM developers reach different conclusions from ours because they do not share our values and goals. They object to the measures we have taken to defend freedom because they see the inconvenience of them and do not recognize (or don't care about) the need for them. I would guess they describe their work as "open source" and do not talk about freedom. They have been supported by Apple, the company which hates our freedom so much that its app store for the ithings _requires_ all apps to be nonfree.

The nonfree compilers that are now based on LLVM prove that I was right -- that the danger was real. If I had "opened" up GCC code for use in nonfree combinations, that would not have prevented a defeat; rather, it would have caused that defeat to occur very soon.

For GCC to be replaced by another technically superior compiler that defended freedom equally well would cause me some personal regret, but I would rejoice for the community's advance. The existence of LLVM is a terrible setback for our community precisely because it is not copylefted and can be used as the basis for nonfree compilers -- so that all contribution to LLVM directly helps proprietary software as much as it helps us.

If you think we ought to "compromise" on this point, please see http://www.gnu.org/philosophy/compromise.html.

The only code that helps us and not our adversaries is copylefted code. Free software released under a pushover license is available for us to use, but available to our adversaries just as well. If you want your work to give freedom an advantage, use the leverage available to you -- copyleft your code. I invite those working on major add-ons to LLVM to release them under GNU GPL version-3-or-later.
So while the Clang C/C++ compiler is nearly running at the same speed as GCC and has also spawned many interesting projects with its interesting modular compiler infrastructure design like Gallium3D LLVMpipe, other LLVM GPU back-ends, various language front-ends, OpenCL support, EmScripten for compiling to the web, disassembly/decompilers, and countless other interesting open-source projects that build upon LLVM, RMS says "the existence of LLVM is a terrible setback for our community precisely because it is not copylefted and can be used as the basis for nonfree compilers." LLVM is under a BSD-style license while modern GCC releases are GPLv3.

You can read the rest of Stallman's comments with this mailing list post.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via MichaelLarabel.com.

Popular News This Week