diff options
author | Adhemerval Zanella <adhemerval.zanella@linaro.org> | 2015-11-17 18:19:06 -0200 |
---|---|---|
committer | Adhemerval Zanella <adhemerval.zanella@linaro.org> | 2016-04-11 09:15:11 -0300 |
commit | 482b2f87a88d30fd5bc0277e6a3f75efeb1aff7f (patch) | |
tree | 98eb06f6ab835a2999b810ce11c31d14e8a5df44 /sysdeps | |
parent | d29fb41f4431ca35ea360498ef9d37558ce90d76 (diff) | |
download | glibc-482b2f87a88d30fd5bc0277e6a3f75efeb1aff7f.tar glibc-482b2f87a88d30fd5bc0277e6a3f75efeb1aff7f.tar.gz glibc-482b2f87a88d30fd5bc0277e6a3f75efeb1aff7f.tar.bz2 glibc-482b2f87a88d30fd5bc0277e6a3f75efeb1aff7f.zip |
Define __ASSUME_ALIGNED_REGISTER_PAIRS for missing ports
This patch defines __ASSUME_ALIGNED_REGISTER_PAIRS for the missing
ports that require 64-bit value (e.g., long long) to be aligned to
an even register pair in argument passing.
No code change is expected, tested with builds for powerpc32,
mips-o32, and armhf.
* sysdeps/unix/sysv/linux/arm/kernel-features.h
(__ASSUME_ALIGNED_REGISTER_PAIRS): Define.
* sysdeps/unix/sysv/linux/mips/kernel-features.h
[_MIPS_SIM == _ABIO32] (__ASSUME_ALIGNED_REGISTER_PAIRS): Likewise.
* sysdeps/unix/sysv/linux/powerpc/kernel-features.h
[!__powerpc64__] (__ASSUME_ALIGNED_REGISTER_PAIRS): Likewise.
Diffstat (limited to 'sysdeps')
-rw-r--r-- | sysdeps/unix/sysv/linux/arm/kernel-features.h | 4 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/mips/kernel-features.h | 6 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/powerpc/kernel-features.h | 6 |
3 files changed, 16 insertions, 0 deletions
diff --git a/sysdeps/unix/sysv/linux/arm/kernel-features.h b/sysdeps/unix/sysv/linux/arm/kernel-features.h index c04c4e2a02..0a9ed772e5 100644 --- a/sysdeps/unix/sysv/linux/arm/kernel-features.h +++ b/sysdeps/unix/sysv/linux/arm/kernel-features.h @@ -27,3 +27,7 @@ # undef __ASSUME_REQUEUE_PI # undef __ASSUME_SET_ROBUST_LIST #endif + +/* Define this if your 32-bit syscall API requires 64-bit register + pairs to start with an even-number register. */ +#define __ASSUME_ALIGNED_REGISTER_PAIRS 1 diff --git a/sysdeps/unix/sysv/linux/mips/kernel-features.h b/sysdeps/unix/sysv/linux/mips/kernel-features.h index 7f8c98a4da..ef4b5204ec 100644 --- a/sysdeps/unix/sysv/linux/mips/kernel-features.h +++ b/sysdeps/unix/sysv/linux/mips/kernel-features.h @@ -28,3 +28,9 @@ # undef __ASSUME_REQUEUE_PI # undef __ASSUME_SET_ROBUST_LIST #endif + +/* Define this if your 32-bit syscall API requires 64-bit register + pairs to start with an even-number register. */ +#if _MIPS_SIM == _ABIO32 +# define __ASSUME_ALIGNED_REGISTER_PAIRS 1 +#endif diff --git a/sysdeps/unix/sysv/linux/powerpc/kernel-features.h b/sysdeps/unix/sysv/linux/powerpc/kernel-features.h index 171c030b03..38bb0bc3f9 100644 --- a/sysdeps/unix/sysv/linux/powerpc/kernel-features.h +++ b/sysdeps/unix/sysv/linux/powerpc/kernel-features.h @@ -42,4 +42,10 @@ /* The sendmmsg syscall was added for PowerPC in 3.0. */ #define __ASSUME_SENDMMSG_SYSCALL_WITH_SOCKETCALL 1 +/* Define this if your 32-bit syscall API requires 64-bit register + pairs to start with an even-number register. */ +#ifndef __powerpc64__ +# define __ASSUME_ALIGNED_REGISTER_PAIRS 1 +#endif + #include_next <kernel-features.h> |