dwarf2out.c: fix jit issue with early_dwarf_finished
authorDavid Malcolm <dmalcolm@redhat.com>
Thu, 1 Dec 2016 21:56:09 +0000 (21:56 +0000)
committerDavid Malcolm <dmalcolm@gcc.gnu.org>
Thu, 1 Dec 2016 21:56:09 +0000 (21:56 +0000)
All of the jit testcases that generate debuginfo appear to have been
failing since r240228 on their 2nd in-process iteration on this
assertion in set_early_dwarf's ctor:

      gcc_assert (! early_dwarf_finished);

Root cause is that the global is never reset at the end of compilation,
which this patch fixes in the obvious way.

gcc/ChangeLog:
* dwarf2out.c (dwarf2out_c_finalize): Reset early_dwarf and
early_dwarf_finished.

From-SVN: r243136

gcc/ChangeLog
gcc/dwarf2out.c

index 5a55f42..b23481f 100644 (file)
@@ -1,3 +1,8 @@
+2016-12-01  David Malcolm  <dmalcolm@redhat.com>
+
+       * dwarf2out.c (dwarf2out_c_finalize): Reset early_dwarf and
+       early_dwarf_finished.
+
 2016-12-01  Eric Botcazou  <ebotcazou@adacore.com>
             David S. Miller  <davem@davemloft.net>
 
index bc328ab..8dc8523 100644 (file)
@@ -29830,6 +29830,9 @@ dwarf2out_c_finalize (void)
   cold_text_section = NULL;
   current_unit_personality = NULL;
 
+  early_dwarf = false;
+  early_dwarf_finished = false;
+
   next_die_offset = 0;
   single_comp_unit_die = NULL;
   comdat_type_list = NULL;