aboutsummaryrefslogtreecommitdiff
path: root/bfd
AgeCommit message (Collapse)AuthorFilesLines
2007-05-15bfd/Richard Sandiford2-41/+35
* elfxx-mips.c (mips_elf_create_local_got_entry): Remove input_section argument. Create .rela.dyn relocations against symbol 0 rather than the section symbol. (mips_elf_local_got_index): Remove input_section argument. Update call to mips_elf_create_local_got_entry. (mips_elf_got_page, mips_elf_got16_entry): Likewise. (mips_elf_calculate_relocation): Update calls to mips_elf_local_got_index, mips_elf_got16_entry and mips_elf_got_page. ld/testsuite/ * ld-mips-elf/vxworks1-lib.rd: Expect the GOT relocation to be against symbol 0.
2007-05-15 bfd/Mark Shinwell2-18/+13
* elf32-arm.c (elf32_arm_final_link_relocate): Correctly handle the Thumb-2 JUMP19 relocation. ld/testsuite/ * ld-arm/arm-elf.exp: Add jump19 testcase. * ld-arm/jump19.d: New. * ld-arm/jump19.s: New.
2007-05-15 PR 4479Alan Modra3-11/+19
* elf.c (elf_fake_sections): Don't allow backend to change SHT_NOBITS if called for strip/objcopy --only-keep-debug. * elfxx-mips.c (_bfd_mips_elf_fake_sections): Remove similar fix from here.
2007-05-15daily updateAlan Modra1-1/+1
2007-05-14 * elf.c (bfd_elf_string_from_elf_section): Return NULL onAlan Modra2-1/+12
invalid shstrndx. (bfd_elf_get_str_section): Likewise.
2007-05-14daily updateAlan Modra1-1/+1
2007-05-13daily updateAlan Modra1-1/+1
2007-05-12 PR 4497Alan Modra2-27/+40
* elf-eh-frame.c (struct cie): Add "local_personality". Make "personality" a union. (cie_eq): Compare local_personality too. Adjust personality comparison. (_bfd_elf_discard_section_eh_frame): Check binding on personality reloc sym to allow for bad symtab. Use stashed local syms rather than reading personality local sym. Handle discarded sections.
2007-05-12include/elf/Alan Modra2-0/+7
* spu.h (R_SPU_ADDR16X): Define. (R_SPU_PPU32, R_SPU_PPU64): Renumber. bfd/ * elf32-spu.c (elf_howto_table): Add howto for R_SPU_ADDR16X.
2007-05-12daily updateAlan Modra1-1/+1
2007-05-11bfd/Alan Modra3-32/+93
* elf32-ppc.h (ppc_elf_select_plt_layout): Update prototype. (enum ppc_elf_plt_type): Move from.. * elf32-ppc.c: ..here. (struct ppc_elf_obj_tdata): Add makes_plt_call and has_rel16. (struct ppc_elf_link_hash_table): Reorder. Add old_bfd. Delete can_use_new_plt. Make is_vxworks a bitfield. (ppc_elf_link_hash_table_create): Don't clear is_vxworks (again). (ppc_elf_check_relocs): Update setting of reloc flags. Set old_bfd. (ppc_elf_select_plt_layout): Modify parameters. Use bfd reloc flags to better detect object files needing old bss-style plt. Allow secure plt to be used without rel16 relocs being detected. Warn if secure plt request cannot be allowed. ld/ * emultempl/ppc32elf.em (plt_style): New variable. (old_plt): Delete. (ppc_after_open): Adjust ppc_elf_select_plt_layout call. (PARSE_AND_LIST_PROLOGUE): Define OPTION_NEW_PLT, renumber OPTION_OLD_PLT, OPTION_OLD_GOT and OPTION_STUBSYMS. (PARSE_AND_LIST_LONGOPTS, PARSE_AND_LIST_OPTIONS): Add secure-plt. (PARSE_AND_LIST_ARGS_CASES): Handle OPTION_NEW_PLT. * ld.texinfo (--secure-plt): Document.
2007-05-11include/elf/Alan Modra7-11/+101
* spu.h (R_SPU_PPU32, R_SPU_PPU64): Define. bfd/ * reloc.c (BFD_RELOC_SPU_PPU32, BFD_RELOC_SPU_PPU64): Define. * elf-bfd.h (struct elf_backend_data): Change return type of elf_backend_relocate_section to int. * elf32-spu.c (elf_howto_table): Add howtos for R_SPU_PPU32 and R_SPU_PPU64. (spu_elf_bfd_to_reloc_type): Convert new relocs. (spu_elf_count_relocs): New function. (elf_backend_count_relocs): Define. (spu_elf_relocate_section): Arrange to emit R_SPU_PPU32 and R_SPU_PPU64 relocs. * elflink.c (elf_link_input_bfd): Emit relocs if relocate_section returns 2. * bfd-in2.h: Regenerate. * libbfd.h: Regenerate. gas/ * config/tc-spu.c (md_pseudo_table): Add int, long, quad. Call spu_cons for word. (md_assemble): Tidy use of insn.flag. (get_imm): Likewise. Handle uppercase input too. (spu_cons): New function. * config/tc-spu.h (tc_fix_adjustable): Don't adjust SPU_PPU relocs. (TC_FORCE_RELOCATION): Don't resolve them either. binutils/ * embedspu.sh (find_prog): Prefer prog in same dir as embedspu over one found on the users path. (main): Generate .reloc for each R_SPU_PPU* reloc.
2007-05-11daily updateAlan Modra1-1/+1
2007-05-10bfd/Richard Sandiford2-2/+10
* elf32-arm.c (elf32_arm_check_relocs): Don't create PLT entries for R_ARM_ABS12 relocs. (elf32_arm_finish_dynamic_symbol): Fix the loop that creates non-shared VxWorks PLT entries. ld/testsuite/ * ld-arm/vxworks1-lib.dd: Expect "push" instead of stmdb and "pop" instead of ldmia. Don't require specific symbolic addresses for in-text addresses. Expect data to be rendered as .words rather than disassembled. * ld-arm/vxworks1.dd: Likewise.
2007-05-10 PR 4454Alan Modra2-2/+36
* elf-eh-frame.c (struct cie): Make "personality" a bfd_vma. (_bfd_elf_discard_section_eh_frame): Handle local syms on personality relocation.
2007-05-10bfd/Richard Sandiford2-1/+6
* elf.c (assign_file_positions_for_load_sections): Use p_memsz rather than p_filesz to calculate the LMA of the end of a segment. ld/testsuite/ * ld-elf/multibss1.d, ld-elf/multibss1.s: New test.
2007-05-10 * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Don't do copyrelocJakub Jelinek2-0/+9
processing if symbol is defined in the executable.
2007-05-10* elf32-frv.c (_frvfdpic_check_discarded_relocs): New.Alexandre Oliva2-0/+125
(frvfdpic_elf_discard_info): New. (elf_backend_discard_info): Define for FDPIC.
2007-05-10daily updateAlan Modra1-1/+1
2007-05-09 bfd/Mark Shinwell2-1/+15
* elf32-arm.c (bfd_elf32_arm_vfp11_erratum_scan): Don't attempt to scan if the bfd doesn't correspond to an ELF image. (bfd_elf32_arm_vfp11_fix_veneer_locations): Likewise.
2007-05-09daily updateAlan Modra1-1/+1
2007-05-08* elf32-frv.c (elf32_frv_relocate_section): Discard dynamic relocsAlexandre Oliva2-47/+69
for which _bfd_elf_section_offset returns -1.
2007-05-08 * elf32-spu.c (spu_elf_size_stubs): Use "void *" for psyms.Alan Modra2-5/+11
(mark_functions_via_relocs): Likewise.
2007-05-08daily updateAlan Modra1-1/+1
2007-05-07 * elflink.c (bfd_elf_final_link): Correct reloc handling forAlan Modra2-5/+19
elf_backend_count_relocs. (bfd_elf_discard_info): Print an error if we can't read syms.
2007-05-07 * elf32-spu.c (spu_elf_reloc_type_lookup): Return NULL onAlan Modra2-52/+14
invalid reloc code. (spu_elf_gc_mark_hook, spu_elf_section_processing): Delete functions. (elf_backend_gc_mark_hook, elf_backend_section_processing): Don't define.
2007-05-07 * elf.c (assign_file_positions_for_load_sections): Don't checkAlan Modra2-3/+8
core segment.
2007-05-07daily updateAlan Modra1-1/+1
2007-05-06daily updateAlan Modra1-1/+1
2007-05-05daily updateAlan Modra1-1/+1
2007-05-042007-05-04 H.J. Lu <hongjiu.lu@intel.com>H.J. Lu2-4/+11
* elflink.c (elf_link_sort_relocs): Return if both .rela.dyn and .rel.dyn aren't present.
2007-05-04* elflink.c (elf_link_sort_relocs): If both .rela.dyn and .rel.dyn sectionsNick Clifton2-19/+159
are present examine the indirect sections in an attempt to compute the correct relocation size. If there is any ambiguity, produce an error and refuse to sort.
2007-05-04daily updateAlan Modra1-1/+1
2007-05-032007-05-03 Sandra Loosemore <sandra@codesourcery.com>Sandra Loosemore2-1/+5
bfd/ * elf32-arm.c (allocate_dynrelocs): Fix typo in comment.
2007-05-03PR gas/3041Nick Clifton2-1/+11
* gas/config/tc-m68k.c (relaxable_symbol): Do not relax weak symbols. (tc_gen_reloc): Adjust the addend of relocs against weak symbols. (md_apply_fix): Put zero values into the frags referencing weak symbols. * bfd/aoutx.h (swap_std_reloc_out): Treat relocs against weak symbols in the same way as relocs against external symbols.
2007-05-03daily updateAlan Modra1-1/+1
2007-05-02include/elf/Alan Modra2-9/+28
* internal.h (ELF_IS_SECTION_IN_SEGMENT): Check both file offset and vma for appropriate sections. bfd/ * elf.c (assign_file_positions_for_load_sections): Set sh_offset here. Set sh_type to SHT_NOBITS if we won't be allocating file space. Don't bump p_memsz for non-alloc sections. Adjust section-in-segment check. (assign_file_positions_for_non_load_sections): Don't set sh_offset here for sections that have already been handled above.
2007-05-02daily updateAlan Modra1-1/+1
2007-05-01daily updateAlan Modra1-1/+1
2007-04-30bfd/Alan Modra3-16/+1283
* elf32-spu.c (struct spu_link_hash_table): Add stack_analysis and emit_stack_syms bitfields. (get_sym_h): Read all symbols if stack analysis will be done. (spu_elf_create_sections): Add stack_analysis and emit_stack_syms params, and stash in hash table. (is_hint): Split off from.. (is_branch): ..here. Adjust callers. (spu_elf_size_stubs): Add stack_analysis param. Arrange to read and keep all syms. (write_one_stub): Fix mem leak. (find_function_stack_adjust): New function. (sort_syms_syms, sort_syms_psecs): New vars. (sort_syms): New function. (struct call_info, struct function_info): New. (struct spu_elf_stack_info): New. (alloc_stack_info, maybe_insert_function, func_name): New functions. (is_nop, insns_at_end, check_function_ranges): Likewise. (find_function, insert_callee, mark_functions_via_relocs): Likewise. (pasted_function, interesting_section, discover_functions): Likewise. (mark_non_root, call_graph_traverse, build_call_tree): Likewise. (sum_stack, spu_elf_stack_analysis, spu_elf_final_link): Likewise. (bfd_elf32_bfd_final_link): Define. * elf32-spu.h (struct _spu_elf_section_data): Add stack_info field. (spu_elf_create_sections, spu_elf_size_stubs): Update prototypes. include/ * bfdlink.h (struct bfd_link_info): Add "info" and "minfo". ld/ * ldmain.c (link_callbacks): Init info and minfo fields. * ldmisc.c (minfo): Do nothing if no map file. * emultempl/spuelf.em (stack_analysis, emit_stack_syms): New vars. (spu_after_open): Adjust spu_elf_create_sections call. (spu_before_allocation): Likewise for spu_elf_size_stubs. (OPTION_SPU_STACK_ANALYSIS, OPTION_SPU_STACK_SYMS): Define. (PARSE_AND_LIST_LONGOPTS): Add new entries. (PARSE_AND_LIST_OPTIONS, PARSE_AND_LIST_ARGS_CASES): Likewise. * gen-doc.texi: Add @set for SPU and other missing targets. * ld.texinfo: Update man page selection to match gen-doc.texi. Document SPU features.
2007-04-30daily updateAlan Modra1-1/+1
2007-04-29daily updateAlan Modra1-1/+1
2007-04-28 * elfxx-mips.c (mips_elf_create_dynamic_relocation): Don't accessThiemo Seufer2-4/+12
memory which we might not own.
2007-04-28daily updateAlan Modra1-1/+1
2007-04-27 * elf32-xtensa.c (elf_xtensa_make_sym_local): Restore deleted function.Bob Wilson2-20/+46
(elf_xtensa_hide_symbol, elf_backend_hide_symbol): Likewise. (elf_xtensa_allocate_dynrelocs): Use elf_xtensa_make_sym_local.
2007-04-27 * elf32-xtensa.c (xtensa_read_table_entries): Step through tableBob Wilson2-53/+54
contents and relocs in parallel.
2007-04-27 * elf32-xtensa.c (relax_property_section): Remove extra irel increment.Bob Wilson2-1/+4
2007-04-27Write Mimi's name in ASCII.Alan Modra4-17/+9
2007-04-27daily updateAlan Modra1-1/+1
2007-04-26bfd/Alan Modra2-3/+10
* sysdep.h: Include config.h first. Many files: Include sysdep.h before bfd.h. * Makefile.am: Run "make dep-am". * Makefile.in: Regenerate. binutils/ * bucumm.h: Split off host dependencies to.. * sysdep.h: ..here. Many files: Include sysdep.h. Remove duplicate headers and reorder. * Makefile.am: Run "make dep-am". * Makefile.in: Regenerate. ld/ Many files: Include sysdep.h first. Remove duplicate headers. * Makefile.am: Run "make dep-am". * Makefile.in: Regenerate. opcodes/ * Makefile.am: Run "make dep-am". * Makefile.in: Regenerate. * ns32k-dis.c: Include sysdep.h first.