diff options
author | Daniel Wirtz <dcode@dcode.io> | 2021-04-08 07:52:49 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-04-08 07:52:49 +0200 |
commit | 756a718a16e96b37ae9a0ef6cb7e56210bef3b13 (patch) | |
tree | 3f075ff5dfee64ecd26067049f0c6acb7cdf448b /src/js | |
parent | cf38b658ff20c2b53066dc2a51266c033c6d7178 (diff) | |
download | binaryen-756a718a16e96b37ae9a0ef6cb7e56210bef3b13.tar.gz binaryen-756a718a16e96b37ae9a0ef6cb7e56210bef3b13.tar.bz2 binaryen-756a718a16e96b37ae9a0ef6cb7e56210bef3b13.zip |
Add iNxM.extadd_pairwise_* SIMD instructions to C/JS API (#3780)
Adds C/JS APIs for the SIMD instructions
* ExtAddPairwiseSVecI8x16ToI16x8
* ExtAddPairwiseUVecI8x16ToI16x8
* ExtAddPairwiseSVecI16x8ToI32x4
* ExtAddPairwiseUVecI16x8ToI32x4
Diffstat (limited to 'src/js')
-rw-r--r-- | src/js/binaryen.js-post.js | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/src/js/binaryen.js-post.js b/src/js/binaryen.js-post.js index 80affeefc..15e342eb8 100644 --- a/src/js/binaryen.js-post.js +++ b/src/js/binaryen.js-post.js @@ -459,6 +459,10 @@ function initializeConstants() { 'FloorVecF64x2', 'TruncVecF64x2', 'NearestVecF64x2', + 'ExtAddPairwiseSVecI8x16ToI16x8', + 'ExtAddPairwiseUVecI8x16ToI16x8', + 'ExtAddPairwiseSVecI16x8ToI32x4', + 'ExtAddPairwiseUVecI16x8ToI32x4', 'TruncSatSVecF32x4ToVecI32x4', 'TruncSatUVecF32x4ToVecI32x4', 'ConvertSVecI32x4ToVecF32x4', @@ -1717,6 +1721,12 @@ function wrapModule(module, self = {}) { 'avgr_u'(left, right) { return Module['_BinaryenBinary'](module, Module['AvgrUVecI16x8'], left, right); }, + 'extadd_pairwise_i8x16_s'(value) { + return Module['_BinaryenUnary'](module, Module['ExtAddPairwiseSVecI8x16ToI16x8'], value); + }, + 'extadd_pairwise_i8x16_u'(value) { + return Module['_BinaryenUnary'](module, Module['ExtAddPairwiseUVecI8x16ToI16x8'], value); + }, 'narrow_i32x4_s'(left, right) { return Module['_BinaryenBinary'](module, Module['NarrowSVecI32x4ToVecI16x8'], left, right); }, @@ -1822,6 +1832,12 @@ function wrapModule(module, self = {}) { 'dot_i16x8_s'(left, right) { return Module['_BinaryenBinary'](module, Module['DotSVecI16x8ToVecI32x4'], left, right); }, + 'extadd_pairwise_i16x8_s'(value) { + return Module['_BinaryenUnary'](module, Module['ExtAddPairwiseSVecI16x8ToI32x4'], value); + }, + 'extadd_pairwise_i16x8_u'(value) { + return Module['_BinaryenUnary'](module, Module['ExtAddPairwiseUVecI16x8ToI32x4'], value); + }, 'trunc_sat_f32x4_s'(value) { return Module['_BinaryenUnary'](module, Module['TruncSatSVecF32x4ToVecI32x4'], value); }, |