2
Fortran 77でC言語で "#pragma GCC optimize(" o3 ")"のような関数固有のオプションプラグマを使用したいとします。 しかし、それを.fコードに適用しないでください。何か案は?gfortranで "プラグマGCC最適化"を使用する
foo.f:
...
call hoge
...
subroutine hoge
IMPLICIT REAL*4(a-h,o-z)
...
end
hoge.f:
...
call hoge
...
!$pragma GCC optimize("O3")
subroutine hoge
IMPLICIT REAL*4(a-h,o-z)
...
end
ターミナル:
$ gfortran -O0 foo.f -o o0
$ gfortran -O0 hoge.f -o o3
$ cmp o0 o3
$
すべてのFortran質問について、tag [tag:fortran]を使用してください。そのようなプラグマはFortranでサポートされるべきだと思いますか?マニュアルで見つけましたか?私は彼らがサポートされているとは思わない。 –
返信いただきありがとうございます。レガシーコードを最適化するために、f77の各関数にコンパイラオプションを適用したかったのです。私はそれを行う方法を検索したとき、私はC言語用のプラグマGCC最適化ディレクティブを見つけました。私は同様の方法でf77コードにコンパイラオプションを適用できると思った。 私はfortran77に精通していません。だから、もしアイデアがあれば教えてください。 機能固有のオプションプラグマ(GCC):https://gcc.gnu.org/onlinedocs/gcc/Function-Specific-Option-Pragmas.html#Function-Specific-Option-Pragmas –
珍しい機能や文書化されていない機能を試すときは、 *少なくとも非常に良い理由*を持っていることは良いことです。コンパイラフラグを使用せず、完全なファイルを最適化しないのはなぜですか? –