9#ifndef LLVM_CODEGEN_MACHINEMODULESLOTTRACKER_H
10#define LLVM_CODEGEN_MACHINEMODULESLOTTRACKER_H
29 unsigned MDNStartSlot = 0, MDNEndSlot = 0;
34 bool ShouldInitializeAllMetadata);
37 bool ShouldInitializeAllMetadata);
41 bool ShouldInitializeAllMetadata =
true);
Abstract interface of slot tracker storage.
This class contains meta information specific to a module.
~MachineModuleSlotTracker() override
void collectMachineMDNodes(MachineMDNodeListType &L) const
MachineModuleSlotTracker(MFGetterFnT Fn, const MachineFunction *MF, bool ShouldInitializeAllMetadata=true)
ModuleSlotTracker(SlotTracker &Machine, const Module *M, const Function *F=nullptr)
Wrap a preinitialized SlotTracker.
std::vector< std::pair< unsigned, const MDNode * > > MachineMDNodeListType
A Module instance is used to store all the information related to an LLVM module.
An efficient, type-erasing, non-owning reference to a callable.
This is an optimization pass for GlobalISel generic memory operations.
function_ref< MachineFunction *(const Function &)> MFGetterFnT