{"Summary":"37 changed method listings; 37 examples across 9 assemblies.\n\nFound 102 files with textual diffs.\n\nSummary of Code Size diffs:\n(Lower is better)\n\nTotal bytes of base: 409033926\nTotal bytes of diff: 409034536\nTotal bytes of delta: 610 (0.00 % of base)\nTotal relative delta: Infinity\n    diff is a regression.\n    relative diff is a regression.\n\n\nTotal byte diff includes -4 bytes from reconciling methods\n\tBase had    1 unique methods,        4 unique bytes\n\tDiff had    0 unique methods,        0 unique bytes\n\nTop file regressions (bytes):\n         665 : SixLabors.ImageSharp.dasm (0.02 % of base)\n\nTop file improvements (bytes):\n         -33 : System.Private.CoreLib.dasm (-0.00 % of base)\n         -22 : System.Runtime.Numerics.dasm (-0.01 % of base)\n\n3 total files with Code Size differences (2 improved, 1 regressed), 757 unchanged.\n\nTop method regressions (bytes):\n         669 (Infinity of base) : SixLabors.ImageSharp.dasm - SixLabors.ImageSharp.Memory.Buffer2DRegion\u00601[int]:get_Item(int,int):byref:this (FullOpts)\n\nTop method improvements (bytes):\n         -18 (-5.77 % of base) : System.Runtime.Numerics.dasm - System.Numerics.BigInteger:PopCount(System.Numerics.BigInteger):System.Numerics.BigInteger (FullOpts)\n          -7 (-1.88 % of base) : System.Private.CoreLib.dasm - System.Text.Unicode.Utf16Utility:GetPointerToFirstInvalidChar(ptr,int,byref,byref):ptr (FullOpts)\n          -4 (-100.00 % of base) : SixLabors.ImageSharp.dasm - SixLabors.ImageSharp.Memory.Buffer2D\u00601[double]:get_Height():int:this (FullOpts) (1 base, 0 diff methods)\n          -2 (-20.00 % of base) : System.Private.CoreLib.dasm - System.Int64:LeadingZeroCount(long):long (FullOpts)\n          -2 (-20.00 % of base) : System.Private.CoreLib.dasm - System.Int64:PopCount(long):long (FullOpts)\n          -2 (-20.00 % of base) : System.Private.CoreLib.dasm - System.Int64:TrailingZeroCount(long):long (FullOpts)\n          -2 (-20.00 % of base) : System.Private.CoreLib.dasm - System.IntPtr:LeadingZeroCount(nint):nint (FullOpts)\n          -2 (-20.00 % of base) : System.Private.CoreLib.dasm - System.IntPtr:PopCount(nint):nint (FullOpts)\n          -2 (-20.00 % of base) : System.Private.CoreLib.dasm - System.IntPtr:TrailingZeroCount(nint):nint (FullOpts)\n          -2 (-1.16 % of base) : System.Runtime.Numerics.dasm - System.Numerics.BigInteger:GetBitLength():long:this (FullOpts)\n          -2 (-1.12 % of base) : System.Runtime.Numerics.dasm - System.Numerics.BigInteger:Log2(System.Numerics.BigInteger):System.Numerics.BigInteger (FullOpts)\n          -2 (-0.32 % of base) : System.Private.CoreLib.dasm - System.SpanHelpers:SequenceCompareTo(byref,int,byref,int):int (FullOpts) (2 methods)\n          -2 (-20.00 % of base) : System.Private.CoreLib.dasm - System.UInt64:LeadingZeroCount(ulong):ulong (FullOpts)\n          -2 (-20.00 % of base) : System.Private.CoreLib.dasm - System.UInt64:PopCount(ulong):ulong (FullOpts)\n          -2 (-20.00 % of base) : System.Private.CoreLib.dasm - System.UInt64:TrailingZeroCount(ulong):ulong (FullOpts)\n          -2 (-20.00 % of base) : System.Private.CoreLib.dasm - System.UIntPtr:LeadingZeroCount(nuint):nuint (FullOpts)\n          -2 (-20.00 % of base) : System.Private.CoreLib.dasm - System.UIntPtr:PopCount(nuint):nuint (FullOpts)\n          -2 (-20.00 % of base) : System.Private.CoreLib.dasm - System.UIntPtr:TrailingZeroCount(nuint):nuint (FullOpts)\n\nTop method regressions (percentages):\n         669 (Infinity of base) : SixLabors.ImageSharp.dasm - SixLabors.ImageSharp.Memory.Buffer2DRegion\u00601[int]:get_Item(int,int):byref:this (FullOpts)\n\nTop method improvements (percentages):\n          -4 (-100.00 % of base) : SixLabors.ImageSharp.dasm - SixLabors.ImageSharp.Memory.Buffer2D\u00601[double]:get_Height():int:this (FullOpts) (1 base, 0 diff methods)\n          -2 (-20.00 % of base) : System.Private.CoreLib.dasm - System.Int64:LeadingZeroCount(long):long (FullOpts)\n          -2 (-20.00 % of base) : System.Private.CoreLib.dasm - System.Int64:PopCount(long):long (FullOpts)\n          -2 (-20.00 % of base) : System.Private.CoreLib.dasm - System.Int64:TrailingZeroCount(long):long (FullOpts)\n          -2 (-20.00 % of base) : System.Private.CoreLib.dasm - System.IntPtr:LeadingZeroCount(nint):nint (FullOpts)\n          -2 (-20.00 % of base) : System.Private.CoreLib.dasm - System.IntPtr:PopCount(nint):nint (FullOpts)\n          -2 (-20.00 % of base) : System.Private.CoreLib.dasm - System.IntPtr:TrailingZeroCount(nint):nint (FullOpts)\n          -2 (-20.00 % of base) : System.Private.CoreLib.dasm - System.UInt64:LeadingZeroCount(ulong):ulong (FullOpts)\n          -2 (-20.00 % of base) : System.Private.CoreLib.dasm - System.UInt64:PopCount(ulong):ulong (FullOpts)\n          -2 (-20.00 % of base) : System.Private.CoreLib.dasm - System.UInt64:TrailingZeroCount(ulong):ulong (FullOpts)\n          -2 (-20.00 % of base) : System.Private.CoreLib.dasm - System.UIntPtr:LeadingZeroCount(nuint):nuint (FullOpts)\n          -2 (-20.00 % of base) : System.Private.CoreLib.dasm - System.UIntPtr:PopCount(nuint):nuint (FullOpts)\n          -2 (-20.00 % of base) : System.Private.CoreLib.dasm - System.UIntPtr:TrailingZeroCount(nuint):nuint (FullOpts)\n         -18 (-5.77 % of base) : System.Runtime.Numerics.dasm - System.Numerics.BigInteger:PopCount(System.Numerics.BigInteger):System.Numerics.BigInteger (FullOpts)\n          -7 (-1.88 % of base) : System.Private.CoreLib.dasm - System.Text.Unicode.Utf16Utility:GetPointerToFirstInvalidChar(ptr,int,byref,byref):ptr (FullOpts)\n          -2 (-1.16 % of base) : System.Runtime.Numerics.dasm - System.Numerics.BigInteger:GetBitLength():long:this (FullOpts)\n          -2 (-1.12 % of base) : System.Runtime.Numerics.dasm - System.Numerics.BigInteger:Log2(System.Numerics.BigInteger):System.Numerics.BigInteger (FullOpts)\n          -2 (-0.32 % of base) : System.Private.CoreLib.dasm - System.SpanHelpers:SequenceCompareTo(byref,int,byref,int):int (FullOpts) (2 methods)\n\n19 total methods with Code Size differences (18 improved, 1 regressed), 2193050 unchanged.\n\n--------------------------------------------------------------------------------","Notes":["Examples are interleaved across assemblies and change categories, ranked by absolute byte change within each group. Same-size examples have changed disassembly, not a size improvement or regression.","New/removed methods are excluded unless enabled with -includeNewMethodRegressions / -includeRemovedMethodImprovements.","4 incomplete method listings could not be compared.","Large methods use reduced context, and exceptionally large diffs omit their middle. Each affected example is marked. Use -uploadDasm for the complete JIT disassembly artifacts."],"Entries":[{"Assembly":"Elastic.Apm.dasm","Method":"Elastic.Apm.Libraries.Newtonsoft.Json.DefaultJsonNameTable:Get(char[],int,int):System.String:this (FullOpts)","Category":"same-size","Description":"335 -\u003E 335 bytes (0)","ExtraInfo":null,"Diff":"@@ -1,175 \u002B1,175 @@\n ; Assembly listing for method Elastic.Apm.Libraries.Newtonsoft.Json.DefaultJsonNameTable:Get(char[],int,int):System.String:this (FullOpts)\n ; Emitting BLENDED_CODE for x64 \u002B VEX \u002B EVEX on Unix\n ; FullOpts code\n ; optimized code\n ; rbp based frame\n ; fully interruptible\n ; No PGO data\n ; Final local variable assignments\n ;\n ;  V00 this         [V00,T07] (  4,  3   )     ref  -\u003E  rdi         this class-hnd single-def \u003CElastic.Apm.Libraries.Newtonsoft.Json.DefaultJsonNameTable\u003E\n ;  V01 arg1         [V01,T03] (  7,  9   )     ref  -\u003E  rbx         class-hnd single-def \u003Cchar[]\u003E\n ;  V02 arg2         [V02,T04] (  7,  6   )     int  -\u003E  r15         single-def\n ;  V03 arg3         [V03,T05] (  6,  6   )     int  -\u003E  r14         single-def\n ;  V04 loc0         [V04,T00] ( 21, 23   )     int  -\u003E  r13        \n ;  V05 loc1         [V05,T06] (  6,  6   )     int  -\u003E  rdx         single-def\n ;* V06 loc2         [V06    ] (  0,  0   )     int  -\u003E  zero-ref   \n ;* V07 loc3         [V07    ] (  0,  0   )     ref  -\u003E  zero-ref    class-hnd \u003CElastic.Apm.Libraries.Newtonsoft.Json.DefaultJsonNameTable\u002BEntry[]\u003E\n ;  V08 loc4         [V08,T02] ( 11, 17.04)     int  -\u003E  rcx        \n ;  V09 loc5         [V09,T01] (  8, 19.50)     ref  -\u003E  r12         class-hnd \u003CElastic.Apm.Libraries.Newtonsoft.Json.DefaultJsonNameTable\u002BEntry\u003E\n ;# V10 OutArgs      [V10    ] (  1,  1   )  struct ( 0) [rsp\u002B0x00]  do-not-enreg[XS] addr-exposed \u0022OutgoingArgSpace\u0022 \u003CEmpty\u003E\n ;  V11 tmp1         [V11,T08] (  3,  3   )     ref  -\u003E  rsi         single-def \u0022arr expr\u0022\n ;  V12 tmp2         [V12,T09] (  3,  3   )     int  -\u003E  rdx         \u0022index expr\u0022\n ;  V13 cse0         [V13,T10] (  4,  1.54)     int  -\u003E  rsi         \u0022CSE #01: moderate\u0022\n ;\n ; Lcl frame size = 8\n \n G_M16970_IG01:\n        push     rbp\n        push     r15\n        push     r14\n        push     r13\n        push     r12\n        push     rbx\n        push     rax\n        lea      rbp, [rsp\u002B0x30]\n        mov      rbx, rsi\n        mov      r15d, edx\n        mov      r14d, ecx\n \t\t\t\t\t\t;; size=25 bbWeight=1 PerfScore 8.25\n G_M16970_IG02:\n        test     r14d, r14d\n        je       G_M16970_IG14\n \t\t\t\t\t\t;; size=9 bbWeight=1 PerfScore 1.25\n G_M16970_IG03:\n-       lea      r13d, [r14\u002B0x000DD9D0]\n\u002B       lea      r13d, [r14\u002B0x000DDB82]\n        mov      esi, dword ptr [rbx\u002B0x08]\n        cmp      r15d, esi\n        jae      G_M16970_IG16\n        mov      edx, r15d\n        movzx    rdx, word  ptr [rbx\u002B2*rdx\u002B0x10]\n        mov      ecx, r13d\n        shl      ecx, 7\n        xor      edx, ecx\n        add      r13d, edx\n        lea      edx, [r15\u002Br14]\n        lea      ecx, [r15\u002B0x01]\n        cmp      ecx, edx\n        jge      SHORT G_M16970_IG05\n        test     edx, edx\n        jl       G_M16970_IG10\n        cmp      esi, edx\n        jl       G_M16970_IG10\n        align    [0 bytes for IG04]\n \t\t\t\t\t\t;; size=66 bbWeight=0.50 PerfScore 6.00\n G_M16970_IG04:\n        mov      esi, ecx\n        movzx    rsi, word  ptr [rbx\u002B2*rsi\u002B0x10]\n        mov      eax, r13d\n        shl      eax, 7\n        xor      esi, eax\n        add      r13d, esi\n        inc      ecx\n        cmp      ecx, edx\n        jl       SHORT G_M16970_IG04\n \t\t\t\t\t\t;; size=24 bbWeight=3.96 PerfScore 19.80\n G_M16970_IG05:\n        mov      esi, r13d\n        sar      esi, 17\n        sub      r13d, esi\n        mov      esi, r13d\n        sar      esi, 11\n        sub      r13d, esi\n        mov      esi, r13d\n        sar      esi, 5\n        sub      r13d, esi\n        mov      rsi, gword ptr [rdi\u002B0x08]\n        mov      edx, r13d\n        and      edx, dword ptr [rdi\u002B0x14]\n        cmp      edx, dword ptr [rsi\u002B0x08]\n        jae      G_M16970_IG16\n        mov      edi, edx\n        mov      r12, gword ptr [rsi\u002B8*rdi\u002B0x10]\n        test     r12, r12\n        je       SHORT G_M16970_IG12\n \t\t\t\t\t\t;; size=58 bbWeight=0.50 PerfScore 6.88\n G_M16970_IG06:\n        cmp      dword ptr [r12\u002B0x18], r13d\n        jne      SHORT G_M16970_IG11\n \t\t\t\t\t\t;; size=7 bbWeight=4 PerfScore 12.00\n G_M16970_IG07:\n        mov      rdi, gword ptr [r12\u002B0x08]\n        mov      rsi, rbx\n        mov      edx, r15d\n        mov      ecx, r14d\n        mov      rax, 0xD1FFAB1E      ; code for Elastic.Apm.Libraries.Newtonsoft.Json.DefaultJsonNameTable:TextEquals(System.String,char[],int,int):bool\n        call     [rax]Elastic.Apm.Libraries.Newtonsoft.Json.DefaultJsonNameTable:TextEquals(System.String,char[],int,int):bool\n        test     eax, eax\n        je       SHORT G_M16970_IG11\n \t\t\t\t\t\t;; size=30 bbWeight=2 PerfScore 14.50\n G_M16970_IG08:\n        mov      rax, gword ptr [r12\u002B0x08]\n \t\t\t\t\t\t;; size=5 bbWeight=0.50 PerfScore 1.00\n G_M16970_IG09:\n        add      rsp, 8\n        pop      rbx\n        pop      r12\n        pop      r13\n        pop      r14\n        pop      r15\n        pop      rbp\n        ret      \n \t\t\t\t\t\t;; size=15 bbWeight=0.50 PerfScore 2.12\n G_M16970_IG10:\n        cmp      ecx, esi\n        jae      SHORT G_M16970_IG16\n        mov      eax, ecx\n        movzx    rax, word  ptr [rbx\u002B2*rax\u002B0x10]\n        mov      r8d, r13d\n        shl      r8d, 7\n        xor      eax, r8d\n        add      eax, r13d\n        mov      r13d, eax\n        inc      ecx\n        cmp      ecx, edx\n        jl       SHORT G_M16970_IG10\n        jmp      G_M16970_IG05\n \t\t\t\t\t\t;; size=38 bbWeight=0.04 PerfScore 0.34\n G_M16970_IG11:\n        mov      r12, gword ptr [r12\u002B0x10]\n        test     r12, r12\n        jne      SHORT G_M16970_IG06\n \t\t\t\t\t\t;; size=10 bbWeight=4 PerfScore 13.00\n G_M16970_IG12:\n        xor      rax, rax\n \t\t\t\t\t\t;; size=2 bbWeight=0.50 PerfScore 0.12\n G_M16970_IG13:\n        add      rsp, 8\n        pop      rbx\n        pop      r12\n        pop      r13\n        pop      r14\n        pop      r15\n        pop      rbp\n        ret      \n \t\t\t\t\t\t;; size=15 bbWeight=0.50 PerfScore 2.12\n G_M16970_IG14:\n        mov      rax, 0xD1FFAB1E      ; \u0027\u0027\n \t\t\t\t\t\t;; size=10 bbWeight=0.50 PerfScore 0.12\n G_M16970_IG15:\n        add      rsp, 8\n        pop      rbx\n        pop      r12\n        pop      r13\n        pop      r14\n        pop      r15\n        pop      rbp\n        ret      \n \t\t\t\t\t\t;; size=15 bbWeight=0.50 PerfScore 2.12\n G_M16970_IG16:\n        call     CORINFO_HELP_RNGCHKFAIL\n        int3     \n \t\t\t\t\t\t;; size=6 bbWeight=0 PerfScore 0.00\n \n ; Total bytes of code 335, prolog size 25, PerfScore 89.64, instruction count 114, allocated bytes for code 335 (MethodHash=39aabdb5) for method Elastic.Apm.Libraries.Newtonsoft.Json.DefaultJsonNameTable:Get(char[],int,int):System.String:this (FullOpts)\n ; ============================================================","Truncated":false,"BaseBytes":335,"DiffBytes":335},{"Assembly":"Newtonsoft.Json.dasm","Method":"Newtonsoft.Json.DefaultJsonNameTable:Get(char[],int,int):System.String:this (FullOpts)","Category":"same-size","Description":"333 -\u003E 333 bytes (0)","ExtraInfo":null,"Diff":"@@ -1,173 \u002B1,173 @@\n ; Assembly listing for method Newtonsoft.Json.DefaultJsonNameTable:Get(char[],int,int):System.String:this (FullOpts)\n ; Emitting BLENDED_CODE for x64 \u002B VEX \u002B EVEX on Unix\n ; FullOpts code\n ; optimized code\n ; rbp based frame\n ; fully interruptible\n ; No PGO data\n ; Final local variable assignments\n ;\n ;  V00 this         [V00,T07] (  4,  3   )     ref  -\u003E  rdi         this class-hnd single-def \u003CNewtonsoft.Json.DefaultJsonNameTable\u003E\n ;  V01 arg1         [V01,T03] (  7,  9   )     ref  -\u003E  rbx         class-hnd single-def \u003Cchar[]\u003E\n ;  V02 arg2         [V02,T04] (  7,  6   )     int  -\u003E  r15         single-def\n ;  V03 arg3         [V03,T05] (  6,  6   )     int  -\u003E  r14         single-def\n ;  V04 loc0         [V04,T00] ( 21, 23   )     int  -\u003E  r13        \n ;  V05 loc1         [V05,T06] (  6,  6   )     int  -\u003E  rdx         single-def\n ;* V06 loc2         [V06    ] (  0,  0   )     int  -\u003E  zero-ref   \n ;  V07 loc3         [V07,T10] (  3,  1.50)     int  -\u003E  rsi         single-def\n ;  V08 loc4         [V08,T02] ( 11, 17.04)     int  -\u003E  rcx        \n ;  V09 loc5         [V09,T01] (  8, 19.50)     ref  -\u003E  r12         class-hnd \u003CNewtonsoft.Json.DefaultJsonNameTable\u002BEntry\u003E\n ;# V10 OutArgs      [V10    ] (  1,  1   )  struct ( 0) [rsp\u002B0x00]  do-not-enreg[XS] addr-exposed \u0022OutgoingArgSpace\u0022 \u003CEmpty\u003E\n ;  V11 tmp1         [V11,T08] (  3,  3   )     ref  -\u003E  rdi         single-def \u0022arr expr\u0022\n ;  V12 cse0         [V12,T09] (  4,  1.54)     int  -\u003E  rsi         \u0022CSE #01: moderate\u0022\n ;\n ; Lcl frame size = 8\n \n G_M29284_IG01:\n        push     rbp\n        push     r15\n        push     r14\n        push     r13\n        push     r12\n        push     rbx\n        push     rax\n        lea      rbp, [rsp\u002B0x30]\n        mov      rbx, rsi\n        mov      r15d, edx\n        mov      r14d, ecx\n \t\t\t\t\t\t;; size=25 bbWeight=1 PerfScore 8.25\n G_M29284_IG02:\n        test     r14d, r14d\n        je       G_M29284_IG14\n \t\t\t\t\t\t;; size=9 bbWeight=1 PerfScore 1.25\n G_M29284_IG03:\n-       lea      r13d, [r14\u002B0x000E6E4E]\n\u002B       lea      r13d, [r14\u002B0x000E7012]\n        mov      esi, dword ptr [rbx\u002B0x08]\n        cmp      r15d, esi\n        jae      G_M29284_IG16\n        mov      edx, r15d\n        movzx    rdx, word  ptr [rbx\u002B2*rdx\u002B0x10]\n        mov      ecx, r13d\n        shl      ecx, 7\n        xor      edx, ecx\n        add      r13d, edx\n        lea      edx, [r15\u002Br14]\n        lea      ecx, [r15\u002B0x01]\n        cmp      ecx, edx\n        jge      SHORT G_M29284_IG05\n        test     edx, edx\n        jl       G_M29284_IG10\n        cmp      esi, edx\n        jl       G_M29284_IG10\n        align    [0 bytes for IG04]\n \t\t\t\t\t\t;; size=66 bbWeight=0.50 PerfScore 6.00\n G_M29284_IG04:\n        mov      esi, ecx\n        movzx    rsi, word  ptr [rbx\u002B2*rsi\u002B0x10]\n        mov      eax, r13d\n        shl      eax, 7\n        xor      esi, eax\n        add      r13d, esi\n        inc      ecx\n        cmp      ecx, edx\n        jl       SHORT G_M29284_IG04\n \t\t\t\t\t\t;; size=24 bbWeight=3.96 PerfScore 19.80\n G_M29284_IG05:\n        mov      esi, r13d\n        sar      esi, 17\n        sub      r13d, esi\n        mov      esi, r13d\n        sar      esi, 11\n        sub      r13d, esi\n        mov      esi, r13d\n        sar      esi, 5\n        sub      r13d, esi\n        mov      esi, r13d\n        and      esi, dword ptr [rdi\u002B0x14]\n        mov      rdi, gword ptr [rdi\u002B0x08]\n        cmp      esi, dword ptr [rdi\u002B0x08]\n        jae      G_M29284_IG16\n        mov      r12, gword ptr [rdi\u002B8*rsi\u002B0x10]\n        test     r12, r12\n        je       SHORT G_M29284_IG12\n \t\t\t\t\t\t;; size=56 bbWeight=0.50 PerfScore 6.75\n G_M29284_IG06:\n        cmp      dword ptr [r12\u002B0x18], r13d\n        jne      SHORT G_M29284_IG11\n \t\t\t\t\t\t;; size=7 bbWeight=4 PerfScore 12.00\n G_M29284_IG07:\n        mov      rdi, gword ptr [r12\u002B0x08]\n        mov      rsi, rbx\n        mov      edx, r15d\n        mov      ecx, r14d\n        mov      rax, 0xD1FFAB1E      ; code for Newtonsoft.Json.DefaultJsonNameTable:TextEquals(System.String,char[],int,int):bool\n        call     [rax]Newtonsoft.Json.DefaultJsonNameTable:TextEquals(System.String,char[],int,int):bool\n        test     eax, eax\n        je       SHORT G_M29284_IG11\n \t\t\t\t\t\t;; size=30 bbWeight=2 PerfScore 14.50\n G_M29284_IG08:\n        mov      rax, gword ptr [r12\u002B0x08]\n \t\t\t\t\t\t;; size=5 bbWeight=0.50 PerfScore 1.00\n G_M29284_IG09:\n        add      rsp, 8\n        pop      rbx\n        pop      r12\n        pop      r13\n        pop      r14\n        pop      r15\n        pop      rbp\n        ret      \n \t\t\t\t\t\t;; size=15 bbWeight=0.50 PerfScore 2.12\n G_M29284_IG10:\n        cmp      ecx, esi\n        jae      SHORT G_M29284_IG16\n        mov      eax, ecx\n        movzx    rax, word  ptr [rbx\u002B2*rax\u002B0x10]\n        mov      r8d, r13d\n        shl      r8d, 7\n        xor      eax, r8d\n        add      eax, r13d\n        mov      r13d, eax\n        inc      ecx\n        cmp      ecx, edx\n        jl       SHORT G_M29284_IG10\n        jmp      G_M29284_IG05\n \t\t\t\t\t\t;; size=38 bbWeight=0.04 PerfScore 0.34\n G_M29284_IG11:\n        mov      r12, gword ptr [r12\u002B0x10]\n        test     r12, r12\n        jne      SHORT G_M29284_IG06\n \t\t\t\t\t\t;; size=10 bbWeight=4 PerfScore 13.00\n G_M29284_IG12:\n        xor      rax, rax\n \t\t\t\t\t\t;; size=2 bbWeight=0.50 PerfScore 0.12\n G_M29284_IG13:\n        add      rsp, 8\n        pop      rbx\n        pop      r12\n        pop      r13\n        pop      r14\n        pop      r15\n        pop      rbp\n        ret      \n \t\t\t\t\t\t;; size=15 bbWeight=0.50 PerfScore 2.12\n G_M29284_IG14:\n        mov      rax, 0xD1FFAB1E      ; \u0027\u0027\n \t\t\t\t\t\t;; size=10 bbWeight=0.50 PerfScore 0.12\n G_M29284_IG15:\n        add      rsp, 8\n        pop      rbx\n        pop      r12\n        pop      r13\n        pop      r14\n        pop      r15\n        pop      rbp\n        ret      \n \t\t\t\t\t\t;; size=15 bbWeight=0.50 PerfScore 2.12\n G_M29284_IG16:\n        call     CORINFO_HELP_RNGCHKFAIL\n        int3     \n \t\t\t\t\t\t;; size=6 bbWeight=0 PerfScore 0.00\n \n ; Total bytes of code 333, prolog size 25, PerfScore 89.52, instruction count 113, allocated bytes for code 333 (MethodHash=987c8d9b) for method Newtonsoft.Json.DefaultJsonNameTable:Get(char[],int,int):System.String:this (FullOpts)\n ; ============================================================","Truncated":false,"BaseBytes":333,"DiffBytes":333},{"Assembly":"SharpCompress.dasm","Method":"SharpCompress.Compressors.ZStandard.Unsafe.Methods:ZSTDMT_serialState_reset(ptr,ptr,SharpCompress.Compressors.ZStandard.Unsafe.ZSTD_CCtx_params_s,nuint,ptr,nuint,int):int (FullOpts)","Category":"same-size","Description":"1,649 -\u003E 1,649 bytes (0)","ExtraInfo":null,"Diff":"@@ -1,614 \u002B1,614 @@\n ; Assembly listing for method SharpCompress.Compressors.ZStandard.Unsafe.Methods:ZSTDMT_serialState_reset(ptr,ptr,SharpCompress.Compressors.ZStandard.Unsafe.ZSTD_CCtx_params_s,nuint,ptr,nuint,int):int (FullOpts)\n ; Emitting BLENDED_CODE for x64 \u002B VEX \u002B EVEX on Unix\n ; FullOpts code\n ; optimized code\n ; rbp based frame\n ; partially interruptible\n ; No PGO data\n ; 0 inlinees with PGO data; 40 single block inlinees; 21 inlinees without PGO data\n ; Final local variable assignments\n ;\n ;  V00 arg0         [V00,T01] ( 18, 11   )    long  -\u003E  rbx         single-def\n ;  V01 arg1         [V01,T04] (  5,  3.50)    long  -\u003E  r14         single-def\n ;  V02 arg2         [V02    ] ( 19, 11   )  struct (224) [rbp\u002B0x10]  do-not-enreg[XSF] addr-exposed ld-addr-op single-def \u003CSharpCompress.Compressors.ZStandard.Unsafe.ZSTD_CCtx_params_s\u003E\n ;  V03 arg3         [V03,T05] (  4,  3   )    long  -\u003E  r13         single-def\n ;  V04 arg4         [V04,T02] (  7,  4.50)    long  -\u003E  r15         single-def\n ;  V05 arg5         [V05,T06] (  4,  3   )    long  -\u003E  r12         single-def\n ;  V06 arg6         [V06,T07] (  3,  2.50)     int  -\u003E  [rbp-0x2C]  single-def\n ;* V07 loc0         [V07    ] (  0,  0   )  struct (24) zero-ref    \u003CSharpCompress.Compressors.ZStandard.Unsafe.ZSTD_customMem\u003E\n ;  V08 loc1         [V08,T26] (  3,  1.50)     int  -\u003E  [rbp-0x30]  spill-single-def\n ;  V09 loc2         [V09,T20] (  4,  2   )    long  -\u003E  [rbp-0x38]  spill-single-def\n ;  V10 loc3         [V10,T27] (  3,  1.50)     int  -\u003E  [rbp-0x3C]  spill-single-def\n ;  V11 loc4         [V11,T40] (  2,  1   )     int  -\u003E  [rbp-0x40]  spill-single-def\n ;  V12 loc5         [V12,T21] (  4,  2   )    long  -\u003E  [rbp-0x48]  spill-single-def\n ;  V13 loc6         [V13,T28] (  3,  1.50)    long  -\u003E  [rbp-0x50]  spill-single-def\n ;# V14 OutArgs      [V14    ] (  1,  1   )  struct ( 0) [rsp\u002B0x00]  do-not-enreg[XS] addr-exposed \u0022OutgoingArgSpace\u0022 \u003CEmpty\u003E\n ;  V15 tmp1         [V15,T24] (  2,  2   )    long  -\u003E  [rbp-0x58]  spill-single-def \u0022impAppendStmt\u0022\n ;  V16 tmp2         [V16,T25] (  2,  2   )    long  -\u003E  [rbp-0x60]  spill-single-def \u0022impAppendStmt\u0022\n ;* V17 tmp3         [V17    ] (  0,  0   )    long  -\u003E  zero-ref   \n ;  V18 tmp4         [V18,T41] (  2,  1   )    long  -\u003E  rdi         single-def\n ;  V19 tmp5         [V19,T29] (  3,  1.50)     int  -\u003E  rax        \n ;* V20 tmp6         [V20    ] (  0,  0   )   ubyte  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V21 tmp7         [V21    ] (  0,  0   )     ref  -\u003E  zero-ref   \n ;* V22 tmp8         [V22    ] (  0,  0   )     ref  -\u003E  zero-ref    single-def\n ;  V23 tmp9         [V23,T46] (  3,  0   )     ref  -\u003E  rbx         class-hnd exact single-def \u0022NewObj constructor temp\u0022 \u003CSystem.ArgumentException\u003E\n ;* V24 tmp10        [V24    ] (  0,  0   )   ubyte  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V25 tmp11        [V25    ] (  0,  0   )     ref  -\u003E  zero-ref   \n ;* V26 tmp12        [V26    ] (  0,  0   )     ref  -\u003E  zero-ref    single-def\n ;  V27 tmp13        [V27,T47] (  3,  0   )     ref  -\u003E  rbx         class-hnd exact single-def \u0022NewObj constructor temp\u0022 \u003CSystem.ArgumentException\u003E\n ;  V28 tmp14        [V28,T42] (  2,  1   )    long  -\u003E  [rbp-0x68]  spill-single-def \u0022Inline return value spill temp\u0022\n ;* V29 tmp15        [V29    ] (  0,  0   )  struct (24) zero-ref    do-not-enreg[SF] \u0022Inlining Arg\u0022 \u003CSharpCompress.Compressors.ZStandard.Unsafe.ldmParams_t\u003E\n ;* V30 tmp16        [V30    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V31 tmp17        [V31    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;  V32 tmp18        [V32,T12] (  3,  3   )    long  -\u003E  rdi         \u0022Inlining Arg\u0022\n ;* V33 tmp19        [V33    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op \u0022Inline stloc first use temp\u0022 \u003CSystem.Runtime.InteropServices.GCHandle\u003E\n ;* V34 tmp20        [V34    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op \u0022NewObj constructor temp\u0022 \u003CSystem.Runtime.InteropServices.GCHandle\u003E\n ;* V35 tmp21        [V35    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022dup spill\u0022\n ;* V36 tmp22        [V36    ] (  0,  0   )    long  -\u003E  zero-ref    ld-addr-op \u0022NewObj constructor temp\u0022\n ;* V37 tmp23        [V37    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V38 tmp24        [V38    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V39 tmp25        [V39    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;  V40 tmp26        [V40,T13] (  3,  3   )    long  -\u003E  rdi         \u0022Inlining Arg\u0022\n ;* V41 tmp27        [V41    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op \u0022Inline stloc first use temp\u0022 \u003CSystem.Runtime.InteropServices.GCHandle\u003E\n ;* V42 tmp28        [V42    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op \u0022NewObj constructor temp\u0022 \u003CSystem.Runtime.InteropServices.GCHandle\u003E\n ;* V43 tmp29        [V43    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022dup spill\u0022\n ;* V44 tmp30        [V44    ] (  0,  0   )    long  -\u003E  zero-ref    ld-addr-op \u0022NewObj constructor temp\u0022\n ;* V45 tmp31        [V45    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V46 tmp32        [V46    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;  V47 tmp33        [V47,T14] (  3,  3   )    long  -\u003E  rdi         \u0022Inlining Arg\u0022\n ;* V48 tmp34        [V48    ] (  0,  0   )  struct (40) zero-ref    do-not-enreg[SF] ld-addr-op \u0022Inline ldloca(s) first use temp\u0022 \u003CSharpCompress.Compressors.ZStandard.Unsafe.ZSTD_window_t\u003E\n ;* V49 tmp35        [V49    ] (  0,  0   )  struct (16) zero-ref    \u0022spilled call-like call argument\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V50 tmp36        [V50    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022NewObj constructor temp\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V51 tmp37        [V51    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022Inlining Arg\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V52 tmp38        [V52    ] (  0,  0   )  struct (16) zero-ref    \u0022spilled call-like call argument\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V53 tmp39        [V53    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022NewObj constructor temp\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V54 tmp40        [V54    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022Inlining Arg\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V55 tmp41        [V55    ] (  0,  0   )  struct (16) zero-ref    \u0022spilled call-like call argument\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V56 tmp42        [V56    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022NewObj constructor temp\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V57 tmp43        [V57    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022Inlining Arg\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;  V58 tmp44        [V58,T09] (  4,  4   )    long  -\u003E  rsi         \u0022Inlining Arg\u0022\n ;* V59 tmp45        [V59    ] (  0,  0   )    long  -\u003E  zero-ref    single-def \u0022Inline stloc first use temp\u0022\n ;  V60 tmp46        [V60,T30] (  3,  1.50)    long  -\u003E  rax         \u0022Inline return value spill temp\u0022\n ;* V61 tmp47        [V61    ] (  0,  0   )    long  -\u003E  zero-ref    single-def \u0022Inline stloc first use temp\u0022\n ;  V62 tmp48        [V62,T10] (  4,  4   )    long  -\u003E  rsi         \u0022Inlining Arg\u0022\n ;* V63 tmp49        [V63    ] (  0,  0   )    long  -\u003E  zero-ref    single-def \u0022Inline stloc first use temp\u0022\n ;  V64 tmp50        [V64,T31] (  3,  1.50)    long  -\u003E  rax         \u0022Inline return value spill temp\u0022\n ;* V65 tmp51        [V65    ] (  0,  0   )    long  -\u003E  zero-ref    single-def \u0022Inline stloc first use temp\u0022\n ;* V66 tmp52        [V66    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V67 tmp53        [V67    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V68 tmp54        [V68    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V69 tmp55        [V69    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V70 tmp56        [V70    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V71 tmp57        [V71    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V72 tmp58        [V72    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022Inline return value spill temp\u0022\n ;* V73 tmp59        [V73    ] (  0,  0   )    long  -\u003E  zero-ref    single-def \u0022Inline stloc first use temp\u0022\n ;* V74 tmp60        [V74    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022Inline stloc first use temp\u0022\n ;  V75 tmp61        [V75,T00] ( 19, 19   )    long  -\u003E  rdi         \u0022Inlining Arg\u0022\n ;  V76 tmp62        [V76,T15] (  5,  2.50)    long  -\u003E  rsi         single-def \u0022Inline stloc first use temp\u0022\n ;  V77 tmp63        [V77,T22] (  4,  2   )    long  -\u003E  r12         single-def \u0022Inline stloc first use temp\u0022\n ;  V78 tmp64        [V78,T43] (  2,  1   )     int  -\u003E  rsi        \n ;* V79 tmp65        [V79    ] (  0,  0   )     int  -\u003E  zero-ref    single-def \u0022Inline stloc first use temp\u0022\n ;* V80 tmp66        [V80    ] (  0,  0   )   ubyte  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V81 tmp67        [V81    ] (  0,  0   )     ref  -\u003E  zero-ref   \n ;* V82 tmp68        [V82    ] (  0,  0   )     ref  -\u003E  zero-ref    single-def\n ;  V83 tmp69        [V83,T48] (  3,  0   )     ref  -\u003E  rbx         class-hnd exact single-def \u0022NewObj constructor temp\u0022 \u003CSystem.ArgumentException\u003E\n ;* V84 tmp70        [V84    ] (  0,  0   )   ubyte  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V85 tmp71        [V85    ] (  0,  0   )     ref  -\u003E  zero-ref   \n ;* V86 tmp72        [V86    ] (  0,  0   )     ref  -\u003E  zero-ref    single-def\n ;  V87 tmp73        [V87,T49] (  3,  0   )     ref  -\u003E  rbx         class-hnd exact single-def \u0022NewObj constructor temp\u0022 \u003CSystem.ArgumentException\u003E\n ;* V88 tmp74        [V88    ] (  0,  0   )   ubyte  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V89 tmp75        [V89    ] (  0,  0   )     ref  -\u003E  zero-ref   \n ;* V90 tmp76        [V90    ] (  0,  0   )     ref  -\u003E  zero-ref    single-def\n ;  V91 tmp77        [V91,T50] (  3,  0   )     ref  -\u003E  rbx         class-hnd exact single-def \u0022NewObj constructor temp\u0022 \u003CSystem.ArgumentException\u003E\n ;* V92 tmp78        [V92    ] (  0,  0   )   ubyte  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V93 tmp79        [V93    ] (  0,  0   )     ref  -\u003E  zero-ref   \n ;* V94 tmp80        [V94    ] (  0,  0   )     ref  -\u003E  zero-ref    single-def\n ;  V95 tmp81        [V95,T51] (  3,  0   )     ref  -\u003E  rbx         class-hnd exact single-def \u0022NewObj constructor temp\u0022 \u003CSystem.ArgumentException\u003E\n ;  V96 tmp82        [V96,T11] (  3,  4   )     int  -\u003E  rax         \u0022Single return block return value\u0022\n ;  V97 FramesRoot   [V97,T03] ( 10,  6   )    long  -\u003E  [rbp-0x70]  spill-single-def \u0022Pinvoke FrameListRoot\u0022\n ;  V98 PInvokeFrame [V98    ] ( 12,  8   )  struct (56) [rbp-0xA8]  do-not-enreg[XS] addr-exposed \u0022Pinvoke FrameVar\u0022 \u003CUNNAMED\u003E\n ;  V99 tmp85        [V99,T16] (  5,  2.50)    long  -\u003E  [rbp-0xB0]  spill-single-def \u0022field V07.customAlloc (fldOffset=0x0)\u0022 P-INDEP\n ;  V100 tmp86       [V100,T17] (  5,  2.50)    long  -\u003E  [rbp-0xB8]  spill-single-def \u0022field V07.customFree (fldOffset=0x8)\u0022 P-INDEP\n ;  V101 tmp87       [V101,T18] (  5,  2.50)    long  -\u003E  [rbp-0xC0]  spill-single-def \u0022field V07.opaque (fldOffset=0x10)\u0022 P-INDEP\n ;* V102 tmp88       [V102    ] (  0,  0   )    long  -\u003E  zero-ref    single-def \u0022field V33._handle (fldOffset=0x0)\u0022 P-INDEP\n ;* V103 tmp89       [V103    ] (  0,  0   )    long  -\u003E  zero-ref    single-def \u0022field V34._handle (fldOffset=0x0)\u0022 P-INDEP\n ;* V104 tmp90       [V104    ] (  0,  0   )    long  -\u003E  zero-ref    single-def \u0022field V41._handle (fldOffset=0x0)\u0022 P-INDEP\n ;* V105 tmp91       [V105    ] (  0,  0   )    long  -\u003E  zero-ref    single-def \u0022field V42._handle (fldOffset=0x0)\u0022 P-INDEP\n ;* V106 tmp92       [V106    ] (  0,  0   )   byref  -\u003E  zero-ref    \u0022field V49._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V107 tmp93       [V107    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V49._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V108 tmp94       [V108    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V50._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V109 tmp95       [V109    ] (  0,  0   )     int  -\u003E  zero-ref    single-def \u0022field V50._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V110 tmp96       [V110    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V51._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V111 tmp97       [V111    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V51._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V112 tmp98       [V112    ] (  0,  0   )   byref  -\u003E  zero-ref    \u0022field V52._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V113 tmp99       [V113    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V52._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V114 tmp100      [V114    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V53._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V115 tmp101      [V115    ] (  0,  0   )     int  -\u003E  zero-ref    single-def \u0022field V53._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V116 tmp102      [V116    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V54._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V117 tmp103      [V117    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V54._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V118 tmp104      [V118    ] (  0,  0   )   byref  -\u003E  zero-ref    \u0022field V55._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V119 tmp105      [V119    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V55._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V120 tmp106      [V120    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V56._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V121 tmp107      [V121    ] (  0,  0   )     int  -\u003E  zero-ref    single-def \u0022field V56._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V122 tmp108      [V122    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V57._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V123 tmp109      [V123    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V57._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V124 tmp110      [V124,T45] (  0,  0   )     int  -\u003E  zero-ref    single-def \u0022V29.[000..004)\u0022\n ;  V125 tmp111      [V125,T44] (  2,  1   )     int  -\u003E  rdi         single-def \u0022V29.[012..016)\u0022\n ;* V126 tmp112      [V126    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022V48.[000..008)\u0022\n ;* V127 tmp113      [V127    ] (  0,  0   )    long  -\u003E  zero-ref    single-def \u0022V48.[008..016)\u0022\n ;* V128 tmp114      [V128    ] (  0,  0   )    long  -\u003E  zero-ref    single-def \u0022V48.[016..024)\u0022\n ;* V129 tmp115      [V129    ] (  0,  0   )     int  -\u003E  zero-ref    single-def \u0022V48.[024..028)\u0022\n ;* V130 tmp116      [V130    ] (  0,  0   )     int  -\u003E  zero-ref    single-def \u0022V48.[028..032)\u0022\n ;* V131 tmp117      [V131    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022V48.[032..036)\u0022\n ;* V132 tmp118      [V132    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Cast away GC\u0022\n ;* V133 tmp119      [V133    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Cast away GC\u0022\n ;* V134 tmp120      [V134    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Cast away GC\u0022\n ;  V135 cse0        [V135,T32] (  3,  1.50)    long  -\u003E  rdx         \u0022CSE #16: moderate\u0022\n ;  V136 cse1        [V136,T23] (  4,  2   )    long  -\u003E  rcx         \u0022CSE #14: moderate\u0022\n ;  V137 cse2        [V137,T33] (  3,  1.50)     int  -\u003E  rsi         \u0022CSE #15: moderate\u0022\n ;  V138 cse3        [V138,T34] (  3,  1.50)    long  -\u003E  rsi         \u0022CSE #05: moderate\u0022\n ;  V139 cse4        [V139,T35] (  3,  1.50)    long  -\u003E  rsi         \u0022CSE #07: moderate\u0022\n ;  V140 cse5        [V140,T36] (  3,  1.50)    long  -\u003E  rdi         \u0022CSE #08: moderate\u0022\n ;  V141 cse6        [V141,T37] (  3,  1.50)    long  -\u003E  [rbp-0xC8]  spill-single-def \u0022CSE #09: moderate\u0022\n ;  V142 cse7        [V142,T38] (  3,  1.50)    long  -\u003E  rcx         \u0022CSE #11: moderate\u0022\n ;  V143 cse8        [V143,T39] (  3,  1.50)     int  -\u003E  rcx         \u0022CSE #12: moderate\u0022\n ;  V144 cse9        [V144,T08] (  8,  4   )    long  -\u003E  r14         \u0022CSE #06: moderate\u0022\n ;  V145 cse10       [V145,T19] (  5,  2.50)    long  -\u003E  r12         \u0022CSE #13: moderate\u0022\n ;\n ; Lcl frame size = 168\n \n G_M13510_IG01:\n        push     rbp\n        push     r15\n        push     r14\n        push     r13\n        push     r12\n        push     rbx\n        sub      rsp, 168\n        lea      rbp, [rsp\u002B0xD0]\n        mov      dword ptr [rbp-0x2C], r9d\n        mov      rbx, rdi\n        mov      r14, rsi\n        mov      r13, rdx\n        mov      r15, rcx\n        mov      r12, r8\n \t\t\t\t\t\t;; size=44 bbWeight=1 PerfScore 9.00\n G_M13510_IG02:\n        lea      rdi, [rbp-0xA8]\n        call     CORINFO_HELP_INIT_PINVOKE_FRAME\n        mov      qword ptr [rbp-0x70], rax\n        mov      rdi, rsp\n        mov      qword ptr [rbp-0x90], rdi\n        mov      rdi, rbp\n        mov      qword ptr [rbp-0x80], rdi\n        cmp      dword ptr [rbp\u002B0x70], 1\n        je       G_M13510_IG36\n \t\t\t\t\t\t;; size=43 bbWeight=1 PerfScore 7.00\n G_M13510_IG03:\n        vxorps   xmm0, xmm0, xmm0\n        vmovdqu  xmmword ptr [rbp\u002B0x70], xmm0\n        vmovdqu  xmmword ptr [rbp\u002B0x78], xmm0\n \t\t\t\t\t\t;; size=14 bbWeight=0.50 PerfScore 1.17\n G_M13510_IG04:\n        cmp      byte  ptr [rbx], bl\n        xor      edi, edi\n        mov      dword ptr [rbx\u002B0x0988], edi\n        cmp      dword ptr [rbp\u002B0x34], 0\n        je       SHORT G_M13510_IG06\n \t\t\t\t\t\t;; size=16 bbWeight=1 PerfScore 5.25\n G_M13510_IG05:\n        lea      rdi, [rbx\u002B0x0930]\n        xor      esi, esi\n        mov      rcx, 0xD1FFAB1E      ; code for SharpCompress.Compressors.ZStandard.Unsafe.Methods:ZSTD_XXH64_reset(ptr,ulong):int\n        call     [rcx]SharpCompress.Compressors.ZStandard.Unsafe.Methods:ZSTD_XXH64_reset(ptr,ulong):int\n \t\t\t\t\t\t;; size=21 bbWeight=0.50 PerfScore 2.00\n G_M13510_IG06:\n        cmp      dword ptr [rbp\u002B0x70], 1\n        jne      G_M13510_IG33\n \t\t\t\t\t\t;; size=10 bbWeight=1 PerfScore 2.00\n G_M13510_IG07:\n        mov      rcx, qword ptr [rbp\u002B0xB8]\n        mov      qword ptr [rbp-0xB0], rcx\n        mov      rsi, qword ptr [rbp\u002B0xC0]\n        mov      qword ptr [rbp-0xB8], rsi\n        mov      r8, qword ptr [rbp\u002B0xC8]\n        mov      qword ptr [rbp-0xC0], r8\n        mov      r9d, dword ptr [rbp\u002B0x74]\n        mov      dword ptr [rbp-0x30], r9d\n        mov      edx, 1\n        shlx     r10, rdx, r9\n        shl      r10, 3\n        mov      qword ptr [rbp-0x38], r10\n        mov      r11d, dword ptr [rbp\u002B0x74]\n        sub      r11d, dword ptr [rbp\u002B0x78]\n        mov      dword ptr [rbp-0x3C], r11d\n        mov      edi, dword ptr [rbx\u002B0x74]\n        sub      edi, dword ptr [rbx\u002B0x78]\n        mov      dword ptr [rbp-0x40], edi\n        shlx     rdx, rdx, r11\n        mov      qword ptr [rbp-0x48], rdx\n        mov      edi, dword ptr [rbp\u002B0x7C]\n        mov      rax, r13\n        xor      edx, edx\n        div      rdx:rax, rdi\n        mov      qword ptr [rbp-0x68], rax\n        mov      rdi, qword ptr [r14]\n        test     rdi, rdi\n        je       G_M13510_IG39\n        and      rdi, -2\n        mov      rdi, gword ptr [rdi]\n        mov      rdx, 0xD1FFAB1E      ; code for System.Threading.Monitor:Enter(System.Object)\n        call     [rdx]System.Threading.Monitor:Enter(System.Object)\n        mov      rdi, qword ptr [rbp-0x68]\n        lea      rdi, [rdi\u002B2*rdi]\n        shl      rdi, 2\n        mov      qword ptr [r14\u002B0x08], rdi\n        mov      rdi, qword ptr [r14]\n        test     rdi, rdi\n        je       G_M13510_IG39\n        and      rdi, -2\n        mov      rdi, gword ptr [rdi]\n        mov      rax, 0xD1FFAB1E      ; code for System.Threading.Monitor:Exit(System.Object)\n        call     [rax]System.Threading.Monitor:Exit(System.Object)\n        lea      r14, [rbx\u002B0xF0]\n        mov      rdi, r14\n        vmovups  ymm0, ymmword ptr [reloc @RWD00]\n        vmovups  ymmword ptr [rdi], ymm0\n        xor      eax, eax\n        mov      dword ptr [rdi\u002B0x20], eax\n        mov      rsi, qword ptr [rbx\u002B0x118]\n        test     rsi, rsi\n        je       SHORT G_M13510_IG08\n        mov      edi, dword ptr [rbp-0x30]\n        cmp      dword ptr [rbx\u002B0x74], edi\n        jae      G_M13510_IG17\n \t\t\t\t\t\t;; size=242 bbWeight=0.50 PerfScore 58.00\n G_M13510_IG08:\n        test     rsi, rsi\n        je       G_M13510_IG14\n        cmp      qword ptr [rbp-0xB8], 0\n        jne      SHORT G_M13510_IG13\n        mov      rdi, rsi\n        mov      rcx, 0xD1FFAB1E      ; function address\n        mov      qword ptr [rbp-0x98], rcx\n        lea      rcx, G_M13510_IG11\n        mov      qword ptr [rbp-0x88], rcx\n        lea      rcx, [rbp-0xA8]\n        mov      rdx, qword ptr [rbp-0x70]\n        mov      qword ptr [rdx\u002B0x08], rcx\n        mov      byte  ptr [rdx\u002B0x04], 0\n \t\t\t\t\t\t;; size=72 bbWeight=0.50 PerfScore 5.12\n G_M13510_IG09:\n        mov      rcx, 0xD1FFAB1E      ; function address\n \t\t\t\t\t\t;; size=10 bbWeight=0.50 PerfScore 0.12\n G_M13510_IG10:\n        vzeroupper \n        call     rcx ; Interop\u002BSys:Free(ptr)\n \t\t\t\t\t\t;; size=5 bbWeight=0.50 PerfScore 2.00\n G_M13510_IG11:\n        mov      rax, qword ptr [rbp-0x70]\n        mov      byte  ptr [rax\u002B0x04], 1\n        mov      rcx, 0xD1FFAB1E      ; function address\n        cmp      dword ptr [rcx], 0\n        je       SHORT G_M13510_IG12\n        mov      rdi, 0xD1FFAB1E\n        call     [rdi]CORINFO_HELP_STOP_FOR_GC\n \t\t\t\t\t\t;; size=35 bbWeight=0.50 PerfScore 4.25\n G_M13510_IG12:\n        mov      rdi, qword ptr [rbp-0xA0]\n        mov      qword ptr [rax\u002B0x08], rdi\n        jmp      SHORT G_M13510_IG14\n \t\t\t\t\t\t;; size=13 bbWeight=0.50 PerfScore 2.00\n G_M13510_IG13:\n        mov      rdi, qword ptr [rbp-0xC0]\n        mov      rax, qword ptr [rbp-0xB8]\n        call     rax\n \t\t\t\t\t\t;; size=16 bbWeight=0.50 PerfScore 2.50\n G_M13510_IG14:\n        mov      qword ptr [rbp-0x58], r14\n        cmp      qword ptr [rbp-0xB0], 0\n        jne      SHORT G_M13510_IG15\n        mov      rdi, qword ptr [rbp-0x38]\n        mov      rdx, 0xD1FFAB1E      ; code for System.Runtime.InteropServices.NativeMemory:Alloc(nuint):ptr\n        call     [rdx]System.Runtime.InteropServices.NativeMemory:Alloc(nuint):ptr\n        jmp      SHORT G_M13510_IG16\n \t\t\t\t\t\t;; size=32 bbWeight=0.50 PerfScore 4.62\n G_M13510_IG15:\n        mov      rdi, qword ptr [rbp-0xC0]\n        mov      rsi, qword ptr [rbp-0x38]\n        mov      rcx, qword ptr [rbp-0xB0]\n        call     rcx\n \t\t\t\t\t\t;; size=20 bbWeight=0.50 PerfScore 3.00\n G_M13510_IG16:\n        mov      rdi, qword ptr [rbp-0x58]\n        mov      qword ptr [rdi\u002B0x28], rax\n \t\t\t\t\t\t;; size=8 bbWeight=0.50 PerfScore 1.00\n G_M13510_IG17:\n        mov      rsi, qword ptr [rbx\u002B0x128]\n        test     rsi, rsi\n        je       SHORT G_M13510_IG18\n        mov      edi, dword ptr [rbp-0x3C]\n        cmp      dword ptr [rbp-0x40], edi\n        jae      G_M13510_IG27\n \t\t\t\t\t\t;; size=24 bbWeight=0.50 PerfScore 3.12\n G_M13510_IG18:\n        test     rsi, rsi\n        je       G_M13510_IG24\n        mov      rax, qword ptr [rbp-0xB8]\n        test     rax, rax\n        jne      SHORT G_M13510_IG23\n        mov      rdi, rsi\n        mov      rax, 0xD1FFAB1E      ; function address\n        mov      qword ptr [rbp-0x98], rax\n        lea      rax, G_M13510_IG21\n        mov      qword ptr [rbp-0x88], rax\n        lea      rax, [rbp-0xA8]\n        mov      rcx, qword ptr [rbp-0x70]\n        mov      qword ptr [rcx\u002B0x08], rax\n        mov      byte  ptr [rcx\u002B0x04], 0\n \t\t\t\t\t\t;; size=74 bbWeight=0.50 PerfScore 5.25\n G_M13510_IG19:\n        mov      rax, 0xD1FFAB1E      ; function address\n \t\t\t\t\t\t;; size=10 bbWeight=0.50 PerfScore 0.12\n G_M13510_IG20:\n        vzeroupper \n        call     rax ; Interop\u002BSys:Free(ptr)\n \t\t\t\t\t\t;; size=5 bbWeight=0.50 PerfScore 2.00\n G_M13510_IG21:\n        mov      rax, qword ptr [rbp-0x70]\n        mov      byte  ptr [rax\u002B0x04], 1\n        mov      rcx, 0xD1FFAB1E      ; function address\n        cmp      dword ptr [rcx], 0\n        je       SHORT G_M13510_IG22\n        mov      rdi, 0xD1FFAB1E\n        call     [rdi]CORINFO_HELP_STOP_FOR_GC\n \t\t\t\t\t\t;; size=35 bbWeight=0.50 PerfScore 4.25\n G_M13510_IG22:\n        mov      rdi, qword ptr [rbp-0xA0]\n        mov      qword ptr [rax\u002B0x08], rdi\n        jmp      SHORT G_M13510_IG24\n \t\t\t\t\t\t;; size=13 bbWeight=0.50 PerfScore 2.00\n G_M13510_IG23:\n        mov      rdi, qword ptr [rbp-0xC0]\n        call     rax\n \t\t\t\t\t\t;; size=9 bbWeight=0.50 PerfScore 2.00\n G_M13510_IG24:\n        mov      qword ptr [rbp-0x60], r14\n        mov      rcx, qword ptr [rbp-0xB0]\n        test     rcx, rcx\n        jne      SHORT G_M13510_IG25\n        mov      rdi, qword ptr [rbp-0x48]\n        mov      rcx, 0xD1FFAB1E      ; code for System.Runtime.InteropServices.NativeMemory:Alloc(nuint):ptr\n        call     [rcx]System.Runtime.InteropServices.NativeMemory:Alloc(nuint):ptr\n        jmp      SHORT G_M13510_IG26\n \t\t\t\t\t\t;; size=34 bbWeight=0.50 PerfScore 4.75\n G_M13510_IG25:\n        mov      rdi, qword ptr [rbp-0xC0]\n        mov      rsi, qword ptr [rbp-0x48]\n        call     rcx\n \t\t\t\t\t\t;; size=13 bbWeight=0.50 PerfScore 2.50\n G_M13510_IG26:\n        mov      rdi, qword ptr [rbp-0x60]\n        mov      qword ptr [rdi\u002B0x38], rax\n \t\t\t\t\t\t;; size=8 bbWeight=0.50 PerfScore 1.00\n G_M13510_IG27:\n        mov      rdi, qword ptr [rbx\u002B0x118]\n        test     rdi, rdi\n        je       G_M13510_IG34\n        mov      rax, qword ptr [rbx\u002B0x128]\n        mov      qword ptr [rbp-0xC8], rax\n        test     rax, rax\n        je       G_M13510_IG34\n        mov      esi, dword ptr [rbp-0x38]\n        mov      rcx, 0xD1FFAB1E      ; code for CORINFO_HELP_MEMZERO\n        call     [rcx]CORINFO_HELP_MEMZERO\n        mov      rdi, qword ptr [rbp-0xC8]\n        mov      esi, dword ptr [rbp-0x48]\n        mov      rax, 0xD1FFAB1E      ; code for CORINFO_HELP_MEMZERO\n        call     [rax]CORINFO_HELP_MEMZERO\n        xor      edi, edi\n        mov      dword ptr [rbx\u002B0x120], edi\n        test     r12, r12\n        je       G_M13510_IG32\n        cmp      dword ptr [rbp-0x2C], 1\n        jne      G_M13510_IG32\n        add      r12, r15\n        mov      rax, r12\n        mov      qword ptr [rbp-0x50], rax\n        mov      rdi, r14\n        mov      rcx, qword ptr [rdi\u002B0x08]\n        test     rcx, rcx\n        je       G_M13510_IG40\n        cmp      qword ptr [rdi\u002B0x10], 0\n        je       G_M13510_IG41\n        cmp      r15, qword ptr [rdi]\n        je       SHORT G_M13510_IG28\n        mov      rsi, qword ptr [rdi]\n        sub      rsi, rcx\n        mov      ecx, dword ptr [rdi\u002B0x18]\n        mov      dword ptr [rdi\u002B0x1C], ecx\n        mov      ecx, esi\n        cmp      rsi, rcx\n        jne      G_M13510_IG42\n        mov      dword ptr [rdi\u002B0x18], esi\n        mov      rcx, qword ptr [rdi\u002B0x08]\n        mov      qword ptr [rdi\u002B0x10], rcx\n        mov      rcx, r15\n        sub      rcx, rsi\n        mov      qword ptr [rdi\u002B0x08], rcx\n        mov      ecx, dword ptr [rdi\u002B0x18]\n        mov      esi, ecx\n        sub      esi, dword ptr [rdi\u002B0x1C]\n        cmp      esi, 8\n        jae      SHORT G_M13510_IG28\n        mov      dword ptr [rdi\u002B0x1C], ecx\n \t\t\t\t\t\t;; size=205 bbWeight=0.50 PerfScore 25.62\n G_M13510_IG28:\n        mov      qword ptr [rdi], r12\n        mov      rcx, qword ptr [rdi\u002B0x10]\n        mov      esi, dword ptr [rdi\u002B0x1C]\n        add      rsi, rcx\n        cmp      rsi, r12\n        jae      SHORT G_M13510_IG29\n        mov      esi, dword ptr [rdi\u002B0x18]\n        mov      edx, esi\n        lea      r8, [rcx\u002Brdx]\n        cmp      r8, r15\n        jbe      SHORT G_M13510_IG29\n        sub      r12, rcx\n        cmp      r12, rdx\n        cmovbe   esi, r12d\n        mov      ecx, 0xD1FFAB1E\n        cmp      r12, rcx\n        jae      G_M13510_IG43\n        mov      dword ptr [rdi\u002B0x1C], esi\n \t\t\t\t\t\t;; size=59 bbWeight=0.50 PerfScore 7.00\n G_M13510_IG29:\n        mov      rdi, r14\n        lea      rcx, [rbp\u002B0x70]\n        mov      rsi, r15\n        mov      rdx, rax\n        mov      r8, 0xD1FFAB1E      ; code for SharpCompress.Compressors.ZStandard.Unsafe.Methods:ZSTD_ldm_fillHashTable(ptr,ptr,ptr,ptr)\n        call     [r8]SharpCompress.Compressors.ZStandard.Unsafe.Methods:ZSTD_ldm_fillHashTable(ptr,ptr,ptr,ptr)\n        mov      rdi, r14\n        cmp      dword ptr [rbp\u002B0x40], 0\n        je       SHORT G_M13510_IG30\n        xor      eax, eax\n        jmp      SHORT G_M13510_IG31\n \t\t\t\t\t\t;; size=39 bbWeight=0.50 PerfScore 4.50\n G_M13510_IG30:\n        mov      r15, qword ptr [rbp-0x50]\n        mov      eax, r15d\n        sub      eax, dword ptr [rbx\u002B0xF8]\n \t\t\t\t\t\t;; size=13 bbWeight=0.50 PerfScore 1.62\n G_M13510_IG31:\n        mov      dword ptr [rdi\u002B0x30], eax\n \t\t\t\t\t\t;; size=3 bbWeight=0.50 PerfScore 0.50\n G_M13510_IG32:\n        vmovdqu  ymm0, ymmword ptr [r14]\n        vmovdqu32 ymmword ptr [rbx\u002B0x09A0], ymm0\n        mov      rdi, qword ptr [r14\u002B0x20]\n        mov      qword ptr [rbx\u002B0x09C0], rdi\n \t\t\t\t\t\t;; size=23 bbWeight=0.50 PerfScore 3.50\n G_M13510_IG33:\n        vmovdqu32 zmm0, zmmword ptr [rbp\u002B0x10]\n        vmovdqu32 zmmword ptr [rbx\u002B0x10], zmm0\n        vmovdqu32 zmm0, zmmword ptr [rbp\u002B0x50]\n        vmovdqu32 zmmword ptr [rbx\u002B0x50], zmm0\n        vmovdqu32 zmm0, zmmword ptr [rbp\u002B0x90]\n        vmovdqu32 zmmword ptr [rbx\u002B0x90], zmm0\n        vmovdqu  ymm0, ymmword ptr [rbp\u002B0xD0]\n        vmovdqu  ymmword ptr [rbx\u002B0xD0], ymm0\n        mov      edi, r13d\n        mov      qword ptr [rbx\u002B0x60], rdi\n        xor      eax, eax\n        jmp      SHORT G_M13510_IG35\n \t\t\t\t\t\t;; size=87 bbWeight=0.50 PerfScore 10.75\n G_M13510_IG34:\n        mov      eax, 1\n \t\t\t\t\t\t;; size=5 bbWeight=0.50 PerfScore 0.12\n G_M13510_IG35:\n        vzeroupper \n        add      rsp, 168\n        pop      rbx\n        pop      r12\n        pop      r13\n        pop      r14\n        pop      r15\n        pop      rbp\n        ret      \n \t\t\t\t\t\t;; size=21 bbWeight=1 PerfScore 5.25\n G_M13510_IG36:\n        lea      rdi, [rbp\u002B0x70]\n        lea      rsi, [rbp\u002B0x14]\n        mov      rcx, 0xD1FFAB1E      ; code for SharpCompress.Compressors.ZStandard.Unsafe.Methods:ZSTD_ldm_adjustParameters(ptr,ptr)\n        call     [rcx]SharpCompress.Compressors.ZStandard.Unsafe.Methods:ZSTD_ldm_adjustParameters(ptr,ptr)\n        mov      edi, dword ptr [rbp\u002B0x74]\n        cmp      edi, dword ptr [rbp\u002B0x78]\n        jb       SHORT G_M13510_IG37\n        cmp      dword ptr [rbp\u002B0x80], 32\n        jb       G_M13510_IG04\n        jmp      SHORT G_M13510_IG38\n \t\t\t\t\t\t;; size=43 bbWeight=0.50 PerfScore 5.62\n G_M13510_IG37:\n        mov      rdi, 0xD1FFAB1E      ; System.ArgumentException\n        call     CORINFO_HELP_NEWSFAST\n        mov      rbx, rax\n        mov      rdi, rbx\n        mov      rsi, 0xD1FFAB1E      ; \u0027assert failed\u0027\n        mov      rax, 0xD1FFAB1E      ; code for System.ArgumentException:.ctor(System.String):this\n        call     [rax]System.ArgumentException:.ctor(System.String):this\n        mov      rdi, rbx\n        call     CORINFO_HELP_THROW\n        int3     \n \t\t\t\t\t\t;; size=52 bbWeight=0 PerfScore 0.00\n G_M13510_IG38:\n        mov      rdi, 0xD1FFAB1E      ; System.ArgumentException\n        call     CORINFO_HELP_NEWSFAST\n        mov      rbx, rax\n        mov      rdi, rbx\n        mov      rsi, 0xD1FFAB1E      ; \u0027assert failed\u0027\n        mov      rax, 0xD1FFAB1E      ; code for System.ArgumentException:.ctor(System.String):this\n        call     [rax]System.ArgumentException:.ctor(System.String):this\n        mov      rdi, rbx\n        call     CORINFO_HELP_THROW\n        int3     \n \t\t\t\t\t\t;; size=52 bbWeight=0 PerfScore 0.00\n G_M13510_IG39:\n        mov      rax, 0xD1FFAB1E      ; code for System.ThrowHelper:ThrowInvalidOperationException_HandleIsNotInitialized()\n        call     [rax]System.ThrowHelper:ThrowInvalidOperationException_HandleIsNotInitialized()\n        int3     \n \t\t\t\t\t\t;; size=13 bbWeight=0 PerfScore 0.00\n G_M13510_IG40:\n        mov      rdi, 0xD1FFAB1E      ; System.ArgumentException\n        call     CORINFO_HELP_NEWSFAST\n        mov      rbx, rax\n        mov      rdi, rbx\n        mov      rsi, 0xD1FFAB1E      ; \u0027assert failed\u0027\n        mov      rax, 0xD1FFAB1E      ; code for System.ArgumentException:.ctor(System.String):this\n        call     [rax]System.ArgumentException:.ctor(System.String):this\n        mov      rdi, rbx\n        call     CORINFO_HELP_THROW\n        int3     \n \t\t\t\t\t\t;; size=52 bbWeight=0 PerfScore 0.00\n G_M13510_IG41:\n        mov      rdi, 0xD1FFAB1E      ; System.ArgumentException\n        call     CORINFO_HELP_NEWSFAST\n        mov      rbx, rax\n        mov      rdi, rbx\n        mov      rsi, 0xD1FFAB1E      ; \u0027assert failed\u0027\n        mov      rax, 0xD1FFAB1E      ; code for System.ArgumentException:.ctor(System.String):this\n        call     [rax]System.ArgumentException:.ctor(System.String):this\n        mov      rdi, rbx\n        call     CORINFO_HELP_THROW\n        int3     \n \t\t\t\t\t\t;; size=52 bbWeight=0 PerfScore 0.00\n G_M13510_IG42:\n        mov      rdi, 0xD1FFAB1E      ; System.ArgumentException\n        call     CORINFO_HELP_NEWSFAST\n        mov      rbx, rax\n        mov      rdi, rbx\n        mov      rsi, 0xD1FFAB1E      ; \u0027assert failed\u0027\n        mov      rax, 0xD1FFAB1E      ; code for System.ArgumentException:.ctor(System.String):this\n        call     [rax]System.ArgumentException:.ctor(System.String):this\n        mov      rdi, rbx\n        call     CORINFO_HELP_THROW\n        int3     \n \t\t\t\t\t\t;; size=52 bbWeight=0 PerfScore 0.00\n G_M13510_IG43:\n        mov      rdi, 0xD1FFAB1E      ; System.ArgumentException\n        call     CORINFO_HELP_NEWSFAST\n        mov      rbx, rax\n        mov      rdi, rbx\n        mov      rsi, 0xD1FFAB1E      ; \u0027assert failed\u0027\n        mov      rax, 0xD1FFAB1E      ; code for System.ArgumentException:.ctor(System.String):this\n        call     [rax]System.ArgumentException:.ctor(System.String):this\n        mov      rdi, rbx\n        call     CORINFO_HELP_THROW\n        int3     \n \t\t\t\t\t\t;; size=52 bbWeight=0 PerfScore 0.00\n-RWD00  \tdq\t0000700ADE5FBD7Ah, 0000700ADE5FBD78h, 0000700ADE5FBD78h, 0000000200000002h\n\u002BRWD00  \tdq\t000074CC925FBD7Ah, 000074CC925FBD78h, 000074CC925FBD78h, 0000000200000002h\n \n \n ; Total bytes of code 1649, prolog size 25, PerfScore 200.54, instruction count 364, allocated bytes for code 1649 (MethodHash=c7f1cb39) for method SharpCompress.Compressors.ZStandard.Unsafe.Methods:ZSTDMT_serialState_reset(ptr,ptr,SharpCompress.Compressors.ZStandard.Unsafe.ZSTD_CCtx_params_s,nuint,ptr,nuint,int):int (FullOpts)\n ; ============================================================","Truncated":false,"BaseBytes":1649,"DiffBytes":1649},{"Assembly":"Silk.NET.Assimp.dasm","Method":"Silk.NET.Assimp.CustomFileIO:.ctor(Silk.NET.Assimp.OpenFileCustomIOCallback):this (FullOpts)","Category":"same-size","Description":"159 -\u003E 159 bytes (0)","ExtraInfo":null,"Diff":"@@ -1,94 \u002B1,94 @@\n ; Assembly listing for method Silk.NET.Assimp.CustomFileIO:.ctor(Silk.NET.Assimp.OpenFileCustomIOCallback):this (FullOpts)\n ; Emitting BLENDED_CODE for x64 \u002B VEX \u002B EVEX on Unix\n ; FullOpts code\n ; optimized code\n ; rbp based frame\n ; partially interruptible\n ; No PGO data\n ; 0 inlinees with PGO data; 9 single block inlinees; 2 inlinees without PGO data\n ; Final local variable assignments\n ;\n ;  V00 this         [V00,T00] (  7,  6.50)     ref  -\u003E  rbx         this class-hnd single-def \u003CSilk.NET.Assimp.CustomFileIO\u003E\n ;  V01 arg1         [V01,T01] (  3,  3   )     ref  -\u003E  r15         class-hnd single-def \u003CSilk.NET.Assimp.OpenFileCustomIOCallback\u003E\n ;* V02 loc0         [V02    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op \u003CSystem.Runtime.InteropServices.GCHandle\u003E\n ;* V03 loc1         [V03    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op \u003CSilk.NET.Assimp.FileIO\u003E\n ;# V04 OutArgs      [V04    ] (  1,  1   )  struct ( 0) [rsp\u002B0x00]  do-not-enreg[XS] addr-exposed \u0022OutgoingArgSpace\u0022 \u003CEmpty\u003E\n ;  V05 tmp1         [V05,T03] (  3,  0   )     ref  -\u003E  rbx         class-hnd exact single-def \u0022NewObj constructor temp\u0022 \u003CSystem.InvalidOperationException\u003E\n ;* V06 tmp2         [V06    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op \u0022NewObj constructor temp\u0022 \u003CSystem.Runtime.InteropServices.GCHandle\u003E\n ;* V07 tmp3         [V07    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inline stloc first use temp\u0022\n ;  V08 tmp4         [V08,T02] (  5,  4.50)    long  -\u003E  r14         \u0022Inline stloc first use temp\u0022\n ;* V09 tmp5         [V09    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op \u0022NewObj constructor temp\u0022 \u003CSilk.NET.Assimp.PfnFileOpenProc\u003E\n ;* V10 tmp6         [V10    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op \u0022NewObj constructor temp\u0022 \u003CSilk.NET.Assimp.PfnFileCloseProc\u003E\n ;* V11 tmp7         [V11    ] (  0,  0   )  struct ( 8) zero-ref    \u0022Inlining Arg\u0022 \u003CSystem.Runtime.InteropServices.GCHandle\u003E\n ;* V12 tmp8         [V12    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V13 tmp9         [V13    ] (  0,  0   )    long  -\u003E  zero-ref    single-def \u0022field V02._handle (fldOffset=0x0)\u0022 P-INDEP\n ;* V14 tmp10        [V14    ] (  0,  0   )    long  -\u003E  zero-ref    single-def \u0022field V03.OpenProc (fldOffset=0x0)\u0022 P-INDEP\n ;* V15 tmp11        [V15    ] (  0,  0   )    long  -\u003E  zero-ref    single-def \u0022field V03.CloseProc (fldOffset=0x8)\u0022 P-INDEP\n ;* V16 tmp12        [V16    ] (  0,  0   )    long  -\u003E  zero-ref    single-def \u0022field V03.UserData (fldOffset=0x10)\u0022 P-INDEP\n ;* V17 tmp13        [V17    ] (  0,  0   )    long  -\u003E  zero-ref    single-def \u0022field V06._handle (fldOffset=0x0)\u0022 P-INDEP\n ;* V18 tmp14        [V18    ] (  0,  0   )    long  -\u003E  zero-ref    single-def \u0022field V09._handle (fldOffset=0x0)\u0022 P-INDEP\n ;* V19 tmp15        [V19    ] (  0,  0   )    long  -\u003E  zero-ref    single-def \u0022field V10._handle (fldOffset=0x0)\u0022 P-INDEP\n ;* V20 tmp16        [V20    ] (  0,  0   )    long  -\u003E  zero-ref    single-def \u0022field V11._handle (fldOffset=0x0)\u0022 P-INDEP\n ;\n ; Lcl frame size = 8\n \n G_M23716_IG01:\n        push     rbp\n        push     r15\n        push     r14\n        push     rbx\n        push     rax\n        lea      rbp, [rsp\u002B0x20]\n        mov      rbx, rdi\n        mov      r15, rsi\n \t\t\t\t\t\t;; size=18 bbWeight=1 PerfScore 6.00\n G_M23716_IG02:\n        mov      rdi, rbx\n        mov      esi, 2\n        call     System.Runtime.InteropServices.GCHandle:_InternalAlloc(System.Object,int):nint\n        mov      r14, rax\n        test     r14, r14\n        jne      SHORT G_M23716_IG04\n \t\t\t\t\t\t;; size=21 bbWeight=1 PerfScore 3.00\n G_M23716_IG03:\n        mov      rdi, rbx\n        mov      esi, 2\n        mov      rax, 0xD1FFAB1E      ; code for System.Runtime.InteropServices.GCHandle:InternalAllocWithGCTransition(System.Object,int):nint\n        call     [rax]System.Runtime.InteropServices.GCHandle:InternalAllocWithGCTransition(System.Object,int):nint\n        mov      r14, rax\n \t\t\t\t\t\t;; size=23 bbWeight=0.50 PerfScore 2.00\n G_M23716_IG04:\n        test     r14, r14\n        je       SHORT G_M23716_IG06\n        lea      rdi, bword ptr [rbx\u002B0x08]\n        mov      rsi, r15\n        call     CORINFO_HELP_ASSIGN_REF\n        vmovups  xmm0, xmmword ptr [reloc @RWD00]\n        vmovups  xmmword ptr [rbx\u002B0x10], xmm0\n        mov      qword ptr [rbx\u002B0x20], r14\n \t\t\t\t\t\t;; size=34 bbWeight=1 PerfScore 6.00\n G_M23716_IG05:\n        add      rsp, 8\n        pop      rbx\n        pop      r14\n        pop      r15\n        pop      rbp\n        ret      \n \t\t\t\t\t\t;; size=11 bbWeight=1 PerfScore 3.25\n G_M23716_IG06:\n        mov      rdi, 0xD1FFAB1E      ; System.InvalidOperationException\n        call     CORINFO_HELP_NEWSFAST\n        mov      rbx, rax\n        mov      rdi, rbx\n        mov      rsi, 0xD1FFAB1E      ; \u0027Failed to allocate GCHandle for CustomFileIO\u0027\n        mov      rax, 0xD1FFAB1E      ; code for System.InvalidOperationException:.ctor(System.String):this\n        call     [rax]System.InvalidOperationException:.ctor(System.String):this\n        mov      rdi, rbx\n        call     CORINFO_HELP_THROW\n        int3     \n \t\t\t\t\t\t;; size=52 bbWeight=0 PerfScore 0.00\n-RWD00  \tdq\t000078EC325A0618h, 000078EC325A0630h\n\u002BRWD00  \tdq\t000077BAABFA0618h, 000077BAABFA0630h\n \n \n ; Total bytes of code 159, prolog size 12, PerfScore 20.25, instruction count 43, allocated bytes for code 159 (MethodHash=57fda35b) for method Silk.NET.Assimp.CustomFileIO:.ctor(Silk.NET.Assimp.OpenFileCustomIOCallback):this (FullOpts)\n ; ============================================================","Truncated":false,"BaseBytes":159,"DiffBytes":159},{"Assembly":"SkiaSharp.dasm","Method":"SkiaSharp.SKAbstractManagedStream:.cctor() (FullOpts)","Category":"same-size","Description":"307 -\u003E 307 bytes (0)","ExtraInfo":null,"Diff":"@@ -1,115 \u002B1,115 @@\n ; Assembly listing for method SkiaSharp.SKAbstractManagedStream:.cctor() (FullOpts)\n ; Emitting BLENDED_CODE for x64 \u002B VEX \u002B EVEX on Unix\n ; FullOpts code\n ; optimized code\n ; rbp based frame\n ; partially interruptible\n ; No PGO data\n ; Final local variable assignments\n ;\n ;* V00 loc0         [V00    ] (  0,  0   )  struct (104) zero-ref    do-not-enreg[SF] ld-addr-op \u003CSkiaSharp.SKManagedStreamDelegates\u003E\n ;  V01 OutArgs      [V01    ] (  1,  1   )  struct (104) [rsp\u002B0x00]  do-not-enreg[XS] addr-exposed \u0022OutgoingArgSpace\u0022 \u003CUNNAMED\u003E\n ;  V02 FramesRoot   [V02,T00] (  6,  6   )    long  -\u003E  rbx         \u0022Pinvoke FrameListRoot\u0022\n ;  V03 PInvokeFrame [V03    ] (  8,  8   )  struct (56) [rbp-0x60]  do-not-enreg[XS] addr-exposed \u0022Pinvoke FrameVar\u0022 \u003CUNNAMED\u003E\n ;* V04 tmp3         [V04    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022V00.[000..008)\u0022\n ;* V05 tmp4         [V05    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022V00.[008..016)\u0022\n ;* V06 tmp5         [V06    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022V00.[016..024)\u0022\n ;* V07 tmp6         [V07    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022V00.[024..032)\u0022\n ;* V08 tmp7         [V08    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022V00.[032..040)\u0022\n ;* V09 tmp8         [V09    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022V00.[040..048)\u0022\n ;* V10 tmp9         [V10    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022V00.[048..056)\u0022\n ;* V11 tmp10        [V11    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022V00.[056..064)\u0022\n ;* V12 tmp11        [V12    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022V00.[064..072)\u0022\n ;* V13 tmp12        [V13    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022V00.[072..080)\u0022\n ;* V14 tmp13        [V14    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022V00.[080..088)\u0022\n ;* V15 tmp14        [V15    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022V00.[088..096)\u0022\n ;* V16 tmp15        [V16    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022V00.[096..104)\u0022\n ;  V17 cse0         [V17,T01] (  3,  3   )    long  -\u003E  rax         \u0022CSE #01: aggressive\u0022\n ;\n ; Lcl frame size = 168\n \n G_M60289_IG01:\n        push     rbp\n        push     r15\n        push     r14\n        push     r13\n        push     r12\n        push     rbx\n        sub      rsp, 168\n        lea      rbp, [rsp\u002B0xD0]\n \t\t\t\t\t\t;; size=25 bbWeight=1 PerfScore 6.75\n G_M60289_IG02:\n        lea      rdi, [rbp-0x60]\n        call     CORINFO_HELP_INIT_PINVOKE_FRAME\n        mov      rbx, rax\n        mov      rax, rsp\n        mov      qword ptr [rbp-0x48], rax\n        mov      rax, rbp\n        mov      qword ptr [rbp-0x38], rax\n        mov      rax, 0xD1FFAB1E      ; static handle\n        mov      rcx, 0xD1FFAB1E\n        mov      qword ptr [rax], rcx\n        vmovups  zmm0, zmmword ptr [reloc @RWD00]\n        mov      rcx, 0xD1FFAB1E\n        vmovups  zmmword ptr [rcx], zmm0\n        vmovups  ymm0, ymmword ptr [reloc @RWD64]\n        mov      rcx, 0xD1FFAB1E\n        vmovups  ymmword ptr [rcx], ymm0\n        vmovdqu  xmm0, xmmword ptr [rax]\n        vmovdqu  xmmword ptr [rsp], xmm0\n        vmovdqu  xmm0, xmmword ptr [rax\u002B0x10]\n        vmovdqu  xmmword ptr [rsp\u002B0x10], xmm0\n        vmovdqu  xmm0, xmmword ptr [rax\u002B0x20]\n        vmovdqu  xmmword ptr [rsp\u002B0x20], xmm0\n        vmovdqu  xmm0, xmmword ptr [rax\u002B0x30]\n        vmovdqu  xmmword ptr [rsp\u002B0x30], xmm0\n        vmovdqu  xmm0, xmmword ptr [rax\u002B0x40]\n        vmovdqu  xmmword ptr [rsp\u002B0x40], xmm0\n        vmovdqu  xmm0, xmmword ptr [rax\u002B0x50]\n        vmovdqu  xmmword ptr [rsp\u002B0x50], xmm0\n        mov      rcx, qword ptr [rax\u002B0x60]\n        mov      qword ptr [rsp\u002B0x60], rcx\n        mov      rax, 0xD1FFAB1E      ; function address\n        mov      qword ptr [rbp-0x50], rax\n        lea      rax, G_M60289_IG05\n        mov      qword ptr [rbp-0x40], rax\n        lea      rax, [rbp-0x60]\n        mov      qword ptr [rbx\u002B0x08], rax\n        mov      byte  ptr [rbx\u002B0x04], 0\n \t\t\t\t\t\t;; size=207 bbWeight=1 PerfScore 41.00\n G_M60289_IG03:\n        mov      rax, 0xD1FFAB1E      ; code for SkiaSharp.SkiaApi:sk_managedstream_set_procs(SkiaSharp.SKManagedStreamDelegates)\n \t\t\t\t\t\t;; size=10 bbWeight=1 PerfScore 0.25\n G_M60289_IG04:\n        vzeroupper \n        call     [rax]SkiaSharp.SkiaApi:sk_managedstream_set_procs(SkiaSharp.SKManagedStreamDelegates)\n \t\t\t\t\t\t;; size=5 bbWeight=1 PerfScore 4.00\n G_M60289_IG05:\n        mov      byte  ptr [rbx\u002B0x04], 1\n        mov      rcx, 0xD1FFAB1E      ; function address\n        cmp      dword ptr [rcx], 0\n        je       SHORT G_M60289_IG06\n        mov      rdi, 0xD1FFAB1E\n        call     [rdi]CORINFO_HELP_STOP_FOR_GC\n \t\t\t\t\t\t;; size=31 bbWeight=1 PerfScore 7.50\n G_M60289_IG06:\n        mov      rax, qword ptr [rbp-0x58]\n        mov      qword ptr [rbx\u002B0x08], rax\n \t\t\t\t\t\t;; size=8 bbWeight=1 PerfScore 2.00\n G_M60289_IG07:\n        vzeroupper \n        add      rsp, 168\n        pop      rbx\n        pop      r12\n        pop      r13\n        pop      r14\n        pop      r15\n        pop      rbp\n        ret      \n \t\t\t\t\t\t;; size=21 bbWeight=1 PerfScore 5.25\n-RWD00  \tdq\t000075BA43893D20h, 000075BA43893CF0h, 000075BA43893CD8h, 000075BA43893CC0h, 000075BA43893D50h, 000075BA43893CA8h, 000075BA43893D68h, 000075BA43893D08h\n-RWD64  \tdq\t000075BA43893C90h, 000075BA43893C60h, 000075BA43893C78h, 000075BA43893C48h\n\u002BRWD00  \tdq\t0000755094693D20h, 0000755094693CF0h, 0000755094693CD8h, 0000755094693CC0h, 0000755094693D50h, 0000755094693CA8h, 0000755094693D68h, 0000755094693D08h\n\u002BRWD64  \tdq\t0000755094693C90h, 0000755094693C60h, 0000755094693C78h, 0000755094693C48h\n \n \n ; Total bytes of code 307, prolog size 25, PerfScore 66.75, instruction count 65, allocated bytes for code 307 (MethodHash=5344147e) for method SkiaSharp.SKAbstractManagedStream:.cctor() (FullOpts)\n ; ============================================================","Truncated":false,"BaseBytes":307,"DiffBytes":307},{"Assembly":"System.Private.CoreLib.dasm","Method":"System.Text.Unicode.Utf16Utility:GetPointerToFirstInvalidChar(ptr,int,byref,byref):ptr (FullOpts)","Category":"improvement","Description":"373 -\u003E 366 bytes (-7)","ExtraInfo":null,"Diff":"@@ -1,190 \u002B1,189 @@\n ; Assembly listing for method System.Text.Unicode.Utf16Utility:GetPointerToFirstInvalidChar(ptr,int,byref,byref):ptr (FullOpts)\n ; Emitting BLENDED_CODE for x64 \u002B VEX \u002B EVEX on Unix\n ; FullOpts code\n ; optimized code\n ; rbp based frame\n ; fully interruptible\n ; No PGO data\n ; 0 inlinees with PGO data; 3 single block inlinees; 5 inlinees without PGO data\n ; Final local variable assignments\n ;\n ;  V00 arg0         [V00,T00] ( 22, 51.25)    long  -\u003E  rbx        \n ;  V01 arg1         [V01,T05] (  8,  7   )     int  -\u003E  r15        \n ;  V02 arg2         [V02,T11] (  4,  3   )   byref  -\u003E  r14         single-def\n ;  V03 arg3         [V03,T12] (  4,  3   )   byref  -\u003E  r13         single-def\n ;  V04 loc0         [V04,T14] (  3,  3   )     int  -\u003E  rax        \n ;  V05 loc1         [V05,T01] ( 12, 25   )    long  -\u003E  rax        \n ;  V06 loc2         [V06,T06] (  6,  9   )     int  -\u003E  rcx        \n ;  V07 loc3         [V07,T09] (  5,  7.75)    long  -\u003E  rdx        \n ;  V08 loc4         [V08,T16] (  2,  4.50)  simd16  -\u003E  mm0         \u003CSystem.Runtime.Intrinsics.Vector128\u00601[ushort]\u003E\n ;* V09 loc5         [V09,T20] (  0,  0   )  simd16  -\u003E  zero-ref    \u003CSystem.Runtime.Intrinsics.Vector128\u00601[ushort]\u003E\n ;  V10 loc6         [V10,T17] (  2,  4.50)  simd16  -\u003E  mm1         \u003CSystem.Runtime.Intrinsics.Vector128\u00601[ushort]\u003E\n ;  V11 loc7         [V11,T18] (  2,  4.50)  simd16  -\u003E  mm2         \u003CSystem.Runtime.Intrinsics.Vector128\u00601[ushort]\u003E\n ;  V12 loc8         [V12,T13] (  2,  4.50)    long  -\u003E  rdi        \n ;  V13 loc9         [V13,T15] (  7, 26   )  simd16  -\u003E  mm4         \u003CSystem.Runtime.Intrinsics.Vector128\u00601[ushort]\u003E\n ;  V14 loc10        [V14,T02] (  4, 12   )     int  -\u003E  rsi        \n ;  V15 loc11        [V15,T04] (  3, 10   )    long  -\u003E   r8        \n ;* V16 loc12        [V16    ] (  0,  0   )     ref  -\u003E  zero-ref    class-hnd \u003CSystem.Object\u003E\n ;* V17 loc13        [V17    ] (  0,  0   )     ref  -\u003E  zero-ref    class-hnd \u003CSystem.Object\u003E\n ;* V18 loc14        [V18    ] (  0,  0   )  simd16  -\u003E  zero-ref    \u003CSystem.Runtime.Intrinsics.Vector128\u00601[ushort]\u003E\n ;* V19 loc15        [V19    ] (  0,  0   )  simd16  -\u003E  zero-ref    \u003CSystem.Runtime.Intrinsics.Vector128\u00601[ushort]\u003E\n ;* V20 loc16        [V20    ] (  0,  0   )  simd16  -\u003E  zero-ref    \u003CSystem.Runtime.Intrinsics.Vector128\u00601[ushort]\u003E\n ;  V21 loc17        [V21,T07] (  4,  8   )    long  -\u003E   r9        \n ;  V22 loc18        [V22,T10] (  3,  6   )    long  -\u003E   r8        \n ;  V23 loc19        [V23,T08] (  4,  8   )    long  -\u003E   r8        \n ;  V24 loc20        [V24,T03] (  4, 12   )     int  -\u003E  rdi        \n ;# V25 OutArgs      [V25    ] (  1,  1   )  struct ( 0) [rsp\u002B0x00]  do-not-enreg[XS] addr-exposed \u0022OutgoingArgSpace\u0022 \u003CEmpty\u003E\n ;* V26 tmp1         [V26    ] (  0,  0   )     int  -\u003E  zero-ref   \n ;* V27 tmp2         [V27    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inline return value spill temp\u0022\n ;* V28 tmp3         [V28    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V29 tmp4         [V29    ] (  0,  0   )    mask  -\u003E  zero-ref    \u0022Inlining Arg\u0022 \u003CSystem.Runtime.Intrinsics.Vector128\u00601[ushort]\u003E\n ;* V30 tmp5         [V30    ] (  0,  0   )    mask  -\u003E  zero-ref    \u0022Inlining Arg\u0022 \u003CSystem.Runtime.Intrinsics.Vector128\u00601[ushort]\u003E\n ;  V31 cse0         [V31,T19] (  2,  4.50)  simd16  -\u003E  mm3         hoist \u0022CSE #01: moderate\u0022\n ;\n ; Lcl frame size = 0\n \n G_M64712_IG01:\n        push     rbp\n        push     r15\n        push     r14\n        push     r13\n        push     rbx\n        lea      rbp, [rsp\u002B0x20]\n        mov      rbx, rdi\n        mov      r15d, esi\n        mov      r14, rdx\n        mov      r13, rcx\n \t\t\t\t\t\t;; size=25 bbWeight=1 PerfScore 6.50\n G_M64712_IG02:\n        mov      esi, r15d\n        mov      rdi, rbx\n        mov      rax, 0xD1FFAB1E      ; code for System.Text.Ascii:GetIndexOfFirstNonAsciiChar_Vector(ptr,nuint):nuint\n        call     [rax]System.Text.Ascii:GetIndexOfFirstNonAsciiChar_Vector(ptr,nuint):nuint\n        mov      ecx, eax\n        lea      rbx, [rbx\u002B2*rcx]\n        sub      r15d, eax\n        je       G_M64712_IG13\n \t\t\t\t\t\t;; size=33 bbWeight=1 PerfScore 5.75\n G_M64712_IG03:\n        xor      eax, eax\n        xor      ecx, ecx\n        mov      edx, r15d\n        lea      rdx, [rbx\u002B2*rdx]\n        cmp      r15d, 8\n        jl       G_M64712_IG08\n        vbroadcastss xmm0, dword ptr [reloc @RWD00]\n        vbroadcastss xmm1, dword ptr [reloc @RWD04]\n        vbroadcastss xmm2, dword ptr [reloc @RWD08]\n        lea      rdi, [rdx-0x10]\n        vbroadcastss xmm3, dword ptr [reloc @RWD12]\n        align    [0 bytes for IG04]\n \t\t\t\t\t\t;; size=61 bbWeight=0.50 PerfScore 5.50\n G_M64712_IG04:\n        vmovups  xmm4, xmmword ptr [rbx]\n        vpminuw  xmm5, xmm4, xmm0\n        vpaddusw xmm6, xmm3, xmm4\n        vpor     xmm5, xmm6, xmm5\n        vpmovmskb esi, xmm5\n        popcnt   esi, esi\n        vpsubw   xmm4, xmm4, xmm2\n        vpcmpltuw k1, xmm4, xmm1\n        kmovb    r8d, k1\n        test     r8, r8\n        je       SHORT G_M64712_IG07\n \t\t\t\t\t\t;; size=45 bbWeight=4 PerfScore 55.00\n G_M64712_IG05:\n        vpcmpltuw k1, xmm4, xmmword ptr [reloc @RWD16]\n        kmovb    r9d, k1\n        andn     r8, r9, r8\n        lea      r10, [r9\u002Br9]\n        movzx    r10, r10b\n        movzx    r11, r8b\n        cmp      r10d, r11d\n        jne      SHORT G_M64712_IG08\n        movzx    r9, r9b\n        shr      r9d, 7\n        je       SHORT G_M64712_IG06\n        add      rbx, -2\n        add      esi, -2\n \t\t\t\t\t\t;; size=54 bbWeight=2 PerfScore 24.00\n G_M64712_IG06:\n        popcnt   r8, r8\n-       mov      r8d, r8d\n        sub      ecx, r8d\n        sub      rax, r8\n        sub      rax, r8\n-\t\t\t\t\t\t;; size=17 bbWeight=2 PerfScore 6.00\n\u002B\t\t\t\t\t\t;; size=14 bbWeight=2 PerfScore 5.50\n G_M64712_IG07:\n        mov      esi, esi\n        add      rax, rsi\n        add      rbx, 16\n        cmp      rbx, rdi\n-       jbe      G_M64712_IG04\n-\t\t\t\t\t\t;; size=18 bbWeight=4 PerfScore 8.00\n\u002B       jbe      SHORT G_M64712_IG04\n\u002B\t\t\t\t\t\t;; size=14 bbWeight=4 PerfScore 8.00\n G_M64712_IG08:\n        cmp      rbx, rdx\n        jae      SHORT G_M64712_IG12\n        align    [0 bytes for IG09]\n \t\t\t\t\t\t;; size=5 bbWeight=0.75 PerfScore 0.94\n G_M64712_IG09:\n        movzx    rdi, word  ptr [rbx]\n        cmp      edi, 127\n        jbe      SHORT G_M64712_IG11\n \t\t\t\t\t\t;; size=8 bbWeight=4 PerfScore 13.00\n G_M64712_IG10:\n        lea      esi, [rdi\u002B0x0001F800]\n        shr      esi, 16\n        add      rax, rsi\n        add      edi, -0xD800\n        cmp      edi, 0x7FF\n        ja       SHORT G_M64712_IG11\n        add      rax, -2\n        mov      rdi, rdx\n        sub      rdi, rbx\n        cmp      rdi, 4\n        jb       SHORT G_M64712_IG12\n        mov      edi, dword ptr [rbx]\n        add      edi, 0xD1FFAB1E\n        test     edi, 0xD1FFAB1E\n        jne      SHORT G_M64712_IG12\n        dec      ecx\n        add      rax, 2\n        add      rbx, 2\n \t\t\t\t\t\t;; size=68 bbWeight=2 PerfScore 18.00\n G_M64712_IG11:\n        add      rbx, 2\n        cmp      rbx, rdx\n        jb       SHORT G_M64712_IG09\n \t\t\t\t\t\t;; size=9 bbWeight=4 PerfScore 6.00\n G_M64712_IG12:\n        mov      qword ptr [r14], rax\n        mov      dword ptr [r13], ecx\n        jmp      SHORT G_M64712_IG15\n \t\t\t\t\t\t;; size=9 bbWeight=0.50 PerfScore 2.00\n G_M64712_IG13:\n        xor      eax, eax\n        mov      qword ptr [r14], rax\n \t\t\t\t\t\t;; size=5 bbWeight=0.50 PerfScore 0.62\n G_M64712_IG14:\n        mov      dword ptr [r13], eax\n \t\t\t\t\t\t;; size=4 bbWeight=0.50 PerfScore 0.50\n G_M64712_IG15:\n        mov      rax, rbx\n \t\t\t\t\t\t;; size=3 bbWeight=1 PerfScore 0.25\n G_M64712_IG16:\n        pop      rbx\n        pop      r13\n        pop      r14\n        pop      r15\n        pop      rbp\n        ret      \n \t\t\t\t\t\t;; size=9 bbWeight=1 PerfScore 3.50\n RWD00  \tdd\t00800080h\t\t; 1.17551e-38\n RWD04  \tdd\t08000800h\t\t; 3.8528e-34\n RWD08  \tdd\tD800D800h\t\t; -5.66661e\u002B14\n RWD12  \tdd\t78007800h\t\t; 1.04226e\u002B34\n RWD16  \tdq\t0400040004000400h, 0400040004000400h\n \n \n-; Total bytes of code 373, prolog size 25, PerfScore 155.56, instruction count 104, allocated bytes for code 377 (MethodHash=2be70337) for method System.Text.Unicode.Utf16Utility:GetPointerToFirstInvalidChar(ptr,int,byref,byref):ptr (FullOpts)\n\u002B; Total bytes of code 366, prolog size 25, PerfScore 155.06, instruction count 103, allocated bytes for code 374 (MethodHash=2be70337) for method System.Text.Unicode.Utf16Utility:GetPointerToFirstInvalidChar(ptr,int,byref,byref):ptr (FullOpts)\n ; ============================================================","Truncated":false,"BaseBytes":373,"DiffBytes":366},{"Assembly":"System.Private.CoreLib.dasm","Method":"System.Runtime.CompilerServices.AsyncHelpers\u002BValueTaskSourceContinuation\u002BValueTaskSourceContinuationResume:.cctor() (FullOpts)","Category":"same-size","Description":"23 -\u003E 23 bytes (0)","ExtraInfo":null,"Diff":"@@ -1,32 \u002B1,32 @@\n ; Assembly listing for method System.Runtime.CompilerServices.AsyncHelpers\u002BValueTaskSourceContinuation\u002BValueTaskSourceContinuationResume:.cctor() (FullOpts)\n ; Emitting BLENDED_CODE for x64 \u002B VEX \u002B EVEX on Unix\n ; FullOpts code\n ; optimized code\n ; rsp based frame\n ; partially interruptible\n ; No PGO data\n ; Final local variable assignments\n ;\n ;* V00 loc0         [V00    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u003CSystem.Runtime.CompilerServices.ResumeInfo\u003E\n ;# V01 OutArgs      [V01    ] (  1,  1   )  struct ( 0) [rsp\u002B0x00]  do-not-enreg[XS] addr-exposed \u0022OutgoingArgSpace\u0022 \u003CEmpty\u003E\n ;* V02 tmp1         [V02    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022field V00.Resume (fldOffset=0x0)\u0022 P-INDEP\n ;* V03 tmp2         [V03    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022field V00.DiagnosticIP (fldOffset=0x8)\u0022 P-INDEP\n ;  V04 cse0         [V04,T00] (  2,  2   )    long  -\u003E  rax         \u0022CSE #01: aggressive\u0022\n ;\n ; Lcl frame size = 0\n \n G_M58358_IG01:\n \t\t\t\t\t\t;; size=0 bbWeight=1 PerfScore 0.00\n G_M58358_IG02:\n        mov      rax, 0xD1FFAB1E      ; data for System.Runtime.CompilerServices.AsyncHelpers\u002BValueTaskSourceContinuation\u002BValueTaskSourceContinuationResume:ResumeInfo\n        vmovsd   xmm0, qword ptr [reloc @RWD00]\n        vmovups  xmmword ptr [rax], xmm0\n \t\t\t\t\t\t;; size=22 bbWeight=1 PerfScore 3.25\n G_M58358_IG03:\n        ret      \n \t\t\t\t\t\t;; size=1 bbWeight=1 PerfScore 1.00\n-RWD00  \tdq\t00007AF27F361260h\n\u002BRWD00  \tdq\t00007590D6F51260h\n \n \n ; Total bytes of code 23, prolog size 0, PerfScore 4.25, instruction count 4, allocated bytes for code 23 (MethodHash=bcd21c09) for method System.Runtime.CompilerServices.AsyncHelpers\u002BValueTaskSourceContinuation\u002BValueTaskSourceContinuationResume:.cctor() (FullOpts)\n ; ============================================================","Truncated":false,"BaseBytes":23,"DiffBytes":23},{"Assembly":"System.Runtime.Numerics.dasm","Method":"System.Numerics.BigInteger:PopCount(System.Numerics.BigInteger):System.Numerics.BigInteger (FullOpts)","Category":"improvement","Description":"312 -\u003E 294 bytes (-18)","ExtraInfo":null,"Diff":"@@ -1,203 \u002B1,201 @@\n ; Assembly listing for method System.Numerics.BigInteger:PopCount(System.Numerics.BigInteger):System.Numerics.BigInteger (FullOpts)\n ; Emitting BLENDED_CODE for x64 \u002B VEX \u002B EVEX on Unix\n ; FullOpts code\n ; optimized code\n ; rbp based frame\n ; fully interruptible\n ; No PGO data\n ; 0 inlinees with PGO data; 13 single block inlinees; 5 inlinees without PGO data\n ; Final local variable assignments\n ;\n ;* V00 arg0         [V00    ] (  0,  0   )  struct (16) zero-ref    multireg-arg single-def \u003CSystem.Numerics.BigInteger\u003E\n ;  V01 loc0         [V01,T00] (  9, 18.42)    long  -\u003E  registers  \n ;* V02 loc1         [V02,T13] (  0,  0   )     int  -\u003E  zero-ref   \n ;* V03 loc2         [V03    ] (  0,  0   )    long  -\u003E  zero-ref   \n ;  V04 loc3         [V04,T08] (  6,  3   )     int  -\u003E  rax        \n ;  V05 loc4         [V05,T05] (  4,  8.92)    long  -\u003E  registers  \n ;# V06 OutArgs      [V06    ] (  1,  1   )  struct ( 0) [rsp\u002B0x00]  do-not-enreg[XS] addr-exposed \u0022OutgoingArgSpace\u0022 \u003CEmpty\u003E\n ;* V07 tmp1         [V07    ] (  0,  0   )  struct (16) zero-ref    \u0022spilled call-like call argument\u0022 \u003CSystem.Span\u00601[nuint]\u003E\n ;* V08 tmp2         [V08    ] (  0,  0   )  struct (16) zero-ref    \u0022spilled call-like call argument\u0022 \u003CSystem.ReadOnlySpan\u00601[nuint]\u003E\n ;* V09 tmp3         [V09    ] (  0,  0   )  struct (16) zero-ref    do-not-enreg[SBRM] multireg-ret multireg-dest \u0022Return value temp for multireg return\u0022 \u003CSystem.Numerics.BigInteger\u003E\n ;* V10 tmp4         [V10    ] (  0,  0   )     ref  -\u003E  zero-ref    class-hnd single-def \u0022dup spill\u0022 \u003Cnuint[]\u003E\n ;* V11 tmp5         [V11    ] (  0,  0   )  struct (16) zero-ref    do-not-enreg[SBRM] multireg-ret multireg-dest \u0022Return value temp for multireg return\u0022 \u003CSystem.Numerics.BigInteger\u003E\n ;* V12 tmp6         [V12    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;  V13 tmp7         [V13    ] (  3,  3   )  struct (16) [rbp-0x20]  do-not-enreg[XSR] multireg-ret must-init addr-exposed ld-addr-op \u0022NewObj constructor temp\u0022 \u003CSystem.Numerics.BigInteger\u003E\n ;* V14 tmp8         [V14    ] (  0,  0   )     ref  -\u003E  zero-ref    class-hnd \u0022Inlining Arg\u0022 \u003Cnuint[]\u003E\n ;* V15 tmp9         [V15    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022NewObj constructor temp\u0022 \u003CSystem.Span\u00601[nuint]\u003E\n ;* V16 tmp10        [V16    ] (  0,  0   )     ref  -\u003E  zero-ref    class-hnd single-def \u0022Inlining Arg\u0022 \u003Cnuint[]\u003E\n ;* V17 tmp11        [V17    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022Inlining Arg\u0022 \u003CSystem.Span\u00601[nuint]\u003E\n ;* V18 tmp12        [V18    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022NewObj constructor temp\u0022 \u003CSystem.ReadOnlySpan\u00601[nuint]\u003E\n ;* V19 tmp13        [V19    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022Inlining Arg\u0022\n ;* V20 tmp14        [V20    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V21 tmp15        [V21    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022Inline return value spill temp\u0022\n ;* V22 tmp16        [V22    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022Inlining Arg\u0022 \u003CSystem.ReadOnlySpan\u00601[nuint]\u003E\n ;* V23 tmp17        [V23    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022Inlining Arg\u0022 \u003CSystem.ReadOnlySpan\u00601[nuint]\u003E\n ;* V24 tmp18        [V24    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022Inlining Arg\u0022\n ;* V25 tmp19        [V25    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V26 tmp20        [V26    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022Inline return value spill temp\u0022\n ;* V27 tmp21        [V27    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022Inlining Arg\u0022 \u003CSystem.ReadOnlySpan\u00601[nuint]\u003E\n ;* V28 tmp22        [V28    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022Inline return value spill temp\u0022\n ;* V29 tmp23        [V29    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022Inline stloc first use temp\u0022\n ;* V30 tmp24        [V30    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V31 tmp25        [V31    ] (  0,  0   )   byref  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V32 tmp26        [V32    ] (  0,  0   )   ubyte  -\u003E  zero-ref    \u0022Inline return value spill temp\u0022\n ;* V33 tmp27        [V33    ] (  0,  0   )    long  -\u003E  zero-ref    ld-addr-op \u0022Inlining Arg\u0022\n ;  V34 tmp28        [V34    ] (  3,  3   )  struct (16) [rbp-0x30]  do-not-enreg[XSR] multireg-ret must-init addr-exposed ld-addr-op \u0022NewObj constructor temp\u0022 \u003CSystem.Numerics.BigInteger\u003E\n ;  V35 tmp29        [V35,T04] (  9,  8.96)     ref  -\u003E  rbx         single-def \u0022field V00._bits (fldOffset=0x0)\u0022 P-INDEP\n ;  V36 tmp30        [V36,T07] (  3,  2   )     int  -\u003E  rsi         single-def \u0022field V00._sign (fldOffset=0x8)\u0022 P-INDEP\n ;* V37 tmp31        [V37    ] (  0,  0   )   byref  -\u003E  zero-ref    \u0022field V07._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V38 tmp32        [V38    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V07._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V39 tmp33        [V39    ] (  0,  0   )   byref  -\u003E  zero-ref    \u0022field V08._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V40 tmp34        [V40    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V08._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V41 tmp35        [V41    ] (  0,  0   )     ref  -\u003E  zero-ref    do-not-enreg[] \u0022field V09._bits (fldOffset=0x0)\u0022 P-DEP\n ;* V42 tmp36        [V42    ] (  0,  0   )     int  -\u003E  zero-ref    do-not-enreg[] \u0022field V09._sign (fldOffset=0x8)\u0022 P-DEP\n ;* V43 tmp37        [V43    ] (  0,  0   )     ref  -\u003E  zero-ref    do-not-enreg[] \u0022field V11._bits (fldOffset=0x0)\u0022 P-DEP\n ;* V44 tmp38        [V44    ] (  0,  0   )     int  -\u003E  zero-ref    do-not-enreg[] \u0022field V11._sign (fldOffset=0x8)\u0022 P-DEP\n ;  V45 tmp39        [V45    ] (  3,  3   )     ref  -\u003E  [rbp-0x20]  do-not-enreg[X] addr-exposed \u0022field V13._bits (fldOffset=0x0)\u0022 P-DEP\n ;  V46 tmp40        [V46    ] (  3,  3   )     int  -\u003E  [rbp-0x18]  do-not-enreg[X] addr-exposed \u0022field V13._sign (fldOffset=0x8)\u0022 P-DEP\n ;  V47 tmp41        [V47,T09] (  2,  1   )   byref  -\u003E  rdi         single-def \u0022field V15._reference (fldOffset=0x0)\u0022 P-INDEP\n ;  V48 tmp42        [V48,T10] (  2,  1   )     int  -\u003E  rdx         \u0022field V15._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V49 tmp43        [V49    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V17._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V50 tmp44        [V50    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V17._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V51 tmp45        [V51    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V18._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V52 tmp46        [V52    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V18._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V53 tmp47        [V53    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V22._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V54 tmp48        [V54    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V22._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V55 tmp49        [V55    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V23._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V56 tmp50        [V56    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V23._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V57 tmp51        [V57    ] (  0,  0   )   byref  -\u003E  zero-ref    \u0022field V27._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V58 tmp52        [V58    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V27._length (fldOffset=0x8)\u0022 P-INDEP\n ;  V59 tmp53        [V59    ] (  3,  3   )     ref  -\u003E  [rbp-0x30]  do-not-enreg[X] addr-exposed \u0022field V34._bits (fldOffset=0x0)\u0022 P-DEP\n ;  V60 tmp54        [V60    ] (  3,  3   )     int  -\u003E  [rbp-0x28]  do-not-enreg[X] addr-exposed \u0022field V34._sign (fldOffset=0x8)\u0022 P-DEP\n-;  V61 cse0         [V61,T11] (  2,  1   )    long  -\u003E  rdi         \u0022CSE #02: moderate\u0022\n-;  V62 cse1         [V62,T12] (  2,  1   )     int  -\u003E  r15         \u0022CSE #03: moderate\u0022\n\u002B;  V61 cse0         [V61,T11] (  2,  1   )     int  -\u003E  r15         \u0022CSE #03: moderate\u0022\n\u002B;  V62 cse1         [V62,T12] (  2,  1   )    long  -\u003E  rdi         \u0022CSE #02: moderate\u0022\n ;  V63 cse2         [V63,T06] (  9,  7.96)     int  -\u003E  r15         multi-def \u0022CSE #01: aggressive\u0022\n ;  V64 rat0         [V64,T01] (  6, 16.84)    long  -\u003E  rsi         \u0022Widened IV V04\u0022\n ;  V65 rat1         [V65,T02] (  4, 12.50)   byref  -\u003E  rbx         \u0022Strength reduced derived IV\u0022\n ;  V66 rat2         [V66,T03] (  4, 12.50)     int  -\u003E  rdi         \u0022Trip count IV\u0022\n ;\n ; Lcl frame size = 32\n \n G_M53984_IG01:\n        push     rbp\n        push     r15\n        push     rbx\n        sub      rsp, 32\n        lea      rbp, [rsp\u002B0x30]\n        vxorps   xmm8, xmm8, xmm8\n        vmovdqu  ymmword ptr [rbp-0x30], ymm8\n        mov      rbx, rdi\n \t\t\t\t\t\t;; size=26 bbWeight=1 PerfScore 5.33\n G_M53984_IG02:\n        test     rbx, rbx\n        je       G_M53984_IG12\n \t\t\t\t\t\t;; size=9 bbWeight=1 PerfScore 1.25\n G_M53984_IG03:\n        xor      eax, eax\n        test     esi, esi\n-       jge      G_M53984_IG08\n\u002B       jge      SHORT G_M53984_IG08\n\u002B\t\t  ;; NOP compensation instructions of 4 bytes.\n        lea      rdi, bword ptr [rbx\u002B0x10]\n        mov      r15d, dword ptr [rbx\u002B0x08]\n        mov      edx, r15d\n        xor      esi, esi\n        mov      rax, 0xD1FFAB1E      ; code for System.SpanHelpers:NonPackedIndexOfValueType[long,System.SpanHelpers\u002BNegate\u00601[long]](byref,long,int):int\n        call     [rax]System.SpanHelpers:NonPackedIndexOfValueType[long,System.SpanHelpers\u002BNegate\u00601[long]](byref,long,int):int\n        cmp      eax, r15d\n        jae      G_M53984_IG14\n        mov      edi, eax\n        mov      rdi, qword ptr [rbx\u002B8*rdi\u002B0x10]\n        neg      rdi\n        popcnt   rdi, rdi\n-       mov      edi, edi\n        inc      eax\n        mov      esi, eax\n        cmp      r15d, esi\n        jle      SHORT G_M53984_IG05\n-       align    [7 bytes for IG04]\n-\t\t\t\t\t\t;; size=77 bbWeight=0.50 PerfScore 7.88\n\u002B       align    [0 bytes for IG04]\n\u002B\t\t\t\t\t\t;; size=68 bbWeight=0.50 PerfScore 7.62\n G_M53984_IG04:\n        mov      rax, qword ptr [rbx\u002B8*rsi\u002B0x10]\n        not      rax\n        popcnt   rax, rax\n-       mov      eax, eax\n        add      rdi, rax\n        inc      esi\n        cmp      r15d, esi\n        jg       SHORT G_M53984_IG04\n-\t\t\t\t\t\t;; size=25 bbWeight=3.96 PerfScore 24.75\n\u002B\t\t\t\t\t\t;; size=23 bbWeight=3.96 PerfScore 23.76\n G_M53984_IG05:\n        dec      r15d\n        mov      esi, r15d\n        mov      rsi, qword ptr [rbx\u002B8*rsi\u002B0x10]\n        shr      rsi, 32\n        test     esi, esi\n        je       SHORT G_M53984_IG07\n \t\t\t\t\t\t;; size=19 bbWeight=0.50 PerfScore 2.12\n G_M53984_IG06:\n        mov      rax, rdi\n        jmp      SHORT G_M53984_IG10\n-       align    [6 bytes for IG09]\n-\t\t\t\t\t\t;; size=11 bbWeight=0.25 PerfScore 0.56\n\u002B       align    [1 bytes for IG09]\n\u002B\t\t\t\t\t\t;; size=6 bbWeight=0.25 PerfScore 0.56\n G_M53984_IG07:\n        add      rdi, -32\n        mov      rax, rdi\n        jmp      SHORT G_M53984_IG10\n \t\t\t\t\t\t;; size=9 bbWeight=0.50 PerfScore 1.25\n G_M53984_IG08:\n        mov      r15d, dword ptr [rbx\u002B0x08]\n        test     r15d, r15d\n        jle      SHORT G_M53984_IG10\n        add      rbx, 16\n        mov      edi, r15d\n \t\t\t\t\t\t;; size=16 bbWeight=0.50 PerfScore 1.88\n G_M53984_IG09:\n        xor      esi, esi\n        popcnt   rsi, qword ptr [rbx]\n-       mov      esi, esi\n        add      rsi, rax\n        mov      rax, rsi\n        add      rbx, 8\n        dec      edi\n        jne      SHORT G_M53984_IG09\n-\t\t\t\t\t\t;; size=23 bbWeight=4 PerfScore 30.00\n\u002B\t\t\t\t\t\t;; size=21 bbWeight=4 PerfScore 29.00\n G_M53984_IG10:\n        vxorps   xmm0, xmm0, xmm0\n        vmovdqu  xmmword ptr [rbp-0x30], xmm0\n        lea      rdi, [rbp-0x30]\n        mov      rsi, rax\n        mov      rax, 0xD1FFAB1E      ; code for System.Numerics.BigInteger:.ctor(ulong):this\n        call     [rax]System.Numerics.BigInteger:.ctor(ulong):this\n        mov      rax, gword ptr [rbp-0x30]\n        mov      rdx, qword ptr [rbp-0x28]\n \t\t\t\t\t\t;; size=36 bbWeight=0.50 PerfScore 3.67\n G_M53984_IG11:\n        add      rsp, 32\n        pop      rbx\n        pop      r15\n        pop      rbp\n        ret      \n \t\t\t\t\t\t;; size=9 bbWeight=0.50 PerfScore 1.38\n G_M53984_IG12:\n        vxorps   xmm0, xmm0, xmm0\n        vmovdqu  xmmword ptr [rbp-0x20], xmm0\n        popcnt   esi, esi\n        lea      rdi, [rbp-0x20]\n        mov      rax, 0xD1FFAB1E      ; code for System.Numerics.BigInteger:.ctor(int):this\n        call     [rax]System.Numerics.BigInteger:.ctor(int):this\n        mov      rax, gword ptr [rbp-0x20]\n        mov      rdx, qword ptr [rbp-0x18]\n \t\t\t\t\t\t;; size=37 bbWeight=0.50 PerfScore 4.54\n G_M53984_IG13:\n        add      rsp, 32\n        pop      rbx\n        pop      r15\n        pop      rbp\n        ret      \n \t\t\t\t\t\t;; size=9 bbWeight=0.50 PerfScore 1.38\n G_M53984_IG14:\n        call     CORINFO_HELP_RNGCHKFAIL\n        int3     \n \t\t\t\t\t\t;; size=6 bbWeight=0 PerfScore 0.00\n \n-; Total bytes of code 312, prolog size 26, PerfScore 85.98, instruction count 92, allocated bytes for code 312 (MethodHash=a5942d1f) for method System.Numerics.BigInteger:PopCount(System.Numerics.BigInteger):System.Numerics.BigInteger (FullOpts)\n\u002B; Total bytes of code 294, prolog size 26, PerfScore 83.74, instruction count 89, allocated bytes for code 294 (MethodHash=a5942d1f) for method System.Numerics.BigInteger:PopCount(System.Numerics.BigInteger):System.Numerics.BigInteger (FullOpts)\n ; ============================================================","Truncated":false,"BaseBytes":312,"DiffBytes":294},{"Assembly":"Testcontainers.dasm","Method":"DotNet.Testcontainers.Clients.TestcontainersClient\u002B\u003CRunAsync\u003Ed__41:MoveNext():this (FullOpts)","Category":"same-size","Description":"2,496 -\u003E 2,496 bytes (0)","ExtraInfo":null,"Diff":"@@ -874,7 \u002B874,7 @@ RWD00  \tdd\tG_M43249_IG30 - G_M43249_IG02\n        \tdd\tG_M43249_IG13 - G_M43249_IG02\n        \tdd\tG_M43249_IG10 - G_M43249_IG02\n        \tdd\tG_M43249_IG05 - G_M43249_IG02\n-RWD32  \tdq\t4956683D0BAAA6BEh, 4AB197674EB6B986h\n\u002BRWD32  \tdq\t4A0C98A5B7366359h, 924B90154B4C3087h\n \n \n ; Total bytes of code 2496, prolog size 53, PerfScore 531.33, instruction count 524, allocated bytes for code 2498 (MethodHash=e48b570e) for method DotNet.Testcontainers.Clients.TestcontainersClient\u002B\u003CRunAsync\u003Ed__41:MoveNext():this (FullOpts)","Truncated":true,"BaseBytes":2496,"DiffBytes":2496},{"Assembly":"ZstdSharp.dasm","Method":"ZstdSharp.Unsafe.Methods:ZSTDMT_serialState_reset(ptr,ptr,ZstdSharp.Unsafe.ZSTD_CCtx_params_s,nuint,ptr,nuint,int):int (FullOpts)","Category":"same-size","Description":"1,266 -\u003E 1,266 bytes (0)","ExtraInfo":null,"Diff":"@@ -1,500 \u002B1,500 @@\n ; Assembly listing for method ZstdSharp.Unsafe.Methods:ZSTDMT_serialState_reset(ptr,ptr,ZstdSharp.Unsafe.ZSTD_CCtx_params_s,nuint,ptr,nuint,int):int (FullOpts)\n ; Emitting BLENDED_CODE for x64 \u002B VEX \u002B EVEX on Unix\n ; FullOpts code\n ; optimized code\n ; rbp based frame\n ; partially interruptible\n ; No PGO data\n ; 0 inlinees with PGO data; 38 single block inlinees; 15 inlinees without PGO data\n ; Final local variable assignments\n ;\n ;  V00 arg0         [V00,T01] ( 18, 11   )    long  -\u003E  rbx         single-def\n ;  V01 arg1         [V01,T04] (  5,  3.50)    long  -\u003E  r14         single-def\n ;  V02 arg2         [V02    ] ( 16,  9.50)  struct (224) [rbp\u002B0x10]  do-not-enreg[XSF] addr-exposed ld-addr-op single-def \u003CZstdSharp.Unsafe.ZSTD_CCtx_params_s\u003E\n ;  V03 arg3         [V03,T05] (  4,  3   )    long  -\u003E  r13         single-def\n ;  V04 arg4         [V04,T02] (  7,  4.50)    long  -\u003E  r15         single-def\n ;  V05 arg5         [V05,T06] (  4,  3   )    long  -\u003E  r12         single-def\n ;  V06 arg6         [V06,T07] (  3,  2.50)     int  -\u003E  [rbp-0x2C]  single-def\n ;* V07 loc0         [V07    ] (  0,  0   )  struct (24) zero-ref    \u003CZstdSharp.Unsafe.ZSTD_customMem\u003E\n ;  V08 loc1         [V08,T24] (  3,  1.50)     int  -\u003E  [rbp-0x30]  spill-single-def\n ;  V09 loc2         [V09,T19] (  4,  2   )    long  -\u003E  [rbp-0x38]  spill-single-def\n ;  V10 loc3         [V10,T25] (  3,  1.50)     int  -\u003E  [rbp-0x3C]  spill-single-def\n ;  V11 loc4         [V11,T39] (  2,  1   )     int  -\u003E  [rbp-0x40]  spill-single-def\n ;  V12 loc5         [V12,T20] (  4,  2   )    long  -\u003E  [rbp-0x48]  spill-single-def\n ;  V13 loc6         [V13,T26] (  3,  1.50)    long  -\u003E  [rbp-0x50]  spill-single-def\n ;# V14 OutArgs      [V14    ] (  1,  1   )  struct ( 0) [rsp\u002B0x00]  do-not-enreg[XS] addr-exposed \u0022OutgoingArgSpace\u0022 \u003CEmpty\u003E\n ;  V15 tmp1         [V15,T22] (  2,  2   )    long  -\u003E  [rbp-0x58]  spill-single-def \u0022impAppendStmt\u0022\n ;  V16 tmp2         [V16,T23] (  2,  2   )    long  -\u003E  [rbp-0x60]  spill-single-def \u0022impAppendStmt\u0022\n ;* V17 tmp3         [V17    ] (  0,  0   )    long  -\u003E  zero-ref   \n ;  V18 tmp4         [V18,T40] (  2,  1   )    long  -\u003E  rax        \n ;  V19 tmp5         [V19,T27] (  3,  1.50)     int  -\u003E  rcx        \n ;  V20 tmp6         [V20,T41] (  2,  1   )    long  -\u003E  [rbp-0x68]  spill-single-def \u0022Inline return value spill temp\u0022\n ;* V21 tmp7         [V21    ] (  0,  0   )  struct (24) zero-ref    do-not-enreg[SF] \u0022Inlining Arg\u0022 \u003CZstdSharp.Unsafe.ldmParams_t\u003E\n ;* V22 tmp8         [V22    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V23 tmp9         [V23    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;  V24 tmp10        [V24,T12] (  3,  3   )    long  -\u003E  rdi         \u0022Inlining Arg\u0022\n ;* V25 tmp11        [V25    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op \u0022Inline stloc first use temp\u0022 \u003CSystem.Runtime.InteropServices.GCHandle\u003E\n ;* V26 tmp12        [V26    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op \u0022NewObj constructor temp\u0022 \u003CSystem.Runtime.InteropServices.GCHandle\u003E\n ;* V27 tmp13        [V27    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022dup spill\u0022\n ;* V28 tmp14        [V28    ] (  0,  0   )    long  -\u003E  zero-ref    ld-addr-op \u0022NewObj constructor temp\u0022\n ;* V29 tmp15        [V29    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V30 tmp16        [V30    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V31 tmp17        [V31    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;  V32 tmp18        [V32,T13] (  3,  3   )    long  -\u003E  rdi         \u0022Inlining Arg\u0022\n ;* V33 tmp19        [V33    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op \u0022Inline stloc first use temp\u0022 \u003CSystem.Runtime.InteropServices.GCHandle\u003E\n ;* V34 tmp20        [V34    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op \u0022NewObj constructor temp\u0022 \u003CSystem.Runtime.InteropServices.GCHandle\u003E\n ;* V35 tmp21        [V35    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022dup spill\u0022\n ;* V36 tmp22        [V36    ] (  0,  0   )    long  -\u003E  zero-ref    ld-addr-op \u0022NewObj constructor temp\u0022\n ;* V37 tmp23        [V37    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V38 tmp24        [V38    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;  V39 tmp25        [V39,T14] (  3,  3   )    long  -\u003E  rdi         \u0022Inlining Arg\u0022\n ;* V40 tmp26        [V40    ] (  0,  0   )  struct (40) zero-ref    do-not-enreg[SF] ld-addr-op \u0022Inline ldloca(s) first use temp\u0022 \u003CZstdSharp.Unsafe.ZSTD_window_t\u003E\n ;* V41 tmp27        [V41    ] (  0,  0   )  struct (16) zero-ref    \u0022spilled call-like call argument\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V42 tmp28        [V42    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022NewObj constructor temp\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V43 tmp29        [V43    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022Inlining Arg\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V44 tmp30        [V44    ] (  0,  0   )  struct (16) zero-ref    \u0022spilled call-like call argument\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V45 tmp31        [V45    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022NewObj constructor temp\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V46 tmp32        [V46    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022Inlining Arg\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V47 tmp33        [V47    ] (  0,  0   )  struct (16) zero-ref    \u0022spilled call-like call argument\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V48 tmp34        [V48    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022NewObj constructor temp\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V49 tmp35        [V49    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022Inlining Arg\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;  V50 tmp36        [V50,T09] (  4,  4   )    long  -\u003E  rsi         \u0022Inlining Arg\u0022\n ;* V51 tmp37        [V51    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inline stloc first use temp\u0022\n ;  V52 tmp38        [V52,T28] (  3,  1.50)    long  -\u003E  rax         \u0022Inline return value spill temp\u0022\n ;* V53 tmp39        [V53    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inline stloc first use temp\u0022\n ;  V54 tmp40        [V54,T10] (  4,  4   )    long  -\u003E  rsi         \u0022Inlining Arg\u0022\n ;* V55 tmp41        [V55    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inline stloc first use temp\u0022\n ;  V56 tmp42        [V56,T29] (  3,  1.50)    long  -\u003E  rax         \u0022Inline return value spill temp\u0022\n ;* V57 tmp43        [V57    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inline stloc first use temp\u0022\n ;* V58 tmp44        [V58    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V59 tmp45        [V59    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V60 tmp46        [V60    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V61 tmp47        [V61    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V62 tmp48        [V62    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022Inline return value spill temp\u0022\n ;* V63 tmp49        [V63    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inline stloc first use temp\u0022\n ;* V64 tmp50        [V64    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022Inline stloc first use temp\u0022\n ;  V65 tmp51        [V65,T00] ( 18, 18   )    long  -\u003E  rdi         \u0022Inlining Arg\u0022\n ;  V66 tmp52        [V66,T30] (  3,  1.50)    long  -\u003E  rcx         \u0022Inline stloc first use temp\u0022\n ;  V67 tmp53        [V67,T31] (  3,  1.50)    long  -\u003E  r12         \u0022Inline stloc first use temp\u0022\n ;  V68 tmp54        [V68,T42] (  2,  1   )     int  -\u003E  rsi        \n ;* V69 tmp55        [V69    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022Inline stloc first use temp\u0022\n ;  V70 tmp56        [V70,T11] (  3,  4   )     int  -\u003E  rax         \u0022Single return block return value\u0022\n ;  V71 FramesRoot   [V71,T03] ( 10,  6   )    long  -\u003E  [rbp-0x70]  spill-single-def \u0022Pinvoke FrameListRoot\u0022\n ;  V72 PInvokeFrame [V72    ] ( 12,  8   )  struct (56) [rbp-0xA8]  do-not-enreg[XS] addr-exposed \u0022Pinvoke FrameVar\u0022 \u003CUNNAMED\u003E\n ;  V73 tmp59        [V73,T15] (  5,  2.50)    long  -\u003E  [rbp-0xB0]  spill-single-def \u0022field V07.customAlloc (fldOffset=0x0)\u0022 P-INDEP\n ;  V74 tmp60        [V74,T16] (  5,  2.50)    long  -\u003E  [rbp-0xB8]  spill-single-def \u0022field V07.customFree (fldOffset=0x8)\u0022 P-INDEP\n ;  V75 tmp61        [V75,T17] (  5,  2.50)    long  -\u003E  [rbp-0xC0]  spill-single-def \u0022field V07.opaque (fldOffset=0x10)\u0022 P-INDEP\n ;* V76 tmp62        [V76    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022field V25._handle (fldOffset=0x0)\u0022 P-INDEP\n ;* V77 tmp63        [V77    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022field V26._handle (fldOffset=0x0)\u0022 P-INDEP\n ;* V78 tmp64        [V78    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022field V33._handle (fldOffset=0x0)\u0022 P-INDEP\n ;* V79 tmp65        [V79    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022field V34._handle (fldOffset=0x0)\u0022 P-INDEP\n ;* V80 tmp66        [V80    ] (  0,  0   )   byref  -\u003E  zero-ref    \u0022field V41._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V81 tmp67        [V81    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V41._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V82 tmp68        [V82    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V42._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V83 tmp69        [V83    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V42._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V84 tmp70        [V84    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V43._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V85 tmp71        [V85    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V43._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V86 tmp72        [V86    ] (  0,  0   )   byref  -\u003E  zero-ref    \u0022field V44._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V87 tmp73        [V87    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V44._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V88 tmp74        [V88    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V45._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V89 tmp75        [V89    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V45._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V90 tmp76        [V90    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V46._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V91 tmp77        [V91    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V46._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V92 tmp78        [V92    ] (  0,  0   )   byref  -\u003E  zero-ref    \u0022field V47._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V93 tmp79        [V93    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V47._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V94 tmp80        [V94    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V48._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V95 tmp81        [V95    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V48._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V96 tmp82        [V96    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V49._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V97 tmp83        [V97    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V49._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V98 tmp84        [V98,T44] (  0,  0   )     int  -\u003E  zero-ref    \u0022V21.[000..004)\u0022\n ;  V99 tmp85        [V99,T43] (  2,  1   )     int  -\u003E  rax         \u0022V21.[012..016)\u0022\n ;* V100 tmp86       [V100    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022V40.[000..008)\u0022\n ;* V101 tmp87       [V101    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022V40.[008..016)\u0022\n ;* V102 tmp88       [V102    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022V40.[016..024)\u0022\n ;* V103 tmp89       [V103    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022V40.[024..028)\u0022\n ;* V104 tmp90       [V104    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022V40.[028..032)\u0022\n ;* V105 tmp91       [V105    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022V40.[032..036)\u0022\n ;* V106 tmp92       [V106    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Cast away GC\u0022\n ;* V107 tmp93       [V107    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Cast away GC\u0022\n ;* V108 tmp94       [V108    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Cast away GC\u0022\n ;  V109 cse0        [V109,T32] (  3,  1.50)    long  -\u003E  rdx         \u0022CSE #13: moderate\u0022\n ;  V110 cse1        [V110,T21] (  4,  2   )    long  -\u003E  rcx         \u0022CSE #11: moderate\u0022\n ;  V111 cse2        [V111,T33] (  3,  1.50)     int  -\u003E  rsi         \u0022CSE #12: moderate\u0022\n ;  V112 cse3        [V112,T34] (  3,  1.50)    long  -\u003E  rsi         \u0022CSE #03: moderate\u0022\n ;  V113 cse4        [V113,T35] (  3,  1.50)    long  -\u003E  rsi         \u0022CSE #05: moderate\u0022\n ;  V114 cse5        [V114,T36] (  3,  1.50)    long  -\u003E  rdi         \u0022CSE #06: moderate\u0022\n ;  V115 cse6        [V115,T37] (  3,  1.50)    long  -\u003E  [rbp-0xC8]  spill-single-def \u0022CSE #07: moderate\u0022\n ;  V116 cse7        [V116,T38] (  3,  1.50)     int  -\u003E  rcx         \u0022CSE #09: moderate\u0022\n ;  V117 cse8        [V117,T08] (  8,  4   )    long  -\u003E  r14         \u0022CSE #04: moderate\u0022\n ;  V118 cse9        [V118,T18] (  5,  2.50)    long  -\u003E  r12         \u0022CSE #10: moderate\u0022\n ;\n ; Lcl frame size = 168\n \n G_M47366_IG01:\n        push     rbp\n        push     r15\n        push     r14\n        push     r13\n        push     r12\n        push     rbx\n        sub      rsp, 168\n        lea      rbp, [rsp\u002B0xD0]\n        mov      dword ptr [rbp-0x2C], r9d\n        mov      rbx, rdi\n        mov      r14, rsi\n        mov      r13, rdx\n        mov      r15, rcx\n        mov      r12, r8\n \t\t\t\t\t\t;; size=44 bbWeight=1 PerfScore 9.00\n G_M47366_IG02:\n        lea      rdi, [rbp-0xA8]\n        call     CORINFO_HELP_INIT_PINVOKE_FRAME\n        mov      qword ptr [rbp-0x70], rax\n        mov      rdi, rsp\n        mov      qword ptr [rbp-0x90], rdi\n        mov      rdi, rbp\n        mov      qword ptr [rbp-0x80], rdi\n        cmp      dword ptr [rbp\u002B0x70], 1\n        je       SHORT G_M47366_IG04\n \t\t\t\t\t\t;; size=39 bbWeight=1 PerfScore 7.00\n G_M47366_IG03:\n        vxorps   xmm0, xmm0, xmm0\n        vmovdqu  xmmword ptr [rbp\u002B0x70], xmm0\n        vmovdqu  xmmword ptr [rbp\u002B0x78], xmm0\n        jmp      SHORT G_M47366_IG05\n \t\t\t\t\t\t;; size=16 bbWeight=0.50 PerfScore 2.17\n G_M47366_IG04:\n        lea      rdi, [rbp\u002B0x70]\n        lea      rsi, [rbp\u002B0x14]\n        mov      rcx, 0xD1FFAB1E      ; code for ZstdSharp.Unsafe.Methods:ZSTD_ldm_adjustParameters(ptr,ptr)\n        call     [rcx]ZstdSharp.Unsafe.Methods:ZSTD_ldm_adjustParameters(ptr,ptr)\n \t\t\t\t\t\t;; size=20 bbWeight=0.50 PerfScore 2.12\n G_M47366_IG05:\n        cmp      byte  ptr [rbx], bl\n        xor      edi, edi\n        mov      dword ptr [rbx\u002B0x0988], edi\n        cmp      dword ptr [rbp\u002B0x34], 0\n        je       SHORT G_M47366_IG07\n \t\t\t\t\t\t;; size=16 bbWeight=1 PerfScore 5.25\n G_M47366_IG06:\n        lea      rdi, [rbx\u002B0x0930]\n        xor      esi, esi\n        mov      rax, 0xD1FFAB1E      ; code for ZstdSharp.Unsafe.Methods:ZSTD_XXH64_reset(ptr,ulong):int\n        call     [rax]ZstdSharp.Unsafe.Methods:ZSTD_XXH64_reset(ptr,ulong):int\n \t\t\t\t\t\t;; size=21 bbWeight=0.50 PerfScore 2.00\n G_M47366_IG07:\n        cmp      dword ptr [rbp\u002B0x70], 1\n        jne      G_M47366_IG34\n \t\t\t\t\t\t;; size=10 bbWeight=1 PerfScore 2.00\n G_M47366_IG08:\n        mov      rcx, qword ptr [rbp\u002B0xB8]\n        mov      qword ptr [rbp-0xB0], rcx\n        mov      rsi, qword ptr [rbp\u002B0xC0]\n        mov      qword ptr [rbp-0xB8], rsi\n        mov      r8, qword ptr [rbp\u002B0xC8]\n        mov      qword ptr [rbp-0xC0], r8\n        mov      r9d, dword ptr [rbp\u002B0x74]\n        mov      dword ptr [rbp-0x30], r9d\n        mov      eax, 1\n        shlx     r10, rax, r9\n        shl      r10, 3\n        mov      qword ptr [rbp-0x38], r10\n        mov      r11d, dword ptr [rbp\u002B0x74]\n        sub      r11d, dword ptr [rbp\u002B0x78]\n        mov      dword ptr [rbp-0x3C], r11d\n        mov      edi, dword ptr [rbx\u002B0x74]\n        sub      edi, dword ptr [rbx\u002B0x78]\n        mov      dword ptr [rbp-0x40], edi\n        shlx     rdx, rax, r11\n        mov      qword ptr [rbp-0x48], rdx\n        mov      eax, dword ptr [rbp\u002B0x7C]\n        mov      edi, eax\n        mov      rax, r13\n        xor      edx, edx\n        div      rdx:rax, rdi\n        mov      qword ptr [rbp-0x68], rax\n        mov      rdi, qword ptr [r14]\n        test     rdi, rdi\n        je       G_M47366_IG37\n        and      rdi, -2\n        mov      rdi, gword ptr [rdi]\n        mov      rdx, 0xD1FFAB1E      ; code for System.Threading.Monitor:Enter(System.Object)\n        call     [rdx]System.Threading.Monitor:Enter(System.Object)\n        mov      rdi, qword ptr [rbp-0x68]\n        lea      rdi, [rdi\u002B2*rdi]\n        shl      rdi, 2\n        mov      qword ptr [r14\u002B0x08], rdi\n        mov      rdi, qword ptr [r14]\n        test     rdi, rdi\n        je       G_M47366_IG37\n        and      rdi, -2\n        mov      rdi, gword ptr [rdi]\n        mov      rax, 0xD1FFAB1E      ; code for System.Threading.Monitor:Exit(System.Object)\n        call     [rax]System.Threading.Monitor:Exit(System.Object)\n        lea      r14, [rbx\u002B0xF0]\n        mov      rdi, r14\n        vmovups  ymm0, ymmword ptr [reloc @RWD00]\n        vmovups  ymmword ptr [rdi], ymm0\n        xor      eax, eax\n        mov      dword ptr [rdi\u002B0x20], eax\n        mov      rsi, qword ptr [rbx\u002B0x118]\n        test     rsi, rsi\n        je       SHORT G_M47366_IG09\n        mov      edi, dword ptr [rbp-0x30]\n        cmp      dword ptr [rbx\u002B0x74], edi\n        jae      G_M47366_IG18\n \t\t\t\t\t\t;; size=244 bbWeight=0.50 PerfScore 58.12\n G_M47366_IG09:\n        test     rsi, rsi\n        je       G_M47366_IG15\n        cmp      qword ptr [rbp-0xB8], 0\n        jne      SHORT G_M47366_IG14\n        mov      rdi, rsi\n        mov      rcx, 0xD1FFAB1E      ; function address\n        mov      qword ptr [rbp-0x98], rcx\n        lea      rcx, G_M47366_IG12\n        mov      qword ptr [rbp-0x88], rcx\n        lea      rcx, [rbp-0xA8]\n        mov      rdx, qword ptr [rbp-0x70]\n        mov      qword ptr [rdx\u002B0x08], rcx\n        mov      byte  ptr [rdx\u002B0x04], 0\n \t\t\t\t\t\t;; size=72 bbWeight=0.50 PerfScore 5.12\n G_M47366_IG10:\n        mov      rcx, 0xD1FFAB1E      ; function address\n \t\t\t\t\t\t;; size=10 bbWeight=0.50 PerfScore 0.12\n G_M47366_IG11:\n        vzeroupper \n        call     rcx ; Interop\u002BSys:Free(ptr)\n \t\t\t\t\t\t;; size=5 bbWeight=0.50 PerfScore 2.00\n G_M47366_IG12:\n        mov      rax, qword ptr [rbp-0x70]\n        mov      byte  ptr [rax\u002B0x04], 1\n        mov      rcx, 0xD1FFAB1E      ; function address\n        cmp      dword ptr [rcx], 0\n        je       SHORT G_M47366_IG13\n        mov      rdi, 0xD1FFAB1E\n        call     [rdi]CORINFO_HELP_STOP_FOR_GC\n \t\t\t\t\t\t;; size=35 bbWeight=0.50 PerfScore 4.25\n G_M47366_IG13:\n        mov      rdi, qword ptr [rbp-0xA0]\n        mov      qword ptr [rax\u002B0x08], rdi\n        jmp      SHORT G_M47366_IG15\n \t\t\t\t\t\t;; size=13 bbWeight=0.50 PerfScore 2.00\n G_M47366_IG14:\n        mov      rdi, qword ptr [rbp-0xC0]\n        mov      rax, qword ptr [rbp-0xB8]\n        call     rax\n \t\t\t\t\t\t;; size=16 bbWeight=0.50 PerfScore 2.50\n G_M47366_IG15:\n        mov      qword ptr [rbp-0x58], r14\n        cmp      qword ptr [rbp-0xB0], 0\n        jne      SHORT G_M47366_IG16\n        mov      rdi, qword ptr [rbp-0x38]\n        mov      rdx, 0xD1FFAB1E      ; code for System.Runtime.InteropServices.NativeMemory:Alloc(nuint):ptr\n        call     [rdx]System.Runtime.InteropServices.NativeMemory:Alloc(nuint):ptr\n        jmp      SHORT G_M47366_IG17\n \t\t\t\t\t\t;; size=32 bbWeight=0.50 PerfScore 4.62\n G_M47366_IG16:\n        mov      rdi, qword ptr [rbp-0xC0]\n        mov      rsi, qword ptr [rbp-0x38]\n        mov      rcx, qword ptr [rbp-0xB0]\n        call     rcx\n \t\t\t\t\t\t;; size=20 bbWeight=0.50 PerfScore 3.00\n G_M47366_IG17:\n        mov      rdi, qword ptr [rbp-0x58]\n        mov      qword ptr [rdi\u002B0x28], rax\n \t\t\t\t\t\t;; size=8 bbWeight=0.50 PerfScore 1.00\n G_M47366_IG18:\n        mov      rsi, qword ptr [rbx\u002B0x128]\n        test     rsi, rsi\n        je       SHORT G_M47366_IG19\n        mov      edi, dword ptr [rbp-0x3C]\n        cmp      dword ptr [rbp-0x40], edi\n        jae      G_M47366_IG28\n \t\t\t\t\t\t;; size=24 bbWeight=0.50 PerfScore 3.12\n G_M47366_IG19:\n        test     rsi, rsi\n        je       G_M47366_IG25\n        mov      rax, qword ptr [rbp-0xB8]\n        test     rax, rax\n        jne      SHORT G_M47366_IG24\n        mov      rdi, rsi\n        mov      rax, 0xD1FFAB1E      ; function address\n        mov      qword ptr [rbp-0x98], rax\n        lea      rax, G_M47366_IG22\n        mov      qword ptr [rbp-0x88], rax\n        lea      rax, [rbp-0xA8]\n        mov      rcx, qword ptr [rbp-0x70]\n        mov      qword ptr [rcx\u002B0x08], rax\n        mov      byte  ptr [rcx\u002B0x04], 0\n \t\t\t\t\t\t;; size=74 bbWeight=0.50 PerfScore 5.25\n G_M47366_IG20:\n        mov      rax, 0xD1FFAB1E      ; function address\n \t\t\t\t\t\t;; size=10 bbWeight=0.50 PerfScore 0.12\n G_M47366_IG21:\n        vzeroupper \n        call     rax ; Interop\u002BSys:Free(ptr)\n \t\t\t\t\t\t;; size=5 bbWeight=0.50 PerfScore 2.00\n G_M47366_IG22:\n        mov      rax, qword ptr [rbp-0x70]\n        mov      byte  ptr [rax\u002B0x04], 1\n        mov      rcx, 0xD1FFAB1E      ; function address\n        cmp      dword ptr [rcx], 0\n        je       SHORT G_M47366_IG23\n        mov      rdi, 0xD1FFAB1E\n        call     [rdi]CORINFO_HELP_STOP_FOR_GC\n \t\t\t\t\t\t;; size=35 bbWeight=0.50 PerfScore 4.25\n G_M47366_IG23:\n        mov      rdi, qword ptr [rbp-0xA0]\n        mov      qword ptr [rax\u002B0x08], rdi\n        jmp      SHORT G_M47366_IG25\n \t\t\t\t\t\t;; size=13 bbWeight=0.50 PerfScore 2.00\n G_M47366_IG24:\n        mov      rdi, qword ptr [rbp-0xC0]\n        call     rax\n \t\t\t\t\t\t;; size=9 bbWeight=0.50 PerfScore 2.00\n G_M47366_IG25:\n        mov      qword ptr [rbp-0x60], r14\n        mov      rcx, qword ptr [rbp-0xB0]\n        test     rcx, rcx\n        jne      SHORT G_M47366_IG26\n        mov      rdi, qword ptr [rbp-0x48]\n        mov      rcx, 0xD1FFAB1E      ; code for System.Runtime.InteropServices.NativeMemory:Alloc(nuint):ptr\n        call     [rcx]System.Runtime.InteropServices.NativeMemory:Alloc(nuint):ptr\n        jmp      SHORT G_M47366_IG27\n \t\t\t\t\t\t;; size=34 bbWeight=0.50 PerfScore 4.75\n G_M47366_IG26:\n        mov      rdi, qword ptr [rbp-0xC0]\n        mov      rsi, qword ptr [rbp-0x48]\n        call     rcx\n \t\t\t\t\t\t;; size=13 bbWeight=0.50 PerfScore 2.50\n G_M47366_IG27:\n        mov      rdi, qword ptr [rbp-0x60]\n        mov      qword ptr [rdi\u002B0x38], rax\n \t\t\t\t\t\t;; size=8 bbWeight=0.50 PerfScore 1.00\n G_M47366_IG28:\n        mov      rdi, qword ptr [rbx\u002B0x118]\n        test     rdi, rdi\n        je       G_M47366_IG35\n        mov      rax, qword ptr [rbx\u002B0x128]\n        mov      qword ptr [rbp-0xC8], rax\n        test     rax, rax\n        je       G_M47366_IG35\n        mov      esi, dword ptr [rbp-0x38]\n        mov      rcx, 0xD1FFAB1E      ; code for CORINFO_HELP_MEMZERO\n        call     [rcx]CORINFO_HELP_MEMZERO\n        mov      rdi, qword ptr [rbp-0xC8]\n        mov      esi, dword ptr [rbp-0x48]\n        mov      rax, 0xD1FFAB1E      ; code for CORINFO_HELP_MEMZERO\n        call     [rax]CORINFO_HELP_MEMZERO\n        xor      edi, edi\n        mov      dword ptr [rbx\u002B0x120], edi\n        test     r12, r12\n        je       G_M47366_IG33\n        cmp      dword ptr [rbp-0x2C], 1\n        jne      G_M47366_IG33\n        add      r12, r15\n        mov      rax, r12\n        mov      qword ptr [rbp-0x50], rax\n        mov      rdi, r14\n        cmp      r15, qword ptr [rdi]\n        je       SHORT G_M47366_IG29\n        mov      rcx, qword ptr [rdi]\n        sub      rcx, qword ptr [rdi\u002B0x08]\n        mov      esi, dword ptr [rdi\u002B0x18]\n        mov      dword ptr [rdi\u002B0x1C], esi\n        mov      dword ptr [rdi\u002B0x18], ecx\n        mov      rsi, qword ptr [rdi\u002B0x08]\n        mov      qword ptr [rdi\u002B0x10], rsi\n        mov      rsi, r15\n        sub      rsi, rcx\n        mov      qword ptr [rdi\u002B0x08], rsi\n        mov      ecx, dword ptr [rdi\u002B0x18]\n        mov      esi, ecx\n        sub      esi, dword ptr [rdi\u002B0x1C]\n        cmp      esi, 8\n        jae      SHORT G_M47366_IG29\n        mov      dword ptr [rdi\u002B0x1C], ecx\n \t\t\t\t\t\t;; size=171 bbWeight=0.50 PerfScore 22.62\n G_M47366_IG29:\n        mov      qword ptr [rdi], r12\n        mov      rcx, qword ptr [rdi\u002B0x10]\n        mov      esi, dword ptr [rdi\u002B0x1C]\n        add      rsi, rcx\n        cmp      rsi, r12\n        jae      SHORT G_M47366_IG30\n        mov      esi, dword ptr [rdi\u002B0x18]\n        mov      edx, esi\n        lea      r8, [rcx\u002Brdx]\n        cmp      r8, r15\n        jbe      SHORT G_M47366_IG30\n        sub      r12, rcx\n        cmp      r12, rdx\n        cmovbe   esi, r12d\n        mov      dword ptr [rdi\u002B0x1C], esi\n \t\t\t\t\t\t;; size=45 bbWeight=0.50 PerfScore 6.25\n G_M47366_IG30:\n        mov      rdi, r14\n        lea      rcx, [rbp\u002B0x70]\n        mov      rsi, r15\n        mov      rdx, rax\n        mov      r8, 0xD1FFAB1E      ; code for ZstdSharp.Unsafe.Methods:ZSTD_ldm_fillHashTable(ptr,ptr,ptr,ptr)\n        call     [r8]ZstdSharp.Unsafe.Methods:ZSTD_ldm_fillHashTable(ptr,ptr,ptr,ptr)\n        mov      rax, r14\n        cmp      dword ptr [rbp\u002B0x40], 0\n        je       SHORT G_M47366_IG31\n        xor      ecx, ecx\n        jmp      SHORT G_M47366_IG32\n \t\t\t\t\t\t;; size=39 bbWeight=0.50 PerfScore 4.50\n G_M47366_IG31:\n        mov      r15, qword ptr [rbp-0x50]\n        mov      ecx, r15d\n        sub      ecx, dword ptr [rbx\u002B0xF8]\n \t\t\t\t\t\t;; size=13 bbWeight=0.50 PerfScore 1.62\n G_M47366_IG32:\n        mov      dword ptr [rax\u002B0x30], ecx\n \t\t\t\t\t\t;; size=3 bbWeight=0.50 PerfScore 0.50\n G_M47366_IG33:\n        vmovdqu  ymm0, ymmword ptr [r14]\n        vmovdqu32 ymmword ptr [rbx\u002B0x09A0], ymm0\n        mov      rax, qword ptr [r14\u002B0x20]\n        mov      qword ptr [rbx\u002B0x09C0], rax\n \t\t\t\t\t\t;; size=23 bbWeight=0.50 PerfScore 3.50\n G_M47366_IG34:\n        vmovdqu32 zmm0, zmmword ptr [rbp\u002B0x10]\n        vmovdqu32 zmmword ptr [rbx\u002B0x10], zmm0\n        vmovdqu32 zmm0, zmmword ptr [rbp\u002B0x50]\n        vmovdqu32 zmmword ptr [rbx\u002B0x50], zmm0\n        vmovdqu32 zmm0, zmmword ptr [rbp\u002B0x90]\n        vmovdqu32 zmmword ptr [rbx\u002B0x90], zmm0\n        vmovdqu  ymm0, ymmword ptr [rbp\u002B0xD0]\n        vmovdqu  ymmword ptr [rbx\u002B0xD0], ymm0\n        mov      eax, r13d\n        mov      qword ptr [rbx\u002B0x60], rax\n        xor      eax, eax\n        jmp      SHORT G_M47366_IG36\n \t\t\t\t\t\t;; size=87 bbWeight=0.50 PerfScore 10.75\n G_M47366_IG35:\n        mov      eax, 1\n \t\t\t\t\t\t;; size=5 bbWeight=0.50 PerfScore 0.12\n G_M47366_IG36:\n        vzeroupper \n        add      rsp, 168\n        pop      rbx\n        pop      r12\n        pop      r13\n        pop      r14\n        pop      r15\n        pop      rbp\n        ret      \n \t\t\t\t\t\t;; size=21 bbWeight=1 PerfScore 5.25\n G_M47366_IG37:\n        mov      rax, 0xD1FFAB1E      ; code for System.ThrowHelper:ThrowInvalidOperationException_HandleIsNotInitialized()\n        call     [rax]System.ThrowHelper:ThrowInvalidOperationException_HandleIsNotInitialized()\n        int3     \n \t\t\t\t\t\t;; size=13 bbWeight=0 PerfScore 0.00\n-RWD00  \tdq\t00007E01F04734CAh, 00007E01F04734C8h, 00007E01F04734C8h, 0000000200000002h\n\u002BRWD00  \tdq\t00007EFD50DB14CAh, 00007EFD50DB14C8h, 00007EFD50DB14C8h, 0000000200000002h\n \n \n ; Total bytes of code 1266, prolog size 25, PerfScore 194.42, instruction count 289, allocated bytes for code 1266 (MethodHash=d59846f9) for method ZstdSharp.Unsafe.Methods:ZSTDMT_serialState_reset(ptr,ptr,ZstdSharp.Unsafe.ZSTD_CCtx_params_s,nuint,ptr,nuint,int):int (FullOpts)\n ; ============================================================","Truncated":false,"BaseBytes":1266,"DiffBytes":1266},{"Assembly":"SharpCompress.dasm","Method":"SharpCompress.Compressors.ZStandard.Unsafe.Methods:ZSTD_resetCCtx_internal(ptr,ptr,ulong,nuint,int,int):nuint (FullOpts)","Category":"same-size","Description":"14,418 -\u003E 14,418 bytes (0)","ExtraInfo":null,"Diff":"@@ -4534,7 \u002B4534,7 @@ G_M3166_IG261:\n        call     CORINFO_HELP_THROW\n        int3     \n \t\t\t\t\t\t;; size=52 bbWeight=0 PerfScore 0.00\n-RWD00  \tdq\t0000700ADE5FBD7Ah, 0000700ADE5FBD78h, 0000700ADE5FBD78h, 0000000200000002h\n\u002BRWD00  \tdq\t000074CC925FBD7Ah, 000074CC925FBD78h, 000074CC925FBD78h, 0000000200000002h\n \n \n ; Total bytes of code 14418, prolog size 25, PerfScore 897.54, instruction count 2989, allocated bytes for code 14418 (MethodHash=e940f3a1) for method SharpCompress.Compressors.ZStandard.Unsafe.Methods:ZSTD_resetCCtx_internal(ptr,ptr,ulong,nuint,int,int):nuint (FullOpts)","Truncated":true,"BaseBytes":14418,"DiffBytes":14418},{"Assembly":"Silk.NET.Assimp.dasm","Method":"Silk.NET.Assimp.CustomFileIO:OpenFile(ptr,ptr,ptr):ptr (FullOpts)","Category":"same-size","Description":"1,423 -\u003E 1,423 bytes (0)","ExtraInfo":null,"Diff":"@@ -1,815 \u002B1,815 @@\n ; Assembly listing for method Silk.NET.Assimp.CustomFileIO:OpenFile(ptr,ptr,ptr):ptr (FullOpts)\n ; Emitting BLENDED_CODE for x64 \u002B VEX \u002B EVEX on Unix\n ; FullOpts code\n ; optimized code\n ; rbp based frame\n ; fully interruptible\n ; No PGO data\n ; 0 inlinees with PGO data; 88 single block inlinees; 22 inlinees without PGO data\n ; Final local variable assignments\n ;\n ;  V00 arg0         [V00,T13] (  3,  3   )    long  -\u003E  r14         single-def\n ;  V01 arg1         [V01,T01] (  5,  8   )    long  -\u003E  rbx         single-def\n ;  V02 arg2         [V02,T02] (  5,  8   )    long  -\u003E  r15         single-def\n ;  V03 loc0         [V03,T36] (  2,  2   )     ref  -\u003E  [rbp-0xA8]  class-hnd exact spill-single-def ptr \u003CSilk.NET.Assimp.CustomFileIO\u003E\n ;  V04 loc1         [V04,T00] ( 23, 38.50)     int  -\u003E  r13        \n ;* V05 loc2         [V05    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u003CSystem.Span\u00601[byte]\u003E\n ;* V06 loc3         [V06    ] (  0,  0   )     int  -\u003E  zero-ref    single-def\n ;* V07 loc4         [V07    ] (  0,  0   )  struct (16) zero-ref    \u003CSystem.Span\u00601[char]\u003E\n ;* V08 loc5         [V08    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u003CSystem.Span\u00601[byte]\u003E\n ;  V09 loc6         [V09,T20] (  4,  3   )   ubyte  -\u003E  rbx         single-def\n ;  V10 loc7         [V10,T30] (  3,  2   )   ubyte  -\u003E  r14         single-def\n ;  V11 loc8         [V11,T31] (  3,  2   )   ubyte  -\u003E  r12         single-def\n ;  V12 loc9         [V12,T17] (  5,  3.50)   ubyte  -\u003E  r15         single-def\n ;* V13 loc10        [V13    ] (  0,  0   )     int  -\u003E  zero-ref    single-def\n ;* V14 loc11        [V14    ] (  0,  0   )     int  -\u003E  zero-ref    single-def\n ;  V15 loc12        [V15,T16] (  5,  3.50)     ref  -\u003E  r14         class-hnd single-def \u003CSystem.IO.Stream\u003E\n ;* V16 loc13        [V16    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op \u003CSystem.Runtime.InteropServices.GCHandle\u003E\n ;  V17 loc14        [V17,T25] (  5,  2.50)    long  -\u003E  r15         single-def\n ;* V18 loc15        [V18    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op \u003CSystem.Runtime.InteropServices.GCHandle\u003E\n ;* V19 loc16        [V19    ] (  0,  0   )  struct (16) zero-ref    \u003CSystem.Span\u00601[char]\u003E\n ;* V20 loc17        [V20    ] (  0,  0   )     int  -\u003E  zero-ref    single-def\n ;* V21 loc18        [V21    ] (  0,  0   )  struct (56) zero-ref    do-not-enreg[SF] ld-addr-op \u003CSilk.NET.Assimp.File\u003E\n ;  V22 OutArgs      [V22    ] (  1,  1   )  struct (16) [rsp\u002B0x00]  do-not-enreg[XS] addr-exposed \u0022OutgoingArgSpace\u0022 \u003CUNNAMED\u003E\n ;  V23 tmp1         [V23,T03] (  4,  7   )     ref  -\u003E  r14         single-def \u0022ISINST eval op1\u0022\n ;* V24 tmp2         [V24    ] (  0,  0   )     ref  -\u003E  zero-ref    class-hnd \u0022spilling qmarkNull\u0022 \u003CSilk.NET.Assimp.CustomFileIO\u003E\n ;  V25 tmp3         [V25,T23] (  2,  3   )     ref  -\u003E  [rbp-0xB0]  class-hnd exact spill-single-def ptr \u0022impAppendStmt\u0022 \u003CSystem.Text.UTF8Encoding\u002BUTF8EncodingSealed\u003E\n ;* V26 tmp4         [V26    ] (  0,  0   )  struct (16) zero-ref    \u0022spilled call-like call argument\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V27 tmp5         [V27    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022NewObj constructor temp\u0022 \u003CSystem.Span\u00601[char]\u003E\n ;  V28 tmp6         [V28,T24] (  2,  3   )     ref  -\u003E  r12         class-hnd exact single-def \u0022impAppendStmt\u0022 \u003CSystem.Text.UTF8Encoding\u002BUTF8EncodingSealed\u003E\n ;* V29 tmp7         [V29    ] (  0,  0   )  struct (16) zero-ref    \u0022spilled call-like call argument\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;  V30 tmp8         [V30,T32] (  3,  2   )     int  -\u003E  r14        \n ;  V31 tmp9         [V31,T33] (  3,  2   )     int  -\u003E  r12        \n ;  V32 tmp10        [V32,T34] (  3,  2   )     int  -\u003E  rax        \n ;  V33 tmp11        [V33,T26] (  4,  2.50)     int  -\u003E  rcx        \n ;  V34 tmp12        [V34,T27] (  4,  2.50)     int  -\u003E   r8        \n ;  V35 tmp13        [V35,T08] (  3,  6   )     ref  -\u003E  rax         class-hnd exact single-def \u0022impAppendStmt\u0022 \u003CSilk.NET.Assimp.OpenFileCustomIOCallback\u003E\n ;* V36 tmp14        [V36    ] (  0,  0   )  struct (16) zero-ref    \u0022spilled call-like call argument\u0022 \u003CSystem.ReadOnlySpan\u00601[char]\u003E\n ;  V37 tmp15        [V37,T43] (  3,  0   )     ref  -\u003E  r15         class-hnd exact single-def \u0022NewObj constructor temp\u0022 \u003CSystem.InvalidOperationException\u003E\n ;  V38 tmp16        [V38,T44] (  3,  0   )     ref  -\u003E  rbx         class-hnd exact single-def \u0022NewObj constructor temp\u0022 \u003CSystem.ArgumentException\u003E\n ;  V39 tmp17        [V39,T45] (  3,  0   )     ref  -\u003E  rbx         class-hnd exact single-def \u0022NewObj constructor temp\u0022 \u003CSystem.ArgumentException\u003E\n ;  V40 tmp18        [V40,T21] (  3,  3   )     ref  -\u003E  rax         class-hnd exact single-def \u0022NewArr temp\u0022 \u003Cchar[]\u003E\n ;  V41 tmp19        [V41,T46] (  3,  0   )     ref  -\u003E  rbx         class-hnd exact single-def \u0022NewObj constructor temp\u0022 \u003CSystem.InvalidOperationException\u003E\n ;  V42 tmp20        [V42,T09] (  3,  6   )    long  -\u003E  rdx         \u0022Inlining Arg\u0022\n ;* V43 tmp21        [V43    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op \u0022NewObj constructor temp\u0022 \u003CSystem.Runtime.InteropServices.GCHandle\u003E\n ;* V44 tmp22        [V44    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022dup spill\u0022\n ;* V45 tmp23        [V45    ] (  0,  0   )    long  -\u003E  zero-ref    ld-addr-op \u0022NewObj constructor temp\u0022\n ;* V46 tmp24        [V46    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V47 tmp25        [V47    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V48 tmp26        [V48    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022Inlining Arg\u0022 \u003CSystem.Span\u00601[byte]\u003E\n ;* V49 tmp27        [V49    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022NewObj constructor temp\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V50 tmp28        [V50    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022Inlining Arg\u0022\n ;* V51 tmp29        [V51    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V52 tmp30        [V52    ] (  0,  0   )     int  -\u003E  zero-ref    single-def \u0022Inline return value spill temp\u0022\n ;* V53 tmp31        [V53    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022Inlining Arg\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;  V54 tmp32        [V54    ] (  2,  2   )   byref  -\u003E  [rbp-0x38]  do-not-enreg[] must-init pinned ptr \u0022Inline stloc first use temp\u0022\n ;* V55 tmp33        [V55    ] (  0,  0   )    long  -\u003E  zero-ref    single-def \u0022Inline stloc first use temp\u0022\n ;* V56 tmp34        [V56    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022Inlining Arg\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V57 tmp35        [V57    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V58 tmp36        [V58    ] (  0,  0   )     int  -\u003E  zero-ref    ld-addr-op single-def \u0022Inline ldloca(s) first use temp\u0022\n ;  V59 tmp37        [V59,T11] (  9,  5.50)     int  -\u003E  [rbp-0x3C]  ptr \u0022Inline stloc first use temp\u0022\n ;  V60 tmp38        [V60    ] (  2,  2   )     int  -\u003E  [rbp-0x48]  do-not-enreg[X] must-init addr-exposed ld-addr-op ptr \u0022Inline ldloca(s) first use temp\u0022\n ;  V61 tmp39        [V61    ] (  1,  1   )     int  -\u003E  [rbp-0x50]  do-not-enreg[X] must-init addr-exposed ld-addr-op \u0022Inline ldloca(s) first use temp\u0022\n ;  V62 tmp40        [V62,T18] (  4,  3.50)     int  -\u003E  rcx         single-def \u0022Inline stloc first use temp\u0022\n ;* V63 tmp41        [V63    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022NewObj constructor temp\u0022 \u003CSystem.Span\u00601[char]\u003E\n ;  V64 tmp42        [V64,T37] (  2,  2   )    long  -\u003E  rax         \u0022Inlining Arg\u0022\n ;* V65 tmp43        [V65    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022Inlining Arg\u0022 \u003CSystem.Span\u00601[byte]\u003E\n ;* V66 tmp44        [V66    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022NewObj constructor temp\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V67 tmp45        [V67    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022Inlining Arg\u0022\n ;* V68 tmp46        [V68    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V69 tmp47        [V69    ] (  0,  0   )     int  -\u003E  zero-ref    single-def \u0022Inline return value spill temp\u0022\n ;* V70 tmp48        [V70    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022Inlining Arg\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;  V71 tmp49        [V71    ] (  2,  2   )   byref  -\u003E  [rbp-0x58]  do-not-enreg[] must-init pinned ptr \u0022Inline stloc first use temp\u0022\n ;* V72 tmp50        [V72    ] (  0,  0   )    long  -\u003E  zero-ref    single-def \u0022Inline stloc first use temp\u0022\n ;* V73 tmp51        [V73    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022Inlining Arg\u0022 \u003CSystem.Span\u00601[char]\u003E\n ;  V74 tmp52        [V74    ] (  2,  2   )   byref  -\u003E  [rbp-0x60]  do-not-enreg[] must-init pinned ptr \u0022Inline stloc first use temp\u0022\n ;* V75 tmp53        [V75    ] (  0,  0   )    long  -\u003E  zero-ref    single-def \u0022Inline stloc first use temp\u0022\n ;* V76 tmp54        [V76    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022Inlining Arg\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V77 tmp55        [V77    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022Inlining Arg\u0022 \u003CSystem.Span\u00601[char]\u003E\n ;* V78 tmp56        [V78    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022Inline return value spill temp\u0022\n ;* V79 tmp57        [V79    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V80 tmp58        [V80    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;  V81 tmp59        [V81,T28] (  3,  2.50)     int  -\u003E   r9         ld-addr-op single-def \u0022Inline ldloca(s) first use temp\u0022\n ;  V82 tmp60        [V82,T39] (  2,  1.50)     int  -\u003E  rdi         single-def \u0022Inline stloc first use temp\u0022\n ;  V83 tmp61        [V83    ] (  2,  2   )    long  -\u003E  [rbp-0x68]  do-not-enreg[X] must-init addr-exposed ld-addr-op ptr \u0022Inline ldloca(s) first use temp\u0022\n ;  V84 tmp62        [V84    ] (  2,  2   )    long  -\u003E  [rbp-0x70]  do-not-enreg[X] must-init addr-exposed ld-addr-op ptr \u0022Inline ldloca(s) first use temp\u0022\n ;* V85 tmp63        [V85    ] (  0,  0   )  struct (16) zero-ref    \u0022Inlining Arg\u0022 \u003CSystem.Span\u00601[byte]\u003E\n ;* V86 tmp64        [V86    ] (  0,  0   )  struct (16) zero-ref    \u0022spilled call-like call argument\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V87 tmp65        [V87    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022Inlining Arg\u0022 \u003CSystem.Span\u00601[byte]\u003E\n ;* V88 tmp66        [V88    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022NewObj constructor temp\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V89 tmp67        [V89    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022Inlining Arg\u0022\n ;* V90 tmp68        [V90    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V91 tmp69        [V91    ] (  0,  0   )   ubyte  -\u003E  zero-ref    \u0022Inline return value spill temp\u0022\n ;* V92 tmp70        [V92    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022Inlining Arg\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V93 tmp71        [V93    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022Inlining Arg\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V94 tmp72        [V94    ] (  0,  0   )   ubyte  -\u003E  zero-ref    \u0022Inline return value spill temp\u0022\n ;* V95 tmp73        [V95    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022Inlining Arg\u0022\n ;* V96 tmp74        [V96    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V97 tmp75        [V97    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022Inlining Arg\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V98 tmp76        [V98    ] (  0,  0   )  struct (16) zero-ref    \u0022Inlining Arg\u0022 \u003CSystem.Span\u00601[byte]\u003E\n ;* V99 tmp77        [V99    ] (  0,  0   )  struct (16) zero-ref    \u0022spilled call-like call argument\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V100 tmp78       [V100    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022Inlining Arg\u0022 \u003CSystem.Span\u00601[byte]\u003E\n ;* V101 tmp79       [V101    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022NewObj constructor temp\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V102 tmp80       [V102    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022Inlining Arg\u0022\n ;* V103 tmp81       [V103    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V104 tmp82       [V104    ] (  0,  0   )   ubyte  -\u003E  zero-ref    \u0022Inline return value spill temp\u0022\n ;* V105 tmp83       [V105    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022Inlining Arg\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V106 tmp84       [V106    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022Inlining Arg\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V107 tmp85       [V107    ] (  0,  0   )   ubyte  -\u003E  zero-ref    \u0022Inline return value spill temp\u0022\n ;* V108 tmp86       [V108    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022Inlining Arg\u0022\n ;* V109 tmp87       [V109    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V110 tmp88       [V110    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022Inlining Arg\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V111 tmp89       [V111    ] (  0,  0   )  struct (16) zero-ref    \u0022Inlining Arg\u0022 \u003CSystem.Span\u00601[byte]\u003E\n ;* V112 tmp90       [V112    ] (  0,  0   )  struct (16) zero-ref    \u0022spilled call-like call argument\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V113 tmp91       [V113    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022Inlining Arg\u0022 \u003CSystem.Span\u00601[byte]\u003E\n ;* V114 tmp92       [V114    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022NewObj constructor temp\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V115 tmp93       [V115    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022Inlining Arg\u0022\n ;* V116 tmp94       [V116    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V117 tmp95       [V117    ] (  0,  0   )   ubyte  -\u003E  zero-ref    \u0022Inline return value spill temp\u0022\n ;* V118 tmp96       [V118    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022Inlining Arg\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V119 tmp97       [V119    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022Inlining Arg\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V120 tmp98       [V120    ] (  0,  0   )   ubyte  -\u003E  zero-ref    \u0022Inline return value spill temp\u0022\n ;* V121 tmp99       [V121    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022Inlining Arg\u0022\n ;* V122 tmp100      [V122    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V123 tmp101      [V123    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022Inlining Arg\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V124 tmp102      [V124    ] (  0,  0   )  struct (16) zero-ref    \u0022Inlining Arg\u0022 \u003CSystem.Span\u00601[byte]\u003E\n ;* V125 tmp103      [V125    ] (  0,  0   )  struct (16) zero-ref    \u0022spilled call-like call argument\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V126 tmp104      [V126    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022Inlining Arg\u0022 \u003CSystem.Span\u00601[byte]\u003E\n ;* V127 tmp105      [V127    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022NewObj constructor temp\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V128 tmp106      [V128    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022Inlining Arg\u0022\n ;* V129 tmp107      [V129    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V130 tmp108      [V130    ] (  0,  0   )   ubyte  -\u003E  zero-ref    \u0022Inline return value spill temp\u0022\n ;* V131 tmp109      [V131    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022Inlining Arg\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V132 tmp110      [V132    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022Inlining Arg\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V133 tmp111      [V133    ] (  0,  0   )   ubyte  -\u003E  zero-ref    \u0022Inline return value spill temp\u0022\n ;* V134 tmp112      [V134    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022Inlining Arg\u0022\n ;* V135 tmp113      [V135    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V136 tmp114      [V136    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022Inlining Arg\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V137 tmp115      [V137    ] (  0,  0   )  struct (16) zero-ref    \u0022Inlining Arg\u0022 \u003CSystem.Span\u00601[byte]\u003E\n ;* V138 tmp116      [V138    ] (  0,  0   )  struct (16) zero-ref    \u0022spilled call-like call argument\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V139 tmp117      [V139    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022Inlining Arg\u0022 \u003CSystem.Span\u00601[byte]\u003E\n ;* V140 tmp118      [V140    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022NewObj constructor temp\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V141 tmp119      [V141    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022Inlining Arg\u0022\n ;* V142 tmp120      [V142    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V143 tmp121      [V143    ] (  0,  0   )   ubyte  -\u003E  zero-ref    \u0022Inline return value spill temp\u0022\n ;* V144 tmp122      [V144    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022Inlining Arg\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V145 tmp123      [V145    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022Inlining Arg\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V146 tmp124      [V146    ] (  0,  0   )   ubyte  -\u003E  zero-ref    \u0022Inline return value spill temp\u0022\n ;* V147 tmp125      [V147    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022Inlining Arg\u0022\n ;* V148 tmp126      [V148    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V149 tmp127      [V149    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022Inlining Arg\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V150 tmp128      [V150    ] (  0,  0   )  struct (16) zero-ref    \u0022Inlining Arg\u0022 \u003CSystem.Span\u00601[byte]\u003E\n ;* V151 tmp129      [V151    ] (  0,  0   )  struct (16) zero-ref    \u0022spilled call-like call argument\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V152 tmp130      [V152    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022Inlining Arg\u0022 \u003CSystem.Span\u00601[byte]\u003E\n ;* V153 tmp131      [V153    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022NewObj constructor temp\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V154 tmp132      [V154    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022Inlining Arg\u0022\n ;* V155 tmp133      [V155    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V156 tmp134      [V156    ] (  0,  0   )   ubyte  -\u003E  zero-ref    \u0022Inline return value spill temp\u0022\n ;* V157 tmp135      [V157    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022Inlining Arg\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V158 tmp136      [V158    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022Inlining Arg\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V159 tmp137      [V159    ] (  0,  0   )   ubyte  -\u003E  zero-ref    \u0022Inline return value spill temp\u0022\n ;* V160 tmp138      [V160    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022Inlining Arg\u0022\n ;* V161 tmp139      [V161    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V162 tmp140      [V162    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022Inlining Arg\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V163 tmp141      [V163    ] (  0,  0   )  struct (16) zero-ref    \u0022Inlining Arg\u0022 \u003CSystem.Span\u00601[byte]\u003E\n ;* V164 tmp142      [V164    ] (  0,  0   )  struct (16) zero-ref    \u0022spilled call-like call argument\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V165 tmp143      [V165    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022Inlining Arg\u0022 \u003CSystem.Span\u00601[byte]\u003E\n ;* V166 tmp144      [V166    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022NewObj constructor temp\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V167 tmp145      [V167    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022Inlining Arg\u0022\n ;* V168 tmp146      [V168    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V169 tmp147      [V169    ] (  0,  0   )   ubyte  -\u003E  zero-ref    \u0022Inline return value spill temp\u0022\n ;* V170 tmp148      [V170    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022Inlining Arg\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V171 tmp149      [V171    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022Inlining Arg\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V172 tmp150      [V172    ] (  0,  0   )   ubyte  -\u003E  zero-ref    \u0022Inline return value spill temp\u0022\n ;* V173 tmp151      [V173    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022Inlining Arg\u0022\n ;* V174 tmp152      [V174    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V175 tmp153      [V175    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022Inlining Arg\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V176 tmp154      [V176    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022Inlining Arg\u0022 \u003CSystem.Span\u00601[char]\u003E\n ;* V177 tmp155      [V177    ] (  0,  0   )  struct (16) zero-ref    multireg-arg ld-addr-op \u0022NewObj constructor temp\u0022 \u003CSystem.ReadOnlySpan\u00601[char]\u003E\n ;* V178 tmp156      [V178    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022Inlining Arg\u0022\n ;* V179 tmp157      [V179    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;  V180 tmp158      [V180    ] (  3,  3   )  struct ( 8) [rbp-0x78]  do-not-enreg[XS] addr-exposed ld-addr-op \u0022NewObj constructor temp\u0022 \u003CSystem.Runtime.InteropServices.GCHandle\u003E\n ;* V181 tmp159      [V181    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op \u0022NewObj constructor temp\u0022 \u003CSilk.NET.Assimp.PfnFileReadProc\u003E\n ;* V182 tmp160      [V182    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op \u0022NewObj constructor temp\u0022 \u003CSilk.NET.Assimp.PfnFileReadProc\u003E\n ;* V183 tmp161      [V183    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op \u0022NewObj constructor temp\u0022 \u003CSilk.NET.Assimp.PfnFileTellProc\u003E\n ;* V184 tmp162      [V184    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op \u0022NewObj constructor temp\u0022 \u003CSilk.NET.Assimp.PfnFileTellProc\u003E\n ;* V185 tmp163      [V185    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op \u0022NewObj constructor temp\u0022 \u003CSilk.NET.Assimp.PfnFileFlushProc\u003E\n ;* V186 tmp164      [V186    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op \u0022NewObj constructor temp\u0022 \u003CSilk.NET.Assimp.PfnFileSeek\u003E\n ;* V187 tmp165      [V187    ] (  0,  0   )  struct ( 8) zero-ref    \u0022Inlining Arg\u0022 \u003CSystem.Runtime.InteropServices.GCHandle\u003E\n ;* V188 tmp166      [V188    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;  V189 tmp167      [V189,T15] (  3,  4   )    long  -\u003E  r15         \u0022Single return block return value\u0022\n ;  V190 tmp168      [V190    ] (  3,  3   )  struct (16) [rbp-0x88]  do-not-enreg[XS] must-init addr-exposed \u0022Reverse Pinvoke FrameVar\u0022 \u003CUNNAMED\u003E\n ;  V191 tmp169      [V191,T12] (  5,  5   )   byref  -\u003E  rbx         single-def \u0022field V05._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V192 tmp170      [V192    ] (  0,  0   )     int  -\u003E  zero-ref    single-def \u0022field V05._length (fldOffset=0x8)\u0022 P-INDEP\n ;  V193 tmp171      [V193,T14] (  4,  4   )   byref  -\u003E  [rbp-0xB8]  spill-single-def ptr \u0022field V07._reference (fldOffset=0x0)\u0022 P-INDEP\n ;  V194 tmp172      [V194,T19] (  4,  3.50)     int  -\u003E  [rbp-0x8C]  spill-single-def ptr \u0022field V07._length (fldOffset=0x8)\u0022 P-INDEP\n ;  V195 tmp173      [V195,T07] (  8,  6.50)   byref  -\u003E  r15         single-def \u0022field V08._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V196 tmp174      [V196    ] (  0,  0   )     int  -\u003E  zero-ref    single-def \u0022field V08._length (fldOffset=0x8)\u0022 P-INDEP\n ;  V197 tmp175      [V197,T38] (  3,  1.50)    long  -\u003E  rbx         single-def \u0022field V16._handle (fldOffset=0x0)\u0022 P-INDEP\n ;* V198 tmp176      [V198    ] (  0,  0   )    long  -\u003E  zero-ref    single-def \u0022field V18._handle (fldOffset=0x0)\u0022 P-INDEP\n ;  V199 tmp177      [V199,T29] (  3,  2   )   byref  -\u003E  rax         \u0022field V19._reference (fldOffset=0x0)\u0022 P-INDEP\n ;  V200 tmp178      [V200,T35] (  3,  2   )     int  -\u003E  registers   ptr \u0022field V19._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V201 tmp179      [V201    ] (  0,  0   )   byref  -\u003E  zero-ref    \u0022field V26._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V202 tmp180      [V202    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V26._length (fldOffset=0x8)\u0022 P-INDEP\n ;  V203 tmp181      [V203,T40] (  2,  1   )   byref  -\u003E  rax         single-def \u0022field V27._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V204 tmp182      [V204    ] (  0,  0   )     int  -\u003E  zero-ref    single-def \u0022field V27._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V205 tmp183      [V205    ] (  0,  0   )   byref  -\u003E  zero-ref    \u0022field V29._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V206 tmp184      [V206    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V29._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V207 tmp185      [V207    ] (  0,  0   )   byref  -\u003E  zero-ref    \u0022field V36._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V208 tmp186      [V208    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V36._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V209 tmp187      [V209    ] (  0,  0   )    long  -\u003E  zero-ref    single-def \u0022field V43._handle (fldOffset=0x0)\u0022 P-INDEP\n ;* V210 tmp188      [V210    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V48._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V211 tmp189      [V211    ] (  0,  0   )     int  -\u003E  zero-ref    single-def \u0022field V48._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V212 tmp190      [V212    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V49._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V213 tmp191      [V213    ] (  0,  0   )     int  -\u003E  zero-ref    single-def \u0022field V49._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V214 tmp192      [V214    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V53._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V215 tmp193      [V215    ] (  0,  0   )     int  -\u003E  zero-ref    single-def \u0022field V53._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V216 tmp194      [V216    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V56._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V217 tmp195      [V217    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V56._length (fldOffset=0x8)\u0022 P-INDEP\n ;  V218 tmp196      [V218,T41] (  2,  1   )   byref  -\u003E   r8         single-def \u0022field V63._reference (fldOffset=0x0)\u0022 P-INDEP\n ;  V219 tmp197      [V219,T42] (  2,  1   )     int  -\u003E  rcx         single-def \u0022field V63._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V220 tmp198      [V220    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V65._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V221 tmp199      [V221    ] (  0,  0   )     int  -\u003E  zero-ref    single-def \u0022field V65._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V222 tmp200      [V222    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V66._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V223 tmp201      [V223    ] (  0,  0   )     int  -\u003E  zero-ref    single-def \u0022field V66._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V224 tmp202      [V224    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V70._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V225 tmp203      [V225    ] (  0,  0   )     int  -\u003E  zero-ref    single-def \u0022field V70._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V226 tmp204      [V226    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V73._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V227 tmp205      [V227    ] (  0,  0   )     int  -\u003E  zero-ref    single-def \u0022field V73._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V228 tmp206      [V228    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V76._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V229 tmp207      [V229    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V76._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V230 tmp208      [V230    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V77._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V231 tmp209      [V231    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V77._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V232 tmp210      [V232    ] (  0,  0   )   byref  -\u003E  zero-ref    \u0022field V85._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V233 tmp211      [V233    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V85._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V234 tmp212      [V234    ] (  0,  0   )   byref  -\u003E  zero-ref    \u0022field V86._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V235 tmp213      [V235    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V86._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V236 tmp214      [V236    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V87._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V237 tmp215      [V237    ] (  0,  0   )     int  -\u003E  zero-ref    single-def \u0022field V87._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V238 tmp216      [V238    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V88._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V239 tmp217      [V239    ] (  0,  0   )     int  -\u003E  zero-ref    single-def \u0022field V88._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V240 tmp218      [V240    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V92._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V241 tmp219      [V241    ] (  0,  0   )     int  -\u003E  zero-ref    single-def \u0022field V92._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V242 tmp220      [V242    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V93._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V243 tmp221      [V243    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V93._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V244 tmp222      [V244    ] (  0,  0   )   byref  -\u003E  zero-ref    \u0022field V97._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V245 tmp223      [V245    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V97._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V246 tmp224      [V246    ] (  0,  0   )   byref  -\u003E  zero-ref    \u0022field V98._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V247 tmp225      [V247    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V98._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V248 tmp226      [V248    ] (  0,  0   )   byref  -\u003E  zero-ref    \u0022field V99._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V249 tmp227      [V249    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V99._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V250 tmp228      [V250    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V100._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V251 tmp229      [V251    ] (  0,  0   )     int  -\u003E  zero-ref    single-def \u0022field V100._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V252 tmp230      [V252    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V101._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V253 tmp231      [V253    ] (  0,  0   )     int  -\u003E  zero-ref    single-def \u0022field V101._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V254 tmp232      [V254    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V105._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V255 tmp233      [V255    ] (  0,  0   )     int  -\u003E  zero-ref    single-def \u0022field V105._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V256 tmp234      [V256    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V106._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V257 tmp235      [V257    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V106._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V258 tmp236      [V258    ] (  0,  0   )   byref  -\u003E  zero-ref    \u0022field V110._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V259 tmp237      [V259    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V110._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V260 tmp238      [V260    ] (  0,  0   )   byref  -\u003E  zero-ref    \u0022field V111._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V261 tmp239      [V261    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V111._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V262 tmp240      [V262    ] (  0,  0   )   byref  -\u003E  zero-ref    \u0022field V112._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V263 tmp241      [V263    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V112._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V264 tmp242      [V264    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V113._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V265 tmp243      [V265    ] (  0,  0   )     int  -\u003E  zero-ref    single-def \u0022field V113._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V266 tmp244      [V266    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V114._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V267 tmp245      [V267    ] (  0,  0   )     int  -\u003E  zero-ref    single-def \u0022field V114._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V268 tmp246      [V268    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V118._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V269 tmp247      [V269    ] (  0,  0   )     int  -\u003E  zero-ref    single-def \u0022field V118._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V270 tmp248      [V270    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V119._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V271 tmp249      [V271    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V119._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V272 tmp250      [V272    ] (  0,  0   )   byref  -\u003E  zero-ref    \u0022field V123._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V273 tmp251      [V273    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V123._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V274 tmp252      [V274    ] (  0,  0   )   byref  -\u003E  zero-ref    \u0022field V124._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V275 tmp253      [V275    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V124._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V276 tmp254      [V276    ] (  0,  0   )   byref  -\u003E  zero-ref    \u0022field V125._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V277 tmp255      [V277    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V125._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V278 tmp256      [V278    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V126._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V279 tmp257      [V279    ] (  0,  0   )     int  -\u003E  zero-ref    single-def \u0022field V126._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V280 tmp258      [V280    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V127._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V281 tmp259      [V281    ] (  0,  0   )     int  -\u003E  zero-ref    single-def \u0022field V127._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V282 tmp260      [V282    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V131._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V283 tmp261      [V283    ] (  0,  0   )     int  -\u003E  zero-ref    single-def \u0022field V131._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V284 tmp262      [V284    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V132._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V285 tmp263      [V285    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V132._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V286 tmp264      [V286    ] (  0,  0   )   byref  -\u003E  zero-ref    \u0022field V136._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V287 tmp265      [V287    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V136._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V288 tmp266      [V288    ] (  0,  0   )   byref  -\u003E  zero-ref    \u0022field V137._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V289 tmp267      [V289    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V137._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V290 tmp268      [V290    ] (  0,  0   )   byref  -\u003E  zero-ref    \u0022field V138._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V291 tmp269      [V291    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V138._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V292 tmp270      [V292    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V139._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V293 tmp271      [V293    ] (  0,  0   )     int  -\u003E  zero-ref    single-def \u0022field V139._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V294 tmp272      [V294    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V140._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V295 tmp273      [V295    ] (  0,  0   )     int  -\u003E  zero-ref    single-def \u0022field V140._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V296 tmp274      [V296    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V144._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V297 tmp275      [V297    ] (  0,  0   )     int  -\u003E  zero-ref    single-def \u0022field V144._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V298 tmp276      [V298    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V145._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V299 tmp277      [V299    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V145._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V300 tmp278      [V300    ] (  0,  0   )   byref  -\u003E  zero-ref    \u0022field V149._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V301 tmp279      [V301    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V149._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V302 tmp280      [V302    ] (  0,  0   )   byref  -\u003E  zero-ref    \u0022field V150._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V303 tmp281      [V303    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V150._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V304 tmp282      [V304    ] (  0,  0   )   byref  -\u003E  zero-ref    \u0022field V151._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V305 tmp283      [V305    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V151._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V306 tmp284      [V306    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V152._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V307 tmp285      [V307    ] (  0,  0   )     int  -\u003E  zero-ref    single-def \u0022field V152._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V308 tmp286      [V308    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V153._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V309 tmp287      [V309    ] (  0,  0   )     int  -\u003E  zero-ref    single-def \u0022field V153._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V310 tmp288      [V310    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V157._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V311 tmp289      [V311    ] (  0,  0   )     int  -\u003E  zero-ref    single-def \u0022field V157._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V312 tmp290      [V312    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V158._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V313 tmp291      [V313    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V158._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V314 tmp292      [V314    ] (  0,  0   )   byref  -\u003E  zero-ref    \u0022field V162._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V315 tmp293      [V315    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V162._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V316 tmp294      [V316    ] (  0,  0   )   byref  -\u003E  zero-ref    \u0022field V163._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V317 tmp295      [V317    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V163._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V318 tmp296      [V318    ] (  0,  0   )   byref  -\u003E  zero-ref    \u0022field V164._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V319 tmp297      [V319    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V164._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V320 tmp298      [V320    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V165._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V321 tmp299      [V321    ] (  0,  0   )     int  -\u003E  zero-ref    single-def \u0022field V165._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V322 tmp300      [V322    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V166._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V323 tmp301      [V323    ] (  0,  0   )     int  -\u003E  zero-ref    single-def \u0022field V166._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V324 tmp302      [V324    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V170._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V325 tmp303      [V325    ] (  0,  0   )     int  -\u003E  zero-ref    single-def \u0022field V170._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V326 tmp304      [V326    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V171._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V327 tmp305      [V327    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V171._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V328 tmp306      [V328    ] (  0,  0   )   byref  -\u003E  zero-ref    \u0022field V175._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V329 tmp307      [V329    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V175._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V330 tmp308      [V330    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V176._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V331 tmp309      [V331    ] (  0,  0   )     int  -\u003E  zero-ref    single-def \u0022field V176._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V332 tmp310      [V332    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V177._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V333 tmp311      [V333    ] (  0,  0   )     int  -\u003E  zero-ref    single-def \u0022field V177._length (fldOffset=0x8)\u0022 P-INDEP\n ;  V334 tmp312      [V334    ] (  3,  2.50)    long  -\u003E  [rbp-0x78]  do-not-enreg[X] addr-exposed \u0022field V180._handle (fldOffset=0x0)\u0022 P-DEP\n ;* V335 tmp313      [V335    ] (  0,  0   )    long  -\u003E  zero-ref    single-def \u0022field V181._handle (fldOffset=0x0)\u0022 P-INDEP\n ;* V336 tmp314      [V336    ] (  0,  0   )    long  -\u003E  zero-ref    single-def \u0022field V182._handle (fldOffset=0x0)\u0022 P-INDEP\n ;* V337 tmp315      [V337    ] (  0,  0   )    long  -\u003E  zero-ref    single-def \u0022field V183._handle (fldOffset=0x0)\u0022 P-INDEP\n ;* V338 tmp316      [V338    ] (  0,  0   )    long  -\u003E  zero-ref    single-def \u0022field V184._handle (fldOffset=0x0)\u0022 P-INDEP\n ;* V339 tmp317      [V339    ] (  0,  0   )    long  -\u003E  zero-ref    single-def \u0022field V185._handle (fldOffset=0x0)\u0022 P-INDEP\n ;* V340 tmp318      [V340    ] (  0,  0   )    long  -\u003E  zero-ref    single-def \u0022field V186._handle (fldOffset=0x0)\u0022 P-INDEP\n ;* V341 tmp319      [V341    ] (  0,  0   )    long  -\u003E  zero-ref    single-def \u0022field V187._handle (fldOffset=0x0)\u0022 P-INDEP\n ;* V342 tmp320      [V342    ] (  0,  0   )    long  -\u003E  zero-ref    single-def \u0022V21.[000..008)\u0022\n ;* V343 tmp321      [V343    ] (  0,  0   )    long  -\u003E  zero-ref    single-def \u0022V21.[008..016)\u0022\n ;* V344 tmp322      [V344    ] (  0,  0   )    long  -\u003E  zero-ref    single-def \u0022V21.[016..024)\u0022\n ;* V345 tmp323      [V345    ] (  0,  0   )    long  -\u003E  zero-ref    single-def \u0022V21.[024..032)\u0022\n ;* V346 tmp324      [V346    ] (  0,  0   )    long  -\u003E  zero-ref    single-def \u0022V21.[032..040)\u0022\n ;* V347 tmp325      [V347    ] (  0,  0   )    long  -\u003E  zero-ref    single-def \u0022V21.[040..048)\u0022\n ;* V348 tmp326      [V348    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022V21.[048..056)\u0022\n ;  V349 tmp327      [V349,T04] (  4,  7   )    long  -\u003E  [rbp-0x98]  spill-single-def ptr \u0022Cast away GC\u0022\n ;  V350 tmp328      [V350,T05] (  4,  7   )    long  -\u003E  rbx         \u0022Cast away GC\u0022\n ;  V351 tmp329      [V351,T06] (  4,  7   )    long  -\u003E  [rbp-0xA0]  spill-single-def ptr \u0022Cast away GC\u0022\n ;  V352 cse0        [V352,T22] (  3,  3   )     ref  -\u003E  r12         \u0022CSE #01: moderate\u0022\n ;  V353 rat0        [V353    ] (  1,  1   )    long  -\u003E  [rbp-0x30]  do-not-enreg[X] addr-exposed \u0022GSSecurityCookie\u0022\n ;  V354 rat1        [V354,T10] (  3,  6   )    long  -\u003E  rdi         \u0022ReplaceWithLclVar is creating a new local variable\u0022\n ;\n ; Lcl frame size = 168\n \n G_M44419_IG01:\n        push     rbp\n        push     r15\n        push     r14\n        push     r13\n        push     r12\n        push     rbx\n        sub      rsp, 168\n        lea      rbp, [rsp\u002B0xD0]\n        xor      eax, eax\n        mov      qword ptr [rbp-0x88], rax\n        vxorps   xmm8, xmm8, xmm8\n        vmovdqu32 zmmword ptr [rbp-0x80], zmm8\n        vmovdqa  xmmword ptr [rbp-0x40], xmm8\n        mov      rax, 0xD1FFAB1E\n        mov      qword ptr [rbp-0x30], rax\n        mov      r14, rdi\n        mov      rbx, rsi\n        mov      r15, rdx\n \t\t\t\t\t\t;; size=74 bbWeight=1 PerfScore 13.33\n G_M44419_IG02:\n        lea      rdi, [rbp-0x88]\n        call     CORINFO_HELP_JIT_REVERSE_PINVOKE_ENTER\n        mov      rdx, qword ptr [r14\u002B0x10]\n        test     rdx, rdx\n        je       G_M44419_IG43\n        and      rdx, -2\n        mov      r14, gword ptr [rdx]\n        test     r14, r14\n        je       G_M44419_IG44\n \t\t\t\t\t\t;; size=41 bbWeight=1 PerfScore 8.25\n G_M44419_IG03:\n        mov      rdx, 0xD1FFAB1E      ; Silk.NET.Assimp.CustomFileIO\n        cmp      qword ptr [r14], rdx\n        jne      G_M44419_IG44\n \t\t\t\t\t\t;; size=19 bbWeight=0.50 PerfScore 1.62\n G_M44419_IG04:\n        mov      gword ptr [rbp-0xA8], r14\n        xor      r13d, r13d\n        cmp      byte  ptr [rbx], 0\n        je       SHORT G_M44419_IG06\n        align    [11 bytes for IG05]\n \t\t\t\t\t\t;; size=26 bbWeight=1 PerfScore 4.50\n G_M44419_IG05:\n        inc      r13d\n        movsxd   rdx, r13d\n        cmp      byte  ptr [rbx\u002Brdx], 0\n        jne      SHORT G_M44419_IG05\n \t\t\t\t\t\t;; size=12 bbWeight=4 PerfScore 14.00\n G_M44419_IG06:\n        test     r13d, r13d\n        jl       G_M44419_IG45\n        mov      rdx, 0xD1FFAB1E      ; const ptr\n        mov      r12, gword ptr [rdx]\n        mov      gword ptr [rbp-0xB0], r12\n        mov      bword ptr [rbp-0x38], rbx\n        mov      r8, rbx\n        mov      qword ptr [rbp-0x98], r8\n        lea      rdx, [rbp-0x48]\n        lea      rcx, [rbp-0x50]\n        mov      rdi, r8\n        mov      esi, r13d\n        mov      r9, 0xD1FFAB1E      ; code for System.Text.Unicode.Utf8Utility:GetPointerToFirstInvalidByte(ptr,int,byref,byref):ptr\n        call     [r9]System.Text.Unicode.Utf8Utility:GetPointerToFirstInvalidByte(ptr,int,byref,byref):ptr\n        mov      rsi, qword ptr [rbp-0x98]\n        mov      ecx, eax\n        sub      ecx, esi\n        mov      eax, ecx\n        add      eax, dword ptr [rbp-0x48]\n        mov      dword ptr [rbp-0x3C], eax\n        cmp      ecx, r13d\n        je       SHORT G_M44419_IG08\n \t\t\t\t\t\t;; size=94 bbWeight=1 PerfScore 16.50\n G_M44419_IG07:\n        mov      rdi, gword ptr [rbp-0xB0]\n        mov      edx, r13d\n        mov      r8, 0xD1FFAB1E      ; code for System.Text.Encoding:GetCharCountWithFallback(ptr,int,int):int:this\n        call     [r8]System.Text.Encoding:GetCharCountWithFallback(ptr,int,int):int:this\n        add      eax, dword ptr [rbp-0x3C]\n        mov      esi, eax\n        test     esi, esi\n        mov      dword ptr [rbp-0x3C], esi\n        jl       G_M44419_IG46\n \t\t\t\t\t\t;; size=39 bbWeight=0.50 PerfScore 4.00\n G_M44419_IG08:\n        xor      rdx, rdx\n        mov      bword ptr [rbp-0x38], rdx\n        mov      eax, dword ptr [rbp-0x3C]\n        cmp      eax, 256\n        jg       SHORT G_M44419_IG12\n \t\t\t\t\t\t;; size=16 bbWeight=1 PerfScore 3.50\n G_M44419_IG09:\n        mov      dword ptr [rbp-0x3C], eax\n        mov      esi, eax\n        mov      edi, 2\n        mov      rax, rsi\n        mul      rdx:rax, rdi\n        jb       G_M44419_IG50\n        test     rax, rax\n        je       SHORT G_M44419_IG11\n        add      rax, 15\n        shr      rax, 4\n        add      rsp, 16\n \t\t\t\t\t\t;; size=39 bbWeight=0.50 PerfScore 4.00\n G_M44419_IG10:\n        push     0\n        push     0\n        dec      rax\n        jne      SHORT G_M44419_IG10\n        sub      rsp, 16\n        lea      rax, [rsp\u002B0x10]\n \t\t\t\t\t\t;; size=18 bbWeight=0.50 PerfScore 2.00\n G_M44419_IG11:\n        mov      esi, dword ptr [rbp-0x3C]\n        test     esi, esi\n        jl       G_M44419_IG45\n        mov      ecx, esi\n        mov      r10d, ecx\n        jmp      SHORT G_M44419_IG13\n        align    [0 bytes for IG18]\n \t\t\t\t\t\t;; size=18 bbWeight=0.50 PerfScore 2.38\n G_M44419_IG12:\n        mov      esi, eax\n        mov      rdi, 0xD1FFAB1E      ; char[]\n        call     CORINFO_HELP_NEWARR_1_VC\n        lea      r8, bword ptr [rax\u002B0x10]\n        mov      ecx, dword ptr [rax\u002B0x08]\n        mov      rax, r8\n        mov      r10d, ecx\n \t\t\t\t\t\t;; size=30 bbWeight=0.50 PerfScore 2.25\n G_M44419_IG13:\n        mov      bword ptr [rbp-0xB8], rax\n        mov      dword ptr [rbp-0x8C], r10d\n        mov      bword ptr [rbp-0x58], rbx\n        mov      bword ptr [rbp-0x60], rax\n        mov      r11, rax\n        mov      qword ptr [rbp-0xA0], r11\n        lea      r8, [rbp-0x68]\n        lea      r9, [rbp-0x70]\n        mov      rdi, rbx\n        mov      esi, r13d\n        mov      rdx, r11\n        mov      ecx, r10d\n        mov      r14, 0xD1FFAB1E      ; code for System.Text.Unicode.Utf8Utility:TranscodeToUtf16(ptr,int,ptr,int,byref,byref):int\n        call     [r14]System.Text.Unicode.Utf8Utility:TranscodeToUtf16(ptr,int,ptr,int,byref,byref):int\n        mov      r9d, dword ptr [rbp-0x68]\n        sub      r9d, ebx\n        mov      rdi, qword ptr [rbp-0x70]\n        mov      r14, qword ptr [rbp-0xA0]\n        sub      rdi, r14\n        mov      rsi, rdi\n        shr      rsi, 63\n        add      rdi, rsi\n        sar      rdi, 1\n        cmp      r9d, r13d\n        je       SHORT G_M44419_IG15\n \t\t\t\t\t\t;; size=104 bbWeight=1 PerfScore 16.75\n G_M44419_IG14:\n        mov      dword ptr [rsp], edi\n        mov      dword ptr [rsp\u002B0x08], 1\n        mov      rdi, r12\n        mov      rsi, rbx\n        mov      edx, r13d\n        mov      rcx, r14\n        mov      r8d, dword ptr [rbp-0x8C]\n        mov      rax, 0xD1FFAB1E      ; code for System.Text.Encoding:GetCharsWithFallback(ptr,int,ptr,int,int,int,bool):int:this\n        call     [rax]System.Text.Encoding:GetCharsWithFallback(ptr,int,ptr,int,int,int,bool):int:this\n \t\t\t\t\t\t;; size=42 bbWeight=0.50 PerfScore 3.62\n G_M44419_IG15:\n        xor      rdi, rdi\n        mov      bword ptr [rbp-0x58], rdi\n \t\t\t\t\t\t;; size=6 bbWeight=1 PerfScore 1.25\n G_M44419_IG16:\n        mov      bword ptr [rbp-0x60], rdi\n \t\t\t\t\t\t;; size=4 bbWeight=1 PerfScore 1.00\n G_M44419_IG17:\n        xor      r13d, r13d\n        cmp      byte  ptr [r15], 0\n        je       SHORT G_M44419_IG19\n \t\t\t\t\t\t;; size=9 bbWeight=1 PerfScore 3.25\n G_M44419_IG18:\n        inc      r13d\n        movsxd   rdi, r13d\n        cmp      byte  ptr [r15\u002Brdi], 0\n        jne      SHORT G_M44419_IG18\n \t\t\t\t\t\t;; size=13 bbWeight=4 PerfScore 14.00\n G_M44419_IG19:\n        test     r13d, r13d\n        jl       G_M44419_IG45\n        mov      rdi, r15\n        mov      edx, r13d\n        mov      esi, 43\n        mov      rax, 0xD1FFAB1E      ; code for System.SpanHelpers:NonPackedContainsValueType[byte](byref,byte,int):bool\n        call     [rax]System.SpanHelpers:NonPackedContainsValueType[byte](byref,byte,int):bool\n        mov      ebx, eax\n        mov      rdi, r15\n        mov      edx, r13d\n        mov      esi, 119\n        mov      rax, 0xD1FFAB1E      ; code for System.SpanHelpers:NonPackedContainsValueType[byte](byref,byte,int):bool\n        call     [rax]System.SpanHelpers:NonPackedContainsValueType[byte](byref,byte,int):bool\n        test     eax, eax\n        je       SHORT G_M44419_IG21\n \t\t\t\t\t\t;; size=61 bbWeight=1 PerfScore 10.75\n G_M44419_IG20:\n        mov      r14d, 1\n        jmp      SHORT G_M44419_IG22\n \t\t\t\t\t\t;; size=8 bbWeight=0.50 PerfScore 1.12\n G_M44419_IG21:\n        mov      rdi, r15\n        mov      edx, r13d\n        mov      esi, 87\n        mov      rax, 0xD1FFAB1E      ; code for System.SpanHelpers:NonPackedContainsValueType[byte](byref,byte,int):bool\n        call     [rax]System.SpanHelpers:NonPackedContainsValueType[byte](byref,byte,int):bool\n        mov      r14d, eax\n \t\t\t\t\t\t;; size=26 bbWeight=0.50 PerfScore 2.12\n G_M44419_IG22:\n        movzx    r14, r14b\n        mov      rdi, r15\n        mov      edx, r13d\n        mov      esi, 114\n        mov      rax, 0xD1FFAB1E      ; code for System.SpanHelpers:NonPackedContainsValueType[byte](byref,byte,int):bool\n        call     [rax]System.SpanHelpers:NonPackedContainsValueType[byte](byref,byte,int):bool\n        test     eax, eax\n        je       SHORT G_M44419_IG24\n \t\t\t\t\t\t;; size=31 bbWeight=1 PerfScore 5.50\n G_M44419_IG23:\n        mov      r12d, 1\n        jmp      SHORT G_M44419_IG25\n \t\t\t\t\t\t;; size=8 bbWeight=0.50 PerfScore 1.12\n G_M44419_IG24:\n        mov      rdi, r15\n        mov      edx, r13d\n        mov      esi, 82\n        mov      rax, 0xD1FFAB1E      ; code for System.SpanHelpers:NonPackedContainsValueType[byte](byref,byte,int):bool\n        call     [rax]System.SpanHelpers:NonPackedContainsValueType[byte](byref,byte,int):bool\n        mov      r12d, eax\n \t\t\t\t\t\t;; size=26 bbWeight=0.50 PerfScore 2.12\n G_M44419_IG25:\n        movzx    r12, r12b\n        mov      rdi, r15\n        mov      edx, r13d\n        mov      esi, 97\n        mov      rax, 0xD1FFAB1E      ; code for System.SpanHelpers:NonPackedContainsValueType[byte](byref,byte,int):bool\n        call     [rax]System.SpanHelpers:NonPackedContainsValueType[byte](byref,byte,int):bool\n        test     eax, eax\n        je       SHORT G_M44419_IG27\n \t\t\t\t\t\t;; size=31 bbWeight=1 PerfScore 5.50\n G_M44419_IG26:\n        mov      eax, 1\n        jmp      SHORT G_M44419_IG28\n \t\t\t\t\t\t;; size=7 bbWeight=0.50 PerfScore 1.12\n G_M44419_IG27:\n        mov      rdi, r15\n        mov      edx, r13d\n        mov      esi, 65\n        mov      rax, 0xD1FFAB1E      ; code for System.SpanHelpers:NonPackedContainsValueType[byte](byref,byte,int):bool\n        call     [rax]System.SpanHelpers:NonPackedContainsValueType[byte](byref,byte,int):bool\n \t\t\t\t\t\t;; size=23 bbWeight=0.50 PerfScore 2.00\n G_M44419_IG28:\n        movzx    r15, al\n        test     ebx, ebx\n        je       SHORT G_M44419_IG30\n \t\t\t\t\t\t;; size=8 bbWeight=1 PerfScore 1.50\n G_M44419_IG29:\n        mov      ecx, 3\n        jmp      SHORT G_M44419_IG32\n \t\t\t\t\t\t;; size=7 bbWeight=0.50 PerfScore 1.12\n G_M44419_IG30:\n        mov      ecx, r14d\n        or       ecx, r15d\n        je       SHORT G_M44419_IG31\n        mov      ecx, 2\n        jmp      SHORT G_M44419_IG32\n \t\t\t\t\t\t;; size=15 bbWeight=0.50 PerfScore 1.88\n G_M44419_IG31:\n        test     r12d, r12d\n        je       G_M44419_IG47\n        mov      ecx, 1\n \t\t\t\t\t\t;; size=14 bbWeight=0.50 PerfScore 0.75\n G_M44419_IG32:\n        test     r15d, r15d\n        je       SHORT G_M44419_IG34\n \t\t\t\t\t\t;; size=5 bbWeight=1 PerfScore 1.25\n G_M44419_IG33:\n        test     ebx, ebx\n        jne      SHORT G_M44419_IG34\n        mov      r8d, 6\n        jmp      SHORT G_M44419_IG36\n \t\t\t\t\t\t;; size=12 bbWeight=0.50 PerfScore 1.75\n G_M44419_IG34:\n        or       r12d, r15d\n        je       SHORT G_M44419_IG35\n        mov      r8d, 3\n        jmp      SHORT G_M44419_IG36\n \t\t\t\t\t\t;; size=13 bbWeight=0.50 PerfScore 1.75\n G_M44419_IG35:\n        test     r14d, r14d\n        je       G_M44419_IG48\n        mov      r8d, 2\n \t\t\t\t\t\t;; size=15 bbWeight=0.50 PerfScore 0.75\n G_M44419_IG36:\n        mov      r14, gword ptr [rbp-0xA8]\n        mov      rax, gword ptr [r14\u002B0x08]\n        mov      rsi, bword ptr [rbp-0xB8]\n        mov      edx, dword ptr [rbp-0x8C]\n        mov      rdi, gword ptr [rax\u002B0x10]\n        call     [rax\u002B0x18]Silk.NET.Assimp.OpenFileCustomIOCallback:Invoke(System.ReadOnlySpan\u00601[char],int,int):System.IO.Stream:this\n        mov      r14, rax\n        test     r14, r14\n        je       G_M44419_IG39\n \t\t\t\t\t\t;; size=43 bbWeight=1 PerfScore 11.50\n G_M44419_IG37:\n        test     r15d, ebx\n        je       SHORT G_M44419_IG38\n        mov      rdi, r14\n        xor      esi, esi\n        mov      edx, 2\n        mov      rax, qword ptr [r14]\n        mov      rax, qword ptr [rax\u002B0x68]\n        call     [rax]System.IO.Stream:Seek(long,int):long:this\n \t\t\t\t\t\t;; size=24 bbWeight=0.50 PerfScore 4.50\n G_M44419_IG38:\n        xor      edi, edi\n        mov      qword ptr [rbp-0x78], rdi\n        lea      rdi, [rbp-0x78]\n        mov      rsi, r14\n        mov      edx, 2\n        mov      rax, 0xD1FFAB1E      ; code for System.Runtime.InteropServices.GCHandle:.ctor(System.Object,int):this\n        call     [rax]System.Runtime.InteropServices.GCHandle:.ctor(System.Object,int):this\n        mov      rbx, qword ptr [rbp-0x78]\n        test     rbx, rbx\n        je       G_M44419_IG49\n        mov      edi, 56\n        mov      rax, 0xD1FFAB1E      ; code for Silk.NET.Core.Native.GlobalMemory:Allocate(int):Silk.NET.Core.Native.GlobalMemory\n        call     [rax]Silk.NET.Core.Native.GlobalMemory:Allocate(int):Silk.NET.Core.Native.GlobalMemory\n        mov      rdi, rax\n        mov      rax, 0xD1FFAB1E      ; code for Silk.NET.Core.Native.SilkMarshal:RegisterMemory(Silk.NET.Core.Native.GlobalMemory):nint\n        call     [rax]Silk.NET.Core.Native.SilkMarshal:RegisterMemory(Silk.NET.Core.Native.GlobalMemory):nint\n        mov      r15, rax\n        vmovups  ymm0, ymmword ptr [reloc @RWD00]\n        vmovups  ymmword ptr [r15], ymm0\n        vmovups  xmm0, xmmword ptr [reloc @RWD32]\n        vmovups  xmmword ptr [r15\u002B0x20], xmm0\n        mov      qword ptr [r15\u002B0x30], rbx\n        jmp      SHORT G_M44419_IG40\n \t\t\t\t\t\t;; size=111 bbWeight=0.50 PerfScore 11.50\n G_M44419_IG39:\n        xor      r15d, r15d\n \t\t\t\t\t\t;; size=3 bbWeight=0.50 PerfScore 0.12\n G_M44419_IG40:\n        lea      rdi, [rbp-0x88]\n        call     CORINFO_HELP_JIT_REVERSE_PINVOKE_EXIT\n        mov      rax, r15\n        mov      r9, 0xD1FFAB1E\n        cmp      qword ptr [rbp-0x30], r9\n        je       SHORT G_M44419_IG41\n        call     CORINFO_HELP_FAIL_FAST\n \t\t\t\t\t\t;; size=36 bbWeight=1 PerfScore 5.00\n G_M44419_IG41:\n        nop      \n \t\t\t\t\t\t;; size=1 bbWeight=1 PerfScore 0.25\n G_M44419_IG42:\n        vzeroupper \n        lea      rsp, [rbp-0x28]\n        pop      rbx\n        pop      r12\n        pop      r13\n        pop      r14\n        pop      r15\n        pop      rbp\n        ret      \n \t\t\t\t\t\t;; size=18 bbWeight=1 PerfScore 5.50\n G_M44419_IG43:\n        mov      rax, 0xD1FFAB1E      ; code for System.ThrowHelper:ThrowInvalidOperationException_HandleIsNotInitialized()\n        call     [rax]System.ThrowHelper:ThrowInvalidOperationException_HandleIsNotInitialized()\n        int3     \n \t\t\t\t\t\t;; size=13 bbWeight=0 PerfScore 0.00\n G_M44419_IG44:\n        mov      rdi, 0xD1FFAB1E      ; System.InvalidOperationException\n        call     CORINFO_HELP_NEWSFAST\n        mov      rbx, rax\n        mov      rdi, rbx\n        mov      rsi, 0xD1FFAB1E      ; \u0027Invalid UserData for FileIO.\u0027\n        mov      rax, 0xD1FFAB1E      ; code for System.InvalidOperationException:.ctor(System.String):this\n        call     [rax]System.InvalidOperationException:.ctor(System.String):this\n        mov      rdi, rbx\n        call     CORINFO_HELP_THROW\n        int3     \n \t\t\t\t\t\t;; size=52 bbWeight=0 PerfScore 0.00\n G_M44419_IG45:\n        mov      rax, 0xD1FFAB1E      ; code for System.ThrowHelper:ThrowArgumentOutOfRangeException()\n        call     [rax]System.ThrowHelper:ThrowArgumentOutOfRangeException()\n        int3     \n \t\t\t\t\t\t;; size=13 bbWeight=0 PerfScore 0.00\n G_M44419_IG46:\n        mov      rax, 0xD1FFAB1E      ; code for System.Text.Encoding:ThrowConversionOverflow()\n        call     [rax]System.Text.Encoding:ThrowConversionOverflow()\n        int3     \n \t\t\t\t\t\t;; size=13 bbWeight=0 PerfScore 0.00\n G_M44419_IG47:\n        mov      rdi, 0xD1FFAB1E      ; System.ArgumentException\n        call     CORINFO_HELP_NEWSFAST\n        mov      rbx, rax\n        mov      rdi, rbx\n        mov      rsi, 0xD1FFAB1E      ; \u0027Invalid mode, must have \u0027r\u0027, \u0027w\u0027, \u0027a\u0027, or \u0027\u002B\u0027 set.\u0027\n        mov      rdx, 0xD1FFAB1E      ; \u0027pMode\u0027\n        mov      rax, 0xD1FFAB1E      ; code for System.ArgumentException:.ctor(System.String,System.String):this\n        call     [rax]System.ArgumentException:.ctor(System.String,System.String):this\n        mov      rdi, rbx\n        call     CORINFO_HELP_THROW\n        int3     \n \t\t\t\t\t\t;; size=62 bbWeight=0 PerfScore 0.00\n G_M44419_IG48:\n        mov      rdi, 0xD1FFAB1E      ; System.ArgumentException\n        call     CORINFO_HELP_NEWSFAST\n        mov      rbx, rax\n        mov      rdi, rbx\n        mov      rsi, 0xD1FFAB1E      ; \u0027Invalid mode\u0027\n        mov      rdx, 0xD1FFAB1E      ; \u0027pMode\u0027\n        mov      rax, 0xD1FFAB1E      ; code for System.ArgumentException:.ctor(System.String,System.String):this\n        call     [rax]System.ArgumentException:.ctor(System.String,System.String):this\n        mov      rdi, rbx\n        call     CORINFO_HELP_THROW\n        int3     \n \t\t\t\t\t\t;; size=62 bbWeight=0 PerfScore 0.00\n G_M44419_IG49:\n        mov      rdi, 0xD1FFAB1E      ; System.InvalidOperationException\n        call     CORINFO_HELP_NEWSFAST\n        mov      r15, rax\n        mov      rdi, r15\n        mov      rsi, 0xD1FFAB1E      ; \u0027Failed to allocate GCHandle.\u0027\n        mov      rax, 0xD1FFAB1E      ; code for System.InvalidOperationException:.ctor(System.String):this\n        call     [rax]System.InvalidOperationException:.ctor(System.String):this\n        mov      rdi, r15\n        call     CORINFO_HELP_THROW\n        int3     \n \t\t\t\t\t\t;; size=52 bbWeight=0 PerfScore 0.00\n G_M44419_IG50:\n        call     CORINFO_HELP_OVERFLOW\n        int3     \n \t\t\t\t\t\t;; size=6 bbWeight=0 PerfScore 0.00\n-RWD00  \tdq\t000078EC325A0588h, 000078EC325A05A0h, 000078EC325A05D0h, 000078EC325A05B8h\n-RWD32  \tdq\t000078EC325A0600h, 000078EC325A05E8h\n\u002BRWD00  \tdq\t000077BAABFA0588h, 000077BAABFA05A0h, 000077BAABFA05D0h, 000077BAABFA05B8h\n\u002BRWD32  \tdq\t000077BAABFA0600h, 000077BAABFA05E8h\n \n \n ; Total bytes of code 1423, prolog size 74, PerfScore 196.71, instruction count 341, allocated bytes for code 1423 (MethodHash=5738527c) for method Silk.NET.Assimp.CustomFileIO:OpenFile(ptr,ptr,ptr):ptr (FullOpts)\n ; ============================================================","Truncated":false,"BaseBytes":1423,"DiffBytes":1423},{"Assembly":"SkiaSharp.dasm","Method":"SkiaSharp.SKAbstractManagedWStream:.cctor() (FullOpts)","Category":"same-size","Description":"199 -\u003E 199 bytes (0)","ExtraInfo":null,"Diff":"@@ -1,89 \u002B1,89 @@\n ; Assembly listing for method SkiaSharp.SKAbstractManagedWStream:.cctor() (FullOpts)\n ; Emitting BLENDED_CODE for x64 \u002B VEX \u002B EVEX on Unix\n ; FullOpts code\n ; optimized code\n ; rbp based frame\n ; partially interruptible\n ; No PGO data\n ; Final local variable assignments\n ;\n ;* V00 loc0         [V00    ] (  0,  0   )  struct (32) zero-ref    ld-addr-op \u003CSkiaSharp.SKManagedWStreamDelegates\u003E\n ;  V01 OutArgs      [V01    ] (  1,  1   )  struct (32) [rsp\u002B0x00]  do-not-enreg[XS] addr-exposed \u0022OutgoingArgSpace\u0022 \u003CUNNAMED\u003E\n ;  V02 FramesRoot   [V02,T00] (  6,  6   )    long  -\u003E  rbx         \u0022Pinvoke FrameListRoot\u0022\n ;  V03 PInvokeFrame [V03    ] (  8,  8   )  struct (56) [rbp-0x60]  do-not-enreg[XS] addr-exposed \u0022Pinvoke FrameVar\u0022 \u003CUNNAMED\u003E\n ;* V04 tmp3         [V04    ] (  0,  0   )    long  -\u003E  zero-ref    single-def \u0022field V00.fWrite (fldOffset=0x0)\u0022 P-INDEP\n ;* V05 tmp4         [V05    ] (  0,  0   )    long  -\u003E  zero-ref    single-def \u0022field V00.fFlush (fldOffset=0x8)\u0022 P-INDEP\n ;* V06 tmp5         [V06    ] (  0,  0   )    long  -\u003E  zero-ref    single-def \u0022field V00.fBytesWritten (fldOffset=0x10)\u0022 P-INDEP\n ;* V07 tmp6         [V07    ] (  0,  0   )    long  -\u003E  zero-ref    single-def \u0022field V00.fDestroy (fldOffset=0x18)\u0022 P-INDEP\n ;  V08 cse0         [V08,T01] (  3,  3   )    long  -\u003E  rax         \u0022CSE #01: aggressive\u0022\n ;\n ; Lcl frame size = 88\n \n G_M15798_IG01:\n        push     rbp\n        push     r15\n        push     r14\n        push     r13\n        push     r12\n        push     rbx\n        sub      rsp, 88\n        lea      rbp, [rsp\u002B0x80]\n \t\t\t\t\t\t;; size=22 bbWeight=1 PerfScore 6.75\n G_M15798_IG02:\n        lea      rdi, [rbp-0x60]\n        call     CORINFO_HELP_INIT_PINVOKE_FRAME\n        mov      rbx, rax\n        mov      rax, rsp\n        mov      qword ptr [rbp-0x48], rax\n        mov      rax, rbp\n        mov      qword ptr [rbp-0x38], rax\n        mov      rax, 0xD1FFAB1E      ; data for SkiaSharp.SKAbstractManagedWStream:delegates\n        vmovups  ymm0, ymmword ptr [reloc @RWD00]\n        vmovups  ymmword ptr [rax], ymm0\n        vmovdqu  xmm0, xmmword ptr [rax]\n        vmovdqu  xmmword ptr [rsp], xmm0\n        vmovdqu  xmm0, xmmword ptr [rax\u002B0x10]\n        vmovdqu  xmmword ptr [rsp\u002B0x10], xmm0\n        mov      rax, 0xD1FFAB1E      ; function address\n        mov      qword ptr [rbp-0x50], rax\n        lea      rax, G_M15798_IG05\n        mov      qword ptr [rbp-0x40], rax\n        lea      rax, [rbp-0x60]\n        mov      qword ptr [rbx\u002B0x08], rax\n        mov      byte  ptr [rbx\u002B0x04], 0\n \t\t\t\t\t\t;; size=105 bbWeight=1 PerfScore 19.25\n G_M15798_IG03:\n        mov      rax, 0xD1FFAB1E      ; code for SkiaSharp.SkiaApi:sk_managedwstream_set_procs(SkiaSharp.SKManagedWStreamDelegates)\n \t\t\t\t\t\t;; size=10 bbWeight=1 PerfScore 0.25\n G_M15798_IG04:\n        vzeroupper \n        call     [rax]SkiaSharp.SkiaApi:sk_managedwstream_set_procs(SkiaSharp.SKManagedWStreamDelegates)\n \t\t\t\t\t\t;; size=5 bbWeight=1 PerfScore 4.00\n G_M15798_IG05:\n        mov      byte  ptr [rbx\u002B0x04], 1\n        mov      rcx, 0xD1FFAB1E      ; function address\n        cmp      dword ptr [rcx], 0\n        je       SHORT G_M15798_IG06\n        mov      rdi, 0xD1FFAB1E\n        call     [rdi]CORINFO_HELP_STOP_FOR_GC\n \t\t\t\t\t\t;; size=31 bbWeight=1 PerfScore 7.50\n G_M15798_IG06:\n        mov      rax, qword ptr [rbp-0x58]\n        mov      qword ptr [rbx\u002B0x08], rax\n \t\t\t\t\t\t;; size=8 bbWeight=1 PerfScore 2.00\n G_M15798_IG07:\n        vzeroupper \n        add      rsp, 88\n        pop      rbx\n        pop      r12\n        pop      r13\n        pop      r14\n        pop      r15\n        pop      rbp\n        ret      \n \t\t\t\t\t\t;; size=18 bbWeight=1 PerfScore 5.25\n-RWD00  \tdq\t000075BA43893DF8h, 000075BA43893DE0h, 000075BA43893DB0h, 000075BA43893DC8h\n\u002BRWD00  \tdq\t0000755094693DF8h, 0000755094693DE0h, 0000755094693DB0h, 0000755094693DC8h\n \n \n ; Total bytes of code 199, prolog size 22, PerfScore 45.00, instruction count 49, allocated bytes for code 199 (MethodHash=46bdc249) for method SkiaSharp.SKAbstractManagedWStream:.cctor() (FullOpts)\n ; ============================================================","Truncated":false,"BaseBytes":199,"DiffBytes":199},{"Assembly":"System.Private.CoreLib.dasm","Method":"System.Int64:LeadingZeroCount(long):long (FullOpts)","Category":"improvement","Description":"10 -\u003E 8 bytes (-2)","ExtraInfo":null,"Diff":"@@ -1,27 \u002B1,26 @@\n ; Assembly listing for method System.Int64:LeadingZeroCount(long):long (FullOpts)\n ; Emitting BLENDED_CODE for x64 \u002B VEX \u002B EVEX on Unix\n ; FullOpts code\n ; optimized code\n ; rsp based frame\n ; partially interruptible\n ; No PGO data\n ; Final local variable assignments\n ;\n ;  V00 arg0         [V00,T00] (  3,  3   )    long  -\u003E  rdi         single-def\n ;# V01 OutArgs      [V01    ] (  1,  1   )  struct ( 0) [rsp\u002B0x00]  do-not-enreg[XS] addr-exposed \u0022OutgoingArgSpace\u0022 \u003CEmpty\u003E\n ;\n ; Lcl frame size = 0\n \n G_M31724_IG01:\n \t\t\t\t\t\t;; size=0 bbWeight=1 PerfScore 0.00\n G_M31724_IG02:\n        xor      eax, eax\n        lzcnt    rax, rdi\n-       cdqe     \n-\t\t\t\t\t\t;; size=9 bbWeight=1 PerfScore 2.50\n\u002B\t\t\t\t\t\t;; size=7 bbWeight=1 PerfScore 2.25\n G_M31724_IG03:\n        ret      \n \t\t\t\t\t\t;; size=1 bbWeight=1 PerfScore 1.00\n \n-; Total bytes of code 10, prolog size 0, PerfScore 3.50, instruction count 4, allocated bytes for code 10 (MethodHash=0fae8413) for method System.Int64:LeadingZeroCount(long):long (FullOpts)\n\u002B; Total bytes of code 8, prolog size 0, PerfScore 3.25, instruction count 3, allocated bytes for code 8 (MethodHash=0fae8413) for method System.Int64:LeadingZeroCount(long):long (FullOpts)\n ; ============================================================","Truncated":false,"BaseBytes":10,"DiffBytes":8},{"Assembly":"System.Private.CoreLib.dasm","Method":"System.Runtime.CompilerServices.AsyncProfiler\u002BContinuationWrapper:InitContinuationWrappers():System.Runtime.CompilerServices.AsyncProfiler\u002BContinuationWrapper\u002BContinuationWrapperTable (FullOpts)","Category":"same-size","Description":"79 -\u003E 79 bytes (0)","ExtraInfo":null,"Diff":"@@ -1,76 \u002B1,76 @@\n ; Assembly listing for method System.Runtime.CompilerServices.AsyncProfiler\u002BContinuationWrapper:InitContinuationWrappers():System.Runtime.CompilerServices.AsyncProfiler\u002BContinuationWrapper\u002BContinuationWrapperTable (FullOpts)\n ; Emitting BLENDED_CODE for x64 \u002B VEX \u002B EVEX on Unix\n ; FullOpts code\n ; optimized code\n ; rbp based frame\n ; partially interruptible\n ; No PGO data\n ; 0 inlinees with PGO data; 32 single block inlinees; 0 inlinees without PGO data\n ; Final local variable assignments\n ;\n ;  V00 RetBuf       [V00,T00] (  7,  7   )    long  -\u003E  rdi         single-def\n ;* V01 loc0         [V01    ] (  0,  0   )  struct (256) zero-ref    do-not-enreg[SF] ld-addr-op \u003CSystem.Runtime.CompilerServices.AsyncProfiler\u002BContinuationWrapper\u002BContinuationWrapperTable\u003E\n ;# V02 OutArgs      [V02    ] (  1,  1   )  struct ( 0) [rsp\u002B0x00]  do-not-enreg[XS] addr-exposed \u0022OutgoingArgSpace\u0022 \u003CEmpty\u003E\n ;* V03 tmp1         [V03    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022V01.[000..008)\u0022\n ;* V04 tmp2         [V04    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022V01.[008..016)\u0022\n ;* V05 tmp3         [V05    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022V01.[016..024)\u0022\n ;* V06 tmp4         [V06    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022V01.[024..032)\u0022\n ;* V07 tmp5         [V07    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022V01.[032..040)\u0022\n ;* V08 tmp6         [V08    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022V01.[040..048)\u0022\n ;* V09 tmp7         [V09    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022V01.[048..056)\u0022\n ;* V10 tmp8         [V10    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022V01.[056..064)\u0022\n ;* V11 tmp9         [V11    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022V01.[064..072)\u0022\n ;* V12 tmp10        [V12    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022V01.[072..080)\u0022\n ;* V13 tmp11        [V13    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022V01.[080..088)\u0022\n ;* V14 tmp12        [V14    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022V01.[088..096)\u0022\n ;* V15 tmp13        [V15    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022V01.[096..104)\u0022\n ;* V16 tmp14        [V16    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022V01.[104..112)\u0022\n ;* V17 tmp15        [V17    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022V01.[112..120)\u0022\n ;* V18 tmp16        [V18    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022V01.[120..128)\u0022\n ;* V19 tmp17        [V19    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022V01.[128..136)\u0022\n ;* V20 tmp18        [V20    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022V01.[136..144)\u0022\n ;* V21 tmp19        [V21    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022V01.[144..152)\u0022\n ;* V22 tmp20        [V22    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022V01.[152..160)\u0022\n ;* V23 tmp21        [V23    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022V01.[160..168)\u0022\n ;* V24 tmp22        [V24    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022V01.[168..176)\u0022\n ;* V25 tmp23        [V25    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022V01.[176..184)\u0022\n ;* V26 tmp24        [V26    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022V01.[184..192)\u0022\n ;* V27 tmp25        [V27    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022V01.[192..200)\u0022\n ;* V28 tmp26        [V28    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022V01.[200..208)\u0022\n ;* V29 tmp27        [V29    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022V01.[208..216)\u0022\n ;* V30 tmp28        [V30    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022V01.[216..224)\u0022\n ;* V31 tmp29        [V31    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022V01.[224..232)\u0022\n ;* V32 tmp30        [V32    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022V01.[232..240)\u0022\n ;* V33 tmp31        [V33    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022V01.[240..248)\u0022\n ;* V34 tmp32        [V34    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022V01.[248..256)\u0022\n ;\n ; Lcl frame size = 0\n \n G_M36615_IG01:\n        push     rbp\n        mov      rbp, rsp\n \t\t\t\t\t\t;; size=4 bbWeight=1 PerfScore 1.25\n G_M36615_IG02:\n        vmovups  zmm0, zmmword ptr [reloc @RWD00]\n        vmovups  zmmword ptr [rdi], zmm0\n        vmovups  zmm0, zmmword ptr [reloc @RWD64]\n        vmovups  zmmword ptr [rdi\u002B0x40], zmm0\n        vmovups  zmm0, zmmword ptr [reloc @RWD128]\n        vmovups  zmmword ptr [rdi\u002B0x80], zmm0\n        vmovups  zmm0, zmmword ptr [reloc @RWD192]\n        vmovups  zmmword ptr [rdi\u002B0xC0], zmm0\n        mov      rax, rdi\n \t\t\t\t\t\t;; size=70 bbWeight=1 PerfScore 20.25\n G_M36615_IG03:\n        vzeroupper \n        pop      rbp\n        ret      \n \t\t\t\t\t\t;; size=5 bbWeight=1 PerfScore 2.50\n-RWD00  \tdq\t00007AF27F361350h, 00007AF27F361368h, 00007AF27F361380h, 00007AF27F361398h, 00007AF27F3613B0h, 00007AF27F3613C8h, 00007AF27F3613E0h, 00007AF27F3613F8h\n-RWD64  \tdq\t00007AF27F361410h, 00007AF27F361428h, 00007AF27F361440h, 00007AF27F361458h, 00007AF27F361470h, 00007AF27F361488h, 00007AF27F3614A0h, 00007AF27F3614B8h\n-RWD128 \tdq\t00007AF27F3614D0h, 00007AF27F3614E8h, 00007AF27F361500h, 00007AF27F361518h, 00007AF27F361530h, 00007AF27F361548h, 00007AF27F361560h, 00007AF27F361578h\n-RWD192 \tdq\t00007AF27F361590h, 00007AF27F3615A8h, 00007AF27F3615C0h, 00007AF27F3615D8h, 00007AF27F3615F0h, 00007AF27F361608h, 00007AF27F361620h, 00007AF27F361638h\n\u002BRWD00  \tdq\t00007590D6F51350h, 00007590D6F51368h, 00007590D6F51380h, 00007590D6F51398h, 00007590D6F513B0h, 00007590D6F513C8h, 00007590D6F513E0h, 00007590D6F513F8h\n\u002BRWD64  \tdq\t00007590D6F51410h, 00007590D6F51428h, 00007590D6F51440h, 00007590D6F51458h, 00007590D6F51470h, 00007590D6F51488h, 00007590D6F514A0h, 00007590D6F514B8h\n\u002BRWD128 \tdq\t00007590D6F514D0h, 00007590D6F514E8h, 00007590D6F51500h, 00007590D6F51518h, 00007590D6F51530h, 00007590D6F51548h, 00007590D6F51560h, 00007590D6F51578h\n\u002BRWD192 \tdq\t00007590D6F51590h, 00007590D6F515A8h, 00007590D6F515C0h, 00007590D6F515D8h, 00007590D6F515F0h, 00007590D6F51608h, 00007590D6F51620h, 00007590D6F51638h\n \n \n ; Total bytes of code 79, prolog size 4, PerfScore 24.00, instruction count 14, allocated bytes for code 79 (MethodHash=14f070f8) for method System.Runtime.CompilerServices.AsyncProfiler\u002BContinuationWrapper:InitContinuationWrappers():System.Runtime.CompilerServices.AsyncProfiler\u002BContinuationWrapper\u002BContinuationWrapperTable (FullOpts)\n ; ============================================================","Truncated":false,"BaseBytes":79,"DiffBytes":79},{"Assembly":"System.Runtime.Numerics.dasm","Method":"System.Numerics.BigInteger:GetBitLength():long:this (FullOpts)","Category":"improvement","Description":"172 -\u003E 170 bytes (-2)","ExtraInfo":null,"Diff":"@@ -1,151 \u002B1,150 @@\n ; Assembly listing for method System.Numerics.BigInteger:GetBitLength():long:this (FullOpts)\n ; Emitting BLENDED_CODE for x64 \u002B VEX \u002B EVEX on Unix\n ; FullOpts code\n ; optimized code\n ; rbp based frame\n ; partially interruptible\n ; No PGO data\n ; 0 inlinees with PGO data; 13 single block inlinees; 5 inlinees without PGO data\n ; Final local variable assignments\n ;\n ;  V00 this         [V00,T00] (  4,  4   )   byref  -\u003E  rdi         this single-def\n ;  V01 loc0         [V01,T05] (  4,  2.50)    long  -\u003E  rax        \n ;  V02 loc1         [V02,T04] (  5,  3   )     int  -\u003E  rsi        \n ;  V03 loc2         [V03,T03] (  5,  3.50)     int  -\u003E  rdx        \n ;  V04 loc3         [V04,T01] (  8,  5   )     ref  -\u003E  rdi         class-hnd single-def \u003Cnuint[]\u003E\n ;  V05 loc4         [V05,T06] (  3,  2   )    long  -\u003E  rbx        \n ;# V06 OutArgs      [V06    ] (  1,  1   )  struct ( 0) [rsp\u002B0x00]  do-not-enreg[XS] addr-exposed \u0022OutgoingArgSpace\u0022 \u003CEmpty\u003E\n ;* V07 tmp1         [V07    ] (  0,  0   )  struct (16) zero-ref    \u0022spilled call-like call argument\u0022 \u003CSystem.Span\u00601[nuint]\u003E\n ;* V08 tmp2         [V08    ] (  0,  0   )  struct (16) zero-ref    \u0022spilled call-like call argument\u0022 \u003CSystem.ReadOnlySpan\u00601[nuint]\u003E\n ;  V09 tmp3         [V09,T10] (  2,  1   )     int  -\u003E  rax        \n ;* V10 tmp4         [V10    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V11 tmp5         [V11    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022NewObj constructor temp\u0022 \u003CSystem.Span\u00601[nuint]\u003E\n ;  V12 tmp6         [V12,T02] (  4,  4   )     int  -\u003E  rdx         \u0022Inlining Arg\u0022\n ;* V13 tmp7         [V13    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022Inlining Arg\u0022 \u003CSystem.Span\u00601[nuint]\u003E\n ;* V14 tmp8         [V14    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022NewObj constructor temp\u0022 \u003CSystem.ReadOnlySpan\u00601[nuint]\u003E\n ;* V15 tmp9         [V15    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022Inlining Arg\u0022\n ;* V16 tmp10        [V16    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V17 tmp11        [V17    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022Inline return value spill temp\u0022\n ;* V18 tmp12        [V18    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022Inlining Arg\u0022 \u003CSystem.ReadOnlySpan\u00601[nuint]\u003E\n ;* V19 tmp13        [V19    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022Inlining Arg\u0022 \u003CSystem.ReadOnlySpan\u00601[nuint]\u003E\n ;* V20 tmp14        [V20    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022Inlining Arg\u0022\n ;* V21 tmp15        [V21    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V22 tmp16        [V22    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022Inline return value spill temp\u0022\n ;* V23 tmp17        [V23    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022Inlining Arg\u0022 \u003CSystem.ReadOnlySpan\u00601[nuint]\u003E\n ;* V24 tmp18        [V24    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022Inline return value spill temp\u0022\n ;* V25 tmp19        [V25    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022Inline stloc first use temp\u0022\n ;* V26 tmp20        [V26    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V27 tmp21        [V27    ] (  0,  0   )   byref  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V28 tmp22        [V28    ] (  0,  0   )   ubyte  -\u003E  zero-ref    \u0022Inline return value spill temp\u0022\n ;* V29 tmp23        [V29    ] (  0,  0   )    long  -\u003E  zero-ref    ld-addr-op \u0022Inlining Arg\u0022\n ;* V30 tmp24        [V30    ] (  0,  0   )   byref  -\u003E  zero-ref    \u0022field V07._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V31 tmp25        [V31    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V07._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V32 tmp26        [V32    ] (  0,  0   )   byref  -\u003E  zero-ref    \u0022field V08._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V33 tmp27        [V33    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V08._length (fldOffset=0x8)\u0022 P-INDEP\n ;  V34 tmp28        [V34,T07] (  3,  1.50)   byref  -\u003E  rdi         \u0022field V11._reference (fldOffset=0x0)\u0022 P-INDEP\n ;  V35 tmp29        [V35,T08] (  3,  1.50)     int  -\u003E  rdx         \u0022field V11._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V36 tmp30        [V36    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V13._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V37 tmp31        [V37    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V13._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V38 tmp32        [V38    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V14._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V39 tmp33        [V39    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V14._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V40 tmp34        [V40    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V18._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V41 tmp35        [V41    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V18._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V42 tmp36        [V42    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V19._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V43 tmp37        [V43    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V19._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V44 tmp38        [V44    ] (  0,  0   )   byref  -\u003E  zero-ref    \u0022field V23._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V45 tmp39        [V45    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V23._length (fldOffset=0x8)\u0022 P-INDEP\n ;  V46 cse0         [V46,T09] (  3,  1.50)     int  -\u003E  rax         \u0022CSE #02: moderate\u0022\n ;\n ; Lcl frame size = 8\n \n G_M44111_IG01:\n        push     rbp\n        push     rbx\n        push     rax\n        lea      rbp, [rsp\u002B0x10]\n \t\t\t\t\t\t;; size=8 bbWeight=1 PerfScore 3.50\n G_M44111_IG02:\n        mov      edx, dword ptr [rdi\u002B0x08]\n        mov      rdi, gword ptr [rdi]\n        test     rdi, rdi\n        je       SHORT G_M44111_IG04\n \t\t\t\t\t\t;; size=11 bbWeight=1 PerfScore 5.25\n G_M44111_IG03:\n        mov      esi, dword ptr [rdi\u002B0x08]\n        lea      eax, [rsi-0x01]\n        cmp      eax, dword ptr [rdi\u002B0x08]\n        jae      G_M44111_IG13\n        mov      rax, qword ptr [rdi\u002B8*rax\u002B0x10]\n        jmp      SHORT G_M44111_IG05\n \t\t\t\t\t\t;; size=22 bbWeight=0.50 PerfScore 4.75\n G_M44111_IG04:\n        mov      esi, 1\n        mov      eax, edx\n        neg      eax\n        test     edx, edx\n        cmovge   eax, edx\n        cdqe     \n \t\t\t\t\t\t;; size=16 bbWeight=0.50 PerfScore 0.88\n G_M44111_IG05:\n        mov      ebx, esi\n        shl      rbx, 6\n        xor      ecx, ecx\n        lzcnt    rcx, rax\n-       mov      ecx, ecx\n        sub      rbx, rcx\n        test     edx, edx\n        jge      SHORT G_M44111_IG10\n-\t\t\t\t\t\t;; size=22 bbWeight=1 PerfScore 4.75\n\u002B\t\t\t\t\t\t;; size=20 bbWeight=1 PerfScore 4.50\n G_M44111_IG06:\n        blsr     rdx, rax\n        jne      SHORT G_M44111_IG10\n        dec      esi\n        mov      edx, esi\n        test     rdi, rdi\n        je       SHORT G_M44111_IG07\n        cmp      dword ptr [rdi\u002B0x08], edx\n        jb       SHORT G_M44111_IG12\n        add      rdi, 16\n        jmp      SHORT G_M44111_IG08\n \t\t\t\t\t\t;; size=27 bbWeight=0.50 PerfScore 4.25\n G_M44111_IG07:\n        test     edx, edx\n        jne      SHORT G_M44111_IG12\n        xor      rdi, rdi\n        xor      edx, edx\n \t\t\t\t\t\t;; size=8 bbWeight=0.50 PerfScore 0.88\n G_M44111_IG08:\n        xor      esi, esi\n        mov      rax, 0xD1FFAB1E      ; code for System.SpanHelpers:NonPackedIndexOfValueType[long,System.SpanHelpers\u002BNegate\u00601[long]](byref,long,int):int\n        call     [rax]System.SpanHelpers:NonPackedIndexOfValueType[long,System.SpanHelpers\u002BNegate\u00601[long]](byref,long,int):int\n        test     eax, eax\n        jge      SHORT G_M44111_IG10\n        lea      rax, [rbx-0x01]\n \t\t\t\t\t\t;; size=22 bbWeight=0.50 PerfScore 2.62\n G_M44111_IG09:\n        add      rsp, 8\n        pop      rbx\n        pop      rbp\n        ret      \n \t\t\t\t\t\t;; size=7 bbWeight=0.50 PerfScore 1.12\n G_M44111_IG10:\n        mov      rax, rbx\n \t\t\t\t\t\t;; size=3 bbWeight=0.50 PerfScore 0.12\n G_M44111_IG11:\n        add      rsp, 8\n        pop      rbx\n        pop      rbp\n        ret      \n \t\t\t\t\t\t;; size=7 bbWeight=0.50 PerfScore 1.12\n G_M44111_IG12:\n        mov      rax, 0xD1FFAB1E      ; code for System.ThrowHelper:ThrowArgumentOutOfRangeException()\n        call     [rax]System.ThrowHelper:ThrowArgumentOutOfRangeException()\n        int3     \n \t\t\t\t\t\t;; size=13 bbWeight=0 PerfScore 0.00\n G_M44111_IG13:\n        call     CORINFO_HELP_RNGCHKFAIL\n        int3     \n \t\t\t\t\t\t;; size=6 bbWeight=0 PerfScore 0.00\n \n-; Total bytes of code 172, prolog size 8, PerfScore 29.25, instruction count 62, allocated bytes for code 172 (MethodHash=624f53b0) for method System.Numerics.BigInteger:GetBitLength():long:this (FullOpts)\n\u002B; Total bytes of code 170, prolog size 8, PerfScore 29.00, instruction count 61, allocated bytes for code 170 (MethodHash=624f53b0) for method System.Numerics.BigInteger:GetBitLength():long:this (FullOpts)\n ; ============================================================","Truncated":false,"BaseBytes":172,"DiffBytes":170},{"Assembly":"ZstdSharp.dasm","Method":"ZstdSharp.Unsafe.Methods:ZSTD_resetCCtx_internal(ptr,ptr,ulong,nuint,int,int):nuint (FullOpts)","Category":"same-size","Description":"3,633 -\u003E 3,633 bytes (0)","ExtraInfo":null,"Diff":"@@ -1545,7 \u002B1545,7 @@ G_M60040_IG144:\n        pop      rbp\n        ret      \n \t\t\t\t\t\t;; size=21 bbWeight=1 PerfScore 5.25\n-RWD00  \tdq\t00007E01F04734CAh, 00007E01F04734C8h, 00007E01F04734C8h, 0000000200000002h\n\u002BRWD00  \tdq\t00007EFD50DB14CAh, 00007EFD50DB14C8h, 00007EFD50DB14C8h, 0000000200000002h\n \n \n ; Total bytes of code 3633, prolog size 25, PerfScore 618.17, instruction count 940, allocated bytes for code 3633 (MethodHash=b0cb1577) for method ZstdSharp.Unsafe.Methods:ZSTD_resetCCtx_internal(ptr,ptr,ulong,nuint,int,int):nuint (FullOpts)","Truncated":true,"BaseBytes":3633,"DiffBytes":3633},{"Assembly":"SharpCompress.dasm","Method":"SharpCompress.Compressors.ZStandard.Unsafe.Methods:ZSTD_reset_matchState(ptr,ptr,ptr,int,int,int,int):nuint (FullOpts)","Category":"same-size","Description":"13,312 -\u003E 13,312 bytes (0)","ExtraInfo":null,"Diff":"@@ -4296,7 \u002B4296,7 @@ G_M41884_IG245:\n        call     CORINFO_HELP_THROW\n        int3     \n \t\t\t\t\t\t;; size=52 bbWeight=0 PerfScore 0.00\n-RWD00  \tdq\t0000700ADE5FBD7Ah, 0000700ADE5FBD78h, 0000700ADE5FBD78h, 0000000200000002h\n\u002BRWD00  \tdq\t000074CC925FBD7Ah, 000074CC925FBD78h, 000074CC925FBD78h, 0000000200000002h\n \n \n ; Total bytes of code 13312, prolog size 19, PerfScore 658.88, instruction count 2790, allocated bytes for code 13312 (MethodHash=8fa35c63) for method SharpCompress.Compressors.ZStandard.Unsafe.Methods:ZSTD_reset_matchState(ptr,ptr,ptr,int,int,int,int):nuint (FullOpts)","Truncated":true,"BaseBytes":13312,"DiffBytes":13312},{"Assembly":"SkiaSharp.dasm","Method":"SkiaSharp.SKDrawable:.cctor() (FullOpts)","Category":"same-size","Description":"231 -\u003E 231 bytes (0)","ExtraInfo":null,"Diff":"@@ -1,95 \u002B1,95 @@\n ; Assembly listing for method SkiaSharp.SKDrawable:.cctor() (FullOpts)\n ; Emitting BLENDED_CODE for x64 \u002B VEX \u002B EVEX on Unix\n ; FullOpts code\n ; optimized code\n ; rbp based frame\n ; partially interruptible\n ; No PGO data\n ; Final local variable assignments\n ;\n ;* V00 loc0         [V00    ] (  0,  0   )  struct (40) zero-ref    do-not-enreg[SF] ld-addr-op \u003CSkiaSharp.SKManagedDrawableDelegates\u003E\n ;  V01 OutArgs      [V01    ] (  1,  1   )  struct (40) [rsp\u002B0x00]  do-not-enreg[XS] addr-exposed \u0022OutgoingArgSpace\u0022 \u003CUNNAMED\u003E\n ;  V02 FramesRoot   [V02,T00] (  6,  6   )    long  -\u003E  rbx         \u0022Pinvoke FrameListRoot\u0022\n ;  V03 PInvokeFrame [V03    ] (  8,  8   )  struct (56) [rbp-0x60]  do-not-enreg[XS] addr-exposed \u0022Pinvoke FrameVar\u0022 \u003CUNNAMED\u003E\n ;* V04 tmp3         [V04    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022V00.[000..008)\u0022\n ;* V05 tmp4         [V05    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022V00.[008..016)\u0022\n ;* V06 tmp5         [V06    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022V00.[016..024)\u0022\n ;* V07 tmp6         [V07    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022V00.[024..032)\u0022\n ;* V08 tmp7         [V08    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022V00.[032..040)\u0022\n ;  V09 cse0         [V09,T01] (  3,  3   )    long  -\u003E  rax         \u0022CSE #01: aggressive\u0022\n ;\n ; Lcl frame size = 104\n \n G_M54578_IG01:\n        push     rbp\n        push     r15\n        push     r14\n        push     r13\n        push     r12\n        push     rbx\n        sub      rsp, 104\n        lea      rbp, [rsp\u002B0x90]\n \t\t\t\t\t\t;; size=22 bbWeight=1 PerfScore 6.75\n G_M54578_IG02:\n        lea      rdi, [rbp-0x60]\n        call     CORINFO_HELP_INIT_PINVOKE_FRAME\n        mov      rbx, rax\n        mov      rax, rsp\n        mov      qword ptr [rbp-0x48], rax\n        mov      rax, rbp\n        mov      qword ptr [rbp-0x38], rax\n        mov      rax, 0xD1FFAB1E      ; static handle\n        mov      rcx, 0xD1FFAB1E\n        mov      qword ptr [rax], rcx\n        vmovups  ymm0, ymmword ptr [reloc @RWD00]\n        mov      rcx, 0xD1FFAB1E\n        vmovups  ymmword ptr [rcx], ymm0\n        vmovdqu  xmm0, xmmword ptr [rax]\n        vmovdqu  xmmword ptr [rsp], xmm0\n        vmovdqu  xmm0, xmmword ptr [rax\u002B0x10]\n        vmovdqu  xmmword ptr [rsp\u002B0x10], xmm0\n        mov      rcx, qword ptr [rax\u002B0x20]\n        mov      qword ptr [rsp\u002B0x20], rcx\n        mov      rax, 0xD1FFAB1E      ; function address\n        mov      qword ptr [rbp-0x50], rax\n        lea      rax, G_M54578_IG05\n        mov      qword ptr [rbp-0x40], rax\n        lea      rax, [rbp-0x60]\n        mov      qword ptr [rbx\u002B0x08], rax\n        mov      byte  ptr [rbx\u002B0x04], 0\n \t\t\t\t\t\t;; size=137 bbWeight=1 PerfScore 23.75\n G_M54578_IG03:\n        mov      rax, 0xD1FFAB1E      ; code for SkiaSharp.SkiaApi:sk_manageddrawable_set_procs(SkiaSharp.SKManagedDrawableDelegates)\n \t\t\t\t\t\t;; size=10 bbWeight=1 PerfScore 0.25\n G_M54578_IG04:\n        vzeroupper \n        call     [rax]SkiaSharp.SkiaApi:sk_manageddrawable_set_procs(SkiaSharp.SKManagedDrawableDelegates)\n \t\t\t\t\t\t;; size=5 bbWeight=1 PerfScore 4.00\n G_M54578_IG05:\n        mov      byte  ptr [rbx\u002B0x04], 1\n        mov      rcx, 0xD1FFAB1E      ; function address\n        cmp      dword ptr [rcx], 0\n        je       SHORT G_M54578_IG06\n        mov      rdi, 0xD1FFAB1E\n        call     [rdi]CORINFO_HELP_STOP_FOR_GC\n \t\t\t\t\t\t;; size=31 bbWeight=1 PerfScore 7.50\n G_M54578_IG06:\n        mov      rax, qword ptr [rbp-0x58]\n        mov      qword ptr [rbx\u002B0x08], rax\n \t\t\t\t\t\t;; size=8 bbWeight=1 PerfScore 2.00\n G_M54578_IG07:\n        vzeroupper \n        add      rsp, 104\n        pop      rbx\n        pop      r12\n        pop      r13\n        pop      r14\n        pop      r15\n        pop      rbp\n        ret      \n \t\t\t\t\t\t;; size=18 bbWeight=1 PerfScore 5.25\n-RWD00  \tdq\t000075BA43893C18h, 000075BA43893BD0h, 000075BA43893C30h, 000075BA43893BE8h\n\u002BRWD00  \tdq\t0000755094693C18h, 0000755094693BD0h, 0000755094693C30h, 0000755094693BE8h\n \n \n ; Total bytes of code 231, prolog size 22, PerfScore 49.50, instruction count 54, allocated bytes for code 231 (MethodHash=68ea2acd) for method SkiaSharp.SKDrawable:.cctor() (FullOpts)\n ; ============================================================","Truncated":false,"BaseBytes":231,"DiffBytes":231},{"Assembly":"System.Private.CoreLib.dasm","Method":"System.Int64:PopCount(long):long (FullOpts)","Category":"improvement","Description":"10 -\u003E 8 bytes (-2)","ExtraInfo":null,"Diff":"@@ -1,27 \u002B1,26 @@\n ; Assembly listing for method System.Int64:PopCount(long):long (FullOpts)\n ; Emitting BLENDED_CODE for x64 \u002B VEX \u002B EVEX on Unix\n ; FullOpts code\n ; optimized code\n ; rsp based frame\n ; partially interruptible\n ; No PGO data\n ; Final local variable assignments\n ;\n ;  V00 arg0         [V00,T00] (  3,  3   )    long  -\u003E  rdi         single-def\n ;# V01 OutArgs      [V01    ] (  1,  1   )  struct ( 0) [rsp\u002B0x00]  do-not-enreg[XS] addr-exposed \u0022OutgoingArgSpace\u0022 \u003CEmpty\u003E\n ;\n ; Lcl frame size = 0\n \n G_M45133_IG01:\n \t\t\t\t\t\t;; size=0 bbWeight=1 PerfScore 0.00\n G_M45133_IG02:\n        xor      eax, eax\n        popcnt   rax, rdi\n-       cdqe     \n-\t\t\t\t\t\t;; size=9 bbWeight=1 PerfScore 2.50\n\u002B\t\t\t\t\t\t;; size=7 bbWeight=1 PerfScore 2.25\n G_M45133_IG03:\n        ret      \n \t\t\t\t\t\t;; size=1 bbWeight=1 PerfScore 1.00\n \n-; Total bytes of code 10, prolog size 0, PerfScore 3.50, instruction count 4, allocated bytes for code 10 (MethodHash=cfb14fb2) for method System.Int64:PopCount(long):long (FullOpts)\n\u002B; Total bytes of code 8, prolog size 0, PerfScore 3.25, instruction count 3, allocated bytes for code 8 (MethodHash=cfb14fb2) for method System.Int64:PopCount(long):long (FullOpts)\n ; ============================================================","Truncated":false,"BaseBytes":10,"DiffBytes":8},{"Assembly":"System.Private.CoreLib.dasm","Method":"System.Runtime.CompilerServices.RuntimeAsyncTaskContinuation\u002BTaskContinuationResume:.cctor() (FullOpts)","Category":"same-size","Description":"167 -\u003E 167 bytes (0)","ExtraInfo":null,"Diff":"@@ -1,73 \u002B1,73 @@\n ; Assembly listing for method System.Runtime.CompilerServices.RuntimeAsyncTaskContinuation\u002BTaskContinuationResume:.cctor() (FullOpts)\n ; Emitting BLENDED_CODE for x64 \u002B VEX \u002B EVEX on Unix\n ; FullOpts code\n ; optimized code\n ; rbp based frame\n ; partially interruptible\n ; No PGO data\n ; 0 inlinees with PGO data; 0 single block inlinees; 1 inlinees without PGO data\n ; Final local variable assignments\n ;\n ;* V00 loc0         [V00    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u003CSystem.Runtime.CompilerServices.ResumeInfo\u003E\n ;# V01 OutArgs      [V01    ] (  1,  1   )  struct ( 0) [rsp\u002B0x00]  do-not-enreg[XS] addr-exposed \u0022OutgoingArgSpace\u0022 \u003CEmpty\u003E\n ;  V02 tmp1         [V02,T00] (  4,  8   )     ref  -\u003E  rbx         class-hnd exact single-def \u0022NewObj constructor temp\u0022 \u003CSystem.Threading.SendOrPostCallback\u003E\n ;  V03 tmp2         [V03,T01] (  3,  6   )     ref  -\u003E  rsi         class-hnd exact single-def \u0022Inlining Arg\u0022 \u003CSystem.Runtime.CompilerServices.RuntimeAsyncTaskContinuation\u002BTaskContinuationResume\u002B\u003C\u003Ec\u003E\n ;* V04 tmp3         [V04    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022field V00.Resume (fldOffset=0x0)\u0022 P-INDEP\n ;* V05 tmp4         [V05    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022field V00.DiagnosticIP (fldOffset=0x8)\u0022 P-INDEP\n ;  V06 cse0         [V06,T02] (  2,  2   )    long  -\u003E  rdi         \u0022CSE #01: aggressive\u0022\n ;\n ; Lcl frame size = 8\n \n G_M63124_IG01:\n        push     rbp\n        push     rbx\n        push     rax\n        lea      rbp, [rsp\u002B0x10]\n \t\t\t\t\t\t;; size=8 bbWeight=1 PerfScore 3.50\n G_M63124_IG02:\n        mov      rdi, 0xD1FFAB1E      ; data for System.Runtime.CompilerServices.RuntimeAsyncTaskContinuation\u002BTaskContinuationResume:ResumeInfo\n        vmovsd   xmm0, qword ptr [reloc @RWD00]\n        vmovups  xmmword ptr [rdi], xmm0\n        mov      rdi, 0xD1FFAB1E      ; System.Threading.SendOrPostCallback\n        call     CORINFO_HELP_NEWSFAST\n        mov      rbx, rax\n        mov      rdi, 0xD1FFAB1E      ; global ptr\n        test     byte  ptr [rdi], 1\n        je       SHORT G_M63124_IG05\n \t\t\t\t\t\t;; size=55 bbWeight=1 PerfScore 8.00\n G_M63124_IG03:\n        mov      rdi, 0xD1FFAB1E      ; data for System.Runtime.CompilerServices.RuntimeAsyncTaskContinuation\u002BTaskContinuationResume\u002B\u003C\u003Ec:\u003C\u003E9\n        mov      rsi, gword ptr [rdi]\n        test     rsi, rsi\n        je       SHORT G_M63124_IG06\n        lea      rdi, bword ptr [rbx\u002B0x10]\n        call     CORINFO_HELP_ASSIGN_REF\n        mov      rdi, 0xD1FFAB1E      ; code for System.Runtime.CompilerServices.RuntimeAsyncTaskContinuation\u002BTaskContinuationResume\u002B\u003C\u003Ec:\u003C.cctor\u003Eb__3_0(System.Object):this\n        mov      qword ptr [rbx\u002B0x18], rdi\n        mov      rdi, 0xD1FFAB1E      ; data for System.Runtime.CompilerServices.RuntimeAsyncTaskContinuation\u002BTaskContinuationResume:s_postCallback\n        mov      rsi, rbx\n        call     CORINFO_HELP_ASSIGN_REF\n        nop      \n \t\t\t\t\t\t;; size=60 bbWeight=1 PerfScore 8.00\n G_M63124_IG04:\n        add      rsp, 8\n        pop      rbx\n        pop      rbp\n        ret      \n \t\t\t\t\t\t;; size=7 bbWeight=1 PerfScore 2.25\n G_M63124_IG05:\n        mov      rdi, 0xD1FFAB1E      ; System.Runtime.CompilerServices.RuntimeAsyncTaskContinuation\u002BTaskContinuationResume\u002B\u003C\u003Ec\n        mov      rax, 0xD1FFAB1E      ; code for CORINFO_HELP_GET_GCSTATIC_BASE\n        call     [rax]CORINFO_HELP_GET_GCSTATIC_BASE\n        jmp      SHORT G_M63124_IG03\n \t\t\t\t\t\t;; size=24 bbWeight=0 PerfScore 0.00\n G_M63124_IG06:\n        mov      rax, 0xD1FFAB1E      ; code for System.Delegate:ThrowNullThisInDelegateToInstance()\n        call     [rax]System.Delegate:ThrowNullThisInDelegateToInstance()\n        int3     \n \t\t\t\t\t\t;; size=13 bbWeight=0 PerfScore 0.00\n-RWD00  \tdq\t00007AF27F361728h\n\u002BRWD00  \tdq\t00007590D6F51728h\n \n \n ; Total bytes of code 167, prolog size 8, PerfScore 21.75, instruction count 36, allocated bytes for code 167 (MethodHash=4e05096b) for method System.Runtime.CompilerServices.RuntimeAsyncTaskContinuation\u002BTaskContinuationResume:.cctor() (FullOpts)\n ; ============================================================","Truncated":false,"BaseBytes":167,"DiffBytes":167},{"Assembly":"System.Runtime.Numerics.dasm","Method":"System.Numerics.BigInteger:Log2(System.Numerics.BigInteger):System.Numerics.BigInteger (FullOpts)","Category":"improvement","Description":"179 -\u003E 177 bytes (-2)","ExtraInfo":null,"Diff":"@@ -1,104 \u002B1,103 @@\n ; Assembly listing for method System.Numerics.BigInteger:Log2(System.Numerics.BigInteger):System.Numerics.BigInteger (FullOpts)\n ; Emitting BLENDED_CODE for x64 \u002B VEX \u002B EVEX on Unix\n ; FullOpts code\n ; optimized code\n ; rbp based frame\n ; partially interruptible\n ; No PGO data\n ; 0 inlinees with PGO data; 7 single block inlinees; 0 inlinees without PGO data\n ; Final local variable assignments\n ;\n ;* V00 arg0         [V00    ] (  0,  0   )  struct (16) zero-ref    multireg-arg single-def \u003CSystem.Numerics.BigInteger\u003E\n ;# V01 OutArgs      [V01    ] (  1,  1   )  struct ( 0) [rsp\u002B0x00]  do-not-enreg[XS] addr-exposed \u0022OutgoingArgSpace\u0022 \u003CEmpty\u003E\n ;* V02 tmp1         [V02    ] (  0,  0   )  struct (16) zero-ref    do-not-enreg[SBRM] multireg-ret multireg-dest \u0022Return value temp for multireg return\u0022 \u003CSystem.Numerics.BigInteger\u003E\n ;  V03 tmp2         [V03,T03] (  2,  2   )    long  -\u003E  rax         \u0022impAppendStmt\u0022\n ;* V04 tmp3         [V04    ] (  0,  0   )     ref  -\u003E  zero-ref    class-hnd single-def \u0022dup spill\u0022 \u003Cnuint[]\u003E\n ;* V05 tmp4         [V05    ] (  0,  0   )  struct (16) zero-ref    do-not-enreg[SBRM] multireg-ret multireg-dest \u0022Return value temp for multireg return\u0022 \u003CSystem.Numerics.BigInteger\u003E\n ;  V06 tmp5         [V06,T04] (  2,  2   )    long  -\u003E  rsi         \u0022Inlining Arg\u0022\n ;  V07 tmp6         [V07    ] (  3,  3   )  struct (16) [rbp-0x10]  do-not-enreg[XSR] multireg-ret must-init addr-exposed ld-addr-op \u0022NewObj constructor temp\u0022 \u003CSystem.Numerics.BigInteger\u003E\n ;  V08 tmp7         [V08,T05] (  2,  2   )     int  -\u003E  rsi         \u0022Inlining Arg\u0022\n ;  V09 tmp8         [V09    ] (  3,  3   )  struct (16) [rbp-0x20]  do-not-enreg[XSR] multireg-ret must-init addr-exposed ld-addr-op \u0022NewObj constructor temp\u0022 \u003CSystem.Numerics.BigInteger\u003E\n ;  V10 tmp9         [V10,T00] (  4,  3   )     ref  -\u003E  rdi         single-def \u0022field V00._bits (fldOffset=0x0)\u0022 P-INDEP\n ;  V11 tmp10        [V11,T01] (  3,  2.50)     int  -\u003E  rsi         single-def \u0022field V00._sign (fldOffset=0x8)\u0022 P-INDEP\n ;* V12 tmp11        [V12    ] (  0,  0   )     ref  -\u003E  zero-ref    do-not-enreg[] \u0022field V02._bits (fldOffset=0x0)\u0022 P-DEP\n ;* V13 tmp12        [V13    ] (  0,  0   )     int  -\u003E  zero-ref    do-not-enreg[] \u0022field V02._sign (fldOffset=0x8)\u0022 P-DEP\n ;* V14 tmp13        [V14    ] (  0,  0   )     ref  -\u003E  zero-ref    do-not-enreg[] \u0022field V05._bits (fldOffset=0x0)\u0022 P-DEP\n ;* V15 tmp14        [V15    ] (  0,  0   )     int  -\u003E  zero-ref    do-not-enreg[] \u0022field V05._sign (fldOffset=0x8)\u0022 P-DEP\n ;  V16 tmp15        [V16    ] (  3,  3   )     ref  -\u003E  [rbp-0x10]  do-not-enreg[X] addr-exposed \u0022field V07._bits (fldOffset=0x0)\u0022 P-DEP\n ;  V17 tmp16        [V17    ] (  3,  3   )     int  -\u003E  [rbp-0x08]  do-not-enreg[X] addr-exposed \u0022field V07._sign (fldOffset=0x8)\u0022 P-DEP\n ;  V18 tmp17        [V18    ] (  3,  3   )     ref  -\u003E  [rbp-0x20]  do-not-enreg[X] addr-exposed \u0022field V09._bits (fldOffset=0x0)\u0022 P-DEP\n ;  V19 tmp18        [V19    ] (  3,  3   )     int  -\u003E  [rbp-0x18]  do-not-enreg[X] addr-exposed \u0022field V09._sign (fldOffset=0x8)\u0022 P-DEP\n ;  V20 cse0         [V20,T06] (  3,  1.50)     int  -\u003E  rcx         \u0022CSE #02: aggressive\u0022\n ;  V21 cse1         [V21,T02] (  4,  2   )     int  -\u003E  rsi         \u0022CSE #01: aggressive\u0022\n ;\n ; Lcl frame size = 32\n \n G_M20442_IG01:\n        push     rbp\n        sub      rsp, 32\n        lea      rbp, [rsp\u002B0x20]\n        vxorps   xmm8, xmm8, xmm8\n        vmovdqu  ymmword ptr [rbp-0x20], ymm8\n \t\t\t\t\t\t;; size=20 bbWeight=1 PerfScore 3.08\n G_M20442_IG02:\n        test     esi, esi\n        jl       G_M20442_IG07\n        test     rdi, rdi\n        jne      SHORT G_M20442_IG05\n \t\t\t\t\t\t;; size=13 bbWeight=1 PerfScore 2.50\n G_M20442_IG03:\n        mov      edi, esi\n        or       rdi, 1\n        xor      esi, esi\n        lzcnt    rsi, rdi\n        xor      esi, 63\n        vxorps   xmm0, xmm0, xmm0\n        vmovdqu  xmmword ptr [rbp-0x20], xmm0\n        lea      rdi, [rbp-0x20]\n        mov      rax, 0xD1FFAB1E      ; code for System.Numerics.BigInteger:.ctor(int):this\n        call     [rax]System.Numerics.BigInteger:.ctor(int):this\n        mov      rax, gword ptr [rbp-0x20]\n        mov      rdx, qword ptr [rbp-0x18]\n \t\t\t\t\t\t;; size=49 bbWeight=0.50 PerfScore 5.04\n G_M20442_IG04:\n        add      rsp, 32\n        pop      rbp\n        ret      \n \t\t\t\t\t\t;; size=6 bbWeight=0.50 PerfScore 0.88\n G_M20442_IG05:\n        mov      esi, dword ptr [rdi\u002B0x08]\n        mov      eax, esi\n        lea      ecx, [rsi-0x01]\n        cmp      ecx, esi\n        jae      SHORT G_M20442_IG08\n        mov      esi, ecx\n-       lzcnt    rdi, qword ptr [rdi\u002B8*rsi\u002B0x10]\n-       mov      esi, edi\n\u002B       lzcnt    rsi, qword ptr [rdi\u002B8*rsi\u002B0x10]\n        shl      rax, 6\n        dec      rax\n        xor      rsi, rax\n        vxorps   xmm0, xmm0, xmm0\n        vmovdqu  xmmword ptr [rbp-0x10], xmm0\n        lea      rdi, [rbp-0x10]\n        mov      rax, 0xD1FFAB1E      ; code for System.Numerics.BigInteger:.ctor(long):this\n        call     [rax]System.Numerics.BigInteger:.ctor(long):this\n        mov      rax, gword ptr [rbp-0x10]\n        mov      rdx, qword ptr [rbp-0x08]\n-\t\t\t\t\t\t;; size=66 bbWeight=0.50 PerfScore 8.79\n\u002B\t\t\t\t\t\t;; size=64 bbWeight=0.50 PerfScore 8.67\n G_M20442_IG06:\n        add      rsp, 32\n        pop      rbp\n        ret      \n \t\t\t\t\t\t;; size=6 bbWeight=0.50 PerfScore 0.88\n G_M20442_IG07:\n        mov      rax, 0xD1FFAB1E      ; code for System.ThrowHelper:ThrowValueArgumentOutOfRange_NeedNonNegNumException()\n        call     [rax]System.ThrowHelper:ThrowValueArgumentOutOfRange_NeedNonNegNumException()\n        int3     \n \t\t\t\t\t\t;; size=13 bbWeight=0 PerfScore 0.00\n G_M20442_IG08:\n        call     CORINFO_HELP_RNGCHKFAIL\n        int3     \n \t\t\t\t\t\t;; size=6 bbWeight=0 PerfScore 0.00\n \n-; Total bytes of code 179, prolog size 20, PerfScore 21.17, instruction count 50, allocated bytes for code 179 (MethodHash=3713b025) for method System.Numerics.BigInteger:Log2(System.Numerics.BigInteger):System.Numerics.BigInteger (FullOpts)\n\u002B; Total bytes of code 177, prolog size 20, PerfScore 21.04, instruction count 49, allocated bytes for code 177 (MethodHash=3713b025) for method System.Numerics.BigInteger:Log2(System.Numerics.BigInteger):System.Numerics.BigInteger (FullOpts)\n ; ============================================================","Truncated":false,"BaseBytes":179,"DiffBytes":177},{"Assembly":"ZstdSharp.dasm","Method":"ZstdSharp.Unsafe.Methods:ZSTD_reset_matchState(ptr,ptr,ptr,int,int,int,int):nuint (FullOpts)","Category":"same-size","Description":"2,171 -\u003E 2,171 bytes (0)","ExtraInfo":null,"Diff":"@@ -1,1095 \u002B1,1095 @@\n ; Assembly listing for method ZstdSharp.Unsafe.Methods:ZSTD_reset_matchState(ptr,ptr,ptr,int,int,int,int):nuint (FullOpts)\n ; Emitting BLENDED_CODE for x64 \u002B VEX \u002B EVEX on Unix\n ; FullOpts code\n ; optimized code\n ; rbp based frame\n ; partially interruptible\n ; No PGO data\n ; 0 inlinees with PGO data; 65 single block inlinees; 41 inlinees without PGO data\n ; Final local variable assignments\n ;\n ;  V00 arg0         [V00,T01] ( 20, 14.50)    long  -\u003E  r15         single-def\n ;  V01 arg1         [V01,T00] (219,113.50)    long  -\u003E  rbx         single-def\n ;  V02 arg2         [V02,T02] ( 13,  8.50)    long  -\u003E  r14         single-def\n ;  V03 arg3         [V03,T03] (  4,  3   )     int  -\u003E  r13         single-def\n ;  V04 arg4         [V04,T05] (  3,  2.50)     int  -\u003E  r12         single-def\n ;  V05 arg5         [V05,T04] (  3,  3   )     int  -\u003E   r9         single-def\n ;  V06 arg6         [V06,T31] (  4,  2.50)     int  -\u003E  [rbp\u002B0x10]  single-def\n ;* V07 loc0         [V07    ] (  0,  0   )    long  -\u003E  zero-ref   \n ;  V08 loc1         [V08,T17] (  5,  3   )    long  -\u003E  [rbp-0x30]  spill-single-def\n ;* V09 loc2         [V09    ] (  0,  0   )     int  -\u003E  zero-ref   \n ;* V10 loc3         [V10    ] (  0,  0   )    long  -\u003E  zero-ref   \n ;* V11 loc4         [V11    ] (  0,  0   )    long  -\u003E  zero-ref   \n ;* V12 loc5         [V12    ] (  0,  0   )     int  -\u003E  zero-ref   \n ;# V13 OutArgs      [V13    ] (  1,  1   )  struct ( 0) [rsp\u002B0x00]  do-not-enreg[XS] addr-exposed \u0022OutgoingArgSpace\u0022 \u003CEmpty\u003E\n ;* V14 tmp1         [V14    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022impAppendStmt\u0022\n ;  V15 tmp2         [V15,T44] (  3,  2   )     int  -\u003E  rdi        \n ;* V16 tmp3         [V16    ] (  0,  0   )     int  -\u003E  zero-ref   \n ;* V17 tmp4         [V17    ] (  0,  0   )     int  -\u003E  zero-ref   \n ;* V18 tmp5         [V18    ] (  0,  0   )     int  -\u003E  zero-ref   \n ;* V19 tmp6         [V19    ] (  0,  0   )     int  -\u003E  zero-ref   \n ;  V20 tmp7         [V20,T55] (  3,  1.50)    long  -\u003E  [rbp-0x38] \n ;  V21 tmp8         [V21,T07] (  6,  4   )     int  -\u003E  rdi        \n ;  V22 tmp9         [V22,T56] (  3,  1.50)    long  -\u003E  [rbp-0x40] \n ;  V23 tmp10        [V23,T48] (  2,  2   )    long  -\u003E  rcx         \u0022impAppendStmt\u0022\n ;  V24 tmp11        [V24,T49] (  2,  2   )    long  -\u003E  rcx         \u0022impAppendStmt\u0022\n ;  V25 tmp12        [V25,T50] (  2,  2   )    long  -\u003E  rcx         \u0022impAppendStmt\u0022\n ;  V26 tmp13        [V26,T51] (  2,  2   )    long  -\u003E  rcx         \u0022impAppendStmt\u0022\n ;  V27 tmp14        [V27,T52] (  2,  2   )    long  -\u003E  rcx         \u0022impAppendStmt\u0022\n ;  V28 tmp15        [V28,T53] (  2,  2   )    long  -\u003E  rax         \u0022impAppendStmt\u0022\n ;  V29 tmp16        [V29,T57] (  3,  1.50)     int  -\u003E  rcx        \n ;* V30 tmp17        [V30    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022Inline return value spill temp\u0022\n ;* V31 tmp18        [V31    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022Inline return value spill temp\u0022\n ;* V32 tmp19        [V32    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022Inline return value spill temp\u0022\n ;* V33 tmp20        [V33    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V34 tmp21        [V34    ] (  0,  0   )  struct (40) zero-ref    do-not-enreg[SF] ld-addr-op \u0022Inline ldloca(s) first use temp\u0022 \u003CZstdSharp.Unsafe.ZSTD_window_t\u003E\n ;* V35 tmp22        [V35    ] (  0,  0   )  struct (16) zero-ref    \u0022spilled call-like call argument\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V36 tmp23        [V36    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022NewObj constructor temp\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V37 tmp24        [V37    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022Inlining Arg\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V38 tmp25        [V38    ] (  0,  0   )  struct (16) zero-ref    \u0022spilled call-like call argument\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V39 tmp26        [V39    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022NewObj constructor temp\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V40 tmp27        [V40    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022Inlining Arg\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V41 tmp28        [V41    ] (  0,  0   )  struct (16) zero-ref    \u0022spilled call-like call argument\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V42 tmp29        [V42    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022NewObj constructor temp\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V43 tmp30        [V43    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022Inlining Arg\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;  V44 tmp31        [V44,T45] (  3,  2   )    long  -\u003E  rsi         \u0022Inline return value spill temp\u0022\n ;* V45 tmp32        [V45    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022Inline stloc first use temp\u0022\n ;  V46 tmp33        [V46,T58] (  3,  1.50)    long  -\u003E  rsi         \u0022Inline stloc first use temp\u0022\n ;* V47 tmp34        [V47    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;  V48 tmp35        [V48,T59] (  3,  1.50)    long  -\u003E  rdi         \u0022Inline stloc first use temp\u0022\n ;* V49 tmp36        [V49    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inline stloc first use temp\u0022\n ;* V50 tmp37        [V50    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inline return value spill temp\u0022\n ;  V51 tmp38        [V51,T18] (  3,  3   )    long  -\u003E  rsi         \u0022dup spill\u0022\n ;* V52 tmp39        [V52    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inline stloc first use temp\u0022\n ;  V53 tmp40        [V53,T32] (  4,  2   )    long  -\u003E  rsi         \u0022Inline stloc first use temp\u0022\n ;  V54 tmp41        [V54,T60] (  3,  1.50)    long  -\u003E  rsi         \u0022Inline stloc first use temp\u0022\n ;* V55 tmp42        [V55    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inline stloc first use temp\u0022\n ;  V56 tmp43        [V56,T46] (  3,  2   )    long  -\u003E  rsi         \u0022Inline return value spill temp\u0022\n ;* V57 tmp44        [V57    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022Inline stloc first use temp\u0022\n ;  V58 tmp45        [V58,T61] (  3,  1.50)    long  -\u003E  rsi         \u0022Inline stloc first use temp\u0022\n ;* V59 tmp46        [V59    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;  V60 tmp47        [V60,T62] (  3,  1.50)    long  -\u003E  rdi         \u0022Inline stloc first use temp\u0022\n ;* V61 tmp48        [V61    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inline stloc first use temp\u0022\n ;* V62 tmp49        [V62    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inline return value spill temp\u0022\n ;  V63 tmp50        [V63,T19] (  3,  3   )    long  -\u003E  rsi         \u0022dup spill\u0022\n ;* V64 tmp51        [V64    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inline stloc first use temp\u0022\n ;  V65 tmp52        [V65,T33] (  4,  2   )    long  -\u003E  rsi         \u0022Inline stloc first use temp\u0022\n ;  V66 tmp53        [V66,T63] (  3,  1.50)    long  -\u003E  rsi         \u0022Inline stloc first use temp\u0022\n ;* V67 tmp54        [V67    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inline stloc first use temp\u0022\n ;  V68 tmp55        [V68,T47] (  3,  2   )    long  -\u003E  rsi         \u0022Inline return value spill temp\u0022\n ;* V69 tmp56        [V69    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022Inline stloc first use temp\u0022\n ;  V70 tmp57        [V70,T64] (  3,  1.50)    long  -\u003E  rsi         \u0022Inline stloc first use temp\u0022\n ;* V71 tmp58        [V71    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;  V72 tmp59        [V72,T65] (  3,  1.50)    long  -\u003E  rdi         \u0022Inline stloc first use temp\u0022\n ;* V73 tmp60        [V73    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inline stloc first use temp\u0022\n ;* V74 tmp61        [V74    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inline return value spill temp\u0022\n ;  V75 tmp62        [V75,T20] (  3,  3   )    long  -\u003E  rsi         \u0022dup spill\u0022\n ;* V76 tmp63        [V76    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inline stloc first use temp\u0022\n ;  V77 tmp64        [V77,T34] (  4,  2   )    long  -\u003E  rsi         \u0022Inline stloc first use temp\u0022\n ;  V78 tmp65        [V78,T66] (  3,  1.50)    long  -\u003E  rsi         \u0022Inline stloc first use temp\u0022\n ;* V79 tmp66        [V79    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inline stloc first use temp\u0022\n ;* V80 tmp67        [V80    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V81 tmp68        [V81    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V82 tmp69        [V82    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022Inline return value spill temp\u0022\n ;  V83 tmp70        [V83,T54] (  2,  2   )     int  -\u003E  rdi         \u0022Inlining Arg\u0022\n ;* V84 tmp71        [V84    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022Inline return value spill temp\u0022\n ;  V85 tmp72        [V85,T30] (  5,  2.50)    long  -\u003E  rax         \u0022Inline stloc first use temp\u0022\n ;* V86 tmp73        [V86    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inline stloc first use temp\u0022\n ;* V87 tmp74        [V87    ] (  0,  0   )    long  -\u003E  zero-ref   \n ;* V88 tmp75        [V88    ] (  0,  0   )     int  -\u003E  zero-ref   \n ;* V89 tmp76        [V89    ] (  0,  0   )    long  -\u003E  zero-ref   \n ;* V90 tmp77        [V90    ] (  0,  0   )     int  -\u003E  zero-ref   \n ;  V91 tmp78        [V91,T111] (  2,  1   )    long  -\u003E  rdx        \n ;* V92 tmp79        [V92    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inline stloc first use temp\u0022\n ;  V93 tmp80        [V93,T06] (  8,  4   )    long  -\u003E  r12         \u0022Inline return value spill temp\u0022\n ;* V94 tmp81        [V94    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inline return value spill temp\u0022\n ;  V95 tmp82        [V95,T21] (  3,  3   )    long  -\u003E  rdx         \u0022dup spill\u0022\n ;* V96 tmp83        [V96    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inline stloc first use temp\u0022\n ;  V97 tmp84        [V97,T35] (  4,  2   )    long  -\u003E  rdx         \u0022Inline stloc first use temp\u0022\n ;  V98 tmp85        [V98,T67] (  3,  1.50)    long  -\u003E  rdx         \u0022Inline stloc first use temp\u0022\n ;* V99 tmp86        [V99    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inline stloc first use temp\u0022\n ;  V100 tmp87       [V100,T68] (  3,  1.50)    long  -\u003E  r12         \u0022Inline return value spill temp\u0022\n ;  V101 tmp88       [V101,T09] (  6,  3   )    long  -\u003E  r12         \u0022Inline stloc first use temp\u0022\n ;* V102 tmp89       [V102    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inline stloc first use temp\u0022\n ;* V103 tmp90       [V103    ] (  0,  0   )   ubyte  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V104 tmp91       [V104    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V105 tmp92       [V105    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inline stloc first use temp\u0022\n ;  V106 tmp93       [V106,T69] (  3,  1.50)    long  -\u003E  rsi         \u0022Inline return value spill temp\u0022\n ;  V107 tmp94       [V107,T22] (  3,  3   )    long  -\u003E  rdi         \u0022Inlining Arg\u0022\n ;* V108 tmp95       [V108    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inline return value spill temp\u0022\n ;  V109 tmp96       [V109,T23] (  3,  3   )    long  -\u003E  rsi         \u0022dup spill\u0022\n ;* V110 tmp97       [V110    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inline stloc first use temp\u0022\n ;  V111 tmp98       [V111,T36] (  4,  2   )    long  -\u003E  rsi         \u0022Inline stloc first use temp\u0022\n ;  V112 tmp99       [V112,T70] (  3,  1.50)    long  -\u003E  rsi         \u0022Inline stloc first use temp\u0022\n ;* V113 tmp100      [V113    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inline stloc first use temp\u0022\n ;  V114 tmp101      [V114,T71] (  3,  1.50)    long  -\u003E  rsi         \u0022Inline return value spill temp\u0022\n ;  V115 tmp102      [V115,T10] (  6,  3   )    long  -\u003E  rsi         \u0022Inline stloc first use temp\u0022\n ;* V116 tmp103      [V116    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inline stloc first use temp\u0022\n ;* V117 tmp104      [V117    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V118 tmp105      [V118    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V119 tmp106      [V119    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inline stloc first use temp\u0022\n ;  V120 tmp107      [V120,T72] (  3,  1.50)    long  -\u003E  rdx         \u0022Inline return value spill temp\u0022\n ;* V121 tmp108      [V121    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V122 tmp109      [V122    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inline return value spill temp\u0022\n ;  V123 tmp110      [V123,T24] (  3,  3   )    long  -\u003E  rdx         \u0022dup spill\u0022\n ;* V124 tmp111      [V124    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inline stloc first use temp\u0022\n ;  V125 tmp112      [V125,T37] (  4,  2   )    long  -\u003E  rdx         \u0022Inline stloc first use temp\u0022\n ;  V126 tmp113      [V126,T73] (  3,  1.50)    long  -\u003E  rdx         \u0022Inline stloc first use temp\u0022\n ;* V127 tmp114      [V127    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inline stloc first use temp\u0022\n ;  V128 tmp115      [V128,T74] (  3,  1.50)    long  -\u003E  rdx         \u0022Inline return value spill temp\u0022\n ;  V129 tmp116      [V129,T11] (  6,  3   )    long  -\u003E  rdx         \u0022Inline stloc first use temp\u0022\n ;* V130 tmp117      [V130    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inline stloc first use temp\u0022\n ;* V131 tmp118      [V131    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inline stloc first use temp\u0022\n ;  V132 tmp119      [V132,T75] (  3,  1.50)    long  -\u003E  rdx         \u0022Inline return value spill temp\u0022\n ;* V133 tmp120      [V133    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V134 tmp121      [V134    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inline return value spill temp\u0022\n ;  V135 tmp122      [V135,T25] (  3,  3   )    long  -\u003E  rdx         \u0022dup spill\u0022\n ;* V136 tmp123      [V136    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inline stloc first use temp\u0022\n ;  V137 tmp124      [V137,T38] (  4,  2   )    long  -\u003E  rdx         \u0022Inline stloc first use temp\u0022\n ;  V138 tmp125      [V138,T76] (  3,  1.50)    long  -\u003E  rdx         \u0022Inline stloc first use temp\u0022\n ;* V139 tmp126      [V139    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inline stloc first use temp\u0022\n ;  V140 tmp127      [V140,T77] (  3,  1.50)    long  -\u003E  rdx         \u0022Inline return value spill temp\u0022\n ;  V141 tmp128      [V141,T12] (  6,  3   )    long  -\u003E  rdx         \u0022Inline stloc first use temp\u0022\n ;* V142 tmp129      [V142    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inline stloc first use temp\u0022\n ;* V143 tmp130      [V143    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inline stloc first use temp\u0022\n ;  V144 tmp131      [V144,T78] (  3,  1.50)    long  -\u003E  rdx         \u0022Inline return value spill temp\u0022\n ;* V145 tmp132      [V145    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V146 tmp133      [V146    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inline return value spill temp\u0022\n ;  V147 tmp134      [V147,T26] (  3,  3   )    long  -\u003E  rdx         \u0022dup spill\u0022\n ;* V148 tmp135      [V148    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inline stloc first use temp\u0022\n ;  V149 tmp136      [V149,T39] (  4,  2   )    long  -\u003E  rdx         \u0022Inline stloc first use temp\u0022\n ;  V150 tmp137      [V150,T79] (  3,  1.50)    long  -\u003E  rdx         \u0022Inline stloc first use temp\u0022\n ;* V151 tmp138      [V151    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inline stloc first use temp\u0022\n ;  V152 tmp139      [V152,T80] (  3,  1.50)    long  -\u003E  rdx         \u0022Inline return value spill temp\u0022\n ;  V153 tmp140      [V153,T13] (  6,  3   )    long  -\u003E  rdx         \u0022Inline stloc first use temp\u0022\n ;* V154 tmp141      [V154    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inline stloc first use temp\u0022\n ;* V155 tmp142      [V155    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inline stloc first use temp\u0022\n ;  V156 tmp143      [V156,T81] (  3,  1.50)    long  -\u003E  rdx         \u0022Inline return value spill temp\u0022\n ;* V157 tmp144      [V157    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V158 tmp145      [V158    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inline return value spill temp\u0022\n ;  V159 tmp146      [V159,T27] (  3,  3   )    long  -\u003E  rdx         \u0022dup spill\u0022\n ;* V160 tmp147      [V160    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inline stloc first use temp\u0022\n ;  V161 tmp148      [V161,T40] (  4,  2   )    long  -\u003E  rdx         \u0022Inline stloc first use temp\u0022\n ;  V162 tmp149      [V162,T82] (  3,  1.50)    long  -\u003E  rdx         \u0022Inline stloc first use temp\u0022\n ;* V163 tmp150      [V163    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inline stloc first use temp\u0022\n ;  V164 tmp151      [V164,T83] (  3,  1.50)    long  -\u003E  rdx         \u0022Inline return value spill temp\u0022\n ;  V165 tmp152      [V165,T14] (  6,  3   )    long  -\u003E  rdx         \u0022Inline stloc first use temp\u0022\n ;* V166 tmp153      [V166    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inline stloc first use temp\u0022\n ;* V167 tmp154      [V167    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inline stloc first use temp\u0022\n ;  V168 tmp155      [V168,T84] (  3,  1.50)    long  -\u003E  rdx         \u0022Inline return value spill temp\u0022\n ;* V169 tmp156      [V169    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V170 tmp157      [V170    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inline return value spill temp\u0022\n ;  V171 tmp158      [V171,T28] (  3,  3   )    long  -\u003E  rdx         \u0022dup spill\u0022\n ;* V172 tmp159      [V172    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inline stloc first use temp\u0022\n ;  V173 tmp160      [V173,T41] (  4,  2   )    long  -\u003E  rdx         \u0022Inline stloc first use temp\u0022\n ;  V174 tmp161      [V174,T85] (  3,  1.50)    long  -\u003E  rdx         \u0022Inline stloc first use temp\u0022\n ;* V175 tmp162      [V175    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inline stloc first use temp\u0022\n ;  V176 tmp163      [V176,T86] (  3,  1.50)    long  -\u003E  rdx         \u0022Inline return value spill temp\u0022\n ;  V177 tmp164      [V177,T15] (  6,  3   )    long  -\u003E  rdx         \u0022Inline stloc first use temp\u0022\n ;* V178 tmp165      [V178    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inline stloc first use temp\u0022\n ;* V179 tmp166      [V179    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inline stloc first use temp\u0022\n ;  V180 tmp167      [V180,T87] (  3,  1.50)    long  -\u003E  rcx         \u0022Inline return value spill temp\u0022\n ;* V181 tmp168      [V181    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V182 tmp169      [V182    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inline return value spill temp\u0022\n ;  V183 tmp170      [V183,T29] (  3,  3   )    long  -\u003E  rcx         \u0022dup spill\u0022\n ;* V184 tmp171      [V184    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inline stloc first use temp\u0022\n ;  V185 tmp172      [V185,T42] (  4,  2   )    long  -\u003E  rcx         \u0022Inline stloc first use temp\u0022\n ;  V186 tmp173      [V186,T88] (  3,  1.50)    long  -\u003E  rcx         \u0022Inline stloc first use temp\u0022\n ;* V187 tmp174      [V187    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inline stloc first use temp\u0022\n ;  V188 tmp175      [V188,T89] (  3,  1.50)    long  -\u003E  rcx         \u0022Inline return value spill temp\u0022\n ;  V189 tmp176      [V189,T16] (  6,  3   )    long  -\u003E  rcx         \u0022Inline stloc first use temp\u0022\n ;* V190 tmp177      [V190    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Inline stloc first use temp\u0022\n ;* V191 tmp178      [V191    ] (  0,  0   )   byref  -\u003E  zero-ref    \u0022field V35._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V192 tmp179      [V192    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V35._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V193 tmp180      [V193    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V36._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V194 tmp181      [V194    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V36._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V195 tmp182      [V195    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V37._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V196 tmp183      [V196    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V37._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V197 tmp184      [V197    ] (  0,  0   )   byref  -\u003E  zero-ref    \u0022field V38._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V198 tmp185      [V198    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V38._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V199 tmp186      [V199    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V39._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V200 tmp187      [V200    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V39._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V201 tmp188      [V201    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V40._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V202 tmp189      [V202    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V40._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V203 tmp190      [V203    ] (  0,  0   )   byref  -\u003E  zero-ref    \u0022field V41._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V204 tmp191      [V204    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V41._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V205 tmp192      [V205    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V42._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V206 tmp193      [V206    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V42._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V207 tmp194      [V207    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V43._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V208 tmp195      [V208    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V43._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V209 tmp196      [V209    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022V34.[000..008)\u0022\n ;* V210 tmp197      [V210    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022V34.[008..016)\u0022\n ;* V211 tmp198      [V211    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022V34.[016..024)\u0022\n ;* V212 tmp199      [V212    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022V34.[024..028)\u0022\n ;* V213 tmp200      [V213    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022V34.[028..032)\u0022\n ;* V214 tmp201      [V214    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022V34.[032..036)\u0022\n ;* V215 tmp202      [V215    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Cast away GC\u0022\n ;* V216 tmp203      [V216    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Cast away GC\u0022\n ;* V217 tmp204      [V217    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Cast away GC\u0022\n ;  V218 cse0        [V218,T90] (  3,  1.50)    long  -\u003E  rdx         \u0022CSE #09: conservative\u0022\n ;  V219 cse1        [V219,T91] (  3,  1.50)    long  -\u003E  rdi         \u0022CSE #05: conservative\u0022\n ;  V220 cse2        [V220,T92] (  3,  1.50)    long  -\u003E  r12         \u0022CSE #06: conservative\u0022\n ;  V221 cse3        [V221,T93] (  3,  1.50)    long  -\u003E  rdx         \u0022CSE #08: conservative\u0022\n ;  V222 cse4        [V222,T43] (  4,  2   )     int  -\u003E  rax         \u0022CSE #15: conservative\u0022\n ;  V223 cse5        [V223,T94] (  3,  1.50)    long  -\u003E  rsi         \u0022CSE #02: conservative\u0022\n ;  V224 cse6        [V224,T95] (  3,  1.50)    long  -\u003E  rsi         \u0022CSE #03: conservative\u0022\n ;  V225 cse7        [V225,T96] (  3,  1.50)    long  -\u003E  rsi         \u0022CSE #04: conservative\u0022\n ;  V226 cse8        [V226,T97] (  3,  1.50)    long  -\u003E  rdx         \u0022CSE #07: conservative\u0022\n ;  V227 cse9        [V227,T98] (  3,  1.50)    long  -\u003E  rsi         \u0022CSE #14: conservative\u0022\n ;  V228 cse10       [V228,T99] (  3,  1.50)     int  -\u003E  rdx         \u0022CSE #16: conservative\u0022\n ;  V229 cse11       [V229,T100] (  3,  1.50)    long  -\u003E  rdx         \u0022CSE #17: conservative\u0022\n ;  V230 cse12       [V230,T101] (  3,  1.50)     int  -\u003E  rdx         \u0022CSE #19: conservative\u0022\n ;  V231 cse13       [V231,T102] (  3,  1.50)    long  -\u003E  rdx         \u0022CSE #20: conservative\u0022\n ;  V232 cse14       [V232,T103] (  3,  1.50)     int  -\u003E  rdx         \u0022CSE #21: conservative\u0022\n ;  V233 cse15       [V233,T104] (  3,  1.50)    long  -\u003E  rdx         \u0022CSE #22: conservative\u0022\n ;  V234 cse16       [V234,T105] (  3,  1.50)     int  -\u003E  rdx         \u0022CSE #23: conservative\u0022\n ;  V235 cse17       [V235,T106] (  3,  1.50)    long  -\u003E  rdx         \u0022CSE #24: conservative\u0022\n ;  V236 cse18       [V236,T107] (  3,  1.50)     int  -\u003E  rdx         \u0022CSE #25: conservative\u0022\n ;  V237 cse19       [V237,T108] (  3,  1.50)    long  -\u003E  rdx         \u0022CSE #26: conservative\u0022\n ;  V238 cse20       [V238,T109] (  3,  1.50)     int  -\u003E  rcx         \u0022CSE #27: conservative\u0022\n ;  V239 cse21       [V239,T110] (  3,  1.50)    long  -\u003E  rcx         \u0022CSE #28: conservative\u0022\n ;  V240 cse22       [V240,T08] (  7,  3.50)    long  -\u003E  rax         \u0022CSE #18: aggressive\u0022\n ;\n ; Lcl frame size = 24\n \n G_M6090_IG01:\n        push     rbp\n        push     r15\n        push     r14\n        push     r13\n        push     r12\n        push     rbx\n        sub      rsp, 24\n        lea      rbp, [rsp\u002B0x40]\n        mov      r15, rdi\n        mov      rbx, rsi\n        mov      r14, rdx\n        mov      r13d, ecx\n        mov      r12d, r8d\n        mov      eax, dword ptr [rbp\u002B0x10]\n \t\t\t\t\t\t;; size=37 bbWeight=1 PerfScore 9.00\n G_M6090_IG02:\n        mov      edi, dword ptr [r14\u002B0x18]\n        cmp      dword ptr [r15\u002B0x8C], 0\n        je       SHORT G_M6090_IG04\n \t\t\t\t\t\t;; size=14 bbWeight=1 PerfScore 5.00\n G_M6090_IG03:\n        test     eax, eax\n        je       SHORT G_M6090_IG05\n \t\t\t\t\t\t;; size=4 bbWeight=0.50 PerfScore 0.62\n G_M6090_IG04:\n        cmp      edi, 1\n        je       SHORT G_M6090_IG07\n        sub      edi, 3\n        cmp      edi, 2\n        jbe      SHORT G_M6090_IG06\n \t\t\t\t\t\t;; size=13 bbWeight=0.50 PerfScore 1.38\n G_M6090_IG05:\n        mov      edi, dword ptr [r14\u002B0x04]\n        mov      ecx, 1\n        shlx     rcx, rcx, rdi\n        jmp      SHORT G_M6090_IG08\n \t\t\t\t\t\t;; size=16 bbWeight=0.50 PerfScore 2.38\n G_M6090_IG06:\n        cmp      r13d, 1\n        jne      SHORT G_M6090_IG05\n \t\t\t\t\t\t;; size=6 bbWeight=0.50 PerfScore 0.62\n G_M6090_IG07:\n        xor      ecx, ecx\n        mov      qword ptr [rbp-0x38], rcx\n \t\t\t\t\t\t;; size=6 bbWeight=0.50 PerfScore 0.62\n G_M6090_IG08:\n        mov      edi, dword ptr [r14\u002B0x08]\n        mov      edx, 1\n        shlx     rdx, rdx, rdi\n        mov      qword ptr [rbp-0x30], rdx\n        mov      dword ptr [rbp\u002B0x10], eax\n        cmp      eax, 1\n        jne      SHORT G_M6090_IG11\n \t\t\t\t\t\t;; size=26 bbWeight=1 PerfScore 6.00\n G_M6090_IG09:\n        cmp      dword ptr [r14\u002B0x10], 3\n        jne      SHORT G_M6090_IG11\n        cmp      dword ptr [r14], 17\n        jbe      SHORT G_M6090_IG10\n        mov      edi, 17\n        jmp      SHORT G_M6090_IG12\n \t\t\t\t\t\t;; size=20 bbWeight=0.50 PerfScore 4.12\n G_M6090_IG10:\n        mov      edi, dword ptr [r14]\n        jmp      SHORT G_M6090_IG12\n \t\t\t\t\t\t;; size=5 bbWeight=0.50 PerfScore 2.00\n G_M6090_IG11:\n        xor      edi, edi\n \t\t\t\t\t\t;; size=2 bbWeight=0.50 PerfScore 0.12\n G_M6090_IG12:\n        test     edi, edi\n        je       SHORT G_M6090_IG14\n \t\t\t\t\t\t;; size=4 bbWeight=1 PerfScore 1.25\n G_M6090_IG13:\n        mov      esi, 1\n        shlx     rsi, rsi, rdi\n        mov      qword ptr [rbp-0x40], rsi\n        jmp      SHORT G_M6090_IG15\n \t\t\t\t\t\t;; size=16 bbWeight=0.50 PerfScore 1.88\n G_M6090_IG14:\n        xor      esi, esi\n        mov      qword ptr [rbp-0x40], rsi\n \t\t\t\t\t\t;; size=6 bbWeight=0.50 PerfScore 0.62\n G_M6090_IG15:\n        cmp      r9d, 1\n        je       SHORT G_M6090_IG17\n \t\t\t\t\t\t;; size=6 bbWeight=1 PerfScore 1.25\n G_M6090_IG16:\n        mov      qword ptr [rbp-0x38], rcx\n        jmp      SHORT G_M6090_IG18\n \t\t\t\t\t\t;; size=6 bbWeight=0.50 PerfScore 1.50\n G_M6090_IG17:\n        vmovups  ymm0, ymmword ptr [reloc @RWD00]\n        vmovups  ymmword ptr [r15], ymm0\n        xor      r8d, r8d\n        mov      dword ptr [r15\u002B0x20], r8d\n        mov      r8, qword ptr [rbx\u002B0x10]\n        mov      qword ptr [rbx\u002B0x20], r8\n        mov      qword ptr [rbp-0x38], rcx\n \t\t\t\t\t\t;; size=32 bbWeight=0.50 PerfScore 4.12\n G_M6090_IG18:\n        mov      dword ptr [r15\u002B0x30], edi\n        xor      edi, edi\n        mov      dword ptr [r15\u002B0x12C], edi\n        mov      rdi, r15\n        mov      r8, 0xD1FFAB1E      ; code for ZstdSharp.Unsafe.Methods:ZSTD_invalidateMatchState(ptr)\n        call     [r8]ZstdSharp.Unsafe.Methods:ZSTD_invalidateMatchState(ptr)\n        mov      rsi, qword ptr [rbx\u002B0x10]\n        mov      qword ptr [rbx\u002B0x18], rsi\n        cmp      dword ptr [rbx\u002B0x40], 0\n        jg       SHORT G_M6090_IG21\n \t\t\t\t\t\t;; size=43 bbWeight=1 PerfScore 11.75\n G_M6090_IG19:\n        mov      rsi, qword ptr [rbx\u002B0x10]\n        mov      qword ptr [rbx\u002B0x20], rsi\n        mov      rsi, qword ptr [rbx\u002B0x08]\n        mov      rdi, rsi\n        and      rdi, 63\n        sub      rsi, rdi\n        mov      qword ptr [rbx\u002B0x30], rsi\n        mov      rsi, qword ptr [rbx\u002B0x10]\n        mov      rdi, rsi\n        and      rdi, 63\n        neg      rdi\n        add      rdi, 64\n        and      rdi, 63\n        add      rsi, rdi\n        cmp      rsi, qword ptr [rbx\u002B0x08]\n        ja       SHORT G_M6090_IG23\n        mov      qword ptr [rbx\u002B0x10], rsi\n        mov      qword ptr [rbx\u002B0x18], rsi\n        mov      rsi, qword ptr [rbx\u002B0x18]\n        cmp      qword ptr [rbx\u002B0x20], rsi\n        jae      SHORT G_M6090_IG20\n        mov      qword ptr [rbx\u002B0x20], rsi\n \t\t\t\t\t\t;; size=79 bbWeight=0.50 PerfScore 10.62\n G_M6090_IG20:\n        mov      dword ptr [rbx\u002B0x40], 1\n \t\t\t\t\t\t;; size=7 bbWeight=0.50 PerfScore 0.50\n G_M6090_IG21:\n        mov      rsi, qword ptr [rbx\u002B0x18]\n        mov      rax, qword ptr [rbp-0x30]\n        lea      rdi, [rsi\u002B4*rax]\n        cmp      rdi, qword ptr [rbx\u002B0x28]\n        ja       SHORT G_M6090_IG22\n        mov      qword ptr [rbx\u002B0x18], rdi\n        jmp      SHORT G_M6090_IG24\n \t\t\t\t\t\t;; size=24 bbWeight=0.50 PerfScore 4.75\n G_M6090_IG22:\n        mov      byte  ptr [rbx\u002B0x38], 1\n \t\t\t\t\t\t;; size=4 bbWeight=0.50 PerfScore 0.50\n G_M6090_IG23:\n        xor      esi, esi\n \t\t\t\t\t\t;; size=2 bbWeight=0.50 PerfScore 0.12\n G_M6090_IG24:\n        mov      qword ptr [r15\u002B0x70], rsi\n        cmp      dword ptr [rbx\u002B0x40], 0\n        jg       SHORT G_M6090_IG27\n \t\t\t\t\t\t;; size=10 bbWeight=1 PerfScore 4.00\n G_M6090_IG25:\n        mov      rsi, qword ptr [rbx\u002B0x10]\n        mov      qword ptr [rbx\u002B0x20], rsi\n        mov      rsi, qword ptr [rbx\u002B0x08]\n        mov      rdi, rsi\n        and      rdi, 63\n        sub      rsi, rdi\n        mov      qword ptr [rbx\u002B0x30], rsi\n        mov      rsi, qword ptr [rbx\u002B0x10]\n        mov      rdi, rsi\n        and      rdi, 63\n        neg      rdi\n        add      rdi, 64\n        and      rdi, 63\n        add      rsi, rdi\n        cmp      rsi, qword ptr [rbx\u002B0x08]\n        ja       SHORT G_M6090_IG29\n        mov      qword ptr [rbx\u002B0x10], rsi\n        mov      qword ptr [rbx\u002B0x18], rsi\n        mov      rsi, qword ptr [rbx\u002B0x18]\n        cmp      qword ptr [rbx\u002B0x20], rsi\n        jae      SHORT G_M6090_IG26\n        mov      qword ptr [rbx\u002B0x20], rsi\n \t\t\t\t\t\t;; size=79 bbWeight=0.50 PerfScore 10.62\n G_M6090_IG26:\n        mov      dword ptr [rbx\u002B0x40], 1\n \t\t\t\t\t\t;; size=7 bbWeight=0.50 PerfScore 0.50\n G_M6090_IG27:\n        mov      rsi, qword ptr [rbx\u002B0x18]\n        mov      rdi, qword ptr [rbp-0x38]\n        lea      rdi, [rsi\u002B4*rdi]\n        cmp      rdi, qword ptr [rbx\u002B0x28]\n        ja       SHORT G_M6090_IG28\n        mov      qword ptr [rbx\u002B0x18], rdi\n        jmp      SHORT G_M6090_IG30\n \t\t\t\t\t\t;; size=24 bbWeight=0.50 PerfScore 4.75\n G_M6090_IG28:\n        mov      byte  ptr [rbx\u002B0x38], 1\n \t\t\t\t\t\t;; size=4 bbWeight=0.50 PerfScore 0.50\n G_M6090_IG29:\n        xor      esi, esi\n \t\t\t\t\t\t;; size=2 bbWeight=0.50 PerfScore 0.12\n G_M6090_IG30:\n        mov      qword ptr [r15\u002B0x80], rsi\n        cmp      dword ptr [rbx\u002B0x40], 0\n        jg       SHORT G_M6090_IG33\n \t\t\t\t\t\t;; size=13 bbWeight=1 PerfScore 4.00\n G_M6090_IG31:\n        mov      rsi, qword ptr [rbx\u002B0x10]\n        mov      qword ptr [rbx\u002B0x20], rsi\n        mov      rsi, qword ptr [rbx\u002B0x08]\n        mov      rdi, rsi\n        and      rdi, 63\n        sub      rsi, rdi\n        mov      qword ptr [rbx\u002B0x30], rsi\n        mov      rsi, qword ptr [rbx\u002B0x10]\n        mov      rdi, rsi\n        and      rdi, 63\n        neg      rdi\n        add      rdi, 64\n        and      rdi, 63\n        add      rsi, rdi\n        cmp      rsi, qword ptr [rbx\u002B0x08]\n        ja       SHORT G_M6090_IG35\n        mov      qword ptr [rbx\u002B0x10], rsi\n        mov      qword ptr [rbx\u002B0x18], rsi\n        mov      rsi, qword ptr [rbx\u002B0x18]\n        cmp      qword ptr [rbx\u002B0x20], rsi\n        jae      SHORT G_M6090_IG32\n        mov      qword ptr [rbx\u002B0x20], rsi\n \t\t\t\t\t\t;; size=79 bbWeight=0.50 PerfScore 10.62\n G_M6090_IG32:\n        mov      dword ptr [rbx\u002B0x40], 1\n \t\t\t\t\t\t;; size=7 bbWeight=0.50 PerfScore 0.50\n G_M6090_IG33:\n        mov      rsi, qword ptr [rbx\u002B0x18]\n        mov      rdi, qword ptr [rbp-0x40]\n        lea      rdi, [rsi\u002B4*rdi]\n        cmp      rdi, qword ptr [rbx\u002B0x28]\n        ja       SHORT G_M6090_IG34\n        mov      qword ptr [rbx\u002B0x18], rdi\n        jmp      SHORT G_M6090_IG36\n \t\t\t\t\t\t;; size=24 bbWeight=0.50 PerfScore 4.75\n G_M6090_IG34:\n        mov      byte  ptr [rbx\u002B0x38], 1\n \t\t\t\t\t\t;; size=4 bbWeight=0.50 PerfScore 0.50\n G_M6090_IG35:\n        xor      esi, esi\n \t\t\t\t\t\t;; size=2 bbWeight=0.50 PerfScore 0.12\n G_M6090_IG36:\n        mov      qword ptr [r15\u002B0x78], rsi\n        cmp      byte  ptr [rbx\u002B0x38], 0\n        jne      G_M6090_IG107\n \t\t\t\t\t\t;; size=14 bbWeight=1 PerfScore 4.00\n G_M6090_IG37:\n        cmp      r12d, 1\n        je       SHORT G_M6090_IG38\n        mov      rdi, qword ptr [rbx\u002B0x20]\n        mov      r12, qword ptr [rbx\u002B0x18]\n        cmp      rdi, r12\n        jae      SHORT G_M6090_IG38\n        mov      esi, dword ptr [rbx\u002B0x18]\n        sub      esi, dword ptr [rbx\u002B0x20]\n        mov      rcx, 0xD1FFAB1E      ; code for CORINFO_HELP_MEMZERO\n        call     [rcx]CORINFO_HELP_MEMZERO\n        mov      qword ptr [rbx\u002B0x20], r12\n \t\t\t\t\t\t;; size=41 bbWeight=0.50 PerfScore 7.38\n G_M6090_IG38:\n        mov      edi, dword ptr [r14\u002B0x18]\n        sub      edi, 3\n        cmp      edi, 2\n        jbe      SHORT G_M6090_IG40\n \t\t\t\t\t\t;; size=12 bbWeight=0.50 PerfScore 1.75\n G_M6090_IG39:\n        mov      r13d, dword ptr [rbp\u002B0x10]\n        jmp      G_M6090_IG62\n \t\t\t\t\t\t;; size=9 bbWeight=0.38 PerfScore 1.12\n G_M6090_IG40:\n        cmp      r13d, 1\n        je       SHORT G_M6090_IG42\n \t\t\t\t\t\t;; size=6 bbWeight=0.50 PerfScore 0.62\n G_M6090_IG41:\n        mov      r13d, dword ptr [rbp\u002B0x10]\n        jmp      G_M6090_IG62\n \t\t\t\t\t\t;; size=9 bbWeight=0.25 PerfScore 0.75\n G_M6090_IG42:\n        mov      r13d, dword ptr [rbp\u002B0x10]\n        cmp      r13d, 1\n        je       G_M6090_IG50\n        mov      rax, qword ptr [rbp-0x30]\n        lea      rdi, [rax\u002B0x3F]\n        and      rdi, -64\n        cmp      dword ptr [rbx\u002B0x40], 2\n        jge      SHORT G_M6090_IG44\n        cmp      dword ptr [rbx\u002B0x40], 0\n        jg       SHORT G_M6090_IG43\n        mov      rsi, qword ptr [rbx\u002B0x10]\n        mov      qword ptr [rbx\u002B0x20], rsi\n        mov      rsi, qword ptr [rbx\u002B0x08]\n        mov      rcx, rsi\n        and      rcx, 63\n        sub      rsi, rcx\n        mov      qword ptr [rbx\u002B0x30], rsi\n        mov      rsi, qword ptr [rbx\u002B0x10]\n        mov      rcx, rsi\n        and      rcx, 63\n        neg      rcx\n        add      rcx, 64\n        and      rcx, 63\n        add      rsi, rcx\n        cmp      rsi, qword ptr [rbx\u002B0x08]\n        ja       SHORT G_M6090_IG48\n        mov      qword ptr [rbx\u002B0x10], rsi\n        mov      qword ptr [rbx\u002B0x18], rsi\n        mov      rsi, qword ptr [rbx\u002B0x18]\n        cmp      qword ptr [rbx\u002B0x20], rsi\n        jae      SHORT G_M6090_IG43\n        mov      qword ptr [rbx\u002B0x20], rsi\n \t\t\t\t\t\t;; size=117 bbWeight=0.50 PerfScore 15.62\n G_M6090_IG43:\n        mov      dword ptr [rbx\u002B0x40], 2\n \t\t\t\t\t\t;; size=7 bbWeight=0.50 PerfScore 0.50\n G_M6090_IG44:\n        test     rdi, rdi\n        je       SHORT G_M6090_IG48\n        mov      rsi, qword ptr [rbx\u002B0x28]\n        sub      rsi, rdi\n        cmp      rsi, qword ptr [rbx\u002B0x18]\n        jb       SHORT G_M6090_IG46\n        cmp      rsi, qword ptr [rbx\u002B0x20]\n        jae      SHORT G_M6090_IG45\n        mov      qword ptr [rbx\u002B0x20], rsi\n \t\t\t\t\t\t;; size=28 bbWeight=0.50 PerfScore 5.25\n G_M6090_IG45:\n        mov      qword ptr [rbx\u002B0x28], rsi\n        jmp      SHORT G_M6090_IG47\n \t\t\t\t\t\t;; size=6 bbWeight=0.50 PerfScore 1.50\n G_M6090_IG46:\n        mov      byte  ptr [rbx\u002B0x38], 1\n        xor      esi, esi\n \t\t\t\t\t\t;; size=6 bbWeight=0.50 PerfScore 0.62\n G_M6090_IG47:\n        jmp      SHORT G_M6090_IG49\n \t\t\t\t\t\t;; size=2 bbWeight=0.50 PerfScore 1.00\n G_M6090_IG48:\n        xor      esi, esi\n \t\t\t\t\t\t;; size=2 bbWeight=0.50 PerfScore 0.12\n G_M6090_IG49:\n        mov      qword ptr [r15\u002B0x38], rsi\n        mov      rdi, qword ptr [r15\u002B0x38]\n        mov      esi, eax\n        mov      rax, 0xD1FFAB1E      ; code for CORINFO_HELP_MEMZERO\n        call     [rax]CORINFO_HELP_MEMZERO\n        xor      edx, edx\n        mov      qword ptr [r15\u002B0x60], rdx\n        jmp      G_M6090_IG59\n \t\t\t\t\t\t;; size=33 bbWeight=0.50 PerfScore 4.88\n G_M6090_IG50:\n        mov      rax, qword ptr [rbp-0x30]\n        add      rax, 63\n        and      rax, -64\n        cmp      dword ptr [rbx\u002B0x40], 0\n        jg       SHORT G_M6090_IG52\n        mov      rdx, qword ptr [rbx\u002B0x10]\n        mov      qword ptr [rbx\u002B0x20], rdx\n        mov      rdx, qword ptr [rbx\u002B0x08]\n        mov      rdi, rdx\n        and      rdi, 63\n        sub      rdx, rdi\n        mov      qword ptr [rbx\u002B0x30], rdx\n        mov      rdx, qword ptr [rbx\u002B0x10]\n        mov      rdi, rdx\n        and      rdi, 63\n        neg      rdi\n        add      rdi, 64\n        and      rdi, 63\n        add      rdx, rdi\n        cmp      rdx, qword ptr [rbx\u002B0x08]\n        ja       SHORT G_M6090_IG56\n        mov      qword ptr [rbx\u002B0x10], rdx\n        mov      qword ptr [rbx\u002B0x18], rdx\n        mov      rdx, qword ptr [rbx\u002B0x18]\n        cmp      qword ptr [rbx\u002B0x20], rdx\n        jae      SHORT G_M6090_IG51\n        mov      qword ptr [rbx\u002B0x20], rdx\n \t\t\t\t\t\t;; size=97 bbWeight=0.50 PerfScore 12.88\n G_M6090_IG51:\n        mov      dword ptr [rbx\u002B0x40], 1\n \t\t\t\t\t\t;; size=7 bbWeight=0.50 PerfScore 0.50\n G_M6090_IG52:\n        test     rax, rax\n        je       SHORT G_M6090_IG56\n        mov      r12, qword ptr [rbx\u002B0x28]\n        sub      r12, rax\n        cmp      r12, qword ptr [rbx\u002B0x18]\n        jb       SHORT G_M6090_IG54\n        cmp      r12, qword ptr [rbx\u002B0x20]\n        jae      SHORT G_M6090_IG53\n        mov      qword ptr [rbx\u002B0x20], r12\n \t\t\t\t\t\t;; size=28 bbWeight=0.50 PerfScore 5.25\n G_M6090_IG53:\n        mov      qword ptr [rbx\u002B0x28], r12\n        jmp      SHORT G_M6090_IG55\n \t\t\t\t\t\t;; size=6 bbWeight=0.50 PerfScore 1.50\n G_M6090_IG54:\n        mov      byte  ptr [rbx\u002B0x38], 1\n        xor      r12d, r12d\n \t\t\t\t\t\t;; size=7 bbWeight=0.50 PerfScore 0.62\n G_M6090_IG55:\n        jmp      SHORT G_M6090_IG57\n \t\t\t\t\t\t;; size=2 bbWeight=0.50 PerfScore 1.00\n G_M6090_IG56:\n        xor      r12d, r12d\n \t\t\t\t\t\t;; size=3 bbWeight=0.50 PerfScore 0.12\n G_M6090_IG57:\n        test     r12, r12\n        je       SHORT G_M6090_IG58\n        mov      rdx, qword ptr [rbx\u002B0x30]\n        cmp      r12, rdx\n        jae      SHORT G_M6090_IG58\n        sub      rdx, r12\n        cmp      rdx, rax\n        cmovae   rdx, rax\n        mov      edx, edx\n        mov      rdi, r12\n        xor      esi, esi\n        mov      rax, 0xD1FFAB1E      ; code for CORINFO_HELP_MEMSET\n        call     [rax]CORINFO_HELP_MEMSET\n        mov      qword ptr [rbx\u002B0x30], r12\n \t\t\t\t\t\t;; size=47 bbWeight=0.50 PerfScore 5.25\n G_M6090_IG58:\n        mov      qword ptr [r15\u002B0x38], r12\n        mov      rdi, r15\n        mov      rax, 0xD1FFAB1E      ; code for ZstdSharp.Unsafe.Methods:ZSTD_advanceHashSalt(ptr)\n        call     [rax]ZstdSharp.Unsafe.Methods:ZSTD_advanceHashSalt(ptr)\n \t\t\t\t\t\t;; size=19 bbWeight=0.50 PerfScore 2.25\n G_M6090_IG59:\n        mov      eax, dword ptr [r14\u002B0x0C]\n        cmp      eax, 4\n        ja       SHORT G_M6090_IG60\n        mov      ecx, 4\n        jmp      SHORT G_M6090_IG61\n \t\t\t\t\t\t;; size=16 bbWeight=0.50 PerfScore 2.75\n G_M6090_IG60:\n        mov      ecx, 6\n        cmp      eax, 6\n        cmovbe   ecx, eax\n \t\t\t\t\t\t;; size=11 bbWeight=0.50 PerfScore 0.50\n G_M6090_IG61:\n        mov      eax, dword ptr [r14\u002B0x08]\n        sub      eax, ecx\n        mov      dword ptr [r15\u002B0x34], eax\n \t\t\t\t\t\t;; size=10 bbWeight=0.50 PerfScore 1.62\n G_M6090_IG62:\n        cmp      r13d, 1\n        jne      G_M6090_IG105\n        cmp      dword ptr [r14\u002B0x18], 7\n        jl       G_M6090_IG105\n        cmp      byte  ptr [r15], r15b\n        lea      rax, [r15\u002B0x90]\n        mov      rcx, rax\n        mov      edx, dword ptr [rbx\u002B0x40]\n        cmp      edx, 2\n        jge      SHORT G_M6090_IG64\n        test     edx, edx\n        jg       SHORT G_M6090_IG63\n        mov      rdx, qword ptr [rbx\u002B0x10]\n        mov      qword ptr [rbx\u002B0x20], rdx\n        mov      rdx, qword ptr [rbx\u002B0x08]\n        mov      rdi, rdx\n        and      rdi, 63\n        sub      rdx, rdi\n        mov      qword ptr [rbx\u002B0x30], rdx\n        mov      rdx, qword ptr [rbx\u002B0x10]\n        mov      rdi, rdx\n        and      rdi, 63\n        neg      rdi\n        add      rdi, 64\n        and      rdi, 63\n        add      rdx, rdi\n        cmp      rdx, qword ptr [rbx\u002B0x08]\n        ja       SHORT G_M6090_IG68\n        mov      qword ptr [rbx\u002B0x10], rdx\n        mov      qword ptr [rbx\u002B0x18], rdx\n        mov      rdx, qword ptr [rbx\u002B0x18]\n        cmp      qword ptr [rbx\u002B0x20], rdx\n        jae      SHORT G_M6090_IG63\n        mov      qword ptr [rbx\u002B0x20], rdx\n \t\t\t\t\t\t;; size=125 bbWeight=0.50 PerfScore 16.38\n G_M6090_IG63:\n        mov      dword ptr [rbx\u002B0x40], 2\n \t\t\t\t\t\t;; size=7 bbWeight=0.50 PerfScore 0.50\n G_M6090_IG64:\n        mov      rdx, qword ptr [rbx\u002B0x28]\n        add      rdx, -0x400\n        cmp      rdx, qword ptr [rbx\u002B0x18]\n        jb       SHORT G_M6090_IG66\n        cmp      rdx, qword ptr [rbx\u002B0x20]\n        jae      SHORT G_M6090_IG65\n        mov      qword ptr [rbx\u002B0x20], rdx\n \t\t\t\t\t\t;; size=27 bbWeight=0.50 PerfScore 4.62\n G_M6090_IG65:\n        mov      qword ptr [rbx\u002B0x28], rdx\n        jmp      SHORT G_M6090_IG67\n \t\t\t\t\t\t;; size=6 bbWeight=0.50 PerfScore 1.50\n G_M6090_IG66:\n        mov      byte  ptr [rbx\u002B0x38], 1\n        xor      edx, edx\n \t\t\t\t\t\t;; size=6 bbWeight=0.50 PerfScore 0.62\n G_M6090_IG67:\n        jmp      SHORT G_M6090_IG69\n \t\t\t\t\t\t;; size=2 bbWeight=0.50 PerfScore 1.00\n G_M6090_IG68:\n        xor      edx, edx\n \t\t\t\t\t\t;; size=2 bbWeight=0.50 PerfScore 0.12\n G_M6090_IG69:\n        mov      qword ptr [rcx], rdx\n        mov      rcx, rax\n        mov      edx, dword ptr [rbx\u002B0x40]\n        cmp      edx, 2\n        jge      SHORT G_M6090_IG71\n        test     edx, edx\n        jg       SHORT G_M6090_IG70\n        mov      rdx, qword ptr [rbx\u002B0x10]\n        mov      qword ptr [rbx\u002B0x20], rdx\n        mov      rdx, qword ptr [rbx\u002B0x08]\n        mov      rdi, rdx\n        and      rdi, 63\n        sub      rdx, rdi\n        mov      qword ptr [rbx\u002B0x30], rdx\n        mov      rdx, qword ptr [rbx\u002B0x10]\n        mov      rdi, rdx\n        and      rdi, 63\n        neg      rdi\n        add      rdi, 64\n        and      rdi, 63\n        add      rdx, rdi\n        cmp      rdx, qword ptr [rbx\u002B0x08]\n        ja       SHORT G_M6090_IG75\n        mov      qword ptr [rbx\u002B0x10], rdx\n        mov      qword ptr [rbx\u002B0x18], rdx\n        mov      rdx, qword ptr [rbx\u002B0x18]\n        cmp      qword ptr [rbx\u002B0x20], rdx\n        jae      SHORT G_M6090_IG70\n        mov      qword ptr [rbx\u002B0x20], rdx\n \t\t\t\t\t\t;; size=97 bbWeight=0.50 PerfScore 13.50\n G_M6090_IG70:\n        mov      dword ptr [rbx\u002B0x40], 2\n \t\t\t\t\t\t;; size=7 bbWeight=0.50 PerfScore 0.50\n G_M6090_IG71:\n        mov      rdx, qword ptr [rbx\u002B0x28]\n        add      rdx, -192\n        cmp      rdx, qword ptr [rbx\u002B0x18]\n        jb       SHORT G_M6090_IG73\n        cmp      rdx, qword ptr [rbx\u002B0x20]\n        jae      SHORT G_M6090_IG72\n        mov      qword ptr [rbx\u002B0x20], rdx\n \t\t\t\t\t\t;; size=27 bbWeight=0.50 PerfScore 4.62\n G_M6090_IG72:\n        mov      qword ptr [rbx\u002B0x28], rdx\n        jmp      SHORT G_M6090_IG74\n \t\t\t\t\t\t;; size=6 bbWeight=0.50 PerfScore 1.50\n G_M6090_IG73:\n        mov      byte  ptr [rbx\u002B0x38], 1\n        xor      edx, edx\n \t\t\t\t\t\t;; size=6 bbWeight=0.50 PerfScore 0.62\n G_M6090_IG74:\n        jmp      SHORT G_M6090_IG76\n \t\t\t\t\t\t;; size=2 bbWeight=0.50 PerfScore 1.00\n G_M6090_IG75:\n        xor      edx, edx\n \t\t\t\t\t\t;; size=2 bbWeight=0.50 PerfScore 0.12\n G_M6090_IG76:\n        mov      qword ptr [rcx\u002B0x08], rdx\n        mov      rcx, rax\n        mov      edx, dword ptr [rbx\u002B0x40]\n        cmp      edx, 2\n        jge      SHORT G_M6090_IG78\n        test     edx, edx\n        jg       SHORT G_M6090_IG77\n        mov      rdx, qword ptr [rbx\u002B0x10]\n        mov      qword ptr [rbx\u002B0x20], rdx\n        mov      rdx, qword ptr [rbx\u002B0x08]\n        mov      rdi, rdx\n        and      rdi, 63\n        sub      rdx, rdi\n        mov      qword ptr [rbx\u002B0x30], rdx\n        mov      rdx, qword ptr [rbx\u002B0x10]\n        mov      rdi, rdx\n        and      rdi, 63\n        neg      rdi\n        add      rdi, 64\n        and      rdi, 63\n        add      rdx, rdi\n        cmp      rdx, qword ptr [rbx\u002B0x08]\n        ja       SHORT G_M6090_IG82\n        mov      qword ptr [rbx\u002B0x10], rdx\n        mov      qword ptr [rbx\u002B0x18], rdx\n        mov      rdx, qword ptr [rbx\u002B0x18]\n        cmp      qword ptr [rbx\u002B0x20], rdx\n        jae      SHORT G_M6090_IG77\n        mov      qword ptr [rbx\u002B0x20], rdx\n \t\t\t\t\t\t;; size=98 bbWeight=0.50 PerfScore 13.50\n G_M6090_IG77:\n        mov      dword ptr [rbx\u002B0x40], 2\n \t\t\t\t\t\t;; size=7 bbWeight=0.50 PerfScore 0.50\n G_M6090_IG78:\n        mov      rdx, qword ptr [rbx\u002B0x28]\n        add      rdx, -256\n        cmp      rdx, qword ptr [rbx\u002B0x18]\n        jb       SHORT G_M6090_IG80\n        cmp      rdx, qword ptr [rbx\u002B0x20]\n        jae      SHORT G_M6090_IG79\n        mov      qword ptr [rbx\u002B0x20], rdx\n \t\t\t\t\t\t;; size=27 bbWeight=0.50 PerfScore 4.62\n G_M6090_IG79:\n        mov      qword ptr [rbx\u002B0x28], rdx\n        jmp      SHORT G_M6090_IG81\n \t\t\t\t\t\t;; size=6 bbWeight=0.50 PerfScore 1.50\n G_M6090_IG80:\n        mov      byte  ptr [rbx\u002B0x38], 1\n        xor      edx, edx\n \t\t\t\t\t\t;; size=6 bbWeight=0.50 PerfScore 0.62\n G_M6090_IG81:\n        jmp      SHORT G_M6090_IG83\n \t\t\t\t\t\t;; size=2 bbWeight=0.50 PerfScore 1.00\n G_M6090_IG82:\n        xor      edx, edx\n \t\t\t\t\t\t;; size=2 bbWeight=0.50 PerfScore 0.12\n G_M6090_IG83:\n        mov      qword ptr [rcx\u002B0x10], rdx\n        mov      rcx, rax\n        mov      edx, dword ptr [rbx\u002B0x40]\n        cmp      edx, 2\n        jge      SHORT G_M6090_IG85\n        test     edx, edx\n        jg       SHORT G_M6090_IG84\n        mov      rdx, qword ptr [rbx\u002B0x10]\n        mov      qword ptr [rbx\u002B0x20], rdx\n        mov      rdx, qword ptr [rbx\u002B0x08]\n        mov      rdi, rdx\n        and      rdi, 63\n        sub      rdx, rdi\n        mov      qword ptr [rbx\u002B0x30], rdx\n        mov      rdx, qword ptr [rbx\u002B0x10]\n        mov      rdi, rdx\n        and      rdi, 63\n        neg      rdi\n        add      rdi, 64\n        and      rdi, 63\n        add      rdx, rdi\n        cmp      rdx, qword ptr [rbx\u002B0x08]\n        ja       SHORT G_M6090_IG89\n        mov      qword ptr [rbx\u002B0x10], rdx\n        mov      qword ptr [rbx\u002B0x18], rdx\n        mov      rdx, qword ptr [rbx\u002B0x18]\n        cmp      qword ptr [rbx\u002B0x20], rdx\n        jae      SHORT G_M6090_IG84\n        mov      qword ptr [rbx\u002B0x20], rdx\n \t\t\t\t\t\t;; size=98 bbWeight=0.50 PerfScore 13.50\n G_M6090_IG84:\n        mov      dword ptr [rbx\u002B0x40], 2\n \t\t\t\t\t\t;; size=7 bbWeight=0.50 PerfScore 0.50\n G_M6090_IG85:\n        mov      rdx, qword ptr [rbx\u002B0x28]\n        add      rdx, -128\n        cmp      rdx, qword ptr [rbx\u002B0x18]\n        jb       SHORT G_M6090_IG87\n        cmp      rdx, qword ptr [rbx\u002B0x20]\n        jae      SHORT G_M6090_IG86\n        mov      qword ptr [rbx\u002B0x20], rdx\n \t\t\t\t\t\t;; size=24 bbWeight=0.50 PerfScore 4.62\n G_M6090_IG86:\n        mov      qword ptr [rbx\u002B0x28], rdx\n        jmp      SHORT G_M6090_IG88\n \t\t\t\t\t\t;; size=6 bbWeight=0.50 PerfScore 1.50\n G_M6090_IG87:\n        mov      byte  ptr [rbx\u002B0x38], 1\n        xor      edx, edx\n \t\t\t\t\t\t;; size=6 bbWeight=0.50 PerfScore 0.62\n G_M6090_IG88:\n        jmp      SHORT G_M6090_IG90\n \t\t\t\t\t\t;; size=2 bbWeight=0.50 PerfScore 1.00\n G_M6090_IG89:\n        xor      edx, edx\n \t\t\t\t\t\t;; size=2 bbWeight=0.50 PerfScore 0.12\n G_M6090_IG90:\n        mov      qword ptr [rcx\u002B0x18], rdx\n        mov      rcx, rax\n        mov      edx, dword ptr [rbx\u002B0x40]\n        cmp      edx, 2\n        jge      SHORT G_M6090_IG92\n        test     edx, edx\n        jg       SHORT G_M6090_IG91\n        mov      rdx, qword ptr [rbx\u002B0x10]\n        mov      qword ptr [rbx\u002B0x20], rdx\n        mov      rdx, qword ptr [rbx\u002B0x08]\n        mov      rdi, rdx\n        and      rdi, 63\n        sub      rdx, rdi\n        mov      qword ptr [rbx\u002B0x30], rdx\n        mov      rdx, qword ptr [rbx\u002B0x10]\n        mov      rdi, rdx\n        and      rdi, 63\n        neg      rdi\n        add      rdi, 64\n        and      rdi, 63\n        add      rdx, rdi\n        cmp      rdx, qword ptr [rbx\u002B0x08]\n        ja       SHORT G_M6090_IG96\n        mov      qword ptr [rbx\u002B0x10], rdx\n        mov      qword ptr [rbx\u002B0x18], rdx\n        mov      rdx, qword ptr [rbx\u002B0x18]\n        cmp      qword ptr [rbx\u002B0x20], rdx\n        jae      SHORT G_M6090_IG91\n        mov      qword ptr [rbx\u002B0x20], rdx\n \t\t\t\t\t\t;; size=98 bbWeight=0.50 PerfScore 13.50\n G_M6090_IG91:\n        mov      dword ptr [rbx\u002B0x40], 2\n \t\t\t\t\t\t;; size=7 bbWeight=0.50 PerfScore 0.50\n G_M6090_IG92:\n        mov      rdx, qword ptr [rbx\u002B0x28]\n        add      rdx, -0x8040\n        cmp      rdx, qword ptr [rbx\u002B0x18]\n        jb       SHORT G_M6090_IG94\n        cmp      rdx, qword ptr [rbx\u002B0x20]\n        jae      SHORT G_M6090_IG93\n        mov      qword ptr [rbx\u002B0x20], rdx\n \t\t\t\t\t\t;; size=27 bbWeight=0.50 PerfScore 4.62\n G_M6090_IG93:\n        mov      qword ptr [rbx\u002B0x28], rdx\n        jmp      SHORT G_M6090_IG95\n \t\t\t\t\t\t;; size=6 bbWeight=0.50 PerfScore 1.50\n G_M6090_IG94:\n        mov      byte  ptr [rbx\u002B0x38], 1\n        xor      edx, edx\n \t\t\t\t\t\t;; size=6 bbWeight=0.50 PerfScore 0.62\n G_M6090_IG95:\n        jmp      SHORT G_M6090_IG97\n \t\t\t\t\t\t;; size=2 bbWeight=0.50 PerfScore 1.00\n G_M6090_IG96:\n        xor      edx, edx\n \t\t\t\t\t\t;; size=2 bbWeight=0.50 PerfScore 0.12\n G_M6090_IG97:\n        mov      qword ptr [rcx\u002B0x20], rdx\n        mov      ecx, dword ptr [rbx\u002B0x40]\n        cmp      ecx, 2\n        jge      SHORT G_M6090_IG99\n        test     ecx, ecx\n        jg       SHORT G_M6090_IG98\n        mov      rcx, qword ptr [rbx\u002B0x10]\n        mov      qword ptr [rbx\u002B0x20], rcx\n        mov      rcx, qword ptr [rbx\u002B0x08]\n        mov      rdx, rcx\n        and      rdx, 63\n        sub      rcx, rdx\n        mov      qword ptr [rbx\u002B0x30], rcx\n        mov      rcx, qword ptr [rbx\u002B0x10]\n        mov      rdx, rcx\n        and      rdx, 63\n        neg      rdx\n        add      rdx, 64\n        and      rdx, 63\n        add      rcx, rdx\n        cmp      rcx, qword ptr [rbx\u002B0x08]\n        ja       SHORT G_M6090_IG103\n        mov      qword ptr [rbx\u002B0x10], rcx\n        mov      qword ptr [rbx\u002B0x18], rcx\n        mov      rcx, qword ptr [rbx\u002B0x18]\n        cmp      qword ptr [rbx\u002B0x20], rcx\n        jae      SHORT G_M6090_IG98\n        mov      qword ptr [rbx\u002B0x20], rcx\n \t\t\t\t\t\t;; size=95 bbWeight=0.50 PerfScore 13.38\n G_M6090_IG98:\n        mov      dword ptr [rbx\u002B0x40], 2\n \t\t\t\t\t\t;; size=7 bbWeight=0.50 PerfScore 0.50\n G_M6090_IG99:\n        mov      rcx, qword ptr [rbx\u002B0x28]\n        add      rcx, -0x1C080\n        cmp      rcx, qword ptr [rbx\u002B0x18]\n        jb       SHORT G_M6090_IG101\n        cmp      rcx, qword ptr [rbx\u002B0x20]\n        jae      SHORT G_M6090_IG100\n        mov      qword ptr [rbx\u002B0x20], rcx\n \t\t\t\t\t\t;; size=27 bbWeight=0.50 PerfScore 4.62\n G_M6090_IG100:\n        mov      qword ptr [rbx\u002B0x28], rcx\n        jmp      SHORT G_M6090_IG102\n \t\t\t\t\t\t;; size=6 bbWeight=0.50 PerfScore 1.50\n G_M6090_IG101:\n        mov      byte  ptr [rbx\u002B0x38], 1\n        xor      ecx, ecx\n \t\t\t\t\t\t;; size=6 bbWeight=0.50 PerfScore 0.62\n G_M6090_IG102:\n        jmp      SHORT G_M6090_IG104\n \t\t\t\t\t\t;; size=2 bbWeight=0.50 PerfScore 1.00\n G_M6090_IG103:\n        xor      ecx, ecx\n \t\t\t\t\t\t;; size=2 bbWeight=0.50 PerfScore 0.12\n G_M6090_IG104:\n        mov      qword ptr [rax\u002B0x28], rcx\n \t\t\t\t\t\t;; size=4 bbWeight=0.50 PerfScore 0.50\n G_M6090_IG105:\n        vmovdqu  xmm0, xmmword ptr [r14]\n        vmovdqu32 xmmword ptr [r15\u002B0x100], xmm0\n        vmovdqu  xmm0, xmmword ptr [r14\u002B0x0C]\n        vmovdqu  xmmword ptr [r15\u002B0x10C], xmm0\n        cmp      byte  ptr [rbx\u002B0x38], 0\n        jne      SHORT G_M6090_IG107\n        xor      eax, eax\n \t\t\t\t\t\t;; size=35 bbWeight=0.50 PerfScore 4.62\n G_M6090_IG106:\n        vzeroupper \n        add      rsp, 24\n        pop      rbx\n        pop      r12\n        pop      r13\n        pop      r14\n        pop      r15\n        pop      rbp\n        ret      \n \t\t\t\t\t\t;; size=18 bbWeight=0.50 PerfScore 2.62\n G_M6090_IG107:\n        mov      rax, -64\n \t\t\t\t\t\t;; size=10 bbWeight=0.50 PerfScore 0.12\n G_M6090_IG108:\n        vzeroupper \n        add      rsp, 24\n        pop      rbx\n        pop      r12\n        pop      r13\n        pop      r14\n        pop      r15\n        pop      rbp\n        ret      \n \t\t\t\t\t\t;; size=18 bbWeight=0.50 PerfScore 2.62\n-RWD00  \tdq\t00007E01F04734CAh, 00007E01F04734C8h, 00007E01F04734C8h, 0000000200000002h\n\u002BRWD00  \tdq\t00007EFD50DB14CAh, 00007EFD50DB14C8h, 00007EFD50DB14C8h, 0000000200000002h\n \n \n ; Total bytes of code 2171, prolog size 19, PerfScore 335.62, instruction count 620, allocated bytes for code 2171 (MethodHash=af31e835) for method ZstdSharp.Unsafe.Methods:ZSTD_reset_matchState(ptr,ptr,ptr,int,int,int,int):nuint (FullOpts)\n ; ============================================================","Truncated":false,"BaseBytes":2171,"DiffBytes":2171},{"Assembly":"SharpCompress.dasm","Method":"SharpCompress.Compressors.ZStandard.Unsafe.Methods:ZSTD_window_init(ptr) (FullOpts)","Category":"same-size","Description":"21 -\u003E 21 bytes (0)","ExtraInfo":null,"Diff":"@@ -1,69 \u002B1,69 @@\n ; Assembly listing for method SharpCompress.Compressors.ZStandard.Unsafe.Methods:ZSTD_window_init(ptr) (FullOpts)\n ; Emitting BLENDED_CODE for x64 \u002B VEX \u002B EVEX on Unix\n ; FullOpts code\n ; optimized code\n ; rsp based frame\n ; partially interruptible\n ; No PGO data\n ; 0 inlinees with PGO data; 9 single block inlinees; 3 inlinees without PGO data\n ; Final local variable assignments\n ;\n ;  V00 arg0         [V00,T00] (  4,  4   )    long  -\u003E  rdi         single-def\n ;* V01 loc0         [V01    ] (  0,  0   )  struct (40) zero-ref    do-not-enreg[SF] ld-addr-op \u003CSharpCompress.Compressors.ZStandard.Unsafe.ZSTD_window_t\u003E\n ;# V02 OutArgs      [V02    ] (  1,  1   )  struct ( 0) [rsp\u002B0x00]  do-not-enreg[XS] addr-exposed \u0022OutgoingArgSpace\u0022 \u003CEmpty\u003E\n ;* V03 tmp1         [V03    ] (  0,  0   )  struct (16) zero-ref    \u0022spilled call-like call argument\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V04 tmp2         [V04    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022NewObj constructor temp\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V05 tmp3         [V05    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022Inlining Arg\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V06 tmp4         [V06    ] (  0,  0   )  struct (16) zero-ref    \u0022spilled call-like call argument\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V07 tmp5         [V07    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022NewObj constructor temp\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V08 tmp6         [V08    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022Inlining Arg\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V09 tmp7         [V09    ] (  0,  0   )  struct (16) zero-ref    \u0022spilled call-like call argument\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V10 tmp8         [V10    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022NewObj constructor temp\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V11 tmp9         [V11    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022Inlining Arg\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V12 tmp10        [V12    ] (  0,  0   )   byref  -\u003E  zero-ref    \u0022field V03._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V13 tmp11        [V13    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V03._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V14 tmp12        [V14    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V04._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V15 tmp13        [V15    ] (  0,  0   )     int  -\u003E  zero-ref    single-def \u0022field V04._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V16 tmp14        [V16    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V05._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V17 tmp15        [V17    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V05._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V18 tmp16        [V18    ] (  0,  0   )   byref  -\u003E  zero-ref    \u0022field V06._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V19 tmp17        [V19    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V06._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V20 tmp18        [V20    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V07._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V21 tmp19        [V21    ] (  0,  0   )     int  -\u003E  zero-ref    single-def \u0022field V07._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V22 tmp20        [V22    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V08._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V23 tmp21        [V23    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V08._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V24 tmp22        [V24    ] (  0,  0   )   byref  -\u003E  zero-ref    \u0022field V09._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V25 tmp23        [V25    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V09._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V26 tmp24        [V26    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V10._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V27 tmp25        [V27    ] (  0,  0   )     int  -\u003E  zero-ref    single-def \u0022field V10._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V28 tmp26        [V28    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V11._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V29 tmp27        [V29    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V11._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V30 tmp28        [V30    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022V01.[000..008)\u0022\n ;* V31 tmp29        [V31    ] (  0,  0   )    long  -\u003E  zero-ref    single-def \u0022V01.[008..016)\u0022\n ;* V32 tmp30        [V32    ] (  0,  0   )    long  -\u003E  zero-ref    single-def \u0022V01.[016..024)\u0022\n ;* V33 tmp31        [V33    ] (  0,  0   )     int  -\u003E  zero-ref    single-def \u0022V01.[024..028)\u0022\n ;* V34 tmp32        [V34    ] (  0,  0   )     int  -\u003E  zero-ref    single-def \u0022V01.[028..032)\u0022\n ;* V35 tmp33        [V35    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022V01.[032..036)\u0022\n ;* V36 tmp34        [V36    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Cast away GC\u0022\n ;* V37 tmp35        [V37    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Cast away GC\u0022\n ;* V38 tmp36        [V38    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Cast away GC\u0022\n ;\n ; Lcl frame size = 0\n \n G_M47049_IG01:\n \t\t\t\t\t\t;; size=0 bbWeight=1 PerfScore 0.00\n G_M47049_IG02:\n        vmovups  ymm0, ymmword ptr [reloc @RWD00]\n        vmovups  ymmword ptr [rdi], ymm0\n        xor      eax, eax\n        mov      dword ptr [rdi\u002B0x20], eax\n \t\t\t\t\t\t;; size=17 bbWeight=1 PerfScore 4.25\n G_M47049_IG03:\n        vzeroupper \n        ret      \n \t\t\t\t\t\t;; size=4 bbWeight=1 PerfScore 2.00\n-RWD00  \tdq\t0000700ADE5FBD7Ah, 0000700ADE5FBD78h, 0000700ADE5FBD78h, 0000000200000002h\n\u002BRWD00  \tdq\t000074CC925FBD7Ah, 000074CC925FBD78h, 000074CC925FBD78h, 0000000200000002h\n \n \n ; Total bytes of code 21, prolog size 0, PerfScore 6.25, instruction count 6, allocated bytes for code 21 (MethodHash=a7054836) for method SharpCompress.Compressors.ZStandard.Unsafe.Methods:ZSTD_window_init(ptr) (FullOpts)\n ; ============================================================","Truncated":false,"BaseBytes":21,"DiffBytes":21},{"Assembly":"SkiaSharp.dasm","Method":"SkiaSharp.SKTraceMemoryDump:.cctor() (FullOpts)","Category":"same-size","Description":"189 -\u003E 189 bytes (0)","ExtraInfo":null,"Diff":"@@ -1,85 \u002B1,85 @@\n ; Assembly listing for method SkiaSharp.SKTraceMemoryDump:.cctor() (FullOpts)\n ; Emitting BLENDED_CODE for x64 \u002B VEX \u002B EVEX on Unix\n ; FullOpts code\n ; optimized code\n ; rbp based frame\n ; partially interruptible\n ; No PGO data\n ; Final local variable assignments\n ;\n ;* V00 loc0         [V00    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u003CSkiaSharp.SKManagedTraceMemoryDumpDelegates\u003E\n ;# V01 OutArgs      [V01    ] (  1,  1   )  struct ( 0) [rsp\u002B0x00]  do-not-enreg[XS] addr-exposed \u0022OutgoingArgSpace\u0022 \u003CEmpty\u003E\n ;  V02 FramesRoot   [V02,T00] (  6,  6   )    long  -\u003E  rbx         \u0022Pinvoke FrameListRoot\u0022\n ;  V03 PInvokeFrame [V03    ] (  8,  8   )  struct (56) [rbp-0x60]  do-not-enreg[XS] addr-exposed \u0022Pinvoke FrameVar\u0022 \u003CUNNAMED\u003E\n ;* V04 tmp3         [V04    ] (  0,  0   )    long  -\u003E  zero-ref    single-def \u0022field V00.fDumpNumericValue (fldOffset=0x0)\u0022 P-INDEP\n ;* V05 tmp4         [V05    ] (  0,  0   )    long  -\u003E  zero-ref    single-def \u0022field V00.fDumpStringValue (fldOffset=0x8)\u0022 P-INDEP\n ;  V06 cse0         [V06,T01] (  3,  3   )    long  -\u003E  rdi         \u0022CSE #01: aggressive\u0022\n ;\n ; Lcl frame size = 56\n \n G_M50740_IG01:\n        push     rbp\n        push     r15\n        push     r14\n        push     r13\n        push     r12\n        push     rbx\n        sub      rsp, 56\n        vzeroupper \n        lea      rbp, [rsp\u002B0x60]\n \t\t\t\t\t\t;; size=22 bbWeight=1 PerfScore 7.75\n G_M50740_IG02:\n        lea      rdi, [rbp-0x60]\n        call     CORINFO_HELP_INIT_PINVOKE_FRAME\n        mov      rbx, rax\n        mov      rdi, rsp\n        mov      qword ptr [rbp-0x48], rdi\n        mov      rdi, rbp\n        mov      qword ptr [rbp-0x38], rdi\n        mov      rdi, 0xD1FFAB1E      ; data for SkiaSharp.SKTraceMemoryDump:delegates\n        vmovups  xmm0, xmmword ptr [reloc @RWD00]\n        vmovups  xmmword ptr [rdi], xmm0\n        mov      rdi, qword ptr [rdi]\n        mov      rsi, 0xD1FFAB1E\n        mov      rsi, qword ptr [rsi]\n        mov      rax, 0xD1FFAB1E      ; function address\n        mov      qword ptr [rbp-0x50], rax\n        lea      rax, G_M50740_IG05\n        mov      qword ptr [rbp-0x40], rax\n        lea      rax, [rbp-0x60]\n        mov      qword ptr [rbx\u002B0x08], rax\n        mov      byte  ptr [rbx\u002B0x04], 0\n \t\t\t\t\t\t;; size=101 bbWeight=1 PerfScore 16.50\n G_M50740_IG03:\n        mov      rax, 0xD1FFAB1E      ; code for SkiaSharp.SkiaApi:sk_managedtracememorydump_set_procs(SkiaSharp.SKManagedTraceMemoryDumpDelegates)\n \t\t\t\t\t\t;; size=10 bbWeight=1 PerfScore 0.25\n G_M50740_IG04:\n        call     [rax]SkiaSharp.SkiaApi:sk_managedtracememorydump_set_procs(SkiaSharp.SKManagedTraceMemoryDumpDelegates)\n \t\t\t\t\t\t;; size=2 bbWeight=1 PerfScore 3.00\n G_M50740_IG05:\n        mov      byte  ptr [rbx\u002B0x04], 1\n        mov      rcx, 0xD1FFAB1E      ; function address\n        cmp      dword ptr [rcx], 0\n        je       SHORT G_M50740_IG06\n        mov      rdi, 0xD1FFAB1E\n        call     [rdi]CORINFO_HELP_STOP_FOR_GC\n \t\t\t\t\t\t;; size=31 bbWeight=1 PerfScore 7.50\n G_M50740_IG06:\n        mov      rax, qword ptr [rbp-0x58]\n        mov      qword ptr [rbx\u002B0x08], rax\n \t\t\t\t\t\t;; size=8 bbWeight=1 PerfScore 2.00\n G_M50740_IG07:\n        add      rsp, 56\n        pop      rbx\n        pop      r12\n        pop      r13\n        pop      r14\n        pop      r15\n        pop      rbp\n        ret      \n \t\t\t\t\t\t;; size=15 bbWeight=1 PerfScore 4.25\n-RWD00  \tdq\t000075BA43893D80h, 000075BA43893D98h\n\u002BRWD00  \tdq\t0000755094693D80h, 0000755094693D98h\n \n \n ; Total bytes of code 189, prolog size 22, PerfScore 41.25, instruction count 47, allocated bytes for code 189 (MethodHash=dc2a39cb) for method SkiaSharp.SKTraceMemoryDump:.cctor() (FullOpts)\n ; ============================================================","Truncated":false,"BaseBytes":189,"DiffBytes":189},{"Assembly":"System.Private.CoreLib.dasm","Method":"System.Int64:TrailingZeroCount(long):long (FullOpts)","Category":"improvement","Description":"10 -\u003E 8 bytes (-2)","ExtraInfo":null,"Diff":"@@ -1,27 \u002B1,26 @@\n ; Assembly listing for method System.Int64:TrailingZeroCount(long):long (FullOpts)\n ; Emitting BLENDED_CODE for x64 \u002B VEX \u002B EVEX on Unix\n ; FullOpts code\n ; optimized code\n ; rsp based frame\n ; partially interruptible\n ; No PGO data\n ; Final local variable assignments\n ;\n ;  V00 arg0         [V00,T00] (  3,  3   )    long  -\u003E  rdi         single-def\n ;# V01 OutArgs      [V01    ] (  1,  1   )  struct ( 0) [rsp\u002B0x00]  do-not-enreg[XS] addr-exposed \u0022OutgoingArgSpace\u0022 \u003CEmpty\u003E\n ;\n ; Lcl frame size = 0\n \n G_M37410_IG01:\n \t\t\t\t\t\t;; size=0 bbWeight=1 PerfScore 0.00\n G_M37410_IG02:\n        xor      eax, eax\n        tzcnt    rax, rdi\n-       cdqe     \n-\t\t\t\t\t\t;; size=9 bbWeight=1 PerfScore 2.50\n\u002B\t\t\t\t\t\t;; size=7 bbWeight=1 PerfScore 2.25\n G_M37410_IG03:\n        ret      \n \t\t\t\t\t\t;; size=1 bbWeight=1 PerfScore 1.00\n \n-; Total bytes of code 10, prolog size 0, PerfScore 3.50, instruction count 4, allocated bytes for code 10 (MethodHash=7c916ddd) for method System.Int64:TrailingZeroCount(long):long (FullOpts)\n\u002B; Total bytes of code 8, prolog size 0, PerfScore 3.25, instruction count 3, allocated bytes for code 8 (MethodHash=7c916ddd) for method System.Int64:TrailingZeroCount(long):long (FullOpts)\n ; ============================================================","Truncated":false,"BaseBytes":10,"DiffBytes":8},{"Assembly":"ZstdSharp.dasm","Method":"ZstdSharp.Unsafe.Methods:ZSTD_window_init(ptr) (FullOpts)","Category":"same-size","Description":"21 -\u003E 21 bytes (0)","ExtraInfo":null,"Diff":"@@ -1,69 \u002B1,69 @@\n ; Assembly listing for method ZstdSharp.Unsafe.Methods:ZSTD_window_init(ptr) (FullOpts)\n ; Emitting BLENDED_CODE for x64 \u002B VEX \u002B EVEX on Unix\n ; FullOpts code\n ; optimized code\n ; rsp based frame\n ; partially interruptible\n ; No PGO data\n ; 0 inlinees with PGO data; 9 single block inlinees; 3 inlinees without PGO data\n ; Final local variable assignments\n ;\n ;  V00 arg0         [V00,T00] (  4,  4   )    long  -\u003E  rdi         single-def\n ;* V01 loc0         [V01    ] (  0,  0   )  struct (40) zero-ref    do-not-enreg[SF] ld-addr-op \u003CZstdSharp.Unsafe.ZSTD_window_t\u003E\n ;# V02 OutArgs      [V02    ] (  1,  1   )  struct ( 0) [rsp\u002B0x00]  do-not-enreg[XS] addr-exposed \u0022OutgoingArgSpace\u0022 \u003CEmpty\u003E\n ;* V03 tmp1         [V03    ] (  0,  0   )  struct (16) zero-ref    \u0022spilled call-like call argument\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V04 tmp2         [V04    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022NewObj constructor temp\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V05 tmp3         [V05    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022Inlining Arg\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V06 tmp4         [V06    ] (  0,  0   )  struct (16) zero-ref    \u0022spilled call-like call argument\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V07 tmp5         [V07    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022NewObj constructor temp\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V08 tmp6         [V08    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022Inlining Arg\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V09 tmp7         [V09    ] (  0,  0   )  struct (16) zero-ref    \u0022spilled call-like call argument\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V10 tmp8         [V10    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022NewObj constructor temp\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V11 tmp9         [V11    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op \u0022Inlining Arg\u0022 \u003CSystem.ReadOnlySpan\u00601[byte]\u003E\n ;* V12 tmp10        [V12    ] (  0,  0   )   byref  -\u003E  zero-ref    \u0022field V03._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V13 tmp11        [V13    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V03._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V14 tmp12        [V14    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V04._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V15 tmp13        [V15    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V04._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V16 tmp14        [V16    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V05._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V17 tmp15        [V17    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V05._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V18 tmp16        [V18    ] (  0,  0   )   byref  -\u003E  zero-ref    \u0022field V06._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V19 tmp17        [V19    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V06._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V20 tmp18        [V20    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V07._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V21 tmp19        [V21    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V07._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V22 tmp20        [V22    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V08._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V23 tmp21        [V23    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V08._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V24 tmp22        [V24    ] (  0,  0   )   byref  -\u003E  zero-ref    \u0022field V09._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V25 tmp23        [V25    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V09._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V26 tmp24        [V26    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V10._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V27 tmp25        [V27    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V10._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V28 tmp26        [V28    ] (  0,  0   )   byref  -\u003E  zero-ref    single-def \u0022field V11._reference (fldOffset=0x0)\u0022 P-INDEP\n ;* V29 tmp27        [V29    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022field V11._length (fldOffset=0x8)\u0022 P-INDEP\n ;* V30 tmp28        [V30    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022V01.[000..008)\u0022\n ;* V31 tmp29        [V31    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022V01.[008..016)\u0022\n ;* V32 tmp30        [V32    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022V01.[016..024)\u0022\n ;* V33 tmp31        [V33    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022V01.[024..028)\u0022\n ;* V34 tmp32        [V34    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022V01.[028..032)\u0022\n ;* V35 tmp33        [V35    ] (  0,  0   )     int  -\u003E  zero-ref    \u0022V01.[032..036)\u0022\n ;* V36 tmp34        [V36    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Cast away GC\u0022\n ;* V37 tmp35        [V37    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Cast away GC\u0022\n ;* V38 tmp36        [V38    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022Cast away GC\u0022\n ;\n ; Lcl frame size = 0\n \n G_M7775_IG01:\n \t\t\t\t\t\t;; size=0 bbWeight=1 PerfScore 0.00\n G_M7775_IG02:\n        vmovups  ymm0, ymmword ptr [reloc @RWD00]\n        vmovups  ymmword ptr [rdi], ymm0\n        xor      eax, eax\n        mov      dword ptr [rdi\u002B0x20], eax\n \t\t\t\t\t\t;; size=17 bbWeight=1 PerfScore 4.25\n G_M7775_IG03:\n        vzeroupper \n        ret      \n \t\t\t\t\t\t;; size=4 bbWeight=1 PerfScore 2.00\n-RWD00  \tdq\t00007E01F04734CAh, 00007E01F04734C8h, 00007E01F04734C8h, 0000000200000002h\n\u002BRWD00  \tdq\t00007EFD50DB14CAh, 00007EFD50DB14C8h, 00007EFD50DB14C8h, 0000000200000002h\n \n \n ; Total bytes of code 21, prolog size 0, PerfScore 6.25, instruction count 6, allocated bytes for code 21 (MethodHash=9b56e1a0) for method ZstdSharp.Unsafe.Methods:ZSTD_window_init(ptr) (FullOpts)\n ; ============================================================","Truncated":false,"BaseBytes":21,"DiffBytes":21},{"Assembly":"System.Private.CoreLib.dasm","Method":"System.IntPtr:LeadingZeroCount(nint):nint (FullOpts)","Category":"improvement","Description":"10 -\u003E 8 bytes (-2)","ExtraInfo":null,"Diff":"@@ -1,27 \u002B1,26 @@\n ; Assembly listing for method System.IntPtr:LeadingZeroCount(nint):nint (FullOpts)\n ; Emitting BLENDED_CODE for x64 \u002B VEX \u002B EVEX on Unix\n ; FullOpts code\n ; optimized code\n ; rsp based frame\n ; partially interruptible\n ; No PGO data\n ; Final local variable assignments\n ;\n ;  V00 arg0         [V00,T00] (  3,  3   )    long  -\u003E  rdi         single-def\n ;# V01 OutArgs      [V01    ] (  1,  1   )  struct ( 0) [rsp\u002B0x00]  do-not-enreg[XS] addr-exposed \u0022OutgoingArgSpace\u0022 \u003CEmpty\u003E\n ;\n ; Lcl frame size = 0\n \n G_M26712_IG01:\n \t\t\t\t\t\t;; size=0 bbWeight=1 PerfScore 0.00\n G_M26712_IG02:\n        xor      eax, eax\n        lzcnt    rax, rdi\n-       cdqe     \n-\t\t\t\t\t\t;; size=9 bbWeight=1 PerfScore 2.50\n\u002B\t\t\t\t\t\t;; size=7 bbWeight=1 PerfScore 2.25\n G_M26712_IG03:\n        ret      \n \t\t\t\t\t\t;; size=1 bbWeight=1 PerfScore 1.00\n \n-; Total bytes of code 10, prolog size 0, PerfScore 3.50, instruction count 4, allocated bytes for code 10 (MethodHash=b31a97a7) for method System.IntPtr:LeadingZeroCount(nint):nint (FullOpts)\n\u002B; Total bytes of code 8, prolog size 0, PerfScore 3.25, instruction count 3, allocated bytes for code 8 (MethodHash=b31a97a7) for method System.IntPtr:LeadingZeroCount(nint):nint (FullOpts)\n ; ============================================================","Truncated":false,"BaseBytes":10,"DiffBytes":8},{"Assembly":"System.Private.CoreLib.dasm","Method":"System.IntPtr:PopCount(nint):nint (FullOpts)","Category":"improvement","Description":"10 -\u003E 8 bytes (-2)","ExtraInfo":null,"Diff":"@@ -1,27 \u002B1,26 @@\n ; Assembly listing for method System.IntPtr:PopCount(nint):nint (FullOpts)\n ; Emitting BLENDED_CODE for x64 \u002B VEX \u002B EVEX on Unix\n ; FullOpts code\n ; optimized code\n ; rsp based frame\n ; partially interruptible\n ; No PGO data\n ; Final local variable assignments\n ;\n ;  V00 arg0         [V00,T00] (  3,  3   )    long  -\u003E  rdi         single-def\n ;# V01 OutArgs      [V01    ] (  1,  1   )  struct ( 0) [rsp\u002B0x00]  do-not-enreg[XS] addr-exposed \u0022OutgoingArgSpace\u0022 \u003CEmpty\u003E\n ;\n ; Lcl frame size = 0\n \n G_M60665_IG01:\n \t\t\t\t\t\t;; size=0 bbWeight=1 PerfScore 0.00\n G_M60665_IG02:\n        xor      eax, eax\n        popcnt   rax, rdi\n-       cdqe     \n-\t\t\t\t\t\t;; size=9 bbWeight=1 PerfScore 2.50\n\u002B\t\t\t\t\t\t;; size=7 bbWeight=1 PerfScore 2.25\n G_M60665_IG03:\n        ret      \n \t\t\t\t\t\t;; size=1 bbWeight=1 PerfScore 1.00\n \n-; Total bytes of code 10, prolog size 0, PerfScore 3.50, instruction count 4, allocated bytes for code 10 (MethodHash=5bc41306) for method System.IntPtr:PopCount(nint):nint (FullOpts)\n\u002B; Total bytes of code 8, prolog size 0, PerfScore 3.25, instruction count 3, allocated bytes for code 8 (MethodHash=5bc41306) for method System.IntPtr:PopCount(nint):nint (FullOpts)\n ; ============================================================","Truncated":false,"BaseBytes":10,"DiffBytes":8},{"Assembly":"System.Private.CoreLib.dasm","Method":"System.IntPtr:TrailingZeroCount(nint):nint (FullOpts)","Category":"improvement","Description":"10 -\u003E 8 bytes (-2)","ExtraInfo":null,"Diff":"@@ -1,27 \u002B1,26 @@\n ; Assembly listing for method System.IntPtr:TrailingZeroCount(nint):nint (FullOpts)\n ; Emitting BLENDED_CODE for x64 \u002B VEX \u002B EVEX on Unix\n ; FullOpts code\n ; optimized code\n ; rsp based frame\n ; partially interruptible\n ; No PGO data\n ; Final local variable assignments\n ;\n ;  V00 arg0         [V00,T00] (  3,  3   )    long  -\u003E  rdi         single-def\n ;# V01 OutArgs      [V01    ] (  1,  1   )  struct ( 0) [rsp\u002B0x00]  do-not-enreg[XS] addr-exposed \u0022OutgoingArgSpace\u0022 \u003CEmpty\u003E\n ;\n ; Lcl frame size = 0\n \n G_M63318_IG01:\n \t\t\t\t\t\t;; size=0 bbWeight=1 PerfScore 0.00\n G_M63318_IG02:\n        xor      eax, eax\n        tzcnt    rax, rdi\n-       cdqe     \n-\t\t\t\t\t\t;; size=9 bbWeight=1 PerfScore 2.50\n\u002B\t\t\t\t\t\t;; size=7 bbWeight=1 PerfScore 2.25\n G_M63318_IG03:\n        ret      \n \t\t\t\t\t\t;; size=1 bbWeight=1 PerfScore 1.00\n \n-; Total bytes of code 10, prolog size 0, PerfScore 3.50, instruction count 4, allocated bytes for code 10 (MethodHash=83e708a9) for method System.IntPtr:TrailingZeroCount(nint):nint (FullOpts)\n\u002B; Total bytes of code 8, prolog size 0, PerfScore 3.25, instruction count 3, allocated bytes for code 8 (MethodHash=83e708a9) for method System.IntPtr:TrailingZeroCount(nint):nint (FullOpts)\n ; ============================================================","Truncated":false,"BaseBytes":10,"DiffBytes":8},{"Assembly":"System.Private.CoreLib.dasm","Method":"System.SpanHelpers:SequenceCompareTo(byref,int,byref,int):int (FullOpts)","Category":"improvement","Description":"618 -\u003E 616 bytes (-2); 2 -\u003E 2 listings","ExtraInfo":null,"Diff":"@@ -1,324 \u002B1,323 @@\n ; Assembly listing for method System.SpanHelpers:SequenceCompareTo(byref,int,byref,int):int (FullOpts)\n ; Emitting BLENDED_CODE for x64 \u002B VEX \u002B EVEX on Unix\n ; FullOpts code\n ; optimized code\n ; rbp based frame\n ; fully interruptible\n ; No PGO data\n ; 0 inlinees with PGO data; 6 single block inlinees; 0 inlinees without PGO data\n ; Final local variable assignments\n ;\n ;  V00 arg0         [V00,T01] ( 12, 21.50)   byref  -\u003E  rdi         single-def\n ;  V01 arg1         [V01,T08] (  5,  3.50)     int  -\u003E  rsi         single-def\n ;  V02 arg2         [V02,T02] ( 12, 21.50)   byref  -\u003E  rdx         single-def\n ;  V03 arg3         [V03,T09] (  5,  3.50)     int  -\u003E  rcx         single-def\n ;  V04 loc0         [V04,T06] ( 11,  9.25)    long  -\u003E  rax        \n ;  V05 loc1         [V05,T00] ( 39, 89.75)    long  -\u003E   r8        \n ;  V06 loc2         [V06,T03] ( 14, 17.50)    long  -\u003E   r9        \n ;  V07 loc3         [V07,T04] (  5,  9.50)    long  -\u003E  rax        \n ;* V08 loc4         [V08    ] (  0,  0   )    long  -\u003E  zero-ref   \n ;  V09 loc5         [V09,T05] (  5,  9.50)     int  -\u003E  rax        \n ;* V10 loc6         [V10    ] (  0,  0   )     int  -\u003E  zero-ref   \n ;  V11 loc7         [V11,T11] (  5,  2.50)     int  -\u003E  rax        \n ;* V12 loc8         [V12    ] (  0,  0   )     int  -\u003E  zero-ref   \n ;  V13 loc9         [V13,T07] (  3,  8.50)     int  -\u003E   r9        \n ;# V14 OutArgs      [V14    ] (  1,  1   )  struct ( 0) [rsp\u002B0x00]  do-not-enreg[XS] addr-exposed \u0022OutgoingArgSpace\u0022 \u003CEmpty\u003E\n ;  V15 tmp1         [V15,T12] (  2,  1   )     int  -\u003E  rax        \n ;* V16 tmp2         [V16    ] (  0,  0   )    long  -\u003E  zero-ref    \u0022impAppendStmt\u0022\n ;* V17 tmp3         [V17    ] (  0,  0   )   byref  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V18 tmp4         [V18    ] (  0,  0   )   ubyte  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V19 tmp5         [V19    ] (  0,  0   )   byref  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V20 tmp6         [V20    ] (  0,  0   )   ubyte  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V21 tmp7         [V21    ] (  0,  0   )   byref  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V22 tmp8         [V22    ] (  0,  0   )   ubyte  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V23 tmp9         [V23    ] (  0,  0   )   byref  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V24 tmp10        [V24    ] (  0,  0   )   ubyte  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;  V25 tmp11        [V25,T10] (  4,  5   )     int  -\u003E   r9         \u0022Single return block return value\u0022\n ;\n ; Lcl frame size = 0\n \n G_M65109_IG01:\n        push     rbp\n        mov      rbp, rsp\n \t\t\t\t\t\t;; size=4 bbWeight=1 PerfScore 1.25\n G_M65109_IG02:\n        cmp      rdi, rdx\n        je       SHORT G_M65109_IG07\n \t\t  ;; NOP compensation instructions of 4 bytes.\n \t\t\t\t\t\t;; size=9 bbWeight=1 PerfScore 1.25\n G_M65109_IG03:\n        cmp      esi, ecx\n        mov      eax, ecx\n        cmovb    eax, esi\n        xor      r8d, r8d\n        cmp      rax, 64\n        jae      G_M65109_IG16\n        cmp      rax, 32\n        jae      G_M65109_IG12\n        cmp      rax, 16\n        jae      SHORT G_M65109_IG09\n        cmp      rax, 8\n        jbe      SHORT G_M65109_IG05\n        lea      r9, [rax-0x08]\n        test     r9, r9\n        je       SHORT G_M65109_IG05\n        align    [0 bytes for IG04]\n \t\t\t\t\t\t;; size=51 bbWeight=0.50 PerfScore 4.00\n G_M65109_IG04:\n        mov      r10, qword ptr [rdi\u002Br8]\n        cmp      r10, qword ptr [rdx\u002Br8]\n        jne      SHORT G_M65109_IG05\n        add      r8, 8\n        cmp      r9, r8\n        ja       SHORT G_M65109_IG04\n \t\t\t\t\t\t;; size=19 bbWeight=4 PerfScore 26.00\n G_M65109_IG05:\n        cmp      rax, r8\n        jbe      SHORT G_M65109_IG07\n        align    [8 bytes for IG06]\n \t\t\t\t\t\t;; size=13 bbWeight=0.75 PerfScore 1.12\n G_M65109_IG06:\n        movzx    r9, byte  ptr [rdi\u002Br8]\n        movzx    r10, byte  ptr [rdx\u002Br8]\n        sub      r9d, r10d\n        jne      SHORT G_M65109_IG08\n        inc      r8\n        cmp      rax, r8\n        ja       SHORT G_M65109_IG06\n \t\t\t\t\t\t;; size=23 bbWeight=4 PerfScore 27.00\n G_M65109_IG07:\n        mov      r9d, esi\n        sub      r9d, ecx\n        jmp      G_M65109_IG21\n        align    [0 bytes for IG13]\n \t\t\t\t\t\t;; size=11 bbWeight=0.50 PerfScore 1.25\n G_M65109_IG08:\n        jmp      G_M65109_IG21\n \t\t\t\t\t\t;; size=5 bbWeight=0.50 PerfScore 1.00\n G_M65109_IG09:\n        lea      r9, [rax-0x10]\n        test     r9, r9\n        je       SHORT G_M65109_IG10\n        vmovups  xmm0, xmmword ptr [rdi]\n        vpcmpeqb xmm0, xmm0, xmmword ptr [rdx]\n        vpmovmskb eax, xmm0\n        cmp      eax, 0xFFFF\n        jne      SHORT G_M65109_IG11\n \t\t\t\t\t\t;; size=28 bbWeight=0.50 PerfScore 5.00\n G_M65109_IG10:\n        mov      r8, r9\n        vmovups  xmm0, xmmword ptr [rdi\u002Br8]\n        vpcmpeqb xmm0, xmm0, xmmword ptr [rdx\u002Br8]\n        vpmovmskb eax, xmm0\n        cmp      eax, 0xFFFF\n        je       SHORT G_M65109_IG07\n \t\t\t\t\t\t;; size=26 bbWeight=0.50 PerfScore 4.25\n G_M65109_IG11:\n        mov      r9d, eax\n        not      r9d\n        xor      ecx, ecx\n        tzcnt    ecx, r9d\n        mov      esi, ecx\n        add      rsi, r8\n        mov      r8, rsi\n        jmp      G_M65109_IG20\n \t\t\t\t\t\t;; size=26 bbWeight=0.50 PerfScore 2.75\n G_M65109_IG12:\n        lea      r9, [rax-0x20]\n        test     r9, r9\n        je       SHORT G_M65109_IG14\n \t\t\t\t\t\t;; size=9 bbWeight=0.50 PerfScore 0.88\n G_M65109_IG13:\n        vmovups  ymm0, ymmword ptr [rdi\u002Br8]\n        vpcmpeqb ymm0, ymm0, ymmword ptr [rdx\u002Br8]\n        vpmovmskb eax, ymm0\n        cmp      eax, -1\n        jne      SHORT G_M65109_IG15\n        add      r8, 32\n        cmp      r9, r8\n        ja       SHORT G_M65109_IG13\n \t\t\t\t\t\t;; size=30 bbWeight=4 PerfScore 51.00\n G_M65109_IG14:\n        mov      r8, r9\n        vmovups  ymm0, ymmword ptr [rdi\u002Br8]\n        vpcmpeqb ymm0, ymm0, ymmword ptr [rdx\u002Br8]\n        vpmovmskb eax, ymm0\n        cmp      eax, -1\n        je       G_M65109_IG07\n \t\t\t\t\t\t;; size=28 bbWeight=0.50 PerfScore 5.75\n G_M65109_IG15:\n        mov      r9d, eax\n        not      r9d\n        xor      ecx, ecx\n        tzcnt    ecx, r9d\n        mov      esi, ecx\n        add      rsi, r8\n        mov      r8, rsi\n        jmp      SHORT G_M65109_IG20\n        align    [0 bytes for IG17]\n \t\t\t\t\t\t;; size=23 bbWeight=0.50 PerfScore 2.75\n G_M65109_IG16:\n        lea      r9, [rax-0x40]\n        test     r9, r9\n        je       SHORT G_M65109_IG18\n \t\t\t\t\t\t;; size=9 bbWeight=0.50 PerfScore 0.88\n G_M65109_IG17:\n        vmovups  zmm0, zmmword ptr [rdi\u002Br8]\n        vpcmpeqb k1, zmm0, zmmword ptr [rdx\u002Br8]\n        kmovq    rax, k1\n        cmp      rax, -1\n        jne      SHORT G_M65109_IG19\n        add      r8, 64\n        cmp      r9, r8\n        ja       SHORT G_M65109_IG17\n \t\t\t\t\t\t;; size=34 bbWeight=4 PerfScore 55.00\n G_M65109_IG18:\n        mov      r8, r9\n        vmovups  zmm0, zmmword ptr [rdi\u002Br8]\n        vpcmpeqb k1, zmm0, zmmword ptr [rdx\u002Br8]\n        kmovq    rax, k1\n        cmp      rax, -1\n        je       G_M65109_IG07\n \t\t\t\t\t\t;; size=32 bbWeight=0.50 PerfScore 6.25\n G_M65109_IG19:\n        mov      r9, rax\n        not      r9\n        xor      eax, eax\n        tzcnt    rax, r9\n-       mov      eax, eax\n        add      rax, r8\n        mov      r8, rax\n-\t\t\t\t\t\t;; size=21 bbWeight=0.50 PerfScore 1.75\n\u002B\t\t\t\t\t\t;; size=19 bbWeight=0.50 PerfScore 1.62\n G_M65109_IG20:\n        movzx    r9, byte  ptr [rdi\u002Br8]\n        movzx    rax, byte  ptr [rdx\u002Br8]\n        sub      r9d, eax\n \t\t\t\t\t\t;; size=13 bbWeight=0.50 PerfScore 2.12\n G_M65109_IG21:\n        mov      eax, r9d\n \t\t\t\t\t\t;; size=3 bbWeight=1 PerfScore 0.25\n G_M65109_IG22:\n        vzeroupper \n        pop      rbp\n        ret      \n \t\t\t\t\t\t;; size=5 bbWeight=1 PerfScore 2.50\n \n-; Total bytes of code 422, prolog size 4, PerfScore 204.00, instruction count 120, allocated bytes for code 428 (MethodHash=bda601aa) for method System.SpanHelpers:SequenceCompareTo(byref,int,byref,int):int (FullOpts)\n\u002B; Total bytes of code 420, prolog size 4, PerfScore 203.88, instruction count 119, allocated bytes for code 426 (MethodHash=bda601aa) for method System.SpanHelpers:SequenceCompareTo(byref,int,byref,int):int (FullOpts)\n ; ============================================================\n ; Assembly listing for method System.SpanHelpers:SequenceCompareTo(byref,int,byref,int):int (FullOpts)\n ; Emitting BLENDED_CODE for x64 \u002B VEX \u002B EVEX on Unix\n ; FullOpts code\n ; optimized code\n ; rbp based frame\n ; fully interruptible\n ; No PGO data\n ; 0 inlinees with PGO data; 1 single block inlinees; 0 inlinees without PGO data\n ; Final local variable assignments\n ;\n ;  V00 arg0         [V00,T01] (  8, 16   )   byref  -\u003E  rdi         single-def\n ;  V01 arg1         [V01,T05] (  5,  4   )     int  -\u003E  rsi         single-def\n ;  V02 arg2         [V02,T02] (  8, 16   )   byref  -\u003E  rdx         single-def\n ;  V03 arg3         [V03,T06] (  5,  4   )     int  -\u003E  rcx         single-def\n ;  V04 loc0         [V04,T09] (  2,  1.50)     int  -\u003E  rax        \n ;  V05 loc1         [V05,T03] (  9, 12.25)    long  -\u003E  rcx        \n ;  V06 loc2         [V06,T00] ( 23, 64.75)    long  -\u003E  rsi        \n ;  V07 loc3         [V07,T07] (  2,  4.50)    long  -\u003E   r8        \n ;  V08 loc4         [V08,T04] (  3,  8.50)     int  -\u003E   r8        \n ;# V09 OutArgs      [V09    ] (  1,  1   )  struct ( 0) [rsp\u002B0x00]  do-not-enreg[XS] addr-exposed \u0022OutgoingArgSpace\u0022 \u003CEmpty\u003E\n ;  V10 tmp1         [V10,T10] (  2,  1   )     int  -\u003E  rsi        \n ;* V11 tmp2         [V11    ] (  0,  0   )   byref  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;* V12 tmp3         [V12    ] (  0,  0   )  ushort  -\u003E  zero-ref    \u0022Inlining Arg\u0022\n ;  V13 cse0         [V13,T08] (  3,  1.50)    long  -\u003E   r8         \u0022CSE #01: moderate\u0022\n ;\n ; Lcl frame size = 0\n \n G_M65109_IG01:\n        push     rbp\n        mov      rbp, rsp\n \t\t\t\t\t\t;; size=4 bbWeight=1 PerfScore 1.25\n G_M65109_IG02:\n        mov      eax, esi\n        sub      eax, ecx\n        cmp      rdi, rdx\n        je       G_M65109_IG10\n \t\t\t\t\t\t;; size=13 bbWeight=1 PerfScore 1.75\n G_M65109_IG03:\n        cmp      esi, ecx\n        cmovae   esi, ecx\n        mov      ecx, esi\n        xor      esi, esi\n        cmp      rcx, 4\n        jb       SHORT G_M65109_IG07\n        cmp      rcx, 16\n        jb       SHORT G_M65109_IG05\n        lea      r8, [rcx-0x10]\n        vmovups  ymm0, ymmword ptr [rdi]\n        vpcmpnequw k1, ymm0, ymmword ptr [rdx]\n        kortestw k1, k1\n \t\t  ;; NOP compensation instructions of 2 bytes.\n        jne      SHORT G_M65109_IG05\n        align    [3 bytes for IG04]\n \t\t\t\t\t\t;; size=47 bbWeight=0.50 PerfScore 8.25\n G_M65109_IG04:\n        add      rsi, 16\n        cmp      r8, rsi\n        jb       SHORT G_M65109_IG05\n        vmovups  ymm0, ymmword ptr [rdi\u002B2*rsi]\n        vpcmpnequw k1, ymm0, ymmword ptr [rdx\u002B2*rsi]\n        kortestw k1, k1\n \t\t  ;; NOP compensation instructions of 2 bytes.\n        je       SHORT G_M65109_IG04\n \t\t\t\t\t\t;; size=30 bbWeight=4 PerfScore 54.00\n G_M65109_IG05:\n        lea      r8, [rsi\u002B0x04]\n        cmp      rcx, r8\n        jb       SHORT G_M65109_IG07\n        align    [0 bytes for IG06]\n \t\t\t\t\t\t;; size=9 bbWeight=0.75 PerfScore 1.31\n G_M65109_IG06:\n        mov      r8, qword ptr [rdi\u002B2*rsi]\n        cmp      r8, qword ptr [rdx\u002B2*rsi]\n        jne      SHORT G_M65109_IG07\n        add      rsi, 4\n        lea      r8, [rsi\u002B0x04]\n        cmp      rcx, r8\n        jae      SHORT G_M65109_IG06\n \t\t\t\t\t\t;; size=23 bbWeight=4 PerfScore 28.00\n G_M65109_IG07:\n        lea      r8, [rsi\u002B0x02]\n        cmp      rcx, r8\n        jb       SHORT G_M65109_IG08\n        mov      r9d, dword ptr [rdi\u002B2*rsi]\n        cmp      r9d, dword ptr [rdx\u002B2*rsi]\n        cmove    rsi, r8\n \t\t\t\t\t\t;; size=21 bbWeight=0.50 PerfScore 3.12\n G_M65109_IG08:\n        cmp      rsi, rcx\n        jae      SHORT G_M65109_IG10\n        align    [8 bytes for IG09]\n \t\t\t\t\t\t;; size=13 bbWeight=1 PerfScore 1.50\n G_M65109_IG09:\n        movzx    r8, word  ptr [rdi\u002B2*rsi]\n        movzx    r9, word  ptr [rdx\u002B2*rsi]\n        sub      r8d, r9d\n        jne      SHORT G_M65109_IG11\n        inc      rsi\n        cmp      rsi, rcx\n        jb       SHORT G_M65109_IG09\n \t\t\t\t\t\t;; size=23 bbWeight=4 PerfScore 27.00\n G_M65109_IG10:\n        vzeroupper \n        pop      rbp\n        ret      \n \t\t\t\t\t\t;; size=5 bbWeight=0.50 PerfScore 1.25\n G_M65109_IG11:\n        mov      eax, r8d\n \t\t\t\t\t\t;; size=3 bbWeight=0.50 PerfScore 0.12\n G_M65109_IG12:\n        vzeroupper \n        pop      rbp\n        ret      \n \t\t\t\t\t\t;; size=5 bbWeight=0.50 PerfScore 1.25\n \n ; Total bytes of code 196, prolog size 4, PerfScore 128.81, instruction count 61, allocated bytes for code 196 (MethodHash=bda601aa) for method System.SpanHelpers:SequenceCompareTo(byref,int,byref,int):int (FullOpts)\n ; ============================================================","Truncated":false,"BaseBytes":618,"DiffBytes":616},{"Assembly":"System.Private.CoreLib.dasm","Method":"System.UInt64:LeadingZeroCount(ulong):ulong (FullOpts)","Category":"improvement","Description":"10 -\u003E 8 bytes (-2)","ExtraInfo":null,"Diff":"@@ -1,27 \u002B1,26 @@\n ; Assembly listing for method System.UInt64:LeadingZeroCount(ulong):ulong (FullOpts)\n ; Emitting BLENDED_CODE for x64 \u002B VEX \u002B EVEX on Unix\n ; FullOpts code\n ; optimized code\n ; rsp based frame\n ; partially interruptible\n ; No PGO data\n ; Final local variable assignments\n ;\n ;  V00 arg0         [V00,T00] (  3,  3   )    long  -\u003E  rdi         single-def\n ;# V01 OutArgs      [V01    ] (  1,  1   )  struct ( 0) [rsp\u002B0x00]  do-not-enreg[XS] addr-exposed \u0022OutgoingArgSpace\u0022 \u003CEmpty\u003E\n ;\n ; Lcl frame size = 0\n \n G_M34329_IG01:\n \t\t\t\t\t\t;; size=0 bbWeight=1 PerfScore 0.00\n G_M34329_IG02:\n        xor      eax, eax\n        lzcnt    rax, rdi\n-       cdqe     \n-\t\t\t\t\t\t;; size=9 bbWeight=1 PerfScore 2.50\n\u002B\t\t\t\t\t\t;; size=7 bbWeight=1 PerfScore 2.25\n G_M34329_IG03:\n        ret      \n \t\t\t\t\t\t;; size=1 bbWeight=1 PerfScore 1.00\n \n-; Total bytes of code 10, prolog size 0, PerfScore 3.50, instruction count 4, allocated bytes for code 10 (MethodHash=2b7979e6) for method System.UInt64:LeadingZeroCount(ulong):ulong (FullOpts)\n\u002B; Total bytes of code 8, prolog size 0, PerfScore 3.25, instruction count 3, allocated bytes for code 8 (MethodHash=2b7979e6) for method System.UInt64:LeadingZeroCount(ulong):ulong (FullOpts)\n ; ============================================================","Truncated":false,"BaseBytes":10,"DiffBytes":8},{"Assembly":"System.Private.CoreLib.dasm","Method":"System.UInt64:PopCount(ulong):ulong (FullOpts)","Category":"improvement","Description":"10 -\u003E 8 bytes (-2)","ExtraInfo":null,"Diff":"@@ -1,27 \u002B1,26 @@\n ; Assembly listing for method System.UInt64:PopCount(ulong):ulong (FullOpts)\n ; Emitting BLENDED_CODE for x64 \u002B VEX \u002B EVEX on Unix\n ; FullOpts code\n ; optimized code\n ; rsp based frame\n ; partially interruptible\n ; No PGO data\n ; Final local variable assignments\n ;\n ;  V00 arg0         [V00,T00] (  3,  3   )    long  -\u003E  rdi         single-def\n ;# V01 OutArgs      [V01    ] (  1,  1   )  struct ( 0) [rsp\u002B0x00]  do-not-enreg[XS] addr-exposed \u0022OutgoingArgSpace\u0022 \u003CEmpty\u003E\n ;\n ; Lcl frame size = 0\n \n G_M9720_IG01:\n \t\t\t\t\t\t;; size=0 bbWeight=1 PerfScore 0.00\n G_M9720_IG02:\n        xor      eax, eax\n        popcnt   rax, rdi\n-       cdqe     \n-\t\t\t\t\t\t;; size=9 bbWeight=1 PerfScore 2.50\n\u002B\t\t\t\t\t\t;; size=7 bbWeight=1 PerfScore 2.25\n G_M9720_IG03:\n        ret      \n \t\t\t\t\t\t;; size=1 bbWeight=1 PerfScore 1.00\n \n-; Total bytes of code 10, prolog size 0, PerfScore 3.50, instruction count 4, allocated bytes for code 10 (MethodHash=3687da07) for method System.UInt64:PopCount(ulong):ulong (FullOpts)\n\u002B; Total bytes of code 8, prolog size 0, PerfScore 3.25, instruction count 3, allocated bytes for code 8 (MethodHash=3687da07) for method System.UInt64:PopCount(ulong):ulong (FullOpts)\n ; ============================================================","Truncated":false,"BaseBytes":10,"DiffBytes":8},{"Assembly":"System.Private.CoreLib.dasm","Method":"System.UInt64:TrailingZeroCount(ulong):ulong (FullOpts)","Category":"improvement","Description":"10 -\u003E 8 bytes (-2)","ExtraInfo":null,"Diff":"@@ -1,27 \u002B1,26 @@\n ; Assembly listing for method System.UInt64:TrailingZeroCount(ulong):ulong (FullOpts)\n ; Emitting BLENDED_CODE for x64 \u002B VEX \u002B EVEX on Unix\n ; FullOpts code\n ; optimized code\n ; rsp based frame\n ; partially interruptible\n ; No PGO data\n ; Final local variable assignments\n ;\n ;  V00 arg0         [V00,T00] (  3,  3   )    long  -\u003E  rdi         single-def\n ;# V01 OutArgs      [V01    ] (  1,  1   )  struct ( 0) [rsp\u002B0x00]  do-not-enreg[XS] addr-exposed \u0022OutgoingArgSpace\u0022 \u003CEmpty\u003E\n ;\n ; Lcl frame size = 0\n \n G_M43383_IG01:\n \t\t\t\t\t\t;; size=0 bbWeight=1 PerfScore 0.00\n G_M43383_IG02:\n        xor      eax, eax\n        tzcnt    rax, rdi\n-       cdqe     \n-\t\t\t\t\t\t;; size=9 bbWeight=1 PerfScore 2.50\n\u002B\t\t\t\t\t\t;; size=7 bbWeight=1 PerfScore 2.25\n G_M43383_IG03:\n        ret      \n \t\t\t\t\t\t;; size=1 bbWeight=1 PerfScore 1.00\n \n-; Total bytes of code 10, prolog size 0, PerfScore 3.50, instruction count 4, allocated bytes for code 10 (MethodHash=a1905688) for method System.UInt64:TrailingZeroCount(ulong):ulong (FullOpts)\n\u002B; Total bytes of code 8, prolog size 0, PerfScore 3.25, instruction count 3, allocated bytes for code 8 (MethodHash=a1905688) for method System.UInt64:TrailingZeroCount(ulong):ulong (FullOpts)\n ; ============================================================","Truncated":false,"BaseBytes":10,"DiffBytes":8},{"Assembly":"System.Private.CoreLib.dasm","Method":"System.UIntPtr:LeadingZeroCount(nuint):nuint (FullOpts)","Category":"improvement","Description":"10 -\u003E 8 bytes (-2)","ExtraInfo":null,"Diff":"@@ -1,27 \u002B1,26 @@\n ; Assembly listing for method System.UIntPtr:LeadingZeroCount(nuint):nuint (FullOpts)\n ; Emitting BLENDED_CODE for x64 \u002B VEX \u002B EVEX on Unix\n ; FullOpts code\n ; optimized code\n ; rsp based frame\n ; partially interruptible\n ; No PGO data\n ; Final local variable assignments\n ;\n ;  V00 arg0         [V00,T00] (  3,  3   )    long  -\u003E  rdi         single-def\n ;# V01 OutArgs      [V01    ] (  1,  1   )  struct ( 0) [rsp\u002B0x00]  do-not-enreg[XS] addr-exposed \u0022OutgoingArgSpace\u0022 \u003CEmpty\u003E\n ;\n ; Lcl frame size = 0\n \n G_M34733_IG01:\n \t\t\t\t\t\t;; size=0 bbWeight=1 PerfScore 0.00\n G_M34733_IG02:\n        xor      eax, eax\n        lzcnt    rax, rdi\n-       cdqe     \n-\t\t\t\t\t\t;; size=9 bbWeight=1 PerfScore 2.50\n\u002B\t\t\t\t\t\t;; size=7 bbWeight=1 PerfScore 2.25\n G_M34733_IG03:\n        ret      \n \t\t\t\t\t\t;; size=1 bbWeight=1 PerfScore 1.00\n \n-; Total bytes of code 10, prolog size 0, PerfScore 3.50, instruction count 4, allocated bytes for code 10 (MethodHash=1fef7852) for method System.UIntPtr:LeadingZeroCount(nuint):nuint (FullOpts)\n\u002B; Total bytes of code 8, prolog size 0, PerfScore 3.25, instruction count 3, allocated bytes for code 8 (MethodHash=1fef7852) for method System.UIntPtr:LeadingZeroCount(nuint):nuint (FullOpts)\n ; ============================================================","Truncated":false,"BaseBytes":10,"DiffBytes":8},{"Assembly":"System.Private.CoreLib.dasm","Method":"System.UIntPtr:PopCount(nuint):nuint (FullOpts)","Category":"improvement","Description":"10 -\u003E 8 bytes (-2)","ExtraInfo":null,"Diff":"@@ -1,27 \u002B1,26 @@\n ; Assembly listing for method System.UIntPtr:PopCount(nuint):nuint (FullOpts)\n ; Emitting BLENDED_CODE for x64 \u002B VEX \u002B EVEX on Unix\n ; FullOpts code\n ; optimized code\n ; rsp based frame\n ; partially interruptible\n ; No PGO data\n ; Final local variable assignments\n ;\n ;  V00 arg0         [V00,T00] (  3,  3   )    long  -\u003E  rdi         single-def\n ;# V01 OutArgs      [V01    ] (  1,  1   )  struct ( 0) [rsp\u002B0x00]  do-not-enreg[XS] addr-exposed \u0022OutgoingArgSpace\u0022 \u003CEmpty\u003E\n ;\n ; Lcl frame size = 0\n \n G_M38476_IG01:\n \t\t\t\t\t\t;; size=0 bbWeight=1 PerfScore 0.00\n G_M38476_IG02:\n        xor      eax, eax\n        popcnt   rax, rdi\n-       cdqe     \n-\t\t\t\t\t\t;; size=9 bbWeight=1 PerfScore 2.50\n\u002B\t\t\t\t\t\t;; size=7 bbWeight=1 PerfScore 2.25\n G_M38476_IG03:\n        ret      \n \t\t\t\t\t\t;; size=1 bbWeight=1 PerfScore 1.00\n \n-; Total bytes of code 10, prolog size 0, PerfScore 3.50, instruction count 4, allocated bytes for code 10 (MethodHash=16bb69b3) for method System.UIntPtr:PopCount(nuint):nuint (FullOpts)\n\u002B; Total bytes of code 8, prolog size 0, PerfScore 3.25, instruction count 3, allocated bytes for code 8 (MethodHash=16bb69b3) for method System.UIntPtr:PopCount(nuint):nuint (FullOpts)\n ; ============================================================","Truncated":false,"BaseBytes":10,"DiffBytes":8},{"Assembly":"System.Private.CoreLib.dasm","Method":"System.UIntPtr:TrailingZeroCount(nuint):nuint (FullOpts)","Category":"improvement","Description":"10 -\u003E 8 bytes (-2)","ExtraInfo":null,"Diff":"@@ -1,27 \u002B1,26 @@\n ; Assembly listing for method System.UIntPtr:TrailingZeroCount(nuint):nuint (FullOpts)\n ; Emitting BLENDED_CODE for x64 \u002B VEX \u002B EVEX on Unix\n ; FullOpts code\n ; optimized code\n ; rsp based frame\n ; partially interruptible\n ; No PGO data\n ; Final local variable assignments\n ;\n ;  V00 arg0         [V00,T00] (  3,  3   )    long  -\u003E  rdi         single-def\n ;# V01 OutArgs      [V01    ] (  1,  1   )  struct ( 0) [rsp\u002B0x00]  do-not-enreg[XS] addr-exposed \u0022OutgoingArgSpace\u0022 \u003CEmpty\u003E\n ;\n ; Lcl frame size = 0\n \n G_M26499_IG01:\n \t\t\t\t\t\t;; size=0 bbWeight=1 PerfScore 0.00\n G_M26499_IG02:\n        xor      eax, eax\n        tzcnt    rax, rdi\n-       cdqe     \n-\t\t\t\t\t\t;; size=9 bbWeight=1 PerfScore 2.50\n\u002B\t\t\t\t\t\t;; size=7 bbWeight=1 PerfScore 2.25\n G_M26499_IG03:\n        ret      \n \t\t\t\t\t\t;; size=1 bbWeight=1 PerfScore 1.00\n \n-; Total bytes of code 10, prolog size 0, PerfScore 3.50, instruction count 4, allocated bytes for code 10 (MethodHash=2424987c) for method System.UIntPtr:TrailingZeroCount(nuint):nuint (FullOpts)\n\u002B; Total bytes of code 8, prolog size 0, PerfScore 3.25, instruction count 3, allocated bytes for code 8 (MethodHash=2424987c) for method System.UIntPtr:TrailingZeroCount(nuint):nuint (FullOpts)\n ; ============================================================","Truncated":false,"BaseBytes":10,"DiffBytes":8}]}