[PATCH] D109280: [WIP][DSE] Memory intrinsics like memset, memcpy, memmove are removed if they are overwritten by a store in a loop

Daniil Seredkin via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Oct 5 08:15:43 PDT 2021


vdsered updated this revision to Diff 377258.
vdsered edited the summary of this revision.
vdsered added a comment.

- Transform loops into loop rotated simplify form
- Use guards instead of directly finding icmps
- Implemented optimization for loop + loop
- Decreased the number of times when we compute range for memory intrinsics
- Running DSE loop twice, 1 as it was before and 2 for optimization across loops


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D109280/new/

https://reviews.llvm.org/D109280

Files:
  llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
  llvm/test/CodeGen/AMDGPU/opt-pipeline.ll
  llvm/test/Transforms/DeadStoreElimination/Loop/loop-variant-store-and-dom-memory-intrinsic.ll
  llvm/test/Transforms/DeadStoreElimination/Loop/loop-variant-store-and-post-dom-memory-intrinsic.ll
  llvm/test/Transforms/DeadStoreElimination/Loop/loop-variant-store-negative-tests.ll
  llvm/test/Transforms/DeadStoreElimination/Loop/loop-variant-stores.ll
  llvm/test/Transforms/DeadStoreElimination/debug-counter.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D109280.377258.patch
Type: text/x-patch
Size: 69522 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20211005/49079eb5/attachment.bin>


More information about the llvm-commits mailing list