Discussion: #104704 (comment)
Code:
if (!varTypeIsMask(op))
{
op = gtNewSimdCvtVectorToMaskNode(TYP_MASK, op, simdBaseJitType, simdSize);
}
The idea is that we shouldn't have to check for varTypeIsMask(op); meaning at this point, op should be returning TYP_SIMD. Therefore, we should always add a ConvertToMask node:
assert(varTypeIsSIMD(op));
op = gtNewSimdCvtVectorToMaskNode(TYP_MASK, op, simdBaseJitType, simdSize);
Discussion: #104704 (comment)
Code:
The idea is that we shouldn't have to check for
varTypeIsMask(op); meaning at this point,opshould be returningTYP_SIMD. Therefore, we should always add aConvertToMasknode:assert(varTypeIsSIMD(op)); op = gtNewSimdCvtVectorToMaskNode(TYP_MASK, op, simdBaseJitType, simdSize);