mirror of
https://github.com/verilator/verilator.git
synced 2026-08-22 05:57:29 +02:00
Fix nondeterminism in trace stage (#8046)
Co-authored-by: Sumanth Kadiyala <[email protected]>
This commit is contained in:
co-authored by
Sumanth Kadiyala
parent
e6c613f28d
commit
472a131df7
@@ -294,6 +294,7 @@ Stuart Morris
|
|||||||
sumpster
|
sumpster
|
||||||
Szymon Gizler
|
Szymon Gizler
|
||||||
Sören Tempel
|
Sören Tempel
|
||||||
|
Sumanth Kadiyala
|
||||||
Teng Huang
|
Teng Huang
|
||||||
Thomas Aldrian
|
Thomas Aldrian
|
||||||
Thomas Brown
|
Thomas Brown
|
||||||
|
|||||||
+4
-5
@@ -1146,8 +1146,8 @@ class TraceVisitor final : public VNVisitor {
|
|||||||
}
|
}
|
||||||
|
|
||||||
TraceCFuncVertex* getCFuncVertexp(AstCFunc* nodep) {
|
TraceCFuncVertex* getCFuncVertexp(AstCFunc* nodep) {
|
||||||
TraceCFuncVertex* vertexp
|
V3GraphVertex* const vtxp = nodep->user1u().toGraphVertex();
|
||||||
= nodep->user1() ? nodep->user1u().toGraphVertex()->cast<TraceCFuncVertex>() : nullptr;
|
TraceCFuncVertex* vertexp = vtxp ? vtxp->cast<TraceCFuncVertex>() : nullptr;
|
||||||
if (!vertexp) {
|
if (!vertexp) {
|
||||||
vertexp = new TraceCFuncVertex{&m_graph, nodep};
|
vertexp = new TraceCFuncVertex{&m_graph, nodep};
|
||||||
nodep->user1p(vertexp);
|
nodep->user1p(vertexp);
|
||||||
@@ -1155,9 +1155,8 @@ class TraceVisitor final : public VNVisitor {
|
|||||||
return vertexp;
|
return vertexp;
|
||||||
}
|
}
|
||||||
TraceActivityVertex* getActivityVertexp(AstNode* nodep, bool slow) {
|
TraceActivityVertex* getActivityVertexp(AstNode* nodep, bool slow) {
|
||||||
TraceActivityVertex* vertexp
|
V3GraphVertex* const vtxp = nodep->user3u().toGraphVertex();
|
||||||
= nodep->user3() ? nodep->user3u().toGraphVertex()->cast<TraceActivityVertex>()
|
TraceActivityVertex* vertexp = vtxp ? vtxp->cast<TraceActivityVertex>() : nullptr;
|
||||||
: nullptr;
|
|
||||||
if (!vertexp) {
|
if (!vertexp) {
|
||||||
vertexp = new TraceActivityVertex{&m_graph, nodep, slow};
|
vertexp = new TraceActivityVertex{&m_graph, nodep, slow};
|
||||||
nodep->user3p(vertexp);
|
nodep->user3p(vertexp);
|
||||||
|
|||||||
Reference in New Issue
Block a user