gem5  v22.1.0.0
Public Member Functions | Protected Attributes | List of all members
gem5::ArmISA::PMU::PMUEvent Struct Referenceabstract

Event definition base class. More...

#include <pmu.hh>

Inheritance diagram for gem5::ArmISA::PMU::PMUEvent:
gem5::ArmISA::PMU::RegularEvent gem5::ArmISA::PMU::SWIncrementEvent

Public Member Functions

 PMUEvent ()
 
virtual ~PMUEvent ()
 
void attachEvent (PMU::CounterState *user)
 attach this event to a given counter More...
 
void detachEvent (PMU::CounterState *user)
 detach this event from a given counter More...
 
virtual void increment (const uint64_t val)
 notify an event increment of val units, all the attached counters' value is incremented by val units. More...
 
virtual void enable ()=0
 Enable the current event. More...
 
virtual void disable ()=0
 Disable the current event. More...
 
virtual void updateAttachedCounters ()
 Method called immediately before a counter access in order for the associated event to update its state (if required) More...
 

Protected Attributes

std::set< PMU::CounterState * > userCounters
 set of counters using this event
More...
 

Detailed Description

Event definition base class.

Definition at line 295 of file pmu.hh.

Constructor & Destructor Documentation

◆ PMUEvent()

gem5::ArmISA::PMU::PMUEvent::PMUEvent ( )
inline

Definition at line 298 of file pmu.hh.

◆ ~PMUEvent()

virtual gem5::ArmISA::PMU::PMUEvent::~PMUEvent ( )
inlinevirtual

Definition at line 300 of file pmu.hh.

Member Function Documentation

◆ attachEvent()

void gem5::ArmISA::PMU::PMUEvent::attachEvent ( PMU::CounterState user)

attach this event to a given counter

Parameters
apointer to the counter where to attach this event

Definition at line 440 of file pmu.cc.

References enable(), updateAttachedCounters(), and userCounters.

◆ detachEvent()

void gem5::ArmISA::PMU::PMUEvent::detachEvent ( PMU::CounterState user)

detach this event from a given counter

Parameters
apointer to the counter where to detach this event from

Definition at line 458 of file pmu.cc.

References gem5::trace::disable().

◆ disable()

virtual void gem5::ArmISA::PMU::PMUEvent::disable ( )
pure virtual

Disable the current event.

Implemented in gem5::ArmISA::PMU::SWIncrementEvent, and gem5::ArmISA::PMU::RegularEvent.

◆ enable()

virtual void gem5::ArmISA::PMU::PMUEvent::enable ( )
pure virtual

Enable the current event.

Implemented in gem5::ArmISA::PMU::SWIncrementEvent, and gem5::ArmISA::PMU::RegularEvent.

Referenced by attachEvent().

◆ increment()

void gem5::ArmISA::PMU::PMUEvent::increment ( const uint64_t  val)
virtual

notify an event increment of val units, all the attached counters' value is incremented by val units.

Parameters
thequantity by which to increment the attached counter values

Definition at line 450 of file pmu.cc.

References gem5::X86ISA::val.

◆ updateAttachedCounters()

virtual void gem5::ArmISA::PMU::PMUEvent::updateAttachedCounters ( )
inlinevirtual

Method called immediately before a counter access in order for the associated event to update its state (if required)

Definition at line 339 of file pmu.hh.

Referenced by attachEvent().

Member Data Documentation

◆ userCounters

std::set<PMU::CounterState*> gem5::ArmISA::PMU::PMUEvent::userCounters
protected

set of counters using this event

Definition at line 344 of file pmu.hh.

Referenced by attachEvent().


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

Generated on Wed Dec 21 2022 10:23:36 for gem5 by doxygen 1.9.1