summaryrefslogtreecommitdiff
path: root/gcc/tree-scalar-evolution.h
diff options
context:
space:
mode:
authorJan Sjodin <jan.sjodin@amd.com>2008-05-09 16:17:47 +0000
committerSebastian Pop <spop@gcc.gnu.org>2008-05-09 16:17:47 +0000
commit3f227a8c1cdcb43cb39acc748b8e1e7a3ad0b628 (patch)
treeb769fe842aeb1e7594a9c1c3bfaaf9512a24bd92 /gcc/tree-scalar-evolution.h
parenta3e19be6b06e8ca103708f035ea4ee1bc154cbe1 (diff)
tree-scalar-evolution.c: Document instantiate_scev.
2008-05-09 Jan Sjodin <jan.sjodin@amd.com> Sebastian Pop <sebastian.pop@amd.com> * tree-scalar-evolution.c: Document instantiate_scev. (instantiate_parameters_1): Renamed instantiate_scev_1. Don't use the same loop for instantiation_loop and evolution_loop. (instantiate_scev): New. (instantiate_parameters): Moved... (resolve_mixers): Update call to instantiate_scev_1 to pass the same loop twice. Maintains the semantics for this function. * tree-scalar-evolution.h (instantiate_scev): Declare. (instantiate_parameters): ...here. Now static inline. * tree-data-ref.c (dr_analyze_indices): Call instantiate_scev instead of resolve_mixers. Co-Authored-By: Sebastian Pop <sebastian.pop@amd.com> From-SVN: r135116
Diffstat (limited to 'gcc/tree-scalar-evolution.h')
-rw-r--r--gcc/tree-scalar-evolution.h12
1 files changed, 11 insertions, 1 deletions
diff --git a/gcc/tree-scalar-evolution.h b/gcc/tree-scalar-evolution.h
index c722579d9c9..54e543ceccc 100644
--- a/gcc/tree-scalar-evolution.h
+++ b/gcc/tree-scalar-evolution.h
@@ -30,7 +30,7 @@ extern void scev_reset (void);
extern void scev_reset_except_niters (void);
extern void scev_finalize (void);
extern tree analyze_scalar_evolution (struct loop *, tree);
-extern tree instantiate_parameters (struct loop *, tree);
+extern tree instantiate_scev (struct loop *, struct loop *, tree);
extern tree resolve_mixers (struct loop *, tree);
extern void gather_stats_on_scev_database (void);
extern void scev_analysis (void);
@@ -38,6 +38,16 @@ unsigned int scev_const_prop (void);
extern bool simple_iv (struct loop *, tree, tree, affine_iv *, bool);
+/* Analyze all the parameters of the chrec that were left under a
+ symbolic form. LOOP is the loop in which symbolic names have to
+ be analyzed and instantiated. */
+
+static inline tree
+instantiate_parameters (struct loop *loop, tree chrec)
+{
+ return instantiate_scev (loop, loop, chrec);
+}
+
/* Returns the loop of the polynomial chrec CHREC. */
static inline struct loop *