* config/m68k/m68k.c (TARGET_DEFAULT_TARGET_FLAGS): Remove.
(override_options): Turn on -mstrict-align on non-ColdFire
targets.
* config/m68k/m68k.h (BIGGEST_ALIGNMENT): Update a comment.
From-SVN: r128015
+2007-09-01 Kazu Hirata <kazu@codesourcery.com>
+
+ * config/m68k/m68k.c (TARGET_DEFAULT_TARGET_FLAGS): Remove.
+ (override_options): Turn on -mstrict-align on non-ColdFire
+ targets.
+ * config/m68k/m68k.h (BIGGEST_ALIGNMENT): Update a comment.
+
2007-09-01 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
* c-common.c (const_strip_array_types): Delete.
#undef TARGET_ASM_FILE_START_APP_OFF
#define TARGET_ASM_FILE_START_APP_OFF true
-#undef TARGET_DEFAULT_TARGET_FLAGS
-#define TARGET_DEFAULT_TARGET_FLAGS MASK_STRICT_ALIGNMENT
#undef TARGET_HANDLE_OPTION
#define TARGET_HANDLE_OPTION m68k_handle_option
/* Use the architecture setting to derive default values for
certain flags. */
target_mask = 0;
+
+ /* ColdFire is lenient about alignment. */
+ if (!TARGET_COLDFIRE)
+ target_mask |= MASK_STRICT_ALIGNMENT;
+
if ((m68k_cpu_flags & FL_BITFIELD) != 0)
target_mask |= MASK_BITFIELD;
if ((m68k_cpu_flags & FL_CF_HWDIV) != 0)
/* No data type wants to be aligned rounder than this.
Most published ABIs say that ints should be aligned on 16-bit
boundaries, but CPUs with 32-bit busses get better performance
- aligned on 32-bit boundaries. ColdFires without a misalignment
- module require 32-bit alignment. */
+ aligned on 32-bit boundaries. */
#define BIGGEST_ALIGNMENT (TARGET_ALIGN_INT ? 32 : 16)
#define STRICT_ALIGNMENT (TARGET_STRICT_ALIGNMENT)