Commit 2e89be48 by Richard Sandiford Committed by Richard Sandiford

Fix unguarded uses of tree_to_uhwi

This patch uses tree_fits_uhwi_p to protect a previously unguarded
use of tree_to_uhwi.  Previously we would ICE for variable-sized types.

2017-09-20  Richard Sandiford  <richard.sandiford@linaro.org>
	    Alan Hayward  <alan.hayward@arm.com>
	    David Sherwood  <david.sherwood@arm.com>

gcc/
	* tree.c (find_atomic_core_type): Check tree_fits_uhwi_p before
	calling tree_to_uhwi.

Co-Authored-By: Alan Hayward <alan.hayward@arm.com>
Co-Authored-By: David Sherwood <david.sherwood@arm.com>

From-SVN: r253057
parent 4a77e887
......@@ -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.
......@@ -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;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment