2009-01-12 13:57:59 +00:00
|
|
|
|
2009-01-13 Alan Modra <amodra@bigpond.net.au>
|
|
|
|
|
|
|
|
|
|
* ld-elf/elf.exp: Save and restore LDFLAGS.
|
|
|
|
|
* ld-scripts/default-script.exp: Likewise.
|
|
|
|
|
* ld-scripts/empty-orphan.exp: Likewise, and add to LDFLAGS rather
|
|
|
|
|
than replacing.
|
|
|
|
|
* ld-scripts/include.exp: Set --local-store for SPU.
|
|
|
|
|
|
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>
|
|
|
|
|
|
|
|
|
|
* ld-spu/ovl.d: Allow for absolute branches in stubs.
|
|
|
|
|
* ld-spu/ovl2.d: Likewise.
|
|
|
|
|
|
2009-01-11 21:09:49 +00:00
|
|
|
|
2009-01-11 Jan Kratochvil <jan.kratochvil@redhat.com>
|
|
|
|
|
|
|
|
|
|
* ld-elf/linkoncerdiff.d, ld-elf/linkoncerdiff1.s,
|
|
|
|
|
ld-elf/linkoncerdiff2.s: New.
|
|
|
|
|
|
* ld-cris/tls-e-20.d, ld-cris/tls-e-20a.d, ld-cris/tls-e-21.d,
ld-cris/tls-e-23.d, ld-cris/tls-e-66.d, ld-cris/tls-gd-3.d,
ld-cris/tls-gd-3h.d, ld-cris/tls-global-74.d,
ld-cris/tls-ie-8e1.d, ld-cris/tls-ldgde-14.d,
ld-cris/tls-ldgde-15.d, ld-cris/tls-le-12.d, ld-cris/tls-le-13.d,
ld-cris/tls-le-13s.d, ld-cris/tls-legd-16.d,
ld-cris/tls-legd-17.d, ld-cris/tls-legdx-16.d,
ld-cris/tls-legdx-17.d, ld-cris/tls-leie-18.d,
ld-cris/tls-leie-19.d, ld-cris/tls-local-57.d,
ld-cris/tls-local-58.d, ld-cris/tls-local-59.d: Adjust for
relocation value now offset by negative program TLS block size.
* ld-cris/tls-le-12s.d: Ditto. Move 128-byte tls-data to last.
Adjust accordingly.
* ld-cris/tls-le-12s.s: Use movs, not movu, for sign-extended
always-negative relocation.
* ld-cris/tls-tprelm.s: Move filler data to after symbol for
tested relocation.
* ld-cris/tls-ok-36.d: Adjust accordingly.
2009-01-07 03:27:11 +00:00
|
|
|
|
2009-01-07 Hans-Peter Nilsson <hp@axis.com>
|
|
|
|
|
|
|
|
|
|
* ld-cris/tls-e-20.d, ld-cris/tls-e-20a.d, ld-cris/tls-e-21.d,
|
|
|
|
|
ld-cris/tls-e-23.d, ld-cris/tls-e-66.d, ld-cris/tls-gd-3.d,
|
|
|
|
|
ld-cris/tls-gd-3h.d, ld-cris/tls-global-74.d,
|
|
|
|
|
ld-cris/tls-ie-8e1.d, ld-cris/tls-ldgde-14.d,
|
|
|
|
|
ld-cris/tls-ldgde-15.d, ld-cris/tls-le-12.d, ld-cris/tls-le-13.d,
|
|
|
|
|
ld-cris/tls-le-13s.d, ld-cris/tls-legd-16.d,
|
|
|
|
|
ld-cris/tls-legd-17.d, ld-cris/tls-legdx-16.d,
|
|
|
|
|
ld-cris/tls-legdx-17.d, ld-cris/tls-leie-18.d,
|
|
|
|
|
ld-cris/tls-leie-19.d, ld-cris/tls-local-57.d,
|
|
|
|
|
ld-cris/tls-local-58.d, ld-cris/tls-local-59.d: Adjust for
|
|
|
|
|
relocation value now offset by negative program TLS block size.
|
|
|
|
|
* ld-cris/tls-le-12s.d: Ditto. Move 128-byte tls-data to last.
|
|
|
|
|
Adjust accordingly.
|
|
|
|
|
* ld-cris/tls-le-12s.s: Use movs, not movu, for sign-extended
|
|
|
|
|
always-negative relocation.
|
|
|
|
|
* ld-cris/tls-tprelm.s: Move filler data to after symbol for
|
|
|
|
|
tested relocation.
|
|
|
|
|
* ld-cris/tls-ok-36.d: Adjust accordingly.
|
|
|
|
|
|
2009-01-03 04:53:47 +00:00
|
|
|
|
2009-01-03 Hans-Peter Nilsson <hp@axis.com>
|
|
|
|
|
|
|
|
|
|
* ld-cris/tls-js1.d: New test.
|
|
|
|
|
|
2009-01-02 19:29:38 +00:00
|
|
|
|
2009-01-02 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
PR ld/9679
|
|
|
|
|
* ld-elf/pr9679-1.c: New.
|
|
|
|
|
* ld-elf/pr9679-2.c: Likewise.
|
|
|
|
|
* ld-elf/pr9679.rd: Likewise.
|
|
|
|
|
|
|
|
|
|
* ld-elf/shared.exp (build_tests): Add test for libpr9679.so.
|
|
|
|
|
|
2009-01-02 16:48:11 +00:00
|
|
|
|
2009-01-02 H.J. Lu <hongjiu.lu@intel.com>
|
2008-12-23 19:10:25 +00:00
|
|
|
|
|
2009-01-02 16:48:11 +00:00
|
|
|
|
PR ld/9676
|
|
|
|
|
* ld-elf/pr9676-1.c: New.
|
|
|
|
|
* ld-elf/pr9676-2.c: Likewiswe.
|
|
|
|
|
* ld-elf/pr9676-3.c: Likewiswe.
|
|
|
|
|
* ld-elf/pr9676-4.c: Likewiswe.
|
|
|
|
|
* ld-elf/pr9676.rd: Likewiswe.
|
2008-12-23 11:45:25 +00:00
|
|
|
|
|
2009-01-02 16:48:11 +00:00
|
|
|
|
* ld-elf/shared.exp (build_tests): Add tests for libpr9676-1.a,
|
|
|
|
|
libpr9676-2.a, libpr9676-3.so, libpr9676-4.so and
|
|
|
|
|
libpr9676-4a.so.
|
2008-12-23 11:45:25 +00:00
|
|
|
|
|
2009-01-02 16:48:11 +00:00
|
|
|
|
* lib/ld-lib.exp (ar_simple_create): New.
|
|
|
|
|
(run_ld_link_tests): Support archive.
|
|
|
|
|
(run_cc_link_tests): Likewiswe.
|
2008-12-23 09:01:51 +00:00
|
|
|
|
|
2009-01-02 16:48:11 +00:00
|
|
|
|
For older changes see ChangeLog-2008
|
2004-01-02 11:16:21 +00:00
|
|
|
|
|
|
|
|
|
Local Variables:
|
|
|
|
|
mode: change-log
|
|
|
|
|
left-margin: 8
|
|
|
|
|
fill-column: 74
|
|
|
|
|
version-control: never
|
|
|
|
|
End:
|