Compare commits

...

No commits in common. "a10s" and "c9s" have entirely different histories.
a10s ... c9s

5 changed files with 61 additions and 136 deletions

View File

@ -1,6 +1,6 @@
--- !Policy
product_versions:
- rhel-10
- rhel-9
decision_context: osci_compose_gate
rules:
- !PassingTestCaseRule {test_case_name: baseos-ci.brew-build.gate-build-fast-lane.functional}

View File

@ -180,7 +180,7 @@ BuildRequires: gcc-toolset-%{gts_ver}-devel
Summary: GCC version %{gcc_major}
Name: %{?scl_prefix}gcc
Version: %{gcc_version}
Release: %{gcc_release}.1%{?dist}.alma.2
Release: %{gcc_release}.2%{?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
@ -394,10 +394,6 @@ Patch3015: 0018-Use-CXX11-ABI.patch
Patch3017: 0020-more-fixes.patch
Patch3018: 0021-libstdc++-disable-tests.patch
# AlmaLinux Patch
Patch9001: gcc16-riscv64-extfloat.patch
Patch9002: gcc16-nonshared-hidden.patch
%if 0%{?rhel} == 10
%global nonsharedver 140
%endif
@ -789,10 +785,6 @@ 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~
# Applying AlmaLinux Patch
%patch -P9001 -p1 -b .gcc16-riscv64-extfloat
%patch -P9002 -p1 -b .gcc16-nonshared-hidden
find gcc/testsuite -name \*.pr96939~ | xargs rm -f
echo 'Red Hat %{version}-%{gcc_release}' > gcc/DEV-PHASE
@ -1062,11 +1054,7 @@ CONFIGURE_OPTS="\
%ifarch x86_64
%if 0%{?rhel} > 8
%if 0%{?rhel} > 9
%ifarch x86_64_v2
--with-arch_64=x86-64-v2 \
%else
--with-arch_64=x86-64-v3 \
%endif
%else
--with-arch_64=x86-64-v2 \
%endif
@ -1950,24 +1938,16 @@ mkdir -p %{buildroot}%{_root_infodir}
%if %{build_libasan}
chmod 755 %{buildroot}%{_prefix}/%{_lib}/libasan.so.8.*
%if 0%{?scl:1}
%if 0%{?rhel} < 10
mkdir -p %{buildroot}%{_root_prefix}/%{_lib}/
mv %{buildroot}%{_prefix}/%{_lib}/libasan.so.8* %{buildroot}%{_root_prefix}/%{_lib}/
%else
rm -f %{buildroot}%{_prefix}/%{_lib}/libasan.so.8*
%endif
mkdir -p %{buildroot}%{_root_infodir}
%endif
%endif
%if %{build_libtsan}
chmod 755 %{buildroot}%{_prefix}/%{_lib}/libtsan.so.2.*
%if 0%{?scl:1}
%if 0%{?rhel} < 10
mkdir -p %{buildroot}%{_root_prefix}/%{_lib}/
mv %{buildroot}%{_prefix}/%{_lib}/libtsan.so.2* %{buildroot}%{_root_prefix}/%{_lib}/
%else
rm -f %{buildroot}%{_prefix}/%{_lib}/libtsan.so.2*
%endif
mkdir -p %{buildroot}%{_root_infodir}
%endif
%endif
@ -1986,12 +1966,8 @@ mkdir -p %{buildroot}%{_root_infodir}
%endif
%if %{build_libhwasan}
chmod 755 %{buildroot}%{_prefix}/%{_lib}/libhwasan.so.0.*
%if 0%{?rhel} < 10
mkdir -p %{buildroot}%{_root_prefix}/%{_lib}/
mv %{buildroot}%{_prefix}/%{_lib}/libhwasan.so.0* %{buildroot}%{_root_prefix}/%{_lib}/
%else
rm -f %{buildroot}%{_prefix}/%{_lib}/libhwasan.so.0*
%endif
mkdir -p %{buildroot}%{_root_infodir}
%endif
%if %{build_liblsan}
@ -3079,16 +3055,13 @@ fi
%endif
%changelog
* Fri Aug 14 2026 Eduard Abdullin <eabdullin@almalinux.org> - 16.1.1-4.1.alma.2
- Fix compilation on RISC-V
- Use 32-bit manglings in the libstdc++ nonshared .hidden list (fixes i686)
- Do not assert .hidden on a libstdc++ instantiation that is not emitted below
x86-64-v3 (fixes x86_64_v2)
- Set --with-arch_64=x86-64-v2 on v2 arch
* Mon Jul 27 2026 Marek Polacek <polacek@redhat.com> 16.1.1-4.2
- adjust libstdc++_nonshared symbols on i686 (RHEL-212570)
* Tue Jul 14 2026 Marek Polacek <polacek@redhat.com> 16.1.1-4.1
- fix gating problems
- fix asneeded libraries
- fix gating problems (RHEL-194141)
- adjust libstdc++_nonshared symbols (RHEL-194261)
- fix asneeded libraries (RHEL-194145)
- add libgdiagnostics and libgdiagnostics-devel
* Mon Jul 6 2026 Marek Polacek <polacek@redhat.com> 16.1.1-4
@ -3126,10 +3099,10 @@ fi
tree-optimization/125553, tree-optimization/125646,
tree-optimization/125652, tree-optimization/125686,
tree-optimization/125774, tree-optimization/125776
- don't remove openacc tests for s390x and ppc64le (RHEL-181820)
- don't remove openacc tests for s390x and ppc64le (RHEL-183931)
* Wed Jun 17 2026 Marek Polacek <polacek@redhat.com> 16.1.1-3
- new package (RHEL-169581)
- new package (RHEL-160025)
* Mon Jun 16 2025 Marek Polacek <polacek@redhat.com> 15.1.1-2.4
- ship libstdc++.modules.json (RHEL-97095)

View File

@ -5311,7 +5311,7 @@
+#include "../c++11/assert_fail.cc"
--- libstdc++-v3/src/nonshared20/tzdb110.cc.jj 2026-05-27 14:24:38.182663933 +0200
+++ libstdc++-v3/src/nonshared20/tzdb110.cc 2026-05-29 13:49:44.515616477 +0200
@@ -0,0 +1,41 @@
@@ -0,0 +1,56 @@
+// Copyright The GNU Toolchain Authors.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
@ -5336,15 +5336,25 @@
+
+#define _GLIBCXX_NONSHARED_CXX11_110
+#include "tzdb80.cc"
+asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_disposeEv");
+asm (".hidden _ZNSt7__cxx1115basic_stringbufIcSt11char_traitsIcESaIcEED0Ev");
+asm (".hidden _ZNSt7__cxx1115basic_stringbufIcSt11char_traitsIcESaIcEED1Ev");
+asm (".hidden _ZNSt7__cxx1115basic_stringbufIcSt11char_traitsIcESaIcEED2Ev");
+asm (".hidden _ZGVNSt8__format11_ChronoDataIcE7_S_argsE");
+asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC1EOS4_");
+asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2EOS4_");
+asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9_M_assignERKS4_");
+#ifndef __powerpc64__
+//asm (".hidden _ZSt23__atomic_wait_address_vIiZNKSt13__atomic_baseIiE4waitEiSt12memory_orderEUlvE_EvPKT_S4_T0_");
+#endif
+#ifndef __i386__
+asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE7reserveEm");
+asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9_M_mutateEmmPKcm");
+#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_");
+//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 _ZNSt6chrono14year_month_day12_S_from_daysERKNS_8durationIxSt5ratioILx86400ELx1EEEE");
+asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE7reserveEj");
+asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9_M_mutateEjjPKcj");
+#endif
+asm (".hidden _ZZNSt19_Sp_make_shared_tag5_S_tiEvE5__tag");
+asm (".hidden _ZTSSt19_Sp_make_shared_tag");
@ -5353,6 +5363,11 @@
+asm (".hidden _ZTISt11_Mutex_baseILN9__gnu_cxx12_Lock_policyE2EE");
+asm (".hidden _ZTSSt16_Sp_counted_baseILN9__gnu_cxx12_Lock_policyE2EE");
+asm (".hidden _ZTISt16_Sp_counted_baseILN9__gnu_cxx12_Lock_policyE2EE");
+#ifndef __s390x__
+asm (".hidden _ZNSt6ranges8__detail13__heap_selectIN9__gnu_cxx17__normal_iteratorIPNSt6chrono9time_zoneESt6vectorIS5_SaIS5_EEEENS0_10_Comp_projINS_4lessEMS5_KDoFSt17basic_string_viewIcSt11char_traitsIcEEvEEEEEvT_SK_SK_T0_");
+#else
+asm (".hidden _ZNSt6ranges8__detail14__partial_sortIN9__gnu_cxx17__normal_iteratorIPNSt6chrono9time_zoneESt6vectorIS5_SaIS5_EEEENS0_10_Comp_projINS_4lessEMS5_KDoFSt17basic_string_viewIcSt11char_traitsIcEEvEEEEEvT_SK_SK_T0_");
+#endif
--- libstdc++-v3/src/nonshared20/sstream-inst80.cc.jj 2026-05-27 14:24:38.182736120 +0200
+++ libstdc++-v3/src/nonshared20/sstream-inst80.cc 2026-05-29 13:49:44.515616477 +0200
@@ -0,0 +1,34 @@
@ -6727,7 +6742,7 @@
+#include "../c++20/syncbuf.cc"
--- libstdc++-v3/src/nonshared20/format-inst.cc.jj 2026-05-29 12:21:56.785794864 +0200
+++ libstdc++-v3/src/nonshared20/format-inst.cc 2026-05-29 15:47:17.971961538 +0200
@@ -0,0 +1,232 @@
@@ -0,0 +1,239 @@
+// Definitions for <format> -*- C++ -*-
+
+// Copyright The GNU Toolchain Authors.
@ -6753,30 +6768,15 @@
+// <http://www.gnu.org/licenses/>.
+
+#include "../c++20/format-inst.cc"
+#if defined(__x86_64__) || defined(__aarch64__) || defined(__powerpc64__)
+asm (".hidden _ZNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEEaSEOS4_");
+asm (".hidden _ZNSt8__detail13__to_chars_16ImEESt15to_chars_resultPcS2_T_");
+#else
+asm (".hidden _ZNSt8__detail18__to_chars_10_implImEEvPcjT_");
+#endif
+#if defined(__x86_64__)
+asm (".hidden _ZNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEE22__resize_and_overwriteIZNKSt8__format14__formatter_fpIwE11_M_localizeESt17basic_string_viewIwS2_EcRKSt6localeEUlPwmE_EEvmT_");
+asm (".hidden _ZNSt8__detail13__to_chars_16IjEESt15to_chars_resultPcS2_T_");
+#endif
+asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_disposeEv");
+asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE15_M_replace_coldEPcmPKcmm");
+asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE7reserveEm");
+asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9_M_mutateEmmPKcm");
+asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9push_backEc");
+asm (".hidden _ZNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEE10_M_disposeEv");
+asm (".hidden _ZNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEE15_M_replace_coldEPwmPKwmm");
+asm (".hidden _ZNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEE9_M_mutateEmmPKwm");
+asm (".hidden _ZNKSt8__format5_SinkIwE13_M_discardingEv");
+asm (".hidden _ZNKSt8__format5_SinkIcE13_M_discardingEv");
+asm (".hidden _ZNKSt8__format13_Padding_sinkINS_10_Sink_iterIcEEcE13_M_discardingEv");
+asm (".hidden _ZNKSt8__format13_Padding_sinkINS_10_Sink_iterIwEEwE13_M_discardingEv");
+asm (".hidden _ZNSt8__format14_Fixedbuf_sinkIcE11_M_overflowEv");
+asm (".hidden _ZNSt8__format14_Fixedbuf_sinkIwE11_M_overflowEv");
+asm (".hidden _ZNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEE10_M_disposeEv");
+asm (".hidden _ZNSt12format_errorD2Ev");
+asm (".hidden _ZTVSt12format_error");
+asm (".hidden _ZNSt12format_errorD1Ev");
@ -6793,6 +6793,12 @@
+asm (".hidden _ZNSt8__format29__failed_to_parse_format_specEv");
+asm (".hidden _ZNSt8__detail18__to_chars_10_implIjEEvPcjT_");
+asm (".hidden _ZNSt8__detail18__to_chars_10_implIyEEvPcjT_");
+#if defined(__x86_64__)
+asm (".hidden _ZNSt8__detail13__to_chars_16IjEESt15to_chars_resultPcS2_T_");
+#endif
+#if defined(__x86_64__) || defined(__powerpc64__) || defined(__aarch64__)
+asm (".hidden _ZNSt8__detail13__to_chars_16ImEESt15to_chars_resultPcS2_T_");
+#endif
+asm (".hidden _ZNSt16basic_format_argISt20basic_format_contextINSt8__format10_Sink_iterIcEEcEE8_M_visitIZNS1_15__do_vformat_toIcLj1EEENS2_IT_EES9_St17basic_string_viewIS8_St11char_traitsIS8_EERS0_IS9_S8_EEUlRS8_E_EEDcOS8_NS1_6_Arg_tE");
+asm (".hidden _ZNSt8__format5_SpecIwE27_S_parse_width_or_precisionEPKwS3_RtRbRSt26basic_format_parse_contextIwE");
+asm (".hidden _ZNSt8__format5_SpecIwE14_M_parse_widthEPKwS3_RSt26basic_format_parse_contextIwE");
@ -6811,11 +6817,11 @@
+//asm (".hidden _ZNSt8__format5_SinkIcE8_M_writeEc");
+asm (".hidden _ZNKSt8__format14__formatter_fpIcE6formatIfNS_10_Sink_iterIcEEEENSt20basic_format_contextIT0_cE8iteratorET_RS7_");
+asm (".hidden _ZNKSt8__format14__formatter_fpIcE6formatIdNS_10_Sink_iterIcEEEENSt20basic_format_contextIT0_cE8iteratorET_RS7_");
+#if defined(__x86_64__) || defined(__aarch64__)
+#if defined(__i386__) || defined(__x86_64__) || defined(__aarch64__)
+asm (".hidden _ZNKSt8__format14__formatter_fpIcE6formatIeNS_10_Sink_iterIcEEEENSt20basic_format_contextIT0_cE8iteratorET_RS7_");
+asm (".hidden _ZNKSt8__format14__formatter_fpIwE6formatIeNS_10_Sink_iterIwEEEENSt20basic_format_contextIT0_wE8iteratorET_RS7_");
+#endif
+#if defined(__x86_64__) || defined(__s390x__) || defined(__powerpc64__)
+#if !defined(__aarch64__)
+asm (".hidden _ZNKSt8__format14__formatter_fpIcE6formatIgNS_10_Sink_iterIcEEEENSt20basic_format_contextIT0_cE8iteratorET_RS7_");
+asm (".hidden _ZNKSt8__format14__formatter_fpIwE6formatIgNS_10_Sink_iterIwEEEENSt20basic_format_contextIT0_wE8iteratorET_RS7_");
+#endif
@ -6831,7 +6837,6 @@
+asm (".hidden _ZNSt8__format19_Formatting_scannerINS_10_Sink_iterIwEEwE11_M_on_charsEPKw");
+asm (".hidden _ZNKSt8__format14__formatter_fpIwE6formatIfNS_10_Sink_iterIwEEEENSt20basic_format_contextIT0_wE8iteratorET_RS7_");
+asm (".hidden _ZNKSt8__format14__formatter_fpIwE6formatIdNS_10_Sink_iterIwEEEENSt20basic_format_contextIT0_wE8iteratorET_RS7_");
+//asm (".hidden _ZNKSt8__format14__formatter_fpIwE6formatIgNS_10_Sink_iterIwEEEENSt20basic_format_contextIT0_wE8iteratorET_RS7_");
+//asm (".hidden _ZNKSt9__unicode9__v16_0_022_Grapheme_cluster_viewISt17basic_string_viewIcSt11char_traitsIcEEE9_Iterator11_M_is_breakENS0_13_Gcb_propertyES8_NS_13_Utf_iteratorIcDiPKcSB_NS_5_ReplEEE");
+asm (".hidden _ZNSt9__unicode9__v16_0_022_Grapheme_cluster_viewISt17basic_string_viewIcSt11char_traitsIcEEE9_IteratorppEv");
+asm (".hidden _ZNSt8__format13_Padding_sinkINS_10_Sink_iterIcEEcE15_M_force_updateEv");
@ -6960,6 +6965,23 @@
+asm (".hidden _ZSt14__add_groupingIcEPT_S1_S0_PKcmPKS0_S5_");
+asm (".hidden _ZSt14__add_groupingIwEPT_S1_S0_PKcmPKS0_S5_");
+#endif
+#ifndef __i386__
+asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE7reserveEm");
+asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9_M_mutateEmmPKcm");
+asm (".hidden _ZNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEE9_M_mutateEmmPKwm");
+#endif
+#ifndef __s390x__
+asm (".hidden _ZNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEEaSEOS4_");
+#else
+asm (".hidden _ZNSt8__detail18__to_chars_10_implImEEvPcjT_");
+#endif
+#ifdef __i386__
+asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9_M_mutateEjjPKcj");
+asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE7reserveEj");
+//asm (".hidden _ZNSt6ranges8__detail13__heap_selectIN9__gnu_cxx17__normal_iteratorIPNSt6chrono9time_zoneESt6vectorIS5_SaIS5_EEEENS0_10_Comp_projINS_4lessEMS5_KDoFSt17basic_string_viewIcSt11char_traitsIcEEvEEEEEvT_SK_SK_T0_");
+asm (".hidden _ZNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEE22__resize_and_overwriteIZNKSt8__format14__formatter_fpIwE11_M_localizeESt17basic_string_viewIwS2_EcRKSt6localeEUlPwjE_EEvjT_");
+asm (".hidden _ZNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEE9_M_mutateEjjPKwj");
+#endif
--- libstdc++-v3/src/nonshared26/text_encoding.cc.jj 2026-05-27 14:24:38.184280865 +0200
+++ libstdc++-v3/src/nonshared26/text_encoding.cc 2026-05-29 13:49:44.515616477 +0200
@@ -0,0 +1,23 @@
@ -8901,7 +8923,7 @@
+#endif
--- libstdc++-v3/src/nonshared17/floating_from_chars110.cc.jj 2026-05-27 14:24:38.186570586 +0200
+++ libstdc++-v3/src/nonshared17/floating_from_chars110.cc 2026-05-29 14:24:00.028653498 +0200
@@ -0,0 +1,53 @@
@@ -0,0 +1,54 @@
+// Copyright (C) 2019-2026 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
@ -8945,15 +8967,16 @@
+//asm (".hidden _ZSt8to_charsPcS_u9__ieee128St12chars_format");
+//asm (".hidden _ZSt8to_charsPcS_u9__ieee128St12chars_formati");
+#endif
+#if defined(__aarch64__) || defined(__i386__)
+#if defined(__aarch64__) || defined(__i386__) || defined(__s390x__)
+asm (".hidden _ZSt10from_charsIiLi0EESt17from_chars_resultPKcS2_RT_i");
+#endif
+#if defined(__i386__) || (defined(__powerpc__) && !defined(__powerpc64__))
+asm (".hidden _ZNSt3pmr25monotonic_buffer_resource13do_deallocateEPvjj");
+asm (".hidden _ZNSt3pmr25monotonic_buffer_resource11do_allocateEjj");
+#else
+//asm (".hidden _ZNSt3pmr25monotonic_buffer_resource13do_deallocateEPvmm");
+//asm (".hidden _ZNSt3pmr25monotonic_buffer_resource11do_allocateEmm");
+#endif
+#if defined(__x86_64__) || defined(__powerpc64__)
+asm (".hidden _ZNSt3pmr25monotonic_buffer_resource11do_allocateEmm");
+asm (".hidden _ZNSt3pmr25monotonic_buffer_resource13do_deallocateEPvmm");
+#endif
--- libstdc++-v3/src/nonshared17/cow-fs_ops.cc.jj 2026-05-27 14:24:38.186663457 +0200
+++ libstdc++-v3/src/nonshared17/cow-fs_ops.cc 2026-05-29 13:49:44.515616477 +0200
@ -11052,7 +11075,7 @@
+#if defined(__i386__) || (defined(__powerpc__) && !defined(__powerpc64__))
+asm (".hidden _ZNSt8__detail18__to_chars_10_implIyEEvPcjT_");
+#else
+//asm (".hidden _ZNSt8__detail18__to_chars_10_implImEEvPcjT_");
+asm (".hidden _ZNSt8__detail18__to_chars_10_implImEEvPcjT_");
+#endif
+#if !defined(__i386__) && !defined(__s390x__)
+asm (".hidden _ZSt12__to_chars_iIoESt15to_chars_resultPcS1_T_i");

View File

@ -1,42 +0,0 @@
--- a/libstdc++-v3/src/nonshared20/format-inst.cc
+++ b/libstdc++-v3/src/nonshared20/format-inst.cc
@@ -26,21 +26,39 @@
#if defined(__x86_64__) || defined(__aarch64__) || defined(__powerpc64__)
asm (".hidden _ZNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEEaSEOS4_");
asm (".hidden _ZNSt8__detail13__to_chars_16ImEESt15to_chars_resultPcS2_T_");
+#elif defined(__i386__)
+asm (".hidden _ZNSt8__detail18__to_chars_10_implIyEEvPcjT_");
#else
asm (".hidden _ZNSt8__detail18__to_chars_10_implImEEvPcjT_");
#endif
#if defined(__x86_64__)
+/* Only emitted from the x86-64-v3 ISA level up; below that the compiler
+ inlines it away and the bare .hidden would leave an undefined hidden
+ symbol in libstdc++_nonshared140.a. */
+#if defined(__AVX2__)
asm (".hidden _ZNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEE22__resize_and_overwriteIZNKSt8__format14__formatter_fpIwE11_M_localizeESt17basic_string_viewIwS2_EcRKSt6localeEUlPwmE_EEvmT_");
+#endif
asm (".hidden _ZNSt8__detail13__to_chars_16IjEESt15to_chars_resultPcS2_T_");
#endif
asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_disposeEv");
+#if defined(__i386__)
+asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE15_M_replace_coldEPcjPKcjj");
+asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE7reserveEj");
+asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9_M_mutateEjjPKcj");
+#else
asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE15_M_replace_coldEPcmPKcmm");
asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE7reserveEm");
asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9_M_mutateEmmPKcm");
+#endif
asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9push_backEc");
asm (".hidden _ZNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEE10_M_disposeEv");
+#if defined(__i386__)
+asm (".hidden _ZNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEE15_M_replace_coldEPwjPKwjj");
+asm (".hidden _ZNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEE9_M_mutateEjjPKwj");
+#else
asm (".hidden _ZNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEE15_M_replace_coldEPwmPKwmm");
asm (".hidden _ZNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEE9_M_mutateEmmPKwm");
+#endif
asm (".hidden _ZNKSt8__format5_SinkIwE13_M_discardingEv");
asm (".hidden _ZNKSt8__format5_SinkIcE13_M_discardingEv");
asm (".hidden _ZNKSt8__format13_Padding_sinkINS_10_Sink_iterIcEEcE13_M_discardingEv");

View File

@ -1,29 +0,0 @@
From 8afa08292030c4da33ebf80ce39353678d9d9955 Mon Sep 17 00:00:00 2001
From: Andrew Lukoshko <alukoshko@almalinux.org>
Date: Wed, 18 Feb 2026 14:37:39 +0000
Subject: [PATCH] libstdc++-v3: add __riscv constants to extfloat.S
---
libstdc++-v3/src/nonshared98/extfloat.S | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/libstdc++-v3/src/nonshared98/extfloat.S b/libstdc++-v3/src/nonshared98/extfloat.S
index c72980884..9fad014c4 100644
--- a/libstdc++-v3/src/nonshared98/extfloat.S
+++ b/libstdc++-v3/src/nonshared98/extfloat.S
@@ -53,8 +53,11 @@
#elif defined __s390__
#define ALIGN1 .align 4
#define ALIGN3 .align 2
+#elif defined __riscv
+#define ALIGN1 .align 3
+#define ALIGN3 .align 3
#endif
-#if defined __x86_64__ || defined __powerpc64__ || defined __s390x__ || defined __ia64__ || defined __aarch64__
+#if defined __x86_64__ || defined __powerpc64__ || defined __s390x__ || defined __ia64__ || defined __aarch64__ || defined __riscv
#define SIZE1 32
#define SIZE2 16
#define OFF 16
--
2.43.7