LLZK 0.1.0
Veridise's ZK Language IR
Loading...
Searching...
No Matches
Ops.h.inc
Go to the documentation of this file.
1/*===- TableGen'erated file -------------------------------------*- C++ -*-===*\
2|* *|
3|* Op Declarations *|
4|* *|
5|* Automatically generated file, do not edit! *|
6|* From: Ops.td *|
7|* *|
8\*===----------------------------------------------------------------------===*/
9
10#if defined(GET_OP_CLASSES) || defined(GET_OP_FWD_DEFINES)
11#undef GET_OP_FWD_DEFINES
12namespace llzk {
13namespace boolean {
14class AndBoolOp;
15} // namespace boolean
16} // namespace llzk
17namespace llzk {
18namespace boolean {
19class AssertOp;
20} // namespace boolean
21} // namespace llzk
22namespace llzk {
23namespace boolean {
24class CmpOp;
25} // namespace boolean
26} // namespace llzk
27namespace llzk {
28namespace boolean {
29class NotBoolOp;
30} // namespace boolean
31} // namespace llzk
32namespace llzk {
33namespace boolean {
34class OrBoolOp;
35} // namespace boolean
36} // namespace llzk
37namespace llzk {
38namespace boolean {
39class XorBoolOp;
40} // namespace boolean
41} // namespace llzk
42#endif
43
44#ifdef GET_OP_CLASSES
45#undef GET_OP_CLASSES
46
47
48//===----------------------------------------------------------------------===//
49// Local Utility Method Definitions
50//===----------------------------------------------------------------------===//
51
52namespace llzk {
53namespace boolean {
54
55//===----------------------------------------------------------------------===//
56// ::llzk::boolean::AndBoolOp declarations
57//===----------------------------------------------------------------------===//
58
59namespace detail {
61public:
62protected:
63 ::mlir::DictionaryAttr odsAttrs;
64 ::std::optional<::mlir::OperationName> odsOpName;
65 ::mlir::RegionRange odsRegions;
66public:
67 AndBoolOpGenericAdaptorBase(::mlir::DictionaryAttr attrs = nullptr, const ::mlir::EmptyProperties &properties = {}, ::mlir::RegionRange regions = {});
68
70
71 std::pair<unsigned, unsigned> getODSOperandIndexAndLength(unsigned index, unsigned odsOperandsSize);
72 ::mlir::DictionaryAttr getAttributes();
73};
74} // namespace detail
75template <typename RangeT>
77 using ValueT = ::llvm::detail::ValueOfRange<RangeT>;
79public:
80 AndBoolOpGenericAdaptor(RangeT values, ::mlir::DictionaryAttr attrs = nullptr, const ::mlir::EmptyProperties &properties = {}, ::mlir::RegionRange regions = {}) : Base(attrs, properties, regions), odsOperands(values) {}
81
82 AndBoolOpGenericAdaptor(RangeT values, ::mlir::DictionaryAttr attrs, ::mlir::OpaqueProperties properties, ::mlir::RegionRange regions = {}) : AndBoolOpGenericAdaptor(values, attrs, (properties ? *properties.as<::mlir::EmptyProperties *>() : ::mlir::EmptyProperties{}), regions) {}
83
84 template <typename LateInst = AndBoolOp, typename = std::enable_if_t<std::is_same_v<LateInst, AndBoolOp>>>
85 AndBoolOpGenericAdaptor(RangeT values, LateInst op) : Base(op), odsOperands(values) {}
86
87 std::pair<unsigned, unsigned> getODSOperandIndexAndLength(unsigned index) {
88 return Base::getODSOperandIndexAndLength(index, odsOperands.size());
89 }
90
91 RangeT getODSOperands(unsigned index) {
92 auto valueRange = getODSOperandIndexAndLength(index);
93 return {std::next(odsOperands.begin(), valueRange.first),
94 std::next(odsOperands.begin(), valueRange.first + valueRange.second)};
95 }
96
97 ValueT getLhs() {
98 return (*getODSOperands(0).begin());
99 }
100
101 ValueT getRhs() {
102 return (*getODSOperands(1).begin());
103 }
104
105 RangeT getOperands() {
106 return odsOperands;
107 }
108
109private:
110 RangeT odsOperands;
111};
112class AndBoolOpAdaptor : public AndBoolOpGenericAdaptor<::mlir::ValueRange> {
113public:
116
117 ::mlir::LogicalResult verify(::mlir::Location loc);
118};
119class AndBoolOp : public ::mlir::Op<AndBoolOp, ::mlir::OpTrait::ZeroRegions, ::mlir::OpTrait::OneResult, ::mlir::OpTrait::OneTypedResult<::mlir::IntegerType>::Impl, ::mlir::OpTrait::ZeroSuccessors, ::mlir::OpTrait::NOperands<2>::Impl, ::llzk::function::WitnessGen, ::mlir::OpTrait::OpInvariants, ::mlir::OpTrait::IsCommutative, ::mlir::ConditionallySpeculatable::Trait, ::mlir::OpTrait::AlwaysSpeculatableImplTrait, ::mlir::MemoryEffectOpInterface::Trait, ::mlir::InferTypeOpInterface::Trait> {
120public:
121 using Op::Op;
122 using Op::print;
124 template <typename RangeT>
127 static ::llvm::ArrayRef<::llvm::StringRef> getAttributeNames() {
128 return {};
129 }
130
131 static constexpr ::llvm::StringLiteral getOperationName() {
132 return ::llvm::StringLiteral("bool.and");
133 }
134
135 std::pair<unsigned, unsigned> getODSOperandIndexAndLength(unsigned index);
136 ::mlir::Operation::operand_range getODSOperands(unsigned index);
137 ::mlir::Value getLhs();
138 ::mlir::Value getRhs();
139 ::mlir::OpOperand &getLhsMutable();
140 ::mlir::OpOperand &getRhsMutable();
141 std::pair<unsigned, unsigned> getODSResultIndexAndLength(unsigned index);
142 ::mlir::Operation::result_range getODSResults(unsigned index);
143 ::mlir::TypedValue<::mlir::IntegerType> getResult();
144 static void build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Type result, ::mlir::Value lhs, ::mlir::Value rhs);
145 static void build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Value lhs, ::mlir::Value rhs);
146 static void build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::Value lhs, ::mlir::Value rhs);
147 static void build(::mlir::OpBuilder &, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes = {});
148 static void build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes = {});
149 ::mlir::LogicalResult verifyInvariantsImpl();
150 ::mlir::LogicalResult verifyInvariants();
151 static ::mlir::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);
152 static ::mlir::ParseResult parse(::mlir::OpAsmParser &parser, ::mlir::OperationState &result);
153 void print(::mlir::OpAsmPrinter &_odsPrinter);
154 void getEffects(::llvm::SmallVectorImpl<::mlir::SideEffects::EffectInstance<::mlir::MemoryEffects::Effect>> &effects);
155public:
156 static ::mlir::ParseResult parseInferredOrParsedType(
157 ::mlir::OpAsmParser &parser, ::mlir::Type &opType, bool isFirst
158 ) {
159 if (mlir::succeeded(isFirst ? parser.parseOptionalColon() : parser.parseOptionalComma())) {
160 // If there is a comma, parse the `opType`
161 mlir::Type type;
162 if (parser.parseCustomTypeWithFallback(type)) {
163 return mlir::failure();
164 }
165 opType = type;
166 } else {
167 // Otherwise, build the default type
168 opType =
169 parser.getBuilder().getIntegerType(1);
170 }
171 return mlir::success();
172 }
173
174 static void printInferredOrParsedType(::mlir::OpAsmPrinter &printer,
175 ::mlir::Operation *op, ::mlir::Type opType, bool isFirst
176 ) {
177 printer << (isFirst ? " : " : ", ");
178 printer.printStrippedAttrOrType(opType);
179 }
180};
181} // namespace boolean
182} // namespace llzk
183MLIR_DECLARE_EXPLICIT_TYPE_ID(::llzk::boolean::AndBoolOp)
184
185namespace llzk {
186namespace boolean {
187
188//===----------------------------------------------------------------------===//
189// ::llzk::boolean::AssertOp declarations
190//===----------------------------------------------------------------------===//
191
192namespace detail {
194public:
195 struct Properties {
196 using msgTy = ::mlir::StringAttr;
198
199 auto getMsg() {
200 auto &propStorage = this->msg;
201 return ::llvm::dyn_cast_or_null<::mlir::StringAttr>(propStorage);
202 }
203 void setMsg(const ::mlir::StringAttr &propValue) {
204 this->msg = propValue;
205 }
206 bool operator==(const Properties &rhs) const {
207 return
208 rhs.msg == this->msg &&
209 true;
210 }
211 bool operator!=(const Properties &rhs) const {
212 return !(*this == rhs);
213 }
214 };
215protected:
216 ::mlir::DictionaryAttr odsAttrs;
217 ::std::optional<::mlir::OperationName> odsOpName;
219 ::mlir::RegionRange odsRegions;
220public:
221 AssertOpGenericAdaptorBase(::mlir::DictionaryAttr attrs = nullptr, const Properties &properties = {}, ::mlir::RegionRange regions = {});
222
224
225 std::pair<unsigned, unsigned> getODSOperandIndexAndLength(unsigned index, unsigned odsOperandsSize);
227 return properties;
228 }
229
230 ::mlir::DictionaryAttr getAttributes();
231 ::mlir::StringAttr getMsgAttr();
232 ::std::optional< ::llvm::StringRef > getMsg();
233};
234} // namespace detail
235template <typename RangeT>
237 using ValueT = ::llvm::detail::ValueOfRange<RangeT>;
239public:
240 AssertOpGenericAdaptor(RangeT values, ::mlir::DictionaryAttr attrs = nullptr, const Properties &properties = {}, ::mlir::RegionRange regions = {}) : Base(attrs, properties, regions), odsOperands(values) {}
241
242 AssertOpGenericAdaptor(RangeT values, ::mlir::DictionaryAttr attrs, ::mlir::OpaqueProperties properties, ::mlir::RegionRange regions = {}) : AssertOpGenericAdaptor(values, attrs, (properties ? *properties.as<Properties *>() : Properties{}), regions) {}
243
244 template <typename LateInst = AssertOp, typename = std::enable_if_t<std::is_same_v<LateInst, AssertOp>>>
245 AssertOpGenericAdaptor(RangeT values, LateInst op) : Base(op), odsOperands(values) {}
246
247 std::pair<unsigned, unsigned> getODSOperandIndexAndLength(unsigned index) {
248 return Base::getODSOperandIndexAndLength(index, odsOperands.size());
249 }
250
251 RangeT getODSOperands(unsigned index) {
252 auto valueRange = getODSOperandIndexAndLength(index);
253 return {std::next(odsOperands.begin(), valueRange.first),
254 std::next(odsOperands.begin(), valueRange.first + valueRange.second)};
255 }
256
257 ValueT getCondition() {
258 return (*getODSOperands(0).begin());
259 }
260
261 RangeT getOperands() {
262 return odsOperands;
263 }
264
265private:
266 RangeT odsOperands;
267};
268class AssertOpAdaptor : public AssertOpGenericAdaptor<::mlir::ValueRange> {
269public:
272
273 ::mlir::LogicalResult verify(::mlir::Location loc);
274};
275class AssertOp : public ::mlir::Op<AssertOp, ::mlir::OpTrait::ZeroRegions, ::mlir::OpTrait::ZeroResults, ::mlir::OpTrait::ZeroSuccessors, ::mlir::OpTrait::OneOperand, ::mlir::OpTrait::OpInvariants, ::mlir::BytecodeOpInterface::Trait, ::mlir::MemoryEffectOpInterface::Trait> {
276public:
277 using Op::Op;
278 using Op::print;
280 template <typename RangeT>
284 static ::llvm::ArrayRef<::llvm::StringRef> getAttributeNames() {
285 static ::llvm::StringRef attrNames[] = {::llvm::StringRef("msg")};
286 return ::llvm::ArrayRef(attrNames);
287 }
288
289 ::mlir::StringAttr getMsgAttrName() {
290 return getAttributeNameForIndex(0);
291 }
292
293 static ::mlir::StringAttr getMsgAttrName(::mlir::OperationName name) {
294 return getAttributeNameForIndex(name, 0);
295 }
296
297 static constexpr ::llvm::StringLiteral getOperationName() {
298 return ::llvm::StringLiteral("bool.assert");
299 }
300
301 std::pair<unsigned, unsigned> getODSOperandIndexAndLength(unsigned index);
302 ::mlir::Operation::operand_range getODSOperands(unsigned index);
303 ::mlir::TypedValue<::mlir::IntegerType> getCondition();
304 ::mlir::OpOperand &getConditionMutable();
305 std::pair<unsigned, unsigned> getODSResultIndexAndLength(unsigned index);
306 ::mlir::Operation::result_range getODSResults(unsigned index);
307 static ::mlir::LogicalResult setPropertiesFromAttr(Properties &prop, ::mlir::Attribute attr, ::llvm::function_ref<::mlir::InFlightDiagnostic()> emitError);
308 static ::mlir::Attribute getPropertiesAsAttr(::mlir::MLIRContext *ctx, const Properties &prop);
309 static llvm::hash_code computePropertiesHash(const Properties &prop);
310 static std::optional<mlir::Attribute> getInherentAttr(::mlir::MLIRContext *ctx, const Properties &prop, llvm::StringRef name);
311 static void setInherentAttr(Properties &prop, llvm::StringRef name, mlir::Attribute value);
312 static void populateInherentAttrs(::mlir::MLIRContext *ctx, const Properties &prop, ::mlir::NamedAttrList &attrs);
313 static ::mlir::LogicalResult verifyInherentAttrs(::mlir::OperationName opName, ::mlir::NamedAttrList &attrs, llvm::function_ref<::mlir::InFlightDiagnostic()> emitError);
314 static ::mlir::LogicalResult readProperties(::mlir::DialectBytecodeReader &reader, ::mlir::OperationState &state);
315 void writeProperties(::mlir::DialectBytecodeWriter &writer);
316 ::mlir::StringAttr getMsgAttr();
317 ::std::optional< ::llvm::StringRef > getMsg();
318 void setMsgAttr(::mlir::StringAttr attr);
319 void setMsg(::std::optional<::llvm::StringRef> attrValue);
320 ::mlir::Attribute removeMsgAttr();
321 static void build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Value condition, /*optional*/::mlir::StringAttr msg);
322 static void build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::Value condition, /*optional*/::mlir::StringAttr msg);
323 static void build(::mlir::OpBuilder &, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes = {});
324 ::mlir::LogicalResult verifyInvariantsImpl();
325 ::mlir::LogicalResult verifyInvariants();
326 void getEffects(::llvm::SmallVectorImpl<::mlir::SideEffects::EffectInstance<::mlir::MemoryEffects::Effect>> &effects);
327 static ::mlir::ParseResult parse(::mlir::OpAsmParser &parser, ::mlir::OperationState &result);
328 void print(::mlir::OpAsmPrinter &_odsPrinter);
329private:
330 ::mlir::StringAttr getAttributeNameForIndex(unsigned index) {
331 return getAttributeNameForIndex((*this)->getName(), index);
332 }
333
334 static ::mlir::StringAttr getAttributeNameForIndex(::mlir::OperationName name, unsigned index) {
335 assert(index < 1 && "invalid attribute index");
336 assert(name.getStringRef() == getOperationName() && "invalid operation name");
337 assert(name.isRegistered() && "Operation isn't registered, missing a "
338 "dependent dialect loading?");
339 return name.getAttributeNames()[index];
340 }
341
342public:
343};
344} // namespace boolean
345} // namespace llzk
346MLIR_DECLARE_EXPLICIT_TYPE_ID(::llzk::boolean::AssertOp)
347
348namespace llzk {
349namespace boolean {
350
351//===----------------------------------------------------------------------===//
352// ::llzk::boolean::CmpOp declarations
353//===----------------------------------------------------------------------===//
354
355namespace detail {
357public:
358 struct Properties {
359 using predicateTy = ::llzk::boolean::FeltCmpPredicateAttr;
361
363 auto &propStorage = this->predicate;
364 return ::llvm::cast<::llzk::boolean::FeltCmpPredicateAttr>(propStorage);
365 }
366 void setPredicate(const ::llzk::boolean::FeltCmpPredicateAttr &propValue) {
367 this->predicate = propValue;
368 }
369 bool operator==(const Properties &rhs) const {
370 return
371 rhs.predicate == this->predicate &&
372 true;
373 }
374 bool operator!=(const Properties &rhs) const {
375 return !(*this == rhs);
376 }
377 };
378protected:
379 ::mlir::DictionaryAttr odsAttrs;
380 ::std::optional<::mlir::OperationName> odsOpName;
382 ::mlir::RegionRange odsRegions;
383public:
384 CmpOpGenericAdaptorBase(::mlir::DictionaryAttr attrs = nullptr, const Properties &properties = {}, ::mlir::RegionRange regions = {});
385
387
388 std::pair<unsigned, unsigned> getODSOperandIndexAndLength(unsigned index, unsigned odsOperandsSize);
390 return properties;
391 }
392
393 ::mlir::DictionaryAttr getAttributes();
394 ::llzk::boolean::FeltCmpPredicateAttr getPredicateAttr();
396};
397} // namespace detail
398template <typename RangeT>
400 using ValueT = ::llvm::detail::ValueOfRange<RangeT>;
402public:
403 CmpOpGenericAdaptor(RangeT values, ::mlir::DictionaryAttr attrs = nullptr, const Properties &properties = {}, ::mlir::RegionRange regions = {}) : Base(attrs, properties, regions), odsOperands(values) {}
404
405 CmpOpGenericAdaptor(RangeT values, ::mlir::DictionaryAttr attrs, ::mlir::OpaqueProperties properties, ::mlir::RegionRange regions = {}) : CmpOpGenericAdaptor(values, attrs, (properties ? *properties.as<Properties *>() : Properties{}), regions) {}
406
407 template <typename LateInst = CmpOp, typename = std::enable_if_t<std::is_same_v<LateInst, CmpOp>>>
408 CmpOpGenericAdaptor(RangeT values, LateInst op) : Base(op), odsOperands(values) {}
409
410 std::pair<unsigned, unsigned> getODSOperandIndexAndLength(unsigned index) {
411 return Base::getODSOperandIndexAndLength(index, odsOperands.size());
412 }
413
414 RangeT getODSOperands(unsigned index) {
415 auto valueRange = getODSOperandIndexAndLength(index);
416 return {std::next(odsOperands.begin(), valueRange.first),
417 std::next(odsOperands.begin(), valueRange.first + valueRange.second)};
418 }
419
420 ValueT getLhs() {
421 return (*getODSOperands(0).begin());
422 }
423
424 ValueT getRhs() {
425 return (*getODSOperands(1).begin());
426 }
427
428 RangeT getOperands() {
429 return odsOperands;
430 }
431
432private:
433 RangeT odsOperands;
434};
435class CmpOpAdaptor : public CmpOpGenericAdaptor<::mlir::ValueRange> {
436public:
439
440 ::mlir::LogicalResult verify(::mlir::Location loc);
441};
442class CmpOp : public ::mlir::Op<CmpOp, ::mlir::OpTrait::ZeroRegions, ::mlir::OpTrait::OneResult, ::mlir::OpTrait::OneTypedResult<::mlir::IntegerType>::Impl, ::mlir::OpTrait::ZeroSuccessors, ::mlir::OpTrait::NOperands<2>::Impl, ::mlir::OpTrait::OpInvariants, ::mlir::BytecodeOpInterface::Trait, ::mlir::ConditionallySpeculatable::Trait, ::mlir::OpTrait::AlwaysSpeculatableImplTrait, ::mlir::MemoryEffectOpInterface::Trait, ::mlir::InferTypeOpInterface::Trait> {
443public:
444 using Op::Op;
445 using Op::print;
447 template <typename RangeT>
451 static ::llvm::ArrayRef<::llvm::StringRef> getAttributeNames() {
452 static ::llvm::StringRef attrNames[] = {::llvm::StringRef("predicate")};
453 return ::llvm::ArrayRef(attrNames);
454 }
455
456 ::mlir::StringAttr getPredicateAttrName() {
457 return getAttributeNameForIndex(0);
458 }
459
460 static ::mlir::StringAttr getPredicateAttrName(::mlir::OperationName name) {
461 return getAttributeNameForIndex(name, 0);
462 }
463
464 static constexpr ::llvm::StringLiteral getOperationName() {
465 return ::llvm::StringLiteral("bool.cmp");
466 }
467
468 std::pair<unsigned, unsigned> getODSOperandIndexAndLength(unsigned index);
469 ::mlir::Operation::operand_range getODSOperands(unsigned index);
470 ::mlir::TypedValue<::llzk::felt::FeltType> getLhs();
471 ::mlir::TypedValue<::llzk::felt::FeltType> getRhs();
472 ::mlir::OpOperand &getLhsMutable();
473 ::mlir::OpOperand &getRhsMutable();
474 std::pair<unsigned, unsigned> getODSResultIndexAndLength(unsigned index);
475 ::mlir::Operation::result_range getODSResults(unsigned index);
476 ::mlir::TypedValue<::mlir::IntegerType> getResult();
477 static ::mlir::LogicalResult setPropertiesFromAttr(Properties &prop, ::mlir::Attribute attr, ::llvm::function_ref<::mlir::InFlightDiagnostic()> emitError);
478 static ::mlir::Attribute getPropertiesAsAttr(::mlir::MLIRContext *ctx, const Properties &prop);
479 static llvm::hash_code computePropertiesHash(const Properties &prop);
480 static std::optional<mlir::Attribute> getInherentAttr(::mlir::MLIRContext *ctx, const Properties &prop, llvm::StringRef name);
481 static void setInherentAttr(Properties &prop, llvm::StringRef name, mlir::Attribute value);
482 static void populateInherentAttrs(::mlir::MLIRContext *ctx, const Properties &prop, ::mlir::NamedAttrList &attrs);
483 static ::mlir::LogicalResult verifyInherentAttrs(::mlir::OperationName opName, ::mlir::NamedAttrList &attrs, llvm::function_ref<::mlir::InFlightDiagnostic()> emitError);
484 static ::mlir::LogicalResult readProperties(::mlir::DialectBytecodeReader &reader, ::mlir::OperationState &state);
485 void writeProperties(::mlir::DialectBytecodeWriter &writer);
486 ::llzk::boolean::FeltCmpPredicateAttr getPredicateAttr();
488 void setPredicateAttr(::llzk::boolean::FeltCmpPredicateAttr attr);
490 static void build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Type result, ::llzk::boolean::FeltCmpPredicateAttr predicate, ::mlir::Value lhs, ::mlir::Value rhs);
491 static void build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::llzk::boolean::FeltCmpPredicateAttr predicate, ::mlir::Value lhs, ::mlir::Value rhs);
492 static void build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::llzk::boolean::FeltCmpPredicateAttr predicate, ::mlir::Value lhs, ::mlir::Value rhs);
493 static void build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Type result, ::llzk::boolean::FeltCmpPredicate predicate, ::mlir::Value lhs, ::mlir::Value rhs);
494 static void build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::llzk::boolean::FeltCmpPredicate predicate, ::mlir::Value lhs, ::mlir::Value rhs);
495 static void build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::llzk::boolean::FeltCmpPredicate predicate, ::mlir::Value lhs, ::mlir::Value rhs);
496 static void build(::mlir::OpBuilder &, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes = {});
497 static void build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes = {});
498 ::mlir::LogicalResult verifyInvariantsImpl();
499 ::mlir::LogicalResult verifyInvariants();
500 static ::mlir::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);
501 static ::mlir::ParseResult parse(::mlir::OpAsmParser &parser, ::mlir::OperationState &result);
502 void print(::mlir::OpAsmPrinter &_odsPrinter);
503 void getEffects(::llvm::SmallVectorImpl<::mlir::SideEffects::EffectInstance<::mlir::MemoryEffects::Effect>> &effects);
504private:
505 ::mlir::StringAttr getAttributeNameForIndex(unsigned index) {
506 return getAttributeNameForIndex((*this)->getName(), index);
507 }
508
509 static ::mlir::StringAttr getAttributeNameForIndex(::mlir::OperationName name, unsigned index) {
510 assert(index < 1 && "invalid attribute index");
511 assert(name.getStringRef() == getOperationName() && "invalid operation name");
512 assert(name.isRegistered() && "Operation isn't registered, missing a "
513 "dependent dialect loading?");
514 return name.getAttributeNames()[index];
515 }
516
517public:
518};
519} // namespace boolean
520} // namespace llzk
521MLIR_DECLARE_EXPLICIT_TYPE_ID(::llzk::boolean::CmpOp)
522
523namespace llzk {
524namespace boolean {
525
526//===----------------------------------------------------------------------===//
527// ::llzk::boolean::NotBoolOp declarations
528//===----------------------------------------------------------------------===//
529
530namespace detail {
532public:
533protected:
534 ::mlir::DictionaryAttr odsAttrs;
535 ::std::optional<::mlir::OperationName> odsOpName;
536 ::mlir::RegionRange odsRegions;
537public:
538 NotBoolOpGenericAdaptorBase(::mlir::DictionaryAttr attrs = nullptr, const ::mlir::EmptyProperties &properties = {}, ::mlir::RegionRange regions = {});
539
541
542 std::pair<unsigned, unsigned> getODSOperandIndexAndLength(unsigned index, unsigned odsOperandsSize);
543 ::mlir::DictionaryAttr getAttributes();
544};
545} // namespace detail
546template <typename RangeT>
548 using ValueT = ::llvm::detail::ValueOfRange<RangeT>;
550public:
551 NotBoolOpGenericAdaptor(RangeT values, ::mlir::DictionaryAttr attrs = nullptr, const ::mlir::EmptyProperties &properties = {}, ::mlir::RegionRange regions = {}) : Base(attrs, properties, regions), odsOperands(values) {}
552
553 NotBoolOpGenericAdaptor(RangeT values, ::mlir::DictionaryAttr attrs, ::mlir::OpaqueProperties properties, ::mlir::RegionRange regions = {}) : NotBoolOpGenericAdaptor(values, attrs, (properties ? *properties.as<::mlir::EmptyProperties *>() : ::mlir::EmptyProperties{}), regions) {}
554
555 template <typename LateInst = NotBoolOp, typename = std::enable_if_t<std::is_same_v<LateInst, NotBoolOp>>>
556 NotBoolOpGenericAdaptor(RangeT values, LateInst op) : Base(op), odsOperands(values) {}
557
558 std::pair<unsigned, unsigned> getODSOperandIndexAndLength(unsigned index) {
559 return Base::getODSOperandIndexAndLength(index, odsOperands.size());
560 }
561
562 RangeT getODSOperands(unsigned index) {
563 auto valueRange = getODSOperandIndexAndLength(index);
564 return {std::next(odsOperands.begin(), valueRange.first),
565 std::next(odsOperands.begin(), valueRange.first + valueRange.second)};
566 }
567
568 ValueT getOperand() {
569 return (*getODSOperands(0).begin());
570 }
571
572 RangeT getOperands() {
573 return odsOperands;
574 }
575
576private:
577 RangeT odsOperands;
578};
579class NotBoolOpAdaptor : public NotBoolOpGenericAdaptor<::mlir::ValueRange> {
580public:
583
584 ::mlir::LogicalResult verify(::mlir::Location loc);
585};
586class NotBoolOp : public ::mlir::Op<NotBoolOp, ::mlir::OpTrait::ZeroRegions, ::mlir::OpTrait::OneResult, ::mlir::OpTrait::OneTypedResult<::mlir::IntegerType>::Impl, ::mlir::OpTrait::ZeroSuccessors, ::mlir::OpTrait::OneOperand, ::llzk::function::WitnessGen, ::mlir::OpTrait::OpInvariants, ::mlir::ConditionallySpeculatable::Trait, ::mlir::OpTrait::AlwaysSpeculatableImplTrait, ::mlir::MemoryEffectOpInterface::Trait, ::mlir::InferTypeOpInterface::Trait> {
587public:
588 using Op::Op;
589 using Op::print;
591 template <typename RangeT>
594 static ::llvm::ArrayRef<::llvm::StringRef> getAttributeNames() {
595 return {};
596 }
597
598 static constexpr ::llvm::StringLiteral getOperationName() {
599 return ::llvm::StringLiteral("bool.not");
600 }
601
602 std::pair<unsigned, unsigned> getODSOperandIndexAndLength(unsigned index);
603 ::mlir::Operation::operand_range getODSOperands(unsigned index);
604 ::mlir::Value getOperand();
605 ::mlir::OpOperand &getOperandMutable();
606 std::pair<unsigned, unsigned> getODSResultIndexAndLength(unsigned index);
607 ::mlir::Operation::result_range getODSResults(unsigned index);
608 ::mlir::TypedValue<::mlir::IntegerType> getResult();
609 static void build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Type result, ::mlir::Value operand);
610 static void build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Value operand);
611 static void build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::Value operand);
612 static void build(::mlir::OpBuilder &, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes = {});
613 static void build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes = {});
614 ::mlir::LogicalResult verifyInvariantsImpl();
615 ::mlir::LogicalResult verifyInvariants();
616 static ::mlir::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);
617 static ::mlir::ParseResult parse(::mlir::OpAsmParser &parser, ::mlir::OperationState &result);
618 void print(::mlir::OpAsmPrinter &_odsPrinter);
619 void getEffects(::llvm::SmallVectorImpl<::mlir::SideEffects::EffectInstance<::mlir::MemoryEffects::Effect>> &effects);
620public:
621 static ::mlir::ParseResult parseInferredOrParsedType(
622 ::mlir::OpAsmParser &parser, ::mlir::Type &opType, bool isFirst
623 ) {
624 if (mlir::succeeded(isFirst ? parser.parseOptionalColon() : parser.parseOptionalComma())) {
625 // If there is a comma, parse the `opType`
626 mlir::Type type;
627 if (parser.parseCustomTypeWithFallback(type)) {
628 return mlir::failure();
629 }
630 opType = type;
631 } else {
632 // Otherwise, build the default type
633 opType =
634 parser.getBuilder().getIntegerType(1);
635 }
636 return mlir::success();
637 }
638
639 static void printInferredOrParsedType(::mlir::OpAsmPrinter &printer,
640 ::mlir::Operation *op, ::mlir::Type opType, bool isFirst
641 ) {
642 printer << (isFirst ? " : " : ", ");
643 printer.printStrippedAttrOrType(opType);
644 }
645};
646} // namespace boolean
647} // namespace llzk
648MLIR_DECLARE_EXPLICIT_TYPE_ID(::llzk::boolean::NotBoolOp)
649
650namespace llzk {
651namespace boolean {
652
653//===----------------------------------------------------------------------===//
654// ::llzk::boolean::OrBoolOp declarations
655//===----------------------------------------------------------------------===//
656
657namespace detail {
659public:
660protected:
661 ::mlir::DictionaryAttr odsAttrs;
662 ::std::optional<::mlir::OperationName> odsOpName;
663 ::mlir::RegionRange odsRegions;
664public:
665 OrBoolOpGenericAdaptorBase(::mlir::DictionaryAttr attrs = nullptr, const ::mlir::EmptyProperties &properties = {}, ::mlir::RegionRange regions = {});
666
668
669 std::pair<unsigned, unsigned> getODSOperandIndexAndLength(unsigned index, unsigned odsOperandsSize);
670 ::mlir::DictionaryAttr getAttributes();
671};
672} // namespace detail
673template <typename RangeT>
675 using ValueT = ::llvm::detail::ValueOfRange<RangeT>;
677public:
678 OrBoolOpGenericAdaptor(RangeT values, ::mlir::DictionaryAttr attrs = nullptr, const ::mlir::EmptyProperties &properties = {}, ::mlir::RegionRange regions = {}) : Base(attrs, properties, regions), odsOperands(values) {}
679
680 OrBoolOpGenericAdaptor(RangeT values, ::mlir::DictionaryAttr attrs, ::mlir::OpaqueProperties properties, ::mlir::RegionRange regions = {}) : OrBoolOpGenericAdaptor(values, attrs, (properties ? *properties.as<::mlir::EmptyProperties *>() : ::mlir::EmptyProperties{}), regions) {}
681
682 template <typename LateInst = OrBoolOp, typename = std::enable_if_t<std::is_same_v<LateInst, OrBoolOp>>>
683 OrBoolOpGenericAdaptor(RangeT values, LateInst op) : Base(op), odsOperands(values) {}
684
685 std::pair<unsigned, unsigned> getODSOperandIndexAndLength(unsigned index) {
686 return Base::getODSOperandIndexAndLength(index, odsOperands.size());
687 }
688
689 RangeT getODSOperands(unsigned index) {
690 auto valueRange = getODSOperandIndexAndLength(index);
691 return {std::next(odsOperands.begin(), valueRange.first),
692 std::next(odsOperands.begin(), valueRange.first + valueRange.second)};
693 }
694
695 ValueT getLhs() {
696 return (*getODSOperands(0).begin());
697 }
698
699 ValueT getRhs() {
700 return (*getODSOperands(1).begin());
701 }
702
703 RangeT getOperands() {
704 return odsOperands;
705 }
706
707private:
708 RangeT odsOperands;
709};
710class OrBoolOpAdaptor : public OrBoolOpGenericAdaptor<::mlir::ValueRange> {
711public:
714
715 ::mlir::LogicalResult verify(::mlir::Location loc);
716};
717class OrBoolOp : public ::mlir::Op<OrBoolOp, ::mlir::OpTrait::ZeroRegions, ::mlir::OpTrait::OneResult, ::mlir::OpTrait::OneTypedResult<::mlir::IntegerType>::Impl, ::mlir::OpTrait::ZeroSuccessors, ::mlir::OpTrait::NOperands<2>::Impl, ::llzk::function::WitnessGen, ::mlir::OpTrait::OpInvariants, ::mlir::OpTrait::IsCommutative, ::mlir::ConditionallySpeculatable::Trait, ::mlir::OpTrait::AlwaysSpeculatableImplTrait, ::mlir::MemoryEffectOpInterface::Trait, ::mlir::InferTypeOpInterface::Trait> {
718public:
719 using Op::Op;
720 using Op::print;
722 template <typename RangeT>
725 static ::llvm::ArrayRef<::llvm::StringRef> getAttributeNames() {
726 return {};
727 }
728
729 static constexpr ::llvm::StringLiteral getOperationName() {
730 return ::llvm::StringLiteral("bool.or");
731 }
732
733 std::pair<unsigned, unsigned> getODSOperandIndexAndLength(unsigned index);
734 ::mlir::Operation::operand_range getODSOperands(unsigned index);
735 ::mlir::Value getLhs();
736 ::mlir::Value getRhs();
737 ::mlir::OpOperand &getLhsMutable();
738 ::mlir::OpOperand &getRhsMutable();
739 std::pair<unsigned, unsigned> getODSResultIndexAndLength(unsigned index);
740 ::mlir::Operation::result_range getODSResults(unsigned index);
741 ::mlir::TypedValue<::mlir::IntegerType> getResult();
742 static void build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Type result, ::mlir::Value lhs, ::mlir::Value rhs);
743 static void build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Value lhs, ::mlir::Value rhs);
744 static void build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::Value lhs, ::mlir::Value rhs);
745 static void build(::mlir::OpBuilder &, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes = {});
746 static void build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes = {});
747 ::mlir::LogicalResult verifyInvariantsImpl();
748 ::mlir::LogicalResult verifyInvariants();
749 static ::mlir::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);
750 static ::mlir::ParseResult parse(::mlir::OpAsmParser &parser, ::mlir::OperationState &result);
751 void print(::mlir::OpAsmPrinter &_odsPrinter);
752 void getEffects(::llvm::SmallVectorImpl<::mlir::SideEffects::EffectInstance<::mlir::MemoryEffects::Effect>> &effects);
753public:
754 static ::mlir::ParseResult parseInferredOrParsedType(
755 ::mlir::OpAsmParser &parser, ::mlir::Type &opType, bool isFirst
756 ) {
757 if (mlir::succeeded(isFirst ? parser.parseOptionalColon() : parser.parseOptionalComma())) {
758 // If there is a comma, parse the `opType`
759 mlir::Type type;
760 if (parser.parseCustomTypeWithFallback(type)) {
761 return mlir::failure();
762 }
763 opType = type;
764 } else {
765 // Otherwise, build the default type
766 opType =
767 parser.getBuilder().getIntegerType(1);
768 }
769 return mlir::success();
770 }
771
772 static void printInferredOrParsedType(::mlir::OpAsmPrinter &printer,
773 ::mlir::Operation *op, ::mlir::Type opType, bool isFirst
774 ) {
775 printer << (isFirst ? " : " : ", ");
776 printer.printStrippedAttrOrType(opType);
777 }
778};
779} // namespace boolean
780} // namespace llzk
781MLIR_DECLARE_EXPLICIT_TYPE_ID(::llzk::boolean::OrBoolOp)
782
783namespace llzk {
784namespace boolean {
785
786//===----------------------------------------------------------------------===//
787// ::llzk::boolean::XorBoolOp declarations
788//===----------------------------------------------------------------------===//
789
790namespace detail {
792public:
793protected:
794 ::mlir::DictionaryAttr odsAttrs;
795 ::std::optional<::mlir::OperationName> odsOpName;
796 ::mlir::RegionRange odsRegions;
797public:
798 XorBoolOpGenericAdaptorBase(::mlir::DictionaryAttr attrs = nullptr, const ::mlir::EmptyProperties &properties = {}, ::mlir::RegionRange regions = {});
799
801
802 std::pair<unsigned, unsigned> getODSOperandIndexAndLength(unsigned index, unsigned odsOperandsSize);
803 ::mlir::DictionaryAttr getAttributes();
804};
805} // namespace detail
806template <typename RangeT>
808 using ValueT = ::llvm::detail::ValueOfRange<RangeT>;
810public:
811 XorBoolOpGenericAdaptor(RangeT values, ::mlir::DictionaryAttr attrs = nullptr, const ::mlir::EmptyProperties &properties = {}, ::mlir::RegionRange regions = {}) : Base(attrs, properties, regions), odsOperands(values) {}
812
813 XorBoolOpGenericAdaptor(RangeT values, ::mlir::DictionaryAttr attrs, ::mlir::OpaqueProperties properties, ::mlir::RegionRange regions = {}) : XorBoolOpGenericAdaptor(values, attrs, (properties ? *properties.as<::mlir::EmptyProperties *>() : ::mlir::EmptyProperties{}), regions) {}
814
815 template <typename LateInst = XorBoolOp, typename = std::enable_if_t<std::is_same_v<LateInst, XorBoolOp>>>
816 XorBoolOpGenericAdaptor(RangeT values, LateInst op) : Base(op), odsOperands(values) {}
817
818 std::pair<unsigned, unsigned> getODSOperandIndexAndLength(unsigned index) {
819 return Base::getODSOperandIndexAndLength(index, odsOperands.size());
820 }
821
822 RangeT getODSOperands(unsigned index) {
823 auto valueRange = getODSOperandIndexAndLength(index);
824 return {std::next(odsOperands.begin(), valueRange.first),
825 std::next(odsOperands.begin(), valueRange.first + valueRange.second)};
826 }
827
828 ValueT getLhs() {
829 return (*getODSOperands(0).begin());
830 }
831
832 ValueT getRhs() {
833 return (*getODSOperands(1).begin());
834 }
835
836 RangeT getOperands() {
837 return odsOperands;
838 }
839
840private:
841 RangeT odsOperands;
842};
843class XorBoolOpAdaptor : public XorBoolOpGenericAdaptor<::mlir::ValueRange> {
844public:
847
848 ::mlir::LogicalResult verify(::mlir::Location loc);
849};
850class XorBoolOp : public ::mlir::Op<XorBoolOp, ::mlir::OpTrait::ZeroRegions, ::mlir::OpTrait::OneResult, ::mlir::OpTrait::OneTypedResult<::mlir::IntegerType>::Impl, ::mlir::OpTrait::ZeroSuccessors, ::mlir::OpTrait::NOperands<2>::Impl, ::llzk::function::WitnessGen, ::mlir::OpTrait::OpInvariants, ::mlir::OpTrait::IsCommutative, ::mlir::ConditionallySpeculatable::Trait, ::mlir::OpTrait::AlwaysSpeculatableImplTrait, ::mlir::MemoryEffectOpInterface::Trait, ::mlir::InferTypeOpInterface::Trait> {
851public:
852 using Op::Op;
853 using Op::print;
855 template <typename RangeT>
858 static ::llvm::ArrayRef<::llvm::StringRef> getAttributeNames() {
859 return {};
860 }
861
862 static constexpr ::llvm::StringLiteral getOperationName() {
863 return ::llvm::StringLiteral("bool.xor");
864 }
865
866 std::pair<unsigned, unsigned> getODSOperandIndexAndLength(unsigned index);
867 ::mlir::Operation::operand_range getODSOperands(unsigned index);
868 ::mlir::Value getLhs();
869 ::mlir::Value getRhs();
870 ::mlir::OpOperand &getLhsMutable();
871 ::mlir::OpOperand &getRhsMutable();
872 std::pair<unsigned, unsigned> getODSResultIndexAndLength(unsigned index);
873 ::mlir::Operation::result_range getODSResults(unsigned index);
874 ::mlir::TypedValue<::mlir::IntegerType> getResult();
875 static void build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Type result, ::mlir::Value lhs, ::mlir::Value rhs);
876 static void build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Value lhs, ::mlir::Value rhs);
877 static void build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::Value lhs, ::mlir::Value rhs);
878 static void build(::mlir::OpBuilder &, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes = {});
879 static void build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute> attributes = {});
880 ::mlir::LogicalResult verifyInvariantsImpl();
881 ::mlir::LogicalResult verifyInvariants();
882 static ::mlir::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);
883 static ::mlir::ParseResult parse(::mlir::OpAsmParser &parser, ::mlir::OperationState &result);
884 void print(::mlir::OpAsmPrinter &_odsPrinter);
885 void getEffects(::llvm::SmallVectorImpl<::mlir::SideEffects::EffectInstance<::mlir::MemoryEffects::Effect>> &effects);
886public:
887 static ::mlir::ParseResult parseInferredOrParsedType(
888 ::mlir::OpAsmParser &parser, ::mlir::Type &opType, bool isFirst
889 ) {
890 if (mlir::succeeded(isFirst ? parser.parseOptionalColon() : parser.parseOptionalComma())) {
891 // If there is a comma, parse the `opType`
892 mlir::Type type;
893 if (parser.parseCustomTypeWithFallback(type)) {
894 return mlir::failure();
895 }
896 opType = type;
897 } else {
898 // Otherwise, build the default type
899 opType =
900 parser.getBuilder().getIntegerType(1);
901 }
902 return mlir::success();
903 }
904
905 static void printInferredOrParsedType(::mlir::OpAsmPrinter &printer,
906 ::mlir::Operation *op, ::mlir::Type opType, bool isFirst
907 ) {
908 printer << (isFirst ? " : " : ", ");
909 printer.printStrippedAttrOrType(opType);
910 }
911};
912} // namespace boolean
913} // namespace llzk
914MLIR_DECLARE_EXPLICIT_TYPE_ID(::llzk::boolean::XorBoolOp)
915
916
917#endif // GET_OP_CLASSES
918
::mlir::LogicalResult verify(::mlir::Location loc)
Definition Ops.cpp.inc:116
AndBoolOpGenericAdaptor(RangeT values, ::mlir::DictionaryAttr attrs=nullptr, const ::mlir::EmptyProperties &properties={}, ::mlir::RegionRange regions={})
Definition Ops.h.inc:80
AndBoolOpGenericAdaptor(RangeT values, ::mlir::DictionaryAttr attrs=nullptr, const ::mlir::EmptyProperties &properties={}, ::mlir::RegionRange regions={})
Definition Ops.h.inc:80
AndBoolOpGenericAdaptor(RangeT values, LateInst op)
Definition Ops.h.inc:85
RangeT getODSOperands(unsigned index)
Definition Ops.h.inc:91
AndBoolOpGenericAdaptor(RangeT values, ::mlir::DictionaryAttr attrs, ::mlir::OpaqueProperties properties, ::mlir::RegionRange regions={})
Definition Ops.h.inc:82
std::pair< unsigned, unsigned > getODSOperandIndexAndLength(unsigned index)
Definition Ops.h.inc:87
::mlir::Value getLhs()
Definition Ops.cpp.inc:130
::mlir::Value getRhs()
Definition Ops.cpp.inc:134
static void build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Type result, ::mlir::Value lhs, ::mlir::Value rhs)
Definition Ops.cpp.inc:162
::mlir::LogicalResult verifyInvariants()
Definition Ops.cpp.inc:248
::mlir::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)
Definition Ops.cpp.inc:252
::mlir::Operation::operand_range getODSOperands(unsigned index)
Definition Ops.cpp.inc:124
::mlir::OpOperand & getLhsMutable()
Definition Ops.cpp.inc:138
void getEffects(::llvm::SmallVectorImpl<::mlir::SideEffects::EffectInstance<::mlir::MemoryEffects::Effect > > &effects)
Definition Ops.cpp.inc:315
::mlir::ParseResult parseInferredOrParsedType(::mlir::OpAsmParser &parser, ::mlir::Type &opType, bool isFirst)
Definition Ops.h.inc:156
::mlir::LogicalResult verifyInvariantsImpl()
Definition Ops.cpp.inc:216
GenericAdaptor<::llvm::ArrayRef<::mlir::Attribute > > FoldAdaptor
Definition Ops.h.inc:126
void print(::mlir::OpAsmPrinter &_odsPrinter)
Definition Ops.cpp.inc:303
static void printInferredOrParsedType(::mlir::OpAsmPrinter &printer, ::mlir::Operation *op, ::mlir::Type opType, bool isFirst)
Definition Ops.h.inc:174
::mlir::OpOperand & getRhsMutable()
Definition Ops.cpp.inc:143
::mlir::Operation::result_range getODSResults(unsigned index)
Definition Ops.cpp.inc:152
AndBoolOpAdaptor Adaptor
Definition Ops.h.inc:123
::mlir::TypedValue<::mlir::IntegerType > getResult()
Definition Ops.cpp.inc:158
::mlir::ParseResult parse(::mlir::OpAsmParser &parser, ::mlir::OperationState &result)
Definition Ops.cpp.inc:260
AndBoolOpGenericAdaptor< RangeT > GenericAdaptor
Definition Ops.h.inc:125
std::pair< unsigned, unsigned > getODSOperandIndexAndLength(unsigned index)
Definition Ops.cpp.inc:120
std::pair< unsigned, unsigned > getODSResultIndexAndLength(unsigned index)
Definition Ops.cpp.inc:148
static constexpr ::llvm::StringLiteral getOperationName()
Definition Ops.h.inc:131
static ::llvm::ArrayRef<::llvm::StringRef > getAttributeNames()
Definition Ops.h.inc:127
::mlir::LogicalResult verify(::mlir::Location loc)
Definition Ops.cpp.inc:357
AssertOpGenericAdaptor(RangeT values, ::mlir::DictionaryAttr attrs=nullptr, const Properties &properties={}, ::mlir::RegionRange regions={})
Definition Ops.h.inc:240
RangeT getODSOperands(unsigned index)
Definition Ops.h.inc:251
AssertOpGenericAdaptor(RangeT values, LateInst op)
Definition Ops.h.inc:245
std::pair< unsigned, unsigned > getODSOperandIndexAndLength(unsigned index)
Definition Ops.h.inc:247
AssertOpGenericAdaptor(RangeT values, ::mlir::DictionaryAttr attrs, ::mlir::OpaqueProperties properties, ::mlir::RegionRange regions={})
Definition Ops.h.inc:242
AssertOpGenericAdaptor(RangeT values, ::mlir::DictionaryAttr attrs=nullptr, const Properties &properties={}, ::mlir::RegionRange regions={})
Definition Ops.h.inc:240
::mlir::ParseResult parse(::mlir::OpAsmParser &parser, ::mlir::OperationState &result)
Definition Ops.cpp.inc:552
std::pair< unsigned, unsigned > getODSOperandIndexAndLength(unsigned index)
Definition Ops.cpp.inc:365
::mlir::LogicalResult verifyInvariants()
Definition Ops.cpp.inc:548
static void setInherentAttr(Properties &prop, llvm::StringRef name, mlir::Attribute value)
Definition Ops.cpp.inc:449
static void build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Value condition, ::mlir::StringAttr msg)
Definition Ops.cpp.inc:507
::mlir::Attribute getPropertiesAsAttr(::mlir::MLIRContext *ctx, const Properties &prop)
Definition Ops.cpp.inc:422
::mlir::LogicalResult verifyInherentAttrs(::mlir::OperationName opName, ::mlir::NamedAttrList &attrs, llvm::function_ref<::mlir::InFlightDiagnostic()> emitError)
Definition Ops.cpp.inc:460
static ::llvm::ArrayRef<::llvm::StringRef > getAttributeNames()
Definition Ops.h.inc:284
std::pair< unsigned, unsigned > getODSResultIndexAndLength(unsigned index)
Definition Ops.cpp.inc:384
::mlir::StringAttr getMsgAttrName(::mlir::OperationName name)
Definition Ops.h.inc:293
::mlir::Operation::operand_range getODSOperands(unsigned index)
Definition Ops.cpp.inc:369
::mlir::StringAttr getMsgAttr()
Definition Ops.cpp.inc:482
::std::optional< ::llvm::StringRef > getMsg()
Definition Ops.cpp.inc:486
GenericAdaptor<::llvm::ArrayRef<::mlir::Attribute > > FoldAdaptor
Definition Ops.h.inc:282
AssertOpGenericAdaptor< RangeT > GenericAdaptor
Definition Ops.h.inc:281
::mlir::LogicalResult readProperties(::mlir::DialectBytecodeReader &reader, ::mlir::OperationState &state)
Definition Ops.cpp.inc:469
::mlir::Attribute removeMsgAttr()
Definition Ops.cpp.inc:501
static constexpr ::llvm::StringLiteral getOperationName()
Definition Ops.h.inc:297
void setMsg(::std::optional<::llvm::StringRef > attrValue)
Definition Ops.cpp.inc:495
void setMsgAttr(::mlir::StringAttr attr)
Definition Ops.cpp.inc:491
::mlir::Operation::result_range getODSResults(unsigned index)
Definition Ops.cpp.inc:388
static llvm::hash_code computePropertiesHash(const Properties &prop)
Definition Ops.cpp.inc:438
AssertOpAdaptor Adaptor
Definition Ops.h.inc:279
::mlir::OpOperand & getConditionMutable()
Definition Ops.cpp.inc:379
void writeProperties(::mlir::DialectBytecodeWriter &writer)
Definition Ops.cpp.inc:476
void print(::mlir::OpAsmPrinter &_odsPrinter)
Definition Ops.cpp.inc:583
::mlir::LogicalResult verifyInvariantsImpl()
Definition Ops.cpp.inc:531
static void populateInherentAttrs(::mlir::MLIRContext *ctx, const Properties &prop, ::mlir::NamedAttrList &attrs)
Definition Ops.cpp.inc:456
FoldAdaptor::Properties Properties
Definition Ops.h.inc:283
::mlir::StringAttr getMsgAttrName()
Definition Ops.h.inc:289
::mlir::TypedValue<::mlir::IntegerType > getCondition()
Definition Ops.cpp.inc:375
::mlir::LogicalResult setPropertiesFromAttr(Properties &prop, ::mlir::Attribute attr, ::llvm::function_ref<::mlir::InFlightDiagnostic()> emitError)
Definition Ops.cpp.inc:394
void getEffects(::llvm::SmallVectorImpl<::mlir::SideEffects::EffectInstance<::mlir::MemoryEffects::Effect > > &effects)
Definition Ops.cpp:28
static std::optional< mlir::Attribute > getInherentAttr(::mlir::MLIRContext *ctx, const Properties &prop, llvm::StringRef name)
Definition Ops.cpp.inc:443
::mlir::LogicalResult verify(::mlir::Location loc)
Definition Ops.cpp.inc:635
CmpOpGenericAdaptor(RangeT values, ::mlir::DictionaryAttr attrs=nullptr, const Properties &properties={}, ::mlir::RegionRange regions={})
Definition Ops.h.inc:403
RangeT getODSOperands(unsigned index)
Definition Ops.h.inc:414
std::pair< unsigned, unsigned > getODSOperandIndexAndLength(unsigned index)
Definition Ops.h.inc:410
CmpOpGenericAdaptor(RangeT values, ::mlir::DictionaryAttr attrs, ::mlir::OpaqueProperties properties, ::mlir::RegionRange regions={})
Definition Ops.h.inc:405
CmpOpGenericAdaptor(RangeT values, LateInst op)
Definition Ops.h.inc:408
CmpOpGenericAdaptor(RangeT values, ::mlir::DictionaryAttr attrs=nullptr, const Properties &properties={}, ::mlir::RegionRange regions={})
Definition Ops.h.inc:403
void getEffects(::llvm::SmallVectorImpl<::mlir::SideEffects::EffectInstance<::mlir::MemoryEffects::Effect > > &effects)
Definition Ops.cpp.inc:982
static void build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Type result, ::llzk::boolean::FeltCmpPredicateAttr predicate, ::mlir::Value lhs, ::mlir::Value rhs)
Definition Ops.cpp.inc:790
::mlir::LogicalResult readProperties(::mlir::DialectBytecodeReader &reader, ::mlir::OperationState &state)
Definition Ops.cpp.inc:761
::llzk::boolean::FeltCmpPredicateAttr getPredicateAttr()
Definition Ops.cpp.inc:773
std::pair< unsigned, unsigned > getODSResultIndexAndLength(unsigned index)
Definition Ops.cpp.inc:672
static void populateInherentAttrs(::mlir::MLIRContext *ctx, const Properties &prop, ::mlir::NamedAttrList &attrs)
Definition Ops.cpp.inc:748
::mlir::StringAttr getPredicateAttrName()
Definition Ops.h.inc:456
static constexpr ::llvm::StringLiteral getOperationName()
Definition Ops.h.inc:464
CmpOpAdaptor Adaptor
Definition Ops.h.inc:446
::mlir::ParseResult parse(::mlir::OpAsmParser &parser, ::mlir::OperationState &result)
Definition Ops.cpp.inc:923
::mlir::LogicalResult verifyInvariantsImpl()
Definition Ops.cpp.inc:878
static std::optional< mlir::Attribute > getInherentAttr(::mlir::MLIRContext *ctx, const Properties &prop, llvm::StringRef name)
Definition Ops.cpp.inc:735
::mlir::TypedValue<::llzk::felt::FeltType > getRhs()
Definition Ops.cpp.inc:658
::mlir::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)
Definition Ops.cpp.inc:915
GenericAdaptor<::llvm::ArrayRef<::mlir::Attribute > > FoldAdaptor
Definition Ops.h.inc:449
::mlir::Attribute getPropertiesAsAttr(::mlir::MLIRContext *ctx, const Properties &prop)
Definition Ops.cpp.inc:714
std::pair< unsigned, unsigned > getODSOperandIndexAndLength(unsigned index)
Definition Ops.cpp.inc:644
::llzk::boolean::FeltCmpPredicate getPredicate()
Definition Ops.cpp.inc:777
::mlir::TypedValue<::mlir::IntegerType > getResult()
Definition Ops.cpp.inc:682
::mlir::Operation::result_range getODSResults(unsigned index)
Definition Ops.cpp.inc:676
::mlir::Operation::operand_range getODSOperands(unsigned index)
Definition Ops.cpp.inc:648
void setPredicate(::llzk::boolean::FeltCmpPredicate attrValue)
Definition Ops.cpp.inc:786
static ::llvm::ArrayRef<::llvm::StringRef > getAttributeNames()
Definition Ops.h.inc:451
::mlir::LogicalResult verifyInherentAttrs(::mlir::OperationName opName, ::mlir::NamedAttrList &attrs, llvm::function_ref<::mlir::InFlightDiagnostic()> emitError)
Definition Ops.cpp.inc:752
::mlir::OpOperand & getRhsMutable()
Definition Ops.cpp.inc:667
::mlir::LogicalResult verifyInvariants()
Definition Ops.cpp.inc:911
CmpOpGenericAdaptor< RangeT > GenericAdaptor
Definition Ops.h.inc:448
FoldAdaptor::Properties Properties
Definition Ops.h.inc:450
void setPredicateAttr(::llzk::boolean::FeltCmpPredicateAttr attr)
Definition Ops.cpp.inc:782
void print(::mlir::OpAsmPrinter &_odsPrinter)
Definition Ops.cpp.inc:969
void writeProperties(::mlir::DialectBytecodeWriter &writer)
Definition Ops.cpp.inc:768
::mlir::OpOperand & getLhsMutable()
Definition Ops.cpp.inc:662
static llvm::hash_code computePropertiesHash(const Properties &prop)
Definition Ops.cpp.inc:730
static void setInherentAttr(Properties &prop, llvm::StringRef name, mlir::Attribute value)
Definition Ops.cpp.inc:741
::mlir::StringAttr getPredicateAttrName(::mlir::OperationName name)
Definition Ops.h.inc:460
::mlir::TypedValue<::llzk::felt::FeltType > getLhs()
Definition Ops.cpp.inc:654
::mlir::LogicalResult setPropertiesFromAttr(Properties &prop, ::mlir::Attribute attr, ::llvm::function_ref<::mlir::InFlightDiagnostic()> emitError)
Definition Ops.cpp.inc:686
::mlir::LogicalResult verify(::mlir::Location loc)
Definition Ops.cpp.inc:1014
NotBoolOpGenericAdaptor(RangeT values, ::mlir::DictionaryAttr attrs=nullptr, const ::mlir::EmptyProperties &properties={}, ::mlir::RegionRange regions={})
Definition Ops.h.inc:551
RangeT getODSOperands(unsigned index)
Definition Ops.h.inc:562
std::pair< unsigned, unsigned > getODSOperandIndexAndLength(unsigned index)
Definition Ops.h.inc:558
NotBoolOpGenericAdaptor(RangeT values, ::mlir::DictionaryAttr attrs, ::mlir::OpaqueProperties properties, ::mlir::RegionRange regions={})
Definition Ops.h.inc:553
NotBoolOpGenericAdaptor(RangeT values, LateInst op)
Definition Ops.h.inc:556
NotBoolOpGenericAdaptor(RangeT values, ::mlir::DictionaryAttr attrs=nullptr, const ::mlir::EmptyProperties &properties={}, ::mlir::RegionRange regions={})
Definition Ops.h.inc:551
::mlir::TypedValue<::mlir::IntegerType > getResult()
Definition Ops.cpp.inc:1047
NotBoolOpAdaptor Adaptor
Definition Ops.h.inc:590
GenericAdaptor<::llvm::ArrayRef<::mlir::Attribute > > FoldAdaptor
Definition Ops.h.inc:593
static void printInferredOrParsedType(::mlir::OpAsmPrinter &printer, ::mlir::Operation *op, ::mlir::Type opType, bool isFirst)
Definition Ops.h.inc:639
void print(::mlir::OpAsmPrinter &_odsPrinter)
Definition Ops.cpp.inc:1164
::mlir::ParseResult parse(::mlir::OpAsmParser &parser, ::mlir::OperationState &result)
Definition Ops.cpp.inc:1138
void getEffects(::llvm::SmallVectorImpl<::mlir::SideEffects::EffectInstance<::mlir::MemoryEffects::Effect > > &effects)
Definition Ops.cpp.inc:1172
static void build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Type result, ::mlir::Value operand)
Definition Ops.cpp.inc:1051
static ::llvm::ArrayRef<::llvm::StringRef > getAttributeNames()
Definition Ops.h.inc:594
::mlir::LogicalResult verifyInvariantsImpl()
Definition Ops.cpp.inc:1102
static constexpr ::llvm::StringLiteral getOperationName()
Definition Ops.h.inc:598
::mlir::Value getOperand()
Definition Ops.cpp.inc:1028
std::pair< unsigned, unsigned > getODSResultIndexAndLength(unsigned index)
Definition Ops.cpp.inc:1037
::mlir::ParseResult parseInferredOrParsedType(::mlir::OpAsmParser &parser, ::mlir::Type &opType, bool isFirst)
Definition Ops.h.inc:621
NotBoolOpGenericAdaptor< RangeT > GenericAdaptor
Definition Ops.h.inc:592
::mlir::LogicalResult verifyInvariants()
Definition Ops.cpp.inc:1126
::mlir::OpOperand & getOperandMutable()
Definition Ops.cpp.inc:1032
::mlir::Operation::result_range getODSResults(unsigned index)
Definition Ops.cpp.inc:1041
::mlir::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)
Definition Ops.cpp.inc:1130
::mlir::Operation::operand_range getODSOperands(unsigned index)
Definition Ops.cpp.inc:1022
std::pair< unsigned, unsigned > getODSOperandIndexAndLength(unsigned index)
Definition Ops.cpp.inc:1018
::mlir::LogicalResult verify(::mlir::Location loc)
Definition Ops.cpp.inc:1204
OrBoolOpGenericAdaptor(RangeT values, ::mlir::DictionaryAttr attrs=nullptr, const ::mlir::EmptyProperties &properties={}, ::mlir::RegionRange regions={})
Definition Ops.h.inc:678
RangeT getODSOperands(unsigned index)
Definition Ops.h.inc:689
std::pair< unsigned, unsigned > getODSOperandIndexAndLength(unsigned index)
Definition Ops.h.inc:685
OrBoolOpGenericAdaptor(RangeT values, LateInst op)
Definition Ops.h.inc:683
OrBoolOpGenericAdaptor(RangeT values, ::mlir::DictionaryAttr attrs=nullptr, const ::mlir::EmptyProperties &properties={}, ::mlir::RegionRange regions={})
Definition Ops.h.inc:678
OrBoolOpGenericAdaptor(RangeT values, ::mlir::DictionaryAttr attrs, ::mlir::OpaqueProperties properties, ::mlir::RegionRange regions={})
Definition Ops.h.inc:680
OrBoolOpAdaptor Adaptor
Definition Ops.h.inc:721
::mlir::LogicalResult verifyInvariantsImpl()
Definition Ops.cpp.inc:1304
::mlir::OpOperand & getLhsMutable()
Definition Ops.cpp.inc:1226
::mlir::Value getRhs()
Definition Ops.cpp.inc:1222
GenericAdaptor<::llvm::ArrayRef<::mlir::Attribute > > FoldAdaptor
Definition Ops.h.inc:724
void getEffects(::llvm::SmallVectorImpl<::mlir::SideEffects::EffectInstance<::mlir::MemoryEffects::Effect > > &effects)
Definition Ops.cpp.inc:1403
::mlir::Value getLhs()
Definition Ops.cpp.inc:1218
void print(::mlir::OpAsmPrinter &_odsPrinter)
Definition Ops.cpp.inc:1391
static void printInferredOrParsedType(::mlir::OpAsmPrinter &printer, ::mlir::Operation *op, ::mlir::Type opType, bool isFirst)
Definition Ops.h.inc:772
::mlir::ParseResult parseInferredOrParsedType(::mlir::OpAsmParser &parser, ::mlir::Type &opType, bool isFirst)
Definition Ops.h.inc:754
static void build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Type result, ::mlir::Value lhs, ::mlir::Value rhs)
Definition Ops.cpp.inc:1250
std::pair< unsigned, unsigned > getODSOperandIndexAndLength(unsigned index)
Definition Ops.cpp.inc:1208
::mlir::Operation::operand_range getODSOperands(unsigned index)
Definition Ops.cpp.inc:1212
OrBoolOpGenericAdaptor< RangeT > GenericAdaptor
Definition Ops.h.inc:723
::mlir::TypedValue<::mlir::IntegerType > getResult()
Definition Ops.cpp.inc:1246
::mlir::Operation::result_range getODSResults(unsigned index)
Definition Ops.cpp.inc:1240
::mlir::LogicalResult verifyInvariants()
Definition Ops.cpp.inc:1336
::mlir::ParseResult parse(::mlir::OpAsmParser &parser, ::mlir::OperationState &result)
Definition Ops.cpp.inc:1348
static ::llvm::ArrayRef<::llvm::StringRef > getAttributeNames()
Definition Ops.h.inc:725
::mlir::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)
Definition Ops.cpp.inc:1340
static constexpr ::llvm::StringLiteral getOperationName()
Definition Ops.h.inc:729
::mlir::OpOperand & getRhsMutable()
Definition Ops.cpp.inc:1231
std::pair< unsigned, unsigned > getODSResultIndexAndLength(unsigned index)
Definition Ops.cpp.inc:1236
XorBoolOpGenericAdaptor(RangeT values, ::mlir::DictionaryAttr attrs=nullptr, const ::mlir::EmptyProperties &properties={}, ::mlir::RegionRange regions={})
Definition Ops.h.inc:811
::mlir::LogicalResult verify(::mlir::Location loc)
Definition Ops.cpp.inc:1435
XorBoolOpGenericAdaptor(RangeT values, ::mlir::DictionaryAttr attrs=nullptr, const ::mlir::EmptyProperties &properties={}, ::mlir::RegionRange regions={})
Definition Ops.h.inc:811
XorBoolOpGenericAdaptor(RangeT values, ::mlir::DictionaryAttr attrs, ::mlir::OpaqueProperties properties, ::mlir::RegionRange regions={})
Definition Ops.h.inc:813
std::pair< unsigned, unsigned > getODSOperandIndexAndLength(unsigned index)
Definition Ops.h.inc:818
XorBoolOpGenericAdaptor(RangeT values, LateInst op)
Definition Ops.h.inc:816
RangeT getODSOperands(unsigned index)
Definition Ops.h.inc:822
GenericAdaptor<::llvm::ArrayRef<::mlir::Attribute > > FoldAdaptor
Definition Ops.h.inc:857
static ::llvm::ArrayRef<::llvm::StringRef > getAttributeNames()
Definition Ops.h.inc:858
::mlir::TypedValue<::mlir::IntegerType > getResult()
Definition Ops.cpp.inc:1477
std::pair< unsigned, unsigned > getODSOperandIndexAndLength(unsigned index)
Definition Ops.cpp.inc:1439
XorBoolOpAdaptor Adaptor
Definition Ops.h.inc:854
std::pair< unsigned, unsigned > getODSResultIndexAndLength(unsigned index)
Definition Ops.cpp.inc:1467
::mlir::OpOperand & getRhsMutable()
Definition Ops.cpp.inc:1462
::mlir::Operation::result_range getODSResults(unsigned index)
Definition Ops.cpp.inc:1471
::mlir::Operation::operand_range getODSOperands(unsigned index)
Definition Ops.cpp.inc:1443
::mlir::LogicalResult verifyInvariantsImpl()
Definition Ops.cpp.inc:1535
void print(::mlir::OpAsmPrinter &_odsPrinter)
Definition Ops.cpp.inc:1622
::mlir::LogicalResult verifyInvariants()
Definition Ops.cpp.inc:1567
static void build(::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::Type result, ::mlir::Value lhs, ::mlir::Value rhs)
Definition Ops.cpp.inc:1481
XorBoolOpGenericAdaptor< RangeT > GenericAdaptor
Definition Ops.h.inc:856
static void printInferredOrParsedType(::mlir::OpAsmPrinter &printer, ::mlir::Operation *op, ::mlir::Type opType, bool isFirst)
Definition Ops.h.inc:905
::mlir::Value getRhs()
Definition Ops.cpp.inc:1453
::mlir::OpOperand & getLhsMutable()
Definition Ops.cpp.inc:1457
static constexpr ::llvm::StringLiteral getOperationName()
Definition Ops.h.inc:862
void getEffects(::llvm::SmallVectorImpl<::mlir::SideEffects::EffectInstance<::mlir::MemoryEffects::Effect > > &effects)
Definition Ops.cpp.inc:1634
::mlir::ParseResult parseInferredOrParsedType(::mlir::OpAsmParser &parser, ::mlir::Type &opType, bool isFirst)
Definition Ops.h.inc:887
::mlir::ParseResult parse(::mlir::OpAsmParser &parser, ::mlir::OperationState &result)
Definition Ops.cpp.inc:1579
::mlir::Value getLhs()
Definition Ops.cpp.inc:1449
::mlir::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)
Definition Ops.cpp.inc:1571
AndBoolOpGenericAdaptorBase(::mlir::DictionaryAttr attrs=nullptr, const ::mlir::EmptyProperties &properties={}, ::mlir::RegionRange regions={})
Definition Ops.cpp.inc:99
std::pair< unsigned, unsigned > getODSOperandIndexAndLength(unsigned index, unsigned odsOperandsSize)
Definition Ops.cpp.inc:105
::std::optional<::mlir::OperationName > odsOpName
Definition Ops.h.inc:64
::std::optional<::mlir::OperationName > odsOpName
Definition Ops.h.inc:217
AssertOpGenericAdaptorBase(::mlir::DictionaryAttr attrs=nullptr, const Properties &properties={}, ::mlir::RegionRange regions={})
Definition Ops.cpp.inc:330
::std::optional< ::llvm::StringRef > getMsg()
Definition Ops.cpp.inc:349
std::pair< unsigned, unsigned > getODSOperandIndexAndLength(unsigned index, unsigned odsOperandsSize)
Definition Ops.cpp.inc:336
::std::optional<::mlir::OperationName > odsOpName
Definition Ops.h.inc:380
std::pair< unsigned, unsigned > getODSOperandIndexAndLength(unsigned index, unsigned odsOperandsSize)
Definition Ops.cpp.inc:614
::llzk::boolean::FeltCmpPredicate getPredicate()
Definition Ops.cpp.inc:627
::llzk::boolean::FeltCmpPredicateAttr getPredicateAttr()
Definition Ops.cpp.inc:622
CmpOpGenericAdaptorBase(::mlir::DictionaryAttr attrs=nullptr, const Properties &properties={}, ::mlir::RegionRange regions={})
Definition Ops.cpp.inc:608
NotBoolOpGenericAdaptorBase(::mlir::DictionaryAttr attrs=nullptr, const ::mlir::EmptyProperties &properties={}, ::mlir::RegionRange regions={})
Definition Ops.cpp.inc:997
::std::optional<::mlir::OperationName > odsOpName
Definition Ops.h.inc:535
std::pair< unsigned, unsigned > getODSOperandIndexAndLength(unsigned index, unsigned odsOperandsSize)
Definition Ops.cpp.inc:1003
OrBoolOpGenericAdaptorBase(::mlir::DictionaryAttr attrs=nullptr, const ::mlir::EmptyProperties &properties={}, ::mlir::RegionRange regions={})
Definition Ops.cpp.inc:1187
std::pair< unsigned, unsigned > getODSOperandIndexAndLength(unsigned index, unsigned odsOperandsSize)
Definition Ops.cpp.inc:1193
::std::optional<::mlir::OperationName > odsOpName
Definition Ops.h.inc:662
std::pair< unsigned, unsigned > getODSOperandIndexAndLength(unsigned index, unsigned odsOperandsSize)
Definition Ops.cpp.inc:1424
XorBoolOpGenericAdaptorBase(::mlir::DictionaryAttr attrs=nullptr, const ::mlir::EmptyProperties &properties={}, ::mlir::RegionRange regions={})
Definition Ops.cpp.inc:1418
::std::optional<::mlir::OperationName > odsOpName
Definition Ops.h.inc:795
void setMsg(const ::mlir::StringAttr &propValue)
Definition Ops.h.inc:203
::llzk::boolean::FeltCmpPredicateAttr predicateTy
Definition Ops.h.inc:359
void setPredicate(const ::llzk::boolean::FeltCmpPredicateAttr &propValue)
Definition Ops.h.inc:366