Skip to content

[JitDiff X64] [hez2010] JIT: Always use CallInfo method handle for devirtual ... #1719

@MihuBot

Description

@MihuBot

Job completed in 16 minutes 15 seconds (remote runner delay: 1 minute 14 seconds).
dotnet/runtime#123434

Main commit: dotnet/runtime@b593e13
PR commit: hez2010/runtime@b510b8e

Diffs

Diffs
Found 87 files with textual diffs.

Summary of Code Size diffs:
(Lower is better)

Total bytes of base: 45296843
Total bytes of diff: 45295345
Total bytes of delta: -1498 (-0.00 % of base)
Total relative delta: Infinity
    diff is an improvement.
    relative diff is a regression.


Top file regressions (bytes):
         109 : System.DirectoryServices.Protocols.dasm (0.07 % of base)

Top file improvements (bytes):
       -1231 : System.Collections.Immutable.dasm (-0.05 % of base)
        -137 : System.Private.CoreLib.dasm (-0.00 % of base)
        -111 : System.Collections.dasm (-0.02 % of base)
         -73 : System.Linq.Parallel.dasm (-0.00 % of base)
         -55 : System.Text.Json.dasm (-0.00 % of base)

6 total files with Code Size differences (5 improved, 1 regressed), 254 unchanged.

Top method regressions (bytes):
         109 (Infinity of base) : System.DirectoryServices.Protocols.dasm - System.DirectoryServices.Protocols.PartialResultsRetriever:ThreadRoutine():this (FullOpts)
          34 (46.58 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.ListChunk`1[System.__Canon]:System.Collections.IEnumerable.GetEnumerator():System.Collections.IEnumerator:this (FullOpts)
          34 (46.58 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.Lookup`2[System.__Canon,System.Nullable`1[int]]:System.Collections.IEnumerable.GetEnumerator():System.Collections.IEnumerator:this (FullOpts)
           5 (2.53 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableDictionary`2[System.__Canon,System.Nullable`1[int]]:System.Collections.Generic.IDictionary<TKey,TValue>.get_Keys():System.Collections.Generic.ICollection`1[System.__Canon]:this (FullOpts)
           5 (2.53 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableDictionary`2[System.__Canon,System.Nullable`1[int]]:System.Collections.Generic.IDictionary<TKey,TValue>.get_Values():System.Collections.Generic.ICollection`1[System.Nullable`1[int]]:this (FullOpts)
           5 (2.53 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableDictionary`2[System.__Canon,System.Nullable`1[int]]:System.Collections.IDictionary.get_Keys():System.Collections.ICollection:this (FullOpts)
           5 (2.53 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableDictionary`2[System.__Canon,System.Nullable`1[int]]:System.Collections.IDictionary.get_Values():System.Collections.ICollection:this (FullOpts)

Top method improvements (bytes):
        -191 (-52.91 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableList`1[System.__Canon]:Replace(System.__Canon,System.__Canon,System.Collections.Generic.IEqualityComparer`1[System.__Canon]):System.Collections.Immutable.ImmutableList`1[System.__Canon]:this (FullOpts)
        -190 (-71.70 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableList`1[System.__Canon]:Remove(System.__Canon,System.Collections.Generic.IEqualityComparer`1[System.__Canon]):System.Collections.Immutable.ImmutableList`1[System.__Canon]:this (FullOpts)
        -190 (-71.70 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableList`1[System.__Canon]:System.Collections.Immutable.IImmutableList<T>.Remove(System.__Canon,System.Collections.Generic.IEqualityComparer`1[System.__Canon]):System.Collections.Immutable.IImmutableList`1[System.__Canon]:this (FullOpts)
        -188 (-55.13 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableList`1[System.__Canon]:Remove(System.__Canon):System.Collections.Immutable.ImmutableList`1[System.__Canon]:this (FullOpts)
        -179 (-59.87 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableList`1[System.__Canon]:IndexOf(System.__Canon):int:this (FullOpts)
        -173 (-44.70 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableList`1[System.__Canon]:System.Collections.IList.IndexOf(System.Object):int:this (FullOpts)
         -65 (-8.49 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.DefaultMergeHelper`2[System.__Canon,System.Nullable`1[int]]:GetResultsAsArray():System.__Canon[]:this (FullOpts)
         -63 (-57.80 % of base) : System.Private.CoreLib.dasm - System.ArraySegment`1[System.__Canon]:System.Collections.IEnumerable.GetEnumerator():System.Collections.IEnumerator:this (FullOpts)
         -55 (-21.91 % of base) : System.Text.Json.dasm - System.Text.Json.Serialization.Metadata.ReflectionEmitCachingMemberAccessor+Cache`1[System.__Canon]:EvictStaleCacheEntries(long):this (FullOpts)
         -38 (-3.16 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.ElementAtQueryOperator`1[System.__Canon]:Aggregate(byref,bool):bool:this (FullOpts)
         -38 (-50.67 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.QueryOpeningEnumerator`1[System.__Canon]:System.Collections.IEnumerator.get_Current():System.Object:this (FullOpts)
         -37 (-50.68 % of base) : System.Private.CoreLib.dasm - System.Collections.Generic.Dictionary`2+KeyCollection[System.__Canon,System.Nullable`1[int]]:System.Collections.IEnumerable.GetEnumerator():System.Collections.IEnumerator:this (FullOpts)
         -37 (-50.68 % of base) : System.Collections.dasm - System.Collections.Generic.OrderedDictionary`2+KeyCollection[System.__Canon,System.Nullable`1[int]]:System.Collections.IEnumerable.GetEnumerator():System.Collections.IEnumerator:this (FullOpts)
         -37 (-50.68 % of base) : System.Collections.dasm - System.Collections.Generic.PriorityQueue`2+UnorderedItemsCollection[System.__Canon,System.Nullable`1[int]]:System.Collections.IEnumerable.GetEnumerator():System.Collections.IEnumerator:this (FullOpts)
         -37 (-50.68 % of base) : System.Collections.dasm - System.Collections.Generic.SortedDictionary`2+KeyCollection[System.__Canon,System.Nullable`1[int]]:System.Collections.IEnumerable.GetEnumerator():System.Collections.IEnumerator:this (FullOpts)
         -37 (-50.68 % of base) : System.Private.CoreLib.dasm - System.Runtime.CompilerServices.ConditionalWeakTable`2[System.__Canon,System.__Canon]:System.Collections.IEnumerable.GetEnumerator():System.Collections.IEnumerator:this (FullOpts)
         -35 (-17.68 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableSortedDictionary`2[System.__Canon,System.Nullable`1[int]]:System.Collections.Generic.IDictionary<TKey,TValue>.get_Keys():System.Collections.Generic.ICollection`1[System.__Canon]:this (FullOpts)
         -35 (-17.68 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableSortedDictionary`2[System.__Canon,System.Nullable`1[int]]:System.Collections.Generic.IDictionary<TKey,TValue>.get_Values():System.Collections.Generic.ICollection`1[System.Nullable`1[int]]:this (FullOpts)
         -35 (-17.68 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableSortedDictionary`2[System.__Canon,System.Nullable`1[int]]:System.Collections.IDictionary.get_Keys():System.Collections.ICollection:this (FullOpts)
         -35 (-17.68 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableSortedDictionary`2[System.__Canon,System.Nullable`1[int]]:System.Collections.IDictionary.get_Values():System.Collections.ICollection:this (FullOpts)

Top method regressions (percentages):
         109 (Infinity of base) : System.DirectoryServices.Protocols.dasm - System.DirectoryServices.Protocols.PartialResultsRetriever:ThreadRoutine():this (FullOpts)
          34 (46.58 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.ListChunk`1[System.__Canon]:System.Collections.IEnumerable.GetEnumerator():System.Collections.IEnumerator:this (FullOpts)
          34 (46.58 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.Lookup`2[System.__Canon,System.Nullable`1[int]]:System.Collections.IEnumerable.GetEnumerator():System.Collections.IEnumerator:this (FullOpts)
           5 (2.53 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableDictionary`2[System.__Canon,System.Nullable`1[int]]:System.Collections.Generic.IDictionary<TKey,TValue>.get_Keys():System.Collections.Generic.ICollection`1[System.__Canon]:this (FullOpts)
           5 (2.53 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableDictionary`2[System.__Canon,System.Nullable`1[int]]:System.Collections.Generic.IDictionary<TKey,TValue>.get_Values():System.Collections.Generic.ICollection`1[System.Nullable`1[int]]:this (FullOpts)
           5 (2.53 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableDictionary`2[System.__Canon,System.Nullable`1[int]]:System.Collections.IDictionary.get_Keys():System.Collections.ICollection:this (FullOpts)
           5 (2.53 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableDictionary`2[System.__Canon,System.Nullable`1[int]]:System.Collections.IDictionary.get_Values():System.Collections.ICollection:this (FullOpts)

Top method improvements (percentages):
        -190 (-71.70 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableList`1[System.__Canon]:Remove(System.__Canon,System.Collections.Generic.IEqualityComparer`1[System.__Canon]):System.Collections.Immutable.ImmutableList`1[System.__Canon]:this (FullOpts)
        -190 (-71.70 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableList`1[System.__Canon]:System.Collections.Immutable.IImmutableList<T>.Remove(System.__Canon,System.Collections.Generic.IEqualityComparer`1[System.__Canon]):System.Collections.Immutable.IImmutableList`1[System.__Canon]:this (FullOpts)
        -179 (-59.87 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableList`1[System.__Canon]:IndexOf(System.__Canon):int:this (FullOpts)
         -63 (-57.80 % of base) : System.Private.CoreLib.dasm - System.ArraySegment`1[System.__Canon]:System.Collections.IEnumerable.GetEnumerator():System.Collections.IEnumerator:this (FullOpts)
        -188 (-55.13 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableList`1[System.__Canon]:Remove(System.__Canon):System.Collections.Immutable.ImmutableList`1[System.__Canon]:this (FullOpts)
        -191 (-52.91 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableList`1[System.__Canon]:Replace(System.__Canon,System.__Canon,System.Collections.Generic.IEqualityComparer`1[System.__Canon]):System.Collections.Immutable.ImmutableList`1[System.__Canon]:this (FullOpts)
         -37 (-50.68 % of base) : System.Private.CoreLib.dasm - System.Collections.Generic.Dictionary`2+KeyCollection[System.__Canon,System.Nullable`1[int]]:System.Collections.IEnumerable.GetEnumerator():System.Collections.IEnumerator:this (FullOpts)
         -37 (-50.68 % of base) : System.Collections.dasm - System.Collections.Generic.OrderedDictionary`2+KeyCollection[System.__Canon,System.Nullable`1[int]]:System.Collections.IEnumerable.GetEnumerator():System.Collections.IEnumerator:this (FullOpts)
         -37 (-50.68 % of base) : System.Collections.dasm - System.Collections.Generic.PriorityQueue`2+UnorderedItemsCollection[System.__Canon,System.Nullable`1[int]]:System.Collections.IEnumerable.GetEnumerator():System.Collections.IEnumerator:this (FullOpts)
         -37 (-50.68 % of base) : System.Collections.dasm - System.Collections.Generic.SortedDictionary`2+KeyCollection[System.__Canon,System.Nullable`1[int]]:System.Collections.IEnumerable.GetEnumerator():System.Collections.IEnumerator:this (FullOpts)
         -37 (-50.68 % of base) : System.Private.CoreLib.dasm - System.Runtime.CompilerServices.ConditionalWeakTable`2[System.__Canon,System.__Canon]:System.Collections.IEnumerable.GetEnumerator():System.Collections.IEnumerator:this (FullOpts)
         -38 (-50.67 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.QueryOpeningEnumerator`1[System.__Canon]:System.Collections.IEnumerator.get_Current():System.Object:this (FullOpts)
        -173 (-44.70 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableList`1[System.__Canon]:System.Collections.IList.IndexOf(System.Object):int:this (FullOpts)
         -55 (-21.91 % of base) : System.Text.Json.dasm - System.Text.Json.Serialization.Metadata.ReflectionEmitCachingMemberAccessor+Cache`1[System.__Canon]:EvictStaleCacheEntries(long):this (FullOpts)
         -35 (-17.68 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableSortedDictionary`2[System.__Canon,System.Nullable`1[int]]:System.Collections.Generic.IDictionary<TKey,TValue>.get_Keys():System.Collections.Generic.ICollection`1[System.__Canon]:this (FullOpts)
         -35 (-17.68 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableSortedDictionary`2[System.__Canon,System.Nullable`1[int]]:System.Collections.Generic.IDictionary<TKey,TValue>.get_Values():System.Collections.Generic.ICollection`1[System.Nullable`1[int]]:this (FullOpts)
         -35 (-17.68 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableSortedDictionary`2[System.__Canon,System.Nullable`1[int]]:System.Collections.IDictionary.get_Keys():System.Collections.ICollection:this (FullOpts)
         -35 (-17.68 % of base) : System.Collections.Immutable.dasm - System.Collections.Immutable.ImmutableSortedDictionary`2[System.__Canon,System.Nullable`1[int]]:System.Collections.IDictionary.get_Values():System.Collections.ICollection:this (FullOpts)
         -65 (-8.49 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.DefaultMergeHelper`2[System.__Canon,System.Nullable`1[int]]:GetResultsAsArray():System.__Canon[]:this (FullOpts)
         -38 (-3.16 % of base) : System.Linq.Parallel.dasm - System.Linq.Parallel.ElementAtQueryOperator`1[System.__Canon]:Aggregate(byref,bool):bool:this (FullOpts)

27 total methods with Code Size differences (20 improved, 7 regressed), 283478 unchanged.

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

Artifacts:

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions