Re: __FreeBSD_version
2011/11/23 Christoph Egger <christoph@debian.org>:
> I'm one of those who do use this kind of `hack` in sbcl. However the
> sbcl code here would be broken in squeeze if __FreeBSD_version was set
> to 8 as it made assumptions about SIGNAL handlers based on this that
> IIRC were based on libc stuff (squeeze glibc targetting FreeBSD 7 ABI or
> something). This might be misuse of the macro and I don't care that much
> if it's set in glibc or not, just wanting to mention.
Uhm I see. This is clearly an example of the situation I described:
/* FPU state is saved per context on post-KSE systems.
* On earlier systems, it is shared in a whole process.
*/
#if defined(__FreeBSD_version) && __FreeBSD_version >= 500040
struct envxmm *ex = (struct envxmm *)(context->uc_mcontext.mc_fpstate);
__asm__ __volatile__ ("fldcw %0" : : "m" (ex->en_cw));
#endif
--
Robert Millan
Reply to: