Skip to content

[JitDiff X64] [jkoritzinsky] Implement convertPInvokeCalliToCall for CoreCLR #2109

Description

@MihuBot

Job completed in 24 minutes 41 seconds (remote runner delay: 1 minute).
dotnet/runtime#131654

Main commit: dotnet/runtime@0eb5481
PR commit: dotnet/runtime@60169d7

Diffs

Diffs
Found 95 files with textual diffs.

Summary of Code Size diffs:
(Lower is better)

Total bytes of base: 156690856
Total bytes of diff: 156690603
Total bytes of delta: -253 (-0.00 % of base)
Total relative delta: Infinity
    diff is an improvement.
    relative diff is a regression.


Total byte diff includes 150 bytes from reconciling methods
	Base had    1 unique methods,      170 unique bytes
	Diff had    2 unique methods,      320 unique bytes

Top file regressions (bytes):
          38 : System.Private.CoreLib.dasm (0.00 % of base)
          13 : SixLabors.ImageSharp.dasm (0.00 % of base)

Top file improvements (bytes):
        -102 : Silk.NET.Direct3D.Compilers.dasm (-0.00 % of base)
         -68 : Silk.NET.Direct3D12.dasm (-0.00 % of base)
         -40 : System.Net.Quic.dasm (-0.03 % of base)
         -40 : Silk.NET.OpenAL.Extensions.Creative.dasm (-0.07 % of base)
         -34 : Silk.NET.Direct3D11.dasm (-0.00 % of base)
         -10 : Silk.NET.Input.Glfw.dasm (-0.04 % of base)
         -10 : Silk.NET.OpenAL.dasm (-0.02 % of base)

9 total files with Code Size differences (7 improved, 2 regressed), 345 unchanged.

Top method regressions (bytes):
         170 (Infinity of base) : System.Private.CoreLib.dasm - System.StubHelpers.StubHelpers:<CreateLayoutClassMarshalStubs>g____PInvoke|19_0(System.Runtime.CompilerServices.QCallTypeHandle,ptr,ptr,ptr) (FullOpts) (0 base, 1 diff methods)
         150 (Infinity of base) : System.Private.CoreLib.dasm - System.StubHelpers.StubHelpers:ThrowInteropException(int,int) (FullOpts) (0 base, 1 diff methods)
          13 (Infinity of base) : SixLabors.ImageSharp.dasm - SixLabors.ImageSharp.Memory.Internals.UniformUnmanagedMemoryPool+<>c:<UpdateTimer>b__26_0(System.Object):this (FullOpts)

Top method improvements (bytes):
        -170 (-100.00 % of base) : System.Private.CoreLib.dasm - System.StubHelpers.StubHelpers:<CreateLayoutClassMarshalStubs>g____PInvoke|18_0(System.Runtime.CompilerServices.QCallTypeHandle,ptr,ptr,ptr) (FullOpts) (1 base, 0 diff methods)
         -51 (-8.02 % of base) : System.Private.CoreLib.dasm - System.Runtime.InteropServices.ReferenceTrackerHost:IReferenceTrackerHost_GetTrackerTarget(nint,nint,ptr):int (FullOpts)
         -41 (-6.37 % of base) : System.Private.CoreLib.dasm - System.Runtime.InteropServices.ComWrappers:ComWeakRefToObject(nint,System.Object):System.Object (FullOpts)
         -20 (-7.81 % of base) : Silk.NET.OpenAL.Extensions.Creative.dasm - Silk.NET.OpenAL.Extensions.Creative.XRam:SetBufferMode(int,System.ReadOnlySpan`1[uint],int):bool:this (FullOpts) (2 methods)
         -20 (-0.35 % of base) : System.Net.Quic.dasm - System.Net.Quic.MsQuicApi:.cctor() (FullOpts)
         -20 (-5.59 % of base) : System.Private.CoreLib.dasm - System.Runtime.InteropServices.ComWrappers:ObjectToComWeakRef(System.Object,byref):nint (FullOpts)
         -17 (-58.62 % of base) : Silk.NET.Direct3D.Compilers.dasm - Silk.NET.Direct3D.Compilers.DxcBlobUtf16VtblExtensions:GetStringPointerS(Silk.NET.Core.Native.ComPtr`1[Silk.NET.Direct3D.Compilers.IDxcBlobUtf16]):System.String (FullOpts)
         -17 (-58.62 % of base) : Silk.NET.Direct3D.Compilers.dasm - Silk.NET.Direct3D.Compilers.DxcBlobUtf8VtblExtensions:GetStringPointerS(Silk.NET.Core.Native.ComPtr`1[Silk.NET.Direct3D.Compilers.IDxcBlobUtf8]):System.String (FullOpts)
         -17 (-58.62 % of base) : Silk.NET.Direct3D.Compilers.dasm - Silk.NET.Direct3D.Compilers.DxcBlobWideVtblExtensions:GetStringPointerS(Silk.NET.Core.Native.ComPtr`1[Silk.NET.Direct3D.Compilers.IDxcBlobWide]):System.String (FullOpts)
         -17 (-58.62 % of base) : Silk.NET.Direct3D.Compilers.dasm - Silk.NET.Direct3D.Compilers.IDxcBlobUtf16:GetStringPointerS():System.String:this (FullOpts)
         -17 (-58.62 % of base) : Silk.NET.Direct3D.Compilers.dasm - Silk.NET.Direct3D.Compilers.IDxcBlobUtf8:GetStringPointerS():System.String:this (FullOpts)
         -17 (-58.62 % of base) : Silk.NET.Direct3D.Compilers.dasm - Silk.NET.Direct3D.Compilers.IDxcBlobWide:GetStringPointerS():System.String:this (FullOpts)
         -17 (-58.62 % of base) : Silk.NET.Direct3D11.dasm - Silk.NET.Direct3D11.D3D11ShaderReflectionTypeVtblExtensions:GetMemberTypeNameS(Silk.NET.Core.Native.ComPtr`1[Silk.NET.Direct3D11.ID3D11ShaderReflectionType],uint):System.String (FullOpts)
         -17 (-58.62 % of base) : Silk.NET.Direct3D11.dasm - Silk.NET.Direct3D11.ID3D11ShaderReflectionType:GetMemberTypeNameS(uint):System.String:this (FullOpts)
         -17 (-58.62 % of base) : Silk.NET.Direct3D12.dasm - Silk.NET.Direct3D12.D3D12ShaderReflectionTypeVtblExtensions:GetMemberTypeNameS(Silk.NET.Core.Native.ComPtr`1[Silk.NET.Direct3D12.ID3D12ShaderReflectionType],uint):System.String (FullOpts)
         -17 (-58.62 % of base) : Silk.NET.Direct3D12.dasm - Silk.NET.Direct3D12.D3D12WorkGraphPropertiesVtblExtensions:GetProgramNameS(Silk.NET.Core.Native.ComPtr`1[Silk.NET.Direct3D12.ID3D12WorkGraphProperties],uint):System.String (FullOpts)
         -17 (-58.62 % of base) : Silk.NET.Direct3D12.dasm - Silk.NET.Direct3D12.ID3D12ShaderReflectionType:GetMemberTypeNameS(uint):System.String:this (FullOpts)
         -17 (-58.62 % of base) : Silk.NET.Direct3D12.dasm - Silk.NET.Direct3D12.ID3D12WorkGraphProperties:GetProgramNameS(uint):System.String:this (FullOpts)
         -10 (-3.79 % of base) : Silk.NET.Input.Glfw.dasm - Silk.NET.Input.Glfw.GlfwCursor:Dispose():this (FullOpts)
         -10 (-1.68 % of base) : Silk.NET.OpenAL.dasm - Silk.NET.OpenAL.AL:IsExtensionPresent(System.String):bool:this (FullOpts)
         -10 (-7.63 % of base) : Silk.NET.OpenAL.Extensions.Creative.dasm - Silk.NET.OpenAL.Extensions.Creative.XRam:SetBufferMode(int,uint[]):bool:this (FullOpts)
         -10 (-3.09 % of base) : Silk.NET.OpenAL.Extensions.Creative.dasm - Silk.NET.OpenAL.Extensions.Creative.XRam:SetBufferMode(uint,int):bool:this (FullOpts)
         -10 (-1.15 % of base) : System.Net.Quic.dasm - System.Net.Quic.QuicConnection:.ctor(ptr,ptr):this (FullOpts)
         -10 (-0.69 % of base) : System.Net.Quic.dasm - System.Net.Quic.QuicStream:.ctor(System.Net.Quic.MsQuicContextSafeHandle,ptr,int,long):this (FullOpts)

Top method regressions (percentages):
          13 (Infinity of base) : SixLabors.ImageSharp.dasm - SixLabors.ImageSharp.Memory.Internals.UniformUnmanagedMemoryPool+<>c:<UpdateTimer>b__26_0(System.Object):this (FullOpts)
         170 (Infinity of base) : System.Private.CoreLib.dasm - System.StubHelpers.StubHelpers:<CreateLayoutClassMarshalStubs>g____PInvoke|19_0(System.Runtime.CompilerServices.QCallTypeHandle,ptr,ptr,ptr) (FullOpts) (0 base, 1 diff methods)
         150 (Infinity of base) : System.Private.CoreLib.dasm - System.StubHelpers.StubHelpers:ThrowInteropException(int,int) (FullOpts) (0 base, 1 diff methods)

Top method improvements (percentages):
        -170 (-100.00 % of base) : System.Private.CoreLib.dasm - System.StubHelpers.StubHelpers:<CreateLayoutClassMarshalStubs>g____PInvoke|18_0(System.Runtime.CompilerServices.QCallTypeHandle,ptr,ptr,ptr) (FullOpts) (1 base, 0 diff methods)
         -17 (-58.62 % of base) : Silk.NET.Direct3D.Compilers.dasm - Silk.NET.Direct3D.Compilers.DxcBlobUtf16VtblExtensions:GetStringPointerS(Silk.NET.Core.Native.ComPtr`1[Silk.NET.Direct3D.Compilers.IDxcBlobUtf16]):System.String (FullOpts)
         -17 (-58.62 % of base) : Silk.NET.Direct3D.Compilers.dasm - Silk.NET.Direct3D.Compilers.DxcBlobUtf8VtblExtensions:GetStringPointerS(Silk.NET.Core.Native.ComPtr`1[Silk.NET.Direct3D.Compilers.IDxcBlobUtf8]):System.String (FullOpts)
         -17 (-58.62 % of base) : Silk.NET.Direct3D.Compilers.dasm - Silk.NET.Direct3D.Compilers.DxcBlobWideVtblExtensions:GetStringPointerS(Silk.NET.Core.Native.ComPtr`1[Silk.NET.Direct3D.Compilers.IDxcBlobWide]):System.String (FullOpts)
         -17 (-58.62 % of base) : Silk.NET.Direct3D.Compilers.dasm - Silk.NET.Direct3D.Compilers.IDxcBlobUtf16:GetStringPointerS():System.String:this (FullOpts)
         -17 (-58.62 % of base) : Silk.NET.Direct3D.Compilers.dasm - Silk.NET.Direct3D.Compilers.IDxcBlobUtf8:GetStringPointerS():System.String:this (FullOpts)
         -17 (-58.62 % of base) : Silk.NET.Direct3D.Compilers.dasm - Silk.NET.Direct3D.Compilers.IDxcBlobWide:GetStringPointerS():System.String:this (FullOpts)
         -17 (-58.62 % of base) : Silk.NET.Direct3D11.dasm - Silk.NET.Direct3D11.D3D11ShaderReflectionTypeVtblExtensions:GetMemberTypeNameS(Silk.NET.Core.Native.ComPtr`1[Silk.NET.Direct3D11.ID3D11ShaderReflectionType],uint):System.String (FullOpts)
         -17 (-58.62 % of base) : Silk.NET.Direct3D11.dasm - Silk.NET.Direct3D11.ID3D11ShaderReflectionType:GetMemberTypeNameS(uint):System.String:this (FullOpts)
         -17 (-58.62 % of base) : Silk.NET.Direct3D12.dasm - Silk.NET.Direct3D12.D3D12ShaderReflectionTypeVtblExtensions:GetMemberTypeNameS(Silk.NET.Core.Native.ComPtr`1[Silk.NET.Direct3D12.ID3D12ShaderReflectionType],uint):System.String (FullOpts)
         -17 (-58.62 % of base) : Silk.NET.Direct3D12.dasm - Silk.NET.Direct3D12.D3D12WorkGraphPropertiesVtblExtensions:GetProgramNameS(Silk.NET.Core.Native.ComPtr`1[Silk.NET.Direct3D12.ID3D12WorkGraphProperties],uint):System.String (FullOpts)
         -17 (-58.62 % of base) : Silk.NET.Direct3D12.dasm - Silk.NET.Direct3D12.ID3D12ShaderReflectionType:GetMemberTypeNameS(uint):System.String:this (FullOpts)
         -17 (-58.62 % of base) : Silk.NET.Direct3D12.dasm - Silk.NET.Direct3D12.ID3D12WorkGraphProperties:GetProgramNameS(uint):System.String:this (FullOpts)
         -51 (-8.02 % of base) : System.Private.CoreLib.dasm - System.Runtime.InteropServices.ReferenceTrackerHost:IReferenceTrackerHost_GetTrackerTarget(nint,nint,ptr):int (FullOpts)
         -20 (-7.81 % of base) : Silk.NET.OpenAL.Extensions.Creative.dasm - Silk.NET.OpenAL.Extensions.Creative.XRam:SetBufferMode(int,System.ReadOnlySpan`1[uint],int):bool:this (FullOpts) (2 methods)
         -10 (-7.63 % of base) : Silk.NET.OpenAL.Extensions.Creative.dasm - Silk.NET.OpenAL.Extensions.Creative.XRam:SetBufferMode(int,uint[]):bool:this (FullOpts)
         -41 (-6.37 % of base) : System.Private.CoreLib.dasm - System.Runtime.InteropServices.ComWrappers:ComWeakRefToObject(nint,System.Object):System.Object (FullOpts)
         -20 (-5.59 % of base) : System.Private.CoreLib.dasm - System.Runtime.InteropServices.ComWrappers:ObjectToComWeakRef(System.Object,byref):nint (FullOpts)
         -10 (-3.79 % of base) : Silk.NET.Input.Glfw.dasm - Silk.NET.Input.Glfw.GlfwCursor:Dispose():this (FullOpts)
         -10 (-3.09 % of base) : Silk.NET.OpenAL.Extensions.Creative.dasm - Silk.NET.OpenAL.Extensions.Creative.XRam:SetBufferMode(uint,int):bool:this (FullOpts)
         -10 (-1.68 % of base) : Silk.NET.OpenAL.dasm - Silk.NET.OpenAL.AL:IsExtensionPresent(System.String):bool:this (FullOpts)
         -10 (-1.15 % of base) : System.Net.Quic.dasm - System.Net.Quic.QuicConnection:.ctor(ptr,ptr):this (FullOpts)
         -10 (-0.69 % of base) : System.Net.Quic.dasm - System.Net.Quic.QuicStream:.ctor(System.Net.Quic.MsQuicContextSafeHandle,ptr,int,long):this (FullOpts)
         -20 (-0.35 % of base) : System.Net.Quic.dasm - System.Net.Quic.MsQuicApi:.cctor() (FullOpts)

27 total methods with Code Size differences (24 improved, 3 regressed), 816589 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