[Uclinux-h8-devel] GCC

Back to archive index

Yoshinori Sato qzb04****@nifty*****
2002年 11月 12日 (火) 21:57:34 JST


At Tue, 12 Nov 2002 16:48:32 +0900 (JST),
NIIBE Yutaka wrote:
> 
> H8 のよりよい実行のために GCC をいじろうと考えています。
> 
> MIPS などで実装されている embeded pic のオプションを用い, 生成されるコー
> ドは, 以下の 2 点となるように考えてます。
> 
> 	(1) text セグメントに対するアクセスは全て PC 相対
> 	(2) data セグメント, bss に対するアクセスは
> 	    r5 レジスタ相対としてアクセス
> 
> r5 レジスタがカーネルで設定され, 個別の領域(data セグメント, bss)を持
> つ。text セグメントはプロセスで共有される。exec は data セグメント,
> bss をコピーし, r5 を設定し飛んでいくだけ。relocation をいじる必要はな
> い。

コードについてはm68kと同じ方針なので、問題無いと思います。
exec時のer5は今のカーネルでもセットしているので、それを使えるはずです。
(正しい値をセットしているかどうか確認していませんが)
textの共有は今のロードルーチンでは対応できないので、修正が必要です。

> さて, どの GCC から分岐するのが良いでしょうか。

条件を付けるとすれば、ELFサポートだけなので、3.1以降でしょうか。
2.0.39のカーネルは2.95.3でないとコンパイル出来ませんが、PICサポートは
不要なので、無視しても問題はないでしょう。

3.1.1を使っている事に深い理由も無いので、特に問題がなければ3.2でいいと
思います。

-- 
Yoshinori Sato
<qzb04****@nifty*****>



Uclinux-h8-devel メーリングリストの案内
Back to archive index