diff --git a/src/libraries/System.Private.DataContractSerialization/src/ILLink/ILLink.Suppressions.xml b/src/libraries/System.Private.DataContractSerialization/src/ILLink/ILLink.Suppressions.xml
deleted file mode 100644
index 7e36a2f01ffabd..00000000000000
--- a/src/libraries/System.Private.DataContractSerialization/src/ILLink/ILLink.Suppressions.xml
+++ /dev/null
@@ -1,389 +0,0 @@
-
-
-
-
- ILLink
- IL2026
- member
- M:System.Runtime.Serialization.XmlDataContract.GenerateCreateXmlSerializableDelegate
-
-
- ILLink
- IL2026
- member
- M:System.Runtime.Serialization.XsdDataContractExporter.CanExport(System.Collections.Generic.ICollection{System.Reflection.Assembly})
-
-
- ILLink
- IL2026
- member
- M:System.Runtime.Serialization.XsdDataContractExporter.Export(System.Collections.Generic.ICollection{System.Reflection.Assembly})
-
-
- ILLink
- IL2046
- member
- M:System.Runtime.Serialization.Json.DataContractJsonSerializerImpl.InternalReadObject(System.Runtime.Serialization.XmlReaderDelegator,System.Boolean)
-
-
- ILLink
- IL2046
- member
- M:System.Runtime.Serialization.Json.DataContractJsonSerializerImpl.InternalWriteObject(System.Runtime.Serialization.XmlWriterDelegator,System.Object)
-
-
- ILLink
- IL2046
- member
- M:System.Runtime.Serialization.Json.DataContractJsonSerializerImpl.InternalWriteObjectContent(System.Runtime.Serialization.XmlWriterDelegator,System.Object)
-
-
- ILLink
- IL2046
- member
- M:System.Runtime.Serialization.Json.ReflectionJsonReader.ReflectionReadDictionaryItem(System.Runtime.Serialization.XmlReaderDelegator,System.Runtime.Serialization.XmlObjectSerializerReadContext,System.Runtime.Serialization.CollectionDataContract)
-
-
- ILLink
- IL2046
- member
- M:System.Runtime.Serialization.Json.XmlObjectSerializerReadContextComplexJson.ReadDataContractValue(System.Runtime.Serialization.DataContract,System.Runtime.Serialization.XmlReaderDelegator)
-
-
- ILLink
- IL2046
- member
- M:System.Runtime.Serialization.Json.XmlObjectSerializerWriteContextComplexJson.WriteDataContractValue(System.Runtime.Serialization.DataContract,System.Runtime.Serialization.XmlWriterDelegator,System.Object,System.RuntimeTypeHandle)
-
-
- ILLink
- IL2055
- member
- M:System.Runtime.Serialization.ClassDataContract.ClassDataContractCriticalHelper.SetKeyValuePairAdapterFlags(System.Type)
-
-
- ILLink
- IL2055
- member
- M:System.Runtime.Serialization.CollectionDataContract.CollectionDataContractCriticalHelper.GetCollectionElementType
-
-
- ILLink
- IL2055
- member
- M:System.Runtime.Serialization.CollectionDataContract.CollectionDataContractCriticalHelper.IncrementCollectionCount(System.Runtime.Serialization.XmlWriterDelegator,System.Object,System.Runtime.Serialization.XmlObjectSerializerWriteContext)
-
-
- ILLink
- IL2055
- member
- M:System.Runtime.Serialization.CollectionDataContract.IsCollectionOrTryCreate(System.Type,System.Boolean,System.Runtime.Serialization.DataContract@,System.Type@,System.Boolean)
-
-
- ILLink
- IL2055
- member
- M:System.Runtime.Serialization.DataContract.DataContractCriticalHelper.GetDataContractAdapterType(System.Type)
-
-
- ILLink
- IL2055
- member
- M:System.Runtime.Serialization.DataContract.ImportKnownTypeAttributes(System.Type,System.Collections.Generic.Dictionary{System.Type,System.Type},System.Collections.Generic.Dictionary{System.Xml.XmlQualifiedName,System.Runtime.Serialization.DataContract}@)
-
-
- ILLink
- IL2055
- member
- M:System.Runtime.Serialization.Globals.get_TypeOfHashtable
-
-
- ILLink
- IL2055
- member
- M:System.Runtime.Serialization.ReflectionReader.ReflectionCreateCollection(System.Runtime.Serialization.CollectionDataContract)
-
-
- ILLink
- IL2055
- member
- M:System.Runtime.Serialization.XmlFormatReaderGenerator.CriticalHelper.GenerateClassReader(System.Runtime.Serialization.ClassDataContract)
-
-
- ILLink
- IL2055
- member
- M:System.Runtime.Serialization.XmlFormatReaderGenerator.CriticalHelper.ReadCollection(System.Runtime.Serialization.CollectionDataContract)
-
-
- ILLink
- IL2055
- member
- M:System.Runtime.Serialization.XmlFormatReaderGenerator.CriticalHelper.WrapNullableObject(System.Reflection.Emit.LocalBuilder,System.Reflection.Emit.LocalBuilder,System.Int32)
-
-
- ILLink
- IL2055
- member
- M:System.Runtime.Serialization.XmlFormatWriterGenerator.CriticalHelper.InitArgs(System.Type)
-
-
- ILLink
- IL2055
- member
- M:System.Runtime.Serialization.XmlFormatWriterGenerator.CriticalHelper.WriteCollection(System.Runtime.Serialization.CollectionDataContract)
-
-
- ILLink
- IL2060
- member
- M:System.Runtime.Serialization.CollectionDataContract.CollectionDataContractCriticalHelper.GetEnumeratorForCollection(System.Object)
-
-
- ILLink
- IL2060
- member
- M:System.Runtime.Serialization.CollectionDataContract.CollectionDataContractCriticalHelper.IncrementCollectionCount(System.Runtime.Serialization.XmlWriterDelegator,System.Object,System.Runtime.Serialization.XmlObjectSerializerWriteContext)
-
-
- ILLink
- IL2060
- member
- M:System.Runtime.Serialization.FastInvokerBuilder.CreateGetter(System.Reflection.MemberInfo)
-
-
- ILLink
- IL2060
- member
- M:System.Runtime.Serialization.FastInvokerBuilder.CreateSetter(System.Reflection.MemberInfo)
-
-
- ILLink
- IL2060
- member
- M:System.Runtime.Serialization.FastInvokerBuilder.GetMakeNewInstanceFunc(System.Type)
-
-
- ILLink
- IL2060
- member
- M:System.Runtime.Serialization.ReflectionReader.GetCollectionSetItemDelegate``1(System.Runtime.Serialization.CollectionDataContract,System.Object,System.Boolean)
-
-
- ILLink
- IL2060
- member
- M:System.Runtime.Serialization.ReflectionReader.ReadCollectionItems(System.Runtime.Serialization.XmlReaderDelegator,System.Runtime.Serialization.XmlObjectSerializerReadContext,System.Xml.XmlDictionaryString,System.Xml.XmlDictionaryString,System.Runtime.Serialization.CollectionDataContract,System.Object,System.Boolean)
-
-
- ILLink
- IL2060
- member
- M:System.Runtime.Serialization.XmlFormatGeneratorStatics.GetDefaultValue(System.Type)
-
-
- ILLink
- IL2060
- member
- M:System.Runtime.Serialization.XmlFormatReaderGenerator.CriticalHelper.ReadCollection(System.Runtime.Serialization.CollectionDataContract)
-
-
- ILLink
- IL2060
- member
- M:System.Runtime.Serialization.XmlFormatWriterGenerator.CriticalHelper.UnwrapNullableObject(System.Reflection.Emit.LocalBuilder)
-
-
- ILLink
- IL2060
- member
- M:System.Runtime.Serialization.XmlFormatWriterGenerator.CriticalHelper.WriteCollection(System.Runtime.Serialization.CollectionDataContract)
-
-
- ILLink
- IL2067
- member
- M:System.Runtime.Serialization.SchemaExporter.InvokeGetSchemaMethod(System.Type,System.Xml.Schema.XmlSchemaSet,System.Xml.XmlQualifiedName)
-
-
- ILLink
- IL2067
- member
- M:System.Runtime.Serialization.XmlFormatReaderGenerator.UnsafeGetUninitializedObject(System.Type)
-
-
- ILLink
- IL2070
- member
- M:System.Runtime.Serialization.ClassDataContract.ClassDataContractCriticalHelper.SetKeyValuePairAdapterFlags(System.Type)
-
-
- ILLink
- IL2070
- member
- M:System.Runtime.Serialization.ClassDataContract.IsNonAttributedTypeValidForSerialization(System.Type)
-
-
- ILLink
- IL2070
- member
- M:System.Runtime.Serialization.CodeGenerator.BeginMethod(System.String,System.Type,System.Boolean)
-
-
- ILLink
- IL2070
- member
- M:System.Runtime.Serialization.CollectionDataContract.GetCollectionMethods(System.Type,System.Type,System.Type[],System.Boolean,System.Reflection.MethodInfo@,System.Reflection.MethodInfo@)
-
-
- ILLink
- IL2070
- member
- M:System.Runtime.Serialization.CollectionDataContract.IsCollectionOrTryCreate(System.Type,System.Boolean,System.Runtime.Serialization.DataContract@,System.Type@,System.Boolean)
-
-
- ILLink
- IL2070
- member
- M:System.Runtime.Serialization.DataContract.ImportKnownTypeAttributes(System.Type,System.Collections.Generic.Dictionary{System.Type,System.Type},System.Collections.Generic.Dictionary{System.Xml.XmlQualifiedName,System.Runtime.Serialization.DataContract}@)
-
-
- ILLink
- IL2070
- member
- M:System.Runtime.Serialization.ReflectionClassWriter.ReflectionWriteValue(System.Runtime.Serialization.XmlWriterDelegator,System.Runtime.Serialization.XmlObjectSerializerWriteContext,System.Type,System.Object,System.Boolean,System.Runtime.Serialization.PrimitiveDataContract)
-
-
- ILLink
- IL2070
- member
- M:System.Runtime.Serialization.SchemaExporter.InvokeSchemaProviderMethod(System.Type,System.Xml.Schema.XmlSchemaSet,System.Xml.XmlQualifiedName@,System.Xml.Schema.XmlSchemaType@,System.Boolean@)
-
-
- ILLink
- IL2072
- member
- M:System.Runtime.Serialization.ReflectionReader.ReflectionCreateCollection(System.Runtime.Serialization.CollectionDataContract)
-
-
- ILLink
- IL2075
- member
- M:System.Runtime.Serialization.ClassDataContract.ClassDataContractCriticalHelper.EnsureMethodsImported
-
-
- ILLink
- IL2075
- member
- M:System.Runtime.Serialization.ClassDataContract.ClassDataContractCriticalHelper.GetISerializableConstructor
-
-
- ILLink
- IL2075
- member
- M:System.Runtime.Serialization.ClassDataContract.ClassDataContractCriticalHelper.GetNonAttributedTypeConstructor
-
-
- ILLink
- IL2075
- member
- M:System.Runtime.Serialization.ClassDataContract.ClassDataContractCriticalHelper.ImportDataMembers
-
-
- ILLink
- IL2075
- member
- M:System.Runtime.Serialization.CollectionDataContract.CollectionDataContractCriticalHelper.GetCollectionElementType
-
-
- ILLink
- IL2075
- member
- M:System.Runtime.Serialization.CollectionDataContract.FindCollectionMethodsOnInterface(System.Type,System.Type,System.Reflection.MethodInfo@,System.Reflection.MethodInfo@)
-
-
- ILLink
- IL2075
- member
- M:System.Runtime.Serialization.CollectionDataContract.GetTargetMethodWithName(System.String,System.Type,System.Type)
-
-
- ILLink
- IL2075
- member
- M:System.Runtime.Serialization.CollectionDataContract.IsCollectionOrTryCreate(System.Type,System.Boolean,System.Runtime.Serialization.DataContract@,System.Type@,System.Boolean)
-
-
- ILLink
- IL2075
- member
- M:System.Runtime.Serialization.DataContract.DataContractCriticalHelper.get_ParseMethod
-
-
- ILLink
- IL2075
- member
- M:System.Runtime.Serialization.EnumDataContract.EnumDataContractCriticalHelper.ImportDataMembers
-
-
- ILLink
- IL2075
- member
- M:System.Runtime.Serialization.ReflectionClassWriter.ReflectionWriteValue(System.Runtime.Serialization.XmlWriterDelegator,System.Runtime.Serialization.XmlObjectSerializerWriteContext,System.Type,System.Object,System.Boolean,System.Runtime.Serialization.PrimitiveDataContract)
-
-
- ILLink
- IL2075
- member
- M:System.Runtime.Serialization.ReflectionReader.ReflectionCreateCollection(System.Runtime.Serialization.CollectionDataContract)
-
-
- ILLink
- IL2075
- member
- M:System.Runtime.Serialization.XmlDataContract.GenerateCreateXmlSerializableDelegate
-
-
- ILLink
- IL2075
- member
- M:System.Runtime.Serialization.XmlDataContract.GetConstructor
-
-
- ILLink
- IL2075
- member
- M:System.Runtime.Serialization.XmlFormatGeneratorStatics.get_GetArrayLengthMethod
-
-
- ILLink
- IL2075
- member
- M:System.Runtime.Serialization.XmlFormatGeneratorStatics.get_HashtableCtor
-
-
- ILLink
- IL2075
- member
- M:System.Runtime.Serialization.XmlFormatReaderGenerator.CriticalHelper.CreateObject(System.Runtime.Serialization.ClassDataContract)
-
-
- ILLink
- IL2075
- member
- M:System.Runtime.Serialization.XmlFormatReaderGenerator.CriticalHelper.ReadCollection(System.Runtime.Serialization.CollectionDataContract)
-
-
- ILLink
- IL2075
- member
- M:System.Runtime.Serialization.XmlFormatReaderGenerator.CriticalHelper.WrapNullableObject(System.Reflection.Emit.LocalBuilder,System.Reflection.Emit.LocalBuilder,System.Int32)
-
-
- ILLink
- IL2075
- member
- M:System.Runtime.Serialization.XmlFormatWriterGenerator.CriticalHelper.WriteCollection(System.Runtime.Serialization.CollectionDataContract)
-
-
-
diff --git a/src/libraries/System.Private.DataContractSerialization/src/System/Runtime/Serialization/AccessorBuilder.cs b/src/libraries/System.Private.DataContractSerialization/src/System/Runtime/Serialization/AccessorBuilder.cs
index 8052ffd0fd7c97..6dbb9d6196b8bf 100644
--- a/src/libraries/System.Private.DataContractSerialization/src/System/Runtime/Serialization/AccessorBuilder.cs
+++ b/src/libraries/System.Private.DataContractSerialization/src/System/Runtime/Serialization/AccessorBuilder.cs
@@ -3,6 +3,7 @@
using System;
using System.Collections.Generic;
+using System.Diagnostics.CodeAnalysis;
using System.Linq;
using System.Reflection;
using System.Runtime.Serialization;
@@ -23,12 +24,18 @@ internal static class FastInvokerBuilder
private static readonly MethodInfo s_createSetterInternal = typeof(FastInvokerBuilder).GetMethod(nameof(CreateSetterInternal), BindingFlags.NonPublic | BindingFlags.Public | BindingFlags.Static)!;
private static readonly MethodInfo s_make = typeof(FastInvokerBuilder).GetMethod(nameof(Make), BindingFlags.NonPublic | BindingFlags.Public | BindingFlags.Static)!;
- public static Func