At Fri, 31 May 2002 23:00:21 +0900, tarosuke wrote: > > On Fri, May 31, 2002 at 10:32:59PM +0900, Yoshinori Sato wrote: > > (*_*) Masahiro Ochiai wrote: > > > gcc-2.95.xの場合ビットフィールドを使っても、BSET,BCLRといったインストラクションを生成しない > > > みたいなので、それも気になってます。gcc ver.3はどうなのかな? > > GCC 3.1でも同じコードになりました。 > > h8300.mdを見るかぎり、条件によってはビット操作命令が生成されるようになっ > > ていますが、条件がよくわかりません。最適化ではなさそうですが。 > > bset、bclrは直接には8ビットアドレッシングしかできないようなので、その関係なんじゃないでしょうか。 > あるいは構造体ポインタ(定数は除外)を用いたときだけレジスタ間接で...とか。 今回の場合は、コンパイルした時点でアドレスが確定しているので、最適化すれ ばいいかなと思ったんですが、最適化レベルを上げていっても変わりませんでし た。 そのへんを少し追いかけてみましたが、謎のままです。 -- Yoshinori Sato <qzb04471@xxxxxxxxxxx>