This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
[PATCH 0/2] AVR: improve use of EF_AVR_LINKRELAX_PREPARED flag.
- From: Andrew Burgess <andrew dot burgess at embecosm dot com>
- To: binutils at sourceware dot org
- Cc: Andrew Burgess <andrew dot burgess at embecosm dot com>
- Date: Fri, 5 Dec 2014 22:20:41 +0000
- Subject: [PATCH 0/2] AVR: improve use of EF_AVR_LINKRELAX_PREPARED flag.
- Authentication-results: sourceware.org; auth=none
The AVR target has a flag EF_AVR_LINKRELAX_PREPARED that can be set in
the ELF header flags to indicate if a file is prepared for linker
relaxation or not.
The problem is that at th moment the flag is set unconditionally, in
every created elf.
In the first patch I propose making the flag conditional on whether
the assembler was passed the -mlink-relax flag or not.
In the second patch I update the linker to propagate the flag from the
input files to the output if a partial link is performed.
OK to apply?
Thanks,
Andrew
--
Andrew Burgess (2):
AVR: Only set link-relax elf flag when appropriate.
AVR/ld: Propagate link-relax elf header flag correctly.
bfd/ChangeLog | 5 +++
bfd/elf32-avr.c | 1 -
gas/ChangeLog | 10 ++++++
gas/config/tc-avr.c | 9 +++++-
gas/config/tc-avr.h | 3 ++
gas/testsuite/ChangeLog | 6 ++++
gas/testsuite/gas/avr/link-relax-elf-flag-clear.d | 10 ++++++
gas/testsuite/gas/avr/link-relax-elf-flag-set.d | 9 ++++++
gas/testsuite/gas/avr/link-relax-elf-flag.s | 4 +++
ld/ChangeLog | 6 ++++
ld/emultempl/avrelf.em | 37 +++++++++++++++++++++++
ld/testsuite/ChangeLog | 13 ++++++++
ld/testsuite/ld-avr/relax-elf-flags-01.d | 12 ++++++++
ld/testsuite/ld-avr/relax-elf-flags-02.d | 12 ++++++++
ld/testsuite/ld-avr/relax-elf-flags-03.d | 12 ++++++++
ld/testsuite/ld-avr/relax-elf-flags-04.d | 12 ++++++++
ld/testsuite/ld-avr/relax-elf-flags-05.d | 12 ++++++++
ld/testsuite/ld-avr/relax-elf-flags-06.d | 12 ++++++++
ld/testsuite/ld-avr/relax-elf-flags-07.d | 12 ++++++++
ld/testsuite/ld-avr/relax-elf-flags-08.d | 12 ++++++++
ld/testsuite/ld-avr/relax-elf-flags-a.s | 4 +++
ld/testsuite/ld-avr/relax-elf-flags-b.s | 4 +++
22 files changed, 215 insertions(+), 2 deletions(-)
create mode 100644 gas/testsuite/gas/avr/link-relax-elf-flag-clear.d
create mode 100644 gas/testsuite/gas/avr/link-relax-elf-flag-set.d
create mode 100644 gas/testsuite/gas/avr/link-relax-elf-flag.s
create mode 100644 ld/testsuite/ld-avr/relax-elf-flags-01.d
create mode 100644 ld/testsuite/ld-avr/relax-elf-flags-02.d
create mode 100644 ld/testsuite/ld-avr/relax-elf-flags-03.d
create mode 100644 ld/testsuite/ld-avr/relax-elf-flags-04.d
create mode 100644 ld/testsuite/ld-avr/relax-elf-flags-05.d
create mode 100644 ld/testsuite/ld-avr/relax-elf-flags-06.d
create mode 100644 ld/testsuite/ld-avr/relax-elf-flags-07.d
create mode 100644 ld/testsuite/ld-avr/relax-elf-flags-08.d
create mode 100644 ld/testsuite/ld-avr/relax-elf-flags-a.s
create mode 100644 ld/testsuite/ld-avr/relax-elf-flags-b.s
--
1.9.3