LLZK 2.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 IncludeOperationLinkTests : public CAPITest {};
11
13TEST_F(IncludeOperationLinkTests, IsA_Include_IncludeOp) {
14 auto testOperation = createIndexOperation();
15
16 // This will always return false since `createIndex*` returns an MLIR builtin
17 EXPECT_FALSE(llzkOperationIsA_Include_IncludeOp(testOperation));
18
19 mlirOperationDestroy(testOperation);
20}
21
23TEST_F(IncludeOperationLinkTests, llzk_IncludeOp_Build) {
24 // Returns an `arith.constant` op, which will never match the IncludeOp 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 auto sym_nameAttr = mlirOperationGetName(testOp);
34 auto pathAttr = mlirOperationGetName(testOp);
35
36 (void)llzkInclude_IncludeOpBuild(builder, location, sym_nameAttr, pathAttr);
37 // No need to destroy builder or op since this code never runs.
38 }
39
40 mlirOperationDestroy(testOp);
41}
42
43struct IncludeOpBuildFuncHelper : public TestAnyBuildFuncHelper<CAPITest> {
44 virtual bool callIsA(MlirOperation op) override { return llzkOperationIsA_Include_IncludeOp(op); }
48 static std::unique_ptr<IncludeOpBuildFuncHelper> get();
49
50protected:
52};
53
56TEST_F(CAPITest, IncludeOp_build_pass) { IncludeOpBuildFuncHelper::get()->run(*this); }
57
58TEST_F(IncludeOperationLinkTests, llzk_IncludeOp_GetSymNameAttr) {
59 auto testOp = createIndexOperation();
60
63 }
64
65 mlirOperationDestroy(testOp);
66}
67
68TEST_F(IncludeOperationLinkTests, llzk_IncludeOp_SetSymNameAttr) {
69 auto testOp = createIndexOperation();
70
72 llzkInclude_IncludeOpSetSymName(testOp, createIndexAttribute());
73 }
74
75 mlirOperationDestroy(testOp);
76}
77
78TEST_F(IncludeOperationLinkTests, llzk_IncludeOp_GetPathAttr) {
79 auto testOp = createIndexOperation();
80
82 (void)llzkInclude_IncludeOpGetPath(testOp);
83 }
84
85 mlirOperationDestroy(testOp);
86}
87
88TEST_F(IncludeOperationLinkTests, llzk_IncludeOp_SetPathAttr) {
89 auto testOp = createIndexOperation();
90
92 llzkInclude_IncludeOpSetPath(testOp, createIndexAttribute());
93 }
94
95 mlirOperationDestroy(testOp);
96}
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:62
MlirOperation llzkInclude_IncludeOpBuild(MlirOpBuilder builder, MlirLocation location, MlirIdentifier sym_name, MlirIdentifier path)
Build a llzk::include::IncludeOp Operation.
void llzkInclude_IncludeOpSetSymName(MlirOperation op, MlirAttribute attr)
Set SymName attribute of llzk::include::IncludeOp Operation.
MlirAttribute llzkInclude_IncludeOpGetPath(MlirOperation op)
Get Path attribute from llzk::include::IncludeOp Operation.
void llzkInclude_IncludeOpSetPath(MlirOperation op, MlirAttribute attr)
Set Path attribute of llzk::include::IncludeOp Operation.
MlirAttribute llzkInclude_IncludeOpGetSymName(MlirOperation op)
Get SymName attribute from llzk::include::IncludeOp Operation.
bool llzkOperationIsA_Include_IncludeOp(MlirOperation inp)
Returns true if the Operation is a llzk::include::IncludeOp.
IncludeOpBuildFuncHelper()=default
static std::unique_ptr< IncludeOpBuildFuncHelper > get()
This method must be implemented to return a subclass of IncludeOpBuildFuncHelper that at least implem...
virtual bool callIsA(MlirOperation op) override