-
Notifications
You must be signed in to change notification settings - Fork 14.6k
Revert "[libc] Implement barriers for pthreads" #151014
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This reverts commit 7ca2375.
@llvm/pr-subscribers-libc Author: Uzair Nawaz (uzairnawaz) ChangesReverts llvm/llvm-project#148948 Patch is 27.69 KiB, truncated to 20.00 KiB below, full version: https://github.com/llvm/llvm-project/pull/151014.diff 25 Files Affected:
diff --git a/libc/config/linux/x86_64/entrypoints.txt b/libc/config/linux/x86_64/entrypoints.txt
index 83d58186415ec..4315bb060f79a 100644
--- a/libc/config/linux/x86_64/entrypoints.txt
+++ b/libc/config/linux/x86_64/entrypoints.txt
@@ -1050,9 +1050,6 @@ if(LLVM_LIBC_FULL_BUILD)
libc.src.pthread.pthread_join
libc.src.pthread.pthread_key_create
libc.src.pthread.pthread_key_delete
- libc.src.pthread.pthread_barrier_init
- libc.src.pthread.pthread_barrier_wait
- libc.src.pthread.pthread_barrier_destroy
libc.src.pthread.pthread_mutex_destroy
libc.src.pthread.pthread_mutex_init
libc.src.pthread.pthread_mutex_lock
diff --git a/libc/hdr/CMakeLists.txt b/libc/hdr/CMakeLists.txt
index f3f01c1ed0e30..5fc25d0ca5689 100644
--- a/libc/hdr/CMakeLists.txt
+++ b/libc/hdr/CMakeLists.txt
@@ -72,15 +72,6 @@ add_proxy_header_library(
libc.include.fenv
)
-add_proxy_header_library(
- pthread_macros
- HDRS
- pthread_macros.h
- FULL_BUILD_DEPENDS
- libc.include.llvm-libc-macros.pthread_macros
- libc.include.pthread
-)
-
add_proxy_header_library(
sched_macros
HDRS
diff --git a/libc/hdr/pthread_macros.h b/libc/hdr/pthread_macros.h
deleted file mode 100644
index f913015abd31c..0000000000000
--- a/libc/hdr/pthread_macros.h
+++ /dev/null
@@ -1,22 +0,0 @@
-//===-- Definition of macros from pthread.h -------------------------------===//
-//
-// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
-// See https://llvm.org/LICENSE.txt for license information.
-// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
-//
-//===----------------------------------------------------------------------===//
-
-#ifndef LLVM_LIBC_HDR_PTHREAD_MACROS_H
-#define LLVM_LIBC_HDR_PTHREAD_MACROS_H
-
-#ifdef LIBC_FULL_BUILD
-
-#include "include/llvm-libc-macros/pthread-macros.h"
-
-#else // Overlay mode
-
-#include <pthread.h>
-
-#endif // LLVM_LIBC_FULL_BUILD
-
-#endif // LLVM_LIBC_HDR_PTHREAD_MACROS_H
diff --git a/libc/hdr/types/CMakeLists.txt b/libc/hdr/types/CMakeLists.txt
index 1c1f242e84341..c21236307a91d 100644
--- a/libc/hdr/types/CMakeLists.txt
+++ b/libc/hdr/types/CMakeLists.txt
@@ -241,22 +241,6 @@ add_proxy_header_library(
libc.include.llvm-libc-types.pid_t
)
-add_proxy_header_library(
- pthread_barrier_t
- HDRS
- pthread_barrier_t.h
- FULL_BUILD_DEPENDS
- libc.include.llvm-libc-types.pthread_barrier_t
-)
-
-add_proxy_header_library(
- pthread_barrierattr_t
- HDRS
- pthread_barrierattr_t.h
- FULL_BUILD_DEPENDS
- libc.include.llvm-libc-types.pthread_barrierattr_t
-)
-
add_proxy_header_library(
atexithandler_t
HDRS
diff --git a/libc/hdr/types/pthread_barrier_t.h b/libc/hdr/types/pthread_barrier_t.h
deleted file mode 100644
index 57bcdfc6a9901..0000000000000
--- a/libc/hdr/types/pthread_barrier_t.h
+++ /dev/null
@@ -1,22 +0,0 @@
-//===-- Definition of macros from pthread_barrier_t.h ---------------------===//
-//
-// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
-// See https://llvm.org/LICENSE.txt for license information.
-// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
-//
-//===----------------------------------------------------------------------===//
-
-#ifndef LLVM_LIBC_HDR_TYPES_PTHREAD_BARRIER_T_H
-#define LLVM_LIBC_HDR_TYPES_PTHREAD_BARRIER_T_H
-
-#ifdef LIBC_FULL_BUILD
-
-#include "include/llvm-libc-types/pthread_barrier_t.h"
-
-#else // Overlay mode
-
-#error "Cannot overlay pthread_barrier_t"
-
-#endif // LLVM_LIBC_FULL_BUILD
-
-#endif // LLVM_LIBC_HDR_TYPES_PTHREAD_BARRIER_T_H
diff --git a/libc/hdr/types/pthread_barrierattr_t.h b/libc/hdr/types/pthread_barrierattr_t.h
deleted file mode 100644
index d9d14c12e4de6..0000000000000
--- a/libc/hdr/types/pthread_barrierattr_t.h
+++ /dev/null
@@ -1,22 +0,0 @@
-//===-- Definition of macros from pthread_barrierattr_t.h -----------------===//
-//
-// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
-// See https://llvm.org/LICENSE.txt for license information.
-// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
-//
-//===----------------------------------------------------------------------===//
-
-#ifndef LLVM_LIBC_HDR_TYPES_PTHREAD_BARRIERATTR_T_H
-#define LLVM_LIBC_HDR_TYPES_PTHREAD_BARRIERATTR_T_H
-
-#ifdef LIBC_FULL_BUILD
-
-#include "include/llvm-libc-types/pthread_barrierattr_t.h"
-
-#else // Overlay mode
-
-#error "Cannot overlay pthread_barrierattr_t"
-
-#endif // LLVM_LIBC_FULL_BUILD
-
-#endif // LLVM_LIBC_HDR_TYPES_PTHREAD_BARRIERATTR_T_H
diff --git a/libc/include/CMakeLists.txt b/libc/include/CMakeLists.txt
index 74fcea0f15e2f..120f3850b5cee 100644
--- a/libc/include/CMakeLists.txt
+++ b/libc/include/CMakeLists.txt
@@ -392,8 +392,6 @@ add_header_macro(
.llvm-libc-types.pthread_attr_t
.llvm-libc-types.pthread_condattr_t
.llvm-libc-types.pthread_key_t
- .llvm-libc-types.pthread_barrier_t
- .llvm-libc-types.pthread_barrierattr_t
.llvm-libc-types.pthread_mutex_t
.llvm-libc-types.pthread_mutexattr_t
.llvm-libc-types.pthread_once_t
diff --git a/libc/include/llvm-libc-macros/pthread-macros.h b/libc/include/llvm-libc-macros/pthread-macros.h
index ce467b7cc4d07..fcc6ef925e3f4 100644
--- a/libc/include/llvm-libc-macros/pthread-macros.h
+++ b/libc/include/llvm-libc-macros/pthread-macros.h
@@ -22,8 +22,6 @@
#define PTHREAD_MUTEX_STALLED 0
#define PTHREAD_MUTEX_ROBUST 1
-#define PTHREAD_BARRIER_SERIAL_THREAD -1
-
#define PTHREAD_ONCE_INIT {0}
#define PTHREAD_PROCESS_PRIVATE 0
diff --git a/libc/include/llvm-libc-types/CMakeLists.txt b/libc/include/llvm-libc-types/CMakeLists.txt
index fcc331aee47c7..4ccdde619a39e 100644
--- a/libc/include/llvm-libc-types/CMakeLists.txt
+++ b/libc/include/llvm-libc-types/CMakeLists.txt
@@ -10,7 +10,6 @@ add_header(__exec_envp_t HDR __exec_envp_t.h)
add_header(__futex_word HDR __futex_word.h)
add_header(pid_t HDR pid_t.h)
add_header(__mutex_type HDR __mutex_type.h DEPENDS .__futex_word .pid_t)
-add_header(__barrier_type HDR __barrier_type.h)
add_header(__pthread_once_func_t HDR __pthread_once_func_t.h)
add_header(__pthread_start_t HDR __pthread_start_t.h)
add_header(__pthread_tss_dtor_t HDR __pthread_tss_dtor_t.h)
@@ -54,8 +53,6 @@ add_header(pthread_condattr_t HDR pthread_condattr_t.h DEPENDS .clockid_t)
add_header(pthread_key_t HDR pthread_key_t.h)
add_header(pthread_mutex_t HDR pthread_mutex_t.h DEPENDS .__futex_word .__mutex_type)
add_header(pthread_mutexattr_t HDR pthread_mutexattr_t.h)
-add_header(pthread_barrier_t HDR pthread_barrier_t.h)
-add_header(pthread_barrierattr_t HDR pthread_barrierattr_t.h)
add_header(pthread_once_t HDR pthread_once_t.h DEPENDS .__futex_word)
add_header(pthread_rwlock_t HDR pthread_rwlock_t.h DEPENDS .__futex_word .pid_t)
add_header(pthread_rwlockattr_t HDR pthread_rwlockattr_t.h)
diff --git a/libc/include/llvm-libc-types/__barrier_type.h b/libc/include/llvm-libc-types/__barrier_type.h
deleted file mode 100644
index 59712619e917d..0000000000000
--- a/libc/include/llvm-libc-types/__barrier_type.h
+++ /dev/null
@@ -1,21 +0,0 @@
-//===-- Definition of __barrier_type type ---------------------------------===//
-//
-// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
-// See https://llvm.org/LICENSE.txt for license information.
-// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
-//
-//===----------------------------------------------------------------------===//
-
-#ifndef LLVM_LIBC_TYPES__BARRIER_TYPE_H
-#define LLVM_LIBC_TYPES__BARRIER_TYPE_H
-
-typedef struct __attribute__((aligned(8 /* alignof (Barrier) */))) {
- unsigned expected;
- unsigned waiting;
- bool blocking;
- char entering[24 /* sizeof (CndVar) */];
- char exiting[24 /* sizeof (CndVar) */];
- char mutex[24 /* sizeof (Mutex) */];
-} __barrier_type;
-
-#endif // LLVM_LIBC_TYPES__BARRIER_TYPE_H
diff --git a/libc/include/llvm-libc-types/pthread_barrier_t.h b/libc/include/llvm-libc-types/pthread_barrier_t.h
deleted file mode 100644
index 3a3d4706d43e6..0000000000000
--- a/libc/include/llvm-libc-types/pthread_barrier_t.h
+++ /dev/null
@@ -1,15 +0,0 @@
-//===-- Definition of pthread_barrier_t type --------------------------===//
-//
-// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
-// See https://llvm.org/LICENSE.txt for license information.
-// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
-//
-//===----------------------------------------------------------------------===//
-
-#ifndef LLVM_LIBC_TYPES_PTHREAD_BARRIER_T_H
-#define LLVM_LIBC_TYPES_PTHREAD_BARRIER_T_H
-
-#include "include/llvm-libc-types/__barrier_type.h"
-typedef __barrier_type pthread_barrier_t;
-
-#endif // LLVM_LIBC_TYPES_PTHREAD_BARRIER_T_H
diff --git a/libc/include/llvm-libc-types/pthread_barrierattr_t.h b/libc/include/llvm-libc-types/pthread_barrierattr_t.h
deleted file mode 100644
index 064be5bfb6721..0000000000000
--- a/libc/include/llvm-libc-types/pthread_barrierattr_t.h
+++ /dev/null
@@ -1,16 +0,0 @@
-//===-- Definition of pthread_barrierattr_t type --------------------------===//
-//
-// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
-// See https://llvm.org/LICENSE.txt for license information.
-// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
-//
-//===----------------------------------------------------------------------===//
-
-#ifndef LLVM_LIBC_TYPES_PTHREAD_BARRIERATTR_T_H
-#define LLVM_LIBC_TYPES_PTHREAD_BARRIERATTR_T_H
-
-typedef struct {
- bool pshared;
-} pthread_barrierattr_t;
-
-#endif // LLVM_LIBC_TYPES_PTHREAD_BARRIERATTR_T_H
diff --git a/libc/include/pthread.yaml b/libc/include/pthread.yaml
index 8afce2098adde..5b27e68d2f2d8 100644
--- a/libc/include/pthread.yaml
+++ b/libc/include/pthread.yaml
@@ -6,8 +6,6 @@ types:
- type_name: pthread_once_t
- type_name: pthread_mutex_t
- type_name: pthread_mutexattr_t
- - type_name: pthread_barrier_t
- - type_name: pthread_barrierattr_t
- type_name: pthread_key_t
- type_name: pthread_condattr_t
- type_name: __pthread_tss_dtor_t
@@ -279,26 +277,6 @@ functions:
arguments:
- type: pthread_mutexattr_t *__restrict
- type: int
- - name: pthread_barrier_init
- standards:
- - POSIX
- return_type: int
- arguments:
- - type: pthread_barrier_t *__restrict
- - type: const pthread_barrierattr_t *__restrict
- - type: int
- - name: pthread_barrier_wait
- standards:
- - POSIX
- return_type: int
- arguments:
- - type: pthread_barrier_t *
- - name: pthread_barrier_destroy
- standards:
- - POSIX
- return_type: int
- arguments:
- - type: pthread_barrier_t *
- name: pthread_once
standards:
- POSIX
diff --git a/libc/src/__support/threads/linux/CMakeLists.txt b/libc/src/__support/threads/linux/CMakeLists.txt
index 14aaad214f43a..cbb788645a139 100644
--- a/libc/src/__support/threads/linux/CMakeLists.txt
+++ b/libc/src/__support/threads/linux/CMakeLists.txt
@@ -124,14 +124,3 @@ add_object_library(
libc.src.__support.threads.linux.raw_mutex
libc.src.__support.CPP.mutex
)
-
-add_object_library(
- barrier
- HDRS
- barrier.h
- SRCS
- barrier.cpp
- DEPENDS
- libc.src.__support.threads.CndVar
- libc.src.__support.threads.mutex
-)
diff --git a/libc/src/__support/threads/linux/barrier.cpp b/libc/src/__support/threads/linux/barrier.cpp
deleted file mode 100644
index cf7207b53094b..0000000000000
--- a/libc/src/__support/threads/linux/barrier.cpp
+++ /dev/null
@@ -1,85 +0,0 @@
-//===-- Implementation of Barrier class ------------- ---------------------===//
-//
-// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
-// See https://llvm.org/LICENSE.txt for license information.
-// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
-//
-//===----------------------------------------------------------------------===//
-
-#include "src/__support/threads/linux/barrier.h"
-#include "hdr/errno_macros.h"
-#include "src/__support/threads/CndVar.h"
-#include "src/__support/threads/mutex.h"
-
-namespace LIBC_NAMESPACE_DECL {
-
-int Barrier::init(Barrier *b,
- [[maybe_unused]] const pthread_barrierattr_t *attr,
- unsigned count) {
- LIBC_ASSERT(attr == nullptr); // TODO implement barrierattr
- if (count == 0)
- return EINVAL;
-
- b->expected = count;
- b->waiting = 0;
- b->blocking = true;
-
- int err;
- err = CndVar::init(&b->entering);
- if (err != 0)
- return err;
-
- err = CndVar::init(&b->exiting);
- if (err != 0)
- return err;
-
- auto mutex_err = Mutex::init(&b->m, false, false, false, false);
- if (mutex_err != MutexError::NONE)
- return EAGAIN;
-
- return 0;
-}
-
-int Barrier::wait() {
- m.lock();
-
- // if the barrier is emptying out threads, wait until it finishes
- while (!blocking)
- entering.wait(&m);
- waiting++;
-
- if (waiting < expected) {
- // block threads until waiting = expected
- while (blocking)
- exiting.wait(&m);
- } else {
- // this is the last thread to call wait(), so lets wake everyone up
- blocking = false;
- exiting.broadcast();
- }
- waiting--;
-
- if (waiting == 0) {
- // all threads have exited the barrier, let's let the ones waiting to enter
- // continue
- blocking = true;
- entering.broadcast();
- m.unlock();
-
- // POSIX dictates that the barrier should return a special value to just one
- // thread, so we can arbitrarily choose this thread
- return PTHREAD_BARRIER_SERIAL_THREAD;
- }
- m.unlock();
-
- return 0;
-}
-
-int Barrier::destroy(Barrier *b) {
- CndVar::destroy(&b->entering);
- CndVar::destroy(&b->exiting);
- Mutex::destroy(&b->m);
- return 0;
-}
-
-} // namespace LIBC_NAMESPACE_DECL
diff --git a/libc/src/__support/threads/linux/barrier.h b/libc/src/__support/threads/linux/barrier.h
deleted file mode 100644
index f0655bfc52a10..0000000000000
--- a/libc/src/__support/threads/linux/barrier.h
+++ /dev/null
@@ -1,50 +0,0 @@
-//===-- A platform independent abstraction layer for barriers --*- C++ -*-===//
-//
-// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
-// See https://llvm.org/LICENSE.txt for license information.
-// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
-//
-//===----------------------------------------------------------------------===//
-
-#ifndef LLVM_LIBC___SUPPORT_SRC_THREADS_LINUX_BARRIER_H
-#define LLVM_LIBC___SUPPORT_SRC_THREADS_LINUX_BARRIER_H
-
-#include "hdr/pthread_macros.h"
-#include "include/llvm-libc-types/pthread_barrier_t.h"
-#include "include/llvm-libc-types/pthread_barrierattr_t.h"
-#include "src/__support/threads/CndVar.h"
-#include "src/__support/threads/mutex.h"
-
-namespace LIBC_NAMESPACE_DECL {
-
-// NOTE: if the size of this class changes, you must ensure that the size of
-// pthread_barrier_t (found in include/llvm-libc/types/pthread_barrier_t.h) is
-// the same size
-class Barrier {
-private:
- unsigned expected;
- unsigned waiting;
- bool blocking;
- CndVar entering;
- CndVar exiting;
- Mutex m;
-
-public:
- static int init(Barrier *b, const pthread_barrierattr_t *attr,
- unsigned count);
- static int destroy(Barrier *b);
- int wait();
-};
-
-static_assert(
- sizeof(Barrier) == sizeof(pthread_barrier_t),
- "The public pthread_barrier_t type cannot accommodate the internal "
- "barrier type.");
-
-static_assert(alignof(Barrier) == alignof(pthread_barrier_t),
- "The public pthread_barrier_t type has a different alignment "
- "than the internal barrier type.");
-
-} // namespace LIBC_NAMESPACE_DECL
-
-#endif // LLVM_LIBC___SUPPORT_SRC_THREADS_LINUX_BARRIER_H
diff --git a/libc/src/pthread/CMakeLists.txt b/libc/src/pthread/CMakeLists.txt
index fe31e6a915e7b..c5db6fa910db7 100644
--- a/libc/src/pthread/CMakeLists.txt
+++ b/libc/src/pthread/CMakeLists.txt
@@ -272,40 +272,6 @@ add_entrypoint_object(
libc.src.errno.errno
)
-add_entrypoint_object(
- pthread_barrier_init
- SRCS
- pthread_barrier_init.cpp
- HDRS
- pthread_barrier_init.h
- DEPENDS
- libc.src.errno.errno
- libc.include.pthread
- libc.src.__support.threads.linux.barrier
-)
-
-add_entrypoint_object(
- pthread_barrier_destroy
- SRCS
- pthread_barrier_destroy.cpp
- HDRS
- pthread_barrier_destroy.h
- DEPENDS
- libc.include.pthread
- libc.src.__support.threads.linux.barrier
-)
-
-add_entrypoint_object(
- pthread_barrier_wait
- SRCS
- pthread_barrier_wait.cpp
- HDRS
- pthread_barrier_wait.h
- DEPENDS
- libc.include.pthread
- libc.src.__support.threads.linux.barrier
-)
-
add_entrypoint_object(
pthread_mutex_init
SRCS
diff --git a/libc/src/pthread/pthread_barrier_destroy.cpp b/libc/src/pthread/pthread_barrier_destroy.cpp
deleted file mode 100644
index 82de8f2741862..0000000000000
--- a/libc/src/pthread/pthread_barrier_destroy.cpp
+++ /dev/null
@@ -1,22 +0,0 @@
-//===-- Implementation of the pthread_barrier_destroy function ------------===//
-//
-// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
-// See https://llvm.org/LICENSE.txt for license information.
-// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
-//
-//===----------------------------------------------------------------------===//
-
-#include "pthread_barrier_destroy.h"
-
-#include "hdr/types/pthread_barrier_t.h"
-#include "src/__support/common.h"
-#include "src/__support/macros/config.h"
-#include "src/__support/threads/linux/barrier.h"
-
-namespace LIBC_NAMESPACE_DECL {
-
-LLVM_LIBC_FUNCTION(int, pthread_barrier_destroy, (pthread_barrier_t * b)) {
- return Barrier::destroy(reinterpret_cast<Barrier *>(b));
-}
-
-} // namespace LIBC_NAMESPACE_DECL
diff --git a/libc/src/pthread/pthread_barrier_destroy.h b/libc/src/pthread/pthread_barrier_destroy.h
deleted file mode 100644
index e27552ce7e5ae..0000000000000
--- a/libc/src/pthread/pthread_barrier_destroy.h
+++ /dev/null
@@ -1,21 +0,0 @@
-//===-- Implementation header for pthread_barrier_destroy --------*- C++-*-===//
-//
-// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
-// See https://llvm.org/LICENSE.txt for license information.
-// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
-//
-//===----------------------------------------------------------------------===//
-
-#ifndef LLVM_LIBC_SRC_PTHREAD_PTHREAD_BARRIER_DESTROY_H
-#define LLVM_LIBC_SRC_PTHREAD_PTHREAD_BARRIER_DESTROY_H
-
-#include "hdr/types/pthread_barrier_t.h"
-#include "src/__support/macros/config.h"
-
-namespace LIBC_NAMESPACE_DECL {
-
-int pthread_barrier_destroy(pthread_barrier_t *b);
-
-} // namespace LIBC_NAMESPACE_DECL
-
-#endif // LLVM_LIBC_SRC_PTHREAD_PTHREAD_BARRIER_DESTROY_H
diff --git a/libc/src/pthread/pthread_barrier_init.cpp b/libc/src/pthread/pthread_barrier_init.cpp
deleted file mode 100644
index 2e92238a49243..0000000000000
--- a/libc/src/pthread/pthread_barrier_init.cpp
+++ /dev/null
@@ -1,26 +0,0 @@
-//===-- Implementation of the pthread_barrier_init function ---------------===//
-//
-// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
-// See https://llvm.org/LICENSE.txt for license information.
-// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
-//
-//===----------------------------------------------------------------------===//
-
-#include "pthread_barrier_init.h"
-
-#include "hdr/types/pthread_barrier_t.h"
-#include "hdr/types/pthread_barrierattr_t.h"
-#include "src/__support/common.h"
-#include "src/__support/macros/config.h"
-#include "src/__support/threads/linux/barrier.h"
-
-namespace LIBC_NAMESPACE_DECL {
-
-LLVM_LIBC_FUNCTION(int, pthread_barrier_init,
- (pthread_barrier_t * b,
- const pthread_barrierattr_t *__restrict attr,
- unsigned count)) {
- return Barrier::init(reinterpret_cast<Barrier *>(b), attr, count);
-}
-
-} // namespace LIBC_NAMESPACE_DECL
diff --git a/libc/src/pthread/pthread_barrier_init.h b/libc/src/pthread/pthread_barrier_init.h
deleted file mode 100644
index bb17f3f5664da..0000000000000
--- a/libc/src/pthread/pthread_barrier_init.h
+++ /dev/null
@@ -1,24 +0,0 @@
-//===-- Implementation header for pthread_barrier_init ----------*- C++ -*-===//
-//
-// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
-// See https://llvm.org/LICENSE.txt for license information.
-// SPDX-License-Identifier: A...
[truncated]
|
sribee8
approved these changes
Jul 28, 2025
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Reverts #148948