source: git/factory/memman.h @ 9d7aaa

spielwiese
Last change on this file since 9d7aaa was 9d7aaa, checked in by Jens Schmidt <schmidt@…>, 27 years ago
#include <config.h> added git-svn-id: file:///usr/local/Singular/svn/trunk@155 2c84dea3-7e68-4137-9b89-c4e89433aadc
  • Property mode set to 100644
File size: 3.1 KB
Line 
1/* emacs edit mode for this file is -*- C -*- */
2/* $Id: memman.h,v 1.1 1997-04-15 09:21:20 schmidt Exp $ */
3
4#ifndef MMEMORY_H
5#define MMEMORY_H
6
7/*
8$Log: not supported by cvs2svn $
9Revision 1.0  1996/05/17 10:59:41  stobbe
10Initial revision
11
12*/
13
14#include <config.h>
15
16#include <stdlib.h>
17
18#ifdef __cplusplus
19extern "C" {
20#endif
21
22int  mmInit( void );
23
24void mmSpecializeBlock( size_t );
25
26void mmMark( void );
27
28void mmSweep( void );
29
30void mmSwitch( void );
31
32int mmMemReal( void );
33
34int mmMemUsed( void );
35
36#define mstrdup mmStrdup
37/* char * mstrdup(char *s); */
38
39size_t mmSizeL( void* );
40
41#ifndef MDEBUG
42
43void * mmAllocBlock( size_t );
44void * mmAllocBlock0( size_t );
45
46void mmFreeBlock( void*, size_t );
47
48void * mmReallocBlock( void*, size_t, size_t );
49
50void * mmAllocSpecialized( void );
51
52void mmFreeSpecialized( void* );
53
54void * mmAlloc( size_t );
55
56void * mmRealloc( void*, size_t );
57
58void mmFree( void* );
59
60char * mmStrdup( char* );
61
62#define mmTest(A,B) TRUE
63#define mmTestL(A) TRUE
64#define mmTestP(A,B)
65#define mmTestLP(A)
66#define Free mmFreeBlock
67#define Alloc mmAllocBlock
68#define Alloc0 mmAllocBlock0
69#define ReAlloc mmReallocBlock
70#define FreeL mmFree
71#define AllocL mmAlloc
72
73#else /* MDEBUG */
74
75void * mmDBAllocBlock( size_t, char*, int );
76void * mmDBAllocBlock0( size_t, char*, int );
77
78void mmDBFreeBlock( void*, size_t, char*, int );
79
80void * mmDBReallocBlock( void*, size_t, size_t, char*, int );
81
82void * mmDBAllocSpecialized( char*, int );
83
84void mmDBFreeSpecialized( void*, char*, int );
85
86void * mmDBAlloc( size_t, char*, int );
87
88void * mmDBRealloc( void*, size_t, char*, int );
89
90void mmDBFree( void*, char*, int );
91
92char * mmDBStrdup( char * s, char *fname, int lineno);
93
94int mmDBTestBlock( const void* adr, const size_t size, const char * fname, const int lineno );
95
96int mmDBTest( const void* adr, const char * fname, const int lineno );
97
98#define mmAllocBlock(size) mmDBAllocBlock(size,__FILE__,__LINE__)
99
100#define mmFreeBlock(adr,size) mmDBFreeBlock(adr,size,__FILE__,__LINE__)
101
102#define mmAllocSpecialized() mmDBAllocSpecialized(__FILE__,__LINE__)
103
104#define mmFreeSpecialized(adr) mmDBFreeSpecialized(adr,__FILE__,__LINE__)
105
106#define mmAlloc(size) mmDBAlloc(size,__FILE__,__LINE__)
107
108#define mmFree(adr) mmDBFree(adr,__FILE__,__LINE__)
109
110#define mmReallocBlock(adr,oldsize,newsize) mmDBReallocBlock(adr,oldsize,newsize,__FILE__,__LINE__)
111
112#define mmStrdup(A) mmDBStrdup(A,__FILE__,__LINE__)
113
114#define mmTest(A,B) mmDBTestBlock(A,B,__FILE__,__LINE__)
115#define mmTestL(A) mmDBTest(A,__FILE__,__LINE__)
116#define mmTestP(A,B) mmDBTestBlock(A,B,__FILE__,__LINE__)
117#define mmTestLP(A) mmDBTest(A,__FILE__,__LINE__)
118#define Alloc(size) mmDBAllocBlock(size,__FILE__,__LINE__)
119#define Alloc0(size) mmDBAllocBlock0(size,__FILE__,__LINE__)
120#define Free(adr,size) mmDBFreeBlock(adr,size,__FILE__,__LINE__)
121#define mmAllocSpecialized() mmDBAllocSpecialized(__FILE__,__LINE__)
122#define mmFreeSpecialized(adr) mmDBFreeSpecialized(adr,__FILE__,__LINE__)
123#define AllocL(size) mmDBAlloc(size,__FILE__,__LINE__)
124#define FreeL(adr) mmDBFree(adr,__FILE__,__LINE__)
125#define ReAlloc(adr,oldsize,newsize) mmDBReallocBlock(adr,oldsize,newsize,__FILE__,__LINE__)
126
127void mmTestList();
128
129#endif /* MDEBUG */
130
131#ifdef __cplusplus
132}
133#endif
134
135#endif
Note: See TracBrowser for help on using the repository browser.