From patchwork Fri Jul 23 05:48:16 2010 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: [1/3] Do not instantiate default definitions in instantiate_scev_name. Date: Thu, 22 Jul 2010 19:48:16 -0000 From: Sebastian Pop X-Patchwork-Id: 59733 Message-Id: <1279864098-1408-2-git-send-email-sebpop@gmail.com> To: gcc-patches@gcc.gnu.org Cc: gcc-graphite@googlegroups.com, Sebastian Pop 2010-07-22 Sebastian Pop * tree-scalar-evolution.c (instantiate_scev_name): Do not instantiate default definitions. --- gcc/ChangeLog.graphite | 5 +++++ gcc/tree-scalar-evolution.c | 13 ++++++++----- 2 files changed, 13 insertions(+), 5 deletions(-) diff --git a/gcc/ChangeLog.graphite b/gcc/ChangeLog.graphite index 38708d5..e656c32 100644 --- a/gcc/ChangeLog.graphite +++ b/gcc/ChangeLog.graphite @@ -1,3 +1,8 @@ +2010-07-22 Sebastian Pop + + * tree-scalar-evolution.c (instantiate_scev_name): Do not + instantiate default definitions. + 2010-07-20 Vladimir Kargov * graphite-scop-detection.c (is_valid_stmt_p): New. diff --git a/gcc/tree-scalar-evolution.c b/gcc/tree-scalar-evolution.c index 91516f1..5b6ce7b 100644 --- a/gcc/tree-scalar-evolution.c +++ b/gcc/tree-scalar-evolution.c @@ -2161,11 +2161,15 @@ instantiate_scev_name (basic_block instantiate_below, result again. */ res = analyze_scalar_evolution (def_loop, chrec); - /* Don't instantiate loop-closed-ssa phi nodes. */ + /* Don't instantiate default definitions. */ if (TREE_CODE (res) == SSA_NAME - && (loop_containing_stmt (SSA_NAME_DEF_STMT (res)) == NULL - || (loop_depth (loop_containing_stmt (SSA_NAME_DEF_STMT (res))) - > loop_depth (def_loop)))) + && SSA_NAME_IS_DEFAULT_DEF (res)) + ; + + /* Don't instantiate loop-closed-ssa phi nodes. */ + else if (TREE_CODE (res) == SSA_NAME + && loop_depth (loop_containing_stmt (SSA_NAME_DEF_STMT (res))) + > loop_depth (def_loop)) { if (res == chrec) res = loop_closed_phi_def (chrec); @@ -2195,7 +2199,6 @@ instantiate_scev_name (basic_block instantiate_below, /* Store the correct value to the cache. */ set_instantiated_value (cache, instantiate_below, chrec, res); return res; - } /* Analyze all the parameters of the chrec, between INSTANTIATE_BELOW