From: Richard Biener Date: Fri, 16 Dec 2022 12:01:40 +0000 (+0100) Subject: middle-end/108086 - avoid unshare_expr when remapping SSA names X-Git-Tag: basepoints/gcc-14~2464 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=da85bfc75024a92b97e60e4436863dd5789786ec;p=thirdparty%2Fgcc.git middle-end/108086 - avoid unshare_expr when remapping SSA names 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. PR middle-end/108086 * tree-inline.cc (remap_ssa_name): Do not unshare the result from the decl_map. --- diff --git a/gcc/tree-inline.cc b/gcc/tree-inline.cc index 9fd971a034ce..c6c86af6c4ea 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)