Linus Torvalds On GCC 4.9: Pure & Utter Crap

Written by Michael Larabel in GNU on 26 July 2014 at 12:20 PM EDT. 80 Comments
GNU
Linus Torvalds' latest tirade is over the GCC 4.9 code compiler.

In a kernel mailing list thread about a random panic in a load balance function with the in-development Linux 3.16 kernel, Torvalds looked at the code being generated by GCC 4.9 and was disgusted with the output.

The Linux kernel creator wrote:
Ok, so I'm looking at the code generation and your compiler is pure and utter *shit*.

Adding Jakub to the cc, because gcc-4.9.0 seems to be terminally broken.

Lookie here, your compiler does some absolutely insane things with the spilling, including spilling a *constant*. For chrissake, that compiler shouldn't have been allowed to graduate from kindergarten. We're talking "sloth that was dropped on the head as a baby" level retardation levels

Torvalds went on to say, "Note the contents of -136(%rbp). Seriously. That's an _immediate_constant_ that the compiler is spilling. Somebody needs to raise that as a gcc bug. Because it damn well is some seriously crazy shit."


Linus ended his mailing list tirade with, "Anyway, this is not a kernel bug. This is your compiler creating completely broken code. We may need to add a warning to make sure nobody compiles with gcc-4.9.0, and the Debian people should probably downgrate their shiny new compiler." GCC 4.9.0 was released back in April while GCC 4.9.1 was recently released and there's no word if the issue persists on that first point release or kernel developers should pull back to GCC 4.8 for the time being.

On Friday, Torvalds opened Bug 61904 concerning incorrect stack red-zoning on x86-64 code generation for GCC 4.9 with the bug not yet being resolved. For now it's likely best to use GCC 4.8, which remains the default compiler on most Linux distributions except those that have seen major releases this summer. Linus hasn't said if he's personally tried compiling the Linux kernel with LLVM's Clang, which is becoming a reality with recent kernel versions.
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