gem5 v24.0.0.0
|
#include <operand.hh>
Public Member Functions | |
VecOperand ()=delete | |
VecOperand (GPUDynInstPtr gpuDynInst, int opIdx) | |
~VecOperand () | |
void | readSrc () |
certain vector operands can read from the vrf/srf or constants. | |
void | read () override |
read from the vrf. | |
void | write () override |
write to the vrf. | |
void | negModifier () |
void | absModifier () |
template<bool Condition = (NumDwords == 1 || NumDwords == 2) && Const> | |
std::enable_if< Condition, constDataType >::type | operator[] (size_t idx) const |
getter [] operator. | |
template<bool Condition = (NumDwords == 1 || NumDwords == 2) && !Const> | |
std::enable_if< Condition, DataType & >::type | operator[] (size_t idx) |
setter [] operator. | |
Public Member Functions inherited from gem5::VegaISA::Operand | |
Operand ()=delete | |
Operand (GPUDynInstPtr gpuDynInst, int opIdx) | |
Private Types | |
using | VecRegCont |
Private Member Functions | |
void | readScalar () |
if we determine that this operand is a scalar (reg or constant) then we read the scalar data into the scalar operand data member. | |
Private Attributes | |
bool | scalar |
whether this operand a scalar or not. | |
bool | absMod |
absolute value and negative modifiers. | |
bool | negMod |
VecRegCont | vecReg |
this holds all the operand data in a single vector register object (i.e., if an operand is 64b, this will hold the data from both registers the operand is using). | |
ScalarOperand< DataType, Const, NumDwords > | scRegData |
for src operands that read scalars (i.e., scalar regs or a scalar constant). | |
std::array< VecRegContainerU32 *, NumDwords > | vrfData |
pointers to the underlyding registers (i.e., the actual registers in the register file). | |
Additional Inherited Members | |
Protected Attributes inherited from gem5::VegaISA::Operand | |
GPUDynInstPtr | _gpuDynInst |
instruction object that owns this operand | |
int | _opIdx |
op selector value for this operand. | |
Definition at line 102 of file operand.hh.
|
private |
Definition at line 331 of file operand.hh.
|
delete |
|
inline |
Definition at line 110 of file operand.hh.
|
inline |
Definition at line 118 of file operand.hh.
|
inline |
Definition at line 256 of file operand.hh.
Referenced by gem5::VegaISA::Inst_VOP3__V_ADD_F32::execute(), gem5::VegaISA::Inst_VOP3__V_ADD_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CEIL_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CEIL_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_EQ_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_GE_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_GT_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_LE_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_LG_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_LT_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_NEQ_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_NGE_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_NGT_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_NLE_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_NLG_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_NLT_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_O_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_U_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_EQ_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_GE_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_GT_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_LE_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_LG_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_LT_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_NEQ_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_NGE_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_NGT_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_NLE_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_NLG_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_NLT_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_O_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_U_F64::execute(), gem5::VegaISA::Inst_VOP3__V_COS_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_F32_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_F32_U32::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_F32_UBYTE0::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_F32_UBYTE1::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_F32_UBYTE2::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_F32_UBYTE3::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_F64_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_F64_I32::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_F64_U32::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_FLR_I32_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_I32_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_I32_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_PK_U8_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_RPI_I32_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_U32_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_U32_F64::execute(), gem5::VegaISA::Inst_VOP3__V_DIV_FIXUP_F32::execute(), gem5::VegaISA::Inst_VOP3__V_DIV_FIXUP_F64::execute(), gem5::VegaISA::Inst_VOP3__V_DIV_FMAS_F32::execute(), gem5::VegaISA::Inst_VOP3__V_DIV_FMAS_F64::execute(), gem5::VegaISA::Inst_VOP3__V_EXP_F32::execute(), gem5::VegaISA::Inst_VOP3__V_EXP_LEGACY_F32::execute(), gem5::VegaISA::Inst_VOP3__V_FFBH_I32::execute(), gem5::VegaISA::Inst_VOP3__V_FFBH_U32::execute(), gem5::VegaISA::Inst_VOP3__V_FFBL_B32::execute(), gem5::VegaISA::Inst_VOP3__V_FLOOR_F32::execute(), gem5::VegaISA::Inst_VOP3__V_FLOOR_F64::execute(), gem5::VegaISA::Inst_VOP3__V_FMA_F32::execute(), gem5::VegaISA::Inst_VOP3__V_FMA_F64::execute(), gem5::VegaISA::Inst_VOP3__V_FMAC_F32::execute(), gem5::VegaISA::Inst_VOP3__V_FRACT_F32::execute(), gem5::VegaISA::Inst_VOP3__V_FRACT_F64::execute(), gem5::VegaISA::Inst_VOP3__V_FREXP_EXP_I32_F32::execute(), gem5::VegaISA::Inst_VOP3__V_FREXP_EXP_I32_F64::execute(), gem5::VegaISA::Inst_VOP3__V_FREXP_MANT_F32::execute(), gem5::VegaISA::Inst_VOP3__V_FREXP_MANT_F64::execute(), gem5::VegaISA::Inst_VOP3__V_LDEXP_F64::execute(), gem5::VegaISA::Inst_VOP3__V_LOG_F32::execute(), gem5::VegaISA::Inst_VOP3__V_LSHRREV_B16::execute(), gem5::VegaISA::Inst_VOP3__V_MAC_F32::execute(), gem5::VegaISA::Inst_VOP3__V_MAD_F32::execute(), gem5::VegaISA::Inst_VOP3__V_MAD_LEGACY_F32::execute(), gem5::VegaISA::Inst_VOP3__V_MAX3_F32::execute(), gem5::VegaISA::Inst_VOP3__V_MAX_F32::execute(), gem5::VegaISA::Inst_VOP3__V_MAX_F64::execute(), gem5::VegaISA::Inst_VOP3__V_MAX_I16::execute(), gem5::VegaISA::Inst_VOP3__V_MAX_U16::execute(), gem5::VegaISA::Inst_VOP3__V_MED3_F32::execute(), gem5::VegaISA::Inst_VOP3__V_MIN3_F32::execute(), gem5::VegaISA::Inst_VOP3__V_MIN_F32::execute(), gem5::VegaISA::Inst_VOP3__V_MIN_F64::execute(), gem5::VegaISA::Inst_VOP3__V_MIN_I16::execute(), gem5::VegaISA::Inst_VOP3__V_MIN_U16::execute(), gem5::VegaISA::Inst_VOP3__V_MUL_F32::execute(), gem5::VegaISA::Inst_VOP3__V_MUL_F64::execute(), gem5::VegaISA::Inst_VOP3__V_MUL_LEGACY_F32::execute(), gem5::VegaISA::Inst_VOP3__V_NOT_B32::execute(), gem5::VegaISA::Inst_VOP3__V_RCP_F32::execute(), gem5::VegaISA::Inst_VOP3__V_RCP_F64::execute(), gem5::VegaISA::Inst_VOP3__V_RCP_IFLAG_F32::execute(), gem5::VegaISA::Inst_VOP3__V_RNDNE_F32::execute(), gem5::VegaISA::Inst_VOP3__V_RNDNE_F64::execute(), gem5::VegaISA::Inst_VOP3__V_RSQ_F32::execute(), gem5::VegaISA::Inst_VOP3__V_RSQ_F64::execute(), gem5::VegaISA::Inst_VOP3__V_SIN_F32::execute(), gem5::VegaISA::Inst_VOP3__V_SQRT_F32::execute(), gem5::VegaISA::Inst_VOP3__V_SQRT_F64::execute(), gem5::VegaISA::Inst_VOP3__V_SUB_F32::execute(), gem5::VegaISA::Inst_VOP3__V_SUBREV_F32::execute(), gem5::VegaISA::Inst_VOP3__V_TRUNC_F32::execute(), and gem5::VegaISA::Inst_VOP3__V_TRUNC_F64::execute().
|
inline |
Definition at line 250 of file operand.hh.
Referenced by gem5::VegaISA::Inst_VOP3__V_ADD_F32::execute(), gem5::VegaISA::Inst_VOP3__V_ADD_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CEIL_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CEIL_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_EQ_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_GE_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_GT_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_LE_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_LG_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_LT_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_NEQ_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_NGE_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_NGT_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_NLE_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_NLG_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_NLT_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_O_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_U_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_EQ_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_GE_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_GT_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_LE_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_LG_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_LT_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_NEQ_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_NGE_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_NGT_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_NLE_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_NLG_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_NLT_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_O_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_U_F64::execute(), gem5::VegaISA::Inst_VOP3__V_COS_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_F32_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_F32_U32::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_F32_UBYTE0::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_F32_UBYTE1::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_F32_UBYTE2::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_F32_UBYTE3::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_F64_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_F64_I32::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_F64_U32::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_FLR_I32_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_I32_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_I32_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_PK_U8_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_RPI_I32_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_U32_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_U32_F64::execute(), gem5::VegaISA::Inst_VOP3__V_DIV_FIXUP_F32::execute(), gem5::VegaISA::Inst_VOP3__V_DIV_FIXUP_F64::execute(), gem5::VegaISA::Inst_VOP3__V_DIV_FMAS_F32::execute(), gem5::VegaISA::Inst_VOP3__V_DIV_FMAS_F64::execute(), gem5::VegaISA::Inst_VOP3__V_DIV_SCALE_F32::execute(), gem5::VegaISA::Inst_VOP3__V_DIV_SCALE_F64::execute(), gem5::VegaISA::Inst_VOP3__V_EXP_F32::execute(), gem5::VegaISA::Inst_VOP3__V_EXP_LEGACY_F32::execute(), gem5::VegaISA::Inst_VOP3__V_FFBH_I32::execute(), gem5::VegaISA::Inst_VOP3__V_FFBH_U32::execute(), gem5::VegaISA::Inst_VOP3__V_FFBL_B32::execute(), gem5::VegaISA::Inst_VOP3__V_FLOOR_F32::execute(), gem5::VegaISA::Inst_VOP3__V_FLOOR_F64::execute(), gem5::VegaISA::Inst_VOP3__V_FMA_F32::execute(), gem5::VegaISA::Inst_VOP3__V_FMA_F64::execute(), gem5::VegaISA::Inst_VOP3__V_FMAC_F32::execute(), gem5::VegaISA::Inst_VOP3__V_FRACT_F32::execute(), gem5::VegaISA::Inst_VOP3__V_FRACT_F64::execute(), gem5::VegaISA::Inst_VOP3__V_FREXP_EXP_I32_F32::execute(), gem5::VegaISA::Inst_VOP3__V_FREXP_EXP_I32_F64::execute(), gem5::VegaISA::Inst_VOP3__V_FREXP_MANT_F32::execute(), gem5::VegaISA::Inst_VOP3__V_FREXP_MANT_F64::execute(), gem5::VegaISA::Inst_VOP3__V_LDEXP_F64::execute(), gem5::VegaISA::Inst_VOP3__V_LOG_F32::execute(), gem5::VegaISA::Inst_VOP3__V_LSHRREV_B16::execute(), gem5::VegaISA::Inst_VOP3__V_MAC_F32::execute(), gem5::VegaISA::Inst_VOP3__V_MAD_F32::execute(), gem5::VegaISA::Inst_VOP3__V_MAD_LEGACY_F32::execute(), gem5::VegaISA::Inst_VOP3__V_MAX3_F32::execute(), gem5::VegaISA::Inst_VOP3__V_MAX_F32::execute(), gem5::VegaISA::Inst_VOP3__V_MAX_F64::execute(), gem5::VegaISA::Inst_VOP3__V_MAX_I16::execute(), gem5::VegaISA::Inst_VOP3__V_MAX_U16::execute(), gem5::VegaISA::Inst_VOP3__V_MED3_F32::execute(), gem5::VegaISA::Inst_VOP3__V_MIN3_F32::execute(), gem5::VegaISA::Inst_VOP3__V_MIN_F32::execute(), gem5::VegaISA::Inst_VOP3__V_MIN_F64::execute(), gem5::VegaISA::Inst_VOP3__V_MIN_I16::execute(), gem5::VegaISA::Inst_VOP3__V_MIN_U16::execute(), gem5::VegaISA::Inst_VOP3__V_MUL_F32::execute(), gem5::VegaISA::Inst_VOP3__V_MUL_F64::execute(), gem5::VegaISA::Inst_VOP3__V_MUL_LEGACY_F32::execute(), gem5::VegaISA::Inst_VOP3__V_NOT_B32::execute(), gem5::VegaISA::Inst_VOP3__V_RCP_F32::execute(), gem5::VegaISA::Inst_VOP3__V_RCP_F64::execute(), gem5::VegaISA::Inst_VOP3__V_RCP_IFLAG_F32::execute(), gem5::VegaISA::Inst_VOP3__V_RNDNE_F32::execute(), gem5::VegaISA::Inst_VOP3__V_RNDNE_F64::execute(), gem5::VegaISA::Inst_VOP3__V_RSQ_F32::execute(), gem5::VegaISA::Inst_VOP3__V_RSQ_F64::execute(), gem5::VegaISA::Inst_VOP3__V_SIN_F32::execute(), gem5::VegaISA::Inst_VOP3__V_SQRT_F32::execute(), gem5::VegaISA::Inst_VOP3__V_SQRT_F64::execute(), gem5::VegaISA::Inst_VOP3__V_SUB_F32::execute(), gem5::VegaISA::Inst_VOP3__V_SUBREV_F32::execute(), gem5::VegaISA::Inst_VOP3__V_TRUNC_F32::execute(), and gem5::VegaISA::Inst_VOP3__V_TRUNC_F64::execute().
|
inline |
setter [] operator.
only enable if this operand is non-constant (i.e, a destination operand) and if it can be represented using primitive types (i.e., 8b to 64b primitives).
Definition at line 311 of file operand.hh.
References gem5::ArmISA::as, and gem5::ArmISA::NumVecElemPerVecReg.
|
inline |
getter [] operator.
only enable if this operand is constant (i.e, a source operand) and if it can be represented using primitive types (i.e., 8b to 64b primitives).
Definition at line 268 of file operand.hh.
References gem5::ArmISA::as, and gem5::ArmISA::NumVecElemPerVecReg.
|
inlineoverridevirtual |
read from the vrf.
this should only be used by vector inst source operands that are explicitly vector (i.e., VSRC).
Implements gem5::VegaISA::Operand.
Definition at line 147 of file operand.hh.
References gem5::ArmISA::as, DPRINTF, gem5::ArmISA::i, gem5::RegisterManager::mapVgpr(), gem5::ArmISA::NumVecElemPerVecReg, gem5::ComputeUnit::registerManager, gem5::Wavefront::simdId, and gem5::ComputeUnit::vrf.
Referenced by gem5::VegaISA::Inst_FLAT::calcAddr(), gem5::VegaISA::Inst_DS__DS_WRITE2_B32::execute(), gem5::VegaISA::Inst_DS__DS_WRITE2_B64::execute(), gem5::VegaISA::Inst_DS__DS_WRITE2ST64_B32::execute(), gem5::VegaISA::Inst_DS__DS_WRITE2ST64_B64::execute(), gem5::VegaISA::Inst_DS__DS_WRITE_B128::execute(), gem5::VegaISA::Inst_DS__DS_WRITE_B96::execute(), gem5::VegaISA::Inst_FLAT__FLAT_STORE_DWORDX3::execute(), gem5::VegaISA::Inst_FLAT__FLAT_STORE_DWORDX4::execute(), gem5::VegaISA::Inst_MUBUF__BUFFER_ATOMIC_CMPSWAP::execute(), gem5::VegaISA::Inst_MUBUF__BUFFER_LOAD_DWORD::execute(), gem5::VegaISA::Inst_MUBUF__BUFFER_LOAD_DWORDX2::execute(), gem5::VegaISA::Inst_MUBUF__BUFFER_LOAD_DWORDX3::execute(), gem5::VegaISA::Inst_MUBUF__BUFFER_LOAD_DWORDX4::execute(), gem5::VegaISA::Inst_MUBUF__BUFFER_LOAD_SHORT_D16::execute(), gem5::VegaISA::Inst_MUBUF__BUFFER_LOAD_SHORT_D16_HI::execute(), gem5::VegaISA::Inst_MUBUF__BUFFER_LOAD_UBYTE::execute(), gem5::VegaISA::Inst_MUBUF__BUFFER_LOAD_USHORT::execute(), gem5::VegaISA::Inst_MUBUF__BUFFER_STORE_BYTE::execute(), gem5::VegaISA::Inst_MUBUF__BUFFER_STORE_DWORD::execute(), gem5::VegaISA::Inst_MUBUF__BUFFER_STORE_DWORDX2::execute(), gem5::VegaISA::Inst_MUBUF__BUFFER_STORE_DWORDX3::execute(), gem5::VegaISA::Inst_MUBUF__BUFFER_STORE_DWORDX4::execute(), gem5::VegaISA::Inst_MUBUF__BUFFER_STORE_SHORT::execute(), gem5::VegaISA::Inst_VOP1__V_MOV_B32::execute(), gem5::VegaISA::Inst_VOP2__V_ADD_CO_U32::execute(), gem5::VegaISA::Inst_VOP2__V_ADD_F32::execute(), gem5::VegaISA::Inst_VOP2__V_ADD_U16::execute(), gem5::VegaISA::Inst_VOP2__V_ADD_U32::execute(), gem5::VegaISA::Inst_VOP2__V_ADDC_CO_U32::execute(), gem5::VegaISA::Inst_VOP2__V_AND_B32::execute(), gem5::VegaISA::Inst_VOP2__V_ASHRREV_I16::execute(), gem5::VegaISA::Inst_VOP2__V_ASHRREV_I32::execute(), gem5::VegaISA::Inst_VOP2__V_CNDMASK_B32::execute(), gem5::VegaISA::Inst_VOP2__V_FMAC_F32::execute(), gem5::VegaISA::Inst_VOP2__V_LSHLREV_B16::execute(), gem5::VegaISA::Inst_VOP2__V_LSHLREV_B32::execute(), gem5::VegaISA::Inst_VOP2__V_LSHRREV_B16::execute(), gem5::VegaISA::Inst_VOP2__V_LSHRREV_B32::execute(), gem5::VegaISA::Inst_VOP2__V_MAC_F32::execute(), gem5::VegaISA::Inst_VOP2__V_MADAK_F32::execute(), gem5::VegaISA::Inst_VOP2__V_MADMK_F32::execute(), gem5::VegaISA::Inst_VOP2__V_MAX_F32::execute(), gem5::VegaISA::Inst_VOP2__V_MAX_I16::execute(), gem5::VegaISA::Inst_VOP2__V_MAX_I32::execute(), gem5::VegaISA::Inst_VOP2__V_MAX_U16::execute(), gem5::VegaISA::Inst_VOP2__V_MAX_U32::execute(), gem5::VegaISA::Inst_VOP2__V_MIN_F32::execute(), gem5::VegaISA::Inst_VOP2__V_MIN_I16::execute(), gem5::VegaISA::Inst_VOP2__V_MIN_I32::execute(), gem5::VegaISA::Inst_VOP2__V_MIN_U16::execute(), gem5::VegaISA::Inst_VOP2__V_MIN_U32::execute(), gem5::VegaISA::Inst_VOP2__V_MUL_F32::execute(), gem5::VegaISA::Inst_VOP2__V_MUL_HI_I32_I24::execute(), gem5::VegaISA::Inst_VOP2__V_MUL_HI_U32_U24::execute(), gem5::VegaISA::Inst_VOP2__V_MUL_I32_I24::execute(), gem5::VegaISA::Inst_VOP2__V_MUL_LEGACY_F32::execute(), gem5::VegaISA::Inst_VOP2__V_MUL_LO_U16::execute(), gem5::VegaISA::Inst_VOP2__V_OR_B32::execute(), gem5::VegaISA::Inst_VOP2__V_SUB_CO_U32::execute(), gem5::VegaISA::Inst_VOP2__V_SUB_F32::execute(), gem5::VegaISA::Inst_VOP2__V_SUB_U16::execute(), gem5::VegaISA::Inst_VOP2__V_SUB_U32::execute(), gem5::VegaISA::Inst_VOP2__V_SUBB_CO_U32::execute(), gem5::VegaISA::Inst_VOP2__V_SUBBREV_CO_U32::execute(), gem5::VegaISA::Inst_VOP2__V_SUBREV_CO_U32::execute(), gem5::VegaISA::Inst_VOP2__V_SUBREV_F32::execute(), gem5::VegaISA::Inst_VOP2__V_SUBREV_U16::execute(), gem5::VegaISA::Inst_VOP2__V_SUBREV_U32::execute(), gem5::VegaISA::Inst_VOP2__V_XNOR_B32::execute(), gem5::VegaISA::Inst_VOP2__V_XOR_B32::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_F16_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_PK_FP8_F32::execute(), gem5::VegaISA::Inst_VOP3__V_FMAC_F32::execute(), gem5::VegaISA::Inst_VOP3__V_MAC_F32::execute(), gem5::VegaISA::Inst_VOP3__V_MAD_U64_U32::execute(), gem5::VegaISA::Inst_VOP3__V_MUL_I32_I24::execute(), gem5::VegaISA::Inst_VOP3__V_WRITELANE_B32::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_CLASS_F32::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_CLASS_F64::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_EQ_F32::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_EQ_F64::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_EQ_I16::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_EQ_I32::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_EQ_I64::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_EQ_U16::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_EQ_U32::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_EQ_U64::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_GE_F32::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_GE_F64::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_GE_I16::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_GE_I32::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_GE_I64::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_GE_U16::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_GE_U32::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_GE_U64::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_GT_F32::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_GT_F64::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_GT_I16::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_GT_I32::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_GT_I64::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_GT_U16::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_GT_U32::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_GT_U64::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_LE_F32::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_LE_F64::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_LE_I16::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_LE_I32::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_LE_I64::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_LE_U16::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_LE_U32::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_LE_U64::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_LG_F32::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_LG_F64::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_LT_F32::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_LT_F64::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_LT_I16::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_LT_I32::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_LT_I64::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_LT_U16::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_LT_U32::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_LT_U64::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_NE_I16::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_NE_I32::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_NE_I64::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_NE_U16::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_NE_U32::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_NE_U64::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_NEQ_F32::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_NEQ_F64::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_NGE_F32::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_NGE_F64::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_NGT_F32::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_NGT_F64::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_NLE_F32::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_NLE_F64::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_NLG_F32::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_NLG_F64::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_NLT_F32::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_NLT_F64::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_O_F32::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_O_F64::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_U_F32::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_U_F64::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_CLASS_F32::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_CLASS_F64::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_EQ_F32::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_EQ_F64::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_EQ_I16::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_EQ_I32::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_EQ_I64::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_EQ_U16::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_EQ_U32::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_EQ_U64::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_GE_F32::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_GE_F64::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_GE_I16::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_GE_I32::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_GE_I64::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_GE_U16::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_GE_U32::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_GE_U64::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_GT_F32::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_GT_F64::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_GT_I16::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_GT_I32::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_GT_I64::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_GT_U16::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_GT_U32::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_GT_U64::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_LE_F32::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_LE_F64::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_LE_I16::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_LE_I32::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_LE_I64::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_LE_U16::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_LE_U32::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_LE_U64::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_LG_F32::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_LG_F64::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_LT_F32::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_LT_F64::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_LT_I16::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_LT_I32::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_LT_I64::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_LT_U16::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_LT_U32::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_LT_U64::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_NE_I16::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_NE_I32::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_NE_I64::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_NE_U16::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_NE_U32::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_NE_U64::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_NEQ_F32::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_NEQ_F64::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_NGE_F32::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_NGE_F64::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_NGT_F32::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_NGT_F64::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_NLE_F32::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_NLE_F64::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_NLG_F32::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_NLG_F64::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_NLT_F32::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_NLT_F64::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_O_F32::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_O_F64::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_U_F32::execute(), and gem5::VegaISA::Inst_VOPC__V_CMPX_U_F64::execute().
|
inlineprivate |
if we determine that this operand is a scalar (reg or constant) then we read the scalar data into the scalar operand data member.
Definition at line 325 of file operand.hh.
|
inline |
certain vector operands can read from the vrf/srf or constants.
we use this method to first determine the type of the operand, then we read from the appropriate source. if vector we read directly from the vrf. if scalar, we read in the data through the scalar operand component. this should only be used for VSRC operands.
Definition at line 131 of file operand.hh.
References gem5::VegaISA::isVectorReg(), and gem5::VegaISA::opSelectorToRegIdx().
Referenced by gem5::VegaISA::Inst_VOP1__V_ACCVGPR_MOV_B32::execute(), gem5::VegaISA::Inst_VOP1__V_BFREV_B32::execute(), gem5::VegaISA::Inst_VOP1__V_CEIL_F32::execute(), gem5::VegaISA::Inst_VOP1__V_CEIL_F64::execute(), gem5::VegaISA::Inst_VOP1__V_COS_F32::execute(), gem5::VegaISA::Inst_VOP1__V_CVT_F16_F32::execute(), gem5::VegaISA::Inst_VOP1__V_CVT_F32_F16::execute(), gem5::VegaISA::Inst_VOP1__V_CVT_F32_F64::execute(), gem5::VegaISA::Inst_VOP1__V_CVT_F32_I32::execute(), gem5::VegaISA::Inst_VOP1__V_CVT_F32_U32::execute(), gem5::VegaISA::Inst_VOP1__V_CVT_F32_UBYTE0::execute(), gem5::VegaISA::Inst_VOP1__V_CVT_F32_UBYTE1::execute(), gem5::VegaISA::Inst_VOP1__V_CVT_F32_UBYTE2::execute(), gem5::VegaISA::Inst_VOP1__V_CVT_F32_UBYTE3::execute(), gem5::VegaISA::Inst_VOP1__V_CVT_F64_F32::execute(), gem5::VegaISA::Inst_VOP1__V_CVT_F64_I32::execute(), gem5::VegaISA::Inst_VOP1__V_CVT_F64_U32::execute(), gem5::VegaISA::Inst_VOP1__V_CVT_FLR_I32_F32::execute(), gem5::VegaISA::Inst_VOP1__V_CVT_I32_F32::execute(), gem5::VegaISA::Inst_VOP1__V_CVT_I32_F64::execute(), gem5::VegaISA::Inst_VOP1__V_CVT_RPI_I32_F32::execute(), gem5::VegaISA::Inst_VOP1__V_CVT_U32_F32::execute(), gem5::VegaISA::Inst_VOP1__V_CVT_U32_F64::execute(), gem5::VegaISA::Inst_VOP1__V_EXP_F32::execute(), gem5::VegaISA::Inst_VOP1__V_EXP_LEGACY_F32::execute(), gem5::VegaISA::Inst_VOP1__V_FFBH_I32::execute(), gem5::VegaISA::Inst_VOP1__V_FFBH_U32::execute(), gem5::VegaISA::Inst_VOP1__V_FFBL_B32::execute(), gem5::VegaISA::Inst_VOP1__V_FLOOR_F32::execute(), gem5::VegaISA::Inst_VOP1__V_FLOOR_F64::execute(), gem5::VegaISA::Inst_VOP1__V_FRACT_F32::execute(), gem5::VegaISA::Inst_VOP1__V_FRACT_F64::execute(), gem5::VegaISA::Inst_VOP1__V_FREXP_EXP_I32_F32::execute(), gem5::VegaISA::Inst_VOP1__V_FREXP_EXP_I32_F64::execute(), gem5::VegaISA::Inst_VOP1__V_FREXP_MANT_F32::execute(), gem5::VegaISA::Inst_VOP1__V_FREXP_MANT_F64::execute(), gem5::VegaISA::Inst_VOP1__V_LOG_F32::execute(), gem5::VegaISA::Inst_VOP1__V_LOG_LEGACY_F32::execute(), gem5::VegaISA::Inst_VOP1__V_MOV_B32::execute(), gem5::VegaISA::Inst_VOP1__V_MOV_B64::execute(), gem5::VegaISA::Inst_VOP1__V_NOT_B32::execute(), gem5::VegaISA::Inst_VOP1__V_RCP_F32::execute(), gem5::VegaISA::Inst_VOP1__V_RCP_F64::execute(), gem5::VegaISA::Inst_VOP1__V_RCP_IFLAG_F32::execute(), gem5::VegaISA::Inst_VOP1__V_READFIRSTLANE_B32::execute(), gem5::VegaISA::Inst_VOP1__V_RNDNE_F32::execute(), gem5::VegaISA::Inst_VOP1__V_RNDNE_F64::execute(), gem5::VegaISA::Inst_VOP1__V_RSQ_F32::execute(), gem5::VegaISA::Inst_VOP1__V_RSQ_F64::execute(), gem5::VegaISA::Inst_VOP1__V_SIN_F32::execute(), gem5::VegaISA::Inst_VOP1__V_SQRT_F32::execute(), gem5::VegaISA::Inst_VOP1__V_SQRT_F64::execute(), gem5::VegaISA::Inst_VOP1__V_TRUNC_F32::execute(), gem5::VegaISA::Inst_VOP1__V_TRUNC_F64::execute(), gem5::VegaISA::Inst_VOP2__V_ADD_CO_U32::execute(), gem5::VegaISA::Inst_VOP2__V_ADD_F32::execute(), gem5::VegaISA::Inst_VOP2__V_ADD_U16::execute(), gem5::VegaISA::Inst_VOP2__V_ADD_U32::execute(), gem5::VegaISA::Inst_VOP2__V_ADDC_CO_U32::execute(), gem5::VegaISA::Inst_VOP2__V_AND_B32::execute(), gem5::VegaISA::Inst_VOP2__V_ASHRREV_I16::execute(), gem5::VegaISA::Inst_VOP2__V_ASHRREV_I32::execute(), gem5::VegaISA::Inst_VOP2__V_CNDMASK_B32::execute(), gem5::VegaISA::Inst_VOP2__V_FMAC_F32::execute(), gem5::VegaISA::Inst_VOP2__V_LSHLREV_B16::execute(), gem5::VegaISA::Inst_VOP2__V_LSHLREV_B32::execute(), gem5::VegaISA::Inst_VOP2__V_LSHRREV_B16::execute(), gem5::VegaISA::Inst_VOP2__V_LSHRREV_B32::execute(), gem5::VegaISA::Inst_VOP2__V_MAC_F32::execute(), gem5::VegaISA::Inst_VOP2__V_MADAK_F32::execute(), gem5::VegaISA::Inst_VOP2__V_MADMK_F32::execute(), gem5::VegaISA::Inst_VOP2__V_MAX_F32::execute(), gem5::VegaISA::Inst_VOP2__V_MAX_I16::execute(), gem5::VegaISA::Inst_VOP2__V_MAX_I32::execute(), gem5::VegaISA::Inst_VOP2__V_MAX_U16::execute(), gem5::VegaISA::Inst_VOP2__V_MAX_U32::execute(), gem5::VegaISA::Inst_VOP2__V_MIN_F32::execute(), gem5::VegaISA::Inst_VOP2__V_MIN_I16::execute(), gem5::VegaISA::Inst_VOP2__V_MIN_I32::execute(), gem5::VegaISA::Inst_VOP2__V_MIN_U16::execute(), gem5::VegaISA::Inst_VOP2__V_MIN_U32::execute(), gem5::VegaISA::Inst_VOP2__V_MUL_F32::execute(), gem5::VegaISA::Inst_VOP2__V_MUL_HI_I32_I24::execute(), gem5::VegaISA::Inst_VOP2__V_MUL_HI_U32_U24::execute(), gem5::VegaISA::Inst_VOP2__V_MUL_I32_I24::execute(), gem5::VegaISA::Inst_VOP2__V_MUL_LEGACY_F32::execute(), gem5::VegaISA::Inst_VOP2__V_MUL_LO_U16::execute(), gem5::VegaISA::Inst_VOP2__V_OR_B32::execute(), gem5::VegaISA::Inst_VOP2__V_SUB_CO_U32::execute(), gem5::VegaISA::Inst_VOP2__V_SUB_F32::execute(), gem5::VegaISA::Inst_VOP2__V_SUB_U16::execute(), gem5::VegaISA::Inst_VOP2__V_SUB_U32::execute(), gem5::VegaISA::Inst_VOP2__V_SUBB_CO_U32::execute(), gem5::VegaISA::Inst_VOP2__V_SUBBREV_CO_U32::execute(), gem5::VegaISA::Inst_VOP2__V_SUBREV_CO_U32::execute(), gem5::VegaISA::Inst_VOP2__V_SUBREV_F32::execute(), gem5::VegaISA::Inst_VOP2__V_SUBREV_U16::execute(), gem5::VegaISA::Inst_VOP2__V_SUBREV_U32::execute(), gem5::VegaISA::Inst_VOP2__V_XNOR_B32::execute(), gem5::VegaISA::Inst_VOP2__V_XOR_B32::execute(), gem5::VegaISA::Inst_VOP3__V_ADD3_U32::execute(), gem5::VegaISA::Inst_VOP3__V_ADD_CO_U32::execute(), gem5::VegaISA::Inst_VOP3__V_ADD_F32::execute(), gem5::VegaISA::Inst_VOP3__V_ADD_F64::execute(), gem5::VegaISA::Inst_VOP3__V_ADD_LSHL_U32::execute(), gem5::VegaISA::Inst_VOP3__V_ADD_U16::execute(), gem5::VegaISA::Inst_VOP3__V_ADD_U32::execute(), gem5::VegaISA::Inst_VOP3__V_ADDC_CO_U32::execute(), gem5::VegaISA::Inst_VOP3__V_ALIGNBIT_B32::execute(), gem5::VegaISA::Inst_VOP3__V_ALIGNBYTE_B32::execute(), gem5::VegaISA::Inst_VOP3__V_AND_B32::execute(), gem5::VegaISA::Inst_VOP3__V_AND_OR_B32::execute(), gem5::VegaISA::Inst_VOP3__V_ASHRREV_I16::execute(), gem5::VegaISA::Inst_VOP3__V_ASHRREV_I32::execute(), gem5::VegaISA::Inst_VOP3__V_ASHRREV_I64::execute(), gem5::VegaISA::Inst_VOP3__V_BCNT_U32_B32::execute(), gem5::VegaISA::Inst_VOP3__V_BFE_I32::execute(), gem5::VegaISA::Inst_VOP3__V_BFE_U32::execute(), gem5::VegaISA::Inst_VOP3__V_BFI_B32::execute(), gem5::VegaISA::Inst_VOP3__V_BFM_B32::execute(), gem5::VegaISA::Inst_VOP3__V_BFREV_B32::execute(), gem5::VegaISA::Inst_VOP3__V_CEIL_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CEIL_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_CLASS_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_CLASS_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_EQ_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_EQ_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_EQ_I16::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_EQ_I32::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_EQ_I64::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_EQ_U16::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_EQ_U32::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_EQ_U64::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_GE_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_GE_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_GE_I16::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_GE_I32::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_GE_I64::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_GE_U16::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_GE_U32::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_GE_U64::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_GT_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_GT_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_GT_I16::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_GT_I32::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_GT_I64::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_GT_U16::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_GT_U32::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_GT_U64::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_LE_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_LE_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_LE_I16::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_LE_I32::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_LE_I64::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_LE_U16::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_LE_U32::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_LE_U64::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_LG_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_LG_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_LT_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_LT_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_LT_I16::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_LT_I32::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_LT_I64::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_LT_U16::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_LT_U32::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_LT_U64::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_NE_I16::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_NE_I32::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_NE_I64::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_NE_U16::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_NE_U32::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_NE_U64::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_NEQ_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_NEQ_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_NGE_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_NGE_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_NGT_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_NGT_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_NLE_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_NLE_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_NLG_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_NLG_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_NLT_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_NLT_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_O_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_O_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_U_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CMP_U_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_CLASS_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_CLASS_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_EQ_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_EQ_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_EQ_I16::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_EQ_I32::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_EQ_I64::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_EQ_U16::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_EQ_U32::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_EQ_U64::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_GE_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_GE_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_GE_I16::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_GE_I32::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_GE_I64::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_GE_U16::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_GE_U32::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_GE_U64::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_GT_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_GT_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_GT_I16::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_GT_I32::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_GT_I64::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_GT_U16::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_GT_U32::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_GT_U64::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_LE_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_LE_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_LE_I16::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_LE_I32::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_LE_I64::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_LE_U16::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_LE_U32::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_LE_U64::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_LG_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_LG_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_LT_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_LT_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_LT_I16::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_LT_I32::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_LT_I64::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_LT_U16::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_LT_U32::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_LT_U64::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_NE_I16::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_NE_I32::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_NE_I64::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_NE_U16::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_NE_U32::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_NE_U64::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_NEQ_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_NEQ_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_NGE_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_NGE_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_NGT_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_NGT_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_NLE_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_NLE_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_NLG_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_NLG_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_NLT_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_NLT_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_O_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_O_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_U_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CMPX_U_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CNDMASK_B32::execute(), gem5::VegaISA::Inst_VOP3__V_COS_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_F16_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_F32_F16::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_F32_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_F32_I32::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_F32_U32::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_F32_UBYTE0::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_F32_UBYTE1::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_F32_UBYTE2::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_F32_UBYTE3::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_F64_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_F64_I32::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_F64_U32::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_FLR_I32_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_I32_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_I32_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_PK_FP8_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_PK_U8_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_RPI_I32_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_U32_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_U32_F64::execute(), gem5::VegaISA::Inst_VOP3__V_DIV_FIXUP_F32::execute(), gem5::VegaISA::Inst_VOP3__V_DIV_FIXUP_F64::execute(), gem5::VegaISA::Inst_VOP3__V_DIV_FMAS_F32::execute(), gem5::VegaISA::Inst_VOP3__V_DIV_FMAS_F64::execute(), gem5::VegaISA::Inst_VOP3__V_DIV_SCALE_F32::execute(), gem5::VegaISA::Inst_VOP3__V_DIV_SCALE_F64::execute(), gem5::VegaISA::Inst_VOP3__V_EXP_F32::execute(), gem5::VegaISA::Inst_VOP3__V_EXP_LEGACY_F32::execute(), gem5::VegaISA::Inst_VOP3__V_FFBH_I32::execute(), gem5::VegaISA::Inst_VOP3__V_FFBH_U32::execute(), gem5::VegaISA::Inst_VOP3__V_FFBL_B32::execute(), gem5::VegaISA::Inst_VOP3__V_FLOOR_F32::execute(), gem5::VegaISA::Inst_VOP3__V_FLOOR_F64::execute(), gem5::VegaISA::Inst_VOP3__V_FMA_F32::execute(), gem5::VegaISA::Inst_VOP3__V_FMA_F64::execute(), gem5::VegaISA::Inst_VOP3__V_FMAC_F32::execute(), gem5::VegaISA::Inst_VOP3__V_FRACT_F32::execute(), gem5::VegaISA::Inst_VOP3__V_FRACT_F64::execute(), gem5::VegaISA::Inst_VOP3__V_FREXP_EXP_I32_F32::execute(), gem5::VegaISA::Inst_VOP3__V_FREXP_EXP_I32_F64::execute(), gem5::VegaISA::Inst_VOP3__V_FREXP_MANT_F32::execute(), gem5::VegaISA::Inst_VOP3__V_FREXP_MANT_F64::execute(), gem5::VegaISA::Inst_VOP3__V_LDEXP_F32::execute(), gem5::VegaISA::Inst_VOP3__V_LDEXP_F64::execute(), gem5::VegaISA::Inst_VOP3__V_LERP_U8::execute(), gem5::VegaISA::Inst_VOP3__V_LOG_F32::execute(), gem5::VegaISA::Inst_VOP3__V_LOG_LEGACY_F32::execute(), gem5::VegaISA::Inst_VOP3__V_LSHL_ADD_U32::execute(), gem5::VegaISA::Inst_VOP3__V_LSHL_ADD_U64::execute(), gem5::VegaISA::Inst_VOP3__V_LSHL_OR_B32::execute(), gem5::VegaISA::Inst_VOP3__V_LSHLREV_B16::execute(), gem5::VegaISA::Inst_VOP3__V_LSHLREV_B32::execute(), gem5::VegaISA::Inst_VOP3__V_LSHLREV_B64::execute(), gem5::VegaISA::Inst_VOP3__V_LSHRREV_B16::execute(), gem5::VegaISA::Inst_VOP3__V_LSHRREV_B32::execute(), gem5::VegaISA::Inst_VOP3__V_LSHRREV_B64::execute(), gem5::VegaISA::Inst_VOP3__V_MAC_F32::execute(), gem5::VegaISA::Inst_VOP3__V_MAD_F32::execute(), gem5::VegaISA::Inst_VOP3__V_MAD_I16::execute(), gem5::VegaISA::Inst_VOP3__V_MAD_I32_I24::execute(), gem5::VegaISA::Inst_VOP3__V_MAD_I64_I32::execute(), gem5::VegaISA::Inst_VOP3__V_MAD_LEGACY_F32::execute(), gem5::VegaISA::Inst_VOP3__V_MAD_U16::execute(), gem5::VegaISA::Inst_VOP3__V_MAD_U32_U24::execute(), gem5::VegaISA::Inst_VOP3__V_MAD_U64_U32::execute(), gem5::VegaISA::Inst_VOP3__V_MAX3_F32::execute(), gem5::VegaISA::Inst_VOP3__V_MAX3_I32::execute(), gem5::VegaISA::Inst_VOP3__V_MAX3_U32::execute(), gem5::VegaISA::Inst_VOP3__V_MAX_F32::execute(), gem5::VegaISA::Inst_VOP3__V_MAX_F64::execute(), gem5::VegaISA::Inst_VOP3__V_MAX_I16::execute(), gem5::VegaISA::Inst_VOP3__V_MAX_I32::execute(), gem5::VegaISA::Inst_VOP3__V_MAX_U16::execute(), gem5::VegaISA::Inst_VOP3__V_MAX_U32::execute(), gem5::VegaISA::Inst_VOP3__V_MBCNT_HI_U32_B32::execute(), gem5::VegaISA::Inst_VOP3__V_MBCNT_LO_U32_B32::execute(), gem5::VegaISA::Inst_VOP3__V_MED3_F32::execute(), gem5::VegaISA::Inst_VOP3__V_MED3_I32::execute(), gem5::VegaISA::Inst_VOP3__V_MED3_U32::execute(), gem5::VegaISA::Inst_VOP3__V_MIN3_F32::execute(), gem5::VegaISA::Inst_VOP3__V_MIN3_I32::execute(), gem5::VegaISA::Inst_VOP3__V_MIN3_U32::execute(), gem5::VegaISA::Inst_VOP3__V_MIN_F32::execute(), gem5::VegaISA::Inst_VOP3__V_MIN_F64::execute(), gem5::VegaISA::Inst_VOP3__V_MIN_I16::execute(), gem5::VegaISA::Inst_VOP3__V_MIN_I32::execute(), gem5::VegaISA::Inst_VOP3__V_MIN_U16::execute(), gem5::VegaISA::Inst_VOP3__V_MIN_U32::execute(), gem5::VegaISA::Inst_VOP3__V_MOV_B32::execute(), gem5::VegaISA::Inst_VOP3__V_MUL_F32::execute(), gem5::VegaISA::Inst_VOP3__V_MUL_F64::execute(), gem5::VegaISA::Inst_VOP3__V_MUL_HI_I32::execute(), gem5::VegaISA::Inst_VOP3__V_MUL_HI_I32_I24::execute(), gem5::VegaISA::Inst_VOP3__V_MUL_HI_U32::execute(), gem5::VegaISA::Inst_VOP3__V_MUL_HI_U32_U24::execute(), gem5::VegaISA::Inst_VOP3__V_MUL_I32_I24::execute(), gem5::VegaISA::Inst_VOP3__V_MUL_LEGACY_F32::execute(), gem5::VegaISA::Inst_VOP3__V_MUL_LO_U16::execute(), gem5::VegaISA::Inst_VOP3__V_MUL_LO_U32::execute(), gem5::VegaISA::Inst_VOP3__V_MUL_U32_U24::execute(), gem5::VegaISA::Inst_VOP3__V_NOT_B32::execute(), gem5::VegaISA::Inst_VOP3__V_OR3_B32::execute(), gem5::VegaISA::Inst_VOP3__V_OR_B32::execute(), gem5::VegaISA::Inst_VOP3__V_PERM_B32::execute(), gem5::VegaISA::Inst_VOP3__V_RCP_F32::execute(), gem5::VegaISA::Inst_VOP3__V_RCP_F64::execute(), gem5::VegaISA::Inst_VOP3__V_RCP_IFLAG_F32::execute(), gem5::VegaISA::Inst_VOP3__V_READLANE_B32::execute(), gem5::VegaISA::Inst_VOP3__V_RNDNE_F32::execute(), gem5::VegaISA::Inst_VOP3__V_RNDNE_F64::execute(), gem5::VegaISA::Inst_VOP3__V_RSQ_F32::execute(), gem5::VegaISA::Inst_VOP3__V_RSQ_F64::execute(), gem5::VegaISA::Inst_VOP3__V_SAD_HI_U8::execute(), gem5::VegaISA::Inst_VOP3__V_SAD_U16::execute(), gem5::VegaISA::Inst_VOP3__V_SAD_U32::execute(), gem5::VegaISA::Inst_VOP3__V_SAD_U8::execute(), gem5::VegaISA::Inst_VOP3__V_SIN_F32::execute(), gem5::VegaISA::Inst_VOP3__V_SQRT_F32::execute(), gem5::VegaISA::Inst_VOP3__V_SQRT_F64::execute(), gem5::VegaISA::Inst_VOP3__V_SUB_CO_U32::execute(), gem5::VegaISA::Inst_VOP3__V_SUB_F32::execute(), gem5::VegaISA::Inst_VOP3__V_SUB_U16::execute(), gem5::VegaISA::Inst_VOP3__V_SUB_U32::execute(), gem5::VegaISA::Inst_VOP3__V_SUBB_CO_U32::execute(), gem5::VegaISA::Inst_VOP3__V_SUBBREV_CO_U32::execute(), gem5::VegaISA::Inst_VOP3__V_SUBREV_CO_U32::execute(), gem5::VegaISA::Inst_VOP3__V_SUBREV_F32::execute(), gem5::VegaISA::Inst_VOP3__V_SUBREV_U16::execute(), gem5::VegaISA::Inst_VOP3__V_SUBREV_U32::execute(), gem5::VegaISA::Inst_VOP3__V_TRUNC_F32::execute(), gem5::VegaISA::Inst_VOP3__V_TRUNC_F64::execute(), gem5::VegaISA::Inst_VOP3__V_XAD_U32::execute(), gem5::VegaISA::Inst_VOP3__V_XOR_B32::execute(), gem5::VegaISA::Inst_VOP3P__V_ACCVGPR_READ::execute(), gem5::VegaISA::Inst_VOP3P__V_ACCVGPR_WRITE::execute(), gem5::VegaISA::Inst_VOP3P__V_PK_ADD_F32::execute(), gem5::VegaISA::Inst_VOP3P__V_PK_FMA_F32::execute(), gem5::VegaISA::Inst_VOP3P__V_PK_MOV_B32::execute(), gem5::VegaISA::Inst_VOP3P__V_PK_MUL_F32::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_CLASS_F32::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_CLASS_F64::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_EQ_F32::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_EQ_F64::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_EQ_I16::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_EQ_I32::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_EQ_I64::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_EQ_U16::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_EQ_U32::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_EQ_U64::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_GE_F32::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_GE_F64::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_GE_I16::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_GE_I32::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_GE_I64::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_GE_U16::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_GE_U32::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_GE_U64::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_GT_F32::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_GT_F64::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_GT_I16::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_GT_I32::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_GT_I64::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_GT_U16::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_GT_U32::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_GT_U64::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_LE_F32::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_LE_F64::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_LE_I16::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_LE_I32::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_LE_I64::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_LE_U16::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_LE_U32::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_LE_U64::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_LG_F32::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_LG_F64::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_LT_F32::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_LT_F64::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_LT_I16::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_LT_I32::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_LT_I64::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_LT_U16::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_LT_U32::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_LT_U64::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_NE_I16::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_NE_I32::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_NE_I64::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_NE_U16::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_NE_U32::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_NE_U64::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_NEQ_F32::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_NEQ_F64::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_NGE_F32::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_NGE_F64::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_NGT_F32::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_NGT_F64::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_NLE_F32::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_NLE_F64::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_NLG_F32::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_NLG_F64::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_NLT_F32::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_NLT_F64::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_O_F32::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_O_F64::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_U_F32::execute(), gem5::VegaISA::Inst_VOPC__V_CMP_U_F64::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_CLASS_F32::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_CLASS_F64::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_EQ_F32::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_EQ_F64::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_EQ_I16::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_EQ_I32::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_EQ_I64::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_EQ_U16::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_EQ_U32::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_EQ_U64::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_GE_F32::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_GE_F64::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_GE_I16::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_GE_I32::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_GE_I64::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_GE_U16::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_GE_U32::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_GE_U64::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_GT_F32::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_GT_F64::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_GT_I16::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_GT_I32::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_GT_I64::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_GT_U16::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_GT_U32::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_GT_U64::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_LE_F32::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_LE_F64::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_LE_I16::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_LE_I32::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_LE_I64::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_LE_U16::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_LE_U32::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_LE_U64::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_LG_F32::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_LG_F64::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_LT_F32::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_LT_F64::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_LT_I16::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_LT_I32::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_LT_I64::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_LT_U16::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_LT_U32::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_LT_U64::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_NE_I16::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_NE_I32::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_NE_I64::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_NE_U16::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_NE_U32::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_NE_U64::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_NEQ_F32::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_NEQ_F64::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_NGE_F32::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_NGE_F64::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_NGT_F32::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_NGT_F64::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_NLE_F32::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_NLE_F64::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_NLG_F32::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_NLG_F64::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_NLT_F32::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_NLT_F64::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_O_F32::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_O_F64::execute(), gem5::VegaISA::Inst_VOPC__V_CMPX_U_F32::execute(), and gem5::VegaISA::Inst_VOPC__V_CMPX_U_F64::execute().
|
inlineoverridevirtual |
write to the vrf.
we maintain a copy of the underlying vector reg(s) for this operand (i.e., vrfData/scRegData), as well as a temporary vector register representation (i.e., vecReg) of the vector register, which allows the execute() methods of instructions to easily write their operand data using operator[] regardless of their size. after the result is calculated we use write() to write the data to the actual register file storage. this allows us to do type conversion, etc., in a single call as opposed to doing it in each execute() method.
Implements gem5::VegaISA::Operand.
Definition at line 199 of file operand.hh.
References gem5::ArmISA::as, DPRINTF, gem5::Wavefront::execMask(), gem5::RegisterManager::mapVgpr(), gem5::ArmISA::NumVecElemPerVecReg, gem5::ComputeUnit::registerManager, gem5::Wavefront::simdId, and gem5::ComputeUnit::vrf.
Referenced by gem5::VegaISA::Inst_DS__DS_READ2_B32::completeAcc(), gem5::VegaISA::Inst_DS__DS_READ2_B64::completeAcc(), gem5::VegaISA::Inst_DS__DS_READ2ST64_B32::completeAcc(), gem5::VegaISA::Inst_DS__DS_READ2ST64_B64::completeAcc(), gem5::VegaISA::Inst_DS__DS_READ_B128::completeAcc(), gem5::VegaISA::Inst_DS__DS_READ_B32::completeAcc(), gem5::VegaISA::Inst_DS__DS_READ_B64::completeAcc(), gem5::VegaISA::Inst_DS__DS_READ_B96::completeAcc(), gem5::VegaISA::Inst_DS__DS_READ_I8::completeAcc(), gem5::VegaISA::Inst_DS__DS_READ_U16::completeAcc(), gem5::VegaISA::Inst_DS__DS_READ_U16_D16::completeAcc(), gem5::VegaISA::Inst_DS__DS_READ_U16_D16_HI::completeAcc(), gem5::VegaISA::Inst_DS__DS_READ_U8::completeAcc(), gem5::VegaISA::Inst_FLAT__FLAT_LOAD_DWORD::completeAcc(), gem5::VegaISA::Inst_FLAT__FLAT_LOAD_DWORDX2::completeAcc(), gem5::VegaISA::Inst_FLAT__FLAT_LOAD_DWORDX3::completeAcc(), gem5::VegaISA::Inst_FLAT__FLAT_LOAD_DWORDX4::completeAcc(), gem5::VegaISA::Inst_FLAT__FLAT_LOAD_SBYTE::completeAcc(), gem5::VegaISA::Inst_FLAT__FLAT_LOAD_UBYTE::completeAcc(), gem5::VegaISA::Inst_FLAT__FLAT_LOAD_USHORT::completeAcc(), gem5::VegaISA::Inst_MUBUF__BUFFER_ATOMIC_CMPSWAP::completeAcc(), gem5::VegaISA::Inst_MUBUF__BUFFER_LOAD_DWORD::completeAcc(), gem5::VegaISA::Inst_MUBUF__BUFFER_LOAD_DWORDX2::completeAcc(), gem5::VegaISA::Inst_MUBUF__BUFFER_LOAD_DWORDX3::completeAcc(), gem5::VegaISA::Inst_MUBUF__BUFFER_LOAD_DWORDX4::completeAcc(), gem5::VegaISA::Inst_MUBUF__BUFFER_LOAD_SHORT_D16::completeAcc(), gem5::VegaISA::Inst_MUBUF__BUFFER_LOAD_SHORT_D16_HI::completeAcc(), gem5::VegaISA::Inst_MUBUF__BUFFER_LOAD_UBYTE::completeAcc(), gem5::VegaISA::Inst_MUBUF__BUFFER_LOAD_USHORT::completeAcc(), gem5::VegaISA::Inst_VOP3P::dotHelper(), gem5::VegaISA::Inst_DS__DS_BPERMUTE_B32::execute(), gem5::VegaISA::Inst_DS__DS_PERMUTE_B32::execute(), gem5::VegaISA::Inst_DS__DS_SWIZZLE_B32::execute(), gem5::VegaISA::Inst_VOP1__V_ACCVGPR_MOV_B32::execute(), gem5::VegaISA::Inst_VOP1__V_BFREV_B32::execute(), gem5::VegaISA::Inst_VOP1__V_CEIL_F32::execute(), gem5::VegaISA::Inst_VOP1__V_CEIL_F64::execute(), gem5::VegaISA::Inst_VOP1__V_COS_F32::execute(), gem5::VegaISA::Inst_VOP1__V_CVT_F16_F32::execute(), gem5::VegaISA::Inst_VOP1__V_CVT_F32_F16::execute(), gem5::VegaISA::Inst_VOP1__V_CVT_F32_F64::execute(), gem5::VegaISA::Inst_VOP1__V_CVT_F32_I32::execute(), gem5::VegaISA::Inst_VOP1__V_CVT_F32_U32::execute(), gem5::VegaISA::Inst_VOP1__V_CVT_F32_UBYTE0::execute(), gem5::VegaISA::Inst_VOP1__V_CVT_F32_UBYTE1::execute(), gem5::VegaISA::Inst_VOP1__V_CVT_F32_UBYTE2::execute(), gem5::VegaISA::Inst_VOP1__V_CVT_F32_UBYTE3::execute(), gem5::VegaISA::Inst_VOP1__V_CVT_F64_F32::execute(), gem5::VegaISA::Inst_VOP1__V_CVT_F64_I32::execute(), gem5::VegaISA::Inst_VOP1__V_CVT_F64_U32::execute(), gem5::VegaISA::Inst_VOP1__V_CVT_FLR_I32_F32::execute(), gem5::VegaISA::Inst_VOP1__V_CVT_I32_F32::execute(), gem5::VegaISA::Inst_VOP1__V_CVT_I32_F64::execute(), gem5::VegaISA::Inst_VOP1__V_CVT_RPI_I32_F32::execute(), gem5::VegaISA::Inst_VOP1__V_CVT_U32_F32::execute(), gem5::VegaISA::Inst_VOP1__V_CVT_U32_F64::execute(), gem5::VegaISA::Inst_VOP1__V_EXP_F32::execute(), gem5::VegaISA::Inst_VOP1__V_EXP_LEGACY_F32::execute(), gem5::VegaISA::Inst_VOP1__V_FFBH_I32::execute(), gem5::VegaISA::Inst_VOP1__V_FFBH_U32::execute(), gem5::VegaISA::Inst_VOP1__V_FFBL_B32::execute(), gem5::VegaISA::Inst_VOP1__V_FLOOR_F32::execute(), gem5::VegaISA::Inst_VOP1__V_FLOOR_F64::execute(), gem5::VegaISA::Inst_VOP1__V_FRACT_F32::execute(), gem5::VegaISA::Inst_VOP1__V_FRACT_F64::execute(), gem5::VegaISA::Inst_VOP1__V_FREXP_EXP_I32_F32::execute(), gem5::VegaISA::Inst_VOP1__V_FREXP_EXP_I32_F64::execute(), gem5::VegaISA::Inst_VOP1__V_FREXP_MANT_F32::execute(), gem5::VegaISA::Inst_VOP1__V_FREXP_MANT_F64::execute(), gem5::VegaISA::Inst_VOP1__V_LOG_F32::execute(), gem5::VegaISA::Inst_VOP1__V_LOG_LEGACY_F32::execute(), gem5::VegaISA::Inst_VOP1__V_MOV_B32::execute(), gem5::VegaISA::Inst_VOP1__V_MOV_B64::execute(), gem5::VegaISA::Inst_VOP1__V_NOT_B32::execute(), gem5::VegaISA::Inst_VOP1__V_RCP_F32::execute(), gem5::VegaISA::Inst_VOP1__V_RCP_F64::execute(), gem5::VegaISA::Inst_VOP1__V_RCP_IFLAG_F32::execute(), gem5::VegaISA::Inst_VOP1__V_RNDNE_F32::execute(), gem5::VegaISA::Inst_VOP1__V_RNDNE_F64::execute(), gem5::VegaISA::Inst_VOP1__V_RSQ_F32::execute(), gem5::VegaISA::Inst_VOP1__V_RSQ_F64::execute(), gem5::VegaISA::Inst_VOP1__V_SIN_F32::execute(), gem5::VegaISA::Inst_VOP1__V_SQRT_F32::execute(), gem5::VegaISA::Inst_VOP1__V_SQRT_F64::execute(), gem5::VegaISA::Inst_VOP1__V_TRUNC_F32::execute(), gem5::VegaISA::Inst_VOP1__V_TRUNC_F64::execute(), gem5::VegaISA::Inst_VOP2__V_ADD_CO_U32::execute(), gem5::VegaISA::Inst_VOP2__V_ADD_F32::execute(), gem5::VegaISA::Inst_VOP2__V_ADD_U16::execute(), gem5::VegaISA::Inst_VOP2__V_ADD_U32::execute(), gem5::VegaISA::Inst_VOP2__V_ADDC_CO_U32::execute(), gem5::VegaISA::Inst_VOP2__V_AND_B32::execute(), gem5::VegaISA::Inst_VOP2__V_ASHRREV_I16::execute(), gem5::VegaISA::Inst_VOP2__V_ASHRREV_I32::execute(), gem5::VegaISA::Inst_VOP2__V_CNDMASK_B32::execute(), gem5::VegaISA::Inst_VOP2__V_FMAC_F32::execute(), gem5::VegaISA::Inst_VOP2__V_LSHLREV_B16::execute(), gem5::VegaISA::Inst_VOP2__V_LSHLREV_B32::execute(), gem5::VegaISA::Inst_VOP2__V_LSHRREV_B16::execute(), gem5::VegaISA::Inst_VOP2__V_LSHRREV_B32::execute(), gem5::VegaISA::Inst_VOP2__V_MAC_F32::execute(), gem5::VegaISA::Inst_VOP2__V_MADAK_F32::execute(), gem5::VegaISA::Inst_VOP2__V_MADMK_F32::execute(), gem5::VegaISA::Inst_VOP2__V_MAX_F32::execute(), gem5::VegaISA::Inst_VOP2__V_MAX_I16::execute(), gem5::VegaISA::Inst_VOP2__V_MAX_I32::execute(), gem5::VegaISA::Inst_VOP2__V_MAX_U16::execute(), gem5::VegaISA::Inst_VOP2__V_MAX_U32::execute(), gem5::VegaISA::Inst_VOP2__V_MIN_F32::execute(), gem5::VegaISA::Inst_VOP2__V_MIN_I16::execute(), gem5::VegaISA::Inst_VOP2__V_MIN_I32::execute(), gem5::VegaISA::Inst_VOP2__V_MIN_U16::execute(), gem5::VegaISA::Inst_VOP2__V_MIN_U32::execute(), gem5::VegaISA::Inst_VOP2__V_MUL_F32::execute(), gem5::VegaISA::Inst_VOP2__V_MUL_HI_I32_I24::execute(), gem5::VegaISA::Inst_VOP2__V_MUL_HI_U32_U24::execute(), gem5::VegaISA::Inst_VOP2__V_MUL_I32_I24::execute(), gem5::VegaISA::Inst_VOP2__V_MUL_LEGACY_F32::execute(), gem5::VegaISA::Inst_VOP2__V_MUL_LO_U16::execute(), gem5::VegaISA::Inst_VOP2__V_OR_B32::execute(), gem5::VegaISA::Inst_VOP2__V_SUB_CO_U32::execute(), gem5::VegaISA::Inst_VOP2__V_SUB_F32::execute(), gem5::VegaISA::Inst_VOP2__V_SUB_U16::execute(), gem5::VegaISA::Inst_VOP2__V_SUB_U32::execute(), gem5::VegaISA::Inst_VOP2__V_SUBB_CO_U32::execute(), gem5::VegaISA::Inst_VOP2__V_SUBBREV_CO_U32::execute(), gem5::VegaISA::Inst_VOP2__V_SUBREV_CO_U32::execute(), gem5::VegaISA::Inst_VOP2__V_SUBREV_F32::execute(), gem5::VegaISA::Inst_VOP2__V_SUBREV_U16::execute(), gem5::VegaISA::Inst_VOP2__V_SUBREV_U32::execute(), gem5::VegaISA::Inst_VOP2__V_XNOR_B32::execute(), gem5::VegaISA::Inst_VOP2__V_XOR_B32::execute(), gem5::VegaISA::Inst_VOP3__V_ADD3_U32::execute(), gem5::VegaISA::Inst_VOP3__V_ADD_CO_U32::execute(), gem5::VegaISA::Inst_VOP3__V_ADD_F32::execute(), gem5::VegaISA::Inst_VOP3__V_ADD_F64::execute(), gem5::VegaISA::Inst_VOP3__V_ADD_LSHL_U32::execute(), gem5::VegaISA::Inst_VOP3__V_ADD_U16::execute(), gem5::VegaISA::Inst_VOP3__V_ADD_U32::execute(), gem5::VegaISA::Inst_VOP3__V_ADDC_CO_U32::execute(), gem5::VegaISA::Inst_VOP3__V_ALIGNBIT_B32::execute(), gem5::VegaISA::Inst_VOP3__V_ALIGNBYTE_B32::execute(), gem5::VegaISA::Inst_VOP3__V_AND_B32::execute(), gem5::VegaISA::Inst_VOP3__V_AND_OR_B32::execute(), gem5::VegaISA::Inst_VOP3__V_ASHRREV_I16::execute(), gem5::VegaISA::Inst_VOP3__V_ASHRREV_I32::execute(), gem5::VegaISA::Inst_VOP3__V_ASHRREV_I64::execute(), gem5::VegaISA::Inst_VOP3__V_BCNT_U32_B32::execute(), gem5::VegaISA::Inst_VOP3__V_BFE_I32::execute(), gem5::VegaISA::Inst_VOP3__V_BFE_U32::execute(), gem5::VegaISA::Inst_VOP3__V_BFI_B32::execute(), gem5::VegaISA::Inst_VOP3__V_BFM_B32::execute(), gem5::VegaISA::Inst_VOP3__V_BFREV_B32::execute(), gem5::VegaISA::Inst_VOP3__V_CEIL_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CEIL_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CNDMASK_B32::execute(), gem5::VegaISA::Inst_VOP3__V_COS_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_F16_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_F32_F16::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_F32_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_F32_I32::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_F32_U32::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_F32_UBYTE0::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_F32_UBYTE1::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_F32_UBYTE2::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_F32_UBYTE3::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_F64_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_F64_I32::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_F64_U32::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_FLR_I32_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_I32_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_I32_F64::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_PK_FP8_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_PK_U8_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_RPI_I32_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_U32_F32::execute(), gem5::VegaISA::Inst_VOP3__V_CVT_U32_F64::execute(), gem5::VegaISA::Inst_VOP3__V_DIV_FIXUP_F32::execute(), gem5::VegaISA::Inst_VOP3__V_DIV_FIXUP_F64::execute(), gem5::VegaISA::Inst_VOP3__V_DIV_FMAS_F64::execute(), gem5::VegaISA::Inst_VOP3__V_DIV_SCALE_F32::execute(), gem5::VegaISA::Inst_VOP3__V_DIV_SCALE_F64::execute(), gem5::VegaISA::Inst_VOP3__V_EXP_F32::execute(), gem5::VegaISA::Inst_VOP3__V_EXP_LEGACY_F32::execute(), gem5::VegaISA::Inst_VOP3__V_FFBH_I32::execute(), gem5::VegaISA::Inst_VOP3__V_FFBH_U32::execute(), gem5::VegaISA::Inst_VOP3__V_FFBL_B32::execute(), gem5::VegaISA::Inst_VOP3__V_FLOOR_F32::execute(), gem5::VegaISA::Inst_VOP3__V_FLOOR_F64::execute(), gem5::VegaISA::Inst_VOP3__V_FMA_F32::execute(), gem5::VegaISA::Inst_VOP3__V_FMA_F64::execute(), gem5::VegaISA::Inst_VOP3__V_FMAC_F32::execute(), gem5::VegaISA::Inst_VOP3__V_FRACT_F32::execute(), gem5::VegaISA::Inst_VOP3__V_FRACT_F64::execute(), gem5::VegaISA::Inst_VOP3__V_FREXP_EXP_I32_F32::execute(), gem5::VegaISA::Inst_VOP3__V_FREXP_EXP_I32_F64::execute(), gem5::VegaISA::Inst_VOP3__V_FREXP_MANT_F32::execute(), gem5::VegaISA::Inst_VOP3__V_FREXP_MANT_F64::execute(), gem5::VegaISA::Inst_VOP3__V_LDEXP_F32::execute(), gem5::VegaISA::Inst_VOP3__V_LDEXP_F64::execute(), gem5::VegaISA::Inst_VOP3__V_LERP_U8::execute(), gem5::VegaISA::Inst_VOP3__V_LOG_F32::execute(), gem5::VegaISA::Inst_VOP3__V_LOG_LEGACY_F32::execute(), gem5::VegaISA::Inst_VOP3__V_LSHL_ADD_U32::execute(), gem5::VegaISA::Inst_VOP3__V_LSHL_ADD_U64::execute(), gem5::VegaISA::Inst_VOP3__V_LSHL_OR_B32::execute(), gem5::VegaISA::Inst_VOP3__V_LSHLREV_B16::execute(), gem5::VegaISA::Inst_VOP3__V_LSHLREV_B32::execute(), gem5::VegaISA::Inst_VOP3__V_LSHLREV_B64::execute(), gem5::VegaISA::Inst_VOP3__V_LSHRREV_B16::execute(), gem5::VegaISA::Inst_VOP3__V_LSHRREV_B32::execute(), gem5::VegaISA::Inst_VOP3__V_LSHRREV_B64::execute(), gem5::VegaISA::Inst_VOP3__V_MAC_F32::execute(), gem5::VegaISA::Inst_VOP3__V_MAD_F32::execute(), gem5::VegaISA::Inst_VOP3__V_MAD_I16::execute(), gem5::VegaISA::Inst_VOP3__V_MAD_I32_I24::execute(), gem5::VegaISA::Inst_VOP3__V_MAD_I64_I32::execute(), gem5::VegaISA::Inst_VOP3__V_MAD_LEGACY_F32::execute(), gem5::VegaISA::Inst_VOP3__V_MAD_U16::execute(), gem5::VegaISA::Inst_VOP3__V_MAD_U32_U24::execute(), gem5::VegaISA::Inst_VOP3__V_MAD_U64_U32::execute(), gem5::VegaISA::Inst_VOP3__V_MAX3_F32::execute(), gem5::VegaISA::Inst_VOP3__V_MAX3_I32::execute(), gem5::VegaISA::Inst_VOP3__V_MAX3_U32::execute(), gem5::VegaISA::Inst_VOP3__V_MAX_F32::execute(), gem5::VegaISA::Inst_VOP3__V_MAX_F64::execute(), gem5::VegaISA::Inst_VOP3__V_MAX_I16::execute(), gem5::VegaISA::Inst_VOP3__V_MAX_I32::execute(), gem5::VegaISA::Inst_VOP3__V_MAX_U16::execute(), gem5::VegaISA::Inst_VOP3__V_MAX_U32::execute(), gem5::VegaISA::Inst_VOP3__V_MBCNT_HI_U32_B32::execute(), gem5::VegaISA::Inst_VOP3__V_MBCNT_LO_U32_B32::execute(), gem5::VegaISA::Inst_VOP3__V_MED3_F32::execute(), gem5::VegaISA::Inst_VOP3__V_MED3_I32::execute(), gem5::VegaISA::Inst_VOP3__V_MED3_U32::execute(), gem5::VegaISA::Inst_VOP3__V_MIN3_F32::execute(), gem5::VegaISA::Inst_VOP3__V_MIN3_I32::execute(), gem5::VegaISA::Inst_VOP3__V_MIN3_U32::execute(), gem5::VegaISA::Inst_VOP3__V_MIN_F32::execute(), gem5::VegaISA::Inst_VOP3__V_MIN_F64::execute(), gem5::VegaISA::Inst_VOP3__V_MIN_I16::execute(), gem5::VegaISA::Inst_VOP3__V_MIN_I32::execute(), gem5::VegaISA::Inst_VOP3__V_MIN_U16::execute(), gem5::VegaISA::Inst_VOP3__V_MIN_U32::execute(), gem5::VegaISA::Inst_VOP3__V_MOV_B32::execute(), gem5::VegaISA::Inst_VOP3__V_MUL_F32::execute(), gem5::VegaISA::Inst_VOP3__V_MUL_F64::execute(), gem5::VegaISA::Inst_VOP3__V_MUL_HI_I32::execute(), gem5::VegaISA::Inst_VOP3__V_MUL_HI_I32_I24::execute(), gem5::VegaISA::Inst_VOP3__V_MUL_HI_U32::execute(), gem5::VegaISA::Inst_VOP3__V_MUL_HI_U32_U24::execute(), gem5::VegaISA::Inst_VOP3__V_MUL_I32_I24::execute(), gem5::VegaISA::Inst_VOP3__V_MUL_LEGACY_F32::execute(), gem5::VegaISA::Inst_VOP3__V_MUL_LO_U16::execute(), gem5::VegaISA::Inst_VOP3__V_MUL_LO_U32::execute(), gem5::VegaISA::Inst_VOP3__V_MUL_U32_U24::execute(), gem5::VegaISA::Inst_VOP3__V_NOT_B32::execute(), gem5::VegaISA::Inst_VOP3__V_OR3_B32::execute(), gem5::VegaISA::Inst_VOP3__V_OR_B32::execute(), gem5::VegaISA::Inst_VOP3__V_PERM_B32::execute(), gem5::VegaISA::Inst_VOP3__V_RCP_F32::execute(), gem5::VegaISA::Inst_VOP3__V_RCP_F64::execute(), gem5::VegaISA::Inst_VOP3__V_RCP_IFLAG_F32::execute(), gem5::VegaISA::Inst_VOP3__V_RNDNE_F32::execute(), gem5::VegaISA::Inst_VOP3__V_RNDNE_F64::execute(), gem5::VegaISA::Inst_VOP3__V_RSQ_F32::execute(), gem5::VegaISA::Inst_VOP3__V_RSQ_F64::execute(), gem5::VegaISA::Inst_VOP3__V_SAD_HI_U8::execute(), gem5::VegaISA::Inst_VOP3__V_SAD_U16::execute(), gem5::VegaISA::Inst_VOP3__V_SAD_U32::execute(), gem5::VegaISA::Inst_VOP3__V_SAD_U8::execute(), gem5::VegaISA::Inst_VOP3__V_SIN_F32::execute(), gem5::VegaISA::Inst_VOP3__V_SQRT_F32::execute(), gem5::VegaISA::Inst_VOP3__V_SQRT_F64::execute(), gem5::VegaISA::Inst_VOP3__V_SUB_CO_U32::execute(), gem5::VegaISA::Inst_VOP3__V_SUB_F32::execute(), gem5::VegaISA::Inst_VOP3__V_SUB_U16::execute(), gem5::VegaISA::Inst_VOP3__V_SUB_U32::execute(), gem5::VegaISA::Inst_VOP3__V_SUBB_CO_U32::execute(), gem5::VegaISA::Inst_VOP3__V_SUBBREV_CO_U32::execute(), gem5::VegaISA::Inst_VOP3__V_SUBREV_CO_U32::execute(), gem5::VegaISA::Inst_VOP3__V_SUBREV_F32::execute(), gem5::VegaISA::Inst_VOP3__V_SUBREV_U16::execute(), gem5::VegaISA::Inst_VOP3__V_SUBREV_U32::execute(), gem5::VegaISA::Inst_VOP3__V_TRUNC_F32::execute(), gem5::VegaISA::Inst_VOP3__V_TRUNC_F64::execute(), gem5::VegaISA::Inst_VOP3__V_WRITELANE_B32::execute(), gem5::VegaISA::Inst_VOP3__V_XAD_U32::execute(), gem5::VegaISA::Inst_VOP3__V_XOR_B32::execute(), gem5::VegaISA::Inst_VOP3P__V_ACCVGPR_READ::execute(), gem5::VegaISA::Inst_VOP3P__V_ACCVGPR_WRITE::execute(), gem5::VegaISA::Inst_VOP3P__V_PK_ADD_F32::execute(), gem5::VegaISA::Inst_VOP3P__V_PK_FMA_F32::execute(), gem5::VegaISA::Inst_VOP3P__V_PK_MOV_B32::execute(), gem5::VegaISA::Inst_VOP3P__V_PK_MUL_F32::execute(), gem5::VegaISA::Inst_VOP3P::vop3pHelper(), and gem5::VegaISA::Inst_VOP3P::vop3pHelper().
|
private |
absolute value and negative modifiers.
VOP3 instructions may indicate that their input/output operands must be modified, either by taking the absolute value or negating them. these bools indicate which modifier, if any, to use.
Definition at line 344 of file operand.hh.
|
private |
Definition at line 345 of file operand.hh.
|
private |
whether this operand a scalar or not.
Definition at line 337 of file operand.hh.
|
private |
for src operands that read scalars (i.e., scalar regs or a scalar constant).
Definition at line 356 of file operand.hh.
|
private |
this holds all the operand data in a single vector register object (i.e., if an operand is 64b, this will hold the data from both registers the operand is using).
Definition at line 351 of file operand.hh.
|
private |
pointers to the underlyding registers (i.e., the actual registers in the register file).
Definition at line 361 of file operand.hh.