aboutsummaryrefslogtreecommitdiff
path: root/gcc/cfgloop.h
diff options
context:
space:
mode:
authorSebastian Pop <pop@cri.ensmp.fr>2004-07-12 19:31:16 +0000
committerSebastian Pop <pop@cri.ensmp.fr>2004-07-12 19:31:16 +0000
commit5761d2d18391655b7d5f9d8a14fa3ec259d84b47 (patch)
tree3c802a37a69533f1e5eac9a5138ce105450e9411 /gcc/cfgloop.h
parent57140c94f5a401ae14a9d2783fa9107d046b9b99 (diff)
* cfgloop.h (struct loop): Add nb_iterations field.
(current_loops): Declare. * tree-chrec.c (chrec_not_analyzed_yet, chrec_dont_know, chrec_known, count_ev_in_wider_type, chrec_contains_symbols_defined_in_loop): Remove the temporary hooks. * tree-flow-inline.h (loop_containing_stmt): New function. * tree-scalar-evolution.c: Add implementation. * tree-scalar-evolution.h: Add declarations. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@84573 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/cfgloop.h')
-rw-r--r--gcc/cfgloop.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/gcc/cfgloop.h b/gcc/cfgloop.h
index 01b8d64e5f4..8ccffd3e84b 100644
--- a/gcc/cfgloop.h
+++ b/gcc/cfgloop.h
@@ -176,6 +176,13 @@ struct loop
loops nested inside it. */
int exit_count;
+ /* The probable number of times the loop is executed at runtime.
+ This is an INTEGER_CST or an expression containing symbolic
+ names. Don't access this field directly:
+ number_of_iterations_in_loop computes and caches the computed
+ information in this field. */
+ tree nb_iterations;
+
/* Upper bound on number of iterations of a loop. */
struct nb_iter_bound *bounds;
};
@@ -227,6 +234,10 @@ struct loops
int state;
};
+/* The loop tree currently optimized. */
+
+extern struct loops *current_loops;
+
/* Flags for loop discovery. */
#define LOOP_TREE 1 /* Build loop hierarchy tree. */