summaryrefslogtreecommitdiff
path: root/src/binary-reader-objdump.cc
diff options
context:
space:
mode:
authorThomas Lively <7121787+tlively@users.noreply.github.com>2018-11-19 15:05:49 -0800
committerBen Smith <binjimin@gmail.com>2018-11-19 15:05:49 -0800
commit690948b22cc3e1213820f3e4b33009ebdef66e2d (patch)
tree0df845be51d0454842b9e7a49bd73e91736a7d5c /src/binary-reader-objdump.cc
parent95d70000cce49b058107e3a4695bca7f848a18c6 (diff)
downloadwabt-690948b22cc3e1213820f3e4b33009ebdef66e2d.tar.gz
wabt-690948b22cc3e1213820f3e4b33009ebdef66e2d.tar.bz2
wabt-690948b22cc3e1213820f3e4b33009ebdef66e2d.zip
Support for SIMD instructions in wasm-objdump (#957)
Tests shamelessly borrowed with light editing from test/interp.
Diffstat (limited to 'src/binary-reader-objdump.cc')
-rw-r--r--src/binary-reader-objdump.cc8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/binary-reader-objdump.cc b/src/binary-reader-objdump.cc
index 51ebcae0..36ca2f9d 100644
--- a/src/binary-reader-objdump.cc
+++ b/src/binary-reader-objdump.cc
@@ -341,6 +341,7 @@ class BinaryReaderObjdumpDisassemble : public BinaryReaderObjdumpBase {
Result OnOpcodeUint64(uint64_t value) override;
Result OnOpcodeF32(uint32_t value) override;
Result OnOpcodeF64(uint64_t value) override;
+ Result OnOpcodeV128(v128 value) override;
Result OnOpcodeBlockSig(Type sig_type) override;
Result OnBrTableExpr(Index num_targets,
@@ -544,6 +545,13 @@ Result BinaryReaderObjdumpDisassemble::OnOpcodeF64(uint64_t value) {
return Result::Ok;
}
+Result BinaryReaderObjdumpDisassemble::OnOpcodeV128(v128 value) {
+ Offset immediate_len = state->offset - current_opcode_offset;
+ LogOpcode(data_, immediate_len, "0x%08x 0x%08x 0x%08x 0x%08x",
+ value.v[0], value.v[1], value.v[2], value.v[3]);
+ return Result::Ok;
+}
+
Result BinaryReaderObjdumpDisassemble::OnBrTableExpr(
Index num_targets,
Index* target_depths,