[PATCH 5/5] malloc: Extend malloc function hiding to tst-reallocarray (BZ #32366)

Sam James sam@gentoo.org
Sat Dec 6 13:31:51 GMT 2025


Adhemerval Zanella <adhemerval.zanella@linaro.org> writes:

> clang 20 optimize out reallocarray.

Wonder why we don't in GCC. Anyway,

Reviewed-by: Sam James <sam@gentoo.org>

> ---
>  malloc/tst-malloc-aux.h   | 3 +++
>  malloc/tst-reallocarray.c | 1 +
>  2 files changed, 4 insertions(+)
>
> diff --git a/malloc/tst-malloc-aux.h b/malloc/tst-malloc-aux.h
> index cd752afa8b..8bed28583a 100644
> --- a/malloc/tst-malloc-aux.h
> +++ b/malloc/tst-malloc-aux.h
> @@ -34,6 +34,7 @@ static __typeof (posix_memalign) * volatile posix_memalign_indirect
>  static __typeof (pvalloc) * volatile pvalloc_indirect = pvalloc;
>  static __typeof (realloc) * volatile realloc_indirect = realloc;
>  static __typeof (valloc) * volatile valloc_indirect = valloc;
> +static __typeof (reallocarray) * volatile reallocarray_indirect = reallocarray;
>  
>  #undef aligned_alloc
>  #undef calloc
> @@ -43,6 +44,7 @@ static __typeof (valloc) * volatile valloc_indirect = valloc;
>  #undef pvalloc
>  #undef realloc
>  #undef valloc
> +#undef reallocarray
>  
>  #define aligned_alloc aligned_alloc_indirect
>  #define calloc calloc_indirect
> @@ -52,5 +54,6 @@ static __typeof (valloc) * volatile valloc_indirect = valloc;
>  #define pvalloc pvalloc_indirect
>  #define realloc realloc_indirect
>  #define valloc valloc_indirect
> +#define reallocarray reallocarray_indirect
>  
>  #endif /* TST_MALLOC_AUX_H */
> diff --git a/malloc/tst-reallocarray.c b/malloc/tst-reallocarray.c
> index b4df4aa4e6..b00a508f50 100644
> --- a/malloc/tst-reallocarray.c
> +++ b/malloc/tst-reallocarray.c
> @@ -21,6 +21,7 @@
>  #include <string.h>
>  #include <support/check.h>
>  #include <libc-diag.h>
> +#include "tst-malloc-aux.h"
>  
>  static void *
>  reallocarray_nowarn (void *ptr, size_t nmemb, size_t size)


More information about the Libc-alpha mailing list