summaryrefslogtreecommitdiffstats
path: root/cpukit/score/include/rtems/score/wkspace.h
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>2008-01-09 22:35:10 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>2008-01-09 22:35:10 +0000
commit5b33dc8076ed5afe512114ed45536cc85708c7de (patch)
tree0a774de76db7ba598aa21f3fb5775d9a84ad5b49 /cpukit/score/include/rtems/score/wkspace.h
parent2008-01-09 Joel Sherrill <joel.sherrill@OARcorp.com> (diff)
downloadrtems-5b33dc8076ed5afe512114ed45536cc85708c7de.tar.bz2
2008-01-09 Joel Sherrill <joel.sherrill@OARcorp.com>
* score/include/rtems/score/wkspace.h, score/inline/rtems/score/wkspace.inl, score/src/wkspace.c: Do not inline _Workspace_Free or _Workspace_Allocate since they are not always inlined and actually smaller overall as subroutines. They are not particularly time critical so inlining is not absolutely necessary.
Diffstat (limited to 'cpukit/score/include/rtems/score/wkspace.h')
-rw-r--r--cpukit/score/include/rtems/score/wkspace.h29
1 files changed, 29 insertions, 0 deletions
diff --git a/cpukit/score/include/rtems/score/wkspace.h b/cpukit/score/include/rtems/score/wkspace.h
index b692b914eb..b210000d41 100644
--- a/cpukit/score/include/rtems/score/wkspace.h
+++ b/cpukit/score/include/rtems/score/wkspace.h
@@ -55,6 +55,35 @@ void _Workspace_Handler_initialization(
size_t size
);
+/** @brief Allocate Memory from Workspace
+ *
+ * This routine returns the address of a block of memory of size
+ * bytes. If a block of the appropriate size cannot be allocated
+ * from the workspace, then NULL is returned.
+ *
+ * @param size is the requested size
+ *
+ * @return a pointer to the requested memory or NULL.
+ */
+void *_Workspace_Allocate(
+ size_t size
+);
+
+/** @brief Free Memory to the Workspace
+ *
+ * This function frees the specified block of memory. If the block
+ * belongs to the Workspace and can be successfully freed, then
+ * TRUE is returned. Otherwise FALSE is returned.
+ *
+ * @param block is the memory to free
+ *
+ * @return TRUE if the free was successful.
+ */
+
+boolean _Workspace_Free(
+ void *block
+);
+
/** @brief Workspace Allocate or Fail with Fatal Error
*
* This routine returns the address of a block of memory of @a size