diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/binaryen-c.cpp | 12 | ||||
-rw-r--r-- | src/binaryen-c.h | 4 | ||||
-rw-r--r-- | src/js/binaryen.js-post.js | 16 |
3 files changed, 32 insertions, 0 deletions
diff --git a/src/binaryen-c.cpp b/src/binaryen-c.cpp index 00a907ab4..dfcd425e3 100644 --- a/src/binaryen-c.cpp +++ b/src/binaryen-c.cpp @@ -698,6 +698,18 @@ BinaryenOp BinaryenExtendLowUVecI16x8ToVecI32x4(void) { BinaryenOp BinaryenExtendHighUVecI16x8ToVecI32x4(void) { return ExtendHighUVecI16x8ToVecI32x4; } +BinaryenOp BinaryenExtendLowSVecI32x4ToVecI64x2(void) { + return ExtendLowSVecI32x4ToVecI64x2; +} +BinaryenOp BinaryenExtendHighSVecI32x4ToVecI64x2(void) { + return ExtendHighSVecI32x4ToVecI64x2; +} +BinaryenOp BinaryenExtendLowUVecI32x4ToVecI64x2(void) { + return ExtendLowUVecI32x4ToVecI64x2; +} +BinaryenOp BinaryenExtendHighUVecI32x4ToVecI64x2(void) { + return ExtendHighUVecI32x4ToVecI64x2; +} BinaryenOp BinaryenSwizzleVec8x16(void) { return SwizzleVec8x16; } BinaryenOp BinaryenRefIsNull(void) { return RefIsNull; } BinaryenOp BinaryenRefIsFunc(void) { return RefIsFunc; } diff --git a/src/binaryen-c.h b/src/binaryen-c.h index 33d2438e1..84661b750 100644 --- a/src/binaryen-c.h +++ b/src/binaryen-c.h @@ -557,6 +557,10 @@ BINARYEN_API BinaryenOp BinaryenExtendLowSVecI16x8ToVecI32x4(void); BINARYEN_API BinaryenOp BinaryenExtendHighSVecI16x8ToVecI32x4(void); BINARYEN_API BinaryenOp BinaryenExtendLowUVecI16x8ToVecI32x4(void); BINARYEN_API BinaryenOp BinaryenExtendHighUVecI16x8ToVecI32x4(void); +BINARYEN_API BinaryenOp BinaryenExtendLowSVecI32x4ToVecI64x2(void); +BINARYEN_API BinaryenOp BinaryenExtendHighSVecI32x4ToVecI64x2(void); +BINARYEN_API BinaryenOp BinaryenExtendLowUVecI32x4ToVecI64x2(void); +BINARYEN_API BinaryenOp BinaryenExtendHighUVecI32x4ToVecI64x2(void); BINARYEN_API BinaryenOp BinaryenSwizzleVec8x16(void); BINARYEN_API BinaryenOp BinaryenRefIsNull(void); BINARYEN_API BinaryenOp BinaryenRefIsFunc(void); diff --git a/src/js/binaryen.js-post.js b/src/js/binaryen.js-post.js index f5ab04642..80affeefc 100644 --- a/src/js/binaryen.js-post.js +++ b/src/js/binaryen.js-post.js @@ -485,6 +485,10 @@ function initializeConstants() { 'ExtendHighSVecI16x8ToVecI32x4', 'ExtendLowUVecI16x8ToVecI32x4', 'ExtendHighUVecI16x8ToVecI32x4', + 'ExtendLowSVecI32x4ToVecI64x2', + 'ExtendHighSVecI32x4ToVecI64x2', + 'ExtendLowUVecI32x4ToVecI64x2', + 'ExtendHighUVecI32x4ToVecI64x2', 'SwizzleVec8x16', 'RefIsNull', 'RefIsFunc', @@ -1896,6 +1900,18 @@ function wrapModule(module, self = {}) { 'mul'(left, right) { return Module['_BinaryenBinary'](module, Module['MulVecI64x2'], left, right); }, + 'extend_low_i32x4_s'(value) { + return Module['_BinaryenUnary'](module, Module['ExtendLowSVecI32x4ToVecI64x2'], value); + }, + 'extend_high_i32x4_s'(value) { + return Module['_BinaryenUnary'](module, Module['ExtendHighSVecI32x4ToVecI64x2'], value); + }, + 'extend_low_i32x4_u'(value) { + return Module['_BinaryenUnary'](module, Module['ExtendLowUVecI32x4ToVecI64x2'], value); + }, + 'extend_high_i32x4_u'(value) { + return Module['_BinaryenUnary'](module, Module['ExtendHighUVecI32x4ToVecI64x2'], value); + }, }; self['f32x4'] = { |