Sun Studio 12: Fortran ユーザーズガイド

D.1 一般的な Fortran 指令

f95 で使用可能な一般的な指令については、「1.9 コマンド行ヘルプ」で説明します。

表 D–1 一般的な Fortran 指令の要約

書式

C$PRAGMA keyword ( a [ , a ] … ) [ , keyword ( a [ , a ] … ) ] ,…

C$PRAGMA SUN keyword ( a [ , a ] … ) [ , keyword ( a [ , a ] … ) ] ,…

C$PRAGMA SPARC keyword ( a [ , a ] … ) [ , keyword ( a [ , a ] … ) ] ,…

1 桁目に指定する注釈指示子は、cC!、または * です。これらの例では注釈指示子として C を使用していますが、f95 の自由形式では ! を使用する必要があります。

C 指令

C$PRAGMA C(list)

外部関数の名前リストを C 言語のルーチンとして宣言します。 

IGNORE_TKR 指令

C$PRAGMA IGNORE_TKR {name {, name} ...}

コンパイラは、特定の呼び出しを解釈するとき、一般的な手続きのインタフェースで表示される仮引数名の型、種類、ランクを無視します。 

UNROLL 指令

C$PRAGMA SUN UNROLL=n

コンパイラに、次のループは長さ n に展開できることを伝えます。

WEAK 指令

C$PRAGMA WEAK(name[=name2])

name を弱いシンボル (weak symbol) または name2 の別名として宣言します。

OPT 指令

C$PRAGMA SUN OPT=n

副プログラムの最適化レベルを n に設定します。

NOMEMDEP 指令

C$PRAGMA SUN NOMEMDEP

次のループにメモリーの依存関係が存在しないことを宣言します。 

-parallel または -explicitpar が必要です。

PIPELOOP 指令

C$PRAGMA SUN PIPELOOP=n

ループの n 離れた反復間の依存性を宣言します。

PREFETCH 指令

C$PRAGMA SUN_PREFETCH_READ_ONCE (name)

C$PRAGMA SUN_PREFETCH_READ_MANY (name)

C$PRAGMA SUN_PREFETCH_WRITE_ONCE (name)

C$PRAGMA SUN_PREFETCH_WRITE_MANY (name)

名前の参照のために、先読み命令を生成するようにコンパイラに要求します。-xprefetch オプションを指定する必要があります。

ASSUME 指令

C$PRAGMA [BEGIN} ASSUME (expression [,probability])

C$PRAGMA END ASSUME

プログラム内の特定の個所において、コンパイラが真であると想定できる条件について表明を行います。