[llvm-dev] [RFC] Introducing classes for the codegen driven by new pass manager (original) (raw)
Matt Arsenault via llvm-dev llvm-dev at lists.llvm.org
Tue Jul 21 12:02:10 PDT 2020
- Previous message: [llvm-dev] [RFC] Introducing classes for the codegen driven by new pass manager
- Next message: [llvm-dev] [RFC] Introducing classes for the codegen driven by new pass manager
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
On Jul 21, 2020, at 14:53, Craig Topper <craig.topper at gmail.com> wrote:
One thing I want to mention. I believe in the current legacy pass manager implementation only one MachineFunction ever exists at a time. It is deleted before the next MachineFunction is created. This is very important for memory usage. I think the MachineOutliner being in the pipeline may create an exception to this. I think the initial version of retpoline used a ModulePass and that had to be changed to avoid excessive memory usage. ~Craig
An addition to this is analyses between different MachineFunctions still matter. AMDGPU forces SCC order and has an analysis to track function information after it’s been codegened. This is needed to track the cumulative register usage of kernels
-Matt
- Previous message: [llvm-dev] [RFC] Introducing classes for the codegen driven by new pass manager
- Next message: [llvm-dev] [RFC] Introducing classes for the codegen driven by new pass manager
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]