MCPcopy Create free account
hub / github.com/defold/defold / AlignedMalloc

Function AlignedMalloc

engine/dlib/src/dlib/memory.cpp:26–57  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

24{
25
26 Result AlignedMalloc(void **memptr, unsigned alignment, unsigned size)
27 {
28 int error = 0;
29
30 if (alignment == 0 || alignment % 2 != 0) {
31 return RESULT_INVAL;
32 }
33
34#if defined(__ANDROID__)
35 *(memptr) = memalign(alignment, size);
36 if (*(memptr) == 0) {
37 error = errno;
38 }
39#elif defined(__GNUC__)
40 error = posix_memalign(memptr, alignment, size);
41#elif defined(_MSC_VER)
42 *(memptr) = _aligned_malloc(size, alignment);
43 if (*(memptr) == 0) {
44 error = errno;
45 }
46#else
47 #error "dmMemory::AlignedMalloc not implemented for this platform."
48#endif
49
50 if (error == EINVAL) {
51 return RESULT_INVAL;
52 } else if (error == ENOMEM) {
53 return RESULT_NOMEM;
54 }
55
56 return RESULT_OK;
57 }
58
59 void AlignedFree(void* memptr)
60 {

Callers 15

PropertyContainerCopyFunction · 0.85
TEST_FFunction · 0.85
LoadMessageFunction · 0.85
LoadMessageFromFileFunction · 0.85
TESTFunction · 0.85
ReadFileFunction · 0.85
CreateFunction · 0.85
TESTFunction · 0.85
ReadFileFunction · 0.85

Calls 2

memalignFunction · 0.85
posix_memalignFunction · 0.85

Tested by 5

TEST_FFunction · 0.68
TESTFunction · 0.68
ReadFileFunction · 0.68
TESTFunction · 0.68
ReadFileFunction · 0.68