CIRCT 24.0.0git
Loading...
Searching...
No Matches
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
43#ifdef CIRCT_INCLUDE_TESTS
45#endif
53#include "mlir/Dialect/SMT/IR/SMTDialect.h"
54#include "mlir/IR/Dialect.h"
55
56namespace circt {
57
58// Add all the MLIR dialects to the provided registry.
59inline void registerAllDialects(mlir::DialectRegistry &registry) {
60 // clang-format off
61 registry.insert<
62 arc::ArcDialect,
63 axi4::AXI4Dialect,
64 calyx::CalyxDialect,
65 chirrtl::CHIRRTLDialect,
66 comb::CombDialect,
67 datapath::DatapathDialect,
68 dc::DCDialect,
69 debug::DebugDialect,
70 emit::EmitDialect,
71 esi::ESIDialect,
72 firrtl::FIRRTLDialect,
73 fsm::FSMDialect,
74 handshake::HandshakeDialect,
75 hw::HWDialect,
76 hwarith::HWArithDialect,
77 interop::InteropDialect,
78 kanagawa::KanagawaDialect,
79 llhd::LLHDDialect,
80 loopschedule::LoopScheduleDialect,
81 ltl::LTLDialect,
82 moore::MooreDialect,
83 msft::MSFTDialect,
84 om::OMDialect,
85 pipeline::PipelineDialect,
86 probe::ProbeDialect,
87 rtg::RTGDialect,
88#ifdef CIRCT_INCLUDE_TESTS
89 rtgtest::RTGTestDialect,
90#endif
91 seq::SeqDialect,
92 sim::SimDialect,
93 mlir::smt::SMTDialect,
94 ssp::SSPDialect,
95 sv::SVDialect,
96 synth::SynthDialect,
97 systemc::SystemCDialect,
98 verif::VerifDialect
99 >();
100 // clang-format on
101}
102
103} // namespace circt
104
105#endif // CIRCT_INITALLDIALECTS_H_
The InstanceGraph op interface, see InstanceGraphInterface.td for more details.
void registerAllDialects(mlir::DialectRegistry &registry)