// Copyright Advanced Micro Devices, Inc., or its affiliates. // SPDX-License-Identifier: MIT #include #include namespace rocRoller { namespace Scheduling { int VALUWrite::getMaxNops(Instruction const& inst) const { return m_maxNops; } bool VALUWrite::trigger(Instruction const& inst) const { return GPUInstructionInfo::isVALU(inst.getOpCode()) && !GPUInstructionInfo::isMFMA(inst.getOpCode()) && !GPUInstructionInfo::isDLOP(inst.getOpCode()); }; int VALUWrite::getNops(Instruction const& inst) const { if(GPUInstructionInfo::isMFMA(inst.getOpCode()) || (m_checkACCVGPR && GPUInstructionInfo::isACCVGPRWrite(inst.getOpCode()))) { return checkSrcs(inst).value_or(0); } return 0; } } }