diff options
author | David Bozier <daveb@graphcore.ai> | 2019-11-19 11:58:50 +0000 |
---|---|---|
committer | David Bozier <daveb@graphcore.ai> | 2019-11-19 12:27:18 +0000 |
commit | 6baec971271b7dc9db610da30a192e57ff03d935 (patch) | |
tree | ed657f90f2336518aaf51eecaf2823d5876d65e7 /llvm/tools | |
parent | bbf4af3109d1958d69c3c1f2af78870207928f4b (diff) | |
download | bcm5719-llvm-6baec971271b7dc9db610da30a192e57ff03d935.tar.gz bcm5719-llvm-6baec971271b7dc9db610da30a192e57ff03d935.zip |
[llvm-objdump] Print relocation addends in hexadecimal
Summary: Matches GNU objdump. Makes debugging easier for me as I'm working out addresses from symbol+addend, so it would be good to be calculating in a single format.
Reviewers: MaskRay, grimar, jhenderson, bd1976llvm
Reviewed By: jhenderson
Subscribers: sdardis, jrtc27, atanasyan, rupprecht, seiya, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D69997
Diffstat (limited to 'llvm/tools')
-rw-r--r-- | llvm/tools/llvm-objdump/ELFDump.cpp | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/llvm/tools/llvm-objdump/ELFDump.cpp b/llvm/tools/llvm-objdump/ELFDump.cpp index 93d070eee16..7ef16c18763 100644 --- a/llvm/tools/llvm-objdump/ELFDump.cpp +++ b/llvm/tools/llvm-objdump/ELFDump.cpp @@ -105,9 +105,12 @@ static Error getRelocationValueString(const ELFObjectFile<ELFT> *Obj, } else { Fmt << "*ABS*"; } - - if (Addend != 0) - Fmt << (Addend < 0 ? "" : "+") << Addend; + if (Addend != 0) { + Fmt << (Addend < 0 + ? "-" + : "+") << format("0x%" PRIx64, + (Addend < 0 ? -(uint64_t)Addend : (uint64_t)Addend)); + } Fmt.flush(); Result.append(FmtBuf.begin(), FmtBuf.end()); return Error::success(); |