Re: MAXIMUM_ALIGNOF on Windows-32 - Mailing list pgsql-hackers

From Andrew Dunstan
Subject Re: MAXIMUM_ALIGNOF on Windows-32
Date
Msg-id 46A0C51C.10602@dunslane.net
Whole thread Raw
In response to Re: MAXIMUM_ALIGNOF on Windows-32  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: MAXIMUM_ALIGNOF on Windows-32  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-hackers

Tom Lane wrote:
> "Pavan Deolasee" <pavan.deolasee@gmail.com> writes:
>   
>> The MAXIMUM_ALIGNOF value is set to 8 bytes in a Windows- 32-bit
>> environment. I have very little knowledge about Windows, but at
>> the face of it, this looks strange. Any idea why is this required ?
>>     
>
> It's not entirely unreasonable.  The same thing happens on HPPA,
> which is nominally a 32-bit architecture but the hardware requires
> 8-byte alignment of doubles (and maybe int64 too, I forget).
> On newer Intel hardware it'd make sense to pad to avoid misaligned
> fetches.
>
> Anyway, we detect this directly based on the C compiler's behavior,
> and you can't argue with the compiler about it.  Whatever it's
> doing is right by definition.
>
>             
>   

Perhaps Pavan is referring to what is hardcoded in pg_config.h.win32 
which is used for MSVC builds  (but not for MinGW builds, IIRC), in 
which case the answer might be that in this file we need to be 
pessimistic about such things, since we have no reasonable way to run 
configure on this platform.

cheers

andrew


pgsql-hackers by date:

Previous
From: Tom Lane
Date:
Subject: Re: MAXIMUM_ALIGNOF on Windows-32
Next
From: Tom Lane
Date:
Subject: Re: MAXIMUM_ALIGNOF on Windows-32