summaryrefslogtreecommitdiff
path: root/gcc/opt-functions.awk
diff options
context:
space:
mode:
authorJoseph Myers <joseph@codesourcery.com>2010-11-19 13:25:39 +0000
committerJoseph Myers <jsm28@gcc.gnu.org>2010-11-19 13:25:39 +0000
commit21bf1558203226d4191d93a0b110b46611782f72 (patch)
treef12b65b217fce54841d0387e6cafc7b704994c38 /gcc/opt-functions.awk
parent3be0ac864a1e360076605c24c39387f0b97bdf0c (diff)
downloadgcc-21bf1558203226d4191d93a0b110b46611782f72.tar.gz
options.texi (Var): Document effects of Defer.
* doc/options.texi (Var): Document effects of Defer. (Defer): Document. * opt-functions.awk (var_type, var_set): Handle deferred options. * opts-common.c (set_option): Handle CLVC_DEFER. * common.opt (fcall-saved-, fcall-used-, fdump-, ffixed-, fplugin=, fplugin-arg-, fstack-limit, fstack-limit-register=, fstack-limit-symbol=): Mark as deferred. * opts.c: Don't include rtl.h, ggc.h, output.h, tree-pass.h or plugin.h. (print_filtered_help): Don't report state of CLVC_DEFER options. (common_handle_option): Move code for OPT_fcall_used_, OPT_fcall_saved_, OPT_fdump_, OPT_ffixed_, OPT_fplugin_, OPT_fplugin_arg_, OPT_fstack_limit, OPT_fstack_limit_register_ and OPT_fstack_limit_symbol_ to opts-global.c. (option_enabled, get_option_state): Handle CLVC_DEFER. * opts.h: Include vec.h. (enum cl_var_type): Add CLVC_DEFER. (cl_deferred_option): Define type and vectors. (handle_common_deferred_options): Declare. * opts-global.c: New. * toplev.c (toplev_main): Call handle_common_deferred_options * Makefile.in (OPTS_H): Include $(VEC_H). (OBJS-common): Include opts-global.o. (opts.o): Update dependencies. (opts-global.o): Add dependencies. From-SVN: r166942
Diffstat (limited to 'gcc/opt-functions.awk')
-rw-r--r--gcc/opt-functions.awk6
1 files changed, 5 insertions, 1 deletions
diff --git a/gcc/opt-functions.awk b/gcc/opt-functions.awk
index c85df5cd3de..99bbb314475 100644
--- a/gcc/opt-functions.awk
+++ b/gcc/opt-functions.awk
@@ -148,7 +148,9 @@ function static_var(name, flags)
# Return the type of variable that should be associated with the given flags.
function var_type(flags)
{
- if (!flag_set_p("Joined.*", flags) && !flag_set_p("Separate", flags))
+ if (flag_set_p("Defer", flags))
+ return "void *"
+ else if (!flag_set_p("Joined.*", flags) && !flag_set_p("Separate", flags))
return "int "
else if (flag_set_p("UInteger", flags))
return "int "
@@ -177,6 +179,8 @@ function var_type_struct(flags)
# "var_cond" and "var_value" fields of its cl_options[] entry.
function var_set(flags)
{
+ if (flag_set_p("Defer", flags))
+ return "CLVC_DEFER, 0"
s = nth_arg(1, opt_args("Var", flags))
if (s != "")
return "CLVC_EQUAL, " s