CIRCT
20.0.0git
|
Options that control how Verilog input files are parsed and processed. More...
#include <ImportVerilog.h>
Public Types | |
enum class | Mode { OnlyLint , OnlyParse , Full } |
Limit importing to linting or parsing only. More... | |
Public Attributes | |
Mode | mode = Mode::Full |
bool | debugInfo = false |
Generate debug information in the form of debug dialect ops in the IR. More... | |
std::vector< std::string > | includeDirs |
A list of include directories in which to search for files. More... | |
std::vector< std::string > | includeSystemDirs |
A list of system include directories in which to search for files. More... | |
std::vector< std::string > | libDirs |
A list of library directories in which to search for missing modules. More... | |
std::vector< std::string > | libExts |
A list of extensions that will be used to search for library files. More... | |
std::vector< std::string > | excludeExts |
A list of extensions that will be used to exclude files. More... | |
std::vector< std::string > | ignoreDirectives |
A list of preprocessor directives to be ignored. More... | |
std::optional< uint32_t > | maxIncludeDepth |
The maximum depth of included files before an error is issued. More... | |
std::vector< std::string > | defines |
A list of macros that should be defined in each compilation unit. More... | |
std::vector< std::string > | undefines |
A list of macros that should be undefined in each compilation unit. More... | |
std::optional< bool > | librariesInheritMacros |
If true, library files will inherit macro definitions from primary source files. More... | |
std::optional< std::string > | timeScale |
A string that indicates the default time scale to use for any design elements that don't specify one explicitly. More... | |
std::optional< bool > | allowUseBeforeDeclare |
If true, allow various to be referenced before they are declared. More... | |
std::optional< bool > | ignoreUnknownModules |
If true, ignore errors about unknown modules. More... | |
std::vector< std::string > | topModules |
If non-empty, specifies the list of modules that should serve as the top modules in the design. More... | |
std::vector< std::string > | paramOverrides |
A list of top-level module parameters to override, of the form <name>=<value> . More... | |
std::optional< uint32_t > | errorLimit |
The maximum number of errors to print before giving up. More... | |
std::vector< std::string > | warningOptions |
A list of warning options that will be passed to the DiagnosticEngine. More... | |
std::vector< std::string > | suppressWarningsPaths |
A list of paths in which to suppress warnings. More... | |
std::optional< bool > | singleUnit |
If set to true, all source files will be treated as part of a single compilation unit, meaning all of their text will be merged together. More... | |
std::vector< std::string > | libraryFiles |
A list of library files to include in the compilation. More... | |
Options that control how Verilog input files are parsed and processed.
See slang::driver::Driver::Options
for inspiration. Also check out Driver::addStandardArgs()
for some inspiration on how to expose these on the command line.
Definition at line 37 of file ImportVerilog.h.
|
strong |
Limit importing to linting or parsing only.
Definition at line 39 of file ImportVerilog.h.
std::optional<bool> circt::ImportVerilogOptions::allowUseBeforeDeclare |
If true, allow various to be referenced before they are declared.
Definition at line 100 of file ImportVerilog.h.
bool circt::ImportVerilogOptions::debugInfo = false |
Generate debug information in the form of debug dialect ops in the IR.
Definition at line 50 of file ImportVerilog.h.
Referenced by circt::registerFromVerilogTranslation().
std::vector<std::string> circt::ImportVerilogOptions::defines |
A list of macros that should be defined in each compilation unit.
Definition at line 82 of file ImportVerilog.h.
std::optional<uint32_t> circt::ImportVerilogOptions::errorLimit |
The maximum number of errors to print before giving up.
Definition at line 119 of file ImportVerilog.h.
std::vector<std::string> circt::ImportVerilogOptions::excludeExts |
A list of extensions that will be used to exclude files.
Definition at line 69 of file ImportVerilog.h.
std::vector<std::string> circt::ImportVerilogOptions::ignoreDirectives |
A list of preprocessor directives to be ignored.
Definition at line 72 of file ImportVerilog.h.
std::optional<bool> circt::ImportVerilogOptions::ignoreUnknownModules |
If true, ignore errors about unknown modules.
Definition at line 103 of file ImportVerilog.h.
std::vector<std::string> circt::ImportVerilogOptions::includeDirs |
A list of include directories in which to search for files.
Definition at line 57 of file ImportVerilog.h.
std::vector<std::string> circt::ImportVerilogOptions::includeSystemDirs |
A list of system include directories in which to search for files.
Definition at line 60 of file ImportVerilog.h.
std::vector<std::string> circt::ImportVerilogOptions::libDirs |
A list of library directories in which to search for missing modules.
Definition at line 63 of file ImportVerilog.h.
std::vector<std::string> circt::ImportVerilogOptions::libExts |
A list of extensions that will be used to search for library files.
Definition at line 66 of file ImportVerilog.h.
std::optional<bool> circt::ImportVerilogOptions::librariesInheritMacros |
If true, library files will inherit macro definitions from primary source files.
Definition at line 89 of file ImportVerilog.h.
std::vector<std::string> circt::ImportVerilogOptions::libraryFiles |
A list of library files to include in the compilation.
Definition at line 136 of file ImportVerilog.h.
std::optional<uint32_t> circt::ImportVerilogOptions::maxIncludeDepth |
The maximum depth of included files before an error is issued.
Definition at line 79 of file ImportVerilog.h.
Mode circt::ImportVerilogOptions::mode = Mode::Full |
Definition at line 47 of file ImportVerilog.h.
std::vector<std::string> circt::ImportVerilogOptions::paramOverrides |
A list of top-level module parameters to override, of the form <name>=<value>
.
Definition at line 112 of file ImportVerilog.h.
std::optional<bool> circt::ImportVerilogOptions::singleUnit |
If set to true, all source files will be treated as part of a single compilation unit, meaning all of their text will be merged together.
Definition at line 133 of file ImportVerilog.h.
std::vector<std::string> circt::ImportVerilogOptions::suppressWarningsPaths |
A list of paths in which to suppress warnings.
Definition at line 125 of file ImportVerilog.h.
std::optional<std::string> circt::ImportVerilogOptions::timeScale |
A string that indicates the default time scale to use for any design elements that don't specify one explicitly.
Definition at line 97 of file ImportVerilog.h.
std::vector<std::string> circt::ImportVerilogOptions::topModules |
If non-empty, specifies the list of modules that should serve as the top modules in the design.
If empty, this will be automatically determined based on which modules are unreferenced elsewhere.
Definition at line 108 of file ImportVerilog.h.
std::vector<std::string> circt::ImportVerilogOptions::undefines |
A list of macros that should be undefined in each compilation unit.
Definition at line 85 of file ImportVerilog.h.
std::vector<std::string> circt::ImportVerilogOptions::warningOptions |
A list of warning options that will be passed to the DiagnosticEngine.
Definition at line 122 of file ImportVerilog.h.