diff options
Diffstat (limited to 'cpukit/score/src/threadglobalconstruction.c')
-rw-r--r-- | cpukit/score/src/threadglobalconstruction.c | 19 |
1 files changed, 5 insertions, 14 deletions
diff --git a/cpukit/score/src/threadglobalconstruction.c b/cpukit/score/src/threadglobalconstruction.c index 56a6df11a9..1e84124c55 100644 --- a/cpukit/score/src/threadglobalconstruction.c +++ b/cpukit/score/src/threadglobalconstruction.c @@ -44,10 +44,11 @@ #define EXECUTE_GLOBAL_CONSTRUCTORS #endif -void _Thread_Global_construction( Thread_Entry entry_point ) +void _Thread_Global_construction( + Thread_Control *executing, + const Thread_Entry_information *entry +) { - Thread_Control *executing; - #if defined(EXECUTE_GLOBAL_CONSTRUCTORS) /* * _init could be a weak symbol and we SHOULD test it but it isn't @@ -58,17 +59,7 @@ void _Thread_Global_construction( Thread_Entry entry_point ) #endif _Thread_Disable_dispatch(); - - executing = _Thread_Executing; - executing->Start.entry_point = entry_point; - - _Thread_Restart( - executing, - executing, - executing->Start.pointer_argument, - executing->Start.numeric_argument - ); - + _Thread_Restart( executing, executing, entry ); _Thread_Enable_dispatch(); _Assert_Not_reached(); |