From a7dcef97e93240b1947a0094b1af91e9b9324a30 Mon Sep 17 00:00:00 2001 From: Sebastian Huber Date: Fri, 17 Nov 2017 06:36:54 +0100 Subject: score: Simplify global construction Update #3243. --- cpukit/score/include/rtems/score/threadimpl.h | 23 ++++++++++------------- 1 file changed, 10 insertions(+), 13 deletions(-) (limited to 'cpukit/score/include/rtems') diff --git a/cpukit/score/include/rtems/score/threadimpl.h b/cpukit/score/include/rtems/score/threadimpl.h index 5f6a5eb2d0..b6722fae19 100644 --- a/cpukit/score/include/rtems/score/threadimpl.h +++ b/cpukit/score/include/rtems/score/threadimpl.h @@ -69,6 +69,16 @@ typedef struct { */ extern Thread_Information _Thread_Internal_information; +/** + * @brief Object identifier of the global constructor thread. + * + * This variable is set by _RTEMS_tasks_Initialize_user_tasks_body() or + * _POSIX_Threads_Initialize_user_threads_body(). + * + * It is consumed by _Thread_Handler(). + */ +extern Objects_Id _Thread_Global_constructor; + /** * The following points to the thread whose floating point * context is currently loaded. @@ -345,19 +355,6 @@ void _Thread_Entry_adaptor_pointer( Thread_Control *executing ); */ void _Thread_Handler( void ); -/** - * @brief Executes the global constructors and then restarts itself as the - * first initialization thread. - * - * The first initialization thread is the first RTEMS initialization task or - * the first POSIX initialization thread in case no RTEMS initialization tasks - * are present. - */ -void _Thread_Global_construction( - Thread_Control *executing, - const Thread_Entry_information *entry -) RTEMS_NO_RETURN; - RTEMS_INLINE_ROUTINE void _Thread_State_acquire_critical( Thread_Control *the_thread, ISR_lock_Context *lock_context -- cgit v1.2.3