The llvm.memcpy.inline intrinsic must be expanded into code that does not contain any function calls because it is intended for the implementation of low-level functions like memcpy. Currently the MemCpyOpt might covert llvm.memcpy.inline into llvm.memmove in certain circumstances. This patch fixes the issue. Fixes https://github.com/llvm/llvm-project/issues/61791. Reviewed By: nikic Differential Revision: https://reviews.llvm.org/D147162