summaryrefslogtreecommitdiff
path: root/gcc/postreload-gcse.c
diff options
context:
space:
mode:
authornathan <nathan@138bc75d-0d04-0410-961f-82ee72b054a4>2004-09-10 11:02:26 +0000
committernathan <nathan@138bc75d-0d04-0410-961f-82ee72b054a4>2004-09-10 11:02:26 +0000
commit2045cdd44d272c6b5330210e6a60aa16f769b850 (patch)
treee64840975a1fb341da6f0ef0ef7e39e120efacf6 /gcc/postreload-gcse.c
parentba03a9086d20fab11badea65d734205119b4a762 (diff)
downloadgcc-2045cdd44d272c6b5330210e6a60aa16f769b850.tar.gz
Revert 2004-09-09 Giovanni Bajo <giovannibajo@gcc.gnu.org>
* lambda-mat.c (lambda_matrix_inverse_hard): Use gcc_assert and gcc_unreachable instead of abort. * lambda.h (lambda_vector_min_nz): Likewise. * langhooks.c lhd_set_decl_assembler_name, lhd_can_use_bit_fields_p, lhd_incomplete_type_error, lhd_expand_expr, lhd_types_compatible_p, lhd_gimplify_expr): Likewise. * lcm.c (optimize_mode_switching): Likewise. * local-alloc.c (update_equiv_regs, block_alloc, find_free_reg): Likewise. * loop-doloop.c (doloop_modify): Likewise. * loop-invariant.c (record_use): Likewise. * loop-iv.c (get_biv_step_1, get_biv_step, iv_analyze, get_iv_value, canon_condition, simplify_using_condition, simplify_using_initial_values, shorten_into_mode, canonicalize_iv_subregs, iv_number_of_iterations): Likewise. * loop-unroll.c (unroll_and_peel_loops, peel_loop_completely, unroll_loop_constant_iterations, unroll_loop_runtime_iterations, peel_loop_simple, unroll_loop_stupid): Likewise. * loop-unswitch.c (compare_and_jump_seq, unswitch_single_loop, unswitch_loop): Likewise. * loop.c (gen_prefetch, loop_optimize, rtx_equal_for_loop_p, move_movables, replace_call_address, find_and_verify_loops, rtx_equal_for_prefetch_p, record_giv, general_induction_var, simplify_giv_expr, check_ext_dependent_givs, try_copy_prop, loop_giv_dump): Likewise. * loop.h (INSN_LUID): Likewise. * modulo-sched.c (normalize_sched_times, generate_prolog_epilog, sms_schedule, check_nodes_order): Likewise. * optabs.c (gen_conditional, add_equal_note, expand_simple_binop, expand_twoval_unop, expand_twoval_binop, expand_twoval_binop_libfunc, expand_simple_unop, emit_no_conflict_block, prepare_cmp_insn, emit_cmp_and_jump_insn_1, emit_cmp_and_jump_insns, prepare_float_lib_cmp, gen_add2_insn, have_add2_insn, gen_sub2_insn, have_sub2_insn, expand_float, expand_fix, debug_optab_libfuncs): Likewise. * opts.c (common_handle_option): Likewise. * params.c (set_param_value): Likewise. * passes.c (open_dump_file, rest_of_handle_final): Likewise. * postreload-gcse.c (expr_equiv_p, oprs_unchanged_p,hash_scan_set, reg_set_between_after_reload_p, reg_used_between_after_reload_p, get_avail_load_store_reg, eliminate_partially_redundant_load): Likewise. * postreload.c (reload_cse_simplify_set, reload_combine_note_use): Likewise. * predict.c (tree_predicted_by_p, expected_value_to_br_prob, propagate_freq, expensive_function_p): Likewise. * pretty-print.c (pp_base_format_text) * profile.c (instrument_edges, instrument_values, compute_branch_probabilities, branch_prob, union_groups, end_branch_prob, tree_register_profile_hooks): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@87290 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/postreload-gcse.c')
-rw-r--r--gcc/postreload-gcse.c33
1 files changed, 22 insertions, 11 deletions
diff --git a/gcc/postreload-gcse.c b/gcc/postreload-gcse.c
index 7c0be2f7b74..93d81c48241 100644
--- a/gcc/postreload-gcse.c
+++ b/gcc/postreload-gcse.c
@@ -305,7 +305,9 @@ expr_equiv_p (const void *exp1p, const void *exp2p)
struct expr *exp1 = (struct expr *) exp1p;
struct expr *exp2 = (struct expr *) exp2p;
int equiv_p = exp_equiv_p (exp1->expr, exp2->expr, 0, true);
- gcc_assert (!equiv_p || exp1->hash == exp2->hash);
+ if (equiv_p
+ && exp1->hash != exp2->hash)
+ abort ();
return equiv_p;
}
@@ -483,8 +485,11 @@ oprs_unchanged_p (rtx x, rtx insn, bool after_insn)
switch (code)
{
case REG:
+#ifdef ENABLE_CHECKING
/* We are called after register allocation. */
- gcc_assert (REGNO (x) < FIRST_PSEUDO_REGISTER);
+ if (REGNO (x) >= FIRST_PSEUDO_REGISTER)
+ abort ();
+#endif
if (after_insn)
/* If the last CUID setting the insn is less than the CUID of
INSN, then reg X is not changed in or after INSN. */
@@ -780,7 +785,8 @@ hash_scan_set (rtx insn)
#ifdef ENABLE_CHEKCING
/* We shouldn't have any EH_REGION notes post reload. */
- gcc_assert (!find_reg_note (insn, REG_EH_REGION, NULL_RTX));
+ if (find_reg_note (insn, REG_EH_REGION, NULL_RTX))
+ abort ();
#endif
if (REG_P (dest))
@@ -928,9 +934,11 @@ reg_set_between_after_reload_p (rtx reg, rtx from_insn, rtx to_insn)
rtx insn;
int regno;
+#ifdef ENABLE_CHECKING
/* We are called after register allocation. */
- gcc_assert (REG_P (reg));
- gcc_assert (REGNO (reg) < FIRST_PSEUDO_REGISTER);
+ if (!REG_P (reg) || REGNO (reg) >= FIRST_PSEUDO_REGISTER)
+ abort ();
+#endif
if (from_insn == to_insn)
return NULL_RTX;
@@ -965,9 +973,11 @@ reg_used_between_after_reload_p (rtx reg, rtx from_insn, rtx to_insn)
rtx insn;
int regno;
+#ifdef ENABLE_CHECKING
/* We are called after register allocation. */
- gcc_assert (REG_P (reg));
- gcc_assert (REGNO (reg) < FIRST_PSEUDO_REGISTER);
+ if (!REG_P (reg) || REGNO (reg) >= FIRST_PSEUDO_REGISTER)
+ abort ();
+#endif
if (from_insn == to_insn)
return NULL_RTX;
@@ -1017,7 +1027,7 @@ get_avail_load_store_reg (rtx insn)
return SET_DEST(PATTERN(insn));
if (REG_P (SET_SRC (PATTERN (insn)))) /* A store. */
return SET_SRC (PATTERN (insn));
- gcc_unreachable ();
+ abort ();
}
/* Return nonzero if the predecessors of BB are "well behaved". */
@@ -1099,8 +1109,8 @@ eliminate_partially_redundant_load (basic_block bb, rtx insn,
{
/* Check if the loaded register is not used. */
avail_insn = a_occr->insn;
- avail_reg = get_avail_load_store_reg (avail_insn);
- gcc_assert (avail_reg);
+ if (! (avail_reg = get_avail_load_store_reg (avail_insn)))
+ abort ();
/* Make sure we can generate a move from register avail_reg to
dest. */
extract_insn (gen_move_insn (copy_rtx (dest),
@@ -1171,7 +1181,8 @@ eliminate_partially_redundant_load (basic_block bb, rtx insn,
/* Set avail_reg to be the register having the value of the
memory. */
avail_reg = get_avail_load_store_reg (avail_insn);
- gcc_assert (avail_reg);
+ if (! avail_reg)
+ abort ();
insert_insn_on_edge (gen_move_insn (copy_rtx (dest),
copy_rtx (avail_reg)),