My Project
Data Structures | Macros | Typedefs | Enumerations | Functions | Variables
xalloc.h File Reference
#include <stdlib.h>
#include <string.h>
#include "omalloc/omConfig.h"

Go to the source code of this file.

Data Structures

struct  omInfo_t
 
struct  omOpts_t
 

Macros

#define OM_NDEBUG   1
 
#define REGISTER   register
 
#define omReallocAligned(A, B)   omRealloc(A,B)
 
#define omSizeWOfBin(bin_ptr)   (((bin_ptr)+sizeof(long)-1)/sizeof(long))
 
#define omSizeWOfAddr(P)   (omSizeOfAddr(P)/sizeof(long))
 
#define omTypeAllocBin(T, P, B)   P=(T)omAlloc(B)
 
#define omTypeAlloc(T, P, S)   P=(T)omAlloc(S)
 
#define omTypeAlloc0Bin(T, P, B)   P=(T)omAlloc0(B)
 
#define omAlloc0Aligned(S)   omAlloc0(S)
 
#define omAllocAligned(S)   omAlloc(S)
 
#define omAllocBin(B)   omAlloc(B)
 
#define omAllocBin0(B)   omAlloc0(B)
 
#define omAlloc0Bin(B)   omAlloc0(B)
 
#define omInitInfo()
 
#define omInitGetBackTrace()
 
#define omUpdateInfo()
 
#define omPrintStats(F)
 
#define omPrintInfo(F)
 
#define omPrintBinStats(F)
 
#define omMarkMemoryAsStatic()
 
#define omfree(P)   omFree(P)
 
#define omFreeBin(P, B)   omFree(P)
 
#define omfreeSize(P, S)   omFreeSize(P,S)
 
#define omFreeFunc   omFree
 
#define omFreeBinAddr(P)   omFree(P)
 
#define omrealloc(A, NS)   omRealloc(A,NS)
 
#define omreallocSize(A, OS, NS)   omRealloc(A,NS)
 
#define omRealloc0Size(A, OS, NS)   omRealloc0(A,NS)
 
#define omrealloc0Size(A, OS, NS)   omRealloc0(A,NS)
 
#define omMarkAsStaticAddr(A)
 
#define omMemCpyW(A, B, S)   memcpy(A,B,(S)<<2)
 
#define omMemcpyW(A, B, S)   memcpy(A,B,(S)<<2)
 
#define omGetSpecBin(A)   (A)
 
#define omUnGetSpecBin(A)   do {} while (0)
 
#define memcpyW(A, B, C)   memcpy(A,B,(C)*sizeof(long))
 
#define omGetStickyBinOfBin(B)   omGetSpecBin(B)
 
#define omTypeReallocAlignedSize   omTypeReallocSize
 
#define omTypeRealloc0AlignedSize   omTypeRealloc0Size
 
#define omReallocAlignedSize   omReallocSize
 
#define omRealloc0AlignedSize   omRealloc0Size
 
#define omMemDupAligned   omMemDup
 
#define omCheckIf(cond, test)   do {} while (0)
 
#define omCheckBinAddr(addr)   do {} while (0)
 
#define omCheckAddrBin(addr, bin)   do {} while (0)
 
#define omCheckBinAddrSize(addr, size)   do {} while (0)
 
#define omCheckAddrSize(addr, size)   do {} while (0)
 
#define omCheckAddr(addr)   do {} while (0)
 
#define omcheckAddrSize(addr, size)   do {} while (0)
 
#define omcheckAddr(addr)   do {} while (0)
 
#define omCheckBin(bin)   do {} while (0)
 
#define omCheckMemory()   do {} while (0)
 
#define omPrintCurrentBackTraceMax(A, B)   do {} while (0)
 
#define omPrintUsedTrackAddrs(F, max)   do {} while (0)
 
#define omPrintCurrentBackTrace(F)   do {} while (0)
 
#define omPrintUsedAddrs(F, max)   do {} while (0)
 
#define omdebugAddrSize(A, B)   do {} while (0)
 
#define omPrintAddrInfo(A, B, C)   do {} while (0)
 
#define omIsBinPageAddr(A)   (1)
 
#define omTestBinAddrSize(A, B, C)   (omError_NoError)
 
#define omTestList(ptr, level)   (omError_NoError)
 
#define omInitRet_2_Info(argv0)   do {} while (0)
 
#define omMergeStickyBinIntoBin(A, B)   do {} while (0)
 
#define X_OMALLOC
 
#define omMallocFunc   omAlloc
 
#define omReallocSizeFunc   omReallocSize
 
#define omFreeSizeFunc   omFreeSize
 

Typedefs

typedef size_t omBin
 

Enumerations

enum  omError_e {
  omError_NoError = 0 , omError_Unknown , omError_InternalBug , omError_MemoryCorrupted ,
  omError_NullAddr , omError_InvalidRangeAddr , omError_FalseAddr , omError_FalseAddrOrMemoryCorrupted ,
  omError_WrongSize , omError_FreedAddr , omError_FreedAddrOrMemoryCorrupted , omError_WrongBin ,
  omError_UnknownBin , omError_NotBinAddr , omError_UnalignedAddr , omError_NullSizeAlloc ,
  omError_ListCycleError , omError_SortedListError , omError_KeptAddrListCorrupted , omError_FreePattern ,
  omError_BackPattern , omError_FrontPattern , omError_NotString , omError_StickyBin ,
  omError_MaxError , omError_NoError = 0 , omError_Unknown , omError_InternalBug ,
  omError_MemoryCorrupted , omError_NullAddr , omError_InvalidRangeAddr , omError_FalseAddr ,
  omError_FalseAddrOrMemoryCorrupted , omError_WrongSize , omError_FreedAddr , omError_FreedAddrOrMemoryCorrupted ,
  omError_WrongBin , omError_UnknownBin , omError_NotBinAddr , omError_UnalignedAddr ,
  omError_NullSizeAlloc , omError_ListCycleError , omError_SortedListError , omError_KeptAddrListCorrupted ,
  omError_FreePattern , omError_BackPattern , omError_FrontPattern , omError_NotString ,
  omError_StickyBin , omError_MaxError
}
 

Functions

static void * omalloc (size_t s)
 
static void * omAlloc (size_t s)
 
static void * omAlloc0 (size_t s)
 
static void * omalloc0 (size_t s)
 
static void * omRealloc (void *d, size_t ns)
 
static void * omReallocSize (void *d, __attribute__((unused)) size_t os, size_t ns)
 
static long omSizeOfAddr (void *d)
 
static void omFree (void *d)
 
static void * omRealloc0 (void *d, size_t ns)
 
static void omFreeSize (void *d, __attribute__((unused)) size_t s)
 
static char * omStrDup (const char *s)
 
static void * omMemDup (void *s)
 

Variables

struct omInfo_s om_Info
 
struct omOpts_s om_Opts
 
int om_sing_opt_show_mem
 

Data Structure Documentation

◆ omInfo_s

struct omInfo_s

Definition at line 10 of file omStats.h.

Data Fields
long AvailBytes
long AvailBytesFromValloc
long AvailBytesMalloc
long AvailPages
long CurrentBytesFromMalloc
long CurrentBytesFromValloc
long CurrentBytesMmap
long CurrentBytesSbrk
long CurrentBytesSystem
long CurrentRegionsAlloc
long InternalUsedBytesMalloc
long MaxBytesFromMalloc
long MaxBytesFromValloc
long MaxBytesMmap
long MaxBytesSbrk
long MaxBytesSystem
long MaxPages
long MaxRegionsAlloc
long UsedBytes
long UsedBytesFromValloc
long UsedBytesMalloc
long UsedPages

Macro Definition Documentation

◆ memcpyW

#define memcpyW (   A,
  B,
 
)    memcpy(A,B,(C)*sizeof(long))

Definition at line 293 of file xalloc.h.

◆ OM_NDEBUG

#define OM_NDEBUG   1

Definition at line 10 of file xalloc.h.

◆ omAlloc0Aligned

#define omAlloc0Aligned (   S)    omAlloc0(S)

Definition at line 267 of file xalloc.h.

◆ omAlloc0Bin

#define omAlloc0Bin (   B)    omAlloc0(B)

Definition at line 271 of file xalloc.h.

◆ omAllocAligned

#define omAllocAligned (   S)    omAlloc(S)

Definition at line 268 of file xalloc.h.

◆ omAllocBin

#define omAllocBin (   B)    omAlloc(B)

Definition at line 269 of file xalloc.h.

◆ omAllocBin0

#define omAllocBin0 (   B)    omAlloc0(B)

Definition at line 270 of file xalloc.h.

◆ omCheckAddr

#define omCheckAddr (   addr)    do {} while (0)

Definition at line 308 of file xalloc.h.

◆ omcheckAddr

#define omcheckAddr (   addr)    do {} while (0)

Definition at line 310 of file xalloc.h.

◆ omCheckAddrBin

#define omCheckAddrBin (   addr,
  bin 
)    do {} while (0)

Definition at line 305 of file xalloc.h.

◆ omCheckAddrSize

#define omCheckAddrSize (   addr,
  size 
)    do {} while (0)

Definition at line 307 of file xalloc.h.

◆ omcheckAddrSize

#define omcheckAddrSize (   addr,
  size 
)    do {} while (0)

Definition at line 309 of file xalloc.h.

◆ omCheckBin

#define omCheckBin (   bin)    do {} while (0)

Definition at line 311 of file xalloc.h.

◆ omCheckBinAddr

#define omCheckBinAddr (   addr)    do {} while (0)

Definition at line 304 of file xalloc.h.

◆ omCheckBinAddrSize

#define omCheckBinAddrSize (   addr,
  size 
)    do {} while (0)

Definition at line 306 of file xalloc.h.

◆ omCheckIf

#define omCheckIf (   cond,
  test 
)    do {} while (0)

Definition at line 303 of file xalloc.h.

◆ omCheckMemory

#define omCheckMemory ( )    do {} while (0)

Definition at line 312 of file xalloc.h.

◆ omdebugAddrSize

#define omdebugAddrSize (   A,
  B 
)    do {} while (0)

Definition at line 317 of file xalloc.h.

◆ omfree

#define omfree (   P)    omFree(P)

Definition at line 279 of file xalloc.h.

◆ omFreeBin

#define omFreeBin (   P,
  B 
)    omFree(P)

Definition at line 280 of file xalloc.h.

◆ omFreeBinAddr

#define omFreeBinAddr (   P)    omFree(P)

Definition at line 283 of file xalloc.h.

◆ omFreeFunc

#define omFreeFunc   omFree

Definition at line 282 of file xalloc.h.

◆ omfreeSize

#define omfreeSize (   P,
 
)    omFreeSize(P,S)

Definition at line 281 of file xalloc.h.

◆ omFreeSizeFunc

#define omFreeSizeFunc   omFreeSize

Definition at line 334 of file xalloc.h.

◆ omGetSpecBin

#define omGetSpecBin (   A)    (A)

Definition at line 291 of file xalloc.h.

◆ omGetStickyBinOfBin

#define omGetStickyBinOfBin (   B)    omGetSpecBin(B)

Definition at line 294 of file xalloc.h.

◆ omInitGetBackTrace

#define omInitGetBackTrace ( )

Definition at line 273 of file xalloc.h.

◆ omInitInfo

#define omInitInfo ( )

Definition at line 272 of file xalloc.h.

◆ omInitRet_2_Info

#define omInitRet_2_Info (   argv0)    do {} while (0)

Definition at line 322 of file xalloc.h.

◆ omIsBinPageAddr

#define omIsBinPageAddr (   A)    (1)

Definition at line 319 of file xalloc.h.

◆ omMallocFunc

#define omMallocFunc   omAlloc

Definition at line 332 of file xalloc.h.

◆ omMarkAsStaticAddr

#define omMarkAsStaticAddr (   A)

Definition at line 288 of file xalloc.h.

◆ omMarkMemoryAsStatic

#define omMarkMemoryAsStatic ( )

Definition at line 278 of file xalloc.h.

◆ omMemCpyW

#define omMemCpyW (   A,
  B,
 
)    memcpy(A,B,(S)<<2)

Definition at line 289 of file xalloc.h.

◆ omMemcpyW

#define omMemcpyW (   A,
  B,
 
)    memcpy(A,B,(S)<<2)

Definition at line 290 of file xalloc.h.

◆ omMemDupAligned

#define omMemDupAligned   omMemDup

Definition at line 302 of file xalloc.h.

◆ omMergeStickyBinIntoBin

#define omMergeStickyBinIntoBin (   A,
  B 
)    do {} while (0)

Definition at line 323 of file xalloc.h.

◆ omPrintAddrInfo

#define omPrintAddrInfo (   A,
  B,
 
)    do {} while (0)

Definition at line 318 of file xalloc.h.

◆ omPrintBinStats

#define omPrintBinStats (   F)

Definition at line 277 of file xalloc.h.

◆ omPrintCurrentBackTrace

#define omPrintCurrentBackTrace (   F)    do {} while (0)

Definition at line 315 of file xalloc.h.

◆ omPrintCurrentBackTraceMax

#define omPrintCurrentBackTraceMax (   A,
  B 
)    do {} while (0)

Definition at line 313 of file xalloc.h.

◆ omPrintInfo

#define omPrintInfo (   F)

Definition at line 276 of file xalloc.h.

◆ omPrintStats

#define omPrintStats (   F)

Definition at line 275 of file xalloc.h.

◆ omPrintUsedAddrs

#define omPrintUsedAddrs (   F,
  max 
)    do {} while (0)

Definition at line 316 of file xalloc.h.

◆ omPrintUsedTrackAddrs

#define omPrintUsedTrackAddrs (   F,
  max 
)    do {} while (0)

Definition at line 314 of file xalloc.h.

◆ omrealloc

#define omrealloc (   A,
  NS 
)    omRealloc(A,NS)

Definition at line 284 of file xalloc.h.

◆ omRealloc0AlignedSize

#define omRealloc0AlignedSize   omRealloc0Size

Definition at line 301 of file xalloc.h.

◆ omRealloc0Size

#define omRealloc0Size (   A,
  OS,
  NS 
)    omRealloc0(A,NS)

Definition at line 286 of file xalloc.h.

◆ omrealloc0Size

#define omrealloc0Size (   A,
  OS,
  NS 
)    omRealloc0(A,NS)

Definition at line 287 of file xalloc.h.

◆ omReallocAligned

#define omReallocAligned (   A,
  B 
)    omRealloc(A,B)

Definition at line 119 of file xalloc.h.

◆ omReallocAlignedSize

#define omReallocAlignedSize   omReallocSize

Definition at line 300 of file xalloc.h.

◆ omreallocSize

#define omreallocSize (   A,
  OS,
  NS 
)    omRealloc(A,NS)

Definition at line 285 of file xalloc.h.

◆ omReallocSizeFunc

#define omReallocSizeFunc   omReallocSize

Definition at line 333 of file xalloc.h.

◆ omSizeWOfAddr

#define omSizeWOfAddr (   P)    (omSizeOfAddr(P)/sizeof(long))

Definition at line 262 of file xalloc.h.

◆ omSizeWOfBin

#define omSizeWOfBin (   bin_ptr)    (((bin_ptr)+sizeof(long)-1)/sizeof(long))

Definition at line 225 of file xalloc.h.

◆ omTestBinAddrSize

#define omTestBinAddrSize (   A,
  B,
 
)    (omError_NoError)

Definition at line 320 of file xalloc.h.

◆ omTestList

#define omTestList (   ptr,
  level 
)    (omError_NoError)

Definition at line 321 of file xalloc.h.

◆ omTypeAlloc

#define omTypeAlloc (   T,
  P,
 
)    P=(T)omAlloc(S)

Definition at line 265 of file xalloc.h.

◆ omTypeAlloc0Bin

#define omTypeAlloc0Bin (   T,
  P,
  B 
)    P=(T)omAlloc0(B)

Definition at line 266 of file xalloc.h.

◆ omTypeAllocBin

#define omTypeAllocBin (   T,
  P,
  B 
)    P=(T)omAlloc(B)

Definition at line 264 of file xalloc.h.

◆ omTypeRealloc0AlignedSize

#define omTypeRealloc0AlignedSize   omTypeRealloc0Size

Definition at line 299 of file xalloc.h.

◆ omTypeReallocAlignedSize

#define omTypeReallocAlignedSize   omTypeReallocSize

Definition at line 298 of file xalloc.h.

◆ omUnGetSpecBin

#define omUnGetSpecBin (   A)    do {} while (0)

Definition at line 292 of file xalloc.h.

◆ omUpdateInfo

#define omUpdateInfo ( )

Definition at line 274 of file xalloc.h.

◆ REGISTER

#define REGISTER   register

Definition at line 30 of file xalloc.h.

◆ X_OMALLOC

#define X_OMALLOC

Definition at line 331 of file xalloc.h.

Typedef Documentation

◆ omBin

typedef size_t omBin

Definition at line 36 of file xalloc.h.

Enumeration Type Documentation

◆ omError_e

enum omError_e
Enumerator
omError_NoError 
omError_Unknown 
omError_InternalBug 
omError_MemoryCorrupted 
omError_NullAddr 
omError_InvalidRangeAddr 
omError_FalseAddr 
omError_FalseAddrOrMemoryCorrupted 
omError_WrongSize 
omError_FreedAddr 
omError_FreedAddrOrMemoryCorrupted 
omError_WrongBin 
omError_UnknownBin 
omError_NotBinAddr 
omError_UnalignedAddr 
omError_NullSizeAlloc 
omError_ListCycleError 
omError_SortedListError 
omError_KeptAddrListCorrupted 
omError_FreePattern 
omError_BackPattern 
omError_FrontPattern 
omError_NotString 
omError_StickyBin 
omError_MaxError 
omError_NoError 
omError_Unknown 
omError_InternalBug 
omError_MemoryCorrupted 
omError_NullAddr 
omError_InvalidRangeAddr 
omError_FalseAddr 
omError_FalseAddrOrMemoryCorrupted 
omError_WrongSize 
omError_FreedAddr 
omError_FreedAddrOrMemoryCorrupted 
omError_WrongBin 
omError_UnknownBin 
omError_NotBinAddr 
omError_UnalignedAddr 
omError_NullSizeAlloc 
omError_ListCycleError 
omError_SortedListError 
omError_KeptAddrListCorrupted 
omError_FreePattern 
omError_BackPattern 
omError_FrontPattern 
omError_NotString 
omError_StickyBin 
omError_MaxError 

Definition at line 232 of file xalloc.h.

233 {
234  omError_NoError = 0,
259 };
@ omError_WrongSize
Definition: xalloc.h:242
@ omError_ListCycleError
Definition: xalloc.h:250
@ omError_BackPattern
Definition: xalloc.h:254
@ omError_NullAddr
Definition: xalloc.h:238
@ omError_NullSizeAlloc
Definition: xalloc.h:249
@ omError_MaxError
Definition: xalloc.h:258
@ omError_FrontPattern
Definition: xalloc.h:255
@ omError_UnalignedAddr
Definition: xalloc.h:248
@ omError_MemoryCorrupted
Definition: xalloc.h:237
@ omError_FreedAddr
Definition: xalloc.h:243
@ omError_UnknownBin
Definition: xalloc.h:246
@ omError_FreedAddrOrMemoryCorrupted
Definition: xalloc.h:244
@ omError_NotString
Definition: xalloc.h:256
@ omError_SortedListError
Definition: xalloc.h:251
@ omError_KeptAddrListCorrupted
Definition: xalloc.h:252
@ omError_InternalBug
Definition: xalloc.h:236
@ omError_NotBinAddr
Definition: xalloc.h:247
@ omError_InvalidRangeAddr
Definition: xalloc.h:239
@ omError_FalseAddr
Definition: xalloc.h:240
@ omError_WrongBin
Definition: xalloc.h:245
@ omError_NoError
Definition: xalloc.h:234
@ omError_Unknown
Definition: xalloc.h:235
@ omError_StickyBin
Definition: xalloc.h:257
@ omError_FreePattern
Definition: xalloc.h:253
@ omError_FalseAddrOrMemoryCorrupted
Definition: xalloc.h:241

Function Documentation

◆ omalloc()

static void* omalloc ( size_t  s)
inlinestatic

Definition at line 87 of file xalloc.h.

88 { if (s!=0)
89 #if defined(HAVE_MALLOC_USABLE_SIZE) || defined(HAVE_MALLOC_SIZE)
90  { return malloc(s); }
91 #else
92  {long *d=(long*)malloc(s+sizeof(long)); *d=s;d++;return d; }
93 #endif
94  else return NULL;
95 }
const CanonicalForm int s
Definition: facAbsFact.cc:51
#define NULL
Definition: omList.c:12
void * malloc(size_t size)
Definition: omalloc.c:92

◆ omAlloc()

static void* omAlloc ( size_t  s)
inlinestatic

Definition at line 96 of file xalloc.h.

98 { return malloc(s); }
99 #else
100 { long *d=(long*)malloc(s+sizeof(long)); *d=s;d++;return d; }

◆ omAlloc0()

static void* omAlloc0 ( size_t  s)
inlinestatic

Definition at line 102 of file xalloc.h.

103 { void *d=omAlloc(s);memset(d,0,s); return d; }
static void * omAlloc(size_t s)
Definition: xalloc.h:96

◆ omalloc0()

static void* omalloc0 ( size_t  s)
inlinestatic

Definition at line 104 of file xalloc.h.

105 { if (s!=0) { void *d=omAlloc(s);memset(d,0,s); return d;} else return NULL; }

◆ omFree()

static void omFree ( void *  d)
inlinestatic

Definition at line 141 of file xalloc.h.

143 { free(d); }
144 #else
145 { if (d!=NULL) { long *dd=(long*)d; dd--; free(dd);}}
#define free
Definition: omAllocFunc.c:14

◆ omFreeSize()

static void omFreeSize ( void *  d,
__attribute__((unused)) size_t  s 
)
inlinestatic

Definition at line 191 of file xalloc.h.

193 { free(d); }
194 #else
195 { if (d!=NULL) { long *dd=(long*)d; dd--; free(dd);}}

◆ omMemDup()

static void* omMemDup ( void *  s)
inlinestatic

Definition at line 202 of file xalloc.h.

204 { size_t l=malloc_usable_size(s);
205  void *n=malloc(l);
206  memcpy(n,s,l);
207  return n;
208 }
209 #elif defined(HAVE_MALLOC_SIZE)
210 { size_t l=malloc_size(s);
211  void *n=malloc(l);
212  memcpy(n,s,l);
213  return n;
214 }
215 #else
216 { long *n;long *d=(long*)s; d--;
217  n=(long*)malloc(*d+sizeof(long));
218  memcpy(n,d,(*d)+sizeof(long));
219  n++;
220  return n;
221 }
int l
Definition: cfEzgcd.cc:100

◆ omRealloc()

static void* omRealloc ( void *  d,
size_t  ns 
)
inlinestatic

Definition at line 107 of file xalloc.h.

108 { if (d==NULL) return omAlloc(ns);
109  else
110 #if defined(HAVE_MALLOC_USABLE_SIZE) || defined(HAVE_MALLOC_SIZE)
111  return realloc(d,ns);
112 #else
113  {
114  long *dd=(long*)d; dd--; dd=(long*)realloc(dd,ns+sizeof(long));
115  *dd=ns+sizeof(long);dd++; return dd;
116  }
117 #endif
118 }
#define realloc
Definition: omAllocFunc.c:16

◆ omRealloc0()

static void* omRealloc0 ( void *  d,
size_t  ns 
)
inlinestatic

Definition at line 148 of file xalloc.h.

149 {
150 #ifdef HAVE_MALLOC_USABLE_SIZE
151  size_t os=0;
152  if (d!=NULL) os=malloc_usable_size(d);
153  if (os>=ns)
154  {
155  void *n=realloc(d,ns);
156  return n;
157  }
158  else
159  {
160  char *n=(char*)realloc(d,ns);
161  memset(n+(ns-os),0,ns-os);
162  return (void*)n;
163  }
164 #elif defined(HAVE_MALLOC_SIZE)
165  size_t os=0;
166  if (d!=NULL) os=malloc_size(d);
167  if (os>=ns)
168  {
169  void *n=realloc(d,ns);
170  return n;
171  }
172  else
173  {
174  char *n=(char*)realloc(d,ns);
175  memset(n+(ns-os),0,ns-os);
176  return (void*)n;
177  }
178 #else
179  void *n=omAlloc0(ns);
180  if (d!=NULL)
181  {
182  size_t c;
183  size_t os=omSizeOfAddr(d);
184  if (ns>os) c=os; else c=ns;
185  memcpy(n,d,c);
186  omFree(d);
187  }
188  return n;
189 #endif
190 }
static void omFree(void *d)
Definition: xalloc.h:141
static void * omAlloc0(size_t s)
Definition: xalloc.h:102
static long omSizeOfAddr(void *d)
Definition: xalloc.h:132

◆ omReallocSize()

static void* omReallocSize ( void *  d,
__attribute__((unused)) size_t  os,
size_t  ns 
)
inlinestatic

Definition at line 120 of file xalloc.h.

121 { if (d==NULL) return omAlloc(ns);
122  else
123 #if defined(HAVE_MALLOC_USABLE_SIZE) || defined(HAVE_MALLOC_SIZE)
124  return realloc(d,ns);
125 #else
126  {
127  long *dd=(long*)d; dd--; dd=(long*)realloc(dd,ns+sizeof(long));
128  *dd=ns+sizeof(long);dd++; return dd;
129  }
130 #endif
131 }

◆ omSizeOfAddr()

static long omSizeOfAddr ( void *  d)
inlinestatic

Definition at line 132 of file xalloc.h.

134 { return malloc_usable_size(d); }
135 #elif defined(HAVE_AMLLOC_SIZE)
136 { return malloc_size(d); }
137 #else
138 { long *dd=(long*)d; dd--; return *dd;}

◆ omStrDup()

static char* omStrDup ( const char *  s)
inlinestatic

Definition at line 198 of file xalloc.h.

199 { size_t l=strlen(s);char *ns=(char *)omAlloc(l+1);
200  return strcpy(ns,s);
201 }

Variable Documentation

◆ om_Info

struct omInfo_s om_Info
extern

Definition at line 16 of file omStats.c.

◆ om_Opts

struct omOpts_s om_Opts

Definition at line 25 of file omOpts.c.

◆ om_sing_opt_show_mem

int om_sing_opt_show_mem
extern