diff options
author | nickc <nickc@138bc75d-0d04-0410-961f-82ee72b054a4> | 1999-04-02 17:37:22 +0000 |
---|---|---|
committer | nickc <nickc@138bc75d-0d04-0410-961f-82ee72b054a4> | 1999-04-02 17:37:22 +0000 |
commit | f13e56bb05bb7b24e61159e234e362d0076e139a (patch) | |
tree | 295b2dcaf27a40fc62354e53ea620658abf4c530 | |
parent | 2be4661506eee3088b4c210533e1bc33747af9d1 (diff) | |
download | gcc-f13e56bb05bb7b24e61159e234e362d0076e139a.tar.gz |
print large constants in hex not dec.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@26142 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/config/arm/arm.c | 34 |
2 files changed, 23 insertions, 16 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 1e01799e198..21afe87981f 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +Fri Apr 2 17:36:10 1999 Nick Clifton <nickc@cygnus.com> + + * config/arm/arm.c (arm_print_operand): Print large constants in + hex rather than decimal. + Fri Apr 2 17:23:58 1999 Nick Clifton <nickc@cygnus.com> * print-rtl.c (print_rtx): Use both HOST_WIDE_INT_PRINT_DEC diff --git a/gcc/config/arm/arm.c b/gcc/config/arm/arm.c index 0888c24521f..e8a4d4c4e7d 100644 --- a/gcc/config/arm/arm.c +++ b/gcc/config/arm/arm.c @@ -5700,13 +5700,15 @@ arm_print_operand (stream, x, code) case 'B': if (GET_CODE (x) == CONST_INT) - fprintf (stream, -#if HOST_BITS_PER_WIDE_INT == HOST_BITS_PER_INT - "%d", -#else - "%ld", -#endif - ARM_SIGN_EXTEND (~ INTVAL (x))); + { + HOST_WIDE_INT val; + val = ARM_SIGN_EXTEND (~ INTVAL (x)); + + if (val < -1000 || val > 1000) + fprintf (stream, HOST_WIDE_INT_PRINT_HEX, val); + else + fprintf (stream, HOST_WIDE_INT_PRINT_DEC, val); + } else { putc ('~', stream); @@ -5725,21 +5727,21 @@ arm_print_operand (stream, x, code) case 'S': { HOST_WIDE_INT val; - char *shift = shift_op (x, &val); + char * shift = shift_op (x, & val); if (shift) { - fprintf (stream, ", %s ", shift_op (x, &val)); + fprintf (stream, ", %s ", shift_op (x, & val)); if (val == -1) arm_print_operand (stream, XEXP (x, 1), 0); else - fprintf (stream, -#if HOST_BITS_PER_WIDE_INT == HOST_BITS_PER_INT - "#%d", -#else - "#%ld", -#endif - val); + { + fputc ('#', stream); + if (val < -1000 || val > 1000) + fprintf (stream, HOST_WIDE_INT_PRINT_HEX (val)); + else + fprintf (stream, HOST_WIDE_INT_PRINT_DEC (val)); + } } } return; |