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.
// If it is contained then source must be the integer constant zero
if (source->isContained())
{
// If it is contained then source must be the integer constant zero
if (source->isContained())
{
assert(source->OperGet() == GT_CNS_INT);
assert(source->AsIntConCommon()->IconValue() == 0);
assert(source->OperGet() == GT_CNS_INT);
assert(source->AsIntConCommon()->IconValue() == 0);
- NYI_ARM("genPutArgStk: contained zero source");
emit->emitIns_S_R(storeIns, storeAttr, REG_ZR, varNumOut, argOffsetOut);
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