diff options
author | Ulrich Drepper <drepper@redhat.com> | 2009-02-01 18:18:55 -0800 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 2009-02-01 18:18:55 -0800 |
commit | cbb422eb102660d97209ec632e3b6572f0b0c7a6 (patch) | |
tree | f1f49c71e538f59754335107295bd7690b9ae2ac /src/objdump.c | |
parent | d11522f075d98f6ae6a6c822dd73f4299c1a5b8a (diff) | |
download | elfutils-cbb422eb102660d97209ec632e3b6572f0b0c7a6.tar.gz |
Print symbol offsets in relation list output from objdump as signed values.
Diffstat (limited to 'src/objdump.c')
-rw-r--r-- | src/objdump.c | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/src/objdump.c b/src/objdump.c index 1a62a022..8419f25f 100644 --- a/src/objdump.c +++ b/src/objdump.c @@ -500,7 +500,15 @@ show_relocs_rela (Ebl *ebl, GElf_Shdr *shdr, Elf_Data *data, } if (rel->r_addend != 0) - printf ("+%#" PRIx64, rel->r_addend); + { + char sign = '+'; + if (rel->r_addend < 0) + { + sign = '-'; + rel->r_addend = -rel->r_addend; + } + printf ("%c%#" PRIx64, sign, rel->r_addend); + } putchar ('\n'); } } @@ -561,7 +569,7 @@ show_relocs (Ebl *ebl, const char *fname, uint32_t shstrndx) shdr->sh_info), &destshdr_mem); - printf (gettext ("RELOCATION RECORDS FOR [%s]:\n" + printf (gettext ("\n\nRELOCATION RECORDS FOR [%s]:\n" "%-*s TYPE VALUE\n"), elf_strptr (ebl->elf, shstrndx, destshdr->sh_name), elfclass == ELFCLASS32 ? 8 : 16, gettext ("OFFSET")); |