Fix handling of relocs for the MeP target.
bfd PR 18317 * elf32-mep.c (MEPREL): Use bfd_elf_generic_reloc instead of mep_reloc. (mep_reloc): Delete unused function. bin * readelf.c (get_machine_flags): Add description of MeP flags. tests * binutils-all/objdump.exp (cpus_expected): Add MeP CPU names.
This commit is contained in:
parent
914082d11b
commit
153a27763c
@ -3,6 +3,13 @@
|
||||
* elf32-i386.c (elf_backend_post_process_headers): Undef for
|
||||
Solaris 2.
|
||||
|
||||
2015-04-30 Nick Clifton <nickc@redhat.com>
|
||||
|
||||
PR 18317
|
||||
* elf32-mep.c (MEPREL): Use bfd_elf_generic_reloc instead of
|
||||
mep_reloc.
|
||||
(mep_reloc): Delete unused function.
|
||||
|
||||
2015-04-29 Nick Clifton <nickc@redhat.com>
|
||||
|
||||
PR 17099
|
||||
|
@ -30,15 +30,12 @@
|
||||
/* Private relocation functions. */
|
||||
|
||||
#define MEPREL(type, size, bits, right, left, pcrel, overflow, mask) \
|
||||
{(unsigned)type, right, size, bits, pcrel, left, overflow, mep_reloc, #type, FALSE, 0, mask, 0 }
|
||||
{(unsigned)type, right, size, bits, pcrel, left, overflow, bfd_elf_generic_reloc, #type, FALSE, 0, mask, 0 }
|
||||
|
||||
#define N complain_overflow_dont
|
||||
#define S complain_overflow_signed
|
||||
#define U complain_overflow_unsigned
|
||||
|
||||
static bfd_reloc_status_type mep_reloc (bfd *, arelent *, struct bfd_symbol *,
|
||||
void *, asection *, bfd *, char **);
|
||||
|
||||
static reloc_howto_type mep_elf_howto_table [] =
|
||||
{
|
||||
/* type, size, bits, leftshift, rightshift, pcrel, OD/OS/OU, mask. */
|
||||
@ -75,20 +72,6 @@ static reloc_howto_type mep_elf_howto_table [] =
|
||||
#undef N
|
||||
#undef S
|
||||
#undef U
|
||||
|
||||
static bfd_reloc_status_type
|
||||
mep_reloc
|
||||
(bfd * abfd ATTRIBUTE_UNUSED,
|
||||
arelent * reloc_entry ATTRIBUTE_UNUSED,
|
||||
struct bfd_symbol * symbol ATTRIBUTE_UNUSED,
|
||||
void * data ATTRIBUTE_UNUSED,
|
||||
asection * input_section ATTRIBUTE_UNUSED,
|
||||
bfd * output_bfd ATTRIBUTE_UNUSED,
|
||||
char ** error_message ATTRIBUTE_UNUSED)
|
||||
{
|
||||
return bfd_reloc_ok;
|
||||
}
|
||||
|
||||
|
||||
|
||||
#define BFD_RELOC_MEP_NONE BFD_RELOC_NONE
|
||||
|
@ -1,3 +1,7 @@
|
||||
2015-04-30 Nick Clifton <nickc@redhat.com>
|
||||
|
||||
* readelf.c (get_machine_flags): Add description of MeP flags.
|
||||
|
||||
2015-04-27 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
|
||||
|
||||
* readelf.c (display_s390_gnu_attribute): New function.
|
||||
|
@ -2006,6 +2006,8 @@ read_and_display_attr_value (unsigned long attribute,
|
||||
case DW_ATE_HP_floathpintel: printf ("(HP_floathpintel)"); break;
|
||||
case DW_ATE_HP_imaginary_float80: printf ("(HP_imaginary_float80)"); break;
|
||||
case DW_ATE_HP_imaginary_float128: printf ("(HP_imaginary_float128)"); break;
|
||||
/* DWARF 4 values: */
|
||||
case DW_ATE_UTF: printf ("(unicode string)"); break;
|
||||
|
||||
default:
|
||||
if (uvalue >= DW_ATE_lo_user
|
||||
|
@ -2892,6 +2892,40 @@ get_machine_flags (unsigned e_flags, unsigned e_machine)
|
||||
}
|
||||
break;
|
||||
|
||||
case EM_CYGNUS_MEP:
|
||||
switch (e_flags & EF_MEP_CPU_MASK)
|
||||
{
|
||||
case EF_MEP_CPU_MEP: strcat (buf, ", generic MeP"); break;
|
||||
case EF_MEP_CPU_C2: strcat (buf, ", MeP C2"); break;
|
||||
case EF_MEP_CPU_C3: strcat (buf, ", MeP C3"); break;
|
||||
case EF_MEP_CPU_C4: strcat (buf, ", MeP C4"); break;
|
||||
case EF_MEP_CPU_C5: strcat (buf, ", MeP C5"); break;
|
||||
case EF_MEP_CPU_H1: strcat (buf, ", MeP H1"); break;
|
||||
default: strcat (buf, _(", <unknown MeP cpu type>")); break;
|
||||
}
|
||||
|
||||
switch (e_flags & EF_MEP_COP_MASK)
|
||||
{
|
||||
case EF_MEP_COP_NONE: break;
|
||||
case EF_MEP_COP_AVC: strcat (buf, ", AVC coprocessor"); break;
|
||||
case EF_MEP_COP_AVC2: strcat (buf, ", AVC2 coprocessor"); break;
|
||||
case EF_MEP_COP_FMAX: strcat (buf, ", FMAX coprocessor"); break;
|
||||
case EF_MEP_COP_IVC2: strcat (buf, ", IVC2 coprocessor"); break;
|
||||
default: strcat (buf, _("<unknown MeP copro type>")); break;
|
||||
}
|
||||
|
||||
if (e_flags & EF_MEP_LIBRARY)
|
||||
strcat (buf, ", Built for Library");
|
||||
|
||||
if (e_flags & EF_MEP_INDEX_MASK)
|
||||
sprintf (buf + strlen (buf), ", Configuration Index: %#x",
|
||||
e_flags & EF_MEP_INDEX_MASK);
|
||||
|
||||
if (e_flags & ~ EF_MEP_ALL_FLAGS)
|
||||
sprintf (buf + strlen (buf), _(", unknown flags bits: %#x"),
|
||||
e_flags & ~ EF_MEP_ALL_FLAGS);
|
||||
break;
|
||||
|
||||
case EM_PPC:
|
||||
if (e_flags & EF_PPC_EMB)
|
||||
strcat (buf, ", emb");
|
||||
|
@ -1,3 +1,7 @@
|
||||
2015-04-30 Nick Clifton <nickc@redhat.com>
|
||||
|
||||
* binutils-all/objdump.exp (cpus_expected): Add MeP CPU names.
|
||||
|
||||
2015-04-23 H.J. Lu <hongjiu.lu@intel.com>
|
||||
|
||||
PR binutils/18209
|
||||
|
@ -36,7 +36,7 @@ set got [binutils_run $OBJDUMP "$OBJDUMPFLAGS -i"]
|
||||
set cpus_expected [list]
|
||||
lappend cpus_expected aarch64 alpha arc arm cris
|
||||
lappend cpus_expected d10v d30v fr30 fr500 fr550 h8 hppa i386 i860 i960 ip2022
|
||||
lappend cpus_expected m16c m32c m32r m68hc11 m68hc12 m68k m88k MCore MicroBlaze
|
||||
lappend cpus_expected m16c m32c m32r m68hc11 m68hc12 m68k m88k MCore mep c5 h1 MicroBlaze
|
||||
lappend cpus_expected mips mn10200 mn10300 ms1 msp MSP430 nds32 n1h_v3 ns32k
|
||||
lappend cpus_expected or1k or1knd pj powerpc pyramid romp rs6000 s390 sh sparc
|
||||
lappend cpus_expected tahoe tic54x tic80 tilegx tms320c30 tms320c4x tms320c54x
|
||||
|
Loading…
x
Reference in New Issue
Block a user