aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/gimplify.c4
2 files changed, 8 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 70fff29..823f39d 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2018-01-12 Richard Sandiford <richard.sandiford@linaro.org>
+
+ * gimplify.c (gimple_add_tmp_var_fn): Allow variables to have a
+ poly_uint64 size, rather than requiring an unsigned HOST_WIDE_INT size.
+ (gimple_add_tmp_var): Likewise.
+
2018-01-12 Martin Liska <mliska@suse.cz>
* gimple.c (gimple_alloc_counts): Use uint64_t instead of int.
diff --git a/gcc/gimplify.c b/gcc/gimplify.c
index 5ad3762..fd0d21e 100644
--- a/gcc/gimplify.c
+++ b/gcc/gimplify.c
@@ -702,7 +702,7 @@ gimple_add_tmp_var_fn (struct function *fn, tree tmp)
/* Later processing assumes that the object size is constant, which might
not be true at this point. Force the use of a constant upper bound in
this case. */
- if (!tree_fits_uhwi_p (DECL_SIZE_UNIT (tmp)))
+ if (!tree_fits_poly_uint64_p (DECL_SIZE_UNIT (tmp)))
force_constant_size (tmp);
DECL_CONTEXT (tmp) = fn->decl;
@@ -721,7 +721,7 @@ gimple_add_tmp_var (tree tmp)
/* Later processing assumes that the object size is constant, which might
not be true at this point. Force the use of a constant upper bound in
this case. */
- if (!tree_fits_uhwi_p (DECL_SIZE_UNIT (tmp)))
+ if (!tree_fits_poly_uint64_p (DECL_SIZE_UNIT (tmp)))
force_constant_size (tmp);
DECL_CONTEXT (tmp) = current_function_decl;