]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
Fix streamer desynchornization caused by streamer debugging patch
authorJan Hubicka <jh@suse.cz>
Fri, 29 May 2020 10:25:48 +0000 (12:25 +0200)
committerJan Hubicka <jh@suse.cz>
Fri, 14 Aug 2020 09:22:04 +0000 (11:22 +0200)
it turns out I lost one hunk in the patch disabling extra streaming
which causes streamer to go out of sync in the case non-trivial scc
containing the node being streamed appears in local stream (which seems
quite rare since it does not happen during bootstrap).

2020-05-29  Jan Hubicka  <hubicka@ucw.cz>

PR lto/95362
* lto-streamer-out.c (lto_output_tree): Disable redundant streaming.

(cherry picked from commit 11041c3151e30d197d1c2774721db24332eeccef)

gcc/lto-streamer-out.c

index 4651d8e5c51dd700d169171f3fcc9a5722d019d8..35ed44d3096fd44be51121d8b7018ac24aac9586 100644 (file)
@@ -1747,8 +1747,9 @@ lto_output_tree (struct output_block *ob, tree expr,
        {
          streamer_write_record_start (ob, LTO_tree_pickle_reference);
          streamer_write_uhwi (ob, ix);
-         streamer_write_enum (ob->main_stream, LTO_tags, LTO_NUM_TAGS,
-                              lto_tree_code_to_tag (TREE_CODE (expr)));
+         if (streamer_debugging)
+           streamer_write_enum (ob->main_stream, LTO_tags, LTO_NUM_TAGS,
+                                lto_tree_code_to_tag (TREE_CODE (expr)));
        }
       if (streamer_dump_file)
        {