aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-ssa-loop-im.c
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/tree-ssa-loop-im.c')
-rw-r--r--gcc/tree-ssa-loop-im.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/gcc/tree-ssa-loop-im.c b/gcc/tree-ssa-loop-im.c
index 58da79d..0919931 100644
--- a/gcc/tree-ssa-loop-im.c
+++ b/gcc/tree-ssa-loop-im.c
@@ -1468,9 +1468,10 @@ gather_mem_refs_stmt (struct loop *loop, gimple *stmt)
tree mem_base;
if (aor.max_size_known_p ()
&& aor.offset.is_constant (&offset)
- && aor.offset.is_constant (&size)
- && aor.offset.is_constant (&max_size)
+ && aor.size.is_constant (&size)
+ && aor.max_size.is_constant (&max_size)
&& size == max_size
+ && (size % BITS_PER_UNIT) == 0
&& (mem_base = get_addr_base_and_unit_offset (aor.ref, &mem_off)))
{
hash = iterative_hash_expr (ao_ref_base (&aor), 0);