source: rtems/cpukit/score/inline/rtems/score/stack.inl @ 503dc058

4.104.114.84.95
Last change on this file since 503dc058 was 503dc058, checked in by Joel Sherrill <joel.sherrill@…>, on 07/03/96 at 14:20:03

switched from "STATIC INLINE" to "RTEMS_INLINE_ROUTINE"

  • Property mode set to 100644
File size: 1.7 KB
Line 
1/*  stack.inl
2 *
3 *  This file contains the static inline implementation of the inlined
4 *  routines from the Stack Handler.
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 __STACK_inl
18#define __STACK_inl
19
20/*PAGE
21 *
22 *  _Stack_Initialize
23 *
24 *  DESCRIPTION:
25 *
26 *  This routine initializes the_stack record to indicate that
27 *  size bytes of memory starting at starting_address have been
28 *  reserved for a stack.
29 */
30
31RTEMS_INLINE_ROUTINE void _Stack_Initialize (
32  Stack_Control *the_stack,
33  void          *starting_address,
34  unsigned32     size
35)
36{
37  the_stack->area = starting_address;
38  the_stack->size = size;
39}
40
41/*PAGE
42 *
43 *  _Stack_Is_enough
44 *
45 *  DESCRIPTION:
46 *
47 *  This function returns TRUE if size bytes is enough memory for
48 *  a valid stack area on this processor, and FALSE otherwise.
49 */
50
51RTEMS_INLINE_ROUTINE boolean _Stack_Is_enough (
52  unsigned32 size
53)
54{
55  return ( size >= STACK_MINIMUM_SIZE );
56}
57
58/*PAGE
59 *
60 *  _Stack_Adjust_size
61 *
62 *  DESCRIPTION:
63 *
64 *  This function increases the stack size to insure that the thread
65 *  has the desired amount of stack space after the initial stack
66 *  pointer is determined based on alignment restrictions.
67 *
68 *  NOTE:
69 *
70 *  The amount of adjustment for alignment is CPU dependent.
71 */
72
73RTEMS_INLINE_ROUTINE unsigned32 _Stack_Adjust_size (
74  unsigned32 size
75)
76{
77  return size + CPU_STACK_ALIGNMENT;
78}
79
80#endif
81/* end of include file */
Note: See TracBrowser for help on using the repository browser.