[all-commits] [llvm/llvm-project] ab8150: [MemCpyOpt] Don't fold memcpy.inline into memmove

Mikhail Maltsev via All-commits all-commits at lists.llvm.org
Thu Mar 30 05:15:59 PDT 2023

  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: ab8150acc5256f7607587f576eb685cb8dd32d96
  Author: Mikhail Maltsev <mikhail.maltsev at arm.com>
  Date:   2023-03-30 (Thu, 30 Mar 2023)

  Changed paths:
    M llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp
    M llvm/test/Transforms/MemCpyOpt/memcpy.ll

  Log Message:
  [MemCpyOpt] Don't fold memcpy.inline into memmove

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

More information about the All-commits mailing list