https://gcc.gnu.org/g:302d22f6ec4706459e12b6ca93e4ac4b5c3590e7

commit r16-191-g302d22f6ec4706459e12b6ca93e4ac4b5c3590e7
Author: Richard Biener <rguent...@suse.de>
Date:   Thu Feb 27 14:51:44 2025 +0100

    tree-optimization/119044 - predcom fails to preserve alias info
    
    Predictive commoning fails to preserve alias info for the refs it
    creates.  The following adds this to see whether it fixes the
    observed regression in 436.cactusADM after r15-7665.
    
            PR tree-optimization/119044
            * tree-predcom.cc (ref_at_iteration): Copy alias info
            from the original ref.

Diff:
---
 gcc/tree-predcom.cc | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/gcc/tree-predcom.cc b/gcc/tree-predcom.cc
index d45aa3857b9f..509d112a0a06 100644
--- a/gcc/tree-predcom.cc
+++ b/gcc/tree-predcom.cc
@@ -234,6 +234,7 @@ along with GCC; see the file COPYING3.  If not see
 #include "tree-affine.h"
 #include "builtins.h"
 #include "opts.h"
+#include "tree-ssa-address.h"
 
 /* The maximum number of iterations between the considered memory
    references.  */
@@ -1824,6 +1825,7 @@ ref_at_iteration (data_reference_p dr, int iter,
   tree type = build_aligned_type (TREE_TYPE (ref),
                                  get_object_alignment (ref));
   ref = build2 (MEM_REF, type, addr, alias_ptr);
+  copy_ref_info (ref, DR_REF (dr));
   if (ref_type)
     ref = build3 (ref_code, ref_type, ref, ref_op1, ref_op2);
   return ref;

Reply via email to