CIRCT 20.0.0git
Loading...
Searching...
No Matches
EmissionPatternSupport.h
Go to the documentation of this file.
1//===- EmissionPatternSupport.h - Emission Pattern forward declarations ---===//
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// Forward declarations and shorthands for various emission pattern classes
10// such that emission pattern implementations of dialects don't have to
11// #include all the template classes.
12//
13//===----------------------------------------------------------------------===//
14
15// NOLINTNEXTLINE(llvm-header-guard)
16#ifndef CIRCT_TARGET_EXPORTSYSTEMC_EMISSIONPATTERNSUPPORT_H
17#define CIRCT_TARGET_EXPORTSYSTEMC_EMISSIONPATTERNSUPPORT_H
18
19#include "circt/Support/LLVM.h"
20
21namespace circt {
22namespace ExportSystemC {
23
24// Forward declarations.
25template <typename Ty>
26class EmissionPatternSet;
27template <typename PatternTy, typename KeyTy>
28class FrozenEmissionPatternSet;
29struct OpEmissionPatternBase;
30struct TypeEmissionPatternBase;
31struct AttrEmissionPatternBase;
32
36
43
44} // namespace ExportSystemC
45} // namespace circt
46
47#endif // CIRCT_TARGET_EXPORTSYSTEMC_EMISSIONPATTERNSUPPORT_H
This class collects a set of emission patterns with base type 'PatternTy'.
The InstanceGraph op interface, see InstanceGraphInterface.td for more details.