Go to the documentation of this file.
39 #include "debug/GCN3.hh"
40 #include "debug/GPUSync.hh"
72 >= 0x100000000ULL ? 1 : 0;
616 sdst = src0.
rawData() &~ src1.rawData();
646 sdst = src0.
rawData() &~ src1.rawData();
676 sdst = src0.
rawData() |~ src1.rawData();
706 sdst = src0.
rawData() |~ src1.rawData();
1426 scc = (src.
rawData() == simm16) ? 1 : 0;
1451 scc = (src.
rawData() != simm16) ? 1 : 0;
1476 scc = (src.
rawData() > simm16) ? 1 : 0;
1501 scc = (src.
rawData() >= simm16) ? 1 : 0;
1526 scc = (src.
rawData() < simm16) ? 1 : 0;
1551 scc = (src.
rawData() <= simm16) ? 1 : 0;
1576 scc = (src.rawData() == simm16) ? 1 : 0;
1601 scc = (src.rawData() != simm16) ? 1 : 0;
1626 scc = (src.rawData() > simm16) ? 1 : 0;
1651 scc = (src.rawData() >= simm16) ? 1 : 0;
1676 scc = (src.rawData() < simm16) ? 1 : 0;
1701 scc = (src.rawData() <= simm16) ? 1 : 0;
1833 if (hwregId==1 && size==2
1835 warn_once(
"Be cautious that s_setreg_b32 has no real effect "
1836 "on FP modes: %s\n", gpuDynInst->disassemble());
1876 if (hwregId==1 && size==2
1878 warn_once(
"Be cautious that s_setreg_imm32_b32 has no real effect "
1879 "on FP modes: %s\n", gpuDynInst->disassemble());
2497 sdst = sext<std::numeric_limits<ScalarRegI8>::digits>(
2522 sdst = sext<std::numeric_limits<ScalarRegI16>::digits>(
2639 Wavefront *wf = gpuDynInst->wavefront();
2663 Wavefront *wf = gpuDynInst->wavefront();
2686 Wavefront *wf = gpuDynInst->wavefront();
2732 Wavefront *wf = gpuDynInst->wavefront();
2741 scc = wf->
execMask().any() ? 1 : 0;
2764 Wavefront *wf = gpuDynInst->wavefront();
2773 scc = wf->
execMask().any() ? 1 : 0;
2796 Wavefront *wf = gpuDynInst->wavefront();
2805 scc = wf->
execMask().any() ? 1 : 0;
2813 :
Inst_SOP1(iFmt,
"s_andn2_saveexec_b64")
2828 Wavefront *wf = gpuDynInst->wavefront();
2837 scc = wf->
execMask().any() ? 1 : 0;
2845 :
Inst_SOP1(iFmt,
"s_orn2_saveexec_b64")
2860 Wavefront *wf = gpuDynInst->wavefront();
2869 scc = wf->
execMask().any() ? 1 : 0;
2877 :
Inst_SOP1(iFmt,
"s_nand_saveexec_b64")
2892 Wavefront *wf = gpuDynInst->wavefront();
2901 scc = wf->
execMask().any() ? 1 : 0;
2924 Wavefront *wf = gpuDynInst->wavefront();
2933 scc = wf->
execMask().any() ? 1 : 0;
2941 :
Inst_SOP1(iFmt,
"s_xnor_saveexec_b64")
2956 Wavefront *wf = gpuDynInst->wavefront();
2965 scc = wf->
execMask().any() ? 1 : 0;
3175 sdst = std::abs(src.
rawData());
3760 Wavefront *wf = gpuDynInst->wavefront();
3790 DPRINTF(GPUSync,
"CU[%d] WF[%d][%d] Wave[%d] - Exiting the "
3791 "program and decrementing max barrier count for "
3792 "barrier Id%d. New max count: %d.\n", cu->
cu_id,
3797 DPRINTF(GPUExec,
"CU%d: decrease ref ctr WG[%d] to [%d]\n",
3807 DPRINTF(GPUExec,
"Doing return for CU%d: WF[%d][%d][%d]\n",
3827 DPRINTF(GPUSync,
"CU[%d] WF[%d][%d] Wave[%d] - All waves are "
3828 "now complete. Releasing barrier Id%d.\n", cu->
cu_id,
3851 if (!kernelEnd || !relNeeded) {
3867 gpuDynInst->simdId = wf->
simdId;
3868 gpuDynInst->wfSlotId = wf->
wfSlotId;
3869 gpuDynInst->wfDynId = wf->
wfDynId;
3871 DPRINTF(GPUExec,
"inject global memory fence for CU%d: "
3899 Wavefront *wf = gpuDynInst->wavefront();
3941 Wavefront *wf = gpuDynInst->wavefront();
3970 Wavefront *wf = gpuDynInst->wavefront();
4000 Wavefront *wf = gpuDynInst->wavefront();
4030 Wavefront *wf = gpuDynInst->wavefront();
4058 Wavefront *wf = gpuDynInst->wavefront();
4083 Wavefront *wf = gpuDynInst->wavefront();
4112 Wavefront *wf = gpuDynInst->wavefront();
4118 DPRINTF(GPUSync,
"CU[%d] WF[%d][%d] Wave[%d] - Stalling at "
4119 "barrier Id%d. %d waves now at barrier, %d waves "
4167 gpuDynInst->wavefront()->setWaitCnts(vm_cnt, exp_cnt, lgkm_cnt);
4203 gpuDynInst->wavefront()->setSleepTime(64 * simm16);
4367 :
Inst_SOPP(iFmt,
"s_cbranch_cdbgsys_or_user")
4385 :
Inst_SOPP(iFmt,
"s_cbranch_cdbgsys_and_user")
4477 Wavefront *wf = gpuDynInst->wavefront();
4479 gpuDynInst->latency.init(gpuDynInst->computeUnit());
4480 gpuDynInst->latency.set(gpuDynInst->computeUnit()->clockPeriod());
4496 gpuDynInst->computeUnit()->scalarMemoryPipe
4497 .getGMReqFIFO().push(gpuDynInst);
4501 gpuDynInst->wavefront()->outstandingReqs++;
4502 gpuDynInst->wavefront()->validateRequestCounters();
4508 initMemRead<1>(gpuDynInst);
4536 Wavefront *wf = gpuDynInst->wavefront();
4538 gpuDynInst->latency.init(gpuDynInst->computeUnit());
4539 gpuDynInst->latency.set(gpuDynInst->computeUnit()->clockPeriod());
4555 gpuDynInst->computeUnit()->scalarMemoryPipe.
4556 getGMReqFIFO().push(gpuDynInst);
4560 gpuDynInst->wavefront()->outstandingReqs++;
4561 gpuDynInst->wavefront()->validateRequestCounters();
4567 initMemRead<2>(gpuDynInst);
4593 Wavefront *wf = gpuDynInst->wavefront();
4595 gpuDynInst->latency.init(gpuDynInst->computeUnit());
4596 gpuDynInst->latency.set(gpuDynInst->computeUnit()->clockPeriod());
4612 gpuDynInst->computeUnit()->scalarMemoryPipe.
4613 getGMReqFIFO().push(gpuDynInst);
4617 gpuDynInst->wavefront()->outstandingReqs++;
4618 gpuDynInst->wavefront()->validateRequestCounters();
4624 initMemRead<4>(gpuDynInst);
4650 Wavefront *wf = gpuDynInst->wavefront();
4652 gpuDynInst->latency.init(gpuDynInst->computeUnit());
4653 gpuDynInst->latency.set(gpuDynInst->computeUnit()->clockPeriod());
4669 gpuDynInst->computeUnit()->scalarMemoryPipe.
4670 getGMReqFIFO().push(gpuDynInst);
4674 gpuDynInst->wavefront()->outstandingReqs++;
4675 gpuDynInst->wavefront()->validateRequestCounters();
4681 initMemRead<8>(gpuDynInst);
4707 Wavefront *wf = gpuDynInst->wavefront();
4709 gpuDynInst->latency.init(gpuDynInst->computeUnit());
4710 gpuDynInst->latency.set(gpuDynInst->computeUnit()->clockPeriod());
4726 gpuDynInst->computeUnit()->scalarMemoryPipe.
4727 getGMReqFIFO().push(gpuDynInst);
4731 gpuDynInst->wavefront()->outstandingReqs++;
4732 gpuDynInst->wavefront()->validateRequestCounters();
4738 initMemRead<16>(gpuDynInst);
4750 :
Inst_SMEM(iFmt,
"s_buffer_load_dword")
4765 Wavefront *wf = gpuDynInst->wavefront();
4767 gpuDynInst->latency.init(gpuDynInst->computeUnit());
4768 gpuDynInst->latency.set(gpuDynInst->computeUnit()->clockPeriod());
4784 gpuDynInst->computeUnit()->scalarMemoryPipe
4785 .getGMReqFIFO().push(gpuDynInst);
4789 gpuDynInst->wavefront()->outstandingReqs++;
4790 gpuDynInst->wavefront()->validateRequestCounters();
4796 initMemRead<1>(gpuDynInst);
4809 :
Inst_SMEM(iFmt,
"s_buffer_load_dwordx2")
4824 Wavefront *wf = gpuDynInst->wavefront();
4826 gpuDynInst->latency.init(gpuDynInst->computeUnit());
4827 gpuDynInst->latency.set(gpuDynInst->computeUnit()->clockPeriod());
4843 gpuDynInst->computeUnit()->scalarMemoryPipe
4844 .getGMReqFIFO().push(gpuDynInst);
4848 gpuDynInst->wavefront()->outstandingReqs++;
4849 gpuDynInst->wavefront()->validateRequestCounters();
4855 initMemRead<2>(gpuDynInst);
4868 :
Inst_SMEM(iFmt,
"s_buffer_load_dwordx4")
4883 Wavefront *wf = gpuDynInst->wavefront();
4885 gpuDynInst->latency.init(gpuDynInst->computeUnit());
4886 gpuDynInst->latency.set(gpuDynInst->computeUnit()->clockPeriod());
4902 gpuDynInst->computeUnit()->scalarMemoryPipe
4903 .getGMReqFIFO().push(gpuDynInst);
4907 gpuDynInst->wavefront()->outstandingReqs++;
4908 gpuDynInst->wavefront()->validateRequestCounters();
4914 initMemRead<4>(gpuDynInst);
4927 :
Inst_SMEM(iFmt,
"s_buffer_load_dwordx8")
4942 Wavefront *wf = gpuDynInst->wavefront();
4944 gpuDynInst->latency.init(gpuDynInst->computeUnit());
4945 gpuDynInst->latency.set(gpuDynInst->computeUnit()->clockPeriod());
4961 gpuDynInst->computeUnit()->scalarMemoryPipe
4962 .getGMReqFIFO().push(gpuDynInst);
4966 gpuDynInst->wavefront()->outstandingReqs++;
4967 gpuDynInst->wavefront()->validateRequestCounters();
4973 initMemRead<8>(gpuDynInst);
4986 :
Inst_SMEM(iFmt,
"s_buffer_load_dwordx16")
5001 Wavefront *wf = gpuDynInst->wavefront();
5003 gpuDynInst->latency.init(gpuDynInst->computeUnit());
5004 gpuDynInst->latency.set(gpuDynInst->computeUnit()->clockPeriod());
5020 gpuDynInst->computeUnit()->scalarMemoryPipe
5021 .getGMReqFIFO().push(gpuDynInst);
5025 gpuDynInst->wavefront()->outstandingReqs++;
5026 gpuDynInst->wavefront()->validateRequestCounters();
5032 initMemRead<16>(gpuDynInst);
5062 Wavefront *wf = gpuDynInst->wavefront();
5064 gpuDynInst->latency.init(gpuDynInst->computeUnit());
5065 gpuDynInst->latency.set(gpuDynInst->computeUnit()->clockPeriod());
5081 gpuDynInst->computeUnit()->scalarMemoryPipe.
5082 getGMReqFIFO().push(gpuDynInst);
5086 gpuDynInst->wavefront()->outstandingReqs++;
5087 gpuDynInst->wavefront()->validateRequestCounters();
5095 std::memcpy((
void*)gpuDynInst->scalar_data, sdata.
rawDataPtr(),
5097 initMemWrite<1>(gpuDynInst);
5121 Wavefront *wf = gpuDynInst->wavefront();
5123 gpuDynInst->latency.init(gpuDynInst->computeUnit());
5124 gpuDynInst->latency.set(gpuDynInst->computeUnit()->clockPeriod());
5140 gpuDynInst->computeUnit()->scalarMemoryPipe.
5141 getGMReqFIFO().push(gpuDynInst);
5145 gpuDynInst->wavefront()->outstandingReqs++;
5146 gpuDynInst->wavefront()->validateRequestCounters();
5154 std::memcpy((
void*)gpuDynInst->scalar_data, sdata.
rawDataPtr(),
5156 initMemWrite<2>(gpuDynInst);
5180 Wavefront *wf = gpuDynInst->wavefront();
5182 gpuDynInst->latency.init(gpuDynInst->computeUnit());
5183 gpuDynInst->latency.set(gpuDynInst->computeUnit()->clockPeriod());
5199 gpuDynInst->computeUnit()->scalarMemoryPipe.
5200 getGMReqFIFO().push(gpuDynInst);
5204 gpuDynInst->wavefront()->outstandingReqs++;
5205 gpuDynInst->wavefront()->validateRequestCounters();
5213 std::memcpy((
void*)gpuDynInst->scalar_data, sdata.
rawDataPtr(),
5215 initMemWrite<4>(gpuDynInst);
5225 :
Inst_SMEM(iFmt,
"s_buffer_store_dword")
5255 :
Inst_SMEM(iFmt,
"s_buffer_store_dwordx2")
5285 :
Inst_SMEM(iFmt,
"s_buffer_store_dwordx4")
5456 Wavefront *wf = gpuDynInst->wavefront();
5469 =
bits(vcc.
rawData(), lane) ? src1[lane] : src0[lane];
5491 Wavefront *wf = gpuDynInst->wavefront();
5503 DPRINTF(GCN3,
"Handling V_ADD_F32 SRC DPP. SRC0: register v[%d], "
5504 "DPP_CTRL: 0x%#x, SRC0_ABS: %d, SRC0_NEG: %d, "
5505 "SRC1_ABS: %d, SRC1_NEG: %d, BOUND_CTRL: %d, "
5520 vdst[lane] = src0_dpp[lane] + src1[lane];
5526 vdst[lane] = src0[lane] + src1[lane];
5549 Wavefront *wf = gpuDynInst->wavefront();
5559 vdst[lane] = src0[lane] - src1[lane];
5581 Wavefront *wf = gpuDynInst->wavefront();
5591 vdst[lane] = src1[lane] - src0[lane];
5613 Wavefront *wf = gpuDynInst->wavefront();
5623 vdst[lane] = src0[lane] * src1[lane];
5645 Wavefront *wf = gpuDynInst->wavefront();
5655 if (std::isnan(src0[lane]) ||
5656 std::isnan(src1[lane])) {
5658 }
else if ((std::fpclassify(src0[lane]) == FP_SUBNORMAL ||
5659 std::fpclassify(src0[lane]) == FP_ZERO) &&
5660 !std::signbit(src0[lane])) {
5661 if (std::isinf(src1[lane])) {
5663 }
else if (!std::signbit(src1[lane])) {
5668 }
else if ((std::fpclassify(src0[lane]) == FP_SUBNORMAL ||
5669 std::fpclassify(src0[lane]) == FP_ZERO) &&
5670 std::signbit(src0[lane])) {
5671 if (std::isinf(src1[lane])) {
5673 }
else if (std::signbit(src1[lane])) {
5678 }
else if (std::isinf(src0[lane]) &&
5679 !std::signbit(src0[lane])) {
5680 if (std::fpclassify(src1[lane]) == FP_SUBNORMAL ||
5681 std::fpclassify(src1[lane]) == FP_ZERO) {
5683 }
else if (!std::signbit(src1[lane])) {
5684 vdst[lane] = +INFINITY;
5686 vdst[lane] = -INFINITY;
5688 }
else if (std::isinf(src0[lane]) &&
5689 std::signbit(src0[lane])) {
5690 if (std::fpclassify(src1[lane]) == FP_SUBNORMAL ||
5691 std::fpclassify(src1[lane]) == FP_ZERO) {
5693 }
else if (std::signbit(src1[lane])) {
5694 vdst[lane] = +INFINITY;
5696 vdst[lane] = -INFINITY;
5699 vdst[lane] = src0[lane] * src1[lane];
5721 Wavefront *wf = gpuDynInst->wavefront();
5731 vdst[lane] = sext<24>(
bits(src0[lane], 23, 0))
5732 * sext<24>(
bits(src1[lane], 23, 0));
5753 Wavefront *wf = gpuDynInst->wavefront();
5768 vdst[lane] = (
VecElemI32)((tmp_src0 * tmp_src1) >> 32);
5789 Wavefront *wf = gpuDynInst->wavefront();
5806 origSrc0_sdwa.
read();
5809 DPRINTF(GCN3,
"Handling V_MUL_U32_U24 SRC SDWA. SRC0: register "
5810 "v[%d], DST_SEL: %d, DST_UNUSED: %d, CLAMP: %d, SRC0_SEL: "
5811 "%d, SRC0_SEXT: %d, SRC0_NEG: %d, SRC0_ABS: %d, SRC1_SEL: "
5812 "%d, SRC1_SEXT: %d, SRC1_NEG: %d, SRC1_ABS: %d\n",
5830 vdst[lane] =
bits(src0_sdwa[lane], 23, 0) *
5831 bits(src1[lane], 23, 0);
5832 origVdst[lane] = vdst[lane];
5840 vdst[lane] =
bits(src0[lane], 23, 0) *
5841 bits(src1[lane], 23, 0);
5864 Wavefront *wf = gpuDynInst->wavefront();
5876 vdst[lane] = (
VecElemU32)((tmp_src0 * tmp_src1) >> 32);
5898 Wavefront *wf = gpuDynInst->wavefront();
5908 vdst[lane] = std::fmin(src0[lane], src1[lane]);
5930 Wavefront *wf = gpuDynInst->wavefront();
5940 vdst[lane] = std::fmax(src0[lane], src1[lane]);
5961 Wavefront *wf = gpuDynInst->wavefront();
5971 vdst[lane] = std::min(src0[lane], src1[lane]);
5992 Wavefront *wf = gpuDynInst->wavefront();
6002 vdst[lane] = std::max(src0[lane], src1[lane]);
6023 Wavefront *wf = gpuDynInst->wavefront();
6033 vdst[lane] = std::min(src0[lane], src1[lane]);
6054 Wavefront *wf = gpuDynInst->wavefront();
6064 vdst[lane] = std::max(src0[lane], src1[lane]);
6086 Wavefront *wf = gpuDynInst->wavefront();
6096 vdst[lane] = src1[lane] >>
bits(src0[lane], 4, 0);
6118 Wavefront *wf = gpuDynInst->wavefront();
6128 vdst[lane] = src1[lane] >>
bits(src0[lane], 4, 0);
6149 Wavefront *wf = gpuDynInst->wavefront();
6166 origSrc0_sdwa.
read();
6169 DPRINTF(GCN3,
"Handling V_LSHLREV_B32 SRC SDWA. SRC0: register "
6170 "v[%d], DST_SEL: %d, DST_UNUSED: %d, CLAMP: %d, SRC0_SEL: "
6171 "%d, SRC0_SEXT: %d, SRC0_NEG: %d, SRC0_ABS: %d, SRC1_SEL: "
6172 "%d, SRC1_SEXT: %d, SRC1_NEG: %d, SRC1_ABS: %d\n",
6190 vdst[lane] = src1[lane] <<
bits(src0_sdwa[lane], 4, 0);
6191 origVdst[lane] = vdst[lane];
6199 vdst[lane] = src1[lane] <<
bits(src0[lane], 4, 0);
6222 Wavefront *wf = gpuDynInst->wavefront();
6232 vdst[lane] = src0[lane] & src1[lane];
6254 Wavefront *wf = gpuDynInst->wavefront();
6271 origSrc0_sdwa.
read();
6274 DPRINTF(GCN3,
"Handling V_OR_B32 SRC SDWA. SRC0: register v[%d], "
6275 "DST_SEL: %d, DST_UNUSED: %d, CLAMP: %d, SRC0_SEL: %d, "
6276 "SRC0_SEXT: %d, SRC0_NEG: %d, SRC0_ABS: %d, SRC1_SEL: %d, "
6277 "SRC1_SEXT: %d, SRC1_NEG: %d, SRC1_ABS: %d\n",
6295 vdst[lane] = src0_sdwa[lane] | src1[lane];
6296 origVdst[lane] = vdst[lane];
6304 vdst[lane] = src0[lane] | src1[lane];
6327 Wavefront *wf = gpuDynInst->wavefront();
6337 vdst[lane] = src0[lane] ^ src1[lane];
6360 Wavefront *wf = gpuDynInst->wavefront();
6373 DPRINTF(GCN3,
"Handling V_MAC_F32 SRC DPP. SRC0: register v[%d], "
6374 "DPP_CTRL: 0x%#x, SRC0_ABS: %d, SRC0_NEG: %d, "
6375 "SRC1_ABS: %d, SRC1_NEG: %d, BOUND_CTRL: %d, "
6390 vdst[lane] = std::fma(src0_dpp[lane], src1[lane],
6397 vdst[lane] = std::fma(src0[lane], src1[lane], vdst[lane]);
6422 Wavefront *wf = gpuDynInst->wavefront();
6433 vdst[lane] = std::fma(src0[lane],
k, src1[lane]);
6457 Wavefront *wf = gpuDynInst->wavefront();
6468 vdst[lane] = std::fma(src0[lane], src1[lane],
k);
6493 Wavefront *wf = gpuDynInst->wavefront();
6511 origSrc0_sdwa.
read();
6514 DPRINTF(GCN3,
"Handling V_ADD_U32 SRC SDWA. SRC0: register v[%d], "
6515 "DST_SEL: %d, DST_UNUSED: %d, CLAMP: %d, SRC0_SEL: %d, "
6516 "SRC0_SEXT: %d, SRC0_NEG: %d, SRC0_ABS: %d, SRC1_SEL: %d, "
6517 "SRC1_SEXT: %d, SRC1_NEG: %d, SRC1_ABS: %d\n",
6535 vdst[lane] = src0_sdwa[lane] + src1[lane];
6536 origVdst[lane] = vdst[lane];
6538 + (
VecElemU64)src1[lane] >= 0x100000000ULL) ? 1 : 0);
6546 vdst[lane] = src0[lane] + src1[lane];
6548 + (
VecElemU64)src1[lane] >= 0x100000000ULL) ? 1 : 0);
6575 Wavefront *wf = gpuDynInst->wavefront();
6586 vdst[lane] = src0[lane] - src1[lane];
6587 vcc.
setBit(lane, src1[lane] > src0[lane] ? 1 : 0);
6613 Wavefront *wf = gpuDynInst->wavefront();
6624 vdst[lane] = src1[lane] - src0[lane];
6625 vcc.
setBit(lane, src0[lane] > src1[lane] ? 1 : 0);
6653 Wavefront *wf = gpuDynInst->wavefront();
6665 vdst[lane] = src0[lane] + src1[lane]
6670 >= 0x100000000 ? 1 : 0);
6698 Wavefront *wf = gpuDynInst->wavefront();
6711 = src0[lane] - src1[lane] -
bits(vcc.
rawData(), lane);
6713 > src0[lane] ? 1 : 0);
6741 Wavefront *wf = gpuDynInst->wavefront();
6754 = src1[lane] - src0[lane] -
bits(vcc.
rawData(), lane);
6756 > src1[lane] ? 1 : 0);
6913 Wavefront *wf = gpuDynInst->wavefront();
6923 vdst[lane] = src0[lane] + src1[lane];
6944 Wavefront *wf = gpuDynInst->wavefront();
6954 vdst[lane] = src0[lane] - src1[lane];
6975 Wavefront *wf = gpuDynInst->wavefront();
6985 vdst[lane] = src1[lane] - src0[lane];
7006 Wavefront *wf = gpuDynInst->wavefront();
7016 vdst[lane] = src0[lane] * src1[lane];
7037 Wavefront *wf = gpuDynInst->wavefront();
7047 vdst[lane] = src1[lane] <<
bits(src0[lane], 3, 0);
7069 Wavefront *wf = gpuDynInst->wavefront();
7079 vdst[lane] = src1[lane] >> src0[lane];
7101 Wavefront *wf = gpuDynInst->wavefront();
7111 vdst[lane] = src1[lane] >> src0[lane];
7168 Wavefront *wf = gpuDynInst->wavefront();
7178 vdst[lane] = std::max(src0[lane], src1[lane]);
7199 Wavefront *wf = gpuDynInst->wavefront();
7209 vdst[lane] = std::max(src0[lane], src1[lane]);
7230 Wavefront *wf = gpuDynInst->wavefront();
7240 vdst[lane] = std::min(src0[lane], src1[lane]);
7261 Wavefront *wf = gpuDynInst->wavefront();
7271 vdst[lane] = std::min(src0[lane], src1[lane]);
7328 Wavefront *wf = gpuDynInst->wavefront();
7338 DPRINTF(GCN3,
"Handling V_MOV_B32 SRC DPP. SRC0: register v[%d], "
7339 "DPP_CTRL: 0x%#x, SRC0_ABS: %d, SRC0_NEG: %d, "
7340 "SRC1_ABS: %d, SRC1_NEG: %d, BOUND_CTRL: %d, "
7359 vdst[lane] = src_dpp[lane];
7365 vdst[lane] = src[lane];
7375 :
Inst_VOP1(iFmt,
"v_readfirstlane_b32")
7391 Wavefront *wf = gpuDynInst->wavefront();
7403 sdst = src[src_lane];
7425 Wavefront *wf = gpuDynInst->wavefront();
7434 std::frexp(src[lane],&exp);
7435 if (std::isnan(src[lane])) {
7437 }
else if (std::isinf(src[lane]) || exp > 30) {
7438 if (std::signbit(src[lane])) {
7439 vdst[lane] = INT_MIN;
7441 vdst[lane] = INT_MAX;
7467 Wavefront *wf = gpuDynInst->wavefront();
7497 Wavefront *wf = gpuDynInst->wavefront();
7527 Wavefront *wf = gpuDynInst->wavefront();
7559 Wavefront *wf = gpuDynInst->wavefront();
7568 std::frexp(src[lane],&exp);
7569 if (std::isnan(src[lane])) {
7571 }
else if (std::isinf(src[lane])) {
7572 if (std::signbit(src[lane])) {
7575 vdst[lane] = UINT_MAX;
7577 }
else if (exp > 31) {
7578 vdst[lane] = UINT_MAX;
7605 Wavefront *wf = gpuDynInst->wavefront();
7614 std::frexp(src[lane],&exp);
7615 if (std::isnan(src[lane])) {
7617 }
else if (std::isinf(src[lane]) || exp > 30) {
7618 if (std::signbit(src[lane])) {
7619 vdst[lane] = INT_MIN;
7621 vdst[lane] = INT_MAX;
7702 Wavefront *wf = gpuDynInst->wavefront();
7710 vdst[lane] = (
VecElemI32)std::floor(src[lane] + 0.5);
7733 Wavefront *wf = gpuDynInst->wavefront();
7741 vdst[lane] = (
VecElemI32)std::floor(src[lane]);
7781 Wavefront *wf = gpuDynInst->wavefront();
7811 Wavefront *wf = gpuDynInst->wavefront();
7841 Wavefront *wf = gpuDynInst->wavefront();
7871 Wavefront *wf = gpuDynInst->wavefront();
7901 Wavefront *wf = gpuDynInst->wavefront();
7931 Wavefront *wf = gpuDynInst->wavefront();
7963 Wavefront *wf = gpuDynInst->wavefront();
7972 std::frexp(src[lane],&exp);
7973 if (std::isnan(src[lane])) {
7975 }
else if (std::isinf(src[lane])) {
7976 if (std::signbit(src[lane])) {
7979 vdst[lane] = UINT_MAX;
7981 }
else if (exp > 31) {
7982 vdst[lane] = UINT_MAX;
8007 Wavefront *wf = gpuDynInst->wavefront();
8037 Wavefront *wf = gpuDynInst->wavefront();
8045 vdst[lane] = std::trunc(src[lane]);
8067 Wavefront *wf = gpuDynInst->wavefront();
8075 vdst[lane] = std::ceil(src[lane]);
8097 Wavefront *wf = gpuDynInst->wavefront();
8127 Wavefront *wf = gpuDynInst->wavefront();
8135 vdst[lane] = std::floor(src[lane]);
8157 Wavefront *wf = gpuDynInst->wavefront();
8166 vdst[lane] = std::modf(src[lane], &int_part);
8188 Wavefront *wf = gpuDynInst->wavefront();
8196 vdst[lane] = std::trunc(src[lane]);
8218 Wavefront *wf = gpuDynInst->wavefront();
8226 vdst[lane] = std::ceil(src[lane]);
8248 Wavefront *wf = gpuDynInst->wavefront();
8278 Wavefront *wf = gpuDynInst->wavefront();
8286 vdst[lane] = std::floor(src[lane]);
8308 Wavefront *wf = gpuDynInst->wavefront();
8316 vdst[lane] = std::pow(2.0, src[lane]);
8338 Wavefront *wf = gpuDynInst->wavefront();
8346 vdst[lane] = std::log2(src[lane]);
8368 Wavefront *wf = gpuDynInst->wavefront();
8376 vdst[lane] = 1.0 / src[lane];
8398 Wavefront *wf = gpuDynInst->wavefront();
8406 vdst[lane] = 1.0 / src[lane];
8428 Wavefront *wf = gpuDynInst->wavefront();
8436 vdst[lane] = 1.0 / std::sqrt(src[lane]);
8458 Wavefront *wf = gpuDynInst->wavefront();
8466 if (std::fpclassify(src[lane]) == FP_ZERO) {
8467 vdst[lane] = +INFINITY;
8468 }
else if (std::isnan(src[lane])) {
8470 }
else if (std::isinf(src[lane])) {
8471 if (std::signbit(src[lane])) {
8477 vdst[lane] = 1.0 / src[lane];
8500 Wavefront *wf = gpuDynInst->wavefront();
8508 if (std::fpclassify(src[lane]) == FP_ZERO) {
8509 vdst[lane] = +INFINITY;
8510 }
else if (std::isnan(src[lane])) {
8512 }
else if (std::isinf(src[lane])
8513 && !std::signbit(src[lane])) {
8515 }
else if (std::signbit(src[lane])) {
8518 vdst[lane] = 1.0 / std::sqrt(src[lane]);
8541 Wavefront *wf = gpuDynInst->wavefront();
8549 vdst[lane] = std::sqrt(src[lane]);
8571 Wavefront *wf = gpuDynInst->wavefront();
8579 vdst[lane] = std::sqrt(src[lane]);
8601 Wavefront *wf = gpuDynInst->wavefront();
8611 if (src[lane] < -256.0 || src[lane] > 256.0) {
8614 vdst[lane] = std::sin(src[lane] * 2.0 * pi.
rawData());
8637 Wavefront *wf = gpuDynInst->wavefront();
8647 if (src[lane] < -256.0 || src[lane] > 256.0) {
8650 vdst[lane] = std::cos(src[lane] * 2.0 * pi.
rawData());
8673 Wavefront *wf = gpuDynInst->wavefront();
8681 vdst[lane] = ~src[lane];
8703 Wavefront *wf = gpuDynInst->wavefront();
8733 Wavefront *wf = gpuDynInst->wavefront();
8763 Wavefront *wf = gpuDynInst->wavefront();
8793 Wavefront *wf = gpuDynInst->wavefront();
8810 :
Inst_VOP1(iFmt,
"v_frexp_exp_i32_f64")
8823 Wavefront *wf = gpuDynInst->wavefront();
8831 if (std::isinf(src[lane]) || std::isnan(src[lane])) {
8835 std::frexp(src[lane], &exp);
8858 Wavefront *wf = gpuDynInst->wavefront();
8866 if (std::isinf(src[lane]) || std::isnan(src[lane])) {
8867 vdst[lane] = src[lane];
8870 vdst[lane] = std::frexp(src[lane], &exp);
8892 Wavefront *wf = gpuDynInst->wavefront();
8901 vdst[lane] = std::modf(src[lane], &int_part);
8910 :
Inst_VOP1(iFmt,
"v_frexp_exp_i32_f32")
8926 Wavefront *wf = gpuDynInst->wavefront();
8934 if (std::isinf(src[lane]) || std::isnan(src[lane])) {
8938 std::frexp(src[lane], &exp);
8963 Wavefront *wf = gpuDynInst->wavefront();
8971 if (std::isinf(src[lane]) || std::isnan(src[lane])) {
8972 vdst[lane] = src[lane];
8975 vdst[lane] = std::frexp(src[lane], &exp);
9199 :
Inst_VOP1(iFmt,
"v_frexp_exp_i16_f16")
9361 Wavefront *wf = gpuDynInst->wavefront();
9369 vdst[lane] = std::pow(2.0, src[lane]);
9391 Wavefront *wf = gpuDynInst->wavefront();
9399 vdst[lane] = std::log2(src[lane]);
9433 Wavefront *wf = gpuDynInst->wavefront();
9443 if (
bits(src1[lane], 0) ||
bits(src1[lane], 1)) {
9445 if (std::isnan(src0[lane])) {
9450 if (
bits(src1[lane], 2)) {
9452 if (std::isinf(src0[lane]) && std::signbit(src0[lane])) {
9457 if (
bits(src1[lane], 3)) {
9459 if (std::isnormal(src0[lane])
9460 && std::signbit(src0[lane])) {
9465 if (
bits(src1[lane], 4)) {
9467 if (std::fpclassify(src0[lane]) == FP_SUBNORMAL
9468 && std::signbit(src0[lane])) {
9473 if (
bits(src1[lane], 5)) {
9475 if (std::fpclassify(src0[lane]) == FP_ZERO
9476 && std::signbit(src0[lane])) {
9481 if (
bits(src1[lane], 6)) {
9483 if (std::fpclassify(src0[lane]) == FP_ZERO
9484 && !std::signbit(src0[lane])) {
9489 if (
bits(src1[lane], 7)) {
9491 if (std::fpclassify(src0[lane]) == FP_SUBNORMAL
9492 && !std::signbit(src0[lane])) {
9497 if (
bits(src1[lane], 8)) {
9499 if (std::isnormal(src0[lane])
9500 && !std::signbit(src0[lane])) {
9505 if (
bits(src1[lane], 9)) {
9507 if (std::isinf(src0[lane]) && !std::signbit(src0[lane])) {
9545 Wavefront *wf = gpuDynInst->wavefront();
9555 if (
bits(src1[lane], 0) ||
bits(src1[lane], 1)) {
9557 if (std::isnan(src0[lane])) {
9562 if (
bits(src1[lane], 2)) {
9564 if (std::isinf(src0[lane]) && std::signbit(src0[lane])) {
9569 if (
bits(src1[lane], 3)) {
9571 if (std::isnormal(src0[lane])
9572 && std::signbit(src0[lane])) {
9577 if (
bits(src1[lane], 4)) {
9579 if (std::fpclassify(src0[lane]) == FP_SUBNORMAL
9580 && std::signbit(src0[lane])) {
9585 if (
bits(src1[lane], 5)) {
9587 if (std::fpclassify(src0[lane]) == FP_ZERO
9588 && std::signbit(src0[lane])) {
9593 if (
bits(src1[lane], 6)) {
9595 if (std::fpclassify(src0[lane]) == FP_ZERO
9596 && !std::signbit(src0[lane])) {
9601 if (
bits(src1[lane], 7)) {
9603 if (std::fpclassify(src0[lane]) == FP_SUBNORMAL
9604 && !std::signbit(src0[lane])) {
9609 if (
bits(src1[lane], 8)) {
9611 if (std::isnormal(src0[lane])
9612 && !std::signbit(src0[lane])) {
9617 if (
bits(src1[lane], 9)) {
9619 if (std::isinf(src0[lane]) && !std::signbit(src0[lane])) {
9658 Wavefront *wf = gpuDynInst->wavefront();
9668 if (
bits(src1[lane], 0) ||
bits(src1[lane], 1)) {
9670 if (std::isnan(src0[lane])) {
9675 if (
bits(src1[lane], 2)) {
9677 if (std::isinf(src0[lane]) && std::signbit(src0[lane])) {
9682 if (
bits(src1[lane], 3)) {
9684 if (std::isnormal(src0[lane])
9685 && std::signbit(src0[lane])) {
9690 if (
bits(src1[lane], 4)) {
9692 if (std::fpclassify(src0[lane]) == FP_SUBNORMAL
9693 && std::signbit(src0[lane])) {
9698 if (
bits(src1[lane], 5)) {
9700 if (std::fpclassify(src0[lane]) == FP_ZERO
9701 && std::signbit(src0[lane])) {
9706 if (
bits(src1[lane], 6)) {
9708 if (std::fpclassify(src0[lane]) == FP_ZERO
9709 && !std::signbit(src0[lane])) {
9714 if (
bits(src1[lane], 7)) {
9716 if (std::fpclassify(src0[lane]) == FP_SUBNORMAL
9717 && !std::signbit(src0[lane])) {
9722 if (
bits(src1[lane], 8)) {
9724 if (std::isnormal(src0[lane])
9725 && !std::signbit(src0[lane])) {
9730 if (
bits(src1[lane], 9)) {
9732 if (std::isinf(src0[lane])
9733 && !std::signbit(src0[lane])) {
9771 Wavefront *wf = gpuDynInst->wavefront();
9781 if (
bits(src1[lane], 0) ||
bits(src1[lane], 1)) {
9783 if (std::isnan(src0[lane])) {
9788 if (
bits(src1[lane], 2)) {
9790 if (std::isinf(src0[lane]) && std::signbit(src0[lane])) {
9795 if (
bits(src1[lane], 3)) {
9797 if (std::isnormal(src0[lane])
9798 && std::signbit(src0[lane])) {
9803 if (
bits(src1[lane], 4)) {
9805 if (std::fpclassify(src0[lane]) == FP_SUBNORMAL
9806 && std::signbit(src0[lane])) {
9811 if (
bits(src1[lane], 5)) {
9813 if (std::fpclassify(src0[lane]) == FP_ZERO
9814 && std::signbit(src0[lane])) {
9819 if (
bits(src1[lane], 6)) {
9821 if (std::fpclassify(src0[lane]) == FP_ZERO
9822 && !std::signbit(src0[lane])) {
9827 if (
bits(src1[lane], 7)) {
9829 if (std::fpclassify(src0[lane]) == FP_SUBNORMAL
9830 && !std::signbit(src0[lane])) {
9835 if (
bits(src1[lane], 8)) {
9837 if (std::isnormal(src0[lane])
9838 && !std::signbit(src0[lane])) {
9843 if (
bits(src1[lane], 9)) {
9845 if (std::isinf(src0[lane])
9846 && !std::signbit(src0[lane])) {
10512 Wavefront *wf = gpuDynInst->wavefront();
10539 Wavefront *wf = gpuDynInst->wavefront();
10549 vcc.
setBit(lane, src0[lane] < src1[lane] ? 1 : 0);
10571 Wavefront *wf = gpuDynInst->wavefront();
10581 vcc.
setBit(lane, src0[lane] == src1[lane] ? 1 : 0);
10603 Wavefront *wf = gpuDynInst->wavefront();
10613 vcc.
setBit(lane, src0[lane] <= src1[lane] ? 1 : 0);
10635 Wavefront *wf = gpuDynInst->wavefront();
10645 vcc.
setBit(lane, src0[lane] > src1[lane] ? 1 : 0);
10667 Wavefront *wf = gpuDynInst->wavefront();
10677 vcc.
setBit(lane, (src0[lane] < src1[lane]
10678 || src0[lane] > src1[lane]) ? 1 : 0);
10700 Wavefront *wf = gpuDynInst->wavefront();
10710 vcc.
setBit(lane, src0[lane] >= src1[lane] ? 1 : 0);
10732 Wavefront *wf = gpuDynInst->wavefront();
10742 vcc.
setBit(lane, (!std::isnan(src0[lane])
10743 && !std::isnan(src1[lane])) ? 1 : 0);
10765 Wavefront *wf = gpuDynInst->wavefront();
10775 vcc.
setBit(lane, (std::isnan(src0[lane])
10776 || std::isnan(src1[lane])) ? 1 : 0);
10798 Wavefront *wf = gpuDynInst->wavefront();
10808 vcc.
setBit(lane, !(src0[lane] >= src1[lane]) ? 1 : 0);
10830 Wavefront *wf = gpuDynInst->wavefront();
10840 vcc.
setBit(lane, !(src0[lane] < src1[lane]
10841 || src0[lane] > src1[lane]) ? 1 : 0);
10863 Wavefront *wf = gpuDynInst->wavefront();
10873 vcc.
setBit(lane, !(src0[lane] > src1[lane]) ? 1 : 0);
10895 Wavefront *wf = gpuDynInst->wavefront();
10905 vcc.
setBit(lane, !(src0[lane] <= src1[lane]) ? 1 : 0);
10927 Wavefront *wf = gpuDynInst->wavefront();
10937 vcc.
setBit(lane, src0[lane] != src1[lane] ? 1 : 0);
10959 Wavefront *wf = gpuDynInst->wavefront();
10969 vcc.
setBit(lane, !(src0[lane] < src1[lane]) ? 1 : 0);
10991 Wavefront *wf = gpuDynInst->wavefront();
11018 Wavefront *wf = gpuDynInst->wavefront();
11046 Wavefront *wf = gpuDynInst->wavefront();
11056 vcc.
setBit(lane, src0[lane] < src1[lane] ? 1 : 0);
11079 Wavefront *wf = gpuDynInst->wavefront();
11089 vcc.
setBit(lane, src0[lane] == src1[lane] ? 1 : 0);
11112 Wavefront *wf = gpuDynInst->wavefront();
11122 vcc.
setBit(lane, src0[lane] <= src1[lane] ? 1 : 0);
11145 Wavefront *wf = gpuDynInst->wavefront();
11155 vcc.
setBit(lane, src0[lane] > src1[lane] ? 1 : 0);
11178 Wavefront *wf = gpuDynInst->wavefront();
11188 vcc.
setBit(lane, (src0[lane] < src1[lane]
11189 || src0[lane] > src1[lane]) ? 1 : 0);
11212 Wavefront *wf = gpuDynInst->wavefront();
11222 vcc.
setBit(lane, src0[lane] >= src1[lane] ? 1 : 0);
11246 Wavefront *wf = gpuDynInst->wavefront();
11256 vcc.
setBit(lane, (!std::isnan(src0[lane])
11257 && !std::isnan(src1[lane])) ? 1 : 0);
11281 Wavefront *wf = gpuDynInst->wavefront();
11291 vcc.
setBit(lane, (std::isnan(src0[lane])
11292 || std::isnan(src1[lane])) ? 1 : 0);
11315 Wavefront *wf = gpuDynInst->wavefront();
11325 vcc.
setBit(lane, !(src0[lane] >= src1[lane]) ? 1 : 0);
11348 Wavefront *wf = gpuDynInst->wavefront();
11358 vcc.
setBit(lane, !(src0[lane] < src1[lane]
11359 || src0[lane] > src1[lane]) ? 1 : 0);
11382 Wavefront *wf = gpuDynInst->wavefront();
11392 vcc.
setBit(lane, !(src0[lane] > src1[lane]) ? 1 : 0);
11415 Wavefront *wf = gpuDynInst->wavefront();
11425 vcc.
setBit(lane, !(src0[lane] <= src1[lane]) ? 1 : 0);
11448 Wavefront *wf = gpuDynInst->wavefront();
11458 vcc.
setBit(lane, !(src0[lane] == src1[lane]) ? 1 : 0);
11480 Wavefront *wf = gpuDynInst->wavefront();
11490 vcc.
setBit(lane, !(src0[lane] < src1[lane]) ? 1 : 0);
11513 Wavefront *wf = gpuDynInst->wavefront();
11541 Wavefront *wf = gpuDynInst->wavefront();
11568 Wavefront *wf = gpuDynInst->wavefront();
11578 vcc.
setBit(lane, src0[lane] < src1[lane] ? 1 : 0);
11600 Wavefront *wf = gpuDynInst->wavefront();
11610 vcc.
setBit(lane, src0[lane] == src1[lane] ? 1 : 0);
11632 Wavefront *wf = gpuDynInst->wavefront();
11642 vcc.
setBit(lane, src0[lane] <= src1[lane] ? 1 : 0);
11664 Wavefront *wf = gpuDynInst->wavefront();
11674 vcc.
setBit(lane, src0[lane] > src1[lane] ? 1 : 0);
11696 Wavefront *wf = gpuDynInst->wavefront();
11706 vcc.
setBit(lane, (src0[lane] < src1[lane]
11707 || src0[lane] > src1[lane]) ? 1 : 0);
11729 Wavefront *wf = gpuDynInst->wavefront();
11739 vcc.
setBit(lane, src0[lane] >= src1[lane] ? 1 : 0);
11761 Wavefront *wf = gpuDynInst->wavefront();
11771 vcc.
setBit(lane, (!std::isnan(src0[lane])
11772 && !std::isnan(src1[lane])) ? 1 : 0);
11794 Wavefront *wf = gpuDynInst->wavefront();
11804 vcc.
setBit(lane, (std::isnan(src0[lane])
11805 || std::isnan(src1[lane])) ? 1 : 0);
11827 Wavefront *wf = gpuDynInst->wavefront();
11837 vcc.
setBit(lane, !(src0[lane] >= src1[lane]) ? 1 : 0);
11859 Wavefront *wf = gpuDynInst->wavefront();
11869 vcc.
setBit(lane, !(src0[lane] < src1[lane]
11870 || src0[lane] > src1[lane]) ? 1 : 0);
11892 Wavefront *wf = gpuDynInst->wavefront();
11902 vcc.
setBit(lane, !(src0[lane] > src1[lane]) ? 1 : 0);
11924 Wavefront *wf = gpuDynInst->wavefront();
11934 vcc.
setBit(lane, !(src0[lane] <= src1[lane]) ? 1 : 0);
11956 Wavefront *wf = gpuDynInst->wavefront();
11966 vcc.
setBit(lane, src0[lane] != src1[lane] ? 1 : 0);
11988 Wavefront *wf = gpuDynInst->wavefront();
11998 vcc.
setBit(lane, !(src0[lane] < src1[lane]) ? 1 : 0);
12020 Wavefront *wf = gpuDynInst->wavefront();
12047 Wavefront *wf = gpuDynInst->wavefront();
12075 Wavefront *wf = gpuDynInst->wavefront();
12085 vcc.
setBit(lane, src0[lane] < src1[lane] ? 1 : 0);
12108 Wavefront *wf = gpuDynInst->wavefront();
12118 vcc.
setBit(lane, src0[lane] == src1[lane] ? 1 : 0);
12141 Wavefront *wf = gpuDynInst->wavefront();
12151 vcc.
setBit(lane, src0[lane] <= src1[lane] ? 1 : 0);
12174 Wavefront *wf = gpuDynInst->wavefront();
12184 vcc.
setBit(lane, src0[lane] > src1[lane] ? 1 : 0);
12207 Wavefront *wf = gpuDynInst->wavefront();
12217 vcc.
setBit(lane, (src0[lane] < src1[lane]
12218 || src0[lane] > src1[lane]) ? 1 : 0);
12241 Wavefront *wf = gpuDynInst->wavefront();
12251 vcc.
setBit(lane, src0[lane] >= src1[lane] ? 1 : 0);
12275 Wavefront *wf = gpuDynInst->wavefront();
12285 vcc.
setBit(lane, (!std::isnan(src0[lane])
12286 && !std::isnan(src1[lane])) ? 1 : 0);
12310 Wavefront *wf = gpuDynInst->wavefront();
12320 vcc.
setBit(lane, (std::isnan(src0[lane])
12321 || std::isnan(src1[lane])) ? 1 : 0);
12344 Wavefront *wf = gpuDynInst->wavefront();
12354 vcc.
setBit(lane, !(src0[lane] >= src1[lane]) ? 1 : 0);
12377 Wavefront *wf = gpuDynInst->wavefront();
12387 vcc.
setBit(lane, !(src0[lane] < src1[lane]
12388 || src0[lane] > src1[lane]) ? 1 : 0);
12411 Wavefront *wf = gpuDynInst->wavefront();
12421 vcc.
setBit(lane, !(src0[lane] > src1[lane]) ? 1 : 0);
12444 Wavefront *wf = gpuDynInst->wavefront();
12454 vcc.
setBit(lane, !(src0[lane] <= src1[lane]) ? 1 : 0);
12477 Wavefront *wf = gpuDynInst->wavefront();
12487 vcc.
setBit(lane, src0[lane] != src1[lane] ? 1 : 0);
12510 Wavefront *wf = gpuDynInst->wavefront();
12520 vcc.
setBit(lane, !(src0[lane] < src1[lane]) ? 1 : 0);
12543 Wavefront *wf = gpuDynInst->wavefront();
12570 Wavefront *wf = gpuDynInst->wavefront();
12596 Wavefront *wf = gpuDynInst->wavefront();
12606 vcc.
setBit(lane, src0[lane] < src1[lane] ? 1 : 0);
12627 Wavefront *wf = gpuDynInst->wavefront();
12637 vcc.
setBit(lane, src0[lane] == src1[lane] ? 1 : 0);
12658 Wavefront *wf = gpuDynInst->wavefront();
12668 vcc.
setBit(lane, src0[lane] <= src1[lane] ? 1 : 0);
12689 Wavefront *wf = gpuDynInst->wavefront();
12699 vcc.
setBit(lane, src0[lane] > src1[lane] ? 1 : 0);
12720 Wavefront *wf = gpuDynInst->wavefront();
12730 vcc.
setBit(lane, src0[lane] != src1[lane] ? 1 : 0);
12751 Wavefront *wf = gpuDynInst->wavefront();
12761 vcc.
setBit(lane, src0[lane] >= src1[lane] ? 1 : 0);
12782 Wavefront *wf = gpuDynInst->wavefront();
12808 Wavefront *wf = gpuDynInst->wavefront();
12834 Wavefront *wf = gpuDynInst->wavefront();
12844 vcc.
setBit(lane, src0[lane] < src1[lane] ? 1 : 0);
12865 Wavefront *wf = gpuDynInst->wavefront();
12875 vcc.
setBit(lane, src0[lane] == src1[lane] ? 1 : 0);
12896 Wavefront *wf = gpuDynInst->wavefront();
12906 vcc.
setBit(lane, src0[lane] <= src1[lane] ? 1 : 0);
12927 Wavefront *wf = gpuDynInst->wavefront();
12937 vcc.
setBit(lane, src0[lane] > src1[lane] ? 1 : 0);
12958 Wavefront *wf = gpuDynInst->wavefront();
12968 vcc.
setBit(lane, src0[lane] != src1[lane] ? 1 : 0);
12989 Wavefront *wf = gpuDynInst->wavefront();
12999 vcc.
setBit(lane, src0[lane] >= src1[lane] ? 1 : 0);
13020 Wavefront *wf = gpuDynInst->wavefront();
13046 Wavefront *wf = gpuDynInst->wavefront();
13073 Wavefront *wf = gpuDynInst->wavefront();
13083 vcc.
setBit(lane, src0[lane] < src1[lane] ? 1 : 0);
13105 Wavefront *wf = gpuDynInst->wavefront();
13115 vcc.
setBit(lane, src0[lane] == src1[lane] ? 1 : 0);
13137 Wavefront *wf = gpuDynInst->wavefront();
13147 vcc.
setBit(lane, src0[lane] <= src1[lane] ? 1 : 0);
13169 Wavefront *wf = gpuDynInst->wavefront();
13179 vcc.
setBit(lane, src0[lane] > src1[lane] ? 1 : 0);
13201 Wavefront *wf = gpuDynInst->wavefront();
13211 vcc.
setBit(lane, src0[lane] != src1[lane] ? 1 : 0);
13233 Wavefront *wf = gpuDynInst->wavefront();
13243 vcc.
setBit(lane, src0[lane] >= src1[lane] ? 1 : 0);
13265 Wavefront *wf = gpuDynInst->wavefront();
13292 Wavefront *wf = gpuDynInst->wavefront();
13319 Wavefront *wf = gpuDynInst->wavefront();
13329 vcc.
setBit(lane, src0[lane] < src1[lane] ? 1 : 0);
13351 Wavefront *wf = gpuDynInst->wavefront();
13361 vcc.
setBit(lane, src0[lane] == src1[lane] ? 1 : 0);
13383 Wavefront *wf = gpuDynInst->wavefront();
13393 vcc.
setBit(lane, src0[lane] <= src1[lane] ? 1 : 0);
13415 Wavefront *wf = gpuDynInst->wavefront();
13425 vcc.
setBit(lane, src0[lane] > src1[lane] ? 1 : 0);
13447 Wavefront *wf = gpuDynInst->wavefront();
13457 vcc.
setBit(lane, src0[lane] != src1[lane] ? 1 : 0);
13479 Wavefront *wf = gpuDynInst->wavefront();
13489 vcc.
setBit(lane, src0[lane] >= src1[lane] ? 1 : 0);
13511 Wavefront *wf = gpuDynInst->wavefront();
13538 Wavefront *wf = gpuDynInst->wavefront();
13564 Wavefront *wf = gpuDynInst->wavefront();
13574 vcc.
setBit(lane, src0[lane] < src1[lane] ? 1 : 0);
13595 Wavefront *wf = gpuDynInst->wavefront();
13605 vcc.
setBit(lane, src0[lane] == src1[lane] ? 1 : 0);
13626 Wavefront *wf = gpuDynInst->wavefront();
13636 vcc.
setBit(lane, src0[lane] <= src1[lane] ? 1 : 0);
13657 Wavefront *wf = gpuDynInst->wavefront();
13667 vcc.
setBit(lane, src0[lane] > src1[lane] ? 1 : 0);
13688 Wavefront *wf = gpuDynInst->wavefront();
13698 vcc.
setBit(lane, src0[lane] != src1[lane] ? 1 : 0);
13719 Wavefront *wf = gpuDynInst->wavefront();
13729 vcc.
setBit(lane, src0[lane] >= src1[lane] ? 1 : 0);
13750 Wavefront *wf = gpuDynInst->wavefront();
13776 Wavefront *wf = gpuDynInst->wavefront();
13802 Wavefront *wf = gpuDynInst->wavefront();
13812 vcc.
setBit(lane, src0[lane] < src1[lane] ? 1 : 0);
13833 Wavefront *wf = gpuDynInst->wavefront();
13843 vcc.
setBit(lane, src0[lane] == src1[lane] ? 1 : 0);
13864 Wavefront *wf = gpuDynInst->wavefront();
13874 vcc.
setBit(lane, src0[lane] <= src1[lane] ? 1 : 0);
13895 Wavefront *wf = gpuDynInst->wavefront();
13905 vcc.
setBit(lane, src0[lane] > src1[lane] ? 1 : 0);
13926 Wavefront *wf = gpuDynInst->wavefront();
13936 vcc.
setBit(lane, src0[lane] != src1[lane] ? 1 : 0);
13957 Wavefront *wf = gpuDynInst->wavefront();
13967 vcc.
setBit(lane, src0[lane] >= src1[lane] ? 1 : 0);
13988 Wavefront *wf = gpuDynInst->wavefront();
14014 Wavefront *wf = gpuDynInst->wavefront();
14041 Wavefront *wf = gpuDynInst->wavefront();
14051 vcc.
setBit(lane, src0[lane] < src1[lane] ? 1 : 0);
14073 Wavefront *wf = gpuDynInst->wavefront();
14083 vcc.
setBit(lane, src0[lane] == src1[lane] ? 1 : 0);
14105 Wavefront *wf = gpuDynInst->wavefront();
14115 vcc.
setBit(lane, src0[lane] <= src1[lane] ? 1 : 0);
14137 Wavefront *wf = gpuDynInst->wavefront();
14147 vcc.
setBit(lane, src0[lane] > src1[lane] ? 1 : 0);
14169 Wavefront *wf = gpuDynInst->wavefront();
14179 vcc.
setBit(lane, src0[lane] != src1[lane] ? 1 : 0);
14201 Wavefront *wf = gpuDynInst->wavefront();
14211 vcc.
setBit(lane, src0[lane] >= src1[lane] ? 1 : 0);
14233 Wavefront *wf = gpuDynInst->wavefront();
14260 Wavefront *wf = gpuDynInst->wavefront();
14287 Wavefront *wf = gpuDynInst->wavefront();
14297 vcc.
setBit(lane, src0[lane] < src1[lane] ? 1 : 0);
14319 Wavefront *wf = gpuDynInst->wavefront();
14329 vcc.
setBit(lane, src0[lane] == src1[lane] ? 1 : 0);
14351 Wavefront *wf = gpuDynInst->wavefront();
14361 vcc.
setBit(lane, src0[lane] <= src1[lane] ? 1 : 0);
14383 Wavefront *wf = gpuDynInst->wavefront();
14393 vcc.
setBit(lane, src0[lane] > src1[lane] ? 1 : 0);
14415 Wavefront *wf = gpuDynInst->wavefront();
14425 vcc.
setBit(lane, src0[lane] != src1[lane] ? 1 : 0);
14447 Wavefront *wf = gpuDynInst->wavefront();
14457 vcc.
setBit(lane, src0[lane] >= src1[lane] ? 1 : 0);
14479 Wavefront *wf = gpuDynInst->wavefront();
14506 Wavefront *wf = gpuDynInst->wavefront();
14532 Wavefront *wf = gpuDynInst->wavefront();
14542 vcc.
setBit(lane, src0[lane] < src1[lane] ? 1 : 0);
14563 Wavefront *wf = gpuDynInst->wavefront();
14573 vcc.
setBit(lane, src0[lane] == src1[lane] ? 1 : 0);
14594 Wavefront *wf = gpuDynInst->wavefront();
14604 vcc.
setBit(lane, src0[lane] <= src1[lane] ? 1 : 0);
14625 Wavefront *wf = gpuDynInst->wavefront();
14635 vcc.
setBit(lane, src0[lane] > src1[lane] ? 1 : 0);
14656 Wavefront *wf = gpuDynInst->wavefront();
14666 vcc.
setBit(lane, src0[lane] != src1[lane] ? 1 : 0);
14687 Wavefront *wf = gpuDynInst->wavefront();
14697 vcc.
setBit(lane, src0[lane] >= src1[lane] ? 1 : 0);
14718 Wavefront *wf = gpuDynInst->wavefront();
14744 Wavefront *wf = gpuDynInst->wavefront();
14770 Wavefront *wf = gpuDynInst->wavefront();
14780 vcc.
setBit(lane, src0[lane] < src1[lane] ? 1 : 0);
14801 Wavefront *wf = gpuDynInst->wavefront();
14811 vcc.
setBit(lane, src0[lane] == src1[lane] ? 1 : 0);
14832 Wavefront *wf = gpuDynInst->wavefront();
14842 vcc.
setBit(lane, src0[lane] <= src1[lane] ? 1 : 0);
14863 Wavefront *wf = gpuDynInst->wavefront();
14873 vcc.
setBit(lane, src0[lane] > src1[lane] ? 1 : 0);
14894 Wavefront *wf = gpuDynInst->wavefront();
14904 vcc.
setBit(lane, src0[lane] != src1[lane] ? 1 : 0);
14925 Wavefront *wf = gpuDynInst->wavefront();
14935 vcc.
setBit(lane, src0[lane] >= src1[lane] ? 1 : 0);
14956 Wavefront *wf = gpuDynInst->wavefront();
14982 Wavefront *wf = gpuDynInst->wavefront();
15009 Wavefront *wf = gpuDynInst->wavefront();
15019 vcc.
setBit(lane, src0[lane] < src1[lane] ? 1 : 0);
15041 Wavefront *wf = gpuDynInst->wavefront();
15051 vcc.
setBit(lane, src0[lane] == src1[lane] ? 1 : 0);
15073 Wavefront *wf = gpuDynInst->wavefront();
15083 vcc.
setBit(lane, src0[lane] <= src1[lane] ? 1 : 0);
15105 Wavefront *wf = gpuDynInst->wavefront();
15115 vcc.
setBit(lane, src0[lane] > src1[lane] ? 1 : 0);
15137 Wavefront *wf = gpuDynInst->wavefront();
15147 vcc.
setBit(lane, src0[lane] != src1[lane] ? 1 : 0);
15169 Wavefront *wf = gpuDynInst->wavefront();
15179 vcc.
setBit(lane, src0[lane] >= src1[lane] ? 1 : 0);
15201 Wavefront *wf = gpuDynInst->wavefront();
15228 Wavefront *wf = gpuDynInst->wavefront();
15255 Wavefront *wf = gpuDynInst->wavefront();
15265 vcc.
setBit(lane, src0[lane] < src1[lane] ? 1 : 0);
15287 Wavefront *wf = gpuDynInst->wavefront();
15297 vcc.
setBit(lane, src0[lane] == src1[lane] ? 1 : 0);
15319 Wavefront *wf = gpuDynInst->wavefront();
15329 vcc.
setBit(lane, src0[lane] <= src1[lane] ? 1 : 0);
15351 Wavefront *wf = gpuDynInst->wavefront();
15361 vcc.
setBit(lane, src0[lane] > src1[lane] ? 1 : 0);
15383 Wavefront *wf = gpuDynInst->wavefront();
15393 vcc.
setBit(lane, src0[lane] != src1[lane] ? 1 : 0);
15415 Wavefront *wf = gpuDynInst->wavefront();
15425 vcc.
setBit(lane, src0[lane] >= src1[lane] ? 1 : 0);
15447 Wavefront *wf = gpuDynInst->wavefront();
15518 :
Inst_VOP3(iFmt,
"v_cmp_class_f32", true)
15544 Wavefront *wf = gpuDynInst->wavefront();
15554 if (
bits(src1[lane], 0) ||
bits(src1[lane], 1)) {
15556 if (std::isnan(src0[lane])) {
15561 if (
bits(src1[lane], 2)) {
15563 if (std::isinf(src0[lane]) && std::signbit(src0[lane])) {
15568 if (
bits(src1[lane], 3)) {
15570 if (std::isnormal(src0[lane])
15571 && std::signbit(src0[lane])) {
15576 if (
bits(src1[lane], 4)) {
15578 if (std::fpclassify(src0[lane]) == FP_SUBNORMAL
15579 && std::signbit(src0[lane])) {
15584 if (
bits(src1[lane], 5)) {
15586 if (std::fpclassify(src0[lane]) == FP_ZERO
15587 && std::signbit(src0[lane])) {
15592 if (
bits(src1[lane], 6)) {
15594 if (std::fpclassify(src0[lane]) == FP_ZERO
15595 && !std::signbit(src0[lane])) {
15600 if (
bits(src1[lane], 7)) {
15602 if (std::fpclassify(src0[lane]) == FP_SUBNORMAL
15603 && !std::signbit(src0[lane])) {
15608 if (
bits(src1[lane], 8)) {
15610 if (std::isnormal(src0[lane])
15611 && !std::signbit(src0[lane])) {
15616 if (
bits(src1[lane], 9)) {
15618 if (std::isinf(src0[lane])
15619 && !std::signbit(src0[lane])) {
15632 :
Inst_VOP3(iFmt,
"v_cmpx_class_f32", true)
15659 Wavefront *wf = gpuDynInst->wavefront();
15669 if (
bits(src1[lane], 0) ||
bits(src1[lane], 1)) {
15671 if (std::isnan(src0[lane])) {
15676 if (
bits(src1[lane], 2)) {
15678 if (std::isinf(src0[lane]) && std::signbit(src0[lane])) {
15683 if (
bits(src1[lane], 3)) {
15685 if (std::isnormal(src0[lane])
15686 && std::signbit(src0[lane])) {
15691 if (
bits(src1[lane], 4)) {
15693 if (std::fpclassify(src0[lane]) == FP_SUBNORMAL
15694 && std::signbit(src0[lane])) {
15699 if (
bits(src1[lane], 5)) {
15701 if (std::fpclassify(src0[lane]) == FP_ZERO
15702 && std::signbit(src0[lane])) {
15707 if (
bits(src1[lane], 6)) {
15709 if (std::fpclassify(src0[lane]) == FP_ZERO
15710 && !std::signbit(src0[lane])) {
15715 if (
bits(src1[lane], 7)) {
15717 if (std::fpclassify(src0[lane]) == FP_SUBNORMAL
15718 && !std::signbit(src0[lane])) {
15723 if (
bits(src1[lane], 8)) {
15725 if (std::isnormal(src0[lane])
15726 && !std::signbit(src0[lane])) {
15731 if (
bits(src1[lane], 9)) {
15733 if (std::isinf(src0[lane])
15734 && !std::signbit(src0[lane])) {
15748 :
Inst_VOP3(iFmt,
"v_cmp_class_f64", true)
15774 Wavefront *wf = gpuDynInst->wavefront();
15784 if (
bits(src1[lane], 0) ||
bits(src1[lane], 1)) {
15786 if (std::isnan(src0[lane])) {
15791 if (
bits(src1[lane], 2)) {
15793 if (std::isinf(src0[lane]) && std::signbit(src0[lane])) {
15798 if (
bits(src1[lane], 3)) {
15800 if (std::isnormal(src0[lane])
15801 && std::signbit(src0[lane])) {
15806 if (
bits(src1[lane], 4)) {
15808 if (std::fpclassify(src0[lane]) == FP_SUBNORMAL
15809 && std::signbit(src0[lane])) {
15814 if (
bits(src1[lane], 5)) {
15816 if (std::fpclassify(src0[lane]) == FP_ZERO
15817 && std::signbit(src0[lane])) {
15822 if (
bits(src1[lane], 6)) {
15824 if (std::fpclassify(src0[lane]) == FP_ZERO
15825 && !std::signbit(src0[lane])) {
15830 if (
bits(src1[lane], 7)) {
15832 if (std::fpclassify(src0[lane]) == FP_SUBNORMAL
15833 && !std::signbit(src0[lane])) {
15838 if (
bits(src1[lane], 8)) {
15840 if (std::isnormal(src0[lane])
15841 && !std::signbit(src0[lane])) {
15846 if (
bits(src1[lane], 9)) {
15848 if (std::isinf(src0[lane])
15849 && !std::signbit(src0[lane])) {
15862 :
Inst_VOP3(iFmt,
"v_cmpx_class_f64", true)
15889 Wavefront *wf = gpuDynInst->wavefront();
15899 if (
bits(src1[lane], 0) ||
bits(src1[lane], 1)) {
15901 if (std::isnan(src0[lane])) {
15906 if (
bits(src1[lane], 2)) {
15908 if (std::isinf(src0[lane]) && std::signbit(src0[lane])) {
15913 if (
bits(src1[lane], 3)) {
15915 if (std::isnormal(src0[lane])
15916 && std::signbit(src0[lane])) {
15921 if (
bits(src1[lane], 4)) {
15923 if (std::fpclassify(src0[lane]) == FP_SUBNORMAL
15924 && std::signbit(src0[lane])) {
15929 if (
bits(src1[lane], 5)) {
15931 if (std::fpclassify(src0[lane]) == FP_ZERO
15932 && std::signbit(src0[lane])) {
15937 if (
bits(src1[lane], 6)) {
15939 if (std::fpclassify(src0[lane]) == FP_ZERO
15940 && !std::signbit(src0[lane])) {
15945 if (
bits(src1[lane], 7)) {
15947 if (std::fpclassify(src0[lane]) == FP_SUBNORMAL
15948 && !std::signbit(src0[lane])) {
15953 if (
bits(src1[lane], 8)) {
15955 if (std::isnormal(src0[lane])
15956 && !std::signbit(src0[lane])) {
15961 if (
bits(src1[lane], 9)) {
15963 if (std::isinf(src0[lane])
15964 && !std::signbit(src0[lane])) {
15978 :
Inst_VOP3(iFmt,
"v_cmp_class_f16", true)
16009 :
Inst_VOP3(iFmt,
"v_cmpx_class_f16", true)
16059 :
Inst_VOP3(iFmt,
"v_cmp_lt_f16", true)
16078 :
Inst_VOP3(iFmt,
"v_cmp_eq_f16", true)
16097 :
Inst_VOP3(iFmt,
"v_cmp_le_f16", true)
16116 :
Inst_VOP3(iFmt,
"v_cmp_gt_f16", true)
16135 :
Inst_VOP3(iFmt,
"v_cmp_lg_f16", true)
16154 :
Inst_VOP3(iFmt,
"v_cmp_ge_f16", true)
16209 :
Inst_VOP3(iFmt,
"v_cmp_nge_f16", true)
16228 :
Inst_VOP3(iFmt,
"v_cmp_nlg_f16", true)
16247 :
Inst_VOP3(iFmt,
"v_cmp_ngt_f16", true)
16266 :
Inst_VOP3(iFmt,
"v_cmp_nle_f16", true)
16285 :
Inst_VOP3(iFmt,
"v_cmp_neq_f16", true)
16304 :
Inst_VOP3(iFmt,
"v_cmp_nlt_f16", true)
16323 :
Inst_VOP3(iFmt,
"v_cmp_tru_f16", true)
16337 Wavefront *wf = gpuDynInst->wavefront();
16351 :
Inst_VOP3(iFmt,
"v_cmpx_f_f16", true)
16364 Wavefront *wf = gpuDynInst->wavefront();
16379 :
Inst_VOP3(iFmt,
"v_cmpx_lt_f16", true)
16398 :
Inst_VOP3(iFmt,
"v_cmpx_eq_f16", true)
16417 :
Inst_VOP3(iFmt,
"v_cmpx_le_f16", true)
16436 :
Inst_VOP3(iFmt,
"v_cmpx_gt_f16", true)
16455 :
Inst_VOP3(iFmt,
"v_cmpx_lg_f16", true)
16474 :
Inst_VOP3(iFmt,
"v_cmpx_ge_f16", true)
16493 :
Inst_VOP3(iFmt,
"v_cmpx_o_f16", true)
16513 :
Inst_VOP3(iFmt,
"v_cmpx_u_f16", true)
16533 :
Inst_VOP3(iFmt,
"v_cmpx_nge_f16", true)
16552 :
Inst_VOP3(iFmt,
"v_cmpx_nlg_f16", true)
16571 :
Inst_VOP3(iFmt,
"v_cmpx_ngt_f16", true)
16590 :
Inst_VOP3(iFmt,
"v_cmpx_nle_f16", true)
16609 :
Inst_VOP3(iFmt,
"v_cmpx_neq_f16", true)
16628 :
Inst_VOP3(iFmt,
"v_cmpx_nlt_f16", true)
16647 :
Inst_VOP3(iFmt,
"v_cmpx_tru_f16", true)
16661 Wavefront *wf = gpuDynInst->wavefront();
16689 Wavefront *wf = gpuDynInst->wavefront();
16703 :
Inst_VOP3(iFmt,
"v_cmp_lt_f32", true)
16717 Wavefront *wf = gpuDynInst->wavefront();
16727 sdst.
setBit(lane, src0[lane] < src1[lane] ? 1 : 0);
16736 :
Inst_VOP3(iFmt,
"v_cmp_eq_f32", true)
16750 Wavefront *wf = gpuDynInst->wavefront();
16760 sdst.
setBit(lane, src0[lane] == src1[lane] ? 1 : 0);
16769 :
Inst_VOP3(iFmt,
"v_cmp_le_f32", true)
16783 Wavefront *wf = gpuDynInst->wavefront();
16793 sdst.
setBit(lane, src0[lane] <= src1[lane] ? 1 : 0);
16802 :
Inst_VOP3(iFmt,
"v_cmp_gt_f32", true)
16816 Wavefront *wf = gpuDynInst->wavefront();
16826 sdst.
setBit(lane, src0[lane] > src1[lane] ? 1 : 0);
16835 :
Inst_VOP3(iFmt,
"v_cmp_lg_f32", true)
16849 Wavefront *wf = gpuDynInst->wavefront();
16859 sdst.
setBit(lane, src0[lane] != src1[lane] ? 1 : 0);
16868 :
Inst_VOP3(iFmt,
"v_cmp_ge_f32", true)
16882 Wavefront *wf = gpuDynInst->wavefront();
16892 sdst.
setBit(lane, src0[lane] >= src1[lane] ? 1 : 0);
16914 Wavefront *wf = gpuDynInst->wavefront();
16924 sdst.
setBit(lane, (!std::isnan(src0[lane])
16925 && !std::isnan(src1[lane])) ? 1 : 0);
16947 Wavefront *wf = gpuDynInst->wavefront();
16957 sdst.
setBit(lane, (std::isnan(src0[lane])
16958 || std::isnan(src1[lane])) ? 1 : 0);
16967 :
Inst_VOP3(iFmt,
"v_cmp_nge_f32", true)
16981 Wavefront *wf = gpuDynInst->wavefront();
16991 sdst.
setBit(lane, !(src0[lane] >= src1[lane]) ? 1 : 0);
17000 :
Inst_VOP3(iFmt,
"v_cmp_nlg_f32", true)
17014 Wavefront *wf = gpuDynInst->wavefront();
17024 sdst.
setBit(lane, !(src0[lane] < src1[lane]
17025 || src0[lane] > src1[lane]) ? 1 : 0);
17034 :
Inst_VOP3(iFmt,
"v_cmp_ngt_f32", true)
17048 Wavefront *wf = gpuDynInst->wavefront();
17058 sdst.
setBit(lane, !(src0[lane] > src1[lane]) ? 1 : 0);
17067 :
Inst_VOP3(iFmt,
"v_cmp_nle_f32", true)
17081 Wavefront *wf = gpuDynInst->wavefront();
17091 sdst.
setBit(lane, !(src0[lane] <= src1[lane]) ? 1 : 0);
17100 :
Inst_VOP3(iFmt,
"v_cmp_neq_f32", true)
17114 Wavefront *wf = gpuDynInst->wavefront();
17124 sdst.
setBit(lane, src0[lane] != src1[lane] ? 1 : 0);
17133 :
Inst_VOP3(iFmt,
"v_cmp_nlt_f32", true)
17147 Wavefront *wf = gpuDynInst->wavefront();
17157 sdst.
setBit(lane, !(src0[lane] < src1[lane]) ? 1 : 0);
17166 :
Inst_VOP3(iFmt,
"v_cmp_tru_f32", true)
17180 Wavefront *wf = gpuDynInst->wavefront();
17194 :
Inst_VOP3(iFmt,
"v_cmpx_f_f32", true)
17208 Wavefront *wf = gpuDynInst->wavefront();
17223 :
Inst_VOP3(iFmt,
"v_cmpx_lt_f32", true)
17237 Wavefront *wf = gpuDynInst->wavefront();
17247 sdst.
setBit(lane, src0[lane] < src1[lane] ? 1 : 0);
17257 :
Inst_VOP3(iFmt,
"v_cmpx_eq_f32", true)
17271 Wavefront *wf = gpuDynInst->wavefront();
17281 sdst.
setBit(lane, src0[lane] == src1[lane] ? 1 : 0);
17291 :
Inst_VOP3(iFmt,
"v_cmpx_le_f32", true)
17305 Wavefront *wf = gpuDynInst->wavefront();
17315 sdst.
setBit(lane, src0[lane] <= src1[lane] ? 1 : 0);
17325 :
Inst_VOP3(iFmt,
"v_cmpx_gt_f32", true)
17339 Wavefront *wf = gpuDynInst->wavefront();
17349 sdst.
setBit(lane, src0[lane] > src1[lane] ? 1 : 0);
17359 :
Inst_VOP3(iFmt,
"v_cmpx_lg_f32", true)
17373 Wavefront *wf = gpuDynInst->wavefront();
17383 sdst.
setBit(lane, (src0[lane] < src1[lane]
17384 || src0[lane] > src1[lane]) ? 1 : 0);
17394 :
Inst_VOP3(iFmt,
"v_cmpx_ge_f32", true)
17408 Wavefront *wf = gpuDynInst->wavefront();
17418 sdst.
setBit(lane, src0[lane] >= src1[lane] ? 1 : 0);
17428 :
Inst_VOP3(iFmt,
"v_cmpx_o_f32", true)
17443 Wavefront *wf = gpuDynInst->wavefront();
17453 sdst.
setBit(lane, (!std::isnan(src0[lane])
17454 && !std::isnan(src1[lane])) ? 1 : 0);
17464 :
Inst_VOP3(iFmt,
"v_cmpx_u_f32", true)
17479 Wavefront *wf = gpuDynInst->wavefront();
17489 sdst.
setBit(lane, (std::isnan(src0[lane])
17490 || std::isnan(src1[lane])) ? 1 : 0);
17500 :
Inst_VOP3(iFmt,
"v_cmpx_nge_f32", true)
17514 Wavefront *wf = gpuDynInst->wavefront();
17524 sdst.
setBit(lane, !(src0[lane] >= src1[lane]) ? 1 : 0);
17534 :
Inst_VOP3(iFmt,
"v_cmpx_nlg_f32", true)
17548 Wavefront *wf = gpuDynInst->wavefront();
17558 sdst.
setBit(lane, !(src0[lane] < src1[lane]
17559 || src0[lane] > src1[lane]) ? 1 : 0);
17569 :
Inst_VOP3(iFmt,
"v_cmpx_ngt_f32", true)
17583 Wavefront *wf = gpuDynInst->wavefront();
17593 sdst.
setBit(lane, !(src0[lane] > src1[lane]) ? 1 : 0);
17603 :
Inst_VOP3(iFmt,
"v_cmpx_nle_f32", true)
17617 Wavefront *wf = gpuDynInst->wavefront();
17627 sdst.
setBit(lane, !(src0[lane] <= src1[lane]) ? 1 : 0);
17637 :
Inst_VOP3(iFmt,
"v_cmpx_neq_f32", true)
17651 Wavefront *wf = gpuDynInst->wavefront();
17661 sdst.
setBit(lane, src0[lane] != src1[lane] ? 1 : 0);
17671 :
Inst_VOP3(iFmt,
"v_cmpx_nlt_f32", true)
17685 Wavefront *wf = gpuDynInst->wavefront();
17695 sdst.
setBit(lane, !(src0[lane] < src1[lane]) ? 1 : 0);
17705 :
Inst_VOP3(iFmt,
"v_cmpx_tru_f32", true)
17719 Wavefront *wf = gpuDynInst->wavefront();
17747 Wavefront *wf = gpuDynInst->wavefront();
17761 :
Inst_VOP3(iFmt,
"v_cmp_lt_f64", true)
17775 Wavefront *wf = gpuDynInst->wavefront();
17807 sdst.
setBit(lane, src0[lane] < src1[lane] ? 1 : 0);
17816 :
Inst_VOP3(iFmt,
"v_cmp_eq_f64", true)
17830 Wavefront *wf = gpuDynInst->wavefront();
17862 sdst.
setBit(lane, src0[lane] == src1[lane] ? 1 : 0);
17871 :
Inst_VOP3(iFmt,
"v_cmp_le_f64", true)
17885 Wavefront *wf = gpuDynInst->wavefront();
17917 sdst.
setBit(lane, src0[lane] <= src1[lane] ? 1 : 0);
17926 :
Inst_VOP3(iFmt,
"v_cmp_gt_f64", true)
17940 Wavefront *wf = gpuDynInst->wavefront();
17972 sdst.
setBit(lane, src0[lane] > src1[lane] ? 1 : 0);
17981 :
Inst_VOP3(iFmt,
"v_cmp_lg_f64", true)
17995 Wavefront *wf = gpuDynInst->wavefront();
18027 sdst.
setBit(lane, (src0[lane] < src1[lane]
18028 || src0[lane] > src1[lane]) ? 1 : 0);
18037 :
Inst_VOP3(iFmt,
"v_cmp_ge_f64", true)
18051 Wavefront *wf = gpuDynInst->wavefront();
18083 sdst.
setBit(lane, src0[lane] >= src1[lane] ? 1 : 0);
18105 Wavefront *wf = gpuDynInst->wavefront();
18137 sdst.
setBit(lane, (!std::isnan(src0[lane])
18138 && !std::isnan(src1[lane])) ? 1 : 0);
18160 Wavefront *wf = gpuDynInst->wavefront();
18192 sdst.
setBit(lane, (std::isnan(src0[lane])
18193 || std::isnan(src1[lane])) ? 1 : 0);
18202 :
Inst_VOP3(iFmt,
"v_cmp_nge_f64", true)
18216 Wavefront *wf = gpuDynInst->wavefront();
18248 sdst.
setBit(lane, !(src0[lane] >= src1[lane]) ? 1 : 0);
18257 :
Inst_VOP3(iFmt,
"v_cmp_nlg_f64", true)
18271 Wavefront *wf = gpuDynInst->wavefront();
18303 sdst.
setBit(lane, !(src0[lane] < src1[lane]
18304 || src0[lane] > src1[lane]) ? 1 : 0);
18313 :
Inst_VOP3(iFmt,
"v_cmp_ngt_f64", true)
18327 Wavefront *wf = gpuDynInst->wavefront();
18359 sdst.
setBit(lane, !(src0[lane] > src1[lane]) ? 1 : 0);
18368 :
Inst_VOP3(iFmt,
"v_cmp_nle_f64", true)
18382 Wavefront *wf = gpuDynInst->wavefront();
18414 sdst.
setBit(lane, !(src0[lane] <= src1[lane]) ? 1 : 0);
18423 :
Inst_VOP3(iFmt,
"v_cmp_neq_f64", true)
18437 Wavefront *wf = gpuDynInst->wavefront();
18469 sdst.
setBit(lane, src0[lane] != src1[lane] ? 1 : 0);
18478 :
Inst_VOP3(iFmt,
"v_cmp_nlt_f64", true)
18492 Wavefront *wf = gpuDynInst->wavefront();
18524 sdst.
setBit(lane, !(src0[lane] < src1[lane]) ? 1 : 0);
18533 :
Inst_VOP3(iFmt,
"v_cmp_tru_f64", true)
18547 Wavefront *wf = gpuDynInst->wavefront();
18561 :
Inst_VOP3(iFmt,
"v_cmpx_f_f64", true)
18575 Wavefront *wf = gpuDynInst->wavefront();
18590 :
Inst_VOP3(iFmt,
"v_cmpx_lt_f64", true)
18604 Wavefront *wf = gpuDynInst->wavefront();
18636 sdst.
setBit(lane, src0[lane] < src1[lane] ? 1 : 0);
18646 :
Inst_VOP3(iFmt,
"v_cmpx_eq_f64", true)
18660 Wavefront *wf = gpuDynInst->wavefront();
18692 sdst.
setBit(lane, src0[lane] == src1[lane] ? 1 : 0);
18702 :
Inst_VOP3(iFmt,
"v_cmpx_le_f64", true)
18716 Wavefront *wf = gpuDynInst->wavefront();
18748 sdst.
setBit(lane, src0[lane] <= src1[lane] ? 1 : 0);
18758 :
Inst_VOP3(iFmt,
"v_cmpx_gt_f64", true)
18772 Wavefront *wf = gpuDynInst->wavefront();
18804 sdst.
setBit(lane, src0[lane] > src1[lane] ? 1 : 0);
18814 :
Inst_VOP3(iFmt,
"v_cmpx_lg_f64", true)
18828 Wavefront *wf = gpuDynInst->wavefront();
18860 sdst.
setBit(lane, (src0[lane] < src1[lane]
18861 || src0[lane] > src1[lane]) ? 1 : 0);
18871 :
Inst_VOP3(iFmt,
"v_cmpx_ge_f64", true)
18885 Wavefront *wf = gpuDynInst->wavefront();
18917 sdst.
setBit(lane, src0[lane] >= src1[lane] ? 1 : 0);
18927 :
Inst_VOP3(iFmt,
"v_cmpx_o_f64", true)
18942 Wavefront *wf = gpuDynInst->wavefront();
18974 sdst.
setBit(lane, (!std::isnan(src0[lane])
18975 && !std::isnan(src1[lane])) ? 1 : 0);
18985 :
Inst_VOP3(iFmt,
"v_cmpx_u_f64", true)
19000 Wavefront *wf = gpuDynInst->wavefront();
19032 sdst.
setBit(lane, (std::isnan(src0[lane])
19033 || std::isnan(src1[lane])) ? 1 : 0);
19043 :
Inst_VOP3(iFmt,
"v_cmpx_nge_f64", true)
19057 Wavefront *wf = gpuDynInst->wavefront();
19089 sdst.
setBit(lane, !(src0[lane] >= src1[lane]) ? 1 : 0);
19099 :
Inst_VOP3(iFmt,
"v_cmpx_nlg_f64", true)
19113 Wavefront *wf = gpuDynInst->wavefront();
19145 sdst.
setBit(lane, !(src0[lane] < src1[lane]
19146 || src0[lane] > src1[lane]) ? 1 : 0);
19156 :
Inst_VOP3(iFmt,
"v_cmpx_ngt_f64", true)
19170 Wavefront *wf = gpuDynInst->wavefront();
19202 sdst.
setBit(lane, !(src0[lane] > src1[lane]) ? 1 : 0);
19212 :
Inst_VOP3(iFmt,
"v_cmpx_nle_f64", true)
19226 Wavefront *wf = gpuDynInst->wavefront();
19258 sdst.
setBit(lane, !(src0[lane] <= src1[lane]) ? 1 : 0);
19268 :
Inst_VOP3(iFmt,
"v_cmpx_neq_f64", true)
19282 Wavefront *wf = gpuDynInst->wavefront();
19314 sdst.
setBit(lane, src0[lane] != src1[lane] ? 1 : 0);
19324 :
Inst_VOP3(iFmt,
"v_cmpx_nlt_f64", true)
19338 Wavefront *wf = gpuDynInst->wavefront();
19370 sdst.
setBit(lane, !(src0[lane] < src1[lane]) ? 1 : 0);
19380 :
Inst_VOP3(iFmt,
"v_cmpx_tru_f64", true)
19394 Wavefront *wf = gpuDynInst->wavefront();
19421 Wavefront *wf = gpuDynInst->wavefront();
19435 :
Inst_VOP3(iFmt,
"v_cmp_lt_i16", true)
19448 Wavefront *wf = gpuDynInst->wavefront();
19468 sdst.
setBit(lane, src0[lane] < src1[lane] ? 1 : 0);
19477 :
Inst_VOP3(iFmt,
"v_cmp_eq_i16", true)
19490 Wavefront *wf = gpuDynInst->wavefront();
19510 sdst.
setBit(lane, src0[lane] == src1[lane] ? 1 : 0);
19519 :
Inst_VOP3(iFmt,
"v_cmp_le_i16", true)
19532 Wavefront *wf = gpuDynInst->wavefront();
19552 sdst.
setBit(lane, src0[lane] <= src1[lane] ? 1 : 0);
19561 :
Inst_VOP3(iFmt,
"v_cmp_gt_i16", true)
19574 Wavefront *wf = gpuDynInst->wavefront();
19594 sdst.
setBit(lane, src0[lane] > src1[lane] ? 1 : 0);
19603 :
Inst_VOP3(iFmt,
"v_cmp_ne_i16", true)
19616 Wavefront *wf = gpuDynInst->wavefront();
19636 sdst.
setBit(lane, src0[lane] != src1[lane] ? 1 : 0);
19645 :
Inst_VOP3(iFmt,
"v_cmp_ge_i16", true)
19658 Wavefront *wf = gpuDynInst->wavefront();
19678 sdst.
setBit(lane, src0[lane] >= src1[lane] ? 1 : 0);
19699 Wavefront *wf = gpuDynInst->wavefront();
19725 Wavefront *wf = gpuDynInst->wavefront();
19739 :
Inst_VOP3(iFmt,
"v_cmp_lt_u16", true)
19752 Wavefront *wf = gpuDynInst->wavefront();
19772 sdst.
setBit(lane, src0[lane] < src1[lane] ? 1 : 0);
19781 :
Inst_VOP3(iFmt,
"v_cmp_eq_u16", true)
19794 Wavefront *wf = gpuDynInst->wavefront();
19814 sdst.
setBit(lane, src0[lane] == src1[lane] ? 1 : 0);
19823 :
Inst_VOP3(iFmt,
"v_cmp_le_u16", true)
19836 Wavefront *wf = gpuDynInst->wavefront();
19856 sdst.
setBit(lane, src0[lane] <= src1[lane] ? 1 : 0);
19865 :
Inst_VOP3(iFmt,
"v_cmp_gt_u16", true)
19878 Wavefront *wf = gpuDynInst->wavefront();
19898 sdst.
setBit(lane, src0[lane] > src1[lane] ? 1 : 0);
19907 :
Inst_VOP3(iFmt,
"v_cmp_ne_u16", true)
19920 Wavefront *wf = gpuDynInst->wavefront();
19940 sdst.
setBit(lane, src0[lane] != src1[lane] ? 1 : 0);
19949 :
Inst_VOP3(iFmt,
"v_cmp_ge_u16", true)
19962 Wavefront *wf = gpuDynInst->wavefront();
19982 sdst.
setBit(lane, src0[lane] >= src1[lane] ? 1 : 0);
20003 Wavefront *wf = gpuDynInst->wavefront();
20017 :
Inst_VOP3(iFmt,
"v_cmpx_f_i16", true)
20030 Wavefront *wf = gpuDynInst->wavefront();
20045 :
Inst_VOP3(iFmt,
"v_cmpx_lt_i16", true)
20058 Wavefront *wf = gpuDynInst->wavefront();
20078 sdst.
setBit(lane, src0[lane] < src1[lane] ? 1 : 0);
20088 :
Inst_VOP3(iFmt,
"v_cmpx_eq_i16", true)
20101 Wavefront *wf = gpuDynInst->wavefront();
20121 sdst.
setBit(lane, src0[lane] == src1[lane] ? 1 : 0);
20131 :
Inst_VOP3(iFmt,
"v_cmpx_le_i16", true)
20144 Wavefront *wf = gpuDynInst->wavefront();
20164 sdst.
setBit(lane, src0[lane] <= src1[lane] ? 1 : 0);
20174 :
Inst_VOP3(iFmt,
"v_cmpx_gt_i16", true)
20187 Wavefront *wf = gpuDynInst->wavefront();
20207 sdst.
setBit(lane, src0[lane] > src1[lane] ? 1 : 0);
20217 :
Inst_VOP3(iFmt,
"v_cmpx_ne_i16", true)
20230 Wavefront *wf = gpuDynInst->wavefront();
20250 sdst.
setBit(lane, src0[lane] != src1[lane] ? 1 : 0);
20260 :
Inst_VOP3(iFmt,
"v_cmpx_ge_i16", true)
20273 Wavefront *wf = gpuDynInst->wavefront();
20293 sdst.
setBit(lane, src0[lane] >= src1[lane] ? 1 : 0);
20303 :
Inst_VOP3(iFmt,
"v_cmpx_t_i16", true)
20316 Wavefront *wf = gpuDynInst->wavefront();
20331 :
Inst_VOP3(iFmt,
"v_cmpx_f_u16", true)
20344 Wavefront *wf = gpuDynInst->wavefront();
20359 :
Inst_VOP3(iFmt,
"v_cmpx_lt_u16", true)
20372 Wavefront *wf = gpuDynInst->wavefront();
20392 sdst.
setBit(lane, src0[lane] < src1[lane] ? 1 : 0);
20402 :
Inst_VOP3(iFmt,
"v_cmpx_eq_u16", true)
20415 Wavefront *wf = gpuDynInst->wavefront();
20435 sdst.
setBit(lane, src0[lane] == src1[lane] ? 1 : 0);
20445 :
Inst_VOP3(iFmt,
"v_cmpx_le_u16", true)
20458 Wavefront *wf = gpuDynInst->wavefront();
20478 sdst.
setBit(lane, src0[lane] <= src1[lane] ? 1 : 0);
20488 :
Inst_VOP3(iFmt,
"v_cmpx_gt_u16", true)
20501 Wavefront *wf = gpuDynInst->wavefront();
20521 sdst.
setBit(lane, src0[lane] > src1[lane] ? 1 : 0);
20531 :
Inst_VOP3(iFmt,
"v_cmpx_ne_u16", true)
20544 Wavefront *wf = gpuDynInst->wavefront();
20564 sdst.
setBit(lane, src0[lane] != src1[lane] ? 1 : 0);
20574 :
Inst_VOP3(iFmt,
"v_cmpx_ge_u16", true)
20587 Wavefront *wf = gpuDynInst->wavefront();
20607 sdst.
setBit(lane, src0[lane] >= src1[lane] ? 1 : 0);
20617 :
Inst_VOP3(iFmt,
"v_cmpx_t_u16", true)
20630 Wavefront *wf = gpuDynInst->wavefront();
20657 Wavefront *wf = gpuDynInst->wavefront();
20672 :
Inst_VOP3(iFmt,
"v_cmp_lt_i32", true)
20685 Wavefront *wf = gpuDynInst->wavefront();
20705 sdst.
setBit(lane, src0[lane] < src1[lane] ? 1 : 0);
20714 :
Inst_VOP3(iFmt,
"v_cmp_eq_i32", true)
20727 Wavefront *wf = gpuDynInst->wavefront();
20747 sdst.
setBit(lane, src0[lane] == src1[lane] ? 1 : 0);
20756 :
Inst_VOP3(iFmt,
"v_cmp_le_i32", true)
20769 Wavefront *wf = gpuDynInst->wavefront();
20789 sdst.
setBit(lane, src0[lane] <= src1[lane] ? 1 : 0);
20798 :
Inst_VOP3(iFmt,
"v_cmp_gt_i32", true)
20811 Wavefront *wf = gpuDynInst->wavefront();
20831 sdst.
setBit(lane, src0[lane] > src1[lane] ? 1 : 0);
20840 :
Inst_VOP3(iFmt,
"v_cmp_ne_i32", true)
20853 Wavefront *wf = gpuDynInst->wavefront();
20873 sdst.
setBit(lane, src0[lane] != src1[lane] ? 1 : 0);
20882 :
Inst_VOP3(iFmt,
"v_cmp_ge_i32", true)
20895 Wavefront *wf = gpuDynInst->wavefront();
20915 sdst.
setBit(lane, src0[lane] >= src1[lane] ? 1 : 0);
20936 Wavefront *wf = gpuDynInst->wavefront();
20962 Wavefront *wf = gpuDynInst->wavefront();
20976 :
Inst_VOP3(iFmt,
"v_cmp_lt_u32", true)
20989 Wavefront *wf = gpuDynInst->wavefront();
21009 sdst.
setBit(lane, src0[lane] < src1[lane] ? 1 : 0);
21018 :
Inst_VOP3(iFmt,
"v_cmp_eq_u32", true)
21031 Wavefront *wf = gpuDynInst->wavefront();
21051 sdst.
setBit(lane, src0[lane] == src1[lane] ? 1 : 0);
21060 :
Inst_VOP3(iFmt,
"v_cmp_le_u32", true)
21073 Wavefront *wf = gpuDynInst->wavefront();
21093 sdst.
setBit(lane, src0[lane] <= src1[lane] ? 1 : 0);
21102 :
Inst_VOP3(iFmt,
"v_cmp_gt_u32", true)
21115 Wavefront *wf = gpuDynInst->wavefront();
21135 sdst.
setBit(lane, src0[lane] > src1[lane] ? 1 : 0);
21144 :
Inst_VOP3(iFmt,
"v_cmp_ne_u32", true)
21157 Wavefront *wf = gpuDynInst->wavefront();
21177 sdst.
setBit(lane, src0[lane] != src1[lane] ? 1 : 0);
21186 :
Inst_VOP3(iFmt,
"v_cmp_ge_u32", true)
21199 Wavefront *wf = gpuDynInst->wavefront();
21219 sdst.
setBit(lane, src0[lane] >= src1[lane] ? 1 : 0);
21240 Wavefront *wf = gpuDynInst->wavefront();
21254 :
Inst_VOP3(iFmt,
"v_cmpx_f_i32", true)
21267 Wavefront *wf = gpuDynInst->wavefront();
21282 :
Inst_VOP3(iFmt,
"v_cmpx_lt_i32", true)
21295 Wavefront *wf = gpuDynInst->wavefront();
21315 sdst.
setBit(lane, src0[lane] < src1[lane] ? 1 : 0);
21325 :
Inst_VOP3(iFmt,
"v_cmpx_eq_i32", true)
21338 Wavefront *wf = gpuDynInst->wavefront();
21358 sdst.
setBit(lane, src0[lane] == src1[lane] ? 1 : 0);
21368 :
Inst_VOP3(iFmt,
"v_cmpx_le_i32", true)
21381 Wavefront *wf = gpuDynInst->wavefront();
21401 sdst.
setBit(lane, src0[lane] <= src1[lane] ? 1 : 0);
21411 :
Inst_VOP3(iFmt,
"v_cmpx_gt_i32", true)
21424 Wavefront *wf = gpuDynInst->wavefront();
21444 sdst.
setBit(lane, src0[lane] > src1[lane] ? 1 : 0);
21454 :
Inst_VOP3(iFmt,
"v_cmpx_ne_i32", true)
21467 Wavefront *wf = gpuDynInst->wavefront();
21487 sdst.
setBit(lane, src0[lane] != src1[lane] ? 1 : 0);
21497 :
Inst_VOP3(iFmt,
"v_cmpx_ge_i32", true)
21510 Wavefront *wf = gpuDynInst->wavefront();
21530 sdst.
setBit(lane, src0[lane] >= src1[lane] ? 1 : 0);
21540 :
Inst_VOP3(iFmt,
"v_cmpx_t_i32", true)
21553 Wavefront *wf = gpuDynInst->wavefront();
21568 :
Inst_VOP3(iFmt,
"v_cmpx_f_u32", true)
21581 Wavefront *wf = gpuDynInst->wavefront();
21596 :
Inst_VOP3(iFmt,
"v_cmpx_lt_u32", true)
21609 Wavefront *wf = gpuDynInst->wavefront();
21629 sdst.
setBit(lane, src0[lane] < src1[lane] ? 1 : 0);
21639 :
Inst_VOP3(iFmt,
"v_cmpx_eq_u32", true)
21652 Wavefront *wf = gpuDynInst->wavefront();
21672 sdst.
setBit(lane, src0[lane] == src1[lane] ? 1 : 0);
21682 :
Inst_VOP3(iFmt,
"v_cmpx_le_u32", true)
21695 Wavefront *wf = gpuDynInst->wavefront();
21715 sdst.
setBit(lane, src0[lane] <= src1[lane] ? 1 : 0);
21725 :
Inst_VOP3(iFmt,
"v_cmpx_gt_u32", true)
21738 Wavefront *wf = gpuDynInst->wavefront();
21758 sdst.
setBit(lane, src0[lane] > src1[lane] ? 1 : 0);
21768 :
Inst_VOP3(iFmt,
"v_cmpx_ne_u32", true)
21781 Wavefront *wf = gpuDynInst->wavefront();
21801 sdst.
setBit(lane, src0[lane] != src1[lane] ? 1 : 0);
21811 :
Inst_VOP3(iFmt,
"v_cmpx_ge_u32", true)
21824 Wavefront *wf = gpuDynInst->wavefront();
21844 sdst.
setBit(lane, src0[lane] >= src1[lane] ? 1 : 0);
21854 :
Inst_VOP3(iFmt,
"v_cmpx_t_u32", true)
21867 Wavefront *wf = gpuDynInst->wavefront();
21894 Wavefront *wf = gpuDynInst->wavefront();
21908 :
Inst_VOP3(iFmt,
"v_cmp_lt_i64", true)
21921 Wavefront *wf = gpuDynInst->wavefront();
21941 sdst.
setBit(lane, src0[lane] < src1[lane] ? 1 : 0);
21950 :
Inst_VOP3(iFmt,
"v_cmp_eq_i64", true)
21963 Wavefront *wf = gpuDynInst->wavefront();
21983 sdst.
setBit(lane, src0[lane] == src1[lane] ? 1 : 0);
21992 :
Inst_VOP3(iFmt,
"v_cmp_le_i64", true)
22005 Wavefront *wf = gpuDynInst->wavefront();
22025 sdst.
setBit(lane, src0[lane] <= src1[lane] ? 1 : 0);
22034 :
Inst_VOP3(iFmt,
"v_cmp_gt_i64", true)
22047 Wavefront *wf = gpuDynInst->wavefront();
22067 sdst.
setBit(lane, src0[lane] > src1[lane] ? 1 : 0);
22076 :
Inst_VOP3(iFmt,
"v_cmp_ne_i64", true)
22089 Wavefront *wf = gpuDynInst->wavefront();
22109 sdst.
setBit(lane, src0[lane] != src1[lane] ? 1 : 0);
22118 :
Inst_VOP3(iFmt,
"v_cmp_ge_i64", true)
22131 Wavefront *wf = gpuDynInst->wavefront();
22151 sdst.
setBit(lane, src0[lane] >= src1[lane] ? 1 : 0);
22172 Wavefront *wf = gpuDynInst->wavefront();
22198 Wavefront *wf = gpuDynInst->wavefront();
22212 :
Inst_VOP3(iFmt,
"v_cmp_lt_u64", true)
22225 Wavefront *wf = gpuDynInst->wavefront();
22245 sdst.
setBit(lane, src0[lane] < src1[lane] ? 1 : 0);
22254 :
Inst_VOP3(iFmt,
"v_cmp_eq_u64", true)
22267 Wavefront *wf = gpuDynInst->wavefront();
22287 sdst.
setBit(lane, src0[lane] == src1[lane] ? 1 : 0);
22296 :
Inst_VOP3(iFmt,
"v_cmp_le_u64", true)
22309 Wavefront *wf = gpuDynInst->wavefront();
22329 sdst.
setBit(lane, src0[lane] <= src1[lane] ? 1 : 0);
22338 :
Inst_VOP3(iFmt,
"v_cmp_gt_u64", true)
22351 Wavefront *wf = gpuDynInst->wavefront();
22371 sdst.
setBit(lane, src0[lane] > src1[lane] ? 1 : 0);
22380 :
Inst_VOP3(iFmt,
"v_cmp_ne_u64", true)
22393 Wavefront *wf = gpuDynInst->wavefront();
22413 sdst.
setBit(lane, src0[lane] != src1[lane] ? 1 : 0);
22422 :
Inst_VOP3(iFmt,
"v_cmp_ge_u64", true)
22435 Wavefront *wf = gpuDynInst->wavefront();
22455 sdst.
setBit(lane, src0[lane] >= src1[lane] ? 1 : 0);
22476 Wavefront *wf = gpuDynInst->wavefront();
22490 :
Inst_VOP3(iFmt,
"v_cmpx_f_i64", true)
22503 Wavefront *wf = gpuDynInst->wavefront();
22518 :
Inst_VOP3(iFmt,
"v_cmpx_lt_i64", true)
22531 Wavefront *wf = gpuDynInst->wavefront();
22551 sdst.
setBit(lane, src0[lane] < src1[lane] ? 1 : 0);
22561 :
Inst_VOP3(iFmt,
"v_cmpx_eq_i64", true)
22574 Wavefront *wf = gpuDynInst->wavefront();
22594 sdst.
setBit(lane, src0[lane] == src1[lane] ? 1 : 0);
22604 :
Inst_VOP3(iFmt,
"v_cmpx_le_i64", true)
22617 Wavefront *wf = gpuDynInst->wavefront();
22637 sdst.
setBit(lane, src0[lane] <= src1[lane] ? 1 : 0);
22647 :
Inst_VOP3(iFmt,
"v_cmpx_gt_i64", true)
22660 Wavefront *wf = gpuDynInst->wavefront();
22680 sdst.
setBit(lane, src0[lane] > src1[lane] ? 1 : 0);
22690 :
Inst_VOP3(iFmt,
"v_cmpx_ne_i64", true)
22703 Wavefront *wf = gpuDynInst->wavefront();
22723 sdst.
setBit(lane, src0[lane] != src1[lane] ? 1 : 0);
22733 :
Inst_VOP3(iFmt,
"v_cmpx_ge_i64", true)
22746 Wavefront *wf = gpuDynInst->wavefront();
22766 sdst.
setBit(lane, src0[lane] >= src1[lane] ? 1 : 0);
22776 :
Inst_VOP3(iFmt,
"v_cmpx_t_i64", true)
22789 Wavefront *wf = gpuDynInst->wavefront();
22804 :
Inst_VOP3(iFmt,
"v_cmpx_f_u64", true)
22817 Wavefront *wf = gpuDynInst->wavefront();
22832 :
Inst_VOP3(iFmt,
"v_cmpx_lt_u64", true)
22845 Wavefront *wf = gpuDynInst->wavefront();
22865 sdst.
setBit(lane, src0[lane] < src1[lane] ? 1 : 0);
22875 :
Inst_VOP3(iFmt,
"v_cmpx_eq_u64", true)
22888 Wavefront *wf = gpuDynInst->wavefront();
22908 sdst.
setBit(lane, src0[lane] == src1[lane] ? 1 : 0);
22918 :
Inst_VOP3(iFmt,
"v_cmpx_le_u64", true)
22931 Wavefront *wf = gpuDynInst->wavefront();
22951 sdst.
setBit(lane, src0[lane] <= src1[lane] ? 1 : 0);
22961 :
Inst_VOP3(iFmt,
"v_cmpx_gt_u64", true)
22974 Wavefront *wf = gpuDynInst->wavefront();
22994 sdst.
setBit(lane, src0[lane] > src1[lane] ? 1 : 0);
23004 :
Inst_VOP3(iFmt,
"v_cmpx_ne_u64", true)
23017 Wavefront *wf = gpuDynInst->wavefront();
23037 sdst.
setBit(lane, src0[lane] != src1[lane] ? 1 : 0);
23047 :
Inst_VOP3(iFmt,
"v_cmpx_ge_u64", true)
23060 Wavefront *wf = gpuDynInst->wavefront();
23080 sdst.
setBit(lane, src0[lane] >= src1[lane] ? 1 : 0);
23090 :
Inst_VOP3(iFmt,
"v_cmpx_t_u64", true)
23103 Wavefront *wf = gpuDynInst->wavefront();
23127 :
Inst_VOP3(iFmt,
"v_cndmask_b32", false)
23142 Wavefront *wf = gpuDynInst->wavefront();
23165 ? src1[lane] : src0[lane];
23187 Wavefront *wf = gpuDynInst->wavefront();
23219 vdst[lane] = src0[lane] + src1[lane];
23241 Wavefront *wf = gpuDynInst->wavefront();
23273 vdst[lane] = src0[lane] - src1[lane];
23281 :
Inst_VOP3(iFmt,
"v_subrev_f32", false)
23295 Wavefront *wf = gpuDynInst->wavefront();
23327 vdst[lane] = src1[lane] - src0[lane];
23335 :
Inst_VOP3(iFmt,
"v_mul_legacy_f32", false)
23349 Wavefront *wf = gpuDynInst->wavefront();
23381 if (std::isnan(src0[lane]) ||
23382 std::isnan(src1[lane])) {
23384 }
else if ((std::fpclassify(src0[lane]) == FP_SUBNORMAL ||
23385 std::fpclassify(src0[lane]) == FP_ZERO) &&
23386 !std::signbit(src0[lane])) {
23387 if (std::isinf(src1[lane])) {
23389 }
else if (!std::signbit(src1[lane])) {
23394 }
else if ((std::fpclassify(src0[lane]) == FP_SUBNORMAL ||
23395 std::fpclassify(src0[lane]) == FP_ZERO) &&
23396 std::signbit(src0[lane])) {
23397 if (std::isinf(src1[lane])) {
23399 }
else if (std::signbit(src1[lane])) {
23404 }
else if (std::isinf(src0[lane]) &&
23405 !std::signbit(src0[lane])) {
23406 if (std::fpclassify(src1[lane]) == FP_SUBNORMAL ||
23407 std::fpclassify(src1[lane]) == FP_ZERO) {
23409 }
else if (!std::signbit(src1[lane])) {
23410 vdst[lane] = +INFINITY;
23412 vdst[lane] = -INFINITY;
23414 }
else if (std::isinf(src0[lane]) &&
23415 std::signbit(src0[lane])) {
23416 if (std::fpclassify(src1[lane]) == FP_SUBNORMAL ||
23417 std::fpclassify(src1[lane]) == FP_ZERO) {
23419 }
else if (std::signbit(src1[lane])) {
23420 vdst[lane] = +INFINITY;
23422 vdst[lane] = -INFINITY;
23425 vdst[lane] = src0[lane] * src1[lane];
23448 Wavefront *wf = gpuDynInst->wavefront();
23480 if (std::isnan(src0[lane]) ||
23481 std::isnan(src1[lane])) {
23483 }
else if ((std::fpclassify(src0[lane]) == FP_SUBNORMAL ||
23484 std::fpclassify(src0[lane]) == FP_ZERO) &&
23485 !std::signbit(src0[lane])) {
23486 if (std::isinf(src1[lane])) {
23488 }
else if (!std::signbit(src1[lane])) {
23493 }
else if ((std::fpclassify(src0[lane]) == FP_SUBNORMAL ||
23494 std::fpclassify(src0[lane]) == FP_ZERO) &&
23495 std::signbit(src0[lane])) {
23496 if (std::isinf(src1[lane])) {
23498 }
else if (std::signbit(src1[lane])) {
23503 }
else if (std::isinf(src0[lane]) &&
23504 !std::signbit(src0[lane])) {
23505 if (std::fpclassify(src1[lane]) == FP_SUBNORMAL ||
23506 std::fpclassify(src1[lane]) == FP_ZERO) {
23508 }
else if (!std::signbit(src1[lane])) {
23509 vdst[lane] = +INFINITY;
23511 vdst[lane] = -INFINITY;
23513 }
else if (std::isinf(src0[lane]) &&
23514 std::signbit(src0[lane])) {
23515 if (std::fpclassify(src1[lane]) == FP_SUBNORMAL ||
23516 std::fpclassify(src1[lane]) == FP_ZERO) {
23518 }
else if (std::signbit(src1[lane])) {
23519 vdst[lane] = +INFINITY;
23521 vdst[lane] = -INFINITY;
23524 vdst[lane] = src0[lane] * src1[lane];
23533 :
Inst_VOP3(iFmt,
"v_mul_i32_i24", false)
23546 Wavefront *wf = gpuDynInst->wavefront();
23566 vdst[lane] = sext<24>(
bits(src0[lane], 23, 0))
23567 * sext<24>(
bits(src1[lane], 23, 0));
23575 :
Inst_VOP3(iFmt,
"v_mul_hi_i32_i24", false)
23588 Wavefront *wf = gpuDynInst->wavefront();
23613 vdst[lane] = (
VecElemI32)((tmp_src0 * tmp_src1) >> 32);
23621 :
Inst_VOP3(iFmt,
"v_mul_u32_u24", false)
23634 Wavefront *wf = gpuDynInst->wavefront();
23654 vdst[lane] =
bits(src0[lane], 23, 0) *
bits(src1[lane], 23, 0);
23662 :
Inst_VOP3(iFmt,
"v_mul_hi_u32_u24", false)
23675 Wavefront *wf = gpuDynInst->wavefront();
23697 vdst[lane] = (
VecElemU32)((tmp_src0 * tmp_src1) >> 32);
23719 Wavefront *wf = gpuDynInst->wavefront();
23751 vdst[lane] = std::fmin(src0[lane], src1[lane]);
23773 Wavefront *wf = gpuDynInst->wavefront();
23805 vdst[lane] = std::fmax(src0[lane], src1[lane]);
23826 Wavefront *wf = gpuDynInst->wavefront();
23846 vdst[lane] = std::min(src0[lane], src1[lane]);
23867 Wavefront *wf = gpuDynInst->wavefront();
23887 vdst[lane] = std::max(src0[lane], src1[lane]);
23908 Wavefront *wf = gpuDynInst->wavefront();
23928 vdst[lane] = std::min(src0[lane], src1[lane]);
23949 Wavefront *wf = gpuDynInst->wavefront();
23969 vdst[lane] = std::max(src0[lane], src1[lane]);
23977 :
Inst_VOP3(iFmt,
"v_lshrrev_b32", false)
23991 Wavefront *wf = gpuDynInst->wavefront();
24011 vdst[lane] = src1[lane] >>
bits(src0[lane], 4, 0);
24019 :
Inst_VOP3(iFmt,
"v_ashrrev_i32", false)
24033 Wavefront *wf = gpuDynInst->wavefront();
24053 vdst[lane] = src1[lane] >>
bits(src0[lane], 4, 0);
24061 :
Inst_VOP3(iFmt,
"v_lshlrev_b32", false)
24074 Wavefront *wf = gpuDynInst->wavefront();
24094 vdst[lane] = src1[lane] <<
bits(src0[lane], 4, 0);
24116 Wavefront *wf = gpuDynInst->wavefront();
24136 vdst[lane] = src0[lane] & src1[lane];
24158 Wavefront *wf = gpuDynInst->wavefront();
24178 vdst[lane] = src0[lane] | src1[lane];
24200 Wavefront *wf = gpuDynInst->wavefront();
24220 vdst[lane] = src0[lane] ^ src1[lane];
24243 Wavefront *wf = gpuDynInst->wavefront();
24276 vdst[lane] = std::fma(src0[lane], src1[lane], vdst[lane]);
24301 Wavefront *wf = gpuDynInst->wavefront();
24319 vdst[lane] = src0[lane] + src1[lane];
24321 + (
VecElemU64)src1[lane]) >= 0x100000000ULL ? 1 : 0);
24347 Wavefront *wf = gpuDynInst->wavefront();
24365 vdst[lane] = src0[lane] - src1[lane];
24366 vcc.
setBit(lane, src1[lane] > src0[lane] ? 1 : 0);
24393 Wavefront *wf = gpuDynInst->wavefront();
24411 vdst[lane] = src1[lane] - src0[lane];
24412 vcc.
setBit(lane, src0[lane] > src1[lane] ? 1 : 0);
24440 Wavefront *wf = gpuDynInst->wavefront();
24460 vdst[lane] = src0[lane] + src1[lane]
24465 >= 0x100000000 ? 1 : 0);
24493 Wavefront *wf = gpuDynInst->wavefront();
24513 vdst[lane] = src0[lane] - src1[lane]
24516 > src0[lane] ? 1 : 0);
24545 Wavefront *wf = gpuDynInst->wavefront();
24565 vdst[lane] = src1[lane] - src0[lane]
24568 > src0[lane] ? 1 : 0);
24613 :
Inst_VOP3(iFmt,
"v_subrev_f16", false)
24681 Wavefront *wf = gpuDynInst->wavefront();
24701 vdst[lane] = src0[lane] + src1[lane];
24722 Wavefront *wf = gpuDynInst->wavefront();
24742 vdst[lane] = src0[lane] - src1[lane];
24750 :
Inst_VOP3(iFmt,
"v_subrev_u16", false)
24763 Wavefront *wf = gpuDynInst->wavefront();
24783 vdst[lane] = src1[lane] - src0[lane];
24791 :
Inst_VOP3(iFmt,
"v_mul_lo_u16", false)
24804 Wavefront *wf = gpuDynInst->wavefront();
24824 vdst[lane] = src0[lane] * src1[lane];
24832 :
Inst_VOP3(iFmt,
"v_lshlrev_b16", false)
24845 Wavefront *wf = gpuDynInst->wavefront();
24865 vdst[lane] = src1[lane] <<
bits(src0[lane], 3, 0);
24873 :
Inst_VOP3(iFmt,
"v_lshrrev_b16", false)
24887 Wavefront *wf = gpuDynInst->wavefront();
24913 vdst[lane] = src1[lane] >>
bits(src0[lane], 3, 0);
24921 :
Inst_VOP3(iFmt,
"v_ashrrev_i16", false)
24935 Wavefront *wf = gpuDynInst->wavefront();
24955 vdst[lane] = src1[lane] >>
bits(src0[lane], 3, 0);
25012 Wavefront *wf = gpuDynInst->wavefront();
25038 vdst[lane] = std::max(src0[lane], src1[lane]);
25059 Wavefront *wf = gpuDynInst->wavefront();
25085 vdst[lane] = std::max(src0[lane], src1[lane]);
25106 Wavefront *wf = gpuDynInst->wavefront();
25132 vdst[lane] = std::min(src0[lane], src1[lane]);
25153 Wavefront *wf = gpuDynInst->wavefront();
25179 vdst[lane] = std::min(src0[lane], src1[lane]);
25187 :
Inst_VOP3(iFmt,
"v_ldexp_f16", false)
25236 Wavefront *wf = gpuDynInst->wavefront();
25244 vdst[lane] = src[lane];
25252 :
Inst_VOP3(iFmt,
"v_cvt_i32_f64", false)
25268 Wavefront *wf = gpuDynInst->wavefront();
25285 std::frexp(src[lane],&exp);
25286 if (std::isnan(src[lane])) {
25288 }
else if (std::isinf(src[lane]) || exp > 30) {
25289 if (std::signbit(src[lane])) {
25290 vdst[lane] = INT_MIN;
25292 vdst[lane] = INT_MAX;
25304 :
Inst_VOP3(iFmt,
"v_cvt_f64_i32", false)
25318 Wavefront *wf = gpuDynInst->wavefront();
25342 :
Inst_VOP3(iFmt,
"v_cvt_f32_i32", false)
25356 Wavefront *wf = gpuDynInst->wavefront();
25382 :
Inst_VOP3(iFmt,
"v_cvt_f32_u32", false)
25396 Wavefront *wf = gpuDynInst->wavefront();
25420 :
Inst_VOP3(iFmt,
"v_cvt_u32_f32", false)
25436 Wavefront *wf = gpuDynInst->wavefront();
25453 std::frexp(src[lane],&exp);
25454 if (std::isnan(src[lane])) {
25456 }
else if (std::isinf(src[lane])) {
25457 if (std::signbit(src[lane])) {
25460 vdst[lane] = UINT_MAX;
25462 }
else if (exp > 31) {
25463 vdst[lane] = UINT_MAX;
25474 :
Inst_VOP3(iFmt,
"v_cvt_i32_f32", false)
25490 Wavefront *wf = gpuDynInst->wavefront();
25515 std::frexp(src[lane],&exp);
25516 if (std::isnan(src[lane])) {
25518 }
else if (std::isinf(src[lane]) || exp > 30) {
25519 if (std::signbit(src[lane])) {
25520 vdst[lane] = INT_MIN;
25522 vdst[lane] = INT_MAX;
25534 :
Inst_VOP3(iFmt,
"v_mov_fed_b32", false)
25552 :
Inst_VOP3(iFmt,
"v_cvt_f16_f32", false)
25570 :
Inst_VOP3(iFmt,
"v_cvt_f32_f16", false)
25589 :
Inst_VOP3(iFmt,
"v_cvt_rpi_i32_f32", false)
25603 Wavefront *wf = gpuDynInst->wavefront();
25619 vdst[lane] = (
VecElemI32)std::floor(src[lane] + 0.5);
25628 :
Inst_VOP3(iFmt,
"v_cvt_flr_i32_f32", false)
25642 Wavefront *wf = gpuDynInst->wavefront();
25658 vdst[lane] = (
VecElemI32)std::floor(src[lane]);
25666 :
Inst_VOP3(iFmt,
"v_cvt_off_f32_i4", false)
25684 :
Inst_VOP3(iFmt,
"v_cvt_f32_f64", false)
25698 Wavefront *wf = gpuDynInst->wavefront();
25730 :
Inst_VOP3(iFmt,
"v_cvt_f64_f32", false)
25744 Wavefront *wf = gpuDynInst->wavefront();
25776 :
Inst_VOP3(iFmt,
"v_cvt_f32_ubyte0", false)
25790 Wavefront *wf = gpuDynInst->wavefront();
25814 :
Inst_VOP3(iFmt,
"v_cvt_f32_ubyte1", false)
25828 Wavefront *wf = gpuDynInst->wavefront();
25852 :
Inst_VOP3(iFmt,
"v_cvt_f32_ubyte2", false)
25866 Wavefront *wf = gpuDynInst->wavefront();
25890 :
Inst_VOP3(iFmt,
"v_cvt_f32_ubyte3", false)
25904 Wavefront *wf = gpuDynInst->wavefront();
25928 :
Inst_VOP3(iFmt,
"v_cvt_u32_f64", false)
25944 Wavefront *wf = gpuDynInst->wavefront();
25961 std::frexp(src[lane],&exp);
25962 if (std::isnan(src[lane])) {
25964 }
else if (std::isinf(src[lane])) {
25965 if (std::signbit(src[lane])) {
25968 vdst[lane] = UINT_MAX;
25970 }
else if (exp > 31) {
25971 vdst[lane] = UINT_MAX;
25982 :
Inst_VOP3(iFmt,
"v_cvt_f64_u32", false)
25996 Wavefront *wf = gpuDynInst->wavefront();
26020 :
Inst_VOP3(iFmt,
"v_trunc_f64", false)
26034 Wavefront *wf = gpuDynInst->wavefront();
26050 vdst[lane] = std::trunc(src[lane]);
26072 Wavefront *wf = gpuDynInst->wavefront();
26088 vdst[lane] = std::ceil(src[lane]);
26096 :
Inst_VOP3(iFmt,
"v_rndne_f64", false)
26110 Wavefront *wf = gpuDynInst->wavefront();
26134 :
Inst_VOP3(iFmt,
"v_floor_f64", false)
26148 Wavefront *wf = gpuDynInst->wavefront();
26164 vdst[lane] = std::floor(src[lane]);
26172 :
Inst_VOP3(iFmt,
"v_fract_f32", false)
26186 Wavefront *wf = gpuDynInst->wavefront();
26203 vdst[lane] = std::modf(src[lane], &int_part);
26211 :
Inst_VOP3(iFmt,
"v_trunc_f32", false)
26225 Wavefront *wf = gpuDynInst->wavefront();
26241 vdst[lane] = std::trunc(src[lane]);
26263 Wavefront *wf = gpuDynInst->wavefront();
26279 vdst[lane] = std::ceil(src[lane]);
26287 :
Inst_VOP3(iFmt,
"v_rndne_f32", false)
26301 Wavefront *wf = gpuDynInst->wavefront();
26325 :
Inst_VOP3(iFmt,
"v_floor_f32", false)
26339 Wavefront *wf = gpuDynInst->wavefront();
26355 vdst[lane] = std::floor(src[lane]);
26377 Wavefront *wf = gpuDynInst->wavefront();
26393 vdst[lane] = std::pow(2.0, src[lane]);
26415 Wavefront *wf = gpuDynInst->wavefront();
26439 vdst[lane] = std::log2(src[lane]);
26461 Wavefront *wf = gpuDynInst->wavefront();
26477 vdst[lane] = 1.0 / src[lane];
26485 :
Inst_VOP3(iFmt,
"v_rcp_iflag_f32", false)
26499 Wavefront *wf = gpuDynInst->wavefront();
26515 vdst[lane] = 1.0 / src[lane];
26537 Wavefront *wf = gpuDynInst->wavefront();
26553 vdst[lane] = 1.0 / std::sqrt(src[lane]);
26575 Wavefront *wf = gpuDynInst->wavefront();
26591 if (std::fpclassify(src[lane]) == FP_ZERO) {
26592 vdst[lane] = +INFINITY;
26593 }
else if (std::isnan(src[lane])) {
26595 }
else if (std::isinf(src[lane])) {
26596 if (std::signbit(src[lane])) {
26602 vdst[lane] = 1.0 / src[lane];
26625 Wavefront *wf = gpuDynInst->wavefront();
26641 if (std::fpclassify(src[lane]) == FP_ZERO) {
26642 vdst[lane] = +INFINITY;
26643 }
else if (std::isnan(src[lane])) {
26645 }
else if (std::isinf(src[lane]) && !std::signbit(src[lane])) {
26647 }
else if (std::signbit(src[lane])) {
26650 vdst[lane] = 1.0 / std::sqrt(src[lane]);
26673 Wavefront *wf = gpuDynInst->wavefront();
26689 vdst[lane] = std::sqrt(src[lane]);
26711 Wavefront *wf = gpuDynInst->wavefront();
26727 vdst[lane] = std::sqrt(src[lane]);
26749 Wavefront *wf = gpuDynInst->wavefront();
26767 vdst[lane] = std::sin(src[lane] * 2 * pi.
rawData());
26789 Wavefront *wf = gpuDynInst->wavefront();
26807 vdst[lane] = std::cos(src[lane] * 2 * pi.
rawData());
26829 Wavefront *wf = gpuDynInst->wavefront();
26837 vdst[lane] = ~src[lane];
26845 :
Inst_VOP3(iFmt,
"v_bfrev_b32", false)
26859 Wavefront *wf = gpuDynInst->wavefront();
26889 Wavefront *wf = gpuDynInst->wavefront();
26927 Wavefront *wf = gpuDynInst->wavefront();
26965 Wavefront *wf = gpuDynInst->wavefront();
26990 :
Inst_VOP3(iFmt,
"v_frexp_exp_i32_f64", false)
27004 Wavefront *wf = gpuDynInst->wavefront();
27020 if (std::isinf(src[lane]) || std::isnan(src[lane])) {
27024 std::frexp(src[lane], &exp);
27034 :
Inst_VOP3(iFmt,
"v_frexp_mant_f64", false)
27047 Wavefront *wf = gpuDynInst->wavefront();
27064 vdst[lane] = std::frexp(src[lane], &exp);
27072 :
Inst_VOP3(iFmt,
"v_fract_f64", false)
27085 Wavefront *wf = gpuDynInst->wavefront();
27102 vdst[lane] = std::modf(src[lane], &int_part);
27111 :
Inst_VOP3(iFmt,
"v_frexp_exp_i32_f32", false)
27127 Wavefront *wf = gpuDynInst->wavefront();
27143 if (std::isinf(src[lane])|| std::isnan(src[lane])) {
27147 std::frexp(src[lane], &exp);
27157 :
Inst_VOP3(iFmt,
"v_frexp_mant_f32", false)
27172 Wavefront *wf = gpuDynInst->wavefront();
27188 if (std::isinf(src[lane]) || std::isnan(src[lane])) {
27189 vdst[lane] = src[lane];
27192 vdst[lane] = std::frexp(src[lane], &exp);
27216 :
Inst_VOP3(iFmt,
"v_cvt_f16_u16", false)
27234 :
Inst_VOP3(iFmt,
"v_cvt_f16_i16", false)
27252 :
Inst_VOP3(iFmt,
"v_cvt_u16_f16", false)
27270 :
Inst_VOP3(iFmt,
"v_cvt_i16_f16", false)
27393 :
Inst_VOP3(iFmt,
"v_frexp_mant_f16", false)
27415 :
Inst_VOP3(iFmt,
"v_frexp_exp_i16_f16", false)
27432 :
Inst_VOP3(iFmt,
"v_floor_f16", false)
27468 :
Inst_VOP3(iFmt,
"v_trunc_f16", false)
27486 :
Inst_VOP3(iFmt,
"v_rndne_f16", false)
27504 :
Inst_VOP3(iFmt,
"v_fract_f16", false)
27558 :
Inst_VOP3(iFmt,
"v_exp_legacy_f32", false)
27572 Wavefront *wf = gpuDynInst->wavefront();
27596 vdst[lane] = std::pow(2.0, src[lane]);
27604 :
Inst_VOP3(iFmt,
"v_log_legacy_f32", false)
27618 Wavefront *wf = gpuDynInst->wavefront();
27626 vdst[lane] = std::log2(src[lane]);
27634 :
Inst_VOP3(iFmt,
"v_mad_legacy_f32", false)
27649 Wavefront *wf = gpuDynInst->wavefront();
27685 vdst[lane] = std::fma(src0[lane], src1[lane], src2[lane]);
27708 Wavefront *wf = gpuDynInst->wavefront();
27744 vdst[lane] = std::fma(src0[lane], src1[lane], src2[lane]);
27752 :
Inst_VOP3(iFmt,
"v_mad_i32_i24", false)
27766 Wavefront *wf = gpuDynInst->wavefront();
27788 vdst[lane] = sext<24>(
bits(src0[lane], 23, 0))
27789 * sext<24>(
bits(src1[lane], 23, 0)) + src2[lane];
27797 :
Inst_VOP3(iFmt,
"v_mad_u32_u24", false)
27811 Wavefront *wf = gpuDynInst->wavefront();
27833 vdst[lane] =
bits(src0[lane], 23, 0) *
bits(src1[lane], 23, 0)
27842 :
Inst_VOP3(iFmt,
"v_cubeid_f32", false)
27859 :
Inst_VOP3(iFmt,
"v_cubesc_f32", false)
27876 :
Inst_VOP3(iFmt,
"v_cubetc_f32", false)
27893 :
Inst_VOP3(iFmt,
"v_cubema_f32", false)
27924 Wavefront *wf = gpuDynInst->wavefront();
27946 vdst[lane] = (src0[lane] >>
bits(src1[lane], 4, 0))
27947 & ((1 <<
bits(src2[lane], 4, 0)) - 1);
27969 Wavefront *wf = gpuDynInst->wavefront();
27991 vdst[lane] = (src0[lane] >>
bits(src1[lane], 4, 0))
27992 & ((1 <<
bits(src2[lane], 4, 0)) - 1);
28013 Wavefront *wf = gpuDynInst->wavefront();
28035 vdst[lane] = (src0[lane] & src1[lane]) | (~src0[lane]
28059 Wavefront *wf = gpuDynInst->wavefront();
28095 vdst[lane] = std::fma(src0[lane], src1[lane], src2[lane]);
28118 Wavefront *wf = gpuDynInst->wavefront();
28154 vdst[lane] = std::fma(src0[lane], src1[lane], src2[lane]);
28178 Wavefront *wf = gpuDynInst->wavefront();
28200 vdst[lane] = ((
bits(src0[lane], 31, 24)
28201 +
bits(src1[lane], 31, 24) +
bits(src2[lane], 24)) >> 1)
28203 vdst[lane] += ((
bits(src0[lane], 23, 16)
28204 +
bits(src1[lane], 23, 16) +
bits(src2[lane], 16)) >> 1)
28206 vdst[lane] += ((
bits(src0[lane], 15, 8)
28207 +
bits(src1[lane], 15, 8) +
bits(src2[lane], 8)) >> 1)
28209 vdst[lane] += ((
bits(src0[lane], 7, 0) +
bits(src1[lane], 7, 0)
28210 +
bits(src2[lane], 0)) >> 1);
28218 :
Inst_VOP3(iFmt,
"v_alignbit_b32", false)
28231 Wavefront *wf = gpuDynInst->wavefront();
28264 :
Inst_VOP3(iFmt,
"v_alignbyte_b32", false)
28277 Wavefront *wf = gpuDynInst->wavefront();
28325 Wavefront *wf = gpuDynInst->wavefront();
28361 VecElemF32 min_0_1 = std::fmin(src0[lane], src1[lane]);
28362 vdst[lane] = std::fmin(min_0_1, src2[lane]);
28383 Wavefront *wf = gpuDynInst->wavefront();
28405 VecElemI32 min_0_1 = std::min(src0[lane], src1[lane]);
28406 vdst[lane] = std::min(min_0_1, src2[lane]);
28427 Wavefront *wf = gpuDynInst->wavefront();
28449 VecElemU32 min_0_1 = std::min(src0[lane], src1[lane]);
28450 vdst[lane] = std::min(min_0_1, src2[lane]);
28472 Wavefront *wf = gpuDynInst->wavefront();
28508 VecElemF32 max_0_1 = std::fmax(src0[lane], src1[lane]);
28509 vdst[lane] = std::fmax(max_0_1, src2[lane]);
28530 Wavefront *wf = gpuDynInst->wavefront();
28552 VecElemI32 max_0_1 = std::max(src0[lane], src1[lane]);
28553 vdst[lane] = std::max(max_0_1, src2[lane]);
28574 Wavefront *wf = gpuDynInst->wavefront();
28596 VecElemU32 max_0_1 = std::max(src0[lane], src1[lane]);
28597 vdst[lane] = std::max(max_0_1, src2[lane]);
28619 Wavefront *wf = gpuDynInst->wavefront();
28655 vdst[lane] =
median(src0[lane], src1[lane], src2[lane]);
28676 Wavefront *wf = gpuDynInst->wavefront();
28698 vdst[lane] =
median(src0[lane], src1[lane], src2[lane]);
28719 Wavefront *wf = gpuDynInst->wavefront();
28741 vdst[lane] =
median(src0[lane], src1[lane], src2[lane]);
28765 Wavefront *wf = gpuDynInst->wavefront();
28787 vdst[lane] = std::abs(
bits(src0[lane], 31, 24)
28788 -
bits(src1[lane], 31, 24))
28789 + std::abs(
bits(src0[lane], 23, 16)
28790 -
bits(src1[lane], 23, 16))
28791 + std::abs(
bits(src0[lane], 15, 8)
28792 -
bits(src1[lane], 15, 8))
28793 + std::abs(
bits(src0[lane], 7, 0)
28794 -
bits(src1[lane], 7, 0)) + src2[lane];
28802 :
Inst_VOP3(iFmt,
"v_sad_hi_u8", false)
28816 Wavefront *wf = gpuDynInst->wavefront();
28838 vdst[lane] = (((
bits(src0[lane], 31, 24)
28839 -
bits(src1[lane], 31, 24)) + (
bits(src0[lane], 23, 16)
28840 -
bits(src1[lane], 23, 16)) + (
bits(src0[lane], 15, 8)
28841 -
bits(src1[lane], 15, 8)) + (
bits(src0[lane], 7, 0)
28842 -
bits(src1[lane], 7, 0))) << 16) + src2[lane];
28865 Wavefront *wf = gpuDynInst->wavefront();
28887 vdst[lane] = std::abs(
bits(src0[lane], 31, 16)
28888 -
bits(src1[lane], 31, 16))
28889 + std::abs(
bits(src0[lane], 15, 0)
28890 -
bits(src1[lane], 15, 0)) + src2[lane];
28912 Wavefront *wf = gpuDynInst->wavefront();
28934 vdst[lane] = std::abs(src0[lane] - src1[lane]) + src2[lane];
28942 :
Inst_VOP3(iFmt,
"v_cvt_pk_u8_f32", false)
28959 Wavefront *wf = gpuDynInst->wavefront();
28988 vdst[lane] = (((
VecElemU8)src0[lane] & 0xff)
28989 << (8 *
bits(src1[lane], 1, 0)))
28990 | (src2[lane] & ~(0xff << (8 *
bits(src1[lane], 1, 0))));
28998 :
Inst_VOP3(iFmt,
"v_div_fixup_f32", false)
29013 Wavefront *wf = gpuDynInst->wavefront();
29049 if (std::fpclassify(src1[lane]) == FP_ZERO) {
29050 if (std::signbit(src1[lane])) {
29051 vdst[lane] = -INFINITY;
29053 vdst[lane] = +INFINITY;
29055 }
else if (std::isnan(src2[lane]) || std::isnan(src1[lane])) {
29057 }
else if (std::isinf(src1[lane])) {
29058 if (std::signbit(src1[lane])) {
29059 vdst[lane] = -INFINITY;
29061 vdst[lane] = +INFINITY;
29064 vdst[lane] = src2[lane] / src1[lane];
29074 :
Inst_VOP3(iFmt,
"v_div_fixup_f64", false)
29089 Wavefront *wf = gpuDynInst->wavefront();
29125 int sign_out = std::signbit(src1[lane])
29126 ^ std::signbit(src2[lane]);
29129 std::frexp(src1[lane], &exp1);
29130 std::frexp(src2[lane], &exp2);
29132 if (std::isnan(src1[lane]) || std::isnan(src2[lane])) {
29133 vdst[lane] = std::numeric_limits<VecElemF64>::quiet_NaN();
29134 }
else if (std::fpclassify(src1[lane]) == FP_ZERO
29135 && std::fpclassify(src2[lane]) == FP_ZERO) {
29137 = std::numeric_limits<VecElemF64>::signaling_NaN();
29138 }
else if (std::isinf(src1[lane]) && std::isinf(src2[lane])) {
29140 = std::numeric_limits<VecElemF64>::signaling_NaN();
29141 }
else if (std::fpclassify(src1[lane]) == FP_ZERO
29142 || std::isinf(src2[lane])) {
29143 vdst[lane] = sign_out ? -INFINITY : +INFINITY;
29144 }
else if (std::isinf(src1[lane])
29145 || std::fpclassify(src2[lane]) == FP_ZERO) {
29146 vdst[lane] = sign_out ? -0.0 : +0.0;
29147 }
else if (exp2 - exp1 < -1075) {
29148 vdst[lane] = src0[lane];
29149 }
else if (exp1 == 2047) {
29150 vdst[lane] = src0[lane];
29152 vdst[lane] = sign_out ? -std::fabs(src0[lane])
29153 : std::fabs(src0[lane]);
29182 Wavefront *wf = gpuDynInst->wavefront();
29207 vdst[lane] = src0[lane];
29238 Wavefront *wf = gpuDynInst->wavefront();
29265 std::frexp(src1[lane], &exp1);
29266 std::frexp(src2[lane], &exp2);
29269 if (std::fpclassify(src1[lane]) == FP_ZERO
29270 || std::fpclassify(src2[lane]) == FP_ZERO) {
29272 }
else if (exp2 - exp1 >= 768) {
29274 if (src0[lane] == src1[lane]) {
29275 vdst[lane] = std::ldexp(src0[lane], 128);
29277 }
else if (std::fpclassify(src1[lane]) == FP_SUBNORMAL) {
29278 vdst[lane] = std::ldexp(src0[lane], 128);
29279 }
else if (std::fpclassify(1.0 / src1[lane]) == FP_SUBNORMAL
29280 && std::fpclassify(src2[lane] / src1[lane])
29283 if (src0[lane] == src1[lane]) {
29284 vdst[lane] = std::ldexp(src0[lane], 128);
29286 }
else if (std::fpclassify(1.0 / src1[lane]) == FP_SUBNORMAL) {
29287 vdst[lane] = std::ldexp(src0[lane], -128);
29288 }
else if (std::fpclassify(src2[lane] / src1[lane])
29291 if (src0[lane] == src2[lane]) {
29292 vdst[lane] = std::ldexp(src0[lane], 128);
29294 }
else if (exp2 <= 53) {
29295 vdst[lane] = std::ldexp(src0[lane], 128);
29305 :
Inst_VOP3(iFmt,
"v_div_fmas_f32", false)
29322 Wavefront *wf = gpuDynInst->wavefront();
29358 vdst[lane] = std::fma(src0[lane], src1[lane], src2[lane]);
29367 :
Inst_VOP3(iFmt,
"v_div_fmas_f64", false)
29384 Wavefront *wf = gpuDynInst->wavefront();
29423 vdst[lane] = std::pow(2, 64)
29424 * std::fma(src0[lane], src1[lane], src2[lane]);
29426 vdst[lane] = std::fma(src0[lane], src1[lane], src2[lane]);
29452 :
Inst_VOP3(iFmt,
"v_qsad_pk_u16_u8", false)
29471 :
Inst_VOP3(iFmt,
"v_mqsad_pk_u16_u8", false)
29489 :
Inst_VOP3(iFmt,
"v_mqsad_u32_u8", false)
29523 Wavefront *wf = gpuDynInst->wavefront();
29544 vcc.
setBit(lane,
muladd(vdst[lane], src0[lane], src1[lane],
29570 Wavefront *wf = gpuDynInst->wavefront();
29590 vcc.
setBit(lane,
muladd(vdst[lane], src0[lane], src1[lane],
29635 Wavefront *wf = gpuDynInst->wavefront();
29657 vdst[lane] = src0[lane] * src1[lane] + src2[lane];
29680 Wavefront *wf = gpuDynInst->wavefront();
29702 vdst[lane] = src0[lane] * src1[lane] + src2[lane];
29735 Wavefront *wf = gpuDynInst->wavefront();
29751 DPRINTF(GCN3,
"Executing v_perm_b32 src_0 0x%08x, src_1 "
29752 "0x%08x, src_2 0x%08x, vdst 0x%08x\n", src0[lane],
29753 src1[lane], src2[lane], vdst[lane]);
29756 for (
int i = 0;
i < 4 ; ++
i) {
29759 vdst[lane] |= (permuted_val <<
i);
29762 DPRINTF(GCN3,
"v_perm result: 0x%08x\n", vdst[lane]);
29790 :
Inst_VOP3(iFmt,
"v_div_fixup_f16", false)
29837 :
Inst_VOP3(iFmt,
"v_cvt_pkaccum_u8_f32", false)
29859 :
Inst_VOP3(iFmt,
"v_interp_p1_f32", false)
29877 :
Inst_VOP3(iFmt,
"v_interp_p2_f32", false)
29895 :
Inst_VOP3(iFmt,
"v_interp_mov_f32", false)
29914 :
Inst_VOP3(iFmt,
"v_interp_p1ll_f16", false)
29933 :
Inst_VOP3(iFmt,
"v_interp_p1lv_f16", false)
29950 :
Inst_VOP3(iFmt,
"v_interp_p2_f16", false)
29982 Wavefront *wf = gpuDynInst->wavefront();
30014 if (std::isnan(src0[lane]) ||
30015 std::isnan(src1[lane]) ) {
30017 }
else if (std::isinf(src0[lane]) &&
30018 std::isinf(src1[lane])) {
30019 if (std::signbit(src0[lane]) !=
30020 std::signbit(src1[lane])) {
30023 vdst[lane] = src0[lane];
30025 }
else if (std::isinf(src0[lane])) {
30026 vdst[lane] = src0[lane];
30027 }
else if (std::isinf(src1[lane])) {
30028 vdst[lane] = src1[lane];
30029 }
else if (std::fpclassify(src0[lane]) == FP_SUBNORMAL ||
30030 std::fpclassify(src0[lane]) == FP_ZERO) {
30031 if (std::fpclassify(src1[lane]) == FP_SUBNORMAL ||
30032 std::fpclassify(src1[lane]) == FP_ZERO) {
30033 if (std::signbit(src0[lane]) &&
30034 std::signbit(src1[lane])) {
30040 vdst[lane] = src1[lane];
30042 }
else if (std::fpclassify(src1[lane]) == FP_SUBNORMAL ||
30043 std::fpclassify(src1[lane]) == FP_ZERO) {
30044 if (std::fpclassify(src0[lane]) == FP_SUBNORMAL ||
30045 std::fpclassify(src0[lane]) == FP_ZERO) {
30046 if (std::signbit(src0[lane]) &&
30047 std::signbit(src1[lane])) {
30053 vdst[lane] = src0[lane];
30056 vdst[lane] = src0[lane] + src1[lane];
30079 Wavefront *wf = gpuDynInst->wavefront();
30111 if (std::isnan(src0[lane]) ||
30112 std::isnan(src1[lane])) {
30114 }
else if ((std::fpclassify(src0[lane]) == FP_SUBNORMAL ||
30115 std::fpclassify(src0[lane]) == FP_ZERO) &&
30116 !std::signbit(src0[lane])) {
30117 if (std::isinf(src1[lane])) {
30119 }
else if (!std::signbit(src1[lane])) {
30124 }
else if ((std::fpclassify(src0[lane]) == FP_SUBNORMAL ||
30125 std::fpclassify(src0[lane]) == FP_ZERO) &&
30126 std::signbit(src0[lane])) {
30127 if (std::isinf(src1[lane])) {
30129 }
else if (std::signbit(src1[lane])) {
30134 }
else if (std::isinf(src0[lane]) &&
30135 !std::signbit(src0[lane])) {
30136 if (std::fpclassify(src1[lane]) == FP_SUBNORMAL ||
30137 std::fpclassify(src1[lane]) == FP_ZERO) {
30139 }
else if (!std::signbit(src1[lane])) {
30140 vdst[lane] = +INFINITY;
30142 vdst[lane] = -INFINITY;
30144 }
else if (std::isinf(src0[lane]) &&
30145 std::signbit(src0[lane])) {
30146 if (std::fpclassify(src1[lane]) == FP_SUBNORMAL ||
30147 std::fpclassify(src1[lane]) == FP_ZERO) {
30149 }
else if (std::signbit(src1[lane])) {
30150 vdst[lane] = +INFINITY;
30152 vdst[lane] = -INFINITY;
30155 vdst[lane] = src0[lane] * src1[lane];
30178 Wavefront *wf = gpuDynInst->wavefront();
30210 vdst[lane] = std::fmin(src0[lane], src1[lane]);
30232 Wavefront *wf = gpuDynInst->wavefront();
30264 vdst[lane] = std::fmax(src0[lane], src1[lane]);
30272 :
Inst_VOP3(iFmt,
"v_ldexp_f64", false)
30286 Wavefront *wf = gpuDynInst->wavefront();
30312 if (std::isnan(src0[lane]) || std::isinf(src0[lane])) {
30313 vdst[lane] = src0[lane];
30314 }
else if (std::fpclassify(src0[lane]) == FP_SUBNORMAL
30315 || std::fpclassify(src0[lane]) == FP_ZERO) {
30316 if (std::signbit(src0[lane])) {
30322 vdst[lane] = std::ldexp(src0[lane], src1[lane]);
30331 :
Inst_VOP3(iFmt,
"v_mul_lo_u32", false)
30344 Wavefront *wf = gpuDynInst->wavefront();
30374 :
Inst_VOP3(iFmt,
"v_mul_hi_u32", false)
30387 Wavefront *wf = gpuDynInst->wavefront();
30410 = (
VecElemU32)(((s0 * s1) >> 32) & 0xffffffffLL);
30418 :
Inst_VOP3(iFmt,
"v_mul_hi_i32", false)
30431 Wavefront *wf = gpuDynInst->wavefront();
30462 :
Inst_VOP3(iFmt,
"v_ldexp_f32", false)
30476 Wavefront *wf = gpuDynInst->wavefront();
30494 vdst[lane] = std::ldexp(src0[lane], src1[lane]);
30502 :
Inst_VOP3(iFmt,
"v_readlane_b32", true)
30535 sdst = src0[src1.
rawData() & 0x3f];
30541 :
Inst_VOP3(iFmt,
"v_writelane_b32", false)
30582 :
Inst_VOP3(iFmt,
"v_bcnt_u32_b32", false)
30595 Wavefront *wf = gpuDynInst->wavefront();
30615 vdst[lane] =
popCount(src0[lane]) + src1[lane];
30624 :
Inst_VOP3(iFmt,
"v_mbcnt_lo_u32_b32", false)
30638 Wavefront *wf = gpuDynInst->wavefront();
30642 uint64_t threadMask = 0;
30659 threadMask = ((1
LL << lane) - 1
LL);
30660 vdst[lane] =
popCount(src0[lane] &
bits(threadMask, 31, 0)) +
30671 :
Inst_VOP3(iFmt,
"v_mbcnt_hi_u32_b32", false)
30687 Wavefront *wf = gpuDynInst->wavefront();
30691 uint64_t threadMask = 0;
30708 threadMask = ((1
LL << lane) - 1
LL);
30709 vdst[lane] =
popCount(src0[lane] &
bits(threadMask, 63, 32)) +
30719 :
Inst_VOP3(iFmt,
"v_lshlrev_b64", false)
30732 Wavefront *wf = gpuDynInst->wavefront();
30752 vdst[lane] = src1[lane] <<
bits(src0[lane], 5, 0);
30760 :
Inst_VOP3(iFmt,
"v_lshrrev_b64", false)
30774 Wavefront *wf = gpuDynInst->wavefront();
30794 vdst[lane] = src1[lane] >>
bits(src0[lane], 5, 0);
30802 :
Inst_VOP3(iFmt,
"v_ashrrev_i64", false)
30816 Wavefront *wf = gpuDynInst->wavefront();
30837 = src1[lane] >>
bits(src0[lane], 5, 0);
30845 :
Inst_VOP3(iFmt,
"v_trig_preop_f64", false)
30875 Wavefront *wf = gpuDynInst->wavefront();
30895 vdst[lane] = ((1 <<
bits(src0[lane], 4, 0)) - 1)
30896 <<
bits(src1[lane], 4, 0);
30905 :
Inst_VOP3(iFmt,
"v_cvt_pknorm_i16_f32", false)
30924 :
Inst_VOP3(iFmt,
"v_cvt_pknorm_u16_f32", false)
30943 :
Inst_VOP3(iFmt,
"v_cvt_pkrtz_f16_f32", false)
30960 :
Inst_VOP3(iFmt,
"v_cvt_pk_u16_u32", false)
30977 :
Inst_VOP3(iFmt,
"v_cvt_pk_i16_i32", false)
30994 :
Inst_DS(iFmt,
"ds_add_u32")
31012 :
Inst_DS(iFmt,
"ds_sub_u32")
31030 :
Inst_DS(iFmt,
"ds_rsub_u32")
31049 :
Inst_DS(iFmt,
"ds_inc_u32")
31067 :
Inst_DS(iFmt,
"ds_dec_u32")
31085 :
Inst_DS(iFmt,
"ds_min_i32")
31103 :
Inst_DS(iFmt,
"ds_max_i32")
31121 :
Inst_DS(iFmt,
"ds_min_u32")
31139 :
Inst_DS(iFmt,
"ds_max_u32")
31157 :
Inst_DS(iFmt,
"ds_and_b32")
31193 :
Inst_DS(iFmt,
"ds_xor_b32")
31211 :
Inst_DS(iFmt,
"ds_mskor_b32")
31229 :
Inst_DS(iFmt,
"ds_write_b32")
31244 Wavefront *wf = gpuDynInst->wavefront();
31246 gpuDynInst->exec_mask = wf->
execMask();
31247 gpuDynInst->latency.init(gpuDynInst->computeUnit());
31248 gpuDynInst->latency.set(
31249 gpuDynInst->computeUnit()->cyclesToTicks(
Cycles(24)));
31260 (
reinterpret_cast<VecElemU32*
>(gpuDynInst->d_data))[lane]
31265 gpuDynInst->computeUnit()->localMemoryPipe.issueRequest(gpuDynInst);
31280 initMemWrite<VecElemU32>(gpuDynInst,
offset);
31289 :
Inst_DS(iFmt,
"ds_write2_b32")
31305 Wavefront *wf = gpuDynInst->wavefront();
31307 gpuDynInst->exec_mask = wf->
execMask();
31308 gpuDynInst->latency.init(gpuDynInst->computeUnit());
31309 gpuDynInst->latency.set(
31310 gpuDynInst->computeUnit()->cyclesToTicks(
Cycles(24)));
31323 (
reinterpret_cast<VecElemU32*
>(gpuDynInst->d_data))[lane * 2]
31326 gpuDynInst->d_data))[lane * 2 + 1] = data1[lane];
31330 gpuDynInst->computeUnit()->localMemoryPipe.issueRequest(gpuDynInst);
31344 initDualMemWrite<VecElemU32>(gpuDynInst, offset0, offset1);
31353 :
Inst_DS(iFmt,
"ds_write2st64_b32")
31369 Wavefront *wf = gpuDynInst->wavefront();
31371 gpuDynInst->exec_mask = wf->
execMask();
31372 gpuDynInst->latency.init(gpuDynInst->computeUnit());
31373 gpuDynInst->latency.set(
31374 gpuDynInst->computeUnit()->cyclesToTicks(
Cycles(24)));
31387 (
reinterpret_cast<VecElemU32*
>(gpuDynInst->d_data))[lane * 2]
31390 gpuDynInst->d_data))[lane * 2 + 1] = data1[lane];
31394 gpuDynInst->computeUnit()->localMemoryPipe.issueRequest(gpuDynInst);
31408 initDualMemWrite<VecElemU32>(gpuDynInst, offset0, offset1);
31418 :
Inst_DS(iFmt,
"ds_cmpst_b32")
31439 :
Inst_DS(iFmt,
"ds_cmpst_f32")
31460 :
Inst_DS(iFmt,
"ds_min_f32")
31480 :
Inst_DS(iFmt,
"ds_max_f32")
31516 :
Inst_DS(iFmt,
"ds_add_f32")
31535 :
Inst_DS(iFmt,
"ds_write_b8")
31549 Wavefront *wf = gpuDynInst->wavefront();
31551 gpuDynInst->exec_mask = wf->
execMask();
31552 gpuDynInst->latency.init(gpuDynInst->computeUnit());
31553 gpuDynInst->latency.set(
31554 gpuDynInst->computeUnit()->cyclesToTicks(
Cycles(24)));
31565 (
reinterpret_cast<VecElemU8*
>(gpuDynInst->d_data))[lane]
31570 gpuDynInst->computeUnit()->localMemoryPipe.issueRequest(gpuDynInst);
31585 initMemWrite<VecElemU8>(gpuDynInst,
offset);
31595 :
Inst_DS(iFmt,
"ds_write_b16")
31609 Wavefront *wf = gpuDynInst->wavefront();
31611 gpuDynInst->exec_mask = wf->
execMask();
31612 gpuDynInst->latency.init(gpuDynInst->computeUnit());
31613 gpuDynInst->latency.set(
31614 gpuDynInst->computeUnit()->cyclesToTicks(
Cycles(24)));
31625 (
reinterpret_cast<VecElemU16*
>(gpuDynInst->d_data))[lane]
31630 gpuDynInst->computeUnit()->localMemoryPipe.issueRequest(gpuDynInst);
31645 initMemWrite<VecElemU16>(gpuDynInst,
offset);
31655 :
Inst_DS(iFmt,
"ds_add_rtn_u32")
31673 :
Inst_DS(iFmt,
"ds_sub_rtn_u32")
31691 :
Inst_DS(iFmt,
"ds_rsub_rtn_u32")
31709 :
Inst_DS(iFmt,
"ds_inc_rtn_u32")
31727 :
Inst_DS(iFmt,
"ds_dec_rtn_u32")
31745 :
Inst_DS(iFmt,
"ds_min_rtn_i32")
31763 :
Inst_DS(iFmt,
"ds_max_rtn_i32")
31781 :
Inst_DS(iFmt,
"ds_min_rtn_u32")
31799 :
Inst_DS(iFmt,
"ds_max_rtn_u32")
31817 :
Inst_DS(iFmt,
"ds_and_rtn_b32")
31835 :
Inst_DS(iFmt,
"ds_or_rtn_b32")
31853 :
Inst_DS(iFmt,
"ds_xor_rtn_b32")
31871 :
Inst_DS(iFmt,
"ds_mskor_rtn_b32")
31889 :
Inst_DS(iFmt,
"ds_wrxchg_rtn_b32")
31908 :
Inst_DS(iFmt,
"ds_wrxchg2_rtn_b32")
31925 :
Inst_DS(iFmt,
"ds_wrxchg2st64_rtn_b32")
31941 :
Inst_DS(iFmt,
"ds_cmpst_rtn_b32")
31962 :
Inst_DS(iFmt,
"ds_cmpst_rtn_f32")
31983 :
Inst_DS(iFmt,
"ds_min_rtn_f32")
32003 :
Inst_DS(iFmt,
"ds_max_rtn_f32")
32023 :
Inst_DS(iFmt,
"ds_wrap_rtn_b32")
32041 :
Inst_DS(iFmt,
"ds_add_rtn_f32")
32059 :
Inst_DS(iFmt,
"ds_read_b32")
32074 Wavefront *wf = gpuDynInst->wavefront();
32076 gpuDynInst->exec_mask = wf->
execMask();
32077 gpuDynInst->latency.init(gpuDynInst->computeUnit());
32078 gpuDynInst->latency.set(
32079 gpuDynInst->computeUnit()->cyclesToTicks(
Cycles(24)));
32086 gpuDynInst->computeUnit()->localMemoryPipe.issueRequest(gpuDynInst);
32101 initMemRead<VecElemU32>(gpuDynInst,
offset);
32110 if (gpuDynInst->exec_mask[lane]) {
32111 vdst[lane] = (
reinterpret_cast<VecElemU32*
>(
32112 gpuDynInst->d_data))[lane];
32120 :
Inst_DS(iFmt,
"ds_read2_b32")
32136 Wavefront *wf = gpuDynInst->wavefront();
32138 gpuDynInst->exec_mask = wf->
execMask();
32139 gpuDynInst->latency.init(gpuDynInst->computeUnit());
32140 gpuDynInst->latency.set(
32141 gpuDynInst->computeUnit()->cyclesToTicks(
Cycles(24)));
32148 gpuDynInst->computeUnit()->localMemoryPipe.issueRequest(gpuDynInst);
32162 initDualMemRead<VecElemU32>(gpuDynInst, offset0, offset1);
32172 if (gpuDynInst->exec_mask[lane]) {
32173 vdst0[lane] = (
reinterpret_cast<VecElemU32*
>(
32174 gpuDynInst->d_data))[lane * 2];
32175 vdst1[lane] = (
reinterpret_cast<VecElemU32*
>(
32176 gpuDynInst->d_data))[lane * 2 + 1];
32185 :
Inst_DS(iFmt,
"ds_read2st64_b32")
32201 Wavefront *wf = gpuDynInst->wavefront();
32203 gpuDynInst->exec_mask = wf->
execMask();
32204 gpuDynInst->latency.init(gpuDynInst->computeUnit());
32205 gpuDynInst->latency.set(
32206 gpuDynInst->computeUnit()->cyclesToTicks(
Cycles(24)));
32213 gpuDynInst->computeUnit()->localMemoryPipe.issueRequest(gpuDynInst);
32227 initDualMemRead<VecElemU32>(gpuDynInst, offset0, offset1);
32237 if (gpuDynInst->exec_mask[lane]) {
32238 vdst0[lane] = (
reinterpret_cast<VecElemU64*
>(
32239 gpuDynInst->d_data))[lane * 2];
32240 vdst1[lane] = (
reinterpret_cast<VecElemU64*
>(
32241 gpuDynInst->d_data))[lane * 2 + 1];
32251 :
Inst_DS(iFmt,
"ds_read_i8")
32270 :
Inst_DS(iFmt,
"ds_read_u8")
32285 Wavefront *wf = gpuDynInst->wavefront();
32287 gpuDynInst->exec_mask = wf->
execMask();
32288 gpuDynInst->latency.init(gpuDynInst->computeUnit());
32289 gpuDynInst->latency.set(
32290 gpuDynInst->computeUnit()->cyclesToTicks(
Cycles(24)));
32297 gpuDynInst->computeUnit()->localMemoryPipe.issueRequest(gpuDynInst);
32312 initMemRead<VecElemU8>(gpuDynInst,
offset);
32321 if (gpuDynInst->exec_mask[lane]) {
32323 gpuDynInst->d_data))[lane];
32332 :
Inst_DS(iFmt,
"ds_read_i16")
32351 :
Inst_DS(iFmt,
"ds_read_u16")
32366 Wavefront *wf = gpuDynInst->wavefront();
32368 gpuDynInst->exec_mask = wf->
execMask();
32369 gpuDynInst->latency.init(gpuDynInst->computeUnit());
32370 gpuDynInst->latency.set(
32371 gpuDynInst->computeUnit()->cyclesToTicks(
Cycles(24)));
32378 gpuDynInst->computeUnit()->localMemoryPipe.issueRequest(gpuDynInst);
32392 initMemRead<VecElemU16>(gpuDynInst,
offset);
32401 if (gpuDynInst->exec_mask[lane]) {
32403 gpuDynInst->d_data))[lane];
32412 :
Inst_DS(iFmt,
"ds_swizzle_b32")
32426 Wavefront *wf = gpuDynInst->wavefront();
32430 if (gpuDynInst->exec_mask.none()) {
32435 gpuDynInst->latency.init(gpuDynInst->computeUnit());
32436 gpuDynInst->latency.set(gpuDynInst->computeUnit()
32437 ->cyclesToTicks(
Cycles(24)));
32462 if (
bits(ds_pattern, 15)) {
32470 if (gpuDynInst->exec_mask[lane]) {
32471 int index0 = lane +
bits(ds_pattern, 1, 0);
32473 "is out of bounds.\n", gpuDynInst->disassemble(),
32476 = gpuDynInst->exec_mask[index0] ?
data[index0]: 0;
32478 if (gpuDynInst->exec_mask[lane + 1]) {
32479 int index1 = lane +
bits(ds_pattern, 3, 2);
32481 "is out of bounds.\n", gpuDynInst->disassemble(),
32484 = gpuDynInst->exec_mask[index1] ?
data[index1]: 0;
32486 if (gpuDynInst->exec_mask[lane + 2]) {
32487 int index2 = lane +
bits(ds_pattern, 5, 4);
32489 "is out of bounds.\n", gpuDynInst->disassemble(),
32492 = gpuDynInst->exec_mask[index2] ?
data[index2]: 0;
32494 if (gpuDynInst->exec_mask[lane + 3]) {
32495 int index3 = lane +
bits(ds_pattern, 7, 6);
32497 "is out of bounds.\n", gpuDynInst->disassemble(),
32500 = gpuDynInst->exec_mask[index3] ?
data[index3]: 0;
32505 int and_mask =
bits(ds_pattern, 4, 0);
32506 int or_mask =
bits(ds_pattern, 9, 5);
32507 int xor_mask =
bits(ds_pattern, 14, 10);
32509 if (gpuDynInst->exec_mask[lane]) {
32510 int index = (((lane & and_mask) | or_mask) ^ xor_mask);
32516 "out of bounds.\n", gpuDynInst->disassemble(),
32529 :
Inst_DS(iFmt,
"ds_permute_b32")
32548 Wavefront *wf = gpuDynInst->wavefront();
32550 gpuDynInst->exec_mask = wf->
execMask();
32551 gpuDynInst->latency.init(gpuDynInst->computeUnit());
32552 gpuDynInst->latency.set(gpuDynInst->computeUnit()
32553 ->cyclesToTicks(
Cycles(24)));
32578 "of bounds.\n", gpuDynInst->disassemble(),
index);
32601 :
Inst_DS(iFmt,
"ds_bpermute_b32")
32620 Wavefront *wf = gpuDynInst->wavefront();
32622 gpuDynInst->exec_mask = wf->
execMask();
32623 gpuDynInst->latency.init(gpuDynInst->computeUnit());
32624 gpuDynInst->latency.set(gpuDynInst->computeUnit()
32625 ->cyclesToTicks(
Cycles(24)));
32650 "of bounds.\n", gpuDynInst->disassemble(),
index);
32674 :
Inst_DS(iFmt,
"ds_add_u64")
32692 :
Inst_DS(iFmt,
"ds_sub_u64")
32710 :
Inst_DS(iFmt,
"ds_rsub_u64")
32729 :
Inst_DS(iFmt,
"ds_inc_u64")
32747 :
Inst_DS(iFmt,
"ds_dec_u64")
32766 :
Inst_DS(iFmt,
"ds_min_i64")
32784 :
Inst_DS(iFmt,
"ds_max_i64")
32802 :
Inst_DS(iFmt,
"ds_min_u64")
32820 :
Inst_DS(iFmt,
"ds_max_u64")
32838 :
Inst_DS(iFmt,
"ds_and_b64")
32874 :
Inst_DS(iFmt,
"ds_xor_b64")
32892 :
Inst_DS(iFmt,
"ds_mskor_b64")
32910 :
Inst_DS(iFmt,
"ds_write_b64")
32925 Wavefront *wf = gpuDynInst->wavefront();
32927 gpuDynInst->exec_mask = wf->
execMask();
32928 gpuDynInst->latency.init(gpuDynInst->computeUnit());
32929 gpuDynInst->latency.set(
32930 gpuDynInst->computeUnit()->cyclesToTicks(
Cycles(24)));
32941 (
reinterpret_cast<VecElemU64*
>(gpuDynInst->d_data))[lane]
32946 gpuDynInst->computeUnit()->localMemoryPipe.issueRequest(gpuDynInst);
32961 initMemWrite<VecElemU64>(gpuDynInst,
offset);
32970 :
Inst_DS(iFmt,
"ds_write2_b64")
32986 Wavefront *wf = gpuDynInst->wavefront();
32988 gpuDynInst->exec_mask = wf->
execMask();
32989 gpuDynInst->latency.init(gpuDynInst->computeUnit());
32990 gpuDynInst->latency.set(
32991 gpuDynInst->computeUnit()->cyclesToTicks(
Cycles(24)));
33005 gpuDynInst->d_data))[lane * 2] = data0[lane];
33007 gpuDynInst->d_data))[lane * 2 + 1] = data1[lane];
33011 gpuDynInst->computeUnit()->localMemoryPipe.issueRequest(gpuDynInst);
33025 initDualMemWrite<VecElemU64>(gpuDynInst, offset0, offset1);
33034 :
Inst_DS(iFmt,
"ds_write2st64_b64")
33054 :
Inst_DS(iFmt,
"ds_cmpst_b64")
33075 :
Inst_DS(iFmt,
"ds_cmpst_f64")
33096 :
Inst_DS(iFmt,
"ds_min_f64")
33116 :
Inst_DS(iFmt,
"ds_max_f64")
33136 :
Inst_DS(iFmt,
"ds_add_rtn_u64")
33154 :
Inst_DS(iFmt,
"ds_sub_rtn_u64")
33172 :
Inst_DS(iFmt,
"ds_rsub_rtn_u64")
33191 :
Inst_DS(iFmt,
"ds_inc_rtn_u64")
33209 :
Inst_DS(iFmt,
"ds_dec_rtn_u64")
33228 :
Inst_DS(iFmt,
"ds_min_rtn_i64")
33246 :
Inst_DS(iFmt,
"ds_max_rtn_i64")
33264 :
Inst_DS(iFmt,
"ds_min_rtn_u64")
33282 :
Inst_DS(iFmt,
"ds_max_rtn_u64")
33300 :
Inst_DS(iFmt,
"ds_and_rtn_b64")
33318 :
Inst_DS(iFmt,
"ds_or_rtn_b64")
33336 :
Inst_DS(iFmt,
"ds_xor_rtn_b64")
33354 :
Inst_DS(iFmt,
"ds_mskor_rtn_b64")
33373 :
Inst_DS(iFmt,
"ds_wrxchg_rtn_b64")
33392 :
Inst_DS(iFmt,
"ds_wrxchg2_rtn_b64")
33409 :
Inst_DS(iFmt,
"ds_wrxchg2st64_rtn_b64")
33425 :
Inst_DS(iFmt,
"ds_cmpst_rtn_b64")
33446 :
Inst_DS(iFmt,
"ds_cmpst_rtn_f64")
33467 :
Inst_DS(iFmt,
"ds_min_rtn_f64")
33487 :
Inst_DS(iFmt,
"ds_max_rtn_f64")
33507 :
Inst_DS(iFmt,
"ds_read_b64")
33522 Wavefront *wf = gpuDynInst->wavefront();
33524 gpuDynInst->exec_mask = wf->
execMask();
33525 gpuDynInst->latency.init(gpuDynInst->computeUnit());
33526 gpuDynInst->latency.set(
33527 gpuDynInst->computeUnit()->cyclesToTicks(
Cycles(24)));
33534 gpuDynInst->computeUnit()->localMemoryPipe.issueRequest(gpuDynInst);
33549 initMemRead<VecElemU64>(gpuDynInst,
offset);
33558 if (gpuDynInst->exec_mask[lane]) {
33559 vdst[lane] = (
reinterpret_cast<VecElemU64*
>(
33560 gpuDynInst->d_data))[lane];
33568 :
Inst_DS(iFmt,
"ds_read2_b64")
33584 Wavefront *wf = gpuDynInst->wavefront();
33586 gpuDynInst->exec_mask = wf->
execMask();
33587 gpuDynInst->latency.init(gpuDynInst->computeUnit());
33588 gpuDynInst->latency.set(
33589 gpuDynInst->computeUnit()->cyclesToTicks(
Cycles(24)));
33596 gpuDynInst->computeUnit()->localMemoryPipe.issueRequest(gpuDynInst);
33610 initDualMemRead<VecElemU64>(gpuDynInst, offset0, offset1);
33620 if (gpuDynInst->exec_mask[lane]) {
33621 vdst0[lane] = (
reinterpret_cast<VecElemU64*
>(
33622 gpuDynInst->d_data))[lane * 2];
33623 vdst1[lane] = (
reinterpret_cast<VecElemU64*
>(
33624 gpuDynInst->d_data))[lane * 2 + 1];
33633 :
Inst_DS(iFmt,
"ds_read2st64_b64")
33649 Wavefront *wf = gpuDynInst->wavefront();
33651 gpuDynInst->exec_mask = wf->
execMask();
33652 gpuDynInst->latency.init(gpuDynInst->computeUnit());
33653 gpuDynInst->latency.set(
33654 gpuDynInst->computeUnit()->cyclesToTicks(
Cycles(24)));
33661 gpuDynInst->computeUnit()->localMemoryPipe.issueRequest(gpuDynInst);
33675 initDualMemRead<VecElemU64>(gpuDynInst, offset0, offset1);
33685 if (gpuDynInst->exec_mask[lane]) {
33686 vdst0[lane] = (
reinterpret_cast<VecElemU64*
>(
33687 gpuDynInst->d_data))[lane * 2];
33688 vdst1[lane] = (
reinterpret_cast<VecElemU64*
>(
33689 gpuDynInst->d_data))[lane * 2 + 1];
33699 :
Inst_DS(iFmt,
"ds_condxchg32_rtn_b64")
33715 :
Inst_DS(iFmt,
"ds_add_src2_u32")
33734 :
Inst_DS(iFmt,
"ds_sub_src2_u32")
33753 :
Inst_DS(iFmt,
"ds_rsub_src2_u32")
33772 :
Inst_DS(iFmt,
"ds_inc_src2_u32")
33791 :
Inst_DS(iFmt,
"ds_dec_src2_u32")
33811 :
Inst_DS(iFmt,
"ds_min_src2_i32")
33830 :
Inst_DS(iFmt,
"ds_max_src2_i32")
33849 :
Inst_DS(iFmt,
"ds_min_src2_u32")
33868 :
Inst_DS(iFmt,
"ds_max_src2_u32")
33887 :
Inst_DS(iFmt,
"ds_and_src2_b32")
33906 :
Inst_DS(iFmt,
"ds_or_src2_b32")
33925 :
Inst_DS(iFmt,
"ds_xor_src2_b32")
33944 :
Inst_DS(iFmt,
"ds_write_src2_b32")
33966 :
Inst_DS(iFmt,
"ds_min_src2_f32")
33986 :
Inst_DS(iFmt,
"ds_max_src2_f32")
34006 :
Inst_DS(iFmt,
"ds_add_src2_f32")
34027 :
Inst_DS(iFmt,
"ds_gws_sema_release_all")
34042 :
Inst_DS(iFmt,
"ds_gws_init")
34057 :
Inst_DS(iFmt,
"ds_gws_sema_v")
34072 :
Inst_DS(iFmt,
"ds_gws_sema_br")
34087 :
Inst_DS(iFmt,
"ds_gws_sema_p")
34102 :
Inst_DS(iFmt,
"ds_gws_barrier")
34117 :
Inst_DS(iFmt,
"ds_consume")
34147 :
Inst_DS(iFmt,
"ds_ordered_count")
34162 :
Inst_DS(iFmt,
"ds_add_src2_u64")
34181 :
Inst_DS(iFmt,
"ds_sub_src2_u64")
34200 :
Inst_DS(iFmt,
"ds_rsub_src2_u64")
34219 :
Inst_DS(iFmt,
"ds_inc_src2_u64")
34238 :
Inst_DS(iFmt,
"ds_dec_src2_u64")
34258 :
Inst_DS(iFmt,
"ds_min_src2_i64")
34277 :
Inst_DS(iFmt,
"ds_max_src2_i64")
34296 :
Inst_DS(iFmt,
"ds_min_src2_u64")
34315 :
Inst_DS(iFmt,
"ds_max_src2_u64")
34334 :
Inst_DS(iFmt,
"ds_and_src2_b64")
34353 :
Inst_DS(iFmt,
"ds_or_src2_b64")
34372 :
Inst_DS(iFmt,
"ds_xor_src2_b64")
34391 :
Inst_DS(iFmt,
"ds_write_src2_b64")
34413 :
Inst_DS(iFmt,
"ds_min_src2_f64")
34433 :
Inst_DS(iFmt,
"ds_max_src2_f64")
34453 :
Inst_DS(iFmt,
"ds_write_b96")
34472 :
Inst_DS(iFmt,
"ds_write_b128")
34491 :
Inst_DS(iFmt,
"ds_read_b96")
34509 :
Inst_DS(iFmt,
"ds_read_b128")
34530 setFlag(MemoryRef);
34532 setFlag(GlobalSegment);
34560 setFlag(MemoryRef);
34562 setFlag(GlobalSegment);
34588 :
Inst_MUBUF(iFmt,
"buffer_load_format_xyz")
34590 setFlag(MemoryRef);
34592 setFlag(GlobalSegment);
34618 :
Inst_MUBUF(iFmt,
"buffer_load_format_xyzw")
34620 setFlag(MemoryRef);
34622 setFlag(GlobalSegment);
34650 setFlag(MemoryRef);
34652 setFlag(GlobalSegment);
34678 :
Inst_MUBUF(iFmt,
"buffer_store_format_xy")
34680 setFlag(MemoryRef);
34682 setFlag(GlobalSegment);
34708 :
Inst_MUBUF(iFmt,
"buffer_store_format_xyz")
34710 setFlag(MemoryRef);
34712 setFlag(GlobalSegment);
34738 :
Inst_MUBUF(iFmt,
"buffer_store_format_xyzw")
34740 setFlag(MemoryRef);
34742 setFlag(GlobalSegment);
34769 :
Inst_MUBUF(iFmt,
"buffer_load_format_d16_x")
34771 setFlag(MemoryRef);
34773 setFlag(GlobalSegment);
34800 :
Inst_MUBUF(iFmt,
"buffer_load_format_d16_xy")
34802 setFlag(MemoryRef);
34804 setFlag(GlobalSegment);
34833 :
Inst_MUBUF(iFmt,
"buffer_load_format_d16_xyz")
34835 setFlag(MemoryRef);
34837 setFlag(GlobalSegment);
34866 :
Inst_MUBUF(iFmt,
"buffer_load_format_d16_xyzw")
34868 setFlag(MemoryRef);
34870 setFlag(GlobalSegment);
34899 :
Inst_MUBUF(iFmt,
"buffer_store_format_d16_x")
34901 setFlag(MemoryRef);
34903 setFlag(GlobalSegment);
34932 :
Inst_MUBUF(iFmt,
"buffer_store_format_d16_xy")
34934 setFlag(MemoryRef);
34936 setFlag(GlobalSegment);
34965 :
Inst_MUBUF(iFmt,
"buffer_store_format_d16_xyz")
34967 setFlag(MemoryRef);
34969 setFlag(GlobalSegment);
34998 :
Inst_MUBUF(iFmt,
"buffer_store_format_d16_xyzw")
35000 setFlag(MemoryRef);
35002 setFlag(GlobalSegment);
35033 setFlag(MemoryRef);
35035 if (instData.LDS) {
35036 setFlag(GroupSegment);
35038 setFlag(GlobalSegment);
35050 Wavefront *wf = gpuDynInst->wavefront();
35052 gpuDynInst->exec_mask = wf->
execMask();
35053 gpuDynInst->latency.init(gpuDynInst->computeUnit());
35054 gpuDynInst->latency.set(gpuDynInst->computeUnit()->clockPeriod());
35069 addr0, addr1, rsrcDesc,
offset, inst_offset);
35074 addr0, addr1, rsrcDesc,
offset, inst_offset);
35079 addr1, addr0, rsrcDesc,
offset, inst_offset);
35085 addr1, addr0, rsrcDesc,
offset, inst_offset);
35089 gpuDynInst->computeUnit()->localMemoryPipe.
35090 issueRequest(gpuDynInst);
35094 gpuDynInst->computeUnit()->globalMemoryPipe.
35095 issueRequest(gpuDynInst);
35107 initMemRead<VecElemU8>(gpuDynInst);
35116 if (gpuDynInst->exec_mask[lane]) {
35119 gpuDynInst->d_data))[lane]);
35134 setFlag(MemoryRef);
35136 setFlag(GlobalSegment);
35164 setFlag(MemoryRef);
35166 if (instData.LDS) {
35167 setFlag(GroupSegment);
35169 setFlag(GlobalSegment);
35181 Wavefront *wf = gpuDynInst->wavefront();
35183 gpuDynInst->exec_mask = wf->
execMask();
35184 gpuDynInst->latency.init(gpuDynInst->computeUnit());
35185 gpuDynInst->latency.set(gpuDynInst->computeUnit()->clockPeriod());
35200 addr0, addr1, rsrcDesc,
offset, inst_offset);
35205 addr0, addr1, rsrcDesc,
offset, inst_offset);
35210 addr1, addr0, rsrcDesc,
offset, inst_offset);
35216 addr1, addr0, rsrcDesc,
offset, inst_offset);
35220 gpuDynInst->computeUnit()->localMemoryPipe
35221 .issueRequest(gpuDynInst);
35225 gpuDynInst->computeUnit()->globalMemoryPipe
35226 .issueRequest(gpuDynInst);
35238 initMemRead<VecElemU16>(gpuDynInst);
35247 if (gpuDynInst->exec_mask[lane]) {
35250 gpuDynInst->d_data))[lane]);
35265 setFlag(MemoryRef);
35267 setFlag(GlobalSegment);
35295 setFlag(MemoryRef);
35297 if (instData.LDS) {
35298 setFlag(GroupSegment);
35300 setFlag(GlobalSegment);
35312 Wavefront *wf = gpuDynInst->wavefront();
35314 gpuDynInst->exec_mask = wf->
execMask();
35315 gpuDynInst->latency.init(gpuDynInst->computeUnit());
35316 gpuDynInst->latency.set(gpuDynInst->computeUnit()->clockPeriod());
35331 addr0, addr1, rsrcDesc,
offset, inst_offset);
35336 addr0, addr1, rsrcDesc,
offset, inst_offset);
35341 addr1, addr0, rsrcDesc,
offset, inst_offset);
35347 addr1, addr0, rsrcDesc,
offset, inst_offset);
35351 gpuDynInst->computeUnit()->localMemoryPipe
35352 .issueRequest(gpuDynInst);
35356 gpuDynInst->computeUnit()->globalMemoryPipe
35357 .issueRequest(gpuDynInst);
35369 initMemRead<VecElemU32>(gpuDynInst);
35378 if (gpuDynInst->exec_mask[lane]) {
35380 vdst[lane] = (
reinterpret_cast<VecElemU32*
>(
35381 gpuDynInst->d_data))[lane];
35395 setFlag(MemoryRef);
35397 if (instData.LDS) {
35398 setFlag(GroupSegment);
35400 setFlag(GlobalSegment);
35412 Wavefront *wf = gpuDynInst->wavefront();
35414 gpuDynInst->exec_mask = wf->
execMask();
35415 gpuDynInst->latency.init(gpuDynInst->computeUnit());
35416 gpuDynInst->latency.set(gpuDynInst->computeUnit()->clockPeriod());
35431 addr0, addr1, rsrcDesc,
offset, inst_offset);
35436 addr0, addr1, rsrcDesc,
offset, inst_offset);
35441 addr1, addr0, rsrcDesc,
offset, inst_offset);
35447 addr1, addr0, rsrcDesc,
offset, inst_offset);
35451 gpuDynInst->computeUnit()->localMemoryPipe
35452 .issueRequest(gpuDynInst);
35456 gpuDynInst->computeUnit()->globalMemoryPipe
35457 .issueRequest(gpuDynInst);
35469 initMemRead<2>(gpuDynInst);
35479 if (gpuDynInst->exec_mask[lane]) {
35481 vdst0[lane] = (
reinterpret_cast<VecElemU32*
>(
35482 gpuDynInst->d_data))[lane * 2];
35483 vdst1[lane] = (
reinterpret_cast<VecElemU32*
>(
35484 gpuDynInst->d_data))[lane * 2 + 1];
35500 setFlag(MemoryRef);
35502 if (instData.LDS) {
35503 setFlag(GroupSegment);
35505 setFlag(GlobalSegment);
35517 Wavefront *wf = gpuDynInst->wavefront();
35519 gpuDynInst->exec_mask = wf->
execMask();
35520 gpuDynInst->latency.init(gpuDynInst->computeUnit());
35521 gpuDynInst->latency.set(gpuDynInst->computeUnit()->clockPeriod());
35536 addr0, addr1, rsrcDesc,
offset, inst_offset);
35541 addr0, addr1, rsrcDesc,
offset, inst_offset);
35546 addr1, addr0, rsrcDesc,
offset, inst_offset);
35552 addr1, addr0, rsrcDesc,
offset, inst_offset);
35556 gpuDynInst->computeUnit()->localMemoryPipe
35557 .issueRequest(gpuDynInst);
35561 gpuDynInst->computeUnit()->globalMemoryPipe
35562 .issueRequest(gpuDynInst);
35574 initMemRead<3>(gpuDynInst);
35585 if (gpuDynInst->exec_mask[lane]) {
35587 vdst0[lane] = (
reinterpret_cast<VecElemU32*
>(
35588 gpuDynInst->d_data))[lane * 3];
35589 vdst1[lane] = (
reinterpret_cast<VecElemU32*
>(
35590 gpuDynInst->d_data))[lane * 3 + 1];
35591 vdst2[lane] = (
reinterpret_cast<VecElemU32*
>(
35592 gpuDynInst->d_data))[lane * 3 + 2];
35610 setFlag(MemoryRef);
35612 if (instData.LDS) {
35613 setFlag(GroupSegment);
35615 setFlag(GlobalSegment);
35627 Wavefront *wf = gpuDynInst->wavefront();
35629 gpuDynInst->exec_mask = wf->
execMask();
35630 gpuDynInst->latency.init(gpuDynInst->computeUnit());
35631 gpuDynInst->latency.set(gpuDynInst->computeUnit()->clockPeriod());
35646 addr0, addr1, rsrcDesc,
offset, inst_offset);
35651 addr0, addr1, rsrcDesc,
offset, inst_offset);
35656 addr1, addr0, rsrcDesc,
offset, inst_offset);
35662 addr1, addr0, rsrcDesc,
offset, inst_offset);
35666 gpuDynInst->computeUnit()->localMemoryPipe
35667 .issueRequest(gpuDynInst);
35671 gpuDynInst->computeUnit()->globalMemoryPipe
35672 .issueRequest(gpuDynInst);
35684 initMemRead<4>(gpuDynInst);
35696 if (gpuDynInst->exec_mask[lane]) {
35698 vdst0[lane] = (
reinterpret_cast<VecElemU32*
>(
35699 gpuDynInst->d_data))[lane * 4];
35700 vdst1[lane] = (
reinterpret_cast<VecElemU32*
>(
35701 gpuDynInst->d_data))[lane * 4 + 1];
35702 vdst2[lane] = (
reinterpret_cast<VecElemU32*
>(
35703 gpuDynInst->d_data))[lane * 4 + 2];
35704 vdst3[lane] = (
reinterpret_cast<VecElemU32*
>(
35705 gpuDynInst->d_data))[lane * 4 + 3];
35725 setFlag(MemoryRef);
35727 if (instData.LDS) {
35728 setFlag(GroupSegment);
35730 setFlag(GlobalSegment);
35742 Wavefront *wf = gpuDynInst->wavefront();
35744 gpuDynInst->exec_mask = wf->
execMask();
35745 gpuDynInst->latency.init(gpuDynInst->computeUnit());
35746 gpuDynInst->latency.set(gpuDynInst->computeUnit()->clockPeriod());
35761 addr0, addr1, rsrcDesc,
offset, inst_offset);
35766 addr0, addr1, rsrcDesc,
offset, inst_offset);
35771 addr1, addr0, rsrcDesc,
offset, inst_offset);
35777 addr1, addr0, rsrcDesc,
offset, inst_offset);
35781 gpuDynInst->computeUnit()->localMemoryPipe
35782 .issueRequest(gpuDynInst);
35786 gpuDynInst->computeUnit()->globalMemoryPipe
35787 .issueRequest(gpuDynInst);
35803 if (gpuDynInst->exec_mask[lane]) {
35804 (
reinterpret_cast<VecElemI8*
>(gpuDynInst->d_data))[lane]
35809 initMemWrite<VecElemI8>(gpuDynInst);
35821 setFlag(MemoryRef);
35823 if (instData.LDS) {
35824 setFlag(GroupSegment);
35826 setFlag(GlobalSegment);
35838 Wavefront *wf = gpuDynInst->wavefront();
35840 gpuDynInst->exec_mask = wf->
execMask();
35841 gpuDynInst->latency.init(gpuDynInst->computeUnit());
35842 gpuDynInst->latency.set(gpuDynInst->computeUnit()->clockPeriod());
35857 addr0, addr1, rsrcDesc,
offset, inst_offset);
35862 addr0, addr1, rsrcDesc,
offset, inst_offset);
35867 addr1, addr0, rsrcDesc,
offset, inst_offset);
35873 addr1, addr0, rsrcDesc,
offset, inst_offset);
35877 gpuDynInst->computeUnit()->localMemoryPipe
35878 .issueRequest(gpuDynInst);
35882 gpuDynInst->computeUnit()->globalMemoryPipe
35883 .issueRequest(gpuDynInst);
35899 if (gpuDynInst->exec_mask[lane]) {
35900 (
reinterpret_cast<VecElemI16*
>(gpuDynInst->d_data))[lane]
35905 initMemWrite<VecElemI16>(gpuDynInst);
35934 Wavefront *wf = gpuDynInst->wavefront();
35936 gpuDynInst->exec_mask = wf->
execMask();
35937 gpuDynInst->latency.init(gpuDynInst->computeUnit());
35938 gpuDynInst->latency.set(gpuDynInst->computeUnit()->clockPeriod());
35953 addr0, addr1, rsrcDesc,
offset, inst_offset);
35958 addr0, addr1, rsrcDesc,
offset, inst_offset);
35963 addr1, addr0, rsrcDesc,
offset, inst_offset);
35969 addr1, addr0, rsrcDesc,
offset, inst_offset);
35973 gpuDynInst->computeUnit()->localMemoryPipe
35974 .issueRequest(gpuDynInst);
35978 gpuDynInst->computeUnit()->globalMemoryPipe
35979 .issueRequest(gpuDynInst);
35995 if (gpuDynInst->exec_mask[lane]) {
35996 (
reinterpret_cast<VecElemU32*
>(gpuDynInst->d_data))[lane]
36001 initMemWrite<VecElemU32>(gpuDynInst);
36013 setFlag(MemoryRef);
36015 if (instData.LDS) {
36016 setFlag(GroupSegment);
36018 setFlag(GlobalSegment);
36030 Wavefront *wf = gpuDynInst->wavefront();
36032 gpuDynInst->exec_mask = wf->
execMask();
36033 gpuDynInst->latency.init(gpuDynInst->computeUnit());
36034 gpuDynInst->latency.set(gpuDynInst->computeUnit()->clockPeriod());
36053 addr0, addr1, rsrcDesc,
offset, inst_offset);
36058 addr0, addr1, rsrcDesc,
offset, inst_offset);
36063 addr1, addr0, rsrcDesc,
offset, inst_offset);
36069 addr1, addr0, rsrcDesc,
offset, inst_offset);
36073 gpuDynInst->computeUnit()->localMemoryPipe
36074 .issueRequest(gpuDynInst);
36078 gpuDynInst->computeUnit()->globalMemoryPipe
36079 .issueRequest(gpuDynInst);
36085 if (gpuDynInst->exec_mask[lane]) {
36086 (
reinterpret_cast<VecElemU32*
>(gpuDynInst->d_data))[lane * 4]
36088 (
reinterpret_cast<VecElemU32*
>(gpuDynInst->d_data))[lane*4 + 1]
36100 initMemWrite<2>(gpuDynInst);
36112 setFlag(MemoryRef);
36114 if (instData.LDS) {
36115 setFlag(GroupSegment);
36117 setFlag(GlobalSegment);
36129 Wavefront *wf = gpuDynInst->wavefront();
36131 gpuDynInst->exec_mask = wf->
execMask();
36132 gpuDynInst->latency.init(gpuDynInst->computeUnit());
36133 gpuDynInst->latency.set(gpuDynInst->computeUnit()->clockPeriod());
36154 addr0, addr1, rsrcDesc,
offset, inst_offset);
36159 addr0, addr1, rsrcDesc,
offset, inst_offset);
36164 addr1, addr0, rsrcDesc,
offset, inst_offset);
36170 addr1, addr0, rsrcDesc,
offset, inst_offset);
36174 gpuDynInst->computeUnit()->localMemoryPipe
36175 .issueRequest(gpuDynInst);
36179 gpuDynInst->computeUnit()->globalMemoryPipe
36180 .issueRequest(gpuDynInst);
36186 if (gpuDynInst->exec_mask[lane]) {
36187 (
reinterpret_cast<VecElemU32*
>(gpuDynInst->d_data))[lane * 4]
36189 (
reinterpret_cast<VecElemU32*
>(gpuDynInst->d_data))[lane*4 + 1]
36191 (
reinterpret_cast<VecElemU32*
>(gpuDynInst->d_data))[lane*4 + 2]
36203 initMemWrite<3>(gpuDynInst);
36215 setFlag(MemoryRef);
36217 if (instData.LDS) {
36218 setFlag(GroupSegment);
36220 setFlag(GlobalSegment);
36232 Wavefront *wf = gpuDynInst->wavefront();
36234 gpuDynInst->exec_mask = wf->
execMask();
36235 gpuDynInst->latency.init(gpuDynInst->computeUnit());
36236 gpuDynInst->latency.set(gpuDynInst->computeUnit()->clockPeriod());
36259 addr0, addr1, rsrcDesc,
offset, inst_offset);
36264 addr0, addr1, rsrcDesc,
offset, inst_offset);
36269 addr1, addr0, rsrcDesc,
offset, inst_offset);
36275 addr1, addr0, rsrcDesc,
offset, inst_offset);
36279 gpuDynInst->computeUnit()->localMemoryPipe
36280 .issueRequest(gpuDynInst);
36284 gpuDynInst->computeUnit()->globalMemoryPipe
36285 .issueRequest(gpuDynInst);
36291 if (gpuDynInst->exec_mask[lane]) {
36292 (
reinterpret_cast<VecElemU32*
>(gpuDynInst->d_data))[lane * 4]
36294 (
reinterpret_cast<VecElemU32*
>(gpuDynInst->d_data))[lane*4 + 1]
36296 (
reinterpret_cast<VecElemU32*
>(gpuDynInst->d_data))[lane*4 + 2]
36298 (
reinterpret_cast<VecElemU32*
>(gpuDynInst->d_data))[lane*4 + 3]
36310 initMemWrite<4>(gpuDynInst);
36320 :
Inst_MUBUF(iFmt,
"buffer_store_lds_dword")
36322 setFlag(GlobalSegment);
36341 setFlag(GPUStaticInst::MemSync);
36355 Wavefront *wf = gpuDynInst->wavefront();
36357 gpuDynInst->exec_mask = wf->
execMask();
36358 gpuDynInst->latency.init(gpuDynInst->computeUnit());
36359 gpuDynInst->latency.set(gpuDynInst->computeUnit()->clockPeriod());
36361 if (gpuDynInst->executedAs() == Enums::SC_GLOBAL) {
36362 gpuDynInst->computeUnit()->globalMemoryPipe.
36363 issueRequest(gpuDynInst);
36370 fatal(
"Non global flat instructions not implemented yet.\n");
36398 setFlag(MemoryRef);
36399 setFlag(GPUStaticInst::MemSync);
36400 setFlag(GlobalSegment);
36413 Wavefront *wf = gpuDynInst->wavefront();
36415 gpuDynInst->exec_mask = wf->
execMask();
36416 gpuDynInst->latency.init(gpuDynInst->computeUnit());
36417 gpuDynInst->latency.set(gpuDynInst->computeUnit()->clockPeriod());
36419 if (gpuDynInst->executedAs() == Enums::SC_GLOBAL) {
36420 gpuDynInst->computeUnit()->globalMemoryPipe.
36421 issueRequest(gpuDynInst);
36428 fatal(
"Non global flat instructions not implemented yet.\n");
36448 setFlag(AtomicExch);
36449 if (instData.GLC) {
36450 setFlag(AtomicReturn);
36452 setFlag(AtomicNoReturn);
36454 setFlag(MemoryRef);
36455 setFlag(GlobalSegment);
36475 setFlag(AtomicCAS);
36476 if (instData.GLC) {
36477 setFlag(AtomicReturn);
36479 setFlag(AtomicNoReturn);
36481 setFlag(MemoryRef);
36482 setFlag(GlobalSegment);
36504 setFlag(AtomicAdd);
36505 if (instData.GLC) {
36506 setFlag(AtomicReturn);
36508 setFlag(AtomicNoReturn);
36510 setFlag(MemoryRef);
36511 setFlag(GlobalSegment);
36531 setFlag(AtomicSub);
36532 if (instData.GLC) {
36533 setFlag(AtomicReturn);
36535 setFlag(AtomicNoReturn);
36537 setFlag(MemoryRef);
36538 setFlag(GlobalSegment);
36558 setFlag(AtomicMin);
36559 if (instData.GLC) {
36560 setFlag(AtomicReturn);
36562 setFlag(AtomicNoReturn);
36564 setFlag(MemoryRef);
36565 setFlag(GlobalSegment);
36585 setFlag(AtomicMin);
36586 if (instData.GLC) {
36587 setFlag(AtomicReturn);
36589 setFlag(AtomicNoReturn);
36591 setFlag(MemoryRef);
36592 setFlag(GlobalSegment);
36612 setFlag(AtomicMax);
36613 if (instData.GLC) {
36614 setFlag(AtomicReturn);
36616 setFlag(AtomicNoReturn);
36618 setFlag(MemoryRef);
36619 setFlag(GlobalSegment);
36639 setFlag(AtomicMax);
36640 if (instData.GLC) {
36641 setFlag(AtomicReturn);
36643 setFlag(AtomicNoReturn);
36645 setFlag(MemoryRef);
36646 setFlag(GlobalSegment);
36666 setFlag(AtomicAnd);
36667 if (instData.GLC) {
36668 setFlag(AtomicReturn);
36670 setFlag(AtomicNoReturn);
36672 setFlag(MemoryRef);
36673 setFlag(GlobalSegment);
36694 if (instData.GLC) {
36695 setFlag(AtomicReturn);
36697 setFlag(AtomicNoReturn);
36699 setFlag(MemoryRef);
36700 setFlag(GlobalSegment);
36720 setFlag(AtomicXor);
36721 if (instData.GLC) {
36722 setFlag(AtomicReturn);
36724 setFlag(AtomicNoReturn);
36726 setFlag(MemoryRef);
36727 setFlag(GlobalSegment);
36747 setFlag(AtomicInc);
36748 if (instData.GLC) {
36749 setFlag(AtomicReturn);
36751 setFlag(AtomicNoReturn);
36753 setFlag(MemoryRef);
36754 setFlag(GlobalSegment);
36774 setFlag(AtomicDec);
36775 if (instData.GLC) {
36776 setFlag(AtomicReturn);
36778 setFlag(AtomicNoReturn);
36780 setFlag(MemoryRef);
36781 setFlag(GlobalSegment);
36801 setFlag(AtomicExch);
36802 if (instData.GLC) {
36803 setFlag(AtomicReturn);
36805 setFlag(AtomicNoReturn);
36807 setFlag(MemoryRef);
36808 setFlag(GlobalSegment);
36826 :
Inst_MUBUF(iFmt,
"buffer_atomic_cmpswap_x2")
36828 setFlag(AtomicCAS);
36829 if (instData.GLC) {
36830 setFlag(AtomicReturn);
36832 setFlag(AtomicNoReturn);
36834 setFlag(MemoryRef);
36835 setFlag(GlobalSegment);
36858 setFlag(AtomicAdd);
36859 if (instData.GLC) {
36860 setFlag(AtomicReturn);
36862 setFlag(AtomicNoReturn);
36864 setFlag(MemoryRef);
36865 setFlag(GlobalSegment);
36885 setFlag(AtomicSub);
36886 if (instData.GLC) {
36887 setFlag(AtomicReturn);
36889 setFlag(AtomicNoReturn);
36891 setFlag(MemoryRef);
36892 setFlag(GlobalSegment);
36912 setFlag(AtomicMin);
36913 if (instData.GLC) {
36914 setFlag(AtomicReturn);
36916 setFlag(AtomicNoReturn);
36918 setFlag(MemoryRef);
36919 setFlag(GlobalSegment);
36939 setFlag(AtomicMin);
36940 if (instData.GLC) {
36941 setFlag(AtomicReturn);
36943 setFlag(AtomicNoReturn);
36945 setFlag(MemoryRef);
36946 setFlag(GlobalSegment);
36966 setFlag(AtomicMax);
36967 if (instData.GLC) {
36968 setFlag(AtomicReturn);
36970 setFlag(AtomicNoReturn);
36972 setFlag(MemoryRef);
36973 setFlag(GlobalSegment);
36993 setFlag(AtomicMax);
36994 if (instData.GLC) {
36995 setFlag(AtomicReturn);
36997 setFlag(AtomicNoReturn);
36999 setFlag(MemoryRef);
37000 setFlag(GlobalSegment);
37020 setFlag(AtomicAnd);
37021 if (instData.GLC) {
37022 setFlag(AtomicReturn);
37024 setFlag(AtomicNoReturn);
37026 setFlag(MemoryRef);
37027 setFlag(GlobalSegment);
37048 if (instData.GLC) {
37049 setFlag(AtomicReturn);
37051 setFlag(AtomicNoReturn);
37053 setFlag(MemoryRef);
37054 setFlag(GlobalSegment);
37074 setFlag(AtomicXor);
37075 if (instData.GLC) {
37076 setFlag(AtomicReturn);
37078 setFlag(AtomicNoReturn);
37080 setFlag(MemoryRef);
37081 setFlag(GlobalSegment);
37101 setFlag(AtomicInc);
37102 if (instData.GLC) {
37103 setFlag(AtomicReturn);
37105 setFlag(AtomicNoReturn);
37107 setFlag(MemoryRef);
37108 setFlag(GlobalSegment);
37128 setFlag(AtomicDec);
37129 if (instData.GLC) {
37130 setFlag(AtomicReturn);
37132 setFlag(AtomicNoReturn);
37134 setFlag(MemoryRef);
37135 setFlag(GlobalSegment);
37156 setFlag(MemoryRef);
37158 setFlag(GlobalSegment);
37184 :
Inst_MTBUF(iFmt,
"tbuffer_load_format_xy")
37186 setFlag(MemoryRef);
37188 setFlag(GlobalSegment);
37214 :
Inst_MTBUF(iFmt,
"tbuffer_load_format_xyz")
37216 setFlag(MemoryRef);
37218 setFlag(GlobalSegment);
37244 :
Inst_MTBUF(iFmt,
"tbuffer_load_format_xyzw")
37246 setFlag(MemoryRef);
37248 setFlag(GlobalSegment);
37275 :
Inst_MTBUF(iFmt,
"tbuffer_store_format_x")
37277 setFlag(MemoryRef);
37279 setFlag(GlobalSegment);
37305 :
Inst_MTBUF(iFmt,
"tbuffer_store_format_xy")
37307 setFlag(MemoryRef);
37309 setFlag(GlobalSegment);
37335 :
Inst_MTBUF(iFmt,
"tbuffer_store_format_xyz")
37337 setFlag(MemoryRef);
37339 setFlag(GlobalSegment);
37366 :
Inst_MTBUF(iFmt,
"tbuffer_store_format_xyzw")
37368 setFlag(MemoryRef);
37370 setFlag(GlobalSegment);
37399 :
Inst_MTBUF(iFmt,
"tbuffer_load_format_d16_x")
37401 setFlag(MemoryRef);
37403 setFlag(GlobalSegment);
37432 :
Inst_MTBUF(iFmt,
"tbuffer_load_format_d16_xy")
37434 setFlag(MemoryRef);
37436 setFlag(GlobalSegment);
37466 :
Inst_MTBUF(iFmt,
"tbuffer_load_format_d16_xyz")
37468 setFlag(MemoryRef);
37470 setFlag(GlobalSegment);
37500 :
Inst_MTBUF(iFmt,
"tbuffer_load_format_d16_xyzw")
37502 setFlag(MemoryRef);
37504 setFlag(GlobalSegment);
37533 :
Inst_MTBUF(iFmt,
"tbuffer_store_format_d16_x")
37535 setFlag(MemoryRef);
37537 setFlag(GlobalSegment);
37566 :
Inst_MTBUF(iFmt,
"tbuffer_store_format_d16_xy")
37568 setFlag(MemoryRef);
37570 setFlag(GlobalSegment);
37599 :
Inst_MTBUF(iFmt,
"tbuffer_store_format_d16_xyz")
37601 setFlag(MemoryRef);
37603 setFlag(GlobalSegment);
37632 :
Inst_MTBUF(iFmt,
"tbuffer_store_format_d16_xyzw")
37634 setFlag(MemoryRef);
37636 setFlag(GlobalSegment);
37751 :
Inst_MIMG(iFmt,
"image_load_pck_sgn")
37781 :
Inst_MIMG(iFmt,
"image_load_mip_pck")
37811 :
Inst_MIMG(iFmt,
"image_load_mip_pck_sgn")
37927 :
Inst_MIMG(iFmt,
"image_store_mip_pck")
38001 :
Inst_MIMG(iFmt,
"image_atomic_cmpswap")
38499 :
Inst_MIMG(iFmt,
"image_sample_c_d_cl")
38548 :
Inst_MIMG(iFmt,
"image_sample_c_b_cl")
38631 :
Inst_MIMG(iFmt,
"image_sample_d_cl_o")
38680 :
Inst_MIMG(iFmt,
"image_sample_b_cl_o")
38730 :
Inst_MIMG(iFmt,
"image_sample_c_cl_o")
38747 :
Inst_MIMG(iFmt,
"image_sample_c_d_o")
38764 :
Inst_MIMG(iFmt,
"image_sample_c_d_cl_o")
38781 :
Inst_MIMG(iFmt,
"image_sample_c_l_o")
38798 :
Inst_MIMG(iFmt,
"image_sample_c_b_o")
38815 :
Inst_MIMG(iFmt,
"image_sample_c_b_cl_o")
38832 :
Inst_MIMG(iFmt,
"image_sample_c_lz_o")
38913 :
Inst_MIMG(iFmt,
"image_gather4_b_cl")
38962 :
Inst_MIMG(iFmt,
"image_gather4_c_cl")
39013 :
Inst_MIMG(iFmt,
"image_gather4_c_b_cl")
39030 :
Inst_MIMG(iFmt,
"image_gather4_c_lz")
39063 :
Inst_MIMG(iFmt,
"image_gather4_cl_o")
39114 :
Inst_MIMG(iFmt,
"image_gather4_b_cl_o")
39131 :
Inst_MIMG(iFmt,
"image_gather4_lz_o")
39165 :
Inst_MIMG(iFmt,
"image_gather4_c_cl_o")
39182 :
Inst_MIMG(iFmt,
"image_gather4_c_l_o")
39199 :
Inst_MIMG(iFmt,
"image_gather4_c_b_o")
39216 :
Inst_MIMG(iFmt,
"image_gather4_c_b_cl_o")
39233 :
Inst_MIMG(iFmt,
"image_gather4_c_lz_o")
39282 :
Inst_MIMG(iFmt,
"image_sample_cd_cl")
39316 :
Inst_MIMG(iFmt,
"image_sample_c_cd_cl")
39350 :
Inst_MIMG(iFmt,
"image_sample_cd_cl_o")
39367 :
Inst_MIMG(iFmt,
"image_sample_c_cd_o")
39384 :
Inst_MIMG(iFmt,
"image_sample_c_cd_cl_o")
39429 Wavefront *wf = gpuDynInst->wavefront();
39436 gpuDynInst->exec_mask = wf->
execMask();
39438 scheduleWriteOperandsFromLoad(wf, gpuDynInst);
39443 gpuDynInst->exec_mask = gpuDynInst->wavefront()->execMask();
39444 gpuDynInst->latency.init(gpuDynInst->computeUnit());
39445 gpuDynInst->latency.set(gpuDynInst->computeUnit()->clockPeriod());
39453 if (gpuDynInst->executedAs() == Enums::SC_GLOBAL) {
39454 gpuDynInst->computeUnit()->globalMemoryPipe
39455 .issueRequest(gpuDynInst);
39459 fatal(
"Non global flat instructions not implemented yet.\n");
39462 gpuDynInst->wavefront()->outstandingReqs++;
39463 gpuDynInst->wavefront()->validateRequestCounters();
39469 initMemRead<VecElemU8>(gpuDynInst);
39478 if (gpuDynInst->exec_mask[lane]) {
39480 gpuDynInst->d_data))[lane]);
39502 Wavefront *wf = gpuDynInst->wavefront();
39509 gpuDynInst->exec_mask = wf->
execMask();
39511 scheduleWriteOperandsFromLoad(wf, gpuDynInst);
39516 gpuDynInst->exec_mask = gpuDynInst->wavefront()->execMask();
39517 gpuDynInst->latency.init(gpuDynInst->computeUnit());
39518 gpuDynInst->latency.set(gpuDynInst->computeUnit()->clockPeriod());
39526 if (gpuDynInst->executedAs() == Enums::SC_GLOBAL) {
39527 gpuDynInst->computeUnit()->globalMemoryPipe
39528 .issueRequest(gpuDynInst);
39532 fatal(
"Non global flat instructions not implemented yet.\n");
39535 gpuDynInst->wavefront()->outstandingReqs++;
39536 gpuDynInst->wavefront()->validateRequestCounters();
39542 initMemRead<VecElemI8>(gpuDynInst);
39551 if (gpuDynInst->exec_mask[lane]) {
39553 gpuDynInst->d_data))[lane]);
39574 Wavefront *wf = gpuDynInst->wavefront();
39581 gpuDynInst->exec_mask = wf->
execMask();
39583 scheduleWriteOperandsFromLoad(wf, gpuDynInst);
39588 gpuDynInst->exec_mask = gpuDynInst->wavefront()->execMask();
39589 gpuDynInst->latency.init(gpuDynInst->computeUnit());
39590 gpuDynInst->latency.set(gpuDynInst->computeUnit()->clockPeriod());
39598 if (gpuDynInst->executedAs() == Enums::SC_GLOBAL) {
39599 gpuDynInst->computeUnit()->globalMemoryPipe
39600 .issueRequest(gpuDynInst);
39604 fatal(
"Non global flat instructions not implemented yet.\n");
39607 gpuDynInst->wavefront()->outstandingReqs++;
39608 gpuDynInst->wavefront()->validateRequestCounters();
39614 initMemRead<VecElemU16>(gpuDynInst);
39623 if (gpuDynInst->exec_mask[lane]) {
39625 gpuDynInst->d_data))[lane]);
39675 Wavefront *wf = gpuDynInst->wavefront();
39682 gpuDynInst->exec_mask = wf->
execMask();
39684 scheduleWriteOperandsFromLoad(wf, gpuDynInst);
39689 gpuDynInst->exec_mask = gpuDynInst->wavefront()->execMask();
39690 gpuDynInst->latency.init(gpuDynInst->computeUnit());
39691 gpuDynInst->latency.set(gpuDynInst->computeUnit()->clockPeriod());
39699 if (gpuDynInst->executedAs() == Enums::SC_GLOBAL) {
39700 gpuDynInst->computeUnit()->globalMemoryPipe
39701 .issueRequest(gpuDynInst);
39705 fatal(
"Non global flat instructions not implemented yet.\n");
39708 gpuDynInst->wavefront()->outstandingReqs++;
39709 gpuDynInst->wavefront()->validateRequestCounters();
39715 initMemRead<VecElemU32>(gpuDynInst);
39724 if (gpuDynInst->exec_mask[lane]) {
39725 vdst[lane] = (
reinterpret_cast<VecElemU32*
>(
39726 gpuDynInst->d_data))[lane];
39748 Wavefront *wf = gpuDynInst->wavefront();
39755 gpuDynInst->exec_mask = wf->
execMask();
39757 scheduleWriteOperandsFromLoad(wf, gpuDynInst);
39762 gpuDynInst->exec_mask = gpuDynInst->wavefront()->execMask();
39763 gpuDynInst->latency.init(gpuDynInst->computeUnit());
39764 gpuDynInst->latency.set(gpuDynInst->computeUnit()->clockPeriod());
39772 if (gpuDynInst->executedAs() == Enums::SC_GLOBAL) {
39773 gpuDynInst->computeUnit()->globalMemoryPipe
39774 .issueRequest(gpuDynInst);
39778 fatal(
"Non global flat instructions not implemented yet.\n");
39781 gpuDynInst->wavefront()->outstandingReqs++;
39782 gpuDynInst->wavefront()->validateRequestCounters();
39788 initMemRead<VecElemU64>(gpuDynInst);
39797 if (gpuDynInst->exec_mask[lane]) {
39798 vdst[lane] = (
reinterpret_cast<VecElemU64*
>(
39799 gpuDynInst->d_data))[lane];
39821 Wavefront *wf = gpuDynInst->wavefront();
39828 gpuDynInst->exec_mask = wf->
execMask();
39830 scheduleWriteOperandsFromLoad(wf, gpuDynInst);
39835 gpuDynInst->exec_mask = wf->
execMask();
39836 gpuDynInst->latency.init(gpuDynInst->computeUnit());
39837 gpuDynInst->latency.set(gpuDynInst->computeUnit()->clockPeriod());
39845 if (gpuDynInst->executedAs() == Enums::SC_GLOBAL) {
39846 gpuDynInst->computeUnit()->globalMemoryPipe
39847 .issueRequest(gpuDynInst);
39851 fatal(
"Non global flat instructions not implemented yet.\n");
39854 gpuDynInst->wavefront()->outstandingReqs++;
39855 gpuDynInst->wavefront()->validateRequestCounters();
39861 initMemRead<3>(gpuDynInst);
39872 if (gpuDynInst->exec_mask[lane]) {
39873 vdst0[lane] = (
reinterpret_cast<VecElemU32*
>(
39874 gpuDynInst->d_data))[lane * 3];
39875 vdst1[lane] = (
reinterpret_cast<VecElemU32*
>(
39876 gpuDynInst->d_data))[lane * 3 + 1];
39877 vdst2[lane] = (
reinterpret_cast<VecElemU32*
>(
39878 gpuDynInst->d_data))[lane * 3 + 2];
39903 Wavefront *wf = gpuDynInst->wavefront();
39910 gpuDynInst->exec_mask = wf->
execMask();
39912 scheduleWriteOperandsFromLoad(wf, gpuDynInst);
39917 gpuDynInst->exec_mask = wf->
execMask();
39918 gpuDynInst->latency.init(gpuDynInst->computeUnit());
39919 gpuDynInst->latency.set(gpuDynInst->computeUnit()->clockPeriod());
39927 if (gpuDynInst->executedAs() == Enums::SC_GLOBAL) {
39928 gpuDynInst->computeUnit()->globalMemoryPipe
39929 .issueRequest(gpuDynInst);
39933 fatal(
"Non global flat instructions not implemented yet.\n");
39936 gpuDynInst->wavefront()->outstandingReqs++;
39937 gpuDynInst->wavefront()->validateRequestCounters();
39943 initMemRead<4>(gpuDynInst);
39955 if (gpuDynInst->exec_mask[lane]) {
39956 vdst0[lane] = (
reinterpret_cast<VecElemU32*
>(
39957 gpuDynInst->d_data))[lane * 4];
39958 vdst1[lane] = (
reinterpret_cast<VecElemU32*
>(
39959 gpuDynInst->d_data))[lane * 4 + 1];
39960 vdst2[lane] = (
reinterpret_cast<VecElemU32*
>(
39961 gpuDynInst->d_data))[lane * 4 + 2];
39962 vdst3[lane] = (
reinterpret_cast<VecElemU32*
>(
39963 gpuDynInst->d_data))[lane * 4 + 3];
39988 Wavefront *wf = gpuDynInst->wavefront();
39999 gpuDynInst->exec_mask = wf->
execMask();
40000 gpuDynInst->latency.init(gpuDynInst->computeUnit());
40001 gpuDynInst->latency.set(gpuDynInst->computeUnit()->clockPeriod());
40009 if (gpuDynInst->executedAs() == Enums::SC_GLOBAL) {
40010 gpuDynInst->computeUnit()->globalMemoryPipe
40011 .issueRequest(gpuDynInst);
40015 fatal(
"Non global flat instructions not implemented yet.\n");
40018 gpuDynInst->wavefront()->outstandingReqs++;
40019 gpuDynInst->wavefront()->validateRequestCounters();
40029 if (gpuDynInst->exec_mask[lane]) {
40030 (
reinterpret_cast<VecElemU8*
>(gpuDynInst->d_data))[lane]
40035 initMemWrite<VecElemU8>(gpuDynInst);
40058 Wavefront *wf = gpuDynInst->wavefront();
40069 gpuDynInst->exec_mask = wf->
execMask();
40070 gpuDynInst->latency.init(gpuDynInst->computeUnit());
40071 gpuDynInst->latency.set(gpuDynInst->computeUnit()->clockPeriod());
40079 if (gpuDynInst->executedAs() == Enums::SC_GLOBAL) {
40080 gpuDynInst->computeUnit()->globalMemoryPipe
40081 .issueRequest(gpuDynInst);
40085 fatal(
"Non global flat instructions not implemented yet.\n");
40088 gpuDynInst->wavefront()->outstandingReqs++;
40089 gpuDynInst->wavefront()->validateRequestCounters();
40100 if (gpuDynInst->exec_mask[lane]) {
40101 (
reinterpret_cast<VecElemU16*
>(gpuDynInst->d_data))[lane]
40106 initMemWrite<VecElemU16>(gpuDynInst);
40129 Wavefront *wf = gpuDynInst->wavefront();
40140 gpuDynInst->exec_mask = wf->
execMask();
40141 gpuDynInst->latency.init(gpuDynInst->computeUnit());
40142 gpuDynInst->latency.set(gpuDynInst->computeUnit()->clockPeriod());
40150 if (gpuDynInst->executedAs() == Enums::SC_GLOBAL) {
40151 gpuDynInst->computeUnit()->globalMemoryPipe
40152 .issueRequest(gpuDynInst);
40156 fatal(
"Non global flat instructions not implemented yet.\n");
40159 gpuDynInst->wavefront()->outstandingReqs++;
40160 gpuDynInst->wavefront()->validateRequestCounters();
40170 if (gpuDynInst->exec_mask[lane]) {
40171 (
reinterpret_cast<VecElemU32*
>(gpuDynInst->d_data))[lane]
40176 initMemWrite<VecElemU32>(gpuDynInst);
40186 :
Inst_FLAT(iFmt,
"flat_store_dwordx2")
40200 Wavefront *wf = gpuDynInst->wavefront();
40211 gpuDynInst->exec_mask = wf->
execMask();
40212 gpuDynInst->latency.init(gpuDynInst->computeUnit());
40213 gpuDynInst->latency.set(gpuDynInst->computeUnit()->clockPeriod());
40221 if (gpuDynInst->executedAs() == Enums::SC_GLOBAL) {
40222 gpuDynInst->computeUnit()->globalMemoryPipe
40223 .issueRequest(gpuDynInst);
40227 fatal(
"Non global flat instructions not implemented yet.\n");
40241 if (gpuDynInst->exec_mask[lane]) {
40242 (
reinterpret_cast<VecElemU64*
>(gpuDynInst->d_data))[lane]
40247 initMemWrite<VecElemU64>(gpuDynInst);
40257 :
Inst_FLAT(iFmt,
"flat_store_dwordx3")
40271 Wavefront *wf = gpuDynInst->wavefront();
40282 gpuDynInst->exec_mask = wf->
execMask();
40283 gpuDynInst->latency.init(gpuDynInst->computeUnit());
40284 gpuDynInst->latency.set(gpuDynInst->computeUnit()->clockPeriod());
40292 if (gpuDynInst->executedAs() == Enums::SC_GLOBAL) {
40293 gpuDynInst->computeUnit()->globalMemoryPipe
40294 .issueRequest(gpuDynInst);
40298 fatal(
"Non global flat instructions not implemented yet.\n");
40301 gpuDynInst->wavefront()->outstandingReqs++;
40302 gpuDynInst->wavefront()->validateRequestCounters();
40317 if (gpuDynInst->exec_mask[lane]) {
40319 gpuDynInst->d_data))[lane * 3] = data0[lane];
40321 gpuDynInst->d_data))[lane * 3 + 1] = data1[lane];
40323 gpuDynInst->d_data))[lane * 3 + 2] = data2[lane];
40327 initMemWrite<3>(gpuDynInst);
40337 :
Inst_FLAT(iFmt,
"flat_store_dwordx4")
40351 Wavefront *wf = gpuDynInst->wavefront();
40362 gpuDynInst->exec_mask = wf->
execMask();
40363 gpuDynInst->latency.init(gpuDynInst->computeUnit());
40364 gpuDynInst->latency.set(gpuDynInst->computeUnit()->clockPeriod());
40372 if (gpuDynInst->executedAs() == Enums::SC_GLOBAL) {
40373 gpuDynInst->computeUnit()->globalMemoryPipe
40374 .issueRequest(gpuDynInst);
40378 fatal(
"Non global flat instructions not implemented yet.\n");
40381 gpuDynInst->wavefront()->outstandingReqs++;
40382 gpuDynInst->wavefront()->validateRequestCounters();
40399 if (gpuDynInst->exec_mask[lane]) {
40401 gpuDynInst->d_data))[lane * 4] = data0[lane];
40403 gpuDynInst->d_data))[lane * 4 + 1] = data1[lane];
40405 gpuDynInst->d_data))[lane * 4 + 2] = data2[lane];
40407 gpuDynInst->d_data))[lane * 4 + 3] = data3[lane];
40411 initMemWrite<4>(gpuDynInst);
40441 Wavefront *wf = gpuDynInst->wavefront();
40451 gpuDynInst->exec_mask = wf->
execMask();
40453 scheduleWriteOperandsFromLoad(wf, gpuDynInst);
40459 gpuDynInst->exec_mask = wf->
execMask();
40460 gpuDynInst->latency.init(gpuDynInst->computeUnit());
40461 gpuDynInst->latency.set(gpuDynInst->computeUnit()->clockPeriod());
40469 if (gpuDynInst->executedAs() == Enums::SC_GLOBAL ||
40470 gpuDynInst->executedAs() == Enums::SC_PRIVATE) {
40472 panic_if(gpuDynInst->executedAs() == Enums::SC_PRIVATE,
40473 "Flats to private aperture not tested yet\n");
40474 gpuDynInst->computeUnit()->globalMemoryPipe.
40475 issueRequest(gpuDynInst);
40481 fatal(
"Non global flat instructions not implemented yet.\n");
40484 gpuDynInst->wavefront()->outstandingReqs++;
40485 gpuDynInst->wavefront()->validateRequestCounters();
40492 if (gpuDynInst->exec_mask[lane]) {
40493 (
reinterpret_cast<VecElemU32*
>(gpuDynInst->a_data))[lane]
40503 initAtomicAccess<VecElemU32>(gpuDynInst);
40513 if (gpuDynInst->exec_mask[lane]) {
40514 vdst[lane] = (
reinterpret_cast<VecElemU32*
>(
40515 gpuDynInst->d_data))[lane];
40527 :
Inst_FLAT(iFmt,
"flat_atomic_cmpswap")
40529 setFlag(AtomicCAS);
40530 if (instData.GLC) {
40531 setFlag(AtomicReturn);
40533 setFlag(AtomicNoReturn);
40535 setFlag(MemoryRef);
40550 Wavefront *wf = gpuDynInst->wavefront();
40560 gpuDynInst->exec_mask = wf->
execMask();
40562 scheduleWriteOperandsFromLoad(wf, gpuDynInst);
40568 gpuDynInst->exec_mask = wf->
execMask();
40569 gpuDynInst->latency.init(gpuDynInst->computeUnit());
40570 gpuDynInst->latency.set(gpuDynInst->computeUnit()->clockPeriod());
40583 if (gpuDynInst->exec_mask[lane]) {
40584 (
reinterpret_cast<VecElemU32*
>(gpuDynInst->x_data))[lane]
40586 (
reinterpret_cast<VecElemU32*
>(gpuDynInst->a_data))[lane]
40591 if (gpuDynInst->executedAs() == Enums::SC_GLOBAL ||
40592 gpuDynInst->executedAs() == Enums::SC_PRIVATE) {
40599 panic_if(gpuDynInst->executedAs() == Enums::SC_PRIVATE,
40600 "Flats to private aperture not tested yet\n");
40601 gpuDynInst->computeUnit()->globalMemoryPipe.
40602 issueRequest(gpuDynInst);
40608 fatal(
"Non global flat instructions not implemented yet.\n");
40611 gpuDynInst->wavefront()->outstandingReqs++;
40612 gpuDynInst->wavefront()->validateRequestCounters();
40618 initAtomicAccess<VecElemU32>(gpuDynInst);
40628 if (gpuDynInst->exec_mask[lane]) {
40629 vdst[lane] = (
reinterpret_cast<VecElemU32*
>(
40630 gpuDynInst->d_data))[lane];
40660 Wavefront *wf = gpuDynInst->wavefront();
40670 gpuDynInst->exec_mask = wf->
execMask();
40672 scheduleWriteOperandsFromLoad(wf, gpuDynInst);
40678 gpuDynInst->exec_mask = wf->
execMask();
40679 gpuDynInst->latency.init(gpuDynInst->computeUnit());
40680 gpuDynInst->latency.set(gpuDynInst->computeUnit()->clockPeriod());
40691 if (gpuDynInst->exec_mask[lane]) {
40692 (
reinterpret_cast<VecElemU32*
>(gpuDynInst->a_data))[lane]
40697 if (gpuDynInst->executedAs() == Enums::SC_GLOBAL) {
40698 gpuDynInst->computeUnit()->globalMemoryPipe.
40699 issueRequest(gpuDynInst);
40705 fatal(
"Non global flat instructions not implemented yet.\n");
40708 gpuDynInst->wavefront()->outstandingReqs++;
40709 gpuDynInst->wavefront()->validateRequestCounters();
40715 initAtomicAccess<VecElemU32>(gpuDynInst);
40725 if (gpuDynInst->exec_mask[lane]) {
40726 vdst[lane] = (
reinterpret_cast<VecElemU32*
>(
40727 gpuDynInst->d_data))[lane];
40757 Wavefront *wf = gpuDynInst->wavefront();
40767 gpuDynInst->exec_mask = wf->
execMask();
40769 scheduleWriteOperandsFromLoad(wf, gpuDynInst);
40775 gpuDynInst->exec_mask = wf->
execMask();
40776 gpuDynInst->latency.init(gpuDynInst->computeUnit());
40777 gpuDynInst->latency.set(gpuDynInst->computeUnit()->clockPeriod());
40788 if (gpuDynInst->exec_mask[lane]) {
40789 (
reinterpret_cast<VecElemU32*
>(gpuDynInst->a_data))[lane]
40794 if (gpuDynInst->executedAs() == Enums::SC_GLOBAL) {
40795 gpuDynInst->computeUnit()->globalMemoryPipe.
40796 issueRequest(gpuDynInst);
40802 fatal(
"Non global flat instructions not implemented yet.\n");
40805 gpuDynInst->wavefront()->outstandingReqs++;
40806 gpuDynInst->wavefront()->validateRequestCounters();
40811 initAtomicAccess<VecElemU32>(gpuDynInst);
40821 if (gpuDynInst->exec_mask[lane]) {
40822 vdst[lane] = (
reinterpret_cast<VecElemU32*
>(
40823 gpuDynInst->d_data))[lane];
41028 Wavefront *wf = gpuDynInst->wavefront();
41038 gpuDynInst->exec_mask = wf->
execMask();
41040 scheduleWriteOperandsFromLoad(wf, gpuDynInst);
41046 gpuDynInst->exec_mask = wf->
execMask();
41047 gpuDynInst->latency.init(gpuDynInst->computeUnit());
41048 gpuDynInst->latency.set(gpuDynInst->computeUnit()->clockPeriod());
41059 if (gpuDynInst->exec_mask[lane]) {
41060 (
reinterpret_cast<VecElemU32*
>(gpuDynInst->a_data))[lane]
41065 if (gpuDynInst->executedAs() == Enums::SC_GLOBAL) {
41066 gpuDynInst->computeUnit()->globalMemoryPipe.
41067 issueRequest(gpuDynInst);
41073 fatal(
"Non global flat instructions not implemented yet.\n");
41076 gpuDynInst->wavefront()->outstandingReqs++;
41077 gpuDynInst->wavefront()->validateRequestCounters();
41083 initAtomicAccess<VecElemU32>(gpuDynInst);
41093 if (gpuDynInst->exec_mask[lane]) {
41094 vdst[lane] = (
reinterpret_cast<VecElemU32*
>(
41095 gpuDynInst->d_data))[lane];
41125 Wavefront *wf = gpuDynInst->wavefront();
41135 gpuDynInst->exec_mask = wf->
execMask();
41137 scheduleWriteOperandsFromLoad(wf, gpuDynInst);
41143 gpuDynInst->exec_mask = wf->
execMask();
41144 gpuDynInst->latency.init(gpuDynInst->computeUnit());
41145 gpuDynInst->latency.set(gpuDynInst->computeUnit()->clockPeriod());
41156 if (gpuDynInst->exec_mask[lane]) {
41157 (
reinterpret_cast<VecElemU32*
>(gpuDynInst->a_data))[lane]
41162 if (gpuDynInst->executedAs() == Enums::SC_GLOBAL) {
41163 gpuDynInst->computeUnit()->globalMemoryPipe.
41164 issueRequest(gpuDynInst);
41170 fatal(
"Non global flat instructions not implemented yet.\n");
41173 gpuDynInst->wavefront()->outstandingReqs++;
41174 gpuDynInst->wavefront()->validateRequestCounters();
41180 initAtomicAccess<VecElemU32>(gpuDynInst);
41190 if (gpuDynInst->exec_mask[lane]) {
41191 vdst[lane] = (
reinterpret_cast<VecElemU32*
>(
41192 gpuDynInst->d_data))[lane];
41202 :
Inst_FLAT(iFmt,
"flat_atomic_swap_x2")
41228 :
Inst_FLAT(iFmt,
"flat_atomic_cmpswap_x2")
41251 Wavefront *wf = gpuDynInst->wavefront();
41261 gpuDynInst->exec_mask = wf->
execMask();
41263 scheduleWriteOperandsFromLoad(wf, gpuDynInst);
41269 gpuDynInst->exec_mask = wf->
execMask();
41270 gpuDynInst->latency.init(gpuDynInst->computeUnit());
41271 gpuDynInst->latency.set(gpuDynInst->computeUnit()->clockPeriod());
41284 if (gpuDynInst->exec_mask[lane]) {
41285 (
reinterpret_cast<VecElemU64*
>(gpuDynInst->x_data))[lane]
41287 (
reinterpret_cast<VecElemU64*
>(gpuDynInst->a_data))[lane]
41292 if (gpuDynInst->executedAs() == Enums::SC_GLOBAL ||
41293 gpuDynInst->executedAs() == Enums::SC_PRIVATE) {
41300 panic_if(gpuDynInst->executedAs() == Enums::SC_PRIVATE,
41301 "Flats to private aperture not tested yet\n");
41302 gpuDynInst->computeUnit()->globalMemoryPipe.
41303 issueRequest(gpuDynInst);
41309 fatal(
"Non global flat instructions not implemented yet.\n");
41312 gpuDynInst->wavefront()->outstandingReqs++;
41313 gpuDynInst->wavefront()->validateRequestCounters();
41319 initAtomicAccess<VecElemU64>(gpuDynInst);
41329 if (gpuDynInst->exec_mask[lane]) {
41330 vdst[lane] = (
reinterpret_cast<VecElemU64*
>(
41331 gpuDynInst->d_data))[lane];
41341 :
Inst_FLAT(iFmt,
"flat_atomic_add_x2")
41362 Wavefront *wf = gpuDynInst->wavefront();
41372 gpuDynInst->exec_mask = wf->
execMask();
41374 scheduleWriteOperandsFromLoad(wf, gpuDynInst);
41380 gpuDynInst->exec_mask = wf->
execMask();
41381 gpuDynInst->latency.init(gpuDynInst->computeUnit());
41382 gpuDynInst->latency.set(gpuDynInst->computeUnit()->clockPeriod());
41393 if (gpuDynInst->exec_mask[lane]) {
41394 (
reinterpret_cast<VecElemU64*
>(gpuDynInst->a_data))[lane]
41399 if (gpuDynInst->executedAs() == Enums::SC_GLOBAL) {
41400 gpuDynInst->computeUnit()->globalMemoryPipe.
41401 issueRequest(gpuDynInst);
41407 fatal(
"Non global flat instructions not implemented yet.\n");
41410 gpuDynInst->wavefront()->outstandingReqs++;
41411 gpuDynInst->wavefront()->validateRequestCounters();
41417 initAtomicAccess<VecElemU64>(gpuDynInst);
41428 if (gpuDynInst->exec_mask[lane]) {
41429 vdst[lane] = (
reinterpret_cast<VecElemU64*
>(
41430 gpuDynInst->d_data))[lane];
41440 :
Inst_FLAT(iFmt,
"flat_atomic_sub_x2")
41461 Wavefront *wf = gpuDynInst->wavefront();
41471 gpuDynInst->exec_mask = wf->
execMask();
41473 scheduleWriteOperandsFromLoad(wf, gpuDynInst);
41479 gpuDynInst->exec_mask = wf->
execMask();
41480 gpuDynInst->latency.init(gpuDynInst->computeUnit());
41481 gpuDynInst->latency.set(gpuDynInst->computeUnit()->clockPeriod());
41492 if (gpuDynInst->exec_mask[lane]) {
41493 (
reinterpret_cast<VecElemU64*
>(gpuDynInst->a_data))[lane]
41498 if (gpuDynInst->executedAs() == Enums::SC_GLOBAL) {
41499 gpuDynInst->computeUnit()->globalMemoryPipe.
41500 issueRequest(gpuDynInst);
41506 fatal(
"Non global flat instructions not implemented yet.\n");
41509 gpuDynInst->wavefront()->outstandingReqs++;
41510 gpuDynInst->wavefront()->validateRequestCounters();
41516 initAtomicAccess<VecElemU64>(gpuDynInst);
41527 if (gpuDynInst->exec_mask[lane]) {
41528 vdst[lane] = (
reinterpret_cast<VecElemU64*
>(
41529 gpuDynInst->d_data))[lane];
41539 :
Inst_FLAT(iFmt,
"flat_atomic_smin_x2")
41565 :
Inst_FLAT(iFmt,
"flat_atomic_umin_x2")
41591 :
Inst_FLAT(iFmt,
"flat_atomic_smax_x2")
41617 :
Inst_FLAT(iFmt,
"flat_atomic_umax_x2")
41643 :
Inst_FLAT(iFmt,
"flat_atomic_and_x2")
41695 :
Inst_FLAT(iFmt,
"flat_atomic_xor_x2")
41721 :
Inst_FLAT(iFmt,
"flat_atomic_inc_x2")
41742 Wavefront *wf = gpuDynInst->wavefront();
41752 gpuDynInst->exec_mask = wf->
execMask();
41754 scheduleWriteOperandsFromLoad(wf, gpuDynInst);
41760 gpuDynInst->exec_mask = wf->
execMask();
41761 gpuDynInst->latency.init(gpuDynInst->computeUnit());
41762 gpuDynInst->latency.set(gpuDynInst->computeUnit()->clockPeriod());
41773 if (gpuDynInst->exec_mask[lane]) {
41774 (
reinterpret_cast<VecElemU64*
>(gpuDynInst->a_data))[lane]
41779 if (gpuDynInst->executedAs() == Enums::SC_GLOBAL) {
41780 gpuDynInst->computeUnit()->globalMemoryPipe.
41781 issueRequest(gpuDynInst);
41787 fatal(
"Non global flat instructions not implemented yet.\n");
41790 gpuDynInst->wavefront()->outstandingReqs++;
41791 gpuDynInst->wavefront()->validateRequestCounters();
41797 initAtomicAccess<VecElemU64>(gpuDynInst);
41808 if (gpuDynInst->exec_mask[lane]) {
41809 vdst[lane] = (
reinterpret_cast<VecElemU64*
>(
41810 gpuDynInst->d_data))[lane];
41820 :
Inst_FLAT(iFmt,
"flat_atomic_dec_x2")
41842 Wavefront *wf = gpuDynInst->wavefront();
41852 gpuDynInst->exec_mask = wf->
execMask();
41854 scheduleWriteOperandsFromLoad(wf, gpuDynInst);
41860 gpuDynInst->exec_mask = wf->
execMask();
41861 gpuDynInst->latency.init(gpuDynInst->computeUnit());
41862 gpuDynInst->latency.set(gpuDynInst->computeUnit()->clockPeriod());
41873 if (gpuDynInst->exec_mask[lane]) {
41874 (
reinterpret_cast<VecElemU64*
>(gpuDynInst->a_data))[lane]
41879 if (gpuDynInst->executedAs() == Enums::SC_GLOBAL) {
41880 gpuDynInst->computeUnit()->globalMemoryPipe.
41881 issueRequest(gpuDynInst);
41887 fatal(
"Non global flat instructions not implemented yet.\n");
41890 gpuDynInst->wavefront()->outstandingReqs++;
41891 gpuDynInst->wavefront()->validateRequestCounters();
41897 initAtomicAccess<VecElemU64>(gpuDynInst);
41908 if (gpuDynInst->exec_mask[lane]) {
41909 vdst[lane] = (
reinterpret_cast<VecElemU64*
>(
41910 gpuDynInst->d_data))[lane];
~Inst_MIMG__IMAGE_SAMPLE_CD_CL()
Inst_VOP3__V_RCP_F32(InFmt_VOP3 *)
~Inst_VOP3__V_CMP_NGT_F32()
Inst_VOPC__V_CMP_LT_U16(InFmt_VOPC *)
Inst_SOPP__S_CBRANCH_CDBGSYS(InFmt_SOPP *)
Inst_DS__DS_OR_SRC2_B64(InFmt_DS *)
Inst_VOPC__V_CMP_LG_F32(InFmt_VOPC *)
void execute(GPUDynInstPtr) override
~Inst_SOPK__S_CMPK_GE_I32()
Inst_DS__DS_XOR_RTN_B32(InFmt_DS *)
Inst_DS__DS_MIN_F64(InFmt_DS *)
~Inst_VOP3__V_CMP_O_F32()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMP_F_F32()
~Inst_VOP3__V_CMP_GE_U32()
~Inst_MIMG__IMAGE_GATHER4_O()
void execute(GPUDynInstPtr) override
Inst_DS__DS_WRITE_B128(InFmt_DS *)
~Inst_DS__DS_WRITE2_B32()
Inst_FLAT__FLAT_ATOMIC_ADD_X2(InFmt_FLAT *)
Inst_VOP2__V_MIN_F32(InFmt_VOP2 *)
void execute(GPUDynInstPtr) override
void initiateAcc(GPUDynInstPtr) override
Inst_VOP3__V_CMPX_LT_U32(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_DS__DS_MAX_RTN_I64(InFmt_DS *)
~Inst_VOPC__V_CMP_EQ_F16()
void execute(GPUDynInstPtr) override
Inst_VOP3__V_MUL_F32(InFmt_VOP3 *)
Inst_VOP2__V_ADD_U32(InFmt_VOP2 *)
void execute(GPUDynInstPtr) override
~Inst_VOPC__V_CMP_GE_I32()
void execute(GPUDynInstPtr) override
Inst_DS__DS_MIN_SRC2_I64(InFmt_DS *)
~Inst_VOP3__V_RCP_IFLAG_F32()
#define fatal(...)
This implements a cprintf based fatal() function.
~Inst_VOPC__V_CMPX_F_F16()
Inst_VOP3__V_CVT_F32_F16(InFmt_VOP3 *)
void completeAcc(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void completeAcc(GPUDynInstPtr) override
Inst_VOP3__V_CMPX_F_I32(InFmt_VOP3 *)
Stats::Scalar completedWGs
Inst_VOP3__V_SUBREV_F16(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOPC__V_CMPX_F_U64(InFmt_VOPC *)
void completeAcc(GPUDynInstPtr) override
Inst_VOP3__V_CMP_LT_I16(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
~Inst_VOP2__V_MADMK_F32()
Inst_VOP3__V_TRUNC_F16(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
Inst_DS__DS_READ_B128(InFmt_DS *)
Inst_VOP3__V_ALIGNBYTE_B32(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMPX_GE_F16(InFmt_VOP3 *)
~Inst_VOP3__V_DIV_FIXUP_F64()
~Inst_VINTRP__V_INTERP_P1_F32()
~Inst_VOP3__V_CVT_PK_U16_U32()
Inst_VOPC__V_CMP_F_U16(InFmt_VOPC *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_FREXP_EXP_I32_F64()
void execute(GPUDynInstPtr) override
Inst_VOP3__V_MUL_LO_U32(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
~Inst_FLAT__FLAT_LOAD_DWORDX3()
void execute(GPUDynInstPtr) override
void calcAddr(GPUDynInstPtr gpu_dyn_inst, ConstScalarOperandU64 &addr, ScalarRegU32 offset)
For normal s_load_dword/s_store_dword instruction addresses.
Inst_VOP3__V_CMP_F_U16(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_MIMG__IMAGE_SAMPLE_B_CL_O()
void execute(GPUDynInstPtr) override
void completeAcc(GPUDynInstPtr) override
Inst_VOP2__V_MIN_U32(InFmt_VOP2 *)
Inst_DS__DS_AND_RTN_B64(InFmt_DS *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMP_GT_U32(InFmt_VOP3 *)
Inst_VOPC__V_CMP_NLE_F16(InFmt_VOPC *)
~Inst_SOPK__S_CMPK_LT_U32()
Inst_VOPC__V_CMP_NLE_F32(InFmt_VOPC *)
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMPX_LE_F16(InFmt_VOP3 *)
~Inst_VOPC__V_CMP_LG_F16()
Inst_MIMG__IMAGE_SAMPLE_CL(InFmt_MIMG *)
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMP_T_U16(InFmt_VOP3 *)
void completeAcc(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP2__V_ADD_F16(InFmt_VOP2 *)
Inst_EXP__EXP(InFmt_EXP *)
void execute(GPUDynInstPtr) override
~Inst_DS__DS_XOR_RTN_B64()
~Inst_SMEM__S_STORE_DWORDX2()
void execute(GPUDynInstPtr) override
Inst_SOP1__S_BITSET1_B32(InFmt_SOP1 *)
~Inst_VOPC__V_CMPX_GE_I16()
Inst_SOP1__S_SET_GPR_IDX_IDX(InFmt_SOP1 *)
Inst_SOP2__S_MIN_U32(InFmt_SOP2 *)
const int NumVecElemPerVecReg(64)
void execute(GPUDynInstPtr) override
~Inst_MIMG__IMAGE_GATHER4_C_CL_O()
void execute(GPUDynInstPtr) override
ScalarOperand< ScalarRegU32, true, 4 > ConstScalarOperandU128
Inst_VOP3__V_CMPX_NLE_F16(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOPC__V_CMPX_NE_U16()
Inst_VOP3__V_CMPX_GT_I32(InFmt_VOP3 *)
Inst_VOP3__V_WRITELANE_B32(InFmt_VOP3 *)
Inst_VOP1__V_SIN_F16(InFmt_VOP1 *)
Inst_VOPC__V_CMP_LE_F16(InFmt_VOPC *)
Inst_DS__DS_MIN_I32(InFmt_DS *)
Inst_MIMG__IMAGE_SAMPLE(InFmt_MIMG *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void initiateAcc(GPUDynInstPtr) override
Inst_VOP3__V_CMPX_NEQ_F32(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOPC__V_CMP_TRU_F32(InFmt_VOPC *)
~Inst_FLAT__FLAT_ATOMIC_OR_X2()
Inst_VOP3__V_CVT_U32_F32(InFmt_VOP3 *)
~Inst_VOPC__V_CMPX_LE_U32()
Inst_VOPC__V_CMP_F_F32(InFmt_VOPC *)
Inst_VOP3__V_MUL_LO_U16(InFmt_VOP3 *)
Inst_VOP3__V_CMPX_NE_I16(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
~Inst_FLAT__FLAT_ATOMIC_DEC_X2()
void initiateAcc(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOPC__V_CMPX_LG_F32(InFmt_VOPC *)
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CVT_PKNORM_I16_F32()
Inst_MIMG__IMAGE_GATHER4_O(InFmt_MIMG *)
void execute(GPUDynInstPtr) override
void completeAcc(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_FLAT__FLAT_ATOMIC_CMPSWAP_X2(InFmt_FLAT *)
void execute(GPUDynInstPtr) override
Inst_VOPC__V_CMP_NGE_F64(InFmt_VOPC *)
Inst_FLAT__FLAT_ATOMIC_UMIN(InFmt_FLAT *)
void execute(GPUDynInstPtr) override
~Inst_SMEM__S_LOAD_DWORDX4()
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMPX_T_I16()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_DS__DS_RSUB_SRC2_U64(InFmt_DS *)
~Inst_VOP3__V_CMP_GT_U32()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void completeAcc(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void initiateAcc(GPUDynInstPtr) override
~Inst_MIMG__IMAGE_SAMPLE_C_LZ_O()
void execute(GPUDynInstPtr) override
Inst_VOPC__V_CMP_EQ_F64(InFmt_VOPC *)
Inst_VOP3__V_CMP_GT_F64(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMP_NGE_F16(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
Inst_SOPP__S_CBRANCH_CDBGSYS_AND_USER(InFmt_SOPP *)
~Inst_VOP3__V_BFREV_B32()
Inst_VOP3__V_CMP_O_F32(InFmt_VOP3 *)
~Inst_VOP3__V_CMPX_NLT_F32()
Inst_FLAT__FLAT_ATOMIC_UMAX_X2(InFmt_FLAT *)
void completeAcc(GPUDynInstPtr) override
Inst_VOPC__V_CMP_GT_F32(InFmt_VOPC *)
void execute(GPUDynInstPtr) override
Inst_SOP2__S_CSELECT_B64(InFmt_SOP2 *)
~Inst_VOPC__V_CMP_LT_I64()
~Inst_MIMG__IMAGE_ATOMIC_SMIN()
~Inst_VOP3__V_CMP_LG_F64()
Inst_VOPC__V_CMP_EQ_U16(InFmt_VOPC *)
void execute(GPUDynInstPtr) override
Inst_VOPC__V_CMPX_GT_I16(InFmt_VOPC *)
Inst_VOP3__V_RCP_F16(InFmt_VOP3 *)
void panicUnimplemented() const
void execute(GPUDynInstPtr) override
Inst_VOP3__V_NOT_B32(InFmt_VOP3 *)
~Inst_MIMG__IMAGE_GATHER4_C_LZ_O()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_MUBUF__BUFFER_ATOMIC_SMIN_X2()
Inst_MUBUF__BUFFER_ATOMIC_OR(InFmt_MUBUF *)
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMP_NE_I64(InFmt_VOP3 *)
~Inst_VOPC__V_CMPX_GT_I64()
~Inst_VOP3__V_BCNT_U32_B32()
void execute(GPUDynInstPtr) override
void initiateAcc(GPUDynInstPtr) override
Inst_VOP3__V_CMPX_NGT_F16(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
Inst_DS__DS_MIN_F32(InFmt_DS *)
void execute(GPUDynInstPtr) override
#define LL(N)
int64_t constant
~Inst_VOP1__V_RNDNE_F64()
~Inst_SOP1__S_BITSET0_B64()
Inst_VOPC__V_CMPX_GT_I64(InFmt_VOPC *)
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMP_T_U64()
void execute(GPUDynInstPtr) override
Inst_SOPP__S_CBRANCH_VCCNZ(InFmt_SOPP *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMP_F_I64()
Inst_VINTRP__V_INTERP_MOV_F32(InFmt_VINTRP *)
void execute(GPUDynInstPtr) override
~Inst_SOP1__S_SEXT_I32_I8()
~Inst_DS__DS_MAX_RTN_F32()
Inst_VOPC__V_CMPX_GE_U32(InFmt_VOPC *)
Inst_VOP1__V_CVT_F64_U32(InFmt_VOP1 *)
void initiateAcc(GPUDynInstPtr) override
void completeAcc(GPUDynInstPtr) override
~Inst_DS__DS_SUB_RTN_U64()
Inst_VOP2__V_MIN_I32(InFmt_VOP2 *)
Inst_SOPC__S_BITCMP0_B64(InFmt_SOPC *)
~Inst_VOPC__V_CMPX_NLT_F16()
~Inst_SOPC__S_CMP_LE_I32()
~Inst_VOP3__V_DIV_SCALE_F64()
Inst_MUBUF__BUFFER_STORE_SHORT(InFmt_MUBUF *)
~Inst_VOP3__V_ASHRREV_I32()
~Inst_VOP3__V_CMP_LE_U16()
Inst_SOPK__S_CMPK_GE_I32(InFmt_SOPK *)
void execute(GPUDynInstPtr) override
~Inst_SOP1__S_BCNT0_I32_B32()
Inst_VOP2__V_SUBB_U32(InFmt_VOP2 *)
~Inst_MIMG__IMAGE_GET_RESINFO()
~Inst_FLAT__FLAT_ATOMIC_UMIN()
Inst_SOP2__S_SUB_I32(InFmt_SOP2 *)
void execute(GPUDynInstPtr) override
~Inst_MIMG__IMAGE_SAMPLE_C_CL()
Inst_SMEM__S_BUFFER_STORE_DWORDX2(InFmt_SMEM *)
void initiateAcc(GPUDynInstPtr) override
~Inst_MUBUF__BUFFER_ATOMIC_INC()
Inst_VOP3__V_CMP_LE_U64(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CVT_F16_U16(InFmt_VOP3 *)
Inst_VOP3__V_CMP_NLG_F16(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMPX_T_I64(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP3__V_INTERP_P2_F32(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP3__V_MAD_U64_U32(InFmt_VOP3_SDST_ENC *)
void initiateAcc(GPUDynInstPtr) override
void completeAcc(GPUDynInstPtr) override
void completeAcc(GPUDynInstPtr) override
Inst_DS__DS_MAX_RTN_U64(InFmt_DS *)
Inst_VOP2__V_MIN_I16(InFmt_VOP2 *)
Inst_VOP3__V_CMPX_LT_U16(InFmt_VOP3 *)
Inst_VOP3__V_MAD_I64_I32(InFmt_VOP3_SDST_ENC *)
Inst_VOP3__V_CMPX_CLASS_F16(InFmt_VOP3 *)
Inst_VOP3__V_CMPX_LG_F32(InFmt_VOP3 *)
Inst_MIMG__IMAGE_SAMPLE_C_CL(InFmt_MIMG *)
~Inst_VOPC__V_CMP_GE_F32()
Inst_SOP1__S_SWAPPC_B64(InFmt_SOP1 *)
Inst_VOPC__V_CMPX_NE_U64(InFmt_VOPC *)
Inst_SOP2__S_MIN_I32(InFmt_SOP2 *)
~Inst_VOPC__V_CMP_GE_U64()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_ASHRREV_I64()
~Inst_VOP3__V_CMP_LT_I32()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_SMEM__S_LOAD_DWORDX2()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMPX_LT_F64(InFmt_VOP3 *)
~Inst_DS__DS_DEC_RTN_U64()
~Inst_DS__DS_MIN_RTN_F32()
~Inst_VOPC__V_CMPX_LT_U64()
Inst_DS__DS_RSUB_RTN_U32(InFmt_DS *)
~Inst_VOPC__V_CMP_GT_I32()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_FLAT__FLAT_LOAD_DWORDX4(InFmt_FLAT *)
Inst_VOP3__V_CMPX_TRU_F16(InFmt_VOP3 *)
void initiateAcc(GPUDynInstPtr) override
Inst_VOPC__V_CMP_LT_U32(InFmt_VOPC *)
~Inst_VOPC__V_CMP_GE_U16()
~Inst_VOPC__V_CMP_F_F32()
void initiateAcc(GPUDynInstPtr) override
~Inst_VOP3__V_CMPX_F_I32()
void execute(GPUDynInstPtr) override
~Inst_VOPC__V_CMPX_LG_F32()
Inst_DS__DS_MIN_U32(InFmt_DS *)
~Inst_MUBUF__BUFFER_ATOMIC_SMAX()
~Inst_VOPC__V_CMP_LE_I32()
Inst_SOP1__S_WQM_B32(InFmt_SOP1 *)
Inst_VOP3__V_LSHLREV_B32(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_SOPK__S_CMPK_LE_I32()
void execute(GPUDynInstPtr) override
Inst_MIMG__IMAGE_SAMPLE_CD_O(InFmt_MIMG *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMPX_GE_U16(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
Inst_VOPC__V_CMPX_CLASS_F64(InFmt_VOPC *)
void execute(GPUDynInstPtr) override
void initiateAcc(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP2__V_SUB_U16(InFmt_VOP2 *)
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMP_TRU_F64(InFmt_VOP3 *)
~Inst_MUBUF__BUFFER_STORE_DWORDX3()
constexpr int popCount(uint64_t val)
Returns the number of set ones in the provided value.
Inst_VOP3__V_MAX_F16(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMP_GT_U64()
void execute(GPUDynInstPtr) override
~Inst_MIMG__IMAGE_SAMPLE_C_LZ()
void execute(GPUDynInstPtr) override
Inst_DS__DS_XOR_RTN_B64(InFmt_DS *)
void execute(GPUDynInstPtr) override
void initiateAcc(GPUDynInstPtr) override
~Inst_VOPC__V_CMPX_NLG_F64()
Inst_SOP2__S_LSHR_B64(InFmt_SOP2 *)
void completeAcc(GPUDynInstPtr) override
~Inst_VOP3__V_CMPX_EQ_I16()
Inst_VOP3__V_INTERP_P1_F32(InFmt_VOP3 *)
Inst_SOP2__S_LSHL_B32(InFmt_SOP2 *)
void execute(GPUDynInstPtr) override
Inst_SOP2__S_XOR_B32(InFmt_SOP2 *)
Inst_VOP3__V_ADD_U16(InFmt_VOP3 *)
~Inst_VOP1__V_CVT_F64_F32()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_MIMG__IMAGE_GATHER4_CL_O()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_SOP1__S_MOVRELD_B64(InFmt_SOP1 *)
Inst_SOP1__S_QUADMASK_B64(InFmt_SOP1 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void initiateAcc(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOPC__V_CMPX_LE_F64()
void initiateAcc(GPUDynInstPtr) override
~Inst_SOPC__S_BITCMP1_B32()
~Inst_VOP1__V_CVT_F64_I32()
Inst_MIMG__IMAGE_SAMPLE_C_B_CL(InFmt_MIMG *)
void execute(GPUDynInstPtr) override
Inst_MIMG__IMAGE_ATOMIC_UMIN(InFmt_MIMG *)
void execute(GPUDynInstPtr) override
Inst_VOP2__V_CNDMASK_B32(InFmt_VOP2 *)
~Inst_VOP3__V_CMPX_F_U64()
Inst_VOP1__V_CVT_F16_U16(InFmt_VOP1 *)
Inst_DS__DS_MAX_I64(InFmt_DS *)
T median(T val_0, T val_1, T val_2)
Inst_SOPC__S_BITCMP1_B64(InFmt_SOPC *)
Inst_VOP3__V_MAX_I32(InFmt_VOP3 *)
Inst_DS__DS_INC_SRC2_U64(InFmt_DS *)
Inst_VOPC__V_CMP_NLG_F64(InFmt_VOPC *)
~Inst_VOP3__V_CMPX_LT_F32()
Inst_VOPC__V_CMPX_GT_F16(InFmt_VOPC *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMP_GE_F16()
Inst_VOP3__V_INTERP_P1LV_F16(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_FREXP_EXP_I32_F32()
void initiateAcc(GPUDynInstPtr) override
~Inst_SOP1__S_MOVRELD_B32()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOPC__V_CMPX_F_U32(InFmt_VOPC *)
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_DIV_FMAS_F64()
~Inst_FLAT__FLAT_ATOMIC_SMAX()
Inst_VOP2__V_MUL_LEGACY_F32(InFmt_VOP2 *)
~Inst_VOP3__V_CMPX_GE_I16()
void execute(GPUDynInstPtr) override
void completeAcc(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_SOP1__S_MOV_FED_B32()
void execute(GPUDynInstPtr) override
void completeAcc(GPUDynInstPtr) override
std::vector< int > vecReads
void completeAcc(GPUDynInstPtr) override
Inst_VOP3__V_BFE_U32(InFmt_VOP3 *)
Inst_DS__DS_READ_U8(InFmt_DS *)
~Inst_VOP3__V_CMPX_T_U16()
~Inst_FLAT__FLAT_LOAD_USHORT()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOPC__V_CMPX_EQ_U32()
void execute(GPUDynInstPtr) override
Inst_SOPP__S_SET_GPR_IDX_MODE(InFmt_SOPP *)
Inst_DS__DS_SUB_U32(InFmt_DS *)
Inst_VOP3__V_CMP_TRU_F16(InFmt_VOP3 *)
Inst_VOPC__V_CMP_LE_U16(InFmt_VOPC *)
Inst_SOP2__S_NAND_B32(InFmt_SOP2 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_MIMG__IMAGE_SAMPLE_C_B_O()
void execute(GPUDynInstPtr) override
Inst_SOPC__S_CMP_GE_I32(InFmt_SOPC *)
~Inst_VOPC__V_CMPX_CLASS_F16()
void execute(GPUDynInstPtr) override
~Inst_VOPC__V_CMP_EQ_I64()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMP_T_I16()
Inst_VOPC__V_CMPX_TRU_F32(InFmt_VOPC *)
Inst_VOP3__V_CMPX_LT_I16(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
~Inst_VOPC__V_CMPX_NLG_F32()
Inst_VOP2__V_SUB_F32(InFmt_VOP2 *)
~Inst_VOP2__V_MADMK_F16()
Inst_VOPC__V_CMP_LE_F64(InFmt_VOPC *)
Inst_SOP1__S_BCNT0_I32_B64(InFmt_SOP1 *)
~Inst_VOP3__V_CMPX_LT_U32()
~Inst_MIMG__IMAGE_SAMPLE_D_CL()
~Inst_VOP3__V_INTERP_P1LL_F16()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMP_GT_I16()
Inst_VOPC__V_CMP_NGE_F32(InFmt_VOPC *)
Inst_MUBUF__BUFFER_ATOMIC_ADD(InFmt_MUBUF *)
~Inst_VOP3__V_CMPX_NEQ_F32()
~Inst_VOP1__V_CVT_F16_U16()
~Inst_VOP3__V_INTERP_P2_F32()
~Inst_VOP1__V_CVT_F16_F32()
void execute(GPUDynInstPtr) override
Inst_DS__DS_ADD_SRC2_U64(InFmt_DS *)
Inst_VOPC__V_CMP_GE_I16(InFmt_VOPC *)
Inst_DS__DS_WRITE2_B64(InFmt_DS *)
~Inst_VOP3__V_CVT_F16_F32()
~Inst_VOP3__V_CVT_F32_I32()
~Inst_VOPC__V_CMP_U_F16()
~Inst_VOPC__V_CMP_NLE_F16()
~Inst_MUBUF__BUFFER_WBINVL1_VOL()
Inst_VOP3__V_CVT_I16_F16(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void completeAcc(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP1__V_CVT_F32_I32(InFmt_VOP1 *)
~Inst_VOP2__V_MUL_LO_U16()
~Inst_VOPC__V_CMPX_NGE_F32()
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMP_NE_U16()
void execute(GPUDynInstPtr) override
Inst_VOP3__V_MAX_I16(InFmt_VOP3 *)
Inst_SOP1__S_WQM_B64(InFmt_SOP1 *)
Inst_DS__DS_SUB_RTN_U32(InFmt_DS *)
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMPX_LE_U32(InFmt_VOP3 *)
~Inst_VOP3__V_CMPX_LG_F64()
~Inst_SOP1__S_FF0_I32_B64()
Inst_SOPC__S_CMP_LE_I32(InFmt_SOPC *)
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMP_T_U32()
void execute(GPUDynInstPtr) override
~Inst_VOPC__V_CMPX_NLT_F32()
void execute(GPUDynInstPtr) override
Inst_SOPP__S_SETPRIO(InFmt_SOPP *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_MIMG__IMAGE_ATOMIC_OR(InFmt_MIMG *)
Inst_VOPC__V_CMP_EQ_F32(InFmt_VOPC *)
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMPX_GE_I64(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
Inst_DS__DS_READ_B96(InFmt_DS *)
~Inst_VOP2__V_MUL_HI_U32_U24()
~Inst_VOP3__V_CMP_GE_F64()
Inst_VOP3__V_CMPX_NE_I32(InFmt_VOP3 *)
~Inst_VOP1__V_CVT_I32_F64()
Inst_MUBUF__BUFFER_ATOMIC_DEC_X2(InFmt_MUBUF *)
void incNumAtBarrier(int bar_id)
void execute(GPUDynInstPtr) override
Inst_DS__DS_XOR_SRC2_B32(InFmt_DS *)
Inst_VOPC__V_CMPX_GE_I64(InFmt_VOPC *)
void execute(GPUDynInstPtr) override
Inst_MIMG__IMAGE_GATHER4_C_O(InFmt_MIMG *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_DS__DS_CMPST_B32(InFmt_DS *)
~Inst_VOPC__V_CMP_EQ_U16()
Inst_FLAT__FLAT_ATOMIC_INC(InFmt_FLAT *)
void execute(GPUDynInstPtr) override
Inst_DS__DS_DEC_SRC2_U32(InFmt_DS *)
void execute(GPUDynInstPtr) override
void initiateAcc(GPUDynInstPtr) override
Inst_VOP3__V_CMP_LE_I64(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
~Inst_VOPC__V_CMP_LG_F64()
void execute(GPUDynInstPtr) override
Inst_SOP1__S_FF1_I32_B32(InFmt_SOP1 *)
~Inst_VOP3__V_CMPX_NLE_F32()
Inst_MUBUF__BUFFER_ATOMIC_AND(InFmt_MUBUF *)
Inst_FLAT__FLAT_STORE_DWORDX4(InFmt_FLAT *)
~Inst_DS__DS_MIN_SRC2_F64()
void execute(GPUDynInstPtr) override
Inst_VOP3__V_ASHRREV_I32(InFmt_VOP3 *)
Inst_VOP3__V_CMP_NEQ_F32(InFmt_VOP3 *)
~Inst_VOP1__V_LOG_LEGACY_F32()
~Inst_FLAT__FLAT_ATOMIC_SMIN()
void execute(GPUDynInstPtr) override
~Inst_VOPC__V_CMPX_GT_U32()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_MUBUF__BUFFER_LOAD_DWORD()
~Inst_VOP3__V_MUL_HI_I32()
Inst_SOP1__S_ORN2_SAVEEXEC_B64(InFmt_SOP1 *)
void completeAcc(GPUDynInstPtr) override
Inst_FLAT__FLAT_ATOMIC_UMAX(InFmt_FLAT *)
Inst_VOPC__V_CMP_U_F16(InFmt_VOPC *)
Inst_MIMG__IMAGE_GATHER4_C_B(InFmt_MIMG *)
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CUBEID_F32()
Inst_VOP3__V_MUL_U32_U24(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void completeAcc(GPUDynInstPtr) override
Inst_VOP3__V_SUBREV_U32(InFmt_VOP3_SDST_ENC *)
Inst_VOP3__V_CMPX_LT_I64(InFmt_VOP3 *)
Inst_MIMG__IMAGE_STORE_MIP(InFmt_MIMG *)
void execute(GPUDynInstPtr) override
~Inst_VOP2__V_SUBREV_F32()
~Inst_SOP1__S_NOR_SAVEEXEC_B64()
~Inst_SOP1__S_FF1_I32_B64()
Inst_DS__DS_MAX_U32(InFmt_DS *)
~Inst_DS__DS_WRXCHG_RTN_B64()
Inst_VOP3__V_LSHRREV_B16(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CVT_U16_F16(InFmt_VOP3 *)
Inst_VOP3__V_CMP_LT_U64(InFmt_VOP3 *)
Inst_MUBUF__BUFFER_LOAD_DWORDX2(InFmt_MUBUF *)
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMP_LT_F16()
~Inst_VOP3__V_CMP_LE_U64()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOPC__V_CMP_GE_F16()
~Inst_VOPC__V_CMPX_LT_U16()
Inst_DS__DS_READ_I8(InFmt_DS *)
void execute(GPUDynInstPtr) override
~Inst_DS__DS_XOR_RTN_B32()
void execute(GPUDynInstPtr) override
Inst_VOPC__V_CMPX_O_F64(InFmt_VOPC *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_SOP1__S_BITSET1_B32()
void initiateAcc(GPUDynInstPtr) override
Inst_VOP3__V_SUBBREV_U32(InFmt_VOP3_SDST_ENC *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_DS__DS_MIN_RTN_F64(InFmt_DS *)
Inst_VOP3__V_CLREXCP(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
~Inst_MIMG__IMAGE_SAMPLE_C_CD_CL_O()
Inst_VOPC__V_CMP_GT_F64(InFmt_VOPC *)
void execute(GPUDynInstPtr) override
~Inst_SOPP__S_ENDPGM_SAVED()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_SOP1__S_FLBIT_I32()
void execute(GPUDynInstPtr) override
~Inst_VOPC__V_CMPX_F_U64()
void execute(GPUDynInstPtr) override
~Inst_MUBUF__BUFFER_STORE_DWORD()
Inst_DS__DS_AND_RTN_B32(InFmt_DS *)
void execute(GPUDynInstPtr) override
Inst_SOPP__S_ENDPGM_SAVED(InFmt_SOPP *)
void execute(GPUDynInstPtr) override
Inst_VOPC__V_CMP_GT_I32(InFmt_VOPC *)
Inst_DS__DS_READ_U16(InFmt_DS *)
void execute(GPUDynInstPtr) override
~Inst_VOPC__V_CMP_EQ_F64()
~Inst_VOP3__V_CMPX_O_F32()
Inst_VOP3__V_CMPX_LE_F32(InFmt_VOP3 *)
~Inst_MIMG__IMAGE_GATHER4_C_B_CL()
void execute(GPUDynInstPtr) override
Inst_VOP2__V_MADMK_F32(InFmt_VOP2 *)
~Inst_FLAT__FLAT_ATOMIC_AND_X2()
Inst_MUBUF__BUFFER_ATOMIC_CMPSWAP_X2(InFmt_MUBUF *)
~Inst_SOP1__S_QUADMASK_B32()
void execute(GPUDynInstPtr) override
~Inst_MIMG__IMAGE_GATHER4()
Inst_VOP2__V_MAX_I16(InFmt_VOP2 *)
~Inst_VOP3__V_CMPX_O_F16()
~Inst_VOP3__V_CMP_GT_F64()
Inst_VOP3__V_SQRT_F64(InFmt_VOP3 *)
~Inst_VOP3__V_CMPX_LG_F32()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP2__V_LSHRREV_B16(InFmt_VOP2 *)
~Inst_VOPC__V_CMP_LE_I16()
ScalarRegI32 countZeroBits(T val)
Inst_VOP3__V_CMP_CLASS_F16(InFmt_VOP3 *)
Inst_MIMG__IMAGE_SAMPLE_C_B_O(InFmt_MIMG *)
~Inst_VOP3__V_CVT_U16_F16()
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMP_EQ_I16()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_SOPC__S_CMP_GT_I32()
Inst_VOPC__V_CMP_T_I16(InFmt_VOPC *)
int numYetToReachBarrier(int bar_id)
~Inst_VOP3__V_CUBETC_F32()
~Inst_VOPC__V_CMP_EQ_U32()
~Inst_VOP3__V_CMP_NE_I64()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMPX_TRU_F16()
Inst_VOPC__V_CMP_LT_F64(InFmt_VOPC *)
void execute(GPUDynInstPtr) override
Inst_VOP1__V_FREXP_EXP_I32_F32(InFmt_VOP1 *)
~Inst_VOP1__V_TRUNC_F32()
~Inst_VOPC__V_CMPX_LG_F64()
Inst_SOP1__S_FLBIT_I32(InFmt_SOP1 *)
Inst_VOPC__V_CMPX_NGT_F16(InFmt_VOPC *)
~Inst_SMEM__S_ATC_PROBE()
~Inst_VOP3__V_CMP_LE_I64()
void execute(GPUDynInstPtr) override
void prepareFlush(GPUDynInstPtr gpuDynInst)
dispatcher/shader arranges flush requests to the CUs
Inst_VOP1__V_FREXP_EXP_I16_F16(InFmt_VOP1 *)
Inst_VOP3__V_CMP_NGT_F64(InFmt_VOP3 *)
Inst_SOPC__S_BITCMP1_B32(InFmt_SOPC *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOP1__V_FLOOR_F32()
Inst_MIMG__IMAGE_ATOMIC_SMIN(InFmt_MIMG *)
Inst_VINTRP__V_INTERP_P1_F32(InFmt_VINTRP *)
~Inst_MIMG__IMAGE_SAMPLE_C_B_CL_O()
~Inst_VOP3__V_CMP_F_U32()
Inst_VOP1__V_RSQ_F32(InFmt_VOP1 *)
Inst_MIMG__IMAGE_SAMPLE_B(InFmt_MIMG *)
Inst_VOP3__V_CMP_NEQ_F64(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
Inst_DS__DS_ADD_SRC2_F32(InFmt_DS *)
Inst_VOP3__V_BFI_B32(InFmt_VOP3 *)
Inst_VOP3__V_PERM_B32(InFmt_VOP3 *)
Inst_VOP3__V_CMP_T_I64(InFmt_VOP3 *)
Inst_SOPK__S_CMPK_GT_I32(InFmt_SOPK *)
~Inst_VOP3__V_CMPX_U_F16()
~Inst_VOP3__V_CVT_F32_F64()
Inst_DS__DS_CONDXCHG32_RTN_B64(InFmt_DS *)
void execute(GPUDynInstPtr) override
~Inst_VOPC__V_CMPX_NGT_F16()
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMP_NEQ_F16()
~Inst_VOPC__V_CMP_GE_U32()
Inst_VOP3__V_CMPX_EQ_I16(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
~Inst_SMEM__S_DCACHE_INV_VOL()
~Inst_SOP1__S_SET_GPR_IDX_IDX()
Inst_VOP3__V_QSAD_PK_U16_U8(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMPX_T_I16(InFmt_VOP3 *)
Inst_VOPC__V_CMPX_NE_U16(InFmt_VOPC *)
~Inst_VOP3__V_MUL_LO_U16()
void execute(GPUDynInstPtr) override
Inst_DS__DS_MIN_U64(InFmt_DS *)
~Inst_VOP3__V_CVT_F16_U16()
Inst_VOPC__V_CMP_GE_I64(InFmt_VOPC *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMP_GE_U16()
~Inst_VOP1__V_BFREV_B32()
~Inst_VOPC__V_CMPX_EQ_I16()
~Inst_FLAT__FLAT_LOAD_UBYTE()
~Inst_VOP3__V_CMPX_F_F16()
Inst_MUBUF__BUFFER_ATOMIC_XOR_X2(InFmt_MUBUF *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_DS__DS_AND_B64(InFmt_DS *)
Inst_SMEM__S_STORE_DWORD(InFmt_SMEM *)
void execute(GPUDynInstPtr) override
Inst_SOPP__S_CBRANCH_CDBGUSER(InFmt_SOPP *)
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMP_GT_U16()
Inst_DS__DS_CMPST_F32(InFmt_DS *)
Inst_SOP2__S_RFE_RESTORE_B64(InFmt_SOP2 *)
~Inst_VOPC__V_CMP_GT_U32()
~Inst_MIMG__IMAGE_GET_LOD()
Inst_VOP3__V_CMP_GE_U16(InFmt_VOP3 *)
~Inst_VOPC__V_CMPX_EQ_I32()
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMPX_EQ_F16()
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_MUL_HI_U32()
~Inst_FLAT__FLAT_ATOMIC_SWAP_X2()
void execute(GPUDynInstPtr) override
Inst_VOPC__V_CMPX_EQ_I32(InFmt_VOPC *)
Inst_VOP3__V_CMPX_TRU_F64(InFmt_VOP3 *)
Inst_VOPC__V_CMPX_NLE_F32(InFmt_VOPC *)
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMP_NLG_F64(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOPC__V_CMPX_LE_I64(InFmt_VOPC *)
~Inst_VOP3__V_CMPX_TRU_F64()
~Inst_VOP3__V_CMP_LE_U32()
void initiateAcc(GPUDynInstPtr) override
~Inst_VOP3__V_CMPX_NE_I32()
~Inst_MUBUF__BUFFER_LOAD_DWORDX4()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void decVMemInstsIssued()
~Inst_SMEM__S_DCACHE_INV()
Inst_SOP1__S_BREV_B32(InFmt_SOP1 *)
~Inst_FLAT__FLAT_ATOMIC_UMIN_X2()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_MIMG__IMAGE_SAMPLE_D()
void execute(GPUDynInstPtr) override
Inst_SOP1__S_OR_SAVEEXEC_B64(InFmt_SOP1 *)
Inst_DS__DS_AND_B32(InFmt_DS *)
void execute(GPUDynInstPtr) override
Inst_DS__DS_MIN_RTN_I64(InFmt_DS *)
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMPX_T_I32(InFmt_VOP3 *)
void barrierId(int bar_id)
void completeAcc(GPUDynInstPtr) override
Inst_MIMG__IMAGE_SAMPLE_C_LZ_O(InFmt_MIMG *)
Inst_VOP1__V_TRUNC_F64(InFmt_VOP1 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_DS__DS_GWS_SEMA_BR(InFmt_DS *)
Inst_MIMG__IMAGE_ATOMIC_SWAP(InFmt_MIMG *)
Inst_MUBUF__BUFFER_LOAD_DWORDX4(InFmt_MUBUF *)
Inst_VOP1__V_SIN_F32(InFmt_VOP1 *)
void execute(GPUDynInstPtr) override
Inst_DS__DS_MSKOR_RTN_B64(InFmt_DS *)
void execute(GPUDynInstPtr) override
~Inst_VINTRP__V_INTERP_MOV_F32()
~Inst_VOP3__V_CMP_LE_I32()
Inst_SOPK__S_CMPK_LE_I32(InFmt_SOPK *)
void execute(GPUDynInstPtr) override
~Inst_DS__DS_RSUB_RTN_U64()
~Inst_DS__DS_MIN_SRC2_U64()
ScalarRegI32 findFirstZero(T val)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOPC__V_CMPX_EQ_F64()
Inst_VOP3__V_CMPX_T_U32(InFmt_VOP3 *)
~Inst_VOP2__V_SUBREV_F16()
~Inst_VOPC__V_CMPX_T_I16()
Inst_SOP1__S_NOT_B32(InFmt_SOP1 *)
void execute(GPUDynInstPtr) override
~Inst_DS__DS_MIN_RTN_U32()
void execute(GPUDynInstPtr) override
~Inst_MUBUF__BUFFER_STORE_DWORDX2()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CNDMASK_B32(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_DIV_FMAS_F32()
~Inst_FLAT__FLAT_ATOMIC_SUB_X2()
void execute(GPUDynInstPtr) override
void completeAcc(GPUDynInstPtr) override
~Inst_VOPC__V_CMP_NGE_F64()
void execute(GPUDynInstPtr) override
Inst_VOP3__V_MOV_B32(InFmt_VOP3 *)
~Inst_VOPC__V_CMPX_GE_F32()
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMPX_T_I32()
Inst_VOP1__V_CVT_F16_I16(InFmt_VOP1 *)
Inst_SOP2__S_ABSDIFF_I32(InFmt_SOP2 *)
Inst_VOP2__V_ASHRREV_I32(InFmt_VOP2 *)
void execute(GPUDynInstPtr) override
Inst_VOP2__V_MADAK_F16(InFmt_VOP2 *)
Inst_VOP3__V_CMPX_EQ_U32(InFmt_VOP3 *)
Inst_MUBUF__BUFFER_ATOMIC_XOR(InFmt_MUBUF *)
void execute(GPUDynInstPtr) override
~Inst_MUBUF__BUFFER_ATOMIC_XOR_X2()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_MIMG__IMAGE_GATHER4_C_CL(InFmt_MIMG *)
Inst_VOP1__V_CVT_F16_F32(InFmt_VOP1 *)
void completeAcc(GPUDynInstPtr) override
Inst_VOPC__V_CMP_NLG_F16(InFmt_VOPC *)
~Inst_DS__DS_SUB_SRC2_U32()
Inst_VOP3__V_RSQ_F32(InFmt_VOP3 *)
Inst_VOP1__V_READFIRSTLANE_B32(InFmt_VOP1 *)
Inst_VOP3__V_CVT_I32_F32(InFmt_VOP3 *)
~Inst_VOPC__V_CMP_NE_I16()
void execute(GPUDynInstPtr) override
~Inst_SMEM__S_ATC_PROBE_BUFFER()
void execute(GPUDynInstPtr) override
void completeAcc(GPUDynInstPtr) override
~Inst_VOPC__V_CMPX_O_F32()
~Inst_VOP2__V_LSHLREV_B32()
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMP_NLT_F16()
~Inst_FLAT__FLAT_ATOMIC_ADD()
Inst_VOPC__V_CMPX_NEQ_F16(InFmt_VOPC *)
Inst_VOPC__V_CMPX_O_F16(InFmt_VOPC *)
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_TRUNC_F64()
Inst_SOP1__S_BITSET1_B64(InFmt_SOP1 *)
Inst_VOPC__V_CMPX_GT_F32(InFmt_VOPC *)
Inst_VOP3__V_CMP_NLT_F64(InFmt_VOP3 *)
void completeAcc(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOPC__V_CMP_T_I64(InFmt_VOPC *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void initiateAcc(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOPC__V_CMP_GE_I32(InFmt_VOPC *)
~Inst_MUBUF__BUFFER_ATOMIC_CMPSWAP_X2()
Inst_VOPC__V_CMPX_LE_F64(InFmt_VOPC *)
void completeAcc(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void initiateAcc(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void initiateAcc(GPUDynInstPtr) override
void completeAcc(GPUDynInstPtr) override
Inst_VOPC__V_CMPX_T_I16(InFmt_VOPC *)
Inst_MIMG__IMAGE_GATHER4_C_B_O(InFmt_MIMG *)
Inst_VOP2__V_MAC_F16(InFmt_VOP2 *)
Inst_MIMG__IMAGE_SAMPLE_C_CD_CL(InFmt_MIMG *)
~Inst_MUBUF__BUFFER_STORE_BYTE()
bool isReachingKernelEnd(Wavefront *wf)
Inst_SOP2__S_ANDN2_B32(InFmt_SOP2 *)
Inst_VOP1__V_BFREV_B32(InFmt_VOP1 *)
Inst_VOP1__V_NOT_B32(InFmt_VOP1 *)
~Inst_MUBUF__BUFFER_LOAD_SSHORT()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOPC__V_CMP_GE_I64()
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CVT_F32_U32(InFmt_VOP3 *)
~Inst_VOP3__V_MUL_HI_U32_U24()
void execute(GPUDynInstPtr) override
Inst_VOP3__V_MAD_U32_U24(InFmt_VOP3 *)
std::enable_if_t< std::is_integral< T >::value &&sizeof(T) !=1, T > reverseBits(T val, size_t size=sizeof(T))
Takes a value and returns the bit reversed version.
void execute(GPUDynInstPtr) override
~Inst_MIMG__IMAGE_GATHER4_B_O()
~Inst_VINTRP__V_INTERP_P2_F32()
~Inst_DS__DS_MIN_RTN_F64()
void initiateAcc(GPUDynInstPtr) override
~Inst_VOPC__V_CMPX_T_U16()
void execute(GPUDynInstPtr) override
Inst_VOP3__V_FFBL_B32(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
ComputeUnit::ComputeUnitStats stats
~Inst_VOP3__V_CMPX_GT_I32()
Inst_SOP1__S_MOVRELS_B32(InFmt_SOP1 *)
Inst_MIMG__IMAGE_STORE_PCK(InFmt_MIMG *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_SOP1__S_GETPC_B64(InFmt_SOP1 *)
~Inst_DS__DS_READ2ST64_B32()
Inst_VOPC__V_CMPX_EQ_F32(InFmt_VOPC *)
~Inst_VOP3__V_LSHLREV_B32()
Inst_MUBUF__BUFFER_LOAD_DWORD(InFmt_MUBUF *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP2__V_LDEXP_F16(InFmt_VOP2 *)
~Inst_MIMG__IMAGE_LOAD_MIP_PCK_SGN()
Inst_VOP3__V_READLANE_B32(InFmt_VOP3 *)
Inst_VOPC__V_CMPX_NLT_F64(InFmt_VOPC *)
~Inst_SOPC__S_CMP_LG_U64()
void execute(GPUDynInstPtr) override
~Inst_VOP2__V_SUBREV_U16()
Inst_MIMG__IMAGE_GATHER4_B_CL_O(InFmt_MIMG *)
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMP_EQ_U16(InFmt_VOP3 *)
RegisterManager * registerManager
Inst_VOP3__V_FREXP_EXP_I32_F32(InFmt_VOP3 *)
~Inst_SMEM__S_BUFFER_LOAD_DWORDX8()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_FLAT__FLAT_LOAD_SSHORT(InFmt_FLAT *)
void execute(GPUDynInstPtr) override
Inst_FLAT__FLAT_ATOMIC_DEC(InFmt_FLAT *)
~Inst_VOP1__V_CVT_F64_U32()
~Inst_SOPP__S_CBRANCH_CDBGUSER()
Inst_VOP3__V_CMP_T_U32(InFmt_VOP3 *)
~Inst_VOP3__V_CMPX_LE_F64()
Inst_SOP1__S_NOR_SAVEEXEC_B64(InFmt_SOP1 *)
~Inst_VOPC__V_CMP_NEQ_F32()
~Inst_DS__DS_XOR_SRC2_B32()
~Inst_VOPC__V_CMP_CLASS_F16()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP1__V_FRACT_F16(InFmt_VOP1 *)
void execute(GPUDynInstPtr) override
~Inst_MIMG__IMAGE_LOAD_PCK()
Inst_VOP3__V_MIN_I16(InFmt_VOP3 *)
void initiateAcc(GPUDynInstPtr) override
Inst_VOP3__V_CMP_LE_F64(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMP_LE_F32()
~Inst_VOP1__V_RNDNE_F16()
void execute(GPUDynInstPtr) override
~Inst_FLAT__FLAT_ATOMIC_XOR()
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMP_EQ_U16()
Inst_VOPC__V_CMP_U_F32(InFmt_VOPC *)
Inst_VOP3__V_MIN3_I32(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOPC__V_CMP_NE_U32()
Inst_DS__DS_OR_B64(InFmt_DS *)
void execute(GPUDynInstPtr) override
Inst_DS__DS_DEC_RTN_U32(InFmt_DS *)
Inst_VOP3__V_FREXP_EXP_I16_F16(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_SOPP__S_SETHALT(InFmt_SOPP *)
void execute(GPUDynInstPtr) override
Inst_MIMG__IMAGE_SAMPLE_L_O(InFmt_MIMG *)
Inst_VOP2__V_MAX_U16(InFmt_VOP2 *)
~Inst_DS__DS_MAX_RTN_U32()
Inst_MIMG__IMAGE_GET_RESINFO(InFmt_MIMG *)
Inst_DS__DS_CMPST_F64(InFmt_DS *)
void completeAcc(GPUDynInstPtr) override
~Inst_DS__DS_RSUB_SRC2_U64()
Inst_SOPP__S_CBRANCH_SCC1(InFmt_SOPP *)
~Inst_VOPC__V_CMP_CLASS_F64()
~Inst_VOP3__V_SUBREV_U16()
void execute(GPUDynInstPtr) override
~Inst_VOP1__V_CVT_U16_F16()
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_MUL_U32_U24()
~Inst_SOPC__S_CMP_LG_I32()
Inst_SOP1__S_MOVRELD_B32(InFmt_SOP1 *)
void execute(GPUDynInstPtr) override
Inst_VOPC__V_CMPX_NLE_F16(InFmt_VOPC *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOP1__V_MOV_FED_B32()
~Inst_VOPC__V_CMP_NGT_F32()
Inst_MUBUF__BUFFER_WBINVL1(InFmt_MUBUF *)
Inst_VOP3__V_CMPX_NGT_F32(InFmt_VOP3 *)
~Inst_VOP1__V_TRUNC_F16()
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMP_EQ_F32()
~Inst_MUBUF__BUFFER_ATOMIC_ADD_X2()
~Inst_VOP3__V_TRUNC_F32()
Inst_VOP3__V_CMP_LG_F64(InFmt_VOP3 *)
void completeAcc(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_TRUNC_F16()
Inst_VOP3__V_DIV_FIXUP_F32(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_FLAT__FLAT_ATOMIC_SUB()
~Inst_VOP3__V_CMPX_LE_U32()
~Inst_DS__DS_GWS_SEMA_V()
Inst_VOP3__V_CMP_GE_I64(InFmt_VOP3 *)
~Inst_VOPC__V_CMP_O_F64()
void execute(GPUDynInstPtr) override
~Inst_SOP1__S_BCNT1_I32_B32()
Inst_VOP3__V_MED3_I32(InFmt_VOP3 *)
~Inst_VOP3__V_CMPX_NE_U16()
~Inst_DS__DS_MIN_SRC2_I64()
Inst_VOP3__V_CMP_GE_F16(InFmt_VOP3 *)
Inst_DS__DS_READ2_B64(InFmt_DS *)
Inst_VOP3__V_ALIGNBIT_B32(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
Inst_VOP3__V_MIN_I32(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_MAD_U32_U24()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_MQSAD_PK_U16_U8()
~Inst_VOP3__V_CMP_CLASS_F16()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_DS__DS_MIN_SRC2_U32()
~Inst_SOPC__S_SET_GPR_IDX_ON()
void completeAcc(GPUDynInstPtr) override
Inst_VOPC__V_CMP_TRU_F64(InFmt_VOPC *)
void execute(GPUDynInstPtr) override
~Inst_VOP1__V_FREXP_EXP_I32_F64()
Inst_DS__DS_GWS_SEMA_RELEASE_ALL(InFmt_DS *)
ScalarRegI32 firstOppositeSignBit(ScalarRegI32 val)
Inst_VOPC__V_CMPX_T_U64(InFmt_VOPC *)
~Inst_SOP1__S_FLBIT_I32_B64()
Inst_FLAT__FLAT_STORE_DWORDX3(InFmt_FLAT *)
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMP_NE_U32()
void execute(GPUDynInstPtr) override
Inst_VOP1__V_FLOOR_F64(InFmt_VOP1 *)
~Inst_VOP1__V_CVT_RPI_I32_F32()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_FLOOR_F16()
~Inst_SOPK__S_CMPK_EQ_I32()
Inst_VOP3__V_CMPX_GT_I64(InFmt_VOP3 *)
void initiateAcc(GPUDynInstPtr) override
Inst_VOP3__V_MIN_F32(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
~Inst_MUBUF__BUFFER_LOAD_UBYTE()
~Inst_DS__DS_MAX_SRC2_F32()
~Inst_VOP3__V_CMP_NLT_F64()
Inst_VOP3__V_CMP_LT_F32(InFmt_VOP3 *)
Inst_DS__DS_MAX_SRC2_I64(InFmt_DS *)
void execute(GPUDynInstPtr) override
Inst_FLAT__FLAT_LOAD_DWORD(InFmt_FLAT *)
Inst_VOP3__V_CVT_PK_U16_U32(InFmt_VOP3 *)
Inst_VOPC__V_CMPX_NLT_F16(InFmt_VOPC *)
Inst_SOP1__S_SEXT_I32_I16(InFmt_SOP1 *)
~Inst_VOP3__V_SUBREV_F16()
Inst_VOP3__V_AND_B32(InFmt_VOP3 *)
~Inst_VOP3__V_FREXP_MANT_F64()
void execute(GPUDynInstPtr) override
~Inst_DS__DS_WRITE2_B64()
~Inst_DS__DS_MAX_SRC2_I64()
~Inst_VOPC__V_CMPX_GE_U16()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void completeAcc(GPUDynInstPtr) override
~Inst_VOPC__V_CMP_NGE_F16()
Inst_DS__DS_DEC_RTN_U64(InFmt_DS *)
void execute(GPUDynInstPtr) override
~Inst_VOPC__V_CMP_LE_F16()
~Inst_DS__DS_BPERMUTE_B32()
~Inst_VOP3__V_CVT_PKACCUM_U8_F32()
Inst_SOPC__S_CMP_GE_U32(InFmt_SOPC *)
void execute(GPUDynInstPtr) override
~Inst_DS__DS_INC_RTN_U64()
void execute(GPUDynInstPtr) override
T roundNearestEven(T val)
~Inst_SMEM__S_DCACHE_WB()
Inst_VOP3__V_XOR_B32(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP2__V_SUBREV_F16(InFmt_VOP2 *)
~Inst_FLAT__FLAT_STORE_DWORD()
Inst_VOP3__V_MAX3_F32(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_DS__DS_DEC_SRC2_U32()
Inst_SMEM__S_BUFFER_LOAD_DWORDX2(InFmt_SMEM *)
~Inst_SOPP__S_DECPERFLEVEL()
~Inst_MUBUF__BUFFER_ATOMIC_AND()
void execute(GPUDynInstPtr) override
Inst_VOP2__V_MAX_U32(InFmt_VOP2 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOPC__V_CMPX_EQ_U32(InFmt_VOPC *)
void execute(GPUDynInstPtr) override
Inst_VOP3__V_MAX_U32(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
Inst_DS__DS_MAX_SRC2_I32(InFmt_DS *)
Inst_VOP3__V_CMP_T_I32(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
~Inst_SOPP__S_CBRANCH_CDBGSYS_AND_USER()
void execute(GPUDynInstPtr) override
Inst_VOPC__V_CMPX_LT_U16(InFmt_VOPC *)
~Inst_FLAT__FLAT_ATOMIC_XOR_X2()
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMPX_CLASS_F64(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
~Inst_DS__DS_WRXCHG2ST64_RTN_B64()
~Inst_VOP3__V_CMP_LT_F32()
void execute(GPUDynInstPtr) override
ScalarRegI32 findFirstOne(T val)
Inst_MIMG__IMAGE_SAMPLE_L(InFmt_MIMG *)
Inst_VOPC__V_CMPX_LT_U32(InFmt_VOPC *)
void execute(GPUDynInstPtr) override
~Inst_DS__DS_SWIZZLE_B32()
Inst_SOPP__S_CBRANCH_EXECZ(InFmt_SOPP *)
Inst_VOP2__V_LSHLREV_B32(InFmt_VOP2 *)
LdsState & getLds() const
void execute(GPUDynInstPtr) override
Inst_VOP2__V_SUBREV_U16(InFmt_VOP2 *)
@ S_BARRIER
WF is stalled at a barrier.
Inst_VOPC__V_CMPX_EQ_F16(InFmt_VOPC *)
~Inst_SOPP__S_CBRANCH_EXECZ()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_SOP1__S_SEXT_I32_I8(InFmt_SOP1 *)
Inst_VOP1__V_FFBH_U32(InFmt_VOP1 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP2__V_MAX_F32(InFmt_VOP2 *)
Inst_VOP2__V_MUL_HI_U32_U24(InFmt_VOP2 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_SOP1__S_SEXT_I32_I16()
~Inst_FLAT__FLAT_ATOMIC_INC_X2()
Inst_FLAT__FLAT_ATOMIC_SMIN(InFmt_FLAT *)
void execute(GPUDynInstPtr) override
void completeAcc(GPUDynInstPtr) override
~Inst_VOP3__V_DIV_FIXUP_F16()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP3__V_MAD_U16(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOPC__V_CMPX_GE_F32(InFmt_VOPC *)
void execute(GPUDynInstPtr) override
Inst_FLAT__FLAT_ATOMIC_AND_X2(InFmt_FLAT *)
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMPX_LE_I32()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP1__V_CVT_I32_F32(InFmt_VOP1 *)
Wavefront::WavefrontStats stats
Inst_FLAT__FLAT_LOAD_USHORT(InFmt_FLAT *)
void execute(GPUDynInstPtr) override
Inst_VOP3__V_FREXP_MANT_F16(InFmt_VOP3 *)
~Inst_VOPC__V_CMP_GT_F16()
Inst_VOP3__V_CMPX_NEQ_F64(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_WRITELANE_B32()
~Inst_MIMG__IMAGE_SAMPLE_C_L_O()
~Inst_SOP2__S_ANDN2_B32()
~Inst_MUBUF__BUFFER_STORE_SHORT()
~Inst_MIMG__IMAGE_SAMPLE_D_O()
Inst_VOPC__V_CMPX_NLG_F64(InFmt_VOPC *)
~Inst_SOPK__S_CBRANCH_I_FORK()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP3__V_DIV_FMAS_F64(InFmt_VOP3 *)
Inst_SOP2__S_XOR_B64(InFmt_SOP2 *)
Inst_VOPC__V_CMPX_GT_I32(InFmt_VOPC *)
Inst_MIMG__IMAGE_ATOMIC_CMPSWAP(InFmt_MIMG *)
~Inst_SOPP__S_CBRANCH_SCC0()
Inst_SOPC__S_CMP_LT_U32(InFmt_SOPC *)
~Inst_VOPC__V_CMP_TRU_F16()
~Inst_VOP3__V_QSAD_PK_U16_U8()
Inst_VOPC__V_CMP_O_F16(InFmt_VOPC *)
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMP_NLT_F16(InFmt_VOP3 *)
Inst_VOPC__V_CMPX_LE_F32(InFmt_VOPC *)
void execute(GPUDynInstPtr) override
~Inst_VOPC__V_CMPX_NEQ_F16()
void initiateAcc(GPUDynInstPtr) override
Inst_VOP3__V_CMP_LG_F16(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
Inst_VOP3__V_NOP(InFmt_VOP3 *)
Inst_VOP1__V_EXP_LEGACY_F32(InFmt_VOP1 *)
Inst_DS__DS_MIN_SRC2_F32(InFmt_DS *)
void execute(GPUDynInstPtr) override
Inst_VOP3__V_ADD_F64(InFmt_VOP3 *)
~Inst_MUBUF__BUFFER_ATOMIC_AND_X2()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMPX_CLASS_F32(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_MUBUF__BUFFER_ATOMIC_SMAX_X2()
Inst_VOP1__V_COS_F32(InFmt_VOP1 *)
~Inst_MIMG__IMAGE_GATHER4_LZ()
Inst_VOPC__V_CMP_NLG_F32(InFmt_VOPC *)
~Inst_SOP1__S_SETPC_B64()
~Inst_VOPC__V_CMP_NLE_F64()
void completeAcc(GPUDynInstPtr) override
~Inst_VOPC__V_CMP_F_I16()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_SOP2__S_AND_B32(InFmt_SOP2 *)
Inst_DS__DS_SUB_RTN_U64(InFmt_DS *)
Inst_VOP3__V_LDEXP_F64(InFmt_VOP3 *)
Inst_MIMG__IMAGE_SAMPLE_C_B_CL_O(InFmt_MIMG *)
void execute(GPUDynInstPtr) override
~Inst_MIMG__IMAGE_LOAD_MIP_PCK()
void execute(GPUDynInstPtr) override
~Inst_VOPC__V_CMPX_NGE_F64()
Inst_SOP1__S_FLBIT_I32_I64(InFmt_SOP1 *)
void execute(GPUDynInstPtr) override
Inst_MUBUF__BUFFER_ATOMIC_UMAX(InFmt_MUBUF *)
void initiateAcc(GPUDynInstPtr) override
~Inst_MIMG__IMAGE_SAMPLE_C_CD_CL()
int scalarOutstandingReqsWrGm
Inst_VOP3__V_CVT_FLR_I32_F32(InFmt_VOP3 *)
Inst_VOP1__V_CVT_U32_F32(InFmt_VOP1 *)
Inst_DS__DS_MAX_RTN_I32(InFmt_DS *)
void initiateAcc(GPUDynInstPtr) override
~Inst_VOPC__V_CMPX_LE_I64()
~Inst_VOP3__V_CMP_NLG_F64()
Inst_DS__DS_MIN_SRC2_F64(InFmt_DS *)
~Inst_VOP3__V_RNDNE_F64()
Inst_VOP3__V_MED3_U32(InFmt_VOP3 *)
Inst_VOP3__V_CVT_I32_F64(InFmt_VOP3 *)
Inst_SOP2__S_ADD_U32(InFmt_SOP2 *)
void completeAcc(GPUDynInstPtr) override
~Inst_VOP3__V_CMP_NGT_F64()
void execute(GPUDynInstPtr) override
Inst_SOPK__S_CBRANCH_I_FORK(InFmt_SOPK *)
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMP_NE_U32(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
~Inst_MUBUF__BUFFER_STORE_DWORDX4()
~Inst_MIMG__IMAGE_ATOMIC_AND()
~Inst_VOPC__V_CMP_LE_U64()
void execute(GPUDynInstPtr) override
InFmt_VOP3_SDST_ENC instData
Inst_VOPC__V_CMP_LT_F16(InFmt_VOPC *)
Inst_VOPC__V_CMPX_LT_I64(InFmt_VOPC *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void initiateAcc(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CUBESC_F32()
void execute(GPUDynInstPtr) override
void initiateAcc(GPUDynInstPtr) override
~Inst_SMEM__S_BUFFER_LOAD_DWORDX4()
Inst_SOP2__S_BFE_U32(InFmt_SOP2 *)
~Inst_VOP1__V_RNDNE_F32()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOP1__V_CVT_F32_UBYTE1()
Inst_VOP3__V_DIV_FIXUP_F64(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMP_NLE_F64(InFmt_VOP3 *)
~Inst_VOP3__V_CMPX_LE_U16()
Inst_DS__DS_CMPST_RTN_B64(InFmt_DS *)
~Inst_SOP1__S_FF0_I32_B32()
Inst_DS__DS_MIN_RTN_I32(InFmt_DS *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void completeAcc(GPUDynInstPtr) override
~Inst_VOP3__V_CMPX_NE_I16()
~Inst_MIMG__IMAGE_SAMPLE_L_O()
~Inst_SOPK__S_CMPK_LE_U32()
Inst_DS__DS_OR_RTN_B32(InFmt_DS *)
void execute(GPUDynInstPtr) override
Inst_VOP2__V_MIN_U16(InFmt_VOP2 *)
Inst_SOP1__S_MOV_B32(InFmt_SOP1 *)
void execute(GPUDynInstPtr) override
Inst_VOP1__V_CEIL_F32(InFmt_VOP1 *)
~Inst_VOP2__V_LDEXP_F16()
Inst_VOP1__V_RNDNE_F16(InFmt_VOP1 *)
~Inst_VOP3__V_CMPX_GE_F32()
~Inst_VOPC__V_CMP_T_U32()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOPC__V_CMP_CLASS_F64(InFmt_VOPC *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_DS__DS_WRXCHG2_RTN_B32()
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMP_NLT_F32(InFmt_VOP3 *)
~Inst_VOP2__V_MUL_HI_I32_I24()
Inst_VOP3__V_CMP_LE_U16(InFmt_VOP3 *)
Inst_VOP3__V_CMP_GT_I16(InFmt_VOP3 *)
void completeAcc(GPUDynInstPtr) override
~Inst_VOP3__V_MUL_LO_U32()
void execute(GPUDynInstPtr) override
~Inst_SOPP__S_CBRANCH_EXECNZ()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void initiateAcc(GPUDynInstPtr) override
~Inst_VOP3__V_CMP_NLT_F32()
Inst_VOPC__V_CMP_NE_U64(InFmt_VOPC *)
void execute(GPUDynInstPtr) override
Inst_VOP3__V_RCP_IFLAG_F32(InFmt_VOP3 *)
~Inst_VOP2__V_LSHRREV_B32()
~Inst_DS__DS_CMPST_RTN_F32()
Inst_VOPC__V_CMPX_NE_I64(InFmt_VOPC *)
void execute(GPUDynInstPtr) override
Inst_SOP2__S_ORN2_B32(InFmt_SOP2 *)
Inst_VOP3__V_LERP_U8(InFmt_VOP3 *)
~Inst_VOPC__V_CMPX_LE_F32()
void initiateAcc(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_DS__DS_WRITE_B128()
Inst_VOP3__V_LSHLREV_B64(InFmt_VOP3 *)
Inst_VOP1__V_CVT_I16_F16(InFmt_VOP1 *)
~Inst_SOP1__S_MOVRELS_B64()
~Inst_MIMG__IMAGE_SAMPLE_LZ()
void execute(GPUDynInstPtr) override
Inst_DS__DS_READ2_B32(InFmt_DS *)
Inst_VOP3__V_CMPX_EQ_U64(InFmt_VOP3 *)
~Inst_VOP3__V_CMPX_EQ_F32()
~Inst_MIMG__IMAGE_GATHER4_C_CL()
Inst_MUBUF__BUFFER_ATOMIC_UMIN(InFmt_MUBUF *)
Inst_VOP3__V_CMPX_NLT_F64(InFmt_VOP3 *)
void calcAddr(GPUDynInstPtr gpuDynInst, VOFF v_off, VIDX v_idx, SRSRC s_rsrc_desc, SOFF s_offset, int inst_offset)
MUBUF insructions calculate their addresses as follows:
void execute(GPUDynInstPtr) override
Inst_VOP3__V_SUB_U32(InFmt_VOP3_SDST_ENC *)
Inst_SOP2__S_BFM_B32(InFmt_SOP2 *)
~Inst_VOP3__V_CMPX_LE_F16()
Inst_SOPK__S_MOVK_I32(InFmt_SOPK *)
def format Nop(code, *opt_flags)
~Inst_VOPC__V_CMP_LT_I16()
~Inst_VOP3__V_INTERP_P1LV_F16()
~Inst_VOPC__V_CMP_LE_U16()
~Inst_VOPC__V_CMP_NGE_F32()
~Inst_VOP3__V_CMPX_F_F32()
~Inst_DS__DS_WRXCHG2ST64_RTN_B32()
~Inst_VOP3__V_LSHLREV_B64()
Inst_VOPC__V_CMP_TRU_F16(InFmt_VOPC *)
void execute(GPUDynInstPtr) override
~Inst_MIMG__IMAGE_STORE_MIP_PCK()
Inst_MIMG__IMAGE_SAMPLE_B_CL(InFmt_MIMG *)
Inst_VOP3__V_CUBEID_F32(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_SOPP__S_INCPERFLEVEL()
~Inst_VOPC__V_CMPX_TRU_F16()
void setStatus(status_e newStatus)
~Inst_VOPC__V_CMP_F_F64()
void execute(GPUDynInstPtr) override
~Inst_SOPP__S_CBRANCH_CDBGSYS()
void execute(GPUDynInstPtr) override
~Inst_SOPK__S_CMPK_LT_I32()
Inst_SMEM__S_LOAD_DWORDX2(InFmt_SMEM *)
Inst_VOPC__V_CMP_NGT_F32(InFmt_VOPC *)
void execute(GPUDynInstPtr) override
void initiateAcc(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMP_F_I16()
void execute(GPUDynInstPtr) override
Inst_MUBUF__BUFFER_ATOMIC_INC(InFmt_MUBUF *)
Inst_DS__DS_INC_U32(InFmt_DS *)
Inst_VOP2__V_MUL_F16(InFmt_VOP2 *)
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CEIL_F32(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
Inst_VOPC__V_CMPX_NE_I32(InFmt_VOPC *)
Inst_VOP1__V_CVT_F32_UBYTE2(InFmt_VOP1 *)
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMPX_LE_I32(InFmt_VOP3 *)
Inst_VOP3__V_BCNT_U32_B32(InFmt_VOP3 *)
Inst_VOP3__V_MOV_FED_B32(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_SOPP__S_ICACHE_INV(InFmt_SOPP *)
Inst_FLAT__FLAT_ATOMIC_DEC_X2(InFmt_FLAT *)
Inst_MUBUF__BUFFER_ATOMIC_SMAX(InFmt_MUBUF *)
~Inst_VOPC__V_CMP_O_F32()
void execute(GPUDynInstPtr) override
~Inst_SOP1__S_CBRANCH_JOIN()
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMP_GT_U16(InFmt_VOP3 *)
Inst_VOP3__V_CMP_LT_I64(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_MIMG__IMAGE_LOAD_PCK_SGN()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void completeAcc(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP3__V_MIN3_F32(InFmt_VOP3 *)
~Inst_VOP3__V_CMPX_F_F64()
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_FREXP_MANT_F16()
void execute(GPUDynInstPtr) override
Inst_SOP2__S_LSHR_B32(InFmt_SOP2 *)
~Inst_SOP2__S_ABSDIFF_I32()
~Inst_VOP3__V_CMPX_F_I64()
void execute(GPUDynInstPtr) override
Inst_VOP3__V_COS_F32(InFmt_VOP3 *)
Inst_FLAT__FLAT_ATOMIC_XOR_X2(InFmt_FLAT *)
Inst_VOP3__V_CMPX_F_F16(InFmt_VOP3 *)
Inst_MUBUF__BUFFER_LOAD_SBYTE(InFmt_MUBUF *)
Inst_MIMG__IMAGE_ATOMIC_AND(InFmt_MIMG *)
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMPX_GE_U16()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMP_EQ_I32(InFmt_VOP3 *)
Inst_MIMG__IMAGE_GATHER4(InFmt_MIMG *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void completeAcc(GPUDynInstPtr) override
Inst_VOP1__V_LOG_F16(InFmt_VOP1 *)
Inst_DS__DS_ORDERED_COUNT(InFmt_DS *)
Inst_VOP3__V_DIV_FIXUP_F16(InFmt_VOP3 *)
Inst_VOP3__V_LOG_F32(InFmt_VOP3 *)
Inst_VOP3__V_MAX3_U32(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_ALIGNBIT_B32()
Inst_VOP1__V_CVT_F64_F32(InFmt_VOP1 *)
void execute(GPUDynInstPtr) override
Inst_DS__DS_READ_B64(InFmt_DS *)
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMPX_NE_I64(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_SOP1__S_FF0_I32_B64(InFmt_SOP1 *)
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMPX_LG_F16(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP3__V_FLOOR_F32(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_DS__DS_MIN_RTN_F32(InFmt_DS *)
Inst_VOPC__V_CMP_GE_F64(InFmt_VOPC *)
Inst_MUBUF__BUFFER_WBINVL1_VOL(InFmt_MUBUF *)
~Inst_VOP3__V_CMPX_LT_F16()
void execute(GPUDynInstPtr) override
void initiateAcc(GPUDynInstPtr) override
~Inst_MUBUF__BUFFER_STORE_LDS_DWORD()
~Inst_VOP2__V_SUBREV_U32()
~Inst_VOPC__V_CMPX_U_F16()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void completeAcc(GPUDynInstPtr) override
~Inst_MIMG__IMAGE_SAMPLE()
Inst_SOPC__S_CMP_EQ_I32(InFmt_SOPC *)
~Inst_VOPC__V_CMPX_F_I16()
~Inst_VOP3__V_LSHRREV_B32()
Inst_VOPC__V_CMPX_LT_I16(InFmt_VOPC *)
Inst_SOP1__S_BREV_B64(InFmt_SOP1 *)
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMPX_LT_F64()
Inst_MIMG__IMAGE_SAMPLE_CL_O(InFmt_MIMG *)
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMP_NGT_F16(InFmt_VOP3 *)
void initiateAcc(GPUDynInstPtr) override
void notifyWgCompl(Wavefront *wf)
When an end program instruction detects that the last WF in a WG has completed it will call this meth...
~Inst_SOPC__S_CMP_EQ_I32()
~Inst_MUBUF__BUFFER_ATOMIC_DEC()
~Inst_MUBUF__BUFFER_ATOMIC_CMPSWAP()
GPUDispatcher & dispatcher()
~Inst_MIMG__IMAGE_GATHER4_C_O()
Inst_DS__DS_SUB_SRC2_U32(InFmt_DS *)
Inst_VOP3__V_CMPX_NE_U32(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMP_O_F16()
Inst_VOP1__V_CVT_F32_F64(InFmt_VOP1 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_SOP1__S_XOR_SAVEEXEC_B64(InFmt_SOP1 *)
Inst_MIMG__IMAGE_GATHER4_C(InFmt_MIMG *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOP1__V_CVT_F32_UBYTE2()
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMP_EQ_F16()
Inst_MIMG__IMAGE_GATHER4_C_LZ_O(InFmt_MIMG *)
~Inst_DS__DS_GWS_SEMA_BR()
~Inst_VOP3__V_MAD_I64_I32()
Inst_VOP3__V_CVT_OFF_F32_I4(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void initiateAcc(GPUDynInstPtr) override
Inst_SOP1__S_BCNT1_I32_B32(InFmt_SOP1 *)
void completeAcc(GPUDynInstPtr) override
Inst_DS__DS_READ_I16(InFmt_DS *)
~Inst_VOP3__V_CMPX_GE_U32()
void execute(GPUDynInstPtr) override
void flushBuf(int wfSlotId)
Inst_MIMG__IMAGE_SAMPLE_C_D_CL(InFmt_MIMG *)
void execute(GPUDynInstPtr) override
Inst_MIMG__IMAGE_SAMPLE_C_D_CL_O(InFmt_MIMG *)
Inst_MIMG__IMAGE_SAMPLE_D_O(InFmt_MIMG *)
void execute(GPUDynInstPtr) override
~Inst_DS__DS_CONDXCHG32_RTN_B64()
~Inst_VOP3__V_CMP_LT_U16()
~Inst_VOPC__V_CMPX_NLE_F16()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void initiateAcc(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_DS__DS_WRXCHG2ST64_RTN_B32(InFmt_DS *)
void execute(GPUDynInstPtr) override
Inst_SOP2__S_XNOR_B32(InFmt_SOP2 *)
Inst_VOP3__V_EXP_F32(InFmt_VOP3 *)
Inst_FLAT__FLAT_STORE_SHORT(InFmt_FLAT *)
void execute(GPUDynInstPtr) override
~Inst_VOPC__V_CMP_GT_F32()
Inst_VOPC__V_CMPX_F_F64(InFmt_VOPC *)
Inst_VOP3__V_CMP_F_U64(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
Inst_DS__DS_CMPST_RTN_B32(InFmt_DS *)
Inst_VOP3__V_LSHRREV_B32(InFmt_VOP3 *)
~Inst_VOP3__V_FRACT_F64()
ComputeUnit * computeUnit
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_MIMG__IMAGE_GATHER4_B_CL_O()
Inst_VOP1__V_TRUNC_F32(InFmt_VOP1 *)
Inst_SOPP__S_SET_GPR_IDX_OFF(InFmt_SOPP *)
void execute(GPUDynInstPtr) override
Inst_VOPC__V_CMPX_LT_F64(InFmt_VOPC *)
~Inst_SOPC__S_CMP_EQ_U64()
Inst_DS__DS_READ2ST64_B32(InFmt_DS *)
Inst_VOP3__V_ADDC_U32(InFmt_VOP3_SDST_ENC *)
Inst_VOP3__V_CMP_NE_U64(InFmt_VOP3 *)
void decMaxBarrierCnt(int bar_id)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_SOP2__S_CSELECT_B32()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP1__V_LOG_LEGACY_F32(InFmt_VOP1 *)
~Inst_SOPP__S_ICACHE_INV()
void execute(GPUDynInstPtr) override
Inst_VOP3__V_FRACT_F16(InFmt_VOP3 *)
~Inst_VOP1__V_RCP_IFLAG_F32()
Inst_VOPC__V_CMPX_T_I64(InFmt_VOPC *)
void execute(GPUDynInstPtr) override
Inst_DS__DS_MIN_RTN_U64(InFmt_DS *)
~Inst_FLAT__FLAT_LOAD_DWORDX2()
~Inst_VOPC__V_CMPX_EQ_U16()
void execute(GPUDynInstPtr) override
Inst_VOPC__V_CMPX_GT_F64(InFmt_VOPC *)
~Inst_VOPC__V_CMP_F_U32()
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMP_U_F64(InFmt_VOP3 *)
Inst_VOP3__V_CMPX_O_F16(InFmt_VOP3 *)
Inst_VOPC__V_CMP_NLT_F32(InFmt_VOPC *)
~Inst_VOPC__V_CMP_GT_F64()
void execute(GPUDynInstPtr) override
Inst_VOPC__V_CMPX_O_F32(InFmt_VOPC *)
Inst_VOP2__V_LSHLREV_B16(InFmt_VOP2 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CVT_F32_UBYTE2()
Inst_VOP3__V_SUBREV_U16(InFmt_VOP3 *)
void initiateAcc(GPUDynInstPtr) override
Inst_VOPC__V_CMPX_LE_I16(InFmt_VOPC *)
~Inst_VOP3__V_CMP_GE_U64()
~Inst_VOP3__V_CMPX_LE_F32()
~Inst_VOP1__V_CVT_F32_UBYTE3()
Inst_VOP3__V_CMP_CLASS_F32(InFmt_VOP3 *)
Inst_VOPC__V_CMP_CLASS_F32(InFmt_VOPC *)
Inst_MUBUF__BUFFER_ATOMIC_AND_X2(InFmt_MUBUF *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_SAD_HI_U8()
void completeAcc(GPUDynInstPtr) override
Inst_VOP3__V_CMPX_NLG_F32(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
~Inst_FLAT__FLAT_ATOMIC_SMIN_X2()
Inst_VOP3__V_CMP_EQ_U64(InFmt_VOP3 *)
Inst_SMEM__S_LOAD_DWORDX4(InFmt_SMEM *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP1__V_CVT_F32_UBYTE1(InFmt_VOP1 *)
void execute(GPUDynInstPtr) override
Inst_MIMG__IMAGE_GATHER4_C_B_CL_O(InFmt_MIMG *)
~Inst_VOP1__V_FLOOR_F64()
~Inst_MIMG__IMAGE_SAMPLE_B()
~Inst_DS__DS_DEC_SRC2_U64()
Inst_DS__DS_GWS_SEMA_P(InFmt_DS *)
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CVT_PKRTZ_F16_F32(InFmt_VOP3 *)
~Inst_VOPC__V_CMP_F_U64()
~Inst_SOP1__S_XNOR_SAVEEXEC_B64()
void execute(GPUDynInstPtr) override
~Inst_VOPC__V_CMP_EQ_I32()
void execute(GPUDynInstPtr) override
void initiateAcc(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Read 1 dword from scalar data cache.
Inst_VOP3__V_RNDNE_F64(InFmt_VOP3 *)
~Inst_VOP1__V_CVT_FLR_I32_F32()
int scalarOutstandingReqsRdGm
void initiateAcc(GPUDynInstPtr) override
Inst_FLAT__FLAT_ATOMIC_SWAP_X2(InFmt_FLAT *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void initiateAcc(GPUDynInstPtr) override
~Inst_VOP3__V_CMPX_GT_U64()
Inst_VOPC__V_CMP_U_F64(InFmt_VOPC *)
Inst_VOP1__V_SQRT_F16(InFmt_VOP1 *)
~Inst_VOP2__V_ASHRREV_I32()
Inst_FLAT__FLAT_STORE_DWORD(InFmt_FLAT *)
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMP_U_F16()
void execute(GPUDynInstPtr) override
Inst_MIMG__IMAGE_SAMPLE_LZ(InFmt_MIMG *)
~Inst_VOPC__V_CMP_LE_F32()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMPX_EQ_U64()
Inst_MIMG__IMAGE_SAMPLE_CD_CL_O(InFmt_MIMG *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CUBEMA_F32()
Inst_MUBUF__BUFFER_STORE_LDS_DWORD(InFmt_MUBUF *)
~Inst_DS__DS_MIN_SRC2_F32()
Inst_VOP3__V_CMPX_U_F16(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void initiateAcc(GPUDynInstPtr) override
Inst_VOP3__V_CMP_F_F64(InFmt_VOP3 *)
Inst_VOP3__V_CMP_NE_U16(InFmt_VOP3 *)
Inst_VOP3__V_CMPX_GT_F64(InFmt_VOP3 *)
void completeAcc(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_SOP2__S_CBRANCH_G_FORK(InFmt_SOP2 *)
void completeAcc(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_MIMG__IMAGE_SAMPLE_O(InFmt_MIMG *)
~Inst_VOPC__V_CMP_LT_F32()
Inst_MUBUF__BUFFER_ATOMIC_UMIN_X2(InFmt_MUBUF *)
~Inst_VOP3__V_CMP_T_U16()
~Inst_SOPK__S_CMPK_GE_U32()
Inst_SOPC__S_SETVSKIP(InFmt_SOPC *)
Inst_MIMG__IMAGE_GATHER4_B_CL(InFmt_MIMG *)
~Inst_VOP3__V_CMPX_NLE_F16()
Inst_SOP1__S_ABS_I32(InFmt_SOP1 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_SOPC__S_CMP_GT_U32(InFmt_SOPC *)
~Inst_VOP3__V_CMPX_CLASS_F64()
Inst_VOP3__V_SQRT_F32(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMP_LE_U32(InFmt_VOP3 *)
~Inst_VOP2__V_LSHLREV_B16()
~Inst_SOPK__S_GETREG_B32()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_DS__DS_READ_B32(InFmt_DS *)
classes that represnt vector/scalar operands in GCN3 ISA.
Inst_VOP3__V_CEIL_F16(InFmt_VOP3 *)
~Inst_VOP1__V_TRUNC_F64()
~Inst_VOP3__V_MBCNT_LO_U32_B32()
void initiateAcc(GPUDynInstPtr) override
Inst_SOP2__S_MAX_U32(InFmt_SOP2 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOPC__V_CMPX_TRU_F64(InFmt_VOPC *)
~Inst_VOP3__V_CMP_TRU_F64()
Inst_VOP3__V_CMP_NE_I32(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_MUBUF__BUFFER_ATOMIC_SWAP(InFmt_MUBUF *)
void initiateAcc(GPUDynInstPtr) override
Inst_VOPC__V_CMP_NE_I32(InFmt_VOPC *)
VecOperand< VecElemU32, true > ConstVecOperandU32
void execute(GPUDynInstPtr) override
~Inst_VOPC__V_CMP_O_F16()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_FLAT__FLAT_LOAD_SBYTE()
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMP_NLG_F32()
~Inst_VOP3__V_CMPX_NGE_F64()
void execute(GPUDynInstPtr) override
Inst_SOP1__S_QUADMASK_B32(InFmt_SOP1 *)
~Inst_FLAT__FLAT_ATOMIC_CMPSWAP_X2()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_MUBUF__BUFFER_ATOMIC_OR()
Inst_DS__DS_WRITE_B32(InFmt_DS *)
~Inst_VOP1__V_READFIRSTLANE_B32()
~Inst_VOP3__V_LSHRREV_B64()
Inst_VOP3__V_CMPX_LE_I64(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMP_GT_I64()
Inst_SOP1__S_MOV_B64(InFmt_SOP1 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOP1__V_FREXP_EXP_I32_F32()
void execute(GPUDynInstPtr) override
Inst_SOPK__S_CMPK_LG_I32(InFmt_SOPK *)
void execute(GPUDynInstPtr) override
int maxBarrierCnt(int bar_id)
~Inst_VOPC__V_CMP_NEQ_F64()
void initiateAcc(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void initiateAcc(GPUDynInstPtr) override
~Inst_DS__DS_OR_SRC2_B32()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMPX_NGE_F64(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_MIMG__IMAGE_SAMPLE_CD_CL_O()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_MUL_I32_I24()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOPC__V_CMP_GE_F16(InFmt_VOPC *)
void execute(GPUDynInstPtr) override
~Inst_VOPC__V_CMPX_LE_U16()
~Inst_FLAT__FLAT_STORE_DWORDX4()
void initiateAcc(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP3__V_MAX_U16(InFmt_VOP3 *)
~Inst_MIMG__IMAGE_ATOMIC_XOR()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void completeAcc(GPUDynInstPtr) override
void completeAcc(GPUDynInstPtr) override
ScalarRegI32 findFirstOneMsb(T val)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_MIMG__IMAGE_GATHER4_L()
Inst_VOP3__V_FLOOR_F64(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
Inst_DS__DS_ADD_SRC2_U32(InFmt_DS *)
Inst_VOP2__V_MUL_F32(InFmt_VOP2 *)
Inst_SOPC__S_CMP_LG_U32(InFmt_SOPC *)
void execute(GPUDynInstPtr) override
~Inst_VOPC__V_CMPX_F_I64()
Inst_SOPK__S_CMPK_GE_U32(InFmt_SOPK *)
Inst_SOP2__S_BFE_U64(InFmt_SOP2 *)
~Inst_DS__DS_WRAP_RTN_B32()
Inst_VOP3__V_CMPX_LG_F64(InFmt_VOP3 *)
~Inst_VOP3__V_CMPX_CLASS_F32()
~Inst_SOP1__S_AND_SAVEEXEC_B64()
Inst_MIMG__IMAGE_LOAD_PCK_SGN(InFmt_MIMG *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_SOP1__S_ANDN2_SAVEEXEC_B64()
~Inst_VOP3__V_CMPX_LE_U64()
void execute(GPUDynInstPtr) override
Inst_MIMG__IMAGE_SAMPLE_C_O(InFmt_MIMG *)
Inst_MUBUF__BUFFER_ATOMIC_SMIN_X2(InFmt_MUBUF *)
void execute(GPUDynInstPtr) override
~Inst_VOP1__V_CVT_F32_U32()
Inst_VOP3__V_CUBETC_F32(InFmt_VOP3 *)
Inst_FLAT__FLAT_ATOMIC_AND(InFmt_FLAT *)
Inst_VOP1__V_RCP_F64(InFmt_VOP1 *)
Inst_VOP1__V_RCP_IFLAG_F32(InFmt_VOP1 *)
Inst_VOP3__V_CMPX_NEQ_F16(InFmt_VOP3 *)
~Inst_VOP1__V_FLOOR_F16()
Inst_VOP3__V_MAD_I16(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_MIMG__IMAGE_ATOMIC_UMAX(InFmt_MIMG *)
void execute(GPUDynInstPtr) override
Inst_VOPC__V_CMP_LE_U64(InFmt_VOPC *)
Inst_VOPC__V_CMP_EQ_F16(InFmt_VOPC *)
Inst_DS__DS_MSKOR_B64(InFmt_DS *)
void execute(GPUDynInstPtr) override
~Inst_DS__DS_INC_RTN_U32()
Inst_VOP3__V_MIN_F16(InFmt_VOP3 *)
Inst_MUBUF__BUFFER_ATOMIC_SWAP_X2(InFmt_MUBUF *)
Inst_VOP1__V_EXP_F32(InFmt_VOP1 *)
~Inst_VOPC__V_CMPX_LT_I32()
Inst_FLAT__FLAT_ATOMIC_CMPSWAP(InFmt_FLAT *)
~Inst_DS__DS_CMPST_RTN_B32()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_MUBUF__BUFFER_WBINVL1()
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CVT_PKACCUM_U8_F32(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
Inst_DS__DS_MAX_I32(InFmt_DS *)
void execute(GPUDynInstPtr) override
void initiateAcc(GPUDynInstPtr) override
~Inst_VOP3__V_CMPX_GT_I16()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CVT_F64_F32(InFmt_VOP3 *)
Inst_VOPC__V_CMP_NLE_F64(InFmt_VOPC *)
uint8_t permute(uint64_t in_dword2x, uint32_t sel)
~Inst_VOPC__V_CMPX_LT_F32()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_SOP1__S_RFE_B64(InFmt_SOP1 *)
~Inst_VOP3__V_MAD_LEGACY_F32()
void execute(GPUDynInstPtr) override
~Inst_MIMG__IMAGE_ATOMIC_OR()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void completeAcc(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP1__V_TRUNC_F16(InFmt_VOP1 *)
void completeAcc(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMP_NE_I32()
Inst_VOP3__V_CMP_GE_F64(InFmt_VOP3 *)
Inst_VOPC__V_CMP_NEQ_F16(InFmt_VOPC *)
Inst_VOP2__V_MAX_I32(InFmt_VOP2 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMPX_GE_F64(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_DS__DS_DEC_SRC2_U64(InFmt_DS *)
std::vector< VectorRegisterFile * > vrf
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMPX_EQ_F64()
void completeAcc(GPUDynInstPtr) override
void completeAcc(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP3__V_TRIG_PREOP_F64(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
~Inst_MIMG__IMAGE_ATOMIC_CMPSWAP()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP3__V_SQRT_F16(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
~Inst_MIMG__IMAGE_GATHER4_L_O()
void execute(GPUDynInstPtr) override
Inst_MIMG__IMAGE_GATHER4_L_O(InFmt_MIMG *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP3__V_BFREV_B32(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_SOPK__S_SETREG_B32(InFmt_SOPK *)
~Inst_SOP1__S_BITSET0_B32()
~Inst_VOPC__V_CMPX_NE_I16()
~Inst_VOPC__V_CMPX_LE_U64()
Inst_VOPC__V_CMP_NGE_F16(InFmt_VOPC *)
Inst_DS__DS_APPEND(InFmt_DS *)
Inst_SMEM__S_DCACHE_INV_VOL(InFmt_SMEM *)
void execute(GPUDynInstPtr) override
Inst_MIMG__IMAGE_LOAD(InFmt_MIMG *)
void execute(GPUDynInstPtr) override
~Inst_VOPC__V_CMP_NE_U64()
~Inst_VOP3__V_CVT_I32_F64()
~Inst_FLAT__FLAT_LOAD_DWORD()
Inst_SOP1__S_AND_SAVEEXEC_B64(InFmt_SOP1 *)
void execute(GPUDynInstPtr) override
Inst_DS__DS_MAX_RTN_F64(InFmt_DS *)
Inst_VOP1__V_CEIL_F64(InFmt_VOP1 *)
~Inst_DS__DS_ORDERED_COUNT()
void execute(GPUDynInstPtr) override
Inst_SOP1__S_ANDN2_SAVEEXEC_B64(InFmt_SOP1 *)
Inst_DS__DS_ADD_RTN_F32(InFmt_DS *)
Inst_VOPC__V_CMPX_GT_U64(InFmt_VOPC *)
~Inst_VOP3__V_CVT_F32_UBYTE0()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOPC__V_CMPX_LT_F64()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void completeAcc(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_FLAT__FLAT_ATOMIC_AND()
void execute(GPUDynInstPtr) override
~Inst_VOPC__V_CMPX_NGT_F64()
void execute(GPUDynInstPtr) override
Inst_VOP3__V_INTERP_P1LL_F16(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_FRACT_F16()
~Inst_VOP3__V_CMPX_NEQ_F64()
Inst_MIMG__IMAGE_SAMPLE_C_CD(InFmt_MIMG *)
Inst_FLAT__FLAT_LOAD_UBYTE(InFmt_FLAT *)
~Inst_SMEM__S_DCACHE_WB_VOL()
Inst_VOPC__V_CMPX_NEQ_F64(InFmt_VOPC *)
void execute(GPUDynInstPtr) override
~Inst_DS__DS_MAX_SRC2_F64()
Inst_VOP3__V_OR_B32(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
~Inst_MIMG__IMAGE_GATHER4_C_B_CL_O()
~Inst_DS__DS_MIN_SRC2_I32()
~Inst_VOP1__V_CVT_U32_F64()
void execute(GPUDynInstPtr) override
~Inst_MIMG__IMAGE_SAMPLE_O()
~Inst_MUBUF__BUFFER_ATOMIC_DEC_X2()
~Inst_SMEM__S_BUFFER_LOAD_DWORD()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP1__V_FFBL_B32(InFmt_VOP1 *)
Inst_VOP3__V_CMPX_NLG_F16(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void completeAcc(GPUDynInstPtr) override
Inst_VOP3__V_CVT_PKNORM_U16_F32(InFmt_VOP3 *)
Inst_MIMG__IMAGE_SAMPLE_C_CL_O(InFmt_MIMG *)
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMP_NEQ_F16(InFmt_VOP3 *)
Inst_DS__DS_RSUB_RTN_U64(InFmt_DS *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_SOPC__S_CMP_LG_I32(InFmt_SOPC *)
~Inst_VOP3__V_CMP_LE_F64()
Inst_VOPC__V_CMPX_U_F32(InFmt_VOPC *)
~Inst_VOP2__V_MADAK_F16()
void execute(GPUDynInstPtr) override
Inst_VOP1__V_RCP_F16(InFmt_VOP1 *)
void execute(GPUDynInstPtr) override
void completeAcc(GPUDynInstPtr) override
~Inst_SOP1__S_ORN2_SAVEEXEC_B64()
void execute(GPUDynInstPtr) override
void completeAcc(GPUDynInstPtr) override
Inst_VOP3__V_CMP_T_I16(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOPC__V_CMPX_NGE_F64(InFmt_VOPC *)
~Inst_VOP3__V_CMP_LG_F16()
Inst_SOPK__S_CMPK_EQ_I32(InFmt_SOPK *)
Inst_FLAT__FLAT_ATOMIC_SMAX_X2(InFmt_FLAT *)
Inst_MIMG__IMAGE_GATHER4_C_L(InFmt_MIMG *)
Inst_VOP3__V_CMPX_F_U64(InFmt_VOP3 *)
~Inst_DS__DS_OR_SRC2_B64()
~Inst_FLAT__FLAT_ATOMIC_CMPSWAP()
void execute(GPUDynInstPtr) override
Inst_VOP3__V_FREXP_MANT_F32(InFmt_VOP3 *)
~Inst_VOP3__V_CMPX_F_U16()
~Inst_DS__DS_INC_SRC2_U32()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void completeAcc(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_SOP1__S_FLBIT_I32_B64(InFmt_SOP1 *)
~Inst_VOP3__V_CMP_TRU_F32()
~Inst_VOP3__V_CVT_F64_F32()
void completeAcc(GPUDynInstPtr) override
~Inst_VOP3__V_INTERP_MOV_F32()
void execute(GPUDynInstPtr) override
Inst_DS__DS_ADD_U64(InFmt_DS *)
Inst_VOP3__V_CMP_NLG_F32(InFmt_VOP3 *)
Inst_FLAT__FLAT_ATOMIC_SUB(InFmt_FLAT *)
~Inst_VOP3__V_CMPX_T_I64()
Inst_MUBUF__BUFFER_STORE_DWORDX2(InFmt_MUBUF *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP3__V_MIN_F64(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
~Inst_VOPC__V_CMPX_NGE_F16()
void execute(GPUDynInstPtr) override
~Inst_FLAT__FLAT_STORE_SHORT()
Inst_VOP1__V_LOG_F32(InFmt_VOP1 *)
Inst_VOP3__V_MAX3_I32(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMP_GE_I32()
~Inst_DS__DS_GWS_SEMA_P()
void execute(GPUDynInstPtr) override
Inst_VOP2__V_SUBREV_F32(InFmt_VOP2 *)
Inst_MIMG__IMAGE_GATHER4_C_LZ(InFmt_MIMG *)
Inst_VOPC__V_CMPX_NLG_F16(InFmt_VOPC *)
~Inst_VOP3__V_CVT_PKNORM_U16_F32()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_MIMG__IMAGE_STORE(InFmt_MIMG *)
Inst_VOP3__V_CMP_GE_U64(InFmt_VOP3 *)
~Inst_VOP3__V_CMPX_NGT_F64()
Inst_VOPC__V_CMP_LE_I16(InFmt_VOPC *)
~Inst_VOP3__V_CMP_LT_I64()
Inst_SOP1__S_NOT_B64(InFmt_SOP1 *)
~Inst_DS__DS_WRITE2ST64_B64()
Inst_SMEM__S_LOAD_DWORDX8(InFmt_SMEM *)
void execute(GPUDynInstPtr) override
Inst_VOP3__V_MIN_U16(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMPX_EQ_I32(InFmt_VOP3 *)
~Inst_VOPC__V_CMPX_LE_I16()
~Inst_VOP3__V_CVT_U32_F64()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_DS__DS_WRITE2ST64_B32()
void execute(GPUDynInstPtr) override
void initiateAcc(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP3__V_SUBREV_F32(InFmt_VOP3 *)
Inst_MIMG__IMAGE_GATHER4_C_B_CL(InFmt_MIMG *)
Inst_VOPC__V_CMPX_GE_U16(InFmt_VOPC *)
Inst_VOP3__V_MQSAD_U32_U8(InFmt_VOP3 *)
~Inst_SOPC__S_BITCMP0_B64()
~Inst_VOP3__V_CMP_NLE_F32()
Inst_VOP1__V_CLREXCP(InFmt_VOP1 *)
~Inst_VOP3__V_CMP_GT_I32()
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMPX_O_F64(InFmt_VOP3 *)
Inst_SOP1__S_SETPC_B64(InFmt_SOP1 *)
~Inst_MUBUF__BUFFER_LOAD_DWORDX3()
Inst_VOPC__V_CMPX_NGE_F16(InFmt_VOPC *)
void execute(GPUDynInstPtr) override
Inst_SOPP__S_CBRANCH_CDBGSYS_OR_USER(InFmt_SOPP *)
void execute(GPUDynInstPtr) override
Inst_SOP2__S_BFM_B64(InFmt_SOP2 *)
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMPX_U_F32()
void execute(GPUDynInstPtr) override
Inst_DS__DS_WRITE2ST64_B64(InFmt_DS *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMP_EQ_F64()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void releaseBarrier(int bar_id)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOPC__V_CMPX_GE_I16(InFmt_VOPC *)
Inst_DS__DS_READ2ST64_B64(InFmt_DS *)
~Inst_VOP2__V_SUBBREV_U32()
Inst_VOP1__V_RNDNE_F32(InFmt_VOP1 *)
~Inst_VOPC__V_CMPX_GT_F64()
Inst_VOP1__V_MOV_FED_B32(InFmt_VOP1 *)
void execute(GPUDynInstPtr) override
Inst_DS__DS_INC_U64(InFmt_DS *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMPX_NE_U64(InFmt_VOP3 *)
Inst_VOP2__V_SUBBREV_U32(InFmt_VOP2 *)
Inst_DS__DS_MAX_RTN_U32(InFmt_DS *)
~Inst_VOP3__V_CMPX_LG_F16()
Inst_VOPC__V_CMP_LE_F32(InFmt_VOPC *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMPX_EQ_I64()
Inst_FLAT__FLAT_ATOMIC_SMAX(InFmt_FLAT *)
Inst_VOP3__V_CMPX_LE_U16(InFmt_VOP3 *)
~Inst_SOP1__S_BCNT0_I32_B64()
void initiateAcc(GPUDynInstPtr) override
~Inst_VOP3__V_CMPX_NGT_F16()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMP_NE_I16()
~Inst_VOPC__V_CMPX_O_F64()
FetchUnit & fetchUnit(int simdId)
void initiateAcc(GPUDynInstPtr) override
Inst_VOPC__V_CMP_GT_U32(InFmt_VOPC *)
void execute(GPUDynInstPtr) override
~Inst_MIMG__IMAGE_GATHER4_B_CL()
void execute(GPUDynInstPtr) override
Inst_DS__DS_WRITE2ST64_B32(InFmt_DS *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMP_F_U16()
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMP_LT_U16(InFmt_VOP3 *)
~Inst_VOP3__V_CMPX_NEQ_F16()
Inst_VOPC__V_CMPX_NGT_F32(InFmt_VOPC *)
~Inst_MIMG__IMAGE_GATHER4_B()
Inst_SOP2__S_ADD_I32(InFmt_SOP2 *)
~Inst_VOP3__V_CMPX_NLG_F32()
Inst_VOPC__V_CMP_O_F32(InFmt_VOPC *)
~Inst_MIMG__IMAGE_ATOMIC_SMAX()
Inst_SMEM__S_DCACHE_INV(InFmt_SMEM *)
void validateRequestCounters()
Inst_VOP1__V_CVT_F64_I32(InFmt_VOP1 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_DS__DS_DEC_U32(InFmt_DS *)
~Inst_DS__DS_ADD_RTN_F32()
~Inst_SOPP__S_SENDMSGHALT()
Inst_VOPC__V_CMPX_LT_F16(InFmt_VOPC *)
~Inst_VOP3__V_SUBBREV_U32()
~Inst_VOPC__V_CMP_LE_I64()
~Inst_VOPC__V_CMPX_F_U32()
~Inst_VOP3__V_CVT_PK_U8_F32()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOP1__V_EXP_LEGACY_F32()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_SOP1__S_BCNT1_I32_B64()
Inst_VOPC__V_CMP_T_U32(InFmt_VOPC *)
void execute(GPUDynInstPtr) override
Inst_DS__DS_OR_B32(InFmt_DS *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMP_CLASS_F64()
Inst_DS__DS_WRXCHG2ST64_RTN_B64(InFmt_DS *)
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMPX_NGE_F16(InFmt_VOP3 *)
Inst_VOPC__V_CMPX_NLG_F32(InFmt_VOPC *)
void execute(GPUDynInstPtr) override
Inst_VOPC__V_CMP_NLT_F64(InFmt_VOPC *)
Inst_DS__DS_WRITE_B96(InFmt_DS *)
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_LSHLREV_B16()
void execute(GPUDynInstPtr) override
~Inst_DS__DS_AND_RTN_B32()
Inst_FLAT__FLAT_ATOMIC_SUB_X2(InFmt_FLAT *)
~Inst_FLAT__FLAT_LOAD_SSHORT()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_SOP2__S_NAND_B64(InFmt_SOP2 *)
Inst_DS__DS_CMPST_RTN_F32(InFmt_DS *)
void initiateAcc(GPUDynInstPtr) override
~Inst_MIMG__IMAGE_SAMPLE_CD()
void execute(GPUDynInstPtr) override
Inst_VOPC__V_CMP_GE_U64(InFmt_VOPC *)
~Inst_SOP1__S_XOR_SAVEEXEC_B64()
Inst_DS__DS_MIN_I64(InFmt_DS *)
~Inst_VOP3__V_CMP_U_F64()
~Inst_VOPC__V_CMPX_TRU_F64()
~Inst_VOP3__V_CMPX_GE_I64()
void execute(GPUDynInstPtr) override
Inst_VOPC__V_CMP_LT_F32(InFmt_VOPC *)
void initiateAcc(GPUDynInstPtr) override
Inst_SMEM__S_BUFFER_STORE_DWORDX4(InFmt_SMEM *)
Inst_VOPC__V_CMP_GE_U32(InFmt_VOPC *)
~Inst_VOPC__V_CMPX_NLG_F16()
void execute(GPUDynInstPtr) override
~Inst_VOP2__V_CNDMASK_B32()
~Inst_VOPC__V_CMPX_NLE_F64()
Inst_VOPC__V_CMPX_F_I16(InFmt_VOPC *)
Inst_SOP2__S_BFE_I32(InFmt_SOP2 *)
~Inst_VOP3__V_CMPX_NLT_F16()
~Inst_VOPC__V_CMP_T_U16()
~Inst_VOPC__V_CMPX_LT_F16()
void execute(GPUDynInstPtr) override
void completeAcc(GPUDynInstPtr) override
~Inst_VOP3__V_CMP_NEQ_F64()
Inst_VOP3__V_SIN_F16(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
~Inst_VOPC__V_CMPX_T_I64()
Inst_VOPC__V_CMPX_NGE_F32(InFmt_VOPC *)
Inst_SOPP__S_WAKEUP(InFmt_SOPP *)
void execute(GPUDynInstPtr) override
~Inst_VOPC__V_CMP_NLG_F16()
~Inst_VOP3__V_LSHRREV_B16()
~Inst_VOP1__V_CVT_I32_F32()
~Inst_VOPC__V_CMP_T_I16()
~Inst_VOPC__V_CMP_NLT_F64()
~Inst_VOP3__V_CNDMASK_B32()
void execute(GPUDynInstPtr) override
Inst_DS__DS_MSKOR_B32(InFmt_DS *)
void execute(GPUDynInstPtr) override
Inst_VOP2__V_MAX_F16(InFmt_VOP2 *)
void execute(GPUDynInstPtr) override
Inst_VOP3__V_DIV_SCALE_F64(InFmt_VOP3_SDST_ENC *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP2__V_MIN_F16(InFmt_VOP2 *)
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMPX_GE_I16(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMP_F_U64()
~Inst_VOP3__V_CMPX_LT_U64()
Inst_DS__DS_MAX_SRC2_U64(InFmt_DS *)
Inst_VOP3__V_CMPX_F_F64(InFmt_VOP3 *)
~Inst_VOP3__V_CMPX_EQ_U16()
Inst_VOP3__V_CMPX_EQ_U16(InFmt_VOP3 *)
Inst_VOP1__V_COS_F16(InFmt_VOP1 *)
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMP_GE_I16()
Inst_VOPC__V_CMP_F_U32(InFmt_VOPC *)
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMPX_LE_I16(InFmt_VOP3 *)
Inst_VOP3__V_MAD_I32_I24(InFmt_VOP3 *)
~Inst_VOP3__V_CMPX_CLASS_F16()
void execute(GPUDynInstPtr) override
~Inst_VOPC__V_CMP_NEQ_F16()
void execute(GPUDynInstPtr) override
~Inst_VOPC__V_CMP_U_F64()
void execute(GPUDynInstPtr) override
Inst_VOP3__V_LDEXP_F32(InFmt_VOP3 *)
~Inst_VOP3__V_CMP_F_F64()
~Inst_SMEM__S_LOAD_DWORDX8()
~Inst_VOPC__V_CMP_NLG_F32()
Inst_VOP3__V_ADD_F16(InFmt_VOP3 *)
~Inst_MUBUF__BUFFER_LOAD_DWORDX2()
~Inst_DS__DS_MSKOR_RTN_B32()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Read 2 dwords from scalar data cache.
~Inst_MIMG__IMAGE_STORE_MIP()
Inst_SMEM__S_BUFFER_LOAD_DWORDX16(InFmt_SMEM *)
Inst_SOP1__S_XNOR_SAVEEXEC_B64(InFmt_SOP1 *)
Inst_SOP2__S_NOR_B64(InFmt_SOP2 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP2__V_ADD_F32(InFmt_VOP2 *)
void execute(GPUDynInstPtr) override
Inst_DS__DS_ADD_F32(InFmt_DS *)
Inst_SOPP__S_SENDMSGHALT(InFmt_SOPP *)
void execute(GPUDynInstPtr) override
Inst_MUBUF__BUFFER_ATOMIC_SUB_X2(InFmt_MUBUF *)
void execute(GPUDynInstPtr) override
Inst_DS__DS_MAX_SRC2_F32(InFmt_DS *)
Inst_VOP3__V_MBCNT_LO_U32_B32(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
Inst_VOP2__V_MUL_I32_I24(InFmt_VOP2 *)
~Inst_VOP3__V_CMPX_LE_I16()
void completeAcc(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP3__V_SAD_U16(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMPX_T_U64(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
~Inst_VOP1__V_FREXP_EXP_I16_F16()
Inst_SOPP__S_BRANCH(InFmt_SOPP *)
Inst_VOPC__V_CMPX_LE_U64(InFmt_VOPC *)
Inst_VOP2__V_ADDC_U32(InFmt_VOP2 *)
~Inst_SOPC__S_CMP_EQ_U32()
Inst_VOPC__V_CMPX_NGT_F64(InFmt_VOPC *)
~Inst_VOP3__V_CMPX_NLE_F64()
~Inst_DS__DS_OR_RTN_B64()
Inst_FLAT__FLAT_ATOMIC_OR_X2(InFmt_FLAT *)
Inst_VOPC__V_CMP_NE_U32(InFmt_VOPC *)
Inst_VOP1__V_CVT_F32_U32(InFmt_VOP1 *)
Inst_MUBUF__BUFFER_LOAD_SSHORT(InFmt_MUBUF *)
void execute(GPUDynInstPtr) override
void completeAcc(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_SOPP__S_SET_GPR_IDX_MODE()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMPX_LT_F32(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOPC__V_CMP_F_I64(InFmt_VOPC *)
void execute(GPUDynInstPtr) override
Inst_DS__DS_OR_RTN_B64(InFmt_DS *)
void execute(GPUDynInstPtr) override
uint64_t Addr
Address type This will probably be moved somewhere else in the near future.
~Inst_SMEM__S_STORE_DWORD()
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMPX_U_F64()
Inst_VOPC__V_CMPX_EQ_I16(InFmt_VOPC *)
~Inst_VOP3__V_CVT_I16_F16()
Inst_VOP3__V_CMPX_GT_I16(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void initiateAcc(GPUDynInstPtr) override
~Inst_MIMG__IMAGE_LOAD_MIP()
Inst_VOP3__V_CMPX_TRU_F32(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
~Inst_MIMG__IMAGE_SAMPLE_C_B_CL()
Inst_VOP3__V_CMPX_O_F32(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_DS__DS_XOR_SRC2_B64(InFmt_DS *)
Inst_VOP2__V_MADMK_F16(InFmt_VOP2 *)
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMP_F_I16(InFmt_VOP3 *)
Inst_SOP2__S_BFE_I64(InFmt_SOP2 *)
Inst_VOPC__V_CMP_GT_U64(InFmt_VOPC *)
~Inst_VOP3__V_CVT_F64_U32()
~Inst_VOPC__V_CMP_LT_U64()
void execute(GPUDynInstPtr) override
~Inst_SOPC__S_CMP_LT_U32()
Inst_SOP2__S_ASHR_I64(InFmt_SOP2 *)
~Inst_MUBUF__BUFFER_ATOMIC_UMAX()
Inst_MIMG__IMAGE_ATOMIC_SUB(InFmt_MIMG *)
void execute(GPUDynInstPtr) override
~Inst_MIMG__IMAGE_SAMPLE_LZ_O()
~Inst_VOP3__V_CMPX_GT_U32()
Inst_VOPC__V_CMP_EQ_U32(InFmt_VOPC *)
Inst_DS__DS_INC_RTN_U32(InFmt_DS *)
void initiateAcc(GPUDynInstPtr) override
Inst_DS__DS_SUB_SRC2_U64(InFmt_DS *)
void execute(GPUDynInstPtr) override
Inst_VOPC__V_CMPX_EQ_U16(InFmt_VOPC *)
void execute(GPUDynInstPtr) override
Inst_VOPC__V_CMP_GT_I64(InFmt_VOPC *)
Inst_SOPP__S_SENDMSG(InFmt_SOPP *)
Inst_MIMG__IMAGE_ATOMIC_SMAX(InFmt_MIMG *)
~Inst_MUBUF__BUFFER_ATOMIC_SWAP()
Inst_FLAT__FLAT_STORE_BYTE(InFmt_FLAT *)
Inst_VOP1__V_FLOOR_F16(InFmt_VOP1 *)
Inst_MIMG__IMAGE_SAMPLE_B_O(InFmt_MIMG *)
Inst_VOP3__V_CMP_LE_F32(InFmt_VOP3 *)
~Inst_DS__DS_WRXCHG2_RTN_B64()
Inst_MUBUF__BUFFER_STORE_DWORDX3(InFmt_MUBUF *)
void initiateAcc(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP3__V_FLOOR_F16(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
~Inst_VOPC__V_CMPX_NE_I64()
ScalarRegI32 countZeroBitsMsb(T val)
void execute(GPUDynInstPtr) override
~Inst_DS__DS_MAX_RTN_I64()
Inst_VOP3__V_MAX_F64(InFmt_VOP3 *)
Inst_VOPC__V_CMP_LE_I32(InFmt_VOPC *)
void readSrc()
certain vector operands can read from the vrf/srf or constants.
Inst_VOP3__V_CMP_LE_F16(InFmt_VOP3 *)
~Inst_FLAT__FLAT_ATOMIC_SMAX_X2()
void initiateAcc(GPUDynInstPtr) override
void initiateAcc(GPUDynInstPtr) override
Inst_SMEM__S_LOAD_DWORDX16(InFmt_SMEM *)
~Inst_MIMG__IMAGE_STORE()
void execute(GPUDynInstPtr) override
Inst_VOP3__V_ADD_F32(InFmt_VOP3 *)
Inst_DS__DS_MIN_RTN_U32(InFmt_DS *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Synchronize waves within a workgroup.
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CVT_F64_I32(InFmt_VOP3 *)
Inst_VOP3__V_CMP_GE_I32(InFmt_VOP3 *)
std::enable_if_t< Condition, void > setBit(int bit, int bit_val)
bit access to scalar data.
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOPC__V_CMP_LT_I64(InFmt_VOPC *)
Inst_VOP1__V_CVT_F32_UBYTE0(InFmt_VOP1 *)
Inst_SOPC__S_CMP_GT_I32(InFmt_SOPC *)
~Inst_VOP3__V_MAD_I32_I24()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOPC__V_CMPX_GT_F16()
void execute(GPUDynInstPtr) override
~Inst_SMEM__S_LOAD_DWORDX16()
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMP_NGT_F32(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP2__V_MAC_F32(InFmt_VOP2 *)
~Inst_VOP2__V_MUL_LEGACY_F32()
~Inst_VOPC__V_CMPX_NLT_F64()
Inst_VOPC__V_CMP_O_F64(InFmt_VOPC *)
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMPX_NGT_F64(InFmt_VOP3 *)
void initiateAcc(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_MIMG__IMAGE_GATHER4_CL()
~Inst_VOPC__V_CMP_GT_I16()
~Inst_VOPC__V_CMP_LT_F16()
Inst_SOP1__S_BITSET0_B64(InFmt_SOP1 *)
Inst_VOP3__V_RCP_F64(InFmt_VOP3 *)
void completeAcc(GPUDynInstPtr) override
Inst_VOPC__V_CMP_LT_U64(InFmt_VOPC *)
Inst_VOPC__V_CMPX_LG_F16(InFmt_VOPC *)
Inst_DS__DS_RSUB_SRC2_U32(InFmt_DS *)
Inst_DS__DS_WRXCHG_RTN_B64(InFmt_DS *)
Inst_VOP3__V_EXP_F16(InFmt_VOP3 *)
~Inst_VOP3__V_DIV_FIXUP_F32()
~Inst_VOPC__V_CMPX_F_U16()
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMPX_LT_I32()
Inst_VOPC__V_CMP_NEQ_F64(InFmt_VOPC *)
Inst_VOP1__V_RSQ_F64(InFmt_VOP1 *)
void execute(GPUDynInstPtr) override
std::unordered_map< int, uint64_t > rawDist
~Inst_SOP2__S_CSELECT_B64()
Inst_VOP3__V_SAD_U8(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void decLGKMInstsIssued()
int numAtBarrier(int bar_id)
Inst_DS__DS_WRXCHG2_RTN_B64(InFmt_DS *)
~Inst_VOP3__V_LDEXP_F16()
void execute(GPUDynInstPtr) override
~Inst_MIMG__IMAGE_GATHER4_C_L_O()
void execute(GPUDynInstPtr) override
void initiateAcc(GPUDynInstPtr) override
~Inst_DS__DS_MSKOR_RTN_B64()
~Inst_DS__DS_MIN_RTN_I64()
Inst_SOP1__S_BCNT0_I32_B32(InFmt_SOP1 *)
~Inst_VOP3__V_CVT_F32_UBYTE3()
Inst_DS__DS_ADD_RTN_U64(InFmt_DS *)
Inst_DS__DS_NOP(InFmt_DS *)
~Inst_VOPC__V_CMPX_O_F16()
void execute(GPUDynInstPtr) override
~Inst_VOPC__V_CMPX_NE_I32()
~Inst_VOPC__V_CMP_F_I64()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMPX_GE_I32(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
Inst_VOPC__V_CMP_LT_I32(InFmt_VOPC *)
~Inst_SOPK__S_SETREG_IMM32_B32()
Inst_SOP1__S_MOV_FED_B32(InFmt_SOP1 *)
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMP_T_I64()
Inst_VOP3__V_CEIL_F64(InFmt_VOP3 *)
Inst_VOP3__V_CMPX_NLE_F32(InFmt_VOP3 *)
Inst_VOP2__V_MUL_HI_I32_I24(InFmt_VOP2 *)
Inst_VOP1__V_CVT_F32_F16(InFmt_VOP1 *)
Inst_MIMG__IMAGE_GATHER4_LZ_O(InFmt_MIMG *)
Inst_VOP3__V_CMP_GT_I64(InFmt_VOP3 *)
Inst_VOP3__V_MUL_HI_U32(InFmt_VOP3 *)
Inst_VOPC__V_CMPX_LT_U64(InFmt_VOPC *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CUBEMA_F32(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_DS__DS_GWS_SEMA_RELEASE_ALL()
~Inst_VOP3__V_LDEXP_F64()
Inst_SOP1__S_FF1_I32_B64(InFmt_SOP1 *)
~Inst_MIMG__IMAGE_SAMPLE_C_L()
~Inst_VOP3__V_CMP_NE_U64()
Inst_DS__DS_MIN_SRC2_U64(InFmt_DS *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_MIMG__IMAGE_ATOMIC_SWAP()
Inst_DS__DS_MIN_SRC2_I32(InFmt_DS *)
Inst_VOP3__V_FREXP_EXP_I32_F64(InFmt_VOP3 *)
Inst_DS__DS_WRXCHG_RTN_B32(InFmt_DS *)
void execute(GPUDynInstPtr) override
Inst_SOPK__S_CMPK_LG_U32(InFmt_SOPK *)
void execute(GPUDynInstPtr) override
~Inst_SOPK__S_CMOVK_I32()
Inst_VOP3__V_CMP_T_U64(InFmt_VOP3 *)
void initiateAcc(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMPX_NLE_F64(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP3__V_RNDNE_F32(InFmt_VOP3 *)
Inst_VOPC__V_CMPX_GT_U16(InFmt_VOPC *)
Inst_FLAT__FLAT_LOAD_DWORDX3(InFmt_FLAT *)
Inst_VOP3__V_SUBB_U32(InFmt_VOP3_SDST_ENC *)
void execute(GPUDynInstPtr) override
Inst_MIMG__IMAGE_GATHER4_LZ(InFmt_MIMG *)
Inst_DS__DS_ADD_RTN_U32(InFmt_DS *)
void execute(GPUDynInstPtr) override
~Inst_DS__DS_PERMUTE_B32()
Inst_MUBUF__BUFFER_STORE_DWORD(InFmt_MUBUF *)
~Inst_VOPC__V_CMPX_NE_U64()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOPC__V_CMPX_GE_F64()
Inst_MUBUF__BUFFER_LOAD_DWORDX3(InFmt_MUBUF *)
Inst_VOP3__V_MIN_U32(InFmt_VOP3 *)
Inst_SOPK__S_CMPK_GT_U32(InFmt_SOPK *)
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMPX_T_U64()
~Inst_VOP3__V_CVT_F16_I16()
~Inst_VOP2__V_MADAK_F32()
Inst_VOP3__V_DIV_FMAS_F32(InFmt_VOP3 *)
Inst_VOP3__V_ASHRREV_I16(InFmt_VOP3 *)
Inst_VOP2__V_OR_B32(InFmt_VOP2 *)
void execute(GPUDynInstPtr) override
~Inst_SOP2__S_ANDN2_B64()
void execute(GPUDynInstPtr) override
Inst_DS__DS_MAX_U64(InFmt_DS *)
void execute(GPUDynInstPtr) override
~Inst_MUBUF__BUFFER_ATOMIC_UMIN_X2()
void execute(GPUDynInstPtr) override
~Inst_VOPC__V_CMPX_U_F64()
Inst_VINTRP__V_INTERP_P2_F32(InFmt_VINTRP *)
Inst_VOPC__V_CMP_LG_F16(InFmt_VOPC *)
~Inst_FLAT__FLAT_ATOMIC_INC()
void execute(GPUDynInstPtr) override
~Inst_VOPC__V_CMPX_GT_U16()
Inst_MUBUF__BUFFER_ATOMIC_OR_X2(InFmt_MUBUF *)
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CVT_F64_I32()
void execute(GPUDynInstPtr) override
~Inst_VOPC__V_CMP_NE_I32()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP3__V_BFM_B32(InFmt_VOP3 *)
Inst_VOP1__V_FRACT_F64(InFmt_VOP1 *)
Inst_VOP3__V_LSHRREV_B64(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
Inst_SOPK__S_ADDK_I32(InFmt_SOPK *)
Inst_SOP2__S_CSELECT_B32(InFmt_SOP2 *)
~Inst_SOPC__S_CMP_GE_I32()
~Inst_VOP3__V_FREXP_EXP_I16_F16()
~Inst_DS__DS_DEC_RTN_U32()
void execute(GPUDynInstPtr) override
~Inst_VOPC__V_CMPX_LG_F16()
void execute(GPUDynInstPtr) override
~Inst_MUBUF__BUFFER_ATOMIC_SMIN()
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMP_NEQ_F32()
Inst_VOP3__V_CMP_GT_F16(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void initiateAcc(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_MIMG__IMAGE_ATOMIC_UMAX()
Inst_VOP3__V_EXP_LEGACY_F32(InFmt_VOP3 *)
Inst_DS__DS_SUB_U64(InFmt_DS *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_MIMG__IMAGE_SAMPLE_C_CL_O()
void execute(GPUDynInstPtr) override
~Inst_VOPC__V_CMPX_EQ_I64()
Inst_VOP3__V_SUB_U16(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
~Inst_VOPC__V_CMP_U_F32()
void execute(GPUDynInstPtr) override
Inst_SMEM__S_LOAD_DWORD(InFmt_SMEM *)
Inst_MIMG__IMAGE_GATHER4_C_CL_O(InFmt_MIMG *)
Inst_VOP3__V_INTERP_P2_F16(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void completeAcc(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
VecElemU32 muladd(VecElemU64 &dst, VecElemU32 val_0, VecElemU32 val_1, VecElemU64 val_2)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_MIMG__IMAGE_SAMPLE_C_O()
Inst_VOP3__V_LOG_LEGACY_F32(InFmt_VOP3 *)
Inst_VOP3__V_SIN_F32(InFmt_VOP3 *)
Inst_MUBUF__BUFFER_STORE_BYTE(InFmt_MUBUF *)
Inst_VOP1__V_FREXP_EXP_I32_F64(InFmt_VOP1 *)
void execute(GPUDynInstPtr) override
~Inst_VOPC__V_CMPX_GT_U64()
void execute(GPUDynInstPtr) override
Inst_VOP2__V_MUL_U32_U24(InFmt_VOP2 *)
void execute(GPUDynInstPtr) override
void initiateAcc(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOPC__V_CMP_NLT_F32()
void execute(GPUDynInstPtr) override
void completeAcc(GPUDynInstPtr) override
Inst_VOP3__V_CMP_O_F16(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
Inst_MIMG__IMAGE_GATHER4_C_L_O(InFmt_MIMG *)
~Inst_VOP3__V_CMP_T_I32()
Inst_VOP2__V_SUB_U32(InFmt_VOP2 *)
~Inst_VOP3__V_CMP_NGE_F32()
void execute(GPUDynInstPtr) override
void completeAcc(GPUDynInstPtr) override
~Inst_VOPC__V_CMPX_GE_U32()
~Inst_FLAT__FLAT_LOAD_DWORDX4()
Inst_SOP2__S_ANDN2_B64(InFmt_SOP2 *)
void execute(GPUDynInstPtr) override
Inst_SOPK__S_SETREG_IMM32_B32(InFmt_SOPK *)
~Inst_VOPC__V_CMPX_NEQ_F64()
void execute(GPUDynInstPtr) override
Inst_MIMG__IMAGE_SAMPLE_C_CD_O(InFmt_MIMG *)
void completeAcc(GPUDynInstPtr) override
Inst_MIMG__IMAGE_ATOMIC_DEC(InFmt_MIMG *)
~Inst_VOP3__V_CMP_LT_I16()
#define panic_if(cond,...)
Conditional panic macro that checks the supplied condition and only panics if the condition is true a...
void execute(GPUDynInstPtr) override
void initiateAcc(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_SOPP__S_NOP(InFmt_SOPP *)
Inst_VOP3__V_CUBESC_F32(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void completeAcc(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP1__V_SQRT_F32(InFmt_VOP1 *)
~Inst_VOP3__V_CMPX_NGE_F16()
void execute(GPUDynInstPtr) override
Inst_SOP1__S_BCNT1_I32_B64(InFmt_SOP1 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_SOP1__S_QUADMASK_B64()
~Inst_VOPC__V_CMPX_GE_I64()
~Inst_MUBUF__BUFFER_ATOMIC_SUB()
Inst_VOPC__V_CMPX_GE_U64(InFmt_VOPC *)
~Inst_MIMG__IMAGE_GATHER4_C_L()
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMP_NGE_F16()
Inst_VOP3__V_FMA_F64(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void initiateAcc(GPUDynInstPtr) override
~Inst_MIMG__IMAGE_SAMPLE_B_O()
void execute(GPUDynInstPtr) override
int decreaseRefCounter(const uint32_t dispatchId, const uint32_t wgId)
decrease the reference count after making sure it is in the list give back this chunk if the ref coun...
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMPX_F_I16()
~Inst_VOPC__V_CMPX_EQ_U64()
Inst_VOP1__V_FREXP_MANT_F64(InFmt_VOP1 *)
~Inst_MIMG__IMAGE_GATHER4_C_B()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMP_U_F16(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOPC__V_CMPX_GT_U32(InFmt_VOPC *)
Inst_VOP3__V_CMPX_F_U16(InFmt_VOP3 *)
Inst_SMEM__S_BUFFER_STORE_DWORD(InFmt_SMEM *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMP_GE_F32()
void execute(GPUDynInstPtr) override
~Inst_VOP1__V_FRACT_F64()
Inst_SOPK__S_CMPK_EQ_U32(InFmt_SOPK *)
Inst_MIMG__IMAGE_SAMPLE_D_CL_O(InFmt_MIMG *)
~Inst_VOP3__V_SUBREV_F32()
void execute(GPUDynInstPtr) override
~Inst_MIMG__IMAGE_SAMPLE_CD_O()
Inst_VOP3__V_INTERP_MOV_F32(InFmt_VOP3 *)
~Inst_VOP3__V_CVT_FLR_I32_F32()
Inst_VOP3__V_FREXP_MANT_F64(InFmt_VOP3 *)
Inst_VOP3__V_CMP_LT_F64(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CVT_I32_F32()
Inst_VOP3__V_CMPX_F_U32(InFmt_VOP3 *)
void completeAcc(GPUDynInstPtr) override
~Inst_DS__DS_RSUB_RTN_U32()
void execute(GPUDynInstPtr) override
Inst_MIMG__IMAGE_SAMPLE_C_CD_CL_O(InFmt_MIMG *)
Inst_VOPC__V_CMPX_F_I32(InFmt_VOPC *)
void execute(GPUDynInstPtr) override
Inst_VOPC__V_CMPX_LE_U32(InFmt_VOPC *)
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMP_NLE_F16()
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMPX_NLG_F16()
Inst_VOP3__V_CMPX_F_I64(InFmt_VOP3 *)
~Inst_SOP1__S_SWAPPC_B64()
Inst_VOPC__V_CMPX_CLASS_F16(InFmt_VOPC *)
void execute(GPUDynInstPtr) override
Inst_DS__DS_MSKOR_RTN_B32(InFmt_DS *)
Inst_VOP3__V_CMP_U_F32(InFmt_VOP3 *)
void processSDWA_src(InFmt_VOP_SDWA sdwaInst, T &src0, T &origSrc0)
processSDWA_src is a helper function for implementing sub d-word addressing instructions for the src ...
Inst_SOPC__S_CMP_LG_U64(InFmt_SOPC *)
Inst_SOPP__S_WAITCNT(InFmt_SOPP *)
~Inst_VOP3__V_CVT_F32_F16()
void execute(GPUDynInstPtr) override
Inst_SOPC__S_BITCMP0_B32(InFmt_SOPC *)
void execute(GPUDynInstPtr) override
~Inst_MUBUF__BUFFER_ATOMIC_XOR()
Inst_VOPC__V_CMP_NGT_F16(InFmt_VOPC *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_SOPK__S_CMPK_LG_U32()
void execute(GPUDynInstPtr) override
Inst_VOP3__V_MUL_I32_I24(InFmt_VOP3 *)
Inst_FLAT__FLAT_ATOMIC_INC_X2(InFmt_FLAT *)
Inst_VOP3__V_CMP_F_F32(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMPX_F_U32()
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMP_GT_F16()
Inst_VOPC__V_CMPX_GE_I32(InFmt_VOPC *)
Inst_DS__DS_DEC_U64(InFmt_DS *)
void execute(GPUDynInstPtr) override
~Inst_DS__DS_SUB_RTN_U32()
~Inst_FLAT__FLAT_ATOMIC_DEC()
void execute(GPUDynInstPtr) override
void completeAcc(GPUDynInstPtr) override
Inst_MUBUF__BUFFER_ATOMIC_INC_X2(InFmt_MUBUF *)
Inst_MIMG__IMAGE_SAMPLE_CD_CL(InFmt_MIMG *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP3__V_MAX_F32(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMPX_NE_U64()
void completeAcc(GPUDynInstPtr) override
Inst_VOP3__V_CMP_EQ_I64(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Stats::Distribution readsPerWrite
Inst_VOPC__V_CMP_LG_F64(InFmt_VOPC *)
Inst_VOP3__V_LSHLREV_B16(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMP_NE_I16(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_MAD_U64_U32()
Inst_SOP1__S_BITSET0_B32(InFmt_SOP1 *)
~Inst_VOP3__V_CMP_F_F16()
void execute(GPUDynInstPtr) override
Inst_DS__DS_WRAP_RTN_B32(InFmt_DS *)
void execute(GPUDynInstPtr) override
Inst_DS__DS_MAX_SRC2_U32(InFmt_DS *)
~Inst_VOPC__V_CMPX_NEQ_F32()
void execute(GPUDynInstPtr) override
Inst_SOP1__S_NAND_SAVEEXEC_B64(InFmt_SOP1 *)
Inst_VOP2__V_SUBREV_U32(InFmt_VOP2 *)
Inst_DS__DS_CMPST_RTN_F64(InFmt_DS *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMPX_NLG_F64()
~Inst_VOPC__V_CMPX_F_F64()
Inst_MUBUF__BUFFER_ATOMIC_UMAX_X2(InFmt_MUBUF *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOPC__V_CMPX_LT_I16()
void completeAcc(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOPC__V_CMP_T_I32(InFmt_VOPC *)
~Inst_VOPC__V_CMP_TRU_F64()
~Inst_VOP3__V_CMPX_NGT_F32()
Inst_VOP3__V_MUL_HI_I32(InFmt_VOP3 *)
~Inst_VOP3__V_CMP_NLE_F64()
Inst_VOP3__V_CMPX_GT_U64(InFmt_VOP3 *)
Inst_VOPC__V_CMPX_GE_F64(InFmt_VOPC *)
~Inst_VOP1__V_CVT_OFF_F32_I4()
Inst_VOPC__V_CMPX_CLASS_F32(InFmt_VOPC *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_SOP2__S_OR_B32(InFmt_SOP2 *)
Inst_MIMG__IMAGE_ATOMIC_INC(InFmt_MIMG *)
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMP_GE_I16(InFmt_VOP3 *)
~Inst_VOP3__V_CMP_F_I32()
void execute(GPUDynInstPtr) override
~Inst_VOP1__V_FREXP_MANT_F32()
~Inst_VOPC__V_CMP_EQ_I16()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_SOPP__S_INCPERFLEVEL(InFmt_SOPP *)
Inst_DS__DS_WRITE_B16(InFmt_DS *)
Inst_VOP3__V_CMPX_EQ_I64(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
Inst_VOP3__V_LDEXP_F16(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void completeAcc(GPUDynInstPtr) override
Inst_MIMG__IMAGE_GATHER4_CL_O(InFmt_MIMG *)
Inst_VOP3__V_MUL_F64(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMP_TRU_F32(InFmt_VOP3 *)
~Inst_SOP1__S_OR_SAVEEXEC_B64()
Inst_VOP3__V_FRACT_F32(InFmt_VOP3 *)
~Inst_DS__DS_AND_SRC2_B32()
Inst_VOP3__V_CMPX_EQ_F64(InFmt_VOP3 *)
Inst_VOP3__V_CMP_O_F64(InFmt_VOP3 *)
Inst_VOP3__V_CVT_F32_F64(InFmt_VOP3 *)
void initiateAcc(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_DS__DS_ADD_RTN_U64()
~Inst_VOPC__V_CMPX_GE_I32()
~Inst_VOPC__V_CMPX_T_U64()
Inst_VOPC__V_CMP_NGT_F64(InFmt_VOPC *)
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMPX_NLT_F16(InFmt_VOP3 *)
Inst_VOP3__V_FRACT_F64(InFmt_VOP3 *)
~Inst_MUBUF__BUFFER_ATOMIC_SWAP_X2()
~Inst_VOP3__V_CVT_U32_F32()
Inst_VOP3__V_CMP_LE_I16(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOPC__V_CMP_NE_I64()
~Inst_VOP1__V_CVT_F16_I16()
~Inst_DS__DS_MIN_RTN_U64()
~Inst_MUBUF__BUFFER_LOAD_SBYTE()
Inst_SOPC__S_CMP_EQ_U64(InFmt_SOPC *)
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_DIV_SCALE_F32()
Inst_MIMG__IMAGE_SAMPLE_D_CL(InFmt_MIMG *)
void execute(GPUDynInstPtr) override
Inst_MUBUF__BUFFER_ATOMIC_DEC(InFmt_MUBUF *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMP_LE_I16()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMPX_O_F64()
Inst_VOP3__V_CMP_EQ_F32(InFmt_VOP3 *)
~Inst_SMEM__S_MEMREALTIME()
Inst_VOP3__V_CMP_NLE_F32(InFmt_VOP3 *)
Inst_MIMG__IMAGE_SAMPLE_C(InFmt_MIMG *)
Inst_FLAT__FLAT_ATOMIC_ADD(InFmt_FLAT *)
~Inst_VOP3__V_CMPX_NE_I64()
void execute(GPUDynInstPtr) override
void initiateAcc(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMPX_GT_F16()
void execute(GPUDynInstPtr) override
Inst_MIMG__IMAGE_SAMPLE_C_LZ(InFmt_MIMG *)
Inst_VOPC__V_CMPX_LE_I32(InFmt_VOPC *)
~Inst_DS__DS_ADD_RTN_U32()
~Inst_VOP3__V_EXP_LEGACY_F32()
~Inst_FLAT__FLAT_STORE_BYTE()
void execute(GPUDynInstPtr) override
~Inst_VOP1__V_FRACT_F16()
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMPX_LE_U64(InFmt_VOP3 *)
~Inst_SMEM__S_BUFFER_STORE_DWORDX2()
Inst_SOPC__S_CMP_LT_I32(InFmt_SOPC *)
void execute(GPUDynInstPtr) override
Inst_DS__DS_RSUB_U32(InFmt_DS *)
Inst_VOP3__V_CMP_LT_U32(InFmt_VOP3 *)
~Inst_SOP2__S_RFE_RESTORE_B64()
Inst_DS__DS_AND_SRC2_B32(InFmt_DS *)
Inst_VOP3__V_CVT_F32_I32(InFmt_VOP3 *)
~Inst_VOP3__V_READLANE_B32()
Inst_VOP3__V_ASHRREV_I64(InFmt_VOP3 *)
~Inst_VOP3__V_SUBREV_U32()
Inst_SOPK__S_CMPK_LE_U32(InFmt_SOPK *)
~Inst_VOPC__V_CMPX_GT_I32()
void execute(GPUDynInstPtr) override
Inst_VOP3__V_MUL_F16(InFmt_VOP3 *)
Inst_VOP3__V_CMPX_LT_I32(InFmt_VOP3 *)
Inst_SOP2__S_NOR_B32(InFmt_SOP2 *)
~Inst_VOP1__V_CVT_F32_F64()
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMPX_GT_I64()
~Inst_VOP3__V_CVT_PKRTZ_F16_F32()
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMPX_T_U16(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOPC__V_CMP_F_I16(InFmt_VOPC *)
void execute(GPUDynInstPtr) override
~Inst_DS__DS_WRXCHG_RTN_B32()
Inst_VOPC__V_CMP_F_F64(InFmt_VOPC *)
void execute(GPUDynInstPtr) override
~Inst_DS__DS_ADD_SRC2_U32()
Inst_VOP3__V_CVT_F64_U32(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CVT_F16_I16(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
Inst_VOPC__V_CMP_NEQ_F32(InFmt_VOPC *)
Inst_SOPP__S_BARRIER(InFmt_SOPP *)
void execute(GPUDynInstPtr) override
~Inst_VOPC__V_CMPX_U_F32()
Inst_VOPC__V_CMPX_LG_F64(InFmt_VOPC *)
~Inst_VOPC__V_CMPX_GT_F32()
void execute(GPUDynInstPtr) override
Inst_MIMG__IMAGE_GET_LOD(InFmt_MIMG *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void initiateAcc(GPUDynInstPtr) override
~Inst_DS__DS_AND_SRC2_B64()
Inst_VOP3__V_MAD_LEGACY_F32(InFmt_VOP3 *)
Inst_VOPC__V_CMPX_NLE_F64(InFmt_VOPC *)
Inst_VOPC__V_CMPX_F_F32(InFmt_VOPC *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOPC__V_CMP_GT_U64()
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMPX_LT_F16(InFmt_VOP3 *)
~Inst_VOP3__V_CMPX_T_U32()
~Inst_MUBUF__BUFFER_ATOMIC_UMIN()
~Inst_VOPC__V_CMPX_LT_I64()
~Inst_SMEM__S_BUFFER_STORE_DWORD()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOPC__V_CMP_LT_U32()
~Inst_MIMG__IMAGE_GATHER4_C_B_O()
~Inst_VOPC__V_CMPX_F_I32()
Inst_SOPP__S_SLEEP(InFmt_SOPP *)
Inst_VOPC__V_CMPX_T_U16(InFmt_VOPC *)
~Inst_VOPC__V_CMP_F_F16()
Inst_VOPC__V_CMP_CLASS_F16(InFmt_VOPC *)
void completeAcc(GPUDynInstPtr) override
~Inst_MIMG__IMAGE_SAMPLE_CL_O()
~Inst_FLAT__FLAT_ATOMIC_ADD_X2()
void execute(GPUDynInstPtr) override
~Inst_VOPC__V_CMPX_CLASS_F64()
Inst_VOP1__V_CVT_U16_F16(InFmt_VOP1 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP1__V_RNDNE_F64(InFmt_VOP1 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void initiateAcc(GPUDynInstPtr) override
~Inst_MIMG__IMAGE_SAMPLE_C_D()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_SOPK__S_CMOVK_I32(InFmt_SOPK *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP3__V_ADD_U32(InFmt_VOP3_SDST_ENC *)
Inst_SOPP__S_DECPERFLEVEL(InFmt_SOPP *)
Inst_VOPC__V_CMP_GE_U16(InFmt_VOPC *)
~Inst_DS__DS_MAX_SRC2_U32()
~Inst_SOPP__S_CBRANCH_CDBGSYS_OR_USER()
~Inst_MIMG__IMAGE_SAMPLE_C_D_CL()
Inst_DS__DS_GWS_INIT(InFmt_DS *)
~Inst_VOPC__V_CMP_EQ_F32()
Inst_VOP3__V_CMPX_GT_F16(InFmt_VOP3 *)
Inst_SOPC__S_CMP_LE_U32(InFmt_SOPC *)
Inst_VOPC__V_CMP_NLT_F16(InFmt_VOPC *)
~Inst_FLAT__FLAT_STORE_DWORDX2()
Inst_VOPC__V_CMP_T_U16(InFmt_VOPC *)
void execute(GPUDynInstPtr) override
std::shared_ptr< GPUDynInst > GPUDynInstPtr
Inst_MUBUF__BUFFER_LOAD_UBYTE(InFmt_MUBUF *)
~Inst_SOP1__S_MOVRELD_B64()
Inst_VOP1__V_CVT_U32_F64(InFmt_VOP1 *)
Inst_VOP1__V_CEIL_F16(InFmt_VOP1 *)
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMPX_LE_I64()
void completeAcc(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOPC__V_CMP_T_I64()
void execute(GPUDynInstPtr) override
~Inst_FLAT__FLAT_ATOMIC_SWAP()
void completeAcc(GPUDynInstPtr) override
~Inst_VOPC__V_CMP_F_I32()
Inst_DS__DS_OR_SRC2_B32(InFmt_DS *)
void execute(GPUDynInstPtr) override
Inst_VOP3__V_RSQ_F16(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
Inst_VOPC__V_CMPX_F_I64(InFmt_VOPC *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOPC__V_CMPX_U_F64(InFmt_VOPC *)
~Inst_SOPC__S_CMP_LE_U32()
~Inst_VOPC__V_CMPX_NGT_F32()
void sample(const U &v, int n=1)
Add a value to the distribtion n times.
Inst_DS__DS_XOR_B64(InFmt_DS *)
Inst_SOPC__S_SET_GPR_IDX_ON(InFmt_SOPC *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Cycles is a wrapper class for representing cycle counts, i.e.
Inst_MIMG__IMAGE_GATHER4_B_O(InFmt_MIMG *)
Inst_VOPC__V_CMP_T_U64(InFmt_VOPC *)
void execute(GPUDynInstPtr) override
Inst_SOP2__S_AND_B64(InFmt_SOP2 *)
void execute(GPUDynInstPtr) override
Inst_VOP1__V_FRACT_F32(InFmt_VOP1 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void initiateAcc(GPUDynInstPtr) override
Inst_MIMG__IMAGE_SAMPLE_C_L_O(InFmt_MIMG *)
~Inst_MIMG__IMAGE_STORE_PCK()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP1__V_FREXP_MANT_F16(InFmt_VOP1 *)
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMPX_GE_U64()
Inst_SOP1__S_CMOV_B64(InFmt_SOP1 *)
Bitfield< 31, 16 > selector
~Inst_SOP1__S_FF1_I32_B32()
void execute(GPUDynInstPtr) override
Inst_VOP2__V_XOR_B32(InFmt_VOP2 *)
void execute(GPUDynInstPtr) override
Stats::Scalar completedWfs
~Inst_SOPC__S_CMP_GT_U32()
void injectGlobalMemFence(GPUDynInstPtr gpuDynInst)
Inst_FLAT__FLAT_ATOMIC_UMIN_X2(InFmt_FLAT *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOPC__V_CMPX_GE_U64()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_SMEM__S_STORE_DWORDX2(InFmt_SMEM *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_MIMG__IMAGE_SAMPLE_C_CD_O()
~Inst_VOP3__V_CMP_LT_U32()
Inst_VOPC__V_CMP_NE_U16(InFmt_VOPC *)
~Inst_VOP3__V_CMPX_GT_F64()
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMPX_F_F32(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
std::deque< GPUDynInstPtr > instructionBuffer
~Inst_VOP3__V_CMPX_LT_U16()
void execute(GPUDynInstPtr) override
Inst_SOPP__S_CBRANCH_VCCZ(InFmt_SOPP *)
~Inst_VOP3__V_CMPX_NLT_F64()
Inst_SOP1__S_CMOV_B32(InFmt_SOP1 *)
void execute(GPUDynInstPtr) override
~Inst_MIMG__IMAGE_SAMPLE_C_CD()
void execute(GPUDynInstPtr) override
~Inst_DS__DS_AND_RTN_B64()
Inst_VOP3__V_MUL_HI_U32_U24(InFmt_VOP3 *)
Inst_VOP3__V_CMPX_EQ_F32(InFmt_VOP3 *)
Inst_SOPP__S_TTRACEDATA(InFmt_SOPP *)
Inst_VOP1__V_FREXP_MANT_F32(InFmt_VOP1 *)
~Inst_SOPC__S_BITCMP0_B32()
Inst_MIMG__IMAGE_GATHER4_B(InFmt_MIMG *)
constexpr T bits(T val, unsigned first, unsigned last)
Extract the bitfield from position 'first' to 'last' (inclusive) from 'val' and right justify it.
~Inst_VOPC__V_CMPX_GT_I16()
void execute(GPUDynInstPtr) override
void processSDWA_dst(InFmt_VOP_SDWA sdwaInst, T &dst, T &origDst)
processSDWA_dst is a helper function for implementing sub d-word addressing instructions for the dst ...
~Inst_VOP3__V_INTERP_P1_F32()
Inst_SOP2__S_MAX_I32(InFmt_SOP2 *)
Inst_VOP3__V_CMP_LE_I32(InFmt_VOP3 *)
Inst_VOP3__V_CMPX_U_F64(InFmt_VOP3 *)
Inst_SMEM__S_ATC_PROBE_BUFFER(InFmt_SMEM *)
Inst_SOPK__S_GETREG_B32(InFmt_SOPK *)
constexpr int findLsbSet(uint64_t val)
Returns the bit position of the LSB that is set in the input.
~Inst_MIMG__IMAGE_ATOMIC_ADD()
~Inst_VOP3__V_CMP_GE_I64()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_MUL_LEGACY_F32()
void completeAcc(GPUDynInstPtr) override
~Inst_SOP1__S_NAND_SAVEEXEC_B64()
Inst_VOP3__V_CMPX_LT_U64(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_SOP2__S_ADDC_U32(InFmt_SOP2 *)
Inst_MIMG__IMAGE_STORE_MIP_PCK(InFmt_MIMG *)
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMP_EQ_U32(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
Inst_DS__DS_GWS_SEMA_V(InFmt_DS *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP1__V_CVT_FLR_I32_F32(InFmt_VOP1 *)
Inst_MIMG__IMAGE_ATOMIC_XOR(InFmt_MIMG *)
Inst_VOP1__V_EXP_F16(InFmt_VOP1 *)
~Inst_DS__DS_MAX_RTN_F64()
Inst_DS__DS_ADD_U32(InFmt_DS *)
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMP_U_F32()
Inst_SOP1__S_FF0_I32_B32(InFmt_SOP1 *)
Inst_DS__DS_BPERMUTE_B32(InFmt_DS *)
~Inst_VOPC__V_CMP_LT_I32()
~Inst_VOP3__V_CMPX_GT_U16()
Inst_VOP3__V_CMP_GE_F32(InFmt_VOP3 *)
~Inst_SOP1__S_MOVRELS_B32()
~Inst_VOP3__V_CMPX_EQ_I32()
~Inst_VOP3__V_TRIG_PREOP_F64()
void completeAcc(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMPX_LT_I16()
Inst_SMEM__S_BUFFER_LOAD_DWORDX8(InFmt_SMEM *)
void execute(GPUDynInstPtr) override
~Inst_MIMG__IMAGE_SAMPLE_C_D_CL_O()
Inst_MUBUF__BUFFER_ATOMIC_SMIN(InFmt_MUBUF *)
void execute(GPUDynInstPtr) override
~Inst_MIMG__IMAGE_GATHER4_LZ_O()
Inst_VOP3__V_CMPX_NE_U16(InFmt_VOP3 *)
Inst_VOPC__V_CMP_EQ_I32(InFmt_VOPC *)
Inst_VOP3__V_RNDNE_F16(InFmt_VOP3 *)
Inst_VOP3__V_FMA_F16(InFmt_VOP3 *)
Inst_SOP1__S_FLBIT_I32_B32(InFmt_SOP1 *)
Inst_VOP3__V_MED3_F32(InFmt_VOP3 *)
Inst_VOP3__V_MIN3_U32(InFmt_VOP3 *)
Inst_VOP3__V_RSQ_F64(InFmt_VOP3 *)
void initiateAcc(GPUDynInstPtr) override
Inst_VOP3__V_LOG_F16(InFmt_VOP3 *)
Inst_MIMG__IMAGE_GATHER4_L(InFmt_MIMG *)
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CVT_RPI_I32_F32()
Inst_VOP3__V_MUL_LEGACY_F32(InFmt_VOP3 *)
void completeAcc(GPUDynInstPtr) override
~Inst_DS__DS_MAX_RTN_U64()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_DS__DS_WRITE_SRC2_B32(InFmt_DS *)
Inst_VOP3__V_MBCNT_HI_U32_B32(InFmt_VOP3 *)
~Inst_VOP3__V_CMP_EQ_I32()
Inst_FLAT__FLAT_ATOMIC_SWAP(InFmt_FLAT *)
Inst_VOP3__V_CMPX_GT_F32(InFmt_VOP3 *)
Inst_VOP1__V_CVT_I32_F64(InFmt_VOP1 *)
Inst_VOP1__V_FLOOR_F32(InFmt_VOP1 *)
Inst_VOP3__V_FMA_F32(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_FLAT__FLAT_STORE_DWORDX3()
Inst_VOP3__V_CVT_F32_UBYTE1(InFmt_VOP3 *)
Inst_MUBUF__BUFFER_ATOMIC_CMPSWAP(InFmt_MUBUF *)
~Inst_FLAT__FLAT_ATOMIC_OR()
~Inst_VOP3__V_CMP_GT_F32()
void execute(GPUDynInstPtr) override
Inst_DS__DS_CONSUME(InFmt_DS *)
void execute(GPUDynInstPtr) override
Inst_FLAT__FLAT_ATOMIC_SMIN_X2(InFmt_FLAT *)
~Inst_VOPC__V_CMPX_T_U32()
Inst_VOPC__V_CMPX_LT_F32(InFmt_VOPC *)
Inst_SOP1__S_CBRANCH_JOIN(InFmt_SOP1 *)
Inst_VOP3__V_FFBH_U32(InFmt_VOP3 *)
Inst_VOP3__V_CMPX_NGE_F32(InFmt_VOP3 *)
~Inst_VOP3__V_CMP_EQ_I64()
~Inst_DS__DS_SUB_SRC2_U64()
void execute(GPUDynInstPtr) override
~Inst_SOPP__S_CBRANCH_VCCNZ()
void execute(GPUDynInstPtr) override
~Inst_VOP1__V_FREXP_MANT_F16()
void execute(GPUDynInstPtr) override
~Inst_SOPC__S_BITCMP1_B64()
~Inst_VOP3__V_CVT_PK_I16_I32()
~Inst_VOP2__V_ASHRREV_I16()
Inst_SOP2__S_LSHL_B64(InFmt_SOP2 *)
Inst_MIMG__IMAGE_SAMPLE_B_CL_O(InFmt_MIMG *)
void completeAcc(GPUDynInstPtr) override
void calcAddr(GPUDynInstPtr gpuDynInst, ConstVecOperandU32 &addr)
~Inst_DS__DS_MIN_RTN_I32()
Inst_VOP3__V_CVT_PK_U8_F32(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
~Inst_VOPC__V_CMP_NE_U16()
Inst_SOP2__S_OR_B64(InFmt_SOP2 *)
void execute(GPUDynInstPtr) override
Inst_VOPC__V_CMP_NE_I64(InFmt_VOPC *)
Inst_VOP1__V_FFBH_I32(InFmt_VOP1 *)
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMPX_GE_U64(InFmt_VOP3 *)
Inst_SOP2__S_ORN2_B64(InFmt_SOP2 *)
~Inst_MUBUF__BUFFER_ATOMIC_UMAX_X2()
~Inst_VOP3__V_CMP_NGE_F64()
Inst_VOPC__V_CMPX_F_F16(InFmt_VOPC *)
~Inst_VOP3__V_MBCNT_HI_U32_B32()
~Inst_VOP2__V_MUL_I32_I24()
void execute(GPUDynInstPtr) override
Inst_SOPP__S_ENDPGM(InFmt_SOPP *)
void execute(GPUDynInstPtr) override
Inst_FLAT__FLAT_LOAD_DWORDX2(InFmt_FLAT *)
~Inst_VOP3__V_CVT_OFF_F32_I4()
~Inst_SMEM__S_LOAD_DWORD()
~Inst_VOP3__V_ASHRREV_I16()
void initiateAcc(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOPC__V_CMP_LT_F64()
void execute(GPUDynInstPtr) override
~Inst_VOP1__V_FRACT_F32()
Inst_MIMG__IMAGE_LOAD_PCK(InFmt_MIMG *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void initiateAcc(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_DS__DS_MAX_SRC2_F64(InFmt_DS *)
~Inst_VOP3__V_CVT_F32_U32()
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMP_NGE_F64(InFmt_VOP3 *)
~Inst_DS__DS_OR_RTN_B32()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOPC__V_CMPX_T_U32(InFmt_VOPC *)
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMP_F_I64(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
~Inst_MIMG__IMAGE_SAMPLE_C_D_O()
void execute(GPUDynInstPtr) override
Inst_MUBUF__BUFFER_STORE_DWORDX4(InFmt_MUBUF *)
Inst_VOP3__V_CMPX_NLT_F32(InFmt_VOP3 *)
Inst_SMEM__S_STORE_DWORDX4(InFmt_SMEM *)
~Inst_MIMG__IMAGE_ATOMIC_SUB()
void freeRegisters(Wavefront *w)
Inst_MIMG__IMAGE_ATOMIC_ADD(InFmt_MIMG *)
Inst_DS__DS_WRITE_B64(InFmt_DS *)
Inst_VOP3__V_CVT_F32_UBYTE3(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
Inst_VOPC__V_CMPX_F_U16(InFmt_VOPC *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMP_EQ_U64()
Inst_DS__DS_MIN_SRC2_U32(InFmt_DS *)
~Inst_VOPC__V_CMPX_NE_U32()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void read() override
read from the vrf.
Inst_DS__DS_GWS_BARRIER(InFmt_DS *)
Inst_VOP3__V_TRUNC_F32(InFmt_VOP3 *)
~Inst_SOPP__S_CBRANCH_VCCZ()
void initiateAcc(GPUDynInstPtr) override
void initiateAcc(GPUDynInstPtr) override
Inst_VOP3__V_CMP_LG_F32(InFmt_VOP3 *)
Inst_VOP3__V_CMPX_U_F32(InFmt_VOP3 *)
Inst_SOPK__S_CMPK_LT_U32(InFmt_SOPK *)
Inst_SMEM__S_MEMREALTIME(InFmt_SMEM *)
~Inst_SMEM__S_BUFFER_STORE_DWORDX4()
Inst_DS__DS_MAX_RTN_F32(InFmt_DS *)
Inst_DS__DS_WRITE_SRC2_B64(InFmt_DS *)
Inst_VOPC__V_CMP_EQ_I16(InFmt_VOPC *)
void execute(GPUDynInstPtr) override
~Inst_MUBUF__BUFFER_LOAD_USHORT()
void completeAcc(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void initiateAcc(GPUDynInstPtr) override
Inst_SOP2__S_MUL_I32(InFmt_SOP2 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_RNDNE_F16()
~Inst_VOP3__V_CMPX_GE_I32()
~Inst_VOP3__V_MOV_FED_B32()
void execute(GPUDynInstPtr) override
void initiateAcc(GPUDynInstPtr) override
Inst_VOP3__V_CMP_F_F16(InFmt_VOP3 *)
~Inst_VOP2__V_LSHRREV_B16()
void execute(GPUDynInstPtr) override
void initiateAcc(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_DS__DS_RSUB_U64(InFmt_DS *)
~Inst_DS__DS_WRITE_SRC2_B32()
Inst_VOP3__V_CMPX_GE_F32(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
Inst_VOP3__V_MQSAD_PK_U16_U8(InFmt_VOP3 *)
~Inst_VOP3__V_CMP_LG_F32()
~Inst_SMEM__S_BUFFER_LOAD_DWORDX2()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
std::enable_if_t< Condition, DataType > rawData() const
we store scalar data in a std::array, however if we need the full operand data we use this method to ...
void execute(GPUDynInstPtr) override
Inst_SOP2__S_XNOR_B64(InFmt_SOP2 *)
Inst_VOP3__V_CMPX_GT_U16(InFmt_VOP3 *)
#define NAN
Define Not a number.
void execute(GPUDynInstPtr) override
~Inst_VOPC__V_CMPX_GE_F16()
Inst_VOP3__V_CVT_U32_F64(InFmt_VOP3 *)
Inst_VOP1__V_CVT_RPI_I32_F32(InFmt_VOP1 *)
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMPX_LE_F64(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_MQSAD_U32_U8()
~Inst_MUBUF__BUFFER_ATOMIC_SUB_X2()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOPC__V_CMP_LE_I64(InFmt_VOPC *)
Inst_VOP3__V_SUB_F16(InFmt_VOP3 *)
Inst_DS__DS_INC_SRC2_U32(InFmt_DS *)
void execute(GPUDynInstPtr) override
Inst_VOPC__V_CMP_EQ_U64(InFmt_VOPC *)
Inst_VOP3__V_CVT_PKNORM_I16_F32(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
~Inst_MIMG__IMAGE_GATHER4_C_LZ()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP1__V_NOP(InFmt_VOP1 *)
Inst_VOP3__V_CMP_NGE_F32(InFmt_VOP3 *)
Inst_VOP3__V_CVT_F32_UBYTE2(InFmt_VOP3 *)
~Inst_MIMG__IMAGE_SAMPLE_C()
~Inst_SOPK__S_CMPK_EQ_U32()
~Inst_VOPC__V_CMP_CLASS_F32()
Inst_VOP3__V_CMP_EQ_I16(InFmt_VOP3 *)
Inst_VOPC__V_CMPX_LE_F16(InFmt_VOPC *)
~Inst_VOP1__V_CVT_F32_F16()
void execute(GPUDynInstPtr) override
Inst_MIMG__IMAGE_SAMPLE_C_B(InFmt_MIMG *)
void execute(GPUDynInstPtr) override
Inst_MUBUF__BUFFER_ATOMIC_SMAX_X2(InFmt_MUBUF *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_FLAT__FLAT_LOAD_SBYTE(InFmt_FLAT *)
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMPX_F_I16(InFmt_VOP3 *)
void calcAddr(GPUDynInstPtr gpuDynInst, ConstVecOperandU64 &addr)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_SMEM__S_MEMTIME(InFmt_SMEM *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void completeAcc(GPUDynInstPtr) override
~Inst_DS__DS_INC_SRC2_U64()
Inst_MIMG__IMAGE_GATHER4_CL(InFmt_MIMG *)
void initiateAcc(GPUDynInstPtr) override
Inst_SOPP__S_TRAP(InFmt_SOPP *)
Inst_VOP3__V_SUB_F32(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
~Inst_SMEM__S_STORE_DWORDX4()
Inst_SMEM__S_ATC_PROBE(InFmt_SMEM *)
void execute(GPUDynInstPtr) override
~Inst_VOPC__V_CMP_NGT_F64()
~Inst_VOPC__V_CMP_T_I32()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP1__V_RCP_F32(InFmt_VOP1 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOPC__V_CMPX_EQ_U64(InFmt_VOPC *)
void execute(GPUDynInstPtr) override
~Inst_VOPC__V_CMP_LE_F64()
~Inst_VOP3__V_FLOOR_F64()
void execute(GPUDynInstPtr) override
~Inst_VOPC__V_CMP_LT_U16()
Inst_SOPP__S_CBRANCH_EXECNZ(InFmt_SOPP *)
Inst_MIMG__IMAGE_SAMPLE_C_D(InFmt_MIMG *)
Inst_VOPC__V_CMP_LT_I16(InFmt_VOPC *)
Inst_VOP3__V_CVT_F16_F32(InFmt_VOP3 *)
~Inst_VOPC__V_CMP_NGT_F16()
void execute(GPUDynInstPtr) override
~Inst_MIMG__IMAGE_ATOMIC_DEC()
Inst_DS__DS_AND_SRC2_B64(InFmt_DS *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_INTERP_P2_F16()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOPC__V_CMP_F_I32(InFmt_VOPC *)
Inst_SMEM__S_DCACHE_WB(InFmt_SMEM *)
~Inst_VOPC__V_CMPX_LE_I32()
~Inst_SOPK__S_CMPK_LG_I32()
~Inst_DS__DS_WRITE_SRC2_B64()
~Inst_VOPC__V_CMPX_LE_F16()
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMP_GT_F32(InFmt_VOP3 *)
Inst_VOP3__V_MSAD_U8(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_DS__DS_MAX_SRC2_I32()
Inst_SMEM__S_BUFFER_LOAD_DWORD(InFmt_SMEM *)
~Inst_VOP3__V_CMPX_GE_F64()
void completeAcc(GPUDynInstPtr) override
Inst_MIMG__IMAGE_SAMPLE_CD(InFmt_MIMG *)
~Inst_VOP3__V_CMPX_NGE_F32()
~Inst_VOP3__V_CMPX_GT_F32()
Inst_DS__DS_XOR_B32(InFmt_DS *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CVT_RPI_I32_F32(InFmt_VOP3 *)
~Inst_SOP2__S_CBRANCH_G_FORK()
void execute(GPUDynInstPtr) override
void completeAcc(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMPX_NE_U32()
Inst_VOP3__V_CMPX_GE_U32(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_RNDNE_F32()
~Inst_VOP3__V_CMPX_TRU_F32()
~Inst_VOP3__V_CMP_TRU_F16()
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CVT_F32_UBYTE0(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
Inst_VOP2__V_SUB_F16(InFmt_VOP2 *)
void completeAcc(GPUDynInstPtr) override
Inst_VOP3__V_TRUNC_F64(InFmt_VOP3 *)
Inst_VOP3__V_SAD_HI_U8(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP2__V_LSHRREV_B32(InFmt_VOP2 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOP1__V_FREXP_MANT_F64()
~Inst_SOPC__S_CMP_GE_U32()
~Inst_DS__DS_MAX_SRC2_U64()
~Inst_MIMG__IMAGE_SAMPLE_C_B()
Inst_VOPC__V_CMP_EQ_I64(InFmt_VOPC *)
~Inst_VOPC__V_CMP_F_U16()
Inst_VOP3__V_CMP_GT_I32(InFmt_VOP3 *)
~Inst_DS__DS_CMPST_RTN_F64()
void execute(GPUDynInstPtr) override
Inst_DS__DS_WRITE_B8(InFmt_DS *)
Inst_VOPC__V_CMP_LE_U32(InFmt_VOPC *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOPC__V_CMPX_T_I32()
~Inst_SOP1__S_FLBIT_I32_I64()
Inst_VOP3__V_SAD_U32(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
~Inst_SOPK__S_CMPK_GT_U32()
Inst_VOP3__V_CMP_LT_F16(InFmt_VOP3 *)
~Inst_VOPC__V_CMP_NLT_F16()
~Inst_VOP3__V_LOG_LEGACY_F32()
void execute(GPUDynInstPtr) override
Inst_FLAT__FLAT_STORE_DWORDX2(InFmt_FLAT *)
~Inst_VOPC__V_CMP_GT_I64()
~Inst_VOP3__V_CMP_CLASS_F32()
~Inst_VOP2__V_MUL_U32_U24()
Inst_VOP3__V_COS_F16(InFmt_VOP3 *)
~Inst_MIMG__IMAGE_SAMPLE_L()
~Inst_VOP1__V_CVT_I16_F16()
void execute(GPUDynInstPtr) override
Inst_DS__DS_CMPST_B64(InFmt_DS *)
~Inst_SOPC__S_CMP_LT_I32()
~Inst_FLAT__FLAT_ATOMIC_UMAX()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOPC__V_CMPX_U_F16(InFmt_VOPC *)
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_MUL_HI_I32_I24()
Inst_VOP3__V_BFE_I32(InFmt_VOP3 *)
~Inst_SOPC__S_CMP_LG_U32()
Inst_VOPC__V_CMPX_LT_I32(InFmt_VOPC *)
Inst_VOP3__V_CMP_GE_U32(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_SOPP__S_SET_GPR_IDX_OFF()
void execute(GPUDynInstPtr) override
~Inst_VOPC__V_CMP_NLE_F32()
Inst_VOP3__V_MAC_F16(InFmt_VOP3 *)
~Inst_SOP1__S_GETPC_B64()
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMPX_GT_U32(InFmt_VOP3 *)
~Inst_VOPC__V_CMP_T_U64()
Inst_SOPK__S_CMPK_LT_I32(InFmt_SOPK *)
void execute(GPUDynInstPtr) override
Inst_VOPC__V_CMP_F_F16(InFmt_VOPC *)
Inst_SOPP__S_CBRANCH_SCC0(InFmt_SOPP *)
~Inst_VOP3__V_CMP_LT_U64()
Inst_VOPC__V_CMPX_NE_U32(InFmt_VOPC *)
Inst_VOP1__V_SQRT_F64(InFmt_VOP1 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_DS__DS_RSUB_SRC2_U32()
Inst_VOPC__V_CMP_NE_I16(InFmt_VOPC *)
~Inst_MUBUF__BUFFER_ATOMIC_OR_X2()
Inst_VOPC__V_CMP_F_U64(InFmt_VOPC *)
Inst_DS__DS_INC_RTN_U64(InFmt_DS *)
~Inst_DS__DS_ADD_SRC2_U64()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP1__V_RSQ_F16(InFmt_VOP1 *)
~Inst_DS__DS_READ2ST64_B64()
void execute(GPUDynInstPtr) override
~Inst_VOP1__V_CVT_F32_UBYTE0()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP3__V_DIV_SCALE_F32(InFmt_VOP3_SDST_ENC *)
void execute(GPUDynInstPtr) override
void initiateAcc(GPUDynInstPtr) override
~Inst_SOPP__S_TTRACEDATA()
~Inst_MUBUF__BUFFER_ATOMIC_INC_X2()
void completeAcc(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOPC__V_CMP_LE_U32()
void initiateAcc(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_FLOOR_F32()
void execute(GPUDynInstPtr) override
~Inst_DS__DS_GWS_BARRIER()
Inst_VOP2__V_MUL_LO_U16(InFmt_VOP2 *)
~Inst_DS__DS_MAX_RTN_I32()
~Inst_VOP3__V_CMP_LE_F16()
Inst_VOP3__V_MAD_F32(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOPC__V_CMP_GT_F16(InFmt_VOPC *)
void execute(GPUDynInstPtr) override
Inst_SOP2__S_SUB_U32(InFmt_SOP2 *)
Inst_VOP3__V_CMP_GT_U64(InFmt_VOP3 *)
static const int InvalidID
Inst_SOP2__S_SUBB_U32(InFmt_SOP2 *)
#define ULL(N)
uint64_t constant
Inst_MIMG__IMAGE_SAMPLE_LZ_O(InFmt_MIMG *)
~Inst_VOPC__V_CMP_TRU_F32()
Inst_SMEM__S_DCACHE_WB_VOL(InFmt_SMEM *)
Inst_VOPC__V_CMPX_TRU_F16(InFmt_VOPC *)
Inst_VOP2__V_MADAK_F32(InFmt_VOP2 *)
void execute(GPUDynInstPtr) override
Inst_MUBUF__BUFFER_ATOMIC_SUB(InFmt_MUBUF *)
void execute(GPUDynInstPtr) override
~Inst_FLAT__FLAT_ATOMIC_UMAX_X2()
Inst_MUBUF__BUFFER_LOAD_USHORT(InFmt_MUBUF *)
~Inst_VOPC__V_CMPX_NLE_F32()
~Inst_MIMG__IMAGE_SAMPLE_B_CL()
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMP_NLE_F16(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
Inst_VOPC__V_CMPX_GE_F16(InFmt_VOPC *)
Inst_VOP1__V_MOV_B32(InFmt_VOP1 *)
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_LDEXP_F32()
void execute(GPUDynInstPtr) override
Inst_VOP3__V_MAD_F16(InFmt_VOP3 *)
~Inst_VOP3__V_CMP_LT_F64()
void completeAcc(GPUDynInstPtr) override
~Inst_VOP3__V_CMP_NLG_F16()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMP_F_I32(InFmt_VOP3 *)
~Inst_SOPP__S_CBRANCH_SCC1()
~Inst_VOP1__V_CVT_U32_F32()
~Inst_VOP3__V_CMPX_EQ_U32()
~Inst_SOP1__S_BITSET1_B64()
Inst_VOPC__V_CMPX_NE_I16(InFmt_VOPC *)
Inst_VOPC__V_CMPX_NEQ_F32(InFmt_VOPC *)
Inst_DS__DS_PERMUTE_B32(InFmt_DS *)
void initiateAcc(GPUDynInstPtr) override
~Inst_VOP3__V_ALIGNBYTE_B32()
~Inst_VOP3__V_CMP_EQ_U32()
~Inst_MUBUF__BUFFER_ATOMIC_ADD()
~Inst_VOPC__V_CMP_EQ_U64()
void processDPP(GPUDynInstPtr gpuDynInst, InFmt_VOP_DPP dppInst, T &src0)
processDPP is a helper function for implementing Data Parallel Primitive instructions.
Inst_DS__DS_MAX_F64(InFmt_DS *)
void execute(GPUDynInstPtr) override
Inst_VOP1__V_CVT_OFF_F32_I4(InFmt_VOP1 *)
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMPX_LT_I64()
~Inst_VOPC__V_CMPX_TRU_F32()
Inst_DS__DS_WRITE2_B32(InFmt_DS *)
void execute(GPUDynInstPtr) override
void initiateAcc(GPUDynInstPtr) override
~Inst_VOP3__V_CMP_NGT_F16()
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMP_CLASS_F64(InFmt_VOP3 *)
Inst_VOP3__V_MAC_F32(InFmt_VOP3 *)
~Inst_SOPK__S_SETREG_B32()
Inst_MIMG__IMAGE_SAMPLE_C_D_O(InFmt_MIMG *)
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMPX_NLG_F64(InFmt_VOP3 *)
~Inst_MIMG__IMAGE_ATOMIC_INC()
~Inst_DS__DS_XOR_SRC2_B64()
Inst_FLAT__FLAT_ATOMIC_XOR(InFmt_FLAT *)
~Inst_SOP1__S_FLBIT_I32_B32()
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CVT_F32_UBYTE1()
void execute(GPUDynInstPtr) override
Inst_SOPK__S_MULK_I32(InFmt_SOPK *)
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMP_EQ_F64(InFmt_VOP3 *)
Inst_MUBUF__BUFFER_ATOMIC_ADD_X2(InFmt_MUBUF *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_SOP1__S_MOVRELS_B64(InFmt_SOP1 *)
Inst_VOPC__V_CMP_GT_I16(InFmt_VOPC *)
~Inst_MIMG__IMAGE_GATHER4_C()
~Inst_SMEM__S_BUFFER_LOAD_DWORDX16()
~Inst_MIMG__IMAGE_ATOMIC_UMIN()
void execute(GPUDynInstPtr) override
Inst_VOPC__V_CMPX_NLT_F32(InFmt_VOPC *)
~Inst_VOPC__V_CMP_GE_I16()
~Inst_VOPC__V_CMPX_CLASS_F32()
void execute(GPUDynInstPtr) override
void write() override
write to the vrf.
~Inst_VOPC__V_CMPX_EQ_F32()
Inst_VOP3__V_CMP_F_U32(InFmt_VOP3 *)
~Inst_VOPC__V_CMP_NLG_F64()
Inst_SMEM__S_BUFFER_LOAD_DWORDX4(InFmt_SMEM *)
void execute(GPUDynInstPtr) override
Inst_MIMG__IMAGE_LOAD_MIP_PCK(InFmt_MIMG *)
Inst_VOP2__V_ASHRREV_I16(InFmt_VOP2 *)
Inst_MIMG__IMAGE_LOAD_MIP(InFmt_MIMG *)
~Inst_VOP3__V_CMPX_GE_F16()
void execute(GPUDynInstPtr) override
~Inst_VOP1__V_CVT_F32_I32()
Inst_DS__DS_SWIZZLE_B32(InFmt_DS *)
Inst_MIMG__IMAGE_LOAD_MIP_PCK_SGN(InFmt_MIMG *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOPC__V_CMPX_EQ_F16()
~Inst_MIMG__IMAGE_SAMPLE_CL()
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMP_LT_I32(InFmt_VOP3 *)
Inst_VOP3__V_CVT_PK_I16_I32(InFmt_VOP3 *)
void execute(GPUDynInstPtr) override
~Inst_VOPC__V_CMPX_F_F32()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOP3__V_CMP_EQ_F16(InFmt_VOP3 *)
Inst_VOP2__V_AND_B32(InFmt_VOP2 *)
Inst_SOP2__S_ASHR_I32(InFmt_SOP2 *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_SOPC__S_CMP_EQ_U32(InFmt_SOPC *)
Inst_VOPC__V_CMPX_EQ_I64(InFmt_VOPC *)
Inst_MIMG__IMAGE_SAMPLE_D(InFmt_MIMG *)
void execute(GPUDynInstPtr) override
void completeAcc(GPUDynInstPtr) override
Inst_MIMG__IMAGE_SAMPLE_C_L(InFmt_MIMG *)
Inst_DS__DS_MAX_F32(InFmt_DS *)
void execute(GPUDynInstPtr) override
Inst_VOP1__V_CVT_F32_UBYTE3(InFmt_VOP1 *)
Inst_VOP2__V_ADD_U16(InFmt_VOP2 *)
Inst_SOPP__S_SETKILL(InFmt_SOPP *)
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
~Inst_VOPC__V_CMP_LG_F32()
void execute(GPUDynInstPtr) override
void execute(GPUDynInstPtr) override
Inst_VOPC__V_CMP_GT_U16(InFmt_VOPC *)
void execute(GPUDynInstPtr) override
Inst_VOP3__V_MUL_HI_I32_I24(InFmt_VOP3 *)
~Inst_VOPC__V_CMPX_LT_U32()
Inst_DS__DS_WRXCHG2_RTN_B32(InFmt_DS *)
Inst_VOPC__V_CMP_GE_F32(InFmt_VOPC *)
~Inst_VOP3__V_FREXP_MANT_F32()
Inst_VOPC__V_CMPX_EQ_F64(InFmt_VOPC *)
Inst_VOP3__V_FFBH_I32(InFmt_VOP3 *)
Inst_VOPC__V_CMPX_T_I32(InFmt_VOPC *)
~Inst_MIMG__IMAGE_SAMPLE_D_CL_O()
~Inst_VOP3__V_FRACT_F32()
Inst_VOPC__V_CMPX_LE_U16(InFmt_VOPC *)
~Inst_DS__DS_CMPST_RTN_B64()
~Inst_DS__DS_ADD_SRC2_F32()
Inst_VOP3__V_CMPX_EQ_F16(InFmt_VOP3 *)
~Inst_VOPC__V_CMP_GE_F64()
void execute(GPUDynInstPtr) override
~Inst_VOPC__V_CMP_GT_U16()
void execute(GPUDynInstPtr) override
Inst_FLAT__FLAT_ATOMIC_OR(InFmt_FLAT *)
void execute(GPUDynInstPtr) override
~Inst_VOP3__V_CMP_O_F64()
~Inst_SOPK__S_CMPK_GT_I32()
Generated on Tue Jun 22 2021 15:28:23 for gem5 by doxygen 1.8.17