10.2.1-2
This commit is contained in:
		
							parent
							
								
									9186451072
								
							
						
					
					
						commit
						65f713bb7b
					
				
							
								
								
									
										1
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										1
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							@ -14,3 +14,4 @@
 | 
			
		||||
/gcc-10.1.1-20200507.tar.xz
 | 
			
		||||
/gcc-10.1.1-20200618.tar.xz
 | 
			
		||||
/gcc-10.2.1-20200723.tar.xz
 | 
			
		||||
/gcc-10.2.1-20200804.tar.xz
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										32
									
								
								gcc.spec
									
									
									
									
									
								
							
							
						
						
									
										32
									
								
								gcc.spec
									
									
									
									
									
								
							@ -1,10 +1,10 @@
 | 
			
		||||
%global DATE 20200723
 | 
			
		||||
%global gitrev 3fc88aa16f1bf661db4518d6d62869f081981981
 | 
			
		||||
%global DATE 20200803
 | 
			
		||||
%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 _unpackaged_files_terminate_build 0
 | 
			
		||||
@ -115,7 +115,7 @@
 | 
			
		||||
Summary: Various compilers (C, C++, Objective-C, ...)
 | 
			
		||||
Name: gcc
 | 
			
		||||
Version: %{gcc_version}
 | 
			
		||||
Release: %{gcc_release}%{?dist}.2
 | 
			
		||||
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
 | 
			
		||||
@ -264,6 +264,8 @@ Patch8: gcc10-foffload-default.patch
 | 
			
		||||
Patch9: gcc10-Wno-format-security.patch
 | 
			
		||||
Patch10: gcc10-rh1574936.patch
 | 
			
		||||
Patch11: gcc10-d-shared-libphobos.patch
 | 
			
		||||
Patch12: gcc10-pr96383.patch
 | 
			
		||||
Patch13: gcc10-pr96385.patch
 | 
			
		||||
 | 
			
		||||
# On ARM EABI systems, we do want -gnueabi to be part of the
 | 
			
		||||
# target triple.
 | 
			
		||||
@ -775,6 +777,8 @@ to NVidia PTX capable devices if available.
 | 
			
		||||
%patch10 -p0 -b .rh1574936~
 | 
			
		||||
%endif
 | 
			
		||||
%patch11 -p0 -b .d-shared-libphobos~
 | 
			
		||||
%patch12 -p0 -b .pr96383~
 | 
			
		||||
%patch13 -p0 -b .pr96385~
 | 
			
		||||
 | 
			
		||||
echo 'Red Hat %{version}-%{gcc_release}' > gcc/DEV-PHASE
 | 
			
		||||
 | 
			
		||||
@ -814,7 +818,7 @@ export CONFIG_SITE=NONE
 | 
			
		||||
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//g;s/-ffat-lto-objects//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'`
 | 
			
		||||
@ -3010,12 +3014,18 @@ end
 | 
			
		||||
%endif
 | 
			
		||||
 | 
			
		||||
%changelog
 | 
			
		||||
* Sat Aug 01 2020 Fedora Release Engineering <releng@fedoraproject.org> - 10.2.1-1.2
 | 
			
		||||
- Second attempt - Rebuilt for
 | 
			
		||||
  https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
 | 
			
		||||
 | 
			
		||||
* Mon Jul 27 2020 Fedora Release Engineering <releng@fedoraproject.org> - 10.2.1-1.1
 | 
			
		||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
 | 
			
		||||
* Tue Aug  3 2020 Jakub Jelinek <jakub@redhat.com> 10.2.1-2
 | 
			
		||||
- update from releases/gcc-10 branch
 | 
			
		||||
  - PRs c++/95591, c++/95599, c++/95823, c++/95824, c++/95895, c/96377,
 | 
			
		||||
	d/96140, fortran/89574, fortran/93567, fortran/93592, fortran/95585,
 | 
			
		||||
	fortran/95612, fortran/95980, fortran/96018, fortran/96086,
 | 
			
		||||
	fortran/96220, fortran/96319, lto/45375, middle-end/96335,
 | 
			
		||||
	target/95435, target/96190, target/96236, target/96260, target/96402,
 | 
			
		||||
	tree-optimization/96058
 | 
			
		||||
- 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
 | 
			
		||||
 | 
			
		||||
* Thu Jul 23 2020 Jakub Jelinek <jakub@redhat.com> 10.2.1-1
 | 
			
		||||
- update from releases/gcc-10 branch
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										236
									
								
								gcc10-pr96383.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										236
									
								
								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
									
								
								gcc10-pr96385.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										22
									
								
								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
									
								
								sources
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								sources
									
									
									
									
									
								
							@ -1,3 +1,3 @@
 | 
			
		||||
SHA512 (gcc-10.2.1-20200723.tar.xz) = e1719e4a18f43bb76acb91c0d768711e78d7e8c478b72e691911094e233570597997ed108ba7ed4fb136542993af935ea38ec462a1972689c9220d4cc0e2933f
 | 
			
		||||
SHA512 (gcc-10.2.1-20200804.tar.xz) = be849af9a5a8924c0ad957805a80859243f08d908f652b1290080ac6fd474d874be9745ecd209c9a069a65c44a3923841bec84f348f7352999cb3eac95b1c1cc
 | 
			
		||||
SHA512 (newlib-cygwin-50e2a63b04bdd018484605fbb954fd1bd5147fa0.tar.xz) = 002a48a7b689a81abbf16161bcaec001a842e67dfbe372e9e109092703bfc666675f16198f60ca429370e8850d564547dc505df81bc3aaca4ce6defbc014ad6c
 | 
			
		||||
SHA512 (nvptx-tools-5f6f343a302d620b0868edab376c00b15741e39e.tar.xz) = f6d10db94fa1570ae0f94df073fa3c73c8e5ee16d59070b53d94f7db0de8a031bc44d7f3f1852533da04b625ce758e022263855ed43cfc6867e0708d001e53c7
 | 
			
		||||
 | 
			
		||||
		Loading…
	
		Reference in New Issue
	
	Block a user