[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Question on BIGGEST_ALIGNMENT in GCC on NetBSD/m68k



On Sat, 2025-06-07 at 16:38 +0200, Andreas Schwab wrote:
> On Jun 07 2025, John Paul Adrian Glaubitz wrote:
> 
> > On Sat, 2025-06-07 at 11:58 +0200, Andreas Schwab wrote:
> > > On Jun 07 2025, John Paul Adrian Glaubitz wrote:
> > > 
> > > > Who is "we"? The official(!) ABI says that pointers are supposed to be aligned
> > > > with 4 bytes, not 2 bytes.
> > > 
> > > No, that is wrong.  The official ABI uses 2 byte alignment.
> > 
> > The official AT&T SysV ABI states that pointers must be aligned with 4 bytes.
> 
> If you want to use AT&T System V, you are free to do so.  But Linux is
> not AT&T System V.

It kinda is:

glaubitz@esk:~/gcc/gcc/config/m68k$ grep -i svr4 linux.h
   m68k/SVR4 allow d0, a0, or fp0 as return registers, for integral,
   FUNCTION_DECL; otherwise, FUNC is 0.  For m68k/SVR4 generate the
   For m68k/SVR4 look for integer values in d0, pointer values in d0
/* For m68k SVR4, structures are returned using the reentrant
   For m68k/SVR4, some types (doubles for example) are aligned on 8 byte
glaubitz@esk:~/gcc/gcc/config/m68k$

What I don't understand: What's the deal with changing the ABI now? The people
who object the change still haven't come with a convincing argument so far except
for the circular reasoning that you cannot change the ABI because that would change
the ABI.

Adrian

-- 
 .''`.  John Paul Adrian Glaubitz
: :' :  Debian Developer
`. `'   Physicist
  `-    GPG: 62FF 8A75 84E0 2956 9546  0006 7426 3B37 F5B5 F913


Reply to: