aboutsummaryrefslogtreecommitdiff
path: root/contrib/llvm-project/llvm/lib/Support/Parallel.cpp
diff options
context:
space:
mode:
authorDimitry Andric <dim@FreeBSD.org>2022-07-04 19:20:19 +0000
committerDimitry Andric <dim@FreeBSD.org>2023-04-09 14:54:45 +0000
commit255d6c9fe5a7577c6caf78004034f2555bd0cba0 (patch)
treeb5136fa6092bd88d67f3f8e83405ec6fe0144c66 /contrib/llvm-project/llvm/lib/Support/Parallel.cpp
parenta0b3fbe4ccb6961765d2325bb2ecae6ff2111102 (diff)
Diffstat (limited to 'contrib/llvm-project/llvm/lib/Support/Parallel.cpp')
-rw-r--r--contrib/llvm-project/llvm/lib/Support/Parallel.cpp10
1 files changed, 5 insertions, 5 deletions
diff --git a/contrib/llvm-project/llvm/lib/Support/Parallel.cpp b/contrib/llvm-project/llvm/lib/Support/Parallel.cpp
index 4977c188f934..798d7124e7e9 100644
--- a/contrib/llvm-project/llvm/lib/Support/Parallel.cpp
+++ b/contrib/llvm-project/llvm/lib/Support/Parallel.cpp
@@ -89,7 +89,7 @@ public:
void add(std::function<void()> F) override {
{
std::lock_guard<std::mutex> Lock(Mutex);
- WorkStack.push(F);
+ WorkStack.push(std::move(F));
}
Cond.notify_one();
}
@@ -102,7 +102,7 @@ private:
Cond.wait(Lock, [&] { return Stop || !WorkStack.empty(); });
if (Stop)
break;
- auto Task = WorkStack.top();
+ auto Task = std::move(WorkStack.top());
WorkStack.pop();
Lock.unlock();
Task();
@@ -161,7 +161,7 @@ TaskGroup::~TaskGroup() {
void TaskGroup::spawn(std::function<void()> F) {
if (Parallel) {
L.inc();
- Executor::getDefaultExecutor()->add([&, F] {
+ Executor::getDefaultExecutor()->add([&, F = std::move(F)] {
F();
L.dec();
});
@@ -175,8 +175,8 @@ void TaskGroup::spawn(std::function<void()> F) {
} // namespace llvm
#endif // LLVM_ENABLE_THREADS
-void llvm::parallelForEachN(size_t Begin, size_t End,
- llvm::function_ref<void(size_t)> Fn) {
+void llvm::parallelFor(size_t Begin, size_t End,
+ llvm::function_ref<void(size_t)> Fn) {
// If we have zero or one items, then do not incur the overhead of spinning up
// a task group. They are surprisingly expensive, and because they do not
// support nested parallelism, a single entry task group can block parallel