MihuBot / runtime-utils

0 stars 0 forks source link

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

Open MihuBot opened 1 day ago

MihuBot commented 1 day ago

Job completed in 18 minutes 41 seconds. https://github.com/dotnet/runtime/pull/108606

Diffs

Diffs ``` Found 351 files with textual diffs. Summary of Code Size diffs: (Lower is better) Total bytes of base: 39447434 Total bytes of diff: 39441649 Total bytes of delta: -5785 (-0.01 % of base) Total relative delta: -9.48 diff is an improvement. relative diff is an improvement. Top file regressions (bytes): 353 : System.Private.CoreLib.dasm (0.01 % of base) 286 : System.Net.WebSockets.dasm (0.19 % of base) 264 : Microsoft.CSharp.dasm (0.08 % of base) 99 : Microsoft.VisualBasic.Core.dasm (0.02 % of base) 90 : System.Runtime.Serialization.Schema.dasm (0.16 % of base) 88 : System.Linq.Parallel.dasm (0.00 % of base) 74 : System.Net.Security.dasm (0.03 % of base) 47 : System.Text.Encoding.CodePages.dasm (0.06 % of base) 38 : System.Net.Mail.dasm (0.02 % of base) 20 : Microsoft.Extensions.Logging.Abstractions.dasm (0.03 % of base) 16 : System.Net.NameResolution.dasm (0.04 % of base) 11 : System.Net.Sockets.dasm (0.00 % of base) Top file improvements (bytes): -2280 : System.Private.DataContractSerialization.dasm (-0.23 % of base) -1627 : System.Private.Xml.dasm (-0.04 % of base) -904 : System.Threading.Tasks.Dataflow.dasm (-0.07 % of base) -310 : System.ComponentModel.Composition.dasm (-0.07 % of base) -181 : System.Composition.Hosting.dasm (-0.17 % of base) -166 : System.Net.HttpListener.dasm (-0.16 % of base) -165 : System.CodeDom.dasm (-0.08 % of base) -163 : System.Net.Http.dasm (-0.02 % of base) -155 : System.Data.Common.dasm (-0.01 % of base) -144 : System.Security.Cryptography.Xml.dasm (-0.07 % of base) -137 : System.Formats.Tar.dasm (-0.11 % of base) -97 : System.Web.HttpUtility.dasm (-0.50 % of base) -75 : System.Configuration.ConfigurationManager.dasm (-0.02 % of base) -74 : System.Security.Cryptography.dasm (-0.01 % of base) -53 : System.Text.Json.dasm (-0.00 % of base) -49 : System.Private.Xml.Linq.dasm (-0.03 % of base) -46 : System.DirectoryServices.Protocols.dasm (-0.03 % of base) -43 : System.Linq.Expressions.dasm (-0.00 % of base) -42 : Microsoft.Extensions.DependencyInjection.dasm (-0.06 % of base) -41 : System.Net.WebClient.dasm (-0.08 % of base) -31 : System.Formats.Cbor.dasm (-0.07 % of base) -27 : System.Net.Requests.dasm (-0.02 % of base) -26 : System.ComponentModel.TypeConverter.dasm (-0.01 % of base) -25 : System.Runtime.InteropServices.dasm (-0.11 % of base) -24 : System.Diagnostics.TraceSource.dasm (-0.05 % of base) -20 : Microsoft.Extensions.DependencyModel.dasm (-0.03 % of base) -20 : Microsoft.Extensions.Logging.Console.dasm (-0.03 % of base) -19 : System.Collections.Immutable.dasm (-0.00 % of base) -18 : Microsoft.Extensions.FileProviders.Physical.dasm (-0.10 % of base) -18 : System.ServiceModel.Syndication.dasm (-0.01 % of base) -17 : ILCompiler.Reflection.ReadyToRun.dasm (-0.01 % of base) -15 : System.Console.dasm (-0.02 % of base) -14 : System.Diagnostics.DiagnosticSource.dasm (-0.01 % of base) -14 : System.Text.RegularExpressions.dasm (-0.00 % of base) -13 : System.IO.Pipelines.dasm (-0.02 % of base) -12 : System.Runtime.Caching.dasm (-0.02 % of base) -9 : System.Runtime.Serialization.Formatters.dasm (-0.04 % of base) -9 : System.Reflection.DispatchProxy.dasm (-0.05 % of base) -9 : System.Composition.Convention.dasm (-0.01 % of base) -7 : System.ComponentModel.Annotations.dasm (-0.01 % of base) -7 : System.Reflection.MetadataLoadContext.dasm (-0.00 % of base) -6 : System.Net.Primitives.dasm (-0.01 % of base) -6 : System.Reflection.Metadata.dasm (-0.00 % of base) -6 : Microsoft.Extensions.Configuration.dasm (-0.04 % of base) -6 : System.Resources.Writer.dasm (-0.07 % of base) -6 : System.Resources.Extensions.dasm (-0.01 % of base) -5 : System.Net.Http.Json.dasm (-0.00 % of base) -4 : System.Data.Odbc.dasm (-0.00 % of base) -4 : System.Drawing.Primitives.dasm (-0.01 % of base) -4 : System.Formats.Nrbf.dasm (-0.01 % of base) -3 : System.Net.WebHeaderCollection.dasm (-0.02 % of base) -3 : System.IO.Packaging.dasm (-0.00 % of base) -3 : Microsoft.Extensions.DependencyInjection.Abstractions.dasm (-0.00 % of base) -3 : System.Collections.Specialized.dasm (-0.02 % of base) -2 : System.ComponentModel.Composition.Registration.dasm (-0.00 % of base) -1 : System.Threading.RateLimiting.dasm (-0.00 % of base) -1 : System.Net.Quic.dasm (-0.00 % of base) -1 : System.Formats.Asn1.dasm (-0.00 % of base) -1 : Microsoft.Extensions.Http.dasm (-0.00 % of base) 71 total files with Code Size differences (59 improved, 12 regressed), 188 unchanged. Top method regressions (bytes): 417 (13.20 % of base) : System.Net.WebSockets.dasm - System.Net.WebSockets.ManagedWebSocket+d__69:MoveNext():this (FullOpts) 281 (6.37 % of base) : System.Private.Xml.dasm - System.Xml.Schema.XmlAnyConverter:ChangeType(System.Object,System.Type,System.Xml.IXmlNamespaceResolver):System.Object:this (FullOpts) 87 (0.86 % of base) : System.Net.WebSockets.dasm - System.Net.WebSockets.ManagedWebSocket+d__61`1[System.__Canon]:MoveNext():this (FullOpts) 76 (4.99 % of base) : Microsoft.CSharp.dasm - Microsoft.CSharp.RuntimeBinder.Errors.UserStringBuilder:ErrAppendSym(Microsoft.CSharp.RuntimeBinder.Semantics.Symbol,Microsoft.CSharp.RuntimeBinder.Semantics.SubstContext,ubyte):this (FullOpts) 75 (7.11 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.Runtime.XsltFunctions:SystemProperty(System.Xml.XmlQualifiedName):System.Xml.XPath.XPathItem (FullOpts) 66 (1.91 % of base) : Microsoft.VisualBasic.Core.dasm - Microsoft.VisualBasic.CompilerServices.VB6File:InternalWriteHelper(System.Object[]):this (FullOpts) 66 (1.91 % of base) : Microsoft.VisualBasic.Core.dasm - Microsoft.VisualBasic.CompilerServices.VB6File:Print(System.Object[]):this (FullOpts) 62 (15.16 % of base) : System.Net.Mail.dasm - System.Net.Mime.MimePart:set_TransferEncoding(int):this (FullOpts) 62 (8.76 % of base) : System.Private.Xml.dasm - System.Xml.Schema.XmlSchemaValidator:BuildXsiAttributes() (FullOpts) 57 (1.93 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.Runtime.XmlQueryRuntime:ChangeTypeXsltResult(System.Xml.Xsl.XmlQueryType,System.Object):System.Object:this (FullOpts) 42 (2.76 % of base) : System.DirectoryServices.Protocols.dasm - System.DirectoryServices.Protocols.LdapSessionOptions:ProcessQueryConnection(long,long,long,long,int,ulong,ulong,ulong):int:this (FullOpts) 42 (1.07 % of base) : System.Net.Security.dasm - System.Net.Security.SslStream:SelectClientCertificate():System.Security.Cryptography.X509Certificates.X509Certificate2:this (FullOpts) 37 (7.74 % of base) : System.Net.Mail.dasm - System.Net.Mime.MimeBasePart:get_Headers():System.Collections.Specialized.NameValueCollection:this (FullOpts) 36 (2.12 % of base) : Microsoft.CSharp.dasm - Microsoft.CSharp.RuntimeBinder.Errors.UserStringBuilder:ErrAppendMethod(Microsoft.CSharp.RuntimeBinder.Semantics.MethodSymbol,Microsoft.CSharp.RuntimeBinder.Semantics.SubstContext,ubyte):this (FullOpts) 36 (1.68 % of base) : Microsoft.CSharp.dasm - Microsoft.CSharp.RuntimeBinder.Errors.UserStringBuilder:ErrAppendType(Microsoft.CSharp.RuntimeBinder.Semantics.CType,Microsoft.CSharp.RuntimeBinder.Semantics.SubstContext):this (FullOpts) 33 (3.15 % of base) : System.Private.CoreLib.dasm - System.IO.BufferedStream:ReadAsync(ubyte[],int,int,System.Threading.CancellationToken):System.Threading.Tasks.Task`1[int]:this (FullOpts) 30 (9.17 % of base) : System.Net.Mail.dasm - System.Net.Mime.MimePart:set_ContentDisposition(System.Net.Mime.ContentDisposition):this (FullOpts) 30 (3.13 % of base) : System.Private.Xml.dasm - System.Xml.Schema.XmlSchemaValidator:InternalValidateEndElement(System.Xml.Schema.XmlSchemaInfo,System.Object):System.Object:this (FullOpts) 30 (9.09 % of base) : System.Private.Xml.dasm - System.Xml.Schema.XmlSchemaValidator:SkipToEndElement(System.Xml.Schema.XmlSchemaInfo):this (FullOpts) 30 (0.93 % of base) : System.Private.Xml.dasm - System.Xml.Serialization.XmlSerializationILGen:GenerateTypedSerializer(System.String,System.String,System.Xml.Serialization.XmlMapping,System.Xml.Serialization.CodeIdentifiers,System.String,System.String,System.String):System.String:this (FullOpts) 28 (5.42 % of base) : System.Net.Mail.dasm - System.Net.Mime.MimeBasePart:PrepareHeaders(ubyte):this (FullOpts) 27 (3.60 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.Json.XmlJsonWriter:WriteEscapedJsonString(System.String):this (FullOpts) 27 (7.85 % of base) : System.Private.Xml.dasm - System.Xml.Schema.XmlAnyConverter:ChangeType(System.String,System.Type,System.Xml.IXmlNamespaceResolver):System.Object:this (FullOpts) 26 (3.55 % of base) : System.Private.CoreLib.dasm - System.IO.Strategies.BufferedFileStreamStrategy:ReadAsync(ubyte[],int,int,System.Threading.CancellationToken):System.Threading.Tasks.Task`1[int]:this (FullOpts) 25 (2.05 % of base) : System.Private.Xml.dasm - System.Xml.Schema.XsdBuilder:ParseBlockFinalEnum(System.String,System.String):int:this (FullOpts) 25 (21.74 % of base) : System.Private.Xml.dasm - System.Xml.Schema.XsdValidator:.cctor() (FullOpts) 24 (2.88 % of base) : System.Private.CoreLib.dasm - System.Globalization.OrdinalCasing:CompareStringIgnoreCase(byref,int,byref,int):int (FullOpts) 24 (2.59 % of base) : System.Private.CoreLib.dasm - System.Globalization.OrdinalCasing:IndexOf(System.ReadOnlySpan`1[ushort],System.ReadOnlySpan`1[ushort]):int (FullOpts) 24 (2.76 % of base) : System.Private.CoreLib.dasm - System.Globalization.OrdinalCasing:LastIndexOf(System.ReadOnlySpan`1[ushort],System.ReadOnlySpan`1[ushort]):int (FullOpts) 24 (0.42 % of base) : System.Private.Xml.dasm - System.Xml.Serialization.XmlSerializationWriterILGen:GenerateMembersElement(System.Xml.Serialization.XmlMembersMapping):System.String:this (FullOpts) 23 (18.70 % of base) : System.Net.Mail.dasm - System.Net.Mime.MimeBasePart:set_ContentID(System.String):this (FullOpts) 23 (18.70 % of base) : System.Net.Mail.dasm - System.Net.Mime.MimeBasePart:set_ContentLocation(System.String):this (FullOpts) 22 (1.97 % of base) : System.Runtime.Serialization.Schema.dasm - System.Runtime.Serialization.CodeExporter:GenerateType(System.Runtime.Serialization.DataContracts.DataContract,System.Runtime.Serialization.ContractCodeDomInfo):this (FullOpts) 21 (5.33 % of base) : System.Private.CoreLib.dasm - System.Globalization.UmAlQuraCalendar:ConvertHijriToGregorian(int,int,int,byref,byref,byref) (FullOpts) 20 (13.42 % of base) : Microsoft.CSharp.dasm - Microsoft.CSharp.RuntimeBinder.Errors.UserStringBuilder:ErrAppendName(Microsoft.CSharp.RuntimeBinder.Syntax.Name):this (FullOpts) 20 (2.33 % of base) : Microsoft.CSharp.dasm - Microsoft.CSharp.RuntimeBinder.Errors.UserStringBuilder:ErrAppendProperty(Microsoft.CSharp.RuntimeBinder.Semantics.PropertySymbol,Microsoft.CSharp.RuntimeBinder.Semantics.SubstContext):this (FullOpts) 20 (2.02 % of base) : Microsoft.CSharp.dasm - Microsoft.CSharp.RuntimeBinder.Errors.UserStringBuilder:ErrArgToString(byref,Microsoft.CSharp.RuntimeBinder.Errors.ErrArg,byref):ubyte:this (FullOpts) 20 (3.96 % of base) : System.Private.CoreLib.dasm - System.Globalization.OrdinalCasing:ToUpperOrdinal(System.ReadOnlySpan`1[ushort],System.Span`1[ushort]) (FullOpts) 20 (7.69 % of base) : System.Net.Mail.dasm - System.Net.Mail.AttachmentBase:set_ContentId(System.String):this (FullOpts) 20 (0.51 % of base) : System.Net.Mail.dasm - System.Net.Mail.MailMessage:SetContent(ubyte):this (FullOpts) 20 (8.03 % of base) : System.Net.Mail.dasm - System.Net.Mime.MimeBasePart:set_ContentType(System.Net.Mime.ContentType):this (FullOpts) 20 (8.62 % of base) : System.Net.Mail.dasm - System.Net.Mime.MimePart:get_TransferEncoding():int:this (FullOpts) 20 (9.85 % of base) : System.Private.Xml.dasm - System.Xml.Schema.DatatypeImplementation:GetNormalizedStringTypeV1Compat():System.Xml.Schema.XmlSchemaSimpleType (FullOpts) 20 (9.85 % of base) : System.Private.Xml.dasm - System.Xml.Schema.DatatypeImplementation:GetTokenTypeV1Compat():System.Xml.Schema.XmlSchemaSimpleType (FullOpts) 20 (3.32 % of base) : System.Private.Xml.dasm - System.Xml.Schema.FacetsChecker+FacetsCompiler:CompileTotalDigitsFacet(System.Xml.Schema.XmlSchemaFacet):this (FullOpts) 20 (5.29 % of base) : System.Private.Xml.dasm - System.Xml.Schema.XmlAnyConverter:ChangeType(System.Decimal,System.Type):System.Object:this (FullOpts) 20 (4.50 % of base) : System.Private.Xml.dasm - System.Xml.Schema.XmlSchemaValidator:.cctor() (FullOpts) 20 (2.72 % of base) : System.Private.Xml.dasm - System.Xml.Schema.XmlSchemaValidator:ValidateElement(System.String,System.String,System.Xml.Schema.XmlSchemaInfo,System.String,System.String,System.String,System.String):this (FullOpts) 19 (4.27 % of base) : System.Data.Common.dasm - System.Data.Common.DataColumnMappingCollection:Validate(int,System.Data.Common.DataColumnMapping):this (FullOpts) 19 (4.26 % of base) : System.Data.Common.dasm - System.Data.Common.DataTableMappingCollection:Validate(int,System.Data.Common.DataTableMapping):this (FullOpts) 19 (6.48 % of base) : System.Data.Common.dasm - System.Data.XMLSchema:GenUniqueColumnName(System.String,System.Data.DataTable):System.String (FullOpts) 19 (1.65 % of base) : System.Private.CoreLib.dasm - System.Runtime.Intrinsics.Vector64`1[int]:ToString(System.String,System.IFormatProvider):System.String:this (FullOpts) 19 (3.97 % of base) : System.Runtime.Serialization.Schema.dasm - System.Runtime.Serialization.CodeExporter:AddNamespaceFragment(System.Text.StringBuilder,int,int,System.Collections.Generic.Dictionary`2[System.String,System.Object]) (FullOpts) 19 (3.12 % of base) : System.Runtime.Serialization.Schema.dasm - System.Runtime.Serialization.CodeExporter:GetMemberName(System.String,System.Runtime.Serialization.ContractCodeDomInfo):System.String (FullOpts) 19 (3.36 % of base) : System.Text.Encoding.CodePages.dasm - System.Text.BaseCodePageEncoding:FindCodePage(int):ubyte:this (FullOpts) 19 (2.03 % of base) : System.Private.Xml.dasm - System.Xml.Schema.XdrBuilder:XDR_EndAttributeType(System.Xml.Schema.XdrBuilder) (FullOpts) 18 (6.64 % of base) : System.Data.Common.dasm - System.Data.Common.ADP:GenerateUniqueName(System.Collections.Generic.Dictionary`2[System.String,int],byref,int,int):int (FullOpts) 18 (2.89 % of base) : System.Data.Common.dasm - System.Data.Common.DataAdapter:FillSchemaFromReader(System.Data.DataSet,System.Data.DataTable,int,System.String,System.Data.IDataReader):System.Object:this (FullOpts) 18 (0.75 % of base) : System.Data.Common.dasm - System.Data.NewDiffgramGen:GenerateTableErrors(System.Data.DataTable):this (FullOpts) 18 (2.45 % of base) : System.IO.Packaging.dasm - System.IO.Packaging.ContentType:ToString():System.String:this (FullOpts) 18 (3.91 % of base) : System.Net.Mail.dasm - System.Net.Mail.SmtpTransport:GetConnection(System.String,int):this (FullOpts) 18 (1.53 % of base) : System.Private.CoreLib.dasm - System.Numerics.Vector`1[int]:ToString(System.String,System.IFormatProvider):System.String:this (FullOpts) 18 (1.53 % of base) : System.Private.CoreLib.dasm - System.Numerics.Vector`1[short]:ToString(System.String,System.IFormatProvider):System.String:this (FullOpts) 18 (1.53 % of base) : System.Private.CoreLib.dasm - System.Runtime.Intrinsics.Vector128`1[int]:ToString(System.String,System.IFormatProvider):System.String:this (FullOpts) 18 (1.53 % of base) : System.Private.CoreLib.dasm - System.Runtime.Intrinsics.Vector128`1[short]:ToString(System.String,System.IFormatProvider):System.String:this (FullOpts) 18 (1.53 % of base) : System.Private.CoreLib.dasm - System.Runtime.Intrinsics.Vector256`1[int]:ToString(System.String,System.IFormatProvider):System.String:this (FullOpts) 18 (1.53 % of base) : System.Private.CoreLib.dasm - System.Runtime.Intrinsics.Vector256`1[short]:ToString(System.String,System.IFormatProvider):System.String:this (FullOpts) 18 (1.53 % of base) : System.Private.CoreLib.dasm - System.Runtime.Intrinsics.Vector512`1[int]:ToString(System.String,System.IFormatProvider):System.String:this (FullOpts) 18 (1.53 % of base) : System.Private.CoreLib.dasm - System.Runtime.Intrinsics.Vector512`1[short]:ToString(System.String,System.IFormatProvider):System.String:this (FullOpts) 18 (1.53 % of base) : System.Private.CoreLib.dasm - System.Runtime.Intrinsics.Vector64`1[short]:ToString(System.String,System.IFormatProvider):System.String:this (FullOpts) 18 (3.02 % of base) : System.Runtime.Serialization.Schema.dasm - System.Runtime.Serialization.CodeExporter:GetClrNamespace(System.Runtime.Serialization.DataContracts.DataContract,System.Runtime.Serialization.ContractCodeDomInfo):System.String:this (FullOpts) 18 (1.82 % of base) : System.Runtime.Serialization.Schema.dasm - System.Runtime.Serialization.CodeExporter:GetNestedType(System.Runtime.Serialization.DataContracts.DataContract,System.Runtime.Serialization.ContractCodeDomInfo):System.CodeDom.CodeTypeDeclaration:this (FullOpts) 17 (25.00 % of base) : System.Private.CoreLib.dasm - System.Globalization.HebrewNumber:IsDigit(ushort):ubyte (FullOpts) 17 (1.79 % of base) : System.IO.Packaging.dasm - System.IO.Packaging.PartBasedPackageProperties:ValidateXsiType(System.Xml.XmlReader,System.Object,System.String) (FullOpts) 17 (1.42 % of base) : System.Net.Mail.dasm - System.Net.Mail.Message:PrepareEnvelopeHeaders(ubyte):this (FullOpts) 16 (27.59 % of base) : Microsoft.CSharp.dasm - Microsoft.CSharp.RuntimeBinder.Semantics.NamespaceSymbol:GetRootNamespaceSymbol():Microsoft.CSharp.RuntimeBinder.Semantics.NamespaceSymbol (FullOpts) 16 (1.02 % of base) : Microsoft.CSharp.dasm - Microsoft.CSharp.RuntimeBinder.Semantics.TypeBind:CheckSingleConstraint(Microsoft.CSharp.RuntimeBinder.Semantics.Symbol,Microsoft.CSharp.RuntimeBinder.Semantics.TypeParameterType,Microsoft.CSharp.RuntimeBinder.Semantics.CType,Microsoft.CSharp.RuntimeBinder.Semantics.TypeArray,Microsoft.CSharp.RuntimeBinder.Semantics.TypeArray,int):ubyte (FullOpts) 16 (12.31 % of base) : Microsoft.VisualBasic.Core.dasm - Microsoft.VisualBasic.CompilerServices.Symbols:IsNarrowingConversionOperator(System.Reflection.MethodBase):ubyte (FullOpts) 16 (8.25 % of base) : Microsoft.VisualBasic.Core.dasm - Microsoft.VisualBasic.CompilerServices.Symbols:MapToUserDefinedOperator(System.Reflection.MethodBase):byte (FullOpts) 16 (30.19 % of base) : System.Private.CoreLib.dasm - System.IO.Stream+NullStream:ReadAsync(ubyte[],int,int,System.Threading.CancellationToken):System.Threading.Tasks.Task`1[int]:this (FullOpts) 16 (2.95 % of base) : System.Private.CoreLib.dasm - System.IO.StreamReader:ReadAsync(ushort[],int,int):System.Threading.Tasks.Task`1[int]:this (FullOpts) 16 (2.61 % of base) : System.Private.CoreLib.dasm - System.IO.StreamReader:ReadBlockAsync(System.Memory`1[ushort],System.Threading.CancellationToken):System.Threading.Tasks.ValueTask`1[int]:this (FullOpts) 16 (69.57 % of base) : System.Private.CoreLib.dasm - System.IO.StreamReader+NullStreamReader:ReadAsync(ushort[],int,int):System.Threading.Tasks.Task`1[int]:this (FullOpts) 16 (69.57 % of base) : System.Private.CoreLib.dasm - System.IO.StreamReader+NullStreamReader:ReadBlockAsync(ushort[],int,int):System.Threading.Tasks.Task`1[int]:this (FullOpts) 16 (11.68 % of base) : System.Net.Mail.dasm - System.Net.Mime.ContentDisposition:PersistIfNeeded(System.Net.Mime.HeaderCollection,ubyte):this (FullOpts) 16 (11.43 % of base) : System.Net.Mail.dasm - System.Net.Mime.ContentType:PersistIfNeeded(System.Net.Mime.HeaderCollection,ubyte):this (FullOpts) 16 (33.33 % of base) : System.Net.Mail.dasm - System.Net.Mime.MimeBasePart:get_ContentID():System.String:this (FullOpts) 16 (33.33 % of base) : System.Net.Mail.dasm - System.Net.Mime.MimeBasePart:get_ContentLocation():System.String:this (FullOpts) 16 (1.06 % of base) : System.Net.Security.dasm - System.Net.Security.SslStream:AcquireServerCredentials(byref):ubyte:this (FullOpts) 16 (2.93 % of base) : System.Private.CoreLib.dasm - System.Text.TranscodingStream:BeginRead(ubyte[],int,int,System.AsyncCallback,System.Object):System.IAsyncResult:this (FullOpts) 16 (2.93 % of base) : System.Private.CoreLib.dasm - System.Text.TranscodingStream:ReadAsync(ubyte[],int,int,System.Threading.CancellationToken):System.Threading.Tasks.Task`1[int]:this (FullOpts) 16 (5.16 % of base) : System.Private.Xml.dasm - System.Xml.Schema.XmlAnyConverter:ChangeType(int,System.Type):System.Object:this (FullOpts) 16 (5.16 % of base) : System.Private.Xml.dasm - System.Xml.Schema.XmlAnyConverter:ChangeType(long,System.Type):System.Object:this (FullOpts) 16 (5.16 % of base) : System.Private.Xml.dasm - System.Xml.Schema.XmlAnyConverter:ChangeType(System.DateTime,System.Type):System.Object:this (FullOpts) 16 (5.21 % of base) : System.Private.Xml.dasm - System.Xml.Schema.XmlAnyConverter:ChangeType(ubyte,System.Type):System.Object:this (FullOpts) 16 (11.68 % of base) : System.Private.Xml.dasm - System.Xml.Schema.XmlSchemaValidator:EndValidation():this (FullOpts) 16 (14.04 % of base) : System.Private.Xml.dasm - System.Xml.Schema.XmlSchemaValidator:ValidateEndOfAttributes(System.Xml.Schema.XmlSchemaInfo):this (FullOpts) 16 (5.21 % of base) : System.Private.Xml.dasm - System.Xml.Schema.XsdBuilder:BuildSimpleTypeUnion_MemberTypes(System.Xml.Schema.XsdBuilder,System.String) (FullOpts) 16 (1.93 % of base) : System.Private.DataContractSerialization.dasm - System.Xml.XmlBaseReader:get_NameTable():System.Xml.XmlNameTable:this (FullOpts) 16 (6.25 % of base) : System.Private.Xml.dasm - System.Xml.XmlCharCheckingReader:ReadElementContentAsBase64Async(ubyte[],int,int):System.Threading.Tasks.Task`1[int]:this (FullOpts) Top method improvements (bytes): -774 (-10.79 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.DataContract+DataContractCriticalHelper:TryCreateBuiltInDataContract(System.String,System.String,byref):ubyte (FullOpts) -348 (-5.44 % of base) : System.Private.Xml.dasm - System.Xml.Serialization.XmlSerializationReaderILGen:WritePrimitive(System.Xml.Serialization.TypeMapping,System.String):this (FullOpts) -236 (-9.45 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.Xslt.QilGenerator:MatchCountPattern(System.Xml.Xsl.Qil.QilNode,System.Xml.Xsl.Qil.QilIterator):System.Xml.Xsl.Qil.QilNode:this (FullOpts) -229 (-3.13 % of base) : System.Private.Xml.dasm - System.Xml.Serialization.XmlSerializationReaderILGen:WriteElement(System.String,System.String,System.String,System.Xml.Serialization.ElementAccessor,System.Xml.Serialization.ChoiceIdentifierAccessor,System.String,ubyte,ubyte,int,int):this (FullOpts) -195 (-2.66 % of base) : System.Private.Xml.dasm - System.Xml.Serialization.XmlSerializationWriterILGen:WriteStructMethod(System.Xml.Serialization.StructMapping):this (FullOpts) -157 (-10.14 % of base) : System.Net.HttpListener.dasm - System.Net.HttpListenerResponse:SendHeaders(ubyte,System.IO.MemoryStream,ubyte):this (FullOpts) -120 (-1.90 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.Xslt.QilGenerator:PrecompileProtoTemplatesHeaders():this (FullOpts) -119 (-1.18 % of base) : System.Data.Common.dasm - System.Data.XmlTreeGen:SchemaTree(System.Xml.XmlDocument,System.Xml.XmlWriter,System.Data.DataSet,System.Data.DataTable,ubyte):this (FullOpts) -115 (-1.16 % of base) : System.Private.Xml.dasm - System.Xml.Serialization.XmlSerializationReaderILGen:WriteLiteralStructMethod(System.Xml.Serialization.StructMapping):this (FullOpts) -111 (-13.59 % of base) : System.Formats.Tar.dasm - System.Formats.Tar.TarHeader:ReadPosixAndGnuSharedAttributes(System.ReadOnlySpan`1[ubyte]):this (FullOpts) -110 (-11.89 % of base) : System.Net.Mail.dasm - System.Net.Mail.CheckCommand:BeginSend(System.Net.Mail.SmtpConnection,System.AsyncCallback,System.Object):System.IAsyncResult (FullOpts) -97 (-8.50 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.Json.JsonXmlDataContract:WriteJsonValueCore(System.Runtime.Serialization.XmlWriterDelegator,System.Object,System.Runtime.Serialization.Json.XmlObjectSerializerWriteContextComplexJson,System.RuntimeTypeHandle):this (FullOpts) -93 (-5.59 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.Xslt.QilGenerator:CreateGeneralKeyFunction():System.Xml.Xsl.Qil.QilFunction:this (FullOpts) -89 (-3.60 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.DataContract+DataContractCriticalHelper:TryCreateBuiltInDataContract(System.Type,byref):ubyte (FullOpts) -88 (-6.91 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.XmlObjectSerializerWriteContext:WriteSerializationInfo(System.Runtime.Serialization.XmlWriterDelegator,System.Type,System.Runtime.Serialization.SerializationInfo):this (FullOpts) -84 (-5.22 % of base) : System.Threading.Tasks.Dataflow.dasm - System.Threading.Tasks.Dataflow.DataflowBlock+ReceiveTarget`1[double]:CleanupAndComplete(int):this (FullOpts) -84 (-5.22 % of base) : System.Threading.Tasks.Dataflow.dasm - System.Threading.Tasks.Dataflow.DataflowBlock+ReceiveTarget`1[int]:CleanupAndComplete(int):this (FullOpts) -84 (-5.22 % of base) : System.Threading.Tasks.Dataflow.dasm - System.Threading.Tasks.Dataflow.DataflowBlock+ReceiveTarget`1[long]:CleanupAndComplete(int):this (FullOpts) -84 (-5.22 % of base) : System.Threading.Tasks.Dataflow.dasm - System.Threading.Tasks.Dataflow.DataflowBlock+ReceiveTarget`1[short]:CleanupAndComplete(int):this (FullOpts) -84 (-5.22 % of base) : System.Threading.Tasks.Dataflow.dasm - System.Threading.Tasks.Dataflow.DataflowBlock+ReceiveTarget`1[System.Nullable`1[int]]:CleanupAndComplete(int):this (FullOpts) -84 (-5.22 % of base) : System.Threading.Tasks.Dataflow.dasm - System.Threading.Tasks.Dataflow.DataflowBlock+ReceiveTarget`1[System.Numerics.Vector`1[float]]:CleanupAndComplete(int):this (FullOpts) -84 (-5.22 % of base) : System.Threading.Tasks.Dataflow.dasm - System.Threading.Tasks.Dataflow.DataflowBlock+ReceiveTarget`1[ubyte]:CleanupAndComplete(int):this (FullOpts) -81 (-5.00 % of base) : System.Threading.Tasks.Dataflow.dasm - System.Threading.Tasks.Dataflow.DataflowBlock+ReceiveTarget`1[System.__Canon]:CleanupAndComplete(int):this (FullOpts) -80 (-1.12 % of base) : System.Private.Xml.dasm - System.Xml.Schema.XdrBuilder:.cctor() (FullOpts) -74 (-1.26 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.XmlFormatReaderGenerator+CriticalHelper:ReadCollection(System.Runtime.Serialization.DataContracts.CollectionDataContract):this (FullOpts) -68 (-8.16 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.XmlObjectSerializer:WriteObject(System.IO.Stream,System.Object):this (FullOpts) -65 (-2.45 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.XPath.XPathBuilder:Function(System.String,System.String,System.Collections.Generic.IList`1[System.Xml.Xsl.Qil.QilNode]):System.Xml.Xsl.Qil.QilNode:this (FullOpts) -62 (-3.63 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.Xslt.QilGenerator:CompileFnDocument(System.Xml.Xsl.Qil.QilNode,System.Xml.Xsl.Qil.QilNode):System.Xml.Xsl.Qil.QilNode:this (FullOpts) -59 (-3.49 % of base) : System.Web.HttpUtility.dasm - System.Web.HttpUtility+HttpQSCollection:ToString():System.String:this (FullOpts) -59 (-2.75 % of base) : System.Private.Xml.dasm - System.Xml.Serialization.XmlSerializationILGen:GenerateSerializerContract(System.Xml.Serialization.XmlMapping[],System.Type[],System.String,System.String[],System.String,System.String[],System.Collections.Generic.Dictionary`2[System.String,System.String]):this (FullOpts) -54 (-1.66 % of base) : System.Net.Mail.dasm - System.Net.Mail.SmtpClient:Send(System.Net.Mail.MailMessage):this (FullOpts) -54 (-3.67 % of base) : System.Private.Xml.dasm - System.Xml.XmlDocument:.ctor(System.Xml.XmlImplementation):this (FullOpts) -54 (-2.92 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.Xslt.XsltLoader:XslChoose():System.Xml.Xsl.Xslt.XslNode:this (FullOpts) -52 (-2.58 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.Xslt.XsltLoader:LoadTemplate(System.Xml.Xsl.Xslt.NsDecl):this (FullOpts) -49 (-1.69 % of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.X509Certificates.OpenSslX509ChainProcessor:FinishRevocation(int,int,int):this (FullOpts) -47 (-2.94 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.Xslt.QilGenerator:CompileFnKey(System.Xml.Xsl.Qil.QilNode,System.Xml.Xsl.Qil.QilNode,System.Xml.Xsl.XPath.IFocus):System.Xml.Xsl.Qil.QilNode:this (FullOpts) -45 (-0.48 % of base) : System.Data.Common.dasm - System.Data.Common.SqlConvert:ChangeTypeForXML(System.Object,System.Type):System.Object (FullOpts) -45 (-1.22 % of base) : System.Net.WebSockets.dasm - System.Net.WebSockets.ManagedWebSocket+d__63:MoveNext():this (FullOpts) -39 (-5.42 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.Json.DataContractJsonSerializer:WriteObject(System.IO.Stream,System.Object):this (FullOpts) -39 (-3.10 % of base) : System.Private.Xml.dasm - System.Xml.Serialization.XmlSerializationILGen:GenerateBaseSerializer(System.String,System.String,System.String,System.Xml.Serialization.CodeIdentifiers):System.String:this (FullOpts) -35 (-1.61 % of base) : System.DirectoryServices.Protocols.dasm - System.DirectoryServices.Protocols.LdapSessionOptions:ProcessNotifyConnection(long,long,long,long,long,int,ulong,ulong,int):int:this (FullOpts) -34 (-1.55 % of base) : System.Net.Mail.dasm - System.Net.Mail.Message:PrepareHeaders(ubyte):this (FullOpts) -33 (-6.09 % of base) : System.Private.CoreLib.dasm - System.Diagnostics.Tracing.EventSource:DefineEventPipeEvents():this (FullOpts) -32 (-2.20 % of base) : Microsoft.VisualBasic.Core.dasm - Microsoft.VisualBasic.CompilerServices.OverloadResolution:MatchArguments(Microsoft.VisualBasic.CompilerServices.Symbols+Method,System.Object[],System.Object[]) (FullOpts) -31 (-3.29 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.XmlObjectSerializerWriteContext:OnHandleIsReference(System.Runtime.Serialization.XmlWriterDelegator,System.Runtime.Serialization.DataContracts.DataContract,System.Object):ubyte:this (FullOpts) -31 (-0.89 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.IlGen.XmlILVisitor:HandleFilterPatterns(System.Xml.Xsl.Qil.QilLoop):ubyte:this (FullOpts) -30 (-3.67 % of base) : System.Private.DataContractSerialization.dasm - System.Xml.XmlCanonicalWriter:SetOutput(System.IO.Stream,ubyte,System.String[]):this (FullOpts) -30 (-0.93 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.Xslt.QilGenerator:InvokeApplyFunction(System.Xml.Xsl.Xslt.StylesheetLevel,System.Xml.Xsl.Qil.QilName,System.Collections.Generic.IList`1[System.Xml.Xsl.Xslt.XslNode]):System.Xml.Xsl.Qil.QilNode:this (FullOpts) -29 (-0.33 % of base) : System.Net.WebSockets.dasm - System.Net.WebSockets.ManagedWebSocket+d__61`1[double]:MoveNext():this (FullOpts) -29 (-0.33 % of base) : System.Net.WebSockets.dasm - System.Net.WebSockets.ManagedWebSocket+d__61`1[int]:MoveNext():this (FullOpts) -29 (-0.33 % of base) : System.Net.WebSockets.dasm - System.Net.WebSockets.ManagedWebSocket+d__61`1[long]:MoveNext():this (FullOpts) -29 (-0.33 % of base) : System.Net.WebSockets.dasm - System.Net.WebSockets.ManagedWebSocket+d__61`1[short]:MoveNext():this (FullOpts) -29 (-0.32 % of base) : System.Net.WebSockets.dasm - System.Net.WebSockets.ManagedWebSocket+d__61`1[System.Numerics.Vector`1[float]]:MoveNext():this (FullOpts) -29 (-0.33 % of base) : System.Net.WebSockets.dasm - System.Net.WebSockets.ManagedWebSocket+d__61`1[ubyte]:MoveNext():this (FullOpts) -29 (-1.96 % of base) : System.Private.Xml.dasm - System.Xml.Serialization.XmlSerializationReaderILGen:GenerateTypeElement(System.Xml.Serialization.XmlTypeMapping):System.String:this (FullOpts) -29 (-9.57 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.IlGen.XmlILModule:CreateLREModule():System.Reflection.Emit.ModuleBuilder (FullOpts) -28 (-1.63 % of base) : System.ComponentModel.Composition.dasm - System.ComponentModel.Composition.AttributedModel.AttributedModelDiscovery:CreateMemberImportDefinition(System.Reflection.MemberInfo,System.ComponentModel.Composition.Primitives.ICompositionElement):System.ComponentModel.Composition.ReflectionModel.ReflectionMemberImportDefinition (FullOpts) -28 (-4.27 % of base) : System.Formats.Cbor.dasm - System.Formats.Cbor.CborReader:ReadDateTimeOffset():System.DateTimeOffset:this (FullOpts) -28 (-7.00 % of base) : System.Net.Mail.dasm - System.Net.Mail.SmtpConnection+ConnectAndHandshakeAsyncResult:AuthenticateContinue():ubyte:this (FullOpts) -28 (-1.28 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.Xslt.QilGenerator:CompileKeys():this (FullOpts) -27 (-1.60 % of base) : System.DirectoryServices.Protocols.dasm - System.DirectoryServices.Protocols.DirectoryAttribute:GetValues(System.Type):System.Object[]:this (FullOpts) -26 (-0.80 % of base) : Microsoft.CSharp.dasm - Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder:AdjustCallArgumentsForParams(Microsoft.CSharp.RuntimeBinder.Semantics.CType,Microsoft.CSharp.RuntimeBinder.Semantics.CType,Microsoft.CSharp.RuntimeBinder.Semantics.MethodOrPropertySymbol,Microsoft.CSharp.RuntimeBinder.Semantics.TypeArray,Microsoft.CSharp.RuntimeBinder.Semantics.Expr,byref):this (FullOpts) -26 (-1.82 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.Xslt.QilGenerator:CompileCopyOf(System.Xml.Xsl.Xslt.XslNode):System.Xml.Xsl.Qil.QilNode:this (FullOpts) -26 (-3.69 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.XsltOld.MessageAction:Execute(System.Xml.Xsl.XsltOld.Processor,System.Xml.Xsl.XsltOld.ActionFrame):this (FullOpts) -25 (-1.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) -24 (-2.73 % of base) : System.Net.WebClient.dasm - System.Net.WebClient:GetValuesToUpload(System.Collections.Specialized.NameValueCollection):ubyte[]:this (FullOpts) -24 (-1.91 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.IlGen.XmlILModule:DefineMethod(System.String,System.Type,System.Type[],System.String[],int):System.Reflection.MethodInfo:this (FullOpts) -24 (-5.53 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.XmlQueryTypeFactory+ItemType:Create(int,System.Xml.Xsl.XmlQualifiedNameTest,System.Xml.Schema.XmlSchemaType,ubyte):System.Xml.Xsl.XmlQueryType (FullOpts) -24 (-1.58 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.Xslt.MatcherBuilder:BuildMatcher(System.Xml.Xsl.Qil.QilIterator,System.Collections.Generic.IList`1[System.Xml.Xsl.Xslt.XslNode],System.Xml.Xsl.Qil.QilNode):System.Xml.Xsl.Qil.QilNode:this (FullOpts) -23 (-5.09 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.XmlObjectSerializerWriteContext:WriteExtensionISerializableData(System.Runtime.Serialization.XmlWriterDelegator,System.Runtime.Serialization.ISerializableDataNode):this (FullOpts) -23 (-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) -23 (-3.41 % of base) : System.Private.Xml.dasm - System.Xml.Serialization.XmlCustomFormatter:ToTime(System.String):System.DateTime (FullOpts) -22 (-3.99 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.Json.JsonReaderWriterFactory:CreateJsonWriter(System.IO.Stream):System.Xml.XmlDictionaryWriter (FullOpts) -21 (-6.75 % of base) : System.Security.Cryptography.Xml.dasm - System.Security.Cryptography.Xml.SignedXmlDebugLog:LogBeginCanonicalization(System.Security.Cryptography.Xml.SignedXml,System.Security.Cryptography.Xml.Transform) (FullOpts) -21 (-3.80 % of base) : System.Private.Xml.Linq.dasm - System.Xml.Linq.XAttribute:ToString():System.String:this (FullOpts) -21 (-1.54 % of base) : System.Private.Xml.dasm - System.Xml.Serialization.XmlSerializationILGen:GenerateGetSerializer(System.Collections.Generic.Dictionary`2[System.String,System.String],System.Xml.Serialization.XmlMapping[],System.Reflection.Emit.TypeBuilder):this (FullOpts) -20 (-7.12 % of base) : System.Web.HttpUtility.dasm - System.Web.Util.HttpEncoder:HtmlAttributeEncode(System.String):System.String (FullOpts) -20 (-1.89 % of base) : System.Private.Xml.dasm - System.Xml.XPath.XPathNavigator:get_OuterXml():System.String:this (FullOpts) -20 (-2.30 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.XPath.XPathQilFactory:InvokeEqualityOperator(int,System.Xml.Xsl.Qil.QilNode,System.Xml.Xsl.Qil.QilNode):System.Xml.Xsl.Qil.QilNode:this (FullOpts) -20 (-2.15 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.XPath.XPathQilFactory:InvokeRelationalOperator(int,System.Xml.Xsl.Qil.QilNode,System.Xml.Xsl.Qil.QilNode):System.Xml.Xsl.Qil.QilNode:this (FullOpts) -19 (-3.78 % of base) : System.ComponentModel.Composition.dasm - System.ComponentModel.Composition.ConstraintServices:CreateMetadataOfTypeExpression(System.Linq.Expressions.ParameterExpression,System.String,System.Type):System.Linq.Expressions.MethodCallExpression (FullOpts) -19 (-4.39 % of base) : System.ComponentModel.Composition.dasm - System.ComponentModel.Composition.ConstraintServices:CreateMetadataValueEqualsExpression(System.Linq.Expressions.ParameterExpression,System.Object,System.String):System.Linq.Expressions.MethodCallExpression (FullOpts) -19 (-2.73 % of base) : System.ComponentModel.Composition.dasm - System.ComponentModel.Composition.ConstraintServices:CreatePartCreatorConstraint(System.Linq.Expressions.Expression`1[System.Func`2[System.ComponentModel.Composition.Primitives.ExportDefinition,ubyte]],System.ComponentModel.Composition.Primitives.ImportDefinition):System.Linq.Expressions.Expression`1[System.Func`2[System.ComponentModel.Composition.Primitives.ExportDefinition,ubyte]] (FullOpts) -19 (-10.00 % of base) : System.Private.CoreLib.dasm - System.Reflection.Emit.CustomAttributeBuilder:.ctor(System.Reflection.ConstructorInfo,System.Object[]):this (FullOpts) -19 (-2.70 % of base) : System.Runtime.InteropServices.dasm - System.Runtime.InteropServices.Marshalling.ComImportInteropInterfaceDetailsStrategy:EmitIgnoresAccessChecksToAttribute(System.Reflection.Emit.ModuleBuilder):System.Type (FullOpts) -19 (-4.25 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.Json.XmlJsonWriter:SetOutput(System.IO.Stream,System.Text.Encoding,ubyte):this (FullOpts) -19 (-1.26 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.ReflectionReader:GetCollectionSetItemDelegate[double](System.Runtime.Serialization.DataContracts.CollectionDataContract,System.Object,ubyte):System.Runtime.Serialization.ReflectionReader+CollectionSetItemDelegate (FullOpts) -19 (-1.26 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.ReflectionReader:GetCollectionSetItemDelegate[int](System.Runtime.Serialization.DataContracts.CollectionDataContract,System.Object,ubyte):System.Runtime.Serialization.ReflectionReader+CollectionSetItemDelegate (FullOpts) -19 (-1.26 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.ReflectionReader:GetCollectionSetItemDelegate[long](System.Runtime.Serialization.DataContracts.CollectionDataContract,System.Object,ubyte):System.Runtime.Serialization.ReflectionReader+CollectionSetItemDelegate (FullOpts) -19 (-1.26 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.ReflectionReader:GetCollectionSetItemDelegate[short](System.Runtime.Serialization.DataContracts.CollectionDataContract,System.Object,ubyte):System.Runtime.Serialization.ReflectionReader+CollectionSetItemDelegate (FullOpts) -19 (-1.26 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.ReflectionReader:GetCollectionSetItemDelegate[System.Nullable`1[int]](System.Runtime.Serialization.DataContracts.CollectionDataContract,System.Object,ubyte):System.Runtime.Serialization.ReflectionReader+CollectionSetItemDelegate (FullOpts) -19 (-1.26 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.ReflectionReader:GetCollectionSetItemDelegate[System.Numerics.Vector`1[float]](System.Runtime.Serialization.DataContracts.CollectionDataContract,System.Object,ubyte):System.Runtime.Serialization.ReflectionReader+CollectionSetItemDelegate (FullOpts) -19 (-1.26 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.ReflectionReader:GetCollectionSetItemDelegate[ubyte](System.Runtime.Serialization.DataContracts.CollectionDataContract,System.Object,ubyte):System.Runtime.Serialization.ReflectionReader+CollectionSetItemDelegate (FullOpts) -19 (-4.44 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.Runtime.XmlQueryRuntime:DebugSetGlobalValue(System.String,System.Object):this (FullOpts) -19 (-4.86 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.Xslt.XsltLoader:LoadSimplifiedStylesheet():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) Top method regressions (percentages): 16 (69.57 % of base) : System.Private.CoreLib.dasm - System.IO.StreamReader+NullStreamReader:ReadAsync(ushort[],int,int):System.Threading.Tasks.Task`1[int]:this (FullOpts) 16 (69.57 % of base) : System.Private.CoreLib.dasm - System.IO.StreamReader+NullStreamReader:ReadBlockAsync(ushort[],int,int):System.Threading.Tasks.Task`1[int]:this (FullOpts) 16 (33.33 % of base) : System.Net.Mail.dasm - System.Net.Mime.MimeBasePart:get_ContentID():System.String:this (FullOpts) 16 (33.33 % of base) : System.Net.Mail.dasm - System.Net.Mime.MimeBasePart:get_ContentLocation():System.String:this (FullOpts) 16 (30.19 % of base) : System.Private.CoreLib.dasm - System.IO.Stream+NullStream:ReadAsync(ubyte[],int,int,System.Threading.CancellationToken):System.Threading.Tasks.Task`1[int]:this (FullOpts) 16 (27.59 % of base) : Microsoft.CSharp.dasm - Microsoft.CSharp.RuntimeBinder.Semantics.NamespaceSymbol:GetRootNamespaceSymbol():Microsoft.CSharp.RuntimeBinder.Semantics.NamespaceSymbol (FullOpts) 17 (25.00 % of base) : System.Private.CoreLib.dasm - System.Globalization.HebrewNumber:IsDigit(ushort):ubyte (FullOpts) 25 (21.74 % of base) : System.Private.Xml.dasm - System.Xml.Schema.XsdValidator:.cctor() (FullOpts) 23 (18.70 % of base) : System.Net.Mail.dasm - System.Net.Mime.MimeBasePart:set_ContentID(System.String):this (FullOpts) 23 (18.70 % of base) : System.Net.Mail.dasm - System.Net.Mime.MimeBasePart:set_ContentLocation(System.String):this (FullOpts) 62 (15.16 % of base) : System.Net.Mail.dasm - System.Net.Mime.MimePart:set_TransferEncoding(int):this (FullOpts) 16 (14.04 % of base) : System.Private.Xml.dasm - System.Xml.Schema.XmlSchemaValidator:ValidateEndOfAttributes(System.Xml.Schema.XmlSchemaInfo):this (FullOpts) 20 (13.42 % of base) : Microsoft.CSharp.dasm - Microsoft.CSharp.RuntimeBinder.Errors.UserStringBuilder:ErrAppendName(Microsoft.CSharp.RuntimeBinder.Syntax.Name):this (FullOpts) 417 (13.20 % of base) : System.Net.WebSockets.dasm - System.Net.WebSockets.ManagedWebSocket+d__69:MoveNext():this (FullOpts) 16 (12.31 % of base) : Microsoft.VisualBasic.Core.dasm - Microsoft.VisualBasic.CompilerServices.Symbols:IsNarrowingConversionOperator(System.Reflection.MethodBase):ubyte (FullOpts) 16 (11.68 % of base) : System.Net.Mail.dasm - System.Net.Mime.ContentDisposition:PersistIfNeeded(System.Net.Mime.HeaderCollection,ubyte):this (FullOpts) 16 (11.68 % of base) : System.Private.Xml.dasm - System.Xml.Schema.XmlSchemaValidator:EndValidation():this (FullOpts) 16 (11.43 % of base) : System.Net.Mail.dasm - System.Net.Mime.ContentType:PersistIfNeeded(System.Net.Mime.HeaderCollection,ubyte):this (FullOpts) 10 (10.64 % of base) : System.Private.Xml.dasm - MS.Internal.Xml.XPath.XPathParser:GetAxis():int:this (FullOpts) 20 (9.85 % of base) : System.Private.Xml.dasm - System.Xml.Schema.DatatypeImplementation:GetNormalizedStringTypeV1Compat():System.Xml.Schema.XmlSchemaSimpleType (FullOpts) 20 (9.85 % of base) : System.Private.Xml.dasm - System.Xml.Schema.DatatypeImplementation:GetTokenTypeV1Compat():System.Xml.Schema.XmlSchemaSimpleType (FullOpts) 30 (9.17 % of base) : System.Net.Mail.dasm - System.Net.Mime.MimePart:set_ContentDisposition(System.Net.Mime.ContentDisposition):this (FullOpts) 12 (9.09 % of base) : System.Private.CoreLib.dasm - System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[int]:SetResult(int):this (FullOpts) 30 (9.09 % of base) : System.Private.Xml.dasm - System.Xml.Schema.XmlSchemaValidator:SkipToEndElement(System.Xml.Schema.XmlSchemaInfo):this (FullOpts) 62 (8.76 % of base) : System.Private.Xml.dasm - System.Xml.Schema.XmlSchemaValidator:BuildXsiAttributes() (FullOpts) 20 (8.62 % of base) : System.Net.Mail.dasm - System.Net.Mime.MimePart:get_TransferEncoding():int:this (FullOpts) 12 (8.28 % of base) : System.Private.CoreLib.dasm - System.Threading.Tasks.ValueTask`1[int]:AsTask():System.Threading.Tasks.Task`1[int]:this (FullOpts) 16 (8.25 % of base) : Microsoft.VisualBasic.Core.dasm - Microsoft.VisualBasic.CompilerServices.Symbols:MapToUserDefinedOperator(System.Reflection.MethodBase):byte (FullOpts) 20 (8.03 % of base) : System.Net.Mail.dasm - System.Net.Mime.MimeBasePart:set_ContentType(System.Net.Mime.ContentType):this (FullOpts) 27 (7.85 % of base) : System.Private.Xml.dasm - System.Xml.Schema.XmlAnyConverter:ChangeType(System.String,System.Type,System.Xml.IXmlNamespaceResolver):System.Object:this (FullOpts) 37 (7.74 % of base) : System.Net.Mail.dasm - System.Net.Mime.MimeBasePart:get_Headers():System.Collections.Specialized.NameValueCollection:this (FullOpts) 20 (7.69 % of base) : System.Net.Mail.dasm - System.Net.Mail.AttachmentBase:set_ContentId(System.String):this (FullOpts) 14 (7.18 % of base) : System.Data.Common.dasm - System.Data.ColumnTypeConverter:ConvertFrom(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object):System.Object:this (FullOpts) 75 (7.11 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.Runtime.XsltFunctions:SystemProperty(System.Xml.XmlQualifiedName):System.Xml.XPath.XPathItem (FullOpts) 18 (6.64 % of base) : System.Data.Common.dasm - System.Data.Common.ADP:GenerateUniqueName(System.Collections.Generic.Dictionary`2[System.String,int],byref,int,int):int (FullOpts) 19 (6.48 % of base) : System.Data.Common.dasm - System.Data.XMLSchema:GenUniqueColumnName(System.String,System.Data.DataTable):System.String (FullOpts) 281 (6.37 % of base) : System.Private.Xml.dasm - System.Xml.Schema.XmlAnyConverter:ChangeType(System.Object,System.Type,System.Xml.IXmlNamespaceResolver):System.Object:this (FullOpts) 16 (6.25 % of base) : System.Private.Xml.dasm - System.Xml.XmlCharCheckingReader:ReadElementContentAsBase64Async(ubyte[],int,int):System.Threading.Tasks.Task`1[int]:this (FullOpts) 16 (6.25 % of base) : System.Private.Xml.dasm - System.Xml.XmlCharCheckingReader:ReadElementContentAsBinHexAsync(ubyte[],int,int):System.Threading.Tasks.Task`1[int]:this (FullOpts) 8 (6.02 % of base) : System.Private.CoreLib.dasm - System.Globalization.TextInfo:ToUpperOrdinal(ushort):ushort (FullOpts) 8 (5.76 % of base) : System.Private.CoreLib.dasm - System.Globalization.OrdinalCasing:ToUpper(ushort):ushort (FullOpts) 14 (5.67 % of base) : System.Text.RegularExpressions.dasm - System.Text.RegularExpressions.Regex:GetGroupNames():System.String[]:this (FullOpts) 28 (5.42 % of base) : System.Net.Mail.dasm - System.Net.Mime.MimeBasePart:PrepareHeaders(ubyte):this (FullOpts) 7 (5.38 % of base) : Microsoft.CSharp.dasm - Microsoft.CSharp.RuntimeBinder.Semantics.TypeTable:InsertAggregate(Microsoft.CSharp.RuntimeBinder.Semantics.AggregateSymbol,Microsoft.CSharp.RuntimeBinder.Semantics.AggregateType,Microsoft.CSharp.RuntimeBinder.Semantics.TypeArray,Microsoft.CSharp.RuntimeBinder.Semantics.AggregateType) (FullOpts) 14 (5.36 % of base) : System.Private.CoreLib.dasm - System.Text.StringBuilder:AppendJoinCore[ubyte](byref,int,System.ReadOnlySpan`1[ubyte]):System.Text.StringBuilder:this (FullOpts) 21 (5.33 % of base) : System.Private.CoreLib.dasm - System.Globalization.UmAlQuraCalendar:ConvertHijriToGregorian(int,int,int,byref,byref,byref) (FullOpts) 20 (5.29 % of base) : System.Private.Xml.dasm - System.Xml.Schema.XmlAnyConverter:ChangeType(System.Decimal,System.Type):System.Object:this (FullOpts) 16 (5.21 % of base) : System.Private.Xml.dasm - System.Xml.Schema.XmlAnyConverter:ChangeType(ubyte,System.Type):System.Object:this (FullOpts) 16 (5.21 % of base) : System.Private.Xml.dasm - System.Xml.Schema.XsdBuilder:BuildSimpleTypeUnion_MemberTypes(System.Xml.Schema.XsdBuilder,System.String) (FullOpts) 16 (5.16 % of base) : System.Private.Xml.dasm - System.Xml.Schema.XmlAnyConverter:ChangeType(int,System.Type):System.Object:this (FullOpts) 16 (5.16 % of base) : System.Private.Xml.dasm - System.Xml.Schema.XmlAnyConverter:ChangeType(long,System.Type):System.Object:this (FullOpts) 16 (5.16 % of base) : System.Private.Xml.dasm - System.Xml.Schema.XmlAnyConverter:ChangeType(System.DateTime,System.Type):System.Object:this (FullOpts) 76 (4.99 % of base) : Microsoft.CSharp.dasm - Microsoft.CSharp.RuntimeBinder.Errors.UserStringBuilder:ErrAppendSym(Microsoft.CSharp.RuntimeBinder.Semantics.Symbol,Microsoft.CSharp.RuntimeBinder.Semantics.SubstContext,ubyte):this (FullOpts) 12 (4.82 % of base) : System.Net.Sockets.dasm - System.Net.Sockets.TcpListener:.ctor(System.Net.IPEndPoint):this (FullOpts) 12 (4.63 % of base) : System.Private.CoreLib.dasm - System.IO.Strategies.OSFileStreamStrategy:ReadAsync(ubyte[],int,int,System.Threading.CancellationToken):System.Threading.Tasks.Task`1[int]:this (FullOpts) 12 (4.62 % of base) : System.Private.CoreLib.dasm - System.IO.StringReader:ReadAsync(ushort[],int,int):System.Threading.Tasks.Task`1[int]:this (FullOpts) 12 (4.62 % of base) : System.Private.CoreLib.dasm - System.IO.StringReader:ReadBlockAsync(ushort[],int,int):System.Threading.Tasks.Task`1[int]:this (FullOpts) 20 (4.50 % of base) : System.Private.Xml.dasm - System.Xml.Schema.XmlSchemaValidator:.cctor() (FullOpts) 19 (4.27 % of base) : System.Data.Common.dasm - System.Data.Common.DataColumnMappingCollection:Validate(int,System.Data.Common.DataColumnMapping):this (FullOpts) 19 (4.26 % of base) : System.Data.Common.dasm - System.Data.Common.DataTableMappingCollection:Validate(int,System.Data.Common.DataTableMapping):this (FullOpts) 15 (4.23 % of base) : System.Text.Encoding.CodePages.dasm - System.Text.BaseCodePageEncoding:GetCodePageByteSize(int):int (FullOpts) 15 (4.01 % of base) : System.Private.Xml.dasm - System.Xml.XmlSubtreeReader:ReadValueChunkAsync(ushort[],int,int):System.Threading.Tasks.Task`1[int]:this (FullOpts) 19 (3.97 % of base) : System.Runtime.Serialization.Schema.dasm - System.Runtime.Serialization.CodeExporter:AddNamespaceFragment(System.Text.StringBuilder,int,int,System.Collections.Generic.Dictionary`2[System.String,System.Object]) (FullOpts) 20 (3.96 % of base) : System.Private.CoreLib.dasm - System.Globalization.OrdinalCasing:ToUpperOrdinal(System.ReadOnlySpan`1[ushort],System.Span`1[ushort]) (FullOpts) 12 (3.92 % of base) : System.Net.Sockets.dasm - System.Net.Sockets.SocketPal:Accept(System.Net.Sockets.SafeSocketHandle,System.Memory`1[ubyte],byref,byref):int (FullOpts) 18 (3.91 % of base) : System.Net.Mail.dasm - System.Net.Mail.SmtpTransport:GetConnection(System.String,int):this (FullOpts) 5 (3.82 % of base) : Microsoft.CSharp.dasm - Microsoft.CSharp.RuntimeBinder.Semantics.TypeTable:LookupAggregate(Microsoft.CSharp.RuntimeBinder.Semantics.AggregateSymbol,Microsoft.CSharp.RuntimeBinder.Semantics.AggregateType,Microsoft.CSharp.RuntimeBinder.Semantics.TypeArray):Microsoft.CSharp.RuntimeBinder.Semantics.AggregateType (FullOpts) 12 (3.74 % of base) : System.Private.Xml.dasm - System.Xml.Schema.XmlAnyConverter:ChangeType(double,System.Type):System.Object:this (FullOpts) 27 (3.60 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.Json.XmlJsonWriter:WriteEscapedJsonString(System.String):this (FullOpts) 26 (3.55 % of base) : System.Private.CoreLib.dasm - System.IO.Strategies.BufferedFileStreamStrategy:ReadAsync(ubyte[],int,int,System.Threading.CancellationToken):System.Threading.Tasks.Task`1[int]:this (FullOpts) 12 (3.46 % of base) : System.Net.Mail.dasm - System.Net.Mail.MailMessage:.ctor(System.String,System.String):this (FullOpts) 11 (3.44 % of base) : System.Net.Security.dasm - System.Net.Security.SslStream:Decrypt(System.Span`1[ubyte],byref,byref):System.Net.SecurityStatusPal:this (FullOpts) 12 (3.36 % of base) : System.Private.CoreLib.dasm - System.IO.Strategies.OSFileStreamStrategy:BeginRead(ubyte[],int,int,System.AsyncCallback,System.Object):System.IAsyncResult:this (FullOpts) 19 (3.36 % of base) : System.Text.Encoding.CodePages.dasm - System.Text.BaseCodePageEncoding:FindCodePage(int):ubyte:this (FullOpts) 20 (3.32 % of base) : System.Private.Xml.dasm - System.Xml.Schema.FacetsChecker+FacetsCompiler:CompileTotalDigitsFacet(System.Xml.Schema.XmlSchemaFacet):this (FullOpts) 16 (3.30 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.XmlQueryType:ItemTypeToString(ubyte):System.String:this (FullOpts) 12 (3.18 % of base) : System.Private.CoreLib.dasm - System.IO.TextReader+SyncTextReader:ReadAsync(ushort[],int,int):System.Threading.Tasks.Task`1[int]:this (FullOpts) 12 (3.18 % of base) : System.Private.CoreLib.dasm - System.IO.TextReader+SyncTextReader:ReadBlockAsync(ushort[],int,int):System.Threading.Tasks.Task`1[int]:this (FullOpts) 33 (3.15 % of base) : System.Private.CoreLib.dasm - System.IO.BufferedStream:ReadAsync(ubyte[],int,int,System.Threading.CancellationToken):System.Threading.Tasks.Task`1[int]:this (FullOpts) 30 (3.13 % of base) : System.Private.Xml.dasm - System.Xml.Schema.XmlSchemaValidator:InternalValidateEndElement(System.Xml.Schema.XmlSchemaInfo,System.Object):System.Object:this (FullOpts) 19 (3.12 % of base) : System.Runtime.Serialization.Schema.dasm - System.Runtime.Serialization.CodeExporter:GetMemberName(System.String,System.Runtime.Serialization.ContractCodeDomInfo):System.String (FullOpts) 12 (3.07 % of base) : System.Net.Sockets.dasm - System.Net.Sockets.TcpListener:.ctor(System.Net.IPAddress,int):this (FullOpts) 8 (3.07 % of base) : System.IO.Packaging.dasm - System.IO.Packaging.ContentType:ValidateCarriageReturns(System.String) (FullOpts) 12 (3.04 % of base) : System.Private.CoreLib.dasm - System.IO.TextReader:ReadAsync(ushort[],int,int):System.Threading.Tasks.Task`1[int]:this (FullOpts) 12 (3.03 % of base) : System.Private.CoreLib.dasm - System.IO.TextReader:ReadBlockAsync(ushort[],int,int):System.Threading.Tasks.Task`1[int]:this (FullOpts) 18 (3.02 % of base) : System.Runtime.Serialization.Schema.dasm - System.Runtime.Serialization.CodeExporter:GetClrNamespace(System.Runtime.Serialization.DataContracts.DataContract,System.Runtime.Serialization.ContractCodeDomInfo):System.String:this (FullOpts) 13 (2.97 % of base) : System.Private.CoreLib.dasm - System.Text.StringBuilder:AppendJoinCore[ubyte](byref,int,System.Collections.Generic.IEnumerable`1[ubyte]):System.Text.StringBuilder:this (FullOpts) 16 (2.95 % of base) : System.Private.CoreLib.dasm - System.IO.StreamReader:ReadAsync(ushort[],int,int):System.Threading.Tasks.Task`1[int]:this (FullOpts) 16 (2.93 % of base) : System.Private.CoreLib.dasm - System.Text.TranscodingStream:ReadAsync(ubyte[],int,int,System.Threading.CancellationToken):System.Threading.Tasks.Task`1[int]:this (FullOpts) 16 (2.93 % of base) : System.Private.CoreLib.dasm - System.Text.TranscodingStream:BeginRead(ubyte[],int,int,System.AsyncCallback,System.Object):System.IAsyncResult:this (FullOpts) 18 (2.89 % of base) : System.Data.Common.dasm - System.Data.Common.DataAdapter:FillSchemaFromReader(System.Data.DataSet,System.Data.DataTable,int,System.String,System.Data.IDataReader):System.Object:this (FullOpts) 24 (2.88 % of base) : System.Private.CoreLib.dasm - System.Globalization.OrdinalCasing:CompareStringIgnoreCase(byref,int,byref,int):int (FullOpts) 15 (2.86 % of base) : System.Private.Xml.dasm - System.Xml.Schema.XdrBuilder:.ctor(System.Xml.XmlReader,System.Xml.XmlNamespaceManager,System.Xml.Schema.SchemaInfo,System.String,System.Xml.XmlNameTable,System.Xml.Schema.SchemaNames,System.Xml.Schema.ValidationEventHandler):this (FullOpts) 42 (2.76 % of base) : System.DirectoryServices.Protocols.dasm - System.DirectoryServices.Protocols.LdapSessionOptions:ProcessQueryConnection(long,long,long,long,int,ulong,ulong,ulong):int:this (FullOpts) 24 (2.76 % of base) : System.Private.CoreLib.dasm - System.Globalization.OrdinalCasing:LastIndexOf(System.ReadOnlySpan`1[ushort],System.ReadOnlySpan`1[ushort]):int (FullOpts) 10 (2.75 % of base) : System.Private.DataContractSerialization.dasm - System.Xml.XmlBaseWriter+NamespaceManager:AddNamespace(System.String,System.Xml.XmlDictionaryString):System.String:this (FullOpts) 20 (2.72 % of base) : System.Private.Xml.dasm - System.Xml.Schema.XmlSchemaValidator:ValidateElement(System.String,System.String,System.Xml.Schema.XmlSchemaInfo,System.String,System.String,System.String,System.String):this (FullOpts) 12 (2.71 % of base) : System.Net.Http.dasm - System.Net.Http.Headers.HttpHeaders:ReadStoreValues[ubyte](System.Span`1[System.String],System.Object,System.Net.Http.Headers.HttpHeaderParser,byref) (FullOpts) 6 (2.70 % of base) : Microsoft.Extensions.Logging.Abstractions.dasm - Microsoft.Extensions.Logging.LogValuesFormatter:Format[int](int):System.String:this (FullOpts) 6 (2.67 % of base) : Microsoft.Extensions.Logging.Abstractions.dasm - Microsoft.Extensions.Logging.LogValuesFormatter:Format[long](long):System.String:this (FullOpts) Top method improvements (percentages): -12 (-21.43 % of base) : System.Net.Mail.dasm - System.Net.Mime.ContentDisposition:GetHashCode():int:this (FullOpts) -12 (-21.43 % of base) : System.Net.Mail.dasm - System.Net.Mime.ContentType:GetHashCode():int:this (FullOpts) -17 (-20.48 % of base) : Microsoft.Extensions.DependencyModel.dasm - Microsoft.Extensions.DependencyModel.Resolution.DotNetReferenceAssembliesPathResolver:Resolve():System.String (FullOpts) -12 (-18.18 % of base) : System.ComponentModel.TypeConverter.dasm - System.ComponentModel.WeakHashtable:.ctor():this (FullOpts) -12 (-17.39 % of base) : System.Net.Sockets.dasm - System.Net.NetEventSource:ConnectedAsyncDns(System.Net.Sockets.Socket) (FullOpts) -14 (-16.87 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.Json.XmlJsonWriter+JsonNodeWriter:.ctor():this (FullOpts) -14 (-16.87 % of base) : System.Private.DataContractSerialization.dasm - System.Xml.XmlUTF8NodeWriter:.ctor():this (FullOpts) -9 (-16.36 % of base) : System.Private.CoreLib.dasm - System.Enum:InternalGetUnderlyingType(System.RuntimeType):System.RuntimeType (FullOpts) -13 (-15.85 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.XmlQueryTypeFactory+SequenceType:.cctor() (FullOpts) -9 (-15.52 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.XmlQueryType:get_IsNode():ubyte:this (FullOpts) -9 (-14.52 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.XmlQueryType:get_IsAtomicValue():ubyte:this (FullOpts) -12 (-14.46 % of base) : System.ComponentModel.TypeConverter.dasm - System.ComponentModel.TypeDescriptor+<>c:b__27_0():System.ComponentModel.WeakHashtable:this (FullOpts) -111 (-13.59 % of base) : System.Formats.Tar.dasm - System.Formats.Tar.TarHeader:ReadPosixAndGnuSharedAttributes(System.ReadOnlySpan`1[ubyte]):this (FullOpts) -18 (-12.86 % of base) : System.Net.WebClient.dasm - System.Net.WebClient:UrlEncode(System.String):System.String (FullOpts) -18 (-12.86 % of base) : System.Security.Cryptography.Xml.dasm - System.Security.Cryptography.Xml.SignedXmlDebugLog:LogVerificationFailure(System.Security.Cryptography.Xml.SignedXml,System.String) (FullOpts) -18 (-12.86 % of base) : System.Web.HttpUtility.dasm - System.Web.HttpUtility:UrlEncode(System.String):System.String (FullOpts) -110 (-11.89 % of base) : System.Net.Mail.dasm - System.Net.Mail.CheckCommand:BeginSend(System.Net.Mail.SmtpConnection,System.AsyncCallback,System.Object):System.IAsyncResult (FullOpts) -18 (-11.69 % of base) : System.Text.Json.dasm - System.Text.Json.Schema.JsonSchema:EnsureMutable(byref) (FullOpts) -12 (-11.54 % of base) : System.Net.Http.dasm - System.Net.NetEventSource:ContentNull(System.Object) (FullOpts) -12 (-11.01 % of base) : System.ComponentModel.Composition.dasm - System.ComponentModel.Composition.Primitives.CompositionElement:.ctor(System.Object):this (FullOpts) -12 (-10.81 % of base) : System.Private.CoreLib.dasm - System.IO.File:CreateText(System.String):System.IO.StreamWriter (FullOpts) -774 (-10.79 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.DataContract+DataContractCriticalHelper:TryCreateBuiltInDataContract(System.String,System.String,byref):ubyte (FullOpts) -18 (-10.78 % of base) : Microsoft.VisualBasic.Core.dasm - Microsoft.VisualBasic.CompilerServices.NewLateBinding:FallbackSetComplex(System.Object,System.String,System.Object[],ubyte,ubyte) (FullOpts) -18 (-10.78 % of base) : System.ComponentModel.Composition.dasm - System.ComponentModel.Composition.Primitives.CompositionElementExtensions:ToElementCore(System.Object):System.ComponentModel.Composition.Primitives.ICompositionElement (FullOpts) -18 (-10.71 % of base) : System.Net.Mail.dasm - System.Net.Mail.SendMailAsyncResult:SendMailFrom():this (FullOpts) -12 (-10.53 % of base) : System.Private.CoreLib.dasm - System.IO.File:AppendText(System.String):System.IO.StreamWriter (FullOpts) -18 (-10.47 % of base) : System.Net.Mail.dasm - System.Net.Mail.SmtpConnection+ConnectAndHandshakeAsyncResult:SendHello():ubyte:this (FullOpts) -12 (-10.17 % of base) : System.Private.CoreLib.dasm - System.Runtime.CompilerServices.AsyncMethodBuilderCore:LogTraceOperationBegin(System.Threading.Tasks.Task,System.Type) (FullOpts) -157 (-10.14 % of base) : System.Net.HttpListener.dasm - System.Net.HttpListenerResponse:SendHeaders(ubyte,System.IO.MemoryStream,ubyte):this (FullOpts) -12 (-10.08 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.FastInvokerBuilder:GetMakeNewInstanceFunc(System.Type):System.Func`1[System.Object] (FullOpts) -16 (-10.00 % of base) : System.CodeDom.dasm - System.CodeDom.Compiler.CompilerParameters:get_TempFiles():System.CodeDom.Compiler.TempFileCollection:this (FullOpts) -19 (-10.00 % of base) : System.Private.CoreLib.dasm - System.Reflection.Emit.CustomAttributeBuilder:.ctor(System.Reflection.ConstructorInfo,System.Object[]):this (FullOpts) -12 (-9.92 % of base) : System.Configuration.ConfigurationManager.dasm - System.Diagnostics.FilterElement:GetRuntimeObject():System.Diagnostics.TraceFilter:this (FullOpts) -12 (-9.92 % of base) : System.Private.CoreLib.dasm - System.IO.FileInfo:CreateText():System.IO.StreamWriter:this (FullOpts) -12 (-9.68 % of base) : System.Private.CoreLib.dasm - System.IO.FileInfo:AppendText():System.IO.StreamWriter:this (FullOpts) -12 (-9.68 % of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.XmlKeyHelper+ParseState+Functions:GetElements(System.Object):System.Collections.IEnumerable (FullOpts) -29 (-9.57 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.IlGen.XmlILModule:CreateLREModule():System.Reflection.Emit.ModuleBuilder (FullOpts) -236 (-9.45 % of base) : System.Private.Xml.dasm - System.Xml.Xsl.Xslt.QilGenerator:MatchCountPattern(System.Xml.Xsl.Qil.QilNode,System.Xml.Xsl.Qil.QilIterator):System.Xml.Xsl.Qil.QilNode:this (FullOpts) -97 (-8.50 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.Json.JsonXmlDataContract:WriteJsonValueCore(System.Runtime.Serialization.XmlWriterDelegator,System.Object,System.Runtime.Serialization.Json.XmlObjectSerializerWriteContextComplexJson,System.RuntimeTypeHandle):this (FullOpts) -12 (-8.39 % of base) : System.Private.CoreLib.dasm - System.CodeDom.Compiler.IndentedTextWriter:.ctor(System.IO.TextWriter,System.String):this (FullOpts) -10 (-8.33 % of base) : System.Net.Http.dasm - System.Net.Http.HttpConnectionPool:Trace(System.String,System.String):this (FullOpts) -18 (-8.18 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.XmlObjectSerializerWriteContext:WriteTypeInfo(System.Runtime.Serialization.XmlWriterDelegator,System.Xml.XmlDictionaryString,System.Xml.XmlDictionaryString):this (FullOpts) -12 (-8.16 % of base) : System.Configuration.ConfigurationManager.dasm - System.Configuration.BaseConfigurationRecord:HlAddChild(System.String,System.Configuration.BaseConfigurationRecord):this (FullOpts) -68 (-8.16 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.XmlObjectSerializer:WriteObject(System.IO.Stream,System.Object):this (FullOpts) -12 (-8.05 % of base) : System.Runtime.Caching.dasm - System.Runtime.Caching.FileChangeNotificationSystem:.ctor():this (FullOpts) -12 (-8.00 % of base) : System.Net.Mail.dasm - System.Net.Mime.ContentDisposition:get_Parameters():System.Collections.Specialized.StringDictionary:this (FullOpts) -18 (-7.50 % of base) : System.Private.CoreLib.dasm - System.Threading.Tasks.SynchronizationContextAwaitTaskContinuation:PostAction(System.Object) (FullOpts) -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.AsmxCharDataContract:.ctor():this (FullOpts) -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.AsmxGuidDataContract:.ctor():this (FullOpts) -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.BooleanDataContract:.ctor():this (FullOpts) -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.ByteArrayDataContract:.ctor():this (FullOpts) -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.CharDataContract:.ctor():this (FullOpts) -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.DateDataContract:.ctor():this (FullOpts) -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.DateTimeDataContract:.ctor():this (FullOpts) -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.DecimalDataContract:.ctor():this (FullOpts) -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.DoubleDataContract:.ctor():this (FullOpts) -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.ENTITIESDataContract:.ctor():this (FullOpts) -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.ENTITYDataContract:.ctor():this (FullOpts) -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.FloatDataContract:.ctor():this (FullOpts) -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.GDayDataContract:.ctor():this (FullOpts) -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.GMonthDataContract:.ctor():this (FullOpts) -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.GMonthDayDataContract:.ctor():this (FullOpts) -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.GuidDataContract:.ctor():this (FullOpts) -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.GYearDataContract:.ctor():this (FullOpts) -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.GYearMonthDataContract:.ctor():this (FullOpts) -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.HexBinaryDataContract:.ctor():this (FullOpts) -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.IDDataContract:.ctor():this (FullOpts) -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.IDREFDataContract:.ctor():this (FullOpts) -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.IDREFSDataContract:.ctor():this (FullOpts) -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.IntDataContract:.ctor():this (FullOpts) -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.IntegerDataContract:.ctor():this (FullOpts) -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.LanguageDataContract:.ctor():this (FullOpts) -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.LongDataContract:.ctor():this (FullOpts) -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.NameDataContract:.ctor():this (FullOpts) -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.NCNameDataContract:.ctor():this (FullOpts) -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.NegativeIntegerDataContract:.ctor():this (FullOpts) -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.NMTOKENDataContract:.ctor():this (FullOpts) -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.NMTOKENSDataContract:.ctor():this (FullOpts) -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.NonNegativeIntegerDataContract:.ctor():this (FullOpts) -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.NonPositiveIntegerDataContract:.ctor():this (FullOpts) -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.NormalizedStringDataContract:.ctor():this (FullOpts) -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.ObjectDataContract:.ctor():this (FullOpts) -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.PositiveIntegerDataContract:.ctor():this (FullOpts) -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.QNameDataContract:.ctor():this (FullOpts) -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.ShortDataContract:.ctor():this (FullOpts) -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.SignedByteDataContract:.ctor():this (FullOpts) -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.StringDataContract:.ctor():this (FullOpts) -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.TimeDataContract:.ctor():this (FullOpts) -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.TimeSpanDataContract:.ctor():this (FullOpts) -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.TokenDataContract:.ctor():this (FullOpts) -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.UnsignedByteDataContract:.ctor():this (FullOpts) -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.UnsignedIntDataContract:.ctor():this (FullOpts) -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.UnsignedLongDataContract:.ctor():this (FullOpts) -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.UnsignedShortDataContract:.ctor():this (FullOpts) -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.UriDataContract:.ctor():this (FullOpts) -14 (-7.49 % of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.XsDurationDataContract:.ctor():this (FullOpts) -12 (-7.14 % of base) : System.Composition.Hosting.dasm - System.Composition.Hosting.Providers.CurrentScope.CurrentScopeExportDescriptorProvider+<>c:b__1_0(System.Collections.Generic.IEnumerable`1[System.Composition.Hosting.Core.CompositionDependency]):System.Composition.Hosting.Core.ExportDescriptor:this (FullOpts) -20 (-7.12 % of base) : System.Web.HttpUtility.dasm - System.Web.Util.HttpEncoder:HtmlAttributeEncode(System.String):System.String (FullOpts) -18 (-7.06 % of base) : System.Security.Cryptography.Xml.dasm - System.Security.Cryptography.Xml.SignedXmlDebugLog:LogSignedXmlRecursionLimit(System.Security.Cryptography.Xml.SignedXml,System.Security.Cryptography.Xml.Reference) (FullOpts) -28 (-7.00 % of base) : System.Net.Mail.dasm - System.Net.Mail.SmtpConnection+ConnectAndHandshakeAsyncResult:AuthenticateContinue():ubyte:this (FullOpts) 996 total methods with Code Size differences (704 improved, 292 regressed), 231544 unchanged. -------------------------------------------------------------------------------- ```

Artifacts:

MihuBot commented 1 day ago

Top method regressions

76 (4.99 % of base) - Microsoft.CSharp.RuntimeBinder.Errors.UserStringBuilder:ErrAppendSym(Microsoft.CSharp.RuntimeBinder.Semantics.Symbol,Microsoft.CSharp.RuntimeBinder.Semantics.SubstContext,ubyte):this ```diff ; Assembly listing for method Microsoft.CSharp.RuntimeBinder.Errors.UserStringBuilder:ErrAppendSym(Microsoft.CSharp.RuntimeBinder.Semantics.Symbol,Microsoft.CSharp.RuntimeBinder.Semantics.SubstContext,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; 51 single block inlinees; 32 inlinees without PGO data ; Final local variable assignments ; ; V00 this [V00,T00] ( 23, 12.50) byref -> rbx this single-def ; V01 arg1 [V01,T01] ( 23, 10.12) ref -> r15 class-hnd single-def ; V02 arg2 [V02,T02] ( 7, 4.50) ref -> r14 class-hnd single-def -; V03 arg3 [V03,T11] ( 3, 2.50) ubyte -> rcx single-def +; V03 arg3 [V03,T12] ( 3, 2.50) ubyte -> rcx single-def ;* V04 loc0 [V04 ] ( 0, 0 ) int -> zero-ref -; V05 loc1 [V05,T43] ( 4, 2 ) ref -> rsi class-hnd exact single-def -; V06 loc2 [V06,T57] ( 3, 1.50) ref -> r14 class-hnd exact single-def +; V05 loc1 [V05,T44] ( 4, 2 ) ref -> rsi class-hnd exact single-def +; V06 loc2 [V06,T52] ( 3, 1.50) ref -> r14 class-hnd exact single-def ;# V07 OutArgs [V07 ] ( 1, 1 ) struct ( 0) [rsp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace" -; V08 tmp1 [V08,T20] ( 3, 3 ) ref -> r15 class-hnd exact single-def "dup spill" -; V09 tmp2 [V09,T21] ( 3, 3 ) ref -> rax class-hnd exact single-def "Single-def Box Helper" -; V10 tmp3 [V10,T47] ( 2, 2 ) ref -> rdi class-hnd "spilling qmarkNull" -; V11 tmp4 [V11,T22] ( 3, 3 ) ref -> rdi class-hnd exact single-def "Inlining Arg" -; V12 tmp5 [V12,T23] ( 3, 3 ) ref -> rdx class-hnd exact single-def "Inlining Arg" -; V13 tmp6 [V13,T05] ( 5, 5 ) ref -> rdi class-hnd exact single-def "Inlining Arg" -; V14 tmp7 [V14,T58] ( 3, 1.50) ref -> r13 class-hnd single-def "Inline stloc first use temp" -; V15 tmp8 [V15,T65] ( 3, 1.50) int -> r12 "Inline stloc first use temp" -; V16 tmp9 [V16,T24] ( 3, 3 ) byref -> rsi single-def "Inlining Arg" +; V08 tmp1 [V08,T21] ( 3, 3 ) ref -> r15 class-hnd exact single-def "dup spill" +; V09 tmp2 [V09,T22] ( 3, 3 ) ref -> rax class-hnd exact single-def "Single-def Box Helper" +; V10 tmp3 [V10,T48] ( 2, 2 ) ref -> rdi class-hnd "spilling qmarkNull" +; V11 tmp4 [V11,T23] ( 3, 3 ) ref -> rdi class-hnd exact single-def "Inlining Arg" +; V12 tmp5 [V12,T24] ( 3, 3 ) ref -> rdx class-hnd exact single-def "Inlining Arg" +; V13 tmp6 [V13,T06] ( 5, 5 ) ref -> rdi class-hnd exact single-def "Inlining Arg" +; V14 tmp7 [V14,T53] ( 3, 1.50) ref -> r13 class-hnd single-def "Inline stloc first use temp" +; V15 tmp8 [V15,T60] ( 3, 1.50) int -> r12 "Inline stloc first use temp" +; V16 tmp9 [V16,T25] ( 3, 3 ) byref -> rsi single-def "Inlining Arg" ;* V17 tmp10 [V17 ] ( 0, 0 ) byref -> zero-ref "Inline stloc first use temp" -; V18 tmp11 [V18,T12] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" -; V19 tmp12 [V19,T25] ( 3, 3 ) ref -> rdi class-hnd exact single-def "Inlining Arg" +; V18 tmp11 [V18,T13] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" +; V19 tmp12 [V19,T26] ( 3, 3 ) ref -> rdi class-hnd exact single-def "Inlining Arg" ;* V20 tmp13 [V20 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" ;* V21 tmp14 [V21 ] ( 0, 0 ) int -> zero-ref ld-addr-op "Inlining Arg" -; V22 tmp15 [V22,T26] ( 3, 3 ) ref -> rax class-hnd exact single-def "Single-def Box Helper" -; V23 tmp16 [V23,T27] ( 3, 3 ) ref -> rsi class-hnd exact single-def "dup spill" -; V24 tmp17 [V24,T13] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" -; V25 tmp18 [V25,T28] ( 3, 3 ) ref -> rdi class-hnd exact single-def "Inlining Arg" -; V26 tmp19 [V26,T29] ( 3, 3 ) ref -> rdx class-hnd exact single-def "Inlining Arg" -; V27 tmp20 [V27,T06] ( 5, 5 ) ref -> rdi class-hnd exact single-def "Inlining Arg" -; V28 tmp21 [V28,T59] ( 3, 1.50) ref -> rbx class-hnd single-def "Inline stloc first use temp" -; V29 tmp22 [V29,T66] ( 3, 1.50) int -> r15 "Inline stloc first use temp" -; V30 tmp23 [V30,T30] ( 3, 3 ) byref -> rsi single-def "Inlining Arg" +; V22 tmp15 [V22,T27] ( 3, 3 ) ref -> rax class-hnd exact single-def "Single-def Box Helper" +; V23 tmp16 [V23,T28] ( 3, 3 ) ref -> rsi class-hnd exact single-def "dup spill" +; V24 tmp17 [V24,T14] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" +; V25 tmp18 [V25,T29] ( 3, 3 ) ref -> rdi class-hnd exact single-def "Inlining Arg" +; V26 tmp19 [V26,T30] ( 3, 3 ) ref -> rdx class-hnd exact single-def "Inlining Arg" +; V27 tmp20 [V27,T07] ( 5, 5 ) ref -> rdi class-hnd exact single-def "Inlining Arg" +; V28 tmp21 [V28,T54] ( 3, 1.50) ref -> rbx class-hnd single-def "Inline stloc first use temp" +; V29 tmp22 [V29,T61] ( 3, 1.50) int -> r15 "Inline stloc first use temp" +; V30 tmp23 [V30,T31] ( 3, 3 ) byref -> rsi single-def "Inlining Arg" ;* V31 tmp24 [V31 ] ( 0, 0 ) byref -> zero-ref "Inline stloc first use temp" -; V32 tmp25 [V32,T14] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" -; V33 tmp26 [V33,T31] ( 3, 3 ) ref -> rdi class-hnd exact single-def "Inlining Arg" -; V34 tmp27 [V34,T32] ( 3, 3 ) ref -> rdx class-hnd exact single-def "Inlining Arg" -; V35 tmp28 [V35,T07] ( 5, 5 ) ref -> rdi class-hnd exact single-def "Inlining Arg" -; V36 tmp29 [V36,T60] ( 3, 1.50) ref -> r15 class-hnd single-def "Inline stloc first use temp" -; V37 tmp30 [V37,T67] ( 3, 1.50) int -> rbx "Inline stloc first use temp" -; V38 tmp31 [V38,T33] ( 3, 3 ) byref -> rsi single-def "Inlining Arg" +; V32 tmp25 [V32,T15] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" +; V33 tmp26 [V33,T32] ( 3, 3 ) ref -> rdi class-hnd exact single-def "Inlining Arg" +; V34 tmp27 [V34,T33] ( 3, 3 ) ref -> rdx class-hnd exact single-def "Inlining Arg" +; V35 tmp28 [V35,T08] ( 5, 5 ) ref -> rdi class-hnd exact single-def "Inlining Arg" +; V36 tmp29 [V36,T55] ( 3, 1.50) ref -> r15 class-hnd single-def "Inline stloc first use temp" +; V37 tmp30 [V37,T62] ( 3, 1.50) int -> r13 "Inline stloc first use temp" +; V38 tmp31 [V38,T34] ( 3, 3 ) byref -> rsi single-def "Inlining Arg" ;* V39 tmp32 [V39 ] ( 0, 0 ) byref -> zero-ref "Inline stloc first use temp" -; V40 tmp33 [V40,T15] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" -; V41 tmp34 [V41,T34] ( 3, 3 ) ref -> rdi class-hnd exact single-def "Inlining Arg" +; V40 tmp33 [V40,T16] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" +; V41 tmp34 [V41,T35] ( 3, 3 ) ref -> rdi class-hnd exact single-def "Inlining Arg" ;* V42 tmp35 [V42 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inline return value spill temp" ; V43 tmp36 [V43,T03] ( 6, 6 ) ref -> rdi class-hnd exact single-def "Inlining Arg" -; V44 tmp37 [V44,T68] ( 3, 1.50) int -> r15 "Inline stloc first use temp" -; V45 tmp38 [V45,T61] ( 3, 1.50) ref -> r13 class-hnd single-def "Inline stloc first use temp" +; V44 tmp37 [V44,T63] ( 3, 1.50) int -> r15 "Inline stloc first use temp" +; V45 tmp38 [V45,T56] ( 3, 1.50) ref -> r13 class-hnd single-def "Inline stloc first use temp" ;* V46 tmp39 [V46 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inline return value spill temp" -; V47 tmp40 [V47,T08] ( 5, 5 ) ref -> rdi class-hnd exact single-def "Inlining Arg" -; V48 tmp41 [V48,T69] ( 3, 1.50) int -> rax "Inline stloc first use temp" -; V49 tmp42 [V49,T62] ( 3, 1.50) ref -> r13 class-hnd single-def "Inline stloc first use temp" -; V50 tmp43 [V50,T48] ( 2, 2 ) ref -> rdi class-hnd exact single-def "Inlining Arg" +; V47 tmp40 [V47,T09] ( 5, 5 ) ref -> rdi class-hnd exact single-def "Inlining Arg" +; V48 tmp41 [V48,T64] ( 3, 1.50) int -> rax "Inline stloc first use temp" +; V49 tmp42 [V49,T57] ( 3, 1.50) ref -> r13 class-hnd single-def "Inline stloc first use temp" +;* V50 tmp43 [V50 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" ;* V51 tmp44 [V51 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" ;* V52 tmp45 [V52 ] ( 0, 0 ) ref -> zero-ref ;* V53 tmp46 [V53 ] ( 0, 0 ) struct (16) zero-ref multireg-arg ld-addr-op "NewObj constructor temp" -; V54 tmp47 [V54,T16] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" -; V55 tmp48 [V55,T35] ( 3, 3 ) ref -> rdi class-hnd exact single-def "Inlining Arg" -; V56 tmp49 [V56,T36] ( 3, 3 ) ref -> rdx class-hnd exact single-def "Inlining Arg" -; V57 tmp50 [V57,T09] ( 5, 5 ) ref -> rdi class-hnd exact single-def "Inlining Arg" -; V58 tmp51 [V58,T63] ( 3, 1.50) ref -> r15 class-hnd single-def "Inline stloc first use temp" -; V59 tmp52 [V59,T70] ( 3, 1.50) int -> rbx "Inline stloc first use temp" -; V60 tmp53 [V60,T37] ( 3, 3 ) byref -> rsi single-def "Inlining Arg" +; V54 tmp47 [V54,T17] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" +; V55 tmp48 [V55,T36] ( 3, 3 ) ref -> rdi class-hnd exact single-def "Inlining Arg" +; V56 tmp49 [V56,T37] ( 3, 3 ) ref -> rdx class-hnd exact single-def "Inlining Arg" +; V57 tmp50 [V57,T10] ( 5, 5 ) ref -> rdi class-hnd exact single-def "Inlining Arg" +; V58 tmp51 [V58,T58] ( 3, 1.50) ref -> r15 class-hnd single-def "Inline stloc first use temp" +; V59 tmp52 [V59,T65] ( 3, 1.50) int -> rbx "Inline stloc first use temp" +; V60 tmp53 [V60,T38] ( 3, 3 ) byref -> rsi single-def "Inlining Arg" ;* V61 tmp54 [V61 ] ( 0, 0 ) byref -> zero-ref "Inline stloc first use temp" -; V62 tmp55 [V62,T17] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" -; V63 tmp56 [V63,T38] ( 3, 3 ) ref -> rdi class-hnd exact single-def "Inlining Arg" -; V64 tmp57 [V64,T39] ( 3, 3 ) ref -> rdx class-hnd exact single-def "Inlining Arg" -; V65 tmp58 [V65,T10] ( 5, 5 ) ref -> rdi class-hnd exact single-def "Inlining Arg" -; V66 tmp59 [V66,T64] ( 3, 1.50) ref -> r15 class-hnd single-def "Inline stloc first use temp" -; V67 tmp60 [V67,T71] ( 3, 1.50) int -> rbx "Inline stloc first use temp" -; V68 tmp61 [V68,T40] ( 3, 3 ) byref -> rsi single-def "Inlining Arg" +; V62 tmp55 [V62,T18] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" +; V63 tmp56 [V63,T39] ( 3, 3 ) ref -> rdi class-hnd exact single-def "Inlining Arg" +; V64 tmp57 [V64,T40] ( 3, 3 ) ref -> rdx class-hnd exact single-def "Inlining Arg" +; V65 tmp58 [V65,T11] ( 5, 5 ) ref -> rdi class-hnd exact single-def "Inlining Arg" +; V66 tmp59 [V66,T59] ( 3, 1.50) ref -> r15 class-hnd single-def "Inline stloc first use temp" +; V67 tmp60 [V67,T66] ( 3, 1.50) int -> rbx "Inline stloc first use temp" +; V68 tmp61 [V68,T41] ( 3, 3 ) byref -> rsi single-def "Inlining Arg" ;* V69 tmp62 [V69 ] ( 0, 0 ) byref -> zero-ref "Inline stloc first use temp" -; V70 tmp63 [V70,T18] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" -; V71 tmp64 [V71,T41] ( 3, 3 ) ref -> rdi class-hnd exact single-def "Inlining Arg" +; V70 tmp63 [V70,T19] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" +; V71 tmp64 [V71,T42] ( 3, 3 ) ref -> rdi class-hnd exact single-def "Inlining Arg" ;* V72 tmp65 [V72 ] ( 0, 0 ) byref -> zero-ref "field V51._reference (fldOffset=0x0)" P-INDEP ;* V73 tmp66 [V73 ] ( 0, 0 ) int -> zero-ref "field V51._length (fldOffset=0x8)" P-INDEP -; V74 tmp67 [V74,T80] ( 2, 1 ) byref -> rdx single-def "field V53._reference (fldOffset=0x0)" P-INDEP -;* V75 tmp68 [V75,T82] ( 0, 0 ) int -> zero-ref "field V53._length (fldOffset=0x8)" P-INDEP +; V74 tmp67 [V74,T75] ( 2, 1 ) byref -> rdx single-def "field V53._reference (fldOffset=0x0)" P-INDEP +;* V75 tmp68 [V75,T77] ( 0, 0 ) int -> zero-ref "field V53._length (fldOffset=0x8)" P-INDEP ; V76 tmp69 [V76,T49] ( 2, 2 ) ref -> rsi single-def "argument with side effect" ; V77 tmp70 [V77,T50] ( 2, 2 ) ref -> rsi single-def "argument with side effect" -; V78 tmp71 [V78,T51] ( 2, 2 ) ref -> rsi single-def "arr expr" -; V79 tmp72 [V79,T52] ( 2, 2 ) ref -> rsi single-def "arr expr" -; V80 tmp73 [V80,T53] ( 2, 2 ) ref -> rsi single-def "arr expr" -; V81 tmp74 [V81,T54] ( 2, 2 ) ref -> rsi single-def "arr expr" -; V82 tmp75 [V82,T55] ( 2, 2 ) ref -> rsi single-def "argument with side effect" -; V83 tmp76 [V83,T56] ( 2, 2 ) ref -> rsi single-def "arr expr" -; V84 cse0 [V84,T19] ( 6, 3 ) int -> r13 multi-def "CSE #19: conservative" -; V85 cse1 [V85,T72] ( 3, 1.50) int -> rax "CSE #01: conservative" -; V86 cse2 [V86,T73] ( 3, 1.50) int -> r14 "CSE #07: conservative" -; V87 cse3 [V87,T74] ( 3, 1.50) int -> r13 "CSE #10: conservative" -; V88 cse4 [V88,T81] ( 2, 1 ) int -> rsi "CSE #14: conservative" -; V89 cse5 [V89,T75] ( 3, 1.50) int -> r15 "CSE #15: conservative" -; V90 rat0 [V90,T44] ( 3, 2 ) ref -> rsi "replacement local" -; V91 rat1 [V91,T77] ( 3, 1 ) long -> rdi "CSE for expectedClsNode" -; V92 rat2 [V92,T45] ( 3, 2 ) ref -> rsi "replacement local" -; V93 rat3 [V93,T78] ( 3, 1 ) long -> rdi "CSE for expectedClsNode" -; V94 rat4 [V94,T42] ( 4, 2.25) ref -> rsi "replacement local" -; V95 rat5 [V95,T76] ( 3, 1.25) long -> rdi "CSE for expectedClsNode" -; V96 rat6 [V96,T46] ( 3, 2 ) ref -> r14 "replacement local" -; V97 rat7 [V97,T79] ( 3, 1 ) long -> rdi "CSE for expectedClsNode" -; V98 rat8 [V98,T04] ( 3, 5.78) int -> rsi "ReplaceWithLclVar is creating a new local variable" +; V78 tmp71 [V78,T51] ( 2, 2 ) ref -> rsi single-def "argument with side effect" +; V79 cse0 [V79,T05] ( 10, 5 ) ref -> r13 multi-def "CSE #01: aggressive" +; V80 cse1 [V80,T20] ( 6, 3 ) int -> r12 multi-def "CSE #19: conservative" +; V81 cse2 [V81,T67] ( 3, 1.50) int -> rax "CSE #02: conservative" +; V82 cse3 [V82,T68] ( 3, 1.50) int -> r14 "CSE #07: conservative" +; V83 cse4 [V83,T69] ( 3, 1.50) int -> rbx "CSE #10: conservative" +; V84 cse5 [V84,T76] ( 2, 1 ) int -> rsi "CSE #14: conservative" +; V85 cse6 [V85,T70] ( 3, 1.50) int -> r15 "CSE #15: conservative" +; V86 rat0 [V86,T45] ( 3, 2 ) ref -> rsi "replacement local" +; V87 rat1 [V87,T72] ( 3, 1 ) long -> rdi "CSE for expectedClsNode" +; V88 rat2 [V88,T46] ( 3, 2 ) ref -> rsi "replacement local" +; V89 rat3 [V89,T73] ( 3, 1 ) long -> rdi "CSE for expectedClsNode" +; V90 rat4 [V90,T43] ( 4, 2.25) ref -> rsi "replacement local" +; V91 rat5 [V91,T71] ( 3, 1.25) long -> rdi "CSE for expectedClsNode" +; V92 rat6 [V92,T47] ( 3, 2 ) ref -> r14 "replacement local" +; V93 rat7 [V93,T74] ( 3, 1 ) long -> rdi "CSE for expectedClsNode" +; V94 rat8 [V94,T04] ( 3, 5.78) int -> rsi "ReplaceWithLclVar is creating a new local variable" ; ; Lcl frame size = 8 G_M48351_IG01: push rbp push r15 push r14 push r13 push r12 push rbx push rax lea rbp, [rsp+0x30] mov rbx, rdi mov r15, rsi mov r14, rdx ;; size=25 bbWeight=1 PerfScore 8.25 G_M48351_IG02: mov esi, dword ptr [r15+0x28] cmp esi, 7 ja G_M48351_IG34 ;; size=13 bbWeight=1 PerfScore 3.25 G_M48351_IG03: mov esi, esi lea rdi, [reloc @RWD00] mov edi, dword ptr [rdi+4*rsi] lea rax, G_M48351_IG02 add rdi, rax jmp rdi ;; size=24 bbWeight=0.89 PerfScore 5.33 G_M48351_IG04: mov rsi, r15 mov rdi, 0xD1FFAB1E ; Microsoft.CSharp.RuntimeBinder.Semantics.PropertySymbol cmp qword ptr [rsi], rdi je SHORT G_M48351_IG06 ;; size=18 bbWeight=0.25 PerfScore 1.12 G_M48351_IG05: mov rsi, r15 mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_CHKCASTCLASS_SPECIAL call [rax]CORINFO_HELP_CHKCASTCLASS_SPECIAL mov rsi, rax ;; size=18 bbWeight=0.12 PerfScore 0.47 G_M48351_IG06: mov rdi, rbx mov rdx, r14 mov rax, 0xD1FFAB1E ; code for Microsoft.CSharp.RuntimeBinder.Errors.UserStringBuilder:ErrAppendProperty(Microsoft.CSharp.RuntimeBinder.Semantics.PropertySymbol,Microsoft.CSharp.RuntimeBinder.Semantics.SubstContext):this call [rax]Microsoft.CSharp.RuntimeBinder.Errors.UserStringBuilder:ErrAppendProperty(Microsoft.CSharp.RuntimeBinder.Semantics.PropertySymbol,Microsoft.CSharp.RuntimeBinder.Semantics.SubstContext):this jmp G_M48351_IG34 ;; size=23 bbWeight=0.50 PerfScore 2.88 G_M48351_IG07: mov rsi, r15 mov rdi, 0xD1FFAB1E ; Microsoft.CSharp.RuntimeBinder.Semantics.MethodSymbol cmp qword ptr [rsi], rdi jne G_M48351_IG36 ;; size=22 bbWeight=0.25 PerfScore 1.12 G_M48351_IG08: movzx rcx, cl mov rdi, rbx mov rdx, r14 mov rax, 0xD1FFAB1E ; code for Microsoft.CSharp.RuntimeBinder.Errors.UserStringBuilder:ErrAppendMethod(Microsoft.CSharp.RuntimeBinder.Semantics.MethodSymbol,Microsoft.CSharp.RuntimeBinder.Semantics.SubstContext,ubyte):this call [rax]Microsoft.CSharp.RuntimeBinder.Errors.UserStringBuilder:ErrAppendMethod(Microsoft.CSharp.RuntimeBinder.Semantics.MethodSymbol,Microsoft.CSharp.RuntimeBinder.Semantics.SubstContext,ubyte):this jmp G_M48351_IG34 ;; size=26 bbWeight=0.50 PerfScore 3.00 G_M48351_IG09: mov rdx, gword ptr [r15+0x08] mov rsi, 0xD1FFAB1E ; const ptr - mov rsi, gword ptr [rsi] - cmp rdx, gword ptr [rsi+0x90] + mov r13, gword ptr [rsi] + mov esi, 121 + cmp esi, 16 + jbe G_M48351_IG39 + cmp rdx, gword ptr [r13+0x90] je SHORT G_M48351_IG10 mov rsi, gword ptr [rdx+0x08] mov rdi, gword ptr [rbx] cmp byte ptr [rdi], dil test rsi, rsi je G_M48351_IG34 mov edx, dword ptr [rsi+0x08] add rsi, 12 mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this call [rax]System.Text.StringBuilder:Append(byref,int):this jmp G_M48351_IG34 - ;; size=69 bbWeight=0.50 PerfScore 12.00 + ;; size=83 bbWeight=0.50 PerfScore 12.75 G_M48351_IG10: mov rdi, gword ptr [rbx] mov rsi, 0xD1FFAB1E mov r15, gword ptr [rdi+0x08] mov ebx, dword ptr [rdi+0x18] - lea r13d, [rbx+0x04] - cmp dword ptr [r15+0x08], r13d + lea r12d, [rbx+0x04] + cmp dword ptr [r15+0x08], r12d jae SHORT G_M48351_IG11 mov edx, 4 mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:AppendWithExpansion(byref,int):this call [rax]System.Text.StringBuilder:AppendWithExpansion(byref,int):this jmp G_M48351_IG34 ;; size=52 bbWeight=0.50 PerfScore 8.12 G_M48351_IG11: movsxd rdx, ebx lea rdx, bword ptr [r15+2*rdx+0x10] mov rax, qword ptr [rsi] mov qword ptr [rdx], rax - mov dword ptr [rdi+0x18], r13d + mov dword ptr [rdi+0x18], r12d jmp G_M48351_IG34 ;; size=23 bbWeight=0.50 PerfScore 3.62 G_M48351_IG12: mov rsi, gword ptr [r15+0x10] mov rdi, rbx mov rdx, r14 mov rax, 0xD1FFAB1E ; code for Microsoft.CSharp.RuntimeBinder.Errors.UserStringBuilder:ErrAppendParentCore(Microsoft.CSharp.RuntimeBinder.Semantics.Symbol,Microsoft.CSharp.RuntimeBinder.Semantics.SubstContext):this call [rax]Microsoft.CSharp.RuntimeBinder.Errors.UserStringBuilder:ErrAppendParentCore(Microsoft.CSharp.RuntimeBinder.Semantics.Symbol,Microsoft.CSharp.RuntimeBinder.Semantics.SubstContext):this mov rdx, gword ptr [r15+0x08] mov rsi, 0xD1FFAB1E ; const ptr - mov rsi, gword ptr [rsi] - cmp rdx, gword ptr [rsi+0x90] + mov r13, gword ptr [rsi] + mov esi, 121 + cmp esi, 16 + jbe G_M48351_IG39 + cmp rdx, gword ptr [r13+0x90] je SHORT G_M48351_IG13 mov rsi, gword ptr [rdx+0x08] mov rdi, gword ptr [rbx] cmp byte ptr [rdi], dil test rsi, rsi je G_M48351_IG34 mov edx, dword ptr [rsi+0x08] add rsi, 12 mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this call [rax]System.Text.StringBuilder:Append(byref,int):this jmp G_M48351_IG34 - ;; size=91 bbWeight=0.50 PerfScore 14.88 + ;; size=105 bbWeight=0.50 PerfScore 15.62 G_M48351_IG13: mov rdi, gword ptr [rbx] mov rsi, 0xD1FFAB1E mov r15, gword ptr [rdi+0x08] - mov ebx, dword ptr [rdi+0x18] - lea r13d, [rbx+0x04] - cmp dword ptr [r15+0x08], r13d + mov r13d, dword ptr [rdi+0x18] + lea ebx, [r13+0x04] + cmp dword ptr [r15+0x08], ebx jae SHORT G_M48351_IG14 mov edx, 4 mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:AppendWithExpansion(byref,int):this call [rax]System.Text.StringBuilder:AppendWithExpansion(byref,int):this jmp G_M48351_IG34 - ;; size=52 bbWeight=0.50 PerfScore 8.12 + ;; size=53 bbWeight=0.50 PerfScore 8.12 G_M48351_IG14: - movsxd rdx, ebx + movsxd rdx, r13d lea rdx, bword ptr [r15+2*rdx+0x10] mov rax, qword ptr [rsi] mov qword ptr [rdx], rax - mov dword ptr [rdi+0x18], r13d + mov dword ptr [rdi+0x18], ebx jmp G_M48351_IG34 - ;; size=23 bbWeight=0.50 PerfScore 3.62 + ;; size=22 bbWeight=0.50 PerfScore 3.62 G_M48351_IG15: cmp gword ptr [r15+0x08], 0 je G_M48351_IG18 mov rdx, gword ptr [r15+0x08] mov rsi, 0xD1FFAB1E ; const ptr - mov rsi, gword ptr [rsi] - cmp rdx, gword ptr [rsi+0x90] + mov r13, gword ptr [rsi] + mov esi, 121 + cmp esi, 16 + jbe G_M48351_IG39 + cmp rdx, gword ptr [r13+0x90] je SHORT G_M48351_IG16 mov rsi, gword ptr [rdx+0x08] mov rdi, gword ptr [rbx] cmp byte ptr [rdi], dil test rsi, rsi je G_M48351_IG34 mov edx, dword ptr [rsi+0x08] add rsi, 12 mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this call [rax]System.Text.StringBuilder:Append(byref,int):this jmp G_M48351_IG34 - ;; size=80 bbWeight=0.50 PerfScore 14.00 + ;; size=94 bbWeight=0.50 PerfScore 14.75 G_M48351_IG16: mov rdi, gword ptr [rbx] mov rsi, 0xD1FFAB1E mov r15, gword ptr [rdi+0x08] mov ebx, dword ptr [rdi+0x18] - lea r13d, [rbx+0x04] - cmp dword ptr [r15+0x08], r13d + lea r12d, [rbx+0x04] + cmp dword ptr [r15+0x08], r12d jae SHORT G_M48351_IG17 mov edx, 4 mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:AppendWithExpansion(byref,int):this call [rax]System.Text.StringBuilder:AppendWithExpansion(byref,int):this jmp G_M48351_IG34 ;; size=52 bbWeight=0.50 PerfScore 8.12 G_M48351_IG17: movsxd rax, ebx lea rax, bword ptr [r15+2*rax+0x10] mov rcx, qword ptr [rsi] mov qword ptr [rax], rcx - mov dword ptr [rdi+0x18], r13d + mov dword ptr [rdi+0x18], r12d jmp G_M48351_IG34 ;; size=23 bbWeight=0.50 PerfScore 3.62 G_M48351_IG18: mov r14, r15 mov rdi, 0xD1FFAB1E ; Microsoft.CSharp.RuntimeBinder.Semantics.TypeParameterSymbol cmp qword ptr [r14], rdi jne G_M48351_IG37 ;; size=22 bbWeight=0.25 PerfScore 1.12 G_M48351_IG19: cmp byte ptr [r14+0x4C], 0 je SHORT G_M48351_IG21 mov rdi, gword ptr [rbx] mov r15d, dword ptr [rdi+0x18] mov r13, gword ptr [rdi+0x08] cmp dword ptr [r13+0x08], r15d ja SHORT G_M48351_IG20 mov esi, 33 mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:AppendWithExpansion(ushort):this call [rax]System.Text.StringBuilder:AppendWithExpansion(ushort):this jmp SHORT G_M48351_IG21 ;; size=43 bbWeight=0.50 PerfScore 9.75 G_M48351_IG20: mov esi, r15d mov word ptr [r13+2*rsi+0x10], 33 inc dword ptr [rdi+0x18] ;; size=14 bbWeight=0.50 PerfScore 2.12 G_M48351_IG21: mov rdi, gword ptr [rbx] mov r15d, dword ptr [rdi+0x18] mov eax, r15d mov r13, gword ptr [rdi+0x08] mov esi, dword ptr [r13+0x08] cmp esi, eax ja SHORT G_M48351_IG22 mov esi, 33 mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:AppendWithExpansion(ushort):this call [rax]System.Text.StringBuilder:AppendWithExpansion(ushort):this jmp SHORT G_M48351_IG23 ;; size=41 bbWeight=0.50 PerfScore 7.50 G_M48351_IG22: mov esi, eax mov word ptr [r13+2*rsi+0x10], 33 inc r15d mov dword ptr [rdi+0x18], r15d ;; size=17 bbWeight=0.50 PerfScore 1.25 G_M48351_IG23: mov rdi, 0xD1FFAB1E ; System.Object[] mov esi, 1 call CORINFO_HELP_NEWARR_1_OBJ mov r15, rax mov rdi, 0xD1FFAB1E ; System.Int32 call CORINFO_HELP_NEWSFAST mov edi, dword ptr [r14+0x48] mov dword ptr [rax+0x08], edi lea rdi, bword ptr [r15+0x10] mov rsi, rax call CORINFO_HELP_ASSIGN_REF - mov rdx, 0xD1FFAB1E ; const ptr - mov rdi, gword ptr [rdx] lea rdx, bword ptr [r15+0x10] mov ecx, 1 + mov rdi, 0xD1FFAB1E ; const ptr + mov rdi, gword ptr [rdi] mov rsi, 0xD1FFAB1E ; '{0}' mov rax, 0xD1FFAB1E ; code for System.String:FormatHelper(System.IFormatProvider,System.String,System.ReadOnlySpan`1[System.Object]):System.String call [rax]System.String:FormatHelper(System.IFormatProvider,System.String,System.ReadOnlySpan`1[System.Object]):System.String mov rsi, rax mov rdi, gword ptr [rbx] cmp byte ptr [rdi], dil test rsi, rsi je G_M48351_IG34 mov edx, dword ptr [rsi+0x08] add rsi, 12 mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this call [rax]System.Text.StringBuilder:Append(byref,int):this jmp G_M48351_IG34 ;; size=143 bbWeight=0.50 PerfScore 14.12 G_M48351_IG24: mov rdi, 0xD1FFAB1E ; Microsoft.CSharp.RuntimeBinder.Semantics.AggregateSymbol xor rax, rax cmp qword ptr [r15], rdi mov rdi, rax cmove rdi, r15 mov rax, 0xD1FFAB1E ; code for Microsoft.CSharp.RuntimeBinder.Semantics.PredefinedTypes:GetNiceName(Microsoft.CSharp.RuntimeBinder.Semantics.AggregateSymbol):System.String call [rax]Microsoft.CSharp.RuntimeBinder.Semantics.PredefinedTypes:GetNiceName(Microsoft.CSharp.RuntimeBinder.Semantics.AggregateSymbol):System.String mov rsi, rax test rsi, rsi jne G_M48351_IG29 mov rsi, gword ptr [r15+0x10] mov rdi, rbx mov rdx, r14 mov rax, 0xD1FFAB1E ; code for Microsoft.CSharp.RuntimeBinder.Errors.UserStringBuilder:ErrAppendParentCore(Microsoft.CSharp.RuntimeBinder.Semantics.Symbol,Microsoft.CSharp.RuntimeBinder.Semantics.SubstContext):this call [rax]Microsoft.CSharp.RuntimeBinder.Errors.UserStringBuilder:ErrAppendParentCore(Microsoft.CSharp.RuntimeBinder.Semantics.Symbol,Microsoft.CSharp.RuntimeBinder.Semantics.SubstContext):this mov rdx, gword ptr [r15+0x08] mov rsi, 0xD1FFAB1E ; const ptr - mov rsi, gword ptr [rsi] - cmp rdx, gword ptr [rsi+0x90] + mov r13, gword ptr [rsi] + mov esi, 121 + cmp esi, 16 + jbe G_M48351_IG39 + cmp rdx, gword ptr [r13+0x90] je SHORT G_M48351_IG25 mov rsi, gword ptr [rdx+0x08] mov rdi, gword ptr [rbx] cmp byte ptr [rdi], dil test rsi, rsi je SHORT G_M48351_IG27 mov edx, dword ptr [rsi+0x08] add rsi, 12 mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this call [rax]System.Text.StringBuilder:Append(byref,int):this jmp SHORT G_M48351_IG27 - ;; size=130 bbWeight=0.50 PerfScore 19.25 + ;; size=144 bbWeight=0.50 PerfScore 20.00 G_M48351_IG25: mov rdi, gword ptr [rbx] mov rsi, 0xD1FFAB1E mov r13, gword ptr [rdi+0x08] mov r12d, dword ptr [rdi+0x18] lea eax, [r12+0x04] cmp dword ptr [r13+0x08], eax jae SHORT G_M48351_IG26 mov edx, 4 mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:AppendWithExpansion(byref,int):this call [rax]System.Text.StringBuilder:AppendWithExpansion(byref,int):this jmp SHORT G_M48351_IG27 ;; size=51 bbWeight=0.50 PerfScore 8.12 G_M48351_IG26: movsxd rdx, r12d lea rdx, bword ptr [r13+2*rdx+0x10] mov rcx, qword ptr [rsi] mov qword ptr [rdx], rcx mov dword ptr [rdi+0x18], eax ;; size=17 bbWeight=0.50 PerfScore 3.12 G_M48351_IG27: mov rsi, r15 mov rdi, 0xD1FFAB1E ; Microsoft.CSharp.RuntimeBinder.Semantics.AggregateSymbol cmp qword ptr [rsi], rdi jne G_M48351_IG38 ;; size=22 bbWeight=0.25 PerfScore 1.12 G_M48351_IG28: mov rsi, gword ptr [rsi+0x78] mov rdi, rbx mov rdx, r14 mov rax, 0xD1FFAB1E ; code for Microsoft.CSharp.RuntimeBinder.Errors.UserStringBuilder:ErrAppendTypeParameters(Microsoft.CSharp.RuntimeBinder.Semantics.TypeArray,Microsoft.CSharp.RuntimeBinder.Semantics.SubstContext):this call [rax]Microsoft.CSharp.RuntimeBinder.Errors.UserStringBuilder:ErrAppendTypeParameters(Microsoft.CSharp.RuntimeBinder.Semantics.TypeArray,Microsoft.CSharp.RuntimeBinder.Semantics.SubstContext):this jmp G_M48351_IG34 ;; size=27 bbWeight=0.50 PerfScore 3.88 G_M48351_IG29: mov rdi, gword ptr [rbx] cmp byte ptr [rdi], dil mov edx, dword ptr [rsi+0x08] add rsi, 12 mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this call [rax]System.Text.StringBuilder:Append(byref,int):this jmp G_M48351_IG34 ;; size=30 bbWeight=0.50 PerfScore 6.25 G_M48351_IG30: mov rsi, 0xD1FFAB1E ; const ptr cmp r15, gword ptr [rsi] je G_M48351_IG33 mov rsi, gword ptr [r15+0x10] mov rdi, rbx xor rdx, rdx mov rax, 0xD1FFAB1E ; code for Microsoft.CSharp.RuntimeBinder.Errors.UserStringBuilder:ErrAppendParentCore(Microsoft.CSharp.RuntimeBinder.Semantics.Symbol,Microsoft.CSharp.RuntimeBinder.Semantics.SubstContext):this call [rax]Microsoft.CSharp.RuntimeBinder.Errors.UserStringBuilder:ErrAppendParentCore(Microsoft.CSharp.RuntimeBinder.Semantics.Symbol,Microsoft.CSharp.RuntimeBinder.Semantics.SubstContext):this mov rdx, gword ptr [r15+0x08] mov rsi, 0xD1FFAB1E ; const ptr - mov rsi, gword ptr [rsi] - cmp rdx, gword ptr [rsi+0x90] + mov r13, gword ptr [rsi] + mov esi, 121 + cmp esi, 16 + jbe G_M48351_IG39 + cmp rdx, gword ptr [r13+0x90] je SHORT G_M48351_IG31 mov rsi, gword ptr [rdx+0x08] mov rdi, gword ptr [rbx] cmp byte ptr [rdi], dil test rsi, rsi je G_M48351_IG34 mov edx, dword ptr [rsi+0x08] add rsi, 12 mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this call [rax]System.Text.StringBuilder:Append(byref,int):this jmp G_M48351_IG34 - ;; size=109 bbWeight=0.50 PerfScore 17.00 + ;; size=123 bbWeight=0.50 PerfScore 17.75 G_M48351_IG31: mov rdi, gword ptr [rbx] mov rsi, 0xD1FFAB1E mov rbx, gword ptr [rdi+0x08] mov r15d, dword ptr [rdi+0x18] lea r14d, [r15+0x04] cmp dword ptr [rbx+0x08], r14d jae SHORT G_M48351_IG32 mov edx, 4 mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:AppendWithExpansion(byref,int):this call [rax]System.Text.StringBuilder:AppendWithExpansion(byref,int):this jmp SHORT G_M48351_IG34 ;; size=50 bbWeight=0.50 PerfScore 8.12 G_M48351_IG32: movsxd rax, r15d lea rax, bword ptr [rbx+2*rax+0x10] mov rcx, qword ptr [rsi] mov qword ptr [rax], rcx mov dword ptr [rdi+0x18], r14d jmp SHORT G_M48351_IG34 ;; size=20 bbWeight=0.50 PerfScore 3.62 G_M48351_IG33: mov rdi, 0xD1FFAB1E ; Microsoft.CSharp.RuntimeBinder.Errors.MessageID call CORINFO_HELP_NEWSFAST mov dword ptr [rax+0x08], 12 mov rdi, rax mov rax, 0xD1FFAB1E ; code for System.Enum:ToString():System.String:this call [rax]System.Enum:ToString():System.String:this mov rsi, rax mov rdi, rsi mov rax, 0xD1FFAB1E ; code for System.SR:GetResourceString(System.String,System.String):System.String call [rax]System.SR:GetResourceString(System.String,System.String):System.String mov rsi, rax mov rdi, gword ptr [rbx] cmp byte ptr [rdi], dil test rsi, rsi je SHORT G_M48351_IG34 mov edx, dword ptr [rsi+0x08] add rsi, 12 mov rax, 0xD1FFAB1E ; code for System.Text.StringBuilder:Append(byref,int):this call [rax]System.Text.StringBuilder:Append(byref,int):this ;; size=88 bbWeight=0.50 PerfScore 10.75 G_M48351_IG34: nop ;; size=1 bbWeight=1 PerfScore 0.25 G_M48351_IG35: add rsp, 8 pop rbx pop r12 pop r13 pop r14 pop r15 pop rbp ret ;; size=15 bbWeight=1 PerfScore 4.25 G_M48351_IG36: mov rsi, r15 mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_CHKCASTCLASS call [rax]CORINFO_HELP_CHKCASTCLASS int3 ;; size=16 bbWeight=0 PerfScore 0.00 G_M48351_IG37: mov rsi, r15 mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_CHKCASTCLASS call [rax]CORINFO_HELP_CHKCASTCLASS int3 ;; size=16 bbWeight=0 PerfScore 0.00 G_M48351_IG38: mov rsi, r15 mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_CHKCASTCLASS call [rax]CORINFO_HELP_CHKCASTCLASS int3 ;; size=16 bbWeight=0 PerfScore 0.00 +G_M48351_IG39: + call CORINFO_HELP_RNGCHKFAIL + int3 + ;; size=6 bbWeight=0 PerfScore 0.00 RWD00 dd G_M48351_IG30 - G_M48351_IG02 dd G_M48351_IG24 - G_M48351_IG02 dd G_M48351_IG15 - G_M48351_IG02 dd G_M48351_IG12 - G_M48351_IG02 dd G_M48351_IG09 - G_M48351_IG02 dd G_M48351_IG07 - G_M48351_IG02 dd G_M48351_IG04 - G_M48351_IG02 dd G_M48351_IG34 - G_M48351_IG02 -; Total bytes of code 1522, prolog size 16, PerfScore 223.18, instruction count 350, allocated bytes for code 1522 (MethodHash=9e6a4320) for method Microsoft.CSharp.RuntimeBinder.Errors.UserStringBuilder:ErrAppendSym(Microsoft.CSharp.RuntimeBinder.Semantics.Symbol,Microsoft.CSharp.RuntimeBinder.Semantics.SubstContext,ubyte):this (FullOpts) +; Total bytes of code 1598, prolog size 16, PerfScore 226.93, instruction count 367, allocated bytes for code 1598 (MethodHash=9e6a4320) for method Microsoft.CSharp.RuntimeBinder.Errors.UserStringBuilder:ErrAppendSym(Microsoft.CSharp.RuntimeBinder.Semantics.Symbol,Microsoft.CSharp.RuntimeBinder.Semantics.SubstContext,ubyte):this (FullOpts) ; ============================================================ ```
62 (15.16 % of base) - System.Net.Mime.MimePart:set_TransferEncoding(int):this ```diff ; Assembly listing for method System.Net.Mime.MimePart:set_TransferEncoding(int):this (FullOpts) ; Emitting BLENDED_CODE for X64 with AVX - Unix ; FullOpts code ; optimized code ; rbp based frame ; partially interruptible ; No PGO data ; 0 inlinees with PGO data; 4 single block inlinees; 4 inlinees without PGO data ; Final local variable assignments ; ; V00 this [V00,T01] ( 6, 4 ) ref -> rdi this class-hnd single-def ; V01 arg1 [V01,T00] ( 7, 4.50) int -> rbx single-def ;# V02 OutArgs [V02 ] ( 1, 1 ) struct ( 0) [rsp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace" -; V03 tmp1 [V03,T14] ( 3, 0 ) ref -> r15 class-hnd exact single-def "Single-def Box Helper" -; V04 tmp2 [V04,T16] ( 2, 0 ) ref -> r14 class-hnd exact single-def "impImportAndPushBox" -; V05 tmp3 [V05,T15] ( 3, 0 ) ref -> rbx class-hnd exact single-def "NewObj constructor temp" +; V03 tmp1 [V03,T07] ( 3, 0 ) ref -> r15 class-hnd exact single-def "Single-def Box Helper" +; V04 tmp2 [V04,T09] ( 2, 0 ) ref -> r14 class-hnd exact single-def "impImportAndPushBox" +; V05 tmp3 [V05,T08] ( 3, 0 ) ref -> rbx class-hnd exact single-def "NewObj constructor temp" ;* V06 tmp4 [V06 ] ( 0, 0 ) ref -> zero-ref class-hnd "impAppendStmt" ;* V07 tmp5 [V07 ] ( 0, 0 ) ref -> zero-ref class-hnd "impAppendStmt" ;* V08 tmp6 [V08 ] ( 0, 0 ) ref -> zero-ref class-hnd "impAppendStmt" ;* V09 tmp7 [V09 ] ( 0, 0 ) ref -> zero-ref class-hnd "impAppendStmt" ;* V10 tmp8 [V10 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline return value spill temp" ;* V11 tmp9 [V11 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline return value spill temp" ;* V12 tmp10 [V12 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline return value spill temp" ;* V13 tmp11 [V13 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline return value spill temp" -; V14 tmp12 [V14,T17] ( 2, 0 ) ref -> rsi single-def "argument with side effect" -; V15 tmp13 [V15,T06] ( 2, 2 ) ref -> rdi single-def "arr expr" -; V16 tmp14 [V16,T02] ( 3, 3 ) ref -> rax single-def "argument with side effect" -; V17 tmp15 [V17,T07] ( 2, 2 ) ref -> rsi single-def "argument with side effect" -; V18 tmp16 [V18,T08] ( 2, 2 ) ref -> rdi single-def "arr expr" -; V19 tmp17 [V19,T03] ( 3, 3 ) ref -> rax single-def "argument with side effect" -; V20 tmp18 [V20,T09] ( 2, 2 ) ref -> rsi single-def "argument with side effect" -; V21 tmp19 [V21,T10] ( 2, 2 ) ref -> rdi single-def "arr expr" -; V22 tmp20 [V22,T04] ( 3, 3 ) ref -> rax single-def "argument with side effect" -; V23 tmp21 [V23,T11] ( 2, 2 ) ref -> rsi single-def "argument with side effect" -; V24 tmp22 [V24,T12] ( 2, 2 ) ref -> rdi single-def "arr expr" -; V25 tmp23 [V25,T05] ( 3, 3 ) ref -> rax single-def "argument with side effect" -; V26 tmp24 [V26,T13] ( 2, 2 ) ref -> rsi single-def "argument with side effect" +; V14 tmp12 [V14,T10] ( 2, 0 ) ref -> rsi single-def "argument with side effect" +; V15 tmp13 [V15,T03] ( 3, 3 ) ref -> rax single-def "argument with side effect" +; V16 tmp14 [V16,T04] ( 3, 3 ) ref -> rax single-def "argument with side effect" +; V17 tmp15 [V17,T05] ( 3, 3 ) ref -> rax single-def "argument with side effect" +; V18 tmp16 [V18,T06] ( 3, 3 ) ref -> rax single-def "argument with side effect" +; V19 cse0 [V19,T02] ( 8, 4 ) ref -> r15 multi-def "CSE #01: aggressive" ; ; Lcl frame size = 8 G_M56664_IG01: push rbp push r15 push r14 push rbx push rax lea rbp, [rsp+0x20] mov ebx, esi ;; size=14 bbWeight=1 PerfScore 5.75 G_M56664_IG02: cmp ebx, 1 je G_M56664_IG09 ;; size=9 bbWeight=1 PerfScore 1.25 G_M56664_IG03: test ebx, ebx je G_M56664_IG07 cmp ebx, 2 je SHORT G_M56664_IG05 cmp ebx, 3 jne G_M56664_IG11 mov rax, 0xD1FFAB1E ; code for System.Net.Mime.MimeBasePart:get_Headers():System.Collections.Specialized.NameValueCollection:this call [rax]System.Net.Mime.MimeBasePart:get_Headers():System.Collections.Specialized.NameValueCollection:this - mov rdi, 0xD1FFAB1E ; const ptr - mov rdi, gword ptr [rdi] - mov rsi, gword ptr [rdi+0x80] mov rdi, rax + mov rsi, 0xD1FFAB1E ; const ptr + mov r15, gword ptr [rsi] + mov esi, 33 + cmp esi, 7 + jbe G_M56664_IG12 + mov rsi, gword ptr [r15+0x80] mov rdx, 0xD1FFAB1E ; '8bit' mov rax, qword ptr [rax] mov rax, qword ptr [rax+0x50] - ;; size=74 bbWeight=0.50 PerfScore 7.88 + ;; size=88 bbWeight=0.50 PerfScore 8.62 G_M56664_IG04: add rsp, 8 pop rbx pop r14 pop r15 pop rbp tail.jmp [rax+0x08]System.Collections.Specialized.NameValueCollection:Set(System.String,System.String):this ;; size=14 bbWeight=0.50 PerfScore 2.12 G_M56664_IG05: mov rax, 0xD1FFAB1E ; code for System.Net.Mime.MimeBasePart:get_Headers():System.Collections.Specialized.NameValueCollection:this call [rax]System.Net.Mime.MimeBasePart:get_Headers():System.Collections.Specialized.NameValueCollection:this - mov rdi, 0xD1FFAB1E ; const ptr - mov rdi, gword ptr [rdi] - mov rsi, gword ptr [rdi+0x80] mov rdi, rax + mov rsi, 0xD1FFAB1E ; const ptr + mov r15, gword ptr [rsi] + mov esi, 33 + cmp esi, 7 + jbe G_M56664_IG12 + mov rsi, gword ptr [r15+0x80] mov rdx, 0xD1FFAB1E ; '7bit' mov rax, qword ptr [rax] mov rax, qword ptr [rax+0x50] - ;; size=52 bbWeight=0.50 PerfScore 6.00 + ;; size=66 bbWeight=0.50 PerfScore 6.75 G_M56664_IG06: add rsp, 8 pop rbx pop r14 pop r15 pop rbp tail.jmp [rax+0x08]System.Collections.Specialized.NameValueCollection:Set(System.String,System.String):this ;; size=14 bbWeight=0.50 PerfScore 2.12 G_M56664_IG07: mov rax, 0xD1FFAB1E ; code for System.Net.Mime.MimeBasePart:get_Headers():System.Collections.Specialized.NameValueCollection:this call [rax]System.Net.Mime.MimeBasePart:get_Headers():System.Collections.Specialized.NameValueCollection:this - mov rdi, 0xD1FFAB1E ; const ptr - mov rdi, gword ptr [rdi] - mov rsi, gword ptr [rdi+0x80] mov rdi, rax + mov rsi, 0xD1FFAB1E ; const ptr + mov r15, gword ptr [rsi] + mov esi, 33 + cmp esi, 7 + jbe G_M56664_IG12 + mov rsi, gword ptr [r15+0x80] mov rdx, 0xD1FFAB1E ; 'quoted-printable' mov rax, qword ptr [rax] mov rax, qword ptr [rax+0x50] - ;; size=52 bbWeight=0.50 PerfScore 6.00 + ;; size=66 bbWeight=0.50 PerfScore 6.75 G_M56664_IG08: add rsp, 8 pop rbx pop r14 pop r15 pop rbp tail.jmp [rax+0x08]System.Collections.Specialized.NameValueCollection:Set(System.String,System.String):this ;; size=14 bbWeight=0.50 PerfScore 2.12 G_M56664_IG09: mov rax, 0xD1FFAB1E ; code for System.Net.Mime.MimeBasePart:get_Headers():System.Collections.Specialized.NameValueCollection:this call [rax]System.Net.Mime.MimeBasePart:get_Headers():System.Collections.Specialized.NameValueCollection:this - mov rdi, 0xD1FFAB1E ; const ptr - mov rdi, gword ptr [rdi] - mov rsi, gword ptr [rdi+0x80] mov rdi, rax + mov rsi, 0xD1FFAB1E ; const ptr + mov r15, gword ptr [rsi] + mov esi, 33 + cmp esi, 7 + jbe G_M56664_IG12 + mov rsi, gword ptr [r15+0x80] mov rdx, 0xD1FFAB1E ; 'base64' mov rax, qword ptr [rax] mov rax, qword ptr [rax+0x50] - ;; size=52 bbWeight=0.50 PerfScore 6.00 + ;; size=66 bbWeight=0.50 PerfScore 6.75 G_M56664_IG10: add rsp, 8 pop rbx pop r14 pop r15 pop rbp tail.jmp [rax+0x08]System.Collections.Specialized.NameValueCollection:Set(System.String,System.String):this ;; size=14 bbWeight=0.50 PerfScore 2.12 G_M56664_IG11: mov rdi, 0xD1FFAB1E ; System.Net.Mime.TransferEncoding call CORINFO_HELP_NEWSFAST mov r15, rax mov rax, 0xD1FFAB1E ; code for System.SR:get_MimeTransferEncodingNotSupported():System.String call [rax]System.SR:get_MimeTransferEncodingNotSupported():System.String mov r14, rax mov dword ptr [r15+0x08], ebx mov rdi, 0xD1FFAB1E ; System.NotSupportedException call CORINFO_HELP_NEWSFAST mov rbx, rax mov rsi, r15 mov rdi, 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 mov rsi, rax mov rdi, rbx mov rax, 0xD1FFAB1E ; code for System.NotSupportedException:.ctor(System.String):this call [rax]System.NotSupportedException:.ctor(System.String):this mov rdi, rbx call CORINFO_HELP_THROW int3 ;; size=100 bbWeight=0 PerfScore 0.00 +G_M56664_IG12: + call CORINFO_HELP_RNGCHKFAIL + int3 + ;; size=6 bbWeight=0 PerfScore 0.00 -; Total bytes of code 409, prolog size 12, PerfScore 41.38, instruction count 96, allocated bytes for code 409 (MethodHash=ed4122a7) for method System.Net.Mime.MimePart:set_TransferEncoding(int):this (FullOpts) +; Total bytes of code 471, prolog size 12, PerfScore 44.38, instruction count 110, allocated bytes for code 471 (MethodHash=ed4122a7) for method System.Net.Mime.MimePart:set_TransferEncoding(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/30eafc8a6d2031c108b83bf05267c771

MihuBot commented 1 day 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; 36 single block inlinees; 9 inlinees without PGO data ; Final local variable assignments ; ; V00 this [V00,T00] ( 39, 23 ) ref -> rbx this class-hnd single-def -; 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 -> rdi +; 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" +;* V23 tmp13 [V23 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "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" -;* 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" -;* 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" -;* 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" +;* V25 tmp15 [V25 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" +;* V26 tmp16 [V26 ] ( 0, 0 ) struct ( 8) zero-ref ld-addr-op "NewObj constructor temp" +;* V27 tmp17 [V27 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" +;* V28 tmp18 [V28 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" +;* V29 tmp19 [V29 ] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp" +; V30 tmp20 [V30,T12] ( 3, 3 ) ref -> r12 class-hnd exact single-def "Inlining Arg" +; V31 tmp21 [V31,T23] ( 2, 2 ) ref -> rsi class-hnd exact single-def "Inlining Arg" +;* V32 tmp22 [V32 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" +; V33 tmp23 [V33,T24] ( 2, 2 ) ref -> rax class-hnd exact single-def "Inlining Arg" +;* V34 tmp24 [V34 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" +; V35 tmp25 [V35,T32] ( 2, 1 ) ref -> rdx class-hnd single-def "Inline return value spill temp" +; V36 tmp26 [V36,T28] ( 2, 2 ) long -> rdi "Inlining Arg" +; V37 tmp27 [V37,T25] ( 2, 2 ) ref -> rdx class-hnd exact single-def "Inlining Arg" +;* V38 tmp28 [V38 ] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp" +;* V39 tmp29 [V39 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline return value spill temp" +;* 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 +;* V42 tmp32 [V42 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" +;* V43 tmp33 [V43 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" +;* V44 tmp34 [V44 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" +;* V45 tmp35 [V45 ] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp" +; V46 tmp36 [V46,T13] ( 3, 3 ) ref -> r12 class-hnd exact single-def "Inlining Arg" +; V47 tmp37 [V47,T26] ( 2, 2 ) ref -> rsi class-hnd exact single-def "Inlining Arg" +; V48 tmp38 [V48 ] ( 2, 4 ) ref -> [rbp-0x30] do-not-enreg[X] must-init addr-exposed ld-addr-op class-hnd "Inlining Arg" +;* V49 tmp39 [V49 ] ( 0, 0 ) struct (16) zero-ref multireg-arg ld-addr-op "NewObj constructor temp" +;* V50 tmp40 [V50 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" +;* V51 tmp41 [V51 ] ( 0, 0 ) ref -> zero-ref class-hnd "dup spill" +;* V52 tmp42 [V52 ] ( 0, 0 ) ref -> zero-ref +;* V53 tmp43 [V53 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" +;* V54 tmp44 [V54 ] ( 0, 0 ) int -> zero-ref "Inlining Arg" +;* V55 tmp45 [V55 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" +;* V56 tmp46 [V56 ] ( 0, 0 ) int -> zero-ref "Inlining Arg" +;* V57 tmp47 [V57 ] ( 0, 0 ) ubyte -> zero-ref "Inlining Arg" +; V58 tmp48 [V58,T34] ( 2, 1 ) long -> rdi "field V08._dateData (fldOffset=0x0)" P-INDEP +; V59 tmp49 [V59,T35] ( 1, 1 ) byref -> rax "field V09._reference (fldOffset=0x0)" P-INDEP +; V60 tmp50 [V60,T29] ( 2, 2 ) int -> r13 "field V09._length (fldOffset=0x8)" P-INDEP +;* V61 tmp51 [V61 ] ( 0, 0 ) byref -> zero-ref "field V13._reference (fldOffset=0x0)" P-DEP +;* V62 tmp52 [V62 ] ( 0, 0 ) int -> zero-ref "field V13._length (fldOffset=0x8)" P-DEP +;* V63 tmp53 [V63 ] ( 0, 0 ) long -> zero-ref "field V24._dateData (fldOffset=0x0)" P-INDEP +;* V64 tmp54 [V64,T38] ( 0, 0 ) long -> zero-ref "field V26._ticks (fldOffset=0x0)" P-INDEP +;* V65 tmp55 [V65,T36] ( 0, 0 ) byref -> zero-ref single-def "field V49._reference (fldOffset=0x0)" P-INDEP +;* V66 tmp56 [V66,T37] ( 0, 0 ) int -> zero-ref "field V49._length (fldOffset=0x8)" P-INDEP +; V67 tmp57 [V67,T14] ( 3, 3 ) ref -> rdi single-def "argument with side effect" ; V68 tmp58 [V68,T15] ( 3, 3 ) ref -> rdi single-def "argument with side effect" ; V69 tmp59 [V69,T16] ( 3, 3 ) ref -> rdi single-def "argument with side effect" -; V70 tmp60 [V70,T17] ( 3, 3 ) ref -> rdi single-def "argument with side effect" -; V71 tmp61 [V71,T31] ( 2, 2 ) ref -> rdx single-def "argument with side effect" +; V70 tmp60 [V70,T27] ( 2, 2 ) ref -> rdx single-def "argument with side effect" +; V71 tmp61 [V71,T17] ( 3, 3 ) ref -> rdi single-def "argument with side effect" ; V72 tmp62 [V72,T18] ( 3, 3 ) ref -> rdi single-def "argument with side effect" ; V73 tmp63 [V73,T19] ( 3, 3 ) ref -> rdi single-def "argument with side effect" ; V74 tmp64 [V74,T20] ( 3, 3 ) ref -> rdi single-def "argument with side effect" -; V75 tmp65 [V75,T21] ( 3, 3 ) ref -> rsi single-def "arr expr" -; V76 tmp66 [V76,T32] ( 2, 2 ) ref -> rsi single-def "argument with side effect" -; V77 tmp67 [V77,T22] ( 3, 3 ) ref -> rdi single-def "argument with side effect" -;* V78 tmp68 [V78 ] ( 0, 0 ) ref -> zero-ref "argument with side effect" -; V79 tmp69 [V79,T08] ( 2, 4 ) ref -> rsi single-def "argument with side effect" -; V80 tmp70 [V80,T45] ( 2, 0 ) ref -> rsi single-def "argument with side effect" -; V81 cse0 [V81,T24] ( 4, 2 ) int -> rdi "CSE #05: moderate" -; V82 cse1 [V82,T36] ( 3, 1.50) int -> rdi "CSE #03: conservative" -; V83 rat0 [V83,T23] ( 3, 3.00) int -> rax "ReplaceWithLclVar is creating a new local variable" +;* V75 tmp65 [V75 ] ( 0, 0 ) ref -> zero-ref "argument with side effect" +; V76 tmp66 [V76,T07] ( 2, 4 ) ref -> rsi single-def "argument with side effect" +; V77 cse0 [V77,T22] ( 4, 2 ) int -> rdi "CSE #05: moderate" +; V78 cse1 [V78,T31] ( 3, 1.50) int -> rdi "CSE #03: conservative" +; V79 rat0 [V79,T21] ( 3, 3.00) int -> rax "ReplaceWithLclVar is creating a new local variable" ; ; Lcl frame size = 8 G_M40620_IG01: push rbp push r15 push r14 push r13 push r12 push rbx push rax lea rbp, [rsp+0x30] xor eax, eax mov qword ptr [rbp-0x30], rax mov rbx, rdi mov r13d, esi mov r15, rdx mov r14d, ecx ;; size=34 bbWeight=1 PerfScore 9.75 G_M40620_IG02: test r14b, r14b - jne G_M40620_IG30 + jne G_M40620_IG28 ;; size=9 bbWeight=1 PerfScore 1.25 G_M40620_IG03: mov rdi, gword ptr [rbx+0x28] mov rsi, 0xD1FFAB1E ; 'Server' mov rax, qword ptr [rdi] mov rax, qword ptr [rax+0x48] call [rax+0x38]System.Collections.Specialized.NameValueCollection:Get(System.String):System.String:this test rax, rax jne SHORT G_M40620_IG04 mov rdi, gword ptr [rbx+0x28] mov rsi, 0xD1FFAB1E ; 'Server' mov rdx, 0xD1FFAB1E ; 'Microsoft-NetCore/2.0' mov rax, qword ptr [rdi] mov rax, qword ptr [rax+0x50] call [rax+0x08]System.Collections.Specialized.NameValueCollection:Set(System.String,System.String):this ;; size=63 bbWeight=0.50 PerfScore 10.00 G_M40620_IG04: mov rdi, gword ptr [rbx+0x28] mov rsi, 0xD1FFAB1E ; 'Date' mov rax, qword ptr [rdi] mov rax, qword ptr [rax+0x48] call [rax+0x38]System.Collections.Specialized.NameValueCollection:Get(System.String):System.String:this test rax, rax jne SHORT G_M40620_IG05 mov r12, gword ptr [rbx+0x28] mov rax, 0xD1FFAB1E ; code for System.DateTime:get_UtcNow():System.DateTime call [rax]System.DateTime:get_UtcNow():System.DateTime mov rdi, rax - mov rcx, 0xD1FFAB1E ; const ptr - mov rdx, gword ptr [rcx] + mov rdx, 0xD1FFAB1E ; const ptr + mov rdx, gword ptr [rdx] mov rcx, 0xD1FFAB1E mov rsi, 0xD1FFAB1E ; 'r' mov rax, 0xD1FFAB1E ; code for System.DateTimeFormat:Format(System.DateTime,System.String,System.IFormatProvider,System.TimeSpan):System.String call [rax]System.DateTimeFormat:Format(System.DateTime,System.String,System.IFormatProvider,System.TimeSpan):System.String mov rdx, rax mov rdi, r12 mov rsi, 0xD1FFAB1E ; 'Date' mov rax, qword ptr [r12] mov rax, qword ptr [rax+0x50] call [rax+0x08]System.Collections.Specialized.NameValueCollection:Set(System.String,System.String):this ;; size=120 bbWeight=0.50 PerfScore 14.88 G_M40620_IG05: cmp dword ptr [rbx+0x50], 4 jne G_M40620_IG12 mov rdi, gword ptr [rbx+0x10] mov rdi, gword ptr [rdi+0x20] mov r12, gword ptr [rdi+0x20] mov rdi, 0xD1FFAB1E ; global ptr test byte ptr [rdi], 1 - je G_M40620_IG33 + je G_M40620_IG31 ;; size=41 bbWeight=0.50 PerfScore 7.12 G_M40620_IG06: mov rdi, 0xD1FFAB1E ; data for System.Net.HttpVersion:Version10 mov rsi, gword ptr [rdi] test r12, r12 je SHORT G_M40620_IG07 mov rdi, r12 mov rax, 0xD1FFAB1E ; code for System.Version:CompareTo(System.Version):int:this call [rax]System.Version:CompareTo(System.Version):int:this test eax, eax jg SHORT G_M40620_IG08 ;; size=37 bbWeight=0.50 PerfScore 4.12 G_M40620_IG07: mov byte ptr [rbx+0x58], 0 jmp SHORT G_M40620_IG09 ;; size=6 bbWeight=0.50 PerfScore 1.50 G_M40620_IG08: mov dword ptr [rbx+0x50], 1 ;; size=7 bbWeight=0.50 PerfScore 0.50 G_M40620_IG09: mov rdi, gword ptr [rbx+0x10] mov rax, 0xD1FFAB1E ; code for System.Net.HttpListenerContext:get_Response():System.Net.HttpListenerResponse:this cmp dword ptr [rdi], edi call [rax]System.Net.HttpListenerContext:get_Response():System.Net.HttpListenerResponse:this mov edi, dword ptr [rax+0x54] mov rax, 0xD1FFAB1E ; code for System.Net.HttpListenerResponse:CanSendResponseBody(int):ubyte call [rax]System.Net.HttpListenerResponse:CanSendResponseBody(int):ubyte test eax, eax jne SHORT G_M40620_IG11 xor edi, edi mov dword ptr [rbx+0x50], edi ;; size=42 bbWeight=0.50 PerfScore 8.00 G_M40620_IG10: mov qword ptr [rbx+0x48], rdi jmp SHORT G_M40620_IG12 ;; size=6 bbWeight=0.50 PerfScore 1.50 G_M40620_IG11: mov qword ptr [rbx+0x48], -1 ;; size=8 bbWeight=0.50 PerfScore 0.50 G_M40620_IG12: mov edi, dword ptr [rbx+0x50] cmp edi, 1 je G_M40620_IG14 test edi, edi setne dil movzx rdi, dil movzx rax, r13b test edi, eax je SHORT G_M40620_IG13 mov rdi, gword ptr [rbx+0x10] mov rax, 0xD1FFAB1E ; code for System.Net.HttpListenerContext:get_Response():System.Net.HttpListenerResponse:this cmp dword ptr [rdi], edi call [rax]System.Net.HttpListenerContext:get_Response():System.Net.HttpListenerResponse:this mov edi, dword ptr [rax+0x54] mov rax, 0xD1FFAB1E ; code for System.Net.HttpListenerResponse:CanSendResponseBody(int):ubyte call [rax]System.Net.HttpListenerResponse:CanSendResponseBody(int):ubyte mov edi, -1 xor edx, edx test eax, eax cmove edi, edx movsxd rdi, edi mov qword ptr [rbx+0x48], rdi ;; size=82 bbWeight=0.50 PerfScore 11.00 G_M40620_IG13: cmp dword ptr [rbx+0x50], 0 jne SHORT G_M40620_IG14 mov r13, gword ptr [rbx+0x28] - lea rdi, bword ptr [rbx+0x48] + mov rdi, qword ptr [rbx+0x48] mov rdx, 0xD1FFAB1E ; const ptr mov rdx, gword ptr [rdx] - mov rdi, qword ptr [rdi] mov rsi, 0xD1FFAB1E ; 'D' mov rax, 0xD1FFAB1E ; code for System.Number: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/738748c112e68d46e486571ac97fcf41

MihuBot commented 1 day ago

@MichalPetryka