This is the mail archive of the binutils@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: x32 psABI draft version 0.2


On 2/16/2011 3:04 PM, H. Peter Anvin wrote:
> On 02/16/2011 11:22 AM, H.J. Lu wrote:
>> Hi,
>>
>> I updated  x32 psABI draft to version 0.2 to change x32 library path
>> from lib32 to libx32 since lib32 is used for ia32 libraries on Debian,
>> Ubuntu and other derivative distributions. The new x32 psABI is
>> available from:
>>
>> https://sites.google.com/site/x32abi/home
> I'm wondering if we should define a section header flag (sh_flags)
> and/or an ELF header flag (e_flags) for x32 for the people unhappy about
> keying it to the ELF class...

For what it's worth, the Tilera 64-bit architecture (forthcoming) includes
support for a 32-bit compatibility layer that is similar to x32.  It uses
64-bit registers throughout (e.g. for double and long long), but 32-bit
addresses.  The addresses between 2GB and 4GB are not directly usable as
64-bit addresses since we sign-extend all 32-bit values to make the ISA
more straightforward.  We use the "compat" layer to provide our syscall
table, since we don't have a traditional compatibility layer in this mode
(unlike x86_64 and i386).

We differentiate the 64-bit and 32-bit binaries just by the Elf class, a
proposed by H.J. above.  This seems plausible given that it does capture
the differences correctly; everything else is the same, just the Elf
class.  (And we use /lib vs /lib32 on the 64-bit platform to support the
32-bit shared libraries, etc.)

-- 
Chris Metcalf, Tilera Corp.
http://www.tilera.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]