WebAssembly / simd

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

[interpreter] Implement SIMD extended multiply instructions #438

Closed ngzhian closed 3 years ago

ngzhian commented 3 years ago

These were accepted into the proposal in #376.

There are 12 instructions in total:

The implementation is straightforward, widen (using existing operations), then a multiply with the wider shape.

The binary opcodes are not decided yet, they currently follow the ones used in V8, when those are finalized, we can change it to match.

Added a test generation script that reuses some logic in the generator for arithmetic instructions. Since these instructions have different src and dst shapes, I tweaked the base class to allow for having different shapes.