[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[pbsd-mg2] Re: successful self make build
> > | endianによってmipsがmipselとmipsebに分離されたように、FPAの有無によって、
> > | たとえば以下のように分ければよいのではないでしょうか。
> > これは、mipshfeb, mipssfeb, mipshfel mipssfebの方がいいのでは。
>
> これって、MACHINE_ARCH で分けるのが適当でしょうか?
> m68k や i386、arm も浮動小数点をエミュレーションで実行しなければいけな
> いハードウェアは存在しますけど、MACHINE_ARCH は分かれてませんよね?
>
> もちろん、現状は -msoft-float が必要ですけど、これは将来的には解決可能
> ですよね。ただ、将来的にも -msoft-float なバイナリ配付は必要だと思うの
> で、ちょっと悩むところですが。
浮動小数点エミュレーションはかなり大変らしいので、将来的といっても、
かなり遠いかも知れません。
コンパイラの互換性がないとなれば、コンパイラを mips[sh]el-netbsd で
分けるのは妥当な気がします。
(NetBSD の MACHINE_ARCH は無関係というか、別の話のような...)
とはいえ、互換性がないのは、ライブラリの setjmp などに load/store
命令がすこし入っているという点だけなのですよね?
そこでちょっと考えたのですが、カーネルが FP reg. の load/store を無視
して program counter を進めることができれば、
gcc は mipsel-netbsd で共通で、user land のコンパイルの際に
どこかで CFLAGS=-msoft-float できればよいのではないでしょうか。(嘘?)
上記のような例外の無視は、やっぱり困難でしょうか?
Takemura