From 643c7e699ad9d8786c14a46116f13bedc7972918 Mon Sep 17 00:00:00 2001 From: Mikhail Skvortcov Date: Tue, 25 Apr 2017 15:04:03 +0300 Subject: [PATCH] RyuJIT/ARM32: Update GT_LCL_FLD codegen. --- src/jit/codegenarm.cpp | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/src/jit/codegenarm.cpp b/src/jit/codegenarm.cpp index 81ba35e..d40921b 100644 --- a/src/jit/codegenarm.cpp +++ b/src/jit/codegenarm.cpp @@ -491,7 +491,21 @@ void CodeGen::genCodeForTreeNode(GenTreePtr treeNode) unsigned varNum = treeNode->gtLclVarCommon.gtLclNum; assert(varNum < compiler->lvaCount); - emit->emitIns_R_S(ins_Move_Extend(targetType, treeNode->InReg()), size, targetReg, varNum, offs); + if (varTypeIsFloating(targetType)) + { + if (treeNode->InReg()) + { + NYI("GT_LCL_FLD with reg-to-reg floating point move"); + } + else + { + emit->emitIns_R_S(ins_Load(targetType), size, targetReg, varNum, offs); + } + } + else + { + emit->emitIns_R_S(ins_Move_Extend(targetType, treeNode->InReg()), size, targetReg, varNum, offs); + } } genProduceReg(treeNode); break; -- 2.7.4