## Top method improvements

<details>
<summary>-134 (-16.98 % of base) - Analyzer.Utilities.Extensions.ListExtensions:ExtractAll[System.__Canon,System.Nullable`1[int]](System.Collections.Generic.List`1[System.__Canon],System.Func`3[System.__Canon,System.Nullable`1[int],bool],System.Nullable`1[int]):System.Collections.Immutable.ImmutableArray`1[System.__Canon]</summary>

```diff
 ; Assembly listing for method Analyzer.Utilities.Extensions.ListExtensions:ExtractAll[System.__Canon,System.Nullable`1[int]](System.Collections.Generic.List`1[System.__Canon],System.Func`3[System.__Canon,System.Nullable`1[int],bool],System.Nullable`1[int]):System.Collections.Immutable.ImmutableArray`1[System.__Canon] (FullOpts)
 ; Emitting BLENDED_CODE for x64 + VEX + EVEX on Unix
 ; FullOpts code
 ; optimized code
 ; rbp based frame
 ; partially interruptible
 ; No PGO data
-; 0 inlinees with PGO data; 12 single block inlinees; 4 inlinees without PGO data
+; 0 inlinees with PGO data; 11 single block inlinees; 4 inlinees without PGO data
 ; Final local variable assignments
 ;
-;  V00 TypeCtx      [V00,T17] (  7,  6   )    long  ->  r14         single-def
+;  V00 TypeCtx      [V00,T15] (  7,  6   )    long  ->  r14         single-def
 ;  V01 arg0         [V01,T02] ( 12, 24   )     ref  ->  rbx         class-hnd single-def <System.Collections.Generic.List`1[System.__Canon]>
-;  V02 arg1         [V02,T05] (  4, 10   )     ref  ->  r15         class-hnd single-def <System.Func`3[System.__Canon,System.Nullable`1[int],bool]>
-;  V03 arg2         [V03,T18] (  3,  6   )  struct ( 8) [rbp-0x38]  do-not-enreg[SF] single-def <System.Nullable`1[int]>
+;  V02 arg1         [V02,T04] (  4, 10   )     ref  ->  r15         class-hnd single-def <System.Func`3[System.__Canon,System.Nullable`1[int],bool]>
+;  V03 arg2         [V03,T16] (  3,  6   )  struct ( 8) [rbp-0x38]  do-not-enreg[SF] single-def <System.Nullable`1[int]>
 ;  V04 loc0         [V04,T01] ( 18, 26.50)     ref  ->  r13         class-hnd <System.Collections.Immutable.ImmutableArray`1+Builder[System.__Canon]>
-;* V05 loc1         [V05,T31] (  0,  0   )     int  ->  zero-ref   
-;  V06 loc2         [V06,T06] (  4, 12   )     ref  ->  [rbp-0x50]  class-hnd spill-single-def <System.__Canon>
+;* V05 loc1         [V05,T29] (  0,  0   )     int  ->  zero-ref   
+;  V06 loc2         [V06,T05] (  4, 12   )     ref  ->  [rbp-0x48]  class-hnd spill-single-def <System.__Canon>
 ;# V07 OutArgs      [V07    ] (  1,  1   )  struct ( 0) [rsp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace" <Empty>
 ;* V08 tmp1         [V08    ] (  0,  0   )    long  ->  zero-ref    "spilling helperCall"
 ;* V09 tmp2         [V09    ] (  0,  0   )     int  ->  zero-ref    "impAppendStmt"
 ;* V10 tmp3         [V10    ] (  0,  0   )     int  ->  zero-ref    "impAppendStmt"
 ;* V11 tmp4         [V11    ] (  0,  0   )     int  ->  zero-ref    "impAppendStmt"
 ;* V12 tmp5         [V12    ] (  0,  0   )    long  ->  zero-ref    "spilling helperCall"
-;  V13 tmp6         [V13,T04] (  6, 13.60)    long  ->  r13         "Inlining Arg"
-;* V14 tmp7         [V14    ] (  0,  0   )    long  ->  zero-ref    "spilling helperCall"
-;  V15 tmp8         [V15    ] (  2,  4   )  struct ( 8) [rbp-0x40]  do-not-enreg[XS] must-init addr-exposed ld-addr-op "Inline stloc first use temp" <System.Collections.Immutable.ImmutableArray`1[System.__Canon]>
-;* V16 tmp9         [V16    ] (  0,  0   )    long  ->  zero-ref    "spilling helperCall"
-;* V17 tmp10        [V17    ] (  0,  0   )    long  ->  zero-ref    "Inlining Arg"
+;  V13 tmp6         [V13,T13] (  4,  8.80)    long  ->  rdi         "Inlining Arg"
+;* V14 tmp7         [V14,T24] (  0,  0   )    long  ->  zero-ref    "spilling helperCall"
+;  V15 tmp8         [V15,T06] (  3, 12   )    long  ->  r13         "spilling helperCall"
+;  V16 tmp9         [V16,T12] (  5, 10   )     int  ->  [rbp-0x3C]  spill-single-def "Inline stloc first use temp"
+;* V17 tmp10        [V17    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V18 tmp11        [V18    ] (  0,  0   )    long  ->  zero-ref    "spilling helperCall"
-;  V19 tmp12        [V19,T14] (  5, 10   )     int  ->  [rbp-0x44]  spill-single-def "Inline stloc first use temp"
-;* V20 tmp13        [V20    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
-;* V21 tmp14        [V21    ] (  0,  0   )    long  ->  zero-ref    "spilling helperCall"
-;  V22 tmp15        [V22,T26] (  3,  6   )     int  ->  [rbp-0x48]  "Inline return value spill temp"
-;  V23 tmp16        [V23,T07] (  3, 12   )     int  ->  rcx         "Inlining Arg"
-;  V24 tmp17        [V24,T08] (  3, 12   )     int  ->  rsi         "Inlining Arg"
-;* V25 tmp18        [V25    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "NewObj constructor temp" <System.Collections.Immutable.ImmutableArray`1[System.__Canon]>
-;* V26 tmp19        [V26    ] (  0,  0   )    long  ->  zero-ref    "spilling helperCall"
-;* V27 tmp20        [V27    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <System.__Canon[]>
-;  V28 tmp21        [V28    ] (  2,  4   )     ref  ->  [rbp-0x40]  do-not-enreg[X] addr-exposed "field V15.array (fldOffset=0x0)" P-DEP
-;  V29 tmp22        [V29,T30] (  2,  1   )     ref  ->  rax         single-def "field V25.array (fldOffset=0x0)" P-INDEP
-;  V30 tmp23        [V30,T03] (  3, 24   )     ref  ->  rsi         "arr expr"
-;  V31 tmp24        [V31,T15] (  3,  8.80)    long  ->  rdi         "argument with side effect"
-;  V32 tmp25        [V32,T23] (  2,  8   )    long  ->  rsi         "argument with side effect"
-;  V33 tmp26        [V33,T24] (  2,  8   )    long  ->  rdi         "argument with side effect"
-;  V34 cse0         [V34,T25] (  3,  6   )     ref  ->  rdi         "CSE #01: moderate"
-;  V35 cse1         [V35,T29] (  3,  1.50)     int  ->  rdx         "CSE #02: moderate"
-;  V36 rat0         [V36,T00] (  8, 27   )    long  ->  r12         "Widened IV V05"
-;  V37 rat1         [V37,T09] (  3, 11.20)    long  ->  r13         "fgMakeTemp is creating a new local variable"
-;  V38 rat2         [V38,T19] (  3,  8   )    long  ->  rdi         "runtime lookup"
-;  V39 rat3         [V39,T10] (  3, 11.20)    long  ->  rdi         "fgMakeTemp is creating a new local variable"
-;  V40 rat4         [V40,T20] (  3,  8   )    long  ->  rsi         "runtime lookup"
-;  V41 rat5         [V41,T11] (  3, 11.20)    long  ->  rsi         "fgMakeTemp is creating a new local variable"
-;  V42 rat6         [V42,T21] (  3,  8   )    long  ->  rsi         "runtime lookup"
-;  V43 rat7         [V43,T12] (  3, 11.20)    long  ->  rsi         "fgMakeTemp is creating a new local variable"
-;  V44 rat8         [V44,T16] (  3,  8.80)    long  ->  rdi         "Spilling to split statement for tree"
-;  V45 rat9         [V45,T22] (  3,  8   )    long  ->  rdi         "runtime lookup"
-;  V46 rat10        [V46,T13] (  3, 11.20)    long  ->  rdx         "fgMakeTemp is creating a new local variable"
-;  V47 rat11        [V47,T28] (  3,  2   )    long  ->  rdi         "runtime lookup"
-;  V48 rat12        [V48,T27] (  3,  2.80)    long  ->  rdi         "fgMakeTemp is creating a new local variable"
+;  V19 tmp12        [V19,T22] (  3,  6   )     int  ->  [rbp-0x40]  "Inline return value spill temp"
+;  V20 tmp13        [V20,T07] (  3, 12   )     int  ->  rcx         "Inlining Arg"
+;  V21 tmp14        [V21,T08] (  3, 12   )     int  ->  rsi         "Inlining Arg"
+;* V22 tmp15        [V22    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "NewObj constructor temp" <System.Collections.Immutable.ImmutableArray`1[System.__Canon]>
+;* V23 tmp16        [V23    ] (  0,  0   )    long  ->  zero-ref    "spilling helperCall"
+;* V24 tmp17        [V24    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <System.__Canon[]>
+;  V25 tmp18        [V25,T28] (  2,  1   )     ref  ->  rax         single-def "field V22.array (fldOffset=0x0)" P-INDEP
+;  V26 tmp19        [V26,T03] (  3, 24   )     ref  ->  rsi         "arr expr"
+;  V27 tmp20        [V27,T19] (  2,  8   )   byref  ->  rdi         "argument with side effect"
+;  V28 tmp21        [V28,T20] (  2,  8   )    long  ->  rdi         "argument with side effect"
+;  V29 cse0         [V29,T23] (  2,  4   )    long  ->  r13         "CSE #01: moderate"
+;  V30 cse1         [V30,T21] (  3,  6   )     ref  ->  rdi         "CSE #02: moderate"
+;  V31 cse2         [V31,T27] (  3,  1.50)     int  ->  rdx         "CSE #03: moderate"
+;  V32 rat0         [V32,T00] (  8, 27   )    long  ->  r12         "Widened IV V05"
+;  V33 rat1         [V33,T09] (  3, 11.20)    long  ->  rdi         "fgMakeTemp is creating a new local variable"
+;  V34 rat2         [V34,T17] (  3,  8   )    long  ->  r13         "runtime lookup"
+;  V35 rat3         [V35,T10] (  3, 11.20)    long  ->  r13         "fgMakeTemp is creating a new local variable"
+;  V36 rat4         [V36,T14] (  3,  8.80)    long  ->  rdi         "Spilling to split statement for tree"
+;  V37 rat5         [V37,T18] (  3,  8   )    long  ->  rdi         "runtime lookup"
+;  V38 rat6         [V38,T11] (  3, 11.20)    long  ->  rdx         "fgMakeTemp is creating a new local variable"
+;  V39 rat7         [V39,T26] (  3,  2   )    long  ->  rdi         "runtime lookup"
+;  V40 rat8         [V40,T25] (  3,  2.80)    long  ->  rdi         "fgMakeTemp is creating a new local variable"
 ;
 ; Lcl frame size = 40
 
 G_M6363_IG01:
        push     rbp
        push     r15
        push     r14
        push     r13
        push     r12
        push     rbx
        sub      rsp, 40
        lea      rbp, [rsp+0x50]
-       xor      eax, eax
-       mov      qword ptr [rbp-0x40], rax
        mov      qword ptr [rbp-0x30], rdi
        mov      qword ptr [rbp-0x38], rcx
        mov      r14, rdi
        mov      rbx, rsi
        mov      r15, rdx
-						;; size=42 bbWeight=1 PerfScore 10.75
+						;; size=36 bbWeight=1 PerfScore 9.50
 G_M6363_IG02:
        xor      r13, r13
        xor      r12d, r12d
        cmp      dword ptr [rbx+0x10], 0
-       jle      G_M6363_IG21
+       jle      G_M6363_IG17
 						;; size=16 bbWeight=1 PerfScore 3.50
 G_M6363_IG03:
        cmp      r12d, dword ptr [rbx+0x10]
-       jae      G_M6363_IG31
+       jae      G_M6363_IG27
        mov      rsi, gword ptr [rbx+0x08]
        cmp      r12d, dword ptr [rsi+0x08]
-       jae      G_M6363_IG32
+       jae      G_M6363_IG28
        mov      rax, gword ptr [rsi+8*r12+0x10]
-       mov      gword ptr [rbp-0x50], rax
+       mov      gword ptr [rbp-0x48], rax
        mov      rsi, rax
        mov      rdx, qword ptr [rbp-0x38]
        mov      rdi, gword ptr [r15+0x10]
        call     [r15+0x18]System.Func`3[System.__Canon,System.Nullable`1[int],bool]:Invoke(System.__Canon,System.Nullable`1[int]):bool:this
        test     eax, eax
        jne      SHORT G_M6363_IG05
 						;; size=52 bbWeight=4 PerfScore 74.00
 G_M6363_IG04:
        test     r13, r13
-       je       G_M6363_IG20
+       je       G_M6363_IG16
        mov      esi, r12d
        sub      esi, dword ptr [r13+0x10]
        cmp      esi, dword ptr [rbx+0x10]
-       jae      G_M6363_IG31
+       jae      G_M6363_IG27
        mov      rdi, gword ptr [rbx+0x08]
        movsxd   rsi, esi
-       mov      rdx, gword ptr [rbp-0x50]
+       mov      rdx, gword ptr [rbp-0x48]
        mov      rax, 0xD1FFAB1E      ; code for CORINFO_HELP_ARRADDR_ST
        call     [rax]CORINFO_HELP_ARRADDR_ST
        inc      dword ptr [rbx+0x14]
-       jmp      G_M6363_IG20
+       jmp      G_M6363_IG16
 						;; size=56 bbWeight=2 PerfScore 36.00
 G_M6363_IG05:
        test     r13, r13
-       jne      SHORT G_M6363_IG10
+       jne      SHORT G_M6363_IG08
        mov      rdi, qword ptr [r14+0x18]
-       mov      r13, qword ptr [rdi+0x18]
-       test     r13, r13
-       je       G_M6363_IG11
-						;; size=22 bbWeight=2 PerfScore 13.00
-G_M6363_IG06:
-       mov      rdi, qword ptr [r13+0x18]
-       mov      rdi, qword ptr [rdi+0x10]
+       mov      rdi, qword ptr [rdi+0x18]
        test     rdi, rdi
-       je       G_M6363_IG12
-						;; size=17 bbWeight=2 PerfScore 10.50
-G_M6363_IG07:
+       je       SHORT G_M6363_IG09
+						;; size=18 bbWeight=2 PerfScore 13.00
+G_M6363_IG06:
        mov      rsi, qword ptr [rdi+0x18]
-       mov      rsi, qword ptr [rsi+0x10]
-       test     rsi, rsi
-       je       G_M6363_IG13
-						;; size=17 bbWeight=2 PerfScore 10.50
-G_M6363_IG08:
-       mov      rdi, rsi
+       mov      r13, qword ptr [rsi+0x10]
+       test     r13, r13
+       je       SHORT G_M6363_IG10
+						;; size=13 bbWeight=2 PerfScore 10.50
+G_M6363_IG07:
+       mov      rdi, r13
        mov      rax, 0xD1FFAB1E      ; code for CORINFO_HELP_GET_GCSTATIC_BASE
        call     [rax]CORINFO_HELP_GET_GCSTATIC_BASE
        mov      rdi, gword ptr [rax]
-       mov      rdi, gword ptr [rdi+0x08]
-       mov      gword ptr [rbp-0x40], rdi
-       mov      rdi, qword ptr [r13+0x18]
-       mov      rsi, qword ptr [rdi+0x18]
-       test     rsi, rsi
-       je       G_M6363_IG14
-						;; size=43 bbWeight=2 PerfScore 27.50
-G_M6363_IG09:
-       lea      rdi, [rbp-0x40]
+       add      rdi, 8
+       mov      rsi, r13
        mov      rax, 0xD1FFAB1E      ; code for System.Collections.Immutable.ImmutableArray`1[System.__Canon]:ToBuilder():System.Collections.Immutable.ImmutableArray`1+Builder[System.__Canon]:this
        call     [rax]System.Collections.Immutable.ImmutableArray`1[System.__Canon]:ToBuilder():System.Collections.Immutable.ImmutableArray`1+Builder[System.__Canon]:this
        mov      r13, rax
-						;; size=19 bbWeight=2 PerfScore 8.00
-G_M6363_IG10:
+						;; size=40 bbWeight=2 PerfScore 19.00
+G_M6363_IG08:
        mov      eax, dword ptr [r13+0x10]
        inc      eax
-       mov      dword ptr [rbp-0x44], eax
+       mov      dword ptr [rbp-0x3C], eax
        mov      rdi, gword ptr [r13+0x08]
        cmp      dword ptr [rdi+0x08], eax
-       jge      G_M6363_IG15
+       jge      SHORT G_M6363_IG11
        mov      ecx, dword ptr [rdi+0x08]
        add      ecx, ecx
        cmp      ecx, eax
-       jge      G_M6363_IG16
-       mov      dword ptr [rbp-0x48], eax
-       mov      ecx, dword ptr [rbp-0x48]
-       jmp      G_M6363_IG16
-						;; size=46 bbWeight=2 PerfScore 31.50
-G_M6363_IG11:
+       jge      SHORT G_M6363_IG12
+       mov      dword ptr [rbp-0x40], eax
+       mov      ecx, dword ptr [rbp-0x40]
+       jmp      SHORT G_M6363_IG12
+						;; size=35 bbWeight=2 PerfScore 31.50
+G_M6363_IG09:
        mov      rdi, r14
        mov      rsi, 0xD1FFAB1E      ; global ptr
        mov      rax, 0xD1FFAB1E      ; code for CORINFO_HELP_RUNTIMEHANDLE_METHOD
        call     [rax]CORINFO_HELP_RUNTIMEHANDLE_METHOD
-       mov      r13, rax
-       jmp      G_M6363_IG06
-						;; size=33 bbWeight=0.40 PerfScore 2.40
-G_M6363_IG12:
-       mov      rdi, r13
-       mov      rsi, 0xD1FFAB1E      ; global ptr
-       mov      rax, 0xD1FFAB1E      ; code for CORINFO_HELP_RUNTIMEHANDLE_METHOD
-       call     [rax]CORINFO_HELP_RUNTIMEHANDLE_METHOD
        mov      rdi, rax
+       jmp      SHORT G_M6363_IG06
+						;; size=30 bbWeight=0.40 PerfScore 2.40
+G_M6363_IG10:
+       mov      rsi, 0xD1FFAB1E      ; global ptr
+       mov      rax, 0xD1FFAB1E      ; code for CORINFO_HELP_RUNTIMEHANDLE_METHOD
+       call     [rax]CORINFO_HELP_RUNTIMEHANDLE_METHOD
+       mov      r13, rax
        jmp      G_M6363_IG07
-						;; size=33 bbWeight=0.40 PerfScore 2.40
-G_M6363_IG13:
-       mov      rsi, 0xD1FFAB1E      ; global ptr
-       mov      rax, 0xD1FFAB1E      ; code for CORINFO_HELP_RUNTIMEHANDLE_METHOD
-       call     [rax]CORINFO_HELP_RUNTIMEHANDLE_METHOD
-       mov      rsi, rax
-       jmp      G_M6363_IG08
 						;; size=30 bbWeight=0.40 PerfScore 2.30
-G_M6363_IG14:
-       mov      rdi, r13
-       mov      rsi, 0xD1FFAB1E      ; global ptr
-       mov      rax, 0xD1FFAB1E      ; code for CORINFO_HELP_RUNTIMEHANDLE_METHOD
-       call     [rax]CORINFO_HELP_RUNTIMEHANDLE_METHOD
-       mov      rsi, rax
-       jmp      G_M6363_IG09
-						;; size=33 bbWeight=0.40 PerfScore 2.40
-G_M6363_IG15:
-       jmp      SHORT G_M6363_IG19
+G_M6363_IG11:
+       jmp      SHORT G_M6363_IG15
 						;; size=2 bbWeight=1 PerfScore 2.00
-G_M6363_IG16:
+G_M6363_IG12:
        mov      rdi, qword ptr [r13]
        mov      rsi, qword ptr [rdi+0x30]
        mov      rsi, qword ptr [rsi]
        mov      rdx, qword ptr [rsi+0x20]
        test     rdx, rdx
-       je       SHORT G_M6363_IG25
+       je       SHORT G_M6363_IG21
 						;; size=20 bbWeight=2 PerfScore 18.50
-G_M6363_IG17:
+G_M6363_IG13:
        mov      rdi, rdx
 						;; size=3 bbWeight=1.60 PerfScore 0.40
-G_M6363_IG18:
+G_M6363_IG14:
        lea      rsi, bword ptr [r13+0x08]
        mov      edx, ecx
        mov      rcx, 0xD1FFAB1E      ; code for System.Array:Resize[System.__Canon](byref,int)
        call     [rcx]System.Array:Resize[System.__Canon](byref,int)
 						;; size=18 bbWeight=2 PerfScore 8.00
-G_M6363_IG19:
+G_M6363_IG15:
        movsxd   rsi, dword ptr [r13+0x10]
        mov      rdi, gword ptr [r13+0x08]
-       mov      rdx, gword ptr [rbp-0x50]
+       mov      rdx, gword ptr [rbp-0x48]
        mov      rcx, 0xD1FFAB1E      ; code for CORINFO_HELP_ARRADDR_ST
        call     [rcx]CORINFO_HELP_ARRADDR_ST
-       mov      esi, dword ptr [rbp-0x44]
+       mov      esi, dword ptr [rbp-0x3C]
        mov      dword ptr [r13+0x10], esi
 						;; size=31 bbWeight=2 PerfScore 20.50
-G_M6363_IG20:
+G_M6363_IG16:
        inc      r12d
        cmp      r12d, dword ptr [rbx+0x10]
        jl       G_M6363_IG03
 						;; size=13 bbWeight=4 PerfScore 13.00
-G_M6363_IG21:
+G_M6363_IG17:
        test     r13, r13
-       jne      SHORT G_M6363_IG26
+       jne      SHORT G_M6363_IG22
 						;; size=5 bbWeight=1 PerfScore 1.25
-G_M6363_IG22:
+G_M6363_IG18:
        mov      rdi, qword ptr [r14+0x18]
        mov      rdi, qword ptr [rdi+0x20]
        test     rdi, rdi
-       je       G_M6363_IG30
+       je       G_M6363_IG26
 						;; size=17 bbWeight=0.50 PerfScore 2.62
-G_M6363_IG23:
+G_M6363_IG19:
        mov      rax, 0xD1FFAB1E      ; code for CORINFO_HELP_GET_GCSTATIC_BASE
        call     [rax]CORINFO_HELP_GET_GCSTATIC_BASE
        mov      rax, gword ptr [rax]
        mov      rax, gword ptr [rax+0x08]
 						;; size=19 bbWeight=0.50 PerfScore 3.62
-G_M6363_IG24:
+G_M6363_IG20:
        add      rsp, 40
        pop      rbx
        pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
 						;; size=15 bbWeight=0.50 PerfScore 2.12
-G_M6363_IG25:
-       mov      dword ptr [rbp-0x48], ecx
+G_M6363_IG21:
+       mov      dword ptr [rbp-0x40], ecx
        mov      rsi, 0xD1FFAB1E      ; global ptr
        mov      rdx, 0xD1FFAB1E      ; code for CORINFO_HELP_RUNTIMEHANDLE_CLASS
        call     [rdx]CORINFO_HELP_RUNTIMEHANDLE_CLASS
        mov      rdi, rax
-       mov      ecx, dword ptr [rbp-0x48]
-       jmp      G_M6363_IG18
+       mov      ecx, dword ptr [rbp-0x40]
+       jmp      G_M6363_IG14
 						;; size=36 bbWeight=0.40 PerfScore 3.10
-G_M6363_IG26:
+G_M6363_IG22:
        mov      esi, dword ptr [rbx+0x10]
        mov      edx, dword ptr [r13+0x10]
        sub      esi, edx
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1[System.__Canon]:RemoveRange(int,int):this
        call     [rax]System.Collections.Generic.List`1[System.__Canon]:RemoveRange(int,int):this
        mov      rdi, gword ptr [r13+0x08]
        mov      edi, dword ptr [rdi+0x08]
        cmp      edi, dword ptr [r13+0x10]
-       jne      SHORT G_M6363_IG28
+       jne      SHORT G_M6363_IG24
        mov      rdi, r13
        mov      rax, 0xD1FFAB1E      ; code for System.Collections.Immutable.ImmutableArray`1+Builder[System.__Canon]:MoveToImmutable():System.Collections.Immutable.ImmutableArray`1[System.__Canon]:this
-       call     [rax]System.Collections.Immutable.ImmutableArray`1+Builder[System.__Canon]:MoveToImmutable():System.Collections.Immutable.ImmutableArray`1[System.__Canon]:this
-       nop      
-						;; size=53 bbWeight=0.50 PerfScore 9.25
-G_M6363_IG27:
+						;; size=50 bbWeight=0.50 PerfScore 7.62
+G_M6363_IG23:
        add      rsp, 40
        pop      rbx
        pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
-       ret      
-						;; size=15 bbWeight=0.50 PerfScore 2.12
-G_M6363_IG28:
+       tail.jmp [rax]System.Collections.Immutable.ImmutableArray`1+Builder[System.__Canon]:MoveToImmutable():System.Collections.Immutable.ImmutableArray`1[System.__Canon]:this
+						;; size=17 bbWeight=0.50 PerfScore 2.62
+G_M6363_IG24:
        mov      rdi, r13
        mov      rax, 0xD1FFAB1E      ; code for System.Collections.Immutable.ImmutableArray`1+Builder[System.__Canon]:ToArray():System.__Canon[]:this
        call     [rax]System.Collections.Immutable.ImmutableArray`1+Builder[System.__Canon]:ToArray():System.__Canon[]:this
        nop      
 						;; size=16 bbWeight=0.50 PerfScore 1.88
-G_M6363_IG29:
+G_M6363_IG25:
        add      rsp, 40
        pop      rbx
        pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
 						;; size=15 bbWeight=0.50 PerfScore 2.12
-G_M6363_IG30:
+G_M6363_IG26:
        mov      rdi, r14
        mov      rsi, 0xD1FFAB1E      ; global ptr
        mov      rax, 0xD1FFAB1E      ; code for CORINFO_HELP_RUNTIMEHANDLE_METHOD
        call     [rax]CORINFO_HELP_RUNTIMEHANDLE_METHOD
        mov      rdi, rax
-       jmp      G_M6363_IG23
+       jmp      G_M6363_IG19
 						;; size=33 bbWeight=0.10 PerfScore 0.60
-G_M6363_IG31:
+G_M6363_IG27:
        mov      rax, 0xD1FFAB1E      ; code for System.ThrowHelper:ThrowArgumentOutOfRange_IndexMustBeLessException()
        call     [rax]System.ThrowHelper:ThrowArgumentOutOfRange_IndexMustBeLessException()
        int3     
 						;; size=13 bbWeight=0 PerfScore 0.00
-G_M6363_IG32:
+G_M6363_IG28:
        call     CORINFO_HELP_RNGCHKFAIL
        int3     
 						;; size=6 bbWeight=0 PerfScore 0.00
 
-; Total bytes of code 789, prolog size 29, PerfScore 325.85, instruction count 201, allocated bytes for code 789 (MethodHash=48a7e724) for method Analyzer.Utilities.Extensions.ListExtensions:ExtractAll[System.__Canon,System.Nullable`1[int]](System.Collections.Generic.List`1[System.__Canon],System.Func`3[System.__Canon,System.Nullable`1[int],bool],System.Nullable`1[int]):System.Collections.Immutable.ImmutableArray`1[System.__Canon] (FullOpts)
+; Total bytes of code 655, prolog size 23, PerfScore 291.67, instruction count 176, allocated bytes for code 655 (MethodHash=48a7e724) for method Analyzer.Utilities.Extensions.ListExtensions:ExtractAll[System.__Canon,System.Nullable`1[int]](System.Collections.Generic.List`1[System.__Canon],System.Func`3[System.__Canon,System.Nullable`1[int],bool],System.Nullable`1[int]):System.Collections.Immutable.ImmutableArray`1[System.__Canon] (FullOpts)
 ; ============================================================
```

</details>


<details>
<summary>-110 (-9.09 % of base) - SharpYaml.Serialization.Converters.YamlImmutableArrayConverter`1[System.__Canon]:Read(SharpYaml.Serialization.YamlReader):System.Collections.Immutable.ImmutableArray`1[System.__Canon]:this</summary>

```diff
 ; Assembly listing for method SharpYaml.Serialization.Converters.YamlImmutableArrayConverter`1[System.__Canon]:Read(SharpYaml.Serialization.YamlReader):System.Collections.Immutable.ImmutableArray`1[System.__Canon]:this (FullOpts)
 ; Emitting BLENDED_CODE for x64 + VEX + EVEX on Unix
 ; FullOpts code
 ; optimized code
 ; rbp based frame
 ; partially interruptible
 ; No PGO data
-; 0 inlinees with PGO data; 22 single block inlinees; 5 inlinees without PGO data
+; 0 inlinees with PGO data; 21 single block inlinees; 5 inlinees without PGO data
 ; Final local variable assignments
 ;
 ;  V00 this         [V00,T09] (  9,  9   )     ref  ->  r15         this class-hnd single-def <SharpYaml.Serialization.Converters.YamlImmutableArrayConverter`1[System.__Canon]>
 ;  V01 arg1         [V01,T03] ( 17, 15   )     ref  ->  rbx         class-hnd single-def <SharpYaml.Serialization.YamlReader>
 ;  V02 loc0         [V02    ] (  4,  2.25)     ref  ->  [rbp-0x38]  do-not-enreg[X] must-init addr-exposed ld-addr-op class-hnd <System.Object>
-;  V03 loc1         [V03,T40] (  3,  1.50)     ref  ->  r13         class-hnd exact single-def <System.String>
+;  V03 loc1         [V03,T36] (  3,  1.50)     ref  ->  r13         class-hnd exact single-def <System.String>
 ;  V04 loc2         [V04,T01] ( 11, 27.50)     ref  ->  r12         class-hnd exact single-def <System.Collections.Immutable.ImmutableArray`1+Builder[System.__Canon]>
 ;* V05 loc3         [V05    ] (  0,  0   )  struct ( 8) zero-ref    <System.Collections.Immutable.ImmutableArray`1[System.__Canon]>
 ;* V06 loc4         [V06    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op <System.Collections.Immutable.ImmutableArray`1[System.__Canon]>
 ;  V07 loc5         [V07,T12] (  3,  9   )     ref  ->  rax         class-hnd <System.Object>
 ;  V08 OutArgs      [V08    ] (  1,  1   )  struct ( 8) [rsp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace" <UNNAMED>
 ;* V09 tmp1         [V09    ] (  0,  0   )    long  ->  zero-ref    "spilling helperCall"
-;  V10 tmp2         [V10,T19] (  3,  3   )     ref  ->  r12         class-hnd exact single-def "Single-def Box Helper" <System.Collections.Immutable.ImmutableArray`1[System.__Canon]>
+;  V10 tmp2         [V10,T18] (  3,  3   )     ref  ->  r12         class-hnd exact single-def "Single-def Box Helper" <System.Collections.Immutable.ImmutableArray`1[System.__Canon]>
 ;* V11 tmp3         [V11    ] (  0,  0   )    long  ->  zero-ref    "spilling helperCall"
-;  V12 tmp4         [V12,T46] (  3,  0   )  struct (16) [rbp-0x48]  do-not-enreg[SFARM] multireg-arg multireg-ret multireg-dest "Return value temp for multireg return" <SharpYaml.Mark>
-;  V13 tmp5         [V13,T48] (  2,  0   )     ref  ->  r14         class-hnd exact single-def "impAppendStmt" <System.String>
-;  V14 tmp6         [V14,T47] (  3,  0   )  struct (16) [rbp-0x58]  do-not-enreg[SFARM] multireg-arg multireg-ret multireg-dest "Return value temp for multireg return" <SharpYaml.Mark>
-;  V15 tmp7         [V15,T45] (  3,  0   )     ref  ->  rbx         class-hnd exact single-def "NewObj constructor temp" <SharpYaml.YamlException>
-;* V16 tmp8         [V16,T44] (  0,  0   )    long  ->  zero-ref    "spilling helperCall"
-;  V17 tmp9         [V17,T29] (  3,  2.50)    long  ->  rdi         "spilling helperCall"
+;  V12 tmp4         [V12,T44] (  3,  0   )  struct (16) [rbp-0x48]  do-not-enreg[SFARM] multireg-arg multireg-ret multireg-dest "Return value temp for multireg return" <SharpYaml.Mark>
+;  V13 tmp5         [V13,T46] (  2,  0   )     ref  ->  r14         class-hnd exact single-def "impAppendStmt" <System.String>
+;  V14 tmp6         [V14,T45] (  3,  0   )  struct (16) [rbp-0x58]  do-not-enreg[SFARM] multireg-arg multireg-ret multireg-dest "Return value temp for multireg return" <SharpYaml.Mark>
+;  V15 tmp7         [V15,T43] (  3,  0   )     ref  ->  rbx         class-hnd exact single-def "NewObj constructor temp" <SharpYaml.YamlException>
+;* V16 tmp8         [V16,T41] (  0,  0   )    long  ->  zero-ref    "spilling helperCall"
+;  V17 tmp9         [V17,T27] (  3,  2.50)    long  ->  rdi         "spilling helperCall"
 ;* V18 tmp10        [V18    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <SharpYaml.Serialization.YamlReader+YamlReaderState>
 ;* V19 tmp11        [V19    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <SharpYaml.Serialization.YamlReader+YamlReaderState>
 ;* V20 tmp12        [V20    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <SharpYaml.Serialization.YamlReader+YamlReaderState>
 ;* V21 tmp13        [V21    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <SharpYaml.Serialization.YamlReader+YamlReaderState>
-;  V22 tmp14        [V22,T18] (  6,  3.40)    long  ->  r12         "Inlining Arg"
-;* V23 tmp15        [V23    ] (  0,  0   )    long  ->  zero-ref    "spilling helperCall"
-;  V24 tmp16        [V24    ] (  2,  1   )  struct ( 8) [rbp-0x60]  do-not-enreg[XS] must-init addr-exposed ld-addr-op "Inline stloc first use temp" <System.Collections.Immutable.ImmutableArray`1[System.__Canon]>
-;* V25 tmp17        [V25    ] (  0,  0   )    long  ->  zero-ref    "spilling helperCall"
-;* V26 tmp18        [V26    ] (  0,  0   )    long  ->  zero-ref    "Inlining Arg"
-;* V27 tmp19        [V27    ] (  0,  0   )    long  ->  zero-ref    "spilling helperCall"
-;  V28 tmp20        [V28,T04] (  5, 16   )     int  ->  [rbp-0x64]  spill-single-def "Inline stloc first use temp"
-;  V29 tmp21        [V29,T05] (  2, 16   )     ref  ->  [rbp-0x78]  class-hnd spill-single-def "Inlining Arg" <System.__Canon>
-;* V30 tmp22        [V30    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
-;* V31 tmp23        [V31    ] (  0,  0   )    long  ->  zero-ref    "spilling helperCall"
-;  V32 tmp24        [V32,T17] (  3,  6   )     int  ->  [rbp-0x68]  "Inline return value spill temp"
-;  V33 tmp25        [V33,T07] (  3, 12   )     int  ->  rdx         "Inlining Arg"
-;* V34 tmp26        [V34    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <SharpYaml.Serialization.YamlReader+YamlReaderState>
-;* V35 tmp27        [V35    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "NewObj constructor temp" <System.Collections.Immutable.ImmutableArray`1[System.__Canon]>
-;* V36 tmp28        [V36    ] (  0,  0   )    long  ->  zero-ref    "spilling helperCall"
-;* V37 tmp29        [V37    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <System.__Canon[]>
-;  V38 tmp30        [V38,T37] (  2,  2   )     ref  ->  rdx         class-hnd exact single-def "Inlining Arg" <System.Collections.Immutable.ImmutableArray`1[System.__Canon]>
-;  V39 tmp31        [V39,T20] (  3,  3   )     ref  ->  rdi         class-hnd exact single-def "dup spill" <SharpYaml.Serialization.References.YamlReferenceReader>
-;* V40 tmp32        [V40    ] (  0,  0   )     ref  ->  zero-ref    single-def
-;* V41 tmp33        [V41    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "NewObj constructor temp" <System.ArgumentNullException>
-;* V42 tmp34        [V42    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact single-def "NewObj constructor temp" <System.ArgumentNullException>
-;* V43 tmp35        [V43    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <SharpYaml.Serialization.YamlReader+YamlReaderState>
-;* V44 tmp36        [V44    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <SharpYaml.Serialization.References.YamlReferenceReader>
-;  V45 tmp37        [V45,T21] (  3,  3   )     ref  ->  rdi         class-hnd single-def "Inlining Arg" <System.Collections.Generic.Dictionary`2[System.String,System.Object]>
-;* V46 tmp38        [V46    ] (  0,  0   )     ref  ->  zero-ref    single-def "field V05.array (fldOffset=0x0)" P-INDEP
-;* V47 tmp39        [V47    ] (  0,  0   )     ref  ->  zero-ref    single-def "field V06.array (fldOffset=0x0)" P-INDEP
-;  V48 tmp40        [V48    ] (  2,  1   )     ref  ->  [rbp-0x60]  do-not-enreg[X] addr-exposed "field V24.array (fldOffset=0x0)" P-DEP
-;  V49 tmp41        [V49,T41] (  3,  1.50)     ref  ->  r14         single-def "field V35.array (fldOffset=0x0)" P-INDEP
-;  V50 tmp42        [V50,T38] (  2,  2   )     ref  ->  rsi         single-def "argument with side effect"
-;  V51 tmp43        [V51,T30] (  3,  2.20)    long  ->  rdi         "argument with side effect"
-;  V52 tmp44        [V52,T39] (  2,  2   )    long  ->  rsi         "argument with side effect"
-;  V53 tmp45        [V53,T06] (  2, 16   )     ref  ->  rdx         "argument with side effect"
-;  V54 tmp46        [V54,T02] (  3, 24   )     ref  ->  [rbp-0x80]  spill-single-def "argument with side effect"
-;  V55 tmp47        [V55,T15] (  2,  8   )    long  ->  rdi         "argument with side effect"
-;  V56 cse0         [V56,T28] (  4,  2   )    long  ->  rdi         multi-def "CSE #02: moderate"
-;  V57 cse1         [V57,T10] (  5, 11   )    long  ->  [rbp-0x70]  multi-def "CSE #08: aggressive"
-;  V58 cse2         [V58,T43] (  3,  1.50)     int  ->  rdi         "CSE #04: moderate"
-;  V59 cse3         [V59,T42] (  3,  1.50)     ref  ->  rdi         "CSE #05: moderate"
-;  V60 cse4         [V60,T16] (  9,  7.20)    long  ->  r14         multi-def "CSE #01: moderate"
-;  V61 rat0         [V61,T00] (  5, 30   )     ref  ->  registers   "replacement local"
-;  V62 rat1         [V62,T11] (  3, 10   )    long  ->  rdi         "CSE for expectedClsNode"
-;  V63 rat2         [V63,T32] (  3,  2   )    long  ->  rdi         "runtime lookup"
-;  V64 rat3         [V64,T22] (  3,  2.80)    long  ->  rdi         "fgMakeTemp is creating a new local variable"
-;  V65 rat4         [V65,T23] (  3,  2.80)    long  ->  r12         "fgMakeTemp is creating a new local variable"
-;  V66 rat5         [V66,T33] (  3,  2   )    long  ->  rdi         "runtime lookup"
-;  V67 rat6         [V67,T24] (  3,  2.80)    long  ->  rdi         "fgMakeTemp is creating a new local variable"
-;  V68 rat7         [V68,T34] (  3,  2   )    long  ->  rsi         "runtime lookup"
-;  V69 rat8         [V69,T25] (  3,  2.80)    long  ->  rsi         "fgMakeTemp is creating a new local variable"
-;  V70 rat9         [V70,T35] (  3,  2   )    long  ->  rsi         "runtime lookup"
-;  V71 rat10        [V71,T26] (  3,  2.80)    long  ->  rsi         "fgMakeTemp is creating a new local variable"
-;  V72 rat11        [V72,T13] (  3,  8.80)    long  ->  rdi         "Spilling to split statement for tree"
-;  V73 rat12        [V73,T14] (  3,  8   )    long  ->  rdi         "runtime lookup"
-;  V74 rat13        [V74,T08] (  3, 11.20)    long  ->   r8         "fgMakeTemp is creating a new local variable"
-;  V75 rat14        [V75,T31] (  3,  2.20)    long  ->  rdi         "Spilling to split statement for tree"
-;  V76 rat15        [V76,T36] (  3,  2   )    long  ->  rdi         "runtime lookup"
-;  V77 rat16        [V77,T27] (  3,  2.80)    long  ->  rax         "fgMakeTemp is creating a new local variable"
+;  V22 tmp14        [V22,T28] (  4,  2.20)    long  ->  rdi         "Inlining Arg"
+;* V23 tmp15        [V23,T42] (  0,  0   )    long  ->  zero-ref    "spilling helperCall"
+;  V24 tmp16        [V24,T21] (  3,  3   )    long  ->  r12         "spilling helperCall"
+;  V25 tmp17        [V25,T04] (  5, 16   )     int  ->  [rbp-0x5C]  spill-single-def "Inline stloc first use temp"
+;  V26 tmp18        [V26,T05] (  2, 16   )     ref  ->  [rbp-0x70]  class-hnd spill-single-def "Inlining Arg" <System.__Canon>
+;* V27 tmp19        [V27    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
+;* V28 tmp20        [V28    ] (  0,  0   )    long  ->  zero-ref    "spilling helperCall"
+;  V29 tmp21        [V29,T17] (  3,  6   )     int  ->  [rbp-0x60]  "Inline return value spill temp"
+;  V30 tmp22        [V30,T07] (  3, 12   )     int  ->  rdx         "Inlining Arg"
+;* V31 tmp23        [V31    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <SharpYaml.Serialization.YamlReader+YamlReaderState>
+;* V32 tmp24        [V32    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "NewObj constructor temp" <System.Collections.Immutable.ImmutableArray`1[System.__Canon]>
+;* V33 tmp25        [V33    ] (  0,  0   )    long  ->  zero-ref    "spilling helperCall"
+;* V34 tmp26        [V34    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <System.__Canon[]>
+;  V35 tmp27        [V35,T33] (  2,  2   )     ref  ->  rdx         class-hnd exact single-def "Inlining Arg" <System.Collections.Immutable.ImmutableArray`1[System.__Canon]>
+;  V36 tmp28        [V36,T19] (  3,  3   )     ref  ->  rdi         class-hnd exact single-def "dup spill" <SharpYaml.Serialization.References.YamlReferenceReader>
+;* V37 tmp29        [V37    ] (  0,  0   )     ref  ->  zero-ref    single-def
+;* V38 tmp30        [V38    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "NewObj constructor temp" <System.ArgumentNullException>
+;* V39 tmp31        [V39    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact single-def "NewObj constructor temp" <System.ArgumentNullException>
+;* V40 tmp32        [V40    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <SharpYaml.Serialization.YamlReader+YamlReaderState>
+;* V41 tmp33        [V41    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <SharpYaml.Serialization.References.YamlReferenceReader>
+;  V42 tmp34        [V42,T20] (  3,  3   )     ref  ->  rdi         class-hnd single-def "Inlining Arg" <System.Collections.Generic.Dictionary`2[System.String,System.Object]>
+;* V43 tmp35        [V43    ] (  0,  0   )     ref  ->  zero-ref    single-def "field V05.array (fldOffset=0x0)" P-INDEP
+;* V44 tmp36        [V44    ] (  0,  0   )     ref  ->  zero-ref    single-def "field V06.array (fldOffset=0x0)" P-INDEP
+;  V45 tmp37        [V45,T37] (  3,  1.50)     ref  ->  r14         single-def "field V32.array (fldOffset=0x0)" P-INDEP
+;  V46 tmp38        [V46,T34] (  2,  2   )     ref  ->  rsi         single-def "argument with side effect"
+;  V47 tmp39        [V47,T35] (  2,  2   )   byref  ->  rdi         single-def "argument with side effect"
+;  V48 tmp40        [V48,T06] (  2, 16   )     ref  ->  rdx         "argument with side effect"
+;  V49 tmp41        [V49,T02] (  3, 24   )     ref  ->  [rbp-0x78]  spill-single-def "argument with side effect"
+;  V50 tmp42        [V50,T15] (  2,  8   )    long  ->  rdi         "argument with side effect"
+;  V51 cse0         [V51,T26] (  4,  2   )    long  ->  rdi         multi-def "CSE #02: moderate"
+;  V52 cse1         [V52,T39] (  2,  1   )    long  ->  r12         "CSE #06: moderate"
+;  V53 cse2         [V53,T10] (  5, 11   )    long  ->  [rbp-0x68]  multi-def "CSE #09: aggressive"
+;  V54 cse3         [V54,T40] (  3,  1.50)     int  ->  rdi         "CSE #04: moderate"
+;  V55 cse4         [V55,T38] (  3,  1.50)     ref  ->  rdi         "CSE #05: moderate"
+;  V56 cse5         [V56,T16] (  9,  7.20)    long  ->  r14         multi-def "CSE #01: moderate"
+;  V57 rat0         [V57,T00] (  5, 30   )     ref  ->  registers   "replacement local"
+;  V58 rat1         [V58,T11] (  3, 10   )    long  ->  rdi         "CSE for expectedClsNode"
+;  V59 rat2         [V59,T30] (  3,  2   )    long  ->  rdi         "runtime lookup"
+;  V60 rat3         [V60,T22] (  3,  2.80)    long  ->  rdi         "fgMakeTemp is creating a new local variable"
+;  V61 rat4         [V61,T23] (  3,  2.80)    long  ->  rdi         "fgMakeTemp is creating a new local variable"
+;  V62 rat5         [V62,T31] (  3,  2   )    long  ->  r12         "runtime lookup"
+;  V63 rat6         [V63,T24] (  3,  2.80)    long  ->  r12         "fgMakeTemp is creating a new local variable"
+;  V64 rat7         [V64,T13] (  3,  8.80)    long  ->  rdi         "Spilling to split statement for tree"
+;  V65 rat8         [V65,T14] (  3,  8   )    long  ->  rdi         "runtime lookup"
+;  V66 rat9         [V66,T08] (  3, 11.20)    long  ->   r8         "fgMakeTemp is creating a new local variable"
+;  V67 rat10        [V67,T29] (  3,  2.20)    long  ->  rdi         "Spilling to split statement for tree"
+;  V68 rat11        [V68,T32] (  3,  2   )    long  ->  rdi         "runtime lookup"
+;  V69 rat12        [V69,T25] (  3,  2.80)    long  ->  rax         "fgMakeTemp is creating a new local variable"
 ;
-; Lcl frame size = 104
+; Lcl frame size = 88
 
 G_M29953_IG01:
        push     rbp
        push     r15
        push     r14
        push     r13
        push     r12
        push     rbx
-       sub      rsp, 104
-       lea      rbp, [rsp+0x90]
+       sub      rsp, 88
+       lea      rbp, [rsp+0x80]
        xor      eax, eax
        mov      qword ptr [rbp-0x38], rax
-       mov      qword ptr [rbp-0x60], rax
        mov      qword ptr [rbp-0x30], rdi
        mov      r15, rdi
        mov      rbx, rsi
-						;; size=42 bbWeight=1 PerfScore 10.50
+						;; size=38 bbWeight=1 PerfScore 9.50
 G_M29953_IG02:
        lea      rsi, [rbp-0x38]
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for SharpYaml.Serialization.YamlReader:TryReadAlias(byref):bool:this
        cmp      dword ptr [rdi], edi
        call     [rax]SharpYaml.Serialization.YamlReader:TryReadAlias(byref):bool:this
        test     eax, eax
-       jne      G_M29953_IG34
+       jne      G_M29953_IG30
 						;; size=29 bbWeight=1 PerfScore 7.25
 G_M29953_IG03:
        mov      rdi, gword ptr [rbx+0x38]
        mov      edi, dword ptr [rdi+0x48]
        cmp      edi, 10
-       je       G_M29953_IG40
+       je       G_M29953_IG36
        cmp      edi, 9
        jne      SHORT G_M29953_IG04
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for SharpYaml.Serialization.YamlScalar:IsNull(SharpYaml.Serialization.YamlReader):bool
        call     [rax]SharpYaml.Serialization.YamlScalar:IsNull(SharpYaml.Serialization.YamlReader):bool
        test     eax, eax
-       jne      G_M29953_IG32
+       jne      G_M29953_IG28
 						;; size=44 bbWeight=0.50 PerfScore 5.62
 G_M29953_IG04:
        mov      rdi, gword ptr [rbx+0x38]
        cmp      dword ptr [rdi+0x48], 7
-       jne      G_M29953_IG41
+       jne      G_M29953_IG37
        cmp      gword ptr [r15+0x08], 0
        jne      SHORT G_M29953_IG05
        mov      r14, qword ptr [r15]
        mov      rdi, qword ptr [r14+0x30]
        mov      rdi, qword ptr [rdi+0x08]
        mov      r13, qword ptr [rdi]
        mov      rdi, r13
        mov      rax, 0xD1FFAB1E      ; code for CORINFO_HELP_TYPEHANDLE_TO_RUNTIMETYPE
        call     [rax]CORINFO_HELP_TYPEHANDLE_TO_RUNTIMETYPE
        mov      rsi, rax
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for SharpYaml.Serialization.YamlReaderWriterBase:GetConverter(System.Type):SharpYaml.Serialization.YamlConverter:this
        call     [rax]SharpYaml.Serialization.YamlReaderWriterBase:GetConverter(System.Type):SharpYaml.Serialization.YamlConverter:this
        mov      rsi, rax
        lea      rdi, bword ptr [r15+0x08]
        call     CORINFO_HELP_ASSIGN_REF
 						;; size=80 bbWeight=0.50 PerfScore 12.50
 G_M29953_IG05:
        mov      rdi, gword ptr [rbx+0x38]
        mov      r13, gword ptr [rdi+0x20]
        mov      rax, 0xD1FFAB1E      ; code for SharpYaml.Serialization.YamlReader+YamlReaderState:Read():bool:this
        call     [rax]SharpYaml.Serialization.YamlReader+YamlReaderState:Read():bool:this
        mov      r14, qword ptr [r15]
        mov      rdi, qword ptr [r14+0x30]
        mov      rdi, qword ptr [rdi+0x08]
-       mov      r12, qword ptr [rdi+0x10]
-       test     r12, r12
-       je       SHORT G_M29953_IG10
-						;; size=40 bbWeight=0.50 PerfScore 8.25
-G_M29953_IG06:
-       mov      rdi, qword ptr [r12+0x18]
        mov      rdi, qword ptr [rdi+0x10]
        test     rdi, rdi
-       je       SHORT G_M29953_IG11
-						;; size=14 bbWeight=0.50 PerfScore 2.62
-G_M29953_IG07:
+       je       SHORT G_M29953_IG08
+						;; size=40 bbWeight=0.50 PerfScore 8.25
+G_M29953_IG06:
        mov      rsi, qword ptr [rdi+0x18]
-       mov      rsi, qword ptr [rsi+0x10]
-       test     rsi, rsi
-       je       G_M29953_IG12
-						;; size=17 bbWeight=0.50 PerfScore 2.62
-G_M29953_IG08:
-       mov      rdi, rsi
+       mov      r12, qword ptr [rsi+0x10]
+       test     r12, r12
+       je       SHORT G_M29953_IG09
+						;; size=13 bbWeight=0.50 PerfScore 2.62
+G_M29953_IG07:
+       mov      rdi, r12
        mov      rax, 0xD1FFAB1E      ; code for CORINFO_HELP_GET_GCSTATIC_BASE
        call     [rax]CORINFO_HELP_GET_GCSTATIC_BASE
        mov      rdi, gword ptr [rax]
-       mov      rdi, gword ptr [rdi+0x08]
-       mov      gword ptr [rbp-0x60], rdi
-       mov      rdi, qword ptr [r12+0x18]
-       mov      rsi, qword ptr [rdi+0x18]
-       test     rsi, rsi
-       je       SHORT G_M29953_IG13
-						;; size=40 bbWeight=0.50 PerfScore 6.88
-G_M29953_IG09:
-       lea      rdi, [rbp-0x60]
+       add      rdi, 8
+       mov      rsi, r12
        mov      rax, 0xD1FFAB1E      ; code for System.Collections.Immutable.ImmutableArray`1[System.__Canon]:ToBuilder():System.Collections.Immutable.ImmutableArray`1+Builder[System.__Canon]:this
        call     [rax]System.Collections.Immutable.ImmutableArray`1[System.__Canon]:ToBuilder():System.Collections.Immutable.ImmutableArray`1+Builder[System.__Canon]:this
        mov      r12, rax
-       jmp      G_M29953_IG19
-						;; size=24 bbWeight=0.50 PerfScore 3.00
-G_M29953_IG10:
+       jmp      G_M29953_IG15
+						;; size=45 bbWeight=0.50 PerfScore 5.75
+G_M29953_IG08:
        mov      rdi, r14
        mov      rsi, 0xD1FFAB1E      ; global ptr
        mov      rax, 0xD1FFAB1E      ; code for CORINFO_HELP_RUNTIMEHANDLE_CLASS
        call     [rax]CORINFO_HELP_RUNTIMEHANDLE_CLASS
-       mov      r12, rax
+       mov      rdi, rax
        jmp      SHORT G_M29953_IG06
 						;; size=30 bbWeight=0.10 PerfScore 0.60
-G_M29953_IG11:
-       mov      rdi, r12
+G_M29953_IG09:
        mov      rsi, 0xD1FFAB1E      ; global ptr
        mov      rax, 0xD1FFAB1E      ; code for CORINFO_HELP_RUNTIMEHANDLE_METHOD
        call     [rax]CORINFO_HELP_RUNTIMEHANDLE_METHOD
-       mov      rdi, rax
-       jmp      G_M29953_IG07
-						;; size=33 bbWeight=0.10 PerfScore 0.60
-G_M29953_IG12:
-       mov      rsi, 0xD1FFAB1E      ; global ptr
-       mov      rax, 0xD1FFAB1E      ; code for CORINFO_HELP_RUNTIMEHANDLE_METHOD
-       call     [rax]CORINFO_HELP_RUNTIMEHANDLE_METHOD
-       mov      rsi, rax
-       jmp      G_M29953_IG08
-						;; size=30 bbWeight=0.10 PerfScore 0.58
-G_M29953_IG13:
-       mov      rdi, r12
-       mov      rsi, 0xD1FFAB1E      ; global ptr
-       mov      rax, 0xD1FFAB1E      ; code for CORINFO_HELP_RUNTIMEHANDLE_METHOD
-       call     [rax]CORINFO_HELP_RUNTIMEHANDLE_METHOD
-       mov      rsi, rax
-       jmp      G_M29953_IG09
-						;; size=33 bbWeight=0.10 PerfScore 0.60
-G_M29953_IG14:
+       mov      r12, rax
+       jmp      SHORT G_M29953_IG07
+						;; size=27 bbWeight=0.10 PerfScore 0.58
+G_M29953_IG10:
        mov      rax, gword ptr [r15+0x08]
-       mov      gword ptr [rbp-0x80], rax
+       mov      gword ptr [rbp-0x78], rax
        mov      rdi, qword ptr [r14+0x30]
        mov      rdi, qword ptr [rdi+0x08]
        mov      rdi, qword ptr [rdi]
-       mov      qword ptr [rbp-0x70], rdi
+       mov      qword ptr [rbp-0x68], rdi
        mov      rcx, 0xD1FFAB1E      ; code for CORINFO_HELP_TYPEHANDLE_TO_RUNTIMETYPE
        call     [rcx]CORINFO_HELP_TYPEHANDLE_TO_RUNTIMETYPE
        mov      rdx, rax
-       mov      rdi, gword ptr [rbp-0x80]
+       mov      rdi, gword ptr [rbp-0x78]
        mov      rsi, rbx
        mov      rax, qword ptr [rdi]
        mov      rax, qword ptr [rax+0x40]
        call     [rax+0x28]SharpYaml.Serialization.YamlConverter:Read(SharpYaml.Serialization.YamlReader,System.Type):System.Object:this
        mov      rcx, rax
        test     rcx, rcx
-       je       SHORT G_M29953_IG17
+       je       SHORT G_M29953_IG13
 						;; size=63 bbWeight=4 PerfScore 93.00
-G_M29953_IG15:
-       mov      rdi, qword ptr [rbp-0x70]
+G_M29953_IG11:
+       mov      rdi, qword ptr [rbp-0x68]
        cmp      qword ptr [rcx], rdi
-       je       SHORT G_M29953_IG17
+       je       SHORT G_M29953_IG13
 						;; size=9 bbWeight=2 PerfScore 8.00
-G_M29953_IG16:
+G_M29953_IG12:
        mov      rsi, rax
        mov      rax, 0xD1FFAB1E      ; code for CORINFO_HELP_CHKCASTANY
        call     [rax]CORINFO_HELP_CHKCASTANY
        mov      rcx, rax
 						;; size=18 bbWeight=1 PerfScore 3.75
-G_M29953_IG17:
-       mov      gword ptr [rbp-0x78], rcx
+G_M29953_IG13:
+       mov      gword ptr [rbp-0x70], rcx
        mov      ecx, dword ptr [r12+0x10]
        inc      ecx
-       mov      dword ptr [rbp-0x64], ecx
+       mov      dword ptr [rbp-0x5C], ecx
        mov      rdi, gword ptr [r12+0x08]
        cmp      dword ptr [rdi+0x08], ecx
-       mov      rax, gword ptr [rbp-0x78]
-       jl       G_M29953_IG25
+       mov      rax, gword ptr [rbp-0x70]
+       jl       G_M29953_IG21
 						;; size=32 bbWeight=4 PerfScore 41.00
-G_M29953_IG18:
+G_M29953_IG14:
        movsxd   rsi, dword ptr [r12+0x10]
        mov      rdi, gword ptr [r12+0x08]
        mov      rdx, rax
        mov      rax, 0xD1FFAB1E      ; code for CORINFO_HELP_ARRADDR_ST
        call     [rax]CORINFO_HELP_ARRADDR_ST
-       mov      edi, dword ptr [rbp-0x64]
+       mov      edi, dword ptr [rbp-0x5C]
        mov      dword ptr [r12+0x10], edi
 						;; size=33 bbWeight=4 PerfScore 38.00
-G_M29953_IG19:
+G_M29953_IG15:
        mov      rdi, gword ptr [rbx+0x38]
        cmp      dword ptr [rdi+0x48], 8
-       jne      G_M29953_IG14
+       jne      G_M29953_IG10
 						;; size=14 bbWeight=4 PerfScore 20.00
-G_M29953_IG20:
+G_M29953_IG16:
        mov      rdi, gword ptr [rbx+0x38]
        mov      rax, 0xD1FFAB1E      ; code for SharpYaml.Serialization.YamlReader+YamlReaderState:Read():bool:this
        cmp      dword ptr [rdi], edi
        call     [rax]SharpYaml.Serialization.YamlReader+YamlReaderState:Read():bool:this
        cmp      byte  ptr [r12], r12b
        mov      rdi, r12
        mov      rax, 0xD1FFAB1E      ; code for System.Collections.Immutable.ImmutableArray`1+Builder[System.__Canon]:ToArray():System.__Canon[]:this
        call     [rax]System.Collections.Immutable.ImmutableArray`1+Builder[System.__Canon]:ToArray():System.__Canon[]:this
        mov      r14, rax
        test     r13, r13
-       je       SHORT G_M29953_IG23
+       je       SHORT G_M29953_IG19
        mov      rdi, qword ptr [r15]
        mov      rsi, qword ptr [rdi+0x30]
        mov      rsi, qword ptr [rsi+0x08]
        mov      rax, qword ptr [rsi+0x18]
        test     rax, rax
-       je       G_M29953_IG31
+       je       G_M29953_IG27
 						;; size=69 bbWeight=0.50 PerfScore 11.75
-G_M29953_IG21:
+G_M29953_IG17:
        mov      rdi, rax
 						;; size=3 bbWeight=0.40 PerfScore 0.10
-G_M29953_IG22:
+G_M29953_IG18:
        call     CORINFO_HELP_NEWSFAST
        mov      r12, rax
        lea      rdi, bword ptr [r12+0x08]
        mov      rsi, r14
        call     CORINFO_HELP_ASSIGN_REF
        mov      rdx, r12
        mov      rdi, gword ptr [rbx+0x38]
        mov      rdi, gword ptr [rdi+0x38]
        test     rdi, rdi
-       je       SHORT G_M29953_IG23
+       je       SHORT G_M29953_IG19
        mov      rdi, gword ptr [rdi+0x08]
        cmp      byte  ptr [rdi], dil
        mov      rsi, r13
        mov      ecx, 1
        mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:TryInsert(System.__Canon,System.__Canon,byte):bool:this
        call     [rax]System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:TryInsert(System.__Canon,System.__Canon,byte):bool:this
 						;; size=64 bbWeight=0.50 PerfScore 8.12
-G_M29953_IG23:
+G_M29953_IG19:
        mov      rax, r14
 						;; size=3 bbWeight=0.50 PerfScore 0.12
-G_M29953_IG24:
-       add      rsp, 104
+G_M29953_IG20:
+       add      rsp, 88
        pop      rbx
        pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
 						;; size=15 bbWeight=0.50 PerfScore 2.12
-G_M29953_IG25:
+G_M29953_IG21:
        mov      rdi, gword ptr [r12+0x08]
        mov      edx, dword ptr [rdi+0x08]
        add      edx, edx
        cmp      edx, ecx
-       jl       SHORT G_M29953_IG26
-       mov      dword ptr [rbp-0x68], edx
-       jmp      SHORT G_M29953_IG27
+       jl       SHORT G_M29953_IG22
+       mov      dword ptr [rbp-0x60], edx
+       jmp      SHORT G_M29953_IG23
 						;; size=19 bbWeight=2 PerfScore 17.00
-G_M29953_IG26:
-       mov      dword ptr [rbp-0x68], ecx
+G_M29953_IG22:
+       mov      dword ptr [rbp-0x60], ecx
 						;; size=3 bbWeight=2 PerfScore 2.00
-G_M29953_IG27:
+G_M29953_IG23:
        mov      rdi, qword ptr [r12]
        mov      rsi, qword ptr [rdi+0x30]
        mov      rsi, qword ptr [rsi]
        mov      r8, qword ptr [rsi+0x10]
        test     r8, r8
-       je       SHORT G_M29953_IG30
+       je       SHORT G_M29953_IG26
 						;; size=20 bbWeight=2 PerfScore 18.50
-G_M29953_IG28:
+G_M29953_IG24:
        mov      rdi, r8
 						;; size=3 bbWeight=1.60 PerfScore 0.40
-G_M29953_IG29:
+G_M29953_IG25:
        lea      rsi, bword ptr [r12+0x08]
-       mov      edx, dword ptr [rbp-0x68]
+       mov      edx, dword ptr [rbp-0x60]
        mov      r8, 0xD1FFAB1E      ; code for System.Array:Resize[System.__Canon](byref,int)
        call     [r8]System.Array:Resize[System.__Canon](byref,int)
-       mov      rax, gword ptr [rbp-0x78]
-       jmp      G_M29953_IG18
+       mov      rax, gword ptr [rbp-0x70]
+       jmp      G_M29953_IG14
 						;; size=30 bbWeight=2 PerfScore 15.50
-G_M29953_IG30:
+G_M29953_IG26:
        mov      rsi, 0xD1FFAB1E      ; global ptr
        mov      r8, 0xD1FFAB1E      ; code for CORINFO_HELP_RUNTIMEHANDLE_CLASS
        call     [r8]CORINFO_HELP_RUNTIMEHANDLE_CLASS
        mov      rdi, rax
-       jmp      SHORT G_M29953_IG29
+       jmp      SHORT G_M29953_IG25
 						;; size=28 bbWeight=0.40 PerfScore 2.30
-G_M29953_IG31:
+G_M29953_IG27:
        mov      rsi, 0xD1FFAB1E      ; global ptr
        mov      rax, 0xD1FFAB1E      ; code for CORINFO_HELP_RUNTIMEHANDLE_CLASS
        call     [rax]CORINFO_HELP_RUNTIMEHANDLE_CLASS
        mov      rdi, rax
-       jmp      G_M29953_IG22
+       jmp      G_M29953_IG18
 						;; size=30 bbWeight=0.10 PerfScore 0.58
-G_M29953_IG32:
+G_M29953_IG28:
        mov      rdi, gword ptr [rbx+0x38]
        mov      rax, 0xD1FFAB1E      ; code for SharpYaml.Serialization.YamlReader+YamlReaderState:Read():bool:this
        cmp      dword ptr [rdi], edi
        call     [rax]SharpYaml.Serialization.YamlReader+YamlReaderState:Read():bool:this
        xor      eax, eax
 						;; size=20 bbWeight=0.50 PerfScore 3.75
-G_M29953_IG33:
-       add      rsp, 104
+G_M29953_IG29:
+       add      rsp, 88
        pop      rbx
        pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
 						;; size=15 bbWeight=0.50 PerfScore 2.12
-G_M29953_IG34:
+G_M29953_IG30:
        mov      r14, qword ptr [r15]
        mov      rdi, qword ptr [r14+0x30]
        mov      rdi, qword ptr [rdi+0x08]
        mov      rdi, qword ptr [rdi+0x18]
        test     rdi, rdi
-       je       SHORT G_M29953_IG39
+       je       SHORT G_M29953_IG35
 						;; size=20 bbWeight=0.50 PerfScore 4.62
-G_M29953_IG35:
+G_M29953_IG31:
        mov      rsi, gword ptr [rbp-0x38]
        cmp      qword ptr [rsi], rdi
-       je       SHORT G_M29953_IG37
+       je       SHORT G_M29953_IG33
 						;; size=9 bbWeight=0.50 PerfScore 2.00
-G_M29953_IG36:
+G_M29953_IG32:
        mov      rsi, gword ptr [rbp-0x38]
        mov      rax, 0xD1FFAB1E      ; code for CORINFO_HELP_UNBOX
        call     [rax]CORINFO_HELP_UNBOX
 						;; size=16 bbWeight=0.25 PerfScore 1.06
-G_M29953_IG37:
+G_M29953_IG33:
        mov      rax, gword ptr [rbp-0x38]
        mov      rax, gword ptr [rax+0x08]
 						;; size=8 bbWeight=0.50 PerfScore 1.50
-G_M29953_IG38:
-       add      rsp, 104
+G_M29953_IG34:
+       add      rsp, 88
        pop      rbx
        pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
 						;; size=15 bbWeight=0.50 PerfScore 2.12
-G_M29953_IG39:
+G_M29953_IG35:
        mov      rdi, r14
        mov      rsi, 0xD1FFAB1E      ; global ptr
        mov      rax, 0xD1FFAB1E      ; code for CORINFO_HELP_RUNTIMEHANDLE_CLASS
        call     [rax]CORINFO_HELP_RUNTIMEHANDLE_CLASS
        mov      rdi, rax
-       jmp      SHORT G_M29953_IG35
+       jmp      SHORT G_M29953_IG31
 						;; size=30 bbWeight=0.10 PerfScore 0.60
-G_M29953_IG40:
+G_M29953_IG36:
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for SharpYaml.Serialization.YamlReader:get_SourceName():System.String:this
        call     [rax]SharpYaml.Serialization.YamlReader:get_SourceName():System.String:this
        mov      r14, rax
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for SharpYaml.Serialization.YamlReader:get_Start():SharpYaml.Mark:this
        call     [rax]SharpYaml.Serialization.YamlReader:get_Start():SharpYaml.Mark:this
        mov      qword ptr [rbp-0x48], rax
        mov      dword ptr [rbp-0x40], edx
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for SharpYaml.Serialization.YamlReader:get_End():SharpYaml.Mark:this
        call     [rax]SharpYaml.Serialization.YamlReader:get_End():SharpYaml.Mark:this
        mov      qword ptr [rbp-0x58], rax
        mov      dword ptr [rbp-0x50], edx
        mov      rdi, 0xD1FFAB1E      ; SharpYaml.YamlException
        call     CORINFO_HELP_NEWSFAST
        mov      rbx, rax
        mov      rdx, 0xD1FFAB1E      ; 'Aliases are not supported when deserializing into ImmutableArra'
        mov      gword ptr [rsp], rdx
        mov      rdx, qword ptr [rbp-0x48]
        mov      ecx, dword ptr [rbp-0x40]
        mov      r8, qword ptr [rbp-0x58]
        mov      r9d, dword ptr [rbp-0x50]
        mov      rdi, rbx
        mov      rsi, r14
        mov      rax, 0xD1FFAB1E      ; code for SharpYaml.YamlException:.ctor(System.String,SharpYaml.Mark,SharpYaml.Mark,System.String):this
        call     [rax]SharpYaml.YamlException:.ctor(System.String,SharpYaml.Mark,SharpYaml.Mark,System.String):this
        mov      rdi, rbx
        call     CORINFO_HELP_THROW
        int3     
 						;; size=136 bbWeight=0 PerfScore 0.00
-G_M29953_IG41:
+G_M29953_IG37:
        mov      rdi, rbx
        mov      esi, 7
        mov      rax, 0xD1FFAB1E      ; code for SharpYaml.Serialization.YamlThrowHelper:ThrowExpectedToken(SharpYaml.Serialization.YamlReader,int):SharpYaml.YamlException
        call     [rax]SharpYaml.Serialization.YamlThrowHelper:ThrowExpectedToken(SharpYaml.Serialization.YamlReader,int):SharpYaml.YamlException
        mov      rdi, rax
        call     CORINFO_HELP_THROW
        int3     
 						;; size=29 bbWeight=0 PerfScore 0.00
 
-; Total bytes of code 1210, prolog size 36, PerfScore 361.66, instruction count 301, allocated bytes for code 1210 (MethodHash=12638afe) for method SharpYaml.Serialization.Converters.YamlImmutableArrayConverter`1[System.__Canon]:Read(SharpYaml.Serialization.YamlReader):System.Collections.Immutable.ImmutableArray`1[System.__Canon]:this (FullOpts)
+; Total bytes of code 1100, prolog size 32, PerfScore 352.71, instruction count 279, allocated bytes for code 1100 (MethodHash=12638afe) for method SharpYaml.Serialization.Converters.YamlImmutableArrayConverter`1[System.__Canon]:Read(SharpYaml.Serialization.YamlReader):System.Collections.Immutable.ImmutableArray`1[System.__Canon]:this (FullOpts)
 ; ============================================================
```

</details>



Note: some changes were skipped as they were too large to fit into a comment.

