Message ID | 20240118160228.741832-3-adhemerval.zanella@linaro.org |
---|---|
State | New |
Headers | show |
Series | Multiple sparc fixes | expand |
On Jan 18 2024, Adhemerval Zanella wrote:
> The sparc32 is always 32 bits.
I think the point is that you can share the header with gcc -m64 (when
the default is -m32), ie. a 32-bit system on a 64-bit capable kernel.
On 22/01/24 10:14, Andreas Schwab wrote: > On Jan 18 2024, Adhemerval Zanella wrote: > >> The sparc32 is always 32 bits. > > I think the point is that you can share the header with gcc -m64 (when > the default is -m32), ie. a 32-bit system on a 64-bit capable kernel. > But the sysdeps/sparc/sparc32/bits/wordsize.h header is not placed on the sparc generic path (sysdeps/sparc/), so it is selected only for 32 bits build. Maybe a further cleanup would to move ./sysdeps/sparc/sparc64/bits/wordsize.h and remove the __sparcv9 condition for __WORDSIZE equal to 64.
On Jan 22 2024, Adhemerval Zanella Netto wrote: > On 22/01/24 10:14, Andreas Schwab wrote: >> On Jan 18 2024, Adhemerval Zanella wrote: >> >>> The sparc32 is always 32 bits. >> >> I think the point is that you can share the header with gcc -m64 (when >> the default is -m32), ie. a 32-bit system on a 64-bit capable kernel. >> > > But the sysdeps/sparc/sparc32/bits/wordsize.h header is not placed on > the sparc generic path (sysdeps/sparc/), so it is selected only for > 32 bits build. It's the same as under sysdeps/powerpc. The installed header is then generic.
diff --git a/sysdeps/sparc/sparc32/bits/wordsize.h b/sysdeps/sparc/sparc32/bits/wordsize.h index 2f66f10d72..4bbd2e63b4 100644 --- a/sysdeps/sparc/sparc32/bits/wordsize.h +++ b/sysdeps/sparc/sparc32/bits/wordsize.h @@ -1,11 +1,6 @@ /* Determine the wordsize from the preprocessor defines. */ -#if defined __arch64__ || defined __sparcv9 -# define __WORDSIZE 64 -# define __WORDSIZE_TIME64_COMPAT32 1 -#else -# define __WORDSIZE 32 -# define __WORDSIZE_TIME64_COMPAT32 0 -# define __WORDSIZE32_SIZE_ULONG 0 -# define __WORDSIZE32_PTRDIFF_LONG 0 -#endif +#define __WORDSIZE 32 +#define __WORDSIZE_TIME64_COMPAT32 0 +#define __WORDSIZE32_SIZE_ULONG 0 +#define __WORDSIZE32_PTRDIFF_LONG 0