head 1.3; access; symbols pkgsrc-2013Q2:1.3.0.48 pkgsrc-2013Q2-base:1.3 pkgsrc-2012Q4:1.3.0.46 pkgsrc-2012Q4-base:1.3 pkgsrc-2011Q4:1.3.0.44 pkgsrc-2011Q4-base:1.3 pkgsrc-2011Q2:1.3.0.42 pkgsrc-2011Q2-base:1.3 pkgsrc-2009Q4:1.3.0.40 pkgsrc-2009Q4-base:1.3 pkgsrc-2008Q4:1.3.0.38 pkgsrc-2008Q4-base:1.3 pkgsrc-2008Q3:1.3.0.36 pkgsrc-2008Q3-base:1.3 cube-native-xorg:1.3.0.34 cube-native-xorg-base:1.3 pkgsrc-2008Q2:1.3.0.32 pkgsrc-2008Q2-base:1.3 pkgsrc-2008Q1:1.3.0.30 pkgsrc-2008Q1-base:1.3 pkgsrc-2007Q4:1.3.0.28 pkgsrc-2007Q4-base:1.3 pkgsrc-2007Q3:1.3.0.26 pkgsrc-2007Q3-base:1.3 pkgsrc-2007Q2:1.3.0.24 pkgsrc-2007Q2-base:1.3 pkgsrc-2007Q1:1.3.0.22 pkgsrc-2007Q1-base:1.3 pkgsrc-2006Q4:1.3.0.20 pkgsrc-2006Q4-base:1.3 pkgsrc-2006Q3:1.3.0.18 pkgsrc-2006Q3-base:1.3 pkgsrc-2006Q2:1.3.0.16 pkgsrc-2006Q2-base:1.3 pkgsrc-2006Q1:1.3.0.14 pkgsrc-2006Q1-base:1.3 pkgsrc-2005Q4:1.3.0.12 pkgsrc-2005Q4-base:1.3 pkgsrc-2005Q3:1.3.0.10 pkgsrc-2005Q3-base:1.3 pkgsrc-2005Q2:1.3.0.8 pkgsrc-2005Q2-base:1.3 pkgsrc-2005Q1:1.3.0.6 pkgsrc-2005Q1-base:1.3 pkgsrc-2004Q4:1.3.0.4 pkgsrc-2004Q4-base:1.3 pkgsrc-2004Q3:1.3.0.2 pkgsrc-2004Q3-base:1.3 pkgsrc-2004Q2:1.2.0.14 pkgsrc-2004Q2-base:1.2 pkgsrc-2004Q1:1.2.0.12 pkgsrc-2004Q1-base:1.2 pkgsrc-2003Q4:1.2.0.10 pkgsrc-2003Q4-base:1.2 netbsd-1-6-1:1.2.0.6 netbsd-1-6-1-base:1.2 netbsd-1-6:1.2.0.8 netbsd-1-6-RELEASE-base:1.2 pkgviews:1.2.0.4 pkgviews-base:1.2 buildlink2:1.2.0.2 buildlink2-base:1.2 netbsd-1-5-PATCH003:1.2 netbsd-1-5-PATCH001:1.2 netbsd-1-5-RELEASE:1.2 netbsd-1-4-PATCH003:1.2 netbsd-1-4-PATCH002:1.1 comdex-fall-1999:1.1 netbsd-1-4-PATCH001:1.1 netbsd-1-4-RELEASE:1.1; locks; strict; comment @# @; 1.3 date 2004.07.09.20.43.48; author kristerw; state dead; branches; next 1.2; 1.2 date 2000.06.11.23.42.13; author mycroft; state Exp; branches; next 1.1; 1.1 date 99.01.04.22.37.31; author tv; state Exp; branches; next ; desc @@ 1.3 log @Update to binutils-2.15. Changes since binutils-2.9 are not easy to summarize, since it represent more than 6 years of active development... Solves PR pkg/13442. @ text @$NetBSD: patch-ac,v 1.2 2000/06/11 23:42:13 mycroft Exp $ --- bfd/elf32-mips.c.orig Fri May 1 11:48:09 1998 +++ bfd/elf32-mips.c Sun Jun 11 19:33:36 2000 @@@@ -155,6 +155,11 @@@@ #define STUB_LI16 0x34180000 /* ori t8,zero,0 */ #define MIPS_FUNCTION_STUB_SIZE (16) +#if 0 +/* We no longer try to identify particular sections for the .dynsym + section. When we do, we wind up crashing if there are other random + sections with relocations. */ + /* Names of sections which appear in the .dynsym section in an Irix 5 executable. */ @@@@ -179,6 +184,8 @@@@ #define MIPS_TEXT_DYNSYM_SECNO (3) +#endif /* 0 */ + /* The names of the runtime procedure table symbols used on Irix 5. */ static const char * const mips_elf_dynsym_rtproc_names[] = @@@@ -2314,7 +2321,10 @@@@ || strcmp (name, ".dynstr") == 0)) { hdr->sh_entsize = 0; +#if 0 + /* This isn't how the Irix 6 linker behaves. */ hdr->sh_info = SIZEOF_MIPS_DYNSYM_SECNAMES; +#endif } else if (strcmp (name, ".got") == 0 || strcmp (name, ".sdata") == 0 @@@@ -2884,8 +2894,11 @@@@ bfd_h_put_16 (abfd, in->pcreg, (bfd_byte *) ex->p_pcreg); bfd_h_put_32 (abfd, in->irpss, (bfd_byte *) ex->p_irpss); + bfd_h_put_32 (abfd, 0, (bfd_byte *) ex->p_reserved); #if 0 /* FIXME */ ecoff_put_off (abfd, in->exception_info, (bfd_byte *) ex->p_exception_info); +#else + bfd_h_put_32 (abfd, 0, (bfd_byte *) ex->p_exception_info); #endif } @@@@ -3178,8 +3191,11 @@@@ struct mips_elf_link_hash_table { struct elf_link_hash_table root; +#if 0 + /* We no longer use this. */ /* String section indices for the dynamic section symbols. */ bfd_size_type dynsym_sec_strindex[SIZEOF_MIPS_DYNSYM_SECNAMES]; +#endif /* The number of .rtproc entries. */ bfd_size_type procedure_count; /* The size of the .compact_rel section (if SGI_COMPAT). */ @@@@ -3264,7 +3280,6 @@@@ bfd *abfd; { struct mips_elf_link_hash_table *ret; - unsigned int i; ret = ((struct mips_elf_link_hash_table *) bfd_alloc (abfd, sizeof (struct mips_elf_link_hash_table))); @@@@ -3278,8 +3293,11 @@@@ return NULL; } +#if 0 + /* We no longer use this. */ for (i = 0; i < SIZEOF_MIPS_DYNSYM_SECNAMES; i++) ret->dynsym_sec_strindex[i] = (bfd_size_type) -1; +#endif ret->procedure_count = 0; ret->compact_rel_size = 0; ret->use_rld_obj_head = false; @@@@ -6570,15 +6588,20 @@@@ That means we must increment the dynamic symbol index of every other dynamic symbol. */ { - const char * const *namep; unsigned int c, i; - bfd_size_type strindex; - struct bfd_strtab_hash *dynstr; struct mips_got_info *g; c = 0; if (elf_hash_table (info)->dynamic_sections_created) { +#if 0 + /* We no longer try to restrict the set of sections which get + dynamic symbol table entries, since it fails if we have + other random sections which need dynamic relocations. */ + const char * const *namep; + bfd_size_type strindex; + struct bfd_strtab_hash *dynstr; + if (SGI_COMPAT (output_bfd)) { c = SIZEOF_MIPS_DYNSYM_SECNAMES - 1; @@@@ -6606,6 +6629,7 @@@@ } } else +#endif /* 0 */ { c = bfd_count_sections (output_bfd); elf_link_hash_traverse (elf_hash_table (info), @@@@ -6962,8 +6986,11 @@@@ break; case DT_MIPS_UNREFEXTNO: - /* XXX FIXME: */ +#if 0 dyn.d_un.d_val = SIZEOF_MIPS_DYNSYM_SECNAMES; +#else + dyn.d_un.d_val = bfd_count_sections (output_bfd); +#endif bfd_elf32_swap_dyn_out (output_bfd, &dyn, dyncon); break; @@@@ -7001,12 +7028,7 @@@@ { asection *sdynsym; asection *s; - unsigned int i; - bfd_vma last; Elf_Internal_Sym sym; - long dindx; - const char *name; - const char * const * namep = mips_elf_dynsym_sec_names; Elf32_compact_rel cpt; /* Set up the section symbols for the output sections. SGI sets @@@@ -7015,6 +7037,16 @@@@ sdynsym = bfd_get_section_by_name (dynobj, ".dynsym"); if (sdynsym != NULL) { +#if 0 + const char *name; + const char * const * namep = mips_elf_dynsym_sec_names; + unsigned int i; + bfd_vma last; + long dindx; + + /* We no longer try to restrict the set of sections which get + dynamic symbol table entries, since it fails if we have + other random sections which need dynamic relocations. */ if (SGI_COMPAT (output_bfd)) { sym.st_size = 0; @@@@ -7059,6 +7091,7 @@@@ SIZEOF_MIPS_DYNSYM_SECNAMES; } else +#endif /* 0 */ { sym.st_size = 0; sym.st_name = 0; @ 1.2 log @Fix problems with uninitialized data, mostly on MIPS. @ text @d1 1 a1 1 $NetBSD$ @ 1.1 log @Major `cross' category overhaul. Clean up the shared Makefiles; move all binutils stuff (except gas) to a shared, multiple-target binutils build; reduce extract and compile times by being more specific with files and targets; update to egcs 1.1.1 with a diffball from NetBSD's src/gnu/dist tree; add 4.4BSD a.out archive support to binutils. @ text @d3 2 a4 2 --- ./bfd/elf32-mips.c.orig Fri May 1 11:48:09 1998 +++ ./bfd/elf32-mips.c Mon Dec 28 17:43:20 1998 d37 13 a49 1 @@@@ -3178,8 +3188,11 @@@@ d61 1 a61 1 @@@@ -3264,7 +3277,6 @@@@ d69 1 a69 1 @@@@ -3278,8 +3290,11 @@@@ d81 1 a81 1 @@@@ -6570,15 +6585,20 @@@@ d105 1 a105 1 @@@@ -6606,6 +6626,7 @@@@ d113 1 a113 1 @@@@ -6962,8 +6983,11 @@@@ d126 1 a126 1 @@@@ -7001,12 +7025,7 @@@@ d139 1 a139 1 @@@@ -7015,6 +7034,16 @@@@ d156 1 a156 1 @@@@ -7059,6 +7088,7 @@@@ @