[PATCH] D104477: [CSSPGO] Undoing the concept of dangling pseudo probe

Hongtao Yu via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Jun 17 11:21:16 PDT 2021


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

As a follow-up to https://reviews.llvm.org/D104129, I'm cleaning up the danling probe related code in both the compiler and llvm-profgen.

I'm seeing a 5% size win for the pseudo_probe section for SPEC2017 and 10% for Ciner. Certain benchmark such as 602.gcc has a 20% size win. No obvious difference seen on build time for SPEC2017 and Cinder.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D104477

Files:
  llvm/include/llvm/CodeGen/MachineBasicBlock.h
  llvm/include/llvm/IR/PseudoProbe.h
  llvm/include/llvm/MC/MCPseudoProbe.h
  llvm/include/llvm/Transforms/Utils/BasicBlockUtils.h
  llvm/lib/CodeGen/BranchFolding.cpp
  llvm/lib/CodeGen/MachineBasicBlock.cpp
  llvm/lib/CodeGen/PseudoProbeInserter.cpp
  llvm/lib/CodeGen/TailDuplicator.cpp
  llvm/lib/IR/PseudoProbe.cpp
  llvm/lib/Transforms/IPO/SampleProfile.cpp
  llvm/lib/Transforms/IPO/SampleProfileProbe.cpp
  llvm/lib/Transforms/Scalar/JumpThreading.cpp
  llvm/lib/Transforms/Utils/BasicBlockUtils.cpp
  llvm/lib/Transforms/Utils/Local.cpp
  llvm/lib/Transforms/Utils/SimplifyCFG.cpp
  llvm/test/Transforms/SampleProfile/pseudo-probe-dangle.ll
  llvm/test/Transforms/SampleProfile/pseudo-probe-dangle2.ll
  llvm/test/Transforms/SampleProfile/pseudo-probe-dangle3.ll
  llvm/test/Transforms/SampleProfile/pseudo-probe-dangling.mir
  llvm/test/Transforms/SampleProfile/pseudo-probe-dedup.ll
  llvm/test/tools/llvm-profgen/Inputs/inline-cs-dangling-pseudoprobe.perfscript
  llvm/test/tools/llvm-profgen/Inputs/inline-cs-pseudoprobe.perfbin
  llvm/test/tools/llvm-profgen/Inputs/noinline-cs-pseudoprobe.perfbin
  llvm/test/tools/llvm-profgen/Inputs/recursion-compression-pseudoprobe.perfbin
  llvm/test/tools/llvm-profgen/Inputs/truncated-pseudoprobe.ll
  llvm/test/tools/llvm-profgen/Inputs/truncated-pseudoprobe.perfbin
  llvm/test/tools/llvm-profgen/Inputs/truncated-pseudoprobe.perfscript
  llvm/test/tools/llvm-profgen/Inputs/unique-linkage-name-probe.perfbin
  llvm/test/tools/llvm-profgen/fname-canonicalization.test
  llvm/test/tools/llvm-profgen/inline-cs-dangling-pseudoprobe.test
  llvm/test/tools/llvm-profgen/inline-cs-pseudoprobe.test
  llvm/test/tools/llvm-profgen/merge-cold-profile.test
  llvm/test/tools/llvm-profgen/noinline-cs-pseudoprobe.test
  llvm/test/tools/llvm-profgen/pseudoprobe-decoding.test
  llvm/test/tools/llvm-profgen/recursion-compression-pseudoprobe.test
  llvm/tools/llvm-profgen/PerfReader.h
  llvm/tools/llvm-profgen/ProfileGenerator.cpp
  llvm/tools/llvm-profgen/PseudoProbe.cpp
  llvm/tools/llvm-profgen/PseudoProbe.h

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D104477.352799.patch
Type: text/x-patch
Size: 49968 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20210617/6d063012/attachment.bin>


More information about the llvm-commits mailing list