Fix the evaluation of RL78 complex relocs, by making immediate values be computed...
authorNick Clifton <nickc@redhat.com>
Fri, 24 Jul 2015 15:44:27 +0000 (16:44 +0100)
committerNick Clifton <nickc@redhat.com>
Fri, 24 Jul 2015 15:44:27 +0000 (16:44 +0100)
commitaff1a65ecb5cfcf1abfb23ea0e0f37f39e75683e
tree06e40b920daf39a9f55075b40106bb2d074ba362
parent5826e159863b6cd69953dc01faf7c20414409909
Fix the evaluation of RL78 complex relocs, by making immediate values be computed relative to a new absolute symbol.

gas * config/tc-rl78.c (rl78_abs_sym): New local variable.
(md_begin): Initialise the new symbol.
(OPIMM): Define the value to be relative to the new symbol and not
the absolute section symbol.

ld * emulparams/elf32rl78.sh (OTHER_SECTIONS): Provide a value for
the _-rl78_abs__ symbol.

tests * gas/all/struct.d: Allow for extra symbols in the output.
* gas/macros/test1.d: Likewise.
* gas/elf/elf.exp: Add an rl78 machine.
* gas/elf/sections2e-rl78: New file.

tests * binutils-all/localize-hidden-1.d: Allow for extra symbols in the
output.
        * binutils-all/strip-11.d: Skip for the RL78.
12 files changed:
binutils/testsuite/ChangeLog
binutils/testsuite/binutils-all/localize-hidden-1.d
binutils/testsuite/binutils-all/strip-11.d
gas/ChangeLog
gas/config/tc-rl78.c
gas/testsuite/ChangeLog
gas/testsuite/gas/all/struct.d
gas/testsuite/gas/elf/elf.exp
gas/testsuite/gas/elf/section2.e-rl78 [new file with mode: 0644]
gas/testsuite/gas/macros/test1.d
ld/ChangeLog
ld/emulparams/elf32rl78.sh