This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH] Prevent ifcvt from moving computations into loop
- From: Richard Henderson <rth at redhat dot com>
- To: Zdenek Dvorak <rakdver at atrey dot karlin dot mff dot cuni dot cz>
- Cc: gcc-patches at gcc dot gnu dot org
- Date: Tue, 15 Jul 2003 15:43:39 -0700
- Subject: Re: [PATCH] Prevent ifcvt from moving computations into loop
- References: <20030715172756.GA23743@atrey.karlin.mff.cuni.cz>
On Tue, Jul 15, 2003 at 07:27:56PM +0200, Zdenek Dvorak wrote:
> does someone know about some reason why the condition removed by this
> patch is in find_if_case_2?
If the ELSE block can be removed entirely, then we'll remove one
(static) branch from the program. It's most useful for if-then-else
diamonds, but the same concept applies to more complex DAGs.
> In cases like
>
> ---> something ---> "else" --> "else_succ"
> / \ /
> \ / /
> -<- "then" - ...
Perhaps we should just reject moving into the TEST block if either
of the two successor edges have EDGE_DFS_BACK?
r~