[all-commits] [llvm/llvm-project] c8cb7f: [NewPM] Make InlinerPass (aka 'inline') a paramete...

Björn Pettersson via All-commits all-commits at lists.llvm.org
Mon Sep 20 03:54:19 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: c8cb7f611fdf4d96c4d23a75aa48c93cca38646f
      https://github.com/llvm/llvm-project/commit/c8cb7f611fdf4d96c4d23a75aa48c93cca38646f
  Author: Bjorn Pettersson <bjorn.a.pettersson at ericsson.com>
  Date:   2021-09-20 (Mon, 20 Sep 2021)

  Changed paths:
    M llvm/include/llvm/Transforms/IPO/Inliner.h
    M llvm/lib/Passes/PassBuilder.cpp
    M llvm/lib/Passes/PassRegistry.def
    M llvm/lib/Transforms/IPO/Inliner.cpp

  Log Message:
  -----------
  [NewPM] Make InlinerPass (aka 'inline') a parameterized pass

In default pipelines the ModuleInlinerWrapperPass is adding the
InlinerPass to the pipeline twice, once due to MandatoryFirst (passing
true in the ctor) and then a second time with false as argument.

To make it possible to bisect and reduce opt test cases for this
part of the pipeline we need to be able to choose between the two
different variants of the InlinerPass when running opt. This patch is
changing 'inline' to a CGSCC_PASS_WITH_PARAMS in the PassRegistry,
making it possible run opt with both -passes=cgscc(inline) and
-passes=cgscc(inline<only-mandatory>).

Reviewed By: aeubanks, mtrofin

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




More information about the All-commits mailing list