LLZK
0.1.0
An open-source IR for Zero Knowledge (ZK) circuits
Loading...
Searching...
No Matches
Dialect.cpp
Go to the documentation of this file.
1
//===-- Dialect.cpp - Felt dialect implementation ---------------*- 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
//===----------------------------------------------------------------------===//
9
10
#include "
llzk/Dialect/Felt/IR/Attrs.h
"
11
#include "
llzk/Dialect/Felt/IR/Dialect.h
"
12
#include "
llzk/Dialect/Felt/IR/Ops.h
"
13
#include "
llzk/Dialect/Felt/IR/Types.h
"
14
#include "
llzk/Dialect/LLZK/IR/AttributeHelper.h
"
15
#include "
llzk/Dialect/LLZK/IR/Versioning.h
"
16
17
#include <mlir/IR/DialectImplementation.h>
18
19
#include <llvm/ADT/TypeSwitch.h>
20
21
// TableGen'd implementation files
22
#include "
llzk/Dialect/Felt/IR/Dialect.cpp.inc
"
23
24
#define GET_TYPEDEF_CLASSES
25
#include "
llzk/Dialect/Felt/IR/Types.cpp.inc
"
26
#define GET_ATTRDEF_CLASSES
27
#include "
llzk/Dialect/Felt/IR/Attrs.cpp.inc
"
28
29
//===------------------------------------------------------------------===//
30
// FeltDialect
31
//===------------------------------------------------------------------===//
32
33
auto
llzk::felt::FeltDialect::initialize() ->
void
{
34
// clang-format off
35
addOperations<
36
#define GET_OP_LIST
37
#include "
llzk/Dialect/Felt/IR/Ops.cpp.inc
"
38
>();
39
40
addTypes<
41
#define GET_TYPEDEF_LIST
42
#include "
llzk/Dialect/Felt/IR/Types.cpp.inc
"
43
>();
44
45
addAttributes<
46
#define GET_ATTRDEF_LIST
47
#include "
llzk/Dialect/Felt/IR/Attrs.cpp.inc
"
48
>();
49
// clang-format on
50
addInterfaces<LLZKDialectBytecodeInterface<FeltDialect>>();
51
}
AttributeHelper.h
Attrs.cpp.inc
Attrs.h
Dialect.cpp.inc
Dialect.h
Ops.cpp.inc
Ops.h
Types.cpp.inc
Types.h
Versioning.h
lib
Dialect
Felt
IR
Dialect.cpp
Generated by
1.14.0
Copyright 2025 Veridise Inc. under the Apache License v2.0. Copyright 2026 Project LLZK under the Apache License v2.0.