class RawMemProfReader

Declaration

class RawMemProfReader { /* full declaration omitted */ };

Declared at: llvm/include/llvm/ProfileData/RawMemProfReader.h:39

Member Variables

private object::OwningBinary<object::Binary> Binary
private std::unique_ptr< llvm::symbolize::SymbolizableModule> Symbolizer
private llvm::SmallVector<SegmentEntry, 16> SegmentInfo
private llvm::MapVector<uint64_t, MemInfoBlock> CallstackProfileData
private llvm::memprof::CallStackMap StackMap
private llvm::DenseMap<uint64_t, llvm::SmallVector<FrameId>> SymbolizedFrame
private llvm::DenseMap<FrameId, Frame> IdToFrame
private llvm::MapVector<GlobalValue::GUID, IndexedMemProfRecord> FunctionProfileData
private llvm::MapVector<GlobalValue::GUID, IndexedMemProfRecord>::iterator Iter
private bool KeepSymbolName = false
private llvm::DenseMap<uint64_t, std::string> GuidToSymbolName

Method Overview

  • public RawMemProfReader(const llvm::memprof::RawMemProfReader &)
  • private RawMemProfReader(object::OwningBinary<object::Binary> && Bin, bool KeepName)
  • public RawMemProfReader(std::unique_ptr<llvm::symbolize::SymbolizableModule> Sym, llvm::SmallVectorImpl<SegmentEntry> & Seg, llvm::MapVector<uint64_t, MemInfoBlock> & Prof, llvm::memprof::CallStackMap & SM, bool KeepName = false)
  • public llvm::memprof::RawMemProfReader::Iterator begin()
  • public static Expected<std::unique_ptr<RawMemProfReader>> create(const llvm::Twine & Path, const llvm::StringRef ProfiledBinary, bool KeepName = false)
  • public llvm::memprof::RawMemProfReader::Iterator end()
  • public const llvm::DenseMap<FrameId, Frame> & getFrameMapping() const
  • private object::SectionedAddress getModuleOffset(uint64_t VirtualAddress)
  • public const llvm::MapVector<GlobalValue::GUID, IndexedMemProfRecord> & getProfileData() const
  • public llvm::InstrProfKind getProfileKind() const
  • public static bool hasFormat(const llvm::StringRef Path)
  • public static bool hasFormat(const llvm::MemoryBuffer & DataBuffer)
  • private const llvm::memprof::Frame & idToFrame(const llvm::memprof::FrameId Id) const
  • private llvm::Error initialize(std::unique_ptr<MemoryBuffer> DataBuffer)
  • private llvm::Error mapRawProfileToRecords()
  • public void printYAML(llvm::raw_ostream & OS)
  • public llvm::Error readNextRecord(llvm::memprof::RawMemProfReader::GuidMemProfRecordPair & GuidRecord)
  • private llvm::Error readRawProfile(std::unique_ptr<MemoryBuffer> DataBuffer)
  • private llvm::Error symbolizeAndFilterStackFrames()

Methods

RawMemProfReader(
    const llvm::memprof::RawMemProfReader&)

Declared at: llvm/include/llvm/ProfileData/RawMemProfReader.h:41

Parameters

const llvm::memprof::RawMemProfReader&

RawMemProfReader(
    object::OwningBinary<object::Binary>&& Bin,
    bool KeepName)

Declared at: llvm/include/llvm/ProfileData/RawMemProfReader.h:104

Parameters

object::OwningBinary<object::Binary>&& Bin
bool KeepName

RawMemProfReader(
    std::unique_ptr<
        llvm::symbolize::SymbolizableModule> Sym,
    llvm::SmallVectorImpl<SegmentEntry>& Seg,
    llvm::MapVector<uint64_t, MemInfoBlock>& Prof,
    llvm::memprof::CallStackMap& SM,
    bool KeepName = false)

Declared at: llvm/include/llvm/ProfileData/RawMemProfReader.h:75

Parameters

std::unique_ptr< llvm::symbolize::SymbolizableModule> Sym
llvm::SmallVectorImpl<SegmentEntry>& Seg
llvm::MapVector<uint64_t, MemInfoBlock>& Prof
llvm::memprof::CallStackMap& SM
bool KeepName = false

llvm::memprof::RawMemProfReader::Iterator begin()

Declared at: llvm/include/llvm/ProfileData/RawMemProfReader.h:64

static Expected<std::unique_ptr<RawMemProfReader>>
create(const llvm::Twine& Path,
       const llvm::StringRef ProfiledBinary,
       bool KeepName = false)

Declared at: llvm/include/llvm/ProfileData/RawMemProfReader.h:58

Parameters

const llvm::Twine& Path
const llvm::StringRef ProfiledBinary
bool KeepName = false

llvm::memprof::RawMemProfReader::Iterator end()

Declared at: llvm/include/llvm/ProfileData/RawMemProfReader.h:63

const llvm::DenseMap<FrameId, Frame>&
getFrameMapping() const

Declared at: llvm/include/llvm/ProfileData/RawMemProfReader.h:93

object::SectionedAddress getModuleOffset(
    uint64_t VirtualAddress)

Declared at: llvm/include/llvm/ProfileData/RawMemProfReader.h:127

Parameters

uint64_t VirtualAddress

const llvm::MapVector<GlobalValue::GUID,
                      IndexedMemProfRecord>&
getProfileData() const

Declared at: llvm/include/llvm/ProfileData/RawMemProfReader.h:99

llvm::InstrProfKind getProfileKind() const

Declared at: llvm/include/llvm/ProfileData/RawMemProfReader.h:72

static bool hasFormat(const llvm::StringRef Path)

Declared at: llvm/include/llvm/ProfileData/RawMemProfReader.h:52

Parameters

const llvm::StringRef Path

static bool hasFormat(
    const llvm::MemoryBuffer& DataBuffer)

Declared at: llvm/include/llvm/ProfileData/RawMemProfReader.h:49

Parameters

const llvm::MemoryBuffer& DataBuffer

const llvm::memprof::Frame& idToFrame(
    const llvm::memprof::FrameId Id) const

Declared at: llvm/include/llvm/ProfileData/RawMemProfReader.h:121

Parameters

const llvm::memprof::FrameId Id

llvm::Error initialize(
    std::unique_ptr<MemoryBuffer> DataBuffer)

Declared at: llvm/include/llvm/ProfileData/RawMemProfReader.h:107

Parameters

std::unique_ptr<MemoryBuffer> DataBuffer

llvm::Error mapRawProfileToRecords()

Declared at: llvm/include/llvm/ProfileData/RawMemProfReader.h:118

void printYAML(llvm::raw_ostream& OS)

Declared at: llvm/include/llvm/ProfileData/RawMemProfReader.h:45

Parameters

llvm::raw_ostream& OS

llvm::Error readNextRecord(
    llvm::memprof::RawMemProfReader::
        GuidMemProfRecordPair& GuidRecord)

Declared at: llvm/include/llvm/ProfileData/RawMemProfReader.h:69

Parameters

llvm::memprof::RawMemProfReader:: GuidMemProfRecordPair& GuidRecord

llvm::Error readRawProfile(
    std::unique_ptr<MemoryBuffer> DataBuffer)

Declared at: llvm/include/llvm/ProfileData/RawMemProfReader.h:109

Parameters

std::unique_ptr<MemoryBuffer> DataBuffer

llvm::Error symbolizeAndFilterStackFrames()

Declared at: llvm/include/llvm/ProfileData/RawMemProfReader.h:114