From cba15292d9b7085eee4021e1927206d41ad43fd4 Mon Sep 17 00:00:00 2001 From: Sebastian Huber Date: Thu, 25 Jul 2013 09:07:23 +0200 Subject: score: Merge objectmp implementation into one file --- cpukit/score/Makefile.am | 1 - cpukit/score/include/rtems/score/objectmp.h | 53 +++++++++++++++++---- cpukit/score/inline/rtems/score/objectmp.inl | 71 ---------------------------- cpukit/score/preinstall.am | 4 -- 4 files changed, 44 insertions(+), 85 deletions(-) delete mode 100644 cpukit/score/inline/rtems/score/objectmp.inl (limited to 'cpukit') diff --git a/cpukit/score/Makefile.am b/cpukit/score/Makefile.am index 3cb6b7fa19..d6bac45667 100644 --- a/cpukit/score/Makefile.am +++ b/cpukit/score/Makefile.am @@ -106,7 +106,6 @@ include_rtems_score_HEADERS += inline/rtems/score/tod.inl if HAS_MP ## We only build multiprocessing related files if HAS_MP was defined include_rtems_score_HEADERS += inline/rtems/score/mppkt.inl -include_rtems_score_HEADERS += inline/rtems/score/objectmp.inl endif ## src diff --git a/cpukit/score/include/rtems/score/objectmp.h b/cpukit/score/include/rtems/score/objectmp.h index 1ef15b3c72..654d7aa66e 100644 --- a/cpukit/score/include/rtems/score/objectmp.h +++ b/cpukit/score/include/rtems/score/objectmp.h @@ -19,6 +19,12 @@ #ifndef _RTEMS_SCORE_OBJECTMP_H #define _RTEMS_SCORE_OBJECTMP_H +#include + +#ifdef __cplusplus +extern "C" { +#endif + /** * @defgroup ScoreObjectMP Object Handler Multiprocessing Support * @@ -30,10 +36,6 @@ */ /**@{*/ -#ifdef __cplusplus -extern "C" { -#endif - /** * This defines the Global Object Control Block used to manage * objects resident on other nodes. It is derived from Object. @@ -189,15 +191,48 @@ SCORE_EXTERN uint32_t _Objects_MP_Maximum_global_objects; */ SCORE_EXTERN Chain_Control _Objects_MP_Inactive_global_objects; -#ifndef __RTEMS_APPLICATION__ -#include -#endif +/** + * This function allocates a Global Object control block. + */ -#ifdef __cplusplus +RTEMS_INLINE_ROUTINE Objects_MP_Control *_Objects_MP_Allocate_global_object ( + void +) +{ + return (Objects_MP_Control *) + _Chain_Get( &_Objects_MP_Inactive_global_objects ); +} + +/** + * This routine deallocates a Global Object control block. + */ + +RTEMS_INLINE_ROUTINE void _Objects_MP_Free_global_object ( + Objects_MP_Control *the_object +) +{ + _Chain_Append( + &_Objects_MP_Inactive_global_objects, + &the_object->Object.Node + ); +} + +/** + * This function returns whether the global object is NULL or not. + */ + +RTEMS_INLINE_ROUTINE bool _Objects_MP_Is_null_global_object ( + Objects_MP_Control *the_object +) +{ + return( the_object == NULL ); } -#endif /**@}*/ +#ifdef __cplusplus +} +#endif + #endif /* end of include file */ diff --git a/cpukit/score/inline/rtems/score/objectmp.inl b/cpukit/score/inline/rtems/score/objectmp.inl deleted file mode 100644 index e6734cf352..0000000000 --- a/cpukit/score/inline/rtems/score/objectmp.inl +++ /dev/null @@ -1,71 +0,0 @@ -/** - * @file - * - * @brief Inlined Routines Associated with Global Objects - * - * This include file contains the bodies of all inlined routines - * which deal with global objects. - */ - -/* - * COPYRIGHT (c) 1989-2004. - * On-Line Applications Research Corporation (OAR). - * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. - */ - -#ifndef _RTEMS_SCORE_OBJECTMP_H -# error "Never use directly; include instead." -#endif - -#ifndef _RTEMS_SCORE_OBJECTMP_INL -#define _RTEMS_SCORE_OBJECTMP_INL - -/** - * @addtogroup ScoreObjectMP - */ -/**@{**/ - -/** - * This function allocates a Global Object control block. - */ - -RTEMS_INLINE_ROUTINE Objects_MP_Control *_Objects_MP_Allocate_global_object ( - void -) -{ - return (Objects_MP_Control *) - _Chain_Get( &_Objects_MP_Inactive_global_objects ); -} - -/** - * This routine deallocates a Global Object control block. - */ - -RTEMS_INLINE_ROUTINE void _Objects_MP_Free_global_object ( - Objects_MP_Control *the_object -) -{ - _Chain_Append( - &_Objects_MP_Inactive_global_objects, - &the_object->Object.Node - ); -} - -/** - * This function returns whether the global object is NULL or not. - */ - -RTEMS_INLINE_ROUTINE bool _Objects_MP_Is_null_global_object ( - Objects_MP_Control *the_object -) -{ - return( the_object == NULL ); -} - -/** @} */ - -#endif -/* end of include file */ diff --git a/cpukit/score/preinstall.am b/cpukit/score/preinstall.am index 1fabdc9841..d2a4a9adad 100644 --- a/cpukit/score/preinstall.am +++ b/cpukit/score/preinstall.am @@ -343,8 +343,4 @@ if HAS_MP $(PROJECT_INCLUDE)/rtems/score/mppkt.inl: inline/rtems/score/mppkt.inl $(PROJECT_INCLUDE)/rtems/score/$(dirstamp) $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/rtems/score/mppkt.inl PREINSTALL_FILES += $(PROJECT_INCLUDE)/rtems/score/mppkt.inl - -$(PROJECT_INCLUDE)/rtems/score/objectmp.inl: inline/rtems/score/objectmp.inl $(PROJECT_INCLUDE)/rtems/score/$(dirstamp) - $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/rtems/score/objectmp.inl -PREINSTALL_FILES += $(PROJECT_INCLUDE)/rtems/score/objectmp.inl endif -- cgit v1.2.3