This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Patch ping ^ 2


On Sun, 2004-10-17 at 22:22 +0200, Zdenek Dvorak wrote:
> Hello,
> 
> 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).
> 
> http://gcc.gnu.org/ml/gcc-patches/2004-09/msg01120.html

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.



> 
> Zdenek
-- 


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]