On Tue, Dec 19, 2023 at 05:49:48PM +0800, juzhe.zh...@rivai.ai wrote: > >> (x & -1) == x > >>(x | -1) == -1 > >>(x ^ -1) == ~x > > Looks reasonable to me. > > Do you mean modify the code as follows ? > > if (integer_zerop (arg1) || integer_zerop (arg2)) || integer_onep > (arg1) || integer_onep(arg2))
That is too long line and integer_onep is not integer_all_onesp (and for integer_onep something like that certainly doesn't apply). Plus it needs to be tested it does the right thing. > step_ok_p = (code == BIT_AND_EXPR || code == BIT_IOR_EXPR > || code == BIT_XOR_EXPR); Jakub