mirror of
https://github.com/verilator/verilator.git
synced 2026-10-06 01:54:01 +02:00
Implement a distinct constant pool (#3013)
What previously used to be per module static constants created in V3Table and V3Prelim are now merged globally within the whole model and emitted as part of a separate constant pool. Members of the constant pool are global variables which are declared lazily when used (similar to loose methods).
This commit is contained in:
@@ -278,6 +278,7 @@ class EmitCSyms final : EmitCBaseVisitor {
|
||||
if (!m_dpiHdrOnly) emitDpiImp();
|
||||
}
|
||||
}
|
||||
virtual void visit(AstConstPool* nodep) override {} // Ignore
|
||||
virtual void visit(AstNodeModule* nodep) override {
|
||||
nameCheck(nodep);
|
||||
VL_RESTORER(m_modp);
|
||||
|
||||
Reference in New Issue
Block a user