gem5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Public Attributes | Private Attributes | List of all members
RegOrImmOperand< RegOperand, T > Class Template Reference

#include <operand.hh>

Inheritance diagram for RegOrImmOperand< RegOperand, T >:
BaseOperand

Public Member Functions

void setImm (const bool value)
 
 RegOrImmOperand ()
 
void init (unsigned opOffset, const BrigObject *obj)
 
void init_from_vect (unsigned opOffset, const BrigObject *obj, int at)
 
std::string disassemble ()
 
template<typename OperandType >
OperandType get (Wavefront *w, int lane)
 
uint32_t opSize ()
 
bool isVectorRegister ()
 
bool isCondRegister ()
 
bool isScalarRegister ()
 
unsigned int regIndex ()
 
- Public Member Functions inherited from BaseOperand
 BaseOperand ()
 
bool isVectorRegister ()
 
bool isScalarRegister ()
 
bool isCondRegister ()
 
unsigned int regIndex ()
 
uint32_t opSize ()
 
virtual ~BaseOperand ()
 

Public Attributes

ImmOperand< T > imm_op
 
RegOperand reg_op
 
- Public Attributes inherited from BaseOperand
Enums::RegisterType registerType
 
uint32_t regOperandSize
 

Private Attributes

bool is_imm
 

Detailed Description

template<typename RegOperand, typename T>
class RegOrImmOperand< RegOperand, T >

Definition at line 456 of file operand.hh.

Constructor & Destructor Documentation

template<typename RegOperand , typename T >
RegOrImmOperand< RegOperand, T >::RegOrImmOperand ( )
inline

Definition at line 467 of file operand.hh.

References RegOrImmOperand< RegOperand, T >::is_imm.

Member Function Documentation

template<typename RegOperand , typename T >
std::string RegOrImmOperand< RegOperand, T >::disassemble ( )

Definition at line 571 of file operand.hh.

template<typename RegOperand , typename T >
template<typename OperandType >
OperandType RegOrImmOperand< RegOperand, T >::get ( Wavefront w,
int  lane 
)
inline
template<typename RegOperand , typename T >
void RegOrImmOperand< RegOperand, T >::init ( unsigned  opOffset,
const BrigObject obj 
)

Definition at line 531 of file operand.hh.

References fatal, BrigObject::getOperand(), and Brig::BrigBase::kind.

template<typename RegOperand , typename T >
void RegOrImmOperand< RegOperand, T >::init_from_vect ( unsigned  opOffset,
const BrigObject obj,
int  at 
)

Definition at line 550 of file operand.hh.

References fatal, BrigObject::getOperand(), and Brig::BrigBase::kind.

template<typename RegOperand , typename T >
bool RegOrImmOperand< RegOperand, T >::isCondRegister ( )
inline
template<typename RegOperand , typename T >
bool RegOrImmOperand< RegOperand, T >::isScalarRegister ( )
inline
template<typename RegOperand , typename T >
bool RegOrImmOperand< RegOperand, T >::isVectorRegister ( )
inline
template<typename RegOperand , typename T >
uint32_t RegOrImmOperand< RegOperand, T >::opSize ( )
inline
template<typename RegOperand , typename T >
unsigned int RegOrImmOperand< RegOperand, T >::regIndex ( )
inline
template<typename RegOperand , typename T >
void RegOrImmOperand< RegOperand, T >::setImm ( const bool  value)
inline

Definition at line 462 of file operand.hh.

References RegOrImmOperand< RegOperand, T >::is_imm.

Member Data Documentation

template<typename RegOperand , typename T >
ImmOperand<T> RegOrImmOperand< RegOperand, T >::imm_op

Definition at line 464 of file operand.hh.

Referenced by RegOrImmOperand< RegOperand, T >::get().

template<typename RegOperand , typename T >
bool RegOrImmOperand< RegOperand, T >::is_imm
private
template<typename RegOperand , typename T >
RegOperand RegOrImmOperand< RegOperand, T >::reg_op

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

Generated on Fri Jun 9 2017 13:04:18 for gem5 by doxygen 1.8.6