LLZK
3.0.0
An open-source IR for Zero Knowledge (ZK) circuits
Toggle main menu visibility
Loading...
Searching...
No Matches
DialectRegistration.cpp
Go to the documentation of this file.
1
//===-- DialectRegistration.cpp ---------------------------------*- C++ -*-===//
2
//
3
// Part of the LLZK Project, under the Apache License v2.0.
4
// See LICENSE.txt for license information.
5
// Copyright 2025 Veridise Inc.
6
// SPDX-License-Identifier: Apache-2.0
7
//
8
//===----------------------------------------------------------------------===//
13
//===----------------------------------------------------------------------===//
14
15
#include "
llzk/Dialect/DialectRegistration.h
"
16
17
#include "r1cs/DialectRegistration.h"
18
#include "smt/DialectRegistration.h"
19
#include "zklean/DialectRegistration.h"
20
21
#include "
llzk/Config/Config.h
"
22
23
#if LLZK_WITH_PCL
24
#include "pcl/DialectRegistration.h"
25
#endif
26
27
#include "
llzk-c/DialectRegistration.h
"
28
29
#include <mlir-c/IR.h>
30
31
#include <mlir/CAPI/IR.h>
32
#include <mlir/CAPI/Wrap.h>
33
34
void
llzkRegisterCoreDialects
(MlirDialectRegistry registry) {
35
llzk::registerDialects
(*unwrap(registry));
36
}
37
38
void
llzkRegisterCorePasses
(MlirDialectRegistry registry) {
39
llzk::registerPasses
(*unwrap(registry));
40
}
41
42
void
llzkRegisterPCLDialects
(MlirDialectRegistry registry) {
43
#if LLZK_WITH_PCL
44
pcl::registerDialects(*unwrap(registry));
45
#else
46
(void)registry;
47
#endif
48
}
49
50
void
llzkRegisterPCLPasses
(MlirDialectRegistry registry) {
51
#if LLZK_WITH_PCL
52
pcl::registerPasses(*unwrap(registry));
53
#else
54
(void)registry;
55
#endif
56
}
57
58
void
llzkRegisterR1CSDialects
(MlirDialectRegistry registry) {
59
r1cs::registerDialects(*unwrap(registry));
60
}
61
62
void
llzkRegisterR1CSPasses
(MlirDialectRegistry registry) {
63
r1cs::registerPasses(*unwrap(registry));
64
}
65
66
void
llzkRegisterSMTDialects
(MlirDialectRegistry registry) {
67
llzk::smt::registerDialects(*unwrap(registry));
68
}
69
70
void
llzkRegisterSMTPasses
(MlirDialectRegistry registry) {
71
llzk::smt::registerPasses(*unwrap(registry));
72
}
73
74
void
llzkRegisterZKLeanDialects
(MlirDialectRegistry registry) {
75
zklean::registerDialects(*unwrap(registry));
76
}
77
78
void
llzkRegisterZKLeanPasses
(MlirDialectRegistry registry) {
79
zklean::registerPasses(*unwrap(registry));
80
}
llzkRegisterSMTPasses
void llzkRegisterSMTPasses(MlirDialectRegistry registry)
Registers SMT conversion passes.
Definition
DialectRegistration.cpp:70
llzkRegisterZKLeanPasses
void llzkRegisterZKLeanPasses(MlirDialectRegistry registry)
Registers ZKLean passes.
Definition
DialectRegistration.cpp:78
llzkRegisterR1CSPasses
void llzkRegisterR1CSPasses(MlirDialectRegistry registry)
Registers R1CS passes.
Definition
DialectRegistration.cpp:62
llzkRegisterZKLeanDialects
void llzkRegisterZKLeanDialects(MlirDialectRegistry registry)
Registers ZKLean dialects in the given registry.
Definition
DialectRegistration.cpp:74
llzkRegisterCoreDialects
void llzkRegisterCoreDialects(MlirDialectRegistry registry)
Registers core LLZK dialects in the given registry.
Definition
DialectRegistration.cpp:34
llzkRegisterSMTDialects
void llzkRegisterSMTDialects(MlirDialectRegistry registry)
Registers the MLIR smt and LLZK smt_info metadata dialects in the given registry.
Definition
DialectRegistration.cpp:66
llzkRegisterPCLPasses
void llzkRegisterPCLPasses(MlirDialectRegistry registry)
Registers PCL passes.
Definition
DialectRegistration.cpp:50
llzkRegisterR1CSDialects
void llzkRegisterR1CSDialects(MlirDialectRegistry registry)
Registers R1CS dialects in the given registry.
Definition
DialectRegistration.cpp:58
llzkRegisterCorePasses
void llzkRegisterCorePasses(MlirDialectRegistry registry)
Registers core LLZK passes.
Definition
DialectRegistration.cpp:38
llzkRegisterPCLDialects
void llzkRegisterPCLDialects(MlirDialectRegistry registry)
Registers PCL dialects in the given registry.
Definition
DialectRegistration.cpp:42
Config.h
DialectRegistration.h
Declares dialect and pass registration functions for core LLZK dialects and backends.
DialectRegistration.h
Declares dialect and pass registration functions for core LLZK dialects.
llzk::registerDialects
void registerDialects(mlir::DialectRegistry ®istry)
Register core LLZK dialects, the MLIR arith, scf, and smt dialects, and verification extensions in re...
Definition
DialectRegistration.cpp:58
llzk::registerPasses
void registerPasses(mlir::DialectRegistry ®istry)
Register LLZK analysis, validation, and transformation passes and pipelines, SMT conversion passes,...
Definition
DialectRegistration.cpp:118
lib
CAPI
DialectRegistration.cpp
Generated by
1.17.0
Copyright 2025 Veridise Inc. under the Apache License v2.0. Copyright 2026 Project LLZK under the Apache License v2.0.