LLZK 3.0.0
An open-source IR for Zero Knowledge (ZK) circuits
Loading...
Searching...
No Matches
Verif.cpp File Reference
#include "llzk-c/Dialect/Verif.h"
#include "llzk/CAPI/Builder.h"
#include "llzk/CAPI/Support.h"
#include "llzk/Dialect/Verif/IR/Dialect.h"
#include "llzk/Dialect/Verif/IR/Ops.h"
#include <mlir-c/BuiltinAttributes.h>
#include <mlir/CAPI/Registration.h>
#include <mlir/CAPI/Wrap.h>
#include <mlir/IR/BuiltinAttributes.h>
#include "llzk/Dialect/Verif/IR/Ops.capi.cpp.inc"
Include dependency graph for Verif.cpp:

Go to the source code of this file.

Functions

void llzkVerif_attachInterfaces (MlirContext context)
 Attaches the interfaces defined by the verif dialect to upstream IR elements.
 LLZK_DEFINE_OP_BUILD_METHOD (Verif, ContractOp, MlirIdentifier sym_name, MlirAttribute target, MlirAttribute function_type, MlirAttribute arg_attrs)
 LLZK_DEFINE_SUFFIX_OP_BUILD_METHOD (Verif, ContractOp, FromTargetIdentifier, MlirIdentifier sym_name, MlirIdentifier target)
 LLZK_DEFINE_SUFFIX_OP_BUILD_METHOD (Verif, ContractOp, FromTargetAttr, MlirIdentifier sym_name, MlirAttribute target)
 LLZK_DEFINE_OP_BUILD_METHOD (Verif, IncludeOp, MlirAttribute callee, MlirValueRange argOperands, MlirAttribute templateParams)
 LLZK_DEFINE_OP_BUILD_METHOD (Verif, InvariantOp, MlirStringRef loopName, intptr_t numArgs, MlirType const *types, MlirLocation const *locs)
MlirBlock llzkVerif_InvariantOpGetBody (MlirOperation op)
 Returns the body of the invariant operation.

Function Documentation

◆ LLZK_DEFINE_OP_BUILD_METHOD() [1/3]

LLZK_DEFINE_OP_BUILD_METHOD ( Verif ,
ContractOp ,
MlirIdentifier sym_name,
MlirAttribute target,
MlirAttribute function_type,
MlirAttribute arg_attrs )

Definition at line 39 of file Verif.cpp.

◆ LLZK_DEFINE_OP_BUILD_METHOD() [2/3]

LLZK_DEFINE_OP_BUILD_METHOD ( Verif ,
IncludeOp ,
MlirAttribute callee,
MlirValueRange argOperands,
MlirAttribute templateParams )

Definition at line 83 of file Verif.cpp.

◆ LLZK_DEFINE_OP_BUILD_METHOD() [3/3]

LLZK_DEFINE_OP_BUILD_METHOD ( Verif ,
InvariantOp ,
MlirStringRef loopName,
intptr_t numArgs,
MlirType const * types,
MlirLocation const * locs )

Definition at line 107 of file Verif.cpp.

◆ LLZK_DEFINE_SUFFIX_OP_BUILD_METHOD() [1/2]

LLZK_DEFINE_SUFFIX_OP_BUILD_METHOD ( Verif ,
ContractOp ,
FromTargetAttr ,
MlirIdentifier sym_name,
MlirAttribute target )

Definition at line 67 of file Verif.cpp.

◆ LLZK_DEFINE_SUFFIX_OP_BUILD_METHOD() [2/2]

LLZK_DEFINE_SUFFIX_OP_BUILD_METHOD ( Verif ,
ContractOp ,
FromTargetIdentifier ,
MlirIdentifier sym_name,
MlirIdentifier target )

Definition at line 59 of file Verif.cpp.

◆ llzkVerif_attachInterfaces()

void llzkVerif_attachInterfaces ( MlirContext context)

Attaches the interfaces defined by the verif dialect to upstream IR elements.

Attempting to use those interfaces without calling this function first will result in an error.

Definition at line 31 of file Verif.cpp.

◆ llzkVerif_InvariantOpGetBody()

MlirBlock llzkVerif_InvariantOpGetBody ( MlirOperation op)

Returns the body of the invariant operation.

Definition at line 122 of file Verif.cpp.