MihuBot / runtime-utils

0 stars 0 forks source link

[ARM64] MihaZupan/runtime/list-rng #202

Open MihuBot opened 9 months ago

MihuBot commented 9 months ago

Build completed in 36 minutes.

CoreLib diffs

Found 2 files with textual diffs.

Summary of Code Size diffs:
(Lower is better)

Total bytes of base: 7947036
Total bytes of diff: 7946472
Total bytes of delta: -564 (-0.01 % of base)
Total relative delta: -2.36
    diff is an improvement.
    relative diff is an improvement.

Top file improvements (bytes):
        -564 : System.Private.CoreLib.dasm (-0.007% of base)

1 total files with Code Size differences (1 improved, 0 regressed), 0 unchanged.

Top method regressions (bytes):
           8 (0.784% of base) : System.Private.CoreLib.dasm - System.Globalization.CalendarData:FixDefaultShortDatePattern(System.Collections.Generic.List`1[System.String]) (FullOpts)
           8 (0.508% of base) : System.Private.CoreLib.dasm - System.Globalization.JapaneseCalendar:IcuGetJapaneseEras():System.Globalization.EraInfo[] (FullOpts)
           4 (0.917% of base) : System.Private.CoreLib.dasm - System.Threading.Tasks.TaskExceptionHolder:CreateExceptionObject(ubyte,System.Exception):System.AggregateException:this (FullOpts)

Top method improvements (bytes):
        -160 (-8.097% of base) : System.Private.CoreLib.dasm - System.Threading.Tasks.Task:RunContinuations(System.Object):this (FullOpts)
         -24 (-2.239% of base) : System.Private.CoreLib.dasm - System.Collections.ObjectModel.ReadOnlyDictionary`2[long,System.Nullable`1[int]]:System.Collections.ICollection.CopyTo(System.Array,int):this (FullOpts)
         -16 (-13.333% of base) : System.Private.CoreLib.dasm - System.Collections.Generic.List`1[double]:System.Collections.IList.get_Item(int):System.Object:this (FullOpts)
         -16 (-13.333% of base) : System.Private.CoreLib.dasm - System.Collections.Generic.List`1[int]:System.Collections.IList.get_Item(int):System.Object:this (FullOpts)
         -16 (-13.333% of base) : System.Private.CoreLib.dasm - System.Collections.Generic.List`1[long]:System.Collections.IList.get_Item(int):System.Object:this (FullOpts)
         -16 (-13.333% of base) : System.Private.CoreLib.dasm - System.Collections.Generic.List`1[short]:System.Collections.IList.get_Item(int):System.Object:this (FullOpts)
         -16 (-13.333% of base) : System.Private.CoreLib.dasm - System.Collections.Generic.List`1[ubyte]:System.Collections.IList.get_Item(int):System.Object:this (FullOpts)
         -12 (-4.225% of base) : System.Private.CoreLib.dasm - System.AggregateException:.ctor(System.String,System.Collections.Generic.List`1[System.Runtime.ExceptionServices.ExceptionDispatchInfo]):this (FullOpts)
          -8 (-0.806% of base) : System.Private.CoreLib.dasm - System.AggregateException:Flatten():System.AggregateException:this (FullOpts)
          -8 (-9.524% of base) : System.Private.CoreLib.dasm - System.Collections.Generic.List`1[double]:get_Item(int):double:this (FullOpts)
          -8 (-9.524% of base) : System.Private.CoreLib.dasm - System.Collections.Generic.List`1[int]:get_Item(int):int:this (FullOpts)
          -8 (-9.524% of base) : System.Private.CoreLib.dasm - System.Collections.Generic.List`1[long]:get_Item(int):long:this (FullOpts)
          -8 (-9.524% of base) : System.Private.CoreLib.dasm - System.Collections.Generic.List`1[short]:get_Item(int):short:this (FullOpts)
          -8 (-9.524% of base) : System.Private.CoreLib.dasm - System.Collections.Generic.List`1[System.__Canon]:get_Item(int):System.__Canon:this (FullOpts)
          -8 (-9.524% of base) : System.Private.CoreLib.dasm - System.Collections.Generic.List`1[System.__Canon]:System.Collections.IList.get_Item(int):System.Object:this (FullOpts)
          -8 (-9.091% of base) : System.Private.CoreLib.dasm - System.Collections.Generic.List`1[System.Nullable`1[int]]:get_Item(int):System.Nullable`1[int]:this (FullOpts)
          -8 (-7.143% of base) : System.Private.CoreLib.dasm - System.Collections.Generic.List`1[System.Nullable`1[int]]:System.Collections.IList.get_Item(int):System.Object:this (FullOpts)
          -8 (-9.091% of base) : System.Private.CoreLib.dasm - System.Collections.Generic.List`1[System.Numerics.Vector`1[float]]:get_Item(int):System.Numerics.Vector`1[float]:this (FullOpts)
          -8 (-6.452% of base) : System.Private.CoreLib.dasm - System.Collections.Generic.List`1[System.Numerics.Vector`1[float]]:System.Collections.IList.get_Item(int):System.Object:this (FullOpts)
          -8 (-9.524% of base) : System.Private.CoreLib.dasm - System.Collections.Generic.List`1[ubyte]:get_Item(int):ubyte:this (FullOpts)
          -8 (-2.000% of base) : System.Private.CoreLib.dasm - System.Globalization.CalendarData:EnumDatePatterns(System.String,ushort,int,byref):ubyte (FullOpts)
          -8 (-1.724% of base) : System.Private.CoreLib.dasm - System.Globalization.CalendarData:EnumMonthNames(System.String,ushort,int,byref,byref):ubyte (FullOpts)
          -8 (-2.597% of base) : System.Private.CoreLib.dasm - System.Reflection.Emit.DynamicILGenerator:GetCallableMethod(System.Reflection.RuntimeModule,System.Reflection.Emit.DynamicMethod):this (FullOpts)
          -8 (-2.740% of base) : System.Private.CoreLib.dasm - System.Reflection.Emit.DynamicILInfo:GetCallableMethod(System.Reflection.RuntimeModule,System.Reflection.Emit.DynamicMethod):this (FullOpts)
          -8 (-5.263% of base) : System.Private.CoreLib.dasm - System.Reflection.Emit.DynamicResolver:GetStringLiteral(int):System.String:this (FullOpts)
          -8 (-6.897% of base) : System.Private.CoreLib.dasm - System.Reflection.Emit.DynamicScope:get_Item(int):System.Object:this (FullOpts)
          -8 (-5.556% of base) : System.Private.CoreLib.dasm - System.Reflection.Emit.DynamicScope:GetString(int):System.String:this (FullOpts)
          -8 (-2.532% of base) : System.Private.CoreLib.dasm - System.Reflection.Emit.DynamicScope:ResolveSignature(int,int):ubyte[]:this (FullOpts)
          -8 (-1.724% of base) : System.Private.CoreLib.dasm - System.Reflection.Emit.RuntimeMethodBuilder:GetToken():int:this (FullOpts)
          -8 (-0.545% of base) : System.Private.CoreLib.dasm - System.Reflection.Emit.TypeNameBuilder:AddAssemblyQualifiedName(System.Type,int):this (FullOpts)
          -8 (-4.167% of base) : System.Private.CoreLib.dasm - System.Reflection.Emit.TypeNameBuilder:PopOpenGenericArgument():this (FullOpts)
          -8 (-1.047% of base) : System.Private.CoreLib.dasm - System.StartupHookProvider:ProcessStartupHooks(System.String) (FullOpts)
          -8 (-0.513% of base) : System.Private.CoreLib.dasm - System.Threading.Tasks.UnwrapPromise`1[double]:TrySetFromTask(System.Threading.Tasks.Task,ubyte):ubyte:this (FullOpts)
          -8 (-0.513% of base) : System.Private.CoreLib.dasm - System.Threading.Tasks.UnwrapPromise`1[int]:TrySetFromTask(System.Threading.Tasks.Task,ubyte):ubyte:this (FullOpts)
          -8 (-0.513% of base) : System.Private.CoreLib.dasm - System.Threading.Tasks.UnwrapPromise`1[long]:TrySetFromTask(System.Threading.Tasks.Task,ubyte):ubyte:this (FullOpts)
          -8 (-0.512% of base) : System.Private.CoreLib.dasm - System.Threading.Tasks.UnwrapPromise`1[short]:TrySetFromTask(System.Threading.Tasks.Task,ubyte):ubyte:this (FullOpts)
          -8 (-0.501% of base) : System.Private.CoreLib.dasm - System.Threading.Tasks.UnwrapPromise`1[System.__Canon]:TrySetFromTask(System.Threading.Tasks.Task,ubyte):ubyte:this (FullOpts)
          -8 (-0.506% of base) : System.Private.CoreLib.dasm - System.Threading.Tasks.UnwrapPromise`1[System.Nullable`1[int]]:TrySetFromTask(System.Threading.Tasks.Task,ubyte):ubyte:this (FullOpts)
          -8 (-0.512% of base) : System.Private.CoreLib.dasm - System.Threading.Tasks.UnwrapPromise`1[ubyte]:TrySetFromTask(System.Threading.Tasks.Task,ubyte):ubyte:this (FullOpts)
          -4 (-4.762% of base) : System.Private.CoreLib.dasm - System.Collections.ObjectModel.ReadOnlyDictionary`2[long,System.Nullable`1[int]]:System.Collections.ICollection.get_SyncRoot():System.Object:this (FullOpts)
          -4 (-2.273% of base) : System.Private.CoreLib.dasm - System.Diagnostics.DebugProvider:.cctor() (FullOpts)
          -4 (-0.532% of base) : System.Private.CoreLib.dasm - System.Diagnostics.Tracing.EventListener:AddEventSource(System.Diagnostics.Tracing.EventSource) (FullOpts)
          -4 (-0.478% of base) : System.Private.CoreLib.dasm - System.Reflection.Emit.DynamicResolver:ResolveToken(int,byref,byref,byref):this (FullOpts)
          -4 (-1.010% of base) : System.Private.CoreLib.dasm - System.Runtime.CompilerServices.TaskAwaiter:ThrowForNonSuccess(System.Threading.Tasks.Task) (FullOpts)
          -4 (-0.228% of base) : System.Private.CoreLib.dasm - System.Threading.Tasks.UnwrapPromise`1[System.Numerics.Vector`1[float]]:TrySetFromTask(System.Threading.Tasks.Task,ubyte):ubyte:this (FullOpts)
          -4 (-0.926% of base) : System.Private.CoreLib.dasm - System.Threading.ThreadLocal`1+IdManager[double]:GetId(ubyte):int:this (FullOpts)
          -4 (-0.926% of base) : System.Private.CoreLib.dasm - System.Threading.ThreadLocal`1+IdManager[int]:GetId(ubyte):int:this (FullOpts)
          -4 (-0.926% of base) : System.Private.CoreLib.dasm - System.Threading.ThreadLocal`1+IdManager[long]:GetId(ubyte):int:this (FullOpts)
          -4 (-0.926% of base) : System.Private.CoreLib.dasm - System.Threading.ThreadLocal`1+IdManager[short]:GetId(ubyte):int:this (FullOpts)
          -4 (-0.926% of base) : System.Private.CoreLib.dasm - System.Threading.ThreadLocal`1+IdManager[System.__Canon]:GetId(ubyte):int:this (FullOpts)
          -4 (-0.926% of base) : System.Private.CoreLib.dasm - System.Threading.ThreadLocal`1+IdManager[System.Nullable`1[int]]:GetId(ubyte):int:this (FullOpts)
          -4 (-0.926% of base) : System.Private.CoreLib.dasm - System.Threading.ThreadLocal`1+IdManager[System.Numerics.Vector`1[float]]:GetId(ubyte):int:this (FullOpts)
          -4 (-0.926% of base) : System.Private.CoreLib.dasm - System.Threading.ThreadLocal`1+IdManager[ubyte]:GetId(ubyte):int:this (FullOpts)
          -4 (-0.321% of base) : System.Private.CoreLib.dasm - System.Threading.TimerQueue:TimerThread() (FullOpts)

Top method regressions (percentages):
           4 (0.917% of base) : System.Private.CoreLib.dasm - System.Threading.Tasks.TaskExceptionHolder:CreateExceptionObject(ubyte,System.Exception):System.AggregateException:this (FullOpts)
           8 (0.784% of base) : System.Private.CoreLib.dasm - System.Globalization.CalendarData:FixDefaultShortDatePattern(System.Collections.Generic.List`1[System.String]) (FullOpts)
           8 (0.508% of base) : System.Private.CoreLib.dasm - System.Globalization.JapaneseCalendar:IcuGetJapaneseEras():System.Globalization.EraInfo[] (FullOpts)

Top method improvements (percentages):
         -16 (-13.333% of base) : System.Private.CoreLib.dasm - System.Collections.Generic.List`1[double]:System.Collections.IList.get_Item(int):System.Object:this (FullOpts)
         -16 (-13.333% of base) : System.Private.CoreLib.dasm - System.Collections.Generic.List`1[int]:System.Collections.IList.get_Item(int):System.Object:this (FullOpts)
         -16 (-13.333% of base) : System.Private.CoreLib.dasm - System.Collections.Generic.List`1[long]:System.Collections.IList.get_Item(int):System.Object:this (FullOpts)
         -16 (-13.333% of base) : System.Private.CoreLib.dasm - System.Collections.Generic.List`1[short]:System.Collections.IList.get_Item(int):System.Object:this (FullOpts)
         -16 (-13.333% of base) : System.Private.CoreLib.dasm - System.Collections.Generic.List`1[ubyte]:System.Collections.IList.get_Item(int):System.Object:this (FullOpts)
          -8 (-9.524% of base) : System.Private.CoreLib.dasm - System.Collections.Generic.List`1[double]:get_Item(int):double:this (FullOpts)
          -8 (-9.524% of base) : System.Private.CoreLib.dasm - System.Collections.Generic.List`1[int]:get_Item(int):int:this (FullOpts)
          -8 (-9.524% of base) : System.Private.CoreLib.dasm - System.Collections.Generic.List`1[long]:get_Item(int):long:this (FullOpts)
          -8 (-9.524% of base) : System.Private.CoreLib.dasm - System.Collections.Generic.List`1[short]:get_Item(int):short:this (FullOpts)
          -8 (-9.524% of base) : System.Private.CoreLib.dasm - System.Collections.Generic.List`1[System.__Canon]:get_Item(int):System.__Canon:this (FullOpts)
          -8 (-9.524% of base) : System.Private.CoreLib.dasm - System.Collections.Generic.List`1[System.__Canon]:System.Collections.IList.get_Item(int):System.Object:this (FullOpts)
          -8 (-9.524% of base) : System.Private.CoreLib.dasm - System.Collections.Generic.List`1[ubyte]:get_Item(int):ubyte:this (FullOpts)
          -8 (-9.091% of base) : System.Private.CoreLib.dasm - System.Collections.Generic.List`1[System.Nullable`1[int]]:get_Item(int):System.Nullable`1[int]:this (FullOpts)
          -8 (-9.091% of base) : System.Private.CoreLib.dasm - System.Collections.Generic.List`1[System.Numerics.Vector`1[float]]:get_Item(int):System.Numerics.Vector`1[float]:this (FullOpts)
        -160 (-8.097% of base) : System.Private.CoreLib.dasm - System.Threading.Tasks.Task:RunContinuations(System.Object):this (FullOpts)
          -8 (-7.143% of base) : System.Private.CoreLib.dasm - System.Collections.Generic.List`1[System.Nullable`1[int]]:System.Collections.IList.get_Item(int):System.Object:this (FullOpts)
          -8 (-6.897% of base) : System.Private.CoreLib.dasm - System.Reflection.Emit.DynamicScope:get_Item(int):System.Object:this (FullOpts)
          -8 (-6.452% of base) : System.Private.CoreLib.dasm - System.Collections.Generic.List`1[System.Numerics.Vector`1[float]]:System.Collections.IList.get_Item(int):System.Object:this (FullOpts)
          -8 (-5.556% of base) : System.Private.CoreLib.dasm - System.Reflection.Emit.DynamicScope:GetString(int):System.String:this (FullOpts)
          -8 (-5.263% of base) : System.Private.CoreLib.dasm - System.Reflection.Emit.DynamicResolver:GetStringLiteral(int):System.String:this (FullOpts)
          -4 (-4.762% of base) : System.Private.CoreLib.dasm - System.Collections.ObjectModel.ReadOnlyDictionary`2[long,System.Nullable`1[int]]:System.Collections.ICollection.get_SyncRoot():System.Object:this (FullOpts)
         -12 (-4.225% of base) : System.Private.CoreLib.dasm - System.AggregateException:.ctor(System.String,System.Collections.Generic.List`1[System.Runtime.ExceptionServices.ExceptionDispatchInfo]):this (FullOpts)
          -8 (-4.167% of base) : System.Private.CoreLib.dasm - System.Reflection.Emit.TypeNameBuilder:PopOpenGenericArgument():this (FullOpts)
          -8 (-2.740% of base) : System.Private.CoreLib.dasm - System.Reflection.Emit.DynamicILInfo:GetCallableMethod(System.Reflection.RuntimeModule,System.Reflection.Emit.DynamicMethod):this (FullOpts)
          -8 (-2.597% of base) : System.Private.CoreLib.dasm - System.Reflection.Emit.DynamicILGenerator:GetCallableMethod(System.Reflection.RuntimeModule,System.Reflection.Emit.DynamicMethod):this (FullOpts)
          -8 (-2.532% of base) : System.Private.CoreLib.dasm - System.Reflection.Emit.DynamicScope:ResolveSignature(int,int):ubyte[]:this (FullOpts)
          -4 (-2.273% of base) : System.Private.CoreLib.dasm - System.Diagnostics.DebugProvider:.cctor() (FullOpts)
         -24 (-2.239% of base) : System.Private.CoreLib.dasm - System.Collections.ObjectModel.ReadOnlyDictionary`2[long,System.Nullable`1[int]]:System.Collections.ICollection.CopyTo(System.Array,int):this (FullOpts)
          -8 (-2.000% of base) : System.Private.CoreLib.dasm - System.Globalization.CalendarData:EnumDatePatterns(System.String,ushort,int,byref):ubyte (FullOpts)
          -8 (-1.724% of base) : System.Private.CoreLib.dasm - System.Globalization.CalendarData:EnumMonthNames(System.String,ushort,int,byref,byref):ubyte (FullOpts)
          -8 (-1.724% of base) : System.Private.CoreLib.dasm - System.Reflection.Emit.RuntimeMethodBuilder:GetToken():int:this (FullOpts)
          -8 (-1.047% of base) : System.Private.CoreLib.dasm - System.StartupHookProvider:ProcessStartupHooks(System.String) (FullOpts)
          -4 (-1.010% of base) : System.Private.CoreLib.dasm - System.Runtime.CompilerServices.TaskAwaiter:ThrowForNonSuccess(System.Threading.Tasks.Task) (FullOpts)
          -4 (-0.926% of base) : System.Private.CoreLib.dasm - System.Threading.ThreadLocal`1+IdManager[double]:GetId(ubyte):int:this (FullOpts)
          -4 (-0.926% of base) : System.Private.CoreLib.dasm - System.Threading.ThreadLocal`1+IdManager[int]:GetId(ubyte):int:this (FullOpts)
          -4 (-0.926% of base) : System.Private.CoreLib.dasm - System.Threading.ThreadLocal`1+IdManager[long]:GetId(ubyte):int:this (FullOpts)
          -4 (-0.926% of base) : System.Private.CoreLib.dasm - System.Threading.ThreadLocal`1+IdManager[short]:GetId(ubyte):int:this (FullOpts)
          -4 (-0.926% of base) : System.Private.CoreLib.dasm - System.Threading.ThreadLocal`1+IdManager[System.__Canon]:GetId(ubyte):int:this (FullOpts)
          -4 (-0.926% of base) : System.Private.CoreLib.dasm - System.Threading.ThreadLocal`1+IdManager[System.Nullable`1[int]]:GetId(ubyte):int:this (FullOpts)
          -4 (-0.926% of base) : System.Private.CoreLib.dasm - System.Threading.ThreadLocal`1+IdManager[System.Numerics.Vector`1[float]]:GetId(ubyte):int:this (FullOpts)
          -4 (-0.926% of base) : System.Private.CoreLib.dasm - System.Threading.ThreadLocal`1+IdManager[ubyte]:GetId(ubyte):int:this (FullOpts)
          -8 (-0.806% of base) : System.Private.CoreLib.dasm - System.AggregateException:Flatten():System.AggregateException:this (FullOpts)
          -8 (-0.545% of base) : System.Private.CoreLib.dasm - System.Reflection.Emit.TypeNameBuilder:AddAssemblyQualifiedName(System.Type,int):this (FullOpts)
          -4 (-0.532% of base) : System.Private.CoreLib.dasm - System.Diagnostics.Tracing.EventListener:AddEventSource(System.Diagnostics.Tracing.EventSource) (FullOpts)
          -8 (-0.513% of base) : System.Private.CoreLib.dasm - System.Threading.Tasks.UnwrapPromise`1[double]:TrySetFromTask(System.Threading.Tasks.Task,ubyte):ubyte:this (FullOpts)
          -8 (-0.513% of base) : System.Private.CoreLib.dasm - System.Threading.Tasks.UnwrapPromise`1[int]:TrySetFromTask(System.Threading.Tasks.Task,ubyte):ubyte:this (FullOpts)
          -8 (-0.513% of base) : System.Private.CoreLib.dasm - System.Threading.Tasks.UnwrapPromise`1[long]:TrySetFromTask(System.Threading.Tasks.Task,ubyte):ubyte:this (FullOpts)
          -8 (-0.512% of base) : System.Private.CoreLib.dasm - System.Threading.Tasks.UnwrapPromise`1[short]:TrySetFromTask(System.Threading.Tasks.Task,ubyte):ubyte:this (FullOpts)
          -8 (-0.512% of base) : System.Private.CoreLib.dasm - System.Threading.Tasks.UnwrapPromise`1[ubyte]:TrySetFromTask(System.Threading.Tasks.Task,ubyte):ubyte:this (FullOpts)
          -8 (-0.506% of base) : System.Private.CoreLib.dasm - System.Threading.Tasks.UnwrapPromise`1[System.Nullable`1[int]]:TrySetFromTask(System.Threading.Tasks.Task,ubyte):ubyte:this (FullOpts)
          -8 (-0.501% of base) : System.Private.CoreLib.dasm - System.Threading.Tasks.UnwrapPromise`1[System.__Canon]:TrySetFromTask(System.Threading.Tasks.Task,ubyte):ubyte:this (FullOpts)
          -4 (-0.478% of base) : System.Private.CoreLib.dasm - System.Reflection.Emit.DynamicResolver:ResolveToken(int,byref,byref,byref):this (FullOpts)
          -4 (-0.321% of base) : System.Private.CoreLib.dasm - System.Threading.TimerQueue:TimerThread() (FullOpts)
          -4 (-0.228% of base) : System.Private.CoreLib.dasm - System.Threading.Tasks.UnwrapPromise`1[System.Numerics.Vector`1[float]]:TrySetFromTask(System.Threading.Tasks.Task,ubyte):ubyte:this (FullOpts)

57 total methods with Code Size differences (54 improved, 3 regressed), 54872 unchanged.

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

Frameworks diffs

Diffs ``` Found 358 files with textual diffs. Summary of Code Size diffs: (Lower is better) Total bytes of base: 46149244 Total bytes of diff: 46144308 Total bytes of delta: -4936 (-0.01 % of base) Total relative delta: -20.31 diff is an improvement. relative diff is an improvement. Top file regressions (bytes): 2288 : System.Security.Cryptography.dasm (0.179% of base) 84 : System.Reflection.Metadata.dasm (0.012% of base) 84 : System.ComponentModel.Composition.dasm (0.015% of base) 48 : System.Collections.Immutable.dasm (0.002% of base) 24 : System.ServiceModel.Syndication.dasm (0.012% of base) 4 : System.Threading.RateLimiting.dasm (0.002% of base) Top file improvements (bytes): -1560 : System.Text.RegularExpressions.dasm (-0.184% of base) -704 : System.Linq.dasm (-0.051% of base) -564 : System.Private.Xml.dasm (-0.011% of base) -556 : System.Private.CoreLib.dasm (-0.007% of base) -412 : System.Data.Common.dasm (-0.020% of base) -360 : System.Text.Json.dasm (-0.023% of base) -312 : System.Diagnostics.DiagnosticSource.dasm (-0.108% of base) -248 : System.ComponentModel.TypeConverter.dasm (-0.064% of base) -224 : ILCompiler.Reflection.ReadyToRun.dasm (-0.078% of base) -220 : System.Security.Cryptography.Xml.dasm (-0.084% of base) -220 : System.Linq.Parallel.dasm (-0.009% of base) -208 : Microsoft.Extensions.Logging.Abstractions.dasm (-0.223% of base) -196 : System.Linq.Expressions.dasm (-0.017% of base) -192 : System.ObjectModel.dasm (-0.213% of base) -176 : System.Private.DataContractSerialization.dasm (-0.014% of base) -128 : System.Data.Odbc.dasm (-0.043% of base) -128 : System.Collections.dasm (-0.018% of base) -128 : Microsoft.CSharp.dasm (-0.031% of base) -116 : System.Threading.Tasks.Dataflow.dasm (-0.007% of base) -104 : System.Diagnostics.TraceSource.dasm (-0.159% of base) -96 : Microsoft.VisualBasic.Core.dasm (-0.014% of base) -56 : System.Resources.Extensions.dasm (-0.129% of base) -52 : System.Security.Cryptography.Pkcs.dasm (-0.011% of base) -48 : System.Security.Claims.dasm (-0.169% of base) -40 : System.Net.Http.dasm (-0.004% of base) -40 : System.Net.NetworkInformation.dasm (-0.060% of base) -36 : Microsoft.Extensions.DependencyInjection.dasm (-0.038% of base) -32 : Microsoft.Extensions.Caching.Memory.dasm (-0.127% of base) -32 : System.Net.Primitives.dasm (-0.028% of base) -28 : Microsoft.Extensions.Configuration.Xml.dasm (-0.217% of base) -28 : System.Configuration.ConfigurationManager.dasm (-0.005% of base) -20 : System.ComponentModel.Annotations.dasm (-0.030% of base) -16 : Microsoft.Extensions.Logging.TraceSource.dasm (-0.141% of base) -16 : Microsoft.Extensions.Hosting.dasm (-0.017% of base) -16 : System.Net.Requests.dasm (-0.009% of base) -16 : System.Net.HttpListener.dasm (-0.012% of base) -16 : System.Reflection.Emit.dasm (-0.022% of base) -16 : Microsoft.Extensions.Http.dasm (-0.020% of base) -12 : System.Net.Security.dasm (-0.004% of base) -12 : System.Reflection.DispatchProxy.dasm (-0.052% of base) -8 : System.IO.Pipelines.dasm (-0.009% of base) -8 : System.Formats.Cbor.dasm (-0.013% of base) -8 : Microsoft.Extensions.FileProviders.Composite.dasm (-0.289% of base) -8 : Microsoft.Extensions.Primitives.dasm (-0.022% of base) -8 : System.IO.Packaging.dasm (-0.006% of base) -8 : Microsoft.Extensions.Configuration.dasm (-0.029% of base) -8 : System.Reflection.Context.dasm (-0.010% of base) -8 : Microsoft.Extensions.DependencyInjection.Abstractions.dasm (-0.010% of base) -4 : System.Runtime.Serialization.Formatters.dasm (-0.003% of base) -4 : System.Net.Mail.dasm (-0.002% of base) -4 : Microsoft.Extensions.Options.dasm (-0.010% of base) -4 : Microsoft.Extensions.FileSystemGlobbing.dasm (-0.011% of base) -4 : Microsoft.Extensions.Diagnostics.dasm (-0.017% of base) 59 total files with Code Size differences (53 improved, 6 regressed), 197 unchanged. Top method regressions (bytes): 100 (2.806% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.CryptoStream+d__44:MoveNext():this (FullOpts) 76 (0.828% of base) : Microsoft.CSharp.dasm - Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder:bindUserDefinedConversion(Microsoft.CSharp.RuntimeBinder.Semantics.Expr,Microsoft.CSharp.RuntimeBinder.Semantics.CType,Microsoft.CSharp.RuntimeBinder.Semantics.CType,ubyte,byref,ubyte):ubyte:this (FullOpts) 68 (9.942% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.ECDsa:SignHashCore(System.ReadOnlySpan`1[ubyte],int):ubyte[]:this (FullOpts) 56 (12.500% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.DSA:HashSpanToArray(System.ReadOnlySpan`1[ubyte],System.Security.Cryptography.HashAlgorithmName):ubyte[]:this (FullOpts) 56 (12.500% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.ECDsa:HashSpanToArray(System.ReadOnlySpan`1[ubyte],System.Security.Cryptography.HashAlgorithmName):ubyte[]:this (FullOpts) 56 (4.762% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.SP800108HmacCounterKdfImplementationManaged:DeriveBytesOneShot(System.ReadOnlySpan`1[ubyte],System.Security.Cryptography.HashAlgorithmName,System.ReadOnlySpan`1[ushort],System.ReadOnlySpan`1[ushort],System.Span`1[ubyte]) (FullOpts) 52 (7.345% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.ECDsa:SignDataCore(System.ReadOnlySpan`1[ubyte],System.Security.Cryptography.HashAlgorithmName,int):ubyte[]:this (FullOpts) 52 (9.353% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.X509Certificates.CertificateRequest:NormalizeSerialNumber(System.ReadOnlySpan`1[ubyte]):System.ArraySegment`1[ubyte] (FullOpts) 48 (1.326% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.CryptoStream+d__53:MoveNext():this (FullOpts) 48 (3.704% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.HashAlgorithm+d__16:MoveNext():this (FullOpts) 48 (6.742% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.RSAOpenSsl:TryDecrypt(System.ReadOnlySpan`1[ubyte],System.Span`1[ubyte],System.Security.Cryptography.RSAEncryptionPadding,byref):ubyte:this (FullOpts) 48 (4.412% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.UniversalCryptoDecryptor:UncheckedTransformFinalBlock(System.ReadOnlySpan`1[ubyte],System.Span`1[ubyte]):int:this (FullOpts) 48 (3.846% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.X509Certificates.CertificateRequest:LoadSigningRequestPem(System.ReadOnlySpan`1[ushort],System.Security.Cryptography.HashAlgorithmName,int,System.Security.Cryptography.RSASignaturePadding):System.Security.Cryptography.X509Certificates.CertificateRequest (FullOpts) 48 (1.824% of base) : System.Text.RegularExpressions.dasm - System.Text.RegularExpressions.RegexPrefixAnalyzer:FindLeadingOrTrailingAnchor(System.Text.RegularExpressions.RegexNode,ubyte):ubyte (FullOpts) (2 methods) 44 (5.670% of base) : System.Data.Common.dasm - System.Data.Common.DbDataAdapter:FillInternal(System.Data.DataSet,System.Data.DataTable[],int,int,System.String,System.Data.IDbCommand,int):int:this (FullOpts) 44 (8.271% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.CryptoStream:Write(System.ReadOnlySpan`1[ubyte]):this (FullOpts) 44 (2.119% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.CryptoStream+d__56:MoveNext():this (FullOpts) 44 (9.565% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.RandomNumberGenerator:GetBytes(System.Span`1[ubyte]):this (FullOpts) 44 (9.735% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.RandomNumberGenerator:GetNonZeroBytes(System.Span`1[ubyte]):this (FullOpts) 36 (4.091% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.CryptoStream:g__TransformBlock|53_0(System.Security.Cryptography.ICryptoTransform,System.ReadOnlyMemory`1[ubyte],ubyte[],int):int (FullOpts) 36 (5.056% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.ECDsa:TryHashData(System.ReadOnlySpan`1[ubyte],System.Span`1[ubyte],System.Security.Cryptography.HashAlgorithmName,byref):ubyte:this (FullOpts) 36 (3.734% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.Rfc2898DeriveBytes:Pbkdf2Core(System.ReadOnlySpan`1[ushort],System.ReadOnlySpan`1[ubyte],System.Span`1[ubyte],int,System.Security.Cryptography.HashAlgorithmName) (FullOpts) 36 (6.475% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.SymmetricAlgorithm:DecryptCbc(System.ReadOnlySpan`1[ubyte],System.ReadOnlySpan`1[ubyte],int):ubyte[]:this (FullOpts) 36 (0.564% of base) : System.Text.RegularExpressions.dasm - System.Text.RegularExpressions.RegexCompiler:g__EmitFixedSet_LeftToRight|156_3(byref):this (FullOpts) 32 (4.324% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.RSA:TryHashData(System.ReadOnlySpan`1[ubyte],System.Span`1[ubyte],System.Security.Cryptography.HashAlgorithmName,byref):ubyte:this (FullOpts) 32 (1.937% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.X509Certificates.UnixExportProvider:EncodeAuthSafe(System.Formats.Asn1.AsnWriter,System.ReadOnlyMemory`1[ubyte],System.ReadOnlyMemory`1[ubyte],ubyte,System.String,System.String,System.Span`1[ubyte],System.Span`1[ubyte]):System.ArraySegment`1[ubyte] (FullOpts) 28 (12.963% of base) : System.Security.Cryptography.dasm - System.Formats.Asn1.AsnWriterExtensions:RentAndEncode(System.Formats.Asn1.AsnWriter):System.ArraySegment`1[ubyte] (FullOpts) 28 (7.292% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.HashAlgorithm:ComputeHash(System.IO.Stream):ubyte[]:this (FullOpts) 28 (3.646% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.PemKeyHelpers:TryExportToEncryptedPem[System.Numerics.Vector`1[float],System.Nullable`1[int]](System.Numerics.Vector`1[float],System.ReadOnlySpan`1[System.Nullable`1[int]],System.Security.Cryptography.PbeParameters,System.Security.Cryptography.PemKeyHelpers+TryExportEncryptedKeyAction`2[System.Numerics.Vector`1[float],System.Nullable`1[int]],System.Span`1[ushort],byref):ubyte (FullOpts) 28 (3.763% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.PemKeyHelpers:TryExportToPem[System.Numerics.Vector`1[float]](System.Numerics.Vector`1[float],System.String,System.Security.Cryptography.PemKeyHelpers+TryExportKeyAction`1[System.Numerics.Vector`1[float]],System.Span`1[ushort],byref):ubyte (FullOpts) 28 (3.665% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.RSA:TryWithKeyBuffer[int](System.ReadOnlySpan`1[ubyte],int,System.Security.Cryptography.RSA+TryFunc`1[int],ubyte):ubyte[]:this (FullOpts) 28 (3.665% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.RSA:TryWithKeyBuffer[long](System.ReadOnlySpan`1[ubyte],long,System.Security.Cryptography.RSA+TryFunc`1[long],ubyte):ubyte[]:this (FullOpts) 28 (3.665% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.RSA:TryWithKeyBuffer[short](System.ReadOnlySpan`1[ubyte],short,System.Security.Cryptography.RSA+TryFunc`1[short],ubyte):ubyte[]:this (FullOpts) 28 (3.665% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.RSA:TryWithKeyBuffer[System.__Canon](System.ReadOnlySpan`1[ubyte],System.__Canon,System.Security.Cryptography.RSA+TryFunc`1[System.__Canon],ubyte):ubyte[]:this (FullOpts) 28 (3.665% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.RSA:TryWithKeyBuffer[ubyte](System.ReadOnlySpan`1[ubyte],ubyte,System.Security.Cryptography.RSA+TryFunc`1[ubyte],ubyte):ubyte[]:this (FullOpts) 28 (3.571% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.UniversalCryptoDecryptor:UncheckedTransformFinalBlock(ubyte[],int,int):ubyte[]:this (FullOpts) 28 (1.133% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.UniversalCryptoOneShot:OneShotDecrypt(System.Security.Cryptography.ILiteSymmetricCipher,int,System.ReadOnlySpan`1[ubyte],System.Span`1[ubyte],byref):ubyte (FullOpts) 28 (4.965% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.X509Certificates.ManagedX509ExtensionProcessor:ComputeCapiSha1OfPublicKey(System.Security.Cryptography.X509Certificates.PublicKey):ubyte[]:this (FullOpts) 28 (4.605% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.X509Certificates.UnixExportProvider:EncodeKeys(System.Formats.Asn1.AsnWriter,System.Security.Cryptography.Asn1.Pkcs12.SafeBagAsn[],int):System.ArraySegment`1[ubyte] (FullOpts) 28 (13.208% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.X509Certificates.UnixPkcs12Reader:GrowIfNeeded[ubyte](byref,int) (FullOpts) 24 (1.290% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.Asn1.Pkcs12.PfxAsn:DecryptContentInfo(System.Security.Cryptography.Asn1.Pkcs7.ContentInfoAsn,byref):System.ArraySegment`1[ubyte] (FullOpts) 24 (4.959% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.CryptoStream:CopyTo(System.IO.Stream,int):this (FullOpts) 24 (0.782% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.ECDiffieHellmanOpenSsl:DeriveSecretAgreement(System.Security.Cryptography.ECDiffieHellmanPublicKey,System.Security.Cryptography.IncrementalHash):ubyte[]:this (FullOpts) 24 (8.571% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.HashAlgorithm:HashCore(System.ReadOnlySpan`1[ubyte]):this (FullOpts) 24 (1.780% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.HKDF:Expand(System.Security.Cryptography.HashAlgorithmName,int,System.ReadOnlySpan`1[ubyte],System.Span`1[ubyte],System.ReadOnlySpan`1[ubyte]) (FullOpts) 24 (4.380% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.OpenSslCipherLite:Transform(System.ReadOnlySpan`1[ubyte],System.Span`1[ubyte]):int:this (FullOpts) 24 (3.015% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.OpenSslCipherLite:TransformFinal(System.ReadOnlySpan`1[ubyte],System.Span`1[ubyte]):int:this (FullOpts) 24 (2.239% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.PemKeyHelpers:ImportEncryptedPem[double](System.ReadOnlySpan`1[ushort],System.ReadOnlySpan`1[double],System.Security.Cryptography.PemKeyHelpers+ImportEncryptedKeyAction`1[double]) (FullOpts) 24 (2.239% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.PemKeyHelpers:ImportEncryptedPem[int](System.ReadOnlySpan`1[ushort],System.ReadOnlySpan`1[int],System.Security.Cryptography.PemKeyHelpers+ImportEncryptedKeyAction`1[int]) (FullOpts) 24 (2.239% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.PemKeyHelpers:ImportEncryptedPem[long](System.ReadOnlySpan`1[ushort],System.ReadOnlySpan`1[long],System.Security.Cryptography.PemKeyHelpers+ImportEncryptedKeyAction`1[long]) (FullOpts) 24 (2.239% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.PemKeyHelpers:ImportEncryptedPem[short](System.ReadOnlySpan`1[ushort],System.ReadOnlySpan`1[short],System.Security.Cryptography.PemKeyHelpers+ImportEncryptedKeyAction`1[short]) (FullOpts) 24 (2.239% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.PemKeyHelpers:ImportEncryptedPem[System.__Canon](System.ReadOnlySpan`1[ushort],System.ReadOnlySpan`1[System.__Canon],System.Security.Cryptography.PemKeyHelpers+ImportEncryptedKeyAction`1[System.__Canon]) (FullOpts) 24 (2.239% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.PemKeyHelpers:ImportEncryptedPem[System.Nullable`1[int]](System.ReadOnlySpan`1[ushort],System.ReadOnlySpan`1[System.Nullable`1[int]],System.Security.Cryptography.PemKeyHelpers+ImportEncryptedKeyAction`1[System.Nullable`1[int]]) (FullOpts) 24 (2.239% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.PemKeyHelpers:ImportEncryptedPem[System.Numerics.Vector`1[float]](System.ReadOnlySpan`1[ushort],System.ReadOnlySpan`1[System.Numerics.Vector`1[float]],System.Security.Cryptography.PemKeyHelpers+ImportEncryptedKeyAction`1[System.Numerics.Vector`1[float]]) (FullOpts) 24 (2.239% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.PemKeyHelpers:ImportEncryptedPem[ubyte](System.ReadOnlySpan`1[ushort],System.ReadOnlySpan`1[ubyte],System.Security.Cryptography.PemKeyHelpers+ImportEncryptedKeyAction`1[ubyte]) (FullOpts) 24 (1.818% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.PemKeyHelpers:ImportPem(System.ReadOnlySpan`1[ushort],System.Security.Cryptography.PemKeyHelpers+FindImportActionFunc) (FullOpts) 24 (1.036% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.Pkcs.Pkcs12Kdf:Derive(System.ReadOnlySpan`1[ushort],System.Security.Cryptography.HashAlgorithmName,int,ubyte,System.ReadOnlySpan`1[ubyte],System.Span`1[ubyte]) (FullOpts) 24 (4.580% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.RSA:TryExportSubjectPublicKeyInfo(System.Span`1[ubyte],byref):ubyte:this (FullOpts) 24 (3.109% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.RSA:TryWithKeyBuffer[double](System.ReadOnlySpan`1[ubyte],double,System.Security.Cryptography.RSA+TryFunc`1[double],ubyte):ubyte[]:this (FullOpts) 24 (3.158% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.RSA:TryWithKeyBuffer[System.Nullable`1[int]](System.ReadOnlySpan`1[ubyte],System.Nullable`1[int],System.Security.Cryptography.RSA+TryFunc`1[System.Nullable`1[int]],ubyte):ubyte[]:this (FullOpts) 24 (2.899% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.RSA:TryWithKeyBuffer[System.Numerics.Vector`1[float]](System.ReadOnlySpan`1[ubyte],System.Numerics.Vector`1[float],System.Security.Cryptography.RSA+TryFunc`1[System.Numerics.Vector`1[float]],ubyte):ubyte[]:this (FullOpts) 24 (4.688% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.RSA:WritePkcs8PrivateKey():System.Formats.Asn1.AsnWriter:this (FullOpts) 24 (3.750% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.RSAOpenSsl:Decrypt(ubyte[],System.Security.Cryptography.RSAEncryptionPadding):ubyte[]:this (FullOpts) 24 (1.425% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.X509Certificates.OpenSslX509ChainProcessor:FindChainViaAia(byref):Interop+Crypto+X509VerifyStatusCode:this (FullOpts) 24 (2.597% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.X509Certificates.UnixPkcs12Reader:DecryptSafeContents(System.ReadOnlySpan`1[ushort],byref) (FullOpts) 24 (3.226% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.X509Certificates.X500DistinguishedNameBuilder:Build():System.Security.Cryptography.X509Certificates.X500DistinguishedName:this (FullOpts) 24 (2.230% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.X509Certificates.X509Certificate2:CreateFromPem(System.ReadOnlySpan`1[ushort]):System.Security.Cryptography.X509Certificates.X509Certificate2 (FullOpts) 24 (0.477% of base) : System.Private.Xml.dasm - System.Xml.Serialization.XmlSerializationWriterILGen:WriteEnumMethod(System.Xml.Serialization.EnumMapping):this (FullOpts) 20 (2.688% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.PemKeyHelpers:TryExportToEncryptedPem[double,System.Nullable`1[int]](double,System.ReadOnlySpan`1[System.Nullable`1[int]],System.Security.Cryptography.PbeParameters,System.Security.Cryptography.PemKeyHelpers+TryExportEncryptedKeyAction`2[double,System.Nullable`1[int]],System.Span`1[ushort],byref):ubyte (FullOpts) 20 (2.747% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.PemKeyHelpers:TryExportToEncryptedPem[int,System.Nullable`1[int]](int,System.ReadOnlySpan`1[System.Nullable`1[int]],System.Security.Cryptography.PbeParameters,System.Security.Cryptography.PemKeyHelpers+TryExportEncryptedKeyAction`2[int,System.Nullable`1[int]],System.Span`1[ushort],byref):ubyte (FullOpts) 20 (2.747% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.PemKeyHelpers:TryExportToEncryptedPem[long,System.Nullable`1[int]](long,System.ReadOnlySpan`1[System.Nullable`1[int]],System.Security.Cryptography.PbeParameters,System.Security.Cryptography.PemKeyHelpers+TryExportEncryptedKeyAction`2[long,System.Nullable`1[int]],System.Span`1[ushort],byref):ubyte (FullOpts) 20 (2.747% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.PemKeyHelpers:TryExportToEncryptedPem[short,System.Nullable`1[int]](short,System.ReadOnlySpan`1[System.Nullable`1[int]],System.Security.Cryptography.PbeParameters,System.Security.Cryptography.PemKeyHelpers+TryExportEncryptedKeyAction`2[short,System.Nullable`1[int]],System.Span`1[ushort],byref):ubyte (FullOpts) 20 (2.747% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.PemKeyHelpers:TryExportToEncryptedPem[System.__Canon,System.Nullable`1[int]](System.__Canon,System.ReadOnlySpan`1[System.Nullable`1[int]],System.Security.Cryptography.PbeParameters,System.Security.Cryptography.PemKeyHelpers+TryExportEncryptedKeyAction`2[System.__Canon,System.Nullable`1[int]],System.Span`1[ushort],byref):ubyte (FullOpts) 20 (2.762% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.PemKeyHelpers:TryExportToEncryptedPem[System.Nullable`1[int],System.Nullable`1[int]](System.Nullable`1[int],System.ReadOnlySpan`1[System.Nullable`1[int]],System.Security.Cryptography.PbeParameters,System.Security.Cryptography.PemKeyHelpers+TryExportEncryptedKeyAction`2[System.Nullable`1[int],System.Nullable`1[int]],System.Span`1[ushort],byref):ubyte (FullOpts) 20 (2.747% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.PemKeyHelpers:TryExportToEncryptedPem[ubyte,System.Nullable`1[int]](ubyte,System.ReadOnlySpan`1[System.Nullable`1[int]],System.Security.Cryptography.PbeParameters,System.Security.Cryptography.PemKeyHelpers+TryExportEncryptedKeyAction`2[ubyte,System.Nullable`1[int]],System.Span`1[ushort],byref):ubyte (FullOpts) 20 (2.778% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.PemKeyHelpers:TryExportToPem[double](double,System.String,System.Security.Cryptography.PemKeyHelpers+TryExportKeyAction`1[double],System.Span`1[ushort],byref):ubyte (FullOpts) 20 (2.857% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.PemKeyHelpers:TryExportToPem[System.Nullable`1[int]](System.Nullable`1[int],System.String,System.Security.Cryptography.PemKeyHelpers+TryExportKeyAction`1[System.Nullable`1[int]],System.Span`1[ushort],byref):ubyte (FullOpts) 20 (2.577% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.X509Certificates.CertificateRevocationListBuilder:LoadPem(System.ReadOnlySpan`1[ushort],byref):System.Security.Cryptography.X509Certificates.CertificateRevocationListBuilder (FullOpts) 16 (2.632% of base) : System.Net.Mail.dasm - System.Net.Mail.SendMailAsyncResult:SendDataCompleted(System.IAsyncResult) (FullOpts) 16 (1.600% of base) : System.Reflection.Metadata.dasm - System.Reflection.Metadata.Ecma335.ControlFlowBuilder:SerializeExceptionTable(System.Reflection.Metadata.BlobBuilder):this (FullOpts) 16 (1.090% of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.ClassDataContract+ClassDataContractCriticalHelper:SetIfMembersHaveConflict(System.Collections.Generic.List`1[System.Runtime.Serialization.DataContracts.DataMember]):this (FullOpts) 16 (0.370% of base) : System.Security.Cryptography.Pkcs.dasm - System.Security.Cryptography.Pkcs.Pkcs12SafeContents:ReadBags(System.ReadOnlyMemory`1[ubyte]):System.Collections.Generic.List`1[System.Security.Cryptography.Pkcs.Pkcs12SafeBag] (FullOpts) 16 (2.139% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.X509Certificates.UnixPkcs12Reader:ExtractPrivateKeys(System.ReadOnlySpan`1[ushort],System.Security.Cryptography.Asn1.Pkcs12.SafeBagAsn[],int,System.Security.Cryptography.AsymmetricAlgorithm[],System.Security.Cryptography.X509Certificates.UnixPkcs12Reader+RentedSubjectPublicKeyInfo[]):this (FullOpts) 16 (0.163% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.X509Certificates.X509Certificate2:ToString(ubyte):System.String:this (FullOpts) 12 (0.845% of base) : Microsoft.CSharp.dasm - Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder+GroupToArgsBinder:ReOrderArgsForNamedArguments(Microsoft.CSharp.RuntimeBinder.Semantics.MethodOrPropertySymbol,Microsoft.CSharp.RuntimeBinder.Semantics.TypeArray,Microsoft.CSharp.RuntimeBinder.Semantics.AggregateType,Microsoft.CSharp.RuntimeBinder.Semantics.ExprMemberGroup,Microsoft.CSharp.RuntimeBinder.Semantics.ArgInfos):ubyte (FullOpts) 12 (4.615% of base) : System.ComponentModel.Composition.dasm - Microsoft.Internal.Collections.CollectionServices:FastAppendToListAllowNulls[double](System.Collections.Generic.List`1[double],System.Collections.Generic.IEnumerable`1[double]):System.Collections.Generic.List`1[double] (FullOpts) 12 (4.615% of base) : System.ComponentModel.Composition.dasm - Microsoft.Internal.Collections.CollectionServices:FastAppendToListAllowNulls[int](System.Collections.Generic.List`1[int],System.Collections.Generic.IEnumerable`1[int]):System.Collections.Generic.List`1[int] (FullOpts) 12 (4.615% of base) : System.ComponentModel.Composition.dasm - Microsoft.Internal.Collections.CollectionServices:FastAppendToListAllowNulls[long](System.Collections.Generic.List`1[long],System.Collections.Generic.IEnumerable`1[long]):System.Collections.Generic.List`1[long] (FullOpts) 12 (4.615% of base) : System.ComponentModel.Composition.dasm - Microsoft.Internal.Collections.CollectionServices:FastAppendToListAllowNulls[short](System.Collections.Generic.List`1[short],System.Collections.Generic.IEnumerable`1[short]):System.Collections.Generic.List`1[short] (FullOpts) 12 (3.659% of base) : System.ComponentModel.Composition.dasm - Microsoft.Internal.Collections.CollectionServices:FastAppendToListAllowNulls[System.__Canon](System.Collections.Generic.List`1[System.__Canon],System.Collections.Generic.IEnumerable`1[System.__Canon]):System.Collections.Generic.List`1[System.__Canon] (FullOpts) 12 (4.110% of base) : System.ComponentModel.Composition.dasm - Microsoft.Internal.Collections.CollectionServices:FastAppendToListAllowNulls[System.Nullable`1[int]](System.Collections.Generic.List`1[System.Nullable`1[int]],System.Collections.Generic.IEnumerable`1[System.Nullable`1[int]]):System.Collections.Generic.List`1[System.Nullable`1[int]] (FullOpts) 12 (4.545% of base) : System.ComponentModel.Composition.dasm - Microsoft.Internal.Collections.CollectionServices:FastAppendToListAllowNulls[System.Numerics.Vector`1[float]](System.Collections.Generic.List`1[System.Numerics.Vector`1[float]],System.Collections.Generic.IEnumerable`1[System.Numerics.Vector`1[float]]):System.Collections.Generic.List`1[System.Numerics.Vector`1[float]] (FullOpts) 12 (4.615% of base) : System.ComponentModel.Composition.dasm - Microsoft.Internal.Collections.CollectionServices:FastAppendToListAllowNulls[ubyte](System.Collections.Generic.List`1[ubyte],System.Collections.Generic.IEnumerable`1[ubyte]):System.Collections.Generic.List`1[ubyte] (FullOpts) 12 (0.779% of base) : System.Net.Mail.dasm - System.Net.Mail.SmtpTransport:SendMail(System.Net.Mail.MailAddress,System.Net.Mail.MailAddressCollection,System.String,ubyte,byref):System.Net.Mail.MailWriter:this (FullOpts) 12 (2.459% of base) : System.Reflection.Metadata.dasm - System.Reflection.Internal.EnumerableExtensions+d__1`1[System.Nullable`1[int]]:MoveNext():ubyte:this (FullOpts) 12 (2.419% of base) : System.Reflection.Metadata.dasm - System.Reflection.Metadata.Ecma335.ControlFlowBuilder:HasSmallExceptionRegions():ubyte:this (FullOpts) 12 (0.792% 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) 12 (1.020% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.X509Certificates.UnixExportProvider:EncodeCerts(System.Formats.Asn1.AsnWriter,System.Security.Cryptography.Asn1.Pkcs12.CertBagAsn[],System.Security.Cryptography.Asn1.AttributeAsn[],int,System.Span`1[ubyte],System.ReadOnlySpan`1[ushort],System.Span`1[ubyte],byref,byref,byref):System.ArraySegment`1[ubyte] (FullOpts) 12 (0.150% of base) : System.Text.RegularExpressions.dasm - System.Text.RegularExpressions.Symbolic.RegexNodeConverter:ConvertToSymbolicRegexNode(System.Text.RegularExpressions.RegexNode):System.Text.RegularExpressions.Symbolic.SymbolicRegexNode`1[System.Text.RegularExpressions.Symbolic.BDD]:this (FullOpts) 12 (0.220% of base) : System.Private.Xml.dasm - System.Xml.Schema.Preprocessor:Preprocess(System.Xml.Schema.XmlSchema,System.String,System.Collections.ArrayList):this (FullOpts) Top method improvements (bytes): -172 (-10.287% of base) : System.Text.RegularExpressions.dasm - System.Text.RegularExpressions.RegexNode:g__ExtractCommonPrefixOneNotoneSet|41_1(System.Text.RegularExpressions.RegexNode):System.Text.RegularExpressions.RegexNode (FullOpts) -160 (-8.097% of base) : System.Private.CoreLib.dasm - System.Threading.Tasks.Task:RunContinuations(System.Object):this (FullOpts) -136 (-6.538% of base) : System.Text.RegularExpressions.dasm - System.Text.RegularExpressions.RegexCompiler+<>c__DisplayClass157_0:g__EmitBackreferenceConditional|6(System.Text.RegularExpressions.RegexNode):this (FullOpts) -96 (-1.518% of base) : System.Text.RegularExpressions.dasm - System.Text.RegularExpressions.RegexPrefixAnalyzer:g__TryFindRawFixedSets|2_0(System.Text.RegularExpressions.RegexNode,System.Collections.Generic.List`1[System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet],byref,ubyte):ubyte (FullOpts) (2 methods) -80 (-1.932% of base) : System.Security.Cryptography.Xml.dasm - System.Security.Cryptography.Xml.KeyInfoX509Data:LoadXml(System.Xml.XmlElement):this (FullOpts) -64 (-3.226% of base) : System.Text.RegularExpressions.dasm - System.Text.RegularExpressions.RegexNode:FinalOptimize():System.Text.RegularExpressions.RegexNode:this (FullOpts) (2 methods) -56 (-1.491% of base) : System.Resources.Extensions.dasm - System.Resources.Extensions.PreserializedResourceWriter:Generate():this (FullOpts) -52 (-9.028% of base) : System.Data.Odbc.dasm - System.Data.Odbc.OdbcParameterCollection:CalcParameterBufferSize(System.Data.Odbc.OdbcCommand):int:this (FullOpts) -48 (-1.410% of base) : System.Text.RegularExpressions.dasm - System.Text.RegularExpressions.RegexPrefixAnalyzer:g__Process|0_0(System.Text.RegularExpressions.RegexNode,byref):ubyte (FullOpts) (2 methods) -48 (-4.396% of base) : System.Private.Xml.dasm - System.Xml.DocumentXmlWriter:Close(int):this (FullOpts) -40 (-1.044% of base) : System.Text.RegularExpressions.dasm - System.Text.RegularExpressions.RegexParser:AssignNameSlots():this (FullOpts) (2 methods) -32 (-2.524% of base) : System.Net.Primitives.dasm - System.Net.CookieContainer:BuildCookieCollectionFromDomainMatches(System.Uri,ubyte,int,byref,System.Collections.Generic.List`1[System.String],ubyte):this (FullOpts) -32 (-0.324% of base) : System.Text.RegularExpressions.dasm - System.Text.RegularExpressions.RegexFindOptimizations:TryFindNextStartingPositionLeftToRight(System.ReadOnlySpan`1[ushort],byref,int):ubyte:this (FullOpts) (2 methods) -32 (-1.918% of base) : System.Text.RegularExpressions.dasm - System.Text.RegularExpressions.RegexNode:ComputeMaxLength():System.Nullable`1[int]:this (FullOpts) -32 (-4.762% of base) : System.Text.RegularExpressions.dasm - System.Text.RegularExpressions.RegexNode:FindLastExpressionInLoopForAutoAtomic():System.Text.RegularExpressions.RegexNode:this (FullOpts) -32 (-3.846% of base) : System.Text.RegularExpressions.dasm - System.Text.RegularExpressions.RegexNode:ReduceAlternation():System.Text.RegularExpressions.RegexNode:this (FullOpts) (2 methods) -32 (-2.878% of base) : System.Text.RegularExpressions.dasm - System.Text.RegularExpressions.RegexNode:ReduceConcatenation():System.Text.RegularExpressions.RegexNode:this (FullOpts) (2 methods) -32 (-4.301% of base) : System.Text.RegularExpressions.dasm - System.Text.RegularExpressions.RegexNode:ReduceExpressionConditional():System.Text.RegularExpressions.RegexNode:this (FullOpts) -32 (-0.978% of base) : System.Text.RegularExpressions.dasm - System.Text.RegularExpressions.RegexPrefixAnalyzer:FindLiteralFollowingLeadingLoop(System.Text.RegularExpressions.RegexNode):System.Nullable`1[System.ValueTuple`2[System.Text.RegularExpressions.RegexNode,System.ValueTuple`3[ushort,System.String,ushort[]]]] (FullOpts) (2 methods) -32 (-4.878% of base) : System.Text.RegularExpressions.dasm - System.Text.RegularExpressions.RegexPrefixAnalyzer:FindPrefixOrdinalCaseInsensitive(System.Text.RegularExpressions.RegexNode):System.String (FullOpts) (2 methods) -28 (-1.512% of base) : ILCompiler.Reflection.ReadyToRun.dasm - ILCompiler.Reflection.ReadyToRun.ReadyToRunReader:EnsureMethods():this (FullOpts) -28 (-1.193% of base) : System.Linq.Expressions.dasm - System.Linq.Expressions.Compiler.LambdaCompiler:EmitSwitchBucket(System.Linq.Expressions.Compiler.LambdaCompiler+SwitchInfo,System.Collections.Generic.List`1[System.Linq.Expressions.Compiler.LambdaCompiler+SwitchLabel]):this (FullOpts) -28 (-1.675% of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.TakeOrSkipQueryOperator`1+TakeOrSkipQueryOperatorEnumerator`1[System.__Canon,System.Nullable`1[int]]:MoveNext(byref,byref):ubyte:this (FullOpts) -28 (-1.373% of base) : System.Net.Http.dasm - System.Net.Http.MultipartContent+d__28:MoveNext():this (FullOpts) -28 (-1.381% of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.SchemaExporter:ExportClassDataContract(System.Runtime.Serialization.DataContracts.ClassDataContract,System.Xml.Schema.XmlSchema):this (FullOpts) -28 (-1.468% of base) : System.Text.RegularExpressions.dasm - System.Text.RegularExpressions.RegexNode:ReduceAtomic():System.Text.RegularExpressions.RegexNode:this (FullOpts) -28 (-2.834% of base) : System.Private.Xml.dasm - System.Xml.Schema.XmlSchemaSet:RemoveSchemaFromCaches(System.Xml.Schema.XmlSchema):this (FullOpts) -24 (-3.922% of base) : ILCompiler.Reflection.ReadyToRun.dasm - ILCompiler.Reflection.ReadyToRun.ReadyToRunReader:EnsureAvailableTypes():this (FullOpts) -24 (-2.239% of base) : System.Private.CoreLib.dasm - System.Collections.ObjectModel.ReadOnlyDictionary`2[long,System.Nullable`1[int]]:System.Collections.ICollection.CopyTo(System.Array,int):this (FullOpts) -24 (-0.992% of base) : System.Data.Common.dasm - System.Data.DataTable:EvaluateDependentExpressions(System.Collections.Generic.List`1[System.Data.DataColumn],System.Data.DataRow,int,System.Collections.Generic.List`1[System.Data.DataRow]):this (FullOpts) -24 (-1.583% 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) -24 (-6.316% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.X509Certificates.X500DistinguishedName+d__15:MoveNext():ubyte:this (FullOpts) -24 (-0.501% of base) : System.Text.RegularExpressions.dasm - System.Text.RegularExpressions.RegexCharClass:Canonicalize():this (FullOpts) (2 methods) -24 (-0.673% of base) : System.Text.RegularExpressions.dasm - System.Text.RegularExpressions.RegexFindOptimizations:.ctor(System.Text.RegularExpressions.RegexNode,int):this (FullOpts) (2 methods) -24 (-1.079% of base) : System.Text.RegularExpressions.dasm - System.Text.RegularExpressions.RegexFindOptimizations:FindFixedDistanceString(System.Collections.Generic.List`1[System.Text.RegularExpressions.RegexFindOptimizations+FixedDistanceSet]):System.Nullable`1[System.ValueTuple`2[System.String,int]] (FullOpts) (2 methods) -20 (-1.196% of base) : System.Private.Xml.dasm - MS.Internal.Xml.XPath.QueryBuilder:ProcessFunction(MS.Internal.Xml.XPath.Function,byref):MS.Internal.Xml.XPath.Query:this (FullOpts) -20 (-1.558% of base) : System.ComponentModel.TypeConverter.dasm - System.ComponentModel.MaskedTextProvider:Clone():System.Object:this (FullOpts) -20 (-1.429% of base) : System.Data.Common.dasm - System.Data.ProviderBase.SchemaMapping:.ctor(System.Data.Common.DataAdapter,System.Data.DataSet,System.Data.DataTable,System.Data.ProviderBase.DataReaderContainer,ubyte,int,System.String,ubyte,System.Data.DataColumn,System.Object):this (FullOpts) -20 (-3.333% of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.SchemaExporter:CreateAnyElementType():System.Xml.Schema.XmlSchemaComplexType (FullOpts) -20 (-2.994% of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.SchemaExporter:CreateAnyType():System.Xml.Schema.XmlSchemaComplexType (FullOpts) -20 (-1.385% of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.SchemaExporter:ExportEnumDataContract(System.Runtime.Serialization.DataContracts.EnumDataContract,System.Xml.Schema.XmlSchema):this (FullOpts) -20 (-0.998% of base) : System.Security.Cryptography.Xml.dasm - System.Security.Cryptography.Xml.RSAKeyValue:LoadXml(System.Xml.XmlElement):this (FullOpts) -20 (-0.935% of base) : System.Security.Cryptography.Xml.dasm - System.Security.Cryptography.Xml.XmlLicenseTransform:DecryptEncryptedGrants(System.Xml.XmlNodeList):this (FullOpts) -20 (-3.425% of base) : System.Text.RegularExpressions.dasm - System.Text.RegularExpressions.RegexCompiler:LoadSearchValues(System.ReadOnlySpan`1[ushort]):this (FullOpts) -20 (-2.747% of base) : System.Text.RegularExpressions.dasm - System.Text.RegularExpressions.RegexNode:ReduceLoops():System.Text.RegularExpressions.RegexNode:this (FullOpts) -16 (-2.632% of base) : ILCompiler.Reflection.ReadyToRun.dasm - ILCompiler.Reflection.ReadyToRun.EHClause:.ctor(ILCompiler.Reflection.ReadyToRun.ReadyToRunReader,int):this (FullOpts) -16 (-2.632% of base) : ILCompiler.Reflection.ReadyToRun.dasm - ILCompiler.Reflection.ReadyToRun.ReadyToRunReader:GetAssemblyAtIndex(int,byref):System.Reflection.Metadata.AssemblyReferenceHandle:this (FullOpts) -16 (-2.632% of base) : ILCompiler.Reflection.ReadyToRun.dasm - ILCompiler.Reflection.ReadyToRun.ReadyToRunReader:GetGlobalAssemblyName():System.String:this (FullOpts) -16 (-11.111% of base) : ILCompiler.Reflection.ReadyToRun.dasm - ILCompiler.Reflection.ReadyToRun.ReadyToRunReader:GetGlobalMetadata():ILCompiler.Reflection.ReadyToRun.IAssemblyMetadata:this (FullOpts) -16 (-2.685% of base) : ILCompiler.Reflection.ReadyToRun.dasm - ILCompiler.Reflection.ReadyToRun.ReadyToRunReader:ParseMethodDefEntrypoints(System.Action`2[ILCompiler.Reflection.ReadyToRun.ReadyToRunSection,ILCompiler.Reflection.ReadyToRun.IAssemblyMetadata]):this (FullOpts) -16 (-3.390% of base) : ILCompiler.Reflection.ReadyToRun.dasm - ILCompiler.Reflection.ReadyToRun.ReadyToRunReader:ValidateRuntimeFunctions(System.Collections.Generic.List`1[ILCompiler.Reflection.ReadyToRun.RuntimeFunction]):this (FullOpts) -16 (-20.000% of base) : Microsoft.CSharp.dasm - Microsoft.CSharp.RuntimeBinder.Semantics.ListExtensions:Head[double](System.Collections.Generic.List`1[double]):double (FullOpts) -16 (-20.000% of base) : Microsoft.CSharp.dasm - Microsoft.CSharp.RuntimeBinder.Semantics.ListExtensions:Head[int](System.Collections.Generic.List`1[int]):int (FullOpts) -16 (-20.000% of base) : Microsoft.CSharp.dasm - Microsoft.CSharp.RuntimeBinder.Semantics.ListExtensions:Head[long](System.Collections.Generic.List`1[long]):long (FullOpts) -16 (-20.000% of base) : Microsoft.CSharp.dasm - Microsoft.CSharp.RuntimeBinder.Semantics.ListExtensions:Head[short](System.Collections.Generic.List`1[short]):short (FullOpts) -16 (-20.000% of base) : Microsoft.CSharp.dasm - Microsoft.CSharp.RuntimeBinder.Semantics.ListExtensions:Head[System.__Canon](System.Collections.Generic.List`1[System.__Canon]):System.__Canon (FullOpts) -16 (-20.000% of base) : Microsoft.CSharp.dasm - Microsoft.CSharp.RuntimeBinder.Semantics.ListExtensions:Head[System.Nullable`1[int]](System.Collections.Generic.List`1[System.Nullable`1[int]]):System.Nullable`1[int] (FullOpts) -16 (-20.000% of base) : Microsoft.CSharp.dasm - Microsoft.CSharp.RuntimeBinder.Semantics.ListExtensions:Head[System.Numerics.Vector`1[float]](System.Collections.Generic.List`1[System.Numerics.Vector`1[float]]):System.Numerics.Vector`1[float] (FullOpts) -16 (-20.000% of base) : Microsoft.CSharp.dasm - Microsoft.CSharp.RuntimeBinder.Semantics.ListExtensions:Head[ubyte](System.Collections.Generic.List`1[ubyte]):ubyte (FullOpts) -16 (-6.897% of base) : Microsoft.Extensions.Logging.Abstractions.dasm - Microsoft.Extensions.Logging.LoggerMessage+LogValues`1[System.__Canon]:get_Item(int):System.Collections.Generic.KeyValuePair`2[System.String,System.Object]:this (FullOpts) -16 (-6.557% of base) : Microsoft.Extensions.Logging.Abstractions.dasm - Microsoft.Extensions.Logging.LoggerMessage+LogValues`1[System.Nullable`1[int]]:get_Item(int):System.Collections.Generic.KeyValuePair`2[System.String,System.Object]:this (FullOpts) -16 (-4.819% of base) : Microsoft.Extensions.Logging.Abstractions.dasm - Microsoft.Extensions.Logging.LoggerMessage+LogValues`2[System.__Canon,System.Nullable`1[int]]:get_Item(int):System.Collections.Generic.KeyValuePair`2[System.String,System.Object]:this (FullOpts) -16 (-4.651% of base) : Microsoft.Extensions.Logging.Abstractions.dasm - Microsoft.Extensions.Logging.LoggerMessage+LogValues`2[System.Nullable`1[int],System.Nullable`1[int]]:get_Item(int):System.Collections.Generic.KeyValuePair`2[System.String,System.Object]:this (FullOpts) -16 (-7.273% of base) : Microsoft.Extensions.Logging.TraceSource.dasm - Microsoft.Extensions.Logging.TraceSource.TraceSourceLoggerProvider:HasDefaultListeners(System.Diagnostics.TraceSource):ubyte (FullOpts) -16 (-2.817% of base) : Microsoft.VisualBasic.Core.dasm - Microsoft.VisualBasic.CompilerServices.ConversionResolution:DoClassifyUserDefinedConversion(System.Type,System.Type,byref,byref,byref):byte (FullOpts) -16 (-13.333% of base) : System.Private.CoreLib.dasm - System.Collections.Generic.List`1[double]:System.Collections.IList.get_Item(int):System.Object:this (FullOpts) -16 (-13.333% of base) : System.Private.CoreLib.dasm - System.Collections.Generic.List`1[int]:System.Collections.IList.get_Item(int):System.Object:this (FullOpts) -16 (-13.333% of base) : System.Private.CoreLib.dasm - System.Collections.Generic.List`1[long]:System.Collections.IList.get_Item(int):System.Object:this (FullOpts) -16 (-13.333% of base) : System.Private.CoreLib.dasm - System.Collections.Generic.List`1[short]:System.Collections.IList.get_Item(int):System.Object:this (FullOpts) -16 (-13.333% of base) : System.Private.CoreLib.dasm - System.Collections.Generic.List`1[ubyte]:System.Collections.IList.get_Item(int):System.Object:this (FullOpts) -16 (-3.810% of base) : System.ComponentModel.TypeConverter.dasm - System.ComponentModel.MaskedTextProvider:Replace(ushort,int):ubyte:this (FullOpts) -16 (-12.121% of base) : System.Linq.dasm - System.Linq.Enumerable+SelectListIterator`2[double,System.Nullable`1[int]]:TryGetFirst(byref):System.Nullable`1[int]:this (FullOpts) -16 (-12.121% of base) : System.Linq.dasm - System.Linq.Enumerable+SelectListIterator`2[int,System.Nullable`1[int]]:TryGetFirst(byref):System.Nullable`1[int]:this (FullOpts) -16 (-12.121% of base) : System.Linq.dasm - System.Linq.Enumerable+SelectListIterator`2[long,System.Nullable`1[int]]:TryGetFirst(byref):System.Nullable`1[int]:this (FullOpts) -16 (-12.121% of base) : System.Linq.dasm - System.Linq.Enumerable+SelectListIterator`2[short,System.Nullable`1[int]]:TryGetFirst(byref):System.Nullable`1[int]:this (FullOpts) -16 (-12.121% of base) : System.Linq.dasm - System.Linq.Enumerable+SelectListIterator`2[System.__Canon,System.Nullable`1[int]]:TryGetFirst(byref):System.Nullable`1[int]:this (FullOpts) -16 (-12.121% of base) : System.Linq.dasm - System.Linq.Enumerable+SelectListIterator`2[System.Nullable`1[int],System.Nullable`1[int]]:TryGetFirst(byref):System.Nullable`1[int]:this (FullOpts) -16 (-12.121% of base) : System.Linq.dasm - System.Linq.Enumerable+SelectListIterator`2[System.Numerics.Vector`1[float],System.Nullable`1[int]]:TryGetFirst(byref):System.Nullable`1[int]:this (FullOpts) -16 (-12.121% of base) : System.Linq.dasm - System.Linq.Enumerable+SelectListIterator`2[ubyte,System.Nullable`1[int]]:TryGetFirst(byref):System.Nullable`1[int]:this (FullOpts) -16 (-2.548% of base) : System.Linq.Expressions.dasm - System.Linq.Expressions.Compiler.LambdaCompiler:FitsInBucket(System.Collections.Generic.List`1[System.Linq.Expressions.Compiler.LambdaCompiler+SwitchLabel],System.Decimal,int):ubyte (FullOpts) -16 (-4.878% of base) : System.Net.Mail.dasm - System.Net.Mail.SmtpFailedRecipientsException:.ctor(System.Collections.Generic.List`1[System.Net.Mail.SmtpFailedRecipientException],ubyte):this (FullOpts) -16 (-3.077% of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.DataContracts.ClassDataContract:CreateChildElementNamespaces():System.Xml.XmlDictionaryString[]:this (FullOpts) -16 (-2.030% of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.SchemaExporter:AddDefaultDatasetType(System.Xml.Schema.XmlSchemaSet,System.String,System.String) (FullOpts) -16 (-0.663% of base) : System.Security.Cryptography.Xml.dasm - System.Security.Cryptography.Xml.XmlLicenseTransform:LoadInput(System.Object):this (FullOpts) -16 (-1.266% of base) : System.Text.RegularExpressions.dasm - System.Text.RegularExpressions.RegexCompiler:g__EmitFixedSet_RightToLeft|156_4(byref):this (FullOpts) -16 (-0.806% of base) : System.Text.RegularExpressions.dasm - System.Text.RegularExpressions.RegexCompiler:EmitScan(int,System.Reflection.Emit.DynamicMethod,System.Reflection.Emit.DynamicMethod):this (FullOpts) -16 (-0.705% of base) : System.Text.RegularExpressions.dasm - System.Text.RegularExpressions.RegexCompiler:EmitTryMatchAtCurrentPosition():this (FullOpts) -16 (-2.260% of base) : System.Text.RegularExpressions.dasm - System.Text.RegularExpressions.RegexCompiler+<>c__DisplayClass157_0:g__EmitAtomic|13(System.Text.RegularExpressions.RegexNode,System.Text.RegularExpressions.RegexNode):this (FullOpts) -16 (-0.952% of base) : System.Text.RegularExpressions.dasm - System.Text.RegularExpressions.RegexCompiler+<>c__DisplayClass157_0:g__EmitCapture|8(System.Text.RegularExpressions.RegexNode,System.Text.RegularExpressions.RegexNode):this (FullOpts) -16 (-0.668% of base) : System.Text.RegularExpressions.dasm - System.Text.RegularExpressions.RegexCompiler+<>c__DisplayClass157_0:g__EmitExpressionConditional|7(System.Text.RegularExpressions.RegexNode):this (FullOpts) -16 (-0.407% of base) : System.Text.RegularExpressions.dasm - System.Text.RegularExpressions.RegexCompiler+<>c__DisplayClass157_0:g__EmitLazy|23(System.Text.RegularExpressions.RegexNode):this (FullOpts) -16 (-0.367% of base) : System.Text.RegularExpressions.dasm - System.Text.RegularExpressions.RegexCompiler+<>c__DisplayClass157_0:g__EmitLoop|28(System.Text.RegularExpressions.RegexNode):this (FullOpts) -16 (-1.961% of base) : System.Text.RegularExpressions.dasm - System.Text.RegularExpressions.RegexCompiler+<>c__DisplayClass157_0:g__EmitNegativeLookaroundAssertion|11(System.Text.RegularExpressions.RegexNode):this (FullOpts) -16 (-2.299% of base) : System.Text.RegularExpressions.dasm - System.Text.RegularExpressions.RegexCompiler+<>c__DisplayClass157_0:g__EmitPositiveLookaroundAssertion|10(System.Text.RegularExpressions.RegexNode):this (FullOpts) -16 (-0.935% of base) : System.Text.RegularExpressions.dasm - System.Text.RegularExpressions.RegexNode:g__ExtractCommonPrefixText|41_3(System.Text.RegularExpressions.RegexNode):System.Text.RegularExpressions.RegexNode (FullOpts) -16 (-7.692% of base) : System.Text.RegularExpressions.dasm - System.Text.RegularExpressions.RegexNode:FindBranchOneOrMultiStart():System.Text.RegularExpressions.RegexNode:this (FullOpts) -16 (-4.762% of base) : System.Text.RegularExpressions.dasm - System.Text.RegularExpressions.RegexNode:FindStartingLiteralNode():System.Text.RegularExpressions.RegexNode:this (FullOpts) -16 (-8.163% of base) : System.Text.RegularExpressions.dasm - System.Text.RegularExpressions.RegexNode:ReduceGroup():System.Text.RegularExpressions.RegexNode:this (FullOpts) -16 (-6.452% of base) : System.Text.RegularExpressions.dasm - System.Text.RegularExpressions.RegexNode:ReduceLookaround():System.Text.RegularExpressions.RegexNode:this (FullOpts) -16 (-5.882% of base) : System.Text.RegularExpressions.dasm - System.Text.RegularExpressions.RegexNode:ReplaceNodeIfUnnecessary():System.Text.RegularExpressions.RegexNode:this (FullOpts) Top method regressions (percentages): 28 (13.208% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.X509Certificates.UnixPkcs12Reader:GrowIfNeeded[ubyte](byref,int) (FullOpts) 28 (12.963% of base) : System.Security.Cryptography.dasm - System.Formats.Asn1.AsnWriterExtensions:RentAndEncode(System.Formats.Asn1.AsnWriter):System.ArraySegment`1[ubyte] (FullOpts) 56 (12.500% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.DSA:HashSpanToArray(System.ReadOnlySpan`1[ubyte],System.Security.Cryptography.HashAlgorithmName):ubyte[]:this (FullOpts) 56 (12.500% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.ECDsa:HashSpanToArray(System.ReadOnlySpan`1[ubyte],System.Security.Cryptography.HashAlgorithmName):ubyte[]:this (FullOpts) 68 (9.942% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.ECDsa:SignHashCore(System.ReadOnlySpan`1[ubyte],int):ubyte[]:this (FullOpts) 44 (9.735% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.RandomNumberGenerator:GetNonZeroBytes(System.Span`1[ubyte]):this (FullOpts) 44 (9.565% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.RandomNumberGenerator:GetBytes(System.Span`1[ubyte]):this (FullOpts) 52 (9.353% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.X509Certificates.CertificateRequest:NormalizeSerialNumber(System.ReadOnlySpan`1[ubyte]):System.ArraySegment`1[ubyte] (FullOpts) 24 (8.571% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.HashAlgorithm:HashCore(System.ReadOnlySpan`1[ubyte]):this (FullOpts) 44 (8.271% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.CryptoStream:Write(System.ReadOnlySpan`1[ubyte]):this (FullOpts) 12 (7.500% of base) : System.Private.Xml.dasm - System.Xml.Xsl.XmlQueryTypeFactory+ChoiceType:Create(System.Collections.Generic.List`1[System.Xml.Xsl.XmlQueryType]):System.Xml.Xsl.XmlQueryType (FullOpts) 52 (7.345% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.ECDsa:SignDataCore(System.ReadOnlySpan`1[ubyte],System.Security.Cryptography.HashAlgorithmName,int):ubyte[]:this (FullOpts) 28 (7.292% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.HashAlgorithm:ComputeHash(System.IO.Stream):ubyte[]:this (FullOpts) 48 (6.742% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.RSAOpenSsl:TryDecrypt(System.ReadOnlySpan`1[ubyte],System.Span`1[ubyte],System.Security.Cryptography.RSAEncryptionPadding,byref):ubyte:this (FullOpts) 36 (6.475% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.SymmetricAlgorithm:DecryptCbc(System.ReadOnlySpan`1[ubyte],System.ReadOnlySpan`1[ubyte],int):ubyte[]:this (FullOpts) 44 (5.670% of base) : System.Data.Common.dasm - System.Data.Common.DbDataAdapter:FillInternal(System.Data.DataSet,System.Data.DataTable[],int,int,System.String,System.Data.IDbCommand,int):int:this (FullOpts) 36 (5.056% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.ECDsa:TryHashData(System.ReadOnlySpan`1[ubyte],System.Span`1[ubyte],System.Security.Cryptography.HashAlgorithmName,byref):ubyte:this (FullOpts) 28 (4.965% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.X509Certificates.ManagedX509ExtensionProcessor:ComputeCapiSha1OfPublicKey(System.Security.Cryptography.X509Certificates.PublicKey):ubyte[]:this (FullOpts) 24 (4.959% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.CryptoStream:CopyTo(System.IO.Stream,int):this (FullOpts) 56 (4.762% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.SP800108HmacCounterKdfImplementationManaged:DeriveBytesOneShot(System.ReadOnlySpan`1[ubyte],System.Security.Cryptography.HashAlgorithmName,System.ReadOnlySpan`1[ushort],System.ReadOnlySpan`1[ushort],System.Span`1[ubyte]) (FullOpts) 24 (4.688% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.RSA:WritePkcs8PrivateKey():System.Formats.Asn1.AsnWriter:this (FullOpts) 12 (4.615% of base) : System.ComponentModel.Composition.dasm - Microsoft.Internal.Collections.CollectionServices:FastAppendToListAllowNulls[double](System.Collections.Generic.List`1[double],System.Collections.Generic.IEnumerable`1[double]):System.Collections.Generic.List`1[double] (FullOpts) 12 (4.615% of base) : System.ComponentModel.Composition.dasm - Microsoft.Internal.Collections.CollectionServices:FastAppendToListAllowNulls[int](System.Collections.Generic.List`1[int],System.Collections.Generic.IEnumerable`1[int]):System.Collections.Generic.List`1[int] (FullOpts) 12 (4.615% of base) : System.ComponentModel.Composition.dasm - Microsoft.Internal.Collections.CollectionServices:FastAppendToListAllowNulls[long](System.Collections.Generic.List`1[long],System.Collections.Generic.IEnumerable`1[long]):System.Collections.Generic.List`1[long] (FullOpts) 12 (4.615% of base) : System.ComponentModel.Composition.dasm - Microsoft.Internal.Collections.CollectionServices:FastAppendToListAllowNulls[short](System.Collections.Generic.List`1[short],System.Collections.Generic.IEnumerable`1[short]):System.Collections.Generic.List`1[short] (FullOpts) 12 (4.615% of base) : System.ComponentModel.Composition.dasm - Microsoft.Internal.Collections.CollectionServices:FastAppendToListAllowNulls[ubyte](System.Collections.Generic.List`1[ubyte],System.Collections.Generic.IEnumerable`1[ubyte]):System.Collections.Generic.List`1[ubyte] (FullOpts) 28 (4.605% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.X509Certificates.UnixExportProvider:EncodeKeys(System.Formats.Asn1.AsnWriter,System.Security.Cryptography.Asn1.Pkcs12.SafeBagAsn[],int):System.ArraySegment`1[ubyte] (FullOpts) 24 (4.580% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.RSA:TryExportSubjectPublicKeyInfo(System.Span`1[ubyte],byref):ubyte:this (FullOpts) 12 (4.545% of base) : System.ComponentModel.Composition.dasm - Microsoft.Internal.Collections.CollectionServices:FastAppendToListAllowNulls[System.Numerics.Vector`1[float]](System.Collections.Generic.List`1[System.Numerics.Vector`1[float]],System.Collections.Generic.IEnumerable`1[System.Numerics.Vector`1[float]]):System.Collections.Generic.List`1[System.Numerics.Vector`1[float]] (FullOpts) 48 (4.412% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.UniversalCryptoDecryptor:UncheckedTransformFinalBlock(System.ReadOnlySpan`1[ubyte],System.Span`1[ubyte]):int:this (FullOpts) 24 (4.380% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.OpenSslCipherLite:Transform(System.ReadOnlySpan`1[ubyte],System.Span`1[ubyte]):int:this (FullOpts) 32 (4.324% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.RSA:TryHashData(System.ReadOnlySpan`1[ubyte],System.Span`1[ubyte],System.Security.Cryptography.HashAlgorithmName,byref):ubyte:this (FullOpts) 12 (4.110% of base) : System.ComponentModel.Composition.dasm - Microsoft.Internal.Collections.CollectionServices:FastAppendToListAllowNulls[System.Nullable`1[int]](System.Collections.Generic.List`1[System.Nullable`1[int]],System.Collections.Generic.IEnumerable`1[System.Nullable`1[int]]):System.Collections.Generic.List`1[System.Nullable`1[int]] (FullOpts) 36 (4.091% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.CryptoStream:g__TransformBlock|53_0(System.Security.Cryptography.ICryptoTransform,System.ReadOnlyMemory`1[ubyte],ubyte[],int):int (FullOpts) 8 (4.000% of base) : System.Reflection.Metadata.dasm - System.Reflection.Metadata.Ecma335.MetadataBuilder:ValidateMethodImplTable():this (FullOpts) 8 (3.846% of base) : System.Reflection.Metadata.dasm - System.Reflection.Metadata.Ecma335.MetadataBuilder:ValidateClassLayoutTable():this (FullOpts) 8 (3.846% of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.ReflectionXmlReader:GetRequiredMembers(System.Runtime.Serialization.DataContracts.ClassDataContract,ubyte[]):int (FullOpts) 48 (3.846% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.X509Certificates.CertificateRequest:LoadSigningRequestPem(System.ReadOnlySpan`1[ushort],System.Security.Cryptography.HashAlgorithmName,int,System.Security.Cryptography.RSASignaturePadding):System.Security.Cryptography.X509Certificates.CertificateRequest (FullOpts) 28 (3.763% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.PemKeyHelpers:TryExportToPem[System.Numerics.Vector`1[float]](System.Numerics.Vector`1[float],System.String,System.Security.Cryptography.PemKeyHelpers+TryExportKeyAction`1[System.Numerics.Vector`1[float]],System.Span`1[ushort],byref):ubyte (FullOpts) 24 (3.750% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.RSAOpenSsl:Decrypt(ubyte[],System.Security.Cryptography.RSAEncryptionPadding):ubyte[]:this (FullOpts) 36 (3.734% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.Rfc2898DeriveBytes:Pbkdf2Core(System.ReadOnlySpan`1[ushort],System.ReadOnlySpan`1[ubyte],System.Span`1[ubyte],int,System.Security.Cryptography.HashAlgorithmName) (FullOpts) 48 (3.704% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.HashAlgorithm+d__16:MoveNext():this (FullOpts) 28 (3.665% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.RSA:TryWithKeyBuffer[int](System.ReadOnlySpan`1[ubyte],int,System.Security.Cryptography.RSA+TryFunc`1[int],ubyte):ubyte[]:this (FullOpts) 28 (3.665% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.RSA:TryWithKeyBuffer[long](System.ReadOnlySpan`1[ubyte],long,System.Security.Cryptography.RSA+TryFunc`1[long],ubyte):ubyte[]:this (FullOpts) 28 (3.665% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.RSA:TryWithKeyBuffer[short](System.ReadOnlySpan`1[ubyte],short,System.Security.Cryptography.RSA+TryFunc`1[short],ubyte):ubyte[]:this (FullOpts) 28 (3.665% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.RSA:TryWithKeyBuffer[System.__Canon](System.ReadOnlySpan`1[ubyte],System.__Canon,System.Security.Cryptography.RSA+TryFunc`1[System.__Canon],ubyte):ubyte[]:this (FullOpts) 28 (3.665% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.RSA:TryWithKeyBuffer[ubyte](System.ReadOnlySpan`1[ubyte],ubyte,System.Security.Cryptography.RSA+TryFunc`1[ubyte],ubyte):ubyte[]:this (FullOpts) 12 (3.659% of base) : System.ComponentModel.Composition.dasm - Microsoft.Internal.Collections.CollectionServices:FastAppendToListAllowNulls[System.__Canon](System.Collections.Generic.List`1[System.__Canon],System.Collections.Generic.IEnumerable`1[System.__Canon]):System.Collections.Generic.List`1[System.__Canon] (FullOpts) 28 (3.646% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.PemKeyHelpers:TryExportToEncryptedPem[System.Numerics.Vector`1[float],System.Nullable`1[int]](System.Numerics.Vector`1[float],System.ReadOnlySpan`1[System.Nullable`1[int]],System.Security.Cryptography.PbeParameters,System.Security.Cryptography.PemKeyHelpers+TryExportEncryptedKeyAction`2[System.Numerics.Vector`1[float],System.Nullable`1[int]],System.Span`1[ushort],byref):ubyte (FullOpts) 28 (3.571% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.UniversalCryptoDecryptor:UncheckedTransformFinalBlock(ubyte[],int,int):ubyte[]:this (FullOpts) 24 (3.226% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.X509Certificates.X500DistinguishedNameBuilder:Build():System.Security.Cryptography.X509Certificates.X500DistinguishedName:this (FullOpts) 24 (3.158% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.RSA:TryWithKeyBuffer[System.Nullable`1[int]](System.ReadOnlySpan`1[ubyte],System.Nullable`1[int],System.Security.Cryptography.RSA+TryFunc`1[System.Nullable`1[int]],ubyte):ubyte[]:this (FullOpts) 24 (3.109% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.RSA:TryWithKeyBuffer[double](System.ReadOnlySpan`1[ubyte],double,System.Security.Cryptography.RSA+TryFunc`1[double],ubyte):ubyte[]:this (FullOpts) 24 (3.015% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.OpenSslCipherLite:TransformFinal(System.ReadOnlySpan`1[ubyte],System.Span`1[ubyte]):int:this (FullOpts) 4 (2.941% of base) : System.Data.Common.dasm - System.Data.DataView:GetEnumerator():System.Collections.IEnumerator:this (FullOpts) 24 (2.899% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.RSA:TryWithKeyBuffer[System.Numerics.Vector`1[float]](System.ReadOnlySpan`1[ubyte],System.Numerics.Vector`1[float],System.Security.Cryptography.RSA+TryFunc`1[System.Numerics.Vector`1[float]],ubyte):ubyte[]:this (FullOpts) 20 (2.857% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.PemKeyHelpers:TryExportToPem[System.Nullable`1[int]](System.Nullable`1[int],System.String,System.Security.Cryptography.PemKeyHelpers+TryExportKeyAction`1[System.Nullable`1[int]],System.Span`1[ushort],byref):ubyte (FullOpts) 100 (2.806% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.CryptoStream+d__44:MoveNext():this (FullOpts) 20 (2.778% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.PemKeyHelpers:TryExportToPem[double](double,System.String,System.Security.Cryptography.PemKeyHelpers+TryExportKeyAction`1[double],System.Span`1[ushort],byref):ubyte (FullOpts) 20 (2.762% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.PemKeyHelpers:TryExportToEncryptedPem[System.Nullable`1[int],System.Nullable`1[int]](System.Nullable`1[int],System.ReadOnlySpan`1[System.Nullable`1[int]],System.Security.Cryptography.PbeParameters,System.Security.Cryptography.PemKeyHelpers+TryExportEncryptedKeyAction`2[System.Nullable`1[int],System.Nullable`1[int]],System.Span`1[ushort],byref):ubyte (FullOpts) 20 (2.747% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.PemKeyHelpers:TryExportToEncryptedPem[int,System.Nullable`1[int]](int,System.ReadOnlySpan`1[System.Nullable`1[int]],System.Security.Cryptography.PbeParameters,System.Security.Cryptography.PemKeyHelpers+TryExportEncryptedKeyAction`2[int,System.Nullable`1[int]],System.Span`1[ushort],byref):ubyte (FullOpts) 20 (2.747% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.PemKeyHelpers:TryExportToEncryptedPem[long,System.Nullable`1[int]](long,System.ReadOnlySpan`1[System.Nullable`1[int]],System.Security.Cryptography.PbeParameters,System.Security.Cryptography.PemKeyHelpers+TryExportEncryptedKeyAction`2[long,System.Nullable`1[int]],System.Span`1[ushort],byref):ubyte (FullOpts) 20 (2.747% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.PemKeyHelpers:TryExportToEncryptedPem[short,System.Nullable`1[int]](short,System.ReadOnlySpan`1[System.Nullable`1[int]],System.Security.Cryptography.PbeParameters,System.Security.Cryptography.PemKeyHelpers+TryExportEncryptedKeyAction`2[short,System.Nullable`1[int]],System.Span`1[ushort],byref):ubyte (FullOpts) 20 (2.747% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.PemKeyHelpers:TryExportToEncryptedPem[System.__Canon,System.Nullable`1[int]](System.__Canon,System.ReadOnlySpan`1[System.Nullable`1[int]],System.Security.Cryptography.PbeParameters,System.Security.Cryptography.PemKeyHelpers+TryExportEncryptedKeyAction`2[System.__Canon,System.Nullable`1[int]],System.Span`1[ushort],byref):ubyte (FullOpts) 20 (2.747% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.PemKeyHelpers:TryExportToEncryptedPem[ubyte,System.Nullable`1[int]](ubyte,System.ReadOnlySpan`1[System.Nullable`1[int]],System.Security.Cryptography.PbeParameters,System.Security.Cryptography.PemKeyHelpers+TryExportEncryptedKeyAction`2[ubyte,System.Nullable`1[int]],System.Span`1[ushort],byref):ubyte (FullOpts) 20 (2.688% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.PemKeyHelpers:TryExportToEncryptedPem[double,System.Nullable`1[int]](double,System.ReadOnlySpan`1[System.Nullable`1[int]],System.Security.Cryptography.PbeParameters,System.Security.Cryptography.PemKeyHelpers+TryExportEncryptedKeyAction`2[double,System.Nullable`1[int]],System.Span`1[ushort],byref):ubyte (FullOpts) 4 (2.632% of base) : Microsoft.Extensions.FileSystemGlobbing.dasm - Microsoft.Extensions.FileSystemGlobbing.Internal.MatcherContext:MatchPatternContexts[System.Numerics.Vector`1[float]](System.Numerics.Vector`1[float],System.Func`3[Microsoft.Extensions.FileSystemGlobbing.Internal.IPatternContext,System.Numerics.Vector`1[float],ubyte]):ubyte:this (FullOpts) 16 (2.632% of base) : System.Net.Mail.dasm - System.Net.Mail.SendMailAsyncResult:SendDataCompleted(System.IAsyncResult) (FullOpts) 24 (2.597% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.X509Certificates.UnixPkcs12Reader:DecryptSafeContents(System.ReadOnlySpan`1[ushort],byref) (FullOpts) 20 (2.577% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.X509Certificates.CertificateRevocationListBuilder:LoadPem(System.ReadOnlySpan`1[ushort],byref):System.Security.Cryptography.X509Certificates.CertificateRevocationListBuilder (FullOpts) 4 (2.500% of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.FastInvokerBuilder:CreateGetterInternal[double,System.Nullable`1[int]](System.Reflection.PropertyInfo):System.Runtime.Serialization.FastInvokerBuilder+Getter (FullOpts) 4 (2.500% of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.FastInvokerBuilder:CreateGetterInternal[ubyte,System.Nullable`1[int]](System.Reflection.PropertyInfo):System.Runtime.Serialization.FastInvokerBuilder+Getter (FullOpts) 4 (2.500% of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.FastInvokerBuilder:CreateSetterInternal[long,System.Nullable`1[int]](System.Reflection.PropertyInfo):System.Runtime.Serialization.FastInvokerBuilder+Setter (FullOpts) 4 (2.500% of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.FastInvokerBuilder:CreateSetterInternal[short,System.Nullable`1[int]](System.Reflection.PropertyInfo):System.Runtime.Serialization.FastInvokerBuilder+Setter (FullOpts) 4 (2.500% of base) : System.Private.DataContractSerialization.dasm - System.Xml.XmlBinaryWriterSession:.ctor():this (FullOpts) 12 (2.459% of base) : System.Reflection.Metadata.dasm - System.Reflection.Internal.EnumerableExtensions+d__1`1[System.Nullable`1[int]]:MoveNext():ubyte:this (FullOpts) 12 (2.419% of base) : System.Reflection.Metadata.dasm - System.Reflection.Metadata.Ecma335.ControlFlowBuilder:HasSmallExceptionRegions():ubyte:this (FullOpts) 4 (2.326% of base) : System.Private.CoreLib.dasm - System.Diagnostics.DebugProvider:.cctor() (FullOpts) 4 (2.326% of base) : System.Reflection.Metadata.dasm - System.Reflection.Internal.EnumerableExtensions+<>c__DisplayClass1_0`1[double]:b__0(int,int):int:this (FullOpts) 4 (2.273% of base) : System.Reflection.Metadata.dasm - System.Reflection.Internal.EnumerableExtensions+<>c__DisplayClass1_0`1[int]:b__0(int,int):int:this (FullOpts) 4 (2.273% of base) : System.Reflection.Metadata.dasm - System.Reflection.Internal.EnumerableExtensions+<>c__DisplayClass1_0`1[long]:b__0(int,int):int:this (FullOpts) 4 (2.273% of base) : System.Reflection.Metadata.dasm - System.Reflection.Internal.EnumerableExtensions+<>c__DisplayClass1_0`1[short]:b__0(int,int):int:this (FullOpts) 4 (2.273% of base) : System.Reflection.Metadata.dasm - System.Reflection.Internal.EnumerableExtensions+<>c__DisplayClass1_0`1[System.__Canon]:b__0(int,int):int:this (FullOpts) 4 (2.273% of base) : System.Reflection.Metadata.dasm - System.Reflection.Internal.EnumerableExtensions+<>c__DisplayClass1_0`1[ubyte]:b__0(int,int):int:this (FullOpts) 24 (2.239% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.PemKeyHelpers:ImportEncryptedPem[double](System.ReadOnlySpan`1[ushort],System.ReadOnlySpan`1[double],System.Security.Cryptography.PemKeyHelpers+ImportEncryptedKeyAction`1[double]) (FullOpts) 24 (2.239% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.PemKeyHelpers:ImportEncryptedPem[int](System.ReadOnlySpan`1[ushort],System.ReadOnlySpan`1[int],System.Security.Cryptography.PemKeyHelpers+ImportEncryptedKeyAction`1[int]) (FullOpts) 24 (2.239% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.PemKeyHelpers:ImportEncryptedPem[long](System.ReadOnlySpan`1[ushort],System.ReadOnlySpan`1[long],System.Security.Cryptography.PemKeyHelpers+ImportEncryptedKeyAction`1[long]) (FullOpts) 24 (2.239% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.PemKeyHelpers:ImportEncryptedPem[short](System.ReadOnlySpan`1[ushort],System.ReadOnlySpan`1[short],System.Security.Cryptography.PemKeyHelpers+ImportEncryptedKeyAction`1[short]) (FullOpts) 24 (2.239% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.PemKeyHelpers:ImportEncryptedPem[System.__Canon](System.ReadOnlySpan`1[ushort],System.ReadOnlySpan`1[System.__Canon],System.Security.Cryptography.PemKeyHelpers+ImportEncryptedKeyAction`1[System.__Canon]) (FullOpts) 24 (2.239% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.PemKeyHelpers:ImportEncryptedPem[System.Nullable`1[int]](System.ReadOnlySpan`1[ushort],System.ReadOnlySpan`1[System.Nullable`1[int]],System.Security.Cryptography.PemKeyHelpers+ImportEncryptedKeyAction`1[System.Nullable`1[int]]) (FullOpts) 24 (2.239% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.PemKeyHelpers:ImportEncryptedPem[System.Numerics.Vector`1[float]](System.ReadOnlySpan`1[ushort],System.ReadOnlySpan`1[System.Numerics.Vector`1[float]],System.Security.Cryptography.PemKeyHelpers+ImportEncryptedKeyAction`1[System.Numerics.Vector`1[float]]) (FullOpts) 24 (2.239% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.PemKeyHelpers:ImportEncryptedPem[ubyte](System.ReadOnlySpan`1[ushort],System.ReadOnlySpan`1[ubyte],System.Security.Cryptography.PemKeyHelpers+ImportEncryptedKeyAction`1[ubyte]) (FullOpts) 24 (2.230% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.X509Certificates.X509Certificate2:CreateFromPem(System.ReadOnlySpan`1[ushort]):System.Security.Cryptography.X509Certificates.X509Certificate2 (FullOpts) 16 (2.139% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.X509Certificates.UnixPkcs12Reader:ExtractPrivateKeys(System.ReadOnlySpan`1[ushort],System.Security.Cryptography.Asn1.Pkcs12.SafeBagAsn[],int,System.Security.Cryptography.AsymmetricAlgorithm[],System.Security.Cryptography.X509Certificates.UnixPkcs12Reader+RentedSubjectPublicKeyInfo[]):this (FullOpts) 4 (2.128% of base) : System.Reflection.Metadata.dasm - System.Reflection.Internal.EnumerableExtensions+<>c__DisplayClass1_0`1[System.Numerics.Vector`1[float]]:b__0(int,int):int:this (FullOpts) 44 (2.119% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.CryptoStream+d__56:MoveNext():this (FullOpts) 4 (2.041% of base) : System.Reflection.Metadata.dasm - System.Reflection.Metadata.Ecma335.MetadataBuilder:ValidateGenericParamConstaintTable():this (FullOpts) 4 (2.041% of base) : System.Reflection.Metadata.dasm - System.Reflection.Metadata.Ecma335.MetadataBuilder:ValidateInterfaceImplTable():this (FullOpts) 4 (2.041% of base) : System.Reflection.Metadata.dasm - System.Reflection.Metadata.Ecma335.MetadataBuilder:ValidateNestedClassTable():this (FullOpts) 4 (2.041% of base) : System.Reflection.Metadata.dasm - System.Reflection.Metadata.Ecma335.MetadataBuilder:ValidateStateMachineMethodTable():this (FullOpts) Top method improvements (percentages): -16 (-20.000% of base) : Microsoft.CSharp.dasm - Microsoft.CSharp.RuntimeBinder.Semantics.ListExtensions:Head[double](System.Collections.Generic.List`1[double]):double (FullOpts) -16 (-20.000% of base) : Microsoft.CSharp.dasm - Microsoft.CSharp.RuntimeBinder.Semantics.ListExtensions:Head[int](System.Collections.Generic.List`1[int]):int (FullOpts) -16 (-20.000% of base) : Microsoft.CSharp.dasm - Microsoft.CSharp.RuntimeBinder.Semantics.ListExtensions:Head[long](System.Collections.Generic.List`1[long]):long (FullOpts) -16 (-20.000% of base) : Microsoft.CSharp.dasm - Microsoft.CSharp.RuntimeBinder.Semantics.ListExtensions:Head[short](System.Collections.Generic.List`1[short]):short (FullOpts) -16 (-20.000% of base) : Microsoft.CSharp.dasm - Microsoft.CSharp.RuntimeBinder.Semantics.ListExtensions:Head[System.__Canon](System.Collections.Generic.List`1[System.__Canon]):System.__Canon (FullOpts) -16 (-20.000% of base) : Microsoft.CSharp.dasm - Microsoft.CSharp.RuntimeBinder.Semantics.ListExtensions:Head[System.Nullable`1[int]](System.Collections.Generic.List`1[System.Nullable`1[int]]):System.Nullable`1[int] (FullOpts) -16 (-20.000% of base) : Microsoft.CSharp.dasm - Microsoft.CSharp.RuntimeBinder.Semantics.ListExtensions:Head[System.Numerics.Vector`1[float]](System.Collections.Generic.List`1[System.Numerics.Vector`1[float]]):System.Numerics.Vector`1[float] (FullOpts) -16 (-20.000% of base) : Microsoft.CSharp.dasm - Microsoft.CSharp.RuntimeBinder.Semantics.ListExtensions:Head[ubyte](System.Collections.Generic.List`1[ubyte]):ubyte (FullOpts) -16 (-19.048% of base) : System.Private.Xml.dasm - System.Xml.Xsl.Xslt.Keys:GetKeyForItem(System.Collections.Generic.List`1[System.Xml.Xsl.Xslt.Key]):System.Xml.Xsl.Qil.QilName:this (FullOpts) -16 (-13.333% of base) : System.Private.CoreLib.dasm - System.Collections.Generic.List`1[double]:System.Collections.IList.get_Item(int):System.Object:this (FullOpts) -16 (-13.333% of base) : System.Private.CoreLib.dasm - System.Collections.Generic.List`1[int]:System.Collections.IList.get_Item(int):System.Object:this (FullOpts) -16 (-13.333% of base) : System.Private.CoreLib.dasm - System.Collections.Generic.List`1[long]:System.Collections.IList.get_Item(int):System.Object:this (FullOpts) -16 (-13.333% of base) : System.Private.CoreLib.dasm - System.Collections.Generic.List`1[short]:System.Collections.IList.get_Item(int):System.Object:this (FullOpts) -16 (-13.333% of base) : System.Private.CoreLib.dasm - System.Collections.Generic.List`1[ubyte]:System.Collections.IList.get_Item(int):System.Object:this (FullOpts) -16 (-12.121% of base) : System.Linq.dasm - System.Linq.Enumerable+SelectListIterator`2[double,System.Nullable`1[int]]:TryGetFirst(byref):System.Nullable`1[int]:this (FullOpts) -16 (-12.121% of base) : System.Linq.dasm - System.Linq.Enumerable+SelectListIterator`2[int,System.Nullable`1[int]]:TryGetFirst(byref):System.Nullable`1[int]:this (FullOpts) -16 (-12.121% of base) : System.Linq.dasm - System.Linq.Enumerable+SelectListIterator`2[long,System.Nullable`1[int]]:TryGetFirst(byref):System.Nullable`1[int]:this (FullOpts) -16 (-12.121% of base) : System.Linq.dasm - System.Linq.Enumerable+SelectListIterator`2[short,System.Nullable`1[int]]:TryGetFirst(byref):System.Nullable`1[int]:this (FullOpts) -16 (-12.121% of base) : System.Linq.dasm - System.Linq.Enumerable+SelectListIterator`2[System.__Canon,System.Nullable`1[int]]:TryGetFirst(byref):System.Nullable`1[int]:this (FullOpts) -16 (-12.121% of base) : System.Linq.dasm - System.Linq.Enumerable+SelectListIterator`2[System.Nullable`1[int],System.Nullable`1[int]]:TryGetFirst(byref):System.Nullable`1[int]:this (FullOpts) -16 (-12.121% of base) : System.Linq.dasm - System.Linq.Enumerable+SelectListIterator`2[System.Numerics.Vector`1[float],System.Nullable`1[int]]:TryGetFirst(byref):System.Nullable`1[int]:this (FullOpts) -16 (-12.121% of base) : System.Linq.dasm - System.Linq.Enumerable+SelectListIterator`2[ubyte,System.Nullable`1[int]]:TryGetFirst(byref):System.Nullable`1[int]:this (FullOpts) -16 (-11.111% of base) : ILCompiler.Reflection.ReadyToRun.dasm - ILCompiler.Reflection.ReadyToRun.ReadyToRunReader:GetGlobalMetadata():ILCompiler.Reflection.ReadyToRun.IAssemblyMetadata:this (FullOpts) -172 (-10.287% of base) : System.Text.RegularExpressions.dasm - System.Text.RegularExpressions.RegexNode:g__ExtractCommonPrefixOneNotoneSet|41_1(System.Text.RegularExpressions.RegexNode):System.Text.RegularExpressions.RegexNode (FullOpts) -8 (-9.524% of base) : System.Private.CoreLib.dasm - System.Collections.Generic.List`1[double]:get_Item(int):double:this (FullOpts) -8 (-9.524% of base) : System.Private.CoreLib.dasm - System.Collections.Generic.List`1[int]:get_Item(int):int:this (FullOpts) -8 (-9.524% of base) : System.Private.CoreLib.dasm - System.Collections.Generic.List`1[long]:get_Item(int):long:this (FullOpts) -8 (-9.524% of base) : System.Private.CoreLib.dasm - System.Collections.Generic.List`1[short]:get_Item(int):short:this (FullOpts) -8 (-9.524% of base) : System.Private.CoreLib.dasm - System.Collections.Generic.List`1[System.__Canon]:get_Item(int):System.__Canon:this (FullOpts) -8 (-9.524% of base) : System.Private.CoreLib.dasm - System.Collections.Generic.List`1[System.__Canon]:System.Collections.IList.get_Item(int):System.Object:this (FullOpts) -8 (-9.524% of base) : System.Private.CoreLib.dasm - System.Collections.Generic.List`1[ubyte]:get_Item(int):ubyte:this (FullOpts) -8 (-9.091% of base) : Microsoft.Extensions.Configuration.dasm - Microsoft.Extensions.Configuration.ConfigurationManager+ConfigurationSources:get_Item(int):Microsoft.Extensions.Configuration.IConfigurationSource:this (FullOpts) -8 (-9.091% of base) : Microsoft.Extensions.DependencyInjection.Abstractions.dasm - Microsoft.Extensions.DependencyInjection.ServiceCollection:get_Item(int):Microsoft.Extensions.DependencyInjection.ServiceDescriptor:this (FullOpts) -8 (-9.091% of base) : System.Private.Xml.dasm - MS.Internal.Xml.XPath.ClonableStack`1[double]:Peek():double:this (FullOpts) -8 (-9.091% of base) : System.Private.Xml.dasm - MS.Internal.Xml.XPath.ClonableStack`1[int]:Peek():int:this (FullOpts) -8 (-9.091% of base) : System.Private.Xml.dasm - MS.Internal.Xml.XPath.ClonableStack`1[long]:Peek():long:this (FullOpts) -8 (-9.091% of base) : System.Private.Xml.dasm - MS.Internal.Xml.XPath.ClonableStack`1[short]:Peek():short:this (FullOpts) -8 (-9.091% of base) : System.Private.Xml.dasm - MS.Internal.Xml.XPath.ClonableStack`1[System.__Canon]:Peek():System.__Canon:this (FullOpts) -8 (-9.091% of base) : System.Private.Xml.dasm - MS.Internal.Xml.XPath.ClonableStack`1[ubyte]:Peek():ubyte:this (FullOpts) -8 (-9.091% of base) : System.Private.CoreLib.dasm - System.Collections.Generic.List`1[System.Nullable`1[int]]:get_Item(int):System.Nullable`1[int]:this (FullOpts) -8 (-9.091% of base) : System.Private.CoreLib.dasm - System.Collections.Generic.List`1[System.Numerics.Vector`1[float]]:get_Item(int):System.Numerics.Vector`1[float]:this (FullOpts) -8 (-9.091% of base) : System.Diagnostics.TraceSource.dasm - System.Diagnostics.TraceListenerCollection:get_Item(int):System.Diagnostics.TraceListener:this (FullOpts) -8 (-9.091% of base) : System.Diagnostics.TraceSource.dasm - System.Diagnostics.TraceListenerCollection:System.Collections.IList.get_Item(int):System.Object:this (FullOpts) -8 (-9.091% of base) : System.Linq.Expressions.dasm - System.Linq.Expressions.Interpreter.InstructionList:GetInstruction(int):System.Linq.Expressions.Interpreter.Instruction:this (FullOpts) -8 (-9.091% of base) : System.Net.NetworkInformation.dasm - System.Net.NetworkInformation.GatewayIPAddressInformationCollection:get_Item(int):System.Net.NetworkInformation.GatewayIPAddressInformation:this (FullOpts) -8 (-9.091% of base) : System.Net.NetworkInformation.dasm - System.Net.NetworkInformation.InternalIPAddressCollection:get_Item(int):System.Net.IPAddress:this (FullOpts) -8 (-9.091% of base) : System.Net.NetworkInformation.dasm - System.Net.NetworkInformation.IPAddressInformationCollection:get_Item(int):System.Net.NetworkInformation.IPAddressInformation:this (FullOpts) -8 (-9.091% of base) : System.Net.NetworkInformation.dasm - System.Net.NetworkInformation.MulticastIPAddressInformationCollection:get_Item(int):System.Net.NetworkInformation.MulticastIPAddressInformation:this (FullOpts) -8 (-9.091% of base) : System.Net.NetworkInformation.dasm - System.Net.NetworkInformation.UnicastIPAddressInformationCollection:get_Item(int):System.Net.NetworkInformation.UnicastIPAddressInformation:this (FullOpts) -8 (-9.091% of base) : System.Private.DataContractSerialization.dasm - System.Runtime.Serialization.CodeGenerator:GetArg(int):System.Runtime.Serialization.ArgBuilder:this (FullOpts) -8 (-9.091% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.AsnEncodedDataCollection:get_Item(int):System.Security.Cryptography.AsnEncodedData:this (FullOpts) -8 (-9.091% of base) : System.Security.Cryptography.Pkcs.dasm - System.Security.Cryptography.CryptographicAttributeObjectCollection:get_Item(int):System.Security.Cryptography.CryptographicAttributeObject:this (FullOpts) -8 (-9.091% of base) : System.Text.Json.dasm - System.Text.Json.Serialization.ConfigurationList`1[double]:get_Item(int):double:this (FullOpts) -8 (-9.091% of base) : System.Text.Json.dasm - System.Text.Json.Serialization.ConfigurationList`1[int]:get_Item(int):int:this (FullOpts) -8 (-9.091% of base) : System.Text.Json.dasm - System.Text.Json.Serialization.ConfigurationList`1[long]:get_Item(int):long:this (FullOpts) -8 (-9.091% of base) : System.Text.Json.dasm - System.Text.Json.Serialization.ConfigurationList`1[short]:get_Item(int):short:this (FullOpts) -8 (-9.091% of base) : System.Text.Json.dasm - System.Text.Json.Serialization.ConfigurationList`1[System.__Canon]:get_Item(int):System.__Canon:this (FullOpts) -8 (-9.091% of base) : System.Text.Json.dasm - System.Text.Json.Serialization.ConfigurationList`1[ubyte]:get_Item(int):ubyte:this (FullOpts) -8 (-9.091% of base) : System.Private.Xml.dasm - System.Xml.Xsl.XmlQueryTypeFactory+ChoiceType:get_Item(int):System.Xml.Xsl.XmlQueryType:this (FullOpts) -52 (-9.028% of base) : System.Data.Odbc.dasm - System.Data.Odbc.OdbcParameterCollection:CalcParameterBufferSize(System.Data.Odbc.OdbcCommand):int:this (FullOpts) -8 (-8.696% of base) : System.Private.Xml.dasm - MS.Internal.Xml.XPath.ClonableStack`1[System.Nullable`1[int]]:Peek():System.Nullable`1[int]:this (FullOpts) -8 (-8.696% of base) : System.Private.Xml.dasm - MS.Internal.Xml.XPath.ClonableStack`1[System.Numerics.Vector`1[float]]:Peek():System.Numerics.Vector`1[float]:this (FullOpts) -8 (-8.696% of base) : System.Text.Json.dasm - System.Text.Json.Serialization.ConfigurationList`1[System.Nullable`1[int]]:get_Item(int):System.Nullable`1[int]:this (FullOpts) -8 (-8.696% of base) : System.Text.Json.dasm - System.Text.Json.Serialization.ConfigurationList`1[System.Numerics.Vector`1[float]]:get_Item(int):System.Numerics.Vector`1[float]:this (FullOpts) -8 (-8.333% of base) : System.Linq.Expressions.dasm - System.Linq.Expressions.Interpreter.InstructionList+DebugView:b__4_0(int):int:this (FullOpts) -8 (-8.333% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.AsnEncodedDataEnumerator:get_Current():System.Security.Cryptography.AsnEncodedData:this (FullOpts) -8 (-8.333% of base) : System.Security.Cryptography.dasm - System.Security.Cryptography.AsnEncodedDataEnumerator:System.Collections.IEnumerator.get_Current():System.Object:this (FullOpts) -8 (-8.333% of base) : System.Security.Cryptography.Pkcs.dasm - System.Security.Cryptography.CryptographicAttributeObjectEnumerator:get_Current():System.Security.Cryptography.CryptographicAttributeObject:this (FullOpts) -8 (-8.333% of base) : System.Security.Cryptography.Pkcs.dasm - System.Security.Cryptography.CryptographicAttributeObjectEnumerator:System.Collections.IEnumerator.get_Current():System.Object:this (FullOpts) -16 (-8.163% of base) : System.Text.RegularExpressions.dasm - System.Text.RegularExpressions.RegexNode:ReduceGroup():System.Text.RegularExpressions.RegexNode:this (FullOpts) -160 (-8.097% of base) : System.Private.CoreLib.dasm - System.Threading.Tasks.Task:RunContinuations(System.Object):this (FullOpts) -16 (-7.692% of base) : System.Text.RegularExpressions.dasm - System.Text.RegularExpressions.RegexNode:FindBranchOneOrMultiStart():System.Text.RegularExpressions.RegexNode:this (FullOpts) -8 (-7.692% of base) : System.Private.Xml.dasm - System.Xml.Xsl.XsltOld.Processor:GetQueryExpression(int):System.String:this (FullOpts) -8 (-7.407% of base) : System.ComponentModel.TypeConverter.dasm - System.ComponentModel.MaskedTextProvider:SetChar(ushort,int):this (FullOpts) -8 (-7.407% of base) : System.ComponentModel.TypeConverter.dasm - System.ComponentModel.MaskedTextProvider:TestEscapeChar(ushort,int):ubyte:this (FullOpts) -8 (-7.407% of base) : System.Text.Json.dasm - System.Text.Json.JsonPropertyDictionary`1+KeyCollection[System.__Canon]:get_Item(int):System.String:this (FullOpts) -16 (-7.273% of base) : Microsoft.Extensions.Logging.TraceSource.dasm - Microsoft.Extensions.Logging.TraceSource.TraceSourceLoggerProvider:HasDefaultListeners(System.Diagnostics.TraceSource):ubyte (FullOpts) -8 (-7.143% of base) : System.Private.Xml.dasm - MS.Internal.Xml.XPath.CacheAxisQuery:get_Current():System.Xml.XPath.XPathNavigator:this (FullOpts) -8 (-7.143% of base) : System.Private.Xml.dasm - MS.Internal.Xml.XPath.CacheOutputQuery:get_Current():System.Xml.XPath.XPathNavigator:this (FullOpts) -8 (-7.143% of base) : System.Private.CoreLib.dasm - System.Collections.Generic.List`1[System.Nullable`1[int]]:System.Collections.IList.get_Item(int):System.Object:this (FullOpts) -8 (-7.143% of base) : System.Data.Common.dasm - System.Data.Common.DataColumnMappingCollection:RemoveIndex(int):this (FullOpts) -8 (-7.143% of base) : System.Data.Common.dasm - System.Data.Common.DataTableMappingCollection:RemoveIndex(int):this (FullOpts) -8 (-7.143% of base) : System.Text.Json.dasm - System.Text.Json.JsonPropertyDictionary`1+ValueCollection[System.__Canon]:get_Item(int):System.__Canon:this (FullOpts) -8 (-7.143% of base) : System.Private.Xml.dasm - System.Xml.Xsl.Runtime.XsltLibrary:FormatNumberStatic(double,double):System.String:this (FullOpts) -16 (-6.897% of base) : Microsoft.Extensions.Logging.Abstractions.dasm - Microsoft.Extensions.Logging.LoggerMessage+LogValues`1[System.__Canon]:get_Item(int):System.Collections.Generic.KeyValuePair`2[System.String,System.Object]:this (FullOpts) -8 (-6.897% of base) : System.Private.Xml.dasm - MS.Internal.Xml.XPath.SortQuery:get_Current():System.Xml.XPath.XPathNavigator:this (FullOpts) -8 (-6.897% of base) : System.ComponentModel.TypeConverter.dasm - System.ComponentModel.Design.Serialization.ContextStack:get_Current():System.Object:this (FullOpts) -8 (-6.897% of base) : System.Private.CoreLib.dasm - System.Reflection.Emit.DynamicScope:get_Item(int):System.Object:this (FullOpts) -8 (-6.667% of base) : System.Private.Xml.dasm - MS.Internal.Xml.XPath.CacheAxisQuery:Advance():System.Xml.XPath.XPathNavigator:this (FullOpts) -8 (-6.667% of base) : System.Private.Xml.dasm - MS.Internal.Xml.XPath.CacheOutputQuery:Advance():System.Xml.XPath.XPathNavigator:this (FullOpts) -8 (-6.667% of base) : System.Private.Xml.dasm - MS.Internal.Xml.XPath.ClonableStack`1[double]:Pop():double:this (FullOpts) -8 (-6.667% of base) : System.Configuration.ConfigurationManager.dasm - System.Configuration.BaseConfigurationRecord:DebugValidateIndirectInputs(System.Configuration.SectionRecord):this (FullOpts) -16 (-6.557% of base) : Microsoft.Extensions.Logging.Abstractions.dasm - Microsoft.Extensions.Logging.LoggerMessage+LogValues`1[System.Nullable`1[int]]:get_Item(int):System.Collections.Generic.KeyValuePair`2[System.String,System.Object]:this (FullOpts) -136 (-6.538% of base) : System.Text.RegularExpressions.dasm - System.Text.RegularExpressions.RegexCompiler+<>c__DisplayClass157_0:g__EmitBackreferenceConditional|6(System.Text.RegularExpressions.RegexNode):this (FullOpts) -8 (-6.452% of base) : System.Private.Xml.dasm - MS.Internal.Xml.XPath.ClonableStack`1[int]:Pop():int:this (FullOpts) -8 (-6.452% of base) : System.Private.Xml.dasm - MS.Internal.Xml.XPath.ClonableStack`1[long]:Pop():long:this (FullOpts) -8 (-6.452% of base) : System.Private.Xml.dasm - MS.Internal.Xml.XPath.ClonableStack`1[short]:Pop():short:this (FullOpts) -8 (-6.452% of base) : System.Private.Xml.dasm - MS.Internal.Xml.XPath.ClonableStack`1[System.__Canon]:Pop():System.__Canon:this (FullOpts) -8 (-6.452% of base) : System.Private.Xml.dasm - MS.Internal.Xml.XPath.ClonableStack`1[System.Nullable`1[int]]:Pop():System.Nullable`1[int]:this (FullOpts) -8 (-6.452% of base) : System.Private.Xml.dasm - MS.Internal.Xml.XPath.ClonableStack`1[System.Numerics.Vector`1[float]]:Pop():System.Numerics.Vector`1[float]:this (FullOpts) 1090 total methods with Code Size differences (877 improved, 213 regressed), 233402 unchanged. -------------------------------------------------------------------------------- ```

Artifacts:

MihuBot commented 9 months ago

Top method regressions

8 (0.784% of base) - System.Globalization.CalendarData:FixDefaultShortDatePattern(System.Collections.Generic.List`1[System.String]) ```diff ; Assembly listing for method System.Globalization.CalendarData:FixDefaultShortDatePattern(System.Collections.Generic.List`1[System.String]) (FullOpts) ; Emitting BLENDED_CODE for generic ARM64 - Unix ; FullOpts code ; optimized code ; fp based frame ; fully interruptible ; No PGO data ; 0 inlinees with PGO data; 7 single block inlinees; 8 inlinees without PGO data ; Final local variable assignments ; -; V00 arg0 [V00,T06] ( 23, 23.50) ref -> x19 class-hnd single-def +; V00 arg0 [V00,T05] ( 23, 23.50) ref -> x19 class-hnd single-def ; V01 loc0 [V01,T19] ( 7, 3.50) ref -> x20 class-hnd exact single-def ; V02 loc1 [V02 ] ( 17, 53.50) struct (16) [fp-0x28] do-not-enreg[XS] must-init addr-exposed ld-addr-op ; V03 loc2 [V03,T00] ( 28,150.50) int -> x1 -; V04 loc3 [V04,T22] ( 4, 2 ) int -> x1 +; V04 loc3 [V04,T21] ( 4, 2 ) int -> x1 ;* V05 loc4 [V05 ] ( 0, 0 ) struct (16) zero-ref -; V06 loc5 [V06,T07] ( 9, 25.50) int -> x21 +; V06 loc5 [V06,T06] ( 9, 25.50) int -> x21 ;# V07 OutArgs [V07 ] ( 1, 1 ) struct ( 0) [sp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace" ;* V08 tmp1 [V08 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" -; V09 tmp2 [V09,T04] ( 5, 28 ) ref -> x0 class-hnd exact "impAppendStmt" -; V10 tmp3 [V10,T26] ( 2, 2 ) long -> x2 "Inlining Arg" -; V11 tmp4 [V11,T25] ( 2, 2 ) ref -> x2 class-hnd exact single-def "Inlining Arg" -; V12 tmp5 [V12,T05] ( 5, 28 ) ref -> x1 class-hnd "Inlining Arg" -; V13 tmp6 [V13,T15] ( 2, 4 ) ubyte -> x0 "Inline return value spill temp" -; V14 tmp7 [V14,T16] ( 2, 8 ) byref -> x0 "impAppendStmt" -; V15 tmp8 [V15,T27] ( 3, 1.50) ref -> x14 class-hnd single-def "Inline stloc first use temp" -; V16 tmp9 [V16,T23] ( 4, 2 ) int -> x15 "Inline stloc first use temp" -; V17 tmp10 [V17 ] ( 9, 27 ) byref -> [fp-0x28] do-not-enreg[X] addr-exposed "field V02._reference (fldOffset=0x0)" P-DEP -; V18 tmp11 [V18 ] ( 9, 27 ) int -> [fp-0x20] do-not-enreg[X] addr-exposed "field V02._length (fldOffset=0x8)" P-DEP -;* V19 tmp12 [V19 ] ( 0, 0 ) byref -> zero-ref "field V05._reference (fldOffset=0x0)" P-INDEP -;* V20 tmp13 [V20 ] ( 0, 0 ) int -> zero-ref "field V05._length (fldOffset=0x8)" P-INDEP -; V21 tmp14 [V21,T30] ( 2, 1 ) byref -> x2 single-def "field V08._reference (fldOffset=0x0)" P-INDEP -; V22 tmp15 [V22,T31] ( 2, 1 ) int -> x1 "field V08._length (fldOffset=0x8)" P-INDEP -; V23 tmp16 [V23,T21] ( 3, 3 ) ref -> x0 single-def "arr expr" -; V24 tmp17 [V24,T08] ( 3, 24 ) ref -> x0 "arr expr" -; V25 tmp18 [V25,T09] ( 2, 16 ) ref -> x1 "arr expr" -; V26 GsCookie [V26 ] ( 1, 1 ) long -> [fp-0x30] do-not-enreg[X] addr-exposed "GSSecurityCookie" -; V27 cse0 [V27,T14] ( 3, 10 ) int -> x3 "CSE - aggressive" -; V28 cse1 [V28,T28] ( 3, 1.50) long -> x4 "CSE - moderate" -; V29 cse2 [V29,T32] ( 2, 1 ) int -> x12 "CSE - moderate" -; V30 cse3 [V30,T01] ( 3, 48 ) long -> x4 "CSE - aggressive" -; V31 cse4 [V31,T11] ( 3, 12 ) long -> x4 "CSE - aggressive" -; V32 cse5 [V32,T12] ( 3, 12 ) int -> x2 "CSE - aggressive" -; V33 cse6 [V33,T10] ( 3, 12 ) ref -> x1 "CSE - aggressive" -; V34 cse7 [V34,T03] ( 14, 34.50) int -> x0 "CSE - aggressive" -; V35 cse8 [V35,T02] ( 9, 46 ) byref -> registers "CSE - aggressive" -; V36 cse9 [V36,T13] ( 3, 12 ) int -> x2 "CSE - aggressive" -; V37 cse10 [V37,T17] ( 2, 8 ) int -> x3 "CSE - aggressive" -; V38 cse11 [V38,T20] ( 7, 3.50) int -> x5 "CSE - aggressive" -; V39 cse12 [V39,T18] ( 3, 6 ) int -> x2 "CSE - aggressive" -; V40 cse13 [V40,T24] ( 4, 2 ) int -> x2 "CSE - moderate" -; V41 cse14 [V41,T29] ( 3, 1.50) int -> x1 "CSE - moderate" +; V09 tmp2 [V09,T04] ( 5, 28 ) ref -> x1 class-hnd exact "impAppendStmt" +;* V10 tmp3 [V10 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inline return value spill temp" +; V11 tmp4 [V11,T26] ( 3, 1.50) ref -> x0 class-hnd single-def "Inline stloc first use temp" +; V12 tmp5 [V12,T25] ( 2, 2 ) long -> x2 "Inlining Arg" +; V13 tmp6 [V13,T24] ( 2, 2 ) ref -> x2 class-hnd exact single-def "Inlining Arg" +; V14 tmp7 [V14,T08] ( 3, 12 ) ref -> x1 class-hnd "Inline stloc first use temp" +; V15 tmp8 [V15,T07] ( 5, 14 ) ref -> x0 class-hnd exact "Inline return value spill temp" +; V16 tmp9 [V16,T16] ( 2, 8 ) ref -> x2 class-hnd "Inline stloc first use temp" +; V17 tmp10 [V17,T15] ( 2, 4 ) ubyte -> x0 "Inline return value spill temp" +; V18 tmp11 [V18,T17] ( 2, 8 ) byref -> x3 "impAppendStmt" +; V19 tmp12 [V19,T27] ( 3, 1.50) ref -> x14 class-hnd single-def "Inline stloc first use temp" +; V20 tmp13 [V20,T22] ( 4, 2 ) int -> x15 "Inline stloc first use temp" +; V21 tmp14 [V21 ] ( 9, 27 ) byref -> [fp-0x28] do-not-enreg[X] addr-exposed "field V02._reference (fldOffset=0x0)" P-DEP +; V22 tmp15 [V22 ] ( 9, 27 ) int -> [fp-0x20] do-not-enreg[X] addr-exposed "field V02._length (fldOffset=0x8)" P-DEP +;* V23 tmp16 [V23 ] ( 0, 0 ) byref -> zero-ref "field V05._reference (fldOffset=0x0)" P-INDEP +;* V24 tmp17 [V24 ] ( 0, 0 ) int -> zero-ref "field V05._length (fldOffset=0x8)" P-INDEP +; V25 tmp18 [V25,T30] ( 2, 1 ) byref -> x2 single-def "field V08._reference (fldOffset=0x0)" P-INDEP +; V26 tmp19 [V26,T31] ( 2, 1 ) int -> x1 "field V08._length (fldOffset=0x8)" P-INDEP +; V27 GsCookie [V27 ] ( 1, 1 ) long -> [fp-0x30] do-not-enreg[X] addr-exposed "GSSecurityCookie" +; V28 cse0 [V28,T14] ( 3, 10 ) int -> x3 "CSE - aggressive" +; V29 cse1 [V29,T28] ( 3, 1.50) long -> x4 "CSE - moderate" +; V30 cse2 [V30,T32] ( 2, 1 ) int -> x1 "CSE - moderate" +; V31 cse3 [V31,T33] ( 2, 1 ) int -> x12 "CSE - moderate" +; V32 cse4 [V32,T01] ( 3, 48 ) long -> x4 "CSE - aggressive" +; V33 cse5 [V33,T10] ( 3, 12 ) long -> x4 "CSE - aggressive" +; V34 cse6 [V34,T09] ( 3, 12 ) ref -> x2 "CSE - aggressive" +; V35 cse7 [V35,T11] ( 3, 12 ) int -> x0 "CSE - aggressive" +; V36 cse8 [V36,T03] ( 14, 34.50) int -> x0 "CSE - aggressive" +; V37 cse9 [V37,T02] ( 9, 46 ) byref -> registers "CSE - aggressive" +; V38 cse10 [V38,T12] ( 3, 12 ) int -> x3 "CSE - aggressive" +; V39 cse11 [V39,T13] ( 3, 12 ) int -> x2 "CSE - aggressive" +; V40 cse12 [V40,T20] ( 7, 3.50) int -> x5 "CSE - aggressive" +; V41 cse13 [V41,T18] ( 3, 6 ) int -> x2 "CSE - aggressive" +; V42 cse14 [V42,T23] ( 4, 2 ) int -> x2 "CSE - moderate" +; V43 cse15 [V43,T29] ( 3, 1.50) int -> x1 "CSE - moderate" ; ; Lcl frame size = 24 G_M28069_IG01: sub sp, sp, #64 stp x19, x20, [sp, #0x18] str x21, [sp, #0x28] stp fp, lr, [sp, #0x30] add fp, sp, #48 str xzr, [fp, #-0x28] // [V02 loc1] movz x1, #0xD1FFAB1E - movk x1, #24 LSL #16 - str x1, [fp, #-0x30] // [V26 GsCookie] + movk x1, #25 LSL #16 + str x1, [fp, #-0x30] // [V27 GsCookie] mov x19, x0 ;; size=40 bbWeight=1 PerfScore 7.50 G_M28069_IG02: ldr w0, [x19, #0x10] cbz w0, G_M28069_IG25 ;; size=8 bbWeight=1 PerfScore 4.00 G_M28069_IG03: - ldr w0, [x19, #0x10] - cbz w0, G_M28069_IG29 ldr x0, [x19, #0x08] + ldr w1, [x19, #0x10] + cbz w1, G_M28069_IG29 ldr w1, [x0, #0x08] - cmp w1, #0 - bls G_M28069_IG30 + cbz w1, G_M28069_IG29 ldr x20, [x0, #0x10] ldr w0, [x20, #0x08] cmp w0, #100 bgt G_M28069_IG25 add w1, w0, #2 mov w2, #2 umull x2, w1, w2 tst x2, x2 beq G_M28069_IG06 mov x3, x2 add x3, x3, #15 and x3, x3, #-16 subs x3, sp, x3 bvc G_M28069_IG04 mov x3, xzr - ;; size=84 bbWeight=0.50 PerfScore 13.75 + ;; size=80 bbWeight=0.50 PerfScore 13.50 G_M28069_IG04: ldr wzr, [sp] sub x4, sp, #1, LSL #12 cmp x4, x3 blo G_M28069_IG05 mov sp, x4 b G_M28069_IG04 ;; size=24 bbWeight=0.50 PerfScore 2.75 G_M28069_IG05: mov sp, x3 mov x2, sp ;; size=8 bbWeight=0.50 PerfScore 0.50 G_M28069_IG06: tbnz w1, #31, G_M28069_IG28 - str x2, [fp, #-0x28] // [V17 tmp10] - str w1, [fp, #-0x20] // [V18 tmp11] + str x2, [fp, #-0x28] // [V21 tmp14] + str w1, [fp, #-0x20] // [V22 tmp15] mov w1, wzr cmp w0, #0 ble G_M28069_IG15 add x2, x20, #12 ;; size=28 bbWeight=0.50 PerfScore 2.75 G_M28069_IG07: ldrh w3, [x2, w1, UXTW #2] cmp w3, #39 bne G_M28069_IG11 align [0 bytes for IG08] align [0 bytes] align [0 bytes] align [0 bytes] ;; size=12 bbWeight=4 PerfScore 18.00 G_M28069_IG08: - ldr w3, [fp, #-0x20] // [V18 tmp11] + ldr w3, [fp, #-0x20] // [V22 tmp15] cmp w1, w3 bhs G_M28069_IG30 - ldr x3, [fp, #-0x28] // [V17 tmp10] + ldr x3, [fp, #-0x28] // [V21 tmp14] ubfiz x4, x1, #1, #32 add x3, x3, x4 ldrh w4, [x2, x4] strh w4, [x3] add w1, w1, #1 cmp w0, w1 ble G_M28069_IG09 ldrh w3, [x2, w1, UXTW #2] cmp w3, #39 bne G_M28069_IG08 ;; size=56 bbWeight=16 PerfScore 280.00 G_M28069_IG09: cmp w0, w1 bgt G_M28069_IG12 ;; size=8 bbWeight=2 PerfScore 3.00 G_M28069_IG10: b G_M28069_IG25 align [4 bytes for IG17] + align [4 bytes] align [0 bytes] align [0 bytes] - align [0 bytes] - ;; size=8 bbWeight=0.50 PerfScore 0.50 + ;; size=12 bbWeight=0.50 PerfScore 0.50 G_M28069_IG11: cmp w3, #121 beq G_M28069_IG14 ;; size=8 bbWeight=2 PerfScore 3.00 G_M28069_IG12: - ldr w3, [fp, #-0x20] // [V18 tmp11] + ldr w3, [fp, #-0x20] // [V22 tmp15] cmp w1, w3 bhs G_M28069_IG30 - ldr x3, [fp, #-0x28] // [V17 tmp10] + ldr x3, [fp, #-0x28] // [V21 tmp14] ubfiz x4, x1, #1, #32 add x3, x3, x4 ldrh w4, [x2, x4] strh w4, [x3] add w1, w1, #1 cmp w0, w1 bgt G_M28069_IG07 ;; size=44 bbWeight=4 PerfScore 52.00 G_M28069_IG13: b G_M28069_IG15 ;; size=4 bbWeight=0.50 PerfScore 0.50 G_M28069_IG14: - ldr w2, [fp, #-0x20] // [V18 tmp11] + ldr w2, [fp, #-0x20] // [V22 tmp15] cmp w1, w2 bhs G_M28069_IG30 - ldr x2, [fp, #-0x28] // [V17 tmp10] + ldr x2, [fp, #-0x28] // [V21 tmp14] mov w3, #121 strh w3, [x2, w1, UXTW #2] ;; size=24 bbWeight=0.50 PerfScore 3.50 G_M28069_IG15: sub w2, w0, #1 cmp w2, w1 ble G_M28069_IG25 add w2, w1, #1 cmp w2, w0 bhs G_M28069_IG30 add x3, x20, #12 ubfiz x4, x2, #1, #32 ldrh w5, [x3, x4] cmp w5, #121 bne G_M28069_IG25 add w5, w1, #2 cmp w0, w5 ble G_M28069_IG16 cmp w5, w0 bhs G_M28069_IG30 ldrh w6, [x3, w5, UXTW #2] cmp w6, #121 beq G_M28069_IG25 ;; size=76 bbWeight=0.50 PerfScore 9.00 G_M28069_IG16: - ldr w6, [fp, #-0x20] // [V18 tmp11] + ldr w6, [fp, #-0x20] // [V22 tmp15] cmp w2, w6 bhs G_M28069_IG30 - ldr x2, [fp, #-0x28] // [V17 tmp10] + ldr x2, [fp, #-0x28] // [V21 tmp14] mov w6, #121 strh w6, [x2, x4] - ldr w2, [fp, #-0x20] // [V18 tmp11] + ldr w2, [fp, #-0x20] // [V22 tmp15] cmp w5, w2 bhs G_M28069_IG30 - ldr x2, [fp, #-0x28] // [V17 tmp10] + ldr x2, [fp, #-0x28] // [V21 tmp14] strh w6, [x2, w5, UXTW #2] add w1, w1, #3 - ldr w2, [fp, #-0x20] // [V18 tmp11] + ldr w2, [fp, #-0x20] // [V22 tmp15] cmp w1, w2 bhs G_M28069_IG30 - ldr x2, [fp, #-0x28] // [V17 tmp10] + ldr x2, [fp, #-0x28] // [V21 tmp14] strh w6, [x2, w1, UXTW #2] sxtw w1, w5 cmp w0, w1 ble G_M28069_IG18 ;; size=80 bbWeight=0.50 PerfScore 11.25 G_M28069_IG17: add w2, w1, #2 - ldr w4, [fp, #-0x20] // [V18 tmp11] + ldr w4, [fp, #-0x20] // [V22 tmp15] cmp w2, w4 bhs G_M28069_IG30 - ldr x4, [fp, #-0x28] // [V17 tmp10] + ldr x4, [fp, #-0x28] // [V21 tmp14] ubfiz x2, x2, #1, #32 add x2, x4, x2 cmp w1, w0 bhs G_M28069_IG30 ldrh w4, [x3, w1, UXTW #2] strh w4, [x2] add w1, w1, #1 cmp w0, w1 bgt G_M28069_IG17 ;; size=56 bbWeight=4 PerfScore 60.00 G_M28069_IG18: sub x0, fp, #40 // [V02 loc1] movz x1, #0xD1FFAB1E // code for System.Span`1[ushort]:ToString():System.String:this movk x1, #0xD1FFAB1E LSL #16 movk x1, #0xD1FFAB1E LSL #32 ldr x1, [x1] blr x1 mov x2, x0 ldr w0, [x19, #0x10] cbz w0, G_M28069_IG29 ldr x0, [x19, #0x08] mov x1, xzr bl CORINFO_HELP_ARRADDR_ST ldr w2, [x19, #0x14] add w2, w2, #1 str w2, [x19, #0x14] mov w21, #1 ldr w2, [x19, #0x10] cmp w2, #1 ble G_M28069_IG22 ;; size=76 bbWeight=0.50 PerfScore 12.25 G_M28069_IG19: - ldr w2, [x19, #0x10] - cmp w21, w2 + ldr x2, [x19, #0x08] + mov x1, x2 + ldr w0, [x19, #0x10] + cmp w21, w0 bhs G_M28069_IG29 - ldr x1, [x19, #0x08] - mov x0, x1 - ldr w3, [x0, #0x08] - cmp w21, w3 - bhs G_M28069_IG30 - add x0, x0, #16 - ldr x0, [x0, w21, UXTW #3] - cbz w2, G_M28069_IG29 - ldr x1, [x1, #0x10] - cmp x0, x1 + ldr w3, [x1, #0x08] + cmp w3, w21 + bls G_M28069_IG29 + add x1, x1, #16 + ldr x1, [x1, w21, UXTW #3] + cbz w0, G_M28069_IG29 + cbz w3, G_M28069_IG29 + ldr x0, [x2, #0x10] + cmp x1, x0 beq G_M28069_IG23 - ;; size=56 bbWeight=4 PerfScore 86.00 + ;; size=60 bbWeight=4 PerfScore 90.00 G_M28069_IG20: - cbz x0, G_M28069_IG21 cbz x1, G_M28069_IG21 - ldr w2, [x0, #0x08] - ldr w3, [x1, #0x08] + cbz x0, G_M28069_IG21 + ldr w2, [x1, #0x08] + ldr w3, [x0, #0x08] cmp w2, w3 bne G_M28069_IG21 - add x0, x0, #12 + add x3, x1, #12 lsl w2, w2, #1 mov w2, w2 - add x1, x1, #12 + add x1, x0, #12 + mov x0, x3 movz x3, #0xD1FFAB1E // code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte movk x3, #0xD1FFAB1E LSL #16 movk x3, #0xD1FFAB1E LSL #32 ldr x3, [x3] blr x3 cbnz w0, G_M28069_IG23 - ;; size=64 bbWeight=2 PerfScore 37.00 + ;; size=68 bbWeight=2 PerfScore 38.00 G_M28069_IG21: add w21, w21, #1 ldr w14, [x19, #0x10] cmp w21, w14 blt G_M28069_IG19 ;; size=16 bbWeight=4 PerfScore 20.00 G_M28069_IG22: ldr w14, [x19, #0x14] add w14, w14, #1 str w14, [x19, #0x14] ldr x14, [x19, #0x08] ldr w15, [x19, #0x10] ldr w12, [x14, #0x08] cmp w12, w15 bls G_M28069_IG24 add w12, w15, #1 str w12, [x19, #0x10] add x14, x14, #16 add x14, x14, x15, LSL #3 mov x15, x20 bl CORINFO_HELP_ASSIGN_REF b G_M28069_IG25 ;; size=60 bbWeight=0.50 PerfScore 10.25 G_M28069_IG23: ldr w0, [x19, #0x10] cmp w21, w0 bhs G_M28069_IG29 ldr x0, [x19, #0x08] sxtw x1, w21 mov x2, x20 bl CORINFO_HELP_ARRADDR_ST ldr w0, [x19, #0x14] add w0, w0, #1 str w0, [x19, #0x14] b G_M28069_IG25 ;; size=44 bbWeight=0.50 PerfScore 7.50 G_M28069_IG24: mov x0, x19 mov x1, x20 movz x2, #0xD1FFAB1E // code for System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this movk x2, #0xD1FFAB1E LSL #16 movk x2, #0xD1FFAB1E LSL #32 ldr x2, [x2] blr x2 ;; size=28 bbWeight=0.50 PerfScore 3.25 G_M28069_IG25: movz xip0, #0xD1FFAB1E - movk xip0, #24 LSL #16 - ldr xip1, [fp, #-0x30] // [V26 GsCookie] + movk xip0, #25 LSL #16 + ldr xip1, [fp, #-0x30] // [V27 GsCookie] cmp xip0, xip1 beq G_M28069_IG26 bl CORINFO_HELP_FAIL_FAST ;; size=24 bbWeight=1 PerfScore 5.50 G_M28069_IG26: sub sp, fp, #48 ldp fp, lr, [sp, #0x30] ldr x21, [sp, #0x28] ldp x19, x20, [sp, #0x18] add sp, sp, #64 ret lr ;; size=24 bbWeight=1 PerfScore 6.00 G_M28069_IG27: bl CORINFO_HELP_OVERFLOW ;; size=4 bbWeight=0 PerfScore 0.00 G_M28069_IG28: movz x0, #0xD1FFAB1E // code for System.ThrowHelper:ThrowArgumentOutOfRangeException() movk x0, #0xD1FFAB1E LSL #16 movk x0, #0xD1FFAB1E LSL #32 ldr x0, [x0] blr x0 brk_unix #0 ;; size=24 bbWeight=0 PerfScore 0.00 G_M28069_IG29: movz x0, #0xD1FFAB1E // code for System.ThrowHelper:ThrowArgumentOutOfRange_IndexMustBeLessException() movk x0, #0xD1FFAB1E LSL #16 movk x0, #0xD1FFAB1E LSL #32 ldr x0, [x0] blr x0 brk_unix #0 ;; size=24 bbWeight=0 PerfScore 0.00 G_M28069_IG30: bl CORINFO_HELP_RNGCHKFAIL brk_unix #0 ;; size=8 bbWeight=0 PerfScore 0.00 -; Total bytes of code 1020, prolog size 40, PerfScore 761.75, instruction count 262, allocated bytes for code 1020 (MethodHash=bd52925a) for method System.Globalization.CalendarData:FixDefaultShortDatePattern(System.Collections.Generic.List`1[System.String]) (FullOpts) +; Total bytes of code 1028, prolog size 40, PerfScore 767.30, instruction count 263, allocated bytes for code 1028 (MethodHash=bd52925a) for method System.Globalization.CalendarData:FixDefaultShortDatePattern(System.Collections.Generic.List`1[System.String]) (FullOpts) ```
8 (0.508% of base) - System.Globalization.JapaneseCalendar:IcuGetJapaneseEras():System.Globalization.EraInfo[] ```diff ; Assembly listing for method System.Globalization.JapaneseCalendar:IcuGetJapaneseEras():System.Globalization.EraInfo[] (FullOpts) ; Emitting BLENDED_CODE for generic ARM64 - Unix ; FullOpts code ; optimized code ; fp based frame ; fully interruptible ; No PGO data ; 0 inlinees with PGO data; 20 single block inlinees; 8 inlinees without PGO data ; Final local variable assignments ; ; V00 loc0 [V00 ] ( 4, 13 ) ref -> [fp+0x78] do-not-enreg[X] must-init addr-exposed ld-addr-op class-hnd -; V01 loc1 [V01,T06] ( 11, 26 ) ref -> [fp+0x60] class-hnd exact single-def -; V02 loc2 [V02,T25] ( 3, 8.50) int -> x21 +; V01 loc1 [V01,T07] ( 11, 22.50) ref -> [fp+0x60] class-hnd exact single-def +; V02 loc2 [V02,T26] ( 3, 8.50) int -> x21 ;* V03 loc3 [V03 ] ( 0, 0 ) int -> zero-ref ; V04 loc4 [V04 ] ( 15, 14 ) ref -> [fp+0x70] do-not-enreg[X] must-init addr-exposed ld-addr-op class-hnd -; V05 loc5 [V05,T09] ( 6, 16.50) int -> x0 +; V05 loc5 [V05,T08] ( 6, 16.50) int -> x0 ; V06 loc6 [V06,T03] ( 10, 33 ) int -> x20 ; V07 loc7 [V07 ] ( 8, 32 ) struct ( 8) [fp+0x68] do-not-enreg[XS] addr-exposed ld-addr-op ; V08 loc8 [V08,T05] ( 8, 28.50) int -> x2 ;# V09 OutArgs [V09 ] ( 1, 1 ) struct ( 0) [sp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace" -; V10 tmp1 [V10,T42] ( 3, 3 ) ref -> x20 class-hnd exact single-def "NewObj constructor temp" +; V10 tmp1 [V10,T45] ( 3, 3 ) ref -> x20 class-hnd exact single-def "NewObj constructor temp" ;* V11 tmp2 [V11 ] ( 0, 0 ) struct ( 8) zero-ref "folding static readonly field struct" ; V12 tmp3 [V12,T01] ( 8, 52 ) int -> x22 "non-inline candidate call" ; V13 tmp4 [V13,T02] ( 6, 48 ) int -> x23 "non-inline candidate call" ; V14 tmp5 [V14,T04] ( 4, 32 ) int -> x24 "non-inline candidate call" ; V15 tmp6 [V15,T12] ( 2, 16 ) int -> x25 "non-inline candidate call" ; V16 tmp7 [V16,T13] ( 2, 16 ) int -> x21 "impAppendStmt" -; V17 tmp8 [V17,T10] ( 2, 16 ) ref -> x27 class-hnd exact "impAppendStmt" +; V17 tmp8 [V17,T09] ( 2, 16 ) ref -> x27 class-hnd exact "impAppendStmt" ; V18 tmp9 [V18,T00] ( 11, 80 ) ref -> x1 class-hnd exact "NewObj constructor temp" -; V19 tmp10 [V19,T47] ( 3, 1.50) int -> x0 -;* V20 tmp11 [V20 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "impAppendStmt" +; V19 tmp10 [V19,T51] ( 3, 1.50) int -> x0 +; V20 tmp11 [V20,T10] ( 2, 16 ) ref -> x15 class-hnd exact "impAppendStmt" ;* V21 tmp12 [V21 ] ( 0, 0 ) struct ( 8) zero-ref ld-addr-op "Inlining Arg" ;* V22 tmp13 [V22 ] ( 0, 0 ) struct ( 8) zero-ref ld-addr-op "Inlining Arg" ;* V23 tmp14 [V23 ] ( 0, 0 ) long -> zero-ref "impAppendStmt" ; V24 tmp15 [V24,T11] ( 2, 16 ) ref -> x0 class-hnd exact "Inlining Arg" -; V25 tmp16 [V25,T27] ( 3, 8 ) ref -> x26 class-hnd "Inline return value spill temp" -; V26 tmp17 [V26,T07] ( 5, 24 ) ref -> x26 class-hnd exact "Inlining Arg" +; V25 tmp16 [V25,T28] ( 3, 8 ) ref -> x26 class-hnd "Inline return value spill temp" +; V26 tmp17 [V26,T06] ( 5, 24 ) ref -> x26 class-hnd exact "Inlining Arg" ;* V27 tmp18 [V27 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inline return value spill temp" -; V28 tmp19 [V28,T26] ( 4, 8 ) ref -> x0 class-hnd exact "Inline stloc first use temp" +; V28 tmp19 [V28,T27] ( 4, 8 ) ref -> x0 class-hnd exact "Inline stloc first use temp" ;* V29 tmp20 [V29 ] ( 0, 0 ) long -> zero-ref "Inline stloc first use temp" -; V30 tmp21 [V30,T29] ( 2, 8 ) byref -> x1 "Inlining Arg" -; V31 tmp22 [V31,T30] ( 2, 8 ) byref -> x2 "Inlining Arg" +; V30 tmp21 [V30,T30] ( 2, 8 ) byref -> x1 "Inlining Arg" +; V31 tmp22 [V31,T31] ( 2, 8 ) byref -> x2 "Inlining Arg" ;* V32 tmp23 [V32 ] ( 0, 0 ) long -> zero-ref "Inlining Arg" ;* V33 tmp24 [V33 ] ( 0, 0 ) struct ( 8) zero-ref ld-addr-op "NewObj constructor temp" ;* V34 tmp25 [V34 ] ( 0, 0 ) struct ( 8) zero-ref ld-addr-op "Inline stloc first use temp" ;* V35 tmp26 [V35 ] ( 0, 0 ) struct (16) zero-ref ;* V36 tmp27 [V36 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline stloc first use temp" -; V37 tmp28 [V37,T31] ( 2, 8 ) int -> x14 "Inline stloc first use temp" -;* V38 tmp29 [V38,T38] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp" +; V37 tmp28 [V37,T32] ( 2, 8 ) int -> x14 "Inline stloc first use temp" +;* V38 tmp29 [V38,T42] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp" ;* V39 tmp30 [V39 ] ( 0, 0 ) struct (16) zero-ref "ReadOnlySpan for CreateSpan" ;* V40 tmp31 [V40 ] ( 0, 0 ) struct (16) zero-ref "ReadOnlySpan for CreateSpan" -; V41 tmp32 [V41,T18] ( 3, 12 ) int -> x15 "Inline stloc first use temp" -; V42 tmp33 [V42,T19] ( 3, 12 ) int -> x12 "Inline stloc first use temp" -; V43 tmp34 [V43,T23] ( 3, 10 ) ref -> x14 class-hnd "Inline stloc first use temp" +; V41 tmp32 [V41,T19] ( 3, 12 ) int -> x15 "Inline stloc first use temp" +; V42 tmp33 [V42,T20] ( 3, 12 ) int -> x12 "Inline stloc first use temp" +; V43 tmp34 [V43,T24] ( 3, 10 ) ref -> x14 class-hnd "Inline stloc first use temp" ; V44 tmp35 [V44,T15] ( 4, 12 ) int -> x15 "Inline stloc first use temp" -; V45 tmp36 [V45,T35] ( 3, 4 ) ref -> x0 "Single return block return value" -; V46 FramesRoot [V46,T34] ( 6, 4 ) long -> x19 "Pinvoke FrameListRoot" -; V47 PInvokeFrame [V47 ] ( 8, 6 ) struct (72) [fp+0x18] do-not-enreg[XS] addr-exposed "Pinvoke FrameVar" -; V48 tmp39 [V48 ] ( 8, 32 ) long -> [fp+0x68] do-not-enreg[X] addr-exposed "field V07._dateData (fldOffset=0x0)" P-DEP -;* V49 tmp40 [V49 ] ( 0, 0 ) long -> zero-ref "field V11._dateData (fldOffset=0x0)" P-INDEP -; V50 tmp41 [V50,T32] ( 2, 8 ) long -> x0 "field V21._dateData (fldOffset=0x0)" P-INDEP -;* V51 tmp42 [V51 ] ( 0, 0 ) long -> zero-ref "field V22._dateData (fldOffset=0x0)" P-INDEP -; V52 tmp43 [V52,T33] ( 2, 8 ) long -> x14 "field V33._dateData (fldOffset=0x0)" P-INDEP -;* V53 tmp44 [V53 ] ( 0, 0 ) long -> zero-ref "field V34._dateData (fldOffset=0x0)" P-INDEP -; V54 tmp45 [V54,T28] ( 3, 8 ) byref -> x14 "field V35._reference (fldOffset=0x0)" P-INDEP -;* V55 tmp46 [V55,T39] ( 0, 0 ) int -> zero-ref "field V35._length (fldOffset=0x8)" P-INDEP -; V56 tmp47 [V56,T16] ( 3, 12 ) byref -> x14 "field V36._reference (fldOffset=0x0)" P-INDEP -;* V57 tmp48 [V57,T41] ( 0, 0 ) int -> zero-ref "field V36._length (fldOffset=0x8)" P-INDEP -; V58 tmp49 [V58,T36] ( 2, 4 ) byref -> x14 "field V39._reference (fldOffset=0x0)" P-INDEP -;* V59 tmp50 [V59,T44] ( 0, 0 ) int -> zero-ref "field V39._length (fldOffset=0x8)" P-INDEP -; V60 tmp51 [V60,T37] ( 2, 4 ) byref -> x14 "field V40._reference (fldOffset=0x0)" P-INDEP -;* V61 tmp52 [V61,T45] ( 0, 0 ) int -> zero-ref "field V40._length (fldOffset=0x8)" P-INDEP -; V62 tmp53 [V62,T43] ( 3, 3 ) ref -> x14 single-def "arr expr" -; V63 tmp54 [V63,T08] ( 3, 24 ) ref -> x14 "arr expr" -;* V64 tmp55 [V64,T40] ( 0, 0 ) ref -> zero-ref "arr expr" -; V65 cse0 [V65,T20] ( 3, 12 ) int -> x14 "CSE - moderate" -; V66 cse1 [V66,T24] ( 3, 10 ) ref -> x14 "CSE - moderate" -; V67 cse2 [V67,T17] ( 3, 12 ) ref -> x26 "CSE - moderate" -; V68 cse3 [V68,T46] ( 3, 1.50) byref -> x14 "CSE - moderate" -; V69 cse4 [V69,T14] ( 7, 14 ) int -> x1 "CSE - moderate" -; V70 cse5 [V70,T21] ( 3, 12 ) int -> x12 "CSE - moderate" -; V71 cse6 [V71,T22] ( 3, 12 ) int -> x0 "CSE - moderate" +; V45 tmp36 [V45,T16] ( 3, 12 ) ref -> x14 class-hnd "Inline stloc first use temp" +; V46 tmp37 [V46,T39] ( 2, 4 ) ref -> x14 class-hnd exact "Inline return value spill temp" +;* V47 tmp38 [V47,T47] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" +; V48 tmp39 [V48,T38] ( 3, 4 ) ref -> x0 "Single return block return value" +; V49 FramesRoot [V49,T37] ( 6, 4 ) long -> x19 "Pinvoke FrameListRoot" +; V50 PInvokeFrame [V50 ] ( 8, 6 ) struct (72) [fp+0x18] do-not-enreg[XS] addr-exposed "Pinvoke FrameVar" +; V51 tmp42 [V51 ] ( 8, 32 ) long -> [fp+0x68] do-not-enreg[X] addr-exposed "field V07._dateData (fldOffset=0x0)" P-DEP +;* V52 tmp43 [V52 ] ( 0, 0 ) long -> zero-ref "field V11._dateData (fldOffset=0x0)" P-INDEP +; V53 tmp44 [V53,T33] ( 2, 8 ) long -> x0 "field V21._dateData (fldOffset=0x0)" P-INDEP +;* V54 tmp45 [V54 ] ( 0, 0 ) long -> zero-ref "field V22._dateData (fldOffset=0x0)" P-INDEP +; V55 tmp46 [V55,T34] ( 2, 8 ) long -> x14 "field V33._dateData (fldOffset=0x0)" P-INDEP +;* V56 tmp47 [V56 ] ( 0, 0 ) long -> zero-ref "field V34._dateData (fldOffset=0x0)" P-INDEP +; V57 tmp48 [V57,T29] ( 3, 8 ) byref -> x14 "field V35._reference (fldOffset=0x0)" P-INDEP +;* V58 tmp49 [V58,T43] ( 0, 0 ) int -> zero-ref "field V35._length (fldOffset=0x8)" P-INDEP +; V59 tmp50 [V59,T17] ( 3, 12 ) byref -> x14 "field V36._reference (fldOffset=0x0)" P-INDEP +;* V60 tmp51 [V60,T44] ( 0, 0 ) int -> zero-ref "field V36._length (fldOffset=0x8)" P-INDEP +; V61 tmp52 [V61,T40] ( 2, 4 ) byref -> x14 "field V39._reference (fldOffset=0x0)" P-INDEP +;* V62 tmp53 [V62,T48] ( 0, 0 ) int -> zero-ref "field V39._length (fldOffset=0x8)" P-INDEP +; V63 tmp54 [V63,T41] ( 2, 4 ) byref -> x14 "field V40._reference (fldOffset=0x0)" P-INDEP +;* V64 tmp55 [V64,T49] ( 0, 0 ) int -> zero-ref "field V40._length (fldOffset=0x8)" P-INDEP +; V65 tmp56 [V65,T46] ( 3, 3 ) ref -> x14 single-def "arr expr" +; V66 cse0 [V66,T21] ( 3, 12 ) int -> x14 "CSE - moderate" +; V67 cse1 [V67,T25] ( 3, 10 ) ref -> x14 "CSE - moderate" +; V68 cse2 [V68,T18] ( 3, 12 ) ref -> x26 "CSE - moderate" +; V69 cse3 [V69,T50] ( 3, 1.50) byref -> x14 "CSE - moderate" +; V70 cse4 [V70,T14] ( 7, 14 ) int -> x1 "CSE - moderate" +; V71 cse5 [V71,T36] ( 2, 4.50) ref -> x3 "CSE - moderate" +; V72 cse6 [V72,T22] ( 3, 12 ) int -> x12 "CSE - moderate" +; V73 cse7 [V73,T35] ( 2, 8 ) int -> x15 "CSE - moderate" +; V74 cse8 [V74,T23] ( 3, 12 ) int -> x0 "CSE - moderate" ; ; Lcl frame size = 112 G_M53339_IG01: stp fp, lr, [sp, #-0xD0]! stp x19, x20, [sp, #0x80] stp x21, x22, [sp, #0x90] stp x23, x24, [sp, #0xA0] stp x25, x26, [sp, #0xB0] stp x27, x28, [sp, #0xC0] mov fp, sp stp xzr, xzr, [fp, #0x70] // [V04 loc4], [V00 loc0] ;; size=32 bbWeight=1 PerfScore 7.50 G_M53339_IG02: - add x0, fp, #32 // [V47 PInvokeFrame+0x08] + add x0, fp, #32 // [V50 PInvokeFrame+0x08] mov x1, x12 bl CORINFO_HELP_INIT_PINVOKE_FRAME mov x19, x0 mov x3, sp - str x3, [fp, #0x40] // [V47 PInvokeFrame+0x28] + str x3, [fp, #0x40] // [V50 PInvokeFrame+0x28] mov x3, fp - str x3, [fp, #0x50] // [V47 PInvokeFrame+0x38] + str x3, [fp, #0x50] // [V50 PInvokeFrame+0x38] add x3, fp, #120 // [V00 loc0] movz x0, #0xD1FFAB1E movk x0, #0xD1FFAB1E LSL #16 movk x0, #0xD1FFAB1E LSL #32 mov w1, #3 mov w2, #13 movz x4, #0xD1FFAB1E // code for System.Globalization.CalendarData:EnumCalendarInfo(System.String,ushort,int,byref):ubyte movk x4, #0xD1FFAB1E LSL #16 movk x4, #0xD1FFAB1E LSL #32 ldr x4, [x4] blr x4 cbnz w0, G_M53339_IG04 ;; size=80 bbWeight=1 PerfScore 15.00 G_M53339_IG03: mov x0, xzr b G_M53339_IG32 ;; size=8 bbWeight=0.50 PerfScore 0.75 G_M53339_IG04: movz x0, #0xD1FFAB1E movk x0, #0xD1FFAB1E LSL #16 movk x0, #0xD1FFAB1E LSL #32 bl CORINFO_HELP_NEWSFAST mov x20, x0 movz x0, #0xD1FFAB1E movk x0, #0xD1FFAB1E LSL #16 movk x0, #0xD1FFAB1E LSL #32 mov w1, #180 bl CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS movz x14, #0xD1FFAB1E // data for System.Collections.Generic.List`1[System.Globalization.EraInfo]:s_emptyArray movk x14, #0xD1FFAB1E LSL #16 movk x14, #0xD1FFAB1E LSL #32 ldr x15, [x14] add x14, x20, #8 bl CORINFO_HELP_ASSIGN_REF str x20, [fp, #0x60] // [V01 loc1] mov w21, #0xD1FFAB1E movz x0, #0xD1FFAB1E movk x0, #0xD1FFAB1E LSL #16 movk x0, #0xD1FFAB1E LSL #32 - str x0, [fp, #0x30] // [V47 PInvokeFrame+0x18] + str x0, [fp, #0x30] // [V50 PInvokeFrame+0x18] adr x0, [G_M53339_IG07] - str x0, [fp, #0x48] // [V47 PInvokeFrame+0x30] - add x0, fp, #32 // [V47 PInvokeFrame+0x08] + str x0, [fp, #0x48] // [V50 PInvokeFrame+0x30] + add x0, fp, #32 // [V50 PInvokeFrame+0x08] str x0, [x19, #0x10] strb wzr, [x19, #0x0C] ;; size=108 bbWeight=0.50 PerfScore 10.00 G_M53339_IG05: movz x0, #0xD1FFAB1E movk x0, #0xD1FFAB1E LSL #16 movk x0, #0xD1FFAB1E LSL #32 ;; size=12 bbWeight=0.50 PerfScore 0.75 G_M53339_IG06: blr x0 ;; size=4 bbWeight=0.50 PerfScore 0.50 G_M53339_IG07: mov w20, w0 mov w0, #1 strb w0, [x19, #0x0C] movz x0, #0xD1FFAB1E movk x0, #0xD1FFAB1E LSL #16 movk x0, #0xD1FFAB1E LSL #32 ldr w0, [x0] cmp w0, #0 beq G_M53339_IG08 bl CORINFO_HELP_STOP_FOR_GC ;; size=40 bbWeight=0.50 PerfScore 4.50 G_M53339_IG08: - ldr x1, [fp, #0x28] // [V47 PInvokeFrame+0x10] + ldr x1, [fp, #0x28] // [V50 PInvokeFrame+0x10] str x1, [x19, #0x10] tbnz w20, #31, G_M53339_IG11 ;; size=12 bbWeight=0.50 PerfScore 2.00 G_M53339_IG09: add x1, fp, #104 // [V07 loc7] mov w0, w20 movz x2, #0xD1FFAB1E // code for System.Globalization.JapaneseCalendar:GetJapaneseEraStartDate(int,byref):ubyte movk x2, #0xD1FFAB1E LSL #16 movk x2, #0xD1FFAB1E LSL #32 ldr x2, [x2] blr x2 cbz w0, G_M53339_IG03 - ldp x19, x0, [fp, #0x60] // [V01 loc1], [V48 tmp39] + ldp x19, x0, [fp, #0x60] // [V01 loc1], [V51 tmp42] and x0, x0, #0xD1FFAB1E movz x1, #0xD1FFAB1E movk x1, #0xD1FFAB1E LSL #16 movk x1, #0xD1FFAB1E LSL #32 movk x1, #0xD1FFAB1E LSL #48 cmp x0, x1 blt G_M53339_IG21 add x0, fp, #104 // [V07 loc7] movz x1, #0xD1FFAB1E // code for System.DateTime:get_Year():int:this movk x1, #0xD1FFAB1E LSL #16 movk x1, #0xD1FFAB1E LSL #32 ldr x1, [x1] blr x1 sxtw w22, w0 add x0, fp, #104 // [V07 loc7] movz x1, #0xD1FFAB1E // code for System.DateTime:get_Month():int:this movk x1, #0xD1FFAB1E LSL #16 movk x1, #0xD1FFAB1E LSL #32 ldr x1, [x1] blr x1 sxtw w23, w0 add x0, fp, #104 // [V07 loc7] movz x1, #0xD1FFAB1E // code for System.DateTime:get_Day():int:this movk x1, #0xD1FFAB1E LSL #16 movk x1, #0xD1FFAB1E LSL #32 ldr x1, [x1] blr x1 sxtw w24, w0 add x0, fp, #104 // [V07 loc7] movz x1, #0xD1FFAB1E // code for System.DateTime:get_Year():int:this movk x1, #0xD1FFAB1E LSL #16 movk x1, #0xD1FFAB1E LSL #32 ldr x1, [x1] blr x1 sub w25, w0, #1 add x0, fp, #104 // [V07 loc7] movz x1, #0xD1FFAB1E // code for System.DateTime:get_Year():int:this movk x1, #0xD1FFAB1E LSL #16 movk x1, #0xD1FFAB1E LSL #32 ldr x1, [x1] blr x1 sub w0, w21, w0 add w21, w0, #1 ldr x0, [fp, #0x78] // [V00 loc0] ldr w0, [x0, #0x08] cmp w20, w0 bhs G_M53339_IG36 ldr x0, [fp, #0x78] // [V00 loc0] add x0, x0, #16 ldr x26, [x0, w20, UXTW #3] mov x27, x26 ldr x0, [fp, #0x78] // [V00 loc0] ldr w0, [x0, #0x08] cmp w20, w0 bhs G_M53339_IG36 ldr w0, [x26, #0x08] cbz w0, G_M53339_IG34 cmp w0, #1 bne G_M53339_IG12 ;; size=272 bbWeight=4 PerfScore 288.00 G_M53339_IG10: b G_M53339_IG13 ;; size=4 bbWeight=2 PerfScore 2.00 G_M53339_IG11: ldr x19, [fp, #0x60] // [V01 loc1] b G_M53339_IG21 align [0 bytes for IG26] align [0 bytes] align [0 bytes] align [0 bytes] ;; size=8 bbWeight=0.25 PerfScore 0.75 G_M53339_IG12: mov w0, #1 bl System.String:FastAllocateString(int):System.String ldrsb wzr, [x0] add x1, x0, #12 add x2, x26, #12 ldrh w3, [x2] strh w3, [x1] mov x26, x0 ;; size=32 bbWeight=2 PerfScore 20.00 G_M53339_IG13: movz x0, #0xD1FFAB1E movk x0, #0xD1FFAB1E LSL #16 movk x0, #0xD1FFAB1E LSL #32 bl CORINFO_HELP_NEWSFAST mov x1, x0 stp w20, w25, [x1, #0x28] mov w14, #1 stp w14, w21, [x1, #0x30] mov w14, #0xD1FFAB1E cmp w22, #0 ccmp w22, w14, 0, gt ccmp w23, #0, nzc, le ccmp w23, #12, 0, gt bgt G_M53339_IG35 cmp w24, #0 ble G_M53339_IG35 tst w22, #3 bne G_M53339_IG15 ;; size=72 bbWeight=4 PerfScore 48.00 G_M53339_IG14: tst w22, #15 beq G_M53339_IG16 movz w14, #0xD1FFAB1E movk w14, #0xD1FFAB1E LSL #16 umull x14, w22, w14 lsr x14, x14, #35 mov w15, #25 msub w14, w14, w15, w22 cbnz w14, G_M53339_IG16 ;; size=36 bbWeight=2 PerfScore 18.00 G_M53339_IG15: movz x14, #0xD1FFAB1E movk x14, #0xD1FFAB1E LSL #16 movk x14, #0xD1FFAB1E LSL #32 b G_M53339_IG17 ;; size=16 bbWeight=2 PerfScore 5.00 G_M53339_IG16: movz x14, #0xD1FFAB1E movk x14, #0xD1FFAB1E LSL #16 movk x14, #0xD1FFAB1E LSL #32 ;; size=12 bbWeight=2 PerfScore 3.00 G_M53339_IG17: cmp w23, #13 bhs G_M53339_IG36 ldr w15, [x14, w23, UXTW #2] sub w12, w23, #1 cmp w12, #13 bhs G_M53339_IG36 ldr w14, [x14, w12, UXTW #2] sub w15, w15, w14 cmp w15, w24 blo G_M53339_IG35 sub w15, w22, #1 movz w12, #0xD1FFAB1E movk w12, #0xD1FFAB1E LSL #16 umull x12, w15, w12 lsr x12, x12, #37 mov wip0, #0xD1FFAB1E mul w15, w15, wip0 lsr w15, w15, #2 sub w15, w15, w12 add w15, w15, w12, LSR #2 add w14, w15, w14 add w14, w14, w24 sub w14, w14, #1 mov w14, w14 movz x15, #0xD1FFAB1E movk x15, #0xD1FFAB1E LSL #16 movk x15, #201 LSL #32 mul x14, x14, x15 and x14, x14, #0xD1FFAB1E str x14, [x1, #0x20] add x14, x1, #8 mov x15, x27 bl CORINFO_HELP_ASSIGN_REF add x14, x1, #16 mov x15, x26 bl CORINFO_HELP_ASSIGN_REF movz x14, #0xD1FFAB1E movk x14, #0xD1FFAB1E LSL #16 movk x14, #0xD1FFAB1E LSL #32 str x14, [x1, #0x18] ldr w14, [x19, #0x14] add w14, w14, #1 str w14, [x19, #0x14] ldr x14, [x19, #0x08] ldr w15, [x19, #0x10] ldr w12, [x14, #0x08] cmp w12, w15 bls G_M53339_IG19 ;; size=192 bbWeight=4 PerfScore 198.00 G_M53339_IG18: add w12, w15, #1 str w12, [x19, #0x10] add x14, x14, #16 add x14, x14, x15, LSL #3 mov x15, x1 bl CORINFO_HELP_ASSIGN_REF b G_M53339_IG20 ;; size=28 bbWeight=2 PerfScore 11.00 G_M53339_IG19: mov x0, x19 movz x2, #0xD1FFAB1E // code for System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this movk x2, #0xD1FFAB1E LSL #16 movk x2, #0xD1FFAB1E LSL #32 ldr x2, [x2] blr x2 ;; size=24 bbWeight=2 PerfScore 12.00 G_M53339_IG20: add x0, fp, #104 // [V07 loc7] movz x1, #0xD1FFAB1E // code for System.DateTime:get_Year():int:this movk x1, #0xD1FFAB1E LSL #16 movk x1, #0xD1FFAB1E LSL #32 ldr x1, [x1] blr x1 sxtw w21, w0 sub w20, w20, #1 tbz w20, #31, G_M53339_IG30 ;; size=36 bbWeight=4 PerfScore 32.00 G_M53339_IG21: add x3, fp, #112 // [V04 loc4] movz x0, #0xD1FFAB1E movk x0, #0xD1FFAB1E LSL #16 movk x0, #0xD1FFAB1E LSL #32 mov w1, #3 mov w2, #14 movz x4, #0xD1FFAB1E // code for System.Globalization.CalendarData:EnumCalendarInfo(System.String,ushort,int,byref):ubyte movk x4, #0xD1FFAB1E LSL #16 movk x4, #0xD1FFAB1E LSL #32 ldr x4, [x4] blr x4 cbnz w0, G_M53339_IG22 movz x14, #0xD1FFAB1E movk x14, #0xD1FFAB1E LSL #16 movk x14, #0xD1FFAB1E LSL #32 ldr x14, [x14] str x14, [fp, #0x70] // [V04 loc4] ;; size=68 bbWeight=0.50 PerfScore 7.50 G_M53339_IG22: ldr x14, [fp, #0x70] // [V04 loc4] ldr w14, [x14, #0x08] sub w14, w14, #1 ldr x15, [fp, #0x70] // [V04 loc4] ldr w15, [x15, #0x08] cmp w14, w15 bhs G_M53339_IG36 ldr x14, [fp, #0x70] // [V04 loc4] add x14, x14, #16 ldr x15, [fp, #0x70] // [V04 loc4] ldr w15, [x15, #0x08] sub w15, w15, #1 ldr x15, [x14, w15, UXTW #3] ldr w15, [x15, #0x08] cbz w15, G_M53339_IG23 ldr x15, [fp, #0x70] // [V04 loc4] ldr w15, [x15, #0x08] sub w15, w15, #1 ldr x12, [fp, #0x70] // [V04 loc4] ldr w12, [x12, #0x08] cmp w15, w12 bhs G_M53339_IG36 ldr x15, [fp, #0x70] // [V04 loc4] ldr w15, [x15, #0x08] sub w15, w15, #1 ldr x14, [x14, w15, UXTW #3] ldr w15, [x14, #0x08] cmp w15, #0 bls G_M53339_IG36 ldrh w14, [x14, #0x0C] cmp w14, #127 ble G_M53339_IG24 ;; size=128 bbWeight=0.50 PerfScore 28.25 G_M53339_IG23: movz x14, #0xD1FFAB1E movk x14, #0xD1FFAB1E LSL #16 movk x14, #0xD1FFAB1E LSL #32 ldr x14, [x14] str x14, [fp, #0x70] // [V04 loc4] ;; size=20 bbWeight=0.50 PerfScore 2.75 G_M53339_IG24: ldr x14, [fp, #0x70] // [V04 loc4] movz x15, #0xD1FFAB1E movk x15, #0xD1FFAB1E LSL #16 movk x15, #0xD1FFAB1E LSL #32 ldr x15, [x15] cmp x14, x15 beq G_M53339_IG31 ldr x14, [fp, #0x70] // [V04 loc4] ldr w14, [x14, #0x08] sub w0, w14, #1 ;; size=40 bbWeight=0.50 PerfScore 6.75 G_M53339_IG25: mov w2, wzr ldr w1, [x19, #0x10] cmp w1, #0 ble G_M53339_IG29 - ;; size=16 bbWeight=0.50 PerfScore 2.50 + ldr x3, [x19, #0x08] + ;; size=20 bbWeight=0.50 PerfScore 4.00 G_M53339_IG26: + mov x14, x3 cmp w2, w1 bhs G_M53339_IG33 - ldr x14, [x19, #0x08] ldr w15, [x14, #0x08] - cmp w2, w15 - bhs G_M53339_IG36 + cmp w15, w2 + bls G_M53339_IG33 add x14, x14, #16 ldr x14, [x14, w2, UXTW #3] - sub w15, w1, w2 - str w15, [x14, #0x28] + mov x15, x14 + sub w12, w1, w2 + str w12, [x15, #0x28] ldr x15, [fp, #0x70] // [V04 loc4] ldr w15, [x15, #0x08] cmp w15, w0 ble G_M53339_IG28 - ;; size=56 bbWeight=4 PerfScore 82.00 + ;; size=60 bbWeight=4 PerfScore 74.00 G_M53339_IG27: - add x14, x14, #24 ldr x15, [fp, #0x70] // [V04 loc4] ldr w15, [x15, #0x08] cmp w0, w15 bhs G_M53339_IG36 ldr x15, [fp, #0x70] // [V04 loc4] add x15, x15, #16 ldr x15, [x15, w0, UXTW #3] + add x14, x14, #24 bl CORINFO_HELP_ASSIGN_REF ;; size=36 bbWeight=2 PerfScore 27.00 G_M53339_IG28: sub w0, w0, #1 add w2, w2, #1 cmp w2, w1 blt G_M53339_IG26 ;; size=16 bbWeight=4 PerfScore 10.00 G_M53339_IG29: mov x0, x19 movz x1, #0xD1FFAB1E // code for System.Collections.Generic.List`1[System.__Canon]:ToArray():System.__Canon[]:this movk x1, #0xD1FFAB1E LSL #16 movk x1, #0xD1FFAB1E LSL #32 ldr x1, [x1] blr x1 b G_M53339_IG32 ;; size=28 bbWeight=0.50 PerfScore 3.50 G_M53339_IG30: str x19, [fp, #0x60] // [V01 loc1] b G_M53339_IG09 ;; size=8 bbWeight=2 PerfScore 4.00 G_M53339_IG31: ldr w1, [x19, #0x10] sub w0, w1, #1 b G_M53339_IG25 ;; size=12 bbWeight=0.50 PerfScore 2.25 G_M53339_IG32: ldp x27, x28, [sp, #0xC0] ldp x25, x26, [sp, #0xB0] ldp x23, x24, [sp, #0xA0] ldp x21, x22, [sp, #0x90] ldp x19, x20, [sp, #0x80] ldp fp, lr, [sp], #0xD0 ret lr ;; size=28 bbWeight=1 PerfScore 7.00 G_M53339_IG33: movz x0, #0xD1FFAB1E // code for System.ThrowHelper:ThrowArgumentOutOfRange_IndexMustBeLessException() movk x0, #0xD1FFAB1E LSL #16 movk x0, #0xD1FFAB1E LSL #32 ldr x0, [x0] blr x0 brk_unix #0 ;; size=24 bbWeight=0 PerfScore 0.00 G_M53339_IG34: mov x0, x26 mov w1, wzr mov w2, #1 movz x3, #0xD1FFAB1E // code for System.String:ThrowSubstringArgumentOutOfRange(int,int):this movk x3, #0xD1FFAB1E LSL #16 movk x3, #0xD1FFAB1E LSL #32 ldr x3, [x3] blr x3 brk_unix #0 ;; size=36 bbWeight=0 PerfScore 0.00 G_M53339_IG35: movz x0, #0xD1FFAB1E // code for System.ThrowHelper:ThrowArgumentOutOfRange_BadYearMonthDay() movk x0, #0xD1FFAB1E LSL #16 movk x0, #0xD1FFAB1E LSL #32 ldr x0, [x0] blr x0 brk_unix #0 ;; size=24 bbWeight=0 PerfScore 0.00 G_M53339_IG36: bl CORINFO_HELP_RNGCHKFAIL brk_unix #0 ;; size=8 bbWeight=0 PerfScore 0.00 -; Total bytes of code 1576, prolog size 32, PerfScore 1019.85, instruction count 398, allocated bytes for code 1576 (MethodHash=10d42fa4) for method System.Globalization.JapaneseCalendar:IcuGetJapaneseEras():System.Globalization.EraInfo[] (FullOpts) +; Total bytes of code 1584, prolog size 32, PerfScore 1014.15, instruction count 400, allocated bytes for code 1584 (MethodHash=10d42fa4) for method System.Globalization.JapaneseCalendar:IcuGetJapaneseEras():System.Globalization.EraInfo[] (FullOpts) ```

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

MihuBot commented 9 months ago

Top method improvements

-160 (-8.097% of base) - System.Threading.Tasks.Task:RunContinuations(System.Object):this ```diff ; Assembly listing for method System.Threading.Tasks.Task:RunContinuations(System.Object):this (FullOpts) ; Emitting BLENDED_CODE for generic ARM64 - Unix ; FullOpts code ; optimized code ; fp based frame ; fully interruptible ; No PGO data -; 0 inlinees with PGO data; 11 single block inlinees; 15 inlinees without PGO data +; 0 inlinees with PGO data; 8 single block inlinees; 14 inlinees without PGO data ; Final local variable assignments ; -; V00 this [V00,T03] ( 17, 26.50) ref -> x19 this class-hnd single-def -; V01 arg1 [V01,T32] ( 8, 5.12) ref -> x20 class-hnd single-def -; V02 loc0 [V02,T09] ( 13, 16.50) ref -> x22 class-hnd exact single-def -; V03 loc1 [V03,T23] ( 5, 8 ) ubyte -> x23 -; V04 loc2 [V04,T17] ( 10, 11.50) ubyte -> x24 -; V05 loc3 [V05,T00] ( 16, 32.50) ref -> x25 class-hnd single-def -; V06 loc4 [V06,T20] ( 5, 9.50) int -> x20 +; V00 this [V00,T03] ( 16, 24.50) ref -> x19 this class-hnd single-def +; V01 arg1 [V01,T33] ( 8, 5.12) ref -> x20 class-hnd single-def +; V02 loc0 [V02,T07] ( 13, 16.50) ref -> x21 class-hnd exact single-def +; V03 loc1 [V03,T18] ( 5, 8 ) ubyte -> x22 +; V04 loc2 [V04,T12] ( 10, 11.50) ubyte -> x23 +; V05 loc3 [V05,T00] ( 16, 32.50) ref -> x24 class-hnd single-def +; V06 loc4 [V06,T15] ( 5, 9.50) int -> x20 ; V07 loc5 [V07,T42] ( 3, 2.50) ref -> x0 class-hnd single-def ; V08 loc6 [V08,T46] ( 4, 1.75) ref -> x0 class-hnd exact ; V09 loc7 [V09,T43] ( 4, 2 ) ref -> x0 class-hnd single-def ; V10 loc8 [V10,T47] ( 3, 1.50) ref -> x1 class-hnd single-def -; V11 loc9 [V11,T52] ( 2, 0 ) ref -> [fp+0x20] class-hnd EH-live single-def +; V11 loc9 [V11,T52] ( 2, 0 ) ref -> [fp+0x28] class-hnd EH-live single-def ; V12 loc10 [V12 ] ( 5, 2 ) ubyte -> [fp+0x50] do-not-enreg[X] addr-exposed ld-addr-op -; V13 loc11 [V13,T36] ( 3, 4.50) ubyte -> x26 -; V14 loc12 [V14,T01] ( 11, 32.50) int -> x27 -; V15 loc13 [V15,T06] ( 9, 20.50) ref -> [fp+0x18] class-hnd spill-single-def -; V16 loc14 [V16,T18] ( 5, 10 ) ref -> [fp+0x10] class-hnd exact spill-single-def -; V17 loc15 [V17,T33] ( 3, 6 ) ref -> x0 class-hnd -; V18 loc16 [V18,T35] ( 2, 4 ) ref -> x0 class-hnd exact -; V19 loc17 [V19,T02] ( 10, 30.50) int -> x26 -; V20 loc18 [V20,T08] ( 7, 18 ) ref -> x27 class-hnd -; V21 loc19 [V21,T34] ( 3, 6 ) ref -> x0 class-hnd -; V22 loc20 [V22,T24] ( 3, 6 ) ref -> x0 class-hnd exact -; V23 loc21 [V23,T25] ( 4, 8 ) ref -> x0 class-hnd +; V13 loc11 [V13,T37] ( 3, 4.50) ubyte -> x25 +; V14 loc12 [V14,T01] ( 9, 28.50) int -> x26 +; V15 loc13 [V15,T04] ( 9, 20.50) ref -> [fp+0x20] class-hnd spill-single-def +; V16 loc14 [V16,T13] ( 5, 10 ) ref -> [fp+0x18] class-hnd exact spill-single-def +; V17 loc15 [V17,T34] ( 3, 6 ) ref -> x0 class-hnd +; V18 loc16 [V18,T36] ( 2, 4 ) ref -> x0 class-hnd exact +; V19 loc17 [V19,T02] ( 9, 28.50) int -> x25 +; V20 loc18 [V20,T06] ( 7, 18 ) ref -> x26 class-hnd +; V21 loc19 [V21,T35] ( 3, 6 ) ref -> x0 class-hnd +; V22 loc20 [V22,T19] ( 3, 6 ) ref -> x0 class-hnd exact +; V23 loc21 [V23,T20] ( 4, 8 ) ref -> x0 class-hnd ;# V24 OutArgs [V24 ] ( 1, 1 ) struct ( 0) [sp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace" ; V25 tmp1 [V25,T44] ( 3, 2 ) int -> x0 ;* V26 tmp2 [V26 ] ( 0, 0 ) ref -> zero-ref class-hnd "spilling QMark2" ; V27 tmp3 [V27,T49] ( 3, 1.25) long -> x1 "fgMakeTemp is creating a new local variable" -; V28 tmp4 [V28,T41] ( 5, 3.75) ref -> x25 class-hnd "spilling QMark2" +; V28 tmp4 [V28,T41] ( 5, 3.75) ref -> x24 class-hnd "spilling QMark2" ;* V29 tmp5 [V29 ] ( 0, 0 ) ref -> zero-ref class-hnd "spilling QMark2" ;* V30 tmp6 [V30 ] ( 0, 0 ) ref -> zero-ref class-hnd "spilling QMark2" ;* V31 tmp7 [V31 ] ( 0, 0 ) ref -> zero-ref class-hnd "spilling QMark2" -; V32 tmp8 [V32,T22] ( 3, 9 ) long -> x1 "fgMakeTemp is creating a new local variable" -; V33 tmp9 [V33,T21] ( 3, 9 ) ref -> x0 class-hnd "spilling QMark2" -; V34 tmp10 [V34,T45] ( 2, 2 ) int -> x24 "Inlining Arg" +; V32 tmp8 [V32,T17] ( 3, 9 ) long -> x1 "fgMakeTemp is creating a new local variable" +; V33 tmp9 [V33,T16] ( 3, 9 ) ref -> x0 class-hnd "spilling QMark2" +; V34 tmp10 [V34,T45] ( 2, 2 ) int -> x23 "Inlining Arg" ;* V35 tmp11 [V35,T50] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp" -; V36 tmp12 [V36,T38] ( 2, 4 ) int -> x0 "Inline stloc first use temp" -; V37 tmp13 [V37,T26] ( 2, 8 ) int -> x3 "Inlining Arg" -; V38 tmp14 [V38 ] ( 2, 8 ) ref -> [fp+0x48] do-not-enreg[X] must-init addr-exposed ld-addr-op class-hnd "Inlining Arg" -; V39 tmp15 [V39,T27] ( 2, 8 ) long -> x4 "Inlining Arg" -; V40 tmp16 [V40,T39] ( 2, 4 ) int -> x0 "Inline stloc first use temp" -; V41 tmp17 [V41,T28] ( 2, 8 ) int -> x2 "Inlining Arg" -; V42 tmp18 [V42 ] ( 2, 8 ) ref -> [fp+0x40] do-not-enreg[X] must-init addr-exposed ld-addr-op class-hnd "Inlining Arg" -; V43 tmp19 [V43,T29] ( 2, 8 ) long -> x4 "Inlining Arg" -; V44 tmp20 [V44,T40] ( 2, 4 ) int -> x0 "Inline stloc first use temp" -; V45 tmp21 [V45,T30] ( 2, 8 ) int -> x2 "Inlining Arg" -; V46 tmp22 [V46 ] ( 2, 8 ) ref -> [fp+0x38] do-not-enreg[X] must-init addr-exposed ld-addr-op class-hnd "Inlining Arg" -; V47 tmp23 [V47,T31] ( 2, 8 ) long -> x4 "Inlining Arg" -; V48 tmp24 [V48,T10] ( 4, 16 ) ref -> x27 class-hnd "Inlining Arg" -; V49 tmp25 [V49,T11] ( 4, 16 ) ref -> x1 class-hnd exact "NewObj constructor temp" -; V50 tmp26 [V50,T04] ( 3, 24 ) ref -> x0 "arr expr" -; V51 tmp27 [V51,T14] ( 3, 12 ) ref -> x28 "arr expr" -; V52 tmp28 [V52,T15] ( 3, 12 ) ref -> x0 "arr expr" -; V53 tmp29 [V53,T05] ( 3, 24 ) ref -> x0 "arr expr" -; V54 tmp30 [V54,T16] ( 3, 12 ) ref -> x0 "arr expr" -; V55 PSPSym [V55,T51] ( 1, 1 ) long -> [fp+0x58] do-not-enreg[V] "PSPSym" -; V56 cse0 [V56,T48] ( 3, 1.50) int -> x1 "CSE - moderate" -; V57 cse1 [V57,T12] ( 4, 12 ) ref -> x28 "CSE - moderate" -; V58 cse2 [V58,T13] ( 4, 12 ) long -> [fp+0x30] spill-single-def "CSE - moderate" -; V59 cse3 [V59,T07] ( 9, 18 ) byref -> x28 "CSE - aggressive" -; V60 cse4 [V60,T19] ( 5, 10 ) long -> [fp+0x28] spill-single-def "CSE - moderate" -; V61 cse5 [V61,T37] ( 3, 4 ) long -> x21 "CSE - moderate" +;* V36 tmp12 [V36 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline return value spill temp" +; V37 tmp13 [V37,T10] ( 3, 12 ) ref -> x0 class-hnd "Inline stloc first use temp" +; V38 tmp14 [V38,T38] ( 2, 4 ) int -> x0 "Inline stloc first use temp" +; V39 tmp15 [V39,T25] ( 2, 8 ) int -> x2 "Inlining Arg" +; V40 tmp16 [V40 ] ( 2, 8 ) ref -> [fp+0x48] do-not-enreg[X] must-init addr-exposed ld-addr-op class-hnd "Inlining Arg" +; V41 tmp17 [V41,T26] ( 2, 8 ) long -> x4 "Inlining Arg" +; V42 tmp18 [V42,T39] ( 2, 4 ) int -> x0 "Inline stloc first use temp" +; V43 tmp19 [V43,T27] ( 2, 8 ) int -> x2 "Inlining Arg" +; V44 tmp20 [V44 ] ( 2, 8 ) ref -> [fp+0x40] do-not-enreg[X] must-init addr-exposed ld-addr-op class-hnd "Inlining Arg" +; V45 tmp21 [V45,T28] ( 2, 8 ) long -> x4 "Inlining Arg" +;* V46 tmp22 [V46 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline return value spill temp" +; V47 tmp23 [V47,T11] ( 3, 12 ) ref -> x0 class-hnd "Inline stloc first use temp" +; V48 tmp24 [V48,T40] ( 2, 4 ) int -> x0 "Inline stloc first use temp" +; V49 tmp25 [V49,T29] ( 2, 8 ) int -> x2 "Inlining Arg" +; V50 tmp26 [V50 ] ( 2, 8 ) ref -> [fp+0x38] do-not-enreg[X] must-init addr-exposed ld-addr-op class-hnd "Inlining Arg" +; V51 tmp27 [V51,T30] ( 2, 8 ) long -> x4 "Inlining Arg" +; V52 tmp28 [V52,T21] ( 2, 8 ) ref -> x27 "arr expr" +; V53 tmp29 [V53,T22] ( 2, 8 ) ref -> x0 "arr expr" +; V54 tmp30 [V54,T23] ( 2, 8 ) ref -> x0 "arr expr" +; V55 tmp31 [V55,T24] ( 2, 8 ) ref -> x1 "argument with side effect" +; V56 PSPSym [V56,T51] ( 1, 1 ) long -> [fp+0x58] do-not-enreg[V] "PSPSym" +; V57 cse0 [V57,T48] ( 3, 1.50) int -> x1 "CSE - moderate" +; V58 cse1 [V58,T08] ( 4, 12 ) ref -> x27 "CSE - aggressive" +; V59 cse2 [V59,T09] ( 4, 12 ) long -> x28 "CSE - aggressive" +; V60 cse3 [V60,T31] ( 2, 8 ) int -> x1 "CSE - aggressive" +; V61 cse4 [V61,T32] ( 2, 8 ) int -> x1 "CSE - aggressive" +; V62 cse5 [V62,T05] ( 9, 18 ) byref -> x27 "CSE - aggressive" +; V63 cse6 [V63,T14] ( 5, 10 ) long -> [fp+0x30] spill-single-def "CSE - moderate" ; ; Lcl frame size = 80 G_M51094_IG01: stp fp, lr, [sp, #-0xB0]! stp x19, x20, [sp, #0x60] stp x21, x22, [sp, #0x70] stp x23, x24, [sp, #0x80] stp x25, x26, [sp, #0x90] stp x27, x28, [sp, #0xA0] mov fp, sp - stp xzr, xzr, [fp, #0x40] // [V42 tmp18], [V38 tmp14] - str xzr, [fp, #0x38] // [V46 tmp22] + stp xzr, xzr, [fp, #0x40] // [V44 tmp20], [V40 tmp16] + str xzr, [fp, #0x38] // [V50 tmp26] add x2, sp, #176 - str x2, [fp, #0x58] // [V55 PSPSym] + str x2, [fp, #0x58] // [V56 PSPSym] mov x19, x0 mov x20, x1 ;; size=52 bbWeight=1 PerfScore 11.00 G_M51094_IG02: movz x0, #0xD1FFAB1E movk x0, #0xD1FFAB1E LSL #16 movk x0, #0xD1FFAB1E LSL #32 ldr w0, [x0] - tbz w0, #0, G_M51094_IG57 + tbz w0, #0, G_M51094_IG55 ;; size=20 bbWeight=1 PerfScore 5.50 G_M51094_IG03: - movz x21, #0xD1FFAB1E - movk x21, #0xD1FFAB1E LSL #16 - movk x21, #0xD1FFAB1E LSL #32 - ldr x22, [x21, #0xD1FFAB1E] - ldrb w23, [x22, #0x9D] - cbz w23, G_M51094_IG05 + movz x0, #0xD1FFAB1E // data for System.Threading.Tasks.TplEventSource:Log + movk x0, #0xD1FFAB1E LSL #16 + movk x0, #0xD1FFAB1E LSL #32 + ldr x21, [x0] + ldrb w22, [x21, #0x9D] + cbz w22, G_M51094_IG05 ;; size=24 bbWeight=1 PerfScore 8.50 G_M51094_IG04: mov x0, x19 movz x1, #0xD1FFAB1E // code for System.Threading.Tasks.Task:get_Id():int:this movk x1, #0xD1FFAB1E LSL #16 movk x1, #0xD1FFAB1E LSL #32 ldr x1, [x1] blr x1 - sxtw w24, w0 - ldrb w1, [x22, #0x9D] + sxtw w23, w0 + ldrb w1, [x21, #0x9D] cbz w1, G_M51094_IG05 - ldr x3, [x22, #0x80] - ldr w2, [x22, #0x98] - mov x0, x22 + ldr x3, [x21, #0x80] + ldr w2, [x21, #0x98] + mov x0, x21 mov w4, #4 mov x5, #32 mov w6, wzr movz x7, #0xD1FFAB1E // code for System.Diagnostics.Tracing.EventSource:IsEnabledCommon(ubyte,int,long,int,long,ubyte):ubyte:this movk x7, #0xD1FFAB1E LSL #16 movk x7, #0xD1FFAB1E LSL #32 ldr x7, [x7] blr x7 cbz w0, G_M51094_IG05 - mov x0, x22 - mov w2, w24 + mov x0, x21 + mov w2, w23 mov w1, #17 mov w3, wzr movz x4, #0xD1FFAB1E // code for System.Diagnostics.Tracing.EventSource:WriteEvent(int,int,int):this movk x4, #0xD1FFAB1E LSL #16 movk x4, #0xD1FFAB1E LSL #32 ldr x4, [x4] blr x4 ;; size=120 bbWeight=0.50 PerfScore 16.25 G_M51094_IG05: add x0, x19, #52 ldapr w0, [x0] tbnz w0, #6, G_M51094_IG07 ;; size=12 bbWeight=1 PerfScore 4.50 G_M51094_IG06: bl System.Runtime.CompilerServices.RuntimeHelpers:TryEnsureSufficientExecutionStack():ubyte b G_M51094_IG08 ;; size=8 bbWeight=0.50 PerfScore 1.00 G_M51094_IG07: mov w0, wzr ;; size=4 bbWeight=0.50 PerfScore 0.25 G_M51094_IG08: - uxtb w24, w0 + uxtb w23, w0 mov x1, x20 movz x0, #0xD1FFAB1E movk x0, #0xD1FFAB1E LSL #16 movk x0, #0xD1FFAB1E LSL #32 bl CORINFO_HELP_ISINSTANCEOFINTERFACE cbnz x0, G_M51094_IG12 ;; size=28 bbWeight=1 PerfScore 4.50 G_M51094_IG09: mov x0, x20 cbz x0, G_M51094_IG11 ;; size=8 bbWeight=0.50 PerfScore 0.75 G_M51094_IG10: ldr x1, [x0] movz x2, #0xD1FFAB1E movk x2, #0xD1FFAB1E LSL #16 movk x2, #0xD1FFAB1E LSL #32 cmp x1, x2 beq G_M51094_IG13 ;; size=24 bbWeight=0.25 PerfScore 1.50 G_M51094_IG11: mov x1, x20 movz x0, #0xD1FFAB1E movk x0, #0xD1FFAB1E LSL #16 movk x0, #0xD1FFAB1E LSL #32 bl CORINFO_HELP_ISINSTANCEOFCLASS cbnz x0, G_M51094_IG14 mov x1, x20 movz x0, #0xD1FFAB1E movk x0, #0xD1FFAB1E LSL #16 movk x0, #0xD1FFAB1E LSL #32 bl CORINFO_HELP_ISINSTANCEOFINTERFACE mov x1, x0 cbnz x1, G_M51094_IG15 b G_M51094_IG16 ;; size=56 bbWeight=0.50 PerfScore 4.75 G_M51094_IG12: - mov w1, w24 + mov w1, w23 movz x2, #0xD1FFAB1E // code for System.Threading.Tasks.AwaitTaskContinuation:RunOrScheduleAction(System.Runtime.CompilerServices.IAsyncStateMachineBox,ubyte) movk x2, #0xD1FFAB1E LSL #16 movk x2, #0xD1FFAB1E LSL #32 ldr x2, [x2] blr x2 - b G_M51094_IG54 + b G_M51094_IG52 ;; size=28 bbWeight=0.50 PerfScore 3.50 G_M51094_IG13: - mov w1, w24 + mov w1, w23 movz x2, #0xD1FFAB1E // code for System.Threading.Tasks.AwaitTaskContinuation:RunOrScheduleAction(System.Action,ubyte) movk x2, #0xD1FFAB1E LSL #16 movk x2, #0xD1FFAB1E LSL #32 ldr x2, [x2] blr x2 - b G_M51094_IG54 + b G_M51094_IG52 ;; size=28 bbWeight=0.50 PerfScore 3.50 G_M51094_IG14: mov x1, x19 - mov w2, w24 + mov w2, w23 ldr x3, [x0] ldr x3, [x3, #0x40] ldr x3, [x3, #0x20] blr x3 - b G_M51094_IG54 + b G_M51094_IG52 ;; size=28 bbWeight=0.50 PerfScore 6.00 G_M51094_IG15: mov x0, x19 - mov w2, w24 + mov w2, w23 movz x3, #0xD1FFAB1E // code for System.Threading.Tasks.Task:RunOrQueueCompletionAction(System.Threading.Tasks.ITaskCompletionAction,ubyte):this movk x3, #0xD1FFAB1E LSL #16 movk x3, #0xD1FFAB1E LSL #32 ldr x3, [x3] blr x3 - b G_M51094_IG54 + b G_M51094_IG52 ;; size=32 bbWeight=0.50 PerfScore 3.75 G_M51094_IG16: - mov x25, x20 - cbz x25, G_M51094_IG19 + mov x24, x20 + cbz x24, G_M51094_IG19 ;; size=8 bbWeight=0.50 PerfScore 0.75 G_M51094_IG17: - ldr x0, [x25] + ldr x0, [x24] movz x1, #0xD1FFAB1E movk x1, #0xD1FFAB1E LSL #16 movk x1, #0xD1FFAB1E LSL #32 cmp x0, x1 beq G_M51094_IG19 ;; size=24 bbWeight=0.25 PerfScore 1.50 G_M51094_IG18: mov x0, x1 mov x1, x20 bl CORINFO_HELP_CHKCASTCLASS_SPECIAL - mov x25, x0 + mov x24, x0 ;; size=16 bbWeight=0.12 PerfScore 0.31 G_M51094_IG19: - str x25, [fp, #0x20] // [V11 loc9] + str x24, [fp, #0x28] // [V11 loc9] str wzr, [fp, #0x50] // [V12 loc10] ;; size=8 bbWeight=0.50 PerfScore 1.00 G_M51094_IG20: ldrb w1, [fp, #0x50] // [V12 loc10] cbnz w1, G_M51094_IG21 add x1, fp, #80 // [V12 loc10] - mov x0, x25 + mov x0, x24 bl System.Threading.Monitor:ReliableEnter(System.Object,byref) b G_M51094_IG22 ;; size=24 bbWeight=0.50 PerfScore 3.00 G_M51094_IG21: movz x0, #0xD1FFAB1E // code for System.Threading.Monitor:ThrowLockTakenException() movk x0, #0xD1FFAB1E LSL #16 movk x0, #0xD1FFAB1E LSL #32 ldr x0, [x0] blr x0 brk_unix #0 ;; size=24 bbWeight=0 PerfScore 0.00 G_M51094_IG22: ldrb w0, [fp, #0x50] // [V12 loc10] cbz w0, G_M51094_IG23 - mov x0, x25 + mov x0, x24 bl System.Threading.Monitor:Exit(System.Object) ;; size=16 bbWeight=0.50 PerfScore 2.25 G_M51094_IG23: - ldr w20, [x25, #0x10] - cbz w24, G_M51094_IG42 + ldr w20, [x24, #0x10] + cbz w23, G_M51094_IG42 + mov w25, wzr mov w26, wzr - mov w27, wzr cmp w20, #0 ble G_M51094_IG42 ;; size=24 bbWeight=0.50 PerfScore 3.25 G_M51094_IG24: - ldr w0, [x25, #0x10] - cmp w27, w0 - bhs G_M51094_IG56 - ldr x28, [x25, #0x08] - mov x0, x28 + ldr x27, [x24, #0x08] + mov x0, x27 + ldr w1, [x24, #0x10] + cmp w26, w1 + bhs G_M51094_IG54 ldr w1, [x0, #0x08] - cmp w27, w1 - bhs G_M51094_IG58 + cmp w1, w26 + bls G_M51094_IG54 add x0, x0, #16 - ubfiz x1, x27, #3, #32 - str x1, [fp, #0x30] // [V58 cse2] - ldr x0, [x0, x1] - str x0, [fp, #0x18] // [V15 loc13] + ubfiz x28, x26, #3, #32 + ldr x0, [x0, x28] + str x0, [fp, #0x20] // [V15 loc13] cbz x0, G_M51094_IG41 - ;; size=56 bbWeight=4 PerfScore 80.00 + ;; size=52 bbWeight=4 PerfScore 76.00 G_M51094_IG25: - mov x2, x0 - str x2, [fp, #0x10] // [V16 loc14] - ldr x3, [x2] - str x3, [fp, #0x28] // [V60 cse4] - movz x4, #0xD1FFAB1E - movk x4, #0xD1FFAB1E LSL #16 - movk x4, #0xD1FFAB1E LSL #32 - cmp x3, x4 + mov x1, x0 + str x1, [fp, #0x18] // [V16 loc14] + ldr x2, [x1] + str x2, [fp, #0x30] // [V63 cse6] + movz x3, #0xD1FFAB1E + movk x3, #0xD1FFAB1E LSL #16 + movk x3, #0xD1FFAB1E LSL #32 + cmp x2, x3 bne G_M51094_IG30 - ldr w0, [x2, #0x18] + ldr w0, [x1, #0x18] tbnz w0, #19, G_M51094_IG41 - ldr w0, [x28, #0x08] - cmp w27, w0 - bhs G_M51094_IG58 - add x0, x28, #16 - str xzr, [x0, x1] - ldr w0, [x25, #0x14] + add x0, x27, #16 + str xzr, [x0, x28] + ldr w0, [x24, #0x14] add w0, w0, #1 - str w0, [x25, #0x14] - cbz w23, G_M51094_IG29 - add x28, x19, #48 - ldapr w0, [x28] + str w0, [x24, #0x14] + cbz w22, G_M51094_IG29 + add x27, x19, #48 + ldapr w0, [x27] cbnz w0, G_M51094_IG26 movz x0, #0xD1FFAB1E // code for System.Threading.Tasks.Task:NewId():int movk x0, #0xD1FFAB1E LSL #16 movk x0, #0xD1FFAB1E LSL #32 ldr x0, [x0] blr x0 mov w2, wzr - casal w2, w0, [x28] - ;; size=120 bbWeight=2 PerfScore 75.00 + casal w2, w0, [x27] + ;; size=108 bbWeight=2 PerfScore 66.00 G_M51094_IG26: - ldr w3, [x19, #0x30] - ldr x2, [fp, #0x10] // [V16 loc14] - str x2, [fp, #0x48] // [V38 tmp14] - ldr x4, [fp, #0x48] // [V38 tmp14] - ldrb w0, [x22, #0xB1] - cbz w0, G_M51094_IG28 - sxtw x2, w3 - sxtw x3, w27 - mov x0, x22 + ldr w2, [x19, #0x30] + ldr x1, [fp, #0x18] // [V16 loc14] + str x1, [fp, #0x48] // [V40 tmp16] + ldr x4, [fp, #0x48] // [V40 tmp16] + ldrb w3, [x21, #0xB1] + cbz w3, G_M51094_IG28 + sxtw x2, w2 + sxtw x3, w26 + mov x0, x21 mov w1, #21 movz x5, #0xD1FFAB1E // code for System.Diagnostics.Tracing.EventSource:WriteEvent(int,long,long,long):this movk x5, #0xD1FFAB1E LSL #16 movk x5, #0xD1FFAB1E LSL #32 ldr x5, [x5] blr x5 - ldr x2, [fp, #0x10] // [V16 loc14] + ldr x1, [fp, #0x18] // [V16 loc14] ;; size=64 bbWeight=2 PerfScore 43.00 G_M51094_IG27: - mov x0, x2 + mov x0, x1 mov x1, x19 mov w2, wzr movz x3, #0xD1FFAB1E // code for System.Threading.Tasks.ContinueWithTaskContinuation:Run(System.Threading.Tasks.Task,ubyte):this movk x3, #0xD1FFAB1E LSL #16 movk x3, #0xD1FFAB1E LSL #32 ldr x3, [x3] blr x3 b G_M51094_IG41 ;; size=36 bbWeight=2 PerfScore 16.00 G_M51094_IG28: - ldr x2, [fp, #0x10] // [V16 loc14] + ldr x1, [fp, #0x18] // [V16 loc14] b G_M51094_IG27 ;; size=8 bbWeight=1 PerfScore 3.00 G_M51094_IG29: - ldr x2, [fp, #0x10] // [V16 loc14] + ldr x1, [fp, #0x18] // [V16 loc14] b G_M51094_IG27 ;; size=8 bbWeight=1 PerfScore 3.00 G_M51094_IG30: mov x1, x0 movz x0, #0xD1FFAB1E movk x0, #0xD1FFAB1E LSL #16 movk x0, #0xD1FFAB1E LSL #32 bl CORINFO_HELP_ISINSTANCEOFINTERFACE cbnz x0, G_M51094_IG41 - cbz w26, G_M51094_IG40 - mov x0, x28 - ldr w1, [x0, #0x08] - cmp w27, w1 - bhs G_M51094_IG58 + cbz w25, G_M51094_IG40 + mov x0, x27 add x0, x0, #16 - ldr x26, [fp, #0x30] // [V58 cse2] - str xzr, [x0, x26] - ldr w0, [x25, #0x14] + str xzr, [x0, x28] + ldr w0, [x24, #0x14] add w0, w0, #1 - str w0, [x25, #0x14] - cbz w23, G_M51094_IG34 - add x28, x19, #48 - ldapr w0, [x28] + str w0, [x24, #0x14] + cbz w22, G_M51094_IG34 + add x27, x19, #48 + ldapr w0, [x27] cbnz w0, G_M51094_IG31 movz x0, #0xD1FFAB1E // code for System.Threading.Tasks.Task:NewId():int movk x0, #0xD1FFAB1E LSL #16 movk x0, #0xD1FFAB1E LSL #32 ldr x0, [x0] blr x0 mov w2, wzr - casal w2, w0, [x28] - ;; size=112 bbWeight=2 PerfScore 65.00 + casal w2, w0, [x27] + ;; size=96 bbWeight=2 PerfScore 52.00 G_M51094_IG31: ldr w2, [x19, #0x30] - ldr x28, [fp, #0x18] // [V15 loc13] - str x28, [fp, #0x40] // [V42 tmp18] - ldr x4, [fp, #0x40] // [V42 tmp18] - ldrb w3, [x22, #0xB1] + ldr x25, [fp, #0x20] // [V15 loc13] + str x25, [fp, #0x40] // [V44 tmp20] + ldr x4, [fp, #0x40] // [V44 tmp20] + ldrb w3, [x21, #0xB1] cbz w3, G_M51094_IG32 sxtw x2, w2 - sxtw x3, w27 - mov x0, x22 + sxtw x3, w26 + mov x0, x21 mov w1, #21 movz x5, #0xD1FFAB1E // code for System.Diagnostics.Tracing.EventSource:WriteEvent(int,long,long,long):this movk x5, #0xD1FFAB1E LSL #16 movk x5, #0xD1FFAB1E LSL #32 ldr x5, [x5] blr x5 ;; size=60 bbWeight=2 PerfScore 39.00 G_M51094_IG32: - mov x1, x28 + mov x1, x25 movz x0, #0xD1FFAB1E movk x0, #0xD1FFAB1E LSL #16 movk x0, #0xD1FFAB1E LSL #32 bl CORINFO_HELP_ISINSTANCEOFINTERFACE cbnz x0, G_M51094_IG35 - mov x0, x28 + mov x0, x25 movz x1, #0xD1FFAB1E movk x1, #0xD1FFAB1E LSL #16 movk x1, #0xD1FFAB1E LSL #32 - ldr x26, [fp, #0x28] // [V60 cse4] - cmp x26, x1 + ldr x27, [fp, #0x30] // [V63 cse6] + cmp x27, x1 beq G_M51094_IG36 ;; size=52 bbWeight=2 PerfScore 19.00 G_M51094_IG33: b G_M51094_IG37 ;; size=4 bbWeight=0.50 PerfScore 0.50 G_M51094_IG34: - ldr x28, [fp, #0x18] // [V15 loc13] + ldr x25, [fp, #0x20] // [V15 loc13] b G_M51094_IG32 ;; size=8 bbWeight=1 PerfScore 3.00 G_M51094_IG35: mov w1, wzr movz x2, #0xD1FFAB1E // code for System.Threading.Tasks.AwaitTaskContinuation:RunOrScheduleAction(System.Runtime.CompilerServices.IAsyncStateMachineBox,ubyte) movk x2, #0xD1FFAB1E LSL #16 movk x2, #0xD1FFAB1E LSL #32 ldr x2, [x2] blr x2 b G_M51094_IG40 ;; size=28 bbWeight=2 PerfScore 14.00 G_M51094_IG36: mov w1, wzr movz x2, #0xD1FFAB1E // code for System.Threading.Tasks.AwaitTaskContinuation:RunOrScheduleAction(System.Action,ubyte) movk x2, #0xD1FFAB1E LSL #16 movk x2, #0xD1FFAB1E LSL #32 ldr x2, [x2] blr x2 b G_M51094_IG40 ;; size=28 bbWeight=2 PerfScore 14.00 G_M51094_IG37: - mov x0, x28 + mov x0, x25 movz x1, #0xD1FFAB1E movk x1, #0xD1FFAB1E LSL #16 movk x1, #0xD1FFAB1E LSL #32 - cmp x26, x1 + cmp x27, x1 beq G_M51094_IG39 ;; size=24 bbWeight=2 PerfScore 7.00 G_M51094_IG38: mov x0, x1 - mov x1, x28 + mov x1, x25 bl CORINFO_HELP_CHKCASTCLASS_SPECIAL ;; size=12 bbWeight=0.50 PerfScore 1.00 G_M51094_IG39: mov x1, x19 mov w2, wzr - ldr x3, [x26, #0x40] + ldr x3, [x27, #0x40] ldr x3, [x3, #0x20] blr x3 ;; size=20 bbWeight=2 PerfScore 16.00 G_M51094_IG40: - mov w26, #1 + mov w25, #1 ;; size=4 bbWeight=2 PerfScore 1.00 G_M51094_IG41: - add w27, w27, #1 - cmp w27, w20 + add w26, w26, #1 + cmp w26, w20 blt G_M51094_IG24 ;; size=12 bbWeight=4 PerfScore 8.00 G_M51094_IG42: - mov w26, wzr + mov w25, wzr cmp w20, #0 - ble G_M51094_IG54 + ble G_M51094_IG52 ;; size=12 bbWeight=0.50 PerfScore 1.00 G_M51094_IG43: - ldr w0, [x25, #0x10] - cmp w26, w0 - bhs G_M51094_IG56 - ldr x0, [x25, #0x08] + ldr x0, [x24, #0x08] + ldr w1, [x24, #0x10] + cmp w25, w1 + bhs G_M51094_IG54 ldr w1, [x0, #0x08] - cmp w26, w1 - bhs G_M51094_IG58 + cmp w1, w25 + bls G_M51094_IG54 add x0, x0, #16 - ldr x27, [x0, w26, UXTW #3] - cbz x27, G_M51094_IG53 + ldr x26, [x0, w25, UXTW #3] + cbz x26, G_M51094_IG51 ;; size=40 bbWeight=4 PerfScore 66.00 G_M51094_IG44: - ldr x0, [x25, #0x08] - ldr w1, [x0, #0x08] - cmp w26, w1 - bhs G_M51094_IG58 + ldr x0, [x24, #0x08] add x0, x0, #16 - str xzr, [x0, w26, UXTW #3] - ldr w0, [x25, #0x14] + str xzr, [x0, w25, UXTW #3] + ldr w0, [x24, #0x14] add w0, w0, #1 - str w0, [x25, #0x14] - cbz w23, G_M51094_IG46 - add x28, x19, #48 - ldapr w0, [x28] + str w0, [x24, #0x14] + cbz w22, G_M51094_IG46 + add x27, x19, #48 + ldapr w0, [x27] cbnz w0, G_M51094_IG45 movz x0, #0xD1FFAB1E // code for System.Threading.Tasks.Task:NewId():int movk x0, #0xD1FFAB1E LSL #16 movk x0, #0xD1FFAB1E LSL #32 ldr x0, [x0] blr x0 mov w2, wzr - casal w2, w0, [x28] - ;; size=80 bbWeight=2 PerfScore 56.00 + casal w2, w0, [x27] + ;; size=68 bbWeight=2 PerfScore 47.00 G_M51094_IG45: ldr w2, [x19, #0x30] - str x27, [fp, #0x38] // [V46 tmp22] - ldr x4, [fp, #0x38] // [V46 tmp22] - ldrb w3, [x22, #0xB1] + str x26, [fp, #0x38] // [V50 tmp26] + ldr x4, [fp, #0x38] // [V50 tmp26] + ldrb w3, [x21, #0xB1] cbz w3, G_M51094_IG46 sxtw x2, w2 - sxtw x3, w26 - mov x0, x22 + sxtw x3, w25 + mov x0, x21 mov w1, #21 movz x5, #0xD1FFAB1E // code for System.Diagnostics.Tracing.EventSource:WriteEvent(int,long,long,long):this movk x5, #0xD1FFAB1E LSL #16 movk x5, #0xD1FFAB1E LSL #32 ldr x5, [x5] blr x5 ;; size=56 bbWeight=2 PerfScore 35.00 G_M51094_IG46: - mov x1, x27 + mov x1, x26 movz x0, #0xD1FFAB1E movk x0, #0xD1FFAB1E LSL #16 movk x0, #0xD1FFAB1E LSL #32 bl CORINFO_HELP_ISINSTANCEOFINTERFACE cbnz x0, G_M51094_IG47 - mov x0, x27 + mov x0, x26 ldr x1, [x0] movz x2, #0xD1FFAB1E movk x2, #0xD1FFAB1E LSL #16 movk x2, #0xD1FFAB1E LSL #32 cmp x1, x2 beq G_M51094_IG48 - mov x1, x27 + mov x1, x26 movz x0, #0xD1FFAB1E movk x0, #0xD1FFAB1E LSL #16 movk x0, #0xD1FFAB1E LSL #32 bl CORINFO_HELP_ISINSTANCEOFCLASS cbnz x0, G_M51094_IG49 b G_M51094_IG50 ;; size=80 bbWeight=2 PerfScore 31.00 G_M51094_IG47: - mov w1, w24 + mov w1, w23 movz x2, #0xD1FFAB1E // code for System.Threading.Tasks.AwaitTaskContinuation:RunOrScheduleAction(System.Runtime.CompilerServices.IAsyncStateMachineBox,ubyte) movk x2, #0xD1FFAB1E LSL #16 movk x2, #0xD1FFAB1E LSL #32 ldr x2, [x2] blr x2 - b G_M51094_IG53 + b G_M51094_IG51 ;; size=28 bbWeight=2 PerfScore 14.00 G_M51094_IG48: - mov w1, w24 + mov w1, w23 movz x2, #0xD1FFAB1E // code for System.Threading.Tasks.AwaitTaskContinuation:RunOrScheduleAction(System.Action,ubyte) movk x2, #0xD1FFAB1E LSL #16 movk x2, #0xD1FFAB1E LSL #32 ldr x2, [x2] blr x2 - b G_M51094_IG53 + b G_M51094_IG51 ;; size=28 bbWeight=2 PerfScore 14.00 G_M51094_IG49: mov x1, x19 - mov w2, w24 + mov w2, w23 ldr x3, [x0] ldr x3, [x3, #0x40] ldr x3, [x3, #0x20] blr x3 - b G_M51094_IG53 + b G_M51094_IG51 ;; size=28 bbWeight=2 PerfScore 24.00 G_M51094_IG50: - mov x1, x27 + mov x1, x26 movz x0, #0xD1FFAB1E movk x0, #0xD1FFAB1E LSL #16 movk x0, #0xD1FFAB1E LSL #32 bl CORINFO_HELP_CHKCASTINTERFACE - mov x27, x0 - cbnz w24, G_M51094_IG51 - mov x0, x27 - movz x11, #0xD1FFAB1E // code for System.Threading.Tasks.ITaskCompletionAction:get_InvokeMayRunArbitraryCode():ubyte:this - movk x11, #0xD1FFAB1E LSL #16 - movk x11, #0xD1FFAB1E LSL #32 - ldr x1, [x11] - blr x1 - cbnz w0, G_M51094_IG52 - ;; size=56 bbWeight=2 PerfScore 23.00 -G_M51094_IG51: - mov x0, x27 - mov x1, x19 - movz x11, #0xD1FFAB1E // code for System.Threading.Tasks.ITaskCompletionAction:Invoke(System.Threading.Tasks.Task):this - movk x11, #0xD1FFAB1E LSL #16 - movk x11, #0xD1FFAB1E LSL #32 - ldr x2, [x11] - blr x2 - b G_M51094_IG53 - ;; size=32 bbWeight=2 PerfScore 15.00 -G_M51094_IG52: - movz x0, #0xD1FFAB1E - movk x0, #0xD1FFAB1E LSL #16 - movk x0, #0xD1FFAB1E LSL #32 - bl CORINFO_HELP_NEWSFAST mov x1, x0 - add x14, x1, #8 - mov x15, x27 - bl CORINFO_HELP_ASSIGN_REF - add x14, x1, #16 - mov x15, x19 - bl CORINFO_HELP_ASSIGN_REF - ldr x0, [x21] - mov w2, wzr - movz x3, #0xD1FFAB1E // code for System.Threading.ThreadPoolWorkQueue:Enqueue(System.Object,ubyte):this + mov x0, x19 + mov w2, w23 + movz x3, #0xD1FFAB1E // code for System.Threading.Tasks.Task:RunOrQueueCompletionAction(System.Threading.Tasks.ITaskCompletionAction,ubyte):this movk x3, #0xD1FFAB1E LSL #16 movk x3, #0xD1FFAB1E LSL #32 ldr x3, [x3] blr x3 - ;; size=72 bbWeight=2 PerfScore 32.00 -G_M51094_IG53: - add w26, w26, #1 - cmp w26, w20 + ;; size=52 bbWeight=2 PerfScore 20.00 +G_M51094_IG51: + add w25, w25, #1 + cmp w25, w20 blt G_M51094_IG43 ;; size=12 bbWeight=4 PerfScore 8.00 -G_M51094_IG54: +G_M51094_IG52: movz x0, #0xD1FFAB1E // code for System.Threading.Tasks.Task:LogFinishCompletionNotification() movk x0, #0xD1FFAB1E LSL #16 movk x0, #0xD1FFAB1E LSL #32 ldr x0, [x0] blr x0 ;; size=20 bbWeight=1 PerfScore 5.50 -G_M51094_IG55: +G_M51094_IG53: ldp x27, x28, [sp, #0xA0] ldp x25, x26, [sp, #0x90] ldp x23, x24, [sp, #0x80] ldp x21, x22, [sp, #0x70] ldp x19, x20, [sp, #0x60] ldp fp, lr, [sp], #0xB0 ret lr ;; size=28 bbWeight=1 PerfScore 7.00 -G_M51094_IG56: +G_M51094_IG54: movz x0, #0xD1FFAB1E // code for System.ThrowHelper:ThrowArgumentOutOfRange_IndexMustBeLessException() movk x0, #0xD1FFAB1E LSL #16 movk x0, #0xD1FFAB1E LSL #32 ldr x0, [x0] blr x0 brk_unix #0 ;; size=24 bbWeight=0 PerfScore 0.00 -G_M51094_IG57: +G_M51094_IG55: movz x0, #0xD1FFAB1E movk x0, #0xD1FFAB1E LSL #16 movk x0, #0xD1FFAB1E LSL #32 mov w1, #0xD1FFAB1E bl CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE b G_M51094_IG03 ;; size=24 bbWeight=0 PerfScore 0.00 -G_M51094_IG58: - bl CORINFO_HELP_RNGCHKFAIL - brk_unix #0 - ;; size=8 bbWeight=0 PerfScore 0.00 -G_M51094_IG59: +G_M51094_IG56: stp fp, lr, [sp, #-0x70]! stp x19, x20, [sp, #0x20] stp x21, x22, [sp, #0x30] stp x23, x24, [sp, #0x40] stp x25, x26, [sp, #0x50] stp x27, x28, [sp, #0x60] add x3, fp, #176 str x3, [sp, #0x18] ;; size=32 bbWeight=0 PerfScore 0.00 -G_M51094_IG60: +G_M51094_IG57: ldrb w0, [fp, #0x50] // [V12 loc10] - cbz w0, G_M51094_IG61 - ldr x0, [fp, #0x20] // [V11 loc9] + cbz w0, G_M51094_IG58 + ldr x0, [fp, #0x28] // [V11 loc9] bl System.Threading.Monitor:Exit(System.Object) ;; size=16 bbWeight=0 PerfScore 0.00 -G_M51094_IG61: +G_M51094_IG58: ldp x27, x28, [sp, #0x60] ldp x25, x26, [sp, #0x50] ldp x23, x24, [sp, #0x40] ldp x21, x22, [sp, #0x30] ldp x19, x20, [sp, #0x20] ldp fp, lr, [sp], #0x70 ret lr ;; size=28 bbWeight=0 PerfScore 0.00 -; Total bytes of code 1976, prolog size 52, PerfScore 1023.91, instruction count 494, allocated bytes for code 1976 (MethodHash=8bc43869) for method System.Threading.Tasks.Task:RunContinuations(System.Object):this (FullOpts) +; Total bytes of code 1816, prolog size 52, PerfScore 922.91, instruction count 454, allocated bytes for code 1816 (MethodHash=8bc43869) for method System.Threading.Tasks.Task:RunContinuations(System.Object):this (FullOpts) ```

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

MihuBot commented 9 months ago

@MihaZupan