aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Biener <rguenther@suse.de>2024-05-17 11:02:29 +0200
committerRichard Biener <rguenther@suse.de>2024-05-17 12:03:58 +0200
commita5b3721c06646bf5b9b50a22964e8e2bd4d03f5f (patch)
tree638cae94ec5f4e20e539c89f583dc51f9134af15
parent6a0a46c57999d1f805f6c604a8868ae588a104f2 (diff)
downloadgcc-a5b3721c06646bf5b9b50a22964e8e2bd4d03f5f.zip
gcc-a5b3721c06646bf5b9b50a22964e8e2bd4d03f5f.tar.gz
gcc-a5b3721c06646bf5b9b50a22964e8e2bd4d03f5f.tar.bz2
middle-end/115110 - Fix view_converted_memref_p
view_converted_memref_p was checking the reference type against the pointer type of the offset operand rather than its pointed-to type which leads to all refs being subject to view-convert treatment in get_alias_set causing numerous testsuite fails but with its new uses from r15-512-g9b7cad5884f21c is also a wrong-code issue. PR middle-end/115110 * tree-ssa-alias.cc (view_converted_memref_p): Fix.
-rw-r--r--gcc/tree-ssa-alias.cc5
1 files changed, 3 insertions, 2 deletions
diff --git a/gcc/tree-ssa-alias.cc b/gcc/tree-ssa-alias.cc
index 9f5f69b..d64d6d0 100644
--- a/gcc/tree-ssa-alias.cc
+++ b/gcc/tree-ssa-alias.cc
@@ -2077,8 +2077,9 @@ view_converted_memref_p (tree base)
{
if (TREE_CODE (base) != MEM_REF && TREE_CODE (base) != TARGET_MEM_REF)
return false;
- return same_type_for_tbaa (TREE_TYPE (base),
- TREE_TYPE (TREE_OPERAND (base, 1))) != 1;
+ return (same_type_for_tbaa (TREE_TYPE (base),
+ TREE_TYPE (TREE_TYPE (TREE_OPERAND (base, 1))))
+ != 1);
}
/* Return true if an indirect reference based on *PTR1 constrained