summaryrefslogtreecommitdiffstats
path: root/llvm/tools/llvm-readobj/ELFDumper.cpp
diff options
context:
space:
mode:
authorMichael J. Spencer <bigcheesegs@gmail.com>2015-07-09 22:32:24 +0000
committerMichael J. Spencer <bigcheesegs@gmail.com>2015-07-09 22:32:24 +0000
commit20546ffd4aa654066d7af1eed475598c1f1ac7b9 (patch)
tree13edff52313be8b0ae0846d250a039e631d71b55 /llvm/tools/llvm-readobj/ELFDumper.cpp
parent28148ba82dfab4ae9a00124beab1aeb14708d08e (diff)
downloadbcm5719-llvm-20546ffd4aa654066d7af1eed475598c1f1ac7b9.tar.gz
bcm5719-llvm-20546ffd4aa654066d7af1eed475598c1f1ac7b9.zip
[Object][ELF] Support dumping hash-tables from files with no section table.
This time without breaking the bots. llvm-svn: 241869
Diffstat (limited to 'llvm/tools/llvm-readobj/ELFDumper.cpp')
-rw-r--r--llvm/tools/llvm-readobj/ELFDumper.cpp13
1 files changed, 13 insertions, 0 deletions
diff --git a/llvm/tools/llvm-readobj/ELFDumper.cpp b/llvm/tools/llvm-readobj/ELFDumper.cpp
index 967e8aa55c9..1cdf5529c08 100644
--- a/llvm/tools/llvm-readobj/ELFDumper.cpp
+++ b/llvm/tools/llvm-readobj/ELFDumper.cpp
@@ -56,6 +56,7 @@ public:
void printDynamicTable() override;
void printNeededLibraries() override;
void printProgramHeaders() override;
+ void printHashTable() override;
void printAttributes() override;
void printMipsPLTGOT() override;
@@ -1119,6 +1120,18 @@ void ELFDumper<ELFT>::printProgramHeaders() {
}
}
+template <typename ELFT>
+void ELFDumper<ELFT>::printHashTable() {
+ DictScope D(W, "HashTable");
+ auto HT = Obj->getHashTable();
+ if (!HT)
+ return;
+ W.printNumber("Num Buckets", HT->nbucket);
+ W.printNumber("Num Chains", HT->nchain);
+ W.printList("Buckets", HT->buckets());
+ W.printList("Chains", HT->chains());
+}
+
template <class ELFT>
void ELFDumper<ELFT>::printAttributes() {
W.startLine() << "Attributes not implemented.\n";
OpenPOWER on IntegriCloud