diff options
author | Daniel Wirtz <dcode@dcode.io> | 2019-09-11 18:40:08 +0200 |
---|---|---|
committer | Thomas Lively <7121787+tlively@users.noreply.github.com> | 2019-09-11 09:40:08 -0700 |
commit | bcd80a9b20c83753f0712f12ae7de42fdfdc32cb (patch) | |
tree | 72acc8972942914832cd65993419dc3c12c3a869 /src | |
parent | 241aa71a776ae7e4c0cddb11523358242832daa4 (diff) | |
download | binaryen-bcd80a9b20c83753f0712f12ae7de42fdfdc32cb.tar.gz binaryen-bcd80a9b20c83753f0712f12ae7de42fdfdc32cb.tar.bz2 binaryen-bcd80a9b20c83753f0712f12ae7de42fdfdc32cb.zip |
Fix bitselect operation in C/JS APIs (#2336)
In #2328 the SIMDBitselect API has been replaced with SIMDTernary that now has Bitselect as one of multiple operations, which is currently not exposed, unlike the new QFMA/QFMS operations which are exposed. This PR adds it.
Diffstat (limited to 'src')
-rw-r--r-- | src/binaryen-c.h | 1 | ||||
-rw-r--r-- | src/js/binaryen.js-post.js | 3 |
2 files changed, 3 insertions, 1 deletions
diff --git a/src/binaryen-c.h b/src/binaryen-c.h index 396ee2e8d..d306885b0 100644 --- a/src/binaryen-c.h +++ b/src/binaryen-c.h @@ -440,6 +440,7 @@ BinaryenOp BinaryenNotVec128(void); BinaryenOp BinaryenAndVec128(void); BinaryenOp BinaryenOrVec128(void); BinaryenOp BinaryenXorVec128(void); +BinaryenOp BinaryenBitselectVec128(void); BinaryenOp BinaryenNegVecI8x16(void); BinaryenOp BinaryenAnyTrueVecI8x16(void); BinaryenOp BinaryenAllTrueVecI8x16(void); diff --git a/src/js/binaryen.js-post.js b/src/js/binaryen.js-post.js index bb5e4b21e..328b0a27d 100644 --- a/src/js/binaryen.js-post.js +++ b/src/js/binaryen.js-post.js @@ -320,6 +320,7 @@ Module['NotVec128'] = Module['_BinaryenNotVec128'](); Module['AndVec128'] = Module['_BinaryenAndVec128'](); Module['OrVec128'] = Module['_BinaryenOrVec128'](); Module['XorVec128'] = Module['_BinaryenXorVec128'](); +Module['BitselectVec128'] = Module['_BinaryenBitselectVec128'](); Module['NegVecI8x16'] = Module['_BinaryenNegVecI8x16'](); Module['AnyTrueVecI8x16'] = Module['_BinaryenAnyTrueVecI8x16'](); Module['AllTrueVecI8x16'] = Module['_BinaryenAllTrueVecI8x16'](); @@ -1327,7 +1328,7 @@ function wrapModule(module, self) { return Module['_BinaryenUnary'](module, Module['XorVec128'], value); }, 'bitselect': function(left, right, cond) { - return Module['_BinaryenSIMDTernary'](module, Module['Bitselect'], left, right, cond); + return Module['_BinaryenSIMDTernary'](module, Module['BitselectVec128'], left, right, cond); }, 'pop': function() { return Module['_BinaryenPop'](module, Module['v128']); |