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

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 Articles & Reviews
  1. Kubuntu 15.04 Is Turning Out Quite Nice, Good Way To Try Out The Latest KDE
  2. 5-Way Linux Distribution Comparison On The Core i3 NUC
  3. OCZ ARC 100 Linux SSD Benchmarks
  4. Lenovo ThinkPad X1 Carbon Works Great As A Linux Ultrabook
  5. Transcend SSD370 256GB
  6. Linux 3.19 File-System Tests Of EXT4, Btrfs, XFS & F2FS
Latest Linux News
  1. ALSA 1.0.29 Released
  2. Ubuntu 15.04 Beta Released, Ubuntu MATE Made Official
  3. Coreboot Developer: Purism Doesn't Deliver On Libre Firmware
  4. LLVM 3.6 & Clang 3.6 Deliver More Features, Complete C++14 Support
  5. The Most Popular Open-Source Linux Benchmarks
  6. The Tremendous Features Of Fedora 22
  7. Krita 2.9 Released, Their Biggest Release Ever
  8. RISC OS Now Works With The Raspberry Pi 2
  9. A Single UEFI Executable With The Linux Kernel, Initrd & Command Line
  10. Unigine 2.0 Beta Brings Performance Optimizations, Oculus Rift DK2 Support
Most Viewed News This Week
  1. Linux 4.0-RC1 Tagged, Linux 4.0 Will Bring Many Notable Improvements
  2. Screenshots Of The GNOME 3.16 Changes
  3. Ubuntu 14.04.2 LTS Released & Ubuntu 15.04 Now In Feature Freeze
  4. Qt 5.5 Features: Many Exciting Improvements
  5. Mir Now Depends Upon C++14
  6. Linux 4.0 Doesn't Have The Weirdest Codename
  7. GNOME 3.16 Beta Brings Wayland-Based Log-in Screen
  8. LLVM Clang Compiling The Linux Kernel Is A Big Topic For 2015
%%CLICK_URL_UNESC%%