summaryrefslogtreecommitdiff
path: root/gcc/reload1.c
diff options
context:
space:
mode:
authormmitchel <mmitchel@138bc75d-0d04-0410-961f-82ee72b054a4>1999-11-06 19:09:26 +0000
committermmitchel <mmitchel@138bc75d-0d04-0410-961f-82ee72b054a4>1999-11-06 19:09:26 +0000
commitbfcb79b125ce8203ce800744fe9fecea1c235547 (patch)
tree87cace2499c0c4f87ac63051263d863a58b39a9e /gcc/reload1.c
parentcff53614c5fcdc00d829b353fba0e812c7adda22 (diff)
downloadgcc-bfcb79b125ce8203ce800744fe9fecea1c235547.tar.gz
* local-alloc.c (local_alloc): Use xmalloc/xcalloc, not alloca.
(update_equiv_regs): Likewise. (block_alloc): Likewise. * reg-stack.c (reg_to_stack): Likewise. (convert_regs_2): Likewise. * reload1.c (reload_as_needed): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30434 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/reload1.c')
-rw-r--r--gcc/reload1.c13
1 files changed, 6 insertions, 7 deletions
diff --git a/gcc/reload1.c b/gcc/reload1.c
index 2f50fb33c4d..3526ae9f134 100644
--- a/gcc/reload1.c
+++ b/gcc/reload1.c
@@ -4309,9 +4309,8 @@ reload_as_needed (live_known)
bzero ((char *) spill_reg_rtx, sizeof spill_reg_rtx);
bzero ((char *) spill_reg_store, sizeof spill_reg_store);
- reg_last_reload_reg = (rtx *) alloca (max_regno * sizeof (rtx));
- bzero ((char *) reg_last_reload_reg, max_regno * sizeof (rtx));
- reg_has_output_reload = (char *) alloca (max_regno);
+ reg_last_reload_reg = (rtx *) xcalloc (max_regno, sizeof (rtx));
+ reg_has_output_reload = (char *) xmalloc (max_regno);
CLEAR_HARD_REG_SET (reg_reloaded_valid);
set_initial_elim_offsets ();
@@ -4573,11 +4572,11 @@ reload_as_needed (live_known)
&& INSN_CLOBBERS_REGNO_P (insn, i))
CLEAR_HARD_REG_BIT (reg_reloaded_valid, i);
#endif
-
-#ifdef USE_C_ALLOCA
- alloca (0);
-#endif
}
+
+ /* Clean up. */
+ free (reg_last_reload_reg);
+ free (reg_has_output_reload);
}
/* Discard all record of any value reloaded from X,