make HOST_WIDE_INT not assume 32 bits in rtl.c

This commit is contained in:
YamaArashi
2016-04-29 04:42:34 -07:00
parent f4e597e460
commit 9ff16a3711
2 changed files with 7 additions and 2 deletions

View File

@@ -31,8 +31,7 @@ Boston, MA 02111-1307, USA. */
#define HOST_WIDE_INT int32_t
#define HOST_WIDE_UINT uint32_t
/* Provide defaults for the way to print a HOST_WIDE_INT
in various manners. */
/* Provide HOST_WIDE_INT format specs. */
#define HOST_WIDE_INT_PRINT_DEC "%" PRId32
@@ -42,6 +41,8 @@ Boston, MA 02111-1307, USA. */
#define HOST_WIDE_INT_PRINT_DOUBLE_HEX "0x%" PRIx32 "%08" PRIx32
#define HOST_WIDE_INT_SCAN_DEC "%" SCNd32
/* Make an enum class that gives all the machine modes. */
#define DEF_MACHMODE(SYM, NAME, TYPE, SIZE, UNIT, WIDER) SYM,

View File

@@ -781,6 +781,10 @@ FILE *infile;
break;
case 'w':
read_name(tmp_char, infile);
sscanf(tmp_char, HOST_WIDE_INT_SCAN_DEC, &tmp_wide);
XWINT(return_rtx, i) = tmp_wide;
break;
case 'i':
case 'n':
read_name(tmp_char, infile);