aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorJan Hubicka <jh@suse.cz>2020-05-29 12:25:48 +0200
committerJan Hubicka <jh@suse.cz>2020-05-29 12:25:48 +0200
commit11041c3151e30d197d1c2774721db24332eeccef (patch)
tree77a50c3f20820020f19df906a1318824e5a509c3 /gcc
parent6bee5ffd8ad1ea6640354db62f86591ab6b19954 (diff)
downloadgcc-11041c3151e30d197d1c2774721db24332eeccef.zip
gcc-11041c3151e30d197d1c2774721db24332eeccef.tar.gz
gcc-11041c3151e30d197d1c2774721db24332eeccef.tar.bz2
Fix streamer desynchornization caused by streamer debugging patch
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.
Diffstat (limited to 'gcc')
-rw-r--r--gcc/lto-streamer-out.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/gcc/lto-streamer-out.c b/gcc/lto-streamer-out.c
index 288e3c0..dfd32ec 100644
--- a/gcc/lto-streamer-out.c
+++ b/gcc/lto-streamer-out.c
@@ -1791,8 +1791,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)));
}
in_dfs_walk = false;
lto_stats.num_pickle_refs_output++;