diff options
author | Nick Clifton <nickc@redhat.com> | 2015-04-14 16:23:33 +0100 |
---|---|---|
committer | Nick Clifton <nickc@redhat.com> | 2015-04-14 16:23:33 +0100 |
commit | 6ff71e768112317de1236a429e7c88c9d3e32116 (patch) | |
tree | 3d24e09232efe594ec6a32482a95b2f161250e4e /gas/testsuite | |
parent | 9e811bc379ef78f0e2beadda9ed3ce6679ded7ea (diff) | |
download | fsf-binutils-gdb-6ff71e768112317de1236a429e7c88c9d3e32116.zip fsf-binutils-gdb-6ff71e768112317de1236a429e7c88c9d3e32116.tar.gz fsf-binutils-gdb-6ff71e768112317de1236a429e7c88c9d3e32116.tar.bz2 |
Adds support to the RL78 port for linker relaxation affecting .debug sections.
gas * config/tc-rl78.h (TC_LINKRELAX_FIXUP): Define.
(TC_FORCE_RELOCATION_SUB_SAME): Define.
(DWARF2_USE_FIXED_ADVANCE_PC): Define.
* gas/lns/lns.exp: Add RL78 to list of targets using
DW_LNS_fixed_advance_pc.
bfd * elf32-rl78.c (RL78_OP_REL): New macro.
(rl78_elf_howto_table): Use it for complex relocs.
(get_symbol_value): Handle the cases when the info or status
arguments are NULL.
(get_romstart): Cache the status returned by get_symbol_value.
(get_ramstart): Likewise.
(RL78_STACK_PUSH): Generate an error message if the stack
overflows.
(RL78_STACK_POP): Likewise for underflows.
(rl78_compute_complex_reloc): New function. Contains the basic
processing code for all RL78 complex relocs.
(rl78_special_reloc): New function. Provides special reloc
handling for complex relocs.
(rl78_elf_relocate_section): Use rl78_compute_complex_reloc.
(rl78_offset_for_reloc): Likewise.
binutils* readelf.c (target_specific_reloc_handling): Add code to handle
RL78 complex relocs.
Diffstat (limited to 'gas/testsuite')
-rw-r--r-- | gas/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gas/testsuite/gas/lns/lns.exp | 7 |
2 files changed, 9 insertions, 3 deletions
diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog index fc2b934..6076b89 100644 --- a/gas/testsuite/ChangeLog +++ b/gas/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2015-04-14 Nick Clifton <nickc@redhat.com> + + * gas/lns/lns.exp: Add RL78 to list of targets using + DW_LNS_fixed_advance_pc. + 2015-04-08 H.J. Lu <hongjiu.lu@intel.com> * gas/i386/dw2-compressed-1.d: New file. diff --git a/gas/testsuite/gas/lns/lns.exp b/gas/testsuite/gas/lns/lns.exp index b72c536..96aaffd 100644 --- a/gas/testsuite/gas/lns/lns.exp +++ b/gas/testsuite/gas/lns/lns.exp @@ -32,13 +32,14 @@ if { && ![istarget s390*-*-*] } { # Use alternate file for targets using DW_LNS_fixed_advance_pc opcodes. - if { [istarget xtensa*-*-*] - || [istarget am3*-*-*] + if { [istarget am3*-*-*] || [istarget cr16-*-*] || [istarget crx-*-*] + || [istarget mn10*-*-*] || [istarget msp430-*-*] || [istarget nds32*-*-*] - || [istarget mn10*-*-*] } { + || [istarget rl78-*-*] + || [istarget xtensa*-*-*] } { run_dump_test "lns-common-1-alt" run_dump_test "lns-big-delta" } elseif { [istarget ia64*-*-*] } { |