Once upon a time, Jamie Zawinski jwz@jwz.org said:
Chris Adams wrote:
Some other RPMs have code that detects i386 vs. i686 vs. Athlon (really "regular" vs. MMX/SSE/etc.) at runtime and uses the best available.
Just curious -- which packages are those? (Besides X and kernel.)
I think some of the video related libraries do, but I don't know which right off. A quick check on my system (FC2 still) looks like:
/usr/X11R6/lib/libOSMesa.so.4 checks for MMX, 3DNow!, SSE /usr/bin/gimp checks for MMX, 3DNow!, SSE /usr/bin/xmms may use MMX, 3DNow! /usr/lib/libFLAC.so.4 may use cmov, MMX, SSE, SSE2, 3DNow! /usr/lib/libSDL-1.2.so.0 may use MMX, SSE /usr/lib/libgstreamer-0.8.so may use MMX, 3DNow!, SSE /usr/lib/libasound.so.2 may use MMX
Looking at libraries on my system, I also see special versions of some libraries:
/lib/tls/libdb-4.2.so /usr/lib/tls/libdb_cxx-4.2.so /usr/lib/sse2/libgmp.so.3 /usr/lib/sse2/libgmpxx.so.3 /usr/lib/sse2/libmp.so.3
The tls libraries are different because of threading, but that is i686 related.
I also see other things (from freshrpms and such) that are i386 arch but the library/binary has MMX/SSE/etc. detection code.