aboutsummaryrefslogtreecommitdiff
path: root/gcc/lto-streamer-out.c
diff options
context:
space:
mode:
authorRichard Biener <rguenther@suse.de>2016-04-22 09:05:10 +0000
committerRichard Biener <rguenth@gcc.gnu.org>2016-04-22 09:05:10 +0000
commit9a13d066d74c4842a453297b9d2ad9b07348e623 (patch)
tree495f97f4f453f46fa0bfadbf2ab0ddb1664a37a5 /gcc/lto-streamer-out.c
parentd14311920581dff3d36aba3e3aeb53f82213ef83 (diff)
downloadgcc-9a13d066d74c4842a453297b9d2ad9b07348e623.zip
gcc-9a13d066d74c4842a453297b9d2ad9b07348e623.tar.gz
gcc-9a13d066d74c4842a453297b9d2ad9b07348e623.tar.bz2
lto-streamer-in.c (input_ssa_names): Do not allocate GIMPLE_NOP for all SSA names.
2016-04-22 Richard Biener <rguenther@suse.de> * lto-streamer-in.c (input_ssa_names): Do not allocate GIMPLE_NOP for all SSA names. * lto-streamer-out.c (output_ssa_names): Do not output SSA names that should have been released. From-SVN: r235360
Diffstat (limited to 'gcc/lto-streamer-out.c')
-rw-r--r--gcc/lto-streamer-out.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/gcc/lto-streamer-out.c b/gcc/lto-streamer-out.c
index 6703d41..35e58fd 100644
--- a/gcc/lto-streamer-out.c
+++ b/gcc/lto-streamer-out.c
@@ -1816,7 +1816,11 @@ output_ssa_names (struct output_block *ob, struct function *fn)
if (ptr == NULL_TREE
|| SSA_NAME_IN_FREE_LIST (ptr)
- || virtual_operand_p (ptr))
+ || virtual_operand_p (ptr)
+ /* Simply skip unreleased SSA names. */
+ || (! SSA_NAME_IS_DEFAULT_DEF (ptr)
+ && (! SSA_NAME_DEF_STMT (ptr)
+ || ! gimple_bb (SSA_NAME_DEF_STMT (ptr)))))
continue;
streamer_write_uhwi (ob, i);