On Mon, Oct 05, 2026 at 03:02:14PM +0200, Aldy Hernandez wrote:
> On Mon, Oct 05, 2026 at 01:48:01AM -0600, Jeff Law wrote:
> > 
> > 
> > On 10/4/26 5:24 AM, Aldy Hernandez wrote:
> > > [Well, since we can't get rid of DOM yet, why don't we clean it up and
> > > remove stuff we can clearly do better with ranges.  Maybe we can
> > > reduce it to a bare minimum ;-).]
> > > 
> > > We now have all the pieces to do what test_for_singularity does, but
> > > with ranges.  Remove the function and use simplify_using_ranges
> > > instead.
> > > 
> > > This makes DOM a tiny bit smarter, since simplify_using_ranges is far
> > > more capable than the ad-hoc stuff we did.  As much as I hate making
> > > it smarter, it's all in the interest of nuking it :).
> > > 
> > > Tested on ppc64le Linux.
> > > 
> > > OK for trunk?
> > > 
> > > gcc/ChangeLog:
> > > 
> > >   * tree-ssa-dom.cc (dom_opt_dom_walker::m_dummy_cond): Remove.
> > >   (dom_opt_dom_walker::test_for_singularity): Remove.
> > >   (dom_opt_dom_walker::fold_cond): Remove.
> > >   (dom_opt_dom_walker::simplify_stmt): New.
> > >   (dom_opt_dom_walker::optimize_stmt): Call it in place of
> > >   test_for_singularity and fold_cond.
> > > 
> > > gcc/testsuite/ChangeLog:
> > > 
> > >   * gcc.dg/tree-ssa/predcom-7.c: Add -fno-tree-dominator-opts.
> > >   * gcc.dg/tree-ssa/ssa-dom-simplify-3.c: New test.
> > IIRC we've wanted to nuke this optimization as interacts poorly with SCEV.
> > 
> > Furthermore, the main purpose was to turn these things into equality
> > comparisons which in turn would expose the constant equivalence on one of
> > the edges, something done quite well by using Ranger already.
> > 
> > So no objection to the patch, but if you wanted to get a lot more aggressive
> > about this blob of code and nuke it, you've got my blessing.
> 
> How about this?

I'm gonna take your "you've got my blessing" as an approval and push it, 
especially since it gets the regression bots off my back :).

Aldy

Reply via email to