summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rw-r--r--test/binaryen.js/kitchen-sink.js6
-rw-r--r--test/binaryen.js/kitchen-sink.js.txt60
-rw-r--r--test/example/c-api-kitchen-sink.c6
-rw-r--r--test/example/c-api-kitchen-sink.txt30
4 files changed, 102 insertions, 0 deletions
diff --git a/test/binaryen.js/kitchen-sink.js b/test/binaryen.js/kitchen-sink.js
index 851843466..7a191a90d 100644
--- a/test/binaryen.js/kitchen-sink.js
+++ b/test/binaryen.js/kitchen-sink.js
@@ -293,10 +293,14 @@ function test_core() {
module.f64x2.abs(module.v128.const(v128_bytes)),
module.f64x2.neg(module.v128.const(v128_bytes)),
module.f64x2.sqrt(module.v128.const(v128_bytes)),
+ module.f64x2.convert_low_i32x4_s(module.v128.const(v128_bytes)),
+ module.f64x2.convert_low_i32x4_u(module.v128.const(v128_bytes)),
+ module.f64x2.promote_low_f32x4(module.v128.const(v128_bytes)),
module.i32x4.trunc_sat_f32x4_s(module.v128.const(v128_bytes)),
module.i32x4.trunc_sat_f32x4_u(module.v128.const(v128_bytes)),
module.f32x4.convert_i32x4_s(module.v128.const(v128_bytes)),
module.f32x4.convert_i32x4_u(module.v128.const(v128_bytes)),
+ module.f32x4.demote_f64x2_zero(module.v128.const(v128_bytes)),
module.i16x8.extend_low_i8x16_s(module.v128.const(v128_bytes)),
module.i16x8.extend_high_i8x16_s(module.v128.const(v128_bytes)),
module.i16x8.extend_low_i8x16_u(module.v128.const(v128_bytes)),
@@ -305,6 +309,8 @@ function test_core() {
module.i32x4.extend_high_i16x8_s(module.v128.const(v128_bytes)),
module.i32x4.extend_low_i16x8_u(module.v128.const(v128_bytes)),
module.i32x4.extend_high_i16x8_u(module.v128.const(v128_bytes)),
+ module.i32x4.trunc_sat_f64x2_s_zero(module.v128.const(v128_bytes)),
+ module.i32x4.trunc_sat_f64x2_u_zero(module.v128.const(v128_bytes)),
module.i64x2.extend_low_i32x4_s(module.v128.const(v128_bytes)),
module.i64x2.extend_high_i32x4_s(module.v128.const(v128_bytes)),
module.i64x2.extend_low_i32x4_u(module.v128.const(v128_bytes)),
diff --git a/test/binaryen.js/kitchen-sink.js.txt b/test/binaryen.js/kitchen-sink.js.txt
index a58203818..f9c4bc5a9 100644
--- a/test/binaryen.js/kitchen-sink.js.txt
+++ b/test/binaryen.js/kitchen-sink.js.txt
@@ -542,6 +542,21 @@ getExpressionInfo(tuple[3])={"id":14,"type":5,"value":3.7}
)
)
(drop
+ (f64x2.convert_low_i32x4_s
+ (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
+ )
+ )
+ (drop
+ (f64x2.convert_low_i32x4_u
+ (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
+ )
+ )
+ (drop
+ (f64x2.promote_low_f32x4
+ (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
+ )
+ )
+ (drop
(i32x4.trunc_sat_f32x4_s
(v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
)
@@ -562,6 +577,11 @@ getExpressionInfo(tuple[3])={"id":14,"type":5,"value":3.7}
)
)
(drop
+ (f32x4.demote_f64x2_zero
+ (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
+ )
+ )
+ (drop
(i16x8.extend_low_i8x16_s
(v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
)
@@ -602,6 +622,16 @@ getExpressionInfo(tuple[3])={"id":14,"type":5,"value":3.7}
)
)
(drop
+ (i32x4.trunc_sat_f64x2_s_zero
+ (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
+ )
+ )
+ (drop
+ (i32x4.trunc_sat_f64x2_u_zero
+ (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
+ )
+ )
+ (drop
(i64x2.extend_low_i32x4_s
(v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
)
@@ -2436,6 +2466,21 @@ getExpressionInfo(tuple[3])={"id":14,"type":5,"value":3.7}
)
)
(drop
+ (f64x2.convert_low_i32x4_s
+ (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
+ )
+ )
+ (drop
+ (f64x2.convert_low_i32x4_u
+ (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
+ )
+ )
+ (drop
+ (f64x2.promote_low_f32x4
+ (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
+ )
+ )
+ (drop
(i32x4.trunc_sat_f32x4_s
(v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
)
@@ -2456,6 +2501,11 @@ getExpressionInfo(tuple[3])={"id":14,"type":5,"value":3.7}
)
)
(drop
+ (f32x4.demote_f64x2_zero
+ (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
+ )
+ )
+ (drop
(i16x8.extend_low_i8x16_s
(v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
)
@@ -2496,6 +2546,16 @@ getExpressionInfo(tuple[3])={"id":14,"type":5,"value":3.7}
)
)
(drop
+ (i32x4.trunc_sat_f64x2_s_zero
+ (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
+ )
+ )
+ (drop
+ (i32x4.trunc_sat_f64x2_u_zero
+ (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
+ )
+ )
+ (drop
(i64x2.extend_low_i32x4_s
(v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
)
diff --git a/test/example/c-api-kitchen-sink.c b/test/example/c-api-kitchen-sink.c
index 7e6755f89..3f97fee9d 100644
--- a/test/example/c-api-kitchen-sink.c
+++ b/test/example/c-api-kitchen-sink.c
@@ -443,6 +443,12 @@ void test_core() {
makeUnary(module, BinaryenExtendHighSVecI32x4ToVecI64x2(), v128),
makeUnary(module, BinaryenExtendLowUVecI32x4ToVecI64x2(), v128),
makeUnary(module, BinaryenExtendHighUVecI32x4ToVecI64x2(), v128),
+ makeUnary(module, BinaryenConvertLowSVecI32x4ToVecF64x2(), v128),
+ makeUnary(module, BinaryenConvertLowUVecI32x4ToVecF64x2(), v128),
+ makeUnary(module, BinaryenTruncSatZeroSVecF64x2ToVecI32x4(), v128),
+ makeUnary(module, BinaryenTruncSatZeroUVecF64x2ToVecI32x4(), v128),
+ makeUnary(module, BinaryenDemoteZeroVecF64x2ToVecF32x4(), v128),
+ makeUnary(module, BinaryenPromoteLowVecF32x4ToVecF64x2(), v128),
// Binary
makeBinary(module, BinaryenAddInt32(), i32),
makeBinary(module, BinaryenSubFloat64(), f64),
diff --git a/test/example/c-api-kitchen-sink.txt b/test/example/c-api-kitchen-sink.txt
index 54845f4cb..6f8eb575a 100644
--- a/test/example/c-api-kitchen-sink.txt
+++ b/test/example/c-api-kitchen-sink.txt
@@ -512,6 +512,36 @@ BinaryenFeatureAll: 8191
)
)
(drop
+ (f64x2.convert_low_i32x4_s
+ (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
+ )
+ )
+ (drop
+ (f64x2.convert_low_i32x4_u
+ (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
+ )
+ )
+ (drop
+ (i32x4.trunc_sat_f64x2_s_zero
+ (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
+ )
+ )
+ (drop
+ (i32x4.trunc_sat_f64x2_u_zero
+ (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
+ )
+ )
+ (drop
+ (f32x4.demote_f64x2_zero
+ (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
+ )
+ )
+ (drop
+ (f64x2.promote_low_f32x4
+ (v128.const i32x4 0x04030201 0x08070605 0x0c0b0a09 0x100f0e0d)
+ )
+ )
+ (drop
(i32.add
(i32.const -10)
(i32.const -11)