aboutsummaryrefslogtreecommitdiff
path: root/gcc/lto-streamer-out.c
diff options
context:
space:
mode:
authorRichard Biener <rguenther@suse.de>2018-06-21 13:47:48 +0000
committerRichard Biener <rguenth@gcc.gnu.org>2018-06-21 13:47:48 +0000
commitf5fe239ec90095b885aef70a8058fdfc03a74340 (patch)
tree02dd721152dc2268b7d933b8468064b3448c7a77 /gcc/lto-streamer-out.c
parente67343d7445768ef22523894ec589791f526234c (diff)
downloadgcc-f5fe239ec90095b885aef70a8058fdfc03a74340.zip
gcc-f5fe239ec90095b885aef70a8058fdfc03a74340.tar.gz
gcc-f5fe239ec90095b885aef70a8058fdfc03a74340.tar.bz2
lto-streamer-out.c (DFS::DFS_write_tree_body): Update outdated comment.
2018-06-21 Richard Biener <rguenther@suse.de> * lto-streamer-out.c (DFS::DFS_write_tree_body): Update outdated comment. Follow BLOCK_ABSTRACT_ORIGIN unconditionally. * tree-streamer-in.c (lto_input_ts_block_tree_pointers): Update comment. * tree-streamer-out.c (write_ts_block_tree_pointers): Stream BLOCK_ABSTRACT_ORIGIN unconditionally. From-SVN: r261847
Diffstat (limited to 'gcc/lto-streamer-out.c')
-rw-r--r--gcc/lto-streamer-out.c19
1 files changed, 2 insertions, 17 deletions
diff --git a/gcc/lto-streamer-out.c b/gcc/lto-streamer-out.c
index 49f72e9..d9f85bb 100644
--- a/gcc/lto-streamer-out.c
+++ b/gcc/lto-streamer-out.c
@@ -801,10 +801,7 @@ DFS::DFS_write_tree_body (struct output_block *ob,
DFS_follow_tree_edge (DECL_ATTRIBUTES (expr));
- /* Do not follow DECL_ABSTRACT_ORIGIN. We cannot handle debug information
- for early inlining so drop it on the floor instead of ICEing in
- dwarf2out.c.
- We however use DECL_ABSTRACT_ORIGIN == error_mark_node to mark
+ /* We use DECL_ABSTRACT_ORIGIN == error_mark_node to mark
declarations which should be eliminated by decl merging. Be sure none
leaks to this point. */
gcc_assert (DECL_ABSTRACT_ORIGIN (expr) != error_mark_node);
@@ -917,20 +914,8 @@ DFS::DFS_write_tree_body (struct output_block *ob,
DFS_follow_tree_edge (t);
DFS_follow_tree_edge (BLOCK_SUPERCONTEXT (expr));
+ DFS_follow_tree_edge (BLOCK_ABSTRACT_ORIGIN (expr));
- /* Follow BLOCK_ABSTRACT_ORIGIN for the limited cases we can
- handle - those that represent inlined function scopes.
- For the drop rest them on the floor instead of ICEing
- in dwarf2out.c, but keep the notion of whether the block
- is an inlined block by refering to itself for the sake of
- tree_nonartificial_location. */
- if (inlined_function_outer_scope_p (expr))
- {
- tree ultimate_origin = block_ultimate_origin (expr);
- DFS_follow_tree_edge (ultimate_origin);
- }
- else if (BLOCK_ABSTRACT_ORIGIN (expr))
- DFS_follow_tree_edge (expr);
/* Do not follow BLOCK_NONLOCALIZED_VARS. We cannot handle debug
information for early inlined BLOCKs so drop it on the floor instead
of ICEing in dwarf2out.c. */