Fix performance degradation when --threads is used with --hierarchical (Issue #2562) #2581

This commit is contained in:
Yutetsu TAKATSUKASA
2020-10-05 08:20:49 +09:00
committed by GitHub
parent efbcb094ca
commit c5da072ff6
2 changed files with 7 additions and 1 deletions
+6
View File
@@ -228,6 +228,9 @@ void V3HierBlock::writeCommandArgsFile(bool forCMake) const {
++child) {
*of << (*child)->hierBlockArgs().front() << "\n";
}
// Hierarchical blocks should not use multi-threading,
// but needs to be thread safe when top is multi-threaded.
if (v3Global.opt.threads() > 0) { *of << "--threads 1\n"; }
*of << v3Global.opt.allArgsStringForHierBlock(false) << "\n";
}
@@ -426,6 +429,9 @@ void V3HierBlockPlan::writeCommandArgsFiles(bool forCMake) const {
*of << "--protect-lib " << v3Global.opt.protectLib() << "\n";
*of << "--protect-key " << v3Global.opt.protectKeyDefaulted() << "\n";
}
if (v3Global.opt.threads() > 0) {
*of << "--threads " << cvtToStr(v3Global.opt.threads()) << "\n";
}
*of << (v3Global.opt.systemC() ? "--sc" : "--cc") << "\n";
*of << v3Global.opt.allArgsStringForHierBlock(true) << "\n";
}