https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106459

--- Comment #4 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
I suspect it is this macro which is causing the issue:
/* True if VALUE can be loaded into a register using LU12I.  */

#define LU12I_OPERAND(VALUE) \
  (((VALUE) | ((1UL << 31) - IMM_REACH)) == ((1UL << 31) - IMM_REACH) \
   || ((VALUE) | ((1UL << 31) - IMM_REACH)) + IMM_REACH == 0)

It should either use ULL or use HOST_WIDE_INT_1U instead of 1UL.

Reply via email to