If a result doesn't have a default def, don't attempt to remap it.
Regstrapped on x86_64-linux-gnu. Ok to install?
for gcc/ChangeLog
* tree-inline.cc (declare_return_variable): Don't remap NULL
default def of result.
---
gcc/tree-inline.cc | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git a/gcc/tree-inline.cc b/gcc/tree-inline.cc
index bfea1cc11822e..4556256dc32b1 100644
--- a/gcc/tree-inline.cc
+++ b/gcc/tree-inline.cc
@@ -3851,10 +3851,11 @@ declare_return_variable (copy_body_data *id, tree
return_slot, tree modify_dest,
it's default_def SSA_NAME. */
if (gimple_in_ssa_p (id->src_cfun)
&& is_gimple_reg (result))
- {
- temp = make_ssa_name (temp);
- insert_decl_map (id, ssa_default_def (id->src_cfun, result), temp);
- }
+ if (tree default_def = ssa_default_def (id->src_cfun, result))
+ {
+ temp = make_ssa_name (temp);
+ insert_decl_map (id, default_def, temp);
+ }
insert_init_stmt (id, entry_bb, gimple_build_assign (temp, var));
}
else
--
Alexandre Oliva, happy hacker https://FSFLA.org/blogs/lxo/
Free Software Activist GNU Toolchain Engineer
Disinformation flourishes because many people care deeply about injustice
but very few check the facts. Ask me about <https://stallmansupport.org>