This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH] Cleanup TODO handling for CFG clenaup & SSA update
- From: Jeff Law <law at redhat dot com>
- To: Richard Biener <rguenther at suse dot de>, gcc-patches at gcc dot gnu dot org
- Date: Fri, 8 Mar 2019 07:52:36 -0700
- Subject: Re: [PATCH] Cleanup TODO handling for CFG clenaup & SSA update
- References: <alpine.LSU.2.20.1903081519480.4934@zhemvz.fhfr.qr>
On 3/8/19 7:23 AM, Richard Biener wrote:
>
> There's an old comment
>
> /* When cleanup_tree_cfg merges consecutive blocks, it may
> perform some simplistic propagation when removing single
> valued PHI nodes. This propagation may, in turn, cause the
> SSA form to become out-of-date (see PR 22037). So, even
> if the parent pass had not scheduled an SSA update, we may
> still need to do one. */
> if (!(flags & TODO_update_ssa_any) && need_ssa_update_p (cfun))
> flags |= TODO_update_ssa;
>
> which is from times we've had multiple virtual operands. After
> those went away we could still run into this for example when
> propagating a non-const function address into an indirect call
> through a const function type. This has been fixed as well
> (we retain the const-ness of the call). Thus the above is
> no longer necessary and we can simplify the code.
>
> Bootstrapped on x86_64-unknown-linux-gnu, testing in progress.
>
> I'm not really nervous about this change but if you think it
> should wait for GCC 10 speak up.
>
> Richard.
>
> 2019-03-08 Richard Biener <rguenther@suse.de>
>
> * passes.c (execute_function_todo): Remove dead code.
What's driving the desire to change this for gcc-9? I think it's a fine
cleanup for gcc-10, but it's not clear to me we want to push it into gcc-9.
jeff