summaryrefslogtreecommitdiffstats
path: root/cpukit/score/inline/rtems/score/heap.inl
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/score/inline/rtems/score/heap.inl
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 '')
-rw-r--r--cpukit/score/inline/rtems/score/heap.inl55
1 files changed, 55 insertions, 0 deletions
diff --git a/cpukit/score/inline/rtems/score/heap.inl b/cpukit/score/inline/rtems/score/heap.inl
index 0d1b1231a7..6b4b1af74e 100644
--- a/cpukit/score/inline/rtems/score/heap.inl
+++ b/cpukit/score/inline/rtems/score/heap.inl
@@ -23,6 +23,9 @@
*
* _Heap_Head
*
+ * DESCRIPTION:
+ *
+ * This function returns the head of the specified heap.
*/
STATIC INLINE Heap_Block *_Heap_Head (
@@ -36,6 +39,9 @@ STATIC INLINE Heap_Block *_Heap_Head (
*
* _Heap_Tail
*
+ * DESCRIPTION:
+ *
+ * This function returns the tail of the specified heap.
*/
STATIC INLINE Heap_Block *_Heap_Tail (
@@ -49,6 +55,10 @@ STATIC INLINE Heap_Block *_Heap_Tail (
*
* _Heap_Previous_block
*
+ * DESCRIPTION:
+ *
+ * This function returns the address of the block which physically
+ * precedes the_block in memory.
*/
STATIC INLINE Heap_Block *_Heap_Previous_block (
@@ -65,6 +75,11 @@ STATIC INLINE Heap_Block *_Heap_Previous_block (
*
* _Heap_Next_block
*
+ * DESCRIPTION:
+ *
+ * This function returns the address of the block which physically
+ * follows the_block in memory.
+ *
* NOTE: Next_block assumes that the block is free.
*/
@@ -82,6 +97,10 @@ STATIC INLINE Heap_Block *_Heap_Next_block (
*
* _Heap_Block_at
*
+ * DESCRIPTION:
+ *
+ * This function calculates and returns a block's location (address)
+ * in the heap based upad a base address and an offset.
*/
STATIC INLINE Heap_Block *_Heap_Block_at(
@@ -96,6 +115,9 @@ STATIC INLINE Heap_Block *_Heap_Block_at(
*
* _Heap_User_block_at
*
+ * DESCRIPTION:
+ *
+ * XXX
*/
STATIC INLINE Heap_Block *_Heap_User_block_at(
@@ -112,6 +134,10 @@ STATIC INLINE Heap_Block *_Heap_User_block_at(
*
* _Heap_Is_previous_block_free
*
+ * DESCRIPTION:
+ *
+ * This function returns TRUE if the previous block of the_block
+ * is free, and FALSE otherwise.
*/
STATIC INLINE boolean _Heap_Is_previous_block_free (
@@ -125,6 +151,9 @@ STATIC INLINE boolean _Heap_Is_previous_block_free (
*
* _Heap_Is_block_free
*
+ * DESCRIPTION:
+ *
+ * This function returns TRUE if the block is free, and FALSE otherwise.
*/
STATIC INLINE boolean _Heap_Is_block_free (
@@ -138,6 +167,10 @@ STATIC INLINE boolean _Heap_Is_block_free (
*
* _Heap_Is_block_used
*
+ * DESCRIPTION:
+ *
+ * This function returns TRUE if the block is currently allocated,
+ * and FALSE otherwise.
*/
STATIC INLINE boolean _Heap_Is_block_used (
@@ -151,6 +184,9 @@ STATIC INLINE boolean _Heap_Is_block_used (
*
* _Heap_Block_size
*
+ * DESCRIPTION:
+ *
+ * This function returns the size of the_block in bytes.
*/
STATIC INLINE unsigned32 _Heap_Block_size (
@@ -164,6 +200,10 @@ STATIC INLINE unsigned32 _Heap_Block_size (
*
* _Heap_Start_of_user_area
*
+ * DESCRIPTION:
+ *
+ * This function returns the starting address of the portion of the block
+ * which the user may access.
*/
STATIC INLINE void *_Heap_Start_of_user_area (
@@ -177,6 +217,10 @@ STATIC INLINE void *_Heap_Start_of_user_area (
*
* _Heap_Is_block_in
*
+ * DESCRIPTION:
+ *
+ * This function returns TRUE if the_block is within the memory area
+ * managed by the_heap, and FALSE otherwise.
*/
STATIC INLINE boolean _Heap_Is_block_in (
@@ -191,6 +235,12 @@ STATIC INLINE boolean _Heap_Is_block_in (
*
* _Heap_Is_page_size_valid
*
+ * DESCRIPTION:
+ *
+ * This function validates a specified heap page size. If the page size
+ * is 0 or if lies outside a page size alignment boundary it is invalid
+ * and FALSE is returned. Otherwise, the page size is valid and TRUE is
+ * returned.
*/
STATIC INLINE boolean _Heap_Is_page_size_valid(
@@ -205,6 +255,11 @@ STATIC INLINE boolean _Heap_Is_page_size_valid(
*
* _Heap_Build_flag
*
+ * DESCRIPTION:
+ *
+ * This function returns the block flag composed of size and in_use_flag.
+ * The flag returned is suitable for use as a back or front flag in a
+ * heap block.
*/
STATIC INLINE unsigned32 _Heap_Build_flag (