This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH] gen_subprogram_die followup.


This does the is_cu_die->is_unit_die change and also removes the
stale comment I forgot to delete when moving the guarded condition.

Bootstrapped & tested on x86_64-unknown-linux-gnu, applied.

Richard.

2018-06-28  Richard Biener  <rguenther@suse.de>

	* dwarf2out.c (gen_subprogram_die): Use is_unit_die when
	deciding whether to not re-use a DIE.

Index: gcc/dwarf2out.c
===================================================================
--- gcc/dwarf2out.c	(revision 262215)
+++ gcc/dwarf2out.c	(working copy)
@@ -22780,7 +22780,7 @@ gen_subprogram_die (tree decl, dw_die_re
 	 apply; we just use the old DIE.  */
       expanded_location s = expand_location (DECL_SOURCE_LOCATION (decl));
       struct dwarf_file_data * file_index = lookup_filename (s.file);
-      if (((is_cu_die (old_die->die_parent)
+      if (((is_unit_die (old_die->die_parent)
 	    /* This condition fixes the inconsistency/ICE with the
 	       following Fortran test (or some derivative thereof) while
 	       building libgfortran:
@@ -22796,9 +22796,6 @@ gen_subprogram_die (tree decl, dw_die_re
 		&& old_die->die_parent->die_tag == DW_TAG_module)
 	    || context_die == NULL)
 	   && (DECL_ARTIFICIAL (decl)
-	       /* The location attributes may be in the abstract origin
-		  which in the case of LTO might be not available to
-		  look at.  */
 	       || (get_AT_file (old_die, DW_AT_decl_file) == file_index
 		   && (get_AT_unsigned (old_die, DW_AT_decl_line)
 		       == (unsigned) s.line)


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]