[PATCH] range-ops: (nonzero | X) is nonzero

Jeff Law jeffreyalaw@gmail.com
Tue Jun 15 16:33:42 GMT 2021



On 6/15/2021 8:14 AM, Aldy Hernandez via Gcc-patches wrote:
>
>
> On 6/15/21 2:39 PM, Bernhard Reutner-Fischer wrote:
>> On 15 June 2021 13:48:39 CEST, Aldy Hernandez via Gcc-patches 
>> <gcc-patches@gcc.gnu.org> wrote:
>>> For bitwise or, nonzero|X is always nonzero.  Make sure we don't drop
>>> to
>>> varying in this case.
>>>
>>> This was found while examining differences between VRP/DOM threaders
>>> and
>>> the upcoming work, but it could be useful for any user of range-ops.
>>>
>>> Tested on x86-64 Linux.
>>>
>>> OK?
>>>
>>> gcc/ChangeLog:
>>>
>>>     * range-op.cc (operator_bitwise_or::wi_fold): Make sure
>>>     nonzero|X is nonzero.
>>>     (range_op_bitwise_and_tests): Add tests for above.
OK
jeff



More information about the Gcc-patches mailing list