aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-ssa-operands.c
diff options
context:
space:
mode:
authorRichard Guenther <rguenther@suse.de>2007-10-30 13:22:36 +0000
committerRichard Biener <rguenth@gcc.gnu.org>2007-10-30 13:22:36 +0000
commite0734f62397d39b9092795fb02c473008bcc929f (patch)
treec4e04f419dce73a4235be56fbfc7adda40554ed6 /gcc/tree-ssa-operands.c
parentebb82e27513e78bac987eda8a6cca289be3ff43d (diff)
downloadgcc-e0734f62397d39b9092795fb02c473008bcc929f.zip
gcc-e0734f62397d39b9092795fb02c473008bcc929f.tar.gz
gcc-e0734f62397d39b9092795fb02c473008bcc929f.tar.bz2
tree-ssa-operands.c (add_vars_for_offset): Fix exit test of loop adding SFTs as virtual operands.
2007-10-30 Richard Guenther <rguenther@suse.de> * tree-ssa-operands.c (add_vars_for_offset): Fix exit test of loop adding SFTs as virtual operands. * gcc.c-torture/execute/20071030-1.c: New testcase copied from gcc.target/i386/loop-3.c. From-SVN: r129770
Diffstat (limited to 'gcc/tree-ssa-operands.c')
-rw-r--r--gcc/tree-ssa-operands.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/tree-ssa-operands.c b/gcc/tree-ssa-operands.c
index 8772313..2f95705 100644
--- a/gcc/tree-ssa-operands.c
+++ b/gcc/tree-ssa-operands.c
@@ -1409,7 +1409,8 @@ add_vars_for_offset (tree var,
for (; VEC_iterate (tree, sv, i, subvar); ++i)
{
- if (size <= SFT_OFFSET (subvar) - offset)
+ if (SFT_OFFSET (subvar) > offset
+ && size <= SFT_OFFSET (subvar) - offset)
break;
if (is_def)