This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: [PATCH v2] Fix static-binary lazy FPU context allocation
- From: Steve Ellcey <sellcey at mips dot com>
- To: "Maciej W. Rozycki" <macro at codesourcery dot com>
- Cc: Carlos O'Donell <carlos at redhat dot com>, <libc-alpha at sourceware dot org>
- Date: Thu, 19 Sep 2013 11:00:54 -0700
- Subject: Re: [PATCH v2] Fix static-binary lazy FPU context allocation
- Authentication-results: sourceware.org; auth=none
- References: <alpine dot DEB dot 1 dot 10 dot 1309042303200 dot 29360 at tp dot orcam dot me dot uk>
On Thu, 2013-09-05 at 17:10 +0100, Maciej W. Rozycki wrote:
> 2013-09-05 Maciej W. Rozycki <macro@codesourcery.com>
>
> * csu/init-first.c (_init): Remove the !SHARED condition around
> FPU control word initialization.
> * elf/dl-support.c (_dl_fpu_control): New variable.
> (_dl_aux_init) <AT_FPUCW>: Initialize it.
> * math/test-fpucw.c [!FPU_CONTROL] (FPU_CONTROL): New macro.
> (main): Replace _FPU_DEFAULT with FPU_CONTROL throughout.
> * math/test-fpucw-static.c: New file.
> * math/test-fpucw-ieee.c: New file.
> * math/test-fpucw-ieee-static.c: New file.
> * math/Makefile (tests): Add `test-fpucw-ieee' and
> `$(tests-static)'.
> (tests-static): New variable.
> [($(build-shared),yes)] ($(addprefix $(objpfx),$(tests))): Move
> dependency to...
> [($(build-shared),yes)]
> ($(addprefix $(objpfx),$(filter-out $(tests-static),$(tests)))):
> ... this.
> [($(build-shared),yes)] ($(addprefix $(objpfx),$(tests-static))):
> New dependency.
>
> Maciej
Maciej,
I was running the glibc testsuite on MIPS and I noticed that the new
math/test-fpucw-ieee.c and math/test-fpucw-ieee-static.c tests you added
are failing to compile if I build and test glibc in soft-float mode. I
am not sure if this is a MIPS specific problem or not.
test-fpucw.c: In function 'main':
test-fpucw-ieee.c:19:21: error: '_FPU_IEEE' undeclared (first use in this function)
#define FPU_CONTROL _FPU_IEEE
^
test-fpucw.c:37:14: note: in expansion of macro 'FPU_CONTROL'
if (cw != (FPU_CONTROL & ~_FPU_RESERVED))
^
test-fpucw-ieee.c:19:21: note: each undeclared identifier is reported only once for each function it appears in
#define FPU_CONTROL _FPU_IEEE
^
test-fpucw.c:37:14: note: in expansion of macro 'FPU_CONTROL'
if (cw != (FPU_CONTROL & ~_FPU_RESERVED))
^
test-fpucw-ieee.c: At top level:
test-fpucw-ieee.c:24:31: error: '_FPU_IEEE' undeclared here (not in a function)
fpu_control_t __fpu_control = _FPU_IEEE;
Steve Ellcey
sellcey@mips.com