diff --git a/tools/llvm-readobj/ELFDumper.cpp b/tools/llvm-readobj/ELFDumper.cpp
index b2ddf884a09..bf5fad2800d 100644
--- a/tools/llvm-readobj/ELFDumper.cpp
+++ b/tools/llvm-readobj/ELFDumper.cpp
@@ -755,9 +755,7 @@ void ELFDumper<ELFT>::printRelocation(const Elf_Shdr *Sec,
       TargetName = SecName.get();
   } else if (Sym.first) {
     const Elf_Shdr *SymTable = Sym.first;
-    ErrorOr<const Elf_Shdr *> StrTableSec = Obj->getSection(SymTable->sh_link);
-    error(StrTableSec.getError());
-    ErrorOr<StringRef> StrTableOrErr = Obj->getStringTable(*StrTableSec);
+    ErrorOr<StringRef> StrTableOrErr = Obj->getStringTableForSymtab(*SymTable);
     error(StrTableOrErr.getError());
     TargetName = errorOrDefault(Sym.second->getName(*StrTableOrErr));
   }