X-Git-Url: http://git.sourceforge.jp/view?a=blobdiff_plain;f=gcc%2Fparams.h;h=fc1c377fb3b313c588552c01f0da12b3592ffebc;hb=9508132a0f3d625ed0b5e8fc2f4f65faa18d2160;hp=c4474e418ee4ed089e46282e6eef2bafd43003a1;hpb=6cc4057d94f5b2b7d07672c2160e30c75671573b;p=pf3gnuchains%2Fgcc-fork.git diff --git a/gcc/params.h b/gcc/params.h index c4474e418ee..fc1c377fb3b 100644 --- a/gcc/params.h +++ b/gcc/params.h @@ -1,5 +1,5 @@ /* params.h - Run-time parameters. - Copyright (C) 2001 Free Software Foundation, Inc. + Copyright (C) 2001, 2003, 2004, 2005 Free Software Foundation, Inc. Written by Mark Mitchell . This file is part of GCC. @@ -48,6 +48,13 @@ typedef struct param_info const char *const option; /* The associated value. */ int value; + + /* Minimum acceptable value. */ + int min_value; + + /* Maximum acceptable value, if greater than minimum */ + int max_value; + /* A short description of the option. */ const char *const help; } param_info; @@ -59,31 +66,35 @@ extern param_info *compiler_params; /* Add the N PARAMS to the current list of compiler parameters. */ -extern void add_params - PARAMS ((const param_info params[], size_t n)); +extern void add_params (const param_info params[], size_t n); /* Set the VALUE associated with the parameter given by NAME. */ -extern void set_param_value - PARAMS ((const char *name, int value)); +extern void set_param_value (const char *name, int value); /* The parameters in use by language-independent code. */ typedef enum compiler_param { -#define DEFPARAM(enumerator, option, msgid, default) \ +#define DEFPARAM(enumerator, option, msgid, default, min, max) \ enumerator, #include "params.def" -#undef DEFPARAM +#undef DEFPARAM LAST_PARAM } compiler_param; /* The value of the parameter given by ENUM. */ #define PARAM_VALUE(ENUM) \ (compiler_params[(int) ENUM].value) - + /* Macros for the various parameters. */ +#define SALIAS_MAX_IMPLICIT_FIELDS \ + PARAM_VALUE (PARAM_SALIAS_MAX_IMPLICIT_FIELDS) +#define SRA_MAX_STRUCTURE_SIZE \ + PARAM_VALUE (PARAM_SRA_MAX_STRUCTURE_SIZE) +#define SRA_FIELD_STRUCTURE_RATIO \ + PARAM_VALUE (PARAM_SRA_FIELD_STRUCTURE_RATIO) #define MAX_INLINE_INSNS_SINGLE \ PARAM_VALUE (PARAM_MAX_INLINE_INSNS_SINGLE) #define MAX_INLINE_INSNS \ @@ -92,6 +103,10 @@ typedef enum compiler_param PARAM_VALUE (PARAM_MAX_INLINE_SLOPE) #define MIN_INLINE_INSNS \ PARAM_VALUE (PARAM_MIN_INLINE_INSNS) +#define MAX_INLINE_INSNS_AUTO \ + PARAM_VALUE (PARAM_MAX_INLINE_INSNS_AUTO) +#define MAX_VARIABLE_EXPANSIONS \ + PARAM_VALUE (PARAM_MAX_VARIABLE_EXPANSIONS) #define MAX_DELAY_SLOT_INSN_SEARCH \ PARAM_VALUE (PARAM_MAX_DELAY_SLOT_INSN_SEARCH) #define MAX_DELAY_SLOT_LIVE_SEARCH \ @@ -102,6 +117,30 @@ typedef enum compiler_param ((size_t) PARAM_VALUE (PARAM_MAX_GCSE_MEMORY)) #define MAX_GCSE_PASSES \ PARAM_VALUE (PARAM_MAX_GCSE_PASSES) +#define GCSE_AFTER_RELOAD_PARTIAL_FRACTION \ + PARAM_VALUE (PARAM_GCSE_AFTER_RELOAD_PARTIAL_FRACTION) +#define GCSE_AFTER_RELOAD_CRITICAL_FRACTION \ + PARAM_VALUE (PARAM_GCSE_AFTER_RELOAD_CRITICAL_FRACTION) #define MAX_UNROLLED_INSNS \ PARAM_VALUE (PARAM_MAX_UNROLLED_INSNS) +#define MAX_SMS_LOOP_NUMBER \ + PARAM_VALUE (PARAM_MAX_SMS_LOOP_NUMBER) +#define SMS_MAX_II_FACTOR \ + PARAM_VALUE (PARAM_SMS_MAX_II_FACTOR) +#define SMS_DFA_HISTORY \ + PARAM_VALUE (PARAM_SMS_DFA_HISTORY) +#define SMS_LOOP_AVERAGE_COUNT_THRESHOLD \ + PARAM_VALUE (PARAM_SMS_LOOP_AVERAGE_COUNT_THRESHOLD) +#define GLOBAL_VAR_THRESHOLD \ + PARAM_VALUE (PARAM_GLOBAL_VAR_THRESHOLD) +#define MAX_ALIASED_VOPS \ + PARAM_VALUE (PARAM_MAX_ALIASED_VOPS) +#define INTEGER_SHARE_LIMIT \ + PARAM_VALUE (PARAM_INTEGER_SHARE_LIMIT) +#define MAX_LAST_VALUE_RTL \ + PARAM_VALUE (PARAM_MAX_LAST_VALUE_RTL) +#define MIN_VIRTUAL_MAPPINGS \ + PARAM_VALUE (PARAM_MIN_VIRTUAL_MAPPINGS) +#define VIRTUAL_MAPPINGS_TO_SYMS_RATIO \ + PARAM_VALUE (PARAM_VIRTUAL_MAPPINGS_TO_SYMS_RATIO) #endif /* ! GCC_PARAMS_H */