From 128dc8e23075f70721ff1cbe3294021e7dd82834 Mon Sep 17 00:00:00 2001 From: Joseph Myers Date: Mon, 11 Oct 2010 13:28:40 +0100 Subject: params.c (set_param_value_internal): New. * params.c (set_param_value_internal): New. (set_param_value): Use set_param_value_internal. (maybe_set_param_value, set_default_param_value): New. * params.h (PARAM_VALUE, PARAM_SET_P): Make into rvalues. (maybe_set_param_value, set_default_param_value): Declare. * config/arm/arm.c (arm_option_override): Use maybe_set_param_value. * config/i386/i386.c (ix86_option_override_internal): Use maybe_set_param_value. * config/ia64/ia64.c (ia64_option_default_params, TARGET_OPTION_DEFAULT_PARAMS): New. (ia64_option_optimization): Move some code to ia64_option_default_params. * config/picochip/picochip.c (picochip_option_override): Use maybe_set_param_value. * config/rs6000/rs6000.c (rs6000_option_default_params, TARGET_OPTION_DEFAULT_PARAMS): New. (rs6000_option_override_internal): Use maybe_set_param_value. (rs6000_option_optimization): Move some code to rs6000_option_default_params. * config/s390/s390.c (s390_option_override): Use maybe_set_param_value. * config/sh/sh.c (sh_option_default_params, TARGET_OPTION_DEFAULT_PARAMS): New. (sh_option_optimization): Move some code to sh_option_default_params. * config/sparc/sparc.c (sparc_option_override): Use maybe_set_param_value. * config/spu/spu.c (spu_option_default_params, TARGET_OPTION_DEFAULT_PARAMS): New. (spu_option_optimization): Move some code to spu_option_default_params. (spu_option_override): Use maybe_set_param_value. * doc/tm.texi.in (TARGET_OPTION_DEFAULT_PARAMS): New @hook. * doc/tm.texi: Regenerate. * ggc-common.c (init_ggc_heuristics): Use set_default_param_value. * opts.c (init_options_once): Use PARAM_VALUE not direct access to compiler_params. (default_options_optimization): Use maybe_set_param_value. (finish_options): Use maybe_set_param_value. * target.def (target_option.default_params): New hook. * toplev.c (general_init): Call targetm.target_option.default_params. From-SVN: r165303 --- gcc/params.h | 21 ++++++++++++++++----- 1 file changed, 16 insertions(+), 5 deletions(-) (limited to 'gcc/params.h') diff --git a/gcc/params.h b/gcc/params.h index aa96c81..b924e78 100644 --- a/gcc/params.h +++ b/gcc/params.h @@ -1,5 +1,5 @@ /* params.h - Run-time parameters. - Copyright (C) 2001, 2003, 2004, 2005, 2007, 2008, 2009 + Copyright (C) 2001, 2003, 2004, 2005, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. Written by Mark Mitchell . @@ -88,13 +88,24 @@ typedef enum compiler_param LAST_PARAM } compiler_param; -/* The value of the parameter given by ENUM. */ +/* The value of the parameter given by ENUM. Not an lvalue. */ #define PARAM_VALUE(ENUM) \ - (compiler_params[(int) ENUM].value) + ((int) compiler_params[(int) ENUM].value) -/* True if the value of the parameter was explicitly changed. */ +/* Set the value of the parameter given by NUM to VALUE, implicitly, + if it has not been set explicitly by the user. */ + +extern void maybe_set_param_value (compiler_param num, int value); + +/* Set the default value of a parameter given by NUM to VALUE, before + option processing. */ + +extern void set_default_param_value (compiler_param num, int value); + +/* True if the value of the parameter was explicitly changed. Not an + lvalue. */ #define PARAM_SET_P(ENUM) \ - (compiler_params[(int) ENUM].set) + ((bool) compiler_params[(int) ENUM].set) /* Macros for the various parameters. */ #define STRUCT_REORG_COLD_STRUCT_RATIO \ -- cgit v1.1