CIRCT  19.0.0git
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 
46 #include "mlir/IR/Dialect.h"
47 
48 namespace circt {
49 
50 // Add all the MLIR dialects to the provided registry.
51 inline void registerAllDialects(mlir::DialectRegistry &registry) {
52  // clang-format off
53  registry.insert<
54  arc::ArcDialect,
55  calyx::CalyxDialect,
56  chirrtl::CHIRRTLDialect,
57  comb::CombDialect,
58  dc::DCDialect,
59  debug::DebugDialect,
60  emit::EmitDialect,
61  esi::ESIDialect,
62  firrtl::FIRRTLDialect,
63  fsm::FSMDialect,
64  handshake::HandshakeDialect,
65  hw::HWDialect,
66  hwarith::HWArithDialect,
67  interop::InteropDialect,
68  ibis::IbisDialect,
69  llhd::LLHDDialect,
70  loopschedule::LoopScheduleDialect,
71  ltl::LTLDialect,
72  moore::MooreDialect,
73  msft::MSFTDialect,
74  om::OMDialect,
75  pipeline::PipelineDialect,
76  seq::SeqDialect,
77  sim::SimDialect,
78  smt::SMTDialect,
79  ssp::SSPDialect,
80  sv::SVDialect,
81  systemc::SystemCDialect,
82  verif::VerifDialect
83  >();
84  // clang-format on
85 }
86 
87 } // namespace circt
88 
89 #endif // CIRCT_INITALLDIALECTS_H_
This file defines an intermediate representation for circuits acting as an abstraction for constraint...
Definition: DebugAnalysis.h:21
void registerAllDialects(mlir::DialectRegistry &registry)