This is the mail archive of the
glibc-bugs@sourceware.org
mailing list for the glibc project.
[Bug libc/19759] mempcpy shouldn't be inlined
- From: "wdijkstr at arm dot com" <sourceware-bugzilla at sourceware dot org>
- To: glibc-bugs at sourceware dot org
- Date: Mon, 07 Mar 2016 23:09:48 +0000
- Subject: [Bug libc/19759] mempcpy shouldn't be inlined
- Auto-submitted: auto-generated
- References: <bug-19759-131 at http dot sourceware dot org/bugzilla/>
https://sourceware.org/bugzilla/show_bug.cgi?id=19759
--- Comment #4 from Wilco <wdijkstr at arm dot com> ---
(In reply to H.J. Lu from comment #3)
> There are
>
> # if !defined _HAVE_STRING_ARCH_mempcpy || defined _FORCE_INLINES
> # ifndef _HAVE_STRING_ARCH_mempcpy
> # if __GNUC_PREREQ (3, 4)
> # define __mempcpy(dest, src, n) __builtin_mempcpy (dest, src, n)
> # elif __GNUC_PREREQ (3, 0)
> # define __mempcpy(dest, src, n) \
> (__extension__ (__builtin_constant_p (src) && __builtin_constant_p (n)
> \
> && __string2_1bptr_p (src) && n <= 8
> \
> ? __builtin_memcpy (dest, src, n) + (n)
> \
> : __mempcpy (dest, src, n)))
> # else
> # define __mempcpy(dest, src, n) \
> (__extension__ (__builtin_constant_p (src) && __builtin_constant_p (n)
> \
> && __string2_1bptr_p (src) && n <= 8
> \
> ? __mempcpy_small (dest, __mempcpy_args (src), n)
> \
> : __mempcpy (dest, src, n)))
> # endif
> /* In glibc we use this function frequently but for namespace reasons
> we have to use the name `__mempcpy'. */
> # define mempcpy(dest, src, n) __mempcpy (dest, src, n)
> # endif
>
> in string/bits/string2.h. commit 05a910f7b420c2b831f35ba90e61c80f001c0606
> should be reverted.
The above code is no longer relevant, my latest patch to clean up the mess in
bits/string.h removes it completely as it is redundant. See
https://sourceware.org/ml/libc-alpha/2016-02/msg00793.html. The goal is to
completely remove bits/string.h and move the remaining useful inlines (if any)
into the standard string.h.
--
You are receiving this mail because:
You are on the CC list for the bug.