[all-commits] [llvm/llvm-project] 71a8e4: [MemCopyOpt] Enable MemorySSA by default
Nikita Popov via All-commits
all-commits at lists.llvm.org
Fri Feb 19 09:08:03 PST 2021
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 71a8e4e7d6b947c8b954ec0763ff7969b3879d7b
https://github.com/llvm/llvm-project/commit/71a8e4e7d6b947c8b954ec0763ff7969b3879d7b
Author: Nikita Popov <nikita.ppv at gmail.com>
Date: 2021-02-19 (Fri, 19 Feb 2021)
Changed paths:
M clang/test/CodeGen/thinlto-distributed-newpm.ll
M llvm/lib/Passes/PassBuilder.cpp
M llvm/lib/Transforms/IPO/PassManagerBuilder.cpp
M llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp
M llvm/test/Analysis/BasicAA/phi-values-usage.ll
M llvm/test/CodeGen/AMDGPU/opt-pipeline.ll
M llvm/test/Other/new-pm-defaults.ll
M llvm/test/Other/new-pm-lto-defaults.ll
M llvm/test/Other/new-pm-thinlto-defaults.ll
M llvm/test/Other/new-pm-thinlto-postlink-pgo-defaults.ll
M llvm/test/Other/new-pm-thinlto-postlink-samplepgo-defaults.ll
M llvm/test/Other/new-pm-thinlto-prelink-pgo-defaults.ll
M llvm/test/Other/new-pm-thinlto-prelink-samplepgo-defaults.ll
M llvm/test/Other/opt-LTO-pipeline.ll
M llvm/test/Other/opt-O2-pipeline.ll
M llvm/test/Other/opt-O3-pipeline-enable-matrix.ll
M llvm/test/Other/opt-O3-pipeline.ll
M llvm/test/Other/opt-Os-pipeline.ll
Log Message:
-----------
[MemCopyOpt] Enable MemorySSA by default
This enables use of MemorySSA instead of MemDep in MemCpyOpt. To
allow this without significant compile-time impact, the MemCpyOpt
pass is moved directly before DSE (in the cases where this was not
already the case), which allows us to reuse the existing MemorySSA
analysis.
Unlike the MemDep-based implementation, the MemorySSA-based MemCpyOpt
can also perform simple optimizations across basic blocks.
Differential Revision: https://reviews.llvm.org/D94376
More information about the All-commits
mailing list