aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorMartin Liska <mliska@suse.cz>2021-10-07 12:29:15 +0200
committerMartin Liska <mliska@suse.cz>2021-10-07 14:09:38 +0200
commit8ae3b44a52394ddfeb3946ccda8f428ab5fbd153 (patch)
tree408af2e4a42dce599eb4faff6bd2d48ba733d84a /gcc
parent81c362c7c2bccd72d798bf7ea6c74d4b1cc3931f (diff)
downloadgcc-8ae3b44a52394ddfeb3946ccda8f428ab5fbd153.zip
gcc-8ae3b44a52394ddfeb3946ccda8f428ab5fbd153.tar.gz
gcc-8ae3b44a52394ddfeb3946ccda8f428ab5fbd153.tar.bz2
build: Fix --enable-gather-detailed-mem-stats
gcc/c-family/ChangeLog: * c-common.c (parse_optimize_options): Make save_opt_decoded_options a pointer type. gcc/ChangeLog: * toplev.c (toplev::main): Make save_opt_decoded_options a pointer type * toplev.h: Likewise.
Diffstat (limited to 'gcc')
-rw-r--r--gcc/c-family/c-common.c4
-rw-r--r--gcc/toplev.c5
-rw-r--r--gcc/toplev.h2
3 files changed, 6 insertions, 5 deletions
diff --git a/gcc/c-family/c-common.c b/gcc/c-family/c-common.c
index 9d19e35..32c7e3e 100644
--- a/gcc/c-family/c-common.c
+++ b/gcc/c-family/c-common.c
@@ -5921,7 +5921,7 @@ parse_optimize_options (tree args, bool attr_p)
decoded_options_count = j;
/* Merge the decoded options with save_decoded_options. */
- unsigned save_opt_count = save_opt_decoded_options.length ();
+ unsigned save_opt_count = save_opt_decoded_options->length ();
unsigned merged_decoded_options_count
= save_opt_count + decoded_options_count;
cl_decoded_option *merged_decoded_options
@@ -5929,7 +5929,7 @@ parse_optimize_options (tree args, bool attr_p)
/* Note the first decoded_options is used for the program name. */
for (unsigned i = 0; i < save_opt_count; ++i)
- merged_decoded_options[i + 1] = save_opt_decoded_options[i];
+ merged_decoded_options[i + 1] = (*save_opt_decoded_options)[i];
for (unsigned i = 1; i < decoded_options_count; ++i)
merged_decoded_options[save_opt_count + i] = decoded_options[i];
diff --git a/gcc/toplev.c b/gcc/toplev.c
index 7076908..ecb2b69 100644
--- a/gcc/toplev.c
+++ b/gcc/toplev.c
@@ -117,7 +117,7 @@ struct cl_decoded_option *save_decoded_options;
unsigned int save_decoded_options_count;
/* Vector of saved Optimization decoded command line options. */
-auto_vec<cl_decoded_option> save_opt_decoded_options;
+vec<cl_decoded_option> *save_opt_decoded_options;
/* Used to enable -fvar-tracking, -fweb and -frename-registers according
to optimize in process_options (). */
@@ -2320,10 +2320,11 @@ toplev::main (int argc, char **argv)
&save_decoded_options_count);
/* Save Optimization decoded options. */
+ save_opt_decoded_options = new vec<cl_decoded_option> ();
for (unsigned i = 1; i < save_decoded_options_count; ++i)
if (save_decoded_options[i].opt_index < cl_options_count
&& cl_options[save_decoded_options[i].opt_index].flags & CL_OPTIMIZATION)
- save_opt_decoded_options.safe_push (save_decoded_options[i]);
+ save_opt_decoded_options->safe_push (save_decoded_options[i]);
/* Perform language-specific options initialization. */
lang_hooks.init_options (save_decoded_options_count, save_decoded_options);
diff --git a/gcc/toplev.h b/gcc/toplev.h
index c44c5ff..493f7eb 100644
--- a/gcc/toplev.h
+++ b/gcc/toplev.h
@@ -23,7 +23,7 @@ along with GCC; see the file COPYING3. If not see
/* Decoded options, and number of such options. */
extern struct cl_decoded_option *save_decoded_options;
extern unsigned int save_decoded_options_count;
-extern auto_vec<cl_decoded_option> save_opt_decoded_options;
+extern vec<cl_decoded_option> *save_opt_decoded_options;
class timer;