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 Benchmarking Platform
Phoromatic Test Orchestration

Linus Torvalds On GCC 4.9: Pure & Utter Crap

Compiler

Published on 26 July 2014 12:20 PM EDT
Written by Michael Larabel in Compiler
80 Comments

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 Torvalds On GCC 4.9: Pure & Utter Crap


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.

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 News
  1. GCC 6 Gets Support For The IBM z13 Mainframe Server
  2. Fedora 22 Is Being Released Next Tuesday
  3. OpenWRT 15.05 Preparing Improved Security & Better Networking
  4. Using The New LLVM/Clang OpenMP Support
  5. Zapcc Claims To Be A "Much Faster C++ Compiler"
  6. Godot 1.1 Engine Release Brings New 2D Engine
  7. Intel VA-API Driver 1.6 Is Coming
  8. Canonical Is Reportedly Considering An IPO
  9. GNOME 3.18 - GTK3 Now Supports RandR 1.5
  10. Fedora 22 Risks Being Delayed Beyond Next Week
  11. Systemd 220 Has Finally Been Released
  12. LibreOffice 5.0 Beta 1 Released
Latest Articles & Reviews
  1. Btrfs RAID 0/1 Benchmarks On The Linux 4.1 Kernel
  2. The State Of Various Firefox Features
  3. Intel Iris Graphics Performance With Mesa 10.6
  4. Fedora Workstation 22 Is Looking Great, Running Fantastic
Most Viewed News This Week
  1. The Linux 4.0 Kernel Currently Has An EXT4 Corruption Issue
  2. AMDGPU Open-Source Driver Code Continues Maturing
  3. The Linux 4.0 EXT4 RAID Corruption Bug Has Been Uncovered
  4. Oculus Rift Suspends Linux Development To Focus On Windows
  5. Microsoft Open-Sources The Windows Communication Foundation
  6. LibreOffice 5.0 Open-Source Office Suite Has Been Branched
  7. Another HTTPS Vulnerability Rattles The Internet
  8. Linux 4.1-rc4 Kernel Arrives A Day Late