CIRCT
20.0.0git
Loading...
Searching...
No Matches
include
circt
Target
ExportSMTLIB.h
Go to the documentation of this file.
1
//===- ExportSMTLIB.h - SMT-LIB Exporter ------------------------*- 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
// Defines the interface to the SMT-LIB emitter.
10
//
11
//===----------------------------------------------------------------------===//
12
13
#ifndef CIRCT_TARGET_EXPORTSMTLIB_H
14
#define CIRCT_TARGET_EXPORTSMTLIB_H
15
16
#include "
circt/Support/LLVM.h
"
17
18
namespace
circt
{
19
namespace
ExportSMTLIB {
20
21
/// Emission options for the ExportSMTLIB pass. Allows controlling the emitted
22
/// format and overall behavior.
23
struct
SMTEmissionOptions
{
24
// Don't produce 'let' expressions to bind expressions that are only used
25
// once, but inline them directly at the use-site.
26
bool
inlineSingleUseValues
=
false
;
27
// Increase indentation for each 'let' expression body.
28
bool
indentLetBody
=
false
;
29
};
30
31
/// Run the ExportSMTLIB pass.
32
LogicalResult
33
exportSMTLIB
(Operation *module, llvm::raw_ostream &os,
34
const
SMTEmissionOptions
&options =
SMTEmissionOptions
());
35
36
/// Register the ExportSMTLIB pass.
37
void
registerExportSMTLIBTranslation
();
38
39
}
// namespace ExportSMTLIB
40
}
// namespace circt
41
42
#endif
// CIRCT_TARGET_EXPORTSMTLIB_H
LLVM.h
circt::ExportSMTLIB::exportSMTLIB
LogicalResult exportSMTLIB(Operation *module, llvm::raw_ostream &os, const SMTEmissionOptions &options=SMTEmissionOptions())
Run the ExportSMTLIB pass.
Definition
ExportSMTLIB.cpp:683
circt::ExportSMTLIB::registerExportSMTLIBTranslation
void registerExportSMTLIBTranslation()
Register the ExportSMTLIB pass.
Definition
ExportSMTLIB.cpp:708
circt
The InstanceGraph op interface, see InstanceGraphInterface.td for more details.
Definition
DebugAnalysis.h:21
circt::ExportSMTLIB::SMTEmissionOptions
Emission options for the ExportSMTLIB pass.
Definition
ExportSMTLIB.h:23
circt::ExportSMTLIB::SMTEmissionOptions::indentLetBody
bool indentLetBody
Definition
ExportSMTLIB.h:28
circt::ExportSMTLIB::SMTEmissionOptions::inlineSingleUseValues
bool inlineSingleUseValues
Definition
ExportSMTLIB.h:26
Generated on Thu Jan 23 2025 00:07:29 for CIRCT by
1.9.8