On Fri, Apr 13, 2012 at 9:44 AM, H.J. Lu <
hjl....@gmail.com> wrote:
> On Fri, Apr 13, 2012 at 9:40 AM, H. Peter Anvin <
h...@zytor.com> wrote:
>> On 04/13/2012 09:18 AM, H.J. Lu wrote:
>>> Hi,
>>>
>>> We need a reliable way to tell if we are compiling for x32 through
>>> pre-defined preprocessor symbol. __LP64/__LP64__ aren't
>>> specified by x86-64 psABI, although they have been added to
>>> GCC 3.3. They can't be counted on to detect x32 since not x86-64
>>> compilers define them. I updated x32 psABI:
>>>
>>>
https://sites.google.com/site/x32abi/documents>>>
>>> to define __ILP32 and __ILP32__ for X32 programming model. I
>>> will submit a patch for GCC trunk and 4.7 branch.
>>>
>>
>> Can we add __LP64__ to the psABI too?
>>
>
> X32 psABI has
>
> __amd64 Defined for both LP64 and X32 programming models.
> __amd64__ Defined for both LP64 and X32 programming models.
> __x86_64 Defined for both LP64 and X32 programming models.
> __x86_64__ Defined for both LP64 and X32 programming models.
> __LP64 Defined for LP64 programming model.
> __LP64__ Defined for LP64 programming model.
> __ILP32 Defined for X32 programming model.
> __ILP32__ Defined for X32 programming model.
>
>
It should be _LP64/_ILP32, not __LP64 and __ILP32. I updated x32
psABI.
--
H.J.