Logo SoCRocket

Transaction-Level Modeling Framework for Space Applications

Public Member Functions | List of all members
trap::ABIIf< regWidth > Class Template Referenceabstract

#include <ABIIf.hpp>

Inheritance diagram for trap::ABIIf< regWidth >:
Collaboration diagram for trap::ABIIf< regWidth >:

Public Member Functions

bool matchEndian () const throw ()
 
virtual void preCall () throw ()
 
virtual void postCall () throw ()
 
virtual void returnFromCall () throw ()
 
virtual int getProcessorID () const throw ()
 
virtual bool isInstrExecuting () const =0 throw ()
 
virtual void waitInstrEnd () const =0 throw ()
 
virtual bool isLittleEndian () const =0 throw ()
 
virtual regWidth readLR () const throw ()
 
virtual void setLR (const regWidth &newValue) throw ()
 
virtual regWidth readPC () const =0 throw ()
 
virtual void setPC (const regWidth &newValue)=0 throw ()
 
virtual regWidth readSP () const throw ()
 
virtual void setSP (const regWidth &newValue) throw ()
 
virtual regWidth readFP () const throw ()
 
virtual void setFP (const regWidth &newValue) throw ()
 
virtual regWidth readRetVal () const =0 throw ()
 
virtual void setRetVal (const regWidth &newValue)=0 throw ()
 
virtual std::vector< regWidth > readArgs () const =0 throw ()
 
virtual unsigned int nGDBRegs () const =0 throw ()
 
virtual void setArgs (const std::vector< regWidth > &args)=0 throw ()
 
virtual regWidth readGDBReg (const unsigned int &gdbId) const =0 throw ()
 
virtual void setGDBReg (const regWidth &newValue, const unsigned int &gdbId)=0 throw ()
 
virtual regWidth readMem (const regWidth &address)=0
 
virtual unsigned char readCharMem (const regWidth &address)=0
 
virtual void writeMem (const regWidth &address, regWidth datum)=0
 
virtual void writeCharMem (const regWidth &address, unsigned char datum)=0
 
virtual regWidth getCodeLimit ()=0
 
virtual bool isRoutineEntry (const InstructionBase *instr)=0 throw ()
 
virtual bool isRoutineExit (const InstructionBase *instr)=0 throw ()
 
virtual unsigned chargetState () const =0 throw ()
 
virtual void setState (unsigned char *state)=0 throw ()
 
virtual void setExitValue (unsigned int value)=0 throw ()
 
virtual unsigned int getExitValue ()=0 throw ()
 
virtual ~ABIIf ()
 

Constructor & Destructor Documentation

template<class regWidth>
virtual trap::ABIIf< regWidth >::~ABIIf ( )
inlinevirtual

Member Function Documentation

template<class regWidth>
virtual regWidth trap::ABIIf< regWidth >::getCodeLimit ( )
pure virtual
template<class regWidth>
virtual unsigned int trap::ABIIf< regWidth >::getExitValue ( )
throw (
)
pure virtual
template<class regWidth>
virtual int trap::ABIIf< regWidth >::getProcessorID ( ) const
throw (
)
inlinevirtual

Reimplemented in leon3_funclt_trap::LEON3_ABIIf.

template<class regWidth>
virtual unsigned char* trap::ABIIf< regWidth >::getState ( ) const
throw (
)
pure virtual
template<class regWidth>
virtual bool trap::ABIIf< regWidth >::isInstrExecuting ( ) const
throw (
)
pure virtual
template<class regWidth>
virtual bool trap::ABIIf< regWidth >::isLittleEndian ( ) const
throw (
)
pure virtual
template<class regWidth>
virtual bool trap::ABIIf< regWidth >::isRoutineEntry ( const InstructionBase instr)
throw (
)
pure virtual
template<class regWidth>
virtual bool trap::ABIIf< regWidth >::isRoutineExit ( const InstructionBase instr)
throw (
)
pure virtual
template<class regWidth>
bool trap::ABIIf< regWidth >::matchEndian ( ) const
throw (
)
inline
template<class regWidth>
virtual unsigned int trap::ABIIf< regWidth >::nGDBRegs ( ) const
throw (
)
pure virtual
template<class regWidth>
virtual void trap::ABIIf< regWidth >::postCall ( )
throw (
)
inlinevirtual
template<class regWidth>
virtual void trap::ABIIf< regWidth >::preCall ( )
throw (
)
inlinevirtual
template<class regWidth>
virtual std::vector<regWidth> trap::ABIIf< regWidth >::readArgs ( ) const
throw (
)
pure virtual
template<class regWidth>
virtual unsigned char trap::ABIIf< regWidth >::readCharMem ( const regWidth &  address)
pure virtual
template<class regWidth>
virtual regWidth trap::ABIIf< regWidth >::readFP ( ) const
throw (
)
inlinevirtual

Reimplemented in leon3_funclt_trap::LEON3_ABIIf.

template<class regWidth>
virtual regWidth trap::ABIIf< regWidth >::readGDBReg ( const unsigned int gdbId) const
throw (
)
pure virtual
template<class regWidth>
virtual regWidth trap::ABIIf< regWidth >::readLR ( ) const
throw (
)
inlinevirtual
template<class regWidth>
virtual regWidth trap::ABIIf< regWidth >::readMem ( const regWidth &  address)
pure virtual
template<class regWidth>
virtual regWidth trap::ABIIf< regWidth >::readPC ( ) const
throw (
)
pure virtual
template<class regWidth>
virtual regWidth trap::ABIIf< regWidth >::readRetVal ( ) const
throw (
)
pure virtual
template<class regWidth>
virtual regWidth trap::ABIIf< regWidth >::readSP ( ) const
throw (
)
inlinevirtual

Reimplemented in leon3_funclt_trap::LEON3_ABIIf.

template<class regWidth>
virtual void trap::ABIIf< regWidth >::returnFromCall ( )
throw (
)
inlinevirtual
template<class regWidth>
virtual void trap::ABIIf< regWidth >::setArgs ( const std::vector< regWidth > &  args)
throw (
)
pure virtual
template<class regWidth>
virtual void trap::ABIIf< regWidth >::setExitValue ( unsigned int  value)
throw (
)
pure virtual
template<class regWidth>
virtual void trap::ABIIf< regWidth >::setFP ( const regWidth &  newValue)
throw (
)
inlinevirtual

Reimplemented in leon3_funclt_trap::LEON3_ABIIf.

template<class regWidth>
virtual void trap::ABIIf< regWidth >::setGDBReg ( const regWidth &  newValue,
const unsigned int gdbId 
)
throw (
)
pure virtual
template<class regWidth>
virtual void trap::ABIIf< regWidth >::setLR ( const regWidth &  newValue)
throw (
)
inlinevirtual

Reimplemented in leon3_funclt_trap::LEON3_ABIIf.

template<class regWidth>
virtual void trap::ABIIf< regWidth >::setPC ( const regWidth &  newValue)
throw (
)
pure virtual
template<class regWidth>
virtual void trap::ABIIf< regWidth >::setRetVal ( const regWidth &  newValue)
throw (
)
pure virtual
template<class regWidth>
virtual void trap::ABIIf< regWidth >::setSP ( const regWidth &  newValue)
throw (
)
inlinevirtual

Reimplemented in leon3_funclt_trap::LEON3_ABIIf.

template<class regWidth>
virtual void trap::ABIIf< regWidth >::setState ( unsigned char state)
throw (
)
pure virtual
template<class regWidth>
virtual void trap::ABIIf< regWidth >::waitInstrEnd ( ) const
throw (
)
pure virtual
template<class regWidth>
virtual void trap::ABIIf< regWidth >::writeCharMem ( const regWidth &  address,
unsigned char  datum 
)
pure virtual
template<class regWidth>
virtual void trap::ABIIf< regWidth >::writeMem ( const regWidth &  address,
regWidth  datum 
)
pure virtual

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