Internals: Replace AstMTaskBody with AstCFunc(#6280) (#6628)

AstMTaskBody is somewhat redundant and is problematic for #6280. We used
to wrap all MTasks in a CFunc before emit anyway. Now we create that
CFunc when we create the ExecMTask in V3OrderParallel, and subsequently
use the CFunc to represent the contents of the MTask. Final output and
optimizations are the same, but internals are simplified to move
towards #6280.

No functional change.
This commit is contained in:
Geza Lore
2025-11-03 06:32:03 +00:00
committed by GitHub
parent d066504bb9
commit d3ca79368c
12 changed files with 156 additions and 205 deletions
+1 -1
View File
@@ -290,7 +290,7 @@ class LifePostDlyVisitor final : public VNVisitorConst {
const ExecMTask* const mtaskp = mtaskVtx.as<ExecMTask>();
VL_RESTORER(m_execMTaskp);
m_execMTaskp = mtaskp;
iterateConst(mtaskp->bodyp());
trace(mtaskp->funcp());
}
}
void visit(AstCFunc* nodep) override {