diff options
author | Richard Henderson <rth@gcc.gnu.org> | 1999-09-10 08:50:22 -0700 |
---|---|---|
committer | Richard Henderson <rth@gcc.gnu.org> | 1999-09-10 08:50:22 -0700 |
commit | 69ba6af33edee3f85b3e10b5838d7af24bf8dd9a (patch) | |
tree | 24e119b58e889caff12306c5a6f38931e8993941 | |
parent | a0d8bee96e17f6c63da6f2c33ccbe7392f6a120c (diff) | |
download | gcc-69ba6af33edee3f85b3e10b5838d7af24bf8dd9a.zip gcc-69ba6af33edee3f85b3e10b5838d7af24bf8dd9a.tar.gz gcc-69ba6af33edee3f85b3e10b5838d7af24bf8dd9a.tar.bz2 |
loop.c (basic_induction_var): Typo NULL_RTX -> NULL.
* loop.c (basic_induction_var): Typo NULL_RTX -> NULL.
(strength_reduce): Release the varrays from the no-bivs early exit.
* reload1.c (order_regs_for_reload): Init hard_reg_n_uses before
the loop over the registers.
* tree.c (save_tree_status): Set maybepermanent_firstobj NULL
for a new obstack.
(restore_tree_status): Check that instead when freeing the obstack.
From-SVN: r29270
-rw-r--r-- | gcc/loop.c | 6 | ||||
-rw-r--r-- | gcc/reload1.c | 9 | ||||
-rw-r--r-- | gcc/tree.c | 7 |
3 files changed, 13 insertions, 9 deletions
@@ -3926,7 +3926,7 @@ strength_reduce (scan_start, end, loop_top, insn_count, unroll_loop (loop_end, insn_count, loop_start, end_insert_before, loop_info, 0); - return; + goto egress; } /* Find initial value for each biv by searching backwards from loop_start, @@ -5225,6 +5225,8 @@ strength_reduce (scan_start, end, loop_top, insn_count, if (loop_dump_stream) fprintf (loop_dump_stream, "\n"); + +egress: VARRAY_FREE (reg_iv_type); VARRAY_FREE (reg_iv_info); } @@ -6000,7 +6002,7 @@ basic_induction_var (x, mode, dest_reg, p, inc_val, mult_val, location) rtx insn, set = 0; code = GET_CODE (x); - *location = NULL_RTX; + *location = NULL; switch (code) { case PLUS: diff --git a/gcc/reload1.c b/gcc/reload1.c index 05850de..915a9a0 100644 --- a/gcc/reload1.c +++ b/gcc/reload1.c @@ -4109,6 +4109,12 @@ order_regs_for_reload (chain) COPY_HARD_REG_SET (bad_spill_regs, bad_spill_regs_global); + for (i = 0; i < FIRST_PSEUDO_REGISTER; i++) + { + hard_reg_n_uses[i].regno = i; + hard_reg_n_uses[i].uses = 0; + } + /* Count number of uses of each hard reg by pseudo regs allocated to it and then order them by decreasing use. */ @@ -4116,9 +4122,6 @@ order_regs_for_reload (chain) { int j; - hard_reg_n_uses[i].regno = i; - hard_reg_n_uses[i].uses = 0; - /* Test the various reasons why we can't use a register for spilling in this insn. */ if (fixed_regs[i] @@ -365,8 +365,7 @@ save_tree_status (p) function_maybepermanent_obstack = (struct obstack *) xmalloc (sizeof (struct obstack)); gcc_obstack_init (function_maybepermanent_obstack); - maybepermanent_firstobj - = (char *) obstack_finish (function_maybepermanent_obstack); + maybepermanent_firstobj = NULL; function_obstack = (struct obstack *) xmalloc (sizeof (struct obstack)); gcc_obstack_init (function_obstack); @@ -399,9 +398,9 @@ restore_tree_status (p) obstack_free (&temporary_obstack, temporary_firstobj); obstack_free (&momentary_obstack, momentary_function_firstobj); - obstack_free (function_obstack, 0); + obstack_free (function_obstack, NULL); - if (obstack_empty_p (function_maybepermanent_obstack)) + if (maybepermanent_firstobj == NULL) free (function_maybepermanent_obstack); free (function_obstack); |