diff options
Diffstat (limited to 'src/binary-reader-objdump.cc')
-rw-r--r-- | src/binary-reader-objdump.cc | 16 |
1 files changed, 4 insertions, 12 deletions
diff --git a/src/binary-reader-objdump.cc b/src/binary-reader-objdump.cc index ddd2d7b9..7653d105 100644 --- a/src/binary-reader-objdump.cc +++ b/src/binary-reader-objdump.cc @@ -483,21 +483,9 @@ void BinaryReaderObjdumpDisassemble::LogOpcode(size_t data_size, if (fmt) { printf(" "); va_list args; - va_list args_copy; va_start(args, fmt); - va_copy(args_copy, args); vprintf(fmt, args); va_end(args); - - if (current_opcode == Opcode::GetGlobal || - current_opcode == Opcode::SetGlobal) { - int global_index = va_arg(args_copy, int); - if (const char* name = GetGlobalName(global_index)) { - printf(" <%s>", name); - } - } - - va_end(args_copy); } } @@ -529,6 +517,10 @@ Result BinaryReaderObjdumpDisassemble::OnOpcodeIndex(Index value) { const char* name; if (current_opcode == Opcode::Call && (name = GetFunctionName(value))) { LogOpcode(immediate_len, "%d <%s>", value, name); + } else if ((current_opcode == Opcode::GetGlobal || + current_opcode == Opcode::SetGlobal) && + (name = GetGlobalName(value))) { + LogOpcode(immediate_len, "%d <%s>", value, name); } else { LogOpcode(immediate_len, "%d", value); } |