malloch.inc 2.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. var
  2. __malloc_initialized : longint;cvar;external;
  3. function malloc(__size:size_t):pointer;cdecl;external clib name 'malloc';
  4. function calloc(__nmemb:size_t; __size:size_t):pointer;cdecl;external clib name 'calloc';
  5. function realloc(__ptr:pointer; __size:size_t):pointer;cdecl;external clib name 'realloc';
  6. procedure free(__ptr:pointer);cdecl;external clib name 'free';
  7. procedure cfree(__ptr:pointer);cdecl;external clib name 'cfree';
  8. function memalign(__alignment:size_t; __size:size_t):pointer;cdecl;external clib name 'memalign';
  9. function valloc(__size:size_t):pointer;cdecl;external clib name 'valloc';
  10. function pvalloc(__size:size_t):pointer;cdecl;external clib name 'pvalloc';
  11. var
  12. __morecore : function (__size:ptrdiff_t):pointer;cvar;external;
  13. function __default_morecore(__size:ptrdiff_t):pointer;cdecl;external clib name '__default_morecore';
  14. type
  15. Pmallinfo = ^_mallinfo;
  16. _mallinfo = record
  17. arena : longint;
  18. ordblks : longint;
  19. smblks : longint;
  20. hblks : longint;
  21. hblkhd : longint;
  22. usmblks : longint;
  23. fsmblks : longint;
  24. uordblks : longint;
  25. fordblks : longint;
  26. keepcost : longint;
  27. end;
  28. // not sure about this one ? Returns struct value??
  29. function mallinfo:_mallinfo;cdecl;external clib name 'mallinfo';
  30. const
  31. M_MXFAST = 1;
  32. M_NLBLKS = 2;
  33. M_GRAIN = 3;
  34. M_KEEP = 4;
  35. M_TRIM_THRESHOLD = -1;
  36. M_TOP_PAD = -2;
  37. M_MMAP_THRESHOLD = -3;
  38. M_MMAP_MAX = -4;
  39. M_CHECK_ACTION = -5;
  40. function mallopt(__param:longint; __val:longint):longint;cdecl;external clib name 'mallopt';
  41. function malloc_trim(__pad:size_t):longint;cdecl;external clib name 'malloc_trim';
  42. function malloc_usable_size(__ptr:pointer):size_t;cdecl;external clib name 'malloc_usable_size';
  43. procedure malloc_stats;cdecl;external clib name 'malloc_stats';
  44. function malloc_get_state:pointer;cdecl;external clib name 'malloc_get_state';
  45. function malloc_set_state(__ptr:pointer):longint;cdecl;external clib name 'malloc_set_state';
  46. var
  47. __malloc_initialize_hook : procedure ;cvar;external;
  48. __free_hook : procedure (__ptr:pointer; _para2:pointer);cvar;external;
  49. __malloc_hook : function (__size:size_t; _para2:pointer):pointer;cvar;external;
  50. __realloc_hook : function (__ptr:pointer; __size:size_t; _para3:pointer):pointer;cvar;external;
  51. __memalign_hook : function (__alignment:size_t; __size:size_t; _para3:pointer):pointer;cvar;external;
  52. __after_morecore_hook : procedure ;cvar;external;
  53. procedure __malloc_check_init;cdecl;external clib name '__malloc_check_init';
  54. { ---------------------------------------------------------------------
  55. Borland compatibility types
  56. ---------------------------------------------------------------------}
  57. Type
  58. TMallocInfo = _mallinfo;
  59. PMallocInfo = ^TMallocInfo;