diff options
Diffstat (limited to 'src/binary-reader-objdump.cc')
-rw-r--r-- | src/binary-reader-objdump.cc | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/src/binary-reader-objdump.cc b/src/binary-reader-objdump.cc index 836bf7fa..5fe39adb 100644 --- a/src/binary-reader-objdump.cc +++ b/src/binary-reader-objdump.cc @@ -1072,8 +1072,22 @@ Result BinaryReaderObjdump::OnSymbolInfoCount(Index count) { } Result BinaryReaderObjdump::OnSymbolInfo(string_view name, uint32_t flags) { - PrintDetails(" - <" PRIstringview "> flags=0x%x\n", - WABT_PRINTF_STRING_VIEW_ARG(name), flags); + const char* binding_name = nullptr; + SymbolBinding binding = static_cast<SymbolBinding>(flags & 0x3); + switch (binding) { + case SymbolBinding::Global: + binding_name = "GLOBAL"; + break; + case SymbolBinding::Local: + binding_name = "LOCAL "; + break; + case SymbolBinding::Weak: + binding_name = "WEAK "; + break; + } + + PrintDetails(" - %s <" PRIstringview ">\n", binding_name, + WABT_PRINTF_STRING_VIEW_ARG(name)); return Result::Ok; } |