[PATCH] D30804: [llvm-readobj] Only print the real size of the note
Petr Hosek via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Wed Apr 5 12:08:23 PDT 2017
This revision was automatically updated to reflect the committed changes.
Closed by commit rL299576: [llvm-readobj] Only print the real size of the note (authored by phosek).
Changed prior to commit:
https://reviews.llvm.org/D30804?vs=91253&id=94266#toc
Repository:
rL LLVM
https://reviews.llvm.org/D30804
Files:
llvm/trunk/tools/llvm-readobj/ELFDumper.cpp
Index: llvm/trunk/tools/llvm-readobj/ELFDumper.cpp
===================================================================
--- llvm/trunk/tools/llvm-readobj/ELFDumper.cpp
+++ llvm/trunk/tools/llvm-readobj/ELFDumper.cpp
@@ -3370,7 +3370,8 @@
template <typename ELFT>
static void printGNUNote(raw_ostream &OS, uint32_t NoteType,
- ArrayRef<typename ELFFile<ELFT>::Elf_Word> Words) {
+ ArrayRef<typename ELFFile<ELFT>::Elf_Word> Words,
+ size_t Size) {
switch (NoteType) {
default:
return;
@@ -3393,16 +3394,14 @@
}
case ELF::NT_GNU_BUILD_ID: {
OS << " Build ID: ";
- ArrayRef<uint8_t> ID(reinterpret_cast<const uint8_t *>(Words.data()),
- Words.size() * 4);
+ ArrayRef<uint8_t> ID(reinterpret_cast<const uint8_t *>(Words.data()), Size);
for (const auto &B : ID)
OS << format_hex_no_prefix(B, 2);
break;
}
case ELF::NT_GNU_GOLD_VERSION:
OS << " Version: "
- << StringRef(reinterpret_cast<const char *>(Words.data()),
- Words.size() * 4);
+ << StringRef(reinterpret_cast<const char *>(Words.data()), Size);
break;
}
@@ -3446,7 +3445,7 @@
if (Name == "GNU") {
OS << getGNUNoteTypeName(Type) << '\n';
- printGNUNote<ELFT>(OS, Type, Descriptor);
+ printGNUNote<ELFT>(OS, Type, Descriptor, DescriptorSize);
} else if (Name == "FreeBSD") {
OS << getFreeBSDNoteTypeName(Type) << '\n';
} else {
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D30804.94266.patch
Type: text/x-patch
Size: 1538 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20170405/ce68d965/attachment.bin>
More information about the llvm-commits
mailing list