Introductoin of Patches for ARM Tool Chain for Kernel 2.4 Nagata (Panasonic Mobile) 1. はじめに ARM/Thumb ツールチェーンをCELFのwikiにあげた。 VFPのサポートもしている。 2. Thumbのメリット コード密度を高める事。 3. code size比較 実行モジュール 86.8% ライブラリ 88.1% 合計 87.5% つまり、12.5%のサイズ削減ができた。 4. ツールチェーンのBUGについて 87件あった。 共有ライブラリの参照で問題がおおい。 ARMモードで問題がでないが、Thumbモードででることがある。 CELFのwikiにあげたツールチェーンは、この修正をすべてFIXしたもの。 mcaller-super-interworkingオプション。 caller側でbenieerコードをもたせる。 Symbian OSなどは、ARM社 nativeのコンパイラも動く。 しかし、Linuxはそうはいかない。 Thumb化により4MBのサイズ削減ができた。 性能の劣化なし。 5. gcc-3.3.1 について 約2年前から使用。 ARM VFPのサポートは入っていなかった。 このサポートを追加した。 kernelは2.6からのバックポートを行った。 gcc-3.4, 4.0はVFP対応しているので、現在そちらへの移行も検討している。 標準BENCHMARCH(linpack)で2.7倍、サンプルプログラムで3倍 性能が向上した。 6. まとめと今後の予定 gccは今後 gcc-3.4.5,4.1 で検討していく予定。 3.4.5では今回作成したpatchはだいぶ取り込まれたが、新規のBUGも入って きている。 CELFで議論、協力して作業を進めたいと考えている。