diff --git a/src/V3Clock.cpp b/src/V3Clock.cpp index 57eac4a6a..55dd08a6b 100644 --- a/src/V3Clock.cpp +++ b/src/V3Clock.cpp @@ -66,6 +66,9 @@ public: // Clock state, as a visitor of each AstNode class ClockVisitor final : public VNVisitor { + // NODE STATE + // ??? + const VNUser1InUse m_user1InUse; // STATE AstCFunc* m_evalp = nullptr; // The '_eval' function AstScope* m_scopep = nullptr; // Current scope diff --git a/src/V3EmitXml.cpp b/src/V3EmitXml.cpp index 26aa92e99..fc1c98a7b 100644 --- a/src/V3EmitXml.cpp +++ b/src/V3EmitXml.cpp @@ -32,6 +32,7 @@ class EmitXmlFileVisitor final : public VNVisitorConst { // NODE STATE // Entire netlist: // AstNode::user1 -> uint64_t, number to connect crossrefs + const VNUser1InUse m_user1InUse; // MEMBERS V3OutFile* const m_ofp; diff --git a/src/V3LifePost.cpp b/src/V3LifePost.cpp index 468e06863..3ca1f83ee 100644 --- a/src/V3LifePost.cpp +++ b/src/V3LifePost.cpp @@ -129,6 +129,7 @@ class LifePostDlyVisitor final : public VNVisitor { // NODE STATE // AstVarScope::user1() -> bool: referenced outside _eval__nba // AstVarScope::user4() -> AstVarScope*: Passed to LifePostElim to substitute this var + const VNUser1InUse m_inuser1; const VNUser4InUse m_inuser4; // STATE diff --git a/src/V3Order.cpp b/src/V3Order.cpp index 0d155acc5..b332a9ad0 100644 --- a/src/V3Order.cpp +++ b/src/V3Order.cpp @@ -532,6 +532,7 @@ class ProcessMoveBuildGraph final { // NODE STATE // AstSenTree::user1p() -> AstSenTree: Original AstSenTree for trigger + const VNUser1InUse m_user1InUse; // TYPES using DomainMap = std::map; @@ -1285,10 +1286,12 @@ void OrderProcess::processMTasks() { // only logic, and discarding edges we know we can ignore. // This is quite similar to the 'm_pomGraph' of the serial code gen: V3Graph logicGraph; - OrderMTaskMoveVertexMaker create_mtask_vertex(&logicGraph); - ProcessMoveBuildGraph mtask_pmbg(&m_graph, &logicGraph, m_trigToSen, - &create_mtask_vertex); - mtask_pmbg.build(); + { + OrderMTaskMoveVertexMaker create_mtask_vertex(&logicGraph); + ProcessMoveBuildGraph mtask_pmbg(&m_graph, &logicGraph, m_trigToSen, + &create_mtask_vertex); + mtask_pmbg.build(); + } // Needed? We do this for m_pomGraph in serial mode, so do it here too: logicGraph.removeRedundantEdgesMax(&V3GraphEdge::followAlwaysTrue);