Commit e83f4801 by Steven Bosscher Committed by Steven Bosscher

passes.c (rest_of_handle_null_pointer): Remove.

	* passes.c (rest_of_handle_null_pointer): Remove.
	(rest_of_handle_cse): Don't call rest_of_handle_null_pointer.
	(rest_of_compilation): Likewise.
	* rtl.h (delete_null_pointer_checks): Remove prototype.
	* gcse.c (rd_kill, rd_gen, reaching_defs, rd_out, ae_in, ae_out):
	Remove declarations.
	(get_bitmap_width, alloc_rd_mem, free_rd_mem, handle_rd_kill_set,
	compute_kill_rd, compute_rd, alloc_avail_expr_mem,
	free_avail_expr_mem, compute_ae_gen, expr_killed_p, compute_ae_kill,
	expr_reaches_here_p, computing_insn, def_reaches_here_p,
	can_disregard_other_sets, handle_avail_expr, classic_gcse,
	one_classic_gcse_pass, invalidate_nonnull_info,
	delete_null_pointer_checks_1, delete_null_pointer_checks,
	expr_reached_here_p_work): Remove.
	(gcse_main): Do not perform classic GCSE when optimizing for size.
	(alloc_pre_mem, free_pre_mem): Don't touch ae_in and ae_out, they
	are never used.

From-SVN: r81849
parent 4f9c6b6e
2004-05-14 Steven Bosscher <stevenb@suse.de>
* passes.c (rest_of_handle_null_pointer): Remove.
(rest_of_handle_cse): Don't call rest_of_handle_null_pointer.
(rest_of_compilation): Likewise.
* rtl.h (delete_null_pointer_checks): Remove prototype.
* gcse.c (rd_kill, rd_gen, reaching_defs, rd_out, ae_in, ae_out):
Remove declarations.
(get_bitmap_width, alloc_rd_mem, free_rd_mem, handle_rd_kill_set,
compute_kill_rd, compute_rd, alloc_avail_expr_mem,
free_avail_expr_mem, compute_ae_gen, expr_killed_p, compute_ae_kill,
expr_reaches_here_p, computing_insn, def_reaches_here_p,
can_disregard_other_sets, handle_avail_expr, classic_gcse,
one_classic_gcse_pass, invalidate_nonnull_info,
delete_null_pointer_checks_1, delete_null_pointer_checks,
expr_reached_here_p_work): Remove.
(gcse_main): Do not perform classic GCSE when optimizing for size.
(alloc_pre_mem, free_pre_mem): Don't touch ae_in and ae_out, they
are never used.
2004-05-14 Andrew Pinski <pinskia@physics.uc.edu> 2004-05-14 Andrew Pinski <pinskia@physics.uc.edu>
PR optimization/14466 PR optimization/14466
......
...@@ -1004,20 +1004,6 @@ rest_of_handle_jump_bypass (tree decl, rtx insns) ...@@ -1004,20 +1004,6 @@ rest_of_handle_jump_bypass (tree decl, rtx insns)
#endif #endif
} }
/* Try to identify useless null pointer tests and delete them. */
static void
rest_of_handle_null_pointer (tree decl, rtx insns)
{
open_dump_file (DFI_null, decl);
if (dump_file)
dump_flow_info (dump_file);
if (delete_null_pointer_checks (insns))
cleanup_cfg (CLEANUP_EXPENSIVE | CLEANUP_PRE_LOOP);
close_dump_file (DFI_null, print_rtl_with_bb, insns);
}
/* Try combining insns through substitution. */ /* Try combining insns through substitution. */
static void static void
rest_of_handle_combine (tree decl, rtx insns) rest_of_handle_combine (tree decl, rtx insns)
...@@ -1120,19 +1106,6 @@ rest_of_handle_cse (tree decl, rtx insns) ...@@ -1120,19 +1106,6 @@ rest_of_handle_cse (tree decl, rtx insns)
if (tem || optimize > 1) if (tem || optimize > 1)
cleanup_cfg (CLEANUP_EXPENSIVE | CLEANUP_PRE_LOOP); cleanup_cfg (CLEANUP_EXPENSIVE | CLEANUP_PRE_LOOP);
/* Try to identify useless null pointer tests and delete them. */
if (flag_delete_null_pointer_checks)
{
timevar_push (TV_JUMP);
if (delete_null_pointer_checks (insns))
cleanup_cfg (CLEANUP_EXPENSIVE | CLEANUP_PRE_LOOP);
timevar_pop (TV_JUMP);
}
/* The second pass of jump optimization is likely to have
removed a bunch more instructions. */
renumber_insns (dump_file);
timevar_pop (TV_CSE); timevar_pop (TV_CSE);
close_dump_file (DFI_cse, print_rtl_with_bb, insns); close_dump_file (DFI_cse, print_rtl_with_bb, insns);
...@@ -1547,9 +1520,6 @@ rest_of_compilation (tree decl) ...@@ -1547,9 +1520,6 @@ rest_of_compilation (tree decl)
if (optimize) if (optimize)
cleanup_cfg (CLEANUP_EXPENSIVE | CLEANUP_PRE_LOOP); cleanup_cfg (CLEANUP_EXPENSIVE | CLEANUP_PRE_LOOP);
if (flag_delete_null_pointer_checks)
rest_of_handle_null_pointer (decl, insns);
/* Jump optimization, and the removal of NULL pointer checks, may /* Jump optimization, and the removal of NULL pointer checks, may
have reduced the number of instructions substantially. CSE, and have reduced the number of instructions substantially. CSE, and
future passes, allocate arrays whose dimensions involve the future passes, allocate arrays whose dimensions involve the
......
...@@ -2320,8 +2320,6 @@ extern void cannot_change_mode_set_regs (HARD_REG_SET *, ...@@ -2320,8 +2320,6 @@ extern void cannot_change_mode_set_regs (HARD_REG_SET *,
extern bool invalid_mode_change_p (unsigned int, enum reg_class, extern bool invalid_mode_change_p (unsigned int, enum reg_class,
enum machine_mode); enum machine_mode);
extern int delete_null_pointer_checks (rtx);
/* In regmove.c */ /* In regmove.c */
#ifdef BUFSIZ #ifdef BUFSIZ
extern void regmove_optimize (rtx, int, FILE *); extern void regmove_optimize (rtx, int, FILE *);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment