Re: seg regression failures

From: Magnus Hagander <magnus(at)hagander(dot)net>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: Andrew Dunstan <andrew(at)dunslane(dot)net>, pgsql-patches <pgsql-patches(at)postgresql(dot)org>
Subject: Re: seg regression failures
Date: 2007-03-23 18:56:37
Message-ID: 460422E5.5040306@hagander.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-patches

Tom Lane wrote:
> Magnus Hagander <magnus(at)hagander(dot)net> writes:
>> The SEG parameters going into seg_overlap() look perfectly correct, and
>> seg_overlap() actually returns 0. But this is somehow later turned into
>> 't'. Any pointers for where to look for how that happens?
>
> I'll betcha that MSVC is generating code that only sets the low-order
> byte of the return register (EAX likely) where GCC tends to set the
> whole register. So when the returned value is taken as a Datum, it
> might contain some garbage.

That looks very consistent with the data in my debugger (returned value
is not zero for the whole datum, but casted to bool it's fine).

I'm just going to clean up a compile error I introduced and try your
suggestion below, and I'll let you know how it works out.

//Magnus

In response to

Responses

Browse pgsql-patches by date

  From Date Subject
Next Message Magnus Hagander 2007-03-23 19:15:32 Re: seg regression failures
Previous Message Tom Lane 2007-03-23 18:46:27 Re: seg regression failures