Two tests currently XPASS on 64-bit Solaris/SPARC:
XPASS: gcc.dg/vect/pr33804.c scan-tree-dump-times vect "vectorized 1 loops" 1
XPASS: gcc.dg/vect/pr33804.c scan-tree-dump-times vect "vectorizing stmts using
SLP" 1
XPASS: gcc.dg/vect/slp-multitypes-3.c scan-tree-dump-times vect "vectorized 1
loops" 1
XPASS: gcc.dg/vect/slp-multitypes-3.c scan-tree-dump-times vect "vectorizing
stmts using SLP" 2
Both tests are currently xfail'ed on sparc*-*-*. The following patch
restricts that to 32-bit SPARC instead.
Tested on sparc-sun-solaris2.11 and i386-pc-solaris2.11.
Ok for trunk?
However, I wonder if there shouldn't be some effective-target keyword for
this difference instead of the target-specific xfail (probably not worth
it) or if restricing the xfail like this is just a hack.
--
-----------------------------------------------------------------------------
Rainer Orth, Center for Biotechnology, Bielefeld University
2026-01-05 Rainer Orth <[email protected]>
gcc/testsuite:
PR tree-optimization/102954
* gcc.dg/vect/pr33804.c (scan-tree-dump-times): Only
xfail on 32-bit SPARC.
* gcc.dg/vect/slp-multitypes-3.c: Likewise.
# HG changeset patch
# Parent 69a445e7c2dfdd087d6d0b52a8ba3cacd0c6dc81
testsuite: Only xfail gcc.dg/vect/slp-multitypes-3.c on 32-bit SPARC
diff --git a/gcc/testsuite/gcc.dg/vect/pr33804.c b/gcc/testsuite/gcc.dg/vect/pr33804.c
--- a/gcc/testsuite/gcc.dg/vect/pr33804.c
+++ b/gcc/testsuite/gcc.dg/vect/pr33804.c
@@ -13,5 +13,5 @@ void f(unsigned char *s, unsigned char *
}
}
-/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" { xfail { vect_no_align && { ! vect_hw_misalign } } } } } */
-/* { dg-final { scan-tree-dump-times "vectorizing stmts using SLP" 1 "vect" { xfail { vect_no_align && { ! vect_hw_misalign } } } } } */
+/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" { xfail { sparc*-*-* && ilp32 } } } } */
+/* { dg-final { scan-tree-dump-times "vectorizing stmts using SLP" 1 "vect" { xfail { sparc*-*-* && ilp32 } } } } */
diff --git a/gcc/testsuite/gcc.dg/vect/slp-multitypes-3.c b/gcc/testsuite/gcc.dg/vect/slp-multitypes-3.c
--- a/gcc/testsuite/gcc.dg/vect/slp-multitypes-3.c
+++ b/gcc/testsuite/gcc.dg/vect/slp-multitypes-3.c
@@ -88,5 +88,5 @@ int main (void)
return 0;
}
-/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" { xfail sparc*-*-* } } } */
-/* { dg-final { scan-tree-dump-times "vectorizing stmts using SLP" 2 "vect" { xfail sparc*-*-* } } } */
+/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" { xfail { sparc*-*-* && ilp32 } } } } */
+/* { dg-final { scan-tree-dump-times "vectorizing stmts using SLP" 2 "vect" { xfail { sparc*-*-* && ilp32 } } } } */