[PATCH v2] Xmd.h: Treat __ILP32__ targets as LONG32 ones
Lu, Hongjiu
hongjiu.lu at intel.com
Sun Jun 10 11:10:56 PDT 2012
>
> On 06/10/12 11:04 AM, Lu, Hongjiu wrote:
> >> On 06/10/12 09:22 AM, Lu, Hongjiu wrote:
> >>> We are proposing to extend x86-64 psABI to support
> >>> ILP32 model:
> >>>
> >>> http://gcc.gnu.org/ml/gcc/2012-05/msg00258.html
> >>>
> >>> If a software package needs update to support ILP32
> >>> in x86-64, __ILP32__ can used to distinguish LP64 model
> >>> from ILP32 model. If there are no differences
> >>> between ILP32 and LP64 models, no changes are needed. If
> >>> an x86-64 compiler doesn't support ILP32 model, checking
> >>> __ILP32__ will make sure that it will works.
> >>
> >> If the software didn't care about the ABI, they wouldn't check for
> >> __amd64__ in the first place. This is a compatibility breaking
> >> change that should not be allowed. Define a new __x32__ symbol,
> >> don't break __amd64__.
> >>
> >
> > If a package doesn't support x32, it won't work on x32
> > anyway. Please show me one example of adding __ILP32__ check
> > breaks anything.
>
> This patch is proof that redefining __amd64__ breaks existing software,
> forcing us to go around adding new changes to avoid damage. It's not
> adding the __ILP32__ check that breaks things, it's forcing all the
> existing software to add it that is the breakage.
>
That is false. You still don't show adding __ILP32__ check will
break anything.
H.J.
More information about the xorg-devel
mailing list