diff --git a/proposals/simd/BinarySIMD.md b/proposals/simd/BinarySIMD.md index 57971f165..6eb4f9940 100644 --- a/proposals/simd/BinarySIMD.md +++ b/proposals/simd/BinarySIMD.md @@ -191,6 +191,8 @@ For example, `ImmLaneIdx16` is a byte with values in the range 0-15 (inclusive). | `i64x2.add` | `0xce`| - | | `i64x2.sub` | `0xd1`| - | | `i64x2.mul` | `0xd5`| - | +| `i64x2.min_s` | `0xd6`| - | +| `i64x2.max_s` | `0xd8`| - | | `f32x4.ceil` | `0xd8`| - | | `f32x4.floor` | `0xd9`| - | | `f32x4.trunc` | `0xda`| - | diff --git a/proposals/simd/ImplementationStatus.md b/proposals/simd/ImplementationStatus.md index a2b18c992..40ae8c10f 100644 --- a/proposals/simd/ImplementationStatus.md +++ b/proposals/simd/ImplementationStatus.md @@ -160,6 +160,8 @@ | `i64x2.widen_high_i32x4_s` | | | | | | | `i64x2.widen_low_i32x4_u` | | | | | | | `i64x2.widen_high_i32x4_u` | | | | | | +| `i64x2.min_s` | | | | | | +| `i64x2.max_s` | | | | | | | `f32x4.abs` | `-msimd128` | :heavy_check_mark: | | :heavy_check_mark: | :heavy_check_mark: | | `f32x4.neg` | `-msimd128` | :heavy_check_mark: | | :heavy_check_mark: | :heavy_check_mark: | | `f32x4.sqrt` | `-msimd128` | :heavy_check_mark: | | :heavy_check_mark: | :heavy_check_mark: | diff --git a/proposals/simd/NewOpcodes.md b/proposals/simd/NewOpcodes.md index 8241be0f8..a33deaccf 100644 --- a/proposals/simd/NewOpcodes.md +++ b/proposals/simd/NewOpcodes.md @@ -102,9 +102,9 @@ | i8x16.sub_sat_u | 0x73 | i16x8.sub_sat_u | 0x93 | ---- sub_sat ---- | 0xb3 | ------------- | 0xd3 | | ------------- | 0x74 | ------------- | 0x94 | ------------- | 0xb4 | ------------- | 0xd4 | | ---- mul ---- | 0x75 | i16x8.mul | 0x95 | i32x4.mul | 0xb5 | i64x2.mul | 0xd5 | -| i8x16.min_s | 0x76 | i16x8.min_s | 0x96 | i32x4.min_s | 0xb6 | ------------- | 0xd6 | +| i8x16.min_s | 0x76 | i16x8.min_s | 0x96 | i32x4.min_s | 0xb6 | i64x2.min_s | 0xd6 | | i8x16.min_u | 0x77 | i16x8.min_u | 0x97 | i32x4.min_u | 0xb7 | ------------- | 0xd7 | -| i8x16.max_s | 0x78 | i16x8.max_s | 0x98 | i32x4.max_s | 0xb8 | ------------- | 0xd8 | +| i8x16.max_s | 0x78 | i16x8.max_s | 0x98 | i32x4.max_s | 0xb8 | i64x2.max_s | 0xd8 | | i8x16.max_u | 0x79 | i16x8.max_u | 0x99 | i32x4.max_u | 0xb9 | ------------- | 0xd9 | | ---------------- | 0x7a | ---------------- | 0x9a | i32x4.dot_i16x8_s | 0xba | ------------- | 0xda | | i8x16.avgr_u | 0x7b | i16x8.avgr_u | 0x9b | ---- avgr_u ---- | 0xbb | ------------- | 0xdb | diff --git a/proposals/simd/SIMD.md b/proposals/simd/SIMD.md index 24db53eb1..1354ff4c6 100644 --- a/proposals/simd/SIMD.md +++ b/proposals/simd/SIMD.md @@ -529,6 +529,7 @@ def S.q15mulr_sat_s(a, b): * `i16x8.min_u(a: v128, b: v128) -> v128` * `i32x4.min_s(a: v128, b: v128) -> v128` * `i32x4.min_u(a: v128, b: v128) -> v128` +* `i64x2.min_s(a: v128, b: v128) -> v128` Compares lane-wise signed/unsigned integers, and returns the minimum of each pair. @@ -545,6 +546,7 @@ def S.min(a, b): * `i16x8.max_u(a: v128, b: v128) -> v128` * `i32x4.max_s(a: v128, b: v128) -> v128` * `i32x4.max_u(a: v128, b: v128) -> v128` +* `i64x2.max_s(a: v128, b: v128) -> v128` Compares lane-wise signed/unsigned integers, and returns the maximum of each pair.