The new version 9.1 of the GCC compiler has already been released

gcc-compiler-9.1

This new version of the GCC compiler was made available a few days ago with new features and bug fixes.

According to the GNU GCC project team, this new version, version 9.1 is a major compiler version Contains important new features not available in GCC 8.x or earlier versions. GCC 9.1 should bring new language features, new optimizations and some performance improvements to the software.

About GCC

GCC is a compiler collection created by the GNU project. It is more exactly a free software capable of compiling various programming languages, including C, C ++, Objective-C, Java, Ada, and Fortran.

It should also be noted that used for the development of most free software. The latest major compiler release dates back to May 2018, version 8.1.

Jakub Jelinek, a Red Hat developer, explained that GCC 8.1 represented a major release that brings important new features that are not available in GCC 7.x and earlier versions of GCC.

At this point, the C ++ front-end has provided experimental support for some C ++ 2a functions with the -std = c ++ 2a and -std = gnu ++ 2a options.

In version 8.2 at the general enhancement level, LTO (link time optimization) performance issues due to an overflow in the partitioning algorithm during the creation of large binary files have been fixed.

Fixes continued in the 8.x branch with the release of compiler version 8.3 last February. This release was a bugfix release that contained patches for regressions in GCC 8.2 compared to earlier releases of GCC. The GCC team launched a new branch on May 3, releasing version 9.

What's new in GCC 9.1?

In this version, C ++ 17 support introduced since compiler version 8.1 is no longer experiencedl. Therefore, support for C ++ 17 is now stable.

interface C ++ implements the entire language of C ++ 17 and support for the C ++ standard library is nearing completion.

El front-end and C ++ library also have many other features coded from C ++ 2a. Also, GCC has a new interface for the D language and now partially supports OpenMP 5.0 and almost fully integrates support for OpenACC 2.5.

For many, GCC 9 is a strong version of the compiler that provides great features and enhancements to improve developer performance.

Among the many new features in GCC 9.1 are:

  • Support for a support for compiling code written with the D programming language;
  • A new AMD GCN GPU backend has been added to GCC. The implementation is currently limited to compiling single threaded programs.
  • LRA is now enabled by default for the ARC target. This can be controlled by -mlra.
  • Added support for image code and branch and index density statements.
  • Added to GCC was the addition of a new back-end targeting C-SKY V2 processors.
  • Intel MPX support has been removed.
  • A new backend has been added for OpenRISC processor support.
  • Support for the OpenACC 2.5 specification is almost complete.
  • GCC's internal "selftest" package now works for C ++ and C (in debug versions of the compiler).
  • Fortran support in GCC has also been improved. Now it handles asynchronous I / O and other features.
  • Interprocedure optimizations (OPI), profile-based optimizations, link time optimizations (LTO), as well as many other optimizations to ensure better code quality.
  • Total compile time for Firefox 66 and LibreOffice 6.2.3 on an 8-core machine has been reduced by approximately 5% compared to GCC 8.3. The size of LTO object files is reduced by 7%.
  • LTO link time improves by 11% on 8 core machines and evolves dramatically for more parallel build environments. The serial stage of link time optimization is 28% faster and consumes 20% less memory. Parallel Stage now partitions 128 partitions instead of 32 and reduces memory usage for each user by 30%.
  • A new option "-fdiagnostics-format = json" has been introduced for diagnostics in machine readable format.

Source: https://gcc.gnu.org