Internals: Move CReset under Assign (#6978)

This commit is contained in:
Wilson Snyder
2026-01-31 21:27:36 -05:00
committed by GitHub
parent d9234501e0
commit 07ce0ac2ea
11 changed files with 1042 additions and 1004 deletions
+5 -4
View File
@@ -192,12 +192,13 @@ class CCtorsVisitor final : public VNVisitor {
}
void visit(AstVar* nodep) override {
if (nodep->needsCReset()) {
AstNode* const crstp = new AstAssign{
nodep->fileline(), new AstVarRef{nodep->fileline(), nodep, VAccess::WRITE},
new AstCReset{nodep->fileline(), nodep, true}};
if (m_varResetp) {
AstVarRef* const vrefp = new AstVarRef{nodep->fileline(), nodep, VAccess::WRITE};
m_varResetp->add(new AstCReset{nodep->fileline(), vrefp, true});
m_varResetp->add(crstp);
} else if (m_cfuncp) {
AstVarRef* const vrefp = new AstVarRef{nodep->fileline(), nodep, VAccess::WRITE};
nodep->addNextHere(new AstCReset{nodep->fileline(), vrefp, true});
nodep->addNextHere(crstp);
}
}
}