aboutsummaryrefslogtreecommitdiff
path: root/bfd
AgeCommit message (Collapse)AuthorFilesLines
1994-11-30 * coff-sh.c: Use _bfd_dummy_target instead of no_archive.Ian Lance Taylor1-0/+4
1994-11-30* config/arc-elf.mt: New file.David Edelsohn1-0/+1
1994-11-30Initial ARC support.David Edelsohn3-1/+58
1994-11-29* config.bfd (i[345]86-*-freebsd*): Use i386-bsd as bfd_name.J.T. Conklin2-0/+6
* configure.host (i[345]86-*-freebsd*): Use i386bsd as my_host. CVSn:
1994-11-28* config/m68k-nbsd.mt (DEFAULT_VECTOR): set to m68knetbsd_vec.J.T. Conklin1-0/+7
* Makefile.in: Rebuilt dependancies. (CFILES): Added m68knetbsd.c. (HFILES): Added netbsd.h.
1994-11-26Add changes from customer since last work.Michael Tiemann5-12/+29
1994-11-25Clean up bitrot (such as interfaces that have changed since theseMichael Tiemann4-6/+9
patches were last used).
1994-11-25Rename r16 files to rce, and fix some more .Sanitize typos.Michael Tiemann7-32/+32
1994-11-24*** empty log message ***Michael Tiemann1-2/+2
1994-11-24Fix .Sanitize scrips so that r16 is truly scrubbed out.Michael Tiemann1-1/+35
Also, report errors if any traces of sanitize remain after sanitizing.
1994-11-24Safely check in r16 targets for binutils.Michael Tiemann7-42/+208
1994-11-24 * coff-sh.c (shlcoff_vec): New target vector.Steve Chamberlain4-3/+76
(no_archive): New function. * coffcode.h (coff_set_arch_mach_hook, coff_set_flags): Handle little endian SH. * configure.in: Handle shl. * targets.c (bfd_target_vector): Add shlcoff_vec. * config/sh-coff.mt (SELECT_VECS): Handle shl_coff_vec.
1994-11-23 * elf32-hppa.c (elf32_hppa_bfd_final_link_relocate): Do not addJeff Law1-0/+5
input_section->vma to the relocation's offset.
1994-11-21 * srec.c (srec_get_reloc_upper_bound): Define.Ian Lance Taylor1-0/+7
(srec_canonicalize_reloc): Define. (srec_bfd_reloc_type_lookup): Define. (srec_vec, symbolsrec_vec): Use BFD_JUMP_TABLE_RELOCS (srec). PR 5975.
1994-11-19 * configure.host (i[345]86-*-solaris*): Use solaris2 toPeter Schauer2-2/+9
enable extraction of procfs info from core file for GDB.
1994-11-17* reloc.c (bfd_reloc_code_type): Add new value BFD_RELOC_12_PCREL.Ken Raeburn4-29/+61
* bfd-in2.h, libbfd.h: Rebuilt.
1994-11-17 * bfd/elf32-hppa.c (elf32_hppa_bfd_final_link_relocated): Use theJeff Law2-28/+40
vma from the output_section containing $global$ when computing global_vlaue.
1994-11-17 * archive.c (_bfd_write_archive_contents): Round up the archiveIan Lance Taylor1-0/+5
header size of the extended name table to an even number.
1994-11-16* coff-sh.c: Deleted some code that was commented out or inside "#if 0".Ken Raeburn2-70/+13
(COFF_LONG_FILENAMES): Define. * cpu-sh.c (arch_info_struct): Convert name to lowercase, for consistency with other architectures.
1994-11-13 * elfcode.h (elf_export_symbol): Also export symbols which areIan Lance Taylor2-1/+7
referenced by a regular file.
1994-11-12 * elfcode.h (NAME(bfd_elf,size_dynamic_sections)): AddIan Lance Taylor2-39/+113
export_dynamic argument, and handle it. (elf_export_symbol): New function. * bfd-in.h (bfd_elf32_size_dynamic_sections): Update declaration. (bfd_elf64_size_dynamic_sections): Update declaration. * bfd-in2.h: Rebuild.
1994-11-11 * hpux-core.c (hpux_core_struct): Delete handles for theJeff Law1-0/+11
data, reg and stack sections. They're never used. Delete accessor macros. (make_bfd_asection): Use bfd_make_section_anyway since debugging cores from dynamic executables may have several sections with the same logical name. (hpux_core_core_file_p): Don't save handles to data, reg and stack sections. Handle CORE_TEXT, CORE_MMF and CORE_SHM.
1994-11-08 * bout.c (callj_callback): Add new argument shrinking. Change allIan Lance Taylor1-0/+11
callers. Handle relocs against section symbols correctly. If not shrinking, don't subtract out dstidx; the subtraction is already in the object file. PR 5883.
1994-11-04configure.in: fix ns32knetbsd_vec -> pc532netbsd_vecKen Raeburn1-0/+3
1994-11-03aoutx.h fixes from netKen Raeburn1-0/+6
1994-11-03go32 patches from djKen Raeburn2-1/+9
1994-11-03Makefile.in (ALL_MACHINES): Include m68knetbsd.o.Ken Raeburn1-0/+2
1994-11-03i386linux.mh: include -lm in EXTRALIBSKen Raeburn1-0/+4
1994-11-02 * archive.c (normalize): Change to take a BFD as an argument.Ian Lance Taylor1-0/+13
Change VMS version to use bfd_alloc rather than malloc, so that we don't lose the memory forever. (_bfd_construct_extended_name_table): Check the name of an archive entry which is not being extended, and correct it if it is wrong. This is necessary in case the archive was constructed by another program which put an entry in the extended name table which we don't plan to put in ourselves. From jjc@jclark.com (James Clark). (bfd_dont_truncate_arname): Check return value of normalize.
1994-11-01 * elf32-hppa.c (ELF32_PARISC_SX_SIZE): Define.Ian Lance Taylor1-0/+20
(ELF32_PARISC_SX_GET, ELF32_PARISC_SX_PUT): Define. (symextn_entry): Don't define. (symext_chain_size): Change type to bfd_size_type. (symextn_contents): Change type to bfd_byte *. (elf32_hppa_backend_begin_write_processing): Use ELF32_PARISC_SX_SIZE instead of sizeof (symext_entryS). (elf32_hppa_size_symext): Likewise. Also, change type of sizep to bfd_size_type *. (elf_hppa_tc_make_sections): Cast symextn_contents assignment to bfd_byte *. Use ELF32_PARISC_SX_PUT instead of direct assignment. (elf32_hppa_backend_symbol_table_processing): Use ELF32_PARISC_SX_SIZE instead of sizeof (symext_entryS). Use ELF32_PARISC_SX_GET insetad of direct assignment. (elf32_hppa_read_symext_info): Change type of contents, and its assignment cast, to bfd_byte *. Use ELF32_PARISC_SX_SIZE instead of sizeof (symextn_entry). Use symext_entryS instead of symextn_entry. Use ELF32_PARISC_SX_GET instead of direct assignment.
1994-10-31 * archive.c (bfd_dont_truncate_arname): Add the ar paddingIan Lance Taylor2-1/+7
character, if there is room for it, even if the name is the maximum length. PR 5859.
1994-10-31 * elfcode.h (assign_file_positions_except_relocs): Sort the ELFIan Lance Taylor1-0/+6
headers by section address when assigning file positions. (elf_sort_hdrs): New static function.
1994-10-31 * elfcode.h (NAME(bfd_elf,size_dynamic_sections)): Create DT_INITIan Lance Taylor2-8/+41
and DT_FINI dynamic entries based on the existence of _init and _fini symbols, not on the .init and .fini sections. This is compatible with some SVR4 linkers. (elf_bfd_final_link): Corresponding change.
1994-10-30 * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Don't move aIan Lance Taylor1-0/+5
symbol with a PLT entry into the .plt section if it is defined in a regular file. * elf32-sparc.c (elf32_sparc_adjust_dynamic_symbol): Likewise.
1994-10-29 * linker.c (_bfd_generic_link_add_archive_symbols): It's not anIan Lance Taylor2-0/+10
error if an empty archive has no symbol table. * ecoff.c (ecoff_link_add_archive_symbols): Likewise. * elfcode.h (elf_link_add_archive_symbols): Likewise.
1994-10-28NetBSD/m68k support, based on work by mikeb@snow.datametrics.com:J.T. Conklin6-2/+69
* config.bfd (m68*-*-netbsd*): Use m68k-nbsd as bfd_name. * configure.in (m68knetbsd_vec): Added. * targets.c (bfd_m68knetbsd_vec): Added. * hosts/m68knbsd.h, config/m68k-nbsd.mt, m68knetbsd.c: New files. * Makefile.in (BFD32_BACKENDS, CFILES): Add m68knetbsd.c. miscellaneous cleanup required by all netbsd targets, based on work by Andrew Cagney <cagney@highland.com.au>: * netbsd.h (N_MAGIC, N_SET_MAGIC, N_GETMAGIC, N_GETMAGIC2, N_TXTADDR, N_TXTOFF, N_ALIGN, N_DATADDR, N_DATOFF): Removed. Generic a.out definitions work. * i386nbsd.c, ns32knbsd.c, sparcnbsd.c (__LDPGSZ): Removed. (MY(write_object_contents)): Use NetBSD's magic numbers
1994-10-27 * libelf.h (struct bfd_elf_section_data): Add field dynindx.Ian Lance Taylor5-93/+222
* elfcode.h (NAME(bfd_elf,size_dynamic_sections)): Don't finalize the .dynsym, .dynstr or .hash sections until after the backend size_dynamic_sections routine, so that it can add dynamic symbols if it wants to. * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Don't define the symbol to be in the .plt section when generating a shared library if it is a defined symbol. * elf32-sparc.c (elf32_sparc_adjust_dynamic_symbol): Likewise. (elf32_sparc_size_dynamic_sections): When generating a shared library, allocate space for a dynamic symbol for each output section, storing the index in the dynindx field of the ELF section data. Adjust the other dynindx fields to account for this. (elf32_sparc_adjust_dynindx): New static function. (elf32_sparc_relocate_section): When copying a reloc into a shared library, use the original addend as appropriate. Convert an R_SPARC_32 reloc into an R_SPARC_RELATIVE reloc. Use the dynamic symbol index of the output section, not the normal symbol index. (elf32_sparc_finish_dynamic_sections): Don't die if a section does not exist when setting the value of the dynamic tags. Write out a dynamic symbol for each output section.
1994-10-26 * aoutx.h (aout_link_input_section): Don't bother to read or writeIan Lance Taylor2-4/+25
the relocs if there aren't any.
1994-10-25 * Makefile.in (ALL_MACHINES): Add tekhex.o.Ian Lance Taylor2-3/+2
* targets.c (bfd_target_vector): If SELECT_VECS is not defined, include tekhex_vec. * tekhex.c (NIBBLE, ISHEX): Cast array arguments to unsigned char. (getvalue, getsym, out): Likewise. (find_chunk): Remove unused variable s. (first_phase): Remove unused variable s. (pass_over): Remove unused variable address. (tekhex_object_p): Remove unused variable section. (move_section_contents): Change return type from boolean to void. (tekhex_write_object_contents): Remove unused variables tdata and list.
1994-10-25 * linker.c (enum link_action): Add CIND.Ian Lance Taylor2-59/+211
(link_action): Change COMMON_ROW\indr from MDEF to CREF. Change INDR_ROW\common from MDEF to CIND. (_bfd_generic_link_add_one_symbol): In CREF case, handle an existing symbol which is indirect rather than defined. Add new CIND case.
1994-10-24 Change S-record backend to use multiple sections to handle gaps inIan Lance Taylor1-0/+33
file. * srec.c (srec_data_list_struct): Move field next from last place to first. Change type of data to bfd_byte *. (struct srec_symbol): Define. (tdata_type): Remove done_symbol_read, count, strings, symbol_idx, string_size, string_idx. Change type of symbols to struct srec_symbol *. Add symtail and csymbols. (low, high): Remove. (size_symbols, fillup_symbols, size_srec, fillup): Remove. (white, skipwhite, pass_over, object_p): Remove. (srec_mkobject): Call srec_init. Adjust tdata initialization for field changes. (srec_get_byte, srec_bad_byte): New static functions. (srec_new_symbol, srec_scan): New static functions. (srec_object_p): Change type of b to bfd_byte. Explicitly set wrong_format error. Call srec_mkobject and srec_scan instead of object_p. (symbolsrec_object_p): Likewise. Also, change b to be only two bytes. (srec_read_section): New static function. (srec_get_section_contents): Call srec_read_section rather than pass_over. Handle zero length section correctly. (set_set_arch_mach): Change from function to macro. (srec_set_section_contents): Change data to bfd_byte *. (srec_write_record): Change data, end and src to bfd_byte *. (srec_write_header): Change buffer and dst to bfd_byte *. (srec_write_section): Change location to bfd_byte *. (srec_write_terminator): Change buffer to bfd_byte *. (srec_get_symtab_upper_bound): Don't call srec_get_section_contents. (srec_get_symtab): Rewrite.
1994-10-24 * ecoff.c (ecoff_set_symbol_info): Set udata.i to 0, not NULL.Ian Lance Taylor2-5/+10
1994-10-21* libaout.h (machine_type): added M_68K_NETBSD and M_SPARC_NETBSD.J.T. Conklin5-8/+153
* i386netbsd.c, ns32knetbsd.c, sparcnetbsd.c: removed RCS Id's. changed how PAGE_SIZE and SEGMENT_SIZE are defined so they are consistant with each other. * netbsd.h (N_HEADER_IN_TEXT, TEXT_START_ADDR): NetBSD fits its header into the start of its text segment.
1994-10-21 * targets.c (BFD_JUMP_TABLE_ARCHIVE): Add case forIan Lance Taylor3-40/+108
_construct_extended_name_table. (bfd_target): Add _bfd_construct_extended_name_table. * archive.c (_bfd_archive_bsd_construct_extended_name_table): New function. (_bfd_archive_coff_construct_extended_name_table): New function. (_bfd_construct_extended_name_table): Renamed by adding a leading underscore, and made externally visible. Added trailing_slash argument, and used it instead of elf_style. Changed type of tablen to bfd_size_type *. (_bfd_write_archive_contents): Use BFD_SEND to call construct_extended_name_table. Use the returned name. * libbfd-in.h (_bfd_construct_extended_name_table): Declare. (_bfd_noarchive_construct_extended_name_table): Define. (_bfd_archive_bsd_construct_extended_name_table): Declare. (_bfd_archive_coff_construct_extended_name_table): Declare. * bfd-in2.h: Rebuild. * libbfd.h: Rebuild. * som.c (som_construct_extended_name_table): New static function. * aout-target.h (MY_construct_extended_name_table): Define. * coff-rs6000.c (rs6000coff_construct_extended_name_table): Define. * ieee.c (ieee_construct_extended_name_table): Define. * libecoff.h (_bfd_ecoff_construct_extended_name_table): Define. * oasys.c (oasys_construct_extended_name_table): Define.
1994-10-21fix BFD_ASSERT callsIan Lance Taylor2-6/+6
1994-10-21remove unused variableIan Lance Taylor1-1/+0
1994-10-21 Fix the ELF linker to not require an interpreter if no dynamicIan Lance Taylor5-600/+934
objects were seen, even when linking PIC code. * libelf.h (ELF_LINK_HASH_NEEDS_PLT): Define. (struct elf_link_hash_table): Add field dynamic_sections_created. * elfcode.h (elf_link_record_dynamic_symbol): Create dynstr if it doesn't already exist. (elf_link_add_object_symbols): Create dynamic sections based on dynamic_sections_created field, not dynobj field. Don't bother to set dynobj. (elf_link_create_dynamic_sections): If dynamic sections were already created, don't do anything. If dynobj is already set, use it; otherwise, set it to the bfd argument. Don't initialize dynsymcount. Only create dynstr if it does not exist. Set dynamic_sections_created to true. (NAME(bfd_elf,size_dynamic_sections)): Skip most of this function if no dynamic objects were seen. (elf_adjust_dynamic_symbol): If a symbol has the ELF_LINK_HASH_NEEDS_PLT flag set, let the backend adjust it. (elf_bfd_final_link): Change most decisions based on dynobj to check dynamic_sections_created instead. (elf_link_output_extsym): Only handle dynamic symbols if a dynamic object was seen. * elf.c (_bfd_elf_link_hash_table_init): Initialize new field dynamic_sections_created. Set dynsymcount to 1, not 0. * elf32-i386.c (elf_i386_create_dynamic_sections): Call elf_i386_create_got_section rather than creating the .got and .got.plt sections. (elf_i386_create_got_section): New static function. (elf_i386_check_relocs): Just call elf_i386_create_got_section if a GOT table is needed, not bfd_elf32_link_create_dynamic_sections. Only create the .rel.got section, and only make space for a reloc, for a global symbol or when generating a shared object. For a R_386_PLT32 reloc, just set the ELF_LINK_HASH_NEEDS_PLT flag. (elf_i386_adjust_dynamic_symbol): Rework initial assertion to permit ELF_LINK_HASH_NEEDS_PLT non dynamic symbols. Create a procedure linkage table entry for such symbols. But, if no dynamic objects were seen, never create a PLT entry. (elf_i386_size_dynamic_sections): If no dynamic objects were seen, skip most of this function, and force the size of the .rel.got section to zero. (elf_i386_relocate_section): For a R_386_GOT32 reloc against a global symbol when no dynamic object was seen, initialize the contents of the .got section. For a R_386_GOT32 against a local symbol, only create a R_386_RELATIVE reloc when generating a shared object. Treat a R_386_PLT32 reloc against a symbol for which we did not create a PLT entry as a R_386_PC32 reloc. (elf_i386_finish_dynamic_sections): Only fiddle with the dynamic entries and the PLT if we saw a dynamic object. * elf32-sparc.c (elf_sparc_howto_table): Fix R_SPARC_PC22 by setting rightshift to 10. Fix R_SPARC_WPLT20 by setting rightshift to 2, size to 2, bitsize to 30, and dst_mask to 0x3fffffff. (elf32_sparc_create_dynamic_sections): Don't set the size of the .plt section. Call elf32_sparc_create_got_section rather than creating the .got section. (elf32_sparc_check_relocs): Call elf32_sparc_create_got_section if a GOT table is needed, not bfd_elf32_link_create_dynamic_sections. Only create the .rela.got section, and only make space for a reloc, for a global symbol or when generating a shared object. Set the alignment of the .rela.got section to 2. For a R_SPARC_WPLT30 reloc, just set the ELF_LINK_HASH_NEEDS_PLT flag. (elf32_sparc_adjust_dynamic_symbol): Rework initial assertion to permit ELF_LINK_HASH_NEDS_PLT non dynamic symbols. Create a procedure linkage table for such symbols. But, if no dynamic objects were seen, never create a PLT entry. Initialize the size of the .plt section. (elf32_sparc_size_dynamic_sections): If no dynamic objects were seen, skip most of this function, and force the size of the .rela.got section to zero. Strip empty reloc sections, and strip an empty .plt section. (elf32_sparc_relocate_section): For a GOT reloc against a global symbol when no dynamic object was seen, initialize the contents of the .got section. For a GOT reloc against a local symbol, only create a R_SPARC_RELATIVE reloc when generating a shared object. Treat a R_SPARC_WPLT30 reloc against a symbol for which we did not create a PLT entry as a R_SPARC_WDISP30 reloc. (elf32_sparc_finish_dynamic_sections): Only fiddle with the dynamic entries and the PLT if we saw a dynamic object.
1994-10-20 * elfcode.h (elf_map_symbols): Don't worry about section symbolsIan Lance Taylor2-82/+87
in a section not owned by any BFD. (elf_section_from_bfd_section): Separate out loop which calls backend routine. Check bfd_section and call the backend routine even for a section not owned by any BFD. * elf32-mips.c (mips_elf_section_from_bfd_section): Handle .acommon section.
1994-10-19 * coffgen.c (coff_print_symbol): Make names for section number andJim Kingdon1-0/+7
storage class slightly more verbose. It's not clear how many characters I can justify using up, but before this change they both were abbreviated "sc" which is (IMHO) clearly unacceptable.
1994-10-19 * binary.c (binary_set_section_contents): Set the base fileIan Lance Taylor1-0/+3
position from the lowest section VMA, not the start address.