Skip to content
This repository was archived by the owner on Dec 22, 2021. It is now read-only.

Commit 6ff10c8

Browse files
committed
Add i64x2.bitmask to text
This was accepted into this proposal in #410.
1 parent 194b993 commit 6ff10c8

File tree

5 files changed

+6
-1
lines changed

5 files changed

+6
-1
lines changed

document/core/appendix/gen-index-instructions.py

+1
Original file line numberDiff line numberDiff line change
@@ -471,6 +471,7 @@ def Instruction(name, opcode, type=None, validation=None, execution=None, operat
471471
Instruction(r'\I32X4.\VMAX\K{\_s}', r'\hex{FD}~~184', r'[\V128~\V128] \to [\V128]', r'validation <valid-vbinop>', r'execution <exec-vbinop>', r'operator <op-imax_s>'),
472472
Instruction(r'\I32X4.\VMAX\K{\_u}', r'\hex{FD}~~185', r'[\V128~\V128] \to [\V128]', r'validation <valid-vbinop>', r'execution <exec-vbinop>', r'operator <op-imax_u>'),
473473
Instruction(r'\I64X2.\VNEG', r'\hex{FD}~~193', r'[\V128] \to [\V128]', r'validation <valid-vunop>', r'execution <exec-vunop>', r'operator <op-ineg>'),
474+
Instruction(r'\I64x2.\BITMASK', r'\hex{FD}~~196', r'[\V128] \to [\I32]', r'validation <valid-simd-bitmask>', r'execution <exec-simd-bitmask>'),
474475
Instruction(r'\I64X2.\VSHL', r'\hex{FD}~~203', r'[\V128~\I32] \to [\V128]', r'validation <valid-vshiftop>', r'execution <exec-vshiftop>', r'operator <op-ishl>'),
475476
Instruction(r'\I64X2.\VSHR\K{\_s}', r'\hex{FD}~~204', r'[\V128~\I32] \to [\V128]', r'validation <valid-vshiftop>', r'execution <exec-vshiftop>', r'operator <op-ishr_s>'),
476477
Instruction(r'\I64X2.\VSHR\K{\_u}', r'\hex{FD}~~205', r'[\V128~\I32] \to [\V128]', r'validation <valid-vshiftop>', r'execution <exec-vshiftop>', r'operator <op-ishr_u>'),

document/core/appendix/index-instructions.rst

+1
Original file line numberDiff line numberDiff line change
@@ -419,6 +419,7 @@ Instruction Binary Opcode Type
419419
:math:`\I32X4.\VMAX\K{\_s}` :math:`\hex{FD}~~184` :math:`[\V128~\V128] \to [\V128]` :ref:`validation <validation <valid-vbinop>>` :ref:`execution <execution <exec-vbinop>>`, :ref:`operator <operator <op-imax_s>>`
420420
:math:`\I32X4.\VMAX\K{\_u}` :math:`\hex{FD}~~185` :math:`[\V128~\V128] \to [\V128]` :ref:`validation <validation <valid-vbinop>>` :ref:`execution <execution <exec-vbinop>>`, :ref:`operator <operator <op-imax_u>>`
421421
:math:`\I64X2.\VNEG` :math:`\hex{FD}~~193` :math:`[\V128] \to [\V128]` :ref:`validation <validation <valid-vunop>>` :ref:`execution <execution <exec-vunop>>`, :ref:`operator <operator <op-ineg>>`
422+
:math:`\I64x2.\BITMASK` :math:`\hex{FD}~~196` :math:`[\V128] \to [\I32]` :ref:`validation <validation <valid-simd-bitmask>>` :ref:`execution <execution <exec-simd-bitmask>>`
422423
:math:`\I64X2.\VSHL` :math:`\hex{FD}~~203` :math:`[\V128~\I32] \to [\V128]` :ref:`validation <validation <valid-vshiftop>>` :ref:`execution <execution <exec-vshiftop>>`, :ref:`operator <operator <op-ishl>>`
423424
:math:`\I64X2.\VSHR\K{\_s}` :math:`\hex{FD}~~204` :math:`[\V128~\I32] \to [\V128]` :ref:`validation <validation <valid-vshiftop>>` :ref:`execution <execution <exec-vshiftop>>`, :ref:`operator <operator <op-ishr_s>>`
424425
:math:`\I64X2.\VSHR\K{\_u}` :math:`\hex{FD}~~205` :math:`[\V128~\I32] \to [\V128]` :ref:`validation <validation <valid-vshiftop>>` :ref:`execution <execution <exec-vshiftop>>`, :ref:`operator <operator <op-ishr_u>>`

document/core/binary/instructions.rst

+1
Original file line numberDiff line numberDiff line change
@@ -667,6 +667,7 @@ All other SIMD instructions are plain opcodes without any immediates.
667667
\begin{array}{llclll}
668668
\phantom{\production{instruction}} & \phantom{\Binstr} &\phantom{::=}& \phantom{\dots} && \phantom{simdhaslongerinstructionnames} \\[-2ex] &&|&
669669
\hex{FD}~~193{:}\Bu32 &\Rightarrow& \I64X2.\VNEG \\ &&|&
670+
\hex{FD}~~196{:}\Bu32 &\Rightarrow& \I64x2.\BITMASK \\ &&|&
670671
\hex{FD}~~203{:}\Bu32 &\Rightarrow& \I64X2.\VSHL \\ &&|&
671672
\hex{FD}~~204{:}\Bu32 &\Rightarrow& \I64X2.\VSHR\K{\_s} \\ &&|&
672673
\hex{FD}~~205{:}\Bu32 &\Rightarrow& \I64X2.\VSHR\K{\_u} \\ &&|&

document/core/syntax/instructions.rst

+2-1
Original file line numberDiff line numberDiff line change
@@ -232,7 +232,8 @@ SIMD instructions provide basic operations over :ref:`values <syntax-value>` of
232232
\K{i32x4.}\vitestop \\&&|&
233233
\K{i8x16.}\BITMASK ~|~
234234
\K{i16x8.}\BITMASK ~|~
235-
\K{i32x4.}\BITMASK \\&&|&
235+
\K{i32x4.}\BITMASK ~|~
236+
\K{i64x2.}\BITMASK \\&&|&
236237
\K{i8x16.}\NARROW\K{\_i16x8\_}\sx ~|~
237238
\K{i16x8.}\NARROW\K{\_i32x4\_}\sx \\&&|&
238239
\K{i16x8.}\WIDEN\K{\_low}\K{\_i8x16\_}\sx ~|~

document/core/text/instructions.rst

+1
Original file line numberDiff line numberDiff line change
@@ -701,6 +701,7 @@ SIMD const instructions have a mandatory :ref:`shape <syntax-simd-shape>` descri
701701
\begin{array}{llclll}
702702
\phantom{\production{instruction}} & \phantom{\Tplaininstr_I} &\phantom{::=}& \phantom{averylonginstructionnameforsimdtext} && \phantom{simdhasreallylonginstructionnames} \\[-2ex] &&|&
703703
\text{i64x2.neg} &\Rightarrow& \I64X2.\VNEG\\ &&|&
704+
\text{i64x2.bitmask} &\Rightarrow& \I64x2.\BITMASK\\ &&|&
704705
\text{i64x2.shl} &\Rightarrow& \I64X2.\VSHL\\ &&|&
705706
\text{i64x2.shr\_s} &\Rightarrow& \I64X2.\VSHR\K{\_s}\\ &&|&
706707
\text{i64x2.shr\_u} &\Rightarrow& \I64X2.\VSHR\K{\_u}\\ &&|&

0 commit comments

Comments
 (0)