This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug tree-optimization/36228] New: redundant runtime check while vectorizing
- From: "razya at il dot ibm dot com" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 13 May 2008 13:00:05 -0000
- Subject: [Bug tree-optimization/36228] New: redundant runtime check while vectorizing
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
/* { dg-do compile } */
/* { dg-options "-O3 -c" } */
#define COLS 8
#define ROWS 8
int
t_run_test(void);
int
t_run_test()
{
int k_1,i_1, j_1;
static signed char f_1[ROWS][COLS] ;
static long F_1[ROWS][COLS] ;
long cosMatrixA[ROWS][COLS] ;
for( k_1 = 0 ; k_1 < COLS ; k_1++ )
{
for( i_1 = 0 ; i_1 < ROWS ; i_1++ )
{
for( j_1 = 0 ; j_1 < COLS ; j_1++ )
F_1[i_1][j_1] += f_1[i_1][k_1] * cosMatrixA[k_1][j_1] ;
}
}
return 0;
}
A redundant check for aliasing is created.
Looking at the vectorizer's dump, we see:
versioning for alias required: can't determine dependence between
F_1[i_1_41][j_1_42] and F_1[i_1_41][j_1_42]
Tested on Power6.
--
Summary: redundant runtime check while vectorizing
Product: gcc
Version: 4.4.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: tree-optimization
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: razya at il dot ibm dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36228