aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog7
-rw-r--r--gcc/tree.c5
2 files changed, 9 insertions, 3 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 6f2f3d7..a8d78c7 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -2,6 +2,13 @@
Alan Hayward <alan.hayward@arm.com>
David Sherwood <david.sherwood@arm.com>
+ * tree.c (find_atomic_core_type): Check tree_fits_uhwi_p before
+ calling tree_to_uhwi.
+
+2017-09-21 Richard Sandiford <richard.sandiford@linaro.org>
+ Alan Hayward <alan.hayward@arm.com>
+ David Sherwood <david.sherwood@arm.com>
+
* tree-ssa-ccp.c (get_value_for_expr): Use a positive test for
INTEGER_CST rather than a negative test for ADDR_EXPR.
diff --git a/gcc/tree.c b/gcc/tree.c
index 788a84b..e379940 100644
--- a/gcc/tree.c
+++ b/gcc/tree.c
@@ -5821,11 +5821,10 @@ find_atomic_core_type (tree type)
tree base_atomic_type;
/* Only handle complete types. */
- if (TYPE_SIZE (type) == NULL_TREE)
+ if (!tree_fits_uhwi_p (TYPE_SIZE (type)))
return NULL_TREE;
- HOST_WIDE_INT type_size = tree_to_uhwi (TYPE_SIZE (type));
- switch (type_size)
+ switch (tree_to_uhwi (TYPE_SIZE (type)))
{
case 8:
base_atomic_type = atomicQI_type_node;