aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAditya Kumar <aditya.k7@samsung.com>2015-07-15 21:36:49 +0000
committerSebastian Pop <spop@gcc.gnu.org>2015-07-15 21:36:49 +0000
commit4bc4dd11ec8c7be528abcb75a1af715d715b4835 (patch)
treeb659b60a644a8401e670412ce8fa46b22a56662a
parent48d859bb420e2f7ac0bf7966bd43c15330c64dbc (diff)
downloadgcc-4bc4dd11ec8c7be528abcb75a1af715d715b4835.zip
gcc-4bc4dd11ec8c7be528abcb75a1af715d715b4835.tar.gz
gcc-4bc4dd11ec8c7be528abcb75a1af715d715b4835.tar.bz2
graphite-sese-to-poly.c (parameter_index_in_region): Only handle INTEGER_TYPE parameters.
* graphite-sese-to-poly.c (parameter_index_in_region): Only handle INTEGER_TYPE parameters. (scan_tree_for_params): Handle REAL_CST, COMPLEX_CST, and VECTOR_CST in scan_tree_for_params. (add_conditions_to_domain): Only constrain on INTEGER_TYPE. Co-Authored-By: Sebastian Pop <s.pop@samsung.com> From-SVN: r225848
-rw-r--r--gcc/ChangeLog9
-rw-r--r--gcc/graphite-sese-to-poly.c11
2 files changed, 20 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 583309f..52110ee 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,12 @@
+2015-07-15 Aditya Kumar <aditya.k7@samsung.com>
+ Sebastian Pop <s.pop@samsung.com>
+
+ * graphite-sese-to-poly.c (parameter_index_in_region): Only handle
+ INTEGER_TYPE parameters.
+ (scan_tree_for_params): Handle REAL_CST, COMPLEX_CST, and
+ VECTOR_CST in scan_tree_for_params.
+ (add_conditions_to_domain): Only constrain on INTEGER_TYPE.
+
2015-07-15 Andrew MacLeod <amacleod@redhat.com>
* gimple-pretty-print.h: Don't include pretty-print.h.
diff --git a/gcc/graphite-sese-to-poly.c b/gcc/graphite-sese-to-poly.c
index 5064247..ffc948f 100644
--- a/gcc/graphite-sese-to-poly.c
+++ b/gcc/graphite-sese-to-poly.c
@@ -762,6 +762,10 @@ parameter_index_in_region (tree name, sese region)
gcc_assert (TREE_CODE (name) == SSA_NAME);
+ /* Cannot constrain on anything else than INTEGER_TYPE parameters. */
+ if (TREE_CODE (TREE_TYPE (name)) != INTEGER_TYPE)
+ return -1;
+
i = parameter_index_in_region_1 (name, region);
if (i != -1)
return i;
@@ -887,6 +891,9 @@ scan_tree_for_params (sese s, tree e)
case INTEGER_CST:
case ADDR_EXPR:
+ case REAL_CST:
+ case COMPLEX_CST:
+ case VECTOR_CST:
break;
default:
@@ -1166,6 +1173,10 @@ add_conditions_to_domain (poly_bb_p pbb)
{
case GIMPLE_COND:
{
+ /* Don't constrain on anything else than INTEGER_TYPE. */
+ if (TREE_CODE (TREE_TYPE (gimple_cond_lhs (stmt))) != INTEGER_TYPE)
+ break;
+
gcond *cond_stmt = as_a <gcond *> (stmt);
enum tree_code code = gimple_cond_code (cond_stmt);