Skip to content

[JitDiff X64] [xtqqczze] Refactor memory copies in SafeBuffer #548

@MihuBot

Description

@MihuBot

Job completed in 14 minutes.
dotnet/runtime#105206

Diffs

Found 261 files with textual diffs.

Summary of Code Size diffs:
(Lower is better)

Total bytes of base: 39655437
Total bytes of diff: 39654923
Total bytes of delta: -514 (-0.00 % of base)
Total relative delta: -2.06
    diff is an improvement.
    relative diff is an improvement.


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

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

Top method regressions (bytes):
          13 (4.42 % of base) : System.Private.CoreLib.dasm - System.Runtime.InteropServices.SafeBuffer:ReadSpan[System.Numerics.Vector`1[float]](ulong,System.Span`1[System.Numerics.Vector`1[float]]):this (FullOpts)
          13 (4.42 % of base) : System.Private.CoreLib.dasm - System.Runtime.InteropServices.SafeBuffer:WriteSpan[System.Numerics.Vector`1[float]](ulong,System.ReadOnlySpan`1[System.Numerics.Vector`1[float]]):this (FullOpts)

Top method improvements (bytes):
         -45 (-18.83 % of base) : System.Private.CoreLib.dasm - System.Runtime.InteropServices.SafeBuffer:Read[ubyte](ulong):ubyte:this (FullOpts)
         -44 (-18.57 % of base) : System.Private.CoreLib.dasm - System.Runtime.InteropServices.SafeBuffer:Read[int](ulong):int:this (FullOpts)
         -44 (-18.41 % of base) : System.Private.CoreLib.dasm - System.Runtime.InteropServices.SafeBuffer:Read[long](ulong):long:this (FullOpts)
         -44 (-18.41 % of base) : System.Private.CoreLib.dasm - System.Runtime.InteropServices.SafeBuffer:Read[short](ulong):short:this (FullOpts)
         -37 (-15.42 % of base) : System.Private.CoreLib.dasm - System.Runtime.InteropServices.SafeBuffer:Read[double](ulong):double:this (FullOpts)
         -35 (-13.16 % of base) : System.Private.CoreLib.dasm - System.Runtime.InteropServices.SafeBuffer:Read[System.Numerics.Vector`1[float]](ulong):System.Numerics.Vector`1[float]:this (FullOpts)
         -29 (-12.45 % of base) : System.Private.CoreLib.dasm - System.Runtime.InteropServices.SafeBuffer:Write[double](ulong,double):this (FullOpts)
         -25 (-10.78 % of base) : System.Private.CoreLib.dasm - System.Runtime.InteropServices.SafeBuffer:Write[long](ulong,long):this (FullOpts)
         -24 (-10.39 % of base) : System.Private.CoreLib.dasm - System.Runtime.InteropServices.SafeBuffer:Write[int](ulong,int):this (FullOpts)
         -24 (-10.39 % of base) : System.Private.CoreLib.dasm - System.Runtime.InteropServices.SafeBuffer:Write[ubyte](ulong,ubyte):this (FullOpts)
         -23 (-9.96 % of base) : System.Private.CoreLib.dasm - System.Runtime.InteropServices.SafeBuffer:Write[short](ulong,short):this (FullOpts)
         -23 (-10.09 % of base) : System.Private.CoreLib.dasm - System.Runtime.InteropServices.SafeBuffer:Write[System.Numerics.Vector`1[float]](ulong,System.Numerics.Vector`1[float]):this (FullOpts)
         -19 (-6.35 % of base) : System.Private.CoreLib.dasm - System.Runtime.InteropServices.SafeBuffer:WriteSpan[long](ulong,System.ReadOnlySpan`1[long]):this (FullOpts)
         -17 (-5.72 % of base) : System.Private.CoreLib.dasm - System.Runtime.InteropServices.SafeBuffer:WriteSpan[int](ulong,System.ReadOnlySpan`1[int]):this (FullOpts)
         -17 (-5.69 % of base) : System.Private.CoreLib.dasm - System.Runtime.InteropServices.SafeBuffer:WriteSpan[short](ulong,System.ReadOnlySpan`1[short]):this (FullOpts)
         -16 (-5.35 % of base) : System.Private.CoreLib.dasm - System.Runtime.InteropServices.SafeBuffer:ReadSpan[long](ulong,System.Span`1[long]):this (FullOpts)
         -16 (-5.39 % of base) : System.Private.CoreLib.dasm - System.Runtime.InteropServices.SafeBuffer:WriteSpan[ubyte](ulong,System.ReadOnlySpan`1[ubyte]):this (FullOpts)
         -15 (-5.02 % of base) : System.Private.CoreLib.dasm - System.Runtime.InteropServices.SafeBuffer:WriteSpan[double](ulong,System.ReadOnlySpan`1[double]):this (FullOpts)
         -14 (-4.71 % of base) : System.Private.CoreLib.dasm - System.Runtime.InteropServices.SafeBuffer:ReadSpan[int](ulong,System.Span`1[int]):this (FullOpts)
         -14 (-4.68 % of base) : System.Private.CoreLib.dasm - System.Runtime.InteropServices.SafeBuffer:ReadSpan[short](ulong,System.Span`1[short]):this (FullOpts)
         -13 (-4.38 % of base) : System.Private.CoreLib.dasm - System.Runtime.InteropServices.SafeBuffer:ReadSpan[ubyte](ulong,System.Span`1[ubyte]):this (FullOpts)
          -2 (-0.67 % of base) : System.Private.CoreLib.dasm - System.Runtime.InteropServices.SafeBuffer:ReadSpan[double](ulong,System.Span`1[double]):this (FullOpts)

Top method regressions (percentages):
          13 (4.42 % of base) : System.Private.CoreLib.dasm - System.Runtime.InteropServices.SafeBuffer:ReadSpan[System.Numerics.Vector`1[float]](ulong,System.Span`1[System.Numerics.Vector`1[float]]):this (FullOpts)
          13 (4.42 % of base) : System.Private.CoreLib.dasm - System.Runtime.InteropServices.SafeBuffer:WriteSpan[System.Numerics.Vector`1[float]](ulong,System.ReadOnlySpan`1[System.Numerics.Vector`1[float]]):this (FullOpts)

Top method improvements (percentages):
         -45 (-18.83 % of base) : System.Private.CoreLib.dasm - System.Runtime.InteropServices.SafeBuffer:Read[ubyte](ulong):ubyte:this (FullOpts)
         -44 (-18.57 % of base) : System.Private.CoreLib.dasm - System.Runtime.InteropServices.SafeBuffer:Read[int](ulong):int:this (FullOpts)
         -44 (-18.41 % of base) : System.Private.CoreLib.dasm - System.Runtime.InteropServices.SafeBuffer:Read[long](ulong):long:this (FullOpts)
         -44 (-18.41 % of base) : System.Private.CoreLib.dasm - System.Runtime.InteropServices.SafeBuffer:Read[short](ulong):short:this (FullOpts)
         -37 (-15.42 % of base) : System.Private.CoreLib.dasm - System.Runtime.InteropServices.SafeBuffer:Read[double](ulong):double:this (FullOpts)
         -35 (-13.16 % of base) : System.Private.CoreLib.dasm - System.Runtime.InteropServices.SafeBuffer:Read[System.Numerics.Vector`1[float]](ulong):System.Numerics.Vector`1[float]:this (FullOpts)
         -29 (-12.45 % of base) : System.Private.CoreLib.dasm - System.Runtime.InteropServices.SafeBuffer:Write[double](ulong,double):this (FullOpts)
         -25 (-10.78 % of base) : System.Private.CoreLib.dasm - System.Runtime.InteropServices.SafeBuffer:Write[long](ulong,long):this (FullOpts)
         -24 (-10.39 % of base) : System.Private.CoreLib.dasm - System.Runtime.InteropServices.SafeBuffer:Write[int](ulong,int):this (FullOpts)
         -24 (-10.39 % of base) : System.Private.CoreLib.dasm - System.Runtime.InteropServices.SafeBuffer:Write[ubyte](ulong,ubyte):this (FullOpts)
         -23 (-10.09 % of base) : System.Private.CoreLib.dasm - System.Runtime.InteropServices.SafeBuffer:Write[System.Numerics.Vector`1[float]](ulong,System.Numerics.Vector`1[float]):this (FullOpts)
         -23 (-9.96 % of base) : System.Private.CoreLib.dasm - System.Runtime.InteropServices.SafeBuffer:Write[short](ulong,short):this (FullOpts)
         -19 (-6.35 % of base) : System.Private.CoreLib.dasm - System.Runtime.InteropServices.SafeBuffer:WriteSpan[long](ulong,System.ReadOnlySpan`1[long]):this (FullOpts)
         -17 (-5.72 % of base) : System.Private.CoreLib.dasm - System.Runtime.InteropServices.SafeBuffer:WriteSpan[int](ulong,System.ReadOnlySpan`1[int]):this (FullOpts)
         -17 (-5.69 % of base) : System.Private.CoreLib.dasm - System.Runtime.InteropServices.SafeBuffer:WriteSpan[short](ulong,System.ReadOnlySpan`1[short]):this (FullOpts)
         -16 (-5.39 % of base) : System.Private.CoreLib.dasm - System.Runtime.InteropServices.SafeBuffer:WriteSpan[ubyte](ulong,System.ReadOnlySpan`1[ubyte]):this (FullOpts)
         -16 (-5.35 % of base) : System.Private.CoreLib.dasm - System.Runtime.InteropServices.SafeBuffer:ReadSpan[long](ulong,System.Span`1[long]):this (FullOpts)
         -15 (-5.02 % of base) : System.Private.CoreLib.dasm - System.Runtime.InteropServices.SafeBuffer:WriteSpan[double](ulong,System.ReadOnlySpan`1[double]):this (FullOpts)
         -14 (-4.71 % of base) : System.Private.CoreLib.dasm - System.Runtime.InteropServices.SafeBuffer:ReadSpan[int](ulong,System.Span`1[int]):this (FullOpts)
         -14 (-4.68 % of base) : System.Private.CoreLib.dasm - System.Runtime.InteropServices.SafeBuffer:ReadSpan[short](ulong,System.Span`1[short]):this (FullOpts)
         -13 (-4.38 % of base) : System.Private.CoreLib.dasm - System.Runtime.InteropServices.SafeBuffer:ReadSpan[ubyte](ulong,System.Span`1[ubyte]):this (FullOpts)
          -2 (-0.67 % of base) : System.Private.CoreLib.dasm - System.Runtime.InteropServices.SafeBuffer:ReadSpan[double](ulong,System.Span`1[double]):this (FullOpts)

24 total methods with Code Size differences (22 improved, 2 regressed), 231354 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