17 MlirOperationState state = mlirOperationStateGet(mlirStringRefCreateFromCString(
"verif.det.assume"), location);
18 mlirOperationStateAddOperands(&state, 1, &hint);
24 return llvm::isa<AssumeDetOp>(unwrap(inp));
28 auto range = llvm::cast<AssumeDetOp>(unwrap(op)).getODSOperandIndexAndLength(0);
29 assert(range.second == 1 &&
"expected fixed operand segment size");
31 static_cast<uintptr_t
>(range.first) <=
static_cast<uintptr_t
>(std::numeric_limits<intptr_t>::max()) &&
32 "operand index exceeds intptr_t range"
34 return mlirOperationGetOperand(op,
static_cast<intptr_t
>(range.first));
38 auto range = llvm::cast<AssumeDetOp>(unwrap(op)).getODSOperandIndexAndLength(0);
39 assert(range.second == 1 &&
"expected fixed operand segment size");
41 static_cast<uintptr_t
>(range.first) <=
static_cast<uintptr_t
>(std::numeric_limits<intptr_t>::max()) &&
42 "operand index exceeds intptr_t range"
44 mlirOperationSetOperand(op,
static_cast<intptr_t
>(range.first), value);
48 MlirOperationState state = mlirOperationStateGet(mlirStringRefCreateFromCString(
"verif.contract_end"), location);
54 return llvm::isa<ContractEndOp>(unwrap(inp));
58 return llvm::isa<ContractOp>(unwrap(inp));
62 return mlirOperationGetAttributeByName(op, mlirStringRefCreateFromCString(
"sym_name"));
66 mlirOperationSetAttributeByName(op, mlirStringRefCreateFromCString(
"sym_name"), attr);
70 return mlirOperationGetAttributeByName(op, mlirStringRefCreateFromCString(
"target"));
74 mlirOperationSetAttributeByName(op, mlirStringRefCreateFromCString(
"target"), attr);
78 return mlirOperationGetAttributeByName(op, mlirStringRefCreateFromCString(
"function_type"));
82 mlirOperationSetAttributeByName(op, mlirStringRefCreateFromCString(
"function_type"), attr);
86 return mlirOperationGetAttributeByName(op, mlirStringRefCreateFromCString(
"arg_attrs"));
90 mlirOperationSetAttributeByName(op, mlirStringRefCreateFromCString(
"arg_attrs"), attr);
94 return mlirOperationGetAttributeByName(op, mlirStringRefCreateFromCString(
"res_attrs"));
98 mlirOperationSetAttributeByName(op, mlirStringRefCreateFromCString(
"res_attrs"), attr);
102 return mlirOperationGetRegion(op, 0);
106 return llvm::cast<ContractOp>(unwrap(inp)).isDeclaration();
110 return llvm::cast<ContractOp>(unwrap(inp)).hasArgPublicAttr(index);
114 return llvm::cast<ContractOp>(unwrap(inp)).hasFuncTarget();
118 return llvm::cast<ContractOp>(unwrap(inp)).hasStructTarget();
122 return wrap(llvm::cast<ContractOp>(unwrap(inp)).getCallableRegion());
126 return llvm::cast<ContractOp>(unwrap(inp)).hasArgName(index);
130 return wrap(llvm::cast<ContractOp>(unwrap(inp)).getFullyQualifiedName(requireParent));
134 MlirOperationState state = mlirOperationStateGet(mlirStringRefCreateFromCString(
"verif.decreases"), location);
135 mlirOperationStateAddOperands(&state, 1, &value);
141 return llvm::isa<DecreasesOp>(unwrap(inp));
145 auto range = llvm::cast<DecreasesOp>(unwrap(op)).getODSOperandIndexAndLength(0);
146 assert(range.second == 1 &&
"expected fixed operand segment size");
148 static_cast<uintptr_t
>(range.first) <=
static_cast<uintptr_t
>(std::numeric_limits<intptr_t>::max()) &&
149 "operand index exceeds intptr_t range"
151 return mlirOperationGetOperand(op,
static_cast<intptr_t
>(range.first));
155 auto range = llvm::cast<DecreasesOp>(unwrap(op)).getODSOperandIndexAndLength(0);
156 assert(range.second == 1 &&
"expected fixed operand segment size");
158 static_cast<uintptr_t
>(range.first) <=
static_cast<uintptr_t
>(std::numeric_limits<intptr_t>::max()) &&
159 "operand index exceeds intptr_t range"
161 mlirOperationSetOperand(op,
static_cast<intptr_t
>(range.first), value);
165 MlirOperationState state = mlirOperationStateGet(mlirStringRefCreateFromCString(
"verif.ensure_compute"), location);
166 mlirOperationStateAddOperands(&state, 1, &condition);
172 return llvm::isa<EnsureComputeOp>(unwrap(inp));
176 auto range = llvm::cast<EnsureComputeOp>(unwrap(op)).getODSOperandIndexAndLength(0);
177 assert(range.second == 1 &&
"expected fixed operand segment size");
179 static_cast<uintptr_t
>(range.first) <=
static_cast<uintptr_t
>(std::numeric_limits<intptr_t>::max()) &&
180 "operand index exceeds intptr_t range"
182 return mlirOperationGetOperand(op,
static_cast<intptr_t
>(range.first));
186 auto range = llvm::cast<EnsureComputeOp>(unwrap(op)).getODSOperandIndexAndLength(0);
187 assert(range.second == 1 &&
"expected fixed operand segment size");
189 static_cast<uintptr_t
>(range.first) <=
static_cast<uintptr_t
>(std::numeric_limits<intptr_t>::max()) &&
190 "operand index exceeds intptr_t range"
192 mlirOperationSetOperand(op,
static_cast<intptr_t
>(range.first), value);
196 MlirOperationState state = mlirOperationStateGet(mlirStringRefCreateFromCString(
"verif.ensure_constrain"), location);
197 mlirOperationStateAddOperands(&state, 1, &condition);
203 return llvm::isa<EnsureConstrainOp>(unwrap(inp));
207 auto range = llvm::cast<EnsureConstrainOp>(unwrap(op)).getODSOperandIndexAndLength(0);
208 assert(range.second == 1 &&
"expected fixed operand segment size");
210 static_cast<uintptr_t
>(range.first) <=
static_cast<uintptr_t
>(std::numeric_limits<intptr_t>::max()) &&
211 "operand index exceeds intptr_t range"
213 return mlirOperationGetOperand(op,
static_cast<intptr_t
>(range.first));
217 auto range = llvm::cast<EnsureConstrainOp>(unwrap(op)).getODSOperandIndexAndLength(0);
218 assert(range.second == 1 &&
"expected fixed operand segment size");
220 static_cast<uintptr_t
>(range.first) <=
static_cast<uintptr_t
>(std::numeric_limits<intptr_t>::max()) &&
221 "operand index exceeds intptr_t range"
223 mlirOperationSetOperand(op,
static_cast<intptr_t
>(range.first), value);
227 return llvm::isa<IncludeOp>(unwrap(inp));
231 auto range = llvm::cast<IncludeOp>(unwrap(op)).getODSOperandIndexAndLength(0);
236 auto range = llvm::cast<IncludeOp>(unwrap(op)).getODSOperandIndexAndLength(0);
237 assert(index >= 0 && index < range.second &&
"variadic operand index out of range");
239 static_cast<uintptr_t
>(range.first) <=
static_cast<uintptr_t
>(std::numeric_limits<intptr_t>::max()) &&
240 "operand index exceeds intptr_t range"
242 return mlirOperationGetOperand(op,
static_cast<intptr_t
>(range.first) + index);
248 ::llvm::SmallVector<::mlir::Value> vals;
249 vals.reserve(
static_cast<size_t>(count));
250 for (intptr_t i = 0; i < count; ++i)
251 vals.push_back(unwrap(values[i]));
252 ::llvm::cast<IncludeOp>(unwrap(op)).getArgOperandsMutable().assign(vals);
256 auto range = llvm::cast<IncludeOp>(unwrap(op)).getODSOperandIndexAndLength(1);
261 auto range = llvm::cast<IncludeOp>(unwrap(op)).getODSOperandIndexAndLength(1);
262 assert(index >= 0 && index < range.second &&
"variadic operand index out of range");
264 static_cast<uintptr_t
>(range.first) <=
static_cast<uintptr_t
>(std::numeric_limits<intptr_t>::max()) &&
265 "operand index exceeds intptr_t range"
267 return mlirOperationGetOperand(op,
static_cast<intptr_t
>(range.first) + index);
274 ::llvm::SmallVector<::mlir::Value> vals;
275 for (intptr_t g = 0; g < groupCount; ++g) {
276 assert(groups[g].size >= 0 &&
"group size must be non-negative");
277 for (intptr_t i = 0; i < groups[g].
size; ++i) {
278 vals.push_back(unwrap(groups[g].values[i]));
281 ::llvm::cast<IncludeOp>(unwrap(op)).getMapOperandsMutable().join().assign(vals);
283 ::llvm::SmallVector<int32_t> newGroupSizes;
284 newGroupSizes.reserve(
static_cast<size_t>(groupCount));
285 for (intptr_t g = 0; g < groupCount; ++g) {
287 groups[g].size <=
static_cast<intptr_t
>(std::numeric_limits<int32_t>::max()) &&
288 "group size exceeds int32_t range"
290 newGroupSizes.push_back(
static_cast<int32_t
>(groups[g].size));
292 MlirContext ctx = mlirOperationGetContext(op);
294 newGroupSizes.size() <=
static_cast<size_t>(std::numeric_limits<intptr_t>::max()) &&
295 "group count exceeds intptr_t range"
297 mlirOperationSetAttributeByName(
298 op, mlirStringRefCreateFromCString(
"mapOpGroupSizes"),
299 mlirDenseI32ArrayGet(ctx,
static_cast<intptr_t
>(newGroupSizes.size()), newGroupSizes.data())
304 return mlirOperationGetAttributeByName(op, mlirStringRefCreateFromCString(
"callee"));
308 mlirOperationSetAttributeByName(op, mlirStringRefCreateFromCString(
"callee"), attr);
312 return mlirOperationGetAttributeByName(op, mlirStringRefCreateFromCString(
"templateParams"));
316 mlirOperationSetAttributeByName(op, mlirStringRefCreateFromCString(
"templateParams"), attr);
320 return mlirOperationGetAttributeByName(op, mlirStringRefCreateFromCString(
"numDimsPerMap"));
324 mlirOperationSetAttributeByName(op, mlirStringRefCreateFromCString(
"numDimsPerMap"), attr);
328 return mlirOperationGetAttributeByName(op, mlirStringRefCreateFromCString(
"mapOpGroupSizes"));
332 mlirOperationSetAttributeByName(op, mlirStringRefCreateFromCString(
"mapOpGroupSizes"), attr);
336 return mlirOperationGetAttributeByName(op, mlirStringRefCreateFromCString(
"arg_attrs"));
340 mlirOperationSetAttributeByName(op, mlirStringRefCreateFromCString(
"arg_attrs"), attr);
344 return mlirOperationGetAttributeByName(op, mlirStringRefCreateFromCString(
"res_attrs"));
348 mlirOperationSetAttributeByName(op, mlirStringRefCreateFromCString(
"res_attrs"), attr);
352 return llvm::cast<IncludeOp>(unwrap(inp)).contractTargetsStruct();
356 return wrap(llvm::cast<IncludeOp>(unwrap(inp)).resolveCallable());
360 return wrap(llvm::cast<IncludeOp>(unwrap(inp)).getSelfValue());
364 MlirOperationState state = mlirOperationStateGet(mlirStringRefCreateFromCString(
"verif.increases"), location);
365 mlirOperationStateAddOperands(&state, 1, &value);
371 return llvm::isa<IncreasesOp>(unwrap(inp));
375 auto range = llvm::cast<IncreasesOp>(unwrap(op)).getODSOperandIndexAndLength(0);
376 assert(range.second == 1 &&
"expected fixed operand segment size");
378 static_cast<uintptr_t
>(range.first) <=
static_cast<uintptr_t
>(std::numeric_limits<intptr_t>::max()) &&
379 "operand index exceeds intptr_t range"
381 return mlirOperationGetOperand(op,
static_cast<intptr_t
>(range.first));
385 auto range = llvm::cast<IncreasesOp>(unwrap(op)).getODSOperandIndexAndLength(0);
386 assert(range.second == 1 &&
"expected fixed operand segment size");
388 static_cast<uintptr_t
>(range.first) <=
static_cast<uintptr_t
>(std::numeric_limits<intptr_t>::max()) &&
389 "operand index exceeds intptr_t range"
391 mlirOperationSetOperand(op,
static_cast<intptr_t
>(range.first), value);
395 return llvm::isa<InvariantOp>(unwrap(inp));
399 return mlirOperationGetAttributeByName(op, mlirStringRefCreateFromCString(
"loop_name"));
403 mlirOperationSetAttributeByName(op, mlirStringRefCreateFromCString(
"loop_name"), attr);
407 return mlirOperationGetAttributeByName(op, mlirStringRefCreateFromCString(
"loop_arg_types"));
411 mlirOperationSetAttributeByName(op, mlirStringRefCreateFromCString(
"loop_arg_types"), attr);
415 return mlirOperationGetRegion(op, 0);
419 return wrap(llvm::cast<InvariantOp>(unwrap(inp)).getParentContract());
423 MlirOperationState state = mlirOperationStateGet(mlirStringRefCreateFromCString(
"verif.old"), location);
424 mlirOperationStateEnableResultTypeInference(&state);
425 mlirOperationStateAddOperands(&state, 1, &value);
431 return llvm::isa<OldOp>(unwrap(inp));
435 auto range = llvm::cast<OldOp>(unwrap(op)).getODSOperandIndexAndLength(0);
436 assert(range.second == 1 &&
"expected fixed operand segment size");
438 static_cast<uintptr_t
>(range.first) <=
static_cast<uintptr_t
>(std::numeric_limits<intptr_t>::max()) &&
439 "operand index exceeds intptr_t range"
441 return mlirOperationGetOperand(op,
static_cast<intptr_t
>(range.first));
445 auto range = llvm::cast<OldOp>(unwrap(op)).getODSOperandIndexAndLength(0);
446 assert(range.second == 1 &&
"expected fixed operand segment size");
448 static_cast<uintptr_t
>(range.first) <=
static_cast<uintptr_t
>(std::numeric_limits<intptr_t>::max()) &&
449 "operand index exceeds intptr_t range"
451 mlirOperationSetOperand(op,
static_cast<intptr_t
>(range.first), value);
455 return mlirOperationGetResult(op, 0);
459 MlirOperationState state = mlirOperationStateGet(mlirStringRefCreateFromCString(
"verif.det.prove"), location);
460 mlirOperationStateEnableResultTypeInference(&state);
461 mlirOperationStateAddOperands(&state, 1, &condition);
467 return llvm::isa<ProveDetOp>(unwrap(inp));
471 auto range = llvm::cast<ProveDetOp>(unwrap(op)).getODSOperandIndexAndLength(0);
472 assert(range.second == 1 &&
"expected fixed operand segment size");
474 static_cast<uintptr_t
>(range.first) <=
static_cast<uintptr_t
>(std::numeric_limits<intptr_t>::max()) &&
475 "operand index exceeds intptr_t range"
477 return mlirOperationGetOperand(op,
static_cast<intptr_t
>(range.first));
481 auto range = llvm::cast<ProveDetOp>(unwrap(op)).getODSOperandIndexAndLength(0);
482 assert(range.second == 1 &&
"expected fixed operand segment size");
484 static_cast<uintptr_t
>(range.first) <=
static_cast<uintptr_t
>(std::numeric_limits<intptr_t>::max()) &&
485 "operand index exceeds intptr_t range"
487 mlirOperationSetOperand(op,
static_cast<intptr_t
>(range.first), value);
491 return mlirOperationGetResult(op, 0);
495 MlirOperationState state = mlirOperationStateGet(mlirStringRefCreateFromCString(
"verif.require_compute"), location);
496 mlirOperationStateAddOperands(&state, 1, &condition);
502 return llvm::isa<RequireComputeOp>(unwrap(inp));
506 auto range = llvm::cast<RequireComputeOp>(unwrap(op)).getODSOperandIndexAndLength(0);
507 assert(range.second == 1 &&
"expected fixed operand segment size");
509 static_cast<uintptr_t
>(range.first) <=
static_cast<uintptr_t
>(std::numeric_limits<intptr_t>::max()) &&
510 "operand index exceeds intptr_t range"
512 return mlirOperationGetOperand(op,
static_cast<intptr_t
>(range.first));
516 auto range = llvm::cast<RequireComputeOp>(unwrap(op)).getODSOperandIndexAndLength(0);
517 assert(range.second == 1 &&
"expected fixed operand segment size");
519 static_cast<uintptr_t
>(range.first) <=
static_cast<uintptr_t
>(std::numeric_limits<intptr_t>::max()) &&
520 "operand index exceeds intptr_t range"
522 mlirOperationSetOperand(op,
static_cast<intptr_t
>(range.first), value);
526 MlirOperationState state = mlirOperationStateGet(mlirStringRefCreateFromCString(
"verif.require_constrain"), location);
527 mlirOperationStateAddOperands(&state, 1, &condition);
533 return llvm::isa<RequireConstrainOp>(unwrap(inp));
537 auto range = llvm::cast<RequireConstrainOp>(unwrap(op)).getODSOperandIndexAndLength(0);
538 assert(range.second == 1 &&
"expected fixed operand segment size");
540 static_cast<uintptr_t
>(range.first) <=
static_cast<uintptr_t
>(std::numeric_limits<intptr_t>::max()) &&
541 "operand index exceeds intptr_t range"
543 return mlirOperationGetOperand(op,
static_cast<intptr_t
>(range.first));
547 auto range = llvm::cast<RequireConstrainOp>(unwrap(op)).getODSOperandIndexAndLength(0);
548 assert(range.second == 1 &&
"expected fixed operand segment size");
550 static_cast<uintptr_t
>(range.first) <=
static_cast<uintptr_t
>(std::numeric_limits<intptr_t>::max()) &&
551 "operand index exceeds intptr_t range"
553 mlirOperationSetOperand(op,
static_cast<intptr_t
>(range.first), value);
557 MlirOperationState state = mlirOperationStateGet(mlirStringRefCreateFromCString(
"verif.step"), location);
558 llvm::SmallVector<MlirRegion, 1> regions;
559 regions.push_back(mlirRegionCreate());
560 mlirOperationStateAddOwnedRegions(&state, regions.size(), regions.data());
566 return llvm::isa<StepOp>(unwrap(inp));
570 return mlirOperationGetRegion(op, 0);
574 MlirOperationState state = mlirOperationStateGet(mlirStringRefCreateFromCString(
"verif.step.yield"), location);
575 mlirOperationStateAddOperands(&state, 1, &value);
581 return llvm::isa<StepYieldOp>(unwrap(inp));
585 auto range = llvm::cast<StepYieldOp>(unwrap(op)).getODSOperandIndexAndLength(0);
586 assert(range.second == 1 &&
"expected fixed operand segment size");
588 static_cast<uintptr_t
>(range.first) <=
static_cast<uintptr_t
>(std::numeric_limits<intptr_t>::max()) &&
589 "operand index exceeds intptr_t range"
591 return mlirOperationGetOperand(op,
static_cast<intptr_t
>(range.first));
595 auto range = llvm::cast<StepYieldOp>(unwrap(op)).getODSOperandIndexAndLength(0);
596 assert(range.second == 1 &&
"expected fixed operand segment size");
598 static_cast<uintptr_t
>(range.first) <=
static_cast<uintptr_t
>(std::numeric_limits<intptr_t>::max()) &&
599 "operand index exceeds intptr_t range"
601 mlirOperationSetOperand(op,
static_cast<intptr_t
>(range.first), value);
605 MlirOperationState state = mlirOperationStateGet(mlirStringRefCreateFromCString(
"verif.assert"), location);
606 mlirOperationStateAddOperands(&state, 1, &condition);
612 return llvm::isa<VerifAssertOp>(unwrap(inp));
616 auto range = llvm::cast<VerifAssertOp>(unwrap(op)).getODSOperandIndexAndLength(0);
617 assert(range.second == 1 &&
"expected fixed operand segment size");
619 static_cast<uintptr_t
>(range.first) <=
static_cast<uintptr_t
>(std::numeric_limits<intptr_t>::max()) &&
620 "operand index exceeds intptr_t range"
622 return mlirOperationGetOperand(op,
static_cast<intptr_t
>(range.first));
626 auto range = llvm::cast<VerifAssertOp>(unwrap(op)).getODSOperandIndexAndLength(0);
627 assert(range.second == 1 &&
"expected fixed operand segment size");
629 static_cast<uintptr_t
>(range.first) <=
static_cast<uintptr_t
>(std::numeric_limits<intptr_t>::max()) &&
630 "operand index exceeds intptr_t range"
632 mlirOperationSetOperand(op,
static_cast<intptr_t
>(range.first), value);
636 MlirOperationState state = mlirOperationStateGet(mlirStringRefCreateFromCString(
"verif.prove"), location);
637 mlirOperationStateAddOperands(&state, 1, &condition);
643 return llvm::isa<VerifProveOp>(unwrap(inp));
647 auto range = llvm::cast<VerifProveOp>(unwrap(op)).getODSOperandIndexAndLength(0);
648 assert(range.second == 1 &&
"expected fixed operand segment size");
650 static_cast<uintptr_t
>(range.first) <=
static_cast<uintptr_t
>(std::numeric_limits<intptr_t>::max()) &&
651 "operand index exceeds intptr_t range"
653 return mlirOperationGetOperand(op,
static_cast<intptr_t
>(range.first));
657 auto range = llvm::cast<VerifProveOp>(unwrap(op)).getODSOperandIndexAndLength(0);
658 assert(range.second == 1 &&
"expected fixed operand segment size");
660 static_cast<uintptr_t
>(range.first) <=
static_cast<uintptr_t
>(std::numeric_limits<intptr_t>::max()) &&
661 "operand index exceeds intptr_t range"
663 mlirOperationSetOperand(op,
static_cast<intptr_t
>(range.first), value);
667 MlirOperationState state = mlirOperationStateGet(mlirStringRefCreateFromCString(
"verif.smt_prove"), location);
668 mlirOperationStateAddOperands(&state, 1, &condition);
674 return llvm::isa<VerifSMTProveOp>(unwrap(inp));
678 auto range = llvm::cast<VerifSMTProveOp>(unwrap(op)).getODSOperandIndexAndLength(0);
679 assert(range.second == 1 &&
"expected fixed operand segment size");
681 static_cast<uintptr_t
>(range.first) <=
static_cast<uintptr_t
>(std::numeric_limits<intptr_t>::max()) &&
682 "operand index exceeds intptr_t range"
684 return mlirOperationGetOperand(op,
static_cast<intptr_t
>(range.first));
688 auto range = llvm::cast<VerifSMTProveOp>(unwrap(op)).getODSOperandIndexAndLength(0);
689 assert(range.second == 1 &&
"expected fixed operand segment size");
691 static_cast<uintptr_t
>(range.first) <=
static_cast<uintptr_t
>(std::numeric_limits<intptr_t>::max()) &&
692 "operand index exceeds intptr_t range"
694 mlirOperationSetOperand(op,
static_cast<intptr_t
>(range.first), value);
MlirOperation mlirOpBuilderInsert(MlirOpBuilder builder, MlirOperation op)
Inserts op at the current insertion point of builder and returns it.
MlirValue llzkVerif_OldOpGetValue(MlirOperation op)
Get Value operand from llzk::verif::OldOp Operation.
MlirAttribute llzkVerif_IncludeOpGetNumDimsPerMap(MlirOperation op)
Get NumDimsPerMap attribute from llzk::verif::IncludeOp Operation.
intptr_t llzkVerif_IncludeOpGetMapOperandsCount(MlirOperation op)
Get number of MapOperands operands in llzk::verif::IncludeOp Operation.
void llzkVerif_StepYieldOpSetValue(MlirOperation op, MlirValue value)
Set Value operand of llzk::verif::StepYieldOp Operation.
void llzkVerif_VerifAssertOpSetCondition(MlirOperation op, MlirValue value)
Set Condition operand of llzk::verif::VerifAssertOp Operation.
void llzkVerif_IncludeOpSetTemplateParams(MlirOperation op, MlirAttribute attr)
Set TemplateParams attribute of llzk::verif::IncludeOp Operation.
void llzkVerif_IncludeOpSetMapOpGroupSizes(MlirOperation op, MlirAttribute attr)
Set MapOpGroupSizes attribute of llzk::verif::IncludeOp Operation.
MlirValue llzkVerif_VerifProveOpGetCondition(MlirOperation op)
Get Condition operand from llzk::verif::VerifProveOp Operation.
void llzkVerif_VerifProveOpSetCondition(MlirOperation op, MlirValue value)
Set Condition operand of llzk::verif::VerifProveOp Operation.
MlirOperation llzkVerif_RequireComputeOpBuild(MlirOpBuilder builder, MlirLocation location, MlirValue condition)
Build a llzk::verif::RequireComputeOp Operation.
void llzkVerif_AssumeDetOpSetHint(MlirOperation op, MlirValue value)
Set Hint operand of llzk::verif::AssumeDetOp Operation.
void llzkVerif_IncludeOpSetCallee(MlirOperation op, MlirAttribute attr)
Set Callee attribute of llzk::verif::IncludeOp Operation.
MlirOperation llzkVerif_RequireConstrainOpBuild(MlirOpBuilder builder, MlirLocation location, MlirValue condition)
Build a llzk::verif::RequireConstrainOp Operation.
bool llzkVerif_ContractOpHasStructTarget(MlirOperation inp)
Return true iff the contract targets a struct type.
void llzkVerif_RequireConstrainOpSetCondition(MlirOperation op, MlirValue value)
Set Condition operand of llzk::verif::RequireConstrainOp Operation.
MlirValue llzkVerif_VerifSMTProveOpGetCondition(MlirOperation op)
Get Condition operand from llzk::verif::VerifSMTProveOp Operation.
MlirRegion llzkVerif_ContractOpGetBody(MlirOperation op)
Get Body region from llzk::verif::ContractOp Operation.
MlirAttribute llzkVerif_ContractOpGetResAttrs(MlirOperation op)
Get ResAttrs attribute from llzk::verif::ContractOp Operation.
MlirAttribute llzkVerif_IncludeOpGetTemplateParams(MlirOperation op)
Get TemplateParams attribute from llzk::verif::IncludeOp Operation.
MlirOperation llzkVerif_StepOpBuild(MlirOpBuilder builder, MlirLocation location)
Build a llzk::verif::StepOp Operation.
bool llzkOperationIsA_Verif_RequireConstrainOp(MlirOperation inp)
Returns true if the Operation is a llzk::verif::RequireConstrainOp.
MlirOperation llzkVerif_EnsureConstrainOpBuild(MlirOpBuilder builder, MlirLocation location, MlirValue condition)
Build a llzk::verif::EnsureConstrainOp Operation.
MlirAttribute llzkVerif_IncludeOpGetMapOpGroupSizes(MlirOperation op)
Get MapOpGroupSizes attribute from llzk::verif::IncludeOp Operation.
bool llzkOperationIsA_Verif_VerifSMTProveOp(MlirOperation inp)
Returns true if the Operation is a llzk::verif::VerifSMTProveOp.
MlirOperation llzkVerif_ContractEndOpBuild(MlirOpBuilder builder, MlirLocation location)
Build a llzk::verif::ContractEndOp Operation.
bool llzkOperationIsA_Verif_ProveDetOp(MlirOperation inp)
Returns true if the Operation is a llzk::verif::ProveDetOp.
MlirAttribute llzkVerif_IncludeOpGetResAttrs(MlirOperation op)
Get ResAttrs attribute from llzk::verif::IncludeOp Operation.
MlirAttribute llzkVerif_IncludeOpGetArgAttrs(MlirOperation op)
Get ArgAttrs attribute from llzk::verif::IncludeOp Operation.
void llzkVerif_EnsureComputeOpSetCondition(MlirOperation op, MlirValue value)
Set Condition operand of llzk::verif::EnsureComputeOp Operation.
MlirValue llzkVerif_StepYieldOpGetValue(MlirOperation op)
Get Value operand from llzk::verif::StepYieldOp Operation.
MlirOperation llzkVerif_VerifProveOpBuild(MlirOpBuilder builder, MlirLocation location, MlirValue condition)
Build a llzk::verif::VerifProveOp Operation.
MlirOperation llzkVerif_VerifSMTProveOpBuild(MlirOpBuilder builder, MlirLocation location, MlirValue condition)
Build a llzk::verif::VerifSMTProveOp Operation.
MlirAttribute llzkVerif_InvariantOpGetLoopName(MlirOperation op)
Get LoopName attribute from llzk::verif::InvariantOp Operation.
bool llzkVerif_ContractOpHasArgPublicAttr(MlirOperation inp, unsigned index)
Return true iff the argument at the given index has pub attribute.
bool llzkOperationIsA_Verif_ContractEndOp(MlirOperation inp)
Returns true if the Operation is a llzk::verif::ContractEndOp.
MlirRegion llzkVerif_StepOpGetRegion(MlirOperation op)
Get Region region from llzk::verif::StepOp Operation.
intptr_t llzkVerif_IncludeOpGetArgOperandsCount(MlirOperation op)
Get number of ArgOperands operands in llzk::verif::IncludeOp Operation.
bool llzkOperationIsA_Verif_DecreasesOp(MlirOperation inp)
Returns true if the Operation is a llzk::verif::DecreasesOp.
bool llzkOperationIsA_Verif_StepYieldOp(MlirOperation inp)
Returns true if the Operation is a llzk::verif::StepYieldOp.
bool llzkOperationIsA_Verif_InvariantOp(MlirOperation inp)
Returns true if the Operation is a llzk::verif::InvariantOp.
MlirAttribute llzkVerif_ContractOpGetSymName(MlirOperation op)
Get SymName attribute from llzk::verif::ContractOp Operation.
void llzkVerif_IncreasesOpSetValue(MlirOperation op, MlirValue value)
Set Value operand of llzk::verif::IncreasesOp Operation.
MlirValue llzkVerif_VerifAssertOpGetCondition(MlirOperation op)
Get Condition operand from llzk::verif::VerifAssertOp Operation.
MlirOperation llzkVerif_IncreasesOpBuild(MlirOpBuilder builder, MlirLocation location, MlirValue value)
Build a llzk::verif::IncreasesOp Operation.
void llzkVerif_ProveDetOpSetCondition(MlirOperation op, MlirValue value)
Set Condition operand of llzk::verif::ProveDetOp Operation.
MlirAttribute llzkVerif_InvariantOpGetLoopArgTypes(MlirOperation op)
Get LoopArgTypes attribute from llzk::verif::InvariantOp Operation.
MlirOperation llzkVerif_OldOpBuild(MlirOpBuilder builder, MlirLocation location, MlirValue value)
Build a llzk::verif::OldOp Operation.
MlirOperation llzkVerif_AssumeDetOpBuild(MlirOpBuilder builder, MlirLocation location, MlirValue hint)
Build a llzk::verif::AssumeDetOp Operation.
void llzkVerif_VerifSMTProveOpSetCondition(MlirOperation op, MlirValue value)
Set Condition operand of llzk::verif::VerifSMTProveOp Operation.
bool llzkVerif_ContractOpHasArgName(MlirOperation inp, unsigned index)
Return true iff the argument at the given index has a function.arg_name attribute.
void llzkVerif_IncludeOpSetResAttrs(MlirOperation op, MlirAttribute attr)
Set ResAttrs attribute of llzk::verif::IncludeOp Operation.
bool llzkVerif_IncludeOpContractTargetsStruct(MlirOperation inp)
Return true iff the contract targets a struct type.
bool llzkOperationIsA_Verif_RequireComputeOp(MlirOperation inp)
Returns true if the Operation is a llzk::verif::RequireComputeOp.
MlirAttribute llzkVerif_ContractOpGetTarget(MlirOperation op)
Get Target attribute from llzk::verif::ContractOp Operation.
MlirAttribute llzkVerif_ContractOpGetFunctionType(MlirOperation op)
Get FunctionType attribute from llzk::verif::ContractOp Operation.
bool llzkOperationIsA_Verif_EnsureConstrainOp(MlirOperation inp)
Returns true if the Operation is a llzk::verif::EnsureConstrainOp.
void llzkVerif_IncludeOpSetArgAttrs(MlirOperation op, MlirAttribute attr)
Set ArgAttrs attribute of llzk::verif::IncludeOp Operation.
MlirValue llzkVerif_ProveDetOpGetResult(MlirOperation op)
Get Result result from llzk::verif::ProveDetOp Operation.
MlirAttribute llzkVerif_ContractOpGetArgAttrs(MlirOperation op)
Get ArgAttrs attribute from llzk::verif::ContractOp Operation.
bool llzkOperationIsA_Verif_EnsureComputeOp(MlirOperation inp)
Returns true if the Operation is a llzk::verif::EnsureComputeOp.
void llzkVerif_IncludeOpSetArgOperands(MlirOperation op, intptr_t count, MlirValue const *values)
Set ArgOperands operands of llzk::verif::IncludeOp Operation.
MlirOperation llzkVerif_DecreasesOpBuild(MlirOpBuilder builder, MlirLocation location, MlirValue value)
Build a llzk::verif::DecreasesOp Operation.
void llzkVerif_IncludeOpSetNumDimsPerMap(MlirOperation op, MlirAttribute attr)
Set NumDimsPerMap attribute of llzk::verif::IncludeOp Operation.
void llzkVerif_ContractOpSetTarget(MlirOperation op, MlirAttribute attr)
Set Target attribute of llzk::verif::ContractOp Operation.
void llzkVerif_EnsureConstrainOpSetCondition(MlirOperation op, MlirValue value)
Set Condition operand of llzk::verif::EnsureConstrainOp Operation.
MlirAttribute llzkVerif_IncludeOpGetCallee(MlirOperation op)
Get Callee attribute from llzk::verif::IncludeOp Operation.
bool llzkVerif_ContractOpIsDeclaration(MlirOperation inp)
Required by SymbolOpInterface.
MlirOperation llzkVerif_InvariantOpGetParentContract(MlirOperation inp)
Returns the contract operation that contains this invariant.
MlirOperation llzkVerif_StepYieldOpBuild(MlirOpBuilder builder, MlirLocation location, MlirValue value)
Build a llzk::verif::StepYieldOp Operation.
MlirValue llzkVerif_IncludeOpGetMapOperandsAt(MlirOperation op, intptr_t index)
Get MapOperands operand at index from llzk::verif::IncludeOp Operation.
void llzkVerif_ContractOpSetArgAttrs(MlirOperation op, MlirAttribute attr)
Set ArgAttrs attribute of llzk::verif::ContractOp Operation.
void llzkVerif_InvariantOpSetLoopName(MlirOperation op, MlirAttribute attr)
Set LoopName attribute of llzk::verif::InvariantOp Operation.
MlirValue llzkVerif_ProveDetOpGetCondition(MlirOperation op)
Get Condition operand from llzk::verif::ProveDetOp Operation.
MlirOperation llzkVerif_EnsureComputeOpBuild(MlirOpBuilder builder, MlirLocation location, MlirValue condition)
Build a llzk::verif::EnsureComputeOp Operation.
MlirValue llzkVerif_RequireComputeOpGetCondition(MlirOperation op)
Get Condition operand from llzk::verif::RequireComputeOp Operation.
bool llzkOperationIsA_Verif_IncludeOp(MlirOperation inp)
Returns true if the Operation is a llzk::verif::IncludeOp.
void llzkVerif_InvariantOpSetLoopArgTypes(MlirOperation op, MlirAttribute attr)
Set LoopArgTypes attribute of llzk::verif::InvariantOp Operation.
MlirValue llzkVerif_IncludeOpGetArgOperandsAt(MlirOperation op, intptr_t index)
Get ArgOperands operand at index from llzk::verif::IncludeOp Operation.
void llzkVerif_RequireComputeOpSetCondition(MlirOperation op, MlirValue value)
Set Condition operand of llzk::verif::RequireComputeOp Operation.
MlirOperation llzkVerif_ProveDetOpBuild(MlirOpBuilder builder, MlirLocation location, MlirValue condition)
Build a llzk::verif::ProveDetOp Operation.
void llzkVerif_IncludeOpSetMapOperands(MlirOperation op, intptr_t groupCount, MlirValueRange const *groups)
Set MapOperands operand groups of llzk::verif::IncludeOp Operation.
bool llzkOperationIsA_Verif_IncreasesOp(MlirOperation inp)
Returns true if the Operation is a llzk::verif::IncreasesOp.
bool llzkOperationIsA_Verif_StepOp(MlirOperation inp)
Returns true if the Operation is a llzk::verif::StepOp.
void llzkVerif_DecreasesOpSetValue(MlirOperation op, MlirValue value)
Set Value operand of llzk::verif::DecreasesOp Operation.
MlirRegion llzkVerif_InvariantOpGetRegion(MlirOperation op)
Get Region region from llzk::verif::InvariantOp Operation.
MlirValue llzkVerif_IncludeOpGetSelfValue(MlirOperation inp)
getSelfValue
MlirValue llzkVerif_IncreasesOpGetValue(MlirOperation op)
Get Value operand from llzk::verif::IncreasesOp Operation.
void llzkVerif_OldOpSetValue(MlirOperation op, MlirValue value)
Set Value operand of llzk::verif::OldOp Operation.
MlirValue llzkVerif_EnsureComputeOpGetCondition(MlirOperation op)
Get Condition operand from llzk::verif::EnsureComputeOp Operation.
bool llzkOperationIsA_Verif_VerifAssertOp(MlirOperation inp)
Returns true if the Operation is a llzk::verif::VerifAssertOp.
MlirValue llzkVerif_EnsureConstrainOpGetCondition(MlirOperation op)
Get Condition operand from llzk::verif::EnsureConstrainOp Operation.
MlirRegion llzkVerif_ContractOpGetCallableRegion(MlirOperation inp)
Required by FunctionOpInterface.
bool llzkOperationIsA_Verif_VerifProveOp(MlirOperation inp)
Returns true if the Operation is a llzk::verif::VerifProveOp.
MlirValue llzkVerif_RequireConstrainOpGetCondition(MlirOperation op)
Get Condition operand from llzk::verif::RequireConstrainOp Operation.
MlirValue llzkVerif_AssumeDetOpGetHint(MlirOperation op)
Get Hint operand from llzk::verif::AssumeDetOp Operation.
bool llzkVerif_ContractOpHasFuncTarget(MlirOperation inp)
Return true iff the contract targets a function.
MlirOperation llzkVerif_VerifAssertOpBuild(MlirOpBuilder builder, MlirLocation location, MlirValue condition)
Build a llzk::verif::VerifAssertOp Operation.
bool llzkOperationIsA_Verif_ContractOp(MlirOperation inp)
Returns true if the Operation is a llzk::verif::ContractOp.
MlirAttribute llzkVerif_ContractOpGetFullyQualifiedName(MlirOperation inp, bool requireParent)
Return the full name for this contract from the root module, including all surrounding symbol table n...
bool llzkOperationIsA_Verif_AssumeDetOp(MlirOperation inp)
Returns true if the Operation is a llzk::verif::AssumeDetOp.
MlirValue llzkVerif_OldOpGetResult(MlirOperation op)
Get Result result from llzk::verif::OldOp Operation.
void llzkVerif_ContractOpSetFunctionType(MlirOperation op, MlirAttribute attr)
Set FunctionType attribute of llzk::verif::ContractOp Operation.
MlirValue llzkVerif_DecreasesOpGetValue(MlirOperation op)
Get Value operand from llzk::verif::DecreasesOp Operation.
void llzkVerif_ContractOpSetSymName(MlirOperation op, MlirAttribute attr)
Set SymName attribute of llzk::verif::ContractOp Operation.
bool llzkOperationIsA_Verif_OldOp(MlirOperation inp)
Returns true if the Operation is a llzk::verif::OldOp.
void llzkVerif_ContractOpSetResAttrs(MlirOperation op, MlirAttribute attr)
Set ResAttrs attribute of llzk::verif::ContractOp Operation.
MlirOperation llzkVerif_IncludeOpResolveCallable(MlirOperation inp)
resolveCallable
Representation of an mlir::ValueRange.
intptr_t size
Number of values in the range.