diff --git a/src/coreclr/jit/importer.cpp b/src/coreclr/jit/importer.cpp index 8b9c2bb0f701..300fd4cf98a1 100644 --- a/src/coreclr/jit/importer.cpp +++ b/src/coreclr/jit/importer.cpp @@ -7203,6 +7203,13 @@ void Compiler::impImportBlockCode(BasicBlock* block) return; } + if (opts.OptimizationEnabled() && (gtGetArrayElementClassHandle(impStackTop(1).val) == ldelemClsHnd) && + impIsClassExact(ldelemClsHnd)) + { + JITDUMP("\nldelema of T[] with T exact: skipping covariant check\n"); + goto ARR_LD; + } + GenTree* index = impPopStack().val; GenTree* arr = impPopStack().val;