gem5  v22.1.0.0
Classes | Public Types | Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | List of all members
gem5::PCEventQueue Class Reference

#include <pc_event.hh>

Inheritance diagram for gem5::PCEventQueue:
gem5::PCEventScope

Classes

class  MapCompare
 

Public Types

typedef Map::iterator iterator
 
typedef Map::const_iterator const_iterator
 

Public Member Functions

 PCEventQueue ()
 
 ~PCEventQueue ()
 
bool remove (PCEvent *event) override
 
bool schedule (PCEvent *event) override
 
bool service (Addr pc, ThreadContext *tc)
 
range_t equal_range (Addr pc)
 
range_t equal_range (PCEvent *event)
 
void dump () const
 

Protected Types

typedef std::vector< PCEvent * > Map
 
typedef std::pair< iterator, iteratorrange_t
 
typedef std::pair< const_iterator, const_iteratorconst_range_t
 

Protected Member Functions

bool doService (Addr pc, ThreadContext *tc)
 

Protected Attributes

Map pcMap
 

Detailed Description

Definition at line 74 of file pc_event.hh.

Member Typedef Documentation

◆ const_iterator

typedef Map::const_iterator gem5::PCEventQueue::const_iterator

Definition at line 100 of file pc_event.hh.

◆ const_range_t

Definition at line 104 of file pc_event.hh.

◆ iterator

typedef Map::iterator gem5::PCEventQueue::iterator

Definition at line 99 of file pc_event.hh.

◆ Map

Definition at line 96 of file pc_event.hh.

◆ range_t

Definition at line 103 of file pc_event.hh.

Constructor & Destructor Documentation

◆ PCEventQueue()

gem5::PCEventQueue::PCEventQueue ( )

Definition at line 44 of file pc_event.cc.

◆ ~PCEventQueue()

gem5::PCEventQueue::~PCEventQueue ( )

Definition at line 47 of file pc_event.cc.

Member Function Documentation

◆ doService()

bool gem5::PCEventQueue::doService ( Addr  pc,
ThreadContext tc 
)
protected

Definition at line 83 of file pc_event.cc.

References DPRINTF, equal_range(), gem5::ArmISA::i, gem5::MipsISA::pc, and gem5::PCEvent::pc().

Referenced by service().

◆ dump()

void gem5::PCEventQueue::dump ( ) const

Definition at line 101 of file pc_event.cc.

References gem5::cprintf(), gem5::curTick(), gem5::ArmISA::e, gem5::ArmISA::i, and pcMap.

◆ equal_range() [1/2]

PCEventQueue::range_t gem5::PCEventQueue::equal_range ( Addr  pc)

Definition at line 112 of file pc_event.cc.

References gem5::MipsISA::pc, and pcMap.

Referenced by doService(), and remove().

◆ equal_range() [2/2]

range_t gem5::PCEventQueue::equal_range ( PCEvent event)
inline

Definition at line 126 of file pc_event.hh.

References equal_range(), and gem5::MipsISA::event.

Referenced by equal_range().

◆ remove()

bool gem5::PCEventQueue::remove ( PCEvent event)
overridevirtual

◆ schedule()

bool gem5::PCEventQueue::schedule ( PCEvent event)
overridevirtual

Implements gem5::PCEventScope.

Definition at line 71 of file pc_event.cc.

References DPRINTF, gem5::MipsISA::event, and pcMap.

Referenced by gem5::o3::ThreadContext::schedule(), and gem5::SimpleThread::schedule().

◆ service()

bool gem5::PCEventQueue::service ( Addr  pc,
ThreadContext tc 
)
inline

Definition at line 117 of file pc_event.hh.

References doService(), gem5::MipsISA::pc, and pcMap.

Member Data Documentation

◆ pcMap

Map gem5::PCEventQueue::pcMap
protected

Definition at line 107 of file pc_event.hh.

Referenced by dump(), equal_range(), remove(), schedule(), and service().


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

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