| Index: src/wasm/ast-decoder.h
 | 
| diff --git a/src/wasm/ast-decoder.h b/src/wasm/ast-decoder.h
 | 
| index 465bacaab84918b21a1db437b37353940bfb25bc..d173986e72c1fd86e80d8b18e030b000539c33ee 100644
 | 
| --- a/src/wasm/ast-decoder.h
 | 
| +++ b/src/wasm/ast-decoder.h
 | 
| @@ -46,8 +46,8 @@ struct ImmI32Operand {
 | 
|    int32_t value;
 | 
|    int length;
 | 
|    inline ImmI32Operand(Decoder* decoder, const byte* pc) {
 | 
| -    value = bit_cast<int32_t>(decoder->checked_read_u32(pc, 1, "immi32"));
 | 
| -    length = 4;
 | 
| +    value =
 | 
| +        bit_cast<int32_t>(decoder->checked_read_i32v(pc, 1, &length, "immi32"));
 | 
|    }
 | 
|  };
 | 
|  
 | 
| @@ -55,8 +55,8 @@ struct ImmI64Operand {
 | 
|    int64_t value;
 | 
|    int length;
 | 
|    inline ImmI64Operand(Decoder* decoder, const byte* pc) {
 | 
| -    value = bit_cast<int64_t>(decoder->checked_read_u64(pc, 1, "immi64"));
 | 
| -    length = 8;
 | 
| +    value =
 | 
| +        bit_cast<int64_t>(decoder->checked_read_i64v(pc, 1, &length, "immi64"));
 | 
|    }
 | 
|  };
 | 
|  
 | 
| 
 |