gem5  v21.2.0.0
Public Member Functions | Protected Types | List of all members
gem5::GenericISA::UPCState< InstWidth > Class Template Reference

#include <pcstate.hh>

Inheritance diagram for gem5::GenericISA::UPCState< InstWidth >:
gem5::GenericISA::SimplePCState< InstWidth > gem5::GenericISA::PCStateWithNext gem5::PCStateBase gem5::Serializable

Public Member Functions

void output (std::ostream &os) const override
 
PCStateBaseclone () const override
 
void set (Addr val)
 
 UPCState (const UPCState &other)
 
UPCStateoperator= (const UPCState &other)=default
 
 UPCState ()
 
 UPCState (Addr val)
 
bool branching () const override
 
void uAdvance ()
 
void uEnd ()
 
- Public Member Functions inherited from gem5::GenericISA::SimplePCState< InstWidth >
 SimplePCState (const SimplePCState &other)
 
SimplePCStateoperator= (const SimplePCState &other)=default
 
 SimplePCState ()
 
 SimplePCState (Addr val)
 
void set (Addr val)
 Force this PC to reflect a particular value, resetting all its other fields around it. More...
 
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 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 SimplePCState< InstWidth > Base
 
- Protected Types inherited from gem5::GenericISA::SimplePCState< InstWidth >
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::UPCState< InstWidth >

Definition at line 385 of file pcstate.hh.

Member Typedef Documentation

◆ Base

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

Definition at line 388 of file pcstate.hh.

Constructor & Destructor Documentation

◆ UPCState() [1/3]

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

Definition at line 412 of file pcstate.hh.

◆ UPCState() [2/3]

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

Definition at line 414 of file pcstate.hh.

◆ UPCState() [3/3]

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

Definition at line 415 of file pcstate.hh.

Member Function Documentation

◆ branching()

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

Reimplemented from gem5::GenericISA::SimplePCState< InstWidth >.

Definition at line 418 of file pcstate.hh.

◆ clone()

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

Reimplemented from gem5::GenericISA::SimplePCState< InstWidth >.

Definition at line 399 of file pcstate.hh.

◆ operator=()

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

◆ output()

template<int InstWidth>
void gem5::GenericISA::UPCState< InstWidth >::output ( std::ostream &  os) const
inlineoverridevirtual

Reimplemented from gem5::GenericISA::PCStateWithNext.

Definition at line 392 of file pcstate.hh.

◆ set()

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

Definition at line 405 of file pcstate.hh.

Referenced by gem5::GenericISA::UPCState< 8 >::UPCState().

◆ uAdvance()

template<int InstWidth>
void gem5::GenericISA::UPCState< InstWidth >::uAdvance ( )
inline

Definition at line 426 of file pcstate.hh.

◆ uEnd()

template<int InstWidth>
void gem5::GenericISA::UPCState< InstWidth >::uEnd ( )
inline

Definition at line 434 of file pcstate.hh.

Referenced by gem5::RiscvISA::RiscvMicroInst::advancePC().


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

Generated on Tue Dec 21 2021 11:36:09 for gem5 by doxygen 1.8.17