score: Use RTEMS_SMP in _Thread_Create_idle()

Conditional expressions with inline functions are not optimized away if
optimization is disabled.  Avoid such expressions to prevent dead
branches.
This commit is contained in:
Sebastian Huber
2022-07-05 09:04:26 +02:00
parent 6e74cebb62
commit 80090639a6

View File

@@ -112,10 +112,10 @@ static void _Thread_Create_idle_for_CPU( Per_CPU_Control *cpu )
void _Thread_Create_idle( void )
{
#if defined(RTEMS_SMP)
uint32_t cpu_max;
uint32_t cpu_index;
_System_state_Set( SYSTEM_STATE_BEFORE_MULTITASKING );
cpu_max = _SMP_Get_processor_maximum();
for ( cpu_index = 0 ; cpu_index < cpu_max ; ++cpu_index ) {
@@ -125,8 +125,12 @@ void _Thread_Create_idle( void )
_Thread_Create_idle_for_CPU( cpu );
}
}
#else
_Thread_Create_idle_for_CPU( _Per_CPU_Get() );
#endif
_CPU_Use_thread_local_storage(
&_Per_CPU_Get_executing( _Per_CPU_Get() )->Registers
);
_System_state_Set( SYSTEM_STATE_BEFORE_MULTITASKING );
}