LLVM  8.0.1
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
llvm::sampleprof::SampleProfileWriterCompactBinary Class Reference

#include "llvm/ProfileData/SampleProfWriter.h"

Inheritance diagram for llvm::sampleprof::SampleProfileWriterCompactBinary:
Inheritance graph
[legend]
Collaboration diagram for llvm::sampleprof::SampleProfileWriterCompactBinary:
Collaboration graph
[legend]

Public Member Functions

virtual std::error_code write (const FunctionSamples &S) override
 Write samples of a top-level function to a binary file. More...
 
virtual std::error_code write (const StringMap< FunctionSamples > &ProfileMap) override
 Write all the sample profiles in the given map of samples. More...
 
- Public Member Functions inherited from llvm::sampleprof::SampleProfileWriterBinary
 SampleProfileWriterBinary (std::unique_ptr< raw_ostream > &OS)
 
- Public Member Functions inherited from llvm::sampleprof::SampleProfileWriter
virtual ~SampleProfileWriter ()=default
 
raw_ostreamgetOutputStream ()
 

Protected Member Functions

virtual std::error_code writeNameTable () override
 
virtual std::error_code writeMagicIdent () override
 
virtual std::error_code writeHeader (const StringMap< FunctionSamples > &ProfileMap) override
 Write a file header for the profile file. More...
 
std::error_code writeFuncOffsetTable ()
 
- Protected Member Functions inherited from llvm::sampleprof::SampleProfileWriterBinary
std::error_code writeSummary ()
 
std::error_code writeNameIdx (StringRef FName)
 
std::error_code writeBody (const FunctionSamples &S)
 
void stablizeNameTable (std::set< StringRef > &V)
 
- Protected Member Functions inherited from llvm::sampleprof::SampleProfileWriter
 SampleProfileWriter (std::unique_ptr< raw_ostream > &OS)
 
void computeSummary (const StringMap< FunctionSamples > &ProfileMap)
 Compute summary for this profile. More...
 

Protected Attributes

MapVector< StringRef, uint64_t > FuncOffsetTable
 The table mapping from function name to the offset of its FunctionSample towards profile start. More...
 
uint64_t TableOffset
 The offset of the slot to be filled with the offset of FuncOffsetTable towards profile start. More...
 
- Protected Attributes inherited from llvm::sampleprof::SampleProfileWriterBinary
MapVector< StringRef, uint32_tNameTable
 
- Protected Attributes inherited from llvm::sampleprof::SampleProfileWriter
std::unique_ptr< raw_ostreamOutputStream
 Output stream where to emit the profile to. More...
 
std::unique_ptr< ProfileSummarySummary
 Profile summary. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from llvm::sampleprof::SampleProfileWriter
static ErrorOr< std::unique_ptr< SampleProfileWriter > > create (StringRef Filename, SampleProfileFormat Format)
 Profile writer factory. More...
 
static ErrorOr< std::unique_ptr< SampleProfileWriter > > create (std::unique_ptr< raw_ostream > &OS, SampleProfileFormat Format)
 Create a new stream writer based on the value of Format. More...
 

Detailed Description

Definition at line 169 of file SampleProfWriter.h.

Member Function Documentation

◆ write() [1/2]

std::error_code SampleProfileWriterCompactBinary::write ( const FunctionSamples S)
overridevirtual

Write samples of a top-level function to a binary file.

Returns
true if the samples were written successfully, false otherwise.

Reimplemented from llvm::sampleprof::SampleProfileWriterBinary.

Definition at line 335 of file SampleProfWriter.cpp.

References llvm::encodeULEB128(), llvm::sampleprof::FunctionSamples::getHeadSamples(), llvm::sampleprof::FunctionSamples::getName(), Name, and llvm::sampleprof::SampleProfileWriter::OutputStream.

◆ write() [2/2]

std::error_code SampleProfileWriterCompactBinary::write ( const StringMap< FunctionSamples > &  ProfileMap)
overridevirtual

Write all the sample profiles in the given map of samples.

Returns
status code of the file update operation.

Reimplemented from llvm::sampleprof::SampleProfileWriter.

Definition at line 69 of file SampleProfWriter.cpp.

References llvm::success, and llvm::sampleprof::SampleProfileWriter::write().

◆ writeFuncOffsetTable()

std::error_code SampleProfileWriterCompactBinary::writeFuncOffsetTable ( )
protected

◆ writeHeader()

std::error_code SampleProfileWriterCompactBinary::writeHeader ( const StringMap< FunctionSamples > &  ProfileMap)
overrideprotectedvirtual

◆ writeMagicIdent()

std::error_code SampleProfileWriterCompactBinary::writeMagicIdent ( )
overrideprotectedvirtual

◆ writeNameTable()

std::error_code SampleProfileWriterCompactBinary::writeNameTable ( )
overrideprotectedvirtual

Member Data Documentation

◆ FuncOffsetTable

MapVector<StringRef, uint64_t> llvm::sampleprof::SampleProfileWriterCompactBinary::FuncOffsetTable
protected

The table mapping from function name to the offset of its FunctionSample towards profile start.

Definition at line 180 of file SampleProfWriter.h.

◆ TableOffset

uint64_t llvm::sampleprof::SampleProfileWriterCompactBinary::TableOffset
protected

The offset of the slot to be filled with the offset of FuncOffsetTable towards profile start.

Definition at line 183 of file SampleProfWriter.h.


The documentation for this class was generated from the following files: