// should be labeled as simd intrinsic related struct. This is done so that
// we do not promote the local, thus avoiding conflicting access methods
// (fields vs. whole-register).
- if (varTypeIsSIMD(srcOrFillVal) && srcOrFillVal->OperIsHWIntrinsic())
+ if (varTypeIsSIMD(srcOrFillVal) && srcOrFillVal->OperIs(GT_HWINTRINSIC, GT_CNS_VEC))
{
// TODO-Cleanup: similar logic already exists in "gtNewAssignNode",
// however, it is not enabled for x86. Fix that and delete this code.
GenTreeLclVar* dstLclNode = nullptr;
+
if (dst->OperIs(GT_LCL_VAR))
{
dstLclNode = dst->AsLclVar();
{
setLclRelatedToSIMDIntrinsic(op);
}
- else if (op->OperIs(GT_OBJ) && op->AsIndir()->Addr()->OperIs(GT_LCL_VAR_ADDR))
+ else if (op->OperIsBlk() && op->AsIndir()->Addr()->OperIs(GT_LCL_VAR_ADDR))
{
setLclRelatedToSIMDIntrinsic(op->AsIndir()->Addr());
}