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][RFC] Get back what DCE was able to do in 4.2 with V_MUST_DEFs


On 9/27/07, Richard Guenther <rguenther@suse.de> wrote:

> 2007-09-27  Richard Guenther  <rguenther@suse.de>
>
>         PR tree-optimization/33562
>         * tree-ssa-dce.c (propagate_necessity): Look for killing
>         VDEFs and do not mark their associated VMAY_USEs as necessary.
>         (remove_dead_stmt): Update virtual operands of users of removed
>         VDEFs.
>         (eliminate_unnecessary_stmts): Do not remove unnecessary PHIs
>         here,
>         (perform_tree_ssa_dce): but do so here, after propagating
>         necessity again.
>         * tree-dfa.c (get_ref_base_and_extent): Do not ICE on things
>         we cannot handle.  We return the full ref as base in that
>         case.
>
>         * gcc.c-torture/compile/20070927-1.c: New testcase.
>         * gcc.dg/tree-ssa/complex-4.c: Remove XFAIL again.

I think I would rather keep pessimizing this test case instead of
hacking DCE in such a way.  The effort is much better spent in a good
DSE implementation.  Otherwise, we will just keep perpetuating hack
upon hack until DCE becomes unmaintainable.

Sorry.  This is not as useful feedback as I would want it to be.  And
I realize that I have not had time to fix DSE properly, but I don't
think DCE should be stretched this way.


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