Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[JitDiff ARM64] [EgorBo] JIT: Unroll more Equals/StartsWith/EndsWith on arm64 #738

Open
MihuBot opened this issue Oct 20, 2024 · 3 comments

Comments

@MihuBot
Copy link
Owner

MihuBot commented Oct 20, 2024

Job completed in 16 minutes 42 seconds.
dotnet/runtime#109036

Diffs

Diffs
Found 384 files with textual diffs.

Summary of Code Size diffs:
(Lower is better)

Total bytes of base: 48145688
Total bytes of diff: 48166780
Total bytes of delta: 21092 (0.04 % of base)
Total relative delta: 63.17
    diff is a regression.
    relative diff is a regression.


Total byte diff includes -476 bytes from reconciling methods
	Base had    1 unique methods,      476 unique bytes
	Diff had    0 unique methods,        0 unique bytes

Top file regressions (bytes):
        4796 : System.Data.Common.dasm (0.24 % of base)
        4660 : System.Private.DataContractSerialization.dasm (0.37 % of base)
        4248 : System.Linq.Parallel.dasm (0.17 % of base)
        2500 : System.ComponentModel.Annotations.dasm (3.67 % of base)
        2464 : System.Private.Xml.dasm (0.05 % of base)
        1172 : System.Text.Json.dasm (0.07 % of base)
        1020 : System.Data.Odbc.dasm (0.35 % of base)
         760 : System.ServiceModel.Syndication.dasm (0.39 % of base)
         748 : System.Security.Cryptography.Xml.dasm (0.31 % of base)
         472 : System.Configuration.ConfigurationManager.dasm (0.09 % of base)
         316 : System.Security.Cryptography.dasm (0.02 % of base)
         300 : System.Net.ServerSentEvents.dasm (0.70 % of base)
         216 : System.Security.Cryptography.Pkcs.dasm (0.05 % of base)
         176 : System.Reflection.Emit.dasm (0.12 % of base)
         172 : System.Private.Xml.Linq.dasm (0.08 % of base)
         132 : System.Collections.Concurrent.dasm (0.03 % of base)
         108 : System.Composition.Hosting.dasm (0.08 % of base)
         104 : Microsoft.Extensions.Diagnostics.dasm (0.56 % of base)
         104 : System.Net.WebClient.dasm (0.16 % of base)
          96 : System.Private.CoreLib.dasm (0.00 % of base)
          92 : Microsoft.VisualBasic.Core.dasm (0.01 % of base)
          76 : System.ComponentModel.Composition.Registration.dasm (0.06 % of base)
          72 : System.CodeDom.dasm (0.03 % of base)
          60 : System.Net.HttpListener.dasm (0.05 % of base)
          56 : System.Threading.Tasks.Dataflow.dasm (0.00 % of base)
          56 : Microsoft.Extensions.Logging.Configuration.dasm (0.59 % of base)
          52 : System.Text.Encoding.CodePages.dasm (0.06 % of base)
          48 : System.Reflection.MetadataLoadContext.dasm (0.02 % of base)
          48 : System.Net.NetworkInformation.dasm (0.07 % of base)
          44 : System.IO.Packaging.dasm (0.03 % of base)
          40 : System.Threading.RateLimiting.dasm (0.02 % of base)
          28 : System.Net.NameResolution.dasm (0.05 % of base)
          28 : ILCompiler.Reflection.ReadyToRun.dasm (0.01 % of base)
          24 : Microsoft.Extensions.Logging.dasm (0.05 % of base)
          24 : Microsoft.Extensions.Hosting.dasm (0.03 % of base)
          24 : System.IO.Compression.dasm (0.02 % of base)
          24 : System.Security.Permissions.dasm (0.07 % of base)
          20 : System.Net.Requests.dasm (0.01 % of base)
          20 : System.ComponentModel.TypeConverter.dasm (0.01 % of base)
          16 : Microsoft.CSharp.dasm (0.00 % of base)
          16 : System.Threading.Channels.dasm (0.01 % of base)
          16 : Microsoft.Extensions.DependencyInjection.Abstractions.dasm (0.02 % of base)
          16 : System.Net.Http.Json.dasm (0.01 % of base)
          12 : System.ObjectModel.dasm (0.01 % of base)
          12 : System.Text.RegularExpressions.dasm (0.00 % of base)
          12 : Microsoft.Extensions.Caching.Abstractions.dasm (0.03 % of base)
          12 : System.Text.Encodings.Web.dasm (0.04 % of base)
           8 : Microsoft.Win32.SystemEvents.dasm (0.14 % of base)
           8 : System.Net.WebProxy.dasm (0.11 % of base)
           8 : System.Threading.dasm (0.04 % of base)
           8 : System.IO.Compression.ZipFile.dasm (0.04 % of base)
           8 : System.Collections.dasm (0.00 % of base)
           8 : Microsoft.Extensions.Caching.Memory.dasm (0.04 % of base)
           8 : System.Net.WebSockets.dasm (0.00 % of base)
           8 : System.Reflection.Context.dasm (0.01 % of base)
           4 : System.Diagnostics.TraceSource.dasm (0.01 % of base)
           4 : System.Net.WebHeaderCollection.dasm (0.02 % of base)
           4 : System.Formats.Tar.dasm (0.00 % of base)
           4 : System.Runtime.Numerics.dasm (0.00 % of base)
           4 : System.Net.WebSockets.Client.dasm (0.01 % of base)

Top file improvements (bytes):
       -2084 : System.Formats.Asn1.dasm (-1.93 % of base)
        -776 : System.Reflection.Metadata.dasm (-0.11 % of base)
        -208 : System.ComponentModel.Primitives.dasm (-0.90 % of base)
        -196 : System.Diagnostics.DiagnosticSource.dasm (-0.06 % of base)
        -100 : System.Linq.dasm (-0.01 % of base)
         -96 : System.Composition.TypedParts.dasm (-0.16 % of base)
         -88 : System.Composition.Convention.dasm (-0.06 % of base)
         -84 : System.ComponentModel.Composition.dasm (-0.02 % of base)
         -72 : System.Transactions.Local.dasm (-0.04 % of base)
         -68 : System.Net.Security.dasm (-0.02 % of base)
         -60 : System.Resources.Writer.dasm (-0.54 % of base)
         -48 : System.DirectoryServices.Protocols.dasm (-0.03 % of base)
         -48 : System.Resources.Extensions.dasm (-0.08 % of base)
         -40 : System.Reflection.DispatchProxy.dasm (-0.17 % of base)
         -40 : System.Runtime.Serialization.Schema.dasm (-0.06 % of base)
         -40 : System.Net.Http.dasm (-0.00 % of base)
         -40 : System.Net.Quic.dasm (-0.02 % of base)
         -36 : Microsoft.Extensions.FileSystemGlobbing.dasm (-0.11 % of base)
         -32 : System.Console.dasm (-0.03 % of base)
         -32 : System.Runtime.Caching.dasm (-0.04 % of base)
         -32 : Microsoft.Extensions.Logging.Console.dasm (-0.04 % of base)
         -28 : System.Collections.Immutable.dasm (-0.00 % of base)
         -28 : System.IO.FileSystem.DriveInfo.dasm (-0.09 % of base)
         -28 : System.Linq.Expressions.dasm (-0.00 % of base)
         -24 : System.Threading.Tasks.Parallel.dasm (-0.01 % of base)
         -24 : System.Net.Primitives.dasm (-0.02 % of base)
         -24 : Microsoft.Extensions.Http.dasm (-0.03 % of base)
         -20 : Microsoft.Extensions.Configuration.dasm (-0.09 % of base)
         -20 : Microsoft.Extensions.DependencyInjection.dasm (-0.02 % of base)
         -16 : System.IO.FileSystem.Watcher.dasm (-0.05 % of base)
         -12 : Microsoft.Extensions.Configuration.Xml.dasm (-0.09 % of base)
          -8 : System.Net.Sockets.dasm (-0.00 % of base)
          -8 : System.Runtime.InteropServices.dasm (-0.03 % of base)
          -8 : Microsoft.Extensions.DependencyModel.dasm (-0.01 % of base)
          -4 : System.Net.Ping.dasm (-0.01 % of base)
          -4 : System.Diagnostics.StackTrace.dasm (-0.11 % of base)
          -4 : Microsoft.Extensions.Logging.EventSource.dasm (-0.01 % of base)
          -4 : Microsoft.Extensions.Configuration.Json.dasm (-0.05 % of base)
          -4 : System.Memory.dasm (-0.00 % of base)
          -4 : Microsoft.Extensions.Configuration.Ini.dasm (-0.08 % of base)
          -4 : System.Security.Claims.dasm (-0.02 % of base)
          -4 : Microsoft.Extensions.Options.dasm (-0.01 % of base)
          -4 : System.Formats.Nrbf.dasm (-0.01 % of base)

103 total files with Code Size differences (43 improved, 60 regressed), 156 unchanged.

Top method regressions (bytes):
         840 (48.17 % of base) : System.Data.Common.dasm - System.Data.XDRSchema:FindTypeNode(System.Xml.XmlElement):System.Xml.XmlElement (FullOpts)
         484 (46.01 % of base) : System.Text.Json.dasm - System.Text.Json.Reflection.ReflectionExtensions:IsImmutableEnumerableType(System.Type):ubyte (FullOpts)
         464 (45.49 % of base) : System.Text.Json.dasm - System.Text.Json.Reflection.ReflectionExtensions:GetImmutableEnumerableConstructingTypeName(System.Type):System.String (FullOpts)
         460 (9.14 % of base) : System.Security.Cryptography.Xml.dasm - System.Security.Cryptography.Xml.CryptoHelpers:CreateFromKnownName(System.String):System.Object (FullOpts)
         328 (6.44 % of base) : System.Data.Common.dasm - System.Data.DataSet:ReadXml(System.Xml.XmlReader,ubyte):int:this (FullOpts)
         328 (6.93 % of base) : System.Data.Common.dasm - System.Data.DataTable:ReadXml(System.Xml.XmlReader,ubyte):int:this (FullOpts)
         260 (4.87 % of base) : System.Data.Common.dasm - System.Data.DataTable:ReadXml(System.Xml.XmlReader,int,ubyte):int:this (FullOpts)
         248 (19.31 % of base) : System.ComponentModel.Annotations.dasm - System.ComponentModel.DataAnnotations.CustomValidationAttribute:ValidateMethodParameter():System.String:this (FullOpts)
         248 (4.99 % of base) : System.Data.Common.dasm - System.Data.DataSet:ReadXml(System.Xml.XmlReader,int,ubyte):int:this (FullOpts)
         240 (8.89 % of base) : System.Data.Common.dasm - System.Data.DataTable:ReadXmlDiffgram(System.Xml.XmlReader):this (FullOpts)
         184 (4.78 % of base) : System.Data.Common.dasm - System.Data.DataSet:ReadXmlDiffgram(System.Xml.XmlReader):this (FullOpts)
         172 (6.61 % of base) : System.Data.Common.dasm - System.Data.DataSet:ReadXmlSchema(System.Xml.XmlReader,ubyte):this (FullOpts)
         160 (6.20 % of base) : System.Private.DataContractSerialization.dasm - System.Xml.XmlBaseWriter:StartAttribute(byref,System.String,System.String,System.Xml.XmlDictionaryString):this (FullOpts)
         152 (122.58 % of base) : System.Configuration.ConfigurationManager.dasm - System.Configuration.ClientConfigurationHost:IsUserConfig(System.String):ubyte (FullOpts)
         152 (14.79 % of base) : System.Reflection.Emit.dasm - System.Reflection.Emit.ParameterBuilderImpl:SetCustomAttributeCore(System.Reflection.ConstructorInfo,System.ReadOnlySpan`1[ubyte]):this (FullOpts)
         132 (23.57 % of base) : System.ComponentModel.Annotations.dasm - System.ComponentModel.DataAnnotations.RangeAttribute:GetValidationErrorMessage():System.String:this (FullOpts)
         132 (11.00 % of base) : System.Private.Xml.Linq.dasm - System.Xml.Linq.XAttribute:ValidateAttribute(System.Xml.Linq.XName,System.String) (FullOpts)
         128 (4.46 % of base) : System.Data.Common.dasm - System.Data.XDRSchema:HandleColumn(System.Xml.XmlElement,System.Data.DataTable):this (FullOpts)
         124 (4.51 % of base) : System.Data.Common.dasm - System.Data.XSDSchema:HandleSimpleTypeSimpleContentColumn(System.Xml.Schema.XmlSchemaSimpleType,System.String,System.Data.DataTable,ubyte,System.Xml.XmlAttribute[],ubyte):this (FullOpts)
         120 (30.00 % of base) : System.ComponentModel.Annotations.dasm - System.ComponentModel.DataAnnotations.CustomValidationAttribute:ValidateValidatorTypeParameter():System.String:this (FullOpts)
         116 (14.87 % of base) : System.Private.CoreLib.dasm - System.Runtime.CompilerServices.RuntimeFeature:IsSupported(System.String):ubyte (FullOpts)
         112 (6.62 % of base) : System.Private.DataContractSerialization.dasm - System.Xml.XmlBaseWriter+NamespaceManager:AddNamespace(System.String,System.String,System.Xml.XmlDictionaryString):this (FullOpts)
         108 (14.29 % of base) : System.Data.Common.dasm - System.Data.XDRSchema:HandleTypeNode(System.Xml.XmlElement,System.Data.DataTable,System.Collections.ArrayList):this (FullOpts)
         108 (5.05 % of base) : System.Data.Common.dasm - System.Data.XSDSchema:HandleSimpleContentColumn(System.String,System.Data.DataTable,ubyte,System.Xml.XmlAttribute[],ubyte):this (FullOpts)
         108 (27.55 % of base) : System.Private.CoreLib.dasm - System.Diagnostics.Tracing.EventSource:AttributeTypeNamesMatch(System.Type,System.Type):ubyte (FullOpts)
         104 (13.40 % of base) : Microsoft.Extensions.Diagnostics.dasm - Microsoft.Extensions.Diagnostics.Metrics.Configuration.MetricsConfigureOptions:LoadConfig(Microsoft.Extensions.Diagnostics.Metrics.MetricsOptions):this (FullOpts)
         104 (17.81 % of base) : System.Data.Common.dasm - System.Data.XMLDiffLoader:LoadDiffGram(System.Data.DataSet,System.Xml.XmlReader):this (FullOpts)
         100 (18.12 % of base) : System.Data.Odbc.dasm - System.Data.Odbc.TypeMap:FromSqlType(short):System.Data.Odbc.TypeMap (FullOpts)
         100 (9.80 % of base) : System.Net.WebClient.dasm - System.Net.WebClient:GetValuesToUpload(System.Collections.Specialized.NameValueCollection):ubyte[]:this (FullOpts)
          96 (20.87 % of base) : System.Data.Odbc.dasm - System.Data.Odbc.TypeMap:FromOdbcType(int):System.Data.Odbc.TypeMap (FullOpts)
          96 (12.90 % of base) : System.Data.Common.dasm - System.Data.XMLDiffLoader:LoadDiffGram(System.Data.DataTable,System.Xml.XmlReader):this (FullOpts)
          96 (4.90 % of base) : System.ServiceModel.Syndication.dasm - System.ServiceModel.Syndication.AtomPub10ServiceDocumentFormatter:ReadReferencedCategories(System.Xml.XmlReader,System.ServiceModel.Syndication.ReferencedCategoriesDocument,System.Uri,System.Uri,System.String,int) (FullOpts)
          92 (12.23 % of base) : System.Data.Common.dasm - System.Data.XDRSchema:IsXDRField(System.Xml.XmlElement,System.Xml.XmlElement):ubyte (FullOpts)
          92 (8.81 % of base) : System.Data.Common.dasm - System.Data.XmlDataLoader:LoadRows(System.Data.DataRow,System.Xml.XmlNode):this (FullOpts)
          92 (5.76 % of base) : System.Private.Xml.dasm - System.Xml.XmlWellFormedWriter:PushNamespaceExplicit(System.String,System.String):ubyte:this (FullOpts)
          92 (4.77 % of base) : System.Private.Xml.dasm - System.Xml.XmlWellFormedWriter:WriteStartAttribute(System.String,System.String,System.String):this (FullOpts)
          88 (3.42 % of base) : System.ServiceModel.Syndication.dasm - System.ServiceModel.Syndication.AtomPub10ServiceDocumentFormatter:ReadInlineCategories(System.Xml.XmlReader,System.ServiceModel.Syndication.InlineCategoriesDocument,System.Uri,System.String,int) (FullOpts)
          88 (13.84 % of base) : System.Private.Xml.dasm - System.Xml.Serialization.TempAssembly:ValidateEncodingStyle(System.String,System.String):System.String:this (FullOpts)
          88 (1.10 % of base) : System.Private.Xml.dasm - System.Xml.Serialization.XmlSerializationReaderILGen:WritePrimitive(System.Xml.Serialization.TypeMapping,System.String):this (FullOpts)
          88 (5.03 % of base) : System.Private.DataContractSerialization.dasm - System.Xml.XmlBaseReader:AddXmlnsAttribute(System.Xml.XmlBaseReader+Namespace):System.Xml.XmlBaseReader+XmlAttributeNode:this (FullOpts)
          84 (2.91 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.Json.XmlJsonWriter:WriteStartAttribute(System.String,System.String,System.String):this (FullOpts)
          80 (4.00 % of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.X509Certificates.X509CertificateLoader:ProcessSafeContents(System.ReadOnlyMemory`1[ubyte],System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits,byref,byref) (FullOpts)
          80 (2.84 % of base) : System.ServiceModel.Syndication.dasm - System.ServiceModel.Syndication.Atom10FeedFormatter:ReadFeedFrom(System.Xml.XmlReader,System.ServiceModel.Syndication.SyndicationFeed,ubyte):System.ServiceModel.Syndication.SyndicationFeed:this (FullOpts)
          80 (3.59 % of base) : System.ServiceModel.Syndication.dasm - System.ServiceModel.Syndication.Atom10FeedFormatter:ReadItemFrom(System.Xml.XmlReader,System.ServiceModel.Syndication.SyndicationItem,System.Uri):this (FullOpts)
          76 (19.59 % of base) : System.Net.Http.dasm - System.Net.Http.AuthenticationHelper:ProxySupportsConnectionAuth(System.Net.Http.HttpResponseMessage):ubyte (FullOpts)
          76 (2.90 % of base) : System.ServiceModel.Syndication.dasm - System.ServiceModel.Syndication.AtomPub10ServiceDocumentFormatter:ReadDocument(System.Xml.XmlReader):this (FullOpts)
          76 (3.45 % of base) : System.ServiceModel.Syndication.dasm - System.ServiceModel.Syndication.AtomPub10ServiceDocumentFormatter:ReadWorkspace(System.Xml.XmlReader,System.ServiceModel.Syndication.ServiceDocument):System.ServiceModel.Syndication.Workspace:this (FullOpts)
          76 (19.39 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.XmlQueryType:QNameToString(System.Xml.XmlQualifiedName):System.String (FullOpts)
          76 (8.23 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.XsltOld.AttributeAction:CreateAttributeQName(System.String,System.String,System.Xml.Xsl.XsltOld.InputScopeManager):System.Xml.Xsl.XsltOld.PrefixQName (FullOpts)
          72 (4.25 % of base) : System.CodeDom.dasm - Microsoft.CSharp.CSharpCodeGenerator:GenerateAttributes(System.CodeDom.CodeAttributeDeclarationCollection,System.String,ubyte):this (FullOpts)
          72 (10.34 % of base) : System.Data.Common.dasm - System.Data.DataTable:IsEmptyXml(System.Xml.XmlReader):ubyte:this (FullOpts)
          72 (2.60 % of base) : System.Private.Xml.dasm - System.Xml.Schema.SchemaCollectionPreprocessor:LoadExternals(System.Xml.Schema.XmlSchema,System.Xml.Schema.XmlSchemaCollection):this (FullOpts)
          72 (4.43 % of base) : System.Private.Xml.dasm - System.Xml.Serialization.XmlSchemaImporter:FindDataType(System.Xml.XmlQualifiedName,int):System.Xml.Schema.XmlSchemaSimpleType:this (FullOpts)
          72 (4.04 % of base) : System.Private.Xml.dasm - System.Xml.XmlWellFormedWriter:WriteStartAttributeAsync_NoAdvanceState(System.String,System.String,System.String):System.Threading.Tasks.Task:this (FullOpts)
          68 (19.10 % of base) : System.Data.Odbc.dasm - System.Data.Odbc.TypeMap:FromDbType(int):System.Data.Odbc.TypeMap (FullOpts)
          68 (7.17 % of base) : System.Data.Common.dasm - System.Data.XmlTreeGen:FindTypeNode(System.Xml.XmlElement,System.String):System.Xml.XmlElement (FullOpts)
          68 (8.76 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.SpoolingTask+<>c__DisplayClass0_0`2[double,System.Nullable`1[int]]:<SpoolStopAndGo>b__0():this (FullOpts)
          68 (8.76 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.SpoolingTask+<>c__DisplayClass0_0`2[int,System.Nullable`1[int]]:<SpoolStopAndGo>b__0():this (FullOpts)
          68 (8.76 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.SpoolingTask+<>c__DisplayClass0_0`2[long,System.Nullable`1[int]]:<SpoolStopAndGo>b__0():this (FullOpts)
          68 (8.76 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.SpoolingTask+<>c__DisplayClass0_0`2[short,System.Nullable`1[int]]:<SpoolStopAndGo>b__0():this (FullOpts)
          68 (7.66 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.SpoolingTask+<>c__DisplayClass0_0`2[System.__Canon,System.Nullable`1[int]]:<SpoolStopAndGo>b__0():this (FullOpts)
          68 (8.76 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.SpoolingTask+<>c__DisplayClass0_0`2[System.Nullable`1[int],System.Nullable`1[int]]:<SpoolStopAndGo>b__0():this (FullOpts)
          68 (8.76 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.SpoolingTask+<>c__DisplayClass0_0`2[System.Numerics.Vector`1[float],System.Nullable`1[int]]:<SpoolStopAndGo>b__0():this (FullOpts)
          68 (8.76 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.SpoolingTask+<>c__DisplayClass0_0`2[ubyte,System.Nullable`1[int]]:<SpoolStopAndGo>b__0():this (FullOpts)
          68 (9.66 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.SpoolingTask+<>c__DisplayClass2_0`2[double,System.Nullable`1[int]]:<SpoolForAll>b__0():this (FullOpts)
          68 (9.66 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.SpoolingTask+<>c__DisplayClass2_0`2[int,System.Nullable`1[int]]:<SpoolForAll>b__0():this (FullOpts)
          68 (9.66 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.SpoolingTask+<>c__DisplayClass2_0`2[long,System.Nullable`1[int]]:<SpoolForAll>b__0():this (FullOpts)
          68 (9.66 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.SpoolingTask+<>c__DisplayClass2_0`2[short,System.Nullable`1[int]]:<SpoolForAll>b__0():this (FullOpts)
          68 (8.33 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.SpoolingTask+<>c__DisplayClass2_0`2[System.__Canon,System.Nullable`1[int]]:<SpoolForAll>b__0():this (FullOpts)
          68 (9.66 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.SpoolingTask+<>c__DisplayClass2_0`2[System.Nullable`1[int],System.Nullable`1[int]]:<SpoolForAll>b__0():this (FullOpts)
          68 (9.66 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.SpoolingTask+<>c__DisplayClass2_0`2[System.Numerics.Vector`1[float],System.Nullable`1[int]]:<SpoolForAll>b__0():this (FullOpts)
          68 (9.66 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.SpoolingTask+<>c__DisplayClass2_0`2[ubyte,System.Nullable`1[int]]:<SpoolForAll>b__0():this (FullOpts)
          68 (2.48 % of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.X509Certificates.CertificateRequest:VerifyX509Signature(System.ReadOnlySpan`1[ubyte],System.ReadOnlySpan`1[ubyte],System.Security.Cryptography.X509Certificates.PublicKey,System.Security.Cryptography.Asn1.AlgorithmIdentifierAsn):ubyte (FullOpts)
          68 (3.01 % of base) : System.Private.Xml.dasm - System.Xml.Schema.XmlSchemaInference:ProcessAttributes(byref,System.Xml.Schema.XmlSchemaType,ubyte,System.Xml.Schema.XmlSchema):this (FullOpts)
          64 (8.42 % of base) : System.ComponentModel.Annotations.dasm - System.ComponentModel.DataAnnotations.CustomValidationAttribute:IsValid(System.Object,System.ComponentModel.DataAnnotations.ValidationContext):System.ComponentModel.DataAnnotations.ValidationResult:this (FullOpts)
          64 (10.19 % of base) : System.Data.Common.dasm - System.Data.XDRSchema:GetInstanceName(System.Xml.XmlElement):System.String (FullOpts)
          64 (7.17 % of base) : System.Private.CoreLib.dasm - System.Reflection.ModifiedFunctionPointerType:GetFunctionPointerCallingConventions():System.Type[]:this (FullOpts)
          64 (8.12 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.XmlObjectSerializerReadContext:ReadExtensionDataValue(System.Runtime.Serialization.XmlReaderDelegator,System.String,System.String):System.Runtime.Serialization.IDataNode:this (FullOpts)
          64 (3.88 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.XmlObjectSerializerReadContext:ReadUnknownXmlData(System.Runtime.Serialization.XmlReaderDelegator,System.String,System.String):System.Runtime.Serialization.XmlDataNode:this (FullOpts)
          64 (1.42 % of base) : System.Security.Cryptography.Pkcs.dasm - System.Security.Cryptography.Pkcs.Pkcs12SafeContents:ReadBags(System.ReadOnlyMemory`1[ubyte]):System.Collections.Generic.List`1[System.Security.Cryptography.Pkcs.Pkcs12SafeBag] (FullOpts)
          64 (2.14 % of base) : System.ServiceModel.Syndication.dasm - System.ServiceModel.Syndication.AtomPub10ServiceDocumentFormatter:ReadCollection(System.Xml.XmlReader,System.ServiceModel.Syndication.Workspace):System.ServiceModel.Syndication.ResourceCollectionInfo:this (FullOpts)
          64 (3.32 % of base) : System.Private.Xml.dasm - System.Xml.XmlTextWriter:WriteStartAttribute(System.String,System.String,System.String):this (FullOpts)
          60 (3.65 % of base) : System.Security.Cryptography.Pkcs.dasm - Internal.Cryptography.PkcsHelpers:GetDigestAlgorithm(System.String,ubyte):System.Security.Cryptography.HashAlgorithmName (FullOpts)
          60 (9.32 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.SpoolingTask+<>c__DisplayClass1_0`2[double,System.Nullable`1[int]]:<SpoolPipeline>b__0():this (FullOpts)
          60 (9.32 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.SpoolingTask+<>c__DisplayClass1_0`2[int,System.Nullable`1[int]]:<SpoolPipeline>b__0():this (FullOpts)
          60 (9.32 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.SpoolingTask+<>c__DisplayClass1_0`2[long,System.Nullable`1[int]]:<SpoolPipeline>b__0():this (FullOpts)
          60 (9.32 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.SpoolingTask+<>c__DisplayClass1_0`2[short,System.Nullable`1[int]]:<SpoolPipeline>b__0():this (FullOpts)
          60 (8.52 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.SpoolingTask+<>c__DisplayClass1_0`2[System.__Canon,System.Nullable`1[int]]:<SpoolPipeline>b__0():this (FullOpts)
          60 (9.32 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.SpoolingTask+<>c__DisplayClass1_0`2[System.Nullable`1[int],System.Nullable`1[int]]:<SpoolPipeline>b__0():this (FullOpts)
          60 (9.32 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.SpoolingTask+<>c__DisplayClass1_0`2[System.Numerics.Vector`1[float],System.Nullable`1[int]]:<SpoolPipeline>b__0():this (FullOpts)
          60 (9.32 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.SpoolingTask+<>c__DisplayClass1_0`2[ubyte,System.Nullable`1[int]]:<SpoolPipeline>b__0():this (FullOpts)
          60 (5.03 % of base) : System.Reflection.MetadataLoadContext.dasm - System.Reflection.RoModifiedFunctionPointerType:CreateCallingConventions(System.Type[],System.Reflection.TypeLoading.RoFunctionPointerType):System.Type[]:this (FullOpts)
          56 (18.67 % of base) : System.Private.CoreLib.dasm - System.Diagnostics.Tracing.EventSource:RemoveFirstArgIfRelatedActivityId(byref):ubyte (FullOpts)
          56 (3.47 % of base) : System.IO.Packaging.dasm - System.IO.Packaging.ZipPackage+ContentTypeHelper:OpenContentTypeStream(System.Collections.ObjectModel.ReadOnlyCollection`1[System.IO.Compression.ZipArchiveEntry]):System.IO.Stream:this (FullOpts)
          56 (6.06 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.SchemaHelper:AddSchemaImport(System.String,System.Xml.Schema.XmlSchema) (FullOpts)
          56 (9.93 % of base) : System.Text.Encoding.CodePages.dasm - System.Text.EncodingNLS:get_EncodingName():System.String:this (FullOpts)
          52 (108.33 % of base) : System.Configuration.ConfigurationManager.dasm - System.Configuration.BaseConfigurationRecord:IsImplicitSection(System.String):ubyte (FullOpts)
          52 (14.13 % of base) : System.Configuration.ConfigurationManager.dasm - System.Configuration.SectionInformation:ForceDeclaration(ubyte):this (FullOpts)
          52 (9.63 % of base) : System.Data.Odbc.dasm - System.Data.Odbc.TypeMap:FromSystemType(System.Type):System.Data.Odbc.TypeMap (FullOpts)
          52 (12.50 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.XmlSerializableServices:IsValidAttribute(System.Xml.XmlReader):ubyte (FullOpts)

Top method improvements (bytes):
       -2088 (-19.63 % of base) : System.Formats.Asn1.dasm - System.Formats.Asn1.WellKnownOids:GetContents(System.ReadOnlySpan`1[ushort]):System.ReadOnlySpan`1[ubyte] (FullOpts)
        -476 (-100.00 % of base) : System.Private.CoreLib.dasm - System.Globalization.Ordinal:EqualsIgnoreCase_Vector[System.Runtime.Intrinsics.Vector128`1[ushort]](byref,byref,int):ubyte (FullOpts) (1 base, 0 diff methods)
        -272 (-5.91 % of base) : System.ComponentModel.Primitives.dasm - System.ComponentModel.CategoryAttribute:GetLocalizedString(System.String):System.String:this (FullOpts)
        -156 (-7.08 % of base) : System.Diagnostics.DiagnosticSource.dasm - System.Diagnostics.Activity:AddException(System.Exception,byref,System.DateTimeOffset):System.Diagnostics.Activity:this (FullOpts)
         -96 (-0.98 % of base) : System.Private.CoreLib.dasm - System.Diagnostics.Tracing.RuntimeEventSource:OnEventCommand(System.Diagnostics.Tracing.EventCommandEventArgs):this (FullOpts)
         -76 (-9.90 % of base) : System.Private.Xml.dasm - System.Xml.XPath.XPathNavigator:ComparePosition(System.Xml.XPath.XPathNavigator):int:this (FullOpts)
         -72 (-8.57 % of base) : System.Security.Cryptography.Pkcs.dasm - System.Security.Cryptography.Pkcs.SignerInfo:RemoveCounterSignature(int):this (FullOpts)
         -64 (-3.92 % of base) : System.Diagnostics.DiagnosticSource.dasm - System.Diagnostics.Metrics.AggregationManager:.ctor(int,int,System.Action`3[System.Diagnostics.Metrics.Instrument,System.Diagnostics.Metrics.LabeledAggregationStatistics,System.Diagnostics.Metrics.InstrumentState],System.Action`2[System.DateTime,System.DateTime],System.Action`2[System.DateTime,System.DateTime],System.Action`2[System.Diagnostics.Metrics.Instrument,System.Diagnostics.Metrics.InstrumentState],System.Action`2[System.Diagnostics.Metrics.Instrument,System.Diagnostics.Metrics.InstrumentState],System.Action`2[System.Diagnostics.Metrics.Instrument,System.Diagnostics.Metrics.InstrumentState],System.Action,System.Action`1[System.Exception],System.Action,System.Action,System.Action`1[System.Exception]):this (FullOpts)
         -64 (-2.89 % of base) : System.Net.Security.dasm - System.Net.Security.EndpointChannelBindingToken:GetHashForChannelBinding(System.Security.Cryptography.X509Certificates.X509Certificate2):ubyte[] (FullOpts)
         -52 (-1.62 % of base) : System.DirectoryServices.Protocols.dasm - System.DirectoryServices.Protocols.DirectoryControl:TransformControls(System.DirectoryServices.Protocols.DirectoryControl[]) (FullOpts)
         -44 (-0.38 % of base) : System.Configuration.ConfigurationManager.dasm - System.Configuration.ConfigurationElement:DeserializeElement(System.Xml.XmlReader,ubyte):this (FullOpts)
         -44 (-4.14 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.XPath.XPathScanner:CheckAxis():int:this (FullOpts)
         -44 (-1.96 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.Xslt.QilGenerator:PlaceMarker(System.Xml.Xsl.Qil.QilNode,System.Xml.Xsl.Qil.QilNode,ubyte):System.Xml.Xsl.Qil.QilNode:this (FullOpts)
         -36 (-15.79 % of base) : System.Configuration.ConfigurationManager.dasm - System.Configuration.ClientConfigurationSystem:IsSectionUsedInInit(System.String):ubyte:this (FullOpts)
         -36 (-0.87 % of base) : System.Resources.Extensions.dasm - System.Resources.Extensions.PreserializedResourceWriter:Generate():this (FullOpts)
         -36 (-0.86 % of base) : System.Resources.Writer.dasm - System.Resources.ResourceWriter:Generate():this (FullOpts)
         -36 (-1.63 % of base) : System.Runtime.Serialization.Schema.dasm - System.Runtime.Serialization.CodeExporter:get_GetObjectDataMethod():System.CodeDom.CodeMemberMethod:this (FullOpts)
         -36 (-7.03 % of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.X509Certificates.X509Certificate2:get_PrivateKey():System.Security.Cryptography.AsymmetricAlgorithm:this (FullOpts)
         -36 (-3.83 % of base) : System.Text.Json.dasm - System.Text.Json.Serialization.Metadata.ReflectionEmitMemberAccessor:CreateParameterlessConstructor(System.Type,System.Reflection.ConstructorInfo):System.Func`1[System.Object]:this (FullOpts)
         -32 (-1.64 % of base) : System.ComponentModel.Composition.dasm - System.ComponentModel.Composition.Hosting.ImportEngine:TrySatisfyImportsStateMachine(System.ComponentModel.Composition.Hosting.ImportEngine+PartManager,System.ComponentModel.Composition.Primitives.ComposablePart):System.ComponentModel.Composition.CompositionResult:this (FullOpts)
         -32 (-3.31 % of base) : System.Composition.TypedParts.dasm - System.Composition.TypedParts.TypedPartExportDescriptorProvider:DiscoverConstrainedParts(System.Composition.Hosting.Core.CompositionContract):this (FullOpts)
         -32 (-0.90 % of base) : System.Reflection.Metadata.dasm - System.Reflection.AssemblyNameFormatter:ComputeDisplayName(System.String,System.Version,System.String,ubyte[],int,int,ubyte[]):System.String (FullOpts)
         -32 (-0.88 % of base) : System.Private.CoreLib.dasm - System.Reflection.Emit.OpCodes:.cctor() (FullOpts)
         -32 (-1.79 % of base) : System.Runtime.Serialization.Schema.dasm - System.Runtime.Serialization.CodeExporter:CreateProperty(System.CodeDom.CodeTypeReference,System.String,System.String,ubyte,ubyte):System.CodeDom.CodeMemberProperty:this (FullOpts)
         -32 (-0.68 % of base) : System.ServiceModel.Syndication.dasm - System.ServiceModel.Syndication.Rss20FeedFormatter:WriteItemContents(System.Xml.XmlWriter,System.ServiceModel.Syndication.SyndicationItem,System.Uri):this (FullOpts)
         -32 (-1.86 % of base) : System.Private.DataContractSerialization.dasm - System.Xml.EncodingStreamWrapper:CheckUTF8DeclarationEncoding(ubyte[],int,int,int,int) (FullOpts)
         -32 (-2.85 % of base) : System.Private.Xml.dasm - System.Xml.Serialization.CodeGenerator:InitILGeneration(System.Type[],System.String[],ubyte):this (FullOpts)
         -28 (-12.96 % of base) : System.Security.Cryptography.Pkcs.dasm - Internal.Cryptography.PkcsHelpers:DetectInitOnlyOid():ubyte (FullOpts)
         -28 (-0.13 % of base) : System.IO.FileSystem.DriveInfo.dasm - Interop+Sys:GetDriveType(System.String):int (FullOpts)
         -28 (-1.84 % of base) : Microsoft.Extensions.DependencyModel.dasm - Microsoft.Extensions.DependencyModel.DependencyContextWriter:WriteLibraries(Microsoft.Extensions.DependencyModel.DependencyContext,System.Text.Json.Utf8JsonWriter) (FullOpts)
         -28 (-3.76 % of base) : System.Collections.Concurrent.dasm - System.Collections.Concurrent.Partitioner+DynamicPartitionerForIEnumerable`1[short]:GetOrderablePartitions(int):System.Collections.Generic.IList`1[System.Collections.Generic.IEnumerator`1[System.Collections.Generic.KeyValuePair`2[long,short]]]:this (FullOpts)
         -28 (-1.45 % of base) : System.Composition.TypedParts.dasm - System.Composition.TypedParts.ActivationFeatures.PropertyInjectionFeature:GetDependencies(System.Reflection.TypeInfo,System.Composition.Hosting.Core.DependencyAccessor):System.Collections.Generic.IEnumerable`1[System.Composition.Hosting.Core.CompositionDependency]:this (FullOpts)
         -28 (-2.13 % of base) : System.Net.NameResolution.dasm - System.Net.Dns:RunAsync[double](System.Func`3[System.Object,System.Net.NameResolutionActivity,double],System.Object,System.Threading.CancellationToken):System.Threading.Tasks.Task`1[double] (FullOpts)
         -28 (-2.13 % of base) : System.Net.NameResolution.dasm - System.Net.Dns:RunAsync[short](System.Func`3[System.Object,System.Net.NameResolutionActivity,short],System.Object,System.Threading.CancellationToken):System.Threading.Tasks.Task`1[short] (FullOpts)
         -28 (-2.13 % of base) : System.Net.NameResolution.dasm - System.Net.Dns:RunAsync[System.Nullable`1[int]](System.Func`3[System.Object,System.Net.NameResolutionActivity,System.Nullable`1[int]],System.Object,System.Threading.CancellationToken):System.Threading.Tasks.Task`1[System.Nullable`1[int]] (FullOpts)
         -28 (-1.55 % of base) : System.Private.CoreLib.dasm - System.Reflection.InvokerEmitUtil:EmitCallAndReturnHandling(System.Reflection.Emit.ILGenerator,System.Reflection.MethodBase,ubyte,ubyte) (FullOpts)
         -28 (-1.05 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.DataContract+DataContractCriticalHelper:GetBuiltInDataContract(System.String):System.Runtime.Serialization.DataContracts.DataContract (FullOpts)
         -28 (-1.36 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.Xslt.QilGenerator:PlaceMarkerAny(System.Xml.Xsl.Qil.QilNode,System.Xml.Xsl.Qil.QilNode):System.Xml.Xsl.Qil.QilNode:this (FullOpts)
         -24 (-2.62 % of base) : Microsoft.Extensions.Logging.Console.dasm - Microsoft.Extensions.Logging.Console.ConsoleLoggerProvider:SetFormatters(System.Collections.Generic.IEnumerable`1[Microsoft.Extensions.Logging.Console.ConsoleFormatter]):this (FullOpts)
         -24 (-1.20 % of base) : System.Composition.TypedParts.dasm - System.Composition.CompositionContextExtensions:SatisfyImportsInternal(System.Composition.CompositionContext,System.Object,System.Composition.Convention.AttributedModelProvider) (FullOpts)
         -24 (-2.97 % of base) : System.Data.Odbc.dasm - System.Data.Odbc.OdbcMetaDataFactory:GetReservedWordsCollection(System.String[],System.Data.Odbc.OdbcConnection):System.Data.DataTable:this (FullOpts)
         -24 (-1.81 % of base) : System.Data.Odbc.dasm - System.Data.ProviderBase.DbMetaDataFactory:GetSchema(System.Data.Common.DbConnection,System.String,System.String[]):System.Data.DataTable:this (FullOpts)
         -24 (-2.76 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.UnionQueryOperator`1[long]:WrapPartitionedStream[System.Numerics.Vector`1[float],System.Nullable`1[int]](System.Linq.Parallel.PartitionedStream`2[long,System.Numerics.Vector`1[float]],System.Linq.Parallel.PartitionedStream`2[long,System.Nullable`1[int]],System.Linq.Parallel.IPartitionedStreamRecipient`1[long],ubyte,System.Linq.Parallel.QuerySettings):this (FullOpts)
         -24 (-0.80 % of base) : System.Net.Primitives.dasm - System.Net.CookieContainer:AgeCookies(System.String):ubyte:this (FullOpts)
         -24 (-7.41 % of base) : System.Reflection.Emit.dasm - System.Reflection.Emit.MarshallingData:DecodeMarshalAsComInterface(System.String[],System.Object[],int,System.Reflection.Emit.MarshallingData) (FullOpts)
         -24 (-2.01 % of base) : System.Resources.Extensions.dasm - System.Resources.Extensions.PreserializedResourceWriter:FindTypeCode(System.Object,System.Collections.Generic.List`1[System.String]):int (FullOpts)
         -24 (-2.01 % of base) : System.Resources.Writer.dasm - System.Resources.ResourceWriter:FindTypeCode(System.Object,System.Collections.Generic.List`1[System.String]):int (FullOpts)
         -24 (-2.09 % of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.PemKeyHelpers:ImportEncryptedPem[double](System.ReadOnlySpan`1[ushort],System.ReadOnlySpan`1[double],System.Security.Cryptography.PemKeyHelpers+ImportEncryptedKeyAction`1[double]) (FullOpts)
         -24 (-2.09 % of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.PemKeyHelpers:ImportEncryptedPem[int](System.ReadOnlySpan`1[ushort],System.ReadOnlySpan`1[int],System.Security.Cryptography.PemKeyHelpers+ImportEncryptedKeyAction`1[int]) (FullOpts)
         -24 (-2.09 % of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.PemKeyHelpers:ImportEncryptedPem[long](System.ReadOnlySpan`1[ushort],System.ReadOnlySpan`1[long],System.Security.Cryptography.PemKeyHelpers+ImportEncryptedKeyAction`1[long]) (FullOpts)
         -24 (-2.09 % of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.PemKeyHelpers:ImportEncryptedPem[short](System.ReadOnlySpan`1[ushort],System.ReadOnlySpan`1[short],System.Security.Cryptography.PemKeyHelpers+ImportEncryptedKeyAction`1[short]) (FullOpts)
         -24 (-2.09 % of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.PemKeyHelpers:ImportEncryptedPem[System.__Canon](System.ReadOnlySpan`1[ushort],System.ReadOnlySpan`1[System.__Canon],System.Security.Cryptography.PemKeyHelpers+ImportEncryptedKeyAction`1[System.__Canon]) (FullOpts)
         -24 (-2.09 % of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.PemKeyHelpers:ImportEncryptedPem[System.Nullable`1[int]](System.ReadOnlySpan`1[ushort],System.ReadOnlySpan`1[System.Nullable`1[int]],System.Security.Cryptography.PemKeyHelpers+ImportEncryptedKeyAction`1[System.Nullable`1[int]]) (FullOpts)
         -24 (-2.09 % of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.PemKeyHelpers:ImportEncryptedPem[System.Numerics.Vector`1[float]](System.ReadOnlySpan`1[ushort],System.ReadOnlySpan`1[System.Numerics.Vector`1[float]],System.Security.Cryptography.PemKeyHelpers+ImportEncryptedKeyAction`1[System.Numerics.Vector`1[float]]) (FullOpts)
         -24 (-2.09 % of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.PemKeyHelpers:ImportEncryptedPem[ubyte](System.ReadOnlySpan`1[ushort],System.ReadOnlySpan`1[ubyte],System.Security.Cryptography.PemKeyHelpers+ImportEncryptedKeyAction`1[ubyte]) (FullOpts)
         -24 (-1.73 % of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.X509Certificates.X509Certificate2:CreateFromEncryptedPem(System.ReadOnlySpan`1[ushort],System.ReadOnlySpan`1[ushort],System.ReadOnlySpan`1[ushort]):System.Security.Cryptography.X509Certificates.X509Certificate2 (FullOpts)
         -24 (-3.68 % of base) : System.Text.Json.dasm - System.Text.Json.Serialization.Metadata.ReflectionEmitMemberAccessor:CreateAddMethodDelegate(System.Type):System.Reflection.Emit.DynamicMethod (FullOpts)
         -24 (-7.32 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.IlGen.GenerateHelper:TestAndBranch(int,System.Reflection.Emit.Label,System.Reflection.Emit.OpCode):this (FullOpts)
         -20 (-2.70 % of base) : System.Security.Cryptography.Pkcs.dasm - Internal.Cryptography.Pal.AnyOS.ManagedPkcsPal+ManagedKeyTransPal:DecryptCekCore(System.Security.Cryptography.X509Certificates.X509Certificate2,System.Security.Cryptography.RSA,System.ReadOnlySpan`1[ubyte],System.String,System.Nullable`1[System.ReadOnlyMemory`1[ubyte]],byref):ubyte[] (FullOpts)
         -20 (-1.03 % of base) : Microsoft.CSharp.dasm - Microsoft.CSharp.RuntimeBinder.SymbolTable:AddAggregateToSymbolTable(Microsoft.CSharp.RuntimeBinder.Semantics.NamespaceOrAggregateSymbol,System.Type):Microsoft.CSharp.RuntimeBinder.Semantics.AggregateSymbol (FullOpts)
         -20 (-6.02 % of base) : System.Collections.dasm - System.Collections.Generic.SortedDictionary`2[double,System.Nullable`1[int]]:ContainsValue(System.Nullable`1[int]):ubyte:this (FullOpts)
         -20 (-6.02 % of base) : System.Collections.dasm - System.Collections.Generic.SortedDictionary`2[long,System.Nullable`1[int]]:ContainsValue(System.Nullable`1[int]):ubyte:this (FullOpts)
         -20 (-3.85 % of base) : System.ComponentModel.Composition.dasm - System.ComponentModel.Composition.AttributedModelServices:ComposeParts(System.ComponentModel.Composition.Hosting.CompositionContainer,System.Object[]) (FullOpts)
         -20 (-0.81 % of base) : System.Configuration.ConfigurationManager.dasm - System.Configuration.ConfigurationElement:HandleLockedAttributes(System.Configuration.ConfigurationElement):this (FullOpts)
         -20 (-3.97 % of base) : System.Configuration.ConfigurationManager.dasm - System.Configuration.IdnElement+UriIdnScopeTypeConverter:ConvertFrom(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object):System.Object:this (FullOpts)
         -20 (-3.07 % of base) : System.Configuration.ConfigurationManager.dasm - System.Configuration.SectionInformation:ProtectSection(System.String):this (FullOpts)
         -20 (-3.05 % of base) : System.Diagnostics.DiagnosticSource.dasm - System.Diagnostics.Metrics.MeterListener:Dispose():this (FullOpts)
         -20 (-3.91 % of base) : System.IO.FileSystem.Watcher.dasm - System.IO.FileSystemWatcher+RunningInstance:CancellationCallback():this (FullOpts)
         -20 (-2.16 % of base) : System.Linq.Expressions.dasm - System.Linq.Expressions.Interpreter.NullableMethodCallInstruction:Create(System.String,int,System.Reflection.MethodInfo):System.Linq.Expressions.Interpreter.Instruction (FullOpts)
         -20 (-0.86 % of base) : System.Net.Http.dasm - System.Net.Http.Headers.GenericHeaderParser:.cctor() (FullOpts)
         -20 (-0.90 % of base) : System.Net.Http.dasm - System.Net.Http.HttpConnectionPool:.ctor(System.Net.Http.HttpConnectionPoolManager,ubyte,System.String,int,System.String,System.Uri):this (FullOpts)
         -20 (-1.47 % of base) : System.Net.Quic.dasm - System.Net.Quic.QuicStream:.ctor(System.Net.Quic.MsQuicContextSafeHandle,int,long):this (FullOpts)
         -20 (-1.48 % of base) : System.Net.Quic.dasm - System.Net.Quic.QuicStream:.ctor(System.Net.Quic.MsQuicContextSafeHandle,ulong,int,long):this (FullOpts)
         -20 (-1.27 % of base) : System.Reflection.DispatchProxy.dasm - System.Reflection.Emit.IgnoreAccessChecksToAttributeBuilder:AddToModule(System.Reflection.Emit.ModuleBuilder):System.Reflection.ConstructorInfo (FullOpts)
         -20 (-1.09 % of base) : System.Security.Cryptography.Pkcs.dasm - System.Security.Cryptography.Asn1.Pkcs12.PfxAsn:VerifyMac(System.ReadOnlySpan`1[ushort],System.ReadOnlySpan`1[ubyte]):ubyte:this (FullOpts)
         -20 (-1.07 % of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.Asn1.Pkcs12.PfxAsn:VerifyMac(System.ReadOnlySpan`1[ushort],System.ReadOnlySpan`1[ubyte]):ubyte:this (FullOpts)
         -20 (-1.56 % of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.X509Certificates.OpenSslX509CertificateReader+<>c:<GetPolicyData>b__63_0(Microsoft.Win32.SafeHandles.SafeX509Handle):System.Security.Cryptography.X509Certificates.PolicyData:this (FullOpts)
         -20 (-3.65 % of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.X509Certificates.X509CertificateLoader+CertKeyMatcher:FindMatchingKey(System.ReadOnlySpan`1[System.Security.Cryptography.Asn1.Pkcs12.SafeBagAsn],System.ReadOnlySpan`1[ubyte]):int (FullOpts)
         -20 (-1.65 % of base) : System.Security.Cryptography.Xml.dasm - System.Security.Cryptography.Xml.EncryptedXml:Encrypt(System.Xml.XmlElement,System.Security.Cryptography.X509Certificates.X509Certificate2):System.Security.Cryptography.Xml.EncryptedData:this (FullOpts)
         -20 (-0.96 % of base) : System.ServiceModel.Syndication.dasm - System.ServiceModel.Syndication.Atom10FeedFormatter:ReadCategory(System.Xml.XmlReader,System.ServiceModel.Syndication.SyndicationCategory,System.String,ubyte,ubyte,int) (FullOpts)
         -20 (-2.76 % of base) : System.Text.RegularExpressions.dasm - System.Threading.StackHelper:CallOnEmptyStack[double,System.Nullable`1[int]](System.Action`2[double,System.Nullable`1[int]],double,System.Nullable`1[int]) (FullOpts)
         -20 (-2.79 % of base) : System.Text.RegularExpressions.dasm - System.Threading.StackHelper:CallOnEmptyStack[long,System.Nullable`1[int]](System.Action`2[long,System.Nullable`1[int]],long,System.Nullable`1[int]) (FullOpts)
         -20 (-2.42 % of base) : System.Text.RegularExpressions.dasm - System.Threading.StackHelper:CallOnEmptyStack[System.__Canon,System.Nullable`1[int]](System.Action`2[System.__Canon,System.Nullable`1[int]],System.__Canon,System.Nullable`1[int]) (FullOpts)
         -20 (-2.79 % of base) : System.Text.RegularExpressions.dasm - System.Threading.StackHelper:CallOnEmptyStack[System.Nullable`1[int],System.Nullable`1[int]](System.Action`2[System.Nullable`1[int],System.Nullable`1[int]],System.Nullable`1[int],System.Nullable`1[int]) (FullOpts)
         -20 (-2.76 % of base) : System.Text.RegularExpressions.dasm - System.Threading.StackHelper:CallOnEmptyStack[System.Numerics.Vector`1[float],System.Nullable`1[int]](System.Action`2[System.Numerics.Vector`1[float],System.Nullable`1[int]],System.Numerics.Vector`1[float],System.Nullable`1[int]) (FullOpts)
         -20 (-0.98 % of base) : System.Threading.Tasks.Dataflow.dasm - System.Threading.Tasks.Dataflow.BatchedJoinBlock`2[short,System.Nullable`1[int]]:.ctor(int,System.Threading.Tasks.Dataflow.GroupingDataflowBlockOptions):this (FullOpts)
         -20 (-1.05 % of base) : System.Threading.Tasks.Dataflow.dasm - System.Threading.Tasks.Dataflow.JoinBlock`2[ubyte,System.Nullable`1[int]]:.ctor(System.Threading.Tasks.Dataflow.GroupingDataflowBlockOptions):this (FullOpts)
         -20 (-0.67 % of base) : System.Threading.Tasks.Dataflow.dasm - System.Threading.Tasks.Dataflow.TransformBlock`2[long,System.Nullable`1[int]]:.ctor(System.Func`2[long,System.Nullable`1[int]],System.Func`2[long,System.Threading.Tasks.Task`1[System.Nullable`1[int]]],System.Threading.Tasks.Dataflow.ExecutionDataflowBlockOptions):this (FullOpts)
         -20 (-0.67 % of base) : System.Threading.Tasks.Dataflow.dasm - System.Threading.Tasks.Dataflow.TransformBlock`2[short,System.Nullable`1[int]]:.ctor(System.Func`2[short,System.Nullable`1[int]],System.Func`2[short,System.Threading.Tasks.Task`1[System.Nullable`1[int]]],System.Threading.Tasks.Dataflow.ExecutionDataflowBlockOptions):this (FullOpts)
         -20 (-0.67 % of base) : System.Threading.Tasks.Dataflow.dasm - System.Threading.Tasks.Dataflow.TransformBlock`2[System.Numerics.Vector`1[float],System.Nullable`1[int]]:.ctor(System.Func`2[System.Numerics.Vector`1[float],System.Nullable`1[int]],System.Func`2[System.Numerics.Vector`1[float],System.Threading.Tasks.Task`1[System.Nullable`1[int]]],System.Threading.Tasks.Dataflow.ExecutionDataflowBlockOptions):this (FullOpts)
         -20 (-3.70 % of base) : System.Threading.Tasks.Parallel.dasm - System.Threading.Tasks.Parallel:ForAsync[long](long,long,int,System.Threading.Tasks.TaskScheduler,System.Threading.CancellationToken,System.Func`3[long,System.Threading.CancellationToken,System.Threading.Tasks.ValueTask]):System.Threading.Tasks.Task (FullOpts)
         -20 (-0.62 % of base) : System.Private.Xml.dasm - System.Xml.Serialization.ReflectionXmlSerializationReader:GenerateLiteralMembersElementInternal(System.Xml.Serialization.MemberMapping[],ubyte,System.Object[]):ubyte:this (FullOpts)
         -20 (-1.37 % of base) : System.Private.Xml.dasm - System.Xml.Serialization.SchemaObjectCache:AddItem(System.Xml.Schema.XmlSchemaObject,System.Xml.XmlQualifiedName):System.Xml.Schema.XmlSchemaObject:this (FullOpts)
         -20 (-2.82 % of base) : System.Private.Xml.dasm - System.Xml.Serialization.XmlSerializationWriter:ListUsedPrefixes(System.Xml.Serialization.XmlSerializerNamespaces,System.String):System.Collections.Generic.HashSet`1[int] (FullOpts)
         -20 (-0.90 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.IlGen.XmlILVisitor:ClrCompare(int,int):this (FullOpts)
         -20 (-0.73 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.XsltOld.XsltCompileContext:FunctionAvailable(System.String):ubyte:this (FullOpts)
         -16 (-2.30 % of base) : Microsoft.Extensions.FileSystemGlobbing.dasm - Microsoft.Extensions.FileSystemGlobbing.Internal.MatcherContext:.ctor(System.Collections.Generic.IEnumerable`1[Microsoft.Extensions.FileSystemGlobbing.Internal.IPattern],System.Collections.Generic.IEnumerable`1[Microsoft.Extensions.FileSystemGlobbing.Internal.IPattern],Microsoft.Extensions.FileSystemGlobbing.Abstractions.DirectoryInfoBase,int):this (FullOpts)
         -16 (-0.60 % of base) : Microsoft.Extensions.FileSystemGlobbing.dasm - Microsoft.Extensions.FileSystemGlobbing.Internal.Patterns.PatternBuilder:Build(System.String):Microsoft.Extensions.FileSystemGlobbing.Internal.IPattern:this (FullOpts)
         -16 (-2.16 % of base) : Microsoft.Extensions.Logging.Console.dasm - Microsoft.Extensions.Logging.Console.ConsoleLoggerProvider:.ctor(Microsoft.Extensions.Options.IOptionsMonitor`1[Microsoft.Extensions.Logging.Console.ConsoleLoggerOptions],System.Collections.Generic.IEnumerable`1[Microsoft.Extensions.Logging.Console.ConsoleFormatter]):this (FullOpts)
         -16 (-0.97 % of base) : System.Private.Xml.dasm - MS.Internal.Xml.XPath.LogicalExpr:.cctor() (FullOpts)

Top method regressions (percentages):
         152 (122.58 % of base) : System.Configuration.ConfigurationManager.dasm - System.Configuration.ClientConfigurationHost:IsUserConfig(System.String):ubyte (FullOpts)
          52 (108.33 % of base) : System.Configuration.ConfigurationManager.dasm - System.Configuration.BaseConfigurationRecord:IsImplicitSection(System.String):ubyte (FullOpts)
         840 (48.17 % of base) : System.Data.Common.dasm - System.Data.XDRSchema:FindTypeNode(System.Xml.XmlElement):System.Xml.XmlElement (FullOpts)
         484 (46.01 % of base) : System.Text.Json.dasm - System.Text.Json.Reflection.ReflectionExtensions:IsImmutableEnumerableType(System.Type):ubyte (FullOpts)
         464 (45.49 % of base) : System.Text.Json.dasm - System.Text.Json.Reflection.ReflectionExtensions:GetImmutableEnumerableConstructingTypeName(System.Type):System.String (FullOpts)
          48 (32.43 % of base) : System.ComponentModel.Annotations.dasm - System.ComponentModel.DataAnnotations.CustomValidationAttribute+<>c:<.ctor>b__6_0():System.String:this (FullOpts)
          48 (32.43 % of base) : System.ComponentModel.Annotations.dasm - System.SR:get_CustomValidationAttribute_Method_Not_Found():System.String (FullOpts)
          48 (32.43 % of base) : System.ComponentModel.Annotations.dasm - System.SR:get_CustomValidationAttribute_Method_Required():System.String (FullOpts)
          48 (32.43 % of base) : System.ComponentModel.Annotations.dasm - System.SR:get_CustomValidationAttribute_Method_Signature():System.String (FullOpts)
          48 (32.43 % of base) : System.ComponentModel.Annotations.dasm - System.SR:get_CustomValidationAttribute_Type_Conversion_Failed():System.String (FullOpts)
          48 (32.43 % of base) : System.ComponentModel.Annotations.dasm - System.SR:get_CustomValidationAttribute_Type_Must_Be_Public():System.String (FullOpts)
          48 (32.43 % of base) : System.ComponentModel.Annotations.dasm - System.SR:get_CustomValidationAttribute_ValidationError():System.String (FullOpts)
          48 (32.43 % of base) : System.ComponentModel.Annotations.dasm - System.SR:get_CustomValidationAttribute_ValidatorType_Required():System.String (FullOpts)
          48 (32.43 % of base) : System.ComponentModel.Annotations.dasm - System.SR:get_EnumDataTypeAttribute_TypeNeedsToBeAnEnum():System.String (FullOpts)
          48 (32.43 % of base) : System.ComponentModel.Annotations.dasm - System.SR:get_RangeAttribute_ArbitraryTypeNotIComparable():System.String (FullOpts)
          48 (32.43 % of base) : System.ComponentModel.Annotations.dasm - System.SR:get_RangeAttribute_ValidationError_MaxExclusive():System.String (FullOpts)
          48 (32.43 % of base) : System.ComponentModel.Annotations.dasm - System.SR:get_RangeAttribute_ValidationError_MinExclusive():System.String (FullOpts)
          48 (32.43 % of base) : System.ComponentModel.Annotations.dasm - System.SR:get_UIHintImplementation_ControlParameterKeyIsNull():System.String (FullOpts)
          48 (32.43 % of base) : System.ComponentModel.Annotations.dasm - System.SR:get_ValidationAttribute_IsValid_NotImplemented():System.String (FullOpts)
         120 (30.00 % of base) : System.ComponentModel.Annotations.dasm - System.ComponentModel.DataAnnotations.CustomValidationAttribute:ValidateValidatorTypeParameter():System.String:this (FullOpts)
         108 (27.55 % of base) : System.Private.CoreLib.dasm - System.Diagnostics.Tracing.EventSource:AttributeTypeNamesMatch(System.Type,System.Type):ubyte (FullOpts)
          40 (24.39 % of base) : System.ServiceModel.Syndication.dasm - System.ServiceModel.Syndication.FeedUtils:IsXmlSchemaType(System.String,System.String):ubyte (FullOpts)
         132 (23.57 % of base) : System.ComponentModel.Annotations.dasm - System.ComponentModel.DataAnnotations.RangeAttribute:GetValidationErrorMessage():System.String:this (FullOpts)
          32 (21.62 % of base) : System.ComponentModel.Annotations.dasm - System.ComponentModel.DataAnnotations.MaxLengthAttribute:get_DefaultErrorMessageString():System.String (FullOpts)
          32 (21.62 % of base) : System.ComponentModel.Annotations.dasm - System.ComponentModel.DataAnnotations.MaxLengthAttribute+<>c:<.ctor>b__1_0():System.String:this (FullOpts)
          32 (21.62 % of base) : System.ComponentModel.Annotations.dasm - System.ComponentModel.DataAnnotations.MaxLengthAttribute+<>c:<.ctor>b__2_0():System.String:this (FullOpts)
          32 (21.62 % of base) : System.ComponentModel.Annotations.dasm - System.ComponentModel.DataAnnotations.RequiredAttribute+<>c:<.ctor>b__0_0():System.String:this (FullOpts)
          32 (21.62 % of base) : System.ComponentModel.Annotations.dasm - System.ComponentModel.DataAnnotations.StringLengthAttribute+<>c:<.ctor>b__0_0():System.String:this (FullOpts)
          32 (21.62 % of base) : System.ComponentModel.Annotations.dasm - System.ComponentModel.DataAnnotations.ValidationAttribute+<>c:<.ctor>b__6_0():System.String:this (FullOpts)
          32 (21.62 % of base) : System.ComponentModel.Annotations.dasm - System.SR:get_DataTypeAttribute_EmptyDataTypeString():System.String (FullOpts)
          32 (21.62 % of base) : System.ComponentModel.Annotations.dasm - System.SR:get_EnumDataTypeAttribute_TypeCannotBeNull():System.String (FullOpts)
          32 (21.62 % of base) : System.ComponentModel.Annotations.dasm - System.SR:get_LocalizableString_LocalizationFailed():System.String (FullOpts)
          32 (21.62 % of base) : System.ComponentModel.Annotations.dasm - System.SR:get_MaxLengthAttribute_InvalidMaxLength():System.String (FullOpts)
          32 (21.62 % of base) : System.ComponentModel.Annotations.dasm - System.SR:get_MaxLengthAttribute_ValidationError():System.String (FullOpts)
          32 (21.62 % of base) : System.ComponentModel.Annotations.dasm - System.SR:get_MetadataTypeAttribute_TypeCannotBeNull():System.String (FullOpts)
          32 (21.62 % of base) : System.ComponentModel.Annotations.dasm - System.SR:get_MinLengthAttribute_InvalidMinLength():System.String (FullOpts)
          32 (21.62 % of base) : System.ComponentModel.Annotations.dasm - System.SR:get_MinLengthAttribute_ValidationError():System.String (FullOpts)
          32 (21.62 % of base) : System.ComponentModel.Annotations.dasm - System.SR:get_RangeAttribute_Must_Set_Min_And_Max():System.String (FullOpts)
          32 (21.62 % of base) : System.ComponentModel.Annotations.dasm - System.SR:get_RangeAttribute_Must_Set_Operand_Type():System.String (FullOpts)
          32 (21.62 % of base) : System.ComponentModel.Annotations.dasm - System.SR:get_RegularExpressionAttribute_Empty_Pattern():System.String (FullOpts)
          32 (21.62 % of base) : System.ComponentModel.Annotations.dasm - System.SR:get_RequiredAttribute_ValidationError():System.String (FullOpts)
          32 (21.62 % of base) : System.ComponentModel.Annotations.dasm - System.SR:get_StringLengthAttribute_InvalidMaxLength():System.String (FullOpts)
          32 (21.62 % of base) : System.ComponentModel.Annotations.dasm - System.SR:get_StringLengthAttribute_ValidationError():System.String (FullOpts)
          32 (21.62 % of base) : System.ComponentModel.Annotations.dasm - System.SR:get_ValidationAttribute_ValidationError():System.String (FullOpts)
          32 (21.62 % of base) : System.ComponentModel.Annotations.dasm - System.SR:get_Validator_Property_Value_Wrong_Type():System.String (FullOpts)
          96 (20.87 % of base) : System.Data.Odbc.dasm - System.Data.Odbc.TypeMap:FromOdbcType(int):System.Data.Odbc.TypeMap (FullOpts)
          76 (19.59 % of base) : System.Net.Http.dasm - System.Net.Http.AuthenticationHelper:ProxySupportsConnectionAuth(System.Net.Http.HttpResponseMessage):ubyte (FullOpts)
          76 (19.39 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.XmlQueryType:QNameToString(System.Xml.XmlQualifiedName):System.String (FullOpts)
         248 (19.31 % of base) : System.ComponentModel.Annotations.dasm - System.ComponentModel.DataAnnotations.CustomValidationAttribute:ValidateMethodParameter():System.String:this (FullOpts)
          68 (19.10 % of base) : System.Data.Odbc.dasm - System.Data.Odbc.TypeMap:FromDbType(int):System.Data.Odbc.TypeMap (FullOpts)
          36 (18.75 % of base) : System.ComponentModel.Annotations.dasm - System.ComponentModel.DataAnnotations.MinLengthAttribute:.ctor(int):this (FullOpts)
          36 (18.75 % of base) : System.Private.CoreLib.dasm - System.Diagnostics.StackTrace:CalculateFramesToSkip(System.Diagnostics.StackFrameHelper,int):int (FullOpts)
          56 (18.67 % of base) : System.Private.CoreLib.dasm - System.Diagnostics.Tracing.EventSource:RemoveFirstArgIfRelatedActivityId(byref):ubyte (FullOpts)
         100 (18.12 % of base) : System.Data.Odbc.dasm - System.Data.Odbc.TypeMap:FromSqlType(short):System.Data.Odbc.TypeMap (FullOpts)
         104 (17.81 % of base) : System.Data.Common.dasm - System.Data.XMLDiffLoader:LoadDiffGram(System.Data.DataSet,System.Xml.XmlReader):this (FullOpts)
          40 (16.95 % of base) : System.Private.Xml.dasm - System.Xml.XmlTextWriter:VerifyPrefixXml(System.String,System.String) (FullOpts)
          28 (16.28 % of base) : System.Data.Common.dasm - System.Data.Common.DataStorage:GetType(System.String):System.Type (FullOpts)
          40 (16.13 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.Runtime.XsltLibrary:FunctionAvailableHelper(System.Xml.XmlQualifiedName):ubyte:this (FullOpts)
          52 (15.12 % of base) : System.Private.Xml.dasm - System.Xml.Schema.XmlBaseConverter:QNameToString(System.Xml.XmlQualifiedName):System.String (FullOpts)
         116 (14.87 % of base) : System.Private.CoreLib.dasm - System.Runtime.CompilerServices.RuntimeFeature:IsSupported(System.String):ubyte (FullOpts)
         152 (14.79 % of base) : System.Reflection.Emit.dasm - System.Reflection.Emit.ParameterBuilderImpl:SetCustomAttributeCore(System.Reflection.ConstructorInfo,System.ReadOnlySpan`1[ubyte]):this (FullOpts)
           4 (14.29 % of base) : System.Data.Odbc.dasm - System.Data.Common.DbConnectionOptions:CreateConnectionStringQuoteOdbcValueRegex():System.Text.RegularExpressions.Regex (FullOpts)
           4 (14.29 % of base) : System.Data.Odbc.dasm - System.Data.Common.DbConnectionOptions:CreateConnectionStringQuoteValueRegex():System.Text.RegularExpressions.Regex (FullOpts)
           4 (14.29 % of base) : System.Data.Odbc.dasm - System.Data.Common.DbConnectionOptions:CreateConnectionStringValidKeyRegex():System.Text.RegularExpressions.Regex (FullOpts)
           4 (14.29 % of base) : System.Data.Odbc.dasm - System.Data.Odbc.OdbcConnection:get_ConnectionFactory():System.Data.ProviderBase.DbConnectionFactory (FullOpts)
           8 (14.29 % of base) : System.Data.Odbc.dasm - System.Data.Odbc.OdbcConnection:GetSchema(System.String,System.String[]):System.Data.DataTable:this (FullOpts)
           8 (14.29 % of base) : System.Data.Odbc.dasm - System.Data.Odbc.OdbcConnection:GetSchema(System.String):System.Data.DataTable:this (FullOpts)
         108 (14.29 % of base) : System.Data.Common.dasm - System.Data.XDRSchema:HandleTypeNode(System.Xml.XmlElement,System.Data.DataTable,System.Collections.ArrayList):this (FullOpts)
           4 (14.29 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.Util:GetDefaultComparer[double]():System.Collections.Generic.Comparer`1[double] (FullOpts)
           4 (14.29 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.Util:GetDefaultComparer[int]():System.Collections.Generic.Comparer`1[int] (FullOpts)
           4 (14.29 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.Util:GetDefaultComparer[long]():System.Collections.Generic.Comparer`1[long] (FullOpts)
           4 (14.29 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.PrimitiveDataContract:get_TopLevelElementNamespace():System.Xml.XmlDictionaryString:this (FullOpts)
           4 (14.29 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContractSerializer:get_Base64Encoding():System.Text.Base64Encoding (FullOpts)
           4 (14.29 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContractSerializer:get_BEUTF16NoBom():System.Text.UnicodeEncoding (FullOpts)
           4 (14.29 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContractSerializer:get_BinHexEncoding():System.Text.BinHexEncoding (FullOpts)
           4 (14.29 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContractSerializer:get_UTF16NoBom():System.Text.UnicodeEncoding (FullOpts)
           4 (14.29 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContractSerializer:get_UTF8NoBom():System.Text.UTF8Encoding (FullOpts)
           4 (14.29 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContractSerializer:get_ValidatingBEUTF16():System.Text.UnicodeEncoding (FullOpts)
           4 (14.29 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContractSerializer:get_ValidatingUTF16():System.Text.UnicodeEncoding (FullOpts)
           4 (14.29 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContractSerializer:get_ValidatingUTF8():System.Text.UTF8Encoding (FullOpts)
           4 (14.29 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.Globals:FullSRSInternalsVisibleRegex():System.Text.RegularExpressions.Regex (FullOpts)
           4 (14.29 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.Json.JsonReadWriteDelegates:GetJsonDelegates():System.Collections.Generic.Dictionary`2[System.Runtime.Serialization.DataContracts.DataContract,System.Runtime.Serialization.Json.JsonReadWriteDelegates] (FullOpts)
           4 (14.29 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.Json.XmlObjectSerializerWriteContextComplexJson:get_CollectionItemName():System.Xml.XmlDictionaryString (FullOpts)
           4 (14.29 % of base) : System.Transactions.Local.dasm - System.Transactions.TransactionState+<>c:<get_TransactionStatePromotedNonMSDTCVolatilePhase1>b__91_0():System.Transactions.TransactionStatePromotedNonMSDTCVolatilePhase1:this (FullOpts)
           4 (14.29 % of base) : System.Private.DataContractSerialization.dasm - System.Xml.XmlBaseReader+NamespaceManager:get_EmptyNamespace():System.Xml.XmlBaseReader+Namespace (FullOpts)
           4 (14.29 % of base) : System.Private.DataContractSerialization.dasm - System.Xml.XmlBufferReader:get_Empty():System.Xml.XmlBufferReader (FullOpts)
           4 (14.29 % of base) : System.Private.DataContractSerialization.dasm - System.Xml.XmlDictionaryReaderQuotas:get_Max():System.Xml.XmlDictionaryReaderQuotas (FullOpts)
          52 (14.13 % of base) : System.Configuration.ConfigurationManager.dasm - System.Configuration.SectionInformation:ForceDeclaration(ubyte):this (FullOpts)
          88 (13.84 % of base) : System.Private.Xml.dasm - System.Xml.Serialization.TempAssembly:ValidateEncodingStyle(System.String,System.String):System.String:this (FullOpts)
         104 (13.40 % of base) : Microsoft.Extensions.Diagnostics.dasm - Microsoft.Extensions.Diagnostics.Metrics.Configuration.MetricsConfigureOptions:LoadConfig(Microsoft.Extensions.Diagnostics.Metrics.MetricsOptions):this (FullOpts)
          32 (13.11 % of base) : System.Private.Xml.dasm - System.Xml.Schema.SchemaNamespaceManager:LookupPrefix(System.String):System.String:this (FullOpts)
          96 (12.90 % of base) : System.Data.Common.dasm - System.Data.XMLDiffLoader:LoadDiffGram(System.Data.DataTable,System.Xml.XmlReader):this (FullOpts)
           8 (12.50 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.EmptyEnumerable`1[double]:GetEnumerator():System.Collections.Generic.IEnumerator`1[double]:this (FullOpts)
           8 (12.50 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.EmptyEnumerable`1[int]:GetEnumerator():System.Collections.Generic.IEnumerator`1[int]:this (FullOpts)
           8 (12.50 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.EmptyEnumerable`1[long]:GetEnumerator():System.Collections.Generic.IEnumerator`1[long]:this (FullOpts)
           8 (12.50 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.EmptyEnumerable`1[short]:GetEnumerator():System.Collections.Generic.IEnumerator`1[short]:this (FullOpts)
           8 (12.50 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.EmptyEnumerable`1[System.Nullable`1[int]]:GetEnumerator():System.Collections.Generic.IEnumerator`1[System.Nullable`1[int]]:this (FullOpts)
           8 (12.50 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.EmptyEnumerable`1[System.Numerics.Vector`1[float]]:GetEnumerator():System.Collections.Generic.IEnumerator`1[System.Numerics.Vector`1[float]]:this (FullOpts)
           8 (12.50 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.EmptyEnumerable`1[ubyte]:GetEnumerator():System.Collections.Generic.IEnumerator`1[ubyte]:this (FullOpts)
           8 (12.50 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.XmlObjectSerializer:get_FormatterConverter():System.Runtime.Serialization.IFormatterConverter (FullOpts)

Top method improvements (percentages):
        -476 (-100.00 % of base) : System.Private.CoreLib.dasm - System.Globalization.Ordinal:EqualsIgnoreCase_Vector[System.Runtime.Intrinsics.Vector128`1[ushort]](byref,byref,int):ubyte (FullOpts) (1 base, 0 diff methods)
       -2088 (-19.63 % of base) : System.Formats.Asn1.dasm - System.Formats.Asn1.WellKnownOids:GetContents(System.ReadOnlySpan`1[ushort]):System.ReadOnlySpan`1[ubyte] (FullOpts)
         -36 (-15.79 % of base) : System.Configuration.ConfigurationManager.dasm - System.Configuration.ClientConfigurationSystem:IsSectionUsedInInit(System.String):ubyte:this (FullOpts)
         -28 (-12.96 % of base) : System.Security.Cryptography.Pkcs.dasm - Internal.Cryptography.PkcsHelpers:DetectInitOnlyOid():ubyte (FullOpts)
          -4 (-12.50 % of base) : System.Composition.TypedParts.dasm - System.Composition.TypedParts.ActivationFeatures.ActivationFeature:GetDependencies(System.Reflection.TypeInfo,System.Composition.Hosting.Core.DependencyAccessor):System.Collections.Generic.IEnumerable`1[System.Composition.Hosting.Core.CompositionDependency]:this (FullOpts)
          -4 (-12.50 % of base) : System.Reflection.Metadata.dasm - System.Reflection.Metadata.AssemblyReference:GetVirtualVersion():System.Version (FullOpts)
          -4 (-12.50 % of base) : System.Reflection.Metadata.dasm - System.Reflection.Metadata.HandleComparer:get_Default():System.Reflection.Metadata.HandleComparer (FullOpts)
          -4 (-12.50 % of base) : System.Reflection.Metadata.dasm - System.Reflection.Metadata.MetadataStringDecoder:get_DefaultUTF8():System.Reflection.Metadata.MetadataStringDecoder (FullOpts)
         -76 (-9.90 % of base) : System.Private.Xml.dasm - System.Xml.XPath.XPathNavigator:ComparePosition(System.Xml.XPath.XPathNavigator):int:this (FullOpts)
         -72 (-8.57 % of base) : System.Security.Cryptography.Pkcs.dasm - System.Security.Cryptography.Pkcs.SignerInfo:RemoveCounterSignature(int):this (FullOpts)
          -4 (-8.33 % of base) : System.Composition.TypedParts.dasm - System.Composition.CompositionContextExtensions:SatisfyImports(System.Composition.CompositionContext,System.Object) (FullOpts)
          -4 (-8.33 % of base) : System.Reflection.Metadata.dasm - System.Reflection.Internal.PooledStringBuilder:GetInstance():System.Reflection.Internal.PooledStringBuilder (FullOpts)
          -4 (-8.33 % of base) : System.Reflection.Metadata.dasm - System.Reflection.Metadata.PooledBlobBuilder:GetInstance():System.Reflection.Metadata.PooledBlobBuilder (FullOpts)
          -4 (-7.69 % of base) : System.Composition.TypedParts.dasm - System.Composition.CompositionContextExtensions:.cctor() (FullOpts)
          -4 (-7.69 % of base) : System.Composition.TypedParts.dasm - System.Composition.CompositionContextExtensions+<>c:.cctor() (FullOpts)
          -4 (-7.69 % of base) : System.Composition.TypedParts.dasm - System.Composition.Hosting.ContainerConfiguration+<>c:.cctor() (FullOpts)
          -4 (-7.69 % of base) : System.Composition.TypedParts.dasm - System.Composition.Hosting.SinglePartExportDescriptorProvider+<>c:.cctor() (FullOpts)
          -4 (-7.69 % of base) : System.Composition.TypedParts.dasm - System.Composition.TypedParts.ActivationFeatures.PropertyInjectionFeature+<>c:.cctor() (FullOpts)
          -4 (-7.69 % of base) : System.Composition.TypedParts.dasm - System.Composition.TypedParts.ContractHelpers+<>c:.cctor() (FullOpts)
          -4 (-7.69 % of base) : System.Composition.TypedParts.dasm - System.Composition.TypedParts.Discovery.DiscoveredPart+<>c:.cctor() (FullOpts)
          -4 (-7.69 % of base) : System.Composition.TypedParts.dasm - System.Composition.TypedParts.Discovery.DiscoveredPart+ParameterInfoComparer:.cctor() (FullOpts)
          -4 (-7.69 % of base) : System.Composition.TypedParts.dasm - System.Composition.TypedParts.Discovery.TypeInspector+<>c:.cctor() (FullOpts)
          -4 (-7.69 % of base) : System.Composition.TypedParts.dasm - System.Composition.TypedParts.TypedPartExportDescriptorProvider+<>c:.cctor() (FullOpts)
          -4 (-7.69 % of base) : System.Formats.Asn1.dasm - System.Formats.Asn1.SetOfValueComparer:.cctor() (FullOpts)
          -4 (-7.69 % of base) : System.Reflection.Metadata.dasm - System.HexConverter+<>c:.cctor() (FullOpts)
          -4 (-7.69 % of base) : System.Reflection.Metadata.dasm - System.Reflection.Metadata.BlobBuilder+<>c:.cctor() (FullOpts)
          -4 (-7.69 % of base) : System.Reflection.Metadata.dasm - System.Reflection.Metadata.Ecma335.MetadataBuilder+<>c:.cctor() (FullOpts)
          -4 (-7.69 % of base) : System.Reflection.Metadata.dasm - System.Reflection.Metadata.Ecma335.MetadataBuilder+SuffixSort:.cctor() (FullOpts)
          -4 (-7.69 % of base) : System.Reflection.Metadata.dasm - System.Reflection.Metadata.HandleComparer:.cctor() (FullOpts)
          -4 (-7.69 % of base) : System.Reflection.Metadata.dasm - System.Reflection.Metadata.MetadataReader:GetProjectedTypeNames():System.String[] (FullOpts)
          -4 (-7.69 % of base) : System.Reflection.Metadata.dasm - System.Reflection.Metadata.PooledBlobBuilder:FreeChunk():this (FullOpts)
          -4 (-7.69 % of base) : System.Reflection.Metadata.dasm - System.Reflection.Metadata.PooledBlobBuilder+<>c:.cctor() (FullOpts)
          -4 (-7.69 % of base) : System.Reflection.Metadata.dasm - System.Reflection.PortableExecutable.PEReader+<>c:.cctor() (FullOpts)
         -16 (-7.55 % of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.X509Certificates.X509CertificateLoader+<>c:<ProcessSafeContents>b__33_1(System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits,System.String):ubyte:this (FullOpts)
         -24 (-7.41 % of base) : System.Reflection.Emit.dasm - System.Reflection.Emit.MarshallingData:DecodeMarshalAsComInterface(System.String[],System.Object[],int,System.Reflection.Emit.MarshallingData) (FullOpts)
         -24 (-7.32 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.IlGen.GenerateHelper:TestAndBranch(int,System.Reflection.Emit.Label,System.Reflection.Emit.OpCode):this (FullOpts)
          -4 (-7.14 % of base) : System.Reflection.Metadata.dasm - System.Reflection.Internal.PooledStringBuilder:.cctor() (FullOpts)
        -156 (-7.08 % of base) : System.Diagnostics.DiagnosticSource.dasm - System.Diagnostics.Activity:AddException(System.Exception,byref,System.DateTimeOffset):System.Diagnostics.Activity:this (FullOpts)
         -36 (-7.03 % of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.X509Certificates.X509Certificate2:get_PrivateKey():System.Security.Cryptography.AsymmetricAlgorithm:this (FullOpts)
         -12 (-6.82 % of base) : System.Runtime.Caching.dasm - System.Runtime.Caching.CacheItemPolicy:get_ChangeMonitors():System.Collections.ObjectModel.Collection`1[System.Runtime.Caching.ChangeMonitor]:this (FullOpts)
         -12 (-6.82 % of base) : System.ServiceModel.Syndication.dasm - System.ServiceModel.Syndication.SyndicationFeed:get_Links():System.Collections.ObjectModel.Collection`1[System.ServiceModel.Syndication.SyndicationLink]:this (FullOpts)
         -12 (-6.82 % of base) : System.ServiceModel.Syndication.dasm - System.ServiceModel.Syndication.SyndicationItem:get_Links():System.Collections.ObjectModel.Collection`1[System.ServiceModel.Syndication.SyndicationLink]:this (FullOpts)
          -4 (-6.67 % of base) : System.Reflection.Metadata.dasm - System.Reflection.Metadata.AssemblyReference:.cctor() (FullOpts)
          -4 (-6.67 % of base) : System.Reflection.Metadata.dasm - System.Reflection.Metadata.Ecma335.StringHeap:GetVirtualString(int):System.String (FullOpts)
          -4 (-6.67 % of base) : System.Reflection.Metadata.dasm - System.Reflection.Metadata.TypeNameParser:.cctor() (FullOpts)
          -8 (-6.67 % of base) : System.Composition.TypedParts.dasm - System.SR:get_ResourceManager():System.Resources.ResourceManager (FullOpts)
          -8 (-6.67 % of base) : System.Reflection.Metadata.dasm - System.SR:get_ResourceManager():System.Resources.ResourceManager (FullOpts)
         -20 (-6.02 % of base) : System.Collections.dasm - System.Collections.Generic.SortedDictionary`2[double,System.Nullable`1[int]]:ContainsValue(System.Nullable`1[int]):ubyte:this (FullOpts)
         -20 (-6.02 % of base) : System.Collections.dasm - System.Collections.Generic.SortedDictionary`2[long,System.Nullable`1[int]]:ContainsValue(System.Nullable`1[int]):ubyte:this (FullOpts)
        -272 (-5.91 % of base) : System.ComponentModel.Primitives.dasm - System.ComponentModel.CategoryAttribute:GetLocalizedString(System.String):System.String:this (FullOpts)
          -4 (-5.88 % of base) : System.Reflection.Metadata.dasm - System.Reflection.Metadata.MetadataStringDecoder:.cctor() (FullOpts)
          -4 (-5.56 % of base) : System.Reflection.Metadata.dasm - System.Reflection.Metadata.MetadataReader:GetProjectedSignatureTreatment(int):ubyte (FullOpts)
          -4 (-5.56 % of base) : System.Reflection.Metadata.dasm - System.Reflection.Metadata.TypeNameParserHelpers:.cctor() (FullOpts)
          -4 (-5.56 % of base) : System.Private.Xml.dasm - System.Xml.XPath.XmlEmptyNavigator:get_Singleton():System.Xml.XPath.XmlEmptyNavigator (FullOpts)
         -12 (-5.45 % of base) : System.ComponentModel.Composition.dasm - System.ComponentModel.Composition.CompositionResult:MergeError(System.ComponentModel.Composition.CompositionError):System.ComponentModel.Composition.CompositionResult:this (FullOpts)
          -4 (-5.26 % of base) : System.Composition.TypedParts.dasm - System.Composition.TypedParts.ActivationFeatures.ActivationFeature:.cctor() (FullOpts)
          -4 (-5.26 % of base) : System.Reflection.Metadata.dasm - System.Reflection.Metadata.MetadataReader:GetProjectedAssemblyRef(int):System.Reflection.Metadata.AssemblyReferenceHandle (FullOpts)
          -4 (-5.26 % of base) : System.Reflection.Metadata.dasm - System.Reflection.Metadata.MetadataReader:GetProjectedName(int):System.Reflection.Metadata.StringHandle (FullOpts)
          -4 (-5.26 % of base) : System.Reflection.Metadata.dasm - System.Reflection.Metadata.MetadataReader:GetProjectedNamespace(int):System.Reflection.Metadata.StringHandle (FullOpts)
          -4 (-5.26 % of base) : System.Reflection.Metadata.dasm - System.Text.ValueStringBuilder:Dispose():this (FullOpts)
         -16 (-5.19 % of base) : System.Data.Odbc.dasm - System.Data.Odbc.OdbcEnvironment:GetGlobalEnvironmentHandle():System.Data.Odbc.OdbcEnvironmentHandle (FullOpts)
          -8 (-5.13 % of base) : System.Reflection.Metadata.dasm - System.Reflection.Metadata.PathUtilities:get_PlatformSpecificDirectorySeparator():System.String (FullOpts)
         -16 (-4.76 % of base) : System.Private.Xml.dasm - MS.Internal.Xml.XPath.XPathParser:get_IsNodeType():ubyte:this (FullOpts)
          -4 (-4.76 % of base) : System.Composition.TypedParts.dasm - System.Composition.TypedParts.ActivationFeatures.PropertyInjectionFeature:.cctor() (FullOpts)
         -12 (-4.76 % of base) : System.Net.Http.Json.dasm - System.Net.Http.Json.HttpClientJsonExtensions:DeleteFromJsonAsync[long](System.Net.Http.HttpClient,System.Uri,System.Threading.CancellationToken):System.Threading.Tasks.Task`1[long] (FullOpts)
         -12 (-4.76 % of base) : System.Net.Http.Json.dasm - System.Net.Http.Json.HttpClientJsonExtensions:DeleteFromJsonAsync[ubyte](System.Net.Http.HttpClient,System.Uri,System.Threading.CancellationToken):System.Threading.Tasks.Task`1[ubyte] (FullOpts)
         -12 (-4.76 % of base) : System.Net.Http.Json.dasm - System.Net.Http.Json.HttpClientJsonExtensions:GetFromJsonAsync[long](System.Net.Http.HttpClient,System.Uri,System.Threading.CancellationToken):System.Threading.Tasks.Task`1[long] (FullOpts)
         -12 (-4.76 % of base) : System.Net.Http.Json.dasm - System.Net.Http.Json.HttpClientJsonExtensions:GetFromJsonAsync[ubyte](System.Net.Http.HttpClient,System.Uri,System.Threading.CancellationToken):System.Threading.Tasks.Task`1[ubyte] (FullOpts)
         -12 (-4.76 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.XmlFormatGeneratorStatics:get_DictionaryEnumeratorCtor():System.Reflection.ConstructorInfo (FullOpts)
         -16 (-4.76 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.XPath.XPathParser`1[double]:IsNodeType(System.Xml.Xsl.XPath.XPathScanner):ubyte (FullOpts)
         -16 (-4.76 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.XPath.XPathParser`1[int]:IsNodeType(System.Xml.Xsl.XPath.XPathScanner):ubyte (FullOpts)
         -16 (-4.76 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.XPath.XPathParser`1[long]:IsNodeType(System.Xml.Xsl.XPath.XPathScanner):ubyte (FullOpts)
         -16 (-4.76 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.XPath.XPathParser`1[short]:IsNodeType(System.Xml.Xsl.XPath.XPathScanner):ubyte (FullOpts)
         -16 (-4.76 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.XPath.XPathParser`1[System.__Canon]:IsNodeType(System.Xml.Xsl.XPath.XPathScanner):ubyte (FullOpts)
         -16 (-4.76 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.XPath.XPathParser`1[System.Nullable`1[int]]:IsNodeType(System.Xml.Xsl.XPath.XPathScanner):ubyte (FullOpts)
         -16 (-4.76 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.XPath.XPathParser`1[System.Numerics.Vector`1[float]]:IsNodeType(System.Xml.Xsl.XPath.XPathScanner):ubyte (FullOpts)
         -16 (-4.76 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.XPath.XPathParser`1[ubyte]:IsNodeType(System.Xml.Xsl.XPath.XPathScanner):ubyte (FullOpts)
          -8 (-4.65 % of base) : System.ComponentModel.Annotations.dasm - System.ComponentModel.DataAnnotations.ValidationAttributeStore+StoreItem:.ctor(System.ComponentModel.AttributeCollection):this (FullOpts)
          -8 (-4.65 % of base) : System.Private.CoreLib.dasm - System.Random:.ctor(int):this (FullOpts)
          -4 (-4.55 % of base) : System.Diagnostics.DiagnosticSource.dasm - System.Diagnostics.DsesFilterAndTransform+TransformSpec+PropertySpec+PropertyFetch+EnumeratePropertyFetch`1[short]:Fetch(System.Object):System.Object:this (FullOpts)
          -4 (-4.55 % of base) : System.Reflection.Metadata.dasm - System.Reflection.Metadata.MetadataReader:.cctor() (FullOpts)
          -4 (-4.35 % of base) : System.Composition.TypedParts.dasm - System.Composition.TypedParts.Discovery.TypeInspector:.cctor() (FullOpts)
         -12 (-4.35 % of base) : System.Net.Http.Json.dasm - System.Net.Http.Json.HttpClientJsonExtensions:DeleteFromJsonAsync[long](System.Net.Http.HttpClient,System.String,System.Threading.CancellationToken):System.Threading.Tasks.Task`1[long] (FullOpts)
         -12 (-4.35 % of base) : System.Net.Http.Json.dasm - System.Net.Http.Json.HttpClientJsonExtensions:DeleteFromJsonAsync[ubyte](System.Net.Http.HttpClient,System.String,System.Threading.CancellationToken):System.Threading.Tasks.Task`1[ubyte] (FullOpts)
         -12 (-4.35 % of base) : System.Net.Http.Json.dasm - System.Net.Http.Json.HttpClientJsonExtensions:GetFromJsonAsync[long](System.Net.Http.HttpClient,System.String,System.Threading.CancellationToken):System.Threading.Tasks.Task`1[long] (FullOpts)
         -12 (-4.35 % of base) : System.Net.Http.Json.dasm - System.Net.Http.Json.HttpClientJsonExtensions:GetFromJsonAsync[ubyte](System.Net.Http.HttpClient,System.String,System.Threading.CancellationToken):System.Threading.Tasks.Task`1[ubyte] (FullOpts)
          -4 (-4.35 % of base) : System.Reflection.Metadata.dasm - System.Reflection.Metadata.PooledBlobBuilder:Free():this (FullOpts)
          -8 (-4.17 % of base) : System.Composition.Hosting.dasm - System.Composition.Hosting.Providers.ImportMany.ImportManyExportDescriptorProvider+<>c__DisplayClass3_1`1[System.Numerics.Vector`1[float]]:<GetImportManyDescriptor>b__3(System.Composition.Hosting.Core.LifetimeContext,System.Composition.Hosting.Core.CompositionOperation):System.Object:this (FullOpts)
          -4 (-4.17 % of base) : System.Reflection.Metadata.dasm - System.Reflection.Metadata.AssemblyReference:get_Version():System.Version:this (FullOpts)
         -44 (-4.14 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.XPath.XPathScanner:CheckAxis():int:this (FullOpts)
         -12 (-4.05 % of base) : System.Data.Odbc.dasm - System.Data.ProviderBase.DbConnectionFactory:.ctor():this (FullOpts)
          -4 (-4.00 % of base) : System.Reflection.Metadata.dasm - System.Reflection.Internal.MemoryBlock:PeekUtf8(int,int):System.String:this (FullOpts)
         -20 (-3.97 % of base) : System.Configuration.ConfigurationManager.dasm - System.Configuration.IdnElement+UriIdnScopeTypeConverter:ConvertFrom(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object):System.Object:this (FullOpts)
         -16 (-3.96 % of base) : System.ComponentModel.Composition.dasm - System.ComponentModel.Composition.MetadataViewGenerator:GenerateLocalAssignmentFromDefaultAttribute(System.Reflection.Emit.ILGenerator,System.ComponentModel.DefaultValueAttribute[],System.Reflection.Emit.LocalBuilder) (FullOpts)
         -64 (-3.92 % of base) : System.Diagnostics.DiagnosticSource.dasm - System.Diagnostics.Metrics.AggregationManager:.ctor(int,int,System.Action`3[System.Diagnostics.Metrics.Instrument,System.Diagnostics.Metrics.LabeledAggregationStatistics,System.Diagnostics.Metrics.InstrumentState],System.Action`2[System.DateTime,System.DateTime],System.Action`2[System.DateTime,System.DateTime],System.Action`2[System.Diagnostics.Metrics.Instrument,System.Diagnostics.Metrics.InstrumentState],System.Action`2[System.Diagnostics.Metrics.Instrument,System.Diagnostics.Metrics.InstrumentState],System.Action`2[System.Diagnostics.Metrics.Instrument,System.Diagnostics.Metrics.InstrumentState],System.Action,System.Action`1[System.Exception],System.Action,System.Action,System.Action`1[System.Exception]):this (FullOpts)
          -8 (-3.92 % of base) : System.Linq.Parallel.dasm - System.Linq.ParallelQuery`1[double]:Cast[double]():System.Linq.ParallelQuery`1[double]:this (FullOpts)
          -8 (-3.92 % of base) : System.Linq.Parallel.dasm - System.Linq.ParallelQuery`1[double]:Cast[int]():System.Linq.ParallelQuery`1[int]:this (FullOpts)
          -8 (-3.92 % of base) : System.Linq.Parallel.dasm - System.Linq.ParallelQuery`1[double]:Cast[long]():System.Linq.ParallelQuery`1[long]:this (FullOpts)
          -8 (-3.92 % of base) : System.Linq.Parallel.dasm - System.Linq.ParallelQuery`1[double]:Cast[short]():System.Linq.ParallelQuery`1[short]:this (FullOpts)
          -8 (-3.92 % of base) : System.Linq.Parallel.dasm - System.Linq.ParallelQuery`1[double]:Cast[System.Nullable`1[int]]():System.Linq.ParallelQuery`1[System.Nullable`1[int]]:this (FullOpts)

3501 total methods with Code Size differences (950 improved, 2551 regressed), 228561 unchanged.

--------------------------------------------------------------------------------

Artifacts:

@MihuBot
Copy link
Owner Author

MihuBot commented Oct 20, 2024

Top method regressions

840 (48.17 % of base) - System.Data.XDRSchema:FindTypeNode(System.Xml.XmlElement):System.Xml.XmlElement
 ; Assembly listing for method System.Data.XDRSchema:FindTypeNode(System.Xml.XmlElement):System.Xml.XmlElement (FullOpts)
 ; Emitting BLENDED_CODE for generic ARM64 - Unix
 ; FullOpts code
 ; optimized code
 ; fp based frame
 ; partially interruptible
 ; No PGO data
-; 0 inlinees with PGO data; 39 single block inlinees; 16 inlinees without PGO data
+; 0 inlinees with PGO data; 18 single block inlinees; 9 inlinees without PGO data
 ; Final local variable assignments
 ;
-;  V00 arg0         [V00,T03] ( 21, 18   )     ref  ->  x19         class-hnd single-def <System.Xml.XmlElement>
-;  V01 loc0         [V01,T22] (  6,  7.50)     ref  ->  x22         class-hnd exact single-def <System.String>
-;  V02 loc1         [V02,T00] ( 30,404.50)     ref  ->  x24         class-hnd <System.Xml.XmlNode>
-;  V03 loc2         [V03,T01] (  4, 21   )     ref  ->  x23         class-hnd single-def <System.Xml.XmlDocument>
+;  V00 arg0         [V00,T06] ( 21, 18   )     ref  ->  x19         class-hnd single-def <System.Xml.XmlElement>
+;  V01 loc0         [V01,T27] (  6,  7.50)     ref  ->  x21         class-hnd exact single-def <System.String>
+;  V02 loc1         [V02,T00] ( 30,404.50)     ref  ->  x23         class-hnd <System.Xml.XmlNode>
+;  V03 loc2         [V03,T05] (  4, 21   )     ref  ->  x22         class-hnd single-def <System.Xml.XmlDocument>
 ;# V04 OutArgs      [V04    ] (  1,  1   )  struct ( 0) [sp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
 ;* V05 tmp1         [V05    ] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
 ;* V06 tmp2         [V06    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.String>
-;  V07 tmp3         [V07,T32] (  5,  4.50)     ref  ->   x0         single-def "spilling varStr"
-;  V08 tmp4         [V08,T44] (  2,  2   )     int  ->   x0         "spilling unroll qmark"
-;  V09 tmp5         [V09,T23] (  6,  6   )     ref  ->   x0         class-hnd exact single-def "Inlining Arg" <System.String>
-;  V10 tmp6         [V10,T47] (  2,  1   )   ubyte  ->   x0         "Inline return value spill temp"
-;* V11 tmp7         [V11    ] (  0,  0   )   byref  ->  zero-ref    "impAppendStmt"
+;  V07 tmp3         [V07,T30] (  5,  4.50)     ref  ->   x0         single-def "spilling varStr"
+;  V08 tmp4         [V08,T38] (  2,  2   )     int  ->   x0         "spilling unroll qmark"
+;* V09 tmp5         [V09    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.String>
+;  V10 tmp6         [V10,T24] (  8,  7.50)     ref  ->   x0         single-def "spilling varStr"
+;  V11 tmp7         [V11,T39] (  2,  2   )     int  ->   x0         "spilling unroll qmark"
 ;* V12 tmp8         [V12    ] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
 ;* V13 tmp9         [V13    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.String>
-;  V14 tmp10        [V14,T41] (  5,  3   )     ref  ->   x0         single-def "spilling varStr"
+;  V14 tmp10        [V14,T35] (  5,  3   )     ref  ->   x0         single-def "spilling varStr"
 ;* V15 tmp11        [V15    ] (  0,  0   )     int  ->  zero-ref    "spilling unroll qmark"
-;  V16 tmp12        [V16,T24] (  6,  6   )     ref  ->   x0         class-hnd exact single-def "Inlining Arg" <System.String>
-;  V17 tmp13        [V17,T48] (  2,  1   )   ubyte  ->   x0         "Inline return value spill temp"
-;* V18 tmp14        [V18    ] (  0,  0   )   byref  ->  zero-ref    "impAppendStmt"
+;* V16 tmp12        [V16    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.String>
+;  V17 tmp13        [V17,T25] (  8,  7.50)     ref  ->   x0         single-def "spilling varStr"
+;  V18 tmp14        [V18,T40] (  2,  2   )     int  ->   x0         "spilling unroll qmark"
 ;* V19 tmp15        [V19    ] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
 ;* V20 tmp16        [V20    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.String>
-;  V21 tmp17        [V21,T33] (  5,  4.50)     ref  ->   x0         single-def "spilling varStr"
-;  V22 tmp18        [V22,T45] (  2,  2   )     int  ->   x0         "spilling unroll qmark"
-;  V23 tmp19        [V23,T25] (  6,  6   )     ref  ->   x0         class-hnd exact single-def "Inlining Arg" <System.String>
-;  V24 tmp20        [V24,T49] (  2,  1   )   ubyte  ->   x0         "Inline return value spill temp"
-;* V25 tmp21        [V25    ] (  0,  0   )   byref  ->  zero-ref    "impAppendStmt"
-;* V26 tmp22        [V26,T50] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
+;  V21 tmp17        [V21,T31] (  5,  4.50)     ref  ->   x0         single-def "spilling varStr"
+;  V22 tmp18        [V22,T41] (  2,  2   )     int  ->   x0         "spilling unroll qmark"
+;* V23 tmp19        [V23    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.String>
+;  V24 tmp20        [V24,T26] (  8,  7.50)     ref  ->   x0         single-def "spilling varStr"
+;  V25 tmp21        [V25,T42] (  2,  2   )     int  ->   x0         "spilling unroll qmark"
+;* V26 tmp22        [V26,T44] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
 ;* V27 tmp23        [V27    ] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
 ;* V28 tmp24        [V28    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.String>
-;  V29 tmp25        [V29,T09] (  5, 18   )     ref  ->   x0         "spilling varStr"
+;  V29 tmp25        [V29,T08] (  5, 18   )     ref  ->   x0         "spilling varStr"
 ;  V30 tmp26        [V30,T21] (  2,  8   )     int  ->   x0         "spilling unroll qmark"
-;  V31 tmp27        [V31,T04] (  5, 20   )     ref  ->   x0         class-hnd exact "Inlining Arg" <System.String>
-;  V32 tmp28        [V32,T35] (  2,  4   )   ubyte  ->   x0         "Inline return value spill temp"
-;* V33 tmp29        [V33    ] (  0,  0   )   byref  ->  zero-ref    "impAppendStmt"
+;* V31 tmp27        [V31    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.String>
+;  V32 tmp28        [V32,T01] (  8, 30   )     ref  ->   x0         "spilling varStr"
+;  V33 tmp29        [V33,T22] (  2,  8   )     int  ->   x0         "spilling unroll qmark"
 ;* V34 tmp30        [V34    ] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
 ;* V35 tmp31        [V35    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.String>
-;  V36 tmp32        [V36,T14] (  5, 12   )     ref  ->   x0         "spilling varStr"
-;  V37 tmp33        [V37,T19] (  2,  2   )     int  ->   x0         "spilling unroll qmark"
-;  V38 tmp34        [V38,T05] (  5, 20   )     ref  ->   x0         class-hnd exact "Inlining Arg" <System.String>
-;  V39 tmp35        [V39,T36] (  2,  4   )   ubyte  ->   x0         "Inline return value spill temp"
-;* V40 tmp36        [V40    ] (  0,  0   )   byref  ->  zero-ref    "impAppendStmt"
+;  V36 tmp32        [V36,T13] (  5, 12   )     ref  ->   x0         "spilling varStr"
+;* V37 tmp33        [V37    ] (  0,  0   )     int  ->  zero-ref    "spilling unroll qmark"
+;* V38 tmp34        [V38    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.String>
+;  V39 tmp35        [V39,T02] (  8, 30   )     ref  ->   x0         "spilling varStr"
+;  V40 tmp36        [V40,T23] (  2,  8   )     int  ->   x0         "spilling unroll qmark"
 ;* V41 tmp37        [V41    ] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
 ;* V42 tmp38        [V42    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.String>
-;  V43 tmp39        [V43,T10] (  5, 18   )     ref  ->   x0         "spilling varStr"
-;  V44 tmp40        [V44,T15] (  2,  8   )     int  ->   x0         "spilling unroll qmark"
-;  V45 tmp41        [V45,T06] (  5, 20   )     ref  ->   x0         class-hnd exact "Inlining Arg" <System.String>
-;  V46 tmp42        [V46,T37] (  2,  4   )   ubyte  ->   x0         "Inline return value spill temp"
-;* V47 tmp43        [V47    ] (  0,  0   )   byref  ->  zero-ref    "impAppendStmt"
+;  V43 tmp39        [V43,T09] (  5, 18   )     ref  ->   x0         "spilling varStr"
+;  V44 tmp40        [V44,T14] (  2,  8   )     int  ->   x0         "spilling unroll qmark"
+;* V45 tmp41        [V45    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.String>
+;  V46 tmp42        [V46,T03] (  8, 30   )     ref  ->   x0         "spilling varStr"
+;  V47 tmp43        [V47,T15] (  2,  8   )     int  ->   x0         "spilling unroll qmark"
 ;* V48 tmp44        [V48    ] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
 ;* V49 tmp45        [V49    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.String>
-;  V50 tmp46        [V50,T11] (  5, 18   )     ref  ->   x0         "spilling varStr"
+;  V50 tmp46        [V50,T10] (  5, 18   )     ref  ->   x0         "spilling varStr"
 ;  V51 tmp47        [V51,T16] (  2,  8   )     int  ->   x0         "spilling unroll qmark"
-;  V52 tmp48        [V52,T07] (  5, 20   )     ref  ->   x0         class-hnd exact "Inlining Arg" <System.String>
-;  V53 tmp49        [V53,T38] (  2,  4   )   ubyte  ->   x0         "Inline return value spill temp"
-;* V54 tmp50        [V54    ] (  0,  0   )   byref  ->  zero-ref    "impAppendStmt"
-;  V55 tmp51        [V55,T08] (  5, 20   )     ref  ->   x0         class-hnd exact "Inlining Arg" <System.String>
-;  V56 tmp52        [V56,T39] (  2,  4   )   ubyte  ->   x0         "Inline return value spill temp"
+;* V52 tmp48        [V52    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.String>
+;  V53 tmp49        [V53,T04] (  8, 30   )     ref  ->   x0         "spilling varStr"
+;  V54 tmp50        [V54,T17] (  2,  8   )     int  ->   x1         "spilling unroll qmark"
+;  V55 tmp51        [V55,T07] (  5, 20   )     ref  ->   x0         class-hnd exact "Inlining Arg" <System.String>
+;  V56 tmp52        [V56,T33] (  2,  4   )   ubyte  ->   x0         "Inline return value spill temp"
 ;  V57 tmp53        [V57,T20] (  2,  8   )   byref  ->   x0         "impAppendStmt"
-;  V58 tmp54        [V58,T42] (  3,  3   )     ref  ->   x0         "Single return block return value"
-;  V59 tmp55        [V59,T43] (  3,  3   )     ref  ->   x0         single-def "argument with side effect"
-;* V60 tmp56        [V60,T40] (  0,  0   )     ref  ->  zero-ref    "argument with side effect"
-;  V61 cse0         [V61,T34] (  2,  2.50)     ref  ->  x25         "CSE #24: moderate"
-;  V62 cse1         [V62,T12] ( 12, 12   )    long  ->  x20         multi-def "CSE #02: moderate"
-;  V63 cse2         [V63,T13] (  6, 12   )    long  ->  x25         multi-def "CSE #12: moderate"
-;  V64 cse3         [V64,T17] (  4, 12   )    long  ->  x25         "CSE #23: moderate"
-;  V65 cse4         [V65,T46] (  3,  1.50)    long  ->  x23         "CSE #08: conservative"
-;  V66 cse5         [V66,T02] ( 17, 20.50)     ref  ->  x21         multi-def "CSE #04: aggressive"
-;  V67 cse6         [V67,T26] (  3,  6   )     int  ->   x2         "CSE #13: moderate"
-;  V68 cse7         [V68,T27] (  3,  6   )     int  ->   x2         "CSE #16: moderate"
-;  V69 cse8         [V69,T28] (  3,  6   )     int  ->   x2         "CSE #17: moderate"
-;  V70 cse9         [V70,T29] (  3,  6   )     int  ->   x2         "CSE #20: moderate"
-;  V71 cse10        [V71,T30] (  3,  6   )     int  ->   x2         "CSE #22: moderate"
-;  V72 rat0         [V72,T18] (  4,  9   )     ref  ->  x25         "replacement local"
-;  V73 rat1         [V73,T31] (  3,  5   )    long  ->   x0         "CSE for expectedClsNode"
-;  V74 rat2         [V74,T54] (  3,  3   )  simd16  ->  d16         "ReplaceWithLclVar is creating a new local variable"
-;  V75 rat3         [V75,T55] (  3,  3   )  simd16  ->  d16         "ReplaceWithLclVar is creating a new local variable"
-;  V76 rat4         [V76,T51] (  3, 12   )  simd16  ->  d16         "ReplaceWithLclVar is creating a new local variable"
-;  V77 rat5         [V77,T52] (  3, 12   )  simd16  ->  d16         "ReplaceWithLclVar is creating a new local variable"
-;  V78 rat6         [V78,T53] (  3, 12   )  simd16  ->  d16         "ReplaceWithLclVar is creating a new local variable"
+;  V58 tmp54        [V58,T36] (  3,  3   )     ref  ->   x0         "Single return block return value"
+;  V59 tmp55        [V59,T37] (  3,  3   )     ref  ->   x0         single-def "argument with side effect"
+;* V60 tmp56        [V60,T34] (  0,  0   )     ref  ->  zero-ref    "argument with side effect"
+;  V61 cse0         [V61,T32] (  2,  2.50)     ref  ->  x24         "CSE #20: moderate"
+;  V62 cse1         [V62,T11] ( 12, 12   )    long  ->  x20         multi-def "CSE #02: moderate"
+;  V63 cse2         [V63,T12] (  6, 12   )    long  ->  x24         multi-def "CSE #12: moderate"
+;  V64 cse3         [V64,T18] (  4, 12   )    long  ->  x24         "CSE #19: moderate"
+;  V65 cse4         [V65,T43] (  3,  1.50)    long  ->  x22         "CSE #08: conservative"
+;  V66 cse5         [V66,T52] ( 10, 11   )  simd16  ->   d8         multi-def "CSE #03: moderate"
+;  V67 cse6         [V67,T53] ( 10, 11   )  simd16  ->   d9         multi-def "CSE #04: moderate"
+;  V68 cse7         [V68,T54] ( 10, 11   )  simd16  ->  d10         multi-def "CSE #05: moderate"
+;  V69 cse8         [V69,T55] ( 10, 11   )  simd16  ->  d11         multi-def "CSE #06: moderate"
+;  V70 cse9         [V70,T56] ( 10, 11   )  simd16  ->  [fp+0x10]  multi-def "CSE #07: moderate"
+;  V71 cse10        [V71,T28] (  3,  6   )     int  ->   x2         "CSE #18: moderate"
+;  V72 rat0         [V72,T19] (  4,  9   )     ref  ->  x24         "replacement local"
+;  V73 rat1         [V73,T29] (  3,  5   )    long  ->   x0         "CSE for expectedClsNode"
+;  V74 rat2         [V74,T57] (  3,  3   )  simd16  ->  d16         "ReplaceWithLclVar is creating a new local variable"
+;  V75 rat3         [V75,T58] (  3,  3   )  simd16  ->  d16         "ReplaceWithLclVar is creating a new local variable"
+;  V76 rat4         [V76,T59] (  3,  3   )  simd16  ->  d16         "ReplaceWithLclVar is creating a new local variable"
+;  V77 rat5         [V77,T60] (  3,  3   )  simd16  ->  d16         "ReplaceWithLclVar is creating a new local variable"
+;  V78 rat6         [V78,T61] (  3,  3   )  simd16  ->  d16         "ReplaceWithLclVar is creating a new local variable"
+;  V79 rat7         [V79,T45] (  3, 12   )  simd16  ->  d16         "ReplaceWithLclVar is creating a new local variable"
+;  V80 rat8         [V80,T46] (  3, 12   )  simd16  ->  d16         "ReplaceWithLclVar is creating a new local variable"
+;  V81 rat9         [V81,T47] (  3, 12   )  simd16  ->  d16         "ReplaceWithLclVar is creating a new local variable"
+;  V82 rat10        [V82,T48] (  3, 12   )  simd16  ->  d16         "ReplaceWithLclVar is creating a new local variable"
+;  V83 rat11        [V83,T49] (  3, 12   )  simd16  ->  d16         "ReplaceWithLclVar is creating a new local variable"
+;  V84 rat12        [V84,T50] (  3, 12   )  simd16  ->  d16         "ReplaceWithLclVar is creating a new local variable"
+;  V85 rat13        [V85,T51] (  3, 12   )  simd16  ->  d16         "ReplaceWithLclVar is creating a new local variable"
 ;
-; Lcl frame size = 8
+; Lcl frame size = 16
 
 G_M33548_IG01:
-            stp     fp, lr, [sp, #-0x50]!
-            stp     x19, x20, [sp, #0x18]
-            stp     x21, x22, [sp, #0x28]
-            stp     x23, x24, [sp, #0x38]
-            str     x25, [sp, #0x48]
+            stp     fp, lr, [sp, #-0x90]!
+            stp     d8, d9, [sp, #0x20]
+            stp     d10, d11, [sp, #0x30]
+            stp     d12, d13, [sp, #0x40]
+            stp     d14, d15, [sp, #0x50]
+            stp     x19, x20, [sp, #0x60]
+            stp     x21, x22, [sp, #0x70]
+            stp     x23, x24, [sp, #0x80]
             mov     fp, sp
             mov     x19, x0
-						;; size=28 bbWeight=1 PerfScore 6.00
+						;; size=40 bbWeight=1 PerfScore 9.00
 G_M33548_IG02:
-            cbz     x19, G_M33548_IG06
+            cbz     x19, G_M33548_IG08
 						;; size=4 bbWeight=1 PerfScore 1.00
 G_M33548_IG03:
             mov     x0, x19
             ldr     x1, [x19]
             ldr     x20, [x1, #0x60]
             ldr     x1, [x20, #0x30]
             blr     x1
-            cbz     x0, G_M33548_IG06
+            cbz     x0, G_M33548_IG08
 						;; size=24 bbWeight=0.50 PerfScore 5.75
 G_M33548_IG04:
             ldr     w1, [x0, #0x08]
             cmp     w1, #11
-            bne     G_M33548_IG06
+            bne     G_M33548_IG08
 						;; size=12 bbWeight=0.25 PerfScore 1.12
 G_M33548_IG05:
             ldr     q16, [x0, #0x0C]
             ldr     q17, [@RWD00]
             eor     v16.2d, v16.2d, v17.2d
             ldr     q17, [x0, #0x12]
             ldr     q18, [@RWD16]
             eor     v17.2d, v17.2d, v18.2d
             orr     v16.2d, v16.2d, v17.2d
             umaxp   v16.4s, v16.4s, v16.4s
             umov    x0, v16.d[0]
             cmp     x0, #0
             cset    x0, eq
-            cbz     w0, G_M33548_IG06
+            cbz     w0, G_M33548_IG08
             mov     x0, x19
             ldr     x1, [x20, #0x18]
             blr     x1
-            movz    x21, #0xD1FFAB1E
-            movk    x21, #0xD1FFAB1E LSL #16
-            movk    x21, #0xD1FFAB1E LSL #32
-            cmp     x0, x21
-            beq     G_M33548_IG44
-            cbz     x0, G_M33548_IG06
-            ldr     w2, [x0, #0x08]
-            cmp     w2, #34
-            bne     G_M33548_IG06
-            ldr     w2, [x0, #0x08]
-            lsl     w2, w2, #1
-            mov     w2, w2
-            add     x1, x21, #12
-            add     x0, x0, #12
-            movz    x3, #0xD1FFAB1E      // code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
-            movk    x3, #0xD1FFAB1E LSL #16
-            movk    x3, #0xD1FFAB1E LSL #32
-            ldr     x3, [x3]
-            blr     x3
-            cbnz    w0, G_M33548_IG44
-						;; size=140 bbWeight=0.50 PerfScore 20.25
+            cbz     x0, G_M33548_IG08
+						;; size=64 bbWeight=0.50 PerfScore 10.50
 G_M33548_IG06:
+            ldr     w1, [x0, #0x08]
+            cmp     w1, #34
+            bne     G_M33548_IG08
+						;; size=12 bbWeight=0.25 PerfScore 1.12
+G_M33548_IG07:
+            ldr     q16, [x0, #0x0C]
+            ldr     q17, [x0, #0x1C]
+            ldr     q8, [@RWD32]
+            eor     v16.2d, v16.2d, v8.2d
+            ldr     q9, [@RWD48]
+            eor     v17.2d, v17.2d, v9.2d
+            orr     v16.2d, v16.2d, v17.2d
+            ldr     q17, [x0, #0x2C]
+            ldr     q18, [x0, #0x3C]
+            ldr     q10, [@RWD64]
+            eor     v17.2d, v17.2d, v10.2d
+            orr     v16.2d, v16.2d, v17.2d
+            ldr     q11, [@RWD80]
+            eor     v17.2d, v18.2d, v11.2d
+            orr     v16.2d, v16.2d, v17.2d
+            ldr     q17, [x0, #0x40]
+            ldr     q12, [@RWD96]
+            eor     v17.2d, v17.2d, v12.2d
+            orr     v16.2d, v16.2d, v17.2d
+            umaxp   v16.4s, v16.4s, v16.4s
+            umov    x0, v16.d[0]
+            cmp     x0, #0
+            cset    x0, eq
+            cbnz    w0, G_M33548_IG56
+						;; size=96 bbWeight=0.50 PerfScore 16.75
+G_M33548_IG08:
             mov     x0, x19
             movz    x1, #0xD1FFAB1E
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x2, [x19]
             ldr     x2, [x2, #0x80]
             ldr     x2, [x2, #0x38]
             blr     x2
-            mov     x22, x0
+            mov     x21, x0
             mov     x0, x19
             ldr     x1, [x19]
             ldr     x20, [x1, #0x60]
             ldr     x1, [x20, #0x30]
             blr     x1
-            cbz     x0, G_M33548_IG10
+            cbz     x0, G_M33548_IG14
 						;; size=60 bbWeight=0.50 PerfScore 12.00
-G_M33548_IG07:
+G_M33548_IG09:
             ldr     w1, [x0, #0x08]
             cmp     w1, #7
-            bne     G_M33548_IG10
+            bne     G_M33548_IG14
 						;; size=12 bbWeight=0.25 PerfScore 1.12
-G_M33548_IG08:
+G_M33548_IG10:
             ldr     x1, [x0, #0x0C]
             movz    x2, #101
             movk    x2, #108 LSL #16
             movk    x2, #101 LSL #32
             movk    x2, #109 LSL #48
             eor     x1, x1, x2
             ldr     x0, [x0, #0x12]
             movz    x2, #109
             movk    x2, #101 LSL #16
             movk    x2, #110 LSL #32
             movk    x2, #116 LSL #48
             eor     x0, x0, x2
             orr     x0, x1, x0
-            cbnz    x0, G_M33548_IG10
+            cbnz    x0, G_M33548_IG14
 						;; size=56 bbWeight=0.12 PerfScore 1.56
-G_M33548_IG09:
+G_M33548_IG11:
             mov     x0, x19
             ldr     x1, [x20, #0x18]
             blr     x1
-            movz    x21, #0xD1FFAB1E
-            movk    x21, #0xD1FFAB1E LSL #16
-            movk    x21, #0xD1FFAB1E LSL #32
-            cmp     x0, x21
-            beq     G_M33548_IG13
-            cbz     x0, G_M33548_IG10
-            ldr     w2, [x0, #0x08]
-            cmp     w2, #34
-            bne     G_M33548_IG10
-            ldr     w2, [x0, #0x08]
-            lsl     w2, w2, #1
-            mov     w2, w2
-            add     x1, x21, #12
-            add     x0, x0, #12
-            movz    x3, #0xD1FFAB1E      // code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
-            movk    x3, #0xD1FFAB1E LSL #16
-            movk    x3, #0xD1FFAB1E LSL #32
-            ldr     x3, [x3]
-            blr     x3
-            cbnz    w0, G_M33548_IG13
-						;; size=92 bbWeight=0.50 PerfScore 12.50
-G_M33548_IG10:
+            cbz     x0, G_M33548_IG14
+						;; size=16 bbWeight=0.50 PerfScore 2.75
+G_M33548_IG12:
+            ldr     w1, [x0, #0x08]
+            cmp     w1, #34
+            bne     G_M33548_IG14
+						;; size=12 bbWeight=0.25 PerfScore 1.12
+G_M33548_IG13:
+            ldr     q16, [x0, #0x0C]
+            ldr     q17, [x0, #0x1C]
+            ldr     q8, [@RWD32]
+            eor     v16.2d, v16.2d, v8.2d
+            ldr     q9, [@RWD48]
+            eor     v17.2d, v17.2d, v9.2d
+            orr     v16.2d, v16.2d, v17.2d
+            ldr     q17, [x0, #0x2C]
+            ldr     q18, [x0, #0x3C]
+            ldr     q10, [@RWD64]
+            eor     v17.2d, v17.2d, v10.2d
+            orr     v16.2d, v16.2d, v17.2d
+            ldr     q11, [@RWD80]
+            eor     v17.2d, v18.2d, v11.2d
+            orr     v16.2d, v16.2d, v17.2d
+            ldr     q17, [x0, #0x40]
+            ldr     q12, [@RWD96]
+            eor     v17.2d, v17.2d, v12.2d
+            orr     v16.2d, v16.2d, v17.2d
+            umaxp   v16.4s, v16.4s, v16.4s
+            umov    x0, v16.d[0]
+            cmp     x0, #0
+            cset    x0, eq
+            cbnz    w0, G_M33548_IG19
+						;; size=96 bbWeight=0.50 PerfScore 16.75
+G_M33548_IG14:
             mov     x0, x19
             ldr     x1, [x20, #0x30]
             blr     x1
-            cbz     x0, G_M33548_IG41
+            cbz     x0, G_M33548_IG52
 						;; size=16 bbWeight=0.50 PerfScore 2.75
-G_M33548_IG11:
+G_M33548_IG15:
             ldr     w1, [x0, #0x08]
             cmp     w1, #9
-            bne     G_M33548_IG41
+            bne     G_M33548_IG52
 						;; size=12 bbWeight=0.25 PerfScore 1.12
-G_M33548_IG12:
+G_M33548_IG16:
             ldr     q16, [x0, #0x0C]
-            ldr     q17, [@RWD32]
+            ldr     q17, [@RWD112]
             eor     v16.2d, v16.2d, v17.2d
             ldr     q17, [x0, #0x0E]
-            ldr     q18, [@RWD48]
+            ldr     q18, [@RWD128]
             eor     v17.2d, v17.2d, v18.2d
             orr     v16.2d, v16.2d, v17.2d
             umaxp   v16.4s, v16.4s, v16.4s
             umov    x0, v16.d[0]
             cmp     x0, #0
             cset    x0, eq
-            cbz     w0, G_M33548_IG41
+            cbz     w0, G_M33548_IG52
             mov     x0, x19
             ldr     x1, [x20, #0x18]
             blr     x1
-            movz    x21, #0xD1FFAB1E
-            movk    x21, #0xD1FFAB1E LSL #16
-            movk    x21, #0xD1FFAB1E LSL #32
-            cmp     x0, x21
-            beq     G_M33548_IG13
-            cbz     x0, G_M33548_IG41
-            ldr     w2, [x0, #0x08]
-            cmp     w2, #34
-            bne     G_M33548_IG41
-            ldr     w2, [x0, #0x08]
-            lsl     w2, w2, #1
-            mov     w2, w2
-            add     x1, x21, #12
-            add     x0, x0, #12
-            movz    x3, #0xD1FFAB1E      // code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
-            movk    x3, #0xD1FFAB1E LSL #16
-            movk    x3, #0xD1FFAB1E LSL #32
-            ldr     x3, [x3]
-            blr     x3
-            cbz     w0, G_M33548_IG41
-						;; size=140 bbWeight=0.50 PerfScore 20.25
-G_M33548_IG13:
-            cbz     x22, G_M33548_IG41
-            ldr     w0, [x22, #0x08]
-            cbz     w0, G_M33548_IG41
+            cbz     x0, G_M33548_IG52
+						;; size=64 bbWeight=0.50 PerfScore 10.50
+G_M33548_IG17:
+            ldr     w1, [x0, #0x08]
+            cmp     w1, #34
+            bne     G_M33548_IG52
+						;; size=12 bbWeight=0.25 PerfScore 1.12
+G_M33548_IG18:
+            ldr     q16, [x0, #0x0C]
+            ldr     q17, [x0, #0x1C]
+            ldr     q8, [@RWD32]
+            eor     v16.2d, v16.2d, v8.2d
+            ldr     q9, [@RWD48]
+            eor     v17.2d, v17.2d, v9.2d
+            orr     v16.2d, v16.2d, v17.2d
+            ldr     q17, [x0, #0x2C]
+            ldr     q18, [x0, #0x3C]
+            ldr     q10, [@RWD64]
+            eor     v17.2d, v17.2d, v10.2d
+            orr     v16.2d, v16.2d, v17.2d
+            ldr     q11, [@RWD80]
+            eor     v17.2d, v18.2d, v11.2d
+            orr     v16.2d, v16.2d, v17.2d
+            ldr     q17, [x0, #0x40]
+            ldr     q12, [@RWD96]
+            str     q12, [fp, #0x10]	// [V70 cse9]
+            eor     v17.2d, v17.2d, v12.2d
+            orr     v16.2d, v16.2d, v17.2d
+            umaxp   v16.4s, v16.4s, v16.4s
+            umov    x0, v16.d[0]
+            cmp     x0, #0
+            cset    x0, eq
+            ldr     q12, [fp, #0x10]	// [V70 cse9]
+            cbz     w0, G_M33548_IG52
+						;; size=104 bbWeight=0.50 PerfScore 18.25
+G_M33548_IG19:
+            cbz     x21, G_M33548_IG52
+            ldr     w0, [x21, #0x08]
+            str     q12, [fp, #0x10]	// [V70 cse9]
+            cbz     w0, G_M33548_IG52
             mov     x0, x19
             ldr     x1, [x19]
-            ldr     x23, [x1, #0x48]
-            ldr     x1, [x23, #0x30]
+            ldr     x22, [x1, #0x48]
+            ldr     x1, [x22, #0x30]
+            mov     v13.d[0], v8.d[1]
+            mov     v14.d[0], v9.d[1]
+            mov     v15.d[0], v10.d[1]
+            mov     v12.d[0], v11.d[1]
             blr     x1
             ldr     x1, [x0]
             ldr     x1, [x1, #0x48]
             ldr     x1, [x1, #0x38]
             blr     x1
-            mov     x24, x0
-            mov     x0, x19
-            ldr     x1, [x23, #0x30]
-            blr     x1
             mov     x23, x0
-            cmp     x24, x23
-            beq     G_M33548_IG41
-						;; size=76 bbWeight=0.50 PerfScore 16.25
-G_M33548_IG14:
-            cbz     x24, G_M33548_IG18
-						;; size=4 bbWeight=4 PerfScore 4.00
-G_M33548_IG15:
-            mov     x0, x24
-            ldr     x1, [x24]
-            ldr     x25, [x1, #0x60]
-            ldr     x1, [x25, #0x30]
+            mov     x0, x19
+            ldr     x1, [x22, #0x30]
             blr     x1
-            cbz     x0, G_M33548_IG18
-						;; size=24 bbWeight=2 PerfScore 23.00
-G_M33548_IG16:
+            mov     x22, x0
+            cmp     x23, x22
+            mov     v8.d[1], v13.d[0]
+            mov     v9.d[1], v14.d[0]
+            mov     v10.d[1], v15.d[0]
+            mov     v11.d[1], v12.d[0]
+            beq     G_M33548_IG52
+						;; size=112 bbWeight=0.50 PerfScore 20.75
+G_M33548_IG20:
+            cbz     x23, G_M33548_IG26
+						;; size=4 bbWeight=4 PerfScore 4.00
+G_M33548_IG21:
+            mov     x0, x23
+            ldr     x1, [x23]
+            ldr     x24, [x1, #0x60]
+            ldr     x1, [x24, #0x30]
+            mov     v13.d[0], v8.d[1]
+            mov     v14.d[0], v9.d[1]
+            mov     v15.d[0], v10.d[1]
+            mov     v12.d[0], v11.d[1]
+            blr     x1
+            mov     v8.d[1], v13.d[0]
+            mov     v9.d[1], v14.d[0]
+            mov     v10.d[1], v15.d[0]
+            mov     v11.d[1], v12.d[0]
+            cbz     x0, G_M33548_IG26
+						;; size=56 bbWeight=2 PerfScore 39.00
+G_M33548_IG22:
             ldr     w1, [x0, #0x08]
             cmp     w1, #11
-            bne     G_M33548_IG18
+            bne     G_M33548_IG26
 						;; size=12 bbWeight=1 PerfScore 4.50
-G_M33548_IG17:
+G_M33548_IG23:
             ldr     q16, [x0, #0x0C]
             ldr     q17, [@RWD00]
             eor     v16.2d, v16.2d, v17.2d
             ldr     q17, [x0, #0x12]
             ldr     q18, [@RWD16]
             eor     v17.2d, v17.2d, v18.2d
             orr     v16.2d, v16.2d, v17.2d
             umaxp   v16.4s, v16.4s, v16.4s
             umov    x0, v16.d[0]
             cmp     x0, #0
             cset    x0, eq
-            cbz     w0, G_M33548_IG18
-            mov     x0, x24
-            ldr     x1, [x25, #0x18]
+            cbz     w0, G_M33548_IG26
+            mov     x0, x23
+            ldr     x1, [x24, #0x18]
+            mov     v13.d[0], v8.d[1]
+            mov     v14.d[0], v9.d[1]
+            mov     v15.d[0], v10.d[1]
+            mov     v12.d[0], v11.d[1]
             blr     x1
-            cmp     x0, x21
-            beq     G_M33548_IG19
-            cbz     x0, G_M33548_IG18
-            ldr     w2, [x0, #0x08]
-            cmp     w2, #34
-            bne     G_M33548_IG18
-            add     x0, x0, #12
-            lsl     w2, w2, #1
-            mov     w2, w2
-            add     x1, x21, #12
-            movz    x3, #0xD1FFAB1E      // code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
-            movk    x3, #0xD1FFAB1E LSL #16
-            movk    x3, #0xD1FFAB1E LSL #32
-            ldr     x3, [x3]
-            blr     x3
-            cbnz    w0, G_M33548_IG19
-						;; size=124 bbWeight=2 PerfScore 72.00
-G_M33548_IG18:
-            cbz     x24, G_M33548_IG35
-            b       G_M33548_IG20
-						;; size=8 bbWeight=2 PerfScore 4.00
-G_M33548_IG19:
-            mov     x0, x19
-            ldr     x1, [x20, #0x30]
-            blr     x1
-            cbnz    x0, G_M33548_IG31
-						;; size=16 bbWeight=2 PerfScore 11.00
-G_M33548_IG20:
-            mov     x0, x24
-            ldr     x1, [x24]
-            ldr     x25, [x1, #0x60]
-            ldr     x1, [x25, #0x30]
-            blr     x1
-            cbz     x0, G_M33548_IG35
-						;; size=24 bbWeight=2 PerfScore 23.00
-G_M33548_IG21:
-            ldr     w1, [x0, #0x08]
-            cmp     w1, #13
-            bne     G_M33548_IG35
-						;; size=12 bbWeight=1 PerfScore 4.50
-G_M33548_IG22:
-            ldr     q16, [x0, #0x0C]
-            ldr     q17, [@RWD64]
-            eor     v16.2d, v16.2d, v17.2d
-            ldr     q17, [x0, #0x16]
-            ldr     q18, [@RWD80]
-            eor     v17.2d, v17.2d, v18.2d
-            orr     v16.2d, v16.2d, v17.2d
-            umaxp   v16.4s, v16.4s, v16.4s
-            umov    x0, v16.d[0]
-            cmp     x0, #0
-            cset    x0, eq
-            tst     w0, #255
-            beq     G_M33548_IG35
-            mov     x0, x24
-            ldr     x1, [x25, #0x18]
-            blr     x1
-            cmp     x0, x21
-            beq     G_M33548_IG23
-            cbz     x0, G_M33548_IG35
-            ldr     w2, [x0, #0x08]
-            cmp     w2, #34
-            bne     G_M33548_IG35
-            add     x0, x0, #12
-            lsl     w2, w2, #1
-            mov     w2, w2
-            add     x1, x21, #12
-            movz    x3, #0xD1FFAB1E      // code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
-            movk    x3, #0xD1FFAB1E LSL #16
-            movk    x3, #0xD1FFAB1E LSL #32
-            ldr     x3, [x3]
-            blr     x3
-            cbz     w0, G_M33548_IG35
-						;; size=128 bbWeight=2 PerfScore 73.00
-G_M33548_IG23:
-            mov     x0, x19
-            ldr     x1, [x20, #0x30]
-            blr     x1
-            cbz     x0, G_M33548_IG35
-						;; size=16 bbWeight=2 PerfScore 11.00
+            mov     v8.d[1], v13.d[0]
+            mov     v9.d[1], v14.d[0]
+            mov     v10.d[1], v15.d[0]
+            mov     v11.d[1], v12.d[0]
+            cbz     x0, G_M33548_IG26
+						;; size=96 bbWeight=2 PerfScore 58.00
 G_M33548_IG24:
             ldr     w1, [x0, #0x08]
-            cmp     w1, #9
-            bne     G_M33548_IG35
+            cmp     w1, #34
+            bne     G_M33548_IG26
 						;; size=12 bbWeight=1 PerfScore 4.50
 G_M33548_IG25:
             ldr     q16, [x0, #0x0C]
-            ldr     q17, [@RWD32]
-            eor     v16.2d, v16.2d, v17.2d
-            ldr     q17, [x0, #0x0E]
-            ldr     q18, [@RWD48]
-            eor     v17.2d, v17.2d, v18.2d
+            ldr     q17, [x0, #0x1C]
+            eor     v16.2d, v16.2d, v8.2d
+            eor     v17.2d, v17.2d, v9.2d
+            orr     v16.2d, v16.2d, v17.2d
+            ldr     q17, [x0, #0x2C]
+            ldr     q18, [x0, #0x3C]
+            eor     v17.2d, v17.2d, v10.2d
+            orr     v16.2d, v16.2d, v17.2d
+            eor     v17.2d, v18.2d, v11.2d
+            orr     v16.2d, v16.2d, v17.2d
+            ldr     q17, [x0, #0x40]
+            ldr     q12, [fp, #0x10]	// [V70 cse9]
+            eor     v17.2d, v17.2d, v12.2d
             orr     v16.2d, v16.2d, v17.2d
             umaxp   v16.4s, v16.4s, v16.4s
             umov    x0, v16.d[0]
             cmp     x0, #0
             cset    x0, eq
-            tst     w0, #255
-            beq     G_M33548_IG35
-            mov     x0, x19
-            ldr     x1, [x20, #0x18]
-            blr     x1
-            cmp     x0, x21
-            beq     G_M33548_IG26
-            cbz     x0, G_M33548_IG35
-            ldr     w2, [x0, #0x08]
-            cmp     w2, #34
-            bne     G_M33548_IG35
-            add     x0, x0, #12
-            lsl     w2, w2, #1
-            mov     w2, w2
-            add     x1, x21, #12
-            movz    x3, #0xD1FFAB1E      // code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
-            movk    x3, #0xD1FFAB1E LSL #16
-            movk    x3, #0xD1FFAB1E LSL #32
-            ldr     x3, [x3]
-            blr     x3
-            cbz     w0, G_M33548_IG35
-						;; size=128 bbWeight=2 PerfScore 73.00
+            cbnz    w0, G_M33548_IG27
+						;; size=80 bbWeight=2 PerfScore 51.00
 G_M33548_IG26:
-            mov     x1, x24
-            movz    x0, #0xD1FFAB1E
-            movk    x0, #0xD1FFAB1E LSL #16
-            movk    x0, #0xD1FFAB1E LSL #32
-            movz    x2, #0xD1FFAB1E      // code for CORINFO_HELP_ISINSTANCEOFCLASS
-            movk    x2, #0xD1FFAB1E LSL #16
-            movk    x2, #0xD1FFAB1E LSL #32
-            ldr     x2, [x2]
-            blr     x2
-            cbz     x0, G_M33548_IG35
-						;; size=40 bbWeight=2 PerfScore 17.00
+            cbz     x23, G_M33548_IG46
+            b       G_M33548_IG33
+						;; size=8 bbWeight=2 PerfScore 4.00
 G_M33548_IG27:
-            mov     x25, x24
-            movz    x0, #0xD1FFAB1E
-            movk    x0, #0xD1FFAB1E LSL #16
-            movk    x0, #0xD1FFAB1E LSL #32
-            ldr     x1, [x25]
-            cmp     x1, x0
-            beq     G_M33548_IG29
-						;; size=28 bbWeight=1 PerfScore 6.50
+            mov     x0, x19
+            ldr     x1, [x20, #0x30]
+            mov     v13.d[0], v8.d[1]
+            mov     v14.d[0], v9.d[1]
+            mov     v15.d[0], v10.d[1]
+            mov     v12.d[0], v11.d[1]
+            blr     x1
+            mov     v8.d[1], v13.d[0]
+            mov     v9.d[1], v14.d[0]
+            mov     v10.d[1], v15.d[0]
+            mov     v11.d[1], v12.d[0]
+            cbz     x0, G_M33548_IG33
+						;; size=48 bbWeight=2 PerfScore 27.00
 G_M33548_IG28:
-            mov     x1, x24
-            movz    x2, #0xD1FFAB1E      // code for CORINFO_HELP_CHKCASTCLASS_SPECIAL
-            movk    x2, #0xD1FFAB1E LSL #16
-            movk    x2, #0xD1FFAB1E LSL #32
-            ldr     x2, [x2]
-            blr     x2
-            mov     x25, x0
-						;; size=28 bbWeight=0.50 PerfScore 3.25
-G_M33548_IG29:
-            mov     x0, x24
-            movz    x1, #0xD1FFAB1E
-            movk    x1, #0xD1FFAB1E LSL #16
-            movk    x1, #0xD1FFAB1E LSL #32
-            ldr     x2, [x24]
-            ldr     x2, [x2, #0x80]
-            ldr     x2, [x2, #0x38]
-            blr     x2
-            cmp     x0, x22
-            bne     G_M33548_IG34
-						;; size=40 bbWeight=2 PerfScore 27.00
-G_M33548_IG30:
-            mov     x0, x25
-            b       G_M33548_IG45
-						;; size=8 bbWeight=0.50 PerfScore 0.75
-G_M33548_IG31:
             ldr     w1, [x0, #0x08]
             cmp     w1, #7
-            bne     G_M33548_IG20
+            bne     G_M33548_IG33
 						;; size=12 bbWeight=1 PerfScore 4.50
-G_M33548_IG32:
+G_M33548_IG29:
             ldr     x1, [x0, #0x0C]
             movz    x2, #101
             movk    x2, #108 LSL #16
             movk    x2, #101 LSL #32
             movk    x2, #109 LSL #48
             eor     x1, x1, x2
             ldr     x0, [x0, #0x12]
             movz    x2, #109
             movk    x2, #101 LSL #16
             movk    x2, #110 LSL #32
             movk    x2, #116 LSL #48
             eor     x0, x0, x2
             orr     x0, x1, x0
+            cbnz    x0, G_M33548_IG33
+						;; size=56 bbWeight=0.50 PerfScore 6.25
+G_M33548_IG30:
+            mov     x0, x19
+            ldr     x1, [x20, #0x18]
+            mov     v13.d[0], v8.d[1]
+            mov     v14.d[0], v9.d[1]
+            mov     v15.d[0], v10.d[1]
+            mov     v12.d[0], v11.d[1]
+            blr     x1
+            mov     v8.d[1], v13.d[0]
+            mov     v9.d[1], v14.d[0]
+            mov     v10.d[1], v15.d[0]
+            mov     v11.d[1], v12.d[0]
+            cbz     x0, G_M33548_IG33
+						;; size=48 bbWeight=2 PerfScore 27.00
+G_M33548_IG31:
+            ldr     w1, [x0, #0x08]
+            cmp     w1, #34
+            bne     G_M33548_IG33
+						;; size=12 bbWeight=1 PerfScore 4.50
+G_M33548_IG32:
+            ldr     q16, [x0, #0x0C]
+            ldr     q17, [x0, #0x1C]
+            eor     v16.2d, v16.2d, v8.2d
+            eor     v17.2d, v17.2d, v9.2d
+            orr     v16.2d, v16.2d, v17.2d
+            ldr     q17, [x0, #0x2C]
+            ldr     q18, [x0, #0x3C]
+            eor     v17.2d, v17.2d, v10.2d
+            orr     v16.2d, v16.2d, v17.2d
+            eor     v17.2d, v18.2d, v11.2d
+            orr     v16.2d, v16.2d, v17.2d
+            ldr     q17, [x0, #0x40]
+            ldr     q12, [fp, #0x10]	// [V70 cse9]
+            eor     v17.2d, v17.2d, v12.2d
+            orr     v16.2d, v16.2d, v17.2d
+            umaxp   v16.4s, v16.4s, v16.4s
+            umov    x0, v16.d[0]
+            cmp     x0, #0
+            cset    x0, eq
+            cbnz    w0, G_M33548_IG42
+						;; size=80 bbWeight=2 PerfScore 51.00
+G_M33548_IG33:
+            mov     x0, x23
+            ldr     x1, [x23]
+            ldr     x24, [x1, #0x60]
+            ldr     x1, [x24, #0x30]
+            mov     v13.d[0], v8.d[1]
+            mov     v14.d[0], v9.d[1]
+            mov     v15.d[0], v10.d[1]
+            mov     v12.d[0], v11.d[1]
+            blr     x1
+            mov     v8.d[1], v13.d[0]
+            mov     v9.d[1], v14.d[0]
+            mov     v10.d[1], v15.d[0]
+            mov     v11.d[1], v12.d[0]
+            cbz     x0, G_M33548_IG46
+						;; size=56 bbWeight=2 PerfScore 39.00
+G_M33548_IG34:
+            ldr     w1, [x0, #0x08]
+            cmp     w1, #13
+            bne     G_M33548_IG46
+						;; size=12 bbWeight=1 PerfScore 4.50
+G_M33548_IG35:
+            ldr     q16, [x0, #0x0C]
+            ldr     q17, [@RWD144]
+            eor     v16.2d, v16.2d, v17.2d
+            ldr     q17, [x0, #0x16]
+            ldr     q18, [@RWD160]
+            eor     v17.2d, v17.2d, v18.2d
+            orr     v16.2d, v16.2d, v17.2d
+            umaxp   v16.4s, v16.4s, v16.4s
+            umov    x0, v16.d[0]
             cmp     x0, #0
             cset    x0, eq
             tst     w0, #255
-            beq     G_M33548_IG20
-						;; size=68 bbWeight=0.50 PerfScore 7.00
-G_M33548_IG33:
+            beq     G_M33548_IG46
+            mov     x0, x23
+            ldr     x1, [x24, #0x18]
+            mov     v13.d[0], v8.d[1]
+            mov     v14.d[0], v9.d[1]
+            mov     v15.d[0], v10.d[1]
+            mov     v12.d[0], v11.d[1]
+            blr     x1
+            mov     v8.d[1], v13.d[0]
+            mov     v9.d[1], v14.d[0]
+            mov     v10.d[1], v15.d[0]
+            mov     v11.d[1], v12.d[0]
+            cbz     x0, G_M33548_IG46
+						;; size=100 bbWeight=2 PerfScore 59.00
+G_M33548_IG36:
+            ldr     w1, [x0, #0x08]
+            cmp     w1, #34
+            bne     G_M33548_IG46
+						;; size=12 bbWeight=1 PerfScore 4.50
+G_M33548_IG37:
+            ldr     q16, [x0, #0x0C]
+            ldr     q17, [x0, #0x1C]
+            eor     v16.2d, v16.2d, v8.2d
+            eor     v17.2d, v17.2d, v9.2d
+            orr     v16.2d, v16.2d, v17.2d
+            ldr     q17, [x0, #0x2C]
+            ldr     q18, [x0, #0x3C]
+            eor     v17.2d, v17.2d, v10.2d
+            orr     v16.2d, v16.2d, v17.2d
+            eor     v17.2d, v18.2d, v11.2d
+            orr     v16.2d, v16.2d, v17.2d
+            ldr     q17, [x0, #0x40]
+            ldr     q12, [fp, #0x10]	// [V70 cse9]
+            eor     v17.2d, v17.2d, v12.2d
+            orr     v16.2d, v16.2d, v17.2d
+            umaxp   v16.4s, v16.4s, v16.4s
+            umov    x0, v16.d[0]
+            cmp     x0, #0
+            cset    x0, eq
+            tst     w0, #255
+            beq     G_M33548_IG46
+            mov     x0, x19
+            ldr     x1, [x20, #0x30]
+            mov     v13.d[0], v8.d[1]
+            mov     v14.d[0], v9.d[1]
+            mov     v15.d[0], v10.d[1]
+            mov     v12.d[0], v11.d[1]
+            blr     x1
+            mov     v8.d[1], v13.d[0]
+            mov     v9.d[1], v14.d[0]
+            mov     v10.d[1], v15.d[0]
+            mov     v11.d[1], v12.d[0]
+            cbz     x0, G_M33548_IG46
+						;; size=132 bbWeight=2 PerfScore 79.00
+G_M33548_IG38:
+            ldr     w1, [x0, #0x08]
+            cmp     w1, #9
+            bne     G_M33548_IG46
+						;; size=12 bbWeight=1 PerfScore 4.50
+G_M33548_IG39:
+            ldr     q16, [x0, #0x0C]
+            ldr     q17, [@RWD112]
+            eor     v16.2d, v16.2d, v17.2d
+            ldr     q17, [x0, #0x0E]
+            ldr     q18, [@RWD128]
+            eor     v17.2d, v17.2d, v18.2d
+            orr     v16.2d, v16.2d, v17.2d
+            umaxp   v16.4s, v16.4s, v16.4s
+            umov    x0, v16.d[0]
+            cmp     x0, #0
+            cset    x0, eq
+            tst     w0, #255
+            beq     G_M33548_IG46
             mov     x0, x19
             ldr     x1, [x20, #0x18]
+            mov     v13.d[0], v8.d[1]
+            mov     v14.d[0], v9.d[1]
+            mov     v15.d[0], v10.d[1]
+            mov     v12.d[0], v11.d[1]
             blr     x1
+            mov     v8.d[1], v13.d[0]
+            mov     v9.d[1], v14.d[0]
+            mov     v10.d[1], v15.d[0]
+            mov     v11.d[1], v12.d[0]
+            cbz     x0, G_M33548_IG46
+						;; size=100 bbWeight=2 PerfScore 59.00
+G_M33548_IG40:
+            ldr     w1, [x0, #0x08]
+            cmp     w1, #34
+            bne     G_M33548_IG46
+						;; size=12 bbWeight=1 PerfScore 4.50
+G_M33548_IG41:
+            ldr     q16, [x0, #0x0C]
+            ldr     q17, [x0, #0x1C]
+            eor     v16.2d, v16.2d, v8.2d
+            eor     v17.2d, v17.2d, v9.2d
+            orr     v16.2d, v16.2d, v17.2d
+            ldr     q17, [x0, #0x2C]
+            ldr     q18, [x0, #0x3C]
+            eor     v17.2d, v17.2d, v10.2d
+            orr     v16.2d, v16.2d, v17.2d
+            eor     v17.2d, v18.2d, v11.2d
+            orr     v16.2d, v16.2d, v17.2d
+            ldr     q17, [x0, #0x40]
+            ldr     q12, [fp, #0x10]	// [V70 cse9]
+            eor     v17.2d, v17.2d, v12.2d
+            orr     v16.2d, v16.2d, v17.2d
+            umaxp   v16.4s, v16.4s, v16.4s
+            umov    x1, v16.d[0]
+            cmp     x1, #0
+            cset    x1, eq
+            tst     w1, #255
+            beq     G_M33548_IG46
+						;; size=84 bbWeight=2 PerfScore 52.00
+G_M33548_IG42:
+            mov     x1, x23
+            movz    x0, #0xD1FFAB1E
+            movk    x0, #0xD1FFAB1E LSL #16
+            movk    x0, #0xD1FFAB1E LSL #32
+            movz    x2, #0xD1FFAB1E      // code for CORINFO_HELP_ISINSTANCEOFCLASS
+            movk    x2, #0xD1FFAB1E LSL #16
+            movk    x2, #0xD1FFAB1E LSL #32
+            ldr     x2, [x2]
+            mov     v13.d[0], v8.d[1]
+            mov     v14.d[0], v9.d[1]
+            mov     v15.d[0], v10.d[1]
+            mov     v12.d[0], v11.d[1]
+            blr     x2
+            mov     v8.d[1], v13.d[0]
+            mov     v9.d[1], v14.d[0]
+            mov     v10.d[1], v15.d[0]
+            mov     v11.d[1], v12.d[0]
+            cbz     x0, G_M33548_IG46
+						;; size=72 bbWeight=2 PerfScore 33.00
+G_M33548_IG43:
+            mov     x24, x23
+            movz    x0, #0xD1FFAB1E
+            movk    x0, #0xD1FFAB1E LSL #16
+            movk    x0, #0xD1FFAB1E LSL #32
+            ldr     x1, [x24]
+            cmp     x1, x0
+            beq     G_M33548_IG45
+						;; size=28 bbWeight=1 PerfScore 6.50
+G_M33548_IG44:
+            mov     x1, x23
+            movz    x2, #0xD1FFAB1E      // code for CORINFO_HELP_CHKCASTCLASS_SPECIAL
+            movk    x2, #0xD1FFAB1E LSL #16
+            movk    x2, #0xD1FFAB1E LSL #32
+            ldr     x2, [x2]
+            mov     v13.d[0], v8.d[1]
+            mov     v14.d[0], v9.d[1]
+            mov     v15.d[0], v10.d[1]
+            mov     v12.d[0], v11.d[1]
+            blr     x2
+            mov     x24, x0
+            mov     v8.d[1], v13.d[0]
+            mov     v9.d[1], v14.d[0]
+            mov     v10.d[1], v15.d[0]
+            mov     v11.d[1], v12.d[0]
+						;; size=60 bbWeight=0.50 PerfScore 7.25
+G_M33548_IG45:
+            mov     x0, x23
+            movz    x1, #0xD1FFAB1E
+            movk    x1, #0xD1FFAB1E LSL #16
+            movk    x1, #0xD1FFAB1E LSL #32
+            ldr     x2, [x23]
+            ldr     x2, [x2, #0x80]
+            ldr     x2, [x2, #0x38]
+            mov     v13.d[0], v8.d[1]
+            mov     v14.d[0], v9.d[1]
+            mov     v15.d[0], v10.d[1]
+            mov     v12.d[0], v11.d[1]
+            blr     x2
             cmp     x0, x21
-            beq     G_M33548_IG26
-            cbz     x0, G_M33548_IG20
+            mov     v8.d[1], v13.d[0]
+            mov     v9.d[1], v14.d[0]
+            mov     v10.d[1], v15.d[0]
+            mov     v11.d[1], v12.d[0]
+            beq     G_M33548_IG55
+            cbz     x0, G_M33548_IG46
             ldr     w2, [x0, #0x08]
-            cmp     w2, #34
-            bne     G_M33548_IG20
+            ldr     w1, [x21, #0x08]
+            cmp     w2, w1
+            bne     G_M33548_IG46
             add     x0, x0, #12
             lsl     w2, w2, #1
             mov     w2, w2
             add     x1, x21, #12
             movz    x3, #0xD1FFAB1E      // code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
             movk    x3, #0xD1FFAB1E LSL #16
             movk    x3, #0xD1FFAB1E LSL #32
             ldr     x3, [x3]
+            mov     v13.d[0], v8.d[1]
+            mov     v14.d[0], v9.d[1]
+            mov     v15.d[0], v10.d[1]
+            mov     v12.d[0], v11.d[1]
             blr     x3
-            cbnz    w0, G_M33548_IG26
-            b       G_M33548_IG20
-						;; size=80 bbWeight=2 PerfScore 43.00
-G_M33548_IG34:
-            cbz     x0, G_M33548_IG35
-            ldr     w2, [x0, #0x08]
-            ldr     w1, [x22, #0x08]
-            cmp     w2, w1
-            bne     G_M33548_IG35
-            add     x0, x0, #12
-            lsl     w2, w2, #1
-            mov     w2, w2
-            add     x1, x22, #12
-            movz    x3, #0xD1FFAB1E      // code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
-            movk    x3, #0xD1FFAB1E LSL #16
-            movk    x3, #0xD1FFAB1E LSL #32
-            ldr     x3, [x3]
-            blr     x3
-            cbnz    w0, G_M33548_IG30
-						;; size=60 bbWeight=2 PerfScore 35.00
-G_M33548_IG35:
-            mov     x0, x24
-            ldr     x1, [x24]
-            ldr     x25, [x1, #0x48]
-            ldr     x1, [x25, #0x38]
+            mov     v8.d[1], v13.d[0]
+            mov     v9.d[1], v14.d[0]
+            mov     v10.d[1], v15.d[0]
+            mov     v11.d[1], v12.d[0]
+            cbnz    w0, G_M33548_IG55
+						;; size=164 bbWeight=2 PerfScore 94.00
+G_M33548_IG46:
+            mov     x0, x23
+            ldr     x1, [x23]
+            ldr     x24, [x1, #0x48]
+            ldr     x1, [x24, #0x38]
+            mov     v13.d[0], v8.d[1]
+            mov     v14.d[0], v9.d[1]
+            mov     v15.d[0], v10.d[1]
+            mov     v12.d[0], v11.d[1]
             blr     x1
-            cbnz    x0, G_M33548_IG43
-						;; size=24 bbWeight=4 PerfScore 46.00
-G_M33548_IG36:
-            mov     x0, x24
-            ldr     x1, [x25, #0x20]
+            mov     v8.d[1], v13.d[0]
+            mov     v9.d[1], v14.d[0]
+            mov     v10.d[1], v15.d[0]
+            mov     v11.d[1], v12.d[0]
+            cbnz    x0, G_M33548_IG54
+						;; size=56 bbWeight=4 PerfScore 78.00
+G_M33548_IG47:
+            mov     x0, x23
+            ldr     x1, [x24, #0x20]
+            mov     v13.d[0], v8.d[1]
+            mov     v14.d[0], v9.d[1]
+            mov     v15.d[0], v10.d[1]
+            mov     v12.d[0], v11.d[1]
             blr     x1
-            cbnz    x0, G_M33548_IG39
-						;; size=16 bbWeight=2 PerfScore 11.00
-G_M33548_IG37:
-            cmp     x24, x23
-            beq     G_M33548_IG40
+            mov     v8.d[1], v13.d[0]
+            mov     v9.d[1], v14.d[0]
+            mov     v10.d[1], v15.d[0]
+            mov     v11.d[1], v12.d[0]
+            cbnz    x0, G_M33548_IG50
+						;; size=48 bbWeight=2 PerfScore 27.00
+G_M33548_IG48:
+            cmp     x23, x22
+            beq     G_M33548_IG51
 						;; size=8 bbWeight=16 PerfScore 24.00
-G_M33548_IG38:
-            mov     x0, x24
-            ldr     x1, [x24]
+G_M33548_IG49:
+            mov     x0, x23
+            ldr     x1, [x23]
             ldr     x1, [x1, #0x48]
             ldr     x1, [x1, #0x08]
+            mov     v13.d[0], v8.d[1]
+            mov     v14.d[0], v9.d[1]
+            mov     v15.d[0], v10.d[1]
+            mov     v12.d[0], v11.d[1]
             blr     x1
-            mov     x24, x0
-            ldr     x1, [x24]
+            mov     x23, x0
+            ldr     x1, [x23]
             ldr     x1, [x1, #0x48]
             ldr     x1, [x1, #0x20]
             blr     x1
-            cbz     x0, G_M33548_IG37
-						;; size=44 bbWeight=64 PerfScore 1408.00
-G_M33548_IG39:
-            mov     x0, x24
-            ldr     x1, [x24]
+            mov     v8.d[1], v13.d[0]
+            mov     v9.d[1], v14.d[0]
+            mov     v10.d[1], v15.d[0]
+            mov     v11.d[1], v12.d[0]
+            cbz     x0, G_M33548_IG48
+						;; size=76 bbWeight=64 PerfScore 1920.00
+G_M33548_IG50:
+            mov     x0, x23
+            ldr     x1, [x23]
             ldr     x1, [x1, #0x48]
             ldr     x1, [x1, #0x20]
+            mov     v13.d[0], v8.d[1]
+            mov     v14.d[0], v9.d[1]
+            mov     v15.d[0], v10.d[1]
+            mov     v12.d[0], v11.d[1]
             blr     x1
-            mov     x24, x0
-						;; size=24 bbWeight=8 PerfScore 88.00
-G_M33548_IG40:
-            cmp     x24, x23
-            bne     G_M33548_IG14
+            mov     x23, x0
+            mov     v8.d[1], v13.d[0]
+            mov     v9.d[1], v14.d[0]
+            mov     v10.d[1], v15.d[0]
+            mov     v11.d[1], v12.d[0]
+						;; size=56 bbWeight=8 PerfScore 152.00
+G_M33548_IG51:
+            cmp     x23, x22
+            bne     G_M33548_IG20
 						;; size=8 bbWeight=4 PerfScore 6.00
-G_M33548_IG41:
+G_M33548_IG52:
             mov     x0, xzr
 						;; size=4 bbWeight=0.50 PerfScore 0.25
-G_M33548_IG42:
-            ldr     x25, [sp, #0x48]
-            ldp     x23, x24, [sp, #0x38]
-            ldp     x21, x22, [sp, #0x28]
-            ldp     x19, x20, [sp, #0x18]
-            ldp     fp, lr, [sp], #0x50
+G_M33548_IG53:
+            ldp     x23, x24, [sp, #0x80]
+            ldp     x21, x22, [sp, #0x70]
+            ldp     x19, x20, [sp, #0x60]
+            ldp     d14, d15, [sp, #0x50]
+            ldp     d12, d13, [sp, #0x40]
+            ldp     d10, d11, [sp, #0x30]
+            ldp     d8, d9, [sp, #0x20]
+            ldp     fp, lr, [sp], #0x90
             ret     lr
-						;; size=24 bbWeight=0.50 PerfScore 3.50
-G_M33548_IG43:
-            mov     x0, x24
-            ldr     x1, [x25, #0x38]
+						;; size=36 bbWeight=0.50 PerfScore 4.50
+G_M33548_IG54:
+            mov     x0, x23
+            ldr     x1, [x24, #0x38]
+            mov     v13.d[0], v8.d[1]
+            mov     v14.d[0], v9.d[1]
+            mov     v15.d[0], v10.d[1]
+            mov     v12.d[0], v11.d[1]
             blr     x1
-            mov     x24, x0
-            b       G_M33548_IG40
-						;; size=20 bbWeight=2 PerfScore 12.00
-G_M33548_IG44:
+            mov     x23, x0
+            mov     v8.d[1], v13.d[0]
+            mov     v9.d[1], v14.d[0]
+            mov     v10.d[1], v15.d[0]
+            mov     v11.d[1], v12.d[0]
+            b       G_M33548_IG51
+						;; size=52 bbWeight=2 PerfScore 28.00
+G_M33548_IG55:
+            mov     x0, x24
+            b       G_M33548_IG57
+						;; size=8 bbWeight=0.50 PerfScore 0.75
+G_M33548_IG56:
             mov     x0, x19
 						;; size=4 bbWeight=0.50 PerfScore 0.25
-G_M33548_IG45:
-            ldr     x25, [sp, #0x48]
-            ldp     x23, x24, [sp, #0x38]
-            ldp     x21, x22, [sp, #0x28]
-            ldp     x19, x20, [sp, #0x18]
-            ldp     fp, lr, [sp], #0x50
+G_M33548_IG57:
+            ldp     x23, x24, [sp, #0x80]
+            ldp     x21, x22, [sp, #0x70]
+            ldp     x19, x20, [sp, #0x60]
+            ldp     d14, d15, [sp, #0x50]
+            ldp     d12, d13, [sp, #0x40]
+            ldp     d10, d11, [sp, #0x30]
+            ldp     d8, d9, [sp, #0x20]
+            ldp     fp, lr, [sp], #0x90
             ret     lr
-						;; size=24 bbWeight=0.50 PerfScore 3.50
+						;; size=36 bbWeight=0.50 PerfScore 4.50
 RWD00  	dq	006D0065006C0045h, 00540074006E0065h
 RWD16  	dq	0074006E0065006Dh, 0065007000790054h
-RWD32  	dq	0072007400740061h, 0074007500620069h
-RWD48  	dq	0069007200740074h, 0065007400750062h
-RWD64  	dq	0072007400740041h, 0074007500620069h
-RWD80  	dq	0065007400750062h, 0065007000790054h
+RWD32  	dq	003A006E00720075h, 0065006800630073h
+RWD48  	dq	002D00730061006Dh, 007200630069006Dh
+RWD64  	dq	0066006F0073006Fh, 006F0063002D0074h
+RWD80  	dq	006D0078003A006Dh, 00610064002D006Ch
+RWD96  	dq	002D006C006D0078h, 0061007400610064h
+RWD112 	dq	0072007400740061h, 0074007500620069h
+RWD128 	dq	0069007200740074h, 0065007400750062h
+RWD144 	dq	0072007400740041h, 0074007500620069h
+RWD160 	dq	0065007400750062h, 0065007000790054h
 
 
-; Total bytes of code 1744, prolog size 24, PerfScore 2155.69, instruction count 436, allocated bytes for code 1744 (MethodHash=df227cf3) for method System.Data.XDRSchema:FindTypeNode(System.Xml.XmlElement):System.Xml.XmlElement (FullOpts)
+; Total bytes of code 2584, prolog size 36, PerfScore 3112.31, instruction count 646, allocated bytes for code 2584 (MethodHash=df227cf3) for method System.Data.XDRSchema:FindTypeNode(System.Xml.XmlElement):System.Xml.XmlElement (FullOpts)
 ; ============================================================

Note: some changes were skipped as they were too large to fit into a comment.

Larger list of diffs: https://gist.github.com/MihuBot/c38eda4ccf75afd288c83f086399f129

@MihuBot
Copy link
Owner Author

MihuBot commented Oct 20, 2024

Top method improvements

-76 (-9.90 % of base) - System.Xml.XPath.XPathNavigator:ComparePosition(System.Xml.XPath.XPathNavigator):int:this
 ; Assembly listing for method System.Xml.XPath.XPathNavigator:ComparePosition(System.Xml.XPath.XPathNavigator):int:this (FullOpts)
 ; Emitting BLENDED_CODE for generic ARM64 - Unix
 ; FullOpts code
 ; optimized code
 ; fp based frame
 ; partially interruptible
 ; No PGO data
-; 0 inlinees with PGO data; 5 single block inlinees; 1 inlinees without PGO data
+; 0 inlinees with PGO data; 2 single block inlinees; 0 inlinees without PGO data
 ; Final local variable assignments
 ;
 ;  V00 this         [V00,T09] (  6,  4   )     ref  ->  x20         this class-hnd single-def <System.Xml.XPath.XPathNavigator>
 ;  V01 arg1         [V01,T08] (  6,  4.50)     ref  ->  x19         class-hnd single-def <System.Xml.XPath.XPathNavigator>
 ;  V02 loc0         [V02,T03] ( 10, 12   )     ref  ->  x20         class-hnd single-def <System.Xml.XPath.XPathNavigator>
 ;  V03 loc1         [V03,T04] (  9, 11.50)     ref  ->  x19         class-hnd single-def <System.Xml.XPath.XPathNavigator>
 ;  V04 loc2         [V04,T00] (  7, 13.75)     int  ->  x23        
-;  V05 loc3         [V05,T11] (  5,  5.75)     int  ->  x26        
+;  V05 loc3         [V05,T10] (  5,  5.75)     int  ->  x26        
 ;  V06 loc4         [V06,T06] (  4,  9   )     ref  ->  x22         class-hnd single-def <System.Xml.XPath.XPathNavigator>
 ;  V07 loc5         [V07,T01] (  4, 12.50)     ref  ->  x23         class-hnd single-def <System.Xml.XPath.XPathNavigator>
 ;# V08 OutArgs      [V08    ] (  1,  1   )  struct ( 0) [sp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
 ;* V09 tmp1         [V09    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.RuntimeType>
-;  V10 tmp2         [V10,T10] (  6,  6   )     ref  ->   x0         class-hnd exact single-def "Inlining Arg" <System.String>
-;* V11 tmp3         [V11    ] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;* V12 tmp4         [V12    ] (  0,  0   )   byref  ->  zero-ref    "impAppendStmt"
+;* V10 tmp2         [V10    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.String>
+;  V11 tmp3         [V11,T13] (  3,  2.50)     ref  ->   x0         single-def "spilling varStr"
+;* V12 tmp4         [V12    ] (  0,  0   )     int  ->  zero-ref    "spilling unroll qmark"
 ;  V13 tmp5         [V13,T15] (  2,  2   )     int  ->   x0         "Single return block return value"
 ;  V14 tmp6         [V14,T14] (  2,  2   )     ref  ->   x0         single-def "argument with side effect"
-;  V15 cse0         [V15,T13] (  2,  4.50)    long  ->  x26         hoist "CSE #08: aggressive"
+;  V15 cse0         [V15,T12] (  2,  4.50)    long  ->  x26         hoist "CSE #08: aggressive"
 ;  V16 cse1         [V16,T16] (  3,  1.50)    long  ->  x22         "CSE #05: moderate"
 ;  V17 cse2         [V17,T17] (  3,  1.50)    long  ->  x25         "CSE #06: moderate"
 ;  V18 cse3         [V18,T05] (  6, 10   )    long  ->  x21         "CSE #02: aggressive"
 ;  V19 cse4         [V19,T07] (  4,  9   )    long  ->  x24         "CSE #03: aggressive"
-;  V20 cse5         [V20,T12] (  3,  5   )    long  ->  x25         hoist "CSE #07: aggressive"
+;  V20 cse5         [V20,T11] (  3,  5   )    long  ->  x25         hoist "CSE #07: aggressive"
 ;  V21 rat0         [V21,T02] (  4, 12.25)     int  ->  x23         "Trip count IV"
 ;
 ; Lcl frame size = 0
 
 G_M40554_IG01:
             stp     fp, lr, [sp, #-0x50]!
             stp     x19, x20, [sp, #0x10]
             stp     x21, x22, [sp, #0x20]
             stp     x23, x24, [sp, #0x30]
             stp     x25, x26, [sp, #0x40]
             mov     fp, sp
             mov     x20, x0
             mov     x19, x1
 						;; size=32 bbWeight=1 PerfScore 6.50
 G_M40554_IG02:
-            cbz     x19, G_M40554_IG18
+            cbz     x19, G_M40554_IG19
 						;; size=4 bbWeight=1 PerfScore 1.00
 G_M40554_IG03:
             mov     x0, x20
             mov     x1, x19
             ldr     x2, [x20]
             ldr     x2, [x2, #0x78]
             ldr     x2, [x2, #0x30]
             blr     x2
-            cbnz    w0, G_M40554_IG24
+            cbnz    w0, G_M40554_IG25
             mov     x0, x20
             ldr     x1, [x20]
             ldr     x1, [x1, #0x58]
             ldr     x1, [x1]
             blr     x1
             mov     x20, x0
             mov     x0, x19
             ldr     x1, [x19]
             ldr     x1, [x1, #0x58]
             ldr     x1, [x1]
             blr     x1
             mov     x19, x0
             mov     x0, x20
             ldr     x21, [x20]
             ldr     x22, [x21, #0x58]
             ldr     x1, [x22]
             blr     x1
             movz    x1, #0xD1FFAB1E      // code for System.Xml.XPath.XPathNavigator:GetDepth(System.Xml.XPath.XPathNavigator):int
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
             sxtw    w23, w0
             mov     x0, x19
             ldr     x24, [x19]
             ldr     x25, [x24, #0x58]
             ldr     x1, [x25]
             blr     x1
             movz    x1, #0xD1FFAB1E      // code for System.Xml.XPath.XPathNavigator:GetDepth(System.Xml.XPath.XPathNavigator):int
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
             sxtw    w26, w0
             cmp     w23, w26
             ble     G_M40554_IG07
             b       G_M40554_IG05
 						;; size=176 bbWeight=0.50 PerfScore 34.75
 G_M40554_IG04:
             mov     x0, x20
             ldr     x1, [x21, #0x70]
             ldr     x1, [x1, #0x08]
             blr     x1
             sub     w23, w23, #1
 						;; size=20 bbWeight=4 PerfScore 32.00
 G_M40554_IG05:
             cmp     w23, w26
             bgt     G_M40554_IG04
 						;; size=8 bbWeight=4 PerfScore 6.00
 G_M40554_IG06:
             mov     x0, x20
             mov     x1, x19
             ldr     x2, [x21, #0x78]
             ldr     x2, [x2, #0x30]
             blr     x2
-            cbnz    w0, G_M40554_IG22
+            cbnz    w0, G_M40554_IG23
 						;; size=24 bbWeight=0.50 PerfScore 4.50
 G_M40554_IG07:
             cmp     w26, w23
             ble     G_M40554_IG12
 						;; size=8 bbWeight=0.50 PerfScore 0.75
 G_M40554_IG08:
             neg     w0, w23
             add     w0, w0, w26
             add     w23, w0, #1
             b       G_M40554_IG10
 						;; size=16 bbWeight=0.25 PerfScore 0.62
 G_M40554_IG09:
             mov     x0, x19
             ldr     x1, [x24, #0x70]
             ldr     x1, [x1, #0x08]
             blr     x1
 						;; size=16 bbWeight=4 PerfScore 30.00
 G_M40554_IG10:
             sub     w23, w23, #1
             cbnz    w23, G_M40554_IG09
 						;; size=8 bbWeight=4 PerfScore 6.00
 G_M40554_IG11:
             mov     x0, x20
             mov     x1, x19
             ldr     x2, [x21, #0x78]
             ldr     x2, [x2, #0x30]
             blr     x2
-            cbnz    w0, G_M40554_IG20
+            cbnz    w0, G_M40554_IG21
 						;; size=24 bbWeight=0.50 PerfScore 4.50
 G_M40554_IG12:
             mov     x0, x20
             ldr     x1, [x22]
             blr     x1
             mov     x22, x0
             mov     x0, x19
             ldr     x1, [x25]
             blr     x1
             mov     x23, x0
             ldr     x25, [x22]
             ldr     x26, [x25, #0x70]
             b       G_M40554_IG14
 						;; size=44 bbWeight=0.50 PerfScore 8.50
 G_M40554_IG13:
             mov     x0, x20
             ldr     x1, [x21, #0x70]
             ldr     x1, [x1, #0x08]
             blr     x1
             mov     x0, x19
             ldr     x1, [x24, #0x70]
             ldr     x1, [x1, #0x08]
             blr     x1
 						;; size=32 bbWeight=4 PerfScore 60.00
 G_M40554_IG14:
             mov     x0, x22
             ldr     x1, [x26, #0x08]
             blr     x1
-            cbz     w0, G_M40554_IG18
+            cbz     w0, G_M40554_IG19
             mov     x0, x23
             ldr     x1, [x23]
             ldr     x1, [x1, #0x70]
             ldr     x1, [x1, #0x08]
             blr     x1
-            cbz     w0, G_M40554_IG18
+            cbz     w0, G_M40554_IG19
             mov     x0, x22
             mov     x1, x23
             ldr     x2, [x25, #0x78]
             ldr     x2, [x2, #0x30]
             blr     x2
             cbz     w0, G_M40554_IG13
 						;; size=64 bbWeight=4 PerfScore 104.00
 G_M40554_IG15:
             mov     x0, x20
             movz    x1, #0xD1FFAB1E      // code for System.Object:GetType():System.Type:this
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
             mov     w1, #1
             movz    x2, #0xD1FFAB1E      // code for System.RuntimeType:GetCachedName(int):System.String:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            movz    x2, #0xD1FFAB1E
-            movk    x2, #0xD1FFAB1E LSL #16
-            movk    x2, #0xD1FFAB1E LSL #32
-            cmp     x0, x2
-            beq     G_M40554_IG16
-            cbz     x0, G_M40554_IG16
-            ldr     w2, [x0, #0x08]
-            cmp     w2, #46
-            bne     G_M40554_IG16
-            ldr     w2, [x0, #0x08]
-            lsl     w2, w2, #1
-            mov     w2, w2
-            movz    x1, #0xD1FFAB1E
-            movk    x1, #0xD1FFAB1E LSL #16
-            movk    x1, #0xD1FFAB1E LSL #32
-            add     x0, x0, #12
-            movz    x3, #0xD1FFAB1E      // code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
-            movk    x3, #0xD1FFAB1E LSL #16
-            movk    x3, #0xD1FFAB1E LSL #32
-            ldr     x3, [x3]
-            blr     x3
-						;; size=132 bbWeight=0.50 PerfScore 16.25
+            cbz     x0, G_M40554_IG17
+						;; size=52 bbWeight=0.50 PerfScore 6.50
 G_M40554_IG16:
+            ldr     wzr, [x0, #0x08]
+						;; size=4 bbWeight=0.25 PerfScore 0.75
+G_M40554_IG17:
             mov     x0, x20
             mov     x1, x19
             movz    x2, #0xD1FFAB1E      // code for System.Xml.XPath.XPathNavigator:CompareSiblings(System.Xml.XPath.XPathNavigator,System.Xml.XPath.XPathNavigator):int
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
 						;; size=24 bbWeight=0.50 PerfScore 2.75
-G_M40554_IG17:
+G_M40554_IG18:
             ldp     x25, x26, [sp, #0x40]
             ldp     x23, x24, [sp, #0x30]
             ldp     x21, x22, [sp, #0x20]
             ldp     x19, x20, [sp, #0x10]
             ldp     fp, lr, [sp], #0x50
             br      x2
 						;; size=24 bbWeight=0.50 PerfScore 3.00
-G_M40554_IG18:
+G_M40554_IG19:
             mov     w0, #3
 						;; size=4 bbWeight=0.50 PerfScore 0.25
-G_M40554_IG19:
+G_M40554_IG20:
             ldp     x25, x26, [sp, #0x40]
             ldp     x23, x24, [sp, #0x30]
             ldp     x21, x22, [sp, #0x20]
             ldp     x19, x20, [sp, #0x10]
             ldp     fp, lr, [sp], #0x50
             ret     lr
 						;; size=24 bbWeight=0.50 PerfScore 3.00
-G_M40554_IG20:
+G_M40554_IG21:
             mov     w0, wzr
 						;; size=4 bbWeight=0.50 PerfScore 0.25
-G_M40554_IG21:
+G_M40554_IG22:
             ldp     x25, x26, [sp, #0x40]
             ldp     x23, x24, [sp, #0x30]
             ldp     x21, x22, [sp, #0x20]
             ldp     x19, x20, [sp, #0x10]
             ldp     fp, lr, [sp], #0x50
             ret     lr
 						;; size=24 bbWeight=0.50 PerfScore 3.00
-G_M40554_IG22:
+G_M40554_IG23:
             mov     w0, #1
 						;; size=4 bbWeight=0.50 PerfScore 0.25
-G_M40554_IG23:
+G_M40554_IG24:
             ldp     x25, x26, [sp, #0x40]
             ldp     x23, x24, [sp, #0x30]
             ldp     x21, x22, [sp, #0x20]
             ldp     x19, x20, [sp, #0x10]
             ldp     fp, lr, [sp], #0x50
             ret     lr
 						;; size=24 bbWeight=0.50 PerfScore 3.00
-G_M40554_IG24:
+G_M40554_IG25:
             mov     w0, #2
 						;; size=4 bbWeight=0.50 PerfScore 0.25
-G_M40554_IG25:
+G_M40554_IG26:
             ldp     x25, x26, [sp, #0x40]
             ldp     x23, x24, [sp, #0x30]
             ldp     x21, x22, [sp, #0x20]
             ldp     x19, x20, [sp, #0x10]
             ldp     fp, lr, [sp], #0x50
             ret     lr
 						;; size=24 bbWeight=0.50 PerfScore 3.00
 
-; Total bytes of code 768, prolog size 24, PerfScore 334.12, instruction count 192, allocated bytes for code 768 (MethodHash=b6286195) for method System.Xml.XPath.XPathNavigator:ComparePosition(System.Xml.XPath.XPathNavigator):int:this (FullOpts)
+; Total bytes of code 692, prolog size 24, PerfScore 325.12, instruction count 173, allocated bytes for code 692 (MethodHash=b6286195) for method System.Xml.XPath.XPathNavigator:ComparePosition(System.Xml.XPath.XPathNavigator):int:this (FullOpts)
 ; ============================================================
-72 (-8.57 % of base) - System.Security.Cryptography.Pkcs.SignerInfo:RemoveCounterSignature(int):this
 ; Assembly listing for method System.Security.Cryptography.Pkcs.SignerInfo:RemoveCounterSignature(int):this (FullOpts)
 ; Emitting BLENDED_CODE for generic ARM64 - Unix
 ; FullOpts code
 ; optimized code
 ; fp based frame
 ; fully interruptible
 ; No PGO data
-; 0 inlinees with PGO data; 6 single block inlinees; 1 inlinees without PGO data
+; 0 inlinees with PGO data; 3 single block inlinees; 0 inlinees without PGO data
 ; Final local variable assignments
 ;
-;  V00 this         [V00,T04] (  5,  5   )     ref  ->  x20         this class-hnd single-def <System.Security.Cryptography.Pkcs.SignerInfo>
-;  V01 arg1         [V01,T03] (  5,  5.50)     int  ->  x19         single-def
-;  V02 loc0         [V02,T14] (  4,  4   )     int  ->   x0         single-def
-;  V03 loc1         [V03,T18] (  4,  3   )   byref  ->  x20         single-def
-;  V04 loc2         [V04,T13] (  6,  4   )     int  ->  x22        
-;  V05 loc3         [V05,T21] (  4,  2.50)     int  ->  x23        
-;  V06 loc4         [V06,T19] (  4,  3   )   ubyte  ->  x24        
-;  V07 loc5         [V07,T12] (  4,  5.50)     int  ->  x25        
-;  V08 loc6         [V08,T06] (  4,  6.50)     ref  ->  x21         class-hnd exact single-def <System.Security.Cryptography.Asn1.AttributeAsn[]>
-;  V09 loc7         [V09,T01] (  6, 17.50)     int  ->  x26        
+;  V00 this         [V00,T05] (  5,  5   )     ref  ->  x20         this class-hnd single-def <System.Security.Cryptography.Pkcs.SignerInfo>
+;  V01 arg1         [V01,T04] (  5,  5.50)     int  ->  x19         single-def
+;  V02 loc0         [V02,T13] (  4,  4   )     int  ->   x0         single-def
+;  V03 loc1         [V03,T16] (  4,  3   )   byref  ->   x0         single-def
+;  V04 loc2         [V04,T12] (  6,  4   )     int  ->   x2        
+;  V05 loc3         [V05,T19] (  4,  2.50)     int  ->   x3        
+;  V06 loc4         [V06,T17] (  4,  3   )   ubyte  ->   x4        
+;  V07 loc5         [V07,T11] (  4,  5.50)     int  ->   x5        
+;  V08 loc6         [V08,T07] (  4,  6.50)     ref  ->   x1         class-hnd exact single-def <System.Security.Cryptography.Asn1.AttributeAsn[]>
+;  V09 loc7         [V09,T01] (  6, 17.50)     int  ->   x6        
 ;* V10 loc8         [V10    ] (  0,  0   )  struct (16) zero-ref    <System.Security.Cryptography.Asn1.AttributeAsn>
 ;# V11 OutArgs      [V11    ] (  1,  1   )  struct ( 0) [sp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-;  V12 tmp1         [V12,T22] (  3,  0   )     ref  ->  x19         class-hnd exact single-def "NewObj constructor temp" <System.Security.Cryptography.CryptographicException>
-;  V13 tmp2         [V13,T23] (  3,  0   )     ref  ->  x19         class-hnd exact single-def "NewObj constructor temp" <System.Security.Cryptography.CryptographicException>
-;  V14 tmp3         [V14,T24] (  3,  0   )     ref  ->  x19         class-hnd exact single-def "NewObj constructor temp" <System.Security.Cryptography.CryptographicException>
-;  V15 tmp4         [V15,T25] (  3,  0   )     ref  ->  x19         class-hnd exact single-def "NewObj constructor temp" <System.ArgumentOutOfRangeException>
+;  V12 tmp1         [V12,T21] (  3,  0   )     ref  ->  x19         class-hnd exact single-def "NewObj constructor temp" <System.Security.Cryptography.CryptographicException>
+;  V13 tmp2         [V13,T22] (  3,  0   )     ref  ->  x19         class-hnd exact single-def "NewObj constructor temp" <System.Security.Cryptography.CryptographicException>
+;  V14 tmp3         [V14,T23] (  3,  0   )     ref  ->  x19         class-hnd exact single-def "NewObj constructor temp" <System.Security.Cryptography.CryptographicException>
+;  V15 tmp4         [V15,T24] (  3,  0   )     ref  ->  x19         class-hnd exact single-def "NewObj constructor temp" <System.ArgumentOutOfRangeException>
 ;* V16 tmp5         [V16    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.Security.Cryptography.Pkcs.SignerInfoCollection>
-;  V17 tmp6         [V17,T15] (  2,  4   )     ref  ->   x2         class-hnd exact single-def "Inlining Arg" <System.Security.Cryptography.Pkcs.SignedCms>
+;  V17 tmp6         [V17,T14] (  2,  4   )     ref  ->   x1         class-hnd exact single-def "Inlining Arg" <System.Security.Cryptography.Pkcs.SignedCms>
 ;* V18 tmp7         [V18    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.String>
-;  V19 tmp8         [V19,T17] (  2,  4   )   ubyte  ->   x0         "Inline return value spill temp"
-;* V20 tmp9         [V20    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.String>
-;* V21 tmp10        [V21    ] (  0,  0   )   byref  ->  zero-ref    "impAppendStmt"
-;  V22 tmp11        [V22,T02] (  5, 14   )     ref  ->   x2         "field V10.AttrType (fldOffset=0x0)" P-INDEP
-;  V23 tmp12        [V23,T07] (  3,  6.50)     ref  ->  [fp+0x18]  spill-single-def "field V10.AttrValues (fldOffset=0x8)" P-INDEP
-;  V24 tmp13        [V24,T16] (  2,  4   )     ref  ->   x0         single-def "argument with side effect"
-;  V25 tmp14        [V25,T09] (  3,  6   )     ref  ->   x2         single-def "arr expr"
-;  V26 tmp15        [V26,T00] (  3, 24   )   byref  ->   x0         "BlockOp address local"
+;* V19 tmp8         [V19    ] (  0,  0   )     ref  ->  zero-ref    "spilling varStr"
+;  V20 tmp9         [V20,T03] (  2,  8   )     int  ->   x8         "spilling unroll qmark"
+;  V21 tmp10        [V21,T02] (  6, 15   )     ref  ->   x8         "field V10.AttrType (fldOffset=0x0)" P-INDEP
+;  V22 tmp11        [V22,T08] (  3,  6.50)     ref  ->   x7         "field V10.AttrValues (fldOffset=0x8)" P-INDEP
+;  V23 tmp12        [V23,T15] (  2,  4   )     ref  ->   x0         single-def "argument with side effect"
+;  V24 tmp13        [V24,T09] (  3,  6   )     ref  ->   x1         single-def "arr expr"
+;  V25 tmp14        [V25,T00] (  3, 24   )   byref  ->   x7         "BlockOp address local"
+;  V26 tmp15        [V26,T25] (  2,  0   )     ref  ->   x1         single-def "argument with side effect"
 ;  V27 tmp16        [V27,T26] (  2,  0   )     ref  ->   x1         single-def "argument with side effect"
 ;  V28 tmp17        [V28,T27] (  2,  0   )     ref  ->   x1         single-def "argument with side effect"
 ;  V29 tmp18        [V29,T28] (  2,  0   )     ref  ->   x1         single-def "argument with side effect"
-;  V30 tmp19        [V30,T29] (  2,  0   )     ref  ->   x1         single-def "argument with side effect"
-;  V31 cse0         [V31,T10] (  3,  6   )     int  ->   x0         "CSE #06: aggressive"
-;  V32 cse1         [V32,T08] (  3,  6.25)     ref  ->  x28         hoist "CSE #03: aggressive"
-;  V33 cse2         [V33,T05] (  5,  7   )     int  ->  x27         "CSE #07: aggressive"
-;  V34 cse3         [V34,T11] (  3,  6   )     int  ->   x1         "CSE #04: moderate"
-;  V35 cse4         [V35,T20] (  3,  3   )     ref  ->  x21         "CSE #02: moderate"
+;  V30 cse0         [V30,T10] (  3,  6   )     int  ->   x8         "CSE #04: aggressive"
+;  V31 cse1         [V31,T06] (  5,  7   )     int  ->  x20         "CSE #05: aggressive"
+;  V32 cse2         [V32,T18] (  3,  3   )     ref  ->   x1         "CSE #02: moderate"
+;  V33 rat0         [V33,T20] (  3, 12   )  simd16  ->  d16         "ReplaceWithLclVar is creating a new local variable"
 ;
-; Lcl frame size = 16
+; Lcl frame size = 0
 
 G_M28540_IG01:
-            stp     fp, lr, [sp, #-0x70]!
-            stp     x19, x20, [sp, #0x20]
-            stp     x21, x22, [sp, #0x30]
-            stp     x23, x24, [sp, #0x40]
-            stp     x25, x26, [sp, #0x50]
-            stp     x27, x28, [sp, #0x60]
+            stp     fp, lr, [sp, #-0x20]!
+            stp     x19, x20, [sp, #0x10]
             mov     fp, sp
             mov     x20, x0
             mov     w19, w1
-						;; size=36 bbWeight=1 PerfScore 7.50
+						;; size=20 bbWeight=1 PerfScore 3.50
 G_M28540_IG02:
-            tbnz    w19, #31, G_M28540_IG19
+            tbnz    w19, #31, G_M28540_IG18
             ldr     x0, [x20, #0x30]
             movz    x1, #0xD1FFAB1E      // code for System.Security.Cryptography.Pkcs.SignedCms:get_SignerInfos():System.Security.Cryptography.Pkcs.SignerInfoCollection:this
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             ldr     wzr, [x0]
             blr     x1
             ldr     x0, [x0, #0x08]
             mov     x1, x20
             movz    x2, #0xD1FFAB1E      // code for System.Security.Cryptography.Pkcs.SignerInfoCollection:FindIndexForSigner(System.Security.Cryptography.Pkcs.SignerInfo[],System.Security.Cryptography.Pkcs.SignerInfo):int
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            tbnz    w0, #31, G_M28540_IG18
-            ldr     x2, [x20, #0x30]
-            ldr     x2, [x2, #0x40]
-            ldr     w1, [x2, #0x08]
-            cmp     w0, w1
-            bhs     G_M28540_IG20
-            mov     w1, #184
+            tbnz    w0, #31, G_M28540_IG17
+            ldr     x1, [x20, #0x30]
+            ldr     x1, [x1, #0x40]
+            ldr     w2, [x1, #0x08]
+            cmp     w0, w2
+            bhs     G_M28540_IG19
+            mov     w2, #184
             mov     x3, #16
-            umaddl  x0, w0, w1, x3
-            add     x20, x2, x0
-            ldr     x21, [x20]
-            cbz     x21, G_M28540_IG17
-            movn    w22, #0
-            movn    w23, #0
-            mov     w24, wzr
-            mov     w25, wzr
-            mov     w26, wzr
-            ldr     w27, [x21, #0x08]
-            cmp     w27, #0
-            ble     G_M28540_IG08
+            umaddl  x0, w0, w2, x3
+            add     x0, x1, x0
+            ldr     x1, [x0]
+            cbz     x1, G_M28540_IG16
+            movn    w2, #0
+            movn    w3, #0
+            mov     w4, wzr
+            mov     w5, wzr
+            mov     w6, wzr
+            ldr     w20, [x1, #0x08]
+            cmp     w20, #0
+            ble     G_M28540_IG07
+            align   [0 bytes for IG03]
+            align   [0 bytes]
+            align   [0 bytes]
+            align   [0 bytes]
 						;; size=140 bbWeight=1 PerfScore 50.50
 G_M28540_IG03:
-            movz    x28, #0xD1FFAB1E
-            movk    x28, #0xD1FFAB1E LSL #16
-            movk    x28, #0xD1FFAB1E LSL #32
-						;; size=12 bbWeight=0.25 PerfScore 0.38
+            ubfiz   x7, x6, #4, #32
+            add     x7, x7, #16
+            add     x7, x1, x7
+            ldp     x8, x7, [x7]
+            cbz     x8, G_M28540_IG06
+						;; size=20 bbWeight=4 PerfScore 28.00
 G_M28540_IG04:
-            ubfiz   x0, x26, #4, #32
-            add     x0, x0, #16
-            add     x0, x21, x0
-            ldp     x2, x3, [x0]
-            str     x3, [fp, #0x18]	// [V23 tmp12]
-            cmp     x2, x28
-            beq     G_M28540_IG06
-						;; size=28 bbWeight=4 PerfScore 34.00
+            ldr     w9, [x8, #0x08]
+            cmp     w9, #20
+            bne     G_M28540_IG06
+						;; size=12 bbWeight=1 PerfScore 4.50
 G_M28540_IG05:
-            cbz     x2, G_M28540_IG07
-            ldr     w1, [x2, #0x08]
-            cmp     w1, #20
-            bne     G_M28540_IG07
-            add     x0, x2, #12
-            lsl     w2, w1, #1
-            mov     w2, w2
-            add     x1, x28, #12
-            movz    x4, #0xD1FFAB1E      // code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
-            movk    x4, #0xD1FFAB1E LSL #16
-            movk    x4, #0xD1FFAB1E LSL #32
-            ldr     x4, [x4]
-            blr     x4
-            cbz     w0, G_M28540_IG07
-						;; size=56 bbWeight=2 PerfScore 29.00
+            ldr     q16, [x8, #0x0C]
+            ldr     q17, [x8, #0x1C]
+            ldr     q18, [@RWD00]
+            eor     v16.2d, v16.2d, v18.2d
+            ldr     q18, [@RWD16]
+            eor     v17.2d, v17.2d, v18.2d
+            orr     v16.2d, v16.2d, v17.2d
+            ldr     q17, [x8, #0x24]
+            ldr     q18, [@RWD32]
+            eor     v17.2d, v17.2d, v18.2d
+            orr     v16.2d, v16.2d, v17.2d
+            umaxp   v16.4s, v16.4s, v16.4s
+            umov    x8, v16.d[0]
+            cmp     x8, #0
+            cset    x8, eq
+            cbz     w8, G_M28540_IG06
+            ldr     w8, [x7, #0x08]
+            add     w8, w8, w5
+            cmp     w19, w8
+            blt     G_M28540_IG10
+            sxtw    w5, w8
+						;; size=84 bbWeight=2 PerfScore 54.00
 G_M28540_IG06:
-            ldr     x3, [fp, #0x18]	// [V23 tmp12]
-            ldr     w0, [x3, #0x08]
-            add     w0, w0, w25
-            cmp     w19, w0
-            blt     G_M28540_IG11
-            sxtw    w25, w0
-						;; size=24 bbWeight=2 PerfScore 15.00
-G_M28540_IG07:
-            add     w26, w26, #1
-            cmp     w27, w26
-            bgt     G_M28540_IG04
+            add     w6, w6, #1
+            cmp     w20, w6
+            bgt     G_M28540_IG03
 						;; size=12 bbWeight=4 PerfScore 8.00
-G_M28540_IG08:
-            tbnz    w22, #31, G_M28540_IG16
-            cbz     w24, G_M28540_IG12
+G_M28540_IG07:
+            tbnz    w2, #31, G_M28540_IG15
+            cbz     w4, G_M28540_IG11
 						;; size=8 bbWeight=1 PerfScore 2.00
-G_M28540_IG09:
-            cmp     w27, #1
-            bne     G_M28540_IG14
-            str     xzr, [x20]
+G_M28540_IG08:
+            cmp     w20, #1
+            bne     G_M28540_IG13
+            str     xzr, [x0]
 						;; size=12 bbWeight=0.50 PerfScore 1.25
-G_M28540_IG10:
-            ldp     x27, x28, [sp, #0x60]
-            ldp     x25, x26, [sp, #0x50]
-            ldp     x23, x24, [sp, #0x40]
-            ldp     x21, x22, [sp, #0x30]
-            ldp     x19, x20, [sp, #0x20]
-            ldp     fp, lr, [sp], #0x70
+G_M28540_IG09:
+            ldp     x19, x20, [sp, #0x10]
+            ldp     fp, lr, [sp], #0x20
             ret     lr
-						;; size=28 bbWeight=0.50 PerfScore 3.50
-G_M28540_IG11:
-            sxtw    w22, w26
-            sub     w23, w19, w25
-            cbnz    w23, G_M28540_IG08
-            ldr     w0, [x3, #0x08]
-            mov     w1, #1
-            cmp     w0, #1
-            csel    w24, w24, w1, ne
-            b       G_M28540_IG08
+						;; size=12 bbWeight=0.50 PerfScore 1.50
+G_M28540_IG10:
+            sxtw    w2, w6
+            sub     w3, w19, w5
+            cbnz    w3, G_M28540_IG07
+            ldr     w5, [x7, #0x08]
+            mov     w6, #1
+            cmp     w5, #1
+            csel    w4, w4, w6, ne
+            b       G_M28540_IG07
 						;; size=32 bbWeight=0.50 PerfScore 3.75
-G_M28540_IG12:
-            cmp     w22, w27
-            bhs     G_M28540_IG20
-            ubfiz   x0, x22, #4, #32
+G_M28540_IG11:
+            cmp     w2, w20
+            bhs     G_M28540_IG19
+            ubfiz   x0, x2, #4, #32
             add     x0, x0, #16
-            add     x0, x21, x0
+            add     x0, x1, x0
             add     x0, x0, #8
-            mov     w1, w23
+            mov     w1, w3
             movz    x2, #0xD1FFAB1E      // code for Internal.Cryptography.PkcsHelpers:RemoveAt[System.ReadOnlyMemory`1[ubyte]](byref,int)
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
 						;; size=44 bbWeight=0.50 PerfScore 4.50
-G_M28540_IG13:
-            ldp     x27, x28, [sp, #0x60]
-            ldp     x25, x26, [sp, #0x50]
-            ldp     x23, x24, [sp, #0x40]
-            ldp     x21, x22, [sp, #0x30]
-            ldp     x19, x20, [sp, #0x20]
-            ldp     fp, lr, [sp], #0x70
+G_M28540_IG12:
+            ldp     x19, x20, [sp, #0x10]
+            ldp     fp, lr, [sp], #0x20
             br      x2
-						;; size=28 bbWeight=0.50 PerfScore 3.50
-G_M28540_IG14:
-            mov     x0, x20
-            mov     w1, w22
+						;; size=12 bbWeight=0.50 PerfScore 1.50
+G_M28540_IG13:
+            mov     w1, w2
             movz    x2, #0xD1FFAB1E      // code for Internal.Cryptography.PkcsHelpers:RemoveAt[System.Security.Cryptography.Asn1.AttributeAsn](byref,int)
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
-						;; size=24 bbWeight=0.50 PerfScore 2.75
-G_M28540_IG15:
-            ldp     x27, x28, [sp, #0x60]
-            ldp     x25, x26, [sp, #0x50]
-            ldp     x23, x24, [sp, #0x40]
-            ldp     x21, x22, [sp, #0x30]
-            ldp     x19, x20, [sp, #0x20]
-            ldp     fp, lr, [sp], #0x70
+						;; size=20 bbWeight=0.50 PerfScore 2.50
+G_M28540_IG14:
+            ldp     x19, x20, [sp, #0x10]
+            ldp     fp, lr, [sp], #0x20
             br      x2
-						;; size=28 bbWeight=0.50 PerfScore 3.50
+						;; size=12 bbWeight=0.50 PerfScore 1.50
+G_M28540_IG15:
+            movz    x0, #0xD1FFAB1E
+            movk    x0, #0xD1FFAB1E LSL #16
+            movk    x0, #0xD1FFAB1E LSL #32
+            bl      CORINFO_HELP_NEWSFAST
+            mov     x19, x0
+            movz    x0, #0xD1FFAB1E      // code for System.SR:get_Cryptography_Cms_NoSignerAtIndex():System.String
+            movk    x0, #0xD1FFAB1E LSL #16
+            movk    x0, #0xD1FFAB1E LSL #32
+            ldr     x0, [x0]
+            blr     x0
+            mov     x1, x0
+            mov     x0, x19
+            movz    x2, #0xD1FFAB1E      // code for System.Security.Cryptography.CryptographicException:.ctor(System.String):this
+            movk    x2, #0xD1FFAB1E LSL #16
+            movk    x2, #0xD1FFAB1E LSL #32
+            ldr     x2, [x2]
+            blr     x2
+            mov     x0, x19
+            bl      CORINFO_HELP_THROW
+            brk     #0
+						;; size=80 bbWeight=0 PerfScore 0.00
 G_M28540_IG16:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x19, x0
             movz    x0, #0xD1FFAB1E      // code for System.SR:get_Cryptography_Cms_NoSignerAtIndex():System.String
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             ldr     x0, [x0]
             blr     x0
             mov     x1, x0
             mov     x0, x19
             movz    x2, #0xD1FFAB1E      // code for System.Security.Cryptography.CryptographicException:.ctor(System.String):this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             mov     x0, x19
             bl      CORINFO_HELP_THROW
             brk     #0
 						;; size=80 bbWeight=0 PerfScore 0.00
 G_M28540_IG17:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x19, x0
-            movz    x0, #0xD1FFAB1E      // code for System.SR:get_Cryptography_Cms_NoSignerAtIndex():System.String
+            movz    x0, #0xD1FFAB1E      // code for System.SR:get_Cryptography_Cms_SignerNotFound():System.String
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             ldr     x0, [x0]
             blr     x0
             mov     x1, x0
             mov     x0, x19
             movz    x2, #0xD1FFAB1E      // code for System.Security.Cryptography.CryptographicException:.ctor(System.String):this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             mov     x0, x19
             bl      CORINFO_HELP_THROW
             brk     #0
 						;; size=80 bbWeight=0 PerfScore 0.00
 G_M28540_IG18:
-            movz    x0, #0xD1FFAB1E
-            movk    x0, #0xD1FFAB1E LSL #16
-            movk    x0, #0xD1FFAB1E LSL #32
-            bl      CORINFO_HELP_NEWSFAST
-            mov     x19, x0
-            movz    x0, #0xD1FFAB1E      // code for System.SR:get_Cryptography_Cms_SignerNotFound():System.String
-            movk    x0, #0xD1FFAB1E LSL #16
-            movk    x0, #0xD1FFAB1E LSL #32
-            ldr     x0, [x0]
-            blr     x0
-            mov     x1, x0
-            mov     x0, x19
-            movz    x2, #0xD1FFAB1E      // code for System.Security.Cryptography.CryptographicException:.ctor(System.String):this
-            movk    x2, #0xD1FFAB1E LSL #16
-            movk    x2, #0xD1FFAB1E LSL #32
-            ldr     x2, [x2]
-            blr     x2
-            mov     x0, x19
-            bl      CORINFO_HELP_THROW
-            brk     #0
-						;; size=80 bbWeight=0 PerfScore 0.00
-G_M28540_IG19:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x19, x0
             mov     w0, #0xD1FFAB1E
             movz    x1, #0xD1FFAB1E
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_STRCNS
             mov     x1, x0
             mov     x0, x19
             movz    x2, #0xD1FFAB1E      // code for System.ArgumentOutOfRangeException:.ctor(System.String):this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             mov     x0, x19
             bl      CORINFO_HELP_THROW
             brk     #0
 						;; size=80 bbWeight=0 PerfScore 0.00
-G_M28540_IG20:
+G_M28540_IG19:
             bl      CORINFO_HELP_RNGCHKFAIL
             brk     #0
 						;; size=8 bbWeight=0 PerfScore 0.00
+RWD00  	dq	002E0032002E0031h, 002E003000340038h
+RWD16  	dq	0035003300310031h, 0031002E00390034h
+RWD32  	dq	0031002E00390034h, 0036002E0039002Eh
 
-; Total bytes of code 840, prolog size 36, PerfScore 169.12, instruction count 210, allocated bytes for code 840 (MethodHash=e20b9083) for method System.Security.Cryptography.Pkcs.SignerInfo:RemoveCounterSignature(int):this (FullOpts)
+
+; Total bytes of code 768, prolog size 20, PerfScore 167.00, instruction count 196, allocated bytes for code 768 (MethodHash=e20b9083) for method System.Security.Cryptography.Pkcs.SignerInfo:RemoveCounterSignature(int):this (FullOpts)
 ; ============================================================
-36 (-15.79 % of base) - System.Configuration.ClientConfigurationSystem:IsSectionUsedInInit(System.String):ubyte:this
 ; Assembly listing for method System.Configuration.ClientConfigurationSystem:IsSectionUsedInInit(System.String):ubyte:this (FullOpts)
 ; Emitting BLENDED_CODE for generic ARM64 - Unix
 ; FullOpts code
 ; optimized code
 ; fp based frame
 ; partially interruptible
 ; No PGO data
-; 0 inlinees with PGO data; 4 single block inlinees; 1 inlinees without PGO data
+; 0 inlinees with PGO data; 1 single block inlinees; 0 inlinees without PGO data
 ; Final local variable assignments
 ;
-;  V00 this         [V00,T01] (  3,  2.50)     ref  ->  x20         this class-hnd single-def <System.Configuration.ClientConfigurationSystem>
-;  V01 arg1         [V01,T00] (  9,  5.50)     ref  ->  x19         class-hnd single-def <System.String>
+;  V00 this         [V00,T01] (  3,  2.50)     ref  ->   x0         this class-hnd single-def <System.Configuration.ClientConfigurationSystem>
+;  V01 arg1         [V01,T00] ( 10,  5.75)     ref  ->   x1         class-hnd single-def <System.String>
 ;# V02 OutArgs      [V02    ] (  1,  1   )  struct ( 0) [sp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
 ;* V03 tmp1         [V03    ] (  0,  0   )     ref  ->  zero-ref    single-def "spilling varStr"
-;  V04 tmp2         [V04,T04] (  3,  2   )     int  ->   x0         "spilling unroll qmark"
-;  V05 tmp3         [V05,T05] (  2,  1   )   ubyte  ->   x0         "Inline return value spill temp"
-;* V06 tmp4         [V06    ] (  0,  0   )   byref  ->  zero-ref    "impAppendStmt"
-;  V07 cse0         [V07,T02] (  5,  2.50)     int  ->  x21         multi-def "CSE #01: aggressive"
-;  V08 cse1         [V08,T03] (  3,  2.50)     ref  ->   x1         "CSE #02: aggressive"
-;  V09 rat0         [V09,T06] (  3,  1.50)  simd16  ->  d16         "ReplaceWithLclVar is creating a new local variable"
+;  V04 tmp2         [V04,T02] (  3,  2   )     int  ->   x0         "spilling unroll qmark"
+;* V05 tmp3         [V05    ] (  0,  0   )     ref  ->  zero-ref    single-def "spilling varStr"
+;  V06 tmp4         [V06,T03] (  2,  2   )     int  ->   x2         "spilling unroll qmark"
+;  V07 rat0         [V07,T04] (  3,  3   )  simd16  ->  d16         "ReplaceWithLclVar is creating a new local variable"
+;  V08 rat1         [V08,T05] (  3,  1.50)  simd16  ->  d16         "ReplaceWithLclVar is creating a new local variable"
 ;
-; Lcl frame size = 8
+; Lcl frame size = 0
 
 G_M6934_IG01:
-            stp     fp, lr, [sp, #-0x30]!
-            stp     x19, x20, [sp, #0x18]
-            str     x21, [sp, #0x28]
+            stp     fp, lr, [sp, #-0x10]!
             mov     fp, sp
-            mov     x20, x0
-            mov     x19, x1
-						;; size=24 bbWeight=1 PerfScore 4.50
+						;; size=8 bbWeight=1 PerfScore 1.50
 G_M6934_IG02:
-            movz    x1, #0xD1FFAB1E
-            movk    x1, #0xD1FFAB1E LSL #16
-            movk    x1, #0xD1FFAB1E LSL #32
-            cmp     x19, x1
-            beq     G_M6934_IG04
-						;; size=20 bbWeight=1 PerfScore 3.00
+            cbz     x1, G_M6934_IG06
+						;; size=4 bbWeight=1 PerfScore 1.00
 G_M6934_IG03:
-            cbz     x19, G_M6934_IG06
-            ldr     w21, [x19, #0x08]
-            cmp     w21, #18
+            ldr     w2, [x1, #0x08]
+            cmp     w2, #18
             bne     G_M6934_IG06
-            add     x0, x19, #12
-            lsl     w2, w21, #1
-            mov     w2, w2
-            add     x1, x1, #12
-            movz    x3, #0xD1FFAB1E      // code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
-            movk    x3, #0xD1FFAB1E LSL #16
-            movk    x3, #0xD1FFAB1E LSL #32
-            ldr     x3, [x3]
-            blr     x3
-            cbz     w0, G_M6934_IG06
-						;; size=56 bbWeight=0.50 PerfScore 7.25
+						;; size=12 bbWeight=0.25 PerfScore 1.12
 G_M6934_IG04:
+            ldr     q16, [x1, #0x0C]
+            ldr     q17, [x1, #0x1C]
+            ldr     q18, [@RWD00]
+            eor     v16.2d, v16.2d, v18.2d
+            ldr     q18, [@RWD16]
+            eor     v17.2d, v17.2d, v18.2d
+            orr     v16.2d, v16.2d, v17.2d
+            ldr     q17, [x1, #0x20]
+            ldr     q18, [@RWD32]
+            eor     v17.2d, v17.2d, v18.2d
+            orr     v16.2d, v16.2d, v17.2d
+            umaxp   v16.4s, v16.4s, v16.4s
+            umov    x2, v16.d[0]
+            cmp     x2, #0
+            cset    x2, eq
+            cbz     w2, G_M6934_IG06
             mov     w0, #1
-						;; size=4 bbWeight=0.50 PerfScore 0.25
+						;; size=68 bbWeight=0.50 PerfScore 11.00
 G_M6934_IG05:
-            ldr     x21, [sp, #0x28]
-            ldp     x19, x20, [sp, #0x18]
-            ldp     fp, lr, [sp], #0x30
+            ldp     fp, lr, [sp], #0x10
             ret     lr
-						;; size=16 bbWeight=0.50 PerfScore 2.50
+						;; size=8 bbWeight=0.50 PerfScore 1.00
 G_M6934_IG06:
-            ldrb    w0, [x20, #0x30]
+            ldrb    w0, [x0, #0x30]
             cbnz    w0, G_M6934_IG08
             mov     w0, wzr
 						;; size=12 bbWeight=0.50 PerfScore 2.25
 G_M6934_IG07:
-            ldr     x21, [sp, #0x28]
-            ldp     x19, x20, [sp, #0x18]
-            ldp     fp, lr, [sp], #0x30
+            ldp     fp, lr, [sp], #0x10
             ret     lr
-						;; size=16 bbWeight=0.50 PerfScore 2.50
+						;; size=8 bbWeight=0.50 PerfScore 1.00
 G_M6934_IG08:
-            ldr     w21, [x19, #0x08]
-            cmp     w21, #11
+            ldr     w0, [x1, #0x08]
+            cmp     w0, #11
             bge     G_M6934_IG10
 						;; size=12 bbWeight=0.50 PerfScore 2.25
 G_M6934_IG09:
             mov     w0, wzr
             b       G_M6934_IG11
 						;; size=8 bbWeight=0.25 PerfScore 0.38
 G_M6934_IG10:
-            ldr     q16, [x19, #0x0C]
-            ldr     q17, [@RWD00]
+            ldr     q16, [x1, #0x0C]
+            ldr     q17, [@RWD48]
             eor     v16.2d, v16.2d, v17.2d
-            ldr     q17, [x19, #0x12]
-            ldr     q18, [@RWD16]
+            ldr     q17, [x1, #0x12]
+            ldr     q18, [@RWD64]
             eor     v17.2d, v17.2d, v18.2d
             orr     v16.2d, v16.2d, v17.2d
             umaxp   v16.4s, v16.4s, v16.4s
             umov    x0, v16.d[0]
             cmp     x0, #0
             cset    x0, eq
 						;; size=44 bbWeight=0.25 PerfScore 3.62
 G_M6934_IG11:
-            ldr     x21, [sp, #0x28]
-            ldp     x19, x20, [sp, #0x18]
-            ldp     fp, lr, [sp], #0x30
+            ldp     fp, lr, [sp], #0x10
             ret     lr
-						;; size=16 bbWeight=0.50 PerfScore 2.50
-RWD00  	dq	0074007300790073h, 006E002E006D0065h
-RWD16  	dq	002E006D00650074h, 002F00740065006Eh
+						;; size=8 bbWeight=0.50 PerfScore 1.00
+RWD00  	dq	0074007300790073h, 0064002E006D0065h
+RWD16  	dq	006E006700610069h, 006900740073006Fh
+RWD32  	dq	0073006F006E0067h, 0073006300690074h
+RWD48  	dq	0074007300790073h, 006E002E006D0065h
+RWD64  	dq	002E006D00650074h, 002F00740065006Eh
 
 
-; Total bytes of code 228, prolog size 16, PerfScore 31.00, instruction count 57, allocated bytes for code 228 (MethodHash=0d81e4e9) for method System.Configuration.ClientConfigurationSystem:IsSectionUsedInInit(System.String):ubyte:this (FullOpts)
+; Total bytes of code 192, prolog size 8, PerfScore 26.12, instruction count 48, allocated bytes for code 192 (MethodHash=0d81e4e9) for method System.Configuration.ClientConfigurationSystem:IsSectionUsedInInit(System.String):ubyte:this (FullOpts)
 ; ============================================================
-36 (-7.03 % of base) - System.Security.Cryptography.X509Certificates.X509Certificate2:get_PrivateKey():System.Security.Cryptography.AsymmetricAlgorithm:this
 ; Assembly listing for method System.Security.Cryptography.X509Certificates.X509Certificate2:get_PrivateKey():System.Security.Cryptography.AsymmetricAlgorithm:this (FullOpts)
 ; Emitting BLENDED_CODE for generic ARM64 - Unix
 ; FullOpts code
 ; optimized code
 ; fp based frame
 ; partially interruptible
 ; No PGO data
-; 0 inlinees with PGO data; 12 single block inlinees; 2 inlinees without PGO data
+; 0 inlinees with PGO data; 6 single block inlinees; 0 inlinees without PGO data
 ; Final local variable assignments
 ;
 ;  V00 this         [V00,T00] (  9,  6.50)     ref  ->  x19         this class-hnd single-def <System.Security.Cryptography.X509Certificates.X509Certificate2>
-;  V01 loc0         [V01,T06] (  3,  1.50)     ref  ->  x15         class-hnd <System.Security.Cryptography.AsymmetricAlgorithm>
-;  V02 loc1         [V02,T01] (  9,  4.50)     ref  ->  x21         class-hnd exact single-def <System.String>
+;  V01 loc0         [V01,T08] (  3,  1.50)     ref  ->  x15         class-hnd <System.Security.Cryptography.AsymmetricAlgorithm>
+;  V02 loc1         [V02,T01] ( 11,  5   )     ref  ->   x0         class-hnd exact single-def <System.String>
 ;# V03 OutArgs      [V03    ] (  1,  1   )  struct ( 0) [sp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
 ;  V04 tmp1         [V04,T11] (  3,  0   )     ref  ->  x19         class-hnd exact single-def "NewObj constructor temp" <System.NotSupportedException>
-;  V05 tmp2         [V05,T09] (  2,  1   )   ubyte  ->   x0         "Inline return value spill temp"
-;* V06 tmp3         [V06    ] (  0,  0   )   byref  ->  zero-ref    "impAppendStmt"
-;  V07 tmp4         [V07,T10] (  2,  1   )   ubyte  ->   x0         "Inline return value spill temp"
-;* V08 tmp5         [V08    ] (  0,  0   )   byref  ->  zero-ref    "impAppendStmt"
+;* V05 tmp2         [V05    ] (  0,  0   )     ref  ->  zero-ref    single-def "spilling varStr"
+;  V06 tmp3         [V06,T06] (  2,  2   )     int  ->   x1         "spilling unroll qmark"
+;* V07 tmp4         [V07    ] (  0,  0   )     ref  ->  zero-ref    single-def "spilling varStr"
+;  V08 tmp5         [V08,T07] (  2,  2   )     int  ->   x0         "spilling unroll qmark"
 ;  V09 tmp6         [V09,T04] (  2,  2   )     ref  ->   x0         single-def "argument with side effect"
 ;  V10 tmp7         [V10,T05] (  2,  2   )     ref  ->   x0         single-def "argument with side effect"
 ;  V11 tmp8         [V11,T12] (  2,  0   )     ref  ->   x1         single-def "argument with side effect"
-;  V12 cse0         [V12,T03] (  4,  2   )   byref  ->  x20         "CSE #08: aggressive"
-;  V13 cse1         [V13,T02] (  6,  3   )     int  ->  x22         multi-def "CSE #01: aggressive"
-;  V14 cse2         [V14,T07] (  3,  1.50)     ref  ->   x1         "CSE #02: moderate"
-;  V15 cse3         [V15,T08] (  3,  1.50)     ref  ->   x1         "CSE #05: moderate"
+;  V12 cse0         [V12,T02] (  4,  2   )     ref  ->   x0         multi-def "CSE #06: aggressive"
+;  V13 cse1         [V13,T03] (  4,  2   )   byref  ->  x20         "CSE #08: aggressive"
+;  V14 rat0         [V14,T09] (  3,  3   )  simd16  ->  d16         "ReplaceWithLclVar is creating a new local variable"
+;  V15 rat1         [V15,T10] (  3,  3   )  simd16  ->  d16         "ReplaceWithLclVar is creating a new local variable"
 ;
 ; Lcl frame size = 0
 
 G_M27222_IG01:
-            stp     fp, lr, [sp, #-0x30]!
+            stp     fp, lr, [sp, #-0x20]!
             stp     x19, x20, [sp, #0x10]
-            stp     x21, x22, [sp, #0x20]
             mov     fp, sp
             mov     x19, x0
-						;; size=20 bbWeight=1 PerfScore 4.00
+						;; size=16 bbWeight=1 PerfScore 3.00
 G_M27222_IG02:
             mov     x0, x19
             movz    x1, #0xD1FFAB1E      // code for System.Security.Cryptography.X509Certificates.X509Certificate:ThrowIfInvalid():this
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
             mov     x0, x19
             movz    x1, #0xD1FFAB1E      // code for System.Security.Cryptography.X509Certificates.X509Certificate2:get_HasPrivateKey():ubyte:this
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
-            cbz     w0, G_M27222_IG10
+            cbz     w0, G_M27222_IG13
 						;; size=52 bbWeight=1 PerfScore 13.00
 G_M27222_IG03:
             add     x20, x19, #128
             ldapr   x0, [x20]
-            cbnz    x0, G_M27222_IG08
+            cbnz    x0, G_M27222_IG11
             mov     x0, x19
             ldr     x1, [x19]
             ldr     x1, [x1, #0x58]
             ldr     x1, [x1]
             blr     x1
-            mov     x21, x0
-            movz    x1, #0xD1FFAB1E
-            movk    x1, #0xD1FFAB1E LSL #16
-            movk    x1, #0xD1FFAB1E LSL #32
-            cmp     x21, x1
-            beq     G_M27222_IG04
-            cbz     x21, G_M27222_IG05
-            ldr     w22, [x21, #0x08]
-            cmp     w22, #20
-            bne     G_M27222_IG05
-            lsl     w2, w22, #1
-            mov     w2, w2
-            add     x1, x1, #12
-            add     x0, x21, #12
-            movz    x3, #0xD1FFAB1E      // code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
-            movk    x3, #0xD1FFAB1E LSL #16
-            movk    x3, #0xD1FFAB1E LSL #32
-            ldr     x3, [x3]
-            blr     x3
-            cbz     w0, G_M27222_IG05
-						;; size=112 bbWeight=0.50 PerfScore 16.50
+            cbz     x0, G_M27222_IG05
+						;; size=36 bbWeight=0.50 PerfScore 8.00
 G_M27222_IG04:
+            ldr     w1, [x0, #0x08]
+            cmp     w1, #20
+            beq     G_M27222_IG08
+						;; size=12 bbWeight=0.25 PerfScore 1.12
+G_M27222_IG05:
+            cbz     x0, G_M27222_IG15
+						;; size=4 bbWeight=0.50 PerfScore 0.50
+G_M27222_IG06:
+            ldr     w11, [x0, #0x08]
+            cmp     w11, #17
+            bne     G_M27222_IG15
+						;; size=12 bbWeight=0.25 PerfScore 1.12
+G_M27222_IG07:
+            ldr     q16, [x0, #0x0C]
+            ldr     q17, [x0, #0x1C]
+            ldr     q18, [@RWD00]
+            eor     v16.2d, v16.2d, v18.2d
+            ldr     q18, [@RWD16]
+            eor     v17.2d, v17.2d, v18.2d
+            orr     v16.2d, v16.2d, v17.2d
+            ldr     q17, [x0, #0x1E]
+            ldr     q18, [@RWD32]
+            eor     v17.2d, v17.2d, v18.2d
+            orr     v16.2d, v16.2d, v17.2d
+            umaxp   v16.4s, v16.4s, v16.4s
+            umov    x0, v16.d[0]
+            cmp     x0, #0
+            cset    x0, eq
+            cbnz    w0, G_M27222_IG09
+            b       G_M27222_IG15
+						;; size=68 bbWeight=0.50 PerfScore 11.25
+G_M27222_IG08:
+            ldr     q16, [x0, #0x0C]
+            ldr     q17, [x0, #0x1C]
+            ldr     q18, [@RWD00]
+            eor     v16.2d, v16.2d, v18.2d
+            ldr     q18, [@RWD48]
+            eor     v17.2d, v17.2d, v18.2d
+            orr     v16.2d, v16.2d, v17.2d
+            ldr     q17, [x0, #0x24]
+            ldr     q18, [@RWD64]
+            eor     v17.2d, v17.2d, v18.2d
+            orr     v16.2d, v16.2d, v17.2d
+            umaxp   v16.4s, v16.4s, v16.4s
+            umov    x1, v16.d[0]
+            cmp     x1, #0
+            cset    x1, eq
+            cbz     w1, G_M27222_IG06
             ldr     x1, [x19, #0x48]
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             movz    x2, #0xD1FFAB1E      // code for CORINFO_HELP_CHKCASTINTERFACE
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             movz    x11, #0xD1FFAB1E      // code for System.Security.Cryptography.X509Certificates.ICertificatePal:GetRSAPrivateKey():System.Security.Cryptography.RSA:this
             movk    x11, #0xD1FFAB1E LSL #16
             movk    x11, #0xD1FFAB1E LSL #32
             ldr     xip0, [x11]
             blr     xip0
             mov     x15, x0
-            b       G_M27222_IG07
-						;; size=64 bbWeight=0.50 PerfScore 8.50
-G_M27222_IG05:
-            movz    x1, #0xD1FFAB1E
-            movk    x1, #0xD1FFAB1E LSL #16
-            movk    x1, #0xD1FFAB1E LSL #32
-            cmp     x21, x1
-            beq     G_M27222_IG06
-            cbz     x21, G_M27222_IG12
-            ldr     w22, [x21, #0x08]
-            cmp     w22, #17
-            bne     G_M27222_IG12
-            lsl     w2, w22, #1
-            mov     w2, w2
-            add     x1, x1, #12
-            add     x0, x21, #12
-            movz    x3, #0xD1FFAB1E      // code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
-            movk    x3, #0xD1FFAB1E LSL #16
-            movk    x3, #0xD1FFAB1E LSL #32
-            ldr     x3, [x3]
-            blr     x3
-            cbz     w0, G_M27222_IG12
-						;; size=76 bbWeight=0.50 PerfScore 8.75
-G_M27222_IG06:
-            ldr     x1, [x19, #0x48]
-            movz    x0, #0xD1FFAB1E
-            movk    x0, #0xD1FFAB1E LSL #16
-            movk    x0, #0xD1FFAB1E LSL #32
-            movz    x2, #0xD1FFAB1E      // code for CORINFO_HELP_CHKCASTINTERFACE
-            movk    x2, #0xD1FFAB1E LSL #16
-            movk    x2, #0xD1FFAB1E LSL #32
-            ldr     x2, [x2]
-            blr     x2
+            b       G_M27222_IG10
+						;; size=128 bbWeight=0.50 PerfScore 19.25
+G_M27222_IG09:
+            ldr     x0, [x19, #0x48]
             movz    x11, #0xD1FFAB1E      // code for System.Security.Cryptography.X509Certificates.ICertificatePal:GetDSAPrivateKey():System.Security.Cryptography.DSA:this
             movk    x11, #0xD1FFAB1E LSL #16
             movk    x11, #0xD1FFAB1E LSL #32
             ldr     xip0, [x11]
             blr     xip0
             mov     x15, x0
-						;; size=60 bbWeight=0.50 PerfScore 8.00
-G_M27222_IG07:
+						;; size=28 bbWeight=0.50 PerfScore 4.50
+G_M27222_IG10:
             mov     x14, x20
             bl      CORINFO_HELP_ASSIGN_REF
 						;; size=8 bbWeight=0.50 PerfScore 0.75
-G_M27222_IG08:
+G_M27222_IG11:
             ldapr   x0, [x20]
 						;; size=4 bbWeight=0.50 PerfScore 1.50
-G_M27222_IG09:
-            ldp     x21, x22, [sp, #0x20]
+G_M27222_IG12:
             ldp     x19, x20, [sp, #0x10]
-            ldp     fp, lr, [sp], #0x30
+            ldp     fp, lr, [sp], #0x20
             ret     lr
-						;; size=16 bbWeight=0.50 PerfScore 2.00
-G_M27222_IG10:
+						;; size=12 bbWeight=0.50 PerfScore 1.50
+G_M27222_IG13:
             mov     x0, xzr
 						;; size=4 bbWeight=0.50 PerfScore 0.25
-G_M27222_IG11:
-            ldp     x21, x22, [sp, #0x20]
+G_M27222_IG14:
             ldp     x19, x20, [sp, #0x10]
-            ldp     fp, lr, [sp], #0x30
+            ldp     fp, lr, [sp], #0x20
             ret     lr
-						;; size=16 bbWeight=0.50 PerfScore 2.00
-G_M27222_IG12:
+						;; size=12 bbWeight=0.50 PerfScore 1.50
+G_M27222_IG15:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x19, x0
             movz    x0, #0xD1FFAB1E      // code for System.SR:get_NotSupported_KeyAlgorithm():System.String
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             ldr     x0, [x0]
             blr     x0
             mov     x1, x0
             mov     x0, x19
             movz    x2, #0xD1FFAB1E      // code for System.NotSupportedException:.ctor(System.String):this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             mov     x0, x19
             bl      CORINFO_HELP_THROW
             brk     #0
 						;; size=80 bbWeight=0 PerfScore 0.00
+RWD00  	dq	002E0032002E0031h, 002E003000340038h
+RWD16  	dq	0034003000300031h, 002E0034002E0030h
+RWD32  	dq	0030003400300030h, 0031002E0034002Eh
+RWD48  	dq	0035003300310031h, 0031002E00390034h
+RWD64  	dq	0031002E00390034h, 0031002E0031002Eh
 
-; Total bytes of code 512, prolog size 16, PerfScore 65.25, instruction count 128, allocated bytes for code 512 (MethodHash=92fc95a9) for method System.Security.Cryptography.X509Certificates.X509Certificate2:get_PrivateKey():System.Security.Cryptography.AsymmetricAlgorithm:this (FullOpts)
+
+; Total bytes of code 476, prolog size 12, PerfScore 67.25, instruction count 119, allocated bytes for code 476 (MethodHash=92fc95a9) for method System.Security.Cryptography.X509Certificates.X509Certificate2:get_PrivateKey():System.Security.Cryptography.AsymmetricAlgorithm:this (FullOpts)
 ; ============================================================

Note: some changes were skipped as they were too large to fit into a comment.

Larger list of diffs: https://gist.github.com/MihuBot/0860e11beb422aa0557d87ca80b0523b

@MihuBot
Copy link
Owner Author

MihuBot commented Oct 20, 2024

@EgorBo

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant