Oracle® Developer Studio 12.5: パフォーマンスライブラリユーザーズガイド

印刷ビューの終了

更新: 2016 年 6 月
 
 

SPARC プラットフォームでのトラップ 6 の有効化

SPARC プラットフォームでは、データの境界不整列によって障害が発生する可能性があるため、アプリケーションを –dalign または –xmemalign=8s でコンパイルできない場合は、境界不整列なデータのハンドラを提供するためにトラップ 6 を有効にします。SPARC プラットフォームでトラップ 6 を有効にするには、次の手順を実行します。

  1. このアセンブリコードを trap6_handler.s というファイルに配置します。
    	.global trap6_handler_
    	.text
    	.align 4
    trap6_handler_:
    	retl
    	ta    6
    
  2. trap6_handler.s をアセンブルします。
    my_system% fbe trap6_handler.s

    fbe は、アセンブリ言語ソースファイルからオブジェクトファイルを生成するコマンドです。

    Oracle Developer Studio パフォーマンスライブラリから呼び出される最初の並列化可能サブルーチンが、trap6_handler_ という名前のルーチンを呼び出します。trap6_handler_ が指定されていない場合、Oracle Developer Studio パフォーマンスライブラリは何もしないデフォルトハンドラを呼び出します。境界不整列なデータのハンドラが指定されていないと、致命的なトラップが発生します。

  3. コマンド行に trap6_handler.o を含めます。
    my_system% f95 any.f trap6_handler.o -library=sunperf