LLVM 19.0.0git
Public Member Functions | Protected Member Functions | Friends | List of all members
llvm::sampleprof::SampleProfileWriterText Class Reference

Sample-based profile writer (text format). More...

#include "llvm/ProfileData/SampleProfWriter.h"

Inheritance diagram for llvm::sampleprof::SampleProfileWriterText:
Inheritance graph

Public Member Functions

std::error_code writeSample (const FunctionSamples &S) override
 Write samples to a text file.
- Public Member Functions inherited from llvm::sampleprof::SampleProfileWriter
virtual ~SampleProfileWriter ()=default
virtual std::error_code writeSample (const FunctionSamples &S)=0
 Write sample profiles in S.
virtual std::error_code write (const SampleProfileMap &ProfileMap)
 Write all the sample profiles in the given map of samples.
template<typename FunctionPruningStrategy = DefaultFunctionPruningStrategy>
std::error_code writeWithSizeLimit (SampleProfileMap &ProfileMap, size_t OutputSizeLimit)
 Write sample profiles up to given size limit, using the pruning strategy to drop some functions if necessary.
raw_ostreamgetOutputStream ()
virtual void setProfileSymbolList (ProfileSymbolList *PSL)
virtual void setToCompressAllSections ()
virtual void setUseMD5 ()
virtual void setPartialProfile ()
virtual void resetSecLayout (SectionLayout SL)

Protected Member Functions

 SampleProfileWriterText (std::unique_ptr< raw_ostream > &OS)
std::error_code writeHeader (const SampleProfileMap &ProfileMap) override
 Write a file header for the profile file.
- Protected Member Functions inherited from llvm::sampleprof::SampleProfileWriter
 SampleProfileWriter (std::unique_ptr< raw_ostream > &OS)
virtual std::error_code writeHeader (const SampleProfileMap &ProfileMap)=0
 Write a file header for the profile file.
virtual std::error_code writeFuncProfiles (const SampleProfileMap &ProfileMap)
std::error_code writeWithSizeLimitInternal (SampleProfileMap &ProfileMap, size_t OutputSizeLimit, FunctionPruningStrategy *Strategy)
void computeSummary (const SampleProfileMap &ProfileMap)
 Compute summary for this profile.


ErrorOr< std::unique_ptr< SampleProfileWriter > > SampleProfileWriter::create (std::unique_ptr< raw_ostream > &OS, SampleProfileFormat Format)

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.
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.
- Protected Attributes inherited from llvm::sampleprof::SampleProfileWriter
size_t LineCount
 For writeWithSizeLimit in text mode, each newline takes 1 additional byte on Windows when actually written to the file, but not written to a memory buffer.
std::unique_ptr< raw_ostreamOutputStream
 Output stream where to emit the profile to.
std::unique_ptr< ProfileSummarySummary
 Profile summary.
SampleProfileFormat Format = SPF_None
 Profile format.

Detailed Description

Sample-based profile writer (text format).

Definition at line 166 of file SampleProfWriter.h.

Constructor & Destructor Documentation

◆ SampleProfileWriterText()

llvm::sampleprof::SampleProfileWriterText::SampleProfileWriterText ( std::unique_ptr< raw_ostream > &  OS)

Definition at line 171 of file SampleProfWriter.h.

Member Function Documentation

◆ writeHeader()

std::error_code llvm::sampleprof::SampleProfileWriterText::writeHeader ( const SampleProfileMap ProfileMap)

Write a file header for the profile file.

Implements llvm::sampleprof::SampleProfileWriter.

Definition at line 174 of file SampleProfWriter.h.

References llvm::sampleprof::SampleProfileWriter::LineCount, and llvm::success.

◆ writeSample()

std::error_code SampleProfileWriterText::writeSample ( const FunctionSamples S)

Friends And Related Function Documentation

◆ SampleProfileWriter::create

ErrorOr< std::unique_ptr< SampleProfileWriter > > SampleProfileWriter::create ( std::unique_ptr< raw_ostream > &  OS,
SampleProfileFormat  Format 

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