This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug testsuite/51693] New: New XPASSes in vectorizer testsuite on powerpc64-suse-linux
- From: "irar at il dot ibm.com" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Wed, 28 Dec 2011 10:51:43 +0000
- Subject: [Bug testsuite/51693] New: New XPASSes in vectorizer testsuite on powerpc64-suse-linux
- Auto-submitted: auto-generated
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51693
Bug #: 51693
Summary: New XPASSes in vectorizer testsuite on
powerpc64-suse-linux
Classification: Unclassified
Product: gcc
Version: 4.7.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: testsuite
AssignedTo: unassigned@gcc.gnu.org
ReportedBy: irar@il.ibm.com
CC: michael.v.zolotukhin@gmail.com
Host: powerpc64-suse-linux
Target: powerpc64-suse-linux
Build: powerpc64-suse-linux
Revision 182583 http://gcc.gnu.org/viewcvs?view=revision&revision=182583 caused
several XPASSes on powerpc64-suse-linux:
XPASS: gcc.dg/vect/vect-multitypes-1.c scan-tree-dump-times vect "Alignment of
access forced using peeling" 2
XPASS: gcc.dg/vect/vect-multitypes-1.c scan-tree-dump-times vect "Vectorizing
an unaligned access" 4
XPASS: gcc.dg/vect/vect-peel-3.c scan-tree-dump-times vect "Vectorizing an
unaligned access" 1
XPASS: gcc.dg/vect/vect-peel-3.c scan-tree-dump-times vect "Alignment of access
forced using peeling" 1
XPASS: gcc.dg/vect/vect-multitypes-1.c -flto scan-tree-dump-times vect
"Alignment of access forced using peeling" 2
XPASS: gcc.dg/vect/vect-multitypes-1.c -flto scan-tree-dump-times vect
"Vectorizing an unaligned access" 4
XPASS: gcc.dg/vect/vect-peel-3.c -flto scan-tree-dump-times vect "Vectorizing
an unaligned access" 1
XPASS: gcc.dg/vect/vect-peel-3.c -flto scan-tree-dump-times vect "Alignment of
access forced using peeling" 1
XPASS: gcc.dg/vect/no-section-anchors-vect-69.c scan-tree-dump-times vect
"Alignment of access forced using peeling" 2
The reason is that {!vect_aligned_arrays} was added to xfail of the above
checks, while vect_aligned_arrays is false for power.
Changing that, i.e.:
Index: ../../lib/target-supports.exp
===================================================================
--- ../../lib/target-supports.exp (revision 182703)
+++ ../../lib/target-supports.exp (working copy)
@@ -3222,7 +3222,8 @@ proc check_effective_target_vect_aligned_arrays {
set et_vect_aligned_arrays_saved 1
}
}
- if [istarget spu-*-*] {
+ if {[istarget spu-*-*]
+ || [istarget powerpc*-*-*] } {
set et_vect_aligned_arrays_saved 1
}
}
fixes the XPASSes and doesn't cause any problems (on powerpc64-suse-linux), but
AFAIU arrays are not always vector aligned on power, so this is not a good
idea, unless we change the definition of
check_effective_target_vect_aligned_arrays.
What was the purpose of adding {!vect_aligned_arrays} to these tests? If
peeling is impossible on AVX because arrays are never vector aligned, maybe we
need a new target check instead of vect_aligned_arrays?