[Mlir-commits] [mlir] [mlir][transform] Add support for transform.param pad multiples in `PadOp` (PR #90755)

Oleksandr Alex Zinenko llvmlistbot at llvm.org
Thu May 2 07:27:56 PDT 2024


================
@@ -171,6 +171,50 @@ static DiagnosedSilenceableFailure unpackSingleIndexResultPayloadOperations(
   return DiagnosedSilenceableFailure::success();
 }
 
+static DiagnosedSilenceableFailure reifyMixedParamAndHandleResults(
+    TransformState &state, TransformOpInterface &transformOp,
+    const SmallVectorImpl<OpFoldResult> &mixedResults,
+    SmallVectorImpl<int64_t> &reified) {
+  for (OpFoldResult paramOrHandle : mixedResults) {
+    if (isa<Attribute>(paramOrHandle)) {
+      reified.push_back(
+          cast<IntegerAttr>(paramOrHandle.get<Attribute>()).getInt());
+      continue;
+    } else if (isa<Value>(paramOrHandle) &&
+               isa<ParamType>(paramOrHandle.get<Value>().getType())) {
----------------
ftynse wrote:

Nit: at this point, we know that `paramOrHandle` is a `Value` so no need to check.

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


More information about the Mlir-commits mailing list