diff --git a/src/coreclr/vm/memberload.cpp b/src/coreclr/vm/memberload.cpp
index 1cb98fd00b3ed9..7192bd3a53ec1c 100644
--- a/src/coreclr/vm/memberload.cpp
+++ b/src/coreclr/vm/memberload.cpp
@@ -365,18 +365,9 @@ void MemberLoader::GetDescFromMemberRef(ModuleBase * pModule,
if (pFD->IsStatic() && pMT->HasGenericsStaticsInfo())
{
- //
- // this is duplicated logic GetFieldDescByIndex
- //
- INDEBUG(mdFieldDef token = pFD->GetMemberDef();)
-
- DWORD pos = static_cast(pFD - (pMT->GetApproxFieldDescListRaw() + pMT->GetNumIntroducedInstanceFields()));
- _ASSERTE(pos >= 0 && pos < pMT->GetNumStaticFields());
-
- pFD = pMT->GetGenericsStaticFieldDescs() + pos;
- _ASSERTE(pFD->GetMemberDef() == token);
- _ASSERTE(!pFD->IsSharedByGenericInstantiations());
- _ASSERTE(pFD->GetEnclosingMethodTable() == pMT);
+ MethodTable* pFieldMT = pFD->GetApproxEnclosingMethodTable();
+ DWORD index = pFieldMT->GetIndexForFieldDesc(pFD);
+ pFD = pMT->GetFieldDescByIndex(index);
}
*ppFD = pFD;
diff --git a/src/libraries/System.Runtime.Loader/tests/ApplyUpdateTest.cs b/src/libraries/System.Runtime.Loader/tests/ApplyUpdateTest.cs
index 799381f87ed0f5..05b3736341b6b8 100644
--- a/src/libraries/System.Runtime.Loader/tests/ApplyUpdateTest.cs
+++ b/src/libraries/System.Runtime.Loader/tests/ApplyUpdateTest.cs
@@ -837,7 +837,6 @@ public static void TestReflectionAddNewMethod()
});
}
- [ActiveIssue("https://github.com/dotnet/runtime/issues/87574", TestRuntimes.CoreCLR)]
[ConditionalFact(typeof(ApplyUpdateUtil), nameof(ApplyUpdateUtil.IsSupported))]
public static void TestGenericAddStaticField()
{