On Thu, Sep 23, 2021 at 3:09 AM Feng Xue OS via Gcc-patches
wrote:
>
> Bootstrapped/regtested on x86_64-linux and aarch64-linux.
OK for trunk and all affected branches.
Thanks,
Richard.
> Thanks,
> Feng
>
> ---
> 2021-09-23 Feng Xue
>
> gcc/ChangeLog:
> PR tree-optimization/102451
> * tree-ssa-dse.c (delete_dead_or_redundant_call): Record bb of stmt
> before removal.
> ---
> gcc/tree-ssa-dse.c | 5 +++--
> 1 file changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/gcc/tree-ssa-dse.c b/gcc/tree-ssa-dse.c
> index 98daa8ab24c..27287fe88ee 100644
> --- a/gcc/tree-ssa-dse.c
> +++ b/gcc/tree-ssa-dse.c
> @@ -978,6 +978,7 @@ delete_dead_or_redundant_call (gimple_stmt_iterator *gsi,
> const char *type)
>fprintf (dump_file, "\n");
> }
>
> + basic_block bb = gimple_bb (stmt);
>tree lhs = gimple_call_lhs (stmt);
>if (lhs)
> {
> @@ -985,7 +986,7 @@ delete_dead_or_redundant_call (gimple_stmt_iterator *gsi,
> const char *type)
>gimple *new_stmt = gimple_build_assign (lhs, ptr);
>unlink_stmt_vdef (stmt);
>if (gsi_replace (gsi, new_stmt, true))
> -bitmap_set_bit (need_eh_cleanup, gimple_bb (stmt)->index);
> + bitmap_set_bit (need_eh_cleanup, bb->index);
> }
>else
> {
> @@ -994,7 +995,7 @@ delete_dead_or_redundant_call (gimple_stmt_iterator *gsi,
> const char *type)
>
>/* Remove the dead store. */
>if (gsi_remove (gsi, true))
> - bitmap_set_bit (need_eh_cleanup, gimple_bb (stmt)->index);
> + bitmap_set_bit (need_eh_cleanup, bb->index);
>release_defs (stmt);
> }
> }
> --
> 2.17.1
>