gem5  v22.0.0.1
Public Member Functions | Protected Types | List of all members
gem5::GenericISA::SimplePCState< InstWidth > Class Template Reference

#include <pcstate.hh>

Inheritance diagram for gem5::GenericISA::SimplePCState< InstWidth >:
gem5::GenericISA::PCStateWithNext gem5::PCStateBase gem5::Serializable gem5::GenericISA::DelaySlotPCState< 4 > gem5::GenericISA::DelaySlotPCState< InstWidth > gem5::GenericISA::UPCState< InstWidth > gem5::GenericISA::UPCState< 4 > gem5::GenericISA::UPCState< 8 > gem5::GenericISA::DelaySlotUPCState< InstWidth > gem5::RiscvISA::PCState gem5::X86ISA::PCState

Public Member Functions

 SimplePCState (const SimplePCState &other)
 
SimplePCStateoperator= (const SimplePCState &other)=default
 
 SimplePCState ()
 
 SimplePCState (Addr val)
 
PCStateBaseclone () const override
 
void set (Addr val)
 Force this PC to reflect a particular value, resetting all its other fields around it. More...
 
bool branching () const override
 
void advance () override
 
- Public Member Functions inherited from gem5::GenericISA::PCStateWithNext
Addr pc () const
 
void pc (Addr val)
 
Addr npc () const
 
void npc (Addr val)
 
MicroPC upc () const
 
void upc (MicroPC val)
 
MicroPC nupc () const
 
void nupc (MicroPC val)
 
void uReset () override
 
void setNPC (Addr val)
 
void output (std::ostream &os) const override
 
void update (const PCStateBase &other) override
 
bool equals (const PCStateBase &other) const override
 
void serialize (CheckpointOut &cp) const override
 Serialize an object. More...
 
void unserialize (CheckpointIn &cp) override
 Unserialize an object. More...
 
- Public Member Functions inherited from gem5::PCStateBase
virtual ~PCStateBase ()=default
 
template<class Target >
Target & as ()
 
template<class Target >
const Target & as () const
 
void update (const PCStateBase *ptr)
 
Addr instAddr () const
 Returns the memory address of the instruction this PC points to. More...
 
MicroPC microPC () const
 Returns the current micropc. More...
 
- Public Member Functions inherited from gem5::Serializable
 Serializable ()
 
virtual ~Serializable ()
 
void serializeSection (CheckpointOut &cp, const char *name) const
 Serialize an object into a new section. More...
 
void serializeSection (CheckpointOut &cp, const std::string &name) const
 
void unserializeSection (CheckpointIn &cp, const char *name)
 Unserialize an a child object. More...
 
void unserializeSection (CheckpointIn &cp, const std::string &name)
 

Protected Types

typedef PCStateWithNext Base
 

Additional Inherited Members

- Static Public Member Functions inherited from gem5::Serializable
static const std::string & currentSection ()
 Gets the fully-qualified name of the active section. More...
 
static void generateCheckpointOut (const std::string &cpt_dir, std::ofstream &outstream)
 Generate a checkpoint file so that the serialization can be routed to it. More...
 
- Protected Member Functions inherited from gem5::GenericISA::PCStateWithNext
 PCStateWithNext (const PCStateWithNext &other)
 
PCStateWithNextoperator= (const PCStateWithNext &other)=default
 
 PCStateWithNext ()
 
- Protected Member Functions inherited from gem5::PCStateBase
 PCStateBase (const PCStateBase &other)
 
PCStateBaseoperator= (const PCStateBase &other)=default
 
 PCStateBase ()
 
- Protected Attributes inherited from gem5::GenericISA::PCStateWithNext
Addr _npc = 0
 
MicroPC _nupc = 1
 
- Protected Attributes inherited from gem5::PCStateBase
Addr _pc = 0
 
MicroPC _upc = 0
 

Detailed Description

template<int InstWidth>
class gem5::GenericISA::SimplePCState< InstWidth >

Definition at line 338 of file pcstate.hh.

Member Typedef Documentation

◆ Base

template<int InstWidth>
typedef PCStateWithNext gem5::GenericISA::SimplePCState< InstWidth >::Base
protected

Definition at line 341 of file pcstate.hh.

Constructor & Destructor Documentation

◆ SimplePCState() [1/3]

template<int InstWidth>
gem5::GenericISA::SimplePCState< InstWidth >::SimplePCState ( const SimplePCState< InstWidth > &  other)
inline

Definition at line 344 of file pcstate.hh.

◆ SimplePCState() [2/3]

template<int InstWidth>
gem5::GenericISA::SimplePCState< InstWidth >::SimplePCState ( )
inline

Definition at line 346 of file pcstate.hh.

◆ SimplePCState() [3/3]

template<int InstWidth>
gem5::GenericISA::SimplePCState< InstWidth >::SimplePCState ( Addr  val)
inlineexplicit

Definition at line 347 of file pcstate.hh.

Member Function Documentation

◆ advance()

template<int InstWidth>
void gem5::GenericISA::SimplePCState< InstWidth >::advance ( )
inlineoverridevirtual

◆ branching()

template<int InstWidth>
bool gem5::GenericISA::SimplePCState< InstWidth >::branching ( ) const
inlineoverridevirtual

◆ clone()

template<int InstWidth>
PCStateBase* gem5::GenericISA::SimplePCState< InstWidth >::clone ( ) const
inlineoverridevirtual

◆ operator=()

template<int InstWidth>
SimplePCState& gem5::GenericISA::SimplePCState< InstWidth >::operator= ( const SimplePCState< InstWidth > &  other)
default

◆ set()

template<int InstWidth>
void gem5::GenericISA::SimplePCState< InstWidth >::set ( Addr  val)
inline

Force this PC to reflect a particular value, resetting all its other fields around it.

This is useful for in place (re)initialization.

Parameters
valThe value to set the PC to.

Definition at line 362 of file pcstate.hh.

Referenced by gem5::ArmISA::SkipFunc::returnFromFuncIn(), gem5::X86ISA::PCState::set(), gem5::GenericISA::UPCState< 8 >::set(), gem5::GenericISA::DelaySlotPCState< 4 >::set(), gem5::ArmISA::RemoteGDB::AArch32GdbRegCache::setRegs(), gem5::ArmISA::RemoteGDB::AArch64GdbRegCache::setRegs(), and gem5::GenericISA::SimplePCState< 4 >::SimplePCState().


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

Generated on Sat Jun 18 2022 08:14:21 for gem5 by doxygen 1.8.17