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

Sjoerd Meijer via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Apr 26 01:34:58 PDT 2021


SjoerdMeijer updated this revision to Diff 340446.
SjoerdMeijer retitled this revision from "[LLVM] [SCCP] :  Add Function Specialization pass" to "[SCCP] Add Function Specialization pass".
SjoerdMeijer edited the summary of this revision.
SjoerdMeijer added a comment.

Last intermediate update with quite a few things fixed:

- removed the aggressive mode as we don't need it right now and it didn't seem to entirely work,
- introduced a force option to overrule the cost-model,
- added more tests; the force option allowed some simpler tests with constant globals.
- have added previous review comments as FIXME/TODOs.
- have added debug messages.


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/include/llvm/Transforms/Utils/SCCPSolver.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/lib/Transforms/Utils/SCCPSolver.cpp
  llvm/test/Transforms/FunctionSpecialization/function-specialization-recursive.ll
  llvm/test/Transforms/FunctionSpecialization/function-specialization.ll
  llvm/test/Transforms/FunctionSpecialization/function-specialization2.ll
  llvm/test/Transforms/FunctionSpecialization/function-specialization3.ll
  llvm/test/Transforms/FunctionSpecialization/function-specialization4.ll
  llvm/test/Transforms/FunctionSpecialization/function-specialization5.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D93838.340446.patch
Type: text/x-patch
Size: 59737 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20210426/46532a45/attachment.bin>


More information about the llvm-commits mailing list