mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2024-11-24 18:44:20 +08:00
* readelf.c (dump_relocations): Special case R_ALPHA_LITUSE.
This commit is contained in:
parent
2acf634e2d
commit
7ace3541ba
@ -1,3 +1,7 @@
|
||||
2005-05-31 Richard Henderson <rth@redhat.com>
|
||||
|
||||
* readelf.c (dump_relocations): Special case R_ALPHA_LITUSE.
|
||||
|
||||
2005-05-29 Richard Henderson <rth@redhat.com>
|
||||
|
||||
* readelf.c (get_alpha_dynamic_type): New.
|
||||
|
@ -1243,7 +1243,31 @@ dump_relocations (FILE *file,
|
||||
else
|
||||
printf (do_wide ? "%-22.22s" : "%-17.17s", rtype);
|
||||
|
||||
if (symtab_index)
|
||||
if (elf_header.e_machine == EM_ALPHA
|
||||
&& streq (rtype, "R_ALPHA_LITUSE")
|
||||
&& is_rela)
|
||||
{
|
||||
switch (rels[i].r_addend)
|
||||
{
|
||||
case LITUSE_ALPHA_ADDR: rtype = "ADDR"; break;
|
||||
case LITUSE_ALPHA_BASE: rtype = "BASE"; break;
|
||||
case LITUSE_ALPHA_BYTOFF: rtype = "BYTOFF"; break;
|
||||
case LITUSE_ALPHA_JSR: rtype = "JSR"; break;
|
||||
case LITUSE_ALPHA_TLSGD: rtype = "TLSGD"; break;
|
||||
case LITUSE_ALPHA_TLSLDM: rtype = "TLSLDM"; break;
|
||||
case LITUSE_ALPHA_JSRDIRECT: rtype = "JSRDIRECT"; break;
|
||||
default: rtype = NULL;
|
||||
}
|
||||
if (rtype)
|
||||
printf (" (%s)", rtype);
|
||||
else
|
||||
{
|
||||
putchar (' ');
|
||||
printf (_("<unknown addend: %lx>"),
|
||||
(unsigned long) rels[i].r_addend);
|
||||
}
|
||||
}
|
||||
else if (symtab_index)
|
||||
{
|
||||
if (symtab == NULL || symtab_index >= nsyms)
|
||||
printf (" bad symbol index: %08lx", (unsigned long) symtab_index);
|
||||
@ -1309,8 +1333,7 @@ dump_relocations (FILE *file,
|
||||
print_vma (rels[i].r_addend, LONG_HEX);
|
||||
}
|
||||
|
||||
if (elf_header.e_machine == EM_SPARCV9
|
||||
&& streq (rtype, "R_SPARC_OLO10"))
|
||||
if (elf_header.e_machine == EM_SPARCV9 && streq (rtype, "R_SPARC_OLO10"))
|
||||
printf (" + %lx", (unsigned long) ELF64_R_TYPE_DATA (info));
|
||||
|
||||
putchar ('\n');
|
||||
|
Loading…
Reference in New Issue
Block a user