From 0a41d36c1836dc5f1975719573fa26b95b063165 Mon Sep 17 00:00:00 2001 From: Marat Dukhan Date: Mon, 28 Dec 2020 16:39:33 -0800 Subject: [PATCH] i64x2.gt_u, i64x2.lt_u, i64x2.ge_u, and i64x2.le_u instructions --- proposals/simd/BinarySIMD.md | 6 +++++- proposals/simd/ImplementationStatus.md | 4 ++++ proposals/simd/SIMD.md | 4 ++++ 3 files changed, 13 insertions(+), 1 deletion(-) diff --git a/proposals/simd/BinarySIMD.md b/proposals/simd/BinarySIMD.md index 4bf69d7ea..0d2307d89 100644 --- a/proposals/simd/BinarySIMD.md +++ b/proposals/simd/BinarySIMD.md @@ -251,6 +251,10 @@ For example, `ImmLaneIdx16` is a byte with values in the range 0-15 (inclusive). | `v128.store64_lane` | `TBD`| m:memarg, i:ImmLaneIdx2 | | `i64x2.eq` | `TBD`| - | | `i64x2.ne` | `TBD`| - | +| `i64x2.lt_u` | `TBD`| - | +| `i64x2.gt_u` | `TBD`| - | +| `i64x2.le_u` | `TBD`| - | +| `i64x2.ge_u` | `TBD`| - | | `i64x2.all_true` | `TBD`| - | | `f64x2.convert_low_i32x4_s` | `TBD`| - | | `f64x2.convert_low_i32x4_u` | `TBD`| - | @@ -262,4 +266,4 @@ For example, `ImmLaneIdx16` is a byte with values in the range 0-15 (inclusive). | `i16x8.extadd_pairwise_i8x16_s` | `TBD`| - | | `i16x8.extadd_pairwise_i8x16_u` | `TBD`| - | | `i32x4.extadd_pairwise_i16x8_s` | `TBD`| - | -| `i32x4.extadd_pairwise_i16x8_u` | `TBD`| - | \ No newline at end of file +| `i32x4.extadd_pairwise_i16x8_u` | `TBD`| - | diff --git a/proposals/simd/ImplementationStatus.md b/proposals/simd/ImplementationStatus.md index 69451b313..0c8456d50 100644 --- a/proposals/simd/ImplementationStatus.md +++ b/proposals/simd/ImplementationStatus.md @@ -231,6 +231,10 @@ | `i16x8.extadd_pairwise_i8x16_u` | | | | | | | `i32x4.extadd_pairwise_i16x8_s` | | | | | | | `i32x4.extadd_pairwise_i16x8_u` | | | | | | +| `i64x2.lt_u` | | | | | | +| `i64x2.gt_u` | | | | | | +| `i64x2.le_u` | | | | | | +| `i64x2.ge_u` | | | | | | [1] Tip of tree LLVM as of May 20, 2020 diff --git a/proposals/simd/SIMD.md b/proposals/simd/SIMD.md index c189f3c62..181955eb4 100644 --- a/proposals/simd/SIMD.md +++ b/proposals/simd/SIMD.md @@ -787,6 +787,7 @@ def S.ne(a, b): * `i16x8.lt_u(a: v128, b: v128) -> v128` * `i32x4.lt_s(a: v128, b: v128) -> v128` * `i32x4.lt_u(a: v128, b: v128) -> v128` +* `i64x2.lt_u(a: v128, b: v128) -> v128` * `f32x4.lt(a: v128, b: v128) -> v128` * `f64x2.lt(a: v128, b: v128) -> v128` @@ -797,6 +798,7 @@ def S.ne(a, b): * `i16x8.le_u(a: v128, b: v128) -> v128` * `i32x4.le_s(a: v128, b: v128) -> v128` * `i32x4.le_u(a: v128, b: v128) -> v128` +* `i64x2.le_u(a: v128, b: v128) -> v128` * `f32x4.le(a: v128, b: v128) -> v128` * `f64x2.le(a: v128, b: v128) -> v128` @@ -807,6 +809,7 @@ def S.ne(a, b): * `i16x8.gt_u(a: v128, b: v128) -> v128` * `i32x4.gt_s(a: v128, b: v128) -> v128` * `i32x4.gt_u(a: v128, b: v128) -> v128` +* `i64x2.gt_u(a: v128, b: v128) -> v128` * `f32x4.gt(a: v128, b: v128) -> v128` * `f64x2.gt(a: v128, b: v128) -> v128` @@ -817,6 +820,7 @@ def S.ne(a, b): * `i16x8.ge_u(a: v128, b: v128) -> v128` * `i32x4.ge_s(a: v128, b: v128) -> v128` * `i32x4.ge_u(a: v128, b: v128) -> v128` +* `i64x2.ge_u(a: v128, b: v128) -> v128` * `f32x4.ge(a: v128, b: v128) -> v128` * `f64x2.ge(a: v128, b: v128) -> v128`