summaryrefslogtreecommitdiffstats
path: root/cpukit/include/rtems/malloc.h
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2020-04-08 17:14:41 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2021-11-30 08:33:12 +0100
commitd7205f0083f8fdd0408404ce99c6eab9b8d120c7 (patch)
tree235c9be429a0e1576775079756d81032298305e1 /cpukit/include/rtems/malloc.h
parentscore: Optimize Workspace Handler initialization (diff)
downloadrtems-d7205f0083f8fdd0408404ce99c6eab9b8d120c7.tar.bz2
libc: Optimize malloc() initialization
The BSPs provide memory for the separate C Program Heap initialization via _Memory_Get(). Most BSPs provide exactly one memory area. Only two BSPs provide more than one memory area (arm/altera-cyclone-v and bsps/powerpc/mpc55xxevb). Only if more than one memory area is provided, there is a need to use _Heap_Extend(). Provide two implementations to initialize the separate C Program Heap and let the BSP select one of the implementations based on the number of provided memory areas. This gets rid of a dependency on _Heap_Extend(). It also avoids dead code sections for most BSPs. Change licence to BSD-2-Clause according to file history. Update #3053.
Diffstat (limited to 'cpukit/include/rtems/malloc.h')
-rw-r--r--cpukit/include/rtems/malloc.h6
1 files changed, 1 insertions, 5 deletions
diff --git a/cpukit/include/rtems/malloc.h b/cpukit/include/rtems/malloc.h
index eba538e223..c0d15fbf72 100644
--- a/cpukit/include/rtems/malloc.h
+++ b/cpukit/include/rtems/malloc.h
@@ -19,7 +19,6 @@
#include <rtems.h>
#include <rtems/bspIo.h>
#include <rtems/libcsupport.h> /* for malloc_walk() */
-#include <rtems/score/memory.h>
#include <stdint.h>
@@ -43,10 +42,7 @@ extern "C" {
*/
extern Heap_Control *RTEMS_Malloc_Heap;
-Heap_Control *RTEMS_Malloc_Initialize(
- const Memory_Information *mem,
- Heap_Initialization_or_extend_handler extend
-);
+void _Malloc_Initialize( void );
void rtems_heap_set_sbrk_amount( ptrdiff_t sbrk_amount );