Skip to content
New issue

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

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

Already on GitHub? Sign in to your account

[MichalPetryka] Unify Default Comparer logic #64

Open
MihuBot opened this issue Jun 30, 2023 · 0 comments
Open

[MichalPetryka] Unify Default Comparer logic #64

MihuBot opened this issue Jun 30, 2023 · 0 comments

Comments

@MihuBot
Copy link
Owner

MihuBot commented Jun 30, 2023

Build completed in 2 hours 54 minutes.
dotnet/runtime#88006

CoreLib diffs

Found 2 files with textual diffs.

Summary of Code Size diffs:
(Lower is better)

Total bytes of base: 6456851
Total bytes of diff: 6457064
Total bytes of delta: 213 (0.00 % of base)
Total relative delta: 2.67
    diff is a regression.
    relative diff is a regression.


Total byte diff includes -366 bytes from reconciling methods
	Base had    2 unique methods,      366 unique bytes
	Diff had    0 unique methods,        0 unique bytes

Top file regressions (bytes):
         213 : System.Private.CoreLib.dasm (0.00 % of base)

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

Top method regressions (bytes):
          84 (24.14 % of base) : System.Private.CoreLib.dasm - System.SpanHelpers:IndexOfAnyExcept[System.__Canon](byref,System.__Canon,System.__Canon,System.__Canon,System.__Canon,int):int (FullOpts)
          67 (20.06 % of base) : System.Private.CoreLib.dasm - System.SpanHelpers:LastIndexOfAnyExcept[System.__Canon](byref,System.__Canon,System.__Canon,System.__Canon,System.__Canon,int):int (FullOpts)
          50 (17.48 % of base) : System.Private.CoreLib.dasm - System.SpanHelpers:IndexOfAnyExcept[System.__Canon](byref,System.__Canon,System.__Canon,System.__Canon,int):int (FullOpts)
          49 (18.01 % of base) : System.Private.CoreLib.dasm - System.SpanHelpers:LastIndexOfAnyExcept[System.__Canon](byref,System.__Canon,System.__Canon,System.__Canon,int):int (FullOpts)
          38 (16.81 % of base) : System.Private.CoreLib.dasm - System.SpanHelpers:IndexOfAnyExcept[System.__Canon](byref,System.__Canon,System.__Canon,int):int (FullOpts)
          36 (16.67 % of base) : System.Private.CoreLib.dasm - System.SpanHelpers:LastIndexOfAnyExcept[System.__Canon](byref,System.__Canon,System.__Canon,int):int (FullOpts)
          23 (2.89 % of base) : System.Private.CoreLib.dasm - System.Collections.Generic.HashSetEqualityComparer`1[System.__Canon]:Equals(System.Collections.Generic.HashSet`1[System.__Canon],System.Collections.Generic.HashSet`1[System.__Canon]):bool:this (FullOpts)
          23 (14.29 % of base) : System.Private.CoreLib.dasm - System.Threading.Tasks.ValueTask`1[System.__Canon]:Equals(System.Threading.Tasks.ValueTask`1[System.__Canon]):bool:this (FullOpts)
          23 (16.43 % of base) : System.Private.CoreLib.dasm - System.Threading.Tasks.ValueTask`1[System.__Canon]:op_Equality(System.Threading.Tasks.ValueTask`1[System.__Canon],System.Threading.Tasks.ValueTask`1[System.__Canon]):bool (FullOpts)
          23 (15.54 % of base) : System.Private.CoreLib.dasm - System.Threading.Tasks.ValueTask`1[System.__Canon]:op_Inequality(System.Threading.Tasks.ValueTask`1[System.__Canon],System.Threading.Tasks.ValueTask`1[System.__Canon]):bool (FullOpts)
          23 (18.11 % of base) : System.Private.CoreLib.dasm - System.ValueTuple`1[System.__Canon]:Equals(System.Object):bool:this (FullOpts)
          23 (22.55 % of base) : System.Private.CoreLib.dasm - System.ValueTuple`1[System.__Canon]:Equals(System.ValueTuple`1[System.__Canon]):bool:this (FullOpts)
          20 (3.43 % of base) : System.Private.CoreLib.dasm - System.Collections.Generic.HashSet`1[System.__Canon]:Remove(System.__Canon):bool:this (FullOpts)
          20 (8.16 % of base) : System.Private.CoreLib.dasm - System.MemoryExtensions:CommonPrefixLength[System.__Canon](System.ReadOnlySpan`1[System.__Canon],System.ReadOnlySpan`1[System.__Canon]):int (FullOpts)
          18 (11.54 % of base) : System.Private.CoreLib.dasm - System.SpanHelpers:IndexOfAnyExcept[System.__Canon](byref,System.__Canon,int):int (FullOpts)
          16 (10.67 % of base) : System.Private.CoreLib.dasm - System.SpanHelpers:LastIndexOfAnyExcept[System.__Canon](byref,System.__Canon,int):int (FullOpts)
          16 (7.84 % of base) : System.Private.CoreLib.dasm - System.ValueTuple`2[System.__Canon,System.Nullable`1[int]]:Equals(System.Object):bool:this (FullOpts)
          16 (9.94 % of base) : System.Private.CoreLib.dasm - System.ValueTuple`2[System.__Canon,System.Nullable`1[int]]:Equals(System.ValueTuple`2[System.__Canon,System.Nullable`1[int]]):bool:this (FullOpts)
          10 (2.39 % of base) : System.Private.CoreLib.dasm - System.Collections.Generic.ComparerHelpers:CreateDefaultComparer(System.Type):System.Object (FullOpts)
          10 (4.72 % of base) : System.Private.CoreLib.dasm - System.Threading.Tasks.ValueTask`1[System.__Canon]:Equals(System.Object):bool:this (FullOpts)
           3 (1.63 % of base) : System.Private.CoreLib.dasm - System.Array:IndexOf[System.__Canon](System.__Canon[],System.__Canon,int,int):int (FullOpts)
           2 (0.85 % of base) : System.Private.CoreLib.dasm - System.Array:LastIndexOf[System.__Canon](System.__Canon[],System.__Canon,int,int):int (FullOpts)
           2 (2.25 % of base) : System.Private.CoreLib.dasm - System.Collections.Generic.HashSetEqualityComparer`1[System.__Canon]:GetHashCode():int:this (FullOpts)
           2 (1.96 % of base) : System.Private.CoreLib.dasm - System.ValueTuple`1[System.__Canon]:CompareTo(System.ValueTuple`1[System.__Canon]):int:this (FullOpts)
           2 (1.16 % of base) : System.Private.CoreLib.dasm - System.ValueTuple`1[System.__Canon]:System.IComparable.CompareTo(System.Object):int:this (FullOpts)
           2 (1.14 % of base) : System.Private.CoreLib.dasm - System.ValueTuple`2[System.__Canon,System.Nullable`1[int]]:CompareTo(System.ValueTuple`2[System.__Canon,System.Nullable`1[int]]):int:this (FullOpts)
           2 (0.75 % of base) : System.Private.CoreLib.dasm - System.ValueTuple`2[System.__Canon,System.Nullable`1[int]]:System.IComparable.CompareTo(System.Object):int:this (FullOpts)

Top method improvements (bytes):
        -183 (-100.00 % of base) : System.Private.CoreLib.dasm - System.Collections.Generic.ComparerHelpers:TryCreateEnumComparer(System.RuntimeType):System.Object (FullOpts) (1 base, 0 diff methods)
        -183 (-100.00 % of base) : System.Private.CoreLib.dasm - System.Collections.Generic.ComparerHelpers:TryCreateEnumEqualityComparer(System.RuntimeType):System.Object (FullOpts) (1 base, 0 diff methods)
         -24 (-4.79 % of base) : System.Private.CoreLib.dasm - System.Collections.Generic.ComparerHelpers:CreateDefaultEqualityComparer(System.Type):System.Object (FullOpts)

Top method regressions (percentages):
          84 (24.14 % of base) : System.Private.CoreLib.dasm - System.SpanHelpers:IndexOfAnyExcept[System.__Canon](byref,System.__Canon,System.__Canon,System.__Canon,System.__Canon,int):int (FullOpts)
          23 (22.55 % of base) : System.Private.CoreLib.dasm - System.ValueTuple`1[System.__Canon]:Equals(System.ValueTuple`1[System.__Canon]):bool:this (FullOpts)
          67 (20.06 % of base) : System.Private.CoreLib.dasm - System.SpanHelpers:LastIndexOfAnyExcept[System.__Canon](byref,System.__Canon,System.__Canon,System.__Canon,System.__Canon,int):int (FullOpts)
          23 (18.11 % of base) : System.Private.CoreLib.dasm - System.ValueTuple`1[System.__Canon]:Equals(System.Object):bool:this (FullOpts)
          49 (18.01 % of base) : System.Private.CoreLib.dasm - System.SpanHelpers:LastIndexOfAnyExcept[System.__Canon](byref,System.__Canon,System.__Canon,System.__Canon,int):int (FullOpts)
          50 (17.48 % of base) : System.Private.CoreLib.dasm - System.SpanHelpers:IndexOfAnyExcept[System.__Canon](byref,System.__Canon,System.__Canon,System.__Canon,int):int (FullOpts)
          38 (16.81 % of base) : System.Private.CoreLib.dasm - System.SpanHelpers:IndexOfAnyExcept[System.__Canon](byref,System.__Canon,System.__Canon,int):int (FullOpts)
          36 (16.67 % of base) : System.Private.CoreLib.dasm - System.SpanHelpers:LastIndexOfAnyExcept[System.__Canon](byref,System.__Canon,System.__Canon,int):int (FullOpts)
          23 (16.43 % of base) : System.Private.CoreLib.dasm - System.Threading.Tasks.ValueTask`1[System.__Canon]:op_Equality(System.Threading.Tasks.ValueTask`1[System.__Canon],System.Threading.Tasks.ValueTask`1[System.__Canon]):bool (FullOpts)
          23 (15.54 % of base) : System.Private.CoreLib.dasm - System.Threading.Tasks.ValueTask`1[System.__Canon]:op_Inequality(System.Threading.Tasks.ValueTask`1[System.__Canon],System.Threading.Tasks.ValueTask`1[System.__Canon]):bool (FullOpts)
          23 (14.29 % of base) : System.Private.CoreLib.dasm - System.Threading.Tasks.ValueTask`1[System.__Canon]:Equals(System.Threading.Tasks.ValueTask`1[System.__Canon]):bool:this (FullOpts)
          18 (11.54 % of base) : System.Private.CoreLib.dasm - System.SpanHelpers:IndexOfAnyExcept[System.__Canon](byref,System.__Canon,int):int (FullOpts)
          16 (10.67 % of base) : System.Private.CoreLib.dasm - System.SpanHelpers:LastIndexOfAnyExcept[System.__Canon](byref,System.__Canon,int):int (FullOpts)
          16 (9.94 % of base) : System.Private.CoreLib.dasm - System.ValueTuple`2[System.__Canon,System.Nullable`1[int]]:Equals(System.ValueTuple`2[System.__Canon,System.Nullable`1[int]]):bool:this (FullOpts)
          20 (8.16 % of base) : System.Private.CoreLib.dasm - System.MemoryExtensions:CommonPrefixLength[System.__Canon](System.ReadOnlySpan`1[System.__Canon],System.ReadOnlySpan`1[System.__Canon]):int (FullOpts)
          16 (7.84 % of base) : System.Private.CoreLib.dasm - System.ValueTuple`2[System.__Canon,System.Nullable`1[int]]:Equals(System.Object):bool:this (FullOpts)
          10 (4.72 % of base) : System.Private.CoreLib.dasm - System.Threading.Tasks.ValueTask`1[System.__Canon]:Equals(System.Object):bool:this (FullOpts)
          20 (3.43 % of base) : System.Private.CoreLib.dasm - System.Collections.Generic.HashSet`1[System.__Canon]:Remove(System.__Canon):bool:this (FullOpts)
          23 (2.89 % of base) : System.Private.CoreLib.dasm - System.Collections.Generic.HashSetEqualityComparer`1[System.__Canon]:Equals(System.Collections.Generic.HashSet`1[System.__Canon],System.Collections.Generic.HashSet`1[System.__Canon]):bool:this (FullOpts)
          10 (2.39 % of base) : System.Private.CoreLib.dasm - System.Collections.Generic.ComparerHelpers:CreateDefaultComparer(System.Type):System.Object (FullOpts)
           2 (2.25 % of base) : System.Private.CoreLib.dasm - System.Collections.Generic.HashSetEqualityComparer`1[System.__Canon]:GetHashCode():int:this (FullOpts)
           2 (1.96 % of base) : System.Private.CoreLib.dasm - System.ValueTuple`1[System.__Canon]:CompareTo(System.ValueTuple`1[System.__Canon]):int:this (FullOpts)
           3 (1.63 % of base) : System.Private.CoreLib.dasm - System.Array:IndexOf[System.__Canon](System.__Canon[],System.__Canon,int,int):int (FullOpts)
           2 (1.16 % of base) : System.Private.CoreLib.dasm - System.ValueTuple`1[System.__Canon]:System.IComparable.CompareTo(System.Object):int:this (FullOpts)
           2 (1.14 % of base) : System.Private.CoreLib.dasm - System.ValueTuple`2[System.__Canon,System.Nullable`1[int]]:CompareTo(System.ValueTuple`2[System.__Canon,System.Nullable`1[int]]):int:this (FullOpts)
           2 (0.85 % of base) : System.Private.CoreLib.dasm - System.Array:LastIndexOf[System.__Canon](System.__Canon[],System.__Canon,int,int):int (FullOpts)
           2 (0.75 % of base) : System.Private.CoreLib.dasm - System.ValueTuple`2[System.__Canon,System.Nullable`1[int]]:System.IComparable.CompareTo(System.Object):int:this (FullOpts)

Top method improvements (percentages):
        -183 (-100.00 % of base) : System.Private.CoreLib.dasm - System.Collections.Generic.ComparerHelpers:TryCreateEnumComparer(System.RuntimeType):System.Object (FullOpts) (1 base, 0 diff methods)
        -183 (-100.00 % of base) : System.Private.CoreLib.dasm - System.Collections.Generic.ComparerHelpers:TryCreateEnumEqualityComparer(System.RuntimeType):System.Object (FullOpts) (1 base, 0 diff methods)
         -24 (-4.79 % of base) : System.Private.CoreLib.dasm - System.Collections.Generic.ComparerHelpers:CreateDefaultEqualityComparer(System.Type):System.Object (FullOpts)

30 total methods with Code Size differences (3 improved, 27 regressed), 52365 unchanged.

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

Frameworks diffs

Diffs
Found 377 files with textual diffs.

Summary of Code Size diffs:
(Lower is better)

Total bytes of base: 37886679
Total bytes of diff: 37888179
Total bytes of delta: 1500 (0.00 % of base)
Total relative delta: 11.36
    diff is a regression.
    relative diff is a regression.


Total byte diff includes -366 bytes from reconciling methods
	Base had    2 unique methods,      366 unique bytes
	Diff had    0 unique methods,        0 unique bytes

Top file regressions (bytes):
         609 : System.Collections.Immutable.dasm (0.03 % of base)
         249 : System.Composition.TypedParts.dasm (0.46 % of base)
         213 : System.Private.CoreLib.dasm (0.00 % of base)
         131 : System.Linq.Expressions.dasm (0.01 % of base)
         117 : Microsoft.NET.WebAssembly.Webcil.dasm (0.48 % of base)
          83 : System.Linq.Queryable.dasm (0.02 % of base)
          39 : System.Text.RegularExpressions.dasm (0.01 % of base)
          32 : Microsoft.CSharp.dasm (0.01 % of base)
          15 : System.Linq.dasm (0.00 % of base)
          12 : System.Collections.dasm (0.00 % of base)

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

Top method regressions (bytes):
         260 (262.63 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableList`1+Node[System.__Canon]:Sort():System.Collections.Immutable.ImmutableList`1+Node[System.__Canon]:this (FullOpts)
         178 (156.14 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableList`1[System.__Canon]:Replace(System.__Canon,System.__Canon):System.Collections.Immutable.ImmutableList`1[System.__Canon]:this (FullOpts)
          84 (24.14 % of base) : System.Private.CoreLib.dasm - System.SpanHelpers:IndexOfAnyExcept[System.__Canon](byref,System.__Canon,System.__Canon,System.__Canon,System.__Canon,int):int (FullOpts)
          74 (25.08 % of base) : System.Collections.Immutable.dasm - System.Collections.Frozen.ValueTypeDefaultComparerFrozenSet`1[System.__Canon]:FindItemIndex(System.__Canon):int:this (FullOpts)
          70 (22.51 % of base) : System.Collections.Immutable.dasm - System.Collections.Frozen.ValueTypeDefaultComparerFrozenDictionary`2[System.__Canon,System.Nullable`1[int]]:GetValueRefOrNullRefCore(System.__Canon):byref:this (FullOpts)
          67 (55.83 % of base) : System.Linq.Queryable.dasm - <>f__AnonymousType0`2[System.__Canon,System.Nullable`1[int]]:GetHashCode():int:this (FullOpts)
          67 (55.83 % of base) : System.Composition.TypedParts.dasm - <>f__AnonymousType0`2[System.__Canon,System.Nullable`1[int]]:GetHashCode():int:this (FullOpts)
          67 (55.83 % of base) : System.Composition.TypedParts.dasm - <>f__AnonymousType1`2[System.__Canon,System.Nullable`1[int]]:GetHashCode():int:this (FullOpts)
          67 (55.83 % of base) : System.Composition.TypedParts.dasm - <>f__AnonymousType2`2[System.__Canon,System.Nullable`1[int]]:GetHashCode():int:this (FullOpts)
          67 (20.06 % of base) : System.Private.CoreLib.dasm - System.SpanHelpers:LastIndexOfAnyExcept[System.__Canon](byref,System.__Canon,System.__Canon,System.__Canon,System.__Canon,int):int (FullOpts)
          65 (19.64 % of base) : System.Linq.Expressions.dasm - System.Dynamic.Utils.CollectionExtensions:ListHashCode[System.__Canon](System.Collections.ObjectModel.ReadOnlyCollection`1[System.__Canon]):int (FullOpts)
          60 (23.26 % of base) : Microsoft.NET.WebAssembly.Webcil.dasm - Microsoft.NET.WebAssembly.Webcil.WebcilConverter+PEFileInfo:GetHashCode():int:this (FullOpts)
          57 (20.07 % of base) : Microsoft.NET.WebAssembly.Webcil.dasm - Microsoft.NET.WebAssembly.Webcil.WebcilConverter+WCFileInfo:GetHashCode():int:this (FullOpts)
          50 (17.48 % of base) : System.Private.CoreLib.dasm - System.SpanHelpers:IndexOfAnyExcept[System.__Canon](byref,System.__Canon,System.__Canon,System.__Canon,int):int (FullOpts)
          49 (18.01 % of base) : System.Private.CoreLib.dasm - System.SpanHelpers:LastIndexOfAnyExcept[System.__Canon](byref,System.__Canon,System.__Canon,System.__Canon,int):int (FullOpts)
          38 (16.81 % of base) : System.Private.CoreLib.dasm - System.SpanHelpers:IndexOfAnyExcept[System.__Canon](byref,System.__Canon,System.__Canon,int):int (FullOpts)
          36 (16.67 % of base) : System.Private.CoreLib.dasm - System.SpanHelpers:LastIndexOfAnyExcept[System.__Canon](byref,System.__Canon,System.__Canon,int):int (FullOpts)
          23 (2.89 % of base) : System.Private.CoreLib.dasm - System.Collections.Generic.HashSetEqualityComparer`1[System.__Canon]:Equals(System.Collections.Generic.HashSet`1[System.__Canon],System.Collections.Generic.HashSet`1[System.__Canon]):bool:this (FullOpts)
          23 (14.29 % of base) : System.Private.CoreLib.dasm - System.Threading.Tasks.ValueTask`1[System.__Canon]:Equals(System.Threading.Tasks.ValueTask`1[System.__Canon]):bool:this (FullOpts)
          23 (16.43 % of base) : System.Private.CoreLib.dasm - System.Threading.Tasks.ValueTask`1[System.__Canon]:op_Equality(System.Threading.Tasks.ValueTask`1[System.__Canon],System.Threading.Tasks.ValueTask`1[System.__Canon]):bool (FullOpts)
          23 (15.54 % of base) : System.Private.CoreLib.dasm - System.Threading.Tasks.ValueTask`1[System.__Canon]:op_Inequality(System.Threading.Tasks.ValueTask`1[System.__Canon],System.Threading.Tasks.ValueTask`1[System.__Canon]):bool (FullOpts)
          23 (18.11 % of base) : System.Private.CoreLib.dasm - System.ValueTuple`1[System.__Canon]:Equals(System.Object):bool:this (FullOpts)
          23 (22.55 % of base) : System.Private.CoreLib.dasm - System.ValueTuple`1[System.__Canon]:Equals(System.ValueTuple`1[System.__Canon]):bool:this (FullOpts)
          22 (7.75 % of base) : System.Linq.Expressions.dasm - System.Dynamic.Utils.CollectionExtensions:ListEquals[System.__Canon](System.Collections.ObjectModel.ReadOnlyCollection`1[System.__Canon],System.Collections.ObjectModel.ReadOnlyCollection`1[System.__Canon]):bool (FullOpts)
          22 (6.98 % of base) : System.Linq.Expressions.dasm - System.Dynamic.Utils.Helpers:CommonNode[System.__Canon](System.__Canon,System.__Canon,System.Func`2[System.__Canon,System.__Canon]):System.__Canon (FullOpts)
          22 (6.98 % of base) : System.Linq.Expressions.dasm - System.Linq.Expressions.Interpreter.LabelInfo:CommonNode[System.__Canon](System.__Canon,System.__Canon,System.Func`2[System.__Canon,System.__Canon]):System.__Canon (FullOpts)
          20 (3.43 % of base) : System.Private.CoreLib.dasm - System.Collections.Generic.HashSet`1[System.__Canon]:Remove(System.__Canon):bool:this (FullOpts)
          20 (8.16 % of base) : System.Private.CoreLib.dasm - System.MemoryExtensions:CommonPrefixLength[System.__Canon](System.ReadOnlySpan`1[System.__Canon],System.ReadOnlySpan`1[System.__Canon]):int (FullOpts)
          20 (14.49 % of base) : System.Text.RegularExpressions.dasm - System.Text.RegularExpressions.CaptureCollection:System.Collections.Generic.IList<System.Text.RegularExpressions.Capture>.IndexOf(System.Text.RegularExpressions.Capture):int:this (FullOpts)
          19 (10.61 % of base) : System.Collections.Immutable.dasm - System.Collections.Frozen.SmallValueTypeDefaultComparerFrozenSet`1[System.__Canon]:FindItemIndex(System.__Canon):int:this (FullOpts)
          19 (12.34 % of base) : System.Text.RegularExpressions.dasm - System.Text.RegularExpressions.GroupCollection:System.Collections.Generic.IList<System.Text.RegularExpressions.Group>.IndexOf(System.Text.RegularExpressions.Group):int:this (FullOpts)
          18 (11.54 % of base) : System.Private.CoreLib.dasm - System.SpanHelpers:IndexOfAnyExcept[System.__Canon](byref,System.__Canon,int):int (FullOpts)
          16 (7.37 % of base) : System.Linq.Queryable.dasm - <>f__AnonymousType0`2[System.__Canon,System.Nullable`1[int]]:Equals(System.Object):bool:this (FullOpts)
          16 (7.37 % of base) : System.Composition.TypedParts.dasm - <>f__AnonymousType0`2[System.__Canon,System.Nullable`1[int]]:Equals(System.Object):bool:this (FullOpts)
          16 (7.37 % of base) : System.Composition.TypedParts.dasm - <>f__AnonymousType1`2[System.__Canon,System.Nullable`1[int]]:Equals(System.Object):bool:this (FullOpts)
          16 (7.37 % of base) : System.Composition.TypedParts.dasm - <>f__AnonymousType2`2[System.__Canon,System.Nullable`1[int]]:Equals(System.Object):bool:this (FullOpts)
          16 (9.94 % of base) : Microsoft.CSharp.dasm - Microsoft.CSharp.RuntimeBinder.Semantics.TypeTable+KeyPair`2[System.__Canon,System.Nullable`1[int]]:Equals(Microsoft.CSharp.RuntimeBinder.Semantics.TypeTable+KeyPair`2[System.__Canon,System.Nullable`1[int]]):bool:this (FullOpts)
          16 (6.93 % of base) : Microsoft.CSharp.dasm - Microsoft.CSharp.RuntimeBinder.Semantics.TypeTable+KeyPair`2[System.__Canon,System.Nullable`1[int]]:Equals(System.Object):bool:this (FullOpts)
          16 (8.12 % of base) : System.Collections.Immutable.dasm - System.Collections.Frozen.SmallValueTypeDefaultComparerFrozenDictionary`2[System.__Canon,System.Nullable`1[int]]:GetValueRefOrNullRefCore(System.__Canon):byref:this (FullOpts)
          16 (10.67 % of base) : System.Private.CoreLib.dasm - System.SpanHelpers:LastIndexOfAnyExcept[System.__Canon](byref,System.__Canon,int):int (FullOpts)
          16 (7.84 % of base) : System.Private.CoreLib.dasm - System.ValueTuple`2[System.__Canon,System.Nullable`1[int]]:Equals(System.Object):bool:this (FullOpts)
          16 (9.94 % of base) : System.Private.CoreLib.dasm - System.ValueTuple`2[System.__Canon,System.Nullable`1[int]]:Equals(System.ValueTuple`2[System.__Canon,System.Nullable`1[int]]):bool:this (FullOpts)
          13 (1.80 % of base) : System.Linq.dasm - System.Linq.Enumerable:Contains[System.__Canon](System.Collections.Generic.IEnumerable`1[System.__Canon],System.__Canon,System.Collections.Generic.IEqualityComparer`1[System.__Canon]):bool (FullOpts)
          10 (2.39 % of base) : System.Private.CoreLib.dasm - System.Collections.Generic.ComparerHelpers:CreateDefaultComparer(System.Type):System.Object (FullOpts)
          10 (4.72 % of base) : System.Private.CoreLib.dasm - System.Threading.Tasks.ValueTask`1[System.__Canon]:Equals(System.Object):bool:this (FullOpts)
           5 (2.51 % of base) : System.Collections.dasm - System.Collections.Generic.LinkedList`1[System.__Canon]:Find(System.__Canon):System.Collections.Generic.LinkedListNode`1[System.__Canon]:this (FullOpts)
           5 (2.16 % of base) : System.Collections.dasm - System.Collections.Generic.LinkedList`1[System.__Canon]:FindLast(System.__Canon):System.Collections.Generic.LinkedListNode`1[System.__Canon]:this (FullOpts)
           4 (1.65 % of base) : System.Collections.Immutable.dasm - System.Collections.Frozen.SmallValueTypeComparableFrozenDictionary`2[System.__Canon,System.Nullable`1[int]]:GetValueRefOrNullRefCore(System.__Canon):byref:this (FullOpts)
           4 (1.79 % of base) : System.Collections.Immutable.dasm - System.Collections.Frozen.SmallValueTypeComparableFrozenSet`1[System.__Canon]:FindItemIndex(System.__Canon):int:this (FullOpts)
           3 (1.63 % of base) : System.Private.CoreLib.dasm - System.Array:IndexOf[System.__Canon](System.__Canon[],System.__Canon,int,int):int (FullOpts)
           2 (0.85 % of base) : System.Private.CoreLib.dasm - System.Array:LastIndexOf[System.__Canon](System.__Canon[],System.__Canon,int,int):int (FullOpts)
           2 (2.25 % of base) : System.Private.CoreLib.dasm - System.Collections.Generic.HashSetEqualityComparer`1[System.__Canon]:GetHashCode():int:this (FullOpts)
           2 (0.98 % of base) : System.Collections.dasm - System.Collections.StructuralComparer:Compare(System.Object,System.Object):int:this (FullOpts)
           2 (1.83 % of base) : System.Linq.dasm - System.Linq.OrderedImplicitlyStableEnumerable`1+<>c[System.__Canon]:<Sort>b__7_0(System.__Canon,System.__Canon):int:this (FullOpts)
           2 (1.96 % of base) : System.Private.CoreLib.dasm - System.ValueTuple`1[System.__Canon]:CompareTo(System.ValueTuple`1[System.__Canon]):int:this (FullOpts)
           2 (1.16 % of base) : System.Private.CoreLib.dasm - System.ValueTuple`1[System.__Canon]:System.IComparable.CompareTo(System.Object):int:this (FullOpts)
           2 (1.14 % of base) : System.Private.CoreLib.dasm - System.ValueTuple`2[System.__Canon,System.Nullable`1[int]]:CompareTo(System.ValueTuple`2[System.__Canon,System.Nullable`1[int]]):int:this (FullOpts)
           2 (0.75 % of base) : System.Private.CoreLib.dasm - System.ValueTuple`2[System.__Canon,System.Nullable`1[int]]:System.IComparable.CompareTo(System.Object):int:this (FullOpts)

Top method improvements (bytes):
        -183 (-100.00 % of base) : System.Private.CoreLib.dasm - System.Collections.Generic.ComparerHelpers:TryCreateEnumComparer(System.RuntimeType):System.Object (FullOpts) (1 base, 0 diff methods)
        -183 (-100.00 % of base) : System.Private.CoreLib.dasm - System.Collections.Generic.ComparerHelpers:TryCreateEnumEqualityComparer(System.RuntimeType):System.Object (FullOpts) (1 base, 0 diff methods)
         -24 (-4.79 % of base) : System.Private.CoreLib.dasm - System.Collections.Generic.ComparerHelpers:CreateDefaultEqualityComparer(System.Type):System.Object (FullOpts)
          -9 (-4.37 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableList`1[ubyte]:System.Collections.IList.Contains(System.Object):bool:this (FullOpts)
          -7 (-5.56 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableList`1[ubyte]:Contains(ubyte):bool:this (FullOpts)

Top method regressions (percentages):
         260 (262.63 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableList`1+Node[System.__Canon]:Sort():System.Collections.Immutable.ImmutableList`1+Node[System.__Canon]:this (FullOpts)
         178 (156.14 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableList`1[System.__Canon]:Replace(System.__Canon,System.__Canon):System.Collections.Immutable.ImmutableList`1[System.__Canon]:this (FullOpts)
          67 (55.83 % of base) : System.Linq.Queryable.dasm - <>f__AnonymousType0`2[System.__Canon,System.Nullable`1[int]]:GetHashCode():int:this (FullOpts)
          67 (55.83 % of base) : System.Composition.TypedParts.dasm - <>f__AnonymousType0`2[System.__Canon,System.Nullable`1[int]]:GetHashCode():int:this (FullOpts)
          67 (55.83 % of base) : System.Composition.TypedParts.dasm - <>f__AnonymousType1`2[System.__Canon,System.Nullable`1[int]]:GetHashCode():int:this (FullOpts)
          67 (55.83 % of base) : System.Composition.TypedParts.dasm - <>f__AnonymousType2`2[System.__Canon,System.Nullable`1[int]]:GetHashCode():int:this (FullOpts)
          74 (25.08 % of base) : System.Collections.Immutable.dasm - System.Collections.Frozen.ValueTypeDefaultComparerFrozenSet`1[System.__Canon]:FindItemIndex(System.__Canon):int:this (FullOpts)
          84 (24.14 % of base) : System.Private.CoreLib.dasm - System.SpanHelpers:IndexOfAnyExcept[System.__Canon](byref,System.__Canon,System.__Canon,System.__Canon,System.__Canon,int):int (FullOpts)
          60 (23.26 % of base) : Microsoft.NET.WebAssembly.Webcil.dasm - Microsoft.NET.WebAssembly.Webcil.WebcilConverter+PEFileInfo:GetHashCode():int:this (FullOpts)
          23 (22.55 % of base) : System.Private.CoreLib.dasm - System.ValueTuple`1[System.__Canon]:Equals(System.ValueTuple`1[System.__Canon]):bool:this (FullOpts)
          70 (22.51 % of base) : System.Collections.Immutable.dasm - System.Collections.Frozen.ValueTypeDefaultComparerFrozenDictionary`2[System.__Canon,System.Nullable`1[int]]:GetValueRefOrNullRefCore(System.__Canon):byref:this (FullOpts)
          57 (20.07 % of base) : Microsoft.NET.WebAssembly.Webcil.dasm - Microsoft.NET.WebAssembly.Webcil.WebcilConverter+WCFileInfo:GetHashCode():int:this (FullOpts)
          67 (20.06 % of base) : System.Private.CoreLib.dasm - System.SpanHelpers:LastIndexOfAnyExcept[System.__Canon](byref,System.__Canon,System.__Canon,System.__Canon,System.__Canon,int):int (FullOpts)
          65 (19.64 % of base) : System.Linq.Expressions.dasm - System.Dynamic.Utils.CollectionExtensions:ListHashCode[System.__Canon](System.Collections.ObjectModel.ReadOnlyCollection`1[System.__Canon]):int (FullOpts)
          23 (18.11 % of base) : System.Private.CoreLib.dasm - System.ValueTuple`1[System.__Canon]:Equals(System.Object):bool:this (FullOpts)
          49 (18.01 % of base) : System.Private.CoreLib.dasm - System.SpanHelpers:LastIndexOfAnyExcept[System.__Canon](byref,System.__Canon,System.__Canon,System.__Canon,int):int (FullOpts)
          50 (17.48 % of base) : System.Private.CoreLib.dasm - System.SpanHelpers:IndexOfAnyExcept[System.__Canon](byref,System.__Canon,System.__Canon,System.__Canon,int):int (FullOpts)
          38 (16.81 % of base) : System.Private.CoreLib.dasm - System.SpanHelpers:IndexOfAnyExcept[System.__Canon](byref,System.__Canon,System.__Canon,int):int (FullOpts)
          36 (16.67 % of base) : System.Private.CoreLib.dasm - System.SpanHelpers:LastIndexOfAnyExcept[System.__Canon](byref,System.__Canon,System.__Canon,int):int (FullOpts)
          23 (16.43 % of base) : System.Private.CoreLib.dasm - System.Threading.Tasks.ValueTask`1[System.__Canon]:op_Equality(System.Threading.Tasks.ValueTask`1[System.__Canon],System.Threading.Tasks.ValueTask`1[System.__Canon]):bool (FullOpts)
          23 (15.54 % of base) : System.Private.CoreLib.dasm - System.Threading.Tasks.ValueTask`1[System.__Canon]:op_Inequality(System.Threading.Tasks.ValueTask`1[System.__Canon],System.Threading.Tasks.ValueTask`1[System.__Canon]):bool (FullOpts)
          20 (14.49 % of base) : System.Text.RegularExpressions.dasm - System.Text.RegularExpressions.CaptureCollection:System.Collections.Generic.IList<System.Text.RegularExpressions.Capture>.IndexOf(System.Text.RegularExpressions.Capture):int:this (FullOpts)
          23 (14.29 % of base) : System.Private.CoreLib.dasm - System.Threading.Tasks.ValueTask`1[System.__Canon]:Equals(System.Threading.Tasks.ValueTask`1[System.__Canon]):bool:this (FullOpts)
          19 (12.34 % of base) : System.Text.RegularExpressions.dasm - System.Text.RegularExpressions.GroupCollection:System.Collections.Generic.IList<System.Text.RegularExpressions.Group>.IndexOf(System.Text.RegularExpressions.Group):int:this (FullOpts)
          18 (11.54 % of base) : System.Private.CoreLib.dasm - System.SpanHelpers:IndexOfAnyExcept[System.__Canon](byref,System.__Canon,int):int (FullOpts)
          16 (10.67 % of base) : System.Private.CoreLib.dasm - System.SpanHelpers:LastIndexOfAnyExcept[System.__Canon](byref,System.__Canon,int):int (FullOpts)
          19 (10.61 % of base) : System.Collections.Immutable.dasm - System.Collections.Frozen.SmallValueTypeDefaultComparerFrozenSet`1[System.__Canon]:FindItemIndex(System.__Canon):int:this (FullOpts)
          16 (9.94 % of base) : Microsoft.CSharp.dasm - Microsoft.CSharp.RuntimeBinder.Semantics.TypeTable+KeyPair`2[System.__Canon,System.Nullable`1[int]]:Equals(Microsoft.CSharp.RuntimeBinder.Semantics.TypeTable+KeyPair`2[System.__Canon,System.Nullable`1[int]]):bool:this (FullOpts)
          16 (9.94 % of base) : System.Private.CoreLib.dasm - System.ValueTuple`2[System.__Canon,System.Nullable`1[int]]:Equals(System.ValueTuple`2[System.__Canon,System.Nullable`1[int]]):bool:this (FullOpts)
          20 (8.16 % of base) : System.Private.CoreLib.dasm - System.MemoryExtensions:CommonPrefixLength[System.__Canon](System.ReadOnlySpan`1[System.__Canon],System.ReadOnlySpan`1[System.__Canon]):int (FullOpts)
          16 (8.12 % of base) : System.Collections.Immutable.dasm - System.Collections.Frozen.SmallValueTypeDefaultComparerFrozenDictionary`2[System.__Canon,System.Nullable`1[int]]:GetValueRefOrNullRefCore(System.__Canon):byref:this (FullOpts)
          16 (7.84 % of base) : System.Private.CoreLib.dasm - System.ValueTuple`2[System.__Canon,System.Nullable`1[int]]:Equals(System.Object):bool:this (FullOpts)
          22 (7.75 % of base) : System.Linq.Expressions.dasm - System.Dynamic.Utils.CollectionExtensions:ListEquals[System.__Canon](System.Collections.ObjectModel.ReadOnlyCollection`1[System.__Canon],System.Collections.ObjectModel.ReadOnlyCollection`1[System.__Canon]):bool (FullOpts)
          16 (7.37 % of base) : System.Linq.Queryable.dasm - <>f__AnonymousType0`2[System.__Canon,System.Nullable`1[int]]:Equals(System.Object):bool:this (FullOpts)
          16 (7.37 % of base) : System.Composition.TypedParts.dasm - <>f__AnonymousType0`2[System.__Canon,System.Nullable`1[int]]:Equals(System.Object):bool:this (FullOpts)
          16 (7.37 % of base) : System.Composition.TypedParts.dasm - <>f__AnonymousType1`2[System.__Canon,System.Nullable`1[int]]:Equals(System.Object):bool:this (FullOpts)
          16 (7.37 % of base) : System.Composition.TypedParts.dasm - <>f__AnonymousType2`2[System.__Canon,System.Nullable`1[int]]:Equals(System.Object):bool:this (FullOpts)
          22 (6.98 % of base) : System.Linq.Expressions.dasm - System.Dynamic.Utils.Helpers:CommonNode[System.__Canon](System.__Canon,System.__Canon,System.Func`2[System.__Canon,System.__Canon]):System.__Canon (FullOpts)
          22 (6.98 % of base) : System.Linq.Expressions.dasm - System.Linq.Expressions.Interpreter.LabelInfo:CommonNode[System.__Canon](System.__Canon,System.__Canon,System.Func`2[System.__Canon,System.__Canon]):System.__Canon (FullOpts)
          16 (6.93 % of base) : Microsoft.CSharp.dasm - Microsoft.CSharp.RuntimeBinder.Semantics.TypeTable+KeyPair`2[System.__Canon,System.Nullable`1[int]]:Equals(System.Object):bool:this (FullOpts)
          10 (4.72 % of base) : System.Private.CoreLib.dasm - System.Threading.Tasks.ValueTask`1[System.__Canon]:Equals(System.Object):bool:this (FullOpts)
          20 (3.43 % of base) : System.Private.CoreLib.dasm - System.Collections.Generic.HashSet`1[System.__Canon]:Remove(System.__Canon):bool:this (FullOpts)
          23 (2.89 % of base) : System.Private.CoreLib.dasm - System.Collections.Generic.HashSetEqualityComparer`1[System.__Canon]:Equals(System.Collections.Generic.HashSet`1[System.__Canon],System.Collections.Generic.HashSet`1[System.__Canon]):bool:this (FullOpts)
           5 (2.51 % of base) : System.Collections.dasm - System.Collections.Generic.LinkedList`1[System.__Canon]:Find(System.__Canon):System.Collections.Generic.LinkedListNode`1[System.__Canon]:this (FullOpts)
          10 (2.39 % of base) : System.Private.CoreLib.dasm - System.Collections.Generic.ComparerHelpers:CreateDefaultComparer(System.Type):System.Object (FullOpts)
           2 (2.25 % of base) : System.Private.CoreLib.dasm - System.Collections.Generic.HashSetEqualityComparer`1[System.__Canon]:GetHashCode():int:this (FullOpts)
           5 (2.16 % of base) : System.Collections.dasm - System.Collections.Generic.LinkedList`1[System.__Canon]:FindLast(System.__Canon):System.Collections.Generic.LinkedListNode`1[System.__Canon]:this (FullOpts)
           2 (1.96 % of base) : System.Private.CoreLib.dasm - System.ValueTuple`1[System.__Canon]:CompareTo(System.ValueTuple`1[System.__Canon]):int:this (FullOpts)
           2 (1.83 % of base) : System.Linq.dasm - System.Linq.OrderedImplicitlyStableEnumerable`1+<>c[System.__Canon]:<Sort>b__7_0(System.__Canon,System.__Canon):int:this (FullOpts)
          13 (1.80 % of base) : System.Linq.dasm - System.Linq.Enumerable:Contains[System.__Canon](System.Collections.Generic.IEnumerable`1[System.__Canon],System.__Canon,System.Collections.Generic.IEqualityComparer`1[System.__Canon]):bool (FullOpts)
           4 (1.79 % of base) : System.Collections.Immutable.dasm - System.Collections.Frozen.SmallValueTypeComparableFrozenSet`1[System.__Canon]:FindItemIndex(System.__Canon):int:this (FullOpts)
           4 (1.65 % of base) : System.Collections.Immutable.dasm - System.Collections.Frozen.SmallValueTypeComparableFrozenDictionary`2[System.__Canon,System.Nullable`1[int]]:GetValueRefOrNullRefCore(System.__Canon):byref:this (FullOpts)
           3 (1.63 % of base) : System.Private.CoreLib.dasm - System.Array:IndexOf[System.__Canon](System.__Canon[],System.__Canon,int,int):int (FullOpts)
           2 (1.16 % of base) : System.Private.CoreLib.dasm - System.ValueTuple`1[System.__Canon]:System.IComparable.CompareTo(System.Object):int:this (FullOpts)
           2 (1.14 % of base) : System.Private.CoreLib.dasm - System.ValueTuple`2[System.__Canon,System.Nullable`1[int]]:CompareTo(System.ValueTuple`2[System.__Canon,System.Nullable`1[int]]):int:this (FullOpts)
           2 (0.98 % of base) : System.Collections.dasm - System.Collections.StructuralComparer:Compare(System.Object,System.Object):int:this (FullOpts)
           2 (0.85 % of base) : System.Private.CoreLib.dasm - System.Array:LastIndexOf[System.__Canon](System.__Canon[],System.__Canon,int,int):int (FullOpts)
           2 (0.75 % of base) : System.Private.CoreLib.dasm - System.ValueTuple`2[System.__Canon,System.Nullable`1[int]]:System.IComparable.CompareTo(System.Object):int:this (FullOpts)

Top method improvements (percentages):
        -183 (-100.00 % of base) : System.Private.CoreLib.dasm - System.Collections.Generic.ComparerHelpers:TryCreateEnumComparer(System.RuntimeType):System.Object (FullOpts) (1 base, 0 diff methods)
        -183 (-100.00 % of base) : System.Private.CoreLib.dasm - System.Collections.Generic.ComparerHelpers:TryCreateEnumEqualityComparer(System.RuntimeType):System.Object (FullOpts) (1 base, 0 diff methods)
          -7 (-5.56 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableList`1[ubyte]:Contains(ubyte):bool:this (FullOpts)
         -24 (-4.79 % of base) : System.Private.CoreLib.dasm - System.Collections.Generic.ComparerHelpers:CreateDefaultEqualityComparer(System.Type):System.Object (FullOpts)
          -9 (-4.37 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableList`1[ubyte]:System.Collections.IList.Contains(System.Object):bool:this (FullOpts)

63 total methods with Code Size differences (5 improved, 58 regressed), 232592 unchanged.

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

Artifacts:

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

No branches or pull requests

1 participant