aboutsummaryrefslogtreecommitdiff
path: root/gcc/flow.c
diff options
context:
space:
mode:
authorSteven Bosscher <steven@gcc.gnu.org>2004-05-05 10:53:00 +0000
committerSteven Bosscher <steven@gcc.gnu.org>2004-05-05 10:53:00 +0000
commitbb8a619e12e06104939fac9969dcd07615ee7260 (patch)
tree03660da4d993a568cb0264f3a174eaea5804d852 /gcc/flow.c
parentaa720a546a2945095bfa7a8cfb2b0f1a4021763a (diff)
downloadgcc-bb8a619e12e06104939fac9969dcd07615ee7260.zip
gcc-bb8a619e12e06104939fac9969dcd07615ee7260.tar.gz
gcc-bb8a619e12e06104939fac9969dcd07615ee7260.tar.bz2
basic-block.h (free_basic_block_vars): Update prototype.
* basic-block.h (free_basic_block_vars): Update prototype. * flow.c (free_basic_block_vars): Remove the keep_head_end_p argument. (life_analysis): Update call. * ifcvt.c (if_convert): Likewise. * passes.c (rest_of_handle_final): Likewise. (rest_of_compilation): Likewise. * sibcall.c (optimize_sibling_and_tail_recursive_call): Likewise. * config/sh/sh.c (sh_output_mi_thunk): Likewise. * emit-rtl.c (next_real_insn): Use INSN_P. (prev_real_insn): Likewise. From-SVN: r81520
Diffstat (limited to 'gcc/flow.c')
-rw-r--r--gcc/flow.c31
1 files changed, 12 insertions, 19 deletions
diff --git a/gcc/flow.c b/gcc/flow.c
index 1cd0823..49729bb 100644
--- a/gcc/flow.c
+++ b/gcc/flow.c
@@ -488,8 +488,6 @@ life_analysis (rtx f, FILE *file, int flags)
if (file)
dump_flow_info (file);
- free_basic_block_vars (1);
-
/* Removing dead insns should have made jumptables really dead. */
delete_dead_jumptables ();
}
@@ -809,28 +807,23 @@ update_life_info_in_dirty_blocks (enum update_life_extent extent, int prop_flags
return retval;
}
-/* Free the variables allocated by find_basic_blocks.
-
- KEEP_HEAD_END_P is nonzero if basic_block_info is not to be freed. */
+/* Free the variables allocated by find_basic_blocks. */
void
-free_basic_block_vars (int keep_head_end_p)
+free_basic_block_vars (void)
{
- if (! keep_head_end_p)
+ if (basic_block_info)
{
- if (basic_block_info)
- {
- clear_edges ();
- VARRAY_FREE (basic_block_info);
- }
- n_basic_blocks = 0;
- last_basic_block = 0;
-
- ENTRY_BLOCK_PTR->aux = NULL;
- ENTRY_BLOCK_PTR->global_live_at_end = NULL;
- EXIT_BLOCK_PTR->aux = NULL;
- EXIT_BLOCK_PTR->global_live_at_start = NULL;
+ clear_edges ();
+ VARRAY_FREE (basic_block_info);
}
+ n_basic_blocks = 0;
+ last_basic_block = 0;
+
+ ENTRY_BLOCK_PTR->aux = NULL;
+ ENTRY_BLOCK_PTR->global_live_at_end = NULL;
+ EXIT_BLOCK_PTR->aux = NULL;
+ EXIT_BLOCK_PTR->global_live_at_start = NULL;
}
/* Delete any insns that copy a register to itself. */