import gcc-toolset-10-gcc-10.2.1-2.el8
This commit is contained in:
parent
454feea2b1
commit
25f20877a9
@ -1,5 +1,5 @@
|
||||
7f4348418dc3efefd357b32a2b5c8010211ab284 SOURCES/doxygen-1.8.0.src.tar.gz
|
||||
c2c3a9b0ec1bbf57be1f75bcf01e1e188c8dc225 SOURCES/gcc-10.1.1-20200507.tar.xz
|
||||
19a2803c35999e08af82cdbfc7e7502ad2fe7b59 SOURCES/gcc-10.2.1-20200804.tar.xz
|
||||
c5a2b201bf05229647e73203c0bf2d9679d4d21f SOURCES/isl-0.16.1.tar.bz2
|
||||
5ef03ca7aee134fe7dfecb6c9d048799f0810278 SOURCES/mpc-0.8.1.tar.gz
|
||||
6ec33952e824e837fef0e829c93d39d6a507082f SOURCES/newlib-cygwin-50e2a63b04bdd018484605fbb954fd1bd5147fa0.tar.xz
|
||||
|
2
.gitignore
vendored
2
.gitignore
vendored
@ -1,5 +1,5 @@
|
||||
SOURCES/doxygen-1.8.0.src.tar.gz
|
||||
SOURCES/gcc-10.1.1-20200507.tar.xz
|
||||
SOURCES/gcc-10.2.1-20200804.tar.xz
|
||||
SOURCES/isl-0.16.1.tar.bz2
|
||||
SOURCES/mpc-0.8.1.tar.gz
|
||||
SOURCES/newlib-cygwin-50e2a63b04bdd018484605fbb954fd1bd5147fa0.tar.xz
|
||||
|
78
SOURCES/gcc10-libgfortran-compat-2.patch
Normal file
78
SOURCES/gcc10-libgfortran-compat-2.patch
Normal file
@ -0,0 +1,78 @@
|
||||
diff -u libgfortran/Makefile.am libgfortran/Makefile.am
|
||||
--- libgfortran/Makefile.am 2020-05-28 13:55:44.816954223 +0200
|
||||
+++ libgfortran/Makefile.am 2020-05-28 13:55:44.816954223 +0200
|
||||
@@ -1087,6 +1087,7 @@
|
||||
nonshared-findloc0_r16.c \
|
||||
nonshared-findloc0_c4.c \
|
||||
nonshared-findloc0_c8.c \
|
||||
+nonshared-findloc0_c10.c \
|
||||
nonshared-findloc0_c16.c \
|
||||
nonshared-findloc0_s1.c \
|
||||
nonshared-findloc0_s4.c \
|
||||
@@ -1101,6 +1102,7 @@
|
||||
nonshared-findloc1_r16.c \
|
||||
nonshared-findloc1_c4.c \
|
||||
nonshared-findloc1_c8.c \
|
||||
+nonshared-findloc1_c10.c \
|
||||
nonshared-findloc1_c16.c \
|
||||
nonshared-findloc1_s1.c \
|
||||
nonshared-findloc1_s4.c \
|
||||
diff -u libgfortran/Makefile.in libgfortran/Makefile.in
|
||||
--- libgfortran/Makefile.in 2020-05-28 14:05:15.576583891 +0200
|
||||
+++ libgfortran/Makefile.in 2020-05-28 14:05:15.576583891 +0200
|
||||
@@ -475,14 +475,15 @@
|
||||
nonshared-findloc0_i16.lo nonshared-findloc0_r4.lo \
|
||||
nonshared-findloc0_r8.lo nonshared-findloc0_r10.lo \
|
||||
nonshared-findloc0_r16.lo nonshared-findloc0_c4.lo \
|
||||
- nonshared-findloc0_c8.lo nonshared-findloc0_c16.lo \
|
||||
- nonshared-findloc0_s1.lo nonshared-findloc0_s4.lo \
|
||||
- nonshared-findloc1_i1.lo nonshared-findloc1_i2.lo \
|
||||
- nonshared-findloc1_i4.lo nonshared-findloc1_i8.lo \
|
||||
- nonshared-findloc1_i16.lo nonshared-findloc1_r4.lo \
|
||||
- nonshared-findloc1_r8.lo nonshared-findloc1_r10.lo \
|
||||
- nonshared-findloc1_r16.lo nonshared-findloc1_c4.lo \
|
||||
- nonshared-findloc1_c8.lo nonshared-findloc1_c16.lo \
|
||||
+ nonshared-findloc0_c8.lo nonshared-findloc0_c10.lo \
|
||||
+ nonshared-findloc0_c16.lo nonshared-findloc0_s1.lo \
|
||||
+ nonshared-findloc0_s4.lo nonshared-findloc1_i1.lo \
|
||||
+ nonshared-findloc1_i2.lo nonshared-findloc1_i4.lo \
|
||||
+ nonshared-findloc1_i8.lo nonshared-findloc1_i16.lo \
|
||||
+ nonshared-findloc1_r4.lo nonshared-findloc1_r8.lo \
|
||||
+ nonshared-findloc1_r10.lo nonshared-findloc1_r16.lo \
|
||||
+ nonshared-findloc1_c4.lo nonshared-findloc1_c8.lo \
|
||||
+ nonshared-findloc1_c10.lo nonshared-findloc1_c16.lo \
|
||||
nonshared-findloc1_s1.lo nonshared-findloc1_s4.lo \
|
||||
nonshared-findloc2_s1.lo nonshared-findloc2_s4.lo
|
||||
am__objects_68 = nonshared-is_contiguous.lo \
|
||||
@@ -1597,6 +1598,7 @@
|
||||
nonshared-findloc0_r16.c \
|
||||
nonshared-findloc0_c4.c \
|
||||
nonshared-findloc0_c8.c \
|
||||
+nonshared-findloc0_c10.c \
|
||||
nonshared-findloc0_c16.c \
|
||||
nonshared-findloc0_s1.c \
|
||||
nonshared-findloc0_s4.c \
|
||||
@@ -1611,6 +1613,7 @@
|
||||
nonshared-findloc1_r16.c \
|
||||
nonshared-findloc1_c4.c \
|
||||
nonshared-findloc1_c8.c \
|
||||
+nonshared-findloc1_c10.c \
|
||||
nonshared-findloc1_c16.c \
|
||||
nonshared-findloc1_s1.c \
|
||||
nonshared-findloc1_s4.c \
|
||||
@@ -2214,6 +2217,7 @@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mvbits.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-ISO_Fortran_binding.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-error.Plo@am__quote@
|
||||
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc0_c10.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc0_c16.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc0_c4.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc0_c8.Plo@am__quote@
|
||||
@@ -2228,6 +2232,7 @@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc0_r8.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc0_s1.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc0_s4.Plo@am__quote@
|
||||
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc1_c10.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc1_c16.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc1_c4.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc1_c8.Plo@am__quote@
|
@ -4605,7 +4605,7 @@
|
||||
+asm (".hidden _ZNSt10unique_ptrINSt13__future_base13_State_baseV211_Make_readyESt14default_deleteIS2_EED2Ev");
|
||||
--- libstdc++-v3/src/nonshared11/cxx11-ios_failure.cc.jj 2020-05-27 15:11:04.982304585 +0200
|
||||
+++ libstdc++-v3/src/nonshared11/cxx11-ios_failure.cc 2020-05-27 16:55:19.274490989 +0200
|
||||
@@ -0,0 +1,43 @@
|
||||
@@ -0,0 +1,41 @@
|
||||
+// Copyright (C) 2012-2020 Free Software Foundation, Inc.
|
||||
+//
|
||||
+// This file is part of the GNU ISO C++ Library. This library is free
|
||||
@ -4642,8 +4642,6 @@
|
||||
+asm (".hidden _ZTSSt19__iosfail_type_info");
|
||||
+asm (".hidden _ZTVSt13__ios_failure");
|
||||
+asm (".hidden _ZTVSt19__iosfail_type_info");
|
||||
+asm (".hidden _ZNSt12system_errorC1ESt10error_codeRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE");
|
||||
+asm (".hidden _ZNSt12system_errorC2ESt10error_codeRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE");
|
||||
+#ifndef _GLIBCXX_NONSHARED_CXX11_80
|
||||
+asm (".hidden _ZSt19__throw_ios_failurePKc");
|
||||
+asm (".hidden _ZNSt12system_errorC1ESt10error_codePKc");
|
||||
@ -6434,7 +6432,7 @@
|
||||
+asm (".hidden _ZNSt13__future_base7_ResultIvE10_M_destroyEv");
|
||||
--- libstdc++-v3/src/nonshared11/locale-inst.cc.jj 2020-05-27 15:11:04.987304511 +0200
|
||||
+++ libstdc++-v3/src/nonshared11/locale-inst.cc 2020-05-27 16:15:13.606039784 +0200
|
||||
@@ -0,0 +1,91 @@
|
||||
@@ -0,0 +1,95 @@
|
||||
+// Locale support -*- C++ -*-
|
||||
+
|
||||
+// Copyright (C) 1999-2020 Free Software Foundation, Inc.
|
||||
@ -6510,6 +6508,11 @@
|
||||
+_GLIBCXX_END_NAMESPACE_VERSION
|
||||
+} // namespace
|
||||
+
|
||||
+#ifdef _GLIBCXX_NONSHARED_CXX11_80
|
||||
+#ifdef C_is_char
|
||||
+asm (".hidden _ZNKSt5ctypeIcE8do_widenEc");
|
||||
+#endif
|
||||
+#endif
|
||||
+#ifndef _GLIBCXX_NONSHARED_CXX11_80
|
||||
+#ifdef C_is_char
|
||||
+#if defined(__i386__) || (defined(__powerpc__) && !defined(__powerpc64__))
|
||||
@ -6525,7 +6528,6 @@
|
||||
+#endif
|
||||
+#endif
|
||||
+#endif
|
||||
+asm (".hidden _ZNKSt5ctypeIcE8do_widenEc");
|
||||
--- libstdc++-v3/src/nonshared11/cow-wstring-inst44.cc.jj 2020-05-27 15:11:04.981304600 +0200
|
||||
+++ libstdc++-v3/src/nonshared11/cow-wstring-inst44.cc 2020-05-27 15:11:04.981304600 +0200
|
||||
@@ -0,0 +1,35 @@
|
||||
@ -7047,7 +7049,7 @@
|
||||
+#include "random.cc"
|
||||
--- libstdc++-v3/src/nonshared11/string-io-inst.cc.jj 2020-05-27 15:11:04.992304436 +0200
|
||||
+++ libstdc++-v3/src/nonshared11/string-io-inst.cc 2020-05-27 16:15:33.171751943 +0200
|
||||
@@ -0,0 +1,56 @@
|
||||
@@ -0,0 +1,55 @@
|
||||
+// SSO string instantiations for I/O -*- C++ -*-
|
||||
+
|
||||
+// Copyright (C) 1997-2020 Free Software Foundation, Inc.
|
||||
@ -7103,7 +7105,6 @@
|
||||
+ I& getline(I&, S&);
|
||||
+}
|
||||
+
|
||||
+asm (".hidden _ZNKSt5ctypeIcE8do_widenEc");
|
||||
--- libstdc++-v3/src/nonshared11/cow-shim_facets.cc.jj 2020-05-27 15:11:04.977304660 +0200
|
||||
+++ libstdc++-v3/src/nonshared11/cow-shim_facets.cc 2020-05-27 15:11:04.977304660 +0200
|
||||
@@ -0,0 +1,181 @@
|
||||
@ -9445,7 +9446,7 @@
|
||||
+asm (".hidden _ZNSt15basic_stringbufIwSt11char_traitsIwESaIwEED2Ev");
|
||||
--- libstdc++-v3/src/nonshared11/cxx11-locale-inst.cc.jj 2020-05-27 15:11:04.982304585 +0200
|
||||
+++ libstdc++-v3/src/nonshared11/cxx11-locale-inst.cc 2020-05-27 16:14:22.599790461 +0200
|
||||
@@ -0,0 +1,48 @@
|
||||
@@ -0,0 +1,47 @@
|
||||
+// Copyright (C) 2012-2020 Free Software Foundation, Inc.
|
||||
+//
|
||||
+// This file is part of the GNU ISO C++ Library. This library is free
|
||||
@ -9493,7 +9494,6 @@
|
||||
+asm (".hidden _ZTSSt10money_base");
|
||||
+asm (".hidden _ZTSSt13messages_base");
|
||||
+asm (".hidden _ZTSSt9time_base");
|
||||
+asm (".hidden _ZNKSt5ctypeIcE8do_widenEc");
|
||||
--- libstdc++-v3/src/nonshared11/random.cc.jj 2020-05-27 15:11:04.990304466 +0200
|
||||
+++ libstdc++-v3/src/nonshared11/random.cc 2020-05-27 17:09:24.180955497 +0200
|
||||
@@ -0,0 +1,27 @@
|
||||
@ -9623,7 +9623,7 @@
|
||||
} // namespace
|
||||
--- libstdc++-v3/src/nonshared17/cow-fs_ops.cc.jj 2020-05-27 15:11:04.993304421 +0200
|
||||
+++ libstdc++-v3/src/nonshared17/cow-fs_ops.cc 2020-05-27 16:17:24.072120461 +0200
|
||||
@@ -0,0 +1,47 @@
|
||||
@@ -0,0 +1,79 @@
|
||||
+// Copyright (C) 2019-2020 Free Software Foundation, Inc.
|
||||
+//
|
||||
+// This file is part of the GNU ISO C++ Library. This library is free
|
||||
@ -9655,25 +9655,57 @@
|
||||
+asm (".hidden _ZNSt5dequeINSt10filesystem4pathESaIS1_EE12emplace_backIJS1_EEERS1_DpOT_");
|
||||
+asm (".hidden _ZNSt5dequeINSt10filesystem4pathESaIS1_EE16_M_push_back_auxIJRKS1_EEEvDpOT_");
|
||||
+asm (".hidden _ZNSt5dequeINSt10filesystem4pathESaIS1_EE12emplace_backIIS1_EEERS1_DpOT_");
|
||||
+asm (".hidden _ZNSs4swapERSs");
|
||||
+#endif
|
||||
+asm (".hidden _ZNSt5dequeINSt10filesystem4pathESaIS1_EED1Ev");
|
||||
+asm (".hidden _ZNSt5dequeINSt10filesystem4pathESaIS1_EED2Ev");
|
||||
+#ifdef __x86_64__
|
||||
+asm (".hidden _ZNSt11_Deque_baseINSt10filesystem4pathESaIS1_EE17_M_initialize_mapEm");
|
||||
+#ifdef __i386__
|
||||
+asm (".hidden _ZNSt11_Deque_baseINSt10filesystem4pathESaIS1_EE17_M_initialize_mapEj");
|
||||
+asm (".hidden _ZNSs6resizeEjc");
|
||||
+asm (".hidden _ZNSs9_M_mutateEjjj");
|
||||
+#endif
|
||||
+#ifndef __i386__
|
||||
+asm (".hidden _ZNSt5dequeINSt10filesystem4pathESaIS1_EE13_M_insert_auxINS1_8iteratorEEEvSt15_Deque_iteratorIS1_RS1_PS1_ET_SA_m");
|
||||
+asm (".hidden _ZNSt5dequeINSt10filesystem4pathESaIS1_EE17_M_reallocate_mapEmb");
|
||||
+asm (".hidden _ZNSt5dequeINSt10filesystem4pathESaIS1_EE23_M_new_elements_at_backEm");
|
||||
+asm (".hidden _ZNSt5dequeINSt10filesystem4pathESaIS1_EE24_M_new_elements_at_frontEm");
|
||||
+asm (".hidden _ZNSs6resizeEmc");
|
||||
+#endif
|
||||
+asm (".hidden _ZNSt10filesystem4pathaSEOS0_");
|
||||
+asm (".hidden _ZNSt10unique_ptrINSt10filesystem4path5_List5_ImplENS2_13_Impl_deleterEED1Ev");
|
||||
+asm (".hidden _ZNSt10unique_ptrINSt10filesystem4path5_List5_ImplENS2_13_Impl_deleterEED2Ev");
|
||||
+asm (".hidden _ZSt14__copy_move_a1ILb1EPNSt10filesystem4pathES1_EN9__gnu_cxx11__enable_ifIXsrSt23__is_random_access_iterIT0_NSt15iterator_traitsIS6_E17iterator_categoryEE7__valueESt15_Deque_iteratorIT1_RSC_PSC_EE6__typeES6_S6_SF_");
|
||||
+asm (".hidden _ZSt23__copy_move_backward_a1ILb1EPNSt10filesystem4pathES1_EN9__gnu_cxx11__enable_ifIXsrSt23__is_random_access_iterIT0_NSt15iterator_traitsIS6_E17iterator_categoryEE7__valueESt15_Deque_iteratorIT1_RSC_PSC_EE6__typeES6_S6_SF_");
|
||||
+asm (".hidden _ZSt8_DestroyISt15_Deque_iteratorINSt10filesystem4pathERS2_PS2_EEvT_S6_");
|
||||
+#if defined(__aarch64__) || defined(__x86_64__) || defined(__powerpc64__)
|
||||
+asm (".hidden _ZNSt11_Deque_baseINSt10filesystem4pathESaIS1_EE17_M_initialize_mapEm");
|
||||
+asm (".hidden _ZNSt5dequeINSt10filesystem4pathESaIS1_EE17_M_reallocate_mapEmb");
|
||||
+asm (".hidden _ZNSt5dequeINSt10filesystem4pathESaIS1_EE23_M_new_elements_at_backEm");
|
||||
+asm (".hidden _ZNSt5dequeINSt10filesystem4pathESaIS1_EE24_M_new_elements_at_frontEm");
|
||||
+asm (".hidden _ZNSs9_M_mutateEmmm");
|
||||
+#endif
|
||||
+#if defined(__aarch64__) || defined(__s390x__) || defined(__powerpc64__)
|
||||
+asm (".hidden _ZSt4copyINSt10filesystem4path8iteratorESt15_Deque_iteratorIS1_RS1_PS1_EET0_T_S8_S7_");
|
||||
+#endif
|
||||
+#ifdef __s390x__
|
||||
+asm (".hidden _ZNSt10filesystemdvERKNS_4pathES2_");
|
||||
+asm (".hidden _ZNSt11_Deque_baseINSt10filesystem4pathESaIS1_EEC1Ev");
|
||||
+asm (".hidden _ZNSt11_Deque_baseINSt10filesystem4pathESaIS1_EEC2Ev");
|
||||
+asm (".hidden _ZSt13move_backwardISt15_Deque_iteratorINSt10filesystem4pathERS2_PS2_ES5_ET0_T_S7_S6_");
|
||||
+asm (".hidden _ZNSt10filesystem4pathC1ERKS0_");
|
||||
+asm (".hidden _ZNSt10filesystem4pathC2ERKS0_");
|
||||
+asm (".hidden _ZSt4moveISt15_Deque_iteratorINSt10filesystem4pathERS2_PS2_ES5_ET0_T_S7_S6_");
|
||||
+#endif
|
||||
+asm (".hidden _ZNSt10unique_ptrINSt10filesystem4path5_List5_ImplENS2_13_Impl_deleterEED1Ev");
|
||||
+asm (".hidden _ZNSt10unique_ptrINSt10filesystem4path5_List5_ImplENS2_13_Impl_deleterEED2Ev");
|
||||
+asm (".hidden _ZNSsC1EPKcRKSaIcE");
|
||||
+asm (".hidden _ZNSsC2EPKcRKSaIcE");
|
||||
+asm (".hidden _ZNKSt10filesystem4path8filenameEv");
|
||||
+asm (".hidden _ZNSt10filesystem4pathD2Ev");
|
||||
+#ifdef __i386__
|
||||
+asm (".hidden _ZNSt5dequeINSt10filesystem4pathESaIS1_EE13_M_insert_auxINS1_8iteratorEEEvSt15_Deque_iteratorIS1_RS1_PS1_ET_SA_j");
|
||||
+asm (".hidden _ZNSt5dequeINSt10filesystem4pathESaIS1_EE17_M_reallocate_mapEjb");
|
||||
+asm (".hidden _ZNSt5dequeINSt10filesystem4pathESaIS1_EE23_M_new_elements_at_backEj");
|
||||
+asm (".hidden _ZNSt5dequeINSt10filesystem4pathESaIS1_EE24_M_new_elements_at_frontEj");
|
||||
+#endif
|
||||
--- libstdc++-v3/src/nonshared17/cow-fs_path.cc.jj 2020-05-27 15:11:04.994304406 +0200
|
||||
+++ libstdc++-v3/src/nonshared17/cow-fs_path.cc 2020-05-27 16:18:15.273367217 +0200
|
||||
@@ -0,0 +1,81 @@
|
||||
@@ -0,0 +1,130 @@
|
||||
+// Copyright (C) 2019-2020 Free Software Foundation, Inc.
|
||||
+//
|
||||
+// This file is part of the GNU ISO C++ Library. This library is free
|
||||
@ -9740,14 +9772,31 @@
|
||||
+asm (".hidden _ZNSt10filesystem16filesystem_error5_Impl9make_whatESt17basic_string_viewIcSt11char_traitsIcEEPKNS_4pathES8_");
|
||||
+asm (".hidden _ZNSt10filesystem4pathaSIA2_cEERNSt9enable_ifIXsrSt6__and_IISt6__not_ISt7is_sameINSt9remove_cvIT_E4typeES0_EES5_ISt7is_voidINSt14remove_pointerIS8_E4typeEEENS_8__detail20__constructible_fromIS8_vEEEE5valueES0_E4typeERKS8_");
|
||||
+asm (".hidden _ZNSt10filesystem4pathaSIA2_cEERNSt9enable_ifIXsrSt6__and_IJSt6__not_ISt7is_sameINSt9remove_cvIT_E4typeES0_EES5_ISt7is_voidINSt14remove_pointerIS8_E4typeEEENS_8__detail20__constructible_fromIS8_vEEEE5valueES0_E4typeERKS8_");
|
||||
+asm (".hidden _ZNSt10unique_ptrINSt10filesystem4path5_List5_ImplENS2_13_Impl_deleterEED1Ev");
|
||||
+asm (".hidden _ZNSt10unique_ptrINSt10filesystem4path5_List5_ImplENS2_13_Impl_deleterEED2Ev");
|
||||
+asm (".hidden _ZNSt12system_errorC1ESt10error_codeRKSs");
|
||||
+asm (".hidden _ZNSt12system_errorC2ESt10error_codeRKSs");
|
||||
+asm (".hidden _ZNSt15__allocated_ptrISaISt23_Sp_counted_ptr_inplaceINSt10filesystem16filesystem_error5_ImplESaIS3_ELN9__gnu_cxx12_Lock_policyE2EEEED1Ev");
|
||||
+asm (".hidden _ZNSt15__allocated_ptrISaISt23_Sp_counted_ptr_inplaceINSt10filesystem16filesystem_error5_ImplESaIS3_ELN9__gnu_cxx12_Lock_policyE2EEEED2Ev");
|
||||
+#if !defined (__i386__) && !defined (__s390x__)
|
||||
+#if !defined(__i386__) && !defined(__s390x__)
|
||||
+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_codecvtISswSt7codecvtIwc11__mbstate_tES1_MS2_KFNSt12codecvt_base6resultERS1_PKwS7_RS7_PcS9_RS9_EEbPKT0_SF_RT_RKT1_RT2_RmT3_");
|
||||
+asm (".hidden _ZNSbIwSt11char_traitsIwESaIwEE7reserveEm");
|
||||
+asm (".hidden _ZNSsC1ERKSsmm");
|
||||
+asm (".hidden _ZNSsC2ERKSsmm");
|
||||
+#endif
|
||||
+#ifdef __i386__
|
||||
+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_");
|
||||
+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 _ZSt10__mismatchINSt10filesystem4path8iteratorES2_N9__gnu_cxx5__ops19_Iter_equal_to_iterEESt4pairIT_T0_ES7_S7_S8_S8_T1_");
|
||||
+asm (".hidden _ZSt10__mismatchINSt10filesystem7__cxx114path8iteratorES3_N9__gnu_cxx5__ops19_Iter_equal_to_iterEESt4pairIT_T0_ES8_S8_S9_S9_T1_");
|
||||
+#endif
|
||||
+asm (".hidden _ZTIZNSt10filesystem4path4_CvtIwE10_S_convertEPKwS4_E5_UCvt");
|
||||
+asm (".hidden _ZTSZNSt10filesystem4path4_CvtIwE10_S_convertEPKwS4_E5_UCvt");
|
||||
@ -9755,9 +9804,41 @@
|
||||
+asm (".hidden _ZZNSt10filesystem4path4_CvtIwE10_S_convertEPKwS4_EN5_UCvtD0Ev");
|
||||
+asm (".hidden _ZZNSt10filesystem4path4_CvtIwE10_S_convertEPKwS4_EN5_UCvtD1Ev");
|
||||
+asm (".hidden _ZZNSt10filesystem4path4_CvtIwE10_S_convertEPKwS4_EN5_UCvtD2Ev");
|
||||
+asm (".hidden _ZNSt10filesystem4path4_CvtIwE10_S_convertEPKwS4_");
|
||||
+asm (".hidden _ZNSt10filesystem4path5_List5beginEv");
|
||||
+asm (".hidden _ZNSt10filesystem4path7_Parser4nextEv");
|
||||
+asm (".hidden _ZNSt10filesystem4pathD1Ev");
|
||||
+asm (".hidden _ZNSt10filesystem4pathD2Ev");
|
||||
+asm (".hidden _ZNSt10unique_ptrINSt10filesystem4path5_List5_ImplENS2_13_Impl_deleterEED1Ev");
|
||||
+asm (".hidden _ZNSt10unique_ptrINSt10filesystem4path5_List5_ImplENS2_13_Impl_deleterEED2Ev");
|
||||
+asm (".hidden _ZNSs6appendERKSs");
|
||||
+#ifndef __i386__
|
||||
+asm (".hidden _ZNSbIwSt11char_traitsIwESaIwEE6resizeEmw");
|
||||
+asm (".hidden _ZNSbIwSt11char_traitsIwESaIwEE9_M_mutateEmmm");
|
||||
+asm (".hidden _ZNSs6insertEmPKcm");
|
||||
+asm (".hidden _ZNSs6resizeEmc");
|
||||
+asm (".hidden _ZNSs7reserveEm");
|
||||
+asm (".hidden _ZNSs9_M_mutateEmmm");
|
||||
+#endif
|
||||
+#ifndef __s390x__
|
||||
+asm (".hidden _ZNSsC1ERKSs");
|
||||
+asm (".hidden _ZNSsC2ERKSs");
|
||||
+#endif
|
||||
+#if defined(__powerpc64__) || defined(__aarch64__)
|
||||
+asm (".hidden _ZNSs4swapERSs");
|
||||
+#endif
|
||||
+#ifdef __s390x__
|
||||
+asm (".hidden _ZNSt10filesystem4pathaSISt17basic_string_viewIcSt11char_traitsIcEEEERNSt9enable_ifIXsrSt6__and_IISt6__not_ISt7is_sameINSt9remove_cvIT_E4typeES0_EES8_ISt7is_voidINSt14remove_pointerISB_E4typeEEENS_8__detail20__constructible_fromISB_vEEEE5valueES0_E4typeERKSB_");
|
||||
+asm (".hidden _ZNSt10filesystem4pathaSISt17basic_string_viewIcSt11char_traitsIcEEEERNSt9enable_ifIXsrSt6__and_IJSt6__not_ISt7is_sameINSt9remove_cvIT_E4typeES0_EES8_ISt7is_voidINSt14remove_pointerISB_E4typeEEENS_8__detail20__constructible_fromISB_vEEEE5valueES0_E4typeERKSB_");
|
||||
+asm (".hidden _ZNKSt10filesystem4path5_List5_Impl4copyEv");
|
||||
+asm (".hidden _ZNSt10filesystem4pathC1ERKS0_");
|
||||
+asm (".hidden _ZNSt10filesystem4pathC2ERKS0_");
|
||||
+asm (".hidden _ZNSt10filesystem4pathC1ESt17basic_string_viewIcSt11char_traitsIcEENS0_5_TypeE");
|
||||
+asm (".hidden _ZNSt10filesystem4pathC2ESt17basic_string_viewIcSt11char_traitsIcEENS0_5_TypeE");
|
||||
+#endif
|
||||
--- libstdc++-v3/src/nonshared17/memory_resource.cc.jj 2020-05-27 15:11:04.996304376 +0200
|
||||
+++ libstdc++-v3/src/nonshared17/memory_resource.cc 2020-05-27 16:21:24.634581462 +0200
|
||||
@@ -0,0 +1,56 @@
|
||||
@@ -0,0 +1,71 @@
|
||||
+// Copyright (C) 2019-2020 Free Software Foundation, Inc.
|
||||
+//
|
||||
+// This file is part of the GNU ISO C++ Library. This library is free
|
||||
@ -9800,12 +9881,14 @@
|
||||
+asm (".hidden _ZTSNSt3pmr28unsynchronized_pool_resourceE");
|
||||
+asm (".hidden _ZTVNSt3pmr26synchronized_pool_resourceE");
|
||||
+asm (".hidden _ZTVNSt3pmr28unsynchronized_pool_resourceE");
|
||||
+#ifdef __x86_64__
|
||||
+asm (".hidden _ZNSt3pmr15__pool_resource10deallocateEPvmm");
|
||||
+asm (".hidden _ZNSt3pmr15__pool_resource8allocateEmm");
|
||||
+asm (".hidden _ZNSt3pmr28unsynchronized_pool_resource12_M_find_poolEm");
|
||||
+asm (".hidden _ZNSt6vectorINSt3pmr15__pool_resource9_BigBlockENS0_21polymorphic_allocatorIS2_EEE17_M_realloc_insertIIRmS7_EEEvN9__gnu_cxx17__normal_iteratorIPS2_S5_EEDpOT_");
|
||||
+asm (".hidden _ZNSt6vectorINSt3pmr15__pool_resource9_BigBlockENS0_21polymorphic_allocatorIS2_EEE17_M_realloc_insertIJRmS7_EEEvN9__gnu_cxx17__normal_iteratorIPS2_S5_EEDpOT_");
|
||||
+#ifdef __i386__
|
||||
+asm (".hidden _ZNSt3pmr15__pool_resource10deallocateEPvjj");
|
||||
+asm (".hidden _ZNSt3pmr15__pool_resource8allocateEjj");
|
||||
+asm (".hidden _ZNSt3pmr25monotonic_buffer_resource11do_allocateEjj");
|
||||
+asm (".hidden _ZNSt3pmr25monotonic_buffer_resource13do_deallocateEPvjj");
|
||||
+asm (".hidden _ZNSt3pmr28unsynchronized_pool_resource12_M_find_poolEj");
|
||||
+asm (".hidden _ZNSt6vectorINSt3pmr15__pool_resource9_BigBlockENS0_21polymorphic_allocatorIS2_EEE17_M_realloc_insertIIRjS7_EEEvN9__gnu_cxx17__normal_iteratorIPS2_S5_EEDpOT_");
|
||||
+asm (".hidden _ZNSt6vectorINSt3pmr15__pool_resource9_BigBlockENS0_21polymorphic_allocatorIS2_EEE17_M_realloc_insertIJRjS7_EEEvN9__gnu_cxx17__normal_iteratorIPS2_S5_EEDpOT_");
|
||||
+#endif
|
||||
+asm (".hidden _ZNKSt3pmr25monotonic_buffer_resource11do_is_equalERKNS_15memory_resourceE");
|
||||
+asm (".hidden _ZNSt3pmr15__pool_resource5_Pool12try_allocateEv");
|
||||
@ -9813,10 +9896,23 @@
|
||||
+#ifndef __i386__
|
||||
+asm (".hidden _ZNSt3pmr25monotonic_buffer_resource11do_allocateEmm");
|
||||
+asm (".hidden _ZNSt3pmr25monotonic_buffer_resource13do_deallocateEPvmm");
|
||||
+asm (".hidden _ZNSt3pmr15__pool_resource10deallocateEPvmm");
|
||||
+asm (".hidden _ZNSt3pmr15__pool_resource8allocateEmm");
|
||||
+asm (".hidden _ZNSt3pmr28unsynchronized_pool_resource12_M_find_poolEm");
|
||||
+asm (".hidden _ZNSt6vectorINSt3pmr15__pool_resource9_BigBlockENS0_21polymorphic_allocatorIS2_EEE17_M_realloc_insertIIRmS7_EEEvN9__gnu_cxx17__normal_iteratorIPS2_S5_EEDpOT_");
|
||||
+asm (".hidden _ZNSt6vectorINSt3pmr15__pool_resource9_BigBlockENS0_21polymorphic_allocatorIS2_EEE17_M_realloc_insertIJRmS7_EEEvN9__gnu_cxx17__normal_iteratorIPS2_S5_EEDpOT_");
|
||||
+#endif
|
||||
+asm (".hidden _ZNSt22__shared_mutex_pthread6unlockEv");
|
||||
+asm (".hidden _ZNSt3pmr15__pool_resource5_Pool10deallocateEPNS_15memory_resourceEPv");
|
||||
+asm (".hidden _ZNSt3pmr15__pool_resource5_Pool6vectorD1Ev");
|
||||
+asm (".hidden _ZNSt3pmr15__pool_resource5_Pool6vectorD2Ev");
|
||||
+asm (".hidden _ZNSt3pmr15__pool_resource5_PoolD1Ev");
|
||||
+asm (".hidden _ZNSt3pmr15__pool_resource5_PoolD2Ev");
|
||||
+asm (".hidden _ZNSt3pmr26synchronized_pool_resource7_TPoolsC1ERS0_RSt10lock_guardISt12shared_mutexE");
|
||||
+asm (".hidden _ZNSt3pmr26synchronized_pool_resource7_TPoolsC2ERS0_RSt10lock_guardISt12shared_mutexE");
|
||||
--- libstdc++-v3/src/nonshared17/fs_dir.cc.jj 2020-05-27 15:11:04.994304406 +0200
|
||||
+++ libstdc++-v3/src/nonshared17/fs_dir.cc 2020-05-27 16:19:06.255617202 +0200
|
||||
@@ -0,0 +1,87 @@
|
||||
@@ -0,0 +1,92 @@
|
||||
+// Copyright (C) 2019-2020 Free Software Foundation, Inc.
|
||||
+//
|
||||
+// This file is part of the GNU ISO C++ Library. This library is free
|
||||
@ -9887,6 +9983,10 @@
|
||||
+asm (".hidden _ZNSt5dequeINSt10filesystem7__cxx114_DirESaIS2_EED2Ev");
|
||||
+asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC1IS3_EEPKcRKS3_");
|
||||
+asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_");
|
||||
+asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_disposeEv");
|
||||
+#if !defined (__s390x__) && !defined (__i386__)
|
||||
+asm (".hidden _ZNSt5dequeINSt10filesystem7__cxx114_DirESaIS2_EE17_M_reallocate_mapEmb");
|
||||
+#endif
|
||||
+asm (".hidden _ZTISt11_Mutex_baseILN9__gnu_cxx12_Lock_policyE2EE");
|
||||
+asm (".hidden _ZTISt16_Sp_counted_baseILN9__gnu_cxx12_Lock_policyE2EE");
|
||||
+asm (".hidden _ZTISt23_Sp_counted_ptr_inplaceINSt10filesystem7__cxx1128recursive_directory_iterator10_Dir_stackESaIS3_ELN9__gnu_cxx12_Lock_policyE2EE");
|
||||
@ -9899,14 +9999,15 @@
|
||||
+asm (".hidden _ZTVSt23_Sp_counted_ptr_inplaceINSt10filesystem7__cxx1128recursive_directory_iterator10_Dir_stackESaIS3_ELN9__gnu_cxx12_Lock_policyE2EE");
|
||||
+asm (".hidden _ZTVSt23_Sp_counted_ptr_inplaceINSt10filesystem7__cxx114_DirESaIS2_ELN9__gnu_cxx12_Lock_policyE2EE");
|
||||
+asm (".hidden _ZZNSt19_Sp_make_shared_tag5_S_tiEvE5__tag");
|
||||
+#ifdef __x86_64__
|
||||
+asm (".hidden _ZNSt5dequeINSt10filesystem7__cxx114_DirESaIS2_EE17_M_reallocate_mapEmb");
|
||||
+#ifdef __i386__
|
||||
+asm (".hidden _ZNSt5dequeINSt10filesystem7__cxx114_DirESaIS2_EE17_M_reallocate_mapEjb");
|
||||
+#endif
|
||||
+asm (".hidden _ZNSt10unique_ptrINSt10filesystem7__cxx114path5_List5_ImplENS3_13_Impl_deleterEED1Ev");
|
||||
+asm (".hidden _ZNSt10unique_ptrINSt10filesystem7__cxx114path5_List5_ImplENS3_13_Impl_deleterEED2Ev");
|
||||
+asm (".hidden _ZSt20__replacement_assertPKciS0_S0_");
|
||||
--- libstdc++-v3/src/nonshared17/fs_path80.cc.jj 2020-05-27 15:11:04.994304406 +0200
|
||||
+++ libstdc++-v3/src/nonshared17/fs_path80.cc 2020-05-27 15:11:04.994304406 +0200
|
||||
@@ -0,0 +1,24 @@
|
||||
@@ -0,0 +1,36 @@
|
||||
+// Copyright (C) 2019-2020 Free Software Foundation, Inc.
|
||||
+//
|
||||
+// This file is part of the GNU ISO C++ Library. This library is free
|
||||
@ -9931,9 +10032,21 @@
|
||||
+
|
||||
+#define _GLIBCXX_NONSHARED_CXX17_80
|
||||
+#include "fs_path.cc"
|
||||
+#ifdef __s390x__
|
||||
+asm (".hidden _ZNSt10filesystem7__cxx114path4_CvtIwE10_S_convertEPKwS5_");
|
||||
+#endif
|
||||
+#ifdef __i386__
|
||||
+asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_replaceEjjPKcj");
|
||||
+asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6resizeEjc");
|
||||
+asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE7reserveEj");
|
||||
+asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9_M_appendEPKcj");
|
||||
+asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9_M_mutateEjjPKcj");
|
||||
+asm (".hidden _ZNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEE6resizeEjw");
|
||||
+asm (".hidden _ZNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEE9_M_mutateEjjPKwj");
|
||||
+#endif
|
||||
--- libstdc++-v3/src/nonshared17/cow-fs_dir.cc.jj 2020-05-27 15:11:04.993304421 +0200
|
||||
+++ libstdc++-v3/src/nonshared17/cow-fs_dir.cc 2020-05-27 16:16:29.824918505 +0200
|
||||
@@ -0,0 +1,85 @@
|
||||
@@ -0,0 +1,96 @@
|
||||
+// Copyright (C) 2019-2020 Free Software Foundation, Inc.
|
||||
+//
|
||||
+// This file is part of the GNU ISO C++ Library. This library is free
|
||||
@ -10014,11 +10127,22 @@
|
||||
+asm (".hidden _ZTVSt23_Sp_counted_ptr_inplaceINSt10filesystem28recursive_directory_iterator10_Dir_stackESaIS2_ELN9__gnu_cxx12_Lock_policyE2EE");
|
||||
+asm (".hidden _ZTVSt23_Sp_counted_ptr_inplaceINSt10filesystem4_DirESaIS1_ELN9__gnu_cxx12_Lock_policyE2EE");
|
||||
+asm (".hidden _ZZNSt19_Sp_make_shared_tag5_S_tiEvE5__tag");
|
||||
+#ifdef __x86_64__
|
||||
+#if defined(__aarch64__) || defined(__x86_64__) || defined(__powerpc64__)
|
||||
+asm (".hidden _ZNSt5dequeINSt10filesystem4_DirESaIS1_EE17_M_reallocate_mapEmb");
|
||||
+#endif
|
||||
+asm (".hidden _ZNSt10unique_ptrINSt10filesystem4path5_List5_ImplENS2_13_Impl_deleterEED1Ev");
|
||||
+asm (".hidden _ZNSt10unique_ptrINSt10filesystem4path5_List5_ImplENS2_13_Impl_deleterEED2Ev");
|
||||
+#ifdef __i386__
|
||||
+asm (".hidden _ZNSt5dequeINSt10filesystem4_DirESaIS1_EE17_M_reallocate_mapEjb");
|
||||
+#endif
|
||||
+asm (".hidden _ZNSt10filesystem4pathD2Ev");
|
||||
+#if !defined(__s390x__) && !defined(__aarch64__) && !defined(__powerpc64__)
|
||||
+asm (".hidden _ZNSs4swapERSs");
|
||||
+#endif
|
||||
+asm (".hidden _ZNSsC1EPKcRKSaIcE");
|
||||
+asm (".hidden _ZNSsC2EPKcRKSaIcE");
|
||||
+#ifdef __s390x__
|
||||
+asm (".hidden _ZNSt10filesystem4pathC1ERKS0_");
|
||||
+asm (".hidden _ZNSt10filesystem4pathC2ERKS0_");
|
||||
+#endif
|
||||
--- libstdc++-v3/src/nonshared17/Makefile.am.jj 2020-05-27 15:11:04.995304391 +0200
|
||||
+++ libstdc++-v3/src/nonshared17/Makefile.am 2020-05-27 15:11:04.995304391 +0200
|
||||
@@ -0,0 +1,130 @@
|
||||
@ -10154,7 +10278,7 @@
|
||||
+ $(OPT_LDFLAGS) $(SECTION_LDFLAGS) $(AM_CXXFLAGS) $(LTLDFLAGS) -o $@
|
||||
--- libstdc++-v3/src/nonshared17/fs_path.cc.jj 2020-05-27 15:11:04.995304391 +0200
|
||||
+++ libstdc++-v3/src/nonshared17/fs_path.cc 2020-05-27 16:20:43.631184679 +0200
|
||||
@@ -0,0 +1,80 @@
|
||||
@@ -0,0 +1,99 @@
|
||||
+// Copyright (C) 2019-2020 Free Software Foundation, Inc.
|
||||
+//
|
||||
+// This file is part of the GNU ISO C++ Library. This library is free
|
||||
@ -10192,6 +10316,8 @@
|
||||
+asm (".hidden _ZNSt10filesystem7__cxx114path5_ListaSERKS2_");
|
||||
+asm (".hidden _ZNSt10filesystem7__cxx114path5_ListC2ERKS2_");
|
||||
+asm (".hidden _ZNSt10filesystem7__cxx114path5_ListC2Ev");
|
||||
+asm (".hidden _ZNSt10filesystem7__cxx114path5_List5beginEv");
|
||||
+asm (".hidden _ZNSt10filesystem7__cxx114path7_Parser4nextEv");
|
||||
+asm (".hidden _ZNSt12__shared_ptrIKNSt10filesystem7__cxx1116filesystem_error5_ImplELN9__gnu_cxx12_Lock_policyE2EE4swapERS7_");
|
||||
+asm (".hidden _ZNSt12__shared_ptrIKNSt10filesystem7__cxx1116filesystem_error5_ImplELN9__gnu_cxx12_Lock_policyE2EE5resetEv");
|
||||
+asm (".hidden _ZNSt12__shared_ptrIKNSt10filesystem7__cxx1116filesystem_error5_ImplELN9__gnu_cxx12_Lock_policyE2EEaSEOS7_");
|
||||
@ -10225,8 +10351,6 @@
|
||||
+asm (".hidden _ZNSt10filesystem7__cxx114pathaSIA2_cEERNSt9enable_ifIXsrSt6__and_IJSt6__not_ISt7is_sameINSt9remove_cvIT_E4typeES1_EES6_ISt7is_voidINSt14remove_pointerIS9_E4typeEEENS0_8__detail20__constructible_fromIS9_vEEEE5valueES1_E4typeERKS9_");
|
||||
+asm (".hidden _ZNSt10unique_ptrINSt10filesystem7__cxx114path5_List5_ImplENS3_13_Impl_deleterEED1Ev");
|
||||
+asm (".hidden _ZNSt10unique_ptrINSt10filesystem7__cxx114path5_List5_ImplENS3_13_Impl_deleterEED2Ev");
|
||||
+asm (".hidden _ZNSt12system_errorC1ESt10error_codeRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE");
|
||||
+asm (".hidden _ZNSt12system_errorC2ESt10error_codeRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE");
|
||||
+asm (".hidden _ZNSt15__allocated_ptrISaISt23_Sp_counted_ptr_inplaceINSt10filesystem7__cxx1116filesystem_error5_ImplESaIS4_ELN9__gnu_cxx12_Lock_policyE2EEEED1Ev");
|
||||
+asm (".hidden _ZNSt15__allocated_ptrISaISt23_Sp_counted_ptr_inplaceINSt10filesystem7__cxx1116filesystem_error5_ImplESaIS4_ELN9__gnu_cxx12_Lock_policyE2EEEED2Ev");
|
||||
+asm (".hidden _ZTIZNSt10filesystem7__cxx114path4_CvtIwE10_S_convertEPKwS5_E5_UCvt");
|
||||
@ -10235,6 +10359,25 @@
|
||||
+asm (".hidden _ZZNSt10filesystem7__cxx114path4_CvtIwE10_S_convertEPKwS5_EN5_UCvtD0Ev");
|
||||
+asm (".hidden _ZZNSt10filesystem7__cxx114path4_CvtIwE10_S_convertEPKwS5_EN5_UCvtD1Ev");
|
||||
+asm (".hidden _ZZNSt10filesystem7__cxx114path4_CvtIwE10_S_convertEPKwS5_EN5_UCvtD2Ev");
|
||||
+asm (".hidden _ZNKSt10filesystem7__cxx114path5_List5_Impl4copyEv");
|
||||
+asm (".hidden _ZNSt12system_errorC1ESt10error_codeRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE");
|
||||
+asm (".hidden _ZNSt12system_errorC2ESt10error_codeRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE");
|
||||
+#ifndef __i386__
|
||||
+asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_replaceEmmPKcm");
|
||||
+asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6resizeEmc");
|
||||
+asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9_M_appendEPKcm");
|
||||
+asm (".hidden _ZNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEE6resizeEmw");
|
||||
+#endif
|
||||
+#ifndef __s390x__
|
||||
+asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9_M_assignERKS4_");
|
||||
+#endif
|
||||
+#if !defined(__s390x__) && !defined(__i386__)
|
||||
+asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE7reserveEm");
|
||||
+asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9_M_mutateEmmPKcm");
|
||||
+#endif
|
||||
+#if defined(__aarch64__) || defined(__x86_64__)
|
||||
+asm (".hidden _ZNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEE9_M_mutateEmmPKwm");
|
||||
+#endif
|
||||
--- libstdc++-v3/src/nonshared17/cow-string-inst.cc.jj 2020-05-27 15:11:04.994304406 +0200
|
||||
+++ libstdc++-v3/src/nonshared17/cow-string-inst.cc 2020-05-27 15:11:04.994304406 +0200
|
||||
@@ -0,0 +1,23 @@
|
||||
@ -11054,7 +11197,7 @@
|
||||
+.NOEXPORT:
|
||||
--- libstdc++-v3/src/nonshared17/fs_ops.cc.jj 2020-05-27 15:11:04.994304406 +0200
|
||||
+++ libstdc++-v3/src/nonshared17/fs_ops.cc 2020-05-27 16:19:44.854049374 +0200
|
||||
@@ -0,0 +1,55 @@
|
||||
@@ -0,0 +1,80 @@
|
||||
+// Copyright (C) 2019-2020 Free Software Foundation, Inc.
|
||||
+//
|
||||
+// This file is part of the GNU ISO C++ Library. This library is free
|
||||
@ -11088,28 +11231,53 @@
|
||||
+#ifndef __s390x__
|
||||
+asm (".hidden _ZNSt5dequeINSt10filesystem7__cxx114pathESaIS2_EE16_M_push_back_auxIIRKS2_EEEvDpOT_");
|
||||
+asm (".hidden _ZNSt5dequeINSt10filesystem7__cxx114pathESaIS2_EE16_M_push_back_auxIJRKS2_EEEvDpOT_");
|
||||
+asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE4swapERS4_");
|
||||
+#endif
|
||||
+asm (".hidden _ZNSt5dequeINSt10filesystem7__cxx114pathESaIS2_EED1Ev");
|
||||
+asm (".hidden _ZNSt5dequeINSt10filesystem7__cxx114pathESaIS2_EED2Ev");
|
||||
+asm (".hidden _ZTIN9__gnu_cxx13stdio_filebufIcSt11char_traitsIcEEE");
|
||||
+asm (".hidden _ZTSN9__gnu_cxx13stdio_filebufIcSt11char_traitsIcEEE");
|
||||
+asm (".hidden _ZTVN9__gnu_cxx13stdio_filebufIcSt11char_traitsIcEEE");
|
||||
+#ifdef __x86_64__
|
||||
+asm (".hidden _ZNSt5dequeINSt10filesystem7__cxx114pathESaIS2_EE17_M_reallocate_mapEmb");
|
||||
+asm (".hidden _ZN9__gnu_cxx13stdio_filebufIcSt11char_traitsIcEEC1EiSt13_Ios_Openmodem");
|
||||
+asm (".hidden _ZN9__gnu_cxx13stdio_filebufIcSt11char_traitsIcEEC2EiSt13_Ios_Openmodem");
|
||||
+asm (".hidden _ZNSt10filesystem8do_spaceEPKcRmS2_S2_RSt10error_code");
|
||||
+asm (".hidden _ZNSt11_Deque_baseINSt10filesystem7__cxx114pathESaIS2_EE17_M_initialize_mapEm");
|
||||
+asm (".hidden _ZNSt5dequeINSt10filesystem7__cxx114pathESaIS2_EE13_M_insert_auxINS2_8iteratorEEEvSt15_Deque_iteratorIS2_RS2_PS2_ET_SB_m");
|
||||
+asm (".hidden _ZNSt5dequeINSt10filesystem7__cxx114pathESaIS2_EE23_M_new_elements_at_backEm");
|
||||
+asm (".hidden _ZNSt5dequeINSt10filesystem7__cxx114pathESaIS2_EE24_M_new_elements_at_frontEm");
|
||||
+#endif
|
||||
+asm (".hidden _ZNKSt10filesystem7__cxx114path8filenameEv");
|
||||
+asm (".hidden _ZNSt10unique_ptrINSt10filesystem7__cxx114path5_List5_ImplENS3_13_Impl_deleterEED1Ev");
|
||||
+asm (".hidden _ZNSt10unique_ptrINSt10filesystem7__cxx114path5_List5_ImplENS3_13_Impl_deleterEED2Ev");
|
||||
+asm (".hidden _ZSt14__copy_move_a1ILb1EPNSt10filesystem7__cxx114pathES2_EN9__gnu_cxx11__enable_ifIXsrSt23__is_random_access_iterIT0_NSt15iterator_traitsIS7_E17iterator_categoryEE7__valueESt15_Deque_iteratorIT1_RSD_PSD_EE6__typeES7_S7_SG_");
|
||||
+asm (".hidden _ZSt23__copy_move_backward_a1ILb1EPNSt10filesystem7__cxx114pathES2_EN9__gnu_cxx11__enable_ifIXsrSt23__is_random_access_iterIT0_NSt15iterator_traitsIS7_E17iterator_categoryEE7__valueESt15_Deque_iteratorIT1_RSD_PSD_EE6__typeES7_S7_SG_");
|
||||
+asm (".hidden _ZSt8_DestroyISt15_Deque_iteratorINSt10filesystem7__cxx114pathERS3_PS3_EEvT_S7_");
|
||||
+#if defined(__aarch64__) || defined(__x86_64__) || defined(__powerpc64__)
|
||||
+asm (".hidden _ZN9__gnu_cxx13stdio_filebufIcSt11char_traitsIcEEC1EiSt13_Ios_Openmodem");
|
||||
+asm (".hidden _ZN9__gnu_cxx13stdio_filebufIcSt11char_traitsIcEEC2EiSt13_Ios_Openmodem");
|
||||
+asm (".hidden _ZN9__gnu_cxx13stdio_filebufIcSt11char_traitsIcEEC2EiSt13_Ios_Openmodem");
|
||||
+asm (".hidden _ZNSt11_Deque_baseINSt10filesystem7__cxx114pathESaIS2_EE17_M_initialize_mapEm");
|
||||
+asm (".hidden _ZNSt5dequeINSt10filesystem7__cxx114pathESaIS2_EE17_M_reallocate_mapEmb");
|
||||
+asm (".hidden _ZNSt5dequeINSt10filesystem7__cxx114pathESaIS2_EE23_M_new_elements_at_backEm");
|
||||
+asm (".hidden _ZNSt5dequeINSt10filesystem7__cxx114pathESaIS2_EE24_M_new_elements_at_frontEm");
|
||||
+#endif
|
||||
+#if !defined(__i386__)
|
||||
+asm (".hidden _ZNSt10filesystem8do_spaceEPKcRmS2_S2_RSt10error_code");
|
||||
+asm (".hidden _ZNSt5dequeINSt10filesystem7__cxx114pathESaIS2_EE13_M_insert_auxINS2_8iteratorEEEvSt15_Deque_iteratorIS2_RS2_PS2_ET_SB_m");
|
||||
+asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6resizeEmc");
|
||||
+#endif
|
||||
+#if defined(__i386__)
|
||||
+asm (".hidden _ZN9__gnu_cxx13stdio_filebufIcSt11char_traitsIcEEC1EiSt13_Ios_Openmodej");
|
||||
+asm (".hidden _ZN9__gnu_cxx13stdio_filebufIcSt11char_traitsIcEEC2EiSt13_Ios_Openmodej");
|
||||
+asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6resizeEjc");
|
||||
+asm (".hidden _ZNSt10filesystem8do_spaceEPKcRyS2_S2_RSt10error_code");
|
||||
+asm (".hidden _ZNSt11_Deque_baseINSt10filesystem7__cxx114pathESaIS2_EE17_M_initialize_mapEj");
|
||||
+asm (".hidden _ZNSt5dequeINSt10filesystem7__cxx114pathESaIS2_EE23_M_new_elements_at_backEj");
|
||||
+asm (".hidden _ZNSt5dequeINSt10filesystem7__cxx114pathESaIS2_EE24_M_new_elements_at_frontEj");
|
||||
+asm (".hidden _ZNSt5dequeINSt10filesystem7__cxx114pathESaIS2_EE13_M_insert_auxINS2_8iteratorEEEvSt15_Deque_iteratorIS2_RS2_PS2_ET_SB_j");
|
||||
+asm (".hidden _ZNSt5dequeINSt10filesystem7__cxx114pathESaIS2_EE17_M_reallocate_mapEjb");
|
||||
+#endif
|
||||
+#if defined(__aarch64__) || defined(__s390x__) || defined(__powerpc64__)
|
||||
+asm (".hidden _ZSt4copyINSt10filesystem7__cxx114path8iteratorESt15_Deque_iteratorIS2_RS2_PS2_EET0_T_S9_S8_");
|
||||
+#endif
|
||||
+#ifdef __s390x__
|
||||
+asm (".hidden _ZNSt11_Deque_baseINSt10filesystem7__cxx114pathESaIS2_EEC1Ev");
|
||||
+asm (".hidden _ZNSt11_Deque_baseINSt10filesystem7__cxx114pathESaIS2_EEC2Ev");
|
||||
+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_");
|
||||
+#endif
|
||||
--- libstdc++-v3/src/nonshared17/ostream-inst.cc.jj 2020-05-27 15:11:04.996304376 +0200
|
||||
+++ libstdc++-v3/src/nonshared17/ostream-inst.cc 2020-05-27 15:11:04.996304376 +0200
|
||||
@@ -0,0 +1,23 @@
|
||||
|
@ -4,7 +4,7 @@
|
||||
<a class="link" href="https://www.fsf.org" target="_top">FSF
|
||||
</a>
|
||||
</p><p>
|
||||
+ Release 10.1.1
|
||||
+ Release 10.2.1
|
||||
+ </p><p>
|
||||
Permission is granted to copy, distribute and/or modify this
|
||||
document under the terms of the GNU Free Documentation
|
||||
@ -17,7 +17,7 @@
|
||||
</p><p>
|
||||
- The API documentation, rendered into HTML, can be viewed online
|
||||
+ The API documentation, rendered into HTML, can be viewed locally
|
||||
+ <a class="link" href="api/index.html" target="_top">for the 10.1.1 release</a>,
|
||||
+ <a class="link" href="api/index.html" target="_top">for the 10.2.1 release</a>,
|
||||
+ online
|
||||
<a class="link" href="http://gcc.gnu.org/onlinedocs/" target="_top">for each GCC release</a>
|
||||
and
|
||||
|
324
SOURCES/gcc10-pr94540.patch
Normal file
324
SOURCES/gcc10-pr94540.patch
Normal file
@ -0,0 +1,324 @@
|
||||
commit 632183ddcc8f3aead8b4fc63c4ab59a42ef9ad00
|
||||
Author: Jonathan Wakely <jwakely@redhat.com>
|
||||
Date: Wed Jun 17 22:49:06 2020 +0100
|
||||
|
||||
libstdc++: Avoid stack overflow in std::vector (PR 94540)
|
||||
|
||||
The std::__uninitialized_default_n algorithm used by std::vector creates
|
||||
an initial object as a local variable then copies that into the
|
||||
destination range. If the object is too large for the stack this
|
||||
crashes. We should create the first object directly into the
|
||||
destination and then copy it from there.
|
||||
|
||||
This doesn't fix the bug for C++98, because in that case the initial
|
||||
value is created as a default argument of the vector constructor i.e. in
|
||||
the user's code, not inside libstdc++. We can't prevent that.
|
||||
|
||||
PR libstdc++/94540
|
||||
* include/bits/stl_uninitialized.h (__uninitialized_default_1<true>):
|
||||
Construct the first value at *__first instead of on the stack.
|
||||
(__uninitialized_default_n_1<true>): Likewise.
|
||||
Improve comments on several of the non-standard algorithms.
|
||||
* testsuite/20_util/specialized_algorithms/uninitialized_default/94540.cc:
|
||||
New test.
|
||||
* testsuite/20_util/specialized_algorithms/uninitialized_default_n/94540.cc:
|
||||
New test.
|
||||
* testsuite/20_util/specialized_algorithms/uninitialized_value_construct/94540.cc:
|
||||
New test.
|
||||
* testsuite/20_util/specialized_algorithms/uninitialized_value_construct_n/94540.cc:
|
||||
New test.
|
||||
* testsuite/23_containers/vector/cons/94540.cc: New test.
|
||||
|
||||
--- libstdc++-v3/include/bits/stl_uninitialized.h
|
||||
+++ libstdc++-v3/include/bits/stl_uninitialized.h
|
||||
@@ -556,7 +556,14 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
|
||||
typedef typename iterator_traits<_ForwardIterator>::value_type
|
||||
_ValueType;
|
||||
|
||||
- std::fill(__first, __last, _ValueType());
|
||||
+ if (__first == __last)
|
||||
+ return;
|
||||
+
|
||||
+ typename iterator_traits<_ForwardIterator>::value_type* __val
|
||||
+ = std::__addressof(*__first);
|
||||
+ std::_Construct(__val);
|
||||
+ if (++__first != __last)
|
||||
+ std::fill(__first, __last, *__val);
|
||||
}
|
||||
};
|
||||
|
||||
@@ -589,16 +596,20 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
|
||||
static _ForwardIterator
|
||||
__uninit_default_n(_ForwardIterator __first, _Size __n)
|
||||
{
|
||||
- typedef typename iterator_traits<_ForwardIterator>::value_type
|
||||
- _ValueType;
|
||||
-
|
||||
- return std::fill_n(__first, __n, _ValueType());
|
||||
+ if (__n > 0)
|
||||
+ {
|
||||
+ typename iterator_traits<_ForwardIterator>::value_type* __val
|
||||
+ = std::__addressof(*__first);
|
||||
+ std::_Construct(__val);
|
||||
+ ++__first;
|
||||
+ __first = std::fill_n(__first, __n - 1, *__val);
|
||||
+ }
|
||||
+ return __first;
|
||||
}
|
||||
};
|
||||
|
||||
// __uninitialized_default
|
||||
- // Fills [first, last) with std::distance(first, last) default
|
||||
- // constructed value_types(s).
|
||||
+ // Fills [first, last) with value-initialized value_types.
|
||||
template<typename _ForwardIterator>
|
||||
inline void
|
||||
__uninitialized_default(_ForwardIterator __first,
|
||||
@@ -615,7 +626,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
|
||||
}
|
||||
|
||||
// __uninitialized_default_n
|
||||
- // Fills [first, first + n) with n default constructed value_type(s).
|
||||
+ // Fills [first, first + n) with value-initialized value_types.
|
||||
template<typename _ForwardIterator, typename _Size>
|
||||
inline _ForwardIterator
|
||||
__uninitialized_default_n(_ForwardIterator __first, _Size __n)
|
||||
@@ -633,8 +644,8 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
|
||||
|
||||
|
||||
// __uninitialized_default_a
|
||||
- // Fills [first, last) with std::distance(first, last) default
|
||||
- // constructed value_types(s), constructed with the allocator alloc.
|
||||
+ // Fills [first, last) with value_types constructed by the allocator
|
||||
+ // alloc, with no arguments passed to the construct call.
|
||||
template<typename _ForwardIterator, typename _Allocator>
|
||||
void
|
||||
__uninitialized_default_a(_ForwardIterator __first,
|
||||
@@ -664,8 +675,8 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
|
||||
|
||||
|
||||
// __uninitialized_default_n_a
|
||||
- // Fills [first, first + n) with n default constructed value_types(s),
|
||||
- // constructed with the allocator alloc.
|
||||
+ // Fills [first, first + n) with value_types constructed by the allocator
|
||||
+ // alloc, with no arguments passed to the construct call.
|
||||
template<typename _ForwardIterator, typename _Size, typename _Allocator>
|
||||
_ForwardIterator
|
||||
__uninitialized_default_n_a(_ForwardIterator __first, _Size __n,
|
||||
@@ -686,6 +697,8 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
|
||||
}
|
||||
}
|
||||
|
||||
+ // __uninitialized_default_n_a specialization for std::allocator,
|
||||
+ // which ignores the allocator and value-initializes the elements.
|
||||
template<typename _ForwardIterator, typename _Size, typename _Tp>
|
||||
inline _ForwardIterator
|
||||
__uninitialized_default_n_a(_ForwardIterator __first, _Size __n,
|
||||
@@ -757,8 +770,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
|
||||
};
|
||||
|
||||
// __uninitialized_default_novalue
|
||||
- // Fills [first, last) with std::distance(first, last) default-initialized
|
||||
- // value_types(s).
|
||||
+ // Fills [first, last) with default-initialized value_types.
|
||||
template<typename _ForwardIterator>
|
||||
inline void
|
||||
__uninitialized_default_novalue(_ForwardIterator __first,
|
||||
@@ -772,8 +784,8 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
|
||||
__uninit_default_novalue(__first, __last);
|
||||
}
|
||||
|
||||
- // __uninitialized_default_n
|
||||
- // Fills [first, first + n) with n default-initialized value_type(s).
|
||||
+ // __uninitialized_default_novalue_n
|
||||
+ // Fills [first, first + n) with default-initialized value_types.
|
||||
template<typename _ForwardIterator, typename _Size>
|
||||
inline _ForwardIterator
|
||||
__uninitialized_default_novalue_n(_ForwardIterator __first, _Size __n)
|
||||
--- /dev/null
|
||||
+++ libstdc++-v3/testsuite/20_util/specialized_algorithms/uninitialized_default/94540.cc
|
||||
@@ -0,0 +1,34 @@
|
||||
+// Copyright (C) 2020 Free Software Foundation, Inc.
|
||||
+//
|
||||
+// This file is part of the GNU ISO C++ Library. This library is free
|
||||
+// software; you can redistribute it and/or modify it under the
|
||||
+// terms of the GNU General Public License as published by the
|
||||
+// Free Software Foundation; either version 3, or (at your option)
|
||||
+// any later version.
|
||||
+
|
||||
+// This library is distributed in the hope that it will be useful,
|
||||
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
+// GNU General Public License for more details.
|
||||
+
|
||||
+// You should have received a copy of the GNU General Public License along
|
||||
+// with this library; see the file COPYING3. If not see
|
||||
+// <http://www.gnu.org/licenses/>.
|
||||
+
|
||||
+// { dg-do run { target { c++11 && { ! simulator } } } }
|
||||
+
|
||||
+#include <memory>
|
||||
+#include <testsuite_hooks.h>
|
||||
+
|
||||
+// Assume that 9MB is larger than the stack limit.
|
||||
+struct X { char data[9*1024*1024]; };
|
||||
+
|
||||
+static_assert( std::is_trivial<X>::value, "" );
|
||||
+
|
||||
+int main()
|
||||
+{
|
||||
+ auto mem = new char[sizeof(X) * 2];
|
||||
+ auto p = reinterpret_cast<X*>(mem);
|
||||
+ std::__uninitialized_default(p, p + 2);
|
||||
+ delete[] mem;
|
||||
+}
|
||||
--- /dev/null
|
||||
+++ libstdc++-v3/testsuite/20_util/specialized_algorithms/uninitialized_default_n/94540.cc
|
||||
@@ -0,0 +1,34 @@
|
||||
+// Copyright (C) 2020 Free Software Foundation, Inc.
|
||||
+//
|
||||
+// This file is part of the GNU ISO C++ Library. This library is free
|
||||
+// software; you can redistribute it and/or modify it under the
|
||||
+// terms of the GNU General Public License as published by the
|
||||
+// Free Software Foundation; either version 3, or (at your option)
|
||||
+// any later version.
|
||||
+
|
||||
+// This library is distributed in the hope that it will be useful,
|
||||
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
+// GNU General Public License for more details.
|
||||
+
|
||||
+// You should have received a copy of the GNU General Public License along
|
||||
+// with this library; see the file COPYING3. If not see
|
||||
+// <http://www.gnu.org/licenses/>.
|
||||
+
|
||||
+// { dg-do run { target { c++11 && { ! simulator } } } }
|
||||
+
|
||||
+#include <memory>
|
||||
+#include <testsuite_hooks.h>
|
||||
+
|
||||
+// Assume that 9MB is larger than the stack limit.
|
||||
+struct X { char data[9*1024*1024]; };
|
||||
+
|
||||
+static_assert( std::is_trivial<X>::value, "" );
|
||||
+
|
||||
+int main()
|
||||
+{
|
||||
+ auto mem = new char[sizeof(X) * 2];
|
||||
+ auto p = reinterpret_cast<X*>(mem);
|
||||
+ std::__uninitialized_default_n(p, 2);
|
||||
+ delete[] mem;
|
||||
+}
|
||||
--- /dev/null
|
||||
+++ libstdc++-v3/testsuite/20_util/specialized_algorithms/uninitialized_value_construct/94540.cc
|
||||
@@ -0,0 +1,35 @@
|
||||
+// Copyright (C) 2020 Free Software Foundation, Inc.
|
||||
+//
|
||||
+// This file is part of the GNU ISO C++ Library. This library is free
|
||||
+// software; you can redistribute it and/or modify it under the
|
||||
+// terms of the GNU General Public License as published by the
|
||||
+// Free Software Foundation; either version 3, or (at your option)
|
||||
+// any later version.
|
||||
+
|
||||
+// This library is distributed in the hope that it will be useful,
|
||||
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
+// GNU General Public License for more details.
|
||||
+
|
||||
+// You should have received a copy of the GNU General Public License along
|
||||
+// with this library; see the file COPYING3. If not see
|
||||
+// <http://www.gnu.org/licenses/>.
|
||||
+
|
||||
+// { dg-options "-std=gnu++17" }
|
||||
+// { dg-do run { target { c++17 && { ! simulator } } } }
|
||||
+
|
||||
+#include <memory>
|
||||
+#include <testsuite_hooks.h>
|
||||
+
|
||||
+// Assume that 9MB is larger than the stack limit.
|
||||
+struct X { char data[9*1024*1024]; };
|
||||
+
|
||||
+static_assert( std::is_trivial_v<X> );
|
||||
+
|
||||
+int main()
|
||||
+{
|
||||
+ auto mem = new char[sizeof(X) * 2];
|
||||
+ auto p = reinterpret_cast<X*>(mem);
|
||||
+ std::uninitialized_value_construct(p, p + 2);
|
||||
+ delete[] mem;
|
||||
+}
|
||||
--- /dev/null
|
||||
+++ libstdc++-v3/testsuite/20_util/specialized_algorithms/uninitialized_value_construct_n/94540.cc
|
||||
@@ -0,0 +1,34 @@
|
||||
+// Copyright (C) 2020 Free Software Foundation, Inc.
|
||||
+//
|
||||
+// This file is part of the GNU ISO C++ Library. This library is free
|
||||
+// software; you can redistribute it and/or modify it under the
|
||||
+// terms of the GNU General Public License as published by the
|
||||
+// Free Software Foundation; either version 3, or (at your option)
|
||||
+// any later version.
|
||||
+
|
||||
+// This library is distributed in the hope that it will be useful,
|
||||
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
+// GNU General Public License for more details.
|
||||
+
|
||||
+// You should have received a copy of the GNU General Public License along
|
||||
+// with this library; see the file COPYING3. If not see
|
||||
+// <http://www.gnu.org/licenses/>.
|
||||
+
|
||||
+// { dg-options "-std=gnu++17" }
|
||||
+// { dg-do run { target { c++17 && { ! simulator } } } }
|
||||
+
|
||||
+#include <memory>
|
||||
+#include <testsuite_hooks.h>
|
||||
+
|
||||
+// Assume that 9MB is larger than the stack limit.
|
||||
+struct X { char data[9*1024*1024]; };
|
||||
+
|
||||
+static_assert( std::is_trivial_v<X> );
|
||||
+
|
||||
+int main()
|
||||
+{
|
||||
+ auto mem = new char[sizeof(X) * 2];
|
||||
+ std::uninitialized_value_construct_n(reinterpret_cast<X*>(mem), 2);
|
||||
+ delete[] mem;
|
||||
+}
|
||||
--- /dev/null
|
||||
+++ libstdc++-v3/testsuite/23_containers/vector/cons/94540.cc
|
||||
@@ -0,0 +1,35 @@
|
||||
+// Copyright (C) 2020 Free Software Foundation, Inc.
|
||||
+//
|
||||
+// This file is part of the GNU ISO C++ Library. This library is free
|
||||
+// software; you can redistribute it and/or modify it under the
|
||||
+// terms of the GNU General Public License as published by the
|
||||
+// Free Software Foundation; either version 3, or (at your option)
|
||||
+// any later version.
|
||||
+
|
||||
+// This library is distributed in the hope that it will be useful,
|
||||
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
+// GNU General Public License for more details.
|
||||
+
|
||||
+// You should have received a copy of the GNU General Public License along
|
||||
+// with this library; see the file COPYING3. If not see
|
||||
+// <http://www.gnu.org/licenses/>.
|
||||
+
|
||||
+// { dg-do run { target { c++11 && { ! simulator } } } }
|
||||
+
|
||||
+#include <vector>
|
||||
+#include <testsuite_hooks.h>
|
||||
+
|
||||
+// Assume that 9MB is larger than the stack limit.
|
||||
+struct X { char data[9*1024*1024]; };
|
||||
+
|
||||
+static_assert( std::is_trivial<X>::value, "" );
|
||||
+
|
||||
+int main()
|
||||
+{
|
||||
+ std::vector<X> v(1);
|
||||
+ VERIFY( v.size() == 1 );
|
||||
+ v.clear();
|
||||
+ v.resize(2);
|
||||
+ VERIFY( v.size() == 2 );
|
||||
+}
|
236
SOURCES/gcc10-pr96383.patch
Normal file
236
SOURCES/gcc10-pr96383.patch
Normal file
@ -0,0 +1,236 @@
|
||||
2020-07-30 Richard Biener <rguenther@suse.de>
|
||||
|
||||
PR debug/96383
|
||||
* langhooks-def.h (lhd_finalize_early_debug): Declare.
|
||||
(LANG_HOOKS_FINALIZE_EARLY_DEBUG): Define.
|
||||
(LANG_HOOKS_INITIALIZER): Amend.
|
||||
* langhooks.c: Include cgraph.h and debug.h.
|
||||
(lhd_finalize_early_debug): Default implementation from
|
||||
former code in finalize_compilation_unit.
|
||||
* langhooks.h (lang_hooks::finalize_early_debug): Add.
|
||||
* cgraphunit.c (symbol_table::finalize_compilation_unit):
|
||||
Call the finalize_early_debug langhook.
|
||||
|
||||
gcc/c-family/
|
||||
* c-common.h (c_common_finalize_early_debug): Declare.
|
||||
* c-common.c: Include debug.h.
|
||||
(c_common_finalize_early_debug): finalize_early_debug langhook
|
||||
implementation generating debug for extern declarations.
|
||||
|
||||
gcc/c/
|
||||
* c-objc-common.h (LANG_HOOKS_FINALIZE_EARLY_DEBUG):
|
||||
Define to c_common_finalize_early_debug.
|
||||
|
||||
gcc/cp/
|
||||
* cp-objcp-common.h (LANG_HOOKS_FINALIZE_EARLY_DEBUG):
|
||||
Define to c_common_finalize_early_debug.
|
||||
|
||||
gcc/testsuite/
|
||||
* gcc.dg/debug/dwarf2/pr96383-1.c: New testcase.
|
||||
* gcc.dg/debug/dwarf2/pr96383-2.c: Likewise.
|
||||
|
||||
libstdc++-v3/
|
||||
* testsuite/20_util/assume_aligned/3.cc: Use -g0.
|
||||
|
||||
--- gcc/c-family/c-common.c
|
||||
+++ gcc/c-family/c-common.c
|
||||
@@ -50,6 +50,7 @@ along with GCC; see the file COPYING3. If not see
|
||||
#include "spellcheck.h"
|
||||
#include "c-spellcheck.h"
|
||||
#include "selftest.h"
|
||||
+#include "debug.h"
|
||||
|
||||
cpp_reader *parse_in; /* Declared in c-pragma.h. */
|
||||
|
||||
@@ -9086,4 +9087,20 @@ braced_lists_to_strings (tree type, tree ctor)
|
||||
return braced_lists_to_strings (type, ctor, false);
|
||||
}
|
||||
|
||||
+
|
||||
+/* Emit debug for functions before finalizing early debug. */
|
||||
+
|
||||
+void
|
||||
+c_common_finalize_early_debug (void)
|
||||
+{
|
||||
+ /* Emit early debug for reachable functions, and by consequence,
|
||||
+ locally scoped symbols. Also emit debug for extern declared
|
||||
+ functions that are still reachable at this point. */
|
||||
+ struct cgraph_node *cnode;
|
||||
+ FOR_EACH_FUNCTION (cnode)
|
||||
+ if (!cnode->alias && !cnode->thunk.thunk_p
|
||||
+ && (cnode->has_gimple_body_p () || !DECL_IS_BUILTIN (cnode->decl)))
|
||||
+ (*debug_hooks->early_global_decl) (cnode->decl);
|
||||
+}
|
||||
+
|
||||
#include "gt-c-family-c-common.h"
|
||||
--- gcc/c-family/c-common.h
|
||||
+++ gcc/c-family/c-common.h
|
||||
@@ -885,6 +885,8 @@ extern bool bool_promoted_to_int_p (tree);
|
||||
extern tree fold_for_warn (tree);
|
||||
extern tree c_common_get_narrower (tree, int *);
|
||||
extern bool get_attribute_operand (tree, unsigned HOST_WIDE_INT *);
|
||||
+extern void c_common_finalize_early_debug (void);
|
||||
+
|
||||
|
||||
#define c_sizeof(LOC, T) c_sizeof_or_alignof_type (LOC, T, true, false, 1)
|
||||
#define c_alignof(LOC, T) c_sizeof_or_alignof_type (LOC, T, false, false, 1)
|
||||
--- gcc/c/c-objc-common.h
|
||||
+++ gcc/c/c-objc-common.h
|
||||
@@ -65,6 +65,8 @@ along with GCC; see the file COPYING3. If not see
|
||||
c_simulate_builtin_function_decl
|
||||
#undef LANG_HOOKS_EMITS_BEGIN_STMT
|
||||
#define LANG_HOOKS_EMITS_BEGIN_STMT true
|
||||
+#undef LANG_HOOKS_FINALIZE_EARLY_DEBUG
|
||||
+#define LANG_HOOKS_FINALIZE_EARLY_DEBUG c_common_finalize_early_debug
|
||||
|
||||
/* Attribute hooks. */
|
||||
#undef LANG_HOOKS_COMMON_ATTRIBUTE_TABLE
|
||||
--- gcc/cgraphunit.c
|
||||
+++ gcc/cgraphunit.c
|
||||
@@ -2998,11 +2998,9 @@ symbol_table::finalize_compilation_unit (void)
|
||||
|
||||
if (!seen_error ())
|
||||
{
|
||||
- /* Emit early debug for reachable functions, and by consequence,
|
||||
- locally scoped symbols. */
|
||||
- struct cgraph_node *cnode;
|
||||
- FOR_EACH_FUNCTION_WITH_GIMPLE_BODY (cnode)
|
||||
- (*debug_hooks->early_global_decl) (cnode->decl);
|
||||
+ /* Give the frontends the chance to emit early debug based on
|
||||
+ what is still reachable in the TU. */
|
||||
+ (*lang_hooks.finalize_early_debug) ();
|
||||
|
||||
/* Clean up anything that needs cleaning up after initial debug
|
||||
generation. */
|
||||
--- gcc/cp/cp-objcp-common.h
|
||||
+++ gcc/cp/cp-objcp-common.h
|
||||
@@ -115,6 +115,8 @@ extern tree cxx_simulate_enum_decl (location_t, const char *,
|
||||
#define LANG_HOOKS_BLOCK_MAY_FALLTHRU cxx_block_may_fallthru
|
||||
#undef LANG_HOOKS_EMITS_BEGIN_STMT
|
||||
#define LANG_HOOKS_EMITS_BEGIN_STMT true
|
||||
+#undef LANG_HOOKS_FINALIZE_EARLY_DEBUG
|
||||
+#define LANG_HOOKS_FINALIZE_EARLY_DEBUG c_common_finalize_early_debug
|
||||
|
||||
/* Attribute hooks. */
|
||||
#undef LANG_HOOKS_COMMON_ATTRIBUTE_TABLE
|
||||
--- gcc/langhooks-def.h
|
||||
+++ gcc/langhooks-def.h
|
||||
@@ -92,6 +92,7 @@ extern const char *lhd_get_substring_location (const substring_loc &,
|
||||
location_t *out_loc);
|
||||
extern int lhd_decl_dwarf_attribute (const_tree, int);
|
||||
extern int lhd_type_dwarf_attribute (const_tree, int);
|
||||
+extern void lhd_finalize_early_debug (void);
|
||||
|
||||
#define LANG_HOOKS_NAME "GNU unknown"
|
||||
#define LANG_HOOKS_IDENTIFIER_SIZE sizeof (struct lang_identifier)
|
||||
@@ -139,6 +140,7 @@ extern int lhd_type_dwarf_attribute (const_tree, int);
|
||||
#define LANG_HOOKS_EMITS_BEGIN_STMT false
|
||||
#define LANG_HOOKS_RUN_LANG_SELFTESTS lhd_do_nothing
|
||||
#define LANG_HOOKS_GET_SUBSTRING_LOCATION lhd_get_substring_location
|
||||
+#define LANG_HOOKS_FINALIZE_EARLY_DEBUG lhd_finalize_early_debug
|
||||
|
||||
/* Attribute hooks. */
|
||||
#define LANG_HOOKS_ATTRIBUTE_TABLE NULL
|
||||
@@ -364,7 +366,8 @@ extern void lhd_end_section (void);
|
||||
LANG_HOOKS_CUSTOM_FUNCTION_DESCRIPTORS, \
|
||||
LANG_HOOKS_EMITS_BEGIN_STMT, \
|
||||
LANG_HOOKS_RUN_LANG_SELFTESTS, \
|
||||
- LANG_HOOKS_GET_SUBSTRING_LOCATION \
|
||||
+ LANG_HOOKS_GET_SUBSTRING_LOCATION, \
|
||||
+ LANG_HOOKS_FINALIZE_EARLY_DEBUG \
|
||||
}
|
||||
|
||||
#endif /* GCC_LANG_HOOKS_DEF_H */
|
||||
--- gcc/langhooks.c
|
||||
+++ gcc/langhooks.c
|
||||
@@ -36,6 +36,8 @@ along with GCC; see the file COPYING3. If not see
|
||||
#include "output.h"
|
||||
#include "timevar.h"
|
||||
#include "stor-layout.h"
|
||||
+#include "cgraph.h"
|
||||
+#include "debug.h"
|
||||
|
||||
/* Do nothing; in many cases the default hook. */
|
||||
|
||||
@@ -866,6 +868,18 @@ lhd_unit_size_without_reusable_padding (tree t)
|
||||
return TYPE_SIZE_UNIT (t);
|
||||
}
|
||||
|
||||
+/* Default implementation for the finalize_early_debug hook. */
|
||||
+
|
||||
+void
|
||||
+lhd_finalize_early_debug (void)
|
||||
+{
|
||||
+ /* Emit early debug for reachable functions, and by consequence,
|
||||
+ locally scoped symbols. */
|
||||
+ struct cgraph_node *cnode;
|
||||
+ FOR_EACH_FUNCTION_WITH_GIMPLE_BODY (cnode)
|
||||
+ (*debug_hooks->early_global_decl) (cnode->decl);
|
||||
+}
|
||||
+
|
||||
/* Returns true if the current lang_hooks represents the GNU C frontend. */
|
||||
|
||||
bool
|
||||
--- gcc/langhooks.h
|
||||
+++ gcc/langhooks.h
|
||||
@@ -580,6 +580,9 @@ struct lang_hooks
|
||||
const char *(*get_substring_location) (const substring_loc &,
|
||||
location_t *out_loc);
|
||||
|
||||
+ /* Invoked before the early_finish debug hook is invoked. */
|
||||
+ void (*finalize_early_debug) (void);
|
||||
+
|
||||
/* Whenever you add entries here, make sure you adjust langhooks-def.h
|
||||
and langhooks.c accordingly. */
|
||||
};
|
||||
--- gcc/testsuite/gcc.dg/debug/dwarf2/pr96383-1.c
|
||||
+++ gcc/testsuite/gcc.dg/debug/dwarf2/pr96383-1.c
|
||||
@@ -0,0 +1,17 @@
|
||||
+/* { dg-do compile } */
|
||||
+/* { dg-options "-g -gdwarf -dA" } */
|
||||
+
|
||||
+extern void foo (int);
|
||||
+extern void unusedbar (int);
|
||||
+
|
||||
+int main()
|
||||
+{
|
||||
+ foo (1);
|
||||
+}
|
||||
+
|
||||
+/* We want subprogram DIEs for both foo and main and a DIE for
|
||||
+ the formal parameter of foo. We do not want a DIE for
|
||||
+ unusedbar. */
|
||||
+/* { dg-final { scan-assembler-times "DW_TAG_subprogram" 4 } } */
|
||||
+/* { dg-final { scan-assembler-times "DW_TAG_formal_parameter" 2 } } */
|
||||
+/* { dg-final { scan-assembler-not "unusedbar" } } */
|
||||
--- gcc/testsuite/gcc.dg/debug/dwarf2/pr96383-2.c
|
||||
+++ gcc/testsuite/gcc.dg/debug/dwarf2/pr96383-2.c
|
||||
@@ -0,0 +1,17 @@
|
||||
+/* { dg-do compile } */
|
||||
+/* { dg-options "-g -O2 -gdwarf -dA" } */
|
||||
+
|
||||
+extern void foo (int);
|
||||
+extern void unusedbar (int);
|
||||
+
|
||||
+int main()
|
||||
+{
|
||||
+ foo (1);
|
||||
+}
|
||||
+
|
||||
+/* We want subprogram DIEs for both foo and main and a DIE for
|
||||
+ the formal parameter of foo. We do not want a DIE for
|
||||
+ unusedbar. */
|
||||
+/* { dg-final { scan-assembler-times "DW_TAG_subprogram" 4 } } */
|
||||
+/* { dg-final { scan-assembler-times "DW_TAG_formal_parameter" 2 } } */
|
||||
+/* { dg-final { scan-assembler-not "unusedbar" } } */
|
||||
--- libstdc++-v3/testsuite/20_util/assume_aligned/3.cc
|
||||
+++ libstdc++-v3/testsuite/20_util/assume_aligned/3.cc
|
||||
@@ -15,7 +15,7 @@
|
||||
// with this library; see the file COPYING3. If not see
|
||||
// <http://www.gnu.org/licenses/>.
|
||||
|
||||
-// { dg-options "-std=gnu++2a -O2" }
|
||||
+// { dg-options "-std=gnu++2a -O2 -g0" }
|
||||
// { dg-do compile { target c++2a } }
|
||||
// { dg-final { scan-assembler-not "undefined" } }
|
||||
|
22
SOURCES/gcc10-pr96385.patch
Normal file
22
SOURCES/gcc10-pr96385.patch
Normal file
@ -0,0 +1,22 @@
|
||||
2020-08-03 Richard Biener <rguenther@suse.de>
|
||||
|
||||
PR lto/96385
|
||||
libiberty/
|
||||
* simple-object-elf.c
|
||||
(simple_object_elf_copy_lto_debug_sections): Localize global
|
||||
UNDEFs and reuse the prevailing name.
|
||||
|
||||
--- libiberty/simple-object-elf.c
|
||||
+++ libiberty/simple-object-elf.c
|
||||
@@ -1467,6 +1467,11 @@ simple_object_elf_copy_lto_debug_sections (simple_object_read *sobj,
|
||||
&& st_shndx < shnum
|
||||
&& pfnret[st_shndx - 1] == -1)
|
||||
discard = 1;
|
||||
+ /* We also need to remove global UNDEFs which can
|
||||
+ cause link fails later. */
|
||||
+ else if (st_shndx == SHN_UNDEF
|
||||
+ && ELF_ST_BIND (*st_info) == STB_GLOBAL)
|
||||
+ discard = 1;
|
||||
|
||||
if (discard)
|
||||
{
|
@ -2,13 +2,13 @@
|
||||
%{?scl:%global __strip %%{_scl_root}/usr/bin/strip}
|
||||
%{?scl:%global __objdump %%{_scl_root}/usr/bin/objdump}
|
||||
%{?scl:%scl_package gcc}
|
||||
%global DATE 20200507
|
||||
%global gitrev 563509ad4338c7193d06f4008e9df657990628a5
|
||||
%global gcc_version 10.1.1
|
||||
%global DATE 20200804
|
||||
%global gitrev 08d83635c2ab388f6139db6965e600b296ad85e6
|
||||
%global gcc_version 10.2.1
|
||||
%global gcc_major 10
|
||||
# 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 2
|
||||
%global nvptx_tools_gitrev 5f6f343a302d620b0868edab376c00b15741e39e
|
||||
%global newlib_cygwin_gitrev 50e2a63b04bdd018484605fbb954fd1bd5147fa0
|
||||
%global mpc_version 0.8.1
|
||||
@ -123,7 +123,7 @@
|
||||
Summary: GCC version 10
|
||||
Name: %{?scl_prefix}gcc
|
||||
Version: %{gcc_version}
|
||||
Release: %{gcc_release}.1%{?dist}
|
||||
Release: %{gcc_release}%{?dist}
|
||||
# libgcc, libgfortran, libgomp, libstdc++ and crtstuff have
|
||||
# GCC Runtime Exception.
|
||||
License: GPLv3+ and GPLv3+ with exceptions and GPLv2+ with exceptions and LGPLv2+ and BSD
|
||||
@ -236,7 +236,7 @@ Requires: glibc-devel >= 2.2.90-12
|
||||
Requires: glibc >= 2.3.90-35
|
||||
%endif
|
||||
BuildRequires: gmp-devel >= 4.1.2-8
|
||||
BuildRequires: mpfr-devel >= 2.2.1
|
||||
BuildRequires: mpfr-devel >= 3.1.0
|
||||
%if 0%{?rhel} >= 7
|
||||
BuildRequires: libmpc-devel >= 0.8.1
|
||||
%endif
|
||||
@ -308,10 +308,14 @@ Patch8: gcc10-foffload-default.patch
|
||||
Patch9: gcc10-Wno-format-security.patch
|
||||
Patch10: gcc10-rh1574936.patch
|
||||
Patch11: gcc10-d-shared-libphobos.patch
|
||||
Patch12: gcc10-pr94540.patch
|
||||
Patch13: gcc10-pr96383.patch
|
||||
Patch14: gcc10-pr96385.patch
|
||||
|
||||
Patch1000: gcc10-libstdc++-compat.patch
|
||||
Patch1002: gcc10-isl-dl2.patch
|
||||
Patch1003: gcc10-libgfortran-compat.patch
|
||||
Patch1004: gcc10-libgfortran-compat-2.patch
|
||||
|
||||
Patch3001: 0001-Default-widths-for-i-f-and-g-format-specifiers-in-fo.patch
|
||||
Patch3002: 0002-Allow-duplicate-declarations.patch
|
||||
@ -522,7 +526,7 @@ GNU Transactional Memory library.
|
||||
Summary: Support for compiling GCC plugins
|
||||
Requires: %{?scl_prefix}gcc%{!?scl:10} = %{version}-%{release}
|
||||
Requires: gmp-devel >= 4.1.2-8
|
||||
Requires: mpfr-devel >= 2.2.1
|
||||
Requires: mpfr-devel >= 3.1.0
|
||||
%if 0%{?rhel} >= 7
|
||||
Requires: libmpc-devel >= 0.8.1
|
||||
%endif
|
||||
@ -656,12 +660,16 @@ to NVidia PTX capable devices if available.
|
||||
%patch10 -p0 -b .rh1574936~
|
||||
%endif
|
||||
%patch11 -p0 -b .d-shared-libphobos~
|
||||
%patch12 -p0 -b .pr94540~
|
||||
%patch13 -p0 -b .pr96383~
|
||||
%patch14 -p0 -b .pr96385~
|
||||
|
||||
%patch1000 -p0 -b .libstdc++-compat~
|
||||
%if %{build_isl}
|
||||
%patch1002 -p0 -b .isl-dl2~
|
||||
%endif
|
||||
%patch1003 -p0 -b .libgfortran-compat~
|
||||
%patch1004 -p0 -b .libgfortran-compat-2~
|
||||
|
||||
%if 0
|
||||
%patch3001 -p1 -b .fortran01~
|
||||
@ -715,10 +723,11 @@ fi
|
||||
rm -f gcc/testsuite/go.test/test/chan/goroutines.go
|
||||
|
||||
# These tests get stuck and don't timeout.
|
||||
%ifarch ppc64
|
||||
%ifarch ppc ppc64 ppc64le
|
||||
rm -f libgomp/testsuite/libgomp.c/target-32.c
|
||||
rm -f libgomp/testsuite/libgomp.c/target-33.c
|
||||
rm -f libgomp/testsuite/libgomp.c/target-34.c
|
||||
rm -rf libgomp/testsuite/libgomp.oacc*
|
||||
%endif
|
||||
|
||||
%build
|
||||
@ -818,6 +827,7 @@ cd ../..
|
||||
CC=gcc
|
||||
CXX=g++
|
||||
OPT_FLAGS=`echo %{optflags}|sed -e 's/\(-Wp,\)\?-D_FORTIFY_SOURCE=[12]//g'`
|
||||
OPT_FLAGS=`echo $OPT_FLAGS|sed -e 's/-flto=auto//g;s/-flto//g;s/-ffat-lto-objects//g'`
|
||||
OPT_FLAGS=`echo $OPT_FLAGS|sed -e 's/-m64//g;s/-m32//g;s/-m31//g'`
|
||||
OPT_FLAGS=`echo $OPT_FLAGS|sed -e 's/-mfpmath=sse/-mfpmath=sse -msse2/g'`
|
||||
OPT_FLAGS=`echo $OPT_FLAGS|sed -e 's/ -pipe / /g'`
|
||||
@ -1802,6 +1812,11 @@ chmod 755 %{buildroot}%{_prefix}/bin/%{multilib_32_arch}-%{_vendor}-%{_target_os
|
||||
# ??? Fedora uses _arch
|
||||
echo gcc-%{version}-%{release}.%{arch} > $FULLPATH/rpmver
|
||||
|
||||
# Add symlink to lto plugin in the binutils plugin directory.
|
||||
%{__mkdir_p} %{buildroot}%{_libdir}/bfd-plugins/
|
||||
ln -s ../../libexec/gcc/%{gcc_target_platform}/%{gcc_major}/liblto_plugin.so \
|
||||
%{buildroot}%{_libdir}/bfd-plugins/
|
||||
|
||||
%check
|
||||
cd obj-%{gcc_target_platform}
|
||||
|
||||
@ -1823,7 +1838,11 @@ cp -a %{gcc_target_platform}/libstdc++-v3/src/.libs/libstdc++_nonshared%{nonshar
|
||||
%endif
|
||||
|
||||
# run the tests.
|
||||
%ifnarch ppc ppc64 ppc64le
|
||||
make %{?_smp_mflags} -k check RUNTESTFLAGS="--target_board=unix/'{,-fstack-protector}'" || :
|
||||
%else
|
||||
make %{?_smp_mflags} -k check || :
|
||||
%endif
|
||||
( LC_ALL=C ../contrib/test_summary -t || : ) 2>&1 | sed -n '/^cat.*EOF/,/^EOF/{/^cat.*EOF/d;/^EOF/d;/^LAST_UPDATED:/d;p;}' > testresults
|
||||
rm -rf gcc/testsuite.prev
|
||||
mv gcc/testsuite{,.prev}
|
||||
@ -1981,6 +2000,7 @@ fi
|
||||
%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/lto1
|
||||
%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/lto-wrapper
|
||||
%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/liblto_plugin.so*
|
||||
%{_libdir}/bfd-plugins/liblto_plugin.so
|
||||
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/rpmver
|
||||
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/stddef.h
|
||||
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/stdarg.h
|
||||
@ -2597,6 +2617,28 @@ fi
|
||||
%endif
|
||||
|
||||
%changelog
|
||||
* Tue Aug 4 2020 Marek Polacek <polacek@redhat.com> 10.2.1-2
|
||||
- update from Fedora gcc 10.2.1-2
|
||||
- emit debug info for C/C++ external function declarations used in the TU
|
||||
(PR debug/96383)
|
||||
- discard SHN_UNDEF global symbols from LTO debuginfo (PR lto/96385)
|
||||
- strip also -flto=auto from optflags
|
||||
|
||||
* Sun Aug 2 2020 Marek Polacek <polacek@redhat.com> 10.2.1-1.2
|
||||
- avoid stack overflow in std::vector (PR libstdc++/94540, #1859670)
|
||||
- adjust some libstdc++_nonshared.a symbols
|
||||
- apply gcc10-libgfortran-compat-2.patch
|
||||
|
||||
* Fri Jul 31 2020 Marek Polacek <polacek@redhat.com> 10.2.1-1.1
|
||||
- hide various symbols in libstdc++_nonshared.a
|
||||
|
||||
* Mon Jul 27 2020 Marek Polacek <polacek@redhat.com> 10.2.1-1
|
||||
- GCC 10.2 release
|
||||
- add symlink to liblto_plugin.so in /usr/lib/bfd-plugins
|
||||
- disable -flto in %%{optflags}, lto bootstrap will be enabled the GCC way
|
||||
later
|
||||
- require MPFR Library version 3.1.0 (or later)
|
||||
|
||||
* Mon Jun 15 2020 Marek Polacek <polacek@redhat.com> 10.1.1-1.1
|
||||
- correct instructions for creation of newlib tarball, filter out sun-rpc
|
||||
licensed code that is never used during the package build
|
||||
|
Loading…
Reference in New Issue
Block a user