30
30
activated by defining the MBED_HEAP_STATS_ENABLED macro.
31
31
- the second can be used to trace each memory call by automatically invoking
32
32
a callback on each memory operation (see hal/api/mbed_mem_trace.h). It is
33
- activated by defining the MBED_MEM_TRACING_ENABLED macro .
33
+ activated by setting the configuration option MBED_MEM_TRACING_ENABLED to true .
34
34
35
35
Both tracers can be activated and deactivated in any combination. If both tracers
36
36
are active, the second one (MBED_MEM_TRACING_ENABLED) will trace the first one's
@@ -96,7 +96,7 @@ extern "C" void *__wrap__malloc_r(struct _reent *r, size_t size)
96
96
extern " C" void *malloc_wrapper (struct _reent *r, size_t size, void *caller)
97
97
{
98
98
void *ptr = NULL ;
99
- #ifdef MBED_MEM_TRACING_ENABLED
99
+ #if MBED_MEM_TRACING_ENABLED
100
100
mbed_mem_trace_lock ();
101
101
#endif
102
102
#ifdef MBED_HEAP_STATS_ENABLED
@@ -118,17 +118,17 @@ extern "C" void *malloc_wrapper(struct _reent *r, size_t size, void *caller)
118
118
#else // #ifdef MBED_HEAP_STATS_ENABLED
119
119
ptr = __real__malloc_r (r, size);
120
120
#endif // #ifdef MBED_HEAP_STATS_ENABLED
121
- #ifdef MBED_MEM_TRACING_ENABLED
121
+ #if MBED_MEM_TRACING_ENABLED
122
122
mbed_mem_trace_malloc (ptr, size, caller);
123
123
mbed_mem_trace_unlock ();
124
- #endif // #ifdef MBED_MEM_TRACING_ENABLED
124
+ #endif // #if MBED_MEM_TRACING_ENABLED
125
125
return ptr;
126
126
}
127
127
128
128
extern " C" void *__wrap__realloc_r (struct _reent *r, void *ptr, size_t size)
129
129
{
130
130
void *new_ptr = NULL ;
131
- #ifdef MBED_MEM_TRACING_ENABLED
131
+ #if MBED_MEM_TRACING_ENABLED
132
132
mbed_mem_trace_lock ();
133
133
#endif
134
134
#ifdef MBED_HEAP_STATS_ENABLED
@@ -161,10 +161,10 @@ extern "C" void *__wrap__realloc_r(struct _reent *r, void *ptr, size_t size)
161
161
#else // #ifdef MBED_HEAP_STATS_ENABLED
162
162
new_ptr = __real__realloc_r (r, ptr, size);
163
163
#endif // #ifdef MBED_HEAP_STATS_ENABLED
164
- #ifdef MBED_MEM_TRACING_ENABLED
164
+ #if MBED_MEM_TRACING_ENABLED
165
165
mbed_mem_trace_realloc (new_ptr, ptr, size, MBED_CALLER_ADDR ());
166
166
mbed_mem_trace_unlock ();
167
- #endif // #ifdef MBED_MEM_TRACING_ENABLED
167
+ #endif // #if MBED_MEM_TRACING_ENABLED
168
168
return new_ptr;
169
169
}
170
170
@@ -175,7 +175,7 @@ extern "C" void __wrap__free_r(struct _reent *r, void *ptr)
175
175
176
176
extern " C" void free_wrapper (struct _reent *r, void *ptr, void *caller)
177
177
{
178
- #ifdef MBED_MEM_TRACING_ENABLED
178
+ #if MBED_MEM_TRACING_ENABLED
179
179
mbed_mem_trace_lock ();
180
180
#endif
181
181
#ifdef MBED_HEAP_STATS_ENABLED
@@ -191,16 +191,16 @@ extern "C" void free_wrapper(struct _reent *r, void *ptr, void *caller)
191
191
#else // #ifdef MBED_HEAP_STATS_ENABLED
192
192
__real__free_r (r, ptr);
193
193
#endif // #ifdef MBED_HEAP_STATS_ENABLED
194
- #ifdef MBED_MEM_TRACING_ENABLED
194
+ #if MBED_MEM_TRACING_ENABLED
195
195
mbed_mem_trace_free (ptr, caller);
196
196
mbed_mem_trace_unlock ();
197
- #endif // #ifdef MBED_MEM_TRACING_ENABLED
197
+ #endif // #if MBED_MEM_TRACING_ENABLED
198
198
}
199
199
200
200
extern " C" void *__wrap__calloc_r (struct _reent *r, size_t nmemb, size_t size)
201
201
{
202
202
void *ptr = NULL ;
203
- #ifdef MBED_MEM_TRACING_ENABLED
203
+ #if MBED_MEM_TRACING_ENABLED
204
204
mbed_mem_trace_lock ();
205
205
#endif
206
206
#ifdef MBED_HEAP_STATS_ENABLED
@@ -213,10 +213,10 @@ extern "C" void *__wrap__calloc_r(struct _reent *r, size_t nmemb, size_t size)
213
213
#else // #ifdef MBED_HEAP_STATS_ENABLED
214
214
ptr = __real__calloc_r (r, nmemb, size);
215
215
#endif // #ifdef MBED_HEAP_STATS_ENABLED
216
- #ifdef MBED_MEM_TRACING_ENABLED
216
+ #if MBED_MEM_TRACING_ENABLED
217
217
mbed_mem_trace_calloc (ptr, nmemb, size, MBED_CALLER_ADDR ());
218
218
mbed_mem_trace_unlock ();
219
- #endif // #ifdef MBED_MEM_TRACING_ENABLED
219
+ #endif // #if MBED_MEM_TRACING_ENABLED
220
220
return ptr;
221
221
}
222
222
@@ -275,7 +275,7 @@ extern "C" void *SUB_MALLOC(size_t size)
275
275
extern " C" void *malloc_wrapper (size_t size, void *caller)
276
276
{
277
277
void *ptr = NULL ;
278
- #ifdef MBED_MEM_TRACING_ENABLED
278
+ #if MBED_MEM_TRACING_ENABLED
279
279
mbed_mem_trace_lock ();
280
280
#endif
281
281
#ifdef MBED_HEAP_STATS_ENABLED
@@ -297,18 +297,18 @@ extern "C" void *malloc_wrapper(size_t size, void *caller)
297
297
#else // #ifdef MBED_HEAP_STATS_ENABLED
298
298
ptr = SUPER_MALLOC (size);
299
299
#endif // #ifdef MBED_HEAP_STATS_ENABLED
300
- #ifdef MBED_MEM_TRACING_ENABLED
300
+ #if MBED_MEM_TRACING_ENABLED
301
301
mbed_mem_trace_malloc (ptr, size, caller);
302
302
mbed_mem_trace_unlock ();
303
- #endif // #ifdef MBED_MEM_TRACING_ENABLED
303
+ #endif // #if MBED_MEM_TRACING_ENABLED
304
304
return ptr;
305
305
}
306
306
307
307
308
308
extern " C" void *SUB_REALLOC (void *ptr, size_t size)
309
309
{
310
310
void *new_ptr = NULL ;
311
- #ifdef MBED_MEM_TRACING_ENABLED
311
+ #if MBED_MEM_TRACING_ENABLED
312
312
mbed_mem_trace_lock ();
313
313
#endif
314
314
#ifdef MBED_HEAP_STATS_ENABLED
@@ -336,17 +336,17 @@ extern "C" void *SUB_REALLOC(void *ptr, size_t size)
336
336
#else // #ifdef MBED_HEAP_STATS_ENABLED
337
337
new_ptr = SUPER_REALLOC (ptr, size);
338
338
#endif // #ifdef MBED_HEAP_STATS_ENABLED
339
- #ifdef MBED_MEM_TRACING_ENABLED
339
+ #if MBED_MEM_TRACING_ENABLED
340
340
mbed_mem_trace_realloc (new_ptr, ptr, size, MBED_CALLER_ADDR ());
341
341
mbed_mem_trace_unlock ();
342
- #endif // #ifdef MBED_MEM_TRACING_ENABLED
342
+ #endif // #if MBED_MEM_TRACING_ENABLED
343
343
return new_ptr;
344
344
}
345
345
346
346
extern " C" void *SUB_CALLOC (size_t nmemb, size_t size)
347
347
{
348
348
void *ptr = NULL ;
349
- #ifdef MBED_MEM_TRACING_ENABLED
349
+ #if MBED_MEM_TRACING_ENABLED
350
350
mbed_mem_trace_lock ();
351
351
#endif
352
352
#ifdef MBED_HEAP_STATS_ENABLED
@@ -358,10 +358,10 @@ extern "C" void *SUB_CALLOC(size_t nmemb, size_t size)
358
358
#else // #ifdef MBED_HEAP_STATS_ENABLED
359
359
ptr = SUPER_CALLOC (nmemb, size);
360
360
#endif // #ifdef MBED_HEAP_STATS_ENABLED
361
- #ifdef MBED_MEM_TRACING_ENABLED
361
+ #if MBED_MEM_TRACING_ENABLED
362
362
mbed_mem_trace_calloc (ptr, nmemb, size, MBED_CALLER_ADDR ());
363
363
mbed_mem_trace_unlock ();
364
- #endif // #ifdef MBED_MEM_TRACING_ENABLED
364
+ #endif // #if MBED_MEM_TRACING_ENABLED
365
365
return ptr;
366
366
}
367
367
@@ -372,7 +372,7 @@ extern "C" void SUB_FREE(void *ptr)
372
372
373
373
extern " C" void free_wrapper (void *ptr, void *caller)
374
374
{
375
- #ifdef MBED_MEM_TRACING_ENABLED
375
+ #if MBED_MEM_TRACING_ENABLED
376
376
mbed_mem_trace_lock ();
377
377
#endif
378
378
#ifdef MBED_HEAP_STATS_ENABLED
@@ -388,10 +388,10 @@ extern "C" void free_wrapper(void *ptr, void *caller)
388
388
#else // #ifdef MBED_HEAP_STATS_ENABLED
389
389
SUPER_FREE (ptr);
390
390
#endif // #ifdef MBED_HEAP_STATS_ENABLED
391
- #ifdef MBED_MEM_TRACING_ENABLED
391
+ #if MBED_MEM_TRACING_ENABLED
392
392
mbed_mem_trace_free (ptr, caller);
393
393
mbed_mem_trace_unlock ();
394
- #endif // #ifdef MBED_MEM_TRACING_ENABLED
394
+ #endif // #if MBED_MEM_TRACING_ENABLED
395
395
}
396
396
397
397
#endif // #if defined(MBED_MEM_TRACING_ENABLED) || defined(MBED_HEAP_STATS_ENABLED)
@@ -402,7 +402,7 @@ extern "C" void free_wrapper(void *ptr, void *caller)
402
402
403
403
#else
404
404
405
- #ifdef MBED_MEM_TRACING_ENABLED
405
+ #if MBED_MEM_TRACING_ENABLED
406
406
#error Memory tracing is not supported with the current toolchain.
407
407
#endif
408
408
0 commit comments