Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

Chapter 10. Compiler and Tools

10.1. GCC Toolchain

In Red Hat Enterprise Linux 7, the gcc toolchain is based on the gcc-4.8.x release series, and includes numerous enhancements and bug fixes relative to the Red Hat Enterprise Linux 6 equivalent. Similarly, Red Hat Enterprise Linux 7 includes binutils-2.23.52.x.
These versions correspond to the equivalent tools in Red Hat Developer Toolset 2.1; a detailed comparison of Red Hat Enterprise Linux 6 and Red Hat Enterprise Linux 7 gcc and binutils versions can be seen here:
Notable highlights of the Red Hat Enterprise Linux 7 toolchain are the following:
  • As a Technology Preview, The GNU Compiler Collection (GCC) implements support for on-line patching of multi-threaded code for Linux on System z binaries. Selecting specific functions for hot-patching is enabled by using a "function attribute" and hot-patching for all functions can be enabled using the -mhotpatch command-line option.
    Enabling hot-patching has a negative impact on software size and performance. It is therefore recommended to use hot-patching for specific functions instead of enabling hot patch support for all functions.
  • Experimental support for building applications compliant with C++11 (including full C++11 language support) and some experimental support for C11 features;
  • Improved support for programming parallel applications, including OpenMP v3.1, C++11 Types and GCC Built-ins for Atomic Memory Access and experimental support for transactional memory (including Intel RTM/HLE intrinsics, built-ins, and code generation);
  • A new local register allocator (LRA), improving code performance;
  • DWARF4 is now used as the default debug format;
  • A variety of new architecture-specific options;
  • Support for AMD family 15h and 16h processors;
  • Link-time optimization support;
  • Enhanced warnings and diagnostics;
  • A variety of new Fortran features.