IBM XL C/C++ for z/VM
Ein erweiterter Optimierungscompiler für die z/VM-Plattform
Illustration eines abstrakten geometrischen Chevrons

IBM XL C/C++ for z/VM ist ein optimierter Compiler für die Entwicklung großer, komplexer, rechenintensiver Anwendungen. Sie können damit C- und C++-Anwendungen schreiben, die für die Hardware von IBM Z Systems optimiert sind.

IBM XL C/C++ for z/VM ist die sprachzentrierte C/C++-Anwendungsentwicklungsumgebung auf der z/VM-Plattform. Es handelt sich um eine Z/VM-fähige Version von z/OS XL C/C++, die eine C/C++-Compiler-Komponente (als XL C/C++-Compiler bezeichnet) und einige Dienstprogramme für die C/C++-Anwendungsentwicklung enthält.

Benutzer- und Implementierungsleitfäden für XL C/C++ for z/VM 1.3

Vorteile Optimieren der Anwendungsleistung

Unterstützt hochrangige Transformationen, bei denen es sich um Optimierungen handelt, die die Leistung von Schleifen verbessern; unterstützt OPTIMIZE(3) oder OPT(3), das höchste und aggressivste Optimierungsniveau des Compilers.

Einfache Migration von Anwendungen

Entspricht dem internationalen Standard ISO/IEC 9899:1999 (C99), dem Standard ANSI/ISO 1998 C++ und einem standardkonformen Compiler C und enthält die Standardbibliothek C++.

Vereinfachung der Portierung von Anwendungen

Unterstützt Industriestandards, um die Portierung von Anwendungen auf z/VM sowohl von IBM- als auch von Nicht-IBM-Plattformen zu vereinfachen.

Funktionen
Umfangreiche optimierungen

Die Unterstützung für OPT(3) führt zusätzliche Optionen und Pragmas ein, die Ihnen helfen, die Leistung Ihrer Anwendung zu verbessern, einschließlich der Option zum Abrollen von Schleifen und Pragmas sowie mehrerer neuer eingebauter Funktionen. Mit den Optionen OPT(0), OPT(2) und OPT(3) können Sie Optimierungsstufen erhalten, die von umfassenden Low-Level-Optimierungen bis hin zu umfangreicheren Optimierungen reichen.


C++-Standardbibliothek

IBM XL C/C++ for z/VM umfasst die C++ Standard I/O Stream Library zur Durchführung von Ein- und Ausgängen (I/O), die C++ Standard Complex Mathematics Library zur Manipulation komplexer Zahlen und die Standard Template Library (STL), die aus vorlagenbasierten C++-Algorithmen, Containerklassen, Iteratoren, Lokalisierungsobjekten und der Zeichenfolgenklasse besteht.


Unicode literal support

IBM XL C/C++ for z/VM bietet Unterstützung für die Typen char16_t und char32_t durch Typedefs in C und als native Typen in C++, was die Portierung von Code, der diese Typen verwendet, auf z/OS erleichtert.


Kompatibilität mit der GNU Compiler Collection (GCC)

Die enthaltene C-Unterstützung für das Konstrukt des Anweisungsausdrucks ermöglicht es Programmierern, Schleifen, Schalter und lokale Variablen innerhalb eines Ausdrucks zu verwenden. C und C++ unterstützen das Zero-Extent-Array-Konstrukt als Header für ein Objekt mit variabler Länge. Diese Funktionen erleichtern das Anschließen von C/C++-Code mit diesen Konstrukten auf anderen Plattformen an XL C/C++ for z/VM.


Tiefergehende Zeigeranalyse

Die Option RESTRICT zeigt dem Compiler an, dass Parameterzeiger in allen Funktionen oder bestimmten Funktionen unzusammenhängend sind. Der Compiler führt eine detailliertere Zeigeranalyse durch, wenn die Option RESTRICT aktiv ist. Dies soll die Leistung der kompilierten Anwendung verbessern.


Gespeicherte Optionszeichenfolgenfunktion

IBM XL C/C++ for z/VM bietet eine kompakte Darstellung der Compiler-Optionen, die für jede Quelldatei verwendet werden, und erstellt die gespeicherte Optionszeichenfolge in der ausführbaren Datei für jede Kompilierungseinheit. Der Compiler zeichnet Versionsinformationen für alle Komponenten auf, die während der Kompilierung aktiv sind. Dieses neue Feature kann Ihnen bei der Diagnose von Laufzeitproblemen helfen.


Unterstützung für die Änderung des Nachrichtenschweregrads

Mit der SEVERITY-Option kann der Schweregrad einiger der vom Compiler ausgegebenen Diagnosemeldungen geändert werden. Diese Funktion ermöglicht die Anpassung bestimmter Diagnosemeldungen an die Programmierstandards des Benutzers.


Debug-Unterstützung

Die vom Compiler generierten Quelllisten werden erweitert, um den Startversatz jeder Funktion zu den Auflistungen hinzuzufügen. Es wird erwartet, dass der Startversatz jeder Funktion für Debugging-Zwecke hilfreich ist. Bei kompiliertem Code, der die Optimierungsstufe O2 oder O3 verwendet, können die Namen und Adressen von Funktionen sowie die Namen, Typen und Werte der Parameter angezeigt werden, wenn Sie optimierten Code debuggen.

Ressourcen IBM z/VM Language Environment

Verschaffen Sie sich einen Überblick über die Sprachumgebung auf z/VM.

Zusätzliche Funktionen von IBM XL C/C++ for z/VM

Erkunden Sie weitere Funktionen von IBM XL C/C++ for z/VM mit technischen Beschreibungen.

Unterschiede zwischen XL C/C++ for z/VM und z/OS XL C/C++

Erfahren Sie mehr über die Z/OS XL C/C+-Compiler-Funktionen, die in XL C/C++ for z/VM nicht unterstützt werden oder anders funktionieren.

Weiterführende Produkte IBM z/OS IBM z/OS XL C/C++

Nutzt die neueste z/Architecture®, einschließlich der neuesten IBM z15™-Server.

IBM XL C/C++ for Linux

Ein leistungsstarker Compiler für die Entwicklung komplexer C/C++ Programme.

Entdecken Sie die IBM C and C++ Compiler Family
Nächste Schritte

Erkunden Sie IBM XL C/C++ for z/VM. Planen Sie ein kostenfreies 30-minütiges Meeting mit einem IBM Z-Ansprechpartner.

Weitere Informationsmöglichkeiten Dokumentation Support IBM Redbooks Support und Services Global Financing Flexible Preisstruktur Schulung und Training Community Entwicklungscommunity Business Partner Ressourcen