diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2010-07-16 08:31:34 +0000 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2010-07-16 08:31:34 +0000 |
commit | 9f9a82bdced91b9de49426dc7d73b57d48917112 (patch) | |
tree | 2a12b57a1bf29369deb5add358fea2660f9ba660 /cpukit/score/include/rtems/system.h | |
parent | 2010-07-16 Sebastian Huber <sebastian.huber@embedded-brains.de> (diff) | |
download | rtems-9f9a82bdced91b9de49426dc7d73b57d48917112.tar.bz2 |
2010-07-16 Sebastian Huber <sebastian.huber@embedded-brains.de>
* score/include/rtems/score/basedefs.h: New file.
* score/Makefile.am, score/preinstall.am: Reflect change above.
* score/include/rtems/score/percpu.h: Include <rtems/score/cpu.h>.
* score/include/rtems/system.h: Moved definition of SCORE_EXTERN,
SAPI_EXTERN, RTEMS_EXTERN, POSIX_EXTERN, RTEMS_INLINE_ROUTINE,
RTEMS_COMPILER_MEMORY_BARRIER, RTEMS_COMPILER_NO_RETURN_ATTRIBUTE,
RTEMS_COMPILER_DEPRECATED_ATTRIBUTE, TRUE, and FALSE to
<rtems/score/basedefs.h>.
Removed include of <rtems/score/cpu.h>, <stdint.h> and <stddef.h>.
Diffstat (limited to '')
-rw-r--r-- | cpukit/score/include/rtems/system.h | 148 |
1 files changed, 5 insertions, 143 deletions
diff --git a/cpukit/score/include/rtems/system.h b/cpukit/score/include/rtems/system.h index 2bb55d7c8e..7ca6c33a8b 100644 --- a/cpukit/score/include/rtems/system.h +++ b/cpukit/score/include/rtems/system.h @@ -20,158 +20,19 @@ #ifndef _RTEMS_SYSTEM_H #define _RTEMS_SYSTEM_H +#include <rtems/score/percpu.h> + #ifdef __cplusplus extern "C" { #endif -/* - * The cpu options include file defines all cpu dependent - * parameters for this build of RTEMS. It must be included - * first so the basic macro definitions are in place. - */ -#include <rtems/score/cpuopts.h> - -/** - * The following ensures that all data is declared in the space - * of the initialization routine for either the Initialization Manager - * or the initialization file for the appropriate API. It is - * referenced as "external" in every other file. - */ -#ifdef SCORE_INIT -#undef SCORE_EXTERN -#define SCORE_EXTERN -#else -#undef SCORE_EXTERN -#define SCORE_EXTERN extern -#endif - -/** - * The following ensures that all data is declared in the space - * of the initialization routine for either the Initialization Manager - * or the initialization file for the appropriate API. It is - * referenced as "external" in every other file. - */ -#ifdef SAPI_INIT -#undef SAPI_EXTERN -#define SAPI_EXTERN -#else -#undef SAPI_EXTERN -#define SAPI_EXTERN extern -#endif - -/** - * The following ensures that all data is declared in the space - * of the initialization routine for either the Initialization Manager - * or the initialization file for the appropriate API. It is - * referenced as "external" in every other file. - */ -#ifdef RTEMS_API_INIT -#undef RTEMS_EXTERN -#define RTEMS_EXTERN -#else -#undef RTEMS_EXTERN -#define RTEMS_EXTERN extern -#endif - -/** - * The following ensures that all data is declared in the space - * of the initialization routine for either the Initialization Manager - * or the initialization file for the appropriate API. It is - * referenced as "external" in every other file. - */ -#ifdef POSIX_API_INIT -#undef POSIX_EXTERN -#define POSIX_EXTERN -#else -#undef POSIX_EXTERN -#define POSIX_EXTERN extern -#endif - -/** - * The following (in conjunction with compiler arguments) are used - * to choose between the use of static inline functions and macro - * functions. The static inline implementation allows better - * type checking with no cost in code size or execution speed. - */ -#ifdef __GNUC__ -# define RTEMS_INLINE_ROUTINE static __inline__ -#else -# define RTEMS_INLINE_ROUTINE static inline -#endif - -/** - * The following macro is a compiler specific way to ensure that memory - * writes are not reordered around certian points. This specifically can - * impact interrupt disable and thread dispatching critical sections. - */ -#ifdef __GNUC__ - #define RTEMS_COMPILER_MEMORY_BARRIER() asm volatile("" ::: "memory") -#else - #define RTEMS_COMPILER_MEMORY_BARRIER() -#endif - -/** - * The following macro is a compiler specific way to indicate that - * the method will NOT return to the caller. This can assist the - * compiler in code generation and avoid unreachable paths. This - * can impact the code generated following calls to - * rtems_fatal_error_occurred and _Internal_error_Occurred. - */ -#ifdef __GNUC__ - #define RTEMS_COMPILER_NO_RETURN_ATTRIBUTE \ - __attribute__ ((noreturn)) -#else - #define RTEMS_COMPILER_NO_RETURN_ATTRIBUTE -#endif - -/** - * Instructs the compiler to issue a warning whenever a variable or function - * with this attribute will be used. - */ -#ifdef __GNUC__ - #define RTEMS_COMPILER_DEPRECATED_ATTRIBUTE \ - __attribute__ ((deprecated)) -#else - #define RTEMS_COMPILER_DEPRECATED_ATTRIBUTE -#endif - #ifndef ASM + #ifdef RTEMS_POSIX_API /** The following is used by the POSIX implementation to catch bad paths. */ int POSIX_NOT_IMPLEMENTED( void ); #endif -/* - * Include a base set of files. - */ - -/** - * XXX: Eventually proc_ptr needs to disappear!!! - */ -typedef void * proc_ptr; - -#include <stddef.h> -#endif - -#if !defined( TRUE ) || (TRUE != 1) -/** Boolean constant TRUE */ -#undef TRUE -#define TRUE (1) -#endif - -#if !defined( FALSE ) || (FALSE != 0) -/** Boolean constant FALSE */ -#undef FALSE -#define FALSE (0) -#endif - -#ifndef ASM -#include <stdint.h> -#endif -#include <rtems/score/cpu.h> /* processor specific information */ -#include <rtems/score/percpu.h> - -#ifndef ASM /** * This macro is used to obtain the offset of a field in a structure. */ @@ -192,7 +53,8 @@ extern const char _Copyright_Notice[]; /** This macro defines the maximum length of a Classic API name. */ #define RTEMS_MAXIMUM_NAME_LENGTH sizeof(rtems_name) -#endif + +#endif /* ASM */ #ifdef __cplusplus } |