source: rtems/c/src/exec/score/include/rtems/score/wkspace.h @ 8e76546

4.104.114.84.95
Last change on this file since 8e76546 was 8e76546, checked in by Joel Sherrill <joel.sherrill@…>, on Mar 6, 1996 at 9:26:28 PM

Removed prototyes for static inline rgutines 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/*  wkspace.h
2 *
3 *  This include file contains information related to the
4 *  RAM Workspace.  This Handler provides mechanisms which can be used to
5 *  define, initialize and manipulate the workspace.
6 *
7 *  COPYRIGHT (c) 1989, 1990, 1991, 1992, 1993, 1994.
8 *  On-Line Applications Research Corporation (OAR).
9 *  All rights assigned to U.S. Government, 1994.
10 *
11 *  This material may be reproduced by or for the U.S. Government pursuant
12 *  to the copyright license under the clause at DFARS 252.227-7013.  This
13 *  notice must appear in all copies of this file and its derivatives.
14 *
15 *  $Id$
16 */
17
18#ifndef __WORKSPACE_h
19#define __WORKSPACE_h
20
21#ifdef __cplusplus
22extern "C" {
23#endif
24
25#include <rtems/score/heap.h>
26#include <rtems/score/interr.h>
27
28/*
29 *  The following is used to manage the Workspace.
30 *
31 */
32
33EXTERN Heap_Control _Workspace_Area;  /* executive heap header */
34
35/*
36 *  _Workspace_Allocate_or_fatal_error
37 *
38 *  DESCRIPTION:
39 *
40 *  This routine returns the address of a block of memory of size
41 *  bytes.  If a block of the appropriate size cannot be allocated
42 *  from the workspace, then the internal error handler is invoked.
43 */
44
45void *_Workspace_Allocate_or_fatal_error(
46  unsigned32   size
47);
48
49#ifndef __RTEMS_APPLICATION__
50#include <rtems/score/wkspace.inl>
51#endif
52
53#ifdef __cplusplus
54}
55#endif
56
57#endif
58/* end of include file */
Note: See TracBrowser for help on using the repository browser.