From 01ef67f22fb597b7c749d2c82c93556cc8eea5b2 Mon Sep 17 00:00:00 2001 From: Alon Zakai Date: Thu, 5 Nov 2015 11:11:52 -0800 Subject: add i64 load to shell --- src/wasm-shell.cpp | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'src/wasm-shell.cpp') diff --git a/src/wasm-shell.cpp b/src/wasm-shell.cpp index 65a838279..97c9c91ed 100644 --- a/src/wasm-shell.cpp +++ b/src/wasm-shell.cpp @@ -64,6 +64,16 @@ struct ShellExternalInterface : ModuleInstance::ExternalInterface { } break; } + case i64: { + switch (load->bytes) { + case 1: return load->signed_ ? (int64_t)((int8_t*)memory)[addr] : (int64_t)((uint8_t*)memory)[addr]; + case 2: return load->signed_ ? (int64_t)((int16_t*)memory)[addr] : (int64_t)((uint16_t*)memory)[addr]; + case 4: return load->signed_ ? (int64_t)((int32_t*)memory)[addr] : (int64_t)((uint32_t*)memory)[addr]; + case 8: return load->signed_ ? (int64_t)((int64_t*)memory)[addr] : (int64_t)((uint64_t*)memory)[addr]; + default: abort(); + } + break; + } case f32: return ((float*)memory)[addr]; case f64: return ((double*)memory)[addr]; default: abort(); -- cgit v1.2.3