CIRCT 21.0.0git
Loading...
Searching...
No Matches
HWPasses.h
Go to the documentation of this file.
1//===- Passes.h - HW pass entry points --------------------------*- 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 header file defines prototypes that expose pass constructors.
10//
11//===----------------------------------------------------------------------===//
12
13#ifndef CIRCT_DIALECT_HW_HWPASSES_H
14#define CIRCT_DIALECT_HW_HWPASSES_H
15
16#include "mlir/Pass/Pass.h"
17#include "mlir/Pass/PassRegistry.h"
18#include <memory>
19#include <optional>
20
21namespace circt {
22namespace hw {
23
24#define GEN_PASS_DECL
25#include "circt/Dialect/HW/Passes.h.inc"
26
27std::unique_ptr<mlir::Pass> createPrintInstanceGraphPass();
28std::unique_ptr<mlir::Pass> createHWSpecializePass();
29std::unique_ptr<mlir::Pass> createPrintHWModuleGraphPass();
30std::unique_ptr<mlir::Pass> createFlattenIOPass(bool recursiveFlag = true,
31 bool flattenExternFlag = false,
32 char joinChar = '.');
33std::unique_ptr<mlir::Pass> createVerifyInnerRefNamespacePass();
34std::unique_ptr<mlir::Pass> createFlattenModulesPass();
35std::unique_ptr<mlir::Pass> createFooWiresPass();
36std::unique_ptr<mlir::Pass> createHWAggregateToCombPass();
37
38/// Generate the code for registering passes.
39#define GEN_PASS_REGISTRATION
40#include "circt/Dialect/HW/Passes.h.inc"
41
42} // namespace hw
43} // namespace circt
44
45#endif // CIRCT_DIALECT_HW_HWPASSES_H
std::unique_ptr< mlir::Pass > createFlattenModulesPass()
std::unique_ptr< mlir::Pass > createFooWiresPass()
Definition FooWires.cpp:42
std::unique_ptr< mlir::Pass > createHWAggregateToCombPass()
std::unique_ptr< mlir::Pass > createPrintHWModuleGraphPass()
std::unique_ptr< mlir::Pass > createVerifyInnerRefNamespacePass()
std::unique_ptr< mlir::Pass > createPrintInstanceGraphPass()
std::unique_ptr< mlir::Pass > createFlattenIOPass(bool recursiveFlag=true, bool flattenExternFlag=false, char joinChar='.')
std::unique_ptr< mlir::Pass > createHWSpecializePass()
The InstanceGraph op interface, see InstanceGraphInterface.td for more details.
Definition hw.py:1