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:45 AM, Joseph S. Myers <joseph@codesourcery.com> wrote:
> On Fri, 9 May 2014, H.J. Lu wrote:
>
>> 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.
>
> This patch sets all those fields to 0 unconditionally.
>
> 2014-05-09  Joseph Myers  <joseph@codesourcery.com>
>
>         [BZ #16064]
>         * sysdeps/i386/fpu/fegetenv.c: Include <unistd.h>, <ldsodefs.h>
>         and <dl-procinfo.h>.
>         (__fegetenv): Save SSE state in envp->__eip if supported.
>         * sysdeps/i386/fpu/feholdexcpt.c (feholdexcept): Save SSE state in
>         envp->__eip if supported.
>         * sysdeps/i386/fpu/fesetenv.c: Include <unistd.h>, <ldsodefs.h>
>         and <dl-procinfo.h>.
>         (__fesetenv): Always set __eip, __cs_selector, __opcode,
>         __data_offset and __data_selector in environment to 0.  Set SSE
>         state if supported.
>         * sysdeps/x86/fpu/Makefile [$(subdir) = math] (tests): Add
>         test-fenv-sse.
>         [$(subdir) = math] (CFLAGS-test-fenv-sse.c): Add -msse2
>         -mfpmath=sse.
>         * sysdeps/x86/fpu/test-fenv-sse.c: New file.
>

Looks good to me.

Thanks.


-- 
H.J.


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