Instructions

Instructions are encoded by opcodes. Each opcode is represented by a single byte, and is followed by the instruction’s immediate arguments, where present. The only exception are structured control instructions, which consist of several opcodes bracketing their nested instruction sequences.

Note

Gaps in the byte code ranges for encoding instructions are reserved for future extensions.

Control Instructions

Control instructions have varying encodings. For structured instructions, the instruction sequences forming nested blocks are delimited with explicit opcodes for \(\mathsf{end}\) and \(\mathsf{else}\).

Block types are encoded in special compressed form, by either the byte \(\mathtt{0x40}\) indicating the empty type, as a single value type, or as a type index encoded as a positive signed integer.

\[\begin{split}\begin{array}[t]{@{}l@{}rrl@{}l@{}l@{}l@{}} & {\href{../binary/instructions.html#binary-blocktype}{\mathtt{blocktype}}} & ::= & \mathtt{0x40} & \quad\Rightarrow\quad{} & \epsilon \\ & & | & t{:}{\href{../binary/types.html#binary-valtype}{\mathtt{valtype}}} & \quad\Rightarrow\quad{} & t \\ & & | & i{:}{\href{../binary/values.html#binary-int}{\def\mathdef1605#1{{\mathtt{s}#1}}\mathdef1605{\mathtt{33}}}} & \quad\Rightarrow\quad{} & i & \quad \mbox{if}~ i \geq 0 \\[0.8ex] & {\href{../binary/instructions.html#binary-instr}{\mathtt{instr}}} & ::= & \mathtt{0x00} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-control}{\mathsf{unreachable}} \\ & & | & \mathtt{0x01} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-control}{\mathsf{nop}} \\ & & | & \mathtt{0x02}~~{\mathit{bt}}{:}{\href{../binary/instructions.html#binary-blocktype}{\mathtt{blocktype}}}~~{({\mathit{in}}{:}{\href{../binary/instructions.html#binary-instr}{\mathtt{instr}}})^\ast}~~\mathtt{0x0B} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-control}{\mathsf{block}}~{\mathit{bt}}~{{\mathit{in}}^\ast} \\ & & | & \mathtt{0x03}~~{\mathit{bt}}{:}{\href{../binary/instructions.html#binary-blocktype}{\mathtt{blocktype}}}~~{({\mathit{in}}{:}{\href{../binary/instructions.html#binary-instr}{\mathtt{instr}}})^\ast}~~\mathtt{0x0B} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-control}{\mathsf{loop}}~{\mathit{bt}}~{{\mathit{in}}^\ast} \\ & & | & \mathtt{0x04}~~{\mathit{bt}}{:}{\href{../binary/instructions.html#binary-blocktype}{\mathtt{blocktype}}}~~{({\mathit{in}}{:}{\href{../binary/instructions.html#binary-instr}{\mathtt{instr}}})^\ast}~~\mathtt{0x0B} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-control}{\mathsf{if}}~{\mathit{bt}}~{{\mathit{in}}^\ast}~\href{../syntax/instructions.html#syntax-instr-control}{\mathsf{else}}~\epsilon \\ & & | & \mathtt{0x04}~~{\mathit{bt}}{:}{\href{../binary/instructions.html#binary-blocktype}{\mathtt{blocktype}}}~~{({\mathit{in}}_1{:}{\href{../binary/instructions.html#binary-instr}{\mathtt{instr}}})^\ast} \\ &&& \mathtt{0x05}~~{({\mathit{in}}_2{:}{\href{../binary/instructions.html#binary-instr}{\mathtt{instr}}})^\ast}~~\mathtt{0x0B} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-control}{\mathsf{if}}~{\mathit{bt}}~{{\mathit{in}}_1^\ast}~\href{../syntax/instructions.html#syntax-instr-control}{\mathsf{else}}~{{\mathit{in}}_2^\ast} \\ & & | & \mathtt{0x08}~~x{:}{\href{../binary/modules.html#binary-tagidx}{\mathtt{tagidx}}} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-control}{\mathsf{throw}}~x \\ & & | & \mathtt{0x0A} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-control}{\mathsf{throw\_ref}} \\ & & | & \mathtt{0x0C}~~l{:}{\href{../binary/modules.html#binary-labelidx}{\mathtt{labelidx}}} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-control}{\mathsf{br}}~l \\ & & | & \mathtt{0x0D}~~l{:}{\href{../binary/modules.html#binary-labelidx}{\mathtt{labelidx}}} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-control}{\mathsf{br\_if}}~l \\ & & | & \mathtt{0x0E}~~{l^\ast}{:}{\href{../binary/conventions.html#binary-list}{\mathtt{list}}}({\href{../binary/modules.html#binary-labelidx}{\mathtt{labelidx}}})~~l_n{:}{\href{../binary/modules.html#binary-labelidx}{\mathtt{labelidx}}} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-control}{\mathsf{br\_table}}~{l^\ast}~l_n \\ & & | & \mathtt{0x0F} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-control}{\mathsf{return}} \\ & & | & \mathtt{0x10}~~x{:}{\href{../binary/modules.html#binary-funcidx}{\mathtt{funcidx}}} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-control}{\mathsf{call}}~x \\ & & | & \mathtt{0x11}~~y{:}{\href{../binary/modules.html#binary-typeidx}{\mathtt{typeidx}}}~~x{:}{\href{../binary/modules.html#binary-tableidx}{\mathtt{tableidx}}} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-control}{\mathsf{call\_indirect}}~x~y \\ & & | & \mathtt{0x12}~~x{:}{\href{../binary/modules.html#binary-funcidx}{\mathtt{funcidx}}} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-control}{\mathsf{return\_call}}~x \\ & & | & \mathtt{0x13}~~y{:}{\href{../binary/modules.html#binary-typeidx}{\mathtt{typeidx}}}~~x{:}{\href{../binary/modules.html#binary-tableidx}{\mathtt{tableidx}}} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-control}{\mathsf{return\_call\_indirect}}~x~y \\ & & | & \mathtt{0x1F}~~{\mathit{bt}}{:}{\href{../binary/instructions.html#binary-blocktype}{\mathtt{blocktype}}}~~{c^\ast}{:}{\href{../binary/conventions.html#binary-list}{\mathtt{list}}}({\href{../binary/instructions.html#binary-catch}{\mathtt{catch}}})~~{({\mathit{in}}{:}{\href{../binary/instructions.html#binary-instr}{\mathtt{instr}}})^\ast}~~\mathtt{0x0B} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-control}{\mathsf{try\_table}}~{\mathit{bt}}~{c^\ast}~{{\mathit{in}}^\ast} \\ & & | & \dots \\[0.8ex] & {\href{../binary/instructions.html#binary-catch}{\mathtt{catch}}} & ::= & \mathtt{0x00}~~x{:}{\href{../binary/modules.html#binary-tagidx}{\mathtt{tagidx}}}~~l{:}{\href{../binary/modules.html#binary-labelidx}{\mathtt{labelidx}}} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-control}{\mathsf{catch}}~x~l \\ & & | & \mathtt{0x01}~~x{:}{\href{../binary/modules.html#binary-tagidx}{\mathtt{tagidx}}}~~l{:}{\href{../binary/modules.html#binary-labelidx}{\mathtt{labelidx}}} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-control}{\mathsf{catch\_ref}}~x~l \\ & & | & \mathtt{0x02}~~l{:}{\href{../binary/modules.html#binary-labelidx}{\mathtt{labelidx}}} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-control}{\mathsf{catch\_all}}~l \\ & & | & \mathtt{0x03}~~l{:}{\href{../binary/modules.html#binary-labelidx}{\mathtt{labelidx}}} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-control}{\mathsf{catch\_all\_ref}}~l \\ \end{array}\end{split}\]

Note

The \(\mathsf{else}\) opcode \(\mathtt{0x05}\) in the encoding of an \(\mathsf{if}\) instruction can be omitted if the following instruction sequence is empty.

Unlike any other occurrence, the type index in a block type is encoded as a positive signed integer, so that its signed LEB128 bit pattern cannot collide with the encoding of value types or the special code \(\mathtt{0x40}\), which correspond to the LEB128 encoding of negative integers. To avoid any loss in the range of allowed indices, it is treated as a 33 bit signed integer.

Reference Instructions

Generic reference instructions are represented by single byte codes, others use prefixes and type operands.

\[\begin{split}\begin{array}[t]{@{}l@{}rrl@{}l@{}l@{}l@{}} & {\href{../binary/instructions.html#binary-instr}{\mathtt{instr}}} & ::= & \dots \\ & & | & \mathtt{0xD0}~~{\mathit{ht}}{:}{\href{../binary/types.html#binary-heaptype}{\mathtt{heaptype}}} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-ref}{\mathsf{ref{.}null}}~{\mathit{ht}} \\ & & | & \mathtt{0xD1} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-ref}{\mathsf{ref{.}is\_null}} \\ & & | & \mathtt{0xD2}~~x{:}{\href{../binary/modules.html#binary-funcidx}{\mathtt{funcidx}}} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-ref}{\mathsf{ref{.}func}}~x \\ & & | & \mathtt{0xD3} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-ref}{\mathsf{ref{.}eq}} \\ & & | & \mathtt{0xD4} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-ref}{\mathsf{ref{.}as\_non\_null}} \\ & & | & \mathtt{0xD5}~~l{:}{\href{../binary/modules.html#binary-labelidx}{\mathtt{labelidx}}} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-control}{\mathsf{br\_on\_null}}~l \\ & & | & \mathtt{0xD6}~~l{:}{\href{../binary/modules.html#binary-labelidx}{\mathtt{labelidx}}} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-control}{\mathsf{br\_on\_non\_null}}~l \\ & & | & \mathtt{0xFB}~~0{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~x{:}{\href{../binary/modules.html#binary-typeidx}{\mathtt{typeidx}}} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-struct}{\mathsf{struct{.}new}}~x \\ & & | & \mathtt{0xFB}~~1{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~x{:}{\href{../binary/modules.html#binary-typeidx}{\mathtt{typeidx}}} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-struct}{\mathsf{struct{.}new\_default}}~x \\ & & | & \mathtt{0xFB}~~2{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~x{:}{\href{../binary/modules.html#binary-typeidx}{\mathtt{typeidx}}}~~i{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-struct}{\mathsf{struct{.}get}}~x~i \\ & & | & \mathtt{0xFB}~~3{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~x{:}{\href{../binary/modules.html#binary-typeidx}{\mathtt{typeidx}}}~~i{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/instructions.html#syntax-instr-struct}{\mathsf{struct{.}get}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}}~x~i \\ & & | & \mathtt{0xFB}~~4{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~x{:}{\href{../binary/modules.html#binary-typeidx}{\mathtt{typeidx}}}~~i{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/instructions.html#syntax-instr-struct}{\mathsf{struct{.}get}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}}~x~i \\ & & | & \mathtt{0xFB}~~5{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~x{:}{\href{../binary/modules.html#binary-typeidx}{\mathtt{typeidx}}}~~i{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-struct}{\mathsf{struct{.}set}}~x~i \\ & & | & \mathtt{0xFB}~~6{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~x{:}{\href{../binary/modules.html#binary-typeidx}{\mathtt{typeidx}}} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-array}{\mathsf{array{.}new}}~x \\ & & | & \mathtt{0xFB}~~7{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~x{:}{\href{../binary/modules.html#binary-typeidx}{\mathtt{typeidx}}} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-array}{\mathsf{array{.}new\_default}}~x \\ & & | & \mathtt{0xFB}~~8{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~x{:}{\href{../binary/modules.html#binary-typeidx}{\mathtt{typeidx}}}~~n{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-array}{\mathsf{array{.}new\_fixed}}~x~n \\ & & | & \mathtt{0xFB}~~9{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~x{:}{\href{../binary/modules.html#binary-typeidx}{\mathtt{typeidx}}}~~y{:}{\href{../binary/modules.html#binary-dataidx}{\mathtt{dataidx}}} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-array}{\mathsf{array{.}new\_data}}~x~y \\ & & | & \mathtt{0xFB}~~10{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~x{:}{\href{../binary/modules.html#binary-typeidx}{\mathtt{typeidx}}}~~y{:}{\href{../binary/modules.html#binary-elemidx}{\mathtt{elemidx}}} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-array}{\mathsf{array{.}new\_elem}}~x~y \\ & & | & \mathtt{0xFB}~~11{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~x{:}{\href{../binary/modules.html#binary-typeidx}{\mathtt{typeidx}}} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-array}{\mathsf{array{.}get}}~x \\ & & | & \mathtt{0xFB}~~12{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~x{:}{\href{../binary/modules.html#binary-typeidx}{\mathtt{typeidx}}} & \quad\Rightarrow\quad{} & {\href{../syntax/instructions.html#syntax-instr-array}{\mathsf{array{.}get}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}}~x \\ & & | & \mathtt{0xFB}~~13{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~x{:}{\href{../binary/modules.html#binary-typeidx}{\mathtt{typeidx}}} & \quad\Rightarrow\quad{} & {\href{../syntax/instructions.html#syntax-instr-array}{\mathsf{array{.}get}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}}~x \\ & & | & \mathtt{0xFB}~~14{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~x{:}{\href{../binary/modules.html#binary-typeidx}{\mathtt{typeidx}}} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-array}{\mathsf{array{.}set}}~x \\ & & | & \mathtt{0xFB}~~15{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-array}{\mathsf{array{.}len}} \\ & & | & \mathtt{0xFB}~~16{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~x{:}{\href{../binary/modules.html#binary-typeidx}{\mathtt{typeidx}}} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-array}{\mathsf{array{.}fill}}~x \\ & & | & \mathtt{0xFB}~~17{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~x_1{:}{\href{../binary/modules.html#binary-typeidx}{\mathtt{typeidx}}}~~x_2{:}{\href{../binary/modules.html#binary-typeidx}{\mathtt{typeidx}}} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-array}{\mathsf{array{.}copy}}~x_1~x_2 \\ & & | & \mathtt{0xFB}~~18{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~x{:}{\href{../binary/modules.html#binary-typeidx}{\mathtt{typeidx}}}~~y{:}{\href{../binary/modules.html#binary-dataidx}{\mathtt{dataidx}}} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-array}{\mathsf{array{.}init\_data}}~x~y \\ & & | & \mathtt{0xFB}~~19{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~x{:}{\href{../binary/modules.html#binary-typeidx}{\mathtt{typeidx}}}~~y{:}{\href{../binary/modules.html#binary-elemidx}{\mathtt{elemidx}}} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-array}{\mathsf{array{.}init\_elem}}~x~y \\ & & | & \mathtt{0xFB}~~20{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~{\mathit{ht}}{:}{\href{../binary/types.html#binary-heaptype}{\mathtt{heaptype}}} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-ref}{\mathsf{ref{.}test}}~(\href{../syntax/types.html#syntax-reftype}{\mathsf{ref}}~{\mathit{ht}}) \\ & & | & \mathtt{0xFB}~~21{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~{\mathit{ht}}{:}{\href{../binary/types.html#binary-heaptype}{\mathtt{heaptype}}} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-ref}{\mathsf{ref{.}test}}~(\href{../syntax/types.html#syntax-reftype}{\mathsf{ref}}~\href{../syntax/types.html#syntax-reftype}{\mathsf{null}}~{\mathit{ht}}) \\ & & | & \mathtt{0xFB}~~22{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~{\mathit{ht}}{:}{\href{../binary/types.html#binary-heaptype}{\mathtt{heaptype}}} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-ref}{\mathsf{ref{.}cast}}~(\href{../syntax/types.html#syntax-reftype}{\mathsf{ref}}~{\mathit{ht}}) \\ & & | & \mathtt{0xFB}~~23{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~{\mathit{ht}}{:}{\href{../binary/types.html#binary-heaptype}{\mathtt{heaptype}}} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-ref}{\mathsf{ref{.}cast}}~(\href{../syntax/types.html#syntax-reftype}{\mathsf{ref}}~\href{../syntax/types.html#syntax-reftype}{\mathsf{null}}~{\mathit{ht}}) \\ & & | & \mathtt{0xFB}~~24{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~({\href{../syntax/types.html#syntax-reftype}{\mathsf{null}}}{{{}_{1}^?}}, {\href{../syntax/types.html#syntax-reftype}{\mathsf{null}}}{{{}_{2}^?}}){:}{\href{../binary/instructions.html#binary-castop}{\mathtt{castop}}} \\ &&& l{:}{\href{../binary/modules.html#binary-labelidx}{\mathtt{labelidx}}}~~{\mathit{ht}}_1{:}{\href{../binary/types.html#binary-heaptype}{\mathtt{heaptype}}}~~{\mathit{ht}}_2{:}{\href{../binary/types.html#binary-heaptype}{\mathtt{heaptype}}} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-control}{\mathsf{br\_on\_cast}}~l~(\href{../syntax/types.html#syntax-reftype}{\mathsf{ref}}~{\href{../syntax/types.html#syntax-reftype}{\mathsf{null}}}{{{}_{1}^?}}~{\mathit{ht}}_1)~(\href{../syntax/types.html#syntax-reftype}{\mathsf{ref}}~{\href{../syntax/types.html#syntax-reftype}{\mathsf{null}}}{{{}_{2}^?}}~{\mathit{ht}}_2) \\ & & | & \mathtt{0xFB}~~25{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~({\href{../syntax/types.html#syntax-reftype}{\mathsf{null}}}{{{}_{1}^?}}, {\href{../syntax/types.html#syntax-reftype}{\mathsf{null}}}{{{}_{2}^?}}){:}{\href{../binary/instructions.html#binary-castop}{\mathtt{castop}}} \\ &&& l{:}{\href{../binary/modules.html#binary-labelidx}{\mathtt{labelidx}}}~~{\mathit{ht}}_1{:}{\href{../binary/types.html#binary-heaptype}{\mathtt{heaptype}}}~~{\mathit{ht}}_2{:}{\href{../binary/types.html#binary-heaptype}{\mathtt{heaptype}}} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-control}{\mathsf{br\_on\_cast\_fail}}~l~(\href{../syntax/types.html#syntax-reftype}{\mathsf{ref}}~{\href{../syntax/types.html#syntax-reftype}{\mathsf{null}}}{{{}_{1}^?}}~{\mathit{ht}}_1)~(\href{../syntax/types.html#syntax-reftype}{\mathsf{ref}}~{\href{../syntax/types.html#syntax-reftype}{\mathsf{null}}}{{{}_{2}^?}}~{\mathit{ht}}_2) \\ & & | & \mathtt{0xFB}~~26{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-extern}{\mathsf{any{.}convert\_extern}} \\ & & | & \mathtt{0xFB}~~27{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-extern}{\mathsf{extern{.}convert\_any}} \\ & & | & \mathtt{0xFB}~~28{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-i31}{\mathsf{ref{.}i\scriptstyle31}} \\ & & | & \mathtt{0xFB}~~29{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/instructions.html#syntax-instr-i31}{\mathsf{i{\scriptstyle31}{.}get}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}} \\ & & | & \mathtt{0xFB}~~30{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/instructions.html#syntax-instr-i31}{\mathsf{i{\scriptstyle31}{.}get}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}} \\ & & | & \dots \\[0.8ex] & {\href{../binary/instructions.html#binary-castop}{\mathtt{castop}}} & ::= & \mathtt{0x00} & \quad\Rightarrow\quad{} & (\epsilon, \epsilon) \\ & & | & \mathtt{0x01} & \quad\Rightarrow\quad{} & (\href{../syntax/types.html#syntax-reftype}{\mathsf{null}}, \epsilon) \\ & & | & \mathtt{0x02} & \quad\Rightarrow\quad{} & (\epsilon, \href{../syntax/types.html#syntax-reftype}{\mathsf{null}}) \\ & & | & \mathtt{0x03} & \quad\Rightarrow\quad{} & (\href{../syntax/types.html#syntax-reftype}{\mathsf{null}}, \href{../syntax/types.html#syntax-reftype}{\mathsf{null}}) \\ \end{array}\end{split}\]

Parametric Instructions

Parametric instructions are represented by single byte codes, possibly followed by a type annotation.

\[\begin{split}\begin{array}[t]{@{}l@{}rrl@{}l@{}l@{}l@{}} & {\href{../binary/instructions.html#binary-instr}{\mathtt{instr}}} & ::= & \dots \\ & & | & \mathtt{0x1A} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-parametric}{\mathsf{drop}} \\ & & | & \mathtt{0x1B} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-parametric}{\mathsf{select}} \\ & & | & \mathtt{0x1C}~~{\mathit{ts}}{:}{\href{../binary/conventions.html#binary-list}{\mathtt{list}}}({\href{../binary/types.html#binary-valtype}{\mathtt{valtype}}}) & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-parametric}{\mathsf{select}}~{\mathit{ts}} \\ & & | & \dots \\ \end{array}\end{split}\]

Variable Instructions

Variable instructions are represented by byte codes followed by the encoding of the respective index.

\[\begin{split}\begin{array}[t]{@{}l@{}rrl@{}l@{}l@{}l@{}} & {\href{../binary/instructions.html#binary-instr}{\mathtt{instr}}} & ::= & \dots \\ & & | & \mathtt{0x20}~~x{:}{\href{../binary/modules.html#binary-localidx}{\mathtt{localidx}}} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-variable}{\mathsf{local{.}get}}~x \\ & & | & \mathtt{0x21}~~x{:}{\href{../binary/modules.html#binary-localidx}{\mathtt{localidx}}} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-variable}{\mathsf{local{.}set}}~x \\ & & | & \mathtt{0x22}~~x{:}{\href{../binary/modules.html#binary-localidx}{\mathtt{localidx}}} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-variable}{\mathsf{local{.}tee}}~x \\ & & | & \mathtt{0x23}~~x{:}{\href{../binary/modules.html#binary-globalidx}{\mathtt{globalidx}}} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-variable}{\mathsf{global{.}get}}~x \\ & & | & \mathtt{0x24}~~x{:}{\href{../binary/modules.html#binary-globalidx}{\mathtt{globalidx}}} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-variable}{\mathsf{global{.}set}}~x \\ & & | & \dots \\ \end{array}\end{split}\]

Table Instructions

Table instructions are represented either by a single byte or a one byte prefix followed by a variable-length unsigned integer.

\[\begin{split}\begin{array}[t]{@{}l@{}rrl@{}l@{}l@{}l@{}} & {\href{../binary/instructions.html#binary-instr}{\mathtt{instr}}} & ::= & \dots \\ & & | & \mathtt{0x25}~~x{:}{\href{../binary/modules.html#binary-tableidx}{\mathtt{tableidx}}} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-table}{\mathsf{table{.}get}}~x \\ & & | & \mathtt{0x26}~~x{:}{\href{../binary/modules.html#binary-tableidx}{\mathtt{tableidx}}} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-table}{\mathsf{table{.}set}}~x \\ & & | & \mathtt{0xFC}~~12{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~y{:}{\href{../binary/modules.html#binary-elemidx}{\mathtt{elemidx}}}~~x{:}{\href{../binary/modules.html#binary-tableidx}{\mathtt{tableidx}}} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-table}{\mathsf{table{.}init}}~x~y \\ & & | & \mathtt{0xFC}~~13{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~x{:}{\href{../binary/modules.html#binary-elemidx}{\mathtt{elemidx}}} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-table}{\mathsf{elem{.}drop}}~x \\ & & | & \mathtt{0xFC}~~14{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~x_1{:}{\href{../binary/modules.html#binary-tableidx}{\mathtt{tableidx}}}~~x_2{:}{\href{../binary/modules.html#binary-tableidx}{\mathtt{tableidx}}} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-table}{\mathsf{table{.}copy}}~x_1~x_2 \\ & & | & \mathtt{0xFC}~~15{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~x{:}{\href{../binary/modules.html#binary-tableidx}{\mathtt{tableidx}}} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-table}{\mathsf{table{.}grow}}~x \\ & & | & \mathtt{0xFC}~~16{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~x{:}{\href{../binary/modules.html#binary-tableidx}{\mathtt{tableidx}}} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-table}{\mathsf{table{.}size}}~x \\ & & | & \mathtt{0xFC}~~17{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~x{:}{\href{../binary/modules.html#binary-tableidx}{\mathtt{tableidx}}} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-table}{\mathsf{table{.}fill}}~x \\ & & | & \dots \\ \end{array}\end{split}\]

Memory Instructions

Each variant of memory instruction is encoded with a different byte code. Loads and stores are followed by the encoding of their \(\href{../syntax/instructions.html#syntax-memarg}{\mathit{memarg}}\) immediate, which includes the memory index if bit 6 of the flags field containing alignment is set; the memory index defaults to 0 otherwise.

\[\begin{split}\begin{array}[t]{@{}l@{}rrl@{}l@{}l@{}l@{}} & {\href{../binary/instructions.html#binary-memarg}{\mathtt{memarg}}} & ::= & n{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~m{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & (0, \{ \begin{array}[t]{@{}l@{}} \href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{align}}~n,\; \href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{offset}}~m \}\end{array}) & \quad \mbox{if}~ n < {2^{6}} \\ & & | & n{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~x{:}{\href{../binary/modules.html#binary-memidx}{\mathtt{memidx}}}~~m{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & (x, \{ \begin{array}[t]{@{}l@{}} \href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{align}}~(n - {2^{6}}),\; \href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{offset}}~m \}\end{array}) & \quad \mbox{if}~ {2^{6}} \leq n < {2^{7}} \\[0.8ex] & {\href{../binary/instructions.html#binary-instr}{\mathtt{instr}}} & ::= & \dots \\ & & | & \mathtt{0x28}~~(x, {\mathit{ao}}){:}{\href{../binary/instructions.html#binary-memarg}{\mathtt{memarg}}} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}{.}\href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{load}}~x~{\mathit{ao}} \\ & & | & \mathtt{0x29}~~(x, {\mathit{ao}}){:}{\href{../binary/instructions.html#binary-memarg}{\mathtt{memarg}}} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}}{.}\href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{load}}~x~{\mathit{ao}} \\ & & | & \mathtt{0x2A}~~(x, {\mathit{ao}}){:}{\href{../binary/instructions.html#binary-memarg}{\mathtt{memarg}}} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}}{.}\href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{load}}~x~{\mathit{ao}} \\ & & | & \mathtt{0x2B}~~(x, {\mathit{ao}}){:}{\href{../binary/instructions.html#binary-memarg}{\mathtt{memarg}}} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}}{.}\href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{load}}~x~{\mathit{ao}} \\ & & | & \mathtt{0x2C}~~(x, {\mathit{ao}}){:}{\href{../binary/instructions.html#binary-memarg}{\mathtt{memarg}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}{.}\href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{load}}}{\mathsf{{\scriptstyle 8}}~\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}}~x~{\mathit{ao}} \\ & & | & \mathtt{0x2D}~~(x, {\mathit{ao}}){:}{\href{../binary/instructions.html#binary-memarg}{\mathtt{memarg}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}{.}\href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{load}}}{\mathsf{{\scriptstyle 8}}~\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}}~x~{\mathit{ao}} \\ & & | & \mathtt{0x2E}~~(x, {\mathit{ao}}){:}{\href{../binary/instructions.html#binary-memarg}{\mathtt{memarg}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}{.}\href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{load}}}{\mathsf{{\scriptstyle 16}}~\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}}~x~{\mathit{ao}} \\ & & | & \mathtt{0x2F}~~(x, {\mathit{ao}}){:}{\href{../binary/instructions.html#binary-memarg}{\mathtt{memarg}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}{.}\href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{load}}}{\mathsf{{\scriptstyle 16}}~\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}}~x~{\mathit{ao}} \\ & & | & \mathtt{0x30}~~(x, {\mathit{ao}}){:}{\href{../binary/instructions.html#binary-memarg}{\mathtt{memarg}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}}{.}\href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{load}}}{\mathsf{{\scriptstyle 8}}~\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}}~x~{\mathit{ao}} \\ & & | & \mathtt{0x31}~~(x, {\mathit{ao}}){:}{\href{../binary/instructions.html#binary-memarg}{\mathtt{memarg}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}}{.}\href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{load}}}{\mathsf{{\scriptstyle 8}}~\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}}~x~{\mathit{ao}} \\ & & | & \mathtt{0x32}~~(x, {\mathit{ao}}){:}{\href{../binary/instructions.html#binary-memarg}{\mathtt{memarg}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}}{.}\href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{load}}}{\mathsf{{\scriptstyle 16}}~\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}}~x~{\mathit{ao}} \\ & & | & \mathtt{0x33}~~(x, {\mathit{ao}}){:}{\href{../binary/instructions.html#binary-memarg}{\mathtt{memarg}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}}{.}\href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{load}}}{\mathsf{{\scriptstyle 16}}~\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}}~x~{\mathit{ao}} \\ & & | & \mathtt{0x34}~~(x, {\mathit{ao}}){:}{\href{../binary/instructions.html#binary-memarg}{\mathtt{memarg}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}}{.}\href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{load}}}{\mathsf{{\scriptstyle 32}}~\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}}~x~{\mathit{ao}} \\ & & | & \mathtt{0x35}~~(x, {\mathit{ao}}){:}{\href{../binary/instructions.html#binary-memarg}{\mathtt{memarg}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}}{.}\href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{load}}}{\mathsf{{\scriptstyle 32}}~\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}}~x~{\mathit{ao}} \\ & & | & \mathtt{0x36}~~(x, {\mathit{ao}}){:}{\href{../binary/instructions.html#binary-memarg}{\mathtt{memarg}}} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}{.}\href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{store}}~x~{\mathit{ao}} \\ & & | & \mathtt{0x37}~~(x, {\mathit{ao}}){:}{\href{../binary/instructions.html#binary-memarg}{\mathtt{memarg}}} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}}{.}\href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{store}}~x~{\mathit{ao}} \\ & & | & \mathtt{0x38}~~(x, {\mathit{ao}}){:}{\href{../binary/instructions.html#binary-memarg}{\mathtt{memarg}}} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}}{.}\href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{store}}~x~{\mathit{ao}} \\ & & | & \mathtt{0x39}~~(x, {\mathit{ao}}){:}{\href{../binary/instructions.html#binary-memarg}{\mathtt{memarg}}} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}}{.}\href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{store}}~x~{\mathit{ao}} \\ & & | & \mathtt{0x3A}~~(x, {\mathit{ao}}){:}{\href{../binary/instructions.html#binary-memarg}{\mathtt{memarg}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}{.}\href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{store}}}{\mathsf{{\scriptstyle 8}}}~x~{\mathit{ao}} \\ & & | & \mathtt{0x3B}~~(x, {\mathit{ao}}){:}{\href{../binary/instructions.html#binary-memarg}{\mathtt{memarg}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}{.}\href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{store}}}{\mathsf{{\scriptstyle 16}}}~x~{\mathit{ao}} \\ & & | & \mathtt{0x3C}~~(x, {\mathit{ao}}){:}{\href{../binary/instructions.html#binary-memarg}{\mathtt{memarg}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}}{.}\href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{store}}}{\mathsf{{\scriptstyle 8}}}~x~{\mathit{ao}} \\ & & | & \mathtt{0x3D}~~(x, {\mathit{ao}}){:}{\href{../binary/instructions.html#binary-memarg}{\mathtt{memarg}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}}{.}\href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{store}}}{\mathsf{{\scriptstyle 16}}}~x~{\mathit{ao}} \\ & & | & \mathtt{0x3E}~~(x, {\mathit{ao}}){:}{\href{../binary/instructions.html#binary-memarg}{\mathtt{memarg}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}}{.}\href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{store}}}{\mathsf{{\scriptstyle 32}}}~x~{\mathit{ao}} \\ & & | & \mathtt{0x3F}~~x{:}{\href{../binary/modules.html#binary-memidx}{\mathtt{memidx}}} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{memory{.}size}}~x \\ & & | & \mathtt{0x40}~~x{:}{\href{../binary/modules.html#binary-memidx}{\mathtt{memidx}}} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{memory{.}grow}}~x \\ & & | & \mathtt{0xFC}~~8{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~y{:}{\href{../binary/modules.html#binary-dataidx}{\mathtt{dataidx}}}~~x{:}{\href{../binary/modules.html#binary-memidx}{\mathtt{memidx}}} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{memory{.}init}}~x~y \\ & & | & \mathtt{0xFC}~~9{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~x{:}{\href{../binary/modules.html#binary-dataidx}{\mathtt{dataidx}}} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{data{.}drop}}~x \\ & & | & \mathtt{0xFC}~~10{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~x_1{:}{\href{../binary/modules.html#binary-memidx}{\mathtt{memidx}}}~~x_2{:}{\href{../binary/modules.html#binary-memidx}{\mathtt{memidx}}} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{memory{.}copy}}~x_1~x_2 \\ & & | & \mathtt{0xFC}~~11{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~x{:}{\href{../binary/modules.html#binary-memidx}{\mathtt{memidx}}} & \quad\Rightarrow\quad{} & \href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{memory{.}fill}}~x \\ & & | & \dots \\ \end{array}\end{split}\]

Numeric Instructions

All variants of numeric instructions are represented by separate byte codes.

The \(\mathsf{const}\) instructions are followed by the respective literal.

\[\begin{split}\begin{array}[t]{@{}l@{}rrl@{}l@{}l@{}l@{}} & {\href{../binary/instructions.html#binary-instr}{\mathtt{instr}}} & ::= & \dots \\ & & | & \mathtt{0x41}~~n{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}{.}\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{const}}~n \\ & & | & \mathtt{0x42}~~n{:}{\href{../binary/values.html#binary-int}{\def\mathdef1600#1{{\mathtt{u}#1}}\mathdef1600{\mathtt{64}}}} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}}{.}\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{const}}~n \\ & & | & \mathtt{0x43}~~p{:}{\href{../binary/values.html#binary-float}{\def\mathdef1613#1{{\mathtt{f}#1}}\mathdef1613{\mathtt{32}}}} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}}{.}\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{const}}~p \\ & & | & \mathtt{0x44}~~p{:}{\href{../binary/values.html#binary-float}{\def\mathdef1614#1{{\mathtt{f}#1}}\mathdef1614{\mathtt{64}}}} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}}{.}\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{const}}~p \\ & & | & \dots \\ \end{array}\end{split}\]

All other numeric instructions are plain opcodes without any immediates.

\[\begin{split}\begin{array}[t]{@{}l@{}rrl@{}l@{}l@{}l@{}} & {\href{../binary/instructions.html#binary-instr}{\mathtt{instr}}} & ::= & \dots \\ & & | & \mathtt{0x45} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{eqz}} \\ & & | & \mathtt{0x46} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{eq}} \\ & & | & \mathtt{0x47} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{ne}} \\ & & | & \mathtt{0x48} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}} {.} {\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{lt}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}} \\ & & | & \mathtt{0x49} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}} {.} {\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{lt}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}} \\ & & | & \mathtt{0x4A} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}} {.} {\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{gt}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}} \\ & & | & \mathtt{0x4B} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}} {.} {\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{gt}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}} \\ & & | & \mathtt{0x4C} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}} {.} {\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{le}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}} \\ & & | & \mathtt{0x4D} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}} {.} {\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{le}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}} \\ & & | & \mathtt{0x4E} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}} {.} {\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{ge}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}} \\ & & | & \mathtt{0x4F} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}} {.} {\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{ge}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}} \\ & & | & \mathtt{0x50} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{eqz}} \\ & & | & \mathtt{0x51} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{eq}} \\ & & | & \mathtt{0x52} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{ne}} \\ & & | & \mathtt{0x53} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}} {.} {\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{lt}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}} \\ & & | & \mathtt{0x54} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}} {.} {\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{lt}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}} \\ & & | & \mathtt{0x55} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}} {.} {\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{gt}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}} \\ & & | & \mathtt{0x56} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}} {.} {\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{gt}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}} \\ & & | & \mathtt{0x57} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}} {.} {\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{le}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}} \\ & & | & \mathtt{0x58} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}} {.} {\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{le}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}} \\ & & | & \mathtt{0x59} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}} {.} {\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{ge}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}} \\ & & | & \mathtt{0x5A} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}} {.} {\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{ge}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}} \\ & & | & \dots \\ \end{array}\end{split}\]
\[\begin{split}\begin{array}[t]{@{}l@{}rrl@{}l@{}l@{}l@{}} & {\href{../binary/instructions.html#binary-instr}{\mathtt{instr}}} & ::= & \dots \\ & & | & \mathtt{0x5B} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{eq}} \\ & & | & \mathtt{0x5C} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{ne}} \\ & & | & \mathtt{0x5D} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{lt}} \\ & & | & \mathtt{0x5E} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{gt}} \\ & & | & \mathtt{0x5F} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{le}} \\ & & | & \mathtt{0x60} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{ge}} \\ & & | & \mathtt{0x61} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{eq}} \\ & & | & \mathtt{0x62} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{ne}} \\ & & | & \mathtt{0x63} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{lt}} \\ & & | & \mathtt{0x64} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{gt}} \\ & & | & \mathtt{0x65} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{le}} \\ & & | & \mathtt{0x66} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{ge}} \\ & & | & \dots \\ \end{array}\end{split}\]
\[\begin{split}\begin{array}[t]{@{}l@{}rrl@{}l@{}l@{}l@{}} & {\href{../binary/instructions.html#binary-instr}{\mathtt{instr}}} & ::= & \dots \\ & & | & \mathtt{0x67} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{clz}} \\ & & | & \mathtt{0x68} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{ctz}} \\ & & | & \mathtt{0x69} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{popcnt}} \\ & & | & \mathtt{0x6A} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{add}} \\ & & | & \mathtt{0x6B} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{sub}} \\ & & | & \mathtt{0x6C} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{mul}} \\ & & | & \mathtt{0x6D} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}} {.} {\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{div}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}} \\ & & | & \mathtt{0x6E} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}} {.} {\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{div}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}} \\ & & | & \mathtt{0x6F} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}} {.} {\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{rem}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}} \\ & & | & \mathtt{0x70} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}} {.} {\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{rem}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}} \\ & & | & \mathtt{0x71} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{and}} \\ & & | & \mathtt{0x72} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{or}} \\ & & | & \mathtt{0x73} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{xor}} \\ & & | & \mathtt{0x74} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{shl}} \\ & & | & \mathtt{0x75} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}} {.} {\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{shr}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}} \\ & & | & \mathtt{0x76} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}} {.} {\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{shr}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}} \\ & & | & \mathtt{0x77} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{rotl}} \\ & & | & \mathtt{0x78} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{rotr}} \\ & & | & \mathtt{0x79} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{clz}} \\ & & | & \mathtt{0x7A} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{ctz}} \\ & & | & \mathtt{0x7B} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{popcnt}} \\ & & | & \mathtt{0x7C} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{add}} \\ & & | & \mathtt{0x7D} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{sub}} \\ & & | & \mathtt{0x7E} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{mul}} \\ & & | & \mathtt{0x7F} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}} {.} {\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{div}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}} \\ & & | & \mathtt{0x80} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}} {.} {\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{div}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}} \\ & & | & \mathtt{0x81} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}} {.} {\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{rem}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}} \\ & & | & \mathtt{0x82} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}} {.} {\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{rem}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}} \\ & & | & \mathtt{0x83} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{and}} \\ & & | & \mathtt{0x84} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{or}} \\ & & | & \mathtt{0x85} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{xor}} \\ & & | & \mathtt{0x86} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{shl}} \\ & & | & \mathtt{0x87} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}} {.} {\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{shr}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}} \\ & & | & \mathtt{0x88} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}} {.} {\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{shr}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}} \\ & & | & \mathtt{0x89} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{rotl}} \\ & & | & \mathtt{0x8A} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{rotr}} \\ & & | & \dots \\ \end{array}\end{split}\]
\[\begin{split}\begin{array}[t]{@{}l@{}rrl@{}l@{}l@{}l@{}} & {\href{../binary/instructions.html#binary-instr}{\mathtt{instr}}} & ::= & \dots \\ & & | & \mathtt{0x8B} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{abs}} \\ & & | & \mathtt{0x8C} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{neg}} \\ & & | & \mathtt{0x8D} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{ceil}} \\ & & | & \mathtt{0x8E} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{floor}} \\ & & | & \mathtt{0x8F} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{trunc}} \\ & & | & \mathtt{0x90} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{nearest}} \\ & & | & \mathtt{0x91} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{sqrt}} \\ & & | & \mathtt{0x92} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{add}} \\ & & | & \mathtt{0x93} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{sub}} \\ & & | & \mathtt{0x94} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{mul}} \\ & & | & \mathtt{0x95} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{div}} \\ & & | & \mathtt{0x96} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{min}} \\ & & | & \mathtt{0x97} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{max}} \\ & & | & \mathtt{0x98} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{copysign}} \\ & & | & \mathtt{0x99} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{abs}} \\ & & | & \mathtt{0x9A} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{neg}} \\ & & | & \mathtt{0x9B} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{ceil}} \\ & & | & \mathtt{0x9C} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{floor}} \\ & & | & \mathtt{0x9D} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{trunc}} \\ & & | & \mathtt{0x9E} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{nearest}} \\ & & | & \mathtt{0x9F} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{sqrt}} \\ & & | & \mathtt{0xA0} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{add}} \\ & & | & \mathtt{0xA1} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{sub}} \\ & & | & \mathtt{0xA2} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{mul}} \\ & & | & \mathtt{0xA3} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{div}} \\ & & | & \mathtt{0xA4} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{min}} \\ & & | & \mathtt{0xA5} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{max}} \\ & & | & \mathtt{0xA6} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}} {.} \href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{copysign}} \\ & & | & \dots \\ \end{array}\end{split}\]
\[\begin{split}\begin{array}[t]{@{}l@{}rrl@{}l@{}l@{}l@{}} & {\href{../binary/instructions.html#binary-instr}{\mathtt{instr}}} & ::= & \dots \\ & & | & \mathtt{0xA7} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}} {.} {\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{wrap}}}{\mathsf{\_}}{\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}}} \\ & & | & \mathtt{0xA8} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}} {.} {{\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{trunc}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}}}{\mathsf{\_}}{\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}}} \\ & & | & \mathtt{0xA9} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}} {.} {{\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{trunc}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}}}{\mathsf{\_}}{\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}}} \\ & & | & \mathtt{0xAA} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}} {.} {{\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{trunc}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}}}{\mathsf{\_}}{\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}}} \\ & & | & \mathtt{0xAB} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}} {.} {{\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{trunc}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}}}{\mathsf{\_}}{\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}}} \\ & & | & \mathtt{0xAC} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}} {.} {{\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{extend}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}}}{\mathsf{\_}}{\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}} \\ & & | & \mathtt{0xAD} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}} {.} {{\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{extend}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}}}{\mathsf{\_}}{\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}} \\ & & | & \mathtt{0xAE} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}} {.} {{\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{trunc}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}}}{\mathsf{\_}}{\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}}} \\ & & | & \mathtt{0xAF} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}} {.} {{\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{trunc}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}}}{\mathsf{\_}}{\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}}} \\ & & | & \mathtt{0xB0} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}} {.} {{\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{trunc}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}}}{\mathsf{\_}}{\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}}} \\ & & | & \mathtt{0xB1} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}} {.} {{\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{trunc}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}}}{\mathsf{\_}}{\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}}} \\ & & | & \mathtt{0xB2} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}} {.} {{\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{convert}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}}}{\mathsf{\_}}{\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}} \\ & & | & \mathtt{0xB3} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}} {.} {{\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{convert}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}}}{\mathsf{\_}}{\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}} \\ & & | & \mathtt{0xB4} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}} {.} {{\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{convert}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}}}{\mathsf{\_}}{\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}}} \\ & & | & \mathtt{0xB5} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}} {.} {{\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{convert}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}}}{\mathsf{\_}}{\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}}} \\ & & | & \mathtt{0xB6} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}} {.} {\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{demote}}}{\mathsf{\_}}{\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}}} \\ & & | & \mathtt{0xB7} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}} {.} {{\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{convert}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}}}{\mathsf{\_}}{\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}} \\ & & | & \mathtt{0xB8} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}} {.} {{\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{convert}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}}}{\mathsf{\_}}{\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}} \\ & & | & \mathtt{0xB9} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}} {.} {{\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{convert}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}}}{\mathsf{\_}}{\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}}} \\ & & | & \mathtt{0xBA} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}} {.} {{\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{convert}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}}}{\mathsf{\_}}{\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}}} \\ & & | & \mathtt{0xBB} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}} {.} {\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{promote}}}{\mathsf{\_}}{\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}}} \\ & & | & \mathtt{0xBC} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}} {.} {\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{reinterpret}}}{\mathsf{\_}}{\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}}} \\ & & | & \mathtt{0xBD} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}} {.} {\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{reinterpret}}}{\mathsf{\_}}{\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}}} \\ & & | & \mathtt{0xBE} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}} {.} {\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{reinterpret}}}{\mathsf{\_}}{\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}} \\ & & | & \mathtt{0xBF} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}} {.} {\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{reinterpret}}}{\mathsf{\_}}{\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}}} \\ & & | & \dots \\ \end{array}\end{split}\]
\[\begin{split}\begin{array}[t]{@{}l@{}rrl@{}l@{}l@{}l@{}} & {\href{../binary/instructions.html#binary-instr}{\mathtt{instr}}} & ::= & \dots \\ & & | & \mathtt{0xC0} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}} {.} {\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{extend}}}{\mathsf{{\scriptstyle 8}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}} \\ & & | & \mathtt{0xC1} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}} {.} {\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{extend}}}{\mathsf{{\scriptstyle 16}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}} \\ & & | & \mathtt{0xC2} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}} {.} {\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{extend}}}{\mathsf{{\scriptstyle 8}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}} \\ & & | & \mathtt{0xC3} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}} {.} {\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{extend}}}{\mathsf{{\scriptstyle 16}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}} \\ & & | & \mathtt{0xC4} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}} {.} {\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{extend}}}{\mathsf{{\scriptstyle 32}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}} \\ & & | & \dots \\ \end{array}\end{split}\]

The saturating truncation instructions all have a one byte prefix, whereas the actual opcode is encoded by a variable-length unsigned integer.

\[\begin{split}\begin{array}[t]{@{}l@{}rrl@{}l@{}l@{}l@{}} & {\href{../binary/instructions.html#binary-instr}{\mathtt{instr}}} & ::= & \dots \\ & & | & \mathtt{0xFC}~~0{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}} {.} {{\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{trunc\_sat}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}}}{\mathsf{\_}}{\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}}} \\ & & | & \mathtt{0xFC}~~1{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}} {.} {{\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{trunc\_sat}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}}}{\mathsf{\_}}{\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}}} \\ & & | & \mathtt{0xFC}~~2{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}} {.} {{\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{trunc\_sat}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}}}{\mathsf{\_}}{\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}}} \\ & & | & \mathtt{0xFC}~~3{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}} {.} {{\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{trunc\_sat}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}}}{\mathsf{\_}}{\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}}} \\ & & | & \mathtt{0xFC}~~4{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}} {.} {{\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{trunc\_sat}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}}}{\mathsf{\_}}{\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}}} \\ & & | & \mathtt{0xFC}~~5{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}} {.} {{\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{trunc\_sat}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}}}{\mathsf{\_}}{\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}}} \\ & & | & \mathtt{0xFC}~~6{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}} {.} {{\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{trunc\_sat}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}}}{\mathsf{\_}}{\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}}} \\ & & | & \mathtt{0xFC}~~7{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}} {.} {{\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{trunc\_sat}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}}}{\mathsf{\_}}{\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}}} \\ & & | & \dots \\ \end{array}\end{split}\]

Vector Instructions

All variants of vector instructions are represented by separate byte codes. They all have a one byte prefix, whereas the actual opcode is encoded by a variable-length unsigned integer.

Vector loads and stores are followed by the encoding of their \({\href{../syntax/instructions.html#syntax-memarg}{\mathit{memarg}}}\) immediate.

\[\begin{split}\begin{array}[t]{@{}l@{}rrl@{}l@{}l@{}l@{}} & {\href{../binary/instructions.html#binary-laneidx}{\mathtt{laneidx}}} & ::= & l{:}{\href{../binary/values.html#binary-byte}{\mathtt{byte}}} & \quad\Rightarrow\quad{} & l \\[0.8ex] & {\href{../binary/instructions.html#binary-instr}{\mathtt{instr}}} & ::= & \dots \\ & & | & \mathtt{0xFD}~~0{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~(x, {\mathit{ao}}){:}{\href{../binary/instructions.html#binary-memarg}{\mathtt{memarg}}} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-vectype}{\mathsf{v\scriptstyle128}}{.}\href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{load}}~x~{\mathit{ao}} \\ & & | & \mathtt{0xFD}~~1{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~(x, {\mathit{ao}}){:}{\href{../binary/instructions.html#binary-memarg}{\mathtt{memarg}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-vectype}{\mathsf{v\scriptstyle128}}{.}\href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{load}}}{{\mathsf{{\scriptstyle 8}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 8}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}}}~x~{\mathit{ao}} \\ & & | & \mathtt{0xFD}~~2{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~(x, {\mathit{ao}}){:}{\href{../binary/instructions.html#binary-memarg}{\mathtt{memarg}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-vectype}{\mathsf{v\scriptstyle128}}{.}\href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{load}}}{{\mathsf{{\scriptstyle 8}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 8}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}}}~x~{\mathit{ao}} \\ & & | & \mathtt{0xFD}~~3{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~(x, {\mathit{ao}}){:}{\href{../binary/instructions.html#binary-memarg}{\mathtt{memarg}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-vectype}{\mathsf{v\scriptstyle128}}{.}\href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{load}}}{{\mathsf{{\scriptstyle 16}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}}}~x~{\mathit{ao}} \\ & & | & \mathtt{0xFD}~~4{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~(x, {\mathit{ao}}){:}{\href{../binary/instructions.html#binary-memarg}{\mathtt{memarg}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-vectype}{\mathsf{v\scriptstyle128}}{.}\href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{load}}}{{\mathsf{{\scriptstyle 16}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}}}~x~{\mathit{ao}} \\ & & | & \mathtt{0xFD}~~5{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~(x, {\mathit{ao}}){:}{\href{../binary/instructions.html#binary-memarg}{\mathtt{memarg}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-vectype}{\mathsf{v\scriptstyle128}}{.}\href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{load}}}{{\mathsf{{\scriptstyle 32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 2}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}}}~x~{\mathit{ao}} \\ & & | & \mathtt{0xFD}~~6{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~(x, {\mathit{ao}}){:}{\href{../binary/instructions.html#binary-memarg}{\mathtt{memarg}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-vectype}{\mathsf{v\scriptstyle128}}{.}\href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{load}}}{{\mathsf{{\scriptstyle 32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 2}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}}}~x~{\mathit{ao}} \\ & & | & \mathtt{0xFD}~~7{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~(x, {\mathit{ao}}){:}{\href{../binary/instructions.html#binary-memarg}{\mathtt{memarg}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-vectype}{\mathsf{v\scriptstyle128}}{.}\href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{load}}}{{\mathsf{{\scriptstyle 8}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{splat}}}}~x~{\mathit{ao}} \\ & & | & \mathtt{0xFD}~~8{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~(x, {\mathit{ao}}){:}{\href{../binary/instructions.html#binary-memarg}{\mathtt{memarg}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-vectype}{\mathsf{v\scriptstyle128}}{.}\href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{load}}}{{\mathsf{{\scriptstyle 16}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{splat}}}}~x~{\mathit{ao}} \\ & & | & \mathtt{0xFD}~~9{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~(x, {\mathit{ao}}){:}{\href{../binary/instructions.html#binary-memarg}{\mathtt{memarg}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-vectype}{\mathsf{v\scriptstyle128}}{.}\href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{load}}}{{\mathsf{{\scriptstyle 32}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{splat}}}}~x~{\mathit{ao}} \\ & & | & \mathtt{0xFD}~~10{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~(x, {\mathit{ao}}){:}{\href{../binary/instructions.html#binary-memarg}{\mathtt{memarg}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-vectype}{\mathsf{v\scriptstyle128}}{.}\href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{load}}}{{\mathsf{{\scriptstyle 64}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{splat}}}}~x~{\mathit{ao}} \\ & & | & \mathtt{0xFD}~~11{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~(x, {\mathit{ao}}){:}{\href{../binary/instructions.html#binary-memarg}{\mathtt{memarg}}} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-vectype}{\mathsf{v\scriptstyle128}}{.}\href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{store}}~x~{\mathit{ao}} \\ & & | & \mathtt{0xFD}~~84{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~(x, {\mathit{ao}}){:}{\href{../binary/instructions.html#binary-memarg}{\mathtt{memarg}}}~~l{:}{\href{../binary/instructions.html#binary-laneidx}{\mathtt{laneidx}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-vectype}{\mathsf{v\scriptstyle128}}{.}\href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{load}}}{\mathsf{{\scriptstyle 8}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{lane}}}~x~{\mathit{ao}}~l \\ & & | & \mathtt{0xFD}~~85{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~(x, {\mathit{ao}}){:}{\href{../binary/instructions.html#binary-memarg}{\mathtt{memarg}}}~~l{:}{\href{../binary/instructions.html#binary-laneidx}{\mathtt{laneidx}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-vectype}{\mathsf{v\scriptstyle128}}{.}\href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{load}}}{\mathsf{{\scriptstyle 16}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{lane}}}~x~{\mathit{ao}}~l \\ & & | & \mathtt{0xFD}~~86{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~(x, {\mathit{ao}}){:}{\href{../binary/instructions.html#binary-memarg}{\mathtt{memarg}}}~~l{:}{\href{../binary/instructions.html#binary-laneidx}{\mathtt{laneidx}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-vectype}{\mathsf{v\scriptstyle128}}{.}\href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{load}}}{\mathsf{{\scriptstyle 32}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{lane}}}~x~{\mathit{ao}}~l \\ & & | & \mathtt{0xFD}~~87{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~(x, {\mathit{ao}}){:}{\href{../binary/instructions.html#binary-memarg}{\mathtt{memarg}}}~~l{:}{\href{../binary/instructions.html#binary-laneidx}{\mathtt{laneidx}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-vectype}{\mathsf{v\scriptstyle128}}{.}\href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{load}}}{\mathsf{{\scriptstyle 64}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{lane}}}~x~{\mathit{ao}}~l \\ & & | & \mathtt{0xFD}~~88{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~(x, {\mathit{ao}}){:}{\href{../binary/instructions.html#binary-memarg}{\mathtt{memarg}}}~~l{:}{\href{../binary/instructions.html#binary-laneidx}{\mathtt{laneidx}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-vectype}{\mathsf{v\scriptstyle128}}{.}\href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{store}}}{\mathsf{{\scriptstyle 8}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{lane}}}~x~{\mathit{ao}}~l \\ & & | & \mathtt{0xFD}~~89{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~(x, {\mathit{ao}}){:}{\href{../binary/instructions.html#binary-memarg}{\mathtt{memarg}}}~~l{:}{\href{../binary/instructions.html#binary-laneidx}{\mathtt{laneidx}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-vectype}{\mathsf{v\scriptstyle128}}{.}\href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{store}}}{\mathsf{{\scriptstyle 16}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{lane}}}~x~{\mathit{ao}}~l \\ & & | & \mathtt{0xFD}~~90{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~(x, {\mathit{ao}}){:}{\href{../binary/instructions.html#binary-memarg}{\mathtt{memarg}}}~~l{:}{\href{../binary/instructions.html#binary-laneidx}{\mathtt{laneidx}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-vectype}{\mathsf{v\scriptstyle128}}{.}\href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{store}}}{\mathsf{{\scriptstyle 32}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{lane}}}~x~{\mathit{ao}}~l \\ & & | & \mathtt{0xFD}~~91{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~(x, {\mathit{ao}}){:}{\href{../binary/instructions.html#binary-memarg}{\mathtt{memarg}}}~~l{:}{\href{../binary/instructions.html#binary-laneidx}{\mathtt{laneidx}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-vectype}{\mathsf{v\scriptstyle128}}{.}\href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{store}}}{\mathsf{{\scriptstyle 64}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{lane}}}~x~{\mathit{ao}}~l \\ & & | & \mathtt{0xFD}~~92{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~(x, {\mathit{ao}}){:}{\href{../binary/instructions.html#binary-memarg}{\mathtt{memarg}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-vectype}{\mathsf{v\scriptstyle128}}{.}\href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{load}}}{{\mathsf{{\scriptstyle 32}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{zero}}}}~x~{\mathit{ao}} \\ & & | & \mathtt{0xFD}~~93{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~(x, {\mathit{ao}}){:}{\href{../binary/instructions.html#binary-memarg}{\mathtt{memarg}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-vectype}{\mathsf{v\scriptstyle128}}{.}\href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{load}}}{{\mathsf{{\scriptstyle 64}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-instr-memory}{\mathsf{zero}}}}~x~{\mathit{ao}} \\ & & | & \dots \\ \end{array}\end{split}\]

The \(\mathsf{const}\) instruction for vectors is followed by 16 immediate bytes, which are converted into an \({\mathit{i{\kern-0.1em\scriptstyle 128}}}\) in \(\href{../exec/numerics.html#aux-littleendian}{\mathrm{littleendian}}\) byte order:

\[\begin{split}\begin{array}[t]{@{}l@{}rrl@{}l@{}l@{}l@{}} & {\href{../binary/instructions.html#binary-instr}{\mathtt{instr}}} & ::= & \dots \\ & & | & \mathtt{0xFD}~~12{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~{(b{:}{\href{../binary/values.html#binary-byte}{\mathtt{byte}}})^{16}} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-vectype}{\mathsf{v\scriptstyle128}}{.}\href{../syntax/instructions.html#syntax-instr-numeric}{\mathsf{const}}~{{{{\href{../exec/numerics.html#aux-bytes}{\mathrm{bytes}}}}_{{\href{../syntax/types.html#syntax-numtype}{\mathsf{i}}}{\mathsf{{\scriptstyle 128}}}}^{{-1}}}}{({(b)^{16}})} \\ & & | & \dots \\ \end{array}\end{split}\]

The \(\mathsf{shuffle}\) instruction is also followed by the encoding of 16 \({\href{../syntax/instructions.html#syntax-laneidx}{\mathit{laneidx}}}\) immediates.

\[\begin{split}\begin{array}[t]{@{}l@{}rrl@{}l@{}l@{}l@{}} & {\href{../binary/instructions.html#binary-instr}{\mathtt{instr}}} & ::= & \dots \\ & & | & \mathtt{0xFD}~~13{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~{(l{:}{\href{../binary/instructions.html#binary-laneidx}{\mathtt{laneidx}}})^{16}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle8}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 16}}}{.}\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{shuffle}}~l \\ & & | & \mathtt{0xFD}~~14{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle8}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 16}}}{.}\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{swizzle}} \\ & & | & \dots \\ \end{array}\end{split}\]

Lane instructions are followed by the encoding of a \({\href{../syntax/instructions.html#syntax-laneidx}{\mathit{laneidx}}}\) immediate.

\[\begin{split}\begin{array}[t]{@{}l@{}rrl@{}l@{}l@{}l@{}} & {\href{../binary/instructions.html#binary-instr}{\mathtt{instr}}} & ::= & \dots \\ & & | & \mathtt{0xFD}~~21{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~l{:}{\href{../binary/instructions.html#binary-laneidx}{\mathtt{laneidx}}} & \quad\Rightarrow\quad{} & {{\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle8}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 16}}}{.}\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{extract\_lane}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}}~l \\ & & | & \mathtt{0xFD}~~22{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~l{:}{\href{../binary/instructions.html#binary-laneidx}{\mathtt{laneidx}}} & \quad\Rightarrow\quad{} & {{\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle8}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 16}}}{.}\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{extract\_lane}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}}~l \\ & & | & \mathtt{0xFD}~~23{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~l{:}{\href{../binary/instructions.html#binary-laneidx}{\mathtt{laneidx}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle8}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 16}}}{.}\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{replace\_lane}}~l \\ & & | & \mathtt{0xFD}~~24{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~l{:}{\href{../binary/instructions.html#binary-laneidx}{\mathtt{laneidx}}} & \quad\Rightarrow\quad{} & {{\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle16}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 8}}}{.}\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{extract\_lane}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}}~l \\ & & | & \mathtt{0xFD}~~25{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~l{:}{\href{../binary/instructions.html#binary-laneidx}{\mathtt{laneidx}}} & \quad\Rightarrow\quad{} & {{\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle16}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 8}}}{.}\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{extract\_lane}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}}~l \\ & & | & \mathtt{0xFD}~~26{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~l{:}{\href{../binary/instructions.html#binary-laneidx}{\mathtt{laneidx}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle16}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 8}}}{.}\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{replace\_lane}}~l \\ & & | & \mathtt{0xFD}~~27{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~l{:}{\href{../binary/instructions.html#binary-laneidx}{\mathtt{laneidx}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}}{.}\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{extract\_lane}}~l \\ & & | & \mathtt{0xFD}~~28{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~l{:}{\href{../binary/instructions.html#binary-laneidx}{\mathtt{laneidx}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}}{.}\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{replace\_lane}}~l \\ & & | & \mathtt{0xFD}~~29{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~l{:}{\href{../binary/instructions.html#binary-laneidx}{\mathtt{laneidx}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 2}}}{.}\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{extract\_lane}}~l \\ & & | & \mathtt{0xFD}~~30{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~l{:}{\href{../binary/instructions.html#binary-laneidx}{\mathtt{laneidx}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 2}}}{.}\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{replace\_lane}}~l \\ & & | & \mathtt{0xFD}~~31{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~l{:}{\href{../binary/instructions.html#binary-laneidx}{\mathtt{laneidx}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}}{.}\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{extract\_lane}}~l \\ & & | & \mathtt{0xFD}~~32{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~l{:}{\href{../binary/instructions.html#binary-laneidx}{\mathtt{laneidx}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}}{.}\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{replace\_lane}}~l \\ & & | & \mathtt{0xFD}~~33{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~l{:}{\href{../binary/instructions.html#binary-laneidx}{\mathtt{laneidx}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 2}}}{.}\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{extract\_lane}}~l \\ & & | & \mathtt{0xFD}~~34{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}}~~l{:}{\href{../binary/instructions.html#binary-laneidx}{\mathtt{laneidx}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 2}}}{.}\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{replace\_lane}}~l \\ & & | & \dots \\ \end{array}\end{split}\]

All other vector instructions are plain opcodes without any immediates.

\[\begin{split}\begin{array}[t]{@{}l@{}rrl@{}l@{}l@{}l@{}} & {\href{../binary/instructions.html#binary-instr}{\mathtt{instr}}} & ::= & \dots \\ & & | & \mathtt{0xFD}~~15{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle8}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 16}}}{.}\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{splat}} \\ & & | & \mathtt{0xFD}~~16{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle16}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 8}}}{.}\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{splat}} \\ & & | & \mathtt{0xFD}~~17{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}}{.}\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{splat}} \\ & & | & \mathtt{0xFD}~~18{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 2}}}{.}\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{splat}} \\ & & | & \mathtt{0xFD}~~19{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}}{.}\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{splat}} \\ & & | & \mathtt{0xFD}~~20{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 2}}}{.}\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{splat}} \\ & & | & \dots \\ \end{array}\end{split}\]
\[\begin{split}\begin{array}[t]{@{}l@{}rrl@{}l@{}l@{}l@{}} & {\href{../binary/instructions.html#binary-instr}{\mathtt{instr}}} & ::= & \dots \\ & & | & \mathtt{0xFD}~~35{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle8}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 16}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{eq}} \\ & & | & \mathtt{0xFD}~~36{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle8}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 16}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{ne}} \\ & & | & \mathtt{0xFD}~~37{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle8}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 16}}} {.} {\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{lt}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}} \\ & & | & \mathtt{0xFD}~~38{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle8}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 16}}} {.} {\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{lt}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}} \\ & & | & \mathtt{0xFD}~~39{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle8}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 16}}} {.} {\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{gt}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}} \\ & & | & \mathtt{0xFD}~~40{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle8}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 16}}} {.} {\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{gt}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}} \\ & & | & \mathtt{0xFD}~~41{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle8}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 16}}} {.} {\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{le}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}} \\ & & | & \mathtt{0xFD}~~42{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle8}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 16}}} {.} {\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{le}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}} \\ & & | & \mathtt{0xFD}~~43{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle8}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 16}}} {.} {\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{ge}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}} \\ & & | & \mathtt{0xFD}~~44{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle8}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 16}}} {.} {\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{ge}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}} \\ & & | & \mathtt{0xFD}~~45{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle16}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 8}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{eq}} \\ & & | & \mathtt{0xFD}~~46{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle16}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 8}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{ne}} \\ & & | & \mathtt{0xFD}~~47{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle16}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 8}}} {.} {\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{lt}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}} \\ & & | & \mathtt{0xFD}~~48{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle16}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 8}}} {.} {\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{lt}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}} \\ & & | & \mathtt{0xFD}~~49{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle16}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 8}}} {.} {\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{gt}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}} \\ & & | & \mathtt{0xFD}~~50{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle16}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 8}}} {.} {\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{gt}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}} \\ & & | & \mathtt{0xFD}~~51{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle16}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 8}}} {.} {\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{le}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}} \\ & & | & \mathtt{0xFD}~~52{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle16}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 8}}} {.} {\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{le}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}} \\ & & | & \mathtt{0xFD}~~53{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle16}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 8}}} {.} {\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{ge}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}} \\ & & | & \mathtt{0xFD}~~54{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle16}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 8}}} {.} {\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{ge}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}} \\ & & | & \mathtt{0xFD}~~55{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{eq}} \\ & & | & \mathtt{0xFD}~~56{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{ne}} \\ & & | & \mathtt{0xFD}~~57{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}} {.} {\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{lt}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}} \\ & & | & \mathtt{0xFD}~~58{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}} {.} {\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{lt}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}} \\ & & | & \mathtt{0xFD}~~59{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}} {.} {\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{gt}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}} \\ & & | & \mathtt{0xFD}~~60{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}} {.} {\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{gt}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}} \\ & & | & \mathtt{0xFD}~~61{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}} {.} {\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{le}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}} \\ & & | & \mathtt{0xFD}~~62{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}} {.} {\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{le}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}} \\ & & | & \mathtt{0xFD}~~63{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}} {.} {\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{ge}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}} \\ & & | & \mathtt{0xFD}~~64{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}} {.} {\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{ge}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}} \\ & & | & \mathtt{0xFD}~~214{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 2}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{eq}} \\ & & | & \mathtt{0xFD}~~215{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 2}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{ne}} \\ & & | & \mathtt{0xFD}~~216{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 2}}} {.} {\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{lt}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}} \\ & & | & \mathtt{0xFD}~~217{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 2}}} {.} {\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{gt}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}} \\ & & | & \mathtt{0xFD}~~218{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 2}}} {.} {\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{le}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}} \\ & & | & \mathtt{0xFD}~~219{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 2}}} {.} {\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{ge}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}} \\ & & | & \dots \\ \end{array}\end{split}\]
\[\begin{split}\begin{array}[t]{@{}l@{}rrl@{}l@{}l@{}l@{}} & {\href{../binary/instructions.html#binary-instr}{\mathtt{instr}}} & ::= & \dots \\ & & | & \mathtt{0xFD}~~65{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{eq}} \\ & & | & \mathtt{0xFD}~~66{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{ne}} \\ & & | & \mathtt{0xFD}~~67{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{lt}} \\ & & | & \mathtt{0xFD}~~68{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{gt}} \\ & & | & \mathtt{0xFD}~~69{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{le}} \\ & & | & \mathtt{0xFD}~~70{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{ge}} \\ & & | & \mathtt{0xFD}~~71{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 2}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{eq}} \\ & & | & \mathtt{0xFD}~~72{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 2}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{ne}} \\ & & | & \mathtt{0xFD}~~73{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 2}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{lt}} \\ & & | & \mathtt{0xFD}~~74{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 2}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{gt}} \\ & & | & \mathtt{0xFD}~~75{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 2}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{le}} \\ & & | & \mathtt{0xFD}~~76{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 2}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{ge}} \\ & & | & \dots \\ \end{array}\end{split}\]
\[\begin{split}\begin{array}[t]{@{}l@{}rrl@{}l@{}l@{}l@{}} & {\href{../binary/instructions.html#binary-instr}{\mathtt{instr}}} & ::= & \dots \\ & & | & \mathtt{0xFD}~~77{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-vectype}{\mathsf{v\scriptstyle128}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{not}} \\ & & | & \mathtt{0xFD}~~78{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-vectype}{\mathsf{v\scriptstyle128}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{and}} \\ & & | & \mathtt{0xFD}~~79{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-vectype}{\mathsf{v\scriptstyle128}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{andnot}} \\ & & | & \mathtt{0xFD}~~80{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-vectype}{\mathsf{v\scriptstyle128}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{or}} \\ & & | & \mathtt{0xFD}~~81{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-vectype}{\mathsf{v\scriptstyle128}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{xor}} \\ & & | & \mathtt{0xFD}~~82{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-vectype}{\mathsf{v\scriptstyle128}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{bitselect}} \\ & & | & \mathtt{0xFD}~~83{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & \href{../syntax/types.html#syntax-vectype}{\mathsf{v\scriptstyle128}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{any\_true}} \\ & & | & \dots \\ \end{array}\end{split}\]
\[\begin{split}\begin{array}[t]{@{}l@{}rrl@{}l@{}l@{}l@{}} & {\href{../binary/instructions.html#binary-instr}{\mathtt{instr}}} & ::= & \dots \\ & & | & \mathtt{0xFD}~~96{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle8}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 16}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{abs}} \\ & & | & \mathtt{0xFD}~~97{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle8}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 16}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{neg}} \\ & & | & \mathtt{0xFD}~~98{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle8}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 16}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{popcnt}} \\ & & | & \mathtt{0xFD}~~99{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle8}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 16}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{all\_true}} \\ & & | & \mathtt{0xFD}~~100{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle8}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 16}}}{.}\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{bitmask}} \\ & & | & \mathtt{0xFD}~~101{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {{\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle8}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 16}}}{.}\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{narrow}}}{\mathsf{\_}}{{\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle16}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 8}}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}} \\ & & | & \mathtt{0xFD}~~102{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {{\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle8}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 16}}}{.}\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{narrow}}}{\mathsf{\_}}{{\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle16}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 8}}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}} \\ & & | & \mathtt{0xFD}~~107{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle8}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 16}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{shl}} \\ & & | & \mathtt{0xFD}~~108{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle8}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 16}}} {.} {\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{shr}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}} \\ & & | & \mathtt{0xFD}~~109{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle8}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 16}}} {.} {\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{shr}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}} \\ & & | & \mathtt{0xFD}~~110{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle8}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 16}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{add}} \\ & & | & \mathtt{0xFD}~~111{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle8}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 16}}} {.} {\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{add\_sat}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}} \\ & & | & \mathtt{0xFD}~~112{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle8}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 16}}} {.} {\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{add\_sat}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}} \\ & & | & \mathtt{0xFD}~~113{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle8}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 16}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{sub}} \\ & & | & \mathtt{0xFD}~~114{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle8}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 16}}} {.} {\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{sub\_sat}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}} \\ & & | & \mathtt{0xFD}~~115{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle8}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 16}}} {.} {\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{sub\_sat}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}} \\ & & | & \mathtt{0xFD}~~118{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle8}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 16}}} {.} {\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{min}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}} \\ & & | & \mathtt{0xFD}~~119{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle8}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 16}}} {.} {\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{min}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}} \\ & & | & \mathtt{0xFD}~~120{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle8}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 16}}} {.} {\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{max}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}} \\ & & | & \mathtt{0xFD}~~121{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle8}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 16}}} {.} {\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{max}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}} \\ & & | & \mathtt{0xFD}~~123{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle8}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 16}}} {.} {\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{avgr}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}} \\ & & | & \dots \\ \end{array}\end{split}\]
\[\begin{split}\begin{array}[t]{@{}l@{}rrl@{}l@{}l@{}l@{}} & {\href{../binary/instructions.html#binary-instr}{\mathtt{instr}}} & ::= & \dots \\ & & | & \mathtt{0xFD}~~124{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle16}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 8}}} {.} {{\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{extadd\_pairwise}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}}}{\mathsf{\_}}{{\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle8}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 16}}}} \\ & & | & \mathtt{0xFD}~~125{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle16}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 8}}} {.} {{\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{extadd\_pairwise}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}}}{\mathsf{\_}}{{\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle8}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 16}}}} \\ & & | & \mathtt{0xFD}~~128{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle16}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 8}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{abs}} \\ & & | & \mathtt{0xFD}~~129{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle16}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 8}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{neg}} \\ & & | & \mathtt{0xFD}~~131{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle16}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 8}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{all\_true}} \\ & & | & \mathtt{0xFD}~~132{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle16}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 8}}}{.}\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{bitmask}} \\ & & | & \mathtt{0xFD}~~133{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {{\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle16}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 8}}}{.}\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{narrow}}}{\mathsf{\_}}{{\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}} \\ & & | & \mathtt{0xFD}~~134{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {{\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle16}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 8}}}{.}\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{narrow}}}{\mathsf{\_}}{{\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}} \\ & & | & \mathtt{0xFD}~~135{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle16}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 8}}} {.} {({\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{extend}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}})}{\mathsf{\_}}{{\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle8}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 16}}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{low}}} \\ & & | & \mathtt{0xFD}~~136{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle16}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 8}}} {.} {({\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{extend}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}})}{\mathsf{\_}}{{\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle8}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 16}}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{high}}} \\ & & | & \mathtt{0xFD}~~137{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle16}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 8}}} {.} {({\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{extend}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}})}{\mathsf{\_}}{{\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle8}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 16}}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{low}}} \\ & & | & \mathtt{0xFD}~~138{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle16}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 8}}} {.} {({\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{extend}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}})}{\mathsf{\_}}{{\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle8}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 16}}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{high}}} \\ & & | & \mathtt{0xFD}~~139{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle16}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 8}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{shl}} \\ & & | & \mathtt{0xFD}~~140{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle16}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 8}}} {.} {\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{shr}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}} \\ & & | & \mathtt{0xFD}~~141{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle16}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 8}}} {.} {\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{shr}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}} \\ & & | & \mathtt{0xFD}~~130{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle16}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 8}}} {.} {\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{q{\scriptstyle15}mulr\_sat}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}} \\ & & | & \mathtt{0xFD}~~142{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle16}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 8}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{add}} \\ & & | & \mathtt{0xFD}~~143{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle16}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 8}}} {.} {\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{add\_sat}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}} \\ & & | & \mathtt{0xFD}~~144{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle16}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 8}}} {.} {\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{add\_sat}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}} \\ & & | & \mathtt{0xFD}~~145{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle16}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 8}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{sub}} \\ & & | & \mathtt{0xFD}~~146{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle16}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 8}}} {.} {\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{sub\_sat}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}} \\ & & | & \mathtt{0xFD}~~147{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle16}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 8}}} {.} {\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{sub\_sat}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}} \\ & & | & \mathtt{0xFD}~~149{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle16}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 8}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{mul}} \\ & & | & \mathtt{0xFD}~~150{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle16}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 8}}} {.} {\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{min}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}} \\ & & | & \mathtt{0xFD}~~151{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle16}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 8}}} {.} {\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{min}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}} \\ & & | & \mathtt{0xFD}~~152{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle16}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 8}}} {.} {\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{max}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}} \\ & & | & \mathtt{0xFD}~~153{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle16}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 8}}} {.} {\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{max}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}} \\ & & | & \mathtt{0xFD}~~155{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle16}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 8}}} {.} {\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{avgr}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}} \\ & & | & \mathtt{0xFD}~~156{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle16}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 8}}} {.} {{\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{extmul}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{low}}}}{\mathsf{\_}}{{\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle8}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 16}}}} \\ & & | & \mathtt{0xFD}~~157{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle16}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 8}}} {.} {{\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{extmul}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{high}}}}{\mathsf{\_}}{{\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle8}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 16}}}} \\ & & | & \mathtt{0xFD}~~158{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle16}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 8}}} {.} {{\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{extmul}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{low}}}}{\mathsf{\_}}{{\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle8}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 16}}}} \\ & & | & \mathtt{0xFD}~~159{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle16}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 8}}} {.} {{\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{extmul}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{high}}}}{\mathsf{\_}}{{\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle8}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 16}}}} \\ & & | & \dots \\ \end{array}\end{split}\]
\[\begin{split}\begin{array}[t]{@{}l@{}rrl@{}l@{}l@{}l@{}} & {\href{../binary/instructions.html#binary-instr}{\mathtt{instr}}} & ::= & \dots \\ & & | & \mathtt{0xFD}~~126{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}} {.} {{\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{extadd\_pairwise}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}}}{\mathsf{\_}}{{\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle16}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 8}}}} \\ & & | & \mathtt{0xFD}~~127{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}} {.} {{\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{extadd\_pairwise}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}}}{\mathsf{\_}}{{\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle16}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 8}}}} \\ & & | & \mathtt{0xFD}~~160{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{abs}} \\ & & | & \mathtt{0xFD}~~161{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{neg}} \\ & & | & \mathtt{0xFD}~~163{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{all\_true}} \\ & & | & \mathtt{0xFD}~~164{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}}{.}\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{bitmask}} \\ & & | & \mathtt{0xFD}~~167{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}} {.} {({\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{extend}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}})}{\mathsf{\_}}{{\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle16}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 8}}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{low}}} \\ & & | & \mathtt{0xFD}~~168{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}} {.} {({\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{extend}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}})}{\mathsf{\_}}{{\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle16}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 8}}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{high}}} \\ & & | & \mathtt{0xFD}~~169{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}} {.} {({\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{extend}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}})}{\mathsf{\_}}{{\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle16}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 8}}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{low}}} \\ & & | & \mathtt{0xFD}~~170{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}} {.} {({\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{extend}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}})}{\mathsf{\_}}{{\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle16}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 8}}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{high}}} \\ & & | & \mathtt{0xFD}~~171{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{shl}} \\ & & | & \mathtt{0xFD}~~172{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}} {.} {\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{shr}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}} \\ & & | & \mathtt{0xFD}~~173{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}} {.} {\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{shr}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}} \\ & & | & \mathtt{0xFD}~~174{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{add}} \\ & & | & \mathtt{0xFD}~~177{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{sub}} \\ & & | & \mathtt{0xFD}~~181{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{mul}} \\ & & | & \mathtt{0xFD}~~182{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}} {.} {\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{min}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}} \\ & & | & \mathtt{0xFD}~~183{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}} {.} {\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{min}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}} \\ & & | & \mathtt{0xFD}~~184{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}} {.} {\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{max}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}} \\ & & | & \mathtt{0xFD}~~185{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}} {.} {\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{max}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}} \\ & & | & \mathtt{0xFD}~~186{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}} {.} {{\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{dot}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}}}{\mathsf{\_}}{{\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle16}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 8}}}} \\ & & | & \mathtt{0xFD}~~188{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}} {.} {{\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{extmul}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{low}}}}{\mathsf{\_}}{{\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle16}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 8}}}} \\ & & | & \mathtt{0xFD}~~189{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}} {.} {{\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{extmul}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{high}}}}{\mathsf{\_}}{{\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle16}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 8}}}} \\ & & | & \mathtt{0xFD}~~190{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}} {.} {{\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{extmul}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{low}}}}{\mathsf{\_}}{{\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle16}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 8}}}} \\ & & | & \mathtt{0xFD}~~191{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}} {.} {{\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{extmul}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{high}}}}{\mathsf{\_}}{{\href{../syntax/types.html#syntax-storagetype}{\mathsf{i\scriptstyle16}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 8}}}} \\ & & | & \dots \\ \end{array}\end{split}\]
\[\begin{split}\begin{array}[t]{@{}l@{}rrl@{}l@{}l@{}l@{}} & {\href{../binary/instructions.html#binary-instr}{\mathtt{instr}}} & ::= & \dots \\ & & | & \mathtt{0xFD}~~192{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 2}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{abs}} \\ & & | & \mathtt{0xFD}~~193{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 2}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{neg}} \\ & & | & \mathtt{0xFD}~~195{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 2}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{all\_true}} \\ & & | & \mathtt{0xFD}~~196{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 2}}}{.}\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{bitmask}} \\ & & | & \mathtt{0xFD}~~199{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 2}}} {.} {({\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{extend}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}})}{\mathsf{\_}}{{\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{low}}} \\ & & | & \mathtt{0xFD}~~200{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 2}}} {.} {({\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{extend}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}})}{\mathsf{\_}}{{\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{high}}} \\ & & | & \mathtt{0xFD}~~201{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 2}}} {.} {({\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{extend}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}})}{\mathsf{\_}}{{\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{low}}} \\ & & | & \mathtt{0xFD}~~202{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 2}}} {.} {({\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{extend}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}})}{\mathsf{\_}}{{\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{high}}} \\ & & | & \mathtt{0xFD}~~203{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 2}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{shl}} \\ & & | & \mathtt{0xFD}~~204{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 2}}} {.} {\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{shr}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}} \\ & & | & \mathtt{0xFD}~~205{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 2}}} {.} {\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{shr}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}} \\ & & | & \mathtt{0xFD}~~206{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 2}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{add}} \\ & & | & \mathtt{0xFD}~~209{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 2}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{sub}} \\ & & | & \mathtt{0xFD}~~213{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 2}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{mul}} \\ & & | & \mathtt{0xFD}~~220{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 2}}} {.} {{\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{extmul}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{low}}}}{\mathsf{\_}}{{\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}}} \\ & & | & \mathtt{0xFD}~~221{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 2}}} {.} {{\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{extmul}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{high}}}}{\mathsf{\_}}{{\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}}} \\ & & | & \mathtt{0xFD}~~222{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 2}}} {.} {{\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{extmul}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{low}}}}{\mathsf{\_}}{{\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}}} \\ & & | & \mathtt{0xFD}~~223{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle64}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 2}}} {.} {{\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{extmul}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{high}}}}{\mathsf{\_}}{{\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}}} \\ & & | & \dots \\ \end{array}\end{split}\]
\[\begin{split}\begin{array}[t]{@{}l@{}rrl@{}l@{}l@{}l@{}} & {\href{../binary/instructions.html#binary-instr}{\mathtt{instr}}} & ::= & \dots \\ & & | & \mathtt{0xFD}~~103{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{ceil}} \\ & & | & \mathtt{0xFD}~~104{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{floor}} \\ & & | & \mathtt{0xFD}~~105{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{trunc}} \\ & & | & \mathtt{0xFD}~~106{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{nearest}} \\ & & | & \mathtt{0xFD}~~224{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{abs}} \\ & & | & \mathtt{0xFD}~~225{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{neg}} \\ & & | & \mathtt{0xFD}~~227{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{sqrt}} \\ & & | & \mathtt{0xFD}~~228{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{add}} \\ & & | & \mathtt{0xFD}~~229{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{sub}} \\ & & | & \mathtt{0xFD}~~230{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{mul}} \\ & & | & \mathtt{0xFD}~~231{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{div}} \\ & & | & \mathtt{0xFD}~~232{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{min}} \\ & & | & \mathtt{0xFD}~~233{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{max}} \\ & & | & \mathtt{0xFD}~~234{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{pmin}} \\ & & | & \mathtt{0xFD}~~235{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{pmax}} \\ & & | & \dots \\ \end{array}\end{split}\]
\[\begin{split}\begin{array}[t]{@{}l@{}rrl@{}l@{}l@{}l@{}} & {\href{../binary/instructions.html#binary-instr}{\mathtt{instr}}} & ::= & \dots \\ & & | & \mathtt{0xFD}~~116{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 2}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{ceil}} \\ & & | & \mathtt{0xFD}~~117{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 2}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{floor}} \\ & & | & \mathtt{0xFD}~~122{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 2}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{trunc}} \\ & & | & \mathtt{0xFD}~~148{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 2}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{nearest}} \\ & & | & \mathtt{0xFD}~~236{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 2}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{abs}} \\ & & | & \mathtt{0xFD}~~237{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 2}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{neg}} \\ & & | & \mathtt{0xFD}~~239{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 2}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{sqrt}} \\ & & | & \mathtt{0xFD}~~240{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 2}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{add}} \\ & & | & \mathtt{0xFD}~~241{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 2}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{sub}} \\ & & | & \mathtt{0xFD}~~242{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 2}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{mul}} \\ & & | & \mathtt{0xFD}~~243{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 2}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{div}} \\ & & | & \mathtt{0xFD}~~244{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 2}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{min}} \\ & & | & \mathtt{0xFD}~~245{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 2}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{max}} \\ & & | & \mathtt{0xFD}~~246{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 2}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{pmin}} \\ & & | & \mathtt{0xFD}~~247{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 2}}} {.} \href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{pmax}} \\ & & | & \dots \\ \end{array}\end{split}\]
\[\begin{split}\begin{array}[t]{@{}l@{}rrl@{}l@{}l@{}l@{}} & {\href{../binary/instructions.html#binary-instr}{\mathtt{instr}}} & ::= & \dots \\ & & | & \mathtt{0xFD}~~94{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}} {.} {\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{demote}}}{\mathsf{\_}}{{\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 2}}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{zero}}} \\ & & | & \mathtt{0xFD}~~95{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 2}}} {.} {\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{promote}}}{\mathsf{\_}}{{\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{low}}} \\ & & | & \mathtt{0xFD}~~248{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}} {.} {({\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{trunc\_sat}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}})}{\mathsf{\_}}{{\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}}} \\ & & | & \mathtt{0xFD}~~249{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}} {.} {({\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{trunc\_sat}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}})}{\mathsf{\_}}{{\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}}} \\ & & | & \mathtt{0xFD}~~250{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}} {.} {({\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{convert}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}})}{\mathsf{\_}}{{\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}}} \\ & & | & \mathtt{0xFD}~~251{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}} {.} {({\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{convert}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}})}{\mathsf{\_}}{{\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}}} \\ & & | & \mathtt{0xFD}~~252{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}} {.} {({\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{trunc\_sat}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}})}{\mathsf{\_}}{{\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 2}}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{zero}}} \\ & & | & \mathtt{0xFD}~~253{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}} {.} {({\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{trunc\_sat}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}})}{\mathsf{\_}}{{\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 2}}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{zero}}} \\ & & | & \mathtt{0xFD}~~254{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 2}}} {.} {({\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{convert}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{s}}})}{\mathsf{\_}}{{\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{low}}} \\ & & | & \mathtt{0xFD}~~255{:}{\href{../binary/values.html#binary-int}{\def\mathdef1599#1{{\mathtt{u}#1}}\mathdef1599{\mathtt{32}}}} & \quad\Rightarrow\quad{} & {\href{../syntax/types.html#syntax-numtype}{\mathsf{f\scriptstyle64}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 2}}} {.} {({\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{convert}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-sx}{\mathsf{u}}})}{\mathsf{\_}}{{\href{../syntax/types.html#syntax-numtype}{\mathsf{i\scriptstyle32}}}{\href{../syntax/instructions.html#syntax-shape}{\mathsf{x}}}{\mathsf{{\scriptstyle 4}}}}{\mathsf{\_}}{\href{../syntax/instructions.html#syntax-instr-vec}{\mathsf{low}}} \\ \end{array}\end{split}\]

Expressions

Expressions are encoded by their instruction sequence terminated with an explicit \(\mathtt{0x0B}\) opcode for \(\mathsf{end}\).

\[\begin{split}\begin{array}[t]{@{}l@{}rrl@{}l@{}l@{}l@{}} & {\href{../binary/instructions.html#binary-expr}{\mathtt{expr}}} & ::= & {({\mathit{in}}{:}{\href{../binary/instructions.html#binary-instr}{\mathtt{instr}}})^\ast}~~\mathtt{0x0B} & \quad\Rightarrow\quad{} & {{\mathit{in}}^\ast} \\ \end{array}\end{split}\]