On 10/2/2021 1:50 PM, Aldy Hernandez via Gcc-patches wrote:
Bah.  The range was being clobbered half way through the calculation.

Tested on x86-64 Linux.

Pushed.

On Fri, Oct 1, 2021 at 4:52 PM Aldy Hernandez <al...@redhat.com> wrote:
Well, after talking with Andrew it seems that X << Y being non-zero
also implies X is non-zero.  So we don't even need relationals here.

So, I leave gori relationals in his capable hands, while I test this
much simpler patch which fixes the PR with no additional
infrastructure ;-).

Will push pending tests.
Aldy

On Fri, Oct 1, 2021 at 2:43 PM Aldy Hernandez <al...@redhat.com> wrote:
Knowing that X << X is non-zero means X is also non-zero.  This patch
teaches this this to range-ops.

As usual, the big twiddling experts could come up with all sorts of
fancy enhancements in this area, and we welcome all patches :).

I will push this pending tests.

gcc/ChangeLog:

         PR tree-optimization/102546
         * range-op.cc (operator_lshift::op1_range): Handle EQ_EXPR
         relation.
I'm going to assume this also fixes a similar ICE building the linux kernel.  One less thing to bisect today :-)

jeff

Reply via email to