9#ifndef LLVM_CODEGEN_MACHINEMODULESLOTTRACKER_H
10#define LLVM_CODEGEN_MACHINEMODULESLOTTRACKER_H
32 void collectMachineFunctionMetadata(
MachineBasicBlock MachineBasicBlock::iterator DebugLoc DL
This file defines the SmallPtrSet class.
This file defines the SmallVector class.
This class contains meta information specific to a module.
MachineModuleSlotTracker(MFGetterFnT Fn, const MachineFunction *MF)
~MachineModuleSlotTracker() override
bool shouldPrintDebugLocationInline(const DILocation *DL) const override
Return whether a debug location should be printed inline instead of by ID.
void collectMachineMDNodes(MachineMDNodeListType &L) const
void renumberMetadataForAssembly()
Renumber module and machine metadata for canonical MIR output.
ModuleSlotTracker(SlotTracker &Machine, const Module *M, const Function *F=nullptr)
Wrap a preinitialized SlotTracker.
SmallVector< std::pair< unsigned, const MDNode * >, 0 > MachineMDNodeListType
A Module instance is used to store all the information related to an LLVM module.
SmallPtrSet - This class implements a set which is optimized for holding SmallSize or less elements.
This class consists of common code factored out of the SmallVector class to reduce code duplication b...
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