WebAssembly / simd

Branch of the spec repo scoped to discussion of SIMD in WebAssembly
Other
527 stars 43 forks source link

Merge from upstream spec #495

Closed ngzhian closed 3 years ago

ngzhian commented 3 years ago

Quite a number of changes from upstream because ref-types was merged. Most of the fixes have to do with num_type v.s. value_type, wrapping up V128 into Num, or pattern matching a Num V128.

Moved some code from Eval_numeric into Values to avoid circular imports:

For the spec text, I put SIMD 128 sections after the reference types section, e.g. in validation.

rossberg commented 3 years ago

Btw, I'll be on vacation for the rest of the month, so expect some delay in code reviews.

ngzhian commented 3 years ago

I wonder if it wouldn't be cleaner (in both spec and interpreter) if Simd was treated as a third kind of value type (perhaps introducing a new name for the union of the two).

Hm, not too sure if what the end result will look like if we do that. I will file a TODO on myself to think about this a bit more and maybe do some experiments, thanks for the suggestion! Merging as it is for now.