This is the mail archive of the
mailing list for the GCC project.
Re: Patch ping ^ 2
- From: Daniel Berlin <dberlin at dberlin dot org>
- To: Zdenek Dvorak <rakdver at atrey dot karlin dot mff dot cuni dot cz>
- Cc: gcc-patches at gcc dot gnu dot org
- Date: Sun, 17 Oct 2004 16:47:54 -0400
- Subject: Re: Patch ping ^ 2
- References: <20041017202245.GA27479@atrey.karlin.mff.cuni.cz>
On Sun, 2004-10-17 at 22:22 +0200, Zdenek Dvorak wrote:
> this patch fixes (at least) two several serious problems in lim store
> motion -- misscompilations (PR 17133 and several duplicates) and
> problems with compile time (PR 17790).
I still have serious problems with this patch.
It simply drops using the SSA form to do store motion, and relies on
variable names and lack of aliasing to decide what to move.
This is a serious pessimization from what we have now, which is only
broken because you move things past must-defs that kill them, and
because you don't verify that you aren't doing bad things with global
variables (you need to do an is_global_var check, and a check like dce
does for stores to global variables, and then do the additional checks,
like reverse reachability from the exit node, to make sure you aren't
making the store invisible to outside users).
If this patch is approved, I'll likely rewrite store motion as part of
the sinking work i'm doing so that it works on SSA form again.