On Thu, Nov 20, 2014 at 1:58 PM, Markus Trippelsdorf <mar...@trippelsdorf.de> wrote: > On 2014.11.20 at 19:44 +0100, Jakub Jelinek wrote: >> On Thu, Nov 20, 2014 at 07:41:43PM +0100, Markus Trippelsdorf wrote: >> > 2014-11-20 Markus Trippelsdorf <mar...@trippelsdorf.de> >> > >> > * config/rs6000/rs6000.c (includes_rldic_lshift_p): Cast 0 to unsigned. >> > (includes_rldicr_lshift_p): Likewise. >> > >> > diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c >> > index a9604cf3fa97..d7958b33ba1a 100644 >> > --- a/gcc/config/rs6000/rs6000.c >> > +++ b/gcc/config/rs6000/rs6000.c >> > @@ -16197,10 +16197,10 @@ includes_rldic_lshift_p (rtx shiftop, rtx andop) >> > unsigned HOST_WIDE_INT c, lsb, shift_mask; >> > >> > c = INTVAL (andop); >> > - if (c == 0 || c == ~0) >> > + if (c == 0 || c == ~(unsigned HOST_WIDE_INT) 0) >> > return 0; >> > >> > - shift_mask = ~0; >> > + shift_mask = ~(unsigned HOST_WIDE_INT) 0; >> > shift_mask <<= INTVAL (shiftop); >> > >> > /* Find the least significant one bit. */ >> > @@ -16235,7 +16235,7 @@ includes_rldicr_lshift_p (rtx shiftop, rtx andop) >> > { >> > unsigned HOST_WIDE_INT c, lsb, shift_mask; >> > >> > - shift_mask = ~0; >> > + shift_mask = ~(unsigned HOST_WIDE_INT) 0; >> > shift_mask <<= INTVAL (shiftop); >> > c = INTVAL (andop); >> >> You could use ~HOST_WIDE_INT_UC (0) in all the 3 cases. > > Or better still HOST_WIDE_INT_M1U.
Okay. Thanks, David