Although the current memcpy in glibc follows the spec,
some applications call memcpy with overlapping destination
and source.
I think we should help those applications without punishing
the correctly written applications. We can check an environment
variable for IFUNC, like LD_BIND_IFUNC_MEMCPY_TO_MEMMOVE.
If it is set, IFUNC memcpy will return memmove instead
of memcpy. I can prepare a patch to implement it if we
should do it.
Although the current memcpy in glibc follows the spec,
some applications call memcpy with overlapping destination
and source.
I think we should help those applications without punishing IFUNC_MEMCPY_ TO_MEMMOVE.
the correctly written applications. We can check an environment
variable for IFUNC, like LD_BIND_
If it is set, IFUNC memcpy will return memmove instead
of memcpy. I can prepare a patch to implement it if we
should do it.