41static ::llvm::LogicalResult __mlir_ods_local_type_constraint_Ops1(
42 ::mlir::Operation *op, ::mlir::Type type, ::llvm::StringRef valueKind,
43 unsigned valueIndex) {
44 if (!((::llvm::isa<llzk::polymorphic::TypeVarType,::llzk::felt::FeltType>(type)))) {
45 return op->emitOpError(valueKind) <<
" #" << valueIndex
46 <<
" must be finite field element or type variable, but got " << type;
48 return ::mlir::success();
51static ::llvm::LogicalResult __mlir_ods_local_type_constraint_Ops2(
52 ::mlir::Operation *op, ::mlir::Type type, ::llvm::StringRef valueKind,
53 unsigned valueIndex) {
54 if (!((::llvm::isa<::llzk::felt::FeltType>(type)))) {
55 return op->emitOpError(valueKind) <<
" #" << valueIndex
56 <<
" must be finite field element, but got " << type;
58 return ::mlir::success();
61static ::llvm::LogicalResult __mlir_ods_local_attr_constraint_Ops1(
62 ::mlir::Attribute attr, ::llvm::StringRef attrName, llvm::function_ref<::mlir::InFlightDiagnostic()> emitError) {
63 if (attr && !((::llvm::isa<::llzk::felt::FeltConstAttr>(attr))))
64 return emitError() <<
"attribute '" << attrName
65 <<
"' failed to satisfy constraint: finite field element";
66 return ::mlir::success();
68static ::llvm::LogicalResult __mlir_ods_local_attr_constraint_Ops1(
69 ::mlir::Operation *op, ::mlir::Attribute attr, ::llvm::StringRef attrName) {
70 return __mlir_ods_local_attr_constraint_Ops1(attr, attrName, [op]() {
71 return op->emitOpError();
88 return ::mlir::success();
91void AddFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Type result, ::mlir::Value lhs, ::mlir::Value rhs) {
92 odsState.addOperands(lhs);
93 odsState.addOperands(rhs);
94 odsState.addTypes(result);
97void AddFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Value lhs, ::mlir::Value rhs) {
98 odsState.addOperands(lhs);
99 odsState.addOperands(rhs);
101 ::llvm::SmallVector<::mlir::Type, 2> inferredReturnTypes;
103 odsState.location, odsState.operands,
104 odsState.attributes.getDictionary(odsState.getContext()),
105 odsState.getRawProperties(),
106 odsState.regions, inferredReturnTypes)))
107 odsState.addTypes(inferredReturnTypes);
109 ::mlir::detail::reportFatalInferReturnTypesError(odsState);
113void AddFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::Value lhs, ::mlir::Value rhs) {
114 odsState.addOperands(lhs);
115 odsState.addOperands(rhs);
116 assert(resultTypes.size() == 1u &&
"mismatched number of results");
117 odsState.addTypes(resultTypes);
120void AddFeltOp::build(::mlir::OpBuilder &, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes) {
121 assert(operands.size() == 2u &&
"mismatched number of parameters");
122 odsState.addOperands(operands);
123 odsState.addAttributes(attributes);
124 assert(resultTypes.size() == 1u &&
"mismatched number of return types");
125 odsState.addTypes(resultTypes);
128void AddFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes) {
129 assert(operands.size() == 2u &&
"mismatched number of parameters");
130 odsState.addOperands(operands);
131 odsState.addAttributes(attributes);
133 ::llvm::SmallVector<::mlir::Type, 2> inferredReturnTypes;
135 odsState.location, operands,
136 odsState.attributes.getDictionary(odsState.getContext()),
137 odsState.getRawProperties(),
138 odsState.regions, inferredReturnTypes))) {
139 assert(inferredReturnTypes.size() == 1u &&
"mismatched number of return types");
140 odsState.addTypes(inferredReturnTypes);
142 ::llvm::report_fatal_error(
"Failed to infer result type(s).");
148 unsigned index = 0; (void)index;
151 for (
auto v : valueGroup0) {
152 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops1(*
this, v.getType(),
"operand", index++)))
153 return ::mlir::failure();
157 for (
auto v : valueGroup1) {
158 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops1(*
this, v.getType(),
"operand", index++)))
159 return ::mlir::failure();
163 unsigned index = 0; (void)index;
166 for (
auto v : valueGroup0) {
167 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops2(*
this, v.getType(),
"result", index++)))
168 return ::mlir::failure();
172 return emitOpError(
"failed to verify that result type matches with lhs type");
174 return emitOpError(
"failed to verify that result type matches with rhs type");
175 return ::mlir::success();
182::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) {
183 inferredReturnTypes.resize(1);
184 ::mlir::Builder odsBuilder(context);
186 inferredReturnTypes[0] = odsInferredType0;
187 return ::mlir::success();
190::mlir::ParseResult
AddFeltOp::parse(::mlir::OpAsmParser &parser, ::mlir::OperationState &result) {
191 ::mlir::OpAsmParser::UnresolvedOperand lhsRawOperand{};
192 ::llvm::ArrayRef<::mlir::OpAsmParser::UnresolvedOperand> lhsOperands(&lhsRawOperand, 1); ::llvm::SMLoc lhsOperandsLoc;
193 (void)lhsOperandsLoc;
194 ::mlir::OpAsmParser::UnresolvedOperand rhsRawOperand{};
195 ::llvm::ArrayRef<::mlir::OpAsmParser::UnresolvedOperand> rhsOperands(&rhsRawOperand, 1); ::llvm::SMLoc rhsOperandsLoc;
196 (void)rhsOperandsLoc;
197 ::mlir::Type lhsRawType{};
198 ::llvm::ArrayRef<::mlir::Type> lhsTypes(&lhsRawType, 1);
199 ::mlir::Type rhsRawType{};
200 ::llvm::ArrayRef<::mlir::Type> rhsTypes(&rhsRawType, 1);
202 lhsOperandsLoc = parser.getCurrentLocation();
203 if (parser.parseOperand(lhsRawOperand))
204 return ::mlir::failure();
205 if (parser.parseComma())
206 return ::mlir::failure();
208 rhsOperandsLoc = parser.getCurrentLocation();
209 if (parser.parseOperand(rhsRawOperand))
210 return ::mlir::failure();
213 if (odsResult) return ::mlir::failure();
217 if (odsResult) return ::mlir::failure();
220 auto loc = parser.getCurrentLocation();(void)loc;
221 if (parser.parseOptionalAttrDict(result.attributes))
222 return ::mlir::failure();
225 result.addTypes(odsBuildableType0);
226 if (parser.resolveOperands(lhsOperands, lhsTypes, lhsOperandsLoc, result.operands))
227 return ::mlir::failure();
228 if (parser.resolveOperands(rhsOperands, rhsTypes, rhsOperandsLoc, result.operands))
229 return ::mlir::failure();
230 return ::mlir::success();
241 ::llvm::SmallVector<::llvm::StringRef, 2> elidedAttrs;
242 _odsPrinter.printOptionalAttrDict((*this)->getAttrs(), elidedAttrs);
245void AddFeltOp::getEffects(::llvm::SmallVectorImpl<::mlir::SideEffects::EffectInstance<::mlir::MemoryEffects::Effect>> &effects) {
264 return ::mlir::success();
267void AndFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Type result, ::mlir::Value lhs, ::mlir::Value rhs) {
268 odsState.addOperands(lhs);
269 odsState.addOperands(rhs);
270 odsState.addTypes(result);
273void AndFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Value lhs, ::mlir::Value rhs) {
274 odsState.addOperands(lhs);
275 odsState.addOperands(rhs);
277 ::llvm::SmallVector<::mlir::Type, 2> inferredReturnTypes;
279 odsState.location, odsState.operands,
280 odsState.attributes.getDictionary(odsState.getContext()),
281 odsState.getRawProperties(),
282 odsState.regions, inferredReturnTypes)))
283 odsState.addTypes(inferredReturnTypes);
285 ::mlir::detail::reportFatalInferReturnTypesError(odsState);
289void AndFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::Value lhs, ::mlir::Value rhs) {
290 odsState.addOperands(lhs);
291 odsState.addOperands(rhs);
292 assert(resultTypes.size() == 1u &&
"mismatched number of results");
293 odsState.addTypes(resultTypes);
296void AndFeltOp::build(::mlir::OpBuilder &, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes) {
297 assert(operands.size() == 2u &&
"mismatched number of parameters");
298 odsState.addOperands(operands);
299 odsState.addAttributes(attributes);
300 assert(resultTypes.size() == 1u &&
"mismatched number of return types");
301 odsState.addTypes(resultTypes);
304void AndFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes) {
305 assert(operands.size() == 2u &&
"mismatched number of parameters");
306 odsState.addOperands(operands);
307 odsState.addAttributes(attributes);
309 ::llvm::SmallVector<::mlir::Type, 2> inferredReturnTypes;
311 odsState.location, operands,
312 odsState.attributes.getDictionary(odsState.getContext()),
313 odsState.getRawProperties(),
314 odsState.regions, inferredReturnTypes))) {
315 assert(inferredReturnTypes.size() == 1u &&
"mismatched number of return types");
316 odsState.addTypes(inferredReturnTypes);
318 ::llvm::report_fatal_error(
"Failed to infer result type(s).");
324 unsigned index = 0; (void)index;
327 for (
auto v : valueGroup0) {
328 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops1(*
this, v.getType(),
"operand", index++)))
329 return ::mlir::failure();
333 for (
auto v : valueGroup1) {
334 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops1(*
this, v.getType(),
"operand", index++)))
335 return ::mlir::failure();
339 unsigned index = 0; (void)index;
342 for (
auto v : valueGroup0) {
343 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops2(*
this, v.getType(),
"result", index++)))
344 return ::mlir::failure();
348 return emitOpError(
"failed to verify that result type matches with lhs type");
350 return emitOpError(
"failed to verify that result type matches with rhs type");
351 return ::mlir::success();
358::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) {
359 inferredReturnTypes.resize(1);
360 ::mlir::Builder odsBuilder(context);
362 inferredReturnTypes[0] = odsInferredType0;
363 return ::mlir::success();
366::mlir::ParseResult
AndFeltOp::parse(::mlir::OpAsmParser &parser, ::mlir::OperationState &result) {
367 ::mlir::OpAsmParser::UnresolvedOperand lhsRawOperand{};
368 ::llvm::ArrayRef<::mlir::OpAsmParser::UnresolvedOperand> lhsOperands(&lhsRawOperand, 1); ::llvm::SMLoc lhsOperandsLoc;
369 (void)lhsOperandsLoc;
370 ::mlir::OpAsmParser::UnresolvedOperand rhsRawOperand{};
371 ::llvm::ArrayRef<::mlir::OpAsmParser::UnresolvedOperand> rhsOperands(&rhsRawOperand, 1); ::llvm::SMLoc rhsOperandsLoc;
372 (void)rhsOperandsLoc;
373 ::mlir::Type lhsRawType{};
374 ::llvm::ArrayRef<::mlir::Type> lhsTypes(&lhsRawType, 1);
375 ::mlir::Type rhsRawType{};
376 ::llvm::ArrayRef<::mlir::Type> rhsTypes(&rhsRawType, 1);
378 lhsOperandsLoc = parser.getCurrentLocation();
379 if (parser.parseOperand(lhsRawOperand))
380 return ::mlir::failure();
381 if (parser.parseComma())
382 return ::mlir::failure();
384 rhsOperandsLoc = parser.getCurrentLocation();
385 if (parser.parseOperand(rhsRawOperand))
386 return ::mlir::failure();
389 if (odsResult) return ::mlir::failure();
393 if (odsResult) return ::mlir::failure();
396 auto loc = parser.getCurrentLocation();(void)loc;
397 if (parser.parseOptionalAttrDict(result.attributes))
398 return ::mlir::failure();
401 result.addTypes(odsBuildableType0);
402 if (parser.resolveOperands(lhsOperands, lhsTypes, lhsOperandsLoc, result.operands))
403 return ::mlir::failure();
404 if (parser.resolveOperands(rhsOperands, rhsTypes, rhsOperandsLoc, result.operands))
405 return ::mlir::failure();
406 return ::mlir::success();
417 ::llvm::SmallVector<::llvm::StringRef, 2> elidedAttrs;
418 _odsPrinter.printOptionalAttrDict((*this)->getAttrs(), elidedAttrs);
421void AndFeltOp::getEffects(::llvm::SmallVectorImpl<::mlir::SideEffects::EffectInstance<::mlir::MemoryEffects::Effect>> &effects) {
440 return ::mlir::success();
443void DivFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Type result, ::mlir::Value lhs, ::mlir::Value rhs) {
444 odsState.addOperands(lhs);
445 odsState.addOperands(rhs);
446 odsState.addTypes(result);
449void DivFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Value lhs, ::mlir::Value rhs) {
450 odsState.addOperands(lhs);
451 odsState.addOperands(rhs);
453 ::llvm::SmallVector<::mlir::Type, 2> inferredReturnTypes;
455 odsState.location, odsState.operands,
456 odsState.attributes.getDictionary(odsState.getContext()),
457 odsState.getRawProperties(),
458 odsState.regions, inferredReturnTypes)))
459 odsState.addTypes(inferredReturnTypes);
461 ::mlir::detail::reportFatalInferReturnTypesError(odsState);
465void DivFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::Value lhs, ::mlir::Value rhs) {
466 odsState.addOperands(lhs);
467 odsState.addOperands(rhs);
468 assert(resultTypes.size() == 1u &&
"mismatched number of results");
469 odsState.addTypes(resultTypes);
472void DivFeltOp::build(::mlir::OpBuilder &, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes) {
473 assert(operands.size() == 2u &&
"mismatched number of parameters");
474 odsState.addOperands(operands);
475 odsState.addAttributes(attributes);
476 assert(resultTypes.size() == 1u &&
"mismatched number of return types");
477 odsState.addTypes(resultTypes);
480void DivFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes) {
481 assert(operands.size() == 2u &&
"mismatched number of parameters");
482 odsState.addOperands(operands);
483 odsState.addAttributes(attributes);
485 ::llvm::SmallVector<::mlir::Type, 2> inferredReturnTypes;
487 odsState.location, operands,
488 odsState.attributes.getDictionary(odsState.getContext()),
489 odsState.getRawProperties(),
490 odsState.regions, inferredReturnTypes))) {
491 assert(inferredReturnTypes.size() == 1u &&
"mismatched number of return types");
492 odsState.addTypes(inferredReturnTypes);
494 ::llvm::report_fatal_error(
"Failed to infer result type(s).");
500 unsigned index = 0; (void)index;
503 for (
auto v : valueGroup0) {
504 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops1(*
this, v.getType(),
"operand", index++)))
505 return ::mlir::failure();
509 for (
auto v : valueGroup1) {
510 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops1(*
this, v.getType(),
"operand", index++)))
511 return ::mlir::failure();
515 unsigned index = 0; (void)index;
518 for (
auto v : valueGroup0) {
519 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops2(*
this, v.getType(),
"result", index++)))
520 return ::mlir::failure();
524 return emitOpError(
"failed to verify that result type matches with lhs type");
526 return emitOpError(
"failed to verify that result type matches with rhs type");
527 return ::mlir::success();
534::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) {
535 inferredReturnTypes.resize(1);
536 ::mlir::Builder odsBuilder(context);
538 inferredReturnTypes[0] = odsInferredType0;
539 return ::mlir::success();
542::mlir::ParseResult
DivFeltOp::parse(::mlir::OpAsmParser &parser, ::mlir::OperationState &result) {
543 ::mlir::OpAsmParser::UnresolvedOperand lhsRawOperand{};
544 ::llvm::ArrayRef<::mlir::OpAsmParser::UnresolvedOperand> lhsOperands(&lhsRawOperand, 1); ::llvm::SMLoc lhsOperandsLoc;
545 (void)lhsOperandsLoc;
546 ::mlir::OpAsmParser::UnresolvedOperand rhsRawOperand{};
547 ::llvm::ArrayRef<::mlir::OpAsmParser::UnresolvedOperand> rhsOperands(&rhsRawOperand, 1); ::llvm::SMLoc rhsOperandsLoc;
548 (void)rhsOperandsLoc;
549 ::mlir::Type lhsRawType{};
550 ::llvm::ArrayRef<::mlir::Type> lhsTypes(&lhsRawType, 1);
551 ::mlir::Type rhsRawType{};
552 ::llvm::ArrayRef<::mlir::Type> rhsTypes(&rhsRawType, 1);
554 lhsOperandsLoc = parser.getCurrentLocation();
555 if (parser.parseOperand(lhsRawOperand))
556 return ::mlir::failure();
557 if (parser.parseComma())
558 return ::mlir::failure();
560 rhsOperandsLoc = parser.getCurrentLocation();
561 if (parser.parseOperand(rhsRawOperand))
562 return ::mlir::failure();
565 if (odsResult) return ::mlir::failure();
569 if (odsResult) return ::mlir::failure();
572 auto loc = parser.getCurrentLocation();(void)loc;
573 if (parser.parseOptionalAttrDict(result.attributes))
574 return ::mlir::failure();
577 result.addTypes(odsBuildableType0);
578 if (parser.resolveOperands(lhsOperands, lhsTypes, lhsOperandsLoc, result.operands))
579 return ::mlir::failure();
580 if (parser.resolveOperands(rhsOperands, rhsTypes, rhsOperandsLoc, result.operands))
581 return ::mlir::failure();
582 return ::mlir::success();
593 ::llvm::SmallVector<::llvm::StringRef, 2> elidedAttrs;
594 _odsPrinter.printOptionalAttrDict((*this)->getAttrs(), elidedAttrs);
597void DivFeltOp::getEffects(::llvm::SmallVectorImpl<::mlir::SideEffects::EffectInstance<::mlir::MemoryEffects::Effect>> &effects) {
616 return attr.getValue();
624 if (!tblgen_value)
return emitError(loc,
"'felt.const' op ""requires attribute 'value'");
626 if (tblgen_value && !((::llvm::isa<::llzk::felt::FeltConstAttr>(tblgen_value))))
627 return emitError(loc,
"'felt.const' op ""attribute 'value' failed to satisfy constraint: finite field element");
628 return ::mlir::success();
632 ::mlir::DictionaryAttr dict = ::llvm::dyn_cast<::mlir::DictionaryAttr>(attr);
634 emitError() <<
"expected DictionaryAttr to set properties";
635 return ::mlir::failure();
639 auto &propStorage = prop.
value;
640 auto attr = dict.get(
"value");
642 auto convertedAttr = ::llvm::dyn_cast<std::remove_reference_t<
decltype(propStorage)>>(attr);
644 propStorage = convertedAttr;
646 emitError() <<
"Invalid attribute `value` in property conversion: " << attr;
647 return ::mlir::failure();
651 return ::mlir::success();
655 ::mlir::SmallVector<::mlir::NamedAttribute> attrs;
656 ::mlir::Builder odsBuilder{ctx};
659 const auto &propStorage = prop.
value;
661 attrs.push_back(odsBuilder.getNamedAttr(
"value",
666 return odsBuilder.getDictionaryAttr(attrs);
671 return llvm::hash_combine(
672 llvm::hash_value(prop.
value.getAsOpaquePointer()));
682 if (
name ==
"value") {
683 prop.
value = ::llvm::dyn_cast_or_null<std::remove_reference_t<
decltype(prop.
value)>>(value);
689 if (prop.
value) attrs.append(
"value", prop.
value);
695 if (attr && ::mlir::failed(__mlir_ods_local_attr_constraint_Ops1(attr,
"value", emitError)))
696 return ::mlir::failure();
698 return ::mlir::success();
702 auto &prop = state.getOrAddProperties<
Properties>(); (void)prop;
703 if (::mlir::failed(reader.readAttribute(prop.
value)))
704 return ::mlir::failure();
705 return ::mlir::success();
709 auto &prop = getProperties(); (void)prop;
710 writer.writeAttribute(prop.
value);
715 return attr.getValue();
718void FeltConstantOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Type result, ::llzk::felt::FeltConstAttr value) {
719 odsState.getOrAddProperties<
Properties>().value = value;
720 odsState.addTypes(result);
723void FeltConstantOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::llzk::felt::FeltConstAttr value) {
724 odsState.getOrAddProperties<
Properties>().value = value;
726 ::llvm::SmallVector<::mlir::Type, 2> inferredReturnTypes;
728 odsState.location, odsState.operands,
729 odsState.attributes.getDictionary(odsState.getContext()),
730 odsState.getRawProperties(),
731 odsState.regions, inferredReturnTypes)))
732 odsState.addTypes(inferredReturnTypes);
734 ::mlir::detail::reportFatalInferReturnTypesError(odsState);
738void FeltConstantOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::llzk::felt::FeltConstAttr value) {
739 odsState.getOrAddProperties<
Properties>().value = value;
740 assert(resultTypes.size() == 1u &&
"mismatched number of results");
741 odsState.addTypes(resultTypes);
744void FeltConstantOp::build(::mlir::OpBuilder &, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes) {
745 assert(operands.size() == 0u &&
"mismatched number of parameters");
746 odsState.addOperands(operands);
747 odsState.addAttributes(attributes);
748 assert(resultTypes.size() == 1u &&
"mismatched number of return types");
749 odsState.addTypes(resultTypes);
751 if (!attributes.empty()) {
752 ::mlir::OpaqueProperties properties =
754 std::optional<::mlir::RegisteredOperationName> info =
755 odsState.name.getRegisteredInfo();
756 if (failed(info->setOpPropertiesFromAttribute(odsState.name, properties,
757 odsState.attributes.getDictionary(odsState.getContext()),
nullptr)))
758 ::llvm::report_fatal_error(
"Property conversion failed.");
762void FeltConstantOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes) {
763 assert(operands.size() == 0u &&
"mismatched number of parameters");
764 odsState.addOperands(operands);
765 odsState.addAttributes(attributes);
767 if (!attributes.empty()) {
768 ::mlir::OpaqueProperties properties =
770 std::optional<::mlir::RegisteredOperationName> info =
771 odsState.name.getRegisteredInfo();
772 if (failed(info->setOpPropertiesFromAttribute(odsState.name, properties,
773 odsState.attributes.getDictionary(odsState.getContext()),
nullptr)))
774 ::llvm::report_fatal_error(
"Property conversion failed.");
776 ::llvm::SmallVector<::mlir::Type, 2> inferredReturnTypes;
778 odsState.location, operands,
779 odsState.attributes.getDictionary(odsState.getContext()),
780 odsState.getRawProperties(),
781 odsState.regions, inferredReturnTypes))) {
782 assert(inferredReturnTypes.size() == 1u &&
"mismatched number of return types");
783 odsState.addTypes(inferredReturnTypes);
785 ::llvm::report_fatal_error(
"Failed to infer result type(s).");
790 auto tblgen_value = getProperties().value; (void)tblgen_value;
791 if (!tblgen_value)
return emitOpError(
"requires attribute 'value'");
793 if (::mlir::failed(__mlir_ods_local_attr_constraint_Ops1(*
this, tblgen_value,
"value")))
794 return ::mlir::failure();
796 unsigned index = 0; (void)index;
799 for (
auto v : valueGroup0) {
800 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops2(*
this, v.getType(),
"result", index++)))
801 return ::mlir::failure();
804 return ::mlir::success();
811::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) {
812 inferredReturnTypes.resize(1);
813 ::mlir::Builder odsBuilder(context);
815 inferredReturnTypes[0] = odsInferredType0;
816 return ::mlir::success();
820 ::llzk::felt::FeltConstAttr valueAttr;
822 if (parser.parseCustomAttributeWithFallback(valueAttr, ::mlir::Type{})) {
823 return ::mlir::failure();
827 auto loc = parser.getCurrentLocation();(void)loc;
828 if (parser.parseOptionalAttrDict(result.attributes))
829 return ::mlir::failure();
831 return parser.emitError(loc) <<
"'" << result.name.getStringRef() <<
"' op ";
833 return ::mlir::failure();
836 result.addTypes(odsBuildableType0);
837 return ::mlir::success();
843 ::llvm::SmallVector<::llvm::StringRef, 2> elidedAttrs;
844 elidedAttrs.push_back(
"value");
845 _odsPrinter.printOptionalAttrDict((*this)->getAttrs(), elidedAttrs);
867 return ::mlir::success();
870void FeltNonDetOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Type result) {
871 odsState.addTypes(result);
875 ::llvm::SmallVector<::mlir::Type, 2> inferredReturnTypes;
877 odsState.location, odsState.operands,
878 odsState.attributes.getDictionary(odsState.getContext()),
879 odsState.getRawProperties(),
880 odsState.regions, inferredReturnTypes)))
881 odsState.addTypes(inferredReturnTypes);
883 ::mlir::detail::reportFatalInferReturnTypesError(odsState);
887void FeltNonDetOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes) {
888 assert(resultTypes.size() == 1u &&
"mismatched number of results");
889 odsState.addTypes(resultTypes);
892void FeltNonDetOp::build(::mlir::OpBuilder &, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes) {
893 assert(operands.size() == 0u &&
"mismatched number of parameters");
894 odsState.addOperands(operands);
895 odsState.addAttributes(attributes);
896 assert(resultTypes.size() == 1u &&
"mismatched number of return types");
897 odsState.addTypes(resultTypes);
900void FeltNonDetOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes) {
901 assert(operands.size() == 0u &&
"mismatched number of parameters");
902 odsState.addOperands(operands);
903 odsState.addAttributes(attributes);
905 ::llvm::SmallVector<::mlir::Type, 2> inferredReturnTypes;
907 odsState.location, operands,
908 odsState.attributes.getDictionary(odsState.getContext()),
909 odsState.getRawProperties(),
910 odsState.regions, inferredReturnTypes))) {
911 assert(inferredReturnTypes.size() == 1u &&
"mismatched number of return types");
912 odsState.addTypes(inferredReturnTypes);
914 ::llvm::report_fatal_error(
"Failed to infer result type(s).");
920 unsigned index = 0; (void)index;
923 for (
auto v : valueGroup0) {
924 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops2(*
this, v.getType(),
"result", index++)))
925 return ::mlir::failure();
928 return ::mlir::success();
935::llvm::LogicalResult
FeltNonDetOp::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) {
936 inferredReturnTypes.resize(1);
937 ::mlir::Builder odsBuilder(context);
939 inferredReturnTypes[0] = odsInferredType0;
940 return ::mlir::success();
945 auto loc = parser.getCurrentLocation();(void)loc;
946 if (parser.parseOptionalAttrDict(result.attributes))
947 return ::mlir::failure();
950 result.addTypes(odsBuildableType0);
951 return ::mlir::success();
955 ::llvm::SmallVector<::llvm::StringRef, 2> elidedAttrs;
956 _odsPrinter.printOptionalAttrDict((*this)->getAttrs(), elidedAttrs);
959void FeltNonDetOp::getEffects(::llvm::SmallVectorImpl<::mlir::SideEffects::EffectInstance<::mlir::MemoryEffects::Effect>> &effects) {
978 return ::mlir::success();
981void InvFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Type result, ::mlir::Value operand) {
982 odsState.addOperands(operand);
983 odsState.addTypes(result);
986void InvFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Value operand) {
987 odsState.addOperands(operand);
989 ::llvm::SmallVector<::mlir::Type, 2> inferredReturnTypes;
991 odsState.location, odsState.operands,
992 odsState.attributes.getDictionary(odsState.getContext()),
993 odsState.getRawProperties(),
994 odsState.regions, inferredReturnTypes)))
995 odsState.addTypes(inferredReturnTypes);
997 ::mlir::detail::reportFatalInferReturnTypesError(odsState);
1001void InvFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::Value operand) {
1002 odsState.addOperands(operand);
1003 assert(resultTypes.size() == 1u &&
"mismatched number of results");
1004 odsState.addTypes(resultTypes);
1007void InvFeltOp::build(::mlir::OpBuilder &, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes) {
1008 assert(operands.size() == 1u &&
"mismatched number of parameters");
1009 odsState.addOperands(operands);
1010 odsState.addAttributes(attributes);
1011 assert(resultTypes.size() == 1u &&
"mismatched number of return types");
1012 odsState.addTypes(resultTypes);
1015void InvFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes) {
1016 assert(operands.size() == 1u &&
"mismatched number of parameters");
1017 odsState.addOperands(operands);
1018 odsState.addAttributes(attributes);
1020 ::llvm::SmallVector<::mlir::Type, 2> inferredReturnTypes;
1022 odsState.location, operands,
1023 odsState.attributes.getDictionary(odsState.getContext()),
1024 odsState.getRawProperties(),
1025 odsState.regions, inferredReturnTypes))) {
1026 assert(inferredReturnTypes.size() == 1u &&
"mismatched number of return types");
1027 odsState.addTypes(inferredReturnTypes);
1029 ::llvm::report_fatal_error(
"Failed to infer result type(s).");
1035 unsigned index = 0; (void)index;
1038 for (
auto v : valueGroup0) {
1039 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops1(*
this, v.getType(),
"operand", index++)))
1040 return ::mlir::failure();
1044 unsigned index = 0; (void)index;
1047 for (
auto v : valueGroup0) {
1048 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops2(*
this, v.getType(),
"result", index++)))
1049 return ::mlir::failure();
1053 return emitOpError(
"failed to verify that result type matches with operand type");
1054 return ::mlir::success();
1061::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) {
1062 inferredReturnTypes.resize(1);
1063 ::mlir::Builder odsBuilder(context);
1065 inferredReturnTypes[0] = odsInferredType0;
1066 return ::mlir::success();
1069::mlir::ParseResult
InvFeltOp::parse(::mlir::OpAsmParser &parser, ::mlir::OperationState &result) {
1070 ::mlir::OpAsmParser::UnresolvedOperand operandRawOperand{};
1071 ::llvm::ArrayRef<::mlir::OpAsmParser::UnresolvedOperand> operandOperands(&operandRawOperand, 1); ::llvm::SMLoc operandOperandsLoc;
1072 (void)operandOperandsLoc;
1073 ::mlir::Type operandRawType{};
1074 ::llvm::ArrayRef<::mlir::Type> operandTypes(&operandRawType, 1);
1076 operandOperandsLoc = parser.getCurrentLocation();
1077 if (parser.parseOperand(operandRawOperand))
1078 return ::mlir::failure();
1081 if (odsResult) return ::mlir::failure();
1084 auto loc = parser.getCurrentLocation();(void)loc;
1085 if (parser.parseOptionalAttrDict(result.attributes))
1086 return ::mlir::failure();
1089 result.addTypes(odsBuildableType0);
1090 if (parser.resolveOperands(operandOperands, operandTypes, operandOperandsLoc, result.operands))
1091 return ::mlir::failure();
1092 return ::mlir::success();
1099 ::llvm::SmallVector<::llvm::StringRef, 2> elidedAttrs;
1100 _odsPrinter.printOptionalAttrDict((*this)->getAttrs(), elidedAttrs);
1103void InvFeltOp::getEffects(::llvm::SmallVectorImpl<::mlir::SideEffects::EffectInstance<::mlir::MemoryEffects::Effect>> &effects) {
1122 return ::mlir::success();
1125void ModFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Type result, ::mlir::Value lhs, ::mlir::Value rhs) {
1126 odsState.addOperands(lhs);
1127 odsState.addOperands(rhs);
1128 odsState.addTypes(result);
1131void ModFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Value lhs, ::mlir::Value rhs) {
1132 odsState.addOperands(lhs);
1133 odsState.addOperands(rhs);
1135 ::llvm::SmallVector<::mlir::Type, 2> inferredReturnTypes;
1137 odsState.location, odsState.operands,
1138 odsState.attributes.getDictionary(odsState.getContext()),
1139 odsState.getRawProperties(),
1140 odsState.regions, inferredReturnTypes)))
1141 odsState.addTypes(inferredReturnTypes);
1143 ::mlir::detail::reportFatalInferReturnTypesError(odsState);
1147void ModFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::Value lhs, ::mlir::Value rhs) {
1148 odsState.addOperands(lhs);
1149 odsState.addOperands(rhs);
1150 assert(resultTypes.size() == 1u &&
"mismatched number of results");
1151 odsState.addTypes(resultTypes);
1154void ModFeltOp::build(::mlir::OpBuilder &, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes) {
1155 assert(operands.size() == 2u &&
"mismatched number of parameters");
1156 odsState.addOperands(operands);
1157 odsState.addAttributes(attributes);
1158 assert(resultTypes.size() == 1u &&
"mismatched number of return types");
1159 odsState.addTypes(resultTypes);
1162void ModFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes) {
1163 assert(operands.size() == 2u &&
"mismatched number of parameters");
1164 odsState.addOperands(operands);
1165 odsState.addAttributes(attributes);
1167 ::llvm::SmallVector<::mlir::Type, 2> inferredReturnTypes;
1169 odsState.location, operands,
1170 odsState.attributes.getDictionary(odsState.getContext()),
1171 odsState.getRawProperties(),
1172 odsState.regions, inferredReturnTypes))) {
1173 assert(inferredReturnTypes.size() == 1u &&
"mismatched number of return types");
1174 odsState.addTypes(inferredReturnTypes);
1176 ::llvm::report_fatal_error(
"Failed to infer result type(s).");
1182 unsigned index = 0; (void)index;
1185 for (
auto v : valueGroup0) {
1186 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops1(*
this, v.getType(),
"operand", index++)))
1187 return ::mlir::failure();
1191 for (
auto v : valueGroup1) {
1192 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops1(*
this, v.getType(),
"operand", index++)))
1193 return ::mlir::failure();
1197 unsigned index = 0; (void)index;
1200 for (
auto v : valueGroup0) {
1201 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops2(*
this, v.getType(),
"result", index++)))
1202 return ::mlir::failure();
1206 return emitOpError(
"failed to verify that result type matches with lhs type");
1208 return emitOpError(
"failed to verify that result type matches with rhs type");
1209 return ::mlir::success();
1216::llvm::LogicalResult
ModFeltOp::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) {
1217 inferredReturnTypes.resize(1);
1218 ::mlir::Builder odsBuilder(context);
1220 inferredReturnTypes[0] = odsInferredType0;
1221 return ::mlir::success();
1224::mlir::ParseResult
ModFeltOp::parse(::mlir::OpAsmParser &parser, ::mlir::OperationState &result) {
1225 ::mlir::OpAsmParser::UnresolvedOperand lhsRawOperand{};
1226 ::llvm::ArrayRef<::mlir::OpAsmParser::UnresolvedOperand> lhsOperands(&lhsRawOperand, 1); ::llvm::SMLoc lhsOperandsLoc;
1227 (void)lhsOperandsLoc;
1228 ::mlir::OpAsmParser::UnresolvedOperand rhsRawOperand{};
1229 ::llvm::ArrayRef<::mlir::OpAsmParser::UnresolvedOperand> rhsOperands(&rhsRawOperand, 1); ::llvm::SMLoc rhsOperandsLoc;
1230 (void)rhsOperandsLoc;
1231 ::mlir::Type lhsRawType{};
1232 ::llvm::ArrayRef<::mlir::Type> lhsTypes(&lhsRawType, 1);
1233 ::mlir::Type rhsRawType{};
1234 ::llvm::ArrayRef<::mlir::Type> rhsTypes(&rhsRawType, 1);
1236 lhsOperandsLoc = parser.getCurrentLocation();
1237 if (parser.parseOperand(lhsRawOperand))
1238 return ::mlir::failure();
1239 if (parser.parseComma())
1240 return ::mlir::failure();
1242 rhsOperandsLoc = parser.getCurrentLocation();
1243 if (parser.parseOperand(rhsRawOperand))
1244 return ::mlir::failure();
1247 if (odsResult) return ::mlir::failure();
1251 if (odsResult) return ::mlir::failure();
1254 auto loc = parser.getCurrentLocation();(void)loc;
1255 if (parser.parseOptionalAttrDict(result.attributes))
1256 return ::mlir::failure();
1259 result.addTypes(odsBuildableType0);
1260 if (parser.resolveOperands(lhsOperands, lhsTypes, lhsOperandsLoc, result.operands))
1261 return ::mlir::failure();
1262 if (parser.resolveOperands(rhsOperands, rhsTypes, rhsOperandsLoc, result.operands))
1263 return ::mlir::failure();
1264 return ::mlir::success();
1275 ::llvm::SmallVector<::llvm::StringRef, 2> elidedAttrs;
1276 _odsPrinter.printOptionalAttrDict((*this)->getAttrs(), elidedAttrs);
1279void ModFeltOp::getEffects(::llvm::SmallVectorImpl<::mlir::SideEffects::EffectInstance<::mlir::MemoryEffects::Effect>> &effects) {
1298 return ::mlir::success();
1301void MulFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Type result, ::mlir::Value lhs, ::mlir::Value rhs) {
1302 odsState.addOperands(lhs);
1303 odsState.addOperands(rhs);
1304 odsState.addTypes(result);
1307void MulFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Value lhs, ::mlir::Value rhs) {
1308 odsState.addOperands(lhs);
1309 odsState.addOperands(rhs);
1311 ::llvm::SmallVector<::mlir::Type, 2> inferredReturnTypes;
1313 odsState.location, odsState.operands,
1314 odsState.attributes.getDictionary(odsState.getContext()),
1315 odsState.getRawProperties(),
1316 odsState.regions, inferredReturnTypes)))
1317 odsState.addTypes(inferredReturnTypes);
1319 ::mlir::detail::reportFatalInferReturnTypesError(odsState);
1323void MulFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::Value lhs, ::mlir::Value rhs) {
1324 odsState.addOperands(lhs);
1325 odsState.addOperands(rhs);
1326 assert(resultTypes.size() == 1u &&
"mismatched number of results");
1327 odsState.addTypes(resultTypes);
1330void MulFeltOp::build(::mlir::OpBuilder &, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes) {
1331 assert(operands.size() == 2u &&
"mismatched number of parameters");
1332 odsState.addOperands(operands);
1333 odsState.addAttributes(attributes);
1334 assert(resultTypes.size() == 1u &&
"mismatched number of return types");
1335 odsState.addTypes(resultTypes);
1338void MulFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes) {
1339 assert(operands.size() == 2u &&
"mismatched number of parameters");
1340 odsState.addOperands(operands);
1341 odsState.addAttributes(attributes);
1343 ::llvm::SmallVector<::mlir::Type, 2> inferredReturnTypes;
1345 odsState.location, operands,
1346 odsState.attributes.getDictionary(odsState.getContext()),
1347 odsState.getRawProperties(),
1348 odsState.regions, inferredReturnTypes))) {
1349 assert(inferredReturnTypes.size() == 1u &&
"mismatched number of return types");
1350 odsState.addTypes(inferredReturnTypes);
1352 ::llvm::report_fatal_error(
"Failed to infer result type(s).");
1358 unsigned index = 0; (void)index;
1361 for (
auto v : valueGroup0) {
1362 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops1(*
this, v.getType(),
"operand", index++)))
1363 return ::mlir::failure();
1367 for (
auto v : valueGroup1) {
1368 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops1(*
this, v.getType(),
"operand", index++)))
1369 return ::mlir::failure();
1373 unsigned index = 0; (void)index;
1376 for (
auto v : valueGroup0) {
1377 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops2(*
this, v.getType(),
"result", index++)))
1378 return ::mlir::failure();
1382 return emitOpError(
"failed to verify that result type matches with lhs type");
1384 return emitOpError(
"failed to verify that result type matches with rhs type");
1385 return ::mlir::success();
1392::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) {
1393 inferredReturnTypes.resize(1);
1394 ::mlir::Builder odsBuilder(context);
1396 inferredReturnTypes[0] = odsInferredType0;
1397 return ::mlir::success();
1400::mlir::ParseResult
MulFeltOp::parse(::mlir::OpAsmParser &parser, ::mlir::OperationState &result) {
1401 ::mlir::OpAsmParser::UnresolvedOperand lhsRawOperand{};
1402 ::llvm::ArrayRef<::mlir::OpAsmParser::UnresolvedOperand> lhsOperands(&lhsRawOperand, 1); ::llvm::SMLoc lhsOperandsLoc;
1403 (void)lhsOperandsLoc;
1404 ::mlir::OpAsmParser::UnresolvedOperand rhsRawOperand{};
1405 ::llvm::ArrayRef<::mlir::OpAsmParser::UnresolvedOperand> rhsOperands(&rhsRawOperand, 1); ::llvm::SMLoc rhsOperandsLoc;
1406 (void)rhsOperandsLoc;
1407 ::mlir::Type lhsRawType{};
1408 ::llvm::ArrayRef<::mlir::Type> lhsTypes(&lhsRawType, 1);
1409 ::mlir::Type rhsRawType{};
1410 ::llvm::ArrayRef<::mlir::Type> rhsTypes(&rhsRawType, 1);
1412 lhsOperandsLoc = parser.getCurrentLocation();
1413 if (parser.parseOperand(lhsRawOperand))
1414 return ::mlir::failure();
1415 if (parser.parseComma())
1416 return ::mlir::failure();
1418 rhsOperandsLoc = parser.getCurrentLocation();
1419 if (parser.parseOperand(rhsRawOperand))
1420 return ::mlir::failure();
1423 if (odsResult) return ::mlir::failure();
1427 if (odsResult) return ::mlir::failure();
1430 auto loc = parser.getCurrentLocation();(void)loc;
1431 if (parser.parseOptionalAttrDict(result.attributes))
1432 return ::mlir::failure();
1435 result.addTypes(odsBuildableType0);
1436 if (parser.resolveOperands(lhsOperands, lhsTypes, lhsOperandsLoc, result.operands))
1437 return ::mlir::failure();
1438 if (parser.resolveOperands(rhsOperands, rhsTypes, rhsOperandsLoc, result.operands))
1439 return ::mlir::failure();
1440 return ::mlir::success();
1451 ::llvm::SmallVector<::llvm::StringRef, 2> elidedAttrs;
1452 _odsPrinter.printOptionalAttrDict((*this)->getAttrs(), elidedAttrs);
1455void MulFeltOp::getEffects(::llvm::SmallVectorImpl<::mlir::SideEffects::EffectInstance<::mlir::MemoryEffects::Effect>> &effects) {
1474 return ::mlir::success();
1477void NegFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Type result, ::mlir::Value operand) {
1478 odsState.addOperands(operand);
1479 odsState.addTypes(result);
1482void NegFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Value operand) {
1483 odsState.addOperands(operand);
1485 ::llvm::SmallVector<::mlir::Type, 2> inferredReturnTypes;
1487 odsState.location, odsState.operands,
1488 odsState.attributes.getDictionary(odsState.getContext()),
1489 odsState.getRawProperties(),
1490 odsState.regions, inferredReturnTypes)))
1491 odsState.addTypes(inferredReturnTypes);
1493 ::mlir::detail::reportFatalInferReturnTypesError(odsState);
1497void NegFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::Value operand) {
1498 odsState.addOperands(operand);
1499 assert(resultTypes.size() == 1u &&
"mismatched number of results");
1500 odsState.addTypes(resultTypes);
1503void NegFeltOp::build(::mlir::OpBuilder &, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes) {
1504 assert(operands.size() == 1u &&
"mismatched number of parameters");
1505 odsState.addOperands(operands);
1506 odsState.addAttributes(attributes);
1507 assert(resultTypes.size() == 1u &&
"mismatched number of return types");
1508 odsState.addTypes(resultTypes);
1511void NegFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes) {
1512 assert(operands.size() == 1u &&
"mismatched number of parameters");
1513 odsState.addOperands(operands);
1514 odsState.addAttributes(attributes);
1516 ::llvm::SmallVector<::mlir::Type, 2> inferredReturnTypes;
1518 odsState.location, operands,
1519 odsState.attributes.getDictionary(odsState.getContext()),
1520 odsState.getRawProperties(),
1521 odsState.regions, inferredReturnTypes))) {
1522 assert(inferredReturnTypes.size() == 1u &&
"mismatched number of return types");
1523 odsState.addTypes(inferredReturnTypes);
1525 ::llvm::report_fatal_error(
"Failed to infer result type(s).");
1531 unsigned index = 0; (void)index;
1534 for (
auto v : valueGroup0) {
1535 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops1(*
this, v.getType(),
"operand", index++)))
1536 return ::mlir::failure();
1540 unsigned index = 0; (void)index;
1543 for (
auto v : valueGroup0) {
1544 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops2(*
this, v.getType(),
"result", index++)))
1545 return ::mlir::failure();
1549 return emitOpError(
"failed to verify that result type matches with operand type");
1550 return ::mlir::success();
1557::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) {
1558 inferredReturnTypes.resize(1);
1559 ::mlir::Builder odsBuilder(context);
1561 inferredReturnTypes[0] = odsInferredType0;
1562 return ::mlir::success();
1565::mlir::ParseResult
NegFeltOp::parse(::mlir::OpAsmParser &parser, ::mlir::OperationState &result) {
1566 ::mlir::OpAsmParser::UnresolvedOperand operandRawOperand{};
1567 ::llvm::ArrayRef<::mlir::OpAsmParser::UnresolvedOperand> operandOperands(&operandRawOperand, 1); ::llvm::SMLoc operandOperandsLoc;
1568 (void)operandOperandsLoc;
1569 ::mlir::Type operandRawType{};
1570 ::llvm::ArrayRef<::mlir::Type> operandTypes(&operandRawType, 1);
1572 operandOperandsLoc = parser.getCurrentLocation();
1573 if (parser.parseOperand(operandRawOperand))
1574 return ::mlir::failure();
1577 if (odsResult) return ::mlir::failure();
1580 auto loc = parser.getCurrentLocation();(void)loc;
1581 if (parser.parseOptionalAttrDict(result.attributes))
1582 return ::mlir::failure();
1585 result.addTypes(odsBuildableType0);
1586 if (parser.resolveOperands(operandOperands, operandTypes, operandOperandsLoc, result.operands))
1587 return ::mlir::failure();
1588 return ::mlir::success();
1595 ::llvm::SmallVector<::llvm::StringRef, 2> elidedAttrs;
1596 _odsPrinter.printOptionalAttrDict((*this)->getAttrs(), elidedAttrs);
1599void NegFeltOp::getEffects(::llvm::SmallVectorImpl<::mlir::SideEffects::EffectInstance<::mlir::MemoryEffects::Effect>> &effects) {
1618 return ::mlir::success();
1621void NotFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Type result, ::mlir::Value operand) {
1622 odsState.addOperands(operand);
1623 odsState.addTypes(result);
1626void NotFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Value operand) {
1627 odsState.addOperands(operand);
1629 ::llvm::SmallVector<::mlir::Type, 2> inferredReturnTypes;
1631 odsState.location, odsState.operands,
1632 odsState.attributes.getDictionary(odsState.getContext()),
1633 odsState.getRawProperties(),
1634 odsState.regions, inferredReturnTypes)))
1635 odsState.addTypes(inferredReturnTypes);
1637 ::mlir::detail::reportFatalInferReturnTypesError(odsState);
1641void NotFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::Value operand) {
1642 odsState.addOperands(operand);
1643 assert(resultTypes.size() == 1u &&
"mismatched number of results");
1644 odsState.addTypes(resultTypes);
1647void NotFeltOp::build(::mlir::OpBuilder &, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes) {
1648 assert(operands.size() == 1u &&
"mismatched number of parameters");
1649 odsState.addOperands(operands);
1650 odsState.addAttributes(attributes);
1651 assert(resultTypes.size() == 1u &&
"mismatched number of return types");
1652 odsState.addTypes(resultTypes);
1655void NotFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes) {
1656 assert(operands.size() == 1u &&
"mismatched number of parameters");
1657 odsState.addOperands(operands);
1658 odsState.addAttributes(attributes);
1660 ::llvm::SmallVector<::mlir::Type, 2> inferredReturnTypes;
1662 odsState.location, operands,
1663 odsState.attributes.getDictionary(odsState.getContext()),
1664 odsState.getRawProperties(),
1665 odsState.regions, inferredReturnTypes))) {
1666 assert(inferredReturnTypes.size() == 1u &&
"mismatched number of return types");
1667 odsState.addTypes(inferredReturnTypes);
1669 ::llvm::report_fatal_error(
"Failed to infer result type(s).");
1675 unsigned index = 0; (void)index;
1678 for (
auto v : valueGroup0) {
1679 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops1(*
this, v.getType(),
"operand", index++)))
1680 return ::mlir::failure();
1684 unsigned index = 0; (void)index;
1687 for (
auto v : valueGroup0) {
1688 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops2(*
this, v.getType(),
"result", index++)))
1689 return ::mlir::failure();
1693 return emitOpError(
"failed to verify that result type matches with operand type");
1694 return ::mlir::success();
1701::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) {
1702 inferredReturnTypes.resize(1);
1703 ::mlir::Builder odsBuilder(context);
1705 inferredReturnTypes[0] = odsInferredType0;
1706 return ::mlir::success();
1709::mlir::ParseResult
NotFeltOp::parse(::mlir::OpAsmParser &parser, ::mlir::OperationState &result) {
1710 ::mlir::OpAsmParser::UnresolvedOperand operandRawOperand{};
1711 ::llvm::ArrayRef<::mlir::OpAsmParser::UnresolvedOperand> operandOperands(&operandRawOperand, 1); ::llvm::SMLoc operandOperandsLoc;
1712 (void)operandOperandsLoc;
1713 ::mlir::Type operandRawType{};
1714 ::llvm::ArrayRef<::mlir::Type> operandTypes(&operandRawType, 1);
1716 operandOperandsLoc = parser.getCurrentLocation();
1717 if (parser.parseOperand(operandRawOperand))
1718 return ::mlir::failure();
1721 if (odsResult) return ::mlir::failure();
1724 auto loc = parser.getCurrentLocation();(void)loc;
1725 if (parser.parseOptionalAttrDict(result.attributes))
1726 return ::mlir::failure();
1729 result.addTypes(odsBuildableType0);
1730 if (parser.resolveOperands(operandOperands, operandTypes, operandOperandsLoc, result.operands))
1731 return ::mlir::failure();
1732 return ::mlir::success();
1739 ::llvm::SmallVector<::llvm::StringRef, 2> elidedAttrs;
1740 _odsPrinter.printOptionalAttrDict((*this)->getAttrs(), elidedAttrs);
1743void NotFeltOp::getEffects(::llvm::SmallVectorImpl<::mlir::SideEffects::EffectInstance<::mlir::MemoryEffects::Effect>> &effects) {
1762 return ::mlir::success();
1765void OrFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Type result, ::mlir::Value lhs, ::mlir::Value rhs) {
1766 odsState.addOperands(lhs);
1767 odsState.addOperands(rhs);
1768 odsState.addTypes(result);
1771void OrFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Value lhs, ::mlir::Value rhs) {
1772 odsState.addOperands(lhs);
1773 odsState.addOperands(rhs);
1775 ::llvm::SmallVector<::mlir::Type, 2> inferredReturnTypes;
1777 odsState.location, odsState.operands,
1778 odsState.attributes.getDictionary(odsState.getContext()),
1779 odsState.getRawProperties(),
1780 odsState.regions, inferredReturnTypes)))
1781 odsState.addTypes(inferredReturnTypes);
1783 ::mlir::detail::reportFatalInferReturnTypesError(odsState);
1787void OrFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::Value lhs, ::mlir::Value rhs) {
1788 odsState.addOperands(lhs);
1789 odsState.addOperands(rhs);
1790 assert(resultTypes.size() == 1u &&
"mismatched number of results");
1791 odsState.addTypes(resultTypes);
1794void OrFeltOp::build(::mlir::OpBuilder &, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes) {
1795 assert(operands.size() == 2u &&
"mismatched number of parameters");
1796 odsState.addOperands(operands);
1797 odsState.addAttributes(attributes);
1798 assert(resultTypes.size() == 1u &&
"mismatched number of return types");
1799 odsState.addTypes(resultTypes);
1802void OrFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes) {
1803 assert(operands.size() == 2u &&
"mismatched number of parameters");
1804 odsState.addOperands(operands);
1805 odsState.addAttributes(attributes);
1807 ::llvm::SmallVector<::mlir::Type, 2> inferredReturnTypes;
1809 odsState.location, operands,
1810 odsState.attributes.getDictionary(odsState.getContext()),
1811 odsState.getRawProperties(),
1812 odsState.regions, inferredReturnTypes))) {
1813 assert(inferredReturnTypes.size() == 1u &&
"mismatched number of return types");
1814 odsState.addTypes(inferredReturnTypes);
1816 ::llvm::report_fatal_error(
"Failed to infer result type(s).");
1822 unsigned index = 0; (void)index;
1825 for (
auto v : valueGroup0) {
1826 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops1(*
this, v.getType(),
"operand", index++)))
1827 return ::mlir::failure();
1831 for (
auto v : valueGroup1) {
1832 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops1(*
this, v.getType(),
"operand", index++)))
1833 return ::mlir::failure();
1837 unsigned index = 0; (void)index;
1840 for (
auto v : valueGroup0) {
1841 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops2(*
this, v.getType(),
"result", index++)))
1842 return ::mlir::failure();
1846 return emitOpError(
"failed to verify that result type matches with lhs type");
1848 return emitOpError(
"failed to verify that result type matches with rhs type");
1849 return ::mlir::success();
1856::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) {
1857 inferredReturnTypes.resize(1);
1858 ::mlir::Builder odsBuilder(context);
1860 inferredReturnTypes[0] = odsInferredType0;
1861 return ::mlir::success();
1864::mlir::ParseResult
OrFeltOp::parse(::mlir::OpAsmParser &parser, ::mlir::OperationState &result) {
1865 ::mlir::OpAsmParser::UnresolvedOperand lhsRawOperand{};
1866 ::llvm::ArrayRef<::mlir::OpAsmParser::UnresolvedOperand> lhsOperands(&lhsRawOperand, 1); ::llvm::SMLoc lhsOperandsLoc;
1867 (void)lhsOperandsLoc;
1868 ::mlir::OpAsmParser::UnresolvedOperand rhsRawOperand{};
1869 ::llvm::ArrayRef<::mlir::OpAsmParser::UnresolvedOperand> rhsOperands(&rhsRawOperand, 1); ::llvm::SMLoc rhsOperandsLoc;
1870 (void)rhsOperandsLoc;
1871 ::mlir::Type lhsRawType{};
1872 ::llvm::ArrayRef<::mlir::Type> lhsTypes(&lhsRawType, 1);
1873 ::mlir::Type rhsRawType{};
1874 ::llvm::ArrayRef<::mlir::Type> rhsTypes(&rhsRawType, 1);
1876 lhsOperandsLoc = parser.getCurrentLocation();
1877 if (parser.parseOperand(lhsRawOperand))
1878 return ::mlir::failure();
1879 if (parser.parseComma())
1880 return ::mlir::failure();
1882 rhsOperandsLoc = parser.getCurrentLocation();
1883 if (parser.parseOperand(rhsRawOperand))
1884 return ::mlir::failure();
1887 if (odsResult) return ::mlir::failure();
1891 if (odsResult) return ::mlir::failure();
1894 auto loc = parser.getCurrentLocation();(void)loc;
1895 if (parser.parseOptionalAttrDict(result.attributes))
1896 return ::mlir::failure();
1899 result.addTypes(odsBuildableType0);
1900 if (parser.resolveOperands(lhsOperands, lhsTypes, lhsOperandsLoc, result.operands))
1901 return ::mlir::failure();
1902 if (parser.resolveOperands(rhsOperands, rhsTypes, rhsOperandsLoc, result.operands))
1903 return ::mlir::failure();
1904 return ::mlir::success();
1915 ::llvm::SmallVector<::llvm::StringRef, 2> elidedAttrs;
1916 _odsPrinter.printOptionalAttrDict((*this)->getAttrs(), elidedAttrs);
1919void OrFeltOp::getEffects(::llvm::SmallVectorImpl<::mlir::SideEffects::EffectInstance<::mlir::MemoryEffects::Effect>> &effects) {
1938 return ::mlir::success();
1941void ShlFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Type result, ::mlir::Value lhs, ::mlir::Value rhs) {
1942 odsState.addOperands(lhs);
1943 odsState.addOperands(rhs);
1944 odsState.addTypes(result);
1947void ShlFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Value lhs, ::mlir::Value rhs) {
1948 odsState.addOperands(lhs);
1949 odsState.addOperands(rhs);
1951 ::llvm::SmallVector<::mlir::Type, 2> inferredReturnTypes;
1953 odsState.location, odsState.operands,
1954 odsState.attributes.getDictionary(odsState.getContext()),
1955 odsState.getRawProperties(),
1956 odsState.regions, inferredReturnTypes)))
1957 odsState.addTypes(inferredReturnTypes);
1959 ::mlir::detail::reportFatalInferReturnTypesError(odsState);
1963void ShlFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::Value lhs, ::mlir::Value rhs) {
1964 odsState.addOperands(lhs);
1965 odsState.addOperands(rhs);
1966 assert(resultTypes.size() == 1u &&
"mismatched number of results");
1967 odsState.addTypes(resultTypes);
1970void ShlFeltOp::build(::mlir::OpBuilder &, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes) {
1971 assert(operands.size() == 2u &&
"mismatched number of parameters");
1972 odsState.addOperands(operands);
1973 odsState.addAttributes(attributes);
1974 assert(resultTypes.size() == 1u &&
"mismatched number of return types");
1975 odsState.addTypes(resultTypes);
1978void ShlFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes) {
1979 assert(operands.size() == 2u &&
"mismatched number of parameters");
1980 odsState.addOperands(operands);
1981 odsState.addAttributes(attributes);
1983 ::llvm::SmallVector<::mlir::Type, 2> inferredReturnTypes;
1985 odsState.location, operands,
1986 odsState.attributes.getDictionary(odsState.getContext()),
1987 odsState.getRawProperties(),
1988 odsState.regions, inferredReturnTypes))) {
1989 assert(inferredReturnTypes.size() == 1u &&
"mismatched number of return types");
1990 odsState.addTypes(inferredReturnTypes);
1992 ::llvm::report_fatal_error(
"Failed to infer result type(s).");
1998 unsigned index = 0; (void)index;
2001 for (
auto v : valueGroup0) {
2002 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops1(*
this, v.getType(),
"operand", index++)))
2003 return ::mlir::failure();
2007 for (
auto v : valueGroup1) {
2008 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops1(*
this, v.getType(),
"operand", index++)))
2009 return ::mlir::failure();
2013 unsigned index = 0; (void)index;
2016 for (
auto v : valueGroup0) {
2017 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops2(*
this, v.getType(),
"result", index++)))
2018 return ::mlir::failure();
2022 return emitOpError(
"failed to verify that result type matches with lhs type");
2024 return emitOpError(
"failed to verify that result type matches with rhs type");
2025 return ::mlir::success();
2032::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) {
2033 inferredReturnTypes.resize(1);
2034 ::mlir::Builder odsBuilder(context);
2036 inferredReturnTypes[0] = odsInferredType0;
2037 return ::mlir::success();
2040::mlir::ParseResult
ShlFeltOp::parse(::mlir::OpAsmParser &parser, ::mlir::OperationState &result) {
2041 ::mlir::OpAsmParser::UnresolvedOperand lhsRawOperand{};
2042 ::llvm::ArrayRef<::mlir::OpAsmParser::UnresolvedOperand> lhsOperands(&lhsRawOperand, 1); ::llvm::SMLoc lhsOperandsLoc;
2043 (void)lhsOperandsLoc;
2044 ::mlir::OpAsmParser::UnresolvedOperand rhsRawOperand{};
2045 ::llvm::ArrayRef<::mlir::OpAsmParser::UnresolvedOperand> rhsOperands(&rhsRawOperand, 1); ::llvm::SMLoc rhsOperandsLoc;
2046 (void)rhsOperandsLoc;
2047 ::mlir::Type lhsRawType{};
2048 ::llvm::ArrayRef<::mlir::Type> lhsTypes(&lhsRawType, 1);
2049 ::mlir::Type rhsRawType{};
2050 ::llvm::ArrayRef<::mlir::Type> rhsTypes(&rhsRawType, 1);
2052 lhsOperandsLoc = parser.getCurrentLocation();
2053 if (parser.parseOperand(lhsRawOperand))
2054 return ::mlir::failure();
2055 if (parser.parseComma())
2056 return ::mlir::failure();
2058 rhsOperandsLoc = parser.getCurrentLocation();
2059 if (parser.parseOperand(rhsRawOperand))
2060 return ::mlir::failure();
2063 if (odsResult) return ::mlir::failure();
2067 if (odsResult) return ::mlir::failure();
2070 auto loc = parser.getCurrentLocation();(void)loc;
2071 if (parser.parseOptionalAttrDict(result.attributes))
2072 return ::mlir::failure();
2075 result.addTypes(odsBuildableType0);
2076 if (parser.resolveOperands(lhsOperands, lhsTypes, lhsOperandsLoc, result.operands))
2077 return ::mlir::failure();
2078 if (parser.resolveOperands(rhsOperands, rhsTypes, rhsOperandsLoc, result.operands))
2079 return ::mlir::failure();
2080 return ::mlir::success();
2091 ::llvm::SmallVector<::llvm::StringRef, 2> elidedAttrs;
2092 _odsPrinter.printOptionalAttrDict((*this)->getAttrs(), elidedAttrs);
2095void ShlFeltOp::getEffects(::llvm::SmallVectorImpl<::mlir::SideEffects::EffectInstance<::mlir::MemoryEffects::Effect>> &effects) {
2114 return ::mlir::success();
2117void ShrFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Type result, ::mlir::Value lhs, ::mlir::Value rhs) {
2118 odsState.addOperands(lhs);
2119 odsState.addOperands(rhs);
2120 odsState.addTypes(result);
2123void ShrFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Value lhs, ::mlir::Value rhs) {
2124 odsState.addOperands(lhs);
2125 odsState.addOperands(rhs);
2127 ::llvm::SmallVector<::mlir::Type, 2> inferredReturnTypes;
2129 odsState.location, odsState.operands,
2130 odsState.attributes.getDictionary(odsState.getContext()),
2131 odsState.getRawProperties(),
2132 odsState.regions, inferredReturnTypes)))
2133 odsState.addTypes(inferredReturnTypes);
2135 ::mlir::detail::reportFatalInferReturnTypesError(odsState);
2139void ShrFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::Value lhs, ::mlir::Value rhs) {
2140 odsState.addOperands(lhs);
2141 odsState.addOperands(rhs);
2142 assert(resultTypes.size() == 1u &&
"mismatched number of results");
2143 odsState.addTypes(resultTypes);
2146void ShrFeltOp::build(::mlir::OpBuilder &, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes) {
2147 assert(operands.size() == 2u &&
"mismatched number of parameters");
2148 odsState.addOperands(operands);
2149 odsState.addAttributes(attributes);
2150 assert(resultTypes.size() == 1u &&
"mismatched number of return types");
2151 odsState.addTypes(resultTypes);
2154void ShrFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes) {
2155 assert(operands.size() == 2u &&
"mismatched number of parameters");
2156 odsState.addOperands(operands);
2157 odsState.addAttributes(attributes);
2159 ::llvm::SmallVector<::mlir::Type, 2> inferredReturnTypes;
2161 odsState.location, operands,
2162 odsState.attributes.getDictionary(odsState.getContext()),
2163 odsState.getRawProperties(),
2164 odsState.regions, inferredReturnTypes))) {
2165 assert(inferredReturnTypes.size() == 1u &&
"mismatched number of return types");
2166 odsState.addTypes(inferredReturnTypes);
2168 ::llvm::report_fatal_error(
"Failed to infer result type(s).");
2174 unsigned index = 0; (void)index;
2177 for (
auto v : valueGroup0) {
2178 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops1(*
this, v.getType(),
"operand", index++)))
2179 return ::mlir::failure();
2183 for (
auto v : valueGroup1) {
2184 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops1(*
this, v.getType(),
"operand", index++)))
2185 return ::mlir::failure();
2189 unsigned index = 0; (void)index;
2192 for (
auto v : valueGroup0) {
2193 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops2(*
this, v.getType(),
"result", index++)))
2194 return ::mlir::failure();
2198 return emitOpError(
"failed to verify that result type matches with lhs type");
2200 return emitOpError(
"failed to verify that result type matches with rhs type");
2201 return ::mlir::success();
2208::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) {
2209 inferredReturnTypes.resize(1);
2210 ::mlir::Builder odsBuilder(context);
2212 inferredReturnTypes[0] = odsInferredType0;
2213 return ::mlir::success();
2216::mlir::ParseResult
ShrFeltOp::parse(::mlir::OpAsmParser &parser, ::mlir::OperationState &result) {
2217 ::mlir::OpAsmParser::UnresolvedOperand lhsRawOperand{};
2218 ::llvm::ArrayRef<::mlir::OpAsmParser::UnresolvedOperand> lhsOperands(&lhsRawOperand, 1); ::llvm::SMLoc lhsOperandsLoc;
2219 (void)lhsOperandsLoc;
2220 ::mlir::OpAsmParser::UnresolvedOperand rhsRawOperand{};
2221 ::llvm::ArrayRef<::mlir::OpAsmParser::UnresolvedOperand> rhsOperands(&rhsRawOperand, 1); ::llvm::SMLoc rhsOperandsLoc;
2222 (void)rhsOperandsLoc;
2223 ::mlir::Type lhsRawType{};
2224 ::llvm::ArrayRef<::mlir::Type> lhsTypes(&lhsRawType, 1);
2225 ::mlir::Type rhsRawType{};
2226 ::llvm::ArrayRef<::mlir::Type> rhsTypes(&rhsRawType, 1);
2228 lhsOperandsLoc = parser.getCurrentLocation();
2229 if (parser.parseOperand(lhsRawOperand))
2230 return ::mlir::failure();
2231 if (parser.parseComma())
2232 return ::mlir::failure();
2234 rhsOperandsLoc = parser.getCurrentLocation();
2235 if (parser.parseOperand(rhsRawOperand))
2236 return ::mlir::failure();
2239 if (odsResult) return ::mlir::failure();
2243 if (odsResult) return ::mlir::failure();
2246 auto loc = parser.getCurrentLocation();(void)loc;
2247 if (parser.parseOptionalAttrDict(result.attributes))
2248 return ::mlir::failure();
2251 result.addTypes(odsBuildableType0);
2252 if (parser.resolveOperands(lhsOperands, lhsTypes, lhsOperandsLoc, result.operands))
2253 return ::mlir::failure();
2254 if (parser.resolveOperands(rhsOperands, rhsTypes, rhsOperandsLoc, result.operands))
2255 return ::mlir::failure();
2256 return ::mlir::success();
2267 ::llvm::SmallVector<::llvm::StringRef, 2> elidedAttrs;
2268 _odsPrinter.printOptionalAttrDict((*this)->getAttrs(), elidedAttrs);
2271void ShrFeltOp::getEffects(::llvm::SmallVectorImpl<::mlir::SideEffects::EffectInstance<::mlir::MemoryEffects::Effect>> &effects) {
2290 return ::mlir::success();
2293void SubFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Type result, ::mlir::Value lhs, ::mlir::Value rhs) {
2294 odsState.addOperands(lhs);
2295 odsState.addOperands(rhs);
2296 odsState.addTypes(result);
2299void SubFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Value lhs, ::mlir::Value rhs) {
2300 odsState.addOperands(lhs);
2301 odsState.addOperands(rhs);
2303 ::llvm::SmallVector<::mlir::Type, 2> inferredReturnTypes;
2305 odsState.location, odsState.operands,
2306 odsState.attributes.getDictionary(odsState.getContext()),
2307 odsState.getRawProperties(),
2308 odsState.regions, inferredReturnTypes)))
2309 odsState.addTypes(inferredReturnTypes);
2311 ::mlir::detail::reportFatalInferReturnTypesError(odsState);
2315void SubFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::Value lhs, ::mlir::Value rhs) {
2316 odsState.addOperands(lhs);
2317 odsState.addOperands(rhs);
2318 assert(resultTypes.size() == 1u &&
"mismatched number of results");
2319 odsState.addTypes(resultTypes);
2322void SubFeltOp::build(::mlir::OpBuilder &, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes) {
2323 assert(operands.size() == 2u &&
"mismatched number of parameters");
2324 odsState.addOperands(operands);
2325 odsState.addAttributes(attributes);
2326 assert(resultTypes.size() == 1u &&
"mismatched number of return types");
2327 odsState.addTypes(resultTypes);
2330void SubFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes) {
2331 assert(operands.size() == 2u &&
"mismatched number of parameters");
2332 odsState.addOperands(operands);
2333 odsState.addAttributes(attributes);
2335 ::llvm::SmallVector<::mlir::Type, 2> inferredReturnTypes;
2337 odsState.location, operands,
2338 odsState.attributes.getDictionary(odsState.getContext()),
2339 odsState.getRawProperties(),
2340 odsState.regions, inferredReturnTypes))) {
2341 assert(inferredReturnTypes.size() == 1u &&
"mismatched number of return types");
2342 odsState.addTypes(inferredReturnTypes);
2344 ::llvm::report_fatal_error(
"Failed to infer result type(s).");
2350 unsigned index = 0; (void)index;
2353 for (
auto v : valueGroup0) {
2354 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops1(*
this, v.getType(),
"operand", index++)))
2355 return ::mlir::failure();
2359 for (
auto v : valueGroup1) {
2360 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops1(*
this, v.getType(),
"operand", index++)))
2361 return ::mlir::failure();
2365 unsigned index = 0; (void)index;
2368 for (
auto v : valueGroup0) {
2369 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops2(*
this, v.getType(),
"result", index++)))
2370 return ::mlir::failure();
2374 return emitOpError(
"failed to verify that result type matches with lhs type");
2376 return emitOpError(
"failed to verify that result type matches with rhs type");
2377 return ::mlir::success();
2384::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) {
2385 inferredReturnTypes.resize(1);
2386 ::mlir::Builder odsBuilder(context);
2388 inferredReturnTypes[0] = odsInferredType0;
2389 return ::mlir::success();
2392::mlir::ParseResult
SubFeltOp::parse(::mlir::OpAsmParser &parser, ::mlir::OperationState &result) {
2393 ::mlir::OpAsmParser::UnresolvedOperand lhsRawOperand{};
2394 ::llvm::ArrayRef<::mlir::OpAsmParser::UnresolvedOperand> lhsOperands(&lhsRawOperand, 1); ::llvm::SMLoc lhsOperandsLoc;
2395 (void)lhsOperandsLoc;
2396 ::mlir::OpAsmParser::UnresolvedOperand rhsRawOperand{};
2397 ::llvm::ArrayRef<::mlir::OpAsmParser::UnresolvedOperand> rhsOperands(&rhsRawOperand, 1); ::llvm::SMLoc rhsOperandsLoc;
2398 (void)rhsOperandsLoc;
2399 ::mlir::Type lhsRawType{};
2400 ::llvm::ArrayRef<::mlir::Type> lhsTypes(&lhsRawType, 1);
2401 ::mlir::Type rhsRawType{};
2402 ::llvm::ArrayRef<::mlir::Type> rhsTypes(&rhsRawType, 1);
2404 lhsOperandsLoc = parser.getCurrentLocation();
2405 if (parser.parseOperand(lhsRawOperand))
2406 return ::mlir::failure();
2407 if (parser.parseComma())
2408 return ::mlir::failure();
2410 rhsOperandsLoc = parser.getCurrentLocation();
2411 if (parser.parseOperand(rhsRawOperand))
2412 return ::mlir::failure();
2415 if (odsResult) return ::mlir::failure();
2419 if (odsResult) return ::mlir::failure();
2422 auto loc = parser.getCurrentLocation();(void)loc;
2423 if (parser.parseOptionalAttrDict(result.attributes))
2424 return ::mlir::failure();
2427 result.addTypes(odsBuildableType0);
2428 if (parser.resolveOperands(lhsOperands, lhsTypes, lhsOperandsLoc, result.operands))
2429 return ::mlir::failure();
2430 if (parser.resolveOperands(rhsOperands, rhsTypes, rhsOperandsLoc, result.operands))
2431 return ::mlir::failure();
2432 return ::mlir::success();
2443 ::llvm::SmallVector<::llvm::StringRef, 2> elidedAttrs;
2444 _odsPrinter.printOptionalAttrDict((*this)->getAttrs(), elidedAttrs);
2447void SubFeltOp::getEffects(::llvm::SmallVectorImpl<::mlir::SideEffects::EffectInstance<::mlir::MemoryEffects::Effect>> &effects) {
2466 return ::mlir::success();
2469void XorFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Type result, ::mlir::Value lhs, ::mlir::Value rhs) {
2470 odsState.addOperands(lhs);
2471 odsState.addOperands(rhs);
2472 odsState.addTypes(result);
2475void XorFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Value lhs, ::mlir::Value rhs) {
2476 odsState.addOperands(lhs);
2477 odsState.addOperands(rhs);
2479 ::llvm::SmallVector<::mlir::Type, 2> inferredReturnTypes;
2481 odsState.location, odsState.operands,
2482 odsState.attributes.getDictionary(odsState.getContext()),
2483 odsState.getRawProperties(),
2484 odsState.regions, inferredReturnTypes)))
2485 odsState.addTypes(inferredReturnTypes);
2487 ::mlir::detail::reportFatalInferReturnTypesError(odsState);
2491void XorFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::Value lhs, ::mlir::Value rhs) {
2492 odsState.addOperands(lhs);
2493 odsState.addOperands(rhs);
2494 assert(resultTypes.size() == 1u &&
"mismatched number of results");
2495 odsState.addTypes(resultTypes);
2498void XorFeltOp::build(::mlir::OpBuilder &, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes) {
2499 assert(operands.size() == 2u &&
"mismatched number of parameters");
2500 odsState.addOperands(operands);
2501 odsState.addAttributes(attributes);
2502 assert(resultTypes.size() == 1u &&
"mismatched number of return types");
2503 odsState.addTypes(resultTypes);
2506void XorFeltOp::build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes) {
2507 assert(operands.size() == 2u &&
"mismatched number of parameters");
2508 odsState.addOperands(operands);
2509 odsState.addAttributes(attributes);
2511 ::llvm::SmallVector<::mlir::Type, 2> inferredReturnTypes;
2513 odsState.location, operands,
2514 odsState.attributes.getDictionary(odsState.getContext()),
2515 odsState.getRawProperties(),
2516 odsState.regions, inferredReturnTypes))) {
2517 assert(inferredReturnTypes.size() == 1u &&
"mismatched number of return types");
2518 odsState.addTypes(inferredReturnTypes);
2520 ::llvm::report_fatal_error(
"Failed to infer result type(s).");
2526 unsigned index = 0; (void)index;
2529 for (
auto v : valueGroup0) {
2530 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops1(*
this, v.getType(),
"operand", index++)))
2531 return ::mlir::failure();
2535 for (
auto v : valueGroup1) {
2536 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops1(*
this, v.getType(),
"operand", index++)))
2537 return ::mlir::failure();
2541 unsigned index = 0; (void)index;
2544 for (
auto v : valueGroup0) {
2545 if (::mlir::failed(__mlir_ods_local_type_constraint_Ops2(*
this, v.getType(),
"result", index++)))
2546 return ::mlir::failure();
2550 return emitOpError(
"failed to verify that result type matches with lhs type");
2552 return emitOpError(
"failed to verify that result type matches with rhs type");
2553 return ::mlir::success();
2560::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) {
2561 inferredReturnTypes.resize(1);
2562 ::mlir::Builder odsBuilder(context);
2564 inferredReturnTypes[0] = odsInferredType0;
2565 return ::mlir::success();
2568::mlir::ParseResult
XorFeltOp::parse(::mlir::OpAsmParser &parser, ::mlir::OperationState &result) {
2569 ::mlir::OpAsmParser::UnresolvedOperand lhsRawOperand{};
2570 ::llvm::ArrayRef<::mlir::OpAsmParser::UnresolvedOperand> lhsOperands(&lhsRawOperand, 1); ::llvm::SMLoc lhsOperandsLoc;
2571 (void)lhsOperandsLoc;
2572 ::mlir::OpAsmParser::UnresolvedOperand rhsRawOperand{};
2573 ::llvm::ArrayRef<::mlir::OpAsmParser::UnresolvedOperand> rhsOperands(&rhsRawOperand, 1); ::llvm::SMLoc rhsOperandsLoc;
2574 (void)rhsOperandsLoc;
2575 ::mlir::Type lhsRawType{};
2576 ::llvm::ArrayRef<::mlir::Type> lhsTypes(&lhsRawType, 1);
2577 ::mlir::Type rhsRawType{};
2578 ::llvm::ArrayRef<::mlir::Type> rhsTypes(&rhsRawType, 1);
2580 lhsOperandsLoc = parser.getCurrentLocation();
2581 if (parser.parseOperand(lhsRawOperand))
2582 return ::mlir::failure();
2583 if (parser.parseComma())
2584 return ::mlir::failure();
2586 rhsOperandsLoc = parser.getCurrentLocation();
2587 if (parser.parseOperand(rhsRawOperand))
2588 return ::mlir::failure();
2591 if (odsResult) return ::mlir::failure();
2595 if (odsResult) return ::mlir::failure();
2598 auto loc = parser.getCurrentLocation();(void)loc;
2599 if (parser.parseOptionalAttrDict(result.attributes))
2600 return ::mlir::failure();
2603 result.addTypes(odsBuildableType0);
2604 if (parser.resolveOperands(lhsOperands, lhsTypes, lhsOperandsLoc, result.operands))
2605 return ::mlir::failure();
2606 if (parser.resolveOperands(rhsOperands, rhsTypes, rhsOperandsLoc, result.operands))
2607 return ::mlir::failure();
2608 return ::mlir::success();
2619 ::llvm::SmallVector<::llvm::StringRef, 2> elidedAttrs;
2620 _odsPrinter.printOptionalAttrDict((*this)->getAttrs(), elidedAttrs);
2623void 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()
static void printInferredOrParsedType(::mlir::OpAsmPrinter &printer, ::mlir::Operation *op, ::mlir::Type opType, bool isFirst)
::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)
::mlir::ParseResult parseInferredOrParsedType(::mlir::OpAsmParser &parser, ::mlir::Type &opType, bool isFirst)
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::ParseResult parseInferredOrParsedType(::mlir::OpAsmParser &parser, ::mlir::Type &opType, bool isFirst)
::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)
static void printInferredOrParsedType(::mlir::OpAsmPrinter &printer, ::mlir::Operation *op, ::mlir::Type opType, bool isFirst)
::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)
static void printInferredOrParsedType(::mlir::OpAsmPrinter &printer, ::mlir::Operation *op, ::mlir::Type opType, bool isFirst)
::mlir::TypedValue<::mlir::Type > getRhs()
::mlir::ParseResult parseInferredOrParsedType(::mlir::OpAsmParser &parser, ::mlir::Type &opType, bool isFirst)
::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()
::llvm::LogicalResult verify(::mlir::Location loc)
FeltNonDetOpGenericAdaptor(RangeT values, ::mlir::DictionaryAttr attrs={}, const ::mlir::EmptyProperties &properties={}, ::mlir::RegionRange regions={})
FeltNonDetOpAdaptor(FeltNonDetOp op)
::mlir::ValueRange getOperands()
::llvm::LogicalResult verifyInvariantsImpl()
void print(::mlir::OpAsmPrinter &_odsPrinter)
::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)
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)
::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)
static void printInferredOrParsedType(::mlir::OpAsmPrinter &printer, ::mlir::Operation *op, ::mlir::Type opType, bool isFirst)
void print(::mlir::OpAsmPrinter &_odsPrinter)
::llvm::LogicalResult verifyInvariants()
::mlir::ParseResult parseInferredOrParsedType(::mlir::OpAsmParser &parser, ::mlir::Type &opType, bool isFirst)
::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)
ModFeltOpGenericAdaptor(RangeT values, ::mlir::DictionaryAttr attrs={}, const ::mlir::EmptyProperties &properties={}, ::mlir::RegionRange regions={})
::llvm::LogicalResult verify(::mlir::Location loc)
ModFeltOpAdaptor(ModFeltOp op)
::mlir::ValueRange getOperands()
::mlir::ParseResult parse(::mlir::OpAsmParser &parser, ::mlir::OperationState &result)
::mlir::Operation::operand_range getODSOperands(unsigned index)
void print(::mlir::OpAsmPrinter &_odsPrinter)
::mlir::Operation::result_range getODSResults(unsigned index)
::mlir::TypedValue<::mlir::Type > getLhs()
::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)
::mlir::TypedValue<::mlir::Type > getRhs()
static void build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Type result, ::mlir::Value lhs, ::mlir::Value rhs)
void getEffects(::llvm::SmallVectorImpl<::mlir::SideEffects::EffectInstance<::mlir::MemoryEffects::Effect > > &effects)
static void printInferredOrParsedType(::mlir::OpAsmPrinter &printer, ::mlir::Operation *op, ::mlir::Type opType, bool isFirst)
::mlir::ParseResult parseInferredOrParsedType(::mlir::OpAsmParser &parser, ::mlir::Type &opType, bool isFirst)
::llvm::LogicalResult verifyInvariants()
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::ParseResult parseInferredOrParsedType(::mlir::OpAsmParser &parser, ::mlir::Type &opType, bool isFirst)
::mlir::TypedValue<::mlir::Type > getLhs()
static void printInferredOrParsedType(::mlir::OpAsmPrinter &printer, ::mlir::Operation *op, ::mlir::Type opType, bool isFirst)
::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)
::mlir::ParseResult parseInferredOrParsedType(::mlir::OpAsmParser &parser, ::mlir::Type &opType, bool isFirst)
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)
static void printInferredOrParsedType(::mlir::OpAsmPrinter &printer, ::mlir::Operation *op, ::mlir::Type opType, bool isFirst)
::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::ParseResult parseInferredOrParsedType(::mlir::OpAsmParser &parser, ::mlir::Type &opType, bool isFirst)
::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)
static void printInferredOrParsedType(::mlir::OpAsmPrinter &printer, ::mlir::Operation *op, ::mlir::Type opType, bool isFirst)
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)
static void printInferredOrParsedType(::mlir::OpAsmPrinter &printer, ::mlir::Operation *op, ::mlir::Type opType, bool isFirst)
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()
::mlir::ParseResult parseInferredOrParsedType(::mlir::OpAsmParser &parser, ::mlir::Type &opType, bool isFirst)
::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()
static void printInferredOrParsedType(::mlir::OpAsmPrinter &printer, ::mlir::Operation *op, ::mlir::Type opType, bool isFirst)
::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::ParseResult parseInferredOrParsedType(::mlir::OpAsmParser &parser, ::mlir::Type &opType, bool isFirst)
::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)
static void printInferredOrParsedType(::mlir::OpAsmPrinter &printer, ::mlir::Operation *op, ::mlir::Type opType, bool isFirst)
::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 parseInferredOrParsedType(::mlir::OpAsmParser &parser, ::mlir::Type &opType, bool isFirst)
::mlir::ParseResult parse(::mlir::OpAsmParser &parser, ::mlir::OperationState &result)
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()
::mlir::ParseResult parseInferredOrParsedType(::mlir::OpAsmParser &parser, ::mlir::Type &opType, bool isFirst)
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()
static void printInferredOrParsedType(::mlir::OpAsmPrinter &printer, ::mlir::Operation *op, ::mlir::Type opType, bool isFirst)
::mlir::TypedValue<::mlir::Type > getLhs()
::mlir::Operation::operand_range getODSOperands(unsigned index)
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 parseInferredOrParsedType(::mlir::OpAsmParser &parser, ::mlir::Type &opType, bool isFirst)
static void printInferredOrParsedType(::mlir::OpAsmPrinter &printer, ::mlir::Operation *op, ::mlir::Type opType, bool isFirst)
::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)