MCPcopy Create free account
hub / github.com/clMathLibraries/clBLAS / debugRealloc

Function debugRealloc

src/library/common/trace_malloc.c:187–217  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

185}
186
187void
188*debugRealloc(void *ptr, size_t size, const char *file, int line)
189{
190 void *ret;
191
192 if (ptr == NULL) {
193 ret = debugMalloc(size, file, line);
194 }
195 else {
196 MtraceNode *mtnode;
197
198 mtnode = searchMtraceNode(ptr);
199 assert((mtnode != NULL) && (mtnode->magic == MTRACE_NODE_MAGIC));
200 ret = realloc(ptr, size);
201 if (ret != NULL) {
202 ssize_t delta = (ssize_t)size - (ssize_t)mtnode->size;
203
204 mtnode->ptr = ret;
205 mtnode->size = size;
206 MTRACE_LOCK();
207 tracedSize += delta;
208 rawSize += delta;
209 MTRACE_UNLOCK();
210 }
211 else {
212 debugFree(ptr);
213 }
214 }
215
216 return ret;
217}
218
219void
220debugFree(void *ptr)

Callers

nothing calls this directly

Calls 3

debugMallocFunction · 0.85
searchMtraceNodeFunction · 0.85
debugFreeFunction · 0.85

Tested by

no test coverage detected