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 X64] [MichalPetryka] Remove ldsfld quirk #735

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

[JitDiff X64] [MichalPetryka] Remove ldsfld quirk #735

MihuBot opened this issue Oct 17, 2024 · 3 comments

Comments

@MihuBot
Copy link
Owner

MihuBot commented Oct 17, 2024

Job completed in 19 minutes 9 seconds.
dotnet/runtime#108606

Diffs

Diffs
Found 351 files with textual diffs.

Summary of Code Size diffs:
(Lower is better)

Total bytes of base: 39400921
Total bytes of diff: 39391324
Total bytes of delta: -9597 (-0.02 % of base)
Total relative delta: -19.21
    diff is an improvement.
    relative diff is an improvement.


Top file regressions (bytes):
         286 : System.Net.WebSockets.dasm (0.19 % of base)
          88 : System.Linq.Parallel.dasm (0.00 % of base)
          74 : System.Net.Security.dasm (0.03 % of base)
          20 : Microsoft.Extensions.Logging.Abstractions.dasm (0.03 % of base)
          16 : System.Net.NameResolution.dasm (0.04 % of base)
          11 : System.Net.Sockets.dasm (0.00 % of base)
           2 : System.Net.Quic.dasm (0.00 % of base)

Top file improvements (bytes):
       -3240 : System.Private.Xml.dasm (-0.08 % of base)
       -2333 : System.Private.DataContractSerialization.dasm (-0.24 % of base)
        -928 : System.Threading.Tasks.Dataflow.dasm (-0.08 % of base)
        -417 : System.Private.CoreLib.dasm (-0.01 % of base)
        -367 : System.Net.Mail.dasm (-0.20 % of base)
        -310 : System.ComponentModel.Composition.dasm (-0.07 % of base)
        -271 : System.Data.Common.dasm (-0.02 % of base)
        -181 : System.Composition.Hosting.dasm (-0.17 % of base)
        -175 : System.Net.Http.dasm (-0.02 % of base)
        -166 : System.Net.HttpListener.dasm (-0.16 % of base)
        -165 : System.CodeDom.dasm (-0.08 % of base)
        -153 : System.Security.Cryptography.Xml.dasm (-0.08 % of base)
        -137 : System.Formats.Tar.dasm (-0.11 % of base)
        -101 : System.Configuration.ConfigurationManager.dasm (-0.03 % of base)
        -100 : System.IO.Packaging.dasm (-0.09 % of base)
         -97 : System.Web.HttpUtility.dasm (-0.50 % of base)
         -80 : System.Security.Cryptography.dasm (-0.01 % of base)
         -65 : Microsoft.VisualBasic.Core.dasm (-0.01 % of base)
         -61 : System.Text.Json.dasm (-0.00 % of base)
         -53 : System.Text.RegularExpressions.dasm (-0.01 % of base)
         -49 : System.Private.Xml.Linq.dasm (-0.03 % of base)
         -46 : System.DirectoryServices.Protocols.dasm (-0.03 % of base)
         -43 : System.Linq.Expressions.dasm (-0.00 % of base)
         -42 : Microsoft.Extensions.DependencyInjection.dasm (-0.06 % of base)
         -41 : Microsoft.CSharp.dasm (-0.01 % of base)
         -41 : System.Net.WebClient.dasm (-0.08 % of base)
         -31 : System.Formats.Cbor.dasm (-0.07 % of base)
         -28 : System.ComponentModel.TypeConverter.dasm (-0.01 % of base)
         -27 : System.Net.Requests.dasm (-0.02 % of base)
         -25 : System.Runtime.InteropServices.dasm (-0.11 % of base)
         -24 : System.Diagnostics.TraceSource.dasm (-0.05 % of base)
         -20 : Microsoft.Extensions.Logging.Console.dasm (-0.03 % of base)
         -20 : Microsoft.Extensions.DependencyModel.dasm (-0.03 % of base)
         -19 : System.Collections.Immutable.dasm (-0.00 % of base)
         -18 : System.ServiceModel.Syndication.dasm (-0.01 % of base)
         -18 : Microsoft.Extensions.FileProviders.Physical.dasm (-0.10 % of base)
         -17 : ILCompiler.Reflection.ReadyToRun.dasm (-0.01 % of base)
         -17 : System.Data.Odbc.dasm (-0.01 % of base)
         -15 : System.Console.dasm (-0.02 % of base)
         -14 : System.Formats.Nrbf.dasm (-0.03 % of base)
         -14 : System.Diagnostics.DiagnosticSource.dasm (-0.01 % of base)
         -13 : System.IO.Pipelines.dasm (-0.02 % of base)
         -12 : System.Runtime.Caching.dasm (-0.02 % of base)
          -9 : System.Runtime.Serialization.Formatters.dasm (-0.04 % of base)
          -9 : System.Composition.Convention.dasm (-0.01 % of base)
          -9 : System.Reflection.DispatchProxy.dasm (-0.05 % of base)
          -7 : System.ComponentModel.Annotations.dasm (-0.01 % of base)
          -7 : System.Reflection.MetadataLoadContext.dasm (-0.00 % of base)
          -6 : Microsoft.Extensions.Configuration.dasm (-0.04 % of base)
          -6 : System.Net.Primitives.dasm (-0.01 % of base)
          -6 : System.Resources.Extensions.dasm (-0.01 % of base)
          -6 : System.Reflection.Metadata.dasm (-0.00 % of base)
          -6 : System.Resources.Writer.dasm (-0.07 % of base)
          -6 : System.Runtime.Serialization.Schema.dasm (-0.01 % of base)
          -5 : System.Net.Http.Json.dasm (-0.00 % of base)
          -4 : System.Drawing.Primitives.dasm (-0.01 % of base)
          -3 : Microsoft.Extensions.DependencyInjection.Abstractions.dasm (-0.00 % of base)
          -3 : System.Collections.Specialized.dasm (-0.02 % of base)
          -3 : System.Net.WebHeaderCollection.dasm (-0.02 % of base)
          -2 : System.ComponentModel.Composition.Registration.dasm (-0.00 % of base)
          -1 : System.Threading.RateLimiting.dasm (-0.00 % of base)
          -1 : Microsoft.Extensions.Http.dasm (-0.00 % of base)
          -1 : System.Formats.Asn1.dasm (-0.00 % of base)

70 total files with Code Size differences (63 improved, 7 regressed), 189 unchanged.

Top method regressions (bytes):
         417 (13.20 % of base) : System.Net.WebSockets.dasm - System.Net.WebSockets.ManagedWebSocket+<CloseAsyncPrivate>d__69:MoveNext():this (FullOpts)
          87 (0.86 % of base) : System.Net.WebSockets.dasm - System.Net.WebSockets.ManagedWebSocket+<ReceiveAsyncPrivate>d__61`1[System.__Canon]:MoveNext():this (FullOpts)
          42 (2.78 % of base) : System.DirectoryServices.Protocols.dasm - System.DirectoryServices.Protocols.LdapSessionOptions:ProcessQueryConnection(long,long,long,long,int,ulong,ulong,ulong):int:this (FullOpts)
          42 (1.07 % of base) : System.Net.Security.dasm - System.Net.Security.SslStream:SelectClientCertificate():System.Security.Cryptography.X509Certificates.X509Certificate2:this (FullOpts)
          30 (0.93 % of base) : System.Private.Xml.dasm - System.Xml.Serialization.XmlSerializationILGen:GenerateTypedSerializer(System.String,System.String,System.Xml.Serialization.XmlMapping,System.Xml.Serialization.CodeIdentifiers,System.String,System.String,System.String):System.String:this (FullOpts)
          24 (0.43 % of base) : System.Private.Xml.dasm - System.Xml.Serialization.XmlSerializationWriterILGen:GenerateMembersElement(System.Xml.Serialization.XmlMembersMapping):System.String:this (FullOpts)
          18 (0.75 % of base) : System.Data.Common.dasm - System.Data.NewDiffgramGen:GenerateTableErrors(System.Data.DataTable):this (FullOpts)
          18 (3.91 % of base) : System.Net.Mail.dasm - System.Net.Mail.SmtpTransport:GetConnection(System.String,int):this (FullOpts)
          16 (1.06 % of base) : System.Net.Security.dasm - System.Net.Security.SslStream:AcquireServerCredentials(byref):ubyte:this (FullOpts)
          16 (3.30 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.XmlQueryType:ItemTypeToString(ubyte):System.String:this (FullOpts)
          15 (0.91 % of base) : System.Net.Security.dasm - System.Net.Security.SslStream+<ProcessAuthenticationWithTelemetryAsync>d__154:MoveNext():this (FullOpts)
          12 (2.37 % of base) : System.Formats.Tar.dasm - System.Formats.Tar.PaxTarEntry:.ctor(System.Formats.Tar.TarEntry):this (FullOpts)
          12 (1.24 % of base) : System.Net.Http.dasm - System.Net.Http.HttpClient:HandleFailure(System.Exception,ubyte,System.Net.Http.HttpResponseMessage,System.Threading.CancellationTokenSource,System.Threading.CancellationToken,System.Threading.CancellationTokenSource):this (FullOpts)
          12 (3.46 % of base) : System.Net.Mail.dasm - System.Net.Mail.MailMessage:.ctor(System.String,System.String):this (FullOpts)
          12 (3.92 % of base) : System.Net.Sockets.dasm - System.Net.Sockets.SocketPal:Accept(System.Net.Sockets.SafeSocketHandle,System.Memory`1[ubyte],byref,byref):int (FullOpts)
          12 (2.03 % of base) : System.Net.Sockets.dasm - System.Net.Sockets.SocketPal:CreateSocket(int,int,int,byref):int (FullOpts)
          12 (3.07 % of base) : System.Net.Sockets.dasm - System.Net.Sockets.TcpListener:.ctor(System.Net.IPAddress,int):this (FullOpts)
          12 (4.82 % of base) : System.Net.Sockets.dasm - System.Net.Sockets.TcpListener:.ctor(System.Net.IPEndPoint):this (FullOpts)
          11 (3.44 % of base) : System.Net.Security.dasm - System.Net.Security.SslStream:Decrypt(System.Span`1[ubyte],byref,byref):System.Net.SecurityStatusPal:this (FullOpts)
          11 (3.20 % of base) : System.Private.Xml.dasm - System.Xml.Schema.XmlAnyConverter:ChangeType(System.String,System.Type,System.Xml.IXmlNamespaceResolver):System.Object:this (FullOpts)
          10 (10.64 % of base) : System.Private.Xml.dasm - MS.Internal.Xml.XPath.XPathParser:GetAxis():int:this (FullOpts)
           9 (0.20 % of base) : System.Private.Xml.dasm - System.Xml.Schema.XmlAnyConverter:ChangeType(System.Object,System.Type,System.Xml.IXmlNamespaceResolver):System.Object:this (FullOpts)
           8 (0.17 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.Json.JsonFormatReaderGenerator+CriticalHelper:ReadCollection(System.Runtime.Serialization.DataContracts.CollectionDataContract):this (FullOpts)
           7 (5.38 % of base) : Microsoft.CSharp.dasm - Microsoft.CSharp.RuntimeBinder.Semantics.TypeTable:InsertAggregate(Microsoft.CSharp.RuntimeBinder.Semantics.AggregateSymbol,Microsoft.CSharp.RuntimeBinder.Semantics.AggregateType,Microsoft.CSharp.RuntimeBinder.Semantics.TypeArray,Microsoft.CSharp.RuntimeBinder.Semantics.AggregateType) (FullOpts)
           7 (1.08 % of base) : System.Data.Common.dasm - System.Data.DataColumnCollection:Clear():this (FullOpts)
           7 (1.04 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.IlGen.IteratorDescriptor:EnsureItemStorageType(System.Xml.Xsl.XmlQueryType,System.Type):this (FullOpts)
           6 (2.70 % of base) : Microsoft.Extensions.Logging.Abstractions.dasm - Microsoft.Extensions.Logging.LogValuesFormatter:Format[int](int):System.String:this (FullOpts)
           6 (2.67 % of base) : Microsoft.Extensions.Logging.Abstractions.dasm - Microsoft.Extensions.Logging.LogValuesFormatter:Format[long](long):System.String:this (FullOpts)
           6 (2.65 % of base) : Microsoft.Extensions.Logging.Abstractions.dasm - Microsoft.Extensions.Logging.LogValuesFormatter:Format[short](short):System.String:this (FullOpts)
           6 (2.61 % of base) : Microsoft.Extensions.Logging.Abstractions.dasm - Microsoft.Extensions.Logging.LogValuesFormatter:Format[System.Nullable`1[int]](System.Nullable`1[int]):System.String:this (FullOpts)
           6 (2.65 % of base) : Microsoft.Extensions.Logging.Abstractions.dasm - Microsoft.Extensions.Logging.LogValuesFormatter:Format[ubyte](ubyte):System.String:this (FullOpts)
           6 (0.57 % of base) : System.Private.CoreLib.dasm - System.IO.BufferedStream:ReadAsync(ubyte[],int,int,System.Threading.CancellationToken):System.Threading.Tasks.Task`1[int]:this (FullOpts)
           6 (0.28 % of base) : System.Net.Http.dasm - System.Net.Http.Http3RequestStream:BufferHeaders(System.Net.Http.HttpRequestMessage):this (FullOpts)
           5 (3.82 % of base) : Microsoft.CSharp.dasm - Microsoft.CSharp.RuntimeBinder.Semantics.TypeTable:LookupAggregate(Microsoft.CSharp.RuntimeBinder.Semantics.AggregateSymbol,Microsoft.CSharp.RuntimeBinder.Semantics.AggregateType,Microsoft.CSharp.RuntimeBinder.Semantics.TypeArray):Microsoft.CSharp.RuntimeBinder.Semantics.AggregateType (FullOpts)
           5 (0.05 % of base) : System.Net.Http.dasm - System.Net.Http.HttpConnection+<SendAsync>d__56:MoveNext():this (FullOpts)
           5 (0.76 % of base) : System.Private.Xml.dasm - System.Xml.XmlTextReaderImpl:ThrowTagMismatch(System.Xml.XmlTextReaderImpl+NodeData):this (FullOpts)
           5 (0.57 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.Runtime.XmlQueryRuntime:CreateXmlType(System.Xml.XPath.XPathItem):System.Xml.Xsl.XmlQueryType (FullOpts)
           5 (0.51 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.XPath.XPathQilFactory:ConvertToBoolean(System.Xml.Xsl.Qil.QilNode):System.Xml.Xsl.Qil.QilNode:this (FullOpts)
           4 (1.74 % of base) : Microsoft.Extensions.Logging.Abstractions.dasm - Microsoft.Extensions.Logging.LogValuesFormatter:Format[System.Numerics.Vector`1[float]](System.Numerics.Vector`1[float]):System.String:this (FullOpts)
           4 (0.68 % of base) : System.IO.Pipelines.dasm - System.IO.Pipelines.Pipe:PrepareFlushUnsynchronized(byref,byref,System.Threading.CancellationToken):this (FullOpts)
           4 (0.97 % of base) : System.Private.CoreLib.dasm - System.Lazy`1[System.Nullable`1[int]]:CreateValue():System.Nullable`1[int]:this (FullOpts)
           4 (0.49 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.SpoolingTask+<>c__DisplayClass0_0`2[double,System.Nullable`1[int]]:<SpoolStopAndGo>b__0():this (FullOpts)
           4 (0.49 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.SpoolingTask+<>c__DisplayClass0_0`2[int,System.Nullable`1[int]]:<SpoolStopAndGo>b__0():this (FullOpts)
           4 (0.49 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.SpoolingTask+<>c__DisplayClass0_0`2[long,System.Nullable`1[int]]:<SpoolStopAndGo>b__0():this (FullOpts)
           4 (0.49 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.SpoolingTask+<>c__DisplayClass0_0`2[short,System.Nullable`1[int]]:<SpoolStopAndGo>b__0():this (FullOpts)
           4 (0.44 % 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)
           4 (0.49 % 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)
           4 (0.49 % 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)
           4 (0.49 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.SpoolingTask+<>c__DisplayClass0_0`2[ubyte,System.Nullable`1[int]]:<SpoolStopAndGo>b__0():this (FullOpts)
           4 (0.61 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.SpoolingTask+<>c__DisplayClass1_0`2[double,System.Nullable`1[int]]:<SpoolPipeline>b__0():this (FullOpts)
           4 (0.61 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.SpoolingTask+<>c__DisplayClass1_0`2[int,System.Nullable`1[int]]:<SpoolPipeline>b__0():this (FullOpts)
           4 (0.61 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.SpoolingTask+<>c__DisplayClass1_0`2[long,System.Nullable`1[int]]:<SpoolPipeline>b__0():this (FullOpts)
           4 (0.61 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.SpoolingTask+<>c__DisplayClass1_0`2[short,System.Nullable`1[int]]:<SpoolPipeline>b__0():this (FullOpts)
           4 (0.61 % 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)
           4 (0.61 % 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)
           4 (0.61 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.SpoolingTask+<>c__DisplayClass1_0`2[ubyte,System.Nullable`1[int]]:<SpoolPipeline>b__0():this (FullOpts)
           4 (0.54 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.SpoolingTask+<>c__DisplayClass2_0`2[double,System.Nullable`1[int]]:<SpoolForAll>b__0():this (FullOpts)
           4 (0.54 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.SpoolingTask+<>c__DisplayClass2_0`2[int,System.Nullable`1[int]]:<SpoolForAll>b__0():this (FullOpts)
           4 (0.54 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.SpoolingTask+<>c__DisplayClass2_0`2[long,System.Nullable`1[int]]:<SpoolForAll>b__0():this (FullOpts)
           4 (0.54 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.SpoolingTask+<>c__DisplayClass2_0`2[short,System.Nullable`1[int]]:<SpoolForAll>b__0():this (FullOpts)
           4 (0.54 % 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)
           4 (0.54 % 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)
           4 (0.54 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.SpoolingTask+<>c__DisplayClass2_0`2[ubyte,System.Nullable`1[int]]:<SpoolForAll>b__0():this (FullOpts)
           4 (0.16 % of base) : System.Text.RegularExpressions.dasm - System.Text.RegularExpressions.RegexCache:Add(System.Text.RegularExpressions.RegexCache+Key,System.Text.RegularExpressions.Regex) (FullOpts) (2 methods)
           4 (0.40 % of base) : System.Private.Xml.dasm - System.Xml.XmlTextWriter:AutoComplete(int):this (FullOpts)
           3 (0.23 % of base) : System.Data.Common.dasm - System.Data.NewDiffgramGen:GenerateRow(System.Data.DataRow):this (FullOpts)
           3 (0.34 % of base) : System.Net.Http.dasm - System.Net.Http.HttpConnectionBase:MarkConnectionAsEstablished(System.Diagnostics.Activity,System.Net.IPEndPoint):this (FullOpts)
           3 (0.07 % of base) : System.Net.Http.dasm - System.Net.Http.RedirectHandler+<SendAsync>d__4:MoveNext():this (FullOpts)
           3 (1.16 % of base) : System.Net.Http.dasm - System.Net.Http.StreamContent:.ctor(System.IO.Stream):this (FullOpts)
           3 (1.50 % of base) : System.Net.Http.dasm - System.Net.Http.StreamContent:InitializeContent(System.IO.Stream,int):this (FullOpts)
           3 (0.27 % of base) : System.Net.Quic.dasm - System.Net.Quic.MsQuicConfiguration:Create(System.Net.Quic.QuicClientConnectionOptions):System.Net.Quic.MsQuicConfigurationSafeHandle (FullOpts)
           3 (0.23 % of base) : System.Net.Sockets.dasm - System.Net.Sockets.Socket:SendTo(ubyte[],int,int,int,System.Net.EndPoint):int:this (FullOpts)
           3 (0.26 % of base) : System.Private.CoreLib.dasm - System.Runtime.Intrinsics.Vector64`1[int]:ToString(System.String,System.IFormatProvider):System.String:this (FullOpts)
           3 (0.22 % of base) : System.Private.CoreLib.dasm - System.TimeZoneInfo+StringSerializer:GetNextAdjustmentRuleValue():System.TimeZoneInfo+AdjustmentRule:this (FullOpts)
           2 (0.11 % of base) : Microsoft.CSharp.dasm - Microsoft.CSharp.RuntimeBinder.Errors.UserStringBuilder:ErrAppendMethod(Microsoft.CSharp.RuntimeBinder.Semantics.MethodSymbol,Microsoft.CSharp.RuntimeBinder.Semantics.SubstContext,ubyte):this (FullOpts)
           2 (0.28 % of base) : System.ComponentModel.TypeConverter.dasm - System.ComponentModel.TypeDescriptor:Refresh(System.Type) (FullOpts)
           2 (0.93 % of base) : System.Net.NameResolution.dasm - System.Net.Dns+<>c__DisplayClass39_0`1[double]:<RunAsync>b__0(System.Threading.Tasks.Task,System.Object):double:this (FullOpts)
           2 (0.94 % of base) : System.Net.NameResolution.dasm - System.Net.Dns+<>c__DisplayClass39_0`1[int]:<RunAsync>b__0(System.Threading.Tasks.Task,System.Object):int:this (FullOpts)
           2 (0.93 % of base) : System.Net.NameResolution.dasm - System.Net.Dns+<>c__DisplayClass39_0`1[long]:<RunAsync>b__0(System.Threading.Tasks.Task,System.Object):long:this (FullOpts)
           2 (0.94 % of base) : System.Net.NameResolution.dasm - System.Net.Dns+<>c__DisplayClass39_0`1[short]:<RunAsync>b__0(System.Threading.Tasks.Task,System.Object):short:this (FullOpts)
           2 (0.91 % of base) : System.Net.NameResolution.dasm - System.Net.Dns+<>c__DisplayClass39_0`1[System.__Canon]:<RunAsync>b__0(System.Threading.Tasks.Task,System.Object):System.__Canon:this (FullOpts)
           2 (0.93 % of base) : System.Net.NameResolution.dasm - System.Net.Dns+<>c__DisplayClass39_0`1[System.Nullable`1[int]]:<RunAsync>b__0(System.Threading.Tasks.Task,System.Object):System.Nullable`1[int]:this (FullOpts)
           2 (0.84 % of base) : System.Net.NameResolution.dasm - System.Net.Dns+<>c__DisplayClass39_0`1[System.Numerics.Vector`1[float]]:<RunAsync>b__0(System.Threading.Tasks.Task,System.Object):System.Numerics.Vector`1[float]:this (FullOpts)
           2 (0.94 % of base) : System.Net.NameResolution.dasm - System.Net.Dns+<>c__DisplayClass39_0`1[ubyte]:<RunAsync>b__0(System.Threading.Tasks.Task,System.Object):ubyte:this (FullOpts)
           2 (0.20 % of base) : System.Net.Sockets.dasm - System.Net.Sockets.Socket:Receive(ubyte[],int,int,int,byref):int:this (FullOpts)
           2 (0.17 % of base) : System.Net.Sockets.dasm - System.Net.Sockets.Socket:Send(ubyte[],int,int,int,byref):int:this (FullOpts)
           2 (0.13 % of base) : System.Private.DataContractSerialization.dasm - System.Xml.XmlBaseWriter+<WriteBase64AsyncImpl>d__119:MoveNext():this (FullOpts)
           2 (0.47 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.Xslt.QilGenerator:CompileLangToLcid(System.Xml.Xsl.Qil.QilNode,ubyte):System.Xml.Xsl.Qil.QilNode:this (FullOpts)
           2 (0.64 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.Xslt.QilGenerator:GetCurrentPosition():System.Xml.Xsl.Qil.QilNode:this (FullOpts)
           1 (0.89 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableArray`1[short]:Remove(short):System.Collections.Immutable.ImmutableArray`1[short]:this (FullOpts)
           1 (0.89 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableArray`1[ubyte]:Remove(ubyte):System.Collections.Immutable.ImmutableArray`1[ubyte]:this (FullOpts)
           1 (0.09 % of base) : System.ComponentModel.TypeConverter.dasm - System.ComponentModel.TypeDescriptor:Refresh(System.Reflection.Module) (FullOpts)
           1 (0.17 % of base) : System.Configuration.ConfigurationManager.dasm - System.Configuration.ConnectionStringSettings:.cctor() (FullOpts)
           1 (0.21 % of base) : System.Configuration.ConfigurationManager.dasm - System.Configuration.ProtectedConfigurationSection:.cctor() (FullOpts)
           1 (0.23 % of base) : System.Configuration.ConfigurationManager.dasm - System.Configuration.ProviderSettings:.ctor():this (FullOpts)
           1 (0.28 % of base) : System.Data.Common.dasm - System.Data.SqlTypes.SqlDouble:Parse(System.String):System.Data.SqlTypes.SqlDouble (FullOpts)
           1 (0.29 % of base) : System.Data.Common.dasm - System.Data.SqlTypes.SqlSingle:Parse(System.String):System.Data.SqlTypes.SqlSingle (FullOpts)
           1 (0.02 % of base) : System.Private.CoreLib.dasm - System.DateTimeFormat:FormatCustomized[ubyte](System.DateTime,System.ReadOnlySpan`1[ushort],System.Globalization.DateTimeFormatInfo,System.TimeSpan,byref) (FullOpts)
           1 (0.06 % of base) : System.Private.CoreLib.dasm - System.Globalization.TimeSpanFormat:FormatCustomized[ubyte](System.TimeSpan,System.ReadOnlySpan`1[ushort],System.Globalization.DateTimeFormatInfo,byref) (FullOpts)
           1 (0.12 % 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)

Top method improvements (bytes):
        -774 (-10.79 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.DataContract+DataContractCriticalHelper:TryCreateBuiltInDataContract(System.String,System.String,byref):ubyte (FullOpts)
        -348 (-5.44 % of base) : System.Private.Xml.dasm - System.Xml.Serialization.XmlSerializationReaderILGen:WritePrimitive(System.Xml.Serialization.TypeMapping,System.String):this (FullOpts)
        -236 (-9.45 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.Xslt.QilGenerator:MatchCountPattern(System.Xml.Xsl.Qil.QilNode,System.Xml.Xsl.Qil.QilIterator):System.Xml.Xsl.Qil.QilNode:this (FullOpts)
        -229 (-3.13 % of base) : System.Private.Xml.dasm - System.Xml.Serialization.XmlSerializationReaderILGen:WriteElement(System.String,System.String,System.String,System.Xml.Serialization.ElementAccessor,System.Xml.Serialization.ChoiceIdentifierAccessor,System.String,ubyte,ubyte,int,int):this (FullOpts)
        -195 (-2.66 % of base) : System.Private.Xml.dasm - System.Xml.Serialization.XmlSerializationWriterILGen:WriteStructMethod(System.Xml.Serialization.StructMapping):this (FullOpts)
        -157 (-10.14 % of base) : System.Net.HttpListener.dasm - System.Net.HttpListenerResponse:SendHeaders(ubyte,System.IO.MemoryStream,ubyte):this (FullOpts)
        -120 (-1.90 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.Xslt.QilGenerator:PrecompileProtoTemplatesHeaders():this (FullOpts)
        -119 (-1.18 % of base) : System.Data.Common.dasm - System.Data.XmlTreeGen:SchemaTree(System.Xml.XmlDocument,System.Xml.XmlWriter,System.Data.DataSet,System.Data.DataTable,ubyte):this (FullOpts)
        -115 (-1.16 % of base) : System.Private.Xml.dasm - System.Xml.Serialization.XmlSerializationReaderILGen:WriteLiteralStructMethod(System.Xml.Serialization.StructMapping):this (FullOpts)
        -111 (-13.59 % of base) : System.Formats.Tar.dasm - System.Formats.Tar.TarHeader:ReadPosixAndGnuSharedAttributes(System.ReadOnlySpan`1[ubyte]):this (FullOpts)
        -110 (-11.89 % of base) : System.Net.Mail.dasm - System.Net.Mail.CheckCommand:BeginSend(System.Net.Mail.SmtpConnection,System.AsyncCallback,System.Object):System.IAsyncResult (FullOpts)
         -99 (-1.38 % of base) : System.Private.Xml.dasm - System.Xml.Schema.XdrBuilder:.cctor() (FullOpts)
         -97 (-8.50 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.Json.JsonXmlDataContract:WriteJsonValueCore(System.Runtime.Serialization.XmlWriterDelegator,System.Object,System.Runtime.Serialization.Json.XmlObjectSerializerWriteContextComplexJson,System.RuntimeTypeHandle):this (FullOpts)
         -93 (-5.59 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.Xslt.QilGenerator:CreateGeneralKeyFunction():System.Xml.Xsl.Qil.QilFunction:this (FullOpts)
         -89 (-3.60 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.DataContract+DataContractCriticalHelper:TryCreateBuiltInDataContract(System.Type,byref):ubyte (FullOpts)
         -88 (-6.91 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.XmlObjectSerializerWriteContext:WriteSerializationInfo(System.Runtime.Serialization.XmlWriterDelegator,System.Type,System.Runtime.Serialization.SerializationInfo):this (FullOpts)
         -84 (-5.22 % of base) : System.Threading.Tasks.Dataflow.dasm - System.Threading.Tasks.Dataflow.DataflowBlock+ReceiveTarget`1[double]:CleanupAndComplete(int):this (FullOpts)
         -84 (-5.22 % of base) : System.Threading.Tasks.Dataflow.dasm - System.Threading.Tasks.Dataflow.DataflowBlock+ReceiveTarget`1[int]:CleanupAndComplete(int):this (FullOpts)
         -84 (-5.22 % of base) : System.Threading.Tasks.Dataflow.dasm - System.Threading.Tasks.Dataflow.DataflowBlock+ReceiveTarget`1[long]:CleanupAndComplete(int):this (FullOpts)
         -84 (-5.22 % of base) : System.Threading.Tasks.Dataflow.dasm - System.Threading.Tasks.Dataflow.DataflowBlock+ReceiveTarget`1[short]:CleanupAndComplete(int):this (FullOpts)
         -84 (-5.22 % of base) : System.Threading.Tasks.Dataflow.dasm - System.Threading.Tasks.Dataflow.DataflowBlock+ReceiveTarget`1[System.Nullable`1[int]]:CleanupAndComplete(int):this (FullOpts)
         -84 (-5.22 % of base) : System.Threading.Tasks.Dataflow.dasm - System.Threading.Tasks.Dataflow.DataflowBlock+ReceiveTarget`1[System.Numerics.Vector`1[float]]:CleanupAndComplete(int):this (FullOpts)
         -84 (-5.22 % of base) : System.Threading.Tasks.Dataflow.dasm - System.Threading.Tasks.Dataflow.DataflowBlock+ReceiveTarget`1[ubyte]:CleanupAndComplete(int):this (FullOpts)
         -81 (-5.00 % of base) : System.Threading.Tasks.Dataflow.dasm - System.Threading.Tasks.Dataflow.DataflowBlock+ReceiveTarget`1[System.__Canon]:CleanupAndComplete(int):this (FullOpts)
         -74 (-1.26 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.XmlFormatReaderGenerator+CriticalHelper:ReadCollection(System.Runtime.Serialization.DataContracts.CollectionDataContract):this (FullOpts)
         -73 (-4.96 % of base) : System.Private.Xml.dasm - System.Xml.XmlDocument:.ctor(System.Xml.XmlImplementation):this (FullOpts)
         -68 (-8.16 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.XmlObjectSerializer:WriteObject(System.IO.Stream,System.Object):this (FullOpts)
         -65 (-2.45 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.XPath.XPathBuilder:Function(System.String,System.String,System.Collections.Generic.IList`1[System.Xml.Xsl.Qil.QilNode]):System.Xml.Xsl.Qil.QilNode:this (FullOpts)
         -62 (-3.63 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.Xslt.QilGenerator:CompileFnDocument(System.Xml.Xsl.Qil.QilNode,System.Xml.Xsl.Qil.QilNode):System.Xml.Xsl.Qil.QilNode:this (FullOpts)
         -59 (-3.49 % of base) : System.Web.HttpUtility.dasm - System.Web.HttpUtility+HttpQSCollection:ToString():System.String:this (FullOpts)
         -59 (-2.75 % of base) : System.Private.Xml.dasm - System.Xml.Serialization.XmlSerializationILGen:GenerateSerializerContract(System.Xml.Serialization.XmlMapping[],System.Type[],System.String,System.String[],System.String,System.String[],System.Collections.Generic.Dictionary`2[System.String,System.String]):this (FullOpts)
         -54 (-2.46 % of base) : System.Net.Mail.dasm - System.Net.Mail.Message:PrepareHeaders(ubyte):this (FullOpts)
         -54 (-1.66 % of base) : System.Net.Mail.dasm - System.Net.Mail.SmtpClient:Send(System.Net.Mail.MailMessage):this (FullOpts)
         -54 (-2.92 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.Xslt.XsltLoader:XslChoose():System.Xml.Xsl.Xslt.XslNode:this (FullOpts)
         -52 (-1.51 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.XPathConvert+BigNumber:DblToRgbFast(double,ubyte[],byref,byref):ubyte (FullOpts)
         -52 (-2.58 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.Xslt.XsltLoader:LoadTemplate(System.Xml.Xsl.Xslt.NsDecl):this (FullOpts)
         -49 (-1.69 % of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.X509Certificates.OpenSslX509ChainProcessor:FinishRevocation(int,int,int):this (FullOpts)
         -47 (-2.94 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.Xslt.QilGenerator:CompileFnKey(System.Xml.Xsl.Qil.QilNode,System.Xml.Xsl.Qil.QilNode,System.Xml.Xsl.XPath.IFocus):System.Xml.Xsl.Qil.QilNode:this (FullOpts)
         -45 (-0.48 % of base) : System.Data.Common.dasm - System.Data.Common.SqlConvert:ChangeTypeForXML(System.Object,System.Type):System.Object (FullOpts)
         -45 (-1.22 % of base) : System.Net.WebSockets.dasm - System.Net.WebSockets.ManagedWebSocket+<HandleReceivedCloseAsync>d__63:MoveNext():this (FullOpts)
         -39 (-5.42 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.Json.DataContractJsonSerializer:WriteObject(System.IO.Stream,System.Object):this (FullOpts)
         -39 (-3.10 % of base) : System.Private.Xml.dasm - System.Xml.Serialization.XmlSerializationILGen:GenerateBaseSerializer(System.String,System.String,System.String,System.Xml.Serialization.CodeIdentifiers):System.String:this (FullOpts)
         -35 (-1.62 % of base) : System.DirectoryServices.Protocols.dasm - System.DirectoryServices.Protocols.LdapSessionOptions:ProcessNotifyConnection(long,long,long,long,long,int,ulong,ulong,int):int:this (FullOpts)
         -34 (-7.83 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.XmlQueryTypeFactory+ItemType:Create(int,System.Xml.Xsl.XmlQualifiedNameTest,System.Xml.Schema.XmlSchemaType,ubyte):System.Xml.Xsl.XmlQueryType (FullOpts)
         -33 (-6.09 % of base) : System.Private.CoreLib.dasm - System.Diagnostics.Tracing.EventSource:DefineEventPipeEvents():this (FullOpts)
         -32 (-2.21 % of base) : Microsoft.VisualBasic.Core.dasm - Microsoft.VisualBasic.CompilerServices.OverloadResolution:MatchArguments(Microsoft.VisualBasic.CompilerServices.Symbols+Method,System.Object[],System.Object[]) (FullOpts)
         -31 (-3.37 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.XmlObjectSerializerWriteContext:OnHandleIsReference(System.Runtime.Serialization.XmlWriterDelegator,System.Runtime.Serialization.DataContracts.DataContract,System.Object):ubyte:this (FullOpts)
         -31 (-0.89 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.IlGen.XmlILVisitor:HandleFilterPatterns(System.Xml.Xsl.Qil.QilLoop):ubyte:this (FullOpts)
         -30 (-5.76 % of base) : System.IO.Packaging.dasm - System.IO.Packaging.PartBasedPackageProperties:WriteXmlStartTagsForPackageProperties():this (FullOpts)
         -30 (-3.67 % of base) : System.Private.DataContractSerialization.dasm - System.Xml.XmlCanonicalWriter:SetOutput(System.IO.Stream,ubyte,System.String[]):this (FullOpts)
         -30 (-0.93 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.Xslt.QilGenerator:InvokeApplyFunction(System.Xml.Xsl.Xslt.StylesheetLevel,System.Xml.Xsl.Qil.QilName,System.Collections.Generic.IList`1[System.Xml.Xsl.Xslt.XslNode]):System.Xml.Xsl.Qil.QilNode:this (FullOpts)
         -29 (-0.33 % of base) : System.Net.WebSockets.dasm - System.Net.WebSockets.ManagedWebSocket+<ReceiveAsyncPrivate>d__61`1[double]:MoveNext():this (FullOpts)
         -29 (-0.33 % of base) : System.Net.WebSockets.dasm - System.Net.WebSockets.ManagedWebSocket+<ReceiveAsyncPrivate>d__61`1[int]:MoveNext():this (FullOpts)
         -29 (-0.33 % of base) : System.Net.WebSockets.dasm - System.Net.WebSockets.ManagedWebSocket+<ReceiveAsyncPrivate>d__61`1[long]:MoveNext():this (FullOpts)
         -29 (-0.33 % of base) : System.Net.WebSockets.dasm - System.Net.WebSockets.ManagedWebSocket+<ReceiveAsyncPrivate>d__61`1[short]:MoveNext():this (FullOpts)
         -29 (-0.32 % of base) : System.Net.WebSockets.dasm - System.Net.WebSockets.ManagedWebSocket+<ReceiveAsyncPrivate>d__61`1[System.Numerics.Vector`1[float]]:MoveNext():this (FullOpts)
         -29 (-0.33 % of base) : System.Net.WebSockets.dasm - System.Net.WebSockets.ManagedWebSocket+<ReceiveAsyncPrivate>d__61`1[ubyte]:MoveNext():this (FullOpts)
         -29 (-1.96 % of base) : System.Private.Xml.dasm - System.Xml.Serialization.XmlSerializationReaderILGen:GenerateTypeElement(System.Xml.Serialization.XmlTypeMapping):System.String:this (FullOpts)
         -29 (-9.57 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.IlGen.XmlILModule:CreateLREModule():System.Reflection.Emit.ModuleBuilder (FullOpts)
         -28 (-1.63 % of base) : System.ComponentModel.Composition.dasm - System.ComponentModel.Composition.AttributedModel.AttributedModelDiscovery:CreateMemberImportDefinition(System.Reflection.MemberInfo,System.ComponentModel.Composition.Primitives.ICompositionElement):System.ComponentModel.Composition.ReflectionModel.ReflectionMemberImportDefinition (FullOpts)
         -28 (-4.27 % of base) : System.Formats.Cbor.dasm - System.Formats.Cbor.CborReader:ReadDateTimeOffset():System.DateTimeOffset:this (FullOpts)
         -28 (-7.00 % of base) : System.Net.Mail.dasm - System.Net.Mail.SmtpConnection+ConnectAndHandshakeAsyncResult:AuthenticateContinue():ubyte:this (FullOpts)
         -28 (-1.28 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.Xslt.QilGenerator:CompileKeys():this (FullOpts)
         -27 (-1.60 % of base) : System.DirectoryServices.Protocols.dasm - System.DirectoryServices.Protocols.DirectoryAttribute:GetValues(System.Type):System.Object[]:this (FullOpts)
         -27 (-2.44 % of base) : System.Threading.Tasks.Dataflow.dasm - System.Threading.Tasks.Dataflow.Internal.TargetCore`1[double]:ProcessMessagesLoopCore():this (FullOpts)
         -27 (-2.44 % of base) : System.Threading.Tasks.Dataflow.dasm - System.Threading.Tasks.Dataflow.Internal.TargetCore`1[int]:ProcessMessagesLoopCore():this (FullOpts)
         -27 (-2.44 % of base) : System.Threading.Tasks.Dataflow.dasm - System.Threading.Tasks.Dataflow.Internal.TargetCore`1[long]:ProcessMessagesLoopCore():this (FullOpts)
         -27 (-2.43 % of base) : System.Threading.Tasks.Dataflow.dasm - System.Threading.Tasks.Dataflow.Internal.TargetCore`1[short]:ProcessMessagesLoopCore():this (FullOpts)
         -27 (-2.43 % of base) : System.Threading.Tasks.Dataflow.dasm - System.Threading.Tasks.Dataflow.Internal.TargetCore`1[ubyte]:ProcessMessagesLoopCore():this (FullOpts)
         -26 (-0.80 % of base) : Microsoft.CSharp.dasm - Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder:AdjustCallArgumentsForParams(Microsoft.CSharp.RuntimeBinder.Semantics.CType,Microsoft.CSharp.RuntimeBinder.Semantics.CType,Microsoft.CSharp.RuntimeBinder.Semantics.MethodOrPropertySymbol,Microsoft.CSharp.RuntimeBinder.Semantics.TypeArray,Microsoft.CSharp.RuntimeBinder.Semantics.Expr,byref):this (FullOpts)
         -26 (-1.82 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.Xslt.QilGenerator:CompileCopyOf(System.Xml.Xsl.Xslt.XslNode):System.Xml.Xsl.Qil.QilNode:this (FullOpts)
         -26 (-3.69 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.XsltOld.MessageAction:Execute(System.Xml.Xsl.XsltOld.Processor,System.Xml.Xsl.XsltOld.ActionFrame):this (FullOpts)
         -25 (-1.32 % of base) : System.Text.RegularExpressions.dasm - System.Text.RegularExpressions.RegexLWCGCompiler:FactoryInstanceFromCode(System.String,System.Text.RegularExpressions.RegexTree,int,ubyte):System.Text.RegularExpressions.RegexRunnerFactory:this (FullOpts)
         -24 (-2.73 % of base) : System.Net.WebClient.dasm - System.Net.WebClient:GetValuesToUpload(System.Collections.Specialized.NameValueCollection):ubyte[]:this (FullOpts)
         -24 (-1.94 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.IlGen.XmlILModule:DefineMethod(System.String,System.Type,System.Type[],System.String[],int):System.Reflection.MethodInfo:this (FullOpts)
         -24 (-1.58 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.Xslt.MatcherBuilder:BuildMatcher(System.Xml.Xsl.Qil.QilIterator,System.Collections.Generic.IList`1[System.Xml.Xsl.Xslt.XslNode],System.Xml.Xsl.Qil.QilNode):System.Xml.Xsl.Qil.QilNode:this (FullOpts)
         -23 (-5.09 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.XmlObjectSerializerWriteContext:WriteExtensionISerializableData(System.Runtime.Serialization.XmlWriterDelegator,System.Runtime.Serialization.ISerializableDataNode):this (FullOpts)
         -23 (-3.41 % of base) : System.Private.Xml.dasm - System.Xml.Serialization.XmlCustomFormatter:ToTime(System.String):System.DateTime (FullOpts)
         -22 (-3.99 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.Json.JsonReaderWriterFactory:CreateJsonWriter(System.IO.Stream):System.Xml.XmlDictionaryWriter (FullOpts)
         -22 (-0.31 % of base) : System.Text.Json.dasm - System.Text.Json.Schema.JsonSchemaExporter:MapJsonSchemaCore(byref,System.Text.Json.Serialization.Metadata.JsonTypeInfo,System.Text.Json.Serialization.Metadata.JsonPropertyInfo,System.Text.Json.Serialization.JsonConverter,System.Nullable`1[int],System.Text.Json.Serialization.Metadata.JsonTypeInfo,ubyte,ubyte,System.Nullable`1[System.Collections.Generic.KeyValuePair`2[System.String,System.Text.Json.Schema.JsonSchema]],ubyte):System.Text.Json.Schema.JsonSchema (FullOpts)
         -21 (-6.75 % of base) : System.Security.Cryptography.Xml.dasm - System.Security.Cryptography.Xml.SignedXmlDebugLog:LogBeginCanonicalization(System.Security.Cryptography.Xml.SignedXml,System.Security.Cryptography.Xml.Transform) (FullOpts)
         -21 (-3.80 % of base) : System.Private.Xml.Linq.dasm - System.Xml.Linq.XAttribute:ToString():System.String:this (FullOpts)
         -21 (-1.54 % of base) : System.Private.Xml.dasm - System.Xml.Serialization.XmlSerializationILGen:GenerateGetSerializer(System.Collections.Generic.Dictionary`2[System.String,System.String],System.Xml.Serialization.XmlMapping[],System.Reflection.Emit.TypeBuilder):this (FullOpts)
         -20 (-0.77 % of base) : System.IO.Packaging.dasm - System.IO.Packaging.PartBasedPackageProperties:ParseCorePropertyPart(System.IO.Packaging.PackagePart):this (FullOpts)
         -20 (-7.12 % of base) : System.Web.HttpUtility.dasm - System.Web.Util.HttpEncoder:HtmlAttributeEncode(System.String):System.String (FullOpts)
         -20 (-1.93 % of base) : System.Private.Xml.dasm - System.Xml.XPath.XPathNavigator:get_OuterXml():System.String:this (FullOpts)
         -20 (-2.30 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.XPath.XPathQilFactory:InvokeEqualityOperator(int,System.Xml.Xsl.Qil.QilNode,System.Xml.Xsl.Qil.QilNode):System.Xml.Xsl.Qil.QilNode:this (FullOpts)
         -20 (-2.15 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.XPath.XPathQilFactory:InvokeRelationalOperator(int,System.Xml.Xsl.Qil.QilNode,System.Xml.Xsl.Qil.QilNode):System.Xml.Xsl.Qil.QilNode:this (FullOpts)
         -19 (-3.78 % of base) : System.ComponentModel.Composition.dasm - System.ComponentModel.Composition.ConstraintServices:CreateMetadataOfTypeExpression(System.Linq.Expressions.ParameterExpression,System.String,System.Type):System.Linq.Expressions.MethodCallExpression (FullOpts)
         -19 (-4.39 % of base) : System.ComponentModel.Composition.dasm - System.ComponentModel.Composition.ConstraintServices:CreateMetadataValueEqualsExpression(System.Linq.Expressions.ParameterExpression,System.Object,System.String):System.Linq.Expressions.MethodCallExpression (FullOpts)
         -19 (-2.73 % of base) : System.ComponentModel.Composition.dasm - System.ComponentModel.Composition.ConstraintServices:CreatePartCreatorConstraint(System.Linq.Expressions.Expression`1[System.Func`2[System.ComponentModel.Composition.Primitives.ExportDefinition,ubyte]],System.ComponentModel.Composition.Primitives.ImportDefinition):System.Linq.Expressions.Expression`1[System.Func`2[System.ComponentModel.Composition.Primitives.ExportDefinition,ubyte]] (FullOpts)
         -19 (-10.00 % of base) : System.Private.CoreLib.dasm - System.Reflection.Emit.CustomAttributeBuilder:.ctor(System.Reflection.ConstructorInfo,System.Object[]):this (FullOpts)
         -19 (-2.70 % of base) : System.Runtime.InteropServices.dasm - System.Runtime.InteropServices.Marshalling.ComImportInteropInterfaceDetailsStrategy:EmitIgnoresAccessChecksToAttribute(System.Reflection.Emit.ModuleBuilder):System.Type (FullOpts)
         -19 (-4.25 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.Json.XmlJsonWriter:SetOutput(System.IO.Stream,System.Text.Encoding,ubyte):this (FullOpts)
         -19 (-1.26 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.ReflectionReader:GetCollectionSetItemDelegate[double](System.Runtime.Serialization.DataContracts.CollectionDataContract,System.Object,ubyte):System.Runtime.Serialization.ReflectionReader+CollectionSetItemDelegate (FullOpts)
         -19 (-1.26 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.ReflectionReader:GetCollectionSetItemDelegate[int](System.Runtime.Serialization.DataContracts.CollectionDataContract,System.Object,ubyte):System.Runtime.Serialization.ReflectionReader+CollectionSetItemDelegate (FullOpts)
         -19 (-1.26 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.ReflectionReader:GetCollectionSetItemDelegate[long](System.Runtime.Serialization.DataContracts.CollectionDataContract,System.Object,ubyte):System.Runtime.Serialization.ReflectionReader+CollectionSetItemDelegate (FullOpts)
         -19 (-1.26 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.ReflectionReader:GetCollectionSetItemDelegate[short](System.Runtime.Serialization.DataContracts.CollectionDataContract,System.Object,ubyte):System.Runtime.Serialization.ReflectionReader+CollectionSetItemDelegate (FullOpts)
         -19 (-1.26 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.ReflectionReader:GetCollectionSetItemDelegate[System.Nullable`1[int]](System.Runtime.Serialization.DataContracts.CollectionDataContract,System.Object,ubyte):System.Runtime.Serialization.ReflectionReader+CollectionSetItemDelegate (FullOpts)
         -19 (-1.26 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.ReflectionReader:GetCollectionSetItemDelegate[System.Numerics.Vector`1[float]](System.Runtime.Serialization.DataContracts.CollectionDataContract,System.Object,ubyte):System.Runtime.Serialization.ReflectionReader+CollectionSetItemDelegate (FullOpts)

Top method regressions (percentages):
         417 (13.20 % of base) : System.Net.WebSockets.dasm - System.Net.WebSockets.ManagedWebSocket+<CloseAsyncPrivate>d__69:MoveNext():this (FullOpts)
          10 (10.64 % of base) : System.Private.Xml.dasm - MS.Internal.Xml.XPath.XPathParser:GetAxis():int:this (FullOpts)
           7 (5.38 % of base) : Microsoft.CSharp.dasm - Microsoft.CSharp.RuntimeBinder.Semantics.TypeTable:InsertAggregate(Microsoft.CSharp.RuntimeBinder.Semantics.AggregateSymbol,Microsoft.CSharp.RuntimeBinder.Semantics.AggregateType,Microsoft.CSharp.RuntimeBinder.Semantics.TypeArray,Microsoft.CSharp.RuntimeBinder.Semantics.AggregateType) (FullOpts)
          12 (4.82 % of base) : System.Net.Sockets.dasm - System.Net.Sockets.TcpListener:.ctor(System.Net.IPEndPoint):this (FullOpts)
          12 (3.92 % of base) : System.Net.Sockets.dasm - System.Net.Sockets.SocketPal:Accept(System.Net.Sockets.SafeSocketHandle,System.Memory`1[ubyte],byref,byref):int (FullOpts)
          18 (3.91 % of base) : System.Net.Mail.dasm - System.Net.Mail.SmtpTransport:GetConnection(System.String,int):this (FullOpts)
           5 (3.82 % of base) : Microsoft.CSharp.dasm - Microsoft.CSharp.RuntimeBinder.Semantics.TypeTable:LookupAggregate(Microsoft.CSharp.RuntimeBinder.Semantics.AggregateSymbol,Microsoft.CSharp.RuntimeBinder.Semantics.AggregateType,Microsoft.CSharp.RuntimeBinder.Semantics.TypeArray):Microsoft.CSharp.RuntimeBinder.Semantics.AggregateType (FullOpts)
          12 (3.46 % of base) : System.Net.Mail.dasm - System.Net.Mail.MailMessage:.ctor(System.String,System.String):this (FullOpts)
          11 (3.44 % of base) : System.Net.Security.dasm - System.Net.Security.SslStream:Decrypt(System.Span`1[ubyte],byref,byref):System.Net.SecurityStatusPal:this (FullOpts)
          16 (3.30 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.XmlQueryType:ItemTypeToString(ubyte):System.String:this (FullOpts)
          11 (3.20 % of base) : System.Private.Xml.dasm - System.Xml.Schema.XmlAnyConverter:ChangeType(System.String,System.Type,System.Xml.IXmlNamespaceResolver):System.Object:this (FullOpts)
          12 (3.07 % of base) : System.Net.Sockets.dasm - System.Net.Sockets.TcpListener:.ctor(System.Net.IPAddress,int):this (FullOpts)
          42 (2.78 % of base) : System.DirectoryServices.Protocols.dasm - System.DirectoryServices.Protocols.LdapSessionOptions:ProcessQueryConnection(long,long,long,long,int,ulong,ulong,ulong):int:this (FullOpts)
           6 (2.70 % of base) : Microsoft.Extensions.Logging.Abstractions.dasm - Microsoft.Extensions.Logging.LogValuesFormatter:Format[int](int):System.String:this (FullOpts)
           6 (2.67 % of base) : Microsoft.Extensions.Logging.Abstractions.dasm - Microsoft.Extensions.Logging.LogValuesFormatter:Format[long](long):System.String:this (FullOpts)
           6 (2.65 % of base) : Microsoft.Extensions.Logging.Abstractions.dasm - Microsoft.Extensions.Logging.LogValuesFormatter:Format[short](short):System.String:this (FullOpts)
           6 (2.65 % of base) : Microsoft.Extensions.Logging.Abstractions.dasm - Microsoft.Extensions.Logging.LogValuesFormatter:Format[ubyte](ubyte):System.String:this (FullOpts)
           6 (2.61 % of base) : Microsoft.Extensions.Logging.Abstractions.dasm - Microsoft.Extensions.Logging.LogValuesFormatter:Format[System.Nullable`1[int]](System.Nullable`1[int]):System.String:this (FullOpts)
          12 (2.37 % of base) : System.Formats.Tar.dasm - System.Formats.Tar.PaxTarEntry:.ctor(System.Formats.Tar.TarEntry):this (FullOpts)
          12 (2.03 % of base) : System.Net.Sockets.dasm - System.Net.Sockets.SocketPal:CreateSocket(int,int,int,byref):int (FullOpts)
           4 (1.74 % of base) : Microsoft.Extensions.Logging.Abstractions.dasm - Microsoft.Extensions.Logging.LogValuesFormatter:Format[System.Numerics.Vector`1[float]](System.Numerics.Vector`1[float]):System.String:this (FullOpts)
           3 (1.50 % of base) : System.Net.Http.dasm - System.Net.Http.StreamContent:InitializeContent(System.IO.Stream,int):this (FullOpts)
           1 (1.33 % of base) : System.Private.CoreLib.dasm - System.Number:<UInt32ToDecStrForKnownSmallNumber>g__CreateAndCacheString|47_0(uint):System.String (FullOpts)
          12 (1.24 % of base) : System.Net.Http.dasm - System.Net.Http.HttpClient:HandleFailure(System.Exception,ubyte,System.Net.Http.HttpResponseMessage,System.Threading.CancellationTokenSource,System.Threading.CancellationToken,System.Threading.CancellationTokenSource):this (FullOpts)
           3 (1.16 % of base) : System.Net.Http.dasm - System.Net.Http.StreamContent:.ctor(System.IO.Stream):this (FullOpts)
           1 (1.12 % of base) : System.Private.CoreLib.dasm - System.RuntimeType:GetEnumUnderlyingType():System.Type:this (FullOpts)
           7 (1.08 % of base) : System.Data.Common.dasm - System.Data.DataColumnCollection:Clear():this (FullOpts)
          42 (1.07 % of base) : System.Net.Security.dasm - System.Net.Security.SslStream:SelectClientCertificate():System.Security.Cryptography.X509Certificates.X509Certificate2:this (FullOpts)
          16 (1.06 % of base) : System.Net.Security.dasm - System.Net.Security.SslStream:AcquireServerCredentials(byref):ubyte:this (FullOpts)
           7 (1.04 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.IlGen.IteratorDescriptor:EnsureItemStorageType(System.Xml.Xsl.XmlQueryType,System.Type):this (FullOpts)
           4 (0.97 % of base) : System.Private.CoreLib.dasm - System.Lazy`1[System.Nullable`1[int]]:CreateValue():System.Nullable`1[int]:this (FullOpts)
           2 (0.94 % of base) : System.Net.NameResolution.dasm - System.Net.Dns+<>c__DisplayClass39_0`1[int]:<RunAsync>b__0(System.Threading.Tasks.Task,System.Object):int:this (FullOpts)
           2 (0.94 % of base) : System.Net.NameResolution.dasm - System.Net.Dns+<>c__DisplayClass39_0`1[short]:<RunAsync>b__0(System.Threading.Tasks.Task,System.Object):short:this (FullOpts)
           2 (0.94 % of base) : System.Net.NameResolution.dasm - System.Net.Dns+<>c__DisplayClass39_0`1[ubyte]:<RunAsync>b__0(System.Threading.Tasks.Task,System.Object):ubyte:this (FullOpts)
           2 (0.93 % of base) : System.Net.NameResolution.dasm - System.Net.Dns+<>c__DisplayClass39_0`1[long]:<RunAsync>b__0(System.Threading.Tasks.Task,System.Object):long:this (FullOpts)
           2 (0.93 % of base) : System.Net.NameResolution.dasm - System.Net.Dns+<>c__DisplayClass39_0`1[System.Nullable`1[int]]:<RunAsync>b__0(System.Threading.Tasks.Task,System.Object):System.Nullable`1[int]:this (FullOpts)
          30 (0.93 % of base) : System.Private.Xml.dasm - System.Xml.Serialization.XmlSerializationILGen:GenerateTypedSerializer(System.String,System.String,System.Xml.Serialization.XmlMapping,System.Xml.Serialization.CodeIdentifiers,System.String,System.String,System.String):System.String:this (FullOpts)
           2 (0.93 % of base) : System.Net.NameResolution.dasm - System.Net.Dns+<>c__DisplayClass39_0`1[double]:<RunAsync>b__0(System.Threading.Tasks.Task,System.Object):double:this (FullOpts)
          15 (0.91 % of base) : System.Net.Security.dasm - System.Net.Security.SslStream+<ProcessAuthenticationWithTelemetryAsync>d__154:MoveNext():this (FullOpts)
           2 (0.91 % of base) : System.Net.NameResolution.dasm - System.Net.Dns+<>c__DisplayClass39_0`1[System.__Canon]:<RunAsync>b__0(System.Threading.Tasks.Task,System.Object):System.__Canon:this (FullOpts)
           1 (0.89 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableArray`1[short]:Remove(short):System.Collections.Immutable.ImmutableArray`1[short]:this (FullOpts)
           1 (0.89 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableArray`1[ubyte]:Remove(ubyte):System.Collections.Immutable.ImmutableArray`1[ubyte]:this (FullOpts)
          87 (0.86 % of base) : System.Net.WebSockets.dasm - System.Net.WebSockets.ManagedWebSocket+<ReceiveAsyncPrivate>d__61`1[System.__Canon]:MoveNext():this (FullOpts)
           2 (0.84 % of base) : System.Net.NameResolution.dasm - System.Net.Dns+<>c__DisplayClass39_0`1[System.Numerics.Vector`1[float]]:<RunAsync>b__0(System.Threading.Tasks.Task,System.Object):System.Numerics.Vector`1[float]:this (FullOpts)
           5 (0.76 % of base) : System.Private.Xml.dasm - System.Xml.XmlTextReaderImpl:ThrowTagMismatch(System.Xml.XmlTextReaderImpl+NodeData):this (FullOpts)
          18 (0.75 % of base) : System.Data.Common.dasm - System.Data.NewDiffgramGen:GenerateTableErrors(System.Data.DataTable):this (FullOpts)
           4 (0.68 % of base) : System.IO.Pipelines.dasm - System.IO.Pipelines.Pipe:PrepareFlushUnsynchronized(byref,byref,System.Threading.CancellationToken):this (FullOpts)
           2 (0.64 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.Xslt.QilGenerator:GetCurrentPosition():System.Xml.Xsl.Qil.QilNode:this (FullOpts)
           4 (0.61 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.SpoolingTask+<>c__DisplayClass1_0`2[double,System.Nullable`1[int]]:<SpoolPipeline>b__0():this (FullOpts)
           4 (0.61 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.SpoolingTask+<>c__DisplayClass1_0`2[int,System.Nullable`1[int]]:<SpoolPipeline>b__0():this (FullOpts)
           4 (0.61 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.SpoolingTask+<>c__DisplayClass1_0`2[long,System.Nullable`1[int]]:<SpoolPipeline>b__0():this (FullOpts)
           4 (0.61 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.SpoolingTask+<>c__DisplayClass1_0`2[short,System.Nullable`1[int]]:<SpoolPipeline>b__0():this (FullOpts)
           4 (0.61 % 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)
           4 (0.61 % 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)
           4 (0.61 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.SpoolingTask+<>c__DisplayClass1_0`2[ubyte,System.Nullable`1[int]]:<SpoolPipeline>b__0():this (FullOpts)
           6 (0.57 % of base) : System.Private.CoreLib.dasm - System.IO.BufferedStream:ReadAsync(ubyte[],int,int,System.Threading.CancellationToken):System.Threading.Tasks.Task`1[int]:this (FullOpts)
           5 (0.57 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.Runtime.XmlQueryRuntime:CreateXmlType(System.Xml.XPath.XPathItem):System.Xml.Xsl.XmlQueryType (FullOpts)
           4 (0.54 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.SpoolingTask+<>c__DisplayClass2_0`2[double,System.Nullable`1[int]]:<SpoolForAll>b__0():this (FullOpts)
           4 (0.54 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.SpoolingTask+<>c__DisplayClass2_0`2[int,System.Nullable`1[int]]:<SpoolForAll>b__0():this (FullOpts)
           4 (0.54 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.SpoolingTask+<>c__DisplayClass2_0`2[long,System.Nullable`1[int]]:<SpoolForAll>b__0():this (FullOpts)
           4 (0.54 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.SpoolingTask+<>c__DisplayClass2_0`2[short,System.Nullable`1[int]]:<SpoolForAll>b__0():this (FullOpts)
           4 (0.54 % 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)
           4 (0.54 % 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)
           4 (0.54 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.SpoolingTask+<>c__DisplayClass2_0`2[ubyte,System.Nullable`1[int]]:<SpoolForAll>b__0():this (FullOpts)
           5 (0.51 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.XPath.XPathQilFactory:ConvertToBoolean(System.Xml.Xsl.Qil.QilNode):System.Xml.Xsl.Qil.QilNode:this (FullOpts)
           4 (0.49 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.SpoolingTask+<>c__DisplayClass0_0`2[double,System.Nullable`1[int]]:<SpoolStopAndGo>b__0():this (FullOpts)
           4 (0.49 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.SpoolingTask+<>c__DisplayClass0_0`2[int,System.Nullable`1[int]]:<SpoolStopAndGo>b__0():this (FullOpts)
           4 (0.49 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.SpoolingTask+<>c__DisplayClass0_0`2[long,System.Nullable`1[int]]:<SpoolStopAndGo>b__0():this (FullOpts)
           4 (0.49 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.SpoolingTask+<>c__DisplayClass0_0`2[short,System.Nullable`1[int]]:<SpoolStopAndGo>b__0():this (FullOpts)
           4 (0.49 % 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)
           4 (0.49 % 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)
           4 (0.49 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.SpoolingTask+<>c__DisplayClass0_0`2[ubyte,System.Nullable`1[int]]:<SpoolStopAndGo>b__0():this (FullOpts)
           2 (0.47 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.Xslt.QilGenerator:CompileLangToLcid(System.Xml.Xsl.Qil.QilNode,ubyte):System.Xml.Xsl.Qil.QilNode:this (FullOpts)
           4 (0.44 % 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)
          24 (0.43 % of base) : System.Private.Xml.dasm - System.Xml.Serialization.XmlSerializationWriterILGen:GenerateMembersElement(System.Xml.Serialization.XmlMembersMapping):System.String:this (FullOpts)
           4 (0.40 % of base) : System.Private.Xml.dasm - System.Xml.XmlTextWriter:AutoComplete(int):this (FullOpts)
           3 (0.34 % of base) : System.Net.Http.dasm - System.Net.Http.HttpConnectionBase:MarkConnectionAsEstablished(System.Diagnostics.Activity,System.Net.IPEndPoint):this (FullOpts)
           1 (0.30 % of base) : System.Net.WebSockets.dasm - System.Net.WebSockets.ManagedWebSocket:CloseAsync(int,System.String,System.Threading.CancellationToken):System.Threading.Tasks.Task:this (FullOpts)
           1 (0.29 % of base) : System.Data.Common.dasm - System.Data.SqlTypes.SqlSingle:Parse(System.String):System.Data.SqlTypes.SqlSingle (FullOpts)
           1 (0.28 % of base) : System.Data.Common.dasm - System.Data.SqlTypes.SqlDouble:Parse(System.String):System.Data.SqlTypes.SqlDouble (FullOpts)
           6 (0.28 % of base) : System.Net.Http.dasm - System.Net.Http.Http3RequestStream:BufferHeaders(System.Net.Http.HttpRequestMessage):this (FullOpts)
           2 (0.28 % of base) : System.ComponentModel.TypeConverter.dasm - System.ComponentModel.TypeDescriptor:Refresh(System.Type) (FullOpts)
           1 (0.28 % of base) : System.Private.Xml.dasm - System.Xml.Schema.XsdBuilder:GetNextState(System.String,System.String):ubyte:this (FullOpts)
           3 (0.27 % of base) : System.Net.Quic.dasm - System.Net.Quic.MsQuicConfiguration:Create(System.Net.Quic.QuicClientConnectionOptions):System.Net.Quic.MsQuicConfigurationSafeHandle (FullOpts)
           3 (0.26 % of base) : System.Private.CoreLib.dasm - System.Runtime.Intrinsics.Vector64`1[int]:ToString(System.String,System.IFormatProvider):System.String:this (FullOpts)
           3 (0.23 % of base) : System.Net.Sockets.dasm - System.Net.Sockets.Socket:SendTo(ubyte[],int,int,int,System.Net.EndPoint):int:this (FullOpts)
           3 (0.23 % of base) : System.Data.Common.dasm - System.Data.NewDiffgramGen:GenerateRow(System.Data.DataRow):this (FullOpts)
           1 (0.23 % of base) : System.Configuration.ConfigurationManager.dasm - System.Configuration.ProviderSettings:.ctor():this (FullOpts)
           3 (0.22 % of base) : System.Private.CoreLib.dasm - System.TimeZoneInfo+StringSerializer:GetNextAdjustmentRuleValue():System.TimeZoneInfo+AdjustmentRule:this (FullOpts)
           1 (0.22 % of base) : System.Net.WebSockets.dasm - System.Net.WebSockets.ManagedWebSocket:ReceiveAsync(System.Memory`1[ubyte],System.Threading.CancellationToken):System.Threading.Tasks.ValueTask`1[System.Net.WebSockets.ValueWebSocketReceiveResult]:this (FullOpts)
           1 (0.21 % of base) : System.Configuration.ConfigurationManager.dasm - System.Configuration.ProtectedConfigurationSection:.cctor() (FullOpts)
           9 (0.20 % of base) : System.Private.Xml.dasm - System.Xml.Schema.XmlAnyConverter:ChangeType(System.Object,System.Type,System.Xml.IXmlNamespaceResolver):System.Object:this (FullOpts)
           2 (0.20 % of base) : System.Net.Sockets.dasm - System.Net.Sockets.Socket:Receive(ubyte[],int,int,int,byref):int:this (FullOpts)
           1 (0.19 % of base) : System.Reflection.Metadata.dasm - System.Reflection.Metadata.Ecma335.StringHeap:GetVirtualHandleMemoryBlock(System.Reflection.Metadata.StringHandle):System.Reflection.Internal.MemoryBlock:this (FullOpts)
           1 (0.17 % of base) : System.Configuration.ConfigurationManager.dasm - System.Configuration.ConnectionStringSettings:.cctor() (FullOpts)
           8 (0.17 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.Json.JsonFormatReaderGenerator+CriticalHelper:ReadCollection(System.Runtime.Serialization.DataContracts.CollectionDataContract):this (FullOpts)
           2 (0.17 % of base) : System.Net.Sockets.dasm - System.Net.Sockets.Socket:Send(ubyte[],int,int,int,byref):int:this (FullOpts)
           4 (0.16 % of base) : System.Text.RegularExpressions.dasm - System.Text.RegularExpressions.RegexCache:Add(System.Text.RegularExpressions.RegexCache+Key,System.Text.RegularExpressions.Regex) (FullOpts) (2 methods)
           1 (0.16 % of base) : System.Net.Quic.dasm - System.Net.Quic.MsQuicConfiguration:GetCachedCredentialOrCreate(Microsoft.Quic.QUIC_SETTINGS,int,System.Security.Cryptography.X509Certificates.X509Certificate,System.Collections.ObjectModel.ReadOnlyCollection`1[System.Security.Cryptography.X509Certificates.X509Certificate2],System.Collections.Generic.List`1[System.Net.Security.SslApplicationProtocol],int):System.Net.Quic.MsQuicConfigurationSafeHandle (FullOpts)
           1 (0.13 % of base) : System.Net.WebSockets.dasm - System.Net.WebSockets.ManagedWebSocket:ReceiveAsync(System.ArraySegment`1[ubyte],System.Threading.CancellationToken):System.Threading.Tasks.Task`1[System.Net.WebSockets.WebSocketReceiveResult]:this (FullOpts)

Top method improvements (percentages):
         -12 (-21.43 % of base) : System.Net.Mail.dasm - System.Net.Mime.ContentDisposition:GetHashCode():int:this (FullOpts)
         -12 (-21.43 % of base) : System.Net.Mail.dasm - System.Net.Mime.ContentType:GetHashCode():int:this (FullOpts)
         -17 (-20.48 % of base) : Microsoft.Extensions.DependencyModel.dasm - Microsoft.Extensions.DependencyModel.Resolution.DotNetReferenceAssembliesPathResolver:Resolve():System.String (FullOpts)
         -12 (-18.18 % of base) : System.ComponentModel.TypeConverter.dasm - System.ComponentModel.WeakHashtable:.ctor():this (FullOpts)
         -12 (-17.39 % of base) : System.Net.Sockets.dasm - System.Net.NetEventSource:ConnectedAsyncDns(System.Net.Sockets.Socket) (FullOpts)
         -14 (-16.87 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.Json.XmlJsonWriter+JsonNodeWriter:.ctor():this (FullOpts)
         -14 (-16.87 % of base) : System.Private.DataContractSerialization.dasm - System.Xml.XmlUTF8NodeWriter:.ctor():this (FullOpts)
          -9 (-16.36 % of base) : System.Private.CoreLib.dasm - System.Enum:InternalGetUnderlyingType(System.RuntimeType):System.RuntimeType (FullOpts)
         -13 (-15.85 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.XmlQueryTypeFactory+SequenceType:.cctor() (FullOpts)
          -9 (-15.52 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.XmlQueryType:get_IsNode():ubyte:this (FullOpts)
          -9 (-14.52 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.XmlQueryType:get_IsAtomicValue():ubyte:this (FullOpts)
         -12 (-14.46 % of base) : System.ComponentModel.TypeConverter.dasm - System.ComponentModel.TypeDescriptor+<>c:<get_AssociationTable>b__27_0():System.ComponentModel.WeakHashtable:this (FullOpts)
        -111 (-13.59 % of base) : System.Formats.Tar.dasm - System.Formats.Tar.TarHeader:ReadPosixAndGnuSharedAttributes(System.ReadOnlySpan`1[ubyte]):this (FullOpts)
         -18 (-12.86 % of base) : System.Net.WebClient.dasm - System.Net.WebClient:UrlEncode(System.String):System.String (FullOpts)
         -18 (-12.86 % of base) : System.Security.Cryptography.Xml.dasm - System.Security.Cryptography.Xml.SignedXmlDebugLog:LogVerificationFailure(System.Security.Cryptography.Xml.SignedXml,System.String) (FullOpts)
         -18 (-12.86 % of base) : System.Web.HttpUtility.dasm - System.Web.HttpUtility:UrlEncode(System.String):System.String (FullOpts)
        -110 (-11.89 % of base) : System.Net.Mail.dasm - System.Net.Mail.CheckCommand:BeginSend(System.Net.Mail.SmtpConnection,System.AsyncCallback,System.Object):System.IAsyncResult (FullOpts)
         -18 (-11.69 % of base) : System.Text.Json.dasm - System.Text.Json.Schema.JsonSchema:EnsureMutable(byref) (FullOpts)
         -12 (-11.54 % of base) : System.Net.Http.dasm - System.Net.NetEventSource:ContentNull(System.Object) (FullOpts)
         -12 (-11.01 % of base) : System.ComponentModel.Composition.dasm - System.ComponentModel.Composition.Primitives.CompositionElement:.ctor(System.Object):this (FullOpts)
         -12 (-10.81 % of base) : System.Private.CoreLib.dasm - System.IO.File:CreateText(System.String):System.IO.StreamWriter (FullOpts)
        -774 (-10.79 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.DataContract+DataContractCriticalHelper:TryCreateBuiltInDataContract(System.String,System.String,byref):ubyte (FullOpts)
         -18 (-10.78 % of base) : Microsoft.VisualBasic.Core.dasm - Microsoft.VisualBasic.CompilerServices.NewLateBinding:FallbackSetComplex(System.Object,System.String,System.Object[],ubyte,ubyte) (FullOpts)
         -18 (-10.78 % of base) : System.ComponentModel.Composition.dasm - System.ComponentModel.Composition.Primitives.CompositionElementExtensions:ToElementCore(System.Object):System.ComponentModel.Composition.Primitives.ICompositionElement (FullOpts)
         -18 (-10.71 % of base) : System.Net.Mail.dasm - System.Net.Mail.SendMailAsyncResult:SendMailFrom():this (FullOpts)
         -12 (-10.53 % of base) : System.Private.CoreLib.dasm - System.IO.File:AppendText(System.String):System.IO.StreamWriter (FullOpts)
         -18 (-10.47 % of base) : System.Net.Mail.dasm - System.Net.Mail.SmtpConnection+ConnectAndHandshakeAsyncResult:SendHello():ubyte:this (FullOpts)
         -12 (-10.17 % of base) : System.Private.CoreLib.dasm - System.Runtime.CompilerServices.AsyncMethodBuilderCore:LogTraceOperationBegin(System.Threading.Tasks.Task,System.Type) (FullOpts)
        -157 (-10.14 % of base) : System.Net.HttpListener.dasm - System.Net.HttpListenerResponse:SendHeaders(ubyte,System.IO.MemoryStream,ubyte):this (FullOpts)
         -12 (-10.08 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.FastInvokerBuilder:GetMakeNewInstanceFunc(System.Type):System.Func`1[System.Object] (FullOpts)
         -16 (-10.00 % of base) : System.CodeDom.dasm - System.CodeDom.Compiler.CompilerParameters:get_TempFiles():System.CodeDom.Compiler.TempFileCollection:this (FullOpts)
         -19 (-10.00 % of base) : System.Private.CoreLib.dasm - System.Reflection.Emit.CustomAttributeBuilder:.ctor(System.Reflection.ConstructorInfo,System.Object[]):this (FullOpts)
         -12 (-9.92 % of base) : System.Configuration.ConfigurationManager.dasm - System.Diagnostics.FilterElement:GetRuntimeObject():System.Diagnostics.TraceFilter:this (FullOpts)
         -12 (-9.92 % of base) : System.Private.CoreLib.dasm - System.IO.FileInfo:CreateText():System.IO.StreamWriter:this (FullOpts)
         -12 (-9.68 % of base) : System.Private.CoreLib.dasm - System.IO.FileInfo:AppendText():System.IO.StreamWriter:this (FullOpts)
         -12 (-9.68 % of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.XmlKeyHelper+ParseState+Functions:GetElements(System.Object):System.Collections.IEnumerable (FullOpts)
         -29 (-9.57 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.IlGen.XmlILModule:CreateLREModule():System.Reflection.Emit.ModuleBuilder (FullOpts)
        -236 (-9.45 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.Xslt.QilGenerator:MatchCountPattern(System.Xml.Xsl.Qil.QilNode,System.Xml.Xsl.Qil.QilIterator):System.Xml.Xsl.Qil.QilNode:this (FullOpts)
         -13 (-8.78 % of base) : System.Text.RegularExpressions.dasm - System.Text.RegularExpressions.Symbolic.UnicodeCategoryConditions:GetCategory(int):System.Text.RegularExpressions.Symbolic.BDD (FullOpts)
         -97 (-8.50 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.Json.JsonXmlDataContract:WriteJsonValueCore(System.Runtime.Serialization.XmlWriterDelegator,System.Object,System.Runtime.Serialization.Json.XmlObjectSerializerWriteContextComplexJson,System.RuntimeTypeHandle):this (FullOpts)
         -12 (-8.39 % of base) : System.Private.CoreLib.dasm - System.CodeDom.Compiler.IndentedTextWriter:.ctor(System.IO.TextWriter,System.String):this (FullOpts)
         -10 (-8.33 % of base) : System.Net.Http.dasm - System.Net.Http.HttpConnectionPool:Trace(System.String,System.String):this (FullOpts)
         -18 (-8.18 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.XmlObjectSerializerWriteContext:WriteTypeInfo(System.Runtime.Serialization.XmlWriterDelegator,System.Xml.XmlDictionaryString,System.Xml.XmlDictionaryString):this (FullOpts)
         -12 (-8.16 % of base) : System.Configuration.ConfigurationManager.dasm - System.Configuration.BaseConfigurationRecord:HlAddChild(System.String,System.Configuration.BaseConfigurationRecord):this (FullOpts)
         -68 (-8.16 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.XmlObjectSerializer:WriteObject(System.IO.Stream,System.Object):this (FullOpts)
         -12 (-8.05 % of base) : System.Runtime.Caching.dasm - System.Runtime.Caching.FileChangeNotificationSystem:.ctor():this (FullOpts)
         -12 (-8.00 % of base) : System.Net.Mail.dasm - System.Net.Mime.ContentDisposition:get_Parameters():System.Collections.Specialized.StringDictionary:this (FullOpts)
         -34 (-7.83 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.XmlQueryTypeFactory+ItemType:Create(int,System.Xml.Xsl.XmlQualifiedNameTest,System.Xml.Schema.XmlSchemaType,ubyte):System.Xml.Xsl.XmlQueryType (FullOpts)
         -18 (-7.50 % of base) : System.Private.CoreLib.dasm - System.Threading.Tasks.SynchronizationContextAwaitTaskContinuation:PostAction(System.Object) (FullOpts)
         -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.AsmxCharDataContract:.ctor():this (FullOpts)
         -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.AsmxGuidDataContract:.ctor():this (FullOpts)
         -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.BooleanDataContract:.ctor():this (FullOpts)
         -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.ByteArrayDataContract:.ctor():this (FullOpts)
         -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.CharDataContract:.ctor():this (FullOpts)
         -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.DateDataContract:.ctor():this (FullOpts)
         -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.DateTimeDataContract:.ctor():this (FullOpts)
         -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.DecimalDataContract:.ctor():this (FullOpts)
         -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.DoubleDataContract:.ctor():this (FullOpts)
         -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.ENTITIESDataContract:.ctor():this (FullOpts)
         -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.ENTITYDataContract:.ctor():this (FullOpts)
         -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.FloatDataContract:.ctor():this (FullOpts)
         -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.GDayDataContract:.ctor():this (FullOpts)
         -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.GMonthDataContract:.ctor():this (FullOpts)
         -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.GMonthDayDataContract:.ctor():this (FullOpts)
         -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.GuidDataContract:.ctor():this (FullOpts)
         -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.GYearDataContract:.ctor():this (FullOpts)
         -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.GYearMonthDataContract:.ctor():this (FullOpts)
         -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.HexBinaryDataContract:.ctor():this (FullOpts)
         -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.IDDataContract:.ctor():this (FullOpts)
         -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.IDREFDataContract:.ctor():this (FullOpts)
         -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.IDREFSDataContract:.ctor():this (FullOpts)
         -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.IntDataContract:.ctor():this (FullOpts)
         -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.IntegerDataContract:.ctor():this (FullOpts)
         -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.LanguageDataContract:.ctor():this (FullOpts)
         -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.LongDataContract:.ctor():this (FullOpts)
         -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.NameDataContract:.ctor():this (FullOpts)
         -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.NCNameDataContract:.ctor():this (FullOpts)
         -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.NegativeIntegerDataContract:.ctor():this (FullOpts)
         -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.NMTOKENDataContract:.ctor():this (FullOpts)
         -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.NMTOKENSDataContract:.ctor():this (FullOpts)
         -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.NonNegativeIntegerDataContract:.ctor():this (FullOpts)
         -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.NonPositiveIntegerDataContract:.ctor():this (FullOpts)
         -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.NormalizedStringDataContract:.ctor():this (FullOpts)
         -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.ObjectDataContract:.ctor():this (FullOpts)
         -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.PositiveIntegerDataContract:.ctor():this (FullOpts)
         -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.QNameDataContract:.ctor():this (FullOpts)
         -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.ShortDataContract:.ctor():this (FullOpts)
         -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.SignedByteDataContract:.ctor():this (FullOpts)
         -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.StringDataContract:.ctor():this (FullOpts)
         -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.TimeDataContract:.ctor():this (FullOpts)
         -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.TimeSpanDataContract:.ctor():this (FullOpts)
         -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.TokenDataContract:.ctor():this (FullOpts)
         -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.UnsignedByteDataContract:.ctor():this (FullOpts)
         -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.UnsignedIntDataContract:.ctor():this (FullOpts)
         -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.UnsignedLongDataContract:.ctor():this (FullOpts)
         -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.UnsignedShortDataContract:.ctor():this (FullOpts)
         -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.UriDataContract:.ctor():this (FullOpts)
         -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.XsDurationDataContract:.ctor():this (FullOpts)
         -12 (-7.14 % of base) : System.Composition.Hosting.dasm - System.Composition.Hosting.Providers.CurrentScope.CurrentScopeExportDescriptorProvider+<>c:<GetExportDescriptors>b__1_0(System.Collections.Generic.IEnumerable`1[System.Composition.Hosting.Core.CompositionDependency]):System.Composition.Hosting.Core.ExportDescriptor:this (FullOpts)
         -20 (-7.12 % of base) : System.Web.HttpUtility.dasm - System.Web.Util.HttpEncoder:HtmlAttributeEncode(System.String):System.String (FullOpts)

841 total methods with Code Size differences (728 improved, 113 regressed), 231696 unchanged.

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

Artifacts:

@MihuBot
Copy link
Owner Author

MihuBot commented Oct 17, 2024

Top method regressions

42 (2.78 % of base) - System.DirectoryServices.Protocols.LdapSessionOptions:ProcessQueryConnection(long,long,long,long,int,ulong,ulong,ulong):int:this
 ; Assembly listing for method System.DirectoryServices.Protocols.LdapSessionOptions:ProcessQueryConnection(long,long,long,long,int,ulong,ulong,ulong):int:this (FullOpts)
 ; Emitting BLENDED_CODE for X64 with AVX - Unix
 ; FullOpts code
 ; optimized code
 ; rbp based frame
 ; fully interruptible
 ; No PGO data
-; 0 inlinees with PGO data; 20 single block inlinees; 15 inlinees without PGO data
+; 0 inlinees with PGO data; 26 single block inlinees; 17 inlinees without PGO data
 ; Final local variable assignments
 ;
 ;  V00 this         [V00,T00] (  8,  5.50)     ref  ->  rbx         this class-hnd single-def <System.DirectoryServices.Protocols.LdapSessionOptions>
 ;* V01 arg1         [V01    ] (  0,  0   )    long  ->  zero-ref    single-def
 ;  V02 arg2         [V02,T02] (  7,  4.50)    long  ->  r15         single-def
 ;  V03 arg3         [V03,T04] (  4,  3   )    long  ->  rcx         single-def
 ;  V04 arg4         [V04,T05] (  3,  2.50)    long  ->  r14         single-def
 ;  V05 arg5         [V05,T06] (  3,  2.50)     int  ->  r13         single-def
-;  V06 arg6         [V06,T58] (  1,  0.50)    long  ->  [rbp+0x10]  single-def
-;  V07 arg7         [V07,T55] (  2,  1   )    long  ->  [rbp+0x18]  single-def
+;  V06 arg6         [V06,T61] (  1,  0.50)    long  ->  [rbp+0x10]  single-def
+;  V07 arg7         [V07,T57] (  2,  1   )    long  ->  [rbp+0x18]  single-def
 ;  V08 arg8         [V08,T49] (  2,  1.50)    long  ->  r12         single-def
-;  V09 loc0         [V09,T31] (  3,  2   )     ref  ->  [rbp-0x78]  class-hnd <System.String>
+;  V09 loc0         [V09,T32] (  3,  2   )     ref  ->  [rbp-0x78]  class-hnd <System.String>
 ;* V10 loc1         [V10    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact single-def <System.DirectoryServices.Protocols.LdapDirectoryIdentifier>
-;  V11 loc2         [V11,T54] (  2,  1   )     ref  ->  r13         class-hnd single-def <System.Net.NetworkCredential>
+;  V11 loc2         [V11,T54] (  2,  1   )     ref  ->  r14         class-hnd single-def <System.Net.NetworkCredential>
 ;  V12 loc3         [V12,T07] (  8,  4   )     ref  ->  [rbp-0x80]  class-hnd <System.DirectoryServices.Protocols.LdapConnection>
 ;* V13 loc4         [V13    ] (  0,  0   )    long  ->  zero-ref   
-;  V14 loc5         [V14,T23] (  5,  2.50)     ref  ->  rbx         class-hnd single-def <System.DirectoryServices.Protocols.LdapConnection>
-;  V15 loc6         [V15    ] ( 23, 11.50)  struct (40) [rbp-0x50]  do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Runtime.CompilerServices.DefaultInterpolatedStringHandler>
+;  V14 loc5         [V14,T24] (  5,  2.50)     ref  ->  rbx         class-hnd single-def <System.DirectoryServices.Protocols.LdapConnection>
+;  V15 loc6         [V15    ] ( 27, 13.50)  struct (40) [rbp-0x50]  do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Runtime.CompilerServices.DefaultInterpolatedStringHandler>
 ;  V16 loc7         [V16,T53] (  4,  1   )     ref  ->  [rbp-0x88]  class-hnd exact EH-live spill-single-def <System.Object>
 ;  V17 loc8         [V17    ] (  5,  2   )   ubyte  ->  [rbp-0x58]  do-not-enreg[X] must-init addr-exposed ld-addr-op
-;  V18 loc9         [V18,T24] (  5,  2.50)     ref  ->  [rbp-0x90]  class-hnd spill-single-def <System.WeakReference>
+;  V18 loc9         [V18,T25] (  5,  2.50)     ref  ->  [rbp-0x90]  class-hnd spill-single-def <System.WeakReference>
 ;  V19 OutArgs      [V19    ] (  1,  1   )  struct ( 8) [rsp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-;  V20 tmp1         [V20,T14] (  3,  3   )     ref  ->  r14         class-hnd exact single-def "NewObj constructor temp" <System.DirectoryServices.Protocols.LdapDirectoryIdentifier>
+;  V20 tmp1         [V20,T14] (  3,  3   )     ref  ->  r13         class-hnd exact single-def "NewObj constructor temp" <System.DirectoryServices.Protocols.LdapDirectoryIdentifier>
 ;* V21 tmp2         [V21    ] (  0,  0   )    long  ->  zero-ref    "impAppendStmt"
 ;  V22 tmp3         [V22,T15] (  3,  3   )     ref  ->  rax         class-hnd exact single-def "Single-def Box Helper" <System.IntPtr>
-;  V23 tmp4         [V23,T32] (  2,  2   )     ref  ->  rdi         class-hnd exact single-def "impImportAndPushBox" <System.Collections.Hashtable>
-;  V24 tmp5         [V24,T33] (  2,  2   )     ref  ->  [rbp-0x98]  class-hnd spill-single-def "impAppendStmt" <System.DirectoryServices.Protocols.LdapDirectoryIdentifier>
-;  V25 tmp6         [V25,T34] (  2,  2   )     ref  ->  [rbp-0xA0]  class-hnd spill-single-def "impAppendStmt" <System.Net.NetworkCredential>
-;  V26 tmp7         [V26,T16] (  3,  3   )     ref  ->  [rbp-0xA8]  class-hnd exact spill-single-def "NewObj constructor temp" <System.DirectoryServices.Protocols.LdapConnection>
-;  V27 tmp8         [V27,T39] (  2,  2   )     int  ->  [rbp-0x5C]  spill-single-def "finalizable newobj spill"
-;  V28 tmp9         [V28,T17] (  3,  3   )     ref  ->  [rbp-0xB0]  class-hnd exact spill-single-def "Single-def Box Helper" <System.IntPtr>
-;  V29 tmp10        [V29,T35] (  2,  2   )     ref  ->  [rbp-0xB8]  class-hnd exact spill-single-def "impImportAndPushBox" <System.Collections.Hashtable>
-;  V30 tmp11        [V30,T08] (  4,  4   )     ref  ->  r15         class-hnd exact single-def "NewObj constructor temp" <System.WeakReference>
-;  V31 tmp12        [V31,T18] (  3,  3   )     ref  ->  rax         class-hnd exact single-def "Single-def Box Helper" <System.IntPtr>
-;  V32 tmp13        [V32,T36] (  2,  2   )     ref  ->  rdi         class-hnd exact single-def "impImportAndPushBox" <System.Collections.Hashtable>
-;* V33 tmp14        [V33    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.DirectoryServices.Protocols.ReferralCallback>
-;* V34 tmp15        [V34    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "impAppendStmt" <System.Buffers.SharedArrayPool`1[ushort]>
-;  V35 tmp16        [V35,T03] (  5,  5   )     ref  ->  rax         class-hnd single-def "dup spill" <ushort[]>
-;* V36 tmp17        [V36    ] (  0,  0   )     ref  ->  zero-ref    class-hnd single-def "Inline stloc first use temp" <ushort[]>
-;* V37 tmp18        [V37    ] (  0,  0   )     int  ->  zero-ref    "Inline return value spill temp"
-;* V38 tmp19        [V38    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.Span`1[ushort]>
-;  V39 tmp20        [V39,T01] (  7,  7   )     ref  ->  r14         class-hnd exact single-def "Inlining Arg" <System.String>
-;* V40 tmp21        [V40    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.Span`1[ushort]>
-;  V41 tmp22        [V41,T09] (  4,  4   )     int  ->  rdi         "Inlining Arg"
-;* V42 tmp23        [V42    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.Span`1[ushort]>
-;  V43 tmp24        [V43,T37] (  2,  2   )   byref  ->  rax         single-def "Inlining Arg"
-;  V44 tmp25        [V44,T40] (  2,  2   )     int  ->  rsi         "Inlining Arg"
-;* V45 tmp26        [V45,T59] (  0,  0   )   ubyte  ->  zero-ref    "Inline stloc first use temp"
-;* V46 tmp27        [V46    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.Span`1[ushort]>
-;* V47 tmp28        [V47    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
-;* V48 tmp29        [V48    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
-;* V49 tmp30        [V49    ] (  0,  0   )    long  ->  zero-ref    "Inlining Arg"
-;* V50 tmp31        [V50    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.Span`1[ushort]>
-;  V51 tmp32        [V51,T10] (  4,  4   )     int  ->  rdi         "Inlining Arg"
-;* V52 tmp33        [V52    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.Span`1[ushort]>
-;  V53 tmp34        [V53,T38] (  2,  2   )   byref  ->  r14         single-def "Inlining Arg"
-;  V54 tmp35        [V54,T41] (  2,  2   )     int  ->  rsi         "Inlining Arg"
-;* V55 tmp36        [V55,T60] (  0,  0   )   ubyte  ->  zero-ref    "Inline stloc first use temp"
-;* V56 tmp37        [V56    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.Span`1[ushort]>
-;* V57 tmp38        [V57    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
-;* V58 tmp39        [V58    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
-;  V59 tmp40        [V59,T19] (  3,  3   )     ref  ->  r13         class-hnd exact single-def "Inlining Arg" <System.String>
-;* V60 tmp41        [V60    ] (  0,  0   )     ref  ->  zero-ref    single-def
-;  V61 tmp42        [V61,T20] (  3,  3   )     ref  ->  [rbp-0xC0]  class-hnd exact spill-single-def "dup spill" <System.String[]>
-;* V62 tmp43        [V62    ] (  0,  0   )     ref  ->  zero-ref   
-;  V63 tmp44        [V63,T43] (  3,  1.50)     ref  ->  rsi        
-;* V64 tmp45        [V64    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <System.DirectoryServices.Protocols.LdapConnection>
-;* V65 tmp46        [V65    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <System.DirectoryServices.Protocols.LdapConnection>
-;* V66 tmp47        [V66    ] (  0,  0   )     ref  ->  zero-ref   
+;  V23 tmp4         [V23,T33] (  2,  2   )     ref  ->  [rbp-0x98]  class-hnd spill-single-def "impAppendStmt" <System.DirectoryServices.Protocols.LdapDirectoryIdentifier>
+;  V24 tmp5         [V24,T34] (  2,  2   )     ref  ->  [rbp-0xA0]  class-hnd spill-single-def "impAppendStmt" <System.Net.NetworkCredential>
+;  V25 tmp6         [V25,T16] (  3,  3   )     ref  ->  [rbp-0xA8]  class-hnd exact spill-single-def "NewObj constructor temp" <System.DirectoryServices.Protocols.LdapConnection>
+;  V26 tmp7         [V26,T37] (  2,  2   )     int  ->  [rbp-0x5C]  spill-single-def "finalizable newobj spill"
+;  V27 tmp8         [V27,T17] (  3,  3   )     ref  ->  [rbp-0xB0]  class-hnd exact spill-single-def "Single-def Box Helper" <System.IntPtr>
+;  V28 tmp9         [V28,T08] (  4,  4   )     ref  ->  r15         class-hnd exact single-def "NewObj constructor temp" <System.WeakReference>
+;  V29 tmp10        [V29,T18] (  3,  3   )     ref  ->  rax         class-hnd exact single-def "Single-def Box Helper" <System.IntPtr>
+;* V30 tmp11        [V30    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.DirectoryServices.Protocols.ReferralCallback>
+;* V31 tmp12        [V31    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "impAppendStmt" <System.Buffers.SharedArrayPool`1[ushort]>
+;  V32 tmp13        [V32,T03] (  5,  5   )     ref  ->  rax         class-hnd single-def "dup spill" <ushort[]>
+;* V33 tmp14        [V33    ] (  0,  0   )     ref  ->  zero-ref    class-hnd single-def "Inline stloc first use temp" <ushort[]>
+;* V34 tmp15        [V34    ] (  0,  0   )     int  ->  zero-ref    "Inline return value spill temp"
+;* V35 tmp16        [V35    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.Span`1[ushort]>
+;  V36 tmp17        [V36,T01] (  7,  7   )     ref  ->  r14         class-hnd exact single-def "Inlining Arg" <System.String>
+;* V37 tmp18        [V37    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.Span`1[ushort]>
+;  V38 tmp19        [V38,T09] (  4,  4   )     int  ->  rdi         "Inlining Arg"
+;* V39 tmp20        [V39    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.Span`1[ushort]>
+;  V40 tmp21        [V40,T35] (  2,  2   )   byref  ->  rax         single-def "Inlining Arg"
+;  V41 tmp22        [V41,T38] (  2,  2   )     int  ->  rsi         "Inlining Arg"
+;* V42 tmp23        [V42,T62] (  0,  0   )   ubyte  ->  zero-ref    "Inline stloc first use temp"
+;* V43 tmp24        [V43    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.Span`1[ushort]>
+;* V44 tmp25        [V44    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
+;* V45 tmp26        [V45    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
+;* V46 tmp27        [V46    ] (  0,  0   )    long  ->  zero-ref    "Inlining Arg"
+;* V47 tmp28        [V47    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.Span`1[ushort]>
+;  V48 tmp29        [V48,T10] (  4,  4   )     int  ->  rdi         "Inlining Arg"
+;* V49 tmp30        [V49    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.Span`1[ushort]>
+;  V50 tmp31        [V50,T36] (  2,  2   )   byref  ->  r14         single-def "Inlining Arg"
+;  V51 tmp32        [V51,T39] (  2,  2   )     int  ->  rsi         "Inlining Arg"
+;* V52 tmp33        [V52,T63] (  0,  0   )   ubyte  ->  zero-ref    "Inline stloc first use temp"
+;* V53 tmp34        [V53    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.Span`1[ushort]>
+;* V54 tmp35        [V54    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
+;* V55 tmp36        [V55    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
+;* V56 tmp37        [V56    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
+;  V57 tmp38        [V57,T19] (  3,  3   )     ref  ->  r14         class-hnd exact single-def "impAppendStmt" <System.String>
+;* V58 tmp39        [V58    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.Span`1[ushort]>
+;  V59 tmp40        [V59,T23] (  3,  3   )     int  ->  rsi         "Inlining Arg"
+;* V60 tmp41        [V60    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.Span`1[ushort]>
+;* V61 tmp42        [V61    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
+;* V62 tmp43        [V62    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.Span`1[ushort]>
+;* V63 tmp44        [V63    ] (  0,  0   )  struct (16) zero-ref    multireg-arg ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
+;* V64 tmp45        [V64    ] (  0,  0   )   byref  ->  zero-ref    single-def "Inlining Arg"
+;* V65 tmp46        [V65    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
+;  V66 tmp47        [V66,T41] (  3,  1.50)     ref  ->  rsi         class-hnd single-def "Inline stloc first use temp" <ushort[]>
 ;* V67 tmp48        [V67    ] (  0,  0   )     ref  ->  zero-ref    single-def
-;* V68 tmp49        [V68    ] (  0,  0   )     int  ->  zero-ref    single-def
-;* V69 tmp50        [V69    ] (  0,  0   )    long  ->  zero-ref    "Inline stloc first use temp"
-;* V70 tmp51        [V70    ] (  0,  0   )     ref  ->  zero-ref   
-;* V71 tmp52        [V71    ] (  0,  0   )     ref  ->  zero-ref   
-;* V72 tmp53        [V72    ] (  0,  0   )    long  ->  zero-ref   
-;* V73 tmp54        [V73    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact single-def "Inline stloc first use temp" <System.ComAwareWeakReference+ComInfo>
-;  V74 tmp55        [V74,T30] (  4,  2   )    long  ->  rax         "Inline stloc first use temp"
-;  V75 tmp56        [V75,T28] (  4,  2   )     ref  ->  registers   class-hnd "Inline return value spill temp" <System.ComAwareWeakReference+ComInfo>
-;  V76 tmp57        [V76,T56] (  2,  1   )   ubyte  ->  rdi         single-def "Inline return value spill temp"
-;  V77 tmp58        [V77    ] (  3,  1.50)   byref  ->  [rbp-0x68]  must-init pinned "Inline stloc first use temp"
-;* V78 tmp59        [V78    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.IntPtr>
-;* V79 tmp60        [V79    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.DirectoryServices.Protocols.ReferralCallback>
-;* V80 tmp61        [V80    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.DirectoryServices.Protocols.ConnectionHandle>
-;  V81 tmp62        [V81,T44] (  3,  1.50)   byref  ->  rdi         "field V38._reference (fldOffset=0x0)" P-INDEP
-;  V82 tmp63        [V82,T47] (  3,  1.50)     int  ->  rax         "field V38._length (fldOffset=0x8)" P-INDEP
-;* V83 tmp64        [V83    ] (  0,  0   )   byref  ->  zero-ref    "field V40._reference (fldOffset=0x0)" P-INDEP
-;* V84 tmp65        [V84    ] (  0,  0   )     int  ->  zero-ref    "field V40._length (fldOffset=0x8)" P-INDEP
-;* V85 tmp66        [V85    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V42._reference (fldOffset=0x0)" P-INDEP
-;* V86 tmp67        [V86    ] (  0,  0   )     int  ->  zero-ref    single-def "field V42._length (fldOffset=0x8)" P-INDEP
-;* V87 tmp68        [V87    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V46._reference (fldOffset=0x0)" P-INDEP
-;* V88 tmp69        [V88    ] (  0,  0   )     int  ->  zero-ref    single-def "field V46._length (fldOffset=0x8)" P-INDEP
-;* V89 tmp70        [V89    ] (  0,  0   )   byref  ->  zero-ref    "field V50._reference (fldOffset=0x0)" P-INDEP
-;* V90 tmp71        [V90    ] (  0,  0   )     int  ->  zero-ref    "field V50._length (fldOffset=0x8)" P-INDEP
-;* V91 tmp72        [V91    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V52._reference (fldOffset=0x0)" P-INDEP
-;* V92 tmp73        [V92    ] (  0,  0   )     int  ->  zero-ref    single-def "field V52._length (fldOffset=0x8)" P-INDEP
-;* V93 tmp74        [V93    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V56._reference (fldOffset=0x0)" P-INDEP
-;* V94 tmp75        [V94    ] (  0,  0   )     int  ->  zero-ref    single-def "field V56._length (fldOffset=0x8)" P-INDEP
-;  V95 tmp76        [V95,T25] (  3,  2.25)     ref  ->  rax         single-def "argument with side effect"
-;  V96 tmp77        [V96,T21] (  3,  3   )     ref  ->  rdi         single-def "argument with side effect"
-;  V97 tmp78        [V97,T26] (  3,  2.25)     ref  ->  rax         single-def "argument with side effect"
-;  V98 tmp79        [V98,T42] (  2,  2   )    long  ->  rdi         "Cast away GC"
-;  V99 tmp80        [V99,T27] (  3,  2.25)     ref  ->  rax         single-def "argument with side effect"
-;  V100 PSPSym      [V100,T57] (  1,  1   )    long  ->  [rbp-0xD8]  do-not-enreg[V] "PSPSym"
-;  V101 cse0        [V101,T48] (  3,  1.50)    long  ->  [rbp-0x70]  spill-single-def "CSE #06: conservative"
-;  V102 cse1        [V102,T29] (  4,  2   )     ref  ->  [rbp-0xC8]  spill-single-def "CSE #08: conservative"
-;  V103 cse2        [V103,T45] (  3,  1.50)     ref  ->  rdi         "CSE #09: conservative"
-;  V104 cse3        [V104,T46] (  3,  1.50)     ref  ->  rdi         "CSE #10: conservative"
-;  V105 rat0        [V105,T11] (  5,  3.75)     ref  ->  registers   "replacement local"
-;  V106 rat1        [V106,T50] (  3,  1.25)    long  ->  rdi         "CSE for expectedClsNode"
-;  V107 rat2        [V107,T12] (  5,  3.75)     ref  ->  registers   "replacement local"
-;  V108 rat3        [V108,T51] (  3,  1.25)    long  ->  rdi         "CSE for expectedClsNode"
-;  V109 rat4        [V109,T13] (  5,  3.75)     ref  ->  registers   "replacement local"
-;  V110 rat5        [V110,T52] (  3,  1.25)    long  ->  rdi         "CSE for expectedClsNode"
-;  V111 rat6        [V111,T22] (  3,  3   )     ref  ->  rax         "delegate invoke call"
+;  V68 tmp49        [V68,T20] (  3,  3   )     ref  ->  [rbp-0xB8]  class-hnd exact spill-single-def "dup spill" <System.String[]>
+;* V69 tmp50        [V69    ] (  0,  0   )     ref  ->  zero-ref   
+;  V70 tmp51        [V70,T42] (  3,  1.50)     ref  ->  rsi        
+;* V71 tmp52        [V71    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <System.DirectoryServices.Protocols.LdapConnection>
+;* V72 tmp53        [V72    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <System.DirectoryServices.Protocols.LdapConnection>
+;* V73 tmp54        [V73    ] (  0,  0   )     ref  ->  zero-ref   
+;* V74 tmp55        [V74    ] (  0,  0   )     ref  ->  zero-ref    single-def
+;* V75 tmp56        [V75    ] (  0,  0   )     int  ->  zero-ref    single-def
+;* V76 tmp57        [V76    ] (  0,  0   )    long  ->  zero-ref    "Inline stloc first use temp"
+;* V77 tmp58        [V77    ] (  0,  0   )     ref  ->  zero-ref   
+;* V78 tmp59        [V78    ] (  0,  0   )     ref  ->  zero-ref   
+;* V79 tmp60        [V79    ] (  0,  0   )    long  ->  zero-ref   
+;* V80 tmp61        [V80    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact single-def "Inline stloc first use temp" <System.ComAwareWeakReference+ComInfo>
+;  V81 tmp62        [V81,T31] (  4,  2   )    long  ->  rax         "Inline stloc first use temp"
+;  V82 tmp63        [V82,T29] (  4,  2   )     ref  ->  registers   class-hnd "Inline return value spill temp" <System.ComAwareWeakReference+ComInfo>
+;  V83 tmp64        [V83,T58] (  2,  1   )   ubyte  ->  rdi         single-def "Inline return value spill temp"
+;  V84 tmp65        [V84    ] (  3,  1.50)   byref  ->  [rbp-0x68]  must-init pinned "Inline stloc first use temp"
+;* V85 tmp66        [V85    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.Collections.Hashtable>
+;* V86 tmp67        [V86    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.IntPtr>
+;* V87 tmp68        [V87    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.DirectoryServices.Protocols.ReferralCallback>
+;* V88 tmp69        [V88    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.DirectoryServices.Protocols.ConnectionHandle>
+;  V89 tmp70        [V89,T43] (  3,  1.50)   byref  ->  rdi         "field V35._reference (fldOffset=0x0)" P-INDEP
+;  V90 tmp71        [V90,T47] (  3,  1.50)     int  ->  rax         "field V35._length (fldOffset=0x8)" P-INDEP
+;* V91 tmp72        [V91    ] (  0,  0   )   byref  ->  zero-ref    "field V37._reference (fldOffset=0x0)" P-INDEP
+;* V92 tmp73        [V92    ] (  0,  0   )     int  ->  zero-ref    "field V37._length (fldOffset=0x8)" P-INDEP
+;* V93 tmp74        [V93    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V39._reference (fldOffset=0x0)" P-INDEP
+;* V94 tmp75        [V94    ] (  0,  0   )     int  ->  zero-ref    single-def "field V39._length (fldOffset=0x8)" P-INDEP
+;* V95 tmp76        [V95    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V43._reference (fldOffset=0x0)" P-INDEP
+;* V96 tmp77        [V96    ] (  0,  0   )     int  ->  zero-ref    single-def "field V43._length (fldOffset=0x8)" P-INDEP
+;* V97 tmp78        [V97    ] (  0,  0   )   byref  ->  zero-ref    "field V47._reference (fldOffset=0x0)" P-INDEP
+;* V98 tmp79        [V98    ] (  0,  0   )     int  ->  zero-ref    "field V47._length (fldOffset=0x8)" P-INDEP
+;* V99 tmp80        [V99    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V49._reference (fldOffset=0x0)" P-INDEP
+;* V100 tmp81       [V100    ] (  0,  0   )     int  ->  zero-ref    single-def "field V49._length (fldOffset=0x8)" P-INDEP
+;* V101 tmp82       [V101    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V53._reference (fldOffset=0x0)" P-INDEP
+;* V102 tmp83       [V102    ] (  0,  0   )     int  ->  zero-ref    single-def "field V53._length (fldOffset=0x8)" P-INDEP
+;* V103 tmp84       [V103    ] (  0,  0   )   byref  ->  zero-ref    "field V56._reference (fldOffset=0x0)" P-INDEP
+;* V104 tmp85       [V104    ] (  0,  0   )     int  ->  zero-ref    "field V56._length (fldOffset=0x8)" P-INDEP
+;* V105 tmp86       [V105    ] (  0,  0   )   byref  ->  zero-ref    "field V58._reference (fldOffset=0x0)" P-INDEP
+;* V106 tmp87       [V106    ] (  0,  0   )     int  ->  zero-ref    "field V58._length (fldOffset=0x8)" P-INDEP
+;  V107 tmp88       [V107,T55] (  2,  1   )   byref  ->  rdi         single-def "field V60._reference (fldOffset=0x0)" P-INDEP
+;* V108 tmp89       [V108    ] (  0,  0   )     int  ->  zero-ref    single-def "field V60._length (fldOffset=0x8)" P-INDEP
+;* V109 tmp90       [V109    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V62._reference (fldOffset=0x0)" P-INDEP
+;* V110 tmp91       [V110    ] (  0,  0   )     int  ->  zero-ref    single-def "field V62._length (fldOffset=0x8)" P-INDEP
+;  V111 tmp92       [V111,T56] (  2,  1   )   byref  ->  rdi         single-def "field V63._reference (fldOffset=0x0)" P-INDEP
+;  V112 tmp93       [V112,T59] (  2,  1   )     int  ->  rsi         single-def "field V63._length (fldOffset=0x8)" P-INDEP
+;  V113 tmp94       [V113,T26] (  3,  2.25)     ref  ->  rax         single-def "argument with side effect"
+;  V114 tmp95       [V114,T21] (  3,  3   )     ref  ->  rdi         single-def "argument with side effect"
+;  V115 tmp96       [V115,T27] (  3,  2.25)     ref  ->  rax         single-def "argument with side effect"
+;  V116 tmp97       [V116,T40] (  2,  2   )    long  ->  rdi         "Cast away GC"
+;  V117 tmp98       [V117,T28] (  3,  2.25)     ref  ->  rax         single-def "argument with side effect"
+;  V118 PSPSym      [V118,T60] (  1,  1   )    long  ->  [rbp-0xD8]  do-not-enreg[V] "PSPSym"
+;  V119 cse0        [V119,T48] (  3,  1.50)    long  ->  [rbp-0x70]  spill-single-def "CSE #07: conservative"
+;  V120 cse1        [V120,T30] (  4,  2   )     ref  ->  [rbp-0xC0]  spill-single-def "CSE #09: conservative"
+;  V121 cse2        [V121,T44] (  3,  1.50)     ref  ->  [rbp-0xC8]  spill-single-def "CSE #05: conservative"
+;  V122 cse3        [V122,T45] (  3,  1.50)     ref  ->  rdi         "CSE #10: conservative"
+;  V123 cse4        [V123,T46] (  3,  1.50)     ref  ->  rdi         "CSE #11: conservative"
+;  V124 rat0        [V124,T11] (  5,  3.75)     ref  ->  registers   "replacement local"
+;  V125 rat1        [V125,T50] (  3,  1.25)    long  ->  rdi         "CSE for expectedClsNode"
+;  V126 rat2        [V126,T12] (  5,  3.75)     ref  ->  registers   "replacement local"
+;  V127 rat3        [V127,T51] (  3,  1.25)    long  ->  rdi         "CSE for expectedClsNode"
+;  V128 rat4        [V128,T13] (  5,  3.75)     ref  ->  registers   "replacement local"
+;  V129 rat5        [V129,T52] (  3,  1.25)    long  ->  rdi         "CSE for expectedClsNode"
+;  V130 rat6        [V130,T22] (  3,  3   )     ref  ->  rax         "delegate invoke call"
 ;
 ; Lcl frame size = 184
 
 G_M17757_IG01:
        push     rbp
        push     r15
        push     r14
        push     r13
        push     r12
        push     rbx
        sub      rsp, 184
        lea      rbp, [rsp+0xE0]
        xor      eax, eax
        mov      qword ptr [rbp-0x68], rax
        vxorps   xmm8, xmm8, xmm8
        vmovdqu  ymmword ptr [rbp-0x60], ymm8
        vmovdqa  xmmword ptr [rbp-0x40], xmm8
        mov      qword ptr [rbp-0x30], rax
        mov      qword ptr [rbp-0xD8], rsp
        mov      rbx, rdi
        mov      r15, rdx
        mov      r14, r8
        mov      r13d, r9d
        mov      r12, qword ptr [rbp+0x20]
 						;; size=73 bbWeight=1 PerfScore 16.33
 G_M17757_IG02:
        xor      eax, eax
        mov      qword ptr [r12], rax
 						;; size=6 bbWeight=1 PerfScore 1.25
 G_M17757_IG03:
        xor      rdx, rdx
        mov      rax, gword ptr [rbx+0x10]
        cmp      gword ptr [rax+0x08], 0
        jne      SHORT G_M17757_IG06
 						;; size=13 bbWeight=1 PerfScore 6.25
 G_M17757_IG04:
        mov      eax, 1
 						;; size=5 bbWeight=0.50 PerfScore 0.12
 G_M17757_IG05:
        add      rsp, 184
        pop      rbx
        pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
 						;; size=18 bbWeight=0.50 PerfScore 2.12
 G_M17757_IG06:
        test     rcx, rcx
        mov      gword ptr [rbp-0x78], rdx
        je       SHORT G_M17757_IG07
        mov      rdi, rcx
        mov      rax, 0xD1FFAB1E      ; code for System.Runtime.InteropServices.Marshal:PtrToStringAnsi(long):System.String
        call     [rax]System.Runtime.InteropServices.Marshal:PtrToStringAnsi(long):System.String
        mov      gword ptr [rbp-0x78], rax
 						;; size=28 bbWeight=0.50 PerfScore 3.38
 G_M17757_IG07:
        xor      rdi, rdi
        mov      gword ptr [rbp-0x50], rdi
        mov      rdi, 0xD1FFAB1E      ; const ptr
-       mov      rdi, gword ptr [rdi]
+       mov      rax, gword ptr [rdi]
+       mov      gword ptr [rbp-0xC8], rax
+       mov      rdi, rax
        mov      esi, 256
-       mov      rax, 0xD1FFAB1E      ; code for System.Buffers.SharedArrayPool`1[ushort]:Rent(int):ushort[]:this
-       call     [rax]System.Buffers.SharedArrayPool`1[ushort]:Rent(int):ushort[]:this
+       mov      rcx, 0xD1FFAB1E      ; code for System.Buffers.SharedArrayPool`1[ushort]:Rent(int):ushort[]:this
+       call     [rcx]System.Buffers.SharedArrayPool`1[ushort]:Rent(int):ushort[]:this
        mov      gword ptr [rbp-0x48], rax
        test     rax, rax
        je       SHORT G_M17757_IG08
        lea      rdi, bword ptr [rax+0x10]
        mov      eax, dword ptr [rax+0x08]
        jmp      SHORT G_M17757_IG09
-						;; size=54 bbWeight=0.50 PerfScore 6.88
+						;; size=64 bbWeight=0.50 PerfScore 7.50
 G_M17757_IG08:
        xor      rdi, rdi
        xor      eax, eax
 						;; size=4 bbWeight=0.50 PerfScore 0.25
 G_M17757_IG09:
        mov      bword ptr [rbp-0x38], rdi
        mov      dword ptr [rbp-0x30], eax
        xor      edi, edi
        mov      dword ptr [rbp-0x40], edi
        mov      byte  ptr [rbp-0x3C], 0
        mov      rdi, r14
        mov      rax, 0xD1FFAB1E      ; code for System.Runtime.InteropServices.Marshal:PtrToStringUni(long):System.String
        call     [rax]System.Runtime.InteropServices.Marshal:PtrToStringUni(long):System.String
        mov      r14, rax
        cmp      byte  ptr [rbp-0x3C], 0
        jne      SHORT G_M17757_IG10
        test     r14, r14
        je       SHORT G_M17757_IG10
        mov      edi, dword ptr [rbp-0x40]
        cmp      edi, dword ptr [rbp-0x30]
-       ja       G_M17757_IG40
+       ja       G_M17757_IG41
        mov      rsi, bword ptr [rbp-0x38]
        mov      eax, edi
        lea      rax, bword ptr [rsi+2*rax]
        mov      esi, dword ptr [rbp-0x30]
        sub      esi, edi
        cmp      dword ptr [r14+0x08], esi
        jbe      SHORT G_M17757_IG11
 						;; size=78 bbWeight=0.50 PerfScore 11.62
 G_M17757_IG10:
        lea      rdi, [rbp-0x50]
        mov      rsi, r14
        mov      rax, 0xD1FFAB1E      ; code for System.Runtime.CompilerServices.DefaultInterpolatedStringHandler:AppendFormattedSlow(System.String):this
        call     [rax]System.Runtime.CompilerServices.DefaultInterpolatedStringHandler:AppendFormattedSlow(System.String):this
        jmp      SHORT G_M17757_IG12
 						;; size=21 bbWeight=0.50 PerfScore 3.00
 G_M17757_IG11:
        mov      edx, dword ptr [r14+0x08]
        add      rdx, rdx
        lea      rsi, bword ptr [r14+0x0C]
        mov      rdi, rax
        mov      rax, 0xD1FFAB1E      ; code for System.SpanHelpers:Memmove(byref,byref,ulong)
        call     [rax]System.SpanHelpers:Memmove(byref,byref,ulong)
        mov      edi, dword ptr [rbp-0x40]
        add      edi, dword ptr [r14+0x08]
        mov      dword ptr [rbp-0x40], edi
 						;; size=36 bbWeight=0.50 PerfScore 5.62
 G_M17757_IG12:
        mov      edi, dword ptr [rbp-0x40]
        cmp      edi, dword ptr [rbp-0x30]
-       ja       G_M17757_IG40
+       ja       G_M17757_IG41
        mov      rsi, bword ptr [rbp-0x38]
        mov      eax, edi
        lea      r14, bword ptr [rsi+2*rax]
        mov      esi, dword ptr [rbp-0x30]
        sub      esi, edi
        jne      SHORT G_M17757_IG13
        lea      rdi, [rbp-0x50]
        mov      rsi, 0xD1FFAB1E      ; ':'
        mov      rax, 0xD1FFAB1E      ; code for System.Runtime.CompilerServices.DefaultInterpolatedStringHandler:GrowThenCopyString(System.String):this
        call     [rax]System.Runtime.CompilerServices.DefaultInterpolatedStringHandler:GrowThenCopyString(System.String):this
        jmp      SHORT G_M17757_IG14
 						;; size=57 bbWeight=0.50 PerfScore 7.00
 G_M17757_IG13:
        mov      word  ptr [r14], 58
        mov      edi, dword ptr [rbp-0x40]
        inc      edi
        mov      dword ptr [rbp-0x40], edi
 						;; size=14 bbWeight=0.50 PerfScore 1.62
 G_M17757_IG14:
        lea      rdi, [rbp-0x50]
        mov      esi, r13d
        mov      rax, 0xD1FFAB1E      ; code for System.Runtime.CompilerServices.DefaultInterpolatedStringHandler:AppendFormatted[int](int):this
        call     [rax]System.Runtime.CompilerServices.DefaultInterpolatedStringHandler:AppendFormatted[int](int):this
+       mov      esi, dword ptr [rbp-0x40]
+       cmp      esi, dword ptr [rbp-0x30]
+       ja       G_M17757_IG41
+       mov      rdi, bword ptr [rbp-0x38]
+       call     System.String:.ctor(System.ReadOnlySpan`1[ushort]):this
+       mov      r14, rax
+       mov      rsi, gword ptr [rbp-0x48]
+       vxorps   ymm0, ymm0, ymm0
+       vmovdqu  ymmword ptr [rbp-0x50], ymm0
+       vmovdqu  xmmword ptr [rbp-0x38], xmm0
+       test     rsi, rsi
+       je       SHORT G_M17757_IG15
+       mov      rdi, gword ptr [rbp-0xC8]
+       xor      edx, edx
+       mov      rax, 0xD1FFAB1E      ; code for System.Buffers.SharedArrayPool`1[ushort]:Return(ushort[],ubyte):this
+       call     [rax]System.Buffers.SharedArrayPool`1[ushort]:Return(ushort[],ubyte):this
+						;; size=87 bbWeight=0.50 PerfScore 9.67
+G_M17757_IG15:
        mov      rdi, 0xD1FFAB1E      ; System.DirectoryServices.Protocols.LdapDirectoryIdentifier
        call     CORINFO_HELP_NEWSFAST
-       mov      r14, rax
-       lea      rdi, [rbp-0x50]
-       mov      rax, 0xD1FFAB1E      ; code for System.Runtime.CompilerServices.DefaultInterpolatedStringHandler:ToStringAndClear():System.String:this
-       call     [rax]System.Runtime.CompilerServices.DefaultInterpolatedStringHandler:ToStringAndClear():System.String:this
        mov      r13, rax
-       test     r13, r13
-       je       SHORT G_M17757_IG15
+       test     r14, r14
+       je       SHORT G_M17757_IG16
        mov      rdi, 0xD1FFAB1E      ; System.String[]
        mov      esi, 1
        call     CORINFO_HELP_NEWARR_1_OBJ
        mov      rsi, rax
-       mov      gword ptr [rbp-0xC0], rsi
+       mov      gword ptr [rbp-0xB8], rsi
        lea      rdi, bword ptr [rsi+0x10]
-       mov      rsi, r13
+       mov      rsi, r14
        call     CORINFO_HELP_ASSIGN_REF
-       mov      r13, gword ptr [rbp-0xC0]
-       mov      rsi, r13
-       jmp      SHORT G_M17757_IG16
-						;; size=115 bbWeight=0.50 PerfScore 9.25
-G_M17757_IG15:
+       mov      r14, gword ptr [rbp-0xB8]
+       mov      rsi, r14
+       jmp      SHORT G_M17757_IG17
+						;; size=77 bbWeight=0.50 PerfScore 5.25
+G_M17757_IG16:
        xor      rsi, rsi
 						;; size=2 bbWeight=0.50 PerfScore 0.12
-G_M17757_IG16:
-       mov      rdi, r14
+G_M17757_IG17:
+       mov      rdi, r13
        xor      edx, edx
        xor      ecx, ecx
        mov      rax, 0xD1FFAB1E      ; code for System.DirectoryServices.Protocols.LdapDirectoryIdentifier:.ctor(System.String[],ubyte,ubyte):this
        call     [rax]System.DirectoryServices.Protocols.LdapDirectoryIdentifier:.ctor(System.String[],ubyte,ubyte):this
        mov      rdi, rbx
        mov      rsi, qword ptr [rbp+0x10]
        mov      rax, 0xD1FFAB1E      ; code for System.DirectoryServices.Protocols.LdapSessionOptions:ProcessSecAuthIdentity(ulong):System.Net.NetworkCredential:this
        call     [rax]System.DirectoryServices.Protocols.LdapSessionOptions:ProcessSecAuthIdentity(ulong):System.Net.NetworkCredential:this
-       mov      r13, rax
+       mov      r14, rax
        xor      rax, rax
        test     r15, r15
-       jne      SHORT G_M17757_IG18
+       jne      SHORT G_M17757_IG19
 						;; size=48 bbWeight=0.50 PerfScore 5.12
-G_M17757_IG17:
-       mov      r15, rax
-       jmp      G_M17757_IG37
-						;; size=8 bbWeight=0.25 PerfScore 0.56
 G_M17757_IG18:
+       mov      r15, rax
+       jmp      G_M17757_IG38
+						;; size=8 bbWeight=0.25 PerfScore 0.56
+G_M17757_IG19:
        mov      rsi, 0xD1FFAB1E      ; const ptr
        mov      rdi, gword ptr [rsi]
        mov      gword ptr [rbp-0x88], rdi
        xor      esi, esi
        mov      dword ptr [rbp-0x58], esi
 						;; size=25 bbWeight=0.50 PerfScore 2.25
-G_M17757_IG19:
+G_M17757_IG20:
        cmp      byte  ptr [rbp-0x58], 0
-       jne      G_M17757_IG35
+       jne      G_M17757_IG36
        lea      rsi, [rbp-0x58]
        call     System.Threading.Monitor:ReliableEnter(System.Object,byref)
        mov      rdi, 0xD1FFAB1E      ; System.IntPtr
        call     CORINFO_HELP_NEWSFAST
-       mov      rsi, 0xD1FFAB1E      ; const ptr
-       mov      rcx, gword ptr [rsi]
-       mov      gword ptr [rbp-0xC8], rcx
-       mov      rdi, rcx
        mov      qword ptr [rax+0x08], r15
        mov      rsi, rax
-       mov      rax, 0xD1FFAB1E      ; code for System.Collections.Hashtable:get_Item(System.Object):System.Object:this
-       call     [rax]System.Collections.Hashtable:get_Item(System.Object):System.Object:this
+       mov      rdi, 0xD1FFAB1E      ; const ptr
+       mov      rax, gword ptr [rdi]
+       mov      gword ptr [rbp-0xC0], rax
+       mov      rdi, rax
+       mov      rcx, 0xD1FFAB1E      ; code for System.Collections.Hashtable:get_Item(System.Object):System.Object:this
+       call     [rcx]System.Collections.Hashtable:get_Item(System.Object):System.Object:this
        mov      rcx, rax
        test     rcx, rcx
-       je       SHORT G_M17757_IG22
+       je       SHORT G_M17757_IG23
 						;; size=84 bbWeight=0.50 PerfScore 7.62
-G_M17757_IG20:
+G_M17757_IG21:
        mov      rdi, 0xD1FFAB1E      ; System.WeakReference
        cmp      qword ptr [rcx], rdi
-       je       SHORT G_M17757_IG22
+       je       SHORT G_M17757_IG23
 						;; size=15 bbWeight=0.25 PerfScore 1.06
-G_M17757_IG21:
+G_M17757_IG22:
        mov      rsi, rax
        mov      rax, 0xD1FFAB1E      ; code for CORINFO_HELP_CHKCASTCLASS_SPECIAL
        call     [rax]CORINFO_HELP_CHKCASTCLASS_SPECIAL
        mov      rcx, rax
 						;; size=18 bbWeight=0.12 PerfScore 0.47
-G_M17757_IG22:
+G_M17757_IG23:
        mov      rax, rcx
        mov      gword ptr [rbp-0x90], rax
        test     rax, rax
-       je       SHORT G_M17757_IG23
+       je       SHORT G_M17757_IG24
        mov      rdi, rax
        mov      rcx, qword ptr [rax]
        mov      rcx, qword ptr [rcx+0x40]
        mov      qword ptr [rbp-0x70], rcx
        call     [rcx+0x30]System.WeakReference:get_IsAlive():ubyte:this
        test     eax, eax
-       jne      G_M17757_IG31
+       jne      G_M17757_IG32
        mov      rdi, 0xD1FFAB1E      ; System.IntPtr
        call     CORINFO_HELP_NEWSFAST
-       mov      rcx, gword ptr [rbp-0xC8]
-       mov      rdi, rcx
        mov      qword ptr [rax+0x08], r15
        mov      rsi, rax
+       mov      rdi, gword ptr [rbp-0xC0]
        mov      rax, 0xD1FFAB1E      ; code for System.Collections.Hashtable:Remove(System.Object):this
        call     [rax]System.Collections.Hashtable:Remove(System.Object):this
-						;; size=84 bbWeight=0.50 PerfScore 9.50
-G_M17757_IG23:
+						;; size=81 bbWeight=0.50 PerfScore 9.38
+G_M17757_IG24:
        mov      rdi, gword ptr [rbx+0x08]
        mov      rax, qword ptr [rdi]
        mov      rax, qword ptr [rax+0x40]
        call     [rax+0x20]System.DirectoryServices.Protocols.DirectoryConnection:get_Directory():System.DirectoryServices.Protocols.DirectoryIdentifier:this
        mov      rcx, rax
        test     rcx, rcx
-       je       SHORT G_M17757_IG26
+       je       SHORT G_M17757_IG27
 						;; size=22 bbWeight=0.50 PerfScore 5.25
-G_M17757_IG24:
+G_M17757_IG25:
        mov      rdi, 0xD1FFAB1E      ; System.DirectoryServices.Protocols.LdapDirectoryIdentifier
        cmp      qword ptr [rcx], rdi
-       je       SHORT G_M17757_IG26
+       je       SHORT G_M17757_IG27
 						;; size=15 bbWeight=0.25 PerfScore 1.06
-G_M17757_IG25:
+G_M17757_IG26:
        mov      rsi, rax
        mov      rax, 0xD1FFAB1E      ; code for CORINFO_HELP_CHKCASTCLASS_SPECIAL
        call     [rax]CORINFO_HELP_CHKCASTCLASS_SPECIAL
        mov      rcx, rax
 						;; size=18 bbWeight=0.12 PerfScore 0.47
-G_M17757_IG26:
+G_M17757_IG27:
        mov      gword ptr [rbp-0x98], rcx
        mov      rdi, gword ptr [rbx+0x08]
        mov      rcx, gword ptr [rdi+0x08]
        mov      gword ptr [rbp-0xA0], rcx
        mov      edx, dword ptr [rdi+0x40]
        mov      dword ptr [rbp-0x5C], edx
        mov      rdi, 0xD1FFAB1E      ; System.DirectoryServices.Protocols.LdapConnection
        call     CORINFO_HELP_NEWFAST
        mov      gword ptr [rbp-0xA8], rax
        mov      rdi, rax
        mov      rsi, gword ptr [rbp-0x98]
        mov      rdx, gword ptr [rbp-0xA0]
        mov      ecx, dword ptr [rbp-0x5C]
        mov      r8, r15
        mov      r9, 0xD1FFAB1E      ; code for System.DirectoryServices.Protocols.LdapConnection:.ctor(System.DirectoryServices.Protocols.LdapDirectoryIdentifier,System.Net.NetworkCredential,int,long):this
        call     [r9]System.DirectoryServices.Protocols.LdapConnection:.ctor(System.DirectoryServices.Protocols.LdapDirectoryIdentifier,System.Net.NetworkCredential,int,long):this
        mov      rax, gword ptr [rbp-0xA8]
        mov      gword ptr [rbp-0x80], rax
        mov      rdi, 0xD1FFAB1E      ; System.IntPtr
        call     CORINFO_HELP_NEWSFAST
        mov      gword ptr [rbp-0xB0], rax
-       mov      rcx, gword ptr [rbp-0xC8]
-       mov      gword ptr [rbp-0xB8], rcx
        mov      qword ptr [rax+0x08], r15
        mov      rdi, 0xD1FFAB1E      ; System.WeakReference
        call     CORINFO_HELP_NEWFAST
        mov      r15, rax
        mov      rdi, gword ptr [rbp-0x80]
        xor      esi, esi
        call     System.Runtime.InteropServices.GCHandle:_InternalAlloc(System.Object,int):long
        test     rax, rax
-       jne      SHORT G_M17757_IG27
+       jne      SHORT G_M17757_IG28
        mov      rdi, gword ptr [rbp-0x80]
        xor      esi, esi
        mov      rax, 0xD1FFAB1E      ; code for System.Runtime.InteropServices.GCHandle:InternalAllocWithGCTransition(System.Object,int):long
        call     [rax]System.Runtime.InteropServices.GCHandle:InternalAllocWithGCTransition(System.Object,int):long
-						;; size=189 bbWeight=0.50 PerfScore 17.38
-G_M17757_IG27:
+						;; size=175 bbWeight=0.50 PerfScore 16.38
+G_M17757_IG28:
        mov      qword ptr [r15+0x08], rax
        mov      rax, gword ptr [rbp-0x80]
        lea      rdi, bword ptr [rax+0x08]
        mov      bword ptr [rbp-0x68], rdi
        mov      rdi, bword ptr [rbp-0x68]
        mov      edi, dword ptr [rdi-0x0C]
        and      edi, 0xD1FFAB1E
        cmp      edi, 0xD1FFAB1E
        sete     dil
        movzx    rdi, dil
        xor      rcx, rcx
        mov      bword ptr [rbp-0x68], rcx
        test     edi, edi
-       je       SHORT G_M17757_IG28
+       je       SHORT G_M17757_IG29
        mov      gword ptr [rbp-0x80], rax
        mov      rdi, rax
        mov      rcx, 0xD1FFAB1E      ; code for System.ComAwareWeakReference+ComInfo:FromObjectSlow(System.Object):System.ComAwareWeakReference+ComInfo
        call     [rcx]System.ComAwareWeakReference+ComInfo:FromObjectSlow(System.Object):System.ComAwareWeakReference+ComInfo
        mov      rcx, rax
        mov      rax, gword ptr [rbp-0x80]
-       jmp      SHORT G_M17757_IG29
+       jmp      SHORT G_M17757_IG30
 						;; size=81 bbWeight=0.50 PerfScore 9.25
-G_M17757_IG28:
+G_M17757_IG29:
        xor      rdi, rdi
        xor      rcx, rcx
 						;; size=4 bbWeight=0.50 PerfScore 0.25
-G_M17757_IG29:
+G_M17757_IG30:
        test     rcx, rcx
        mov      gword ptr [rbp-0x80], rax
-       je       SHORT G_M17757_IG30
+       je       SHORT G_M17757_IG31
        lea      rdi, bword ptr [r15+0x08]
        mov      rsi, rcx
        mov      rcx, 0xD1FFAB1E      ; code for System.ComAwareWeakReference:SetComInfoInConstructor(byref,System.ComAwareWeakReference+ComInfo)
        call     [rcx]System.ComAwareWeakReference:SetComInfoInConstructor(byref,System.ComAwareWeakReference+ComInfo)
 						;; size=28 bbWeight=0.50 PerfScore 3.12
-G_M17757_IG30:
+G_M17757_IG31:
        mov      rsi, gword ptr [rbp-0xB0]
-       mov      rdi, gword ptr [rbp-0xB8]
+       mov      rdi, gword ptr [rbp-0xC0]
        mov      rdx, r15
        mov      ecx, 1
        mov      rax, 0xD1FFAB1E      ; code for System.Collections.Hashtable:Insert(System.Object,System.Object,ubyte):this
        call     [rax]System.Collections.Hashtable:Insert(System.Object,System.Object,ubyte):this
        mov      r15, gword ptr [rbp-0x80]
-       jmp      SHORT G_M17757_IG36
+       jmp      SHORT G_M17757_IG37
 						;; size=40 bbWeight=0.50 PerfScore 4.38
-G_M17757_IG31:
+G_M17757_IG32:
        mov      rdi, gword ptr [rbp-0x90]
        mov      r15, qword ptr [rbp-0x70]
        call     [r15+0x38]System.WeakReference:get_Target():System.Object:this
        mov      rcx, rax
        test     rcx, rcx
-       je       SHORT G_M17757_IG34
+       je       SHORT G_M17757_IG35
 						;; size=23 bbWeight=0.50 PerfScore 3.25
-G_M17757_IG32:
+G_M17757_IG33:
        mov      rdi, 0xD1FFAB1E      ; System.DirectoryServices.Protocols.LdapConnection
        cmp      qword ptr [rcx], rdi
-       je       SHORT G_M17757_IG34
+       je       SHORT G_M17757_IG35
 						;; size=15 bbWeight=0.25 PerfScore 1.06
-G_M17757_IG33:
+G_M17757_IG34:
        mov      rsi, rax
        mov      rax, 0xD1FFAB1E      ; code for CORINFO_HELP_CHKCASTCLASS_SPECIAL
        call     [rax]CORINFO_HELP_CHKCASTCLASS_SPECIAL
        mov      rcx, rax
 						;; size=18 bbWeight=0.12 PerfScore 0.47
-G_M17757_IG34:
-       mov      r15, rcx
-       jmp      SHORT G_M17757_IG36
-						;; size=5 bbWeight=0.50 PerfScore 1.12
 G_M17757_IG35:
+       mov      r15, rcx
+       jmp      SHORT G_M17757_IG37
+						;; size=5 bbWeight=0.50 PerfScore 1.12
+G_M17757_IG36:
        mov      rax, 0xD1FFAB1E      ; code for System.Threading.Monitor:ThrowLockTakenException()
        call     [rax]System.Threading.Monitor:ThrowLockTakenException()
        int3     
 						;; size=13 bbWeight=0 PerfScore 0.00
-G_M17757_IG36:
+G_M17757_IG37:
        cmp      byte  ptr [rbp-0x58], 0
-       je       SHORT G_M17757_IG37
+       je       SHORT G_M17757_IG38
        mov      rdi, gword ptr [rbp-0x88]
        call     System.Threading.Monitor:Exit(System.Object)
 						;; size=18 bbWeight=0.50 PerfScore 2.50
-G_M17757_IG37:
+G_M17757_IG38:
        mov      rsi, bword ptr [rbp+0x18]
        mov      edx, dword ptr [rsi]
        movsxd   rsi, dword ptr [rsi+0x04]
        shl      rsi, 32
        add      rsi, rdx
        mov      qword ptr [rsp], rsi
        mov      rsi, gword ptr [rbx+0x10]
        mov      rax, gword ptr [rsi+0x08]
        mov      rsi, gword ptr [rbx+0x08]
        mov      rdx, r15
        mov      rcx, gword ptr [rbp-0x78]
-       mov      r8, r14
-       mov      r9, r13
+       mov      r8, r13
+       mov      r9, r14
        mov      rdi, gword ptr [rax+0x08]
        call     [rax+0x18]System.DirectoryServices.Protocols.QueryForConnectionCallback:Invoke(System.DirectoryServices.Protocols.LdapConnection,System.DirectoryServices.Protocols.LdapConnection,System.String,System.DirectoryServices.Protocols.LdapDirectoryIdentifier,System.Net.NetworkCredential,long):System.DirectoryServices.Protocols.LdapConnection:this
        mov      rbx, rax
        test     rbx, rbx
-       je       SHORT G_M17757_IG38
+       je       SHORT G_M17757_IG39
        mov      rdi, gword ptr [rbx+0x28]
        test     rdi, rdi
-       je       SHORT G_M17757_IG38
+       je       SHORT G_M17757_IG39
        mov      rax, 0xD1FFAB1E      ; code for Microsoft.Win32.SafeHandles.SafeHandleZeroOrMinusOneIsInvalid:get_IsInvalid():ubyte:this
        cmp      dword ptr [rdi], edi
        call     [rax]Microsoft.Win32.SafeHandles.SafeHandleZeroOrMinusOneIsInvalid:get_IsInvalid():ubyte:this
        test     eax, eax
-       jne      SHORT G_M17757_IG38
+       jne      SHORT G_M17757_IG39
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.DirectoryServices.Protocols.LdapSessionOptions:AddLdapHandleRef(System.DirectoryServices.Protocols.LdapConnection):ubyte
        call     [rax]System.DirectoryServices.Protocols.LdapSessionOptions:AddLdapHandleRef(System.DirectoryServices.Protocols.LdapConnection):ubyte
        test     eax, eax
-       je       SHORT G_M17757_IG38
+       je       SHORT G_M17757_IG39
        mov      rax, gword ptr [rbx+0x28]
        mov      rax, qword ptr [rax+0x08]
        mov      qword ptr [r12], rax
 						;; size=119 bbWeight=0.50 PerfScore 21.75
-G_M17757_IG38:
+G_M17757_IG39:
        xor      eax, eax
 						;; size=2 bbWeight=0.50 PerfScore 0.12
-G_M17757_IG39:
+G_M17757_IG40:
        add      rsp, 184
        pop      rbx
        pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
 						;; size=18 bbWeight=0.50 PerfScore 2.12
-G_M17757_IG40:
+G_M17757_IG41:
        mov      rax, 0xD1FFAB1E      ; code for System.ThrowHelper:ThrowArgumentOutOfRangeException()
        call     [rax]System.ThrowHelper:ThrowArgumentOutOfRangeException()
        int3     
 						;; size=13 bbWeight=0 PerfScore 0.00
-G_M17757_IG41:
+G_M17757_IG42:
        push     rbp
        push     r15
        push     r14
        push     r13
        push     r12
        push     rbx
        sub      rsp, 24
        mov      rbp, qword ptr [rdi+0x08]
        mov      qword ptr [rsp+0x08], rbp
        lea      rbp, [rbp+0xE0]
 						;; size=30 bbWeight=0 PerfScore 0.00
-G_M17757_IG42:
+G_M17757_IG43:
        cmp      byte  ptr [rbp-0x58], 0
-       je       SHORT G_M17757_IG43
+       je       SHORT G_M17757_IG44
        mov      rdi, gword ptr [rbp-0x88]
        call     System.Threading.Monitor:Exit(System.Object)
 						;; size=18 bbWeight=0 PerfScore 0.00
-G_M17757_IG43:
+G_M17757_IG44:
        nop      
 						;; size=1 bbWeight=0 PerfScore 0.00
-G_M17757_IG44:
+G_M17757_IG45:
        add      rsp, 24
        pop      rbx
        pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
 						;; size=15 bbWeight=0 PerfScore 0.00
 
-; Total bytes of code 1511, prolog size 73, PerfScore 174.99, instruction count 379, allocated bytes for code 1511 (MethodHash=9408baa2) for method System.DirectoryServices.Protocols.LdapSessionOptions:ProcessQueryConnection(long,long,long,long,int,ulong,ulong,ulong):int:this (FullOpts)
+; Total bytes of code 1553, prolog size 73, PerfScore 180.16, instruction count 390, allocated bytes for code 1553 (MethodHash=9408baa2) for method System.DirectoryServices.Protocols.LdapSessionOptions:ProcessQueryConnection(long,long,long,long,int,ulong,ulong,ulong):int:this (FullOpts)
 ; ============================================================
12 (3.46 % of base) - System.Net.Mail.MailMessage:.ctor(System.String,System.String):this
 ; Assembly listing for method System.Net.Mail.MailMessage:.ctor(System.String,System.String):this (FullOpts)
 ; Emitting BLENDED_CODE for X64 with AVX - Unix
 ; FullOpts code
 ; optimized code
 ; rbp based frame
 ; partially interruptible
 ; No PGO data
 ; 0 inlinees with PGO data; 4 single block inlinees; 5 inlinees without PGO data
 ; Final local variable assignments
 ;
 ;  V00 this         [V00,T00] (  8,  6.50)     ref  ->  rbx         this class-hnd single-def <System.Net.Mail.MailMessage>
 ;  V01 arg1         [V01,T01] (  6,  4.50)     ref  ->  r15         class-hnd single-def <System.String>
 ;  V02 arg2         [V02,T02] (  6,  4.50)     ref  ->  r14         class-hnd single-def <System.String>
 ;# V03 OutArgs      [V03    ] (  1,  1   )  struct ( 0) [rsp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
 ;  V04 tmp1         [V04,T03] (  3,  6   )     ref  ->  r13         class-hnd exact single-def "NewObj constructor temp" <System.Net.Mail.Message>
-;* V05 tmp2         [V05,T16] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;* V06 tmp3         [V06,T17] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
+;* V05 tmp2         [V05,T15] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
+;* V06 tmp3         [V06,T16] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
 ;* V07 tmp4         [V07    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.Net.NetEventSource>
-;  V08 tmp5         [V08,T05] (  2,  2   )     ref  ->  r15         class-hnd exact single-def "Inlining Arg" <System.Net.Mail.Message>
-;  V09 tmp6         [V09,T06] (  2,  2   )     ref  ->  r14         class-hnd exact single-def "impAppendStmt" <System.Net.NetEventSource>
-;  V10 tmp7         [V10,T07] (  2,  2   )     ref  ->  r13         class-hnd exact single-def "impAppendStmt" <System.String>
-;  V11 tmp8         [V11,T08] (  2,  2   )     ref  ->  rbx         class-hnd exact single-def "impAppendStmt" <System.String>
+;  V08 tmp5         [V08,T04] (  2,  2   )     ref  ->  r14         class-hnd exact single-def "Inlining Arg" <System.Net.Mail.Message>
+;  V09 tmp6         [V09,T05] (  2,  2   )     ref  ->  r15         class-hnd exact single-def "impAppendStmt" <System.String>
+;  V10 tmp7         [V10,T06] (  2,  2   )     ref  ->  rbx         class-hnd exact single-def "impAppendStmt" <System.String>
+;  V11 tmp8         [V11,T07] (  2,  2   )     ref  ->  r13         class-hnd exact single-def "Inlining Arg" <System.Net.NetEventSource>
 ;* V12 tmp9         [V12    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact single-def "dup spill" <System.String>
-;  V13 tmp10        [V13,T10] (  2,  1   )     ref  ->  rdi         single-def
-;* V14 tmp11        [V14,T13] (  0,  0   )     int  ->  zero-ref   
-;  V15 tmp12        [V15,T11] (  2,  1   )     ref  ->  rdx         single-def
-;* V16 tmp13        [V16,T12] (  0,  0   )     ref  ->  zero-ref    single-def
-;  V17 tmp14        [V17,T09] (  2,  2   )     ref  ->   r9         class-hnd exact single-def "Inlining Arg" <System.String>
-;  V18 tmp15        [V18,T14] (  2,  0   )     ref  ->  rsi         single-def "argument with side effect"
-;  V19 tmp16        [V19,T15] (  2,  0   )     ref  ->  rsi         single-def "argument with side effect"
-;  V20 cse0         [V20,T04] (  3,  2.50)     ref  ->  r14         "CSE #01: moderate"
+;  V13 tmp10        [V13,T09] (  2,  1   )     ref  ->  rdi         single-def
+;* V14 tmp11        [V14,T12] (  0,  0   )     int  ->  zero-ref   
+;  V15 tmp12        [V15,T10] (  2,  1   )     ref  ->  rdx         single-def
+;* V16 tmp13        [V16,T11] (  0,  0   )     ref  ->  zero-ref    single-def
+;  V17 tmp14        [V17,T08] (  2,  2   )     ref  ->   r9         class-hnd exact single-def "Inlining Arg" <System.String>
+;  V18 tmp15        [V18,T13] (  2,  0   )     ref  ->  rsi         single-def "argument with side effect"
+;  V19 tmp16        [V19,T14] (  2,  0   )     ref  ->  rsi         single-def "argument with side effect"
 ;
 ; Lcl frame size = 0
 
 G_M48074_IG01:
        push     rbp
        push     r15
        push     r14
        push     r13
        push     rbx
        lea      rbp, [rsp+0x20]
        mov      rbx, rdi
        mov      r15, rsi
        mov      r14, rdx
 						;; size=22 bbWeight=1 PerfScore 6.25
 G_M48074_IG02:
        mov      rdi, 0xD1FFAB1E      ; ''
        mov      gword ptr [rbx+0x20], rdi
        mov      dword ptr [rbx+0x38], -1
        test     r15, r15
        je       G_M48074_IG11
 						;; size=30 bbWeight=1 PerfScore 3.50
 G_M48074_IG03:
        cmp      dword ptr [r15+0x08], 0
        je       G_M48074_IG11
 						;; size=11 bbWeight=0.50 PerfScore 2.00
 G_M48074_IG04:
        test     r14, r14
        je       G_M48074_IG10
 						;; size=9 bbWeight=1 PerfScore 1.25
 G_M48074_IG05:
        cmp      dword ptr [r14+0x08], 0
        je       G_M48074_IG10
 						;; size=11 bbWeight=0.50 PerfScore 2.00
 G_M48074_IG06:
        mov      rdi, 0xD1FFAB1E      ; System.Net.Mail.Message
        call     CORINFO_HELP_NEWSFAST
        mov      r13, rax
        mov      rdi, r13
        mov      rsi, r15
        mov      rdx, r14
        mov      rax, 0xD1FFAB1E      ; code for System.Net.Mail.Message:.ctor(System.String,System.String):this
        call     [rax]System.Net.Mail.Message:.ctor(System.String,System.String):this
        lea      rdi, bword ptr [rbx+0x30]
        mov      rsi, r13
        call     CORINFO_HELP_ASSIGN_REF
        mov      rdi, 0xD1FFAB1E      ; const ptr
-       mov      r14, gword ptr [rdi]
-       cmp      byte  ptr [r14+0x9D], 0
+       mov      rdi, gword ptr [rdi]
+       cmp      byte  ptr [rdi+0x9D], 0
        jne      SHORT G_M48074_IG08
-						;; size=74 bbWeight=1 PerfScore 13.50
+						;; size=73 bbWeight=1 PerfScore 13.50
 G_M48074_IG07:
        pop      rbx
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
 						;; size=9 bbWeight=0.50 PerfScore 1.75
 G_M48074_IG08:
-       mov      r15, gword ptr [rbx+0x30]
+       mov      r14, gword ptr [rbx+0x30]
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.Net.NetEventSource:IdOf(System.Object):System.String
        call     [rax]System.Net.NetEventSource:IdOf(System.Object):System.String
-       mov      r13, rax
+       mov      r15, rax
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.Net.NetEventSource:IdOf(System.Object):System.String
        call     [rax]System.Net.NetEventSource:IdOf(System.Object):System.String
        mov      rbx, rax
-       mov      rdi, r15
+       mov      rdi, 0xD1FFAB1E      ; const ptr
+       mov      r13, gword ptr [rdi]
+       mov      rdi, r14
        mov      rax, 0xD1FFAB1E      ; code for System.Net.NetEventSource:IdOf(System.Object):System.String
        call     [rax]System.Net.NetEventSource:IdOf(System.Object):System.String
        mov      r9, rax
-       mov      rdi, r14
-       mov      rdx, r13
+       mov      rdi, r13
+       mov      rdx, r15
        mov      esi, 3
        mov      rcx, 0xD1FFAB1E      ; '.ctor'
        mov      r8, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.Net.NetEventSource:WriteEvent(int,System.String,System.String,System.String,System.String):this
-						;; size=92 bbWeight=0.50 PerfScore 7.38
+						;; size=105 bbWeight=0.50 PerfScore 8.50
 G_M48074_IG09:
        pop      rbx
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        tail.jmp [rax]System.Net.NetEventSource:WriteEvent(int,System.String,System.String,System.String,System.String):this
 						;; size=11 bbWeight=0.50 PerfScore 2.25
 G_M48074_IG10:
        mov      edi, 0x13FD
        mov      rsi, 0xD1FFAB1E
        call     CORINFO_HELP_STRCNS
        mov      rsi, rax
        mov      rdi, r14
        mov      rax, 0xD1FFAB1E      ; code for System.ArgumentException:ThrowNullOrEmptyException(System.String,System.String)
        call     [rax]System.ArgumentException:ThrowNullOrEmptyException(System.String,System.String)
        int3     
 						;; size=39 bbWeight=0 PerfScore 0.00
 G_M48074_IG11:
        mov      edi, 0x13F3
        mov      rsi, 0xD1FFAB1E
        call     CORINFO_HELP_STRCNS
        mov      rsi, rax
        mov      rdi, r15
        mov      rax, 0xD1FFAB1E      ; code for System.ArgumentException:ThrowNullOrEmptyException(System.String,System.String)
        call     [rax]System.ArgumentException:ThrowNullOrEmptyException(System.String,System.String)
        int3     
 						;; size=39 bbWeight=0 PerfScore 0.00
 
-; Total bytes of code 347, prolog size 13, PerfScore 39.88, instruction count 82, allocated bytes for code 347 (MethodHash=398c4435) for method System.Net.Mail.MailMessage:.ctor(System.String,System.String):this (FullOpts)
+; Total bytes of code 359, prolog size 13, PerfScore 41.00, instruction count 84, allocated bytes for code 359 (MethodHash=398c4435) for method System.Net.Mail.MailMessage:.ctor(System.String,System.String):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/2ebd2fb1b7b35143703ea3b8991d9048

@MihuBot
Copy link
Owner Author

MihuBot commented Oct 17, 2024

Top method improvements

-157 (-10.14 % of base) - System.Net.HttpListenerResponse:SendHeaders(ubyte,System.IO.MemoryStream,ubyte):this
 ; Assembly listing for method System.Net.HttpListenerResponse:SendHeaders(ubyte,System.IO.MemoryStream,ubyte):this (FullOpts)
 ; Emitting BLENDED_CODE for X64 with AVX - Unix
 ; FullOpts code
 ; optimized code
 ; rbp based frame
 ; partially interruptible
 ; No PGO data
-; 0 inlinees with PGO data; 38 single block inlinees; 11 inlinees without PGO data
+; 0 inlinees with PGO data; 36 single block inlinees; 9 inlinees without PGO data
 ; Final local variable assignments
 ;
 ;  V00 this         [V00,T00] ( 39, 23   )     ref  ->  rbx         this class-hnd single-def <System.Net.HttpListenerResponse>
-;  V01 arg1         [V01,T06] (  3,  2.50)   ubyte  ->  r13         single-def
+;  V01 arg1         [V01,T05] (  3,  2.50)   ubyte  ->  r13         single-def
 ;  V02 arg2         [V02,T02] (  7,  7   )     ref  ->  r15         class-hnd single-def <System.IO.MemoryStream>
-;  V03 arg3         [V03,T04] (  4,  4   )   ubyte  ->  r14         single-def
-;  V04 loc0         [V04,T09] (  3,  3   )     ref  ->  r13         class-hnd exact single-def <System.Text.UTF8Encoding+UTF8EncodingSealed>
-;  V05 loc1         [V05,T10] (  3,  3   )     ref  ->  rax         class-hnd single-def <ubyte[]>
+;  V03 arg3         [V03,T03] (  4,  4   )   ubyte  ->  r14         single-def
+;  V04 loc0         [V04,T08] (  3,  3   )     ref  ->  r13         class-hnd exact single-def <System.Text.UTF8Encoding+UTF8EncodingSealed>
+;  V05 loc1         [V05,T09] (  3,  3   )     ref  ->  rax         class-hnd single-def <ubyte[]>
 ;* V06 loc2         [V06    ] (  0,  0   )     int  ->  zero-ref   
-;  V07 loc3         [V07,T07] (  8,  4   )   ubyte  ->  r13        
+;  V07 loc3         [V07,T06] (  8,  4   )   ubyte  ->  r13        
 ;* V08 loc4         [V08    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op <System.DateTime>
 ;* V09 loc5         [V09    ] (  0,  0   )  struct (16) zero-ref    multireg-ret ld-addr-op <System.ReadOnlySpan`1[ubyte]>
 ;# V10 OutArgs      [V10    ] (  1,  1   )  struct ( 0) [rsp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
 ;  V11 tmp1         [V11,T01] (  9, 18   )     ref  ->  r12         class-hnd exact single-def "NewObj constructor temp" <System.IO.StreamWriter>
-;  V12 tmp2         [V12,T05] (  3,  6   )     ref  ->  rax         class-hnd exact single-def "Single-def Box Helper" <System.Int32>
+;  V12 tmp2         [V12,T04] (  3,  6   )     ref  ->  rax         class-hnd exact single-def "Single-def Box Helper" <System.Int32>
 ;* V13 tmp3         [V13    ] (  0,  0   )  struct (16) zero-ref    do-not-enreg[SBR] multireg-ret "Return value temp for multireg return" <System.ReadOnlySpan`1[ubyte]>
-;  V14 tmp4         [V14,T35] (  3,  1.50)     int  ->  rax        
-;  V15 tmp5         [V15,T11] (  3,  3   )     ref  ->  r13         class-hnd single-def "impAppendStmt" <System.Net.WebHeaderCollection>
-;  V16 tmp6         [V16,T25] (  2,  2   )   byref  ->  rdi         single-def "impAppendStmt"
+;  V14 tmp4         [V14,T30] (  3,  1.50)     int  ->  rax        
+;  V15 tmp5         [V15,T10] (  3,  3   )     ref  ->  r13         class-hnd single-def "impAppendStmt" <System.Net.WebHeaderCollection>
+;* V16 tmp6         [V16    ] (  0,  0   )   byref  ->  zero-ref    "impAppendStmt"
 ;* V17 tmp7         [V17    ] (  0,  0   )     ref  ->  zero-ref   
 ;* V18 tmp8         [V18    ] (  0,  0   )     ref  ->  zero-ref    single-def
-;  V19 tmp9         [V19,T38] (  2,  1   )     int  ->  rdi        
-;  V20 tmp10        [V20,T12] (  3,  3   )     ref  ->  r12         class-hnd single-def "impAppendStmt" <System.Net.WebHeaderCollection>
+;  V19 tmp9         [V19,T33] (  2,  1   )     int  ->  rdi        
+;  V20 tmp10        [V20,T11] (  3,  3   )     ref  ->  r12         class-hnd single-def "impAppendStmt" <System.Net.WebHeaderCollection>
 ;* V21 tmp11        [V21    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <System.Net.WebHeaderCollection>
 ;* V22 tmp12        [V22    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <System.Net.WebHeaderCollection>
-;  V23 tmp13        [V23,T26] (  2,  2   )     ref  ->  rdx         class-hnd exact single-def "Inlining Arg" <System.Globalization.CultureInfo>
+;* V23 tmp13        [V23    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.Globalization.CultureInfo>
 ;* V24 tmp14        [V24    ] (  0,  0   )  struct ( 8) zero-ref    "Inlining Arg" <System.DateTime>
-;* V25 tmp15        [V25    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "NewObj constructor temp" <System.TimeSpan>
-;* V26 tmp16        [V26    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.Net.HttpListenerContext>
-;* V27 tmp17        [V27    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.Net.HttpListenerRequest>
-;* V28 tmp18        [V28    ] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;  V29 tmp19        [V29,T13] (  3,  3   )     ref  ->  r12         class-hnd exact single-def "Inlining Arg" <System.Version>
-;  V30 tmp20        [V30,T27] (  2,  2   )     ref  ->  rsi         class-hnd exact single-def "Inlining Arg" <System.Version>
-;* V31 tmp21        [V31    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.Net.HttpListenerResponse>
-;  V32 tmp22        [V32,T28] (  2,  2   )     ref  ->  rax         class-hnd exact single-def "Inlining Arg" <System.Net.HttpListenerResponse>
-;  V33 tmp23        [V33,T29] (  2,  2   )     ref  ->  rdx         class-hnd exact single-def "Inlining Arg" <System.Globalization.CultureInfo>
-;  V34 tmp24        [V34,T37] (  2,  1   )     ref  ->  rdx         class-hnd single-def "Inline return value spill temp" <System.String>
-;  V35 tmp25        [V35,T33] (  2,  2   )    long  ->  rdi         "Inlining Arg"
-;* V36 tmp26        [V36    ] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;* V37 tmp27        [V37    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline return value spill temp" <System.Globalization.NumberFormatInfo>
-;* V38 tmp28        [V38    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.Net.HttpListenerContext>
-;* V39 tmp29        [V39    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.Net.HttpListenerContext>
-;* V40 tmp30        [V40    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.Net.HttpConnection>
+;* V25 tmp15        [V25    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.Globalization.CultureInfo>
+;* V26 tmp16        [V26    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "NewObj constructor temp" <System.TimeSpan>
+;* V27 tmp17        [V27    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.Net.HttpListenerContext>
+;* V28 tmp18        [V28    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.Net.HttpListenerRequest>
+;* V29 tmp19        [V29    ] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
+;  V30 tmp20        [V30,T12] (  3,  3   )     ref  ->  r12         class-hnd exact single-def "Inlining Arg" <System.Version>
+;  V31 tmp21        [V31,T23] (  2,  2   )     ref  ->  rsi         class-hnd exact single-def "Inlining Arg" <System.Version>
+;* V32 tmp22        [V32    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.Net.HttpListenerResponse>
+;  V33 tmp23        [V33,T24] (  2,  2   )     ref  ->  rax         class-hnd exact single-def "Inlining Arg" <System.Net.HttpListenerResponse>
+;* V34 tmp24        [V34    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.Globalization.CultureInfo>
+;  V35 tmp25        [V35,T32] (  2,  1   )     ref  ->  rdx         class-hnd single-def "Inline return value spill temp" <System.String>
+;  V36 tmp26        [V36,T28] (  2,  2   )    long  ->  rdi         "Inlining Arg"
+;  V37 tmp27        [V37,T25] (  2,  2   )     ref  ->  rdx         class-hnd exact single-def "Inlining Arg" <System.Globalization.CultureInfo>
+;* V38 tmp28        [V38    ] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
+;* V39 tmp29        [V39    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline return value spill temp" <System.Globalization.NumberFormatInfo>
+;* V40 tmp30        [V40    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.Net.HttpListenerContext>
 ;* V41 tmp31        [V41    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.Net.HttpListenerContext>
-;* V42 tmp32        [V42    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.Net.HttpListenerRequest>
-;* V43 tmp33        [V43    ] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;  V44 tmp34        [V44,T14] (  3,  3   )     ref  ->  r12         class-hnd exact single-def "Inlining Arg" <System.Version>
-;  V45 tmp35        [V45,T30] (  2,  2   )     ref  ->  rsi         class-hnd exact single-def "Inlining Arg" <System.Version>
-;  V46 tmp36        [V46,T03] (  6,  6   )     ref  ->  r12         class-hnd single-def "Inlining Arg" <System.Net.WebHeaderCollection>
-;  V47 tmp37        [V47,T44] (  3,  0   )     ref  ->  rbx         class-hnd exact single-def "NewObj constructor temp" <System.InvalidOperationException>
-;* V48 tmp38        [V48    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.String>
-;  V49 tmp39        [V49    ] (  2,  4   )     ref  ->  [rbp-0x30]  do-not-enreg[X] must-init addr-exposed ld-addr-op class-hnd "Inlining Arg" <System.Object>
-;* V50 tmp40        [V50    ] (  0,  0   )  struct (16) zero-ref    multireg-arg ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[System.Object]>
-;* V51 tmp41        [V51    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <System.Object>
-;* V52 tmp42        [V52    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "dup spill" <System.IFormatProvider>
-;* V53 tmp43        [V53    ] (  0,  0   )     ref  ->  zero-ref   
-;* V54 tmp44        [V54    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <System.Threading.Tasks.Task>
-;* V55 tmp45        [V55    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
-;* V56 tmp46        [V56    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <System.Threading.Tasks.Task>
-;* V57 tmp47        [V57    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
-;* V58 tmp48        [V58    ] (  0,  0   )   ubyte  ->  zero-ref    "Inlining Arg"
-;  V59 tmp49        [V59,T39] (  2,  1   )    long  ->  rdi         "field V08._dateData (fldOffset=0x0)" P-INDEP
-;  V60 tmp50        [V60,T40] (  1,  1   )   byref  ->  rax         "field V09._reference (fldOffset=0x0)" P-INDEP
-;  V61 tmp51        [V61,T34] (  2,  2   )     int  ->  r13         "field V09._length (fldOffset=0x8)" P-INDEP
-;* V62 tmp52        [V62    ] (  0,  0   )   byref  ->  zero-ref    "field V13._reference (fldOffset=0x0)" P-DEP
-;* V63 tmp53        [V63    ] (  0,  0   )     int  ->  zero-ref    "field V13._length (fldOffset=0x8)" P-DEP
-;* V64 tmp54        [V64    ] (  0,  0   )    long  ->  zero-ref    "field V24._dateData (fldOffset=0x0)" P-INDEP
-;* V65 tmp55        [V65,T43] (  0,  0   )    long  ->  zero-ref    "field V25._ticks (fldOffset=0x0)" P-INDEP
-;* V66 tmp56        [V66,T41] (  0,  0   )   byref  ->  zero-ref    single-def "field V50._reference (fldOffset=0x0)" P-INDEP
-;* V67 tmp57        [V67,T42] (  0,  0   )     int  ->  zero-ref    "field V50._length (fldOffset=0x8)" P-INDEP
+;* V42 tmp32        [V42    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.Net.HttpConnection>
+;* V43 tmp33        [V43    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.Net.HttpListenerContext>
+;* V44 tmp34        [V44    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.Net.HttpListenerRequest>
+;* V45 tmp35        [V45    ] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
+;  V46 tmp36        [V46,T13] (  3,  3   )     ref  ->  r12         class-hnd exact single-def "Inlining Arg" <System.Version>
+;  V47 tmp37        [V47,T26] (  2,  2   )     ref  ->  rsi         class-hnd exact single-def "Inlining Arg" <System.Version>
+;  V48 tmp38        [V48    ] (  2,  4   )     ref  ->  [rbp-0x30]  do-not-enreg[X] must-init addr-exposed ld-addr-op class-hnd "Inlining Arg" <System.Object>
+;* V49 tmp39        [V49    ] (  0,  0   )  struct (16) zero-ref    multireg-arg ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[System.Object]>
+;* V50 tmp40        [V50    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <System.Object>
+;* V51 tmp41        [V51    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "dup spill" <System.IFormatProvider>
+;* V52 tmp42        [V52    ] (  0,  0   )     ref  ->  zero-ref   
+;* V53 tmp43        [V53    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <System.Threading.Tasks.Task>
+;* V54 tmp44        [V54    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
+;* V55 tmp45        [V55    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <System.Threading.Tasks.Task>
+;* V56 tmp46        [V56    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
+;* V57 tmp47        [V57    ] (  0,  0   )   ubyte  ->  zero-ref    "Inlining Arg"
+;  V58 tmp48        [V58,T34] (  2,  1   )    long  ->  rdi         "field V08._dateData (fldOffset=0x0)" P-INDEP
+;  V59 tmp49        [V59,T35] (  1,  1   )   byref  ->  rax         "field V09._reference (fldOffset=0x0)" P-INDEP
+;  V60 tmp50        [V60,T29] (  2,  2   )     int  ->  r13         "field V09._length (fldOffset=0x8)" P-INDEP
+;* V61 tmp51        [V61    ] (  0,  0   )   byref  ->  zero-ref    "field V13._reference (fldOffset=0x0)" P-DEP
+;* V62 tmp52        [V62    ] (  0,  0   )     int  ->  zero-ref    "field V13._length (fldOffset=0x8)" P-DEP
+;* V63 tmp53        [V63    ] (  0,  0   )    long  ->  zero-ref    "field V24._dateData (fldOffset=0x0)" P-INDEP
+;* V64 tmp54        [V64,T38] (  0,  0   )    long  ->  zero-ref    "field V26._ticks (fldOffset=0x0)" P-INDEP
+;* V65 tmp55        [V65,T36] (  0,  0   )   byref  ->  zero-ref    single-def "field V49._reference (fldOffset=0x0)" P-INDEP
+;* V66 tmp56        [V66,T37] (  0,  0   )     int  ->  zero-ref    "field V49._length (fldOffset=0x8)" P-INDEP
+;  V67 tmp57        [V67,T14] (  3,  3   )     ref  ->  rdi         single-def "argument with side effect"
 ;  V68 tmp58        [V68,T15] (  3,  3   )     ref  ->  rdi         single-def "argument with side effect"
 ;  V69 tmp59        [V69,T16] (  3,  3   )     ref  ->  rdi         single-def "argument with side effect"
-;  V70 tmp60        [V70,T17] (  3,  3   )     ref  ->  rdi         single-def "argument with side effect"
-;  V71 tmp61        [V71,T31] (  2,  2   )     ref  ->  rdx         single-def "argument with side effect"
+;  V70 tmp60        [V70,T27] (  2,  2   )     ref  ->  rdx         single-def "argument with side effect"
+;  V71 tmp61        [V71,T17] (  3,  3   )     ref  ->  rdi         single-def "argument with side effect"
 ;  V72 tmp62        [V72,T18] (  3,  3   )     ref  ->  rdi         single-def "argument with side effect"
 ;  V73 tmp63        [V73,T19] (  3,  3   )     ref  ->  rdi         single-def "argument with side effect"
 ;  V74 tmp64        [V74,T20] (  3,  3   )     ref  ->  rdi         single-def "argument with side effect"
-;  V75 tmp65        [V75,T21] (  3,  3   )     ref  ->  rsi         single-def "arr expr"
-;  V76 tmp66        [V76,T32] (  2,  2   )     ref  ->  rsi         single-def "argument with side effect"
-;  V77 tmp67        [V77,T22] (  3,  3   )     ref  ->  rdi         single-def "argument with side effect"
-;* V78 tmp68        [V78    ] (  0,  0   )     ref  ->  zero-ref    "argument with side effect"
-;  V79 tmp69        [V79,T08] (  2,  4   )     ref  ->  rsi         single-def "argument with side effect"
-;  V80 tmp70        [V80,T45] (  2,  0   )     ref  ->  rsi         single-def "argument with side effect"
-;  V81 cse0         [V81,T24] (  4,  2   )     int  ->  rdi         "CSE #05: moderate"
-;  V82 cse1         [V82,T36] (  3,  1.50)     int  ->  rdi         "CSE #03: conservative"
-;  V83 rat0         [V83,T23] (  3,  3.00)     int  ->  rax         "ReplaceWithLclVar is creating a new local variable"
+;* V75 tmp65        [V75    ] (  0,  0   )     ref  ->  zero-ref    "argument with side effect"
+;  V76 tmp66        [V76,T07] (  2,  4   )     ref  ->  rsi         single-def "argument with side effect"
+;  V77 cse0         [V77,T22] (  4,  2   )     int  ->  rdi         "CSE #05: moderate"
+;  V78 cse1         [V78,T31] (  3,  1.50)     int  ->  rdi         "CSE #03: conservative"
+;  V79 rat0         [V79,T21] (  3,  3.00)     int  ->  rax         "ReplaceWithLclVar is creating a new local variable"
 ;
 ; Lcl frame size = 8
 
 G_M40620_IG01:
        push     rbp
        push     r15
        push     r14
        push     r13
        push     r12
        push     rbx
        push     rax
        lea      rbp, [rsp+0x30]
        xor      eax, eax
        mov      qword ptr [rbp-0x30], rax
        mov      rbx, rdi
        mov      r13d, esi
        mov      r15, rdx
        mov      r14d, ecx
 						;; size=34 bbWeight=1 PerfScore 9.75
 G_M40620_IG02:
        test     r14b, r14b
-       jne      G_M40620_IG30
+       jne      G_M40620_IG28
 						;; size=9 bbWeight=1 PerfScore 1.25
 G_M40620_IG03:
        mov      rdi, gword ptr [rbx+0x28]
        mov      rsi, 0xD1FFAB1E      ; 'Server'
        mov      rax, qword ptr [rdi]
        mov      rax, qword ptr [rax+0x48]
        call     [rax+0x38]System.Collections.Specialized.NameValueCollection:Get(System.String):System.String:this
        test     rax, rax
        jne      SHORT G_M40620_IG04
        mov      rdi, gword ptr [rbx+0x28]
        mov      rsi, 0xD1FFAB1E      ; 'Server'
        mov      rdx, 0xD1FFAB1E      ; 'Microsoft-NetCore/2.0'
        mov      rax, qword ptr [rdi]
        mov      rax, qword ptr [rax+0x50]
        call     [rax+0x08]System.Collections.Specialized.NameValueCollection:Set(System.String,System.String):this
 						;; size=63 bbWeight=0.50 PerfScore 10.00
 G_M40620_IG04:
        mov      rdi, gword ptr [rbx+0x28]
        mov      rsi, 0xD1FFAB1E      ; 'Date'
        mov      rax, qword ptr [rdi]
        mov      rax, qword ptr [rax+0x48]
        call     [rax+0x38]System.Collections.Specialized.NameValueCollection:Get(System.String):System.String:this
        test     rax, rax
        jne      SHORT G_M40620_IG05
        mov      r12, gword ptr [rbx+0x28]
        mov      rax, 0xD1FFAB1E      ; code for System.DateTime:get_UtcNow():System.DateTime
        call     [rax]System.DateTime:get_UtcNow():System.DateTime
        mov      rdi, rax
-       mov      rcx, 0xD1FFAB1E      ; const ptr
-       mov      rdx, gword ptr [rcx]
+       mov      rdx, 0xD1FFAB1E      ; const ptr
+       mov      rdx, gword ptr [rdx]
        mov      rcx, 0xD1FFAB1E
        mov      rsi, 0xD1FFAB1E      ; 'r'
        mov      rax, 0xD1FFAB1E      ; code for System.DateTimeFormat:Format(System.DateTime,System.String,System.IFormatProvider,System.TimeSpan):System.String
        call     [rax]System.DateTimeFormat:Format(System.DateTime,System.String,System.IFormatProvider,System.TimeSpan):System.String
        mov      rdx, rax
        mov      rdi, r12
        mov      rsi, 0xD1FFAB1E      ; 'Date'
        mov      rax, qword ptr [r12]
        mov      rax, qword ptr [rax+0x50]
        call     [rax+0x08]System.Collections.Specialized.NameValueCollection:Set(System.String,System.String):this
 						;; size=120 bbWeight=0.50 PerfScore 14.88
 G_M40620_IG05:
        cmp      dword ptr [rbx+0x50], 4
        jne      G_M40620_IG12
        mov      rdi, gword ptr [rbx+0x10]
        mov      rdi, gword ptr [rdi+0x20]
        mov      r12, gword ptr [rdi+0x20]
        mov      rdi, 0xD1FFAB1E      ; global ptr
        test     byte  ptr [rdi], 1
-       je       G_M40620_IG33
+       je       G_M40620_IG31
 						;; size=41 bbWeight=0.50 PerfScore 7.12
 G_M40620_IG06:
        mov      rdi, 0xD1FFAB1E      ; data for System.Net.HttpVersion:Version10
        mov      rsi, gword ptr [rdi]
        test     r12, r12
        je       SHORT G_M40620_IG07
        mov      rdi, r12
        mov      rax, 0xD1FFAB1E      ; code for System.Version:CompareTo(System.Version):int:this
        call     [rax]System.Version:CompareTo(System.Version):int:this
        test     eax, eax
        jg       SHORT G_M40620_IG08
 						;; size=37 bbWeight=0.50 PerfScore 4.12
 G_M40620_IG07:
        mov      byte  ptr [rbx+0x58], 0
        jmp      SHORT G_M40620_IG09
 						;; size=6 bbWeight=0.50 PerfScore 1.50
 G_M40620_IG08:
        mov      dword ptr [rbx+0x50], 1
 						;; size=7 bbWeight=0.50 PerfScore 0.50
 G_M40620_IG09:
        mov      rdi, gword ptr [rbx+0x10]
        mov      rax, 0xD1FFAB1E      ; code for System.Net.HttpListenerContext:get_Response():System.Net.HttpListenerResponse:this
        cmp      dword ptr [rdi], edi
        call     [rax]System.Net.HttpListenerContext:get_Response():System.Net.HttpListenerResponse:this
        mov      edi, dword ptr [rax+0x54]
        mov      rax, 0xD1FFAB1E      ; code for System.Net.HttpListenerResponse:CanSendResponseBody(int):ubyte
        call     [rax]System.Net.HttpListenerResponse:CanSendResponseBody(int):ubyte
        test     eax, eax
        jne      SHORT G_M40620_IG11
        xor      edi, edi
        mov      dword ptr [rbx+0x50], edi
 						;; size=42 bbWeight=0.50 PerfScore 8.00
 G_M40620_IG10:
        mov      qword ptr [rbx+0x48], rdi
        jmp      SHORT G_M40620_IG12
 						;; size=6 bbWeight=0.50 PerfScore 1.50
 G_M40620_IG11:
        mov      qword ptr [rbx+0x48], -1
 						;; size=8 bbWeight=0.50 PerfScore 0.50
 G_M40620_IG12:
        mov      edi, dword ptr [rbx+0x50]
        cmp      edi, 1
        je       G_M40620_IG14
        test     edi, edi
        setne    dil
        movzx    rdi, dil
        movzx    rax, r13b
        test     edi, eax
        je       SHORT G_M40620_IG13
        mov      rdi, gword ptr [rbx+0x10]
        mov      rax, 0xD1FFAB1E      ; code for System.Net.HttpListenerContext:get_Response():System.Net.HttpListenerResponse:this
        cmp      dword ptr [rdi], edi
        call     [rax]System.Net.HttpListenerContext:get_Response():System.Net.HttpListenerResponse:this
        mov      edi, dword ptr [rax+0x54]
        mov      rax, 0xD1FFAB1E      ; code for System.Net.HttpListenerResponse:CanSendResponseBody(int):ubyte
        call     [rax]System.Net.HttpListenerResponse:CanSendResponseBody(int):ubyte
        mov      edi, -1
        xor      edx, edx
        test     eax, eax
        cmove    edi, edx
        movsxd   rdi, edi
        mov      qword ptr [rbx+0x48], rdi
 						;; size=82 bbWeight=0.50 PerfScore 11.00
 G_M40620_IG13:
        cmp      dword ptr [rbx+0x50], 0
        jne      SHORT G_M40620_IG14
        mov      r13, gword ptr [rbx+0x28]
-       lea      rdi, bword ptr [rbx+0x48]
+       mov      rdi, qword ptr [rbx+0x48]
        mov      rdx, 0xD1FFAB1E      ; const ptr
        mov      rdx, gword ptr [rdx]
-       mov      rdi, qword ptr [rdi]
        mov      rsi, 0xD1FFAB1E      ; 'D'
        mov      rax, 0xD1FFAB1E      ; code for System.Number:<FormatInt64>g__FormatInt64Slow|22_0(long,System.String,System.IFormatProvider):System.String
        call     [rax]System.Number:<FormatInt64>g__FormatInt64Slow|22_0(long,System.String,System.IFormatProvider):System.String
        mov      rdx, rax
        mov      rdi, r13
        mov      rsi, 0xD1FFAB1E      ; 'Content-Length'
        mov      rax, qword ptr [r13]
        mov      rax, qword ptr [rax+0x50]
        call     [rax+0x08]System.Collections.Specialized.NameValueCollection:Set(System.String,System.String):this
-						;; size=79 bbWeight=0.50 PerfScore 11.00
+						;; size=76 bbWeight=0.50 PerfScore 10.75
 G_M40620_IG14:
        mov      edi, dword ptr [rbx+0x54]
        mov      eax, edi
        sub      eax, 400
        cmp      eax, 14
        ja       SHORT G_M40620_IG16
 						;; size=15 bbWeight=0.50 PerfScore 1.88
 G_M40620_IG15:
        mov      ecx, 0x6901
        bt       ecx, eax
        jb       SHORT G_M40620_IG17
 						;; size=10 bbWeight=0.50 PerfScore 0.87
 G_M40620_IG16:
        cmp      edi, 500
        jne      SHORT G_M40620_IG18
 						;; size=8 bbWeight=0.50 PerfScore 0.62
 G_M40620_IG17:
        mov      eax, 1
        jmp      SHORT G_M40620_IG19
 						;; size=7 bbWeight=0.50 PerfScore 1.12
 G_M40620_IG18:
        cmp      edi, 503
        sete     al
        movzx    rax, al
 						;; size=12 bbWeight=0.50 PerfScore 0.75
 G_M40620_IG19:
        movzx    r13, al
        test     r13d, r13d
        jne      SHORT G_M40620_IG20
        mov      rdi, gword ptr [rbx+0x10]
        mov      rdi, gword ptr [rdi+0x20]
        mov      rax, 0xD1FFAB1E      ; code for System.Net.HttpListenerRequest:get_KeepAlive():ubyte:this
        cmp      dword ptr [rdi], edi
        call     [rax]System.Net.HttpListenerRequest:get_KeepAlive():ubyte:this
        test     eax, eax
        sete     r13b
        movzx    r13, r13b
 						;; size=41 bbWeight=0.50 PerfScore 6.62
 G_M40620_IG20:
        cmp      byte  ptr [rbx+0x58], 0
        sete     dil
        movzx    rdi, dil
        or       edi, r13d
        je       SHORT G_M40620_IG21
        mov      rdi, gword ptr [rbx+0x28]
        mov      rsi, 0xD1FFAB1E      ; 'Connection'
        mov      rdx, 0xD1FFAB1E      ; 'close'
        mov      rax, qword ptr [rdi]
        mov      rax, qword ptr [rax+0x50]
        call     [rax+0x08]System.Collections.Specialized.NameValueCollection:Set(System.String,System.String):this
        mov      r13d, 1
 						;; size=57 bbWeight=0.50 PerfScore 7.62
 G_M40620_IG21:
        cmp      dword ptr [rbx+0x50], 1
        jne      SHORT G_M40620_IG22
        mov      rdi, gword ptr [rbx+0x28]
        mov      rsi, 0xD1FFAB1E      ; 'Transfer-Encoding'
        mov      rdx, 0xD1FFAB1E      ; 'chunked'
        mov      rax, qword ptr [rdi]
        mov      rax, qword ptr [rax+0x50]
        call     [rax+0x08]System.Collections.Specialized.NameValueCollection:Set(System.String,System.String):this
 						;; size=40 bbWeight=0.50 PerfScore 6.75
 G_M40620_IG22:
        mov      rdi, gword ptr [rbx+0x10]
        mov      rdi, gword ptr [rdi+0x28]
        cmp      dword ptr [rdi+0x90], 100
        jl       SHORT G_M40620_IG23
        mov      byte  ptr [rbx+0x59], 1
        test     r13d, r13d
        jne      SHORT G_M40620_IG23
        mov      rdi, gword ptr [rbx+0x28]
        mov      rsi, 0xD1FFAB1E      ; 'Connection'
        mov      rdx, 0xD1FFAB1E      ; 'close'
        mov      rax, qword ptr [rdi]
        mov      rax, qword ptr [rax+0x50]
        call     [rax+0x08]System.Collections.Specialized.NameValueCollection:Set(System.String,System.String):this
        mov      r13d, 1
 						;; size=66 bbWeight=0.50 PerfScore 10.00
 G_M40620_IG23:
        mov      rdi, gword ptr [rbx+0x10]
        mov      rdi, gword ptr [rdi+0x20]
        mov      r12, gword ptr [rdi+0x20]
        mov      rdi, 0xD1FFAB1E      ; global ptr
        test     byte  ptr [rdi], 1
-       je       G_M40620_IG34
+       je       G_M40620_IG32
 						;; size=31 bbWeight=0.50 PerfScore 5.12
 G_M40620_IG24:
        mov      rdi, 0xD1FFAB1E      ; data for System.Net.HttpVersion:Version10
        mov      rsi, gword ptr [rdi]
        test     r12, r12
        je       SHORT G_M40620_IG25
        mov      rdi, r12
        mov      rax, 0xD1FFAB1E      ; code for System.Version:CompareTo(System.Version):int:this
        call     [rax]System.Version:CompareTo(System.Version):int:this
        test     eax, eax
-       jg       G_M40620_IG29
-						;; size=41 bbWeight=0.50 PerfScore 4.12
+       jg       SHORT G_M40620_IG27
+						;; size=37 bbWeight=0.50 PerfScore 4.12
 G_M40620_IG25:
        cmp      byte  ptr [rbx+0x58], 0
-       je       SHORT G_M40620_IG28
-       mov      r12, gword ptr [rbx+0x28]
-       cmp      byte  ptr [r12+0x50], 0
-       jne      SHORT G_M40620_IG26
-       mov      byte  ptr [r12+0x50], 2
-						;; size=24 bbWeight=0.50 PerfScore 5.50
-G_M40620_IG26:
-       cmp      byte  ptr [r12+0x50], 2
-       jne      G_M40620_IG37
-       mov      rdi, 0xD1FFAB1E      ; global ptr
-       test     byte  ptr [rdi], 1
-       je       G_M40620_IG35
-						;; size=31 bbWeight=0.50 PerfScore 4.12
-G_M40620_IG27:
-       mov      rsi, 0xD1FFAB1E      ; data for System.Net.HttpResponseHeaderExtensions:s_names
-       mov      rsi, gword ptr [rsi]
-       cmp      dword ptr [rsi+0x08], 3
-       jbe      G_M40620_IG38
-       mov      rsi, gword ptr [rsi+0x28]
-       mov      rdi, r12
+       je       SHORT G_M40620_IG26
+       mov      rdi, gword ptr [rbx+0x28]
+       mov      esi, 3
        mov      rdx, 0xD1FFAB1E      ; 'true'
-       mov      rax, qword ptr [r12]
-       mov      rax, qword ptr [rax+0x50]
-       call     [rax+0x08]System.Collections.Specialized.NameValueCollection:Set(System.String,System.String):this
-						;; size=51 bbWeight=0.50 PerfScore 7.88
-G_M40620_IG28:
+       mov      rax, 0xD1FFAB1E      ; code for System.Net.WebHeaderCollection:set_Item(int,System.String):this
+       cmp      dword ptr [rdi], edi
+       call     [rax]System.Net.WebHeaderCollection:set_Item(int,System.String):this
+						;; size=39 bbWeight=0.50 PerfScore 6.38
+G_M40620_IG26:
        test     r13d, r13d
-       jne      SHORT G_M40620_IG29
+       jne      SHORT G_M40620_IG27
        mov      rdi, gword ptr [rbx+0x28]
        mov      rsi, 0xD1FFAB1E      ; 'Connection'
        mov      rdx, 0xD1FFAB1E      ; 'keep-alive'
        mov      rax, qword ptr [rdi]
        mov      rax, qword ptr [rax+0x50]
        call     [rax+0x08]System.Collections.Specialized.NameValueCollection:Set(System.String,System.String):this
 						;; size=39 bbWeight=0.50 PerfScore 5.38
-G_M40620_IG29:
+G_M40620_IG27:
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.Net.HttpListenerResponse:ComputeCookies():this
        call     [rax]System.Net.HttpListenerResponse:ComputeCookies():this
 						;; size=15 bbWeight=0.50 PerfScore 1.75
-G_M40620_IG30:
+G_M40620_IG28:
        mov      rdi, 0xD1FFAB1E      ; const ptr
        mov      r13, gword ptr [rdi]
        mov      rdi, 0xD1FFAB1E      ; System.IO.StreamWriter
        call     CORINFO_HELP_NEWSFAST
        mov      r12, rax
        mov      rdi, r12
        mov      rsi, r15
        mov      rdx, r13
        mov      ecx, 256
        xor      r8d, r8d
        mov      rax, 0xD1FFAB1E      ; code for System.IO.StreamWriter:.ctor(System.IO.Stream,System.Text.Encoding,int,ubyte):this
        call     [rax]System.IO.StreamWriter:.ctor(System.IO.Stream,System.Text.Encoding,int,ubyte):this
        mov      rdi, 0xD1FFAB1E      ; System.Int32
        call     CORINFO_HELP_NEWSFAST
        mov      edx, dword ptr [rbx+0x54]
        mov      dword ptr [rax+0x08], edx
        mov      gword ptr [rbp-0x30], rax
        lea      rdx, bword ptr [rbp-0x30]
        mov      ecx, 1
        mov      rdi, r12
        mov      rsi, 0xD1FFAB1E      ; 'HTTP/1.1 {0} '
        xor      r8d, r8d
        mov      rax, 0xD1FFAB1E      ; code for System.IO.StreamWriter:WriteFormatHelper(System.String,System.ReadOnlySpan`1[System.Object],ubyte):this
        call     [rax]System.IO.StreamWriter:WriteFormatHelper(System.String,System.ReadOnlySpan`1[System.Object],ubyte):this
        mov      rdi, gword ptr [r12+0x48]
        test     dword ptr [rdi+0x34], 0xD1FFAB1E
-       je       G_M40620_IG36
+       je       G_M40620_IG33
        mov      rdi, r12
        mov      esi, 1
        mov      edx, 1
        mov      rax, 0xD1FFAB1E      ; code for System.IO.StreamWriter:Flush(ubyte,ubyte):this
        call     [rax]System.IO.StreamWriter:Flush(ubyte,ubyte):this
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.Net.HttpListenerResponse:get_StatusDescription():System.String:this
        call     [rax]System.Net.HttpListenerResponse:get_StatusDescription():System.String:this
        mov      rdi, rax
        mov      rax, 0xD1FFAB1E      ; code for System.Net.WebHeaderEncoding:GetBytes(System.String):ubyte[]
        call     [rax]System.Net.WebHeaderEncoding:GetBytes(System.String):ubyte[]
        mov      ecx, dword ptr [rax+0x08]
        mov      rdi, r15
        mov      rsi, rax
        xor      edx, edx
        mov      rax, qword ptr [r15]
        mov      rax, qword ptr [rax+0x60]
        call     [rax+0x30]System.IO.Stream:Write(ubyte[],int,int):this
        mov      rdi, r12
        mov      rsi, 0xD1FFAB1E      ; '  '
        mov      rax, 0xD1FFAB1E      ; code for System.IO.StreamWriter:Write(System.String):this
        call     [rax]System.IO.StreamWriter:Write(System.String):this
        mov      rdi, gword ptr [rbx+0x28]
        mov      rax, 0xD1FFAB1E      ; code for System.Net.HttpListenerResponse:FormatHeaders(System.Net.WebHeaderCollection):System.String
        call     [rax]System.Net.HttpListenerResponse:FormatHeaders(System.Net.WebHeaderCollection):System.String
        mov      rsi, rax
        mov      rdi, r12
        mov      rax, 0xD1FFAB1E      ; code for System.IO.StreamWriter:Write(System.String):this
        call     [rax]System.IO.StreamWriter:Write(System.String):this
        mov      rdi, gword ptr [r12+0x48]
        test     dword ptr [rdi+0x34], 0xD1FFAB1E
 						;; size=287 bbWeight=1 PerfScore 62.75
-G_M40620_IG31:
-       je       G_M40620_IG36
+G_M40620_IG29:
+       je       G_M40620_IG33
        mov      rdi, r12
        mov      esi, 1
        mov      edx, 1
        mov      rax, 0xD1FFAB1E      ; code for System.IO.StreamWriter:Flush(ubyte,ubyte):this
        call     [rax]System.IO.StreamWriter:Flush(ubyte,ubyte):this
        mov      rdi, r13
        mov      rax, 0xD1FFAB1E      ; code for System.Text.UTF8Encoding+UTF8EncodingSealed:get_Preamble():System.ReadOnlySpan`1[ubyte]:this
        call     [rax]System.Text.UTF8Encoding+UTF8EncodingSealed:get_Preamble():System.ReadOnlySpan`1[ubyte]:this
        mov      r13d, edx
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.Net.HttpListenerResponse:EnsureResponseStream():this
        call     [rax]System.Net.HttpListenerResponse:EnsureResponseStream():this
        mov      esi, r13d
        mov      rdi, r15
        mov      rax, qword ptr [r15]
        mov      rax, qword ptr [rax+0x48]
        call     [rax+0x18]System.IO.Stream:set_Position(long):this
        test     r14b, r14b
        sete     al
        mov      byte  ptr [rbx+0x5B], al
 						;; size=89 bbWeight=1 PerfScore 22.00
-G_M40620_IG32:
+G_M40620_IG30:
        add      rsp, 8
        pop      rbx
        pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
 						;; size=15 bbWeight=1 PerfScore 4.25
-G_M40620_IG33:
+G_M40620_IG31:
        mov      rdi, 0xD1FFAB1E      ; System.Net.HttpVersion
        call     CORINFO_HELP_GET_GCSTATIC_BASE
        jmp      G_M40620_IG06
 						;; size=20 bbWeight=0 PerfScore 0.00
-G_M40620_IG34:
+G_M40620_IG32:
        mov      rdi, 0xD1FFAB1E      ; System.Net.HttpVersion
        call     CORINFO_HELP_GET_GCSTATIC_BASE
        jmp      G_M40620_IG24
 						;; size=20 bbWeight=0 PerfScore 0.00
-G_M40620_IG35:
-       mov      rdi, 0xD1FFAB1E      ; System.Net.HttpResponseHeaderExtensions
-       call     CORINFO_HELP_GET_GCSTATIC_BASE
-       jmp      G_M40620_IG27
-						;; size=20 bbWeight=0 PerfScore 0.00
-G_M40620_IG36:
+G_M40620_IG33:
        mov      rax, 0xD1FFAB1E      ; code for System.IO.StreamWriter:ThrowAsyncIOInProgress()
        call     [rax]System.IO.StreamWriter:ThrowAsyncIOInProgress()
        int3     
 						;; size=13 bbWeight=0 PerfScore 0.00
-G_M40620_IG37:
-       mov      rdi, 0xD1FFAB1E      ; System.InvalidOperationException
-       call     CORINFO_HELP_NEWSFAST
-       mov      rbx, rax
-       mov      rax, 0xD1FFAB1E      ; code for System.SR:get_net_headers_rsp():System.String
-       call     [rax]System.SR:get_net_headers_rsp():System.String
-       mov      rsi, rax
-       mov      rdi, rbx
-       mov      rax, 0xD1FFAB1E      ; code for System.InvalidOperationException:.ctor(System.String):this
-       call     [rax]System.InvalidOperationException:.ctor(System.String):this
-       mov      rdi, rbx
-       call     CORINFO_HELP_THROW
-       int3     
-						;; size=57 bbWeight=0 PerfScore 0.00
-G_M40620_IG38:
-       call     CORINFO_HELP_RNGCHKFAIL
-       int3     
-						;; size=6 bbWeight=0 PerfScore 0.00
 
-; Total bytes of code 1549, prolog size 22, PerfScore 240.25, instruction count 344, allocated bytes for code 1549 (MethodHash=8c746153) for method System.Net.HttpListenerResponse:SendHeaders(ubyte,System.IO.MemoryStream,ubyte):this (FullOpts)
+; Total bytes of code 1392, prolog size 22, PerfScore 228.87, instruction count 313, allocated bytes for code 1392 (MethodHash=8c746153) for method System.Net.HttpListenerResponse:SendHeaders(ubyte,System.IO.MemoryStream,ubyte):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/73f47c2a1c2994b21abc6bd220462d1a

@MihuBot
Copy link
Owner Author

MihuBot commented Oct 17, 2024

@MichalPetryka

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