(toppers-users 2215) Re: SH4用のコンパイル結果について

nob_sakawa nob @ sakawa.ota.tokyo.jp
2005年 11月 18日 (金) 18:01:24 JST


酒匂です。
shのgccをメンテしている小島さんから、回答がありました。
3.4.3に限ったことではなさそうですね。

以下、小島さんからの回答です。
> 小島です。
> はたと思いついたのですが、ひょっとして ___fpscr_values  
> がうまく
> 初期化されていないのではないでしょうか?  sh-linux だと違 
> うので
> すっかり忘れていたのですが newlib ということは sh- 
> elf ターゲット
> で gcc を作っているのだとすると ___fpscr_values は  
> libgcc.a の
> 中で .common で定義されていてスタートアップの時に値を設 
> 定しないと
> FPU のモードがうまく初期化されない気がします。 sh-elf だ 
> と普通は
> crt1.o 中で設定するはずですが特別なスタートアップを使っている 
> とか
> リンク時に間違って sh3 用の crt1.o で link  
> していたりするとそう
> なってしまいそうな気がします。 gcc -v でリンク時にどんな  
> crt1.o
> をリンクしているか見てもらってその crt1.o の中でからちゃ 
> んと
> ___set_fpscr が呼ばれているか check してもらうのがいいか 
> もしれ
> ません。
> ___fpscr_values を壊している可能性もありますが簡単なプログラム
> でそうなるというなら crt1.o 自体の問題のような気がします。