CIRCT 23.0.0git
Loading...
Searching...
No Matches
SVPasses.h
Go to the documentation of this file.
1//===- SVPasses.h - SV 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_SV_SVPASSES_H
14#define CIRCT_DIALECT_SV_SVPASSES_H
15
16#include "mlir/Pass/Pass.h"
17
18namespace circt {
19namespace sv {
20
21/// Selects how `sv-mask-non-synthesizable` hides matched ops from
22/// synthesis-bound SystemVerilog output.
24 /// Erase the matched ops.
25 Delete,
26 /// Wrap the matched ops in `` `ifndef SYNTHESIS `` ... `` `endif ``.
27 Ifdef,
28};
29
30#define GEN_PASS_DECL
31#include "circt/Dialect/SV/SVPasses.h.inc"
32
33/// Generate the code for registering passes.
34#define GEN_PASS_REGISTRATION
35#include "circt/Dialect/SV/SVPasses.h.inc"
36
37} // namespace sv
38} // namespace circt
39
40#endif // CIRCT_DIALECT_SV_SVPASSES_H
MaskNonSynthesizableMode
Selects how sv-mask-non-synthesizable hides matched ops from synthesis-bound SystemVerilog output.
Definition SVPasses.h:23
@ Ifdef
Wrap the matched ops in `ifndef SYNTHESIS ... `endif.
@ Delete
Erase the matched ops.
The InstanceGraph op interface, see InstanceGraphInterface.td for more details.
Definition sv.py:1