[all-commits] [llvm/llvm-project] 1a525d: [FuncSpec] Fix missed opportunities for function s...

Momchil Velikov via All-commits all-commits at lists.llvm.org
Tue Oct 25 15:34:13 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 1a525dec7f3f82275517c130cf954d525cbf5e92
      https://github.com/llvm/llvm-project/commit/1a525dec7f3f82275517c130cf954d525cbf5e92
  Author: Momchil Velikov <momchil.velikov at arm.com>
  Date:   2022-10-25 (Tue, 25 Oct 2022)

  Changed paths:
    M llvm/lib/Transforms/IPO/FunctionSpecialization.cpp
    A llvm/test/Transforms/FunctionSpecialization/get-possible-constants.ll

  Log Message:
  -----------
  [FuncSpec] Fix missed opportunities for function specialisation

When collecting the possible constant arguments to
specialise a function the compiler will abandon the search
on the first argument that is for some reason unsuitable as
a specialisation constant. Thus, depending on the traversal
order of the functions and call sites, the compiler can end
up with a different set of possible constants, hence with
different set of specialisations.

With this patch, the compiler will skip unsuitable
constants, but nevertheless will continue searching for
more.

Reviewed By: ChuanqiXu

Differential Revision: https://reviews.llvm.org/D135867




More information about the All-commits mailing list