[gcc r16-6164] testsuite/123137 - fix FAIL of g++.dg/vect/pr64410.cc on i?86
Richard Biener
rguenth@gcc.gnu.org
Tue Dec 16 12:15:55 GMT 2025
https://gcc.gnu.org/g:56015c5bc150e7140088054f06c10c2ff4219a3f
commit r16-6164-g56015c5bc150e7140088054f06c10c2ff4219a3f
Author: Richard Biener <rguenther@suse.de>
Date: Tue Dec 16 13:08:19 2025 +0100
testsuite/123137 - fix FAIL of g++.dg/vect/pr64410.cc on i?86
The following works around SRA not being able to decompose an
aggregate copy of std::complex because with x87 math ld/st pairs
are not bit-preserving by adding -msse -mfpmath=sse. This avoids
spurious failures of the testcase.
PR testsuite/123137
* g++.dg/vect/pr64410.cc: Add -mfpmath=sse -msse on x86.
Diff:
---
gcc/testsuite/g++.dg/vect/pr64410.cc | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/gcc/testsuite/g++.dg/vect/pr64410.cc b/gcc/testsuite/g++.dg/vect/pr64410.cc
index dd0256c2fe06..5bc92f74bd58 100644
--- a/gcc/testsuite/g++.dg/vect/pr64410.cc
+++ b/gcc/testsuite/g++.dg/vect/pr64410.cc
@@ -1,6 +1,9 @@
// { dg-do compile }
// { dg-require-effective-target vect_double }
// { dg-additional-options "-fexcess-precision=fast" }
+// We require decomposing a structure copy to double load/store pairs which
+// is not possible with x87 math.
+// { dg-additional-options "-msse -mfpmath=sse" { target { x86_64-*-* i?86-*-* } } }
// { dg-skip-if "requires hosted libstdc++ for vector" { ! hostedlib } }
#include <vector>
@@ -51,4 +54,4 @@ main(int argc, char** argv)
return 0;
}
-// { dg-final { scan-tree-dump "pr64410.cc:46:29: optimized: loop vectorized" "vect" } }
+// { dg-final { scan-tree-dump "pr64410.cc:49:29: optimized: loop vectorized" "vect" } }
More information about the Gcc-cvs
mailing list