{
int i;
/* Flattened out table, so it's printed in proper order. */
- struct expr **flat_table = (struct expr **) alloca (total_size * sizeof (struct expr *));
- unsigned int *hash_val = (unsigned int *) alloca (total_size * sizeof (unsigned int));
+ struct expr **flat_table;
+ unsigned int *hash_val;
+
+ flat_table
+ = (struct expr **) xcalloc (total_size, sizeof (struct expr *));
+ hash_val = (unsigned int *) xmalloc (total_size * sizeof (unsigned int));
- bzero ((char *) flat_table, total_size * sizeof (struct expr *));
for (i = 0; i < table_size; i++)
{
struct expr *expr;
}
fprintf (file, "\n");
+
+ /* Clean up. */
+ free (flat_table);
+ free (hash_val);
}
/* Record register first/last/block set information for REGNO in INSN.