* include/sys/cygwin.h (struct per_process): Add posix_memalign. Reduce
size of unused2 accordingly. * include/cygwin/version.h (CYGWIN_VERSION_API_MINOR): Bump. * lib/_cygwin_crt0_common.cc (_cygwin_crt0_common): Initialize u->posix_memalign with address of posix_memalign. * malloc_wrapper.cc (posix_memalign): Call user-provided posix_memalign rather than just returning ENOSYS. * globals.cc (__cygwin_user_data): Initialize posix_memalign member.
This commit is contained in:
parent
111ced6d60
commit
ef23b0a6a4
@ -1,3 +1,14 @@
|
||||
2013-08-14 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* include/sys/cygwin.h (struct per_process): Add posix_memalign. Reduce
|
||||
size of unused2 accordingly.
|
||||
* include/cygwin/version.h (CYGWIN_VERSION_API_MINOR): Bump.
|
||||
* lib/_cygwin_crt0_common.cc (_cygwin_crt0_common): Initialize
|
||||
u->posix_memalign with address of posix_memalign.
|
||||
* malloc_wrapper.cc (posix_memalign): Call user-provided posix_memalign
|
||||
rather than just returning ENOSYS.
|
||||
* globals.cc (__cygwin_user_data): Initialize posix_memalign member.
|
||||
|
||||
2013-08-09 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* include/cygwin/version.h (CYGWIN_VERSION_DLL_MINOR): Bump to 24.
|
||||
|
@ -194,6 +194,7 @@ extern "C" {
|
||||
/* api_major */ 0,
|
||||
/* api_minor */ 0,
|
||||
/* unused2 */ {},
|
||||
/* posix_memalign */ posix_memalign,
|
||||
/* pseudo_reloc_start */ NULL,
|
||||
/* pseudo_reloc_end */ NULL,
|
||||
/* image_base */ NULL,
|
||||
|
@ -438,12 +438,13 @@ details. */
|
||||
arc4random_stir, arc4random_uniform.
|
||||
267: Export rawmemchr.
|
||||
268: Export GetCommandLineA, GetCommandLineW
|
||||
269: Allow application override of posix_memalign.
|
||||
*/
|
||||
|
||||
/* Note that we forgot to bump the api for ualarm, strtoll, strtoull */
|
||||
|
||||
#define CYGWIN_VERSION_API_MAJOR 0
|
||||
#define CYGWIN_VERSION_API_MINOR 268
|
||||
#define CYGWIN_VERSION_API_MINOR 269
|
||||
|
||||
/* There is also a compatibity version number associated with the
|
||||
shared memory regions. It is incremented when incompatible
|
||||
|
@ -304,10 +304,13 @@ struct per_process
|
||||
/* For future expansion, so apps won't have to be relinked if we
|
||||
add an item. */
|
||||
#ifdef __x86_64__
|
||||
DWORD_PTR unused2[5];
|
||||
DWORD_PTR unused2[4];
|
||||
#else
|
||||
DWORD_PTR unused2[3];
|
||||
DWORD_PTR unused2[2];
|
||||
#endif
|
||||
|
||||
int (*posix_memalign)(void **, size_t, size_t);
|
||||
|
||||
void *pseudo_reloc_start;
|
||||
void *pseudo_reloc_end;
|
||||
void *image_base;
|
||||
|
@ -145,6 +145,7 @@ _cygwin_crt0_common (MainFunc f, per_process *u)
|
||||
u->free = &free;
|
||||
u->realloc = &realloc;
|
||||
u->calloc = &calloc;
|
||||
u->posix_memalign = &posix_memalign;
|
||||
|
||||
/* Likewise for the C++ memory operators, if any, but not if we
|
||||
were dlopen()'d, as we might get dlclose()'d and that would
|
||||
|
@ -115,7 +115,7 @@ posix_memalign (void **memptr, size_t alignment, size_t bytes)
|
||||
|
||||
void *res;
|
||||
if (!use_internal)
|
||||
return ENOSYS;
|
||||
return user_data->posix_memalign (memptr, alignment, bytes);
|
||||
if ((alignment & (alignment - 1)) != 0)
|
||||
return EINVAL;
|
||||
__malloc_lock ();
|
||||
|
13
winsup/cygwin/release/1.7.24
Normal file
13
winsup/cygwin/release/1.7.24
Normal file
@ -0,0 +1,13 @@
|
||||
What's new:
|
||||
-----------
|
||||
|
||||
- Allow application override of posix_memalign.
|
||||
|
||||
|
||||
What changed:
|
||||
-------------
|
||||
|
||||
|
||||
Bug fixes:
|
||||
----------
|
||||
|
Loading…
Reference in New Issue
Block a user