summaryrefslogtreecommitdiff
path: root/src/js
diff options
context:
space:
mode:
authordcode <dcode@dcode.io>2023-02-07 23:24:53 +0100
committerGitHub <noreply@github.com>2023-02-07 14:24:53 -0800
commitcfda51c6c87267a7f42a28165bc8cce43f41621e (patch)
tree64aefefca5b9e0facfbbb205a93198702e88e25f /src/js
parent90c726a606cf8f99307a41d8f889de4e1221c4f8 (diff)
downloadbinaryen-cfda51c6c87267a7f42a28165bc8cce43f41621e.tar.gz
binaryen-cfda51c6c87267a7f42a28165bc8cce43f41621e.tar.bz2
binaryen-cfda51c6c87267a7f42a28165bc8cce43f41621e.zip
[C API] Add relaxed SIMD operations (#5482)
Exposes the constants **Unary** * BinaryenRelaxedTruncSVecF32x4ToVecI32x4 * BinaryenRelaxedTruncSVecF32x4ToVecI32x4 * BinaryenRelaxedTruncZeroSVecF64x2ToVecI32x4 * BinaryenRelaxedTruncZeroUVecF64x2ToVecI32x4 **Binary** * BinaryenRelaxedSwizzleVecI8x16 * BinaryenRelaxedMinVecF32x4 * BinaryenRelaxedMaxVecF32x4 * BinaryenRelaxedMinVecF64x2 * BinaryenRelaxedMaxVecF64x2 * BinaryenRelaxedQ15MulrSVecI16x8 * BinaryenDotI8x16I7x16SToVecI16x8 **SIMDTernary** * BinaryenRelaxedFmaVecF32x4 * BinaryenRelaxedFmsVecF32x4 * BinaryenRelaxedFmaVecF64x2 * BinaryenRelaxedFmsVecF64x2 * BinaryenLaneselectI8x16 * BinaryenLaneselectI16x8 * BinaryenLaneselectI32x4 * BinaryenLaneselectI64x2 * BinaryenDotI8x16I7x16AddSToVecI32x4 so the respective instructions can be produced and inspected with the C API.
Diffstat (limited to 'src/js')
-rw-r--r--src/js/binaryen.js-post.js20
1 files changed, 20 insertions, 0 deletions
diff --git a/src/js/binaryen.js-post.js b/src/js/binaryen.js-post.js
index 5bd5e5505..3fe73f179 100644
--- a/src/js/binaryen.js-post.js
+++ b/src/js/binaryen.js-post.js
@@ -391,6 +391,15 @@ function initializeConstants() {
'XorVec128',
'AndNotVec128',
'BitselectVec128',
+ 'RelaxedFmaVecF32x4',
+ 'RelaxedFmsVecF32x4',
+ 'RelaxedFmaVecF64x2',
+ 'RelaxedFmsVecF64x2',
+ 'LaneselectI8x16',
+ 'LaneselectI16x8',
+ 'LaneselectI32x4',
+ 'LaneselectI64x2',
+ 'DotI8x16I7x16AddSToVecI32x4',
'AnyTrueVec128',
'PopcntVecI8x16',
'AbsVecI8x16',
@@ -548,7 +557,18 @@ function initializeConstants() {
'TruncSatZeroUVecF64x2ToVecI32x4',
'DemoteZeroVecF64x2ToVecF32x4',
'PromoteLowVecF32x4ToVecF64x2',
+ 'RelaxedTruncSVecF32x4ToVecI32x4',
+ 'RelaxedTruncUVecF32x4ToVecI32x4',
+ 'RelaxedTruncZeroSVecF64x2ToVecI32x4',
+ 'RelaxedTruncZeroUVecF64x2ToVecI32x4',
'SwizzleVecI8x16',
+ 'RelaxedSwizzleVecI8x16',
+ 'RelaxedMinVecF32x4',
+ 'RelaxedMaxVecF32x4',
+ 'RelaxedMinVecF64x2',
+ 'RelaxedMaxVecF64x2',
+ 'RelaxedQ15MulrSVecI16x8',
+ 'DotI8x16I7x16SToVecI16x8',
'RefAsNonNull',
'RefAsExternInternalize',
'RefAsExternExternalize',