]> 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 <rguenther@suse.de>
Fri, 17 May 2024 10:03:58 +0000 (12:03 +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.

gcc/tree-ssa-alias.cc

index 9f5f69bcfad20a48339605a632fa2e079b2d7f2a..d64d6d02f4a87eb73ab37955ef1663814f66d559 100644 (file)
@@ -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