Skip to content

Commit f30c40e

Browse files
authored
JIT: Only optimize out integral casts for returned fields (#118593)
1 parent 0bdce45 commit f30c40e

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

src/coreclr/jit/lower.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5320,7 +5320,7 @@ void Lowering::LowerFieldListToFieldListOfRegisters(GenTreeFieldList* fieldLis
53205320
// then it can be removed. Those bits are undefined in all our ABIs
53215321
// for structs.
53225322
while (node->OperIs(GT_CAST) && !node->gtOverflow() && varTypeUsesIntReg(node->CastToType()) &&
5323-
(genTypeSize(regType) <= genTypeSize(node->CastToType())))
5323+
varTypeUsesIntReg(node->CastFromType()) && (genTypeSize(regType) <= genTypeSize(node->CastToType())))
53245324
{
53255325
GenTree* op = node->AsCast()->CastOp();
53265326
regEntry->SetNode(op);

0 commit comments

Comments
 (0)