[PATCH] D80249: CodeGen: Don't lazily construct MachineFunctionInfo

Matt Arsenault via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Dec 16 10:39:23 PST 2022


arsenm updated this revision to Diff 483589.
arsenm added a comment.

Rebase. Move the construction of MFI out of the MachineFunction constructor to support the llvm-reduce usecase. It's slightly ugly to have to set this in the MachineModuleInfo and ResetMachineFunctionPass; the alternative might be a flag to skip constructing it


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D80249/new/

https://reviews.llvm.org/D80249

Files:
  llvm/include/llvm/CodeGen/MachineFunction.h
  llvm/include/llvm/Target/TargetMachine.h
  llvm/lib/CodeGen/MachineFunction.cpp
  llvm/lib/CodeGen/MachineModuleInfo.cpp
  llvm/lib/CodeGen/ResetMachineFunctionPass.cpp
  llvm/lib/Target/AArch64/AArch64MachineFunctionInfo.cpp
  llvm/lib/Target/AArch64/AArch64MachineFunctionInfo.h
  llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
  llvm/lib/Target/AArch64/AArch64TargetMachine.h
  llvm/lib/Target/AMDGPU/AMDGPUMachineFunction.cpp
  llvm/lib/Target/AMDGPU/AMDGPUMachineFunction.h
  llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
  llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.h
  llvm/lib/Target/AMDGPU/R600MachineFunctionInfo.cpp
  llvm/lib/Target/AMDGPU/R600MachineFunctionInfo.h
  llvm/lib/Target/AMDGPU/R600TargetMachine.h
  llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.cpp
  llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.h
  llvm/lib/Target/ARC/ARCMachineFunctionInfo.h
  llvm/lib/Target/ARC/ARCTargetMachine.cpp
  llvm/lib/Target/ARM/ARMMachineFunctionInfo.cpp
  llvm/lib/Target/ARM/ARMMachineFunctionInfo.h
  llvm/lib/Target/ARM/ARMTargetMachine.cpp
  llvm/lib/Target/ARM/ARMTargetMachine.h
  llvm/lib/Target/AVR/AVRMachineFunctionInfo.h
  llvm/lib/Target/AVR/AVRTargetMachine.cpp
  llvm/lib/Target/AVR/AVRTargetMachine.h
  llvm/lib/Target/Hexagon/HexagonMachineFunctionInfo.h
  llvm/lib/Target/Hexagon/HexagonTargetMachine.cpp
  llvm/lib/Target/Hexagon/HexagonTargetMachine.h
  llvm/lib/Target/Lanai/LanaiMachineFunctionInfo.h
  llvm/lib/Target/Lanai/LanaiTargetMachine.cpp
  llvm/lib/Target/Lanai/LanaiTargetMachine.h
  llvm/lib/Target/MSP430/MSP430MachineFunctionInfo.h
  llvm/lib/Target/MSP430/MSP430TargetMachine.cpp
  llvm/lib/Target/MSP430/MSP430TargetMachine.h
  llvm/lib/Target/Mips/MipsMachineFunction.h
  llvm/lib/Target/Mips/MipsTargetMachine.cpp
  llvm/lib/Target/Mips/MipsTargetMachine.h
  llvm/lib/Target/NVPTX/NVPTXMachineFunctionInfo.h
  llvm/lib/Target/NVPTX/NVPTXTargetMachine.cpp
  llvm/lib/Target/NVPTX/NVPTXTargetMachine.h
  llvm/lib/Target/PowerPC/PPCMachineFunctionInfo.cpp
  llvm/lib/Target/PowerPC/PPCMachineFunctionInfo.h
  llvm/lib/Target/PowerPC/PPCTargetMachine.cpp
  llvm/lib/Target/PowerPC/PPCTargetMachine.h
  llvm/lib/Target/RISCV/RISCVMachineFunctionInfo.h
  llvm/lib/Target/RISCV/RISCVTargetMachine.cpp
  llvm/lib/Target/RISCV/RISCVTargetMachine.h
  llvm/lib/Target/Sparc/SparcMachineFunctionInfo.h
  llvm/lib/Target/Sparc/SparcTargetMachine.cpp
  llvm/lib/Target/Sparc/SparcTargetMachine.h
  llvm/lib/Target/SystemZ/SystemZMachineFunctionInfo.h
  llvm/lib/Target/SystemZ/SystemZTargetMachine.cpp
  llvm/lib/Target/SystemZ/SystemZTargetMachine.h
  llvm/lib/Target/VE/VEMachineFunctionInfo.h
  llvm/lib/Target/VE/VETargetMachine.cpp
  llvm/lib/Target/VE/VETargetMachine.h
  llvm/lib/Target/WebAssembly/WebAssemblyMachineFunctionInfo.h
  llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
  llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.h
  llvm/lib/Target/X86/X86MachineFunctionInfo.h
  llvm/lib/Target/X86/X86TargetMachine.cpp
  llvm/lib/Target/X86/X86TargetMachine.h
  llvm/lib/Target/XCore/XCoreMachineFunctionInfo.h
  llvm/lib/Target/XCore/XCoreTargetMachine.cpp
  llvm/lib/Target/XCore/XCoreTargetMachine.h

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D80249.483589.patch
Type: text/x-patch
Size: 52247 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20221216/34e39fe9/attachment-0001.bin>


More information about the llvm-commits mailing list