[Bug tree-optimization/49093] [4.6/4.7 Regression] ICE in vect_enhance_data_refs_alignment() with volatile inside peeled loop

irar at il dot ibm.com gcc-bugzilla@gcc.gnu.org
Tue May 31 09:10:00 GMT 2011


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49093

--- Comment #7 from Ira Rosen <irar at il dot ibm.com> 2011-05-31 09:06:04 UTC ---
I am testing this patch then:

Index: tree-vect-data-refs.c
===================================================================
--- tree-vect-data-refs.c       (revision 174467)
+++ tree-vect-data-refs.c       (working copy)
@@ -2584,6 +2584,16 @@ vect_analyze_data_refs (loop_vec_info lo
             return false;
         }

+      if (TYPE_VOLATILE (TREE_TYPE (DR_REF (dr))))
+        {
+          if (vect_print_dump_info (REPORT_UNVECTORIZED_LOCATIONS))
+            {
+              fprintf (vect_dump, "not vectorized: volatile type ");
+              print_gimple_stmt (vect_dump, stmt, 0, TDF_SLIM);
+            }
+          return false;
+        }
+
       base = unshare_expr (DR_BASE_ADDRESS (dr));
       offset = unshare_expr (DR_OFFSET (dr));
       init = unshare_expr (DR_INIT (dr));


Thanks,
Ira



More information about the Gcc-bugs mailing list