[Bug tree-optimization/40542] [4.3/4.4/4.5 Regression] vectorizes access to volatile array

2009-06-30 Thread irar at gcc dot gnu dot org


--- Comment #4 from irar at gcc dot gnu dot org  2009-06-30 11:33 ---
Subject: Bug 40542

Author: irar
Date: Tue Jun 30 11:33:27 2009
New Revision: 149090

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=149090
Log:

PR tree-optimization/40542
* tree-vect-stmts.c (vect_analyze_stmt): Don't vectorize volatile 
types.


Added:
trunk/gcc/testsuite/gcc.dg/vect/pr40542.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/testsuite/ChangeLog
trunk/gcc/tree-vect-stmts.c


-- 


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



[Bug tree-optimization/40542] [4.3/4.4/4.5 Regression] vectorizes access to volatile array

2009-06-30 Thread irar at gcc dot gnu dot org


--- Comment #5 from irar at gcc dot gnu dot org  2009-06-30 11:49 ---
Subject: Bug 40542

Author: irar
Date: Tue Jun 30 11:48:51 2009
New Revision: 149091

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=149091
Log:

PR tree-optimization/40542
* tree-vect-analyze.c (vect_determine_vectorization_factor): Don't 
vectorize volatile types.


Added:
branches/gcc-4_3-branch/gcc/testsuite/gcc.dg/vect/pr40542.c
Modified:
branches/gcc-4_3-branch/gcc/ChangeLog
branches/gcc-4_3-branch/gcc/testsuite/ChangeLog
branches/gcc-4_3-branch/gcc/tree-vect-analyze.c


-- 


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



[Bug tree-optimization/40542] [4.3/4.4/4.5 Regression] vectorizes access to volatile array

2009-06-30 Thread irar at gcc dot gnu dot org


--- Comment #6 from irar at gcc dot gnu dot org  2009-06-30 11:56 ---
Subject: Bug 40542

Author: irar
Date: Tue Jun 30 11:56:21 2009
New Revision: 149092

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=149092
Log:

PR tree-optimization/40542
* tree-vect-analyze.c (vect_determine_vectorization_factor): Don't 
vectorize volatile types.


Added:
branches/gcc-4_4-branch/gcc/testsuite/gcc.dg/vect/pr40542.c
Modified:
branches/gcc-4_4-branch/gcc/ChangeLog
branches/gcc-4_4-branch/gcc/testsuite/ChangeLog
branches/gcc-4_4-branch/gcc/tree-vect-analyze.c


-- 


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



[Bug tree-optimization/40542] [4.3/4.4/4.5 Regression] vectorizes access to volatile array

2009-06-30 Thread irar at il dot ibm dot com


--- Comment #7 from irar at il dot ibm dot com  2009-06-30 12:02 ---
Fixed.


-- 

irar at il dot ibm dot com changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||FIXED


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



[Bug tree-optimization/40542] [4.3/4.4/4.5 Regression] vectorizes access to volatile array

2009-06-28 Thread irar at il dot ibm dot com


--- Comment #2 from irar at il dot ibm dot com  2009-06-28 10:57 ---
So, the solution is to prevent vectorization of volatile types, like in the
patch below?

Index: tree-vect-data-refs.c
===
--- tree-vect-data-refs.c   (revision 149023)
+++ tree-vect-data-refs.c   (working copy)
@@ -1896,6 +1896,14 @@ 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: memory access of volatile 
+type);
+  return false;
+}
+
   stmt = DR_STMT (dr);
   stmt_info = vinfo_for_stmt (stmt);


-- 


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



[Bug tree-optimization/40542] [4.3/4.4/4.5 Regression] vectorizes access to volatile array

2009-06-28 Thread rguenth at gcc dot gnu dot org


--- Comment #3 from rguenth at gcc dot gnu dot org  2009-06-28 14:43 ---
More like

  if (gimple_has_volatile_ops (stmt))
...


-- 


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



[Bug tree-optimization/40542] [4.3/4.4/4.5 Regression] vectorizes access to volatile array

2009-06-24 Thread rguenth at gcc dot gnu dot org


--- Comment #1 from rguenth at gcc dot gnu dot org  2009-06-24 14:02 ---
Confirmed.

void
volarr_cpy(char *d, volatile char *s)
{
int i;
for ( i=0; i16; i++ )
d[i]=s[i];
}


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
  Component|c   |tree-optimization
 Ever Confirmed|0   |1
  GCC build triplet|x86_64-unkown-linux |
   GCC host triplet|x86_64-unknown-linux|
 GCC target triplet|x86_64-unknown-linux, i386- |
   |unknown-linux, i386-unknown-|
   |rtems, po   |
   Keywords||wrong-code
   Last reconfirmed|-00-00 00:00:00 |2009-06-24 14:02:05
   date||
Summary|gcc-4.3.3 vectorizes access |[4.3/4.4/4.5 Regression]
   |to volatile array   |vectorizes access to
   ||volatile array
   Target Milestone|--- |4.3.4


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