Skip to content

Commit f500481

Browse files
Dimus77igcbot
authored andcommitted
Changes in code.
1 parent b55969a commit f500481

File tree

1 file changed

+7
-14
lines changed

1 file changed

+7
-14
lines changed

IGC/Compiler/CISACodeGen/EmitVISAPass.cpp

Lines changed: 7 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -8943,13 +8943,6 @@ void EmitPass::emitPtrToInt(llvm::PtrToIntInst* P2I)
89438943

89448944
void EmitPass::emitAddrSpaceToGenericCast(llvm::AddrSpaceCastInst* addrSpaceCast, CVariable* srcV, unsigned tag)
89458945
{
8946-
CVariable* pFlag = m_currShader->GetNewVariable(
8947-
numLanes(m_currShader->m_SIMDSize),
8948-
ISA_TYPE_BOOL, EALIGN_BYTE,
8949-
CName(srcV->getName(), "NotNull"));
8950-
m_encoder->Cmp(EPREDICATE_NE, pFlag, srcV, m_currShader->ImmToVariable(0, ISA_TYPE_UD));
8951-
m_encoder->Push();
8952-
89538946
if (m_pCtx->m_hasEmu64BitInsts && m_currShader->m_Platform->hasNoFullI64Support())
89548947
{
89558948
if (m_currShader->GetContext()->getRegisterPointerSizeInBits(addrSpaceCast->getSrcAddressSpace()) == 32)
@@ -8963,7 +8956,7 @@ void EmitPass::emitAddrSpaceToGenericCast(llvm::AddrSpaceCastInst* addrSpaceCast
89638956
// High:
89648957
m_encoder->SetDstSubReg(1);
89658958
m_encoder->SetDstRegion(2);
8966-
m_encoder->Select(pFlag, dstAlias, m_currShader->ImmToVariable(tag << 29, ISA_TYPE_UD), m_currShader->ImmToVariable(0, ISA_TYPE_UD));
8959+
m_encoder->Copy(dstAlias, m_currShader->ImmToVariable(tag << 29, ISA_TYPE_UD));
89678960
m_encoder->Push();
89688961
}
89698962
else
@@ -8992,7 +8985,6 @@ void EmitPass::emitAddrSpaceToGenericCast(llvm::AddrSpaceCastInst* addrSpaceCast
89928985
m_encoder->Push();
89938986

89948987
// Add tag to high part
8995-
m_encoder->SetPredicate(pFlag);
89968988
m_encoder->Or(srcHigh, srcHigh, m_currShader->ImmToVariable(tag << 29, ISA_TYPE_UD));
89978989
m_encoder->Push();
89988990

@@ -9011,11 +9003,12 @@ void EmitPass::emitAddrSpaceToGenericCast(llvm::AddrSpaceCastInst* addrSpaceCast
90119003
}
90129004
else
90139005
{
9014-
m_encoder->Cast(m_destination, srcV);
9015-
m_encoder->Push();
9016-
9017-
m_encoder->SetPredicate(pFlag);
9018-
m_encoder->Or(m_destination, srcV, m_currShader->ImmToVariable(static_cast<uint64_t>(tag) << 61, ISA_TYPE_UQ));
9006+
CVariable* pTempVar = m_currShader->GetNewVariable(
9007+
numLanes(m_currShader->m_SIMDSize),
9008+
ISA_TYPE_UQ, m_currShader->getGRFAlignment(),
9009+
m_destination->IsUniform(), CName::NONE);
9010+
m_encoder->Or(pTempVar, srcV, m_currShader->ImmToVariable(static_cast<uint64_t>(tag) << 61, ISA_TYPE_UQ));
9011+
m_encoder->Cast(m_destination, pTempVar);
90199012
m_encoder->Push();
90209013
}
90219014
}

0 commit comments

Comments
 (0)