日本-日本語
日本HPホーム 製品 & サービス OpenVMS製品情報
≫  お問い合わせ


OpenVMS マニュアル


 

OpenVMS ドキュメント
ライブラリ

タイトルページ
目次
まえがき
第1章:はじめに
第2章:基本的な相違点
第3章:アプリケーションの調査
第4章:ソース・モジュールの移行
第5章:OpenVMS I64 開発環境
第6章:ポーティングの準備
第7章:その他の検討事項
付録A :アプリケーション評価チェックリスト
付録B :サポート対象外のレイヤード・プロダクト
付録C :アプリケーション固有のスタック切り換えコードの I64 へのポーティング
用語集
索引
PDF
OpenVMS ホーム

HP OpenVMS
OpenVMS Alpha から OpenVMS I64 へのアプリケーション・ポーティング・ガイド


目次 索引



OpenVMS I64 では,.OBJ ファイルは EOBJ ではなく ELF 形式で実装されます。また I64 リンカと連動し, C++ テンプレートおよびインライン関数を使用した場合に発生するリンク時の重複定義の問題を解決するために Windows および UNIX プラットフォームの両方でよく使用される COMDAT セクションの概念をサポートします。 Alpha では,リンカに単一の定義インスタンスを提示するリポジトリ・メカニズムによってこれらの問題を処理します。 I64 ではこの処理にリポジトリ・メカニズムは必要なく,リンカが自動的に重複を解消します。このため,Alpha でサポートされるリポジトリ・ベースのテンプレート・インスタンス化オプションは, IPF ではサポートされません。リポジトリでオブジェクトを処理しようとする Alpha ビルド・プロシージャは I64 では使えないので,変更が必要になります (I64 ではリポジトリにはオブジェクトがなく,デマングラ・データベースです)。ほとんどの場合,コンパイラの COMDAT インスタンス化の使用により,ビルド・プロシージャでリポジトリを直接扱う必要はなくなります。

6.8 Java

OpenVMS I64 では,Javatm Version 1.4.2-1 がサポートされます。 OpenVMS Alpha の Java と OpenVMS I64 の Java の間に相違点はありません。

6.9 MACRO-32

OpenVMS Alpha でコンパイルされた大部分の VAX MACRO プログラムは,まったく変更せずに OpenVMS I64 で再コンパイルできます。しかし,非標準戻り値を返すルーチンを呼び出すプログラムや,JSB インストラクションを使用して,他の言語で作成されたルーチンを呼び出すプログラムでは,ソース・ファイルに新しいディレクティブを追加する必要があります。詳細については,『OpenVMS MACRO-32 Porting and User's Guide』を参照してください。

6.10 HP Pascal

Alpha と I64 の両方で HP Pascal Version 5.9 が利用できます。

OpenVMS Alpha 上の Pascal と OpenVMS I64 上の Pascal では,明らかになっている言語上の違いはありません。唯一の違いは,HP のほかの I64 コンパイラと同様に,浮動小数点のデフォルト・データ・タイプが VAX 形式ではなく IEEE 形式である点です。

6.10.1 /ARCH および /OPTIMIZE=TUNE 修飾子

「コンパイル・アンド・ゴー」の互換性を維持するために, /ARCH および /OPTIMIZE=TUNE 修飾子に対する Alpha 固有のキーワードがコンパイラ起動コマンドで受け付けられます。これらの値が無視されることを示す情報メッセージが出力されます。

/ARCH および /OPTIMIZE=TUNE 修飾子に対する I64 固有のキーワードは,OpenVMS I64 コンパイラで定義されていますが,これは開発用に提供されるものです。これらの修飾子の動作は予測できないため,使用すべきではありません。


目次 索引

© 2012 Hewlett-Packard Development Company, L.P.