aboutsummaryrefslogtreecommitdiff
path: root/gcc/stmt.c
diff options
context:
space:
mode:
authorSegher Boessenkool <segher@kernel.crashing.org>2014-05-27 20:33:57 +0200
committerSegher Boessenkool <segher@gcc.gnu.org>2014-05-27 20:33:57 +0200
commit3ce6c715378c93b5ec390b5e8f0732fa93ad9fc8 (patch)
tree5780924641d85be7edf5ba40f7cc572ddb72f913 /gcc/stmt.c
parent112372291ba760f2f51576e28f8c59a2a89fad61 (diff)
downloadgcc-3ce6c715378c93b5ec390b5e8f0732fa93ad9fc8.zip
gcc-3ce6c715378c93b5ec390b5e8f0732fa93ad9fc8.tar.gz
gcc-3ce6c715378c93b5ec390b5e8f0732fa93ad9fc8.tar.bz2
stmt.c (dump_case_nodes): Don't convert values to HOST_WIDE_INT before printing.
* stmt.c (dump_case_nodes): Don't convert values to HOST_WIDE_INT before printing. From-SVN: r210978
Diffstat (limited to 'gcc/stmt.c')
-rw-r--r--gcc/stmt.c18
1 files changed, 7 insertions, 11 deletions
diff --git a/gcc/stmt.c b/gcc/stmt.c
index 163d495..722d34f 100644
--- a/gcc/stmt.c
+++ b/gcc/stmt.c
@@ -774,24 +774,20 @@ static void
dump_case_nodes (FILE *f, struct case_node *root,
int indent_step, int indent_level)
{
- HOST_WIDE_INT low, high;
-
if (root == 0)
return;
indent_level++;
dump_case_nodes (f, root->left, indent_step, indent_level);
- low = tree_to_shwi (root->low);
- high = tree_to_shwi (root->high);
-
fputs (";; ", f);
- if (high == low)
- fprintf (f, "%*s" HOST_WIDE_INT_PRINT_DEC,
- indent_step * indent_level, "", low);
- else
- fprintf (f, "%*s" HOST_WIDE_INT_PRINT_DEC " ... " HOST_WIDE_INT_PRINT_DEC,
- indent_step * indent_level, "", low, high);
+ fprintf (f, "%*s", indent_step * indent_level, "");
+ print_dec (root->low, f, TYPE_SIGN (TREE_TYPE (root->low)));
+ if (!tree_int_cst_equal (root->low, root->high))
+ {
+ fprintf (f, " ... ");
+ print_dec (root->high, f, TYPE_SIGN (TREE_TYPE (root->high)));
+ }
fputs ("\n", f);
dump_case_nodes (f, root->right, indent_step, indent_level);