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: [PATCH] Disable use of FMA instructions in branred


From: Steven Munroe <munroesj@linux.vnet.ibm.com>
Date: Fri, 16 Mar 2012 11:20:23 -0500

> On Fri, 2012-03-16 at 11:25 -0400, Carlos O'Donell wrote:
>> On Fri, Mar 16, 2012 at 11:14 AM, Andreas Schwab <schwab@linux-m68k.org> wrote:
>> > __branred depends on precise double precision, and falls down completely
>> > if the compiler is allowed to contract floating-point expressions (which
>> > is does by default).
>> >
>> > Andreas.
>> >
>> > 2012-03-16  Andreas Schwab  <schwab@linux-m68k.org>
>> >
>> >        * configure.in (libc_cv_cc_nofma): Check for option to disable
>> >        generation of FMA instructions.
>> >        * configure: Regenerate.
>> >        * config.make.in (config-cflags-nofma): Set from libc_cv_cc_nofma.
>> >        * math/Makefile (CFLAGS-branred.c): Define.
>> 
>> Is this caught by the current testsuite?
>> 
>> If not, could we add a test for this regression?
>> 
> PowerPC has had FMA for a long time. Does the same failure exist on
> PowerPc or is this Intel specific?

I personally find this change highly suspect, especially because we
specifically have a multi-arch variant on x86-64 to build this file
with FMA4 enabled.  So whatever this "fixes", that fix will be undone
in the x86-64 multiarch build of this code.

I suspect we actually have either GCC bug or an unreasonable
assumption in the brandred.c code.


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