diff options
author | Danny Smith <dannysmith@users.sourceforge.net> | 2007-11-08 20:20:02 +0000 |
---|---|---|
committer | Danny Smith <dannysmith@gcc.gnu.org> | 2007-11-08 20:20:02 +0000 |
commit | 349fcd78173b14a559f97713e8e9e2419b96ffbc (patch) | |
tree | 84331ca92b7dbcf7136439aac784054a312d52e4 /gcc | |
parent | c02cdc25dc7f5970b33cbe38f2c15ebb7e0fa58c (diff) | |
download | gcc-349fcd78173b14a559f97713e8e9e2419b96ffbc.zip gcc-349fcd78173b14a559f97713e8e9e2419b96ffbc.tar.gz gcc-349fcd78173b14a559f97713e8e9e2419b96ffbc.tar.bz2 |
re PR target/33774 (Cygwin/mingw do not support 16 byte alignment of struct/union fields)
PR target/33774
* config/i386/cygming.h (BIGGEST_FIELD_ALIGNMENT): Define only if
IN_TARGET_LIBS.
From-SVN: r130024
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/config/i386/cygming.h | 6 |
2 files changed, 11 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index d68ef6b..a203fee 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2007-11-08 Danny Smith <dannysmith@users.sourceforge.net> + + PR target/33774 + * config/i386/cygming.h (BIGGEST_FIELD_ALIGNMENT): Define only if + IN_TARGET_LIBS. + 2007-11-07 Kenneth Zadeck <zadeck@naturalbridge.com> PR middle-end/33826 diff --git a/gcc/config/i386/cygming.h b/gcc/config/i386/cygming.h index 6b1c136..6d1e1b1 100644 --- a/gcc/config/i386/cygming.h +++ b/gcc/config/i386/cygming.h @@ -332,9 +332,13 @@ do { \ #undef MAX_OFILE_ALIGNMENT #define MAX_OFILE_ALIGNMENT (8192 * 8) -/* Native complier aligns internal doubles in structures on dword boundaries. */ +/* BIGGEST_FIELD_ALIGNMENT macro is used directly by libobjc, There, we + align internal doubles in structures on dword boundaries. Otherwise, + support vector modes using ADJUST_FIELD_ALIGN, defined in i386.h. */ +#ifdef IN_TARGET_LIBS #undef BIGGEST_FIELD_ALIGNMENT #define BIGGEST_FIELD_ALIGNMENT 64 +#endif /* A bit-field declared as `int' forces `int' alignment for the struct. */ #undef PCC_BITFIELD_TYPE_MATTERS |