[PATCH] malloc: add free_sized and free_aligned_sized from C23
Justin King
jcking@google.com
Wed Jun 18 15:25:27 GMT 2025
Signed-off-by: Justin King <jcking@google.com>
---
conform/data/stdlib.h-data | 4 +++
malloc/Versions | 3 ++
malloc/malloc.c | 29 +++++++++++++++++++
manual/memory.texi | 19 ++++++++++++
stdlib/stdlib.h | 11 +++++++
sysdeps/unix/sysv/linux/aarch64/libc.abilist | 2 ++
.../linux/aarch64/libc_malloc_debug.abilist | 2 ++
sysdeps/unix/sysv/linux/alpha/libc.abilist | 2 ++
.../linux/alpha/libc_malloc_debug.abilist | 2 ++
sysdeps/unix/sysv/linux/arc/libc.abilist | 2 ++
.../sysv/linux/arc/libc_malloc_debug.abilist | 2 ++
sysdeps/unix/sysv/linux/arm/be/libc.abilist | 2 ++
.../linux/arm/be/libc_malloc_debug.abilist | 2 ++
sysdeps/unix/sysv/linux/arm/le/libc.abilist | 2 ++
.../linux/arm/le/libc_malloc_debug.abilist | 2 ++
sysdeps/unix/sysv/linux/csky/libc.abilist | 2 ++
.../sysv/linux/csky/libc_malloc_debug.abilist | 2 ++
sysdeps/unix/sysv/linux/hppa/libc.abilist | 2 ++
.../sysv/linux/hppa/libc_malloc_debug.abilist | 2 ++
sysdeps/unix/sysv/linux/i386/libc.abilist | 2 ++
.../sysv/linux/i386/libc_malloc_debug.abilist | 2 ++
.../sysv/linux/loongarch/lp64/libc.abilist | 2 ++
.../loongarch/lp64/libc_malloc_debug.abilist | 2 ++
.../sysv/linux/m68k/coldfire/libc.abilist | 2 ++
.../m68k/coldfire/libc_malloc_debug.abilist | 2 ++
.../unix/sysv/linux/m68k/m680x0/libc.abilist | 2 ++
.../m68k/m680x0/libc_malloc_debug.abilist | 2 ++
.../sysv/linux/microblaze/be/libc.abilist | 2 ++
.../sysv/linux/microblaze/le/libc.abilist | 2 ++
.../sysv/linux/mips/mips32/fpu/libc.abilist | 2 ++
.../mips/mips32/fpu/libc_malloc_debug.abilist | 2 ++
.../sysv/linux/mips/mips32/nofpu/libc.abilist | 2 ++
.../mips32/nofpu/libc_malloc_debug.abilist | 2 ++
.../sysv/linux/mips/mips64/n32/libc.abilist | 2 ++
.../mips/mips64/n32/libc_malloc_debug.abilist | 2 ++
.../sysv/linux/mips/mips64/n64/libc.abilist | 2 ++
.../mips/mips64/n64/libc_malloc_debug.abilist | 2 ++
sysdeps/unix/sysv/linux/or1k/libc.abilist | 2 ++
.../linux/powerpc/powerpc32/fpu/libc.abilist | 2 ++
.../powerpc32/fpu/libc_malloc_debug.abilist | 2 ++
.../powerpc/powerpc32/nofpu/libc.abilist | 2 ++
.../powerpc32/nofpu/libc_malloc_debug.abilist | 2 ++
.../linux/powerpc/powerpc64/be/libc.abilist | 2 ++
.../linux/powerpc/powerpc64/le/libc.abilist | 2 ++
.../unix/sysv/linux/riscv/rv32/libc.abilist | 2 ++
.../riscv/rv32/libc_malloc_debug.abilist | 2 ++
.../unix/sysv/linux/riscv/rv64/libc.abilist | 2 ++
.../riscv/rv64/libc_malloc_debug.abilist | 2 ++
.../unix/sysv/linux/s390/s390-32/libc.abilist | 2 ++
.../s390/s390-32/libc_malloc_debug.abilist | 2 ++
.../unix/sysv/linux/s390/s390-64/libc.abilist | 2 ++
.../s390/s390-64/libc_malloc_debug.abilist | 2 ++
sysdeps/unix/sysv/linux/sh/be/libc.abilist | 2 ++
sysdeps/unix/sysv/linux/sh/le/libc.abilist | 2 ++
.../linux/sh/le/libc_malloc_debug.abilist | 2 ++
.../sysv/linux/sparc/sparc32/libc.abilist | 2 ++
.../sysv/linux/sparc/sparc64/libc.abilist | 2 ++
.../unix/sysv/linux/x86_64/64/libc.abilist | 2 ++
.../linux/x86_64/64/libc_malloc_debug.abilist | 2 ++
.../unix/sysv/linux/x86_64/x32/libc.abilist | 2 ++
.../x86_64/x32/libc_malloc_debug.abilist | 2 ++
61 files changed, 178 insertions(+)
diff --git a/conform/data/stdlib.h-data b/conform/data/stdlib.h-data
index 0f6da09166..246a734ae1 100644
--- a/conform/data/stdlib.h-data
+++ b/conform/data/stdlib.h-data
@@ -185,6 +185,10 @@ function {void*} valloc (size_t)
#endif
function size_t wcstombs (char*, const wchar_t*, size_t)
function int wctomb (char*, wchar_t)
+#if defined ISO23
+function void free_sized (void*, size_t)
+function void free_aligned_sized (void*, size_t, size_t)
+#endif
#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX
allow-header stddef.h
diff --git a/malloc/Versions b/malloc/Versions
index c763395c6d..604cbc8fc6 100644
--- a/malloc/Versions
+++ b/malloc/Versions
@@ -67,6 +67,9 @@ libc {
GLIBC_2.33 {
mallinfo2;
}
+ GLIBC_2.42 {
+ free_sized; free_aligned_sized;
+ }
GLIBC_PRIVATE {
# Internal startup hook for libpthread.
__libc_malloc_pthread_startup;
diff --git a/malloc/malloc.c b/malloc/malloc.c
index d28cd66faa..cefef4221c 100644
--- a/malloc/malloc.c
+++ b/malloc/malloc.c
@@ -3732,6 +3732,35 @@ aligned_alloc (size_t alignment, size_t bytes)
return _mid_memalign (alignment, bytes);
}
+/* For ISO C23. */
+void
+weak_function
+free_sized(void *ptr, size_t size)
+{
+ /* We do not perform validation that size is the same as the original
+ requested size at this time. We leave that to the sanitizers. We
+ simply forward to `free`. This allows existing malloc replacements
+ to continue to work. */
+
+ ((void) size);
+ free(ptr);
+}
+
+/* For ISO C23. */
+void
+weak_function
+free_aligned_sized(void *ptr, size_t alignment, size_t size)
+{
+ /* We do not perform validation that size and alignment is the same as
+ the original requested size and alignment at this time. We leave that
+ to the sanitizers. We simply forward to `free`. This allows existing
+ malloc replacements to continue to work. */
+
+ ((void) alignment);
+ ((void) size);
+ free(ptr);
+}
+
static void *
_mid_memalign (size_t alignment, size_t bytes)
{
diff --git a/manual/memory.texi b/manual/memory.texi
index 46f76c17ca..8a2845654c 100644
--- a/manual/memory.texi
+++ b/manual/memory.texi
@@ -764,6 +764,25 @@ There is no point in freeing blocks at the end of a program, because all
of the program's space is given back to the system when the process
terminates.
+@deftypefun void free_sized (void *@var{ptr}, size_t @var{size})
+@standards{???, stdlib.h}
+@safety{@prelim{}@mtsafe{}@asunsafe{@asulock{}}@acunsafe{@aculock{} @acsfd{} @acsmem{}}}
+The @code{free_sized} function deallocates the block of memory pointed at
+by @var{ptr} that was previously allocated by @code{malloc}, @code{calloc} or @code{realloc}.
+The size @var{size} must match the previously requested total size provided to @code{malloc},
+@code{calloc} or @code{realloc}. Attempting to deallocated memory allocated by @code{aligned_alloc}
+is undefined behavior, use @code{free_aligned_sized} instead.
+@end deftypefun
+
+@deftypefun void free_aligned_sized (void *@var{ptr}, size_t @var{alignment}, size_t @var{size})
+@standards{???, stdlib.h}
+@safety{@prelim{}@mtsafe{}@asunsafe{@asulock{}}@acunsafe{@aculock{} @acsfd{} @acsmem{}}}
+The @code{free_aligned_sized} function deallocates the block of memory pointed at by @var{ptr} that
+was previously allocated by @code{aligned_alloc}. The size @var{size} and alignment @var{alignment}
+must match the previously requested total size and alignment provided to @code{aligned_alloc}. Attempting
+to deallocated memory allocated by @code{malloc}, @code{calloc} or @code{realloc} is undefined behavior.
+@end deftypefun
+
@node Changing Block Size
@subsubsection Changing the Size of a Block
@cindex changing the size of a block (@code{malloc})
diff --git a/stdlib/stdlib.h b/stdlib/stdlib.h
index cd4503c761..5009982561 100644
--- a/stdlib/stdlib.h
+++ b/stdlib/stdlib.h
@@ -686,6 +686,17 @@ extern void *realloc (void *__ptr, size_t __size)
/* Free a block allocated by `malloc', `realloc' or `calloc'. */
extern void free (void *__ptr) __THROW;
+#if __GLIBC_USE(ISOC23)
+/* Free a block allocated by `malloc`, `realloc` or `calloc` but not `aligned_alloc`.
+ SIZE must be equal to the original requested size provided to `malloc`, `realloc`
+ or `calloc`. For `calloc` SIZE is NMEMB elements * SIZE bytes. */
+extern void free_sized (void *__ptr, size_t __size) __THROW;
+
+/* Free a block allocated by `aligned_alloc`. ALIGNMENT and SIZE must be the same as
+ the values provided to `aligned_alloc`. */
+extern void free_aligned_sized (void *__ptr, size_t __alignment, size_t __size) __THROW;
+#endif
+
#ifdef __USE_MISC
/* Re-allocate the previously allocated block in PTR, making the new
block large enough for NMEMB elements of SIZE bytes each. */
diff --git a/sysdeps/unix/sysv/linux/aarch64/libc.abilist b/sysdeps/unix/sysv/linux/aarch64/libc.abilist
index a22e651432..4658f2a89d 100644
--- a/sysdeps/unix/sysv/linux/aarch64/libc.abilist
+++ b/sysdeps/unix/sysv/linux/aarch64/libc.abilist
@@ -2767,3 +2767,5 @@ GLIBC_2.42 uabs F
GLIBC_2.42 uimaxabs F
GLIBC_2.42 ulabs F
GLIBC_2.42 ullabs F
+GLIBC_2.42 free_sized F
+GLIBC_2.42 free_aligned_sized F
diff --git a/sysdeps/unix/sysv/linux/aarch64/libc_malloc_debug.abilist b/sysdeps/unix/sysv/linux/aarch64/libc_malloc_debug.abilist
index c82c88dcf7..6cae4b367f 100644
--- a/sysdeps/unix/sysv/linux/aarch64/libc_malloc_debug.abilist
+++ b/sysdeps/unix/sysv/linux/aarch64/libc_malloc_debug.abilist
@@ -26,3 +26,5 @@ GLIBC_2.17 pvalloc F
GLIBC_2.17 realloc F
GLIBC_2.17 valloc F
GLIBC_2.33 mallinfo2 F
+GLIBC_2.42 free_sized F
+GLIBC_2.42 free_aligned_sized F
diff --git a/sysdeps/unix/sysv/linux/alpha/libc.abilist b/sysdeps/unix/sysv/linux/alpha/libc.abilist
index 4b5736a3b6..0505dd4359 100644
--- a/sysdeps/unix/sysv/linux/alpha/libc.abilist
+++ b/sysdeps/unix/sysv/linux/alpha/libc.abilist
@@ -3204,3 +3204,5 @@ GLIBC_2.9 ns_name_skip F
GLIBC_2.9 ns_name_uncompress F
GLIBC_2.9 ns_name_unpack F
GLIBC_2.9 pipe2 F
+GLIBC_2.42 free_sized F
+GLIBC_2.42 free_aligned_sized F
diff --git a/sysdeps/unix/sysv/linux/alpha/libc_malloc_debug.abilist b/sysdeps/unix/sysv/linux/alpha/libc_malloc_debug.abilist
index 15b3293b03..bbc437ae6d 100644
--- a/sysdeps/unix/sysv/linux/alpha/libc_malloc_debug.abilist
+++ b/sysdeps/unix/sysv/linux/alpha/libc_malloc_debug.abilist
@@ -26,3 +26,5 @@ GLIBC_2.2 mcheck_check_all F
GLIBC_2.2 mcheck_pedantic F
GLIBC_2.2 posix_memalign F
GLIBC_2.33 mallinfo2 F
+GLIBC_2.42 free_sized F
+GLIBC_2.42 free_aligned_sized F
diff --git a/sysdeps/unix/sysv/linux/arc/libc.abilist b/sysdeps/unix/sysv/linux/arc/libc.abilist
index b8a44784bd..6217157c02 100644
--- a/sysdeps/unix/sysv/linux/arc/libc.abilist
+++ b/sysdeps/unix/sysv/linux/arc/libc.abilist
@@ -2528,3 +2528,5 @@ GLIBC_2.42 uabs F
GLIBC_2.42 uimaxabs F
GLIBC_2.42 ulabs F
GLIBC_2.42 ullabs F
+GLIBC_2.42 free_sized F
+GLIBC_2.42 free_aligned_sized F
diff --git a/sysdeps/unix/sysv/linux/arc/libc_malloc_debug.abilist b/sysdeps/unix/sysv/linux/arc/libc_malloc_debug.abilist
index cf9f611403..7a0103f80b 100644
--- a/sysdeps/unix/sysv/linux/arc/libc_malloc_debug.abilist
+++ b/sysdeps/unix/sysv/linux/arc/libc_malloc_debug.abilist
@@ -24,3 +24,5 @@ GLIBC_2.32 pvalloc F
GLIBC_2.32 realloc F
GLIBC_2.32 valloc F
GLIBC_2.33 mallinfo2 F
+GLIBC_2.42 free_sized F
+GLIBC_2.42 free_aligned_sized F
diff --git a/sysdeps/unix/sysv/linux/arm/be/libc.abilist b/sysdeps/unix/sysv/linux/arm/be/libc.abilist
index 959e44672f..19c8146a1b 100644
--- a/sysdeps/unix/sysv/linux/arm/be/libc.abilist
+++ b/sysdeps/unix/sysv/linux/arm/be/libc.abilist
@@ -2893,3 +2893,5 @@ GLIBC_2.9 ns_name_skip F
GLIBC_2.9 ns_name_uncompress F
GLIBC_2.9 ns_name_unpack F
GLIBC_2.9 pipe2 F
+GLIBC_2.42 free_sized F
+GLIBC_2.42 free_aligned_sized F
diff --git a/sysdeps/unix/sysv/linux/arm/be/libc_malloc_debug.abilist b/sysdeps/unix/sysv/linux/arm/be/libc_malloc_debug.abilist
index e505469154..180b9c1b19 100644
--- a/sysdeps/unix/sysv/linux/arm/be/libc_malloc_debug.abilist
+++ b/sysdeps/unix/sysv/linux/arm/be/libc_malloc_debug.abilist
@@ -26,3 +26,5 @@ GLIBC_2.4 posix_memalign F
GLIBC_2.4 pvalloc F
GLIBC_2.4 realloc F
GLIBC_2.4 valloc F
+GLIBC_2.42 free_sized F
+GLIBC_2.42 free_aligned_sized F
diff --git a/sysdeps/unix/sysv/linux/arm/le/libc.abilist b/sysdeps/unix/sysv/linux/arm/le/libc.abilist
index a930d1a52b..8079aa4139 100644
--- a/sysdeps/unix/sysv/linux/arm/le/libc.abilist
+++ b/sysdeps/unix/sysv/linux/arm/le/libc.abilist
@@ -2890,3 +2890,5 @@ GLIBC_2.9 ns_name_skip F
GLIBC_2.9 ns_name_uncompress F
GLIBC_2.9 ns_name_unpack F
GLIBC_2.9 pipe2 F
+GLIBC_2.42 free_sized F
+GLIBC_2.42 free_aligned_sized F
diff --git a/sysdeps/unix/sysv/linux/arm/le/libc_malloc_debug.abilist b/sysdeps/unix/sysv/linux/arm/le/libc_malloc_debug.abilist
index e505469154..180b9c1b19 100644
--- a/sysdeps/unix/sysv/linux/arm/le/libc_malloc_debug.abilist
+++ b/sysdeps/unix/sysv/linux/arm/le/libc_malloc_debug.abilist
@@ -26,3 +26,5 @@ GLIBC_2.4 posix_memalign F
GLIBC_2.4 pvalloc F
GLIBC_2.4 realloc F
GLIBC_2.4 valloc F
+GLIBC_2.42 free_sized F
+GLIBC_2.42 free_aligned_sized F
diff --git a/sysdeps/unix/sysv/linux/csky/libc.abilist b/sysdeps/unix/sysv/linux/csky/libc.abilist
index 6325fc12c4..59a0fb71c5 100644
--- a/sysdeps/unix/sysv/linux/csky/libc.abilist
+++ b/sysdeps/unix/sysv/linux/csky/libc.abilist
@@ -2804,3 +2804,5 @@ GLIBC_2.42 uabs F
GLIBC_2.42 uimaxabs F
GLIBC_2.42 ulabs F
GLIBC_2.42 ullabs F
+GLIBC_2.42 free_sized F
+GLIBC_2.42 free_aligned_sized F
diff --git a/sysdeps/unix/sysv/linux/csky/libc_malloc_debug.abilist b/sysdeps/unix/sysv/linux/csky/libc_malloc_debug.abilist
index 4cd866430b..2685348236 100644
--- a/sysdeps/unix/sysv/linux/csky/libc_malloc_debug.abilist
+++ b/sysdeps/unix/sysv/linux/csky/libc_malloc_debug.abilist
@@ -24,3 +24,5 @@ GLIBC_2.29 pvalloc F
GLIBC_2.29 realloc F
GLIBC_2.29 valloc F
GLIBC_2.33 mallinfo2 F
+GLIBC_2.42 free_sized F
+GLIBC_2.42 free_aligned_sized F
diff --git a/sysdeps/unix/sysv/linux/hppa/libc.abilist b/sysdeps/unix/sysv/linux/hppa/libc.abilist
index 86b3fbdeec..4428a9c6c5 100644
--- a/sysdeps/unix/sysv/linux/hppa/libc.abilist
+++ b/sysdeps/unix/sysv/linux/hppa/libc.abilist
@@ -2913,3 +2913,5 @@ GLIBC_2.9 ns_name_skip F
GLIBC_2.9 ns_name_uncompress F
GLIBC_2.9 ns_name_unpack F
GLIBC_2.9 pipe2 F
+GLIBC_2.42 free_sized F
+GLIBC_2.42 free_aligned_sized F
diff --git a/sysdeps/unix/sysv/linux/hppa/libc_malloc_debug.abilist b/sysdeps/unix/sysv/linux/hppa/libc_malloc_debug.abilist
index 8798ca8653..670127ccf3 100644
--- a/sysdeps/unix/sysv/linux/hppa/libc_malloc_debug.abilist
+++ b/sysdeps/unix/sysv/linux/hppa/libc_malloc_debug.abilist
@@ -26,3 +26,5 @@ GLIBC_2.2 pvalloc F
GLIBC_2.2 realloc F
GLIBC_2.2 valloc F
GLIBC_2.33 mallinfo2 F
+GLIBC_2.42 free_sized F
+GLIBC_2.42 free_aligned_sized F
diff --git a/sysdeps/unix/sysv/linux/i386/libc.abilist b/sysdeps/unix/sysv/linux/i386/libc.abilist
index 6555592d86..f3bb1ee551 100644
--- a/sysdeps/unix/sysv/linux/i386/libc.abilist
+++ b/sysdeps/unix/sysv/linux/i386/libc.abilist
@@ -3096,3 +3096,5 @@ GLIBC_2.9 ns_name_skip F
GLIBC_2.9 ns_name_uncompress F
GLIBC_2.9 ns_name_unpack F
GLIBC_2.9 pipe2 F
+GLIBC_2.42 free_sized F
+GLIBC_2.42 free_aligned_sized F
diff --git a/sysdeps/unix/sysv/linux/i386/libc_malloc_debug.abilist b/sysdeps/unix/sysv/linux/i386/libc_malloc_debug.abilist
index 55ef952885..65e2d49cee 100644
--- a/sysdeps/unix/sysv/linux/i386/libc_malloc_debug.abilist
+++ b/sysdeps/unix/sysv/linux/i386/libc_malloc_debug.abilist
@@ -26,3 +26,5 @@ GLIBC_2.2 mcheck_check_all F
GLIBC_2.2 mcheck_pedantic F
GLIBC_2.2 posix_memalign F
GLIBC_2.33 mallinfo2 F
+GLIBC_2.42 free_sized F
+GLIBC_2.42 free_aligned_sized F
diff --git a/sysdeps/unix/sysv/linux/loongarch/lp64/libc.abilist b/sysdeps/unix/sysv/linux/loongarch/lp64/libc.abilist
index a6cab9612a..f2a164e6f6 100644
--- a/sysdeps/unix/sysv/linux/loongarch/lp64/libc.abilist
+++ b/sysdeps/unix/sysv/linux/loongarch/lp64/libc.abilist
@@ -2288,3 +2288,5 @@ GLIBC_2.42 uabs F
GLIBC_2.42 uimaxabs F
GLIBC_2.42 ulabs F
GLIBC_2.42 ullabs F
+GLIBC_2.42 free_sized F
+GLIBC_2.42 free_aligned_sized F
diff --git a/sysdeps/unix/sysv/linux/loongarch/lp64/libc_malloc_debug.abilist b/sysdeps/unix/sysv/linux/loongarch/lp64/libc_malloc_debug.abilist
index 6ddfd162b3..160158c88e 100644
--- a/sysdeps/unix/sysv/linux/loongarch/lp64/libc_malloc_debug.abilist
+++ b/sysdeps/unix/sysv/linux/loongarch/lp64/libc_malloc_debug.abilist
@@ -24,3 +24,5 @@ GLIBC_2.36 posix_memalign F
GLIBC_2.36 pvalloc F
GLIBC_2.36 realloc F
GLIBC_2.36 valloc F
+GLIBC_2.42 free_sized F
+GLIBC_2.42 free_aligned_sized F
diff --git a/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist b/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist
index 7b7b72aa50..3a57e44436 100644
--- a/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist
+++ b/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist
@@ -2872,3 +2872,5 @@ GLIBC_2.9 ns_name_skip F
GLIBC_2.9 ns_name_uncompress F
GLIBC_2.9 ns_name_unpack F
GLIBC_2.9 pipe2 F
+GLIBC_2.42 free_sized F
+GLIBC_2.42 free_aligned_sized F
diff --git a/sysdeps/unix/sysv/linux/m68k/coldfire/libc_malloc_debug.abilist b/sysdeps/unix/sysv/linux/m68k/coldfire/libc_malloc_debug.abilist
index e505469154..180b9c1b19 100644
--- a/sysdeps/unix/sysv/linux/m68k/coldfire/libc_malloc_debug.abilist
+++ b/sysdeps/unix/sysv/linux/m68k/coldfire/libc_malloc_debug.abilist
@@ -26,3 +26,5 @@ GLIBC_2.4 posix_memalign F
GLIBC_2.4 pvalloc F
GLIBC_2.4 realloc F
GLIBC_2.4 valloc F
+GLIBC_2.42 free_sized F
+GLIBC_2.42 free_aligned_sized F
diff --git a/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist b/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist
index df398e43c6..0291a5c1ac 100644
--- a/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist
+++ b/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist
@@ -3039,3 +3039,5 @@ GLIBC_2.9 ns_name_skip F
GLIBC_2.9 ns_name_uncompress F
GLIBC_2.9 ns_name_unpack F
GLIBC_2.9 pipe2 F
+GLIBC_2.42 free_sized F
+GLIBC_2.42 free_aligned_sized F
diff --git a/sysdeps/unix/sysv/linux/m68k/m680x0/libc_malloc_debug.abilist b/sysdeps/unix/sysv/linux/m68k/m680x0/libc_malloc_debug.abilist
index 55ef952885..65e2d49cee 100644
--- a/sysdeps/unix/sysv/linux/m68k/m680x0/libc_malloc_debug.abilist
+++ b/sysdeps/unix/sysv/linux/m68k/m680x0/libc_malloc_debug.abilist
@@ -26,3 +26,5 @@ GLIBC_2.2 mcheck_check_all F
GLIBC_2.2 mcheck_pedantic F
GLIBC_2.2 posix_memalign F
GLIBC_2.33 mallinfo2 F
+GLIBC_2.42 free_sized F
+GLIBC_2.42 free_aligned_sized F
diff --git a/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist b/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist
index ca8df6f4b0..839edf7a78 100644
--- a/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist
+++ b/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist
@@ -2853,3 +2853,5 @@ GLIBC_2.42 uabs F
GLIBC_2.42 uimaxabs F
GLIBC_2.42 ulabs F
GLIBC_2.42 ullabs F
+GLIBC_2.42 free_sized F
+GLIBC_2.42 free_aligned_sized F
diff --git a/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist b/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist
index 9508154847..172fa6cb07 100644
--- a/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist
+++ b/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist
@@ -2850,3 +2850,5 @@ GLIBC_2.42 uabs F
GLIBC_2.42 uimaxabs F
GLIBC_2.42 ulabs F
GLIBC_2.42 ullabs F
+GLIBC_2.42 free_sized F
+GLIBC_2.42 free_aligned_sized F
diff --git a/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist
index 4d51cc428f..c1b8c55740 100644
--- a/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist
+++ b/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist
@@ -3002,3 +3002,5 @@ GLIBC_2.9 ns_name_skip F
GLIBC_2.9 ns_name_uncompress F
GLIBC_2.9 ns_name_unpack F
GLIBC_2.9 pipe2 F
+GLIBC_2.42 free_sized F
+GLIBC_2.42 free_aligned_sized F
diff --git a/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc_malloc_debug.abilist b/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc_malloc_debug.abilist
index 55ef952885..65e2d49cee 100644
--- a/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc_malloc_debug.abilist
+++ b/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc_malloc_debug.abilist
@@ -26,3 +26,5 @@ GLIBC_2.2 mcheck_check_all F
GLIBC_2.2 mcheck_pedantic F
GLIBC_2.2 posix_memalign F
GLIBC_2.33 mallinfo2 F
+GLIBC_2.42 free_sized F
+GLIBC_2.42 free_aligned_sized F
diff --git a/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist
index 7f90fadc76..a0d69745f2 100644
--- a/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist
+++ b/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist
@@ -3000,3 +3000,5 @@ GLIBC_2.9 ns_name_skip F
GLIBC_2.9 ns_name_uncompress F
GLIBC_2.9 ns_name_unpack F
GLIBC_2.9 pipe2 F
+GLIBC_2.42 free_sized F
+GLIBC_2.42 free_aligned_sized F
diff --git a/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc_malloc_debug.abilist b/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc_malloc_debug.abilist
index 55ef952885..65e2d49cee 100644
--- a/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc_malloc_debug.abilist
+++ b/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc_malloc_debug.abilist
@@ -26,3 +26,5 @@ GLIBC_2.2 mcheck_check_all F
GLIBC_2.2 mcheck_pedantic F
GLIBC_2.2 posix_memalign F
GLIBC_2.33 mallinfo2 F
+GLIBC_2.42 free_sized F
+GLIBC_2.42 free_aligned_sized F
diff --git a/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist
index fc366d1bd0..c2f08b5cfe 100644
--- a/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist
+++ b/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist
@@ -3008,3 +3008,5 @@ GLIBC_2.9 ns_name_skip F
GLIBC_2.9 ns_name_uncompress F
GLIBC_2.9 ns_name_unpack F
GLIBC_2.9 pipe2 F
+GLIBC_2.42 free_sized F
+GLIBC_2.42 free_aligned_sized F
diff --git a/sysdeps/unix/sysv/linux/mips/mips64/n32/libc_malloc_debug.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n32/libc_malloc_debug.abilist
index 55ef952885..65e2d49cee 100644
--- a/sysdeps/unix/sysv/linux/mips/mips64/n32/libc_malloc_debug.abilist
+++ b/sysdeps/unix/sysv/linux/mips/mips64/n32/libc_malloc_debug.abilist
@@ -26,3 +26,5 @@ GLIBC_2.2 mcheck_check_all F
GLIBC_2.2 mcheck_pedantic F
GLIBC_2.2 posix_memalign F
GLIBC_2.33 mallinfo2 F
+GLIBC_2.42 free_sized F
+GLIBC_2.42 free_aligned_sized F
diff --git a/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist
index debd5c37c9..2da91b4dcc 100644
--- a/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist
+++ b/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist
@@ -2910,3 +2910,5 @@ GLIBC_2.9 ns_name_skip F
GLIBC_2.9 ns_name_uncompress F
GLIBC_2.9 ns_name_unpack F
GLIBC_2.9 pipe2 F
+GLIBC_2.42 free_sized F
+GLIBC_2.42 free_aligned_sized F
diff --git a/sysdeps/unix/sysv/linux/mips/mips64/n64/libc_malloc_debug.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n64/libc_malloc_debug.abilist
index 15b3293b03..bbc437ae6d 100644
--- a/sysdeps/unix/sysv/linux/mips/mips64/n64/libc_malloc_debug.abilist
+++ b/sysdeps/unix/sysv/linux/mips/mips64/n64/libc_malloc_debug.abilist
@@ -26,3 +26,5 @@ GLIBC_2.2 mcheck_check_all F
GLIBC_2.2 mcheck_pedantic F
GLIBC_2.2 posix_memalign F
GLIBC_2.33 mallinfo2 F
+GLIBC_2.42 free_sized F
+GLIBC_2.42 free_aligned_sized F
diff --git a/sysdeps/unix/sysv/linux/or1k/libc.abilist b/sysdeps/unix/sysv/linux/or1k/libc.abilist
index b62d59f1af..c5f5820cdf 100644
--- a/sysdeps/unix/sysv/linux/or1k/libc.abilist
+++ b/sysdeps/unix/sysv/linux/or1k/libc.abilist
@@ -2278,3 +2278,5 @@ GLIBC_2.42 uabs F
GLIBC_2.42 uimaxabs F
GLIBC_2.42 ulabs F
GLIBC_2.42 ullabs F
+GLIBC_2.42 free_sized F
+GLIBC_2.42 free_aligned_sized F
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist
index 883e66f3ae..8974d054a2 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist
@@ -3249,3 +3249,5 @@ GLIBC_2.9 ns_name_skip F
GLIBC_2.9 ns_name_uncompress F
GLIBC_2.9 ns_name_unpack F
GLIBC_2.9 pipe2 F
+GLIBC_2.42 free_sized F
+GLIBC_2.42 free_aligned_sized F
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc_malloc_debug.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc_malloc_debug.abilist
index 55ef952885..65e2d49cee 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc_malloc_debug.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc_malloc_debug.abilist
@@ -26,3 +26,5 @@ GLIBC_2.2 mcheck_check_all F
GLIBC_2.2 mcheck_pedantic F
GLIBC_2.2 posix_memalign F
GLIBC_2.33 mallinfo2 F
+GLIBC_2.42 free_sized F
+GLIBC_2.42 free_aligned_sized F
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist
index 84cd9e0e18..ecf055741b 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist
@@ -3294,3 +3294,5 @@ GLIBC_2.9 ns_name_skip F
GLIBC_2.9 ns_name_uncompress F
GLIBC_2.9 ns_name_unpack F
GLIBC_2.9 pipe2 F
+GLIBC_2.42 free_sized F
+GLIBC_2.42 free_aligned_sized F
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc_malloc_debug.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc_malloc_debug.abilist
index 55ef952885..65e2d49cee 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc_malloc_debug.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc_malloc_debug.abilist
@@ -26,3 +26,5 @@ GLIBC_2.2 mcheck_check_all F
GLIBC_2.2 mcheck_pedantic F
GLIBC_2.2 posix_memalign F
GLIBC_2.33 mallinfo2 F
+GLIBC_2.42 free_sized F
+GLIBC_2.42 free_aligned_sized F
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist
index 8832568ab3..c7701dc144 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist
@@ -3003,3 +3003,5 @@ GLIBC_2.9 ns_name_skip F
GLIBC_2.9 ns_name_uncompress F
GLIBC_2.9 ns_name_unpack F
GLIBC_2.9 pipe2 F
+GLIBC_2.42 free_sized F
+GLIBC_2.42 free_aligned_sized F
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist
index b6ff8016e4..cc5582dd99 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist
@@ -2987,3 +2987,5 @@ GLIBC_2.42 uabs F
GLIBC_2.42 uimaxabs F
GLIBC_2.42 ulabs F
GLIBC_2.42 ullabs F
+GLIBC_2.42 free_sized F
+GLIBC_2.42 free_aligned_sized F
diff --git a/sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist b/sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist
index 1771a2370c..143371b862 100644
--- a/sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist
+++ b/sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist
@@ -2531,3 +2531,5 @@ GLIBC_2.42 uabs F
GLIBC_2.42 uimaxabs F
GLIBC_2.42 ulabs F
GLIBC_2.42 ullabs F
+GLIBC_2.42 free_sized F
+GLIBC_2.42 free_aligned_sized F
diff --git a/sysdeps/unix/sysv/linux/riscv/rv32/libc_malloc_debug.abilist b/sysdeps/unix/sysv/linux/riscv/rv32/libc_malloc_debug.abilist
index ff6713a479..183ad64a8e 100644
--- a/sysdeps/unix/sysv/linux/riscv/rv32/libc_malloc_debug.abilist
+++ b/sysdeps/unix/sysv/linux/riscv/rv32/libc_malloc_debug.abilist
@@ -24,3 +24,5 @@ GLIBC_2.33 posix_memalign F
GLIBC_2.33 pvalloc F
GLIBC_2.33 realloc F
GLIBC_2.33 valloc F
+GLIBC_2.42 free_sized F
+GLIBC_2.42 free_aligned_sized F
diff --git a/sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist b/sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist
index 4b48352fd9..149ff92b48 100644
--- a/sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist
+++ b/sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist
@@ -2731,3 +2731,5 @@ GLIBC_2.42 uabs F
GLIBC_2.42 uimaxabs F
GLIBC_2.42 ulabs F
GLIBC_2.42 ullabs F
+GLIBC_2.42 free_sized F
+GLIBC_2.42 free_aligned_sized F
diff --git a/sysdeps/unix/sysv/linux/riscv/rv64/libc_malloc_debug.abilist b/sysdeps/unix/sysv/linux/riscv/rv64/libc_malloc_debug.abilist
index 65425a03ee..1f2f2d9b83 100644
--- a/sysdeps/unix/sysv/linux/riscv/rv64/libc_malloc_debug.abilist
+++ b/sysdeps/unix/sysv/linux/riscv/rv64/libc_malloc_debug.abilist
@@ -24,3 +24,5 @@ GLIBC_2.27 pvalloc F
GLIBC_2.27 realloc F
GLIBC_2.27 valloc F
GLIBC_2.33 mallinfo2 F
+GLIBC_2.42 free_sized F
+GLIBC_2.42 free_aligned_sized F
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist b/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist
index f0decc787b..251ed49f03 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist
@@ -3261,3 +3261,5 @@ GLIBC_2.9 pututline F
GLIBC_2.9 pututxline F
GLIBC_2.9 updwtmp F
GLIBC_2.9 updwtmpx F
+GLIBC_2.42 free_sized F
+GLIBC_2.42 free_aligned_sized F
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/libc_malloc_debug.abilist b/sysdeps/unix/sysv/linux/s390/s390-32/libc_malloc_debug.abilist
index 55ef952885..65e2d49cee 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/libc_malloc_debug.abilist
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/libc_malloc_debug.abilist
@@ -26,3 +26,5 @@ GLIBC_2.2 mcheck_check_all F
GLIBC_2.2 mcheck_pedantic F
GLIBC_2.2 posix_memalign F
GLIBC_2.33 mallinfo2 F
+GLIBC_2.42 free_sized F
+GLIBC_2.42 free_aligned_sized F
diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist b/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist
index da8a2bfb74..11b87e3105 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist
+++ b/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist
@@ -3038,3 +3038,5 @@ GLIBC_2.9 ns_name_skip F
GLIBC_2.9 ns_name_uncompress F
GLIBC_2.9 ns_name_unpack F
GLIBC_2.9 pipe2 F
+GLIBC_2.42 free_sized F
+GLIBC_2.42 free_aligned_sized F
diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/libc_malloc_debug.abilist b/sysdeps/unix/sysv/linux/s390/s390-64/libc_malloc_debug.abilist
index 554567ab85..72095b6888 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-64/libc_malloc_debug.abilist
+++ b/sysdeps/unix/sysv/linux/s390/s390-64/libc_malloc_debug.abilist
@@ -26,3 +26,5 @@ GLIBC_2.2 pvalloc F
GLIBC_2.2 realloc F
GLIBC_2.2 valloc F
GLIBC_2.33 mallinfo2 F
+GLIBC_2.42 free_sized F
+GLIBC_2.42 free_aligned_sized F
diff --git a/sysdeps/unix/sysv/linux/sh/be/libc.abilist b/sysdeps/unix/sysv/linux/sh/be/libc.abilist
index fb30341894..c53a8ee669 100644
--- a/sysdeps/unix/sysv/linux/sh/be/libc.abilist
+++ b/sysdeps/unix/sysv/linux/sh/be/libc.abilist
@@ -2919,3 +2919,5 @@ GLIBC_2.9 ns_name_skip F
GLIBC_2.9 ns_name_uncompress F
GLIBC_2.9 ns_name_unpack F
GLIBC_2.9 pipe2 F
+GLIBC_2.42 free_sized F
+GLIBC_2.42 free_aligned_sized F
diff --git a/sysdeps/unix/sysv/linux/sh/le/libc.abilist b/sysdeps/unix/sysv/linux/sh/le/libc.abilist
index d716673432..79b5c1f110 100644
--- a/sysdeps/unix/sysv/linux/sh/le/libc.abilist
+++ b/sysdeps/unix/sysv/linux/sh/le/libc.abilist
@@ -2916,3 +2916,5 @@ GLIBC_2.9 ns_name_skip F
GLIBC_2.9 ns_name_uncompress F
GLIBC_2.9 ns_name_unpack F
GLIBC_2.9 pipe2 F
+GLIBC_2.42 free_sized F
+GLIBC_2.42 free_aligned_sized F
diff --git a/sysdeps/unix/sysv/linux/sh/le/libc_malloc_debug.abilist b/sysdeps/unix/sysv/linux/sh/le/libc_malloc_debug.abilist
index 8798ca8653..670127ccf3 100644
--- a/sysdeps/unix/sysv/linux/sh/le/libc_malloc_debug.abilist
+++ b/sysdeps/unix/sysv/linux/sh/le/libc_malloc_debug.abilist
@@ -26,3 +26,5 @@ GLIBC_2.2 pvalloc F
GLIBC_2.2 realloc F
GLIBC_2.2 valloc F
GLIBC_2.33 mallinfo2 F
+GLIBC_2.42 free_sized F
+GLIBC_2.42 free_aligned_sized F
diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist b/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist
index 6deedf216d..744becaad6 100644
--- a/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist
+++ b/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist
@@ -3268,3 +3268,5 @@ GLIBC_2.9 ns_name_skip F
GLIBC_2.9 ns_name_uncompress F
GLIBC_2.9 ns_name_unpack F
GLIBC_2.9 pipe2 F
+GLIBC_2.42 free_sized F
+GLIBC_2.42 free_aligned_sized F
diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist b/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist
index 1ce22bf036..9aa65235b7 100644
--- a/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist
+++ b/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist
@@ -2886,3 +2886,5 @@ GLIBC_2.9 ns_name_skip F
GLIBC_2.9 ns_name_uncompress F
GLIBC_2.9 ns_name_unpack F
GLIBC_2.9 pipe2 F
+GLIBC_2.42 free_sized F
+GLIBC_2.42 free_aligned_sized F
diff --git a/sysdeps/unix/sysv/linux/x86_64/64/libc.abilist b/sysdeps/unix/sysv/linux/x86_64/64/libc.abilist
index 564877250b..c30cd5bd18 100644
--- a/sysdeps/unix/sysv/linux/x86_64/64/libc.abilist
+++ b/sysdeps/unix/sysv/linux/x86_64/64/libc.abilist
@@ -2835,3 +2835,5 @@ GLIBC_2.9 ns_name_skip F
GLIBC_2.9 ns_name_uncompress F
GLIBC_2.9 ns_name_unpack F
GLIBC_2.9 pipe2 F
+GLIBC_2.42 free_sized F
+GLIBC_2.42 free_aligned_sized F
diff --git a/sysdeps/unix/sysv/linux/x86_64/64/libc_malloc_debug.abilist b/sysdeps/unix/sysv/linux/x86_64/64/libc_malloc_debug.abilist
index 45dfcd31c5..a0c7db451c 100644
--- a/sysdeps/unix/sysv/linux/x86_64/64/libc_malloc_debug.abilist
+++ b/sysdeps/unix/sysv/linux/x86_64/64/libc_malloc_debug.abilist
@@ -26,3 +26,5 @@ GLIBC_2.2.5 pvalloc F
GLIBC_2.2.5 realloc F
GLIBC_2.2.5 valloc F
GLIBC_2.33 mallinfo2 F
+GLIBC_2.42 free_sized F
+GLIBC_2.42 free_aligned_sized F
diff --git a/sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist b/sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist
index 25a39d0943..88d0aef11c 100644
--- a/sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist
+++ b/sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist
@@ -2782,3 +2782,5 @@ GLIBC_2.42 uabs F
GLIBC_2.42 uimaxabs F
GLIBC_2.42 ulabs F
GLIBC_2.42 ullabs F
+GLIBC_2.42 free_sized F
+GLIBC_2.42 free_aligned_sized F
diff --git a/sysdeps/unix/sysv/linux/x86_64/x32/libc_malloc_debug.abilist b/sysdeps/unix/sysv/linux/x86_64/x32/libc_malloc_debug.abilist
index 821525018b..b9dc6ba495 100644
--- a/sysdeps/unix/sysv/linux/x86_64/x32/libc_malloc_debug.abilist
+++ b/sysdeps/unix/sysv/linux/x86_64/x32/libc_malloc_debug.abilist
@@ -26,3 +26,5 @@ GLIBC_2.16 pvalloc F
GLIBC_2.16 realloc F
GLIBC_2.16 valloc F
GLIBC_2.33 mallinfo2 F
+GLIBC_2.42 free_sized F
+GLIBC_2.42 free_aligned_sized F
--
2.50.0.714.g196bf9f422-goog
More information about the Libc-alpha
mailing list