summaryrefslogtreecommitdiffstats
path: root/llvm/tools/llvm-readobj
diff options
context:
space:
mode:
authorRui Ueyama <ruiu@google.com>2014-11-19 02:07:10 +0000
committerRui Ueyama <ruiu@google.com>2014-11-19 02:07:10 +0000
commit970dda295e708a54df1c9516c365a915ba68e96c (patch)
treebe55dcaa1f2808d0baf81e2cb9a972108d721d57 /llvm/tools/llvm-readobj
parent13d123ccf76e235e687b06d3ab6943d2fb5e2059 (diff)
downloadbcm5719-llvm-970dda295e708a54df1c9516c365a915ba68e96c.tar.gz
bcm5719-llvm-970dda295e708a54df1c9516c365a915ba68e96c.zip
llvm-readobj: fix off-by-one error in COFFDumper
It printed out base relocation table header as table entry. This patch also makes llvm-readobj to not skip ABSOLUTE entries becuase it was confusing. llvm-svn: 222299
Diffstat (limited to 'llvm/tools/llvm-readobj')
-rw-r--r--llvm/tools/llvm-readobj/COFFDumper.cpp5
1 files changed, 1 insertions, 4 deletions
diff --git a/llvm/tools/llvm-readobj/COFFDumper.cpp b/llvm/tools/llvm-readobj/COFFDumper.cpp
index 2ea3cd8a3da..4e1bf2cbbd3 100644
--- a/llvm/tools/llvm-readobj/COFFDumper.cpp
+++ b/llvm/tools/llvm-readobj/COFFDumper.cpp
@@ -1086,7 +1086,7 @@ static StringRef getBaseRelocTypeName(uint8_t Type) {
case COFF::IMAGE_REL_BASED_HIGHLOW: return "HIGHLOW";
case COFF::IMAGE_REL_BASED_HIGHADJ: return "HIGHADJ";
case COFF::IMAGE_REL_BASED_DIR64: return "DIR64";
- default: return "unknown";
+ default: return "unknown (" + std::to_string(Type) + ")";
}
}
@@ -1099,9 +1099,6 @@ void COFFDumper::printCOFFBaseReloc() {
continue;
if (error(I.getType(Type)))
continue;
- // IMAGE_REL_BASED_ABSOLUTE is a NOP entry.
- if (Type == COFF::IMAGE_REL_BASED_ABSOLUTE)
- continue;
DictScope Import(W, "Entry");
W.printString("Type", getBaseRelocTypeName(Type));
W.printHex("Address", RVA);
OpenPOWER on IntegriCloud