The following avoids a redundant second operand scan on all stmts during inlining which shows with PR108086.
Bootstrapped and tested on x86_64-unknown-linux-gnu, pushed. PR middle-end/108086 * tree-inline.cc (copy_edges_for_bb): Do not update all stmts again. --- gcc/tree-inline.cc | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/gcc/tree-inline.cc b/gcc/tree-inline.cc index 15a1a389493..addfe7fcbcc 100644 --- a/gcc/tree-inline.cc +++ b/gcc/tree-inline.cc @@ -2571,12 +2571,8 @@ copy_edges_for_bb (basic_block bb, profile_count num, profile_count den, for (si = gsi_start_bb (new_bb); !gsi_end_p (si);) { - gimple *copy_stmt; bool can_throw, nonlocal_goto; - - copy_stmt = gsi_stmt (si); - if (!is_gimple_debug (copy_stmt)) - update_stmt (copy_stmt); + gimple *copy_stmt = gsi_stmt (si); /* Do this before the possible split_block. */ gsi_next (&si); -- 2.35.3