aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/Structure/Instructions/Instrs/Numeric
diff options
context:
space:
mode:
authornsfisis <nsfisis@gmail.com>2024-01-03 01:35:32 +0900
committernsfisis <nsfisis@gmail.com>2024-01-27 12:05:23 +0900
commite2495878b872b341e6e04eed31dd255b1a6e256f (patch)
tree4057ab19765ea7fc13505798c6434dceac02f4b1 /src/Structure/Instructions/Instrs/Numeric
parent5b4652d080c7eae26f8aac482468a6777ad9defe (diff)
downloadphp-waddiwasi-e2495878b872b341e6e04eed31dd255b1a6e256f.tar.gz
php-waddiwasi-e2495878b872b341e6e04eed31dd255b1a6e256f.tar.zst
php-waddiwasi-e2495878b872b341e6e04eed31dd255b1a6e256f.zip
feat: implement binary decoder
Diffstat (limited to 'src/Structure/Instructions/Instrs/Numeric')
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/F32Abs.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/F32Add.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/F32Ceil.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/F32Const.php18
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/F32ConvertI32S.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/F32ConvertI32U.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/F32ConvertI64S.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/F32ConvertI64U.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/F32CopySign.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/F32DemoteF64.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/F32Div.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/F32Eq.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/F32Floor.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/F32Ge.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/F32Gt.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/F32Le.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/F32Lt.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/F32Max.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/F32Min.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/F32Mul.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/F32Ne.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/F32Nearest.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/F32Neg.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/F32ReinterpretI32.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/F32ReinterpretI64.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/F32Sqrt.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/F32Sub.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/F32Trunc.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/F64Abs.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/F64Add.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/F64Ceil.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/F64Const.php18
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/F64ConvertI32S.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/F64ConvertI32U.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/F64ConvertI64S.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/F64ConvertI64U.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/F64CopySign.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/F64Div.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/F64Eq.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/F64Floor.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/F64Ge.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/F64Gt.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/F64Le.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/F64Lt.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/F64Max.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/F64Min.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/F64Mul.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/F64Ne.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/F64Nearest.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/F64Neg.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/F64PromoteF32.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/F64ReinterpretI32.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/F64ReinterpretI64.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/F64Sqrt.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/F64Sub.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/F64Trunc.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I32Add.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I32And.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I32Clz.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I32Const.php18
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I32Ctz.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I32DivS.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I32DivU.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I32Eq.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I32Eqz.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I32Extend16S.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I32Extend8S.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I32GeS.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I32GeU.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I32GtS.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I32GtU.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I32LeS.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I32LeU.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I32LtS.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I32LtU.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I32Mul.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I32Ne.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I32Or.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I32Popcnt.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I32ReinterpretF32.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I32ReinterpretF64.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I32RemS.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I32RemU.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I32RotL.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I32RotR.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I32Shl.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I32ShrS.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I32ShrU.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I32Sub.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I32TruncF32S.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I32TruncF32U.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I32TruncF64S.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I32TruncF64U.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I32TruncSatF32S.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I32TruncSatF32U.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I32TruncSatF64S.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I32TruncSatF64U.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I32WrapI64.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I32Xor.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I64Add.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I64And.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I64Clz.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I64Const.php18
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I64Ctz.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I64DivS.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I64DivU.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I64Eq.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I64Eqz.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I64Extend16S.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I64Extend32S.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I64Extend8S.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I64ExtendI32S.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I64ExtendI32U.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I64GeS.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I64GeU.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I64GtS.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I64GtU.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I64LeS.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I64LeU.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I64LtS.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I64LtU.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I64Mul.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I64Ne.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I64Or.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I64Popcnt.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I64ReinterpretF32.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I64ReinterpretF64.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I64RemS.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I64RemU.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I64RotL.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I64RotR.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I64Shl.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I64ShrS.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I64ShrU.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I64Sub.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I64TruncF32S.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I64TruncF32U.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I64TruncF64S.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I64TruncF64U.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I64TruncSatF32S.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I64TruncSatF32U.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I64TruncSatF64S.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I64TruncSatF64U.php11
-rw-r--r--src/Structure/Instructions/Instrs/Numeric/I64Xor.php11
144 files changed, 1612 insertions, 0 deletions
diff --git a/src/Structure/Instructions/Instrs/Numeric/F32Abs.php b/src/Structure/Instructions/Instrs/Numeric/F32Abs.php
new file mode 100644
index 0000000..94fc22b
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/F32Abs.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class F32Abs extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/F32Add.php b/src/Structure/Instructions/Instrs/Numeric/F32Add.php
new file mode 100644
index 0000000..8a69f34
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/F32Add.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class F32Add extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/F32Ceil.php b/src/Structure/Instructions/Instrs/Numeric/F32Ceil.php
new file mode 100644
index 0000000..75469a6
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/F32Ceil.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class F32Ceil extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/F32Const.php b/src/Structure/Instructions/Instrs/Numeric/F32Const.php
new file mode 100644
index 0000000..d9ce335
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/F32Const.php
@@ -0,0 +1,18 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class F32Const extends Instr
+{
+ /**
+ * @param F32 $value
+ */
+ public function __construct(
+ public float $value,
+ ) {
+ }
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/F32ConvertI32S.php b/src/Structure/Instructions/Instrs/Numeric/F32ConvertI32S.php
new file mode 100644
index 0000000..6443f07
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/F32ConvertI32S.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class F32ConvertI32S extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/F32ConvertI32U.php b/src/Structure/Instructions/Instrs/Numeric/F32ConvertI32U.php
new file mode 100644
index 0000000..c845057
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/F32ConvertI32U.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class F32ConvertI32U extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/F32ConvertI64S.php b/src/Structure/Instructions/Instrs/Numeric/F32ConvertI64S.php
new file mode 100644
index 0000000..ff9515e
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/F32ConvertI64S.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class F32ConvertI64S extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/F32ConvertI64U.php b/src/Structure/Instructions/Instrs/Numeric/F32ConvertI64U.php
new file mode 100644
index 0000000..2a321c7
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/F32ConvertI64U.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class F32ConvertI64U extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/F32CopySign.php b/src/Structure/Instructions/Instrs/Numeric/F32CopySign.php
new file mode 100644
index 0000000..80ca681
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/F32CopySign.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class F32CopySign extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/F32DemoteF64.php b/src/Structure/Instructions/Instrs/Numeric/F32DemoteF64.php
new file mode 100644
index 0000000..bfe7221
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/F32DemoteF64.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class F32DemoteF64 extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/F32Div.php b/src/Structure/Instructions/Instrs/Numeric/F32Div.php
new file mode 100644
index 0000000..034a161
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/F32Div.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class F32Div extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/F32Eq.php b/src/Structure/Instructions/Instrs/Numeric/F32Eq.php
new file mode 100644
index 0000000..acfaa91
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/F32Eq.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class F32Eq extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/F32Floor.php b/src/Structure/Instructions/Instrs/Numeric/F32Floor.php
new file mode 100644
index 0000000..6b8c760
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/F32Floor.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class F32Floor extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/F32Ge.php b/src/Structure/Instructions/Instrs/Numeric/F32Ge.php
new file mode 100644
index 0000000..bd8a7ce
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/F32Ge.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class F32Ge extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/F32Gt.php b/src/Structure/Instructions/Instrs/Numeric/F32Gt.php
new file mode 100644
index 0000000..4f071b5
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/F32Gt.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class F32Gt extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/F32Le.php b/src/Structure/Instructions/Instrs/Numeric/F32Le.php
new file mode 100644
index 0000000..76d53ed
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/F32Le.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class F32Le extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/F32Lt.php b/src/Structure/Instructions/Instrs/Numeric/F32Lt.php
new file mode 100644
index 0000000..9286087
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/F32Lt.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class F32Lt extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/F32Max.php b/src/Structure/Instructions/Instrs/Numeric/F32Max.php
new file mode 100644
index 0000000..e2d68cd
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/F32Max.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class F32Max extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/F32Min.php b/src/Structure/Instructions/Instrs/Numeric/F32Min.php
new file mode 100644
index 0000000..2b07d3a
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/F32Min.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class F32Min extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/F32Mul.php b/src/Structure/Instructions/Instrs/Numeric/F32Mul.php
new file mode 100644
index 0000000..f232268
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/F32Mul.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class F32Mul extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/F32Ne.php b/src/Structure/Instructions/Instrs/Numeric/F32Ne.php
new file mode 100644
index 0000000..4d88d58
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/F32Ne.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class F32Ne extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/F32Nearest.php b/src/Structure/Instructions/Instrs/Numeric/F32Nearest.php
new file mode 100644
index 0000000..5ef087c
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/F32Nearest.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class F32Nearest extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/F32Neg.php b/src/Structure/Instructions/Instrs/Numeric/F32Neg.php
new file mode 100644
index 0000000..0ee1c81
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/F32Neg.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class F32Neg extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/F32ReinterpretI32.php b/src/Structure/Instructions/Instrs/Numeric/F32ReinterpretI32.php
new file mode 100644
index 0000000..ca6bbc9
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/F32ReinterpretI32.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class F32ReinterpretI32 extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/F32ReinterpretI64.php b/src/Structure/Instructions/Instrs/Numeric/F32ReinterpretI64.php
new file mode 100644
index 0000000..4c0c1cc
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/F32ReinterpretI64.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class F32ReinterpretI64 extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/F32Sqrt.php b/src/Structure/Instructions/Instrs/Numeric/F32Sqrt.php
new file mode 100644
index 0000000..8889df2
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/F32Sqrt.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class F32Sqrt extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/F32Sub.php b/src/Structure/Instructions/Instrs/Numeric/F32Sub.php
new file mode 100644
index 0000000..79efc3c
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/F32Sub.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class F32Sub extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/F32Trunc.php b/src/Structure/Instructions/Instrs/Numeric/F32Trunc.php
new file mode 100644
index 0000000..6c273ac
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/F32Trunc.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class F32Trunc extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/F64Abs.php b/src/Structure/Instructions/Instrs/Numeric/F64Abs.php
new file mode 100644
index 0000000..cc0a7d3
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/F64Abs.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class F64Abs extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/F64Add.php b/src/Structure/Instructions/Instrs/Numeric/F64Add.php
new file mode 100644
index 0000000..6e8ed1a
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/F64Add.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class F64Add extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/F64Ceil.php b/src/Structure/Instructions/Instrs/Numeric/F64Ceil.php
new file mode 100644
index 0000000..42bc77d
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/F64Ceil.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class F64Ceil extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/F64Const.php b/src/Structure/Instructions/Instrs/Numeric/F64Const.php
new file mode 100644
index 0000000..dcfa9e8
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/F64Const.php
@@ -0,0 +1,18 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class F64Const extends Instr
+{
+ /**
+ * @param F64 $value
+ */
+ public function __construct(
+ public float $value,
+ ) {
+ }
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/F64ConvertI32S.php b/src/Structure/Instructions/Instrs/Numeric/F64ConvertI32S.php
new file mode 100644
index 0000000..ca52f39
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/F64ConvertI32S.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class F64ConvertI32S extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/F64ConvertI32U.php b/src/Structure/Instructions/Instrs/Numeric/F64ConvertI32U.php
new file mode 100644
index 0000000..2b0cb1b
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/F64ConvertI32U.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class F64ConvertI32U extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/F64ConvertI64S.php b/src/Structure/Instructions/Instrs/Numeric/F64ConvertI64S.php
new file mode 100644
index 0000000..9f2d8ad
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/F64ConvertI64S.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class F64ConvertI64S extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/F64ConvertI64U.php b/src/Structure/Instructions/Instrs/Numeric/F64ConvertI64U.php
new file mode 100644
index 0000000..a86cd01
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/F64ConvertI64U.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class F64ConvertI64U extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/F64CopySign.php b/src/Structure/Instructions/Instrs/Numeric/F64CopySign.php
new file mode 100644
index 0000000..2e11ae4
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/F64CopySign.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class F64CopySign extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/F64Div.php b/src/Structure/Instructions/Instrs/Numeric/F64Div.php
new file mode 100644
index 0000000..d655879
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/F64Div.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class F64Div extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/F64Eq.php b/src/Structure/Instructions/Instrs/Numeric/F64Eq.php
new file mode 100644
index 0000000..5155b0b
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/F64Eq.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class F64Eq extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/F64Floor.php b/src/Structure/Instructions/Instrs/Numeric/F64Floor.php
new file mode 100644
index 0000000..a55785f
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/F64Floor.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class F64Floor extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/F64Ge.php b/src/Structure/Instructions/Instrs/Numeric/F64Ge.php
new file mode 100644
index 0000000..f9dc40e
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/F64Ge.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class F64Ge extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/F64Gt.php b/src/Structure/Instructions/Instrs/Numeric/F64Gt.php
new file mode 100644
index 0000000..bf33336
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/F64Gt.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class F64Gt extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/F64Le.php b/src/Structure/Instructions/Instrs/Numeric/F64Le.php
new file mode 100644
index 0000000..eae4b93
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/F64Le.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class F64Le extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/F64Lt.php b/src/Structure/Instructions/Instrs/Numeric/F64Lt.php
new file mode 100644
index 0000000..755914a
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/F64Lt.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class F64Lt extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/F64Max.php b/src/Structure/Instructions/Instrs/Numeric/F64Max.php
new file mode 100644
index 0000000..3f07d6d
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/F64Max.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class F64Max extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/F64Min.php b/src/Structure/Instructions/Instrs/Numeric/F64Min.php
new file mode 100644
index 0000000..272dc4a
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/F64Min.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class F64Min extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/F64Mul.php b/src/Structure/Instructions/Instrs/Numeric/F64Mul.php
new file mode 100644
index 0000000..f22dbab
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/F64Mul.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class F64Mul extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/F64Ne.php b/src/Structure/Instructions/Instrs/Numeric/F64Ne.php
new file mode 100644
index 0000000..91c86e3
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/F64Ne.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class F64Ne extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/F64Nearest.php b/src/Structure/Instructions/Instrs/Numeric/F64Nearest.php
new file mode 100644
index 0000000..52bcfd8
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/F64Nearest.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class F64Nearest extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/F64Neg.php b/src/Structure/Instructions/Instrs/Numeric/F64Neg.php
new file mode 100644
index 0000000..4589529
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/F64Neg.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class F64Neg extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/F64PromoteF32.php b/src/Structure/Instructions/Instrs/Numeric/F64PromoteF32.php
new file mode 100644
index 0000000..a14aa36
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/F64PromoteF32.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class F64PromoteF32 extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/F64ReinterpretI32.php b/src/Structure/Instructions/Instrs/Numeric/F64ReinterpretI32.php
new file mode 100644
index 0000000..b37bf7e
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/F64ReinterpretI32.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class F64ReinterpretI32 extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/F64ReinterpretI64.php b/src/Structure/Instructions/Instrs/Numeric/F64ReinterpretI64.php
new file mode 100644
index 0000000..0f8a3fb
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/F64ReinterpretI64.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class F64ReinterpretI64 extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/F64Sqrt.php b/src/Structure/Instructions/Instrs/Numeric/F64Sqrt.php
new file mode 100644
index 0000000..647d95f
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/F64Sqrt.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class F64Sqrt extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/F64Sub.php b/src/Structure/Instructions/Instrs/Numeric/F64Sub.php
new file mode 100644
index 0000000..31677c1
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/F64Sub.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class F64Sub extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/F64Trunc.php b/src/Structure/Instructions/Instrs/Numeric/F64Trunc.php
new file mode 100644
index 0000000..6ed7314
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/F64Trunc.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class F64Trunc extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I32Add.php b/src/Structure/Instructions/Instrs/Numeric/I32Add.php
new file mode 100644
index 0000000..45b1fea
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I32Add.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I32Add extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I32And.php b/src/Structure/Instructions/Instrs/Numeric/I32And.php
new file mode 100644
index 0000000..8f0a906
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I32And.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I32And extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I32Clz.php b/src/Structure/Instructions/Instrs/Numeric/I32Clz.php
new file mode 100644
index 0000000..124995b
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I32Clz.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I32Clz extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I32Const.php b/src/Structure/Instructions/Instrs/Numeric/I32Const.php
new file mode 100644
index 0000000..7beaae0
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I32Const.php
@@ -0,0 +1,18 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I32Const extends Instr
+{
+ /**
+ * @param U32 $value
+ */
+ public function __construct(
+ public int $value,
+ ) {
+ }
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I32Ctz.php b/src/Structure/Instructions/Instrs/Numeric/I32Ctz.php
new file mode 100644
index 0000000..fc17042
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I32Ctz.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I32Ctz extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I32DivS.php b/src/Structure/Instructions/Instrs/Numeric/I32DivS.php
new file mode 100644
index 0000000..789716d
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I32DivS.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I32DivS extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I32DivU.php b/src/Structure/Instructions/Instrs/Numeric/I32DivU.php
new file mode 100644
index 0000000..f7797f4
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I32DivU.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I32DivU extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I32Eq.php b/src/Structure/Instructions/Instrs/Numeric/I32Eq.php
new file mode 100644
index 0000000..e6c5969
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I32Eq.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I32Eq extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I32Eqz.php b/src/Structure/Instructions/Instrs/Numeric/I32Eqz.php
new file mode 100644
index 0000000..16d7b44
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I32Eqz.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I32Eqz extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I32Extend16S.php b/src/Structure/Instructions/Instrs/Numeric/I32Extend16S.php
new file mode 100644
index 0000000..cdb3227
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I32Extend16S.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I32Extend16S extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I32Extend8S.php b/src/Structure/Instructions/Instrs/Numeric/I32Extend8S.php
new file mode 100644
index 0000000..73c95f9
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I32Extend8S.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I32Extend8S extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I32GeS.php b/src/Structure/Instructions/Instrs/Numeric/I32GeS.php
new file mode 100644
index 0000000..c9f9bf4
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I32GeS.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I32GeS extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I32GeU.php b/src/Structure/Instructions/Instrs/Numeric/I32GeU.php
new file mode 100644
index 0000000..8c16771
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I32GeU.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I32GeU extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I32GtS.php b/src/Structure/Instructions/Instrs/Numeric/I32GtS.php
new file mode 100644
index 0000000..4b044a3
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I32GtS.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I32GtS extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I32GtU.php b/src/Structure/Instructions/Instrs/Numeric/I32GtU.php
new file mode 100644
index 0000000..6f915e8
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I32GtU.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I32GtU extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I32LeS.php b/src/Structure/Instructions/Instrs/Numeric/I32LeS.php
new file mode 100644
index 0000000..e82233a
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I32LeS.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I32LeS extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I32LeU.php b/src/Structure/Instructions/Instrs/Numeric/I32LeU.php
new file mode 100644
index 0000000..99a470d
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I32LeU.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I32LeU extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I32LtS.php b/src/Structure/Instructions/Instrs/Numeric/I32LtS.php
new file mode 100644
index 0000000..09ba5a0
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I32LtS.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I32LtS extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I32LtU.php b/src/Structure/Instructions/Instrs/Numeric/I32LtU.php
new file mode 100644
index 0000000..a7526e9
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I32LtU.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I32LtU extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I32Mul.php b/src/Structure/Instructions/Instrs/Numeric/I32Mul.php
new file mode 100644
index 0000000..53c7909
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I32Mul.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I32Mul extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I32Ne.php b/src/Structure/Instructions/Instrs/Numeric/I32Ne.php
new file mode 100644
index 0000000..01d16a1
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I32Ne.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I32Ne extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I32Or.php b/src/Structure/Instructions/Instrs/Numeric/I32Or.php
new file mode 100644
index 0000000..93ef312
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I32Or.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I32Or extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I32Popcnt.php b/src/Structure/Instructions/Instrs/Numeric/I32Popcnt.php
new file mode 100644
index 0000000..6519b81
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I32Popcnt.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I32Popcnt extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I32ReinterpretF32.php b/src/Structure/Instructions/Instrs/Numeric/I32ReinterpretF32.php
new file mode 100644
index 0000000..4bbd00b
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I32ReinterpretF32.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I32ReinterpretF32 extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I32ReinterpretF64.php b/src/Structure/Instructions/Instrs/Numeric/I32ReinterpretF64.php
new file mode 100644
index 0000000..452b94c
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I32ReinterpretF64.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I32ReinterpretF64 extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I32RemS.php b/src/Structure/Instructions/Instrs/Numeric/I32RemS.php
new file mode 100644
index 0000000..57ee14e
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I32RemS.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I32RemS extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I32RemU.php b/src/Structure/Instructions/Instrs/Numeric/I32RemU.php
new file mode 100644
index 0000000..4ff68af
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I32RemU.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I32RemU extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I32RotL.php b/src/Structure/Instructions/Instrs/Numeric/I32RotL.php
new file mode 100644
index 0000000..66597f3
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I32RotL.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I32RotL extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I32RotR.php b/src/Structure/Instructions/Instrs/Numeric/I32RotR.php
new file mode 100644
index 0000000..732a609
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I32RotR.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I32RotR extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I32Shl.php b/src/Structure/Instructions/Instrs/Numeric/I32Shl.php
new file mode 100644
index 0000000..51da4d7
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I32Shl.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I32Shl extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I32ShrS.php b/src/Structure/Instructions/Instrs/Numeric/I32ShrS.php
new file mode 100644
index 0000000..bd450c7
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I32ShrS.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I32ShrS extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I32ShrU.php b/src/Structure/Instructions/Instrs/Numeric/I32ShrU.php
new file mode 100644
index 0000000..45a9591
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I32ShrU.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I32ShrU extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I32Sub.php b/src/Structure/Instructions/Instrs/Numeric/I32Sub.php
new file mode 100644
index 0000000..bccb57b
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I32Sub.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I32Sub extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I32TruncF32S.php b/src/Structure/Instructions/Instrs/Numeric/I32TruncF32S.php
new file mode 100644
index 0000000..eceb6aa
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I32TruncF32S.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I32TruncF32S extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I32TruncF32U.php b/src/Structure/Instructions/Instrs/Numeric/I32TruncF32U.php
new file mode 100644
index 0000000..1b63b10
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I32TruncF32U.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I32TruncF32U extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I32TruncF64S.php b/src/Structure/Instructions/Instrs/Numeric/I32TruncF64S.php
new file mode 100644
index 0000000..8290349
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I32TruncF64S.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I32TruncF64S extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I32TruncF64U.php b/src/Structure/Instructions/Instrs/Numeric/I32TruncF64U.php
new file mode 100644
index 0000000..61bc0fe
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I32TruncF64U.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I32TruncF64U extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I32TruncSatF32S.php b/src/Structure/Instructions/Instrs/Numeric/I32TruncSatF32S.php
new file mode 100644
index 0000000..e5d490d
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I32TruncSatF32S.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I32TruncSatF32S extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I32TruncSatF32U.php b/src/Structure/Instructions/Instrs/Numeric/I32TruncSatF32U.php
new file mode 100644
index 0000000..e032eb8
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I32TruncSatF32U.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I32TruncSatF32U extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I32TruncSatF64S.php b/src/Structure/Instructions/Instrs/Numeric/I32TruncSatF64S.php
new file mode 100644
index 0000000..3094a68
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I32TruncSatF64S.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I32TruncSatF64S extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I32TruncSatF64U.php b/src/Structure/Instructions/Instrs/Numeric/I32TruncSatF64U.php
new file mode 100644
index 0000000..fa2fa63
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I32TruncSatF64U.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I32TruncSatF64U extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I32WrapI64.php b/src/Structure/Instructions/Instrs/Numeric/I32WrapI64.php
new file mode 100644
index 0000000..f9467c3
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I32WrapI64.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I32WrapI64 extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I32Xor.php b/src/Structure/Instructions/Instrs/Numeric/I32Xor.php
new file mode 100644
index 0000000..1526d59
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I32Xor.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I32Xor extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I64Add.php b/src/Structure/Instructions/Instrs/Numeric/I64Add.php
new file mode 100644
index 0000000..f94c7e8
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I64Add.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I64Add extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I64And.php b/src/Structure/Instructions/Instrs/Numeric/I64And.php
new file mode 100644
index 0000000..f82d3d9
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I64And.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I64And extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I64Clz.php b/src/Structure/Instructions/Instrs/Numeric/I64Clz.php
new file mode 100644
index 0000000..e0846ae
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I64Clz.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I64Clz extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I64Const.php b/src/Structure/Instructions/Instrs/Numeric/I64Const.php
new file mode 100644
index 0000000..59f34f3
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I64Const.php
@@ -0,0 +1,18 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I64Const extends Instr
+{
+ /**
+ * @param U64 $value
+ */
+ public function __construct(
+ public int $value,
+ ) {
+ }
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I64Ctz.php b/src/Structure/Instructions/Instrs/Numeric/I64Ctz.php
new file mode 100644
index 0000000..0422f68
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I64Ctz.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I64Ctz extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I64DivS.php b/src/Structure/Instructions/Instrs/Numeric/I64DivS.php
new file mode 100644
index 0000000..9294d17
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I64DivS.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I64DivS extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I64DivU.php b/src/Structure/Instructions/Instrs/Numeric/I64DivU.php
new file mode 100644
index 0000000..4c5242c
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I64DivU.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I64DivU extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I64Eq.php b/src/Structure/Instructions/Instrs/Numeric/I64Eq.php
new file mode 100644
index 0000000..2145985
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I64Eq.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I64Eq extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I64Eqz.php b/src/Structure/Instructions/Instrs/Numeric/I64Eqz.php
new file mode 100644
index 0000000..dd7af0d
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I64Eqz.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I64Eqz extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I64Extend16S.php b/src/Structure/Instructions/Instrs/Numeric/I64Extend16S.php
new file mode 100644
index 0000000..c9ec236
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I64Extend16S.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I64Extend16S extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I64Extend32S.php b/src/Structure/Instructions/Instrs/Numeric/I64Extend32S.php
new file mode 100644
index 0000000..f5cf6e3
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I64Extend32S.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I64Extend32S extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I64Extend8S.php b/src/Structure/Instructions/Instrs/Numeric/I64Extend8S.php
new file mode 100644
index 0000000..8aabde1
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I64Extend8S.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I64Extend8S extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I64ExtendI32S.php b/src/Structure/Instructions/Instrs/Numeric/I64ExtendI32S.php
new file mode 100644
index 0000000..4758071
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I64ExtendI32S.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I64ExtendI32S extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I64ExtendI32U.php b/src/Structure/Instructions/Instrs/Numeric/I64ExtendI32U.php
new file mode 100644
index 0000000..255676c
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I64ExtendI32U.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I64ExtendI32U extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I64GeS.php b/src/Structure/Instructions/Instrs/Numeric/I64GeS.php
new file mode 100644
index 0000000..7ab7587
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I64GeS.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I64GeS extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I64GeU.php b/src/Structure/Instructions/Instrs/Numeric/I64GeU.php
new file mode 100644
index 0000000..2695524
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I64GeU.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I64GeU extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I64GtS.php b/src/Structure/Instructions/Instrs/Numeric/I64GtS.php
new file mode 100644
index 0000000..6aada91
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I64GtS.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I64GtS extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I64GtU.php b/src/Structure/Instructions/Instrs/Numeric/I64GtU.php
new file mode 100644
index 0000000..396b8e2
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I64GtU.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I64GtU extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I64LeS.php b/src/Structure/Instructions/Instrs/Numeric/I64LeS.php
new file mode 100644
index 0000000..c6a7ecb
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I64LeS.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I64LeS extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I64LeU.php b/src/Structure/Instructions/Instrs/Numeric/I64LeU.php
new file mode 100644
index 0000000..c0037be
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I64LeU.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I64LeU extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I64LtS.php b/src/Structure/Instructions/Instrs/Numeric/I64LtS.php
new file mode 100644
index 0000000..662f082
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I64LtS.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I64LtS extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I64LtU.php b/src/Structure/Instructions/Instrs/Numeric/I64LtU.php
new file mode 100644
index 0000000..fd5f3b0
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I64LtU.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I64LtU extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I64Mul.php b/src/Structure/Instructions/Instrs/Numeric/I64Mul.php
new file mode 100644
index 0000000..c6133c9
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I64Mul.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I64Mul extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I64Ne.php b/src/Structure/Instructions/Instrs/Numeric/I64Ne.php
new file mode 100644
index 0000000..5c076c0
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I64Ne.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I64Ne extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I64Or.php b/src/Structure/Instructions/Instrs/Numeric/I64Or.php
new file mode 100644
index 0000000..c1d1d1a
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I64Or.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I64Or extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I64Popcnt.php b/src/Structure/Instructions/Instrs/Numeric/I64Popcnt.php
new file mode 100644
index 0000000..33ec288
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I64Popcnt.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I64Popcnt extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I64ReinterpretF32.php b/src/Structure/Instructions/Instrs/Numeric/I64ReinterpretF32.php
new file mode 100644
index 0000000..d3104b9
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I64ReinterpretF32.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I64ReinterpretF32 extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I64ReinterpretF64.php b/src/Structure/Instructions/Instrs/Numeric/I64ReinterpretF64.php
new file mode 100644
index 0000000..0a6245a
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I64ReinterpretF64.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I64ReinterpretF64 extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I64RemS.php b/src/Structure/Instructions/Instrs/Numeric/I64RemS.php
new file mode 100644
index 0000000..1d66b60
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I64RemS.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I64RemS extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I64RemU.php b/src/Structure/Instructions/Instrs/Numeric/I64RemU.php
new file mode 100644
index 0000000..0241747
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I64RemU.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I64RemU extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I64RotL.php b/src/Structure/Instructions/Instrs/Numeric/I64RotL.php
new file mode 100644
index 0000000..6a6fdba
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I64RotL.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I64RotL extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I64RotR.php b/src/Structure/Instructions/Instrs/Numeric/I64RotR.php
new file mode 100644
index 0000000..e77fab0
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I64RotR.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I64RotR extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I64Shl.php b/src/Structure/Instructions/Instrs/Numeric/I64Shl.php
new file mode 100644
index 0000000..d800c6d
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I64Shl.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I64Shl extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I64ShrS.php b/src/Structure/Instructions/Instrs/Numeric/I64ShrS.php
new file mode 100644
index 0000000..d44e48f
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I64ShrS.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I64ShrS extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I64ShrU.php b/src/Structure/Instructions/Instrs/Numeric/I64ShrU.php
new file mode 100644
index 0000000..656a662
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I64ShrU.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I64ShrU extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I64Sub.php b/src/Structure/Instructions/Instrs/Numeric/I64Sub.php
new file mode 100644
index 0000000..ab87eaf
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I64Sub.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I64Sub extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I64TruncF32S.php b/src/Structure/Instructions/Instrs/Numeric/I64TruncF32S.php
new file mode 100644
index 0000000..a3421ce
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I64TruncF32S.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I64TruncF32S extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I64TruncF32U.php b/src/Structure/Instructions/Instrs/Numeric/I64TruncF32U.php
new file mode 100644
index 0000000..917e940
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I64TruncF32U.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I64TruncF32U extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I64TruncF64S.php b/src/Structure/Instructions/Instrs/Numeric/I64TruncF64S.php
new file mode 100644
index 0000000..3f0d5fd
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I64TruncF64S.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I64TruncF64S extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I64TruncF64U.php b/src/Structure/Instructions/Instrs/Numeric/I64TruncF64U.php
new file mode 100644
index 0000000..9726bc4
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I64TruncF64U.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I64TruncF64U extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I64TruncSatF32S.php b/src/Structure/Instructions/Instrs/Numeric/I64TruncSatF32S.php
new file mode 100644
index 0000000..71d82a5
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I64TruncSatF32S.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I64TruncSatF32S extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I64TruncSatF32U.php b/src/Structure/Instructions/Instrs/Numeric/I64TruncSatF32U.php
new file mode 100644
index 0000000..d4dafd7
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I64TruncSatF32U.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I64TruncSatF32U extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I64TruncSatF64S.php b/src/Structure/Instructions/Instrs/Numeric/I64TruncSatF64S.php
new file mode 100644
index 0000000..0833520
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I64TruncSatF64S.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I64TruncSatF64S extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I64TruncSatF64U.php b/src/Structure/Instructions/Instrs/Numeric/I64TruncSatF64U.php
new file mode 100644
index 0000000..41f1c0e
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I64TruncSatF64U.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I64TruncSatF64U extends Instr
+{
+}
diff --git a/src/Structure/Instructions/Instrs/Numeric/I64Xor.php b/src/Structure/Instructions/Instrs/Numeric/I64Xor.php
new file mode 100644
index 0000000..917f62d
--- /dev/null
+++ b/src/Structure/Instructions/Instrs/Numeric/I64Xor.php
@@ -0,0 +1,11 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\Structure\Instructions\Instrs\Numeric;
+
+use Nsfisis\Waddiwasi\Structure\Instructions\Instr;
+
+final readonly class I64Xor extends Instr
+{
+}