source: rtems/c/src/exec/rtems/inline/rtems/rtems/support.inl @ 1a8fde6c

4.104.114.84.95
Last change on this file since 1a8fde6c was 1a8fde6c, checked in by Joel Sherrill <joel.sherrill@…>, on 03/06/96 at 21:34:57

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.

  • Property mode set to 100644
File size: 1.3 KB
Line 
1/*  support.inl
2 *
3 *  This include file contains the static inline implementation of all
4 *  of the inlined routines specific to the RTEMS API.
5 *
6 *  COPYRIGHT (c) 1989, 1990, 1991, 1992, 1993, 1994.
7 *  On-Line Applications Research Corporation (OAR).
8 *  All rights assigned to U.S. Government, 1994.
9 *
10 *  This material may be reproduced by or for the U.S. Government pursuant
11 *  to the copyright license under the clause at DFARS 252.227-7013.  This
12 *  notice must appear in all copies of this file and its derivatives.
13 *
14 *  $Id$
15 */
16 
17#ifndef __RTEMS_SUPPORT_inl
18#define __RTEMS_SUPPORT_inl
19
20/*PAGE
21 *
22 *  rtems_is_name_valid
23 *
24 *  DESCRIPTION:
25 *
26 *  This function returns TRUE if the name is valid, and FALSE otherwise.
27 */
28
29STATIC INLINE rtems_boolean rtems_is_name_valid (
30  rtems_name name
31)
32{
33  return ( name != 0 );
34}
35
36/*PAGE
37 *
38 *  rtems_name_to_characters
39 *
40 *  DESCRIPTION:
41 *
42 *  This function breaks the object name into the four component
43 *  characters C1, C2, C3, and C4.
44 */
45
46STATIC INLINE void rtems_name_to_characters(
47  rtems_name    name,
48  char         *c1,
49  char         *c2,
50  char         *c3,
51  char         *c4
52)
53{
54  *c1 = (name >> 24) & 0xff;
55  *c2 = (name >> 16) & 0xff;
56  *c3 = (name >> 8) & 0xff;
57  *c4 =  name & 0xff;
58}
59
60#endif
61/* end of include file */
Note: See TracBrowser for help on using the repository browser.