aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDJ Delorie <dj@redhat.com>2010-07-13 15:43:30 -0400
committerDJ Delorie <dj@gcc.gnu.org>2010-07-13 15:43:30 -0400
commit0685e770ac482a9133dee33756755fc8dab1d27a (patch)
treef6f1613d772debc7b14c60c12eca179f6fc79f69
parent3bb06db415181f6027ac0f99520ced47069d6499 (diff)
downloadgcc-0685e770ac482a9133dee33756755fc8dab1d27a.zip
gcc-0685e770ac482a9133dee33756755fc8dab1d27a.tar.gz
gcc-0685e770ac482a9133dee33756755fc8dab1d27a.tar.bz2
h8300.c (h8300_init_once): Default to -fstrict_volatile_bitfields.
* config/h8300/h8300.c (h8300_init_once): Default to -fstrict_volatile_bitfields. * config/sh/sh.c (sh_override_options): Default to -fstrict_volatile_bitfields. * config/rx/rx.c (rx_option_override): New. * config/m32c/m32c.c (m32c_override_options): Default to -fstrict_volatile_bitfields. From-SVN: r162149
-rw-r--r--gcc/ChangeLog13
-rw-r--r--gcc/config/h8300/h8300.c4
-rw-r--r--gcc/config/m32c/m32c.c4
-rw-r--r--gcc/config/rx/rx.c11
-rw-r--r--gcc/config/sh/sh.c4
5 files changed, 36 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 335eb21..0ce8cad 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,16 @@
+2010-07-13 DJ Delorie <dj@redhat.com>
+
+ * config/h8300/h8300.c (h8300_init_once): Default to
+ -fstrict_volatile_bitfields.
+
+ * config/sh/sh.c (sh_override_options): Default to
+ -fstrict_volatile_bitfields.
+
+ * config/rx/rx.c (rx_option_override): New.
+
+ * config/m32c/m32c.c (m32c_override_options): Default to
+ -fstrict_volatile_bitfields.
+
2010-07-13 Nathan Froyd <froydnj@codesourcery.com>
* tree.h (build_function_call_expr): Delete.
diff --git a/gcc/config/h8300/h8300.c b/gcc/config/h8300/h8300.c
index 546a6ae..bba5e79 100644
--- a/gcc/config/h8300/h8300.c
+++ b/gcc/config/h8300/h8300.c
@@ -403,6 +403,10 @@ h8300_init_once (void)
restore er6 though, so bump up the cost. */
h8300_move_ratio = 6;
}
+
+ /* This target defaults to strict volatile bitfields. */
+ if (flag_strict_volatile_bitfields < 0)
+ flag_strict_volatile_bitfields = 1;
}
/* Implement REG_CLASS_FROM_LETTER.
diff --git a/gcc/config/m32c/m32c.c b/gcc/config/m32c/m32c.c
index 3b32a7a..7ffd146 100644
--- a/gcc/config/m32c/m32c.c
+++ b/gcc/config/m32c/m32c.c
@@ -431,6 +431,10 @@ m32c_override_options (void)
if (TARGET_A24)
flag_ivopts = 0;
+
+ /* This target defaults to strict volatile bitfields. */
+ if (flag_strict_volatile_bitfields < 0)
+ flag_strict_volatile_bitfields = 1;
}
/* Defining data structures for per-function information */
diff --git a/gcc/config/rx/rx.c b/gcc/config/rx/rx.c
index f58960e..c81ef4c 100644
--- a/gcc/config/rx/rx.c
+++ b/gcc/config/rx/rx.c
@@ -2190,6 +2190,14 @@ rx_set_optimization_options (void)
}
}
+static void
+rx_option_override (void)
+{
+ /* This target defaults to strict volatile bitfields. */
+ if (flag_strict_volatile_bitfields < 0)
+ flag_strict_volatile_bitfields = 1;
+}
+
static bool
rx_allocate_stack_slots_for_args (void)
@@ -2778,6 +2786,9 @@ rx_memory_move_cost (enum machine_mode mode, enum reg_class regclass, bool in)
#undef TARGET_MEMORY_MOVE_COST
#define TARGET_MEMORY_MOVE_COST rx_memory_move_cost
+#undef TARGET_OPTION_OVERRIDE
+#define TARGET_OPTION_OVERRIDE rx_option_override
+
struct gcc_target targetm = TARGET_INITIALIZER;
/* #include "gt-rx.h" */
diff --git a/gcc/config/sh/sh.c b/gcc/config/sh/sh.c
index 4f5b59c..2055a5b 100644
--- a/gcc/config/sh/sh.c
+++ b/gcc/config/sh/sh.c
@@ -973,6 +973,10 @@ sh_override_options (void)
if (sh_fixed_range_str)
sh_fix_range (sh_fixed_range_str);
+
+ /* This target defaults to strict volatile bitfields. */
+ if (flag_strict_volatile_bitfields < 0)
+ flag_strict_volatile_bitfields = 1;
}
/* Print the operand address in x to the stream. */