[PATCH] D45584: [DSE] Teach the pass about partial overwrite of atomic memory intrinsics

Daniel Neilson via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Apr 12 12:09:46 PDT 2018


dneilson created this revision.
dneilson added reviewers: mkazantsev, skatkov, apilipenko, efriedma, rsmith.

This change teaches DSE that the atomic memory intrinsics can be overwriten
partially in the same way as the non-atomic forms. Specifically, that the
atomic memcpy & memset can be shortened at the end and that the atomic memset
can be shortened at the beginning, if they partially overwritten
by later stores.


Repository:
  rL LLVM

https://reviews.llvm.org/D45584

Files:
  lib/Transforms/Scalar/DeadStoreElimination.cpp
  test/Transforms/DeadStoreElimination/OverwriteStoreBegin.ll
  test/Transforms/DeadStoreElimination/OverwriteStoreEnd.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D45584.142230.patch
Type: text/x-patch
Size: 14709 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20180412/9db3967a/attachment.bin>


More information about the llvm-commits mailing list