forked from Imagelibrary/rtems
score: Optimize _Thread_queue_Compare_priority()
This commit is contained in:
@@ -29,19 +29,20 @@ RBTree_Compare_result _Thread_queue_Compare_priority(
|
|||||||
const RBTree_Node *right
|
const RBTree_Node *right
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
Priority_Control left_priority =
|
const Thread_Control *left_thread;
|
||||||
THREAD_RBTREE_NODE_TO_THREAD( left )->current_priority;
|
const Thread_Control *right_thread;
|
||||||
Priority_Control right_priority =
|
Priority_Control left_prio;
|
||||||
THREAD_RBTREE_NODE_TO_THREAD( right )->current_priority;
|
Priority_Control right_prio;
|
||||||
|
|
||||||
|
left_thread = THREAD_RBTREE_NODE_TO_THREAD( left );
|
||||||
|
right_thread = THREAD_RBTREE_NODE_TO_THREAD( right );
|
||||||
|
left_prio = left_thread->current_priority;
|
||||||
|
right_prio = right_thread->current_priority;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* SuperCore priorities use lower numbers to indicate greater importance.
|
* SuperCore priorities use lower numbers to indicate greater importance.
|
||||||
*/
|
*/
|
||||||
if ( left_priority == right_priority )
|
return ( left_prio > right_prio ) - ( left_prio < right_prio );
|
||||||
return 0;
|
|
||||||
if ( left_priority < right_priority )
|
|
||||||
return -1;
|
|
||||||
return 1;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void _Thread_queue_Initialize(
|
void _Thread_queue_Initialize(
|
||||||
|
|||||||
Reference in New Issue
Block a user