+2002-01-26 Richard Henderson <rth@redhat.com>
+
+ * config/cris/cris.c (cris_print_operand): Handle 64-bit CONST_INT.
+
2002-01-26 Richard Henderson <rth@redhat.com>
* config/alpha/alpha.c (alpha_sa_mask): Mark RA for unicos here too.
switch (GET_CODE (operand))
{
case CONST_INT:
- /* Sign-extension from a normal int to a long long. */
- fprintf (file, INTVAL (operand) < 0 ? "-1" : "0");
+ if (HOST_BITS_PER_WIDE_INT == 32)
+ /* Sign-extension from a normal int to a long long. */
+ fprintf (file, INTVAL (operand) < 0 ? "-1" : "0");
+ else
+ fprintf (file, "0x%x", (unsigned int)(INTVAL (x) >> 31 >> 1));
return;
case CONST_DOUBLE:
fprintf (file, "0x%x", CONST_DOUBLE_LOW (x));
return;
}
- /* If not a CONST_DOUBLE, the least significant part equals the
- normal part, so handle it normally. */
+ else if (HOST_BITS_PER_WIDE_INT > 32 && GET_CODE (operand) == CONST_INT)
+ {
+ fprintf (file, "0x%x", (unsigned int)(INTVAL (x) & 0xffffffff));
+ return;
+ }
+ /* Otherwise the least significant part equals the normal part,
+ so handle it normally. */
break;
case 'A':