From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id 176131382C5 for ; Wed, 19 May 2021 17:48:39 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 65952E0874; Wed, 19 May 2021 17:48:38 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 3D133E0874 for ; Wed, 19 May 2021 17:48:38 +0000 (UTC) Received: from oystercatcher.gentoo.org (unknown [IPv6:2a01:4f8:202:4333:225:90ff:fed9:fc84]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 4441B340DE7 for ; Wed, 19 May 2021 17:48:37 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id EC7CB5D2 for ; Wed, 19 May 2021 17:48:35 +0000 (UTC) From: "Sergei Trofimovich" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Sergei Trofimovich" Message-ID: <1621446475.4984e512c6bb242ed2734c7c8a2b90ba0c9f44c5.slyfox@gentoo> Subject: [gentoo-commits] proj/gcc-patches:master commit in: 11.1.0/gentoo/ X-VCS-Repository: proj/gcc-patches X-VCS-Files: 11.1.0/gentoo/27_all_msp430-f2c.patch 11.1.0/gentoo/README.history X-VCS-Directories: 11.1.0/gentoo/ X-VCS-Committer: slyfox X-VCS-Committer-Name: Sergei Trofimovich X-VCS-Revision: 4984e512c6bb242ed2734c7c8a2b90ba0c9f44c5 X-VCS-Branch: master Date: Wed, 19 May 2021 17:48:35 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: cdf444ae-fe54-475f-a5dd-05357d3496ad X-Archives-Hash: b3e6fee0fe090a87ada100c4c4fbfb11 commit: 4984e512c6bb242ed2734c7c8a2b90ba0c9f44c5 Author: Sergei Trofimovich gentoo org> AuthorDate: Wed May 19 17:47:55 2021 +0000 Commit: Sergei Trofimovich gentoo org> CommitDate: Wed May 19 17:47:55 2021 +0000 URL: https://gitweb.gentoo.org/proj/gcc-patches.git/commit/?id=4984e512 11.1.0: backport msp430 float_to_chars build fix Bug: https://gcc.gnu.org/PR100361 Signed-off-by: Sergei Trofimovich gentoo.org> 11.1.0/gentoo/27_all_msp430-f2c.patch | 85 +++++++++++++++++++++++++++++++++++ 11.1.0/gentoo/README.history | 3 ++ 2 files changed, 88 insertions(+) diff --git a/11.1.0/gentoo/27_all_msp430-f2c.patch b/11.1.0/gentoo/27_all_msp430-f2c.patch new file mode 100644 index 0000000..2c9a3c2 --- /dev/null +++ b/11.1.0/gentoo/27_all_msp430-f2c.patch @@ -0,0 +1,85 @@ +https://gcc.gnu.org/PR100361 + +2021-05-18 Joern Rennecke + + libstdc++: Disable floating_to_chars.cc on 16 bit targets + + This patch conditionally disables the compilation of floating_to_chars.cc + on 16 bit targets, thus fixing a build failure for these targets as + the POW10_SPLIT_2 array exceeds the maximum object size. + +libstdc++-v3/ + PR libstdc++/100361 + * include/std/charconv (to_chars): Hide the overloads for + floating-point types for 16 bit targets. + * src/c++17/floating_to_chars.cc: Don't compile for 16 bit targets. + * testsuite/20_util/to_chars/double.cc: Run this test only on + size32plus targets. + * testsuite/20_util/to_chars/float.cc: Likewise. + * testsuite/20_util/to_chars/long_double.cc: Likewise. + +diff --git a/libstdc++-v3/include/std/charconv b/libstdc++-v3/include/std/charconv +index 193702e677a..ac9c34d4601 100644 +--- a/libstdc++-v3/include/std/charconv ++++ b/libstdc++-v3/include/std/charconv +@@ -703,7 +703,8 @@ namespace __detail + chars_format __fmt = chars_format::general) noexcept; + #endif + +-#if _GLIBCXX_FLOAT_IS_IEEE_BINARY32 && _GLIBCXX_DOUBLE_IS_IEEE_BINARY64 ++#if _GLIBCXX_FLOAT_IS_IEEE_BINARY32 && _GLIBCXX_DOUBLE_IS_IEEE_BINARY64 \ ++ && __SIZE_WIDTH__ >= 32 + // Floating-point std::to_chars + + // Overloads for float. +diff --git a/libstdc++-v3/src/c++17/floating_to_chars.cc b/libstdc++-v3/src/c++17/floating_to_chars.cc +index 1a0abb9e80f..44f547a77b4 100644 +--- a/libstdc++-v3/src/c++17/floating_to_chars.cc ++++ b/libstdc++-v3/src/c++17/floating_to_chars.cc +@@ -50,7 +50,9 @@ extern "C" int __sprintfieee128(char*, const char*, ...); + + // This implementation crucially assumes float/double have the + // IEEE binary32/binary64 formats. +-#if _GLIBCXX_FLOAT_IS_IEEE_BINARY32 && _GLIBCXX_DOUBLE_IS_IEEE_BINARY64 ++#if _GLIBCXX_FLOAT_IS_IEEE_BINARY32 && _GLIBCXX_DOUBLE_IS_IEEE_BINARY64 \ ++ /* And it also assumes that uint64_t POW10_SPLIT_2[3133][3] is valid. */\ ++ && __SIZE_WIDTH__ >= 32 + + // Determine the binary format of 'long double'. + +diff --git a/libstdc++-v3/testsuite/20_util/to_chars/double.cc b/libstdc++-v3/testsuite/20_util/to_chars/double.cc +index bb6f74424ed..64e62213044 100644 +--- a/libstdc++-v3/testsuite/20_util/to_chars/double.cc ++++ b/libstdc++-v3/testsuite/20_util/to_chars/double.cc +@@ -33,6 +33,7 @@ + + // { dg-do run { target c++17 } } + // { dg-require-effective-target ieee-floats } ++// { dg-require-effective-target size32plus } + + #include + +diff --git a/libstdc++-v3/testsuite/20_util/to_chars/float.cc b/libstdc++-v3/testsuite/20_util/to_chars/float.cc +index 0c8dd4f66df..73b9081d4ff 100644 +--- a/libstdc++-v3/testsuite/20_util/to_chars/float.cc ++++ b/libstdc++-v3/testsuite/20_util/to_chars/float.cc +@@ -33,6 +33,7 @@ + + // { dg-do run { target c++17 } } + // { dg-require-effective-target ieee-floats } ++// { dg-require-effective-target size32plus } + + #include + +diff --git a/libstdc++-v3/testsuite/20_util/to_chars/long_double.cc b/libstdc++-v3/testsuite/20_util/to_chars/long_double.cc +index 8cf45ad5e94..447e5368811 100644 +--- a/libstdc++-v3/testsuite/20_util/to_chars/long_double.cc ++++ b/libstdc++-v3/testsuite/20_util/to_chars/long_double.cc +@@ -35,6 +35,7 @@ + // { dg-xfail-run-if "Non-conforming printf (see PR98384)" { *-*-solaris* *-*-darwin* } } + + // { dg-require-effective-target ieee-floats } ++// { dg-require-effective-target size32plus } + + #include + diff --git a/11.1.0/gentoo/README.history b/11.1.0/gentoo/README.history index b2cb96e..9c9ad5e 100644 --- a/11.1.0/gentoo/README.history +++ b/11.1.0/gentoo/README.history @@ -1,3 +1,6 @@ +2 TODO + + 27_all_msp430-f2c.patch + 1 27 Apr 2021 + 01_all_default-fortify-source.patch + 02_all_default-warn-format-security.patch