LLZK 3.0.0
An open-source IR for Zero Knowledge (ZK) circuits
Loading...
Searching...
No Matches
Ops.capi.test.cpp.inc
Go to the documentation of this file.
1/*===- TableGen'erated file -------------------------------------*- C++ -*-===*\
2|* *|
3|* Op C API Tests *|
4|* *|
5|* Automatically generated file, do not edit! *|
6|* From: Ops.td *|
7|* *|
8\*===----------------------------------------------------------------------===*/
9
10class VerifOperationLinkTests : public CAPITest {};
11
13TEST_F(VerifOperationLinkTests, IsA_Verif_AssumeDetOp) {
14 auto testOperation = createIndexOperation();
15
16 // This will always return false since `createIndex*` returns an MLIR builtin
17 EXPECT_FALSE(llzkOperationIsA_Verif_AssumeDetOp(testOperation));
18
19 mlirOperationDestroy(testOperation);
20}
21
23TEST_F(VerifOperationLinkTests, llzk_AssumeDetOp_Build) {
24 // Returns an `arith.constant` op, which will never match the AssumeDetOp dialect check.
25 auto testOp = createIndexOperation();
26
27 // This condition is always false, so the function is never actually called.
28 // We only verify it compiles and links correctly.
30 MlirOpBuilder builder = mlirOpBuilderCreate(context);
31 MlirLocation location = mlirLocationUnknownGet(context);
32 auto dummyValue = mlirOperationGetResult(testOp, 0);
33
34 (void)llzkVerif_AssumeDetOpBuild(builder, location, dummyValue);
35 // No need to destroy builder or op since this code never runs.
36 }
37
38 mlirOperationDestroy(testOp);
39}
40
41struct AssumeDetOpBuildFuncHelper : public TestAnyBuildFuncHelper<CAPITest> {
42 virtual bool callIsA(MlirOperation op) override { return llzkOperationIsA_Verif_AssumeDetOp(op); }
46 static std::unique_ptr<AssumeDetOpBuildFuncHelper> get();
47
48protected:
50};
51
54TEST_F(CAPITest, Verif_AssumeDetOp_build_pass) { AssumeDetOpBuildFuncHelper::get()->run(*this); }
55
56TEST_F(VerifOperationLinkTests, llzk_AssumeDetOp_GetHint) {
57 auto testOp = createIndexOperation();
58
60 (void)llzkVerif_AssumeDetOpGetHint(testOp);
61 }
62
63 mlirOperationDestroy(testOp);
64}
65
66TEST_F(VerifOperationLinkTests, llzk_AssumeDetOp_SetHint) {
67 auto testOp = createIndexOperation();
68
70 auto dummyValue = mlirOperationGetResult(testOp, 0);
71 llzkVerif_AssumeDetOpSetHint(testOp, dummyValue);
72 }
73
74 mlirOperationDestroy(testOp);
75}
76
78TEST_F(VerifOperationLinkTests, IsA_Verif_ContractEndOp) {
79 auto testOperation = createIndexOperation();
80
81 // This will always return false since `createIndex*` returns an MLIR builtin
82 EXPECT_FALSE(llzkOperationIsA_Verif_ContractEndOp(testOperation));
83
84 mlirOperationDestroy(testOperation);
85}
86
88TEST_F(VerifOperationLinkTests, llzk_ContractEndOp_Build) {
89 // Returns an `arith.constant` op, which will never match the ContractEndOp dialect check.
90 auto testOp = createIndexOperation();
91
92 // This condition is always false, so the function is never actually called.
93 // We only verify it compiles and links correctly.
95 MlirOpBuilder builder = mlirOpBuilderCreate(context);
96 MlirLocation location = mlirLocationUnknownGet(context);
97 auto dummyValue = mlirOperationGetResult(testOp, 0);
98
99 (void)llzkVerif_ContractEndOpBuild(builder, location);
100 // No need to destroy builder or op since this code never runs.
101 }
102
103 mlirOperationDestroy(testOp);
104}
105
106struct ContractEndOpBuildFuncHelper : public TestAnyBuildFuncHelper<CAPITest> {
107 virtual bool callIsA(MlirOperation op) override { return llzkOperationIsA_Verif_ContractEndOp(op); }
111 static std::unique_ptr<ContractEndOpBuildFuncHelper> get();
112
113protected:
115};
116
119TEST_F(CAPITest, Verif_ContractEndOp_build_pass) { ContractEndOpBuildFuncHelper::get()->run(*this); }
120
122TEST_F(VerifOperationLinkTests, IsA_Verif_ContractOp) {
123 auto testOperation = createIndexOperation();
124
125 // This will always return false since `createIndex*` returns an MLIR builtin
126 EXPECT_FALSE(llzkOperationIsA_Verif_ContractOp(testOperation));
127
128 mlirOperationDestroy(testOperation);
129}
130
131TEST_F(VerifOperationLinkTests, llzk_ContractOp_GetSymNameAttr) {
132 auto testOp = createIndexOperation();
133
135 (void)llzkVerif_ContractOpGetSymName(testOp);
136 }
137
138 mlirOperationDestroy(testOp);
139}
140
141TEST_F(VerifOperationLinkTests, llzk_ContractOp_SetSymNameAttr) {
142 auto testOp = createIndexOperation();
143
145 llzkVerif_ContractOpSetSymName(testOp, createIndexAttribute());
146 }
147
148 mlirOperationDestroy(testOp);
149}
150
151TEST_F(VerifOperationLinkTests, llzk_ContractOp_GetTargetAttr) {
152 auto testOp = createIndexOperation();
153
155 (void)llzkVerif_ContractOpGetTarget(testOp);
156 }
157
158 mlirOperationDestroy(testOp);
159}
160
161TEST_F(VerifOperationLinkTests, llzk_ContractOp_SetTargetAttr) {
162 auto testOp = createIndexOperation();
163
165 llzkVerif_ContractOpSetTarget(testOp, createIndexAttribute());
166 }
167
168 mlirOperationDestroy(testOp);
169}
170
171TEST_F(VerifOperationLinkTests, llzk_ContractOp_GetFunctionTypeAttr) {
172 auto testOp = createIndexOperation();
173
176 }
177
178 mlirOperationDestroy(testOp);
179}
180
181TEST_F(VerifOperationLinkTests, llzk_ContractOp_SetFunctionTypeAttr) {
182 auto testOp = createIndexOperation();
183
185 llzkVerif_ContractOpSetFunctionType(testOp, createIndexAttribute());
186 }
187
188 mlirOperationDestroy(testOp);
189}
190
191TEST_F(VerifOperationLinkTests, llzk_ContractOp_GetArgAttrsAttr) {
192 auto testOp = createIndexOperation();
193
196 }
197
198 mlirOperationDestroy(testOp);
199}
200
201TEST_F(VerifOperationLinkTests, llzk_ContractOp_SetArgAttrsAttr) {
202 auto testOp = createIndexOperation();
203
205 llzkVerif_ContractOpSetArgAttrs(testOp, createIndexAttribute());
206 }
207
208 mlirOperationDestroy(testOp);
209}
210
211TEST_F(VerifOperationLinkTests, llzk_ContractOp_GetBodyRegion) {
212 auto testOp = createIndexOperation();
213
215 (void)llzkVerif_ContractOpGetBody(testOp);
216 }
217
218 mlirOperationDestroy(testOp);
219}
220
222TEST_F(VerifOperationLinkTests, llzk_ContractOp_IsDeclaration) {
223 auto testOperation = createIndexOperation();
224
225 if (llzkOperationIsA_Verif_ContractOp(testOperation)) {
226
227 (void)llzkVerif_ContractOpIsDeclaration(testOperation);
228 }
229
230 mlirOperationDestroy(testOperation);
231}
232
234TEST_F(VerifOperationLinkTests, llzk_ContractOp_HasArgPublicAttr) {
235 auto testOperation = createIndexOperation();
236
237 if (llzkOperationIsA_Verif_ContractOp(testOperation)) {
238 unsigned index = 0;
239
240 (void)llzkVerif_ContractOpHasArgPublicAttr(testOperation, index);
241 }
242
243 mlirOperationDestroy(testOperation);
244}
245
247TEST_F(VerifOperationLinkTests, llzk_ContractOp_HasFuncTarget) {
248 auto testOperation = createIndexOperation();
249
250 if (llzkOperationIsA_Verif_ContractOp(testOperation)) {
251
252 (void)llzkVerif_ContractOpHasFuncTarget(testOperation);
253 }
254
255 mlirOperationDestroy(testOperation);
256}
257
259TEST_F(VerifOperationLinkTests, llzk_ContractOp_HasStructTarget) {
260 auto testOperation = createIndexOperation();
261
262 if (llzkOperationIsA_Verif_ContractOp(testOperation)) {
263
264 (void)llzkVerif_ContractOpHasStructTarget(testOperation);
265 }
266
267 mlirOperationDestroy(testOperation);
268}
269
271TEST_F(VerifOperationLinkTests, llzk_ContractOp_GetCallableRegion) {
272 auto testOperation = createIndexOperation();
273
274 if (llzkOperationIsA_Verif_ContractOp(testOperation)) {
275
276 (void)llzkVerif_ContractOpGetCallableRegion(testOperation);
277 }
278
279 mlirOperationDestroy(testOperation);
280}
281
283TEST_F(VerifOperationLinkTests, llzk_ContractOp_HasArgName) {
284 auto testOperation = createIndexOperation();
285
286 if (llzkOperationIsA_Verif_ContractOp(testOperation)) {
287 unsigned index = 0;
288
289 (void)llzkVerif_ContractOpHasArgName(testOperation, index);
290 }
291
292 mlirOperationDestroy(testOperation);
293}
294
296TEST_F(VerifOperationLinkTests, llzk_ContractOp_GetFullyQualifiedName) {
297 auto testOperation = createIndexOperation();
298
299 if (llzkOperationIsA_Verif_ContractOp(testOperation)) {
300 bool requireParent = false;
301
302 (void)llzkVerif_ContractOpGetFullyQualifiedName(testOperation, requireParent);
303 }
304
305 mlirOperationDestroy(testOperation);
306}
307
309TEST_F(VerifOperationLinkTests, IsA_Verif_DecreasesOp) {
310 auto testOperation = createIndexOperation();
311
312 // This will always return false since `createIndex*` returns an MLIR builtin
313 EXPECT_FALSE(llzkOperationIsA_Verif_DecreasesOp(testOperation));
314
315 mlirOperationDestroy(testOperation);
316}
317
319TEST_F(VerifOperationLinkTests, llzk_DecreasesOp_Build) {
320 // Returns an `arith.constant` op, which will never match the DecreasesOp dialect check.
321 auto testOp = createIndexOperation();
322
323 // This condition is always false, so the function is never actually called.
324 // We only verify it compiles and links correctly.
326 MlirOpBuilder builder = mlirOpBuilderCreate(context);
327 MlirLocation location = mlirLocationUnknownGet(context);
328 auto dummyValue = mlirOperationGetResult(testOp, 0);
329
330 (void)llzkVerif_DecreasesOpBuild(builder, location, dummyValue);
331 // No need to destroy builder or op since this code never runs.
332 }
333
334 mlirOperationDestroy(testOp);
335}
336
337struct DecreasesOpBuildFuncHelper : public TestAnyBuildFuncHelper<CAPITest> {
338 virtual bool callIsA(MlirOperation op) override { return llzkOperationIsA_Verif_DecreasesOp(op); }
342 static std::unique_ptr<DecreasesOpBuildFuncHelper> get();
343
344protected:
346};
347
350TEST_F(CAPITest, Verif_DecreasesOp_build_pass) { DecreasesOpBuildFuncHelper::get()->run(*this); }
351
352TEST_F(VerifOperationLinkTests, llzk_DecreasesOp_GetValue) {
353 auto testOp = createIndexOperation();
354
356 (void)llzkVerif_DecreasesOpGetValue(testOp);
357 }
358
359 mlirOperationDestroy(testOp);
360}
361
362TEST_F(VerifOperationLinkTests, llzk_DecreasesOp_SetValue) {
363 auto testOp = createIndexOperation();
364
366 auto dummyValue = mlirOperationGetResult(testOp, 0);
367 llzkVerif_DecreasesOpSetValue(testOp, dummyValue);
368 }
369
370 mlirOperationDestroy(testOp);
371}
372
374TEST_F(VerifOperationLinkTests, IsA_Verif_EnsureComputeOp) {
375 auto testOperation = createIndexOperation();
376
377 // This will always return false since `createIndex*` returns an MLIR builtin
378 EXPECT_FALSE(llzkOperationIsA_Verif_EnsureComputeOp(testOperation));
379
380 mlirOperationDestroy(testOperation);
381}
382
384TEST_F(VerifOperationLinkTests, llzk_EnsureComputeOp_Build) {
385 // Returns an `arith.constant` op, which will never match the EnsureComputeOp dialect check.
386 auto testOp = createIndexOperation();
387
388 // This condition is always false, so the function is never actually called.
389 // We only verify it compiles and links correctly.
391 MlirOpBuilder builder = mlirOpBuilderCreate(context);
392 MlirLocation location = mlirLocationUnknownGet(context);
393 auto dummyValue = mlirOperationGetResult(testOp, 0);
394
395 (void)llzkVerif_EnsureComputeOpBuild(builder, location, dummyValue);
396 // No need to destroy builder or op since this code never runs.
397 }
398
399 mlirOperationDestroy(testOp);
400}
401
402struct EnsureComputeOpBuildFuncHelper : public TestAnyBuildFuncHelper<CAPITest> {
403 virtual bool callIsA(MlirOperation op) override { return llzkOperationIsA_Verif_EnsureComputeOp(op); }
407 static std::unique_ptr<EnsureComputeOpBuildFuncHelper> get();
408
409protected:
411};
412
415TEST_F(CAPITest, Verif_EnsureComputeOp_build_pass) { EnsureComputeOpBuildFuncHelper::get()->run(*this); }
416
417TEST_F(VerifOperationLinkTests, llzk_EnsureComputeOp_GetCondition) {
418 auto testOp = createIndexOperation();
419
422 }
423
424 mlirOperationDestroy(testOp);
425}
426
427TEST_F(VerifOperationLinkTests, llzk_EnsureComputeOp_SetCondition) {
428 auto testOp = createIndexOperation();
429
431 auto dummyValue = mlirOperationGetResult(testOp, 0);
432 llzkVerif_EnsureComputeOpSetCondition(testOp, dummyValue);
433 }
434
435 mlirOperationDestroy(testOp);
436}
437
439TEST_F(VerifOperationLinkTests, IsA_Verif_EnsureConstrainOp) {
440 auto testOperation = createIndexOperation();
441
442 // This will always return false since `createIndex*` returns an MLIR builtin
443 EXPECT_FALSE(llzkOperationIsA_Verif_EnsureConstrainOp(testOperation));
444
445 mlirOperationDestroy(testOperation);
446}
447
449TEST_F(VerifOperationLinkTests, llzk_EnsureConstrainOp_Build) {
450 // Returns an `arith.constant` op, which will never match the EnsureConstrainOp dialect check.
451 auto testOp = createIndexOperation();
452
453 // This condition is always false, so the function is never actually called.
454 // We only verify it compiles and links correctly.
456 MlirOpBuilder builder = mlirOpBuilderCreate(context);
457 MlirLocation location = mlirLocationUnknownGet(context);
458 auto dummyValue = mlirOperationGetResult(testOp, 0);
459
460 (void)llzkVerif_EnsureConstrainOpBuild(builder, location, dummyValue);
461 // No need to destroy builder or op since this code never runs.
462 }
463
464 mlirOperationDestroy(testOp);
465}
466
467struct EnsureConstrainOpBuildFuncHelper : public TestAnyBuildFuncHelper<CAPITest> {
468 virtual bool callIsA(MlirOperation op) override { return llzkOperationIsA_Verif_EnsureConstrainOp(op); }
472 static std::unique_ptr<EnsureConstrainOpBuildFuncHelper> get();
473
474protected:
476};
477
480TEST_F(CAPITest, Verif_EnsureConstrainOp_build_pass) { EnsureConstrainOpBuildFuncHelper::get()->run(*this); }
481
482TEST_F(VerifOperationLinkTests, llzk_EnsureConstrainOp_GetCondition) {
483 auto testOp = createIndexOperation();
484
487 }
488
489 mlirOperationDestroy(testOp);
490}
491
492TEST_F(VerifOperationLinkTests, llzk_EnsureConstrainOp_SetCondition) {
493 auto testOp = createIndexOperation();
494
496 auto dummyValue = mlirOperationGetResult(testOp, 0);
497 llzkVerif_EnsureConstrainOpSetCondition(testOp, dummyValue);
498 }
499
500 mlirOperationDestroy(testOp);
501}
502
504TEST_F(VerifOperationLinkTests, IsA_Verif_IncludeOp) {
505 auto testOperation = createIndexOperation();
506
507 // This will always return false since `createIndex*` returns an MLIR builtin
508 EXPECT_FALSE(llzkOperationIsA_Verif_IncludeOp(testOperation));
509
510 mlirOperationDestroy(testOperation);
511}
512
513TEST_F(VerifOperationLinkTests, llzk_IncludeOp_GetArgOperandsCount) {
514 auto testOp = createIndexOperation();
515
518 }
519
520 mlirOperationDestroy(testOp);
521}
522
523TEST_F(VerifOperationLinkTests, llzk_IncludeOp_GetArgOperandsAt) {
524 auto testOp = createIndexOperation();
525
528 }
529
530 mlirOperationDestroy(testOp);
531}
532
533TEST_F(VerifOperationLinkTests, llzk_IncludeOp_SetArgOperands_Variadic) {
534 auto testOp = createIndexOperation();
535
537 auto dummyValue = mlirOperationGetResult(testOp, 0);
538 MlirValue values[] = {dummyValue};
539 llzkVerif_IncludeOpSetArgOperands(testOp, 1, values);
540 }
541
542 mlirOperationDestroy(testOp);
543}
544
545TEST_F(VerifOperationLinkTests, llzk_IncludeOp_GetMapOperandsCount) {
546 auto testOp = createIndexOperation();
547
550 }
551
552 mlirOperationDestroy(testOp);
553}
554
555TEST_F(VerifOperationLinkTests, llzk_IncludeOp_GetMapOperandsAt) {
556 auto testOp = createIndexOperation();
557
560 }
561
562 mlirOperationDestroy(testOp);
563}
564
565TEST_F(VerifOperationLinkTests, llzk_IncludeOp_SetMapOperands_VariadicOfVariadic) {
566 auto testOp = createIndexOperation();
567
569 auto dummyValue = mlirOperationGetResult(testOp, 0);
570 MlirValueRange groups[1];
571 groups[0].values = &dummyValue;
572 groups[0].size = 1;
573 llzkVerif_IncludeOpSetMapOperands(testOp, 1, groups);
574 }
575
576 mlirOperationDestroy(testOp);
577}
578
579TEST_F(VerifOperationLinkTests, llzk_IncludeOp_GetCalleeAttr) {
580 auto testOp = createIndexOperation();
581
583 (void)llzkVerif_IncludeOpGetCallee(testOp);
584 }
585
586 mlirOperationDestroy(testOp);
587}
588
589TEST_F(VerifOperationLinkTests, llzk_IncludeOp_SetCalleeAttr) {
590 auto testOp = createIndexOperation();
591
593 llzkVerif_IncludeOpSetCallee(testOp, createIndexAttribute());
594 }
595
596 mlirOperationDestroy(testOp);
597}
598
599TEST_F(VerifOperationLinkTests, llzk_IncludeOp_GetTemplateParamsAttr) {
600 auto testOp = createIndexOperation();
601
604 }
605
606 mlirOperationDestroy(testOp);
607}
608
609TEST_F(VerifOperationLinkTests, llzk_IncludeOp_SetTemplateParamsAttr) {
610 auto testOp = createIndexOperation();
611
613 llzkVerif_IncludeOpSetTemplateParams(testOp, createIndexAttribute());
614 }
615
616 mlirOperationDestroy(testOp);
617}
618
619TEST_F(VerifOperationLinkTests, llzk_IncludeOp_GetNumDimsPerMapAttr) {
620 auto testOp = createIndexOperation();
621
624 }
625
626 mlirOperationDestroy(testOp);
627}
628
629TEST_F(VerifOperationLinkTests, llzk_IncludeOp_SetNumDimsPerMapAttr) {
630 auto testOp = createIndexOperation();
631
633 llzkVerif_IncludeOpSetNumDimsPerMap(testOp, createIndexAttribute());
634 }
635
636 mlirOperationDestroy(testOp);
637}
638
639TEST_F(VerifOperationLinkTests, llzk_IncludeOp_GetMapOpGroupSizesAttr) {
640 auto testOp = createIndexOperation();
641
644 }
645
646 mlirOperationDestroy(testOp);
647}
648
649TEST_F(VerifOperationLinkTests, llzk_IncludeOp_SetMapOpGroupSizesAttr) {
650 auto testOp = createIndexOperation();
651
653 llzkVerif_IncludeOpSetMapOpGroupSizes(testOp, createIndexAttribute());
654 }
655
656 mlirOperationDestroy(testOp);
657}
658
660TEST_F(VerifOperationLinkTests, llzk_IncludeOp_ContractTargetsStruct) {
661 auto testOperation = createIndexOperation();
662
663 if (llzkOperationIsA_Verif_IncludeOp(testOperation)) {
664
665 (void)llzkVerif_IncludeOpContractTargetsStruct(testOperation);
666 }
667
668 mlirOperationDestroy(testOperation);
669}
670
672TEST_F(VerifOperationLinkTests, llzk_IncludeOp_GetSelfValue) {
673 auto testOperation = createIndexOperation();
674
675 if (llzkOperationIsA_Verif_IncludeOp(testOperation)) {
676
677 (void)llzkVerif_IncludeOpGetSelfValue(testOperation);
678 }
679
680 mlirOperationDestroy(testOperation);
681}
682
684TEST_F(VerifOperationLinkTests, llzk_IncludeOp_GetTypeSignature) {
685 auto testOperation = createIndexOperation();
686
687 if (llzkOperationIsA_Verif_IncludeOp(testOperation)) {
688
689 (void)llzkVerif_IncludeOpGetTypeSignature(testOperation);
690 }
691
692 mlirOperationDestroy(testOperation);
693}
694
696TEST_F(VerifOperationLinkTests, llzk_IncludeOp_ResolveCallable) {
697 auto testOperation = createIndexOperation();
698
699 if (llzkOperationIsA_Verif_IncludeOp(testOperation)) {
700
701 (void)llzkVerif_IncludeOpResolveCallable(testOperation);
702 }
703
704 mlirOperationDestroy(testOperation);
705}
706
708TEST_F(VerifOperationLinkTests, IsA_Verif_IncreasesOp) {
709 auto testOperation = createIndexOperation();
710
711 // This will always return false since `createIndex*` returns an MLIR builtin
712 EXPECT_FALSE(llzkOperationIsA_Verif_IncreasesOp(testOperation));
713
714 mlirOperationDestroy(testOperation);
715}
716
718TEST_F(VerifOperationLinkTests, llzk_IncreasesOp_Build) {
719 // Returns an `arith.constant` op, which will never match the IncreasesOp dialect check.
720 auto testOp = createIndexOperation();
721
722 // This condition is always false, so the function is never actually called.
723 // We only verify it compiles and links correctly.
725 MlirOpBuilder builder = mlirOpBuilderCreate(context);
726 MlirLocation location = mlirLocationUnknownGet(context);
727 auto dummyValue = mlirOperationGetResult(testOp, 0);
728
729 (void)llzkVerif_IncreasesOpBuild(builder, location, dummyValue);
730 // No need to destroy builder or op since this code never runs.
731 }
732
733 mlirOperationDestroy(testOp);
734}
735
736struct IncreasesOpBuildFuncHelper : public TestAnyBuildFuncHelper<CAPITest> {
737 virtual bool callIsA(MlirOperation op) override { return llzkOperationIsA_Verif_IncreasesOp(op); }
741 static std::unique_ptr<IncreasesOpBuildFuncHelper> get();
742
743protected:
745};
746
749TEST_F(CAPITest, Verif_IncreasesOp_build_pass) { IncreasesOpBuildFuncHelper::get()->run(*this); }
750
751TEST_F(VerifOperationLinkTests, llzk_IncreasesOp_GetValue) {
752 auto testOp = createIndexOperation();
753
755 (void)llzkVerif_IncreasesOpGetValue(testOp);
756 }
757
758 mlirOperationDestroy(testOp);
759}
760
761TEST_F(VerifOperationLinkTests, llzk_IncreasesOp_SetValue) {
762 auto testOp = createIndexOperation();
763
765 auto dummyValue = mlirOperationGetResult(testOp, 0);
766 llzkVerif_IncreasesOpSetValue(testOp, dummyValue);
767 }
768
769 mlirOperationDestroy(testOp);
770}
771
773TEST_F(VerifOperationLinkTests, IsA_Verif_InvariantOp) {
774 auto testOperation = createIndexOperation();
775
776 // This will always return false since `createIndex*` returns an MLIR builtin
777 EXPECT_FALSE(llzkOperationIsA_Verif_InvariantOp(testOperation));
778
779 mlirOperationDestroy(testOperation);
780}
781
782TEST_F(VerifOperationLinkTests, llzk_InvariantOp_GetLoopNameAttr) {
783 auto testOp = createIndexOperation();
784
787 }
788
789 mlirOperationDestroy(testOp);
790}
791
792TEST_F(VerifOperationLinkTests, llzk_InvariantOp_SetLoopNameAttr) {
793 auto testOp = createIndexOperation();
794
796 llzkVerif_InvariantOpSetLoopName(testOp, createIndexAttribute());
797 }
798
799 mlirOperationDestroy(testOp);
800}
801
802TEST_F(VerifOperationLinkTests, llzk_InvariantOp_GetLoopArgTypesAttr) {
803 auto testOp = createIndexOperation();
804
807 }
808
809 mlirOperationDestroy(testOp);
810}
811
812TEST_F(VerifOperationLinkTests, llzk_InvariantOp_SetLoopArgTypesAttr) {
813 auto testOp = createIndexOperation();
814
816 llzkVerif_InvariantOpSetLoopArgTypes(testOp, createIndexAttribute());
817 }
818
819 mlirOperationDestroy(testOp);
820}
821
822TEST_F(VerifOperationLinkTests, llzk_InvariantOp_GetRegionRegion) {
823 auto testOp = createIndexOperation();
824
826 (void)llzkVerif_InvariantOpGetRegion(testOp);
827 }
828
829 mlirOperationDestroy(testOp);
830}
831
833TEST_F(VerifOperationLinkTests, llzk_InvariantOp_GetParentContract) {
834 auto testOperation = createIndexOperation();
835
836 if (llzkOperationIsA_Verif_InvariantOp(testOperation)) {
837
838 (void)llzkVerif_InvariantOpGetParentContract(testOperation);
839 }
840
841 mlirOperationDestroy(testOperation);
842}
843
846 auto testOperation = createIndexOperation();
847
848 // This will always return false since `createIndex*` returns an MLIR builtin
849 EXPECT_FALSE(llzkOperationIsA_Verif_OldOp(testOperation));
850
851 mlirOperationDestroy(testOperation);
852}
853
855TEST_F(VerifOperationLinkTests, llzk_OldOp_Build) {
856 // Returns an `arith.constant` op, which will never match the OldOp dialect check.
857 auto testOp = createIndexOperation();
858
859 // This condition is always false, so the function is never actually called.
860 // We only verify it compiles and links correctly.
861 if (llzkOperationIsA_Verif_OldOp(testOp)) {
862 MlirOpBuilder builder = mlirOpBuilderCreate(context);
863 MlirLocation location = mlirLocationUnknownGet(context);
864 auto dummyValue = mlirOperationGetResult(testOp, 0);
865
866 (void)llzkVerif_OldOpBuild(builder, location, dummyValue);
867 // No need to destroy builder or op since this code never runs.
868 }
869
870 mlirOperationDestroy(testOp);
871}
872
873struct OldOpBuildFuncHelper : public TestAnyBuildFuncHelper<CAPITest> {
874 virtual bool callIsA(MlirOperation op) override { return llzkOperationIsA_Verif_OldOp(op); }
878 static std::unique_ptr<OldOpBuildFuncHelper> get();
879
880protected:
882};
883
886TEST_F(CAPITest, Verif_OldOp_build_pass) { OldOpBuildFuncHelper::get()->run(*this); }
887
888TEST_F(VerifOperationLinkTests, llzk_OldOp_GetValue) {
889 auto testOp = createIndexOperation();
890
891 if (llzkOperationIsA_Verif_OldOp(testOp)) {
892 (void)llzkVerif_OldOpGetValue(testOp);
893 }
894
895 mlirOperationDestroy(testOp);
896}
897
898TEST_F(VerifOperationLinkTests, llzk_OldOp_SetValue) {
899 auto testOp = createIndexOperation();
900
901 if (llzkOperationIsA_Verif_OldOp(testOp)) {
902 auto dummyValue = mlirOperationGetResult(testOp, 0);
903 llzkVerif_OldOpSetValue(testOp, dummyValue);
904 }
905
906 mlirOperationDestroy(testOp);
907}
908
909TEST_F(VerifOperationLinkTests, llzk_OldOp_GetResult) {
910 auto testOp = createIndexOperation();
911
912 if (llzkOperationIsA_Verif_OldOp(testOp)) {
913 (void)llzkVerif_OldOpGetResult(testOp);
914 }
915
916 mlirOperationDestroy(testOp);
917}
918
920TEST_F(VerifOperationLinkTests, IsA_Verif_ProveDetOp) {
921 auto testOperation = createIndexOperation();
922
923 // This will always return false since `createIndex*` returns an MLIR builtin
924 EXPECT_FALSE(llzkOperationIsA_Verif_ProveDetOp(testOperation));
925
926 mlirOperationDestroy(testOperation);
927}
928
930TEST_F(VerifOperationLinkTests, llzk_ProveDetOp_Build) {
931 // Returns an `arith.constant` op, which will never match the ProveDetOp dialect check.
932 auto testOp = createIndexOperation();
933
934 // This condition is always false, so the function is never actually called.
935 // We only verify it compiles and links correctly.
937 MlirOpBuilder builder = mlirOpBuilderCreate(context);
938 MlirLocation location = mlirLocationUnknownGet(context);
939 auto dummyValue = mlirOperationGetResult(testOp, 0);
940
941 (void)llzkVerif_ProveDetOpBuild(builder, location, dummyValue);
942 // No need to destroy builder or op since this code never runs.
943 }
944
945 mlirOperationDestroy(testOp);
946}
947
948struct ProveDetOpBuildFuncHelper : public TestAnyBuildFuncHelper<CAPITest> {
949 virtual bool callIsA(MlirOperation op) override { return llzkOperationIsA_Verif_ProveDetOp(op); }
953 static std::unique_ptr<ProveDetOpBuildFuncHelper> get();
954
955protected:
957};
958
961TEST_F(CAPITest, Verif_ProveDetOp_build_pass) { ProveDetOpBuildFuncHelper::get()->run(*this); }
962
963TEST_F(VerifOperationLinkTests, llzk_ProveDetOp_GetCondition) {
964 auto testOp = createIndexOperation();
965
968 }
969
970 mlirOperationDestroy(testOp);
971}
972
973TEST_F(VerifOperationLinkTests, llzk_ProveDetOp_SetCondition) {
974 auto testOp = createIndexOperation();
975
977 auto dummyValue = mlirOperationGetResult(testOp, 0);
978 llzkVerif_ProveDetOpSetCondition(testOp, dummyValue);
979 }
980
981 mlirOperationDestroy(testOp);
982}
983
984TEST_F(VerifOperationLinkTests, llzk_ProveDetOp_GetResult) {
985 auto testOp = createIndexOperation();
986
988 (void)llzkVerif_ProveDetOpGetResult(testOp);
989 }
990
991 mlirOperationDestroy(testOp);
992}
993
995TEST_F(VerifOperationLinkTests, IsA_Verif_RequireComputeOp) {
996 auto testOperation = createIndexOperation();
997
998 // This will always return false since `createIndex*` returns an MLIR builtin
999 EXPECT_FALSE(llzkOperationIsA_Verif_RequireComputeOp(testOperation));
1000
1001 mlirOperationDestroy(testOperation);
1002}
1003
1005TEST_F(VerifOperationLinkTests, llzk_RequireComputeOp_Build) {
1006 // Returns an `arith.constant` op, which will never match the RequireComputeOp dialect check.
1007 auto testOp = createIndexOperation();
1008
1009 // This condition is always false, so the function is never actually called.
1010 // We only verify it compiles and links correctly.
1012 MlirOpBuilder builder = mlirOpBuilderCreate(context);
1013 MlirLocation location = mlirLocationUnknownGet(context);
1014 auto dummyValue = mlirOperationGetResult(testOp, 0);
1015
1016 (void)llzkVerif_RequireComputeOpBuild(builder, location, dummyValue);
1017 // No need to destroy builder or op since this code never runs.
1018 }
1019
1020 mlirOperationDestroy(testOp);
1021}
1022
1023struct RequireComputeOpBuildFuncHelper : public TestAnyBuildFuncHelper<CAPITest> {
1024 virtual bool callIsA(MlirOperation op) override { return llzkOperationIsA_Verif_RequireComputeOp(op); }
1028 static std::unique_ptr<RequireComputeOpBuildFuncHelper> get();
1029
1030protected:
1032};
1033
1036TEST_F(CAPITest, Verif_RequireComputeOp_build_pass) { RequireComputeOpBuildFuncHelper::get()->run(*this); }
1037
1038TEST_F(VerifOperationLinkTests, llzk_RequireComputeOp_GetCondition) {
1039 auto testOp = createIndexOperation();
1040
1043 }
1044
1045 mlirOperationDestroy(testOp);
1046}
1047
1048TEST_F(VerifOperationLinkTests, llzk_RequireComputeOp_SetCondition) {
1049 auto testOp = createIndexOperation();
1050
1052 auto dummyValue = mlirOperationGetResult(testOp, 0);
1053 llzkVerif_RequireComputeOpSetCondition(testOp, dummyValue);
1054 }
1055
1056 mlirOperationDestroy(testOp);
1057}
1058
1060TEST_F(VerifOperationLinkTests, IsA_Verif_RequireConstrainOp) {
1061 auto testOperation = createIndexOperation();
1062
1063 // This will always return false since `createIndex*` returns an MLIR builtin
1064 EXPECT_FALSE(llzkOperationIsA_Verif_RequireConstrainOp(testOperation));
1065
1066 mlirOperationDestroy(testOperation);
1067}
1068
1070TEST_F(VerifOperationLinkTests, llzk_RequireConstrainOp_Build) {
1071 // Returns an `arith.constant` op, which will never match the RequireConstrainOp dialect check.
1072 auto testOp = createIndexOperation();
1073
1074 // This condition is always false, so the function is never actually called.
1075 // We only verify it compiles and links correctly.
1077 MlirOpBuilder builder = mlirOpBuilderCreate(context);
1078 MlirLocation location = mlirLocationUnknownGet(context);
1079 auto dummyValue = mlirOperationGetResult(testOp, 0);
1080
1081 (void)llzkVerif_RequireConstrainOpBuild(builder, location, dummyValue);
1082 // No need to destroy builder or op since this code never runs.
1083 }
1084
1085 mlirOperationDestroy(testOp);
1086}
1087
1088struct RequireConstrainOpBuildFuncHelper : public TestAnyBuildFuncHelper<CAPITest> {
1089 virtual bool callIsA(MlirOperation op) override { return llzkOperationIsA_Verif_RequireConstrainOp(op); }
1093 static std::unique_ptr<RequireConstrainOpBuildFuncHelper> get();
1094
1095protected:
1097};
1098
1101TEST_F(CAPITest, Verif_RequireConstrainOp_build_pass) { RequireConstrainOpBuildFuncHelper::get()->run(*this); }
1102
1103TEST_F(VerifOperationLinkTests, llzk_RequireConstrainOp_GetCondition) {
1104 auto testOp = createIndexOperation();
1105
1108 }
1109
1110 mlirOperationDestroy(testOp);
1111}
1112
1113TEST_F(VerifOperationLinkTests, llzk_RequireConstrainOp_SetCondition) {
1114 auto testOp = createIndexOperation();
1115
1117 auto dummyValue = mlirOperationGetResult(testOp, 0);
1118 llzkVerif_RequireConstrainOpSetCondition(testOp, dummyValue);
1119 }
1120
1121 mlirOperationDestroy(testOp);
1122}
1123
1126 auto testOperation = createIndexOperation();
1127
1128 // This will always return false since `createIndex*` returns an MLIR builtin
1129 EXPECT_FALSE(llzkOperationIsA_Verif_StepOp(testOperation));
1130
1131 mlirOperationDestroy(testOperation);
1132}
1133
1135TEST_F(VerifOperationLinkTests, llzk_StepOp_Build) {
1136 // Returns an `arith.constant` op, which will never match the StepOp dialect check.
1137 auto testOp = createIndexOperation();
1138
1139 // This condition is always false, so the function is never actually called.
1140 // We only verify it compiles and links correctly.
1141 if (llzkOperationIsA_Verif_StepOp(testOp)) {
1142 MlirOpBuilder builder = mlirOpBuilderCreate(context);
1143 MlirLocation location = mlirLocationUnknownGet(context);
1144 auto dummyValue = mlirOperationGetResult(testOp, 0);
1145
1146 (void)llzkVerif_StepOpBuild(builder, location);
1147 // No need to destroy builder or op since this code never runs.
1148 }
1149
1150 mlirOperationDestroy(testOp);
1151}
1152
1153struct StepOpBuildFuncHelper : public TestAnyBuildFuncHelper<CAPITest> {
1154 virtual bool callIsA(MlirOperation op) override { return llzkOperationIsA_Verif_StepOp(op); }
1158 static std::unique_ptr<StepOpBuildFuncHelper> get();
1159
1160protected:
1162};
1163
1166TEST_F(CAPITest, Verif_StepOp_build_pass) { StepOpBuildFuncHelper::get()->run(*this); }
1167
1168TEST_F(VerifOperationLinkTests, llzk_StepOp_GetRegionRegion) {
1169 auto testOp = createIndexOperation();
1170
1171 if (llzkOperationIsA_Verif_StepOp(testOp)) {
1172 (void)llzkVerif_StepOpGetRegion(testOp);
1173 }
1174
1175 mlirOperationDestroy(testOp);
1176}
1177
1179TEST_F(VerifOperationLinkTests, IsA_Verif_StepYieldOp) {
1180 auto testOperation = createIndexOperation();
1181
1182 // This will always return false since `createIndex*` returns an MLIR builtin
1183 EXPECT_FALSE(llzkOperationIsA_Verif_StepYieldOp(testOperation));
1184
1185 mlirOperationDestroy(testOperation);
1186}
1187
1189TEST_F(VerifOperationLinkTests, llzk_StepYieldOp_Build) {
1190 // Returns an `arith.constant` op, which will never match the StepYieldOp dialect check.
1191 auto testOp = createIndexOperation();
1192
1193 // This condition is always false, so the function is never actually called.
1194 // We only verify it compiles and links correctly.
1196 MlirOpBuilder builder = mlirOpBuilderCreate(context);
1197 MlirLocation location = mlirLocationUnknownGet(context);
1198 auto dummyValue = mlirOperationGetResult(testOp, 0);
1199
1200 (void)llzkVerif_StepYieldOpBuild(builder, location, dummyValue);
1201 // No need to destroy builder or op since this code never runs.
1202 }
1203
1204 mlirOperationDestroy(testOp);
1205}
1206
1207struct StepYieldOpBuildFuncHelper : public TestAnyBuildFuncHelper<CAPITest> {
1208 virtual bool callIsA(MlirOperation op) override { return llzkOperationIsA_Verif_StepYieldOp(op); }
1212 static std::unique_ptr<StepYieldOpBuildFuncHelper> get();
1213
1214protected:
1216};
1217
1220TEST_F(CAPITest, Verif_StepYieldOp_build_pass) { StepYieldOpBuildFuncHelper::get()->run(*this); }
1221
1222TEST_F(VerifOperationLinkTests, llzk_StepYieldOp_GetValue) {
1223 auto testOp = createIndexOperation();
1224
1226 (void)llzkVerif_StepYieldOpGetValue(testOp);
1227 }
1228
1229 mlirOperationDestroy(testOp);
1230}
1231
1232TEST_F(VerifOperationLinkTests, llzk_StepYieldOp_SetValue) {
1233 auto testOp = createIndexOperation();
1234
1236 auto dummyValue = mlirOperationGetResult(testOp, 0);
1237 llzkVerif_StepYieldOpSetValue(testOp, dummyValue);
1238 }
1239
1240 mlirOperationDestroy(testOp);
1241}
1242
1244TEST_F(VerifOperationLinkTests, IsA_Verif_VerifAssertOp) {
1245 auto testOperation = createIndexOperation();
1246
1247 // This will always return false since `createIndex*` returns an MLIR builtin
1248 EXPECT_FALSE(llzkOperationIsA_Verif_VerifAssertOp(testOperation));
1249
1250 mlirOperationDestroy(testOperation);
1251}
1252
1254TEST_F(VerifOperationLinkTests, llzk_VerifAssertOp_Build) {
1255 // Returns an `arith.constant` op, which will never match the VerifAssertOp dialect check.
1256 auto testOp = createIndexOperation();
1257
1258 // This condition is always false, so the function is never actually called.
1259 // We only verify it compiles and links correctly.
1261 MlirOpBuilder builder = mlirOpBuilderCreate(context);
1262 MlirLocation location = mlirLocationUnknownGet(context);
1263 auto dummyValue = mlirOperationGetResult(testOp, 0);
1264
1265 (void)llzkVerif_VerifAssertOpBuild(builder, location, dummyValue);
1266 // No need to destroy builder or op since this code never runs.
1267 }
1268
1269 mlirOperationDestroy(testOp);
1270}
1271
1272struct VerifAssertOpBuildFuncHelper : public TestAnyBuildFuncHelper<CAPITest> {
1273 virtual bool callIsA(MlirOperation op) override { return llzkOperationIsA_Verif_VerifAssertOp(op); }
1277 static std::unique_ptr<VerifAssertOpBuildFuncHelper> get();
1278
1279protected:
1281};
1282
1285TEST_F(CAPITest, Verif_VerifAssertOp_build_pass) { VerifAssertOpBuildFuncHelper::get()->run(*this); }
1286
1287TEST_F(VerifOperationLinkTests, llzk_VerifAssertOp_GetCondition) {
1288 auto testOp = createIndexOperation();
1289
1292 }
1293
1294 mlirOperationDestroy(testOp);
1295}
1296
1297TEST_F(VerifOperationLinkTests, llzk_VerifAssertOp_SetCondition) {
1298 auto testOp = createIndexOperation();
1299
1301 auto dummyValue = mlirOperationGetResult(testOp, 0);
1302 llzkVerif_VerifAssertOpSetCondition(testOp, dummyValue);
1303 }
1304
1305 mlirOperationDestroy(testOp);
1306}
1307
1309TEST_F(VerifOperationLinkTests, IsA_Verif_VerifProveOp) {
1310 auto testOperation = createIndexOperation();
1311
1312 // This will always return false since `createIndex*` returns an MLIR builtin
1313 EXPECT_FALSE(llzkOperationIsA_Verif_VerifProveOp(testOperation));
1314
1315 mlirOperationDestroy(testOperation);
1316}
1317
1319TEST_F(VerifOperationLinkTests, llzk_VerifProveOp_Build) {
1320 // Returns an `arith.constant` op, which will never match the VerifProveOp dialect check.
1321 auto testOp = createIndexOperation();
1322
1323 // This condition is always false, so the function is never actually called.
1324 // We only verify it compiles and links correctly.
1326 MlirOpBuilder builder = mlirOpBuilderCreate(context);
1327 MlirLocation location = mlirLocationUnknownGet(context);
1328 auto dummyValue = mlirOperationGetResult(testOp, 0);
1329
1330 (void)llzkVerif_VerifProveOpBuild(builder, location, dummyValue);
1331 // No need to destroy builder or op since this code never runs.
1332 }
1333
1334 mlirOperationDestroy(testOp);
1335}
1336
1337struct VerifProveOpBuildFuncHelper : public TestAnyBuildFuncHelper<CAPITest> {
1338 virtual bool callIsA(MlirOperation op) override { return llzkOperationIsA_Verif_VerifProveOp(op); }
1342 static std::unique_ptr<VerifProveOpBuildFuncHelper> get();
1343
1344protected:
1346};
1347
1350TEST_F(CAPITest, Verif_VerifProveOp_build_pass) { VerifProveOpBuildFuncHelper::get()->run(*this); }
1351
1352TEST_F(VerifOperationLinkTests, llzk_VerifProveOp_GetCondition) {
1353 auto testOp = createIndexOperation();
1354
1357 }
1358
1359 mlirOperationDestroy(testOp);
1360}
1361
1362TEST_F(VerifOperationLinkTests, llzk_VerifProveOp_SetCondition) {
1363 auto testOp = createIndexOperation();
1364
1366 auto dummyValue = mlirOperationGetResult(testOp, 0);
1367 llzkVerif_VerifProveOpSetCondition(testOp, dummyValue);
1368 }
1369
1370 mlirOperationDestroy(testOp);
1371}
1372
1374TEST_F(VerifOperationLinkTests, IsA_Verif_VerifSMTProveOp) {
1375 auto testOperation = createIndexOperation();
1376
1377 // This will always return false since `createIndex*` returns an MLIR builtin
1378 EXPECT_FALSE(llzkOperationIsA_Verif_VerifSMTProveOp(testOperation));
1379
1380 mlirOperationDestroy(testOperation);
1381}
1382
1384TEST_F(VerifOperationLinkTests, llzk_VerifSMTProveOp_Build) {
1385 // Returns an `arith.constant` op, which will never match the VerifSMTProveOp dialect check.
1386 auto testOp = createIndexOperation();
1387
1388 // This condition is always false, so the function is never actually called.
1389 // We only verify it compiles and links correctly.
1391 MlirOpBuilder builder = mlirOpBuilderCreate(context);
1392 MlirLocation location = mlirLocationUnknownGet(context);
1393 auto dummyValue = mlirOperationGetResult(testOp, 0);
1394
1395 (void)llzkVerif_VerifSMTProveOpBuild(builder, location, dummyValue);
1396 // No need to destroy builder or op since this code never runs.
1397 }
1398
1399 mlirOperationDestroy(testOp);
1400}
1401
1402struct VerifSMTProveOpBuildFuncHelper : public TestAnyBuildFuncHelper<CAPITest> {
1403 virtual bool callIsA(MlirOperation op) override { return llzkOperationIsA_Verif_VerifSMTProveOp(op); }
1407 static std::unique_ptr<VerifSMTProveOpBuildFuncHelper> get();
1408
1409protected:
1411};
1412
1415TEST_F(CAPITest, Verif_VerifSMTProveOp_build_pass) { VerifSMTProveOpBuildFuncHelper::get()->run(*this); }
1416
1417TEST_F(VerifOperationLinkTests, llzk_VerifSMTProveOp_GetCondition) {
1418 auto testOp = createIndexOperation();
1419
1422 }
1423
1424 mlirOperationDestroy(testOp);
1425}
1426
1427TEST_F(VerifOperationLinkTests, llzk_VerifSMTProveOp_SetCondition) {
1428 auto testOp = createIndexOperation();
1429
1431 auto dummyValue = mlirOperationGetResult(testOp, 0);
1432 llzkVerif_VerifSMTProveOpSetCondition(testOp, dummyValue);
1433 }
1434
1435 mlirOperationDestroy(testOp);
1436}
TEST_F(ArrayOperationLinkTests, IsA_Array_ArrayLengthOp)
This test ensures llzkOperationIsA_Array_ArrayLengthOp links properly.
MlirOpBuilder mlirOpBuilderCreate(MlirContext ctx)
Creates a new OpBuilder for the given MLIR context.
Definition Builder.cpp:78
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_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.
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.
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.
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)
Return the "self" value (i.e.
MlirValue llzkVerif_IncreasesOpGetValue(MlirOperation op)
Get Value operand from llzk::verif::IncreasesOp Operation.
MlirType llzkVerif_IncludeOpGetTypeSignature(MlirOperation inp)
Return the FunctionType inferred from the arg operands of this CallOp.
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.
MlirOperation llzkVerif_IncludeOpResolveCallable(MlirOperation inp)
Required by CallOpInterface.
virtual bool callIsA(MlirOperation op) override
static std::unique_ptr< AssumeDetOpBuildFuncHelper > get()
This method must be implemented to return a subclass of AssumeDetOpBuildFuncHelper that at least impl...
AssumeDetOpBuildFuncHelper()=default
static std::unique_ptr< ContractEndOpBuildFuncHelper > get()
This method must be implemented to return a subclass of ContractEndOpBuildFuncHelper that at least im...
virtual bool callIsA(MlirOperation op) override
DecreasesOpBuildFuncHelper()=default
virtual bool callIsA(MlirOperation op) override
static std::unique_ptr< DecreasesOpBuildFuncHelper > get()
This method must be implemented to return a subclass of DecreasesOpBuildFuncHelper that at least impl...
static std::unique_ptr< EnsureComputeOpBuildFuncHelper > get()
This method must be implemented to return a subclass of EnsureComputeOpBuildFuncHelper that at least ...
virtual bool callIsA(MlirOperation op) override
virtual bool callIsA(MlirOperation op) override
static std::unique_ptr< EnsureConstrainOpBuildFuncHelper > get()
This method must be implemented to return a subclass of EnsureConstrainOpBuildFuncHelper that at leas...
virtual bool callIsA(MlirOperation op) override
IncreasesOpBuildFuncHelper()=default
static std::unique_ptr< IncreasesOpBuildFuncHelper > get()
This method must be implemented to return a subclass of IncreasesOpBuildFuncHelper that at least impl...
Representation of an mlir::ValueRange.
Definition Support.h:47
MlirValue const * values
Pointer to the first value in the range.
Definition Support.h:49
intptr_t size
Number of values in the range.
Definition Support.h:51
OldOpBuildFuncHelper()=default
virtual bool callIsA(MlirOperation op) override
static std::unique_ptr< OldOpBuildFuncHelper > get()
This method must be implemented to return a subclass of OldOpBuildFuncHelper that at least implements...
virtual bool callIsA(MlirOperation op) override
static std::unique_ptr< ProveDetOpBuildFuncHelper > get()
This method must be implemented to return a subclass of ProveDetOpBuildFuncHelper that at least imple...
ProveDetOpBuildFuncHelper()=default
virtual bool callIsA(MlirOperation op) override
static std::unique_ptr< RequireComputeOpBuildFuncHelper > get()
This method must be implemented to return a subclass of RequireComputeOpBuildFuncHelper that at least...
virtual bool callIsA(MlirOperation op) override
static std::unique_ptr< RequireConstrainOpBuildFuncHelper > get()
This method must be implemented to return a subclass of RequireConstrainOpBuildFuncHelper that at lea...
static std::unique_ptr< StepOpBuildFuncHelper > get()
This method must be implemented to return a subclass of StepOpBuildFuncHelper that at least implement...
StepOpBuildFuncHelper()=default
virtual bool callIsA(MlirOperation op) override
static std::unique_ptr< StepYieldOpBuildFuncHelper > get()
This method must be implemented to return a subclass of StepYieldOpBuildFuncHelper that at least impl...
virtual bool callIsA(MlirOperation op) override
StepYieldOpBuildFuncHelper()=default
virtual bool callIsA(MlirOperation op) override
static std::unique_ptr< VerifAssertOpBuildFuncHelper > get()
This method must be implemented to return a subclass of VerifAssertOpBuildFuncHelper that at least im...
static std::unique_ptr< VerifProveOpBuildFuncHelper > get()
This method must be implemented to return a subclass of VerifProveOpBuildFuncHelper that at least imp...
virtual bool callIsA(MlirOperation op) override
virtual bool callIsA(MlirOperation op) override
static std::unique_ptr< VerifSMTProveOpBuildFuncHelper > get()
This method must be implemented to return a subclass of VerifSMTProveOpBuildFuncHelper that at least ...