aboutsummaryrefslogtreecommitdiff
path: root/gcc/toplev.c
diff options
context:
space:
mode:
authorScott Snyder <snyder@fnal.gov>2003-02-28 15:57:50 -0800
committerRichard Henderson <rth@gcc.gnu.org>2003-02-28 15:57:50 -0800
commit73c68f614dcd037a892768ace3481d45d8280436 (patch)
tree7110cbf93c9b18e15a06019a2d41460bedc046c3 /gcc/toplev.c
parentd8fad4ea49a49a7787891d1a6e7dbb81e2a09572 (diff)
downloadgcc-73c68f614dcd037a892768ace3481d45d8280436.zip
gcc-73c68f614dcd037a892768ace3481d45d8280436.tar.gz
gcc-73c68f614dcd037a892768ace3481d45d8280436.tar.bz2
flags.h: Add flag_eliminate_unused_debug_types.
* flags.h: Add flag_eliminate_unused_debug_types. * toplev.c: Add flag_eliminate_unused_debug_types. (f_options): Add -feliminate-unused-debug-types. * dwarf2out.c (struct file_table): Add emitted member. (splice_child_die): Fix the parent pointer for the child being spliced. (lookup_filename): Maintain file_table.emitted array. Don't output .file directive here. (maybe_emit_file): (new) (init_file_table): Set up file_table.emitted. (dwarf2out_source_line): Use maybe_emit_file. (dwarf2out_start_source_file): Use maybe_emit_file. (dwarf2out_init): Use maybe_emit_file. (prune_unused_types_walk_attribs): (new) (prune_unused_types_mark): (new) (prune_unused_types_walk): (new) (prune_unused_types_prune): (new) (prune_unused_types): (new) (dwarf2out_finish): Call prune_unused_types if flag_eliminate_unused_debug_types is set. * doc/invoke.texi (Option Summary): Add -feliminate-unused-debug-types. (Debugging Options): Likewise. From-SVN: r63588
Diffstat (limited to 'gcc/toplev.c')
-rw-r--r--gcc/toplev.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/gcc/toplev.c b/gcc/toplev.c
index ef0ac60..7730a39 100644
--- a/gcc/toplev.c
+++ b/gcc/toplev.c
@@ -378,6 +378,10 @@ tree current_function_func_begin_label;
int flag_eliminate_dwarf2_dups = 0;
+/* Nonzero if doing unused type elimination. */
+
+int flag_eliminate_unused_debug_types = 0;
+
/* Nonzero if generating code to do profiling. */
int profile_flag = 0;
@@ -999,6 +1003,8 @@ static const lang_independent_options f_options[] =
{
{"eliminate-dwarf2-dups", &flag_eliminate_dwarf2_dups, 1,
N_("Perform DWARF2 duplicate elimination") },
+ {"eliminate-unused-debug-types", &flag_eliminate_unused_debug_types, 1,
+ N_("Perform unused type elimination in debug info") },
{"float-store", &flag_float_store, 1,
N_("Do not store floats in registers") },
{"defer-pop", &flag_defer_pop, 1,