[all-commits] [llvm/llvm-project] cacbe7: [Analysis] Avoid running transform passes that hav...

Yingwei Zheng via All-commits all-commits at lists.llvm.org
Wed Nov 6 15:52:35 PST 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: cacbe71af7b1075f8ad1f84e002d1fcc83e85713
      https://github.com/llvm/llvm-project/commit/cacbe71af7b1075f8ad1f84e002d1fcc83e85713
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-11-07 (Thu, 07 Nov 2024)

  Changed paths:
    A llvm/include/llvm/Analysis/LastRunTrackingAnalysis.h
    M llvm/include/llvm/Transforms/InstCombine/InstCombine.h
    M llvm/lib/Analysis/CMakeLists.txt
    A llvm/lib/Analysis/LastRunTrackingAnalysis.cpp
    M llvm/lib/Passes/PassBuilder.cpp
    M llvm/lib/Passes/PassRegistry.def
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    M llvm/test/Other/new-pm-defaults.ll
    M llvm/test/Other/new-pm-lto-defaults.ll
    M llvm/test/Other/new-pm-thinlto-postlink-defaults.ll
    M llvm/test/Other/new-pm-thinlto-postlink-pgo-defaults.ll
    M llvm/test/Other/new-pm-thinlto-postlink-samplepgo-defaults.ll
    M llvm/test/Other/new-pm-thinlto-prelink-defaults.ll
    M llvm/test/Other/new-pm-thinlto-prelink-pgo-defaults.ll
    M llvm/test/Other/new-pm-thinlto-prelink-samplepgo-defaults.ll
    M llvm/test/Transforms/Coroutines/coro-retcon-opaque-ptr.ll
    M llvm/test/Transforms/Coroutines/coro-retcon.ll
    M llvm/unittests/Analysis/CMakeLists.txt
    A llvm/unittests/Analysis/LastRunTrackingAnalysisTest.cpp
    M llvm/unittests/Target/X86/TernlogTest.cpp

  Log Message:
  -----------
  [Analysis] Avoid running transform passes that have just been run (#112092)

This patch adds a new analysis pass to track a set of passes and their
parameters to see if we can avoid running transform passes that have
just been run. The current implementation only skips redundant
InstCombine runs. I will add support for other passes in follow-up
patches.

RFC link:
https://discourse.llvm.org/t/rfc-pipeline-avoid-running-transform-passes-that-have-just-been-run/82467

Compile time improvement:
http://llvm-compile-time-tracker.com/compare.php?from=76007138f4ffd4e0f510d12b5e8cad529c21f24d&to=64134cf07ea7eb39c60320087c0c5afdc16c3a2b&stat=instructions%3Au



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list