118 scc = (src.
rawData() == simm16) ? 1 : 0;
145 scc = (src.
rawData() != simm16) ? 1 : 0;
172 scc = (src.
rawData() > simm16) ? 1 : 0;
199 scc = (src.
rawData() >= simm16) ? 1 : 0;
226 scc = (src.
rawData() < simm16) ? 1 : 0;
253 scc = (src.
rawData() <= simm16) ? 1 : 0;
280 scc = (src.
rawData() == simm16) ? 1 : 0;
307 scc = (src.
rawData() != simm16) ? 1 : 0;
334 scc = (src.
rawData() > simm16) ? 1 : 0;
361 scc = (src.
rawData() >= simm16) ? 1 : 0;
388 scc = (src.
rawData() < simm16) ? 1 : 0;
415 scc = (src.
rawData() <= simm16) ? 1 : 0;
544 gpuDynInst->computeUnit()->shader->getHwReg(hwregId);
579 gpuDynInst->computeUnit()->shader->getHwReg(hwregId);
586 gpuDynInst->computeUnit()->shader->setHwReg(hwregId, hwreg);
590 if (hwregId==1 && size==2
592 warn_once(
"Be cautious that s_setreg_b32 has no real effect "
593 "on FP modes: %s\n", gpuDynInst->disassemble());
627 gpuDynInst->computeUnit()->shader->getHwReg(hwregId);
632 hwreg = ((hwreg & ~mask) | ((simm32 <<
offset) &
mask));
633 gpuDynInst->computeUnit()->shader->setHwReg(hwregId, hwreg);
639 warn_once(
"Be cautious that s_setreg_imm32_b32 has no real effect "
640 "on FP modes: %s\n", gpuDynInst->disassemble());
Base class for branch operations.
void execute(GPUDynInstPtr) override
Inst_SOPK__S_ADDK_I32(InFmt_SOPK *)
Inst_SOPK__S_CBRANCH_I_FORK(InFmt_SOPK *)
void execute(GPUDynInstPtr) override
~Inst_SOPK__S_CBRANCH_I_FORK()
Inst_SOPK__S_CMOVK_I32(InFmt_SOPK *)
~Inst_SOPK__S_CMOVK_I32()
void execute(GPUDynInstPtr) override
Inst_SOPK__S_CMPK_EQ_I32(InFmt_SOPK *)
void execute(GPUDynInstPtr) override
~Inst_SOPK__S_CMPK_EQ_I32()
~Inst_SOPK__S_CMPK_EQ_U32()
Inst_SOPK__S_CMPK_EQ_U32(InFmt_SOPK *)
void execute(GPUDynInstPtr) override
~Inst_SOPK__S_CMPK_GE_I32()
void execute(GPUDynInstPtr) override
Inst_SOPK__S_CMPK_GE_I32(InFmt_SOPK *)
Inst_SOPK__S_CMPK_GE_U32(InFmt_SOPK *)
void execute(GPUDynInstPtr) override
~Inst_SOPK__S_CMPK_GE_U32()
Inst_SOPK__S_CMPK_GT_I32(InFmt_SOPK *)
void execute(GPUDynInstPtr) override
~Inst_SOPK__S_CMPK_GT_I32()
void execute(GPUDynInstPtr) override
~Inst_SOPK__S_CMPK_GT_U32()
Inst_SOPK__S_CMPK_GT_U32(InFmt_SOPK *)
void execute(GPUDynInstPtr) override
~Inst_SOPK__S_CMPK_LE_I32()
Inst_SOPK__S_CMPK_LE_I32(InFmt_SOPK *)
void execute(GPUDynInstPtr) override
~Inst_SOPK__S_CMPK_LE_U32()
Inst_SOPK__S_CMPK_LE_U32(InFmt_SOPK *)
void execute(GPUDynInstPtr) override
Inst_SOPK__S_CMPK_LG_I32(InFmt_SOPK *)
~Inst_SOPK__S_CMPK_LG_I32()
Inst_SOPK__S_CMPK_LG_U32(InFmt_SOPK *)
~Inst_SOPK__S_CMPK_LG_U32()
void execute(GPUDynInstPtr) override
~Inst_SOPK__S_CMPK_LT_I32()
void execute(GPUDynInstPtr) override
Inst_SOPK__S_CMPK_LT_I32(InFmt_SOPK *)
Inst_SOPK__S_CMPK_LT_U32(InFmt_SOPK *)
void execute(GPUDynInstPtr) override
~Inst_SOPK__S_CMPK_LT_U32()
~Inst_SOPK__S_GETREG_B32()
void execute(GPUDynInstPtr) override
Inst_SOPK__S_GETREG_B32(InFmt_SOPK *)
Inst_SOPK__S_MOVK_I32(InFmt_SOPK *)
void execute(GPUDynInstPtr) override
Inst_SOPK__S_MULK_I32(InFmt_SOPK *)
void execute(GPUDynInstPtr) override
~Inst_SOPK__S_SETREG_B32()
Inst_SOPK__S_SETREG_B32(InFmt_SOPK *)
void execute(GPUDynInstPtr) override
~Inst_SOPK__S_SETREG_IMM32_B32()
void execute(GPUDynInstPtr) override
Inst_SOPK__S_SETREG_IMM32_B32(InFmt_SOPK *)
void read() override
read from and write to the underlying register(s) that this operand is referring to.
std::enable_if< Condition, DataType >::type rawData() const
we store scalar data in a std::array, however if we need the full operand data we use this method to ...
void panicUnimplemented() const
constexpr T bits(T val, unsigned first, unsigned last)
Extract the bitfield from position 'first' to 'last' (inclusive) from 'val' and right justify it.
constexpr uint64_t sext(uint64_t val)
Sign-extend an N-bit value to 64 bits.
Copyright (c) 2024 - Pranith Kumar Copyright (c) 2020 Inria All rights reserved.
std::shared_ptr< GPUDynInst > GPUDynInstPtr