aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Sandiford <richard.sandiford@arm.com>2022-09-29 11:32:57 +0100
committerRichard Sandiford <richard.sandiford@arm.com>2022-09-29 11:32:57 +0100
commit2f52c8caa312d0b2ae2f36df1b6164a508d5feaf (patch)
treeb11904d7bf747ca7734a72c6f6878d87c0cce23d
parenta31641840af2c40cf36036fa472df34d4a4402c3 (diff)
downloadgcc-2f52c8caa312d0b2ae2f36df1b6164a508d5feaf.zip
gcc-2f52c8caa312d0b2ae2f36df1b6164a508d5feaf.tar.gz
gcc-2f52c8caa312d0b2ae2f36df1b6164a508d5feaf.tar.bz2
data-ref: Fix ranges_maybe_overlap_p test
dr_may_alias_p rightly used poly_int_tree_p to guard a use of ranges_maybe_overlap_p, but used the non-poly extractors. This caused a few failures in the SVE ACLE asm tests. gcc/ * tree-data-ref.cc (dr_may_alias_p): Use to_poly_widest instead of to_widest.
-rw-r--r--gcc/tree-data-ref.cc8
1 files changed, 4 insertions, 4 deletions
diff --git a/gcc/tree-data-ref.cc b/gcc/tree-data-ref.cc
index 91bfb619d..978c3f0 100644
--- a/gcc/tree-data-ref.cc
+++ b/gcc/tree-data-ref.cc
@@ -2979,10 +2979,10 @@ dr_may_alias_p (const struct data_reference *a, const struct data_reference *b,
&& operand_equal_p (DR_OFFSET (a), DR_OFFSET (b))
&& poly_int_tree_p (tree_size_a)
&& poly_int_tree_p (tree_size_b)
- && !ranges_maybe_overlap_p (wi::to_widest (DR_INIT (a)),
- wi::to_widest (tree_size_a),
- wi::to_widest (DR_INIT (b)),
- wi::to_widest (tree_size_b)))
+ && !ranges_maybe_overlap_p (wi::to_poly_widest (DR_INIT (a)),
+ wi::to_poly_widest (tree_size_a),
+ wi::to_poly_widest (DR_INIT (b)),
+ wi::to_poly_widest (tree_size_b)))
{
gcc_assert (integer_zerop (DR_STEP (a))
&& integer_zerop (DR_STEP (b)));