+2011-03-22 Joseph Myers <joseph@codesourcery.com>
+
+ * config/cris/cris.c (cris_handle_option): Access target_flags via
+ opts pointer. Don't assert that global structures are in use.
+ Don't call CRIS_SUBTARGET_HANDLE_OPTION.
+ * config/cris/cris.h (CRIS_SUBTARGET_HANDLE_OPTION): Don't define.
+
2011-03-22 Joseph Myers <joseph@codesourcery.com>
* config/bfin/bfin-opts.h: New.
cris_option_override. */
static bool
-cris_handle_option (struct gcc_options *opts, struct gcc_options *opts_set,
+cris_handle_option (struct gcc_options *opts,
+ struct gcc_options *opts_set ATTRIBUTE_UNUSED,
const struct cl_decoded_option *decoded,
location_t loc ATTRIBUTE_UNUSED)
{
size_t code = decoded->opt_index;
- const char *arg ATTRIBUTE_UNUSED = decoded->arg;
- int value ATTRIBUTE_UNUSED = decoded->value;
-
- gcc_assert (opts == &global_options);
- gcc_assert (opts_set == &global_options_set);
switch (code)
{
case OPT_metrax100:
- target_flags
+ opts->x_target_flags
|= (MASK_SVINTO
+ MASK_ETRAX4_ADD
+ MASK_ALIGN_BY_32);
break;
case OPT_mno_etrax100:
- target_flags
+ opts->x_target_flags
&= ~(MASK_SVINTO
+ MASK_ETRAX4_ADD
+ MASK_ALIGN_BY_32);
case OPT_m32_bit:
case OPT_m32bit:
- target_flags
+ opts->x_target_flags
|= (MASK_STACK_ALIGN
+ MASK_CONST_ALIGN
+ MASK_DATA_ALIGN
case OPT_m16_bit:
case OPT_m16bit:
- target_flags
+ opts->x_target_flags
|= (MASK_STACK_ALIGN
+ MASK_CONST_ALIGN
+ MASK_DATA_ALIGN);
case OPT_m8_bit:
case OPT_m8bit:
- target_flags
+ opts->x_target_flags
&= ~(MASK_STACK_ALIGN
+ MASK_CONST_ALIGN
+ MASK_DATA_ALIGN);
break;
}
- CRIS_SUBTARGET_HANDLE_OPTION(code, arg, value);
-
return true;
}
#define TARGET_HAS_SWAP (cris_cpu_version >= CRIS_CPU_SVINTO)
#define TARGET_V32 (cris_cpu_version >= CRIS_CPU_V32)
-#define CRIS_SUBTARGET_HANDLE_OPTION(x, y, z)
-
/* Node: Storage Layout */
#define BITS_BIG_ENDIAN 0