#endif /* TARGET_HLASM */
/* ===================================================== */
+#if defined(TARGET_EBCDIC) && !defined(HOST_EBCDIC)
/* ASCII to EBCDIC conversion table. */
static const unsigned char ascebc[256] =
{
0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F,
0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0xFF
};
+#endif /* TARGET_EBCDIC && ! HOST_EBCDIC */
+
+#if defined(HOST_EBCDIC) && !defined(TARGET_EBCDIC)
/* EBCDIC to ASCII conversion table. */
static const unsigned char ebcasc[256] =
{
/*F8 8 9 */
0x38, 0x39, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF
};
+#endif /* HOST_EBCDIC && ! TARGET_EBCDIC */
\f
/* Initialize the GCC target structure. */
#ifdef TARGET_HLASM
fprintf (f, "* Function %s prologue\n", mvs_function_name);
fprintf (f, "FDSE%03d\tDSECT\n", function_label_index);
fprintf (f, "\tDS\tD\n");
- fprintf (f, "\tDS\tCL(%d)\n", STACK_POINTER_OFFSET + l
- + current_function_outgoing_args_size);
+ fprintf (f, "\tDS\tCL(" HOST_WIDE_INT_PRINT_DEC ")\n",
+ STACK_POINTER_OFFSET + l
+ + current_function_outgoing_args_size);
fprintf (f, "\tORG\tFDSE%03d\n", function_label_index);
fprintf (f, "\tDS\tCL(120+8)\n");
fprintf (f, "\tORG\n");
aligned_size = (stackframe_size + 7) >> 3;
aligned_size <<= 3;
- fprintf (f, "# arg_size=0x%x frame_size=0x%x aligned size=0x%x\n",
+ fprintf (f, "# arg_size=0x%x frame_size=" HOST_WIDE_INT_PRINT_HEX
+ " aligned size=0x%x\n",
current_function_outgoing_args_size, frame_size, aligned_size);
fprintf (f, "\t.using\t.,r15\n");
if (CODE == 'O') \
{ \
if (GET_CODE (addr) == PLUS) \
- fprintf (FILE, "%d", INTVAL (XEXP (addr, 1))); \
+ fprintf (FILE, HOST_WIDE_INT_PRINT_DEC, INTVAL (XEXP (addr, 1))); \
else \
fprintf (FILE, "0"); \
} \
break; \
case CONST_INT: \
if (CODE == 'B') \
- fprintf (FILE, "%d", INTVAL (XV) & 0xff); \
+ fprintf (FILE, "%d", (int) (INTVAL (XV) & 0xff)); \
else if (CODE == 'X') \
- fprintf (FILE, "%02X", INTVAL (XV) & 0xff); \
+ fprintf (FILE, "%02X", (int) (INTVAL (XV) & 0xff)); \
else if (CODE == 'h') \
- fprintf (FILE, "%d", (INTVAL (XV) << 16) >> 16); \
+ fprintf (FILE, HOST_WIDE_INT_PRINT_DEC, (INTVAL (XV) << 16) >> 16); \
else if (CODE == 'H') \
{ \
mvs_page_lit += 2; \
- fprintf (FILE, "=H'%d'", (INTVAL (XV) << 16) >> 16); \
+ fprintf (FILE, "=H'" HOST_WIDE_INT_PRINT_DEC "'", (INTVAL (XV) << 16) >> 16); \
} \
else if (CODE == 'K') \
{ \
/* auto sign-extension of signed 16-bit to signed 32-bit */ \
mvs_page_lit += 4; \
- fprintf (FILE, "=F'%d'", (INTVAL (XV) << 16) >> 16); \
+ fprintf (FILE, "=F'" HOST_WIDE_INT_PRINT_DEC "'", (INTVAL (XV) << 16) >> 16); \
} \
else if (CODE == 'W') \
{ \
else \
{ \
mvs_page_lit += 4; \
- fprintf (FILE, "=F'%d'", INTVAL (XV)); \
+ fprintf (FILE, "=F'" HOST_WIDE_INT_PRINT_DEC "'", INTVAL (XV)); \
} \
break; \
case CONST_DOUBLE: \
fprintf (FILE, "=V("); \
ASM_OUTPUT_LABELREF (FILE, \
XSTR (XEXP (XEXP (XV, 0), 0), 0)); \
- fprintf (FILE, ")\n\tA\t%s,=F'%d'", curreg, \
- INTVAL (XEXP (XEXP (XV, 0), 1))); \
+ fprintf (FILE, ")\n\tA\t%s,=F'" HOST_WIDE_INT_PRINT_DEC "'", \
+ curreg, INTVAL (XEXP (XEXP (XV, 0), 1))); \
} \
else \
{ \
if (CODE == 'O') \
{ \
if (GET_CODE (addr) == PLUS) \
- fprintf (FILE, "%d", INTVAL (XEXP (addr, 1))); \
+ fprintf (FILE, HOST_WIDE_INT_PRINT_DEC, INTVAL (XEXP (addr, 1))); \
else \
fprintf (FILE, "0"); \
} \
break; \
case CONST_INT: \
if (CODE == 'B') \
- fprintf (FILE, "%d", INTVAL (XV) & 0xff); \
+ fprintf (FILE, "%d", (int) (INTVAL (XV) & 0xff)); \
else if (CODE == 'X') \
- fprintf (FILE, "%02X", INTVAL (XV) & 0xff); \
+ fprintf (FILE, "%02X", (int) (INTVAL (XV) & 0xff)); \
else if (CODE == 'h') \
- fprintf (FILE, "%d", (INTVAL (XV) << 16) >> 16); \
+ fprintf (FILE, HOST_WIDE_INT_PRINT_DEC, (INTVAL (XV) << 16) >> 16); \
else if (CODE == 'H') \
{ \
mvs_page_lit += 2; \
- fprintf (FILE, "=H'%d'", (INTVAL (XV) << 16) >> 16); \
+ fprintf (FILE, "=H'" HOST_WIDE_INT_PRINT_DEC "'", \
+ (INTVAL (XV) << 16) >> 16); \
} \
else if (CODE == 'K') \
{ \
/* auto sign-extension of signed 16-bit to signed 32-bit */ \
mvs_page_lit += 4; \
- fprintf (FILE, "=F'%d'", (INTVAL (XV) << 16) >> 16); \
+ fprintf (FILE, "=F'" HOST_WIDE_INT_PRINT_DEC "'", \
+ (INTVAL (XV) << 16) >> 16); \
} \
else if (CODE == 'W') \
{ \
else \
{ \
mvs_page_lit += 4; \
- fprintf (FILE, "=F'%d'", INTVAL (XV)); \
+ fprintf (FILE, "=F'" HOST_WIDE_INT_PRINT_DEC "'", INTVAL (XV)); \
} \
break; \
case CONST_DOUBLE: \
fprintf (FILE, "=V("); \
ASM_OUTPUT_LABELREF (FILE, \
XSTR (XEXP (XEXP (XV, 0), 0), 0)); \
- fprintf (FILE, ")\n\tA\t%s,=F'%d'", curreg, \
- INTVAL (XEXP (XEXP (XV, 0), 1))); \
+ fprintf (FILE, ")\n\tA\t%s,=F'" HOST_WIDE_INT_PRINT_DEC "'", \
+ curreg, INTVAL (XEXP (XEXP (XV, 0), 1))); \
} \
else \
{ \