[all-commits] [llvm/llvm-project] 88003c: [MemCpyOpt] Remove MemDepAnalysis-based implementa...

Nikita Popov via All-commits all-commits at lists.llvm.org
Sat Aug 7 13:36:52 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 88003cea1c6eb3ebcb18b4f1b9d0e2052dd76fe4
      https://github.com/llvm/llvm-project/commit/88003cea1c6eb3ebcb18b4f1b9d0e2052dd76fe4
  Author: Nikita Popov <nikita.ppv at gmail.com>
  Date:   2021-08-07 (Sat, 07 Aug 2021)

  Changed paths:
    M llvm/include/llvm/Transforms/Scalar/MemCpyOptimizer.h
    M llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp
    M llvm/test/Analysis/BasicAA/phi-values-usage.ll
    M llvm/test/Transforms/MemCpyOpt/2008-02-24-MultipleUseofSRet.ll
    M llvm/test/Transforms/MemCpyOpt/2008-03-13-ReturnSlotBitcast.ll
    M llvm/test/Transforms/MemCpyOpt/2011-06-02-CallSlotOverwritten.ll
    M llvm/test/Transforms/MemCpyOpt/aggregate-type-crash.ll
    M llvm/test/Transforms/MemCpyOpt/align.ll
    M llvm/test/Transforms/MemCpyOpt/atomic.ll
    M llvm/test/Transforms/MemCpyOpt/byval-readnone.ll
    M llvm/test/Transforms/MemCpyOpt/callslot.ll
    M llvm/test/Transforms/MemCpyOpt/callslot_aa.ll
    M llvm/test/Transforms/MemCpyOpt/callslot_deref.ll
    M llvm/test/Transforms/MemCpyOpt/callslot_throw.ll
    M llvm/test/Transforms/MemCpyOpt/capturing-func.ll
    M llvm/test/Transforms/MemCpyOpt/crash.ll
    M llvm/test/Transforms/MemCpyOpt/fca2memcpy.ll
    M llvm/test/Transforms/MemCpyOpt/form-memset.ll
    M llvm/test/Transforms/MemCpyOpt/invariant.start.ll
    M llvm/test/Transforms/MemCpyOpt/lifetime.ll
    M llvm/test/Transforms/MemCpyOpt/load-store-to-memcpy.ll
    M llvm/test/Transforms/MemCpyOpt/loadstore-sret.ll
    M llvm/test/Transforms/MemCpyOpt/memcpy-invoke-memcpy.ll
    M llvm/test/Transforms/MemCpyOpt/memcpy-to-memset-with-lifetimes.ll
    M llvm/test/Transforms/MemCpyOpt/memcpy-to-memset.ll
    M llvm/test/Transforms/MemCpyOpt/memcpy-undef.ll
    M llvm/test/Transforms/MemCpyOpt/memcpy.ll
    M llvm/test/Transforms/MemCpyOpt/memmove.ll
    M llvm/test/Transforms/MemCpyOpt/memset-memcpy-oversized.ll
    M llvm/test/Transforms/MemCpyOpt/memset-memcpy-redundant-memset.ll
    M llvm/test/Transforms/MemCpyOpt/memset-memcpy-to-2x-memset.ll
    M llvm/test/Transforms/MemCpyOpt/merge-into-memset.ll
    M llvm/test/Transforms/MemCpyOpt/mixed-sizes.ll
    M llvm/test/Transforms/MemCpyOpt/non-integral.ll
    M llvm/test/Transforms/MemCpyOpt/nonlocal-memcpy-memcpy.ll
    M llvm/test/Transforms/MemCpyOpt/nontemporal.ll
    M llvm/test/Transforms/MemCpyOpt/pr29105.ll
    M llvm/test/Transforms/MemCpyOpt/pr37967.ll
    M llvm/test/Transforms/MemCpyOpt/process_store.ll
    M llvm/test/Transforms/MemCpyOpt/profitable-memset.ll
    M llvm/test/Transforms/MemCpyOpt/smaller.ll
    M llvm/test/Transforms/MemCpyOpt/sret.ll
    M llvm/test/Transforms/MemCpyOpt/stackrestore.ll
    M llvm/test/Transforms/MemCpyOpt/store-to-memset-is-nonzero-type.ll
    M llvm/test/Transforms/MemCpyOpt/store-to-memset.ll
    M llvm/test/Transforms/MemCpyOpt/variable-sized-memcpy-memcpy.ll
    M llvm/test/Transforms/MemCpyOpt/variable-sized-memcpy-uninit.ll
    M llvm/test/Transforms/MemCpyOpt/variable-sized-memset-memcpy.ll
    M llvm/test/Transforms/MemCpyOpt/vscale-memset.ll

  Log Message:
  -----------
  [MemCpyOpt] Remove MemDepAnalysis-based implementation

The MemorySSA-based implementation has been enabled for a few months
(since D94376). This patch drops the old MDA-based implementation
entirely.

I've kept this to only the basic cleanup of dropping various
conditions -- the code could be further cleaned up now that there
is only one implementation.

Differential Revision: https://reviews.llvm.org/D102113




More information about the All-commits mailing list