public inbox for libstdc++@gcc.gnu.org
 help / color / mirror / Atom feed
* [PATCH] libstdc++: Simplify calculation of expected value in simd test
@ 2023-05-26 11:09 Matthias Kretz
  2023-05-26 15:45 ` Jonathan Wakely
  0 siblings, 1 reply; 2+ messages in thread
From: Matthias Kretz @ 2023-05-26 11:09 UTC (permalink / raw)
  To: gcc-patches, libstdc++

[-- Attachment #1: Type: text/plain, Size: 1104 bytes --]

OK for master and all backports (after 11.4 is done)?

tested on powerpc64le-linux-gnu

----------- 8< ------------

This avoids a failure on PR109964.

Signed-off-by: Matthias Kretz <m.kretz@gsi.de>

libstdc++-v3/ChangeLog:

	* testsuite/experimental/simd/tests/integer_operators.cc:
	Compute expected value differently to avoid getting turned into
	a vector shift.
---
 .../experimental/simd/tests/integer_operators.cc         | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)


--
──────────────────────────────────────────────────────────────────────────
 Dr. Matthias Kretz                           https://mattkretz.github.io
 GSI Helmholtz Centre for Heavy Ion Research               https://gsi.de
 stdₓ::simd
──────────────────────────────────────────────────────────────────────────

[-- Attachment #2: 0003-libstdc-Simplify-calculation-of-expected-value-in-si.patch --]
[-- Type: text/x-patch, Size: 1092 bytes --]

diff --git a/libstdc++-v3/testsuite/experimental/simd/tests/integer_operators.cc b/libstdc++-v3/testsuite/experimental/simd/tests/integer_operators.cc
index 7a2bc085e49..08ad49ca710 100644
--- a/libstdc++-v3/testsuite/experimental/simd/tests/integer_operators.cc
+++ b/libstdc++-v3/testsuite/experimental/simd/tests/integer_operators.cc
@@ -179,11 +179,10 @@ for (int s = 1; s < nbits; ++s)
 	  for (int j = 0; j < 100; ++j)
 	    {
 	      const V seq([&](auto i) -> T { return (j + i) % n_promo_bits; });
-	      COMPARE(V(1) >> seq, V([&](auto i) { return T(T(1) >> seq[i]); }))
-		<< "seq = " << seq;
-	      COMPARE(make_value_unknown(V(1)) >> make_value_unknown(seq),
-		V([&](auto i) { return T(T(1) >> seq[i]); }))
-		<< "seq = " << seq;
+	      const V expect([&](auto i) { return seq[i] == 0 ? T(1) : T(0); });
+	      COMPARE(V(1) >> seq, expect) << "\nseq = " << seq;
+	      COMPARE(make_value_unknown(V(1)) >> make_value_unknown(seq), expect)
+		<< "\nseq = " << seq;
 	    }
 	  for_constexpr<int, 0, n_promo_bits - 1>([](auto shift_ic) {
 	    constexpr int shift = shift_ic;

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [PATCH] libstdc++: Simplify calculation of expected value in simd test
  2023-05-26 11:09 [PATCH] libstdc++: Simplify calculation of expected value in simd test Matthias Kretz
@ 2023-05-26 15:45 ` Jonathan Wakely
  0 siblings, 0 replies; 2+ messages in thread
From: Jonathan Wakely @ 2023-05-26 15:45 UTC (permalink / raw)
  To: Matthias Kretz; +Cc: gcc-patches, libstdc++

[-- Attachment #1: Type: text/plain, Size: 1306 bytes --]

On Fri, 26 May 2023 at 12:09, Matthias Kretz via Libstdc++ <
libstdc++@gcc.gnu.org> wrote:

> OK for master and all backports (after 11.4 is done)?
>

OK



>
> tested on powerpc64le-linux-gnu
>
> ----------- 8< ------------
>
> This avoids a failure on PR109964.
>
> Signed-off-by: Matthias Kretz <m.kretz@gsi.de>
>
> libstdc++-v3/ChangeLog:
>
>         * testsuite/experimental/simd/tests/integer_operators.cc:
>         Compute expected value differently to avoid getting turned into
>         a vector shift.
> ---
>  .../experimental/simd/tests/integer_operators.cc         | 9 ++++-----
>  1 file changed, 4 insertions(+), 5 deletions(-)
>
>
> --
> ──────────────────────────────────────────────────────────────────────────
>  Dr. Matthias Kretz                           https://mattkretz.github.io
>  GSI Helmholtz Centre for Heavy Ion Research               https://gsi.de
>  stdₓ::simd
> ──────────────────────────────────────────────────────────────────────────

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2023-05-26 15:46 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-05-26 11:09 [PATCH] libstdc++: Simplify calculation of expected value in simd test Matthias Kretz
2023-05-26 15:45 ` Jonathan Wakely

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).