From: spop Date: Wed, 15 Jul 2015 21:36:49 +0000 (+0000) Subject: * graphite-sese-to-poly.c (parameter_index_in_region): Only handle X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=952d2beacb9ddb4b3f87aafd00c5603681660c2a;p=thirdparty%2Fgcc.git * 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225848 138bc75d-0d04-0410-961f-82ee72b054a4 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 583309f42da6..52110ee9c9e1 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,12 @@ +2015-07-15 Aditya Kumar + Sebastian Pop + + * 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 * 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 506424799e5b..ffc948fd0b76 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 (stmt); enum tree_code code = gimple_cond_code (cond_stmt);