diff options
author | H.J. Lu <hjl.tools@gmail.com> | 2013-01-10 08:38:48 -0800 |
---|---|---|
committer | H.J. Lu <hjl.tools@gmail.com> | 2013-01-10 08:38:48 -0800 |
commit | 1a20cb20ff0201815691ccd3249d139a7cbfbfa8 (patch) | |
tree | 5de7f34fd3c774a3bf8d221e6d725a7f380cc145 | |
parent | 176f2fe0a1c2aeb7551eeddf651b2b32eb456137 (diff) | |
download | glibc-1a20cb20ff0201815691ccd3249d139a7cbfbfa8.tar.gz glibc-1a20cb20ff0201815691ccd3249d139a7cbfbfa8.tar.xz glibc-1a20cb20ff0201815691ccd3249d139a7cbfbfa8.zip |
Correct _XXX_ILP32_OFFBIG for x32
-rw-r--r-- | ChangeLog | 11 | ||||
-rw-r--r-- | NEWS | 2 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/x86/bits/environments.h | 25 |
3 files changed, 29 insertions, 9 deletions
diff --git a/ChangeLog b/ChangeLog index 1e8a85c1d1..e9a7cb7007 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,14 @@ +2013-01-10 H.J. Lu <hongjiu.lu@intel.com> + + [BZ #14200] + * sysdeps/unix/sysv/linux/x86/bits/environments.h + (_POSIX_V7_ILP32_OFF32): Defined as 1 only if __x86_64__ isn't + defined. + (_POSIX_V6_ILP32_OFF32): Likewise. + (_XBS5_ILP32_OFF32): Likewise. + (__ILP32_OFFBIG_CFLAGS): Defined as "-mx32" for x32. + (__ILP32_OFFBIG_LDFLAGS): Likewise. + 2013-01-10 Siddhesh Poyarekar <siddhesh@redhat.com> * sysdeps/ieee754/dbl-64/mpexp.c: Fix formatting. diff --git a/NEWS b/NEWS index 430c5d9d1e..1cdc37a215 100644 --- a/NEWS +++ b/NEWS @@ -9,7 +9,7 @@ Version 2.18 * The following bugs are resolved with this release: - 13951, 14317, 14964, 14981, 14982, 14985, 14994, 14996, 15003. + 13951, 14200, 14317, 14964, 14981, 14982, 14985, 14994, 14996, 15003. Version 2.17 diff --git a/sysdeps/unix/sysv/linux/x86/bits/environments.h b/sysdeps/unix/sysv/linux/x86/bits/environments.h index 0fe1e3f5fd..27b37b30e7 100644 --- a/sysdeps/unix/sysv/linux/x86/bits/environments.h +++ b/sysdeps/unix/sysv/linux/x86/bits/environments.h @@ -64,15 +64,19 @@ #else /* __WORDSIZE == 32 */ -/* By default we have 32-bit wide `int', `long int', pointers and `off_t' - and all platforms support LFS. */ -# define _POSIX_V7_ILP32_OFF32 1 +/* We have 32-bit wide `int', `long int' and pointers and all platforms + support LFS. -mx32 has 64-bit wide `off_t'. */ # define _POSIX_V7_ILP32_OFFBIG 1 -# define _POSIX_V6_ILP32_OFF32 1 -# define _POSIX_V6_ILP32_OFFBIG 1 -# define _XBS5_ILP32_OFF32 1 +# define _POSIX_V6_ILP32_OFFBIG 1 # define _XBS5_ILP32_OFFBIG 1 +# ifndef __x86_64__ +/* -m32 has 32-bit wide `off_t'. */ +# define _POSIX_V7_ILP32_OFF32 1 +# define _POSIX_V6_ILP32_OFF32 1 +# define _XBS5_ILP32_OFF32 1 +# endif + /* We optionally provide an environment with the above size but an 64-bit side `off_t'. Therefore we don't define _POSIX_V7_ILP32_OFFBIG. */ @@ -89,8 +93,13 @@ #endif /* __WORDSIZE == 32 */ #define __ILP32_OFF32_CFLAGS "-m32" -#define __ILP32_OFFBIG_CFLAGS "-m32 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64" #define __ILP32_OFF32_LDFLAGS "-m32" -#define __ILP32_OFFBIG_LDFLAGS "-m32" +#if defined __x86_64__ && defined __ILP32__ +# define __ILP32_OFFBIG_CFLAGS "-mx32" +# define __ILP32_OFFBIG_LDFLAGS "-mx32" +#else +# define __ILP32_OFFBIG_CFLAGS "-m32 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64" +# define __ILP32_OFFBIG_LDFLAGS "-m32" +#endif #define __LP64_OFF64_CFLAGS "-m64" #define __LP64_OFF64_LDFLAGS "-m64" |