]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
middle-end/115110 - Fix view_converted_memref_p
authorRichard Biener <rguenther@suse.de>
Fri, 17 May 2024 09:02:29 +0000 (11:02 +0200)
committerRichard Biener <rguenth@gcc.gnu.org>
Tue, 24 Jun 2025 08:23:50 +0000 (10:23 +0200)
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.

(cherry picked from commit a5b3721c06646bf5b9b50a22964e8e2bd4d03f5f)

gcc/tree-ssa-alias.cc

index 1b404e055f8ca3f02a6c72e9592dd7a3a57e7d6f..8fe4e9d9112a4ec180655694f62719695b70a259 100644 (file)
@@ -2041,8 +2041,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