|
Packit Service |
a1973e |
#ifndef _PAPI_MALLOC
|
|
Packit Service |
a1973e |
#define _PAPI_MALLOC
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
#include <stdlib.h>
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
#define DEBUG_FILE_LEN 20
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
typedef struct pmem
|
|
Packit Service |
a1973e |
{
|
|
Packit Service |
a1973e |
void *ptr;
|
|
Packit Service |
a1973e |
int size;
|
|
Packit Service |
a1973e |
#ifdef DEBUG
|
|
Packit Service |
a1973e |
char file[DEBUG_FILE_LEN];
|
|
Packit Service |
a1973e |
int line;
|
|
Packit Service |
a1973e |
#endif
|
|
Packit Service |
a1973e |
struct pmem *next;
|
|
Packit Service |
a1973e |
struct pmem *prev;
|
|
Packit Service |
a1973e |
} pmem_t;
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
#ifndef IN_MEM_FILE
|
|
Packit Service |
a1973e |
#ifdef PAPI_NO_MEMORY_MANAGEMENT
|
|
Packit Service |
a1973e |
#define papi_malloc(a) malloc(a)
|
|
Packit Service |
a1973e |
#define papi_free(a) free(a)
|
|
Packit Service |
a1973e |
#define papi_realloc(a,b) realloc(a,b)
|
|
Packit Service |
a1973e |
#define papi_calloc(a,b) calloc(a,b)
|
|
Packit Service |
a1973e |
#define papi_valid_free(a) 1
|
|
Packit Service |
a1973e |
#define papi_strdup(a) strdup(a)
|
|
Packit Service |
a1973e |
#define papi_mem_cleanup_all() ;
|
|
Packit Service |
a1973e |
#define papi_mem_print_info(a) ;
|
|
Packit Service |
a1973e |
#define papi_mem_print_stats() ;
|
|
Packit Service |
a1973e |
#define papi_mem_overhead(a) ;
|
|
Packit Service |
a1973e |
#define papi_mem_check_all_overflow() ;
|
|
Packit Service |
a1973e |
#else
|
|
Packit Service |
a1973e |
#define papi_malloc(a) _papi_malloc(__FILE__,__LINE__, a)
|
|
Packit Service |
a1973e |
#define papi_free(a) _papi_free(__FILE__,__LINE__, a)
|
|
Packit Service |
a1973e |
#define papi_realloc(a,b) _papi_realloc(__FILE__,__LINE__,a,b)
|
|
Packit Service |
a1973e |
#define papi_calloc(a,b) _papi_calloc(__FILE__,__LINE__,a,b)
|
|
Packit Service |
a1973e |
#define papi_valid_free(a) _papi_valid_free(__FILE__,__LINE__,a)
|
|
Packit Service |
a1973e |
#define papi_strdup(a) _papi_strdup(__FILE__,__LINE__,a)
|
|
Packit Service |
a1973e |
#define papi_mem_cleanup_all _papi_mem_cleanup_all
|
|
Packit Service |
a1973e |
#define papi_mem_print_info(a) _papi_mem_print_info(a)
|
|
Packit Service |
a1973e |
#define papi_mem_print_stats _papi_mem_print_stats
|
|
Packit Service |
a1973e |
#define papi_mem_overhead(a) _papi_mem_overhead(a)
|
|
Packit Service |
a1973e |
#define papi_mem_check_all_overflow _papi_mem_check_all_overflow
|
|
Packit Service |
a1973e |
#endif
|
|
Packit Service |
a1973e |
#endif
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
void *_papi_malloc( char *, int, size_t );
|
|
Packit Service |
a1973e |
void _papi_free( char *, int, void * );
|
|
Packit Service |
a1973e |
void *_papi_realloc( char *, int, void *, size_t );
|
|
Packit Service |
a1973e |
void *_papi_calloc( char *, int, size_t, size_t );
|
|
Packit Service |
a1973e |
int _papi_valid_free( char *, int, void * );
|
|
Packit Service |
a1973e |
char *_papi_strdup( char *, int, const char *s );
|
|
Packit Service |
a1973e |
void _papi_mem_cleanup_all( );
|
|
Packit Service |
a1973e |
void _papi_mem_print_info( void *ptr );
|
|
Packit Service |
a1973e |
void _papi_mem_print_stats( );
|
|
Packit Service |
a1973e |
int _papi_mem_overhead( int );
|
|
Packit Service |
a1973e |
int _papi_mem_check_all_overflow( );
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
#define PAPI_MEM_LIB_OVERHEAD 1 /* PAPI Library Overhead */
|
|
Packit Service |
a1973e |
#define PAPI_MEM_OVERHEAD 2 /* Memory Overhead */
|
|
Packit Service |
a1973e |
#endif
|