| Index: src/wasm/ast-decoder.cc
|
| diff --git a/src/wasm/ast-decoder.cc b/src/wasm/ast-decoder.cc
|
| index a778ad13beb9e92efce1fdf42fa66fa7e995f1be..40d4a0bac6256918f334fa09d9e9a550a2d538b5 100644
|
| --- a/src/wasm/ast-decoder.cc
|
| +++ b/src/wasm/ast-decoder.cc
|
| @@ -401,7 +401,7 @@ class WasmDecoder : public Decoder {
|
| FOREACH_STORE_MEM_OPCODE(DECLARE_OPCODE_CASE)
|
| #undef DECLARE_OPCODE_CASE
|
| {
|
| - MemoryAccessOperand operand(this, pc);
|
| + MemoryAccessOperand operand(this, pc, UINT32_MAX);
|
| return 1 + operand.length;
|
| }
|
| case kExprBr:
|
| @@ -1378,7 +1378,9 @@ class WasmFullDecoder : public WasmDecoder {
|
| }
|
|
|
| int DecodeLoadMem(LocalType type, MachineType mem_type) {
|
| - MemoryAccessOperand operand(this, pc_);
|
| + MemoryAccessOperand operand(this, pc_,
|
| + ElementSizeLog2Of(mem_type.representation()));
|
| +
|
| Value index = Pop(0, kAstI32);
|
| TFNode* node = BUILD(LoadMem, type, mem_type, index.node, operand.offset,
|
| operand.alignment, position());
|
| @@ -1387,7 +1389,8 @@ class WasmFullDecoder : public WasmDecoder {
|
| }
|
|
|
| int DecodeStoreMem(LocalType type, MachineType mem_type) {
|
| - MemoryAccessOperand operand(this, pc_);
|
| + MemoryAccessOperand operand(this, pc_,
|
| + ElementSizeLog2Of(mem_type.representation()));
|
| Value val = Pop(1, type);
|
| Value index = Pop(0, kAstI32);
|
| BUILD(StoreMem, mem_type, index.node, operand.offset, operand.alignment,
|
|
|