Skip to content
This repository was archived by the owner on Jan 23, 2023. It is now read-only.

Commit e236ed5

Browse files
mskvortsovBruceForstall
authored andcommitted
[RyuJIT/ARM32] Fix GT_NEG decomposition (#11495)
RyuJIT/ARM32: Fix GT_NEG decomposition.
1 parent 4be9be9 commit e236ed5

File tree

1 file changed

+6
-2
lines changed

1 file changed

+6
-2
lines changed

src/jit/decomposelongs.cpp

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -922,11 +922,15 @@ GenTree* DecomposeLongs::DecomposeNeg(LIR::Use& use)
922922
loResult->gtType = TYP_INT;
923923
loResult->gtOp.gtOp1 = loOp1;
924924

925-
GenTree* zero = m_compiler->gtNewZeroConNode(TYP_INT);
925+
GenTree* zero = m_compiler->gtNewZeroConNode(TYP_INT);
926+
#if defined(_TARGET_X86_)
926927
GenTree* hiAdjust = m_compiler->gtNewOperNode(GT_ADD_HI, TYP_INT, hiOp1, zero);
927928
GenTree* hiResult = m_compiler->gtNewOperNode(GT_NEG, TYP_INT, hiAdjust);
928-
929929
Range().InsertAfter(loResult, zero, hiAdjust, hiResult);
930+
#elif defined(_TARGET_ARM_)
931+
GenTree* hiResult = m_compiler->gtNewOperNode(GT_SUB_HI, TYP_INT, zero, hiOp1);
932+
Range().InsertAfter(loResult, zero, hiResult);
933+
#endif
930934

931935
return FinalizeDecomposition(use, loResult, hiResult, hiResult);
932936
}

0 commit comments

Comments
 (0)