Re: WIP: expression evaluation improvements - Mailing list pgsql-hackers

From Andres Freund
Subject Re: WIP: expression evaluation improvements
Date
Msg-id 20191024225359.h4n555huk6xpiikd@alap3.anarazel.de
Whole thread Raw
In response to Re: WIP: expression evaluation improvements  (Andreas Karlsson <andreas@proxel.se>)
List pgsql-hackers
Hi,

On 2019-10-25 00:43:37 +0200, Andreas Karlsson wrote:
> On 10/23/19 6:38 PM, Andres Freund wrote:
> > In the attached *prototype* patch series there's a lot of incremental
> > improvements (and some cleanups) (in time, not importance order):
> 
> You may already know this but your patch set seems to require clang 9.

I didn't, so thanks!


> I get the below compilation error which is probably cause by
> https://github.com/llvm/llvm-project/commit/90868bb0584f first being
> committed for clang 9 (I run "clang version 7.0.1-8
> (tags/RELEASE_701/final)").
> 
> In file included from gistutil.c:24:
> ../../../../src/include/utils/float.h:103:7: error: invalid output
> constraint '=@ccae' in asm
>                          : "=@ccae"(ret), [clobber_reg]"=&x"(clobber_reg)
>                            ^
> 1 error generated.

I'll probably just drop this patch for now, it's not directly related. I
kind of wanted it on the list, so I have I place I can find it if I
forget :).

I think what really needs to happen instead is to improve the code
generated for __builtin_isinf[_sign]() by gcc/clang. They should proce
the constants like I did, instead of loading from the constant pool
every single time. That adds a fair bit of latency...

Greetings,

Andres Freund



pgsql-hackers by date:

Previous
From: Andreas Karlsson
Date:
Subject: Re: WIP: expression evaluation improvements
Next
From: Tomas Vondra
Date:
Subject: Re: Creating foreign key on partitioned table is too slow