[Mlir-commits] [mlir] [mlir][Transform] Add a transform.match.operation_empty op to allow s… (PR #68319)
Nicolas Vasilache
llvmlistbot at llvm.org
Fri Oct 6 00:04:08 PDT 2023
================
@@ -55,12 +89,15 @@ class SingleOpMatcherOpTrait
TransformState &state) {
Value operandHandle = cast<OpTy>(this->getOperation()).getOperandHandle();
auto payload = state.getPayloadOps(operandHandle);
- if (!llvm::hasSingleElement(payload)) {
+ if (!payload.empty() && !llvm::hasSingleElement(payload)) {
return emitDefiniteFailure(this->getOperation()->getLoc())
- << "SingleOpMatchOpTrait requires the operand handle to point to "
- "a single payload op";
+ << "AtMostOneOpMatcherOpTrait requires the operand handle to "
+ "point to at most one payload op";
+ }
+ if (payload.empty()) {
+ return detail::matchOptionalOperation(cast<OpTy>(this->getOperation()),
----------------
nicolasvasilache wrote:
The leaves use `op.matchOperation`, am I missing something?
https://github.com/llvm/llvm-project/pull/68319
More information about the Mlir-commits
mailing list