summaryrefslogtreecommitdiffstats
path: root/cpukit/rtems/include/rtems/rtems/modes.h
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>1996-03-06 21:34:57 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>1996-03-06 21:34:57 +0000
commit1a8fde6ca27afea19faf9bf6487d8aa20b4a8d41 (patch)
tree209ab42fa9bc98774d5290d670af14886390d269 /cpukit/rtems/include/rtems/rtems/modes.h
parentRemoved prototyes for static inline rgutines and moved the comments into (diff)
downloadrtems-1a8fde6ca27afea19faf9bf6487d8aa20b4a8d41.tar.bz2
Removed prototyes for static inline routines and moved the comments into
the inline implementation. The impetus for this was twofold. First, it is incorrect to have static inline prototypes when using the macro implementation. Second, this reduced the number of lines in the include files seen by rtems.h by about 2000 lines. Next we restricted visibility for the inline routines to inside the executive itself EXCEPT for a handful of objects. This reduced the number of include files included by rtems.h by 40 files and reduced the lines in the include files seen by rtems.h by about 6000 lines. In total, these reduced the compile time of the entire RTEMS tree by 20%. This results in about 8 minutes savings on the SparcStation 10 morgana.
Diffstat (limited to 'cpukit/rtems/include/rtems/rtems/modes.h')
-rw-r--r--cpukit/rtems/include/rtems/rtems/modes.h108
1 files changed, 7 insertions, 101 deletions
diff --git a/cpukit/rtems/include/rtems/rtems/modes.h b/cpukit/rtems/include/rtems/rtems/modes.h
index bf60aacf1f..34a23c7b20 100644
--- a/cpukit/rtems/include/rtems/rtems/modes.h
+++ b/cpukit/rtems/include/rtems/rtems/modes.h
@@ -59,7 +59,8 @@ typedef unsigned32 Modes_Control;
* RTEMS supports 0 to 256 levels in bits 0-7 of the mode.
*/
-/*
+/*PAGE
+ *
* RTEMS_INTERRUPT_LEVEL
*
* DESCRIPTION:
@@ -72,108 +73,13 @@ typedef unsigned32 Modes_Control;
* particular CPU, fewer than 256 levels may be supported.
*/
-STATIC INLINE unsigned32 RTEMS_INTERRUPT_LEVEL (
- Modes_Control mode_set
-);
-
-/*
- * _Modes_Mask_changed
- *
- * DESCRIPTION:
- *
- * This function returns TRUE if any of the mode flags in mask
- * are set in mode_set, and FALSE otherwise.
- */
-
-STATIC INLINE boolean _Modes_Mask_changed (
- Modes_Control mode_set,
- Modes_Control masks
-);
-
-/*
- * _Modes_Is_asr_disabled
- *
- * DESCRIPTION:
- *
- * This function returns TRUE if mode_set indicates that Asynchronous
- * Signal Processing is disabled, and FALSE otherwise.
- */
-
-STATIC INLINE boolean _Modes_Is_asr_disabled (
- Modes_Control mode_set
-);
-
-/*
- * _Modes_Is_preempt
- *
- * DESCRIPTION:
- *
- * This function returns TRUE if mode_set indicates that preemption
- * is enabled, and FALSE otherwise.
- */
-
-STATIC INLINE boolean _Modes_Is_preempt (
- Modes_Control mode_set
-);
-
-/*
- * _Modes_Is_timeslice
- *
- * DESCRIPTION:
- *
- * This function returns TRUE if mode_set indicates that timeslicing
- * is enabled, and FALSE otherwise.
- */
-
-STATIC INLINE boolean _Modes_Is_timeslice (
- Modes_Control mode_set
-);
-
-/*
- * _Modes_Get_interrupt_level
- *
- * DESCRIPTION:
- *
- * This function returns the interrupt level portion of the mode_set.
- */
-
-STATIC INLINE ISR_Level _Modes_Get_interrupt_level (
- Modes_Control mode_set
-);
-
-/*
- * _Modes_Set_interrupt_level
- *
- * DESCRIPTION:
- *
- * This routine sets the current interrupt level to that specified
- * in the mode_set.
- */
-
-STATIC INLINE void _Modes_Set_interrupt_level (
- Modes_Control mode_set
-);
-
-/*
- * _Modes_Change
- *
- * DESCRIPTION:
- *
- * This routine changes the modes in old_mode_set indicated by
- * mask to the requested values in new_mode_set. The resulting
- * mode set is returned in out_mode_set and the modes that changed
- * is returned in changed.
- */
-
-STATIC INLINE void _Modes_Change (
- Modes_Control old_mode_set,
- Modes_Control new_mode_set,
- Modes_Control mask,
- Modes_Control *out_mode_set,
- Modes_Control *changed
-);
+#define RTEMS_INTERRUPT_LEVEL( _mode_set ) \
+ ( (_mode_set) & RTEMS_INTERRUPT_MASK )
+
+#ifndef __RTEMS_APPLICATION__
#include <rtems/rtems/modes.inl>
+#endif
#ifdef __cplusplus
}