Commit: RL78: Generate complex relocs for DWARF sections
Nick Clifton
nickc@redhat.com
Tue Apr 14 15:22:00 GMT 2015
Hi Guys,
I am applying the patch below to update the RL78 port so that it uses
complex relocations for entries in the .debug_line section. This
means that when code sections are relaxed by the linker, the
.debug_line information will stay up to date.
Whilst implementing this patch I found that readelf did not know how
to handle RL78 complex relocations and that the special_function field
in the RL78 reloc howto table had not been set up to handle complex
relocs. So the patch also fixes both of these problems.
Cheers
Nick
gas/ChangeLog
2015-04-14 Nick Clifton <nickc@redhat.com>
* config/tc-rl78.h (TC_LINKRELAX_FIXUP): Define.
(TC_FORCE_RELOCATION_SUB_SAME): Define.
(DWARF2_USE_FIXED_ADVANCE_PC): Define.
gas/testsuite/ChangeLog
2015-04-14 Nick Clifton <nickc@redhat.com>
* gas/lns/lns.exp: Add RL78 to list of targets using
DW_LNS_fixed_advance_pc.
bfd/ChangeLog
2015-04-14 Nick Clifton <nickc@redhat.com>
* 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/ChangeLog
2015-04-14 Nick Clifton <nickc@redhat.com>
* readelf.c (target_specific_reloc_handling): Add code to handle
RL78 complex relocs.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: fred
Type: application/octet-stream
Size: 33650 bytes
Desc: not available
URL: <https://sourceware.org/pipermail/binutils/attachments/20150414/dc9742c6/attachment.obj>
More information about the Binutils
mailing list