From a3e818db764fcc0629163d4a92e17443d33bbce1 Mon Sep 17 00:00:00 2001 From: Hyeongseok Oh Date: Tue, 1 Aug 2017 10:44:51 +0900 Subject: [PATCH] [RyuJIT/ARM32] Remove NYI: using zero register We can remove NYI to using zero register to assign constant zero argument. There is no zero register on ARM32. (src/jit/registerarm32.h) So we can change the NYI to unreached() assertion. --- src/jit/codegenarmarch.cpp | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/jit/codegenarmarch.cpp b/src/jit/codegenarmarch.cpp index f40c33c..77d23e4 100644 --- a/src/jit/codegenarmarch.cpp +++ b/src/jit/codegenarmarch.cpp @@ -540,13 +540,15 @@ void CodeGen::genPutArgStk(GenTreePutArgStk* treeNode) // If it is contained then source must be the integer constant zero if (source->isContained()) { +#ifdef _TARGET_ARM64_ assert(source->OperGet() == GT_CNS_INT); assert(source->AsIntConCommon()->IconValue() == 0); - NYI_ARM("genPutArgStk: contained zero source"); -#ifdef _TARGET_ARM64_ emit->emitIns_S_R(storeIns, storeAttr, REG_ZR, varNumOut, argOffsetOut); -#endif // _TARGET_ARM64_ +#else // !_TARGET_ARM64_ + // There is no zero register on ARM32 + unreached(); +#endif // !_TARGET_ARM64 } else { -- 2.7.4