WebAssembly / memory64

Memory with 64-bit indexes
Other
195 stars 21 forks source link

[interpreter] Wrong typing of data segment #17

Closed backes closed 3 years ago

backes commented 3 years ago

The interpreter still outputs i32.const init expressions for the data segment. This makes e.g. memory64.wast fail in v8: https://github.com/WebAssembly/memory64/blob/master/test/core/memory64.wast#L11

I don't know much OCaml, but one location which certainly needs fixing is check_data in valid.ml: https://github.com/WebAssembly/memory64/blob/master/interpreter/valid/valid.ml#L421

And in encoding, we probably need to introduce a vec64 here: https://github.com/WebAssembly/memory64/blob/master/interpreter/binary/encode.ml#L501

backes commented 3 years ago

@aardappel FYI (cannot assign directly to you)