IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Ignore:
Timestamp:
May 31, 2011, 8:02:50 AM (15 years ago)
Author:
eugene
Message:

updates for ohana malloc

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/eam_branches/ipp-20110505/Ohana/src/libohana/include/ohana_allocate.h

    r30726 r31589  
    55# ifdef OHANA_MEMORY
    66
    7 void *ohana_malloc (char *file, int line, int Nelem, size_t esize);
    8 void *ohana_realloc (char *file, int line, void *in, int Nelem, size_t esize);
    9 void  ohana_free (char *file, int line, void *in);
    10 void  ohana_memregister_func (char *file, int line, void *ptr);
     7void *ohana_malloc (char *file, int line, char *func, int Nelem, size_t esize);
     8void *ohana_realloc (char *file, int line, char *func, void *in, int Nelem, size_t esize);
     9void  ohana_free (char *file, int line, char *func, void *in);
    1110void  ohana_memdump_func (int mode);
    1211void  ohana_memcheck_func (int mode);
    1312
    14 # define ohana_memregister(X) ohana_memregister_func (__FILE__, __LINE__, (X));
    1513# define ohana_memcheck(X) ohana_memcheck_func (X);
    1614# define ohana_memdump(X) ohana_memdump_func (X);
    1715
    1816# define ALLOCATE(PTR,TYPE,SIZE) \
    19   { PTR = (TYPE *) ohana_malloc (__FILE__, __LINE__, (SIZE), sizeof(TYPE)) }
     17  { PTR = (TYPE *) ohana_malloc (__FILE__, __LINE__, __func__, (SIZE), sizeof(TYPE)) }
    2018# define ALLOCATE_ZERO(PTR,TYPE,SIZE)                                   \
    21   { PTR = (TYPE *) ohana_malloc (__FILE__, __LINE__, (SIZE), sizeof(TYPE)); memset (PTR, 0, (SIZE)*sizeof(TYPE)); }
     19  { PTR = (TYPE *) ohana_malloc (__FILE__, __LINE__, __func__, (SIZE), sizeof(TYPE)); memset (PTR, 0, (SIZE)*sizeof(TYPE)); }
    2220# define REALLOCATE(PTR,TYPE,SIZE) \
    23   { PTR = (TYPE *) ohana_realloc(__FILE__, __LINE__, PTR, (SIZE), sizeof(TYPE)); }
     21  { PTR = (TYPE *) ohana_realloc(__FILE__, __LINE__, __func__, PTR, (SIZE), sizeof(TYPE)); }
    2422# define CHECK_REALLOCATE(PTR,TYPE,SIZE,NCURR,DELTA) {                  \
    2523  if ((NCURR) >= (SIZE)) { SIZE += DELTA;                               \
    26     PTR = (TYPE *) ohana_realloc(__FILE__, __LINE__, PTR, (SIZE), sizeof(TYPE)); } }
    27 # define FREE(PTR) { if (PTR != NULL) { ohana_free (__FILE__, __LINE__, PTR); } }
     24    PTR = (TYPE *) ohana_realloc(__FILE__, __LINE__, __func__, PTR, (SIZE), sizeof(TYPE)); } }
     25# define FREE(PTR) { if (PTR != NULL) { ohana_free (__FILE__, __LINE__, __func__, PTR); } }
    2826# define free(PTR) { ohana_free(__FILE__, __LINE__, PTR); }
     27# define real_free(PTR) { if (PTR) { free(PTR); }}
    2928
    30 # else
    31 # define ohana_memregister(X) /* NOP */
     29# else  /* OHANA_MEMORY */
     30
    3231# define ohana_memcheck(X) /* NOP */
    3332# define ohana_memdump(X) /* NOP */
    34 # endif /* OHANA_MEMORY */
     33# define real_free(PTR) { if (PTR) { free(PTR); }}
    3534
    3635# ifndef ALLOCATE
     
    6463# define FREE(PTR) { if (PTR != NULL) { free (PTR); } }
    6564# endif /* ALLOCATE */
     65# endif /* OHANA_MEMORY */
    6666
    6767# endif /* OHANA_ALLOCATE */
Note: See TracChangeset for help on using the changeset viewer.