MihuBot / runtime-utils

0 stars 0 forks source link

[JitDiff X64] MichalPetryka/runtime/patch-38 #675

Open MihuBot opened 1 month ago

MihuBot commented 1 month ago

Job completed in 20 minutes 19 seconds.

Diffs

Diffs ``` Found 379 files with textual diffs. Summary of Code Size diffs: (Lower is better) Total bytes of base: 39446035 Total bytes of diff: 39531044 Total bytes of delta: 85009 (0.22 % of base) Total relative delta: 349.89 diff is a regression. relative diff is a regression. Top file regressions (bytes): 25698 : System.Collections.Immutable.dasm (1.25 % of base) 12389 : System.Data.Common.dasm (0.76 % of base) 10747 : System.Private.Xml.dasm (0.26 % of base) 6582 : System.Private.CoreLib.dasm (0.10 % of base) 4569 : System.Data.Odbc.dasm (1.93 % of base) 3597 : System.Net.Http.dasm (0.43 % of base) 2554 : System.Text.Json.dasm (0.20 % of base) 2278 : System.CodeDom.dasm (1.10 % of base) 2102 : System.Private.DataContractSerialization.dasm (0.21 % of base) 1607 : System.Net.NetworkInformation.dasm (3.20 % of base) 1433 : System.Reflection.MetadataLoadContext.dasm (0.66 % of base) 1353 : System.Formats.Tar.dasm (1.06 % of base) 1219 : System.Diagnostics.TextWriterTraceListener.dasm (6.68 % of base) 1187 : System.Configuration.ConfigurationManager.dasm (0.29 % of base) 945 : System.Net.Primitives.dasm (1.09 % of base) 893 : System.Net.Requests.dasm (0.61 % of base) 774 : System.Security.Cryptography.dasm (0.07 % of base) 532 : System.ServiceModel.Syndication.dasm (0.33 % of base) 513 : System.Net.HttpListener.dasm (0.49 % of base) 507 : System.Linq.Parallel.dasm (0.02 % of base) 494 : System.Diagnostics.Process.dasm (0.51 % of base) 459 : System.ComponentModel.TypeConverter.dasm (0.15 % of base) 420 : System.Net.Security.dasm (0.18 % of base) 418 : System.Linq.Expressions.dasm (0.05 % of base) 371 : Microsoft.Extensions.Logging.Console.dasm (0.64 % of base) 368 : Microsoft.Extensions.Hosting.dasm (0.54 % of base) 326 : Microsoft.Extensions.FileSystemGlobbing.dasm (1.29 % of base) 317 : System.Diagnostics.DiagnosticSource.dasm (0.13 % of base) 302 : System.Diagnostics.TraceSource.dasm (0.63 % of base) 257 : System.Net.Mail.dasm (0.14 % of base) 236 : System.IO.Hashing.dasm (0.92 % of base) 231 : Microsoft.VisualBasic.Core.dasm (0.04 % of base) 220 : Microsoft.CSharp.dasm (0.06 % of base) 217 : System.Linq.dasm (0.02 % of base) 200 : Microsoft.Extensions.Configuration.Xml.dasm (1.97 % of base) 188 : System.Formats.Nrbf.dasm (0.40 % of base) 188 : System.Composition.Hosting.dasm (0.18 % of base) 176 : System.Net.WebSockets.Client.dasm (0.81 % of base) 171 : System.Net.Ping.dasm (0.32 % of base) 154 : System.Collections.Concurrent.dasm (0.04 % of base) 144 : System.Text.RegularExpressions.dasm (0.02 % of base) 132 : System.Private.Xml.Linq.dasm (0.07 % of base) 121 : System.Collections.dasm (0.03 % of base) 88 : System.Security.Cryptography.Xml.dasm (0.04 % of base) 87 : Microsoft.Extensions.Configuration.dasm (0.53 % of base) 60 : System.ComponentModel.Primitives.dasm (0.37 % of base) 58 : System.IO.Packaging.dasm (0.05 % of base) 51 : ILCompiler.Reflection.ReadyToRun.dasm (0.02 % of base) 48 : System.ComponentModel.Composition.Registration.dasm (0.05 % of base) 33 : System.Threading.Tasks.Parallel.dasm (0.01 % of base) 32 : System.Net.WebHeaderCollection.dasm (0.22 % of base) 29 : Microsoft.Extensions.Configuration.Binder.dasm (0.13 % of base) 29 : System.Runtime.Serialization.Schema.dasm (0.05 % of base) 24 : Microsoft.Extensions.Options.dasm (0.09 % of base) 23 : Microsoft.Extensions.Logging.Abstractions.dasm (0.03 % of base) 15 : System.Numerics.Tensors.dasm (0.00 % of base) 14 : System.Security.Cryptography.Pkcs.dasm (0.00 % of base) 12 : System.Threading.Channels.dasm (0.01 % of base) 7 : System.ObjectModel.dasm (0.01 % of base) 7 : System.Linq.Queryable.dasm (0.00 % of base) 6 : System.Security.Cryptography.Cose.dasm (0.01 % of base) 5 : System.Transactions.Local.dasm (0.00 % of base) 4 : System.Composition.Convention.dasm (0.00 % of base) 4 : System.Net.ServerSentEvents.dasm (0.01 % of base) 3 : System.Memory.dasm (0.00 % of base) 2 : System.Threading.RateLimiting.dasm (0.00 % of base) Top file improvements (bytes): -1821 : System.Threading.Tasks.Dataflow.dasm (-0.15 % of base) -531 : System.Net.WebSockets.dasm (-0.36 % of base) -141 : System.ComponentModel.Composition.dasm (-0.03 % of base) -105 : System.Web.HttpUtility.dasm (-0.54 % of base) -94 : System.Reflection.Metadata.dasm (-0.02 % of base) -67 : System.Console.dasm (-0.08 % of base) -64 : System.Net.Sockets.dasm (-0.02 % of base) -61 : System.Formats.Asn1.dasm (-0.07 % of base) -43 : System.Resources.Extensions.dasm (-0.09 % of base) -41 : System.Net.WebClient.dasm (-0.08 % of base) -31 : System.Formats.Cbor.dasm (-0.07 % of base) -30 : System.Private.Uri.dasm (-0.03 % of base) -29 : Microsoft.Extensions.DependencyModel.dasm (-0.04 % of base) -28 : System.Resources.Writer.dasm (-0.31 % of base) -25 : System.IO.Compression.dasm (-0.03 % of base) -18 : System.Collections.Specialized.dasm (-0.14 % of base) -18 : System.Composition.TypedParts.dasm (-0.04 % of base) -17 : Microsoft.Extensions.FileProviders.Physical.dasm (-0.10 % of base) -14 : Microsoft.Extensions.Caching.Memory.dasm (-0.08 % of base) -12 : System.Runtime.Caching.dasm (-0.02 % of base) -11 : System.ComponentModel.Annotations.dasm (-0.02 % of base) -9 : System.IO.Pipelines.dasm (-0.01 % of base) -5 : System.Net.Http.Json.dasm (-0.00 % of base) -3 : System.DirectoryServices.Protocols.dasm (-0.00 % of base) -3 : System.Net.Quic.dasm (-0.00 % of base) 91 total files with Code Size differences (25 improved, 66 regressed), 168 unchanged. Top method regressions (bytes): 1798 (25.07 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.DataContract+DataContractCriticalHelper:TryCreateBuiltInDataContract(System.String,System.String,byref):ubyte (FullOpts) 654 (15.18 % of base) : System.Net.NetworkInformation.dasm - System.Net.NetworkInformation.StringParsingHelpers:ParseInterfaceStatisticsTableFromFile(System.String,System.String):System.Net.NetworkInformation.IPInterfaceStatisticsTable (FullOpts) 468 (29.98 % of base) : System.Net.Requests.dasm - System.Net.FtpControlStream:QueueOrCreateDataConection(System.Net.CommandStream+PipelineEntry,System.Net.ResponseDescription,byref):int:this (FullOpts) 457 (146.47 % of base) : System.Private.CoreLib.dasm - System.MemoryExtensions:ToUpperInvariant(System.ReadOnlySpan`1[ushort],System.Span`1[ushort]):int (FullOpts) 451 (145.95 % of base) : System.Private.CoreLib.dasm - System.MemoryExtensions:ToLowerInvariant(System.ReadOnlySpan`1[ushort],System.Span`1[ushort]):int (FullOpts) 448 (18.75 % of base) : System.Data.Common.dasm - System.Data.NewDiffgramGen:GenerateTableErrors(System.Data.DataTable):this (FullOpts) 440 (13.93 % of base) : System.Net.WebSockets.dasm - System.Net.WebSockets.ManagedWebSocket+d__69:MoveNext():this (FullOpts) 440 (52.13 % of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.CryptoConfig:EncodeOID(System.String):ubyte[] (FullOpts) 432 (33.05 % of base) : System.Data.Common.dasm - System.Data.NewDiffgramGen:GenerateRow(System.Data.DataRow):this (FullOpts) 431 (391.82 % of base) : System.Private.CoreLib.dasm - System.Char:ToUpperInvariant(ushort):ushort (FullOpts) 431 (226.84 % of base) : System.Private.Xml.dasm - System.Xml.Serialization.CodeIdentifier+<>c:b__2_0(System.Span`1[ushort],System.String):this (FullOpts) 425 (386.36 % of base) : System.Private.CoreLib.dasm - System.Char:ToLowerInvariant(ushort):ushort (FullOpts) 425 (223.68 % of base) : System.Private.Xml.dasm - System.Xml.Serialization.CodeIdentifier+<>c:b__3_0(System.Span`1[ushort],System.String):this (FullOpts) 414 (20.31 % of base) : System.Net.Primitives.dasm - System.Net.CookieParser:Get():System.Net.Cookie:this (FullOpts) 413 (36.45 % of base) : System.Private.CoreLib.dasm - System.Net.WebUtility:HtmlDecode(System.ReadOnlySpan`1[ushort],byref) (FullOpts) 400 (59.35 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableHashSet:ToImmutableHashSet[System.Numerics.Vector`1[float]](System.Collections.Generic.IEnumerable`1[System.Numerics.Vector`1[float]],System.Collections.Generic.IEqualityComparer`1[System.Numerics.Vector`1[float]]):System.Collections.Immutable.ImmutableHashSet`1[System.Numerics.Vector`1[float]] (FullOpts) 390 (76.77 % of base) : System.Data.Common.dasm - System.Data.XDRSchema:GetMinMax(System.Xml.XmlElement,byref,byref) (FullOpts) 385 (15.82 % of base) : Microsoft.Extensions.FileSystemGlobbing.dasm - Microsoft.Extensions.FileSystemGlobbing.Internal.Patterns.PatternBuilder:Build(System.String):Microsoft.Extensions.FileSystemGlobbing.Internal.IPattern:this (FullOpts) 368 (50.14 % of base) : Microsoft.Extensions.Hosting.dasm - Microsoft.Extensions.Hosting.HostOptions:Initialize(Microsoft.Extensions.Configuration.IConfiguration):this (FullOpts) 356 (54.19 % of base) : System.Private.Xml.dasm - System.Xml.XmlTextReaderImpl:ThrowTagMismatch(System.Xml.XmlTextReaderImpl+NodeData):this (FullOpts) 355 (81.05 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.XsltCompileException:.ctor(System.Exception,System.String,int,int):this (FullOpts) 353 (113.87 % of base) : System.Data.Odbc.dasm - System.Data.Common.ADP:NonSeqByteAccess(long,long,System.String):System.Exception (FullOpts) 353 (74.63 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.XslLoadException:AppendLineInfoMessage(System.String,System.Xml.Xsl.ISourceLineInfo):System.String (FullOpts) 346 (38.27 % of base) : System.Data.Common.dasm - System.Data.SimpleType:ToNode(System.Xml.XmlDocument,System.Collections.Hashtable,ubyte):System.Xml.XmlNode:this (FullOpts) 346 (52.11 % of base) : System.Diagnostics.TextWriterTraceListener.dasm - System.Diagnostics.DelimitedListTraceListener:WriteFooter(System.Diagnostics.TraceEventCache):this (FullOpts) 342 (24.59 % of base) : System.Private.Xml.dasm - System.Xml.XmlTextReaderImpl+d__530:MoveNext():this (FullOpts) 338 (128.03 % of base) : System.Private.CoreLib.dasm - System.Version:TryParseComponent(System.ReadOnlySpan`1[ushort],System.String,ubyte,byref):ubyte (FullOpts) 337 (130.62 % of base) : System.Data.Odbc.dasm - System.Data.Common.ADP:CollectionIndexInt32(int,System.Type,int):System.IndexOutOfRangeException (FullOpts) 337 (130.62 % of base) : System.Data.Common.dasm - System.Data.Common.ADP:CollectionIndexInt32(int,System.Type,int):System.IndexOutOfRangeException (FullOpts) 337 (125.75 % of base) : System.Data.Odbc.dasm - System.Data.Common.ADP:InvalidDestinationBufferIndex(int,int,System.String):System.ArgumentOutOfRangeException (FullOpts) 337 (125.75 % of base) : System.Data.Odbc.dasm - System.Data.Common.ADP:InvalidSourceBufferIndex(int,long,System.String):System.ArgumentOutOfRangeException (FullOpts) 337 (66.60 % of base) : System.Formats.Tar.dasm - System.Formats.Tar.PaxTarEntry:.ctor(System.Formats.Tar.TarEntry):this (FullOpts) 337 (80.05 % of base) : System.Private.Xml.dasm - System.Xml.XmlException:CreateMessage(System.String,System.String[],int,int):System.String (FullOpts) 334 (93.04 % of base) : System.Data.Common.dasm - System.Data.Common.ADP:InvalidDestinationBufferIndex(int,int,System.String):System.ArgumentOutOfRangeException (FullOpts) 334 (93.04 % of base) : System.Data.Common.dasm - System.Data.Common.ADP:InvalidSourceBufferIndex(int,long,System.String):System.ArgumentOutOfRangeException (FullOpts) 332 (140.68 % of base) : System.Data.Odbc.dasm - System.Data.Common.ADP:InvalidBufferSizeOrIndex(int,int):System.IndexOutOfRangeException (FullOpts) 332 (140.68 % of base) : System.Data.Common.dasm - System.Data.Common.ADP:InvalidBufferSizeOrIndex(int,int):System.IndexOutOfRangeException (FullOpts) 332 (89.49 % of base) : System.Data.Common.dasm - System.Data.ExceptionBuilder:IndexKeyLength(int,int):System.Exception (FullOpts) 332 (120.73 % of base) : System.Data.Common.dasm - System.Data.ExceptionBuilder:RangeArgument(int,int):System.Exception (FullOpts) 331 (62.22 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.XsltException:CreateMessage(System.String,System.String[],System.String,int,int):System.String (FullOpts) 330 (94.56 % of base) : System.Private.Xml.dasm - System.Xml.XmlReader:AddLineInfo(System.String,System.Xml.IXmlLineInfo):System.String (FullOpts) 329 (61.04 % of base) : System.Data.Common.dasm - System.Data.Common.ADP:UpdateConcurrencyViolation(int,int,int,System.Data.DataRow[]):System.Exception (FullOpts) 329 (64.01 % of base) : System.Net.Http.dasm - System.Net.Http.Headers.ContentDispositionHeaderValue:set_Size(System.Nullable`1[long]):this (FullOpts) 329 (26.36 % of base) : System.Private.Xml.dasm - System.Xml.Serialization.XmlSerializationWriterCodeGen:FindChoiceEnumValue(System.Xml.Serialization.ElementAccessor,System.Xml.Serialization.EnumMapping,ubyte):System.String (FullOpts) 326 (31.14 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.DataContract:GetDataContractNameForGenericName(System.String,System.Text.StringBuilder):System.Collections.Generic.List`1[int] (FullOpts) 325 (69.00 % of base) : System.Net.Mail.dasm - System.Net.Mime.SmtpDateTime:ValidateAndGetTimeZoneOffsetValues(System.String,byref,byref,byref) (FullOpts) 325 (15.78 % of base) : System.Private.Xml.dasm - System.Xml.Schema.XmlUntypedConverter:ToString(System.Object,System.Xml.IXmlNamespaceResolver):System.String:this (FullOpts) 314 (39.65 % of base) : System.CodeDom.dasm - Microsoft.VisualBasic.VBCodeGenerator:GeneratePrimitiveExpression(System.CodeDom.CodePrimitiveExpression):this (FullOpts) 299 (75.51 % of base) : System.Diagnostics.Process.dasm - Interop+procfs:g__TryParseAddressRange|19_0(System.String,byref,byref):System.ValueTuple`2[long,int] (FullOpts) 299 (7.07 % of base) : System.Private.Xml.dasm - System.Xml.Schema.XsdDuration:TryFormat(System.Span`1[ushort],byref,int):ubyte:this (FullOpts) 297 (44.07 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableHashSet:ToImmutableHashSet[System.Nullable`1[int]](System.Collections.Generic.IEnumerable`1[System.Nullable`1[int]],System.Collections.Generic.IEqualityComparer`1[System.Nullable`1[int]]):System.Collections.Immutable.ImmutableHashSet`1[System.Nullable`1[int]] (FullOpts) 289 (23.98 % of base) : System.Data.Common.dasm - System.Data.XmlTreeGen:AddColumnProperties(System.Data.DataColumn,System.Xml.XmlElement):this (FullOpts) 288 (27.07 % of base) : System.Private.Xml.dasm - System.Xml.Schema.Compiler:CheckParticleDerivation(System.Xml.Schema.XmlSchemaComplexType):this (FullOpts) 283 (55.17 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableHashSet:ToImmutableHashSet[System.Numerics.Vector`1[float]](System.Collections.Generic.IEnumerable`1[System.Numerics.Vector`1[float]]):System.Collections.Immutable.ImmutableHashSet`1[System.Numerics.Vector`1[float]] (FullOpts) 268 (29.65 % of base) : System.Private.CoreLib.dasm - System.Threading.TimerQueue:TimerThread() (FullOpts) 249 (7.40 % of base) : Microsoft.CSharp.dasm - Microsoft.CSharp.RuntimeBinder.Errors.ErrorHandling:Error(int,Microsoft.CSharp.RuntimeBinder.Errors.ErrArg[]):Microsoft.CSharp.RuntimeBinder.RuntimeBinderException (FullOpts) 245 (120.69 % of base) : System.Data.Common.dasm - System.Data.Common.DataStorage:ImplementsInterfaces(int,System.Type,byref,byref,byref,byref,byref) (FullOpts) 241 (35.76 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableHashSet:ToImmutableHashSet[double](System.Collections.Generic.IEnumerable`1[double],System.Collections.Generic.IEqualityComparer`1[double]):System.Collections.Immutable.ImmutableHashSet`1[double] (FullOpts) 240 (37.68 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableInterlocked:AddOrUpdate[short,System.Nullable`1[int]](byref,short,System.Func`2[short,System.Nullable`1[int]],System.Func`3[short,System.Nullable`1[int],System.Nullable`1[int]]):System.Nullable`1[int] (FullOpts) 240 (37.74 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableInterlocked:AddOrUpdate[ubyte,System.Nullable`1[int]](byref,ubyte,System.Func`2[ubyte,System.Nullable`1[int]],System.Func`3[ubyte,System.Nullable`1[int],System.Nullable`1[int]]):System.Nullable`1[int] (FullOpts) 237 (40.86 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableInterlocked:AddOrUpdate[short,System.Nullable`1[int]](byref,short,System.Nullable`1[int],System.Func`3[short,System.Nullable`1[int],System.Nullable`1[int]]):System.Nullable`1[int] (FullOpts) 237 (40.93 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableInterlocked:AddOrUpdate[ubyte,System.Nullable`1[int]](byref,ubyte,System.Nullable`1[int],System.Func`3[ubyte,System.Nullable`1[int],System.Nullable`1[int]]):System.Nullable`1[int] (FullOpts) 236 (153.25 % of base) : System.IO.Hashing.dasm - System.IO.Hashing.NonCryptographicHashAlgorithm+CopyToDestinationStream:BeginWrite(ubyte[],int,int,System.AsyncCallback,System.Object):System.IAsyncResult:this (FullOpts) 233 (34.57 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableHashSet:ToImmutableHashSet[short](System.Collections.Generic.IEnumerable`1[short],System.Collections.Generic.IEqualityComparer`1[short]):System.Collections.Immutable.ImmutableHashSet`1[short] (FullOpts) 233 (34.57 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableHashSet:ToImmutableHashSet[ubyte](System.Collections.Generic.IEnumerable`1[ubyte],System.Collections.Generic.IEqualityComparer`1[ubyte]):System.Collections.Immutable.ImmutableHashSet`1[ubyte] (FullOpts) 233 (40.31 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableInterlocked:TryRemove[System.Numerics.Vector`1[float],System.Nullable`1[int]](byref,System.Numerics.Vector`1[float],byref):ubyte (FullOpts) 231 (34.27 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableHashSet:ToImmutableHashSet[long](System.Collections.Generic.IEnumerable`1[long],System.Collections.Generic.IEqualityComparer`1[long]):System.Collections.Immutable.ImmutableHashSet`1[long] (FullOpts) 229 (33.98 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableHashSet:ToImmutableHashSet[int](System.Collections.Generic.IEnumerable`1[int],System.Collections.Generic.IEqualityComparer`1[int]):System.Collections.Immutable.ImmutableHashSet`1[int] (FullOpts) 228 (43.76 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableHashSet:Create[System.Numerics.Vector`1[float]](System.Collections.Generic.IEqualityComparer`1[System.Numerics.Vector`1[float]],System.Numerics.Vector`1[float][]):System.Collections.Immutable.ImmutableHashSet`1[System.Numerics.Vector`1[float]] (FullOpts) 228 (48.10 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableHashSet:Create[System.Numerics.Vector`1[float]](System.Collections.Generic.IEqualityComparer`1[System.Numerics.Vector`1[float]],System.ReadOnlySpan`1[System.Numerics.Vector`1[float]]):System.Collections.Immutable.ImmutableHashSet`1[System.Numerics.Vector`1[float]] (FullOpts) 228 (36.42 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableInterlocked:AddOrUpdate[int,System.Nullable`1[int]](byref,int,System.Func`2[int,System.Nullable`1[int]],System.Func`3[int,System.Nullable`1[int],System.Nullable`1[int]]):System.Nullable`1[int] (FullOpts) 228 (40.00 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableInterlocked:AddOrUpdate[int,System.Nullable`1[int]](byref,int,System.Nullable`1[int],System.Func`3[int,System.Nullable`1[int],System.Nullable`1[int]]):System.Nullable`1[int] (FullOpts) 228 (36.13 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableInterlocked:AddOrUpdate[long,System.Nullable`1[int]](byref,long,System.Func`2[long,System.Nullable`1[int]],System.Func`3[long,System.Nullable`1[int],System.Nullable`1[int]]):System.Nullable`1[int] (FullOpts) 228 (39.72 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableInterlocked:AddOrUpdate[long,System.Nullable`1[int]](byref,long,System.Nullable`1[int],System.Func`3[long,System.Nullable`1[int],System.Nullable`1[int]]):System.Nullable`1[int] (FullOpts) 228 (228.00 % of base) : System.Net.Http.dasm - System.Net.Http.HttpContent+LimitArrayPoolWriteStream:BeginWrite(ubyte[],int,int,System.AsyncCallback,System.Object):System.IAsyncResult:this (FullOpts) 225 (592.11 % of base) : System.Reflection.MetadataLoadContext.dasm - System.Reflection.TypeLoading.RoModule:GetUniqueConstructedGenericType(System.Reflection.TypeLoading.RoDefinitionType,System.Reflection.TypeLoading.RoType[]):System.Reflection.TypeLoading.RoConstructedGenericType:this (FullOpts) 222 (198.21 % of base) : System.Reflection.MetadataLoadContext.dasm - System.Reflection.TypeLoading.RoModule:GetUniqueArrayType(System.Reflection.TypeLoading.RoType):System.Reflection.TypeLoading.RoArrayType:this (FullOpts) 222 (198.21 % of base) : System.Reflection.MetadataLoadContext.dasm - System.Reflection.TypeLoading.RoModule:GetUniqueByRefType(System.Reflection.TypeLoading.RoType):System.Reflection.TypeLoading.RoByRefType:this (FullOpts) 221 (15.87 % of base) : System.Private.Xml.dasm - System.Xml.Serialization.XmlSerializationReader:ParseArrayType(System.String):System.Xml.Serialization.XmlSerializationReader+SoapArrayInfo:this (FullOpts) 220 (15.43 % of base) : System.Net.Requests.dasm - System.Net.FtpControlStream:QueueOrCreateFtpDataStream(byref):int:this (FullOpts) 220 (7.28 % of base) : System.Private.CoreLib.dasm - System.TimeZoneInfo+StringSerializer:GetSerializedString(System.TimeZoneInfo):System.String (FullOpts) 218 (42.50 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableHashSet:ToImmutableHashSet[System.Nullable`1[int]](System.Collections.Generic.IEnumerable`1[System.Nullable`1[int]]):System.Collections.Immutable.ImmutableHashSet`1[System.Nullable`1[int]] (FullOpts) 218 (196.40 % of base) : System.Private.CoreLib.dasm - System.IO.Stream+NullStream:BeginRead(ubyte[],int,int,System.AsyncCallback,System.Object):System.IAsyncResult:this (FullOpts) 218 (196.40 % of base) : System.Private.CoreLib.dasm - System.IO.Stream+NullStream:BeginWrite(ubyte[],int,int,System.AsyncCallback,System.Object):System.IAsyncResult:this (FullOpts) 217 (6.08 % of base) : System.Private.Xml.dasm - System.Xml.Serialization.XmlSerializationWriterCodeGen:WriteEnumMethod(System.Xml.Serialization.EnumMapping):this (FullOpts) 214 (22.46 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableInterlocked:GetOrAdd[System.Numerics.Vector`1[float],System.Nullable`1[int]](byref,System.Numerics.Vector`1[float],System.Nullable`1[int]):System.Nullable`1[int] (FullOpts) 213 (22.26 % of base) : System.Net.Http.dasm - System.Threading.Tasks.TaskCompletionSourceWithCancellation`1+d__1[System.Nullable`1[int]]:MoveNext():this (FullOpts) 212 (33.12 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableInterlocked:AddOrUpdate[double,System.Nullable`1[int]](byref,double,System.Func`2[double,System.Nullable`1[int]],System.Func`3[double,System.Nullable`1[int],System.Nullable`1[int]]):System.Nullable`1[int] (FullOpts) 212 (36.43 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableInterlocked:AddOrUpdate[double,System.Nullable`1[int]](byref,double,System.Nullable`1[int],System.Func`3[double,System.Nullable`1[int],System.Nullable`1[int]]):System.Nullable`1[int] (FullOpts) 212 (31.13 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableInterlocked:AddOrUpdate[System.Nullable`1[int],System.Nullable`1[int]](byref,System.Nullable`1[int],System.Func`2[System.Nullable`1[int],System.Nullable`1[int]],System.Func`3[System.Nullable`1[int],System.Nullable`1[int],System.Nullable`1[int]]):System.Nullable`1[int] (FullOpts) 212 (33.92 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableInterlocked:AddOrUpdate[System.Nullable`1[int],System.Nullable`1[int]](byref,System.Nullable`1[int],System.Nullable`1[int],System.Func`3[System.Nullable`1[int],System.Nullable`1[int],System.Nullable`1[int]]):System.Nullable`1[int] (FullOpts) 211 (22.38 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableInterlocked:TryAdd[System.Numerics.Vector`1[float],System.Nullable`1[int]](byref,System.Numerics.Vector`1[float],System.Nullable`1[int]):ubyte (FullOpts) 210 (17.60 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableInterlocked:AddOrUpdate[System.Numerics.Vector`1[float],System.Nullable`1[int]](byref,System.Numerics.Vector`1[float],System.Func`2[System.Numerics.Vector`1[float],System.Nullable`1[int]],System.Func`3[System.Numerics.Vector`1[float],System.Nullable`1[int],System.Nullable`1[int]]):System.Nullable`1[int] (FullOpts) 210 (18.58 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableInterlocked:AddOrUpdate[System.Numerics.Vector`1[float],System.Nullable`1[int]](byref,System.Numerics.Vector`1[float],System.Nullable`1[int],System.Func`3[System.Numerics.Vector`1[float],System.Nullable`1[int],System.Nullable`1[int]]):System.Nullable`1[int] (FullOpts) 210 (16.51 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableInterlocked:GetOrAdd[System.Numerics.Vector`1[float],System.Nullable`1[int]](byref,System.Numerics.Vector`1[float],System.Func`2[System.Numerics.Vector`1[float],System.Nullable`1[int]]):System.Nullable`1[int] (FullOpts) 210 (122.81 % of base) : System.Reflection.MetadataLoadContext.dasm - System.Reflection.TypeLoading.Ecma.EcmaModule:GetGenericInstantiation(System.Reflection.TypeLoading.RoType,System.Collections.Immutable.ImmutableArray`1[System.Reflection.TypeLoading.RoType]):System.Reflection.TypeLoading.RoType:this (FullOpts) 209 (16.32 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.SchemaExporter:ExportEnumDataContract(System.Runtime.Serialization.DataContracts.EnumDataContract,System.Xml.Schema.XmlSchema):this (FullOpts) 208 (76.47 % of base) : System.Net.Http.dasm - System.Net.Http.Headers.WarningHeaderValue:TryReadCode(System.String,byref,byref):ubyte (FullOpts) 206 (56.44 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableHashSet:CreateRange[System.Numerics.Vector`1[float]](System.Collections.Generic.IEqualityComparer`1[System.Numerics.Vector`1[float]],System.Collections.Generic.IEnumerable`1[System.Numerics.Vector`1[float]]):System.Collections.Immutable.ImmutableHashSet`1[System.Numerics.Vector`1[float]] (FullOpts) 205 (15.28 % of base) : System.Net.Http.dasm - System.Net.Http.Headers.RetryConditionHeaderValue:GetRetryConditionLength(System.String,int,byref):int (FullOpts) Top method improvements (bytes): -207 (-6.00 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableHashSet`1[double]:SymmetricExcept(System.Collections.Generic.IEnumerable`1[double],System.Collections.Immutable.ImmutableHashSet`1+MutationInput[double]):System.Collections.Immutable.ImmutableHashSet`1+MutationResult[double] (FullOpts) -204 (-7.86 % of base) : System.Configuration.ConfigurationManager.dasm - System.Configuration.ConfigurationErrorsException:GetObjectData(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext):this (FullOpts) -182 (-5.33 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableHashSet`1[short]:SymmetricExcept(System.Collections.Generic.IEnumerable`1[short],System.Collections.Immutable.ImmutableHashSet`1+MutationInput[short]):System.Collections.Immutable.ImmutableHashSet`1+MutationResult[short] (FullOpts) -181 (-5.31 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableHashSet`1[int]:SymmetricExcept(System.Collections.Generic.IEnumerable`1[int],System.Collections.Immutable.ImmutableHashSet`1+MutationInput[int]):System.Collections.Immutable.ImmutableHashSet`1+MutationResult[int] (FullOpts) -180 (-5.27 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableHashSet`1[long]:SymmetricExcept(System.Collections.Generic.IEnumerable`1[long],System.Collections.Immutable.ImmutableHashSet`1+MutationInput[long]):System.Collections.Immutable.ImmutableHashSet`1+MutationResult[long] (FullOpts) -180 (-5.27 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableHashSet`1[ubyte]:SymmetricExcept(System.Collections.Generic.IEnumerable`1[ubyte],System.Collections.Immutable.ImmutableHashSet`1+MutationInput[ubyte]):System.Collections.Immutable.ImmutableHashSet`1+MutationResult[ubyte] (FullOpts) -175 (-2.02 % of base) : System.Net.WebSockets.dasm - System.Net.WebSockets.ManagedWebSocket+d__61`1[int]:MoveNext():this (FullOpts) -175 (-2.01 % of base) : System.Net.WebSockets.dasm - System.Net.WebSockets.ManagedWebSocket+d__61`1[short]:MoveNext():this (FullOpts) -175 (-1.90 % of base) : System.Net.WebSockets.dasm - System.Net.WebSockets.ManagedWebSocket+d__61`1[System.Numerics.Vector`1[float]]:MoveNext():this (FullOpts) -175 (-2.01 % of base) : System.Net.WebSockets.dasm - System.Net.WebSockets.ManagedWebSocket+d__61`1[ubyte]:MoveNext():this (FullOpts) -164 (-5.51 % of base) : System.Net.Http.dasm - System.Net.Http.SocksHelper+d__13:MoveNext():this (FullOpts) -157 (-10.14 % of base) : System.Net.HttpListener.dasm - System.Net.HttpListenerResponse:SendHeaders(ubyte,System.IO.MemoryStream,ubyte):this (FullOpts) -151 (-1.73 % of base) : System.Net.WebSockets.dasm - System.Net.WebSockets.ManagedWebSocket+d__61`1[double]:MoveNext():this (FullOpts) -151 (-1.73 % of base) : System.Net.WebSockets.dasm - System.Net.WebSockets.ManagedWebSocket+d__61`1[long]:MoveNext():this (FullOpts) -123 (-10.78 % 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) -104 (-1.82 % of base) : System.Private.Xml.dasm - System.Xml.Serialization.XmlSerializationReaderILGen:WriteAttributes(System.Xml.Serialization.XmlSerializationReaderILGen+Member[],System.Xml.Serialization.XmlSerializationReaderILGen+Member,System.String,System.Reflection.Emit.LocalBuilder):this (FullOpts) -99 (-1.35 % 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) -91 (-10.92 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.XmlObjectSerializer:WriteObject(System.IO.Stream,System.Object):this (FullOpts) -89 (-3.60 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.DataContract+DataContractCriticalHelper:TryCreateBuiltInDataContract(System.Type,byref):ubyte (FullOpts) -76 (-3.04 % 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) -74 (-4.45 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.Xslt.QilGenerator:CreateGeneralKeyFunction():System.Xml.Xsl.Qil.QilFunction:this (FullOpts) -67 (-2.31 % of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.X509Certificates.OpenSslX509ChainProcessor:FinishRevocation(int,int,int):this (FullOpts) -63 (-0.90 % of base) : System.Private.Xml.dasm - System.Xml.Serialization.XmlSerializationReaderILGen:GenerateLiteralMembersElement(System.Xml.Serialization.XmlMembersMapping):System.String:this (FullOpts) -62 (-4.18 % of base) : System.Net.Mail.dasm - System.Net.Mime.BaseWriter:WriteAndFold(System.String,int,ubyte):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) -55 (-4.37 % 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) -54 (-1.66 % of base) : System.Net.Mail.dasm - System.Net.Mail.SmtpClient:Send(System.Net.Mail.MailMessage):this (FullOpts) -54 (-1.55 % of base) : System.Private.Xml.dasm - System.Xml.Serialization.XmlSerializationReaderILGen:WriteEnumAndArrayTypes():this (FullOpts) -54 (-2.92 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.Xslt.XsltLoader:XslChoose():System.Xml.Xsl.Xslt.XslNode:this (FullOpts) -53 (-3.11 % of base) : System.Console.dasm - System.IO.StdInReader:ReadLineCore(ubyte):ubyte:this (FullOpts) -52 (-3.52 % of base) : System.Private.Xml.dasm - System.Xml.Serialization.XmlSerializationReaderILGen:GenerateTypeElement(System.Xml.Serialization.XmlTypeMapping):System.String:this (FullOpts) -52 (-2.58 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.Xslt.XsltLoader:LoadTemplate(System.Xml.Xsl.Xslt.NsDecl):this (FullOpts) -50 (-3.93 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.XmlObjectSerializerWriteContext:WriteSerializationInfo(System.Runtime.Serialization.XmlWriterDelegator,System.Type,System.Runtime.Serialization.SerializationInfo):this (FullOpts) -49 (-4.37 % of base) : System.Text.Json.dasm - System.Text.Json.Utf8JsonWriter:WritePropertyName(double):this (FullOpts) -48 (-1.02 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.Json.JsonFormatReaderGenerator+CriticalHelper:ReadCollection(System.Runtime.Serialization.DataContracts.CollectionDataContract):this (FullOpts) -48 (-2.23 % 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) -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) -47 (-0.71 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.Xslt.QilGenerator:PrecompileProtoTemplatesHeaders():this (FullOpts) -46 (-1.69 % of base) : System.Private.Xml.dasm - System.Xml.Serialization.XmlSerializationReaderILGen:WriteArray(System.String,System.String,System.Xml.Serialization.ArrayMapping,ubyte,ubyte,int):this (FullOpts) -40 (-1.10 % of base) : System.Private.Xml.dasm - System.Xml.Serialization.XmlSerializationWriterILGen:WriteArrayItems(System.Xml.Serialization.ElementAccessor[],System.Xml.Serialization.TextAccessor,System.Xml.Serialization.ChoiceIdentifierAccessor,System.Xml.Serialization.TypeDesc,System.String,System.String):this (FullOpts) -39 (-5.42 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.Json.DataContractJsonSerializer:WriteObject(System.IO.Stream,System.Object):this (FullOpts) -35 (-1.68 % of base) : System.Private.CoreLib.dasm - System.Version:ParseVersion(System.ReadOnlySpan`1[ushort],ubyte):System.Version (FullOpts) -34 (-1.59 % of base) : System.Threading.Tasks.Dataflow.dasm - System.Threading.Tasks.Dataflow.BatchBlock`1[double]:.ctor(int,System.Threading.Tasks.Dataflow.GroupingDataflowBlockOptions):this (FullOpts) -34 (-1.59 % of base) : System.Threading.Tasks.Dataflow.dasm - System.Threading.Tasks.Dataflow.BatchBlock`1[int]:.ctor(int,System.Threading.Tasks.Dataflow.GroupingDataflowBlockOptions):this (FullOpts) -34 (-1.59 % of base) : System.Threading.Tasks.Dataflow.dasm - System.Threading.Tasks.Dataflow.BatchBlock`1[long]:.ctor(int,System.Threading.Tasks.Dataflow.GroupingDataflowBlockOptions):this (FullOpts) -34 (-1.59 % of base) : System.Threading.Tasks.Dataflow.dasm - System.Threading.Tasks.Dataflow.BatchBlock`1[short]:.ctor(int,System.Threading.Tasks.Dataflow.GroupingDataflowBlockOptions):this (FullOpts) -34 (-1.59 % of base) : System.Threading.Tasks.Dataflow.dasm - System.Threading.Tasks.Dataflow.BatchBlock`1[System.Nullable`1[int]]:.ctor(int,System.Threading.Tasks.Dataflow.GroupingDataflowBlockOptions):this (FullOpts) -34 (-1.59 % of base) : System.Threading.Tasks.Dataflow.dasm - System.Threading.Tasks.Dataflow.BatchBlock`1[System.Numerics.Vector`1[float]]:.ctor(int,System.Threading.Tasks.Dataflow.GroupingDataflowBlockOptions):this (FullOpts) -34 (-1.59 % of base) : System.Threading.Tasks.Dataflow.dasm - System.Threading.Tasks.Dataflow.BatchBlock`1[ubyte]:.ctor(int,System.Threading.Tasks.Dataflow.GroupingDataflowBlockOptions):this (FullOpts) -33 (-0.52 % of base) : System.Private.Xml.dasm - System.Xml.Serialization.XmlSerializationWriterILGen:WriteElements(System.Xml.Serialization.SourceInfo,System.String,System.Xml.Serialization.ElementAccessor[],System.Xml.Serialization.TextAccessor,System.Xml.Serialization.ChoiceIdentifierAccessor,System.String,ubyte,ubyte):this (FullOpts) -32 (-1.36 % of base) : System.Private.CoreLib.dasm - System.IO.Enumeration.FileSystemName:MatchPattern(System.ReadOnlySpan`1[ushort],System.ReadOnlySpan`1[ushort],ubyte,ubyte):ubyte (FullOpts) -31 (-2.10 % of base) : System.Threading.Tasks.Dataflow.dasm - System.Threading.Tasks.Dataflow.DataflowBlock+SourceObservable`1+ObserversState[System.__Canon]:.ctor(System.Threading.Tasks.Dataflow.DataflowBlock+SourceObservable`1[System.__Canon]):this (FullOpts) -30 (-0.75 % of base) : System.Private.Xml.dasm - System.Xml.Schema.XmlSchemaInference:RefineSimpleType(System.String,byref):System.Xml.XmlQualifiedName:this (FullOpts) -30 (-3.67 % of base) : System.Private.DataContractSerialization.dasm - System.Xml.XmlCanonicalWriter:SetOutput(System.IO.Stream,ubyte,System.String[]):this (FullOpts) -29 (-0.33 % of base) : System.Net.WebSockets.dasm - System.Net.WebSockets.ManagedWebSocket+d__61`1[System.Nullable`1[int]]:MoveNext():this (FullOpts) -29 (-1.28 % of base) : System.Private.Xml.dasm - System.Xml.Serialization.XmlSerializationReaderILGen:WriteText(System.Xml.Serialization.XmlSerializationReaderILGen+Member):this (FullOpts) -28 (-1.15 % of base) : System.Diagnostics.DiagnosticSource.dasm - System.Diagnostics.ActivitySource:CreateActivity(System.String,int,System.Diagnostics.ActivityContext,System.String,System.Collections.Generic.IEnumerable`1[System.Collections.Generic.KeyValuePair`2[System.String,System.Object]],System.Collections.Generic.IEnumerable`1[System.Diagnostics.ActivityLink],System.DateTimeOffset,ubyte,int):System.Diagnostics.Activity:this (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 (-2.87 % of base) : System.Private.Xml.dasm - System.Xml.Serialization.XmlSerializationReaderILGen:WriteMemberElements(System.Xml.Serialization.XmlSerializationReaderILGen+Member[],System.String,System.String,System.Xml.Serialization.XmlSerializationReaderILGen+Member,System.Xml.Serialization.XmlSerializationReaderILGen+Member):this (FullOpts) -28 (-1.27 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.Xslt.QilGenerator:CompileKeys():this (FullOpts) -27 (-4.58 % of base) : System.Private.Uri.dasm - System.DomainNameHelper:ParseCanonicalName(System.String,int,int,byref):System.String (FullOpts) -27 (-0.96 % of base) : System.Net.WebSockets.dasm - System.Net.WebSockets.ManagedWebSocket+d__70:MoveNext():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 (-0.86 % of base) : System.Threading.Tasks.Dataflow.dasm - System.Threading.Tasks.Dataflow.TransformBlock`2[double,System.Nullable`1[int]]:.ctor(System.Func`2[double,System.Nullable`1[int]],System.Func`2[double,System.Threading.Tasks.Task`1[System.Nullable`1[int]]],System.Threading.Tasks.Dataflow.ExecutionDataflowBlockOptions):this (FullOpts) -26 (-0.86 % of base) : System.Threading.Tasks.Dataflow.dasm - System.Threading.Tasks.Dataflow.TransformBlock`2[int,System.Nullable`1[int]]:.ctor(System.Func`2[int,System.Nullable`1[int]],System.Func`2[int,System.Threading.Tasks.Task`1[System.Nullable`1[int]]],System.Threading.Tasks.Dataflow.ExecutionDataflowBlockOptions):this (FullOpts) -26 (-0.86 % of base) : System.Threading.Tasks.Dataflow.dasm - System.Threading.Tasks.Dataflow.TransformBlock`2[long,System.Nullable`1[int]]:.ctor(System.Func`2[long,System.Nullable`1[int]],System.Func`2[long,System.Threading.Tasks.Task`1[System.Nullable`1[int]]],System.Threading.Tasks.Dataflow.ExecutionDataflowBlockOptions):this (FullOpts) -26 (-0.86 % of base) : System.Threading.Tasks.Dataflow.dasm - System.Threading.Tasks.Dataflow.TransformBlock`2[short,System.Nullable`1[int]]:.ctor(System.Func`2[short,System.Nullable`1[int]],System.Func`2[short,System.Threading.Tasks.Task`1[System.Nullable`1[int]]],System.Threading.Tasks.Dataflow.ExecutionDataflowBlockOptions):this (FullOpts) -26 (-0.86 % of base) : System.Threading.Tasks.Dataflow.dasm - System.Threading.Tasks.Dataflow.TransformBlock`2[System.Nullable`1[int],System.Nullable`1[int]]:.ctor(System.Func`2[System.Nullable`1[int],System.Nullable`1[int]],System.Func`2[System.Nullable`1[int],System.Threading.Tasks.Task`1[System.Nullable`1[int]]],System.Threading.Tasks.Dataflow.ExecutionDataflowBlockOptions):this (FullOpts) -26 (-0.86 % of base) : System.Threading.Tasks.Dataflow.dasm - System.Threading.Tasks.Dataflow.TransformBlock`2[System.Numerics.Vector`1[float],System.Nullable`1[int]]:.ctor(System.Func`2[System.Numerics.Vector`1[float],System.Nullable`1[int]],System.Func`2[System.Numerics.Vector`1[float],System.Threading.Tasks.Task`1[System.Nullable`1[int]]],System.Threading.Tasks.Dataflow.ExecutionDataflowBlockOptions):this (FullOpts) -26 (-0.86 % of base) : System.Threading.Tasks.Dataflow.dasm - System.Threading.Tasks.Dataflow.TransformBlock`2[ubyte,System.Nullable`1[int]]:.ctor(System.Func`2[ubyte,System.Nullable`1[int]],System.Func`2[ubyte,System.Threading.Tasks.Task`1[System.Nullable`1[int]]],System.Threading.Tasks.Dataflow.ExecutionDataflowBlockOptions):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.26 % 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) -25 (-1.02 % of base) : System.Threading.Tasks.Dataflow.dasm - System.Threading.Tasks.Dataflow.TransformManyBlock`2[System.__Canon,System.Nullable`1[int]]:Initialize(System.Action`1[System.Collections.Generic.KeyValuePair`2[System.__Canon,long]],System.Threading.Tasks.Dataflow.ExecutionDataflowBlockOptions,byref,byref,byref,ubyte):this (FullOpts) -25 (-0.80 % of base) : System.Private.Xml.dasm - System.Xml.Serialization.XmlSerializationReaderILGen:WriteAttribute(System.Xml.Serialization.XmlSerializationReaderILGen+Member):this (FullOpts) -25 (-0.48 % of base) : System.Private.Xml.dasm - System.Xml.Serialization.XmlSerializationWriterILGen:WriteEnumAndArrayTypes():this (FullOpts) -24 (-2.73 % of base) : System.Net.WebClient.dasm - System.Net.WebClient:GetValuesToUpload(System.Collections.Specialized.NameValueCollection):ubyte[]:this (FullOpts) -24 (-1.02 % of base) : System.Threading.Tasks.Dataflow.dasm - System.Threading.Tasks.Dataflow.TransformManyBlock`2[double,System.Nullable`1[int]]:Initialize(System.Action`1[System.Collections.Generic.KeyValuePair`2[double,long]],System.Threading.Tasks.Dataflow.ExecutionDataflowBlockOptions,byref,byref,byref,ubyte):this (FullOpts) -24 (-1.02 % of base) : System.Threading.Tasks.Dataflow.dasm - System.Threading.Tasks.Dataflow.TransformManyBlock`2[int,System.Nullable`1[int]]:Initialize(System.Action`1[System.Collections.Generic.KeyValuePair`2[int,long]],System.Threading.Tasks.Dataflow.ExecutionDataflowBlockOptions,byref,byref,byref,ubyte):this (FullOpts) -24 (-1.02 % of base) : System.Threading.Tasks.Dataflow.dasm - System.Threading.Tasks.Dataflow.TransformManyBlock`2[long,System.Nullable`1[int]]:Initialize(System.Action`1[System.Collections.Generic.KeyValuePair`2[long,long]],System.Threading.Tasks.Dataflow.ExecutionDataflowBlockOptions,byref,byref,byref,ubyte):this (FullOpts) -24 (-1.02 % of base) : System.Threading.Tasks.Dataflow.dasm - System.Threading.Tasks.Dataflow.TransformManyBlock`2[short,System.Nullable`1[int]]:Initialize(System.Action`1[System.Collections.Generic.KeyValuePair`2[short,long]],System.Threading.Tasks.Dataflow.ExecutionDataflowBlockOptions,byref,byref,byref,ubyte):this (FullOpts) -24 (-1.02 % of base) : System.Threading.Tasks.Dataflow.dasm - System.Threading.Tasks.Dataflow.TransformManyBlock`2[System.Nullable`1[int],System.Nullable`1[int]]:Initialize(System.Action`1[System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],long]],System.Threading.Tasks.Dataflow.ExecutionDataflowBlockOptions,byref,byref,byref,ubyte):this (FullOpts) -24 (-1.02 % of base) : System.Threading.Tasks.Dataflow.dasm - System.Threading.Tasks.Dataflow.TransformManyBlock`2[System.Numerics.Vector`1[float],System.Nullable`1[int]]:Initialize(System.Action`1[System.Collections.Generic.KeyValuePair`2[System.Numerics.Vector`1[float],long]],System.Threading.Tasks.Dataflow.ExecutionDataflowBlockOptions,byref,byref,byref,ubyte):this (FullOpts) -24 (-1.02 % of base) : System.Threading.Tasks.Dataflow.dasm - System.Threading.Tasks.Dataflow.TransformManyBlock`2[ubyte,System.Nullable`1[int]]:Initialize(System.Action`1[System.Collections.Generic.KeyValuePair`2[ubyte,long]],System.Threading.Tasks.Dataflow.ExecutionDataflowBlockOptions,byref,byref,byref,ubyte):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 (-2.81 % of base) : System.Threading.Tasks.Dataflow.dasm - System.Threading.Tasks.Dataflow.Internal.Common:WireCancellationToComplete(System.Threading.CancellationToken,System.Threading.Tasks.Task,System.Action`2[System.Object,System.Threading.CancellationToken],System.Object) (FullOpts) -23 (-2.09 % of base) : System.Threading.Tasks.Dataflow.dasm - System.Threading.Tasks.Dataflow.Internal.TargetCore`1[double]:ProcessMessagesLoopCore():this (FullOpts) -23 (-2.09 % of base) : System.Threading.Tasks.Dataflow.dasm - System.Threading.Tasks.Dataflow.Internal.TargetCore`1[int]:ProcessMessagesLoopCore():this (FullOpts) -23 (-2.08 % of base) : System.Threading.Tasks.Dataflow.dasm - System.Threading.Tasks.Dataflow.Internal.TargetCore`1[long]:ProcessMessagesLoopCore():this (FullOpts) -23 (-2.08 % of base) : System.Threading.Tasks.Dataflow.dasm - System.Threading.Tasks.Dataflow.Internal.TargetCore`1[short]:ProcessMessagesLoopCore():this (FullOpts) -23 (-2.08 % of base) : System.Threading.Tasks.Dataflow.dasm - System.Threading.Tasks.Dataflow.Internal.TargetCore`1[ubyte]:ProcessMessagesLoopCore():this (FullOpts) -22 (-0.60 % of base) : System.Resources.Extensions.dasm - System.Resources.Extensions.PreserializedResourceWriter:Generate():this (FullOpts) -22 (-0.59 % of base) : System.Resources.Writer.dasm - System.Resources.ResourceWriter:Generate():this (FullOpts) -22 (-3.99 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.Json.JsonReaderWriterFactory:CreateJsonWriter(System.IO.Stream):System.Xml.XmlDictionaryWriter (FullOpts) -22 (-2.31 % of base) : System.Threading.Tasks.Dataflow.dasm - System.Threading.Tasks.Dataflow.TransformBlock`2[double,System.Nullable`1[int]]:ProcessMessageWithTask(System.Func`2[double,System.Threading.Tasks.Task`1[System.Nullable`1[int]]],System.Collections.Generic.KeyValuePair`2[double,long]):this (FullOpts) -22 (-2.31 % of base) : System.Threading.Tasks.Dataflow.dasm - System.Threading.Tasks.Dataflow.TransformBlock`2[long,System.Nullable`1[int]]:ProcessMessageWithTask(System.Func`2[long,System.Threading.Tasks.Task`1[System.Nullable`1[int]]],System.Collections.Generic.KeyValuePair`2[long,long]):this (FullOpts) -22 (-2.31 % of base) : System.Threading.Tasks.Dataflow.dasm - System.Threading.Tasks.Dataflow.TransformBlock`2[System.Nullable`1[int],System.Nullable`1[int]]:ProcessMessageWithTask(System.Func`2[System.Nullable`1[int],System.Threading.Tasks.Task`1[System.Nullable`1[int]]],System.Collections.Generic.KeyValuePair`2[System.Nullable`1[int],long]):this (FullOpts) -21 (-5.95 % of base) : System.Configuration.ConfigurationManager.dasm - System.Diagnostics.SourceElement:ResetProperties():this (FullOpts) Top method regressions (percentages): 177 (680.77 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableList`1+Builder[double]:Replace(double,double):this (FullOpts) 195 (672.41 % of base) : System.Private.CoreLib.dasm - System.Threading.ThreadPool:UnsafeQueueHighPriorityWorkItemInternal(System.Threading.IThreadPoolWorkItem) (FullOpts) 165 (634.62 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableList`1+Builder[int]:Replace(int,int):this (FullOpts) 165 (634.62 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableList`1+Builder[long]:Replace(long,long):this (FullOpts) 225 (592.11 % of base) : System.Reflection.MetadataLoadContext.dasm - System.Reflection.TypeLoading.RoModule:GetUniqueConstructedGenericType(System.Reflection.TypeLoading.RoDefinitionType,System.Reflection.TypeLoading.RoType[]):System.Reflection.TypeLoading.RoConstructedGenericType:this (FullOpts) 163 (493.94 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableList`1+Builder[ubyte]:Replace(ubyte,ubyte):this (FullOpts) 162 (476.47 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableList`1+Builder[short]:Replace(short,short):this (FullOpts) 431 (391.82 % of base) : System.Private.CoreLib.dasm - System.Char:ToUpperInvariant(ushort):ushort (FullOpts) 425 (386.36 % of base) : System.Private.CoreLib.dasm - System.Char:ToLowerInvariant(ushort):ushort (FullOpts) 99 (380.77 % of base) : System.ComponentModel.TypeConverter.dasm - System.ComponentModel.AttributeCollection:.ctor():this (FullOpts) 81 (311.54 % of base) : System.CodeDom.dasm - System.CodeDom.Compiler.CodeDomProvider:GetAllCompilerInfo():System.CodeDom.Compiler.CompilerInfo[] (FullOpts) 78 (278.57 % of base) : System.ComponentModel.TypeConverter.dasm - System.ComponentModel.Design.HelpKeywordAttribute:IsDefaultAttribute():ubyte:this (FullOpts) 124 (275.56 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableSortedSet`1[double]:Clear():System.Collections.Immutable.ImmutableSortedSet`1[double]:this (FullOpts) 124 (275.56 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableSortedSet`1[int]:Clear():System.Collections.Immutable.ImmutableSortedSet`1[int]:this (FullOpts) 124 (275.56 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableSortedSet`1[long]:Clear():System.Collections.Immutable.ImmutableSortedSet`1[long]:this (FullOpts) 124 (275.56 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableSortedSet`1[short]:Clear():System.Collections.Immutable.ImmutableSortedSet`1[short]:this (FullOpts) 124 (275.56 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableSortedSet`1[System.Nullable`1[int]]:Clear():System.Collections.Immutable.ImmutableSortedSet`1[System.Nullable`1[int]]:this (FullOpts) 124 (275.56 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableSortedSet`1[System.Numerics.Vector`1[float]]:Clear():System.Collections.Immutable.ImmutableSortedSet`1[System.Numerics.Vector`1[float]]:this (FullOpts) 124 (275.56 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableSortedSet`1[ubyte]:Clear():System.Collections.Immutable.ImmutableSortedSet`1[ubyte]:this (FullOpts) 228 (228.00 % of base) : System.Net.Http.dasm - System.Net.Http.HttpContent+LimitArrayPoolWriteStream:BeginWrite(ubyte[],int,int,System.AsyncCallback,System.Object):System.IAsyncResult:this (FullOpts) 431 (226.84 % of base) : System.Private.Xml.dasm - System.Xml.Serialization.CodeIdentifier+<>c:b__2_0(System.Span`1[ushort],System.String):this (FullOpts) 425 (223.68 % of base) : System.Private.Xml.dasm - System.Xml.Serialization.CodeIdentifier+<>c:b__3_0(System.Span`1[ushort],System.String):this (FullOpts) 222 (198.21 % of base) : System.Reflection.MetadataLoadContext.dasm - System.Reflection.TypeLoading.RoModule:GetUniqueArrayType(System.Reflection.TypeLoading.RoType):System.Reflection.TypeLoading.RoArrayType:this (FullOpts) 222 (198.21 % of base) : System.Reflection.MetadataLoadContext.dasm - System.Reflection.TypeLoading.RoModule:GetUniqueByRefType(System.Reflection.TypeLoading.RoType):System.Reflection.TypeLoading.RoByRefType:this (FullOpts) 218 (196.40 % of base) : System.Private.CoreLib.dasm - System.IO.Stream+NullStream:BeginRead(ubyte[],int,int,System.AsyncCallback,System.Object):System.IAsyncResult:this (FullOpts) 218 (196.40 % of base) : System.Private.CoreLib.dasm - System.IO.Stream+NullStream:BeginWrite(ubyte[],int,int,System.AsyncCallback,System.Object):System.IAsyncResult:this (FullOpts) 164 (190.70 % of base) : System.Private.Xml.dasm - System.Xml.XmlConvert:ToString(int):System.String (FullOpts) 173 (184.04 % of base) : System.Text.Json.dasm - System.Text.Json.Serialization.Converters.Int128Converter:TryParse(System.ReadOnlySpan`1[ubyte],byref):ubyte (FullOpts) 173 (184.04 % of base) : System.Text.Json.dasm - System.Text.Json.Serialization.Converters.UInt128Converter:TryParse(System.ReadOnlySpan`1[ubyte],byref):ubyte (FullOpts) 164 (182.22 % of base) : System.Private.Xml.dasm - System.Xml.XmlConvert:ToString(long):System.String (FullOpts) 164 (182.22 % of base) : System.Private.DataContractSerialization.dasm - System.Xml.XmlConverter:ToString(long):System.String (FullOpts) 164 (180.22 % of base) : System.Diagnostics.TraceSource.dasm - System.Diagnostics.TraceEventCache:get_ThreadId():System.String:this (FullOpts) 161 (176.92 % of base) : System.Private.Xml.dasm - System.Xml.XmlConvert:ToString(byte):System.String (FullOpts) 161 (176.92 % of base) : System.Private.Xml.dasm - System.Xml.XmlConvert:ToString(short):System.String (FullOpts) 172 (172.00 % of base) : System.CodeDom.dasm - System.CodeDom.Compiler.CodeGenerator:GenerateDoubleValue(double):this (FullOpts) 172 (172.00 % of base) : System.CodeDom.dasm - System.CodeDom.Compiler.CodeGenerator:GenerateSingleFloatValue(float):this (FullOpts) 172 (165.38 % of base) : System.Private.Xml.dasm - System.Xml.XmlWriter:WriteValue(int):this (FullOpts) 173 (164.76 % of base) : System.Formats.Tar.dasm - System.Formats.Tar.TarHelpers:GetTimestampStringFromDateTimeOffset(System.DateTimeOffset):System.String (FullOpts) 173 (164.76 % of base) : System.Private.Xml.dasm - System.Xml.BinXmlSqlMoney:ToString():System.String:this (FullOpts) 174 (162.62 % of base) : System.Net.Http.dasm - System.Net.Http.Headers.HeaderUtilities:TryParseInt32(System.String,byref):ubyte (FullOpts) 45 (160.71 % of base) : System.Private.Xml.dasm - System.Xml.XmlConvert:TrimString(System.String):System.String (FullOpts) 45 (160.71 % of base) : System.Private.Xml.dasm - System.Xml.XmlConvert:TrimStringEnd(System.String):System.String (FullOpts) 45 (160.71 % of base) : System.Private.Xml.dasm - System.Xml.XmlConvert:TrimStringStart(System.String):System.String (FullOpts) 172 (159.26 % of base) : System.Private.Xml.dasm - System.Xml.XmlWriter:WriteValue(long):this (FullOpts) 173 (155.86 % of base) : System.CodeDom.dasm - System.CodeDom.Compiler.CodeGenerator:GenerateDecimalValue(System.Decimal):this (FullOpts) 172 (154.95 % of base) : System.Data.Odbc.dasm - System.Data.Odbc.OdbcCommandBuilder:GetParameterName(int):System.String:this (FullOpts) 236 (153.25 % of base) : System.IO.Hashing.dasm - System.IO.Hashing.NonCryptographicHashAlgorithm+CopyToDestinationStream:BeginWrite(ubyte[],int,int,System.AsyncCallback,System.Object):System.IAsyncResult:this (FullOpts) 180 (152.54 % of base) : System.Data.Common.dasm - System.Data.Common.DataAdapter:GetSourceTableName(System.String,int):System.String (FullOpts) 161 (151.89 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.XsltOld.Compiler:GetUnicRtfId():System.String:this (FullOpts) 457 (146.47 % of base) : System.Private.CoreLib.dasm - System.MemoryExtensions:ToUpperInvariant(System.ReadOnlySpan`1[ushort],System.Span`1[ushort]):int (FullOpts) 180 (146.34 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.EnumDataContract:GetStringFromEnumValue(long):System.String:this (FullOpts) 451 (145.95 % of base) : System.Private.CoreLib.dasm - System.MemoryExtensions:ToLowerInvariant(System.ReadOnlySpan`1[ushort],System.Span`1[ushort]):int (FullOpts) 199 (144.20 % of base) : System.Reflection.MetadataLoadContext.dasm - System.Reflection.TypeLoading.RoModule:GetUniqueArrayType(System.Reflection.TypeLoading.RoType,int):System.Reflection.TypeLoading.RoArrayType:this (FullOpts) 332 (140.68 % of base) : System.Data.Odbc.dasm - System.Data.Common.ADP:InvalidBufferSizeOrIndex(int,int):System.IndexOutOfRangeException (FullOpts) 332 (140.68 % of base) : System.Data.Common.dasm - System.Data.Common.ADP:InvalidBufferSizeOrIndex(int,int):System.IndexOutOfRangeException (FullOpts) 180 (135.34 % of base) : System.Data.Common.dasm - System.Data.ConstraintCollection:MakeName(int):System.String (FullOpts) 172 (134.38 % of base) : System.ServiceModel.Syndication.dasm - System.ServiceModel.Channels.UriGenerator:Next():System.String:this (FullOpts) 176 (132.33 % of base) : System.Data.Common.dasm - System.Data.DataColumnCollection:MakeName(int):System.String (FullOpts) 176 (132.33 % of base) : System.Data.Common.dasm - System.Data.DataRelationCollection:MakeName(int):System.String (FullOpts) 176 (132.33 % of base) : System.Data.Common.dasm - System.Data.DataTableCollection:MakeName(int):System.String (FullOpts) 337 (130.62 % of base) : System.Data.Odbc.dasm - System.Data.Common.ADP:CollectionIndexInt32(int,System.Type,int):System.IndexOutOfRangeException (FullOpts) 337 (130.62 % of base) : System.Data.Common.dasm - System.Data.Common.ADP:CollectionIndexInt32(int,System.Type,int):System.IndexOutOfRangeException (FullOpts) 338 (128.03 % of base) : System.Private.CoreLib.dasm - System.Version:TryParseComponent(System.ReadOnlySpan`1[ushort],System.String,ubyte,byref):ubyte (FullOpts) 164 (126.15 % of base) : System.Data.Common.dasm - System.Data.Common.Int32Storage:ConvertObjectToXml(System.Object):System.String:this (FullOpts) 337 (125.75 % of base) : System.Data.Odbc.dasm - System.Data.Common.ADP:InvalidDestinationBufferIndex(int,int,System.String):System.ArgumentOutOfRangeException (FullOpts) 337 (125.75 % of base) : System.Data.Odbc.dasm - System.Data.Common.ADP:InvalidSourceBufferIndex(int,long,System.String):System.ArgumentOutOfRangeException (FullOpts) 164 (124.24 % of base) : System.Data.Common.dasm - System.Data.Common.Int16Storage:ConvertObjectToXml(System.Object):System.String:this (FullOpts) 164 (124.24 % of base) : System.Data.Common.dasm - System.Data.Common.SByteStorage:ConvertObjectToXml(System.Object):System.String:this (FullOpts) 174 (123.40 % of base) : System.CodeDom.dasm - Microsoft.VisualBasic.VBCodeGenerator:GenerateDecimalValue(System.Decimal):this (FullOpts) 210 (122.81 % of base) : System.Reflection.MetadataLoadContext.dasm - System.Reflection.TypeLoading.Ecma.EcmaModule:GetGenericInstantiation(System.Reflection.TypeLoading.RoType,System.Collections.Immutable.ImmutableArray`1[System.Reflection.TypeLoading.RoType]):System.Reflection.TypeLoading.RoType:this (FullOpts) 164 (122.39 % of base) : System.Data.Common.dasm - System.Data.Common.Int64Storage:ConvertObjectToXml(System.Object):System.String:this (FullOpts) 176 (122.22 % of base) : System.Net.Http.dasm - System.Net.Http.GlobalHttpSettings+SocketsHttpHandler:GetMaxHttp2StreamWindowSize():int (FullOpts) 332 (120.73 % of base) : System.Data.Common.dasm - System.Data.ExceptionBuilder:RangeArgument(int,int):System.Exception (FullOpts) 245 (120.69 % of base) : System.Data.Common.dasm - System.Data.Common.DataStorage:ImplementsInterfaces(int,System.Type,byref,byref,byref,byref,byref) (FullOpts) 172 (120.28 % of base) : System.Data.Common.dasm - System.Data.Common.ADP:UpdateMismatchRowTable(int):System.ArgumentException (FullOpts) 171 (117.93 % of base) : System.Diagnostics.DiagnosticSource.dasm - System.Diagnostics.Helpers:FormatObjectHash(System.Object):System.String (FullOpts) 172 (117.01 % of base) : System.Data.Odbc.dasm - System.Data.Common.ADP:InvalidDataLength(long):System.Exception (FullOpts) 172 (117.01 % of base) : System.Data.Common.dasm - System.Data.Common.ADP:InvalidDataLength(long):System.Exception (FullOpts) 177 (116.45 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.XPathConvert:StringToDouble(System.String):double (FullOpts) 181 (114.56 % of base) : System.Net.Http.dasm - System.Net.Http.Headers.HeaderUtilities:TryParseInt32(System.String,int,int,byref):ubyte (FullOpts) 353 (113.87 % of base) : System.Data.Odbc.dasm - System.Data.Common.ADP:NonSeqByteAccess(long,long,System.String):System.Exception (FullOpts) 181 (113.84 % of base) : System.Net.Http.dasm - System.Net.Http.Headers.HeaderUtilities:TryParseInt64(System.String,int,int,byref):ubyte (FullOpts) 176 (113.55 % of base) : System.Net.Http.dasm - System.Net.Http.GlobalHttpSettings+SocketsHttpHandler:GetHttp2StreamWindowScaleThresholdMultiplier():double (FullOpts) 181 (113.13 % of base) : System.Net.Http.dasm - System.Net.Http.Headers.ContentDispositionHeaderValue:get_Size():System.Nullable`1[long]:this (FullOpts) 172 (110.97 % of base) : System.Net.NetworkInformation.dasm - System.Net.NetworkInformation.StringParsingHelpers:ParseUInt64AndClampToInt64(System.ReadOnlySpan`1[ushort]):long (FullOpts) 185 (108.19 % of base) : System.Net.Http.dasm - System.Net.Http.RuntimeSettingParser:ParseInt32EnvironmentVariableValue(System.String,int):int (FullOpts) 180 (107.14 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableHashSet`1[System.Numerics.Vector`1[float]]:.ctor(System.Collections.Generic.IEqualityComparer`1[System.Numerics.Vector`1[float]]):this (FullOpts) 154 (106.21 % of base) : System.Net.NetworkInformation.dasm - System.Net.NetworkInformation.StringParsingHelpers:ParseIPv4HexString(System.ReadOnlySpan`1[ushort]):System.Net.IPAddress (FullOpts) 124 (105.98 % of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.X509Certificates.OpenSslCrlCache:GetCachedCrlPath(System.String,ubyte):System.String (FullOpts) 184 (103.95 % of base) : System.Net.Http.dasm - System.Net.Http.RuntimeSettingParser:ParseDoubleEnvironmentVariableValue(System.String,double):double (FullOpts) 176 (102.92 % of base) : System.Private.CoreLib.dasm - System.TimeZoneInfo+StringSerializer:GetNextInt32Value():int:this (FullOpts) 195 (100.52 % of base) : System.Configuration.ConfigurationManager.dasm - System.Configuration.InfiniteIntConverter:ConvertTo(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type):System.Object:this (FullOpts) 174 (99.43 % of base) : System.CodeDom.dasm - Microsoft.CSharp.CSharpCodeGenerator:GenerateDecimalValue(System.Decimal):this (FullOpts) 169 (98.26 % of base) : System.Data.Common.dasm - System.Data.Common.BigIntegerStorage:ConvertObjectToXml(System.Object):System.String:this (FullOpts) 174 (97.75 % of base) : System.Net.Http.dasm - System.Net.Http.Headers.CacheControlHeaderValue:TrySetTimeSpan(System.String,byref):ubyte (FullOpts) 189 (96.43 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableDictionary`2[System.Numerics.Vector`1[float],System.Nullable`1[int]]:.ctor(System.Collections.Immutable.SortedInt32KeyNode`1[System.Collections.Immutable.ImmutableDictionary`2+HashBucket[System.Numerics.Vector`1[float],System.Nullable`1[int]]],System.Collections.Immutable.ImmutableDictionary`2+Comparers[System.Numerics.Vector`1[float],System.Nullable`1[int]],int):this (FullOpts) 46 (95.83 % of base) : System.Private.Xml.dasm - System.Xml.Schema.XmlBaseConverter:StringToBase64Binary(System.String):ubyte[] (FullOpts) 173 (95.58 % of base) : System.Private.CoreLib.dasm - System.Buffers.Text.FormattingHelpers:TryFormat[double](double,System.Span`1[ubyte],byref,System.Buffers.StandardFormat):ubyte (FullOpts) 173 (95.05 % of base) : System.Private.CoreLib.dasm - System.Buffers.Text.Utf8Formatter:TryFormat(double,System.Span`1[ubyte],byref,System.Buffers.StandardFormat):ubyte (FullOpts) 173 (95.05 % of base) : System.Private.CoreLib.dasm - System.Buffers.Text.Utf8Formatter:TryFormat(float,System.Span`1[ubyte],byref,System.Buffers.StandardFormat):ubyte (FullOpts) Top method improvements (percentages): -17 (-20.48 % of base) : Microsoft.Extensions.DependencyModel.dasm - Microsoft.Extensions.DependencyModel.Resolution.DotNetReferenceAssembliesPathResolver:Resolve():System.String (FullOpts) -12 (-18.75 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableHashSet:CreateBuilder[double]():System.Collections.Immutable.ImmutableHashSet`1+Builder[double] (FullOpts) -12 (-18.75 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableHashSet:CreateBuilder[int]():System.Collections.Immutable.ImmutableHashSet`1+Builder[int] (FullOpts) -12 (-18.75 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableHashSet:CreateBuilder[long]():System.Collections.Immutable.ImmutableHashSet`1+Builder[long] (FullOpts) -12 (-18.75 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableHashSet:CreateBuilder[short]():System.Collections.Immutable.ImmutableHashSet`1+Builder[short] (FullOpts) -12 (-18.75 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableHashSet:CreateBuilder[System.Nullable`1[int]]():System.Collections.Immutable.ImmutableHashSet`1+Builder[System.Nullable`1[int]] (FullOpts) -12 (-18.75 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableHashSet:CreateBuilder[System.Numerics.Vector`1[float]]():System.Collections.Immutable.ImmutableHashSet`1+Builder[System.Numerics.Vector`1[float]] (FullOpts) -12 (-18.75 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableHashSet:CreateBuilder[ubyte]():System.Collections.Immutable.ImmutableHashSet`1+Builder[ubyte] (FullOpts) -12 (-18.18 % of base) : System.ComponentModel.TypeConverter.dasm - System.ComponentModel.WeakHashtable:.ctor():this (FullOpts) -13 (-17.81 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableStack:Create[System.Numerics.Vector`1[float]](System.Numerics.Vector`1[float]):System.Collections.Immutable.ImmutableStack`1[System.Numerics.Vector`1[float]] (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) -12 (-14.46 % of base) : System.ComponentModel.TypeConverter.dasm - System.ComponentModel.TypeDescriptor+<>c:b__27_0():System.ComponentModel.WeakHashtable:this (FullOpts) -15 (-14.42 % of base) : System.Collections.Specialized.dasm - System.Collections.Specialized.HybridDictionary:get_List():System.Collections.Specialized.ListDictionary: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.Web.HttpUtility.dasm - System.Web.HttpUtility:UrlEncode(System.String):System.String (FullOpts) -12 (-12.12 % of base) : Microsoft.Extensions.DependencyModel.dasm - Microsoft.Extensions.DependencyModel.Resolution.AppBaseCompilationAssemblyResolver:.ctor():this (FullOpts) -18 (-11.69 % of base) : System.Text.Json.dasm - System.Text.Json.Schema.JsonSchema:EnsureMutable(byref) (FullOpts) -12 (-11.01 % of base) : System.ComponentModel.Composition.dasm - System.ComponentModel.Composition.Primitives.CompositionElement:.ctor(System.Object):this (FullOpts) -91 (-10.92 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.XmlObjectSerializer:WriteObject(System.IO.Stream,System.Object):this (FullOpts) -12 (-10.91 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableDictionary`2+Comparers[double,System.Nullable`1[int]]:.cctor() (FullOpts) -12 (-10.91 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableDictionary`2+Comparers[int,System.Nullable`1[int]]:.cctor() (FullOpts) -12 (-10.91 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableDictionary`2+Comparers[long,System.Nullable`1[int]]:.cctor() (FullOpts) -12 (-10.91 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableDictionary`2+Comparers[short,System.Nullable`1[int]]:.cctor() (FullOpts) -12 (-10.91 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableDictionary`2+Comparers[System.Numerics.Vector`1[float],System.Nullable`1[int]]:.cctor() (FullOpts) -12 (-10.91 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableDictionary`2+Comparers[ubyte,System.Nullable`1[int]]:.cctor() (FullOpts) -12 (-10.81 % of base) : System.Private.CoreLib.dasm - System.IO.File:CreateText(System.String):System.IO.StreamWriter (FullOpts) -123 (-10.78 % 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) -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) -7 (-10.45 % of base) : System.Formats.Asn1.dasm - System.Formats.Asn1.BMPEncoding:.ctor():this (FullOpts) -7 (-10.45 % of base) : System.Formats.Asn1.dasm - System.Formats.Asn1.SpanBasedEncoding:.ctor():this (FullOpts) -157 (-10.14 % of base) : System.Net.HttpListener.dasm - System.Net.HttpListenerResponse:SendHeaders(ubyte,System.IO.MemoryStream,ubyte):this (FullOpts) -16 (-10.00 % of base) : System.CodeDom.dasm - System.CodeDom.Compiler.CompilerParameters:get_TempFiles():System.CodeDom.Compiler.TempFileCollection:this (FullOpts) -12 (-9.92 % of base) : System.Private.CoreLib.dasm - System.IO.FileInfo:CreateText():System.IO.StreamWriter:this (FullOpts) -13 (-9.77 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableList`1+Node[int]:CreateLeaf(int):System.Collections.Immutable.ImmutableList`1+Node[int] (FullOpts) -13 (-9.77 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableList`1+Node[ubyte]:CreateLeaf(ubyte):System.Collections.Immutable.ImmutableList`1+Node[ubyte] (FullOpts) -13 (-9.70 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableList`1+Node[long]:CreateLeaf(long):System.Collections.Immutable.ImmutableList`1+Node[long] (FullOpts) -13 (-9.70 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableList`1+Node[short]:CreateLeaf(short):System.Collections.Immutable.ImmutableList`1+Node[short] (FullOpts) -13 (-9.70 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableList`1+Node[System.Nullable`1[int]]:CreateLeaf(System.Nullable`1[int]):System.Collections.Immutable.ImmutableList`1+Node[System.Nullable`1[int]] (FullOpts) -12 (-9.68 % of base) : System.Private.CoreLib.dasm - System.IO.FileInfo:AppendText():System.IO.StreamWriter:this (FullOpts) -12 (-9.23 % of base) : Microsoft.Extensions.DependencyModel.dasm - Microsoft.Extensions.DependencyModel.Resolution.AppBaseCompilationAssemblyResolver:.ctor(System.String):this (FullOpts) -12 (-8.70 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableList`1+Node[System.Numerics.Vector`1[float]]:CreateLeaf(System.Numerics.Vector`1[float]):System.Collections.Immutable.ImmutableList`1+Node[System.Numerics.Vector`1[float]] (FullOpts) -12 (-8.39 % of base) : System.Private.CoreLib.dasm - System.CodeDom.Compiler.IndentedTextWriter:.ctor(System.IO.TextWriter,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) -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) -204 (-7.86 % of base) : System.Configuration.ConfigurationManager.dasm - System.Configuration.ConfigurationErrorsException:GetObjectData(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext):this (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) 2102 total methods with Code Size differences (943 improved, 1159 regressed), 230436 unchanged. -------------------------------------------------------------------------------- ```

Artifacts:

MihuBot commented 1 month ago

Top method regressions

468 (29.98 % of base) - System.Net.FtpControlStream:QueueOrCreateDataConection(System.Net.CommandStream+PipelineEntry,System.Net.ResponseDescription,byref):int:this ```diff ; Assembly listing for method System.Net.FtpControlStream:QueueOrCreateDataConection(System.Net.CommandStream+PipelineEntry,System.Net.ResponseDescription,byref):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; 8 inlinees without PGO data +; 0 inlinees with PGO data; 36 single block inlinees; 18 inlinees without PGO data ; Final local variable assignments ; ; V00 this [V00,T00] ( 28, 15 ) ref -> rbx this class-hnd single-def -; V01 arg1 [V01,T03] ( 3, 2.50) ref -> rsi class-hnd single-def -; V02 arg2 [V02,T01] ( 6, 4 ) ref -> r15 class-hnd single-def -; V03 arg3 [V03,T02] ( 5, 4 ) byref -> r14 single-def -;* V04 loc0 [V04,T52] ( 0, 0 ) ubyte -> zero-ref -; V05 loc1 [V05,T24] ( 3, 1.50) int -> r13 -; V06 loc2 [V06,T25] ( 4, 2 ) int -> r14 +; V01 arg1 [V01,T07] ( 3, 2.50) ref -> rsi class-hnd single-def +; V02 arg2 [V02,T03] ( 6, 4 ) ref -> r15 class-hnd single-def +; V03 arg3 [V03,T04] ( 5, 4 ) byref -> r14 single-def +;* V04 loc0 [V04,T60] ( 0, 0 ) ubyte -> zero-ref +; V05 loc1 [V05,T34] ( 3, 1.50) int -> r13 +; V06 loc2 [V06,T35] ( 4, 2 ) int -> r14 ;* V07 loc3 [V07 ] ( 0, 0 ) ref -> zero-ref class-hnd exact -; V08 loc4 [V08,T38] ( 3, 1.50) ref -> r15 class-hnd single-def -; V09 loc5 [V09,T49] ( 3, 0.50) ref -> [rbp-0x30] class-hnd EH-live single-def +; V08 loc4 [V08,T44] ( 3, 1.50) ref -> r15 class-hnd single-def +; V09 loc5 [V09,T57] ( 3, 0.50) ref -> [rbp-0x30] class-hnd EH-live single-def ;# V10 OutArgs [V10 ] ( 1, 1 ) struct ( 0) [rsp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace" ;* V11 tmp1 [V11 ] ( 0, 0 ) ref -> zero-ref class-hnd "non-inline candidate call" -; V12 tmp2 [V12,T56] ( 3, 0 ) ref -> rbx class-hnd exact single-def "NewObj constructor temp" -; V13 tmp3 [V13,T04] ( 4, 4 ) ref -> r12 class-hnd exact single-def "NewObj constructor temp" -; V14 tmp4 [V14,T10] ( 3, 3 ) ref -> r15 class-hnd exact single-def "NewObj constructor temp" +; V12 tmp2 [V12,T64] ( 3, 0 ) ref -> rbx class-hnd exact single-def "NewObj constructor temp" +; V13 tmp3 [V13,T08] ( 4, 4 ) ref -> r12 class-hnd exact single-def "NewObj constructor temp" +; V14 tmp4 [V14,T18] ( 3, 3 ) ref -> r15 class-hnd exact single-def "NewObj constructor temp" ;* V15 tmp5 [V15 ] ( 0, 0 ) ref -> zero-ref class-hnd "impSpillSpecialSideEff" -; V16 tmp6 [V16,T11] ( 3, 3 ) ref -> r14 class-hnd exact single-def "Single-def Box Helper" -; V17 tmp7 [V17,T26] ( 2, 2 ) ref -> rdi class-hnd exact single-def "impImportAndPushBox" +; V16 tmp6 [V16,T19] ( 3, 3 ) ref -> r14 class-hnd exact single-def "Single-def Box Helper" +; V17 tmp7 [V17,T36] ( 2, 2 ) ref -> rdi class-hnd exact single-def "impImportAndPushBox" ;* V18 tmp8 [V18 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" -; V19 tmp9 [V19,T08] ( 5, 3 ) ref -> rax single-def "spilling varStr" +; V19 tmp9 [V19,T16] ( 5, 3 ) ref -> rax single-def "spilling varStr" ;* V20 tmp10 [V20 ] ( 0, 0 ) int -> zero-ref "spilling unroll qmark" ;* V21 tmp11 [V21 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" -; V22 tmp12 [V22,T09] ( 5, 3 ) ref -> rax single-def "spilling varStr" +; V22 tmp12 [V22,T17] ( 5, 3 ) ref -> rax single-def "spilling varStr" ;* V23 tmp13 [V23 ] ( 0, 0 ) int -> zero-ref "spilling unroll qmark" -;* V24 tmp14 [V24,T53] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp" +;* V24 tmp14 [V24,T61] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp" ;* V25 tmp15 [V25 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" -; V26 tmp16 [V26,T20] ( 4, 2.75) ref -> rdi single-def "spilling varStr" +; V26 tmp16 [V26,T30] ( 4, 2.75) ref -> rdi single-def "spilling varStr" ;* V27 tmp17 [V27 ] ( 0, 0 ) int -> zero-ref "spilling unroll qmark" ;* V28 tmp18 [V28 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" ;* V29 tmp19 [V29 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" -; V30 tmp20 [V30,T27] ( 2, 2 ) ref -> r15 class-hnd single-def "Inlining Arg" -; V31 tmp21 [V31,T12] ( 3, 3 ) ref -> rsi class-hnd single-def "Inlining Arg" +; V30 tmp20 [V30,T37] ( 2, 2 ) ref -> r15 class-hnd single-def "Inlining Arg" +; V31 tmp21 [V31,T20] ( 3, 3 ) ref -> rsi class-hnd single-def "Inlining Arg" ;* V32 tmp22 [V32 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "NewObj constructor temp" ;* V33 tmp23 [V33 ] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp" ;* V34 tmp24 [V34 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" -; V35 tmp25 [V35,T13] ( 3, 3 ) ref -> r14 class-hnd exact single-def "impAppendStmt" -; V36 tmp26 [V36,T28] ( 2, 2 ) ref -> r13 class-hnd exact single-def "non-inline candidate call" +; V35 tmp25 [V35,T21] ( 3, 3 ) ref -> r14 class-hnd exact single-def "impAppendStmt" +; V36 tmp26 [V36,T38] ( 2, 2 ) ref -> r13 class-hnd exact single-def "non-inline candidate call" ;* V37 tmp27 [V37 ] ( 0, 0 ) ref -> zero-ref class-hnd exact single-def "dup spill" -; V38 tmp28 [V38,T43] ( 2, 1 ) ref -> rdi single-def -;* V39 tmp29 [V39,T54] ( 0, 0 ) int -> zero-ref -; V40 tmp30 [V40,T44] ( 2, 1 ) ref -> rdx single-def -;* V41 tmp31 [V41,T50] ( 0, 0 ) ref -> zero-ref single-def -; V42 tmp32 [V42,T29] ( 2, 2 ) ref -> r8 class-hnd exact single-def "Inlining Arg" -; V43 tmp33 [V43,T14] ( 3, 3 ) ref -> rdi class-hnd single-def "Inlining Arg" -; V44 tmp34 [V44,T30] ( 2, 2 ) ref -> r14 class-hnd exact single-def "Inlining Arg" -; V45 tmp35 [V45,T15] ( 3, 3 ) ref -> r15 class-hnd single-def "Inlining Arg" -; V46 tmp36 [V46,T31] ( 2, 2 ) ref -> rdi class-hnd exact single-def "NewObj constructor temp" -;* V47 tmp37 [V47 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" -; V48 tmp38 [V48,T16] ( 3, 3 ) ref -> r13 class-hnd exact single-def "impAppendStmt" -; V49 tmp39 [V49,T32] ( 2, 2 ) ref -> r15 class-hnd exact single-def "non-inline candidate call" -;* V50 tmp40 [V50 ] ( 0, 0 ) ref -> zero-ref class-hnd exact single-def "dup spill" -; V51 tmp41 [V51,T45] ( 2, 1 ) ref -> rdi single-def -;* V52 tmp42 [V52,T55] ( 0, 0 ) int -> zero-ref -; V53 tmp43 [V53,T46] ( 2, 1 ) ref -> rdx single-def -;* V54 tmp44 [V54,T51] ( 0, 0 ) ref -> zero-ref single-def -; V55 tmp45 [V55,T33] ( 2, 2 ) ref -> r8 class-hnd exact single-def "Inlining Arg" -; V56 tmp46 [V56,T17] ( 3, 3 ) ref -> rdi class-hnd single-def "Inlining Arg" -; V57 tmp47 [V57,T34] ( 2, 2 ) ref -> r14 class-hnd exact single-def "Inlining Arg" -; V58 tmp48 [V58,T18] ( 3, 3 ) ref -> r15 class-hnd single-def "Inlining Arg" -; V59 tmp49 [V59,T35] ( 2, 2 ) ref -> rdi class-hnd exact single-def "NewObj constructor temp" -;* V60 tmp50 [V60 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" -; V61 tmp51 [V61,T21] ( 3, 2.25) ref -> rax single-def "argument with side effect" -; V62 tmp52 [V62,T36] ( 2, 2 ) ref -> rsi single-def "argument with side effect" -; V63 tmp53 [V63,T22] ( 3, 2.25) ref -> rax single-def "argument with side effect" -; V64 tmp54 [V64,T19] ( 3, 3 ) ref -> r15 single-def "argument with side effect" -; V65 tmp55 [V65,T37] ( 2, 2 ) ref -> rsi single-def "argument with side effect" -; V66 tmp56 [V66,T57] ( 2, 0 ) ref -> rsi single-def "argument with side effect" -;* V67 tmp57 [V67 ] ( 0, 0 ) ref -> zero-ref "argument with side effect" -; V68 PSPSym [V68,T47] ( 1, 1 ) long -> [rbp-0x40] do-not-enreg[V] "PSPSym" -; V69 cse0 [V69,T07] ( 6, 3 ) ref -> r13 multi-def "CSE #17: moderate" -; V70 cse1 [V70,T48] ( 5, 0.62) long -> rax multi-def "CSE #06: conservative" -; V71 cse2 [V71,T23] ( 4, 2 ) ref -> rdi "CSE #01: conservative" -; V72 cse3 [V72,T40] ( 3, 1.50) int -> rcx "CSE #07: conservative" -; V73 cse4 [V73,T39] ( 3, 1.50) ref -> r15 "CSE #12: conservative" -; V74 rat0 [V74,T05] ( 5, 3.75) ref -> r15 "replacement local" -; V75 rat1 [V75,T41] ( 3, 1.25) long -> rdi "CSE for expectedClsNode" -; V76 rat2 [V76,T06] ( 5, 3.75) ref -> rcx "replacement local" -; V77 rat3 [V77,T42] ( 3, 1.25) long -> rdi "CSE for expectedClsNode" +; V38 tmp28 [V38,T49] ( 2, 1 ) ref -> rdi single-def +;* V39 tmp29 [V39,T62] ( 0, 0 ) int -> zero-ref +; V40 tmp30 [V40,T50] ( 2, 1 ) ref -> rdx single-def +;* V41 tmp31 [V41,T58] ( 0, 0 ) ref -> zero-ref single-def +; V42 tmp32 [V42,T39] ( 2, 2 ) ref -> r8 class-hnd exact single-def "Inlining Arg" +; V43 tmp33 [V43,T22] ( 3, 3 ) ref -> rdi class-hnd single-def "Inlining Arg" +; V44 tmp34 [V44,T09] ( 4, 4 ) ref -> r14 class-hnd single-def "Inlining Arg" +; V45 tmp35 [V45,T01] ( 8, 8 ) ref -> r15 class-hnd exact single-def "NewObj constructor temp" +;* V46 tmp36 [V46 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[S] ld-addr-op "Inline stloc first use temp" +;* V47 tmp37 [V47 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline stloc first use temp" +; V48 tmp38 [V48,T05] ( 5, 5 ) ref -> r14 class-hnd exact single-def "NewObj constructor temp" +;* V49 tmp39 [V49 ] ( 0, 0 ) int -> zero-ref "Inlining Arg" +; V50 tmp40 [V50,T10] ( 4, 4 ) ref -> rbx class-hnd single-def "Inlining Arg" +;* V51 tmp41 [V51 ] ( 0, 0 ) ref -> zero-ref +;* V52 tmp42 [V52 ] ( 0, 0 ) ref -> zero-ref single-def +;* V53 tmp43 [V53 ] ( 0, 0 ) int -> zero-ref +;* V54 tmp44 [V54 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[S] ld-addr-op "NewObj constructor temp" +;* V55 tmp45 [V55 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" +; V56 tmp46 [V56,T23] ( 3, 3 ) ref -> r15 class-hnd "Inlining Arg" +;* V57 tmp47 [V57 ] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inlining Arg" +;* V58 tmp48 [V58,T53] ( 0, 0 ) ubyte -> zero-ref "Inlining Arg" +;* V59 tmp49 [V59 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" +;* V60 tmp50 [V60 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" +; V61 tmp51 [V61,T24] ( 3, 3 ) ref -> r13 class-hnd exact single-def "impAppendStmt" +; V62 tmp52 [V62,T40] ( 2, 2 ) ref -> r15 class-hnd exact single-def "non-inline candidate call" +;* V63 tmp53 [V63 ] ( 0, 0 ) ref -> zero-ref class-hnd exact single-def "dup spill" +; V64 tmp54 [V64,T51] ( 2, 1 ) ref -> rdi single-def +;* V65 tmp55 [V65,T63] ( 0, 0 ) int -> zero-ref +; V66 tmp56 [V66,T52] ( 2, 1 ) ref -> rdx single-def +;* V67 tmp57 [V67,T59] ( 0, 0 ) ref -> zero-ref single-def +; V68 tmp58 [V68,T41] ( 2, 2 ) ref -> r8 class-hnd exact single-def "Inlining Arg" +; V69 tmp59 [V69,T25] ( 3, 3 ) ref -> rdi class-hnd single-def "Inlining Arg" +; V70 tmp60 [V70,T11] ( 4, 4 ) ref -> r14 class-hnd single-def "Inlining Arg" +; V71 tmp61 [V71,T02] ( 8, 8 ) ref -> r15 class-hnd exact single-def "NewObj constructor temp" +;* V72 tmp62 [V72 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[S] ld-addr-op "Inline stloc first use temp" +;* V73 tmp63 [V73 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline stloc first use temp" +; V74 tmp64 [V74,T06] ( 5, 5 ) ref -> r14 class-hnd exact single-def "NewObj constructor temp" +;* V75 tmp65 [V75 ] ( 0, 0 ) int -> zero-ref "Inlining Arg" +; V76 tmp66 [V76,T12] ( 4, 4 ) ref -> rbx class-hnd single-def "Inlining Arg" +;* V77 tmp67 [V77 ] ( 0, 0 ) ref -> zero-ref +;* V78 tmp68 [V78 ] ( 0, 0 ) ref -> zero-ref single-def +;* V79 tmp69 [V79 ] ( 0, 0 ) int -> zero-ref +;* V80 tmp70 [V80 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[S] ld-addr-op "NewObj constructor temp" +;* V81 tmp71 [V81 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" +; V82 tmp72 [V82,T26] ( 3, 3 ) ref -> r15 class-hnd "Inlining Arg" +;* V83 tmp73 [V83 ] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inlining Arg" +;* V84 tmp74 [V84,T54] ( 0, 0 ) ubyte -> zero-ref "Inlining Arg" +;* V85 tmp75 [V85 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" +;* V86 tmp76 [V86 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" +;* V87 tmp77 [V87 ] ( 0, 0 ) ref -> zero-ref single-def "field V47.m_task (fldOffset=0x0)" P-INDEP +;* V88 tmp78 [V88 ] ( 0, 0 ) int -> zero-ref "field V47.m_options (fldOffset=0x8)" P-INDEP +;* V89 tmp79 [V89 ] ( 0, 0 ) ref -> zero-ref single-def "field V55.m_task (fldOffset=0x0)" P-INDEP +;* V90 tmp80 [V90 ] ( 0, 0 ) int -> zero-ref "field V55.m_options (fldOffset=0x8)" P-INDEP +;* V91 tmp81 [V91 ] ( 0, 0 ) ref -> zero-ref single-def "field V73.m_task (fldOffset=0x0)" P-INDEP +;* V92 tmp82 [V92 ] ( 0, 0 ) int -> zero-ref "field V73.m_options (fldOffset=0x8)" P-INDEP +;* V93 tmp83 [V93 ] ( 0, 0 ) ref -> zero-ref single-def "field V81.m_task (fldOffset=0x0)" P-INDEP +;* V94 tmp84 [V94 ] ( 0, 0 ) int -> zero-ref "field V81.m_options (fldOffset=0x8)" P-INDEP +; V95 tmp85 [V95,T31] ( 3, 2.25) ref -> rax single-def "argument with side effect" +; V96 tmp86 [V96,T42] ( 2, 2 ) ref -> rsi single-def "argument with side effect" +; V97 tmp87 [V97,T32] ( 3, 2.25) ref -> rax single-def "argument with side effect" +; V98 tmp88 [V98,T27] ( 3, 3 ) ref -> r15 single-def "argument with side effect" +; V99 tmp89 [V99,T43] ( 2, 2 ) ref -> rsi single-def "argument with side effect" +; V100 tmp90 [V100,T65] ( 2, 0 ) ref -> rsi single-def "argument with side effect" +;* V101 tmp91 [V101 ] ( 0, 0 ) ref -> zero-ref "argument with side effect" +; V102 PSPSym [V102,T55] ( 1, 1 ) long -> [rbp-0x40] do-not-enreg[V] "PSPSym" +; V103 cse0 [V103,T15] ( 6, 3 ) ref -> r13 multi-def "CSE #17: moderate" +; V104 cse1 [V104,T56] ( 5, 0.62) long -> rax multi-def "CSE #06: conservative" +; V105 cse2 [V105,T33] ( 4, 2 ) ref -> rdi "CSE #01: conservative" +; V106 cse3 [V106,T46] ( 3, 1.50) int -> rcx "CSE #07: conservative" +; V107 cse4 [V107,T45] ( 3, 1.50) ref -> r15 "CSE #12: conservative" +; V108 rat0 [V108,T13] ( 5, 3.75) ref -> r15 "replacement local" +; V109 rat1 [V109,T47] ( 3, 1.25) long -> rdi "CSE for expectedClsNode" +; V110 rat2 [V110,T14] ( 5, 3.75) ref -> rcx "replacement local" +; V111 rat3 [V111,T48] ( 3, 1.25) long -> rdi "CSE for expectedClsNode" +; V112 rat4 [V112,T28] ( 3, 3 ) ref -> rax "delegate invoke call" +; V113 rat5 [V113,T29] ( 3, 3 ) ref -> rax "delegate invoke call" ; ; Lcl frame size = 24 G_M46174_IG01: push rbp push r15 push r14 push r13 push r12 push rbx sub rsp, 24 lea rbp, [rsp+0x40] mov qword ptr [rbp-0x40], rsp mov rbx, rdi mov r15, rdx mov r14, rcx ;; size=32 bbWeight=1 PerfScore 8.50 G_M46174_IG02: mov byte ptr [r14], 0 cmp byte ptr [rbx+0x61], 0 - jne G_M46174_IG35 + jne G_M46174_IG43 ;; size=14 bbWeight=1 PerfScore 5.00 G_M46174_IG03: mov byte ptr [rbx+0x61], 1 mov rdi, gword ptr [rsi+0x08] mov rax, rdi test rax, rax je SHORT G_M46174_IG06 ;; size=16 bbWeight=0.50 PerfScore 2.25 G_M46174_IG04: cmp dword ptr [rax+0x08], 6 jne SHORT G_M46174_IG06 ;; size=6 bbWeight=0.25 PerfScore 1.00 G_M46174_IG05: mov rcx, 0xD1FFAB1E xor rcx, qword ptr [rax+0x0C] mov eax, dword ptr [rax+0x14] xor eax, 0xD1FFAB1E or rcx, rax je SHORT G_M46174_IG09 ;; size=27 bbWeight=0.12 PerfScore 0.84 G_M46174_IG06: mov rax, rdi test rax, rax je G_M46174_IG22 ;; size=12 bbWeight=0.50 PerfScore 0.75 G_M46174_IG07: cmp dword ptr [rax+0x08], 6 jne G_M46174_IG22 ;; size=10 bbWeight=0.25 PerfScore 1.00 G_M46174_IG08: mov rcx, 0xD1FFAB1E xor rcx, qword ptr [rax+0x0C] mov eax, dword ptr [rax+0x14] xor eax, 0xD1FFAB1E or rcx, rax jne G_M46174_IG22 ;; size=31 bbWeight=0.12 PerfScore 0.84 G_M46174_IG09: mov ecx, dword ptr [r15+0x20] cmp ecx, 200 jge SHORT G_M46174_IG12 ;; size=12 bbWeight=0.50 PerfScore 1.62 G_M46174_IG10: mov rdi, 0xD1FFAB1E ; System.Int32 call CORINFO_HELP_NEWSFAST mov r14, rax mov rdi, 0xD1FFAB1E ; 'net_ftp_server_failed_passive' mov rax, 0xD1FFAB1E ; code for System.SR:GetResourceString(System.String):System.String call [rax]System.SR:GetResourceString(System.String):System.String mov rdi, rax mov esi, dword ptr [r15+0x20] mov dword ptr [r14+0x08], esi mov rsi, r14 mov rax, 0xD1FFAB1E ; code for System.SR:Format(System.String,System.Object):System.String call [rax]System.SR:Format(System.String,System.Object):System.String lea rdi, bword ptr [rbx+0x38] mov rsi, rax call CORINFO_HELP_ASSIGN_REF xor eax, eax ;; size=80 bbWeight=0.50 PerfScore 6.88 G_M46174_IG11: add rsp, 24 pop rbx pop r12 pop r13 pop r14 pop r15 pop rbp ret ;; size=15 bbWeight=0.50 PerfScore 2.12 G_M46174_IG12: cmp ecx, 299 jg SHORT G_M46174_IG10 test rdi, rdi je SHORT G_M46174_IG15 ;; size=13 bbWeight=0.50 PerfScore 1.25 G_M46174_IG13: cmp dword ptr [rdi+0x08], 6 jne SHORT G_M46174_IG15 ;; size=6 bbWeight=0.25 PerfScore 1.00 G_M46174_IG14: mov rcx, 0xD1FFAB1E xor rcx, qword ptr [rdi+0x0C] or rax, rcx je SHORT G_M46174_IG16 ;; size=19 bbWeight=0.12 PerfScore 0.56 G_M46174_IG15: mov rdi, gword ptr [r15+0x08] mov rax, 0xD1FFAB1E ; code for System.Net.FtpControlStream:GetPortV6(System.String):int call [rax]System.Net.FtpControlStream:GetPortV6(System.String):int mov r13d, eax jmp SHORT G_M46174_IG17 ;; size=21 bbWeight=0.50 PerfScore 3.75 G_M46174_IG16: mov rdi, gword ptr [r15+0x08] mov rax, 0xD1FFAB1E ; code for System.Net.FtpControlStream:GetPortV4(System.String):int call [rax]System.Net.FtpControlStream:GetPortV4(System.String):int mov r13d, eax ;; size=19 bbWeight=0.50 PerfScore 2.75 G_M46174_IG17: mov rdi, gword ptr [rbx+0x10] mov rdi, gword ptr [rdi+0x10] mov rax, 0xD1FFAB1E ; code for System.Net.FtpControlStream:CreateFtpDataSocket(System.Net.Sockets.Socket):System.Net.Sockets.Socket call [rax]System.Net.FtpControlStream:CreateFtpDataSocket(System.Net.Sockets.Socket):System.Net.Sockets.Socket lea rdi, bword ptr [rbx+0x68] mov rsi, rax call CORINFO_HELP_ASSIGN_REF nop ;; size=33 bbWeight=0.50 PerfScore 4.62 G_M46174_IG18: mov rdi, gword ptr [rbx+0x10] mov rdi, gword ptr [rdi+0x10] mov rax, 0xD1FFAB1E ; code for System.Net.Sockets.Socket:get_LocalEndPoint():System.Net.EndPoint:this cmp dword ptr [rdi], edi call [rax]System.Net.Sockets.Socket:get_LocalEndPoint():System.Net.EndPoint:this mov r15, rax test r15, r15 je SHORT G_M46174_IG21 ;; size=30 bbWeight=0.50 PerfScore 5.88 G_M46174_IG19: mov rdi, 0xD1FFAB1E ; System.Net.IPEndPoint cmp qword ptr [r15], rdi je SHORT G_M46174_IG21 ;; size=15 bbWeight=0.25 PerfScore 1.06 G_M46174_IG20: mov rsi, rax mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_CHKCASTCLASS_SPECIAL call [rax]CORINFO_HELP_CHKCASTCLASS_SPECIAL mov r15, rax ;; size=18 bbWeight=0.12 PerfScore 0.47 G_M46174_IG21: mov rdi, 0xD1FFAB1E ; System.Net.IPEndPoint call CORINFO_HELP_NEWSFAST mov r12, rax mov rsi, gword ptr [r15+0x08] test rsi, rsi - je G_M46174_IG46 + je G_M46174_IG56 xor edi, edi mov dword ptr [r12+0x10], edi lea rdi, bword ptr [r12+0x08] call CORINFO_HELP_ASSIGN_REF mov rdi, gword ptr [rbx+0x68] mov rsi, r12 mov rax, 0xD1FFAB1E ; code for System.Net.Sockets.Socket:Bind(System.Net.EndPoint):this cmp dword ptr [rdi], edi call [rax]System.Net.Sockets.Socket:Bind(System.Net.EndPoint):this mov rdi, 0xD1FFAB1E ; System.Net.IPEndPoint call CORINFO_HELP_NEWSFAST mov r15, rax mov rdi, rbx mov rax, 0xD1FFAB1E ; code for System.Net.NetworkStreamWrapper:get_ServerAddress():System.Net.IPAddress:this call [rax]System.Net.NetworkStreamWrapper:get_ServerAddress():System.Net.IPAddress:this mov rsi, rax mov rdi, r15 mov edx, r13d mov rax, 0xD1FFAB1E ; code for System.Net.IPEndPoint:.ctor(System.Net.IPAddress,int):this call [rax]System.Net.IPEndPoint:.ctor(System.Net.IPAddress,int):this lea rdi, bword ptr [rbx+0x78] mov rsi, r15 call CORINFO_HELP_ASSIGN_REF ;; size=135 bbWeight=0.50 PerfScore 13.38 G_M46174_IG22: mov r15, gword ptr [rbx+0x78] test r15, r15 - jne G_M46174_IG27 + jne G_M46174_IG31 mov rdi, 0xD1FFAB1E ; global ptr test byte ptr [rdi], 1 - je G_M46174_IG43 + je G_M46174_IG51 ;; size=32 bbWeight=0.50 PerfScore 3.75 G_M46174_IG23: mov rdi, 0xD1FFAB1E ; data for System.Net.NetEventSource:Log mov r13, gword ptr [rdi] cmp byte ptr [r13+0x9D], 0 je SHORT G_M46174_IG24 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 r15, rax mov rdi, 0xD1FFAB1E ; 'starting Accept()' mov rax, 0xD1FFAB1E ; code for System.Net.NetEventSource:Format(System.Object):System.String call [rax]System.Net.NetEventSource:Format(System.Object):System.String mov r8, rax cmp byte ptr [r13], r13b mov rdi, r13 mov rdx, r15 mov esi, 1 mov rcx, 0xD1FFAB1E ; 'QueueOrCreateDataConection' mov rax, 0xD1FFAB1E ; code for System.Diagnostics.Tracing.EventSource:WriteEvent(int,System.String,System.String,System.String):this call [rax]System.Diagnostics.Tracing.EventSource:WriteEvent(int,System.String,System.String,System.String):this ;; size=103 bbWeight=0.50 PerfScore 10.50 G_M46174_IG24: cmp byte ptr [rbx+0x5D], 0 je SHORT G_M46174_IG25 mov rdi, gword ptr [rbx+0x68] - mov rax, 0xD1FFAB1E ; const ptr - mov r14, gword ptr [rax] cmp byte ptr [rdi], dil mov rax, 0xD1FFAB1E ; code for System.Net.Sockets.Socket:AcceptAsync():System.Threading.Tasks.Task`1[System.Net.Sockets.Socket]:this call [rax]System.Net.Sockets.Socket:AcceptAsync():System.Threading.Tasks.Task`1[System.Net.Sockets.Socket]:this - mov r15, rax - test r15, r15 + mov r14, rax + test r14, r14 jne SHORT G_M46174_IG26 - jmp G_M46174_IG45 - ;; size=51 bbWeight=0.50 PerfScore 9.00 + jmp G_M46174_IG55 + ;; size=38 bbWeight=0.50 PerfScore 7.88 G_M46174_IG25: mov rdi, gword ptr [rbx+0x68] mov gword ptr [rbp-0x30], rdi - jmp G_M46174_IG37 + jmp G_M46174_IG45 ;; size=13 bbWeight=0.50 PerfScore 2.50 G_M46174_IG26: mov rdi, 0xD1FFAB1E ; System.Threading.Tasks.TaskToAsyncResult+TaskAsyncResult call CORINFO_HELP_NEWSFAST - mov rdi, rax + mov r15, rax + lea rdi, bword ptr [r15+0x08] + mov rsi, r14 + call CORINFO_HELP_ASSIGN_REF + lea rdi, bword ptr [r15+0x18] + mov rsi, rbx + call CORINFO_HELP_ASSIGN_REF + test dword ptr [r14+0x34], 0xD1FFAB1E + jne G_M46174_IG30 + mov rdi, 0xD1FFAB1E ; const ptr + mov rsi, gword ptr [rdi] + lea rdi, bword ptr [r15+0x10] + call CORINFO_HELP_ASSIGN_REF + mov rbx, gword ptr [r15+0x08] + cmp byte ptr [rbx], bl + mov rdi, 0xD1FFAB1E ; System.Action + call CORINFO_HELP_NEWSFAST + mov r14, rax + lea rdi, bword ptr [r14+0x08] mov rsi, r15 - mov rdx, rbx - mov rcx, r14 - mov rax, 0xD1FFAB1E ; code for System.Threading.Tasks.TaskToAsyncResult+TaskAsyncResult:.ctor(System.Threading.Tasks.Task,System.Object,System.AsyncCallback):this - call [rax]System.Threading.Tasks.TaskToAsyncResult+TaskAsyncResult:.ctor(System.Threading.Tasks.Task,System.Object,System.AsyncCallback):this - jmp G_M46174_IG32 - ;; size=44 bbWeight=0.50 PerfScore 3.75 + call CORINFO_HELP_ASSIGN_REF + mov rdi, 0xD1FFAB1E ; code for System.Threading.Tasks.TaskToAsyncResult+TaskAsyncResult:<.ctor>b__2_0():this + mov qword ptr [r14+0x18], rdi + mov r15, r14 + mov rdi, 0xD1FFAB1E ; global ptr + test byte ptr [rdi], 1 + je G_M46174_IG52 + ;; size=150 bbWeight=0.50 PerfScore 13.38 G_M46174_IG27: + mov rdi, 0xD1FFAB1E ; data for System.Threading.Tasks.TplEventSource:Log + mov rdi, gword ptr [rdi] + cmp byte ptr [rdi+0x9D], 0 + jne SHORT G_M46174_IG28 + mov rdi, 0xD1FFAB1E ; data for System.Threading.Tasks.Task:s_asyncDebuggingEnabled + cmp byte ptr [rdi], 0 + je SHORT G_M46174_IG29 + ;; size=37 bbWeight=0.50 PerfScore 5.25 +G_M46174_IG28: + mov rdi, rbx + mov rsi, r14 + mov rax, 0xD1FFAB1E ; code for System.Runtime.CompilerServices.TaskAwaiter:OutputWaitEtwEvents(System.Threading.Tasks.Task,System.Action):System.Action + call [rax]System.Runtime.CompilerServices.TaskAwaiter:OutputWaitEtwEvents(System.Threading.Tasks.Task,System.Action):System.Action + mov r15, rax + ;; size=21 bbWeight=0.50 PerfScore 2.00 +G_M46174_IG29: + mov rdi, rbx + mov rsi, r15 + xor edx, edx + mov ecx, 1 + mov rax, 0xD1FFAB1E ; code for System.Threading.Tasks.Task:SetContinuationForAwait(System.Action,ubyte,ubyte):this + call [rax]System.Threading.Tasks.Task:SetContinuationForAwait(System.Action,ubyte,ubyte):this + jmp G_M46174_IG40 + ;; size=30 bbWeight=0.50 PerfScore 3.12 +G_M46174_IG30: + mov byte ptr [r15+0x20], 1 + mov rsi, 0xD1FFAB1E ; const ptr + mov rax, gword ptr [rsi] + mov rsi, r15 + mov rdi, gword ptr [rax+0x08] + call [rax+0x18]System.AsyncCallback:Invoke(System.IAsyncResult):this + jmp G_M46174_IG40 + ;; size=33 bbWeight=0.50 PerfScore 5.25 +G_M46174_IG31: xor rdi, rdi mov gword ptr [rbx+0x78], rdi mov rdi, 0xD1FFAB1E ; global ptr test byte ptr [rdi], 1 - je G_M46174_IG44 + je G_M46174_IG53 ;; size=25 bbWeight=0.50 PerfScore 2.75 -G_M46174_IG28: +G_M46174_IG32: mov rdi, 0xD1FFAB1E ; data for System.Net.NetEventSource:Log mov r13, gword ptr [rdi] cmp byte ptr [r13+0x9D], 0 - je SHORT G_M46174_IG29 + je SHORT G_M46174_IG33 mov r14, r13 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 rdi, 0xD1FFAB1E ; 'starting Connect()' mov rax, 0xD1FFAB1E ; code for System.Net.NetEventSource:Format(System.Object):System.String call [rax]System.Net.NetEventSource:Format(System.Object):System.String mov r8, rax cmp byte ptr [r14], r14b mov rdi, r14 mov rdx, r13 mov esi, 1 mov rcx, 0xD1FFAB1E ; 'QueueOrCreateDataConection' mov rax, 0xD1FFAB1E ; code for System.Diagnostics.Tracing.EventSource:WriteEvent(int,System.String,System.String,System.String):this call [rax]System.Diagnostics.Tracing.EventSource:WriteEvent(int,System.String,System.String,System.String):this ;; size=105 bbWeight=0.50 PerfScore 10.62 -G_M46174_IG29: +G_M46174_IG33: cmp byte ptr [rbx+0x5D], 0 - je SHORT G_M46174_IG30 + je SHORT G_M46174_IG34 mov rdi, gword ptr [rbx+0x68] - mov rsi, 0xD1FFAB1E ; const ptr - mov r14, gword ptr [rsi] cmp byte ptr [rdi], dil mov rsi, r15 mov rax, 0xD1FFAB1E ; code for System.Net.Sockets.Socket:ConnectAsync(System.Net.EndPoint):System.Threading.Tasks.Task:this call [rax]System.Net.Sockets.Socket:ConnectAsync(System.Net.EndPoint):System.Threading.Tasks.Task:this - mov r15, rax - test r15, r15 - jne SHORT G_M46174_IG31 - jmp G_M46174_IG45 - ;; size=54 bbWeight=0.50 PerfScore 9.12 -G_M46174_IG30: + mov r14, rax + test r14, r14 + jne SHORT G_M46174_IG35 + jmp G_M46174_IG55 + ;; size=41 bbWeight=0.50 PerfScore 8.00 +G_M46174_IG34: mov rdi, gword ptr [rbx+0x68] mov rsi, r15 mov rax, 0xD1FFAB1E ; code for System.Net.Sockets.Socket:Connect(System.Net.EndPoint):this cmp dword ptr [rdi], edi call [rax]System.Net.Sockets.Socket:Connect(System.Net.EndPoint):this mov r14d, 1 - jmp SHORT G_M46174_IG33 - ;; size=29 bbWeight=0.50 PerfScore 5.38 -G_M46174_IG31: + jmp G_M46174_IG41 + ;; size=32 bbWeight=0.50 PerfScore 5.38 +G_M46174_IG35: mov rdi, 0xD1FFAB1E ; System.Threading.Tasks.TaskToAsyncResult+TaskAsyncResult call CORINFO_HELP_NEWSFAST - mov rdi, rax + mov r15, rax + lea rdi, bword ptr [r15+0x08] + mov rsi, r14 + call CORINFO_HELP_ASSIGN_REF + lea rdi, bword ptr [r15+0x18] + mov rsi, rbx + call CORINFO_HELP_ASSIGN_REF + test dword ptr [r14+0x34], 0xD1FFAB1E + jne G_M46174_IG39 + mov rdi, 0xD1FFAB1E ; const ptr + mov rsi, gword ptr [rdi] + lea rdi, bword ptr [r15+0x10] + call CORINFO_HELP_ASSIGN_REF + mov rbx, gword ptr [r15+0x08] + cmp byte ptr [rbx], bl + mov rdi, 0xD1FFAB1E ; System.Action + call CORINFO_HELP_NEWSFAST + mov r14, rax + lea rdi, bword ptr [r14+0x08] mov rsi, r15 - mov rdx, rbx - mov rcx, r14 - mov rax, 0xD1FFAB1E ; code for System.Threading.Tasks.TaskToAsyncResult+TaskAsyncResult:.ctor(System.Threading.Tasks.Task,System.Object,System.AsyncCallback):this - call [rax]System.Threading.Tasks.TaskToAsyncResult+TaskAsyncResult:.ctor(System.Threading.Tasks.Task,System.Object,System.AsyncCallback):this - ;; size=39 bbWeight=0.50 PerfScore 2.75 -G_M46174_IG32: + call CORINFO_HELP_ASSIGN_REF + mov rdi, 0xD1FFAB1E ; code for System.Threading.Tasks.TaskToAsyncResult+TaskAsyncResult:<.ctor>b__2_0():this + mov qword ptr [r14+0x18], rdi + mov r15, r14 + mov rdi, 0xD1FFAB1E ; global ptr + test byte ptr [rdi], 1 + je G_M46174_IG54 + ;; size=150 bbWeight=0.50 PerfScore 13.38 +G_M46174_IG36: + mov rdi, 0xD1FFAB1E ; data for System.Threading.Tasks.TplEventSource:Log + mov rdi, gword ptr [rdi] + cmp byte ptr [rdi+0x9D], 0 + jne SHORT G_M46174_IG37 + mov rdi, 0xD1FFAB1E ; data for System.Threading.Tasks.Task:s_asyncDebuggingEnabled + cmp byte ptr [rdi], 0 + je SHORT G_M46174_IG38 + ;; size=37 bbWeight=0.50 PerfScore 5.25 +G_M46174_IG37: + mov rdi, rbx + mov rsi, r14 + mov rax, 0xD1FFAB1E ; code for System.Runtime.CompilerServices.TaskAwaiter:OutputWaitEtwEvents(System.Threading.Tasks.Task,System.Action):System.Action + call [rax]System.Runtime.CompilerServices.TaskAwaiter:OutputWaitEtwEvents(System.Threading.Tasks.Task,System.Action):System.Action + mov r15, rax + ;; size=21 bbWeight=0.50 PerfScore 2.00 +G_M46174_IG38: + mov rdi, rbx + mov rsi, r15 + xor edx, edx + mov ecx, 1 + mov rax, 0xD1FFAB1E ; code for System.Threading.Tasks.Task:SetContinuationForAwait(System.Action,ubyte,ubyte):this + call [rax]System.Threading.Tasks.Task:SetContinuationForAwait(System.Action,ubyte,ubyte):this + jmp SHORT G_M46174_IG40 + ;; size=27 bbWeight=0.50 PerfScore 3.12 +G_M46174_IG39: + mov byte ptr [r15+0x20], 1 + mov rsi, 0xD1FFAB1E ; const ptr + mov rax, gword ptr [rsi] + mov rsi, r15 + mov rdi, gword ptr [rax+0x08] + call [rax+0x18]System.AsyncCallback:Invoke(System.IAsyncResult):this + ;; size=28 bbWeight=0.50 PerfScore 4.25 +G_M46174_IG40: mov r14d, 2 ;; size=6 bbWeight=0.50 PerfScore 0.12 -G_M46174_IG33: +G_M46174_IG41: mov eax, r14d ;; size=3 bbWeight=0.50 PerfScore 0.12 -G_M46174_IG34: +G_M46174_IG42: add rsp, 24 pop rbx pop r12 pop r13 pop r14 pop r15 pop rbp ret ;; size=15 bbWeight=0.50 PerfScore 2.12 -G_M46174_IG35: +G_M46174_IG43: mov byte ptr [r14], 1 mov eax, 2 ;; size=9 bbWeight=0.50 PerfScore 0.62 -G_M46174_IG36: +G_M46174_IG44: add rsp, 24 pop rbx pop r12 pop r13 pop r14 pop r15 pop rbp ret ;; size=15 bbWeight=0.50 PerfScore 2.12 -G_M46174_IG37: +G_M46174_IG45: mov rdi, gword ptr [rbx+0x68] mov rax, 0xD1FFAB1E ; code for System.Net.Sockets.Socket:Accept():System.Net.Sockets.Socket:this cmp dword ptr [rdi], edi call [rax]System.Net.Sockets.Socket:Accept():System.Net.Sockets.Socket:this lea rdi, bword ptr [rbx+0x68] mov rsi, rax call CORINFO_HELP_ASSIGN_REF mov rdi, rbx mov rax, 0xD1FFAB1E ; code for System.Net.NetworkStreamWrapper:get_ServerAddress():System.Net.IPAddress:this call [rax]System.Net.NetworkStreamWrapper:get_ServerAddress():System.Net.IPAddress:this mov r15, rax mov rdi, gword ptr [rbx+0x68] mov rax, 0xD1FFAB1E ; code for System.Net.Sockets.Socket:get_RemoteEndPoint():System.Net.EndPoint:this cmp dword ptr [rdi], edi call [rax]System.Net.Sockets.Socket:get_RemoteEndPoint():System.Net.EndPoint:this mov rcx, rax test rcx, rcx - je SHORT G_M46174_IG40 + je SHORT G_M46174_IG48 ;; size=74 bbWeight=0.50 PerfScore 11.75 -G_M46174_IG38: +G_M46174_IG46: mov rdi, 0xD1FFAB1E ; System.Net.IPEndPoint cmp qword ptr [rcx], rdi - je SHORT G_M46174_IG40 + je SHORT G_M46174_IG48 ;; size=15 bbWeight=0.25 PerfScore 1.06 -G_M46174_IG39: +G_M46174_IG47: 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_M46174_IG40: +G_M46174_IG48: mov rsi, gword ptr [rcx+0x08] mov rdi, r15 mov rax, qword ptr [r15] mov rax, qword ptr [rax+0x40] call [rax+0x10]System.Object:Equals(System.Object):ubyte:this test eax, eax - je SHORT G_M46174_IG41 + je SHORT G_M46174_IG49 mov byte ptr [r14], 1 mov r14d, 2 - jmp SHORT G_M46174_IG42 + jmp SHORT G_M46174_IG50 ;; size=33 bbWeight=0.50 PerfScore 6.88 -G_M46174_IG41: +G_M46174_IG49: mov rdi, gword ptr [rbx+0x68] mov rax, 0xD1FFAB1E ; code for System.Net.Sockets.Socket:Close():this cmp dword ptr [rdi], edi call [rax]System.Net.Sockets.Socket:Close():this mov rdi, 0xD1FFAB1E ; System.Net.WebException call CORINFO_HELP_NEWSFAST mov rbx, rax mov rax, 0xD1FFAB1E ; code for System.SR:get_net_ftp_active_address_different():System.String call [rax]System.SR:get_net_ftp_active_address_different():System.String mov rsi, rax mov rdi, rbx mov edx, 7 mov rax, 0xD1FFAB1E ; code for System.Net.WebException:.ctor(System.String,int):this call [rax]System.Net.WebException:.ctor(System.String,int):this mov rdi, rbx call CORINFO_HELP_THROW int3 ;; size=80 bbWeight=0 PerfScore 0.00 -G_M46174_IG42: +G_M46174_IG50: mov rdi, gword ptr [rbp-0x30] mov rax, 0xD1FFAB1E ; code for System.Net.Sockets.Socket:Close():this cmp dword ptr [rdi], edi call [rax]System.Net.Sockets.Socket:Close():this - jmp G_M46174_IG33 + jmp G_M46174_IG41 ;; size=23 bbWeight=0.50 PerfScore 4.62 -G_M46174_IG43: +G_M46174_IG51: mov rdi, 0xD1FFAB1E ; System.Net.NetEventSource call CORINFO_HELP_GET_GCSTATIC_BASE jmp G_M46174_IG23 ;; size=20 bbWeight=0 PerfScore 0.00 -G_M46174_IG44: +G_M46174_IG52: + mov rdi, 0xD1FFAB1E ; System.Threading.Tasks.TplEventSource + call CORINFO_HELP_GET_GCSTATIC_BASE + jmp G_M46174_IG27 + ;; size=20 bbWeight=0 PerfScore 0.00 +G_M46174_IG53: mov rdi, 0xD1FFAB1E ; System.Net.NetEventSource call CORINFO_HELP_GET_GCSTATIC_BASE - jmp G_M46174_IG28 + jmp G_M46174_IG32 ;; size=20 bbWeight=0 PerfScore 0.00 -G_M46174_IG45: +G_M46174_IG54: + mov rdi, 0xD1FFAB1E ; System.Threading.Tasks.TplEventSource + call CORINFO_HELP_GET_GCSTATIC_BASE + jmp G_M46174_IG36 + ;; size=20 bbWeight=0 PerfScore 0.00 +G_M46174_IG55: mov edi, 0x134F0 mov rsi, 0xD1FFAB1E call CORINFO_HELP_STRCNS mov rdi, rax mov rax, 0xD1FFAB1E ; code for System.ArgumentNullException:Throw(System.String) call [rax]System.ArgumentNullException:Throw(System.String) int3 ;; size=36 bbWeight=0 PerfScore 0.00 -G_M46174_IG46: +G_M46174_IG56: mov edi, 0xC15 mov rsi, 0xD1FFAB1E call CORINFO_HELP_STRCNS mov rdi, rax mov rax, 0xD1FFAB1E ; code for System.ArgumentNullException:Throw(System.String) call [rax]System.ArgumentNullException:Throw(System.String) int3 ;; size=36 bbWeight=0 PerfScore 0.00 -G_M46174_IG47: +G_M46174_IG57: push rbp push r15 push r14 push r13 push r12 push rbx push rax mov rbp, qword ptr [rdi] mov qword ptr [rsp], rbp lea rbp, [rbp+0x40] ;; size=22 bbWeight=0 PerfScore 0.00 -G_M46174_IG48: +G_M46174_IG58: mov rax, 0xD1FFAB1E ; code for System.Net.ExceptionHelper:get_RequestAbortedException():System.Net.WebException call [rax]System.Net.ExceptionHelper:get_RequestAbortedException():System.Net.WebException mov rdi, rax call CORINFO_HELP_THROW int3 ;; size=21 bbWeight=0 PerfScore 0.00 -G_M46174_IG49: +G_M46174_IG59: push rbp push r15 push r14 push r13 push r12 push rbx push rax mov rbp, qword ptr [rdi] mov qword ptr [rsp], rbp lea rbp, [rbp+0x40] ;; size=22 bbWeight=0 PerfScore 0.00 -G_M46174_IG50: +G_M46174_IG60: mov rdi, gword ptr [rbp-0x30] mov rax, 0xD1FFAB1E ; code for System.Net.Sockets.Socket:Close():this cmp dword ptr [rdi], edi call [rax]System.Net.Sockets.Socket:Close():this nop ;; size=19 bbWeight=0 PerfScore 0.00 -G_M46174_IG51: +G_M46174_IG61: add rsp, 8 pop rbx pop r12 pop r13 pop r14 pop r15 pop rbp ret ;; size=15 bbWeight=0 PerfScore 0.00 -; Total bytes of code 1561, prolog size 32, PerfScore 155.56, instruction count 374, allocated bytes for code 1561 (MethodHash=8e804ba1) for method System.Net.FtpControlStream:QueueOrCreateDataConection(System.Net.CommandStream+PipelineEntry,System.Net.ResponseDescription,byref):int:this (FullOpts) +; Total bytes of code 2029, prolog size 32, PerfScore 203.81, instruction count 468, allocated bytes for code 2029 (MethodHash=8e804ba1) for method System.Net.FtpControlStream:QueueOrCreateDataConection(System.Net.CommandStream+PipelineEntry,System.Net.ResponseDescription,byref):int: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/aee41fafad4f99667e4435422a119e87

MihuBot commented 1 month ago

Top method improvements

-157 (-10.14 % of base) - System.Net.HttpListenerResponse:SendHeaders(ubyte,System.IO.MemoryStream,ubyte):this ```diff ; 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; 37 single block inlinees; 13 inlinees without PGO data ; Final local variable assignments ; ; V00 this [V00,T00] ( 39, 23 ) ref -> rbx this class-hnd single-def -; 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 -; V03 arg3 [V03,T04] ( 4, 4 ) ubyte -> r14 single-def -; V04 loc0 [V04,T09] ( 3, 3 ) ref -> r13 class-hnd exact single-def -; V05 loc1 [V05,T10] ( 3, 3 ) ref -> rax class-hnd single-def +; V03 arg3 [V03,T03] ( 4, 4 ) ubyte -> r14 single-def +; V04 loc0 [V04,T08] ( 3, 3 ) ref -> r13 class-hnd exact single-def +; V05 loc1 [V05,T09] ( 3, 3 ) ref -> rax class-hnd single-def ;* 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 ;* V09 loc5 [V09 ] ( 0, 0 ) struct (16) zero-ref multireg-ret ld-addr-op ;# 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" -; V12 tmp2 [V12,T05] ( 3, 6 ) ref -> rax class-hnd exact single-def "Single-def Box Helper" +; V12 tmp2 [V12,T04] ( 3, 6 ) ref -> rax class-hnd exact single-def "Single-def Box Helper" ;* V13 tmp3 [V13 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[SBR] multireg-ret "Return value temp for multireg return" -; V14 tmp4 [V14,T35] ( 3, 1.50) int -> rax -; V15 tmp5 [V15,T11] ( 3, 3 ) ref -> r13 class-hnd single-def "impAppendStmt" -; 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" +;* 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" +; V19 tmp9 [V19,T33] ( 2, 1 ) int -> rdx +; V20 tmp10 [V20,T11] ( 3, 3 ) ref -> r12 class-hnd single-def "impAppendStmt" ;* V21 tmp11 [V21 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" ;* V22 tmp12 [V22 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" -; V23 tmp13 [V23,T26] ( 2, 2 ) ref -> rdx class-hnd exact single-def "Inlining Arg" -;* V24 tmp14 [V24 ] ( 0, 0 ) struct ( 8) zero-ref "Inlining Arg" -;* V25 tmp15 [V25 ] ( 0, 0 ) struct ( 8) zero-ref ld-addr-op "NewObj constructor temp" +;* V23 tmp13 [V23 ] ( 0, 0 ) struct ( 8) zero-ref "Inlining Arg" +;* V24 tmp14 [V24 ] ( 0, 0 ) struct ( 8) zero-ref ld-addr-op "NewObj constructor temp" +; V25 tmp15 [V25,T23] ( 2, 2 ) ref -> rdx class-hnd exact single-def "impAppendStmt" ;* V26 tmp16 [V26 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" ;* V27 tmp17 [V27 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" ;* 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" -; V30 tmp20 [V30,T27] ( 2, 2 ) ref -> rsi class-hnd exact single-def "Inlining Arg" +; V29 tmp19 [V29,T12] ( 3, 3 ) ref -> r12 class-hnd exact single-def "Inlining Arg" +; V30 tmp20 [V30,T24] ( 2, 2 ) ref -> rsi class-hnd exact single-def "Inlining Arg" ;* V31 tmp21 [V31 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" -; V32 tmp22 [V32,T28] ( 2, 2 ) ref -> rax class-hnd exact single-def "Inlining Arg" -; V33 tmp23 [V33,T29] ( 2, 2 ) ref -> rdx class-hnd exact single-def "Inlining Arg" -; V34 tmp24 [V34,T37] ( 2, 1 ) ref -> rdx class-hnd single-def "Inline return value spill temp" -; V35 tmp25 [V35,T33] ( 2, 2 ) long -> rdi "Inlining Arg" -;* V36 tmp26 [V36 ] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp" +; V32 tmp22 [V32,T25] ( 2, 2 ) ref -> rax class-hnd exact single-def "Inlining Arg" +; V33 tmp23 [V33,T32] ( 2, 1 ) ref -> rdx class-hnd single-def "Inline return value spill temp" +; V34 tmp24 [V34,T28] ( 2, 2 ) long -> rdi "Inlining Arg" +;* V35 tmp25 [V35 ] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp" +;* V36 tmp26 [V36 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline return value spill temp" ;* V37 tmp27 [V37 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline return value spill temp" -;* V38 tmp28 [V38 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" -;* V39 tmp29 [V39 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" -;* V40 tmp30 [V40 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" -;* V41 tmp31 [V41 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" -;* V42 tmp32 [V42 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" -;* 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" -; V45 tmp35 [V45,T30] ( 2, 2 ) ref -> rsi class-hnd exact single-def "Inlining Arg" -; V46 tmp36 [V46,T03] ( 6, 6 ) ref -> r12 class-hnd single-def "Inlining Arg" -; V47 tmp37 [V47,T44] ( 3, 0 ) ref -> rbx class-hnd exact single-def "NewObj constructor temp" -;* V48 tmp38 [V48 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" -; V49 tmp39 [V49 ] ( 2, 4 ) ref -> [rbp-0x30] do-not-enreg[X] must-init addr-exposed ld-addr-op class-hnd "Inlining Arg" -;* V50 tmp40 [V50 ] ( 0, 0 ) struct (16) zero-ref multireg-arg ld-addr-op "NewObj constructor temp" -;* V51 tmp41 [V51 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" -;* V52 tmp42 [V52 ] ( 0, 0 ) ref -> zero-ref class-hnd "dup spill" -;* V53 tmp43 [V53 ] ( 0, 0 ) ref -> zero-ref -;* V54 tmp44 [V54 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" -;* V55 tmp45 [V55 ] ( 0, 0 ) int -> zero-ref "Inlining Arg" -;* V56 tmp46 [V56 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" -;* 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 -; 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" -; 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" +;* V38 tmp28 [V38 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inline stloc first use temp" +;* V39 tmp29 [V39 ] ( 0, 0 ) ref -> zero-ref +;* V40 tmp30 [V40 ] ( 0, 0 ) ref -> zero-ref "ISINST eval op1" +;* V41 tmp31 [V41 ] ( 0, 0 ) ref -> zero-ref class-hnd "spilling qmarkNull" +;* V42 tmp32 [V42 ] ( 0, 0 ) ref -> zero-ref +;* V43 tmp33 [V43 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "dup spill" +;* V44 tmp34 [V44 ] ( 0, 0 ) ref -> zero-ref +;* V45 tmp35 [V45 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline return value spill temp" +;* V46 tmp36 [V46 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inline return value spill temp" +;* V47 tmp37 [V47 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "NewObj constructor temp" +;* V48 tmp38 [V48 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inline stloc first use temp" +;* V49 tmp39 [V49 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg" +;* V50 tmp40 [V50 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" +;* V51 tmp41 [V51 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" +;* V52 tmp42 [V52 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" +;* V53 tmp43 [V53 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" +;* V54 tmp44 [V54 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" +;* V55 tmp45 [V55 ] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp" +; V56 tmp46 [V56,T13] ( 3, 3 ) ref -> r12 class-hnd exact single-def "Inlining Arg" +; V57 tmp47 [V57,T26] ( 2, 2 ) ref -> rsi class-hnd exact single-def "Inlining Arg" +; V58 tmp48 [V58 ] ( 2, 4 ) ref -> [rbp-0x30] do-not-enreg[X] must-init addr-exposed ld-addr-op class-hnd "Inlining Arg" +;* V59 tmp49 [V59 ] ( 0, 0 ) struct (16) zero-ref multireg-arg ld-addr-op "NewObj constructor temp" +;* V60 tmp50 [V60 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" +;* V61 tmp51 [V61 ] ( 0, 0 ) ref -> zero-ref class-hnd "dup spill" +;* V62 tmp52 [V62 ] ( 0, 0 ) ref -> zero-ref +;* V63 tmp53 [V63 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" +;* V64 tmp54 [V64 ] ( 0, 0 ) int -> zero-ref "Inlining Arg" +;* V65 tmp55 [V65 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" +;* V66 tmp56 [V66 ] ( 0, 0 ) int -> zero-ref "Inlining Arg" +;* V67 tmp57 [V67 ] ( 0, 0 ) ubyte -> zero-ref "Inlining Arg" +; V68 tmp58 [V68,T34] ( 2, 1 ) long -> rdi "field V08._dateData (fldOffset=0x0)" P-INDEP +; V69 tmp59 [V69,T35] ( 1, 1 ) byref -> rax "field V09._reference (fldOffset=0x0)" P-INDEP +; V70 tmp60 [V70,T29] ( 2, 2 ) int -> r13 "field V09._length (fldOffset=0x8)" P-INDEP +;* V71 tmp61 [V71 ] ( 0, 0 ) byref -> zero-ref "field V13._reference (fldOffset=0x0)" P-DEP +;* V72 tmp62 [V72 ] ( 0, 0 ) int -> zero-ref "field V13._length (fldOffset=0x8)" P-DEP +;* V73 tmp63 [V73 ] ( 0, 0 ) long -> zero-ref "field V23._dateData (fldOffset=0x0)" P-INDEP +;* V74 tmp64 [V74,T38] ( 0, 0 ) long -> zero-ref "field V24._ticks (fldOffset=0x0)" P-INDEP +;* V75 tmp65 [V75,T36] ( 0, 0 ) byref -> zero-ref single-def "field V59._reference (fldOffset=0x0)" P-INDEP +;* V76 tmp66 [V76,T37] ( 0, 0 ) int -> zero-ref "field V59._length (fldOffset=0x8)" P-INDEP +; V77 tmp67 [V77,T14] ( 3, 3 ) ref -> rdi single-def "argument with side effect" +; V78 tmp68 [V78,T15] ( 3, 3 ) ref -> rdi single-def "argument with side effect" +; V79 tmp69 [V79,T16] ( 3, 3 ) ref -> rdi single-def "argument with side effect" +; V80 tmp70 [V80,T27] ( 2, 2 ) ref -> rdx single-def "argument with side effect" +; V81 tmp71 [V81,T17] ( 3, 3 ) ref -> rdi single-def "argument with side effect" +; V82 tmp72 [V82,T18] ( 3, 3 ) ref -> rdi single-def "argument with side effect" +; V83 tmp73 [V83,T19] ( 3, 3 ) ref -> rdi single-def "argument with side effect" +; V84 tmp74 [V84,T20] ( 3, 3 ) ref -> rdi single-def "argument with side effect" +;* V85 tmp75 [V85 ] ( 0, 0 ) ref -> zero-ref "argument with side effect" +; V86 tmp76 [V86,T07] ( 2, 4 ) ref -> rsi single-def "argument with side effect" +; V87 cse0 [V87,T22] ( 4, 2 ) int -> rdi "CSE #05: moderate" +; V88 cse1 [V88,T31] ( 3, 1.50) int -> rdi "CSE #03: conservative" +; V89 rat0 [V89,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 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 + mov edx, -1 + xor edi, edi test eax, eax - cmove edi, edx - movsxd rdi, edi - mov qword ptr [rbx+0x48], rdi + cmove edx, edi + movsxd rdx, edx + mov qword ptr [rbx+0x48], rdx ;; 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:g__FormatInt64Slow|22_0(long,System.String,System.IFormatProvider):System.String call [rax]System.Number: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/fa63eed99033d152af7c47c5562a6f4d

MihuBot commented 1 month ago

@MichalPetryka