diff options
author | Carlos O'Donell <carlos@codesourcery.com> | 2006-10-13 16:01:38 +0000 |
---|---|---|
committer | Carlos O'Donell <carlos@gcc.gnu.org> | 2006-10-13 16:01:38 +0000 |
commit | d407b27dc1d160b62421b4fd3c94d8d822c97c42 (patch) | |
tree | 4e0c3f16c89da09e083f7850ea0d24ede7a30464 | |
parent | ca58211b7de19f4fc94944836891f6e275e74412 (diff) | |
download | gcc-d407b27dc1d160b62421b4fd3c94d8d822c97c42.zip gcc-d407b27dc1d160b62421b4fd3c94d8d822c97c42.tar.gz gcc-d407b27dc1d160b62421b4fd3c94d8d822c97c42.tar.bz2 |
elfos.h (MAX_OFILE_ALIGNMENT): Default to largest alignment supported by 32-bit ELF.
gcc/
2006-10-13 Carlos O'Donell <carlos@codesourcery.com>
* config/elfos.h (MAX_OFILE_ALIGNMENT): Default to largest
alignment supported by 32-bit ELF.
From-SVN: r117697
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/config/elfos.h | 17 |
2 files changed, 16 insertions, 6 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index d62801b..ff9a841 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2006-10-13 Carlos O'Donell <carlos@codesourcery.com> + + * config/elfos.h (MAX_OFILE_ALIGNMENT): Default to largest + alignment supported by 32-bit ELF. + 2006-10-13 Paolo Bonzini <bonzini@gnu.org> PR c/29092 diff --git a/gcc/config/elfos.h b/gcc/config/elfos.h index a2bd49f..f685293 100644 --- a/gcc/config/elfos.h +++ b/gcc/config/elfos.h @@ -40,12 +40,17 @@ Boston, MA 02110-1301, USA. */ #undef USER_LABEL_PREFIX #define USER_LABEL_PREFIX "" -/* Biggest alignment supported by the object file format of this - machine. Use this macro to limit the alignment which can be - specified using the `__attribute__ ((aligned (N)))' construct. If - not defined, the default value is `BIGGEST_ALIGNMENT'. */ -#ifndef MAX_OFILE_ALIGNMENT -#define MAX_OFILE_ALIGNMENT (32768 * 8) +/* The biggest alignment supported by ELF. 32-bit ELF supports + section alignment up to (0x80000000 * 8), while 64-bit ELF + supports (0x8000000000000000 * 8). If this macro is not + defined, the default is the largest alignment supported by + 32-bit ELF. Use this macro to limit the alignment which can + be specified using the `__attribute__ ((aligned (N)))' + construct. */ +#if (HOST_BITS_PER_WIDEST_INT >= 64) +#define MAX_OFILE_ALIGNMENT (((unsigned HOST_WIDEST_INT) 1 << 31) * 8) +#else +#define MAX_OFILE_ALIGNMENT (((unsigned HOST_WIDEST_INT) 1 << 28) * 8) #endif /* Use periods rather than dollar signs in special g++ assembler names. */ |