aboutsummaryrefslogtreecommitdiff
path: root/bfd
AgeCommit message (Collapse)AuthorFilesLines
2000-08-27Reclaim reloc space for symbols that have been forced local.Alan Modra2-43/+63
2000-08-24Allow common symbols to have an alignment of 1 if explicitly requested, andNick Clifton2-1/+10
not overridden by other definitions.
2000-08-22Fix bugs detecting w65 architecture.Nick Clifton3-4/+15
2000-08-222000-08-22 H.J. Lu <hjl@gnu.org>H.J. Lu6-0/+106
* elf-bfd.h (elf_link_hash_table): Add runpath. * bfd-in.h (bfd_elf_get_runpath_list): New prototype. * bfd-in2.h: Rebuilt. * elf.c (_bfd_elf_link_hash_table_init): Initialize the "runpath" field to NULL. (bfd_elf_get_runpath_list): New function. * elflink.h (elf_link_add_object_symbols): Record DT_RPATH and DT_RUNPATH entries.
2000-08-22* elf32-sh.c (sh_elf_relocate_section) [R_SH_IND12W,Alexandre Oliva2-21/+28
R_SH_DIR8WPN, R_SH_DIR8WPZ, R_SH_DIR8WPL]: Handle them explicitly. Improve validation of r_type.
2000-08-21Zero out the dynamic allocated content space. Add a comment to remind us thatNick Clifton5-4/+33
one day this ought to be fixed.
2000-08-212000-08-21 Jason Eckhardt <jle@cygnus.com>Jason Eckhardt2-17/+14
bfd: * elf32-i860.c (elf32_i860_relocate_pc16): Just write the immediate field with the newly relocated value instead of adding it to the existing immediate field. (elf32_i860_relocate_splitn): Likewise. (elf32_i860_relocate_highadj): Likewise. gas: * config/tc-i860.c (md_apply_fix3): Do not insert the immediate if the fixup resulted in a relocation.
2000-08-162000-08-16 Jason Eckhardt <jle@cygnus.com>Jason Eckhardt2-10/+35
* elf32-i860.c (elf32_i860_relocate_pc16): Implemented function (it was previously just a stub).
2000-08-16* elflink.c (_bfd_elf_create_got_section): Don't abort().Alexandre Oliva2-6/+28
Formatting fixes. (_bfd_elf_create_dynamic_sections): Likewise.
2000-08-16 * elf64-sparc.c (sparc64_elf_relocate_section): Set relocation addressJakub Jelinek2-8/+25
for undefined symbols to be the beginning of the section. * elf64-sparc.c (sparc64_elf_adjust_dynamic_symbol): Don't allocate four extra entries at the beginning of the .rela.plt section. (sparc64_elf_finish_dynamic_symbol): Adjust the offset in the .rela.plt section to account for the four reserved entries in the .plt section.
2000-08-16* xcofflink.c (_bfd_ppc_xcoff_relocate_section): Add ori r0,r0,0Geoffrey Keating3-27/+64
to the list of NOPs we recognize after a branch-and-link. Use the ori NOP when one is needed. * coff-rs6000.c (_bfd_xcoff_slurp_armap): Finish implementation for large archives.
2000-08-14Add support for IA-64 specific elf header flags.Jim Wilson2-1/+36
bfd/ 2000-08-14 Jim Wilson <wilson@cygnus.com> * elf64-ia64.c (elf64_ia64_merge_private_bfd_data): Handle EF_IA_64_REDUCEDFP, EF_IA_64_CONS_GP, and EF_IA_64_NOFUNCDESC_CONS_GP. (elf64_ia64_print_private_bfd_data): Likewise. Also handle EF_IA_64_ABSOLUTE. gas/ 2000-08-14 Jim Wilson <wilson@cygnus.com> * config/tc-ia64.c (md_longopts): Add -mconstant-gp and -mauto-pic. (md_parse_option): Add OPTION_MCONSTANT_GP and OPTION_MAUTO_PIC. (md_begin): Change assignment to md.flag to OR in the new bit. include/elf/ 2000-08-14 Jim Wilson <wilson@cygnus.com> * elf/ia64.h (EF_IA_64_REDUCEDFP, EF_IA_64_CONS_GP, EF_IA_64_NOFUNCDESC_CONS_GP, EF_IA_64_ABSOLUTE): Define.
2000-08-11* elf32-sh.c (sh_elf_set_mach_from_flags): Make it static.Alexandre Oliva2-2/+6
2000-08-102000-08-10 Jason Eckhardt <jle@cygnus.com>Jason Eckhardt2-4/+370
* elf32-i860.c (elf32_i860_relocate_section): New function. (i860_final_link_relocate): New function. (elf32_i860_relocate_splitn): New function. (elf32_i860_relocate_pc16): New function. (elf32_i860_relocate_highadj): New function. (elf32_i860_howto): Minor adjustments to some relocations. (elf_info_to_howto_rel): Define. (elf_backend_relocate_section): Define.
2000-08-10Fix formattingNick Clifton2-141/+139
2000-08-10Fix bug in sh_elf_reloc_loopBernd Schmidt2-1/+5
2000-08-09gas:Jason Eckhardt2-6/+10
2000-08-08 Jason Eckhardt <jle@cygnus.com> * config/tc-i860.h: Rework completely for BFD_ASSEMBLER. (i860_fix_info): New enum. (MD_APPLY_FIX3): Define. (WORKING_DOT_WORD): Define. (TC_HANDLES_FX_DONE): Define. (DIFF_EXPR_OK): Define. (LISTING_HEADER): Define. (TARGET_FORMAT): Select target format based on endian flag. (TARGET_BYTES_BIG_ENDIAN): Default to little endian. (target_big_endian): Add external declaration. * config/tc-i860.c: All existing code reworked completely. Other new code shown below. (SYNTAX_SVR4): Define. (target_warn_expand): New variable. (md_shortopts): Declare and define (-Qy, -Qn, and -V options). (md_longopts): Declare and define with new options (-EL, -EB, and -mwarn-expand). (md_show_usage): New function. (md_operand): New function. (obtain_reloc_for_imm16): New function. (md_apply_fix3): New function. (tc_gen_reloc): New function. include: 2000-08-08 Jason Eckhardt <jle@cygnus.com> * opcode/i860.h: Small formatting adjustments. opcode: 2000-08-08 Jason Eckhardt <jle@cygnus.com> * i860-dis.c (print_br_address): Change third argument from int to long. bfd: 2000-08-08 Jason Eckhardt <jle@cygnus.com> * elf32-i860.c (elf32_i860_howto_table): Updated some fields.
2000-08-07Apply Nick Clifton's suggestion.Kazu Hirata2-5/+4
2000-08-072000-08-07 Kazu Hirata <kazu@hxi.com>Kazu Hirata3-7/+10
* ieee.c: Fix a comment typo. * elf64-ia64.c: Likewise.
2000-08-052000-08-05 Jason Eckhardt <jle@cygnus.com>Jason Eckhardt2-7/+677
* elf32-i860 (elf32_i860_howto_table): New structure. (lookup_howto): New function. (elf32_i860_reloc_type_lookup): New function. (elf32_i860_info_to_howto_rela): New function. (elf_code_to_howto_index): New structure. (elf_info_to_howto): Re-define as elf32_i860_info_to_howto_rela. (bfd_elf32_bfd_reloc_type_lookup): Re-define as elf32_i860_reloc_type_lookup.
2000-08-04 * som.c (struct fixup_format): Constify `format'.Jeff Law2-285/+296
(som_hppa_howto_table): Use SOM_HOWTO macro. (try_prev_fixup, hppa_som_reloc): Decorate unused parameter. (som_bfd_reloc_type_lookup): Likewise. (compare_subspaces): Remove unused `count1', `count2'. (som_begin_writing): Remove unused `total_reloc_size'. (som_bfd_derive_misc_symbol_info): Decorate unused parameter. (som_print_symbol, som_bfd_is_local_label_name): Likewise. (som_set_reloc_info): Constify `cp'. Remove unused `addend'. (som_find_nearest_line): Decorate unused parameter(s). (som_sizeof_headers, som_get_symbol_info, som_write_armap): Likewise. (som_bfd_link_split_section): Likewise.
2000-08-04If the destination of a BLX instruction is aligned on a half word boundary,Nick Clifton1-6/+15
set the H bit.
2000-08-03Restore reverted code. Fix bug in reverted code which was eliminating tooNick Clifton4-196/+335
many segments.
2000-08-032000-08-03 H.J. Lu <hjl@gnu.org>H.J. Lu4-184/+78
* section.c: Back out the change made by Nick Clifton <nickc@cygnus.com> on 2000-07-31. It breaks stripping dynamic binaries. * bfd-in2.h: Likewise. * elf.c: Likewise.
2000-08-03* elf32-sh.c (sh_elf_reloc_loop): Warning removal.Alexandre Oliva2-3/+7
2000-08-012000-07-31 Jason Eckhardt <jle@cygnus.com>Jason Eckhardt4-0/+138
* reloc.c (BFD_RELOC_860_*): New bfd relocs for i860. * bfd-in2.h, libbfd.h: Regenerate.
2000-07-31Minor formatting fixes.Nick Clifton8-248/+259
2000-07-31Improve section to segment mapping code.Nick Clifton4-70/+206
2000-07-28200007-22 Jason Eckhardt <jle@cygnus.com>Jason Eckhardt1-0/+25
* cpu-i860.c: Added comments. * elf32-i860.c (TARGET_LITTLE_SYM): Defined to bfd_elf32_i860_little_vec. (TARGET_LITTLE_NAME): Defined to "elf32-i860-little". (ELF_MAXPAGESIZE): Changed to 4096. * targets.c (bfd_elf32_i860_little_vec): Declaration of new target. (bfd_target_vector): Added bfd_elf32_i860_little_vec. * config.bfd (i860-stardent-sysv4*, i860-stardent-elf*): Added config for little endian elf32 i860. (targ_defvec): Define for the new config above as "bfd_elf32_i860_little_vec". (targ_selvecs): Define for the new config above as "bfd_elf32_i860_vec bfd_elf32_i860_little_vec" * configure.in (bfd_elf32_i860_little_vec): Added recognition of new target vec. * configure: Regenerated.
2000-07-282000-07-22 Jason Eckhardt <jle@cygnus.com>Jason Eckhardt6-258/+259
* include/opcode/i860.h (btne, bte, bla): Changed these opcodes to use sbroff ('r') instead of split16 ('s'). (J, K, L, M): New operand types for 16-bit aligned fields. (ld.x, {p}fld.x, fst.x, pst.d): Changed these opcodes to use I, J, K, L, M instead of just I. (T, U): New operand types for split 16-bit aligned fields. (st.x): Changed these opcodes to use S, T, U instead of just S. (andh, andnoth, orh, xorh): Deleted 3-register forms as they do not exist on the i860. (pfgt.sd, pfle.sd): Deleted these as they do not exist on the i860. (pfeq.ss, pfeq.dd): New opcodes. (st.s): Fixed incorrect mask bits. (fmlow): Fixed incorrect mask bits. (fzchkl, pfzchkl): Fixed incorrect mask bits. (faddz, pfaddz): Fixed incorrect mask bits. (form, pform): Fixed incorrect mask bits. (pfld.l): Fixed incorrect mask bits. (fst.q): Fixed incorrect mask bits. (all floating point opcodes): Fixed incorrect mask bits for handling of dual bit. * include/elf/i860.h: New file. (elf_i860_reloc_type): Defined ELF32 i860 relocations. * bfd/cpu-i860.c: Added comments. * bfd/elf32-i860.c (TARGET_LITTLE_SYM): Defined to bfd_elf32_i860_little_vec. (TARGET_LITTLE_NAME): Defined to "elf32-i860-little". (ELF_MAXPAGESIZE): Changed to 4096. * bfd/targets.c (bfd_elf32_i860_little_vec): Declaration of new target. (bfd_target_vector): Added bfd_elf32_i860_little_vec. * bfd/config.bfd (i860-stardent-sysv4*, i860-stardent-elf*): Added config for little endian elf32 i860. (targ_defvec): Define for the new config above as "bfd_elf32_i860_little_vec". (targ_selvecs): Define for the new config above as "bfd_elf32_i860_vec bfd_elf32_i860_little_vec" * bfd/configure.in (bfd_elf32_i860_little_vec): Added recognition of new target vec. * bfd/configure: Regenerated. * opcodes/i860-dis.c: New file. (print_insn_i860): New function. (print_br_address): New function. (sign_extend): New function. (BITWISE_OP): New macro. (I860_REG_PREFIX): New macro. (grnames, frnames, crnames): New structures. * opcodes/disassemble.c (ARCH_i860): Define. (disassembler): Add check for bfd_arch_i860 to set disassemble function to print_insn_i860. * include/dis-asm.h (print_insn_i860): Add prototype. * opcodes/Makefile.in (CFILES): Added i860-dis.c. (ALL_MACHINES): Added i860-dis.lo. (i860-dis.lo): New dependences. * opcodes/configure.in: New bits for bfd_i860_arch. * opcodes/configure: Regenerated.
2000-07-282000-07-27 H.J. Lu <hjl@gnu.org>H.J. Lu2-11/+32
* elflink.h (elf_merge_symbol): Take one more argument, dt_needed, to indicate if the symbol comes from a DT_NEEDED entry. Don't overide the existing weak definition if dt_needed is true. (elf_link_add_object_symbols): Pass dt_needed to elf_merge_symbol ().
2000-07-27Zero the allocated contents of reloc sections.Nick Clifton2-2/+9
2000-07-25* configure.host (*-*-aix*): AIX has 'long long' always.Geoffrey Keating2-0/+6
2000-07-25* coff-rs6000.c (xcoff_write_one_armap_big): New procedure.Geoffrey Keating2-16/+106
(xcoff_write_armap_big): Write both 32-bit and 64-bit armaps. (xcoff_write_archive_contents_big): Don't update the offset of the symbol table, xcoff_write_armap will do it.
2000-07-24Regenerate auto-generated filesNick Clifton8-400/+399
2000-07-232000-07-23 Ulf Carlsson <ulfc@engr.sgi.com>Ulf Carlsson2-3/+8
* elf32-mips.c (_bfd_mips_elf_check_relocs): Use abfd instead of dynobj for SGI_COMPAT checks.
2000-07-21oops - omitted from previous deltaNick Clifton1-0/+4
2000-07-21Applied Michael's Sokolov's patch to implement --embedded-relocs for m68k coff.Nick Clifton2-1/+98
2000-07-21Detect and report corrupt relocsNick Clifton2-0/+12
2000-07-212000-07-20 H.J. Lu <hjl@gnu.org>H.J. Lu2-1/+7
* elflink.h (NAME(bfd_elf,size_dynamic_sections)): Don't check info->new_dtags when setting DT_FLAGS_1. It will only be set by the new linker options. It shouldn't break anything.
2000-07-212000-07-20 H.J. Lu <hjl@gnu.org>H.J. Lu2-1/+6
* elflink.h (NAME(bfd_elf,size_dynamic_sections)): Set DT_FLAGS_1 only if info->new_dtags is true.
2000-07-202000-07-20 H.J. Lu <hjl@gnu.org>H.J. Lu2-3/+9
* elflink.h (NAME(bfd_elf,size_dynamic_sections)): Set DT_RUNPATH and DT_FLAGS only if info->new_dtags is true.
2000-07-20Fix typo in CRIS entryHans-Peter Nilsson1-2/+1
2000-07-20 * Makefile.am (ALL_MACHINES): Add cpu-cris.lo.Hans-Peter Nilsson20-426/+1524
(ALL_MACHINES_CFILES): Add cpu-cris.c. (BFD32_BACKENDS): Add aout-cris.lo and elf32-cris.lo. (BFD32_BACKENDS_CFILES): Add aout-cris.c and elf32-cris.c. (cpu-cris.lo, aout-cris.lo, elf32-cris.lo): New rules. * Makefile.in: Rebuild. * aclocal.m4: Rebuild. * aoutx.h (NAME(aout,machine_type)): Add case for bfd_arch_cris. * archures.c (enum bfd_architecture): Add bfd_arch_cris. (bfd_cris_arch): Declare. (bfd_archures_list): Add bfd_cris_arch. * bfd-in2.h: Rebuild. * config.bfd: (cris-*-*): New target. * configure.in (bfd_elf32_cris_vec, cris_aout_vec): New vectors. * configure: Rebuild. * elf.c (prep_headers): Add bfd_arch_cris. * libbfd.h: Rebuild. * libaout.h (enum machine_type): Add M_CRIS. * reloc.c: Add CRIS relocations. * targets.c (bfd_target bfd_elf32_cris_vec, cris_aout_vec): Declare. (bfd_target_vect): Add bfd_elf32_cris_vec and cris_aout_vec. * cpu-cris.c, aout-cris.c, elf32-cris.c: New files. * po/POTFILES.in, po/bfd.pot: Regenerate.
2000-07-202000-07-19 H.J. Lu <hjl@gnu.org>H.J. Lu13-1/+50
* elf32-arm.h (elf32_arm_size_dynamic_sections): Also set DF_TEXTREL if DT_TEXTREL is set. * elf32-i370.c (i370_elf_size_dynamic_sections): Likewise. * elf32-i386.c (elf_i386_size_dynamic_sections): Likewise. * elf32-m68k.c (elf_m68k_size_dynamic_sections): Likewise. * elf32-mips.c (_bfd_mips_elf_size_dynamic_sections): Likewise. * elf32-ppc.c (ppc_elf_size_dynamic_sections): Likewise. * elf32-sparc.c (elf32_sparc_size_dynamic_sections): Likewise. * elf64-alpha.c (elf64_alpha_size_dynamic_sections): Likewise. * elf64-hppa.c (elf64_hppa_size_dynamic_sections): Likewise. * elf64-ia64.c (elf64_ia64_size_dynamic_sections): Likewise. * elf64-sparc.c (sparc64_elf_size_dynamic_sections): Likewise. * bfd/elflink.h (NAME(bfd_elf,size_dynamic_sections)): Also set DF_SYMBOLIC for symbolic link. Also set DT_RUNPATH if DT_RPATH is set. Set the DT_FLAGS and DT_FLAGS_1 entries if necessary.
2000-07-202000-07-19 H.J. Lu <hjl@gnu.org>H.J. Lu6-1/+91
* bfd-in.h (bfd_elf_set_dt_needed_soname): New. * bfd-in2.h: Rebuild. * elf-bfd.h (elf_obj_tdata): Add dt_soname. (elf_dt_soname): New. * elf.c (bfd_elf_set_dt_needed_soname): New. * elflink.h (elf_link_add_object_symbols): Add the DT_NEEDED entry if the shared object loaded by DT_NEEDED is used to resolve the reference in a regular object.
2000-07-202000-07-19 H.J. Lu <hjl@gnu.org>H.J. Lu2-3/+8
* elf.c (_bfd_elf_print_private_bfd_data): Handle DT_CONFIG, DT_DEPAUDIT and DT_AUDIT as strings.
2000-07-20Fix formattingNick Clifton2-116/+149
2000-07-192000-07-19 H.J. Lu <hjl@gnu.org>H.J. Lu2-3/+5
* elf.c (_bfd_elf_print_private_bfd_data): Fix DT_CHECKSUM.
2000-07-192000-07-19 H.J. Lu <hjl@gnu.org>H.J. Lu2-2/+41
* elf.c (_bfd_elf_print_private_bfd_data): Handle DT_BIND_NOW, DT_INIT_ARRAY, DT_FINI_ARRAY, DT_INIT_ARRAYSZ, DT_FINI_ARRAYSZ, DT_RUNPATH, DT_FLAGS, DT_PREINIT_ARRAY, DT_PREINIT_ARRAYSZ, DT_PLTPADSZ, DT_MOVEENT, DT_MOVESZ, DT_FEATURE, DT_POSFLAG_1, DT_SYMINSZ, DT_SYMINENT, DT_CONFIG, DT_DEPAUDIT, DT_AUDIT, DT_PLTPAD, DT_MOVETAB, DT_SYMINFO, DT_RELACOUNT, DT_RELCOUNT, DT_FLAGS_1, DT_USED and DT_CHECKSUM.