From dbaa2011452c7ce7ca612c6298964452dce179eb Mon Sep 17 00:00:00 2001 From: Alan Modra Date: Tue, 24 Apr 2012 05:12:40 +0000 Subject: PR ld/13991 bfd/ * bfd/elf-bfd.h (_bfd_elf_link_just_syms): Define as _bfd_generic_link_just_syms. * bfd/elflink.c (_bfd_elf_link_just_syms): Delete. * bfd/linker.c (_bfd_generic_link_just_syms): Set sec_info_type. * bfd/bfd-in.h (discarded_section): Renamed from elf_discarded_section. * bfd/section.c (SEC_INFO_TYPE_NONE, SEC_INFO_TYPE_STABS, SEC_INFO_TYPE_MERGE, SEC_INFO_TYPE_EH_FRAME, SEC_INFO_TYPE_JUST_SYMS): Renamed from corresponding ELF_INFO_TYPE. * bfd/elf-eh-frame.c, * bfd/elf-m10200.c, * bfd/elf-m10300.c, * bfd/elf.c, * bfd/elf32-arm.c, * bfd/elf32-avr.c, * bfd/elf32-bfin.c, * bfd/elf32-cr16.c, * bfd/elf32-cr16c.c, * bfd/elf32-cris.c, * bfd/elf32-crx.c, * bfd/elf32-d10v.c, * bfd/elf32-epiphany.c, * bfd/elf32-fr30.c, * bfd/elf32-frv.c, * bfd/elf32-h8300.c, * bfd/elf32-hppa.c, * bfd/elf32-i370.c, * bfd/elf32-i386.c, * bfd/elf32-i860.c, * bfd/elf32-ip2k.c, * bfd/elf32-iq2000.c, * bfd/elf32-lm32.c, * bfd/elf32-m32c.c, * bfd/elf32-m32r.c, * bfd/elf32-m68hc1x.c, * bfd/elf32-m68k.c, * bfd/elf32-mcore.c, * bfd/elf32-mep.c, * bfd/elf32-moxie.c, * bfd/elf32-msp430.c, * bfd/elf32-mt.c, * bfd/elf32-openrisc.c, * bfd/elf32-ppc.c, * bfd/elf32-rl78.c, * bfd/elf32-rx.c, * bfd/elf32-s390.c, * bfd/elf32-score.c, * bfd/elf32-score7.c, * bfd/elf32-sh.c, * bfd/elf32-spu.c, * bfd/elf32-tic6x.c, * bfd/elf32-tilepro.c, * bfd/elf32-v850.c, * bfd/elf32-vax.c, * bfd/elf32-xc16x.c, * bfd/elf32-xstormy16.c, * bfd/elf32-xtensa.c, * bfd/elf64-alpha.c, * bfd/elf64-hppa.c, * bfd/elf64-ia64-vms.c, * bfd/elf64-mmix.c, * bfd/elf64-ppc.c, * bfd/elf64-s390.c, * bfd/elf64-sh64.c, * bfd/elf64-x86-64.c, * bfd/elflink.c, * bfd/elfnn-ia64.c, * bfd/elfxx-mips.c, * bfd/elfxx-sparc.c, * bfd/elfxx-tilegx.c, * bfd/reloc.c: Update all references. * bfd/bfd-in2.h: Regenerate. ld/ * ld/ldlang.c (size_input_section): Use sec_info_type rather than usrdata->flags.just_syms. * ld/ldwrite.c (build_link_order): Likewise. * ld/emultempl/hppaelf.em (build_section_lists): Likewise. * ld/emultempl/ppc64elf.em (build_toc_list): Likewise. * ld/emultempl/armelf.em (build_section_lists): Likewise. (after_allocation): Update for renamed sec_info_type value. * ld/emultempl/tic6xdsbt.em: Likewise. --- ld/ChangeLog | 11 +++++++++++ ld/emultempl/armelf.em | 4 ++-- ld/emultempl/hppaelf.em | 2 +- ld/emultempl/ppc64elf.em | 2 +- ld/emultempl/tic6xdsbt.em | 4 ++-- ld/ldlang.c | 2 +- ld/ldwrite.c | 4 ++-- 7 files changed, 20 insertions(+), 9 deletions(-) (limited to 'ld') diff --git a/ld/ChangeLog b/ld/ChangeLog index 1a1b729..d1b7e7a 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,3 +1,14 @@ +2012-04-24 Alan Modra + + * ld/ldlang.c (size_input_section): Use sec_info_type rather than + usrdata->flags.just_syms. + * ld/ldwrite.c (build_link_order): Likewise. + * ld/emultempl/hppaelf.em (build_section_lists): Likewise. + * ld/emultempl/ppc64elf.em (build_toc_list): Likewise. + * ld/emultempl/armelf.em (build_section_lists): Likewise. + (after_allocation): Update for renamed sec_info_type value. + * ld/emultempl/tic6xdsbt.em: Likewise. + 2012-04-12 Roland McGrath * configure.tgt (arm*-*-nacl*, arm*b-*-nacl*): Handle them. diff --git a/ld/emultempl/armelf.em b/ld/emultempl/armelf.em index 03ee98b..78224f4 100644 --- a/ld/emultempl/armelf.em +++ b/ld/emultempl/armelf.em @@ -240,7 +240,7 @@ build_section_lists (lang_statement_union_type *statement) { asection *i = statement->input_section.section; - if (!((lang_input_statement_type *) i->owner->usrdata)->flags.just_syms + if (i->sec_info_type != SEC_INFO_TYPE_JUST_SYMS && (i->flags & SEC_EXCLUDE) == 0 && i->output_section != NULL && i->output_section->owner == link_info.output_bfd) @@ -299,7 +299,7 @@ gld${EMULATION_NAME}_after_allocation (void) && elf_section_type (sec) == SHT_PROGBITS && (elf_section_flags (sec) & SHF_EXECINSTR) != 0 && (sec->flags & SEC_EXCLUDE) == 0 - && sec->sec_info_type != ELF_INFO_TYPE_JUST_SYMS + && sec->sec_info_type != SEC_INFO_TYPE_JUST_SYMS && out_sec != bfd_abs_section_ptr) { if (sec_count == list_size) diff --git a/ld/emultempl/hppaelf.em b/ld/emultempl/hppaelf.em index ec81624..41df8a2 100644 --- a/ld/emultempl/hppaelf.em +++ b/ld/emultempl/hppaelf.em @@ -229,7 +229,7 @@ build_section_lists (lang_statement_union_type *statement) { asection *i = statement->input_section.section; - if (!((lang_input_statement_type *) i->owner->usrdata)->flags.just_syms + if (i->sec_info_type != SEC_INFO_TYPE_JUST_SYMS && (i->flags & SEC_EXCLUDE) == 0 && i->output_section != NULL && i->output_section->owner == link_info.output_bfd) diff --git a/ld/emultempl/ppc64elf.em b/ld/emultempl/ppc64elf.em index 668b468..0923d21 100644 --- a/ld/emultempl/ppc64elf.em +++ b/ld/emultempl/ppc64elf.em @@ -435,7 +435,7 @@ build_toc_list (lang_statement_union_type *statement) { asection *i = statement->input_section.section; - if (!((lang_input_statement_type *) i->owner->usrdata)->flags.just_syms + if (i->sec_info_type != SEC_INFO_TYPE_JUST_SYMS && (i->flags & SEC_EXCLUDE) == 0 && i->output_section == toc_section) { diff --git a/ld/emultempl/tic6xdsbt.em b/ld/emultempl/tic6xdsbt.em index e287005..87d3b35 100644 --- a/ld/emultempl/tic6xdsbt.em +++ b/ld/emultempl/tic6xdsbt.em @@ -1,5 +1,5 @@ # This shell script emits a C file. -*- C -*- -# Copyright 2011 Free Software Foundation, Inc. +# Copyright 2011, 2012 Free Software Foundation, Inc. # # This file is part of the GNU Binutils. # @@ -122,7 +122,7 @@ gld${EMULATION_NAME}_after_allocation (void) && elf_section_type (sec) == SHT_PROGBITS && (elf_section_flags (sec) & SHF_EXECINSTR) != 0 && (sec->flags & SEC_EXCLUDE) == 0 - && sec->sec_info_type != ELF_INFO_TYPE_JUST_SYMS + && sec->sec_info_type != SEC_INFO_TYPE_JUST_SYMS && out_sec != bfd_abs_section_ptr) { if (sec_count == list_size) diff --git a/ld/ldlang.c b/ld/ldlang.c index b0c23cb..beb84d3 100644 --- a/ld/ldlang.c +++ b/ld/ldlang.c @@ -4619,7 +4619,7 @@ size_input_section lang_input_section_type *is = &((*this_ptr)->input_section); asection *i = is->section; - if (!((lang_input_statement_type *) i->owner->usrdata)->flags.just_syms + if (i->sec_info_type != SEC_INFO_TYPE_JUST_SYMS && (i->flags & SEC_EXCLUDE) == 0) { bfd_size_type alignment_needed; diff --git a/ld/ldwrite.c b/ld/ldwrite.c index 911149e..c6f6e9c 100644 --- a/ld/ldwrite.c +++ b/ld/ldwrite.c @@ -1,6 +1,6 @@ /* ldwrite.c -- write out the linked file Copyright 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 2000, 2002, - 2003, 2004, 2005, 2006, 2007, 2008, 2010 + 2003, 2004, 2005, 2006, 2007, 2008, 2010, 2012 Free Software Foundation, Inc. Written by Steve Chamberlain sac@cygnus.com @@ -241,7 +241,7 @@ build_link_order (lang_statement_union_type *statement) attached */ asection *i = statement->input_section.section; - if (!((lang_input_statement_type *) i->owner->usrdata)->flags.just_syms + if (i->sec_info_type != SEC_INFO_TYPE_JUST_SYMS && (i->flags & SEC_EXCLUDE) == 0) { asection *output_section = i->output_section; -- cgit v1.1