1.2. Main Features

The Red Hat Developer Toolset version of the GNU Compiler Collection (GCC) provides the following features:
  • A new register allocator (LRA) has been added, improving code performance.
  • A fast memory error detector called AddressSanitizer has been added.
  • A fast data race detector called ThreadSanitizer has been added.
  • Extremely large functions can now be compiled faster using less memory.
  • A new general optimization level has been introduced.
  • GCC diagnostic messages now highlight the exact problem in the source code.
  • Various new optimization options have been added.
  • DWARF4 is now used as the default debug format.
  • GCC now fully implements the C++11 language standard.
  • C++11 library support has been extended though is still experimental.
  • GCC now supports dynamic initialization of thread-local variables.
  • Support has been added for Intel FXSR, XSAVE, and XSAVEOPT instructions.
  • New built-in functions added to detect run-time Intel CPU Type and ISA.
  • Intel function multi-versioning support added.
  • Intel RTM/HLE intrinsics, built-ins, and code generation have been added.
  • Transactions (the -fgnu-tm option) can now be run using Intel TSX extensions.
  • Support for AMD family 15h and 16h processors has been added.
  • Various Fortran changes have been included.
The version of the GNU Debugger (GDB) included in Red Hat Developer Toolset provides the following features:
  • Improved and expanded support for Python scripting.
  • Improved handling of C++ debugee executables.
  • Improved inferior control commands.
  • Improved support for ambiguous line specifications.
  • Improved tracepoint support.
  • Multi-program debugging.
Additionally, the Red Hat Developer Toolset version of binutils provides these features:
  • The new gold linker, which is smaller and faster than ld. Note that gold is not the default linker and must be explicitly enabled by using the alternatives command.
  • Support for link-time optimization (LTO) in conjunction with GCC.
  • Support for build-IDs, unique numbers to identify executables.
  • Support for the IFUNC and UNIQUE symbols that are used by glibc to improve performance. Due to dependencies on a particular version of the glibc library, these symbols are only available on Red Hat Enterprise Linux 6.
  • Compressed debug sections for smaller debug info files.
For a full list of changes and features introduced in this release, see Appendix A, Changes in Version 2.1.