[PATCH] Reimplement aligned_alloc
Corinna Vinschen
vinschen@redhat.com
Tue May 19 13:24:53 GMT 2020
On May 19 10:52, Szabolcs Nagy wrote:
> The original implementation had multiple issues:
>
> - Only worked when posix_memalign was available (Linux, RTEMS).
> - Violated C11 link namespace rules by calling posix_memalign.
> - Failed to set errno on error.
>
> These can be fixed by essentially using the same implementation
> for aligned_alloc as for memalign, i.e. simply calling _memalign_r
> (which is always available and a "more reserved name" although
> technically still not in the reserved link namespace, at least
> code written in c cannot define a colliding symbol, newlib has
> plenty such namespace issues so this is fine).
>
> It is not clear what the right policy is when MALLOC_PROVIDED is set,
> currently that does not cover aligned_alloc so it is kept that way.
>
> Tested on aarch64-none-elf
> ---
> newlib/libc/stdlib/aligned_alloc.c | 62 +++++++++++++++---------------
> 1 file changed, 30 insertions(+), 32 deletions(-)
Pushed.
Thanks,
Corinna
--
Corinna Vinschen
Cygwin Maintainer
Red Hat
More information about the Newlib
mailing list