diff options
author | Sebastian Pop <sebastian.pop@amd.com> | 2010-09-30 21:18:27 +0000 |
---|---|---|
committer | Sebastian Pop <spop@gcc.gnu.org> | 2010-09-30 21:18:27 +0000 |
commit | 21d9100956cc5e926c5ae38df8f9befd7ee58c7d (patch) | |
tree | 5a67423ba589151bbc206347ce3c647cfe0eab48 /gcc | |
parent | c2bc669e2cb8c669fbbe68f997277e1ca1b29308 (diff) | |
download | gcc-21d9100956cc5e926c5ae38df8f9befd7ee58c7d.zip gcc-21d9100956cc5e926c5ae38df8f9befd7ee58c7d.tar.gz gcc-21d9100956cc5e926c5ae38df8f9befd7ee58c7d.tar.bz2 |
A function is affine when CHREC_RIGHT is invariant.
2010-08-20 Sebastian Pop <sebastian.pop@amd.com>
* tree-chrec.h (evolution_function_is_affine_p): Do not check
whether CHREC_LEFT is invariant. A function is affine when
CHREC_RIGHT is invariant.
From-SVN: r164788
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/ChangeLog.graphite | 6 | ||||
-rw-r--r-- | gcc/tree-chrec.h | 21 |
3 files changed, 16 insertions, 17 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 52e7565..fa87e27 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,11 @@ 2010-09-30 Sebastian Pop <sebastian.pop@amd.com> + * tree-chrec.h (evolution_function_is_affine_p): Do not check + whether CHREC_LEFT is invariant. A function is affine when + CHREC_RIGHT is invariant. + +2010-09-30 Sebastian Pop <sebastian.pop@amd.com> + * graphite-sese-to-poly.c (reduction_phi_p): Remove check for is_gimple_reg. (rewrite_degenerate_phi): Same. diff --git a/gcc/ChangeLog.graphite b/gcc/ChangeLog.graphite index e48ee07..93b999d 100644 --- a/gcc/ChangeLog.graphite +++ b/gcc/ChangeLog.graphite @@ -1,5 +1,11 @@ 2010-08-20 Sebastian Pop <sebastian.pop@amd.com> + * tree-chrec.h (evolution_function_is_affine_p): Do not check + whether CHREC_LEFT is invariant. A function is affine when + CHREC_RIGHT is invariant. + +2010-08-20 Sebastian Pop <sebastian.pop@amd.com> + * graphite-sese-to-poly.c (reduction_phi_p): Remove check for is_gimple_reg. (rewrite_degenerate_phi): Same. diff --git a/gcc/tree-chrec.h b/gcc/tree-chrec.h index eb60ac9..58b14e7 100644 --- a/gcc/tree-chrec.h +++ b/gcc/tree-chrec.h @@ -202,23 +202,10 @@ evolution_function_is_affine_in_loop (const_tree chrec, int loopnum) static inline bool evolution_function_is_affine_p (const_tree chrec) { - if (chrec == NULL_TREE) - return false; - - switch (TREE_CODE (chrec)) - { - case POLYNOMIAL_CHREC: - if (evolution_function_is_invariant_p (CHREC_LEFT (chrec), - CHREC_VARIABLE (chrec)) - && evolution_function_is_invariant_p (CHREC_RIGHT (chrec), - CHREC_VARIABLE (chrec))) - return true; - else - return false; - - default: - return false; - } + return chrec + && TREE_CODE (chrec) == POLYNOMIAL_CHREC + && evolution_function_is_invariant_p (CHREC_RIGHT (chrec), + CHREC_VARIABLE (chrec)); } /* Determines whether EXPR does not contains chrec expressions. */ |