|
slang-netlist
0.9.0
|
#include <VisitAll.hpp>
Public Member Functions | |
| void | handle (const ast::ValueSymbol &symbol) |
| void | handle (const ast::InstanceSymbol &symbol) |
| void | handle (const ast::VariableDeclStatement &stmt) |
Public Attributes | |
| uint64_t | count = 0 |
Visitor to visit the entire AST prior to freezing. This is required since AST construction is lazy, so visiting a previously univisted node can cause modifications, which is not threadsafe. This allows the subsequent netlist construction pass to be multithreaded, in the same way Slang's analysis pass is.
|
inline |
Skip uninstantiated instances to avoid forcing lazy elaboration of modules that are not part of the design hierarchy (e.g. when –top selects a specific root module).
|
inline |
|
inline |
VariableDeclStatement has no visitExprs/visitStmts, so the default ASTVisitor traversal never reaches the initializer expression. AbstractFlowAnalysis::visitStmt calls getInitializer() which triggers lazy DeclaredType resolution — force that here so the parallel DFA pass doesn't race on it.
| uint64_t slang::netlist::VisitAll::count = 0 |