2009-01-15 13:03:05 +00:00
|
|
|
|
2009-01-15 Andrew Stubbs <ams@codesourcery.com>
|
|
|
|
|
|
|
|
|
|
* elf-attrs.c (bfd_elf_add_obj_attr_compat): Rename to
|
|
|
|
|
bfd_elf_add_obj_attr_int_string.
|
|
|
|
|
Read Tag_compatibility from its new location in the attribute array,
|
|
|
|
|
rather than the attribute list.
|
|
|
|
|
(_bfd_elf_copy_obj_attributes): bfd_elf_add_obj_attr_compat ->
|
|
|
|
|
bfd_elf_add_obj_attr_int_string.
|
|
|
|
|
(_bfd_elf_parse_attributes): Likewise.
|
|
|
|
|
(_bfd_elf_merge_object_attributes): There's now only one
|
|
|
|
|
Tag_compatibility, and it's in the array, not the list.
|
|
|
|
|
* elf-bfd.h (NUM_KNOWN_OBJ_ATTRIBUTES): Set to 33 to include
|
|
|
|
|
Tag_compatibility.
|
|
|
|
|
(bfd_elf_add_obj_attr_compat): Rename to
|
|
|
|
|
bfd_elf_add_obj_attr_int_string.
|
|
|
|
|
(bfd_elf_add_proc_attr_compat): Rename to
|
|
|
|
|
bfd_elf_add_proc_attr_int_string.
|
|
|
|
|
* elf32-arm.c (elf32_arm_merge_eabi_attributes): Explicitly don't handle
|
|
|
|
|
Tag_compatibility.
|
|
|
|
|
|
* include/elf/ia64.h (SHT_IA_64_VMS_DISPLAY_NAME_INFO,
EF_IA_64_ARCHVER_1): New macros. Minor reformatting.
* bfd/Makefile.am (BFD32_BACKENDS): Add new object vmsutil.lo
(BFD32_BACKENDS_CFILES): Add new file vmsutil.c
(vmsutil.lo): Add dependency rule
* bfd/Makefile.in: Regenerate
* bfd/config.bfd (ia64*-*-*vms*): Add case.
* bfd/configure.in (bfd_elf64_ia64_vms_vec): Add case.
* bfd/configure: Regenerate
* bfd/vmsutil.[ch]: New files
* bfd/elf-bfd.h (struct bfd_elf_special_section): Change type of
attr to bfd_vma.
* bfd/elfxx-ia64.c (elfNN_vms_post_process_headers,
elfNN_vms_section_processing, elfNN_vms_final_write_processing,
elfNN_vms_close_and_cleanup, elfNN_vms_section_from_shdr,
elfNN_vms_object_p): New functions
* bfd/targets.c (bfd_elf64_ia64_vms_vec): New target.
* gas/configure.tgt(ia64-*-*vms*): New target.
* gas/dwarf2dbg.h (dwarf2_loc_mark_labels): Make extern.
* gas/tc.h (md_number_to_chars): Declare iff undefined.
* gas/config/obj-elf.c (obj_elf_change_section): Change type of
arg attr to bfd_vma.
(obj_elf_parse_section_letters): Return a bfd_vma. Change type of
variables attr, md_attr to bfd_vma.
(obj_elf_section_word): Likewise.
(obj_elf_section): Change type of variable attr to bfd_vma
* gas/config/obj-elf.h (obj_elf_change_section): Change type of
arg attr to bfd_vma
* gas/config/tc-ia64.c (bfdver.h,time.h): Include.
(ia64_elf_section_letter): Now returns a bfd_vma.
Handle VMS specific attributes.
(ia64_elf_section_flags): Arg attr now a bfd_vma.
(ia64_init): Don't turn on dependency checking for VMS.
(ia64_target_format): Check for VMS flag bit.
(do_alias): Hande decc$ functions.
(get_vms_time): New function.
(ia64_vms_note): New function.
* gas/config/tc-ia64.h (ia64_elf_section_letter): Now returns a bfd_vma.
(ia64_elf_section_flags): Arg attr now a bfd_vma.
(tc_init_after_args): Define for VMS.
* gas/config/tc-alpha.c (alpha_elf_section_letter): Return a bfd_vma.
(alpha_elf_section_flags): Change type of arg attr to bfd_vma.
* gas/config/tc-alpha.h: Likewise.
* gas/config/tc-i386.c (x86_64_section_letter): Return a bfd_vma.
(x86_64_section_word): Return a bfd_vma.
* gas/config/tc-i386.h: Likewise.
* gas/config/tc-ip2k.c (ip2k_elf_section_flags): Change type of arg
attr to bfd_vma.
* gas/config/tc-ip2k.h: Likewise.
* gas/config/tc-mep.c (mep_elf_section_letter): Return a bfd_vma.
(mep_elf_section_flags): Change type of arg attr to bfd_vma.
* gas/config/tc-mep.h: Likewise.
* gas/config/tc-ppc.c (ppc_section_letter): Return a bfd_vma.
(ppc_section_word): Return a bfd_vma.
(ppc_section_flags): Change type of arg attr to bfd_vma.
* gas/config/tc-ppc.h: Likewise.
* gas/config/te-vms.h (DWARF2_DIR_SHOULD_END_WITH_SEPARATOR,
DWAR2_FILE_TIME_NAME, DWARF2_FILE_SIZE_NAME, DWARF2_FILEN_NAME):
New file with new macros
* gas/dwarf2dbg.c (get_filenum, out_file_list): Default and call new
macros.
2009-01-15 12:42:52 +00:00
|
|
|
|
2009-01-15 Douglas B Rupp <rupp@gnat.com>
|
|
|
|
|
|
|
|
|
|
* Makefile.am (BFD32_BACKENDS): Add new object vmsutil.lo
|
|
|
|
|
(BFD32_BACKENDS_CFILES): Add new file vmsutil.c
|
|
|
|
|
(vmsutil.lo): Add dependency rule.
|
|
|
|
|
* Makefile.in: Regenerate.
|
|
|
|
|
* config.bfd (ia64*-*-*vms*): Add case.
|
|
|
|
|
* configure.in (bfd_elf64_ia64_vms_vec): Add case.
|
|
|
|
|
* configure: Regenerate.
|
|
|
|
|
* vmsutil.c: New file.
|
|
|
|
|
* vmsutil.h: New file.
|
|
|
|
|
* elf-bfd.h (struct bfd_elf_special_section): Change type of
|
|
|
|
|
attr to bfd_vma.
|
|
|
|
|
* elfxx-ia64.c (elfNN_vms_post_process_headers,
|
|
|
|
|
elfNN_vms_section_processing, elfNN_vms_final_write_processing,
|
|
|
|
|
elfNN_vms_close_and_cleanup, elfNN_vms_section_from_shdr,
|
|
|
|
|
elfNN_vms_object_p): New functions
|
|
|
|
|
* targets.c (bfd_elf64_ia64_vms_vec): New target.
|
|
|
|
|
|
2009-01-14 21:52:49 +00:00
|
|
|
|
2009-01-14 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
PR ld/9727
|
|
|
|
|
* elflink.c (elf_gc_sweep): Exclude the group section if the
|
|
|
|
|
first member of the section group is excluded.
|
|
|
|
|
|
2009-01-13 23:44:45 +00:00
|
|
|
|
2009-01-14 Alan Modra <amodra@bigpond.net.au>
|
|
|
|
|
|
|
|
|
|
PR 9735
|
|
|
|
|
* syms.c (_bfd_stab_section_find_nearest_line): Don't free
|
|
|
|
|
saved filename, use bfd_alloc rather than bfd_malloc for it.
|
|
|
|
|
|
2009-01-12 14:13:03 +00:00
|
|
|
|
2009-01-13 Alan Modra <amodra@bigpond.net.au>
|
|
|
|
|
|
|
|
|
|
* elf32-spu.c (spu_elf_build_stubs): Make __icache_base absolute.
|
|
|
|
|
|
2009-01-12 13:56:03 +00:00
|
|
|
|
2009-01-13 Alan Modra <amodra@bigpond.net.au>
|
|
|
|
|
|
|
|
|
|
* elf32-spu.c (remove_cycles): Always set call->max_depth.
|
|
|
|
|
|
2009-01-12 04:09:43 +00:00
|
|
|
|
2009-01-12 Alan Modra <amodra@bigpond.net.au>
|
|
|
|
|
|
|
|
|
|
* elf32-spu.c (spu_elf_auto_overlay): Correct vma mask.
|
|
|
|
|
|
bfd/
* elf32-spu.c (struct spu_link_hash_table): Add init, line_size_log2,
num_lines_log2.
(struct got_entry): Add br_addr.
(struct call_info): Add priority.
(struct function_info): Add lr_store and sp_adjust.
(spu_elf_setup): Init line_size_log2 and num_lines_log2.
(spu_elf_find_overlays): For soft-icache, mark any section within cache
area as an overlay, and check that no other overlays exist. Look up
icache overlay manager entry sym.
(BRA_STUBS, BRA, BRASL): Define.
(enum _stub_type): Replace ovl_stub with call_ovl_stub and br*_ovl_stub.
(needs_ovl_stub): Adjust for soft-icache. Return priority encoded
in branch insn.
(count_stub, build_stub): Support soft-icache.
(build_spuear_stubs, process_stubs): Adjust build_stub call.
(spu_elf_size_stubs): Size soft-icache stubs.
(overlay_index): New function.
(spu_elf_build_stubs): Make static. Support soft-icache.
(spu_elf_check_vma): Don't turn off auto_overlay if soft-icache.
(find_function_stack_adjust): Save lr store and stack adjust insn
offsets.
(maybe_insert_function): Adjust find_function_stack_adjust call.
(mark_functions_via_relocs): Retrieve priority.
(remove_cycles): Only warn about pruned arcs when stack_analysis.
(sort_calls): Sort by priority first.
(mark_overlay_section): Ignore .ovl.init.
(sum_stack): Only print when stack_analysis.
(print_one_overlay_section): New function, extracted from..
(spu_elf_auto_overlay): ..here. Support soft-icache overlays.
(spu_elf_stack_analysis): Only print when htab->stack_analysis.
(spu_elf_final_link): Call spu_elf_stack_analysis for lrlive
analysis. Call spu_elf_build_stubs.
(spu_elf_relocate_section): For soft-icache encode overlay index
into addresses.
(spu_elf_output_symbol_hook): Support soft-icache.
(spu_elf_modify_program_headers: Likewise.
* elf32-spu.h (struct spu_elf_params): Add lrlive_analysis. Rename
num_regions to num_lines. Add line_size and max_branch.
(enum _ovly_flavour): Add ovly_soft_icache.
(spu_elf_build_stubs): Delete.
gas/
* config/tc-spu.c (md_pseudo_table): Add "brinfo".
(brinfo): New var.
(md_assemble): Poke brinfo into branch instructions.
(spu_brinfo): New function.
(md_apply_fix): Don't assume insn fields start off at zero, mask
them to remove possible brinfo.
ld/
* emultempl/spuelf.em (params): Init new fields.
(num_lines_set, line_size_set, icache_mgr, icache_mgr_stream): New vars.
(spu_place_special_section): Adjust placement for soft-icache. Pad
soft-icache section to a fixed size. Clear addr_tree.
(spu_elf_load_ovl_mgr): Support soft-icache. Map overlay manager
sections a little more intelligently.
(gld${EMULATION_NAME}_finish): Don't call spu_elf_build_stubs.
(OPTION_SPU_NUM_LINES): Rename from OPTION_SPU_NUM_REGIONS.
(OPTION_SPU_SOFT_ICACHE, OPTION_SPU_LINE_SIZE): Define.
(OPTION_SPU_LRLIVE): Define.
(PARSE_AND_LIST_LONGOPTS): Add new soft-icache options.
(PARSE_AND_LIST_OPTIONS): Likewise.
(PARSE_AND_LIST_ARGS_CASES): Handle them.
* emultempl/spu_icache.S: Dummy file.
* emultempl/spu_icache.o_c: Regenerate.
* Makefile.am (eelf32_spu.c): Depend on spu_icache.o_c.
(spu_icache.o_c): Add rule to build.
(CLEANFILES): Zap temp files.
(EXTRA_DIST): Add spu_icache.o_c.
* Makefile.in: Regenerate.
ld/testsuite/
* ld-spu/ovl.d: Allow for absolute branches in stubs.
* ld-spu/ovl2.d: Likewise.
2009-01-12 00:23:58 +00:00
|
|
|
|
2009-01-12 Alan Modra <amodra@bigpond.net.au>
|
|
|
|
|
|
|
|
|
|
* elf32-spu.c (struct spu_link_hash_table): Add init, line_size_log2,
|
|
|
|
|
num_lines_log2.
|
|
|
|
|
(struct got_entry): Add br_addr.
|
|
|
|
|
(struct call_info): Add priority.
|
|
|
|
|
(struct function_info): Add lr_store and sp_adjust.
|
|
|
|
|
(spu_elf_setup): Init line_size_log2 and num_lines_log2.
|
|
|
|
|
(spu_elf_find_overlays): For soft-icache, mark any section within cache
|
|
|
|
|
area as an overlay, and check that no other overlays exist. Look up
|
|
|
|
|
icache overlay manager entry sym.
|
|
|
|
|
(BRA_STUBS, BRA, BRASL): Define.
|
|
|
|
|
(enum _stub_type): Replace ovl_stub with call_ovl_stub and br*_ovl_stub.
|
|
|
|
|
(needs_ovl_stub): Adjust for soft-icache. Return priority encoded
|
|
|
|
|
in branch insn.
|
|
|
|
|
(count_stub, build_stub): Support soft-icache.
|
|
|
|
|
(build_spuear_stubs, process_stubs): Adjust build_stub call.
|
|
|
|
|
(spu_elf_size_stubs): Size soft-icache stubs.
|
|
|
|
|
(overlay_index): New function.
|
|
|
|
|
(spu_elf_build_stubs): Make static. Support soft-icache.
|
|
|
|
|
(spu_elf_check_vma): Don't turn off auto_overlay if soft-icache.
|
|
|
|
|
(find_function_stack_adjust): Save lr store and stack adjust insn
|
|
|
|
|
offsets.
|
|
|
|
|
(maybe_insert_function): Adjust find_function_stack_adjust call.
|
|
|
|
|
(mark_functions_via_relocs): Retrieve priority.
|
|
|
|
|
(remove_cycles): Only warn about pruned arcs when stack_analysis.
|
|
|
|
|
(sort_calls): Sort by priority first.
|
|
|
|
|
(mark_overlay_section): Ignore .ovl.init.
|
|
|
|
|
(sum_stack): Only print when stack_analysis.
|
|
|
|
|
(print_one_overlay_section): New function, extracted from..
|
|
|
|
|
(spu_elf_auto_overlay): ..here. Support soft-icache overlays.
|
|
|
|
|
(spu_elf_stack_analysis): Only print when htab->stack_analysis.
|
|
|
|
|
(spu_elf_final_link): Call spu_elf_stack_analysis for lrlive
|
|
|
|
|
analysis. Call spu_elf_build_stubs.
|
|
|
|
|
(spu_elf_relocate_section): For soft-icache encode overlay index
|
|
|
|
|
into addresses.
|
|
|
|
|
(spu_elf_output_symbol_hook): Support soft-icache.
|
|
|
|
|
(spu_elf_modify_program_headers: Likewise.
|
2009-01-12 04:09:43 +00:00
|
|
|
|
|
bfd/
* elf32-spu.c (struct spu_link_hash_table): Add init, line_size_log2,
num_lines_log2.
(struct got_entry): Add br_addr.
(struct call_info): Add priority.
(struct function_info): Add lr_store and sp_adjust.
(spu_elf_setup): Init line_size_log2 and num_lines_log2.
(spu_elf_find_overlays): For soft-icache, mark any section within cache
area as an overlay, and check that no other overlays exist. Look up
icache overlay manager entry sym.
(BRA_STUBS, BRA, BRASL): Define.
(enum _stub_type): Replace ovl_stub with call_ovl_stub and br*_ovl_stub.
(needs_ovl_stub): Adjust for soft-icache. Return priority encoded
in branch insn.
(count_stub, build_stub): Support soft-icache.
(build_spuear_stubs, process_stubs): Adjust build_stub call.
(spu_elf_size_stubs): Size soft-icache stubs.
(overlay_index): New function.
(spu_elf_build_stubs): Make static. Support soft-icache.
(spu_elf_check_vma): Don't turn off auto_overlay if soft-icache.
(find_function_stack_adjust): Save lr store and stack adjust insn
offsets.
(maybe_insert_function): Adjust find_function_stack_adjust call.
(mark_functions_via_relocs): Retrieve priority.
(remove_cycles): Only warn about pruned arcs when stack_analysis.
(sort_calls): Sort by priority first.
(mark_overlay_section): Ignore .ovl.init.
(sum_stack): Only print when stack_analysis.
(print_one_overlay_section): New function, extracted from..
(spu_elf_auto_overlay): ..here. Support soft-icache overlays.
(spu_elf_stack_analysis): Only print when htab->stack_analysis.
(spu_elf_final_link): Call spu_elf_stack_analysis for lrlive
analysis. Call spu_elf_build_stubs.
(spu_elf_relocate_section): For soft-icache encode overlay index
into addresses.
(spu_elf_output_symbol_hook): Support soft-icache.
(spu_elf_modify_program_headers: Likewise.
* elf32-spu.h (struct spu_elf_params): Add lrlive_analysis. Rename
num_regions to num_lines. Add line_size and max_branch.
(enum _ovly_flavour): Add ovly_soft_icache.
(spu_elf_build_stubs): Delete.
gas/
* config/tc-spu.c (md_pseudo_table): Add "brinfo".
(brinfo): New var.
(md_assemble): Poke brinfo into branch instructions.
(spu_brinfo): New function.
(md_apply_fix): Don't assume insn fields start off at zero, mask
them to remove possible brinfo.
ld/
* emultempl/spuelf.em (params): Init new fields.
(num_lines_set, line_size_set, icache_mgr, icache_mgr_stream): New vars.
(spu_place_special_section): Adjust placement for soft-icache. Pad
soft-icache section to a fixed size. Clear addr_tree.
(spu_elf_load_ovl_mgr): Support soft-icache. Map overlay manager
sections a little more intelligently.
(gld${EMULATION_NAME}_finish): Don't call spu_elf_build_stubs.
(OPTION_SPU_NUM_LINES): Rename from OPTION_SPU_NUM_REGIONS.
(OPTION_SPU_SOFT_ICACHE, OPTION_SPU_LINE_SIZE): Define.
(OPTION_SPU_LRLIVE): Define.
(PARSE_AND_LIST_LONGOPTS): Add new soft-icache options.
(PARSE_AND_LIST_OPTIONS): Likewise.
(PARSE_AND_LIST_ARGS_CASES): Handle them.
* emultempl/spu_icache.S: Dummy file.
* emultempl/spu_icache.o_c: Regenerate.
* Makefile.am (eelf32_spu.c): Depend on spu_icache.o_c.
(spu_icache.o_c): Add rule to build.
(CLEANFILES): Zap temp files.
(EXTRA_DIST): Add spu_icache.o_c.
* Makefile.in: Regenerate.
ld/testsuite/
* ld-spu/ovl.d: Allow for absolute branches in stubs.
* ld-spu/ovl2.d: Likewise.
2009-01-12 00:23:58 +00:00
|
|
|
|
* elf32-spu.h (struct spu_elf_params): Add lrlive_analysis. Rename
|
|
|
|
|
num_regions to num_lines. Add line_size and max_branch.
|
|
|
|
|
(enum _ovly_flavour): Add ovly_soft_icache.
|
|
|
|
|
(spu_elf_build_stubs): Delete.
|
|
|
|
|
|
2009-01-11 21:09:49 +00:00
|
|
|
|
2009-01-11 Jan Kratochvil <jan.kratochvil@redhat.com>
|
|
|
|
|
|
|
|
|
|
* elflink.c (_bfd_elf_section_already_linked): Handle g++-3.4
|
|
|
|
|
relocations in `.gnu.linkonce.r.*' referencing its `.gnu.linkonce.t.*'.
|
|
|
|
|
|
2009-01-07 03:28:45 +00:00
|
|
|
|
2009-01-07 Hans-Peter Nilsson <hp@axis.com>
|
|
|
|
|
|
|
|
|
|
* elf32-cris.c (cris_elf_relocate_section) <case R_CRIS_32_GD>
|
|
|
|
|
<case R_CRIS_16_GOT_GD, R_CRIS_32_GOT_GD>: For a symbol defined in
|
|
|
|
|
the program, the known offset starts at the negative size of the
|
|
|
|
|
TLS section.
|
|
|
|
|
<case R_CRIS_32_IE, R_CRIS_32_GOT_TPREL, R_CRIS_16_GOT_TPREL>:
|
|
|
|
|
Similar.
|
|
|
|
|
|
2009-01-06 14:40:32 +00:00
|
|
|
|
2009-01-05 Joel Sherrill <joel.sherrill@oarcorp.com>
|
2009-01-06 17:58:19 +00:00
|
|
|
|
|
2009-01-06 14:40:32 +00:00
|
|
|
|
* config.bfd: Add lm32-*-rtems*.
|
2009-01-06 17:58:19 +00:00
|
|
|
|
|
2009-01-03 16:19:52 +00:00
|
|
|
|
2009-01-03 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* coff-ppc.c: Add 2009 to Copyright.
|
|
|
|
|
* elf32-cris.c: Likewise.
|
|
|
|
|
* elflink.c: Likewise.
|
|
|
|
|
|
2009-01-03 04:53:13 +00:00
|
|
|
|
2009-01-03 Hans-Peter Nilsson <hp@axis.com>
|
|
|
|
|
|
|
|
|
|
* elf32-cris.c (elf_cris_finish_dynamic_symbol): Rename
|
|
|
|
|
gotplt_index to rela_plt_index. Adjust for R_CRIS_DTPMOD entry.
|
|
|
|
|
|
2009-01-02 19:29:38 +00:00
|
|
|
|
2009-01-02 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
PR ld/9679
|
|
|
|
|
* elflink.c (elf_merge_st_other): New.
|
|
|
|
|
(_bfd_elf_merge_symbol): Use it on skipped weak definitions and
|
|
|
|
|
hide them if needed.
|
|
|
|
|
(elf_link_add_object_symbols): Updated.
|
|
|
|
|
|
2009-01-02 16:48:11 +00:00
|
|
|
|
2009-01-02 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
PR ld/9676
|
|
|
|
|
* elflink.c (elf_link_add_object_symbols): Update def_dynamic,
|
|
|
|
|
ref_dynamic and dynamic_def fields when setting def_regular
|
|
|
|
|
to 1.
|
|
|
|
|
|
2009-01-02 16:11:37 +00:00
|
|
|
|
2009-01-02 Curtis Mackie <curtmackevo@gmail.com>
|
|
|
|
|
|
|
|
|
|
PR 9682
|
|
|
|
|
* coff-ppc.c (dump_toc): Fix up calls to fprintf without a string
|
|
|
|
|
literal.
|
|
|
|
|
|
2009-01-02 16:48:11 +00:00
|
|
|
|
For older changes see ChangeLog-2008
|
2001-09-08 05:47:01 +00:00
|
|
|
|
|
|
|
|
|
Local Variables:
|
|
|
|
|
mode: change-log
|
|
|
|
|
left-margin: 8
|
|
|
|
|
fill-column: 74
|
|
|
|
|
version-control: never
|
|
|
|
|
End:
|