Skip to content

Commit 374ec0c

Browse files
bcheng0127igcbot
authored andcommitted
Fix the implicit argument handling
Fix the implicit argument handling
1 parent 72893a3 commit 374ec0c

File tree

1 file changed

+10
-2
lines changed

1 file changed

+10
-2
lines changed

IGC/Compiler/CISACodeGen/EmitVISAPass.cpp

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20844,8 +20844,16 @@ void EmitPass::emitImplicitArgIntrinsic(llvm::GenIntrinsicInst* I)
2084420844
IGC_ASSERT_MESSAGE(arg, "Implicit argument not found!");
2084520845
if (arg)
2084620846
{
20847-
m_encoder->SetNoMask();
20848-
m_currShader->CopyVariable(GetSymbol(I), m_currShader->getOrCreateArgumentSymbol(arg, false));
20847+
if (I->getType()->isVectorTy())
20848+
{
20849+
emitVectorCopy(GetSymbol(I), m_currShader->getOrCreateArgumentSymbol(arg, false),
20850+
int_cast<unsigned>(dyn_cast<IGCLLVM::FixedVectorType>(I->getType())->getNumElements()));
20851+
}
20852+
else
20853+
{
20854+
m_encoder->SetNoMask();
20855+
m_currShader->CopyVariable(GetSymbol(I), m_currShader->getOrCreateArgumentSymbol(arg, false));
20856+
}
2084920857
}
2085020858
}
2085120859
else

0 commit comments

Comments
 (0)