diff options
author | Tom de Vries <tom@codesourcery.com> | 2011-05-22 18:57:19 +0000 |
---|---|---|
committer | Tom de Vries <vries@gcc.gnu.org> | 2011-05-22 18:57:19 +0000 |
commit | 50ad7db2a849954f37b412fbb466fcda2a655a38 (patch) | |
tree | 7bf4bc202d3ad1e328e21d206aede41c47446d89 /gcc | |
parent | ef230b38360a3565c7cf88023fc109e3e76e119b (diff) | |
download | gcc-50ad7db2a849954f37b412fbb466fcda2a655a38.zip gcc-50ad7db2a849954f37b412fbb466fcda2a655a38.tar.gz gcc-50ad7db2a849954f37b412fbb466fcda2a655a38.tar.bz2 |
re PR middle-end/45098 (Missed induction variable optimization)
2011-05-22 Tom de Vries <tom@codesourcery.com>
PR target/45098
* tree-ssa-loop-ivopts.c (force_expr_to_var_cost): Fix const test
for call to get_shiftadd_cost.
From-SVN: r174033
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/tree-ssa-loop-ivopts.c | 2 |
2 files changed, 7 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 81e2d20..a022b62 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2011-05-22 Tom de Vries <tom@codesourcery.com> + + PR target/45098 + * tree-ssa-loop-ivopts.c (force_expr_to_var_cost): Fixed const test + for call to get_shiftadd_cost. + 2011-05-22 Uros Bizjak <ubizjak@gmail.com> PR target/49104 diff --git a/gcc/tree-ssa-loop-ivopts.c b/gcc/tree-ssa-loop-ivopts.c index 69df4b6..10fd7dc 100644 --- a/gcc/tree-ssa-loop-ivopts.c +++ b/gcc/tree-ssa-loop-ivopts.c @@ -3685,7 +3685,7 @@ force_expr_to_var_cost (tree expr, bool speed) mult = op0; if (mult != NULL_TREE - && TREE_CODE (TREE_OPERAND (mult, 1)) == INTEGER_CST + && cst_and_fits_in_hwi (TREE_OPERAND (mult, 1)) && get_shiftadd_cost (expr, mode, cost0, cost1, mult, speed, &sa_cost)) return sa_cost; |