Skip to content

Commit bb20387

Browse files
weiyu-chensys_zuul
authored and
sys_zuul
committed
Add support for SIMD lane id computation in SIMD32 mode.
Change-Id: I2dfde9d988d8b9ac7e2a24113f4455f375b1d957
1 parent a6ac36f commit bb20387

File tree

1 file changed

+9
-0
lines changed

1 file changed

+9
-0
lines changed

IGC/Compiler/CISACodeGen/CShader.cpp

+9
Original file line numberDiff line numberDiff line change
@@ -1174,6 +1174,15 @@ void CShader::GetSimdOffsetBase(CVariable*& pVar)
11741174
encoder.Add(pVar, pVar, ImmToVariable(16, ISA_TYPE_W));
11751175
encoder.Push();
11761176
}
1177+
else if (m_SIMDSize == SIMDMode::SIMD32)
1178+
{
1179+
// (W) add (16) V1(16) V1(0) 16:w
1180+
encoder.SetSimdSize(SIMDMode::SIMD16);
1181+
encoder.SetNoMask();
1182+
encoder.SetDstSubReg(16);
1183+
encoder.Add(pVar, pVar, ImmToVariable(16, ISA_TYPE_W));
1184+
encoder.Push();
1185+
}
11771186
}
11781187

11791188
CVariable* CShader::GetPerLaneOffsetsReg(uint typeSizeInBytes)

0 commit comments

Comments
 (0)