|GNU Compiler Collection 5.1 Released|
|Written by Alex Armstrong|
|Tuesday, 28 April 2015|
Thanks to its new numbering scheme this is the first stable release of the GNU Compiler Collection (GCC) 5.x series and comes less than a year after the release of GCC 5.0, the experimental release.
The GNU Compiler Collection (GCC) is a key component of the GNU toolchain and is distributed by the Free Software Foundation.
As well as being the official compiler of the GNU operating system, GCC has been adopted as the standard compiler by many other modern Unix-like computer operating systems, including Linux. Versions are also available for Microsoft Windows and other operating systems.
Originally named the GNU C Compiler, when it only handled the C programming language, GCC 1.0 was released in 1987 and was extended to compile C++ in December of that year. Front ends were later developed for Objective-C, Objective-C++, Fortran, Java, Ada, and Go among others.
GCC has been ported to a wide variety of processor architectures, and is widely deployed as a tool in the development of both free and proprietary software.
Last year the ACM honored GCC with its Programming Languages Software Award and the citation sums it up with:
The GNU Compiler Collection (GCC) provides a portable, production-quality, standards-compliant, highly optimizing compiler, supporting more architectures, programming languages, and operating environments than any other comparable tool. It provides the toolchain that underpins all of the GNU/Linux distributions, popular websites, and embedded environments.
News of the release of GCC 5.1 was communicated to the GCC project mailing list by Jakub Jelinek who itemised the following significant changes:
The C++ front-end now has full C++14 language support while the Standard C++ Library has experimental C++14 support and full C++11 support, which has been made possible by adopting Dual ABI.
The C front-end now defaults to C11 mode with GNU extensions, which affects semantics of the inline keyword and brings several other
GCC 5.1 contains various interprocedural optimization improvements, e.g. a new IPA Identical Code Folding pass, and various LTO improvements, e.g. ODR based merging of C++ types.
The GCC 5.1 Local Register Allocator now contains a rematerialization subpass which permits it to reuse the PIC hard register on x86 and x86_64 hardware architectures to improve performance of position independent code. A simple interprocedural RA pass and various other register allocation improvements have also been added
GCC 5.1 adds partial support for the OpenACC standard, support for OpenMP 4.0 offloading to Intel's upcoming Xeon Phi accelerators and support for OpenACC offloading to PTX. The Undefined Behavior Sanitizer in GCC has been extended by adding various new runtime checks and an experimental GCC JIT library has been added.
Details of more changes can be found on GCC 5 Release Series Changes, New Features, and Fixes
GCC 5.1 is available for the FTP servers list on the GNU Operating System site.
To be informed about new articles on I Programmer, install the I Programmer Toolbar, subscribe to the RSS feed, follow us on, Twitter, Facebook, Google+ or Linkedin, or sign up for our weekly newsletter.
or email your comment to: firstname.lastname@example.org
|Last Updated ( Tuesday, 28 April 2015 )|