[PATCH] D105524: [FuncSpec] Extract the analysis part as an analysis pass

Chuanqi Xu via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Jul 6 20:11:40 PDT 2021


ChuanqiXu created this revision.
ChuanqiXu added reviewers: SjoerdMeijer, fhahn, sanwou01.
Herald added subscribers: ormris, hiraditya, kristof.beyls, mgorny.
ChuanqiXu requested review of this revision.
Herald added a project: LLVM.
Herald added a subscriber: llvm-commits.

I want the ThinLTO to support Function Specialization Pass. 
Now the ThinLTO importer would only import functions by inline heuristics.
And if we want to make ThinLTO importer knows the information used by function specialization, we need to extract the analysis part as an analysis pass to make other pass get the information without transforming the IR.

There are much works to do since the function specialization pass itself is not strong enough first. The first step should be harmless.

This patch intended to be a NFC patch so here is nothing to factor the cost model. We could do that in following patches.

Test Plan: check-llvm


https://reviews.llvm.org/D105524

Files:
  llvm/include/llvm/Analysis/FuncSpecCost.h
  llvm/include/llvm/InitializePasses.h
  llvm/include/llvm/Transforms/Scalar/SCCP.h
  llvm/lib/Analysis/Analysis.cpp
  llvm/lib/Analysis/CMakeLists.txt
  llvm/lib/Analysis/FuncSpecCost.cpp
  llvm/lib/Passes/PassBuilder.cpp
  llvm/lib/Passes/PassRegistry.def
  llvm/lib/Transforms/IPO/FunctionSpecialization.cpp
  llvm/lib/Transforms/IPO/SCCP.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D105524.356854.patch
Type: text/x-patch
Size: 26176 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20210707/efae83fe/attachment-0001.bin>


More information about the llvm-commits mailing list