Add memalloc_alloc_aligned
This commit is contained in:
parent
8c640a28c6
commit
8b915bbc22
|
@ -31,6 +31,8 @@ RETRO_BEGIN_DECLS
|
|||
|
||||
void *memalign_alloc(size_t boundary, size_t size);
|
||||
|
||||
void *memalign_alloc_aligned(size_t size);
|
||||
|
||||
void memalign_free(void *ptr);
|
||||
|
||||
RETRO_END_DECLS
|
||||
|
|
|
@ -25,6 +25,7 @@
|
|||
|
||||
#include <memalign.h>
|
||||
|
||||
|
||||
void *memalign_alloc(size_t boundary, size_t size)
|
||||
{
|
||||
void **place = NULL;
|
||||
|
@ -50,3 +51,14 @@ void memalign_free(void *ptr)
|
|||
p = (void**)ptr;
|
||||
free(p[-1]);
|
||||
}
|
||||
|
||||
void *memalign_alloc_aligned(size_t size)
|
||||
{
|
||||
#if defined(__x86_64__) || defined(__LP64) || defined(__IA64__) || defined(_M_X64) || defined(_WIN64)
|
||||
return memalign_alloc(64, size);
|
||||
#elif defined(__i386__) || defined(__i486__) || defined(__i686__) || defined(GEKKO)
|
||||
return memalign_alloc(32, size);
|
||||
#else
|
||||
return memalign_alloc(32, size);
|
||||
#endif
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue