We currently ship libpixman in OpenSolaris with some files built to use
MMX & SSE instructions, and with code to call getisax() to select those
at runtime. The functions in question are always called via function
pointers to allow for CPU-specific optimized routines to be selected by
just modifying the function pointers at library initialization.
To allow this to work on older CPU's, we have to forcibly override the
linker by providing a mapfile with:
hwcap_1 = V0x0 FPU OVERRIDE;
Now that PSARC/2010/022 Linker-editors: Symbol Capabilities has integrated,
is there a better solution for us? I've not been planning to convert whole
hog to the linker selection of routines, since that would be more of a change
from other platforms, just wondering if there was now a better way to flag
that the entire library shouldn't inherit the hwcap of these specific files.
If you're interested in seeing how the upstream code currently works it can be
browsed at http://cgit.freedesktop.org/pixman/tree/ or downloaded from
http://xorg.freedesktop.org/releases/individual/lib/pixman-0.17.14.tar.bz2
--
-Alan Coopersmith- [email protected]
Oracle Solaris Platform Engineering: X Window System
_______________________________________________
tools-linking mailing list
[email protected]