IBM XL C/C++ for z/VM
z/VMプラットフォーム用の高度な最適化コンパイラー
抽象的な幾何学的シェブロンのイラスト
IBM XL C/C++ for z/VMのビジネスへの貢献要素

IBM® XL C/C++ for z/VMは、大規模で複雑な計算集約型アプリケーションの開発用に最適化されたコンパイラーです。

IBM XL C/C++ for z/VMは、、z/VMプラットフォーム上の言語を中心とするC/C++アプリケーション開発環境であり、z/OS XL C/C++のz/VM対応バージョンです。C/C++コンパイラー・コンポーネント(通称「XL C/C++コンパイラー」)とC/C++アプリケーション開発用の一部ユーティリティーを含みます。

IBM XL C/C++ for z/VMを使用して、IBM Zシステム・ハードウェア用に最適化されたCおよびC++アプリケーションを作成できます。

メリット
アプリケーションのパフォーマンスを最適化

上位変換をサポートすることで、ループのパフォーマンスを改善するように最適化が図られます。また、コンパイラーの最高かつ最も積極的な最適化レベルであるOPTIMIZE(3)(略称「OPT(3)」) もサポートします。

アプリケーションを簡単に移行

ISO/IEC 9899:1999国際規格(C99)、ANSI/ISO 1998 C++規格、および規格に適合するCコンパイラーに準拠しており、C++標準ライブラリが含まれています。

アプリケーションの移植を簡素化

業界標準に沿って、IBMおよびIBM以外の両方のプラットフォームからz/VMへのアプリケーションの移植を簡素化します。

IBM XL C/C++ for z/VMの詳細
広範な最適化

OPT(3)のサポートに伴いアプリケーションのパフォーマンス向上に役立つオプションとプログラムが広がっています。例えば、ループの展開解除オプションとプラグマ、多数の新しい組み込み関数が利用可能になっています。OPT(0)、OPT(2)、およびOPT(3)オプションを使用すると、包括的な低レベルのものからより広範なものまで複数の最適化レベルを取得して実行できます。


C++標準ライブラリ

IBM XL C/C++ for z/VMには、入出力(I/O)操作を実行するためのC++Standard I/O Stream Library、複素数を操作するためのC++ Standard Complex Mathematics Library、およびC++テンプレート・ベースのアルゴリズム、コンテナ・クラス、イテレーター、ローカリゼーション・オブジェクト、および文字列クラスで構成されるSTLが含まれています。


Unicodeリテラルをサポート

IBM XL C/C++ for z/VMは、Cではtypedefを使用し、C++ではネイティブ型としてchar16_tおよびchar32_t 型のサポートを追加し、これらの型を利用するコードをz/OS®に移植しやすくします。


GNU Compiler Collection(GCC)との互換性

ステートメント表現構造でCを使用可能なため、プログラマーは表現内でループ、スイッチ、ローカル変数を使用できます。またゼロ拡張配列構造でCおよびC++を使用可能なため、可変長オブジェクトのヘッダーを使用できます。 こうした特長により、他のプラットフォーム上でこれらの構成を使用するC/C++コードをXL C/C++ for z/VMに移植することが容易になります。


より深いポインター解析

RESTRICTオプションでは、すべての関数または指定された関数のパラメーター・ポインターが互いに素であることがコンパイラーに示されます。RESTRICTオプションが有効な場合、コンパイラーによってより詳細なポインター解析が行われます。これにより、コンパイル中のアプリケーションのパフォーマンス向上を目指します。


保存されたオプション文字列機能

IBM XL C/C++ for z/VMを使用すると、各ソース・ファイルに使用されるコンパイラー・オプションの表現が簡潔になります。また、各コンパイル単位の実行可能ファイルに保存されたオプション文字列が作成されます。コンパイラーは、コンパイル中にアクティブだったすべてのコンパイラー・コンポーネントのバージョン情報も記録します。この新機能は、ランタイムに関連する問題の診断に役立ちます。


メッセージの重大度変更をサポート

SEVERITYオプションを選択すると、コンパイラーによって出力される一部の診断メッセージの重大度を変更できます。この機能により、ユーザーのコーディング標準に合わせて特定の診断メッセージのレベルをカスタマイズできます。


デバッグサポート

コンパイラーによって生成されるソース・リストは、各関数の開始オフセットがリストに追加されるように拡張されます。各関数の開始オフセットは、通常、デバッグ目的に役立ちます。最適化レベルO2またはO3 を使用してコンパイルされたコードで、最適化されたコードをデバッグすると、関数の名前とアドレス、およびパラメーターの名前、型、および値を表示できます。


参考情報 IBM XL C/C++ for z/VMと z/OS XL C/C++の違い

z/OS XL C/C++コンパイラーの機能は、XL C/C++ for z/VMではサポートされていないか、動作が異なります。

IBM:z/VMドキュメント・ライブラリー

z/VM V6.3の製品資料集です。

IBM:z/VM言語環境プログラム

z/VMでの言語環境について概説しています。

興味はありませんか IBM z/OS IBM z/OS XL C/C++

最新のIBM z15サーバーを含む、最新の z/Architectureを利用しています。

IBM XL C/C++ for Linux

複雑なC/C++プログラムを開発するための高性能コンパイラー。

IBM C and C++ Compilers familyC

高度なコンパイラーおよび最適化テクノロジーです。

専門家による成功に役立つ参考情報はこちら
サポート

サポート検索を使用して解決策を確認でき、サポート依頼を送信することもできます。

詳細はこちら