diff options
author | Roman Gareev <gareevroman@gmail.com> | 2014-08-14 14:53:59 +0000 |
---|---|---|
committer | Roman Gareev <romangareev@gcc.gnu.org> | 2014-08-14 14:53:59 +0000 |
commit | 821fce246e47ef5b4b923f9ed92fa367a9098d26 (patch) | |
tree | f75cfc02449d3ec052602d1bacad4ad96969cdb4 /gcc | |
parent | 2813008eeb7057da284ed901d4c6817880da0eff (diff) | |
download | gcc-821fce246e47ef5b4b923f9ed92fa367a9098d26.zip gcc-821fce246e47ef5b4b923f9ed92fa367a9098d26.tar.gz gcc-821fce246e47ef5b4b923f9ed92fa367a9098d26.tar.bz2 |
graphite-scop-detection.c: Add inclusion of cp-tree.h.
[gcc/]
* graphite-scop-detection.c:
Add inclusion of cp-tree.h.
(graphite_can_represent_scev): Disables the handling of SSA_NAME nodes
in case they are pointers to object types
From-SVN: r213969
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 7 | ||||
-rw-r--r-- | gcc/graphite-scop-detection.c | 9 |
2 files changed, 16 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 4d5841c..0761150 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +2014-08-14 Roman Gareev <gareevroman@gmail.com> + + * graphite-scop-detection.c: + Add inclusion of cp-tree.h. + (graphite_can_represent_scev): Disables the handling of SSA_NAME nodes + in case they are pointers to object types + 2014-08-14 Richard Biener <rguenther@suse.de> * BASE-VER: Change to 5.0.0 diff --git a/gcc/graphite-scop-detection.c b/gcc/graphite-scop-detection.c index 5d1c96e..4158368 100644 --- a/gcc/graphite-scop-detection.c +++ b/gcc/graphite-scop-detection.c @@ -54,6 +54,7 @@ along with GCC; see the file COPYING3. If not see #include "tree-pass.h" #include "sese.h" #include "tree-ssa-propagate.h" +#include "cp/cp-tree.h" #ifdef HAVE_cloog #include "graphite-poly.h" @@ -217,6 +218,14 @@ graphite_can_represent_scev (tree scev) if (chrec_contains_undetermined (scev)) return false; + /* We disable the handling of pointer types, because it’s currently not + supported by Graphite with the ISL AST generator. SSA_NAME nodes are + the only nodes, which are disabled in case they are pointers to object + types, but this can be changed. */ + + if (TYPE_PTROB_P (TREE_TYPE (scev)) && TREE_CODE (scev) == SSA_NAME) + return false; + switch (TREE_CODE (scev)) { case NEGATE_EXPR: |