From: Tietew Date: 2008-06-12T11:42:47+09:00 Subject: [ruby-dev:35067] Re: SSE2版 strlen On Thu, 12 Jun 2008 11:08:23 +0900 In article <85d4mnquai.wl%zn@mbf.nifty.com> [[ruby-dev:35066] Re: SSE2版 strlen] Kazuhiro NISHIYAMA wrote: > > でもコンパイル時のチェックですよね。新しいCPUのある環境でコ > > ンパイルしたバイナリは古いCPUで使えないということになるんで > > しょうかねぇ。 > > この場合に使えるのかどうかはわかりませんが、 > glibcにはHWCAPという仕組みがあるようです。 > > http://gotom.jp/~gotom/pub/2003-07-debuan-03summer/debuan-2003-summer.txt 現在のLinuxでは確か sse2 の判別は既定でオンになっているので、使えると思 います。上の文書は、Debian は mmx に加えて cmov の判別を既定でオンにした 経緯かと。パッケージメンテナに判断してもらえばよいのではないでしょうか。 このあたりの話、BINARY HACKS (ISBN 4873112885) に載っていました。 あとはもう、ランタイムでsse2の存否を判断して、動的に切り替えるかですね。 -- Tietew Blog: http://www.tietew.jp/ PGP: 26CB 71BB B595 09C4 0153 81C4 773C 963A D51B 8CAA