* config/tc-sparc.c (tc_gen_reloc): Turn aligned relocs into

their unaligned counterparts in debugging sections.
This commit is contained in:
Eric Botcazou 2006-11-27 11:25:27 +00:00
parent 14077f2331
commit 062cf83700
2 changed files with 16 additions and 1 deletions

View File

@ -1,3 +1,8 @@
2006-11-27 Eric Botcazou <ebotcazou@adacore.com>
* config/tc-sparc.c (tc_gen_reloc): Turn aligned relocs into
their unaligned counterparts in debugging sections.
2006-11-24 Alan Modra <amodra@bigpond.net.au>
* config/tc-spu.c (md_pseudo_table): Add eqv and .eqv.

View File

@ -3437,7 +3437,7 @@ md_apply_fix (fixP, valP, segment)
arelent **
tc_gen_reloc (section, fixp)
asection *section ATTRIBUTE_UNUSED;
asection *section;
fixS *fixp;
{
static arelent *relocs[3];
@ -3580,6 +3580,16 @@ tc_gen_reloc (section, fixp)
}
#endif /* defined (OBJ_ELF) || defined (OBJ_AOUT) */
/* Nothing is aligned in DWARF debugging sections. */
if (bfd_get_section_flags (stdoutput, section) & SEC_DEBUGGING)
switch (code)
{
case BFD_RELOC_16: code = BFD_RELOC_SPARC_UA16; break;
case BFD_RELOC_32: code = BFD_RELOC_SPARC_UA32; break;
case BFD_RELOC_64: code = BFD_RELOC_SPARC_UA64; break;
default: break;
}
if (code == BFD_RELOC_SPARC_OLO10)
reloc->howto = bfd_reloc_type_lookup (stdoutput, BFD_RELOC_LO10);
else