summaryrefslogtreecommitdiffstats
path: root/cpukit/score
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2016-05-01 16:11:30 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2016-05-02 13:46:50 +0200
commit0a68d8e45ae1c979f350213ed9c174b86e0c7fdf (patch)
tree6d87ee6428e446f871ab22fc4fa53a1f46af39d4 /cpukit/score
parentmpci: Make _*_MP_Get_packet() static (diff)
downloadrtems-0a68d8e45ae1c979f350213ed9c174b86e0c7fdf.tar.bz2
score: Optimize _Objects_Get_local()
Make the interrupt lock context the second parameter to avoid register moves.
Diffstat (limited to 'cpukit/score')
-rw-r--r--cpukit/score/include/rtems/score/objectimpl.h8
-rw-r--r--cpukit/score/src/objectgetlocal.c4
-rw-r--r--cpukit/score/src/objectgetnameasstring.c2
3 files changed, 8 insertions, 6 deletions
diff --git a/cpukit/score/include/rtems/score/objectimpl.h b/cpukit/score/include/rtems/score/objectimpl.h
index 2d9c374db9..1129daf32f 100644
--- a/cpukit/score/include/rtems/score/objectimpl.h
+++ b/cpukit/score/include/rtems/score/objectimpl.h
@@ -630,8 +630,10 @@ Objects_Control *_Objects_Get_isr_disable(
*
* @param id The object identifier. This is the first parameter since usual
* callers get the object identifier as the first parameter themself.
+ * @param lock_context The interrupt lock context. This is the second
+ * parameter since usual callers get the interrupt lock context as the second
+ * parameter themself.
* @param information The object class information block.
- * @param lock_context The interrupt lock context.
*
* @retval NULL No associated object exists.
* @retval other The pointer to the associated object control block.
@@ -640,8 +642,8 @@ Objects_Control *_Objects_Get_isr_disable(
*/
Objects_Control *_Objects_Get_local(
Objects_Id id,
- const Objects_Information *information,
- ISR_lock_Context *lock_context
+ ISR_lock_Context *lock_context,
+ const Objects_Information *information
);
/**
diff --git a/cpukit/score/src/objectgetlocal.c b/cpukit/score/src/objectgetlocal.c
index 1134095b27..2024b59bc0 100644
--- a/cpukit/score/src/objectgetlocal.c
+++ b/cpukit/score/src/objectgetlocal.c
@@ -27,8 +27,8 @@
Objects_Control *_Objects_Get_local(
Objects_Id id,
- const Objects_Information *information,
- ISR_lock_Context *lock_context
+ ISR_lock_Context *lock_context,
+ const Objects_Information *information
)
{
uint32_t index;
diff --git a/cpukit/score/src/objectgetnameasstring.c b/cpukit/score/src/objectgetnameasstring.c
index d73d8aa212..f513774ddd 100644
--- a/cpukit/score/src/objectgetnameasstring.c
+++ b/cpukit/score/src/objectgetnameasstring.c
@@ -56,7 +56,7 @@ char *_Objects_Get_name_as_string(
if ( !information )
return NULL;
- the_object = _Objects_Get_local( tmpId, information, &lock_context );
+ the_object = _Objects_Get_local( tmpId, &lock_context, information );
if ( the_object == NULL ) {
return NULL;
}