Use single class to program load register command

Change-Id: I90fe084409588cb32f0ac43a3db5082047d7a68b
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
This commit is contained in:
Zbigniew Zdanowicz
2020-10-06 10:58:18 +02:00
committed by sys_ocldev
parent 138f04bdcd
commit ce1b669cda
12 changed files with 66 additions and 71 deletions

View File

@@ -53,12 +53,10 @@ void GpgpuWalkerHelper<GfxFamily>::addAluReadModifyWriteRegister(
*pCmd = cmdReg;
// Load "Mask" into CS_GPR_R1
typedef typename GfxFamily::MI_LOAD_REGISTER_IMM MI_LOAD_REGISTER_IMM;
auto pCmd2 = pCommandStream->getSpaceForCmd<MI_LOAD_REGISTER_IMM>();
MI_LOAD_REGISTER_IMM cmdImm = GfxFamily::cmdInitLoadRegisterImm;
cmdImm.setRegisterOffset(CS_GPR_R1);
cmdImm.setDataDword(mask);
*pCmd2 = cmdImm;
LriHelper<GfxFamily>::program(pCommandStream,
CS_GPR_R1,
mask,
false);
// Add instruction MI_MATH with 4 MI_MATH_ALU_INST_INLINE operands
auto pCmd3 = reinterpret_cast<uint32_t *>(pCommandStream->getSpace(sizeof(MI_MATH) + NUM_ALU_INST_FOR_READ_MODIFY_WRITE * sizeof(MI_MATH_ALU_INST_INLINE)));