File tree Expand file tree Collapse file tree 1 file changed +4
-12
lines changed Expand file tree Collapse file tree 1 file changed +4
-12
lines changed Original file line number Diff line number Diff line change @@ -2087,18 +2087,10 @@ int InterpCompiler::GenerateCode(CORINFO_METHOD_INFO* methodInfo)
2087
2087
// We need to always generate this opcode because even if we have no IL locals, we may have
2088
2088
// global vars which contain managed pointers or interior pointers
2089
2089
m_pInitLocalsIns = AddIns (INTOP_INITLOCALS);
2090
-
2091
- if (methodInfo->options & CORINFO_OPT_INIT_LOCALS)
2092
- {
2093
- m_pInitLocalsIns->data [0 ] = m_ILLocalsOffset;
2094
- m_pInitLocalsIns->data [1 ] = m_ILLocalsSize;
2095
- }
2096
- else
2097
- {
2098
- // Generate a 0-byte memset at the *end* of IL locals so when we extend it later we won't zero the IL locals
2099
- m_pInitLocalsIns->data [0 ] = m_ILLocalsOffset + m_ILLocalsSize;
2100
- m_pInitLocalsIns->data [1 ] = 0 ;
2101
- }
2090
+ // if (methodInfo->options & CORINFO_OPT_INIT_LOCALS)
2091
+ // FIXME: We can't currently skip zeroing locals because we don't have accurate liveness for global refs and byrefs
2092
+ m_pInitLocalsIns->data [0 ] = m_ILLocalsOffset;
2093
+ m_pInitLocalsIns->data [1 ] = m_ILLocalsSize;
2102
2094
2103
2095
codeEnd = m_ip + m_ILCodeSize;
2104
2096
You can’t perform that action at this time.
0 commit comments