summaryrefslogtreecommitdiff
path: root/include/llvm/Support/Parallel.h
diff options
context:
space:
mode:
authorDimitry Andric <dim@FreeBSD.org>2017-12-18 20:10:56 +0000
committerDimitry Andric <dim@FreeBSD.org>2017-12-18 20:10:56 +0000
commit044eb2f6afba375a914ac9d8024f8f5142bb912e (patch)
tree1475247dc9f9fe5be155ebd4c9069c75aadf8c20 /include/llvm/Support/Parallel.h
parenteb70dddbd77e120e5d490bd8fbe7ff3f8fa81c6b (diff)
Notes
Diffstat (limited to 'include/llvm/Support/Parallel.h')
-rw-r--r--include/llvm/Support/Parallel.h10
1 files changed, 4 insertions, 6 deletions
diff --git a/include/llvm/Support/Parallel.h b/include/llvm/Support/Parallel.h
index e36e0cc29e14..6bc0a6bbaf2b 100644
--- a/include/llvm/Support/Parallel.h
+++ b/include/llvm/Support/Parallel.h
@@ -158,11 +158,11 @@ void parallel_for_each(IterTy Begin, IterTy End, FuncTy Fn) {
TaskSize = 1;
TaskGroup TG;
- while (TaskSize <= std::distance(Begin, End)) {
+ while (TaskSize < std::distance(Begin, End)) {
TG.spawn([=, &Fn] { std::for_each(Begin, Begin + TaskSize, Fn); });
Begin += TaskSize;
}
- TG.spawn([=, &Fn] { std::for_each(Begin, End, Fn); });
+ std::for_each(Begin, End, Fn);
}
template <class IndexTy, class FuncTy>
@@ -179,10 +179,8 @@ void parallel_for_each_n(IndexTy Begin, IndexTy End, FuncTy Fn) {
Fn(J);
});
}
- TG.spawn([=, &Fn] {
- for (IndexTy J = I; J < End; ++J)
- Fn(J);
- });
+ for (IndexTy J = I; J < End; ++J)
+ Fn(J);
}
#endif