[all-commits] [llvm/llvm-project] 519b53: [CodeGen][NewPM] Port RegAllocEvictionAdvisor anal...
Akshat Oke via All-commits
all-commits at lists.llvm.org
Tue Feb 18 03:55:29 PST 2025
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 519b53e65ef6ad5385d80d0726e48bbc3b08992f
https://github.com/llvm/llvm-project/commit/519b53e65ef6ad5385d80d0726e48bbc3b08992f
Author: Akshat Oke <Akshat.Oke at amd.com>
Date: 2025-02-18 (Tue, 18 Feb 2025)
Changed paths:
A llvm/include/llvm/CodeGen/RegAllocEvictionAdvisor.h
M llvm/include/llvm/InitializePasses.h
M llvm/include/llvm/Passes/CodeGenPassBuilder.h
M llvm/include/llvm/Passes/MachinePassRegistry.def
M llvm/lib/CodeGen/MLRegAllocEvictAdvisor.cpp
M llvm/lib/CodeGen/RegAllocEvictionAdvisor.cpp
R llvm/lib/CodeGen/RegAllocEvictionAdvisor.h
M llvm/lib/CodeGen/RegAllocGreedy.cpp
M llvm/lib/CodeGen/RegAllocGreedy.h
M llvm/lib/CodeGen/RegAllocPriorityAdvisor.h
M llvm/lib/Passes/PassBuilder.cpp
Log Message:
-----------
[CodeGen][NewPM] Port RegAllocEvictionAdvisor analysis to NPM (#117309)
Legacy pass used to provide the advisor, so this extracts that logic
into a provider class used by both analysis passes.
All three (Default, Release, Development) legacy passes
`*AdvisorAnalysis` are basically renamed to `*AdvisorProvider`, so the
actual legacy wrapper passes are `*AdvisorAnalysisLegacy`.
There is only one NPM analysis `RegAllocEvictionAnalysis` that switches
between the three providers in the `::run` method, to be cached by the
NPM.
Also adds `RequireAnalysis<RegAllocEvictionAnalysis>` to the optimized
target reg alloc codegen builder.
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