Die neue Version 9.1 des GCC-Compilers wurde bereits veröffentlicht

gcc-compiler-9.1

Diese neue Version des GCC-Compilers wurde vor einigen Tagen mit neuen Funktionen und Fehlerkorrekturen zur Verfügung gestellt.

Laut dem GNU GCC-Projektteam ist diese neue Version, Version 9.1 ist eine wichtige Compilerversion Enthält wichtige neue Funktionen, die in GCC 8.x oder früheren Versionen nicht verfügbar sind. GCC 9.1 sollte neue Sprachfunktionen bringen, neue Optimierungen und einige Leistungsverbesserungen an der Software.

Über GCC

GCC ist eine Compilersammlung erstellt vom GNU-Projekt. Es ist genauer gesagt eine freie Software Kann verschiedene Programmiersprachen kompilieren, darunter C, C ++, Objective-C, Java, Ada und Fortran.

Es sollte auch beachtet werden, dass wird für die Entwicklung der meisten freien Software verwendet. Die neueste Hauptversion des Compilers stammt aus dem Mai 2018, Version 8.1.

Jakub Jelinek, ein Red Hat-Entwickler, erklärte, dass GCC 8.1 eine Hauptversion darstellt, die wichtige neue Funktionen enthält, die in GCC 7.x und früheren Versionen von GCC nicht verfügbar sind.

Zu diesem Zeitpunkt hat das C ++ - Frontend experimentelle Unterstützung für einige C ++ 2a-Funktionen mit den Optionen -std = c ++ 2a und -std = gnu ++ 2a bereitgestellt.

In Version 8.2 auf der allgemeinen Erweiterungsstufe wurden LTO-Leistungsprobleme (Link Time Optimization) aufgrund eines Überlaufs des Partitionierungsalgorithmus während der Erstellung großer Binärdateien behoben.

Die Korrekturen im 8.x-Zweig wurden mit der Veröffentlichung der Compiler-Version 8.3 im vergangenen Februar fortgesetzt. Diese Version war eine Bugfix-Version, die Patches für Regressionen in GCC 8.2 im Vergleich zu früheren Versionen von GCC enthielt. Das GCC-Team hat am 3. Mai eine neue Niederlassung eröffnet und Version 9 veröffentlicht.

Was ist neu in GCC 9.1?

In dieser Version Die seit der Compiler-Version 17 eingeführte C ++ 8.1-Unterstützung ist nicht mehr vorhandenl. Daher ist die Unterstützung für C ++ 17 jetzt stabil.

Die Schnittstelle von C ++ implementiert die gesamte Sprache von C ++ 17 Die Unterstützung für die C ++ - Standardbibliothek steht kurz vor dem Abschluss.

El Front-End und C ++ - Bibliothek verfügen auch über viele andere Funktionen, die in C ++ 2a codiert sind. Außerdem verfügt GCC über eine neue Schnittstelle für die D-Sprache und unterstützt jetzt teilweise OpenMP 5.0 und integriert die Unterstützung für OpenACC 2.5 fast vollständig.

Für viele ist GCC 9 eine starke Version des Compilers, die großartige Funktionen und Verbesserungen zur Verbesserung der Entwicklerleistung bietet.

Zu den vielen neuen Funktionen in GCC 9.1 gehören:

  • Unterstützung für die Unterstützung beim Kompilieren von Code, der mit der Programmiersprache D geschrieben wurde;
  • Ein neues AMD GCN GPU-Backend wurde zu GCC hinzugefügt. Die Implementierung beschränkt sich derzeit auf das Kompilieren von Single-Threaded-Programmen.
  • LRA ist jetzt standardmäßig für das ARC-Ziel aktiviert. Dies kann durch -mlra gesteuert werden.
  • Unterstützung für Bildcode- und Verzweigungs- und Indexdichteanweisungen hinzugefügt.
  • Zu GCC wurde ein neues Back-End für C-SKY V2-Prozessoren hinzugefügt.
  • Intel MPX-Unterstützung wurde entfernt.
  • Für die Unterstützung von OpenRISC-Prozessoren wurde ein neues Backend hinzugefügt.
  • Die Unterstützung für die OpenACC 2.5-Spezifikation ist nahezu abgeschlossen.
  • Das interne "Selbsttest" -Paket von GCC funktioniert jetzt für C ++ und C (in Debug-Versionen des Compilers).
  • Die Fortran-Unterstützung in GCC wurde ebenfalls verbessert. Es verarbeitet jetzt asynchrone E / A und andere Funktionen.
  • Interprocedure-Optimierungen (OPI), profilbasierte Optimierungen, Link-Time-Optimierungen (LTO) sowie viele andere Optimierungen zur Sicherstellung einer besseren Codequalität.
  • Die Gesamtbauzeit für Firefox 66 und LibreOffice 6.2.3 auf einem 8-Kern-Computer wurde im Vergleich zu GCC 5 um ca. 8.3% reduziert. Die Größe von LTO-Objektdateien wird um 7% reduziert.
  • Die LTO-Verbindungszeit verbessert sich auf 11 Kernmaschinen um 8% und entwickelt sich für parallelere Konstruktionsumgebungen dramatisch weiter. Die serielle Phase der Optimierung der Verbindungszeit ist 28% schneller und verbraucht 20% weniger Speicher. Parallel Stage partitioniert jetzt 128 Partitionen anstelle von 32 und reduziert die Speichernutzung für jeden Benutzer um 30%.
  • Für die Diagnose im maschinenlesbaren Format wurde eine neue Option "-fdiagnostics-format = json" eingeführt.

Quelle: https://gcc.gnu.org