Revert r285968: Always use parallel_for_each because it falls back to std::for_each.
It turned ou that we actually want to call std::for_each even if threading is supported. Unless --thread is given, LLD shouldn't use more than one threads. llvm-svn: 286004
This commit is contained in:
parent
9ac0dac1a6
commit
eb943e8031
|
@ -1064,8 +1064,13 @@ template <class ELFT> void OutputSection<ELFT>::writeTo(uint8_t *Buf) {
|
|||
ArrayRef<uint8_t> Filler = Script<ELFT>::X->getFiller(this->Name);
|
||||
if (!Filler.empty())
|
||||
fill(Buf, this->getSize(), Filler);
|
||||
parallel_for_each(Sections.begin(), Sections.end(),
|
||||
[=](InputSection<ELFT> *C) { C->writeTo(Buf); });
|
||||
if (Config->Threads) {
|
||||
parallel_for_each(Sections.begin(), Sections.end(),
|
||||
[=](InputSection<ELFT> *C) { C->writeTo(Buf); });
|
||||
} else {
|
||||
for (InputSection<ELFT> *C : Sections)
|
||||
C->writeTo(Buf);
|
||||
}
|
||||
// Linker scripts may have BYTE()-family commands with which you
|
||||
// can write arbitrary bytes to the output. Process them if any.
|
||||
Script<ELFT>::X->writeDataBytes(this->Name, Buf);
|
||||
|
|
Loading…
Reference in New Issue