[Mlir-commits] [mlir] [mlir][tosa] Add specification versioning to target environment (PR #156425)

llvmlistbot at llvm.org llvmlistbot at llvm.org
Tue Oct 7 02:51:39 PDT 2025


github-actions[bot] wrote:

<!--LLVM CODE FORMAT COMMENT: {clang-format}-->


:warning: C/C++ code formatter, clang-format found issues in your code. :warning:

<details>
<summary>
You can test this locally with the following command:
</summary>

``````````bash
git-clang-format --diff origin/main HEAD --extensions h,inc,cpp -- mlir/include/mlir/Dialect/Tosa/IR/TargetEnv.h mlir/include/mlir/Dialect/Tosa/IR/TosaComplianceData.h.inc mlir/include/mlir/Dialect/Tosa/IR/TosaProfileCompliance.h mlir/lib/Dialect/Tosa/IR/TargetEnv.cpp mlir/lib/Dialect/Tosa/Transforms/TosaAttachTarget.cpp mlir/lib/Dialect/Tosa/Transforms/TosaProfileCompliance.cpp
``````````

:warning:
The reproduction instructions above might return results for more than one PR
in a stack if you are using a stacked PR workflow. You can limit the results by
changing `origin/main` to the base branch/commit you want to compare against.
:warning:

</details>

<details>
<summary>
View the diff from clang-format here.
</summary>

``````````diff
diff --git a/mlir/include/mlir/Dialect/Tosa/IR/TosaComplianceData.h.inc b/mlir/include/mlir/Dialect/Tosa/IR/TosaComplianceData.h.inc
index dc46ba73c..c1b5e785b 100644
--- a/mlir/include/mlir/Dialect/Tosa/IR/TosaComplianceData.h.inc
+++ b/mlir/include/mlir/Dialect/Tosa/IR/TosaComplianceData.h.inc
@@ -1,661 +1,780 @@
 // The profile-based compliance content below is auto-generated by the script
 // `tools/genspec.py` in https://git.mlplatform.org/tosa/specification.git
 profileComplianceMap = {
-  {"tosa.argmax",
-   {{{Profile::pro_int}, {{{i8T, i32T}, SpecificationVersion::V_1_0}}},
-    {{Profile::pro_fp},
-     {{{fp16T, i32T}, SpecificationVersion::V_1_0}, {{fp32T, i32T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.avg_pool2d",
-   {{{Profile::pro_int}, {{{i8T, i8T, i8T, i32T, i8T}, SpecificationVersion::V_1_0}}},
-    {{Profile::pro_fp},
-     {{{fp16T, fp16T, fp16T, fp16T, fp16T}, SpecificationVersion::V_1_0},
-      {{fp16T, fp16T, fp16T, fp32T, fp16T}, SpecificationVersion::V_1_0},
-      {{fp32T, fp32T, fp32T, fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.conv2d",
-   {{{Profile::pro_int},
-     {{{i8T, i8T, i32T, i8T, i8T, i32T, i32T}, SpecificationVersion::V_1_0}}},
-    {{Profile::pro_fp},
-     {{{fp16T, fp16T, fp16T, fp16T, fp16T, fp16T, fp16T}, SpecificationVersion::V_1_0},
-      {{fp16T, fp16T, fp16T, fp16T, fp16T, fp32T, fp16T}, SpecificationVersion::V_1_0},
-      {{fp32T, fp32T, fp32T, fp32T, fp32T, fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.conv3d",
-   {{{Profile::pro_int},
-     {{{i8T, i8T, i32T, i8T, i8T, i32T, i32T}, SpecificationVersion::V_1_0}}},
-    {{Profile::pro_fp},
-     {{{fp16T, fp16T, fp16T, fp16T, fp16T, fp16T, fp16T}, SpecificationVersion::V_1_0},
-      {{fp16T, fp16T, fp16T, fp16T, fp16T, fp32T, fp16T}, SpecificationVersion::V_1_0},
-      {{fp32T, fp32T, fp32T, fp32T, fp32T, fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.depthwise_conv2d",
-   {{{Profile::pro_int},
-     {{{i8T, i8T, i32T, i8T, i8T, i32T, i32T}, SpecificationVersion::V_1_0}}},
-    {{Profile::pro_fp},
-     {{{fp16T, fp16T, fp16T, fp16T, fp16T, fp16T, fp16T}, SpecificationVersion::V_1_0},
-      {{fp16T, fp16T, fp16T, fp16T, fp16T, fp32T, fp16T}, SpecificationVersion::V_1_0},
-      {{fp32T, fp32T, fp32T, fp32T, fp32T, fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.matmul",
-   {{{Profile::pro_int}, {{{i8T, i8T, i8T, i8T, i32T}, SpecificationVersion::V_1_0}}},
-    {{Profile::pro_fp},
-     {{{fp16T, fp16T, fp16T, fp16T, fp16T}, SpecificationVersion::V_1_0},
-      {{fp16T, fp16T, fp16T, fp16T, fp32T}, SpecificationVersion::V_1_0},
-      {{fp32T, fp32T, fp32T, fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.max_pool2d",
-   {{{Profile::pro_int}, {{{i8T, i8T}, SpecificationVersion::V_1_0}}},
-    {{Profile::pro_fp},
-     {{{fp16T, fp16T}, SpecificationVersion::V_1_0}, {{fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.transpose_conv2d",
-   {{{Profile::pro_int},
-     {{{i8T, i8T, i32T, i8T, i8T, i32T, i32T}, SpecificationVersion::V_1_0}}},
-    {{Profile::pro_fp},
-     {{{fp16T, fp16T, fp16T, fp16T, fp16T, fp16T, fp16T}, SpecificationVersion::V_1_0},
-      {{fp16T, fp16T, fp16T, fp16T, fp16T, fp32T, fp16T}, SpecificationVersion::V_1_0},
-      {{fp32T, fp32T, fp32T, fp32T, fp32T, fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.clamp",
-   {{{Profile::pro_int}, {{{i8T, i8T}, SpecificationVersion::V_1_0}}},
-    {{Profile::pro_fp},
-     {{{fp16T, fp16T}, SpecificationVersion::V_1_0}, {{fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.erf",
-   {{{Profile::pro_fp},
-     {{{fp16T, fp16T}, SpecificationVersion::V_1_0}, {{fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.sigmoid",
-   {{{Profile::pro_fp},
-     {{{fp16T, fp16T}, SpecificationVersion::V_1_0}, {{fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.tanh",
-   {{{Profile::pro_fp},
-     {{{fp16T, fp16T}, SpecificationVersion::V_1_0}, {{fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.add",
-   {{{Profile::pro_int, Profile::pro_fp},
-     {{{i32T, i32T, i32T}, SpecificationVersion::V_1_0}},
-     anyOf},
-    {{Profile::pro_fp},
-     {{{fp16T, fp16T, fp16T}, SpecificationVersion::V_1_0},
-      {{fp32T, fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.arithmetic_right_shift",
-   {{{Profile::pro_int},
-     {{{i8T, i8T, i8T}, SpecificationVersion::V_1_0},
-      {{i16T, i16T, i16T}, SpecificationVersion::V_1_0},
-      {{i32T, i32T, i32T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.bitwise_and",
-   {{{Profile::pro_int},
-     {{{i8T, i8T, i8T}, SpecificationVersion::V_1_0},
-      {{i16T, i16T, i16T}, SpecificationVersion::V_1_0},
-      {{i32T, i32T, i32T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.bitwise_or",
-   {{{Profile::pro_int},
-     {{{i8T, i8T, i8T}, SpecificationVersion::V_1_0},
-      {{i16T, i16T, i16T}, SpecificationVersion::V_1_0},
-      {{i32T, i32T, i32T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.bitwise_xor",
-   {{{Profile::pro_int},
-     {{{i8T, i8T, i8T}, SpecificationVersion::V_1_0},
-      {{i16T, i16T, i16T}, SpecificationVersion::V_1_0},
-      {{i32T, i32T, i32T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.intdiv",
-   {{{Profile::pro_int, Profile::pro_fp},
-     {{{i32T, i32T, i32T}, SpecificationVersion::V_1_0}},
-     anyOf}}},
-  {"tosa.logical_and",
-   {{{Profile::pro_int, Profile::pro_fp},
-     {{{boolT, boolT, boolT}, SpecificationVersion::V_1_0}},
-     anyOf}}},
-  {"tosa.logical_left_shift",
-   {{{Profile::pro_int, Profile::pro_fp},
-     {{{i8T, i8T, i8T}, SpecificationVersion::V_1_0},
-      {{i16T, i16T, i16T}, SpecificationVersion::V_1_0},
-      {{i32T, i32T, i32T}, SpecificationVersion::V_1_0}},
-     anyOf}}},
-  {"tosa.logical_right_shift",
-   {{{Profile::pro_int, Profile::pro_fp},
-     {{{i8T, i8T, i8T}, SpecificationVersion::V_1_0},
-      {{i16T, i16T, i16T}, SpecificationVersion::V_1_0},
-      {{i32T, i32T, i32T}, SpecificationVersion::V_1_0}},
-     anyOf}}},
-  {"tosa.logical_or",
-   {{{Profile::pro_int, Profile::pro_fp},
-     {{{boolT, boolT, boolT}, SpecificationVersion::V_1_0}},
-     anyOf}}},
-  {"tosa.logical_xor",
-   {{{Profile::pro_int, Profile::pro_fp},
-     {{{boolT, boolT, boolT}, SpecificationVersion::V_1_0}},
-     anyOf}}},
-  {"tosa.maximum",
-   {{{Profile::pro_int}, {{{i32T, i32T, i32T}, SpecificationVersion::V_1_0}}},
-    {{Profile::pro_fp},
-     {{{fp16T, fp16T, fp16T}, SpecificationVersion::V_1_0},
-      {{fp32T, fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.minimum",
-   {{{Profile::pro_int}, {{{i32T, i32T, i32T}, SpecificationVersion::V_1_0}}},
-    {{Profile::pro_fp},
-     {{{fp16T, fp16T, fp16T}, SpecificationVersion::V_1_0},
-      {{fp32T, fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.mul",
-   {{{Profile::pro_int},
-     {{{i8T, i8T, i32T}, SpecificationVersion::V_1_0},
-      {{i16T, i16T, i32T}, SpecificationVersion::V_1_0}}},
-    {{Profile::pro_int, Profile::pro_fp},
-     {{{i32T, i32T, i32T}, SpecificationVersion::V_1_0}},
-     anyOf},
-    {{Profile::pro_fp},
-     {{{fp16T, fp16T, fp16T}, SpecificationVersion::V_1_0},
-      {{fp32T, fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.pow",
-   {{{Profile::pro_fp},
-     {{{fp16T, fp16T, fp16T}, SpecificationVersion::V_1_0},
-      {{fp32T, fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.sub",
-   {{{Profile::pro_int, Profile::pro_fp},
-     {{{i32T, i32T, i32T}, SpecificationVersion::V_1_0}},
-     anyOf},
-    {{Profile::pro_fp},
-     {{{fp16T, fp16T, fp16T}, SpecificationVersion::V_1_0},
-      {{fp32T, fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.table", {{{Profile::pro_int}, {{{i8T, i8T, i8T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.abs",
-   {{{Profile::pro_int}, {{{i32T, i32T}, SpecificationVersion::V_1_0}}},
-    {{Profile::pro_fp},
-     {{{fp16T, fp16T}, SpecificationVersion::V_1_0}, {{fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.bitwise_not",
-   {{{Profile::pro_int},
-     {{{i8T, i8T}, SpecificationVersion::V_1_0},
-      {{i16T, i16T}, SpecificationVersion::V_1_0},
-      {{i32T, i32T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.ceil",
-   {{{Profile::pro_fp},
-     {{{fp16T, fp16T}, SpecificationVersion::V_1_0}, {{fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.clz", {{{Profile::pro_int}, {{{i32T, i32T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.cos",
-   {{{Profile::pro_fp},
-     {{{fp16T, fp16T}, SpecificationVersion::V_1_0}, {{fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.exp",
-   {{{Profile::pro_fp},
-     {{{fp16T, fp16T}, SpecificationVersion::V_1_0}, {{fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.floor",
-   {{{Profile::pro_fp},
-     {{{fp16T, fp16T}, SpecificationVersion::V_1_0}, {{fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.log",
-   {{{Profile::pro_fp},
-     {{{fp16T, fp16T}, SpecificationVersion::V_1_0}, {{fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.logical_not",
-   {{{Profile::pro_int, Profile::pro_fp},
-     {{{boolT, boolT}, SpecificationVersion::V_1_0}},
-     anyOf}}},
-  {"tosa.negate",
-   {{{Profile::pro_int},
-     {{{i8T, i8T, i8T, i8T}, SpecificationVersion::V_1_0},
-      {{i16T, i16T, i16T, i16T}, SpecificationVersion::V_1_0},
-      {{i32T, i32T, i32T, i32T}, SpecificationVersion::V_1_0}}},
-    {{Profile::pro_fp},
-     {{{fp16T, fp16T, fp16T, fp16T}, SpecificationVersion::V_1_0},
-      {{fp32T, fp32T, fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.reciprocal",
-   {{{Profile::pro_fp},
-     {{{fp16T, fp16T}, SpecificationVersion::V_1_0}, {{fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.rsqrt",
-   {{{Profile::pro_fp},
-     {{{fp16T, fp16T}, SpecificationVersion::V_1_0}, {{fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.sin",
-   {{{Profile::pro_fp},
-     {{{fp16T, fp16T}, SpecificationVersion::V_1_0}, {{fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.select",
-   {{{Profile::pro_int, Profile::pro_fp},
-     {{{boolT, boolT, boolT}, SpecificationVersion::V_1_0}},
-     anyOf},
-    {{Profile::pro_int},
-     {{{i8T, i8T, i8T}, SpecificationVersion::V_1_0},
-      {{i16T, i16T, i16T}, SpecificationVersion::V_1_0},
-      {{i32T, i32T, i32T}, SpecificationVersion::V_1_0}}},
-    {{Profile::pro_fp},
-     {{{fp16T, fp16T, fp16T}, SpecificationVersion::V_1_0},
-      {{fp32T, fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.equal",
-   {{{Profile::pro_int}, {{{i32T, i32T, boolT}, SpecificationVersion::V_1_0}}},
-    {{Profile::pro_fp},
-     {{{fp16T, fp16T, boolT}, SpecificationVersion::V_1_0},
-      {{fp32T, fp32T, boolT}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.greater",
-   {{{Profile::pro_int}, {{{i32T, i32T, boolT}, SpecificationVersion::V_1_0}}},
-    {{Profile::pro_fp},
-     {{{fp16T, fp16T, boolT}, SpecificationVersion::V_1_0},
-      {{fp32T, fp32T, boolT}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.greater_equal",
-   {{{Profile::pro_int}, {{{i32T, i32T, boolT}, SpecificationVersion::V_1_0}}},
-    {{Profile::pro_fp},
-     {{{fp16T, fp16T, boolT}, SpecificationVersion::V_1_0},
-      {{fp32T, fp32T, boolT}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.reduce_all",
-   {{{Profile::pro_int, Profile::pro_fp},
-     {{{boolT, boolT}, SpecificationVersion::V_1_0}},
-     anyOf}}},
-  {"tosa.reduce_any",
-   {{{Profile::pro_int, Profile::pro_fp},
-     {{{boolT, boolT}, SpecificationVersion::V_1_0}},
-     anyOf}}},
-  {"tosa.reduce_max",
-   {{{Profile::pro_int},
-     {{{i8T, i8T}, SpecificationVersion::V_1_0},
-      {{i16T, i16T}, SpecificationVersion::V_1_0},
-      {{i32T, i32T}, SpecificationVersion::V_1_0}}},
-    {{Profile::pro_fp},
-     {{{fp16T, fp16T}, SpecificationVersion::V_1_0}, {{fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.reduce_min",
-   {{{Profile::pro_int},
-     {{{i8T, i8T}, SpecificationVersion::V_1_0},
-      {{i16T, i16T}, SpecificationVersion::V_1_0},
-      {{i32T, i32T}, SpecificationVersion::V_1_0}}},
-    {{Profile::pro_fp},
-     {{{fp16T, fp16T}, SpecificationVersion::V_1_0}, {{fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.reduce_product",
-   {{{Profile::pro_fp},
-     {{{fp16T, fp16T}, SpecificationVersion::V_1_0}, {{fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.reduce_sum",
-   {{{Profile::pro_int}, {{{i32T, i32T}, SpecificationVersion::V_1_0}}},
-    {{Profile::pro_fp},
-     {{{fp16T, fp16T}, SpecificationVersion::V_1_0}, {{fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.concat",
-   {{{Profile::pro_int, Profile::pro_fp},
-     {{{boolT, boolT}, SpecificationVersion::V_1_0}},
-     anyOf},
-    {{Profile::pro_int},
-     {{{i8T, i8T}, SpecificationVersion::V_1_0}, {{i32T, i32T}, SpecificationVersion::V_1_0}}},
-    {{Profile::pro_fp},
-     {{{fp16T, fp16T}, SpecificationVersion::V_1_0}, {{fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.pad",
-   {{{Profile::pro_int, Profile::pro_fp},
-     {{{boolT, boolT, boolT}, SpecificationVersion::V_1_0}},
-     anyOf},
-    {{Profile::pro_int},
-     {{{i8T, i8T, i8T}, SpecificationVersion::V_1_0},
-      {{i16T, i16T, i16T}, SpecificationVersion::V_1_0},
-      {{i32T, i32T, i32T}, SpecificationVersion::V_1_0}}},
-    {{Profile::pro_fp},
-     {{{fp16T, fp16T, fp16T}, SpecificationVersion::V_1_0},
-      {{fp32T, fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.reshape",
-   {{{Profile::pro_int, Profile::pro_fp},
-     {{{boolT, boolT}, SpecificationVersion::V_1_0}},
-     anyOf},
-    {{Profile::pro_int},
-     {{{i8T, i8T}, SpecificationVersion::V_1_0},
-      {{i16T, i16T}, SpecificationVersion::V_1_0},
-      {{i32T, i32T}, SpecificationVersion::V_1_0}}},
-    {{Profile::pro_fp},
-     {{{fp16T, fp16T}, SpecificationVersion::V_1_0}, {{fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.reverse",
-   {{{Profile::pro_int, Profile::pro_fp},
-     {{{boolT, boolT}, SpecificationVersion::V_1_0}},
-     anyOf},
-    {{Profile::pro_int},
-     {{{i8T, i8T}, SpecificationVersion::V_1_0},
-      {{i16T, i16T}, SpecificationVersion::V_1_0},
-      {{i32T, i32T}, SpecificationVersion::V_1_0}}},
-    {{Profile::pro_fp},
-     {{{fp16T, fp16T}, SpecificationVersion::V_1_0}, {{fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.slice",
-   {{{Profile::pro_int, Profile::pro_fp},
-     {{{boolT, boolT}, SpecificationVersion::V_1_0}},
-     anyOf},
-    {{Profile::pro_int},
-     {{{i8T, i8T}, SpecificationVersion::V_1_0},
-      {{i16T, i16T}, SpecificationVersion::V_1_0},
-      {{i32T, i32T}, SpecificationVersion::V_1_0}}},
-    {{Profile::pro_fp},
-     {{{fp16T, fp16T}, SpecificationVersion::V_1_0}, {{fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.tile",
-   {{{Profile::pro_int, Profile::pro_fp},
-     {{{boolT, boolT}, SpecificationVersion::V_1_0}},
-     anyOf},
-    {{Profile::pro_int},
-     {{{i8T, i8T}, SpecificationVersion::V_1_0},
-      {{i16T, i16T}, SpecificationVersion::V_1_0},
-      {{i32T, i32T}, SpecificationVersion::V_1_0}}},
-    {{Profile::pro_fp},
-     {{{fp16T, fp16T}, SpecificationVersion::V_1_0}, {{fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.transpose",
-   {{{Profile::pro_int, Profile::pro_fp},
-     {{{boolT, boolT}, SpecificationVersion::V_1_0}},
-     anyOf},
-    {{Profile::pro_int},
-     {{{i8T, i8T}, SpecificationVersion::V_1_0},
-      {{i16T, i16T}, SpecificationVersion::V_1_0},
-      {{i32T, i32T}, SpecificationVersion::V_1_0}}},
-    {{Profile::pro_fp},
-     {{{fp16T, fp16T}, SpecificationVersion::V_1_0}, {{fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.gather",
-   {{{Profile::pro_int},
-     {{{i8T, i32T, i8T}, SpecificationVersion::V_1_0},
-      {{i16T, i32T, i16T}, SpecificationVersion::V_1_0},
-      {{i32T, i32T, i32T}, SpecificationVersion::V_1_0}}},
-    {{Profile::pro_fp},
-     {{{fp16T, i32T, fp16T}, SpecificationVersion::V_1_0},
-      {{fp32T, i32T, fp32T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.scatter",
-   {{{Profile::pro_int},
-     {{{i8T, i32T, i8T, i8T}, SpecificationVersion::V_1_0},
-      {{i16T, i32T, i16T, i16T}, SpecificationVersion::V_1_0},
-      {{i32T, i32T, i32T, i32T}, SpecificationVersion::V_1_0}}},
-    {{Profile::pro_fp},
-     {{{fp16T, i32T, fp16T, fp16T}, SpecificationVersion::V_1_0},
-      {{fp32T, i32T, fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.resize",
-   {{{Profile::pro_int},
-     {{{i8T, i32T}, SpecificationVersion::V_1_0}, {{i8T, i8T}, SpecificationVersion::V_1_0}}},
-    {{Profile::pro_fp},
-     {{{fp16T, fp16T}, SpecificationVersion::V_1_0}, {{fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.cast",
-   {{{Profile::pro_int},
-     {{{boolT, i8T}, SpecificationVersion::V_1_0},
-      {{boolT, i16T}, SpecificationVersion::V_1_0},
-      {{boolT, i32T}, SpecificationVersion::V_1_0},
-      {{i8T, boolT}, SpecificationVersion::V_1_0},
-      {{i8T, i16T}, SpecificationVersion::V_1_0},
-      {{i8T, i32T}, SpecificationVersion::V_1_0},
-      {{i16T, boolT}, SpecificationVersion::V_1_0},
-      {{i16T, i8T}, SpecificationVersion::V_1_0},
-      {{i16T, i32T}, SpecificationVersion::V_1_0},
-      {{i32T, boolT}, SpecificationVersion::V_1_0},
-      {{i32T, i8T}, SpecificationVersion::V_1_0},
-      {{i32T, i16T}, SpecificationVersion::V_1_0}}},
-    {{Profile::pro_fp},
-     {{{i8T, fp16T}, SpecificationVersion::V_1_0},
-      {{i8T, fp32T}, SpecificationVersion::V_1_0},
-      {{i16T, fp16T}, SpecificationVersion::V_1_0},
-      {{i16T, fp32T}, SpecificationVersion::V_1_0},
-      {{i32T, fp16T}, SpecificationVersion::V_1_0},
-      {{i32T, fp32T}, SpecificationVersion::V_1_0},
-      {{fp16T, i8T}, SpecificationVersion::V_1_0},
-      {{fp16T, i16T}, SpecificationVersion::V_1_0},
-      {{fp16T, i32T}, SpecificationVersion::V_1_0},
-      {{fp16T, fp32T}, SpecificationVersion::V_1_0},
-      {{fp32T, i8T}, SpecificationVersion::V_1_0},
-      {{fp32T, i16T}, SpecificationVersion::V_1_0},
-      {{fp32T, i32T}, SpecificationVersion::V_1_0},
-      {{fp32T, fp16T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.rescale",
-   {{{Profile::pro_int},
-     {{{i8T, i8T, i8T, i8T}, SpecificationVersion::V_1_0},
-      {{i8T, i8T, i16T, i16T}, SpecificationVersion::V_1_0},
-      {{i8T, i8T, i32T, i32T}, SpecificationVersion::V_1_0},
-      {{i16T, i16T, i8T, i8T}, SpecificationVersion::V_1_0},
-      {{i16T, i16T, i16T, i16T}, SpecificationVersion::V_1_0},
-      {{i16T, i16T, i32T, i32T}, SpecificationVersion::V_1_0},
-      {{i32T, i32T, i8T, i8T}, SpecificationVersion::V_1_0},
-      {{i32T, i32T, i16T, i16T}, SpecificationVersion::V_1_0},
-      {{i32T, i32T, i32T, i32T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.const",
-   {{{Profile::pro_int, Profile::pro_fp},
-     {{{boolT}, SpecificationVersion::V_1_0},
-      {{i8T}, SpecificationVersion::V_1_0},
-      {{i16T}, SpecificationVersion::V_1_0},
-      {{i32T}, SpecificationVersion::V_1_0}},
-     anyOf},
-    {{Profile::pro_fp},
-     {{{fp16T}, SpecificationVersion::V_1_0}, {{fp32T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.identity",
-   {{{Profile::pro_int, Profile::pro_fp},
-     {{{boolT, boolT}, SpecificationVersion::V_1_0},
-      {{i8T, i8T}, SpecificationVersion::V_1_0},
-      {{i16T, i16T}, SpecificationVersion::V_1_0},
-      {{i32T, i32T}, SpecificationVersion::V_1_0}},
-     anyOf},
-    {{Profile::pro_fp},
-     {{{fp16T, fp16T}, SpecificationVersion::V_1_0}, {{fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.variable",
-   {{{Profile::pro_int}, {{{i8T}, SpecificationVersion::V_1_0}}},
-    {{Profile::pro_fp},
-     {{{fp16T}, SpecificationVersion::V_1_0}, {{fp32T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.variable_write",
-   {{{Profile::pro_int}, {{{i8T}, SpecificationVersion::V_1_0}}},
-    {{Profile::pro_fp},
-     {{{fp16T}, SpecificationVersion::V_1_0}, {{fp32T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.variable_read",
-   {{{Profile::pro_int}, {{{i8T}, SpecificationVersion::V_1_0}}},
-    {{Profile::pro_fp},
-     {{{fp16T}, SpecificationVersion::V_1_0}, {{fp32T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.argmax",
+     {{{Profile::pro_int}, {{{i8T, i32T}, SpecificationVersion::V_1_0}}},
+      {{Profile::pro_fp},
+       {{{fp16T, i32T}, SpecificationVersion::V_1_0},
+        {{fp32T, i32T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.avg_pool2d",
+     {{{Profile::pro_int},
+       {{{i8T, i8T, i8T, i32T, i8T}, SpecificationVersion::V_1_0}}},
+      {{Profile::pro_fp},
+       {{{fp16T, fp16T, fp16T, fp16T, fp16T}, SpecificationVersion::V_1_0},
+        {{fp16T, fp16T, fp16T, fp32T, fp16T}, SpecificationVersion::V_1_0},
+        {{fp32T, fp32T, fp32T, fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.conv2d",
+     {{{Profile::pro_int},
+       {{{i8T, i8T, i32T, i8T, i8T, i32T, i32T}, SpecificationVersion::V_1_0}}},
+      {{Profile::pro_fp},
+       {{{fp16T, fp16T, fp16T, fp16T, fp16T, fp16T, fp16T},
+         SpecificationVersion::V_1_0},
+        {{fp16T, fp16T, fp16T, fp16T, fp16T, fp32T, fp16T},
+         SpecificationVersion::V_1_0},
+        {{fp32T, fp32T, fp32T, fp32T, fp32T, fp32T, fp32T},
+         SpecificationVersion::V_1_0}}}}},
+    {"tosa.conv3d",
+     {{{Profile::pro_int},
+       {{{i8T, i8T, i32T, i8T, i8T, i32T, i32T}, SpecificationVersion::V_1_0}}},
+      {{Profile::pro_fp},
+       {{{fp16T, fp16T, fp16T, fp16T, fp16T, fp16T, fp16T},
+         SpecificationVersion::V_1_0},
+        {{fp16T, fp16T, fp16T, fp16T, fp16T, fp32T, fp16T},
+         SpecificationVersion::V_1_0},
+        {{fp32T, fp32T, fp32T, fp32T, fp32T, fp32T, fp32T},
+         SpecificationVersion::V_1_0}}}}},
+    {"tosa.depthwise_conv2d",
+     {{{Profile::pro_int},
+       {{{i8T, i8T, i32T, i8T, i8T, i32T, i32T}, SpecificationVersion::V_1_0}}},
+      {{Profile::pro_fp},
+       {{{fp16T, fp16T, fp16T, fp16T, fp16T, fp16T, fp16T},
+         SpecificationVersion::V_1_0},
+        {{fp16T, fp16T, fp16T, fp16T, fp16T, fp32T, fp16T},
+         SpecificationVersion::V_1_0},
+        {{fp32T, fp32T, fp32T, fp32T, fp32T, fp32T, fp32T},
+         SpecificationVersion::V_1_0}}}}},
+    {"tosa.matmul",
+     {{{Profile::pro_int},
+       {{{i8T, i8T, i8T, i8T, i32T}, SpecificationVersion::V_1_0}}},
+      {{Profile::pro_fp},
+       {{{fp16T, fp16T, fp16T, fp16T, fp16T}, SpecificationVersion::V_1_0},
+        {{fp16T, fp16T, fp16T, fp16T, fp32T}, SpecificationVersion::V_1_0},
+        {{fp32T, fp32T, fp32T, fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.max_pool2d",
+     {{{Profile::pro_int}, {{{i8T, i8T}, SpecificationVersion::V_1_0}}},
+      {{Profile::pro_fp},
+       {{{fp16T, fp16T}, SpecificationVersion::V_1_0},
+        {{fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.transpose_conv2d",
+     {{{Profile::pro_int},
+       {{{i8T, i8T, i32T, i8T, i8T, i32T, i32T}, SpecificationVersion::V_1_0}}},
+      {{Profile::pro_fp},
+       {{{fp16T, fp16T, fp16T, fp16T, fp16T, fp16T, fp16T},
+         SpecificationVersion::V_1_0},
+        {{fp16T, fp16T, fp16T, fp16T, fp16T, fp32T, fp16T},
+         SpecificationVersion::V_1_0},
+        {{fp32T, fp32T, fp32T, fp32T, fp32T, fp32T, fp32T},
+         SpecificationVersion::V_1_0}}}}},
+    {"tosa.clamp",
+     {{{Profile::pro_int}, {{{i8T, i8T}, SpecificationVersion::V_1_0}}},
+      {{Profile::pro_fp},
+       {{{fp16T, fp16T}, SpecificationVersion::V_1_0},
+        {{fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.erf",
+     {{{Profile::pro_fp},
+       {{{fp16T, fp16T}, SpecificationVersion::V_1_0},
+        {{fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.sigmoid",
+     {{{Profile::pro_fp},
+       {{{fp16T, fp16T}, SpecificationVersion::V_1_0},
+        {{fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.tanh",
+     {{{Profile::pro_fp},
+       {{{fp16T, fp16T}, SpecificationVersion::V_1_0},
+        {{fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.add",
+     {{{Profile::pro_int, Profile::pro_fp},
+       {{{i32T, i32T, i32T}, SpecificationVersion::V_1_0}},
+       anyOf},
+      {{Profile::pro_fp},
+       {{{fp16T, fp16T, fp16T}, SpecificationVersion::V_1_0},
+        {{fp32T, fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.arithmetic_right_shift",
+     {{{Profile::pro_int},
+       {{{i8T, i8T, i8T}, SpecificationVersion::V_1_0},
+        {{i16T, i16T, i16T}, SpecificationVersion::V_1_0},
+        {{i32T, i32T, i32T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.bitwise_and",
+     {{{Profile::pro_int},
+       {{{i8T, i8T, i8T}, SpecificationVersion::V_1_0},
+        {{i16T, i16T, i16T}, SpecificationVersion::V_1_0},
+        {{i32T, i32T, i32T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.bitwise_or",
+     {{{Profile::pro_int},
+       {{{i8T, i8T, i8T}, SpecificationVersion::V_1_0},
+        {{i16T, i16T, i16T}, SpecificationVersion::V_1_0},
+        {{i32T, i32T, i32T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.bitwise_xor",
+     {{{Profile::pro_int},
+       {{{i8T, i8T, i8T}, SpecificationVersion::V_1_0},
+        {{i16T, i16T, i16T}, SpecificationVersion::V_1_0},
+        {{i32T, i32T, i32T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.intdiv",
+     {{{Profile::pro_int, Profile::pro_fp},
+       {{{i32T, i32T, i32T}, SpecificationVersion::V_1_0}},
+       anyOf}}},
+    {"tosa.logical_and",
+     {{{Profile::pro_int, Profile::pro_fp},
+       {{{boolT, boolT, boolT}, SpecificationVersion::V_1_0}},
+       anyOf}}},
+    {"tosa.logical_left_shift",
+     {{{Profile::pro_int, Profile::pro_fp},
+       {{{i8T, i8T, i8T}, SpecificationVersion::V_1_0},
+        {{i16T, i16T, i16T}, SpecificationVersion::V_1_0},
+        {{i32T, i32T, i32T}, SpecificationVersion::V_1_0}},
+       anyOf}}},
+    {"tosa.logical_right_shift",
+     {{{Profile::pro_int, Profile::pro_fp},
+       {{{i8T, i8T, i8T}, SpecificationVersion::V_1_0},
+        {{i16T, i16T, i16T}, SpecificationVersion::V_1_0},
+        {{i32T, i32T, i32T}, SpecificationVersion::V_1_0}},
+       anyOf}}},
+    {"tosa.logical_or",
+     {{{Profile::pro_int, Profile::pro_fp},
+       {{{boolT, boolT, boolT}, SpecificationVersion::V_1_0}},
+       anyOf}}},
+    {"tosa.logical_xor",
+     {{{Profile::pro_int, Profile::pro_fp},
+       {{{boolT, boolT, boolT}, SpecificationVersion::V_1_0}},
+       anyOf}}},
+    {"tosa.maximum",
+     {{{Profile::pro_int}, {{{i32T, i32T, i32T}, SpecificationVersion::V_1_0}}},
+      {{Profile::pro_fp},
+       {{{fp16T, fp16T, fp16T}, SpecificationVersion::V_1_0},
+        {{fp32T, fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.minimum",
+     {{{Profile::pro_int}, {{{i32T, i32T, i32T}, SpecificationVersion::V_1_0}}},
+      {{Profile::pro_fp},
+       {{{fp16T, fp16T, fp16T}, SpecificationVersion::V_1_0},
+        {{fp32T, fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.mul",
+     {{{Profile::pro_int},
+       {{{i8T, i8T, i32T}, SpecificationVersion::V_1_0},
+        {{i16T, i16T, i32T}, SpecificationVersion::V_1_0}}},
+      {{Profile::pro_int, Profile::pro_fp},
+       {{{i32T, i32T, i32T}, SpecificationVersion::V_1_0}},
+       anyOf},
+      {{Profile::pro_fp},
+       {{{fp16T, fp16T, fp16T}, SpecificationVersion::V_1_0},
+        {{fp32T, fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.pow",
+     {{{Profile::pro_fp},
+       {{{fp16T, fp16T, fp16T}, SpecificationVersion::V_1_0},
+        {{fp32T, fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.sub",
+     {{{Profile::pro_int, Profile::pro_fp},
+       {{{i32T, i32T, i32T}, SpecificationVersion::V_1_0}},
+       anyOf},
+      {{Profile::pro_fp},
+       {{{fp16T, fp16T, fp16T}, SpecificationVersion::V_1_0},
+        {{fp32T, fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.table",
+     {{{Profile::pro_int}, {{{i8T, i8T, i8T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.abs",
+     {{{Profile::pro_int}, {{{i32T, i32T}, SpecificationVersion::V_1_0}}},
+      {{Profile::pro_fp},
+       {{{fp16T, fp16T}, SpecificationVersion::V_1_0},
+        {{fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.bitwise_not",
+     {{{Profile::pro_int},
+       {{{i8T, i8T}, SpecificationVersion::V_1_0},
+        {{i16T, i16T}, SpecificationVersion::V_1_0},
+        {{i32T, i32T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.ceil",
+     {{{Profile::pro_fp},
+       {{{fp16T, fp16T}, SpecificationVersion::V_1_0},
+        {{fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.clz",
+     {{{Profile::pro_int}, {{{i32T, i32T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.cos",
+     {{{Profile::pro_fp},
+       {{{fp16T, fp16T}, SpecificationVersion::V_1_0},
+        {{fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.exp",
+     {{{Profile::pro_fp},
+       {{{fp16T, fp16T}, SpecificationVersion::V_1_0},
+        {{fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.floor",
+     {{{Profile::pro_fp},
+       {{{fp16T, fp16T}, SpecificationVersion::V_1_0},
+        {{fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.log",
+     {{{Profile::pro_fp},
+       {{{fp16T, fp16T}, SpecificationVersion::V_1_0},
+        {{fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.logical_not",
+     {{{Profile::pro_int, Profile::pro_fp},
+       {{{boolT, boolT}, SpecificationVersion::V_1_0}},
+       anyOf}}},
+    {"tosa.negate",
+     {{{Profile::pro_int},
+       {{{i8T, i8T, i8T, i8T}, SpecificationVersion::V_1_0},
+        {{i16T, i16T, i16T, i16T}, SpecificationVersion::V_1_0},
+        {{i32T, i32T, i32T, i32T}, SpecificationVersion::V_1_0}}},
+      {{Profile::pro_fp},
+       {{{fp16T, fp16T, fp16T, fp16T}, SpecificationVersion::V_1_0},
+        {{fp32T, fp32T, fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.reciprocal",
+     {{{Profile::pro_fp},
+       {{{fp16T, fp16T}, SpecificationVersion::V_1_0},
+        {{fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.rsqrt",
+     {{{Profile::pro_fp},
+       {{{fp16T, fp16T}, SpecificationVersion::V_1_0},
+        {{fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.sin",
+     {{{Profile::pro_fp},
+       {{{fp16T, fp16T}, SpecificationVersion::V_1_0},
+        {{fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.select",
+     {{{Profile::pro_int, Profile::pro_fp},
+       {{{boolT, boolT, boolT}, SpecificationVersion::V_1_0}},
+       anyOf},
+      {{Profile::pro_int},
+       {{{i8T, i8T, i8T}, SpecificationVersion::V_1_0},
+        {{i16T, i16T, i16T}, SpecificationVersion::V_1_0},
+        {{i32T, i32T, i32T}, SpecificationVersion::V_1_0}}},
+      {{Profile::pro_fp},
+       {{{fp16T, fp16T, fp16T}, SpecificationVersion::V_1_0},
+        {{fp32T, fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.equal",
+     {{{Profile::pro_int},
+       {{{i32T, i32T, boolT}, SpecificationVersion::V_1_0}}},
+      {{Profile::pro_fp},
+       {{{fp16T, fp16T, boolT}, SpecificationVersion::V_1_0},
+        {{fp32T, fp32T, boolT}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.greater",
+     {{{Profile::pro_int},
+       {{{i32T, i32T, boolT}, SpecificationVersion::V_1_0}}},
+      {{Profile::pro_fp},
+       {{{fp16T, fp16T, boolT}, SpecificationVersion::V_1_0},
+        {{fp32T, fp32T, boolT}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.greater_equal",
+     {{{Profile::pro_int},
+       {{{i32T, i32T, boolT}, SpecificationVersion::V_1_0}}},
+      {{Profile::pro_fp},
+       {{{fp16T, fp16T, boolT}, SpecificationVersion::V_1_0},
+        {{fp32T, fp32T, boolT}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.reduce_all",
+     {{{Profile::pro_int, Profile::pro_fp},
+       {{{boolT, boolT}, SpecificationVersion::V_1_0}},
+       anyOf}}},
+    {"tosa.reduce_any",
+     {{{Profile::pro_int, Profile::pro_fp},
+       {{{boolT, boolT}, SpecificationVersion::V_1_0}},
+       anyOf}}},
+    {"tosa.reduce_max",
+     {{{Profile::pro_int},
+       {{{i8T, i8T}, SpecificationVersion::V_1_0},
+        {{i16T, i16T}, SpecificationVersion::V_1_0},
+        {{i32T, i32T}, SpecificationVersion::V_1_0}}},
+      {{Profile::pro_fp},
+       {{{fp16T, fp16T}, SpecificationVersion::V_1_0},
+        {{fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.reduce_min",
+     {{{Profile::pro_int},
+       {{{i8T, i8T}, SpecificationVersion::V_1_0},
+        {{i16T, i16T}, SpecificationVersion::V_1_0},
+        {{i32T, i32T}, SpecificationVersion::V_1_0}}},
+      {{Profile::pro_fp},
+       {{{fp16T, fp16T}, SpecificationVersion::V_1_0},
+        {{fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.reduce_product",
+     {{{Profile::pro_fp},
+       {{{fp16T, fp16T}, SpecificationVersion::V_1_0},
+        {{fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.reduce_sum",
+     {{{Profile::pro_int}, {{{i32T, i32T}, SpecificationVersion::V_1_0}}},
+      {{Profile::pro_fp},
+       {{{fp16T, fp16T}, SpecificationVersion::V_1_0},
+        {{fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.concat",
+     {{{Profile::pro_int, Profile::pro_fp},
+       {{{boolT, boolT}, SpecificationVersion::V_1_0}},
+       anyOf},
+      {{Profile::pro_int},
+       {{{i8T, i8T}, SpecificationVersion::V_1_0},
+        {{i32T, i32T}, SpecificationVersion::V_1_0}}},
+      {{Profile::pro_fp},
+       {{{fp16T, fp16T}, SpecificationVersion::V_1_0},
+        {{fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.pad",
+     {{{Profile::pro_int, Profile::pro_fp},
+       {{{boolT, boolT, boolT}, SpecificationVersion::V_1_0}},
+       anyOf},
+      {{Profile::pro_int},
+       {{{i8T, i8T, i8T}, SpecificationVersion::V_1_0},
+        {{i16T, i16T, i16T}, SpecificationVersion::V_1_0},
+        {{i32T, i32T, i32T}, SpecificationVersion::V_1_0}}},
+      {{Profile::pro_fp},
+       {{{fp16T, fp16T, fp16T}, SpecificationVersion::V_1_0},
+        {{fp32T, fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.reshape",
+     {{{Profile::pro_int, Profile::pro_fp},
+       {{{boolT, boolT}, SpecificationVersion::V_1_0}},
+       anyOf},
+      {{Profile::pro_int},
+       {{{i8T, i8T}, SpecificationVersion::V_1_0},
+        {{i16T, i16T}, SpecificationVersion::V_1_0},
+        {{i32T, i32T}, SpecificationVersion::V_1_0}}},
+      {{Profile::pro_fp},
+       {{{fp16T, fp16T}, SpecificationVersion::V_1_0},
+        {{fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.reverse",
+     {{{Profile::pro_int, Profile::pro_fp},
+       {{{boolT, boolT}, SpecificationVersion::V_1_0}},
+       anyOf},
+      {{Profile::pro_int},
+       {{{i8T, i8T}, SpecificationVersion::V_1_0},
+        {{i16T, i16T}, SpecificationVersion::V_1_0},
+        {{i32T, i32T}, SpecificationVersion::V_1_0}}},
+      {{Profile::pro_fp},
+       {{{fp16T, fp16T}, SpecificationVersion::V_1_0},
+        {{fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.slice",
+     {{{Profile::pro_int, Profile::pro_fp},
+       {{{boolT, boolT}, SpecificationVersion::V_1_0}},
+       anyOf},
+      {{Profile::pro_int},
+       {{{i8T, i8T}, SpecificationVersion::V_1_0},
+        {{i16T, i16T}, SpecificationVersion::V_1_0},
+        {{i32T, i32T}, SpecificationVersion::V_1_0}}},
+      {{Profile::pro_fp},
+       {{{fp16T, fp16T}, SpecificationVersion::V_1_0},
+        {{fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.tile",
+     {{{Profile::pro_int, Profile::pro_fp},
+       {{{boolT, boolT}, SpecificationVersion::V_1_0}},
+       anyOf},
+      {{Profile::pro_int},
+       {{{i8T, i8T}, SpecificationVersion::V_1_0},
+        {{i16T, i16T}, SpecificationVersion::V_1_0},
+        {{i32T, i32T}, SpecificationVersion::V_1_0}}},
+      {{Profile::pro_fp},
+       {{{fp16T, fp16T}, SpecificationVersion::V_1_0},
+        {{fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.transpose",
+     {{{Profile::pro_int, Profile::pro_fp},
+       {{{boolT, boolT}, SpecificationVersion::V_1_0}},
+       anyOf},
+      {{Profile::pro_int},
+       {{{i8T, i8T}, SpecificationVersion::V_1_0},
+        {{i16T, i16T}, SpecificationVersion::V_1_0},
+        {{i32T, i32T}, SpecificationVersion::V_1_0}}},
+      {{Profile::pro_fp},
+       {{{fp16T, fp16T}, SpecificationVersion::V_1_0},
+        {{fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.gather",
+     {{{Profile::pro_int},
+       {{{i8T, i32T, i8T}, SpecificationVersion::V_1_0},
+        {{i16T, i32T, i16T}, SpecificationVersion::V_1_0},
+        {{i32T, i32T, i32T}, SpecificationVersion::V_1_0}}},
+      {{Profile::pro_fp},
+       {{{fp16T, i32T, fp16T}, SpecificationVersion::V_1_0},
+        {{fp32T, i32T, fp32T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.scatter",
+     {{{Profile::pro_int},
+       {{{i8T, i32T, i8T, i8T}, SpecificationVersion::V_1_0},
+        {{i16T, i32T, i16T, i16T}, SpecificationVersion::V_1_0},
+        {{i32T, i32T, i32T, i32T}, SpecificationVersion::V_1_0}}},
+      {{Profile::pro_fp},
+       {{{fp16T, i32T, fp16T, fp16T}, SpecificationVersion::V_1_0},
+        {{fp32T, i32T, fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.resize",
+     {{{Profile::pro_int},
+       {{{i8T, i32T}, SpecificationVersion::V_1_0},
+        {{i8T, i8T}, SpecificationVersion::V_1_0}}},
+      {{Profile::pro_fp},
+       {{{fp16T, fp16T}, SpecificationVersion::V_1_0},
+        {{fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.cast",
+     {{{Profile::pro_int},
+       {{{boolT, i8T}, SpecificationVersion::V_1_0},
+        {{boolT, i16T}, SpecificationVersion::V_1_0},
+        {{boolT, i32T}, SpecificationVersion::V_1_0},
+        {{i8T, boolT}, SpecificationVersion::V_1_0},
+        {{i8T, i16T}, SpecificationVersion::V_1_0},
+        {{i8T, i32T}, SpecificationVersion::V_1_0},
+        {{i16T, boolT}, SpecificationVersion::V_1_0},
+        {{i16T, i8T}, SpecificationVersion::V_1_0},
+        {{i16T, i32T}, SpecificationVersion::V_1_0},
+        {{i32T, boolT}, SpecificationVersion::V_1_0},
+        {{i32T, i8T}, SpecificationVersion::V_1_0},
+        {{i32T, i16T}, SpecificationVersion::V_1_0}}},
+      {{Profile::pro_fp},
+       {{{i8T, fp16T}, SpecificationVersion::V_1_0},
+        {{i8T, fp32T}, SpecificationVersion::V_1_0},
+        {{i16T, fp16T}, SpecificationVersion::V_1_0},
+        {{i16T, fp32T}, SpecificationVersion::V_1_0},
+        {{i32T, fp16T}, SpecificationVersion::V_1_0},
+        {{i32T, fp32T}, SpecificationVersion::V_1_0},
+        {{fp16T, i8T}, SpecificationVersion::V_1_0},
+        {{fp16T, i16T}, SpecificationVersion::V_1_0},
+        {{fp16T, i32T}, SpecificationVersion::V_1_0},
+        {{fp16T, fp32T}, SpecificationVersion::V_1_0},
+        {{fp32T, i8T}, SpecificationVersion::V_1_0},
+        {{fp32T, i16T}, SpecificationVersion::V_1_0},
+        {{fp32T, i32T}, SpecificationVersion::V_1_0},
+        {{fp32T, fp16T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.rescale",
+     {{{Profile::pro_int},
+       {{{i8T, i8T, i8T, i8T}, SpecificationVersion::V_1_0},
+        {{i8T, i8T, i16T, i16T}, SpecificationVersion::V_1_0},
+        {{i8T, i8T, i32T, i32T}, SpecificationVersion::V_1_0},
+        {{i16T, i16T, i8T, i8T}, SpecificationVersion::V_1_0},
+        {{i16T, i16T, i16T, i16T}, SpecificationVersion::V_1_0},
+        {{i16T, i16T, i32T, i32T}, SpecificationVersion::V_1_0},
+        {{i32T, i32T, i8T, i8T}, SpecificationVersion::V_1_0},
+        {{i32T, i32T, i16T, i16T}, SpecificationVersion::V_1_0},
+        {{i32T, i32T, i32T, i32T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.const",
+     {{{Profile::pro_int, Profile::pro_fp},
+       {{{boolT}, SpecificationVersion::V_1_0},
+        {{i8T}, SpecificationVersion::V_1_0},
+        {{i16T}, SpecificationVersion::V_1_0},
+        {{i32T}, SpecificationVersion::V_1_0}},
+       anyOf},
+      {{Profile::pro_fp},
+       {{{fp16T}, SpecificationVersion::V_1_0},
+        {{fp32T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.identity",
+     {{{Profile::pro_int, Profile::pro_fp},
+       {{{boolT, boolT}, SpecificationVersion::V_1_0},
+        {{i8T, i8T}, SpecificationVersion::V_1_0},
+        {{i16T, i16T}, SpecificationVersion::V_1_0},
+        {{i32T, i32T}, SpecificationVersion::V_1_0}},
+       anyOf},
+      {{Profile::pro_fp},
+       {{{fp16T, fp16T}, SpecificationVersion::V_1_0},
+        {{fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.variable",
+     {{{Profile::pro_int}, {{{i8T}, SpecificationVersion::V_1_0}}},
+      {{Profile::pro_fp},
+       {{{fp16T}, SpecificationVersion::V_1_0},
+        {{fp32T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.variable_write",
+     {{{Profile::pro_int}, {{{i8T}, SpecificationVersion::V_1_0}}},
+      {{Profile::pro_fp},
+       {{{fp16T}, SpecificationVersion::V_1_0},
+        {{fp32T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.variable_read",
+     {{{Profile::pro_int}, {{{i8T}, SpecificationVersion::V_1_0}}},
+      {{Profile::pro_fp},
+       {{{fp16T}, SpecificationVersion::V_1_0},
+        {{fp32T}, SpecificationVersion::V_1_0}}}}},
 };
 
 extensionComplianceMap = {
-  {"tosa.argmax",
-   {{{Extension::int16}, {{{i16T, i32T}, SpecificationVersion::V_1_0}}},
-    {{Extension::fp8e4m3}, {{{fp8e4m3T, i32T}, SpecificationVersion::V_1_0}}},
-    {{Extension::fp8e5m2}, {{{fp8e5m2T, i32T}, SpecificationVersion::V_1_0}}},
-    {{Extension::bf16}, {{{bf16T, i32T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.avg_pool2d",
-   {{{Extension::int16}, {{{i16T, i16T, i16T, i32T, i16T}, SpecificationVersion::V_1_0}}},
-    {{Extension::fp8e4m3},
-     {{{fp8e4m3T, fp8e4m3T, fp8e4m3T, fp16T, fp8e4m3T}, SpecificationVersion::V_1_0}}},
-    {{Extension::fp8e5m2},
-     {{{fp8e5m2T, fp8e5m2T, fp8e5m2T, fp16T, fp8e5m2T}, SpecificationVersion::V_1_0}}},
-    {{Extension::bf16},
-     {{{bf16T, bf16T, bf16T, fp32T, bf16T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.conv2d",
-   {{{Extension::int4},
-     {{{i8T, i4T, i32T, i8T, i4T, i32T, i32T}, SpecificationVersion::V_1_0}}},
-    {{Extension::int16},
-     {{{i16T, i8T, i48T, i16T, i8T, i48T, i48T}, SpecificationVersion::V_1_0}}},
-    {{Extension::fp8e4m3},
-     {{{fp8e4m3T, fp8e4m3T, fp16T, fp8e4m3T, fp8e4m3T, fp16T, fp16T},
-       SpecificationVersion::V_1_0}}},
-    {{Extension::fp8e5m2},
-     {{{fp8e5m2T, fp8e5m2T, fp16T, fp8e5m2T, fp8e5m2T, fp16T, fp16T},
-       SpecificationVersion::V_1_0}}},
-    {{Extension::bf16},
-     {{{bf16T, bf16T, bf16T, bf16T, bf16T, fp32T, bf16T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.conv3d",
-   {{{Extension::int4},
-     {{{i8T, i4T, i32T, i8T, i4T, i32T, i32T}, SpecificationVersion::V_1_0}}},
-    {{Extension::int16},
-     {{{i16T, i8T, i48T, i16T, i8T, i48T, i48T}, SpecificationVersion::V_1_0}}},
-    {{Extension::fp8e4m3},
-     {{{fp8e4m3T, fp8e4m3T, fp16T, fp8e4m3T, fp8e4m3T, fp16T, fp16T},
-       SpecificationVersion::V_1_0}}},
-    {{Extension::fp8e5m2},
-     {{{fp8e5m2T, fp8e5m2T, fp16T, fp8e5m2T, fp8e5m2T, fp16T, fp16T},
-       SpecificationVersion::V_1_0}}},
-    {{Extension::bf16},
-     {{{bf16T, bf16T, bf16T, bf16T, bf16T, fp32T, bf16T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.depthwise_conv2d",
-   {{{Extension::int4},
-     {{{i8T, i4T, i32T, i8T, i4T, i32T, i32T}, SpecificationVersion::V_1_0}}},
-    {{Extension::int16},
-     {{{i16T, i8T, i48T, i16T, i8T, i48T, i48T}, SpecificationVersion::V_1_0}}},
-    {{Extension::fp8e4m3},
-     {{{fp8e4m3T, fp8e4m3T, fp16T, fp8e4m3T, fp8e4m3T, fp16T, fp16T},
-       SpecificationVersion::V_1_0}}},
-    {{Extension::fp8e5m2},
-     {{{fp8e5m2T, fp8e5m2T, fp16T, fp8e5m2T, fp8e5m2T, fp16T, fp16T},
-       SpecificationVersion::V_1_0}}},
-    {{Extension::bf16},
-     {{{bf16T, bf16T, bf16T, bf16T, bf16T, fp32T, bf16T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.fft2d",
-   {{{Extension::fft}, {{{fp32T, fp32T, fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.matmul",
-   {{{Extension::int16}, {{{i16T, i16T, i16T, i16T, i48T}, SpecificationVersion::V_1_0}}},
-    {{Extension::fp8e4m3},
-     {{{fp8e4m3T, fp8e4m3T, fp8e4m3T, fp8e4m3T, fp16T}, SpecificationVersion::V_1_0},
-      {{fp8e4m3T, fp8e4m3T, fp8e4m3T, fp8e4m3T, fp32T}, SpecificationVersion::V_1_1_DRAFT}}},
-    {{Extension::fp8e5m2},
-     {{{fp8e5m2T, fp8e5m2T, fp8e5m2T, fp8e5m2T, fp16T}, SpecificationVersion::V_1_0},
-      {{fp8e5m2T, fp8e5m2T, fp8e5m2T, fp8e5m2T, fp32T}, SpecificationVersion::V_1_1_DRAFT}}},
-    {{Extension::fp8e4m3, Extension::fp8e5m2},
-     {{{fp8e4m3T, fp8e5m2T, fp8e4m3T, fp8e5m2T, fp16T}, SpecificationVersion::V_1_1_DRAFT},
-      {{fp8e4m3T, fp8e5m2T, fp8e4m3T, fp8e5m2T, fp32T}, SpecificationVersion::V_1_1_DRAFT},
-      {{fp8e5m2T, fp8e4m3T, fp8e5m2T, fp8e4m3T, fp16T}, SpecificationVersion::V_1_1_DRAFT},
-      {{fp8e5m2T, fp8e4m3T, fp8e5m2T, fp8e4m3T, fp32T}, SpecificationVersion::V_1_1_DRAFT}},
-     allOf},
-    {{Extension::bf16},
-     {{{bf16T, bf16T, bf16T, bf16T, fp32T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.max_pool2d",
-   {{{Extension::int16}, {{{i16T, i16T}, SpecificationVersion::V_1_0}}},
-    {{Extension::fp8e4m3}, {{{fp8e4m3T, fp8e4m3T}, SpecificationVersion::V_1_0}}},
-    {{Extension::fp8e5m2}, {{{fp8e5m2T, fp8e5m2T}, SpecificationVersion::V_1_0}}},
-    {{Extension::bf16}, {{{bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.rfft2d",
-   {{{Extension::fft}, {{{fp32T, fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.transpose_conv2d",
-   {{{Extension::int4},
-     {{{i8T, i4T, i32T, i8T, i4T, i32T, i32T}, SpecificationVersion::V_1_0}}},
-    {{Extension::int16},
-     {{{i16T, i8T, i48T, i16T, i8T, i48T, i48T}, SpecificationVersion::V_1_0}}},
-    {{Extension::fp8e4m3},
-     {{{fp8e4m3T, fp8e4m3T, fp16T, fp8e4m3T, fp8e4m3T, fp16T, fp16T},
-       SpecificationVersion::V_1_0}}},
-    {{Extension::fp8e5m2},
-     {{{fp8e5m2T, fp8e5m2T, fp16T, fp8e5m2T, fp8e5m2T, fp16T, fp16T},
-       SpecificationVersion::V_1_0}}},
-    {{Extension::bf16},
-     {{{bf16T, bf16T, bf16T, bf16T, bf16T, fp32T, bf16T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.clamp",
-   {{{Extension::int16}, {{{i16T, i16T}, SpecificationVersion::V_1_0}}},
-    {{Extension::bf16}, {{{bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.erf", {{{Extension::bf16}, {{{bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.sigmoid", {{{Extension::bf16}, {{{bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.tanh", {{{Extension::bf16}, {{{bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.add",
-   {{{Extension::bf16}, {{{bf16T, bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.maximum",
-   {{{Extension::bf16}, {{{bf16T, bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.minimum",
-   {{{Extension::bf16}, {{{bf16T, bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.mul",
-   {{{Extension::bf16}, {{{bf16T, bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.pow",
-   {{{Extension::bf16}, {{{bf16T, bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.sub",
-   {{{Extension::bf16}, {{{bf16T, bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.table",
-   {{{Extension::int16}, {{{i16T, i16T, i32T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.abs", {{{Extension::bf16}, {{{bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.ceil", {{{Extension::bf16}, {{{bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.cos", {{{Extension::bf16}, {{{bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.exp", {{{Extension::bf16}, {{{bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.floor", {{{Extension::bf16}, {{{bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.log", {{{Extension::bf16}, {{{bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.negate",
-   {{{Extension::bf16}, {{{bf16T, bf16T, bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.reciprocal",
-   {{{Extension::bf16}, {{{bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.rsqrt", {{{Extension::bf16}, {{{bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.sin", {{{Extension::bf16}, {{{bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.select",
-   {{{Extension::bf16}, {{{bf16T, bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.equal",
-   {{{Extension::bf16}, {{{bf16T, bf16T, boolT}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.greater",
-   {{{Extension::bf16}, {{{bf16T, bf16T, boolT}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.greater_equal",
-   {{{Extension::bf16}, {{{bf16T, bf16T, boolT}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.reduce_max",
-   {{{Extension::bf16}, {{{bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.reduce_min",
-   {{{Extension::bf16}, {{{bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.reduce_product",
-   {{{Extension::bf16}, {{{bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.reduce_sum",
-   {{{Extension::bf16}, {{{bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.concat",
-   {{{Extension::int16}, {{{i16T, i16T}, SpecificationVersion::V_1_0}}},
-    {{Extension::fp8e4m3}, {{{fp8e4m3T, fp8e4m3T}, SpecificationVersion::V_1_0}}},
-    {{Extension::fp8e5m2}, {{{fp8e5m2T, fp8e5m2T}, SpecificationVersion::V_1_0}}},
-    {{Extension::bf16}, {{{bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.pad",
-   {{{Extension::fp8e4m3},
-     {{{fp8e4m3T, fp8e4m3T, fp8e4m3T}, SpecificationVersion::V_1_0}}},
-    {{Extension::fp8e5m2},
-     {{{fp8e5m2T, fp8e5m2T, fp8e5m2T}, SpecificationVersion::V_1_0}}},
-    {{Extension::bf16}, {{{bf16T, bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.reshape",
-   {{{Extension::fp8e4m3}, {{{fp8e4m3T, fp8e4m3T}, SpecificationVersion::V_1_0}}},
-    {{Extension::fp8e5m2}, {{{fp8e5m2T, fp8e5m2T}, SpecificationVersion::V_1_0}}},
-    {{Extension::bf16}, {{{bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.reverse",
-   {{{Extension::fp8e4m3}, {{{fp8e4m3T, fp8e4m3T}, SpecificationVersion::V_1_0}}},
-    {{Extension::fp8e5m2}, {{{fp8e5m2T, fp8e5m2T}, SpecificationVersion::V_1_0}}},
-    {{Extension::bf16}, {{{bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.slice",
-   {{{Extension::fp8e4m3}, {{{fp8e4m3T, fp8e4m3T}, SpecificationVersion::V_1_0}}},
-    {{Extension::fp8e5m2}, {{{fp8e5m2T, fp8e5m2T}, SpecificationVersion::V_1_0}}},
-    {{Extension::bf16}, {{{bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.tile",
-   {{{Extension::fp8e4m3}, {{{fp8e4m3T, fp8e4m3T}, SpecificationVersion::V_1_0}}},
-    {{Extension::fp8e5m2}, {{{fp8e5m2T, fp8e5m2T}, SpecificationVersion::V_1_0}}},
-    {{Extension::bf16}, {{{bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.transpose",
-   {{{Extension::fp8e4m3}, {{{fp8e4m3T, fp8e4m3T}, SpecificationVersion::V_1_0}}},
-    {{Extension::fp8e5m2}, {{{fp8e5m2T, fp8e5m2T}, SpecificationVersion::V_1_0}}},
-    {{Extension::bf16}, {{{bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.gather",
-   {{{Extension::fp8e4m3}, {{{fp8e4m3T, i32T, fp8e4m3T}, SpecificationVersion::V_1_0}}},
-    {{Extension::fp8e5m2}, {{{fp8e5m2T, i32T, fp8e5m2T}, SpecificationVersion::V_1_0}}},
-    {{Extension::bf16}, {{{bf16T, i32T, bf16T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.scatter",
-   {{{Extension::fp8e4m3},
-     {{{fp8e4m3T, i32T, fp8e4m3T, fp8e4m3T}, SpecificationVersion::V_1_0}}},
-    {{Extension::fp8e5m2},
-     {{{fp8e5m2T, i32T, fp8e5m2T, fp8e5m2T}, SpecificationVersion::V_1_0}}},
-    {{Extension::bf16}, {{{bf16T, i32T, bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.resize",
-   {{{Extension::int16},
-     {{{i16T, i48T}, SpecificationVersion::V_1_0}, {{i16T, i16T}, SpecificationVersion::V_1_0}}},
-    {{Extension::bf16}, {{{bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.cast",
-   {{{Extension::bf16},
-     {{{i8T, bf16T}, SpecificationVersion::V_1_0},
-      {{i16T, bf16T}, SpecificationVersion::V_1_0},
-      {{i32T, bf16T}, SpecificationVersion::V_1_0},
-      {{bf16T, i8T}, SpecificationVersion::V_1_0},
-      {{bf16T, i16T}, SpecificationVersion::V_1_0},
-      {{bf16T, i32T}, SpecificationVersion::V_1_0},
-      {{bf16T, fp32T}, SpecificationVersion::V_1_0},
-      {{fp32T, bf16T}, SpecificationVersion::V_1_0}}},
-    {{Extension::bf16, Extension::fp8e4m3},
-     {{{bf16T, fp8e4m3T}, SpecificationVersion::V_1_0},
-      {{fp8e4m3T, bf16T}, SpecificationVersion::V_1_0}},
-     allOf},
-    {{Extension::bf16, Extension::fp8e5m2},
-     {{{bf16T, fp8e5m2T}, SpecificationVersion::V_1_0},
-      {{fp8e5m2T, bf16T}, SpecificationVersion::V_1_0}},
-     allOf},
-    {{Extension::fp8e4m3},
-     {{{fp8e4m3T, fp16T}, SpecificationVersion::V_1_0},
-      {{fp8e4m3T, fp32T}, SpecificationVersion::V_1_0},
-      {{fp16T, fp8e4m3T}, SpecificationVersion::V_1_0},
-      {{fp32T, fp8e4m3T}, SpecificationVersion::V_1_0}}},
-    {{Extension::fp8e5m2},
-     {{{fp8e5m2T, fp16T}, SpecificationVersion::V_1_0},
-      {{fp8e5m2T, fp32T}, SpecificationVersion::V_1_0},
-      {{fp16T, fp8e5m2T}, SpecificationVersion::V_1_0},
-      {{fp32T, fp8e5m2T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.rescale",
-   {{{Extension::int16},
-     {{{i48T, i48T, i8T, i8T}, SpecificationVersion::V_1_0},
-      {{i48T, i48T, i16T, i16T}, SpecificationVersion::V_1_0},
-      {{i48T, i48T, i32T, i32T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.const",
-   {{{Extension::int4}, {{{i4T}, SpecificationVersion::V_1_0}}},
-    {{Extension::int16}, {{{i48T}, SpecificationVersion::V_1_0}}},
-    {{Extension::fp8e4m3}, {{{fp8e4m3T}, SpecificationVersion::V_1_0}}},
-    {{Extension::fp8e5m2}, {{{fp8e5m2T}, SpecificationVersion::V_1_0}}},
-    {{Extension::bf16}, {{{bf16T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.identity",
-   {{{Extension::int4}, {{{i4T, i4T}, SpecificationVersion::V_1_0}}},
-    {{Extension::int16}, {{{i48T, i48T}, SpecificationVersion::V_1_0}}},
-    {{Extension::fp8e4m3}, {{{fp8e4m3T, fp8e4m3T}, SpecificationVersion::V_1_0}}},
-    {{Extension::fp8e5m2}, {{{fp8e5m2T, fp8e5m2T}, SpecificationVersion::V_1_0}}},
-    {{Extension::bf16}, {{{bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.variable",
-   {{{Extension::variable},
-     {{{i8T}, SpecificationVersion::V_1_0},
-      {{fp16T}, SpecificationVersion::V_1_0},
-      {{fp32T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.variable_write",
-   {{{Extension::variable},
-     {{{i8T}, SpecificationVersion::V_1_0},
-      {{fp16T}, SpecificationVersion::V_1_0},
-      {{fp32T}, SpecificationVersion::V_1_0}}}}},
-  {"tosa.variable_read",
-   {{{Extension::variable},
-     {{{i8T}, SpecificationVersion::V_1_0},
-      {{fp16T}, SpecificationVersion::V_1_0},
-      {{fp32T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.argmax",
+     {{{Extension::int16}, {{{i16T, i32T}, SpecificationVersion::V_1_0}}},
+      {{Extension::fp8e4m3}, {{{fp8e4m3T, i32T}, SpecificationVersion::V_1_0}}},
+      {{Extension::fp8e5m2}, {{{fp8e5m2T, i32T}, SpecificationVersion::V_1_0}}},
+      {{Extension::bf16}, {{{bf16T, i32T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.avg_pool2d",
+     {{{Extension::int16},
+       {{{i16T, i16T, i16T, i32T, i16T}, SpecificationVersion::V_1_0}}},
+      {{Extension::fp8e4m3},
+       {{{fp8e4m3T, fp8e4m3T, fp8e4m3T, fp16T, fp8e4m3T},
+         SpecificationVersion::V_1_0}}},
+      {{Extension::fp8e5m2},
+       {{{fp8e5m2T, fp8e5m2T, fp8e5m2T, fp16T, fp8e5m2T},
+         SpecificationVersion::V_1_0}}},
+      {{Extension::bf16},
+       {{{bf16T, bf16T, bf16T, fp32T, bf16T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.conv2d",
+     {{{Extension::int4},
+       {{{i8T, i4T, i32T, i8T, i4T, i32T, i32T}, SpecificationVersion::V_1_0}}},
+      {{Extension::int16},
+       {{{i16T, i8T, i48T, i16T, i8T, i48T, i48T},
+         SpecificationVersion::V_1_0}}},
+      {{Extension::fp8e4m3},
+       {{{fp8e4m3T, fp8e4m3T, fp16T, fp8e4m3T, fp8e4m3T, fp16T, fp16T},
+         SpecificationVersion::V_1_0}}},
+      {{Extension::fp8e5m2},
+       {{{fp8e5m2T, fp8e5m2T, fp16T, fp8e5m2T, fp8e5m2T, fp16T, fp16T},
+         SpecificationVersion::V_1_0}}},
+      {{Extension::bf16},
+       {{{bf16T, bf16T, bf16T, bf16T, bf16T, fp32T, bf16T},
+         SpecificationVersion::V_1_0}}}}},
+    {"tosa.conv3d",
+     {{{Extension::int4},
+       {{{i8T, i4T, i32T, i8T, i4T, i32T, i32T}, SpecificationVersion::V_1_0}}},
+      {{Extension::int16},
+       {{{i16T, i8T, i48T, i16T, i8T, i48T, i48T},
+         SpecificationVersion::V_1_0}}},
+      {{Extension::fp8e4m3},
+       {{{fp8e4m3T, fp8e4m3T, fp16T, fp8e4m3T, fp8e4m3T, fp16T, fp16T},
+         SpecificationVersion::V_1_0}}},
+      {{Extension::fp8e5m2},
+       {{{fp8e5m2T, fp8e5m2T, fp16T, fp8e5m2T, fp8e5m2T, fp16T, fp16T},
+         SpecificationVersion::V_1_0}}},
+      {{Extension::bf16},
+       {{{bf16T, bf16T, bf16T, bf16T, bf16T, fp32T, bf16T},
+         SpecificationVersion::V_1_0}}}}},
+    {"tosa.depthwise_conv2d",
+     {{{Extension::int4},
+       {{{i8T, i4T, i32T, i8T, i4T, i32T, i32T}, SpecificationVersion::V_1_0}}},
+      {{Extension::int16},
+       {{{i16T, i8T, i48T, i16T, i8T, i48T, i48T},
+         SpecificationVersion::V_1_0}}},
+      {{Extension::fp8e4m3},
+       {{{fp8e4m3T, fp8e4m3T, fp16T, fp8e4m3T, fp8e4m3T, fp16T, fp16T},
+         SpecificationVersion::V_1_0}}},
+      {{Extension::fp8e5m2},
+       {{{fp8e5m2T, fp8e5m2T, fp16T, fp8e5m2T, fp8e5m2T, fp16T, fp16T},
+         SpecificationVersion::V_1_0}}},
+      {{Extension::bf16},
+       {{{bf16T, bf16T, bf16T, bf16T, bf16T, fp32T, bf16T},
+         SpecificationVersion::V_1_0}}}}},
+    {"tosa.fft2d",
+     {{{Extension::fft},
+       {{{fp32T, fp32T, fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.matmul",
+     {{{Extension::int16},
+       {{{i16T, i16T, i16T, i16T, i48T}, SpecificationVersion::V_1_0}}},
+      {{Extension::fp8e4m3},
+       {{{fp8e4m3T, fp8e4m3T, fp8e4m3T, fp8e4m3T, fp16T},
+         SpecificationVersion::V_1_0},
+        {{fp8e4m3T, fp8e4m3T, fp8e4m3T, fp8e4m3T, fp32T},
+         SpecificationVersion::V_1_1_DRAFT}}},
+      {{Extension::fp8e5m2},
+       {{{fp8e5m2T, fp8e5m2T, fp8e5m2T, fp8e5m2T, fp16T},
+         SpecificationVersion::V_1_0},
+        {{fp8e5m2T, fp8e5m2T, fp8e5m2T, fp8e5m2T, fp32T},
+         SpecificationVersion::V_1_1_DRAFT}}},
+      {{Extension::fp8e4m3, Extension::fp8e5m2},
+       {{{fp8e4m3T, fp8e5m2T, fp8e4m3T, fp8e5m2T, fp16T},
+         SpecificationVersion::V_1_1_DRAFT},
+        {{fp8e4m3T, fp8e5m2T, fp8e4m3T, fp8e5m2T, fp32T},
+         SpecificationVersion::V_1_1_DRAFT},
+        {{fp8e5m2T, fp8e4m3T, fp8e5m2T, fp8e4m3T, fp16T},
+         SpecificationVersion::V_1_1_DRAFT},
+        {{fp8e5m2T, fp8e4m3T, fp8e5m2T, fp8e4m3T, fp32T},
+         SpecificationVersion::V_1_1_DRAFT}},
+       allOf},
+      {{Extension::bf16},
+       {{{bf16T, bf16T, bf16T, bf16T, fp32T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.max_pool2d",
+     {{{Extension::int16}, {{{i16T, i16T}, SpecificationVersion::V_1_0}}},
+      {{Extension::fp8e4m3},
+       {{{fp8e4m3T, fp8e4m3T}, SpecificationVersion::V_1_0}}},
+      {{Extension::fp8e5m2},
+       {{{fp8e5m2T, fp8e5m2T}, SpecificationVersion::V_1_0}}},
+      {{Extension::bf16}, {{{bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.rfft2d",
+     {{{Extension::fft},
+       {{{fp32T, fp32T, fp32T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.transpose_conv2d",
+     {{{Extension::int4},
+       {{{i8T, i4T, i32T, i8T, i4T, i32T, i32T}, SpecificationVersion::V_1_0}}},
+      {{Extension::int16},
+       {{{i16T, i8T, i48T, i16T, i8T, i48T, i48T},
+         SpecificationVersion::V_1_0}}},
+      {{Extension::fp8e4m3},
+       {{{fp8e4m3T, fp8e4m3T, fp16T, fp8e4m3T, fp8e4m3T, fp16T, fp16T},
+         SpecificationVersion::V_1_0}}},
+      {{Extension::fp8e5m2},
+       {{{fp8e5m2T, fp8e5m2T, fp16T, fp8e5m2T, fp8e5m2T, fp16T, fp16T},
+         SpecificationVersion::V_1_0}}},
+      {{Extension::bf16},
+       {{{bf16T, bf16T, bf16T, bf16T, bf16T, fp32T, bf16T},
+         SpecificationVersion::V_1_0}}}}},
+    {"tosa.clamp",
+     {{{Extension::int16}, {{{i16T, i16T}, SpecificationVersion::V_1_0}}},
+      {{Extension::bf16}, {{{bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.erf",
+     {{{Extension::bf16}, {{{bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.sigmoid",
+     {{{Extension::bf16}, {{{bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.tanh",
+     {{{Extension::bf16}, {{{bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.add",
+     {{{Extension::bf16},
+       {{{bf16T, bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.maximum",
+     {{{Extension::bf16},
+       {{{bf16T, bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.minimum",
+     {{{Extension::bf16},
+       {{{bf16T, bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.mul",
+     {{{Extension::bf16},
+       {{{bf16T, bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.pow",
+     {{{Extension::bf16},
+       {{{bf16T, bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.sub",
+     {{{Extension::bf16},
+       {{{bf16T, bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.table",
+     {{{Extension::int16},
+       {{{i16T, i16T, i32T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.abs",
+     {{{Extension::bf16}, {{{bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.ceil",
+     {{{Extension::bf16}, {{{bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.cos",
+     {{{Extension::bf16}, {{{bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.exp",
+     {{{Extension::bf16}, {{{bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.floor",
+     {{{Extension::bf16}, {{{bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.log",
+     {{{Extension::bf16}, {{{bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.negate",
+     {{{Extension::bf16},
+       {{{bf16T, bf16T, bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.reciprocal",
+     {{{Extension::bf16}, {{{bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.rsqrt",
+     {{{Extension::bf16}, {{{bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.sin",
+     {{{Extension::bf16}, {{{bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.select",
+     {{{Extension::bf16},
+       {{{bf16T, bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.equal",
+     {{{Extension::bf16},
+       {{{bf16T, bf16T, boolT}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.greater",
+     {{{Extension::bf16},
+       {{{bf16T, bf16T, boolT}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.greater_equal",
+     {{{Extension::bf16},
+       {{{bf16T, bf16T, boolT}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.reduce_max",
+     {{{Extension::bf16}, {{{bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.reduce_min",
+     {{{Extension::bf16}, {{{bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.reduce_product",
+     {{{Extension::bf16}, {{{bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.reduce_sum",
+     {{{Extension::bf16}, {{{bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.concat",
+     {{{Extension::int16}, {{{i16T, i16T}, SpecificationVersion::V_1_0}}},
+      {{Extension::fp8e4m3},
+       {{{fp8e4m3T, fp8e4m3T}, SpecificationVersion::V_1_0}}},
+      {{Extension::fp8e5m2},
+       {{{fp8e5m2T, fp8e5m2T}, SpecificationVersion::V_1_0}}},
+      {{Extension::bf16}, {{{bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.pad",
+     {{{Extension::fp8e4m3},
+       {{{fp8e4m3T, fp8e4m3T, fp8e4m3T}, SpecificationVersion::V_1_0}}},
+      {{Extension::fp8e5m2},
+       {{{fp8e5m2T, fp8e5m2T, fp8e5m2T}, SpecificationVersion::V_1_0}}},
+      {{Extension::bf16},
+       {{{bf16T, bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.reshape",
+     {{{Extension::fp8e4m3},
+       {{{fp8e4m3T, fp8e4m3T}, SpecificationVersion::V_1_0}}},
+      {{Extension::fp8e5m2},
+       {{{fp8e5m2T, fp8e5m2T}, SpecificationVersion::V_1_0}}},
+      {{Extension::bf16}, {{{bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.reverse",
+     {{{Extension::fp8e4m3},
+       {{{fp8e4m3T, fp8e4m3T}, SpecificationVersion::V_1_0}}},
+      {{Extension::fp8e5m2},
+       {{{fp8e5m2T, fp8e5m2T}, SpecificationVersion::V_1_0}}},
+      {{Extension::bf16}, {{{bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.slice",
+     {{{Extension::fp8e4m3},
+       {{{fp8e4m3T, fp8e4m3T}, SpecificationVersion::V_1_0}}},
+      {{Extension::fp8e5m2},
+       {{{fp8e5m2T, fp8e5m2T}, SpecificationVersion::V_1_0}}},
+      {{Extension::bf16}, {{{bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.tile",
+     {{{Extension::fp8e4m3},
+       {{{fp8e4m3T, fp8e4m3T}, SpecificationVersion::V_1_0}}},
+      {{Extension::fp8e5m2},
+       {{{fp8e5m2T, fp8e5m2T}, SpecificationVersion::V_1_0}}},
+      {{Extension::bf16}, {{{bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.transpose",
+     {{{Extension::fp8e4m3},
+       {{{fp8e4m3T, fp8e4m3T}, SpecificationVersion::V_1_0}}},
+      {{Extension::fp8e5m2},
+       {{{fp8e5m2T, fp8e5m2T}, SpecificationVersion::V_1_0}}},
+      {{Extension::bf16}, {{{bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.gather",
+     {{{Extension::fp8e4m3},
+       {{{fp8e4m3T, i32T, fp8e4m3T}, SpecificationVersion::V_1_0}}},
+      {{Extension::fp8e5m2},
+       {{{fp8e5m2T, i32T, fp8e5m2T}, SpecificationVersion::V_1_0}}},
+      {{Extension::bf16},
+       {{{bf16T, i32T, bf16T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.scatter",
+     {{{Extension::fp8e4m3},
+       {{{fp8e4m3T, i32T, fp8e4m3T, fp8e4m3T}, SpecificationVersion::V_1_0}}},
+      {{Extension::fp8e5m2},
+       {{{fp8e5m2T, i32T, fp8e5m2T, fp8e5m2T}, SpecificationVersion::V_1_0}}},
+      {{Extension::bf16},
+       {{{bf16T, i32T, bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.resize",
+     {{{Extension::int16},
+       {{{i16T, i48T}, SpecificationVersion::V_1_0},
+        {{i16T, i16T}, SpecificationVersion::V_1_0}}},
+      {{Extension::bf16}, {{{bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.cast",
+     {{{Extension::bf16},
+       {{{i8T, bf16T}, SpecificationVersion::V_1_0},
+        {{i16T, bf16T}, SpecificationVersion::V_1_0},
+        {{i32T, bf16T}, SpecificationVersion::V_1_0},
+        {{bf16T, i8T}, SpecificationVersion::V_1_0},
+        {{bf16T, i16T}, SpecificationVersion::V_1_0},
+        {{bf16T, i32T}, SpecificationVersion::V_1_0},
+        {{bf16T, fp32T}, SpecificationVersion::V_1_0},
+        {{fp32T, bf16T}, SpecificationVersion::V_1_0}}},
+      {{Extension::bf16, Extension::fp8e4m3},
+       {{{bf16T, fp8e4m3T}, SpecificationVersion::V_1_0},
+        {{fp8e4m3T, bf16T}, SpecificationVersion::V_1_0}},
+       allOf},
+      {{Extension::bf16, Extension::fp8e5m2},
+       {{{bf16T, fp8e5m2T}, SpecificationVersion::V_1_0},
+        {{fp8e5m2T, bf16T}, SpecificationVersion::V_1_0}},
+       allOf},
+      {{Extension::fp8e4m3},
+       {{{fp8e4m3T, fp16T}, SpecificationVersion::V_1_0},
+        {{fp8e4m3T, fp32T}, SpecificationVersion::V_1_0},
+        {{fp16T, fp8e4m3T}, SpecificationVersion::V_1_0},
+        {{fp32T, fp8e4m3T}, SpecificationVersion::V_1_0}}},
+      {{Extension::fp8e5m2},
+       {{{fp8e5m2T, fp16T}, SpecificationVersion::V_1_0},
+        {{fp8e5m2T, fp32T}, SpecificationVersion::V_1_0},
+        {{fp16T, fp8e5m2T}, SpecificationVersion::V_1_0},
+        {{fp32T, fp8e5m2T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.rescale",
+     {{{Extension::int16},
+       {{{i48T, i48T, i8T, i8T}, SpecificationVersion::V_1_0},
+        {{i48T, i48T, i16T, i16T}, SpecificationVersion::V_1_0},
+        {{i48T, i48T, i32T, i32T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.const",
+     {{{Extension::int4}, {{{i4T}, SpecificationVersion::V_1_0}}},
+      {{Extension::int16}, {{{i48T}, SpecificationVersion::V_1_0}}},
+      {{Extension::fp8e4m3}, {{{fp8e4m3T}, SpecificationVersion::V_1_0}}},
+      {{Extension::fp8e5m2}, {{{fp8e5m2T}, SpecificationVersion::V_1_0}}},
+      {{Extension::bf16}, {{{bf16T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.identity",
+     {{{Extension::int4}, {{{i4T, i4T}, SpecificationVersion::V_1_0}}},
+      {{Extension::int16}, {{{i48T, i48T}, SpecificationVersion::V_1_0}}},
+      {{Extension::fp8e4m3},
+       {{{fp8e4m3T, fp8e4m3T}, SpecificationVersion::V_1_0}}},
+      {{Extension::fp8e5m2},
+       {{{fp8e5m2T, fp8e5m2T}, SpecificationVersion::V_1_0}}},
+      {{Extension::bf16}, {{{bf16T, bf16T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.variable",
+     {{{Extension::variable},
+       {{{i8T}, SpecificationVersion::V_1_0},
+        {{fp16T}, SpecificationVersion::V_1_0},
+        {{fp32T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.variable_write",
+     {{{Extension::variable},
+       {{{i8T}, SpecificationVersion::V_1_0},
+        {{fp16T}, SpecificationVersion::V_1_0},
+        {{fp32T}, SpecificationVersion::V_1_0}}}}},
+    {"tosa.variable_read",
+     {{{Extension::variable},
+       {{{i8T}, SpecificationVersion::V_1_0},
+        {{fp16T}, SpecificationVersion::V_1_0},
+        {{fp32T}, SpecificationVersion::V_1_0}}}}},
 };
 
 // End of auto-generated metadata

``````````

</details>


https://github.com/llvm/llvm-project/pull/156425


More information about the Mlir-commits mailing list