diff options
author | Sam Clegg <sbc@chromium.org> | 2017-03-16 18:27:38 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-03-16 18:27:38 -0700 |
commit | 264a9505ecf8dc8834a2f9842793f6d91ad6803b (patch) | |
tree | 19099ff1c588f71655d680f047b698a02430180d /src/binary-reader-objdump.cc | |
parent | 5b642c3ce487b77102dec4fc4b55538cfbccc5ff (diff) | |
download | wabt-264a9505ecf8dc8834a2f9842793f6d91ad6803b.tar.gz wabt-264a9505ecf8dc8834a2f9842793f6d91ad6803b.tar.bz2 wabt-264a9505ecf8dc8834a2f9842793f6d91ad6803b.zip |
Add callback for end opcode and end of function (#358)
Without this objdump doesn't show the final byte/opcode
of each function.
Diffstat (limited to 'src/binary-reader-objdump.cc')
-rw-r--r-- | src/binary-reader-objdump.cc | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/binary-reader-objdump.cc b/src/binary-reader-objdump.cc index 5fd401c9..fa59b2b9 100644 --- a/src/binary-reader-objdump.cc +++ b/src/binary-reader-objdump.cc @@ -319,6 +319,12 @@ Result on_br_table_expr(BinaryReaderContext* ctx, return Result::Ok; } +static Result on_end_func(void* user_data) { + Context* context = static_cast<Context*>(user_data); + log_opcode(context, nullptr, 0, nullptr); + return Result::Ok; +} + static Result on_end_expr(void* user_data) { Context* context = static_cast<Context*>(user_data); context->indent_level--; @@ -759,6 +765,7 @@ Result read_binary_objdump(const uint8_t* data, reader.on_opcode_f64 = on_opcode_f64; reader.on_opcode_block_sig = on_opcode_block_sig; reader.on_end_expr = on_end_expr; + reader.on_end_func = on_end_func; reader.on_br_table_expr = on_br_table_expr; } |