aboutsummaryrefslogtreecommitdiff
path: root/bfd
AgeCommit message (Collapse)AuthorFilesLines
2001-09-26 * bfd.c (_bfd_default_error_handlerl): Define using VPARAMS,Alan Modra2-38/+11
VA_OPEN, VA_FIXEDARG, VA_CLOSE. (bfd_archive_filename): Cast bfd_malloc arg to the correct size.
2001-09-25 * elf64-sparc.c (sparc64_elf_build_plt): Fix .plt[32768+] slotJakub Jelinek2-2/+7
computation.
2001-09-252001-09-25 H.J. Lu <hjl@gnu.org>H.J. Lu2-10/+14
* bfd-in2.h: Regenerated.
2001-09-25 * elf32-i386.c: Add comment re linker function names and ordering.Alan Modra2-132/+153
(elf_i386_link_hash_newfunc): Rename to link_hash_newfunc. (elf_i386_grok_prstatus): Move before linker functions. (elf_i386_grok_psinfo): Likewise. (elf_i386_fake_sections): Move so that functions are ordered. (elf_i386_reloc_type_class): Likewise. Comment function purpose.
2001-09-25 * elf32-hppa.c: Rename all occurrences of "hplink" to "htab"Alan Modra2-211/+208
throughout file.
2001-09-25 * elf32-hppa.c: (LONG_BRANCH_PIC_IN_SHLIB): Delete. Remove allAlan Modra2-361/+292
code handling this option. (LONG_BRANCH_VIA_PLT): Likewise. (RELATIVE_DYNRELOCS): Define as zero. (struct elf32_hppa_dyn_reloc_entry): Add "sec", and "pc_count" fields. Remove "section" field. (elf32_hppa_link_hash_entry): Rename reloc_entries to dyn_relocs. (elf32_hppa_check_relocs): Don't allocate space for dynamic relocs here. Instead, record all needed dynamic relocs via dyn_relocs and local_dynrel. Cache pointer to "sreloc" section in elf_section_data. (elf32_hppa_gc_sweep_hook): Sweep dyn_relocs and local_dynrel. (allocate_plt_and_got_and_discard_relocs): Rename to allocate_dynrelocs. Allocate rather than discarding dyn relocs. (readonly_dynrelocs): New function. (elf32_hppa_size_dynamic_sections): Mark output_bfd unused. Call readonly_dynrelocs to determine need for DT_TEXTREL. Rename "i" to "ibfd". Allocate space for local dyn relocs. (elf32_hppa_relocate_section): Make use of cached sreloc. (elf32_hppa_reloc_type_class): New function. (elf_backend_reloc_type_class): Define.
2001-09-25 * elf-bfd.h (struct bfd_elf_section_data): Add "local_dynrel"Alan Modra3-117/+224
and "sreloc" fields. * elf32-i386.c (struct elf_i386_dyn_relocs): Add "sec", and "pc_count" fields. Remove "section" field. (elf_i386_check_relocs): Don't set DF_TEXTREL here. Don't allocate space for dynamic relocs here. Instead, record all needed dynamic relocs via dyn_relocs and local_dynrel. Cache pointer to "sreloc" section in elf_section_data. (elf_i386_gc_sweep_hook): Sweep dyn_relocs and local_dynrel. (allocate_plt_and_got_and_discard_relocs): Rename to allocate_dynrelocs. Allocate rather than discarding dyn relocs. (readonly_dynrelocs): New function. (elf_i386_size_dynamic_sections): Call readonly_dynrelocs. Rename "i" to "ibfd". Allocate space for local dyn relocs. (elf_i386_relocate_section): Make use of cached sreloc.
2001-09-24 * elf-bfd.h (elf_backend_reloc_type_class): Pass in the entireAlan Modra17-86/+115
reloc rather than just the type. (_bfd_elf_reloc_type_class): Likewise. * elf.c (_bfd_elf_reloc_type_class): Likewise. * elf32-arm.h (elf32_arm_reloc_type_class): Likewise. * elf32-cris.c (elf_cris_reloc_type_class): Likewise. * elf32-i386.c (elf_i386_reloc_type_class): Likewise. * elf32-m68k.c (elf32_m68k_reloc_type_class): Likewise. * elf32-ppc.c (ppc_elf_reloc_type_class): Likewise. * elf32-s390.c (elf_s390_reloc_type_class): Likewise. * elf32-sh.c (sh_elf_reloc_type_class): Likewise. * elf32-sparc.c (elf32_sparc_reloc_type_class): Likewise. * elf64-alpha.c (elf64_alpha_reloc_type_class): Likewise. * elf64-s390.c (elf_s390_reloc_type_class): Likewise. * elf64-sparc.c (sparc64_elf_reloc_type_class): Likewise. * elf64-x86-64.c (elf64_x86_64_reloc_type_class): Likewise. * elfxx-ia64.c (elfNN_ia64_reloc_type_class): Likewise. * elflink.h: Formatting fixes. (elf_link_sort_relocs): Make "count" and "size" bfd_size_type. Call bfd_zmalloc rather than calloc. Remove unnecessary cast of o->contents to PTR. Update call to elf_backend_reloc_type_class.
2001-09-22 * elfcode.h (elf_object_p): Allow for no section header at all inAlan Modra2-22/+34
non-ET_REL files. Honor 0 for e_shnum, e_shstrndx, e_shoff.
2001-09-21Fix compile time warningsNick Clifton9-19/+49
2001-09-21 * Makefile.am: Run "make dep-am".Alan Modra8-601/+675
* Makefile.in: Regenerate. * doc/Makefile.in: Regenerate. * aoutx.h: Formatting fixes. * merge.c (_bfd_merged_section_offset): Break line at 80 chars. * linker.c: Replace bfd_get_filename with bfd_archive_filename in error message.
2001-09-20 * bfd.c (bfd_archive_filename): New function.Alan Modra50-387/+463
* bfd-in2.h: Regenerate. * aout-adobe.c: Replace bfd_get_filename with bfd_archive_filename in error messages where the bfd is an input bfd. * aout-cris.c: Likewise. * coff-arm.c: Likewise. * coff-mcore.c: Likewise. * coff-ppc.c: Likewise. * coff-rs6000.c: Likewise. * coff-sh.c: Likewise. * coff-tic54x.c: Likewise. * coff-tic80.c: Likewise. * coff64-rs6000.c: Likewise. * coffcode.h: Likewise. * coffgen.c: Likewise. * cofflink.c: Likewise. * ecofflink.c: Likewise. * elf-hppa.h: Likewise. * elf.c: Likewise. * elf32-arm.h: Likewise. * elf32-cris.c: Likewise. * elf32-gen.c: Likewise. * elf32-hppa.c: Likewise. * elf32-i370.c: Likewise. * elf32-i386.c: Likewise. * elf32-m32r.c: Likewise. * elf32-mcore.c: Likewise. * elf32-mips.c: Likewise. * elf32-ppc.c: Likewise. * elf32-s390.c: Likewise. * elf32-sh.c: Likewise. * elf32-sparc.c: Likewise. * elf32-v850.c: Likewise. * elf64-alpha.c: Likewise. * elf64-gen.c: Likewise. * elf64-ppc.c: Likewise. * elf64-s390.c: Likewise. * elf64-sparc.c: Likewise. * elf64-x86-64.c: Likewise. * elflink.h: Likewise. * elfxx-ia64.c: Likewise. * ieee.c: Likewise. * ihex.c: Likewise. * libbfd.c: Likewise. * pdp11.c: Likewise. * pe-mips.c: Likewise. * peicode.h: Likewise. * srec.c: Likewise. * xcofflink.c: Likewise. * elf32-arm.h: Make _bfd_error_handler calls K&R compatible. * elflink.c (_bfd_elf_create_linker_section): Better grammar for error message. * coff-mcore.c (coff_mcore_relocate_section): Internalionalise error message. * elf64-sparc.c (sparc64_elf_add_symbol_hook): Constify stt_types. Consolidate error messages, and split long messages to two lines.
2001-09-20coordinate info->symbolic and info->allow_shlib_undefinedNick Clifton17-19/+59
2001-09-19Locale changes from Bruno Haible <haible@clisp.cons.org>.H.J. Lu21-67/+90
2001-09-18 * bfdint.texi: Replace reference to bfd_read with bfd_bread.Alan Modra2-3/+8
Likewise for bfd_write.
2001-09-18Touches most files in bfd/, so likely will be blamed for everything..Alan Modra183-12305/+13588
o bfd_read and bfd_write lose an unnecessary param and become bfd_bread and bfd_bwrite. o bfd_*alloc now all take a bfd_size_type arg, and will error if size_t is too small. eg. 32 bit host, 64 bit bfd, verrry big files or bugs in linker scripts etc. o file_ptr becomes a bfd_signed_vma. Besides matching sizes with various other types involved in handling sections, this should make it easier for bfd to support a 64 bit off_t on 32 bit hosts that provide it. o I've made the H_GET_* and H_PUT_* macros (which invoke bfd_h_{get,put}_*) generally available. They now cast their args to bfd_vma and bfd_byte * as appropriate, which removes a swag of casts from the source. o Bug fixes to bfd_get8, aix386_core_vec, elf32_h8_relax_section, and aout-encap.c. o Zillions of formatting and -Wconversion fixes.
2001-09-18Fix typoNick Clifton2-1/+5
2001-09-172001-09-17 H.J. Lu <hjl@gnu.org>H.J. Lu2-5/+17
* dwarf1.c (parse_die): Take a new arg for the end of the section. Return false if die is beyond the section. (parse_functions_in_unit): Pass the end of the section to parse_die (). (_bfd_dwarf1_find_nearest_line): Likewise.
2001-09-14Fix bug emitting R_SPARC_UA32 relocs into shared objectsNick Clifton2-1/+6
2001-09-14Add support for arm-openbsd targetNick Clifton2-1/+5
2001-09-14 /bfd/ChangeLogThiemo Seufer2-7/+20
* config.bfd: Change machine triplets from mips*el*-* to mips*el-*. Add support for mips64. /ChangeLog * config.sub: Change machine triplets from mipsel*-* to mips*el-*. Add support for mips64. /gas/ChangeLog * configure.in: Change machine triplets from mips-*-linux-gnu* to mips*-*-linux*.
2001-09-13* elf32-openrisc.c (ELF_MACHINE_ALT1): Define as EM_OPENRISC_OLD.Alexandre Oliva2-0/+5
2001-09-13* elf.c (prep_headers): Get the machine code from the elfAlexandre Oliva1-1/+2
backend data. * elf-m10200.c (ELF_MACHINE_CODE): Redefine to EM_MN10200. (ELF_MACHINE_ALT1): Define to EM_CYGNUS_MN10200. * elf-m10300.c (ELF_MACHINE_CODE): Redefine to EM_MN10300. (ELF_MACHINE_ALT1): Define to EM_CYGNUS_MN10300. * elf-arc.c (arc_elf_final_write_processing): Don't override e_machine, it's now properly set in prep_headers. * elf32-avr.c (elf32_avr_object_p): Accept both EM_AVR and EM_AVR_OLD. (ELF_MACHINE_ALT1): Define to EM_AVR_OLD. * elf-d10v.c (ELF_MACHINE_CODE): Redefine to EM_D10V. (ELF_MACHINE_ALT1): Define to EM_CYGNUS_D10V. * elf-d30v.c (ELF_MACHINE_CODE): Redefine to EM_D30V. (ELF_MACHINE_ALT1): Define to EM_CYGNUS_D30V. * elf-fr30.c (ELF_MACHINE_CODE): Redefine to EM_FR30. (ELF_MACHINE_ALT1): Define to EM_CYGNUS_FR30. * elf-m32r.c (ELF_MACHINE_CODE): Redefine to EM_M32R. (ELF_MACHINE_ALT1): Define to EM_CYGNUS_M32R. * elf32-pj.c (ELF_MACHINE_ALT1): DEfine to EM_PJ_OLD. * elf-v850.c (ELF_MACHINE_CODE): Redefine to EM_V850. (ELF_MACHINE_ALT1): Define to EM_CYGNUS_V850.
2001-09-12* elf.c (prep_headers): Get the machine code from the elfAlexandre Oliva11-120/+56
backend data. * elf-m10200.c (ELF_MACHINE_CODE): Redefine to EM_MN10200. (ELF_MACHINE_ALT1): Define to EM_CYGNUS_MN10200. * elf-m10300.c (ELF_MACHINE_CODE): Redefine to EM_MN10300. (ELF_MACHINE_ALT1): Define to EM_CYGNUS_MN10300. * elf-arc.c (arc_elf_final_write_processing): Don't override e_machine, it's now properly set in prep_headers. * elf32-avr.c (elf32_avr_object_p): Accept both EM_AVR and EM_AVR_OLD. (ELF_MACHINE_ALT1): Define to EM_AVR_OLD. * elf-d10v.c (ELF_MACHINE_CODE): Redefine to EM_D10V. (ELF_MACHINE_ALT1): Define to EM_CYGNUS_D10V. * elf-d30v.c (ELF_MACHINE_CODE): Redefine to EM_D30V. (ELF_MACHINE_ALT1): Define to EM_CYGNUS_D30V. * elf-fr30.c (ELF_MACHINE_CODE): Redefine to EM_FR30. (ELF_MACHINE_ALT1): Define to EM_CYGNUS_FR30. * elf-m32r.c (ELF_MACHINE_CODE): Redefine to EM_M32R. (ELF_MACHINE_ALT1): Define to EM_CYGNUS_M32R. * elf32-pj.c (ELF_MACHINE_ALT1): DEfine to EM_PJ_OLD. * elf-v850.c (ELF_MACHINE_CODE): Redefine to EM_V850. (ELF_MACHINE_ALT1): Define to EM_CYGNUS_V850.
2001-09-11 * elf64-alpha.c (elf64_alpha_section_flags): New.Richard Henderson2-1/+24
(elf64_alpha_fake_sections): Map SEC_SMALL_DATA to SHF_ALPHA_GPREL.
2001-09-11 * elf64-alpha.c (elf64_alpha_relocate_section): Do notRichard Henderson2-3/+16
apply HINT relocations against dynamic symbols.
2001-09-112001-09-11 H.J. Lu <hjl@gnu.org>H.J. Lu2-1/+6
* inker.c (link_action): Change COMMON_ROW\defw from CREF to COM.
2001-09-09 * elf64-alpha.c: Delete all unused ERIC_neverdef and rth_notdef code.Richard Henderson2-438/+7
2001-09-09 * elf64-alpha.c (elf64_alpha_relax_with_lituse): Nop out gpdispRichard Henderson2-8/+35
following a call to a near function.
2001-09-09 * elf64-alpha.c (elf64_alpha_relocate_section): Soft failRichard Henderson2-3/+24
relocation errors. Fail gp-relative relocations against dynamic symbols.
2001-09-08 * elf32-i386.c (elf_i386_relocate_section): Check !DEF_REGULARAlan Modra3-6813/+6833
as well as DEF_DYNAMIC in test for avoided copy relocs. (allocate_plt_and_got_and_discard_relocs): Likewise. * elf32-i386.c (elf_i386_relocate_section): Likewise. (allocate_plt_and_got_and_discard_relocs): Likewise.
2001-09-07 * elf32-mips.c (mips_elf_calculate_relocation): Fix overflow handlingThiemo Seufer2-1/+6
of R_MIPS_PC16. * config/tc-mips.c (append_insn): Handle BFD_RELOC_16_PCREL. (macro_build): Use BFD_RELOC_16_PCREL_S2 only for embedded PIC, BFD_RELOC_16_PCREL for the rest. (mips_ip): Likewise. (md_pcrel_from): return the right offset for the differently shifted pcrel relocs. (md_apply_fix): Handle BFD_RELOC_16_PCREL. * gas/mips/beq.d: Check branches to external labels. * gas/mips/beq.s: Likewise. * gas/mips/bge.d: Likewise. * gas/mips/bge.s: Likewise. * gas/mips/bgeu.d: Likewise. * gas/mips/bgeu.s: Likewise. * gas/mips/blt.d: Likewise. * gas/mips/blt.s: Likewise. * gas/mips/bltu.d: Likewise. * gas/mips/bltu.s: Likewise. * gas/mips/elempic.d: Switch from R_MIPS_GNU_REL16_S2 to R_MIPS_PC16. * gas/mips/empic.d: Likewise. * gas/mips/empic.s: Likewise. * gas/mips/telempic.d: Likewise. * gas/mips/tempic.d: Likewise.
2001-09-06 * elf64-mips.c (mips_elf64_howto_table_rel): Fix relocation HOWTOThiemo Seufer2-6953/+6908
definitions. (mips_elf64_howto_table_rel): Likewise.
2001-09-06Fix import symbols for AIX.Tom Rix5-14/+48
2001-09-05 * elf64-alpha.c (SKIP_HOWTO): New.Richard Henderson5-237/+74
(elf64_alpha_howto_table): Use it to remove dead ECOFF relocs. Fix sizes of 16-bit mem format relocs. (elf64_alpha_reloc_map): Update to match. (elf64_alpha_relax_with_lituse): Use GPREL16 as appropriate. (elf64_alpha_relax_without_lituse): Likewise. (elf64_alpha_check_relocs): Handle GPREL16. (elf64_alpha_relocate_section): Likewise. * reloc.c (BFD_RELOC_ALPHA_USER_*): Remove. (BFD_RELOC_ALPHA_GPREL_HI16, BFD_RELOC_ALPHA_GPREL_LO16): New. * bfd-in2.h, libbfd.h: Rebuild.
2001-09-04 * elf32-h8300.c (elf32_h8_relax_section): New function.Jeff Law2-0/+867
(elf32_h8_relax_delete_bytes): Likewise. (elf32_h8_symbol_address_p): Likewise. (elf32_h8_get_relocated_section_contents): Likewise. (bfd_elf32_bfd_relax_section): Define. (bfd_elf32_bfd_get_relocated_section_contents): Likewise.
2001-09-04 * elf32-h8300.c (special): New function.Jeff Law2-12/+65
(h8_elf_howto_table): Use it for SPECIAL_FUNCTION field in all relocations. (elf32_h8_final_link_relocate): Treat R_H8_DIR24A8 like 32bit relocations. Fix problems with the true 24bit reloc R_H8_DIR24R8. Fix minor problems with 8bit and 16bit PC relative relocations.
2001-09-01 * vms-tir.c: Add missing prototypes.Andreas Jaeger5-5/+34
* vms-hdr.c: Likewise. * vms-gsd.c: Likewise. * vms-misc.c: Likewise.
2001-08-312001-08-31 H.J. Lu <hjl@gnu.org>H.J. Lu2-2/+14
* elf32-mips.c (_bfd_mips_elf_check_relocs): Report filename with bad relocation.
2001-08-312001-08-31 Eric Christopher <echristo@redhat.com>Eric Christopher6-34/+32
Jason Eckhardt <jle@redhat.com> * bfd/archures.c: Add mipsisa32 and mipsisa64. Remove mips32, mips32_4k and mips64. * bfd/aoutx.h: Remove bfd_mach_mips32, bfd_mach_mips32_4k, bfd_mach_mips64. Add bfd_mach_mipsisa32, bfd_mach_mipsisa64. * bfd/cpu-mips.c: Ditto. * bfd/elf32-mips.c (_bfd_mips_elf_final_write_processing): Ditto. * bfd/bfd-in2.h: Regenerate.
2001-08-31 * elf64-alpha.c (elf64_alpha_relocate_section): Duplicate memoryJakub Jelinek2-3/+9
value into R_ALPHA_RELATIVE's addend. (elf64_alpha_finish_dynamic_symbol): Likewise.
2001-08-31amend entry to mention only if not USE_RELNick Clifton1-1/+1
2001-08-31Do not rightshift recomputed addend during relocatable link if not USE_REL.Nick Clifton2-3/+5
2001-08-31Fix off-by-one error whilst sweeping vtable relocsNick Clifton2-3/+10
2001-08-302001-08-30 H.J. Lu <hjl@gnu.org>H.J. Lu2-5/+12
* elf32-mips.c (mips_elf_calculate_relocation): Revert the last 2 changes. (_bfd_mips_elf_adjust_dynamic_symbol): Allocate dynamic relocations for weak definitions.
2001-08-302001-08-30 H.J. Lu <hjl@gnu.org>H.J. Lu3-0/+10
* Makefile.am (BFD32_BACKENDS): Add elf32-h8300.lo. (BFD32_BACKENDS_CFILES): Add elf32-h8300.c. * Makefile.in: Rebuild.
2001-08-302001-08-30 H.J. Lu <hjl@gnu.org>H.J. Lu2-1/+8
* elf32-mips.c (mips_elf_calculate_relocation): Don't create dynamic relocation for undefined weak symbols when creating executables. Check h->root.root.type, instead of h->root.type.
2001-08-30Fix for xty_ld symbolsTom Rix2-4/+9
2001-08-30 * elf32-h8300.c (h8_elf_howto_table): Add new PC relativeJeff Law2-6/+54
relocations. (h8_reloc_map): Similarly. (elf32_h8_final_link_relocate): Remove incorrect overflow tests. Add support for PC relative relocations.
2001-08-30 * elf32-h8300.c: Put all prototypes together.Jeff Law2-9/+251
(elf32_h8_info_to_howto): Parameter elf_reloc is used. (elf32_h8_final_link_relocate): New function for linker. (elf32_h8_relocate_section): Similarly. (elf_backend_relocate_section): Define.