Compare commits

...

4 Commits

44 changed files with 535 additions and 186 deletions

View File

@ -0,0 +1,4 @@
1ba89d5d97aa19d0aaa5edd8834e71a2dcbd08e4 SOURCES/gcc-14.2.1-20250110.tar.xz
ae5fbb33bcb442121fbbf482a93f6b3c84d489ee SOURCES/isl-0.24.tar.bz2
fa4301e00c164604a6d8122c130375a55621b076 SOURCES/newlib-cygwin-d45261f62a15f8abd94a1031020b9a9f455e4eed.tar.xz
c1e42726a71ca4a385502580778439bd326c6d4e SOURCES/nvptx-tools-87ce9dc5999e5fca2e1d3478a30888d9864c9804.tar.xz

8
.gitignore vendored
View File

@ -1,4 +1,4 @@
/gcc-14.1.1-20240701.tar.xz
/isl-0.24.tar.bz2
/newlib-cygwin-d45261f62a15f8abd94a1031020b9a9f455e4eed.tar.xz
/nvptx-tools-87ce9dc5999e5fca2e1d3478a30888d9864c9804.tar.xz
SOURCES/gcc-14.2.1-20250110.tar.xz
SOURCES/isl-0.24.tar.bz2
SOURCES/newlib-cygwin-d45261f62a15f8abd94a1031020b9a9f455e4eed.tar.xz
SOURCES/nvptx-tools-87ce9dc5999e5fca2e1d3478a30888d9864c9804.tar.xz

View File

@ -1,72 +0,0 @@
diff --git a/libstdc++-v3/testsuite/22_locale/time_get/get_date/char/12791.cc b/libstdc++-v3/testsuite/22_locale/time_get/get_date/char/12791.cc
index fa740b42b88..5d808ee51ee 100644
--- a/libstdc++-v3/testsuite/22_locale/time_get/get_date/char/12791.cc
+++ b/libstdc++-v3/testsuite/22_locale/time_get/get_date/char/12791.cc
@@ -39,14 +39,14 @@ void test01()
const ios_base::iostate good = ios_base::goodbit;
ios_base::iostate errorstate = good;
- iss.str("62/04/71");
+ iss.str("60/04/71");
iterator_type is_it01(iss);
tm time01;
errorstate = good;
iterator_type ret01 = tim_get.get_date(is_it01, end, iss, errorstate,
&time01);
VERIFY( errorstate == ios_base::failbit );
- VERIFY( *ret01 == '2' );
+ VERIFY( *ret01 == '6' );
iss.str("04/38/71");
iterator_type is_it02(iss);
diff --git a/libstdc++-v3/testsuite/22_locale/time_get/get_date/wchar_t/12791.cc b/libstdc++-v3/testsuite/22_locale/time_get/get_date/wchar_t/12791.cc
index 07f4c369e58..c975c8523d8 100644
--- a/libstdc++-v3/testsuite/22_locale/time_get/get_date/wchar_t/12791.cc
+++ b/libstdc++-v3/testsuite/22_locale/time_get/get_date/wchar_t/12791.cc
@@ -40,14 +40,14 @@ void test01()
const ios_base::iostate good = ios_base::goodbit;
ios_base::iostate errorstate = good;
- iss.str(L"62/04/71");
+ iss.str(L"60/04/71");
iterator_type is_it01(iss);
tm time01;
errorstate = good;
iterator_type ret01 = tim_get.get_date(is_it01, end, iss, errorstate,
&time01);
VERIFY( errorstate == ios_base::failbit );
- VERIFY( *ret01 == L'2' );
+ VERIFY( *ret01 == L'6' );
iss.str(L"04/38/71");
iterator_type is_it02(iss);
diff --git a/libstdc++-v3/testsuite/22_locale/time_get/get_year/char/1.cc b/libstdc++-v3/testsuite/22_locale/time_get/get_year/char/1.cc
index e6f53de4a55..c9d9896a6c0 100644
--- a/libstdc++-v3/testsuite/22_locale/time_get/get_year/char/1.cc
+++ b/libstdc++-v3/testsuite/22_locale/time_get/get_year/char/1.cc
@@ -76,8 +76,8 @@ void test01()
errorstate = good;
iterator_type ret03 = tim_get.get_year(is_it03, end, iss, errorstate,
&time03);
- VERIFY( time03.tm_year == 197 - 1900 );
- VERIFY( errorstate == good );
+ VERIFY( time03.tm_year == 3 );
+ VERIFY( errorstate == ios_base::failbit );
VERIFY( *ret03 == 'd' );
iss.str("71d71");
diff --git a/libstdc++-v3/testsuite/22_locale/time_get/get_year/wchar_t/1.cc b/libstdc++-v3/testsuite/22_locale/time_get/get_year/wchar_t/1.cc
index ba95fb91520..e17712098f4 100644
--- a/libstdc++-v3/testsuite/22_locale/time_get/get_year/wchar_t/1.cc
+++ b/libstdc++-v3/testsuite/22_locale/time_get/get_year/wchar_t/1.cc
@@ -76,8 +76,8 @@ void test01()
errorstate = good;
iterator_type ret03 = tim_get.get_year(is_it03, end, iss, errorstate,
&time03);
- VERIFY( time03.tm_year == 197 - 1900 );
- VERIFY( errorstate == good );
+ VERIFY( time03.tm_year == 3 );
+ VERIFY( errorstate == ios_base::failbit );
VERIFY( *ret03 == L'd' );
iss.str(L"71d71");

View File

@ -6,7 +6,7 @@ index b64e71dae22..5bf47b20820 100644
jump threading opportunities. Skip the later tests on aarch64. */
/* { dg-final { scan-tree-dump-not "Jumps threaded" "dom3" { target { ! aarch64*-*-* } } } } */
/* { dg-final { scan-tree-dump "Jumps threaded: 9" "thread2" { target { ! aarch64*-*-* } } } } */
-/* { dg-final { scan-tree-dump "Jumps threaded: 18" "thread2" { target { aarch64*-*-* } } } } */
-/* { dg-final { scan-tree-dump "Jumps threaded: 17" "thread2" { target { aarch64*-*-* } } } } */
enum STATE {
S0=0,

View File

@ -0,0 +1,81 @@
From 9d5baaa92c6609191fd2488389562ac1ad1f0fb2 Mon Sep 17 00:00:00 2001
From: Jonathan Wakely <jwakely@redhat.com>
Date: Fri, 28 Mar 2025 15:41:41 +0000
Subject: [PATCH] libstdc++: Fix -Warray-bounds warning in std::vector<bool>
[PR110498]
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
In this case, we need to tell the compiler that the current size is not
larger than the new size so that all the existing elements can be copied
to the new storage. This avoids bogus warnings about overflowing the new
storage when the compiler can't tell that that cannot happen.
We might as well also hoist the loads of begin() and end() before the
allocation too. All callers will have loaded at least begin() before
calling _M_reallocate.
libstdc++-v3/ChangeLog:
PR libstdc++/110498
* include/bits/vector.tcc (vector<bool, A>::_M_reallocate):
Hoist loads of begin() and end() before allocation and use them
to state an unreachable condition.
* testsuite/23_containers/vector/bool/capacity/110498.cc: New
test.
Reviewed-by: Tomasz Kamiński <tkaminsk@redhat.com>
(cherry picked from commit aa3aaf2bfb8fcc17076993df4297597b68bc5f60)
---
libstdc++-v3/include/bits/vector.tcc | 5 ++++-
.../vector/bool/capacity/110498.cc | 18 ++++++++++++++++++
2 files changed, 22 insertions(+), 1 deletion(-)
create mode 100644 libstdc++-v3/testsuite/23_containers/vector/bool/capacity/110498.cc
diff --git a/libstdc++-v3/include/bits/vector.tcc b/libstdc++-v3/include/bits/vector.tcc
index dafc2a31a8b..c59c15beacd 100644
--- a/libstdc++-v3/include/bits/vector.tcc
+++ b/libstdc++-v3/include/bits/vector.tcc
@@ -1059,9 +1059,12 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
vector<bool, _Alloc>::
_M_reallocate(size_type __n)
{
+ const iterator __begin = begin(), __end = end();
+ if (size_type(__end - __begin) > __n)
+ __builtin_unreachable();
_Bit_pointer __q = this->_M_allocate(__n);
iterator __start(std::__addressof(*__q), 0);
- iterator __finish(_M_copy_aligned(begin(), end(), __start));
+ iterator __finish(_M_copy_aligned(__begin, __end, __start));
this->_M_deallocate();
this->_M_impl._M_start = __start;
this->_M_impl._M_finish = __finish;
diff --git a/libstdc++-v3/testsuite/23_containers/vector/bool/capacity/110498.cc b/libstdc++-v3/testsuite/23_containers/vector/bool/capacity/110498.cc
new file mode 100644
index 00000000000..d2d09e10d19
--- /dev/null
+++ b/libstdc++-v3/testsuite/23_containers/vector/bool/capacity/110498.cc
@@ -0,0 +1,18 @@
+// { dg-options "-O3 -Werror=array-bounds" }
+// { dg-do compile }
+
+// Bug libstdc++/110498
+// Spurious warnings stringop-overflow and array-bounds copying data as bytes
+// into vector::reserve
+
+#include <vector>
+
+void f(std::vector<bool>& v)
+{
+ // Warning emitted when set to any number in the range [1,64].
+ const std::size_t reserve_size = 30;
+
+ v.reserve(reserve_size);
+ v.push_back(0);
+}
+
--
2.49.0

View File

@ -4369,7 +4369,7 @@
+#endif
--- libstdc++-v3/src/nonshared20/tzdb110.cc.jj 2024-07-19 14:20:09.597439460 +0200
+++ libstdc++-v3/src/nonshared20/tzdb110.cc 2024-07-19 15:44:37.305875058 +0200
@@ -0,0 +1,27 @@
@@ -0,0 +1,33 @@
+// Copyright The GNU Toolchain Authors.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
@ -4397,6 +4397,12 @@
+asm (".hidden _ZNSt7__cxx1115basic_stringbufIcSt11char_traitsIcESaIcEED0Ev");
+asm (".hidden _ZNSt7__cxx1115basic_stringbufIcSt11char_traitsIcESaIcEED1Ev");
+asm (".hidden _ZNSt7__cxx1115basic_stringbufIcSt11char_traitsIcESaIcEED2Ev");
+#ifndef __i386__
+asm (".hidden _ZSt23__atomic_wait_address_vIiZNKSt13__atomic_baseIiE4waitEiSt12memory_orderEUlvE_EvPKT_S4_T0_");
+#endif
+#ifdef __i386__
+asm (".hidden _ZSt25__unguarded_linear_insertIN9__gnu_cxx17__normal_iteratorIPNSt6chrono14time_zone_linkESt6vectorIS3_SaIS3_EEEENS0_5__ops14_Val_comp_iterIZNSt6ranges8__detail16__make_comp_projINSB_4lessEMS3_KDoFSt17basic_string_viewIcSt11char_traitsIcEEvEEEDaRT_RT0_EUlOSL_OSN_E_EEEvSL_SN_");
+#endif
--- libstdc++-v3/src/nonshared20/sstream-inst80.cc.jj 2024-07-18 16:10:38.335406635 +0200
+++ libstdc++-v3/src/nonshared20/sstream-inst80.cc 2024-07-19 11:02:28.274530997 +0200
@@ -0,0 +1,34 @@
@ -4563,7 +4569,7 @@
+ $(OPT_LDFLAGS) $(SECTION_LDFLAGS) $(AM_CXXFLAGS) $(LTLDFLAGS) -o $@
--- libstdc++-v3/src/nonshared20/tzdb80.cc.jj 2024-07-18 16:10:38.336406622 +0200
+++ libstdc++-v3/src/nonshared20/tzdb80.cc 2024-07-19 15:44:33.397924595 +0200
@@ -0,0 +1,127 @@
@@ -0,0 +1,130 @@
+// Copyright The GNU Toolchain Authors.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
@ -4621,6 +4627,9 @@
+asm (".hidden _ZSt16__insertion_sortIN9__gnu_cxx17__normal_iteratorIPNSt6chrono9time_zoneESt6vectorIS3_SaIS3_EEEENS0_5__ops15_Iter_comp_iterIZNSt6ranges8__detail16__make_comp_projINSB_4lessESt8identityEEDaRT_RT0_EUlOSG_OSI_E_EEEvSG_SG_SI_");
+asm (".hidden _ZSt16__insertion_sortIN9__gnu_cxx17__normal_iteratorIPNSt6chrono14time_zone_linkESt6vectorIS3_SaIS3_EEEENS0_5__ops15_Iter_comp_iterIZNSt6ranges8__detail16__make_comp_projINSB_4lessESt8identityEEDaRT_RT0_EUlOSG_OSI_E_EEEvSG_SG_SI_");
+asm (".hidden _ZZNSt6ranges8__detail16__make_comp_projINS_4lessEMNSt6chrono9time_zoneEKDoFSt17basic_string_viewIcSt11char_traitsIcEEvEEEDaRT_RT0_ENKUlOSB_OSD_E_clIRS4_SJ_EEbSF_SG_");
+#ifndef __s390x__
+asm (".hidden _ZSt25__unguarded_linear_insertIN9__gnu_cxx17__normal_iteratorIPNSt6chrono9time_zoneESt6vectorIS3_SaIS3_EEEENS0_5__ops14_Val_comp_iterIZNSt6ranges8__detail16__make_comp_projINSB_4lessEMS3_KDoFSt17basic_string_viewIcSt11char_traitsIcEEvEEEDaRT_RT0_EUlOSL_OSN_E_EEEvSL_SN_");
+#endif
+asm (".hidden _ZSt16__insertion_sortIN9__gnu_cxx17__normal_iteratorIPNSt6chrono9time_zoneESt6vectorIS3_SaIS3_EEEENS0_5__ops15_Iter_comp_iterIZNSt6ranges8__detail16__make_comp_projINSB_4lessEMS3_KDoFSt17basic_string_viewIcSt11char_traitsIcEEvEEEDaRT_RT0_EUlOSL_OSN_E_EEEvSL_SL_SN_");
+asm (".hidden _ZZNSt6ranges8__detail16__make_comp_projINS_4lessEMNSt6chrono14time_zone_linkEKDoFSt17basic_string_viewIcSt11char_traitsIcEEvEEEDaRT_RT0_ENKUlOSB_OSD_E_clIRS4_SJ_EEbSF_SG_");
+asm (".hidden _ZSt16__insertion_sortIN9__gnu_cxx17__normal_iteratorIPNSt6chrono14time_zone_linkESt6vectorIS3_SaIS3_EEEENS0_5__ops15_Iter_comp_iterIZNSt6ranges8__detail16__make_comp_projINSB_4lessEMS3_KDoFSt17basic_string_viewIcSt11char_traitsIcEEvEEEDaRT_RT0_EUlOSL_OSN_E_EEEvSL_SL_SN_");
@ -4655,8 +4664,6 @@
+asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6appendEPKcm");
+#endif
+#ifdef __i386__
+asm (".hidden _ZSt25__unguarded_linear_insertIN9__gnu_cxx17__normal_iteratorIPNSt6chrono9time_zoneESt6vectorIS3_SaIS3_EEEENS0_5__ops14_Val_comp_iterIZNSt6ranges8__detail16__make_comp_projINSB_4lessEMS3_KDoFSt17basic_string_viewIcSt11char_traitsIcEEvEEEDaRT_RT0_EUlOSL_OSN_E_EEEvSL_SN_");
+asm (".hidden _ZSt25__unguarded_linear_insertIN9__gnu_cxx17__normal_iteratorIPNSt6chrono14time_zone_linkESt6vectorIS3_SaIS3_EEEENS0_5__ops14_Val_comp_iterIZNSt6ranges8__detail16__make_comp_projINSB_4lessEMS3_KDoFSt17basic_string_viewIcSt11char_traitsIcEEvEEEDaRT_RT0_EUlOSL_OSN_E_EEEvSL_SN_");
+asm (".hidden _ZSt13__adjust_heapIN9__gnu_cxx17__normal_iteratorIPNSt6chrono14time_zone_linkESt6vectorIS3_SaIS3_EEEEiS3_NS0_5__ops15_Iter_comp_iterIZNSt6ranges8__detail16__make_comp_projINSB_4lessEMS3_KDoFSt17basic_string_viewIcSt11char_traitsIcEEvEEEDaRT_RT0_EUlOSL_OSN_E_EEEvSL_SN_SN_T1_T2_");
+asm (".hidden _ZSt13__adjust_heapIN9__gnu_cxx17__normal_iteratorIPNSt6chrono14time_zone_linkESt6vectorIS3_SaIS3_EEEEiS3_NS0_5__ops15_Iter_comp_iterIZNSt6ranges8__detail16__make_comp_projINSB_4lessESt8identityEEDaRT_RT0_EUlOSG_OSI_E_EEEvSG_SI_SI_T1_T2_");
+asm (".hidden _ZSt13__adjust_heapIN9__gnu_cxx17__normal_iteratorIPNSt6chrono9time_zoneESt6vectorIS3_SaIS3_EEEEiS3_NS0_5__ops15_Iter_comp_iterIZNSt6ranges8__detail16__make_comp_projINSB_4lessEMS3_KDoFSt17basic_string_viewIcSt11char_traitsIcEEvEEEDaRT_RT0_EUlOSL_OSN_E_EEEvSL_SN_SN_T1_T2_");
@ -4679,7 +4686,9 @@
+#ifndef __i386__
+asm (".hidden _ZNSt16_Sp_counted_baseILN9__gnu_cxx12_Lock_policyE2EE24_M_release_last_use_coldEv");
+#endif
+#ifdef __i386__
+asm (".hidden _ZSt23__atomic_wait_address_vIiZNKSt13__atomic_baseIiE4waitEiSt12memory_orderEUlvE_EvPKT_S4_T0_");
+#endif
+asm (".hidden _ZNSt16_Sp_counted_baseILN9__gnu_cxx12_Lock_policyE2EE10_M_releaseEv");
+asm (".hidden _ZNSt10unique_ptrINSt10filesystem7__cxx114path5_List5_ImplENS3_13_Impl_deleterEED2Ev");
+asm (".hidden _ZNSt10unique_ptrINSt10filesystem7__cxx114path5_List5_ImplENS3_13_Impl_deleterEED1Ev");
@ -7431,7 +7440,7 @@
} // namespace std
--- libstdc++-v3/src/nonshared17/floating_from_chars.cc.jj 2024-07-18 16:10:38.337406609 +0200
+++ libstdc++-v3/src/nonshared17/floating_from_chars.cc 2024-07-19 15:49:16.875331046 +0200
@@ -0,0 +1,49 @@
@@ -0,0 +1,51 @@
+// Copyright (C) 2019-2024 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
@ -7476,14 +7485,16 @@
+#endif
+#if defined(__i386__) || (defined(__powerpc__) && !defined(__powerpc64__))
+asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcENSt3pmr21polymorphic_allocatorIcEEE15_M_replace_coldEPcjPKcjj");
+#else
+#elif !defined(__s390x__) && !defined(__aarch64__)
+asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcENSt3pmr21polymorphic_allocatorIcEEE15_M_replace_coldEPcmPKcmm");
+#endif
+asm (".hidden _ZNSt8__detail31__from_chars_alnum_to_val_tableILb0EE5valueE");
+#if !defined(__s390x__)
+asm (".hidden _ZSt10from_charsIiLi0EESt17from_chars_resultPKcS2_RT_i");
+#endif
--- libstdc++-v3/src/nonshared17/floating_from_chars110.cc.jj 2024-07-18 16:10:38.337406609 +0200
+++ libstdc++-v3/src/nonshared17/floating_from_chars110.cc 2024-07-19 15:34:35.820500123 +0200
@@ -0,0 +1,36 @@
@@ -0,0 +1,45 @@
+// Copyright (C) 2019-2024 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
@ -7514,15 +7525,24 @@
+#if defined(__i386__) || (defined(__powerpc__) && !defined(__powerpc64__))
+asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcENSt3pmr21polymorphic_allocatorIcEEE15_M_replace_coldEPcjPKcjj");
+asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcENSt3pmr21polymorphic_allocatorIcEEE9_M_mutateEjjPKcj");
+#else
+#elif !defined(__s390x__) && !defined(__aarch64__)
+asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcENSt3pmr21polymorphic_allocatorIcEEE15_M_replace_coldEPcmPKcmm");
+asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcENSt3pmr21polymorphic_allocatorIcEEE9_M_mutateEmmPKcm");
+asm (".hidden _ZSt10from_charsIiLi0EESt17from_chars_resultPKcS2_RT_i");
+#endif
+asm (".hidden _ZNSt8__detail31__from_chars_alnum_to_val_tableILb0EE5valueE");
+#if defined(__powerpc64__)
+asm (".hidden _ZSt10from_charsPKcS0_Ru9__ieee128St12chars_format");
+//asm (".hidden _ZSt8to_charsPcS_u9__ieee128");
+//asm (".hidden _ZSt8to_charsPcS_u9__ieee128St12chars_format");
+//asm (".hidden _ZSt8to_charsPcS_u9__ieee128St12chars_formati");
+#endif
+#if defined(__aarch64__) || defined(__i386__)
+asm (".hidden _ZSt10from_charsIiLi0EESt17from_chars_resultPKcS2_RT_i");
+#endif
--- libstdc++-v3/src/nonshared17/cow-fs_ops.cc.jj 2024-07-18 16:10:38.337406609 +0200
+++ libstdc++-v3/src/nonshared17/cow-fs_ops.cc 2024-07-19 15:47:53.954382206 +0200
@@ -0,0 +1,81 @@
@@ -0,0 +1,82 @@
+// Copyright (C) 2019-2024 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
@ -7562,6 +7582,7 @@
+//asm (".hidden _ZSt8_DestroyISt15_Deque_iteratorINSt10filesystem4pathERS2_PS2_EEvT_S6_");
+asm (".hidden _ZNSsC1ISaIcEEEPKcRKS0_");
+asm (".hidden _ZNSsC2ISaIcEEEPKcRKS0_");
+//asm (".hidden _ZNSs4swapERSs");
+#ifndef __i386__
+//asm (".hidden _ZNSs9_M_mutateEmmm");
+asm (".hidden _ZNSt11_Deque_baseINSt10filesystem4pathESaIS1_EE17_M_initialize_mapEm");
@ -7590,7 +7611,7 @@
+//asm (".hidden _ZSt4moveISt15_Deque_iteratorINSt10filesystem4pathERS2_PS2_ES5_ET0_T_S7_S6_");
+#endif
+#if defined(__s390x__)
+asm (".hidden _ZSt16__do_uninit_copyINSt10filesystem4path8iteratorESt15_Deque_iteratorIS1_RS1_PS1_EET0_T_S8_S7_");
+//asm (".hidden _ZSt16__do_uninit_copyINSt10filesystem4path8iteratorESt15_Deque_iteratorIS1_RS1_PS1_EET0_T_S8_S7_");
+//asm (".hidden _ZSt4copyINSt10filesystem4path8iteratorESt15_Deque_iteratorIS1_RS1_PS1_EET0_T_S8_S7_");
+#endif
+#ifdef __aarch64__
@ -7602,8 +7623,8 @@
+#ifdef __powerpc64__
+//asm (".hidden _ZSt16__do_uninit_copyINSt10filesystem4path8iteratorESt15_Deque_iteratorIS1_RS1_PS1_EET0_T_S8_S7_");
+//asm (".hidden _ZSt4copyINSt10filesystem4path8iteratorESt15_Deque_iteratorIS1_RS1_PS1_EET0_T_S8_S7_");
+//asm (".hidden _ZNSs4swapERSs");
+#endif
+asm (".hidden _ZNSs4swapERSs");
--- libstdc++-v3/src/nonshared17/eh_call.cc.jj 2024-07-19 11:35:02.445197511 +0200
+++ libstdc++-v3/src/nonshared17/eh_call.cc 2024-07-19 11:35:36.630752991 +0200
@@ -0,0 +1,23 @@
@ -7676,7 +7697,7 @@
+std::__shared_ptr<fs::recursive_directory_iterator::_Dir_stack>::operator bool () const noexcept;
--- libstdc++-v3/src/nonshared17/cow-fs_path.cc.jj 2024-07-18 16:10:38.338406596 +0200
+++ libstdc++-v3/src/nonshared17/cow-fs_path.cc 2024-07-19 14:12:26.274350384 +0200
@@ -0,0 +1,131 @@
@@ -0,0 +1,132 @@
+// Copyright (C) 2019-2024 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
@ -7757,40 +7778,41 @@
+//asm (".hidden _ZZNSt10filesystem4path10_S_convertIwEEDaPKT_S4_EN5_UCvtD1Ev");
+//asm (".hidden _ZZNSt10filesystem4path10_S_convertIwEEDaPKT_S4_EN5_UCvtD2Ev");
+asm (".hidden _ZNKSt10filesystem4path5_List5_Impl4copyEv");
+//asm (".hidden _ZNSbIwSt11char_traitsIwESaIwEE12_M_leak_hardEv");
+//asm (".hidden _ZNSs12_M_leak_hardEv");
+//asm (".hidden _ZNSs4swapERSs");
+//asm (".hidden _ZNSs6appendERKSs");
+//asm (".hidden _ZNSt10filesystem4path5_List5beginEv");
+//asm (".hidden _ZNSt10filesystem4path7_Parser4nextEv");
+#ifndef __i386__
+asm (".hidden _ZNSt16_Sp_counted_baseILN9__gnu_cxx12_Lock_policyE2EE24_M_release_last_use_coldEv");
+asm (".hidden _ZNSbIwSt11char_traitsIwESaIwEE6resizeEmw");
+asm (".hidden _ZNSbIwSt11char_traitsIwESaIwEE7reserveEm");
+asm (".hidden _ZNSbIwSt11char_traitsIwESaIwEE9_M_mutateEmmm");
+asm (".hidden _ZNSs6insertEmPKcm");
+asm (".hidden _ZNSs6resizeEmc");
+asm (".hidden _ZNSs7reserveEm");
+asm (".hidden _ZNSs9_M_mutateEmmm");
+asm (".hidden _ZNSsC1ERKSsmm");
+asm (".hidden _ZNSsC2ERKSsmm");
+asm (".hidden _ZNSt10filesystem4pathD2Ev");
+asm (".hidden _ZSt16__do_str_codecvtISbIwSt11char_traitsIwESaIwEEcSt7codecvtIwc11__mbstate_tES5_MS6_KFNSt12codecvt_base6resultERS5_PKcSB_RSB_PwSD_RSD_EEbPKT0_SJ_RT_RKT1_RT2_RmT3_");
+//asm (".hidden _ZSt16__do_str_codecvtISbIwSt11char_traitsIwESaIwEEcSt7codecvtIwc11__mbstate_tES5_MS6_KFNSt12codecvt_base6resultERS5_PKcSB_RSB_PwSD_RSD_EEbPKT0_SJ_RT_RKT1_RT2_RmT3_");
+//asm (".hidden _ZNSbIwSt11char_traitsIwESaIwEE6resizeEmw");
+//asm (".hidden _ZNSs7reserveEm");
+//asm (".hidden _ZNSbIwSt11char_traitsIwESaIwEE7reserveEm");
+//asm (".hidden _ZNSsC1ERKSsmm");
+//asm (".hidden _ZNSbIwSt11char_traitsIwESaIwEE9_M_mutateEmmm");
+//asm (".hidden _ZNSs6insertEmPKcm");
+//asm (".hidden _ZNSs6resizeEmc");
+//asm (".hidden _ZNSs9_M_mutateEmmm");
+//asm (".hidden _ZNSsC2ERKSsmm");
+//asm (".hidden _ZNSt10filesystem4pathD1Ev");
+//asm (".hidden _ZSt16__do_str_codecvtISswSt7codecvtIwc11__mbstate_tES1_MS2_KFNSt12codecvt_base6resultERS1_PKwS7_RS7_PcS9_RS9_EEbPKT0_SF_RT_RKT1_RT2_RmT3_");
+#endif
+asm (".hidden _ZNSbIwSt11char_traitsIwESaIwEE12_M_leak_hardEv");
+asm (".hidden _ZNSt10filesystem4path5_List5beginEv");
+#ifndef __s390x__
+asm (".hidden _ZNSt10filesystem4path7_Parser4nextEv");
+#if defined(__aarch64__) || defined(__x86_64__)
+//asm (".hidden _ZNSt10filesystem4pathD2Ev");
+#endif
+asm (".hidden _ZNSt10filesystem4pathD1Ev");
+asm (".hidden _ZNSs12_M_leak_hardEv");
+#ifdef __i386__
+asm (".hidden _ZNSbIwSt11char_traitsIwESaIwEE6resizeEjw");
+asm (".hidden _ZNSbIwSt11char_traitsIwESaIwEE7reserveEj");
+asm (".hidden _ZNSbIwSt11char_traitsIwESaIwEE9_M_mutateEjjj");
+asm (".hidden _ZNSs6insertEjPKcj");
+asm (".hidden _ZNSs6resizeEjc");
+asm (".hidden _ZNSs7reserveEj");
+asm (".hidden _ZNSs9_M_mutateEjjj");
+asm (".hidden _ZNSsC1ERKSsjj");
+asm (".hidden _ZNSsC2ERKSsjj");
+asm (".hidden _ZSt16__do_str_codecvtISbIwSt11char_traitsIwESaIwEEcSt7codecvtIwc11__mbstate_tES5_MS6_KFNSt12codecvt_base6resultERS5_PKcSB_RSB_PwSD_RSD_EEbPKT0_SJ_RT_RKT1_RT2_RjT3_");
+//asm (".hidden _ZNSbIwSt11char_traitsIwESaIwEE6resizeEjw");
+//asm (".hidden _ZNSbIwSt11char_traitsIwESaIwEE7reserveEj");
+//asm (".hidden _ZNSbIwSt11char_traitsIwESaIwEE9_M_mutateEjjj");
+//asm (".hidden _ZNSs6insertEjPKcj");
+//asm (".hidden _ZNSs6resizeEjc");
+//asm (".hidden _ZNSs7reserveEj");
+//asm (".hidden _ZNSs9_M_mutateEjjj");
+//asm (".hidden _ZNSsC1ERKSsjj");
+//asm (".hidden _ZNSsC2ERKSsjj");
+//asm (".hidden _ZSt16__do_str_codecvtISbIwSt11char_traitsIwESaIwEEcSt7codecvtIwc11__mbstate_tES5_MS6_KFNSt12codecvt_base6resultERS5_PKcSB_RSB_PwSD_RSD_EEbPKT0_SJ_RT_RKT1_RT2_RjT3_");
+//asm (".hidden _ZSt16__do_str_codecvtISswSt7codecvtIwc11__mbstate_tES1_MS2_KFNSt12codecvt_base6resultERS1_PKwS7_RS7_PcS9_RS9_EEbPKT0_SF_RT_RKT1_RT2_RjT3_");
+#endif
+asm (".hidden _ZNSt10filesystem4path8_CodecvtIwED0Ev");
@ -7806,8 +7828,8 @@
+asm (".hidden _ZTVNSt10filesystem4path8_CodecvtIwEE");
+asm (".hidden _ZTVSt12codecvt_utf8IwLm1114111ELSt12codecvt_mode0EE");
+//asm (".hidden _ZNSt12_Destroy_auxILb0EE9__destroyIPNSt10filesystem4path5_CmptEEEvT_S6_");
+//asm (".hidden _ZNSt10filesystem4path5_CmptD1Ev");
+//asm (".hidden _ZNSt10filesystem4path5_CmptD2Ev");
+asm (".hidden _ZNSt10filesystem4path5_CmptD1Ev");
+asm (".hidden _ZNSt10filesystem4path5_CmptD2Ev");
--- libstdc++-v3/src/nonshared17/memory_resource.cc.jj 2024-07-18 16:10:38.338406596 +0200
+++ libstdc++-v3/src/nonshared17/memory_resource.cc 2024-07-19 15:51:23.442726588 +0200
@@ -0,0 +1,75 @@
@ -7878,7 +7900,7 @@
+#ifdef __powerpc64__
+//asm (".hidden _ZNSt3pmr15__pool_resource5_Pool10deallocateEPNS_15memory_resourceEPv");
+#endif
+asm (".hidden _ZNSt22__shared_mutex_pthread6unlockEv");
+//asm (".hidden _ZNSt22__shared_mutex_pthread6unlockEv");
+#if defined(__i386__) || (defined(__powerpc__) && !defined(__powerpc64__))
+asm (".hidden _ZNSt6vectorINSt3pmr15__pool_resource9_BigBlockENS0_21polymorphic_allocatorIS2_EEE17_M_realloc_appendIIRjS7_EEEvDpOT_");
+asm (".hidden _ZNSt6vectorINSt3pmr15__pool_resource9_BigBlockENS0_21polymorphic_allocatorIS2_EEE17_M_realloc_appendIJRjS7_EEEvDpOT_");
@ -7888,7 +7910,7 @@
+#endif
--- libstdc++-v3/src/nonshared17/fs_dir.cc.jj 2024-07-18 16:10:38.338406596 +0200
+++ libstdc++-v3/src/nonshared17/fs_dir.cc 2024-07-19 11:00:30.596051426 +0200
@@ -0,0 +1,105 @@
@@ -0,0 +1,103 @@
+// Copyright (C) 2019-2024 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
@ -7930,8 +7952,6 @@
+//asm (".hidden _ZNSt10filesystem9_Dir_baseC1EPKcbRSt10error_code");
+//asm (".hidden _ZNSt10filesystem9_Dir_baseC2EPKcbRSt10error_code");
+#endif
+asm (".hidden _ZNSt10filesystem7__cxx114pathC1INSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES1_EERKT_NS1_6formatE");
+asm (".hidden _ZNSt10filesystem7__cxx114pathC2INSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES1_EERKT_NS1_6formatE");
+asm (".hidden _ZNSt12__shared_ptrINSt10filesystem7__cxx1128recursive_directory_iterator10_Dir_stackELN9__gnu_cxx12_Lock_policyE2EE4swapERS6_");
+asm (".hidden _ZNSt12__shared_ptrINSt10filesystem7__cxx1128recursive_directory_iterator10_Dir_stackELN9__gnu_cxx12_Lock_policyE2EE5resetEv");
+asm (".hidden _ZNSt12__shared_ptrINSt10filesystem7__cxx1128recursive_directory_iterator10_Dir_stackELN9__gnu_cxx12_Lock_policyE2EEaSEOS6_");
@ -7991,7 +8011,7 @@
+asm (".hidden _ZNKSt10filesystem7__cxx1128recursive_directory_iterator10_Dir_stack12current_pathEv");
+asm (".hidden _ZNSt10filesystem7__cxx1128recursive_directory_iterator7__eraseEPSt10error_code");
+//asm (".hidden _ZNKSt10filesystem7__cxx114_Dir16dir_and_pathnameEv");
+asm (".hidden _ZNKSt10filesystem7__cxx114_Dir7currentEv");
+//asm (".hidden _ZNKSt10filesystem7__cxx114_Dir7currentEv");
+//asm (".hidden _ZNSt10filesystem7__cxx114_DirC1ERKNS0_4pathEbbbRSt10error_code");
+//asm (".hidden _ZNSt10filesystem7__cxx114_DirC2ERKNS0_4pathEbbbRSt10error_code");
--- libstdc++-v3/src/nonshared17/fs_ops80.cc.jj 2024-07-18 16:10:38.338406596 +0200
@ -8069,28 +8089,28 @@
+#endif
+#ifdef __aarch64__
+//asm (".hidden _ZSt4copyINSt10filesystem7__cxx114path8iteratorESt15_Deque_iteratorIS2_RS2_PS2_EET0_T_S9_S8_");
+asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE4swapERS4_");
+//asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE4swapERS4_");
+//asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6resizeEmc");
+#endif
+//asm (".hidden _ZNSt5dequeINSt10filesystem7__cxx114pathESaIS2_EE12emplace_backIIS2_EEERS2_DpOT_");
+//asm (".hidden _ZNSt5dequeINSt10filesystem7__cxx114pathESaIS2_EE12emplace_backIJS2_EEERS2_DpOT_");
+#ifdef __powerpc64__
+asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE4swapERS4_");
+//asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE4swapERS4_");
+//asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6resizeEmc");
+#endif
+#ifndef __i386__
+//asm (".hidden _ZNSt16_Sp_counted_baseILN9__gnu_cxx12_Lock_policyE2EE24_M_release_last_use_coldEv");
+#endif
+#if defined(__s390x__)
+asm (".hidden _ZSt16__do_uninit_copyINSt10filesystem7__cxx114path8iteratorESt15_Deque_iteratorIS2_RS2_PS2_EET0_T_S9_S8_");
+#if defined(__s390x__) || defined(__powerpc64__)
+//asm (".hidden _ZSt16__do_uninit_copyINSt10filesystem7__cxx114path8iteratorESt15_Deque_iteratorIS2_RS2_PS2_EET0_T_S9_S8_");
+//asm (".hidden _ZSt4copyINSt10filesystem7__cxx114path8iteratorESt15_Deque_iteratorIS2_RS2_PS2_EET0_T_S9_S8_");
+#endif
+#if defined(__x86_64__) || defined(__s390x__)
+asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE4swapERS4_");
+//asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE4swapERS4_");
+//asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6resizeEmc");
+#endif
+#ifdef __i386__
+asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE4swapERS4_");
+//asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE4swapERS4_");
+//asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6resizeEjc");
+//asm (".hidden _ZSt13move_backwardISt15_Deque_iteratorINSt10filesystem7__cxx114pathERS3_PS3_ES6_ET0_T_S8_S7_");
+//asm (".hidden _ZSt4moveISt15_Deque_iteratorINSt10filesystem7__cxx114pathERS3_PS3_ES6_ET0_T_S8_S7_");
@ -8102,7 +8122,7 @@
+#endif
--- libstdc++-v3/src/nonshared17/fs_path80.cc.jj 2024-07-18 16:10:38.338406596 +0200
+++ libstdc++-v3/src/nonshared17/fs_path80.cc 2024-07-19 13:52:03.082942673 +0200
@@ -0,0 +1,157 @@
@@ -0,0 +1,160 @@
+// Copyright (C) 2019-2024 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
@ -8192,8 +8212,11 @@
+#endif
+//asm (".hidden _ZNSt12_Destroy_auxILb0EE9__destroyIPNSt10filesystem7__cxx114path5_CmptEEEvT_S7_");
+asm (".hidden _ZNKSt10filesystem7__cxx114path5_List5_Impl4copyEv");
+#if defined(__aarch64__) || defined(__s390x__)
+//asm (".hidden _ZNSt10filesystem7__cxx114path5_List5beginEv");
+//asm (".hidden _ZNSt10filesystem7__cxx114path7_Parser4nextEv");
+#endif
+#ifdef __aarch64__
+asm (".hidden _ZNSt10filesystem7__cxx114path7_Parser4nextEv");
+asm (".hidden _ZNSt10filesystem7__cxx114path10_S_convertIwEEDaPKT_S5_"); // bad ppc64le
+#endif
+asm (".hidden _ZNSt10filesystem7__cxx114path8_CodecvtIwED2Ev");
@ -8215,35 +8238,35 @@
+asm (".hidden _ZNSt12system_errorC1ESt10error_codeRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE");
+asm (".hidden _ZNSt12system_errorC2ESt10error_codeRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE");
+//asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9_M_assignERKS4_");
+asm (".hidden _ZNSt10filesystem7__cxx114path5_List5beginEv");
+#ifndef __i386__
+asm (".hidden _ZNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEE6resizeEmw");
+//asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_replaceEmmPKcm");
+//asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9_M_appendEPKcm");
+asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6resizeEmc");
+//asm (".hidden _ZNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEE6resizeEmw");
+//asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6resizeEmc");
+//asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE7reserveEm");
+//asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9_M_mutateEmmPKcm");
+//asm (".hidden _ZNSt16_Sp_counted_baseILN9__gnu_cxx12_Lock_policyE2EE24_M_release_last_use_coldEv");
+//asm (".hidden _ZNSt12_Destroy_auxILb0EE9__destroyIPNSt10filesystem7__cxx114path5_CmptEEEvT_S7_");
+asm (".hidden _ZNKSt10filesystem7__cxx114path5_List5_Impl4copyEv");
+#endif
+#if defined(__aarch64__) || defined(__x86_64__)
+asm (".hidden _ZNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEE9_M_mutateEmmPKwm");
+#if defined(__aarch64__) || defined(__x86_64__)
+//asm (".hidden _ZNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEE9_M_mutateEmmPKwm");
+#endif
+#ifdef __powerpc64__
+asm (".hidden _ZNSt10filesystem7__cxx114path7_Parser4nextEv");
+//asm (".hidden _ZNSt10filesystem7__cxx114path5_List5beginEv");
+//asm (".hidden _ZNSt10filesystem7__cxx114path7_Parser4nextEv");
+#endif
+#ifdef __x86_64__
+asm (".hidden _ZNSt10filesystem7__cxx114path7_Parser4nextEv");
+//asm (".hidden _ZNSt10filesystem7__cxx114path5_List5beginEv");
+//asm (".hidden _ZNSt10filesystem7__cxx114path7_Parser4nextEv");
+#endif
+#ifdef __i386__
+asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6resizeEjc");
+asm (".hidden _ZNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEE9_M_mutateEjjPKwj");
+asm (".hidden _ZNSt10filesystem7__cxx114path7_Parser4nextEv");
+//asm (".hidden _ZNSt10filesystem7__cxx114path5_List5beginEv");
+//asm (".hidden _ZNSt10filesystem7__cxx114path7_Parser4nextEv");
+//asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_replaceEjjPKcj");
+//asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE7reserveEj");
+//asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9_M_appendEPKcj");
+asm (".hidden _ZNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEE6resizeEjw");
+//asm (".hidden _ZNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEE6resizeEjw");
+#endif
+asm (".hidden _ZNSt10filesystem7__cxx114path8_CodecvtIwED0Ev");
+asm (".hidden _ZNSt10filesystem7__cxx114path8_CodecvtIwED1Ev");
@ -8262,7 +8285,7 @@
+asm (".hidden _ZNSt10filesystem7__cxx114path19preferred_separatorE");
--- libstdc++-v3/src/nonshared17/cow-fs_dir.cc.jj 2024-07-18 16:10:38.338406596 +0200
+++ libstdc++-v3/src/nonshared17/cow-fs_dir.cc 2024-07-19 10:55:08.223216551 +0200
@@ -0,0 +1,103 @@
@@ -0,0 +1,107 @@
+// Copyright (C) 2019-2024 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
@ -8354,9 +8377,11 @@
+//asm (".hidden _ZNSt5dequeINSt10filesystem4_DirESaIS1_EE17_M_reallocate_mapEmb");
+asm (".hidden _ZNSt16_Sp_counted_baseILN9__gnu_cxx12_Lock_policyE2EE24_M_release_last_use_coldEv");
+#endif
+#ifndef __powerpc64__
+asm (".hidden _ZNSt10unique_ptrINSt10filesystem4path5_List5_ImplENS2_13_Impl_deleterEED1Ev");
+asm (".hidden _ZNSt10unique_ptrINSt10filesystem4path5_List5_ImplENS2_13_Impl_deleterEED2Ev");
+#endif
+#ifdef __i386__
+asm (".hidden _ZNSt10filesystem4pathD1Ev");
+asm (".hidden _ZNSt10filesystem4pathD2Ev");
+//asm (".hidden _ZNSt5dequeINSt10filesystem4_DirESaIS1_EE17_M_reallocate_mapEjb");
+#endif
+asm (".hidden _ZNKSt10filesystem4_Dir11open_subdirEbbRSt10error_code");
@ -8365,7 +8390,9 @@
+//asm (".hidden _ZNSt10filesystem4pathC1ISsS0_EERKT_NS0_6formatE");
+asm (".hidden _ZNSt10filesystem28recursive_directory_iterator7__eraseEPSt10error_code");
+//asm (".hidden _ZNKSt10filesystem4_Dir16dir_and_pathnameEv");
+asm (".hidden _ZNKSt10filesystem4_Dir7currentEv");
+//asm (".hidden _ZNSt10filesystem4pathD1Ev");
+//asm (".hidden _ZNSt10filesystem4pathD2Ev");
+//asm (".hidden _ZNKSt10filesystem4_Dir7currentEv");
--- libstdc++-v3/src/nonshared17/Makefile.am.jj 2024-07-18 16:10:38.338406596 +0200
+++ libstdc++-v3/src/nonshared17/Makefile.am 2024-07-19 13:32:17.104230472 +0200
@@ -0,0 +1,146 @@
@ -9515,7 +9542,7 @@
+#else
+asm (".hidden _ZNSt8__detail18__to_chars_10_implImEEvPcjT_");
+#endif
+#if !defined(__i386__)
+#if !defined(__i386__) && !defined(__s390x__)
+asm (".hidden _ZSt12__to_chars_iIoESt15to_chars_resultPcS1_T_i");
+#endif
--- libstdc++-v3/src/nonshared17/cow-string-inst110.cc.jj 2024-07-18 16:10:38.339406584 +0200
@ -9635,7 +9662,7 @@
+asm (".hidden _ZN10__cxxabiv111__terminateEPFvvE");
--- libstdc++-v3/src/nonshared17/floating_to_chars110.cc.jj 2024-07-18 16:10:38.340406571 +0200
+++ libstdc++-v3/src/nonshared17/floating_to_chars110.cc 2024-07-19 15:12:46.701074973 +0200
@@ -0,0 +1,30 @@
@@ -0,0 +1,41 @@
+// Copyright (C) 2019-2024 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
@ -9662,10 +9689,21 @@
+#include "../c++17/floating_to_chars.cc"
+//asm (".hidden _ZSt12__to_chars_iIoENSt9enable_ifIXsrSt5__or_IJS1_IJSt7is_sameINSt9remove_cvIT_E4typeEaES2_IS6_sES2_IS6_iES2_IS6_lES2_IS6_xES2_IS6_nEEES1_IJS2_IS6_hES2_IS6_tES2_IS6_jES2_IS6_mES2_IS6_yES2_IS6_oEEES2_IcS6_EEE5valueESt15to_chars_resultE4typeEPcSQ_S4_i");
+//asm (".hidden _ZSt12__to_chars_iIoENSt9enable_ifIXsrSt5__or_IIS1_IISt7is_sameINSt9remove_cvIT_E4typeEaES2_IS6_sES2_IS6_iES2_IS6_lES2_IS6_xES2_IS6_nEEES1_IIS2_IS6_hES2_IS6_tES2_IS6_jES2_IS6_mES2_IS6_yES2_IS6_oEEES2_IcS6_EEE5valueESt15to_chars_resultE4typeEPcSQ_S4_i");
+#if !defined(__s390x__) && !defined(__aarch64__)
+asm (".hidden _ZNSt8__detail18__to_chars_10_implIjEEvPcjT_");
+#if !defined(__i386__)
+#endif
+#if defined(__s390x__)
+asm (".hidden _ZNSt8__detail14__to_chars_lenIoEEjT_i");
+asm (".hidden _ZNSt8__detail18__to_chars_10_implIoEEvPcjT_");
+#endif
+#if !defined(__i386__) && !defined(__s390x__)
+asm (".hidden _ZSt12__to_chars_iIoESt15to_chars_resultPcS1_T_i");
+#endif
+#if defined(__powerpc64__)
+asm (".hidden _ZSt8to_charsPcS_u9__ieee128");
+asm (".hidden _ZSt8to_charsPcS_u9__ieee128St12chars_format");
+asm (".hidden _ZSt8to_charsPcS_u9__ieee128St12chars_formati");
+#endif
--- libstdc++-v3/src/nonshared17/string-inst110.cc.jj 2024-07-18 16:10:38.340406571 +0200
+++ libstdc++-v3/src/nonshared17/string-inst110.cc 2024-07-18 18:09:02.183561982 +0200
@@ -0,0 +1,37 @@

View File

@ -0,0 +1,56 @@
2025-01-20 Jakub Jelinek <jakub@redhat.com>
PR c++/118509
* typeck.cc (get_member_function_from_ptrfunc): Wrap force_target_expr
with save_expr.
* g++.dg/expr/pmf-4.C: New test.
--- gcc/cp/typeck.cc.jj 2025-01-09 10:10:28.042651891 +0100
+++ gcc/cp/typeck.cc 2025-01-20 15:09:24.200053590 +0100
@@ -4187,8 +4187,8 @@ get_member_function_from_ptrfunc (tree *
&& !DECL_P (instance_ptr)
&& !TREE_CONSTANT (instance_ptr)))
instance_ptr = instance_save_expr
- = force_target_expr (TREE_TYPE (instance_ptr), instance_ptr,
- complain);
+ = save_expr (force_target_expr (TREE_TYPE (instance_ptr),
+ instance_ptr, complain));
/* See above comment. */
if (TREE_SIDE_EFFECTS (function)
@@ -4196,7 +4196,8 @@ get_member_function_from_ptrfunc (tree *
&& !DECL_P (function)
&& !TREE_CONSTANT (function)))
function
- = force_target_expr (TREE_TYPE (function), function, complain);
+ = save_expr (force_target_expr (TREE_TYPE (function), function,
+ complain));
/* Start by extracting all the information from the PMF itself. */
e3 = pfn_from_ptrmemfunc (function);
--- gcc/testsuite/g++.dg/expr/pmf-4.C.jj
+++ gcc/testsuite/g++.dg/expr/pmf-4.C
@@ -0,0 +1,22 @@
+// PR c++/118509
+// { dg-do run }
+// { dg-options "-Wall -O2" }
+
+struct A { void foo () { a = 1; } int a; A () : a (0) {} };
+struct B : virtual A {};
+typedef void (A::*C) ();
+
+__attribute__((noipa)) void
+foo (C x, B *y)
+{
+ (y->*x) ();
+}
+
+int
+main ()
+{
+ B b;
+ foo (&A::foo, &b);
+ if (b.a != 1)
+ __builtin_abort ();
+}

View File

@ -0,0 +1,39 @@
From 021ccf9dee0c14455a205f2555326e027e9047d8 Mon Sep 17 00:00:00 2001
From: Richard Sandiford <richard.sandiford@arm.com>
Date: Wed, 16 Apr 2025 13:20:25 +0100
Subject: [PATCH] Make force_subreg emit nothing on failure
While adding more uses of force_subreg, I realised that it should
be more careful to emit no instructions on failure. This kind of
failure should be very rare, so I don't think it's a case worth
optimising for.
gcc/
* explow.cc (force_subreg): Emit no instructions on failure.
(cherry picked from commit 01044471ea39f9be4803c583ef2a946abc657f99)
---
gcc/explow.cc | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/gcc/explow.cc b/gcc/explow.cc
index f6843398c4b..bd93c878064 100644
--- a/gcc/explow.cc
+++ b/gcc/explow.cc
@@ -756,8 +756,12 @@ force_subreg (machine_mode outermode, rtx op,
if (x)
return x;
+ auto *start = get_last_insn ();
op = copy_to_mode_reg (innermode, op);
- return simplify_gen_subreg (outermode, op, innermode, byte);
+ rtx res = simplify_gen_subreg (outermode, op, innermode, byte);
+ if (!res)
+ delete_insns_since (start);
+ return res;
}
/* If X is a memory ref, copy its contents to a new temp reg and return
--
2.50.1

View File

@ -0,0 +1,67 @@
From b33e9eb8d404475a45a53afa3e3cc0ff742d75ec Mon Sep 17 00:00:00 2001
From: Richard Sandiford <richard.sandiford@arm.com>
Date: Wed, 16 Apr 2025 13:20:26 +0100
Subject: [PATCH] Add force_lowpart_subreg
optabs had a local function called lowpart_subreg_maybe_copy
that is very similar to the lowpart version of force_subreg.
This patch adds a force_lowpart_subreg wrapper around
force_subreg.
The only difference between the old and new functions is that
the old one asserted success while the new one doesn't.
It's common not to assert elsewhere when taking subregs;
normally a null result is enough.
Later patches will make more use of the new function.
gcc/
* explow.h (force_lowpart_subreg): Declare.
* explow.cc (force_lowpart_subreg): New function.
(cherry picked from commit 5f40d1c0cc6ce91ef28d326b8707b3f05e6f239c)
---
gcc/explow.cc | 14 ++++++++++++++
gcc/explow.h | 1 +
2 files changed, 15 insertions(+)
diff --git a/gcc/explow.cc b/gcc/explow.cc
index bd93c878064..2a91cf76ea6 100644
--- a/gcc/explow.cc
+++ b/gcc/explow.cc
@@ -764,6 +764,20 @@ force_subreg (machine_mode outermode, rtx op,
return res;
}
+/* Try to return an rvalue expression for the OUTERMODE lowpart of OP,
+ which has mode INNERMODE. Allow OP to be forced into a new register
+ if necessary.
+
+ Return null on failure. */
+
+rtx
+force_lowpart_subreg (machine_mode outermode, rtx op,
+ machine_mode innermode)
+{
+ auto byte = subreg_lowpart_offset (outermode, innermode);
+ return force_subreg (outermode, op, innermode, byte);
+}
+
/* If X is a memory ref, copy its contents to a new temp reg and return
that reg. Otherwise, return X. */
diff --git a/gcc/explow.h b/gcc/explow.h
index cbd1fcb7eb3..dd654649b06 100644
--- a/gcc/explow.h
+++ b/gcc/explow.h
@@ -43,6 +43,7 @@ extern rtx copy_to_suggested_reg (rtx, rtx, machine_mode);
extern rtx force_reg (machine_mode, rtx);
extern rtx force_subreg (machine_mode, rtx, machine_mode, poly_uint64);
+extern rtx force_lowpart_subreg (machine_mode, rtx, machine_mode);
/* Return given rtx, copied into a new temp reg if it was in memory. */
extern rtx force_not_mem (rtx);
--
2.50.1

View File

@ -0,0 +1,62 @@
From 9ce381170ed40874230db05111f8837475634e4b Mon Sep 17 00:00:00 2001
From: Tamar Christina <tamar.christina@arm.com>
Date: Mon, 28 Apr 2025 12:58:37 +0100
Subject: [PATCH] aarch64: force operand to fresh register to avoid subreg
issues [PR118892]
When the input is already a subreg and we try to make a paradoxical
subreg out of it for copysign this can fail if it violates the subreg
relationship.
Use force_lowpart_subreg instead of lowpart_subreg to then force the
results to a register instead of ICEing.
gcc/ChangeLog:
PR target/118892
* config/aarch64/aarch64.md (copysign<GPF:mode>3): Use
force_lowpart_subreg instead of lowpart_subreg.
gcc/testsuite/ChangeLog:
PR target/118892
* gcc.target/aarch64/copysign-pr118892.c: New test.
---
gcc/config/aarch64/aarch64.md | 2 +-
gcc/testsuite/gcc.target/aarch64/copysign-pr118892.c | 11 +++++++++++
2 files changed, 12 insertions(+), 1 deletion(-)
create mode 100644 gcc/testsuite/gcc.target/aarch64/copysign-pr118892.c
diff --git a/gcc/config/aarch64/aarch64.md b/gcc/config/aarch64/aarch64.md
index 95577b325ce..6a481059bf0 100644
--- a/gcc/config/aarch64/aarch64.md
+++ b/gcc/config/aarch64/aarch64.md
@@ -7210,7 +7210,7 @@ (define_expand "copysign<GPF:mode>3"
emit_insn (gen_iorv2<v_int_equiv>3 (
lowpart_subreg (V2<V_INT_EQUIV>mode, operands[0], <MODE>mode),
- lowpart_subreg (V2<V_INT_EQUIV>mode, operands[1], <MODE>mode),
+ force_lowpart_subreg (V2<V_INT_EQUIV>mode, operands[1], <MODE>mode),
v_bitmask));
DONE;
}
diff --git a/gcc/testsuite/gcc.target/aarch64/copysign-pr118892.c b/gcc/testsuite/gcc.target/aarch64/copysign-pr118892.c
new file mode 100644
index 00000000000..adfa30dc3e2
--- /dev/null
+++ b/gcc/testsuite/gcc.target/aarch64/copysign-pr118892.c
@@ -0,0 +1,11 @@
+/* { dg-do compile } */
+/* { dg-options "-Ofast" } */
+
+double l();
+double f()
+{
+ double t6[2] = {l(), l()};
+ double t7[2];
+ __builtin_memcpy(&t7, &t6, sizeof(t6));
+ return -__builtin_fabs(t7[1]);
+}
--
2.50.1

View File

@ -5,13 +5,13 @@ BuildRequires: scl-utils-build
%{?scl:%global __strip %%{_scl_root}/usr/bin/strip}
%{?scl:%global __objdump %%{_scl_root}/usr/bin/objdump}
%{?scl:%scl_package gcc}
%global DATE 20240801
%global gitrev 43d4666d3d94934f11857a2fb9122c575be81801
%global DATE 20250110
%global gitrev e525669e462dd777a1af9932fe9188937acdeb69
%global gcc_version 14.2.1
%global gcc_major 14
# Note, gcc_release must be integer, if you want to add suffixes to
# %%{release}, append them after %%{gcc_release} on Release: line.
%global gcc_release 1
%global gcc_release 12
%global nvptx_tools_gitrev 87ce9dc5999e5fca2e1d3478a30888d9864c9804
%global newlib_cygwin_gitrev d45261f62a15f8abd94a1031020b9a9f455e4eed
%global isl_version 0.24
@ -152,7 +152,7 @@ BuildRequires: scl-utils-build
Summary: GCC version %{gcc_major}
Name: %{?scl_prefix}gcc
Version: %{gcc_version}
Release: %{gcc_release}.1%{?dist}
Release: %{gcc_release}%{?dist}
# License notes for some of the less obvious ones:
# gcc/doc/cppinternals.texi: Linux-man-pages-copyleft-2-para
# isl: MIT, BSD-2-Clause
@ -231,8 +231,10 @@ BuildRequires: libzstd-devel
BuildRequires: glibc >= 2.3.90-35
%endif
%ifarch %{multilib_64_archs}
# Ensure glibc{,-devel} is installed for both multilib arches
BuildRequires: /lib/libc.so.6 /usr/lib/libc.so /lib64/libc.so.6 /usr/lib64/libc.so
BuildRequires: (glibc32 or glibc-devel(%{__isa_name}-32))
%endif
%ifarch sparcv9 ppc
BuildRequires: (glibc64 or glibc-devel(%{__isa_name}-64))
%endif
%ifarch ia64
BuildRequires: libunwind >= 0.98
@ -333,6 +335,7 @@ Patch9: gcc14-Wno-format-security.patch
Patch10: gcc14-rh1574936.patch
Patch11: gcc14-d-shared-libphobos.patch
Patch12: gcc14-pr101523.patch
Patch13: gcc14-pr118509.patch
Patch50: isl-rh2155127.patch
@ -360,6 +363,11 @@ Patch3015: 0018-Use-CXX11-ABI.patch
Patch3017: 0020-more-fixes.patch
Patch3018: 0021-libstdc++-disable-tests.patch
Patch4000: gcc14-RHEL-90244.patch
Patch4001: gcc14-pr118892-1.patch
Patch4002: gcc14-pr118892-2.patch
Patch4003: gcc14-pr118892-3.patch
%if 0%{?rhel} == 9
%global nonsharedver 110
%endif
@ -444,6 +452,8 @@ Summary: Fortran support for GCC %{gcc_major}
Requires: %{?scl_prefix}gcc%{!?scl:13} = %{version}-%{release}
Requires: libgfortran >= 8.1.1
Autoreq: true
Requires(post): /sbin/install-info
Requires(preun): /sbin/install-info
%if %{build_libquadmath}
%if 0%{!?scl:1}
@ -680,6 +690,7 @@ so that there cannot be any synchronization problems.
%patch -P10 -p0 -b .rh1574936~
%patch -P11 -p0 -b .d-shared-libphobos~
%patch -P12 -p1 -b .pr101523~
%patch -P13 -p0 -b .pr118509~
%patch -P100 -p1 -b .fortran-fdec-duplicates~
@ -720,6 +731,12 @@ touch -r isl-0.24/m4/ax_prog_cxx_for_build.m4 isl-0.24/m4/ax_prog_cc_for_build.m
%patch -P3017 -p1 -b .dts-test-17~
%patch -P3018 -p1 -b .dts-test-18~
# Bugfix backports.
%patch -P4000 -p1 -b .RHEL-90244~
%patch -P4001 -p1 -b .RHEL-pr118892-1~
%patch -P4002 -p1 -b .RHEL-pr118892-2~
%patch -P4003 -p1 -b .RHEL-pr118892-3~
find gcc/testsuite -name \*.pr96939~ | xargs rm -f
echo 'Red Hat %{version}-%{gcc_release}' > gcc/DEV-PHASE
@ -738,10 +755,8 @@ echo 'TM_H += $(srcdir)/config/rs6000/rs6000-modes.h' >> gcc/config/rs6000/t-rs6
LC_ALL=C sed -i -e 's/\xa0/ /' gcc/doc/options.texi
sed -i -e '/ldp_fusion/s/Init(1)/Init(0)/' gcc/config/aarch64/aarch64.opt
sed -i -e 's/Common Driver Var(flag_report_bug)/& Init(1)/' gcc/common.opt
sed -i -e 's/context->report_bug = false;/context->report_bug = true;/' gcc/diagnostic.cc
sed -i -e 's/m_report_bug = false;/m_report_bug = true;/' gcc/diagnostic.cc
%ifarch ppc
if [ -d libstdc++-v3/config/abi/post/powerpc64-linux-gnu ]; then
@ -776,6 +791,10 @@ rm -rf libgomp/testsuite/libgomp.fortran/pr90030.f90
rm -f libstdc++-v3/testsuite/30_threads/future/members/poll.cc
%endif
# Disable jQuery use (CVE-2020-11023).
sed -i '/^SEARCHENGINE/s/YES/NO/' libstdc++-v3/doc/doxygen/user.cfg.in
sed -i '/^GENERATE_TREEVIEW/s/YES/NO/' libstdc++-v3/doc/doxygen/user.cfg.in
%build
# Undo the broken autoconf change in recent Fedora versions
@ -1030,20 +1049,6 @@ make %{?_smp_mflags} BOOT_CFLAGS="$OPT_FLAGS" LDFLAGS_FOR_TARGET=-Wl,-z,relro,-z
make %{?_smp_mflags} BOOT_CFLAGS="$OPT_FLAGS" LDFLAGS_FOR_TARGET=-Wl,-z,relro,-z,now profiledbootstrap
%endif
echo '/* GNU ld script
Use the shared library, but some functions are only in
the static library, so try that secondarily. */
%{oformat}
INPUT ( %{?scl:%{_root_prefix}}%{!?scl:%{_prefix}}/%{_lib}/libstdc++.so.6 -lstdc++_nonshared%{nonsharedver} )' \
> %{gcc_target_platform}/libstdc++-v3/src/.libs/libstdc++_system.so
%if 0
# Relink libcc1 against -lstdc++_nonshared:
sed -i -e '/^postdeps/s/-lstdc++/-lstdc++_system/' libcc1/libtool
rm -f libcc1/libcc1.la
make -C libcc1 libcc1.la
%endif
CC="`%{gcc_target_platform}/libstdc++-v3/scripts/testsuite_flags --build-cc`"
CXX="`%{gcc_target_platform}/libstdc++-v3/scripts/testsuite_flags --build-cxx` `%{gcc_target_platform}/libstdc++-v3/scripts/testsuite_flags --build-includes`"
@ -1312,6 +1317,9 @@ cp -r -p $libstdcxx_doc_builddir/html ../rpm.doc/libstdc++-v3/html/api
mkdir -p %{buildroot}%{_mandir}/man3
cp -r -p $libstdcxx_doc_builddir/man/man3/* %{buildroot}%{_mandir}/man3/
find ../rpm.doc/libstdc++-v3 -name \*~ | xargs rm
# We don't want to ship jQuery in the libstdc++-docs package.
find ../rpm.doc/libstdc++-v3 -name jquery.js | xargs rm
find ../rpm.doc/libstdc++-v3/html -name '*.html' | xargs sed -i '/<script type="text.javascript" src="jquery.js"><.script>/d'
%endif
%ifarch sparcv9 sparc64
@ -1422,11 +1430,18 @@ echo '/* GNU ld script */
%{oformat}
INPUT ( %{?scl:%{_root_prefix}}%{!?scl:%{_prefix}}/%{_lib}/libgomp.so.1 )' > libgomp.so
%define libstdcxx_so %{?scl:%{_root_prefix}}%{!?scl:%{_prefix}}/%{_lib}/libstdc++.so.6
%define libstdcxx_so_link INPUT ( %{libstdcxx_so} -lstdc++_nonshared AS_NEEDED (%{libstdcxx_so}) )
%define libstdcxx64_so %{?scl:%{_root_prefix}}%{!?scl:%{_prefix}}/lib64/libstdc++.so.6
%define libstdcxx64_so_link INPUT ( %{libstdcxx64_so} -lstdc++_nonshared AS_NEEDED (%{libstdcxx64_so}) )
%define libstdcxx32_so %{?scl:%{_root_prefix}}%{!?scl:%{_prefix}}/lib/libstdc++.so.6
%define libstdcxx32_so_link INPUT ( %{libstdcxx32_so} -lstdc++_nonshared AS_NEEDED (%{libstdcxx32_so}) )
echo '/* GNU ld script
Use the shared library, but some functions are only in
the static library, so try that secondarily. */
%{oformat}
INPUT ( %{?scl:%{_root_prefix}}%{!?scl:%{_prefix}}/%{_lib}/libstdc++.so.6 -lstdc++_nonshared )' > libstdc++.so
%{libstdcxx_so_link}' > libstdc++.so
rm -f libgfortran.so
echo '/* GNU ld script
Use the shared library, but some functions are only in
@ -1522,7 +1537,7 @@ echo '/* GNU ld script
Use the shared library, but some functions are only in
the static library, so try that secondarily. */
%{oformat2}
INPUT ( %{?scl:%{_root_prefix}}%{!?scl:%{_prefix}}/lib64/libstdc++.so.6 -lstdc++_nonshared )' > 64/libstdc++.so
%{libstdcxx64_so_link}' > 64/libstdc++.so
rm -f 64/libgfortran.so
echo '/* GNU ld script
Use the shared library, but some functions are only in
@ -1610,7 +1625,7 @@ echo '/* GNU ld script
Use the shared library, but some functions are only in
the static library, so try that secondarily. */
%{oformat2}
INPUT ( %{?scl:%{_root_prefix}}%{!?scl:%{_prefix}}/lib/libstdc++.so.6 -lstdc++_nonshared )' > 32/libstdc++.so
%{libstdcxx32_so_link}' > 32/libstdc++.so
rm -f 32/libgfortran.so
echo '/* GNU ld script
Use the shared library, but some functions are only in
@ -1910,7 +1925,7 @@ echo '/* GNU ld script
Use the shared library, but some functions are only in
the static library, so try that secondarily. */
%{oformat}
INPUT ( %{?scl:%{_root_prefix}}%{!?scl:%{_prefix}}/%{_lib}/libstdc++.so.6 -lstdc++_nonshared )' \
%{libstdcxx_so_link}' \
> %{gcc_target_platform}/libstdc++-v3/src/.libs/libstdc++.so
cp -a %{gcc_target_platform}/libstdc++-v3/src/.libs/libstdc++_nonshared%{nonsharedver}.a \
%{gcc_target_platform}/libstdc++-v3/src/.libs/libstdc++_nonshared.a
@ -2787,6 +2802,75 @@ fi
%endif
%changelog
* Thu Sep 4 2025 Siddhesh Poyarekar <siddhesh@redhat.com> 14.2.1-12
- Fix glibc32 dependency (RHEL-112209)
* Wed Aug 27 2025 Siddhesh Poyarekar <siddhesh@redhat.com> 14.2.1-11
- Fix ICE in rebuild_jump_labels on aarch64-linux-gnu (RHEL-106790)
* Wed May 28 2025 Siddhesh Poyarekar <siddhesh@redhat.com> 14.2.1-10
- Put the libstdc++ AS_NEEDED in the right places (RHEL-84679)
* Thu May 22 2025 Siddhesh Poyarekar <siddhesh@redhat.com> 14.2.1-9
- Add AS_NEEDED libstdc++.so.6 when only needed through libstdc++_nonshared
(RHEL-84679)
* Thu May 22 2025 Siddhesh Poyarekar <siddhesh@redhat.com> 14.2.1-8
- libstdc++: Fix -Warray-bounds warning in std::vector<bool> (RHEL-90244)
* Fri Feb 7 2025 Marek Polacek <polacek@redhat.com> 14.2.1-7.1
- disable jQuery use, don't ship jquery.js (CVE-2020-11023, RHEL-78387)
* Wed Jan 22 2025 Marek Polacek <polacek@redhat.com> 14.2.1-7
- update from releases/gcc-14 branch (RHEL-74061)
- PRs ada/113036, ada/113868, ada/115917, ada/117328, ada/117996,
analyzer/115724, c/117641, c/117745, c/117802, c++/100358, c++/101463,
c++/102594, c++/109859, c++/113108, c++/114854, c++/115008,
c++/115430, c++/115657, c++/116108, c++/116634, c++/117158,
c++/117317, c++/117614, c++/117615, c++/117792, c++/117825,
c++/117845, c++/117880, c++/117925, c++/117985, c++/118060,
c++/118069, driver/117942, fortran/84674, fortran/84869,
fortran/105054, fortran/109105, fortran/109345, fortran/115070,
fortran/115348, fortran/116388, fortran/117730, fortran/117763,
fortran/117774, fortran/117791, fortran/117797, fortran/117819,
fortran/117820, fortran/117843, fortran/117897, libgomp/117851,
libstdc++/89624, libstdc++/106212, libstdc++/106676, libstdc++/108236,
libstdc++/109517, libstdc++/109976, libstdc++/112349,
libstdc++/112641, libstdc++/117520, libstdc++/117560,
libstdc++/117822, libstdc++/117962, libstdc++/117966,
libstdc++/118035, libstdc++/118093, middle-end/43374,
middle-end/102674, middle-end/116997, middle-end/117433,
middle-end/117458, middle-end/117459, middle-end/117847,
middle-end/118024, modula2/114529, modula2/115003, modula2/115057,
modula2/115164, modula2/115276, modula2/115328, modula2/115536,
modula2/115540, modula2/115804, modula2/115823, modula2/115957,
modula2/116048, modula2/116181, modula2/116378, modula2/116557,
modula2/116918, modula2/117120, modula2/117371, modula2/117555,
modula2/117660, modula2/117904, modula2/117948, other/116603,
preprocessor/117118, rtl-optimization/113994, rtl-optimization/116799,
rtl-optimization/117095, sanitizer/117960, target/64242,
target/114801, target/114942, target/116371, target/116629,
target/116999, target/117045, target/117105, target/117304,
target/117357, target/117408, target/117418, target/117443,
target/117500, target/117525, target/117562, target/117564,
target/117642, target/117659, target/117675, target/117744,
target/117926, testsuite/103298, testsuite/109360,
tree-optimization/94589, tree-optimization/112376,
tree-optimization/116463, tree-optimization/117142,
tree-optimization/117254, tree-optimization/117307,
tree-optimization/117333, tree-optimization/117398,
tree-optimization/117417, tree-optimization/117439,
tree-optimization/117574, tree-optimization/117594,
tree-optimization/117612, tree-optimization/117912
- fix up -freport-bug default (#2330362, RHEL-70192)
- revert -mearly-ldp-fusion and -mlate-ldp-fusion default to enabled on
aarch64 to match upstream (RHEL-74059)
- consider TARGET_EXPR invariant like SAVE_EXPR (PR c++/118509)
- have gfortran require install-info (RHEL-62417)
* Thu Aug 22 2024 Marek Polacek <polacek@redhat.com> 14.2.1-1.2
- bump NVR (RHEL-53492)
* Tue Aug 13 2024 Marek Polacek <polacek@redhat.com> 14.2.1-1.1
- do not hide _ZSt21ios_base_library_initv

View File

@ -1,6 +0,0 @@
--- !Policy
product_versions:
- rhel-8
decision_context: osci_compose_gate
rules:
- !PassingTestCaseRule {test_case_name: baseos-ci.brew-build.tier1.functional}

View File

@ -1,4 +0,0 @@
SHA512 (gcc-14.2.1-20240801.tar.xz) = b21f0bfd5767d0ecb9c08ba3e3a605a841d4c6a6008bf9dd8b4c4da366d7e733600eb21095768bda91e5df6536c398bf4a941e44577aef7586e95f1d148a214f
SHA512 (isl-0.24.tar.bz2) = aab3bddbda96b801d0f56d2869f943157aad52a6f6e6a61745edd740234c635c38231af20bc3f1a08d416a5e973a90e18249078ed8e4ae2f1d5de57658738e95
SHA512 (newlib-cygwin-d45261f62a15f8abd94a1031020b9a9f455e4eed.tar.xz) = 31bfc19429797236e268e22b752c5abeabb9c0f39b1058634af8dab329b4f028fc72a35888193c9575f6cee5cf2c069669d79fcb4d4e3a4318f57413452f707d
SHA512 (nvptx-tools-87ce9dc5999e5fca2e1d3478a30888d9864c9804.tar.xz) = 941e763af8601b89f0e4ec48a2d68ae0a8e70ee1e6ba6859394b021ad7bd7d143cc529f3c35c08d7f84e5554980ddcc97cf05b6c4755c2bc36c91161b79e8cea