r0-89280-g129a37fc319db8 added unsharing to remap_ssa_name but
that wasn't in the version of the patch posted.  That has some
non-trivial cost through mostly_copy_tree_r and copy_tree_r but
more importantly it doesn't seem to be necessary.  I've successfully
bootstrapped and tested with an assert we only get
tree_node_can_be_shared trees here.

Bootstrapped and tested on x86_64-unknown-linux-gnu with all
languages.

Pushed to trunk.

        PR middle-end/108086
        * tree-inline.cc (remap_ssa_name): Do not unshare the
        result from the decl_map.
---
 gcc/tree-inline.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/gcc/tree-inline.cc b/gcc/tree-inline.cc
index c802792fa07..b471774ce51 100644
--- a/gcc/tree-inline.cc
+++ b/gcc/tree-inline.cc
@@ -183,7 +183,7 @@ remap_ssa_name (tree name, copy_body_data *id)
          return name;
        }
 
-      return unshare_expr (*n);
+      return *n;
     }
 
   if (processing_debug_stmt)
-- 
2.35.3

Reply via email to