[PATCH] D93838: [LLVM] [SCCP] : Add Function Specialization pass

Vinay Madhusudan via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Sat Mar 13 02:15:49 PST 2021


mivnay updated this revision to Diff 330436.
mivnay retitled this revision from "[LLVM] [SCCP] [WIP] :  Add Function Specialization pass" to "[LLVM] [SCCP] :  Add Function Specialization pass".
mivnay added a comment.
Herald added a subscriber: hiraditya.

I have updated the full patch along with the cost model. I have also shared the perf numbers for SPEC CPU 2017 benchmarks in Graviton2 with various modes of optimization enabled : F15848356: function_specialize_spec_2017_graviton2.png <https://reviews.llvm.org/F15848356>

This version of the patch contains the FunctionSpecializer implementation inside SCCP.cpp. It is not dependent on the D93762 <https://reviews.llvm.org/D93762> refactoring of `SCCPSolver` just for review purpose.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D93838

Files:
  llvm/include/llvm/InitializePasses.h
  llvm/include/llvm/LinkAllPasses.h
  llvm/include/llvm/Transforms/IPO.h
  llvm/include/llvm/Transforms/IPO/SCCP.h
  llvm/include/llvm/Transforms/Scalar/SCCP.h
  llvm/lib/Passes/PassBuilder.cpp
  llvm/lib/Passes/PassRegistry.def
  llvm/lib/Transforms/IPO/IPO.cpp
  llvm/lib/Transforms/IPO/PassManagerBuilder.cpp
  llvm/lib/Transforms/IPO/SCCP.cpp
  llvm/lib/Transforms/Scalar/SCCP.cpp
  llvm/test/Transforms/FunctionSpecialize/function-specialize-recursive.ll
  llvm/test/Transforms/FunctionSpecialize/function-specialize.ll
  llvm/test/Transforms/FunctionSpecialize/function-specialize2.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D93838.330436.patch
Type: text/x-patch
Size: 48391 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20210313/da4e0960/attachment-0001.bin>


More information about the llvm-commits mailing list