From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 7857) id B25623839DE9; Thu, 25 May 2023 07:05:07 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org B25623839DE9 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1684998307; bh=wNfIxZqa8DcHdk8MUskuOynvXn8b6GhVFWVE9dNiwfY=; h=From:To:Subject:Date:From; b=hdJ0psiPKhcomOylUpNZildm0C3UsRVrx+NmfMs+/6cEVcZ0Qouo4W12XXB/d6uKp 44q15Vp2jFcDaMWRSojL+ZhXavGNaz/GITHiseWZc7i9XTs61gKkOLhhqm2tl7V+Qx fnkiPFcjBxm+HuaTYfz+391psfiCq7JBauZrhl18= MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="utf-8" From: Matthias Kretz To: gcc-cvs@gcc.gnu.org, libstdc++-cvs@gcc.gnu.org Subject: [gcc r11-10820] libstdc++: Resolve -Wunused-variable warnings in stdx::simd and tests X-Act-Checkin: gcc X-Git-Author: Matthias Kretz X-Git-Refname: refs/heads/releases/gcc-11 X-Git-Oldrev: 7bb263e88706e15983cd31d5ff5f509e75758681 X-Git-Newrev: a0b8b6bdd36b9b996536f2304741c9844ed470d7 Message-Id: <20230525070507.B25623839DE9@sourceware.org> Date: Thu, 25 May 2023 07:05:07 +0000 (GMT) List-Id: https://gcc.gnu.org/g:a0b8b6bdd36b9b996536f2304741c9844ed470d7 commit r11-10820-ga0b8b6bdd36b9b996536f2304741c9844ed470d7 Author: Matthias Kretz Date: Mon May 22 16:58:30 2023 +0200 libstdc++: Resolve -Wunused-variable warnings in stdx::simd and tests Signed-off-by: Matthias Kretz libstdc++-v3/ChangeLog: * include/experimental/bits/simd_builtin.h (_S_fpclassify): Move __infn into #ifdef'ed block. * testsuite/experimental/simd/tests/fpclassify.cc: Declare constants only when used. * testsuite/experimental/simd/tests/frexp.cc: Likewise. * testsuite/experimental/simd/tests/logarithm.cc: Likewise. * testsuite/experimental/simd/tests/trunc_ceil_floor.cc: Likewise. * testsuite/experimental/simd/tests/ldexp_scalbn_scalbln_modf.cc: Move totest and expect1 into #ifdef'ed block. (cherry picked from commit a7129e82bed1bd4f513fc3c3f401721e2c96a865) Diff: --- libstdc++-v3/include/experimental/bits/simd_builtin.h | 4 ++-- libstdc++-v3/testsuite/experimental/simd/tests/fpclassify.cc | 2 ++ libstdc++-v3/testsuite/experimental/simd/tests/frexp.cc | 6 ++++++ .../testsuite/experimental/simd/tests/ldexp_scalbn_scalbln_modf.cc | 4 ++-- libstdc++-v3/testsuite/experimental/simd/tests/logarithm.cc | 4 +++- libstdc++-v3/testsuite/experimental/simd/tests/trunc_ceil_floor.cc | 2 ++ 6 files changed, 17 insertions(+), 5 deletions(-) diff --git a/libstdc++-v3/include/experimental/bits/simd_builtin.h b/libstdc++-v3/include/experimental/bits/simd_builtin.h index b1ae804bf91..712b3599a99 100644 --- a/libstdc++-v3/include/experimental/bits/simd_builtin.h +++ b/libstdc++-v3/include/experimental/bits/simd_builtin.h @@ -2356,12 +2356,12 @@ template constexpr size_t _NI = sizeof(__xn) / sizeof(_I); _GLIBCXX_SIMD_USE_CONSTEXPR auto __minn = __vector_bitcast<_I>(__vector_broadcast<_NI>(__norm_min_v<_Tp>)); - _GLIBCXX_SIMD_USE_CONSTEXPR auto __infn - = __vector_bitcast<_I>(__vector_broadcast<_NI>(__infinity_v<_Tp>)); _GLIBCXX_SIMD_USE_CONSTEXPR auto __fp_normal = __vector_broadcast<_NI, _I>(FP_NORMAL); #if !__FINITE_MATH_ONLY__ + _GLIBCXX_SIMD_USE_CONSTEXPR auto __infn + = __vector_bitcast<_I>(__vector_broadcast<_NI>(__infinity_v<_Tp>)); _GLIBCXX_SIMD_USE_CONSTEXPR auto __fp_nan = __vector_broadcast<_NI, _I>(FP_NAN); _GLIBCXX_SIMD_USE_CONSTEXPR auto __fp_infinite diff --git a/libstdc++-v3/testsuite/experimental/simd/tests/fpclassify.cc b/libstdc++-v3/testsuite/experimental/simd/tests/fpclassify.cc index fe8a06174b1..30888c28c39 100644 --- a/libstdc++-v3/testsuite/experimental/simd/tests/fpclassify.cc +++ b/libstdc++-v3/testsuite/experimental/simd/tests/fpclassify.cc @@ -40,9 +40,11 @@ template { using T = typename V::value_type; using intv = std::experimental::fixed_size_simd; +#if __GCC_IEC_559 >= 2 constexpr T inf = std::__infinity_v; constexpr T denorm_min = std::__infinity_v; constexpr T nan = std::__quiet_NaN_v; +#endif constexpr T max = std::__finite_max_v; constexpr T norm_min = std::__norm_min_v; test_values( diff --git a/libstdc++-v3/testsuite/experimental/simd/tests/frexp.cc b/libstdc++-v3/testsuite/experimental/simd/tests/frexp.cc index 918182d2221..0d895c4913e 100644 --- a/libstdc++-v3/testsuite/experimental/simd/tests/frexp.cc +++ b/libstdc++-v3/testsuite/experimental/simd/tests/frexp.cc @@ -27,11 +27,17 @@ template { using int_v = std::experimental::fixed_size_simd; using T = typename V::value_type; +#if __GCC_IEC_559 >= 2 || defined __STDC_IEC_559__ constexpr auto denorm_min = std::__denorm_min_v; +#endif +#if __GCC_IEC_559 >= 2 constexpr auto norm_min = std::__norm_min_v; +#endif constexpr auto max = std::__finite_max_v; +#if defined __STDC_IEC_559__ constexpr auto nan = std::__quiet_NaN_v; constexpr auto inf = std::__infinity_v; +#endif test_values( {0, 0.25, 0.5, 1, 3, 4, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 32, 31, -0., -0.25, -0.5, -1, diff --git a/libstdc++-v3/testsuite/experimental/simd/tests/ldexp_scalbn_scalbln_modf.cc b/libstdc++-v3/testsuite/experimental/simd/tests/ldexp_scalbn_scalbln_modf.cc index e9719cc67fe..3c4f0c80361 100644 --- a/libstdc++-v3/testsuite/experimental/simd/tests/ldexp_scalbn_scalbln_modf.cc +++ b/libstdc++-v3/testsuite/experimental/simd/tests/ldexp_scalbn_scalbln_modf.cc @@ -139,7 +139,6 @@ template if (modf_is_broken) return; V integral = {}; - const V totest = modf(input, &integral); auto&& expected = [&](const auto& v) -> std::pair { std::pair tmp = {}; using std::modf; @@ -151,8 +150,9 @@ template } return tmp; }; - const auto expect1 = expected(input); #ifdef __STDC_IEC_559__ + const V totest = modf(input, &integral); + const auto expect1 = expected(input); COMPARE(isnan(totest), isnan(expect1.first)) << "modf(" << input << ", iptr) = " << totest << " != " << expect1; COMPARE(isnan(integral), isnan(expect1.second)) diff --git a/libstdc++-v3/testsuite/experimental/simd/tests/logarithm.cc b/libstdc++-v3/testsuite/experimental/simd/tests/logarithm.cc index b0dc9af6c81..d2e52646a7d 100644 --- a/libstdc++-v3/testsuite/experimental/simd/tests/logarithm.cc +++ b/libstdc++-v3/testsuite/experimental/simd/tests/logarithm.cc @@ -30,11 +30,13 @@ template vir::test::setFuzzyness(1); using T = typename V::value_type; +#ifdef __STDC_IEC_559__ constexpr T nan = std::__quiet_NaN_v; constexpr T inf = std::__infinity_v; constexpr T denorm_min = std::__denorm_min_v; - constexpr T norm_min = std::__norm_min_v; constexpr T min = std::__finite_min_v; +#endif + constexpr T norm_min = std::__norm_min_v; constexpr T max = std::__finite_max_v; test_values({1, 2, diff --git a/libstdc++-v3/testsuite/experimental/simd/tests/trunc_ceil_floor.cc b/libstdc++-v3/testsuite/experimental/simd/tests/trunc_ceil_floor.cc index 0687662fae6..71ac01a3d99 100644 --- a/libstdc++-v3/testsuite/experimental/simd/tests/trunc_ceil_floor.cc +++ b/libstdc++-v3/testsuite/experimental/simd/tests/trunc_ceil_floor.cc @@ -25,8 +25,10 @@ template test() { using T = typename V::value_type; +#ifdef __STDC_IEC_559__ constexpr T inf = std::__infinity_v; constexpr T denorm_min = std::__denorm_min_v; +#endif constexpr T norm_min = std::__norm_min_v; constexpr T max = std::__finite_max_v; constexpr T min = std::__finite_min_v;