44static ::llvm::LogicalResult __mlir_ods_local_type_constraint_Ops1(
45 ::mlir::Operation *op, ::mlir::Type type, ::llvm::StringRef valueKind,
46 unsigned valueIndex) {
47 if (!((::llvm::isa<llzk::polymorphic::TypeVarType,::llzk::felt::FeltType>(type)))) {
48 return op->emitOpError(valueKind) <<
" #" << valueIndex
49 <<
" must be finite field element or type variable, but got " << type;
51 return ::mlir::success();
54static ::llvm::LogicalResult __mlir_ods_local_type_constraint_Ops2(
55 ::mlir::Operation *op, ::mlir::Type type, ::llvm::StringRef valueKind,
56 unsigned valueIndex) {
57 if (!((::llvm::isa<::llzk::felt::FeltType>(type)))) {
58 return op->emitOpError(valueKind) <<
" #" << valueIndex
59 <<
" must be finite field element, but got " << type;
61 return ::mlir::success();
64static ::llvm::LogicalResult __mlir_ods_local_attr_constraint_Ops1(
65 ::mlir::Attribute attr, ::llvm::StringRef attrName, llvm::function_ref<::mlir::InFlightDiagnostic()> emitError) {
66 if (attr && !((::llvm::isa<::llzk::felt::FeltConstAttr>(attr))))
67 return emitError() <<
"attribute '" << attrName
68 <<
"' failed to satisfy constraint: finite field element";
69 return ::mlir::success();
71static ::llvm::LogicalResult __mlir_ods_local_attr_constraint_Ops1(
72 ::mlir::Operation *op, ::mlir::Attribute attr, ::llvm::StringRef attrName) {
73 return __mlir_ods_local_attr_constraint_Ops1(attr, attrName, [op]() {
74 return op->emitOpError();
91 return ::mlir::success();
94void AddFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Type result, ::mlir::Value lhs, ::mlir::Value rhs) {
95 odsState.addOperands(lhs);
96 odsState.addOperands(rhs);
97 odsState.addTypes(result);
100void AddFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Value lhs, ::mlir::Value rhs) {
101 odsState.addOperands(lhs);
102 odsState.addOperands(rhs);
104 ::llvm::SmallVector<::mlir::Type, 2> inferredReturnTypes;
106 odsState.location, odsState.operands,
107 odsState.attributes.getDictionary(odsState.getContext()),
108 odsState.getRawProperties(),
109 odsState.regions, inferredReturnTypes)))
110 odsState.addTypes(inferredReturnTypes);
112 ::mlir::detail::reportFatalInferReturnTypesError(odsState);
116void AddFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::Value lhs, ::mlir::Value rhs) {
117 odsState.addOperands(lhs);
118 odsState.addOperands(rhs);
119 assert(resultTypes.size() == 1u &&
"mismatched number of results");
120 odsState.addTypes(resultTypes);
123void AddFeltOp::build(::mlir::OpBuilder &, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes) {
124 assert(operands.size() == 2u &&
"mismatched number of parameters");
125 odsState.addOperands(operands);
126 odsState.addAttributes(attributes);
127 assert(resultTypes.size() == 1u &&
"mismatched number of return types");
128 odsState.addTypes(resultTypes);
131void AddFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes) {
132 assert(operands.size() == 2u &&
"mismatched number of parameters");
133 odsState.addOperands(operands);
134 odsState.addAttributes(attributes);
136 ::llvm::SmallVector<::mlir::Type, 2> inferredReturnTypes;
138 odsState.location, operands,
139 odsState.attributes.getDictionary(odsState.getContext()),
140 odsState.getRawProperties(),
141 odsState.regions, inferredReturnTypes))) {
142 assert(inferredReturnTypes.size() == 1u &&
"mismatched number of return types");
143 odsState.addTypes(inferredReturnTypes);
145 ::llvm::report_fatal_error(
"Failed to infer result type(s).");
151 unsigned index = 0; (void)index;
154 for (
auto v : valueGroup0) {
155 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops1(*
this, v.getType(),
"operand", index++)))
156 return ::mlir::failure();
160 for (
auto v : valueGroup1) {
161 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops1(*
this, v.getType(),
"operand", index++)))
162 return ::mlir::failure();
166 unsigned index = 0; (void)index;
169 for (
auto v : valueGroup0) {
170 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops2(*
this, v.getType(),
"result", index++)))
171 return ::mlir::failure();
175 return emitOpError(
"failed to verify that result type matches with lhs type");
177 return emitOpError(
"failed to verify that result type matches with rhs type");
178 return ::mlir::success();
185::llvm::LogicalResult
AddFeltOp::inferReturnTypes(::mlir::MLIRContext *context, ::std::optional<::mlir::Location> location, ::mlir::ValueRange operands, ::mlir::DictionaryAttr attributes, ::mlir::OpaqueProperties properties, ::mlir::RegionRange regions, ::llvm::SmallVectorImpl<::mlir::Type>&inferredReturnTypes) {
186 inferredReturnTypes.resize(1);
187 ::mlir::Builder odsBuilder(context);
189 inferredReturnTypes[0] = odsInferredType0;
190 return ::mlir::success();
193::mlir::ParseResult
AddFeltOp::parse(::mlir::OpAsmParser &parser, ::mlir::OperationState &result) {
194 ::mlir::OpAsmParser::UnresolvedOperand lhsRawOperand{};
195 ::llvm::ArrayRef<::mlir::OpAsmParser::UnresolvedOperand> lhsOperands(&lhsRawOperand, 1); ::llvm::SMLoc lhsOperandsLoc;
196 (void)lhsOperandsLoc;
197 ::mlir::OpAsmParser::UnresolvedOperand rhsRawOperand{};
198 ::llvm::ArrayRef<::mlir::OpAsmParser::UnresolvedOperand> rhsOperands(&rhsRawOperand, 1); ::llvm::SMLoc rhsOperandsLoc;
199 (void)rhsOperandsLoc;
200 ::mlir::Type lhsRawType{};
201 ::llvm::ArrayRef<::mlir::Type> lhsTypes(&lhsRawType, 1);
202 ::mlir::Type rhsRawType{};
203 ::llvm::ArrayRef<::mlir::Type> rhsTypes(&rhsRawType, 1);
205 lhsOperandsLoc = parser.getCurrentLocation();
206 if (parser.parseOperand(lhsRawOperand))
207 return ::mlir::failure();
208 if (parser.parseComma())
209 return ::mlir::failure();
211 rhsOperandsLoc = parser.getCurrentLocation();
212 if (parser.parseOperand(rhsRawOperand))
213 return ::mlir::failure();
215 auto odsResult = parseInferredOrParsedType(parser, lhsRawType,
true);
216 if (odsResult) return ::mlir::failure();
219 auto odsResult = parseInferredOrParsedType(parser, rhsRawType,
false);
220 if (odsResult) return ::mlir::failure();
223 auto loc = parser.getCurrentLocation();(void)loc;
224 if (parser.parseOptionalAttrDict(result.attributes))
225 return ::mlir::failure();
228 result.addTypes(odsBuildableType0);
229 if (parser.resolveOperands(lhsOperands, lhsTypes, lhsOperandsLoc, result.operands))
230 return ::mlir::failure();
231 if (parser.resolveOperands(rhsOperands, rhsTypes, rhsOperandsLoc, result.operands))
232 return ::mlir::failure();
233 return ::mlir::success();
242 printInferredOrParsedType(_odsPrinter, *
this,
getLhs().getType(),
true);
243 printInferredOrParsedType(_odsPrinter, *
this,
getRhs().getType(),
false);
244 ::llvm::SmallVector<::llvm::StringRef, 2> elidedAttrs;
245 _odsPrinter.printOptionalAttrDict((*this)->getAttrs(), elidedAttrs);
248void AddFeltOp::getEffects(::llvm::SmallVectorImpl<::mlir::SideEffects::EffectInstance<::mlir::MemoryEffects::Effect>> &effects) {
267 return ::mlir::success();
270void AndFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Type result, ::mlir::Value lhs, ::mlir::Value rhs) {
271 odsState.addOperands(lhs);
272 odsState.addOperands(rhs);
273 odsState.addTypes(result);
276void AndFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Value lhs, ::mlir::Value rhs) {
277 odsState.addOperands(lhs);
278 odsState.addOperands(rhs);
280 ::llvm::SmallVector<::mlir::Type, 2> inferredReturnTypes;
282 odsState.location, odsState.operands,
283 odsState.attributes.getDictionary(odsState.getContext()),
284 odsState.getRawProperties(),
285 odsState.regions, inferredReturnTypes)))
286 odsState.addTypes(inferredReturnTypes);
288 ::mlir::detail::reportFatalInferReturnTypesError(odsState);
292void AndFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::Value lhs, ::mlir::Value rhs) {
293 odsState.addOperands(lhs);
294 odsState.addOperands(rhs);
295 assert(resultTypes.size() == 1u &&
"mismatched number of results");
296 odsState.addTypes(resultTypes);
299void AndFeltOp::build(::mlir::OpBuilder &, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes) {
300 assert(operands.size() == 2u &&
"mismatched number of parameters");
301 odsState.addOperands(operands);
302 odsState.addAttributes(attributes);
303 assert(resultTypes.size() == 1u &&
"mismatched number of return types");
304 odsState.addTypes(resultTypes);
307void AndFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes) {
308 assert(operands.size() == 2u &&
"mismatched number of parameters");
309 odsState.addOperands(operands);
310 odsState.addAttributes(attributes);
312 ::llvm::SmallVector<::mlir::Type, 2> inferredReturnTypes;
314 odsState.location, operands,
315 odsState.attributes.getDictionary(odsState.getContext()),
316 odsState.getRawProperties(),
317 odsState.regions, inferredReturnTypes))) {
318 assert(inferredReturnTypes.size() == 1u &&
"mismatched number of return types");
319 odsState.addTypes(inferredReturnTypes);
321 ::llvm::report_fatal_error(
"Failed to infer result type(s).");
327 unsigned index = 0; (void)index;
330 for (
auto v : valueGroup0) {
331 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops1(*
this, v.getType(),
"operand", index++)))
332 return ::mlir::failure();
336 for (
auto v : valueGroup1) {
337 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops1(*
this, v.getType(),
"operand", index++)))
338 return ::mlir::failure();
342 unsigned index = 0; (void)index;
345 for (
auto v : valueGroup0) {
346 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops2(*
this, v.getType(),
"result", index++)))
347 return ::mlir::failure();
351 return emitOpError(
"failed to verify that result type matches with lhs type");
353 return emitOpError(
"failed to verify that result type matches with rhs type");
354 return ::mlir::success();
361::llvm::LogicalResult
AndFeltOp::inferReturnTypes(::mlir::MLIRContext *context, ::std::optional<::mlir::Location> location, ::mlir::ValueRange operands, ::mlir::DictionaryAttr attributes, ::mlir::OpaqueProperties properties, ::mlir::RegionRange regions, ::llvm::SmallVectorImpl<::mlir::Type>&inferredReturnTypes) {
362 inferredReturnTypes.resize(1);
363 ::mlir::Builder odsBuilder(context);
365 inferredReturnTypes[0] = odsInferredType0;
366 return ::mlir::success();
369::mlir::ParseResult
AndFeltOp::parse(::mlir::OpAsmParser &parser, ::mlir::OperationState &result) {
370 ::mlir::OpAsmParser::UnresolvedOperand lhsRawOperand{};
371 ::llvm::ArrayRef<::mlir::OpAsmParser::UnresolvedOperand> lhsOperands(&lhsRawOperand, 1); ::llvm::SMLoc lhsOperandsLoc;
372 (void)lhsOperandsLoc;
373 ::mlir::OpAsmParser::UnresolvedOperand rhsRawOperand{};
374 ::llvm::ArrayRef<::mlir::OpAsmParser::UnresolvedOperand> rhsOperands(&rhsRawOperand, 1); ::llvm::SMLoc rhsOperandsLoc;
375 (void)rhsOperandsLoc;
376 ::mlir::Type lhsRawType{};
377 ::llvm::ArrayRef<::mlir::Type> lhsTypes(&lhsRawType, 1);
378 ::mlir::Type rhsRawType{};
379 ::llvm::ArrayRef<::mlir::Type> rhsTypes(&rhsRawType, 1);
381 lhsOperandsLoc = parser.getCurrentLocation();
382 if (parser.parseOperand(lhsRawOperand))
383 return ::mlir::failure();
384 if (parser.parseComma())
385 return ::mlir::failure();
387 rhsOperandsLoc = parser.getCurrentLocation();
388 if (parser.parseOperand(rhsRawOperand))
389 return ::mlir::failure();
391 auto odsResult = parseInferredOrParsedType(parser, lhsRawType,
true);
392 if (odsResult) return ::mlir::failure();
395 auto odsResult = parseInferredOrParsedType(parser, rhsRawType,
false);
396 if (odsResult) return ::mlir::failure();
399 auto loc = parser.getCurrentLocation();(void)loc;
400 if (parser.parseOptionalAttrDict(result.attributes))
401 return ::mlir::failure();
404 result.addTypes(odsBuildableType0);
405 if (parser.resolveOperands(lhsOperands, lhsTypes, lhsOperandsLoc, result.operands))
406 return ::mlir::failure();
407 if (parser.resolveOperands(rhsOperands, rhsTypes, rhsOperandsLoc, result.operands))
408 return ::mlir::failure();
409 return ::mlir::success();
418 printInferredOrParsedType(_odsPrinter, *
this,
getLhs().getType(),
true);
419 printInferredOrParsedType(_odsPrinter, *
this,
getRhs().getType(),
false);
420 ::llvm::SmallVector<::llvm::StringRef, 2> elidedAttrs;
421 _odsPrinter.printOptionalAttrDict((*this)->getAttrs(), elidedAttrs);
424void AndFeltOp::getEffects(::llvm::SmallVectorImpl<::mlir::SideEffects::EffectInstance<::mlir::MemoryEffects::Effect>> &effects) {
443 return ::mlir::success();
446void DivFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Type result, ::mlir::Value lhs, ::mlir::Value rhs) {
447 odsState.addOperands(lhs);
448 odsState.addOperands(rhs);
449 odsState.addTypes(result);
452void DivFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Value lhs, ::mlir::Value rhs) {
453 odsState.addOperands(lhs);
454 odsState.addOperands(rhs);
456 ::llvm::SmallVector<::mlir::Type, 2> inferredReturnTypes;
458 odsState.location, odsState.operands,
459 odsState.attributes.getDictionary(odsState.getContext()),
460 odsState.getRawProperties(),
461 odsState.regions, inferredReturnTypes)))
462 odsState.addTypes(inferredReturnTypes);
464 ::mlir::detail::reportFatalInferReturnTypesError(odsState);
468void DivFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::Value lhs, ::mlir::Value rhs) {
469 odsState.addOperands(lhs);
470 odsState.addOperands(rhs);
471 assert(resultTypes.size() == 1u &&
"mismatched number of results");
472 odsState.addTypes(resultTypes);
475void DivFeltOp::build(::mlir::OpBuilder &, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes) {
476 assert(operands.size() == 2u &&
"mismatched number of parameters");
477 odsState.addOperands(operands);
478 odsState.addAttributes(attributes);
479 assert(resultTypes.size() == 1u &&
"mismatched number of return types");
480 odsState.addTypes(resultTypes);
483void DivFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes) {
484 assert(operands.size() == 2u &&
"mismatched number of parameters");
485 odsState.addOperands(operands);
486 odsState.addAttributes(attributes);
488 ::llvm::SmallVector<::mlir::Type, 2> inferredReturnTypes;
490 odsState.location, operands,
491 odsState.attributes.getDictionary(odsState.getContext()),
492 odsState.getRawProperties(),
493 odsState.regions, inferredReturnTypes))) {
494 assert(inferredReturnTypes.size() == 1u &&
"mismatched number of return types");
495 odsState.addTypes(inferredReturnTypes);
497 ::llvm::report_fatal_error(
"Failed to infer result type(s).");
503 unsigned index = 0; (void)index;
506 for (
auto v : valueGroup0) {
507 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops1(*
this, v.getType(),
"operand", index++)))
508 return ::mlir::failure();
512 for (
auto v : valueGroup1) {
513 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops1(*
this, v.getType(),
"operand", index++)))
514 return ::mlir::failure();
518 unsigned index = 0; (void)index;
521 for (
auto v : valueGroup0) {
522 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops2(*
this, v.getType(),
"result", index++)))
523 return ::mlir::failure();
527 return emitOpError(
"failed to verify that result type matches with lhs type");
529 return emitOpError(
"failed to verify that result type matches with rhs type");
530 return ::mlir::success();
537::llvm::LogicalResult
DivFeltOp::inferReturnTypes(::mlir::MLIRContext *context, ::std::optional<::mlir::Location> location, ::mlir::ValueRange operands, ::mlir::DictionaryAttr attributes, ::mlir::OpaqueProperties properties, ::mlir::RegionRange regions, ::llvm::SmallVectorImpl<::mlir::Type>&inferredReturnTypes) {
538 inferredReturnTypes.resize(1);
539 ::mlir::Builder odsBuilder(context);
541 inferredReturnTypes[0] = odsInferredType0;
542 return ::mlir::success();
545::mlir::ParseResult
DivFeltOp::parse(::mlir::OpAsmParser &parser, ::mlir::OperationState &result) {
546 ::mlir::OpAsmParser::UnresolvedOperand lhsRawOperand{};
547 ::llvm::ArrayRef<::mlir::OpAsmParser::UnresolvedOperand> lhsOperands(&lhsRawOperand, 1); ::llvm::SMLoc lhsOperandsLoc;
548 (void)lhsOperandsLoc;
549 ::mlir::OpAsmParser::UnresolvedOperand rhsRawOperand{};
550 ::llvm::ArrayRef<::mlir::OpAsmParser::UnresolvedOperand> rhsOperands(&rhsRawOperand, 1); ::llvm::SMLoc rhsOperandsLoc;
551 (void)rhsOperandsLoc;
552 ::mlir::Type lhsRawType{};
553 ::llvm::ArrayRef<::mlir::Type> lhsTypes(&lhsRawType, 1);
554 ::mlir::Type rhsRawType{};
555 ::llvm::ArrayRef<::mlir::Type> rhsTypes(&rhsRawType, 1);
557 lhsOperandsLoc = parser.getCurrentLocation();
558 if (parser.parseOperand(lhsRawOperand))
559 return ::mlir::failure();
560 if (parser.parseComma())
561 return ::mlir::failure();
563 rhsOperandsLoc = parser.getCurrentLocation();
564 if (parser.parseOperand(rhsRawOperand))
565 return ::mlir::failure();
567 auto odsResult = parseInferredOrParsedType(parser, lhsRawType,
true);
568 if (odsResult) return ::mlir::failure();
571 auto odsResult = parseInferredOrParsedType(parser, rhsRawType,
false);
572 if (odsResult) return ::mlir::failure();
575 auto loc = parser.getCurrentLocation();(void)loc;
576 if (parser.parseOptionalAttrDict(result.attributes))
577 return ::mlir::failure();
580 result.addTypes(odsBuildableType0);
581 if (parser.resolveOperands(lhsOperands, lhsTypes, lhsOperandsLoc, result.operands))
582 return ::mlir::failure();
583 if (parser.resolveOperands(rhsOperands, rhsTypes, rhsOperandsLoc, result.operands))
584 return ::mlir::failure();
585 return ::mlir::success();
594 printInferredOrParsedType(_odsPrinter, *
this,
getLhs().getType(),
true);
595 printInferredOrParsedType(_odsPrinter, *
this,
getRhs().getType(),
false);
596 ::llvm::SmallVector<::llvm::StringRef, 2> elidedAttrs;
597 _odsPrinter.printOptionalAttrDict((*this)->getAttrs(), elidedAttrs);
600void DivFeltOp::getEffects(::llvm::SmallVectorImpl<::mlir::SideEffects::EffectInstance<::mlir::MemoryEffects::Effect>> &effects) {
619 return attr.getValue();
627 if (!tblgen_value)
return emitError(loc,
"'felt.const' op ""requires attribute 'value'");
629 if (tblgen_value && !((::llvm::isa<::llzk::felt::FeltConstAttr>(tblgen_value))))
630 return emitError(loc,
"'felt.const' op ""attribute 'value' failed to satisfy constraint: finite field element");
631 return ::mlir::success();
635 ::mlir::DictionaryAttr dict = ::llvm::dyn_cast<::mlir::DictionaryAttr>(attr);
637 emitError() <<
"expected DictionaryAttr to set properties";
638 return ::mlir::failure();
642 auto &propStorage = prop.
value;
643 auto attr = dict.get(
"value");
645 auto convertedAttr = ::llvm::dyn_cast<std::remove_reference_t<
decltype(propStorage)>>(attr);
647 propStorage = convertedAttr;
649 emitError() <<
"Invalid attribute `value` in property conversion: " << attr;
650 return ::mlir::failure();
654 return ::mlir::success();
658 ::mlir::SmallVector<::mlir::NamedAttribute> attrs;
659 ::mlir::Builder odsBuilder{ctx};
662 const auto &propStorage = prop.
value;
664 attrs.push_back(odsBuilder.getNamedAttr(
"value",
669 return odsBuilder.getDictionaryAttr(attrs);
674 return llvm::hash_combine(
675 llvm::hash_value(prop.
value.getAsOpaquePointer()));
685 if (name ==
"value") {
686 prop.
value = ::llvm::dyn_cast_or_null<std::remove_reference_t<
decltype(prop.
value)>>(value);
692 if (prop.
value) attrs.append(
"value", prop.
value);
698 if (attr && ::mlir::failed(__mlir_ods_local_attr_constraint_Ops1(attr,
"value", emitError)))
699 return ::mlir::failure();
701 return ::mlir::success();
705 auto &prop = state.getOrAddProperties<
Properties>(); (void)prop;
706 if (::mlir::failed(reader.readAttribute(prop.
value)))
707 return ::mlir::failure();
708 return ::mlir::success();
712 auto &prop = getProperties(); (void)prop;
713 writer.writeAttribute(prop.
value);
718 return attr.getValue();
721void FeltConstantOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Type result, ::llzk::felt::FeltConstAttr value) {
722 odsState.getOrAddProperties<
Properties>().value = value;
723 odsState.addTypes(result);
726void FeltConstantOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::llzk::felt::FeltConstAttr value) {
727 odsState.getOrAddProperties<
Properties>().value = value;
729 ::llvm::SmallVector<::mlir::Type, 2> inferredReturnTypes;
731 odsState.location, odsState.operands,
732 odsState.attributes.getDictionary(odsState.getContext()),
733 odsState.getRawProperties(),
734 odsState.regions, inferredReturnTypes)))
735 odsState.addTypes(inferredReturnTypes);
737 ::mlir::detail::reportFatalInferReturnTypesError(odsState);
741void FeltConstantOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::llzk::felt::FeltConstAttr value) {
742 odsState.getOrAddProperties<
Properties>().value = value;
743 assert(resultTypes.size() == 1u &&
"mismatched number of results");
744 odsState.addTypes(resultTypes);
747void FeltConstantOp::build(::mlir::OpBuilder &, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes) {
748 assert(operands.size() == 0u &&
"mismatched number of parameters");
749 odsState.addOperands(operands);
750 odsState.addAttributes(attributes);
751 assert(resultTypes.size() == 1u &&
"mismatched number of return types");
752 odsState.addTypes(resultTypes);
754 if (!attributes.empty()) {
755 ::mlir::OpaqueProperties properties =
757 std::optional<::mlir::RegisteredOperationName> info =
758 odsState.name.getRegisteredInfo();
759 if (failed(info->setOpPropertiesFromAttribute(odsState.name, properties,
760 odsState.attributes.getDictionary(odsState.getContext()),
nullptr)))
761 ::llvm::report_fatal_error(
"Property conversion failed.");
765void FeltConstantOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes) {
766 assert(operands.size() == 0u &&
"mismatched number of parameters");
767 odsState.addOperands(operands);
768 odsState.addAttributes(attributes);
770 if (!attributes.empty()) {
771 ::mlir::OpaqueProperties properties =
773 std::optional<::mlir::RegisteredOperationName> info =
774 odsState.name.getRegisteredInfo();
775 if (failed(info->setOpPropertiesFromAttribute(odsState.name, properties,
776 odsState.attributes.getDictionary(odsState.getContext()),
nullptr)))
777 ::llvm::report_fatal_error(
"Property conversion failed.");
779 ::llvm::SmallVector<::mlir::Type, 2> inferredReturnTypes;
781 odsState.location, operands,
782 odsState.attributes.getDictionary(odsState.getContext()),
783 odsState.getRawProperties(),
784 odsState.regions, inferredReturnTypes))) {
785 assert(inferredReturnTypes.size() == 1u &&
"mismatched number of return types");
786 odsState.addTypes(inferredReturnTypes);
788 ::llvm::report_fatal_error(
"Failed to infer result type(s).");
793 auto tblgen_value = getProperties().value; (void)tblgen_value;
794 if (!tblgen_value)
return emitOpError(
"requires attribute 'value'");
796 if (::mlir::failed(__mlir_ods_local_attr_constraint_Ops1(*
this, tblgen_value,
"value")))
797 return ::mlir::failure();
799 unsigned index = 0; (void)index;
802 for (
auto v : valueGroup0) {
803 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops2(*
this, v.getType(),
"result", index++)))
804 return ::mlir::failure();
807 return ::mlir::success();
814::llvm::LogicalResult
FeltConstantOp::inferReturnTypes(::mlir::MLIRContext *context, ::std::optional<::mlir::Location> location, ::mlir::ValueRange operands, ::mlir::DictionaryAttr attributes, ::mlir::OpaqueProperties properties, ::mlir::RegionRange regions, ::llvm::SmallVectorImpl<::mlir::Type>&inferredReturnTypes) {
815 inferredReturnTypes.resize(1);
816 ::mlir::Builder odsBuilder(context);
818 inferredReturnTypes[0] = odsInferredType0;
819 return ::mlir::success();
823 ::llzk::felt::FeltConstAttr valueAttr;
825 if (parser.parseCustomAttributeWithFallback(valueAttr, ::mlir::Type{})) {
826 return ::mlir::failure();
830 auto loc = parser.getCurrentLocation();(void)loc;
831 if (parser.parseOptionalAttrDict(result.attributes))
832 return ::mlir::failure();
834 return parser.emitError(loc) <<
"'" << result.name.getStringRef() <<
"' op ";
836 return ::mlir::failure();
839 result.addTypes(odsBuildableType0);
840 return ::mlir::success();
846 ::llvm::SmallVector<::llvm::StringRef, 2> elidedAttrs;
847 elidedAttrs.push_back(
"value");
848 _odsPrinter.printOptionalAttrDict((*this)->getAttrs(), elidedAttrs);
870 return ::mlir::success();
873void InvFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Type result, ::mlir::Value operand) {
874 odsState.addOperands(operand);
875 odsState.addTypes(result);
878void InvFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Value operand) {
879 odsState.addOperands(operand);
881 ::llvm::SmallVector<::mlir::Type, 2> inferredReturnTypes;
883 odsState.location, odsState.operands,
884 odsState.attributes.getDictionary(odsState.getContext()),
885 odsState.getRawProperties(),
886 odsState.regions, inferredReturnTypes)))
887 odsState.addTypes(inferredReturnTypes);
889 ::mlir::detail::reportFatalInferReturnTypesError(odsState);
893void InvFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::Value operand) {
894 odsState.addOperands(operand);
895 assert(resultTypes.size() == 1u &&
"mismatched number of results");
896 odsState.addTypes(resultTypes);
899void InvFeltOp::build(::mlir::OpBuilder &, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes) {
900 assert(operands.size() == 1u &&
"mismatched number of parameters");
901 odsState.addOperands(operands);
902 odsState.addAttributes(attributes);
903 assert(resultTypes.size() == 1u &&
"mismatched number of return types");
904 odsState.addTypes(resultTypes);
907void InvFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes) {
908 assert(operands.size() == 1u &&
"mismatched number of parameters");
909 odsState.addOperands(operands);
910 odsState.addAttributes(attributes);
912 ::llvm::SmallVector<::mlir::Type, 2> inferredReturnTypes;
914 odsState.location, operands,
915 odsState.attributes.getDictionary(odsState.getContext()),
916 odsState.getRawProperties(),
917 odsState.regions, inferredReturnTypes))) {
918 assert(inferredReturnTypes.size() == 1u &&
"mismatched number of return types");
919 odsState.addTypes(inferredReturnTypes);
921 ::llvm::report_fatal_error(
"Failed to infer result type(s).");
927 unsigned index = 0; (void)index;
930 for (
auto v : valueGroup0) {
931 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops1(*
this, v.getType(),
"operand", index++)))
932 return ::mlir::failure();
936 unsigned index = 0; (void)index;
939 for (
auto v : valueGroup0) {
940 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops2(*
this, v.getType(),
"result", index++)))
941 return ::mlir::failure();
945 return emitOpError(
"failed to verify that result type matches with operand type");
946 return ::mlir::success();
953::llvm::LogicalResult
InvFeltOp::inferReturnTypes(::mlir::MLIRContext *context, ::std::optional<::mlir::Location> location, ::mlir::ValueRange operands, ::mlir::DictionaryAttr attributes, ::mlir::OpaqueProperties properties, ::mlir::RegionRange regions, ::llvm::SmallVectorImpl<::mlir::Type>&inferredReturnTypes) {
954 inferredReturnTypes.resize(1);
955 ::mlir::Builder odsBuilder(context);
957 inferredReturnTypes[0] = odsInferredType0;
958 return ::mlir::success();
961::mlir::ParseResult
InvFeltOp::parse(::mlir::OpAsmParser &parser, ::mlir::OperationState &result) {
962 ::mlir::OpAsmParser::UnresolvedOperand operandRawOperand{};
963 ::llvm::ArrayRef<::mlir::OpAsmParser::UnresolvedOperand> operandOperands(&operandRawOperand, 1); ::llvm::SMLoc operandOperandsLoc;
964 (void)operandOperandsLoc;
965 ::mlir::Type operandRawType{};
966 ::llvm::ArrayRef<::mlir::Type> operandTypes(&operandRawType, 1);
968 operandOperandsLoc = parser.getCurrentLocation();
969 if (parser.parseOperand(operandRawOperand))
970 return ::mlir::failure();
972 auto odsResult = parseInferredOrParsedType(parser, operandRawType,
true);
973 if (odsResult) return ::mlir::failure();
976 auto loc = parser.getCurrentLocation();(void)loc;
977 if (parser.parseOptionalAttrDict(result.attributes))
978 return ::mlir::failure();
981 result.addTypes(odsBuildableType0);
982 if (parser.resolveOperands(operandOperands, operandTypes, operandOperandsLoc, result.operands))
983 return ::mlir::failure();
984 return ::mlir::success();
990 printInferredOrParsedType(_odsPrinter, *
this,
getOperand().getType(),
true);
991 ::llvm::SmallVector<::llvm::StringRef, 2> elidedAttrs;
992 _odsPrinter.printOptionalAttrDict((*this)->getAttrs(), elidedAttrs);
995void InvFeltOp::getEffects(::llvm::SmallVectorImpl<::mlir::SideEffects::EffectInstance<::mlir::MemoryEffects::Effect>> &effects) {
1014 return ::mlir::success();
1017void MulFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Type result, ::mlir::Value lhs, ::mlir::Value rhs) {
1018 odsState.addOperands(lhs);
1019 odsState.addOperands(rhs);
1020 odsState.addTypes(result);
1023void MulFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Value lhs, ::mlir::Value rhs) {
1024 odsState.addOperands(lhs);
1025 odsState.addOperands(rhs);
1027 ::llvm::SmallVector<::mlir::Type, 2> inferredReturnTypes;
1029 odsState.location, odsState.operands,
1030 odsState.attributes.getDictionary(odsState.getContext()),
1031 odsState.getRawProperties(),
1032 odsState.regions, inferredReturnTypes)))
1033 odsState.addTypes(inferredReturnTypes);
1035 ::mlir::detail::reportFatalInferReturnTypesError(odsState);
1039void MulFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::Value lhs, ::mlir::Value rhs) {
1040 odsState.addOperands(lhs);
1041 odsState.addOperands(rhs);
1042 assert(resultTypes.size() == 1u &&
"mismatched number of results");
1043 odsState.addTypes(resultTypes);
1046void MulFeltOp::build(::mlir::OpBuilder &, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes) {
1047 assert(operands.size() == 2u &&
"mismatched number of parameters");
1048 odsState.addOperands(operands);
1049 odsState.addAttributes(attributes);
1050 assert(resultTypes.size() == 1u &&
"mismatched number of return types");
1051 odsState.addTypes(resultTypes);
1054void MulFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes) {
1055 assert(operands.size() == 2u &&
"mismatched number of parameters");
1056 odsState.addOperands(operands);
1057 odsState.addAttributes(attributes);
1059 ::llvm::SmallVector<::mlir::Type, 2> inferredReturnTypes;
1061 odsState.location, operands,
1062 odsState.attributes.getDictionary(odsState.getContext()),
1063 odsState.getRawProperties(),
1064 odsState.regions, inferredReturnTypes))) {
1065 assert(inferredReturnTypes.size() == 1u &&
"mismatched number of return types");
1066 odsState.addTypes(inferredReturnTypes);
1068 ::llvm::report_fatal_error(
"Failed to infer result type(s).");
1074 unsigned index = 0; (void)index;
1077 for (
auto v : valueGroup0) {
1078 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops1(*
this, v.getType(),
"operand", index++)))
1079 return ::mlir::failure();
1083 for (
auto v : valueGroup1) {
1084 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops1(*
this, v.getType(),
"operand", index++)))
1085 return ::mlir::failure();
1089 unsigned index = 0; (void)index;
1092 for (
auto v : valueGroup0) {
1093 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops2(*
this, v.getType(),
"result", index++)))
1094 return ::mlir::failure();
1098 return emitOpError(
"failed to verify that result type matches with lhs type");
1100 return emitOpError(
"failed to verify that result type matches with rhs type");
1101 return ::mlir::success();
1108::llvm::LogicalResult
MulFeltOp::inferReturnTypes(::mlir::MLIRContext *context, ::std::optional<::mlir::Location> location, ::mlir::ValueRange operands, ::mlir::DictionaryAttr attributes, ::mlir::OpaqueProperties properties, ::mlir::RegionRange regions, ::llvm::SmallVectorImpl<::mlir::Type>&inferredReturnTypes) {
1109 inferredReturnTypes.resize(1);
1110 ::mlir::Builder odsBuilder(context);
1112 inferredReturnTypes[0] = odsInferredType0;
1113 return ::mlir::success();
1116::mlir::ParseResult
MulFeltOp::parse(::mlir::OpAsmParser &parser, ::mlir::OperationState &result) {
1117 ::mlir::OpAsmParser::UnresolvedOperand lhsRawOperand{};
1118 ::llvm::ArrayRef<::mlir::OpAsmParser::UnresolvedOperand> lhsOperands(&lhsRawOperand, 1); ::llvm::SMLoc lhsOperandsLoc;
1119 (void)lhsOperandsLoc;
1120 ::mlir::OpAsmParser::UnresolvedOperand rhsRawOperand{};
1121 ::llvm::ArrayRef<::mlir::OpAsmParser::UnresolvedOperand> rhsOperands(&rhsRawOperand, 1); ::llvm::SMLoc rhsOperandsLoc;
1122 (void)rhsOperandsLoc;
1123 ::mlir::Type lhsRawType{};
1124 ::llvm::ArrayRef<::mlir::Type> lhsTypes(&lhsRawType, 1);
1125 ::mlir::Type rhsRawType{};
1126 ::llvm::ArrayRef<::mlir::Type> rhsTypes(&rhsRawType, 1);
1128 lhsOperandsLoc = parser.getCurrentLocation();
1129 if (parser.parseOperand(lhsRawOperand))
1130 return ::mlir::failure();
1131 if (parser.parseComma())
1132 return ::mlir::failure();
1134 rhsOperandsLoc = parser.getCurrentLocation();
1135 if (parser.parseOperand(rhsRawOperand))
1136 return ::mlir::failure();
1138 auto odsResult = parseInferredOrParsedType(parser, lhsRawType,
true);
1139 if (odsResult) return ::mlir::failure();
1142 auto odsResult = parseInferredOrParsedType(parser, rhsRawType,
false);
1143 if (odsResult) return ::mlir::failure();
1146 auto loc = parser.getCurrentLocation();(void)loc;
1147 if (parser.parseOptionalAttrDict(result.attributes))
1148 return ::mlir::failure();
1151 result.addTypes(odsBuildableType0);
1152 if (parser.resolveOperands(lhsOperands, lhsTypes, lhsOperandsLoc, result.operands))
1153 return ::mlir::failure();
1154 if (parser.resolveOperands(rhsOperands, rhsTypes, rhsOperandsLoc, result.operands))
1155 return ::mlir::failure();
1156 return ::mlir::success();
1165 printInferredOrParsedType(_odsPrinter, *
this,
getLhs().getType(),
true);
1166 printInferredOrParsedType(_odsPrinter, *
this,
getRhs().getType(),
false);
1167 ::llvm::SmallVector<::llvm::StringRef, 2> elidedAttrs;
1168 _odsPrinter.printOptionalAttrDict((*this)->getAttrs(), elidedAttrs);
1171void MulFeltOp::getEffects(::llvm::SmallVectorImpl<::mlir::SideEffects::EffectInstance<::mlir::MemoryEffects::Effect>> &effects) {
1190 return ::mlir::success();
1193void NegFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Type result, ::mlir::Value operand) {
1194 odsState.addOperands(operand);
1195 odsState.addTypes(result);
1198void NegFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Value operand) {
1199 odsState.addOperands(operand);
1201 ::llvm::SmallVector<::mlir::Type, 2> inferredReturnTypes;
1203 odsState.location, odsState.operands,
1204 odsState.attributes.getDictionary(odsState.getContext()),
1205 odsState.getRawProperties(),
1206 odsState.regions, inferredReturnTypes)))
1207 odsState.addTypes(inferredReturnTypes);
1209 ::mlir::detail::reportFatalInferReturnTypesError(odsState);
1213void NegFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::Value operand) {
1214 odsState.addOperands(operand);
1215 assert(resultTypes.size() == 1u &&
"mismatched number of results");
1216 odsState.addTypes(resultTypes);
1219void NegFeltOp::build(::mlir::OpBuilder &, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes) {
1220 assert(operands.size() == 1u &&
"mismatched number of parameters");
1221 odsState.addOperands(operands);
1222 odsState.addAttributes(attributes);
1223 assert(resultTypes.size() == 1u &&
"mismatched number of return types");
1224 odsState.addTypes(resultTypes);
1227void NegFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes) {
1228 assert(operands.size() == 1u &&
"mismatched number of parameters");
1229 odsState.addOperands(operands);
1230 odsState.addAttributes(attributes);
1232 ::llvm::SmallVector<::mlir::Type, 2> inferredReturnTypes;
1234 odsState.location, operands,
1235 odsState.attributes.getDictionary(odsState.getContext()),
1236 odsState.getRawProperties(),
1237 odsState.regions, inferredReturnTypes))) {
1238 assert(inferredReturnTypes.size() == 1u &&
"mismatched number of return types");
1239 odsState.addTypes(inferredReturnTypes);
1241 ::llvm::report_fatal_error(
"Failed to infer result type(s).");
1247 unsigned index = 0; (void)index;
1250 for (
auto v : valueGroup0) {
1251 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops1(*
this, v.getType(),
"operand", index++)))
1252 return ::mlir::failure();
1256 unsigned index = 0; (void)index;
1259 for (
auto v : valueGroup0) {
1260 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops2(*
this, v.getType(),
"result", index++)))
1261 return ::mlir::failure();
1265 return emitOpError(
"failed to verify that result type matches with operand type");
1266 return ::mlir::success();
1273::llvm::LogicalResult
NegFeltOp::inferReturnTypes(::mlir::MLIRContext *context, ::std::optional<::mlir::Location> location, ::mlir::ValueRange operands, ::mlir::DictionaryAttr attributes, ::mlir::OpaqueProperties properties, ::mlir::RegionRange regions, ::llvm::SmallVectorImpl<::mlir::Type>&inferredReturnTypes) {
1274 inferredReturnTypes.resize(1);
1275 ::mlir::Builder odsBuilder(context);
1277 inferredReturnTypes[0] = odsInferredType0;
1278 return ::mlir::success();
1281::mlir::ParseResult
NegFeltOp::parse(::mlir::OpAsmParser &parser, ::mlir::OperationState &result) {
1282 ::mlir::OpAsmParser::UnresolvedOperand operandRawOperand{};
1283 ::llvm::ArrayRef<::mlir::OpAsmParser::UnresolvedOperand> operandOperands(&operandRawOperand, 1); ::llvm::SMLoc operandOperandsLoc;
1284 (void)operandOperandsLoc;
1285 ::mlir::Type operandRawType{};
1286 ::llvm::ArrayRef<::mlir::Type> operandTypes(&operandRawType, 1);
1288 operandOperandsLoc = parser.getCurrentLocation();
1289 if (parser.parseOperand(operandRawOperand))
1290 return ::mlir::failure();
1292 auto odsResult = parseInferredOrParsedType(parser, operandRawType,
true);
1293 if (odsResult) return ::mlir::failure();
1296 auto loc = parser.getCurrentLocation();(void)loc;
1297 if (parser.parseOptionalAttrDict(result.attributes))
1298 return ::mlir::failure();
1301 result.addTypes(odsBuildableType0);
1302 if (parser.resolveOperands(operandOperands, operandTypes, operandOperandsLoc, result.operands))
1303 return ::mlir::failure();
1304 return ::mlir::success();
1310 printInferredOrParsedType(_odsPrinter, *
this,
getOperand().getType(),
true);
1311 ::llvm::SmallVector<::llvm::StringRef, 2> elidedAttrs;
1312 _odsPrinter.printOptionalAttrDict((*this)->getAttrs(), elidedAttrs);
1315void NegFeltOp::getEffects(::llvm::SmallVectorImpl<::mlir::SideEffects::EffectInstance<::mlir::MemoryEffects::Effect>> &effects) {
1334 return ::mlir::success();
1337void NotFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Type result, ::mlir::Value operand) {
1338 odsState.addOperands(operand);
1339 odsState.addTypes(result);
1342void NotFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Value operand) {
1343 odsState.addOperands(operand);
1345 ::llvm::SmallVector<::mlir::Type, 2> inferredReturnTypes;
1347 odsState.location, odsState.operands,
1348 odsState.attributes.getDictionary(odsState.getContext()),
1349 odsState.getRawProperties(),
1350 odsState.regions, inferredReturnTypes)))
1351 odsState.addTypes(inferredReturnTypes);
1353 ::mlir::detail::reportFatalInferReturnTypesError(odsState);
1357void NotFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::Value operand) {
1358 odsState.addOperands(operand);
1359 assert(resultTypes.size() == 1u &&
"mismatched number of results");
1360 odsState.addTypes(resultTypes);
1363void NotFeltOp::build(::mlir::OpBuilder &, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes) {
1364 assert(operands.size() == 1u &&
"mismatched number of parameters");
1365 odsState.addOperands(operands);
1366 odsState.addAttributes(attributes);
1367 assert(resultTypes.size() == 1u &&
"mismatched number of return types");
1368 odsState.addTypes(resultTypes);
1371void NotFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes) {
1372 assert(operands.size() == 1u &&
"mismatched number of parameters");
1373 odsState.addOperands(operands);
1374 odsState.addAttributes(attributes);
1376 ::llvm::SmallVector<::mlir::Type, 2> inferredReturnTypes;
1378 odsState.location, operands,
1379 odsState.attributes.getDictionary(odsState.getContext()),
1380 odsState.getRawProperties(),
1381 odsState.regions, inferredReturnTypes))) {
1382 assert(inferredReturnTypes.size() == 1u &&
"mismatched number of return types");
1383 odsState.addTypes(inferredReturnTypes);
1385 ::llvm::report_fatal_error(
"Failed to infer result type(s).");
1391 unsigned index = 0; (void)index;
1394 for (
auto v : valueGroup0) {
1395 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops1(*
this, v.getType(),
"operand", index++)))
1396 return ::mlir::failure();
1400 unsigned index = 0; (void)index;
1403 for (
auto v : valueGroup0) {
1404 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops2(*
this, v.getType(),
"result", index++)))
1405 return ::mlir::failure();
1409 return emitOpError(
"failed to verify that result type matches with operand type");
1410 return ::mlir::success();
1417::llvm::LogicalResult
NotFeltOp::inferReturnTypes(::mlir::MLIRContext *context, ::std::optional<::mlir::Location> location, ::mlir::ValueRange operands, ::mlir::DictionaryAttr attributes, ::mlir::OpaqueProperties properties, ::mlir::RegionRange regions, ::llvm::SmallVectorImpl<::mlir::Type>&inferredReturnTypes) {
1418 inferredReturnTypes.resize(1);
1419 ::mlir::Builder odsBuilder(context);
1421 inferredReturnTypes[0] = odsInferredType0;
1422 return ::mlir::success();
1425::mlir::ParseResult
NotFeltOp::parse(::mlir::OpAsmParser &parser, ::mlir::OperationState &result) {
1426 ::mlir::OpAsmParser::UnresolvedOperand operandRawOperand{};
1427 ::llvm::ArrayRef<::mlir::OpAsmParser::UnresolvedOperand> operandOperands(&operandRawOperand, 1); ::llvm::SMLoc operandOperandsLoc;
1428 (void)operandOperandsLoc;
1429 ::mlir::Type operandRawType{};
1430 ::llvm::ArrayRef<::mlir::Type> operandTypes(&operandRawType, 1);
1432 operandOperandsLoc = parser.getCurrentLocation();
1433 if (parser.parseOperand(operandRawOperand))
1434 return ::mlir::failure();
1436 auto odsResult = parseInferredOrParsedType(parser, operandRawType,
true);
1437 if (odsResult) return ::mlir::failure();
1440 auto loc = parser.getCurrentLocation();(void)loc;
1441 if (parser.parseOptionalAttrDict(result.attributes))
1442 return ::mlir::failure();
1445 result.addTypes(odsBuildableType0);
1446 if (parser.resolveOperands(operandOperands, operandTypes, operandOperandsLoc, result.operands))
1447 return ::mlir::failure();
1448 return ::mlir::success();
1454 printInferredOrParsedType(_odsPrinter, *
this,
getOperand().getType(),
true);
1455 ::llvm::SmallVector<::llvm::StringRef, 2> elidedAttrs;
1456 _odsPrinter.printOptionalAttrDict((*this)->getAttrs(), elidedAttrs);
1459void NotFeltOp::getEffects(::llvm::SmallVectorImpl<::mlir::SideEffects::EffectInstance<::mlir::MemoryEffects::Effect>> &effects) {
1478 return ::mlir::success();
1481void OrFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Type result, ::mlir::Value lhs, ::mlir::Value rhs) {
1482 odsState.addOperands(lhs);
1483 odsState.addOperands(rhs);
1484 odsState.addTypes(result);
1487void OrFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Value lhs, ::mlir::Value rhs) {
1488 odsState.addOperands(lhs);
1489 odsState.addOperands(rhs);
1491 ::llvm::SmallVector<::mlir::Type, 2> inferredReturnTypes;
1493 odsState.location, odsState.operands,
1494 odsState.attributes.getDictionary(odsState.getContext()),
1495 odsState.getRawProperties(),
1496 odsState.regions, inferredReturnTypes)))
1497 odsState.addTypes(inferredReturnTypes);
1499 ::mlir::detail::reportFatalInferReturnTypesError(odsState);
1503void OrFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::Value lhs, ::mlir::Value rhs) {
1504 odsState.addOperands(lhs);
1505 odsState.addOperands(rhs);
1506 assert(resultTypes.size() == 1u &&
"mismatched number of results");
1507 odsState.addTypes(resultTypes);
1510void OrFeltOp::build(::mlir::OpBuilder &, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes) {
1511 assert(operands.size() == 2u &&
"mismatched number of parameters");
1512 odsState.addOperands(operands);
1513 odsState.addAttributes(attributes);
1514 assert(resultTypes.size() == 1u &&
"mismatched number of return types");
1515 odsState.addTypes(resultTypes);
1518void OrFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes) {
1519 assert(operands.size() == 2u &&
"mismatched number of parameters");
1520 odsState.addOperands(operands);
1521 odsState.addAttributes(attributes);
1523 ::llvm::SmallVector<::mlir::Type, 2> inferredReturnTypes;
1525 odsState.location, operands,
1526 odsState.attributes.getDictionary(odsState.getContext()),
1527 odsState.getRawProperties(),
1528 odsState.regions, inferredReturnTypes))) {
1529 assert(inferredReturnTypes.size() == 1u &&
"mismatched number of return types");
1530 odsState.addTypes(inferredReturnTypes);
1532 ::llvm::report_fatal_error(
"Failed to infer result type(s).");
1538 unsigned index = 0; (void)index;
1541 for (
auto v : valueGroup0) {
1542 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops1(*
this, v.getType(),
"operand", index++)))
1543 return ::mlir::failure();
1547 for (
auto v : valueGroup1) {
1548 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops1(*
this, v.getType(),
"operand", index++)))
1549 return ::mlir::failure();
1553 unsigned index = 0; (void)index;
1556 for (
auto v : valueGroup0) {
1557 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops2(*
this, v.getType(),
"result", index++)))
1558 return ::mlir::failure();
1562 return emitOpError(
"failed to verify that result type matches with lhs type");
1564 return emitOpError(
"failed to verify that result type matches with rhs type");
1565 return ::mlir::success();
1572::llvm::LogicalResult
OrFeltOp::inferReturnTypes(::mlir::MLIRContext *context, ::std::optional<::mlir::Location> location, ::mlir::ValueRange operands, ::mlir::DictionaryAttr attributes, ::mlir::OpaqueProperties properties, ::mlir::RegionRange regions, ::llvm::SmallVectorImpl<::mlir::Type>&inferredReturnTypes) {
1573 inferredReturnTypes.resize(1);
1574 ::mlir::Builder odsBuilder(context);
1576 inferredReturnTypes[0] = odsInferredType0;
1577 return ::mlir::success();
1580::mlir::ParseResult
OrFeltOp::parse(::mlir::OpAsmParser &parser, ::mlir::OperationState &result) {
1581 ::mlir::OpAsmParser::UnresolvedOperand lhsRawOperand{};
1582 ::llvm::ArrayRef<::mlir::OpAsmParser::UnresolvedOperand> lhsOperands(&lhsRawOperand, 1); ::llvm::SMLoc lhsOperandsLoc;
1583 (void)lhsOperandsLoc;
1584 ::mlir::OpAsmParser::UnresolvedOperand rhsRawOperand{};
1585 ::llvm::ArrayRef<::mlir::OpAsmParser::UnresolvedOperand> rhsOperands(&rhsRawOperand, 1); ::llvm::SMLoc rhsOperandsLoc;
1586 (void)rhsOperandsLoc;
1587 ::mlir::Type lhsRawType{};
1588 ::llvm::ArrayRef<::mlir::Type> lhsTypes(&lhsRawType, 1);
1589 ::mlir::Type rhsRawType{};
1590 ::llvm::ArrayRef<::mlir::Type> rhsTypes(&rhsRawType, 1);
1592 lhsOperandsLoc = parser.getCurrentLocation();
1593 if (parser.parseOperand(lhsRawOperand))
1594 return ::mlir::failure();
1595 if (parser.parseComma())
1596 return ::mlir::failure();
1598 rhsOperandsLoc = parser.getCurrentLocation();
1599 if (parser.parseOperand(rhsRawOperand))
1600 return ::mlir::failure();
1602 auto odsResult = parseInferredOrParsedType(parser, lhsRawType,
true);
1603 if (odsResult) return ::mlir::failure();
1606 auto odsResult = parseInferredOrParsedType(parser, rhsRawType,
false);
1607 if (odsResult) return ::mlir::failure();
1610 auto loc = parser.getCurrentLocation();(void)loc;
1611 if (parser.parseOptionalAttrDict(result.attributes))
1612 return ::mlir::failure();
1615 result.addTypes(odsBuildableType0);
1616 if (parser.resolveOperands(lhsOperands, lhsTypes, lhsOperandsLoc, result.operands))
1617 return ::mlir::failure();
1618 if (parser.resolveOperands(rhsOperands, rhsTypes, rhsOperandsLoc, result.operands))
1619 return ::mlir::failure();
1620 return ::mlir::success();
1629 printInferredOrParsedType(_odsPrinter, *
this,
getLhs().getType(),
true);
1630 printInferredOrParsedType(_odsPrinter, *
this,
getRhs().getType(),
false);
1631 ::llvm::SmallVector<::llvm::StringRef, 2> elidedAttrs;
1632 _odsPrinter.printOptionalAttrDict((*this)->getAttrs(), elidedAttrs);
1635void OrFeltOp::getEffects(::llvm::SmallVectorImpl<::mlir::SideEffects::EffectInstance<::mlir::MemoryEffects::Effect>> &effects) {
1654 return ::mlir::success();
1657void PowFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Type result, ::mlir::Value lhs, ::mlir::Value rhs) {
1658 odsState.addOperands(lhs);
1659 odsState.addOperands(rhs);
1660 odsState.addTypes(result);
1663void PowFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Value lhs, ::mlir::Value rhs) {
1664 odsState.addOperands(lhs);
1665 odsState.addOperands(rhs);
1667 ::llvm::SmallVector<::mlir::Type, 2> inferredReturnTypes;
1669 odsState.location, odsState.operands,
1670 odsState.attributes.getDictionary(odsState.getContext()),
1671 odsState.getRawProperties(),
1672 odsState.regions, inferredReturnTypes)))
1673 odsState.addTypes(inferredReturnTypes);
1675 ::mlir::detail::reportFatalInferReturnTypesError(odsState);
1679void PowFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::Value lhs, ::mlir::Value rhs) {
1680 odsState.addOperands(lhs);
1681 odsState.addOperands(rhs);
1682 assert(resultTypes.size() == 1u &&
"mismatched number of results");
1683 odsState.addTypes(resultTypes);
1686void PowFeltOp::build(::mlir::OpBuilder &, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes) {
1687 assert(operands.size() == 2u &&
"mismatched number of parameters");
1688 odsState.addOperands(operands);
1689 odsState.addAttributes(attributes);
1690 assert(resultTypes.size() == 1u &&
"mismatched number of return types");
1691 odsState.addTypes(resultTypes);
1694void PowFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes) {
1695 assert(operands.size() == 2u &&
"mismatched number of parameters");
1696 odsState.addOperands(operands);
1697 odsState.addAttributes(attributes);
1699 ::llvm::SmallVector<::mlir::Type, 2> inferredReturnTypes;
1701 odsState.location, operands,
1702 odsState.attributes.getDictionary(odsState.getContext()),
1703 odsState.getRawProperties(),
1704 odsState.regions, inferredReturnTypes))) {
1705 assert(inferredReturnTypes.size() == 1u &&
"mismatched number of return types");
1706 odsState.addTypes(inferredReturnTypes);
1708 ::llvm::report_fatal_error(
"Failed to infer result type(s).");
1714 unsigned index = 0; (void)index;
1717 for (
auto v : valueGroup0) {
1718 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops1(*
this, v.getType(),
"operand", index++)))
1719 return ::mlir::failure();
1723 for (
auto v : valueGroup1) {
1724 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops1(*
this, v.getType(),
"operand", index++)))
1725 return ::mlir::failure();
1729 unsigned index = 0; (void)index;
1732 for (
auto v : valueGroup0) {
1733 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops2(*
this, v.getType(),
"result", index++)))
1734 return ::mlir::failure();
1738 return emitOpError(
"failed to verify that result type matches with lhs type");
1740 return emitOpError(
"failed to verify that result type matches with rhs type");
1741 return ::mlir::success();
1748::llvm::LogicalResult
PowFeltOp::inferReturnTypes(::mlir::MLIRContext *context, ::std::optional<::mlir::Location> location, ::mlir::ValueRange operands, ::mlir::DictionaryAttr attributes, ::mlir::OpaqueProperties properties, ::mlir::RegionRange regions, ::llvm::SmallVectorImpl<::mlir::Type>&inferredReturnTypes) {
1749 inferredReturnTypes.resize(1);
1750 ::mlir::Builder odsBuilder(context);
1752 inferredReturnTypes[0] = odsInferredType0;
1753 return ::mlir::success();
1756::mlir::ParseResult
PowFeltOp::parse(::mlir::OpAsmParser &parser, ::mlir::OperationState &result) {
1757 ::mlir::OpAsmParser::UnresolvedOperand lhsRawOperand{};
1758 ::llvm::ArrayRef<::mlir::OpAsmParser::UnresolvedOperand> lhsOperands(&lhsRawOperand, 1); ::llvm::SMLoc lhsOperandsLoc;
1759 (void)lhsOperandsLoc;
1760 ::mlir::OpAsmParser::UnresolvedOperand rhsRawOperand{};
1761 ::llvm::ArrayRef<::mlir::OpAsmParser::UnresolvedOperand> rhsOperands(&rhsRawOperand, 1); ::llvm::SMLoc rhsOperandsLoc;
1762 (void)rhsOperandsLoc;
1763 ::mlir::Type lhsRawType{};
1764 ::llvm::ArrayRef<::mlir::Type> lhsTypes(&lhsRawType, 1);
1765 ::mlir::Type rhsRawType{};
1766 ::llvm::ArrayRef<::mlir::Type> rhsTypes(&rhsRawType, 1);
1768 lhsOperandsLoc = parser.getCurrentLocation();
1769 if (parser.parseOperand(lhsRawOperand))
1770 return ::mlir::failure();
1771 if (parser.parseComma())
1772 return ::mlir::failure();
1774 rhsOperandsLoc = parser.getCurrentLocation();
1775 if (parser.parseOperand(rhsRawOperand))
1776 return ::mlir::failure();
1778 auto odsResult = parseInferredOrParsedType(parser, lhsRawType,
true);
1779 if (odsResult) return ::mlir::failure();
1782 auto odsResult = parseInferredOrParsedType(parser, rhsRawType,
false);
1783 if (odsResult) return ::mlir::failure();
1786 auto loc = parser.getCurrentLocation();(void)loc;
1787 if (parser.parseOptionalAttrDict(result.attributes))
1788 return ::mlir::failure();
1791 result.addTypes(odsBuildableType0);
1792 if (parser.resolveOperands(lhsOperands, lhsTypes, lhsOperandsLoc, result.operands))
1793 return ::mlir::failure();
1794 if (parser.resolveOperands(rhsOperands, rhsTypes, rhsOperandsLoc, result.operands))
1795 return ::mlir::failure();
1796 return ::mlir::success();
1805 printInferredOrParsedType(_odsPrinter, *
this,
getLhs().getType(),
true);
1806 printInferredOrParsedType(_odsPrinter, *
this,
getRhs().getType(),
false);
1807 ::llvm::SmallVector<::llvm::StringRef, 2> elidedAttrs;
1808 _odsPrinter.printOptionalAttrDict((*this)->getAttrs(), elidedAttrs);
1811void PowFeltOp::getEffects(::llvm::SmallVectorImpl<::mlir::SideEffects::EffectInstance<::mlir::MemoryEffects::Effect>> &effects) {
1830 return ::mlir::success();
1833void ShlFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Type result, ::mlir::Value lhs, ::mlir::Value rhs) {
1834 odsState.addOperands(lhs);
1835 odsState.addOperands(rhs);
1836 odsState.addTypes(result);
1839void ShlFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Value lhs, ::mlir::Value rhs) {
1840 odsState.addOperands(lhs);
1841 odsState.addOperands(rhs);
1843 ::llvm::SmallVector<::mlir::Type, 2> inferredReturnTypes;
1845 odsState.location, odsState.operands,
1846 odsState.attributes.getDictionary(odsState.getContext()),
1847 odsState.getRawProperties(),
1848 odsState.regions, inferredReturnTypes)))
1849 odsState.addTypes(inferredReturnTypes);
1851 ::mlir::detail::reportFatalInferReturnTypesError(odsState);
1855void ShlFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::Value lhs, ::mlir::Value rhs) {
1856 odsState.addOperands(lhs);
1857 odsState.addOperands(rhs);
1858 assert(resultTypes.size() == 1u &&
"mismatched number of results");
1859 odsState.addTypes(resultTypes);
1862void ShlFeltOp::build(::mlir::OpBuilder &, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes) {
1863 assert(operands.size() == 2u &&
"mismatched number of parameters");
1864 odsState.addOperands(operands);
1865 odsState.addAttributes(attributes);
1866 assert(resultTypes.size() == 1u &&
"mismatched number of return types");
1867 odsState.addTypes(resultTypes);
1870void ShlFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes) {
1871 assert(operands.size() == 2u &&
"mismatched number of parameters");
1872 odsState.addOperands(operands);
1873 odsState.addAttributes(attributes);
1875 ::llvm::SmallVector<::mlir::Type, 2> inferredReturnTypes;
1877 odsState.location, operands,
1878 odsState.attributes.getDictionary(odsState.getContext()),
1879 odsState.getRawProperties(),
1880 odsState.regions, inferredReturnTypes))) {
1881 assert(inferredReturnTypes.size() == 1u &&
"mismatched number of return types");
1882 odsState.addTypes(inferredReturnTypes);
1884 ::llvm::report_fatal_error(
"Failed to infer result type(s).");
1890 unsigned index = 0; (void)index;
1893 for (
auto v : valueGroup0) {
1894 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops1(*
this, v.getType(),
"operand", index++)))
1895 return ::mlir::failure();
1899 for (
auto v : valueGroup1) {
1900 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops1(*
this, v.getType(),
"operand", index++)))
1901 return ::mlir::failure();
1905 unsigned index = 0; (void)index;
1908 for (
auto v : valueGroup0) {
1909 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops2(*
this, v.getType(),
"result", index++)))
1910 return ::mlir::failure();
1914 return emitOpError(
"failed to verify that result type matches with lhs type");
1916 return emitOpError(
"failed to verify that result type matches with rhs type");
1917 return ::mlir::success();
1924::llvm::LogicalResult
ShlFeltOp::inferReturnTypes(::mlir::MLIRContext *context, ::std::optional<::mlir::Location> location, ::mlir::ValueRange operands, ::mlir::DictionaryAttr attributes, ::mlir::OpaqueProperties properties, ::mlir::RegionRange regions, ::llvm::SmallVectorImpl<::mlir::Type>&inferredReturnTypes) {
1925 inferredReturnTypes.resize(1);
1926 ::mlir::Builder odsBuilder(context);
1928 inferredReturnTypes[0] = odsInferredType0;
1929 return ::mlir::success();
1932::mlir::ParseResult
ShlFeltOp::parse(::mlir::OpAsmParser &parser, ::mlir::OperationState &result) {
1933 ::mlir::OpAsmParser::UnresolvedOperand lhsRawOperand{};
1934 ::llvm::ArrayRef<::mlir::OpAsmParser::UnresolvedOperand> lhsOperands(&lhsRawOperand, 1); ::llvm::SMLoc lhsOperandsLoc;
1935 (void)lhsOperandsLoc;
1936 ::mlir::OpAsmParser::UnresolvedOperand rhsRawOperand{};
1937 ::llvm::ArrayRef<::mlir::OpAsmParser::UnresolvedOperand> rhsOperands(&rhsRawOperand, 1); ::llvm::SMLoc rhsOperandsLoc;
1938 (void)rhsOperandsLoc;
1939 ::mlir::Type lhsRawType{};
1940 ::llvm::ArrayRef<::mlir::Type> lhsTypes(&lhsRawType, 1);
1941 ::mlir::Type rhsRawType{};
1942 ::llvm::ArrayRef<::mlir::Type> rhsTypes(&rhsRawType, 1);
1944 lhsOperandsLoc = parser.getCurrentLocation();
1945 if (parser.parseOperand(lhsRawOperand))
1946 return ::mlir::failure();
1947 if (parser.parseComma())
1948 return ::mlir::failure();
1950 rhsOperandsLoc = parser.getCurrentLocation();
1951 if (parser.parseOperand(rhsRawOperand))
1952 return ::mlir::failure();
1954 auto odsResult = parseInferredOrParsedType(parser, lhsRawType,
true);
1955 if (odsResult) return ::mlir::failure();
1958 auto odsResult = parseInferredOrParsedType(parser, rhsRawType,
false);
1959 if (odsResult) return ::mlir::failure();
1962 auto loc = parser.getCurrentLocation();(void)loc;
1963 if (parser.parseOptionalAttrDict(result.attributes))
1964 return ::mlir::failure();
1967 result.addTypes(odsBuildableType0);
1968 if (parser.resolveOperands(lhsOperands, lhsTypes, lhsOperandsLoc, result.operands))
1969 return ::mlir::failure();
1970 if (parser.resolveOperands(rhsOperands, rhsTypes, rhsOperandsLoc, result.operands))
1971 return ::mlir::failure();
1972 return ::mlir::success();
1981 printInferredOrParsedType(_odsPrinter, *
this,
getLhs().getType(),
true);
1982 printInferredOrParsedType(_odsPrinter, *
this,
getRhs().getType(),
false);
1983 ::llvm::SmallVector<::llvm::StringRef, 2> elidedAttrs;
1984 _odsPrinter.printOptionalAttrDict((*this)->getAttrs(), elidedAttrs);
1987void ShlFeltOp::getEffects(::llvm::SmallVectorImpl<::mlir::SideEffects::EffectInstance<::mlir::MemoryEffects::Effect>> &effects) {
2006 return ::mlir::success();
2009void ShrFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Type result, ::mlir::Value lhs, ::mlir::Value rhs) {
2010 odsState.addOperands(lhs);
2011 odsState.addOperands(rhs);
2012 odsState.addTypes(result);
2015void ShrFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Value lhs, ::mlir::Value rhs) {
2016 odsState.addOperands(lhs);
2017 odsState.addOperands(rhs);
2019 ::llvm::SmallVector<::mlir::Type, 2> inferredReturnTypes;
2021 odsState.location, odsState.operands,
2022 odsState.attributes.getDictionary(odsState.getContext()),
2023 odsState.getRawProperties(),
2024 odsState.regions, inferredReturnTypes)))
2025 odsState.addTypes(inferredReturnTypes);
2027 ::mlir::detail::reportFatalInferReturnTypesError(odsState);
2031void ShrFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::Value lhs, ::mlir::Value rhs) {
2032 odsState.addOperands(lhs);
2033 odsState.addOperands(rhs);
2034 assert(resultTypes.size() == 1u &&
"mismatched number of results");
2035 odsState.addTypes(resultTypes);
2038void ShrFeltOp::build(::mlir::OpBuilder &, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes) {
2039 assert(operands.size() == 2u &&
"mismatched number of parameters");
2040 odsState.addOperands(operands);
2041 odsState.addAttributes(attributes);
2042 assert(resultTypes.size() == 1u &&
"mismatched number of return types");
2043 odsState.addTypes(resultTypes);
2046void ShrFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes) {
2047 assert(operands.size() == 2u &&
"mismatched number of parameters");
2048 odsState.addOperands(operands);
2049 odsState.addAttributes(attributes);
2051 ::llvm::SmallVector<::mlir::Type, 2> inferredReturnTypes;
2053 odsState.location, operands,
2054 odsState.attributes.getDictionary(odsState.getContext()),
2055 odsState.getRawProperties(),
2056 odsState.regions, inferredReturnTypes))) {
2057 assert(inferredReturnTypes.size() == 1u &&
"mismatched number of return types");
2058 odsState.addTypes(inferredReturnTypes);
2060 ::llvm::report_fatal_error(
"Failed to infer result type(s).");
2066 unsigned index = 0; (void)index;
2069 for (
auto v : valueGroup0) {
2070 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops1(*
this, v.getType(),
"operand", index++)))
2071 return ::mlir::failure();
2075 for (
auto v : valueGroup1) {
2076 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops1(*
this, v.getType(),
"operand", index++)))
2077 return ::mlir::failure();
2081 unsigned index = 0; (void)index;
2084 for (
auto v : valueGroup0) {
2085 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops2(*
this, v.getType(),
"result", index++)))
2086 return ::mlir::failure();
2090 return emitOpError(
"failed to verify that result type matches with lhs type");
2092 return emitOpError(
"failed to verify that result type matches with rhs type");
2093 return ::mlir::success();
2100::llvm::LogicalResult
ShrFeltOp::inferReturnTypes(::mlir::MLIRContext *context, ::std::optional<::mlir::Location> location, ::mlir::ValueRange operands, ::mlir::DictionaryAttr attributes, ::mlir::OpaqueProperties properties, ::mlir::RegionRange regions, ::llvm::SmallVectorImpl<::mlir::Type>&inferredReturnTypes) {
2101 inferredReturnTypes.resize(1);
2102 ::mlir::Builder odsBuilder(context);
2104 inferredReturnTypes[0] = odsInferredType0;
2105 return ::mlir::success();
2108::mlir::ParseResult
ShrFeltOp::parse(::mlir::OpAsmParser &parser, ::mlir::OperationState &result) {
2109 ::mlir::OpAsmParser::UnresolvedOperand lhsRawOperand{};
2110 ::llvm::ArrayRef<::mlir::OpAsmParser::UnresolvedOperand> lhsOperands(&lhsRawOperand, 1); ::llvm::SMLoc lhsOperandsLoc;
2111 (void)lhsOperandsLoc;
2112 ::mlir::OpAsmParser::UnresolvedOperand rhsRawOperand{};
2113 ::llvm::ArrayRef<::mlir::OpAsmParser::UnresolvedOperand> rhsOperands(&rhsRawOperand, 1); ::llvm::SMLoc rhsOperandsLoc;
2114 (void)rhsOperandsLoc;
2115 ::mlir::Type lhsRawType{};
2116 ::llvm::ArrayRef<::mlir::Type> lhsTypes(&lhsRawType, 1);
2117 ::mlir::Type rhsRawType{};
2118 ::llvm::ArrayRef<::mlir::Type> rhsTypes(&rhsRawType, 1);
2120 lhsOperandsLoc = parser.getCurrentLocation();
2121 if (parser.parseOperand(lhsRawOperand))
2122 return ::mlir::failure();
2123 if (parser.parseComma())
2124 return ::mlir::failure();
2126 rhsOperandsLoc = parser.getCurrentLocation();
2127 if (parser.parseOperand(rhsRawOperand))
2128 return ::mlir::failure();
2130 auto odsResult = parseInferredOrParsedType(parser, lhsRawType,
true);
2131 if (odsResult) return ::mlir::failure();
2134 auto odsResult = parseInferredOrParsedType(parser, rhsRawType,
false);
2135 if (odsResult) return ::mlir::failure();
2138 auto loc = parser.getCurrentLocation();(void)loc;
2139 if (parser.parseOptionalAttrDict(result.attributes))
2140 return ::mlir::failure();
2143 result.addTypes(odsBuildableType0);
2144 if (parser.resolveOperands(lhsOperands, lhsTypes, lhsOperandsLoc, result.operands))
2145 return ::mlir::failure();
2146 if (parser.resolveOperands(rhsOperands, rhsTypes, rhsOperandsLoc, result.operands))
2147 return ::mlir::failure();
2148 return ::mlir::success();
2157 printInferredOrParsedType(_odsPrinter, *
this,
getLhs().getType(),
true);
2158 printInferredOrParsedType(_odsPrinter, *
this,
getRhs().getType(),
false);
2159 ::llvm::SmallVector<::llvm::StringRef, 2> elidedAttrs;
2160 _odsPrinter.printOptionalAttrDict((*this)->getAttrs(), elidedAttrs);
2163void ShrFeltOp::getEffects(::llvm::SmallVectorImpl<::mlir::SideEffects::EffectInstance<::mlir::MemoryEffects::Effect>> &effects) {
2182 return ::mlir::success();
2185void SignedIntDivFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Type result, ::mlir::Value lhs, ::mlir::Value rhs) {
2186 odsState.addOperands(lhs);
2187 odsState.addOperands(rhs);
2188 odsState.addTypes(result);
2192 odsState.addOperands(lhs);
2193 odsState.addOperands(rhs);
2195 ::llvm::SmallVector<::mlir::Type, 2> inferredReturnTypes;
2197 odsState.location, odsState.operands,
2198 odsState.attributes.getDictionary(odsState.getContext()),
2199 odsState.getRawProperties(),
2200 odsState.regions, inferredReturnTypes)))
2201 odsState.addTypes(inferredReturnTypes);
2203 ::mlir::detail::reportFatalInferReturnTypesError(odsState);
2207void SignedIntDivFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::Value lhs, ::mlir::Value rhs) {
2208 odsState.addOperands(lhs);
2209 odsState.addOperands(rhs);
2210 assert(resultTypes.size() == 1u &&
"mismatched number of results");
2211 odsState.addTypes(resultTypes);
2214void SignedIntDivFeltOp::build(::mlir::OpBuilder &, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes) {
2215 assert(operands.size() == 2u &&
"mismatched number of parameters");
2216 odsState.addOperands(operands);
2217 odsState.addAttributes(attributes);
2218 assert(resultTypes.size() == 1u &&
"mismatched number of return types");
2219 odsState.addTypes(resultTypes);
2222void SignedIntDivFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes) {
2223 assert(operands.size() == 2u &&
"mismatched number of parameters");
2224 odsState.addOperands(operands);
2225 odsState.addAttributes(attributes);
2227 ::llvm::SmallVector<::mlir::Type, 2> inferredReturnTypes;
2229 odsState.location, operands,
2230 odsState.attributes.getDictionary(odsState.getContext()),
2231 odsState.getRawProperties(),
2232 odsState.regions, inferredReturnTypes))) {
2233 assert(inferredReturnTypes.size() == 1u &&
"mismatched number of return types");
2234 odsState.addTypes(inferredReturnTypes);
2236 ::llvm::report_fatal_error(
"Failed to infer result type(s).");
2242 unsigned index = 0; (void)index;
2245 for (
auto v : valueGroup0) {
2246 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops1(*
this, v.getType(),
"operand", index++)))
2247 return ::mlir::failure();
2251 for (
auto v : valueGroup1) {
2252 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops1(*
this, v.getType(),
"operand", index++)))
2253 return ::mlir::failure();
2257 unsigned index = 0; (void)index;
2260 for (
auto v : valueGroup0) {
2261 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops2(*
this, v.getType(),
"result", index++)))
2262 return ::mlir::failure();
2266 return emitOpError(
"failed to verify that result type matches with lhs type");
2268 return emitOpError(
"failed to verify that result type matches with rhs type");
2269 return ::mlir::success();
2276::llvm::LogicalResult
SignedIntDivFeltOp::inferReturnTypes(::mlir::MLIRContext *context, ::std::optional<::mlir::Location> location, ::mlir::ValueRange operands, ::mlir::DictionaryAttr attributes, ::mlir::OpaqueProperties properties, ::mlir::RegionRange regions, ::llvm::SmallVectorImpl<::mlir::Type>&inferredReturnTypes) {
2277 inferredReturnTypes.resize(1);
2278 ::mlir::Builder odsBuilder(context);
2280 inferredReturnTypes[0] = odsInferredType0;
2281 return ::mlir::success();
2285 ::mlir::OpAsmParser::UnresolvedOperand lhsRawOperand{};
2286 ::llvm::ArrayRef<::mlir::OpAsmParser::UnresolvedOperand> lhsOperands(&lhsRawOperand, 1); ::llvm::SMLoc lhsOperandsLoc;
2287 (void)lhsOperandsLoc;
2288 ::mlir::OpAsmParser::UnresolvedOperand rhsRawOperand{};
2289 ::llvm::ArrayRef<::mlir::OpAsmParser::UnresolvedOperand> rhsOperands(&rhsRawOperand, 1); ::llvm::SMLoc rhsOperandsLoc;
2290 (void)rhsOperandsLoc;
2291 ::mlir::Type lhsRawType{};
2292 ::llvm::ArrayRef<::mlir::Type> lhsTypes(&lhsRawType, 1);
2293 ::mlir::Type rhsRawType{};
2294 ::llvm::ArrayRef<::mlir::Type> rhsTypes(&rhsRawType, 1);
2296 lhsOperandsLoc = parser.getCurrentLocation();
2297 if (parser.parseOperand(lhsRawOperand))
2298 return ::mlir::failure();
2299 if (parser.parseComma())
2300 return ::mlir::failure();
2302 rhsOperandsLoc = parser.getCurrentLocation();
2303 if (parser.parseOperand(rhsRawOperand))
2304 return ::mlir::failure();
2306 auto odsResult = parseInferredOrParsedType(parser, lhsRawType,
true);
2307 if (odsResult) return ::mlir::failure();
2310 auto odsResult = parseInferredOrParsedType(parser, rhsRawType,
false);
2311 if (odsResult) return ::mlir::failure();
2314 auto loc = parser.getCurrentLocation();(void)loc;
2315 if (parser.parseOptionalAttrDict(result.attributes))
2316 return ::mlir::failure();
2319 result.addTypes(odsBuildableType0);
2320 if (parser.resolveOperands(lhsOperands, lhsTypes, lhsOperandsLoc, result.operands))
2321 return ::mlir::failure();
2322 if (parser.resolveOperands(rhsOperands, rhsTypes, rhsOperandsLoc, result.operands))
2323 return ::mlir::failure();
2324 return ::mlir::success();
2333 printInferredOrParsedType(_odsPrinter, *
this,
getLhs().getType(),
true);
2334 printInferredOrParsedType(_odsPrinter, *
this,
getRhs().getType(),
false);
2335 ::llvm::SmallVector<::llvm::StringRef, 2> elidedAttrs;
2336 _odsPrinter.printOptionalAttrDict((*this)->getAttrs(), elidedAttrs);
2358 return ::mlir::success();
2361void SignedModFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Type result, ::mlir::Value lhs, ::mlir::Value rhs) {
2362 odsState.addOperands(lhs);
2363 odsState.addOperands(rhs);
2364 odsState.addTypes(result);
2367void SignedModFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Value lhs, ::mlir::Value rhs) {
2368 odsState.addOperands(lhs);
2369 odsState.addOperands(rhs);
2371 ::llvm::SmallVector<::mlir::Type, 2> inferredReturnTypes;
2373 odsState.location, odsState.operands,
2374 odsState.attributes.getDictionary(odsState.getContext()),
2375 odsState.getRawProperties(),
2376 odsState.regions, inferredReturnTypes)))
2377 odsState.addTypes(inferredReturnTypes);
2379 ::mlir::detail::reportFatalInferReturnTypesError(odsState);
2383void SignedModFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::Value lhs, ::mlir::Value rhs) {
2384 odsState.addOperands(lhs);
2385 odsState.addOperands(rhs);
2386 assert(resultTypes.size() == 1u &&
"mismatched number of results");
2387 odsState.addTypes(resultTypes);
2390void SignedModFeltOp::build(::mlir::OpBuilder &, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes) {
2391 assert(operands.size() == 2u &&
"mismatched number of parameters");
2392 odsState.addOperands(operands);
2393 odsState.addAttributes(attributes);
2394 assert(resultTypes.size() == 1u &&
"mismatched number of return types");
2395 odsState.addTypes(resultTypes);
2398void SignedModFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes) {
2399 assert(operands.size() == 2u &&
"mismatched number of parameters");
2400 odsState.addOperands(operands);
2401 odsState.addAttributes(attributes);
2403 ::llvm::SmallVector<::mlir::Type, 2> inferredReturnTypes;
2405 odsState.location, operands,
2406 odsState.attributes.getDictionary(odsState.getContext()),
2407 odsState.getRawProperties(),
2408 odsState.regions, inferredReturnTypes))) {
2409 assert(inferredReturnTypes.size() == 1u &&
"mismatched number of return types");
2410 odsState.addTypes(inferredReturnTypes);
2412 ::llvm::report_fatal_error(
"Failed to infer result type(s).");
2418 unsigned index = 0; (void)index;
2421 for (
auto v : valueGroup0) {
2422 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops1(*
this, v.getType(),
"operand", index++)))
2423 return ::mlir::failure();
2427 for (
auto v : valueGroup1) {
2428 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops1(*
this, v.getType(),
"operand", index++)))
2429 return ::mlir::failure();
2433 unsigned index = 0; (void)index;
2436 for (
auto v : valueGroup0) {
2437 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops2(*
this, v.getType(),
"result", index++)))
2438 return ::mlir::failure();
2442 return emitOpError(
"failed to verify that result type matches with lhs type");
2444 return emitOpError(
"failed to verify that result type matches with rhs type");
2445 return ::mlir::success();
2452::llvm::LogicalResult
SignedModFeltOp::inferReturnTypes(::mlir::MLIRContext *context, ::std::optional<::mlir::Location> location, ::mlir::ValueRange operands, ::mlir::DictionaryAttr attributes, ::mlir::OpaqueProperties properties, ::mlir::RegionRange regions, ::llvm::SmallVectorImpl<::mlir::Type>&inferredReturnTypes) {
2453 inferredReturnTypes.resize(1);
2454 ::mlir::Builder odsBuilder(context);
2456 inferredReturnTypes[0] = odsInferredType0;
2457 return ::mlir::success();
2461 ::mlir::OpAsmParser::UnresolvedOperand lhsRawOperand{};
2462 ::llvm::ArrayRef<::mlir::OpAsmParser::UnresolvedOperand> lhsOperands(&lhsRawOperand, 1); ::llvm::SMLoc lhsOperandsLoc;
2463 (void)lhsOperandsLoc;
2464 ::mlir::OpAsmParser::UnresolvedOperand rhsRawOperand{};
2465 ::llvm::ArrayRef<::mlir::OpAsmParser::UnresolvedOperand> rhsOperands(&rhsRawOperand, 1); ::llvm::SMLoc rhsOperandsLoc;
2466 (void)rhsOperandsLoc;
2467 ::mlir::Type lhsRawType{};
2468 ::llvm::ArrayRef<::mlir::Type> lhsTypes(&lhsRawType, 1);
2469 ::mlir::Type rhsRawType{};
2470 ::llvm::ArrayRef<::mlir::Type> rhsTypes(&rhsRawType, 1);
2472 lhsOperandsLoc = parser.getCurrentLocation();
2473 if (parser.parseOperand(lhsRawOperand))
2474 return ::mlir::failure();
2475 if (parser.parseComma())
2476 return ::mlir::failure();
2478 rhsOperandsLoc = parser.getCurrentLocation();
2479 if (parser.parseOperand(rhsRawOperand))
2480 return ::mlir::failure();
2482 auto odsResult = parseInferredOrParsedType(parser, lhsRawType,
true);
2483 if (odsResult) return ::mlir::failure();
2486 auto odsResult = parseInferredOrParsedType(parser, rhsRawType,
false);
2487 if (odsResult) return ::mlir::failure();
2490 auto loc = parser.getCurrentLocation();(void)loc;
2491 if (parser.parseOptionalAttrDict(result.attributes))
2492 return ::mlir::failure();
2495 result.addTypes(odsBuildableType0);
2496 if (parser.resolveOperands(lhsOperands, lhsTypes, lhsOperandsLoc, result.operands))
2497 return ::mlir::failure();
2498 if (parser.resolveOperands(rhsOperands, rhsTypes, rhsOperandsLoc, result.operands))
2499 return ::mlir::failure();
2500 return ::mlir::success();
2509 printInferredOrParsedType(_odsPrinter, *
this,
getLhs().getType(),
true);
2510 printInferredOrParsedType(_odsPrinter, *
this,
getRhs().getType(),
false);
2511 ::llvm::SmallVector<::llvm::StringRef, 2> elidedAttrs;
2512 _odsPrinter.printOptionalAttrDict((*this)->getAttrs(), elidedAttrs);
2534 return ::mlir::success();
2537void SubFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Type result, ::mlir::Value lhs, ::mlir::Value rhs) {
2538 odsState.addOperands(lhs);
2539 odsState.addOperands(rhs);
2540 odsState.addTypes(result);
2543void SubFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Value lhs, ::mlir::Value rhs) {
2544 odsState.addOperands(lhs);
2545 odsState.addOperands(rhs);
2547 ::llvm::SmallVector<::mlir::Type, 2> inferredReturnTypes;
2549 odsState.location, odsState.operands,
2550 odsState.attributes.getDictionary(odsState.getContext()),
2551 odsState.getRawProperties(),
2552 odsState.regions, inferredReturnTypes)))
2553 odsState.addTypes(inferredReturnTypes);
2555 ::mlir::detail::reportFatalInferReturnTypesError(odsState);
2559void SubFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::Value lhs, ::mlir::Value rhs) {
2560 odsState.addOperands(lhs);
2561 odsState.addOperands(rhs);
2562 assert(resultTypes.size() == 1u &&
"mismatched number of results");
2563 odsState.addTypes(resultTypes);
2566void SubFeltOp::build(::mlir::OpBuilder &, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes) {
2567 assert(operands.size() == 2u &&
"mismatched number of parameters");
2568 odsState.addOperands(operands);
2569 odsState.addAttributes(attributes);
2570 assert(resultTypes.size() == 1u &&
"mismatched number of return types");
2571 odsState.addTypes(resultTypes);
2574void SubFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes) {
2575 assert(operands.size() == 2u &&
"mismatched number of parameters");
2576 odsState.addOperands(operands);
2577 odsState.addAttributes(attributes);
2579 ::llvm::SmallVector<::mlir::Type, 2> inferredReturnTypes;
2581 odsState.location, operands,
2582 odsState.attributes.getDictionary(odsState.getContext()),
2583 odsState.getRawProperties(),
2584 odsState.regions, inferredReturnTypes))) {
2585 assert(inferredReturnTypes.size() == 1u &&
"mismatched number of return types");
2586 odsState.addTypes(inferredReturnTypes);
2588 ::llvm::report_fatal_error(
"Failed to infer result type(s).");
2594 unsigned index = 0; (void)index;
2597 for (
auto v : valueGroup0) {
2598 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops1(*
this, v.getType(),
"operand", index++)))
2599 return ::mlir::failure();
2603 for (
auto v : valueGroup1) {
2604 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops1(*
this, v.getType(),
"operand", index++)))
2605 return ::mlir::failure();
2609 unsigned index = 0; (void)index;
2612 for (
auto v : valueGroup0) {
2613 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops2(*
this, v.getType(),
"result", index++)))
2614 return ::mlir::failure();
2618 return emitOpError(
"failed to verify that result type matches with lhs type");
2620 return emitOpError(
"failed to verify that result type matches with rhs type");
2621 return ::mlir::success();
2628::llvm::LogicalResult
SubFeltOp::inferReturnTypes(::mlir::MLIRContext *context, ::std::optional<::mlir::Location> location, ::mlir::ValueRange operands, ::mlir::DictionaryAttr attributes, ::mlir::OpaqueProperties properties, ::mlir::RegionRange regions, ::llvm::SmallVectorImpl<::mlir::Type>&inferredReturnTypes) {
2629 inferredReturnTypes.resize(1);
2630 ::mlir::Builder odsBuilder(context);
2632 inferredReturnTypes[0] = odsInferredType0;
2633 return ::mlir::success();
2636::mlir::ParseResult
SubFeltOp::parse(::mlir::OpAsmParser &parser, ::mlir::OperationState &result) {
2637 ::mlir::OpAsmParser::UnresolvedOperand lhsRawOperand{};
2638 ::llvm::ArrayRef<::mlir::OpAsmParser::UnresolvedOperand> lhsOperands(&lhsRawOperand, 1); ::llvm::SMLoc lhsOperandsLoc;
2639 (void)lhsOperandsLoc;
2640 ::mlir::OpAsmParser::UnresolvedOperand rhsRawOperand{};
2641 ::llvm::ArrayRef<::mlir::OpAsmParser::UnresolvedOperand> rhsOperands(&rhsRawOperand, 1); ::llvm::SMLoc rhsOperandsLoc;
2642 (void)rhsOperandsLoc;
2643 ::mlir::Type lhsRawType{};
2644 ::llvm::ArrayRef<::mlir::Type> lhsTypes(&lhsRawType, 1);
2645 ::mlir::Type rhsRawType{};
2646 ::llvm::ArrayRef<::mlir::Type> rhsTypes(&rhsRawType, 1);
2648 lhsOperandsLoc = parser.getCurrentLocation();
2649 if (parser.parseOperand(lhsRawOperand))
2650 return ::mlir::failure();
2651 if (parser.parseComma())
2652 return ::mlir::failure();
2654 rhsOperandsLoc = parser.getCurrentLocation();
2655 if (parser.parseOperand(rhsRawOperand))
2656 return ::mlir::failure();
2658 auto odsResult = parseInferredOrParsedType(parser, lhsRawType,
true);
2659 if (odsResult) return ::mlir::failure();
2662 auto odsResult = parseInferredOrParsedType(parser, rhsRawType,
false);
2663 if (odsResult) return ::mlir::failure();
2666 auto loc = parser.getCurrentLocation();(void)loc;
2667 if (parser.parseOptionalAttrDict(result.attributes))
2668 return ::mlir::failure();
2671 result.addTypes(odsBuildableType0);
2672 if (parser.resolveOperands(lhsOperands, lhsTypes, lhsOperandsLoc, result.operands))
2673 return ::mlir::failure();
2674 if (parser.resolveOperands(rhsOperands, rhsTypes, rhsOperandsLoc, result.operands))
2675 return ::mlir::failure();
2676 return ::mlir::success();
2685 printInferredOrParsedType(_odsPrinter, *
this,
getLhs().getType(),
true);
2686 printInferredOrParsedType(_odsPrinter, *
this,
getRhs().getType(),
false);
2687 ::llvm::SmallVector<::llvm::StringRef, 2> elidedAttrs;
2688 _odsPrinter.printOptionalAttrDict((*this)->getAttrs(), elidedAttrs);
2691void SubFeltOp::getEffects(::llvm::SmallVectorImpl<::mlir::SideEffects::EffectInstance<::mlir::MemoryEffects::Effect>> &effects) {
2710 return ::mlir::success();
2713void UnsignedIntDivFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Type result, ::mlir::Value lhs, ::mlir::Value rhs) {
2714 odsState.addOperands(lhs);
2715 odsState.addOperands(rhs);
2716 odsState.addTypes(result);
2720 odsState.addOperands(lhs);
2721 odsState.addOperands(rhs);
2723 ::llvm::SmallVector<::mlir::Type, 2> inferredReturnTypes;
2725 odsState.location, odsState.operands,
2726 odsState.attributes.getDictionary(odsState.getContext()),
2727 odsState.getRawProperties(),
2728 odsState.regions, inferredReturnTypes)))
2729 odsState.addTypes(inferredReturnTypes);
2731 ::mlir::detail::reportFatalInferReturnTypesError(odsState);
2735void UnsignedIntDivFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::Value lhs, ::mlir::Value rhs) {
2736 odsState.addOperands(lhs);
2737 odsState.addOperands(rhs);
2738 assert(resultTypes.size() == 1u &&
"mismatched number of results");
2739 odsState.addTypes(resultTypes);
2742void UnsignedIntDivFeltOp::build(::mlir::OpBuilder &, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes) {
2743 assert(operands.size() == 2u &&
"mismatched number of parameters");
2744 odsState.addOperands(operands);
2745 odsState.addAttributes(attributes);
2746 assert(resultTypes.size() == 1u &&
"mismatched number of return types");
2747 odsState.addTypes(resultTypes);
2750void UnsignedIntDivFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes) {
2751 assert(operands.size() == 2u &&
"mismatched number of parameters");
2752 odsState.addOperands(operands);
2753 odsState.addAttributes(attributes);
2755 ::llvm::SmallVector<::mlir::Type, 2> inferredReturnTypes;
2757 odsState.location, operands,
2758 odsState.attributes.getDictionary(odsState.getContext()),
2759 odsState.getRawProperties(),
2760 odsState.regions, inferredReturnTypes))) {
2761 assert(inferredReturnTypes.size() == 1u &&
"mismatched number of return types");
2762 odsState.addTypes(inferredReturnTypes);
2764 ::llvm::report_fatal_error(
"Failed to infer result type(s).");
2770 unsigned index = 0; (void)index;
2773 for (
auto v : valueGroup0) {
2774 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops1(*
this, v.getType(),
"operand", index++)))
2775 return ::mlir::failure();
2779 for (
auto v : valueGroup1) {
2780 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops1(*
this, v.getType(),
"operand", index++)))
2781 return ::mlir::failure();
2785 unsigned index = 0; (void)index;
2788 for (
auto v : valueGroup0) {
2789 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops2(*
this, v.getType(),
"result", index++)))
2790 return ::mlir::failure();
2794 return emitOpError(
"failed to verify that result type matches with lhs type");
2796 return emitOpError(
"failed to verify that result type matches with rhs type");
2797 return ::mlir::success();
2804::llvm::LogicalResult
UnsignedIntDivFeltOp::inferReturnTypes(::mlir::MLIRContext *context, ::std::optional<::mlir::Location> location, ::mlir::ValueRange operands, ::mlir::DictionaryAttr attributes, ::mlir::OpaqueProperties properties, ::mlir::RegionRange regions, ::llvm::SmallVectorImpl<::mlir::Type>&inferredReturnTypes) {
2805 inferredReturnTypes.resize(1);
2806 ::mlir::Builder odsBuilder(context);
2808 inferredReturnTypes[0] = odsInferredType0;
2809 return ::mlir::success();
2813 ::mlir::OpAsmParser::UnresolvedOperand lhsRawOperand{};
2814 ::llvm::ArrayRef<::mlir::OpAsmParser::UnresolvedOperand> lhsOperands(&lhsRawOperand, 1); ::llvm::SMLoc lhsOperandsLoc;
2815 (void)lhsOperandsLoc;
2816 ::mlir::OpAsmParser::UnresolvedOperand rhsRawOperand{};
2817 ::llvm::ArrayRef<::mlir::OpAsmParser::UnresolvedOperand> rhsOperands(&rhsRawOperand, 1); ::llvm::SMLoc rhsOperandsLoc;
2818 (void)rhsOperandsLoc;
2819 ::mlir::Type lhsRawType{};
2820 ::llvm::ArrayRef<::mlir::Type> lhsTypes(&lhsRawType, 1);
2821 ::mlir::Type rhsRawType{};
2822 ::llvm::ArrayRef<::mlir::Type> rhsTypes(&rhsRawType, 1);
2824 lhsOperandsLoc = parser.getCurrentLocation();
2825 if (parser.parseOperand(lhsRawOperand))
2826 return ::mlir::failure();
2827 if (parser.parseComma())
2828 return ::mlir::failure();
2830 rhsOperandsLoc = parser.getCurrentLocation();
2831 if (parser.parseOperand(rhsRawOperand))
2832 return ::mlir::failure();
2834 auto odsResult = parseInferredOrParsedType(parser, lhsRawType,
true);
2835 if (odsResult) return ::mlir::failure();
2838 auto odsResult = parseInferredOrParsedType(parser, rhsRawType,
false);
2839 if (odsResult) return ::mlir::failure();
2842 auto loc = parser.getCurrentLocation();(void)loc;
2843 if (parser.parseOptionalAttrDict(result.attributes))
2844 return ::mlir::failure();
2847 result.addTypes(odsBuildableType0);
2848 if (parser.resolveOperands(lhsOperands, lhsTypes, lhsOperandsLoc, result.operands))
2849 return ::mlir::failure();
2850 if (parser.resolveOperands(rhsOperands, rhsTypes, rhsOperandsLoc, result.operands))
2851 return ::mlir::failure();
2852 return ::mlir::success();
2861 printInferredOrParsedType(_odsPrinter, *
this,
getLhs().getType(),
true);
2862 printInferredOrParsedType(_odsPrinter, *
this,
getRhs().getType(),
false);
2863 ::llvm::SmallVector<::llvm::StringRef, 2> elidedAttrs;
2864 _odsPrinter.printOptionalAttrDict((*this)->getAttrs(), elidedAttrs);
2886 return ::mlir::success();
2889void UnsignedModFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Type result, ::mlir::Value lhs, ::mlir::Value rhs) {
2890 odsState.addOperands(lhs);
2891 odsState.addOperands(rhs);
2892 odsState.addTypes(result);
2896 odsState.addOperands(lhs);
2897 odsState.addOperands(rhs);
2899 ::llvm::SmallVector<::mlir::Type, 2> inferredReturnTypes;
2901 odsState.location, odsState.operands,
2902 odsState.attributes.getDictionary(odsState.getContext()),
2903 odsState.getRawProperties(),
2904 odsState.regions, inferredReturnTypes)))
2905 odsState.addTypes(inferredReturnTypes);
2907 ::mlir::detail::reportFatalInferReturnTypesError(odsState);
2911void UnsignedModFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::Value lhs, ::mlir::Value rhs) {
2912 odsState.addOperands(lhs);
2913 odsState.addOperands(rhs);
2914 assert(resultTypes.size() == 1u &&
"mismatched number of results");
2915 odsState.addTypes(resultTypes);
2918void UnsignedModFeltOp::build(::mlir::OpBuilder &, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes) {
2919 assert(operands.size() == 2u &&
"mismatched number of parameters");
2920 odsState.addOperands(operands);
2921 odsState.addAttributes(attributes);
2922 assert(resultTypes.size() == 1u &&
"mismatched number of return types");
2923 odsState.addTypes(resultTypes);
2926void UnsignedModFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes) {
2927 assert(operands.size() == 2u &&
"mismatched number of parameters");
2928 odsState.addOperands(operands);
2929 odsState.addAttributes(attributes);
2931 ::llvm::SmallVector<::mlir::Type, 2> inferredReturnTypes;
2933 odsState.location, operands,
2934 odsState.attributes.getDictionary(odsState.getContext()),
2935 odsState.getRawProperties(),
2936 odsState.regions, inferredReturnTypes))) {
2937 assert(inferredReturnTypes.size() == 1u &&
"mismatched number of return types");
2938 odsState.addTypes(inferredReturnTypes);
2940 ::llvm::report_fatal_error(
"Failed to infer result type(s).");
2946 unsigned index = 0; (void)index;
2949 for (
auto v : valueGroup0) {
2950 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops1(*
this, v.getType(),
"operand", index++)))
2951 return ::mlir::failure();
2955 for (
auto v : valueGroup1) {
2956 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops1(*
this, v.getType(),
"operand", index++)))
2957 return ::mlir::failure();
2961 unsigned index = 0; (void)index;
2964 for (
auto v : valueGroup0) {
2965 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops2(*
this, v.getType(),
"result", index++)))
2966 return ::mlir::failure();
2970 return emitOpError(
"failed to verify that result type matches with lhs type");
2972 return emitOpError(
"failed to verify that result type matches with rhs type");
2973 return ::mlir::success();
2980::llvm::LogicalResult
UnsignedModFeltOp::inferReturnTypes(::mlir::MLIRContext *context, ::std::optional<::mlir::Location> location, ::mlir::ValueRange operands, ::mlir::DictionaryAttr attributes, ::mlir::OpaqueProperties properties, ::mlir::RegionRange regions, ::llvm::SmallVectorImpl<::mlir::Type>&inferredReturnTypes) {
2981 inferredReturnTypes.resize(1);
2982 ::mlir::Builder odsBuilder(context);
2984 inferredReturnTypes[0] = odsInferredType0;
2985 return ::mlir::success();
2989 ::mlir::OpAsmParser::UnresolvedOperand lhsRawOperand{};
2990 ::llvm::ArrayRef<::mlir::OpAsmParser::UnresolvedOperand> lhsOperands(&lhsRawOperand, 1); ::llvm::SMLoc lhsOperandsLoc;
2991 (void)lhsOperandsLoc;
2992 ::mlir::OpAsmParser::UnresolvedOperand rhsRawOperand{};
2993 ::llvm::ArrayRef<::mlir::OpAsmParser::UnresolvedOperand> rhsOperands(&rhsRawOperand, 1); ::llvm::SMLoc rhsOperandsLoc;
2994 (void)rhsOperandsLoc;
2995 ::mlir::Type lhsRawType{};
2996 ::llvm::ArrayRef<::mlir::Type> lhsTypes(&lhsRawType, 1);
2997 ::mlir::Type rhsRawType{};
2998 ::llvm::ArrayRef<::mlir::Type> rhsTypes(&rhsRawType, 1);
3000 lhsOperandsLoc = parser.getCurrentLocation();
3001 if (parser.parseOperand(lhsRawOperand))
3002 return ::mlir::failure();
3003 if (parser.parseComma())
3004 return ::mlir::failure();
3006 rhsOperandsLoc = parser.getCurrentLocation();
3007 if (parser.parseOperand(rhsRawOperand))
3008 return ::mlir::failure();
3010 auto odsResult = parseInferredOrParsedType(parser, lhsRawType,
true);
3011 if (odsResult) return ::mlir::failure();
3014 auto odsResult = parseInferredOrParsedType(parser, rhsRawType,
false);
3015 if (odsResult) return ::mlir::failure();
3018 auto loc = parser.getCurrentLocation();(void)loc;
3019 if (parser.parseOptionalAttrDict(result.attributes))
3020 return ::mlir::failure();
3023 result.addTypes(odsBuildableType0);
3024 if (parser.resolveOperands(lhsOperands, lhsTypes, lhsOperandsLoc, result.operands))
3025 return ::mlir::failure();
3026 if (parser.resolveOperands(rhsOperands, rhsTypes, rhsOperandsLoc, result.operands))
3027 return ::mlir::failure();
3028 return ::mlir::success();
3037 printInferredOrParsedType(_odsPrinter, *
this,
getLhs().getType(),
true);
3038 printInferredOrParsedType(_odsPrinter, *
this,
getRhs().getType(),
false);
3039 ::llvm::SmallVector<::llvm::StringRef, 2> elidedAttrs;
3040 _odsPrinter.printOptionalAttrDict((*this)->getAttrs(), elidedAttrs);
3062 return ::mlir::success();
3065void XorFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Type result, ::mlir::Value lhs, ::mlir::Value rhs) {
3066 odsState.addOperands(lhs);
3067 odsState.addOperands(rhs);
3068 odsState.addTypes(result);
3071void XorFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Value lhs, ::mlir::Value rhs) {
3072 odsState.addOperands(lhs);
3073 odsState.addOperands(rhs);
3075 ::llvm::SmallVector<::mlir::Type, 2> inferredReturnTypes;
3077 odsState.location, odsState.operands,
3078 odsState.attributes.getDictionary(odsState.getContext()),
3079 odsState.getRawProperties(),
3080 odsState.regions, inferredReturnTypes)))
3081 odsState.addTypes(inferredReturnTypes);
3083 ::mlir::detail::reportFatalInferReturnTypesError(odsState);
3087void XorFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::Value lhs, ::mlir::Value rhs) {
3088 odsState.addOperands(lhs);
3089 odsState.addOperands(rhs);
3090 assert(resultTypes.size() == 1u &&
"mismatched number of results");
3091 odsState.addTypes(resultTypes);
3094void XorFeltOp::build(::mlir::OpBuilder &, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes) {
3095 assert(operands.size() == 2u &&
"mismatched number of parameters");
3096 odsState.addOperands(operands);
3097 odsState.addAttributes(attributes);
3098 assert(resultTypes.size() == 1u &&
"mismatched number of return types");
3099 odsState.addTypes(resultTypes);
3102void XorFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes) {
3103 assert(operands.size() == 2u &&
"mismatched number of parameters");
3104 odsState.addOperands(operands);
3105 odsState.addAttributes(attributes);
3107 ::llvm::SmallVector<::mlir::Type, 2> inferredReturnTypes;
3109 odsState.location, operands,
3110 odsState.attributes.getDictionary(odsState.getContext()),
3111 odsState.getRawProperties(),
3112 odsState.regions, inferredReturnTypes))) {
3113 assert(inferredReturnTypes.size() == 1u &&
"mismatched number of return types");
3114 odsState.addTypes(inferredReturnTypes);
3116 ::llvm::report_fatal_error(
"Failed to infer result type(s).");
3122 unsigned index = 0; (void)index;
3125 for (
auto v : valueGroup0) {
3126 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops1(*
this, v.getType(),
"operand", index++)))
3127 return ::mlir::failure();
3131 for (
auto v : valueGroup1) {
3132 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops1(*
this, v.getType(),
"operand", index++)))
3133 return ::mlir::failure();
3137 unsigned index = 0; (void)index;
3140 for (
auto v : valueGroup0) {
3141 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops2(*
this, v.getType(),
"result", index++)))
3142 return ::mlir::failure();
3146 return emitOpError(
"failed to verify that result type matches with lhs type");
3148 return emitOpError(
"failed to verify that result type matches with rhs type");
3149 return ::mlir::success();
3156::llvm::LogicalResult
XorFeltOp::inferReturnTypes(::mlir::MLIRContext *context, ::std::optional<::mlir::Location> location, ::mlir::ValueRange operands, ::mlir::DictionaryAttr attributes, ::mlir::OpaqueProperties properties, ::mlir::RegionRange regions, ::llvm::SmallVectorImpl<::mlir::Type>&inferredReturnTypes) {
3157 inferredReturnTypes.resize(1);
3158 ::mlir::Builder odsBuilder(context);
3160 inferredReturnTypes[0] = odsInferredType0;
3161 return ::mlir::success();
3164::mlir::ParseResult
XorFeltOp::parse(::mlir::OpAsmParser &parser, ::mlir::OperationState &result) {
3165 ::mlir::OpAsmParser::UnresolvedOperand lhsRawOperand{};
3166 ::llvm::ArrayRef<::mlir::OpAsmParser::UnresolvedOperand> lhsOperands(&lhsRawOperand, 1); ::llvm::SMLoc lhsOperandsLoc;
3167 (void)lhsOperandsLoc;
3168 ::mlir::OpAsmParser::UnresolvedOperand rhsRawOperand{};
3169 ::llvm::ArrayRef<::mlir::OpAsmParser::UnresolvedOperand> rhsOperands(&rhsRawOperand, 1); ::llvm::SMLoc rhsOperandsLoc;
3170 (void)rhsOperandsLoc;
3171 ::mlir::Type lhsRawType{};
3172 ::llvm::ArrayRef<::mlir::Type> lhsTypes(&lhsRawType, 1);
3173 ::mlir::Type rhsRawType{};
3174 ::llvm::ArrayRef<::mlir::Type> rhsTypes(&rhsRawType, 1);
3176 lhsOperandsLoc = parser.getCurrentLocation();
3177 if (parser.parseOperand(lhsRawOperand))
3178 return ::mlir::failure();
3179 if (parser.parseComma())
3180 return ::mlir::failure();
3182 rhsOperandsLoc = parser.getCurrentLocation();
3183 if (parser.parseOperand(rhsRawOperand))
3184 return ::mlir::failure();
3186 auto odsResult = parseInferredOrParsedType(parser, lhsRawType,
true);
3187 if (odsResult) return ::mlir::failure();
3190 auto odsResult = parseInferredOrParsedType(parser, rhsRawType,
false);
3191 if (odsResult) return ::mlir::failure();
3194 auto loc = parser.getCurrentLocation();(void)loc;
3195 if (parser.parseOptionalAttrDict(result.attributes))
3196 return ::mlir::failure();
3199 result.addTypes(odsBuildableType0);
3200 if (parser.resolveOperands(lhsOperands, lhsTypes, lhsOperandsLoc, result.operands))
3201 return ::mlir::failure();
3202 if (parser.resolveOperands(rhsOperands, rhsTypes, rhsOperandsLoc, result.operands))
3203 return ::mlir::failure();
3204 return ::mlir::success();
3213 printInferredOrParsedType(_odsPrinter, *
this,
getLhs().getType(),
true);
3214 printInferredOrParsedType(_odsPrinter, *
this,
getRhs().getType(),
false);
3215 ::llvm::SmallVector<::llvm::StringRef, 2> elidedAttrs;
3216 _odsPrinter.printOptionalAttrDict((*this)->getAttrs(), elidedAttrs);
3219void XorFeltOp::getEffects(::llvm::SmallVectorImpl<::mlir::SideEffects::EffectInstance<::mlir::MemoryEffects::Effect>> &effects) {
::llvm::LogicalResult verify(::mlir::Location loc)
AddFeltOpGenericAdaptor(RangeT values, ::mlir::DictionaryAttr attrs={}, const ::mlir::EmptyProperties &properties={}, ::mlir::RegionRange regions={})
AddFeltOpAdaptor(AddFeltOp op)
::mlir::ValueRange getOperands()
::llvm::LogicalResult verifyInvariants()
::mlir::TypedValue<::mlir::Type > getLhs()
::llvm::LogicalResult verifyInvariantsImpl()
::mlir::ParseResult parse(::mlir::OpAsmParser &parser, ::mlir::OperationState &result)
void print(::mlir::OpAsmPrinter &_odsPrinter)
::mlir::Operation::result_range getODSResults(unsigned index)
::mlir::TypedValue<::mlir::Type > getRhs()
void getEffects(::llvm::SmallVectorImpl<::mlir::SideEffects::EffectInstance<::mlir::MemoryEffects::Effect > > &effects)
::llvm::LogicalResult inferReturnTypes(::mlir::MLIRContext *context, ::std::optional<::mlir::Location > location, ::mlir::ValueRange operands, ::mlir::DictionaryAttr attributes, ::mlir::OpaqueProperties properties, ::mlir::RegionRange regions, ::llvm::SmallVectorImpl<::mlir::Type > &inferredReturnTypes)
::mlir::Operation::operand_range getODSOperands(unsigned index)
static void build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Type result, ::mlir::Value lhs, ::mlir::Value rhs)
AndFeltOpAdaptor(AndFeltOp op)
::llvm::LogicalResult verify(::mlir::Location loc)
AndFeltOpGenericAdaptor(RangeT values, ::mlir::DictionaryAttr attrs={}, const ::mlir::EmptyProperties &properties={}, ::mlir::RegionRange regions={})
::mlir::ValueRange getOperands()
::llvm::LogicalResult verifyInvariantsImpl()
void print(::mlir::OpAsmPrinter &_odsPrinter)
::llvm::LogicalResult inferReturnTypes(::mlir::MLIRContext *context, ::std::optional<::mlir::Location > location, ::mlir::ValueRange operands, ::mlir::DictionaryAttr attributes, ::mlir::OpaqueProperties properties, ::mlir::RegionRange regions, ::llvm::SmallVectorImpl<::mlir::Type > &inferredReturnTypes)
static void build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Type result, ::mlir::Value lhs, ::mlir::Value rhs)
::llvm::LogicalResult verifyInvariants()
::mlir::TypedValue<::mlir::Type > getRhs()
::mlir::ParseResult parse(::mlir::OpAsmParser &parser, ::mlir::OperationState &result)
::mlir::Operation::operand_range getODSOperands(unsigned index)
::mlir::TypedValue<::mlir::Type > getLhs()
::mlir::Operation::result_range getODSResults(unsigned index)
void getEffects(::llvm::SmallVectorImpl<::mlir::SideEffects::EffectInstance<::mlir::MemoryEffects::Effect > > &effects)
::llvm::LogicalResult verify(::mlir::Location loc)
DivFeltOpGenericAdaptor(RangeT values, ::mlir::DictionaryAttr attrs={}, const ::mlir::EmptyProperties &properties={}, ::mlir::RegionRange regions={})
DivFeltOpAdaptor(DivFeltOp op)
::mlir::ValueRange getOperands()
::mlir::Operation::result_range getODSResults(unsigned index)
::llvm::LogicalResult verifyInvariantsImpl()
void print(::mlir::OpAsmPrinter &_odsPrinter)
::mlir::TypedValue<::mlir::Type > getRhs()
::mlir::TypedValue<::mlir::Type > getLhs()
::llvm::LogicalResult inferReturnTypes(::mlir::MLIRContext *context, ::std::optional<::mlir::Location > location, ::mlir::ValueRange operands, ::mlir::DictionaryAttr attributes, ::mlir::OpaqueProperties properties, ::mlir::RegionRange regions, ::llvm::SmallVectorImpl<::mlir::Type > &inferredReturnTypes)
::mlir::ParseResult parse(::mlir::OpAsmParser &parser, ::mlir::OperationState &result)
void getEffects(::llvm::SmallVectorImpl<::mlir::SideEffects::EffectInstance<::mlir::MemoryEffects::Effect > > &effects)
::llvm::LogicalResult verifyInvariants()
::mlir::Operation::operand_range getODSOperands(unsigned index)
static void build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Type result, ::mlir::Value lhs, ::mlir::Value rhs)
::llvm::LogicalResult verify(::mlir::Location loc)
FeltConstantOpAdaptor(FeltConstantOp op)
FeltConstantOpGenericAdaptor(RangeT values, ::mlir::DictionaryAttr attrs, const Properties &properties, ::mlir::RegionRange regions={})
::mlir::ValueRange getOperands()
static void build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Type result, ::llzk::felt::FeltConstAttr value)
void writeProperties(::mlir::DialectBytecodeWriter &writer)
FoldAdaptor::Properties Properties
void print(::mlir::OpAsmPrinter &_odsPrinter)
::llvm::LogicalResult inferReturnTypes(::mlir::MLIRContext *context, ::std::optional<::mlir::Location > location, ::mlir::ValueRange operands, ::mlir::DictionaryAttr attributes, ::mlir::OpaqueProperties properties, ::mlir::RegionRange regions, ::llvm::SmallVectorImpl<::mlir::Type > &inferredReturnTypes)
::llvm::LogicalResult readProperties(::mlir::DialectBytecodeReader &reader, ::mlir::OperationState &state)
static std::optional< mlir::Attribute > getInherentAttr(::mlir::MLIRContext *ctx, const Properties &prop, llvm::StringRef name)
static void populateInherentAttrs(::mlir::MLIRContext *ctx, const Properties &prop, ::mlir::NamedAttrList &attrs)
::llvm::LogicalResult setPropertiesFromAttr(Properties &prop, ::mlir::Attribute attr, ::llvm::function_ref<::mlir::InFlightDiagnostic()> emitError)
::llvm::LogicalResult verifyInvariantsImpl()
void getEffects(::llvm::SmallVectorImpl<::mlir::SideEffects::EffectInstance<::mlir::MemoryEffects::Effect > > &effects)
::llzk::felt::FeltConstAttr getValueAttr()
::mlir::Operation::result_range getODSResults(unsigned index)
static void setInherentAttr(Properties &prop, llvm::StringRef name, mlir::Attribute value)
::mlir::StringAttr getValueAttrName()
static llvm::hash_code computePropertiesHash(const Properties &prop)
::mlir::ParseResult parse(::mlir::OpAsmParser &parser, ::mlir::OperationState &result)
::llvm::LogicalResult verifyInherentAttrs(::mlir::OperationName opName, ::mlir::NamedAttrList &attrs, llvm::function_ref<::mlir::InFlightDiagnostic()> emitError)
::mlir::Attribute getPropertiesAsAttr(::mlir::MLIRContext *ctx, const Properties &prop)
::llvm::LogicalResult verifyInvariants()
InvFeltOpGenericAdaptor(RangeT values, ::mlir::DictionaryAttr attrs={}, const ::mlir::EmptyProperties &properties={}, ::mlir::RegionRange regions={})
::llvm::LogicalResult verify(::mlir::Location loc)
InvFeltOpAdaptor(InvFeltOp op)
::mlir::ValueRange getOperands()
::mlir::TypedValue<::mlir::Type > getOperand()
::mlir::Operation::result_range getODSResults(unsigned index)
void print(::mlir::OpAsmPrinter &_odsPrinter)
::llvm::LogicalResult verifyInvariants()
::mlir::Operation::operand_range getODSOperands(unsigned index)
static void build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Type result, ::mlir::Value operand)
::mlir::ParseResult parse(::mlir::OpAsmParser &parser, ::mlir::OperationState &result)
void getEffects(::llvm::SmallVectorImpl<::mlir::SideEffects::EffectInstance<::mlir::MemoryEffects::Effect > > &effects)
::llvm::LogicalResult verifyInvariantsImpl()
::llvm::LogicalResult inferReturnTypes(::mlir::MLIRContext *context, ::std::optional<::mlir::Location > location, ::mlir::ValueRange operands, ::mlir::DictionaryAttr attributes, ::mlir::OpaqueProperties properties, ::mlir::RegionRange regions, ::llvm::SmallVectorImpl<::mlir::Type > &inferredReturnTypes)
MulFeltOpAdaptor(MulFeltOp op)
MulFeltOpGenericAdaptor(RangeT values, ::mlir::DictionaryAttr attrs={}, const ::mlir::EmptyProperties &properties={}, ::mlir::RegionRange regions={})
::llvm::LogicalResult verify(::mlir::Location loc)
::mlir::ValueRange getOperands()
void print(::mlir::OpAsmPrinter &_odsPrinter)
::mlir::TypedValue<::mlir::Type > getLhs()
::llvm::LogicalResult verifyInvariantsImpl()
::mlir::TypedValue<::mlir::Type > getRhs()
::llvm::LogicalResult inferReturnTypes(::mlir::MLIRContext *context, ::std::optional<::mlir::Location > location, ::mlir::ValueRange operands, ::mlir::DictionaryAttr attributes, ::mlir::OpaqueProperties properties, ::mlir::RegionRange regions, ::llvm::SmallVectorImpl<::mlir::Type > &inferredReturnTypes)
static void build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Type result, ::mlir::Value lhs, ::mlir::Value rhs)
::mlir::ParseResult parse(::mlir::OpAsmParser &parser, ::mlir::OperationState &result)
void getEffects(::llvm::SmallVectorImpl<::mlir::SideEffects::EffectInstance<::mlir::MemoryEffects::Effect > > &effects)
::mlir::Operation::result_range getODSResults(unsigned index)
::llvm::LogicalResult verifyInvariants()
::mlir::Operation::operand_range getODSOperands(unsigned index)
NegFeltOpGenericAdaptor(RangeT values, ::mlir::DictionaryAttr attrs={}, const ::mlir::EmptyProperties &properties={}, ::mlir::RegionRange regions={})
NegFeltOpAdaptor(NegFeltOp op)
::llvm::LogicalResult verify(::mlir::Location loc)
::mlir::ValueRange getOperands()
::llvm::LogicalResult verifyInvariantsImpl()
static void build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Type result, ::mlir::Value operand)
void getEffects(::llvm::SmallVectorImpl<::mlir::SideEffects::EffectInstance<::mlir::MemoryEffects::Effect > > &effects)
::llvm::LogicalResult verifyInvariants()
::mlir::TypedValue<::mlir::Type > getOperand()
::mlir::Operation::result_range getODSResults(unsigned index)
::llvm::LogicalResult inferReturnTypes(::mlir::MLIRContext *context, ::std::optional<::mlir::Location > location, ::mlir::ValueRange operands, ::mlir::DictionaryAttr attributes, ::mlir::OpaqueProperties properties, ::mlir::RegionRange regions, ::llvm::SmallVectorImpl<::mlir::Type > &inferredReturnTypes)
void print(::mlir::OpAsmPrinter &_odsPrinter)
::mlir::Operation::operand_range getODSOperands(unsigned index)
::mlir::ParseResult parse(::mlir::OpAsmParser &parser, ::mlir::OperationState &result)
NotFeltOpAdaptor(NotFeltOp op)
::llvm::LogicalResult verify(::mlir::Location loc)
NotFeltOpGenericAdaptor(RangeT values, ::mlir::DictionaryAttr attrs={}, const ::mlir::EmptyProperties &properties={}, ::mlir::RegionRange regions={})
::mlir::ValueRange getOperands()
::llvm::LogicalResult verifyInvariantsImpl()
::mlir::Operation::result_range getODSResults(unsigned index)
::mlir::Operation::operand_range getODSOperands(unsigned index)
static void build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Type result, ::mlir::Value operand)
::mlir::TypedValue<::mlir::Type > getOperand()
::llvm::LogicalResult verifyInvariants()
::mlir::ParseResult parse(::mlir::OpAsmParser &parser, ::mlir::OperationState &result)
void getEffects(::llvm::SmallVectorImpl<::mlir::SideEffects::EffectInstance<::mlir::MemoryEffects::Effect > > &effects)
::llvm::LogicalResult inferReturnTypes(::mlir::MLIRContext *context, ::std::optional<::mlir::Location > location, ::mlir::ValueRange operands, ::mlir::DictionaryAttr attributes, ::mlir::OpaqueProperties properties, ::mlir::RegionRange regions, ::llvm::SmallVectorImpl<::mlir::Type > &inferredReturnTypes)
void print(::mlir::OpAsmPrinter &_odsPrinter)
OrFeltOpAdaptor(OrFeltOp op)
OrFeltOpGenericAdaptor(RangeT values, ::mlir::DictionaryAttr attrs={}, const ::mlir::EmptyProperties &properties={}, ::mlir::RegionRange regions={})
::llvm::LogicalResult verify(::mlir::Location loc)
::mlir::ValueRange getOperands()
::mlir::ParseResult parse(::mlir::OpAsmParser &parser, ::mlir::OperationState &result)
::mlir::Operation::result_range getODSResults(unsigned index)
static void build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Type result, ::mlir::Value lhs, ::mlir::Value rhs)
void print(::mlir::OpAsmPrinter &_odsPrinter)
::llvm::LogicalResult inferReturnTypes(::mlir::MLIRContext *context, ::std::optional<::mlir::Location > location, ::mlir::ValueRange operands, ::mlir::DictionaryAttr attributes, ::mlir::OpaqueProperties properties, ::mlir::RegionRange regions, ::llvm::SmallVectorImpl<::mlir::Type > &inferredReturnTypes)
::mlir::Operation::operand_range getODSOperands(unsigned index)
::llvm::LogicalResult verifyInvariants()
::mlir::TypedValue<::mlir::Type > getRhs()
::llvm::LogicalResult verifyInvariantsImpl()
void getEffects(::llvm::SmallVectorImpl<::mlir::SideEffects::EffectInstance<::mlir::MemoryEffects::Effect > > &effects)
::mlir::TypedValue<::mlir::Type > getLhs()
::llvm::LogicalResult verify(::mlir::Location loc)
PowFeltOpGenericAdaptor(RangeT values, ::mlir::DictionaryAttr attrs={}, const ::mlir::EmptyProperties &properties={}, ::mlir::RegionRange regions={})
PowFeltOpAdaptor(PowFeltOp op)
::mlir::ValueRange getOperands()
::mlir::TypedValue<::mlir::Type > getLhs()
::mlir::Operation::operand_range getODSOperands(unsigned index)
::llvm::LogicalResult inferReturnTypes(::mlir::MLIRContext *context, ::std::optional<::mlir::Location > location, ::mlir::ValueRange operands, ::mlir::DictionaryAttr attributes, ::mlir::OpaqueProperties properties, ::mlir::RegionRange regions, ::llvm::SmallVectorImpl<::mlir::Type > &inferredReturnTypes)
void getEffects(::llvm::SmallVectorImpl<::mlir::SideEffects::EffectInstance<::mlir::MemoryEffects::Effect > > &effects)
::mlir::Operation::result_range getODSResults(unsigned index)
void print(::mlir::OpAsmPrinter &_odsPrinter)
::mlir::TypedValue<::mlir::Type > getRhs()
::mlir::ParseResult parse(::mlir::OpAsmParser &parser, ::mlir::OperationState &result)
::llvm::LogicalResult verifyInvariantsImpl()
static void build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Type result, ::mlir::Value lhs, ::mlir::Value rhs)
::llvm::LogicalResult verifyInvariants()
::llvm::LogicalResult verify(::mlir::Location loc)
ShlFeltOpGenericAdaptor(RangeT values, ::mlir::DictionaryAttr attrs={}, const ::mlir::EmptyProperties &properties={}, ::mlir::RegionRange regions={})
ShlFeltOpAdaptor(ShlFeltOp op)
::mlir::ValueRange getOperands()
void getEffects(::llvm::SmallVectorImpl<::mlir::SideEffects::EffectInstance<::mlir::MemoryEffects::Effect > > &effects)
static void build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Type result, ::mlir::Value lhs, ::mlir::Value rhs)
::mlir::TypedValue<::mlir::Type > getLhs()
::mlir::TypedValue<::mlir::Type > getRhs()
::mlir::ParseResult parse(::mlir::OpAsmParser &parser, ::mlir::OperationState &result)
void print(::mlir::OpAsmPrinter &_odsPrinter)
::llvm::LogicalResult inferReturnTypes(::mlir::MLIRContext *context, ::std::optional<::mlir::Location > location, ::mlir::ValueRange operands, ::mlir::DictionaryAttr attributes, ::mlir::OpaqueProperties properties, ::mlir::RegionRange regions, ::llvm::SmallVectorImpl<::mlir::Type > &inferredReturnTypes)
::llvm::LogicalResult verifyInvariantsImpl()
::mlir::Operation::operand_range getODSOperands(unsigned index)
::mlir::Operation::result_range getODSResults(unsigned index)
::llvm::LogicalResult verifyInvariants()
ShrFeltOpAdaptor(ShrFeltOp op)
ShrFeltOpGenericAdaptor(RangeT values, ::mlir::DictionaryAttr attrs={}, const ::mlir::EmptyProperties &properties={}, ::mlir::RegionRange regions={})
::llvm::LogicalResult verify(::mlir::Location loc)
::mlir::ValueRange getOperands()
::llvm::LogicalResult verifyInvariants()
void print(::mlir::OpAsmPrinter &_odsPrinter)
::mlir::Operation::operand_range getODSOperands(unsigned index)
::mlir::TypedValue<::mlir::Type > getRhs()
void getEffects(::llvm::SmallVectorImpl<::mlir::SideEffects::EffectInstance<::mlir::MemoryEffects::Effect > > &effects)
::llvm::LogicalResult inferReturnTypes(::mlir::MLIRContext *context, ::std::optional<::mlir::Location > location, ::mlir::ValueRange operands, ::mlir::DictionaryAttr attributes, ::mlir::OpaqueProperties properties, ::mlir::RegionRange regions, ::llvm::SmallVectorImpl<::mlir::Type > &inferredReturnTypes)
::mlir::Operation::result_range getODSResults(unsigned index)
::llvm::LogicalResult verifyInvariantsImpl()
static void build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Type result, ::mlir::Value lhs, ::mlir::Value rhs)
::mlir::TypedValue<::mlir::Type > getLhs()
::mlir::ParseResult parse(::mlir::OpAsmParser &parser, ::mlir::OperationState &result)
::llvm::LogicalResult verify(::mlir::Location loc)
SignedIntDivFeltOpGenericAdaptor(RangeT values, ::mlir::DictionaryAttr attrs={}, const ::mlir::EmptyProperties &properties={}, ::mlir::RegionRange regions={})
SignedIntDivFeltOpAdaptor(SignedIntDivFeltOp op)
::mlir::ValueRange getOperands()
::mlir::ParseResult parse(::mlir::OpAsmParser &parser, ::mlir::OperationState &result)
::llvm::LogicalResult verifyInvariantsImpl()
::mlir::Operation::operand_range getODSOperands(unsigned index)
::mlir::Operation::result_range getODSResults(unsigned index)
::mlir::TypedValue<::mlir::Type > getRhs()
::mlir::TypedValue<::mlir::Type > getLhs()
::llvm::LogicalResult verifyInvariants()
::llvm::LogicalResult inferReturnTypes(::mlir::MLIRContext *context, ::std::optional<::mlir::Location > location, ::mlir::ValueRange operands, ::mlir::DictionaryAttr attributes, ::mlir::OpaqueProperties properties, ::mlir::RegionRange regions, ::llvm::SmallVectorImpl<::mlir::Type > &inferredReturnTypes)
static void build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Type result, ::mlir::Value lhs, ::mlir::Value rhs)
void print(::mlir::OpAsmPrinter &_odsPrinter)
void getEffects(::llvm::SmallVectorImpl<::mlir::SideEffects::EffectInstance<::mlir::MemoryEffects::Effect > > &effects)
SignedModFeltOpAdaptor(SignedModFeltOp op)
::llvm::LogicalResult verify(::mlir::Location loc)
SignedModFeltOpGenericAdaptor(RangeT values, ::mlir::DictionaryAttr attrs={}, const ::mlir::EmptyProperties &properties={}, ::mlir::RegionRange regions={})
::mlir::ValueRange getOperands()
::llvm::LogicalResult inferReturnTypes(::mlir::MLIRContext *context, ::std::optional<::mlir::Location > location, ::mlir::ValueRange operands, ::mlir::DictionaryAttr attributes, ::mlir::OpaqueProperties properties, ::mlir::RegionRange regions, ::llvm::SmallVectorImpl<::mlir::Type > &inferredReturnTypes)
::mlir::ParseResult parse(::mlir::OpAsmParser &parser, ::mlir::OperationState &result)
::mlir::TypedValue<::mlir::Type > getRhs()
void getEffects(::llvm::SmallVectorImpl<::mlir::SideEffects::EffectInstance<::mlir::MemoryEffects::Effect > > &effects)
void print(::mlir::OpAsmPrinter &_odsPrinter)
static void build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Type result, ::mlir::Value lhs, ::mlir::Value rhs)
::mlir::TypedValue<::mlir::Type > getLhs()
::mlir::Operation::result_range getODSResults(unsigned index)
::mlir::Operation::operand_range getODSOperands(unsigned index)
::llvm::LogicalResult verifyInvariantsImpl()
::llvm::LogicalResult verifyInvariants()
SubFeltOpGenericAdaptor(RangeT values, ::mlir::DictionaryAttr attrs={}, const ::mlir::EmptyProperties &properties={}, ::mlir::RegionRange regions={})
::llvm::LogicalResult verify(::mlir::Location loc)
SubFeltOpAdaptor(SubFeltOp op)
::mlir::ValueRange getOperands()
::mlir::ParseResult parse(::mlir::OpAsmParser &parser, ::mlir::OperationState &result)
::mlir::Operation::result_range getODSResults(unsigned index)
static void build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Type result, ::mlir::Value lhs, ::mlir::Value rhs)
::llvm::LogicalResult verifyInvariantsImpl()
void getEffects(::llvm::SmallVectorImpl<::mlir::SideEffects::EffectInstance<::mlir::MemoryEffects::Effect > > &effects)
::mlir::TypedValue<::mlir::Type > getRhs()
void print(::mlir::OpAsmPrinter &_odsPrinter)
::llvm::LogicalResult inferReturnTypes(::mlir::MLIRContext *context, ::std::optional<::mlir::Location > location, ::mlir::ValueRange operands, ::mlir::DictionaryAttr attributes, ::mlir::OpaqueProperties properties, ::mlir::RegionRange regions, ::llvm::SmallVectorImpl<::mlir::Type > &inferredReturnTypes)
::llvm::LogicalResult verifyInvariants()
::mlir::TypedValue<::mlir::Type > getLhs()
::mlir::Operation::operand_range getODSOperands(unsigned index)
UnsignedIntDivFeltOpAdaptor(UnsignedIntDivFeltOp op)
UnsignedIntDivFeltOpGenericAdaptor(RangeT values, ::mlir::DictionaryAttr attrs={}, const ::mlir::EmptyProperties &properties={}, ::mlir::RegionRange regions={})
::llvm::LogicalResult verify(::mlir::Location loc)
::mlir::ValueRange getOperands()
void print(::mlir::OpAsmPrinter &_odsPrinter)
::mlir::TypedValue<::mlir::Type > getRhs()
::mlir::ParseResult parse(::mlir::OpAsmParser &parser, ::mlir::OperationState &result)
void getEffects(::llvm::SmallVectorImpl<::mlir::SideEffects::EffectInstance<::mlir::MemoryEffects::Effect > > &effects)
::llvm::LogicalResult inferReturnTypes(::mlir::MLIRContext *context, ::std::optional<::mlir::Location > location, ::mlir::ValueRange operands, ::mlir::DictionaryAttr attributes, ::mlir::OpaqueProperties properties, ::mlir::RegionRange regions, ::llvm::SmallVectorImpl<::mlir::Type > &inferredReturnTypes)
static void build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Type result, ::mlir::Value lhs, ::mlir::Value rhs)
::llvm::LogicalResult verifyInvariantsImpl()
::mlir::TypedValue<::mlir::Type > getLhs()
::mlir::Operation::result_range getODSResults(unsigned index)
::llvm::LogicalResult verifyInvariants()
::mlir::Operation::operand_range getODSOperands(unsigned index)
UnsignedModFeltOpGenericAdaptor(RangeT values, ::mlir::DictionaryAttr attrs={}, const ::mlir::EmptyProperties &properties={}, ::mlir::RegionRange regions={})
::llvm::LogicalResult verify(::mlir::Location loc)
UnsignedModFeltOpAdaptor(UnsignedModFeltOp op)
::mlir::ValueRange getOperands()
void getEffects(::llvm::SmallVectorImpl<::mlir::SideEffects::EffectInstance<::mlir::MemoryEffects::Effect > > &effects)
::mlir::TypedValue<::mlir::Type > getRhs()
::mlir::Operation::operand_range getODSOperands(unsigned index)
::llvm::LogicalResult verifyInvariants()
::mlir::ParseResult parse(::mlir::OpAsmParser &parser, ::mlir::OperationState &result)
::mlir::Operation::result_range getODSResults(unsigned index)
::llvm::LogicalResult verifyInvariantsImpl()
::mlir::TypedValue<::mlir::Type > getLhs()
void print(::mlir::OpAsmPrinter &_odsPrinter)
static void build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Type result, ::mlir::Value lhs, ::mlir::Value rhs)
::llvm::LogicalResult inferReturnTypes(::mlir::MLIRContext *context, ::std::optional<::mlir::Location > location, ::mlir::ValueRange operands, ::mlir::DictionaryAttr attributes, ::mlir::OpaqueProperties properties, ::mlir::RegionRange regions, ::llvm::SmallVectorImpl<::mlir::Type > &inferredReturnTypes)
XorFeltOpAdaptor(XorFeltOp op)
::llvm::LogicalResult verify(::mlir::Location loc)
XorFeltOpGenericAdaptor(RangeT values, ::mlir::DictionaryAttr attrs={}, const ::mlir::EmptyProperties &properties={}, ::mlir::RegionRange regions={})
::mlir::ValueRange getOperands()
::mlir::Operation::result_range getODSResults(unsigned index)
::llvm::LogicalResult verifyInvariantsImpl()
::mlir::ParseResult parse(::mlir::OpAsmParser &parser, ::mlir::OperationState &result)
::mlir::TypedValue<::mlir::Type > getLhs()
::llvm::LogicalResult verifyInvariants()
static void build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Type result, ::mlir::Value lhs, ::mlir::Value rhs)
::mlir::Operation::operand_range getODSOperands(unsigned index)
::llvm::LogicalResult inferReturnTypes(::mlir::MLIRContext *context, ::std::optional<::mlir::Location > location, ::mlir::ValueRange operands, ::mlir::DictionaryAttr attributes, ::mlir::OpaqueProperties properties, ::mlir::RegionRange regions, ::llvm::SmallVectorImpl<::mlir::Type > &inferredReturnTypes)
void print(::mlir::OpAsmPrinter &_odsPrinter)
::mlir::TypedValue<::mlir::Type > getRhs()
void getEffects(::llvm::SmallVectorImpl<::mlir::SideEffects::EffectInstance<::mlir::MemoryEffects::Effect > > &effects)
::mlir::RegionRange odsRegions
::llzk::felt::FeltConstAttr getValueAttr()
::std::optional<::mlir::OperationName > odsOpName
FeltConstantOpGenericAdaptorBase(::mlir::DictionaryAttr attrs, const Properties &properties, ::mlir::RegionRange regions={})
::mlir::DictionaryAttr odsAttrs
const Properties & getProperties()
bool typesUnify(Type lhs, Type rhs, ArrayRef< StringRef > rhsReversePrefix, UnificationMap *unifications)