summaryrefslogtreecommitdiff
path: root/gcc/opth-gen.awk
diff options
context:
space:
mode:
authorjsm28 <jsm28@138bc75d-0d04-0410-961f-82ee72b054a4>2010-09-17 14:14:49 +0000
committerjsm28 <jsm28@138bc75d-0d04-0410-961f-82ee72b054a4>2010-09-17 14:14:49 +0000
commit0f8defe54234149c5ac743e6bee2b9fa42764934 (patch)
treeb975a487ff46cf6a7b61b28aaa2fde8f9ec2cd09 /gcc/opth-gen.awk
parent336592236075fc884e928f9d2948889a3ac21657 (diff)
downloadgcc-0f8defe54234149c5ac743e6bee2b9fa42764934.tar.gz
* doc/options.texi (Variable): Document.
* optc-gen.awk, opth-gen.awk: Handle Variable records. Don't generate target_flags declarations explicitly. Don't define VarExists variables for the driver. * common.opt (target_flags): New Variable record. (flag_dump_unnumbered, flag_dump_unnumbered_links, flag_var_tracking, flag_var_tracking_assignments, flag_var_tracking_assignments_toggle): Don't mark variables with VarExists. * config/i386/i386.c (ix86_isa_flags): Don't define here. * config/i386/i386.opt (ix86_isa_flags): Define here. * config/mcore/mcore.c (mcore_stack_increment): Don't define here. * config/mcore/mcore.opt (mcore_stack_increment): Don't mark with VarExists. * flags.h (flag_dump_unnumbered, flag_var_tracking): Remove. * print-rtl.c (flag_dump_unnumbered, flag_dump_unnumbered_links): Only define for generator programs. * rtlanal.c (target_flags): Remove. * toplev.c (flag_var_tracking, flag_var_tracking_assignments, flag_var_tracking_assignments_toggle): Remove. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164370 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/opth-gen.awk')
-rw-r--r--gcc/opth-gen.awk12
1 files changed, 11 insertions, 1 deletions
diff --git a/gcc/opth-gen.awk b/gcc/opth-gen.awk
index 0d1d0df375a..423328ddfdb 100644
--- a/gcc/opth-gen.awk
+++ b/gcc/opth-gen.awk
@@ -28,6 +28,7 @@ BEGIN {
n_opts = 0
n_langs = 0
n_target_save = 0
+ n_extra_vars = 0
n_extra_masks = 0
FS=SUBSEP
}
@@ -43,6 +44,10 @@ BEGIN {
target_save_decl[n_target_save] = $2
n_target_save++
}
+ else if ($1 == "Variable") {
+ extra_vars[n_extra_vars] = $2
+ n_extra_vars++
+ }
else {
name = opt_args("Mask", $1)
if (name == "") {
@@ -65,12 +70,17 @@ print ""
print "#ifndef OPTIONS_H"
print "#define OPTIONS_H"
print ""
-print "extern int target_flags;"
print "extern int target_flags_explicit;"
print ""
have_save = 0;
+for (i = 0; i < n_extra_vars; i++) {
+ var = extra_vars[i]
+ sub(" *=.*", "", var)
+ print "extern " var ";"
+}
+
for (i = 0; i < n_opts; i++) {
if (flag_set_p("Save", flags[i]))
have_save = 1;