Loading [MathJax]/extensions/tex2jax.js
CIRCT 21.0.0git
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
InitAllDialects.h
Go to the documentation of this file.
1//===- InitAllDialects.h - CIRCT Dialects Registration ----------*- C++ -*-===//
2//
3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4// See https://llvm.org/LICENSE.txt for license information.
5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6//
7//===----------------------------------------------------------------------===//
8//
9// This file defines a helper to trigger the registration of all dialects and
10// passes to the system.
11//
12//===----------------------------------------------------------------------===//
13
14#ifndef CIRCT_INITALLDIALECTS_H_
15#define CIRCT_INITALLDIALECTS_H_
16
42#ifdef CIRCT_INCLUDE_TESTS
44#endif
51#include "mlir/Dialect/SMT/IR/SMTDialect.h"
52#include "mlir/IR/Dialect.h"
53
54namespace circt {
55
56// Add all the MLIR dialects to the provided registry.
57inline void registerAllDialects(mlir::DialectRegistry &registry) {
58 // clang-format off
59 registry.insert<
60 aig::AIGDialect,
61 arc::ArcDialect,
62 calyx::CalyxDialect,
63 chirrtl::CHIRRTLDialect,
64 comb::CombDialect,
65 datapath::DatapathDialect,
66 dc::DCDialect,
67 debug::DebugDialect,
68 emit::EmitDialect,
69 esi::ESIDialect,
70 firrtl::FIRRTLDialect,
71 fsm::FSMDialect,
72 handshake::HandshakeDialect,
73 hw::HWDialect,
74 hwarith::HWArithDialect,
75 interop::InteropDialect,
76 kanagawa::KanagawaDialect,
77 llhd::LLHDDialect,
78 loopschedule::LoopScheduleDialect,
79 ltl::LTLDialect,
80 moore::MooreDialect,
81 msft::MSFTDialect,
82 om::OMDialect,
83 pipeline::PipelineDialect,
84 rtg::RTGDialect,
85#ifdef CIRCT_INCLUDE_TESTS
86 rtgtest::RTGTestDialect,
87#endif
88 seq::SeqDialect,
89 sim::SimDialect,
90 mlir::smt::SMTDialect,
91 ssp::SSPDialect,
92 sv::SVDialect,
93 systemc::SystemCDialect,
94 verif::VerifDialect
95 >();
96 // clang-format on
97}
98
99} // namespace circt
100
101#endif // CIRCT_INITALLDIALECTS_H_
The InstanceGraph op interface, see InstanceGraphInterface.td for more details.
void registerAllDialects(mlir::DialectRegistry &registry)