Re: [PATCH] alpha: Fix personality flag propagation across an exec

"Arnd Bergmann" <[email protected]>
Newsgroups org.kernel.vger.util-linux,dev.linux.lists.loongarch,org.kernel.vger.linux-alpha,org.kernel.vger.linux-kernel,org.kernel.vger.linux-mips,org.kvack.linux-mm
Message-ID <[email protected]>
On Thu, Jan 9, 2025, at 21:10, Maciej W. Rozycki wrote:
> On Thu, 9 Jan 2025, Eric W. Biederman wrote:
>
>> > So, this would be the 100% correct for alpha then which would not loose
>> > any functionality even for 32-bit binaries?
>> 
>> I don't think it is correct to think about 32-bit binaries on alpha.
>> 
>> Alpha never had a 32bit instruction set.  But at some point it looks
>> like binaries that could not handle more than 31 bits of address
>> space got ported and someone implemented a work-around.  I guess this
>> is the --taso option that Arnd mentioned.
>
>  This also saves some code space in non-PIE and plain static executables 
> as it takes fewer machine instructions to load a 64-bit address that is 
> known beforehand to be a sign-extended 32-bit value.
>
>  This is similar to the MIPS n32 ABI, which also implies a 32-bit address 
> space while still using 64-bit registers for everything, starting from 
> stack slots (it's also ILP32 with the `long long' C data type only making 
> proper use of the full width of the CPU registers, while Alpha's --taso 
> ABI is I believe IP32 (?) with the plain `long' C data type still 64-bit, 
> just as with the regular LP64 ABI).

I'm pretty sure it's still LP64 on Alpha Linux with gcc. There is an
-mpointer-size=32 option in gcc for VMS, but I don't see anything like
that in Linux. The only thing that is implemented here is the option
for the linker that sets the EF_ALPHA_32BIT bit, but none of the
code generation takes advantage of the upper bits being zero.

       Arnd
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.