[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