[PATCH] D145379: [FuncSpec] Cost model improvements.

Alexandros Lamprineas via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Mar 6 06:29:22 PST 2023


labrinea created this revision.
labrinea added reviewers: ChuanqiXu, SjoerdMeijer, chill.
Herald added subscribers: snehasish, ormris, hiraditya.
Herald added a project: All.
labrinea requested review of this revision.
Herald added a project: LLVM.

- Separate user bonus to Latency and CodeSize.
- Do not re-count the bonus of a visited user (from other arguments).
- Limit the recursion depth when accumulating user bonus.
- Penalize latency of loop nests the deeper we get in the use-def chain.
- Penalize specialization on the same argument.
- Formulate specialization score based on Latency/CodeSize ratio.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D145379

Files:
  llvm/include/llvm/Transforms/IPO/FunctionSpecialization.h
  llvm/lib/Transforms/IPO/FunctionSpecialization.cpp
  llvm/test/Transforms/FunctionSpecialization/function-specialization-constant-integers.ll
  llvm/test/Transforms/FunctionSpecialization/function-specialization-loop.ll
  llvm/test/Transforms/FunctionSpecialization/get-possible-constants.ll
  llvm/test/Transforms/FunctionSpecialization/recursive-penalty.ll
  llvm/test/Transforms/FunctionSpecialization/remove-dead-recursive-function.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D145379.502619.patch
Type: text/x-patch
Size: 24887 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20230306/60d1753f/attachment-0001.bin>


More information about the llvm-commits mailing list