diff options
author | YamaArashi <shadow962@live.com> | 2016-04-29 04:42:34 -0700 |
---|---|---|
committer | YamaArashi <shadow962@live.com> | 2016-04-29 04:42:34 -0700 |
commit | 9ff16a3711a965add995e8d79e86f087cd3e5f6b (patch) | |
tree | e40a00ea977357ec51d78c74d288706bf090bc37 /gcc | |
parent | f4e597e460d2627b55836c508a436bed4b60d755 (diff) |
make HOST_WIDE_INT not assume 32 bits in rtl.c
Diffstat (limited to 'gcc')
-rwxr-xr-x | gcc/machmode.h | 5 | ||||
-rwxr-xr-x | gcc/rtl.c | 4 |
2 files changed, 7 insertions, 2 deletions
diff --git a/gcc/machmode.h b/gcc/machmode.h index 2c41355..514f16c 100755 --- a/gcc/machmode.h +++ b/gcc/machmode.h @@ -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, @@ -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); |