summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorCarol Eidt <carol.eidt@microsoft.com>2017-06-09 11:40:22 -0700
committerGitHub <noreply@github.com>2017-06-09 11:40:22 -0700
commitc8c9f6d1ce72aa2ffcced312ce818779fc9aed0b (patch)
tree0772e38f3b28315ef36b689bfaa6fe097d171dca /src
parente3c4bd2a8768e405b00e7d807d7f2cb1a64c66e8 (diff)
parent712eefbd2c75d94eacbe97192ca0414fdd3c337b (diff)
downloadcoreclr-c8c9f6d1ce72aa2ffcced312ce818779fc9aed0b.tar.gz
coreclr-c8c9f6d1ce72aa2ffcced312ce818779fc9aed0b.tar.bz2
coreclr-c8c9f6d1ce72aa2ffcced312ce818779fc9aed0b.zip
Merge pull request #12189 from mskvortsov/FixExplicitContainedness
[RyuJIT/ARM32] Fix failures related to explicit containedness
Diffstat (limited to 'src')
-rw-r--r--src/jit/lsraarmarch.cpp14
1 files changed, 11 insertions, 3 deletions
diff --git a/src/jit/lsraarmarch.cpp b/src/jit/lsraarmarch.cpp
index e0acb51849..f58da4a671 100644
--- a/src/jit/lsraarmarch.cpp
+++ b/src/jit/lsraarmarch.cpp
@@ -59,10 +59,17 @@ void Lowering::TreeNodeInfoInitStoreLoc(GenTreeLclVarCommon* storeLoc)
// Call node srcCandidates = Bitwise-OR(allregs(GetReturnRegType(i))) for all i=0..RetRegCount-1
regMaskTP srcCandidates = m_lsra->allMultiRegCallNodeRegs(call);
op1->gtLsraInfo.setSrcCandidates(m_lsra, srcCandidates);
- return;
}
-
- CheckImmedAndMakeContained(storeLoc, op1);
+#if defined(_TARGET_ARM_)
+ else if (op1->OperGet() == GT_LONG)
+ {
+ op1->SetContained();
+ }
+#endif // _TARGET_ARM_
+ else
+ {
+ CheckImmedAndMakeContained(storeLoc, op1);
+ }
}
//------------------------------------------------------------------------
@@ -674,6 +681,7 @@ void Lowering::TreeNodeInfoInitPutArgStk(GenTreePutArgStk* argNode, fgArgTabEntr
{
// We consume all of the items in the GT_FIELD_LIST
argNode->gtLsraInfo.srcCount = info->numSlots;
+ putArgChild->SetContained();
}
else
{