summaryrefslogtreecommitdiffstats
path: root/cpukit/score/inline/rtems
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2012-11-22 12:40:33 +0100
committerSebastian Huber <sebastian.huber@embedded-brains.de>2012-11-22 16:35:06 +0100
commit67a9159e57649823792c8686718a7abac066cb0b (patch)
treef74535da82e8ff5ed16cec415fcf2dcf5dcab472 /cpukit/score/inline/rtems
parentscore: Change _Internal_error_Occurred() (diff)
downloadrtems-67a9159e57649823792c8686718a7abac066cb0b.tar.bz2
score: Avoid superfluous loads
Diffstat (limited to 'cpukit/score/inline/rtems')
-rw-r--r--cpukit/score/inline/rtems/score/thread.inl16
1 files changed, 12 insertions, 4 deletions
diff --git a/cpukit/score/inline/rtems/score/thread.inl b/cpukit/score/inline/rtems/score/thread.inl
index b2806385ab..272c14fdf2 100644
--- a/cpukit/score/inline/rtems/score/thread.inl
+++ b/cpukit/score/inline/rtems/score/thread.inl
@@ -76,8 +76,12 @@
*/
RTEMS_INLINE_ROUTINE uint32_t _Thread_Dispatch_increment_disable_level(void)
{
- _Thread_Dispatch_disable_level++;
- return _Thread_Dispatch_disable_level;
+ uint32_t level = _Thread_Dispatch_disable_level;
+
+ ++level;
+ _Thread_Dispatch_disable_level = level;
+
+ return level;
}
/** @brief _Thread_Dispatch_decrement_disable_level
@@ -86,8 +90,12 @@
*/
RTEMS_INLINE_ROUTINE uint32_t _Thread_Dispatch_decrement_disable_level(void)
{
- _Thread_Dispatch_disable_level--;
- return _Thread_Dispatch_disable_level;
+ uint32_t level = _Thread_Dispatch_disable_level;
+
+ --level;
+ _Thread_Dispatch_disable_level = level;
+
+ return level;
}
/** @brief _Thread_Dispatch_initialization