Allow same-size same-register-file lclVar stores (#32750)
authorCarol Eidt <carol.eidt@microsoft.com>
Tue, 25 Feb 2020 15:49:52 +0000 (07:49 -0800)
committerGitHub <noreply@github.com>
Tue, 25 Feb 2020 15:49:52 +0000 (07:49 -0800)
Fix #32379

src/coreclr/src/jit/codegenxarch.cpp

index 0eadce2..d82193d 100644 (file)
@@ -4639,7 +4639,8 @@ void CodeGen::genCodeForStoreLclVar(GenTreeLclVar* tree)
     else
     {
         noway_assert(targetType != TYP_STRUCT);
-        assert(!varTypeIsFloating(targetType) || (targetType == op1->TypeGet()));
+        assert(varTypeUsesFloatReg(targetType) == varTypeUsesFloatReg(op1->TypeGet()));
+        assert(!varTypeUsesFloatReg(targetType) || (emitTypeSize(targetType) == emitTypeSize(op1->TypeGet())));
 
         unsigned   lclNum = tree->GetLclNum();
         LclVarDsc* varDsc = &(compiler->lvaTable[lclNum]);