From: Richard Biener Date: Tue, 16 Dec 2025 12:08:19 +0000 (+0100) Subject: testsuite/123137 - fix FAIL of g++.dg/vect/pr64410.cc on i?86 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=56015c5bc150e7140088054f06c10c2ff4219a3f;p=thirdparty%2Fgcc.git 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 --git a/gcc/testsuite/g++.dg/vect/pr64410.cc b/gcc/testsuite/g++.dg/vect/pr64410.cc index dd0256c2fe0..5bc92f74bd5 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 @@ -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" } }