gem5  v21.0.0.0
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
Public Types | Public Member Functions | Private Types | Private Attributes | List of all members
Episode::Action Class Reference

#include <episode.hh>

Public Types

enum  Type {
  Type::ACQUIRE, Type::RELEASE, Type::ATOMIC, Type::LOAD,
  Type::STORE
}
 

Public Member Functions

 Action (Type t, int num_lanes)
 
 ~Action ()
 
Type getType () const
 
void setLocation (int lane, Location loc)
 
Location getLocation (int lane) const
 
bool isAtomicAction () const
 
bool isMemFenceAction () const
 
const std::string printType () const
 

Private Types

typedef std::vector< LocationLocationList
 

Private Attributes

Type type
 
int numLanes
 
LocationList locations
 

Detailed Description

Definition at line 50 of file episode.hh.

Member Typedef Documentation

◆ LocationList

Definition at line 73 of file episode.hh.

Member Enumeration Documentation

◆ Type

enum Episode::Action::Type
strong
Enumerator
ACQUIRE 
RELEASE 
ATOMIC 
LOAD 
STORE 

Definition at line 52 of file episode.hh.

Constructor & Destructor Documentation

◆ Action()

Episode::Action::Action ( Type  t,
int  num_lanes 
)

Definition at line 271 of file episode.cc.

References AddressManager::INVALID_LOCATION, locations, and numLanes.

◆ ~Action()

Episode::Action::~Action ( )
inline

Definition at line 61 of file episode.hh.

Member Function Documentation

◆ getLocation()

AddressManager::Location Episode::Action::getLocation ( int  lane) const

◆ getType()

Type Episode::Action::getType ( ) const
inline

◆ isAtomicAction()

bool Episode::Action::isAtomicAction ( ) const

Definition at line 295 of file episode.cc.

References X86ISA::type.

◆ isMemFenceAction()

bool Episode::Action::isMemFenceAction ( ) const

Definition at line 301 of file episode.cc.

References X86ISA::type.

◆ printType()

const std::string Episode::Action::printType ( ) const

Definition at line 307 of file episode.cc.

References panic, and X86ISA::type.

◆ setLocation()

void Episode::Action::setLocation ( int  lane,
Location  loc 
)

Definition at line 281 of file episode.cc.

References Episode::numLanes.

Member Data Documentation

◆ locations

LocationList Episode::Action::locations
private

Definition at line 74 of file episode.hh.

Referenced by Action().

◆ numLanes

int Episode::Action::numLanes
private

Definition at line 72 of file episode.hh.

Referenced by Action().

◆ type

Type Episode::Action::type
private

Definition at line 71 of file episode.hh.

Referenced by getType().


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

Generated on Tue Mar 23 2021 19:41:35 for gem5 by doxygen 1.8.17