This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Include SSE state in i386 fenv_t (bug 16064)


On Fri, May 9, 2014 at 9:06 AM, Joseph S. Myers <joseph@codesourcery.com> wrote:
> On Fri, 9 May 2014, H.J. Lu wrote:
>
>> On Fri, May 9, 2014 at 8:49 AM, Joseph S. Myers <joseph@codesourcery.com> wrote:
>> > On Fri, 9 May 2014, H.J. Lu wrote:
>> >
>> >> There are 4 unused short int fields in fenv_t.  Can we use 2 of them
>> >> for mxcsr instead of re-using __eip?
>> >
>> > You could, but I don't think it's worth the extra complexity.  __eip is
>> > already reused for this purpose in the fenv_private code.
>> >
>>
>> If I read fenv_private correctly, we don't load x87 fenv_t with
>>  __eip set to mxcsr.  Am I correct?
>
> That may be the case (and this patch avoids loading it in the <fenv.h>
> functions - it just loads 0 there in fesetenv rather than treating eip as
> a meaningful part of the x87 environment at C level).
>

When loading load x87 fenv_t, we should either not to
change __eip or set it to 0 together with other fields,
similar to other code paths in __fesetenv, to avoid any
potential issues.


-- 
H.J.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]