summaryrefslogtreecommitdiff
path: root/gcc/varray.c
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/varray.c')
-rw-r--r--gcc/varray.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/gcc/varray.c b/gcc/varray.c
index 15a0bbbd0fc..45330397e0e 100644
--- a/gcc/varray.c
+++ b/gcc/varray.c
@@ -126,9 +126,9 @@ varray_init (size_t num_elements, enum varray_data_enum element_kind,
desc->allocated += data_size + VARRAY_HDR_SIZE;
#endif
if (element[element_kind].uses_ggc)
- ptr = ggc_alloc_cleared (VARRAY_HDR_SIZE + data_size);
+ ptr = GGC_CNEWVAR (struct varray_head_tag, VARRAY_HDR_SIZE + data_size);
else
- ptr = xcalloc (VARRAY_HDR_SIZE + data_size, 1);
+ ptr = XCNEWVAR (struct varray_head_tag, VARRAY_HDR_SIZE + data_size);
ptr->num_elements = num_elements;
ptr->elements_used = 0;
@@ -159,9 +159,11 @@ varray_grow (varray_type va, size_t n)
if (element[va->type].uses_ggc)
- va = ggc_realloc (va, VARRAY_HDR_SIZE + data_size);
+ va = GGC_RESIZEVAR (struct varray_head_tag, va,
+ VARRAY_HDR_SIZE + data_size);
else
- va = xrealloc (va, VARRAY_HDR_SIZE + data_size);
+ va = XRESIZEVAR (struct varray_head_tag, va,
+ VARRAY_HDR_SIZE + data_size);
va->num_elements = n;
if (n > old_elements)
memset (&va->data.vdt_c[old_data_size], 0, data_size - old_data_size);