ホーム Zのソフトウェア Zの開発者ツール XL C/C++ for z/VM IBM XL C/C++ for z/VM
z/VM®プラットフォーム用の高度な最適化コンパイラー
抽象的な幾何学的シェブロンのイラスト

IBM XL C/C++ for z/VMは、大規模で複雑な計算集約型アプリケーションの開発用に最適化されたコンパイラーです。IBM Zシステム・ハードウェア用に最適化されたCおよびC++アプリケーションを作成できます。

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++アプリケーション開発用の一部ユーティリティーを含みます。

XL C/C++ for z/VM 1.3ユーザーおよび実装ガイド

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

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

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

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

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

業界標準に沿って、IBMおよびIBM以外の両方のプラットフォームから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の型定義を通じて、および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 z/VM言語環境

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

IBM XL C/C++ for z/VMのその他の機能

IBM XL C/C++ for z/VMのその他の機能と技術的な説明をご覧ください。

XL C/C++ for z/VMとz/OS XL C/C++の違い

XL C/C++ for z/VMではサポートされていないか、動作が異なるz/OS XL C/C++コンパイラーの機能の詳細をご覧ください。

関連製品 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++ Compiler Familyの詳細はこちら
次のステップ

IBM XL C/C++ for z/VMの詳細はこちら。IBM Z担当員との30分間の無料相談をご予約ください。

その他の参考情報 資料 サポート IBM Redbooks サポートとサービス グローバル・ファイナンシング 柔軟な料金体系 教育プログラムと学習 コミュニティー 開発者コミュニティー ビジネス・パートナー 参考情報