From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 7857) id 65EF63856975; Thu, 23 Feb 2023 16:31:00 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 65EF63856975 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1677169860; bh=IsuEf1JrC05ksDvqC3CW8Dby97++/HFaoaXbx0J6Xg4=; h=From:To:Subject:Date:From; b=kgpnHXQew2LWjjuTin4ybJeYAvaVGSH1RUxdsk9UaIhcn2qnajvfyOKeaDyi7ngXa 4o/KViNgmW3IypRYBbnDS1iEe+Q/11C/ykY2ACRI7N98ZADCCIF9DgbvV1BTipN0M1 BlaQ7H/xnGFK2JOae81ueIP3KiFu2lJ2sFJzhVzY= 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 r12-9198] libstdc++: Add missing constexpr on simd shift implementation X-Act-Checkin: gcc X-Git-Author: Matthias Kretz X-Git-Refname: refs/heads/releases/gcc-12 X-Git-Oldrev: bbf5d10206a71e2d62baee4240a5a2d2123592f9 X-Git-Newrev: 4f9d81ef7899437bb5d461e1e034592972f6d04e Message-Id: <20230223163100.65EF63856975@sourceware.org> Date: Thu, 23 Feb 2023 16:31:00 +0000 (GMT) List-Id: https://gcc.gnu.org/g:4f9d81ef7899437bb5d461e1e034592972f6d04e commit r12-9198-g4f9d81ef7899437bb5d461e1e034592972f6d04e Author: Matthias Kretz Date: Mon Feb 20 17:35:59 2023 +0100 libstdc++: Add missing constexpr on simd shift implementation Resolves -Wtautological-compare warnings about `if (__builtin_is_constant_evaluated())` in the implementations of these functions. Signed-off-by: Matthias Kretz libstdc++-v3/ChangeLog: * include/experimental/bits/simd_x86.h (_S_bit_shift_left) (_S_bit_shift_right): Declare constexpr. The implementation was already expecting constexpr evaluation. (cherry picked from commit fa37ac2b59ed1c379b35dbf9bd58f7849f9fd5b5) Diff: --- libstdc++-v3/include/experimental/bits/simd_x86.h | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/libstdc++-v3/include/experimental/bits/simd_x86.h b/libstdc++-v3/include/experimental/bits/simd_x86.h index c809520dcdd..b9af1ce538c 100644 --- a/libstdc++-v3/include/experimental/bits/simd_x86.h +++ b/libstdc++-v3/include/experimental/bits/simd_x86.h @@ -1524,7 +1524,7 @@ template // values. #ifndef _GLIBCXX_SIMD_NO_SHIFT_OPT template > - inline _GLIBCXX_CONST static typename _TVT::type + constexpr inline _GLIBCXX_CONST static typename _TVT::type _S_bit_shift_left(_Tp __xx, int __y) { using _V = typename _TVT::type; @@ -1629,7 +1629,7 @@ template } template > - inline _GLIBCXX_CONST static typename _TVT::type + constexpr inline _GLIBCXX_CONST static typename _TVT::type _S_bit_shift_left(_Tp __xx, typename _TVT::type __y) { using _V = typename _TVT::type; @@ -1798,7 +1798,7 @@ template // _S_bit_shift_right {{{ #ifndef _GLIBCXX_SIMD_NO_SHIFT_OPT template > - inline _GLIBCXX_CONST static typename _TVT::type + constexpr inline _GLIBCXX_CONST static typename _TVT::type _S_bit_shift_right(_Tp __xx, int __y) { using _V = typename _TVT::type; @@ -1848,7 +1848,7 @@ template } template > - inline _GLIBCXX_CONST static typename _TVT::type + constexpr inline _GLIBCXX_CONST static typename _TVT::type _S_bit_shift_right(_Tp __xx, typename _TVT::type __y) { using _V = typename _TVT::type;