CIRCT 20.0.0git
Loading...
Searching...
No Matches
SeqPasses.h
Go to the documentation of this file.
1//===- SeqPasses.h - Seq 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_SEQ_SEQPASSES_H
14#define CIRCT_DIALECT_SEQ_SEQPASSES_H
15
17#include "mlir/Pass/Pass.h"
18#include "llvm/ADT/StringRef.h"
19
20namespace circt {
21namespace seq {
22
23#define GEN_PASS_DECL_EXTERNALIZECLOCKGATE
24#define GEN_PASS_DECL_HWMEMSIMIMPL
25#include "circt/Dialect/Seq/SeqPasses.h.inc"
26
27std::unique_ptr<mlir::Pass> createLowerSeqHLMemPass();
28std::unique_ptr<mlir::Pass>
29createExternalizeClockGatePass(const ExternalizeClockGateOptions &options = {});
30std::unique_ptr<mlir::Pass> createLowerSeqFIFOPass();
31std::unique_ptr<mlir::Pass>
32createHWMemSimImplPass(const HWMemSimImplOptions &options = {});
33std::unique_ptr<mlir::Pass> createLowerSeqShiftRegPass();
34
35/// Generate the code for registering passes.
36#define GEN_PASS_REGISTRATION
37#include "circt/Dialect/Seq/SeqPasses.h.inc"
38} // namespace seq
39} // namespace circt
40
41#endif // CIRCT_DIALECT_SEQ_SEQPASSES_H
std::unique_ptr< mlir::Pass > createHWMemSimImplPass(const HWMemSimImplOptions &options={})
std::unique_ptr< mlir::Pass > createExternalizeClockGatePass(const ExternalizeClockGateOptions &options={})
std::unique_ptr< mlir::Pass > createLowerSeqShiftRegPass()
std::unique_ptr< mlir::Pass > createLowerSeqHLMemPass()
std::unique_ptr< mlir::Pass > createLowerSeqFIFOPass()
The InstanceGraph op interface, see InstanceGraphInterface.td for more details.
Definition seq.py:1