[Mlir-commits] [mlir] [mlir][spirv] Improve verification for SPIR-V TOSA ops (PR #195624)

Igor Wodiany llvmlistbot at llvm.org
Tue May 5 02:57:54 PDT 2026


================
@@ -247,6 +241,78 @@ class ProductDimOrOneOrDynamicPred<string lhs, int lhsDim, string rhs,
     DimIsOne<output, outputDim>
   ]>;
 
+class AttrIsFloat<string attr> :
+  CPred<"::llvm::isa<::mlir::FloatAttr>(get" #
+        snakeCaseToCamelCase<attr>.ret # "())">;
+
+class AttrIsInteger<string attr> :
+  CPred<"::llvm::isa<::mlir::IntegerAttr>(get" #
+        snakeCaseToCamelCase<attr>.ret # "())">;
+
+class IntegerAttrValue<string attr> :
+  StrFunc<"::llvm::cast<::mlir::IntegerAttr>(get" #
+          snakeCaseToCamelCase<attr>.ret # "()).getValue()">;
+
+class FloatAttrValue<string attr> :
+  StrFunc<"::llvm::cast<::mlir::FloatAttr>(get" #
+          snakeCaseToCamelCase<attr>.ret # "()).getValue()">;
+
+class FloatAttrIsNotNaN<string attr> :
+  Implies<AttrIsFloat<attr>,
+          [CPred<"!::llvm::cast<::mlir::FloatAttr>(get" #
+                 snakeCaseToCamelCase<attr>.ret # "()).getValue().isNaN()">]>;
+
+class RanksMatchPred<string lhs, string rhs> :
----------------
IgWod wrote:

You may be able to use standard `AllRanksMatch` instead of defining a new class, since Arm tensor is a `ShapedType`.

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


More information about the Mlir-commits mailing list