Skip to content

Commit 41dd915

Browse files
committed
Update 64x2 instructions
A poll was held at CG meeting today, the consensus was for Option 3 of WebAssembly#101. This means we have all the f64x2 instructions, and some of the more common i64x2 that have been benchmarked. This change reflects that option in the proposal text, binary text, and implementation status. Fixes WebAssembly#101.
1 parent 2a0eb82 commit 41dd915

File tree

3 files changed

+3
-6
lines changed

3 files changed

+3
-6
lines changed

proposals/simd/BinarySIMD.md

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -132,12 +132,11 @@ The `v8x16.shuffle` instruction has 16 bytes after `simdop`.
132132
| `i32x4.sub` | `0x7c`| - |
133133
| `i32x4.mul` | `0x7f`| - |
134134
| `i64x2.neg` | `0x84`| - |
135-
| `i64x2.any_true` | `0x85`| - |
136-
| `i64x2.all_true` | `0x86`| - |
137135
| `i64x2.shl` | `0x87`| - |
138136
| `i64x2.shr_s` | `0x88`| - |
139137
| `i64x2.shr_u` | `0x89`| - |
140138
| `i64x2.add` | `0x8a`| - |
139+
| `i64x2.mul` | `0x8c`| - |
141140
| `i64x2.sub` | `0x8d`| - |
142141
| `f32x4.abs` | `0x95`| - |
143142
| `f32x4.neg` | `0x96`| - |

proposals/simd/ImplementationStatus.md

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -110,13 +110,12 @@
110110
| `i32x4.sub` | `-msimd128` | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: |
111111
| `i32x4.mul` | `-msimd128` | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: |
112112
| `i64x2.neg` | `-munimplemented-simd128` | | :heavy_check_mark: | :heavy_check_mark: |
113-
| `i64x2.any_true` | `-munimplemented-simd128` | | :heavy_check_mark: | :heavy_check_mark: |
114-
| `i64x2.all_true` | `-munimplemented-simd128` | | :heavy_check_mark: | :heavy_check_mark: |
115113
| `i64x2.shl` | `-munimplemented-simd128` | | :heavy_check_mark: | :heavy_check_mark: |
116114
| `i64x2.shr_s` | `-munimplemented-simd128` | | :heavy_check_mark: | :heavy_check_mark: |
117115
| `i64x2.shr_u` | `-munimplemented-simd128` | | :heavy_check_mark: | :heavy_check_mark: |
118116
| `i64x2.add` | `-munimplemented-simd128` | | :heavy_check_mark: | :heavy_check_mark: |
119117
| `i64x2.sub` | `-munimplemented-simd128` | | :heavy_check_mark: | :heavy_check_mark: |
118+
| `i64x2.mul` | | :heavy_check_mark: | | |
120119
| `f32x4.abs` | `-msimd128` | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: |
121120
| `f32x4.neg` | `-msimd128` | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: |
122121
| `f32x4.sqrt` | `-munimplemented-simd128` | | :heavy_check_mark: | :heavy_check_mark: |

proposals/simd/SIMD.md

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -369,6 +369,7 @@ def S.sub(a, b):
369369
### Integer multiplication
370370
* `i16x8.mul(a: v128, b: v128) -> v128`
371371
* `i32x4.mul(a: v128, b: v128) -> v128`
372+
* `i64x2.mul(a: v128, b: v128) -> v128`
372373

373374
Lane-wise wrapping integer multiplication:
374375

@@ -548,7 +549,6 @@ These operations reduce all the lanes of an integer vector to a single scalar
548549
* `i8x16.any_true(a: v128) -> i32`
549550
* `i16x8.any_true(a: v128) -> i32`
550551
* `i32x4.any_true(a: v128) -> i32`
551-
* `i64x2.any_true(a: v128) -> i32`
552552

553553
These functions return 1 if any lane in `a` is non-zero, 0 otherwise.
554554

@@ -564,7 +564,6 @@ def S.any_true(a):
564564
* `i8x16.all_true(a: v128) -> i32`
565565
* `i16x8.all_true(a: v128) -> i32`
566566
* `i32x4.all_true(a: v128) -> i32`
567-
* `i64x2.all_true(a: v128) -> i32`
568567

569568
These functions return 1 if all lanes in `a` are non-zero, 0 otherwise.
570569

0 commit comments

Comments
 (0)