diff options
author | rakdver <rakdver@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-03-02 20:21:14 +0000 |
---|---|---|
committer | rakdver <rakdver@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-03-02 20:21:14 +0000 |
commit | 9c1ccc0f89cb2abebfb3b43ec4bb12b3b54a2b00 (patch) | |
tree | 03d6330174d251bdfd1929424a8e069dabc26ca6 /gcc/cfgloop.h | |
parent | 0a127d2cabe2fe59ec52f41f8bced9442397f3d1 (diff) | |
download | gcc-9c1ccc0f89cb2abebfb3b43ec4bb12b3b54a2b00.tar.gz |
* cfgloop.h (struct loop_desc): Removed.
(struct loop): Fields simple, desc and has_desc removed.
(simple_loop_p, count_loop_iterations): Declaration removed.
* cfgloopanal.c (struct unmark_altered_insn_data): Removed.
(unmark_altered, blocks_invariant_registers, unmark_altered_insn
blocks_single_set_registers, invariant_rtx_wrto_regs_p_helper,
invariant_rtx_wrto_regs_p, test_for_iteration, constant_iterations,
simple_loop_exit_p, variable_initial_value, variable_initial_values,
simple_condition_p, simple_increment, count_strange_loop_iterations,
inverse, fits_in_mode_p, simple_loop_p, count_loop_iterations):
Removed.
* loop-iv.c (check_simple_exit, find_simple_exit): Update comments.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@78777 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/cfgloop.h')
-rw-r--r-- | gcc/cfgloop.h | 34 |
1 files changed, 2 insertions, 32 deletions
diff --git a/gcc/cfgloop.h b/gcc/cfgloop.h index 4226592a750..8a24c15f271 100644 --- a/gcc/cfgloop.h +++ b/gcc/cfgloop.h @@ -36,29 +36,6 @@ struct lpt_decision unsigned times; }; -/* Description of loop for simple loop unrolling. */ -struct loop_desc -{ - int postincr; /* 1 if increment/decrement is done after loop exit condition. */ - rtx stride; /* Value added to VAR in each iteration. */ - rtx var; /* Loop control variable. */ - enum machine_mode inner_mode; - /* The mode from that it is extended. */ - enum rtx_code extend; /* With this extend. */ - rtx var_alts; /* List of definitions of its initial value. */ - rtx lim; /* Expression var is compared with. */ - rtx lim_alts; /* List of definitions of its initial value. */ - bool const_iter; /* True if it iterates constant number of times. */ - unsigned HOST_WIDE_INT niter; - /* Number of iterations if it is constant. */ - bool may_be_zero; /* If we cannot determine that the first iteration will pass. */ - enum rtx_code cond; /* Exit condition. */ - int neg; /* Set to 1 if loop ends when condition is satisfied. */ - edge out_edge; /* The exit edge. */ - edge in_edge; /* And the other one. */ - int n_branches; /* Number of branches inside the loop. */ -}; - /* Structure to hold information for each natural loop. */ struct loop { @@ -77,11 +54,6 @@ struct loop /* For loop unrolling/peeling decision. */ struct lpt_decision lpt_decision; - /* Simple loop description. */ - int simple; - struct loop_desc desc; - int has_desc; - /* Number of loop insns. */ unsigned ninsns; @@ -305,8 +277,6 @@ extern void force_single_succ_latches (struct loops *); extern void verify_loop_structure (struct loops *); /* Loop analysis. */ -extern bool simple_loop_p (struct loop *, struct loop_desc *); -extern rtx count_loop_iterations (struct loop_desc *, rtx, rtx); extern bool just_once_each_iteration_p (struct loop *, basic_block); extern unsigned expected_loop_iterations (const struct loop *); @@ -370,8 +340,8 @@ struct rtx_iv unsigned first_special : 1; }; -/* This should replace struct loop_desc. We keep this just so that we are - able to compare the results. */ +/* The description of an exit from the loop and of the number of iterations + till we take the exit. */ struct niter_desc { |