diff options
author | Richard Biener <rguenther@suse.de> | 2018-06-21 13:47:48 +0000 |
---|---|---|
committer | Richard Biener <rguenth@gcc.gnu.org> | 2018-06-21 13:47:48 +0000 |
commit | f5fe239ec90095b885aef70a8058fdfc03a74340 (patch) | |
tree | 02dd721152dc2268b7d933b8468064b3448c7a77 /gcc/lto-streamer-out.c | |
parent | e67343d7445768ef22523894ec589791f526234c (diff) | |
download | gcc-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.c | 19 |
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. */ |