From a6c467624ade351285b37b266e7ef5aa54380958 Mon Sep 17 00:00:00 2001 From: Kai Tietz Date: Tue, 12 Apr 2011 20:52:41 +0200 Subject: [PATCH] ChangeLog gcc/ 2011-04-12 Kai Tietz * config/i386/mingw32.h (TARGET_SUBTARGET_DEFAULT): Add MASK_MS_BITFIELD_LAYOUT bit. ChangeLog gcc/testsuite 2011-04-12 Kai Tietz * g++.dg/ext/bitfield2.C: Add for i?86/x86_64-*-mingw* targets the additional -mno-ms-bitfields and -Wno-packed-bitfield-compat options. * g++.dg/ext/bitfield3.C: Likewise. * g++.dg/ext/bitfield4.C: Likewise. * g++.dg/ext/bitfield5.C: Likewise. * gcc.dg/bitfld-15.c: Likewise. * gcc.dg/bitfld-16.c: Likewise. * gcc.dg/bitfld-17.c: Likewise. * gcc.dg/bitfld-18.c: Likewise. From-SVN: r172336 --- gcc/ChangeLog | 5 +++++ gcc/config/i386/mingw32.h | 11 +++++++++++ gcc/testsuite/ChangeLog | 13 +++++++++++++ gcc/testsuite/g++.dg/ext/bitfield2.C | 2 +- gcc/testsuite/g++.dg/ext/bitfield3.C | 2 +- gcc/testsuite/g++.dg/ext/bitfield4.C | 2 +- gcc/testsuite/g++.dg/ext/bitfield5.C | 2 +- gcc/testsuite/gcc.dg/bitfld-15.c | 1 + gcc/testsuite/gcc.dg/bitfld-16.c | 1 + gcc/testsuite/gcc.dg/bitfld-17.c | 1 + gcc/testsuite/gcc.dg/bitfld-18.c | 1 + 11 files changed, 37 insertions(+), 4 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 96f542caea6..94d54ac74d5 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2011-04-12 Kai Tietz + + * config/i386/mingw32.h (TARGET_SUBTARGET_DEFAULT): Add + MASK_MS_BITFIELD_LAYOUT bit. + 2011-04-12 Jakub Jelinek * combine.c (update_cfg_for_uncondjump): Instead of testing at_end diff --git a/gcc/config/i386/mingw32.h b/gcc/config/i386/mingw32.h index fa55ce421cb..3c8eee6143a 100644 --- a/gcc/config/i386/mingw32.h +++ b/gcc/config/i386/mingw32.h @@ -22,6 +22,17 @@ along with GCC; see the file COPYING3. If not see #undef DEFAULT_ABI #define DEFAULT_ABI MS_ABI +/* By default, target has a 80387, uses IEEE compatible arithmetic, + returns float values in the 387 and needs stack probes. + We also align doubles to 64-bits for MSVC default compatibility. + Additionally we enable MS_BITFIELD_LAYOUT by default. */ + +#undef TARGET_SUBTARGET_DEFAULT +#define TARGET_SUBTARGET_DEFAULT \ + (MASK_80387 | MASK_IEEE_FP | MASK_FLOAT_RETURNS \ + | MASK_STACK_PROBE | MASK_ALIGN_DOUBLE \ + | MASK_MS_BITFIELD_LAYOUT) + /* See i386/crtdll.h for an alternative definition. _INTEGRAL_MAX_BITS is for compatibility with native compiler. */ #define EXTRA_OS_CPP_BUILTINS() \ diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index b3fe075f045..61ff1c6971d 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,16 @@ +2011-04-12 Kai Tietz + + * g++.dg/ext/bitfield2.C: Add for i?86/x86_64-*-mingw* + targets the additional -mno-ms-bitfields and + -Wno-packed-bitfield-compat options. + * g++.dg/ext/bitfield3.C: Likewise. + * g++.dg/ext/bitfield4.C: Likewise. + * g++.dg/ext/bitfield5.C: Likewise. + * gcc.dg/bitfld-15.c: Likewise. + * gcc.dg/bitfld-16.c: Likewise. + * gcc.dg/bitfld-17.c: Likewise. + * gcc.dg/bitfld-18.c: Likewise. + 2011-04-12 Richard Sandiford * gcc.target/arm/neon-vld3-1.c: New test. diff --git a/gcc/testsuite/g++.dg/ext/bitfield2.C b/gcc/testsuite/g++.dg/ext/bitfield2.C index 753492ce994..c288cec7c33 100644 --- a/gcc/testsuite/g++.dg/ext/bitfield2.C +++ b/gcc/testsuite/g++.dg/ext/bitfield2.C @@ -1,7 +1,7 @@ /* { dg-do compile } */ /* Remove pedantic. Allow the GCC extension to use char for bitfields. */ /* { dg-options "" } */ -/* { dg-options "-mno-ms-bitfields" { target i?86-*-netware } } */ +/* { dg-options "-Wno-packed-bitfield-compat -mno-ms-bitfields" { target { i?86-*-netware i?86-*-mingw* x86_64-*-mingw* } } } */ struct t /* { dg-message "note: offset of packed bit-field 't::b' has changed in GCC 4.4" "" { target pcc_bitfield_type_matters } } */ { diff --git a/gcc/testsuite/g++.dg/ext/bitfield3.C b/gcc/testsuite/g++.dg/ext/bitfield3.C index 0a89bdab1ff..f9fb78cceee 100644 --- a/gcc/testsuite/g++.dg/ext/bitfield3.C +++ b/gcc/testsuite/g++.dg/ext/bitfield3.C @@ -1,6 +1,6 @@ /* { dg-do compile } */ /* { dg-options "-Wno-packed-bitfield-compat" } */ -/* { dg-options "-Wno-packed-bitfield-compat -mno-ms-bitfields" { target i?86-*-netware } } */ +/* { dg-options "-Wno-packed-bitfield-compat -mno-ms-bitfields" { target { i?86-*-netware i?86-*-mingw* x86_64-*-mingw* } } } */ struct t { diff --git a/gcc/testsuite/g++.dg/ext/bitfield4.C b/gcc/testsuite/g++.dg/ext/bitfield4.C index 7bf85533130..8562686d6eb 100644 --- a/gcc/testsuite/g++.dg/ext/bitfield4.C +++ b/gcc/testsuite/g++.dg/ext/bitfield4.C @@ -1,6 +1,6 @@ /* { dg-do compile } */ /* { dg-options "" } */ -/* { dg-options "-mno-ms-bitfields" { target i?86-*-netware } } */ +/* { dg-options "-Wno-packed-bitfield-compat -mno-ms-bitfields" { target { i?86-*-netware i?86-*-mingw* x86_64-*-mingw* } } } */ struct t /* { dg-message "note: offset of packed bit-field 't::b' has changed in GCC 4.4" "" { target pcc_bitfield_type_matters } } */ { diff --git a/gcc/testsuite/g++.dg/ext/bitfield5.C b/gcc/testsuite/g++.dg/ext/bitfield5.C index cb24c65d723..1d862d76975 100644 --- a/gcc/testsuite/g++.dg/ext/bitfield5.C +++ b/gcc/testsuite/g++.dg/ext/bitfield5.C @@ -1,6 +1,6 @@ /* { dg-do compile } */ /* { dg-options "-Wno-packed-bitfield-compat" } */ -/* { dg-options "-Wno-packed-bitfield-compat -mno-ms-bitfields" { target i?86-*-netware } } */ +/* { dg-options "-Wno-packed-bitfield-compat -mno-ms-bitfields" { target { i?86-*-netware i?86-*-mingw* x86_64-*-mingw* } } } */ struct t { diff --git a/gcc/testsuite/gcc.dg/bitfld-15.c b/gcc/testsuite/gcc.dg/bitfld-15.c index 44d53b34ae2..03f43f2de8c 100644 --- a/gcc/testsuite/gcc.dg/bitfld-15.c +++ b/gcc/testsuite/gcc.dg/bitfld-15.c @@ -2,6 +2,7 @@ /* Remove pedantic. Allow the GCC extension to use char for bitfields. */ /* { dg-options "" } */ /* { dg-options "-mno-ms-bitfields" { target i?86-*-netware } } */ +/* { dg-options "-mno-ms-bitfields -Wno-packed-bitfield-compat" { target { i?86-*-mingw* x86_64-*-mingw* } } } */ struct t { diff --git a/gcc/testsuite/gcc.dg/bitfld-16.c b/gcc/testsuite/gcc.dg/bitfld-16.c index 0a89bdab1ff..5ed30f74392 100644 --- a/gcc/testsuite/gcc.dg/bitfld-16.c +++ b/gcc/testsuite/gcc.dg/bitfld-16.c @@ -1,6 +1,7 @@ /* { dg-do compile } */ /* { dg-options "-Wno-packed-bitfield-compat" } */ /* { dg-options "-Wno-packed-bitfield-compat -mno-ms-bitfields" { target i?86-*-netware } } */ +/* { dg-options "-Wno-packed-bitfield-compat -mno-ms-bitfields" { target { i?86-*-mingw* x86_64-*-mingw* } } } */ struct t { diff --git a/gcc/testsuite/gcc.dg/bitfld-17.c b/gcc/testsuite/gcc.dg/bitfld-17.c index 80099c6c9a2..9512f5fdf2a 100644 --- a/gcc/testsuite/gcc.dg/bitfld-17.c +++ b/gcc/testsuite/gcc.dg/bitfld-17.c @@ -1,6 +1,7 @@ /* { dg-do compile } */ /* { dg-options "" } */ /* { dg-options "-mno-ms-bitfields" { target i?86-*-netware } } */ +/* { dg-options "-mno-ms-bitfields -Wno-packed-bitfield-compat" { target { i?86-*-mingw* x86_64-*-mingw* } } } */ struct t { diff --git a/gcc/testsuite/gcc.dg/bitfld-18.c b/gcc/testsuite/gcc.dg/bitfld-18.c index cb24c65d723..067d9ae3851 100644 --- a/gcc/testsuite/gcc.dg/bitfld-18.c +++ b/gcc/testsuite/gcc.dg/bitfld-18.c @@ -1,6 +1,7 @@ /* { dg-do compile } */ /* { dg-options "-Wno-packed-bitfield-compat" } */ /* { dg-options "-Wno-packed-bitfield-compat -mno-ms-bitfields" { target i?86-*-netware } } */ +/* { dg-options "-Wno-packed-bitfield-compat -mno-ms-bitfields" { target { i?86-*-mingw* x86_64-*-mingw* } } } */ struct t { -- 2.30.2