Re: [PATCH][GCC][AArch64] Inline calls to lrint when possible

2017-08-10 Thread Szabolcs Nagy
On 07/06/17 12:38, Tamar Christina wrote: > Hi All, > > This patch allows the inlining of lrint when -fno-math-errno > assuming that errno does not need to be set when the rounded value > is not representable as a long. > turns out emitting frintx+fcvtzs is wrong for ilp32 because spurious inexa

Re: [PATCH][GCC][AArch64] Inline calls to lrint when possible

2017-06-12 Thread Tamar Christina
Hi Christophe, Thanks, I've committed a fix to the testcase. Tamar From: Christophe Lyon Sent: Monday, June 12, 2017 1:10:38 PM To: Tamar Christina Cc: GCC Patches; nd; Richard Earnshaw; Marcus Shawcroft Subject: Re: [PATCH][GCC][AArch64] Inline cal

Re: [PATCH][GCC][AArch64] Inline calls to lrint when possible

2017-06-12 Thread Christophe Lyon
Hi Tamar, On 8 June 2017 at 18:50, James Greenhalgh wrote: > On Wed, Jun 07, 2017 at 12:38:27PM +0100, Tamar Christina wrote: >> Hi All, >> >> This patch allows the inlining of lrint when -fno-math-errno >> assuming that errno does not need to be set when the rounded value >> is not representable

Re: [PATCH][GCC][AArch64] Inline calls to lrint when possible

2017-06-08 Thread James Greenhalgh
On Wed, Jun 07, 2017 at 12:38:27PM +0100, Tamar Christina wrote: > Hi All, > > This patch allows the inlining of lrint when -fno-math-errno > assuming that errno does not need to be set when the rounded value > is not representable as a long. > > The case > > void f(double *a, long *b, double x)

[PATCH][GCC][AArch64] Inline calls to lrint when possible

2017-06-07 Thread Tamar Christina
Hi All, This patch allows the inlining of lrint when -fno-math-errno assuming that errno does not need to be set when the rounded value is not representable as a long. The case void f(double *a, long *b, double x) { *a = __builtin_rint(x); *b = __builtin_lrint(x); } now generate