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 - POD 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 2026 Project LLZK
6
// SPDX-License-Identifier: Apache-2.0
7
//
8
//===----------------------------------------------------------------------===//
9
10
#include "
llzk/Dialect/LLZK/IR/Versioning.h
"
11
#include "
llzk/Dialect/POD/IR/Attrs.h
"
12
#include "
llzk/Dialect/POD/IR/Dialect.h
"
13
#include "
llzk/Dialect/POD/IR/Ops.h
"
14
#include "
llzk/Dialect/POD/IR/Types.h
"
15
16
#include <mlir/IR/Builders.h>
17
#include <mlir/IR/DialectImplementation.h>
18
19
#include <llvm/ADT/TypeSwitch.h>
20
21
// TableGen'd implementation files
22
#include "
llzk/Dialect/POD/IR/Dialect.cpp.inc
"
23
24
#define GET_TYPEDEF_CLASSES
25
#include "
llzk/Dialect/POD/IR/Types.cpp.inc
"
26
27
// Need a complete declaration of storage classes for below
28
#define GET_ATTRDEF_CLASSES
29
#include "
llzk/Dialect/POD/IR/Attrs.cpp.inc
"
30
31
//===------------------------------------------------------------------===//
32
// ArrayDialect
33
//===------------------------------------------------------------------===//
34
35
auto
llzk::pod::PODDialect::initialize() ->
void
{
36
// clang-format off
37
addOperations<
38
#define GET_OP_LIST
39
#include "
llzk/Dialect/POD/IR/Ops.cpp.inc
"
40
>();
41
42
addTypes<
43
#define GET_TYPEDEF_LIST
44
#include "
llzk/Dialect/POD/IR/Types.cpp.inc
"
45
>();
46
47
addAttributes<
48
#define GET_ATTRDEF_LIST
49
#include "
llzk/Dialect/POD/IR/Attrs.cpp.inc
"
50
>();
51
52
// clang-format on
53
addInterfaces<LLZKDialectBytecodeInterface<PODDialect>>();
54
}
Attrs.cpp.inc
Attrs.h
Dialect.cpp.inc
Dialect.h
Ops.cpp.inc
Ops.h
Types.cpp.inc
Types.h
Versioning.h
lib
Dialect
POD
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.