[PATCH] D100075: [CSSPGO] Unblock optimizations with pseudo probe instrumentation part 2.

Hongtao Yu via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Apr 7 16:12:13 PDT 2021


hoy created this revision.
Herald added subscribers: wenlei, hiraditya.
hoy requested review of this revision.
Herald added a project: LLVM.
Herald added a subscriber: llvm-commits.

As a follow-up to D95982 <https://reviews.llvm.org/D95982>, this patch continues unblocking optimizations that are blocked by pseudu probe instrumention.

The optimizations unblocked are:

- In-block load propagation.
- In-block dead store elimination
- Memory copy optimization that turns stores to consecutive memories into a memset.

These optimizations are local to a block, so they shouldn't affect the profile quality.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D100075

Files:
  llvm/lib/Analysis/Loads.cpp
  llvm/lib/Transforms/InstCombine/InstCombineLoadStoreAlloca.cpp
  llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp
  llvm/lib/Transforms/Scalar/Sink.cpp
  llvm/test/Transforms/SampleProfile/pseudo-probe-instcombine.ll
  llvm/test/Transforms/SampleProfile/pseudo-probe-memset.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D100075.335944.patch
Type: text/x-patch
Size: 6943 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20210407/d5f0e13b/attachment.bin>


More information about the llvm-commits mailing list