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

2021-06-15 Thread Jeff Law via Gcc-patches
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 wrote: For bitwise or, nonzero|X is always nonzero.  Make sure we don't drop to varying in this case. This was fou

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

2021-06-15 Thread Aldy Hernandez via Gcc-patches
On 6/15/21 2:39 PM, Bernhard Reutner-Fischer wrote: On 15 June 2021 13:48:39 CEST, Aldy Hernandez via Gcc-patches 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 t

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

2021-06-15 Thread Bernhard Reutner-Fischer via Gcc-patches
On 15 June 2021 13:48:39 CEST, Aldy Hernandez via Gcc-patches 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 us

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

2021-06-15 Thread Aldy Hernandez via Gcc-patches
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: * rang