diff options
Diffstat (limited to 'toolchain/binutils')
12 files changed, 0 insertions, 496 deletions
diff --git a/toolchain/binutils/Config.in b/toolchain/binutils/Config.in index e9b2d30422..9d77137f4b 100644 --- a/toolchain/binutils/Config.in +++ b/toolchain/binutils/Config.in @@ -6,16 +6,6 @@ choice help Select the version of binutils you wish to use. - config BINUTILS_USE_VERSION_2_29_1 - depends on !arc - bool "Binutils 2.29.1" - select BINUTILS_VERSION_2_29_1 - - config BINUTILS_USE_VERSION_2_31_1 - depends on !arc - bool "Binutils 2.31.1" - select BINUTILS_VERSION_2_31_1 - config BINUTILS_USE_VERSION_2_32 bool "Binutils 2.32" select BINUTILS_VERSION_2_32 diff --git a/toolchain/binutils/Config.version b/toolchain/binutils/Config.version index e7924f89c3..5350b546a6 100644 --- a/toolchain/binutils/Config.version +++ b/toolchain/binutils/Config.version @@ -1,9 +1,3 @@ -config BINUTILS_VERSION_2_29_1 - bool - -config BINUTILS_VERSION_2_31_1 - bool - config BINUTILS_VERSION_2_32 bool @@ -13,7 +7,5 @@ config BINUTILS_VERSION_2_34 config BINUTILS_VERSION string - default "2.29.1" if BINUTILS_VERSION_2_29_1 - default "2.31.1" if BINUTILS_VERSION_2_31_1 default "2.32" if BINUTILS_VERSION_2_32 default "2.34" if BINUTILS_VERSION_2_34 diff --git a/toolchain/binutils/Makefile b/toolchain/binutils/Makefile index c5c8bf588c..b5e121a442 100644 --- a/toolchain/binutils/Makefile +++ b/toolchain/binutils/Makefile @@ -15,14 +15,6 @@ PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz TAR_OPTIONS += --exclude='*.rej' -ifeq ($(PKG_VERSION),2.29.1) - PKG_HASH:=e7010a46969f9d3e53b650a518663f98a5dde3c3ae21b7d71e5e6803bc36b577 -endif - -ifeq ($(PKG_VERSION),2.31.1) - PKG_HASH:=5d20086ecf5752cc7d9134246e9588fa201740d540f7eb84d795b1f7a93bca86 -endif - ifeq ($(PKG_VERSION),2.32) PKG_HASH:=0ab6c55dd86a92ed561972ba15b9b70a8b9f75557f896446c82e8b36e473ee04 endif diff --git a/toolchain/binutils/patches/2.29.1/300-001_ld_makefile_patch.patch b/toolchain/binutils/patches/2.29.1/300-001_ld_makefile_patch.patch deleted file mode 100644 index 4365197f74..0000000000 --- a/toolchain/binutils/patches/2.29.1/300-001_ld_makefile_patch.patch +++ /dev/null @@ -1,22 +0,0 @@ ---- a/ld/Makefile.am -+++ b/ld/Makefile.am -@@ -57,7 +57,7 @@ endif - # We put the scripts in the directory $(scriptdir)/ldscripts. - # We can't put the scripts in $(datadir) because the SEARCH_DIR - # directives need to be different for native and cross linkers. --scriptdir = $(tooldir)/lib -+scriptdir = $(libdir) - - EMUL = @EMUL@ - EMULATION_OFILES = @EMULATION_OFILES@ ---- a/ld/Makefile.in -+++ b/ld/Makefile.in -@@ -446,7 +446,7 @@ AM_CFLAGS = $(WARN_CFLAGS) $(ELF_CLFAGS) - # We put the scripts in the directory $(scriptdir)/ldscripts. - # We can't put the scripts in $(datadir) because the SEARCH_DIR - # directives need to be different for native and cross linkers. --scriptdir = $(tooldir)/lib -+scriptdir = $(libdir) - BASEDIR = $(srcdir)/.. - BFDDIR = $(BASEDIR)/bfd - INCDIR = $(BASEDIR)/include diff --git a/toolchain/binutils/patches/2.29.1/300-012_check_ldrunpath_length.patch b/toolchain/binutils/patches/2.29.1/300-012_check_ldrunpath_length.patch deleted file mode 100644 index 0b02c55978..0000000000 --- a/toolchain/binutils/patches/2.29.1/300-012_check_ldrunpath_length.patch +++ /dev/null @@ -1,20 +0,0 @@ ---- a/ld/emultempl/elf32.em -+++ b/ld/emultempl/elf32.em -@@ -1463,6 +1463,8 @@ fragment <<EOF - && command_line.rpath == NULL) - { - path = (const char *) getenv ("LD_RUN_PATH"); -+ if ((path) && (strlen (path) == 0)) -+ path = NULL; - if (path - && gld${EMULATION_NAME}_search_needed (path, &n, force)) - break; -@@ -1740,6 +1742,8 @@ gld${EMULATION_NAME}_before_allocation ( - rpath = command_line.rpath; - if (rpath == NULL) - rpath = (const char *) getenv ("LD_RUN_PATH"); -+ if ((rpath) && (strlen (rpath) == 0)) -+ rpath = NULL; - - for (abfd = link_info.input_bfds; abfd; abfd = abfd->link.next) - if (bfd_get_flavour (abfd) == bfd_target_elf_flavour) diff --git a/toolchain/binutils/patches/2.29.1/400-mips_no_dynamic_linking_sym.patch b/toolchain/binutils/patches/2.29.1/400-mips_no_dynamic_linking_sym.patch deleted file mode 100644 index a28e9348a3..0000000000 --- a/toolchain/binutils/patches/2.29.1/400-mips_no_dynamic_linking_sym.patch +++ /dev/null @@ -1,18 +0,0 @@ ---- a/bfd/elfxx-mips.c -+++ b/bfd/elfxx-mips.c -@@ -7871,6 +7871,7 @@ _bfd_mips_elf_create_dynamic_sections (b - - name = SGI_COMPAT (abfd) ? "_DYNAMIC_LINK" : "_DYNAMIC_LINKING"; - bh = NULL; -+ if (0) { - if (!(_bfd_generic_link_add_one_symbol - (info, abfd, name, BSF_GLOBAL, bfd_abs_section_ptr, 0, - NULL, FALSE, get_elf_backend_data (abfd)->collect, &bh))) -@@ -7883,6 +7884,7 @@ _bfd_mips_elf_create_dynamic_sections (b - - if (! bfd_elf_link_record_dynamic_symbol (info, h)) - return FALSE; -+ } - - if (! mips_elf_hash_table (info)->use_rld_obj_head) - { diff --git a/toolchain/binutils/patches/2.29.1/500-Change-default-emulation-for-mips64-linux.patch b/toolchain/binutils/patches/2.29.1/500-Change-default-emulation-for-mips64-linux.patch deleted file mode 100644 index 53d5b5ac5a..0000000000 --- a/toolchain/binutils/patches/2.29.1/500-Change-default-emulation-for-mips64-linux.patch +++ /dev/null @@ -1,37 +0,0 @@ ---- a/bfd/config.bfd -+++ b/bfd/config.bfd -@@ -1186,12 +1186,12 @@ case "${targ}" in - targ_selvecs="mips_elf32_le_vec mips_elf64_be_vec mips_elf64_le_vec mips_ecoff_be_vec mips_ecoff_le_vec" - ;; - mips64*el-*-linux*) -- targ_defvec=mips_elf32_ntrad_le_vec -- targ_selvecs="mips_elf32_ntrad_be_vec mips_elf32_trad_le_vec mips_elf32_trad_be_vec mips_elf64_trad_le_vec mips_elf64_trad_be_vec" -+ targ_defvec=mips_elf64_trad_le_vec -+ targ_selvecs="mips_elf32_ntrad_le_vec mips_elf32_ntrad_be_vec mips_elf32_trad_le_vec mips_elf32_trad_be_vec mips_elf64_trad_be_vec" - ;; - mips64*-*-linux*) -- targ_defvec=mips_elf32_ntrad_be_vec -- targ_selvecs="mips_elf32_ntrad_le_vec mips_elf32_trad_be_vec mips_elf32_trad_le_vec mips_elf64_trad_be_vec mips_elf64_trad_le_vec" -+ targ_defvec=mips_elf64_trad_be_vec -+ targ_selvecs="mips_elf32_ntrad_be_vec mips_elf32_ntrad_le_vec mips_elf32_trad_be_vec mips_elf32_trad_le_vec mips_elf64_trad_le_vec" - ;; - mips*el-*-linux*) - targ_defvec=mips_elf32_trad_le_vec ---- a/ld/configure.tgt -+++ b/ld/configure.tgt -@@ -530,11 +530,11 @@ mips*el-*-vxworks*) targ_emul=elf32elmip - mips*-*-vxworks*) targ_emul=elf32ebmipvxworks - targ_extra_emuls="elf32elmipvxworks" ;; - mips*-*-windiss) targ_emul=elf32mipswindiss ;; --mips64*el-*-linux-*) targ_emul=elf32ltsmipn32 -- targ_extra_emuls="elf32btsmipn32 elf32ltsmip elf32btsmip elf64ltsmip elf64btsmip" -+mips64*el-*-linux-*) targ_emul=elf64ltsmip -+ targ_extra_emuls="elf32btsmipn32 elf32ltsmipn32 elf32ltsmip elf32btsmip elf64btsmip" - targ_extra_libpath=$targ_extra_emuls ;; --mips64*-*-linux-*) targ_emul=elf32btsmipn32 -- targ_extra_emuls="elf32ltsmipn32 elf32btsmip elf32ltsmip elf64btsmip elf64ltsmip" -+mips64*-*-linux-*) targ_emul=elf64btsmip -+ targ_extra_emuls="elf32btsmipn32 elf32ltsmipn32 elf32btsmip elf32ltsmip elf64ltsmip" - targ_extra_libpath=$targ_extra_emuls ;; - mips*el-*-linux-*) targ_emul=elf32ltsmip - targ_extra_emuls="elf32btsmip elf32ltsmipn32 elf64ltsmip elf32btsmipn32 elf64btsmip" diff --git a/toolchain/binutils/patches/2.31.1/100-delay_evaluation_of_alignment_expressions_in_output_sections.patch b/toolchain/binutils/patches/2.31.1/100-delay_evaluation_of_alignment_expressions_in_output_sections.patch deleted file mode 100644 index c006c94af6..0000000000 --- a/toolchain/binutils/patches/2.31.1/100-delay_evaluation_of_alignment_expressions_in_output_sections.patch +++ /dev/null @@ -1,276 +0,0 @@ -From 3d9c8f6b3f033a6092425b7344647fb51dbed5c6 Mon Sep 17 00:00:00 2001 -From: Alan Modra <amodra@gmail.com> -Date: Sun, 26 Aug 2018 14:23:38 +0930 -Subject: [PATCH] Delay evaluation of alignment expressions in output sections - -git commit 702d16713 broke expressions using CONSTANT(COMMONPAGESIZE) -in ALIGN or SUBALIGN of output section statements, because these -optional fields were evaluated at script parse time and the patch in -question delayed setting of config.commonpagesize. The right thing to -do is keep the tree representation of those fields for later -evaluation. - - PR 23571 - * ldlang.h (section_alignment): Make it an expression tree. - (subsection_alignment): Likewise. - * ldlang.c (topower): Delete. - (output_section_statement_newfunc): Adjust initialization. - (init_os): Evaluate section_alignment. - (lang_size_sections_1): Likewise. - (size_input_section): Evaluate subsection_alignment. - (lang_enter_output_section_statement): Don't evaluate here. - (lang_new_phdr): Use exp_get_vma rather than exp_get_value_int. - * ldexp.h (exp_get_value_int): Delete. - (exp_get_power): Declare. - * ldexp.c (exp_get_value_int): Delete. - (exp_get_power): New function. - * emultempl/pe.em (place_orphan): Build expression for section - alignment. - * emultempl/pep.em (place_orphan): Likewise. - * testsuite/ld-scripts/pr23571.d, - * testsuite/ld-scripts/pr23571.t: New test. - * testsuite/ld-scripts/align.exp: Run it. ---- - ld/ChangeLog | 23 +++++++++++++++++++ - ld/emultempl/pe.em | 2 +- - ld/emultempl/pep.em | 2 +- - ld/ldexp.c | 20 ++++++++++++++-- - ld/ldexp.h | 4 ++-- - ld/ldlang.c | 48 +++++++++++++-------------------------- - ld/ldlang.h | 4 ++-- - ld/testsuite/ld-scripts/align.exp | 4 ++++ - ld/testsuite/ld-scripts/pr23571.d | 10 ++++++++ - ld/testsuite/ld-scripts/pr23571.t | 11 +++++++++ - 10 files changed, 88 insertions(+), 40 deletions(-) - create mode 100644 ld/testsuite/ld-scripts/pr23571.d - create mode 100644 ld/testsuite/ld-scripts/pr23571.t - ---- a/ld/emultempl/pe.em -+++ b/ld/emultempl/pe.em -@@ -2165,7 +2165,7 @@ gld_${EMULATION_NAME}_place_orphan (asec - &add_child); - if (bfd_link_relocatable (&link_info)) - { -- os->section_alignment = s->alignment_power; -+ os->section_alignment = exp_intop (1U << s->alignment_power); - os->bfd_section->alignment_power = s->alignment_power; - } - } ---- a/ld/emultempl/pep.em -+++ b/ld/emultempl/pep.em -@@ -1962,7 +1962,7 @@ gld_${EMULATION_NAME}_place_orphan (asec - &add_child); - if (bfd_link_relocatable (&link_info)) - { -- os->section_alignment = s->alignment_power; -+ os->section_alignment = exp_intop (1U << s->alignment_power); - os->bfd_section->alignment_power = s->alignment_power; - } - } ---- a/ld/ldexp.c -+++ b/ld/ldexp.c -@@ -1522,10 +1522,26 @@ exp_get_vma (etree_type *tree, bfd_vma d - return def; - } - -+/* Return the smallest non-negative integer such that two raised to -+ that power is at least as large as the vma evaluated at TREE, if -+ TREE is a non-NULL expression that can be resolved. If TREE is -+ NULL or cannot be resolved, return -1. */ -+ - int --exp_get_value_int (etree_type *tree, int def, char *name) -+exp_get_power (etree_type *tree, char *name) - { -- return exp_get_vma (tree, def, name); -+ bfd_vma x = exp_get_vma (tree, -1, name); -+ bfd_vma p2; -+ int n; -+ -+ if (x == (bfd_vma) -1) -+ return -1; -+ -+ for (n = 0, p2 = 1; p2 < x; ++n, p2 <<= 1) -+ if (p2 == 0) -+ break; -+ -+ return n; - } - - fill_type * ---- a/ld/ldexp.h -+++ b/ld/ldexp.h -@@ -229,8 +229,8 @@ void exp_print_tree - (etree_type *); - bfd_vma exp_get_vma - (etree_type *, bfd_vma, char *); --int exp_get_value_int -- (etree_type *, int, char *); -+int exp_get_power -+ (etree_type *, char *); - fill_type *exp_get_fill - (etree_type *, fill_type *, char *); - bfd_vma exp_get_abs_int ---- a/ld/ldlang.c -+++ b/ld/ldlang.c -@@ -1199,8 +1199,8 @@ output_section_statement_newfunc (struct - ret = (struct out_section_hash_entry *) entry; - memset (&ret->s, 0, sizeof (ret->s)); - ret->s.header.type = lang_output_section_statement_enum; -- ret->s.output_section_statement.subsection_alignment = -1; -- ret->s.output_section_statement.section_alignment = -1; -+ ret->s.output_section_statement.subsection_alignment = NULL; -+ ret->s.output_section_statement.section_alignment = NULL; - ret->s.output_section_statement.block_value = 1; - lang_list_init (&ret->s.output_section_statement.children); - lang_statement_append (stat_ptr, &ret->s, &ret->s.header.next); -@@ -2193,8 +2193,9 @@ init_os (lang_output_section_statement_t - exp_init_os (s->load_base); - - /* If supplied an alignment, set it. */ -- if (s->section_alignment != -1) -- s->bfd_section->alignment_power = s->section_alignment; -+ if (s->section_alignment != NULL) -+ s->bfd_section->alignment_power = exp_get_power (s->section_alignment, -+ "section alignment"); - } - - /* Make sure that all output sections mentioned in an expression are -@@ -4706,8 +4707,10 @@ size_input_section - is greater than any seen before, then record it too. Perform - the alignment by inserting a magic 'padding' statement. */ - -- if (output_section_statement->subsection_alignment != -1) -- i->alignment_power = output_section_statement->subsection_alignment; -+ if (output_section_statement->subsection_alignment != NULL) -+ i->alignment_power -+ = exp_get_power (output_section_statement->subsection_alignment, -+ "subsection alignment"); - - if (o->alignment_power < i->alignment_power) - o->alignment_power = i->alignment_power; -@@ -5147,7 +5150,8 @@ lang_size_sections_1 - section_alignment = os->bfd_section->alignment_power; - } - else -- section_alignment = os->section_alignment; -+ section_alignment = exp_get_power (os->section_alignment, -+ "section alignment"); - - /* Align to what the section needs. */ - if (section_alignment > 0) -@@ -5225,7 +5229,8 @@ lang_size_sections_1 - only align according to the value in the output - statement. */ - if (os->lma_region != os->region) -- section_alignment = os->section_alignment; -+ section_alignment = exp_get_power (os->section_alignment, -+ "section alignment"); - if (section_alignment > 0) - lma = align_power (lma, section_alignment); - } -@@ -6673,25 +6678,6 @@ lang_add_output (const char *name, int f - } - } - --static int --topower (int x) --{ -- unsigned int i = 1; -- int l; -- -- if (x < 0) -- return -1; -- -- for (l = 0; l < 32; l++) -- { -- if (i >= (unsigned int) x) -- return l; -- i <<= 1; -- } -- -- return 0; --} -- - lang_output_section_statement_type * - lang_enter_output_section_statement (const char *output_section_statement_name, - etree_type *address_exp, -@@ -6727,10 +6713,8 @@ lang_enter_output_section_statement (con - einfo (_("%F%P:%pS: error: align with input and explicit align specified\n"), - NULL); - -- os->subsection_alignment = -- topower (exp_get_value_int (subalign, -1, "subsection alignment")); -- os->section_alignment = -- topower (exp_get_value_int (align, -1, "section alignment")); -+ os->subsection_alignment = subalign; -+ os->section_alignment = align; - - os->load_base = ebase; - return os; -@@ -7748,7 +7732,7 @@ lang_new_phdr (const char *name, - n = (struct lang_phdr *) stat_alloc (sizeof (struct lang_phdr)); - n->next = NULL; - n->name = name; -- n->type = exp_get_value_int (type, 0, "program header type"); -+ n->type = exp_get_vma (type, 0, "program header type"); - n->filehdr = filehdr; - n->phdrs = phdrs; - n->at = at; ---- a/ld/ldlang.h -+++ b/ld/ldlang.h -@@ -143,6 +143,8 @@ typedef struct lang_output_section_state - fill_type *fill; - union etree_union *addr_tree; - union etree_union *load_base; -+ union etree_union *section_alignment; -+ union etree_union *subsection_alignment; - - /* If non-null, an expression to evaluate after setting the section's - size. The expression is evaluated inside REGION (above) with '.' -@@ -153,8 +155,6 @@ typedef struct lang_output_section_state - lang_output_section_phdr_list *phdrs; - - unsigned int block_value; -- int subsection_alignment; /* Alignment of components. */ -- int section_alignment; /* Alignment of start of section. */ - int constraint; - flagword flags; - enum section_type sectype; ---- a/ld/testsuite/ld-scripts/align.exp -+++ b/ld/testsuite/ld-scripts/align.exp -@@ -53,3 +53,7 @@ if ![is_aout_format] { - } - run_dump_test align2c - set LDFLAGS "$saved_LDFLAGS" -+ -+if { [is_elf_format] && ![is_generic_elf] } { -+ run_dump_test pr23571 -+} ---- /dev/null -+++ b/ld/testsuite/ld-scripts/pr23571.d -@@ -0,0 +1,10 @@ -+#source: align2a.s -+#ld: -T pr23571.t -z common-page-size=0x1000 -+#objdump: -h -w -+ -+.*: +file format .* -+ -+Sections: -+Idx Name +Size +VMA +LMA +File off +Algn +Flags -+ +0 \.text +[0-9a-f]* +0+1000 +0+1000 .* -+ +1 \.data +[0-9a-f]* +0+2000 +0+2000 +[0-9a-f]* +2\*\*12 .* ---- /dev/null -+++ b/ld/testsuite/ld-scripts/pr23571.t -@@ -0,0 +1,11 @@ -+SECTIONS -+{ -+ .text CONSTANT(COMMONPAGESIZE) : { -+ *(.text) -+ } -+ -+ .data : ALIGN(CONSTANT(COMMONPAGESIZE)) { -+ *(.data) -+ } -+ /DISCARD/ : {*(*)} -+} diff --git a/toolchain/binutils/patches/2.31.1/300-001_ld_makefile_patch.patch b/toolchain/binutils/patches/2.31.1/300-001_ld_makefile_patch.patch deleted file mode 100644 index 7b8300efac..0000000000 --- a/toolchain/binutils/patches/2.31.1/300-001_ld_makefile_patch.patch +++ /dev/null @@ -1,22 +0,0 @@ ---- a/ld/Makefile.am -+++ b/ld/Makefile.am -@@ -57,7 +57,7 @@ endif - # We put the scripts in the directory $(scriptdir)/ldscripts. - # We can't put the scripts in $(datadir) because the SEARCH_DIR - # directives need to be different for native and cross linkers. --scriptdir = $(tooldir)/lib -+scriptdir = $(libdir) - - EMUL = @EMUL@ - EMULATION_OFILES = @EMULATION_OFILES@ ---- a/ld/Makefile.in -+++ b/ld/Makefile.in -@@ -563,7 +563,7 @@ AM_CFLAGS = $(WARN_CFLAGS) $(ELF_CLFAGS) - # We put the scripts in the directory $(scriptdir)/ldscripts. - # We can't put the scripts in $(datadir) because the SEARCH_DIR - # directives need to be different for native and cross linkers. --scriptdir = $(tooldir)/lib -+scriptdir = $(libdir) - BASEDIR = $(srcdir)/.. - BFDDIR = $(BASEDIR)/bfd - INCDIR = $(BASEDIR)/include diff --git a/toolchain/binutils/patches/2.31.1/300-012_check_ldrunpath_length.patch b/toolchain/binutils/patches/2.31.1/300-012_check_ldrunpath_length.patch deleted file mode 100644 index 58ee759de6..0000000000 --- a/toolchain/binutils/patches/2.31.1/300-012_check_ldrunpath_length.patch +++ /dev/null @@ -1,20 +0,0 @@ ---- a/ld/emultempl/elf32.em -+++ b/ld/emultempl/elf32.em -@@ -1471,6 +1471,8 @@ fragment <<EOF - && command_line.rpath == NULL) - { - path = (const char *) getenv ("LD_RUN_PATH"); -+ if ((path) && (strlen (path) == 0)) -+ path = NULL; - if (path - && gld${EMULATION_NAME}_search_needed (path, &n, force)) - break; -@@ -1751,6 +1753,8 @@ gld${EMULATION_NAME}_before_allocation ( - rpath = command_line.rpath; - if (rpath == NULL) - rpath = (const char *) getenv ("LD_RUN_PATH"); -+ if ((rpath) && (strlen (rpath) == 0)) -+ rpath = NULL; - - for (abfd = link_info.input_bfds; abfd; abfd = abfd->link.next) - if (bfd_get_flavour (abfd) == bfd_target_elf_flavour) diff --git a/toolchain/binutils/patches/2.31.1/400-mips_no_dynamic_linking_sym.patch b/toolchain/binutils/patches/2.31.1/400-mips_no_dynamic_linking_sym.patch deleted file mode 100644 index 91ff77f827..0000000000 --- a/toolchain/binutils/patches/2.31.1/400-mips_no_dynamic_linking_sym.patch +++ /dev/null @@ -1,18 +0,0 @@ ---- a/bfd/elfxx-mips.c -+++ b/bfd/elfxx-mips.c -@@ -7888,6 +7888,7 @@ _bfd_mips_elf_create_dynamic_sections (b - - name = SGI_COMPAT (abfd) ? "_DYNAMIC_LINK" : "_DYNAMIC_LINKING"; - bh = NULL; -+ if (0) { - if (!(_bfd_generic_link_add_one_symbol - (info, abfd, name, BSF_GLOBAL, bfd_abs_section_ptr, 0, - NULL, FALSE, get_elf_backend_data (abfd)->collect, &bh))) -@@ -7900,6 +7901,7 @@ _bfd_mips_elf_create_dynamic_sections (b - - if (! bfd_elf_link_record_dynamic_symbol (info, h)) - return FALSE; -+ } - - if (! mips_elf_hash_table (info)->use_rld_obj_head) - { diff --git a/toolchain/binutils/patches/2.31.1/500-Change-default-emulation-for-mips64-linux.patch b/toolchain/binutils/patches/2.31.1/500-Change-default-emulation-for-mips64-linux.patch deleted file mode 100644 index c6e123e88e..0000000000 --- a/toolchain/binutils/patches/2.31.1/500-Change-default-emulation-for-mips64-linux.patch +++ /dev/null @@ -1,37 +0,0 @@ ---- a/bfd/config.bfd -+++ b/bfd/config.bfd -@@ -913,12 +913,12 @@ case "${targ}" in - targ_selvecs="mips_elf32_le_vec mips_elf64_be_vec mips_elf64_le_vec mips_ecoff_be_vec mips_ecoff_le_vec" - ;; - mips64*el-*-linux*) -- targ_defvec=mips_elf32_ntrad_le_vec -- targ_selvecs="mips_elf32_ntrad_be_vec mips_elf32_trad_le_vec mips_elf32_trad_be_vec mips_elf64_trad_le_vec mips_elf64_trad_be_vec" -+ targ_defvec=mips_elf64_trad_le_vec -+ targ_selvecs="mips_elf32_ntrad_le_vec mips_elf32_ntrad_be_vec mips_elf32_trad_le_vec mips_elf32_trad_be_vec mips_elf64_trad_be_vec" - ;; - mips64*-*-linux*) -- targ_defvec=mips_elf32_ntrad_be_vec -- targ_selvecs="mips_elf32_ntrad_le_vec mips_elf32_trad_be_vec mips_elf32_trad_le_vec mips_elf64_trad_be_vec mips_elf64_trad_le_vec" -+ targ_defvec=mips_elf64_trad_be_vec -+ targ_selvecs="mips_elf32_ntrad_be_vec mips_elf32_ntrad_le_vec mips_elf32_trad_be_vec mips_elf32_trad_le_vec mips_elf64_trad_le_vec" - ;; - mips*el-*-linux*) - targ_defvec=mips_elf32_trad_le_vec ---- a/ld/configure.tgt -+++ b/ld/configure.tgt -@@ -464,11 +464,11 @@ mips*el-*-vxworks*) targ_emul=elf32elmip - mips*-*-vxworks*) targ_emul=elf32ebmipvxworks - targ_extra_emuls="elf32elmipvxworks" ;; - mips*-*-windiss) targ_emul=elf32mipswindiss ;; --mips64*el-*-linux-*) targ_emul=elf32ltsmipn32 -- targ_extra_emuls="elf32btsmipn32 elf32ltsmip elf32btsmip elf64ltsmip elf64btsmip" -+mips64*el-*-linux-*) targ_emul=elf64ltsmip -+ targ_extra_emuls="elf32btsmipn32 elf32ltsmipn32 elf32ltsmip elf32btsmip elf64btsmip" - targ_extra_libpath=$targ_extra_emuls ;; --mips64*-*-linux-*) targ_emul=elf32btsmipn32 -- targ_extra_emuls="elf32ltsmipn32 elf32btsmip elf32ltsmip elf64btsmip elf64ltsmip" -+mips64*-*-linux-*) targ_emul=elf64btsmip -+ targ_extra_emuls="elf32btsmipn32 elf32ltsmipn32 elf32btsmip elf32ltsmip elf64ltsmip" - targ_extra_libpath=$targ_extra_emuls ;; - mips*el-*-linux-*) targ_emul=elf32ltsmip - targ_extra_emuls="elf32btsmip elf32ltsmipn32 elf64ltsmip elf32btsmipn32 elf64btsmip" |