From: Hanjoung Lee Date: Thu, 17 Aug 2017 02:55:43 +0000 (+0900) Subject: [RyuJIT/arm32] Fix LEA codegen X-Git-Tag: submit/tizen/20210909.063632~11030^2~6513^2~308^2 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=9d153ef076bbb220c71000961937ed40d1dd6c90;p=platform%2Fupstream%2Fdotnet%2Fruntime.git [RyuJIT/arm32] Fix LEA codegen Do not generate `mov` when src and dst are the same when we generate code for LEA node. Fix dotnet/coreclr#13418 Commit migrated from https://github.com/dotnet/coreclr/commit/92c3ea6000b37737a7caa5876a12a52d61198676 --- diff --git a/src/coreclr/src/jit/codegenarmarch.cpp b/src/coreclr/src/jit/codegenarmarch.cpp index 11d2258..d751482 100644 --- a/src/coreclr/src/jit/codegenarmarch.cpp +++ b/src/coreclr/src/jit/codegenarmarch.cpp @@ -3235,7 +3235,10 @@ void CodeGen::genLeaInstruction(GenTreeAddrMode* lea) } else // offset is zero { - emit->emitIns_R_R(INS_mov, size, lea->gtRegNum, memBase->gtRegNum); + if (lea->gtRegNum != memBase->gtRegNum) + { + emit->emitIns_R_R(INS_mov, size, lea->gtRegNum, memBase->gtRegNum); + } } } else