cvs commit: src/lib/msun/i387 fenv.c fenv.h
scottl at samsco.org
Thu Mar 17 22:20:07 PST 2005
David Schultz wrote:
> On Fri, Mar 18, 2005, Alexey Dokuchaev wrote:
>>On Thu, Mar 17, 2005 at 10:21:46PM +0000, David Schultz wrote:
>>>das 2005-03-17 22:21:46 UTC
>>> FreeBSD src repository
>>> Modified files:
>>> lib/msun/i387 fenv.c fenv.h
>>> Make the fenv.h routines work for programs that use SSE for
>>> floating-point arithmetic on i386. Now I'm going to make excuses
>>> for why this code is kinda scary:
>>> - To avoid breaking the ABI with 5.3-RELEASE, we can't change
>>> sizeof(fenv_t). I stuck the saved mxcsr in some discontiguous
>>> reserved bits in the existing structure.
>>Why do you care about ABI compatibility between 6-CURRENT and 5.3-RELEASE?
>>If you plan to MFC this code at some point, you could use your current
>>approach in RELENG_5. This would, of course, mean you'd have to maintain
>>two different code sets, but still.
> The reasons are manifold. For one, I would like the complicated
> version to get exposure in -CURRENT before I MFC it. Further,
> this only adds a few extra instructions, so it's not a big deal,
> particularly compared to the code to support older processors.
> You're right that I could just bump the libm version number and
> break the ABI, but that inconveniences people, so I would like to
> avoid it when possible.
You had better bump the version number for libm before 6.0 rolls
around!! I've just found a 3rd party binary-only package that
supports 'FreeBSD 5.x' but is linked against libm.so.2. Ugh. We
need to bury that mistake and NOT make it again.
More information about the cvs-all