summaryrefslogtreecommitdiff
path: root/gcc/toplev.c
diff options
context:
space:
mode:
authorjason <jason@138bc75d-0d04-0410-961f-82ee72b054a4>1999-11-25 02:36:40 +0000
committerjason <jason@138bc75d-0d04-0410-961f-82ee72b054a4>1999-11-25 02:36:40 +0000
commite7b3c55cb8a5b152bb20362c37e40579b007ed44 (patch)
treeb8d824a990ecfa26f4e85b6a58fd25bf6211beab /gcc/toplev.c
parent37076bbb2d70a8fcd3d03ced83dd7b6d4bd57b95 (diff)
downloadgcc-e7b3c55cb8a5b152bb20362c37e40579b007ed44.tar.gz
* dwarf2out.c (free_AT, free_die): New fns.
(remove_children): Call them. (output_line_info): Disable removal of duplicate notes. Generate minimal debug info for types with TYPE_DECL_SUPPRESS_INFO set. * dwarf2out.c (gen_struct_or_union_type_die): TYPE_DECL_SUPPRESS_INFO means pretend the type isn't defined. Don't defer emitting types. (gen_type_die_for_member): New fn. (gen_decl_die): Call it. (splice_child_die): New fn. (gen_member_die): Call it rather than generate duplicate dies. Defer emitting information for the abstract instance of an inline until we either inline it or emit an out-of-line copy. * dwarf2out.c (decl_ultimate_origin): Ignore DECL_ABSTRACT_ORIGIN from output_inline_function if DECL_ABSTRACT is also set. (block_ultimate_origin): Likewise. (gen_abstract_function): New fn. (gen_decl_die, gen_inlined_subroutine_die): Call it. (gen_subprogram_die): An abstract instance is not a declaration just because it doesn't match current_function_decl. Don't abort because DECL_DEFER_OUTPUT isn't set. Do abort if a declaration has an abstract origin. * toplev.c (rest_of_compilation): Don't emit dwarf2 info for the abstract instance here. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30659 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/toplev.c')
-rw-r--r--gcc/toplev.c11
1 files changed, 0 insertions, 11 deletions
diff --git a/gcc/toplev.c b/gcc/toplev.c
index 53a8a792329..dbe5dceb9dc 100644
--- a/gcc/toplev.c
+++ b/gcc/toplev.c
@@ -3690,17 +3690,6 @@ rest_of_compilation (decl)
set_decl_abstract_flags (decl, 0);
}
#endif
-#ifdef DWARF2_DEBUGGING_INFO
- /* Generate the DWARF2 info for the "abstract" instance
- of a function which we may later generate inlined and/or
- out-of-line instances of. */
- if (write_symbols == DWARF2_DEBUG)
- {
- set_decl_abstract_flags (decl, 1);
- TIMEVAR (symout_time, dwarf2out_decl (decl));
- set_decl_abstract_flags (decl, 0);
- }
-#endif
TIMEVAR (integration_time, save_for_inline_nocopy (decl));
DECL_SAVED_INSNS (decl)->inlinable = inlinable;
goto exit_rest_of_compilation;