[all-commits] [llvm/llvm-project] 30bb5b: [CSSPGO] Unblock optimizations with pseudo probe i...

Hongtao Yu via All-commits all-commits at lists.llvm.org
Mon Apr 26 16:52:53 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 30bb5be38908b0006ed94124515e43774ee37915
      https://github.com/llvm/llvm-project/commit/30bb5be38908b0006ed94124515e43774ee37915
  Author: Hongtao Yu <hoy at fb.com>
  Date:   2021-04-26 (Mon, 26 Apr 2021)

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

  Log Message:
  -----------
  [CSSPGO] Unblock optimizations with pseudo probe instrumentation part 2.

As a follow-up to 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.

Reviewed By: wmi

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




More information about the All-commits mailing list