#include <stdio.h>
#include <stdbool.h>
#include <stdarg.h>
#include <cmr/env.h>
Go to the source code of this file.
|
| #define | CMRallocStack(cmr, ptr) _CMRallocStack(cmr, (void**) ptr, sizeof(**ptr)) |
| | Allocates statck memory for *ptr.
|
| |
| #define | CMRfreeStack(cmr, ptr) _CMRfreeStack(cmr, (void**) ptr, sizeof(**ptr)) |
| | Frees a stack memory chunk allocated with CMRallocStack.
|
| |
| #define | CMRallocStackArray(cmr, ptr, length) _CMRallocStack(cmr, (void**) ptr, sizeof(**ptr) * (length)) |
| | Allocates memory for an array of blocks on the stack.
|
| |
| #define | CMRfreeStackArray(cmr, ptr) _CMRfreeStack(cmr, (void**) ptr) |
| | Frees memory of an array of blocks on the stack.
|
| |
| #define | CMRdbgConsistencyAssert(call) |
| |
◆ CMRallocStack
| #define CMRallocStack |
( |
|
cmr, |
|
|
|
ptr |
|
) |
| _CMRallocStack(cmr, (void**) ptr, sizeof(**ptr)) |
Allocates statck memory for *ptr.
Stack memory shall be freed with CMRfreeStack in the reverse order of allocation. The size is determined automatically.
◆ CMRallocStackArray
| #define CMRallocStackArray |
( |
|
cmr, |
|
|
|
ptr, |
|
|
|
length |
|
) |
| _CMRallocStack(cmr, (void**) ptr, sizeof(**ptr) * (length)) |
Allocates memory for an array of blocks on the stack.
◆ CMRdbgConsistencyAssert
| #define CMRdbgConsistencyAssert |
( |
|
call | ) |
|
◆ CMRfreeStack
| #define CMRfreeStack |
( |
|
cmr, |
|
|
|
ptr |
|
) |
| _CMRfreeStack(cmr, (void**) ptr, sizeof(**ptr)) |
◆ CMRfreeStackArray
| #define CMRfreeStackArray |
( |
|
cmr, |
|
|
|
ptr |
|
) |
| _CMRfreeStack(cmr, (void**) ptr) |
Frees memory of an array of blocks on the stack.
◆ _CMRallocStack()
| CMR_EXPORT CMR_ERROR _CMRallocStack |
( |
CMR * |
cmr, |
|
|
void ** |
ptr, |
|
|
size_t |
size |
|
) |
| |
Carries out the allocation for CMRallocStack.
- Note
- Use CMRallocStack to allocate stack memory.
- Parameters
-
| cmr | CMR environment. |
| ptr | Pointer where the space shall be allocated. |
| size | Space to allocate. |
◆ _CMRfreeStack()
| CMR_EXPORT CMR_ERROR _CMRfreeStack |
( |
CMR * |
cmr, |
|
|
void ** |
ptr |
|
) |
| |
Carries out the deallocation for CMRfreeStack.
- Note
- Use CMRfreeStack to free stack memory.
- Parameters
-
| cmr | CMR environment. |
| ptr | Pointer of space to be freed. |
◆ CMRassertStackConsistency()
| void CMRassertStackConsistency |
( |
CMR * |
cmr | ) |
|
Checks stack protection fields for corruption.
Useful for debugging memory errors.
- Parameters
-
◆ CMRconsistencyMessage()
| char * CMRconsistencyMessage |
( |
const char * |
format, |
|
|
|
... |
|
) |
| |
◆ CMRdbgMsg()
| static void CMRdbgMsg |
( |
int |
indent, |
|
|
const char * |
format, |
|
|
|
... |
|
) |
| |
|
inlinestatic |
◆ CMRgetStackUsage()
| size_t CMRgetStackUsage |
( |
CMR * |
cmr | ) |
|
◆ CMRraiseErrorMessage()
| void CMRraiseErrorMessage |
( |
CMR * |
cmr, |
|
|
const char * |
format, |
|
|
|
... |
|
) |
| |
- Parameters
-
| cmr | CMR environment. |
| format | Format string in printf-style. |
| ... | Variadic arguments. |