Subject | : Re^3: SAD Update. V1.0.10.2.3b. g95 compatible. |
Date | : 2008/02/17(Sun) 01:38:49 |
Contributor | : Akio Morita |
>
> >
> > o Cによる itfgetbufの実装(src/itfgetbuf_.c)は read文と競合がある場合、一般には正しく
> > 動かないと思われます。(Fortran I/O側の bufferingがあるため)
> > 逆に、src/itfgetbuf_.cで問題ないなら、Fortran I/Oを捨てられるのでは?
>
> 今回の変更で本質的なのはここだけで、Fortranのinputはもう使わないようになった(そうしなければg95には対応できない)ということです。ただ、他のシステムで動くかどうか確かめるために中途半端な状態になっています。
>
だとすると、中途半端な Fortran fgetc()もどきを使わず、readstr()/writeb()系を
POSIXな system call + libcのみで書き換える方が目的にかなうと思います
#g95が、I/O INTRINSICで 最近の gfortranと違うのは GCC 4.0.xで gfortranから g95が forkし
#g95 projectの目的が数値計算系で必要とされる機能の実装を優先しているためだと思われます
#fgetcのダミールーチンも GCC 4.0でのテスト用に書いたものですし...
手元の環境で、試している GCCのバリエーションとして llvm-gccを評価中
ICC程は早くないですが、一部のコードでは GCC 4.2.3よりも 20-30%ぐらい高速な
コードを生成してくれます