[all-commits] [llvm/llvm-project] 37e06e: [InlineCost] InlineCostAnnotationWriterPass introd...

KirillVNaumov via All-commits all-commits at lists.llvm.org
Wed Jun 17 06:41:18 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 37e06e8f5c6ee39a1d7cbaf7d5f5a3ebfa1b4e15
      https://github.com/llvm/llvm-project/commit/37e06e8f5c6ee39a1d7cbaf7d5f5a3ebfa1b4e15
  Author: Kirill Naumov <knaumov at azul.com>
  Date:   2020-06-17 (Wed, 17 Jun 2020)

  Changed paths:
    M llvm/include/llvm/Analysis/InlineCost.h
    M llvm/lib/Analysis/InlineCost.cpp
    M llvm/lib/Passes/PassRegistry.def
    M llvm/test/Transforms/Inline/debuginline-cost-delta.ll
    A llvm/test/Transforms/Inline/inline-cost-annotation-pass.ll
    R llvm/test/Transforms/Inline/print-instructions-deltas-unfinished.ll

  Log Message:
  -----------
  [InlineCost] InlineCostAnnotationWriterPass introduced

This class allows to see the inliner's decisions for better
optimization verifications and tests. To use, use flag
"-passes="print<inline-cost>"".

Reviewers: apilipenko, mtrofin, davidxl, fedor.sergeev

Reviewed By: mtrofin

Differential revision: https://reviews.llvm.org/D81743


  Commit: 52b0db22f8cfb594c32389224570681d2d2c2f21
      https://github.com/llvm/llvm-project/commit/52b0db22f8cfb594c32389224570681d2d2c2f21
  Author: Kirill Naumov <knaumov at azul.com>
  Date:   2020-06-17 (Wed, 17 Jun 2020)

  Changed paths:
    M llvm/lib/Analysis/InlineCost.cpp
    A llvm/test/Transforms/Inline/simplified_to.ll

  Log Message:
  -----------
  [InlineCost] PrinterPass prints constants to which instructions are simplified

This patch enables printing of constants to see which instructions were
constant-folded. Needed for tests and better visiual analysis of
inliner's work.

Reviewers: apilipenko, mtrofin, davidxl, fedor.sergeev

Reviewed By: mtrofin

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


  Commit: 34fba68d80051e3c53e7843157c036f6d511ae03
      https://github.com/llvm/llvm-project/commit/34fba68d80051e3c53e7843157c036f6d511ae03
  Author: Kirill Naumov <knaumov at azul.com>
  Date:   2020-06-17 (Wed, 17 Jun 2020)

  Changed paths:
    M llvm/lib/Analysis/InlineCost.cpp
    A llvm/test/Transforms/Inline/gep_from_constant.ll

  Log Message:
  -----------
  [InlineCost] GetElementPtr with constant operands

If the GEP instruction contanins only constants as its arguments,
then it should be recognized as a constant. For now, there was
also added a flag to turn off this simplification if it causes
any regressions ("disable-gep-const-evaluation") which is off
by default. Once I gather needed data of the effectiveness of
this simplification, the flag will be deleted.

Reviewers: apilipenko, davidxl, mtrofin

Reviewed By: mtrofin

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


Compare: https://github.com/llvm/llvm-project/compare/ccd127008aa2...34fba68d8005


More information about the All-commits mailing list