This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc 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: Fifth draft of the Y2038 design document


On 2/22/2017 4:16 PM, Joseph Myers wrote:
That said, I think the following ABIs use 64-bit register size in
userspace while being ILP32 ABIs.  You'll need to examine the code more
closely in each case to determine what size time_t is, and to what extent
if any 64-bit registers are involved in the syscall ABI.  There may be
other cases where 64-bit registers can in fact be used for what's normally
considered a 32-bit ABI (e.g. people have done some work on being able to
use 64-bit registers for 32-bit powerpc code, although the registers are
32-bit for all purposes in the function-calling ABI).

AArch64 ILP32 (not yet in glibc)
MIPS n32
TileGX32
x86_64 x32

TILE-Gx ILP32 mode uses only the low 32 bits of registers for all
syscalls.  It uses the full 64-bit register size for "long long" and
the ABI generally permits passing and returning such values in a
single register; we just don't ever do that with the kernel ABI.

--
Chris Metcalf, Mellanox Technologies
http://www.mellanox.com


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