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]

Re: [Patch debug] Do not emit debug sections until they are required.



On 12 Nov 2010, at 16:46, Richard Henderson wrote:


    {
-      switch_to_section (debug_str_section);
+      static bool done;
+      if (!done)
+	{
+	  switch_to_section (debug_str_section);
+	  done = true;
+	}
      ASM_OUTPUT_LABEL (asm_out_file, node->label);
      assemble_string (node->str, strlen (node->str) + 1);
    }

"done" is unused; this change looks unnecessary.
removed

+ /* The pubtypes table might be emptied by pruning unused items. */
+ FOR_EACH_VEC_ELT (pubname_entry, pubtype_table, i, p)
+ if (p->die->die_offset != 0
+ || !flag_eliminate_unused_debug_types)
+ {
+ empty = false;
+ break;
+ }

Perhaps rearrange to


 empty = false;
 if (flag_eliminate_unused_debug_types)
   {
     empty = true;
     FOR_EACH_VEC_ELT (pubname_entry, pubtype_table, i, p)
       if (p->die->die_offset != 0)
         {
           empty = false;
           break;
         }
   }

changed

Otherwise ok.
thanks for your help & reviews,
changed as per above (attached) and applied as r166704.
Iain

Attachment: 166703-dw2.txt
Description: Text document





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