えぐち@エスアンドイー です。

>>> In message [ruby-dev:8566] Re: BIGDN
    On Tue, 7 Dec 1999 14:46:08 +0900, toyofuku / juice.or.jp said:

豊福>   豊福です。

豊福>   ところでクイズ的興味なんですが、
豊福>  (((x)<0) ? ~((~(x))>>y) : (x)>>y) を分岐なしで
豊福> 効率もあまり落とさない書き方はないでしょうか。

  ((x)/(1<<(y)))

は、いい線行っていると思いますが。
y が、ちょっと大きいとと0除算になるのが難点ですね。
あと、割算命令を生成する可能性があるのも、嫌ですね。

({typeof(x) m = -(x<0); ((x^m)>>y)^m;})

なんてのが、どこでも通ればいいですが、これはダメですよね。

だいたい、もともと最適化で x>>y と同じコードを生成しないかな?

	えぐち