summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog4
-rw-r--r--gcc/stmt.c4
2 files changed, 6 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 68d3972ba79..ee799892b31 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,6 +1,10 @@
2012-12-10 Kai Tietz <ktietz@redhat.com>
PR target/53912
+ * stmt.c (compute_cases_per_edge): Cast from pointer via intptr_t.
+ (expand_case): Likewise.
+
+ PR target/53912
* print-tree.c (print_node): Cast from pointer via uintptr_t.
2012-12-10 Jakub Jelinek <jakub@redhat.com>
diff --git a/gcc/stmt.c b/gcc/stmt.c
index 700dbb508ce..2227810f55b 100644
--- a/gcc/stmt.c
+++ b/gcc/stmt.c
@@ -2061,7 +2061,7 @@ compute_cases_per_edge (gimple stmt)
tree lab = CASE_LABEL (elt);
basic_block case_bb = label_to_block_fn (cfun, lab);
edge case_edge = find_edge (bb, case_bb);
- case_edge->aux = (void *)((long)(case_edge->aux) + 1);
+ case_edge->aux = (void *)((intptr_t)(case_edge->aux) + 1);
}
}
@@ -2176,7 +2176,7 @@ expand_case (gimple stmt)
edge case_edge = find_edge (bb, case_bb);
case_list = add_case_node (
case_list, low, high, lab,
- case_edge->probability / (long)(case_edge->aux),
+ case_edge->probability / (intptr_t)(case_edge->aux),
case_node_pool);
}
pointer_set_destroy (seen_labels);