Skip to content

[JitDiff X64] [tannergooding] Remove some unsafe usage from the float-format ... #1617

@MihuBot

Description

@MihuBot

Job completed in 16 minutes 57 seconds (remote runner delay: 31 seconds).
dotnet/runtime#121308

Diffs

Diffs
Found 83 files with textual diffs.

Summary of Code Size diffs:
(Lower is better)

Total bytes of base: 45920719
Total bytes of diff: 45921549
Total bytes of delta: 830 (0.00 % of base)
Total relative delta: 1.91
    diff is a regression.
    relative diff is a regression.


Total byte diff includes 422 bytes from reconciling methods
	Base had    9 unique methods,      795 unique bytes
	Diff had   25 unique methods,     1217 unique bytes

Top file regressions (bytes):
         830 : System.Private.CoreLib.dasm (0.01 % of base)

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

Top method regressions (bytes):
         444 (Infinity of base) : System.Private.CoreLib.dasm - System.Number+BigInteger:ShiftLeft(int):this (FullOpts) (0 base, 1 diff methods)
         375 (Infinity of base) : System.Private.CoreLib.dasm - System.Number:ConvertBigIntegerToFloatingPointBits[double](byref,int,bool):ulong (FullOpts) (0 base, 1 diff methods)
         249 (25.33 % of base) : System.Private.CoreLib.dasm - System.Number+BigInteger:DivRem(byref,byref,byref,byref) (FullOpts)
         136 (Infinity of base) : System.Private.CoreLib.dasm - System.Number+BigInteger:Pow2(int,byref) (FullOpts) (0 base, 1 diff methods)
          88 (48.62 % of base) : System.Private.CoreLib.dasm - System.Number+BigInteger:Add(byref,byref,byref) (FullOpts)
          70 (17.68 % of base) : System.Private.CoreLib.dasm - System.Number+BigInteger:Multiply(byref,byref,byref) (FullOpts)
          61 (19.37 % of base) : System.Private.CoreLib.dasm - System.Number+BigInteger:HeuristicDivide(byref,byref):uint (FullOpts)
          50 (Infinity of base) : System.Private.CoreLib.dasm - System.Number+BigInteger:Clear(int):this (FullOpts) (0 base, 1 diff methods)
          49 (Infinity of base) : System.Private.CoreLib.dasm - System.Number+BigInteger:CountSignificantBits(byref):int (FullOpts) (0 base, 1 diff methods)
          33 (17.10 % of base) : System.Private.CoreLib.dasm - System.Number+BigInteger:Multiply(byref,uint,byref) (FullOpts)
          29 (Infinity of base) : System.Private.CoreLib.dasm - System.Number+BigInteger:GetBlock(int):uint:this (FullOpts) (0 base, 1 diff methods)
          24 (27.91 % of base) : System.Private.CoreLib.dasm - System.Number+BigInteger:Multiply10():this (FullOpts)
          22 (25.29 % of base) : System.Private.CoreLib.dasm - System.Number+BigInteger:SubtractDivisor(byref,int,byref,ulong):uint (FullOpts)
          18 (27.27 % of base) : System.Private.CoreLib.dasm - System.Number+BigInteger:AddDivisor(byref,int,byref):uint (FullOpts)
          17 (21.79 % of base) : System.Private.CoreLib.dasm - System.Number+BigInteger:Compare(byref,byref):int (FullOpts)
          15 (15.15 % of base) : System.Private.CoreLib.dasm - System.Number+BigInteger:Add(uint):this (FullOpts)
          13 (Infinity of base) : System.Private.CoreLib.dasm - System.Number+BigInteger:CountSignificantBits(ulong):int (FullOpts) (0 base, 1 diff methods)
          13 (Infinity of base) : System.Private.CoreLib.dasm - System.Number+BigInteger:DivRem32(int,byref):int (FullOpts) (0 base, 1 diff methods)
          12 (Infinity of base) : System.Private.CoreLib.dasm - System.Number+BigInteger:CountSignificantBits(uint):int (FullOpts) (0 base, 1 diff methods)
           8 (Infinity of base) : System.Private.CoreLib.dasm - <PrivateImplementationDetails>:InlineArrayElementRefReadOnly[byte,System.Nullable`1[int]](byref,int):byref (FullOpts) (0 base, 1 diff methods)
           8 (Infinity of base) : System.Private.CoreLib.dasm - <PrivateImplementationDetails>:InlineArrayElementRefReadOnly[double,System.Nullable`1[int]](byref,int):byref (FullOpts) (0 base, 1 diff methods)
           8 (Infinity of base) : System.Private.CoreLib.dasm - <PrivateImplementationDetails>:InlineArrayElementRefReadOnly[int,System.Nullable`1[int]](byref,int):byref (FullOpts) (0 base, 1 diff methods)
           8 (Infinity of base) : System.Private.CoreLib.dasm - <PrivateImplementationDetails>:InlineArrayElementRefReadOnly[long,System.Nullable`1[int]](byref,int):byref (FullOpts) (0 base, 1 diff methods)
           8 (Infinity of base) : System.Private.CoreLib.dasm - <PrivateImplementationDetails>:InlineArrayElementRefReadOnly[short,System.Nullable`1[int]](byref,int):byref (FullOpts) (0 base, 1 diff methods)
           8 (Infinity of base) : System.Private.CoreLib.dasm - <PrivateImplementationDetails>:InlineArrayElementRefReadOnly[System.__Canon,System.Nullable`1[int]](byref,int):byref (FullOpts) (0 base, 1 diff methods)
           8 (Infinity of base) : System.Private.CoreLib.dasm - <PrivateImplementationDetails>:InlineArrayElementRefReadOnly[System.Nullable`1[int],System.Nullable`1[int]](byref,int):byref (FullOpts) (0 base, 1 diff methods)
           8 (Infinity of base) : System.Private.CoreLib.dasm - <PrivateImplementationDetails>:InlineArrayElementRefReadOnly[System.Numerics.Vector`1[float],System.Nullable`1[int]](byref,int):byref (FullOpts) (0 base, 1 diff methods)
           4 (Infinity of base) : System.Private.CoreLib.dasm - <PrivateImplementationDetails>:InlineArrayFirstElementRefReadOnly[byte,System.Nullable`1[int]](byref):byref (FullOpts) (0 base, 1 diff methods)
           4 (Infinity of base) : System.Private.CoreLib.dasm - <PrivateImplementationDetails>:InlineArrayFirstElementRefReadOnly[double,System.Nullable`1[int]](byref):byref (FullOpts) (0 base, 1 diff methods)
           4 (Infinity of base) : System.Private.CoreLib.dasm - <PrivateImplementationDetails>:InlineArrayFirstElementRefReadOnly[int,System.Nullable`1[int]](byref):byref (FullOpts) (0 base, 1 diff methods)
           4 (Infinity of base) : System.Private.CoreLib.dasm - <PrivateImplementationDetails>:InlineArrayFirstElementRefReadOnly[long,System.Nullable`1[int]](byref):byref (FullOpts) (0 base, 1 diff methods)
           4 (Infinity of base) : System.Private.CoreLib.dasm - <PrivateImplementationDetails>:InlineArrayFirstElementRefReadOnly[short,System.Nullable`1[int]](byref):byref (FullOpts) (0 base, 1 diff methods)
           4 (Infinity of base) : System.Private.CoreLib.dasm - <PrivateImplementationDetails>:InlineArrayFirstElementRefReadOnly[System.__Canon,System.Nullable`1[int]](byref):byref (FullOpts) (0 base, 1 diff methods)
           4 (Infinity of base) : System.Private.CoreLib.dasm - <PrivateImplementationDetails>:InlineArrayFirstElementRefReadOnly[System.Nullable`1[int],System.Nullable`1[int]](byref):byref (FullOpts) (0 base, 1 diff methods)
           4 (Infinity of base) : System.Private.CoreLib.dasm - <PrivateImplementationDetails>:InlineArrayFirstElementRefReadOnly[System.Numerics.Vector`1[float],System.Nullable`1[int]](byref):byref (FullOpts) (0 base, 1 diff methods)

Top method improvements (bytes):
        -304 (-100.00 % of base) : System.Private.CoreLib.dasm - System.Number+BigInteger:ShiftLeft(uint):this (FullOpts) (1 base, 0 diff methods)
        -282 (-100.00 % of base) : System.Private.CoreLib.dasm - System.Number:ConvertBigIntegerToFloatingPointBits[double](byref,uint,bool):ulong (FullOpts) (1 base, 0 diff methods)
        -103 (-100.00 % of base) : System.Private.CoreLib.dasm - System.Number+BigInteger:Pow2(uint,byref) (FullOpts) (1 base, 0 diff methods)
         -68 (-21.45 % of base) : System.Private.CoreLib.dasm - System.Number+BigInteger:Pow10(uint,byref) (FullOpts)
         -29 (-100.00 % of base) : System.Private.CoreLib.dasm - System.Number+BigInteger:Clear(uint):this (FullOpts) (1 base, 0 diff methods)
         -29 (-100.00 % of base) : System.Private.CoreLib.dasm - System.Number+BigInteger:CountSignificantBits(byref):uint (FullOpts) (1 base, 0 diff methods)
         -25 (-0.73 % of base) : System.Private.CoreLib.dasm - System.Number:Dragon4(ulong,int,uint,bool,int,bool,System.Span`1[byte],byref):uint (FullOpts)
         -25 (-10.16 % of base) : System.Private.CoreLib.dasm - System.Number+BigInteger:MultiplyPow10(uint):this (FullOpts)
         -24 (-6.74 % of base) : System.Private.CoreLib.dasm - System.Number:AccumulateDecimalDigitsIntoBigInteger(byref,uint,uint,byref) (FullOpts)
         -24 (-1.56 % of base) : System.Private.CoreLib.dasm - System.Number:NumberToFloatingPointBitsSlow[double](byref,uint,uint,uint):ulong (FullOpts)
         -23 (-13.53 % of base) : System.Private.CoreLib.dasm - System.Number+BigInteger:Multiply(byref):this (FullOpts)
         -13 (-100.00 % of base) : System.Private.CoreLib.dasm - System.Number+BigInteger:CountSignificantBits(ulong):uint (FullOpts) (1 base, 0 diff methods)
         -13 (-100.00 % of base) : System.Private.CoreLib.dasm - System.Number+BigInteger:DivRem32(uint,byref):uint (FullOpts) (1 base, 0 diff methods)
         -12 (-100.00 % of base) : System.Private.CoreLib.dasm - System.Number+BigInteger:CountSignificantBits(uint):uint (FullOpts) (1 base, 0 diff methods)
         -10 (-100.00 % of base) : System.Private.CoreLib.dasm - System.Number+BigInteger:GetBlock(uint):uint:this (FullOpts) (1 base, 0 diff methods)

Top method regressions (percentages):
           8 (Infinity of base) : System.Private.CoreLib.dasm - <PrivateImplementationDetails>:InlineArrayElementRefReadOnly[byte,System.Nullable`1[int]](byref,int):byref (FullOpts) (0 base, 1 diff methods)
           8 (Infinity of base) : System.Private.CoreLib.dasm - <PrivateImplementationDetails>:InlineArrayElementRefReadOnly[double,System.Nullable`1[int]](byref,int):byref (FullOpts) (0 base, 1 diff methods)
           8 (Infinity of base) : System.Private.CoreLib.dasm - <PrivateImplementationDetails>:InlineArrayElementRefReadOnly[int,System.Nullable`1[int]](byref,int):byref (FullOpts) (0 base, 1 diff methods)
           8 (Infinity of base) : System.Private.CoreLib.dasm - <PrivateImplementationDetails>:InlineArrayElementRefReadOnly[long,System.Nullable`1[int]](byref,int):byref (FullOpts) (0 base, 1 diff methods)
           8 (Infinity of base) : System.Private.CoreLib.dasm - <PrivateImplementationDetails>:InlineArrayElementRefReadOnly[short,System.Nullable`1[int]](byref,int):byref (FullOpts) (0 base, 1 diff methods)
           8 (Infinity of base) : System.Private.CoreLib.dasm - <PrivateImplementationDetails>:InlineArrayElementRefReadOnly[System.__Canon,System.Nullable`1[int]](byref,int):byref (FullOpts) (0 base, 1 diff methods)
           8 (Infinity of base) : System.Private.CoreLib.dasm - <PrivateImplementationDetails>:InlineArrayElementRefReadOnly[System.Nullable`1[int],System.Nullable`1[int]](byref,int):byref (FullOpts) (0 base, 1 diff methods)
           8 (Infinity of base) : System.Private.CoreLib.dasm - <PrivateImplementationDetails>:InlineArrayElementRefReadOnly[System.Numerics.Vector`1[float],System.Nullable`1[int]](byref,int):byref (FullOpts) (0 base, 1 diff methods)
           4 (Infinity of base) : System.Private.CoreLib.dasm - <PrivateImplementationDetails>:InlineArrayFirstElementRefReadOnly[byte,System.Nullable`1[int]](byref):byref (FullOpts) (0 base, 1 diff methods)
           4 (Infinity of base) : System.Private.CoreLib.dasm - <PrivateImplementationDetails>:InlineArrayFirstElementRefReadOnly[double,System.Nullable`1[int]](byref):byref (FullOpts) (0 base, 1 diff methods)
           4 (Infinity of base) : System.Private.CoreLib.dasm - <PrivateImplementationDetails>:InlineArrayFirstElementRefReadOnly[int,System.Nullable`1[int]](byref):byref (FullOpts) (0 base, 1 diff methods)
           4 (Infinity of base) : System.Private.CoreLib.dasm - <PrivateImplementationDetails>:InlineArrayFirstElementRefReadOnly[long,System.Nullable`1[int]](byref):byref (FullOpts) (0 base, 1 diff methods)
           4 (Infinity of base) : System.Private.CoreLib.dasm - <PrivateImplementationDetails>:InlineArrayFirstElementRefReadOnly[short,System.Nullable`1[int]](byref):byref (FullOpts) (0 base, 1 diff methods)
           4 (Infinity of base) : System.Private.CoreLib.dasm - <PrivateImplementationDetails>:InlineArrayFirstElementRefReadOnly[System.__Canon,System.Nullable`1[int]](byref):byref (FullOpts) (0 base, 1 diff methods)
           4 (Infinity of base) : System.Private.CoreLib.dasm - <PrivateImplementationDetails>:InlineArrayFirstElementRefReadOnly[System.Nullable`1[int],System.Nullable`1[int]](byref):byref (FullOpts) (0 base, 1 diff methods)
           4 (Infinity of base) : System.Private.CoreLib.dasm - <PrivateImplementationDetails>:InlineArrayFirstElementRefReadOnly[System.Numerics.Vector`1[float],System.Nullable`1[int]](byref):byref (FullOpts) (0 base, 1 diff methods)
         375 (Infinity of base) : System.Private.CoreLib.dasm - System.Number:ConvertBigIntegerToFloatingPointBits[double](byref,int,bool):ulong (FullOpts) (0 base, 1 diff methods)
          50 (Infinity of base) : System.Private.CoreLib.dasm - System.Number+BigInteger:Clear(int):this (FullOpts) (0 base, 1 diff methods)
          49 (Infinity of base) : System.Private.CoreLib.dasm - System.Number+BigInteger:CountSignificantBits(byref):int (FullOpts) (0 base, 1 diff methods)
          12 (Infinity of base) : System.Private.CoreLib.dasm - System.Number+BigInteger:CountSignificantBits(uint):int (FullOpts) (0 base, 1 diff methods)
          13 (Infinity of base) : System.Private.CoreLib.dasm - System.Number+BigInteger:CountSignificantBits(ulong):int (FullOpts) (0 base, 1 diff methods)
          13 (Infinity of base) : System.Private.CoreLib.dasm - System.Number+BigInteger:DivRem32(int,byref):int (FullOpts) (0 base, 1 diff methods)
          29 (Infinity of base) : System.Private.CoreLib.dasm - System.Number+BigInteger:GetBlock(int):uint:this (FullOpts) (0 base, 1 diff methods)
         136 (Infinity of base) : System.Private.CoreLib.dasm - System.Number+BigInteger:Pow2(int,byref) (FullOpts) (0 base, 1 diff methods)
         444 (Infinity of base) : System.Private.CoreLib.dasm - System.Number+BigInteger:ShiftLeft(int):this (FullOpts) (0 base, 1 diff methods)
          88 (48.62 % of base) : System.Private.CoreLib.dasm - System.Number+BigInteger:Add(byref,byref,byref) (FullOpts)
          24 (27.91 % of base) : System.Private.CoreLib.dasm - System.Number+BigInteger:Multiply10():this (FullOpts)
          18 (27.27 % of base) : System.Private.CoreLib.dasm - System.Number+BigInteger:AddDivisor(byref,int,byref):uint (FullOpts)
         249 (25.33 % of base) : System.Private.CoreLib.dasm - System.Number+BigInteger:DivRem(byref,byref,byref,byref) (FullOpts)
          22 (25.29 % of base) : System.Private.CoreLib.dasm - System.Number+BigInteger:SubtractDivisor(byref,int,byref,ulong):uint (FullOpts)
          17 (21.79 % of base) : System.Private.CoreLib.dasm - System.Number+BigInteger:Compare(byref,byref):int (FullOpts)
          61 (19.37 % of base) : System.Private.CoreLib.dasm - System.Number+BigInteger:HeuristicDivide(byref,byref):uint (FullOpts)
          70 (17.68 % of base) : System.Private.CoreLib.dasm - System.Number+BigInteger:Multiply(byref,byref,byref) (FullOpts)
          33 (17.10 % of base) : System.Private.CoreLib.dasm - System.Number+BigInteger:Multiply(byref,uint,byref) (FullOpts)
          15 (15.15 % of base) : System.Private.CoreLib.dasm - System.Number+BigInteger:Add(uint):this (FullOpts)

Top method improvements (percentages):
        -282 (-100.00 % of base) : System.Private.CoreLib.dasm - System.Number:ConvertBigIntegerToFloatingPointBits[double](byref,uint,bool):ulong (FullOpts) (1 base, 0 diff methods)
         -29 (-100.00 % of base) : System.Private.CoreLib.dasm - System.Number+BigInteger:Clear(uint):this (FullOpts) (1 base, 0 diff methods)
         -29 (-100.00 % of base) : System.Private.CoreLib.dasm - System.Number+BigInteger:CountSignificantBits(byref):uint (FullOpts) (1 base, 0 diff methods)
         -12 (-100.00 % of base) : System.Private.CoreLib.dasm - System.Number+BigInteger:CountSignificantBits(uint):uint (FullOpts) (1 base, 0 diff methods)
         -13 (-100.00 % of base) : System.Private.CoreLib.dasm - System.Number+BigInteger:CountSignificantBits(ulong):uint (FullOpts) (1 base, 0 diff methods)
         -13 (-100.00 % of base) : System.Private.CoreLib.dasm - System.Number+BigInteger:DivRem32(uint,byref):uint (FullOpts) (1 base, 0 diff methods)
         -10 (-100.00 % of base) : System.Private.CoreLib.dasm - System.Number+BigInteger:GetBlock(uint):uint:this (FullOpts) (1 base, 0 diff methods)
        -103 (-100.00 % of base) : System.Private.CoreLib.dasm - System.Number+BigInteger:Pow2(uint,byref) (FullOpts) (1 base, 0 diff methods)
        -304 (-100.00 % of base) : System.Private.CoreLib.dasm - System.Number+BigInteger:ShiftLeft(uint):this (FullOpts) (1 base, 0 diff methods)
         -68 (-21.45 % of base) : System.Private.CoreLib.dasm - System.Number+BigInteger:Pow10(uint,byref) (FullOpts)
         -23 (-13.53 % of base) : System.Private.CoreLib.dasm - System.Number+BigInteger:Multiply(byref):this (FullOpts)
         -25 (-10.16 % of base) : System.Private.CoreLib.dasm - System.Number+BigInteger:MultiplyPow10(uint):this (FullOpts)
         -24 (-6.74 % of base) : System.Private.CoreLib.dasm - System.Number:AccumulateDecimalDigitsIntoBigInteger(byref,uint,uint,byref) (FullOpts)
         -24 (-1.56 % of base) : System.Private.CoreLib.dasm - System.Number:NumberToFloatingPointBitsSlow[double](byref,uint,uint,uint):ulong (FullOpts)
         -25 (-0.73 % of base) : System.Private.CoreLib.dasm - System.Number:Dragon4(ulong,int,uint,bool,int,bool,System.Span`1[byte],byref):uint (FullOpts)

50 total methods with Code Size differences (15 improved, 35 regressed), 282902 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