source: libcfa/src/heap.h @ 5614a191

ADTast-experimentalenumpthread-emulationqualifiedEnum
Last change on this file since 5614a191 was 5614a191, checked in by m3zulfiq <m3zulfiq@…>, 2 years ago

removed old memory allocator and replaced it with the concurrent allocator

  • Property mode set to 100644
File size: 1.6 KB
Line 
1#pragma once
2
3#include <stdlib.h>
4#include <malloc.h>
5
6// supported mallopt options
7#ifndef M_MMAP_THRESHOLD
8#define M_MMAP_THRESHOLD (-1)
9#endif // M_MMAP_THRESHOLD
10
11#ifndef M_TOP_PAD
12#define M_TOP_PAD (-2)
13#endif // M_TOP_PAD
14
15extern "C" {
16        void * malloc( size_t size );
17        void * aalloc( size_t dim, size_t elemSize );
18        void * calloc( size_t dim, size_t elemSize );
19        void * resize( void * oaddr, size_t size );
20        void * realloc( void * oaddr, size_t size );
21        void * memalign( size_t alignment, size_t size );
22        void * amemalign( size_t align, size_t dim, size_t elemSize );
23        void * cmemalign( size_t align, size_t dim, size_t elemSize );
24        void * valloc( size_t size );
25        void * pvalloc( size_t size );
26        void free( void * addr );
27        size_t malloc_alignment( void * addr );
28        bool malloc_zero_fill( void * addr );
29        size_t malloc_size( void * addr );
30        size_t malloc_usable_size( void * addr );
31        int malloc_stats_fd( int fd );
32        int malloc_info( int options, FILE * stream );
33        int mallopt( int param_number, int value );
34        size_t malloc_expansion() __attribute__((weak));        // heap expansion size (bytes)
35        size_t malloc_mmap_start() __attribute__((weak));       // crossover allocation size from sbrk to mmap
36        size_t malloc_unfreed() __attribute__((weak));          // heap unfreed size (bytes)
37} // extern "C"
38
39#ifdef __cforall
40void * resize( void * oaddr, size_t alignment, size_t size );
41void * realloc( void * oaddr, size_t alignment, size_t size );
42#else
43extern "C" {
44        void * _X6resizeFPv_Pvmm__1( void * oaddr, size_t alignment, size_t size );
45        void * _X7reallocFPv_Pvmm__1( void * oaddr, size_t alignment, size_t size );
46}
47#endif
48
49// Local Variables: //
50// tab-width: 4 //
51// End: //
Note: See TracBrowser for help on using the repository browser.