[JILink][ELF] Include binding and visibility values in error messages.

This should make it easier to track down JITLink errors for unrecognized
binding or visibility types, e.g.
https://lab.llvm.org/buildbot#builders/112/builds/8599.
This commit is contained in:
Lang Hames 2021-08-18 18:03:47 +10:00
parent 626a84e3b3
commit 29ff2e879f
1 changed files with 8 additions and 4 deletions

View File

@ -173,8 +173,10 @@ ELFLinkGraphBuilder<ELFT>::getSymbolLinkageAndScope(
L = Linkage::Weak;
break;
default:
return make_error<StringError>("Unrecognized symbol binding for " + Name,
inconvertibleErrorCode());
return make_error<StringError>(
"Unrecognized symbol binding " +
Twine(static_cast<int>(Sym.getBinding())) + " for " + Name,
inconvertibleErrorCode());
}
switch (Sym.getVisibility()) {
@ -190,8 +192,10 @@ ELFLinkGraphBuilder<ELFT>::getSymbolLinkageAndScope(
S = Scope::Hidden;
break;
case ELF::STV_INTERNAL:
return make_error<StringError>("Unrecognized symbol visibility for " + Name,
inconvertibleErrorCode());
return make_error<StringError>(
"Unrecognized symbol visibility " +
Twine(static_cast<int>(Sym.getVisibility())) + " for " + Name,
inconvertibleErrorCode());
}
return std::make_pair(L, S);