summaryrefslogtreecommitdiff
path: root/src/wasm.h
diff options
context:
space:
mode:
authorThomas Lively <7121787+tlively@users.noreply.github.com>2020-10-28 09:05:03 -0700
committerGitHub <noreply@github.com>2020-10-28 09:05:03 -0700
commit5f7d2636e926e0061e4f07dfd5c864d32a7f6144 (patch)
treed4b718103203ea8056f645e19b04d1dd939552e2 /src/wasm.h
parent8fd93ee74150a8783c5118ea9804b508fe67701f (diff)
downloadbinaryen-5f7d2636e926e0061e4f07dfd5c864d32a7f6144.tar.gz
binaryen-5f7d2636e926e0061e4f07dfd5c864d32a7f6144.tar.bz2
binaryen-5f7d2636e926e0061e4f07dfd5c864d32a7f6144.zip
Prototype new SIMD multiplications (#3291)
Including saturating, rounding Q15 multiplication as proposed in https://github.com/WebAssembly/simd/pull/365 and extending multiplications as proposed in https://github.com/WebAssembly/simd/pull/376. Since these are just prototypes, skips adding them to the C or JS APIs and the fuzzer, as well as implementing them in the interpreter.
Diffstat (limited to 'src/wasm.h')
-rw-r--r--src/wasm.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/wasm.h b/src/wasm.h
index 295088780..feaa51e40 100644
--- a/src/wasm.h
+++ b/src/wasm.h
@@ -393,6 +393,11 @@ enum BinaryOp {
MaxSVecI16x8,
MaxUVecI16x8,
AvgrUVecI16x8,
+ Q15MulrSatSVecI16x8,
+ ExtMulLowSVecI16x8,
+ ExtMulHighSVecI16x8,
+ ExtMulLowUVecI16x8,
+ ExtMulHighUVecI16x8,
AddVecI32x4,
SubVecI32x4,
MulVecI32x4,
@@ -401,9 +406,17 @@ enum BinaryOp {
MaxSVecI32x4,
MaxUVecI32x4,
DotSVecI16x8ToVecI32x4,
+ ExtMulLowSVecI32x4,
+ ExtMulHighSVecI32x4,
+ ExtMulLowUVecI32x4,
+ ExtMulHighUVecI32x4,
AddVecI64x2,
SubVecI64x2,
MulVecI64x2,
+ ExtMulLowSVecI64x2,
+ ExtMulHighSVecI64x2,
+ ExtMulLowUVecI64x2,
+ ExtMulHighUVecI64x2,
AddVecF32x4,
SubVecF32x4,
MulVecF32x4,