CIRCT
20.0.0git
include
circt
Conversion
FIRRTLToHW.h
Go to the documentation of this file.
1
//===- FIRRTLToHW.h - FIRRTL to HW conversion pass --------------*- 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 declares passes which together will lower the FIRRTL dialect to
10
// HW and SV dialects.
11
//
12
//===----------------------------------------------------------------------===//
13
14
#ifndef CIRCT_CONVERSION_FIRRTLTOHW_FIRRTLTOHW_H
15
#define CIRCT_CONVERSION_FIRRTLTOHW_FIRRTLTOHW_H
16
17
#include "
circt/Support/LLVM.h
"
18
#include <memory>
19
20
namespace
mlir
{
21
class
Pass;
22
}
// namespace mlir
23
24
namespace
circt
{
25
namespace
firrtl {
26
enum class
VerificationFlavor
{
27
// Use the flavor specified by the op.
28
// TOOD: Drop this option once the migration finished.
29
None
,
30
// Use `if(cond) else $fatal(..)` format.
31
IfElseFatal
,
32
// Use immediate form.
33
Immediate
,
34
// Use SVA.
35
SVA
36
};
37
}
// namespace firrtl
38
39
#define GEN_PASS_DECL_LOWERFIRRTLTOHW
40
#include "circt/Conversion/Passes.h.inc"
41
42
std::unique_ptr<mlir::Pass>
43
createLowerFIRRTLToHWPass
(
bool
enableAnnotationWarning =
false
,
44
firrtl::VerificationFlavor
assertionFlavor =
45
firrtl::VerificationFlavor::None
);
46
47
}
// namespace circt
48
49
#endif
// CIRCT_CONVERSION_FIRRTLTOHW_FIRRTLTOHW_H
LLVM.h
circt::firrtl::VerificationFlavor
VerificationFlavor
Definition:
FIRRTLToHW.h:26
circt::firrtl::VerificationFlavor::Immediate
@ Immediate
circt::firrtl::VerificationFlavor::IfElseFatal
@ IfElseFatal
circt::firrtl::VerificationFlavor::None
@ None
circt::firrtl::VerificationFlavor::SVA
@ SVA
circt
The InstanceGraph op interface, see InstanceGraphInterface.td for more details.
Definition:
DebugAnalysis.h:21
circt::createLowerFIRRTLToHWPass
std::unique_ptr< mlir::Pass > createLowerFIRRTLToHWPass(bool enableAnnotationWarning=false, firrtl::VerificationFlavor assertionFlavor=firrtl::VerificationFlavor::None)
This is the pass constructor.
Definition:
LowerToHW.cpp:586
mlir
Definition:
DebugAnalysis.h:16
Generated on Tue Nov 5 2024 00:07:19 for CIRCT by
1.9.1