LLVM 20.0.0git
Classes | Namespaces | Macros
MemProfYAML.h File Reference
#include "llvm/ProfileData/MemProf.h"
#include "llvm/Support/Format.h"
#include "llvm/Support/YAMLTraits.h"
#include "llvm/ProfileData/MIBEntryDef.inc"

Go to the source code of this file.

Classes

struct  llvm::memprof::GUIDMemProfRecordPair
 
struct  llvm::memprof::AllMemProfData
 
struct  llvm::yaml::ScalarTraits< memprof::GUIDHex64 >
 
struct  llvm::yaml::MappingTraits< memprof::Frame >
 
class  llvm::yaml::MappingTraits< memprof::Frame >::FrameWithHex64
 
struct  llvm::yaml::CustomMappingTraits< memprof::PortableMemInfoBlock >
 
struct  llvm::yaml::MappingTraits< memprof::AllocationInfo >
 
struct  llvm::yaml::MappingTraits< memprof::GUIDMemProfRecordPair >
 
struct  llvm::yaml::MappingTraits< memprof::AllMemProfData >
 

Namespaces

namespace  llvm
 This is an optimization pass for GlobalISel generic memory operations.
 
namespace  llvm::memprof
 
namespace  llvm::yaml
 

Macros

#define MIBEntryDef(NameTag, Name, Type)
 
#define MIBEntryDef(NameTag, Name, Type)
 

Macro Definition Documentation

◆ MIBEntryDef [1/2]

#define MIBEntryDef (   NameTag,
  Name,
  Type 
)
Value:
if (KeyStr == #Name) { \
uint64_t Value; \
Io.mapRequired(KeyStr.str().c_str(), Value); \
MIB.Name = static_cast<Type>(Value); \
MIB.Schema.set(llvm::to_underlying(memprof::Meta::Name)); \
return; \
}
RelocType Type
Definition: COFFYAML.cpp:410
std::string Name
constexpr std::underlying_type_t< Enum > to_underlying(Enum E)
Returns underlying integer value of an enum.

◆ MIBEntryDef [2/2]

#define MIBEntryDef (   NameTag,
  Name,
  Type 
)
Value:
if (Schema.test(llvm::to_underlying(memprof::Meta::Name))) { \
uint64_t Value = MIB.Name; \
Io.mapRequired(#Name, Value); \
}