GCC Prepares Compiler Support For Intel Broadwell

Posted by Michael Larabel on February 26, 2013

While Intel Haswell processors won't even be released to the public until later this year, compiler developers have already been working on supporting the new instruction set extensions of Haswell for more than one year. GCC developers already have early Intel Broadwell support ready for GCC 4.8.

One of the many features that will be part of the GNU Compiler Collection 4.8 release when it happens in the next month or two is initial Intel Broadwell support. Haswell support was already found in GCC 4.7 and improvements in 4.8, so in months prior these free software developers have already been hitting a large chunk of the Broadwell additions. Broadwell is the 14nm die shrink of Haswell due out likely in mid-2014. Broadwell is notable in that it moves to a Multi-Chip Package design, but as it concerns compiler developers, there are new instructions to support.

The hardware instructions that are now supported in GCC 4.8 for Intel Broadwell include:

RDSEED - GCC already supports RDRAND (a.k.a. "Bull Mountain") of Ivy Bridge / Haswell while Broadwell brings RDSEED. RDSEED is for generating 16/32/64-bit random numbers in accordance with the NIST SP 800-90B and 800-90C standards.
ADCX/ADOX - ADCX and ADOX are new arbitrary precision integer operations with the difference between the two instructions being how the integers are added.
PREFETCHW - Intel's PREFETCHW instruction is similar to AMD's pre-fetch handling.

These new ISA extensions are exposed in GCC via the -madx, -mprfchw, -mrdseed compiler switches.

While not part of the Broadwell enablement, GCC 4.8 for Intel also supports Intel RTM and HLE intrinsics. HLE is the Hardware Lock Elisions and RTM is for Restricted Transactional Memory. These new supported Intel intrinsics are supported by the -mrtm and -mhle switches.

Last but not least, GCC 4.8 supports the Intel FXSR, XSAVE and XSAVEOPT instruction sets with -mfxsr, -mxsave, and -mxsaveopt.

Aside from advancing Intel's processor support, GCC 4.8 also offers AMD Jaguar and Steamroller support. Steamroller is "Bulldozer 3" and Jaguar is AMD's upcoming Fusion APU.

Other GCC 4.8 highlights include a new optimization level, some performance advantages, libstdc++ improvements, new optimizations, better C++11 support and early C++1y support, improved diagnostics, is built in C++ mode, and many other additions.

Discuss this article in our forums, IRC channel, or email the author. You can also follow our content via RSS and on social networks like Facebook, Identi.ca, and Twitter (@Phoronix and @MichaelLarabel). Subscribe to Phoronix Premium to view our content without advertisements, view entire articles on a single page, and experience other benefits.
Latest Hardware Reviews
  1. Intel Haswell HD Graphics 4600 vs. AMD Radeon Graphics On Linux
  2. Intel Haswell HD Graphics 4600 Performance On Ubuntu Linux
  3. Intel Core i7 4770K "Haswell" Benchmarks On Ubuntu Linux
  4. The First Experience Of Intel Haswell On Linux
Latest Software Articles
  1. Optimized Binaries Provide Great Benefits For Intel Haswell
  2. 11-Way Linux, BSD Platform Comparison
  3. SNA Acceleration Works Great For Intel Core i7 Haswell
  4. The Linux Evolution For Intel Haswell's Performance
Latest Linux News
  1. NVIDIA Driver Soon Likely To Support EGL, Mir
  2. OpenMandriva Goes Into Alpha Form, Russian-Based
  3. NVIDIA Brings Their Linux Driver To ARM
  4. D Language Still Showing Promise, Advancements
  5. Planetary Annihilation Released For Linux Gamers
  6. Gentoo Starts Work On KDE-Wayland Support
  7. NVIDIA To License Its Kepler GPU Technology
  8. KDE's KWin Made Lots Of Progress In 4.11
  9. Ubuntu Announces Carrier Advisory Group
  10. Qt 5.1 Release Candidate 1 Has Arrived
  11. In-Fighting Continues Over Mir On Non-Unity Ubuntu
Latest Forum Talk
  1. Ubuntu Announces Carrier Advisory Group
  2. In-Fighting Continues Over Mir On Non-Unity Ubuntu
  3. Gentoo Starts Work On KDE-Wayland Support
  4. OpenMandriva Goes Into Alpha Form, Russian-Based
  5. D Language Still Showing Promise, Advancements
  6. NVIDIA Driver Soon Likely To Support EGL, Mir
  1. Computers
  2. Display Drivers
  3. Graphics Cards
  4. Motherboards
  5. Peripherals
  6. Processors
  7. Software
  8. Operating Systems
  9. All Articles
  1. Linux Benchmarking
  2. OpenBenchmarking.org
  3. Phoronix Test Suite