From 7ecd1b299ac89ae079b0e37cc3ffae8344308206 Mon Sep 17 00:00:00 2001 From: Hyeongseok Oh Date: Tue, 31 Oct 2017 14:14:25 +0900 Subject: [PATCH] [RyuJIT/ARM32] Fix double type PutArgStk check bug on LSRA init Fix to handle hardfp/softfp all --- src/jit/lsraarmarch.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/jit/lsraarmarch.cpp b/src/jit/lsraarmarch.cpp index 1defa6f..08001fb 100644 --- a/src/jit/lsraarmarch.cpp +++ b/src/jit/lsraarmarch.cpp @@ -464,9 +464,9 @@ void LinearScan::TreeNodeInfoInitCall(GenTreeCall* call) if (!varTypeIsStruct(putArgChild) && !putArgChild->OperIs(GT_FIELD_LIST)) { #ifdef _TARGET_ARM_ - // The `double` types have been transformed to `long` on arm, while the actual longs + // The `double` types could been transformed to `long` on arm, while the actual longs // have been decomposed. - const bool isDouble = putArgChild->TypeGet() == TYP_LONG; + const bool isDouble = (putArgChild->TypeGet() == TYP_LONG || putArgChild->TypeGet() == TYP_DOUBLE); if (isDouble) { argNode->gtLsraInfo.srcCount = 2; -- 2.7.4