Jlm
Public Member Functions | Static Public Member Functions | Private Attributes | List of all members
jlm::llvm::DeadNodeElimination::Statistics Class Referencefinal

Dead Node Elimination statistics class. More...

Inheritance diagram for jlm::llvm::DeadNodeElimination::Statistics:
Inheritance graph
[legend]
Collaboration diagram for jlm::llvm::DeadNodeElimination::Statistics:
Collaboration graph
[legend]

Public Member Functions

 ~Statistics () override=default
 
 Statistics (const util::FilePath &sourceFile)
 
void StartMarkStatistics (const rvsdg::Graph &graph) noexcept
 
void StopMarkStatistics () noexcept
 
void StartSweepStatistics () noexcept
 
void StopSweepStatistics (const rvsdg::Graph &graph) noexcept
 
- Public Member Functions inherited from jlm::util::Statistics
 Statistics (const Statistics::Id &statisticsId, util::FilePath sourceFile)
 
Statistics::Id GetId () const noexcept
 
std::string_view GetName () const
 
const util::FilePathGetSourceFile () const
 
std::string Serialize (char fieldSeparator, char nameValueSeparator) const
 
bool HasMeasurement (const std::string &name) const noexcept
 
const MeasurementGetMeasurement (const std::string &name) const
 
template<typename T >
const T & GetMeasurementValue (const std::string &name) const
 
IteratorRange< MeasurementList::const_iterator > GetMeasurements () const
 
bool HasTimer (const std::string &name) const noexcept
 
size_t GetTimerElapsedNanoseconds (const std::string &name) const
 
IteratorRange< TimerList::const_iterator > GetTimers () const
 

Static Public Member Functions

static std::unique_ptr< StatisticsCreate (const util::FilePath &sourceFile)
 

Private Attributes

const char * MarkTimerLabel_ = "MarkTime"
 
const char * SweepTimerLabel_ = "SweepTime"
 

Additional Inherited Members

- Public Types inherited from jlm::util::Statistics
enum class  Id {
  FirstEnumValue , Aggregation , AgnosticModRefSummarizer , AliasAnalysisPrecisionEvaluation ,
  AndersenAnalysis , Annotation , CommonNodeElimination , ControlFlowRecovery ,
  DataNodeToDelta , DeadNodeElimination , FunctionInlining , IfConversion ,
  InvariantValueRedirection , JlmToRvsdgConversion , LoopUnrolling , LoopUnswitching ,
  MemoryStateEncoder , PullNodes , PushNodes , ReduceNodes ,
  RegionAwareModRefSummarizer , RvsdgConstruction , RvsdgDestruction , RvsdgOptimization ,
  RvsdgTreePrinter , ScalarEvolution , LastEnumValue
}
 
using Measurement = std::variant< std::string, int64_t, uint64_t, double >
 
using MeasurementList = std::list< std::pair< std::string, Measurement > >
 
using TimerList = std::list< std::pair< std::string, util::Timer > >
 
- Protected Member Functions inherited from jlm::util::Statistics
template<typename T >
void AddMeasurement (std::string name, T value)
 
util::TimerAddTimer (std::string name)
 
util::TimerGetTimer (const std::string &name)
 
const util::TimerGetTimer (const std::string &name) const
 

Detailed Description

Dead Node Elimination statistics class.

Definition at line 95 of file DeadNodeElimination.cpp.

Constructor & Destructor Documentation

◆ ~Statistics()

jlm::llvm::DeadNodeElimination::Statistics::~Statistics ( )
overridevirtualdefault

Reimplemented from jlm::util::Statistics.

◆ Statistics()

jlm::llvm::DeadNodeElimination::Statistics::Statistics ( const util::FilePath sourceFile)
inlineexplicit

Definition at line 103 of file DeadNodeElimination.cpp.

Member Function Documentation

◆ Create()

static std::unique_ptr<Statistics> jlm::llvm::DeadNodeElimination::Statistics::Create ( const util::FilePath sourceFile)
inlinestatic

Definition at line 136 of file DeadNodeElimination.cpp.

◆ StartMarkStatistics()

void jlm::llvm::DeadNodeElimination::Statistics::StartMarkStatistics ( const rvsdg::Graph graph)
inlinenoexcept

Definition at line 108 of file DeadNodeElimination.cpp.

◆ StartSweepStatistics()

void jlm::llvm::DeadNodeElimination::Statistics::StartSweepStatistics ( )
inlinenoexcept

Definition at line 122 of file DeadNodeElimination.cpp.

◆ StopMarkStatistics()

void jlm::llvm::DeadNodeElimination::Statistics::StopMarkStatistics ( )
inlinenoexcept

Definition at line 116 of file DeadNodeElimination.cpp.

◆ StopSweepStatistics()

void jlm::llvm::DeadNodeElimination::Statistics::StopSweepStatistics ( const rvsdg::Graph graph)
inlinenoexcept

Definition at line 128 of file DeadNodeElimination.cpp.

Member Data Documentation

◆ MarkTimerLabel_

const char* jlm::llvm::DeadNodeElimination::Statistics::MarkTimerLabel_ = "MarkTime"
private

Definition at line 97 of file DeadNodeElimination.cpp.

◆ SweepTimerLabel_

const char* jlm::llvm::DeadNodeElimination::Statistics::SweepTimerLabel_ = "SweepTime"
private

Definition at line 98 of file DeadNodeElimination.cpp.


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