This is the mail archive of the
binutils-cvs@sourceware.org
mailing list for the binutils project.
src bfd/ChangeLog bfd/elf32-arm.c ld/testsuite ...
- From: clyon at sourceware dot org
- To: binutils-cvs at sourceware dot org
- Date: 2 Mar 2010 08:19:54 -0000
- Subject: src bfd/ChangeLog bfd/elf32-arm.c ld/testsuite ...
CVSROOT: /cvs/src
Module name: src
Changes by: clyon@sourceware.org 2010-03-02 08:19:54
Modified files:
bfd : ChangeLog elf32-arm.c
ld/testsuite : ChangeLog
ld/testsuite/ld-arm: arm-call.d arm-elf.exp cortex-a8-far.d
farcall-group-size2.d farcall-group.d
farcall-mix.d farcall-mix2.d
farcall-mixed-app-v5.d farcall-mixed-app.d
farcall-mixed-lib.d farcall-mixed-lib1.s
farcall-mixed-lib2.s
farcall-thumb-arm-blx-pic-veneer.d
farcall-thumb-arm-blx.d
farcall-thumb-arm-pic-veneer.d
farcall-thumb-arm.d farcall-thumb-arm.s
Added files:
ld/testsuite/ld-arm: farcall-mixed-lib-v4t.d
Log message:
2010-03-02 Christophe Lyon <christophe.lyon@st.com>
Alan Modra <amodra@gmail.com>
bfd/
* elf32-arm.c (a8_erratum_fix): Add st_type field to record the
destination mode of the a8 stub.
(elf32_arm_link_hash_table): Add top_id field.
(elf32_arm_link_hash_table_create): Initialize top_id.
(arm_type_of_stub): Update prototype, st_type can now be updated
by this function. Actual destination address in case of PLT is
computed here, to help factorizing code.
(elf32_arm_stub_name): Update prototype, use stub_type additional
parameter to build stub name.
(elf32_arm_get_stub_entry): Update prototype, use stub_type
additional parameter to build stub entry.
(arm_build_one_stub): Use bfd_put_16/bfd_put_32 instead of
put_thumb_insn/put_arm_insn as BE8 encoding is now handled later.
Call elf32_arm_final_link_relocate to process all in-stub
relocations.
(elf32_arm_setup_section_lists): Update top_id.
(cortex_a8_erratum_scan): Record stub destination mode.
(elf32_arm_size_stubs): Update call to arm_type_of_stub according
to new prototype.
(elf32_arm_final_link_relocate): Enable processing of in-stub
REL32 relocations. Rely on arm_type_of_stub to detect if a stub is
needed, enabling code factorization.
(elf32_arm_final_link): Process stub sections.
(elf32_arm_output_map_sym): Add entry to code/data map.
ld/testsuite/
* ld-arm/arm-elf.exp: Change .text start address for
farcall-thumb-arm tests. Add v4t variant for farcall-mixed-lib
test.
* ld-arm/farcall-mixed-lib-v4t.d: New test.
* ld-arm/farcall-mixed-lib1.s: Don't force armv5t.
* ld-arm/farcall-mixed-lib2.s: Likewise.
* ld-arm/arm-call.d: Update expected results.
* ld-arm/cortex-a8-far.d: Likewise.
* ld-arm/farcall-group-size2.d: Likewise.
* ld-arm/farcall-group.d: Likewise.
* ld-arm/farcall-mix.d: Likewise.
* ld-arm/farcall-mix2.d: Likewise.
* ld-arm/farcall-mixed-app-v5.d: Likewise.
* ld-arm/farcall-mixed-app.d: Likewise.
* ld-arm/farcall-mixed-lib.d: Likewise.
* ld-arm/farcall-thumb-arm.d: Likewise.
* ld-arm/farcall-thumb-arm-blx.d: Likewise.
* ld-arm/farcall-thumb-arm-pic-veneer.d: Likewise.
* ld-arm/farcall-thumb-arm-blx-pic-veneer.d: Likewise.
* ld-arm/farcall-thumb-arm.s: Update test. Add a new call to
potentially generate different types of stubs.
Patches:
http://sources.redhat.com/cgi-bin/cvsweb.cgi/src/bfd/ChangeLog.diff?cvsroot=src&r1=1.4944&r2=1.4945
http://sources.redhat.com/cgi-bin/cvsweb.cgi/src/bfd/elf32-arm.c.diff?cvsroot=src&r1=1.223&r2=1.224
http://sources.redhat.com/cgi-bin/cvsweb.cgi/src/ld/testsuite/ChangeLog.diff?cvsroot=src&r1=1.1228&r2=1.1229
http://sources.redhat.com/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-arm/farcall-mixed-lib-v4t.d.diff?cvsroot=src&r1=NONE&r2=1.1
http://sources.redhat.com/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-arm/arm-call.d.diff?cvsroot=src&r1=1.5&r2=1.6
http://sources.redhat.com/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-arm/arm-elf.exp.diff?cvsroot=src&r1=1.72&r2=1.73
http://sources.redhat.com/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-arm/cortex-a8-far.d.diff?cvsroot=src&r1=1.1&r2=1.2
http://sources.redhat.com/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-arm/farcall-group-size2.d.diff?cvsroot=src&r1=1.4&r2=1.5
http://sources.redhat.com/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-arm/farcall-group.d.diff?cvsroot=src&r1=1.4&r2=1.5
http://sources.redhat.com/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-arm/farcall-mix.d.diff?cvsroot=src&r1=1.4&r2=1.5
http://sources.redhat.com/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-arm/farcall-mix2.d.diff?cvsroot=src&r1=1.4&r2=1.5
http://sources.redhat.com/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-arm/farcall-mixed-app-v5.d.diff?cvsroot=src&r1=1.5&r2=1.6
http://sources.redhat.com/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-arm/farcall-mixed-app.d.diff?cvsroot=src&r1=1.5&r2=1.6
http://sources.redhat.com/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-arm/farcall-mixed-lib.d.diff?cvsroot=src&r1=1.8&r2=1.9
http://sources.redhat.com/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-arm/farcall-mixed-lib1.s.diff?cvsroot=src&r1=1.2&r2=1.3
http://sources.redhat.com/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-arm/farcall-mixed-lib2.s.diff?cvsroot=src&r1=1.1&r2=1.2
http://sources.redhat.com/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-arm/farcall-thumb-arm-blx-pic-veneer.d.diff?cvsroot=src&r1=1.5&r2=1.6
http://sources.redhat.com/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-arm/farcall-thumb-arm-blx.d.diff?cvsroot=src&r1=1.4&r2=1.5
http://sources.redhat.com/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-arm/farcall-thumb-arm-pic-veneer.d.diff?cvsroot=src&r1=1.4&r2=1.5
http://sources.redhat.com/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-arm/farcall-thumb-arm.d.diff?cvsroot=src&r1=1.7&r2=1.8
http://sources.redhat.com/cgi-bin/cvsweb.cgi/src/ld/testsuite/ld-arm/farcall-thumb-arm.s.diff?cvsroot=src&r1=1.2&r2=1.3