Re: float4/float8/int64 passed by value with tsearch fixup

From: Zoltan Boszormenyi <zb(at)cybertec(dot)at>
To: Alvaro Herrera <alvherre(at)commandprompt(dot)com>
Cc: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Gregory Stark <stark(at)enterprisedb(dot)com>, pgsql-patches(at)postgresql(dot)org, Hans-Juergen Schoenig <hs(at)cybertec(dot)at>, Magnus Hagander <magnus(at)hagander(dot)net>
Subject: Re: float4/float8/int64 passed by value with tsearch fixup
Date: 2008-04-19 18:20:08
Message-ID: 480A37D8.4030009@cybertec.at
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-patches

Alvaro Herrera írta:
> Tom Lane wrote:
>
>
>> Specifically, I think what you missed is that on some platforms C
>> functions pass or return float values differently from similar-sized
>> integer or pointer values (typically, the float values get passed in
>> floating-point registers).
>>
>
> Argh ... I would have certainly missed that.
>
>
>> It'd be less ugly to convert to v1 calling convention.
>>
>
> Okay -- I'll change contrib/seg to v1 to greenify back the buildfarm.
>
>
>> So I think we really do need to offer that compile-time option.
>> Failing to do so will be tantamount to desupporting v0 functions
>> altogether, which I don't think we're prepared to do.
>>
>
> I have asked the Cybertec guys for a patch. Since it's basically a copy
> of the float8 change, it should be easy to do.
>

Here's the patch (against current CVS) with the required change.
Please review, it passed make check with both --enable and
--disable-float4-byval.

--
----------------------------------
Zoltán Böszörményi
Cybertec Schönig & Schönig GmbH
http://www.postgresql.at/

Attachment Content-Type Size
01-pg84-passedbyval-float4-config.patch.gz application/x-tar 3.4 KB

In response to

Responses

Browse pgsql-patches by date

  From Date Subject
Next Message Alvaro Herrera 2008-04-19 18:25:57 Re: float4/float8/int64 passed by value with tsearch fixup
Previous Message Tom Lane 2008-04-19 00:18:16 Re: float4/float8/int64 passed by value with tsearchfixup