From: Vladimir Mezentsev
FMA (floating-point multiply-add) instructions are supported on aarch64.
These instructions can produce different result if two operations executed
separately.
-ffp-contract=off doesn't allow the FMA instructions.
Tested on two platforms:
aarch64-unknown-linux-gnu: No
From: Vladimir Mezentsev
FMA (floating-point multiply-add) instructions are supported on aarch64.
These instructions can produce different result if two operations executed
separately.
-ffp-contract=off doesn't allow the FMA instructions.
Tested on aarch64-unknown-linux-gnu. No regression. Two
From: Vladimir Mezentsev
Tested on aarch64-linux-gnu, x86_64-pc-linux-gnu and sparc64-unknown-linux-gnu.
No regression. New tests now passed.
There is a performance degradation for complex double type:
failed cases |time
old new| old new
complex-32
From: Vladimir Mezentsev
Tested on aarch64-linux-gnu, x86_64-pc-linux-gnu and sparc64-unknown-linux-gnu.
No regression. New tests now passed.
There is a performance degradation for complex double type:
failed cases |time
old new| old new
complex-32
Vladimir wrote:
+# Disable floating-point expression contraction
+LIBGCC2_FFP_CONTRAST_CFLAGS = -ffp-contract=off
+
It looks like this disables fp-contract in all of libgcc...
What is the the number of FMAs in libgcc before/after?
If it disables anything other than the ones in complex division,
On 19/10/17 14:07, Wilco Dijkstra wrote:
> Vladimir wrote:
>
> +# Disable floating-point expression contraction
> +LIBGCC2_FFP_CONTRAST_CFLAGS = -ffp-contract=off
> +
>
> It looks like this disables fp-contract in all of libgcc...
> What is the the number of FMAs in libgcc before/after?
>
> If i
On 10/19/2017 06:37 AM, Richard Earnshaw (lists) wrote:
On 19/10/17 14:07, Wilco Dijkstra wrote:
Vladimir wrote:
+# Disable floating-point expression contraction
+LIBGCC2_FFP_CONTRAST_CFLAGS = -ffp-contract=off
+
It looks like this disables fp-contract in all of libgcc...
What is the the numbe
Vladimir Mezentsev
> On 10/19/2017 06:37 AM, Richard Earnshaw (lists) wrote:
>> On 19/10/17 14:07, Wilco Dijkstra wrote:
>>> Vladimir wrote:
>>>
>>> +# Disable floating-point expression contraction
>>> +LIBGCC2_FFP_CONTRAST_CFLAGS = -ffp-contract=off
>>> +
>>>
>>> It looks like this disables fp-co
On 10/19/2017 06:07 AM, Wilco Dijkstra wrote:
> Vladimir wrote:
>
> +# Disable floating-point expression contraction
> +LIBGCC2_FFP_CONTRAST_CFLAGS = -ffp-contract=off
> +
>
> It looks like this disables fp-contract in all of libgcc...
> What is the the number of FMAs in libgcc before/after?
In ori
On Wed, 25 Oct 2017, vladimir.mezent...@oracle.com wrote:
> +# Disable FMA (floating-point multiply-add) instructions for complex
> division.
> +# These instructions can produce different result if two operations executed
> separately.
> +LIBGCC2_FFP_CONTRAST_CFLAGS = -ffp-contract=off
> +LIB2_D
On 10/25/2017 10:28 AM, Joseph Myers wrote:
> On Wed, 25 Oct 2017, vladimir.mezent...@oracle.com wrote:
>
>> +# Disable FMA (floating-point multiply-add) instructions for complex
>> division.
>> +# These instructions can produce different result if two operations
>> executed separately.
>> +LIBGC
On Wed, 25 Oct 2017, vladimir.mezent...@oracle.com wrote:
> On 10/25/2017 10:28 AM, Joseph Myers wrote:
> > On Wed, 25 Oct 2017, vladimir.mezent...@oracle.com wrote:
> >
> >> +# Disable FMA (floating-point multiply-add) instructions for complex
> >> division.
> >> +# These instructions can produc
On Thu, 25 Jan 2018, vladimir.mezent...@oracle.com wrote:
> From: Vladimir Mezentsev
>
> Tested on aarch64-linux-gnu, x86_64-pc-linux-gnu and
> sparc64-unknown-linux-gnu.
> No regression. New tests now passed.
> There is a performance degradation for complex double type:
This is, of course, so
On 01/25/2018 04:14 PM, Joseph Myers wrote:
> On Thu, 25 Jan 2018, vladimir.mezent...@oracle.com wrote:
>
>> From: Vladimir Mezentsev
>>
>> Tested on aarch64-linux-gnu, x86_64-pc-linux-gnu and
>> sparc64-unknown-linux-gnu.
>> No regression. New tests now passed.
>> There is a performance degrada
On Mon, 29 Jan 2018, vladimir.mezent...@oracle.com wrote:
> > What about powerpc __divkc3?
> >
> > What was the rationale for using soft-fp rather than adding appropriate
> > built-in functions as suggested in a comment?
>
> I had a version with built-in functions and I can restore it.
>
> Let'
On 01/29/2018 12:51 PM, Joseph Myers wrote:
> On Mon, 29 Jan 2018, vladimir.mezent...@oracle.com wrote:
>
>>> What about powerpc __divkc3?
>>>
>>> What was the rationale for using soft-fp rather than adding appropriate
>>> built-in functions as suggested in a comment?
>> I had a version with built
On Mon, 5 Feb 2018, vladimir.mezent...@oracle.com wrote:
> My implementation avoids these issues.
> I use soft-fp instead built-in functions because performance with built-in
> functions (like __builtin_ilogb) is in two times worse.
> Also libm is needed for built-in functions.
I think you still
On Tue, 6 Feb 2018, vladimir.mezent...@oracle.com wrote:
> I compared with __builtin_ilogb. There is a same performance degradation.
I'm not clear on exactly what you compared with.
Do you mean the *existing* __builtin_ilogb? That's only supported for
constant arguments that are not zero, inf
On 02/06/2018 08:53 AM, Joseph Myers wrote:
> The files in libgcc/soft-fp must be verbatim copies of the master sources
> in glibc. So you can't make any local changes to them, and if you think
> changes are needed you need to patch things upstream in glibc first, with
> a proper extended explan
On Tue, 6 Feb 2018, vladimir.mezent...@oracle.com wrote:
> We see 'struct _FP_STRUCT_LAYOUT' is declared twice (in lines 206 and
_FP_STRUCT_LAYOUT is not a struct tag. It is a macro that may be defined
to empty, or to an attribute, and defaults to empty in soft-fp.h if not
otherwise defined in
20 matches
Mail list logo