summaryrefslogtreecommitdiff
path: root/src/js/binaryen.js-post.js
diff options
context:
space:
mode:
authorThomas Lively <7121787+tlively@users.noreply.github.com>2020-06-05 10:46:23 -0700
committerGitHub <noreply@github.com>2020-06-05 10:46:23 -0700
commit037d7a5d04c376b2fa8fc26076af9579c3712063 (patch)
tree510e3023d8472e1d235b0002adff963fae89009e /src/js/binaryen.js-post.js
parent0c58de1d350928e5e45594e4642349dc77697725 (diff)
downloadbinaryen-037d7a5d04c376b2fa8fc26076af9579c3712063.tar.gz
binaryen-037d7a5d04c376b2fa8fc26076af9579c3712063.tar.bz2
binaryen-037d7a5d04c376b2fa8fc26076af9579c3712063.zip
Add prototype SIMD rounding instructions (#2895)
As specified in https://github.com/WebAssembly/simd/pull/232.
Diffstat (limited to 'src/js/binaryen.js-post.js')
-rw-r--r--src/js/binaryen.js-post.js32
1 files changed, 32 insertions, 0 deletions
diff --git a/src/js/binaryen.js-post.js b/src/js/binaryen.js-post.js
index 2d7bd3f36..dfdb05457 100644
--- a/src/js/binaryen.js-post.js
+++ b/src/js/binaryen.js-post.js
@@ -423,6 +423,10 @@ function initializeConstants() {
'MaxVecF32x4',
'PMinVecF32x4',
'PMaxVecF32x4',
+ 'CeilVecF32x4',
+ 'FloorVecF32x4',
+ 'TruncVecF32x4',
+ 'NearestVecF32x4',
'AbsVecF64x2',
'NegVecF64x2',
'SqrtVecF64x2',
@@ -436,6 +440,10 @@ function initializeConstants() {
'MaxVecF64x2',
'PMinVecF64x2',
'PMaxVecF64x2',
+ 'CeilVecF64x2',
+ 'FloorVecF64x2',
+ 'TruncVecF64x2',
+ 'NearestVecF64x2',
'TruncSatSVecF32x4ToVecI32x4',
'TruncSatUVecF32x4ToVecI32x4',
'TruncSatSVecF64x2ToVecI64x2',
@@ -1918,6 +1926,18 @@ function wrapModule(module, self) {
'pmax': function(left, right) {
return Module['_BinaryenBinary'](module, Module['PMaxVecF32x4'], left, right);
},
+ 'ceil': function(value) {
+ return Module['_BinaryenUnary'](module, Module['CeilVecF32x4'], value);
+ },
+ 'floor': function(value) {
+ return Module['_BinaryenUnary'](module, Module['FloorVecF32x4'], value);
+ },
+ 'trunc': function(value) {
+ return Module['_BinaryenUnary'](module, Module['TruncVecF32x4'], value);
+ },
+ 'nearest': function(value) {
+ return Module['_BinaryenUnary'](module, Module['NearestVecF32x4'], value);
+ },
'convert_i32x4_s': function(value) {
return Module['_BinaryenUnary'](module, Module['ConvertSVecI32x4ToVecF32x4'], value);
},
@@ -1993,6 +2013,18 @@ function wrapModule(module, self) {
'pmax': function(left, right) {
return Module['_BinaryenBinary'](module, Module['PMaxVecF64x2'], left, right);
},
+ 'ceil': function(value) {
+ return Module['_BinaryenUnary'](module, Module['CeilVecF64x2'], value);
+ },
+ 'floor': function(value) {
+ return Module['_BinaryenUnary'](module, Module['FloorVecF64x2'], value);
+ },
+ 'trunc': function(value) {
+ return Module['_BinaryenUnary'](module, Module['TruncVecF64x2'], value);
+ },
+ 'nearest': function(value) {
+ return Module['_BinaryenUnary'](module, Module['NearestVecF64x2'], value);
+ },
'convert_i64x2_s': function(value) {
return Module['_BinaryenUnary'](module, Module['ConvertSVecI64x2ToVecF64x2'], value);
},