Skip to content

Commit 1d5964e

Browse files
committed
Change ConditionalSelect nodes' type to the mask type if the contained node is of the mask type
1 parent 178830f commit 1d5964e

File tree

1 file changed

+6
-1
lines changed

1 file changed

+6
-1
lines changed

src/coreclr/jit/lowerarmarch.cpp

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1311,9 +1311,14 @@ GenTree* Lowering::LowerHWIntrinsic(GenTreeHWIntrinsic* node)
13111311
GenTree* trueMask = comp->gtNewSimdAllTrueMaskNode(simdBaseJitType, simdSize);
13121312
GenTree* trueVal = node;
13131313
GenTree* falseVal = comp->gtNewZeroConNode(simdType);
1314+
var_types nodeType = simdType;
1315+
if (HWIntrinsicInfo::ReturnsPerElementMask(node->GetHWIntrinsicId()))
1316+
{
1317+
nodeType = TYP_MASK;
1318+
}
13141319

13151320
GenTreeHWIntrinsic* condSelNode =
1316-
comp->gtNewSimdHWIntrinsicNode(simdType, trueMask, trueVal, falseVal, NI_Sve_ConditionalSelect,
1321+
comp->gtNewSimdHWIntrinsicNode(nodeType, trueMask, trueVal, falseVal, NI_Sve_ConditionalSelect,
13171322
simdBaseJitType, simdSize);
13181323

13191324
BlockRange().InsertBefore(node, trueMask);

0 commit comments

Comments
 (0)