summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rw-r--r--test/simd.wast10
-rw-r--r--test/simd.wast.from-wast12
-rw-r--r--test/simd.wast.fromBinary12
-rw-r--r--test/simd.wast.fromBinary.noDebugInfo14
-rw-r--r--test/spec/simd.wast4
5 files changed, 48 insertions, 4 deletions
diff --git a/test/simd.wast b/test/simd.wast
index 7ee8760e1..619d1a577 100644
--- a/test/simd.wast
+++ b/test/simd.wast
@@ -1144,6 +1144,16 @@
(local.get $0)
)
)
+ (func $v128.load32_zero (param $0 i32) (result v128)
+ (v128.load32_zero
+ (local.get $0)
+ )
+ )
+ (func $v128.load64_zero (param $0 i32) (result v128)
+ (v128.load64_zero
+ (local.get $0)
+ )
+ )
(func $v8x16.swizzle (param $0 v128) (param $1 v128) (result v128)
(v8x16.swizzle
(local.get $0)
diff --git a/test/simd.wast.from-wast b/test/simd.wast.from-wast
index 508d44c7c..af57494e3 100644
--- a/test/simd.wast.from-wast
+++ b/test/simd.wast.from-wast
@@ -2,8 +2,8 @@
(type $v128_v128_=>_v128 (func (param v128 v128) (result v128)))
(type $v128_=>_v128 (func (param v128) (result v128)))
(type $v128_=>_i32 (func (param v128) (result i32)))
- (type $v128_i32_=>_v128 (func (param v128 i32) (result v128)))
(type $i32_=>_v128 (func (param i32) (result v128)))
+ (type $v128_i32_=>_v128 (func (param v128 i32) (result v128)))
(type $none_=>_v128 (func (result v128)))
(type $v128_v128_v128_=>_v128 (func (param v128 v128 v128) (result v128)))
(type $i32_v128_=>_none (func (param i32 v128)))
@@ -1160,6 +1160,16 @@
(local.get $0)
)
)
+ (func $v128.load32_zero (param $0 i32) (result v128)
+ (v128.load32_zero
+ (local.get $0)
+ )
+ )
+ (func $v128.load64_zero (param $0 i32) (result v128)
+ (v128.load64_zero
+ (local.get $0)
+ )
+ )
(func $v8x16.swizzle (param $0 v128) (param $1 v128) (result v128)
(v8x16.swizzle
(local.get $0)
diff --git a/test/simd.wast.fromBinary b/test/simd.wast.fromBinary
index d53376883..a56689449 100644
--- a/test/simd.wast.fromBinary
+++ b/test/simd.wast.fromBinary
@@ -2,8 +2,8 @@
(type $v128_v128_=>_v128 (func (param v128 v128) (result v128)))
(type $v128_=>_v128 (func (param v128) (result v128)))
(type $v128_=>_i32 (func (param v128) (result i32)))
- (type $v128_i32_=>_v128 (func (param v128 i32) (result v128)))
(type $i32_=>_v128 (func (param i32) (result v128)))
+ (type $v128_i32_=>_v128 (func (param v128 i32) (result v128)))
(type $none_=>_v128 (func (result v128)))
(type $v128_v128_v128_=>_v128 (func (param v128 v128 v128) (result v128)))
(type $i32_v128_=>_none (func (param i32 v128)))
@@ -1160,6 +1160,16 @@
(local.get $0)
)
)
+ (func $v128.load32_zero (param $0 i32) (result v128)
+ (v128.load32_zero
+ (local.get $0)
+ )
+ )
+ (func $v128.load64_zero (param $0 i32) (result v128)
+ (v128.load64_zero
+ (local.get $0)
+ )
+ )
(func $v8x16.swizzle (param $0 v128) (param $1 v128) (result v128)
(v8x16.swizzle
(local.get $0)
diff --git a/test/simd.wast.fromBinary.noDebugInfo b/test/simd.wast.fromBinary.noDebugInfo
index 474dfc7c5..c3bfb8a54 100644
--- a/test/simd.wast.fromBinary.noDebugInfo
+++ b/test/simd.wast.fromBinary.noDebugInfo
@@ -2,8 +2,8 @@
(type $v128_v128_=>_v128 (func (param v128 v128) (result v128)))
(type $v128_=>_v128 (func (param v128) (result v128)))
(type $v128_=>_i32 (func (param v128) (result i32)))
- (type $v128_i32_=>_v128 (func (param v128 i32) (result v128)))
(type $i32_=>_v128 (func (param i32) (result v128)))
+ (type $v128_i32_=>_v128 (func (param v128 i32) (result v128)))
(type $none_=>_v128 (func (result v128)))
(type $v128_v128_v128_=>_v128 (func (param v128 v128 v128) (result v128)))
(type $i32_v128_=>_none (func (param i32 v128)))
@@ -1160,7 +1160,17 @@
(local.get $0)
)
)
- (func $205 (param $0 v128) (param $1 v128) (result v128)
+ (func $205 (param $0 i32) (result v128)
+ (v128.load32_zero
+ (local.get $0)
+ )
+ )
+ (func $206 (param $0 i32) (result v128)
+ (v128.load64_zero
+ (local.get $0)
+ )
+ )
+ (func $207 (param $0 v128) (param $1 v128) (result v128)
(v8x16.swizzle
(local.get $0)
(local.get $1)
diff --git a/test/spec/simd.wast b/test/spec/simd.wast
index 4fe9c84e2..5cc34d305 100644
--- a/test/spec/simd.wast
+++ b/test/spec/simd.wast
@@ -232,6 +232,8 @@
(func (export "i32x4.load16x4_s") (param $0 i32) (result v128) (i32x4.load16x4_s (local.get $0)))
(func (export "i64x2.load32x2_u") (param $0 i32) (result v128) (i64x2.load32x2_u (local.get $0)))
(func (export "i64x2.load32x2_s") (param $0 i32) (result v128) (i64x2.load32x2_s (local.get $0)))
+ (func (export "v128.load32_zero") (param $0 i32) (result v128) (v128.load32_zero (local.get $0)))
+ (func (export "v128.load64_zero") (param $0 i32) (result v128) (v128.load64_zero (local.get $0)))
(func (export "v8x16.swizzle") (param $0 v128) (param $1 v128) (result v128) (v8x16.swizzle (local.get $0) (local.get $1)))
)
@@ -944,6 +946,8 @@
(assert_return (invoke "i32x4.load16x4_u" (i32.const 256)) (v128.const i32x4 0x00009080 0x0000b0a0 0x0000d0c0 0x0000f0e0))
(assert_return (invoke "i64x2.load32x2_s" (i32.const 256)) (v128.const i64x2 0xffffffffb0a09080 0xfffffffff0e0d0c0))
(assert_return (invoke "i64x2.load32x2_u" (i32.const 256)) (v128.const i64x2 0x00000000b0a09080 0x00000000f0e0d0c0))
+(assert_return (invoke "v128.load32_zero" (i32.const 256)) (v128.const i32x4 0xb0a09080 0 0 0))
+(assert_return (invoke "v128.load64_zero" (i32.const 256)) (v128.const i64x2 0xf0e0d0c0b0a09080 0))
(assert_return
(invoke "v8x16.swizzle"
(v128.const i8x16 0xf0 0xf1 0xf2 0xf3 0xf4 0xf5 0xf6 0xf7 0xf8 0xf9 0xfa 0xfb 0xfc 0xfd 0xfe 0xff)