@@ -2647,7 +2647,7 @@ void EmitPass::emitCmpSADs(llvm::GenIntrinsicInst* inst)
2647
2647
m_encoder->Push();
2648
2648
2649
2649
// Collect the MVs
2650
- if (m_currShader->m_Platform->hasNoFullI64Support ()) {
2650
+ if (m_currShader->m_Platform->hasNoInt64Inst ()) {
2651
2651
CVariable* pMVMinAlias = m_currShader->GetNewAlias(pMVMin, ISA_TYPE_UD, 0, 32);
2652
2652
CVariable* pMVCurrAlias = m_currShader->GetNewAlias(pMVCurr, ISA_TYPE_UD, 0, 32);
2653
2653
@@ -5267,7 +5267,7 @@ void EmitPass::emitLegacySimdBlockWrite(llvm::Instruction* inst, llvm::Value* pt
5267
5267
activelanes, eOffset->GetType(), eOffset->GetAlign(), true, "ScatterOff");
5268
5268
5269
5269
CVariable* immVar = m_currShader->ImmToVariable(0x40, ISA_TYPE_UV);
5270
- if (useA64 && m_currShader->m_Platform->hasNoInt64AddInst ()) {
5270
+ if (useA64 && m_currShader->m_Platform->hasNoInt64Inst ()) {
5271
5271
emitAddPair(ScatterOff, eOffset, immVar);
5272
5272
}
5273
5273
else {
@@ -5329,7 +5329,7 @@ void EmitPass::emitLegacySimdBlockWrite(llvm::Instruction* inst, llvm::Value* pt
5329
5329
5330
5330
if (bytesRemaining)
5331
5331
{
5332
- if (m_currShader->m_Platform->hasNoInt64AddInst ()) {
5332
+ if (m_currShader->m_Platform->hasNoInt64Inst ()) {
5333
5333
CVariable* ImmVar = m_currShader->ImmToVariable(bytesToRead, ISA_TYPE_UD);
5334
5334
emitAddPair(pTempVar, pTempVar, ImmVar);
5335
5335
}
@@ -5463,7 +5463,7 @@ void EmitPass::emitLegacySimdBlockRead(llvm::Instruction* inst, llvm::Value* ptr
5463
5463
activelanes, eOffset->GetType(), eOffset->GetAlign(), true, "GatherOff");
5464
5464
5465
5465
CVariable* immVar = m_currShader->ImmToVariable(0x40, ISA_TYPE_UV);
5466
- if (useA64 && m_currShader->m_Platform->hasNoInt64AddInst ()) {
5466
+ if (useA64 && m_currShader->m_Platform->hasNoInt64Inst ()) {
5467
5467
emitAddPair(gatherOff, eOffset, immVar);
5468
5468
}
5469
5469
else {
@@ -5524,7 +5524,7 @@ void EmitPass::emitLegacySimdBlockRead(llvm::Instruction* inst, llvm::Value* ptr
5524
5524
5525
5525
if (bytesRemaining)
5526
5526
{
5527
- if (m_currShader->m_Platform->hasNoInt64AddInst ()) {
5527
+ if (m_currShader->m_Platform->hasNoInt64Inst ()) {
5528
5528
CVariable* ImmVar = m_currShader->ImmToVariable(bytesToRead, ISA_TYPE_UD);
5529
5529
emitAddPair(pTempVar, pTempVar, ImmVar);
5530
5530
}
@@ -8842,7 +8842,7 @@ void EmitPass::emitAddrSpaceCast(llvm::AddrSpaceCastInst* addrSpaceCast)
8842
8842
8843
8843
if (sourceAddrSpace == ADDRESS_SPACE_PRIVATE)
8844
8844
{
8845
- if (m_pCtx->m_hasEmu64BitInsts && m_currShader->m_Platform->hasNoFullI64Support ())
8845
+ if (m_pCtx->m_hasEmu64BitInsts && m_currShader->m_Platform->hasNoInt64Inst ())
8846
8846
{
8847
8847
if (m_currShader->GetContext()->getRegisterPointerSizeInBits(sourceAddrSpace) == 32)
8848
8848
{
@@ -8913,7 +8913,7 @@ void EmitPass::emitAddrSpaceCast(llvm::AddrSpaceCastInst* addrSpaceCast)
8913
8913
}
8914
8914
else if (sourceAddrSpace == ADDRESS_SPACE_LOCAL)
8915
8915
{
8916
- if (m_pCtx->m_hasEmu64BitInsts && m_currShader->m_Platform->hasNoFullI64Support ())
8916
+ if (m_pCtx->m_hasEmu64BitInsts && m_currShader->m_Platform->hasNoInt64Inst ())
8917
8917
{
8918
8918
if (m_currShader->GetContext()->getRegisterPointerSizeInBits(sourceAddrSpace) == 32)
8919
8919
{
@@ -8995,7 +8995,7 @@ void EmitPass::emitAddrSpaceCast(llvm::AddrSpaceCastInst* addrSpaceCast)
8995
8995
// Address space cast is in the form of generic -> {private, local, global}
8996
8996
// Tag is removed according to the address space of the destination
8997
8997
8998
- if (m_pCtx->m_hasEmu64BitInsts && m_currShader->m_Platform->hasNoFullI64Support ())
8998
+ if (m_pCtx->m_hasEmu64BitInsts && m_currShader->m_Platform->hasNoInt64Inst ())
8999
8999
{
9000
9000
if (m_currShader->GetContext()->getRegisterPointerSizeInBits(destAddrSpace) == 32)
9001
9001
{
@@ -9081,7 +9081,7 @@ CVariable* EmitPass::createAddressSpaceTag(CVariable* src, unsigned int addrSpac
9081
9081
CVariable* taggedSrc = nullptr;
9082
9082
if (addrSpace == ADDRESS_SPACE_PRIVATE)
9083
9083
{
9084
- if (m_pCtx->m_hasEmu64BitInsts && m_currShader->m_Platform->hasNoFullI64Support ())
9084
+ if (m_pCtx->m_hasEmu64BitInsts && m_currShader->m_Platform->hasNoInt64Inst ())
9085
9085
{
9086
9086
if (m_currShader->GetContext()->getRegisterPointerSizeInBits(addrSpace) == 32)
9087
9087
{
@@ -9151,7 +9151,7 @@ CVariable* EmitPass::createAddressSpaceTag(CVariable* src, unsigned int addrSpac
9151
9151
}
9152
9152
else if (addrSpace == ADDRESS_SPACE_LOCAL)
9153
9153
{
9154
- if (m_pCtx->m_hasEmu64BitInsts && m_currShader->m_Platform->hasNoFullI64Support ())
9154
+ if (m_pCtx->m_hasEmu64BitInsts && m_currShader->m_Platform->hasNoInt64Inst ())
9155
9155
{
9156
9156
if (m_currShader->GetContext()->getRegisterPointerSizeInBits(addrSpace) == 32)
9157
9157
{
@@ -11031,7 +11031,7 @@ CVariable* EmitPass::BroadcastIfUniform(CVariable* pVar)
11031
11031
{
11032
11032
IGC_ASSERT_MESSAGE(nullptr != pVar, "pVar is null");
11033
11033
VISA_Type VarT = pVar->GetType();
11034
- bool Need64BitEmu = m_currShader->m_Platform->hasNoFullI64Support () &&
11034
+ bool Need64BitEmu = m_currShader->m_Platform->hasNoInt64Inst () &&
11035
11035
(VarT == ISA_TYPE_Q || VarT == ISA_TYPE_UQ);
11036
11036
bool IsImm = pVar->IsImmediate();
11037
11037
if (pVar->IsUniform())
@@ -11898,7 +11898,7 @@ void EmitPass::emitReductionClustered(const e_opcode op, const uint64_t identity
11898
11898
IGC_ASSERT_MESSAGE(iSTD::BitCount(clusterSize) == 1, "Cluster size must be a power of two.");
11899
11899
IGC_ASSERT_MESSAGE(!is64bitType || CEncoder::GetCISADataTypeSize(type) == 8, "Unsupported 64-bit type.");
11900
11900
11901
- IGC_ASSERT_MESSAGE(!isInt64Type || !m_currShader->m_Platform->hasNoFullI64Support (), "Int64 emulation is not supported.");
11901
+ IGC_ASSERT_MESSAGE(!isInt64Type || !m_currShader->m_Platform->hasNoInt64Inst (), "Int64 emulation is not supported.");
11902
11902
IGC_ASSERT_MESSAGE(!isFP64Type || !m_currShader->m_Platform->hasNoFP64Inst(), "FP64 emulation is not supported.");
11903
11903
// Src might be uniform, as its value will be broadcasted during src preparation.
11904
11904
// Dst uniformness depends on actual support in WIAnalysis, so far implemented for 32-clusters only.
@@ -15224,7 +15224,7 @@ void EmitPass::emitVectorLoad(LoadInst* inst, Value* offset, ConstantInt* immOff
15224
15224
// on platform that does not support 64bit integer add.
15225
15225
//Note: it doesn't seem to be necessary to check hasNoFP64Inst() here.
15226
15226
if (srcUniform && (totalBytes == 4 || totalBytes == 8 || totalBytes == 12 || totalBytes == 16 ||
15227
- (totalBytes == 32 && (useA32 || !m_currShader->m_Platform->hasNoFullI64Support ()))))
15227
+ (totalBytes == 32 && (useA32 || !m_currShader->m_Platform->hasNoInt64Inst ()))))
15228
15228
{
15229
15229
bool needTemp = !destUniform ||
15230
15230
!IsGRFAligned(m_destination, EALIGN_GRF) ||
@@ -15310,7 +15310,7 @@ void EmitPass::emitVectorLoad(LoadInst* inst, Value* offset, ConstantInt* immOff
15310
15310
}
15311
15311
15312
15312
CVariable* immVar = m_currShader->ImmToVariable(incImm, ISA_TYPE_UV);
15313
- if (!useA32 && m_currShader->m_Platform->hasNoInt64AddInst ()) {
15313
+ if (!useA32 && m_currShader->m_Platform->hasNoInt64Inst ()) {
15314
15314
emitAddPair(gatherOff, eOffset, immVar);
15315
15315
}
15316
15316
else {
@@ -15391,7 +15391,7 @@ void EmitPass::emitVectorLoad(LoadInst* inst, Value* offset, ConstantInt* immOff
15391
15391
// Calculate the new element offset
15392
15392
rawAddrVar = m_currShader->GetNewVariable(eOffset);
15393
15393
CVariable* ImmVar = m_currShader->ImmToVariable(eltOffBytes, ISA_TYPE_UD);
15394
- if (!useA32 && m_currShader->m_Platform->hasNoInt64AddInst ()) {
15394
+ if (!useA32 && m_currShader->m_Platform->hasNoInt64Inst ()) {
15395
15395
emitAddPair(rawAddrVar, eOffset, ImmVar);
15396
15396
}
15397
15397
else {
@@ -15464,7 +15464,7 @@ void EmitPass::emitVectorLoad(LoadInst* inst, Value* offset, ConstantInt* immOff
15464
15464
// Calculate the new element offset
15465
15465
rawAddrVar = m_currShader->GetNewVariable(eOffset);
15466
15466
CVariable* ImmVar = m_currShader->ImmToVariable(VecMessInfo.insts[i].startByte, ISA_TYPE_UD);
15467
- if (!useA32 && m_currShader->m_Platform->hasNoInt64AddInst ()) {
15467
+ if (!useA32 && m_currShader->m_Platform->hasNoInt64Inst ()) {
15468
15468
emitAddPair(rawAddrVar, eOffset, ImmVar);
15469
15469
}
15470
15470
else {
@@ -15624,7 +15624,7 @@ void EmitPass::emitVectorStore(StoreInst* inst, Value* offset, ConstantInt* immO
15624
15624
// When work-around of A64 SKL Si limitation of SIMD4, we use SIMD8 (nbelts > nbeltsWanted)
15625
15625
// in which all upper four channels are zero, meaning eOffset[0], Later, stored value
15626
15626
// must use storvedVar[0] for those extra lanes.
15627
- if (!useA32 && m_currShader->m_Platform->hasNoInt64AddInst ()) {
15627
+ if (!useA32 && m_currShader->m_Platform->hasNoInt64Inst ()) {
15628
15628
emitAddPair(NewOff, eOffset, immVar);
15629
15629
}
15630
15630
else {
@@ -15783,7 +15783,7 @@ void EmitPass::emitVectorStore(StoreInst* inst, Value* offset, ConstantInt* immO
15783
15783
// Calculate the new element offset
15784
15784
rawAddrVar = m_currShader->GetNewVariable(eOffset);
15785
15785
CVariable* ImmVar = m_currShader->ImmToVariable(VecMessInfo.insts[i].startByte, ISA_TYPE_UD);
15786
- if (!useA32 && m_currShader->m_Platform->hasNoInt64AddInst ()) {
15786
+ if (!useA32 && m_currShader->m_Platform->hasNoInt64Inst ()) {
15787
15787
emitAddPair(rawAddrVar, eOffset, ImmVar);
15788
15788
}
15789
15789
else {
@@ -15929,7 +15929,7 @@ CVariable* EmitPass::prepareAddressForUniform(
15929
15929
CVariable* offHi = m_currShader->GetNewAlias(off, off->GetType(), 0, halfNElts);
15930
15930
CVariable* offLo = m_currShader->GetNewAlias(off, off->GetType(), bytes2, halfNElts);
15931
15931
15932
- if (isA64 && m_currShader->m_Platform->hasNoInt64AddInst ())
15932
+ if (isA64 && m_currShader->m_Platform->hasNoInt64Inst ())
15933
15933
{
15934
15934
emitAddPair(newVarHi, AddrVar, offHi);
15935
15935
emitAddPair(newVarLo, AddrVar, offLo);
@@ -15952,7 +15952,7 @@ CVariable* EmitPass::prepareAddressForUniform(
15952
15952
m_encoder->Push();
15953
15953
}
15954
15954
}
15955
- else if (isA64 && m_currShader->m_Platform->hasNoInt64AddInst () && pow2NElts > 1)
15955
+ else if (isA64 && m_currShader->m_Platform->hasNoInt64Inst () && pow2NElts > 1)
15956
15956
{
15957
15957
emitAddPair(newVar, AddrVar, off);
15958
15958
}
@@ -16213,7 +16213,7 @@ void EmitPass::emitPushFrameToStack(unsigned& pushSize)
16213
16213
16214
16214
void EmitPass::emitAddPointer(CVariable* Dst, CVariable* Src, CVariable* offset)
16215
16215
{
16216
- if (m_currShader->m_Platform->hasNoInt64AddInst () &&
16216
+ if (m_currShader->m_Platform->hasNoInt64Inst () &&
16217
16217
(Dst->GetType() == ISA_TYPE_Q || Dst->GetType() == ISA_TYPE_UQ) &&
16218
16218
(Src->GetType() == ISA_TYPE_Q || Src->GetType() == ISA_TYPE_UQ))
16219
16219
{
0 commit comments