Skip to content

Instantly share code, notes, and snippets.

@MihuBot
Created April 24, 2024 18:21
Show Gist options
  • Save MihuBot/7899f70098d8925e243f7452459f5e84 to your computer and use it in GitHub Desktop.
Save MihuBot/7899f70098d8925e243f7452459f5e84 to your computer and use it in GitHub Desktop.

Top method regressions

306 (8.57 % of base) - System.Text.RegularExpressions.RegexPrefixAnalyzer:g__FindPrefixesCore|0_1(System.Text.RegularExpressions.RegexNode,System.Collections.Generic.List`1[System.Text.StringBuilder],ubyte):ubyte
 ; Assembly listing for method System.Text.RegularExpressions.RegexPrefixAnalyzer:<FindPrefixes>g__FindPrefixesCore|0_1(System.Text.RegularExpressions.RegexNode,System.Collections.Generic.List`1[System.Text.StringBuilder],ubyte):ubyte (FullOpts)
 ; Emitting BLENDED_CODE for X64 with AVX - Unix
 ; FullOpts code
 ; optimized code
 ; rbp based frame
 ; fully interruptible
 ; No PGO data
-; 0 inlinees with PGO data; 72 single block inlinees; 44 inlinees without PGO data
+; 0 inlinees with PGO data; 72 single block inlinees; 34 inlinees without PGO data
 ; Final local variable assignments
 ;
-;  V00 arg0         [V00,T132] (  3,  3   )     ref  ->  rdi         class-hnd single-def <System.Text.RegularExpressions.RegexNode>
-;  V01 arg1         [V01,T133] (  3,  3   )     ref  ->  rsi         class-hnd single-def <System.Collections.Generic.List`1[System.Text.StringBuilder]>
-;  V02 arg2         [V02,T68] (  8, 15.50)   ubyte  ->  rbx         single-def
+;  V00 arg0         [V00,T103] (  3,  3   )     ref  ->  rdi         class-hnd single-def <System.Text.RegularExpressions.RegexNode>
+;  V01 arg1         [V01,T104] (  3,  3   )     ref  ->  rsi         class-hnd single-def <System.Collections.Generic.List`1[System.Text.StringBuilder]>
+;  V02 arg2         [V02,T51] (  8, 15.50)   ubyte  ->  rbx         single-def
 ;* V03 loc0         [V03    ] (  0,  0   )  struct (16) zero-ref    multireg-arg ld-addr-op <System.Span`1[ushort]>
 ;* V04 loc1         [V04    ] (  0,  0   )  struct (16) zero-ref    <System.Span`1[ushort]>
 ;* V05 loc2         [V05    ] (  0,  0   )   ubyte  ->  zero-ref   
-;  V06 loc3         [V06,T157] (  3,  3   )     int  ->  rbx        
-;* V07 loc4         [V07    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op <System.Collections.Generic.List`1+Enumerator[System.Text.StringBuilder]>
-;* V08 loc5         [V08    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact ptr <System.Text.StringBuilder>
-;* V09 loc6         [V09    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op <System.Collections.Generic.List`1+Enumerator[System.Text.StringBuilder]>
-;* V10 loc7         [V10    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact ptr <System.Text.StringBuilder>
-;  V11 loc8         [V11,T62] (  4, 21   )     ref  ->  r14         class-hnd exact single-def <System.String>
-;* V12 loc9         [V12,T189] (  0,  0   )     int  ->  zero-ref    ptr
-;  V13 loc10        [V13,T42] (  4, 24   )  ushort  ->  r13        
-;* V14 loc11        [V14    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op <System.Collections.Generic.List`1+Enumerator[System.Text.StringBuilder]>
-;* V15 loc12        [V15    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact ptr <System.Text.StringBuilder>
-;  V16 loc13        [V16,T171] (  3,  1.50)     int  ->  rax        
-;  V17 loc14        [V17,T57] (  5, 23   )     int  ->  r12        
-;  V18 loc15        [V18,T33] (  5, 25   )     int  ->  rbx        
+;  V06 loc3         [V06,T105] (  3,  5   )     int  ->  rbx        
+;  V07 loc4         [V07    ] (  7, 10.50)  struct (24) [rbp-0x68]  do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Collections.Generic.List`1+Enumerator[System.Text.StringBuilder]>
+;  V08 loc5         [V08,T82] (  2,  8   )     ref  ->  rdi         class-hnd exact <System.Text.StringBuilder>
+;  V09 loc6         [V09    ] (  7, 10.50)  struct (24) [rbp-0x80]  do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Collections.Generic.List`1+Enumerator[System.Text.StringBuilder]>
+;  V10 loc7         [V10,T71] (  3, 10   )     ref  ->  rdi         class-hnd exact <System.Text.StringBuilder>
+;  V11 loc8         [V11,T72] (  4,  9   )     ref  ->  r14         class-hnd exact single-def <System.String>
+;* V12 loc9         [V12,T160] (  0,  0   )     int  ->  zero-ref    ptr
+;  V13 loc10        [V13,T33] (  4, 24   )  ushort  ->  rbx        
+;  V14 loc11        [V14    ] (  7, 52   )  struct (24) [rbp-0x98]  do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Collections.Generic.List`1+Enumerator[System.Text.StringBuilder]>
+;  V15 loc12        [V15,T09] (  6, 72   )     ref  ->  rdi         class-hnd exact <System.Text.StringBuilder>
+;  V16 loc13        [V16,T139] (  3,  1.50)     int  ->  rax        
+;  V17 loc14        [V17,T25] (  5, 25   )     int  ->  r12        
+;  V18 loc15        [V18,T26] (  5, 25   )     int  ->  rbx        
 ;* V19 loc16        [V19    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op <System.Span`1[ushort]>
-;* V20 loc17        [V20,T190] (  0,  0   )     int  ->  zero-ref    ptr
-;  V21 loc18        [V21,T65] (  2, 20   )  ushort  ->  [rbp-0x54]  spill-single-def ptr
-;* V22 loc19        [V22,T148] (  0,  0   )     int  ->  zero-ref    ptr
+;* V20 loc17        [V20,T161] (  0,  0   )     int  ->  zero-ref    ptr
+;  V21 loc18        [V21,T48] (  2, 20   )  ushort  ->  [rbp-0x9C]  spill-single-def ptr
+;* V22 loc19        [V22,T118] (  0,  0   )     int  ->  zero-ref    ptr
 ;* V23 loc20        [V23    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact ptr <System.Text.StringBuilder>
-;* V24 loc21        [V24,T191] (  0,  0   )     int  ->  zero-ref    ptr
-;* V25 loc22        [V25    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op <System.Collections.Generic.List`1+Enumerator[System.Text.StringBuilder]>
-;* V26 loc23        [V26    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact ptr <System.Text.StringBuilder>
-;  V27 loc24        [V27,T134] (  3,  5   )     int  ->  r13        
-;* V28 loc25        [V28,T192] (  0,  0   )     int  ->  zero-ref    ptr
-;  V29 loc26        [V29,T128] (  4,  5.50)     int  ->  r13        
-;  V30 loc27        [V30,T80] (  4, 12.50)     int  ->  r12        
-;  V31 loc28        [V31,T129] (  4,  5.50)     int  ->  r13        
-;  V32 loc29        [V32,T25] ( 11, 41.50)     ref  ->  r12         class-hnd <System.Collections.Generic.List`1[System.Text.StringBuilder]>
-;  V33 loc30        [V33,T28] ( 17, 36.50)     ref  ->  [rbp-0x98]  class-hnd ptr <System.Collections.Generic.List`1[System.Text.StringBuilder]>
+;* V24 loc21        [V24,T162] (  0,  0   )     int  ->  zero-ref    ptr
+;  V25 loc22        [V25    ] (  7, 10.50)  struct (24) [rbp-0xB8]  do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Collections.Generic.List`1+Enumerator[System.Text.StringBuilder]>
+;  V26 loc23        [V26,T83] (  2,  8   )     ref  ->  rdi         class-hnd exact <System.Text.StringBuilder>
+;  V27 loc24        [V27,T106] (  3,  5   )     int  ->  r13        
+;* V28 loc25        [V28,T163] (  0,  0   )     int  ->  zero-ref    ptr
+;  V29 loc26        [V29,T99] (  4,  5.50)     int  ->  r13        
+;  V30 loc27        [V30,T60] (  4, 12.50)     int  ->  r12        
+;  V31 loc28        [V31,T100] (  4,  5.50)     int  ->  r13        
+;  V32 loc29        [V32,T23] ( 11, 29.50)     ref  ->  r12         class-hnd <System.Collections.Generic.List`1[System.Text.StringBuilder]>
+;  V33 loc30        [V33,T22] ( 17, 36.50)     ref  ->  [rbp-0x118]  class-hnd ptr <System.Collections.Generic.List`1[System.Text.StringBuilder]>
 ;* V34 loc31        [V34    ] (  0,  0   )     int  ->  zero-ref   
 ;* V35 loc32        [V35    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op <System.Span`1[System.Text.StringBuilder]>
 ;* V36 loc33        [V36    ] (  0,  0   )     int  ->  zero-ref   
-;* V37 loc34        [V37,T193] (  0,  0   )     int  ->  zero-ref    ptr
-;* V38 loc35        [V38    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op <System.Collections.Generic.List`1+Enumerator[System.Text.StringBuilder]>
-;* V39 loc36        [V39    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact ptr <System.Text.StringBuilder>
-;* V40 loc37        [V40,T194] (  0,  0   )   ubyte  ->  zero-ref    ptr
-;  V41 loc38        [V41,T34] (  5, 25   )     int  ->  rbx        
-;* V42 loc39        [V42,T195] (  0,  0   )     int  ->  zero-ref    ptr
-;  V43 loc40        [V43,T24] (  5, 44   )     ref  ->  r13         class-hnd exact <System.Text.StringBuilder>
-;* V44 loc41        [V44,T149] (  0,  0   )     int  ->  zero-ref    ptr
+;* V37 loc34        [V37,T164] (  0,  0   )     int  ->  zero-ref    ptr
+;  V38 loc35        [V38    ] (  7, 52   )  struct (24) [rbp-0xD0]  do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Collections.Generic.List`1+Enumerator[System.Text.StringBuilder]>
+;  V39 loc36        [V39,T16] (  3, 48   )     ref  ->  rdi         class-hnd exact <System.Text.StringBuilder>
+;* V40 loc37        [V40,T165] (  0,  0   )   ubyte  ->  zero-ref    ptr
+;  V41 loc38        [V41,T27] (  5, 25   )     int  ->  rbx        
+;* V42 loc39        [V42,T166] (  0,  0   )     int  ->  zero-ref    ptr
+;  V43 loc40        [V43,T17] (  5, 44   )     ref  ->  r13         class-hnd exact <System.Text.StringBuilder>
+;* V44 loc41        [V44,T119] (  0,  0   )     int  ->  zero-ref    ptr
 ;* V45 loc42        [V45    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact ptr <System.Text.StringBuilder>
-;* V46 loc43        [V46,T196] (  0,  0   )     int  ->  zero-ref    ptr
+;* V46 loc43        [V46,T167] (  0,  0   )     int  ->  zero-ref    ptr
 ;# V47 OutArgs      [V47    ] (  1,  1   )  struct ( 0) [rsp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-;  V48 tmp1         [V48,T164] (  2,  2   )     ref  ->  rsi         class-hnd single-def "dup spill" <System.Predicate`1[System.Text.StringBuilder]>
+;  V48 tmp1         [V48,T132] (  2,  2   )     ref  ->  rsi         class-hnd single-def "dup spill" <System.Predicate`1[System.Text.StringBuilder]>
 ;* V49 tmp2         [V49    ] (  0,  0   )     ref  ->  zero-ref    single-def ptr
-;  V50 tmp3         [V50,T162] (  4,  2   )     ref  ->  rsi        
+;  V50 tmp3         [V50,T130] (  4,  2   )     ref  ->  rsi        
 ;  V51 tmp4         [V51    ] (  1,  0.50)  struct (32) [rbp-0x50]  do-not-enreg[XS] addr-exposed ld-addr-op unsafe-buffer "stackallocLocal"
 ;* V52 tmp5         [V52    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.Span`1[ushort]>
-;  V53 tmp6         [V53,T116] (  6,  6   )     ref  ->  [rbp-0xA0]  class-hnd exact spill-single-def ptr "NewObj constructor temp" <System.Collections.Generic.List`1[System.Text.StringBuilder]>
-;  V54 tmp7         [V54,T144] (  4,  4   )     ref  ->  [rbp-0xA8]  class-hnd exact spill-single-def ptr "NewObj constructor temp" <System.Text.StringBuilder>
+;  V53 tmp6         [V53,T87] (  6,  6   )     ref  ->  [rbp-0x120]  class-hnd exact spill-single-def ptr "NewObj constructor temp" <System.Collections.Generic.List`1[System.Text.StringBuilder]>
+;  V54 tmp7         [V54,T113] (  4,  4   )     ref  ->  [rbp-0x128]  class-hnd exact spill-single-def ptr "NewObj constructor temp" <System.Text.StringBuilder>
 ;* V55 tmp8         [V55    ] (  0,  0   )   byref  ->  zero-ref    single-def ptr "impAppendStmt"
-;  V56 tmp9         [V56,T63] (  5, 20   )     ref  ->  [rbp-0xB0]  class-hnd exact spill-single-def ptr "NewObj constructor temp" <System.Text.StringBuilder>
-;  V57 tmp10        [V57,T41] (  6, 24   )     ref  ->  [rbp-0xB8]  class-hnd exact spill-single-def ptr "NewObj constructor temp" <System.Collections.Generic.List`1[System.Text.StringBuilder]>
-;  V58 tmp11        [V58,T70] (  4, 16   )     ref  ->  [rbp-0xC0]  class-hnd exact spill-single-def ptr "NewObj constructor temp" <System.Text.StringBuilder>
+;  V56 tmp9         [V56,T46] (  5, 20   )     ref  ->  [rbp-0x130]  class-hnd exact spill-single-def ptr "NewObj constructor temp" <System.Text.StringBuilder>
+;  V57 tmp10        [V57,T31] (  6, 24   )     ref  ->  [rbp-0x138]  class-hnd exact spill-single-def ptr "NewObj constructor temp" <System.Collections.Generic.List`1[System.Text.StringBuilder]>
+;  V58 tmp11        [V58,T54] (  4, 16   )     ref  ->  [rbp-0x140]  class-hnd exact spill-single-def ptr "NewObj constructor temp" <System.Text.StringBuilder>
 ;* V59 tmp12        [V59    ] (  0,  0   )   byref  ->  zero-ref    ptr "impAppendStmt"
-;  V60 tmp13        [V60,T01] (  5,128   )     ref  ->  [rbp-0xC8]  class-hnd exact spill-single-def ptr "NewObj constructor temp" <System.Text.StringBuilder>
-;  V61 tmp14        [V61,T64] (  3, 20   )     ref  ->  rdi         class-hnd exact "impAppendStmt" <System.Text.StringBuilder>
-;  V62 tmp15        [V62,T172] (  3,  1.50)     int  ->  r12        
-;  V63 tmp16        [V63,T02] (  5,128   )     ref  ->  [rbp-0xD0]  class-hnd exact spill-single-def ptr "NewObj constructor temp" <System.Text.StringBuilder>
-;  V64 tmp17        [V64,T173] (  3,  1.50)     int  ->  rbx        
-;  V65 tmp18        [V65,T130] (  5,  5   )     ref  ->  r13         class-hnd exact single-def "NewObj constructor temp" <System.Predicate`1[System.Text.StringBuilder]>
-;  V66 tmp19        [V66,T153] (  3,  3   )     ref  ->  rsi         class-hnd exact single-def "Inlining Arg" <System.Text.RegularExpressions.RegexPrefixAnalyzer+<>c>
-;  V67 tmp20        [V67,T102] (  3,  8   )     ref  ->  r14         class-hnd "Inline return value spill temp" <System.Text.RegularExpressions.RegexNode>
-;  V68 tmp21        [V68,T58] (  4, 22   )     ref  ->  rax         "ISINST eval op1"
+;  V60 tmp13        [V60,T01] (  5,128   )     ref  ->  [rbp-0x148]  class-hnd exact spill-single-def ptr "NewObj constructor temp" <System.Text.StringBuilder>
+;  V61 tmp14        [V61,T47] (  3, 20   )     ref  ->  rdi         class-hnd exact "impAppendStmt" <System.Text.StringBuilder>
+;  V62 tmp15        [V62,T140] (  3,  1.50)     int  ->  r12        
+;  V63 tmp16        [V63,T02] (  5,128   )     ref  ->  [rbp-0x150]  class-hnd exact spill-single-def ptr "NewObj constructor temp" <System.Text.StringBuilder>
+;  V64 tmp17        [V64,T141] (  3,  1.50)     int  ->  rbx        
+;  V65 tmp18        [V65,T101] (  5,  5   )     ref  ->  r13         class-hnd exact single-def "NewObj constructor temp" <System.Predicate`1[System.Text.StringBuilder]>
+;  V66 tmp19        [V66,T122] (  3,  3   )     ref  ->  rsi         class-hnd exact single-def "Inlining Arg" <System.Text.RegularExpressions.RegexPrefixAnalyzer+<>c>
+;  V67 tmp20        [V67,T78] (  3,  8   )     ref  ->  r14         class-hnd "Inline return value spill temp" <System.Text.RegularExpressions.RegexNode>
+;  V68 tmp21        [V68,T42] (  4, 22   )     ref  ->  rax         "ISINST eval op1"
 ;* V69 tmp22        [V69    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "spilling qmarkNull" <System.Text.RegularExpressions.RegexNode>
-;  V70 tmp23        [V70,T124] (  2,  4   )     ref  ->  rax         class-hnd exact "Inline stloc first use temp" <System.Text.RegularExpressions.RegexNode>
-;  V71 tmp24        [V71,T82] (  3, 12   )     ref  ->  r14         class-hnd "Inlining Arg" <System.Collections.Generic.List`1[System.Text.RegularExpressions.RegexNode]>
-;  V72 tmp25        [V72,T180] (  2,  1   )     int  ->  rbx         "Inline return value spill temp"
-;  V73 tmp26        [V73,T158] (  3,  3   )     int  ->  rbx         "Inlining Arg"
+;  V70 tmp23        [V70,T95] (  2,  4   )     ref  ->  rax         class-hnd exact "Inline stloc first use temp" <System.Text.RegularExpressions.RegexNode>
+;  V71 tmp24        [V71,T61] (  3, 12   )     ref  ->  r14         class-hnd "Inlining Arg" <System.Collections.Generic.List`1[System.Text.RegularExpressions.RegexNode]>
+;  V72 tmp25        [V72,T148] (  2,  1   )     int  ->  rbx         "Inline return value spill temp"
+;  V73 tmp26        [V73,T126] (  3,  3   )     int  ->  rbx         "Inlining Arg"
 ;* V74 tmp27        [V74    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Text.StringBuilder]>
-;* V75 tmp28        [V75,T107] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;* V76 tmp29        [V76    ] (  0,  0   )     ref  ->  zero-ref    class-hnd ptr "Inline stloc first use temp" <System.Collections.Generic.List`1[System.Text.StringBuilder]>
+;* V75 tmp28        [V75    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Text.StringBuilder]>
+;  V76 tmp29        [V76,T32] (  4, 24   )     ref  ->  rsi         class-hnd exact "Inlining Arg" <System.String>
 ;* V77 tmp30        [V77    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Text.StringBuilder]>
-;  V78 tmp31        [V78,T71] (  4, 16   )     ref  ->  rsi         class-hnd exact "Inlining Arg" <System.String>
-;* V79 tmp32        [V79,T108] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;* V80 tmp33        [V80    ] (  0,  0   )     ref  ->  zero-ref    class-hnd ptr "Inline stloc first use temp" <System.Collections.Generic.List`1[System.Text.StringBuilder]>
-;* V81 tmp34        [V81    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Text.StringBuilder]>
-;* V82 tmp35        [V82    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inline return value spill temp" <System.Text.StringBuilder>
-;  V83 tmp36        [V83,T51] (  3, 24   )     int  ->  rcx         "Inline stloc first use temp"
-;  V84 tmp37        [V84,T43] (  3, 24   )     ref  ->  rdx         class-hnd "Inline stloc first use temp" <ushort[]>
-;* V85 tmp38        [V85,T30] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;* V86 tmp39        [V86    ] (  0,  0   )     ref  ->  zero-ref    class-hnd ptr "Inline stloc first use temp" <System.Collections.Generic.List`1[System.Text.StringBuilder]>
-;* V87 tmp40        [V87    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.String>
-;  V88 tmp41        [V88,T181] (  2,  1   )     int  ->  r12         "Inline return value spill temp"
-;  V89 tmp42        [V89,T159] (  3,  3   )     int  ->  r12         "Inlining Arg"
-;  V90 tmp43        [V90,T160] (  3,  3   )     int  ->  rax         "Inlining Arg"
-;* V91 tmp44        [V91    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.Span`1[ushort]>
-;* V92 tmp45        [V92    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
-;  V93 tmp46        [V93,T19] (  5, 48   )     ref  ->  [rbp-0xD8]  class-hnd ptr "Inline return value spill temp" <System.Text.StringBuilder>
-;  V94 tmp47        [V94,T04] (  5,112   )     ref  ->  rsi         class-hnd "Inlining Arg" <System.__Canon>
-;  V95 tmp48        [V95,T26] (  3, 40   )     ref  ->  rdi         class-hnd "Inline stloc first use temp" <System.Text.StringBuilder[]>
-;  V96 tmp49        [V96,T21] (  4, 48   )     int  ->  rsi         "Inline stloc first use temp"
-;* V97 tmp50        [V97    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Text.StringBuilder]>
-;* V98 tmp51        [V98,T109] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;* V99 tmp52        [V99    ] (  0,  0   )     ref  ->  zero-ref    class-hnd ptr "Inline stloc first use temp" <System.Collections.Generic.List`1[System.Text.StringBuilder]>
-;  V100 tmp53       [V100,T103] (  3,  8   )     ref  ->  rdi         class-hnd "Inline return value spill temp" <System.Text.RegularExpressions.RegexNode>
-;  V101 tmp54       [V101,T59] (  4, 22   )     ref  ->  rdi         "ISINST eval op1"
-;* V102 tmp55       [V102    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "spilling qmarkNull" <System.Text.RegularExpressions.RegexNode>
-;  V103 tmp56       [V103,T125] (  2,  4   )     ref  ->  rdi         class-hnd exact "Inline stloc first use temp" <System.Text.RegularExpressions.RegexNode>
-;  V104 tmp57       [V104,T83] (  3, 12   )     ref  ->  rax         class-hnd "Inlining Arg" <System.Collections.Generic.List`1[System.Text.RegularExpressions.RegexNode]>
-;  V105 tmp58       [V105,T182] (  2,  1   )     int  ->  r13         "Inline return value spill temp"
-;  V106 tmp59       [V106,T161] (  3,  3   )     int  ->  r13         "Inlining Arg"
-;  V107 tmp60       [V107,T104] (  3,  8   )     ref  ->  rdi         class-hnd "Inline return value spill temp" <System.Text.RegularExpressions.RegexNode>
-;  V108 tmp61       [V108,T60] (  4, 22   )     ref  ->  rdi         "ISINST eval op1"
-;* V109 tmp62       [V109    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "spilling qmarkNull" <System.Text.RegularExpressions.RegexNode>
-;  V110 tmp63       [V110,T126] (  2,  4   )     ref  ->  rdi         class-hnd exact "Inline stloc first use temp" <System.Text.RegularExpressions.RegexNode>
-;  V111 tmp64       [V111,T84] (  3, 12   )     ref  ->  rax         class-hnd "Inlining Arg" <System.Collections.Generic.List`1[System.Text.RegularExpressions.RegexNode]>
-;* V112 tmp65       [V112    ] (  0,  0   )  struct (16) zero-ref    "Inline return value spill temp" <System.Span`1[System.Text.StringBuilder]>
-;* V113 tmp66       [V113    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.Span`1[System.Text.StringBuilder]>
-;  V114 tmp67       [V114,T174] (  3,  1.50)     int  ->  rcx         "Inline stloc first use temp"
-;  V115 tmp68       [V115,T165] (  3,  1.50)     ref  ->  rdx         class-hnd single-def "Inline stloc first use temp" <System.Text.StringBuilder[]>
-;* V116 tmp69       [V116    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.Span`1[System.Text.StringBuilder]>
-;* V117 tmp70       [V117    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
-;  V118 tmp71       [V118,T105] (  3,  8   )     ref  ->  rdi         class-hnd "Inline return value spill temp" <System.Text.RegularExpressions.RegexNode>
-;  V119 tmp72       [V119,T61] (  4, 22   )     ref  ->  rdi         "ISINST eval op1"
-;* V120 tmp73       [V120    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "spilling qmarkNull" <System.Text.RegularExpressions.RegexNode>
-;  V121 tmp74       [V121,T127] (  2,  4   )     ref  ->  rdi         class-hnd exact "Inline stloc first use temp" <System.Text.RegularExpressions.RegexNode>
-;  V122 tmp75       [V122,T85] (  3, 12   )     ref  ->  rdx         class-hnd "Inlining Arg" <System.Collections.Generic.List`1[System.Text.RegularExpressions.RegexNode]>
-;* V123 tmp76       [V123    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Text.StringBuilder]>
-;* V124 tmp77       [V124,T31] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;* V125 tmp78       [V125    ] (  0,  0   )     ref  ->  zero-ref    class-hnd ptr "Inline stloc first use temp" <System.Collections.Generic.List`1[System.Text.StringBuilder]>
-;* V126 tmp79       [V126    ] (  0,  0   )  struct (16) zero-ref    "Inline return value spill temp" <System.Span`1[System.Text.StringBuilder]>
-;* V127 tmp80       [V127    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.Span`1[System.Text.StringBuilder]>
-;  V128 tmp81       [V128,T120] (  3,  6   )     int  ->  rcx         "Inline stloc first use temp"
-;  V129 tmp82       [V129,T117] (  3,  6   )     ref  ->  rdx         class-hnd "Inline stloc first use temp" <System.Text.StringBuilder[]>
-;* V130 tmp83       [V130    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.Span`1[System.Text.StringBuilder]>
-;* V131 tmp84       [V131    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
-;  V132 tmp85       [V132,T121] (  3,  6   )     int  ->  rdx         "Inline stloc first use temp"
-;  V133 tmp86       [V133,T118] (  3,  6   )     ref  ->  rdi         class-hnd "Inline stloc first use temp" <System.Text.StringBuilder[]>
-;  V134 tmp87       [V134,T101] (  4,  8   )     int  ->  rsi         "Inline stloc first use temp"
-;  V135 tmp88       [V135,T154] (  3,  3   )     ref  ->  rsi         class-hnd single-def "Inlining Arg" <System.__Canon>
-;  V136 tmp89       [V136,T183] (  2,  1   )     int  ->  rdx         "Inline stloc first use temp"
-;  V137 tmp90       [V137,T15] (  6, 56   )     ref  ->  [rbp-0xE0]  class-hnd ptr "Inline return value spill temp" <System.Text.StringBuilder>
-;  V138 tmp91       [V138,T05] (  5,112   )     ref  ->  rsi         class-hnd "Inlining Arg" <System.__Canon>
-;* V139 tmp92       [V139    ] (  0,  0   )     ref  ->  zero-ref    class-hnd ptr "Inline return value spill temp" <System.Text.StringBuilder>
-;  V140 tmp93       [V140,T27] (  3, 40   )     ref  ->  rdi         class-hnd "Inline stloc first use temp" <System.Text.StringBuilder[]>
-;  V141 tmp94       [V141,T22] (  4, 48   )     int  ->  rsi         "Inline stloc first use temp"
-;* V142 tmp95       [V142    ] (  0,  0   )     ref  ->  zero-ref    class-hnd ptr "Inline return value spill temp" <System.Text.StringBuilder>
-;  V143 tmp96       [V143,T32] (  5, 28   )     ref  ->  rsi         class-hnd "Inlining Arg" <System.__Canon>
-;  V144 tmp97       [V144,T131] (  5,  5   )     int  ->  rbx         "Single return block return value"
-;  V145 tmp98       [V145,T100] (  6,  8   )   byref  ->  r13         single-def "field V03._reference (fldOffset=0x0)" P-INDEP
-;* V146 tmp99       [V146,T197] (  0,  0   )     int  ->  zero-ref    ptr "field V03._length (fldOffset=0x8)" P-INDEP
-;* V147 tmp100      [V147    ] (  0,  0   )   byref  ->  zero-ref    "field V04._reference (fldOffset=0x0)" P-INDEP
-;* V148 tmp101      [V148    ] (  0,  0   )     int  ->  zero-ref    "field V04._length (fldOffset=0x8)" P-INDEP
-;  V149 tmp102      [V149,T77] (  4, 12.50)     ref  ->  r15         single-def "field V07._list (fldOffset=0x0)" P-INDEP
-;  V150 tmp103      [V150,T94] (  2,  6   )     ref  ->  rdi         "field V07._current (fldOffset=0x8)" P-INDEP
-;  V151 tmp104      [V151,T35] (  6, 20.50)     int  ->  r12         "field V07._index (fldOffset=0x10)" P-INDEP
-;  V152 tmp105      [V152,T141] (  2,  4.50)     int  ->  r13         "field V07._version (fldOffset=0x14)" P-INDEP
-;  V153 tmp106      [V153,T78] (  4, 12.50)     ref  ->  r15         single-def "field V09._list (fldOffset=0x0)" P-INDEP
-;  V154 tmp107      [V154,T81] (  3,  8   )     ref  ->  rdi         "field V09._current (fldOffset=0x8)" P-INDEP
-;  V155 tmp108      [V155,T36] (  6, 20.50)     int  ->  r13         "field V09._index (fldOffset=0x10)" P-INDEP
-;  V156 tmp109      [V156,T142] (  2,  4.50)     int  ->  rbx         "field V09._version (fldOffset=0x14)" P-INDEP
-;* V157 tmp110      [V157,T147] (  0,  0   )     ref  ->  zero-ref    ptr "field V14._list (fldOffset=0x0)" P-INDEP
-;  V158 tmp111      [V158,T14] (  5, 48   )     ref  ->  rsi         "field V14._current (fldOffset=0x8)" P-INDEP
-;  V159 tmp112      [V159,T06] (  6, 84   )     int  ->  [rbp-0x58]  ptr "field V14._index (fldOffset=0x10)" P-INDEP
-;  V160 tmp113      [V160,T29] (  2, 36   )     int  ->  r12         "field V14._version (fldOffset=0x14)" P-INDEP
-;  V161 tmp114      [V161,T140] (  2,  4.50)   byref  ->  [rbp-0xE8]  spill-single-def ptr "field V19._reference (fldOffset=0x0)" P-INDEP
-;  V162 tmp115      [V162,T135] (  3,  5   )     int  ->  [rbp-0x5C]  spill-single-def ptr "field V19._length (fldOffset=0x8)" P-INDEP
-;  V163 tmp116      [V163,T79] (  4, 12.50)     ref  ->  r15         single-def "field V25._list (fldOffset=0x0)" P-INDEP
-;  V164 tmp117      [V164,T95] (  2,  6   )     ref  ->  rdi         "field V25._current (fldOffset=0x8)" P-INDEP
-;  V165 tmp118      [V165,T37] (  6, 20.50)     int  ->  [rbp-0x60]  ptr "field V25._index (fldOffset=0x10)" P-INDEP
-;  V166 tmp119      [V166,T143] (  2,  4.50)     int  ->  rbx         "field V25._version (fldOffset=0x14)" P-INDEP
-;* V167 tmp120      [V167    ] (  0,  0   )   byref  ->  zero-ref    ptr "field V35._reference (fldOffset=0x0)" P-INDEP
-;* V168 tmp121      [V168    ] (  0,  0   )     int  ->  zero-ref    ptr "field V35._length (fldOffset=0x8)" P-INDEP
-;  V169 tmp122      [V169,T17] (  3, 52   )     ref  ->  rdi         "field V38._list (fldOffset=0x0)" P-INDEP
-;  V170 tmp123      [V170,T20] (  3, 32   )     ref  ->  rdx         "field V38._current (fldOffset=0x8)" P-INDEP
-;  V171 tmp124      [V171,T03] (  6,100   )     int  ->  rcx         "field V38._index (fldOffset=0x10)" P-INDEP
-;* V172 tmp125      [V172,T150] (  0,  0   )     int  ->  zero-ref    ptr "field V38._version (fldOffset=0x14)" P-INDEP
-;  V173 tmp126      [V173,T177] (  2,  1   )   byref  ->  r13         single-def "field V52._reference (fldOffset=0x0)" P-INDEP
-;* V174 tmp127      [V174,T198] (  0,  0   )     int  ->  zero-ref    ptr "field V52._length (fldOffset=0x8)" P-INDEP
-;  V175 tmp128      [V175,T166] (  3,  1.50)     ref  ->  r15         single-def "field V74._list (fldOffset=0x0)" P-INDEP
-;* V176 tmp129      [V176    ] (  0,  0   )     ref  ->  zero-ref    single-def "field V74._current (fldOffset=0x8)" P-INDEP
-;* V177 tmp130      [V177,T199] (  0,  0   )     int  ->  zero-ref    ptr "field V74._index (fldOffset=0x10)" P-INDEP
-;  V178 tmp131      [V178,T184] (  2,  1   )     int  ->  r13         "field V74._version (fldOffset=0x14)" P-INDEP
-;  V179 tmp132      [V179,T167] (  3,  1.50)     ref  ->  r15         single-def "field V77._list (fldOffset=0x0)" P-INDEP
-;* V180 tmp133      [V180    ] (  0,  0   )     ref  ->  zero-ref    single-def "field V77._current (fldOffset=0x8)" P-INDEP
-;* V181 tmp134      [V181,T200] (  0,  0   )     int  ->  zero-ref    ptr "field V77._index (fldOffset=0x10)" P-INDEP
-;  V182 tmp135      [V182,T185] (  2,  1   )     int  ->  rbx         "field V77._version (fldOffset=0x14)" P-INDEP
-;  V183 tmp136      [V183,T106] (  2,  8   )     ref  ->  rdi         "field V81._list (fldOffset=0x0)" P-INDEP
-;* V184 tmp137      [V184    ] (  0,  0   )     ref  ->  zero-ref    "field V81._current (fldOffset=0x8)" P-INDEP
-;* V185 tmp138      [V185,T151] (  0,  0   )     int  ->  zero-ref    ptr "field V81._index (fldOffset=0x10)" P-INDEP
-;  V186 tmp139      [V186,T110] (  2,  8   )     int  ->  r12         "field V81._version (fldOffset=0x14)" P-INDEP
-;  V187 tmp140      [V187,T178] (  2,  1   )   byref  ->  rcx         single-def "field V91._reference (fldOffset=0x0)" P-INDEP
-;  V188 tmp141      [V188,T186] (  2,  1   )     int  ->  rax         "field V91._length (fldOffset=0x8)" P-INDEP
-;  V189 tmp142      [V189,T168] (  3,  1.50)     ref  ->  r15         single-def "field V97._list (fldOffset=0x0)" P-INDEP
-;* V190 tmp143      [V190    ] (  0,  0   )     ref  ->  zero-ref    single-def "field V97._current (fldOffset=0x8)" P-INDEP
-;* V191 tmp144      [V191,T201] (  0,  0   )     int  ->  zero-ref    ptr "field V97._index (fldOffset=0x10)" P-INDEP
-;  V192 tmp145      [V192,T187] (  2,  1   )     int  ->  rbx         "field V97._version (fldOffset=0x14)" P-INDEP
-;* V193 tmp146      [V193    ] (  0,  0   )   byref  ->  zero-ref    "field V112._reference (fldOffset=0x0)" P-INDEP
-;* V194 tmp147      [V194    ] (  0,  0   )     int  ->  zero-ref    "field V112._length (fldOffset=0x8)" P-INDEP
-;  V195 tmp148      [V195,T169] (  2,  1   )   byref  ->  [rbp-0xF0]  spill-single-def ptr "field V113._reference (fldOffset=0x0)" P-INDEP
-;  V196 tmp149      [V196,T175] (  2,  1   )     int  ->  [rbp-0x64]  spill-single-def ptr "field V113._length (fldOffset=0x8)" P-INDEP
-;  V197 tmp150      [V197,T179] (  2,  1   )   byref  ->  rdx         single-def "field V116._reference (fldOffset=0x0)" P-INDEP
-;  V198 tmp151      [V198,T188] (  2,  1   )     int  ->  rcx         "field V116._length (fldOffset=0x8)" P-INDEP
-;  V199 tmp152      [V199,T86] (  3, 12   )     ref  ->  rdi         "field V123._list (fldOffset=0x0)" P-INDEP
-;* V200 tmp153      [V200    ] (  0,  0   )     ref  ->  zero-ref    "field V123._current (fldOffset=0x8)" P-INDEP
-;* V201 tmp154      [V201,T152] (  0,  0   )     int  ->  zero-ref    ptr "field V123._index (fldOffset=0x10)" P-INDEP
-;* V202 tmp155      [V202,T111] (  0,  0   )     int  ->  zero-ref    ptr "field V123._version (fldOffset=0x14)" P-INDEP
-;* V203 tmp156      [V203    ] (  0,  0   )   byref  ->  zero-ref    "field V126._reference (fldOffset=0x0)" P-INDEP
-;* V204 tmp157      [V204    ] (  0,  0   )     int  ->  zero-ref    "field V126._length (fldOffset=0x8)" P-INDEP
-;  V205 tmp158      [V205,T119] (  2,  4   )   byref  ->  [rbp-0xF8]  spill-single-def ptr "field V127._reference (fldOffset=0x0)" P-INDEP
-;  V206 tmp159      [V206,T122] (  2,  4   )     int  ->  [rbp-0x68]  spill-single-def ptr "field V127._length (fldOffset=0x8)" P-INDEP
-;  V207 tmp160      [V207,T145] (  2,  4   )   byref  ->  rdx         "field V130._reference (fldOffset=0x0)" P-INDEP
-;  V208 tmp161      [V208,T146] (  2,  4   )     int  ->  rcx         "field V130._length (fldOffset=0x8)" P-INDEP
-;  V209 tmp162      [V209,T87] (  3, 12   )     ref  ->  rdi         "arr expr"
-;  V210 tmp163      [V210,T88] (  3, 12   )     ref  ->  rdx         "arr expr"
-;  V211 tmp164      [V211,T89] (  3, 12   )     ref  ->  rdx         "arr expr"
-;  V212 tmp165      [V212,T09] (  3, 96   )     ref  ->  rsi         "arr expr"
-;  V213 tmp166      [V213,T44] (  3, 24   )     ref  ->  rdx         "arr expr"
-;  V214 tmp167      [V214,T155] (  3,  3   )     ref  ->  rsi         single-def "arr expr"
-;  V215 tmp168      [V215,T45] (  3, 24   )     ref  ->  rdi         "arr expr"
-;  V216 tmp169      [V216,T10] (  3, 96   )     ref  ->  rcx         "arr expr"
-;  V217 tmp170      [V217,T46] (  3, 24   )     ref  ->  rdi         "arr expr"
-;  V218 tmp171      [V218,T72] (  2, 16   )     ref  ->  rdi         "argument with side effect"
-;  V219 tmp172      [V219,T90] (  3, 12   )     ref  ->  rdx         "arr expr"
-;  V220 tmp173      [V220,T11] (  3, 96   )     ref  ->  rdx         "arr expr"
-;  V221 tmp174      [V221,T156] (  3,  3   )     ref  ->  rsi         single-def "arr expr"
-;  V222 tmp175      [V222,T47] (  3, 24   )     ref  ->  rdi         "arr expr"
-;  V223 tmp176      [V223,T12] (  3, 96   )     ref  ->  rcx         "arr expr"
-;  V224 tmp177      [V224,T48] (  3, 24   )     ref  ->  rcx         "arr expr"
-;  V225 tmp178      [V225,T49] (  3, 24   )     ref  ->  rcx         "arr expr"
-;  V226 tmp179      [V226,T50] (  3, 24   )     ref  ->  rsi         "arr expr"
-;  V227 GsCookie    [V227    ] (  1,  1   )    long  ->  [rbp-0x30]  do-not-enreg[X] addr-exposed "GSSecurityCookie"
-;  V228 tmp181      [V228,T18] ( 31, 53   )     ref  ->  r14         "shadowVar"
-;  V229 tmp182      [V229,T00] ( 38,322.50)     ref  ->  r15         single-def "shadowVar"
-;* V230 cse0        [V230,T202] (  0,  0   )    long  ->  zero-ref    "CSE #01: conservative"
-;  V231 cse1        [V231,T52] (  3, 24   )     int  ->  rcx         "CSE #17: conservative"
-;  V232 cse2        [V232,T53] (  3, 24   )     int  ->  rcx         "CSE #36: conservative"
-;  V233 cse3        [V233,T54] (  3, 24   )     int  ->  rcx         "CSE #39: conservative"
-;  V234 cse4        [V234,T123] (  3,  6   )     int  ->  rcx         "CSE #43: conservative"
-;* V235 cse5        [V235,T112] (  0,  0   )     int  ->  zero-ref    "CSE #28: moderate"
-;  V236 cse6        [V236,T23] (  2, 32   )     int  ->  rsi         "CSE #12: moderate"
-;  V237 cse7        [V237,T13] (  2, 64   )     int  ->  rdx         "CSE #29: moderate"
-;  V238 cse8        [V238,T55] (  3, 24   )     int  ->  rax         "CSE #10: conservative"
-;  V239 cse9        [V239,T113] (  2,  8   )     int  ->  rsi         "CSE #04: conservative"
-;  V240 cse10       [V240,T91] (  2,  8   )     int  ->  rsi         "CSE #05: conservative"
-;  V241 cse11       [V241,T114] (  2,  8   )     int  ->  rdx         "CSE #07: conservative"
-;  V242 cse12       [V242,T92] (  2,  8   )     int  ->  rdx         "CSE #08: conservative"
-;  V243 cse13       [V243,T115] (  2,  8   )     int  ->  rdi         "CSE #19: conservative"
-;  V244 cse14       [V244,T93] (  2,  8   )     int  ->  rdi         "CSE #20: conservative"
-;  V245 cse15       [V245,T163] (  4,  2   )     int  ->  rdx         "CSE #32: conservative"
-;  V246 cse16       [V246,T176] (  3,  1.50)     int  ->  r13         "CSE #23: conservative"
-;  V247 cse17       [V247,T170] (  3,  1.50)     ref  ->  rdi         "CSE #33: conservative"
-;  V248 rat0        [V248,T66] (  7, 18.50)    long  ->  r12         "Widened IV V28"
-;  V249 rat1        [V249,T67] (  7, 18.50)    long  ->  [rbp-0x70]  "Widened IV V37"
-;  V250 rat2        [V250,T38] (  7, 24.50)    long  ->  r14         "Widened IV V42"
-;  V251 rat3        [V251,T07] (  7,100   )    long  ->  [rbp-0x78]  "Widened IV V44"
-;  V252 rat4        [V252,T39] (  7, 24.50)    long  ->  r14         "Widened IV V46"
-;  V253 rat5        [V253,T16] (  5, 52.50)    long  ->  rbx         "Widened IV V12"
-;  V254 rat6        [V254,T69] (  5, 16.50)    long  ->  [rbp-0x80]  "Widened IV V20"
-;  V255 rat7        [V255,T08] (  7,100   )    long  ->  [rbp-0x88]  "Widened IV V22"
-;  V256 rat8        [V256,T40] (  7, 24.50)    long  ->  [rbp-0x90]  "Widened IV V24"
-;  V257 rat9        [V257,T96] (  3,  9   )     ref  ->  rsi         "Spilling to split statement for tree"
-;  V258 rat10       [V258,T73] (  5, 15   )     ref  ->  r14         "replacement local"
-;  V259 rat11       [V259,T136] (  3,  5   )    long  ->  rdi         "CSE for expectedClsNode"
-;  V260 rat12       [V260,T97] (  3,  9   )     ref  ->  rsi         "Spilling to split statement for tree"
-;  V261 rat13       [V261,T74] (  5, 15   )     ref  ->  rax         "replacement local"
-;  V262 rat14       [V262,T137] (  3,  5   )    long  ->  rdi         "CSE for expectedClsNode"
-;  V263 rat15       [V263,T98] (  3,  9   )     ref  ->  rsi         "Spilling to split statement for tree"
-;  V264 rat16       [V264,T75] (  5, 15   )     ref  ->  rax         "replacement local"
-;  V265 rat17       [V265,T138] (  3,  5   )    long  ->  rdi         "CSE for expectedClsNode"
-;  V266 rat18       [V266,T99] (  3,  9   )     ref  ->  rsi         "Spilling to split statement for tree"
-;  V267 rat19       [V267,T76] (  5, 15   )     ref  ->  rdx         "replacement local"
-;  V268 rat20       [V268,T139] (  3,  5   )    long  ->  rdi         "CSE for expectedClsNode"
-;  V269 rat21       [V269,T56] (  3, 23.82)     int  ->  rsi         "ReplaceWithLclVar is creating a new local variable"
+;* V78 tmp31        [V78    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inline return value spill temp" <System.Text.StringBuilder>
+;  V79 tmp32        [V79,T21] (  3, 40   )     int  ->  rsi         "Inline stloc first use temp"
+;  V80 tmp33        [V80,T18] (  3, 40   )     ref  ->  rax         class-hnd "Inline stloc first use temp" <ushort[]>
+;* V81 tmp34        [V81    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.String>
+;  V82 tmp35        [V82,T149] (  2,  1   )     int  ->  r12         "Inline return value spill temp"
+;  V83 tmp36        [V83,T127] (  3,  3   )     int  ->  r12         "Inlining Arg"
+;  V84 tmp37        [V84,T128] (  3,  3   )     int  ->  rax         "Inlining Arg"
+;* V85 tmp38        [V85    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.Span`1[ushort]>
+;* V86 tmp39        [V86    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
+;  V87 tmp40        [V87,T13] (  5, 48   )     ref  ->  [rbp-0x158]  class-hnd ptr "Inline return value spill temp" <System.Text.StringBuilder>
+;  V88 tmp41        [V88,T03] (  5,112   )     ref  ->  rsi         class-hnd "Inlining Arg" <System.__Canon>
+;  V89 tmp42        [V89,T19] (  3, 40   )     ref  ->  rdi         class-hnd "Inline stloc first use temp" <System.Text.StringBuilder[]>
+;  V90 tmp43        [V90,T14] (  4, 48   )     int  ->  rsi         "Inline stloc first use temp"
+;* V91 tmp44        [V91    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Text.StringBuilder]>
+;  V92 tmp45        [V92,T79] (  3,  8   )     ref  ->  rdi         class-hnd "Inline return value spill temp" <System.Text.RegularExpressions.RegexNode>
+;  V93 tmp46        [V93,T43] (  4, 22   )     ref  ->  rdi         "ISINST eval op1"
+;* V94 tmp47        [V94    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "spilling qmarkNull" <System.Text.RegularExpressions.RegexNode>
+;  V95 tmp48        [V95,T96] (  2,  4   )     ref  ->  rdi         class-hnd exact "Inline stloc first use temp" <System.Text.RegularExpressions.RegexNode>
+;  V96 tmp49        [V96,T62] (  3, 12   )     ref  ->  rax         class-hnd "Inlining Arg" <System.Collections.Generic.List`1[System.Text.RegularExpressions.RegexNode]>
+;  V97 tmp50        [V97,T150] (  2,  1   )     int  ->  r13         "Inline return value spill temp"
+;  V98 tmp51        [V98,T129] (  3,  3   )     int  ->  r13         "Inlining Arg"
+;  V99 tmp52        [V99,T80] (  3,  8   )     ref  ->  rdi         class-hnd "Inline return value spill temp" <System.Text.RegularExpressions.RegexNode>
+;  V100 tmp53       [V100,T44] (  4, 22   )     ref  ->  rdi         "ISINST eval op1"
+;* V101 tmp54       [V101    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "spilling qmarkNull" <System.Text.RegularExpressions.RegexNode>
+;  V102 tmp55       [V102,T97] (  2,  4   )     ref  ->  rdi         class-hnd exact "Inline stloc first use temp" <System.Text.RegularExpressions.RegexNode>
+;  V103 tmp56       [V103,T63] (  3, 12   )     ref  ->  rax         class-hnd "Inlining Arg" <System.Collections.Generic.List`1[System.Text.RegularExpressions.RegexNode]>
+;* V104 tmp57       [V104    ] (  0,  0   )  struct (16) zero-ref    "Inline return value spill temp" <System.Span`1[System.Text.StringBuilder]>
+;* V105 tmp58       [V105    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.Span`1[System.Text.StringBuilder]>
+;  V106 tmp59       [V106,T142] (  3,  1.50)     int  ->  rcx         "Inline stloc first use temp"
+;  V107 tmp60       [V107,T133] (  3,  1.50)     ref  ->  rdx         class-hnd single-def "Inline stloc first use temp" <System.Text.StringBuilder[]>
+;* V108 tmp61       [V108    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.Span`1[System.Text.StringBuilder]>
+;* V109 tmp62       [V109    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
+;  V110 tmp63       [V110,T81] (  3,  8   )     ref  ->  rdi         class-hnd "Inline return value spill temp" <System.Text.RegularExpressions.RegexNode>
+;  V111 tmp64       [V111,T45] (  4, 22   )     ref  ->  rdi         "ISINST eval op1"
+;* V112 tmp65       [V112    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "spilling qmarkNull" <System.Text.RegularExpressions.RegexNode>
+;  V113 tmp66       [V113,T98] (  2,  4   )     ref  ->  rdi         class-hnd exact "Inline stloc first use temp" <System.Text.RegularExpressions.RegexNode>
+;  V114 tmp67       [V114,T64] (  3, 12   )     ref  ->  rdx         class-hnd "Inlining Arg" <System.Collections.Generic.List`1[System.Text.RegularExpressions.RegexNode]>
+;* V115 tmp68       [V115    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Text.StringBuilder]>
+;* V116 tmp69       [V116    ] (  0,  0   )  struct (16) zero-ref    "Inline return value spill temp" <System.Span`1[System.Text.StringBuilder]>
+;* V117 tmp70       [V117    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.Span`1[System.Text.StringBuilder]>
+;  V118 tmp71       [V118,T91] (  3,  6   )     int  ->  rcx         "Inline stloc first use temp"
+;  V119 tmp72       [V119,T88] (  3,  6   )     ref  ->  rdx         class-hnd "Inline stloc first use temp" <System.Text.StringBuilder[]>
+;* V120 tmp73       [V120    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.Span`1[System.Text.StringBuilder]>
+;* V121 tmp74       [V121    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
+;  V122 tmp75       [V122,T92] (  3,  6   )     int  ->  rdx         "Inline stloc first use temp"
+;  V123 tmp76       [V123,T89] (  3,  6   )     ref  ->  rdi         class-hnd "Inline stloc first use temp" <System.Text.StringBuilder[]>
+;  V124 tmp77       [V124,T77] (  4,  8   )     int  ->  rsi         "Inline stloc first use temp"
+;  V125 tmp78       [V125,T123] (  3,  3   )     ref  ->  rsi         class-hnd single-def "Inlining Arg" <System.__Canon>
+;  V126 tmp79       [V126,T151] (  2,  1   )     int  ->  rdx         "Inline stloc first use temp"
+;  V127 tmp80       [V127,T11] (  6, 56   )     ref  ->  [rbp-0x160]  class-hnd ptr "Inline return value spill temp" <System.Text.StringBuilder>
+;  V128 tmp81       [V128,T04] (  5,112   )     ref  ->  rsi         class-hnd "Inlining Arg" <System.__Canon>
+;* V129 tmp82       [V129    ] (  0,  0   )     ref  ->  zero-ref    class-hnd ptr "Inline return value spill temp" <System.Text.StringBuilder>
+;  V130 tmp83       [V130,T20] (  3, 40   )     ref  ->  rdi         class-hnd "Inline stloc first use temp" <System.Text.StringBuilder[]>
+;  V131 tmp84       [V131,T15] (  4, 48   )     int  ->  rsi         "Inline stloc first use temp"
+;* V132 tmp85       [V132    ] (  0,  0   )     ref  ->  zero-ref    class-hnd ptr "Inline return value spill temp" <System.Text.StringBuilder>
+;  V133 tmp86       [V133,T24] (  5, 28   )     ref  ->  rsi         class-hnd "Inlining Arg" <System.__Canon>
+;  V134 tmp87       [V134,T102] (  5,  5   )     int  ->  rbx         "Single return block return value"
+;  V135 tmp88       [V135,T70] (  6, 10   )   byref  ->  r13         single-def "field V03._reference (fldOffset=0x0)" P-INDEP
+;* V136 tmp89       [V136,T168] (  0,  0   )     int  ->  zero-ref    ptr "field V03._length (fldOffset=0x8)" P-INDEP
+;* V137 tmp90       [V137    ] (  0,  0   )   byref  ->  zero-ref    "field V04._reference (fldOffset=0x0)" P-INDEP
+;* V138 tmp91       [V138    ] (  0,  0   )     int  ->  zero-ref    "field V04._length (fldOffset=0x8)" P-INDEP
+;  V139 tmp92       [V139    ] (  3,  5   )     ref  ->  [rbp-0x68]  do-not-enreg[X] addr-exposed ptr "field V07._list (fldOffset=0x0)" P-DEP
+;  V140 tmp93       [V140    ] (  4,  9   )     ref  ->  [rbp-0x60]  do-not-enreg[X] addr-exposed ptr "field V07._current (fldOffset=0x8)" P-DEP
+;  V141 tmp94       [V141    ] (  3,  5   )     int  ->  [rbp-0x58]  do-not-enreg[X] addr-exposed "field V07._index (fldOffset=0x10)" P-DEP
+;  V142 tmp95       [V142    ] (  3,  5   )     int  ->  [rbp-0x54]  do-not-enreg[X] addr-exposed ptr "field V07._version (fldOffset=0x14)" P-DEP
+;  V143 tmp96       [V143    ] (  3,  5   )     ref  ->  [rbp-0x80]  do-not-enreg[X] addr-exposed ptr "field V09._list (fldOffset=0x0)" P-DEP
+;  V144 tmp97       [V144    ] (  4,  9   )     ref  ->  [rbp-0x78]  do-not-enreg[X] addr-exposed ptr "field V09._current (fldOffset=0x8)" P-DEP
+;  V145 tmp98       [V145    ] (  3,  5   )     int  ->  [rbp-0x70]  do-not-enreg[X] addr-exposed "field V09._index (fldOffset=0x10)" P-DEP
+;  V146 tmp99       [V146    ] (  3,  5   )     int  ->  [rbp-0x6C]  do-not-enreg[X] addr-exposed ptr "field V09._version (fldOffset=0x14)" P-DEP
+;  V147 tmp100      [V147    ] (  3, 24   )     ref  ->  [rbp-0x98]  do-not-enreg[X] addr-exposed ptr "field V14._list (fldOffset=0x0)" P-DEP
+;  V148 tmp101      [V148    ] (  4, 40   )     ref  ->  [rbp-0x90]  do-not-enreg[X] addr-exposed ptr "field V14._current (fldOffset=0x8)" P-DEP
+;  V149 tmp102      [V149    ] (  3, 24   )     int  ->  [rbp-0x88]  do-not-enreg[X] addr-exposed "field V14._index (fldOffset=0x10)" P-DEP
+;  V150 tmp103      [V150    ] (  3, 24   )     int  ->  [rbp-0x84]  do-not-enreg[X] addr-exposed ptr "field V14._version (fldOffset=0x14)" P-DEP
+;  V151 tmp104      [V151,T112] (  2,  4.50)   byref  ->  [rbp-0x168]  spill-single-def ptr "field V19._reference (fldOffset=0x0)" P-INDEP
+;  V152 tmp105      [V152,T107] (  3,  5   )     int  ->  [rbp-0xD4]  spill-single-def ptr "field V19._length (fldOffset=0x8)" P-INDEP
+;  V153 tmp106      [V153    ] (  3,  5   )     ref  ->  [rbp-0xB8]  do-not-enreg[X] addr-exposed ptr "field V25._list (fldOffset=0x0)" P-DEP
+;  V154 tmp107      [V154    ] (  4,  9   )     ref  ->  [rbp-0xB0]  do-not-enreg[X] addr-exposed ptr "field V25._current (fldOffset=0x8)" P-DEP
+;  V155 tmp108      [V155    ] (  3,  5   )     int  ->  [rbp-0xA8]  do-not-enreg[X] addr-exposed "field V25._index (fldOffset=0x10)" P-DEP
+;  V156 tmp109      [V156    ] (  3,  5   )     int  ->  [rbp-0xA4]  do-not-enreg[X] addr-exposed ptr "field V25._version (fldOffset=0x14)" P-DEP
+;* V157 tmp110      [V157    ] (  0,  0   )   byref  ->  zero-ref    ptr "field V35._reference (fldOffset=0x0)" P-INDEP
+;* V158 tmp111      [V158    ] (  0,  0   )     int  ->  zero-ref    ptr "field V35._length (fldOffset=0x8)" P-INDEP
+;  V159 tmp112      [V159    ] (  3, 24   )     ref  ->  [rbp-0xD0]  do-not-enreg[X] addr-exposed ptr "field V38._list (fldOffset=0x0)" P-DEP
+;  V160 tmp113      [V160    ] (  4, 40   )     ref  ->  [rbp-0xC8]  do-not-enreg[X] addr-exposed ptr "field V38._current (fldOffset=0x8)" P-DEP
+;  V161 tmp114      [V161    ] (  3, 24   )     int  ->  [rbp-0xC0]  do-not-enreg[X] addr-exposed "field V38._index (fldOffset=0x10)" P-DEP
+;  V162 tmp115      [V162    ] (  3, 24   )     int  ->  [rbp-0xBC]  do-not-enreg[X] addr-exposed ptr "field V38._version (fldOffset=0x14)" P-DEP
+;  V163 tmp116      [V163,T145] (  2,  1   )   byref  ->  r13         single-def "field V52._reference (fldOffset=0x0)" P-INDEP
+;* V164 tmp117      [V164,T169] (  0,  0   )     int  ->  zero-ref    ptr "field V52._length (fldOffset=0x8)" P-INDEP
+;  V165 tmp118      [V165,T134] (  3,  1.50)     ref  ->  r15         single-def "field V74._list (fldOffset=0x0)" P-INDEP
+;* V166 tmp119      [V166,T157] (  0,  0   )     ref  ->  zero-ref    single-def ptr "field V74._current (fldOffset=0x8)" P-INDEP
+;* V167 tmp120      [V167,T170] (  0,  0   )     int  ->  zero-ref    "field V74._index (fldOffset=0x10)" P-INDEP
+;  V168 tmp121      [V168,T152] (  2,  1   )     int  ->  rdi         "field V74._version (fldOffset=0x14)" P-INDEP
+;  V169 tmp122      [V169,T135] (  3,  1.50)     ref  ->  rdi         single-def "field V75._list (fldOffset=0x0)" P-INDEP
+;* V170 tmp123      [V170,T158] (  0,  0   )     ref  ->  zero-ref    single-def ptr "field V75._current (fldOffset=0x8)" P-INDEP
+;* V171 tmp124      [V171,T171] (  0,  0   )     int  ->  zero-ref    "field V75._index (fldOffset=0x10)" P-INDEP
+;  V172 tmp125      [V172,T153] (  2,  1   )     int  ->  rsi         "field V75._version (fldOffset=0x14)" P-INDEP
+;  V173 tmp126      [V173,T84] (  2,  8   )     ref  ->  rdi         "field V77._list (fldOffset=0x0)" P-INDEP
+;* V174 tmp127      [V174,T116] (  0,  0   )     ref  ->  zero-ref    ptr "field V77._current (fldOffset=0x8)" P-INDEP
+;* V175 tmp128      [V175,T120] (  0,  0   )     int  ->  zero-ref    "field V77._index (fldOffset=0x10)" P-INDEP
+;  V176 tmp129      [V176,T85] (  2,  8   )     int  ->  rdi         "field V77._version (fldOffset=0x14)" P-INDEP
+;  V177 tmp130      [V177,T146] (  2,  1   )   byref  ->  rcx         single-def "field V85._reference (fldOffset=0x0)" P-INDEP
+;  V178 tmp131      [V178,T154] (  2,  1   )     int  ->  rax         "field V85._length (fldOffset=0x8)" P-INDEP
+;  V179 tmp132      [V179,T136] (  3,  1.50)     ref  ->  rdi         single-def "field V91._list (fldOffset=0x0)" P-INDEP
+;* V180 tmp133      [V180,T159] (  0,  0   )     ref  ->  zero-ref    single-def ptr "field V91._current (fldOffset=0x8)" P-INDEP
+;* V181 tmp134      [V181,T172] (  0,  0   )     int  ->  zero-ref    "field V91._index (fldOffset=0x10)" P-INDEP
+;  V182 tmp135      [V182,T155] (  2,  1   )     int  ->  rsi         "field V91._version (fldOffset=0x14)" P-INDEP
+;* V183 tmp136      [V183    ] (  0,  0   )   byref  ->  zero-ref    "field V104._reference (fldOffset=0x0)" P-INDEP
+;* V184 tmp137      [V184    ] (  0,  0   )     int  ->  zero-ref    "field V104._length (fldOffset=0x8)" P-INDEP
+;  V185 tmp138      [V185,T137] (  2,  1   )   byref  ->  [rbp-0x170]  spill-single-def ptr "field V105._reference (fldOffset=0x0)" P-INDEP
+;  V186 tmp139      [V186,T143] (  2,  1   )     int  ->  [rbp-0xD8]  spill-single-def ptr "field V105._length (fldOffset=0x8)" P-INDEP
+;  V187 tmp140      [V187,T147] (  2,  1   )   byref  ->  rdx         single-def "field V108._reference (fldOffset=0x0)" P-INDEP
+;  V188 tmp141      [V188,T156] (  2,  1   )     int  ->  rcx         "field V108._length (fldOffset=0x8)" P-INDEP
+;  V189 tmp142      [V189,T65] (  3, 12   )     ref  ->  rdi         "field V115._list (fldOffset=0x0)" P-INDEP
+;* V190 tmp143      [V190,T117] (  0,  0   )     ref  ->  zero-ref    ptr "field V115._current (fldOffset=0x8)" P-INDEP
+;* V191 tmp144      [V191,T121] (  0,  0   )     int  ->  zero-ref    "field V115._index (fldOffset=0x10)" P-INDEP
+;  V192 tmp145      [V192,T86] (  2,  8   )     int  ->  rsi         "field V115._version (fldOffset=0x14)" P-INDEP
+;* V193 tmp146      [V193    ] (  0,  0   )   byref  ->  zero-ref    "field V116._reference (fldOffset=0x0)" P-INDEP
+;* V194 tmp147      [V194    ] (  0,  0   )     int  ->  zero-ref    "field V116._length (fldOffset=0x8)" P-INDEP
+;  V195 tmp148      [V195,T90] (  2,  4   )   byref  ->  [rbp-0x178]  spill-single-def ptr "field V117._reference (fldOffset=0x0)" P-INDEP
+;  V196 tmp149      [V196,T93] (  2,  4   )     int  ->  [rbp-0xDC]  spill-single-def ptr "field V117._length (fldOffset=0x8)" P-INDEP
+;  V197 tmp150      [V197,T114] (  2,  4   )   byref  ->  rdx         "field V120._reference (fldOffset=0x0)" P-INDEP
+;  V198 tmp151      [V198,T115] (  2,  4   )     int  ->  rcx         "field V120._length (fldOffset=0x8)" P-INDEP
+;  V199 tmp152      [V199,T66] (  3, 12   )     ref  ->  rdi         "arr expr"
+;  V200 tmp153      [V200,T67] (  3, 12   )     ref  ->  rdx         "arr expr"
+;  V201 tmp154      [V201,T68] (  3, 12   )     ref  ->  rdx         "arr expr"
+;  V202 tmp155      [V202,T69] (  3, 12   )     ref  ->  rdx         "arr expr"
+;  V203 tmp156      [V203,T124] (  3,  3   )     ref  ->  rsi         single-def "arr expr"
+;  V204 tmp157      [V204,T34] (  3, 24   )     ref  ->  rdi         "arr expr"
+;  V205 tmp158      [V205,T07] (  3, 96   )     ref  ->  rcx         "arr expr"
+;  V206 tmp159      [V206,T125] (  3,  3   )     ref  ->  rsi         single-def "arr expr"
+;  V207 tmp160      [V207,T08] (  3, 96   )     ref  ->  rcx         "arr expr"
+;  V208 tmp161      [V208,T35] (  3, 24   )     ref  ->  rdi         "arr expr"
+;  V209 tmp162      [V209,T55] (  2, 16   )     ref  ->  rdi         "argument with side effect"
+;  V210 tmp163      [V210,T36] (  3, 24   )     ref  ->  rcx         "arr expr"
+;  V211 tmp164      [V211,T37] (  3, 24   )     ref  ->  rcx         "arr expr"
+;  V212 GsCookie    [V212    ] (  1,  1   )    long  ->  [rbp-0x30]  do-not-enreg[X] addr-exposed "GSSecurityCookie"
+;  V213 tmp166      [V213,T12] ( 31, 50   )     ref  ->  r14         "shadowVar"
+;  V214 tmp167      [V214,T00] ( 36,262.50)     ref  ->  r15         single-def "shadowVar"
+;* V215 cse0        [V215,T173] (  0,  0   )    long  ->  zero-ref    "CSE #01: conservative"
+;  V216 cse1        [V216,T38] (  3, 24   )     int  ->  rcx         "CSE #12: conservative"
+;  V217 cse2        [V217,T39] (  3, 24   )     int  ->  rcx         "CSE #27: conservative"
+;  V218 cse3        [V218,T40] (  3, 24   )     int  ->  rcx         "CSE #30: conservative"
+;  V219 cse4        [V219,T94] (  3,  6   )     int  ->  rcx         "CSE #34: conservative"
+;  V220 cse5        [V220,T131] (  4,  2   )     int  ->  rdx         "CSE #23: conservative"
+;  V221 cse6        [V221,T144] (  3,  1.50)     int  ->  r13         "CSE #16: conservative"
+;  V222 cse7        [V222,T138] (  3,  1.50)     ref  ->  rdi         "CSE #24: conservative"
+;  V223 cse8        [V223,T10] ( 15, 63   )    long  ->  [rbp-0xE8]  multi-def "CSE #04: moderate"
+;  V224 rat0        [V224,T49] (  7, 18.50)    long  ->  r12         "Widened IV V28"
+;  V225 rat1        [V225,T50] (  7, 18.50)    long  ->  [rbp-0xF0]  "Widened IV V37"
+;  V226 rat2        [V226,T28] (  7, 24.50)    long  ->  r14         "Widened IV V42"
+;  V227 rat3        [V227,T05] (  7,100   )    long  ->  [rbp-0xF8]  "Widened IV V44"
+;  V228 rat4        [V228,T29] (  7, 24.50)    long  ->  r14         "Widened IV V46"
+;  V229 rat5        [V229,T52] (  5, 16.50)    long  ->  r13         "Widened IV V12"
+;  V230 rat6        [V230,T53] (  5, 16.50)    long  ->  [rbp-0x100]  "Widened IV V20"
+;  V231 rat7        [V231,T06] (  7,100   )    long  ->  [rbp-0x108]  "Widened IV V22"
+;  V232 rat8        [V232,T30] (  7, 24.50)    long  ->  [rbp-0x110]  "Widened IV V24"
+;  V233 rat9        [V233,T73] (  3,  9   )     ref  ->  rsi         "Spilling to split statement for tree"
+;  V234 rat10       [V234,T56] (  5, 15   )     ref  ->  r14         "replacement local"
+;  V235 rat11       [V235,T108] (  3,  5   )    long  ->  rdi         "CSE for expectedClsNode"
+;  V236 rat12       [V236,T74] (  3,  9   )     ref  ->  rsi         "Spilling to split statement for tree"
+;  V237 rat13       [V237,T57] (  5, 15   )     ref  ->  rax         "replacement local"
+;  V238 rat14       [V238,T109] (  3,  5   )    long  ->  rdi         "CSE for expectedClsNode"
+;  V239 rat15       [V239,T75] (  3,  9   )     ref  ->  rsi         "Spilling to split statement for tree"
+;  V240 rat16       [V240,T58] (  5, 15   )     ref  ->  rax         "replacement local"
+;  V241 rat17       [V241,T110] (  3,  5   )    long  ->  rdi         "CSE for expectedClsNode"
+;  V242 rat18       [V242,T76] (  3,  9   )     ref  ->  rsi         "Spilling to split statement for tree"
+;  V243 rat19       [V243,T59] (  5, 15   )     ref  ->  rdx         "replacement local"
+;  V244 rat20       [V244,T111] (  3,  5   )    long  ->  rdi         "CSE for expectedClsNode"
+;  V245 rat21       [V245,T41] (  3, 23.82)     int  ->  rsi         "ReplaceWithLclVar is creating a new local variable"
 ;
-; Lcl frame size = 216
+; Lcl frame size = 344
 
 G_M12455_IG01:
        push     rbp
        push     r15
        push     r14
        push     r13
        push     r12
        push     rbx
-       sub      rsp, 216
-       lea      rbp, [rsp+0x100]
+       sub      rsp, 344
+       lea      rbp, [rsp+0x180]
+       vxorps   xmm8, xmm8, xmm8
+       vmovdqu  ymmword ptr [rbp-0xD0], ymm8
+       vmovdqu  ymmword ptr [rbp-0xB0], ymm8
+       vmovdqu  ymmword ptr [rbp-0x90], ymm8
+       vmovdqu  ymmword ptr [rbp-0x70], ymm8
        mov      qword ptr [rbp-0x30], 0xD1FFAB1E
        mov      ebx, edx
-						;; size=35 bbWeight=1 PerfScore 8.00
+						;; size=69 bbWeight=1 PerfScore 16.33
 G_M12455_IG02:
        mov      r15, rsi
        mov      r14, rdi
        call     System.Runtime.CompilerServices.RuntimeHelpers:TryEnsureSufficientExecutionStack():ubyte
        test     eax, eax
        je       G_M12455_IG119
 						;; size=19 bbWeight=1 PerfScore 2.75
 G_M12455_IG03:
        mov      rdi, 0xD1FFAB1E      ; global ptr
        test     byte  ptr [rdi], 1
        je       G_M12455_IG123
 						;; size=19 bbWeight=0.50 PerfScore 2.12
 G_M12455_IG04:
        mov      rdi, 0xD1FFAB1E      ; data for System.Text.RegularExpressions.RegexPrefixAnalyzer+<>c:<>9__0_2
        mov      rsi, gword ptr [rdi]
        test     rsi, rsi
        jne      SHORT G_M12455_IG05
        mov      rdi, 0xD1FFAB1E      ; System.Predicate`1[System.Text.StringBuilder]
        call     CORINFO_HELP_NEWSFAST
        mov      r13, rax
        mov      rdi, 0xD1FFAB1E      ; data for System.Text.RegularExpressions.RegexPrefixAnalyzer+<>c:<>9
        mov      rsi, gword ptr [rdi]
        test     rsi, rsi
        je       G_M12455_IG124
        lea      rdi, bword ptr [r13+0x08]
        call     CORINFO_HELP_ASSIGN_REF
        mov      rdi, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.RegexPrefixAnalyzer+<>c:<FindPrefixes>b__0_2(System.Text.StringBuilder):ubyte:this
        mov      qword ptr [r13+0x18], rdi
        mov      rdi, 0xD1FFAB1E      ; data for System.Text.RegularExpressions.RegexPrefixAnalyzer+<>c:<>9__0_2
        mov      rsi, r13
        call     CORINFO_HELP_ASSIGN_REF
        mov      rsi, r13
 						;; size=102 bbWeight=0.50 PerfScore 6.50
 G_M12455_IG05:
        mov      rdi, r15
        mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1[System.__Canon]:TrueForAll(System.Predicate`1[System.__Canon]):ubyte:this
        cmp      dword ptr [rdi], edi
        call     [rax]System.Collections.Generic.List`1[System.__Canon]:TrueForAll(System.Predicate`1[System.__Canon]):ubyte:this
        test     eax, eax
        je       G_M12455_IG119
        test     byte  ptr [r14+0x28], 64
        jne      G_M12455_IG119
        lea      r13, [rbp-0x50]
 						;; size=40 bbWeight=0.50 PerfScore 6.12
 G_M12455_IG06:
        movzx    rsi, byte  ptr [r14+0x2E]
        add      esi, -3
        cmp      esi, 43
        ja       G_M12455_IG119
 						;; size=17 bbWeight=4 PerfScore 14.00
 G_M12455_IG07:
        mov      esi, esi
        lea      rdi, [reloc @RWD00]
        mov      edi, dword ptr [rdi+4*rsi]
        lea      rax, G_M12455_IG02
        add      rdi, rax
        jmp      rdi
 						;; size=24 bbWeight=3.91 PerfScore 23.47
 G_M12455_IG08:
        mov      rax, gword ptr [r14+0x08]
        test     rax, rax
        je       SHORT G_M12455_IG11
 						;; size=9 bbWeight=4 PerfScore 13.00
 G_M12455_IG09:
        mov      rsi, 0xD1FFAB1E      ; System.Text.RegularExpressions.RegexNode
        cmp      qword ptr [rax], rsi
        jne      SHORT G_M12455_IG11
 						;; size=15 bbWeight=1 PerfScore 4.25
 G_M12455_IG10:
        jmp      SHORT G_M12455_IG15
 						;; size=2 bbWeight=2 PerfScore 4.00
 G_M12455_IG11:
        mov      rsi, gword ptr [r14+0x08]
        mov      r14, rsi
        test     r14, r14
        je       SHORT G_M12455_IG14
 						;; size=12 bbWeight=2 PerfScore 7.00
 G_M12455_IG12:
        mov      rdi, 0xD1FFAB1E      ; System.Collections.Generic.List`1[System.Text.RegularExpressions.RegexNode]
        cmp      qword ptr [r14], rdi
        je       SHORT G_M12455_IG14
 						;; size=15 bbWeight=1 PerfScore 4.25
 G_M12455_IG13:
        mov      rax, 0xD1FFAB1E      ; code for CORINFO_HELP_CHKCASTCLASS_SPECIAL
        call     [rax]CORINFO_HELP_CHKCASTCLASS_SPECIAL
        mov      r14, rax
 						;; size=15 bbWeight=0.50 PerfScore 1.75
 G_M12455_IG14:
        cmp      dword ptr [r14+0x10], 0
-       je       G_M12455_IG128
+       je       G_M12455_IG127
        mov      rdi, gword ptr [r14+0x08]
        cmp      dword ptr [rdi+0x08], 0
        jbe      G_M12455_IG122
        mov      r14, gword ptr [rdi+0x10]
        jmp      SHORT G_M12455_IG16
 						;; size=31 bbWeight=2 PerfScore 28.00
 G_M12455_IG15:
        mov      r14, rax
 						;; size=3 bbWeight=2 PerfScore 0.50
 G_M12455_IG16:
        jmp      G_M12455_IG06
 						;; size=5 bbWeight=4 PerfScore 8.00
 G_M12455_IG17:
        test     bl, bl
        je       SHORT G_M12455_IG18
        movzx    rdi, word  ptr [r14+0x2C]
        mov      rax, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.RegexCharClass:ParticipatesInCaseConversion(int):ubyte
        call     [rax]System.Text.RegularExpressions.RegexCharClass:ParticipatesInCaseConversion(int):ubyte
        test     eax, eax
        jne      G_M12455_IG119
 						;; size=29 bbWeight=0.50 PerfScore 3.88
 G_M12455_IG18:
        cmp      byte  ptr [r14+0x2E], 9
        je       SHORT G_M12455_IG19
        mov      ebx, dword ptr [r14+0x20]
-       mov      esi, 8
+       mov      edi, 8
        cmp      ebx, 8
-       cmovg    ebx, esi
+       cmovg    ebx, edi
        jmp      SHORT G_M12455_IG20
-       align    [0 bytes for IG86]
 						;; size=24 bbWeight=0.50 PerfScore 4.38
 G_M12455_IG19:
        mov      ebx, 1
 						;; size=5 bbWeight=0.50 PerfScore 0.12
 G_M12455_IG20:
-       mov      r13d, dword ptr [r15+0x14]
-       xor      r12d, r12d
-       jmp      SHORT G_M12455_IG22
-						;; size=9 bbWeight=0.50 PerfScore 2.12
+       mov      edi, dword ptr [r15+0x14]
+       mov      gword ptr [rbp-0x68], r15
+       xor      rsi, rsi
+       mov      gword ptr [rbp-0x60], rsi
+						;; size=14 bbWeight=0.50 PerfScore 2.12
 G_M12455_IG21:
+       mov      dword ptr [rbp-0x58], esi
+       mov      dword ptr [rbp-0x54], edi
+       lea      rdi, [rbp-0x68]
+       mov      r15, 0xD1FFAB1E      ; System.Collections.Generic.List`1+Enumerator[System.Text.StringBuilder]
+       mov      rsi, r15
+       mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       call     [rax]System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       test     eax, eax
+       je       SHORT G_M12455_IG23
+						;; size=39 bbWeight=0.50 PerfScore 3.75
+G_M12455_IG22:
+       mov      rdi, gword ptr [rbp-0x60]
        movzx    rsi, word  ptr [r14+0x2C]
        mov      edx, ebx
        mov      rax, 0xD1FFAB1E      ; code for System.Text.StringBuilder:Append(ushort,int):System.Text.StringBuilder:this
        cmp      dword ptr [rdi], edi
        call     [rax]System.Text.StringBuilder:Append(ushort,int):System.Text.StringBuilder:this
-						;; size=21 bbWeight=2 PerfScore 17.00
-G_M12455_IG22:
-       mov      esi, dword ptr [r15+0x14]
-       cmp      r13d, esi
-       jne      G_M12455_IG126
-       mov      esi, dword ptr [r15+0x10]
-       cmp      r12d, esi
-       jae      SHORT G_M12455_IG23
-       mov      rsi, gword ptr [r15+0x08]
-       cmp      r12d, dword ptr [rsi+0x08]
-       jae      G_M12455_IG122
-       mov      edi, r12d
-       mov      rdi, gword ptr [rsi+8*rdi+0x10]
-       inc      r12d
-       jmp      SHORT G_M12455_IG21
-						;; size=49 bbWeight=4 PerfScore 68.00
+       lea      rdi, [rbp-0x68]
+       mov      rsi, r15
+       mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       call     [rax]System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       test     eax, eax
+       jne      SHORT G_M12455_IG22
+						;; size=48 bbWeight=4 PerfScore 59.00
 G_M12455_IG23:
        cmp      byte  ptr [r14+0x2E], 9
-       je       G_M12455_IG63
-						;; size=11 bbWeight=4 PerfScore 16.00
-G_M12455_IG24:
+       je       G_M12455_IG64
        cmp      ebx, dword ptr [r14+0x24]
        sete     bl
        movzx    rbx, bl
        jmp      G_M12455_IG98
-						;; size=15 bbWeight=0.50 PerfScore 3.12
-G_M12455_IG25:
+						;; size=26 bbWeight=0.50 PerfScore 5.12
+G_M12455_IG24:
        test     bl, bl
-       jne      SHORT G_M12455_IG28
-       mov      ebx, dword ptr [r15+0x14]
-       xor      r13d, r13d
-       jmp      SHORT G_M12455_IG27
-						;; size=13 bbWeight=0.50 PerfScore 2.75
+       jne      SHORT G_M12455_IG29
+       mov      rdi, r15
+       mov      esi, dword ptr [rdi+0x14]
+       mov      gword ptr [rbp-0x80], rdi
+       xor      rdi, rdi
+       mov      gword ptr [rbp-0x78], rdi
+						;; size=20 bbWeight=0.50 PerfScore 2.88
+G_M12455_IG25:
+       mov      dword ptr [rbp-0x70], edi
+       mov      dword ptr [rbp-0x6C], esi
+       lea      rdi, [rbp-0x80]
+       mov      r15, 0xD1FFAB1E      ; System.Collections.Generic.List`1+Enumerator[System.Text.StringBuilder]
+       mov      rsi, r15
+       mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       call     [rax]System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       test     eax, eax
+       je       G_M12455_IG64
+						;; size=43 bbWeight=0.50 PerfScore 3.75
 G_M12455_IG26:
+       mov      rdi, gword ptr [rbp-0x78]
        mov      rsi, gword ptr [r14+0x10]
        cmp      byte  ptr [rdi], dil
        test     rsi, rsi
-       je       SHORT G_M12455_IG27
+       je       SHORT G_M12455_IG28
+						;; size=16 bbWeight=4 PerfScore 29.00
+G_M12455_IG27:
        mov      edx, dword ptr [rsi+0x08]
        add      rsi, 12
        mov      rax, 0xD1FFAB1E      ; code for System.Text.StringBuilder:Append(byref,int):this
        call     [rax]System.Text.StringBuilder:Append(byref,int):this
-						;; size=31 bbWeight=2 PerfScore 23.50
-G_M12455_IG27:
-       mov      edx, dword ptr [r15+0x14]
-       cmp      ebx, edx
-       jne      G_M12455_IG126
-       mov      edx, dword ptr [r15+0x10]
-       cmp      r13d, edx
-       jae      G_M12455_IG63
-       mov      rdx, gword ptr [r15+0x08]
-       cmp      r13d, dword ptr [rdx+0x08]
-       jae      G_M12455_IG122
-       mov      esi, r13d
-       mov      rdi, gword ptr [rdx+8*rsi+0x10]
-       inc      r13d
-       jmp      SHORT G_M12455_IG26
-						;; size=52 bbWeight=4 PerfScore 68.00
+						;; size=19 bbWeight=2 PerfScore 11.00
 G_M12455_IG28:
+       lea      rdi, [rbp-0x80]
+       mov      rsi, r15
+       mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       call     [rax]System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       test     eax, eax
+       jne      SHORT G_M12455_IG26
+       jmp      G_M12455_IG64
+						;; size=28 bbWeight=4 PerfScore 29.00
+G_M12455_IG29:
        mov      r14, gword ptr [r14+0x10]
-       xor      ebx, ebx
+       xor      r13d, r13d
        cmp      dword ptr [r14+0x08], 0
-       jle      G_M12455_IG63
-						;; size=17 bbWeight=0.50 PerfScore 3.12
-G_M12455_IG29:
-       movzx    r13, word  ptr [r14+2*rbx+0x0C]
-       mov      edi, r13d
+       jle      G_M12455_IG64
+						;; size=18 bbWeight=0.50 PerfScore 3.12
+G_M12455_IG30:
+       movzx    rbx, word  ptr [r14+2*r13+0x0C]
+       mov      edi, ebx
        mov      rax, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.RegexCharClass:ParticipatesInCaseConversion(int):ubyte
        call     [rax]System.Text.RegularExpressions.RegexCharClass:ParticipatesInCaseConversion(int):ubyte
        test     eax, eax
        jne      G_M12455_IG119
        mov      rdi, r15
-       mov      r12d, dword ptr [rdi+0x14]
-       xor      edi, edi
-       jmp      SHORT G_M12455_IG32
-						;; size=40 bbWeight=4 PerfScore 45.00
-G_M12455_IG30:
-       mov      eax, dword ptr [rsi+0x18]
-       mov      ecx, eax
-       mov      rdx, gword ptr [rsi+0x08]
-       cmp      dword ptr [rdx+0x08], ecx
-       jbe      SHORT G_M12455_IG31
-       mov      word  ptr [rdx+2*rcx+0x10], r13w
-       inc      eax
-       mov      dword ptr [rsi+0x18], eax
-       mov      edi, dword ptr [rbp-0x58]
-       jmp      SHORT G_M12455_IG32
-						;; size=30 bbWeight=8 PerfScore 108.00
+       mov      edi, dword ptr [rdi+0x14]
+       mov      gword ptr [rbp-0x98], r15
+       xor      rsi, rsi
+       mov      gword ptr [rbp-0x90], rsi
+						;; size=50 bbWeight=4 PerfScore 45.00
 G_M12455_IG31:
-       mov      rdi, rsi
-       mov      esi, r13d
-       mov      rax, 0xD1FFAB1E      ; code for System.Text.StringBuilder:AppendWithExpansion(ushort):this
-       call     [rax]System.Text.StringBuilder:AppendWithExpansion(ushort):this
-       mov      edi, dword ptr [rbp-0x58]
-						;; size=21 bbWeight=8 PerfScore 38.00
+       mov      dword ptr [rbp-0x88], esi
+       mov      dword ptr [rbp-0x84], edi
+       lea      rdi, [rbp-0x98]
+       mov      rsi, 0xD1FFAB1E      ; System.Collections.Generic.List`1+Enumerator[System.Text.StringBuilder]
+       mov      r12, rsi
+       mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       call     [rax]System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       test     eax, eax
+       je       SHORT G_M12455_IG36
+						;; size=48 bbWeight=4 PerfScore 30.00
 G_M12455_IG32:
-       cmp      r12d, dword ptr [r15+0x14]
-       jne      G_M12455_IG126
-						;; size=10 bbWeight=32 PerfScore 128.00
+       mov      rdi, gword ptr [rbp-0x90]
+       mov      esi, dword ptr [rdi+0x18]
+       mov      rax, gword ptr [rdi+0x08]
+       cmp      dword ptr [rax+0x08], esi
+       jbe      SHORT G_M12455_IG34
+						;; size=19 bbWeight=16 PerfScore 144.00
 G_M12455_IG33:
-       mov      esi, dword ptr [r15+0x10]
-       cmp      edi, esi
-       jae      SHORT G_M12455_IG34
-       mov      rsi, gword ptr [r15+0x08]
-       cmp      edi, dword ptr [rsi+0x08]
-       jae      G_M12455_IG122
-       mov      eax, edi
-       mov      rsi, gword ptr [rsi+8*rax+0x10]
-       inc      edi
-       mov      dword ptr [rbp-0x58], edi
-       jmp      SHORT G_M12455_IG30
-						;; size=35 bbWeight=16 PerfScore 236.00
+       mov      esi, esi
+       mov      word  ptr [rax+2*rsi+0x10], bx
+       inc      dword ptr [rdi+0x18]
+       jmp      SHORT G_M12455_IG35
+						;; size=12 bbWeight=8 PerfScore 50.00
 G_M12455_IG34:
-       inc      ebx
-       cmp      dword ptr [r14+0x08], ebx
-       jg       G_M12455_IG29
-       jmp      G_M12455_IG63
-						;; size=17 bbWeight=16 PerfScore 100.00
+       mov      esi, ebx
+       mov      rax, 0xD1FFAB1E      ; code for System.Text.StringBuilder:AppendWithExpansion(ushort):this
+       call     [rax]System.Text.StringBuilder:AppendWithExpansion(ushort):this
+						;; size=14 bbWeight=8 PerfScore 28.00
 G_M12455_IG35:
+       lea      rdi, [rbp-0x98]
+       mov      rsi, r12
+       mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       call     [rax]System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       test     eax, eax
+       jne      SHORT G_M12455_IG32
+						;; size=26 bbWeight=16 PerfScore 84.00
+G_M12455_IG36:
+       inc      r13d
+       cmp      dword ptr [r14+0x08], r13d
+       jg       G_M12455_IG30
+       jmp      G_M12455_IG64
+						;; size=18 bbWeight=4 PerfScore 25.00
+G_M12455_IG37:
        mov      rsi, gword ptr [r14+0x10]
        cmp      dword ptr [rsi+0x08], 0
        jbe      G_M12455_IG122
        cmp      word  ptr [rsi+0x0C], 1
        je       G_M12455_IG119
        mov      rsi, r13
        mov      edx, 16
        mov      rdi, gword ptr [r14+0x10]
        mov      rax, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.RegexCharClass:GetSetChars(System.String,System.Span`1[ushort]):int
        call     [rax]System.Text.RegularExpressions.RegexCharClass:GetSetChars(System.String,System.Span`1[ushort]):int
        test     eax, eax
        je       G_M12455_IG119
        cmp      byte  ptr [r14+0x2E], 11
-       je       SHORT G_M12455_IG36
+       je       SHORT G_M12455_IG38
        mov      r12d, dword ptr [r14+0x20]
        mov      edi, 8
        cmp      r12d, 8
        cmovg    r12d, edi
-       jmp      SHORT G_M12455_IG37
+       jmp      SHORT G_M12455_IG39
 						;; size=83 bbWeight=0.50 PerfScore 12.88
-G_M12455_IG36:
+G_M12455_IG38:
        mov      r12d, 1
 						;; size=6 bbWeight=0.50 PerfScore 0.12
-G_M12455_IG37:
+G_M12455_IG39:
        test     bl, bl
-       jne      G_M12455_IG49
+       jne      G_M12455_IG51
        mov      ebx, dword ptr [r15+0x10]
        dec      eax
        mov      edi, eax
        inc      rdi
        cmp      rdi, 16
        ja       G_M12455_IG125
        lea      rcx, bword ptr [r13+0x02]
-       mov      bword ptr [rbp-0xE8], rcx
-       mov      dword ptr [rbp-0x5C], eax
+       mov      bword ptr [rbp-0x168], rcx
+       mov      dword ptr [rbp-0xD4], eax
        xor      edx, edx
        test     eax, eax
-       jle      G_M12455_IG47
-						;; size=53 bbWeight=0.50 PerfScore 4.62
-G_M12455_IG38:
-       mov      qword ptr [rbp-0x80], rdx
+       jle      G_M12455_IG49
+						;; size=56 bbWeight=0.50 PerfScore 4.62
+G_M12455_IG40:
+       mov      qword ptr [rbp-0x100], rdx
        movzx    rsi, word  ptr [rcx+2*rdx]
-       mov      dword ptr [rbp-0x54], esi
+       mov      dword ptr [rbp-0x9C], esi
        xor      r8d, r8d
-       mov      qword ptr [rbp-0x88], r8
+       mov      qword ptr [rbp-0x108], r8
        test     ebx, ebx
-       jle      G_M12455_IG46
-						;; size=29 bbWeight=4 PerfScore 26.00
-G_M12455_IG39:
+       jle      G_M12455_IG48
+						;; size=35 bbWeight=4 PerfScore 26.00
+G_M12455_IG41:
        mov      rdi, 0xD1FFAB1E      ; System.Text.StringBuilder
        call     CORINFO_HELP_NEWSFAST
-       mov      gword ptr [rbp-0xD0], rax
+       mov      gword ptr [rbp-0x150], rax
        mov      dword ptr [rax+0x20], 0xD1FFAB1E
        mov      rdi, 0xD1FFAB1E      ; ushort[]
        mov      esi, 16
        call     CORINFO_HELP_NEWARR_1_VC
-       mov      rcx, gword ptr [rbp-0xD0]
+       mov      rcx, gword ptr [rbp-0x150]
        lea      rdi, bword ptr [rcx+0x08]
        mov      rsi, rax
        call     CORINFO_HELP_ASSIGN_REF
-       mov      rax, qword ptr [rbp-0x88]
+       mov      rax, qword ptr [rbp-0x108]
        cmp      eax, dword ptr [r15+0x10]
-       jae      G_M12455_IG128
+       jae      G_M12455_IG127
        mov      rcx, gword ptr [r15+0x08]
        cmp      eax, dword ptr [rcx+0x08]
        jae      G_M12455_IG122
-       mov      qword ptr [rbp-0x88], rax
+       mov      qword ptr [rbp-0x108], rax
        mov      rsi, gword ptr [rcx+8*rax+0x10]
        test     rsi, rsi
-       je       SHORT G_M12455_IG41
+       je       SHORT G_M12455_IG43
 						;; size=115 bbWeight=16 PerfScore 364.00
-G_M12455_IG40:
+G_M12455_IG42:
        mov      ecx, dword ptr [rsi+0x1C]
        add      ecx, dword ptr [rsi+0x18]
-       je       SHORT G_M12455_IG41
-       mov      rdi, gword ptr [rbp-0xD0]
+       je       SHORT G_M12455_IG43
+       mov      rdi, gword ptr [rbp-0x150]
        xor      edx, edx
        mov      r8, 0xD1FFAB1E      ; code for System.Text.StringBuilder:AppendCore(System.Text.StringBuilder,int,int):System.Text.StringBuilder:this
        call     [r8]System.Text.StringBuilder:AppendCore(System.Text.StringBuilder,int,int):System.Text.StringBuilder:this
-       jmp      SHORT G_M12455_IG42
+       jmp      SHORT G_M12455_IG44
 						;; size=32 bbWeight=8 PerfScore 100.00
-G_M12455_IG41:
-       mov      rdi, gword ptr [rbp-0xD0]
+G_M12455_IG43:
+       mov      rdi, gword ptr [rbp-0x150]
        mov      rcx, rdi
        mov      rax, rcx
 						;; size=13 bbWeight=8 PerfScore 12.00
-G_M12455_IG42:
-       mov      gword ptr [rbp-0xD8], rax
+G_M12455_IG44:
+       mov      gword ptr [rbp-0x158], rax
        mov      rdi, rax
-       mov      esi, dword ptr [rbp-0x54]
+       mov      esi, dword ptr [rbp-0x9C]
        mov      edx, r12d
        mov      rcx, 0xD1FFAB1E      ; code for System.Text.StringBuilder:Append(ushort,int):System.Text.StringBuilder:this
        cmp      dword ptr [rdi], edi
        call     [rcx]System.Text.StringBuilder:Append(ushort,int):System.Text.StringBuilder:this
        inc      dword ptr [r15+0x14]
        mov      rdi, gword ptr [r15+0x08]
        mov      esi, dword ptr [r15+0x10]
        cmp      dword ptr [rdi+0x08], esi
-       jbe      SHORT G_M12455_IG44
-						;; size=47 bbWeight=16 PerfScore 316.00
-G_M12455_IG43:
+       jbe      SHORT G_M12455_IG46
+						;; size=50 bbWeight=16 PerfScore 316.00
+G_M12455_IG45:
        lea      eax, [rsi+0x01]
        mov      dword ptr [r15+0x10], eax
        mov      esi, esi
        lea      rdi, bword ptr [rdi+8*rsi+0x10]
-       mov      rsi, gword ptr [rbp-0xD8]
+       mov      rsi, gword ptr [rbp-0x158]
        call     CORINFO_HELP_ASSIGN_REF
-       jmp      SHORT G_M12455_IG45
+       jmp      SHORT G_M12455_IG47
 						;; size=28 bbWeight=8 PerfScore 54.00
-G_M12455_IG44:
+G_M12455_IG46:
        mov      rdi, r15
-       mov      rsi, gword ptr [rbp-0xD8]
+       mov      rsi, gword ptr [rbp-0x158]
        mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
        call     [rax]System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
 						;; size=22 bbWeight=8 PerfScore 36.00
-G_M12455_IG45:
-       mov      rdi, qword ptr [rbp-0x88]
+G_M12455_IG47:
+       mov      rdi, qword ptr [rbp-0x108]
        inc      edi
        cmp      edi, ebx
-       mov      qword ptr [rbp-0x88], rdi
-       jl       G_M12455_IG39
+       mov      qword ptr [rbp-0x108], rdi
+       jl       G_M12455_IG41
 						;; size=24 bbWeight=16 PerfScore 56.00
-G_M12455_IG46:
-       mov      rdi, qword ptr [rbp-0x80]
+G_M12455_IG48:
+       mov      rdi, qword ptr [rbp-0x100]
        inc      edi
-       mov      esi, dword ptr [rbp-0x5C]
+       mov      esi, dword ptr [rbp-0xD4]
        cmp      edi, esi
        mov      rdx, rdi
-       mov      rcx, bword ptr [rbp-0xE8]
-       jl       G_M12455_IG38
-						;; size=27 bbWeight=4 PerfScore 19.00
-G_M12455_IG47:
+       mov      rcx, bword ptr [rbp-0x168]
+       jl       G_M12455_IG40
+						;; size=33 bbWeight=4 PerfScore 19.00
+G_M12455_IG49:
        xor      eax, eax
        test     ebx, ebx
-       jle      G_M12455_IG52
+       jle      G_M12455_IG54
 						;; size=10 bbWeight=0.50 PerfScore 0.75
-G_M12455_IG48:
+G_M12455_IG50:
        cmp      eax, dword ptr [r15+0x10]
-       jae      G_M12455_IG128
+       jae      G_M12455_IG127
        mov      rdi, gword ptr [r15+0x08]
        cmp      eax, dword ptr [rdi+0x08]
        jae      G_M12455_IG122
-       mov      qword ptr [rbp-0x90], rax
+       mov      qword ptr [rbp-0x110], rax
        mov      rdi, gword ptr [rdi+8*rax+0x10]
        movzx    rsi, word  ptr [r13]
        mov      edx, r12d
        mov      rcx, 0xD1FFAB1E      ; code for System.Text.StringBuilder:Append(ushort,int):System.Text.StringBuilder:this
        cmp      dword ptr [rdi], edi
        call     [rcx]System.Text.StringBuilder:Append(ushort,int):System.Text.StringBuilder:this
-       mov      rsi, qword ptr [rbp-0x90]
+       mov      rsi, qword ptr [rbp-0x110]
        inc      esi
        cmp      esi, ebx
        mov      rax, rsi
-       jl       SHORT G_M12455_IG48
-       jmp      SHORT G_M12455_IG52
-						;; size=75 bbWeight=4 PerfScore 105.00
-G_M12455_IG49:
+       jl       SHORT G_M12455_IG50
+       jmp      G_M12455_IG54
+						;; size=78 bbWeight=4 PerfScore 105.00
+G_M12455_IG51:
        mov      rsi, r13
        mov      edx, 16
        mov      rdi, gword ptr [r14+0x10]
        mov      rax, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.RegexCharClass:SetContainsAsciiOrdinalIgnoreCaseCharacter(System.String,System.Span`1[ushort]):ubyte
        call     [rax]System.Text.RegularExpressions.RegexCharClass:SetContainsAsciiOrdinalIgnoreCaseCharacter(System.String,System.Span`1[ushort]):ubyte
        test     eax, eax
        je       G_M12455_IG119
-       mov      ebx, dword ptr [r15+0x14]
-       xor      esi, esi
-       jmp      SHORT G_M12455_IG51
-						;; size=40 bbWeight=0.50 PerfScore 5.62
-G_M12455_IG50:
+       mov      rdi, r15
+       mov      esi, dword ptr [rdi+0x14]
+       mov      gword ptr [rbp-0xB8], rdi
+       xor      rdi, rdi
+       mov      gword ptr [rbp-0xB0], rdi
+						;; size=54 bbWeight=0.50 PerfScore 5.75
+G_M12455_IG52:
+       mov      dword ptr [rbp-0xA8], edi
+       mov      dword ptr [rbp-0xA4], esi
+       lea      rdi, [rbp-0xB8]
+       mov      rsi, 0xD1FFAB1E      ; System.Collections.Generic.List`1+Enumerator[System.Text.StringBuilder]
+       mov      r15, rsi
+       mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       call     [rax]System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       test     eax, eax
+       je       SHORT G_M12455_IG54
+						;; size=48 bbWeight=0.50 PerfScore 3.75
+G_M12455_IG53:
+       mov      rdi, gword ptr [rbp-0xB0]
        movzx    rsi, word  ptr [r13+0x02]
        mov      edx, r12d
        mov      rax, 0xD1FFAB1E      ; code for System.Text.StringBuilder:Append(ushort,int):System.Text.StringBuilder:this
        cmp      dword ptr [rdi], edi
        call     [rax]System.Text.StringBuilder:Append(ushort,int):System.Text.StringBuilder:this
-       mov      esi, dword ptr [rbp-0x60]
-						;; size=25 bbWeight=2 PerfScore 19.00
-G_M12455_IG51:
-       mov      edi, dword ptr [r15+0x14]
-       cmp      ebx, edi
-       jne      G_M12455_IG126
-       mov      edi, dword ptr [r15+0x10]
-       cmp      esi, edi
-       jae      SHORT G_M12455_IG52
-       mov      rdi, gword ptr [r15+0x08]
-       cmp      esi, dword ptr [rdi+0x08]
-       jae      G_M12455_IG122
-       mov      edx, esi
-       mov      rdi, gword ptr [rdi+8*rdx+0x10]
-       inc      esi
-       mov      dword ptr [rbp-0x60], esi
-       jmp      SHORT G_M12455_IG50
-						;; size=47 bbWeight=4 PerfScore 72.00
-G_M12455_IG52:
+       lea      rdi, [rbp-0xB8]
+       mov      rsi, r15
+       mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       call     [rax]System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       test     eax, eax
+       jne      SHORT G_M12455_IG53
+						;; size=55 bbWeight=4 PerfScore 59.00
+G_M12455_IG54:
        cmp      byte  ptr [r14+0x2E], 11
-       je       G_M12455_IG63
-						;; size=11 bbWeight=4 PerfScore 16.00
-G_M12455_IG53:
+       je       G_M12455_IG64
        cmp      r12d, dword ptr [r14+0x24]
        sete     bl
        movzx    rbx, bl
        jmp      G_M12455_IG98
-						;; size=15 bbWeight=0.50 PerfScore 3.12
-G_M12455_IG54:
+						;; size=26 bbWeight=0.50 PerfScore 5.12
+G_M12455_IG55:
        mov      rdi, r14
        mov      rax, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.RegexNode:ChildCount():int:this
        call     [rax]System.Text.RegularExpressions.RegexNode:ChildCount():int:this
        mov      r13d, eax
        xor      r12d, r12d
        test     r13d, r13d
-       jle      G_M12455_IG63
+       jle      G_M12455_IG64
 						;; size=30 bbWeight=0.50 PerfScore 2.62
-G_M12455_IG55:
+G_M12455_IG56:
        mov      rdi, gword ptr [r14+0x08]
        test     rdi, rdi
-       je       SHORT G_M12455_IG58
+       je       SHORT G_M12455_IG59
 						;; size=9 bbWeight=4 PerfScore 13.00
-G_M12455_IG56:
+G_M12455_IG57:
        mov      rsi, 0xD1FFAB1E      ; System.Text.RegularExpressions.RegexNode
        cmp      qword ptr [rdi], rsi
-       jne      SHORT G_M12455_IG58
+       jne      SHORT G_M12455_IG59
 						;; size=15 bbWeight=1 PerfScore 4.25
-G_M12455_IG57:
-       jmp      SHORT G_M12455_IG62
-						;; size=2 bbWeight=2 PerfScore 4.00
 G_M12455_IG58:
+       jmp      SHORT G_M12455_IG63
+						;; size=2 bbWeight=2 PerfScore 4.00
+G_M12455_IG59:
        mov      rsi, gword ptr [r14+0x08]
        mov      rax, rsi
        test     rax, rax
-       je       SHORT G_M12455_IG61
+       je       SHORT G_M12455_IG62
 						;; size=12 bbWeight=2 PerfScore 7.00
-G_M12455_IG59:
+G_M12455_IG60:
        mov      rdi, 0xD1FFAB1E      ; System.Collections.Generic.List`1[System.Text.RegularExpressions.RegexNode]
        cmp      qword ptr [rax], rdi
-       je       SHORT G_M12455_IG61
+       je       SHORT G_M12455_IG62
 						;; size=15 bbWeight=1 PerfScore 4.25
-G_M12455_IG60:
+G_M12455_IG61:
        mov      rax, 0xD1FFAB1E      ; code for CORINFO_HELP_CHKCASTCLASS_SPECIAL
        call     [rax]CORINFO_HELP_CHKCASTCLASS_SPECIAL
 						;; size=12 bbWeight=0.50 PerfScore 1.62
-G_M12455_IG61:
+G_M12455_IG62:
        cmp      r12d, dword ptr [rax+0x10]
-       jae      G_M12455_IG128
+       jae      G_M12455_IG127
        mov      rdx, gword ptr [rax+0x08]
        cmp      r12d, dword ptr [rdx+0x08]
        jae      G_M12455_IG122
        mov      rdi, gword ptr [rdx+8*r12+0x10]
 						;; size=29 bbWeight=2 PerfScore 24.00
-G_M12455_IG62:
+G_M12455_IG63:
        movzx    rdx, bl
        mov      rsi, r15
        mov      rax, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.RegexPrefixAnalyzer:<FindPrefixes>g__FindPrefixesCore|0_1(System.Text.RegularExpressions.RegexNode,System.Collections.Generic.List`1[System.Text.StringBuilder],ubyte):ubyte
        call     [rax]System.Text.RegularExpressions.RegexPrefixAnalyzer:<FindPrefixes>g__FindPrefixesCore|0_1(System.Text.RegularExpressions.RegexNode,System.Collections.Generic.List`1[System.Text.StringBuilder],ubyte):ubyte
        test     eax, eax
        je       G_M12455_IG119
        inc      r12d
        cmp      r12d, r13d
-       jl       SHORT G_M12455_IG55
+       jl       SHORT G_M12455_IG56
 						;; size=34 bbWeight=4 PerfScore 26.00
-G_M12455_IG63:
+G_M12455_IG64:
        mov      eax, 1
        cmp      qword ptr [rbp-0x30], 0xD1FFAB1E
-       je       SHORT G_M12455_IG64
+       je       SHORT G_M12455_IG65
        call     CORINFO_HELP_FAIL_FAST
 						;; size=20 bbWeight=0.50 PerfScore 2.12
-G_M12455_IG64:
+G_M12455_IG65:
        nop      
 						;; size=1 bbWeight=0.50 PerfScore 0.12
-G_M12455_IG65:
-       add      rsp, 216
+G_M12455_IG66:
+       add      rsp, 344
        pop      rbx
        pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
 						;; size=18 bbWeight=0.50 PerfScore 2.12
-G_M12455_IG66:
+G_M12455_IG67:
        mov      r13d, dword ptr [r14+0x20]
        test     r13d, r13d
        jle      G_M12455_IG119
        mov      esi, 8
        cmp      r13d, 8
        cmovg    r13d, esi
        xor      r12d, r12d
        test     r13d, r13d
-       jle      G_M12455_IG75
+       jle      G_M12455_IG76
 						;; size=38 bbWeight=0.50 PerfScore 2.75
-G_M12455_IG67:
+G_M12455_IG68:
        mov      rdi, gword ptr [r14+0x08]
        test     rdi, rdi
-       je       SHORT G_M12455_IG70
+       je       SHORT G_M12455_IG71
 						;; size=9 bbWeight=4 PerfScore 13.00
-G_M12455_IG68:
+G_M12455_IG69:
        mov      rsi, 0xD1FFAB1E      ; System.Text.RegularExpressions.RegexNode
        cmp      qword ptr [rdi], rsi
-       jne      SHORT G_M12455_IG70
+       jne      SHORT G_M12455_IG71
 						;; size=15 bbWeight=1 PerfScore 4.25
-G_M12455_IG69:
-       jmp      SHORT G_M12455_IG74
-						;; size=2 bbWeight=2 PerfScore 4.00
 G_M12455_IG70:
+       jmp      SHORT G_M12455_IG75
+						;; size=2 bbWeight=2 PerfScore 4.00
+G_M12455_IG71:
        mov      rsi, gword ptr [r14+0x08]
        mov      rax, rsi
        test     rax, rax
-       je       SHORT G_M12455_IG73
+       je       SHORT G_M12455_IG74
 						;; size=12 bbWeight=2 PerfScore 7.00
-G_M12455_IG71:
+G_M12455_IG72:
        mov      rdi, 0xD1FFAB1E      ; System.Collections.Generic.List`1[System.Text.RegularExpressions.RegexNode]
        cmp      qword ptr [rax], rdi
-       je       SHORT G_M12455_IG73
+       je       SHORT G_M12455_IG74
 						;; size=15 bbWeight=1 PerfScore 4.25
-G_M12455_IG72:
+G_M12455_IG73:
        mov      rax, 0xD1FFAB1E      ; code for CORINFO_HELP_CHKCASTCLASS_SPECIAL
        call     [rax]CORINFO_HELP_CHKCASTCLASS_SPECIAL
 						;; size=12 bbWeight=0.50 PerfScore 1.62
-G_M12455_IG73:
+G_M12455_IG74:
        cmp      dword ptr [rax+0x10], 0
-       je       G_M12455_IG128
+       je       G_M12455_IG127
        mov      rdx, gword ptr [rax+0x08]
        cmp      dword ptr [rdx+0x08], 0
        jbe      G_M12455_IG122
        mov      rdi, gword ptr [rdx+0x10]
 						;; size=28 bbWeight=2 PerfScore 24.00
-G_M12455_IG74:
+G_M12455_IG75:
        movzx    rdx, bl
        mov      rsi, r15
        mov      rax, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.RegexPrefixAnalyzer:<FindPrefixes>g__FindPrefixesCore|0_1(System.Text.RegularExpressions.RegexNode,System.Collections.Generic.List`1[System.Text.StringBuilder],ubyte):ubyte
        call     [rax]System.Text.RegularExpressions.RegexPrefixAnalyzer:<FindPrefixes>g__FindPrefixesCore|0_1(System.Text.RegularExpressions.RegexNode,System.Collections.Generic.List`1[System.Text.StringBuilder],ubyte):ubyte
        test     eax, eax
        je       G_M12455_IG119
        inc      r12d
        cmp      r12d, r13d
-       jl       SHORT G_M12455_IG67
+       jl       SHORT G_M12455_IG68
 						;; size=34 bbWeight=4 PerfScore 26.00
-G_M12455_IG75:
+G_M12455_IG76:
        cmp      r13d, dword ptr [r14+0x24]
        sete     bl
        movzx    rbx, bl
        jmp      G_M12455_IG98
 						;; size=15 bbWeight=0.50 PerfScore 3.12
-G_M12455_IG76:
+G_M12455_IG77:
        mov      rdi, r14
        mov      rax, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.RegexNode:ChildCount():int:this
        call     [rax]System.Text.RegularExpressions.RegexNode:ChildCount():int:this
        mov      r13d, eax
        cmp      r13d, 16
        jg       G_M12455_IG119
        xor      r12, r12
        mov      rdi, 0xD1FFAB1E      ; System.Collections.Generic.List`1[System.Text.StringBuilder]
        call     CORINFO_HELP_NEWSFAST
-       mov      gword ptr [rbp-0xA0], rax
+       mov      gword ptr [rbp-0x120], rax
        mov      rdi, rax
        mov      esi, 1
        mov      rcx, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1[System.__Canon]:.ctor(int):this
        call     [rcx]System.Collections.Generic.List`1[System.__Canon]:.ctor(int):this
-       mov      rsi, gword ptr [rbp-0xA0]
+       mov      rsi, gword ptr [rbp-0x120]
        mov      rdi, 0xD1FFAB1E      ; System.Runtime.InteropServices.CollectionsMarshal:SetCount[System.Text.StringBuilder](System.Collections.Generic.List`1[System.Text.StringBuilder],int)
        mov      edx, 1
        mov      rax, 0xD1FFAB1E      ; code for System.Runtime.InteropServices.CollectionsMarshal:SetCount[System.__Canon](System.Collections.Generic.List`1[System.__Canon],int)
        call     [rax]System.Runtime.InteropServices.CollectionsMarshal:SetCount[System.__Canon](System.Collections.Generic.List`1[System.__Canon],int)
-       mov      rax, gword ptr [rbp-0xA0]
+       mov      rax, gword ptr [rbp-0x120]
        mov      ecx, dword ptr [rax+0x10]
        mov      rdx, gword ptr [rax+0x08]
        cmp      dword ptr [rdx+0x08], ecx
-       jb       G_M12455_IG127
+       jb       G_M12455_IG126
        add      rdx, 16
-       mov      bword ptr [rbp-0xF0], rdx
-       mov      dword ptr [rbp-0x64], ecx
+       mov      bword ptr [rbp-0x170], rdx
+       mov      dword ptr [rbp-0xD8], ecx
        mov      rdi, 0xD1FFAB1E      ; System.Text.StringBuilder
        call     CORINFO_HELP_NEWSFAST
-       mov      gword ptr [rbp-0xA8], rax
-       cmp      dword ptr [rbp-0x64], 0
+       mov      gword ptr [rbp-0x128], rax
+       cmp      dword ptr [rbp-0xD8], 0
        jbe      G_M12455_IG122
        mov      dword ptr [rax+0x20], 0xD1FFAB1E
        mov      rdi, 0xD1FFAB1E      ; ushort[]
        mov      esi, 16
        call     CORINFO_HELP_NEWARR_1_VC
-       mov      rcx, gword ptr [rbp-0xA8]
+       mov      rcx, gword ptr [rbp-0x128]
        lea      rdi, bword ptr [rcx+0x08]
        mov      rsi, rax
        call     CORINFO_HELP_ASSIGN_REF
-       mov      rdi, bword ptr [rbp-0xF0]
-       mov      rsi, gword ptr [rbp-0xA8]
+       mov      rdi, bword ptr [rbp-0x170]
+       mov      rsi, gword ptr [rbp-0x128]
        call     CORINFO_HELP_ASSIGN_REF
-       mov      rax, gword ptr [rbp-0xA0]
-       mov      gword ptr [rbp-0x98], rax
+       mov      rax, gword ptr [rbp-0x120]
+       mov      gword ptr [rbp-0x118], rax
        xor      ecx, ecx
-						;; size=257 bbWeight=0.50 PerfScore 21.50
-G_M12455_IG77:
-       mov      qword ptr [rbp-0x70], rcx
+						;; size=263 bbWeight=0.50 PerfScore 21.50
+G_M12455_IG78:
+       mov      qword ptr [rbp-0xF0], rcx
        test     r13d, r13d
-       mov      rax, gword ptr [rbp-0x98]
+       mov      rax, gword ptr [rbp-0x118]
        jle      G_M12455_IG96
-						;; size=20 bbWeight=0.50 PerfScore 1.62
-G_M12455_IG78:
+						;; size=23 bbWeight=0.50 PerfScore 1.62
+G_M12455_IG79:
        mov      rdi, gword ptr [r14+0x08]
        test     rdi, rdi
-       je       SHORT G_M12455_IG81
+       je       SHORT G_M12455_IG82
 						;; size=9 bbWeight=4 PerfScore 13.00
-G_M12455_IG79:
+G_M12455_IG80:
        mov      rsi, 0xD1FFAB1E      ; System.Text.RegularExpressions.RegexNode
        cmp      qword ptr [rdi], rsi
-       jne      SHORT G_M12455_IG81
+       jne      SHORT G_M12455_IG82
 						;; size=15 bbWeight=1 PerfScore 4.25
-G_M12455_IG80:
-       jmp      SHORT G_M12455_IG85
-						;; size=2 bbWeight=2 PerfScore 4.00
 G_M12455_IG81:
+       jmp      SHORT G_M12455_IG86
+						;; size=2 bbWeight=2 PerfScore 4.00
+G_M12455_IG82:
        mov      rsi, gword ptr [r14+0x08]
        mov      rdx, rsi
        test     rdx, rdx
-       je       SHORT G_M12455_IG84
+       je       SHORT G_M12455_IG85
 						;; size=12 bbWeight=2 PerfScore 7.00
-G_M12455_IG82:
+G_M12455_IG83:
        mov      rdi, 0xD1FFAB1E      ; System.Collections.Generic.List`1[System.Text.RegularExpressions.RegexNode]
        cmp      qword ptr [rdx], rdi
-       je       SHORT G_M12455_IG84
+       je       SHORT G_M12455_IG85
 						;; size=15 bbWeight=1 PerfScore 4.25
-G_M12455_IG83:
-       mov      gword ptr [rbp-0x98], rax
+G_M12455_IG84:
+       mov      gword ptr [rbp-0x118], rax
        mov      rdx, 0xD1FFAB1E      ; code for CORINFO_HELP_CHKCASTCLASS_SPECIAL
        call     [rdx]CORINFO_HELP_CHKCASTCLASS_SPECIAL
        mov      rdx, rax
-       mov      rax, gword ptr [rbp-0x98]
+       mov      rax, gword ptr [rbp-0x118]
 						;; size=29 bbWeight=0.50 PerfScore 2.75
-G_M12455_IG84:
-       mov      rcx, qword ptr [rbp-0x70]
+G_M12455_IG85:
+       mov      rcx, qword ptr [rbp-0xF0]
        cmp      ecx, dword ptr [rdx+0x10]
-       jae      G_M12455_IG128
+       jae      G_M12455_IG127
        mov      rdx, gword ptr [rdx+0x08]
        cmp      ecx, dword ptr [rdx+0x08]
        jae      G_M12455_IG122
-       mov      qword ptr [rbp-0x70], rcx
+       mov      qword ptr [rbp-0xF0], rcx
        mov      rdi, gword ptr [rdx+8*rcx+0x10]
-						;; size=35 bbWeight=2 PerfScore 28.00
-G_M12455_IG85:
+						;; size=41 bbWeight=2 PerfScore 28.00
+G_M12455_IG86:
        movzx    rdx, bl
-       mov      gword ptr [rbp-0x98], rax
+       mov      gword ptr [rbp-0x118], rax
        mov      rsi, rax
        mov      r8, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.RegexPrefixAnalyzer:<FindPrefixes>g__FindPrefixesCore|0_1(System.Text.RegularExpressions.RegexNode,System.Collections.Generic.List`1[System.Text.StringBuilder],ubyte):ubyte
        call     [r8]System.Text.RegularExpressions.RegexPrefixAnalyzer:<FindPrefixes>g__FindPrefixesCore|0_1(System.Text.RegularExpressions.RegexNode,System.Collections.Generic.List`1[System.Text.StringBuilder],ubyte):ubyte
-       mov      rax, gword ptr [rbp-0x98]
+       mov      rax, gword ptr [rbp-0x118]
        mov      rdi, rax
-       mov      ecx, dword ptr [rdi+0x14]
-       xor      ecx, ecx
-       jmp      SHORT G_M12455_IG87
-						;; size=43 bbWeight=4 PerfScore 41.00
-G_M12455_IG86:
-       mov      esi, dword ptr [rdx+0x1C]
-       add      esi, dword ptr [rdx+0x18]
-       je       G_M12455_IG97
-						;; size=12 bbWeight=8 PerfScore 48.00
+       mov      esi, dword ptr [rdi+0x14]
+       mov      gword ptr [rbp-0xD0], rdi
+       xor      rdi, rdi
+       mov      gword ptr [rbp-0xC8], rdi
+						;; size=55 bbWeight=4 PerfScore 41.00
 G_M12455_IG87:
-       mov      edx, dword ptr [rdi+0x10]
-       cmp      ecx, edx
-       jae      SHORT G_M12455_IG89
-						;; size=7 bbWeight=32 PerfScore 104.00
+       mov      dword ptr [rbp-0xC0], edi
+       mov      dword ptr [rbp-0xBC], esi
+       lea      rdi, [rbp-0xD0]
+       mov      rsi, 0xD1FFAB1E      ; System.Collections.Generic.List`1+Enumerator[System.Text.StringBuilder]
+       mov      rcx, rsi
+       mov      qword ptr [rbp-0xE8], rcx
+       mov      rsi, rcx
+       mov      rdx, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       call     [rdx]System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       test     eax, eax
+       je       SHORT G_M12455_IG89
+						;; size=58 bbWeight=4 PerfScore 35.00
 G_M12455_IG88:
-       mov      rdx, gword ptr [rdi+0x08]
-       cmp      ecx, dword ptr [rdx+0x08]
-       jae      G_M12455_IG122
-       mov      esi, ecx
-       mov      rdx, gword ptr [rdx+8*rsi+0x10]
-       inc      ecx
-       jmp      SHORT G_M12455_IG86
-						;; size=24 bbWeight=16 PerfScore 168.00
+       mov      rdi, gword ptr [rbp-0xC8]
+       mov      esi, dword ptr [rdi+0x1C]
+       add      esi, dword ptr [rdi+0x18]
+       je       G_M12455_IG97
+       lea      rdi, [rbp-0xD0]
+       mov      rsi, qword ptr [rbp-0xE8]
+       mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       call     [rax]System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       test     eax, eax
+       jne      SHORT G_M12455_IG88
+						;; size=49 bbWeight=16 PerfScore 208.00
 G_M12455_IG89:
        test     r12, r12
        jne      G_M12455_IG91
-						;; size=9 bbWeight=16 PerfScore 20.00
+						;; size=9 bbWeight=4 PerfScore 5.00
 G_M12455_IG90:
-       mov      r12, rax
+       mov      r12, gword ptr [rbp-0x118]
        mov      rdi, 0xD1FFAB1E      ; System.Collections.Generic.List`1[System.Text.StringBuilder]
        call     CORINFO_HELP_NEWSFAST
-       mov      gword ptr [rbp-0xB8], rax
+       mov      gword ptr [rbp-0x138], rax
        mov      rdi, rax
        mov      esi, 1
        mov      rcx, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1[System.__Canon]:.ctor(int):this
        call     [rcx]System.Collections.Generic.List`1[System.__Canon]:.ctor(int):this
-       mov      rsi, gword ptr [rbp-0xB8]
+       mov      rsi, gword ptr [rbp-0x138]
        mov      rdi, 0xD1FFAB1E      ; System.Runtime.InteropServices.CollectionsMarshal:SetCount[System.Text.StringBuilder](System.Collections.Generic.List`1[System.Text.StringBuilder],int)
        mov      edx, 1
        mov      rax, 0xD1FFAB1E      ; code for System.Runtime.InteropServices.CollectionsMarshal:SetCount[System.__Canon](System.Collections.Generic.List`1[System.__Canon],int)
        call     [rax]System.Runtime.InteropServices.CollectionsMarshal:SetCount[System.__Canon](System.Collections.Generic.List`1[System.__Canon],int)
-       mov      rax, gword ptr [rbp-0xB8]
+       mov      rax, gword ptr [rbp-0x138]
        mov      ecx, dword ptr [rax+0x10]
        mov      rdx, gword ptr [rax+0x08]
        cmp      dword ptr [rdx+0x08], ecx
-       jb       G_M12455_IG127
+       jb       G_M12455_IG126
        add      rdx, 16
-       mov      bword ptr [rbp-0xF8], rdx
-       mov      dword ptr [rbp-0x68], ecx
+       mov      bword ptr [rbp-0x178], rdx
+       mov      dword ptr [rbp-0xDC], ecx
        mov      rdi, 0xD1FFAB1E      ; System.Text.StringBuilder
        call     CORINFO_HELP_NEWSFAST
-       mov      gword ptr [rbp-0xC0], rax
-       cmp      dword ptr [rbp-0x68], 0
+       mov      gword ptr [rbp-0x140], rax
+       cmp      dword ptr [rbp-0xDC], 0
        jbe      G_M12455_IG122
        mov      dword ptr [rax+0x20], 0xD1FFAB1E
        mov      rdi, 0xD1FFAB1E      ; ushort[]
        mov      esi, 16
        call     CORINFO_HELP_NEWARR_1_VC
-       mov      rcx, gword ptr [rbp-0xC0]
+       mov      rcx, gword ptr [rbp-0x140]
        lea      rdi, bword ptr [rcx+0x08]
        mov      rsi, rax
        call     CORINFO_HELP_ASSIGN_REF
-       mov      rdi, bword ptr [rbp-0xF8]
-       mov      rsi, gword ptr [rbp-0xC0]
+       mov      rdi, bword ptr [rbp-0x178]
+       mov      rsi, gword ptr [rbp-0x140]
        call     CORINFO_HELP_ASSIGN_REF
-       mov      rax, gword ptr [rbp-0xB8]
+       mov      rdi, gword ptr [rbp-0x138]
+       mov      rax, rdi
        jmp      G_M12455_IG95
-						;; size=225 bbWeight=2 PerfScore 77.50
+						;; size=238 bbWeight=2 PerfScore 79.50
 G_M12455_IG91:
+       mov      rax, gword ptr [rbp-0x118]
        mov      rdi, r12
-       mov      gword ptr [rbp-0x98], rax
+       mov      gword ptr [rbp-0x118], rax
        mov      rsi, rax
        mov      rcx, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1[System.__Canon]:AddRange(System.Collections.Generic.IEnumerable`1[System.__Canon]):this
        call     [rcx]System.Collections.Generic.List`1[System.__Canon]:AddRange(System.Collections.Generic.IEnumerable`1[System.__Canon]):this
-       mov      rax, gword ptr [rbp-0x98]
+       mov      rax, gword ptr [rbp-0x118]
        inc      dword ptr [rax+0x14]
        mov      edx, dword ptr [rax+0x10]
        xor      edi, edi
        mov      dword ptr [rax+0x10], edi
        test     edx, edx
        jle      G_M12455_IG93
-       mov      gword ptr [rbp-0x98], rax
+       mov      gword ptr [rbp-0x118], rax
        mov      rdi, gword ptr [rax+0x08]
        xor      esi, esi
        mov      rcx, 0xD1FFAB1E      ; code for System.Array:Clear(System.Array,int,int)
        call     [rcx]System.Array:Clear(System.Array,int,int)
-						;; size=76 bbWeight=2 PerfScore 39.50
+						;; size=83 bbWeight=2 PerfScore 41.50
 G_M12455_IG92:
        mov      rdi, 0xD1FFAB1E      ; System.Text.StringBuilder
        call     CORINFO_HELP_NEWSFAST
-       mov      gword ptr [rbp-0xB0], rax
+       mov      gword ptr [rbp-0x130], rax
        mov      dword ptr [rax+0x20], 0xD1FFAB1E
        mov      rdi, 0xD1FFAB1E      ; ushort[]
        mov      esi, 16
        call     CORINFO_HELP_NEWARR_1_VC
-       mov      rcx, gword ptr [rbp-0xB0]
+       mov      rcx, gword ptr [rbp-0x130]
        lea      rdi, bword ptr [rcx+0x08]
        mov      rsi, rax
        call     CORINFO_HELP_ASSIGN_REF
-       mov      rax, gword ptr [rbp-0x98]
+       mov      rax, gword ptr [rbp-0x118]
        inc      dword ptr [rax+0x14]
        mov      rdi, gword ptr [rax+0x08]
        mov      esi, dword ptr [rax+0x10]
        cmp      dword ptr [rdi+0x08], esi
        jbe      SHORT G_M12455_IG94
        lea      ecx, [rsi+0x01]
-       mov      gword ptr [rbp-0x98], rax
+       mov      gword ptr [rbp-0x118], rax
        mov      dword ptr [rax+0x10], ecx
        lea      rdi, bword ptr [rdi+8*rsi+0x10]
-       mov      rsi, gword ptr [rbp-0xB0]
+       mov      rsi, gword ptr [rbp-0x130]
        call     CORINFO_HELP_ASSIGN_REF
-       mov      rax, gword ptr [rbp-0x98]
+       mov      rax, gword ptr [rbp-0x118]
        jmp      SHORT G_M12455_IG95
 						;; size=129 bbWeight=2 PerfScore 56.00
 G_M12455_IG93:
-       mov      gword ptr [rbp-0x98], rax
+       mov      gword ptr [rbp-0x118], rax
        jmp      G_M12455_IG92
 						;; size=12 bbWeight=1 PerfScore 3.00
 G_M12455_IG94:
-       mov      gword ptr [rbp-0x98], rax
+       mov      gword ptr [rbp-0x118], rax
        mov      rdi, rax
-       mov      rsi, gword ptr [rbp-0xB0]
+       mov      rsi, gword ptr [rbp-0x130]
        mov      rcx, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
        call     [rcx]System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
-       mov      rax, gword ptr [rbp-0x98]
+       mov      rax, gword ptr [rbp-0x118]
 						;; size=36 bbWeight=2 PerfScore 13.00
 G_M12455_IG95:
-       mov      rdi, qword ptr [rbp-0x70]
+       mov      rdi, qword ptr [rbp-0xF0]
        inc      edi
        cmp      edi, r13d
-       mov      qword ptr [rbp-0x70], rdi
-       jl       G_M12455_IG78
-						;; size=19 bbWeight=4 PerfScore 14.00
+       mov      qword ptr [rbp-0xF0], rdi
+       jl       G_M12455_IG79
+						;; size=25 bbWeight=4 PerfScore 14.00
 G_M12455_IG96:
        mov      edx, dword ptr [r15+0x10]
        cmp      edx, 1
        jne      SHORT G_M12455_IG103
        jmp      SHORT G_M12455_IG101
 						;; size=11 bbWeight=0.50 PerfScore 2.62
 G_M12455_IG97:
        xor      ebx, ebx
 						;; size=2 bbWeight=0.50 PerfScore 0.12
 G_M12455_IG98:
        movzx    rax, bl
        cmp      qword ptr [rbp-0x30], 0xD1FFAB1E
        je       SHORT G_M12455_IG99
        call     CORINFO_HELP_FAIL_FAST
 						;; size=18 bbWeight=0.50 PerfScore 2.12
 G_M12455_IG99:
        nop      
 						;; size=1 bbWeight=0.50 PerfScore 0.12
 G_M12455_IG100:
-       add      rsp, 216
+       add      rsp, 344
        pop      rbx
        pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
 						;; size=18 bbWeight=0.50 PerfScore 2.12
 G_M12455_IG101:
        mov      rdi, gword ptr [r15+0x08]
        mov      rsi, rdi
        cmp      dword ptr [rsi+0x08], 0
        jbe      G_M12455_IG122
        mov      rsi, gword ptr [rsi+0x10]
        mov      eax, dword ptr [rsi+0x1C]
        add      eax, dword ptr [rsi+0x18]
        jne      SHORT G_M12455_IG103
        inc      dword ptr [r15+0x14]
        xor      esi, esi
        mov      dword ptr [r15+0x10], esi
 						;; size=39 bbWeight=0.50 PerfScore 9.25
 G_M12455_IG102:
        mov      rax, 0xD1FFAB1E      ; code for System.Array:Clear(System.Array,int,int)
        call     [rax]System.Array:Clear(System.Array,int,int)
        mov      rdi, r15
        mov      rsi, r12
        mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1[System.__Canon]:AddRange(System.Collections.Generic.IEnumerable`1[System.__Canon]):this
        call     [rax]System.Collections.Generic.List`1[System.__Canon]:AddRange(System.Collections.Generic.IEnumerable`1[System.__Canon]):this
        jmp      G_M12455_IG119
 						;; size=35 bbWeight=0.50 PerfScore 4.50
 G_M12455_IG103:
        mov      ebx, edx
        mov      r14d, 1
        cmp      dword ptr [r12+0x10], 1
        jle      G_M12455_IG115
 						;; size=20 bbWeight=0.50 PerfScore 2.25
 G_M12455_IG104:
        cmp      r14d, dword ptr [r12+0x10]
-       jae      G_M12455_IG128
+       jae      G_M12455_IG127
        mov      rdi, gword ptr [r12+0x08]
        cmp      r14d, dword ptr [rdi+0x08]
        jae      G_M12455_IG122
        mov      r13, gword ptr [rdi+8*r14+0x10]
        xor      eax, eax
-       mov      qword ptr [rbp-0x78], rax
+       mov      qword ptr [rbp-0xF8], rax
        test     ebx, ebx
        jle      G_M12455_IG114
-						;; size=45 bbWeight=4 PerfScore 58.00
+						;; size=48 bbWeight=4 PerfScore 58.00
 G_M12455_IG105:
        mov      rdi, 0xD1FFAB1E      ; System.Text.StringBuilder
        call     CORINFO_HELP_NEWSFAST
-       mov      gword ptr [rbp-0xC8], rax
+       mov      gword ptr [rbp-0x148], rax
        mov      dword ptr [rax+0x20], 0xD1FFAB1E
        mov      rdi, 0xD1FFAB1E      ; ushort[]
        mov      esi, 16
        call     CORINFO_HELP_NEWARR_1_VC
-       mov      rcx, gword ptr [rbp-0xC8]
+       mov      rcx, gword ptr [rbp-0x148]
        lea      rdi, bword ptr [rcx+0x08]
        mov      rsi, rax
        call     CORINFO_HELP_ASSIGN_REF
-       mov      rax, qword ptr [rbp-0x78]
+       mov      rax, qword ptr [rbp-0xF8]
        cmp      eax, dword ptr [r15+0x10]
-       jae      G_M12455_IG128
+       jae      G_M12455_IG127
        mov      rcx, gword ptr [r15+0x08]
        cmp      eax, dword ptr [rcx+0x08]
        jae      G_M12455_IG122
-       mov      qword ptr [rbp-0x78], rax
+       mov      qword ptr [rbp-0xF8], rax
        mov      rsi, gword ptr [rcx+8*rax+0x10]
        test     rsi, rsi
        je       SHORT G_M12455_IG107
-						;; size=109 bbWeight=16 PerfScore 364.00
+						;; size=115 bbWeight=16 PerfScore 364.00
 G_M12455_IG106:
        mov      ecx, dword ptr [rsi+0x1C]
        add      ecx, dword ptr [rsi+0x18]
        je       SHORT G_M12455_IG107
-       mov      rdi, gword ptr [rbp-0xC8]
+       mov      rdi, gword ptr [rbp-0x148]
        xor      edx, edx
        mov      r8, 0xD1FFAB1E      ; code for System.Text.StringBuilder:AppendCore(System.Text.StringBuilder,int,int):System.Text.StringBuilder:this
        call     [r8]System.Text.StringBuilder:AppendCore(System.Text.StringBuilder,int,int):System.Text.StringBuilder:this
        jmp      SHORT G_M12455_IG108
 						;; size=32 bbWeight=8 PerfScore 100.00
 G_M12455_IG107:
-       mov      rcx, gword ptr [rbp-0xC8]
+       mov      rcx, gword ptr [rbp-0x148]
        mov      r8, rcx
        mov      rax, r8
 						;; size=13 bbWeight=8 PerfScore 12.00
 G_M12455_IG108:
        cmp      byte  ptr [rax], al
        test     r13, r13
        je       SHORT G_M12455_IG110
 						;; size=7 bbWeight=16 PerfScore 68.00
 G_M12455_IG109:
        mov      ecx, dword ptr [r13+0x1C]
        add      ecx, dword ptr [r13+0x18]
        je       SHORT G_M12455_IG110
-       mov      gword ptr [rbp-0xE0], rax
+       mov      gword ptr [rbp-0x160], rax
        mov      rdi, rax
        mov      rsi, r13
        xor      edx, edx
        mov      r8, 0xD1FFAB1E      ; code for System.Text.StringBuilder:AppendCore(System.Text.StringBuilder,int,int):System.Text.StringBuilder:this
        call     [r8]System.Text.StringBuilder:AppendCore(System.Text.StringBuilder,int,int):System.Text.StringBuilder:this
-       mov      rax, gword ptr [rbp-0xE0]
+       mov      rax, gword ptr [rbp-0x160]
 						;; size=45 bbWeight=8 PerfScore 96.00
 G_M12455_IG110:
        inc      dword ptr [r15+0x14]
        mov      rdi, gword ptr [r15+0x08]
        mov      esi, dword ptr [r15+0x10]
        cmp      dword ptr [rdi+0x08], esi
        jbe      SHORT G_M12455_IG112
 						;; size=17 bbWeight=16 PerfScore 176.00
 G_M12455_IG111:
        lea      ecx, [rsi+0x01]
        mov      dword ptr [r15+0x10], ecx
        mov      esi, esi
        lea      rdi, bword ptr [rdi+8*rsi+0x10]
        mov      rsi, rax
        call     CORINFO_HELP_ASSIGN_REF
        jmp      SHORT G_M12455_IG113
 						;; size=24 bbWeight=8 PerfScore 48.00
 G_M12455_IG112:
        mov      rdi, r15
        mov      rsi, rax
        mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
        call     [rax]System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
 						;; size=18 bbWeight=8 PerfScore 30.00
 G_M12455_IG113:
-       mov      rcx, qword ptr [rbp-0x78]
+       mov      rcx, qword ptr [rbp-0xF8]
        inc      ecx
        cmp      ecx, ebx
-       mov      qword ptr [rbp-0x78], rcx
+       mov      qword ptr [rbp-0xF8], rcx
        jl       G_M12455_IG105
-						;; size=18 bbWeight=16 PerfScore 56.00
+						;; size=24 bbWeight=16 PerfScore 56.00
 G_M12455_IG114:
        inc      r14d
        cmp      r14d, dword ptr [r12+0x10]
        jl       G_M12455_IG104
 						;; size=14 bbWeight=4 PerfScore 17.00
 G_M12455_IG115:
        xor      r14d, r14d
        test     ebx, ebx
        jle      SHORT G_M12455_IG119
 						;; size=7 bbWeight=0.50 PerfScore 0.75
 G_M12455_IG116:
        cmp      r14d, dword ptr [r15+0x10]
-       jae      G_M12455_IG128
+       jae      G_M12455_IG127
        mov      rcx, gword ptr [r15+0x08]
        cmp      r14d, dword ptr [rcx+0x08]
        jae      SHORT G_M12455_IG122
        mov      rdi, gword ptr [rcx+8*r14+0x10]
        cmp      dword ptr [r12+0x10], 0
-       je       G_M12455_IG128
+       je       G_M12455_IG127
        mov      rcx, gword ptr [r12+0x08]
        cmp      dword ptr [rcx+0x08], 0
        jbe      SHORT G_M12455_IG122
        mov      rsi, gword ptr [rcx+0x10]
        cmp      byte  ptr [rdi], dil
        test     rsi, rsi
        je       SHORT G_M12455_IG118
 						;; size=60 bbWeight=4 PerfScore 113.00
 G_M12455_IG117:
        mov      ecx, dword ptr [rsi+0x1C]
        add      ecx, dword ptr [rsi+0x18]
        je       SHORT G_M12455_IG118
        xor      edx, edx
        mov      rax, 0xD1FFAB1E      ; code for System.Text.StringBuilder:AppendCore(System.Text.StringBuilder,int,int):System.Text.StringBuilder:this
        call     [rax]System.Text.StringBuilder:AppendCore(System.Text.StringBuilder,int,int):System.Text.StringBuilder:this
 						;; size=22 bbWeight=2 PerfScore 19.00
 G_M12455_IG118:
        inc      r14d
        cmp      r14d, ebx
        jl       SHORT G_M12455_IG116
 						;; size=8 bbWeight=4 PerfScore 6.00
 G_M12455_IG119:
        xor      eax, eax
        cmp      qword ptr [rbp-0x30], 0xD1FFAB1E
        je       SHORT G_M12455_IG120
        call     CORINFO_HELP_FAIL_FAST
 						;; size=17 bbWeight=0.50 PerfScore 2.12
 G_M12455_IG120:
        nop      
 						;; size=1 bbWeight=0.50 PerfScore 0.12
 G_M12455_IG121:
-       add      rsp, 216
+       add      rsp, 344
        pop      rbx
        pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
 						;; size=18 bbWeight=0.50 PerfScore 2.12
 G_M12455_IG122:
        call     CORINFO_HELP_RNGCHKFAIL
        int3     
 						;; size=6 bbWeight=0 PerfScore 0.00
 G_M12455_IG123:
        mov      rdi, 0xD1FFAB1E
        mov      esi, 69
        call     CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
        jmp      G_M12455_IG04
 						;; size=25 bbWeight=0 PerfScore 0.00
 G_M12455_IG124:
        mov      rax, 0xD1FFAB1E      ; code for System.MulticastDelegate:ThrowNullThisInDelegateToInstance()
        call     [rax]System.MulticastDelegate:ThrowNullThisInDelegateToInstance()
        int3     
 						;; size=13 bbWeight=0 PerfScore 0.00
 G_M12455_IG125:
        mov      rax, 0xD1FFAB1E      ; code for System.ThrowHelper:ThrowArgumentOutOfRangeException()
        call     [rax]System.ThrowHelper:ThrowArgumentOutOfRangeException()
        int3     
 						;; size=13 bbWeight=0 PerfScore 0.00
 G_M12455_IG126:
-       mov      rax, 0xD1FFAB1E      ; code for System.ThrowHelper:ThrowInvalidOperationException_InvalidOperation_EnumFailedVersion()
-       call     [rax]System.ThrowHelper:ThrowInvalidOperationException_InvalidOperation_EnumFailedVersion()
-       int3     
-						;; size=13 bbWeight=0 PerfScore 0.00
-G_M12455_IG127:
        mov      rax, 0xD1FFAB1E      ; code for System.ThrowHelper:ThrowInvalidOperationException_ConcurrentOperationsNotSupported()
        call     [rax]System.ThrowHelper:ThrowInvalidOperationException_ConcurrentOperationsNotSupported()
        int3     
 						;; size=13 bbWeight=0 PerfScore 0.00
-G_M12455_IG128:
+G_M12455_IG127:
        mov      rax, 0xD1FFAB1E      ; code for System.ThrowHelper:ThrowArgumentOutOfRange_IndexMustBeLessException()
        call     [rax]System.ThrowHelper:ThrowArgumentOutOfRange_IndexMustBeLessException()
        int3     
 						;; size=13 bbWeight=0 PerfScore 0.00
 RWD00  	dd	G_M12455_IG17 - G_M12455_IG02
        	dd	G_M12455_IG119 - G_M12455_IG02
-       	dd	G_M12455_IG35 - G_M12455_IG02
+       	dd	G_M12455_IG37 - G_M12455_IG02
        	dd	G_M12455_IG17 - G_M12455_IG02
        	dd	G_M12455_IG119 - G_M12455_IG02
-       	dd	G_M12455_IG35 - G_M12455_IG02
+       	dd	G_M12455_IG37 - G_M12455_IG02
        	dd	G_M12455_IG17 - G_M12455_IG02
        	dd	G_M12455_IG119 - G_M12455_IG02
-       	dd	G_M12455_IG35 - G_M12455_IG02
-       	dd	G_M12455_IG25 - G_M12455_IG02
+       	dd	G_M12455_IG37 - G_M12455_IG02
+       	dd	G_M12455_IG24 - G_M12455_IG02
        	dd	G_M12455_IG119 - G_M12455_IG02
-       	dd	G_M12455_IG63 - G_M12455_IG02
-       	dd	G_M12455_IG63 - G_M12455_IG02
-       	dd	G_M12455_IG63 - G_M12455_IG02
-       	dd	G_M12455_IG63 - G_M12455_IG02
-       	dd	G_M12455_IG63 - G_M12455_IG02
-       	dd	G_M12455_IG63 - G_M12455_IG02
-       	dd	G_M12455_IG63 - G_M12455_IG02
-       	dd	G_M12455_IG63 - G_M12455_IG02
+       	dd	G_M12455_IG64 - G_M12455_IG02
+       	dd	G_M12455_IG64 - G_M12455_IG02
+       	dd	G_M12455_IG64 - G_M12455_IG02
+       	dd	G_M12455_IG64 - G_M12455_IG02
+       	dd	G_M12455_IG64 - G_M12455_IG02
+       	dd	G_M12455_IG64 - G_M12455_IG02
+       	dd	G_M12455_IG64 - G_M12455_IG02
+       	dd	G_M12455_IG64 - G_M12455_IG02
        	dd	G_M12455_IG119 - G_M12455_IG02
-       	dd	G_M12455_IG63 - G_M12455_IG02
-       	dd	G_M12455_IG76 - G_M12455_IG02
-       	dd	G_M12455_IG54 - G_M12455_IG02
-       	dd	G_M12455_IG66 - G_M12455_IG02
-       	dd	G_M12455_IG66 - G_M12455_IG02
+       	dd	G_M12455_IG64 - G_M12455_IG02
+       	dd	G_M12455_IG77 - G_M12455_IG02
+       	dd	G_M12455_IG55 - G_M12455_IG02
+       	dd	G_M12455_IG67 - G_M12455_IG02
+       	dd	G_M12455_IG67 - G_M12455_IG02
        	dd	G_M12455_IG08 - G_M12455_IG02
        	dd	G_M12455_IG119 - G_M12455_IG02
-       	dd	G_M12455_IG63 - G_M12455_IG02
-       	dd	G_M12455_IG63 - G_M12455_IG02
+       	dd	G_M12455_IG64 - G_M12455_IG02
+       	dd	G_M12455_IG64 - G_M12455_IG02
        	dd	G_M12455_IG08 - G_M12455_IG02
        	dd	G_M12455_IG119 - G_M12455_IG02
        	dd	G_M12455_IG119 - G_M12455_IG02
        	dd	G_M12455_IG119 - G_M12455_IG02
        	dd	G_M12455_IG119 - G_M12455_IG02
        	dd	G_M12455_IG119 - G_M12455_IG02
        	dd	G_M12455_IG119 - G_M12455_IG02
        	dd	G_M12455_IG119 - G_M12455_IG02
        	dd	G_M12455_IG119 - G_M12455_IG02
-       	dd	G_M12455_IG63 - G_M12455_IG02
-       	dd	G_M12455_IG63 - G_M12455_IG02
+       	dd	G_M12455_IG64 - G_M12455_IG02
+       	dd	G_M12455_IG64 - G_M12455_IG02
        	dd	G_M12455_IG17 - G_M12455_IG02
        	dd	G_M12455_IG119 - G_M12455_IG02
-       	dd	G_M12455_IG35 - G_M12455_IG02
-       	dd	G_M12455_IG63 - G_M12455_IG02
+       	dd	G_M12455_IG37 - G_M12455_IG02
+       	dd	G_M12455_IG64 - G_M12455_IG02
 
 
-; Total bytes of code 3572, prolog size 35, PerfScore 4265.59, instruction count 836, allocated bytes for code 3572 (MethodHash=cb55cf58) for method System.Text.RegularExpressions.RegexPrefixAnalyzer:<FindPrefixes>g__FindPrefixesCore|0_1(System.Text.RegularExpressions.RegexNode,System.Collections.Generic.List`1[System.Text.StringBuilder],ubyte):ubyte (FullOpts)
+; Total bytes of code 3878, prolog size 69, PerfScore 3839.93, instruction count 861, allocated bytes for code 3878 (MethodHash=cb55cf58) for method System.Text.RegularExpressions.RegexPrefixAnalyzer:<FindPrefixes>g__FindPrefixesCore|0_1(System.Text.RegularExpressions.RegexNode,System.Collections.Generic.List`1[System.Text.StringBuilder],ubyte):ubyte (FullOpts)
138 (4.24 % of base) - Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder:AdjustCallArgumentsForParams(Microsoft.CSharp.RuntimeBinder.Semantics.CType,Microsoft.CSharp.RuntimeBinder.Semantics.CType,Microsoft.CSharp.RuntimeBinder.Semantics.MethodOrPropertySymbol,Microsoft.CSharp.RuntimeBinder.Semantics.TypeArray,Microsoft.CSharp.RuntimeBinder.Semantics.Expr,byref):this
 ; Assembly listing for method Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder:AdjustCallArgumentsForParams(Microsoft.CSharp.RuntimeBinder.Semantics.CType,Microsoft.CSharp.RuntimeBinder.Semantics.CType,Microsoft.CSharp.RuntimeBinder.Semantics.MethodOrPropertySymbol,Microsoft.CSharp.RuntimeBinder.Semantics.TypeArray,Microsoft.CSharp.RuntimeBinder.Semantics.Expr,byref):this (FullOpts)
 ; Emitting BLENDED_CODE for X64 with AVX - Unix
 ; FullOpts code
 ; optimized code
 ; rbp based frame
-; fully interruptible
+; partially interruptible
 ; No PGO data
-; 0 inlinees with PGO data; 127 single block inlinees; 15 inlinees without PGO data
+; 0 inlinees with PGO data; 127 single block inlinees; 13 inlinees without PGO data
 ; Final local variable assignments
 ;
-;  V00 this         [V00,T27] (  7, 12   )   byref  ->  r14         this single-def
-;  V01 arg1         [V01,T73] (  3,  3   )     ref  ->  rsi         class-hnd single-def <Microsoft.CSharp.RuntimeBinder.Semantics.CType>
-;  V02 arg2         [V02,T08] ( 12, 48   )     ref  ->  rbx         class-hnd single-def <Microsoft.CSharp.RuntimeBinder.Semantics.CType>
-;  V03 arg3         [V03,T20] ( 13, 16   )     ref  ->  r15         class-hnd single-def <Microsoft.CSharp.RuntimeBinder.Semantics.MethodOrPropertySymbol>
-;  V04 arg4         [V04,T41] (  6,  8.50)     ref  ->  r13         class-hnd single-def <Microsoft.CSharp.RuntimeBinder.Semantics.TypeArray>
-;  V05 arg5         [V05,T44] (  7,  6   )     ref  ->  r12         class-hnd single-def <Microsoft.CSharp.RuntimeBinder.Semantics.Expr>
-;  V06 arg6         [V06,T61] (  5,  6   )   byref  ->  [rbp+0x10]  single-def
+;  V00 this         [V00,T23] (  7, 12   )   byref  ->  r14         this single-def
+;  V01 arg1         [V01,T69] (  3,  3   )     ref  ->  rsi         class-hnd single-def <Microsoft.CSharp.RuntimeBinder.Semantics.CType>
+;  V02 arg2         [V02,T06] ( 12, 34   )     ref  ->  rbx         class-hnd single-def <Microsoft.CSharp.RuntimeBinder.Semantics.CType>
+;  V03 arg3         [V03,T16] ( 13, 16   )     ref  ->  r15         class-hnd single-def <Microsoft.CSharp.RuntimeBinder.Semantics.MethodOrPropertySymbol>
+;  V04 arg4         [V04,T37] (  6,  8.50)     ref  ->  r13         class-hnd single-def <Microsoft.CSharp.RuntimeBinder.Semantics.TypeArray>
+;  V05 arg5         [V05,T40] (  7,  6   )     ref  ->  r12         class-hnd single-def <Microsoft.CSharp.RuntimeBinder.Semantics.Expr>
+;  V06 arg6         [V06,T57] (  5,  6   )   byref  ->  [rbp+0x10]  single-def
 ;  V07 loc0         [V07    ] (  4,  5   )     ref  ->  [rbp-0x30]  do-not-enreg[X] must-init addr-exposed ld-addr-op class-hnd <Microsoft.CSharp.RuntimeBinder.Semantics.Expr>
-;  V08 loc1         [V08,T101] (  2,  3   )     ref  ->  [rbp-0x60]  class-hnd spill-single-def <Microsoft.CSharp.RuntimeBinder.Semantics.MethodOrPropertySymbol>
-;  V09 loc2         [V09,T21] ( 10, 17.50)     int  ->  [rbp-0x34] 
-;  V10 loc3         [V10,T74] (  3, 19   )     ref  ->  [rbp-0x68]  class-hnd exact spill-single-def <Microsoft.CSharp.RuntimeBinder.Semantics.TypeArray>
-;* V11 loc4         [V11,T114] (  0,  0   )     int  ->  zero-ref   
-;  V12 loc5         [V12,T71] (  4,  5.50)     int  ->  [rbp-0x38]  spill-single-def
-;  V13 loc6         [V13,T94] (  3,  3.50)   ubyte  ->  [rbp-0x3C] 
-;  V14 loc7         [V14,T14] ( 12, 26.50)     ref  ->  [rbp-0x70]  class-hnd exact spill-single-def <Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionIterator>
-;  V15 loc8         [V15,T95] (  6,  2.75)     ref  ->  rbx         class-hnd single-def <Microsoft.CSharp.RuntimeBinder.Semantics.CType>
-;* V16 loc9         [V16,T115] (  0,  0   )     ref  ->  zero-ref    class-hnd exact <Microsoft.CSharp.RuntimeBinder.Semantics.ArrayType>
-;  V17 loc10        [V17,T43] (  5,  8.50)     ref  ->  r15         class-hnd single-def <Microsoft.CSharp.RuntimeBinder.Semantics.CType>
-;  V18 loc11        [V18,T102] (  5,  2.50)     ref  ->  r13         class-hnd exact single-def <Microsoft.CSharp.RuntimeBinder.Semantics.ExprArrayInit>
-;  V19 loc12        [V19,T28] (  7, 14   )     ref  ->  [rbp-0x78]  class-hnd spill-single-def <Microsoft.CSharp.RuntimeBinder.Semantics.Expr>
-;  V20 loc13        [V20,T13] ( 11, 28   )     ref  ->  [rbp-0x80]  class-hnd spill-single-def <Microsoft.CSharp.RuntimeBinder.Semantics.Expr>
-;  V21 loc14        [V21,T45] (  4,  8   )     ref  ->  rdi         class-hnd <Microsoft.CSharp.RuntimeBinder.Semantics.Expr>
-;* V22 loc15        [V22,T103] (  0,  0   )     ref  ->  zero-ref    class-hnd exact <Microsoft.CSharp.RuntimeBinder.Semantics.ExprNamedArgumentSpecification>
-;  V23 loc16        [V23,T15] (  6, 52   )     int  ->  [rbp-0x40] 
+;  V08 loc1         [V08,T96] (  2,  3   )     ref  ->  [rbp-0x80]  class-hnd spill-single-def <Microsoft.CSharp.RuntimeBinder.Semantics.MethodOrPropertySymbol>
+;  V09 loc2         [V09,T17] ( 10, 17.50)     int  ->  [rbp-0x34] 
+;  V10 loc3         [V10,T70] (  3,  5   )     ref  ->  [rbp-0x88]  class-hnd exact spill-single-def <Microsoft.CSharp.RuntimeBinder.Semantics.TypeArray>
+;* V11 loc4         [V11,T109] (  0,  0   )     int  ->  zero-ref   
+;  V12 loc5         [V12,T67] (  4,  5.50)     int  ->  [rbp-0x38]  spill-single-def
+;  V13 loc6         [V13,T89] (  3,  3.50)   ubyte  ->  [rbp-0x3C] 
+;  V14 loc7         [V14,T10] ( 12, 26.50)     ref  ->  [rbp-0x90]  class-hnd exact spill-single-def <Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionIterator>
+;  V15 loc8         [V15,T90] (  6,  2.75)     ref  ->  rbx         class-hnd single-def <Microsoft.CSharp.RuntimeBinder.Semantics.CType>
+;* V16 loc9         [V16,T110] (  0,  0   )     ref  ->  zero-ref    class-hnd exact <Microsoft.CSharp.RuntimeBinder.Semantics.ArrayType>
+;  V17 loc10        [V17,T39] (  5,  8.50)     ref  ->  r15         class-hnd single-def <Microsoft.CSharp.RuntimeBinder.Semantics.CType>
+;  V18 loc11        [V18,T97] (  5,  2.50)     ref  ->  r13         class-hnd exact single-def <Microsoft.CSharp.RuntimeBinder.Semantics.ExprArrayInit>
+;  V19 loc12        [V19,T24] (  7, 14   )     ref  ->  [rbp-0x98]  class-hnd spill-single-def <Microsoft.CSharp.RuntimeBinder.Semantics.Expr>
+;  V20 loc13        [V20,T05] ( 11, 36   )     ref  ->  [rbp-0xA0]  class-hnd spill-single-def <Microsoft.CSharp.RuntimeBinder.Semantics.Expr>
+;  V21 loc14        [V21,T41] (  4,  8   )     ref  ->  rdi         class-hnd <Microsoft.CSharp.RuntimeBinder.Semantics.Expr>
+;* V22 loc15        [V22,T98] (  0,  0   )     ref  ->  zero-ref    class-hnd exact <Microsoft.CSharp.RuntimeBinder.Semantics.ExprNamedArgumentSpecification>
+;  V23 loc16        [V23,T04] (  6, 40   )     int  ->  [rbp-0x40] 
 ;* V24 loc17        [V24    ] (  0,  0   )     ref  ->  zero-ref    class-hnd <Microsoft.CSharp.RuntimeBinder.Semantics.CType>
-;* V25 loc18        [V25    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op <System.Collections.Generic.List`1+Enumerator[Microsoft.CSharp.RuntimeBinder.Syntax.Name]>
-;* V26 loc19        [V26    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact <Microsoft.CSharp.RuntimeBinder.Syntax.Name>
-;  V27 loc20        [V27,T77] (  2,  4   )     ref  ->  [rbp-0x88]  class-hnd exact spill-single-def <Microsoft.CSharp.RuntimeBinder.Semantics.ArrayType>
+;  V25 loc18        [V25    ] (  7, 42   )  struct (24) [rbp-0x58]  do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Collections.Generic.List`1+Enumerator[Microsoft.CSharp.RuntimeBinder.Syntax.Name]>
+;  V26 loc19        [V26,T09] (  2, 32   )     ref  ->  rdi         class-hnd exact <Microsoft.CSharp.RuntimeBinder.Syntax.Name>
+;  V27 loc20        [V27,T73] (  2,  4   )     ref  ->  [rbp-0xA8]  class-hnd exact spill-single-def <Microsoft.CSharp.RuntimeBinder.Semantics.ArrayType>
 ;* V28 loc21        [V28    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact <Microsoft.CSharp.RuntimeBinder.Semantics.ExprArrayInit>
 ;* V29 loc22        [V29    ] (  0,  0   )     ref  ->  zero-ref    class-hnd <Microsoft.CSharp.RuntimeBinder.Semantics.CType>
-;  V30 loc23        [V30    ] (  3,  3   )     ref  ->  [rbp-0x48]  do-not-enreg[X] must-init addr-exposed ld-addr-op class-hnd <Microsoft.CSharp.RuntimeBinder.Semantics.Expr>
-;  V31 loc24        [V31    ] (  2,  2.50)     ref  ->  [rbp-0x50]  do-not-enreg[X] must-init addr-exposed ld-addr-op class-hnd <Microsoft.CSharp.RuntimeBinder.Semantics.Expr>
-;  V32 loc25        [V32,T72] (  4,  5   )     int  ->  rbx        
-;  V33 loc26        [V33,T16] ( 11, 21   )     ref  ->  r12         class-hnd <Microsoft.CSharp.RuntimeBinder.Semantics.Expr>
-;* V34 loc27        [V34,T93] (  0,  0   )     ref  ->  zero-ref    class-hnd exact <Microsoft.CSharp.RuntimeBinder.Semantics.ExprNamedArgumentSpecification>
+;  V30 loc23        [V30    ] (  3,  3   )     ref  ->  [rbp-0x60]  do-not-enreg[X] must-init addr-exposed ld-addr-op class-hnd <Microsoft.CSharp.RuntimeBinder.Semantics.Expr>
+;  V31 loc24        [V31    ] (  2,  2.50)     ref  ->  [rbp-0x68]  do-not-enreg[X] must-init addr-exposed ld-addr-op class-hnd <Microsoft.CSharp.RuntimeBinder.Semantics.Expr>
+;  V32 loc25        [V32,T68] (  4,  5   )     int  ->  rbx        
+;  V33 loc26        [V33,T11] ( 11, 21   )     ref  ->  r12         class-hnd <Microsoft.CSharp.RuntimeBinder.Semantics.Expr>
+;* V34 loc27        [V34,T88] (  0,  0   )     ref  ->  zero-ref    class-hnd exact <Microsoft.CSharp.RuntimeBinder.Semantics.ExprNamedArgumentSpecification>
 ;# V35 OutArgs      [V35    ] (  1,  1   )  struct ( 0) [rsp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-;  V36 tmp1         [V36,T63] (  3,  6   )     ref  ->  [rbp-0x90]  class-hnd exact spill-single-def "NewObj constructor temp" <Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionIterator>
-;  V37 tmp2         [V37,T29] (  3, 10   )     ref  ->  rdx         "ISINST eval op1"
-;* V38 tmp3         [V38,T60] (  0,  0   )     ref  ->  zero-ref    class-hnd "spilling qmarkNull" <Microsoft.CSharp.RuntimeBinder.Semantics.ParameterModifierType>
-;* V39 tmp4         [V39,T113] (  0,  0   )     ref  ->  zero-ref    class-hnd exact single-def "impAppendStmt" <Microsoft.CSharp.RuntimeBinder.Semantics.TypeArray>
+;  V36 tmp1         [V36,T59] (  3,  6   )     ref  ->  [rbp-0xB0]  class-hnd exact spill-single-def "NewObj constructor temp" <Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionIterator>
+;  V37 tmp2         [V37,T25] (  3, 10   )     ref  ->  rdx         "ISINST eval op1"
+;* V38 tmp3         [V38,T56] (  0,  0   )     ref  ->  zero-ref    class-hnd "spilling qmarkNull" <Microsoft.CSharp.RuntimeBinder.Semantics.ParameterModifierType>
+;* V39 tmp4         [V39,T108] (  0,  0   )     ref  ->  zero-ref    class-hnd exact single-def "impAppendStmt" <Microsoft.CSharp.RuntimeBinder.Semantics.TypeArray>
 ;* V40 tmp5         [V40    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "spilling qmarkNull" <Microsoft.CSharp.RuntimeBinder.Semantics.ArrayType>
 ;* V41 tmp6         [V41    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "spilling qmarkNull" <Microsoft.CSharp.RuntimeBinder.Semantics.ExprNamedArgumentSpecification>
 ;* V42 tmp7         [V42    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "spilling qmarkNull" <Microsoft.CSharp.RuntimeBinder.Semantics.ExprNamedArgumentSpecification>
-;* V43 tmp8         [V43,T89] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "impAppendStmt" <Microsoft.CSharp.RuntimeBinder.Semantics.TypeArray>
-;  V44 tmp9         [V44,T78] (  2,  4   )     ref  ->  rdi         class-hnd exact single-def "Inlining Arg" <Microsoft.CSharp.RuntimeBinder.Semantics.TypeArray>
-;  V45 tmp10        [V45,T51] (  2,  8   )     ref  ->  rdi         class-hnd exact "Inlining Arg" <Microsoft.CSharp.RuntimeBinder.Semantics.TypeArray>
-;  V46 tmp11        [V46,T52] (  2,  8   )     ref  ->   r9         class-hnd "Inlining Arg" <System.Collections.Generic.List`1[Microsoft.CSharp.RuntimeBinder.Syntax.Name]>
+;* V43 tmp8         [V43,T84] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "impAppendStmt" <Microsoft.CSharp.RuntimeBinder.Semantics.TypeArray>
+;  V44 tmp9         [V44,T74] (  2,  4   )     ref  ->  rdi         class-hnd exact single-def "Inlining Arg" <Microsoft.CSharp.RuntimeBinder.Semantics.TypeArray>
+;  V45 tmp10        [V45,T47] (  2,  8   )     ref  ->  rdi         class-hnd exact "Inlining Arg" <Microsoft.CSharp.RuntimeBinder.Semantics.TypeArray>
+;  V46 tmp11        [V46,T48] (  2,  8   )     ref  ->  rsi         class-hnd "Inlining Arg" <System.Collections.Generic.List`1[Microsoft.CSharp.RuntimeBinder.Syntax.Name]>
 ;* V47 tmp12        [V47    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[Microsoft.CSharp.RuntimeBinder.Syntax.Name]>
-;* V48 tmp13        [V48,T12] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;* V49 tmp14        [V49    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline stloc first use temp" <System.Collections.Generic.List`1[Microsoft.CSharp.RuntimeBinder.Syntax.Name]>
-;  V50 tmp15        [V50,T31] (  3, 40   )     ref  ->  [rbp-0x98]  class-hnd spill-single-def "Inlining Arg" <Microsoft.CSharp.RuntimeBinder.Semantics.CType>
-;  V51 tmp16        [V51,T22] (  4, 17   )     ref  ->  r11         class-hnd "spilling qmarkNull" <Microsoft.CSharp.RuntimeBinder.Semantics.AggregateType>
+;  V48 tmp13        [V48,T27] (  3, 12   )     ref  ->  [rbp-0xB8]  class-hnd spill-single-def "Inlining Arg" <Microsoft.CSharp.RuntimeBinder.Semantics.CType>
+;  V49 tmp14        [V49,T18] (  4, 17   )     ref  ->  rdi         class-hnd "spilling qmarkNull" <Microsoft.CSharp.RuntimeBinder.Semantics.AggregateType>
+;* V50 tmp15        [V50    ] (  0,  0   )     ref  ->  zero-ref   
+;* V51 tmp16        [V51    ] (  0,  0   )     ref  ->  zero-ref   
 ;* V52 tmp17        [V52    ] (  0,  0   )     ref  ->  zero-ref   
-;* V53 tmp18        [V53    ] (  0,  0   )     ref  ->  zero-ref   
-;* V54 tmp19        [V54    ] (  0,  0   )     ref  ->  zero-ref   
-;  V55 tmp20        [V55,T64] (  3,  6   )     ref  ->  [rbp-0xA0] 
-;  V56 tmp21        [V56,T42] (  5, 10   )     ref  ->  [rbp-0xA8]  class-hnd "Inline return value spill temp" <Microsoft.CSharp.RuntimeBinder.Semantics.CType>
-;  V57 tmp22        [V57,T17] (  5, 20   )     ref  ->  [rbp-0xB0]  class-hnd exact spill-single-def "NewObj constructor temp" <Microsoft.CSharp.RuntimeBinder.Semantics.SubstContext>
-;* V58 tmp23        [V58    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inline stloc first use temp" <Microsoft.CSharp.RuntimeBinder.Semantics.SubstContext>
-;  V59 tmp24        [V59,T32] (  3, 12   )     ref  ->  [rbp-0xB8]  class-hnd spill-single-def "Inlining Arg" <Microsoft.CSharp.RuntimeBinder.Semantics.Expr>
-;* V60 tmp25        [V60    ] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;  V61 tmp26        [V61,T53] (  2,  8   )     ref  ->  [rbp-0xC0]  class-hnd spill-single-def "Inlining Arg" <Microsoft.CSharp.RuntimeBinder.Semantics.CType>
-;  V62 tmp27        [V62,T09] (  9, 36   )     ref  ->  [rbp-0xC8]  class-hnd exact spill-single-def "NewObj constructor temp" <Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder+ImplicitConversion>
-;* V63 tmp28        [V63    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inline stloc first use temp" <Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder+ImplicitConversion>
-;* V64 tmp29        [V64    ] (  0,  0   )  struct (16) zero-ref    do-not-enreg[S] "Inlining Arg" <Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder>
-;  V65 tmp30        [V65,T54] (  2,  8   )     ref  ->  rdi         class-hnd exact "Inlining Arg" <Microsoft.CSharp.RuntimeBinder.Semantics.TypeArray>
-;* V66 tmp31        [V66,T90] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <Microsoft.CSharp.RuntimeBinder.Semantics.TypeArray>
-;  V67 tmp32        [V67,T38] (  3, 12   )     int  ->  rax         "Inlining Arg"
-;  V68 tmp33        [V68,T33] (  3, 12   )     ref  ->  [rbp-0xD0]  class-hnd spill-single-def "Inlining Arg" <Microsoft.CSharp.RuntimeBinder.Semantics.CType>
-;  V69 tmp34        [V69,T23] (  4, 17   )     ref  ->  rdi         class-hnd "spilling qmarkNull" <Microsoft.CSharp.RuntimeBinder.Semantics.AggregateType>
+;  V53 tmp18        [V53,T60] (  3,  6   )     ref  ->  [rbp-0xC0] 
+;  V54 tmp19        [V54,T38] (  5, 10   )     ref  ->  [rbp-0xC8]  class-hnd "Inline return value spill temp" <Microsoft.CSharp.RuntimeBinder.Semantics.CType>
+;  V55 tmp20        [V55,T12] (  5, 20   )     ref  ->  [rbp-0xD0]  class-hnd exact spill-single-def "NewObj constructor temp" <Microsoft.CSharp.RuntimeBinder.Semantics.SubstContext>
+;* V56 tmp21        [V56    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inline stloc first use temp" <Microsoft.CSharp.RuntimeBinder.Semantics.SubstContext>
+;  V57 tmp22        [V57,T28] (  3, 12   )     ref  ->  [rbp-0xD8]  class-hnd spill-single-def "Inlining Arg" <Microsoft.CSharp.RuntimeBinder.Semantics.Expr>
+;* V58 tmp23        [V58    ] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
+;  V59 tmp24        [V59,T49] (  2,  8   )     ref  ->  [rbp-0xE0]  class-hnd spill-single-def "Inlining Arg" <Microsoft.CSharp.RuntimeBinder.Semantics.CType>
+;  V60 tmp25        [V60,T07] (  9, 36   )     ref  ->  [rbp-0xE8]  class-hnd exact spill-single-def "NewObj constructor temp" <Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder+ImplicitConversion>
+;* V61 tmp26        [V61    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inline stloc first use temp" <Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder+ImplicitConversion>
+;* V62 tmp27        [V62    ] (  0,  0   )  struct (16) zero-ref    do-not-enreg[S] "Inlining Arg" <Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder>
+;  V63 tmp28        [V63,T50] (  2,  8   )     ref  ->  rdi         class-hnd exact "Inlining Arg" <Microsoft.CSharp.RuntimeBinder.Semantics.TypeArray>
+;* V64 tmp29        [V64,T85] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <Microsoft.CSharp.RuntimeBinder.Semantics.TypeArray>
+;  V65 tmp30        [V65,T34] (  3, 12   )     int  ->  rax         "Inlining Arg"
+;  V66 tmp31        [V66,T29] (  3, 12   )     ref  ->  [rbp-0xF0]  class-hnd spill-single-def "Inlining Arg" <Microsoft.CSharp.RuntimeBinder.Semantics.CType>
+;  V67 tmp32        [V67,T19] (  4, 17   )     ref  ->  rdi         class-hnd "spilling qmarkNull" <Microsoft.CSharp.RuntimeBinder.Semantics.AggregateType>
+;* V68 tmp33        [V68    ] (  0,  0   )     ref  ->  zero-ref   
+;* V69 tmp34        [V69    ] (  0,  0   )     ref  ->  zero-ref   
 ;* V70 tmp35        [V70    ] (  0,  0   )     ref  ->  zero-ref   
-;* V71 tmp36        [V71    ] (  0,  0   )     ref  ->  zero-ref   
-;* V72 tmp37        [V72    ] (  0,  0   )     ref  ->  zero-ref   
-;  V73 tmp38        [V73,T65] (  3,  6   )     ref  ->  [rbp-0xD8] 
-;  V74 tmp39        [V74,T62] (  4,  6   )     ref  ->  rsi         class-hnd "Inline return value spill temp" <Microsoft.CSharp.RuntimeBinder.Semantics.CType>
-;  V75 tmp40        [V75,T18] (  5, 20   )     ref  ->  [rbp-0xE0]  class-hnd exact spill-single-def "NewObj constructor temp" <Microsoft.CSharp.RuntimeBinder.Semantics.SubstContext>
-;* V76 tmp41        [V76    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inline stloc first use temp" <Microsoft.CSharp.RuntimeBinder.Semantics.SubstContext>
-;  V77 tmp42        [V77,T55] (  2,  8   )     ref  ->  [rbp-0xE8]  class-hnd exact spill-single-def "Inlining Arg" <int[]>
-;  V78 tmp43        [V78,T10] (  9, 36   )     ref  ->  [rbp-0xF0]  class-hnd exact spill-single-def "NewObj constructor temp" <Microsoft.CSharp.RuntimeBinder.Semantics.ExprArrayInit>
-;* V79 tmp44        [V79    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <Microsoft.CSharp.RuntimeBinder.Semantics.Expr>
-;* V80 tmp45        [V80    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inline stloc first use temp" <Microsoft.CSharp.RuntimeBinder.Semantics.ExprArrayInit>
-;* V81 tmp46        [V81    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <Microsoft.CSharp.RuntimeBinder.Semantics.CType>
-;  V82 tmp47        [V82,T25] (  4, 16   )     ref  ->  [rbp-0xF8]  class-hnd spill-single-def "Inlining Arg" <Microsoft.CSharp.RuntimeBinder.Semantics.Expr>
-;  V83 tmp48        [V83,T46] (  4,  8   )     ref  ->  [rbp-0x100]  class-hnd "Inline return value spill temp" <Microsoft.CSharp.RuntimeBinder.Semantics.Expr>
-;  V84 tmp49        [V84,T79] (  2,  4   )     ref  ->  [rbp-0x108]  ld-addr-op class-hnd spill-single-def "Inline ldloca(s) first use temp" <Microsoft.CSharp.RuntimeBinder.Semantics.Expr>
-;* V85 tmp50        [V85    ] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;  V86 tmp51        [V86,T56] (  2,  8   )     ref  ->  [rbp-0x110]  class-hnd spill-single-def "Inlining Arg" <Microsoft.CSharp.RuntimeBinder.Semantics.CType>
-;  V87 tmp52        [V87,T03] ( 10, 40   )     ref  ->  [rbp-0x118]  class-hnd exact spill-single-def "NewObj constructor temp" <Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder+ImplicitConversion>
-;* V88 tmp53        [V88    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inline stloc first use temp" <Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder+ImplicitConversion>
-;  V89 tmp54        [V89,T83] (  2,  4   )   ubyte  ->  rax         "Inline stloc first use temp"
-;* V90 tmp55        [V90    ] (  0,  0   )  struct (16) zero-ref    do-not-enreg[S] "Inlining Arg" <Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder>
-;* V91 tmp56        [V91    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline stloc first use temp" <Microsoft.CSharp.RuntimeBinder.Semantics.Expr>
-;* V92 tmp57        [V92    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <Microsoft.CSharp.RuntimeBinder.Semantics.CType>
-;  V93 tmp58        [V93,T34] (  3, 12   )     ref  ->  [rbp-0x120]  class-hnd spill-single-def "Inlining Arg" <Microsoft.CSharp.RuntimeBinder.Semantics.CType>
-;  V94 tmp59        [V94,T24] (  4, 17   )     ref  ->  rdi         class-hnd "spilling qmarkNull" <Microsoft.CSharp.RuntimeBinder.Semantics.AggregateType>
+;  V71 tmp36        [V71,T61] (  3,  6   )     ref  ->  [rbp-0xF8] 
+;  V72 tmp37        [V72,T58] (  4,  6   )     ref  ->  rsi         class-hnd "Inline return value spill temp" <Microsoft.CSharp.RuntimeBinder.Semantics.CType>
+;  V73 tmp38        [V73,T13] (  5, 20   )     ref  ->  [rbp-0x100]  class-hnd exact spill-single-def "NewObj constructor temp" <Microsoft.CSharp.RuntimeBinder.Semantics.SubstContext>
+;* V74 tmp39        [V74    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inline stloc first use temp" <Microsoft.CSharp.RuntimeBinder.Semantics.SubstContext>
+;  V75 tmp40        [V75,T51] (  2,  8   )     ref  ->  [rbp-0x108]  class-hnd exact spill-single-def "Inlining Arg" <int[]>
+;  V76 tmp41        [V76,T08] (  9, 36   )     ref  ->  [rbp-0x110]  class-hnd exact spill-single-def "NewObj constructor temp" <Microsoft.CSharp.RuntimeBinder.Semantics.ExprArrayInit>
+;* V77 tmp42        [V77    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <Microsoft.CSharp.RuntimeBinder.Semantics.Expr>
+;* V78 tmp43        [V78    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inline stloc first use temp" <Microsoft.CSharp.RuntimeBinder.Semantics.ExprArrayInit>
+;* V79 tmp44        [V79    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <Microsoft.CSharp.RuntimeBinder.Semantics.CType>
+;  V80 tmp45        [V80,T21] (  4, 16   )     ref  ->  [rbp-0x118]  class-hnd spill-single-def "Inlining Arg" <Microsoft.CSharp.RuntimeBinder.Semantics.Expr>
+;  V81 tmp46        [V81,T42] (  4,  8   )     ref  ->  [rbp-0x120]  class-hnd "Inline return value spill temp" <Microsoft.CSharp.RuntimeBinder.Semantics.Expr>
+;  V82 tmp47        [V82,T75] (  2,  4   )     ref  ->  [rbp-0x128]  ld-addr-op class-hnd spill-single-def "Inline ldloca(s) first use temp" <Microsoft.CSharp.RuntimeBinder.Semantics.Expr>
+;* V83 tmp48        [V83    ] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
+;  V84 tmp49        [V84,T52] (  2,  8   )     ref  ->  [rbp-0x130]  class-hnd spill-single-def "Inlining Arg" <Microsoft.CSharp.RuntimeBinder.Semantics.CType>
+;  V85 tmp50        [V85,T00] ( 10, 40   )     ref  ->  [rbp-0x138]  class-hnd exact spill-single-def "NewObj constructor temp" <Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder+ImplicitConversion>
+;* V86 tmp51        [V86    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inline stloc first use temp" <Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder+ImplicitConversion>
+;  V87 tmp52        [V87,T79] (  2,  4   )   ubyte  ->  rax         "Inline stloc first use temp"
+;* V88 tmp53        [V88    ] (  0,  0   )  struct (16) zero-ref    do-not-enreg[S] "Inlining Arg" <Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder>
+;* V89 tmp54        [V89    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline stloc first use temp" <Microsoft.CSharp.RuntimeBinder.Semantics.Expr>
+;* V90 tmp55        [V90    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <Microsoft.CSharp.RuntimeBinder.Semantics.CType>
+;  V91 tmp56        [V91,T30] (  3, 12   )     ref  ->  [rbp-0x140]  class-hnd spill-single-def "Inlining Arg" <Microsoft.CSharp.RuntimeBinder.Semantics.CType>
+;  V92 tmp57        [V92,T20] (  4, 17   )     ref  ->  rdi         class-hnd "spilling qmarkNull" <Microsoft.CSharp.RuntimeBinder.Semantics.AggregateType>
+;* V93 tmp58        [V93    ] (  0,  0   )     ref  ->  zero-ref   
+;* V94 tmp59        [V94    ] (  0,  0   )     ref  ->  zero-ref   
 ;* V95 tmp60        [V95    ] (  0,  0   )     ref  ->  zero-ref   
-;* V96 tmp61        [V96    ] (  0,  0   )     ref  ->  zero-ref   
-;* V97 tmp62        [V97    ] (  0,  0   )     ref  ->  zero-ref   
-;  V98 tmp63        [V98,T66] (  3,  6   )     ref  ->  [rbp-0x128] 
-;  V99 tmp64        [V99,T47] (  4,  8   )     ref  ->  [rbp-0x130]  class-hnd "Inline return value spill temp" <Microsoft.CSharp.RuntimeBinder.Semantics.CType>
-;  V100 tmp65       [V100,T19] (  5, 20   )     ref  ->  [rbp-0x138]  class-hnd exact spill-single-def "NewObj constructor temp" <Microsoft.CSharp.RuntimeBinder.Semantics.SubstContext>
-;* V101 tmp66       [V101    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inline stloc first use temp" <Microsoft.CSharp.RuntimeBinder.Semantics.SubstContext>
-;  V102 tmp67       [V102,T67] (  3,  6   )     ref  ->  rdi         class-hnd "Inline return value spill temp" <Microsoft.CSharp.RuntimeBinder.Semantics.Expr>
-;  V103 tmp68       [V103,T80] (  2,  4   )     ref  ->  [rbp-0x140]  ld-addr-op class-hnd spill-single-def "Inline ldloca(s) first use temp" <Microsoft.CSharp.RuntimeBinder.Semantics.Expr>
-;* V104 tmp69       [V104    ] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;  V105 tmp70       [V105,T57] (  2,  8   )     ref  ->  [rbp-0x148]  class-hnd spill-single-def "Inlining Arg" <Microsoft.CSharp.RuntimeBinder.Semantics.CType>
-;  V106 tmp71       [V106,T04] ( 10, 40   )     ref  ->  [rbp-0x150]  class-hnd exact spill-single-def "NewObj constructor temp" <Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder+ImplicitConversion>
-;* V107 tmp72       [V107    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inline stloc first use temp" <Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder+ImplicitConversion>
-;  V108 tmp73       [V108,T84] (  2,  4   )   ubyte  ->  rax         "Inline stloc first use temp"
-;* V109 tmp74       [V109    ] (  0,  0   )  struct (16) zero-ref    do-not-enreg[S] "Inlining Arg" <Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder>
-;  V110 tmp75       [V110,T104] (  2,  2   )     ref  ->  rdi         class-hnd exact "Inlining Arg" <Microsoft.CSharp.RuntimeBinder.Semantics.TypeArray>
-;* V111 tmp76       [V111,T91] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;  V112 tmp77       [V112,T105] (  2,  2   )     ref  ->  rdi         class-hnd exact single-def "Inlining Arg" <Microsoft.CSharp.RuntimeBinder.Semantics.TypeArray>
-;  V113 tmp78       [V113,T100] (  3,  3   )     int  ->  rsi         "Inlining Arg"
-;  V114 tmp79       [V114,T106] (  2,  2   )     ref  ->  r13         class-hnd exact single-def "Inlining Arg" <int[]>
-;  V115 tmp80       [V115,T39] ( 11, 11   )     ref  ->  [rbp-0x158]  class-hnd exact spill-single-def "NewObj constructor temp" <Microsoft.CSharp.RuntimeBinder.Semantics.ExprArrayInit>
-;* V116 tmp81       [V116,T116] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;  V117 tmp82       [V117,T75] (  4,  4   )     ref  ->  r14         class-hnd exact single-def "NewObj constructor temp" <Microsoft.CSharp.RuntimeBinder.Semantics.ExprList>
-;  V118 tmp83       [V118,T26] (  4, 16   )     ref  ->  [rbp-0x160]  class-hnd spill-single-def "Inlining Arg" <Microsoft.CSharp.RuntimeBinder.Semantics.Expr>
-;  V119 tmp84       [V119,T48] (  4,  8   )     ref  ->  [rbp-0x168]  class-hnd "Inline return value spill temp" <Microsoft.CSharp.RuntimeBinder.Semantics.Expr>
-;  V120 tmp85       [V120,T81] (  2,  4   )     ref  ->  [rbp-0x170]  ld-addr-op class-hnd spill-single-def "Inline ldloca(s) first use temp" <Microsoft.CSharp.RuntimeBinder.Semantics.Expr>
-;* V121 tmp86       [V121    ] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;  V122 tmp87       [V122,T58] (  2,  8   )     ref  ->  [rbp-0x178]  class-hnd spill-single-def "Inlining Arg" <Microsoft.CSharp.RuntimeBinder.Semantics.CType>
-;  V123 tmp88       [V123,T05] ( 10, 40   )     ref  ->  [rbp-0x180]  class-hnd exact spill-single-def "NewObj constructor temp" <Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder+ImplicitConversion>
-;* V124 tmp89       [V124    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inline stloc first use temp" <Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder+ImplicitConversion>
-;  V125 tmp90       [V125,T85] (  2,  4   )   ubyte  ->  rax         "Inline stloc first use temp"
-;* V126 tmp91       [V126    ] (  0,  0   )  struct (16) zero-ref    do-not-enreg[S] "Inlining Arg" <Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder>
-;* V127 tmp92       [V127    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline stloc first use temp" <Microsoft.CSharp.RuntimeBinder.Semantics.Expr>
-;* V128 tmp93       [V128    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <Microsoft.CSharp.RuntimeBinder.Semantics.CType>
-;  V129 tmp94       [V129,T68] (  3,  6   )     ref  ->  r12         class-hnd "Inline return value spill temp" <Microsoft.CSharp.RuntimeBinder.Semantics.Expr>
-;  V130 tmp95       [V130,T82] (  2,  4   )     ref  ->  [rbp-0x188]  ld-addr-op class-hnd spill-single-def "Inline ldloca(s) first use temp" <Microsoft.CSharp.RuntimeBinder.Semantics.Expr>
-;* V131 tmp96       [V131    ] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;  V132 tmp97       [V132,T59] (  2,  8   )     ref  ->  [rbp-0x190]  class-hnd spill-single-def "Inlining Arg" <Microsoft.CSharp.RuntimeBinder.Semantics.CType>
-;  V133 tmp98       [V133,T06] ( 10, 40   )     ref  ->  [rbp-0x198]  class-hnd exact spill-single-def "NewObj constructor temp" <Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder+ImplicitConversion>
-;* V134 tmp99       [V134    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inline stloc first use temp" <Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder+ImplicitConversion>
-;  V135 tmp100      [V135,T86] (  2,  4   )   ubyte  ->  rax         "Inline stloc first use temp"
-;* V136 tmp101      [V136    ] (  0,  0   )  struct (16) zero-ref    do-not-enreg[S] "Inlining Arg" <Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder>
-;* V137 tmp102      [V137,T92] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;  V138 tmp103      [V138,T107] (  2,  2   )     ref  ->  rsi         class-hnd single-def "Inlining Arg" <Microsoft.CSharp.RuntimeBinder.Semantics.Expr>
-;  V139 tmp104      [V139,T11] (  3, 34   )     ref  ->   r9         "field V25._list (fldOffset=0x0)" P-INDEP
-;  V140 tmp105      [V140,T07] (  2, 24   )     ref  ->   r8         "field V25._current (fldOffset=0x8)" P-INDEP
-;  V141 tmp106      [V141,T00] (  6, 82   )     int  ->  r10         "field V25._index (fldOffset=0x10)" P-INDEP
-;* V142 tmp107      [V142,T109] (  0,  0   )     int  ->  zero-ref    "field V25._version (fldOffset=0x14)" P-INDEP
-;  V143 tmp108      [V143,T69] (  3,  6   )     ref  ->   r9         "field V47._list (fldOffset=0x0)" P-INDEP
-;* V144 tmp109      [V144    ] (  0,  0   )     ref  ->  zero-ref    "field V47._current (fldOffset=0x8)" P-INDEP
-;* V145 tmp110      [V145,T110] (  0,  0   )     int  ->  zero-ref    "field V47._index (fldOffset=0x10)" P-INDEP
-;* V146 tmp111      [V146,T87] (  0,  0   )     int  ->  zero-ref    "field V47._version (fldOffset=0x14)" P-INDEP
-;  V147 tmp112      [V147,T35] (  3, 12   )     ref  ->  rdi         "arr expr"
-;  V148 tmp113      [V148,T01] (  3, 96   )     ref  ->  r11         "arr expr"
-;  V149 tmp114      [V149,T36] (  3, 96   )     ref  ->  r10         "arr expr"
-;  V150 tmp115      [V150,T37] (  3, 12   )     ref  ->  rdi         "arr expr"
-;  V151 tmp116      [V151,T96] (  3,  3   )     ref  ->  rdi         single-def "arr expr"
-;  V152 tmp117      [V152,T108] (  2,  2   )     ref  ->  rdi         single-def "argument with side effect"
-;  V153 tmp118      [V153,T97] (  3,  3   )     ref  ->  rdi         single-def "arr expr"
-;  V154 tmp119      [V154,T98] (  3,  3   )     ref  ->  rdi         single-def "arr expr"
-;  V155 cse0        [V155,T70] (  3,  6   )     ref  ->  [rbp-0x1A0]  spill-single-def "CSE #09: conservative"
-;* V156 cse1        [V156,T88] (  0,  0   )     int  ->  zero-ref    "CSE #02: moderate"
-;  V157 cse2        [V157,T02] (  2, 32   )     int  ->  r11         "CSE #03: aggressive"
-;  V158 cse3        [V158,T49] (  2,  4   )     ref  ->  rdi         "CSE #04: conservative"
-;  V159 cse4        [V159,T50] (  4,  8   )     ref  ->  rdi         "CSE #05: conservative"
-;  V160 cse5        [V160,T99] (  3,  3   )     ref  ->  rcx         "CSE #01: conservative"
-;  V161 cse6        [V161,T111] (  2,  1   )     ref  ->  rdi         "CSE #15: conservative"
-;  V162 cse7        [V162,T112] (  3,  1.50)     ref  ->  rdi         "CSE #16: conservative"
-;  V163 rat0        [V163,T40] (  6, 11   )    long  ->  [rbp-0x58]  "Widened IV V11"
-;  V164 rat1        [V164,T30] (  4, 14   )     ref  ->  rax         "replacement local"
-;  V165 rat2        [V165,T76] (  3,  4   )    long  ->  rdi         "CSE for expectedClsNode"
+;  V96 tmp61        [V96,T62] (  3,  6   )     ref  ->  [rbp-0x148] 
+;  V97 tmp62        [V97,T43] (  4,  8   )     ref  ->  [rbp-0x150]  class-hnd "Inline return value spill temp" <Microsoft.CSharp.RuntimeBinder.Semantics.CType>
+;  V98 tmp63        [V98,T14] (  5, 20   )     ref  ->  [rbp-0x158]  class-hnd exact spill-single-def "NewObj constructor temp" <Microsoft.CSharp.RuntimeBinder.Semantics.SubstContext>
+;* V99 tmp64        [V99    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inline stloc first use temp" <Microsoft.CSharp.RuntimeBinder.Semantics.SubstContext>
+;  V100 tmp65       [V100,T63] (  3,  6   )     ref  ->  rdi         class-hnd "Inline return value spill temp" <Microsoft.CSharp.RuntimeBinder.Semantics.Expr>
+;  V101 tmp66       [V101,T76] (  2,  4   )     ref  ->  [rbp-0x160]  ld-addr-op class-hnd spill-single-def "Inline ldloca(s) first use temp" <Microsoft.CSharp.RuntimeBinder.Semantics.Expr>
+;* V102 tmp67       [V102    ] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
+;  V103 tmp68       [V103,T53] (  2,  8   )     ref  ->  [rbp-0x168]  class-hnd spill-single-def "Inlining Arg" <Microsoft.CSharp.RuntimeBinder.Semantics.CType>
+;  V104 tmp69       [V104,T01] ( 10, 40   )     ref  ->  [rbp-0x170]  class-hnd exact spill-single-def "NewObj constructor temp" <Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder+ImplicitConversion>
+;* V105 tmp70       [V105    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inline stloc first use temp" <Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder+ImplicitConversion>
+;  V106 tmp71       [V106,T80] (  2,  4   )   ubyte  ->  rax         "Inline stloc first use temp"
+;* V107 tmp72       [V107    ] (  0,  0   )  struct (16) zero-ref    do-not-enreg[S] "Inlining Arg" <Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder>
+;  V108 tmp73       [V108,T99] (  2,  2   )     ref  ->  rdi         class-hnd exact "Inlining Arg" <Microsoft.CSharp.RuntimeBinder.Semantics.TypeArray>
+;* V109 tmp74       [V109,T86] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
+;  V110 tmp75       [V110,T100] (  2,  2   )     ref  ->  rdi         class-hnd exact single-def "Inlining Arg" <Microsoft.CSharp.RuntimeBinder.Semantics.TypeArray>
+;  V111 tmp76       [V111,T95] (  3,  3   )     int  ->  rsi         "Inlining Arg"
+;  V112 tmp77       [V112,T101] (  2,  2   )     ref  ->  r13         class-hnd exact single-def "Inlining Arg" <int[]>
+;  V113 tmp78       [V113,T35] ( 11, 11   )     ref  ->  [rbp-0x178]  class-hnd exact spill-single-def "NewObj constructor temp" <Microsoft.CSharp.RuntimeBinder.Semantics.ExprArrayInit>
+;* V114 tmp79       [V114,T111] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
+;  V115 tmp80       [V115,T71] (  4,  4   )     ref  ->  r14         class-hnd exact single-def "NewObj constructor temp" <Microsoft.CSharp.RuntimeBinder.Semantics.ExprList>
+;  V116 tmp81       [V116,T22] (  4, 16   )     ref  ->  [rbp-0x180]  class-hnd spill-single-def "Inlining Arg" <Microsoft.CSharp.RuntimeBinder.Semantics.Expr>
+;  V117 tmp82       [V117,T44] (  4,  8   )     ref  ->  [rbp-0x188]  class-hnd "Inline return value spill temp" <Microsoft.CSharp.RuntimeBinder.Semantics.Expr>
+;  V118 tmp83       [V118,T77] (  2,  4   )     ref  ->  [rbp-0x190]  ld-addr-op class-hnd spill-single-def "Inline ldloca(s) first use temp" <Microsoft.CSharp.RuntimeBinder.Semantics.Expr>
+;* V119 tmp84       [V119    ] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
+;  V120 tmp85       [V120,T54] (  2,  8   )     ref  ->  [rbp-0x198]  class-hnd spill-single-def "Inlining Arg" <Microsoft.CSharp.RuntimeBinder.Semantics.CType>
+;  V121 tmp86       [V121,T02] ( 10, 40   )     ref  ->  [rbp-0x1A0]  class-hnd exact spill-single-def "NewObj constructor temp" <Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder+ImplicitConversion>
+;* V122 tmp87       [V122    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inline stloc first use temp" <Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder+ImplicitConversion>
+;  V123 tmp88       [V123,T81] (  2,  4   )   ubyte  ->  rax         "Inline stloc first use temp"
+;* V124 tmp89       [V124    ] (  0,  0   )  struct (16) zero-ref    do-not-enreg[S] "Inlining Arg" <Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder>
+;* V125 tmp90       [V125    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline stloc first use temp" <Microsoft.CSharp.RuntimeBinder.Semantics.Expr>
+;* V126 tmp91       [V126    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <Microsoft.CSharp.RuntimeBinder.Semantics.CType>
+;  V127 tmp92       [V127,T64] (  3,  6   )     ref  ->  r12         class-hnd "Inline return value spill temp" <Microsoft.CSharp.RuntimeBinder.Semantics.Expr>
+;  V128 tmp93       [V128,T78] (  2,  4   )     ref  ->  [rbp-0x1A8]  ld-addr-op class-hnd spill-single-def "Inline ldloca(s) first use temp" <Microsoft.CSharp.RuntimeBinder.Semantics.Expr>
+;* V129 tmp94       [V129    ] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
+;  V130 tmp95       [V130,T55] (  2,  8   )     ref  ->  [rbp-0x1B0]  class-hnd spill-single-def "Inlining Arg" <Microsoft.CSharp.RuntimeBinder.Semantics.CType>
+;  V131 tmp96       [V131,T03] ( 10, 40   )     ref  ->  [rbp-0x1B8]  class-hnd exact spill-single-def "NewObj constructor temp" <Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder+ImplicitConversion>
+;* V132 tmp97       [V132    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inline stloc first use temp" <Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder+ImplicitConversion>
+;  V133 tmp98       [V133,T82] (  2,  4   )   ubyte  ->  rax         "Inline stloc first use temp"
+;* V134 tmp99       [V134    ] (  0,  0   )  struct (16) zero-ref    do-not-enreg[S] "Inlining Arg" <Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder>
+;* V135 tmp100      [V135,T87] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
+;  V136 tmp101      [V136,T102] (  2,  2   )     ref  ->  rsi         class-hnd single-def "Inlining Arg" <Microsoft.CSharp.RuntimeBinder.Semantics.Expr>
+;  V137 tmp102      [V137    ] (  3, 20   )     ref  ->  [rbp-0x58]  do-not-enreg[X] addr-exposed "field V25._list (fldOffset=0x0)" P-DEP
+;  V138 tmp103      [V138    ] (  4, 36   )     ref  ->  [rbp-0x50]  do-not-enreg[X] addr-exposed "field V25._current (fldOffset=0x8)" P-DEP
+;  V139 tmp104      [V139    ] (  3, 20   )     int  ->  [rbp-0x48]  do-not-enreg[X] addr-exposed "field V25._index (fldOffset=0x10)" P-DEP
+;  V140 tmp105      [V140    ] (  3, 20   )     int  ->  [rbp-0x44]  do-not-enreg[X] addr-exposed "field V25._version (fldOffset=0x14)" P-DEP
+;  V141 tmp106      [V141,T65] (  3,  6   )     ref  ->  rsi         "field V47._list (fldOffset=0x0)" P-INDEP
+;* V142 tmp107      [V142,T104] (  0,  0   )     ref  ->  zero-ref    "field V47._current (fldOffset=0x8)" P-INDEP
+;* V143 tmp108      [V143,T105] (  0,  0   )     int  ->  zero-ref    "field V47._index (fldOffset=0x10)" P-INDEP
+;  V144 tmp109      [V144,T83] (  2,  4   )     int  ->  r10         "field V47._version (fldOffset=0x14)" P-INDEP
+;  V145 tmp110      [V145,T31] (  3, 12   )     ref  ->  rdi         "arr expr"
+;  V146 tmp111      [V146,T32] (  3, 12   )     ref  ->  rdi         "arr expr"
+;  V147 tmp112      [V147,T33] (  3, 12   )     ref  ->  rdi         "arr expr"
+;  V148 tmp113      [V148,T91] (  3,  3   )     ref  ->  rdi         single-def "arr expr"
+;  V149 tmp114      [V149,T103] (  2,  2   )     ref  ->  rdi         single-def "argument with side effect"
+;  V150 tmp115      [V150,T92] (  3,  3   )     ref  ->  rdi         single-def "arr expr"
+;  V151 tmp116      [V151,T93] (  3,  3   )     ref  ->  rdi         single-def "arr expr"
+;  V152 cse0        [V152,T66] (  3,  6   )     ref  ->  [rbp-0x1C0]  spill-single-def "CSE #08: conservative"
+;  V153 cse1        [V153,T45] (  2,  4   )     ref  ->  rdi         "CSE #03: conservative"
+;  V154 cse2        [V154,T46] (  4,  8   )     ref  ->  rdi         "CSE #04: conservative"
+;  V155 cse3        [V155,T94] (  3,  3   )     ref  ->  rcx         "CSE #01: conservative"
+;  V156 cse4        [V156,T106] (  2,  1   )     ref  ->  rdi         "CSE #12: conservative"
+;  V157 cse5        [V157,T107] (  3,  1.50)     ref  ->  rdi         "CSE #13: conservative"
+;  V158 cse6        [V158,T15] (  3, 20   )    long  ->  [rbp-0x70]  spill-single-def "CSE #02: moderate"
+;  V159 rat0        [V159,T36] (  6, 11   )    long  ->  [rbp-0x78]  "Widened IV V11"
+;  V160 rat1        [V160,T26] (  4, 14   )     ref  ->  rax         "replacement local"
+;  V161 rat2        [V161,T72] (  3,  4   )    long  ->  rdi         "CSE for expectedClsNode"
 ;
-; Lcl frame size = 376
+; Lcl frame size = 408
 
 G_M22714_IG01:
        push     rbp
        push     r15
        push     r14
        push     r13
        push     r12
        push     rbx
-       sub      rsp, 376
-       lea      rbp, [rsp+0x1A0]
-       vxorps   xmm8, xmm8, xmm8
-       vmovdqu  ymmword ptr [rbp-0x50], ymm8
+       sub      rsp, 408
+       lea      rbp, [rsp+0x1C0]
        xor      eax, eax
+       mov      qword ptr [rbp-0x68], rax
+       vxorps   xmm8, xmm8, xmm8
+       vmovdqu  ymmword ptr [rbp-0x60], ymm8
+       vmovdqa  xmmword ptr [rbp-0x40], xmm8
        mov      qword ptr [rbp-0x30], rax
        mov      r14, rdi
        mov      rbx, rdx
        mov      r15, rcx
        mov      r13, r8
        mov      r12, r9
        mov      rax, bword ptr [rbp+0x10]
-						;; size=60 bbWeight=1 PerfScore 12.58
+						;; size=69 bbWeight=1 PerfScore 15.58
 G_M22714_IG02:
        xor      rdi, rdi
        mov      bword ptr [rbp+0x10], rax
        mov      gword ptr [rax], rdi
        mov      rdi, r15
        mov      rcx, 0xD1FFAB1E      ; code for Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder+GroupToArgsBinder:FindMostDerivedMethod(Microsoft.CSharp.RuntimeBinder.Semantics.MethodOrPropertySymbol,Microsoft.CSharp.RuntimeBinder.Semantics.CType):Microsoft.CSharp.RuntimeBinder.Semantics.MethodOrPropertySymbol
        call     [rcx]Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder+GroupToArgsBinder:FindMostDerivedMethod(Microsoft.CSharp.RuntimeBinder.Semantics.MethodOrPropertySymbol,Microsoft.CSharp.RuntimeBinder.Semantics.CType):Microsoft.CSharp.RuntimeBinder.Semantics.MethodOrPropertySymbol
-       mov      gword ptr [rbp-0x60], rax
+       mov      gword ptr [rbp-0x80], rax
        mov      rcx, gword ptr [r15+0x88]
        mov      rdi, rcx
        mov      rdi, gword ptr [rdi+0x08]
        mov      edx, dword ptr [rdi+0x08]
        mov      dword ptr [rbp-0x34], edx
-       mov      gword ptr [rbp-0x68], rcx
+       mov      gword ptr [rbp-0x88], rcx
        xor      esi, esi
-       mov      qword ptr [rbp-0x58], rsi
+       mov      qword ptr [rbp-0x78], rsi
        mov      rdi, r12
        mov      r8, 0xD1FFAB1E      ; code for Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionIterator:Count(Microsoft.CSharp.RuntimeBinder.Semantics.Expr):int
        call     [r8]Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionIterator:Count(Microsoft.CSharp.RuntimeBinder.Semantics.Expr):int
        mov      dword ptr [rbp-0x38], eax
        xor      ecx, ecx
        mov      dword ptr [rbp-0x3C], ecx
        mov      rdi, 0xD1FFAB1E      ; Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionIterator
        call     CORINFO_HELP_NEWSFAST
-       mov      gword ptr [rbp-0x90], rax
+       mov      gword ptr [rbp-0xB0], rax
        mov      rdi, rax
        mov      rsi, r12
        mov      rcx, 0xD1FFAB1E      ; code for Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionIterator:Init(Microsoft.CSharp.RuntimeBinder.Semantics.Expr):this
        call     [rcx]Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionIterator:Init(Microsoft.CSharp.RuntimeBinder.Semantics.Expr):this
-       mov      rax, gword ptr [rbp-0x90]
-       mov      gword ptr [rbp-0x70], rax
+       mov      rax, gword ptr [rbp-0xB0]
+       mov      gword ptr [rbp-0x90], rax
        test     r12, r12
-       jne      G_M22714_IG55
-						;; size=142 bbWeight=1 PerfScore 31.25
+       jne      G_M22714_IG54
+						;; size=148 bbWeight=1 PerfScore 31.25
 G_M22714_IG03:
        cmp      byte  ptr [r15+0x97], 0
-       jne      G_M22714_IG61
-       jmp      G_M22714_IG82
+       jne      G_M22714_IG60
+       jmp      G_M22714_IG81
 						;; size=19 bbWeight=0.50 PerfScore 3.00
 G_M22714_IG04:
        mov      rcx, gword ptr [rax+0x10]
-       mov      gword ptr [rbp-0x78], rcx
+       mov      gword ptr [rbp-0x98], rcx
        mov      rdx, gword ptr [rcx+0x08]
        test     rdx, rdx
        je       SHORT G_M22714_IG09
-						;; size=17 bbWeight=2 PerfScore 12.50
+						;; size=20 bbWeight=2 PerfScore 12.50
 G_M22714_IG05:
        mov      rdi, 0xD1FFAB1E      ; Microsoft.CSharp.RuntimeBinder.Semantics.ParameterModifierType
        cmp      qword ptr [rdx], rdi
        jne      SHORT G_M22714_IG09
 						;; size=15 bbWeight=1 PerfScore 4.25
 G_M22714_IG06:
        mov      edx, dword ptr [rbp-0x34]
        test     edx, edx
        je       SHORT G_M22714_IG08
        dec      edx
        mov      dword ptr [rbp-0x34], edx
 						;; size=12 bbWeight=2 PerfScore 7.00
 G_M22714_IG07:
        lea      rdx, [rbp-0x30]
        mov      rdi, rcx
        mov      rsi, bword ptr [rbp+0x10]
        mov      rcx, 0xD1FFAB1E      ; code for Microsoft.CSharp.RuntimeBinder.Semantics.ExprFactory:AppendItemToList(Microsoft.CSharp.RuntimeBinder.Semantics.Expr,byref,byref)
        call     [rcx]Microsoft.CSharp.RuntimeBinder.Semantics.ExprFactory:AppendItemToList(Microsoft.CSharp.RuntimeBinder.Semantics.Expr,byref,byref)
-       jmp      G_M22714_IG53
+       jmp      G_M22714_IG52
 						;; size=28 bbWeight=2 PerfScore 14.00
 G_M22714_IG08:
        mov      dword ptr [rbp-0x34], edx
        jmp      SHORT G_M22714_IG07
-       align    [0 bytes for IG12]
 						;; size=5 bbWeight=1 PerfScore 3.00
 G_M22714_IG09:
        mov      edx, dword ptr [rbp-0x34]
        test     edx, edx
-       je       SHORT G_M22714_IG11
+       je       G_M22714_IG15
        mov      dword ptr [rbp-0x34], edx
        cmp      edx, 1
        jne      SHORT G_M22714_IG10
        cmp      byte  ptr [r15+0x97], 0
        je       SHORT G_M22714_IG10
        mov      rdi, gword ptr [r15+0x88]
        mov      rdi, gword ptr [rdi+0x08]
-       mov      esi, dword ptr [rbp-0x38]
-       cmp      dword ptr [rdi+0x08], esi
-       jl       G_M22714_IG60
-						;; size=48 bbWeight=2 PerfScore 35.00
+       mov      r8d, dword ptr [rbp-0x38]
+       cmp      dword ptr [rdi+0x08], r8d
+       jl       G_M22714_IG59
+						;; size=54 bbWeight=2 PerfScore 35.00
 G_M22714_IG10:
        mov      rdi, rcx
-       mov      gword ptr [rbp-0x80], rdi
-       mov      r8, 0xD1FFAB1E      ; Microsoft.CSharp.RuntimeBinder.Semantics.ExprNamedArgumentSpecification
-       cmp      qword ptr [rdi], r8
-       jne      G_M22714_IG41
+       mov      gword ptr [rbp-0xA0], rdi
+       mov      rsi, 0xD1FFAB1E      ; Microsoft.CSharp.RuntimeBinder.Semantics.ExprNamedArgumentSpecification
+       cmp      qword ptr [rdi], rsi
+       jne      G_M22714_IG40
        xor      ecx, ecx
-       mov      r8, gword ptr [rbp-0x60]
-       mov      r9, gword ptr [r8+0x40]
-       mov      r10d, dword ptr [r9+0x14]
-       xor      r10d, r10d
-       jmp      SHORT G_M22714_IG13
-						;; size=45 bbWeight=2 PerfScore 26.00
+       mov      dword ptr [rbp-0x40], ecx
+       mov      r9, gword ptr [rbp-0x80]
+       mov      rsi, gword ptr [r9+0x40]
+       mov      r10d, dword ptr [rsi+0x14]
+       mov      gword ptr [rbp-0x58], rsi
+       xor      rsi, rsi
+       mov      gword ptr [rbp-0x50], rsi
+						;; size=56 bbWeight=2 PerfScore 28.00
 G_M22714_IG11:
-       mov      dword ptr [rbp-0x34], edx
-       jmp      G_M22714_IG53
-						;; size=8 bbWeight=1 PerfScore 3.00
+       mov      dword ptr [rbp-0x48], esi
+       mov      dword ptr [rbp-0x44], r10d
+       lea      rdi, [rbp-0x58]
+       mov      r10, 0xD1FFAB1E      ; System.Collections.Generic.List`1+Enumerator[Microsoft.CSharp.RuntimeBinder.Syntax.Name]
+       mov      qword ptr [rbp-0x70], r10
+       mov      rsi, r10
+       mov      r11, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       call     [r11]System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       test     eax, eax
+       je       SHORT G_M22714_IG13
+						;; size=45 bbWeight=2 PerfScore 17.00
 G_M22714_IG12:
-       cmp      r8, gword ptr [rdi+0x40]
-       je       SHORT G_M22714_IG14
+       mov      rdi, gword ptr [rbp-0x50]
+       mov      rax, gword ptr [rbp-0xA0]
+       cmp      rdi, gword ptr [rax+0x40]
+       je       SHORT G_M22714_IG13
+       mov      ecx, dword ptr [rbp-0x40]
        inc      ecx
-       mov      rdi, gword ptr [rbp-0x80]
-						;; size=12 bbWeight=8 PerfScore 42.00
+       mov      dword ptr [rbp-0x40], ecx
+       lea      rdi, [rbp-0x58]
+       mov      rsi, qword ptr [rbp-0x70]
+       mov      rdx, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       call     [rdx]System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       test     eax, eax
+       jne      SHORT G_M22714_IG12
+						;; size=49 bbWeight=16 PerfScore 228.00
 G_M22714_IG13:
-       mov      r11d, dword ptr [r9+0x10]
-       cmp      r10d, r11d
-       jae      SHORT G_M22714_IG15
-       mov      r11, gword ptr [r9+0x08]
-       cmp      r10d, dword ptr [r11+0x08]
-       jae      G_M22714_IG84
-       mov      r8d, r10d
-       mov      r8, gword ptr [r11+8*r8+0x10]
-       inc      r10d
-       jmp      SHORT G_M22714_IG12
-						;; size=36 bbWeight=16 PerfScore 220.00
+       mov      rcx, gword ptr [rbp-0x88]
+       mov      rdi, gword ptr [rcx+0x08]
+       mov      edx, dword ptr [rbp-0x40]
+       cmp      edx, dword ptr [rdi+0x08]
+       jae      G_M22714_IG83
+       mov      dword ptr [rbp-0x40], edx
+       mov      esi, edx
+       mov      rsi, gword ptr [rdi+8*rsi+0x10]
+       mov      gword ptr [rbp-0xB8], rsi
+       test     rbx, rbx
+       jne      SHORT G_M22714_IG16
+						;; size=45 bbWeight=2 PerfScore 27.00
 G_M22714_IG14:
-       mov      rdi, gword ptr [rbp-0x80]
-						;; size=4 bbWeight=4 PerfScore 4.00
+       xor      rdi, rdi
+       jmp      SHORT G_M22714_IG18
+						;; size=4 bbWeight=4 PerfScore 9.00
 G_M22714_IG15:
-       mov      r9, gword ptr [rbp-0x68]
-       mov      r10, gword ptr [r9+0x08]
-       cmp      ecx, dword ptr [r10+0x08]
-       jae      G_M22714_IG84
-       mov      dword ptr [rbp-0x40], ecx
-       mov      r11d, ecx
-       mov      r10, gword ptr [r10+8*r11+0x10]
-       mov      gword ptr [rbp-0x98], r10
-       test     rbx, rbx
-       jne      SHORT G_M22714_IG17
-						;; size=41 bbWeight=16 PerfScore 200.00
+       mov      dword ptr [rbp-0x34], edx
+       jmp      G_M22714_IG52
+						;; size=8 bbWeight=1 PerfScore 3.00
 G_M22714_IG16:
-       xor      r11, r11
-       jmp      SHORT G_M22714_IG19
-						;; size=5 bbWeight=4 PerfScore 9.00
-G_M22714_IG17:
-       mov      r11, 0xD1FFAB1E      ; Microsoft.CSharp.RuntimeBinder.Semantics.AggregateType
-       cmp      qword ptr [rbx], r11
-       jne      SHORT G_M22714_IG16
+       mov      rdi, 0xD1FFAB1E      ; Microsoft.CSharp.RuntimeBinder.Semantics.AggregateType
+       cmp      qword ptr [rbx], rdi
+       jne      SHORT G_M22714_IG14
 						;; size=15 bbWeight=8 PerfScore 34.00
-G_M22714_IG18:
-       mov      r11, rbx
+G_M22714_IG17:
+       mov      rdi, rbx
 						;; size=3 bbWeight=0.50 PerfScore 0.12
-G_M22714_IG19:
-       test     r11, r11
-       jne      SHORT G_M22714_IG20
-       xor      r11, r11
-       mov      gword ptr [rbp-0xA0], r11
-       jmp      SHORT G_M22714_IG21
+G_M22714_IG18:
+       test     rdi, rdi
+       jne      SHORT G_M22714_IG19
+       xor      r8, r8
+       mov      gword ptr [rbp-0xC0], r8
+       jmp      SHORT G_M22714_IG20
 						;; size=17 bbWeight=2 PerfScore 9.00
-G_M22714_IG20:
-       mov      r11, gword ptr [r11+0x40]
-       mov      gword ptr [rbp-0xA0], r11
+G_M22714_IG19:
+       mov      r8, gword ptr [rdi+0x40]
+       mov      gword ptr [rbp-0xC0], r8
 						;; size=11 bbWeight=2 PerfScore 6.00
-G_M22714_IG21:
+G_M22714_IG20:
        mov      rdi, 0xD1FFAB1E      ; Microsoft.CSharp.RuntimeBinder.Semantics.SubstContext
        call     CORINFO_HELP_NEWSFAST
-       mov      gword ptr [rbp-0xB0], rax
+       mov      gword ptr [rbp-0xD0], rax
        mov      rdi, rax
-       mov      rsi, gword ptr [rbp-0xA0]
+       mov      rsi, gword ptr [rbp-0xC0]
        mov      rdx, r13
        xor      ecx, ecx
        mov      r8, 0xD1FFAB1E      ; code for Microsoft.CSharp.RuntimeBinder.Semantics.SubstContext:.ctor(Microsoft.CSharp.RuntimeBinder.Semantics.TypeArray,Microsoft.CSharp.RuntimeBinder.Semantics.TypeArray,ubyte):this
        call     [r8]Microsoft.CSharp.RuntimeBinder.Semantics.SubstContext:.ctor(Microsoft.CSharp.RuntimeBinder.Semantics.TypeArray,Microsoft.CSharp.RuntimeBinder.Semantics.TypeArray,ubyte):this
-       mov      rax, gword ptr [rbp-0xB0]
+       mov      rax, gword ptr [rbp-0xD0]
        mov      rdi, gword ptr [rax+0x08]
        cmp      dword ptr [rdi+0x08], 0
        sete     dil
        movzx    rdi, dil
        mov      rsi, gword ptr [rax+0x10]
        cmp      dword ptr [rsi+0x08], 0
        sete     sil
        movzx    rsi, sil
        test     edi, esi
-       jne      SHORT G_M22714_IG22
-       mov      rdi, gword ptr [rbp-0x98]
+       jne      SHORT G_M22714_IG21
+       mov      rdi, gword ptr [rbp-0xB8]
        mov      rsi, rax
        mov      rax, 0xD1FFAB1E      ; code for Microsoft.CSharp.RuntimeBinder.Semantics.TypeManager:SubstTypeCore(Microsoft.CSharp.RuntimeBinder.Semantics.CType,Microsoft.CSharp.RuntimeBinder.Semantics.SubstContext):Microsoft.CSharp.RuntimeBinder.Semantics.CType
        call     [rax]Microsoft.CSharp.RuntimeBinder.Semantics.TypeManager:SubstTypeCore(Microsoft.CSharp.RuntimeBinder.Semantics.CType,Microsoft.CSharp.RuntimeBinder.Semantics.SubstContext):Microsoft.CSharp.RuntimeBinder.Semantics.CType
-       mov      gword ptr [rbp-0xA8], rax
-       jmp      SHORT G_M22714_IG23
+       mov      gword ptr [rbp-0xC8], rax
+       jmp      SHORT G_M22714_IG22
 						;; size=124 bbWeight=2 PerfScore 59.00
-G_M22714_IG22:
-       mov      rax, gword ptr [rbp-0x98]
-       mov      gword ptr [rbp-0xA8], rax
+G_M22714_IG21:
+       mov      rax, gword ptr [rbp-0xB8]
+       mov      gword ptr [rbp-0xC8], rax
 						;; size=14 bbWeight=2 PerfScore 4.00
-G_M22714_IG23:
-       mov      rdi, gword ptr [rbp-0x80]
+G_M22714_IG22:
+       mov      rdi, gword ptr [rbp-0xA0]
        mov      rcx, gword ptr [rdi+0x38]
-       mov      gword ptr [rbp-0xB8], rcx
+       mov      gword ptr [rbp-0xD8], rcx
        mov      rdx, gword ptr [rcx+0x08]
-       mov      gword ptr [rbp-0xC0], rdx
+       mov      gword ptr [rbp-0xE0], rdx
        mov      rdi, 0xD1FFAB1E      ; Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder+ImplicitConversion
        call     CORINFO_HELP_NEWSFAST
        mov      rdx, rax
-       mov      gword ptr [rbp-0xC8], rdx
+       mov      gword ptr [rbp-0xE8], rdx
        lea      rdi, bword ptr [rdx+0x30]
        mov      rsi, r14
        call     CORINFO_HELP_ASSIGN_BYREF
        movsq    
        lea      rdi, bword ptr [rdx+0x10]
-       mov      rsi, gword ptr [rbp-0xB8]
+       mov      rsi, gword ptr [rbp-0xD8]
        call     CORINFO_HELP_ASSIGN_REF
-       mov      rax, gword ptr [rbp-0xC8]
+       mov      rax, gword ptr [rbp-0xE8]
        lea      rdi, bword ptr [rax+0x18]
-       mov      rsi, gword ptr [rbp-0xC0]
+       mov      rsi, gword ptr [rbp-0xE0]
        call     CORINFO_HELP_ASSIGN_REF
-       mov      rax, gword ptr [rbp-0xC8]
+       mov      rax, gword ptr [rbp-0xE8]
        lea      rdi, bword ptr [rax+0x20]
-       mov      rsi, gword ptr [rbp-0xA8]
+       mov      rsi, gword ptr [rbp-0xC8]
        call     CORINFO_HELP_ASSIGN_REF
-       mov      rax, gword ptr [rbp-0xC8]
+       mov      rax, gword ptr [rbp-0xE8]
        mov      byte  ptr [rax+0x2C], 0
        xor      edi, edi
        mov      dword ptr [rax+0x28], edi
-						;; size=143 bbWeight=2 PerfScore 50.00
-G_M22714_IG24:
+						;; size=146 bbWeight=2 PerfScore 50.00
+G_M22714_IG23:
        mov      gword ptr [rax+0x08], rdi
        mov      rdi, rax
        mov      rax, 0xD1FFAB1E      ; code for Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder+ImplicitConversion:Bind():ubyte:this
        call     [rax]Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder+ImplicitConversion:Bind():ubyte:this
        test     eax, eax
-       jne      G_M22714_IG36
+       jne      G_M22714_IG35
        cmp      byte  ptr [r15+0x97], 0
-       je       G_M22714_IG36
+       je       G_M22714_IG35
        mov      rdi, gword ptr [r15+0x88]
        mov      rdi, gword ptr [rdi+0x08]
        mov      eax, dword ptr [rdi+0x08]
        dec      eax
        cmp      eax, dword ptr [rbp-0x40]
-       jne      G_M22714_IG36
+       jne      G_M22714_IG35
        mov      eax, dword ptr [rdi+0x08]
        dec      eax
        cmp      eax, dword ptr [rdi+0x08]
-       jae      G_M22714_IG84
+       jae      G_M22714_IG83
        mov      rax, gword ptr [rdi+8*rax+0x10]
-       mov      gword ptr [rbp-0xD0], rax
+       mov      gword ptr [rbp-0xF0], rax
        test     rbx, rbx
-       jne      SHORT G_M22714_IG26
+       jne      SHORT G_M22714_IG25
 						;; size=97 bbWeight=2 PerfScore 59.00
-G_M22714_IG25:
+G_M22714_IG24:
        xor      rdi, rdi
-       jmp      SHORT G_M22714_IG28
+       jmp      SHORT G_M22714_IG27
 						;; size=4 bbWeight=4 PerfScore 9.00
-G_M22714_IG26:
+G_M22714_IG25:
        mov      rdi, 0xD1FFAB1E      ; Microsoft.CSharp.RuntimeBinder.Semantics.AggregateType
        cmp      qword ptr [rbx], rdi
-       jne      SHORT G_M22714_IG25
+       jne      SHORT G_M22714_IG24
 						;; size=15 bbWeight=8 PerfScore 34.00
-G_M22714_IG27:
+G_M22714_IG26:
        mov      rdi, rbx
 						;; size=3 bbWeight=0.50 PerfScore 0.12
-G_M22714_IG28:
+G_M22714_IG27:
        test     rdi, rdi
-       jne      SHORT G_M22714_IG29
+       jne      SHORT G_M22714_IG28
        xor      rax, rax
-       mov      gword ptr [rbp-0xD8], rax
-       jmp      SHORT G_M22714_IG30
+       mov      gword ptr [rbp-0xF8], rax
+       jmp      SHORT G_M22714_IG29
 						;; size=16 bbWeight=2 PerfScore 9.00
-G_M22714_IG29:
+G_M22714_IG28:
        mov      rax, gword ptr [rdi+0x40]
-       mov      gword ptr [rbp-0xD8], rax
+       mov      gword ptr [rbp-0xF8], rax
 						;; size=11 bbWeight=2 PerfScore 6.00
-G_M22714_IG30:
+G_M22714_IG29:
        mov      rdi, 0xD1FFAB1E      ; Microsoft.CSharp.RuntimeBinder.Semantics.SubstContext
        call     CORINFO_HELP_NEWSFAST
-       mov      gword ptr [rbp-0xE0], rax
+       mov      gword ptr [rbp-0x100], rax
        mov      rdi, rax
-       mov      rsi, gword ptr [rbp-0xD8]
+       mov      rsi, gword ptr [rbp-0xF8]
        mov      rdx, r13
        xor      ecx, ecx
        mov      r8, 0xD1FFAB1E      ; code for Microsoft.CSharp.RuntimeBinder.Semantics.SubstContext:.ctor(Microsoft.CSharp.RuntimeBinder.Semantics.TypeArray,Microsoft.CSharp.RuntimeBinder.Semantics.TypeArray,ubyte):this
        call     [r8]Microsoft.CSharp.RuntimeBinder.Semantics.SubstContext:.ctor(Microsoft.CSharp.RuntimeBinder.Semantics.TypeArray,Microsoft.CSharp.RuntimeBinder.Semantics.TypeArray,ubyte):this
-       mov      rax, gword ptr [rbp-0xE0]
+       mov      rax, gword ptr [rbp-0x100]
        mov      rdi, gword ptr [rax+0x08]
        cmp      dword ptr [rdi+0x08], 0
        sete     dil
        movzx    rdi, dil
        mov      rsi, gword ptr [rax+0x10]
        cmp      dword ptr [rsi+0x08], 0
        sete     sil
        movzx    rsi, sil
        test     edi, esi
-       jne      SHORT G_M22714_IG31
-       mov      rdi, gword ptr [rbp-0xD0]
+       jne      SHORT G_M22714_IG30
+       mov      rdi, gword ptr [rbp-0xF0]
        mov      rsi, rax
        mov      rax, 0xD1FFAB1E      ; code for Microsoft.CSharp.RuntimeBinder.Semantics.TypeManager:SubstTypeCore(Microsoft.CSharp.RuntimeBinder.Semantics.CType,Microsoft.CSharp.RuntimeBinder.Semantics.SubstContext):Microsoft.CSharp.RuntimeBinder.Semantics.CType
        call     [rax]Microsoft.CSharp.RuntimeBinder.Semantics.TypeManager:SubstTypeCore(Microsoft.CSharp.RuntimeBinder.Semantics.CType,Microsoft.CSharp.RuntimeBinder.Semantics.SubstContext):Microsoft.CSharp.RuntimeBinder.Semantics.CType
        mov      rsi, rax
-       jmp      SHORT G_M22714_IG32
+       jmp      SHORT G_M22714_IG31
 						;; size=120 bbWeight=2 PerfScore 57.50
-G_M22714_IG31:
-       mov      rsi, gword ptr [rbp-0xD0]
+G_M22714_IG30:
+       mov      rsi, gword ptr [rbp-0xF0]
 						;; size=7 bbWeight=2 PerfScore 2.00
-G_M22714_IG32:
+G_M22714_IG31:
        mov      rax, rsi
        test     rax, rax
-       je       SHORT G_M22714_IG34
+       je       SHORT G_M22714_IG33
 						;; size=8 bbWeight=2 PerfScore 3.00
-G_M22714_IG33:
+G_M22714_IG32:
        mov      rdi, 0xD1FFAB1E      ; Microsoft.CSharp.RuntimeBinder.Semantics.ArrayType
        cmp      qword ptr [rax], rdi
-       jne      G_M22714_IG85
+       jne      G_M22714_IG84
 						;; size=19 bbWeight=1 PerfScore 4.25
-G_M22714_IG34:
-       mov      gword ptr [rbp-0x1A0], rax
-       mov      gword ptr [rbp-0x88], rax
+G_M22714_IG33:
+       mov      gword ptr [rbp-0x1C0], rax
+       mov      gword ptr [rbp-0xA8], rax
        mov      rdi, 0xD1FFAB1E      ; const ptr
        mov      rdx, gword ptr [rdi]
-       mov      gword ptr [rbp-0xE8], rdx
+       mov      gword ptr [rbp-0x108], rdx
        mov      rdi, 0xD1FFAB1E      ; Microsoft.CSharp.RuntimeBinder.Semantics.ExprArrayInit
        call     CORINFO_HELP_NEWSFAST
-       mov      gword ptr [rbp-0xF0], rax
+       mov      gword ptr [rbp-0x110], rax
        mov      dword ptr [rax+0x28], 16
        lea      rdi, bword ptr [rax+0x08]
-       mov      rsi, gword ptr [rbp-0x88]
+       mov      rsi, gword ptr [rbp-0xA8]
        call     CORINFO_HELP_ASSIGN_REF
        xor      rdi, rdi
-       mov      rax, gword ptr [rbp-0xF0]
+       mov      rax, gword ptr [rbp-0x110]
        mov      gword ptr [rax+0x38], rdi
 						;; size=92 bbWeight=2 PerfScore 26.50
-G_M22714_IG35:
+G_M22714_IG34:
        mov      gword ptr [rax+0x40], rdi
        lea      rdi, bword ptr [rax+0x48]
-       mov      rsi, gword ptr [rbp-0xE8]
+       mov      rsi, gword ptr [rbp-0x108]
        call     CORINFO_HELP_ASSIGN_REF
-       mov      rax, gword ptr [rbp-0xF0]
+       mov      rax, gword ptr [rbp-0x110]
        mov      byte  ptr [rax+0x31], 1
-       mov      rdi, gword ptr [rbp-0x80]
+       mov      rdi, gword ptr [rbp-0xA0]
        mov      rsi, gword ptr [rdi+0x38]
        lea      rdi, bword ptr [rax+0x38]
        call     CORINFO_HELP_ASSIGN_REF
-       mov      rdi, gword ptr [rbp-0x80]
+       mov      rdi, gword ptr [rbp-0xA0]
        lea      rdi, bword ptr [rdi+0x38]
-       mov      rsi, gword ptr [rbp-0xF0]
+       mov      rsi, gword ptr [rbp-0x110]
        call     CORINFO_HELP_ASSIGN_REF
-       mov      rdi, gword ptr [rbp-0x80]
+       mov      rdi, gword ptr [rbp-0xA0]
        lea      rdi, bword ptr [rdi+0x08]
-       mov      rsi, gword ptr [rbp-0x1A0]
+       mov      rsi, gword ptr [rbp-0x1C0]
        call     CORINFO_HELP_ASSIGN_REF
        mov      dword ptr [rbp-0x3C], 1
-       jmp      G_M22714_IG40
-						;; size=100 bbWeight=2 PerfScore 40.00
-G_M22714_IG36:
-       mov      rdi, gword ptr [rbp-0x80]
+       jmp      G_M22714_IG39
+						;; size=109 bbWeight=2 PerfScore 40.00
+G_M22714_IG35:
+       mov      rdi, gword ptr [rbp-0xA0]
        mov      rcx, gword ptr [rdi+0x38]
-       mov      gword ptr [rbp-0xF8], rcx
+       mov      gword ptr [rbp-0x118], rcx
        mov      rdx, gword ptr [rcx+0x08]
-       mov      gword ptr [rbp-0x110], rdx
+       mov      gword ptr [rbp-0x130], rdx
        mov      rdi, 0xD1FFAB1E      ; Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder+ImplicitConversion
        call     CORINFO_HELP_NEWSFAST
        mov      rdx, rax
-       mov      gword ptr [rbp-0x118], rdx
+       mov      gword ptr [rbp-0x138], rdx
        lea      rdi, bword ptr [rdx+0x30]
        mov      rsi, r14
        call     CORINFO_HELP_ASSIGN_BYREF
        movsq    
        lea      rdi, bword ptr [rdx+0x10]
-       mov      rsi, gword ptr [rbp-0xF8]
+       mov      rsi, gword ptr [rbp-0x118]
        call     CORINFO_HELP_ASSIGN_REF
-       mov      rax, gword ptr [rbp-0x118]
+       mov      rax, gword ptr [rbp-0x138]
        lea      rdi, bword ptr [rax+0x18]
-       mov      rsi, gword ptr [rbp-0x110]
+       mov      rsi, gword ptr [rbp-0x130]
        call     CORINFO_HELP_ASSIGN_REF
-       mov      rax, gword ptr [rbp-0x118]
+       mov      rax, gword ptr [rbp-0x138]
        lea      rdi, bword ptr [rax+0x20]
-       mov      rsi, gword ptr [rbp-0xA8]
+       mov      rsi, gword ptr [rbp-0xC8]
        call     CORINFO_HELP_ASSIGN_REF
-       mov      rax, gword ptr [rbp-0x118]
+       mov      rax, gword ptr [rbp-0x138]
        mov      byte  ptr [rax+0x2C], 1
        xor      edi, edi
        mov      dword ptr [rax+0x28], edi
-						;; size=143 bbWeight=2 PerfScore 50.00
-G_M22714_IG37:
+						;; size=146 bbWeight=2 PerfScore 50.00
+G_M22714_IG36:
        mov      gword ptr [rax+0x08], rdi
        mov      rdi, rax
        mov      rcx, 0xD1FFAB1E      ; code for Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder+ImplicitConversion:Bind():ubyte:this
        call     [rcx]Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder+ImplicitConversion:Bind():ubyte:this
-       mov      rdi, gword ptr [rbp-0x118]
+       mov      rdi, gword ptr [rbp-0x138]
        mov      rcx, gword ptr [rdi+0x08]
-       mov      gword ptr [rbp-0x108], rcx
+       mov      gword ptr [rbp-0x128], rcx
        test     eax, eax
-       je       SHORT G_M22714_IG38
-       mov      rdi, gword ptr [rbp-0xF8]
+       je       SHORT G_M22714_IG37
+       mov      rdi, gword ptr [rbp-0x118]
        mov      rdi, gword ptr [rdi+0x08]
        mov      rax, 0xD1FFAB1E      ; code for Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder:CheckUnsafe(Microsoft.CSharp.RuntimeBinder.Semantics.CType)
        call     [rax]Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder:CheckUnsafe(Microsoft.CSharp.RuntimeBinder.Semantics.CType)
-       mov      rdi, gword ptr [rbp-0xA8]
+       mov      rdi, gword ptr [rbp-0xC8]
        mov      rax, 0xD1FFAB1E      ; code for Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder:CheckUnsafe(Microsoft.CSharp.RuntimeBinder.Semantics.CType)
        call     [rax]Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder:CheckUnsafe(Microsoft.CSharp.RuntimeBinder.Semantics.CType)
-       mov      rax, gword ptr [rbp-0x108]
-       jmp      SHORT G_M22714_IG39
+       mov      rax, gword ptr [rbp-0x128]
+       jmp      SHORT G_M22714_IG38
 						;; size=92 bbWeight=2 PerfScore 46.50
-G_M22714_IG38:
+G_M22714_IG37:
        xor      rax, rax
 						;; size=2 bbWeight=2 PerfScore 0.50
-G_M22714_IG39:
-       mov      rdi, gword ptr [rbp-0x80]
+G_M22714_IG38:
+       mov      rdi, gword ptr [rbp-0xA0]
        lea      rdi, bword ptr [rdi+0x38]
-       mov      gword ptr [rbp-0x100], rax
+       mov      gword ptr [rbp-0x120], rax
        mov      rsi, rax
        call     CORINFO_HELP_ASSIGN_REF
-       mov      rsi, gword ptr [rbp-0x100]
+       mov      rsi, gword ptr [rbp-0x120]
        mov      rsi, gword ptr [rsi+0x08]
-       mov      rdi, gword ptr [rbp-0x80]
+       mov      rdi, gword ptr [rbp-0xA0]
        lea      rdi, bword ptr [rdi+0x08]
        call     CORINFO_HELP_ASSIGN_REF
-						;; size=47 bbWeight=2 PerfScore 18.50
+						;; size=53 bbWeight=2 PerfScore 18.50
+G_M22714_IG39:
+       mov      rdi, gword ptr [rbp-0xA0]
+       jmp      G_M22714_IG51
+						;; size=12 bbWeight=2 PerfScore 6.00
 G_M22714_IG40:
-       mov      rdi, gword ptr [rbp-0x80]
-       jmp      G_M22714_IG52
-						;; size=9 bbWeight=2 PerfScore 6.00
-G_M22714_IG41:
-       mov      r8, gword ptr [rbp-0x68]
-       mov      rdi, gword ptr [r8+0x08]
-       mov      r9, qword ptr [rbp-0x58]
+       mov      rsi, gword ptr [rbp-0x88]
+       mov      rdi, gword ptr [rsi+0x08]
+       mov      r9, qword ptr [rbp-0x78]
        cmp      r9d, dword ptr [rdi+0x08]
-       jae      G_M22714_IG84
-       mov      qword ptr [rbp-0x58], r9
+       jae      G_M22714_IG83
+       mov      qword ptr [rbp-0x78], r9
        mov      r10, gword ptr [rdi+8*r9+0x10]
-       mov      gword ptr [rbp-0x120], r10
+       mov      gword ptr [rbp-0x140], r10
        test     rbx, rbx
-       jne      SHORT G_M22714_IG43
-						;; size=43 bbWeight=2 PerfScore 26.50
-G_M22714_IG42:
+       jne      SHORT G_M22714_IG42
+						;; size=46 bbWeight=2 PerfScore 26.50
+G_M22714_IG41:
        xor      rdi, rdi
-       jmp      SHORT G_M22714_IG45
+       jmp      SHORT G_M22714_IG44
 						;; size=4 bbWeight=4 PerfScore 9.00
-G_M22714_IG43:
+G_M22714_IG42:
        mov      rdi, 0xD1FFAB1E      ; Microsoft.CSharp.RuntimeBinder.Semantics.AggregateType
        cmp      qword ptr [rbx], rdi
-       jne      SHORT G_M22714_IG42
+       jne      SHORT G_M22714_IG41
 						;; size=15 bbWeight=8 PerfScore 34.00
-G_M22714_IG44:
+G_M22714_IG43:
        mov      rdi, rbx
 						;; size=3 bbWeight=0.50 PerfScore 0.12
-G_M22714_IG45:
+G_M22714_IG44:
        test     rdi, rdi
-       jne      SHORT G_M22714_IG46
+       jne      SHORT G_M22714_IG45
        xor      r11, r11
-       mov      gword ptr [rbp-0x128], r11
-       jmp      SHORT G_M22714_IG47
+       mov      gword ptr [rbp-0x148], r11
+       jmp      SHORT G_M22714_IG46
 						;; size=17 bbWeight=2 PerfScore 9.00
-G_M22714_IG46:
+G_M22714_IG45:
        mov      r11, gword ptr [rdi+0x40]
-       mov      gword ptr [rbp-0x128], r11
+       mov      gword ptr [rbp-0x148], r11
 						;; size=11 bbWeight=2 PerfScore 6.00
-G_M22714_IG47:
+G_M22714_IG46:
        mov      rdi, 0xD1FFAB1E      ; Microsoft.CSharp.RuntimeBinder.Semantics.SubstContext
        call     CORINFO_HELP_NEWSFAST
-       mov      gword ptr [rbp-0x138], rax
+       mov      gword ptr [rbp-0x158], rax
        mov      rdi, rax
-       mov      rsi, gword ptr [rbp-0x128]
+       mov      rsi, gword ptr [rbp-0x148]
        mov      rdx, r13
        xor      ecx, ecx
        mov      r8, 0xD1FFAB1E      ; code for Microsoft.CSharp.RuntimeBinder.Semantics.SubstContext:.ctor(Microsoft.CSharp.RuntimeBinder.Semantics.TypeArray,Microsoft.CSharp.RuntimeBinder.Semantics.TypeArray,ubyte):this
        call     [r8]Microsoft.CSharp.RuntimeBinder.Semantics.SubstContext:.ctor(Microsoft.CSharp.RuntimeBinder.Semantics.TypeArray,Microsoft.CSharp.RuntimeBinder.Semantics.TypeArray,ubyte):this
-       mov      rax, gword ptr [rbp-0x138]
+       mov      rax, gword ptr [rbp-0x158]
        mov      rdi, gword ptr [rax+0x08]
        cmp      dword ptr [rdi+0x08], 0
        sete     dil
        movzx    rdi, dil
        mov      rsi, gword ptr [rax+0x10]
        cmp      dword ptr [rsi+0x08], 0
        sete     sil
        movzx    rsi, sil
        test     edi, esi
-       jne      SHORT G_M22714_IG48
-       mov      rdi, gword ptr [rbp-0x120]
+       jne      SHORT G_M22714_IG47
+       mov      rdi, gword ptr [rbp-0x140]
        mov      rsi, rax
        mov      rax, 0xD1FFAB1E      ; code for Microsoft.CSharp.RuntimeBinder.Semantics.TypeManager:SubstTypeCore(Microsoft.CSharp.RuntimeBinder.Semantics.CType,Microsoft.CSharp.RuntimeBinder.Semantics.SubstContext):Microsoft.CSharp.RuntimeBinder.Semantics.CType
        call     [rax]Microsoft.CSharp.RuntimeBinder.Semantics.TypeManager:SubstTypeCore(Microsoft.CSharp.RuntimeBinder.Semantics.CType,Microsoft.CSharp.RuntimeBinder.Semantics.SubstContext):Microsoft.CSharp.RuntimeBinder.Semantics.CType
-       mov      gword ptr [rbp-0x130], rax
-       jmp      SHORT G_M22714_IG49
+       mov      gword ptr [rbp-0x150], rax
+       jmp      SHORT G_M22714_IG48
 						;; size=124 bbWeight=2 PerfScore 59.00
-G_M22714_IG48:
-       mov      rax, gword ptr [rbp-0x120]
-       mov      gword ptr [rbp-0x130], rax
+G_M22714_IG47:
+       mov      rax, gword ptr [rbp-0x140]
+       mov      gword ptr [rbp-0x150], rax
 						;; size=14 bbWeight=2 PerfScore 4.00
-G_M22714_IG49:
-       mov      rcx, gword ptr [rbp-0x78]
+G_M22714_IG48:
+       mov      rcx, gword ptr [rbp-0x98]
        mov      rdx, gword ptr [rcx+0x08]
-       mov      gword ptr [rbp-0x148], rdx
+       mov      gword ptr [rbp-0x168], rdx
        mov      rdi, 0xD1FFAB1E      ; Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder+ImplicitConversion
        call     CORINFO_HELP_NEWSFAST
        mov      rdx, rax
-       mov      gword ptr [rbp-0x150], rdx
+       mov      gword ptr [rbp-0x170], rdx
        lea      rdi, bword ptr [rdx+0x30]
        mov      rsi, r14
        call     CORINFO_HELP_ASSIGN_BYREF
        movsq    
        lea      rdi, bword ptr [rdx+0x10]
-       mov      rsi, gword ptr [rbp-0x78]
+       mov      rsi, gword ptr [rbp-0x98]
        call     CORINFO_HELP_ASSIGN_REF
-       mov      rax, gword ptr [rbp-0x150]
+       mov      rax, gword ptr [rbp-0x170]
        lea      rdi, bword ptr [rax+0x18]
-       mov      rsi, gword ptr [rbp-0x148]
+       mov      rsi, gword ptr [rbp-0x168]
        call     CORINFO_HELP_ASSIGN_REF
-       mov      rax, gword ptr [rbp-0x150]
+       mov      rax, gword ptr [rbp-0x170]
        lea      rdi, bword ptr [rax+0x20]
-       mov      rsi, gword ptr [rbp-0x130]
+       mov      rsi, gword ptr [rbp-0x150]
        call     CORINFO_HELP_ASSIGN_REF
-       mov      rax, gword ptr [rbp-0x150]
+       mov      rax, gword ptr [rbp-0x170]
        mov      byte  ptr [rax+0x2C], 1
        xor      edi, edi
        mov      dword ptr [rax+0x28], edi
-						;; size=129 bbWeight=2 PerfScore 44.00
-G_M22714_IG50:
+						;; size=135 bbWeight=2 PerfScore 44.00
+G_M22714_IG49:
        mov      gword ptr [rax+0x08], rdi
        mov      rdi, rax
        mov      rcx, 0xD1FFAB1E      ; code for Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder+ImplicitConversion:Bind():ubyte:this
        call     [rcx]Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder+ImplicitConversion:Bind():ubyte:this
-       mov      rdi, gword ptr [rbp-0x150]
+       mov      rdi, gword ptr [rbp-0x170]
        mov      rcx, gword ptr [rdi+0x08]
-       mov      gword ptr [rbp-0x140], rcx
+       mov      gword ptr [rbp-0x160], rcx
        test     eax, eax
-       je       SHORT G_M22714_IG51
-       mov      rsi, gword ptr [rbp-0x78]
+       je       SHORT G_M22714_IG50
+       mov      rsi, gword ptr [rbp-0x98]
        mov      rdi, gword ptr [rsi+0x08]
        mov      rax, 0xD1FFAB1E      ; code for Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder:CheckUnsafe(Microsoft.CSharp.RuntimeBinder.Semantics.CType)
        call     [rax]Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder:CheckUnsafe(Microsoft.CSharp.RuntimeBinder.Semantics.CType)
-       mov      rdi, gword ptr [rbp-0x130]
+       mov      rdi, gword ptr [rbp-0x150]
        mov      rax, 0xD1FFAB1E      ; code for Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder:CheckUnsafe(Microsoft.CSharp.RuntimeBinder.Semantics.CType)
        call     [rax]Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder:CheckUnsafe(Microsoft.CSharp.RuntimeBinder.Semantics.CType)
-       mov      rdi, gword ptr [rbp-0x140]
-       jmp      SHORT G_M22714_IG52
-						;; size=89 bbWeight=2 PerfScore 46.50
-G_M22714_IG51:
+       mov      rdi, gword ptr [rbp-0x160]
+       jmp      SHORT G_M22714_IG51
+						;; size=92 bbWeight=2 PerfScore 46.50
+G_M22714_IG50:
        xor      rdi, rdi
 						;; size=2 bbWeight=2 PerfScore 0.50
-G_M22714_IG52:
+G_M22714_IG51:
        test     rdi, rdi
-       je       SHORT G_M22714_IG58
+       je       G_M22714_IG57
        lea      rdx, [rbp-0x30]
        mov      rsi, bword ptr [rbp+0x10]
        mov      rcx, 0xD1FFAB1E      ; code for Microsoft.CSharp.RuntimeBinder.Semantics.ExprFactory:AppendItemToList(Microsoft.CSharp.RuntimeBinder.Semantics.Expr,byref,byref)
        call     [rcx]Microsoft.CSharp.RuntimeBinder.Semantics.ExprFactory:AppendItemToList(Microsoft.CSharp.RuntimeBinder.Semantics.Expr,byref,byref)
        mov      eax, dword ptr [rbp-0x34]
        dec      eax
        mov      dword ptr [rbp-0x34], eax
-						;; size=33 bbWeight=2 PerfScore 16.50
-G_M22714_IG53:
-       mov      rdi, qword ptr [rbp-0x58]
+						;; size=37 bbWeight=2 PerfScore 16.50
+G_M22714_IG52:
+       mov      rdi, qword ptr [rbp-0x78]
        inc      edi
        mov      rcx, rdi
        cmp      dword ptr [rbp-0x34], 0
-       je       SHORT G_M22714_IG57
-       cmp      byte  ptr [r15+0x97], 0
        je       SHORT G_M22714_IG56
-       mov      qword ptr [rbp-0x58], rcx
+       cmp      byte  ptr [r15+0x97], 0
+       je       SHORT G_M22714_IG55
+       mov      qword ptr [rbp-0x78], rcx
        mov      edx, dword ptr [rbp-0x38]
        cmp      ecx, edx
-       je       SHORT G_M22714_IG59
+       je       SHORT G_M22714_IG58
 						;; size=36 bbWeight=2 PerfScore 23.50
-G_M22714_IG54:
-       mov      rdi, gword ptr [rbp-0x70]
+G_M22714_IG53:
+       mov      rdi, gword ptr [rbp-0x90]
        mov      rsi, 0xD1FFAB1E      ; code for Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionIterator:MoveNext():this
        call     [rsi]Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionIterator:MoveNext():this
-       mov      rax, gword ptr [rbp-0x70]
-						;; size=20 bbWeight=2 PerfScore 10.50
-G_M22714_IG55:
+       mov      rax, gword ptr [rbp-0x90]
+						;; size=26 bbWeight=2 PerfScore 10.50
+G_M22714_IG54:
        cmp      gword ptr [rax+0x10], 0
        jne      G_M22714_IG04
        cmp      gword ptr [rax+0x08], 0
        jne      G_M22714_IG04
-       jmp      G_M22714_IG82
+       jmp      G_M22714_IG81
 						;; size=27 bbWeight=4 PerfScore 40.00
+G_M22714_IG55:
+       mov      qword ptr [rbp-0x78], rcx
+       jmp      SHORT G_M22714_IG53
+						;; size=6 bbWeight=1 PerfScore 3.00
 G_M22714_IG56:
-       mov      qword ptr [rbp-0x58], rcx
-       jmp      SHORT G_M22714_IG54
+       mov      qword ptr [rbp-0x78], rcx
+       jmp      SHORT G_M22714_IG53
 						;; size=6 bbWeight=1 PerfScore 3.00
 G_M22714_IG57:
-       mov      qword ptr [rbp-0x58], rcx
-       jmp      SHORT G_M22714_IG54
-						;; size=6 bbWeight=1 PerfScore 3.00
-G_M22714_IG58:
        cmp      byte  ptr [r15+0x97], 0
-       je       G_M22714_IG82
+       je       G_M22714_IG81
        cmp      dword ptr [rbp-0x34], 1
-       jne      G_M22714_IG82
+       jne      G_M22714_IG81
        mov      rdi, gword ptr [r15+0x88]
        mov      rdi, gword ptr [rdi+0x08]
        mov      edx, dword ptr [rbp-0x38]
        cmp      dword ptr [rdi+0x08], edx
-       jle      SHORT G_M22714_IG60
-       jmp      G_M22714_IG82
+       jle      SHORT G_M22714_IG59
+       jmp      G_M22714_IG81
 						;; size=48 bbWeight=0.50 PerfScore 9.00
-G_M22714_IG59:
-       mov      rdi, gword ptr [rbp-0x70]
+G_M22714_IG58:
+       mov      rdi, gword ptr [rbp-0x90]
        mov      rcx, 0xD1FFAB1E      ; code for Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionIterator:MoveNext():this
        call     [rcx]Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionIterator:MoveNext():this
-						;; size=16 bbWeight=0.50 PerfScore 2.12
-G_M22714_IG60:
+						;; size=19 bbWeight=0.50 PerfScore 2.12
+G_M22714_IG59:
        cmp      dword ptr [rbp-0x3C], 0
-       jne      G_M22714_IG82
+       jne      G_M22714_IG81
 						;; size=10 bbWeight=0.50 PerfScore 1.50
-G_M22714_IG61:
+G_M22714_IG60:
        mov      rdi, gword ptr [r15+0x88]
        mov      rdi, gword ptr [rdi+0x08]
        mov      esi, dword ptr [rdi+0x08]
        dec      esi
        cmp      esi, dword ptr [rdi+0x08]
-       jae      G_M22714_IG84
+       jae      G_M22714_IG83
        mov      rdi, gword ptr [rdi+8*rsi+0x10]
        mov      rsi, rbx
        mov      rdx, r13
        mov      rcx, 0xD1FFAB1E      ; code for Microsoft.CSharp.RuntimeBinder.Semantics.TypeManager:SubstType(Microsoft.CSharp.RuntimeBinder.Semantics.CType,Microsoft.CSharp.RuntimeBinder.Semantics.CType,Microsoft.CSharp.RuntimeBinder.Semantics.TypeArray):Microsoft.CSharp.RuntimeBinder.Semantics.CType
        call     [rcx]Microsoft.CSharp.RuntimeBinder.Semantics.TypeManager:SubstType(Microsoft.CSharp.RuntimeBinder.Semantics.CType,Microsoft.CSharp.RuntimeBinder.Semantics.CType,Microsoft.CSharp.RuntimeBinder.Semantics.TypeArray):Microsoft.CSharp.RuntimeBinder.Semantics.CType
        mov      rbx, rax
        test     rbx, rbx
-       je       G_M22714_IG82
+       je       G_M22714_IG81
 						;; size=60 bbWeight=0.50 PerfScore 8.75
-G_M22714_IG62:
+G_M22714_IG61:
        mov      rdi, 0xD1FFAB1E      ; Microsoft.CSharp.RuntimeBinder.Semantics.ArrayType
        cmp      qword ptr [rbx], rdi
-       jne      G_M22714_IG82
+       jne      G_M22714_IG81
 						;; size=19 bbWeight=0.25 PerfScore 1.06
-G_M22714_IG63:
+G_M22714_IG62:
        cmp      byte  ptr [rbx+0x18], 0
-       je       G_M22714_IG82
+       je       G_M22714_IG81
        mov      r15, gword ptr [rbx+0x10]
        mov      rdi, 0xD1FFAB1E      ; const ptr
        mov      r13, gword ptr [rdi]
        mov      rdi, 0xD1FFAB1E      ; Microsoft.CSharp.RuntimeBinder.Semantics.ExprArrayInit
        call     CORINFO_HELP_NEWSFAST
-       mov      gword ptr [rbp-0x158], rax
+       mov      gword ptr [rbp-0x178], rax
        mov      dword ptr [rax+0x28], 16
        lea      rdi, bword ptr [rax+0x08]
        mov      rsi, rbx
        call     CORINFO_HELP_ASSIGN_REF
        xor      rdi, rdi
-       mov      rbx, gword ptr [rbp-0x158]
+       mov      rbx, gword ptr [rbp-0x178]
        mov      gword ptr [rbx+0x38], rdi
 						;; size=81 bbWeight=0.50 PerfScore 7.75
-G_M22714_IG64:
+G_M22714_IG63:
        mov      gword ptr [rbx+0x40], rdi
        lea      rdi, bword ptr [rbx+0x48]
        mov      rsi, r13
        call     CORINFO_HELP_ASSIGN_REF
        mov      r13, rbx
        mov      byte  ptr [r13+0x31], 1
-       mov      rax, gword ptr [rbp-0x70]
+       mov      rax, gword ptr [rbp-0x90]
        cmp      gword ptr [rax+0x10], 0
-       jne      SHORT G_M22714_IG67
+       jne      SHORT G_M22714_IG66
        cmp      gword ptr [rax+0x08], 0
-       jne      SHORT G_M22714_IG67
+       jne      SHORT G_M22714_IG66
        mov      rdi, gword ptr [rbx+0x48]
        cmp      dword ptr [rdi+0x08], 0
-       jbe      G_M22714_IG84
+       jbe      G_M22714_IG83
        xor      eax, eax
        mov      dword ptr [rdi+0x10], eax
-						;; size=61 bbWeight=0.50 PerfScore 10.12
-G_M22714_IG65:
+						;; size=64 bbWeight=0.50 PerfScore 10.12
+G_M22714_IG64:
        mov      gword ptr [rbx+0x38], rax
        test     r12, r12
-       je       SHORT G_M22714_IG66
+       je       SHORT G_M22714_IG65
        mov      rdi, 0xD1FFAB1E      ; Microsoft.CSharp.RuntimeBinder.Semantics.ExprList
        call     CORINFO_HELP_NEWSFAST
        mov      r14, rax
        mov      dword ptr [r14+0x28], 4
        lea      rdi, bword ptr [r14+0x38]
        mov      rsi, r12
        call     CORINFO_HELP_ASSIGN_REF
        lea      rdi, bword ptr [r14+0x40]
        mov      rsi, rbx
        call     CORINFO_HELP_ASSIGN_REF
 						;; size=59 bbWeight=0.50 PerfScore 4.12
-G_M22714_IG66:
+G_M22714_IG65:
        lea      rdx, [rbp-0x30]
        mov      rdi, rbx
        mov      rsi, bword ptr [rbp+0x10]
        mov      rax, 0xD1FFAB1E      ; code for Microsoft.CSharp.RuntimeBinder.Semantics.ExprFactory:AppendItemToList(Microsoft.CSharp.RuntimeBinder.Semantics.Expr,byref,byref)
        call     [rax]Microsoft.CSharp.RuntimeBinder.Semantics.ExprFactory:AppendItemToList(Microsoft.CSharp.RuntimeBinder.Semantics.Expr,byref,byref)
-       jmp      G_M22714_IG82
+       jmp      G_M22714_IG81
 						;; size=28 bbWeight=0.50 PerfScore 3.50
-G_M22714_IG67:
+G_M22714_IG66:
        xor      rdi, rdi
-       mov      gword ptr [rbp-0x48], rdi
+       mov      gword ptr [rbp-0x60], rdi
 						;; size=6 bbWeight=0.50 PerfScore 0.62
-G_M22714_IG68:
-       mov      gword ptr [rbp-0x50], rdi
+G_M22714_IG67:
+       mov      gword ptr [rbp-0x68], rdi
 						;; size=4 bbWeight=0.50 PerfScore 0.50
-G_M22714_IG69:
+G_M22714_IG68:
        xor      ebx, ebx
-       jmp      G_M22714_IG80
+       jmp      G_M22714_IG79
 						;; size=7 bbWeight=0.50 PerfScore 1.12
-G_M22714_IG70:
+G_M22714_IG69:
        mov      r12, gword ptr [rax+0x10]
        inc      ebx
        test     r12, r12
-       je       G_M22714_IG76
+       je       G_M22714_IG75
 						;; size=15 bbWeight=2 PerfScore 7.00
-G_M22714_IG71:
+G_M22714_IG70:
        mov      rdi, 0xD1FFAB1E      ; Microsoft.CSharp.RuntimeBinder.Semantics.ExprNamedArgumentSpecification
        cmp      qword ptr [r12], rdi
-       jne      G_M22714_IG76
+       jne      G_M22714_IG75
 						;; size=20 bbWeight=1 PerfScore 4.25
-G_M22714_IG72:
+G_M22714_IG71:
        mov      rcx, gword ptr [r12+0x38]
-       mov      gword ptr [rbp-0x160], rcx
+       mov      gword ptr [rbp-0x180], rcx
        mov      rdx, gword ptr [rcx+0x08]
-       mov      gword ptr [rbp-0x178], rdx
+       mov      gword ptr [rbp-0x198], rdx
        mov      rdi, 0xD1FFAB1E      ; Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder+ImplicitConversion
        call     CORINFO_HELP_NEWSFAST
        mov      rdx, rax
-       mov      gword ptr [rbp-0x180], rdx
+       mov      gword ptr [rbp-0x1A0], rdx
        lea      rdi, bword ptr [rdx+0x30]
        mov      rsi, r14
        call     CORINFO_HELP_ASSIGN_BYREF
        movsq    
        lea      rdi, bword ptr [rdx+0x10]
-       mov      rsi, gword ptr [rbp-0x160]
+       mov      rsi, gword ptr [rbp-0x180]
        call     CORINFO_HELP_ASSIGN_REF
-       mov      rax, gword ptr [rbp-0x180]
+       mov      rax, gword ptr [rbp-0x1A0]
        lea      rdi, bword ptr [rax+0x18]
-       mov      rsi, gword ptr [rbp-0x178]
+       mov      rsi, gword ptr [rbp-0x198]
        call     CORINFO_HELP_ASSIGN_REF
-       mov      rax, gword ptr [rbp-0x180]
+       mov      rax, gword ptr [rbp-0x1A0]
        lea      rdi, bword ptr [rax+0x20]
        mov      rsi, r15
        call     CORINFO_HELP_ASSIGN_REF
-       mov      rax, gword ptr [rbp-0x180]
+       mov      rax, gword ptr [rbp-0x1A0]
        mov      byte  ptr [rax+0x2C], 1
        xor      edi, edi
        mov      dword ptr [rax+0x28], edi
 						;; size=136 bbWeight=2 PerfScore 46.50
-G_M22714_IG73:
+G_M22714_IG72:
        mov      gword ptr [rax+0x08], rdi
        mov      rdi, rax
        mov      rcx, 0xD1FFAB1E      ; code for Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder+ImplicitConversion:Bind():ubyte:this
        call     [rcx]Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder+ImplicitConversion:Bind():ubyte:this
-       mov      rdi, gword ptr [rbp-0x180]
+       mov      rdi, gword ptr [rbp-0x1A0]
        mov      rcx, gword ptr [rdi+0x08]
-       mov      gword ptr [rbp-0x170], rcx
+       mov      gword ptr [rbp-0x190], rcx
        test     eax, eax
-       je       SHORT G_M22714_IG74
-       mov      rdi, gword ptr [rbp-0x160]
+       je       SHORT G_M22714_IG73
+       mov      rdi, gword ptr [rbp-0x180]
        mov      rdi, gword ptr [rdi+0x08]
        mov      rax, 0xD1FFAB1E      ; code for Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder:CheckUnsafe(Microsoft.CSharp.RuntimeBinder.Semantics.CType)
        call     [rax]Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder:CheckUnsafe(Microsoft.CSharp.RuntimeBinder.Semantics.CType)
        mov      rdi, r15
        mov      rax, 0xD1FFAB1E      ; code for Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder:CheckUnsafe(Microsoft.CSharp.RuntimeBinder.Semantics.CType)
        call     [rax]Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder:CheckUnsafe(Microsoft.CSharp.RuntimeBinder.Semantics.CType)
-       mov      rax, gword ptr [rbp-0x170]
-       jmp      SHORT G_M22714_IG75
+       mov      rax, gword ptr [rbp-0x190]
+       jmp      SHORT G_M22714_IG74
 						;; size=88 bbWeight=2 PerfScore 45.00
-G_M22714_IG74:
+G_M22714_IG73:
        xor      rax, rax
 						;; size=2 bbWeight=2 PerfScore 0.50
-G_M22714_IG75:
+G_M22714_IG74:
        lea      rdi, bword ptr [r12+0x38]
-       mov      gword ptr [rbp-0x168], rax
+       mov      gword ptr [rbp-0x188], rax
        mov      rsi, rax
        call     CORINFO_HELP_ASSIGN_REF
-       mov      rsi, gword ptr [rbp-0x168]
+       mov      rsi, gword ptr [rbp-0x188]
        mov      rsi, gword ptr [rsi+0x08]
        lea      rdi, bword ptr [r12+0x08]
        call     CORINFO_HELP_ASSIGN_REF
-       jmp      G_M22714_IG79
+       jmp      G_M22714_IG78
 						;; size=46 bbWeight=2 PerfScore 18.50
-G_M22714_IG76:
+G_M22714_IG75:
        mov      rcx, gword ptr [r12+0x08]
-       mov      gword ptr [rbp-0x190], rcx
+       mov      gword ptr [rbp-0x1B0], rcx
        mov      rdi, 0xD1FFAB1E      ; Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder+ImplicitConversion
        call     CORINFO_HELP_NEWSFAST
        mov      rdx, rax
-       mov      gword ptr [rbp-0x198], rdx
+       mov      gword ptr [rbp-0x1B8], rdx
        lea      rdi, bword ptr [rdx+0x30]
        mov      rsi, r14
        call     CORINFO_HELP_ASSIGN_BYREF
        movsq    
        lea      rdi, bword ptr [rdx+0x10]
        mov      rsi, r12
        call     CORINFO_HELP_ASSIGN_REF
-       mov      rax, gword ptr [rbp-0x198]
+       mov      rax, gword ptr [rbp-0x1B8]
        lea      rdi, bword ptr [rax+0x18]
-       mov      rsi, gword ptr [rbp-0x190]
+       mov      rsi, gword ptr [rbp-0x1B0]
        call     CORINFO_HELP_ASSIGN_REF
-       mov      rax, gword ptr [rbp-0x198]
+       mov      rax, gword ptr [rbp-0x1B8]
        lea      rdi, bword ptr [rax+0x20]
        mov      rsi, r15
        call     CORINFO_HELP_ASSIGN_REF
-       mov      rax, gword ptr [rbp-0x198]
+       mov      rax, gword ptr [rbp-0x1B8]
        mov      byte  ptr [rax+0x2C], 1
        xor      edi, edi
        mov      dword ptr [rax+0x28], edi
 						;; size=121 bbWeight=2 PerfScore 39.00
-G_M22714_IG77:
+G_M22714_IG76:
        mov      gword ptr [rax+0x08], rdi
        mov      rdi, rax
        mov      rcx, 0xD1FFAB1E      ; code for Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder+ImplicitConversion:Bind():ubyte:this
        call     [rcx]Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder+ImplicitConversion:Bind():ubyte:this
-       mov      rdi, gword ptr [rbp-0x198]
+       mov      rdi, gword ptr [rbp-0x1B8]
        mov      rcx, gword ptr [rdi+0x08]
-       mov      gword ptr [rbp-0x188], rcx
+       mov      gword ptr [rbp-0x1A8], rcx
        test     eax, eax
-       je       SHORT G_M22714_IG78
+       je       SHORT G_M22714_IG77
        mov      rdi, gword ptr [r12+0x08]
        mov      rax, 0xD1FFAB1E      ; code for Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder:CheckUnsafe(Microsoft.CSharp.RuntimeBinder.Semantics.CType)
        call     [rax]Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder:CheckUnsafe(Microsoft.CSharp.RuntimeBinder.Semantics.CType)
        mov      rdi, r15
        mov      rax, 0xD1FFAB1E      ; code for Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder:CheckUnsafe(Microsoft.CSharp.RuntimeBinder.Semantics.CType)
        call     [rax]Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder:CheckUnsafe(Microsoft.CSharp.RuntimeBinder.Semantics.CType)
-       mov      r12, gword ptr [rbp-0x188]
-       jmp      SHORT G_M22714_IG79
+       mov      r12, gword ptr [rbp-0x1A8]
+       jmp      SHORT G_M22714_IG78
 						;; size=82 bbWeight=2 PerfScore 43.00
-G_M22714_IG78:
+G_M22714_IG77:
        xor      r12, r12
 						;; size=3 bbWeight=2 PerfScore 0.50
-G_M22714_IG79:
-       lea      rdx, [rbp-0x50]
-       lea      rsi, [rbp-0x48]
+G_M22714_IG78:
+       lea      rdx, [rbp-0x68]
+       lea      rsi, [rbp-0x60]
        mov      rdi, r12
        mov      rax, 0xD1FFAB1E      ; code for Microsoft.CSharp.RuntimeBinder.Semantics.ExprFactory:AppendItemToList(Microsoft.CSharp.RuntimeBinder.Semantics.Expr,byref,byref)
        call     [rax]Microsoft.CSharp.RuntimeBinder.Semantics.ExprFactory:AppendItemToList(Microsoft.CSharp.RuntimeBinder.Semantics.Expr,byref,byref)
-       mov      rdi, gword ptr [rbp-0x70]
+       mov      rdi, gword ptr [rbp-0x90]
        mov      rax, 0xD1FFAB1E      ; code for Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionIterator:MoveNext():this
        call     [rax]Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionIterator:MoveNext():this
-       mov      rax, gword ptr [rbp-0x70]
-						;; size=43 bbWeight=2 PerfScore 19.50
-G_M22714_IG80:
+       mov      rax, gword ptr [rbp-0x90]
+						;; size=49 bbWeight=2 PerfScore 19.50
+G_M22714_IG79:
        cmp      gword ptr [rax+0x10], 0
-       jne      G_M22714_IG70
+       jne      G_M22714_IG69
        cmp      gword ptr [rax+0x08], 0
-       jne      G_M22714_IG70
+       jne      G_M22714_IG69
 						;; size=22 bbWeight=4 PerfScore 32.00
-G_M22714_IG81:
+G_M22714_IG80:
        mov      rdi, gword ptr [r13+0x48]
        cmp      dword ptr [rdi+0x08], 0
-       jbe      SHORT G_M22714_IG84
+       jbe      SHORT G_M22714_IG83
        mov      dword ptr [rdi+0x10], ebx
-       mov      rsi, gword ptr [rbp-0x48]
+       mov      rsi, gword ptr [rbp-0x60]
        lea      rdi, bword ptr [r13+0x38]
        call     CORINFO_HELP_ASSIGN_REF
        lea      rdx, [rbp-0x30]
        mov      rdi, r13
        mov      rsi, bword ptr [rbp+0x10]
        mov      rax, 0xD1FFAB1E      ; code for Microsoft.CSharp.RuntimeBinder.Semantics.ExprFactory:AppendItemToList(Microsoft.CSharp.RuntimeBinder.Semantics.Expr,byref,byref)
        call     [rax]Microsoft.CSharp.RuntimeBinder.Semantics.ExprFactory:AppendItemToList(Microsoft.CSharp.RuntimeBinder.Semantics.Expr,byref,byref)
 						;; size=49 bbWeight=0.50 PerfScore 7.25
-G_M22714_IG82:
+G_M22714_IG81:
        nop      
 						;; size=1 bbWeight=1 PerfScore 0.25
-G_M22714_IG83:
-       add      rsp, 376
+G_M22714_IG82:
+       add      rsp, 408
        pop      rbx
        pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
 						;; size=18 bbWeight=1 PerfScore 4.25
-G_M22714_IG84:
+G_M22714_IG83:
        call     CORINFO_HELP_RNGCHKFAIL
        int3     
 						;; size=6 bbWeight=0 PerfScore 0.00
-G_M22714_IG85:
+G_M22714_IG84:
        mov      rax, 0xD1FFAB1E      ; code for CORINFO_HELP_CHKCASTCLASS
        call     [rax]CORINFO_HELP_CHKCASTCLASS
        int3     
 						;; size=13 bbWeight=0 PerfScore 0.00
 
-; Total bytes of code 3252, prolog size 60, PerfScore 1813.40, instruction count 717, allocated bytes for code 3252 (MethodHash=36dea745) for method Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder:AdjustCallArgumentsForParams(Microsoft.CSharp.RuntimeBinder.Semantics.CType,Microsoft.CSharp.RuntimeBinder.Semantics.CType,Microsoft.CSharp.RuntimeBinder.Semantics.MethodOrPropertySymbol,Microsoft.CSharp.RuntimeBinder.Semantics.TypeArray,Microsoft.CSharp.RuntimeBinder.Semantics.Expr,byref):this (FullOpts)
+; Total bytes of code 3390, prolog size 50, PerfScore 1624.40, instruction count 729, allocated bytes for code 3390 (MethodHash=36dea745) for method Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder:AdjustCallArgumentsForParams(Microsoft.CSharp.RuntimeBinder.Semantics.CType,Microsoft.CSharp.RuntimeBinder.Semantics.CType,Microsoft.CSharp.RuntimeBinder.Semantics.MethodOrPropertySymbol,Microsoft.CSharp.RuntimeBinder.Semantics.TypeArray,Microsoft.CSharp.RuntimeBinder.Semantics.Expr,byref):this (FullOpts)
138 (12.84 % of base) - Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteChain:AppendResolutionPath(System.Text.StringBuilder,Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceIdentifier):this
 ; Assembly listing for method Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteChain:AppendResolutionPath(System.Text.StringBuilder,Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceIdentifier):this (FullOpts)
 ; Emitting BLENDED_CODE for X64 with AVX - Unix
 ; FullOpts code
 ; optimized code
 ; rbp based frame
 ; partially interruptible
 ; No PGO data
-; 0 inlinees with PGO data; 20 single block inlinees; 16 inlinees without PGO data
+; 0 inlinees with PGO data; 20 single block inlinees; 14 inlinees without PGO data
 ; Final local variable assignments
 ;
-;  V00 this         [V00,T30] (  3,  3   )     ref  ->  r14         this class-hnd single-def <Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteChain>
-;  V01 arg1         [V01,T00] ( 21, 40.50)     ref  ->  rbx         class-hnd single-def <System.Text.StringBuilder>
+;  V00 this         [V00,T21] (  3,  3   )     ref  ->  r15         this class-hnd single-def <Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteChain>
+;  V01 arg1         [V01,T00] ( 21, 41.50)     ref  ->  rbx         class-hnd single-def <System.Text.StringBuilder>
 ;* V02 arg2         [V02    ] (  0,  0   )  struct (16) zero-ref    multireg-arg ld-addr-op single-def <Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceIdentifier>
 ;* V03 loc0         [V03    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact single-def <System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceIdentifier,Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteChain+ChainItemInfo]]>
-;* V04 loc1         [V04    ] (  0,  0   )  struct (48) zero-ref    do-not-enreg[SF] ld-addr-op <System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceIdentifier,Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteChain+ChainItemInfo]]>
+;  V04 loc1         [V04    ] (  8, 17   )  struct (48) [rbp-0x50]  do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceIdentifier,Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteChain+ChainItemInfo]]>
 ;* V05 loc2         [V05    ] (  0,  0   )  struct (32) zero-ref    do-not-enreg[S] ld-addr-op <System.Collections.Generic.KeyValuePair`2[Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceIdentifier,Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteChain+ChainItemInfo]>
 ;* V06 loc3         [V06    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op <Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceIdentifier>
 ;* V07 loc4         [V07    ] (  0,  0   )     ref  ->  zero-ref    class-hnd <System.Type>
 ;* V08 loc5         [V08    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op <Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteChain+ChainItemInfo>
 ;# V09 OutArgs      [V09    ] (  1,  1   )  struct ( 0) [rsp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-;  V10 tmp1         [V10,T14] (  5, 10   )     ref  ->  r13         class-hnd exact single-def "NewObj constructor temp" <System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceIdentifier,Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteChain+ChainItemInfo]]>
-;  V11 tmp2         [V11,T31] (  2,  4   )     ref  ->  rsi         class-hnd single-def "dup spill" <System.Comparison`1[System.Collections.Generic.KeyValuePair`2[Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceIdentifier,Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteChain+ChainItemInfo]]>
+;  V10 tmp1         [V10,T07] (  5, 10   )     ref  ->  r13         class-hnd exact single-def "NewObj constructor temp" <System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceIdentifier,Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteChain+ChainItemInfo]]>
+;  V11 tmp2         [V11,T22] (  2,  4   )     ref  ->  rsi         class-hnd single-def "dup spill" <System.Comparison`1[System.Collections.Generic.KeyValuePair`2[Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceIdentifier,Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteChain+ChainItemInfo]]>
 ;* V12 tmp3         [V12    ] (  0,  0   )     ref  ->  zero-ref    single-def
-;  V13 tmp4         [V13,T38] (  4,  3.50)     ref  ->  rsi        
+;  V13 tmp4         [V13,T31] (  4,  3.50)     ref  ->  rsi        
 ;* V14 tmp5         [V14    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "impAppendStmt" <System.Text.StringBuilder>
-;  V15 tmp6         [V15,T29] (  5,  5   )     ref  ->  r14         class-hnd exact single-def "NewObj constructor temp" <System.Comparison`1[System.Collections.Generic.KeyValuePair`2[Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceIdentifier,Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteChain+ChainItemInfo]]>
-;  V16 tmp7         [V16,T39] (  3,  3   )     ref  ->  rsi         class-hnd exact single-def "Inlining Arg" <Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteChain+<>c>
-;* V17 tmp8         [V17    ] (  0,  0   )  struct (48) zero-ref    do-not-enreg[SF] ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceIdentifier,Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteChain+ChainItemInfo]]>
+;  V15 tmp6         [V15,T20] (  5,  5   )     ref  ->  r15         class-hnd exact single-def "NewObj constructor temp" <System.Comparison`1[System.Collections.Generic.KeyValuePair`2[Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceIdentifier,Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteChain+ChainItemInfo]]>
+;  V16 tmp7         [V16,T32] (  3,  3   )     ref  ->  rsi         class-hnd exact single-def "Inlining Arg" <Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteChain+<>c>
+;  V17 tmp8         [V17,T28] (  2,  4   )  struct (48) [rbp-0x80]  do-not-enreg[SF] must-init ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceIdentifier,Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteChain+ChainItemInfo]]>
 ;* V18 tmp9         [V18    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline return value spill temp" <System.String>
-;  V19 tmp10        [V19    ] (  6, 12   )     ref  ->  [rbp-0x30]  do-not-enreg[X] must-init addr-exposed ld-addr-op class-hnd "Inline stloc first use temp" <System.Text.StringBuilder>
+;  V19 tmp10        [V19    ] (  6, 12   )     ref  ->  [rbp-0x88]  do-not-enreg[X] must-init addr-exposed ld-addr-op class-hnd "Inline stloc first use temp" <System.Text.StringBuilder>
 ;* V20 tmp11        [V20    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <System.Type>
 ;* V21 tmp12        [V21    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "NewObj constructor temp" <Microsoft.Extensions.Internal.TypeNameHelper+DisplayNameOptions>
-;  V22 tmp13        [V22    ] (  6, 12   )  struct ( 8) [rbp-0x38]  do-not-enreg[XS] must-init addr-exposed ld-addr-op "Inline stloc first use temp" <Microsoft.Extensions.Internal.TypeNameHelper+DisplayNameOptions>
-;  V23 tmp14        [V23,T32] (  2,  4   )     ref  ->  rax         class-hnd exact "Inline stloc first use temp" <System.String>
-;  V24 tmp15        [V24,T06] (  8, 16   )     ref  ->  rax        
-;  V25 tmp16        [V25,T19] (  3,  6   )     ref  ->  rax        
+;  V22 tmp13        [V22    ] (  6, 12   )  struct ( 8) [rbp-0x90]  do-not-enreg[XS] must-init addr-exposed ld-addr-op "Inline stloc first use temp" <Microsoft.Extensions.Internal.TypeNameHelper+DisplayNameOptions>
+;  V23 tmp14        [V23,T23] (  2,  4   )     ref  ->  rax         class-hnd exact "Inline stloc first use temp" <System.String>
+;  V24 tmp15        [V24,T01] (  8, 16   )     ref  ->  rax        
+;  V25 tmp16        [V25,T11] (  3,  6   )     ref  ->  rax        
 ;* V26 tmp17        [V26    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline return value spill temp" <System.String>
-;  V27 tmp18        [V27    ] (  6, 12   )     ref  ->  [rbp-0x40]  do-not-enreg[X] must-init addr-exposed ld-addr-op class-hnd "Inline stloc first use temp" <System.Text.StringBuilder>
+;  V27 tmp18        [V27    ] (  6, 12   )     ref  ->  [rbp-0x98]  do-not-enreg[X] must-init addr-exposed ld-addr-op class-hnd "Inline stloc first use temp" <System.Text.StringBuilder>
 ;* V28 tmp19        [V28    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <System.Type>
 ;* V29 tmp20        [V29    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "NewObj constructor temp" <Microsoft.Extensions.Internal.TypeNameHelper+DisplayNameOptions>
-;  V30 tmp21        [V30    ] (  6, 12   )  struct ( 8) [rbp-0x48]  do-not-enreg[XS] must-init addr-exposed ld-addr-op "Inline stloc first use temp" <Microsoft.Extensions.Internal.TypeNameHelper+DisplayNameOptions>
-;  V31 tmp22        [V31,T33] (  2,  4   )     ref  ->  rax         class-hnd exact "Inline stloc first use temp" <System.String>
-;  V32 tmp23        [V32,T07] (  8, 16   )     ref  ->  rax        
-;  V33 tmp24        [V33,T20] (  3,  6   )     ref  ->  rax        
-;  V34 tmp25        [V34,T25] (  3,  6   )     int  ->  rsi         "Inline stloc first use temp"
-;  V35 tmp26        [V35,T21] (  3,  6   )     ref  ->  rax         class-hnd "Inline stloc first use temp" <ushort[]>
+;  V30 tmp21        [V30    ] (  6, 12   )  struct ( 8) [rbp-0xA0]  do-not-enreg[XS] must-init addr-exposed ld-addr-op "Inline stloc first use temp" <Microsoft.Extensions.Internal.TypeNameHelper+DisplayNameOptions>
+;  V31 tmp22        [V31,T24] (  2,  4   )     ref  ->  rax         class-hnd exact "Inline stloc first use temp" <System.String>
+;  V32 tmp23        [V32,T02] (  8, 16   )     ref  ->  rax        
+;  V33 tmp24        [V33,T12] (  3,  6   )     ref  ->  rax        
+;  V34 tmp25        [V34,T16] (  3,  6   )     int  ->  rsi         "Inline stloc first use temp"
+;  V35 tmp26        [V35,T13] (  3,  6   )     ref  ->  rax         class-hnd "Inline stloc first use temp" <ushort[]>
 ;* V36 tmp27        [V36    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline return value spill temp" <System.String>
-;  V37 tmp28        [V37    ] (  6, 12   )     ref  ->  [rbp-0x50]  do-not-enreg[X] must-init addr-exposed ld-addr-op class-hnd "Inline stloc first use temp" <System.Text.StringBuilder>
+;  V37 tmp28        [V37    ] (  6, 12   )     ref  ->  [rbp-0xA8]  do-not-enreg[X] must-init addr-exposed ld-addr-op class-hnd "Inline stloc first use temp" <System.Text.StringBuilder>
 ;* V38 tmp29        [V38    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "NewObj constructor temp" <Microsoft.Extensions.Internal.TypeNameHelper+DisplayNameOptions>
-;  V39 tmp30        [V39    ] (  6, 12   )  struct ( 8) [rbp-0x58]  do-not-enreg[XS] must-init addr-exposed ld-addr-op "Inline stloc first use temp" <Microsoft.Extensions.Internal.TypeNameHelper+DisplayNameOptions>
-;  V40 tmp31        [V40,T34] (  2,  4   )     ref  ->  rax         class-hnd exact "Inline stloc first use temp" <System.String>
-;  V41 tmp32        [V41,T08] (  8, 16   )     ref  ->  rax        
-;  V42 tmp33        [V42,T22] (  3,  6   )     ref  ->  rax        
+;  V39 tmp30        [V39    ] (  6, 12   )  struct ( 8) [rbp-0xB0]  do-not-enreg[XS] must-init addr-exposed ld-addr-op "Inline stloc first use temp" <Microsoft.Extensions.Internal.TypeNameHelper+DisplayNameOptions>
+;  V40 tmp31        [V40,T25] (  2,  4   )     ref  ->  rax         class-hnd exact "Inline stloc first use temp" <System.String>
+;  V41 tmp32        [V41,T03] (  8, 16   )     ref  ->  rax        
+;  V42 tmp33        [V42,T14] (  3,  6   )     ref  ->  rax        
 ;* V43 tmp34        [V43    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inline return value spill temp" <System.Text.StringBuilder>
-;  V44 tmp35        [V44,T26] (  3,  6   )     int  ->  rsi         "Inline stloc first use temp"
-;  V45 tmp36        [V45,T23] (  3,  6   )     ref  ->  rax         class-hnd "Inline stloc first use temp" <ushort[]>
-;  V46 tmp37        [V46,T24] (  3,  6   )     ref  ->  rdi         class-hnd "Inline stloc first use temp" <ushort[]>
-;  V47 tmp38        [V47,T16] (  4,  8   )     int  ->  rdx         "Inline stloc first use temp"
-;  V48 tmp39        [V48,T12] (  3, 12   )   byref  ->  rsi         "Inlining Arg"
-;  V49 tmp40        [V49,T35] (  2,  4   )   byref  ->  rdi         "Inline stloc first use temp"
-;* V50 tmp41        [V50,T17] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;* V51 tmp42        [V51    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline stloc first use temp" <System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceIdentifier,Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteChain+ChainItemInfo]]>
-;  V52 tmp43        [V52,T04] (  4, 18   )     ref  ->  rsi         class-hnd exact single-def "Inlining Arg" <System.String>
-;  V53 tmp44        [V53,T40] (  1,  1   )     ref  ->  rdx         single-def "field V02.<ServiceKey>k__BackingField (fldOffset=0x0)" P-INDEP
-;  V54 tmp45        [V54,T18] (  2,  5   )     ref  ->  r15         single-def "field V02.<ServiceType>k__BackingField (fldOffset=0x8)" P-INDEP
-;* V55 tmp46        [V55    ] (  0,  0   )     ref  ->  zero-ref    "field V06.<ServiceKey>k__BackingField (fldOffset=0x0)" P-INDEP
-;* V56 tmp47        [V56    ] (  0,  0   )     ref  ->  zero-ref    "field V06.<ServiceType>k__BackingField (fldOffset=0x8)" P-INDEP
-;* V57 tmp48        [V57    ] (  0,  0   )     ref  ->  zero-ref    "field V08.<ImplementationType>k__BackingField (fldOffset=0x0)" P-INDEP
-;* V58 tmp49        [V58    ] (  0,  0   )     int  ->  zero-ref    "field V08.<Order>k__BackingField (fldOffset=0x8)" P-INDEP
-;* V59 tmp50        [V59,T42] (  0,  0   )   ubyte  ->  zero-ref    "field V21.<FullName>k__BackingField (fldOffset=0x0)" P-INDEP
-;* V60 tmp51        [V60,T43] (  0,  0   )   ubyte  ->  zero-ref    "field V21.<IncludeGenericParameters>k__BackingField (fldOffset=0x1)" P-INDEP
-;* V61 tmp52        [V61,T44] (  0,  0   )   ubyte  ->  zero-ref    "field V21.<IncludeGenericParameterNames>k__BackingField (fldOffset=0x2)" P-INDEP
-;* V62 tmp53        [V62,T45] (  0,  0   )  ushort  ->  zero-ref    "field V21.<NestedTypeDelimiter>k__BackingField (fldOffset=0x4)" P-INDEP
-;* V63 tmp54        [V63,T46] (  0,  0   )   ubyte  ->  zero-ref    "field V29.<FullName>k__BackingField (fldOffset=0x0)" P-INDEP
-;* V64 tmp55        [V64,T47] (  0,  0   )   ubyte  ->  zero-ref    "field V29.<IncludeGenericParameters>k__BackingField (fldOffset=0x1)" P-INDEP
-;* V65 tmp56        [V65,T48] (  0,  0   )   ubyte  ->  zero-ref    "field V29.<IncludeGenericParameterNames>k__BackingField (fldOffset=0x2)" P-INDEP
-;* V66 tmp57        [V66,T49] (  0,  0   )  ushort  ->  zero-ref    "field V29.<NestedTypeDelimiter>k__BackingField (fldOffset=0x4)" P-INDEP
-;* V67 tmp58        [V67,T50] (  0,  0   )   ubyte  ->  zero-ref    "field V38.<FullName>k__BackingField (fldOffset=0x0)" P-INDEP
-;* V68 tmp59        [V68,T51] (  0,  0   )   ubyte  ->  zero-ref    "field V38.<IncludeGenericParameters>k__BackingField (fldOffset=0x1)" P-INDEP
-;* V69 tmp60        [V69,T52] (  0,  0   )   ubyte  ->  zero-ref    "field V38.<IncludeGenericParameterNames>k__BackingField (fldOffset=0x2)" P-INDEP
-;* V70 tmp61        [V70,T53] (  0,  0   )  ushort  ->  zero-ref    "field V38.<NestedTypeDelimiter>k__BackingField (fldOffset=0x4)" P-INDEP
-;  V71 tmp62        [V71,T05] (  4, 17   )     ref  ->  r13         single-def "V04.[000..008)"
-;  V72 tmp63        [V72,T01] (  6, 21   )     int  ->  r12         "V04.[008..012)"
-;  V73 tmp64        [V73,T15] (  2,  9   )     int  ->  r14         single-def "V04.[012..016)"
-;* V74 tmp65        [V74    ] (  0,  0   )     ref  ->  zero-ref    "V04.[016..024)"
-;  V75 tmp66        [V75,T10] (  4, 10   )     ref  ->  [rbp-0x60]  spill-single-def "V04.[024..032)"
-;  V76 tmp67        [V76,T11] (  4, 10   )     ref  ->  [rbp-0x68]  spill-single-def "V04.[032..040)"
-;* V77 tmp68        [V77    ] (  0,  0   )     int  ->  zero-ref    "V04.[040..044)"
-;* V78 tmp69        [V78    ] (  0,  0   )     ref  ->  zero-ref    single-def "V17.[000..008)"
-;* V79 tmp70        [V79    ] (  0,  0   )     int  ->  zero-ref    single-def "V17.[008..012)"
-;  V80 tmp71        [V80,T41] (  2,  2   )     int  ->  r14         single-def "V17.[012..016)"
-;* V81 tmp72        [V81    ] (  0,  0   )     ref  ->  zero-ref    single-def "V17.[016..024)"
-;* V82 tmp73        [V82    ] (  0,  0   )     ref  ->  zero-ref    single-def "V17.[024..032)"
-;* V83 tmp74        [V83    ] (  0,  0   )     ref  ->  zero-ref    single-def "V17.[032..040)"
-;* V84 tmp75        [V84    ] (  0,  0   )     int  ->  zero-ref    single-def "V17.[040..044)"
-;* V85 tmp76        [V85    ] (  0,  0   )     ref  ->  zero-ref    "V05.[000..008)"
-;* V86 tmp77        [V86    ] (  0,  0   )     ref  ->  zero-ref    "V05.[008..016)"
-;* V87 tmp78        [V87    ] (  0,  0   )     ref  ->  zero-ref    "V05.[016..024)"
-;* V88 tmp79        [V88    ] (  0,  0   )     int  ->  zero-ref    "V05.[024..028)"
-;  V89 tmp80        [V89,T02] (  3, 24   )   byref  ->  rdi         "Spilling address for field-by-field copy"
-;  V90 tmp81        [V90,T03] (  3, 24   )     ref  ->  rdi         "arr expr"
-;* V91 cse0         [V91,T54] (  0,  0   )    long  ->  zero-ref    "CSE #01: conservative"
-;  V92 cse1         [V92,T13] (  2,  8   )     int  ->  rdi         "CSE #10: moderate"
-;  V93 cse2         [V93,T09] (  2, 16   )     int  ->  rdi         "CSE #09: aggressive"
-;  V94 cse3         [V94,T27] (  3,  6   )     int  ->  rdi         "CSE #05: moderate"
-;  V95 cse4         [V95,T28] (  3,  6   )     int  ->  rdi         "CSE #07: moderate"
-;  V96 cse5         [V96,T36] (  2,  4   )     int  ->  rcx         "CSE #04: moderate"
-;  V97 cse6         [V97,T37] (  2,  4   )     int  ->  rcx         "CSE #06: moderate"
+;  V44 tmp35        [V44,T17] (  3,  6   )     int  ->  rsi         "Inline stloc first use temp"
+;  V45 tmp36        [V45,T15] (  3,  6   )     ref  ->  rax         class-hnd "Inline stloc first use temp" <ushort[]>
+;  V46 tmp37        [V46,T09] (  3, 10   )     ref  ->  rdi         class-hnd "Inline stloc first use temp" <ushort[]>
+;  V47 tmp38        [V47,T06] (  4, 12   )     int  ->  rdx         "Inline stloc first use temp"
+;  V48 tmp39        [V48,T04] (  3, 16   )   byref  ->  rsi         "Inlining Arg"
+;  V49 tmp40        [V49,T26] (  2,  4   )   byref  ->  rdi         "Inline stloc first use temp"
+;  V50 tmp41        [V50,T10] (  4,  6   )     ref  ->  rsi         class-hnd exact single-def "Inlining Arg" <System.String>
+;  V51 tmp42        [V51,T33] (  1,  1   )     ref  ->  rdx         single-def "field V02.<ServiceKey>k__BackingField (fldOffset=0x0)" P-INDEP
+;  V52 tmp43        [V52,T27] (  2,  2   )     ref  ->  r14         single-def "field V02.<ServiceType>k__BackingField (fldOffset=0x8)" P-INDEP
+;* V53 tmp44        [V53    ] (  0,  0   )     ref  ->  zero-ref    "field V06.<ServiceKey>k__BackingField (fldOffset=0x0)" P-INDEP
+;* V54 tmp45        [V54    ] (  0,  0   )     ref  ->  zero-ref    "field V06.<ServiceType>k__BackingField (fldOffset=0x8)" P-INDEP
+;* V55 tmp46        [V55    ] (  0,  0   )     ref  ->  zero-ref    "field V08.<ImplementationType>k__BackingField (fldOffset=0x0)" P-INDEP
+;* V56 tmp47        [V56    ] (  0,  0   )     int  ->  zero-ref    "field V08.<Order>k__BackingField (fldOffset=0x8)" P-INDEP
+;* V57 tmp48        [V57,T35] (  0,  0   )   ubyte  ->  zero-ref    "field V21.<FullName>k__BackingField (fldOffset=0x0)" P-INDEP
+;* V58 tmp49        [V58,T36] (  0,  0   )   ubyte  ->  zero-ref    "field V21.<IncludeGenericParameters>k__BackingField (fldOffset=0x1)" P-INDEP
+;* V59 tmp50        [V59,T37] (  0,  0   )   ubyte  ->  zero-ref    "field V21.<IncludeGenericParameterNames>k__BackingField (fldOffset=0x2)" P-INDEP
+;* V60 tmp51        [V60,T38] (  0,  0   )  ushort  ->  zero-ref    "field V21.<NestedTypeDelimiter>k__BackingField (fldOffset=0x4)" P-INDEP
+;* V61 tmp52        [V61,T39] (  0,  0   )   ubyte  ->  zero-ref    "field V29.<FullName>k__BackingField (fldOffset=0x0)" P-INDEP
+;* V62 tmp53        [V62,T40] (  0,  0   )   ubyte  ->  zero-ref    "field V29.<IncludeGenericParameters>k__BackingField (fldOffset=0x1)" P-INDEP
+;* V63 tmp54        [V63,T41] (  0,  0   )   ubyte  ->  zero-ref    "field V29.<IncludeGenericParameterNames>k__BackingField (fldOffset=0x2)" P-INDEP
+;* V64 tmp55        [V64,T42] (  0,  0   )  ushort  ->  zero-ref    "field V29.<NestedTypeDelimiter>k__BackingField (fldOffset=0x4)" P-INDEP
+;* V65 tmp56        [V65,T43] (  0,  0   )   ubyte  ->  zero-ref    "field V38.<FullName>k__BackingField (fldOffset=0x0)" P-INDEP
+;* V66 tmp57        [V66,T44] (  0,  0   )   ubyte  ->  zero-ref    "field V38.<IncludeGenericParameters>k__BackingField (fldOffset=0x1)" P-INDEP
+;* V67 tmp58        [V67,T45] (  0,  0   )   ubyte  ->  zero-ref    "field V38.<IncludeGenericParameterNames>k__BackingField (fldOffset=0x2)" P-INDEP
+;* V68 tmp59        [V68,T46] (  0,  0   )  ushort  ->  zero-ref    "field V38.<NestedTypeDelimiter>k__BackingField (fldOffset=0x4)" P-INDEP
+;* V69 tmp60        [V69    ] (  0,  0   )     ref  ->  zero-ref    single-def "V17.[000..008)"
+;* V70 tmp61        [V70    ] (  0,  0   )     int  ->  zero-ref    single-def "V17.[008..012)"
+;  V71 tmp62        [V71,T34] (  2,  2   )     int  ->  rdi         single-def "V17.[012..016)"
+;* V72 tmp63        [V72    ] (  0,  0   )     ref  ->  zero-ref    "V05.[000..008)"
+;  V73 tmp64        [V73,T08] (  4, 10   )     ref  ->  r13         "V05.[008..016)"
+;  V74 tmp65        [V74,T05] (  4, 12   )     ref  ->  r15         "V05.[016..024)"
+;* V75 tmp66        [V75    ] (  0,  0   )     int  ->  zero-ref    "V05.[024..028)"
+;* V76 cse0         [V76,T47] (  0,  0   )    long  ->  zero-ref    "CSE #01: conservative"
+;  V77 cse1         [V77,T18] (  3,  6   )     int  ->  rdi         "CSE #05: moderate"
+;  V78 cse2         [V78,T19] (  3,  6   )     int  ->  rdi         "CSE #07: moderate"
+;  V79 cse3         [V79,T29] (  2,  4   )     int  ->  rcx         "CSE #04: moderate"
+;  V80 cse4         [V80,T30] (  2,  4   )     int  ->  rcx         "CSE #06: moderate"
 ;
-; Lcl frame size = 72
+; Lcl frame size = 144
 
 G_M63242_IG01:
        push     rbp
        push     r15
        push     r14
        push     r13
-       push     r12
        push     rbx
-       sub      rsp, 72
-       lea      rbp, [rsp+0x70]
-       xor      eax, eax
-       mov      qword ptr [rbp-0x58], rax
+       sub      rsp, 144
+       lea      rbp, [rsp+0xB0]
        vxorps   xmm8, xmm8, xmm8
+       vmovdqu  ymmword ptr [rbp-0xB0], ymm8
+       vmovdqu  ymmword ptr [rbp-0x90], ymm8
+       vmovdqu  ymmword ptr [rbp-0x70], ymm8
        vmovdqu  ymmword ptr [rbp-0x50], ymm8
-       mov      qword ptr [rbp-0x30], rax
-       mov      r14, rdi
+       vmovdqa  xmmword ptr [rbp-0x30], xmm8
+       mov      r15, rdi
        mov      rbx, rsi
-       mov      r15, rcx
-						;; size=48 bbWeight=1 PerfScore 12.08
+       mov      r14, rcx
+						;; size=68 bbWeight=1 PerfScore 16.83
 G_M63242_IG02:
        mov      rdi, 0xD1FFAB1E      ; System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceIdentifier,Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteChain+ChainItemInfo]]
        call     CORINFO_HELP_NEWSFAST
        mov      r13, rax
-       mov      rsi, gword ptr [r14+0x08]
+       mov      rsi, gword ptr [r15+0x08]
        mov      rdi, r13
        mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceIdentifier,Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteChain+ChainItemInfo]]:.ctor(System.Collections.Generic.IEnumerable`1[System.Collections.Generic.KeyValuePair`2[Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceIdentifier,Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteChain+ChainItemInfo]]):this
        call     [rax]System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceIdentifier,Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteChain+ChainItemInfo]]:.ctor(System.Collections.Generic.IEnumerable`1[System.Collections.Generic.KeyValuePair`2[Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceIdentifier,Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteChain+ChainItemInfo]]):this
        mov      rdi, 0xD1FFAB1E      ; global ptr
        test     byte  ptr [rdi], 1
-       je       G_M63242_IG38
+       je       G_M63242_IG40
 						;; size=56 bbWeight=1 PerfScore 11.25
 G_M63242_IG03:
        mov      rdi, 0xD1FFAB1E      ; data for Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteChain+<>c:<>9__6_0
        mov      rsi, gword ptr [rdi]
        test     rsi, rsi
        jne      SHORT G_M63242_IG05
 						;; size=18 bbWeight=1 PerfScore 3.50
 G_M63242_IG04:
        mov      rdi, 0xD1FFAB1E      ; System.Comparison`1[System.Collections.Generic.KeyValuePair`2[Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceIdentifier,Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteChain+ChainItemInfo]]
        call     CORINFO_HELP_NEWSFAST
-       mov      r14, rax
+       mov      r15, rax
        mov      rdi, 0xD1FFAB1E      ; data for Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteChain+<>c:<>9
        mov      rsi, gword ptr [rdi]
        test     rsi, rsi
-       je       G_M63242_IG39
-       lea      rdi, bword ptr [r14+0x08]
+       je       G_M63242_IG41
+       lea      rdi, bword ptr [r15+0x08]
        call     CORINFO_HELP_ASSIGN_REF
        mov      rdi, 0xD1FFAB1E      ; code for Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteChain+<>c:<AppendResolutionPath>b__6_0(System.Collections.Generic.KeyValuePair`2[Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceIdentifier,Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteChain+ChainItemInfo],System.Collections.Generic.KeyValuePair`2[Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceIdentifier,Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteChain+ChainItemInfo]):int:this
-       mov      qword ptr [r14+0x18], rdi
+       mov      qword ptr [r15+0x18], rdi
        mov      rdi, 0xD1FFAB1E      ; data for Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteChain+<>c:<>9__6_0
-       mov      rsi, r14
+       mov      rsi, r15
        call     CORINFO_HELP_ASSIGN_REF
-       mov      rsi, r14
+       mov      rsi, r15
 						;; size=84 bbWeight=0.50 PerfScore 4.75
 G_M63242_IG05:
        mov      rdi, r13
        mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceIdentifier,Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteChain+ChainItemInfo]]:Sort(System.Comparison`1[System.Collections.Generic.KeyValuePair`2[Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceIdentifier,Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteChain+ChainItemInfo]]):this
        call     [rax]System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceIdentifier,Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteChain+ChainItemInfo]]:Sort(System.Comparison`1[System.Collections.Generic.KeyValuePair`2[Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceIdentifier,Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteChain+ChainItemInfo]]):this
-       mov      r14d, dword ptr [r13+0x14]
-       xor      r12d, r12d
-       jmp      G_M63242_IG31
-						;; size=27 bbWeight=1 PerfScore 7.75
+       mov      edi, dword ptr [r13+0x14]
+       vxorps   ymm0, ymm0, ymm0
+       vmovdqu  ymmword ptr [rbp-0x70], ymm0
+						;; size=28 bbWeight=1 PerfScore 6.83
 G_M63242_IG06:
-       test     rcx, rcx
-       je       SHORT G_M63242_IG07
-       mov      rdi, rax
-       mov      rsi, rcx
-       mov      rdx, 0xD1FFAB1E      ; code for System.Type:op_Equality(System.Type,System.Type):ubyte
-       call     [rdx]System.Type:op_Equality(System.Type,System.Type):ubyte
-       test     eax, eax
-       mov      rax, gword ptr [rbp-0x60]
-       je       G_M63242_IG13
-						;; size=35 bbWeight=2 PerfScore 14.50
+       vmovdqu  ymm0, ymmword ptr [rbp-0x80]
+       vmovdqu  ymmword ptr [rbp-0x50], ymm0
+       vmovdqu  xmm0, xmmword ptr [rbp-0x60]
+       vmovdqu  xmmword ptr [rbp-0x30], xmm0
+						;; size=20 bbWeight=1 PerfScore 9.00
 G_M63242_IG07:
-       xor      rdi, rdi
-       mov      gword ptr [rbp-0x30], rdi
-						;; size=6 bbWeight=2 PerfScore 2.50
+       mov      gword ptr [rbp-0x50], r13
+       xor      eax, eax
+       mov      dword ptr [rbp-0x48], eax
+       mov      dword ptr [rbp-0x44], edi
+       lea      rdi, [rbp-0x50]
+       mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceIdentifier,Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteChain+ChainItemInfo]]:MoveNext():ubyte:this
+       call     [rax]System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceIdentifier,Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteChain+ChainItemInfo]]:MoveNext():ubyte:this
+       test     eax, eax
+       je       G_M63242_IG36
+						;; size=36 bbWeight=1 PerfScore 8.25
 G_M63242_IG08:
-       mov      dword ptr [rbp-0x38], edi
-       mov      word  ptr [rbp-0x34], di
-						;; size=7 bbWeight=2 PerfScore 4.00
+       mov      r13, gword ptr [rbp-0x38]
+       mov      r15, gword ptr [rbp-0x30]
+       test     r15, r15
+       je       SHORT G_M63242_IG10
+						;; size=13 bbWeight=4 PerfScore 13.00
 G_M63242_IG09:
-       mov      gword ptr [rbp-0x30], rdi
-       mov      byte  ptr [rbp-0x38], 1
-       mov      byte  ptr [rbp-0x37], 1
-       mov      byte  ptr [rbp-0x36], 0
-       mov      word  ptr [rbp-0x34], 43
-       lea      rdi, [rbp-0x30]
-       lea      rdx, [rbp-0x38]
-       mov      rsi, rax
+       mov      rdi, r13
+       mov      rsi, r15
+       mov      rax, 0xD1FFAB1E      ; code for System.Type:op_Equality(System.Type,System.Type):ubyte
+       call     [rax]System.Type:op_Equality(System.Type,System.Type):ubyte
+       test     eax, eax
+       je       G_M63242_IG16
+						;; size=26 bbWeight=2 PerfScore 10.00
+G_M63242_IG10:
+       xor      rdi, rdi
+       mov      gword ptr [rbp-0x88], rdi
+						;; size=9 bbWeight=2 PerfScore 2.50
+G_M63242_IG11:
+       mov      dword ptr [rbp-0x90], edi
+       mov      word  ptr [rbp-0x8C], di
+						;; size=13 bbWeight=2 PerfScore 4.00
+G_M63242_IG12:
+       mov      gword ptr [rbp-0x88], rdi
+       mov      byte  ptr [rbp-0x90], 1
+       mov      byte  ptr [rbp-0x8F], 1
+       mov      byte  ptr [rbp-0x8E], 0
+       mov      word  ptr [rbp-0x8C], 43
+       lea      rdi, [rbp-0x88]
+       lea      rdx, [rbp-0x90]
+       mov      rsi, r13
        mov      rax, 0xD1FFAB1E      ; code for Microsoft.Extensions.Internal.TypeNameHelper:ProcessType(byref,System.Type,byref):System.String
        call     [rax]Microsoft.Extensions.Internal.TypeNameHelper:ProcessType(byref,System.Type,byref):System.String
        test     rax, rax
-       jne      SHORT G_M63242_IG12
-       cmp      gword ptr [rbp-0x30], 0
-       jne      SHORT G_M63242_IG10
+       jne      SHORT G_M63242_IG15
+       cmp      gword ptr [rbp-0x88], 0
+       jne      SHORT G_M63242_IG13
        xor      rax, rax
-       jmp      SHORT G_M63242_IG11
-						;; size=61 bbWeight=2 PerfScore 32.00
-G_M63242_IG10:
-       mov      rdi, gword ptr [rbp-0x30]
+       jmp      SHORT G_M63242_IG14
+						;; size=85 bbWeight=2 PerfScore 32.00
+G_M63242_IG13:
+       mov      rdi, gword ptr [rbp-0x88]
        mov      rax, 0xD1FFAB1E      ; code for System.Text.StringBuilder:ToString():System.String:this
        cmp      dword ptr [rdi], edi
        call     [rax]System.Text.StringBuilder:ToString():System.String:this
-						;; size=18 bbWeight=2 PerfScore 14.50
-G_M63242_IG11:
+						;; size=21 bbWeight=2 PerfScore 14.50
+G_M63242_IG14:
        test     rax, rax
-       jne      SHORT G_M63242_IG12
+       jne      SHORT G_M63242_IG15
        mov      rax, 0xD1FFAB1E      ; ''
 						;; size=15 bbWeight=2 PerfScore 3.00
-G_M63242_IG12:
+G_M63242_IG15:
        xor      rsi, rsi
-       mov      gword ptr [rbp-0x30], rsi
+       mov      gword ptr [rbp-0x88], rsi
        cmp      byte  ptr [rbx], bl
        test     rax, rax
-       je       G_M63242_IG29
+       je       G_M63242_IG32
        lea      rsi, bword ptr [rax+0x0C]
        mov      edx, dword ptr [rax+0x08]
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.Text.StringBuilder:Append(byref,int):this
        call     [rax]System.Text.StringBuilder:Append(byref,int):this
-       jmp      G_M63242_IG29
-						;; size=44 bbWeight=2 PerfScore 27.00
-G_M63242_IG13:
+       jmp      G_M63242_IG32
+						;; size=47 bbWeight=2 PerfScore 27.00
+G_M63242_IG16:
        xor      rdi, rdi
-       mov      gword ptr [rbp-0x40], rdi
-						;; size=6 bbWeight=2 PerfScore 2.50
-G_M63242_IG14:
-       mov      dword ptr [rbp-0x48], edi
-       mov      word  ptr [rbp-0x44], di
-						;; size=7 bbWeight=2 PerfScore 4.00
-G_M63242_IG15:
-       mov      gword ptr [rbp-0x40], rdi
-       mov      byte  ptr [rbp-0x48], 1
-       mov      byte  ptr [rbp-0x47], 1
-       mov      byte  ptr [rbp-0x46], 0
-       mov      word  ptr [rbp-0x44], 43
-       lea      rdi, [rbp-0x40]
-       lea      rdx, [rbp-0x48]
-       mov      rsi, rax
+       mov      gword ptr [rbp-0x98], rdi
+						;; size=9 bbWeight=2 PerfScore 2.50
+G_M63242_IG17:
+       mov      dword ptr [rbp-0xA0], edi
+       mov      word  ptr [rbp-0x9C], di
+						;; size=13 bbWeight=2 PerfScore 4.00
+G_M63242_IG18:
+       mov      gword ptr [rbp-0x98], rdi
+       mov      byte  ptr [rbp-0xA0], 1
+       mov      byte  ptr [rbp-0x9F], 1
+       mov      byte  ptr [rbp-0x9E], 0
+       mov      word  ptr [rbp-0x9C], 43
+       lea      rdi, [rbp-0x98]
+       lea      rdx, [rbp-0xA0]
+       mov      rsi, r13
        mov      rax, 0xD1FFAB1E      ; code for Microsoft.Extensions.Internal.TypeNameHelper:ProcessType(byref,System.Type,byref):System.String
        call     [rax]Microsoft.Extensions.Internal.TypeNameHelper:ProcessType(byref,System.Type,byref):System.String
        test     rax, rax
-       jne      SHORT G_M63242_IG18
-       cmp      gword ptr [rbp-0x40], 0
-       jne      SHORT G_M63242_IG16
+       jne      SHORT G_M63242_IG21
+       cmp      gword ptr [rbp-0x98], 0
+       jne      SHORT G_M63242_IG19
        xor      rax, rax
-       jmp      SHORT G_M63242_IG17
-						;; size=61 bbWeight=2 PerfScore 32.00
-G_M63242_IG16:
-       mov      rdi, gword ptr [rbp-0x40]
+       jmp      SHORT G_M63242_IG20
+						;; size=85 bbWeight=2 PerfScore 32.00
+G_M63242_IG19:
+       mov      rdi, gword ptr [rbp-0x98]
        mov      rax, 0xD1FFAB1E      ; code for System.Text.StringBuilder:ToString():System.String:this
        cmp      dword ptr [rdi], edi
        call     [rax]System.Text.StringBuilder:ToString():System.String:this
-						;; size=18 bbWeight=2 PerfScore 14.50
-G_M63242_IG17:
+						;; size=21 bbWeight=2 PerfScore 14.50
+G_M63242_IG20:
        test     rax, rax
-       jne      SHORT G_M63242_IG18
+       jne      SHORT G_M63242_IG21
        mov      rax, 0xD1FFAB1E      ; ''
 						;; size=15 bbWeight=2 PerfScore 3.00
-G_M63242_IG18:
+G_M63242_IG21:
        xor      rsi, rsi
-       mov      gword ptr [rbp-0x40], rsi
+       mov      gword ptr [rbp-0x98], rsi
        cmp      byte  ptr [rbx], bl
        test     rax, rax
-       je       SHORT G_M63242_IG19
+       je       SHORT G_M63242_IG22
        lea      rsi, bword ptr [rax+0x0C]
        mov      edx, dword ptr [rax+0x08]
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.Text.StringBuilder:Append(byref,int):this
        call     [rax]System.Text.StringBuilder:Append(byref,int):this
-						;; size=35 bbWeight=2 PerfScore 23.00
-G_M63242_IG19:
+						;; size=38 bbWeight=2 PerfScore 23.00
+G_M63242_IG22:
        mov      edi, dword ptr [rbx+0x18]
        mov      esi, edi
        mov      rax, gword ptr [rbx+0x08]
        mov      ecx, dword ptr [rax+0x08]
        cmp      ecx, esi
-       jbe      SHORT G_M63242_IG20
+       jbe      SHORT G_M63242_IG23
        mov      word  ptr [rax+2*rsi+0x10], 40
        inc      edi
        mov      dword ptr [rbx+0x18], edi
-       jmp      SHORT G_M63242_IG21
+       jmp      SHORT G_M63242_IG24
 						;; size=30 bbWeight=2 PerfScore 23.50
-G_M63242_IG20:
+G_M63242_IG23:
        mov      rdi, rbx
        mov      esi, 40
        mov      rax, 0xD1FFAB1E      ; code for System.Text.StringBuilder:AppendWithExpansion(ushort):this
        call     [rax]System.Text.StringBuilder:AppendWithExpansion(ushort):this
 						;; size=20 bbWeight=2 PerfScore 7.50
-G_M63242_IG21:
+G_M63242_IG24:
        xor      rdi, rdi
-       mov      gword ptr [rbp-0x50], rdi
-						;; size=6 bbWeight=2 PerfScore 2.50
-G_M63242_IG22:
-       mov      dword ptr [rbp-0x58], edi
-       mov      word  ptr [rbp-0x54], di
-						;; size=7 bbWeight=2 PerfScore 4.00
-G_M63242_IG23:
-       mov      gword ptr [rbp-0x50], rdi
-       mov      byte  ptr [rbp-0x58], 1
-       mov      byte  ptr [rbp-0x57], 1
-       mov      byte  ptr [rbp-0x56], 0
-       mov      word  ptr [rbp-0x54], 43
-       lea      rdi, [rbp-0x50]
-       lea      rdx, [rbp-0x58]
-       mov      rsi, gword ptr [rbp-0x68]
+       mov      gword ptr [rbp-0xA8], rdi
+						;; size=9 bbWeight=2 PerfScore 2.50
+G_M63242_IG25:
+       mov      dword ptr [rbp-0xB0], edi
+       mov      word  ptr [rbp-0xAC], di
+						;; size=13 bbWeight=2 PerfScore 4.00
+G_M63242_IG26:
+       mov      gword ptr [rbp-0xA8], rdi
+       mov      byte  ptr [rbp-0xB0], 1
+       mov      byte  ptr [rbp-0xAF], 1
+       mov      byte  ptr [rbp-0xAE], 0
+       mov      word  ptr [rbp-0xAC], 43
+       lea      rdi, [rbp-0xA8]
+       lea      rdx, [rbp-0xB0]
+       mov      rsi, r15
        mov      rax, 0xD1FFAB1E      ; code for Microsoft.Extensions.Internal.TypeNameHelper:ProcessType(byref,System.Type,byref):System.String
        call     [rax]Microsoft.Extensions.Internal.TypeNameHelper:ProcessType(byref,System.Type,byref):System.String
        test     rax, rax
-       jne      SHORT G_M63242_IG26
-       cmp      gword ptr [rbp-0x50], 0
-       jne      SHORT G_M63242_IG24
+       jne      SHORT G_M63242_IG29
+       cmp      gword ptr [rbp-0xA8], 0
+       jne      SHORT G_M63242_IG27
        xor      rax, rax
-       jmp      SHORT G_M63242_IG25
-						;; size=62 bbWeight=2 PerfScore 33.50
-G_M63242_IG24:
-       mov      rdi, gword ptr [rbp-0x50]
+       jmp      SHORT G_M63242_IG28
+						;; size=85 bbWeight=2 PerfScore 32.00
+G_M63242_IG27:
+       mov      rdi, gword ptr [rbp-0xA8]
        mov      rax, 0xD1FFAB1E      ; code for System.Text.StringBuilder:ToString():System.String:this
        cmp      dword ptr [rdi], edi
        call     [rax]System.Text.StringBuilder:ToString():System.String:this
-						;; size=18 bbWeight=2 PerfScore 14.50
-G_M63242_IG25:
+						;; size=21 bbWeight=2 PerfScore 14.50
+G_M63242_IG28:
        test     rax, rax
-       jne      SHORT G_M63242_IG26
+       jne      SHORT G_M63242_IG29
        mov      rax, 0xD1FFAB1E      ; ''
 						;; size=15 bbWeight=2 PerfScore 3.00
-G_M63242_IG26:
+G_M63242_IG29:
        xor      rsi, rsi
-       mov      gword ptr [rbp-0x50], rsi
+       mov      gword ptr [rbp-0xA8], rsi
        test     rax, rax
-       je       SHORT G_M63242_IG27
+       je       SHORT G_M63242_IG30
        lea      rsi, bword ptr [rax+0x0C]
        mov      edx, dword ptr [rax+0x08]
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.Text.StringBuilder:Append(byref,int):this
        call     [rax]System.Text.StringBuilder:Append(byref,int):this
-						;; size=33 bbWeight=2 PerfScore 17.00
-G_M63242_IG27:
+						;; size=36 bbWeight=2 PerfScore 17.00
+G_M63242_IG30:
        mov      edi, dword ptr [rbx+0x18]
        mov      esi, edi
        mov      rax, gword ptr [rbx+0x08]
        mov      ecx, dword ptr [rax+0x08]
        cmp      ecx, esi
-       jbe      SHORT G_M63242_IG28
+       jbe      SHORT G_M63242_IG31
        mov      word  ptr [rax+2*rsi+0x10], 41
        inc      edi
        mov      dword ptr [rbx+0x18], edi
-       jmp      SHORT G_M63242_IG29
+       jmp      SHORT G_M63242_IG32
 						;; size=30 bbWeight=2 PerfScore 23.50
-G_M63242_IG28:
+G_M63242_IG31:
        mov      rdi, rbx
        mov      esi, 41
        mov      rax, 0xD1FFAB1E      ; code for System.Text.StringBuilder:AppendWithExpansion(ushort):this
        call     [rax]System.Text.StringBuilder:AppendWithExpansion(ushort):this
 						;; size=20 bbWeight=2 PerfScore 7.50
-G_M63242_IG29:
+G_M63242_IG32:
        mov      rsi, 0xD1FFAB1E
        mov      rdi, gword ptr [rbx+0x08]
        mov      edx, dword ptr [rbx+0x18]
        lea      eax, [rdx+0x04]
        cmp      dword ptr [rdi+0x08], eax
-       jb       SHORT G_M63242_IG30
+       jb       SHORT G_M63242_IG34
+						;; size=25 bbWeight=4 PerfScore 35.00
+G_M63242_IG33:
        movsxd   rax, edx
        lea      rdi, bword ptr [rdi+2*rax+0x10]
        mov      rax, qword ptr [rsi]
        mov      qword ptr [rdi], rax
        add      edx, 4
        mov      dword ptr [rbx+0x18], edx
-       jmp      SHORT G_M63242_IG31
-						;; size=47 bbWeight=2 PerfScore 32.50
-G_M63242_IG30:
+       jmp      SHORT G_M63242_IG35
+						;; size=22 bbWeight=2 PerfScore 15.00
+G_M63242_IG34:
        mov      rdi, rbx
        mov      edx, 4
        mov      rax, 0xD1FFAB1E      ; code for System.Text.StringBuilder:AppendWithExpansion(byref,int):this
        call     [rax]System.Text.StringBuilder:AppendWithExpansion(byref,int):this
 						;; size=20 bbWeight=2 PerfScore 7.50
-G_M63242_IG31:
-       mov      edi, dword ptr [r13+0x14]
-       cmp      r14d, edi
-       jne      G_M63242_IG40
-						;; size=13 bbWeight=8 PerfScore 26.00
-G_M63242_IG32:
-       mov      edi, dword ptr [r13+0x10]
-       cmp      r12d, edi
-       jae      SHORT G_M63242_IG33
-       mov      rdi, gword ptr [r13+0x08]
-       cmp      r12d, dword ptr [rdi+0x08]
-       jae      SHORT G_M63242_IG37
-       mov      esi, r12d
-       shl      rsi, 5
-       lea      rdi, bword ptr [rdi+rsi+0x10]
-       mov      rax, gword ptr [rdi+0x08]
-       mov      gword ptr [rbp-0x60], rax
-       mov      rcx, gword ptr [rdi+0x10]
-       mov      gword ptr [rbp-0x68], rcx
-       inc      r12d
-       jmp      G_M63242_IG06
-						;; size=55 bbWeight=4 PerfScore 77.00
-G_M63242_IG33:
-       mov      rdi, r15
+G_M63242_IG35:
+       lea      rdi, [rbp-0x50]
+       mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceIdentifier,Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteChain+ChainItemInfo]]:MoveNext():ubyte:this
+       call     [rax]System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceIdentifier,Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteChain+ChainItemInfo]]:MoveNext():ubyte:this
+       test     eax, eax
+       jne      G_M63242_IG08
+						;; size=24 bbWeight=4 PerfScore 20.00
+G_M63242_IG36:
+       mov      rdi, r14
        mov      esi, 1
        xor      edx, edx
        mov      ecx, 1
        mov      r8d, 43
        mov      rax, 0xD1FFAB1E      ; code for Microsoft.Extensions.Internal.TypeNameHelper:GetTypeDisplayName(System.Type,ubyte,ubyte,ubyte,ushort):System.String
        call     [rax]Microsoft.Extensions.Internal.TypeNameHelper:GetTypeDisplayName(System.Type,ubyte,ubyte,ubyte,ushort):System.String
        mov      rsi, rax
        cmp      byte  ptr [rbx], bl
        test     rsi, rsi
-       je       SHORT G_M63242_IG35
-						;; size=43 bbWeight=4 PerfScore 36.00
-G_M63242_IG34:
+       je       SHORT G_M63242_IG38
+						;; size=43 bbWeight=1 PerfScore 9.00
+G_M63242_IG37:
        mov      edx, dword ptr [rsi+0x08]
        add      rsi, 12
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.Text.StringBuilder:Append(byref,int):this
        call     [rax]System.Text.StringBuilder:Append(byref,int):this
 						;; size=22 bbWeight=0.50 PerfScore 2.88
-G_M63242_IG35:
+G_M63242_IG38:
        nop      
 						;; size=1 bbWeight=1 PerfScore 0.25
-G_M63242_IG36:
-       add      rsp, 72
+G_M63242_IG39:
+       vzeroupper 
+       add      rsp, 144
        pop      rbx
-       pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
-						;; size=15 bbWeight=1 PerfScore 4.25
-G_M63242_IG37:
-       call     CORINFO_HELP_RNGCHKFAIL
-       int3     
-						;; size=6 bbWeight=0 PerfScore 0.00
-G_M63242_IG38:
+						;; size=19 bbWeight=1 PerfScore 4.75
+G_M63242_IG40:
        mov      rdi, 0xD1FFAB1E
        mov      esi, 53
        call     CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
        jmp      G_M63242_IG03
 						;; size=25 bbWeight=0 PerfScore 0.00
-G_M63242_IG39:
+G_M63242_IG41:
        mov      rax, 0xD1FFAB1E      ; code for System.MulticastDelegate:ThrowNullThisInDelegateToInstance()
        call     [rax]System.MulticastDelegate:ThrowNullThisInDelegateToInstance()
        int3     
 						;; size=13 bbWeight=0 PerfScore 0.00
-G_M63242_IG40:
-       mov      rax, 0xD1FFAB1E      ; code for System.ThrowHelper:ThrowInvalidOperationException_InvalidOperation_EnumFailedVersion()
-       call     [rax]System.ThrowHelper:ThrowInvalidOperationException_InvalidOperation_EnumFailedVersion()
-       int3     
-						;; size=13 bbWeight=0 PerfScore 0.00
 
-; Total bytes of code 1075, prolog size 39, PerfScore 538.71, instruction count 271, allocated bytes for code 1075 (MethodHash=06a108f5) for method Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteChain:AppendResolutionPath(System.Text.StringBuilder,Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceIdentifier):this (FullOpts)
+; Total bytes of code 1213, prolog size 59, PerfScore 474.79, instruction count 267, allocated bytes for code 1213 (MethodHash=06a108f5) for method Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteChain:AppendResolutionPath(System.Text.StringBuilder,Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceIdentifier):this (FullOpts)
138 (10.57 % of base) - System.Reflection.Metadata.Ecma335.MetadataBuilder:SerializeAssemblyRefTable(System.Reflection.Metadata.BlobBuilder,System.Collections.Immutable.ImmutableArray`1[int],System.Reflection.Metadata.Ecma335.MetadataSizes):this
 ; Assembly listing for method System.Reflection.Metadata.Ecma335.MetadataBuilder:SerializeAssemblyRefTable(System.Reflection.Metadata.BlobBuilder,System.Collections.Immutable.ImmutableArray`1[int],System.Reflection.Metadata.Ecma335.MetadataSizes):this (FullOpts)
 ; Emitting BLENDED_CODE for X64 with AVX - Unix
 ; FullOpts code
 ; optimized code
 ; rbp based frame
-; fully interruptible
+; partially interruptible
 ; No PGO data
-; 0 inlinees with PGO data; 48 single block inlinees; 32 inlinees without PGO data
+; 0 inlinees with PGO data; 48 single block inlinees; 30 inlinees without PGO data
 ; Final local variable assignments
 ;
-;  V00 this         [V00,T54] (  3,  3   )     ref  ->  rdi         this class-hnd single-def <System.Reflection.Metadata.Ecma335.MetadataBuilder>
-;  V01 arg1         [V01,T00] ( 67,132   )     ref  ->  rbx         class-hnd single-def <System.Reflection.Metadata.BlobBuilder>
+;  V00 this         [V00,T46] (  3,  3   )     ref  ->  rdi         this class-hnd single-def <System.Reflection.Metadata.Ecma335.MetadataBuilder>
+;  V01 arg1         [V01,T00] ( 67,172   )     ref  ->  rbx         class-hnd single-def <System.Reflection.Metadata.BlobBuilder>
 ;* V02 arg2         [V02    ] (  0,  0   )  struct ( 8) zero-ref    single-def <System.Collections.Immutable.ImmutableArray`1[int]>
-;  V03 arg3         [V03,T07] (  6, 10   )     ref  ->  r15         class-hnd single-def <System.Reflection.Metadata.Ecma335.MetadataSizes>
-;* V04 loc0         [V04    ] (  0,  0   )  struct (48) zero-ref    do-not-enreg[SF] ld-addr-op <System.Collections.Generic.List`1+Enumerator[System.Reflection.Metadata.Ecma335.MetadataBuilder+AssemblyRefTableRow]>
+;  V03 arg3         [V03,T11] (  6, 18   )     ref  ->  r15         class-hnd single-def <System.Reflection.Metadata.Ecma335.MetadataSizes>
+;  V04 loc0         [V04    ] ( 12, 33   )  struct (48) [rbp-0x58]  do-not-enreg[XS] addr-exposed ld-addr-op <System.Collections.Generic.List`1+Enumerator[System.Reflection.Metadata.Ecma335.MetadataBuilder+AssemblyRefTableRow]>
 ;* V05 loc1         [V05    ] (  0,  0   )  struct (32) zero-ref    do-not-enreg[SF] <System.Reflection.Metadata.Ecma335.MetadataBuilder+AssemblyRefTableRow>
 ;# V06 OutArgs      [V06    ] (  1,  1   )  struct ( 0) [rsp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-;  V07 tmp1         [V07,T53] (  3,  6   )     ref  ->  r13         class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Reflection.Metadata.Ecma335.MetadataBuilder+AssemblyRefTableRow]>
-;* V08 tmp2         [V08    ] (  0,  0   )  struct (48) zero-ref    do-not-enreg[SF] ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Reflection.Metadata.Ecma335.MetadataBuilder+AssemblyRefTableRow]>
+;  V07 tmp1         [V07,T45] (  3,  6   )     ref  ->  rdi         class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Reflection.Metadata.Ecma335.MetadataBuilder+AssemblyRefTableRow]>
+;  V08 tmp2         [V08,T48] (  1,  2   )  struct (48) [rbp-0x88]  do-not-enreg[SF] must-init ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Reflection.Metadata.Ecma335.MetadataBuilder+AssemblyRefTableRow]>
 ;* V09 tmp3         [V09    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.Version>
 ;* V10 tmp4         [V10    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
-;  V11 tmp5         [V11,T44] (  2,  8   )  ushort  ->  [rbp-0x2C]  spill-single-def "Inlining Arg"
-;  V12 tmp6         [V12,T08] (  6, 12   )     int  ->  rsi         "Inline stloc first use temp"
+;  V11 tmp5         [V11,T16] (  2, 16   )  ushort  ->  [rbp-0x8C]  spill-single-def "Inlining Arg"
+;  V12 tmp6         [V12,T06] (  6, 22   )     int  ->  r10         "Inline stloc first use temp"
 ;* V13 tmp7         [V13    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <ubyte[]>
 ;* V14 tmp8         [V14    ] (  0,  0   )   byref  ->  zero-ref   
 ;* V15 tmp9         [V15    ] (  0,  0   )   byref  ->  zero-ref   
 ;* V16 tmp10        [V16    ] (  0,  0   )     int  ->  zero-ref   
 ;* V17 tmp11        [V17    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.Version>
 ;* V18 tmp12        [V18    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
-;  V19 tmp13        [V19,T45] (  2,  8   )  ushort  ->  [rbp-0x30]  spill-single-def "Inlining Arg"
-;  V20 tmp14        [V20,T09] (  6, 12   )     int  ->  rdx         "Inline stloc first use temp"
+;  V19 tmp13        [V19,T17] (  2, 16   )  ushort  ->  [rbp-0x90]  spill-single-def "Inlining Arg"
+;  V20 tmp14        [V20,T07] (  6, 22   )     int  ->  r10         "Inline stloc first use temp"
 ;* V21 tmp15        [V21    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <ubyte[]>
 ;* V22 tmp16        [V22    ] (  0,  0   )   byref  ->  zero-ref   
 ;* V23 tmp17        [V23    ] (  0,  0   )   byref  ->  zero-ref   
 ;* V24 tmp18        [V24    ] (  0,  0   )     int  ->  zero-ref   
 ;* V25 tmp19        [V25    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.Version>
 ;* V26 tmp20        [V26    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
-;  V27 tmp21        [V27,T46] (  2,  8   )  ushort  ->  [rbp-0x34]  spill-single-def "Inlining Arg"
-;  V28 tmp22        [V28,T10] (  6, 12   )     int  ->  rdx         "Inline stloc first use temp"
+;  V27 tmp21        [V27,T18] (  2, 16   )  ushort  ->  [rbp-0x94]  spill-single-def "Inlining Arg"
+;  V28 tmp22        [V28,T08] (  6, 22   )     int  ->  r10         "Inline stloc first use temp"
 ;* V29 tmp23        [V29    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <ubyte[]>
 ;* V30 tmp24        [V30    ] (  0,  0   )   byref  ->  zero-ref   
 ;* V31 tmp25        [V31    ] (  0,  0   )   byref  ->  zero-ref   
 ;* V32 tmp26        [V32    ] (  0,  0   )     int  ->  zero-ref   
 ;* V33 tmp27        [V33    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.Version>
 ;* V34 tmp28        [V34    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
-;  V35 tmp29        [V35,T47] (  2,  8   )  ushort  ->  [rbp-0x38]  spill-single-def "Inlining Arg"
-;  V36 tmp30        [V36,T11] (  6, 12   )     int  ->  rcx         "Inline stloc first use temp"
+;  V35 tmp29        [V35,T19] (  2, 16   )  ushort  ->  r13         "Inlining Arg"
+;  V36 tmp30        [V36,T09] (  6, 22   )     int  ->   r9         "Inline stloc first use temp"
 ;* V37 tmp31        [V37    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <ubyte[]>
 ;* V38 tmp32        [V38    ] (  0,  0   )   byref  ->  zero-ref   
 ;* V39 tmp33        [V39    ] (  0,  0   )   byref  ->  zero-ref   
 ;* V40 tmp34        [V40    ] (  0,  0   )     int  ->  zero-ref   
 ;* V41 tmp35        [V41    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V42 tmp36        [V42    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
-;  V43 tmp37        [V43,T12] (  6, 12   )     int  ->  rax         "Inline stloc first use temp"
+;  V43 tmp37        [V43,T10] (  6, 22   )     int  ->  r13         "Inline stloc first use temp"
 ;* V44 tmp38        [V44    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <ubyte[]>
 ;* V45 tmp39        [V45    ] (  0,  0   )   byref  ->  zero-ref   
 ;* V46 tmp40        [V46    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
 ;* V47 tmp41        [V47    ] (  0,  0   )   byref  ->  zero-ref   
 ;* V48 tmp42        [V48    ] (  0,  0   )     int  ->  zero-ref   
 ;* V49 tmp43        [V49    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "Inlining Arg" <System.Reflection.Metadata.BlobHandle>
-;  V50 tmp44        [V50,T48] (  2,  8   )   ubyte  ->  rsi         "Inlining Arg"
+;  V50 tmp44        [V50,T20] (  2, 16   )   ubyte  ->  rdi         "Inlining Arg"
 ;* V51 tmp45        [V51    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
 ;* V52 tmp46        [V52    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V53 tmp47        [V53    ] (  0,  0   )  ushort  ->  zero-ref    "Inlining Arg"
-;  V54 tmp48        [V54,T13] (  6, 12   )     int  ->  rax         "Inline stloc first use temp"
+;  V54 tmp48        [V54,T24] (  6, 12   )     int  ->  r13         "Inline stloc first use temp"
 ;* V55 tmp49        [V55    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <ubyte[]>
 ;* V56 tmp50        [V56    ] (  0,  0   )   byref  ->  zero-ref   
 ;* V57 tmp51        [V57    ] (  0,  0   )  ushort  ->  zero-ref    "Inlining Arg"
 ;* V58 tmp52        [V58    ] (  0,  0   )   byref  ->  zero-ref   
 ;* V59 tmp53        [V59    ] (  0,  0   )     int  ->  zero-ref   
 ;* V60 tmp54        [V60    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
-;  V61 tmp55        [V61,T14] (  6, 12   )     int  ->  rax         "Inline stloc first use temp"
+;  V61 tmp55        [V61,T25] (  6, 12   )     int  ->  r13         "Inline stloc first use temp"
 ;* V62 tmp56        [V62    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <ubyte[]>
 ;* V63 tmp57        [V63    ] (  0,  0   )   byref  ->  zero-ref   
 ;* V64 tmp58        [V64    ] (  0,  0   )   byref  ->  zero-ref   
 ;* V65 tmp59        [V65    ] (  0,  0   )     int  ->  zero-ref   
 ;* V66 tmp60        [V66    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "Inlining Arg" <System.Collections.Immutable.ImmutableArray`1[int]>
 ;* V67 tmp61        [V67    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "Inlining Arg" <System.Reflection.Metadata.StringHandle>
 ;* V68 tmp62        [V68    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
-;  V69 tmp63        [V69,T49] (  2,  8   )   ubyte  ->  rsi         "Inlining Arg"
-;  V70 tmp64        [V70,T38] (  3, 12   )     int  ->  [rbp-0x3C]  spill-single-def "Inlining Arg"
+;  V69 tmp63        [V69,T21] (  2, 16   )   ubyte  ->  rdi         "Inlining Arg"
+;  V70 tmp64        [V70,T14] (  3, 16   )     int  ->  r13         "Inlining Arg"
 ;* V71 tmp65        [V71    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V72 tmp66        [V72    ] (  0,  0   )  ushort  ->  zero-ref    "Inlining Arg"
-;  V73 tmp67        [V73,T15] (  6, 12   )     int  ->  rcx         "Inline stloc first use temp"
+;  V73 tmp67        [V73,T26] (  6, 12   )     int  ->  r12         "Inline stloc first use temp"
 ;* V74 tmp68        [V74    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <ubyte[]>
 ;* V75 tmp69        [V75    ] (  0,  0   )   byref  ->  zero-ref   
 ;* V76 tmp70        [V76    ] (  0,  0   )  ushort  ->  zero-ref    "Inlining Arg"
 ;* V77 tmp71        [V77    ] (  0,  0   )   byref  ->  zero-ref   
 ;* V78 tmp72        [V78    ] (  0,  0   )     int  ->  zero-ref   
 ;* V79 tmp73        [V79    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
-;  V80 tmp74        [V80,T16] (  6, 12   )     int  ->  rcx         "Inline stloc first use temp"
+;  V80 tmp74        [V80,T27] (  6, 12   )     int  ->  r12         "Inline stloc first use temp"
 ;* V81 tmp75        [V81    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <ubyte[]>
 ;* V82 tmp76        [V82    ] (  0,  0   )   byref  ->  zero-ref   
 ;* V83 tmp77        [V83    ] (  0,  0   )   byref  ->  zero-ref   
 ;* V84 tmp78        [V84    ] (  0,  0   )     int  ->  zero-ref   
 ;* V85 tmp79        [V85    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "Inlining Arg" <System.Collections.Immutable.ImmutableArray`1[int]>
 ;* V86 tmp80        [V86    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "Inlining Arg" <System.Reflection.Metadata.StringHandle>
 ;* V87 tmp81        [V87    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
-;  V88 tmp82        [V88,T50] (  2,  8   )   ubyte  ->  rsi         "Inlining Arg"
-;  V89 tmp83        [V89,T39] (  3, 12   )     int  ->  [rbp-0x40]  spill-single-def "Inlining Arg"
+;  V88 tmp82        [V88,T22] (  2, 16   )   ubyte  ->  rdi         "Inlining Arg"
+;  V89 tmp83        [V89,T15] (  3, 16   )     int  ->  r13         "Inlining Arg"
 ;* V90 tmp84        [V90    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V91 tmp85        [V91    ] (  0,  0   )  ushort  ->  zero-ref    "Inlining Arg"
-;  V92 tmp86        [V92,T17] (  6, 12   )     int  ->  rcx         "Inline stloc first use temp"
+;  V92 tmp86        [V92,T28] (  6, 12   )     int  ->  r12         "Inline stloc first use temp"
 ;* V93 tmp87        [V93    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <ubyte[]>
 ;* V94 tmp88        [V94    ] (  0,  0   )   byref  ->  zero-ref   
 ;* V95 tmp89        [V95    ] (  0,  0   )  ushort  ->  zero-ref    "Inlining Arg"
 ;* V96 tmp90        [V96    ] (  0,  0   )   byref  ->  zero-ref   
 ;* V97 tmp91        [V97    ] (  0,  0   )     int  ->  zero-ref   
 ;* V98 tmp92        [V98    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
-;  V99 tmp93        [V99,T18] (  6, 12   )     int  ->  rcx         "Inline stloc first use temp"
+;  V99 tmp93        [V99,T29] (  6, 12   )     int  ->  r12         "Inline stloc first use temp"
 ;* V100 tmp94       [V100    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <ubyte[]>
 ;* V101 tmp95       [V101    ] (  0,  0   )   byref  ->  zero-ref   
 ;* V102 tmp96       [V102    ] (  0,  0   )   byref  ->  zero-ref   
 ;* V103 tmp97       [V103    ] (  0,  0   )     int  ->  zero-ref   
 ;* V104 tmp98       [V104    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "Inlining Arg" <System.Reflection.Metadata.BlobHandle>
-;  V105 tmp99       [V105,T51] (  2,  8   )   ubyte  ->  rsi         "Inlining Arg"
+;  V105 tmp99       [V105,T23] (  2, 16   )   ubyte  ->  rdi         "Inlining Arg"
 ;* V106 tmp100      [V106    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
 ;* V107 tmp101      [V107    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V108 tmp102      [V108    ] (  0,  0   )  ushort  ->  zero-ref    "Inlining Arg"
-;  V109 tmp103      [V109,T19] (  6, 12   )     int  ->  rax         "Inline stloc first use temp"
+;  V109 tmp103      [V109,T30] (  6, 12   )     int  ->  r13         "Inline stloc first use temp"
 ;* V110 tmp104      [V110    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <ubyte[]>
 ;* V111 tmp105      [V111    ] (  0,  0   )   byref  ->  zero-ref   
 ;* V112 tmp106      [V112    ] (  0,  0   )  ushort  ->  zero-ref    "Inlining Arg"
 ;* V113 tmp107      [V113    ] (  0,  0   )   byref  ->  zero-ref   
 ;* V114 tmp108      [V114    ] (  0,  0   )     int  ->  zero-ref   
 ;* V115 tmp109      [V115    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
-;  V116 tmp110      [V116,T20] (  6, 12   )     int  ->  rax         "Inline stloc first use temp"
+;  V116 tmp110      [V116,T31] (  6, 12   )     int  ->  r13         "Inline stloc first use temp"
 ;* V117 tmp111      [V117    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <ubyte[]>
 ;* V118 tmp112      [V118    ] (  0,  0   )   byref  ->  zero-ref   
 ;* V119 tmp113      [V119    ] (  0,  0   )   byref  ->  zero-ref   
 ;* V120 tmp114      [V120    ] (  0,  0   )     int  ->  zero-ref   
-;* V121 tmp115      [V121,T52] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;* V122 tmp116      [V122    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline stloc first use temp" <System.Collections.Generic.List`1[System.Reflection.Metadata.Ecma335.MetadataBuilder+AssemblyRefTableRow]>
-;  V123 tmp117      [V123,T41] (  5,  9   )     ref  ->  r14         single-def "field V02.array (fldOffset=0x0)" P-INDEP
-;* V124 tmp118      [V124    ] (  0,  0   )     int  ->  zero-ref    "field V49._value (fldOffset=0x0)" P-INDEP
-;* V125 tmp119      [V125    ] (  0,  0   )     ref  ->  zero-ref    "field V66.array (fldOffset=0x0)" P-INDEP
-;* V126 tmp120      [V126    ] (  0,  0   )     int  ->  zero-ref    "field V67._value (fldOffset=0x0)" P-INDEP
-;* V127 tmp121      [V127    ] (  0,  0   )     ref  ->  zero-ref    "field V85.array (fldOffset=0x0)" P-INDEP
-;* V128 tmp122      [V128    ] (  0,  0   )     int  ->  zero-ref    "field V86._value (fldOffset=0x0)" P-INDEP
-;* V129 tmp123      [V129    ] (  0,  0   )     int  ->  zero-ref    "field V104._value (fldOffset=0x0)" P-INDEP
-;  V130 tmp124      [V130,T04] (  4, 17   )     ref  ->  r13         single-def "V04.[000..008)"
-;  V131 tmp125      [V131,T02] (  6, 21   )     int  ->  [rbp-0x44]  "V04.[008..012)"
-;  V132 tmp126      [V132,T43] (  2,  9   )     int  ->  r12         "V04.[012..016)"
-;  V133 tmp127      [V133,T05] (  5, 12   )     ref  ->  [rbp-0x60]  spill-single-def "V04.[016..024)"
-;  V134 tmp128      [V134,T42] (  2,  6   )     int  ->  [rbp-0x48]  spill-single-def "V04.[024..028)"
-;  V135 tmp129      [V135,T21] (  3,  8   )     int  ->  [rbp-0x4C]  spill-single-def "V04.[028..032)"
-;  V136 tmp130      [V136,T22] (  3,  8   )     int  ->  [rbp-0x50]  spill-single-def "V04.[032..036)"
-;  V137 tmp131      [V137,T23] (  3,  8   )     int  ->  [rbp-0x54]  spill-single-def "V04.[036..040)"
-;  V138 tmp132      [V138,T24] (  3,  8   )     int  ->  [rbp-0x58]  spill-single-def "V04.[040..044)"
-;* V139 tmp133      [V139    ] (  0,  0   )     ref  ->  zero-ref    "V05.[000..008)"
-;* V140 tmp134      [V140    ] (  0,  0   )     int  ->  zero-ref    "V05.[008..012)"
-;* V141 tmp135      [V141    ] (  0,  0   )     int  ->  zero-ref    "V05.[012..016)"
-;* V142 tmp136      [V142    ] (  0,  0   )     int  ->  zero-ref    "V05.[016..020)"
-;* V143 tmp137      [V143    ] (  0,  0   )     int  ->  zero-ref    "V05.[020..024)"
-;* V144 tmp138      [V144    ] (  0,  0   )     int  ->  zero-ref    "V05.[024..028)"
-;* V145 tmp139      [V145    ] (  0,  0   )     ref  ->  zero-ref    single-def "V08.[000..008)"
-;* V146 tmp140      [V146    ] (  0,  0   )     int  ->  zero-ref    "V08.[008..012)"
-;  V147 tmp141      [V147,T55] (  2,  2   )     int  ->  r12         "V08.[012..016)"
-;* V148 tmp142      [V148    ] (  0,  0   )     ref  ->  zero-ref    single-def "V08.[016..024)"
-;* V149 tmp143      [V149    ] (  0,  0   )     int  ->  zero-ref    "V08.[024..028)"
-;* V150 tmp144      [V150    ] (  0,  0   )     int  ->  zero-ref    "V08.[028..032)"
-;* V151 tmp145      [V151    ] (  0,  0   )     int  ->  zero-ref    "V08.[032..036)"
-;* V152 tmp146      [V152    ] (  0,  0   )     int  ->  zero-ref    "V08.[036..040)"
-;* V153 tmp147      [V153    ] (  0,  0   )     int  ->  zero-ref    "V08.[040..044)"
-;  V154 tmp148      [V154,T01] (  7, 56   )   byref  ->  rsi         "Spilling address for field-by-field copy"
-;  V155 tmp149      [V155,T03] (  3, 24   )     ref  ->  rsi         "arr expr"
-;  V156 tmp150      [V156,T25] (  3, 12   )     ref  ->  rcx         "arr expr"
-;  V157 tmp151      [V157,T26] (  3, 12   )     ref  ->  rsi         "arr expr"
-;  V158 tmp152      [V158,T27] (  3, 12   )     ref  ->  rsi         "arr expr"
-;  V159 tmp153      [V159,T28] (  3, 12   )     ref  ->  rsi         "arr expr"
-;  V160 tmp154      [V160,T29] (  3, 12   )     ref  ->  rsi         "arr expr"
-;  V161 tmp155      [V161,T30] (  3, 12   )     ref  ->  rsi         "arr expr"
-;  V162 tmp156      [V162,T31] (  3, 12   )     ref  ->  rsi         "arr expr"
-;  V163 tmp157      [V163,T32] (  3, 12   )     ref  ->  rsi         "arr expr"
-;  V164 tmp158      [V164,T33] (  3, 12   )     ref  ->  rsi         "arr expr"
-;  V165 tmp159      [V165,T34] (  3, 12   )     ref  ->  rsi         "arr expr"
-;  V166 tmp160      [V166,T35] (  3, 12   )     ref  ->  rsi         "arr expr"
-;  V167 tmp161      [V167,T36] (  3, 12   )     ref  ->  rcx         "arr expr"
-;  V168 tmp162      [V168,T37] (  3, 12   )     ref  ->  rsi         "arr expr"
-;  V169 cse0        [V169,T40] (  2,  8   )     int  ->  rsi         "CSE #17: conservative"
-;  V170 cse1        [V170,T06] (  2, 16   )     int  ->  rsi         "CSE #16: aggressive"
+;  V121 tmp115      [V121,T13] (  5, 17   )     ref  ->  r14         single-def "field V02.array (fldOffset=0x0)" P-INDEP
+;* V122 tmp116      [V122    ] (  0,  0   )     int  ->  zero-ref    "field V49._value (fldOffset=0x0)" P-INDEP
+;* V123 tmp117      [V123    ] (  0,  0   )     ref  ->  zero-ref    "field V66.array (fldOffset=0x0)" P-INDEP
+;* V124 tmp118      [V124    ] (  0,  0   )     int  ->  zero-ref    "field V67._value (fldOffset=0x0)" P-INDEP
+;* V125 tmp119      [V125    ] (  0,  0   )     ref  ->  zero-ref    "field V85.array (fldOffset=0x0)" P-INDEP
+;* V126 tmp120      [V126    ] (  0,  0   )     int  ->  zero-ref    "field V86._value (fldOffset=0x0)" P-INDEP
+;* V127 tmp121      [V127    ] (  0,  0   )     int  ->  zero-ref    "field V104._value (fldOffset=0x0)" P-INDEP
+;  V128 tmp122      [V128,T12] (  5, 20   )     ref  ->  r13         "V05.[000..008)"
+;  V129 tmp123      [V129,T44] (  2,  8   )     int  ->  r12         "V05.[008..012)"
+;  V130 tmp124      [V130,T42] (  3,  8   )     int  ->  [rbp-0x98]  spill-single-def "V05.[012..016)"
+;  V131 tmp125      [V131,T40] (  3, 12   )     int  ->  [rbp-0x9C]  spill-single-def "V05.[016..020)"
+;  V132 tmp126      [V132,T41] (  3, 12   )     int  ->  [rbp-0xA0]  spill-single-def "V05.[020..024)"
+;  V133 tmp127      [V133,T43] (  3,  8   )     int  ->  [rbp-0xA4]  spill-single-def "V05.[024..028)"
+;* V134 tmp128      [V134    ] (  0,  0   )     ref  ->  zero-ref    single-def "V08.[000..008)"
+;* V135 tmp129      [V135    ] (  0,  0   )     int  ->  zero-ref    "V08.[008..012)"
+;  V136 tmp130      [V136,T47] (  2,  2   )     int  ->  rax         "V08.[012..016)"
+;  V137 tmp131      [V137,T01] (  3, 24   )     ref  ->  rdi         "arr expr"
+;  V138 tmp132      [V138,T02] (  3, 24   )     ref  ->  rdi         "arr expr"
+;  V139 tmp133      [V139,T03] (  3, 24   )     ref  ->  rdi         "arr expr"
+;  V140 tmp134      [V140,T04] (  3, 24   )     ref  ->  rdi         "arr expr"
+;  V141 tmp135      [V141,T05] (  3, 24   )     ref  ->  rdi         "arr expr"
+;  V142 tmp136      [V142,T32] (  3, 12   )     ref  ->  rdi         "arr expr"
+;  V143 tmp137      [V143,T33] (  3, 12   )     ref  ->  rdi         "arr expr"
+;  V144 tmp138      [V144,T34] (  3, 12   )     ref  ->  rdi         "arr expr"
+;  V145 tmp139      [V145,T35] (  3, 12   )     ref  ->  rdi         "arr expr"
+;  V146 tmp140      [V146,T36] (  3, 12   )     ref  ->  rdi         "arr expr"
+;  V147 tmp141      [V147,T37] (  3, 12   )     ref  ->  rdi         "arr expr"
+;  V148 tmp142      [V148,T38] (  3, 12   )     ref  ->  rdi         "arr expr"
+;  V149 tmp143      [V149,T39] (  3, 12   )     ref  ->  rdi         "arr expr"
 ;
-; Lcl frame size = 56
+; Lcl frame size = 136
 
 G_M925_IG01:
        push     rbp
        push     r15
        push     r14
        push     r13
        push     r12
        push     rbx
-       sub      rsp, 56
-       lea      rbp, [rsp+0x60]
+       sub      rsp, 136
+       lea      rbp, [rsp+0xB0]
+       xor      eax, eax
+       mov      qword ptr [rbp-0x88], rax
+       vxorps   xmm8, xmm8, xmm8
+       vmovdqu  ymmword ptr [rbp-0x80], ymm8
+       mov      qword ptr [rbp-0x60], rax
        mov      rbx, rsi
        mov      r14, rdx
        mov      r15, rcx
-						;; size=28 bbWeight=1 PerfScore 7.50
+						;; size=57 bbWeight=1 PerfScore 12.08
 G_M925_IG02:
-       mov      r13, gword ptr [rdi+0x108]
-       mov      r12d, dword ptr [r13+0x14]
-       xor      edi, edi
-       jmp      G_M925_IG24
-						;; size=18 bbWeight=1 PerfScore 6.25
+       mov      rdi, gword ptr [rdi+0x108]
+       mov      eax, dword ptr [rdi+0x14]
+						;; size=10 bbWeight=1 PerfScore 4.00
 G_M925_IG03:
-       movzx    r11, word  ptr [rax+0x08]
-       mov      dword ptr [rbp-0x2C], r11d
-       mov      esi, dword ptr [rbx+0x1C]
-       mov      rcx, gword ptr [rbx+0x10]
-       mov      ecx, dword ptr [rcx+0x08]
-       add      ecx, -2
-       movsxd   rcx, ecx
-       mov      edx, esi
-       cmp      rcx, rdx
-       jge      SHORT G_M925_IG04
-       mov      rdi, rbx
-       mov      esi, 2
-       mov      rcx, 0xD1FFAB1E      ; code for System.Reflection.Metadata.BlobBuilder:Expand(int):this
-       call     [rcx]System.Reflection.Metadata.BlobBuilder:Expand(int):this
-       xor      esi, esi
-						;; size=54 bbWeight=2 PerfScore 30.00
+       vmovdqu  ymm0, ymmword ptr [rbp-0x88]
+       vmovdqu  ymmword ptr [rbp-0x58], ymm0
+       vmovdqu  xmm0, xmmword ptr [rbp-0x68]
+       vmovdqu  xmmword ptr [rbp-0x38], xmm0
+						;; size=23 bbWeight=1 PerfScore 9.00
 G_M925_IG04:
-       lea      ecx, [rsi+0x02]
-       mov      dword ptr [rbx+0x1C], ecx
-       mov      rcx, gword ptr [rbx+0x10]
-       cmp      esi, dword ptr [rcx+0x08]
-       jae      G_M925_IG27
-       mov      esi, esi
-       mov      r11d, dword ptr [rbp-0x2C]
-       mov      word  ptr [rcx+rsi+0x10], r11w
-       mov      rax, gword ptr [rbp-0x60]
-       movzx    rcx, word  ptr [rax+0x0C]
-       mov      dword ptr [rbp-0x30], ecx
-       mov      edx, dword ptr [rbx+0x1C]
-       mov      rsi, gword ptr [rbx+0x10]
-       mov      esi, dword ptr [rsi+0x08]
-       add      esi, -2
-       movsxd   rsi, esi
-       mov      r11d, edx
-       cmp      rsi, r11
-       jge      SHORT G_M925_IG05
-       mov      rdi, rbx
-       mov      esi, 2
-       mov      rdx, 0xD1FFAB1E      ; code for System.Reflection.Metadata.BlobBuilder:Expand(int):this
-       call     [rdx]System.Reflection.Metadata.BlobBuilder:Expand(int):this
-       xor      edx, edx
-						;; size=88 bbWeight=2 PerfScore 51.50
+       mov      gword ptr [rbp-0x58], rdi
+       xor      edi, edi
+       mov      dword ptr [rbp-0x50], edi
+       mov      dword ptr [rbp-0x4C], eax
+       lea      rdi, [rbp-0x58]
+       mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1+Enumerator[System.Reflection.Metadata.Ecma335.MetadataBuilder+AssemblyRefTableRow]:MoveNext():ubyte:this
+       call     [rax]System.Collections.Generic.List`1+Enumerator[System.Reflection.Metadata.Ecma335.MetadataBuilder+AssemblyRefTableRow]:MoveNext():ubyte:this
+       test     eax, eax
+       je       G_M925_IG36
+						;; size=36 bbWeight=1 PerfScore 8.25
 G_M925_IG05:
-       lea      esi, [rdx+0x02]
-       mov      dword ptr [rbx+0x1C], esi
-       mov      rsi, gword ptr [rbx+0x10]
-       cmp      edx, dword ptr [rsi+0x08]
-       jae      G_M925_IG27
-       mov      edx, edx
-       mov      ecx, dword ptr [rbp-0x30]
-       mov      word  ptr [rsi+rdx+0x10], cx
-       mov      rax, gword ptr [rbp-0x60]
-       movzx    rcx, word  ptr [rax+0x10]
-       mov      dword ptr [rbp-0x34], ecx
-       mov      edx, dword ptr [rbx+0x1C]
-       mov      rsi, gword ptr [rbx+0x10]
-       mov      esi, dword ptr [rsi+0x08]
-       add      esi, -2
-       movsxd   rsi, esi
-       mov      r11d, edx
-       cmp      rsi, r11
-       jge      SHORT G_M925_IG06
-       mov      rdi, rbx
-       mov      esi, 2
-       mov      rdx, 0xD1FFAB1E      ; code for System.Reflection.Metadata.BlobBuilder:Expand(int):this
-       call     [rdx]System.Reflection.Metadata.BlobBuilder:Expand(int):this
-       xor      edx, edx
-						;; size=86 bbWeight=2 PerfScore 51.50
-G_M925_IG06:
-       lea      esi, [rdx+0x02]
-       mov      dword ptr [rbx+0x1C], esi
-       mov      rsi, gword ptr [rbx+0x10]
-       cmp      edx, dword ptr [rsi+0x08]
-       jae      G_M925_IG27
-       mov      edx, edx
-       mov      ecx, dword ptr [rbp-0x34]
-       mov      word  ptr [rsi+rdx+0x10], cx
-       mov      rax, gword ptr [rbp-0x60]
-       movzx    rax, word  ptr [rax+0x14]
-       mov      dword ptr [rbp-0x38], eax
-       mov      ecx, dword ptr [rbx+0x1C]
-       mov      rsi, gword ptr [rbx+0x10]
-       mov      esi, dword ptr [rsi+0x08]
-       add      esi, -2
-       movsxd   rsi, esi
-       mov      edx, ecx
-       cmp      rsi, rdx
+       mov      r13, gword ptr [rbp-0x48]
+       mov      r12d, dword ptr [rbp-0x40]
+       mov      eax, dword ptr [rbp-0x3C]
+       mov      dword ptr [rbp-0x98], eax
+       mov      ecx, dword ptr [rbp-0x38]
+       mov      dword ptr [rbp-0x9C], ecx
+       mov      edx, dword ptr [rbp-0x34]
+       mov      dword ptr [rbp-0xA0], edx
+       mov      r8d, dword ptr [rbp-0x30]
+       mov      dword ptr [rbp-0xA4], r8d
+       movzx    r9, word  ptr [r13+0x08]
+       mov      dword ptr [rbp-0x8C], r9d
+       mov      r10d, dword ptr [rbx+0x1C]
+       mov      rdi, gword ptr [rbx+0x10]
+       mov      edi, dword ptr [rdi+0x08]
+       add      edi, -2
+       movsxd   rdi, edi
+       mov      esi, r10d
+       cmp      rdi, rsi
        jge      SHORT G_M925_IG07
+						;; size=83 bbWeight=4 PerfScore 84.00
+G_M925_IG06:
        mov      rdi, rbx
        mov      esi, 2
-       mov      rcx, 0xD1FFAB1E      ; code for System.Reflection.Metadata.BlobBuilder:Expand(int):this
-       call     [rcx]System.Reflection.Metadata.BlobBuilder:Expand(int):this
-       xor      ecx, ecx
-						;; size=85 bbWeight=2 PerfScore 51.50
+       mov      r10, 0xD1FFAB1E      ; code for System.Reflection.Metadata.BlobBuilder:Expand(int):this
+       call     [r10]System.Reflection.Metadata.BlobBuilder:Expand(int):this
+       xor      r10d, r10d
+						;; size=24 bbWeight=2 PerfScore 8.00
 G_M925_IG07:
-       lea      esi, [rcx+0x02]
-       mov      dword ptr [rbx+0x1C], esi
-       mov      rsi, gword ptr [rbx+0x10]
-       cmp      ecx, dword ptr [rsi+0x08]
-       jae      G_M925_IG27
-       mov      ecx, ecx
-       mov      eax, dword ptr [rbp-0x38]
-       mov      word  ptr [rsi+rcx+0x10], ax
-       mov      eax, dword ptr [rbx+0x1C]
-       mov      rsi, gword ptr [rbx+0x10]
-       mov      esi, dword ptr [rsi+0x08]
-       add      esi, -4
-       movsxd   rsi, esi
-       mov      ecx, eax
-       cmp      rsi, rcx
-       jge      SHORT G_M925_IG08
-       mov      rdi, rbx
-       mov      esi, 4
-       mov      rax, 0xD1FFAB1E      ; code for System.Reflection.Metadata.BlobBuilder:Expand(int):this
-       call     [rax]System.Reflection.Metadata.BlobBuilder:Expand(int):this
-       xor      eax, eax
-						;; size=74 bbWeight=2 PerfScore 43.50
-G_M925_IG08:
-       lea      esi, [rax+0x04]
-       mov      dword ptr [rbx+0x1C], esi
-       mov      rsi, gword ptr [rbx+0x10]
-       cmp      eax, dword ptr [rsi+0x08]
-       jae      G_M925_IG27
-       mov      eax, eax
-       mov      ecx, dword ptr [rbp-0x48]
-       mov      dword ptr [rsi+rax+0x10], ecx
-       movzx    rsi, byte  ptr [r15+0x2A]
-       test     esi, esi
-       je       SHORT G_M925_IG10
-       mov      eax, dword ptr [rbx+0x1C]
-       mov      rsi, gword ptr [rbx+0x10]
-       mov      esi, dword ptr [rsi+0x08]
-       add      esi, -2
-       movsxd   rsi, esi
-       mov      ecx, eax
-       cmp      rsi, rcx
+       lea      edi, [r10+0x02]
+       mov      dword ptr [rbx+0x1C], edi
+       mov      rdi, gword ptr [rbx+0x10]
+       cmp      r10d, dword ptr [rdi+0x08]
+       jae      G_M925_IG37
+       mov      esi, r10d
+       mov      r9d, dword ptr [rbp-0x8C]
+       mov      word  ptr [rdi+rsi+0x10], r9w
+       movzx    r9, word  ptr [r13+0x0C]
+       mov      dword ptr [rbp-0x90], r9d
+       mov      r10d, dword ptr [rbx+0x1C]
+       mov      rdi, gword ptr [rbx+0x10]
+       mov      edi, dword ptr [rdi+0x08]
+       add      edi, -2
+       movsxd   rdi, edi
+       mov      esi, r10d
+       cmp      rdi, rsi
        jge      SHORT G_M925_IG09
+						;; size=74 bbWeight=4 PerfScore 83.00
+G_M925_IG08:
        mov      rdi, rbx
        mov      esi, 2
-       mov      rax, 0xD1FFAB1E      ; code for System.Reflection.Metadata.BlobBuilder:Expand(int):this
-       call     [rax]System.Reflection.Metadata.BlobBuilder:Expand(int):this
-       xor      eax, eax
-						;; size=82 bbWeight=2 PerfScore 50.00
+       mov      r10, 0xD1FFAB1E      ; code for System.Reflection.Metadata.BlobBuilder:Expand(int):this
+       call     [r10]System.Reflection.Metadata.BlobBuilder:Expand(int):this
+       xor      r10d, r10d
+						;; size=24 bbWeight=2 PerfScore 8.00
 G_M925_IG09:
-       lea      esi, [rax+0x02]
-       mov      dword ptr [rbx+0x1C], esi
-       mov      rsi, gword ptr [rbx+0x10]
-       cmp      eax, dword ptr [rsi+0x08]
-       jae      G_M925_IG27
-       mov      eax, eax
-       mov      ecx, dword ptr [rbp-0x4C]
-       mov      word  ptr [rsi+rax+0x10], cx
-       jmp      SHORT G_M925_IG12
-						;; size=31 bbWeight=2 PerfScore 23.50
-G_M925_IG10:
-       mov      eax, dword ptr [rbx+0x1C]
-       mov      rsi, gword ptr [rbx+0x10]
-       mov      esi, dword ptr [rsi+0x08]
-       add      esi, -4
-       movsxd   rsi, esi
-       mov      edx, eax
-       cmp      rsi, rdx
+       lea      edi, [r10+0x02]
+       mov      dword ptr [rbx+0x1C], edi
+       mov      rdi, gword ptr [rbx+0x10]
+       cmp      r10d, dword ptr [rdi+0x08]
+       jae      G_M925_IG37
+       mov      esi, r10d
+       mov      r9d, dword ptr [rbp-0x90]
+       mov      word  ptr [rdi+rsi+0x10], r9w
+       movzx    r9, word  ptr [r13+0x10]
+       mov      dword ptr [rbp-0x94], r9d
+       mov      r10d, dword ptr [rbx+0x1C]
+       mov      rdi, gword ptr [rbx+0x10]
+       mov      edi, dword ptr [rdi+0x08]
+       add      edi, -2
+       movsxd   rdi, edi
+       mov      esi, r10d
+       cmp      rdi, rsi
        jge      SHORT G_M925_IG11
+						;; size=74 bbWeight=4 PerfScore 83.00
+G_M925_IG10:
        mov      rdi, rbx
-       mov      esi, 4
-       mov      rax, 0xD1FFAB1E      ; code for System.Reflection.Metadata.BlobBuilder:Expand(int):this
-       call     [rax]System.Reflection.Metadata.BlobBuilder:Expand(int):this
-       xor      eax, eax
-						;; size=45 bbWeight=2 PerfScore 24.00
+       mov      esi, 2
+       mov      r10, 0xD1FFAB1E      ; code for System.Reflection.Metadata.BlobBuilder:Expand(int):this
+       call     [r10]System.Reflection.Metadata.BlobBuilder:Expand(int):this
+       xor      r10d, r10d
+						;; size=24 bbWeight=2 PerfScore 8.00
 G_M925_IG11:
-       lea      esi, [rax+0x04]
-       mov      dword ptr [rbx+0x1C], esi
-       mov      rsi, gword ptr [rbx+0x10]
-       cmp      eax, dword ptr [rsi+0x08]
-       jae      G_M925_IG27
-       mov      eax, eax
-       mov      ecx, dword ptr [rbp-0x4C]
-       mov      dword ptr [rsi+rax+0x10], ecx
-						;; size=28 bbWeight=2 PerfScore 19.50
-G_M925_IG12:
-       mov      r8d, dword ptr [rbp-0x50]
-       mov      esi, r8d
-       and      esi, 0xD1FFAB1E
-       cmp      esi, dword ptr [r14+0x08]
-       jae      G_M925_IG27
-       and      r8d, 0xD1FFAB1E
-       mov      esi, r8d
-       mov      eax, dword ptr [r14+4*rsi+0x10]
-       mov      dword ptr [rbp-0x3C], eax
-       movzx    rsi, byte  ptr [r15+0x2B]
-       test     esi, esi
-       je       SHORT G_M925_IG14
-       mov      ecx, dword ptr [rbx+0x1C]
-       mov      rsi, gword ptr [rbx+0x10]
-       mov      esi, dword ptr [rsi+0x08]
-       add      esi, -2
-       movsxd   rsi, esi
-       mov      edx, ecx
-       cmp      rsi, rdx
+       lea      edi, [r10+0x02]
+       mov      dword ptr [rbx+0x1C], edi
+       mov      rdi, gword ptr [rbx+0x10]
+       cmp      r10d, dword ptr [rdi+0x08]
+       jae      G_M925_IG37
+       mov      esi, r10d
+       mov      r9d, dword ptr [rbp-0x94]
+       mov      word  ptr [rdi+rsi+0x10], r9w
+       movzx    r13, word  ptr [r13+0x14]
+       mov      r9d, dword ptr [rbx+0x1C]
+       mov      rdi, gword ptr [rbx+0x10]
+       mov      edi, dword ptr [rdi+0x08]
+       add      edi, -2
+       movsxd   rdi, edi
+       mov      esi, r9d
+       cmp      rdi, rsi
        jge      SHORT G_M925_IG13
+						;; size=67 bbWeight=4 PerfScore 79.00
+G_M925_IG12:
        mov      rdi, rbx
        mov      esi, 2
-       mov      rcx, 0xD1FFAB1E      ; code for System.Reflection.Metadata.BlobBuilder:Expand(int):this
-       call     [rcx]System.Reflection.Metadata.BlobBuilder:Expand(int):this
-       xor      ecx, ecx
-						;; size=95 bbWeight=2 PerfScore 48.50
+       mov      r9, 0xD1FFAB1E      ; code for System.Reflection.Metadata.BlobBuilder:Expand(int):this
+       call     [r9]System.Reflection.Metadata.BlobBuilder:Expand(int):this
+       xor      r9d, r9d
+						;; size=24 bbWeight=2 PerfScore 8.00
 G_M925_IG13:
-       lea      esi, [rcx+0x02]
-       mov      dword ptr [rbx+0x1C], esi
-       mov      rsi, gword ptr [rbx+0x10]
-       cmp      ecx, dword ptr [rsi+0x08]
-       jae      G_M925_IG27
-       mov      ecx, ecx
-       mov      eax, dword ptr [rbp-0x3C]
-       mov      word  ptr [rsi+rcx+0x10], ax
-       jmp      SHORT G_M925_IG16
-						;; size=31 bbWeight=2 PerfScore 23.50
-G_M925_IG14:
-       mov      ecx, dword ptr [rbx+0x1C]
-       mov      rsi, gword ptr [rbx+0x10]
-       mov      esi, dword ptr [rsi+0x08]
-       add      esi, -4
-       movsxd   rsi, esi
-       mov      edx, ecx
-       cmp      rsi, rdx
+       lea      edi, [r9+0x02]
+       mov      dword ptr [rbx+0x1C], edi
+       mov      rdi, gword ptr [rbx+0x10]
+       cmp      r9d, dword ptr [rdi+0x08]
+       jae      G_M925_IG37
+       mov      esi, r9d
+       mov      word  ptr [rdi+rsi+0x10], r13w
+       mov      r13d, dword ptr [rbx+0x1C]
+       mov      rdi, gword ptr [rbx+0x10]
+       mov      edi, dword ptr [rdi+0x08]
+       add      edi, -4
+       movsxd   rdi, edi
+       mov      esi, r13d
+       cmp      rdi, rsi
        jge      SHORT G_M925_IG15
+						;; size=55 bbWeight=4 PerfScore 67.00
+G_M925_IG14:
        mov      rdi, rbx
        mov      esi, 4
-       mov      rcx, 0xD1FFAB1E      ; code for System.Reflection.Metadata.BlobBuilder:Expand(int):this
-       call     [rcx]System.Reflection.Metadata.BlobBuilder:Expand(int):this
-       xor      ecx, ecx
-						;; size=45 bbWeight=2 PerfScore 24.00
+       mov      r9, 0xD1FFAB1E      ; code for System.Reflection.Metadata.BlobBuilder:Expand(int):this
+       call     [r9]System.Reflection.Metadata.BlobBuilder:Expand(int):this
+       xor      r13d, r13d
+						;; size=24 bbWeight=2 PerfScore 8.00
 G_M925_IG15:
-       lea      esi, [rcx+0x04]
-       mov      dword ptr [rbx+0x1C], esi
-       mov      rsi, gword ptr [rbx+0x10]
-       cmp      ecx, dword ptr [rsi+0x08]
-       jae      G_M925_IG27
-       mov      ecx, ecx
-       mov      eax, dword ptr [rbp-0x3C]
-       mov      dword ptr [rsi+rcx+0x10], eax
-						;; size=28 bbWeight=2 PerfScore 19.50
-G_M925_IG16:
-       mov      r9d, dword ptr [rbp-0x54]
-       mov      esi, r9d
-       and      esi, 0xD1FFAB1E
-       cmp      esi, dword ptr [r14+0x08]
-       jae      G_M925_IG27
-       and      r9d, 0xD1FFAB1E
-       mov      esi, r9d
-       mov      eax, dword ptr [r14+4*rsi+0x10]
-       mov      dword ptr [rbp-0x40], eax
-       movzx    rsi, byte  ptr [r15+0x2B]
-       test     esi, esi
+       lea      edi, [r13+0x04]
+       mov      dword ptr [rbx+0x1C], edi
+       mov      rdi, gword ptr [rbx+0x10]
+       cmp      r13d, dword ptr [rdi+0x08]
+       jae      G_M925_IG37
+       mov      esi, r13d
+       mov      dword ptr [rdi+rsi+0x10], r12d
+       movzx    rdi, byte  ptr [r15+0x2A]
+       test     edi, edi
        je       SHORT G_M925_IG18
-       mov      ecx, dword ptr [rbx+0x1C]
-       mov      rsi, gword ptr [rbx+0x10]
-       mov      esi, dword ptr [rsi+0x08]
-       add      esi, -2
-       movsxd   rsi, esi
-       mov      edx, ecx
-       cmp      rsi, rdx
+						;; size=38 bbWeight=4 PerfScore 48.00
+G_M925_IG16:
+       mov      r13d, dword ptr [rbx+0x1C]
+       mov      rdi, gword ptr [rbx+0x10]
+       mov      edi, dword ptr [rdi+0x08]
+       add      edi, -2
+       movsxd   rdi, edi
+       mov      esi, r13d
+       cmp      rdi, rsi
        jge      SHORT G_M925_IG17
        mov      rdi, rbx
        mov      esi, 2
-       mov      rcx, 0xD1FFAB1E      ; code for System.Reflection.Metadata.BlobBuilder:Expand(int):this
-       call     [rcx]System.Reflection.Metadata.BlobBuilder:Expand(int):this
-       xor      ecx, ecx
-						;; size=95 bbWeight=2 PerfScore 48.50
+       mov      r9, 0xD1FFAB1E      ; code for System.Reflection.Metadata.BlobBuilder:Expand(int):this
+       call     [r9]System.Reflection.Metadata.BlobBuilder:Expand(int):this
+       xor      r13d, r13d
+						;; size=49 bbWeight=2 PerfScore 24.00
 G_M925_IG17:
-       lea      esi, [rcx+0x02]
-       mov      dword ptr [rbx+0x1C], esi
-       mov      rsi, gword ptr [rbx+0x10]
-       cmp      ecx, dword ptr [rsi+0x08]
-       jae      G_M925_IG27
-       mov      ecx, ecx
-       mov      eax, dword ptr [rbp-0x40]
-       mov      word  ptr [rsi+rcx+0x10], ax
+       lea      edi, [r13+0x02]
+       mov      dword ptr [rbx+0x1C], edi
+       mov      rdi, gword ptr [rbx+0x10]
+       cmp      r13d, dword ptr [rdi+0x08]
+       jae      G_M925_IG37
+       mov      esi, r13d
+       mov      eax, dword ptr [rbp-0x98]
+       mov      word  ptr [rdi+rsi+0x10], ax
        jmp      SHORT G_M925_IG20
-						;; size=31 bbWeight=2 PerfScore 23.50
+						;; size=37 bbWeight=2 PerfScore 23.50
 G_M925_IG18:
-       mov      ecx, dword ptr [rbx+0x1C]
-       mov      rsi, gword ptr [rbx+0x10]
-       mov      esi, dword ptr [rsi+0x08]
-       add      esi, -4
-       movsxd   rsi, esi
-       mov      edx, ecx
-       cmp      rsi, rdx
+       mov      r13d, dword ptr [rbx+0x1C]
+       mov      rdi, gword ptr [rbx+0x10]
+       mov      edi, dword ptr [rdi+0x08]
+       add      edi, -4
+       movsxd   rdi, edi
+       mov      esi, r13d
+       cmp      rdi, rsi
        jge      SHORT G_M925_IG19
        mov      rdi, rbx
        mov      esi, 4
-       mov      rcx, 0xD1FFAB1E      ; code for System.Reflection.Metadata.BlobBuilder:Expand(int):this
-       call     [rcx]System.Reflection.Metadata.BlobBuilder:Expand(int):this
-       xor      ecx, ecx
-						;; size=45 bbWeight=2 PerfScore 24.00
+       mov      r9, 0xD1FFAB1E      ; code for System.Reflection.Metadata.BlobBuilder:Expand(int):this
+       call     [r9]System.Reflection.Metadata.BlobBuilder:Expand(int):this
+       xor      r13d, r13d
+						;; size=49 bbWeight=2 PerfScore 24.00
 G_M925_IG19:
-       lea      esi, [rcx+0x04]
-       mov      dword ptr [rbx+0x1C], esi
-       mov      rsi, gword ptr [rbx+0x10]
-       cmp      ecx, dword ptr [rsi+0x08]
-       jae      G_M925_IG27
-       mov      ecx, ecx
-       mov      eax, dword ptr [rbp-0x40]
-       mov      dword ptr [rsi+rcx+0x10], eax
-						;; size=28 bbWeight=2 PerfScore 19.50
+       lea      edi, [r13+0x04]
+       mov      dword ptr [rbx+0x1C], edi
+       mov      rdi, gword ptr [rbx+0x10]
+       cmp      r13d, dword ptr [rdi+0x08]
+       jae      G_M925_IG37
+       mov      esi, r13d
+       mov      eax, dword ptr [rbp-0x98]
+       mov      dword ptr [rdi+rsi+0x10], eax
+						;; size=34 bbWeight=2 PerfScore 19.50
 G_M925_IG20:
-       movzx    rsi, byte  ptr [r15+0x2A]
-       test     esi, esi
-       je       SHORT G_M925_IG22
-       mov      eax, dword ptr [rbx+0x1C]
-       mov      rsi, gword ptr [rbx+0x10]
-       mov      esi, dword ptr [rsi+0x08]
-       add      esi, -2
-       movsxd   rsi, esi
-       mov      ecx, eax
-       cmp      rsi, rcx
-       jge      SHORT G_M925_IG21
+       mov      ecx, dword ptr [rbp-0x9C]
+       mov      edi, ecx
+       and      edi, 0xD1FFAB1E
+       cmp      edi, dword ptr [r14+0x08]
+       jae      G_M925_IG37
+       and      ecx, 0xD1FFAB1E
+       mov      edi, ecx
+       mov      r13d, dword ptr [r14+4*rdi+0x10]
+       movzx    rdi, byte  ptr [r15+0x2B]
+       test     edi, edi
+       je       SHORT G_M925_IG23
+						;; size=46 bbWeight=4 PerfScore 45.00
+G_M925_IG21:
+       mov      r12d, dword ptr [rbx+0x1C]
+       mov      rdi, gword ptr [rbx+0x10]
+       mov      edi, dword ptr [rdi+0x08]
+       add      edi, -2
+       movsxd   rdi, edi
+       mov      esi, r12d
+       cmp      rdi, rsi
+       jge      SHORT G_M925_IG22
        mov      rdi, rbx
        mov      esi, 2
        mov      rax, 0xD1FFAB1E      ; code for System.Reflection.Metadata.BlobBuilder:Expand(int):this
        call     [rax]System.Reflection.Metadata.BlobBuilder:Expand(int):this
-       xor      eax, eax
-						;; size=54 bbWeight=2 PerfScore 30.50
-G_M925_IG21:
-       lea      esi, [rax+0x02]
-       mov      dword ptr [rbx+0x1C], esi
-       mov      rsi, gword ptr [rbx+0x10]
-       cmp      eax, dword ptr [rsi+0x08]
-       jae      G_M925_IG27
-       mov      eax, eax
-       mov      r10d, dword ptr [rbp-0x58]
-       mov      word  ptr [rsi+rax+0x10], r10w
-       mov      edi, dword ptr [rbp-0x44]
-       jmp      SHORT G_M925_IG24
-						;; size=36 bbWeight=2 PerfScore 25.50
+       xor      r12d, r12d
+						;; size=48 bbWeight=2 PerfScore 24.00
 G_M925_IG22:
-       mov      eax, dword ptr [rbx+0x1C]
-       mov      rsi, gword ptr [rbx+0x10]
-       mov      esi, dword ptr [rsi+0x08]
-       add      esi, -4
-       movsxd   rsi, esi
-       mov      ecx, eax
-       cmp      rsi, rcx
-       jge      SHORT G_M925_IG23
+       lea      edi, [r12+0x02]
+       mov      dword ptr [rbx+0x1C], edi
+       mov      rdi, gword ptr [rbx+0x10]
+       cmp      r12d, dword ptr [rdi+0x08]
+       jae      G_M925_IG37
+       mov      esi, r12d
+       mov      word  ptr [rdi+rsi+0x10], r13w
+       jmp      SHORT G_M925_IG25
+						;; size=33 bbWeight=2 PerfScore 21.50
+G_M925_IG23:
+       mov      r12d, dword ptr [rbx+0x1C]
+       mov      rdi, gword ptr [rbx+0x10]
+       mov      edi, dword ptr [rdi+0x08]
+       add      edi, -4
+       movsxd   rdi, edi
+       mov      esi, r12d
+       cmp      rdi, rsi
+       jge      SHORT G_M925_IG24
        mov      rdi, rbx
        mov      esi, 4
        mov      rax, 0xD1FFAB1E      ; code for System.Reflection.Metadata.BlobBuilder:Expand(int):this
        call     [rax]System.Reflection.Metadata.BlobBuilder:Expand(int):this
-       xor      eax, eax
-						;; size=45 bbWeight=2 PerfScore 24.00
-G_M925_IG23:
-       lea      ecx, [rax+0x04]
-       mov      dword ptr [rbx+0x1C], ecx
-       mov      rcx, gword ptr [rbx+0x10]
-       cmp      eax, dword ptr [rcx+0x08]
-       jae      SHORT G_M925_IG27
-       mov      eax, eax
-       mov      r10d, dword ptr [rbp-0x58]
-       mov      dword ptr [rcx+rax+0x10], r10d
-       mov      edi, dword ptr [rbp-0x44]
-						;; size=29 bbWeight=2 PerfScore 21.50
+       xor      r12d, r12d
+						;; size=48 bbWeight=2 PerfScore 24.00
 G_M925_IG24:
-       mov      esi, dword ptr [r13+0x14]
-       cmp      r12d, esi
-       jne      SHORT G_M925_IG28
-						;; size=9 bbWeight=8 PerfScore 26.00
+       lea      edi, [r12+0x04]
+       mov      dword ptr [rbx+0x1C], edi
+       mov      rdi, gword ptr [rbx+0x10]
+       cmp      r12d, dword ptr [rdi+0x08]
+       jae      G_M925_IG37
+       mov      esi, r12d
+       mov      dword ptr [rdi+rsi+0x10], r13d
+						;; size=30 bbWeight=2 PerfScore 17.50
 G_M925_IG25:
-       mov      esi, dword ptr [r13+0x10]
-       cmp      edi, esi
-       jae      SHORT G_M925_IG26
-       mov      rsi, gword ptr [r13+0x08]
-       cmp      edi, dword ptr [rsi+0x08]
-       jae      SHORT G_M925_IG27
-       mov      eax, edi
-       shl      rax, 5
-       lea      rsi, bword ptr [rsi+rax+0x10]
-       mov      rax, gword ptr [rsi]
-       mov      gword ptr [rbp-0x60], rax
-       mov      ecx, dword ptr [rsi+0x08]
-       mov      dword ptr [rbp-0x48], ecx
-       mov      edx, dword ptr [rsi+0x0C]
-       mov      dword ptr [rbp-0x4C], edx
-       mov      r8d, dword ptr [rsi+0x10]
-       mov      dword ptr [rbp-0x50], r8d
-       mov      r9d, dword ptr [rsi+0x14]
-       mov      dword ptr [rbp-0x54], r9d
-       mov      r10d, dword ptr [rsi+0x18]
-       mov      dword ptr [rbp-0x58], r10d
-       inc      edi
-       mov      dword ptr [rbp-0x44], edi
-       jmp      G_M925_IG03
-						;; size=81 bbWeight=4 PerfScore 129.00
+       mov      edx, dword ptr [rbp-0xA0]
+       mov      edi, edx
+       and      edi, 0xD1FFAB1E
+       cmp      edi, dword ptr [r14+0x08]
+       jae      G_M925_IG37
+       and      edx, 0xD1FFAB1E
+       mov      edi, edx
+       mov      r13d, dword ptr [r14+4*rdi+0x10]
+       movzx    rdi, byte  ptr [r15+0x2B]
+       test     edi, edi
+       je       SHORT G_M925_IG28
+						;; size=46 bbWeight=4 PerfScore 45.00
 G_M925_IG26:
-       add      rsp, 56
+       mov      r12d, dword ptr [rbx+0x1C]
+       mov      rdi, gword ptr [rbx+0x10]
+       mov      edi, dword ptr [rdi+0x08]
+       add      edi, -2
+       movsxd   rdi, edi
+       mov      esi, r12d
+       cmp      rdi, rsi
+       jge      SHORT G_M925_IG27
+       mov      rdi, rbx
+       mov      esi, 2
+       mov      rax, 0xD1FFAB1E      ; code for System.Reflection.Metadata.BlobBuilder:Expand(int):this
+       call     [rax]System.Reflection.Metadata.BlobBuilder:Expand(int):this
+       xor      r12d, r12d
+						;; size=48 bbWeight=2 PerfScore 24.00
+G_M925_IG27:
+       lea      edi, [r12+0x02]
+       mov      dword ptr [rbx+0x1C], edi
+       mov      rdi, gword ptr [rbx+0x10]
+       cmp      r12d, dword ptr [rdi+0x08]
+       jae      G_M925_IG37
+       mov      esi, r12d
+       mov      word  ptr [rdi+rsi+0x10], r13w
+       jmp      SHORT G_M925_IG30
+						;; size=33 bbWeight=2 PerfScore 21.50
+G_M925_IG28:
+       mov      r12d, dword ptr [rbx+0x1C]
+       mov      rdi, gword ptr [rbx+0x10]
+       mov      edi, dword ptr [rdi+0x08]
+       add      edi, -4
+       movsxd   rdi, edi
+       mov      esi, r12d
+       cmp      rdi, rsi
+       jge      SHORT G_M925_IG29
+       mov      rdi, rbx
+       mov      esi, 4
+       mov      rax, 0xD1FFAB1E      ; code for System.Reflection.Metadata.BlobBuilder:Expand(int):this
+       call     [rax]System.Reflection.Metadata.BlobBuilder:Expand(int):this
+       xor      r12d, r12d
+						;; size=48 bbWeight=2 PerfScore 24.00
+G_M925_IG29:
+       lea      edi, [r12+0x04]
+       mov      dword ptr [rbx+0x1C], edi
+       mov      rdi, gword ptr [rbx+0x10]
+       cmp      r12d, dword ptr [rdi+0x08]
+       jae      G_M925_IG37
+       mov      esi, r12d
+       mov      dword ptr [rdi+rsi+0x10], r13d
+						;; size=30 bbWeight=2 PerfScore 17.50
+G_M925_IG30:
+       movzx    rdi, byte  ptr [r15+0x2A]
+       test     edi, edi
+       je       SHORT G_M925_IG33
+						;; size=9 bbWeight=4 PerfScore 13.00
+G_M925_IG31:
+       mov      r13d, dword ptr [rbx+0x1C]
+       mov      rdi, gword ptr [rbx+0x10]
+       mov      edi, dword ptr [rdi+0x08]
+       add      edi, -2
+       movsxd   rdi, edi
+       mov      esi, r13d
+       cmp      rdi, rsi
+       jge      SHORT G_M925_IG32
+       mov      rdi, rbx
+       mov      esi, 2
+       mov      rax, 0xD1FFAB1E      ; code for System.Reflection.Metadata.BlobBuilder:Expand(int):this
+       call     [rax]System.Reflection.Metadata.BlobBuilder:Expand(int):this
+       xor      r13d, r13d
+						;; size=48 bbWeight=2 PerfScore 24.00
+G_M925_IG32:
+       lea      edi, [r13+0x02]
+       mov      dword ptr [rbx+0x1C], edi
+       mov      rdi, gword ptr [rbx+0x10]
+       cmp      r13d, dword ptr [rdi+0x08]
+       jae      G_M925_IG37
+       mov      esi, r13d
+       mov      r8d, dword ptr [rbp-0xA4]
+       mov      word  ptr [rdi+rsi+0x10], r8w
+       jmp      SHORT G_M925_IG35
+						;; size=39 bbWeight=2 PerfScore 23.50
+G_M925_IG33:
+       mov      r13d, dword ptr [rbx+0x1C]
+       mov      rdi, gword ptr [rbx+0x10]
+       mov      edi, dword ptr [rdi+0x08]
+       add      edi, -4
+       movsxd   rdi, edi
+       mov      esi, r13d
+       cmp      rdi, rsi
+       jge      SHORT G_M925_IG34
+       mov      rdi, rbx
+       mov      esi, 4
+       mov      rax, 0xD1FFAB1E      ; code for System.Reflection.Metadata.BlobBuilder:Expand(int):this
+       call     [rax]System.Reflection.Metadata.BlobBuilder:Expand(int):this
+       xor      r13d, r13d
+						;; size=48 bbWeight=2 PerfScore 24.00
+G_M925_IG34:
+       lea      edi, [r13+0x04]
+       mov      dword ptr [rbx+0x1C], edi
+       mov      rdi, gword ptr [rbx+0x10]
+       cmp      r13d, dword ptr [rdi+0x08]
+       jae      SHORT G_M925_IG37
+       mov      eax, r13d
+       mov      r8d, dword ptr [rbp-0xA4]
+       mov      dword ptr [rdi+rax+0x10], r8d
+						;; size=32 bbWeight=2 PerfScore 19.50
+G_M925_IG35:
+       lea      rdi, [rbp-0x58]
+       mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1+Enumerator[System.Reflection.Metadata.Ecma335.MetadataBuilder+AssemblyRefTableRow]:MoveNext():ubyte:this
+       call     [rax]System.Collections.Generic.List`1+Enumerator[System.Reflection.Metadata.Ecma335.MetadataBuilder+AssemblyRefTableRow]:MoveNext():ubyte:this
+       test     eax, eax
+       jne      G_M925_IG05
+						;; size=24 bbWeight=4 PerfScore 20.00
+G_M925_IG36:
+       vzeroupper 
+       add      rsp, 136
        pop      rbx
        pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
-						;; size=15 bbWeight=4 PerfScore 17.00
-G_M925_IG27:
+						;; size=21 bbWeight=1 PerfScore 5.25
+G_M925_IG37:
        call     CORINFO_HELP_RNGCHKFAIL
        int3     
 						;; size=6 bbWeight=0 PerfScore 0.00
-G_M925_IG28:
-       mov      rax, 0xD1FFAB1E      ; code for System.ThrowHelper:ThrowInvalidOperationException_InvalidOperation_EnumFailedVersion()
-       call     [rax]System.ThrowHelper:ThrowInvalidOperationException_InvalidOperation_EnumFailedVersion()
-       int3     
-						;; size=13 bbWeight=0 PerfScore 0.00
 
-; Total bytes of code 1305, prolog size 28, PerfScore 863.25, instruction count 375, allocated bytes for code 1305 (MethodHash=72d2fc62) for method System.Reflection.Metadata.Ecma335.MetadataBuilder:SerializeAssemblyRefTable(System.Reflection.Metadata.BlobBuilder,System.Collections.Immutable.ImmutableArray`1[int],System.Reflection.Metadata.Ecma335.MetadataSizes):this (FullOpts)
+; Total bytes of code 1443, prolog size 48, PerfScore 1001.58, instruction count 363, allocated bytes for code 1443 (MethodHash=72d2fc62) for method System.Reflection.Metadata.Ecma335.MetadataBuilder:SerializeAssemblyRefTable(System.Reflection.Metadata.BlobBuilder,System.Collections.Immutable.ImmutableArray`1[int],System.Reflection.Metadata.Ecma335.MetadataSizes):this (FullOpts)
118 (7.77 % of base) - System.Xml.Xsl.Xslt.XslAstAnalyzer:Analyze(System.Xml.Xsl.Xslt.Compiler):int:this
 ; Assembly listing for method System.Xml.Xsl.Xslt.XslAstAnalyzer:Analyze(System.Xml.Xsl.Xslt.Compiler):int:this (FullOpts)
 ; Emitting BLENDED_CODE for X64 with AVX - Unix
 ; FullOpts code
 ; optimized code
 ; rbp based frame
 ; fully interruptible
 ; No PGO data
-; 0 inlinees with PGO data; 43 single block inlinees; 13 inlinees without PGO data
+; 0 inlinees with PGO data; 43 single block inlinees; 5 inlinees without PGO data
 ; Final local variable assignments
 ;
-;  V00 this         [V00,T01] ( 24, 46   )     ref  ->  rbx         this class-hnd single-def <System.Xml.Xsl.Xslt.XslAstAnalyzer>
-;  V01 arg1         [V01,T08] ( 11, 26   )     ref  ->  r15         class-hnd single-def <System.Xml.Xsl.Xslt.Compiler>
-;  V02 loc0         [V02,T38] (  8, 13   )     int  ->  r14        
+;  V00 this         [V00,T01] ( 24, 54   )     ref  ->  rbx         this class-hnd single-def <System.Xml.Xsl.Xslt.XslAstAnalyzer>
+;  V01 arg1         [V01,T15] ( 11, 17   )     ref  ->  r15         class-hnd single-def <System.Xml.Xsl.Xslt.Compiler>
+;  V02 loc0         [V02,T21] (  8, 14   )     int  ->  r14        
 ;* V03 loc1         [V03    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op <System.Collections.Generic.List`1+Enumerator[System.Xml.Xsl.Xslt.VarPar]>
 ;* V04 loc2         [V04    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact <System.Xml.Xsl.Xslt.VarPar>
 ;* V05 loc3         [V05    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op <System.Collections.Generic.List`1+Enumerator[System.Xml.Xsl.Xslt.VarPar]>
 ;* V06 loc4         [V06    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact <System.Xml.Xsl.Xslt.VarPar>
-;* V07 loc5         [V07    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op <System.Collections.Generic.List`1+Enumerator[System.Xml.Xsl.Xslt.VarPar]>
-;* V08 loc6         [V08    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact <System.Xml.Xsl.Xslt.VarPar>
-;* V09 loc7         [V09    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op <System.Collections.Generic.List`1+Enumerator[System.Xml.Xsl.Xslt.VarPar]>
-;* V10 loc8         [V10    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact <System.Xml.Xsl.Xslt.VarPar>
-;* V11 loc9         [V11    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op <System.Collections.Generic.List`1+Enumerator[System.Xml.Xsl.Xslt.ProtoTemplate]>
-;* V12 loc10        [V12    ] (  0,  0   )     ref  ->  zero-ref    class-hnd <System.Xml.Xsl.Xslt.ProtoTemplate>
-;* V13 loc11        [V13    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op <System.Collections.Generic.List`1+Enumerator[System.Xml.Xsl.Xslt.ProtoTemplate]>
-;* V14 loc12        [V14    ] (  0,  0   )     ref  ->  zero-ref    class-hnd <System.Xml.Xsl.Xslt.ProtoTemplate>
-;  V15 loc13        [V15,T05] (  7, 38   )     ref  ->  [rbp-0x98]  do-not-enreg[Z] class-hnd EH-live <System.Collections.Generic.IEnumerator`1[System.Xml.Xsl.Xslt.XslNode]>
-;  V16 loc14        [V16,T03] (  4, 40   )     ref  ->  rax         class-hnd <System.Xml.Xsl.Xslt.XslNode>
+;  V07 loc5         [V07    ] (  7, 25   )  struct (24) [rbp-0x40]  do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Collections.Generic.List`1+Enumerator[System.Xml.Xsl.Xslt.VarPar]>
+;  V08 loc6         [V08,T18] (  4, 16   )     ref  ->  r13         class-hnd exact <System.Xml.Xsl.Xslt.VarPar>
+;  V09 loc7         [V09    ] (  7, 13   )  struct (24) [rbp-0x58]  do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Collections.Generic.List`1+Enumerator[System.Xml.Xsl.Xslt.VarPar]>
+;  V10 loc8         [V10,T41] (  2,  8   )     ref  ->  rsi         class-hnd exact <System.Xml.Xsl.Xslt.VarPar>
+;  V11 loc9         [V11    ] (  7, 13   )  struct (24) [rbp-0x70]  do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Collections.Generic.List`1+Enumerator[System.Xml.Xsl.Xslt.ProtoTemplate]>
+;  V12 loc10        [V12,T25] (  3, 12   )     ref  ->  r12         class-hnd <System.Xml.Xsl.Xslt.ProtoTemplate>
+;  V13 loc11        [V13    ] (  7, 13   )  struct (24) [rbp-0x88]  do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Collections.Generic.List`1+Enumerator[System.Xml.Xsl.Xslt.ProtoTemplate]>
+;  V14 loc12        [V14,T42] (  2,  8   )     ref  ->  rdi         class-hnd <System.Xml.Xsl.Xslt.ProtoTemplate>
+;  V15 loc13        [V15,T03] (  7, 44   )     ref  ->  [rbp-0xF0]  do-not-enreg[Z] class-hnd EH-live <System.Collections.Generic.IEnumerator`1[System.Xml.Xsl.Xslt.XslNode]>
+;  V16 loc14        [V16,T04] (  4, 40   )     ref  ->  rax         class-hnd <System.Xml.Xsl.Xslt.XslNode>
 ;  V17 loc15        [V17,T06] (  4, 32   )     ref  ->  rdi         class-hnd exact <System.Xml.Xsl.Xslt.VarPar>
-;  V18 loc16        [V18,T24] (  5, 20   )     int  ->  r13        
-;  V19 loc17        [V19    ] (  9, 18   )  struct (40) [rbp-0x50]  do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Collections.Generic.Dictionary`2+Enumerator[System.Xml.Xsl.Xslt.Template,System.Xml.Xsl.Xslt.Stylesheet]>
+;  V18 loc16        [V18,T16] (  5, 17   )     int  ->  r13        
+;  V19 loc17        [V19    ] (  9, 18   )  struct (40) [rbp-0xB0]  do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Collections.Generic.Dictionary`2+Enumerator[System.Xml.Xsl.Xslt.Template,System.Xml.Xsl.Xslt.Stylesheet]>
 ;* V20 loc18        [V20    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op <System.Collections.Generic.KeyValuePair`2[System.Xml.Xsl.Xslt.Template,System.Xml.Xsl.Xslt.Stylesheet]>
-;  V21 loc19        [V21,T15] (  3, 24   )     ref  ->  r12         class-hnd exact <System.Xml.Xsl.Xslt.Stylesheet[]>
-;* V22 loc20        [V22,T90] (  0,  0   )     int  ->  zero-ref   
+;  V21 loc19        [V21,T10] (  3, 24   )     ref  ->  r12         class-hnd exact <System.Xml.Xsl.Xslt.Stylesheet[]>
+;* V22 loc20        [V22,T65] (  0,  0   )     int  ->  zero-ref   
 ;* V23 loc21        [V23    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact <System.Xml.Xsl.Xslt.Stylesheet>
 ;# V24 OutArgs      [V24    ] (  1,  1   )  struct ( 0) [rsp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-;  V25 tmp1         [V25,T79] (  3,  6   )     ref  ->  r14         class-hnd exact single-def "NewObj constructor temp" <System.Xml.Xsl.Xslt.CompilerScopeManager`1[System.Xml.Xsl.Xslt.VarPar]>
-;  V26 tmp2         [V26,T62] (  5, 10   )     ref  ->  r14         class-hnd exact single-def "NewObj constructor temp" <System.Xml.Xsl.Xslt.XslAstAnalyzer+XPathAnalyzer>
-;  V27 tmp3         [V27,T80] (  3,  6   )     ref  ->  r12         class-hnd exact single-def "NewObj constructor temp" <System.Xml.Xsl.XPath.XPathParser`1[int]>
-;  V28 tmp4         [V28,T84] (  2,  4   )     ref  ->  r13         class-hnd exact single-def "Inlining Arg" <System.Xml.Xsl.Xslt.CompilerScopeManager`1[System.Xml.Xsl.Xslt.VarPar]>
-;  V29 tmp5         [V29,T81] (  3,  6   )     ref  ->  rax         class-hnd exact single-def "NewObj constructor temp" <System.Collections.Generic.Stack`1[int]>
-;  V30 tmp6         [V30,T85] (  2,  4   )     ref  ->  r14         class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Xml.Xsl.Xslt.VarPar]>
+;  V25 tmp1         [V25,T51] (  3,  6   )     ref  ->  r14         class-hnd exact single-def "NewObj constructor temp" <System.Xml.Xsl.Xslt.CompilerScopeManager`1[System.Xml.Xsl.Xslt.VarPar]>
+;  V26 tmp2         [V26,T39] (  5, 10   )     ref  ->  r14         class-hnd exact single-def "NewObj constructor temp" <System.Xml.Xsl.Xslt.XslAstAnalyzer+XPathAnalyzer>
+;  V27 tmp3         [V27,T52] (  3,  6   )     ref  ->  r12         class-hnd exact single-def "NewObj constructor temp" <System.Xml.Xsl.XPath.XPathParser`1[int]>
+;  V28 tmp4         [V28,T56] (  2,  4   )     ref  ->  r13         class-hnd exact single-def "Inlining Arg" <System.Xml.Xsl.Xslt.CompilerScopeManager`1[System.Xml.Xsl.Xslt.VarPar]>
+;  V29 tmp5         [V29,T53] (  3,  6   )     ref  ->  rax         class-hnd exact single-def "NewObj constructor temp" <System.Collections.Generic.Stack`1[int]>
+;  V30 tmp6         [V30,T57] (  2,  4   )     ref  ->  r14         class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Xml.Xsl.Xslt.VarPar]>
 ;* V31 tmp7         [V31    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Xml.Xsl.Xslt.VarPar]>
-;  V32 tmp8         [V32,T42] (  3, 12   )     ref  ->  rdi         class-hnd exact "Inlining Arg" <System.Xml.Xsl.Xslt.CompilerScopeManager`1[System.Xml.Xsl.Xslt.VarPar]>
-;  V33 tmp9         [V33,T43] (  3, 12   )     ref  ->  rcx         class-hnd exact "Inlining Arg" <System.Xml.Xsl.Qil.QilName>
+;  V32 tmp8         [V32,T26] (  3, 12   )     ref  ->  rdi         class-hnd exact "Inlining Arg" <System.Xml.Xsl.Xslt.CompilerScopeManager`1[System.Xml.Xsl.Xslt.VarPar]>
+;  V33 tmp9         [V33,T27] (  3, 12   )     ref  ->  rcx         class-hnd exact "Inlining Arg" <System.Xml.Xsl.Qil.QilName>
 ;* V34 tmp10        [V34    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "impAppendStmt" <System.String>
-;* V35 tmp11        [V35,T68] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
+;* V35 tmp11        [V35,T45] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
 ;* V36 tmp12        [V36    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline stloc first use temp" <System.Collections.Generic.List`1[System.Xml.Xsl.Xslt.VarPar]>
-;  V37 tmp13        [V37,T32] (  2, 16   )     ref  ->  r14         class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Xml.Xsl.Xslt.VarPar]>
-;* V38 tmp14        [V38    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Xml.Xsl.Xslt.VarPar]>
-;  V39 tmp15        [V39,T44] (  3, 12   )     ref  ->  rdi         class-hnd exact "Inlining Arg" <System.Xml.Xsl.Xslt.CompilerScopeManager`1[System.Xml.Xsl.Xslt.VarPar]>
-;  V40 tmp16        [V40,T45] (  3, 12   )     ref  ->  rcx         class-hnd exact "Inlining Arg" <System.Xml.Xsl.Qil.QilName>
-;* V41 tmp17        [V41    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "impAppendStmt" <System.String>
-;* V42 tmp18        [V42,T69] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;* V43 tmp19        [V43    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline stloc first use temp" <System.Collections.Generic.List`1[System.Xml.Xsl.Xslt.VarPar]>
-;  V44 tmp20        [V44,T33] (  2, 16   )     ref  ->  r14         class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Xml.Xsl.Xslt.VarPar]>
-;* V45 tmp21        [V45    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Xml.Xsl.Xslt.VarPar]>
-;* V46 tmp22        [V46,T70] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;* V47 tmp23        [V47    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline stloc first use temp" <System.Collections.Generic.List`1[System.Xml.Xsl.Xslt.VarPar]>
-;  V48 tmp24        [V48,T34] (  2, 16   )     ref  ->  r14         class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Xml.Xsl.Xslt.VarPar]>
+;* V37 tmp13        [V37    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
+;  V38 tmp14        [V38,T28] (  3, 12   )     ref  ->  rdx         class-hnd "Inline stloc first use temp" <System.Xml.Xsl.Xslt.VarPar[]>
+;  V39 tmp15        [V39,T19] (  2, 16   )     ref  ->  r14         class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Xml.Xsl.Xslt.VarPar]>
+;* V40 tmp16        [V40    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Xml.Xsl.Xslt.VarPar]>
+;  V41 tmp17        [V41,T29] (  3, 12   )     ref  ->  rdi         class-hnd exact "Inlining Arg" <System.Xml.Xsl.Xslt.CompilerScopeManager`1[System.Xml.Xsl.Xslt.VarPar]>
+;  V42 tmp18        [V42,T30] (  3, 12   )     ref  ->  rcx         class-hnd exact "Inlining Arg" <System.Xml.Xsl.Qil.QilName>
+;* V43 tmp19        [V43    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "impAppendStmt" <System.String>
+;* V44 tmp20        [V44,T46] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
+;* V45 tmp21        [V45    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline stloc first use temp" <System.Collections.Generic.List`1[System.Xml.Xsl.Xslt.VarPar]>
+;* V46 tmp22        [V46    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
+;  V47 tmp23        [V47,T31] (  3, 12   )     ref  ->  rdx         class-hnd "Inline stloc first use temp" <System.Xml.Xsl.Xslt.VarPar[]>
+;  V48 tmp24        [V48,T20] (  2, 16   )     ref  ->  rdi         class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Xml.Xsl.Xslt.VarPar]>
 ;* V49 tmp25        [V49    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Xml.Xsl.Xslt.VarPar]>
-;* V50 tmp26        [V50,T71] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;* V51 tmp27        [V51    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline stloc first use temp" <System.Collections.Generic.List`1[System.Xml.Xsl.Xslt.VarPar]>
-;  V52 tmp28        [V52,T35] (  2, 16   )     ref  ->  r13         class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Xml.Xsl.Xslt.ProtoTemplate]>
+;  V50 tmp26        [V50,T58] (  2,  4   )     ref  ->  rdi         class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Xml.Xsl.Xslt.VarPar]>
+;* V51 tmp27        [V51    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Xml.Xsl.Xslt.VarPar]>
+;  V52 tmp28        [V52,T59] (  2,  4   )     ref  ->  rdi         class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Xml.Xsl.Xslt.ProtoTemplate]>
 ;* V53 tmp29        [V53    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Xml.Xsl.Xslt.ProtoTemplate]>
-;* V54 tmp30        [V54,T72] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;* V55 tmp31        [V55    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline stloc first use temp" <System.Collections.Generic.List`1[System.Xml.Xsl.Xslt.ProtoTemplate]>
-;  V56 tmp32        [V56,T36] (  2, 16   )     ref  ->  r13         class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Xml.Xsl.Xslt.ProtoTemplate]>
-;* V57 tmp33        [V57    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Xml.Xsl.Xslt.ProtoTemplate]>
-;* V58 tmp34        [V58    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline return value spill temp" <System.Collections.Generic.IList`1[System.Xml.Xsl.Xslt.XslNode]>
-;  V59 tmp35        [V59,T86] (  2,  4   )     ref  ->  r11         class-hnd "Inline stloc first use temp" <System.Collections.Generic.List`1[System.Xml.Xsl.Xslt.XslNode]>
-;  V60 tmp36        [V60,T66] (  4,  8   )     ref  ->  r11        
-;* V61 tmp37        [V61,T73] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;* V62 tmp38        [V62    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline stloc first use temp" <System.Collections.Generic.List`1[System.Xml.Xsl.Xslt.ProtoTemplate]>
-;  V63 tmp39        [V63,T82] (  3,  6   )     ref  ->  rdi         class-hnd single-def "Inlining Arg" <System.Collections.Generic.Dictionary`2[System.Xml.Xsl.Xslt.Template,System.Xml.Xsl.Xslt.Stylesheet]>
-;  V64 tmp40        [V64,T89] (  2,  4   )  struct (40) [rbp-0x78]  do-not-enreg[SF] must-init ld-addr-op "NewObj constructor temp" <System.Collections.Generic.Dictionary`2+Enumerator[System.Xml.Xsl.Xslt.Template,System.Xml.Xsl.Xslt.Stylesheet]>
-;  V65 tmp41        [V65,T31] (  4, 17   )     ref  ->  r14         single-def "field V03._list (fldOffset=0x0)" P-INDEP
-;  V66 tmp42        [V66,T39] (  3,  8   )     ref  ->   r8         "field V03._current (fldOffset=0x8)" P-INDEP
-;  V67 tmp43        [V67,T14] (  6, 21   )     int  ->  r12         "field V03._index (fldOffset=0x10)" P-INDEP
-;  V68 tmp44        [V68,T65] (  2,  9   )     int  ->  r13         "field V03._version (fldOffset=0x14)" P-INDEP
-;  V69 tmp45        [V69,T25] (  4, 20   )     ref  ->  r14         single-def "field V05._list (fldOffset=0x0)" P-INDEP
-;  V70 tmp46        [V70,T40] (  3,  8   )     ref  ->   r8         "field V05._current (fldOffset=0x8)" P-INDEP
-;  V71 tmp47        [V71,T09] (  6, 24   )     int  ->  r12         "field V05._index (fldOffset=0x10)" P-INDEP
-;  V72 tmp48        [V72,T57] (  2, 12   )     int  ->  r13         "field V05._version (fldOffset=0x14)" P-INDEP
-;  V73 tmp49        [V73,T26] (  4, 20   )     ref  ->  r14         single-def "field V07._list (fldOffset=0x0)" P-INDEP
-;  V74 tmp50        [V74,T37] (  4, 10   )     ref  ->  [rbp-0xA0]  spill-single-def "field V07._current (fldOffset=0x8)" P-INDEP
-;  V75 tmp51        [V75,T10] (  6, 24   )     int  ->  r12         "field V07._index (fldOffset=0x10)" P-INDEP
-;  V76 tmp52        [V76,T58] (  2, 12   )     int  ->  r13         "field V07._version (fldOffset=0x14)" P-INDEP
-;  V77 tmp53        [V77,T27] (  4, 20   )     ref  ->  r14         single-def "field V09._list (fldOffset=0x0)" P-INDEP
-;  V78 tmp54        [V78,T63] (  2,  6   )     ref  ->  rsi         "field V09._current (fldOffset=0x8)" P-INDEP
-;  V79 tmp55        [V79,T11] (  6, 24   )     int  ->  r12         "field V09._index (fldOffset=0x10)" P-INDEP
-;  V80 tmp56        [V80,T59] (  2, 12   )     int  ->  r13         "field V09._version (fldOffset=0x14)" P-INDEP
-;  V81 tmp57        [V81,T28] (  4, 20   )     ref  ->  r13         single-def "field V11._list (fldOffset=0x0)" P-INDEP
-;  V82 tmp58        [V82,T41] (  3,  8   )     ref  ->  [rbp-0xA8]  spill-single-def "field V11._current (fldOffset=0x8)" P-INDEP
-;  V83 tmp59        [V83,T12] (  6, 24   )     int  ->  [rbp-0x7C]  "field V11._index (fldOffset=0x10)" P-INDEP
-;  V84 tmp60        [V84,T60] (  2, 12   )     int  ->  r12         "field V11._version (fldOffset=0x14)" P-INDEP
-;  V85 tmp61        [V85,T29] (  4, 20   )     ref  ->  r13         single-def "field V13._list (fldOffset=0x0)" P-INDEP
-;  V86 tmp62        [V86,T64] (  2,  6   )     ref  ->  r11         "field V13._current (fldOffset=0x8)" P-INDEP
-;  V87 tmp63        [V87,T13] (  6, 24   )     int  ->  [rbp-0x80]  "field V13._index (fldOffset=0x10)" P-INDEP
-;  V88 tmp64        [V88,T61] (  2, 12   )     int  ->  r12         "field V13._version (fldOffset=0x14)" P-INDEP
-;  V89 tmp65        [V89,T30] (  2, 20   )     ref  ->  r13         "field V20.key (fldOffset=0x0)" P-INDEP
-;  V90 tmp66        [V90,T67] (  2,  8   )     ref  ->  rsi         "field V20.value (fldOffset=0x8)" P-INDEP
-;  V91 tmp67        [V91,T96] (  3,  3   )     ref  ->  r14         single-def "field V31._list (fldOffset=0x0)" P-INDEP
-;* V92 tmp68        [V92    ] (  0,  0   )     ref  ->  zero-ref    single-def "field V31._current (fldOffset=0x8)" P-INDEP
-;* V93 tmp69        [V93,T100] (  0,  0   )     int  ->  zero-ref    "field V31._index (fldOffset=0x10)" P-INDEP
-;  V94 tmp70        [V94,T98] (  2,  2   )     int  ->  r13         "field V31._version (fldOffset=0x14)" P-INDEP
-;  V95 tmp71        [V95,T46] (  3, 12   )     ref  ->  r14         single-def "field V38._list (fldOffset=0x0)" P-INDEP
-;* V96 tmp72        [V96    ] (  0,  0   )     ref  ->  zero-ref    single-def "field V38._current (fldOffset=0x8)" P-INDEP
-;* V97 tmp73        [V97,T91] (  0,  0   )     int  ->  zero-ref    "field V38._index (fldOffset=0x10)" P-INDEP
-;  V98 tmp74        [V98,T74] (  2,  8   )     int  ->  r13         "field V38._version (fldOffset=0x14)" P-INDEP
-;  V99 tmp75        [V99,T47] (  3, 12   )     ref  ->  r14         single-def "field V45._list (fldOffset=0x0)" P-INDEP
-;* V100 tmp76       [V100    ] (  0,  0   )     ref  ->  zero-ref    single-def "field V45._current (fldOffset=0x8)" P-INDEP
-;* V101 tmp77       [V101,T92] (  0,  0   )     int  ->  zero-ref    "field V45._index (fldOffset=0x10)" P-INDEP
-;  V102 tmp78       [V102,T75] (  2,  8   )     int  ->  r13         "field V45._version (fldOffset=0x14)" P-INDEP
-;  V103 tmp79       [V103,T48] (  3, 12   )     ref  ->  r14         single-def "field V49._list (fldOffset=0x0)" P-INDEP
-;* V104 tmp80       [V104    ] (  0,  0   )     ref  ->  zero-ref    single-def "field V49._current (fldOffset=0x8)" P-INDEP
-;* V105 tmp81       [V105,T93] (  0,  0   )     int  ->  zero-ref    "field V49._index (fldOffset=0x10)" P-INDEP
-;  V106 tmp82       [V106,T76] (  2,  8   )     int  ->  r13         "field V49._version (fldOffset=0x14)" P-INDEP
-;  V107 tmp83       [V107,T49] (  3, 12   )     ref  ->  r13         single-def "field V53._list (fldOffset=0x0)" P-INDEP
-;* V108 tmp84       [V108    ] (  0,  0   )     ref  ->  zero-ref    single-def "field V53._current (fldOffset=0x8)" P-INDEP
-;* V109 tmp85       [V109,T94] (  0,  0   )     int  ->  zero-ref    "field V53._index (fldOffset=0x10)" P-INDEP
-;  V110 tmp86       [V110,T77] (  2,  8   )     int  ->  r12         "field V53._version (fldOffset=0x14)" P-INDEP
-;  V111 tmp87       [V111,T50] (  3, 12   )     ref  ->  r13         single-def "field V57._list (fldOffset=0x0)" P-INDEP
-;* V112 tmp88       [V112    ] (  0,  0   )     ref  ->  zero-ref    single-def "field V57._current (fldOffset=0x8)" P-INDEP
-;* V113 tmp89       [V113,T95] (  0,  0   )     int  ->  zero-ref    "field V57._index (fldOffset=0x10)" P-INDEP
-;  V114 tmp90       [V114,T78] (  2,  8   )     int  ->  r12         "field V57._version (fldOffset=0x14)" P-INDEP
-;* V115 tmp91       [V115    ] (  0,  0   )     ref  ->  zero-ref    single-def "V64.[000..008)"
-;  V116 tmp92       [V116,T99] (  2,  2   )     int  ->  rsi         "V64.[008..012)"
-;* V117 tmp93       [V117    ] (  0,  0   )     int  ->  zero-ref    "V64.[012..016)"
-;* V118 tmp94       [V118    ] (  0,  0   )     int  ->  zero-ref    "V64.[016..020)"
-;  V119 tmp95       [V119,T16] (  3, 24   )     ref  ->  rdx         "arr expr"
-;  V120 tmp96       [V120,T17] (  3, 24   )     ref  ->  rdx         "arr expr"
-;  V121 tmp97       [V121,T18] (  3, 24   )     ref  ->  rdi         "arr expr"
-;  V122 tmp98       [V122,T19] (  3, 24   )     ref  ->  rdi         "arr expr"
-;  V123 tmp99       [V123,T20] (  3, 24   )     ref  ->  rsi         "arr expr"
-;  V124 tmp100      [V124,T21] (  3, 24   )     ref  ->  r11         "arr expr"
-;  V125 tmp101      [V125,T83] (  3,  6   )     ref  ->  rdi         single-def "arr expr"
-;  V126 tmp102      [V126,T87] (  2,  4   )     ref  ->  rsi         single-def "argument with side effect"
-;  V127 tmp103      [V127,T88] (  2,  4   )     ref  ->  rax         single-def "argument with side effect"
-;  V128 PSPSym      [V128,T101] (  1,  1   )    long  ->  [rbp-0xB0]  do-not-enreg[V] "PSPSym"
-;  V129 cse0        [V129,T22] (  3, 24   )     int  ->  r11         "CSE #12: moderate"
-;  V130 cse1        [V130,T04] (  3, 40   )     int  ->  rdi         "CSE #11: aggressive"
-;  V131 cse2        [V131,T51] (  2,  8   )     int  ->  rdx         "CSE #02: conservative"
-;  V132 cse3        [V132,T52] (  2,  8   )     int  ->  rdx         "CSE #04: conservative"
-;  V133 cse4        [V133,T53] (  2,  8   )     int  ->  rdi         "CSE #06: conservative"
-;  V134 cse5        [V134,T54] (  2,  8   )     int  ->  rdi         "CSE #08: conservative"
-;  V135 cse6        [V135,T55] (  2,  8   )     int  ->  rsi         "CSE #10: conservative"
-;  V136 cse7        [V136,T56] (  2,  8   )     int  ->  r11         "CSE #14: conservative"
-;  V137 cse8        [V137,T97] (  3,  3   )     ref  ->  rdi         "CSE #17: conservative"
-;  V138 cse9        [V138,T23] (  3, 24   )     int  ->  [rbp-0x84]  spill-single-def "CSE #15: moderate"
-;  V139 rat0        [V139,T00] (  5, 68   )    long  ->  [rbp-0x90]  "Widened IV V22"
-;  V140 rat1        [V140,T02] (  3, 48   )     ref  ->  rdi         "replacement local"
-;  V141 rat2        [V141,T07] (  3, 32   )    long  ->  rcx         "CSE for expectedClsNode"
+;  V54 tmp30        [V54,T60] (  2,  4   )     ref  ->  rdi         class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Xml.Xsl.Xslt.ProtoTemplate]>
+;* V55 tmp31        [V55    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Xml.Xsl.Xslt.ProtoTemplate]>
+;* V56 tmp32        [V56    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline return value spill temp" <System.Collections.Generic.IList`1[System.Xml.Xsl.Xslt.XslNode]>
+;  V57 tmp33        [V57,T43] (  2,  8   )     ref  ->  rdi         class-hnd "Inline stloc first use temp" <System.Collections.Generic.List`1[System.Xml.Xsl.Xslt.XslNode]>
+;  V58 tmp34        [V58,T22] (  4, 14   )     ref  ->  rdi        
+;  V59 tmp35        [V59,T54] (  3,  6   )     ref  ->  rdi         class-hnd single-def "Inlining Arg" <System.Collections.Generic.Dictionary`2[System.Xml.Xsl.Xslt.Template,System.Xml.Xsl.Xslt.Stylesheet]>
+;  V60 tmp36        [V60,T63] (  2,  4   )  struct (40) [rbp-0xD8]  do-not-enreg[SF] must-init ld-addr-op "NewObj constructor temp" <System.Collections.Generic.Dictionary`2+Enumerator[System.Xml.Xsl.Xslt.Template,System.Xml.Xsl.Xslt.Stylesheet]>
+;  V61 tmp37        [V61,T17] (  4, 17   )     ref  ->  r14         single-def "field V03._list (fldOffset=0x0)" P-INDEP
+;  V62 tmp38        [V62,T23] (  3,  8   )     ref  ->   r8         "field V03._current (fldOffset=0x8)" P-INDEP
+;  V63 tmp39        [V63,T09] (  6, 21   )     int  ->  r12         "field V03._index (fldOffset=0x10)" P-INDEP
+;  V64 tmp40        [V64,T40] (  2,  9   )     int  ->  r13         "field V03._version (fldOffset=0x14)" P-INDEP
+;  V65 tmp41        [V65,T13] (  4, 20   )     ref  ->  r14         single-def "field V05._list (fldOffset=0x0)" P-INDEP
+;  V66 tmp42        [V66,T24] (  3,  8   )     ref  ->   r8         "field V05._current (fldOffset=0x8)" P-INDEP
+;  V67 tmp43        [V67,T08] (  6, 24   )     int  ->  r12         "field V05._index (fldOffset=0x10)" P-INDEP
+;  V68 tmp44        [V68,T36] (  2, 12   )     int  ->  r13         "field V05._version (fldOffset=0x14)" P-INDEP
+;  V69 tmp45        [V69    ] (  3,  9   )     ref  ->  [rbp-0x40]  do-not-enreg[X] addr-exposed "field V07._list (fldOffset=0x0)" P-DEP
+;  V70 tmp46        [V70    ] (  4, 13   )     ref  ->  [rbp-0x38]  do-not-enreg[X] addr-exposed "field V07._current (fldOffset=0x8)" P-DEP
+;  V71 tmp47        [V71    ] (  3,  9   )     int  ->  [rbp-0x30]  do-not-enreg[X] addr-exposed "field V07._index (fldOffset=0x10)" P-DEP
+;  V72 tmp48        [V72    ] (  3,  9   )     int  ->  [rbp-0x2C]  do-not-enreg[X] addr-exposed "field V07._version (fldOffset=0x14)" P-DEP
+;  V73 tmp49        [V73    ] (  3,  6   )     ref  ->  [rbp-0x58]  do-not-enreg[X] addr-exposed "field V09._list (fldOffset=0x0)" P-DEP
+;  V74 tmp50        [V74    ] (  4, 10   )     ref  ->  [rbp-0x50]  do-not-enreg[X] addr-exposed "field V09._current (fldOffset=0x8)" P-DEP
+;  V75 tmp51        [V75    ] (  3,  6   )     int  ->  [rbp-0x48]  do-not-enreg[X] addr-exposed "field V09._index (fldOffset=0x10)" P-DEP
+;  V76 tmp52        [V76    ] (  3,  6   )     int  ->  [rbp-0x44]  do-not-enreg[X] addr-exposed "field V09._version (fldOffset=0x14)" P-DEP
+;  V77 tmp53        [V77    ] (  3,  6   )     ref  ->  [rbp-0x70]  do-not-enreg[X] addr-exposed "field V11._list (fldOffset=0x0)" P-DEP
+;  V78 tmp54        [V78    ] (  4, 10   )     ref  ->  [rbp-0x68]  do-not-enreg[X] addr-exposed "field V11._current (fldOffset=0x8)" P-DEP
+;  V79 tmp55        [V79    ] (  3,  6   )     int  ->  [rbp-0x60]  do-not-enreg[X] addr-exposed "field V11._index (fldOffset=0x10)" P-DEP
+;  V80 tmp56        [V80    ] (  3,  6   )     int  ->  [rbp-0x5C]  do-not-enreg[X] addr-exposed "field V11._version (fldOffset=0x14)" P-DEP
+;  V81 tmp57        [V81    ] (  3,  6   )     ref  ->  [rbp-0x88]  do-not-enreg[X] addr-exposed "field V13._list (fldOffset=0x0)" P-DEP
+;  V82 tmp58        [V82    ] (  4, 10   )     ref  ->  [rbp-0x80]  do-not-enreg[X] addr-exposed "field V13._current (fldOffset=0x8)" P-DEP
+;  V83 tmp59        [V83    ] (  3,  6   )     int  ->  [rbp-0x78]  do-not-enreg[X] addr-exposed "field V13._index (fldOffset=0x10)" P-DEP
+;  V84 tmp60        [V84    ] (  3,  6   )     int  ->  [rbp-0x74]  do-not-enreg[X] addr-exposed "field V13._version (fldOffset=0x14)" P-DEP
+;  V85 tmp61        [V85,T14] (  2, 20   )     ref  ->  r13         "field V20.key (fldOffset=0x0)" P-INDEP
+;  V86 tmp62        [V86,T44] (  2,  8   )     ref  ->  rsi         "field V20.value (fldOffset=0x8)" P-INDEP
+;  V87 tmp63        [V87,T68] (  3,  3   )     ref  ->  r14         single-def "field V31._list (fldOffset=0x0)" P-INDEP
+;* V88 tmp64        [V88    ] (  0,  0   )     ref  ->  zero-ref    single-def "field V31._current (fldOffset=0x8)" P-INDEP
+;* V89 tmp65        [V89,T81] (  0,  0   )     int  ->  zero-ref    "field V31._index (fldOffset=0x10)" P-INDEP
+;  V90 tmp66        [V90,T73] (  2,  2   )     int  ->  r13         "field V31._version (fldOffset=0x14)" P-INDEP
+;  V91 tmp67        [V91,T32] (  3, 12   )     ref  ->  r14         single-def "field V40._list (fldOffset=0x0)" P-INDEP
+;* V92 tmp68        [V92    ] (  0,  0   )     ref  ->  zero-ref    single-def "field V40._current (fldOffset=0x8)" P-INDEP
+;* V93 tmp69        [V93,T66] (  0,  0   )     int  ->  zero-ref    "field V40._index (fldOffset=0x10)" P-INDEP
+;  V94 tmp70        [V94,T47] (  2,  8   )     int  ->  r13         "field V40._version (fldOffset=0x14)" P-INDEP
+;  V95 tmp71        [V95,T33] (  3, 12   )     ref  ->  rdi         single-def "field V49._list (fldOffset=0x0)" P-INDEP
+;* V96 tmp72        [V96,T64] (  0,  0   )     ref  ->  zero-ref    single-def "field V49._current (fldOffset=0x8)" P-INDEP
+;* V97 tmp73        [V97,T67] (  0,  0   )     int  ->  zero-ref    "field V49._index (fldOffset=0x10)" P-INDEP
+;  V98 tmp74        [V98,T48] (  2,  8   )     int  ->  rsi         "field V49._version (fldOffset=0x14)" P-INDEP
+;  V99 tmp75        [V99,T69] (  3,  3   )     ref  ->  rdi         single-def "field V51._list (fldOffset=0x0)" P-INDEP
+;* V100 tmp76       [V100,T78] (  0,  0   )     ref  ->  zero-ref    single-def "field V51._current (fldOffset=0x8)" P-INDEP
+;* V101 tmp77       [V101,T82] (  0,  0   )     int  ->  zero-ref    "field V51._index (fldOffset=0x10)" P-INDEP
+;  V102 tmp78       [V102,T74] (  2,  2   )     int  ->  rsi         "field V51._version (fldOffset=0x14)" P-INDEP
+;  V103 tmp79       [V103,T70] (  3,  3   )     ref  ->  rdi         single-def "field V53._list (fldOffset=0x0)" P-INDEP
+;* V104 tmp80       [V104,T79] (  0,  0   )     ref  ->  zero-ref    single-def "field V53._current (fldOffset=0x8)" P-INDEP
+;* V105 tmp81       [V105,T83] (  0,  0   )     int  ->  zero-ref    "field V53._index (fldOffset=0x10)" P-INDEP
+;  V106 tmp82       [V106,T75] (  2,  2   )     int  ->  rsi         "field V53._version (fldOffset=0x14)" P-INDEP
+;  V107 tmp83       [V107,T71] (  3,  3   )     ref  ->  rdi         single-def "field V55._list (fldOffset=0x0)" P-INDEP
+;* V108 tmp84       [V108,T80] (  0,  0   )     ref  ->  zero-ref    single-def "field V55._current (fldOffset=0x8)" P-INDEP
+;* V109 tmp85       [V109,T84] (  0,  0   )     int  ->  zero-ref    "field V55._index (fldOffset=0x10)" P-INDEP
+;  V110 tmp86       [V110,T76] (  2,  2   )     int  ->  rsi         "field V55._version (fldOffset=0x14)" P-INDEP
+;* V111 tmp87       [V111    ] (  0,  0   )     ref  ->  zero-ref    single-def "V60.[000..008)"
+;  V112 tmp88       [V112,T77] (  2,  2   )     int  ->  rsi         "V60.[008..012)"
+;* V113 tmp89       [V113    ] (  0,  0   )     int  ->  zero-ref    "V60.[012..016)"
+;* V114 tmp90       [V114    ] (  0,  0   )     int  ->  zero-ref    "V60.[016..020)"
+;  V115 tmp91       [V115,T55] (  3,  6   )     ref  ->  rdi         single-def "arr expr"
+;  V116 tmp92       [V116,T61] (  2,  4   )     ref  ->  rsi         single-def "argument with side effect"
+;  V117 tmp93       [V117,T62] (  2,  4   )     ref  ->  rax         single-def "argument with side effect"
+;  V118 PSPSym      [V118,T85] (  1,  1   )    long  ->  [rbp-0x100]  do-not-enreg[V] "PSPSym"
+;  V119 cse0        [V119,T11] (  3, 24   )     int  ->  r11         "CSE #10: moderate"
+;  V120 cse1        [V120,T05] (  3, 40   )     int  ->  rdi         "CSE #09: aggressive"
+;  V121 cse2        [V121,T34] (  2,  8   )     int  ->  rdx         "CSE #03: moderate"
+;  V122 cse3        [V122,T35] (  2,  8   )     int  ->  rdx         "CSE #06: moderate"
+;  V123 cse4        [V123,T72] (  3,  3   )     ref  ->  rdi         "CSE #13: conservative"
+;  V124 cse5        [V124,T12] (  3, 24   )     int  ->  [rbp-0xDC]  spill-single-def "CSE #11: moderate"
+;  V125 cse6        [V125,T37] (  5, 11   )    long  ->  r14         "CSE #07: moderate"
+;  V126 cse7        [V126,T38] (  5, 11   )    long  ->  r13         "CSE #08: moderate"
+;  V127 cse8        [V127,T49] (  2,  8   )     int  ->  rcx         "CSE #01: moderate"
+;  V128 cse9        [V128,T50] (  2,  8   )     int  ->  rcx         "CSE #04: moderate"
+;  V129 rat0        [V129,T00] (  5, 68   )    long  ->  [rbp-0xE8]  "Widened IV V22"
+;  V130 rat1        [V130,T02] (  3, 48   )     ref  ->  rdi         "replacement local"
+;  V131 rat2        [V131,T07] (  3, 32   )    long  ->  rcx         "CSE for expectedClsNode"
 ;
-; Lcl frame size = 136
+; Lcl frame size = 216
 
 G_M43812_IG01:
        push     rbp
        push     r15
        push     r14
        push     r13
        push     r12
        push     rbx
-       sub      rsp, 136
-       lea      rbp, [rsp+0xB0]
+       sub      rsp, 216
+       lea      rbp, [rsp+0x100]
        xor      eax, eax
-       mov      qword ptr [rbp-0x78], rax
+       mov      qword ptr [rbp-0xD8], rax
        vxorps   xmm8, xmm8, xmm8
+       vmovdqu  ymmword ptr [rbp-0xD0], ymm8
+       vmovdqu  ymmword ptr [rbp-0xB0], ymm8
+       vmovdqu  ymmword ptr [rbp-0x90], ymm8
        vmovdqu  ymmword ptr [rbp-0x70], ymm8
        vmovdqu  ymmword ptr [rbp-0x50], ymm8
        mov      qword ptr [rbp-0x30], rax
-       mov      qword ptr [rbp-0xB0], rsp
+       mov      qword ptr [rbp-0x100], rsp
        mov      rbx, rdi
        mov      r15, rsi
-						;; size=63 bbWeight=1 PerfScore 14.83
+						;; size=90 bbWeight=1 PerfScore 20.83
 G_M43812_IG02:
        lea      rdi, bword ptr [rbx+0x10]
        mov      rsi, r15
        call     CORINFO_HELP_ASSIGN_REF
        mov      rdi, 0xD1FFAB1E      ; System.Xml.Xsl.Xslt.CompilerScopeManager`1[System.Xml.Xsl.Xslt.VarPar]
        call     CORINFO_HELP_NEWSFAST
        mov      r14, rax
        mov      rdi, r14
        mov      rax, 0xD1FFAB1E      ; code for System.Xml.Xsl.Xslt.CompilerScopeManager`1[System.__Canon]:.ctor():this
        call     [rax]System.Xml.Xsl.Xslt.CompilerScopeManager`1[System.__Canon]:.ctor():this
        lea      rdi, bword ptr [rbx+0x08]
        mov      rsi, r14
        call     CORINFO_HELP_ASSIGN_REF
        mov      rdi, 0xD1FFAB1E      ; System.Xml.Xsl.Xslt.XslAstAnalyzer+XPathAnalyzer
        call     CORINFO_HELP_NEWSFAST
        mov      r14, rax
        mov      r13, gword ptr [rbx+0x08]
        mov      rdi, 0xD1FFAB1E      ; System.Xml.Xsl.XPath.XPathParser`1[int]
        call     CORINFO_HELP_NEWSFAST
        mov      r12, rax
        mov      rdi, 0xD1FFAB1E      ; System.Collections.Generic.Stack`1[int]
        call     CORINFO_HELP_NEWSFAST
        mov      rdi, 0xD1FFAB1E      ; 'System.Int32[]'
        mov      gword ptr [rax+0x08], rdi
        lea      rdi, bword ptr [r12+0x18]
        mov      rsi, rax
        call     CORINFO_HELP_ASSIGN_REF
        lea      rdi, bword ptr [r14+0x08]
        mov      rsi, r12
        call     CORINFO_HELP_ASSIGN_REF
        lea      rdi, bword ptr [r14+0x18]
        mov      rsi, r15
        call     CORINFO_HELP_ASSIGN_REF
        lea      rdi, bword ptr [r14+0x10]
        mov      rsi, r13
        call     CORINFO_HELP_ASSIGN_REF
        lea      rdi, bword ptr [rbx+0x18]
        mov      rsi, r14
        call     CORINFO_HELP_ASSIGN_REF
        mov      r14, gword ptr [r15+0x48]
        mov      r13d, dword ptr [r14+0x14]
        xor      r12d, r12d
        jmp      SHORT G_M43812_IG04
 						;; size=200 bbWeight=1 PerfScore 31.00
 G_M43812_IG03:
        mov      rdi, gword ptr [rbx+0x08]
        mov      rcx, gword ptr [r8+0x18]
        cmp      byte  ptr [rdi], dil
        mov      rdx, gword ptr [rcx+0x30]
        mov      rcx, gword ptr [rcx+0x38]
        mov      esi, 64
        mov      rax, 0xD1FFAB1E      ; code for System.Xml.Xsl.Xslt.CompilerScopeManager`1[System.__Canon]:AddRecord(int,System.String,System.String,System.__Canon):this
        call     [rax]System.Xml.Xsl.Xslt.CompilerScopeManager`1[System.__Canon]:AddRecord(int,System.String,System.String,System.__Canon):this
 						;; size=36 bbWeight=2 PerfScore 29.00
 G_M43812_IG04:
        cmp      r13d, dword ptr [r14+0x14]
-       jne      G_M43812_IG55
+       jne      G_M43812_IG52
 						;; size=10 bbWeight=8 PerfScore 32.00
 G_M43812_IG05:
        mov      edx, dword ptr [r14+0x10]
        cmp      r12d, edx
        jae      SHORT G_M43812_IG06
        mov      rdx, gword ptr [r14+0x08]
-       cmp      r12d, dword ptr [rdx+0x08]
-       jae      G_M43812_IG54
+       mov      ecx, dword ptr [rdx+0x08]
+       cmp      ecx, r12d
+       jbe      SHORT G_M43812_IG06
        mov      ecx, r12d
        mov      r8, gword ptr [rdx+8*rcx+0x10]
        inc      r12d
        jmp      SHORT G_M43812_IG03
-						;; size=36 bbWeight=4 PerfScore 55.00
+						;; size=34 bbWeight=4 PerfScore 52.00
 G_M43812_IG06:
        mov      r14, gword ptr [r15+0x50]
        mov      r13d, dword ptr [r14+0x14]
        xor      r12d, r12d
        jmp      SHORT G_M43812_IG08
 						;; size=13 bbWeight=4 PerfScore 25.00
 G_M43812_IG07:
        mov      rdi, gword ptr [rbx+0x08]
        mov      rcx, gword ptr [r8+0x18]
        cmp      byte  ptr [rdi], dil
        mov      rdx, gword ptr [rcx+0x30]
        mov      rcx, gword ptr [rcx+0x38]
        mov      esi, 64
        mov      rax, 0xD1FFAB1E      ; code for System.Xml.Xsl.Xslt.CompilerScopeManager`1[System.__Canon]:AddRecord(int,System.String,System.String,System.__Canon):this
        call     [rax]System.Xml.Xsl.Xslt.CompilerScopeManager`1[System.__Canon]:AddRecord(int,System.String,System.String,System.__Canon):this
 						;; size=36 bbWeight=2 PerfScore 29.00
 G_M43812_IG08:
        cmp      r13d, dword ptr [r14+0x14]
-       jne      G_M43812_IG55
+       jne      G_M43812_IG52
 						;; size=10 bbWeight=8 PerfScore 32.00
 G_M43812_IG09:
        mov      edx, dword ptr [r14+0x10]
        cmp      r12d, edx
        jae      SHORT G_M43812_IG10
        mov      rdx, gword ptr [r14+0x08]
-       cmp      r12d, dword ptr [rdx+0x08]
-       jae      G_M43812_IG54
+       mov      ecx, dword ptr [rdx+0x08]
+       cmp      ecx, r12d
+       jbe      SHORT G_M43812_IG10
        mov      ecx, r12d
        mov      r8, gword ptr [rdx+8*rcx+0x10]
        inc      r12d
        jmp      SHORT G_M43812_IG07
-						;; size=36 bbWeight=4 PerfScore 55.00
+						;; size=34 bbWeight=4 PerfScore 52.00
 G_M43812_IG10:
-       mov      r14, gword ptr [r15+0x48]
-       mov      r13d, dword ptr [r14+0x14]
-       xor      r12d, r12d
-       jmp      SHORT G_M43812_IG12
-						;; size=13 bbWeight=4 PerfScore 25.00
+       mov      rdi, gword ptr [r15+0x48]
+       mov      esi, dword ptr [rdi+0x14]
+       mov      gword ptr [rbp-0x40], rdi
+       xor      rdi, rdi
+       mov      gword ptr [rbp-0x38], rdi
+						;; size=17 bbWeight=4 PerfScore 25.00
 G_M43812_IG11:
-       mov      rdi, rbx
-       mov      rsi, rax
-       mov      rcx, 0xD1FFAB1E      ; code for System.Xml.Xsl.Xslt.XslAstAnalyzer:Visit(System.Xml.Xsl.Xslt.XslNode):int:this
-       call     [rcx]System.Xml.Xsl.Xslt.XslAstAnalyzer:Visit(System.Xml.Xsl.Xslt.XslNode):int:this
-       mov      rdi, gword ptr [rbp-0xA0]
-       or       dword ptr [rdi+0x38], 63
-						;; size=29 bbWeight=2 PerfScore 15.50
+       mov      dword ptr [rbp-0x30], edi
+       mov      dword ptr [rbp-0x2C], esi
+       lea      rdi, [rbp-0x40]
+       mov      r14, 0xD1FFAB1E      ; System.Collections.Generic.List`1+Enumerator[System.Xml.Xsl.Xslt.VarPar]
+       mov      rsi, r14
+       mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       call     [rax]System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       test     eax, eax
+       je       SHORT G_M43812_IG13
+						;; size=39 bbWeight=4 PerfScore 30.00
 G_M43812_IG12:
-       cmp      r13d, dword ptr [r14+0x14]
-       jne      G_M43812_IG55
-						;; size=10 bbWeight=8 PerfScore 32.00
+       mov      r13, gword ptr [rbp-0x38]
+       mov      rdi, rbx
+       mov      rsi, r13
+       mov      rax, 0xD1FFAB1E      ; code for System.Xml.Xsl.Xslt.XslAstAnalyzer:Visit(System.Xml.Xsl.Xslt.XslNode):int:this
+       call     [rax]System.Xml.Xsl.Xslt.XslAstAnalyzer:Visit(System.Xml.Xsl.Xslt.XslNode):int:this
+       or       dword ptr [r13+0x38], 63
+       lea      rdi, [rbp-0x40]
+       mov      rsi, r14
+       mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       call     [rax]System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       test     eax, eax
+       jne      SHORT G_M43812_IG12
+						;; size=50 bbWeight=4 PerfScore 52.00
 G_M43812_IG13:
-       mov      edi, dword ptr [r14+0x10]
-       cmp      r12d, edi
-       jae      SHORT G_M43812_IG14
-       mov      rdi, gword ptr [r14+0x08]
-       cmp      r12d, dword ptr [rdi+0x08]
-       jae      G_M43812_IG54
-       mov      esi, r12d
-       mov      rax, gword ptr [rdi+8*rsi+0x10]
-       mov      gword ptr [rbp-0xA0], rax
-       inc      r12d
-       jmp      SHORT G_M43812_IG11
-						;; size=43 bbWeight=4 PerfScore 59.00
+       mov      rdi, gword ptr [r15+0x50]
+       mov      esi, dword ptr [rdi+0x14]
+       mov      gword ptr [rbp-0x58], rdi
+       xor      rdi, rdi
+       mov      gword ptr [rbp-0x50], rdi
+						;; size=17 bbWeight=1 PerfScore 6.25
 G_M43812_IG14:
-       mov      r14, gword ptr [r15+0x50]
-       mov      r13d, dword ptr [r14+0x14]
-       xor      r12d, r12d
-       jmp      SHORT G_M43812_IG16
-						;; size=13 bbWeight=4 PerfScore 25.00
+       mov      dword ptr [rbp-0x48], edi
+       mov      dword ptr [rbp-0x44], esi
+       lea      rdi, [rbp-0x58]
+       mov      rsi, r14
+       mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       call     [rax]System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       test     eax, eax
+       je       SHORT G_M43812_IG16
+						;; size=29 bbWeight=1 PerfScore 7.25
 G_M43812_IG15:
+       mov      rsi, gword ptr [rbp-0x50]
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.Xml.Xsl.Xslt.XslAstAnalyzer:Visit(System.Xml.Xsl.Xslt.XslNode):int:this
        call     [rax]System.Xml.Xsl.Xslt.XslAstAnalyzer:Visit(System.Xml.Xsl.Xslt.XslNode):int:this
-						;; size=15 bbWeight=2 PerfScore 7.00
+       lea      rdi, [rbp-0x58]
+       mov      rsi, r14
+       mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       call     [rax]System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       test     eax, eax
+       jne      SHORT G_M43812_IG15
+						;; size=42 bbWeight=4 PerfScore 39.00
 G_M43812_IG16:
-       cmp      r13d, dword ptr [r14+0x14]
-       jne      G_M43812_IG55
-						;; size=10 bbWeight=8 PerfScore 32.00
+       xor      r14d, r14d
+       mov      rdi, gword ptr [r15+0x70]
+       mov      esi, dword ptr [rdi+0x14]
+       mov      gword ptr [rbp-0x70], rdi
+       xor      rdi, rdi
+       mov      gword ptr [rbp-0x68], rdi
+						;; size=20 bbWeight=1 PerfScore 6.50
 G_M43812_IG17:
-       mov      edi, dword ptr [r14+0x10]
-       cmp      r12d, edi
-       jae      SHORT G_M43812_IG18
-       mov      rdi, gword ptr [r14+0x08]
-       cmp      r12d, dword ptr [rdi+0x08]
-       jae      G_M43812_IG54
-       mov      esi, r12d
-       mov      rsi, gword ptr [rdi+8*rsi+0x10]
-       inc      r12d
-       jmp      SHORT G_M43812_IG15
-						;; size=36 bbWeight=4 PerfScore 55.00
+       mov      dword ptr [rbp-0x60], edi
+       mov      dword ptr [rbp-0x5C], esi
+       lea      rdi, [rbp-0x70]
+       mov      r13, 0xD1FFAB1E      ; System.Collections.Generic.List`1+Enumerator[System.Xml.Xsl.Xslt.ProtoTemplate]
+       mov      rsi, r13
+       mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       call     [rax]System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       test     eax, eax
+       je       SHORT G_M43812_IG19
+						;; size=39 bbWeight=1 PerfScore 7.50
 G_M43812_IG18:
-       xor      r14d, r14d
-       mov      r13, gword ptr [r15+0x70]
-       mov      r12d, dword ptr [r13+0x14]
-       xor      edi, edi
-       jmp      SHORT G_M43812_IG20
-						;; size=15 bbWeight=4 PerfScore 26.00
-G_M43812_IG19:
+       mov      r12, gword ptr [rbp-0x68]
        lea      rdi, bword ptr [rbx+0x20]
-       mov      rsi, rax
+       mov      rsi, r12
        call     CORINFO_HELP_ASSIGN_REF
        mov      rdi, rbx
-       mov      rsi, gword ptr [rbp-0xA8]
+       mov      rsi, r12
        mov      rax, 0xD1FFAB1E      ; code for System.Xml.Xsl.Xslt.XslAstAnalyzer:Visit(System.Xml.Xsl.Xslt.XslNode):int:this
        call     [rax]System.Xml.Xsl.Xslt.XslAstAnalyzer:Visit(System.Xml.Xsl.Xslt.XslNode):int:this
        or       r14d, eax
-       mov      edi, dword ptr [rbp-0x7C]
-						;; size=40 bbWeight=2 PerfScore 15.00
+       lea      rdi, [rbp-0x70]
+       mov      rsi, r13
+       mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       call     [rax]System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       test     eax, eax
+       jne      SHORT G_M43812_IG18
+						;; size=60 bbWeight=4 PerfScore 48.00
+G_M43812_IG19:
+       mov      rdi, gword ptr [r15+0x70]
+       mov      esi, dword ptr [rdi+0x14]
+       mov      gword ptr [rbp-0x88], rdi
+       xor      rdi, rdi
+       mov      gword ptr [rbp-0x80], rdi
+						;; size=20 bbWeight=1 PerfScore 6.25
 G_M43812_IG20:
-       cmp      r12d, dword ptr [r13+0x14]
-       jne      G_M43812_IG55
-						;; size=10 bbWeight=8 PerfScore 32.00
+       mov      dword ptr [rbp-0x78], edi
+       mov      dword ptr [rbp-0x74], esi
+       lea      rdi, [rbp-0x88]
+       mov      rsi, r13
+       mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       call     [rax]System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       test     eax, eax
+       je       G_M43812_IG31
+						;; size=36 bbWeight=1 PerfScore 7.25
 G_M43812_IG21:
-       mov      esi, dword ptr [r13+0x10]
-       cmp      edi, esi
-       jae      SHORT G_M43812_IG22
-       mov      rsi, gword ptr [r13+0x08]
-       cmp      edi, dword ptr [rsi+0x08]
-       jae      G_M43812_IG54
-       mov      eax, edi
-       mov      rax, gword ptr [rsi+8*rax+0x10]
-       mov      gword ptr [rbp-0xA8], rax
-       inc      edi
-       mov      dword ptr [rbp-0x7C], edi
-       jmp      SHORT G_M43812_IG19
-						;; size=42 bbWeight=4 PerfScore 63.00
+       mov      rdi, gword ptr [rbp-0x80]
+       mov      rdi, gword ptr [rdi+0x28]
+       test     rdi, rdi
+       jne      SHORT G_M43812_IG23
+						;; size=13 bbWeight=4 PerfScore 17.00
 G_M43812_IG22:
-       mov      r13, gword ptr [r15+0x70]
-       mov      r12d, dword ptr [r13+0x14]
-       xor      edi, edi
-       jmp      G_M43812_IG32
-						;; size=15 bbWeight=4 PerfScore 25.00
+       mov      rdi, 0xD1FFAB1E      ; const ptr
+       mov      rdi, gword ptr [rdi]
+						;; size=13 bbWeight=2 PerfScore 4.50
 G_M43812_IG23:
-       mov      r11, gword ptr [r11+0x28]
-       test     r11, r11
-       jne      SHORT G_M43812_IG24
-       mov      r11, 0xD1FFAB1E      ; const ptr
-       mov      r11, gword ptr [r11]
-						;; size=22 bbWeight=2 PerfScore 11.00
-G_M43812_IG24:
-       mov      rdi, r11
        mov      r11, 0xD1FFAB1E      ; code for System.Collections.Generic.IEnumerable`1[System.__Canon]:GetEnumerator():System.Collections.Generic.IEnumerator`1[System.__Canon]:this
        call     [r11]System.Collections.Generic.IEnumerable`1[System.__Canon]:GetEnumerator():System.Collections.Generic.IEnumerator`1[System.__Canon]:this
-       mov      gword ptr [rbp-0x98], rax
-						;; size=23 bbWeight=2 PerfScore 9.00
-G_M43812_IG25:
-       mov      rdi, gword ptr [rbp-0x98]
+       mov      gword ptr [rbp-0xF0], rax
+						;; size=20 bbWeight=4 PerfScore 17.00
+G_M43812_IG24:
+       mov      rdi, gword ptr [rbp-0xF0]
        mov      r11, 0xD1FFAB1E      ; function address
        call     [r11]System.Collections.IEnumerator:MoveNext():ubyte:this
        test     eax, eax
-       je       SHORT G_M43812_IG31
-						;; size=24 bbWeight=2 PerfScore 11.00
-G_M43812_IG26:
-       mov      rdi, gword ptr [rbp-0x98]
+       je       SHORT G_M43812_IG30
+						;; size=24 bbWeight=4 PerfScore 22.00
+G_M43812_IG25:
+       mov      rdi, gword ptr [rbp-0xF0]
        mov      r11, 0xD1FFAB1E      ; code for System.Collections.Generic.IEnumerator`1[System.__Canon]:get_Current():System.__Canon:this
        call     [r11]System.Collections.Generic.IEnumerator`1[System.__Canon]:get_Current():System.__Canon:this
        mov      edi, dword ptr [rax+0x30]
        cmp      edi, 26
-       je       SHORT G_M43812_IG30
+       je       SHORT G_M43812_IG29
 						;; size=28 bbWeight=16 PerfScore 120.00
-G_M43812_IG27:
+G_M43812_IG26:
        cmp      edi, 22
-       jne      SHORT G_M43812_IG31
+       jne      SHORT G_M43812_IG30
        mov      rdi, rax
        mov      rcx, 0xD1FFAB1E      ; System.Xml.Xsl.Xslt.VarPar
        cmp      qword ptr [rdi], rcx
-       je       SHORT G_M43812_IG29
+       je       SHORT G_M43812_IG28
 						;; size=23 bbWeight=8 PerfScore 46.00
-G_M43812_IG28:
+G_M43812_IG27:
        mov      rsi, rax
        mov      rdi, rcx
        mov      rax, 0xD1FFAB1E      ; code for CORINFO_HELP_CHKCASTCLASS
        call     [rax]CORINFO_HELP_CHKCASTCLASS
        int3     
 						;; size=19 bbWeight=0 PerfScore 0.00
-G_M43812_IG29:
+G_M43812_IG28:
        mov      r11d, dword ptr [rdi+0x38]
        test     r11d, 0x2000
-       je       SHORT G_M43812_IG30
+       je       SHORT G_M43812_IG29
        or       r11d, dword ptr [rdi+0x3C]
        mov      dword ptr [rdi+0x38], r11d
 						;; size=21 bbWeight=8 PerfScore 58.00
-G_M43812_IG30:
-       mov      rdi, gword ptr [rbp-0x98]
+G_M43812_IG29:
+       mov      rdi, gword ptr [rbp-0xF0]
        mov      r11, 0xD1FFAB1E      ; code for System.Collections.IEnumerator:MoveNext():ubyte:this
        call     [r11]System.Collections.IEnumerator:MoveNext():ubyte:this
        test     eax, eax
-       jne      SHORT G_M43812_IG26
+       jne      SHORT G_M43812_IG25
 						;; size=24 bbWeight=16 PerfScore 88.00
-G_M43812_IG31:
-       mov      rdi, gword ptr [rbp-0x98]
+G_M43812_IG30:
+       mov      rdi, gword ptr [rbp-0xF0]
        mov      r11, 0xD1FFAB1E      ; code for System.IDisposable:Dispose():this
        call     [r11]System.IDisposable:Dispose():this
-       mov      edi, dword ptr [rbp-0x80]
-						;; size=23 bbWeight=2 PerfScore 10.50
-G_M43812_IG32:
-       cmp      r12d, dword ptr [r13+0x14]
-       jne      G_M43812_IG55
-						;; size=10 bbWeight=8 PerfScore 32.00
-G_M43812_IG33:
-       mov      r11d, dword ptr [r13+0x10]
-       cmp      edi, r11d
-       jae      SHORT G_M43812_IG34
-       mov      r11, gword ptr [r13+0x08]
-       cmp      edi, dword ptr [r11+0x08]
-       jae      G_M43812_IG54
-       mov      eax, edi
-       mov      r11, gword ptr [r11+8*rax+0x10]
-       inc      edi
-       mov      dword ptr [rbp-0x80], edi
-       jmp      G_M43812_IG23
-						;; size=40 bbWeight=4 PerfScore 59.00
-G_M43812_IG34:
+       lea      rdi, [rbp-0x88]
+       mov      rsi, r13
+       mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       call     [rax]System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       test     eax, eax
+       jne      G_M43812_IG21
+						;; size=50 bbWeight=4 PerfScore 38.00
+G_M43812_IG31:
        mov      r13d, 32
-						;; size=6 bbWeight=4 PerfScore 1.00
-G_M43812_IG35:
+						;; size=6 bbWeight=1 PerfScore 0.25
+G_M43812_IG32:
        mov      rdi, gword ptr [rbx+0x50]
        mov      esi, r13d
        mov      rax, 0xD1FFAB1E      ; code for System.Xml.Xsl.Xslt.XslAstAnalyzer+Graph`1[System.__Canon]:PropagateFlag(int):this
        cmp      dword ptr [rdi], edi
        call     [rax]System.Xml.Xsl.Xslt.XslAstAnalyzer+Graph`1[System.__Canon]:PropagateFlag(int):this
        sar      r13d, 1
-       jne      SHORT G_M43812_IG35
+       jne      SHORT G_M43812_IG32
 						;; size=26 bbWeight=4 PerfScore 40.00
-G_M43812_IG36:
+G_M43812_IG33:
        xor      rdi, rdi
        mov      gword ptr [rbx+0x50], rdi
        mov      rdi, gword ptr [rbx+0x40]
        mov      esi, dword ptr [rdi+0x44]
        vxorps   xmm0, xmm0, xmm0
-       vmovdqu  xmmword ptr [rbp-0x60], xmm0
-						;; size=22 bbWeight=1 PerfScore 6.58
-G_M43812_IG37:
-       vmovdqu  ymm0, ymmword ptr [rbp-0x78]
-       vmovdqu  ymmword ptr [rbp-0x50], ymm0
-       mov      rax, qword ptr [rbp-0x58]
-       mov      qword ptr [rbp-0x30], rax
-						;; size=18 bbWeight=1 PerfScore 7.00
-G_M43812_IG38:
-       mov      gword ptr [rbp-0x50], rdi
-       mov      dword ptr [rbp-0x48], esi
+       vmovdqu  xmmword ptr [rbp-0xC0], xmm0
+						;; size=25 bbWeight=1 PerfScore 6.58
+G_M43812_IG34:
+       vmovdqu  ymm0, ymmword ptr [rbp-0xD8]
+       vmovdqu  ymmword ptr [rbp-0xB0], ymm0
+       mov      rax, qword ptr [rbp-0xB8]
+       mov      qword ptr [rbp-0x90], rax
+						;; size=30 bbWeight=1 PerfScore 7.00
+G_M43812_IG35:
+       mov      gword ptr [rbp-0xB0], rdi
+       mov      dword ptr [rbp-0xA8], esi
        xor      edi, edi
-       mov      dword ptr [rbp-0x44], edi
-       mov      dword ptr [rbp-0x40], 2
-       lea      rdi, [rbp-0x50]
+       mov      dword ptr [rbp-0xA4], edi
+       mov      dword ptr [rbp-0xA0], 2
+       lea      rdi, [rbp-0xB0]
        mov      rsi, 0xD1FFAB1E      ; System.Collections.Generic.Dictionary`2+Enumerator[System.Xml.Xsl.Xslt.Template,System.Xml.Xsl.Xslt.Stylesheet]
        mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.Dictionary`2+Enumerator[System.__Canon,System.__Canon]:MoveNext():ubyte:this
        call     [rax]System.Collections.Generic.Dictionary`2+Enumerator[System.__Canon,System.__Canon]:MoveNext():ubyte:this
        test     eax, eax
-       je       SHORT G_M43812_IG42
-						;; size=49 bbWeight=1 PerfScore 9.50
-G_M43812_IG39:
-       mov      r13, gword ptr [rbp-0x38]
-       mov      rsi, gword ptr [rbp-0x30]
+       je       SHORT G_M43812_IG39
+						;; size=64 bbWeight=1 PerfScore 9.50
+G_M43812_IG36:
+       mov      r13, gword ptr [rbp-0x98]
+       mov      rsi, gword ptr [rbp-0x90]
        mov      r12, gword ptr [rsi+0x08]
        xor      eax, eax
        mov      ecx, dword ptr [r12+0x08]
-       mov      dword ptr [rbp-0x84], ecx
+       mov      dword ptr [rbp-0xDC], ecx
        test     ecx, ecx
-       jle      SHORT G_M43812_IG41
-						;; size=29 bbWeight=4 PerfScore 34.00
-G_M43812_IG40:
-       mov      qword ptr [rbp-0x90], rax
+       jle      SHORT G_M43812_IG38
+						;; size=35 bbWeight=4 PerfScore 34.00
+G_M43812_IG37:
+       mov      qword ptr [rbp-0xE8], rax
        mov      rsi, gword ptr [r12+8*rax+0x10]
        mov      rdi, rbx
        mov      rdx, r13
        mov      r8, 0xD1FFAB1E      ; code for System.Xml.Xsl.Xslt.XslAstAnalyzer:AddImportDependencies(System.Xml.Xsl.Xslt.Stylesheet,System.Xml.Xsl.Xslt.Template):this
        call     [r8]System.Xml.Xsl.Xslt.XslAstAnalyzer:AddImportDependencies(System.Xml.Xsl.Xslt.Stylesheet,System.Xml.Xsl.Xslt.Template):this
-       mov      rdi, qword ptr [rbp-0x90]
+       mov      rdi, qword ptr [rbp-0xE8]
        inc      edi
-       mov      esi, dword ptr [rbp-0x84]
+       mov      esi, dword ptr [rbp-0xDC]
        cmp      esi, edi
        mov      rax, rdi
-       jg       SHORT G_M43812_IG40
+       jg       SHORT G_M43812_IG37
 						;; size=53 bbWeight=16 PerfScore 168.00
-G_M43812_IG41:
-       lea      rdi, [rbp-0x50]
+G_M43812_IG38:
+       lea      rdi, [rbp-0xB0]
        mov      rsi, 0xD1FFAB1E      ; System.Collections.Generic.Dictionary`2+Enumerator[System.Xml.Xsl.Xslt.Template,System.Xml.Xsl.Xslt.Stylesheet]
        mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.Dictionary`2+Enumerator[System.__Canon,System.__Canon]:MoveNext():ubyte:this
        call     [rax]System.Collections.Generic.Dictionary`2+Enumerator[System.__Canon,System.__Canon]:MoveNext():ubyte:this
        test     eax, eax
-       jne      SHORT G_M43812_IG39
-						;; size=30 bbWeight=4 PerfScore 21.00
-G_M43812_IG42:
+       jne      SHORT G_M43812_IG36
+						;; size=33 bbWeight=4 PerfScore 21.00
+G_M43812_IG39:
        xor      rdi, rdi
        mov      gword ptr [rbx+0x40], rdi
        test     r14d, 256
-       je       SHORT G_M43812_IG44
+       je       SHORT G_M43812_IG41
 						;; size=15 bbWeight=1 PerfScore 2.50
-G_M43812_IG43:
+G_M43812_IG40:
        mov      rdi, gword ptr [rbx+0x30]
        mov      esi, 256
        mov      rax, 0xD1FFAB1E      ; code for System.Xml.Xsl.Xslt.XslAstAnalyzer+Graph`1[System.__Canon]:PropagateFlag(int):this
        cmp      dword ptr [rdi], edi
        call     [rax]System.Xml.Xsl.Xslt.XslAstAnalyzer+Graph`1[System.__Canon]:PropagateFlag(int):this
 						;; size=23 bbWeight=0.50 PerfScore 4.25
-G_M43812_IG44:
+G_M43812_IG41:
        test     r14d, 512
-       je       SHORT G_M43812_IG46
+       je       SHORT G_M43812_IG43
 						;; size=9 bbWeight=1 PerfScore 1.25
-G_M43812_IG45:
+G_M43812_IG42:
        mov      rdi, gword ptr [rbx+0x30]
        mov      esi, 512
        mov      rax, 0xD1FFAB1E      ; code for System.Xml.Xsl.Xslt.XslAstAnalyzer+Graph`1[System.__Canon]:PropagateFlag(int):this
        cmp      dword ptr [rdi], edi
        call     [rax]System.Xml.Xsl.Xslt.XslAstAnalyzer+Graph`1[System.__Canon]:PropagateFlag(int):this
 						;; size=23 bbWeight=0.50 PerfScore 4.25
-G_M43812_IG46:
+G_M43812_IG43:
        test     r14d, 0x400
-       je       SHORT G_M43812_IG48
+       je       SHORT G_M43812_IG45
 						;; size=9 bbWeight=1 PerfScore 1.25
-G_M43812_IG47:
+G_M43812_IG44:
        mov      rdi, gword ptr [rbx+0x30]
        mov      esi, 0x400
        mov      rax, 0xD1FFAB1E      ; code for System.Xml.Xsl.Xslt.XslAstAnalyzer+Graph`1[System.__Canon]:PropagateFlag(int):this
        cmp      dword ptr [rdi], edi
        call     [rax]System.Xml.Xsl.Xslt.XslAstAnalyzer+Graph`1[System.__Canon]:PropagateFlag(int):this
 						;; size=23 bbWeight=0.50 PerfScore 4.25
-G_M43812_IG48:
+G_M43812_IG45:
        test     r14d, 0x4000
-       je       SHORT G_M43812_IG50
+       je       SHORT G_M43812_IG47
 						;; size=9 bbWeight=1 PerfScore 1.25
-G_M43812_IG49:
+G_M43812_IG46:
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.Xml.Xsl.Xslt.XslAstAnalyzer:PropagateSideEffectsFlag():this
        call     [rax]System.Xml.Xsl.Xslt.XslAstAnalyzer:PropagateSideEffectsFlag():this
 						;; size=15 bbWeight=0.50 PerfScore 1.75
-G_M43812_IG50:
+G_M43812_IG47:
        xor      rdi, rdi
        mov      gword ptr [rbx+0x30], rdi
 						;; size=6 bbWeight=1 PerfScore 1.25
-G_M43812_IG51:
+G_M43812_IG48:
        mov      gword ptr [rbx+0x38], rdi
 						;; size=4 bbWeight=1 PerfScore 1.00
-G_M43812_IG52:
+G_M43812_IG49:
        mov      gword ptr [rbx+0x48], rdi
        mov      rdi, gword ptr [r15+0x30]
        mov      rsi, gword ptr [rdi+0x10]
        mov      rdi, gword ptr [rdi+0x08]
        cmp      dword ptr [rdi+0x08], 0
-       jbe      SHORT G_M43812_IG54
+       jbe      SHORT G_M43812_IG51
        mov      rax, gword ptr [rdi+0x10]
        mov      rdi, rsi
        mov      rsi, rax
        mov      rax, 0xD1FFAB1E      ; code for System.Xml.Xsl.Xslt.XslAstAnalyzer:FillModeFlags(System.Collections.Generic.Dictionary`2[System.Xml.Xsl.Qil.QilName,int],System.Xml.Xsl.Xslt.Stylesheet)
        call     [rax]System.Xml.Xsl.Xslt.XslAstAnalyzer:FillModeFlags(System.Collections.Generic.Dictionary`2[System.Xml.Xsl.Qil.QilName,int],System.Xml.Xsl.Xslt.Stylesheet)
        mov      eax, r14d
 						;; size=47 bbWeight=1 PerfScore 17.00
-G_M43812_IG53:
+G_M43812_IG50:
        vzeroupper 
-       add      rsp, 136
+       add      rsp, 216
        pop      rbx
        pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
 						;; size=21 bbWeight=1 PerfScore 5.25
-G_M43812_IG54:
+G_M43812_IG51:
        call     CORINFO_HELP_RNGCHKFAIL
        int3     
 						;; size=6 bbWeight=0 PerfScore 0.00
-G_M43812_IG55:
+G_M43812_IG52:
        mov      rax, 0xD1FFAB1E      ; code for System.ThrowHelper:ThrowInvalidOperationException_InvalidOperation_EnumFailedVersion()
        call     [rax]System.ThrowHelper:ThrowInvalidOperationException_InvalidOperation_EnumFailedVersion()
        int3     
 						;; size=13 bbWeight=0 PerfScore 0.00
-G_M43812_IG56:
+G_M43812_IG53:
        push     rbp
        push     r15
        push     r14
        push     r13
        push     r12
        push     rbx
        push     rax
        mov      rbp, qword ptr [rdi]
        mov      qword ptr [rsp], rbp
-       lea      rbp, [rbp+0xB0]
+       lea      rbp, [rbp+0x100]
 						;; size=25 bbWeight=0 PerfScore 0.00
-G_M43812_IG57:
-       cmp      gword ptr [rbp-0x98], 0
-       je       SHORT G_M43812_IG58
-       mov      rdi, gword ptr [rbp-0x98]
+G_M43812_IG54:
+       cmp      gword ptr [rbp-0xF0], 0
+       je       SHORT G_M43812_IG55
+       mov      rdi, gword ptr [rbp-0xF0]
        mov      r11, 0xD1FFAB1E      ; code for System.IDisposable:Dispose():this
        call     [r11]System.IDisposable:Dispose():this
 						;; size=30 bbWeight=0 PerfScore 0.00
-G_M43812_IG58:
+G_M43812_IG55:
        nop      
 						;; size=1 bbWeight=0 PerfScore 0.00
-G_M43812_IG59:
+G_M43812_IG56:
        vzeroupper 
        add      rsp, 8
        pop      rbx
        pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
 						;; size=18 bbWeight=0 PerfScore 0.00
 
-; Total bytes of code 1518, prolog size 63, PerfScore 1491.17, instruction count 372, allocated bytes for code 1518 (MethodHash=d62954db) for method System.Xml.Xsl.Xslt.XslAstAnalyzer:Analyze(System.Xml.Xsl.Xslt.Compiler):int:this (FullOpts)
+; Total bytes of code 1636, prolog size 90, PerfScore 1279.92, instruction count 387, allocated bytes for code 1636 (MethodHash=d62954db) for method System.Xml.Xsl.Xslt.XslAstAnalyzer:Analyze(System.Xml.Xsl.Xslt.Compiler):int:this (FullOpts)
106 (5.50 % of base) - System.Reflection.Emit.ModuleBuilderImpl:AppendMetadata(System.Reflection.Metadata.Ecma335.MethodBodyStreamEncoder,System.Reflection.Metadata.BlobBuilder,byref):this
 ; Assembly listing for method System.Reflection.Emit.ModuleBuilderImpl:AppendMetadata(System.Reflection.Metadata.Ecma335.MethodBodyStreamEncoder,System.Reflection.Metadata.BlobBuilder,byref):this (FullOpts)
 ; Emitting BLENDED_CODE for X64 with AVX - Unix
 ; FullOpts code
 ; optimized code
 ; rbp based frame
 ; fully interruptible
 ; No PGO data
-; 0 inlinees with PGO data; 63 single block inlinees; 14 inlinees without PGO data
+; 0 inlinees with PGO data; 63 single block inlinees; 10 inlinees without PGO data
 ; Final local variable assignments
 ;
-;  V00 this         [V00,T04] ( 30, 46   )     ref  ->  rbx         this class-hnd single-def <System.Reflection.Emit.ModuleBuilderImpl>
+;  V00 this         [V00,T04] ( 31, 63   )     ref  ->  rbx         this class-hnd single-def <System.Reflection.Emit.ModuleBuilderImpl>
 ;* V01 arg1         [V01    ] (  0,  0   )  struct ( 8) zero-ref    single-def <System.Reflection.Metadata.Ecma335.MethodBodyStreamEncoder>
-;  V02 arg2         [V02,T51] (  4,  5   )     ref  ->  r14         class-hnd single-def <System.Reflection.Metadata.BlobBuilder>
-;  V03 arg3         [V03,T38] (  3,  6   )   byref  ->  r15         single-def
+;  V02 arg2         [V02,T26] (  4,  7   )     ref  ->  r15         class-hnd single-def <System.Reflection.Metadata.BlobBuilder>
+;  V03 arg3         [V03,T51] (  3,  3   )   byref  ->  r13         single-def
 ;* V04 loc0         [V04    ] (  0,  0   )  struct ( 8) zero-ref    <System.Reflection.Metadata.ModuleDefinitionHandle>
-;  V05 loc1         [V05,T01] ( 11, 86   )     ref  ->  r12         class-hnd exact single-def <System.Collections.Generic.List`1[System.Reflection.Emit.GenericTypeParameterBuilderImpl]>
+;  V05 loc1         [V05,T01] ( 11, 88   )     ref  ->  r12         class-hnd exact single-def <System.Collections.Generic.List`1[System.Reflection.Emit.GenericTypeParameterBuilderImpl]>
 ;* V06 loc2         [V06    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op <System.Reflection.Metadata.GuidHandle>
 ;* V07 loc3         [V07    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op <System.Reflection.Metadata.StringHandle>
 ;* V08 loc4         [V08    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op <System.Reflection.Metadata.EntityHandle>
-;* V09 loc5         [V09    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op <System.Collections.Generic.List`1+Enumerator[System.Reflection.Emit.TypeBuilderImpl]>
-;  V10 loc6         [V10,T08] ( 19, 38   )     ref  ->  [rbp-0xB8]  class-hnd exact spill-single-def <System.Reflection.Emit.TypeBuilderImpl>
+;  V09 loc5         [V09    ] (  7, 13   )  struct (24) [rbp-0x40]  do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Collections.Generic.List`1+Enumerator[System.Reflection.Emit.TypeBuilderImpl]>
+;  V10 loc6         [V10,T02] ( 23, 80   )     ref  ->  [rbp-0xE0]  class-hnd exact spill-single-def <System.Reflection.Emit.TypeBuilderImpl>
 ;* V11 loc7         [V11    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op <System.Reflection.Metadata.EntityHandle>
 ;* V12 loc8         [V12    ] (  0,  0   )  struct ( 8) zero-ref    <System.Reflection.Metadata.TypeDefinitionHandle>
-;  V13 loc9         [V13,T19] (  3, 20   )     ref  ->  [rbp-0xC0]  class-hnd spill-single-def <System.Type[]>
-;* V14 loc10        [V14,T103] (  0,  0   )     int  ->  zero-ref   
-;  V15 loc11        [V15,T05] (  4, 48   )     ref  ->  r10         class-hnd exact <System.Reflection.Emit.GenericTypeParameterBuilderImpl>
-;* V16 loc12        [V16    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op <System.Collections.Generic.List`1+Enumerator[System.Reflection.Emit.GenericTypeParameterBuilderImpl]>
-;* V17 loc13        [V17    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact <System.Reflection.Emit.GenericTypeParameterBuilderImpl>
+;  V13 loc9         [V13,T15] (  3, 20   )     ref  ->  [rbp-0xE8]  class-hnd spill-single-def <System.Type[]>
+;* V14 loc10        [V14,T84] (  0,  0   )     int  ->  zero-ref   
+;  V15 loc11        [V15,T06] (  4, 48   )     ref  ->  r10         class-hnd exact <System.Reflection.Emit.GenericTypeParameterBuilderImpl>
+;  V16 loc12        [V16    ] (  7, 13   )  struct (24) [rbp-0x58]  do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Collections.Generic.List`1+Enumerator[System.Reflection.Emit.GenericTypeParameterBuilderImpl]>
+;  V17 loc13        [V17,T22] (  3, 12   )     ref  ->  rdx         class-hnd exact <System.Reflection.Emit.GenericTypeParameterBuilderImpl>
 ;  V18 OutArgs      [V18    ] (  1,  1   )  struct (24) [rsp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-;  V19 tmp1         [V19,T70] (  2,  4   )     ref  ->  r12         class-hnd exact single-def "impAppendStmt" <System.Reflection.Metadata.Ecma335.MetadataBuilder>
+;  V19 tmp1         [V19,T54] (  2,  4   )     ref  ->  r12         class-hnd exact single-def "impAppendStmt" <System.Reflection.Metadata.Ecma335.MetadataBuilder>
 ;* V20 tmp2         [V20    ] (  0,  0   )  struct ( 8) zero-ref    "impAppendStmt" <System.Reflection.Metadata.StringHandle>
 ;* V21 tmp3         [V21    ] (  0,  0   )  struct ( 8) zero-ref    "impAppendStmt" <System.Reflection.Metadata.GuidHandle>
 ;* V22 tmp4         [V22    ] (  0,  0   )  struct ( 8) zero-ref    "impAppendStmt" <System.Reflection.Metadata.GuidHandle>
-;  V23 tmp5         [V23,T53] (  3,  6   )     ref  ->  [rbp-0xC8]  class-hnd exact spill-single-def "impAppendStmt" <System.Reflection.Metadata.Ecma335.MetadataBuilder>
+;  V23 tmp5         [V23,T44] (  3,  6   )     ref  ->  [rbp-0xF0]  class-hnd exact spill-single-def "impAppendStmt" <System.Reflection.Metadata.Ecma335.MetadataBuilder>
 ;* V24 tmp6         [V24    ] (  0,  0   )  struct ( 8) zero-ref    "impAppendStmt" <System.Reflection.Metadata.StringHandle>
 ;* V25 tmp7         [V25    ] (  0,  0   )  struct ( 8) zero-ref    "impAppendStmt" <System.Reflection.Metadata.StringHandle>
 ;* V26 tmp8         [V26    ] (  0,  0   )  struct ( 8) zero-ref    "impAppendStmt" <System.Reflection.Metadata.EntityHandle>
 ;* V27 tmp9         [V27    ] (  0,  0   )  struct ( 8) zero-ref    "impAppendStmt" <System.Reflection.Metadata.FieldDefinitionHandle>
 ;* V28 tmp10        [V28    ] (  0,  0   )  struct ( 8) zero-ref    "spilled call-like call argument" <System.Reflection.Metadata.MethodDefinitionHandle>
 ;* V29 tmp11        [V29    ] (  0,  0   )  struct ( 8) zero-ref    "location for address-of(RValue)" <System.Reflection.Metadata.TypeDefinitionHandle>
-;  V30 tmp12        [V30,T71] (  2,  4   )     ref  ->  rsi         class-hnd single-def "impAppendStmt" <System.Collections.Generic.List`1[System.Reflection.Emit.CustomAttributeWrapper]>
+;  V30 tmp12        [V30,T55] (  2,  4   )     ref  ->  rsi         class-hnd single-def "impAppendStmt" <System.Collections.Generic.List`1[System.Reflection.Emit.CustomAttributeWrapper]>
 ;* V31 tmp13        [V31    ] (  0,  0   )  struct ( 8) zero-ref    "spilled call-like call argument" <System.Reflection.Metadata.EntityHandle>
-;  V32 tmp14        [V32,T54] (  3,  6   )     ref  ->  r12         class-hnd exact single-def "NewObj constructor temp" <System.Collections.Generic.List`1[System.Reflection.Emit.GenericTypeParameterBuilderImpl]>
-;  V33 tmp15        [V33,T39] (  2,  8   )     ref  ->  rsi         class-hnd "impAppendStmt" <System.Collections.Generic.List`1[System.Reflection.Emit.CustomAttributeWrapper]>
+;  V32 tmp14        [V32,T45] (  3,  6   )     ref  ->  r12         class-hnd exact single-def "NewObj constructor temp" <System.Collections.Generic.List`1[System.Reflection.Emit.GenericTypeParameterBuilderImpl]>
+;  V33 tmp15        [V33,T17] (  2, 16   )     ref  ->  rsi         class-hnd "impAppendStmt" <System.Collections.Generic.List`1[System.Reflection.Emit.CustomAttributeWrapper]>
 ;* V34 tmp16        [V34    ] (  0,  0   )  struct ( 8) zero-ref    "spilled call-like call argument" <System.Reflection.Metadata.EntityHandle>
-;  V35 tmp17        [V35,T40] (  2,  8   )     ref  ->  [rbp-0xD0]  class-hnd exact spill-single-def "impAppendStmt" <System.Reflection.Metadata.Ecma335.MetadataBuilder>
+;  V35 tmp17        [V35,T34] (  2,  8   )     ref  ->  [rbp-0xF8]  class-hnd exact spill-single-def "impAppendStmt" <System.Reflection.Metadata.Ecma335.MetadataBuilder>
 ;* V36 tmp18        [V36    ] (  0,  0   )  struct ( 8) zero-ref    "spilled call-like call argument" <System.Reflection.Metadata.EntityHandle>
 ;* V37 tmp19        [V37    ] (  0,  0   )  struct ( 8) zero-ref    "spilled call-like call argument" <System.Reflection.Metadata.TypeDefinitionHandle>
-;  V38 tmp20        [V38,T41] (  2,  8   )     ref  ->  rsi         class-hnd exact "impAppendStmt" <System.Reflection.Metadata.Ecma335.MetadataBuilder>
-;  V39 tmp21        [V39,T44] (  2,  8   )     int  ->  rdx         "impAppendStmt"
-;  V40 tmp22        [V40,T23] (  2, 16   )     ref  ->  rsi         class-hnd single-def "dup spill" <System.Comparison`1[System.Reflection.Emit.GenericTypeParameterBuilderImpl]>
+;  V38 tmp20        [V38,T35] (  2,  8   )     ref  ->  rsi         class-hnd exact "impAppendStmt" <System.Reflection.Metadata.Ecma335.MetadataBuilder>
+;  V39 tmp21        [V39,T37] (  2,  8   )     int  ->  rdx         "impAppendStmt"
+;  V40 tmp22        [V40,T56] (  2,  4   )     ref  ->  rsi         class-hnd single-def "dup spill" <System.Comparison`1[System.Reflection.Emit.GenericTypeParameterBuilderImpl]>
 ;* V41 tmp23        [V41    ] (  0,  0   )     ref  ->  zero-ref    single-def
-;  V42 tmp24        [V42,T30] (  4,  9.50)     ref  ->  rsi        
-;  V43 tmp25        [V43,T67] (  5,  5   )     ref  ->  r14         class-hnd exact single-def "NewObj constructor temp" <System.Comparison`1[System.Reflection.Emit.GenericTypeParameterBuilderImpl]>
-;  V44 tmp26        [V44,T68] (  3,  5   )     ref  ->  [rbp-0xD8]  class-hnd exact spill-single-def "Inlining Arg" <System.Reflection.Metadata.Ecma335.MetadataBuilder>
+;  V42 tmp24        [V42,T63] (  4,  3.50)     ref  ->  rsi        
+;  V43 tmp25        [V43,T50] (  5,  5   )     ref  ->  r15         class-hnd exact single-def "NewObj constructor temp" <System.Comparison`1[System.Reflection.Emit.GenericTypeParameterBuilderImpl]>
+;  V44 tmp26        [V44,T52] (  3,  5   )     ref  ->  [rbp-0x100]  class-hnd exact spill-single-def "Inlining Arg" <System.Reflection.Metadata.Ecma335.MetadataBuilder>
 ;* V45 tmp27        [V45    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.Reflection.Metadata.StringHandle>
-;* V46 tmp28        [V46,T106] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;  V47 tmp29        [V47,T55] (  3,  6   )     ref  ->  rdi         class-hnd single-def "Inlining Arg" <System.Collections.Generic.Dictionary`2[System.String,System.Reflection.Metadata.StringHandle]>
-;  V48 tmp30        [V48,T93] (  3,  2.50)   byref  ->  rax         single-def "Inline stloc first use temp"
-;  V49 tmp31        [V49,T85] (  3,  3   )     ref  ->  rdx         class-hnd single-def "Inlining Arg" <System.Collections.Generic.Dictionary`2[System.String,System.Reflection.Metadata.StringHandle]>
+;* V46 tmp28        [V46,T87] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
+;  V47 tmp29        [V47,T46] (  3,  6   )     ref  ->  rdi         class-hnd single-def "Inlining Arg" <System.Collections.Generic.Dictionary`2[System.String,System.Reflection.Metadata.StringHandle]>
+;  V48 tmp30        [V48,T74] (  3,  2.50)   byref  ->  rax         single-def "Inline stloc first use temp"
+;  V49 tmp31        [V49,T66] (  3,  3   )     ref  ->  rdx         class-hnd single-def "Inlining Arg" <System.Collections.Generic.Dictionary`2[System.String,System.Reflection.Metadata.StringHandle]>
 ;* V50 tmp32        [V50    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
 ;* V51 tmp33        [V51    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "NewObj constructor temp" <System.Reflection.Metadata.StringHandle>
 ;* V52 tmp34        [V52    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
-;  V53 tmp35        [V53,T86] (  3,  3   )     ref  ->  rdi         class-hnd single-def "Inlining Arg" <System.Collections.Generic.Dictionary`2[System.String,System.Reflection.Metadata.StringHandle]>
+;  V53 tmp35        [V53,T67] (  3,  3   )     ref  ->  rdi         class-hnd single-def "Inlining Arg" <System.Collections.Generic.Dictionary`2[System.String,System.Reflection.Metadata.StringHandle]>
 ;* V54 tmp36        [V54    ] (  0,  0   )  struct ( 8) zero-ref    "Inlining Arg" <System.Reflection.Metadata.StringHandle>
 ;* V55 tmp37        [V55    ] (  0,  0   )   ubyte  ->  zero-ref    "Inline stloc first use temp"
 ;* V56 tmp38        [V56    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "NewObj constructor temp" <System.Reflection.Metadata.FieldDefinitionHandle>
 ;* V57 tmp39        [V57    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "NewObj constructor temp" <System.Reflection.Metadata.MethodDefinitionHandle>
-;  V58 tmp40        [V58    ] (  8,  8   )  struct (24) [rbp-0x40]  do-not-enreg[XSF] addr-exposed ld-addr-op "Inline ldloca(s) first use temp" <System.Reflection.Metadata.Ecma335.MetadataBuilder+TypeDefRow>
-;  V59 tmp41        [V59,T72] (  2,  4   )     ref  ->  rdi         class-hnd single-def "impAppendStmt" <System.Collections.Generic.List`1[System.Reflection.Metadata.Ecma335.MetadataBuilder+TypeDefRow]>
+;  V58 tmp40        [V58    ] (  8,  8   )  struct (24) [rbp-0x70]  do-not-enreg[XSF] addr-exposed ld-addr-op "Inline ldloca(s) first use temp" <System.Reflection.Metadata.Ecma335.MetadataBuilder+TypeDefRow>
+;  V59 tmp41        [V59,T57] (  2,  4   )     ref  ->  rdi         class-hnd single-def "impAppendStmt" <System.Collections.Generic.List`1[System.Reflection.Metadata.Ecma335.MetadataBuilder+TypeDefRow]>
 ;* V60 tmp42        [V60    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "Inlining Arg" <System.Reflection.Metadata.EntityHandle>
 ;* V61 tmp43        [V61    ] (  0,  0   )     ref  ->  zero-ref    single-def
-;  V62 tmp44        [V62,T95] (  2,  2   )   byref  ->  rax         single-def
-;  V63 tmp45        [V63,T52] (  7,  6   )     ref  ->  rdi         single-def
-;  V64 tmp46        [V64,T96] (  2,  2   )   byref  ->  rax         single-def
-;* V65 tmp47        [V65,T108] (  0,  0   )     int  ->  zero-ref   
+;  V62 tmp44        [V62,T76] (  2,  2   )   byref  ->  rax         single-def
+;  V63 tmp45        [V63,T43] (  7,  6   )     ref  ->  rdi         single-def
+;  V64 tmp46        [V64,T77] (  2,  2   )   byref  ->  rax         single-def
+;* V65 tmp47        [V65,T91] (  0,  0   )     int  ->  zero-ref   
 ;* V66 tmp48        [V66    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "Inlining Arg" <System.Reflection.Metadata.FieldDefinitionHandle>
 ;* V67 tmp49        [V67    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "Inlining Arg" <System.Reflection.Metadata.MethodDefinitionHandle>
-;  V68 tmp50        [V68,T94] (  3,  2.50)     ref  ->  rax         class-hnd exact single-def "Inline stloc first use temp" <System.Reflection.Metadata.Ecma335.MetadataBuilder+TypeDefRow[]>
-;  V69 tmp51        [V69,T84] (  4,  3   )     int  ->  rdx         "Inline stloc first use temp"
-;  V70 tmp52        [V70,T69] (  3,  4   )  struct (24) [rbp-0x58]  do-not-enreg[S] "Inlining Arg" <System.Reflection.Metadata.Ecma335.MetadataBuilder+TypeDefRow>
+;  V68 tmp50        [V68,T75] (  3,  2.50)     ref  ->  rax         class-hnd exact single-def "Inline stloc first use temp" <System.Reflection.Metadata.Ecma335.MetadataBuilder+TypeDefRow[]>
+;  V69 tmp51        [V69,T65] (  4,  3   )     int  ->  rdx         "Inline stloc first use temp"
+;  V70 tmp52        [V70,T53] (  3,  4   )  struct (24) [rbp-0x88]  do-not-enreg[S] "Inlining Arg" <System.Reflection.Metadata.Ecma335.MetadataBuilder+TypeDefRow>
 ;* V71 tmp53        [V71    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <System.Collections.Generic.List`1[System.Reflection.Metadata.Ecma335.MetadataBuilder+TypeDefRow]>
 ;* V72 tmp54        [V72    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
 ;* V73 tmp55        [V73    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "NewObj constructor temp" <System.Reflection.Metadata.TypeDefinitionHandle>
 ;* V74 tmp56        [V74    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "NewObj constructor temp" <System.Reflection.Metadata.EntityHandle>
 ;* V75 tmp57        [V75    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
-;  V76 tmp58        [V76,T73] (  2,  4   )     ref  ->  rax         class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Reflection.Emit.TypeBuilderImpl]>
+;  V76 tmp58        [V76,T58] (  2,  4   )     ref  ->  rdi         class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Reflection.Emit.TypeBuilderImpl]>
 ;* V77 tmp59        [V77    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Reflection.Emit.TypeBuilderImpl]>
-;  V78 tmp60        [V78,T42] (  2,  8   )     ref  ->  [rbp-0xE0]  class-hnd exact spill-single-def "impAppendStmt" <System.Reflection.Metadata.Ecma335.MetadataBuilder>
-;  V79 tmp61        [V79,T45] (  2,  8   )     int  ->  [rbp-0x5C]  spill-single-def "impAppendStmt"
+;  V78 tmp60        [V78,T18] (  2, 16   )     ref  ->  [rbp-0x108]  class-hnd exact spill-single-def "impAppendStmt" <System.Reflection.Metadata.Ecma335.MetadataBuilder>
+;  V79 tmp61        [V79,T19] (  2, 16   )     int  ->  [rbp-0x8C]  spill-single-def "impAppendStmt"
 ;* V80 tmp62        [V80    ] (  0,  0   )     ref  ->  zero-ref   
 ;* V81 tmp63        [V81    ] (  0,  0   )     int  ->  zero-ref   
 ;* V82 tmp64        [V82    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.Reflection.Metadata.StringHandle>
 ;* V83 tmp65        [V83    ] (  0,  0   )     ref  ->  zero-ref   
 ;* V84 tmp66        [V84    ] (  0,  0   )     int  ->  zero-ref   
 ;* V85 tmp67        [V85    ] (  0,  0   )  struct ( 8) zero-ref    <System.Reflection.Metadata.StringHandle>
 ;* V86 tmp68        [V86    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "impAppendStmt" <System.Reflection.Metadata.Ecma335.MetadataBuilder>
 ;* V87 tmp69        [V87    ] (  0,  0   )  struct ( 8) zero-ref    "Inlining Arg" <System.Reflection.Metadata.EntityHandle>
-;  V88 tmp70        [V88,T46] (  2,  8   )     int  ->  [rbp-0x60]  spill-single-def "Inlining Arg"
+;  V88 tmp70        [V88,T20] (  2, 16   )     int  ->  [rbp-0x90]  spill-single-def "Inlining Arg"
 ;* V89 tmp71        [V89    ] (  0,  0   )  struct ( 8) zero-ref    "impAppendStmt" <System.Reflection.Metadata.StringHandle>
-;  V90 tmp72        [V90,T47] (  2,  8   )     int  ->  [rbp-0x64]  spill-single-def "Inlining Arg"
+;  V90 tmp72        [V90,T21] (  2, 16   )     int  ->  [rbp-0x94]  spill-single-def "Inlining Arg"
 ;* V91 tmp73        [V91    ] (  0,  0   )  struct ( 8) zero-ref    "impAppendStmt" <System.Reflection.Metadata.FieldDefinitionHandle>
 ;* V92 tmp74        [V92    ] (  0,  0   )  struct ( 8) zero-ref    "spilled call-like call argument" <System.Reflection.Metadata.MethodDefinitionHandle>
-;  V93 tmp75        [V93,T43] (  2,  8   )     ref  ->  rdi         class-hnd exact "impAppendStmt" <System.Reflection.Metadata.Ecma335.MetadataBuilder>
+;  V93 tmp75        [V93,T36] (  2,  8   )     ref  ->  rdi         class-hnd exact "impAppendStmt" <System.Reflection.Metadata.Ecma335.MetadataBuilder>
 ;* V94 tmp76        [V94    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
 ;* V95 tmp77        [V95    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "NewObj constructor temp" <System.Reflection.Metadata.FieldDefinitionHandle>
 ;* V96 tmp78        [V96    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
 ;* V97 tmp79        [V97    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
 ;* V98 tmp80        [V98    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "NewObj constructor temp" <System.Reflection.Metadata.MethodDefinitionHandle>
 ;* V99 tmp81        [V99    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
 ;* V100 tmp82       [V100    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline return value spill temp" <System.Type[]>
-;  V101 tmp83       [V101,T74] (  2,  4   )     ref  ->  rcx         class-hnd exact "Inline stloc first use temp" <System.Reflection.Emit.GenericTypeParameterBuilderImpl[]>
-;  V102 tmp84       [V102,T75] (  2,  4   )     ref  ->  rcx        
+;  V101 tmp83       [V101,T59] (  2,  4   )     ref  ->  rcx         class-hnd exact "Inline stloc first use temp" <System.Reflection.Emit.GenericTypeParameterBuilderImpl[]>
+;  V102 tmp84       [V102,T60] (  2,  4   )     ref  ->  rcx        
 ;* V103 tmp85       [V103    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "NewObj constructor temp" <System.Reflection.Metadata.EntityHandle>
 ;* V104 tmp86       [V104    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
-;  V105 tmp87       [V105,T07] (  3, 40   )     ref  ->  rdi         class-hnd "Inline stloc first use temp" <System.Reflection.Emit.GenericTypeParameterBuilderImpl[]>
-;  V106 tmp88       [V106,T06] (  4, 48   )     int  ->  rsi         "Inline stloc first use temp"
-;  V107 tmp89       [V107    ] (  6, 12   )  struct (16) [rbp-0x78]  do-not-enreg[SFA] multireg-arg ld-addr-op "Inline ldloca(s) first use temp" <System.Reflection.Metadata.Ecma335.MetadataBuilder+ClassLayoutRow>
+;  V105 tmp87       [V105,T08] (  3, 40   )     ref  ->  rdi         class-hnd "Inline stloc first use temp" <System.Reflection.Emit.GenericTypeParameterBuilderImpl[]>
+;  V106 tmp88       [V106,T07] (  4, 48   )     int  ->  rsi         "Inline stloc first use temp"
+;  V107 tmp89       [V107    ] (  6, 12   )  struct (16) [rbp-0xA8]  do-not-enreg[SFA] multireg-arg ld-addr-op "Inline ldloca(s) first use temp" <System.Reflection.Metadata.Ecma335.MetadataBuilder+ClassLayoutRow>
 ;  V108 tmp90       [V108,T13] (  7, 28   )     ref  ->  rcx         class-hnd "impAppendStmt" <System.Collections.Generic.List`1[System.Reflection.Metadata.Ecma335.MetadataBuilder+ClassLayoutRow]>
 ;* V109 tmp91       [V109    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "Inlining Arg" <System.Reflection.Metadata.TypeDefinitionHandle>
 ;* V110 tmp92       [V110    ] (  0,  0   )  ushort  ->  zero-ref    "Inlining Arg"
-;  V111 tmp93       [V111,T48] (  2,  8   )     int  ->  rdi         "Inlining Arg"
-;  V112 tmp94       [V112,T56] (  3,  6   )     ref  ->  rsi         class-hnd exact "Inline stloc first use temp" <System.Reflection.Metadata.Ecma335.MetadataBuilder+ClassLayoutRow[]>
-;  V113 tmp95       [V113,T33] (  4,  8   )     int  ->  rdx         "Inline stloc first use temp"
+;  V111 tmp93       [V111,T38] (  2,  8   )     int  ->  rdi         "Inlining Arg"
+;  V112 tmp94       [V112,T47] (  3,  6   )     ref  ->  rsi         class-hnd exact "Inline stloc first use temp" <System.Reflection.Metadata.Ecma335.MetadataBuilder+ClassLayoutRow[]>
+;  V113 tmp95       [V113,T27] (  4,  8   )     int  ->  rdx         "Inline stloc first use temp"
 ;* V114 tmp96       [V114    ] (  0,  0   )  struct (16) zero-ref    "Inlining Arg" <System.Reflection.Metadata.Ecma335.MetadataBuilder+ClassLayoutRow>
 ;* V115 tmp97       [V115    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.Reflection.Metadata.Ecma335.MetadataBuilder+NestedClassRow>
 ;  V116 tmp98       [V116,T14] (  7, 28   )     ref  ->  rdi         class-hnd "impAppendStmt" <System.Collections.Generic.List`1[System.Reflection.Metadata.Ecma335.MetadataBuilder+NestedClassRow]>
 ;* V117 tmp99       [V117    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "Inlining Arg" <System.Reflection.Metadata.TypeDefinitionHandle>
 ;* V118 tmp100      [V118    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "Inlining Arg" <System.Reflection.Metadata.TypeDefinitionHandle>
-;  V119 tmp101      [V119,T57] (  3,  6   )     ref  ->  rsi         class-hnd exact "Inline stloc first use temp" <System.Reflection.Metadata.Ecma335.MetadataBuilder+NestedClassRow[]>
-;  V120 tmp102      [V120,T34] (  4,  8   )     int  ->  rcx         "Inline stloc first use temp"
+;  V119 tmp101      [V119,T48] (  3,  6   )     ref  ->  rsi         class-hnd exact "Inline stloc first use temp" <System.Reflection.Metadata.Ecma335.MetadataBuilder+NestedClassRow[]>
+;  V120 tmp102      [V120,T28] (  4,  8   )     int  ->  rcx         "Inline stloc first use temp"
 ;* V121 tmp103      [V121    ] (  0,  0   )  struct ( 8) zero-ref    "Inlining Arg" <System.Reflection.Metadata.Ecma335.MetadataBuilder+NestedClassRow>
 ;* V122 tmp104      [V122    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "NewObj constructor temp" <System.Reflection.Metadata.EntityHandle>
 ;* V123 tmp105      [V123    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
-;* V124 tmp106      [V124,T49] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;* V125 tmp107      [V125    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline stloc first use temp" <System.Collections.Generic.List`1[System.Reflection.Emit.TypeBuilderImpl]>
-;  V126 tmp108      [V126,T87] (  3,  3   )     ref  ->  rsi         class-hnd exact single-def "Inlining Arg" <System.Reflection.Emit.ModuleBuilderImpl+<>c>
-;* V127 tmp109      [V127    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Reflection.Emit.GenericTypeParameterBuilderImpl]>
-;* V128 tmp110      [V128,T50] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;* V129 tmp111      [V129    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline stloc first use temp" <System.Collections.Generic.List`1[System.Reflection.Emit.GenericTypeParameterBuilderImpl]>
-;  V130 tmp112      [V130,T58] (  3,  4   )     ref  ->  r13         single-def "field V01.<Builder>k__BackingField (fldOffset=0x0)" P-INDEP
-;  V131 tmp113      [V131,T97] (  2,  2   )     int  ->  r12         "field V04._rowId (fldOffset=0x0)" P-INDEP
-;* V132 tmp114      [V132,T109] (  0,  0   )     int  ->  zero-ref    "field V06._index (fldOffset=0x0)" P-INDEP
-;* V133 tmp115      [V133    ] (  0,  0   )     int  ->  zero-ref    "field V07._value (fldOffset=0x0)" P-INDEP
-;* V134 tmp116      [V134    ] (  0,  0   )     int  ->  zero-ref    "field V08._vToken (fldOffset=0x0)" P-INDEP
-;  V135 tmp117      [V135,T21] (  4, 17   )     ref  ->  [rbp-0xE8]  spill-single-def "field V09._list (fldOffset=0x0)" P-INDEP
-;  V136 tmp118      [V136,T29] (  2,  6   )     ref  ->  rdx         "field V09._current (fldOffset=0x8)" P-INDEP
-;  V137 tmp119      [V137,T15] (  6, 21   )     int  ->  [rbp-0x7C]  "field V09._index (fldOffset=0x10)" P-INDEP
-;  V138 tmp120      [V138,T31] (  2,  9   )     int  ->  [rbp-0x80]  spill-single-def "field V09._version (fldOffset=0x14)" P-INDEP
-;  V139 tmp121      [V139,T64] (  3,  6   )     int  ->  [rbp-0x84]  "field V11._vToken (fldOffset=0x0)" P-INDEP
-;  V140 tmp122      [V140,T12] (  7, 28   )     int  ->  [rbp-0x88]  spill-single-def "field V12._rowId (fldOffset=0x0)" P-INDEP
-;  V141 tmp123      [V141,T22] (  4, 17   )     ref  ->  r12         single-def "field V16._list (fldOffset=0x0)" P-INDEP
-;  V142 tmp124      [V142,T24] (  3,  8   )     ref  ->  rdx         "field V16._current (fldOffset=0x8)" P-INDEP
-;  V143 tmp125      [V143,T16] (  6, 21   )     int  ->  r13         "field V16._index (fldOffset=0x10)" P-INDEP
-;  V144 tmp126      [V144,T32] (  2,  9   )     int  ->  r14         "field V16._version (fldOffset=0x14)" P-INDEP
-;  V145 tmp127      [V145,T98] (  2,  2   )     int  ->  [rbp-0x8C]  spill-single-def "field V20._value (fldOffset=0x0)" P-INDEP
-;  V146 tmp128      [V146,T99] (  2,  2   )     int  ->  rcx         "field V21._index (fldOffset=0x0)" P-INDEP
-;* V147 tmp129      [V147,T110] (  0,  0   )     int  ->  zero-ref    "field V22._index (fldOffset=0x0)" P-INDEP
-;* V148 tmp130      [V148    ] (  0,  0   )     int  ->  zero-ref    "field V24._value (fldOffset=0x0)" P-INDEP
-;* V149 tmp131      [V149    ] (  0,  0   )     int  ->  zero-ref    "field V25._value (fldOffset=0x0)" P-INDEP
-;* V150 tmp132      [V150    ] (  0,  0   )     int  ->  zero-ref    "field V26._vToken (fldOffset=0x0)" P-INDEP
-;* V151 tmp133      [V151    ] (  0,  0   )     int  ->  zero-ref    "field V27._rowId (fldOffset=0x0)" P-INDEP
-;* V152 tmp134      [V152    ] (  0,  0   )     int  ->  zero-ref    "field V28._rowId (fldOffset=0x0)" P-INDEP
-;* V153 tmp135      [V153    ] (  0,  0   )     int  ->  zero-ref    "field V29._rowId (fldOffset=0x0)" P-INDEP
-;* V154 tmp136      [V154    ] (  0,  0   )     int  ->  zero-ref    "field V31._vToken (fldOffset=0x0)" P-INDEP
-;* V155 tmp137      [V155    ] (  0,  0   )     int  ->  zero-ref    "field V34._vToken (fldOffset=0x0)" P-INDEP
-;  V156 tmp138      [V156,T76] (  2,  4   )     int  ->  rdi         "field V36._vToken (fldOffset=0x0)" P-INDEP
-;  V157 tmp139      [V157,T77] (  2,  4   )     int  ->  rax         "field V37._rowId (fldOffset=0x0)" P-INDEP
-;  V158 tmp140      [V158,T83] (  4,  2.50)     int  ->  [rbp-0x90]  "field V45._value (fldOffset=0x0)" P-INDEP
-;  V159 tmp141      [V159,T107] (  2,  1   )     int  ->  rax         "field V51._value (fldOffset=0x0)" P-INDEP
-;* V160 tmp142      [V160    ] (  0,  0   )     int  ->  zero-ref    "field V54._value (fldOffset=0x0)" P-INDEP
-;* V161 tmp143      [V161,T111] (  0,  0   )     int  ->  zero-ref    "field V56._rowId (fldOffset=0x0)" P-INDEP
-;* V162 tmp144      [V162,T112] (  0,  0   )     int  ->  zero-ref    "field V57._rowId (fldOffset=0x0)" P-INDEP
-;* V163 tmp145      [V163    ] (  0,  0   )     int  ->  zero-ref    "field V60._vToken (fldOffset=0x0)" P-INDEP
-;* V164 tmp146      [V164,T113] (  0,  0   )     int  ->  zero-ref    "field V66._rowId (fldOffset=0x0)" P-INDEP
-;* V165 tmp147      [V165,T114] (  0,  0   )     int  ->  zero-ref    "field V67._rowId (fldOffset=0x0)" P-INDEP
-;* V166 tmp148      [V166    ] (  0,  0   )     int  ->  zero-ref    "field V73._rowId (fldOffset=0x0)" P-INDEP
-;  V167 tmp149      [V167,T100] (  2,  2   )     int  ->  rdx         "field V74._vToken (fldOffset=0x0)" P-INDEP
-;  V168 tmp150      [V168,T88] (  3,  3   )     ref  ->  rax         single-def "field V77._list (fldOffset=0x0)" P-INDEP
-;* V169 tmp151      [V169    ] (  0,  0   )     ref  ->  zero-ref    single-def "field V77._current (fldOffset=0x8)" P-INDEP
-;* V170 tmp152      [V170,T115] (  0,  0   )     int  ->  zero-ref    "field V77._index (fldOffset=0x10)" P-INDEP
-;  V171 tmp153      [V171,T101] (  2,  2   )     int  ->  rcx         "field V77._version (fldOffset=0x14)" P-INDEP
-;* V172 tmp154      [V172    ] (  0,  0   )     int  ->  zero-ref    "field V82._value (fldOffset=0x0)" P-INDEP
-;  V173 tmp155      [V173,T65] (  3,  6   )     int  ->  [rbp-0x94]  "field V85._value (fldOffset=0x0)" P-INDEP
-;* V174 tmp156      [V174    ] (  0,  0   )     int  ->  zero-ref    "field V87._vToken (fldOffset=0x0)" P-INDEP
-;  V175 tmp157      [V175,T78] (  2,  4   )     int  ->  rcx         "field V89._value (fldOffset=0x0)" P-INDEP
-;* V176 tmp158      [V176    ] (  0,  0   )     int  ->  zero-ref    "field V91._rowId (fldOffset=0x0)" P-INDEP
-;* V177 tmp159      [V177    ] (  0,  0   )     int  ->  zero-ref    "field V92._rowId (fldOffset=0x0)" P-INDEP
-;  V178 tmp160      [V178,T79] (  2,  4   )     int  ->   r9         "field V95._rowId (fldOffset=0x0)" P-INDEP
-;  V179 tmp161      [V179,T80] (  2,  4   )     int  ->  rdi         "field V98._rowId (fldOffset=0x0)" P-INDEP
-;  V180 tmp162      [V180,T10] (  2, 32   )     int  ->  rdi         "field V103._vToken (fldOffset=0x0)" P-INDEP
-;  V181 tmp163      [V181,T35] (  4,  8   )  ushort  ->  [rbp-0x78]  do-not-enreg[] "field V107.PackingSize (fldOffset=0x0)" P-DEP
-;  V182 tmp164      [V182,T36] (  4,  8   )     int  ->  [rbp-0x74]  do-not-enreg[] "field V107.ClassSize (fldOffset=0x4)" P-DEP
-;  V183 tmp165      [V183,T37] (  4,  8   )     int  ->  [rbp-0x70]  do-not-enreg[] "field V107.Parent (fldOffset=0x8)" P-DEP
-;* V184 tmp166      [V184    ] (  0,  0   )     int  ->  zero-ref    "field V109._rowId (fldOffset=0x0)" P-INDEP
-;* V185 tmp167      [V185    ] (  0,  0   )  ushort  ->  zero-ref    "field V114.PackingSize (fldOffset=0x0)" P-INDEP
-;* V186 tmp168      [V186    ] (  0,  0   )     int  ->  zero-ref    "field V114.ClassSize (fldOffset=0x4)" P-INDEP
-;* V187 tmp169      [V187    ] (  0,  0   )     int  ->  zero-ref    "field V114.Parent (fldOffset=0x8)" P-INDEP
-;* V188 tmp170      [V188,T104] (  0,  0   )     int  ->  zero-ref    "field V115.NestedClass (fldOffset=0x0)" P-INDEP
-;  V189 tmp171      [V189,T66] (  3,  6   )     int  ->  rax         "field V115.EnclosingClass (fldOffset=0x4)" P-INDEP
-;* V190 tmp172      [V190    ] (  0,  0   )     int  ->  zero-ref    "field V117._rowId (fldOffset=0x0)" P-INDEP
-;* V191 tmp173      [V191    ] (  0,  0   )     int  ->  zero-ref    "field V118._rowId (fldOffset=0x0)" P-INDEP
-;* V192 tmp174      [V192    ] (  0,  0   )     int  ->  zero-ref    "field V121.NestedClass (fldOffset=0x0)" P-INDEP
-;* V193 tmp175      [V193    ] (  0,  0   )     int  ->  zero-ref    "field V121.EnclosingClass (fldOffset=0x4)" P-INDEP
-;  V194 tmp176      [V194,T81] (  2,  4   )     int  ->  rdx         "field V122._vToken (fldOffset=0x0)" P-INDEP
-;  V195 tmp177      [V195,T89] (  3,  3   )     ref  ->  r12         single-def "field V127._list (fldOffset=0x0)" P-INDEP
-;* V196 tmp178      [V196    ] (  0,  0   )     ref  ->  zero-ref    single-def "field V127._current (fldOffset=0x8)" P-INDEP
-;* V197 tmp179      [V197,T116] (  0,  0   )     int  ->  zero-ref    "field V127._index (fldOffset=0x10)" P-INDEP
-;  V198 tmp180      [V198,T102] (  2,  2   )     int  ->  r14         "field V127._version (fldOffset=0x14)" P-INDEP
-;  V199 tmp181      [V199,T90] (  2,  2   )     ref  ->  rdi         single-def "Field obj"
-;  V200 tmp182      [V200,T17] (  3, 24   )     ref  ->  rdx         "arr expr"
-;  V201 tmp183      [V201,T26] (  3, 12   )  struct ( 8) [rbp-0xA0]  do-not-enreg[SF] "by-value struct argument" <System.Reflection.Metadata.Ecma335.MetadataBuilder+NestedClassRow>
-;  V202 tmp184      [V202,T25] (  3, 12   )   byref  ->  rsi         "BlockOp address local"
-;  V203 tmp185      [V203,T18] (  3, 24   )     ref  ->  rsi         "arr expr"
-;* V204 cse0        [V204,T82] (  0,  0   )    long  ->  zero-ref    "CSE #18: conservative"
-;  V205 cse1        [V205,T27] (  2,  8   )     int  ->  rdx         "CSE #17: moderate"
-;  V206 cse2        [V206,T28] (  2,  8   )     int  ->  rsi         "CSE #21: moderate"
-;  V207 cse3        [V207,T59] (  3,  6   )     ref  ->  rsi         "CSE #06: conservative"
-;  V208 cse4        [V208,T60] (  3,  6   )     ref  ->  rdi         "CSE #07: conservative"
-;  V209 cse5        [V209,T61] (  3,  6   )     ref  ->  rsi         "CSE #08: conservative"
-;  V210 cse6        [V210,T62] (  3,  6   )     ref  ->  rcx         "CSE #09: conservative"
-;  V211 cse7        [V211,T63] (  3,  6   )     ref  ->  rsi         "CSE #13: conservative"
-;  V212 cse8        [V212,T91] (  3,  3   )     ref  ->  rdi         "CSE #01: conservative"
-;  V213 cse9        [V213,T92] (  3,  3   )     ref  ->  rax         "CSE #02: conservative"
-;  V214 cse10       [V214,T105] (  3,  1.50)     ref  ->  rdi         "CSE #03: conservative"
-;  V215 cse11       [V215,T20] (  3, 20   )     int  ->  [rbp-0xA4]  spill-single-def "CSE #11: moderate"
-;  V216 cse12       [V216,T11] (  2, 32   )     int  ->  r11         "CSE #10: aggressive"
-;  V217 rat0        [V217,T02] (  5, 66   )    long  ->  [rbp-0xB0]  "Widened IV V14"
-;  V218 rat1        [V218,T03] (  3, 64   )     ref  ->  rsi         "Spilling to split statement for tree"
-;  V219 rat2        [V219,T00] (  4,112   )     ref  ->  r10         "replacement local"
-;  V220 rat3        [V220,T09] (  3, 32   )    long  ->  rdi         "CSE for expectedClsNode"
+;  V124 tmp106      [V124,T68] (  3,  3   )     ref  ->  rsi         class-hnd exact single-def "Inlining Arg" <System.Reflection.Emit.ModuleBuilderImpl+<>c>
+;* V125 tmp107      [V125    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Reflection.Emit.GenericTypeParameterBuilderImpl]>
+;  V126 tmp108      [V126,T32] (  3,  6   )     ref  ->  r14         single-def "field V01.<Builder>k__BackingField (fldOffset=0x0)" P-INDEP
+;  V127 tmp109      [V127,T78] (  2,  2   )     int  ->  r12         "field V04._rowId (fldOffset=0x0)" P-INDEP
+;* V128 tmp110      [V128,T92] (  0,  0   )     int  ->  zero-ref    "field V06._index (fldOffset=0x0)" P-INDEP
+;* V129 tmp111      [V129    ] (  0,  0   )     int  ->  zero-ref    "field V07._value (fldOffset=0x0)" P-INDEP
+;* V130 tmp112      [V130    ] (  0,  0   )     int  ->  zero-ref    "field V08._vToken (fldOffset=0x0)" P-INDEP
+;  V131 tmp113      [V131    ] (  3,  6   )     ref  ->  [rbp-0x40]  do-not-enreg[X] addr-exposed "field V09._list (fldOffset=0x0)" P-DEP
+;  V132 tmp114      [V132    ] (  4, 10   )     ref  ->  [rbp-0x38]  do-not-enreg[X] addr-exposed "field V09._current (fldOffset=0x8)" P-DEP
+;  V133 tmp115      [V133    ] (  3,  6   )     int  ->  [rbp-0x30]  do-not-enreg[X] addr-exposed "field V09._index (fldOffset=0x10)" P-DEP
+;  V134 tmp116      [V134    ] (  3,  6   )     int  ->  [rbp-0x2C]  do-not-enreg[X] addr-exposed "field V09._version (fldOffset=0x14)" P-DEP
+;  V135 tmp117      [V135,T25] (  3, 10   )     int  ->  [rbp-0xAC]  "field V11._vToken (fldOffset=0x0)" P-INDEP
+;  V136 tmp118      [V136,T09] (  7, 34   )     int  ->  [rbp-0xB0]  spill-single-def "field V12._rowId (fldOffset=0x0)" P-INDEP
+;  V137 tmp119      [V137    ] (  3,  6   )     ref  ->  [rbp-0x58]  do-not-enreg[X] addr-exposed "field V16._list (fldOffset=0x0)" P-DEP
+;  V138 tmp120      [V138    ] (  4, 10   )     ref  ->  [rbp-0x50]  do-not-enreg[X] addr-exposed "field V16._current (fldOffset=0x8)" P-DEP
+;  V139 tmp121      [V139    ] (  3,  6   )     int  ->  [rbp-0x48]  do-not-enreg[X] addr-exposed "field V16._index (fldOffset=0x10)" P-DEP
+;  V140 tmp122      [V140    ] (  3,  6   )     int  ->  [rbp-0x44]  do-not-enreg[X] addr-exposed "field V16._version (fldOffset=0x14)" P-DEP
+;  V141 tmp123      [V141,T79] (  2,  2   )     int  ->  [rbp-0xB4]  spill-single-def "field V20._value (fldOffset=0x0)" P-INDEP
+;  V142 tmp124      [V142,T80] (  2,  2   )     int  ->  rcx         "field V21._index (fldOffset=0x0)" P-INDEP
+;* V143 tmp125      [V143,T93] (  0,  0   )     int  ->  zero-ref    "field V22._index (fldOffset=0x0)" P-INDEP
+;* V144 tmp126      [V144    ] (  0,  0   )     int  ->  zero-ref    "field V24._value (fldOffset=0x0)" P-INDEP
+;* V145 tmp127      [V145    ] (  0,  0   )     int  ->  zero-ref    "field V25._value (fldOffset=0x0)" P-INDEP
+;* V146 tmp128      [V146    ] (  0,  0   )     int  ->  zero-ref    "field V26._vToken (fldOffset=0x0)" P-INDEP
+;* V147 tmp129      [V147    ] (  0,  0   )     int  ->  zero-ref    "field V27._rowId (fldOffset=0x0)" P-INDEP
+;* V148 tmp130      [V148    ] (  0,  0   )     int  ->  zero-ref    "field V28._rowId (fldOffset=0x0)" P-INDEP
+;* V149 tmp131      [V149    ] (  0,  0   )     int  ->  zero-ref    "field V29._rowId (fldOffset=0x0)" P-INDEP
+;* V150 tmp132      [V150    ] (  0,  0   )     int  ->  zero-ref    "field V31._vToken (fldOffset=0x0)" P-INDEP
+;* V151 tmp133      [V151    ] (  0,  0   )     int  ->  zero-ref    "field V34._vToken (fldOffset=0x0)" P-INDEP
+;  V152 tmp134      [V152,T61] (  2,  4   )     int  ->  rdi         "field V36._vToken (fldOffset=0x0)" P-INDEP
+;  V153 tmp135      [V153,T62] (  2,  4   )     int  ->  rax         "field V37._rowId (fldOffset=0x0)" P-INDEP
+;  V154 tmp136      [V154,T64] (  4,  2.50)     int  ->  [rbp-0xB8]  "field V45._value (fldOffset=0x0)" P-INDEP
+;  V155 tmp137      [V155,T88] (  2,  1   )     int  ->  rax         "field V51._value (fldOffset=0x0)" P-INDEP
+;* V156 tmp138      [V156    ] (  0,  0   )     int  ->  zero-ref    "field V54._value (fldOffset=0x0)" P-INDEP
+;* V157 tmp139      [V157,T94] (  0,  0   )     int  ->  zero-ref    "field V56._rowId (fldOffset=0x0)" P-INDEP
+;* V158 tmp140      [V158,T95] (  0,  0   )     int  ->  zero-ref    "field V57._rowId (fldOffset=0x0)" P-INDEP
+;* V159 tmp141      [V159    ] (  0,  0   )     int  ->  zero-ref    "field V60._vToken (fldOffset=0x0)" P-INDEP
+;* V160 tmp142      [V160,T96] (  0,  0   )     int  ->  zero-ref    "field V66._rowId (fldOffset=0x0)" P-INDEP
+;* V161 tmp143      [V161,T97] (  0,  0   )     int  ->  zero-ref    "field V67._rowId (fldOffset=0x0)" P-INDEP
+;* V162 tmp144      [V162    ] (  0,  0   )     int  ->  zero-ref    "field V73._rowId (fldOffset=0x0)" P-INDEP
+;  V163 tmp145      [V163,T81] (  2,  2   )     int  ->  rdx         "field V74._vToken (fldOffset=0x0)" P-INDEP
+;  V164 tmp146      [V164,T69] (  3,  3   )     ref  ->  rdi         single-def "field V77._list (fldOffset=0x0)" P-INDEP
+;* V165 tmp147      [V165,T89] (  0,  0   )     ref  ->  zero-ref    single-def "field V77._current (fldOffset=0x8)" P-INDEP
+;* V166 tmp148      [V166,T98] (  0,  0   )     int  ->  zero-ref    "field V77._index (fldOffset=0x10)" P-INDEP
+;  V167 tmp149      [V167,T82] (  2,  2   )     int  ->  rsi         "field V77._version (fldOffset=0x14)" P-INDEP
+;* V168 tmp150      [V168    ] (  0,  0   )     int  ->  zero-ref    "field V82._value (fldOffset=0x0)" P-INDEP
+;  V169 tmp151      [V169,T33] (  3,  8   )     int  ->  [rbp-0xBC]  "field V85._value (fldOffset=0x0)" P-INDEP
+;* V170 tmp152      [V170    ] (  0,  0   )     int  ->  zero-ref    "field V87._vToken (fldOffset=0x0)" P-INDEP
+;  V171 tmp153      [V171,T39] (  2,  8   )     int  ->  rcx         "field V89._value (fldOffset=0x0)" P-INDEP
+;* V172 tmp154      [V172    ] (  0,  0   )     int  ->  zero-ref    "field V91._rowId (fldOffset=0x0)" P-INDEP
+;* V173 tmp155      [V173    ] (  0,  0   )     int  ->  zero-ref    "field V92._rowId (fldOffset=0x0)" P-INDEP
+;  V174 tmp156      [V174,T40] (  2,  8   )     int  ->   r9         "field V95._rowId (fldOffset=0x0)" P-INDEP
+;  V175 tmp157      [V175,T41] (  2,  8   )     int  ->  rdi         "field V98._rowId (fldOffset=0x0)" P-INDEP
+;  V176 tmp158      [V176,T11] (  2, 32   )     int  ->  rdi         "field V103._vToken (fldOffset=0x0)" P-INDEP
+;  V177 tmp159      [V177,T29] (  4,  8   )  ushort  ->  [rbp-0xA8]  do-not-enreg[] "field V107.PackingSize (fldOffset=0x0)" P-DEP
+;  V178 tmp160      [V178,T30] (  4,  8   )     int  ->  [rbp-0xA4]  do-not-enreg[] "field V107.ClassSize (fldOffset=0x4)" P-DEP
+;  V179 tmp161      [V179,T31] (  4,  8   )     int  ->  [rbp-0xA0]  do-not-enreg[] "field V107.Parent (fldOffset=0x8)" P-DEP
+;* V180 tmp162      [V180    ] (  0,  0   )     int  ->  zero-ref    "field V109._rowId (fldOffset=0x0)" P-INDEP
+;* V181 tmp163      [V181    ] (  0,  0   )  ushort  ->  zero-ref    "field V114.PackingSize (fldOffset=0x0)" P-INDEP
+;* V182 tmp164      [V182    ] (  0,  0   )     int  ->  zero-ref    "field V114.ClassSize (fldOffset=0x4)" P-INDEP
+;* V183 tmp165      [V183    ] (  0,  0   )     int  ->  zero-ref    "field V114.Parent (fldOffset=0x8)" P-INDEP
+;* V184 tmp166      [V184,T85] (  0,  0   )     int  ->  zero-ref    "field V115.NestedClass (fldOffset=0x0)" P-INDEP
+;  V185 tmp167      [V185,T49] (  3,  6   )     int  ->  rax         "field V115.EnclosingClass (fldOffset=0x4)" P-INDEP
+;* V186 tmp168      [V186    ] (  0,  0   )     int  ->  zero-ref    "field V117._rowId (fldOffset=0x0)" P-INDEP
+;* V187 tmp169      [V187    ] (  0,  0   )     int  ->  zero-ref    "field V118._rowId (fldOffset=0x0)" P-INDEP
+;* V188 tmp170      [V188    ] (  0,  0   )     int  ->  zero-ref    "field V121.NestedClass (fldOffset=0x0)" P-INDEP
+;* V189 tmp171      [V189    ] (  0,  0   )     int  ->  zero-ref    "field V121.EnclosingClass (fldOffset=0x4)" P-INDEP
+;  V190 tmp172      [V190,T42] (  2,  8   )     int  ->  rdx         "field V122._vToken (fldOffset=0x0)" P-INDEP
+;  V191 tmp173      [V191,T70] (  3,  3   )     ref  ->  r12         single-def "field V125._list (fldOffset=0x0)" P-INDEP
+;* V192 tmp174      [V192,T90] (  0,  0   )     ref  ->  zero-ref    single-def "field V125._current (fldOffset=0x8)" P-INDEP
+;* V193 tmp175      [V193,T99] (  0,  0   )     int  ->  zero-ref    "field V125._index (fldOffset=0x10)" P-INDEP
+;  V194 tmp176      [V194,T83] (  2,  2   )     int  ->  rdi         "field V125._version (fldOffset=0x14)" P-INDEP
+;  V195 tmp177      [V195,T71] (  2,  2   )     ref  ->  rdi         single-def "Field obj"
+;  V196 tmp178      [V196,T24] (  3, 12   )  struct ( 8) [rbp-0xC8]  do-not-enreg[SF] "by-value struct argument" <System.Reflection.Metadata.Ecma335.MetadataBuilder+NestedClassRow>
+;  V197 tmp179      [V197,T23] (  3, 12   )   byref  ->  rsi         "BlockOp address local"
+;* V198 cse0        [V198,T100] (  0,  0   )    long  ->  zero-ref    "CSE #17: conservative"
+;  V199 cse1        [V199,T72] (  3,  3   )     ref  ->  rdi         "CSE #01: conservative"
+;  V200 cse2        [V200,T73] (  3,  3   )     ref  ->  rax         "CSE #02: conservative"
+;  V201 cse3        [V201,T86] (  3,  1.50)     ref  ->  rdi         "CSE #03: conservative"
+;  V202 cse4        [V202,T16] (  3, 20   )     int  ->  [rbp-0xCC]  spill-single-def "CSE #11: moderate"
+;  V203 cse5        [V203,T12] (  2, 32   )     int  ->  r11         "CSE #10: aggressive"
+;  V204 rat0        [V204,T03] (  5, 66   )    long  ->  [rbp-0xD8]  "Widened IV V14"
+;  V205 rat1        [V205,T05] (  3, 64   )     ref  ->  rsi         "Spilling to split statement for tree"
+;  V206 rat2        [V206,T00] (  4,112   )     ref  ->  r10         "replacement local"
+;  V207 rat3        [V207,T10] (  3, 32   )    long  ->  rdi         "CSE for expectedClsNode"
 ;
-; Lcl frame size = 216
+; Lcl frame size = 248
 
 G_M60666_IG01:
        push     rbp
        push     r15
        push     r14
        push     r13
        push     r12
        push     rbx
-       sub      rsp, 216
-       lea      rbp, [rsp+0x100]
+       sub      rsp, 248
+       lea      rbp, [rsp+0x120]
+       xor      eax, eax
+       mov      qword ptr [rbp-0x58], rax
+       vxorps   xmm8, xmm8, xmm8
+       vmovdqu  ymmword ptr [rbp-0x50], ymm8
+       mov      qword ptr [rbp-0x30], rax
        mov      rbx, rdi
-       mov      r13, rsi
-       mov      r14, rdx
-       mov      r15, rcx
-						;; size=37 bbWeight=1 PerfScore 7.75
+       mov      r14, rsi
+       mov      r15, rdx
+       mov      r13, rcx
+						;; size=57 bbWeight=1 PerfScore 12.33
 G_M60666_IG02:
        mov      rdi, gword ptr [rbx+0x18]
        mov      r12, rdi
        mov      rsi, gword ptr [rbx+0x10]
        mov      rax, 0xD1FFAB1E      ; code for System.Reflection.Metadata.Ecma335.MetadataBuilder:GetOrAddString(System.String):System.Reflection.Metadata.StringHandle:this
        cmp      dword ptr [rdi], edi
        call     [rax]System.Reflection.Metadata.Ecma335.MetadataBuilder:GetOrAddString(System.String):System.Reflection.Metadata.StringHandle:this
-       mov      dword ptr [rbp-0x8C], eax
+       mov      dword ptr [rbp-0xB4], eax
        mov      rsi, qword ptr [rbx+0x94]
        mov      rdx, qword ptr [rbx+0x9C]
        mov      rdi, gword ptr [rbx+0x18]
        mov      rcx, 0xD1FFAB1E      ; code for System.Reflection.Metadata.Ecma335.MetadataBuilder:GetOrAddGuid(System.Guid):System.Reflection.Metadata.GuidHandle:this
        cmp      dword ptr [rdi], edi
        call     [rcx]System.Reflection.Metadata.Ecma335.MetadataBuilder:GetOrAddGuid(System.Guid):System.Reflection.Metadata.GuidHandle:this
        mov      ecx, eax
        mov      rdi, r12
        xor      r9d, r9d
-       mov      edx, dword ptr [rbp-0x8C]
+       mov      edx, dword ptr [rbp-0xB4]
        xor      r8d, r8d
        xor      esi, esi
        mov      rax, 0xD1FFAB1E      ; code for System.Reflection.Metadata.Ecma335.MetadataBuilder:AddModule(int,System.Reflection.Metadata.StringHandle,System.Reflection.Metadata.GuidHandle,System.Reflection.Metadata.GuidHandle,System.Reflection.Metadata.GuidHandle):System.Reflection.Metadata.ModuleDefinitionHandle:this
        call     [rax]System.Reflection.Metadata.Ecma335.MetadataBuilder:AddModule(int,System.Reflection.Metadata.StringHandle,System.Reflection.Metadata.GuidHandle,System.Reflection.Metadata.GuidHandle,System.Reflection.Metadata.GuidHandle):System.Reflection.Metadata.ModuleDefinitionHandle:this
        mov      r12d, eax
        mov      rax, gword ptr [rbx+0x18]
-       mov      gword ptr [rbp-0xC8], rax
-       mov      gword ptr [rbp-0xD8], rax
+       mov      gword ptr [rbp-0xF0], rax
+       mov      gword ptr [rbp-0x100], rax
        mov      rdi, gword ptr [rax+0x168]
        cmp      byte  ptr [rdi], dil
        mov      rsi, 0xD1FFAB1E      ; '<Module>'
        mov      rdx, 0xD1FFAB1E      ; code for System.Collections.Generic.Dictionary`2[System.__Canon,System.Reflection.Metadata.StringHandle]:FindValue(System.__Canon):byref:this
        call     [rdx]System.Collections.Generic.Dictionary`2[System.__Canon,System.Reflection.Metadata.StringHandle]:FindValue(System.__Canon):byref:this
        test     rax, rax
        je       SHORT G_M60666_IG04
 						;; size=152 bbWeight=1 PerfScore 43.25
 G_M60666_IG03:
        mov      eax, dword ptr [rax]
        jmp      SHORT G_M60666_IG05
 						;; size=4 bbWeight=0.50 PerfScore 2.00
 G_M60666_IG04:
-       mov      rax, gword ptr [rbp-0xD8]
+       mov      rax, gword ptr [rbp-0x100]
        mov      rdi, gword ptr [rax+0x168]
        mov      rdx, rdi
        mov      eax, dword ptr [rdx+0x38]
        sub      eax, dword ptr [rdx+0x40]
        inc      eax
        or       eax, 0xD1FFAB1E
        cmp      byte  ptr [rdi], dil
-       mov      dword ptr [rbp-0x90], eax
+       mov      dword ptr [rbp-0xB8], eax
        mov      edx, eax
        mov      rsi, 0xD1FFAB1E      ; '<Module>'
        mov      ecx, 2
        mov      r8, 0xD1FFAB1E      ; code for System.Collections.Generic.Dictionary`2[System.__Canon,System.Reflection.Metadata.StringHandle]:TryInsert(System.__Canon,System.Reflection.Metadata.StringHandle,ubyte):ubyte:this
        call     [r8]System.Collections.Generic.Dictionary`2[System.__Canon,System.Reflection.Metadata.StringHandle]:TryInsert(System.__Canon,System.Reflection.Metadata.StringHandle,ubyte):ubyte:this
-       mov      eax, dword ptr [rbp-0x90]
+       mov      eax, dword ptr [rbp-0xB8]
 						;; size=75 bbWeight=0.50 PerfScore 8.88
 G_M60666_IG05:
-       mov      rcx, gword ptr [rbp-0xC8]
+       mov      rcx, gword ptr [rbp-0xF0]
        mov      rdi, gword ptr [rcx+0xF0]
        vxorps   xmm0, xmm0, xmm0
-       vmovdqu  xmmword ptr [rbp-0x40], xmm0
-       vmovdqu  xmmword ptr [rbp-0x38], xmm0
+       vmovdqu  xmmword ptr [rbp-0x70], xmm0
+       vmovdqu  xmmword ptr [rbp-0x68], xmm0
        xor      edx, edx
-       mov      dword ptr [rbp-0x40], edx
-       mov      dword ptr [rbp-0x3C], eax
+       mov      dword ptr [rbp-0x70], edx
+       mov      dword ptr [rbp-0x6C], eax
 						;; size=36 bbWeight=1 PerfScore 7.58
 G_M60666_IG06:
-       mov      dword ptr [rbp-0x38], edx
-       lea      rax, bword ptr [rbp-0x40]
+       mov      dword ptr [rbp-0x68], edx
+       lea      rax, bword ptr [rbp-0x70]
 						;; size=7 bbWeight=1 PerfScore 1.50
 G_M60666_IG07:
        mov      dword ptr [rax+0x0C], edx
-       mov      dword ptr [rbp-0x30], 1
-       mov      dword ptr [rbp-0x2C], 1
-       vmovdqu  xmm0, xmmword ptr [rbp-0x40]
-       vmovdqu  xmmword ptr [rbp-0x58], xmm0
-       mov      rax, qword ptr [rbp-0x30]
-       mov      qword ptr [rbp-0x48], rax
+       mov      dword ptr [rbp-0x60], 1
+       mov      dword ptr [rbp-0x5C], 1
+       vmovdqu  xmm0, xmmword ptr [rbp-0x70]
+       vmovdqu  xmmword ptr [rbp-0x88], xmm0
+       mov      rax, qword ptr [rbp-0x60]
+       mov      qword ptr [rbp-0x78], rax
        inc      dword ptr [rdi+0x14]
        mov      rax, gword ptr [rdi+0x08]
        mov      edx, dword ptr [rdi+0x10]
        cmp      dword ptr [rax+0x08], edx
        jbe      SHORT G_M60666_IG09
-						;; size=50 bbWeight=1 PerfScore 20.00
+						;; size=53 bbWeight=1 PerfScore 20.00
 G_M60666_IG08:
        lea      esi, [rdx+0x01]
        mov      dword ptr [rdi+0x10], esi
        mov      edi, edx
        lea      rdi, [rdi+2*rdi]
-       vmovdqu  xmm0, xmmword ptr [rbp-0x58]
+       vmovdqu  xmm0, xmmword ptr [rbp-0x88]
        vmovdqu  xmmword ptr [rax+8*rdi+0x10], xmm0
-       mov      rdx, qword ptr [rbp-0x48]
+       mov      rdx, qword ptr [rbp-0x78]
        mov      qword ptr [rax+8*rdi+0x20], rdx
        jmp      SHORT G_M60666_IG10
-						;; size=34 bbWeight=0.50 PerfScore 5.62
+						;; size=37 bbWeight=0.50 PerfScore 5.62
 G_M60666_IG09:
-       vmovdqu  xmm0, xmmword ptr [rbp-0x58]
+       vmovdqu  xmm0, xmmword ptr [rbp-0x88]
        vmovdqu  xmmword ptr [rsp], xmm0
-       mov      rax, qword ptr [rbp-0x48]
+       mov      rax, qword ptr [rbp-0x78]
        mov      qword ptr [rsp+0x10], rax
        mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1[System.Reflection.Metadata.Ecma335.MetadataBuilder+TypeDefRow]:AddWithResize(System.Reflection.Metadata.Ecma335.MetadataBuilder+TypeDefRow):this
        call     [rax]System.Collections.Generic.List`1[System.Reflection.Metadata.Ecma335.MetadataBuilder+TypeDefRow]:AddWithResize(System.Reflection.Metadata.Ecma335.MetadataBuilder+TypeDefRow):this
-						;; size=31 bbWeight=0.50 PerfScore 4.62
+						;; size=34 bbWeight=0.50 PerfScore 4.62
 G_M60666_IG10:
-       mov      rcx, gword ptr [rbp-0xC8]
+       mov      rcx, gword ptr [rbp-0xF0]
        mov      rdi, gword ptr [rcx+0xF0]
        cmp      byte  ptr [rdi], dil
        mov      rsi, gword ptr [rbx+0x58]
        mov      edx, r12d
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.Reflection.Emit.ModuleBuilderImpl:WriteCustomAttributes(System.Collections.Generic.List`1[System.Reflection.Emit.CustomAttributeWrapper],System.Reflection.Metadata.EntityHandle):this
        call     [rax]System.Reflection.Emit.ModuleBuilderImpl:WriteCustomAttributes(System.Collections.Generic.List`1[System.Reflection.Emit.CustomAttributeWrapper],System.Reflection.Metadata.EntityHandle):this
        mov      rdi, 0xD1FFAB1E      ; System.Collections.Generic.List`1[System.Reflection.Emit.GenericTypeParameterBuilderImpl]
        call     CORINFO_HELP_NEWSFAST
        mov      r12, rax
        mov      rdi, 0xD1FFAB1E
        mov      esi, 59
        call     CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
        mov      rdi, 0xD1FFAB1E      ; data for System.Collections.Generic.List`1[System.Reflection.Emit.GenericTypeParameterBuilderImpl]:s_emptyArray
        mov      rsi, gword ptr [rdi]
        lea      rdi, bword ptr [r12+0x08]
        call     CORINFO_HELP_ASSIGN_REF
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.Reflection.Emit.ModuleBuilderImpl:PopulateTokensForTypesAndItsMembers():this
        call     [rax]System.Reflection.Emit.ModuleBuilderImpl:PopulateTokensForTypesAndItsMembers():this
        mov      rsi, gword ptr [rbx+0x28]
        mov      rdi, rbx
-       mov      rdx, r14
+       mov      rdx, r15
        mov      rax, 0xD1FFAB1E      ; code for System.Reflection.Emit.ModuleBuilderImpl:WriteFields(System.Reflection.Emit.TypeBuilderImpl,System.Reflection.Metadata.BlobBuilder):this
        call     [rax]System.Reflection.Emit.ModuleBuilderImpl:WriteFields(System.Reflection.Emit.TypeBuilderImpl,System.Reflection.Metadata.BlobBuilder):this
        mov      rsi, gword ptr [rbx+0x28]
        mov      rsi, gword ptr [rsi+0x48]
        mov      rdi, rbx
        mov      rdx, r12
-       mov      rcx, r13
+       mov      rcx, r14
        mov      rax, 0xD1FFAB1E      ; code for System.Reflection.Emit.ModuleBuilderImpl:WriteMethods(System.Collections.Generic.List`1[System.Reflection.Emit.MethodBuilderImpl],System.Collections.Generic.List`1[System.Reflection.Emit.GenericTypeParameterBuilderImpl],System.Reflection.Metadata.Ecma335.MethodBodyStreamEncoder):this
        call     [rax]System.Reflection.Emit.ModuleBuilderImpl:WriteMethods(System.Collections.Generic.List`1[System.Reflection.Emit.MethodBuilderImpl],System.Collections.Generic.List`1[System.Reflection.Emit.GenericTypeParameterBuilderImpl],System.Reflection.Metadata.Ecma335.MethodBodyStreamEncoder):this
-       mov      rax, gword ptr [rbx+0x48]
-       mov      ecx, dword ptr [rax+0x14]
-       mov      gword ptr [rbp-0xE8], rax
-       xor      edi, edi
-       mov      dword ptr [rbp-0x80], ecx
-       jmp      G_M60666_IG30
-						;; size=190 bbWeight=1 PerfScore 44.00
+       mov      rdi, gword ptr [rbx+0x48]
+       mov      esi, dword ptr [rdi+0x14]
+       mov      gword ptr [rbp-0x40], rdi
+       xor      rdi, rdi
+       mov      gword ptr [rbp-0x38], rdi
+						;; size=183 bbWeight=1 PerfScore 42.00
 G_M60666_IG11:
-       mov      gword ptr [rbp-0xB8], rdx
-       mov      rdi, rdx
-       mov      rsi, 0xD1FFAB1E      ; code for System.Reflection.Emit.TypeBuilderImpl:ThrowIfNotCreated():this
+       mov      dword ptr [rbp-0x30], edi
+       mov      dword ptr [rbp-0x2C], esi
+       lea      rdi, [rbp-0x40]
+       mov      rsi, 0xD1FFAB1E      ; System.Collections.Generic.List`1+Enumerator[System.Reflection.Emit.TypeBuilderImpl]
+       mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       call     [rax]System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       test     eax, eax
+       je       G_M60666_IG35
+						;; size=40 bbWeight=1 PerfScore 7.25
+G_M60666_IG12:
+       mov      rax, gword ptr [rbp-0x38]
+       mov      gword ptr [rbp-0xE0], rax
+       mov      rdi, rax
+       mov      rcx, 0xD1FFAB1E      ; code for System.Reflection.Emit.TypeBuilderImpl:ThrowIfNotCreated():this
        cmp      dword ptr [rdi], edi
-       call     [rsi]System.Reflection.Emit.TypeBuilderImpl:ThrowIfNotCreated():this
+       call     [rcx]System.Reflection.Emit.TypeBuilderImpl:ThrowIfNotCreated():this
        xor      eax, eax
-       mov      rcx, gword ptr [rbp-0xB8]
+       mov      rcx, gword ptr [rbp-0xE0]
+       cmp      gword ptr [rcx+0x28], 0
+       je       SHORT G_M60666_IG14
+						;; size=44 bbWeight=4 PerfScore 55.00
+G_M60666_IG13:
        mov      rsi, gword ptr [rcx+0x28]
-       test     rsi, rsi
-       je       SHORT G_M60666_IG12
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.Reflection.Emit.ModuleBuilderImpl:GetTypeHandle(System.Type):System.Reflection.Metadata.EntityHandle:this
        call     [rax]System.Reflection.Emit.ModuleBuilderImpl:GetTypeHandle(System.Type):System.Reflection.Metadata.EntityHandle:this
-       mov      dword ptr [rbp-0x84], eax
-       mov      eax, dword ptr [rbp-0x84]
-						;; size=69 bbWeight=2 PerfScore 35.00
-G_M60666_IG12:
-       mov      rcx, gword ptr [rbp-0xB8]
+       mov      dword ptr [rbp-0xAC], eax
+       mov      eax, dword ptr [rbp-0xAC]
+       mov      rcx, gword ptr [rbp-0xE0]
+						;; size=38 bbWeight=2 PerfScore 17.00
+G_M60666_IG14:
        mov      edx, dword ptr [rcx+0x98]
-       mov      dword ptr [rbp-0x64], edx
+       mov      dword ptr [rbp-0x94], edx
        mov      r8d, dword ptr [rcx+0x94]
-       mov      dword ptr [rbp-0x60], r8d
-       mov      rdi, gword ptr [rbx+0x18]
-       mov      gword ptr [rbp-0xE0], rdi
+       mov      dword ptr [rbp-0x90], r8d
+       mov      r8, gword ptr [rbx+0x18]
+       mov      gword ptr [rbp-0x108], r8
        mov      r10d, dword ptr [rcx+0x88]
-       mov      dword ptr [rbp-0x5C], r10d
+       mov      dword ptr [rbp-0x8C], r10d
+       cmp      gword ptr [rcx+0x18], 0
+       je       SHORT G_M60666_IG16
+						;; size=58 bbWeight=4 PerfScore 64.00
+G_M60666_IG15:
+       mov      dword ptr [rbp-0xAC], eax
+       mov      rdi, gword ptr [rbx+0x18]
        mov      rsi, gword ptr [rcx+0x18]
-       test     rsi, rsi
-       je       SHORT G_M60666_IG13
-       mov      dword ptr [rbp-0x84], eax
        mov      r11, 0xD1FFAB1E      ; code for System.Reflection.Metadata.Ecma335.MetadataBuilder:GetOrAddString(System.String):System.Reflection.Metadata.StringHandle:this
        cmp      dword ptr [rdi], edi
        call     [r11]System.Reflection.Metadata.Ecma335.MetadataBuilder:GetOrAddString(System.String):System.Reflection.Metadata.StringHandle:this
-       mov      dword ptr [rbp-0x94], eax
-       jmp      SHORT G_M60666_IG14
-						;; size=87 bbWeight=2 PerfScore 53.00
-G_M60666_IG13:
+       mov      dword ptr [rbp-0xBC], eax
+       jmp      SHORT G_M60666_IG17
+						;; size=37 bbWeight=2 PerfScore 28.50
+G_M60666_IG16:
        xor      edi, edi
-       mov      dword ptr [rbp-0x94], edi
-       mov      dword ptr [rbp-0x84], eax
+       mov      dword ptr [rbp-0xBC], edi
+       mov      dword ptr [rbp-0xAC], eax
 						;; size=14 bbWeight=2 PerfScore 4.50
-G_M60666_IG14:
+G_M60666_IG17:
        mov      rdi, gword ptr [rbx+0x18]
-       mov      rcx, gword ptr [rbp-0xB8]
+       mov      rcx, gword ptr [rbp-0xE0]
        mov      rsi, gword ptr [rcx+0x10]
        mov      r11, 0xD1FFAB1E      ; code for System.Reflection.Metadata.Ecma335.MetadataBuilder:GetOrAddString(System.String):System.Reflection.Metadata.StringHandle:this
        cmp      dword ptr [rdi], edi
        call     [r11]System.Reflection.Metadata.Ecma335.MetadataBuilder:GetOrAddString(System.String):System.Reflection.Metadata.StringHandle:this
        mov      ecx, eax
-       mov      r9d, dword ptr [rbp-0x60]
+       mov      r9d, dword ptr [rbp-0x90]
        and      r9d, 0xD1FFAB1E
-       mov      edi, dword ptr [rbp-0x64]
+       mov      edi, dword ptr [rbp-0x94]
        and      edi, 0xD1FFAB1E
        mov      dword ptr [rsp], edi
-       mov      rdi, gword ptr [rbp-0xE0]
-       mov      esi, dword ptr [rbp-0x5C]
-       mov      edx, dword ptr [rbp-0x94]
-       mov      r8d, dword ptr [rbp-0x84]
+       mov      rdi, gword ptr [rbp-0x108]
+       mov      esi, dword ptr [rbp-0x8C]
+       mov      edx, dword ptr [rbp-0xBC]
+       mov      r8d, dword ptr [rbp-0xAC]
        mov      rax, 0xD1FFAB1E      ; code for System.Reflection.Metadata.Ecma335.MetadataBuilder:AddTypeDefinition(int,System.Reflection.Metadata.StringHandle,System.Reflection.Metadata.StringHandle,System.Reflection.Metadata.EntityHandle,System.Reflection.Metadata.FieldDefinitionHandle,System.Reflection.Metadata.MethodDefinitionHandle):System.Reflection.Metadata.TypeDefinitionHandle:this
        cmp      dword ptr [rdi], edi
        call     [rax]System.Reflection.Metadata.Ecma335.MetadataBuilder:AddTypeDefinition(int,System.Reflection.Metadata.StringHandle,System.Reflection.Metadata.StringHandle,System.Reflection.Metadata.EntityHandle,System.Reflection.Metadata.FieldDefinitionHandle,System.Reflection.Metadata.MethodDefinitionHandle):System.Reflection.Metadata.TypeDefinitionHandle:this
        mov      edx, eax
-       mov      dword ptr [rbp-0x88], edx
-       mov      rax, gword ptr [rbp-0xB8]
+       mov      dword ptr [rbp-0xB0], edx
+       mov      rax, gword ptr [rbp-0xE0]
+       cmp      gword ptr [rax+0x38], 0
+       je       G_M60666_IG24
+						;; size=127 bbWeight=4 PerfScore 126.00
+G_M60666_IG18:
        mov      rcx, gword ptr [rax+0x38]
-       test     rcx, rcx
-       je       G_M60666_IG20
-       mov      gword ptr [rbp-0xC0], rcx
+       mov      gword ptr [rbp-0xE8], rcx
        xor      r8d, r8d
        mov      r9d, dword ptr [rcx+0x08]
-       mov      dword ptr [rbp-0xA4], r9d
+       mov      dword ptr [rbp-0xCC], r9d
        test     r9d, r9d
-       jle      SHORT G_M60666_IG19
-						;; size=146 bbWeight=2 PerfScore 72.50
-G_M60666_IG15:
-       mov      qword ptr [rbp-0xB0], r8
+       jle      SHORT G_M60666_IG23
+						;; size=30 bbWeight=2 PerfScore 15.00
+G_M60666_IG19:
+       mov      qword ptr [rbp-0xD8], r8
        mov      rsi, gword ptr [rcx+8*r8+0x10]
        mov      r10, rsi
        test     r10, r10
-       je       SHORT G_M60666_IG17
+       je       SHORT G_M60666_IG21
 						;; size=20 bbWeight=16 PerfScore 72.00
-G_M60666_IG16:
+G_M60666_IG20:
        mov      rdi, 0xD1FFAB1E      ; System.Reflection.Emit.GenericTypeParameterBuilderImpl
        cmp      qword ptr [r10], rdi
-       jne      G_M60666_IG42
+       jne      G_M60666_IG43
 						;; size=19 bbWeight=8 PerfScore 34.00
-G_M60666_IG17:
+G_M60666_IG21:
        mov      edi, edx
        or       edi, 0xD1FFAB1E
        mov      dword ptr [r10+0x40], edi
        inc      dword ptr [r12+0x14]
        mov      rdi, gword ptr [r12+0x08]
        mov      esi, dword ptr [r12+0x10]
        mov      r11d, dword ptr [rdi+0x08]
        cmp      r11d, esi
-       jbe      SHORT G_M60666_IG21
+       jbe      SHORT G_M60666_IG25
 						;; size=36 bbWeight=16 PerfScore 188.00
-G_M60666_IG18:
+G_M60666_IG22:
        lea      r11d, [rsi+0x01]
        mov      dword ptr [r12+0x10], r11d
        mov      esi, esi
        lea      rdi, bword ptr [rdi+8*rsi+0x10]
        mov      rsi, r10
        call     CORINFO_HELP_ASSIGN_REF
-       jmp      SHORT G_M60666_IG22
+       jmp      SHORT G_M60666_IG26
 						;; size=26 bbWeight=8 PerfScore 48.00
-G_M60666_IG19:
-       jmp      SHORT G_M60666_IG23
-						;; size=2 bbWeight=1 PerfScore 2.00
-G_M60666_IG20:
-       jmp      SHORT G_M60666_IG23
+G_M60666_IG23:
+       jmp      SHORT G_M60666_IG27
 						;; size=2 bbWeight=1 PerfScore 2.00
-G_M60666_IG21:
+G_M60666_IG24:
+       jmp      SHORT G_M60666_IG27
+						;; size=2 bbWeight=2 PerfScore 4.00
+G_M60666_IG25:
        mov      rdi, r12
        mov      rsi, r10
        mov      r10, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
        call     [r10]System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
 						;; size=19 bbWeight=8 PerfScore 30.00
-G_M60666_IG22:
-       mov      rsi, qword ptr [rbp-0xB0]
+G_M60666_IG26:
+       mov      rsi, qword ptr [rbp-0xD8]
        inc      esi
-       mov      edx, dword ptr [rbp-0xA4]
+       mov      edx, dword ptr [rbp-0xCC]
        cmp      edx, esi
        mov      r8, rsi
-       mov      rcx, gword ptr [rbp-0xC0]
-       jg       SHORT G_M60666_IG24
-						;; size=29 bbWeight=16 PerfScore 76.00
-G_M60666_IG23:
-       mov      rax, gword ptr [rbp-0xB8]
+       mov      rcx, gword ptr [rbp-0xE8]
+       jg       G_M60666_IG29
+						;; size=33 bbWeight=16 PerfScore 76.00
+G_M60666_IG27:
+       mov      rax, gword ptr [rbp-0xE0]
        test     byte  ptr [rax+0x88], 16
-       je       G_M60666_IG26
+       je       G_M60666_IG31
+						;; size=20 bbWeight=4 PerfScore 20.00
+G_M60666_IG28:
        mov      rsi, gword ptr [rbx+0x18]
        movzx    rdx, word  ptr [rax+0x8C]
        mov      edi, dword ptr [rax+0x90]
        mov      rcx, gword ptr [rsi+0x08]
-       mov      r8d, dword ptr [rbp-0x88]
-       mov      dword ptr [rbp-0x70], r8d
-       mov      word  ptr [rbp-0x78], dx
-       mov      dword ptr [rbp-0x74], edi
+       mov      r8d, dword ptr [rbp-0xB0]
+       mov      dword ptr [rbp-0xA0], r8d
+       mov      word  ptr [rbp-0xA8], dx
+       mov      dword ptr [rbp-0xA4], edi
        inc      dword ptr [rcx+0x14]
        mov      rsi, gword ptr [rcx+0x08]
        mov      edx, dword ptr [rcx+0x10]
        cmp      dword ptr [rsi+0x08], edx
-       jbe      SHORT G_M60666_IG25
+       jbe      SHORT G_M60666_IG30
        lea      edi, [rdx+0x01]
        mov      dword ptr [rcx+0x10], edi
        lea      rdx, [rdx+2*rdx]
-       mov      rcx, qword ptr [rbp-0x78]
+       mov      rcx, qword ptr [rbp-0xA8]
        mov      qword ptr [rsi+4*rdx+0x10], rcx
-       mov      ecx, dword ptr [rbp-0x70]
+       mov      ecx, dword ptr [rbp-0xA0]
        mov      dword ptr [rsi+4*rdx+0x18], ecx
-       mov      rax, gword ptr [rbp-0xB8]
-       jmp      SHORT G_M60666_IG26
-						;; size=109 bbWeight=2 PerfScore 74.00
-G_M60666_IG24:
-       mov      edx, dword ptr [rbp-0x88]
-       jmp      G_M60666_IG15
+       mov      rax, gword ptr [rbp-0xE0]
+       jmp      SHORT G_M60666_IG31
+						;; size=104 bbWeight=2 PerfScore 64.00
+G_M60666_IG29:
+       mov      edx, dword ptr [rbp-0xB0]
+       jmp      G_M60666_IG19
 						;; size=11 bbWeight=8 PerfScore 24.00
-G_M60666_IG25:
-       mov      rsi, qword ptr [rbp-0x78]
-       mov      edx, dword ptr [rbp-0x70]
+G_M60666_IG30:
+       mov      rsi, qword ptr [rbp-0xA8]
+       mov      edx, dword ptr [rbp-0xA0]
        mov      rdi, rcx
        mov      rcx, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1[System.Reflection.Metadata.Ecma335.MetadataBuilder+ClassLayoutRow]:AddWithResize(System.Reflection.Metadata.Ecma335.MetadataBuilder+ClassLayoutRow):this
        call     [rcx]System.Collections.Generic.List`1[System.Reflection.Metadata.Ecma335.MetadataBuilder+ClassLayoutRow]:AddWithResize(System.Reflection.Metadata.Ecma335.MetadataBuilder+ClassLayoutRow):this
-       mov      rax, gword ptr [rbp-0xB8]
-						;; size=29 bbWeight=2 PerfScore 13.00
-G_M60666_IG26:
-       mov      rsi, gword ptr [rax+0x30]
-       test     rsi, rsi
-       je       SHORT G_M60666_IG27
+       mov      rax, gword ptr [rbp-0xE0]
+						;; size=35 bbWeight=2 PerfScore 13.00
+G_M60666_IG31:
+       cmp      gword ptr [rax+0x30], 0
+       je       G_M60666_IG34
+						;; size=11 bbWeight=4 PerfScore 16.00
+G_M60666_IG32:
        mov      rcx, gword ptr [rbx+0x18]
-       mov      gword ptr [rbp-0xD0], rcx
+       mov      gword ptr [rbp-0xF8], rcx
+       mov      rsi, gword ptr [rax+0x30]
        mov      rdi, rbx
        mov      rdx, 0xD1FFAB1E      ; code for System.Reflection.Emit.ModuleBuilderImpl:GetTypeHandle(System.Type):System.Reflection.Metadata.EntityHandle:this
        call     [rdx]System.Reflection.Emit.ModuleBuilderImpl:GetTypeHandle(System.Type):System.Reflection.Metadata.EntityHandle:this
        mov      edi, eax
        mov      rax, 0xD1FFAB1E      ; code for System.Reflection.Metadata.TypeDefinitionHandle:op_Explicit(System.Reflection.Metadata.EntityHandle):System.Reflection.Metadata.TypeDefinitionHandle
        call     [rax]System.Reflection.Metadata.TypeDefinitionHandle:op_Explicit(System.Reflection.Metadata.EntityHandle):System.Reflection.Metadata.TypeDefinitionHandle
-       mov      rsi, gword ptr [rbp-0xD0]
+       mov      rsi, gword ptr [rbp-0xF8]
        mov      rdi, gword ptr [rsi+0xD0]
        inc      dword ptr [rdi+0x14]
        mov      rsi, gword ptr [rdi+0x08]
        mov      ecx, dword ptr [rdi+0x10]
        cmp      dword ptr [rsi+0x08], ecx
-       jbe      SHORT G_M60666_IG28
+       jbe      SHORT G_M60666_IG33
        lea      edx, [rcx+0x01]
        mov      dword ptr [rdi+0x10], edx
        mov      edi, ecx
        lea      rsi, bword ptr [rsi+8*rdi+0x10]
-       mov      edx, dword ptr [rbp-0x88]
+       mov      edx, dword ptr [rbp-0xB0]
        mov      dword ptr [rsi], edx
        mov      dword ptr [rsi+0x04], eax
-       mov      rax, gword ptr [rbp-0xB8]
-       jmp      SHORT G_M60666_IG29
-						;; size=111 bbWeight=2 PerfScore 72.00
-G_M60666_IG27:
-       mov      rax, gword ptr [rbp-0xB8]
-       jmp      SHORT G_M60666_IG29
-						;; size=9 bbWeight=1 PerfScore 3.00
-G_M60666_IG28:
-       mov      edx, dword ptr [rbp-0x88]
-       mov      dword ptr [rbp-0xA0], edx
-       mov      dword ptr [rbp-0x9C], eax
-       mov      rsi, qword ptr [rbp-0xA0]
+       mov      rax, gword ptr [rbp-0xE0]
+       jmp      SHORT G_M60666_IG34
+						;; size=106 bbWeight=2 PerfScore 69.50
+G_M60666_IG33:
+       mov      edx, dword ptr [rbp-0xB0]
+       mov      dword ptr [rbp-0xC8], edx
+       mov      dword ptr [rbp-0xC4], eax
+       mov      rsi, qword ptr [rbp-0xC8]
        mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1[System.Reflection.Metadata.Ecma335.MetadataBuilder+NestedClassRow]:AddWithResize(System.Reflection.Metadata.Ecma335.MetadataBuilder+NestedClassRow):this
        call     [rax]System.Collections.Generic.List`1[System.Reflection.Metadata.Ecma335.MetadataBuilder+NestedClassRow]:AddWithResize(System.Reflection.Metadata.Ecma335.MetadataBuilder+NestedClassRow):this
-       mov      rax, gword ptr [rbp-0xB8]
+       mov      rax, gword ptr [rbp-0xE0]
 						;; size=44 bbWeight=2 PerfScore 16.50
-G_M60666_IG29:
+G_M60666_IG34:
        mov      rdi, rbx
        mov      rsi, rax
-       mov      edx, dword ptr [rbp-0x88]
+       mov      edx, dword ptr [rbp-0xB0]
        mov      rcx, 0xD1FFAB1E      ; code for System.Reflection.Emit.ModuleBuilderImpl:WriteInterfaceImplementations(System.Reflection.Emit.TypeBuilderImpl,System.Reflection.Metadata.TypeDefinitionHandle):this
        call     [rcx]System.Reflection.Emit.ModuleBuilderImpl:WriteInterfaceImplementations(System.Reflection.Emit.TypeBuilderImpl,System.Reflection.Metadata.TypeDefinitionHandle):this
-       mov      rax, gword ptr [rbp-0xB8]
+       mov      rax, gword ptr [rbp-0xE0]
        mov      rsi, gword ptr [rax+0x78]
-       mov      edx, dword ptr [rbp-0x88]
+       mov      edx, dword ptr [rbp-0xB0]
        or       edx, 0xD1FFAB1E
        mov      rdi, rbx
        mov      rcx, 0xD1FFAB1E      ; code for System.Reflection.Emit.ModuleBuilderImpl:WriteCustomAttributes(System.Collections.Generic.List`1[System.Reflection.Emit.CustomAttributeWrapper],System.Reflection.Metadata.EntityHandle):this
        call     [rcx]System.Reflection.Emit.ModuleBuilderImpl:WriteCustomAttributes(System.Collections.Generic.List`1[System.Reflection.Emit.CustomAttributeWrapper],System.Reflection.Metadata.EntityHandle):this
        mov      rdi, rbx
-       mov      rsi, gword ptr [rbp-0xB8]
+       mov      rsi, gword ptr [rbp-0xE0]
        mov      rax, 0xD1FFAB1E      ; code for System.Reflection.Emit.ModuleBuilderImpl:WriteProperties(System.Reflection.Emit.TypeBuilderImpl):this
        call     [rax]System.Reflection.Emit.ModuleBuilderImpl:WriteProperties(System.Reflection.Emit.TypeBuilderImpl):this
        mov      rdi, rbx
-       mov      rsi, gword ptr [rbp-0xB8]
-       mov      rdx, r14
+       mov      rsi, gword ptr [rbp-0xE0]
+       mov      rdx, r15
        mov      rax, 0xD1FFAB1E      ; code for System.Reflection.Emit.ModuleBuilderImpl:WriteFields(System.Reflection.Emit.TypeBuilderImpl,System.Reflection.Metadata.BlobBuilder):this
        call     [rax]System.Reflection.Emit.ModuleBuilderImpl:WriteFields(System.Reflection.Emit.TypeBuilderImpl,System.Reflection.Metadata.BlobBuilder):this
-       mov      rax, gword ptr [rbp-0xB8]
+       mov      rax, gword ptr [rbp-0xE0]
        mov      rsi, gword ptr [rax+0x48]
        mov      rdi, rbx
        mov      rdx, r12
-       mov      rcx, r13
+       mov      rcx, r14
        mov      r8, 0xD1FFAB1E      ; code for System.Reflection.Emit.ModuleBuilderImpl:WriteMethods(System.Collections.Generic.List`1[System.Reflection.Emit.MethodBuilderImpl],System.Collections.Generic.List`1[System.Reflection.Emit.GenericTypeParameterBuilderImpl],System.Reflection.Metadata.Ecma335.MethodBodyStreamEncoder):this
        call     [r8]System.Reflection.Emit.ModuleBuilderImpl:WriteMethods(System.Collections.Generic.List`1[System.Reflection.Emit.MethodBuilderImpl],System.Collections.Generic.List`1[System.Reflection.Emit.GenericTypeParameterBuilderImpl],System.Reflection.Metadata.Ecma335.MethodBodyStreamEncoder):this
        mov      rdi, rbx
-       mov      rsi, gword ptr [rbp-0xB8]
+       mov      rsi, gword ptr [rbp-0xE0]
        mov      rax, 0xD1FFAB1E      ; code for System.Reflection.Emit.ModuleBuilderImpl:WriteEvents(System.Reflection.Emit.TypeBuilderImpl):this
        call     [rax]System.Reflection.Emit.ModuleBuilderImpl:WriteEvents(System.Reflection.Emit.TypeBuilderImpl):this
-       mov      rax, gword ptr [rbp-0xE8]
-       mov      ecx, dword ptr [rbp-0x80]
-       mov      edi, dword ptr [rbp-0x7C]
-						;; size=177 bbWeight=2 PerfScore 72.50
-G_M60666_IG30:
-       cmp      ecx, dword ptr [rax+0x14]
-       jne      G_M60666_IG45
-						;; size=9 bbWeight=8 PerfScore 32.00
-G_M60666_IG31:
-       mov      edx, dword ptr [rax+0x10]
-       cmp      edi, edx
-       jae      SHORT G_M60666_IG32
-       mov      rdx, gword ptr [rax+0x08]
-       cmp      edi, dword ptr [rdx+0x08]
-       jae      G_M60666_IG41
-       mov      esi, edi
-       mov      rdx, gword ptr [rdx+8*rsi+0x10]
-       inc      edi
-       mov      dword ptr [rbp-0x7C], edi
-       jmp      G_M60666_IG11
-						;; size=37 bbWeight=4 PerfScore 59.00
-G_M60666_IG32:
+       lea      rdi, [rbp-0x40]
+       mov      rsi, 0xD1FFAB1E      ; System.Collections.Generic.List`1+Enumerator[System.Reflection.Emit.TypeBuilderImpl]
+       mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       call     [rax]System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       test     eax, eax
+       jne      G_M60666_IG12
+						;; size=198 bbWeight=4 PerfScore 154.00
+G_M60666_IG35:
        mov      rdi, 0xD1FFAB1E      ; global ptr
        test     byte  ptr [rdi], 1
-       je       G_M60666_IG43
-						;; size=19 bbWeight=4 PerfScore 17.00
-G_M60666_IG33:
+       je       G_M60666_IG44
+						;; size=19 bbWeight=1 PerfScore 4.25
+G_M60666_IG36:
        mov      rdi, 0xD1FFAB1E      ; data for System.Reflection.Emit.ModuleBuilderImpl+<>c:<>9__27_0
        mov      rsi, gword ptr [rdi]
        test     rsi, rsi
-       jne      SHORT G_M60666_IG35
-						;; size=18 bbWeight=4 PerfScore 14.00
-G_M60666_IG34:
+       jne      SHORT G_M60666_IG38
+						;; size=18 bbWeight=1 PerfScore 3.50
+G_M60666_IG37:
        mov      rdi, 0xD1FFAB1E      ; System.Comparison`1[System.Reflection.Emit.GenericTypeParameterBuilderImpl]
        call     CORINFO_HELP_NEWSFAST
-       mov      r14, rax
+       mov      r15, rax
        mov      rdi, 0xD1FFAB1E      ; data for System.Reflection.Emit.ModuleBuilderImpl+<>c:<>9
        mov      rsi, gword ptr [rdi]
        test     rsi, rsi
-       je       G_M60666_IG44
-       lea      rdi, bword ptr [r14+0x08]
+       je       G_M60666_IG45
+       lea      rdi, bword ptr [r15+0x08]
        call     CORINFO_HELP_ASSIGN_REF
        mov      rdi, 0xD1FFAB1E      ; code for System.Reflection.Emit.ModuleBuilderImpl+<>c:<AppendMetadata>b__27_0(System.Reflection.Emit.GenericTypeParameterBuilderImpl,System.Reflection.Emit.GenericTypeParameterBuilderImpl):int:this
-       mov      qword ptr [r14+0x18], rdi
+       mov      qword ptr [r15+0x18], rdi
        mov      rdi, 0xD1FFAB1E      ; data for System.Reflection.Emit.ModuleBuilderImpl+<>c:<>9__27_0
-       mov      rsi, r14
+       mov      rsi, r15
        call     CORINFO_HELP_ASSIGN_REF
-       mov      rsi, r14
+       mov      rsi, r15
 						;; size=84 bbWeight=0.50 PerfScore 4.75
-G_M60666_IG35:
+G_M60666_IG38:
        mov      rdi, r12
        mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1[System.__Canon]:Sort(System.Comparison`1[System.__Canon]):this
        call     [rax]System.Collections.Generic.List`1[System.__Canon]:Sort(System.Comparison`1[System.__Canon]):this
-       mov      r14d, dword ptr [r12+0x14]
-       xor      r13d, r13d
-       jmp      SHORT G_M60666_IG37
-						;; size=25 bbWeight=1 PerfScore 7.75
-G_M60666_IG36:
+       mov      edi, dword ptr [r12+0x14]
+       mov      gword ptr [rbp-0x58], r12
+       xor      rsi, rsi
+       mov      gword ptr [rbp-0x50], rsi
+						;; size=30 bbWeight=1 PerfScore 7.75
+G_M60666_IG39:
+       mov      dword ptr [rbp-0x48], esi
+       mov      dword ptr [rbp-0x44], edi
+       lea      rdi, [rbp-0x58]
+       mov      rsi, 0xD1FFAB1E      ; System.Collections.Generic.List`1+Enumerator[System.Reflection.Emit.GenericTypeParameterBuilderImpl]
+       mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       call     [rax]System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       test     eax, eax
+       je       SHORT G_M60666_IG41
+						;; size=36 bbWeight=1 PerfScore 7.25
+G_M60666_IG40:
+       mov      rdx, gword ptr [rbp-0x50]
        mov      esi, dword ptr [rdx+0x40]
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.Reflection.Emit.ModuleBuilderImpl:AddGenericTypeParametersAndConstraintsCustomAttributes(System.Reflection.Metadata.EntityHandle,System.Reflection.Emit.GenericTypeParameterBuilderImpl):this
        call     [rax]System.Reflection.Emit.ModuleBuilderImpl:AddGenericTypeParametersAndConstraintsCustomAttributes(System.Reflection.Metadata.EntityHandle,System.Reflection.Emit.GenericTypeParameterBuilderImpl):this
-						;; size=18 bbWeight=2 PerfScore 11.00
-G_M60666_IG37:
-       cmp      r14d, dword ptr [r12+0x14]
-       jne      SHORT G_M60666_IG45
-						;; size=7 bbWeight=8 PerfScore 32.00
-G_M60666_IG38:
-       mov      esi, dword ptr [r12+0x10]
-       cmp      r13d, esi
-       jae      SHORT G_M60666_IG39
-       mov      rsi, gword ptr [r12+0x08]
-       cmp      r13d, dword ptr [rsi+0x08]
-       jae      SHORT G_M60666_IG41
-       mov      edi, r13d
-       mov      rdx, gword ptr [rsi+8*rdi+0x10]
-       inc      r13d
-       jmp      SHORT G_M60666_IG36
-						;; size=34 bbWeight=4 PerfScore 55.00
-G_M60666_IG39:
+       lea      rdi, [rbp-0x58]
+       mov      rsi, 0xD1FFAB1E      ; System.Collections.Generic.List`1+Enumerator[System.Reflection.Emit.GenericTypeParameterBuilderImpl]
+       mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       call     [rax]System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       test     eax, eax
+       jne      SHORT G_M60666_IG40
+						;; size=52 bbWeight=4 PerfScore 47.00
+G_M60666_IG41:
        mov      rsi, gword ptr [rbx+0x70]
-       mov      rdi, r15
+       mov      rdi, r13
        call     CORINFO_HELP_CHECKED_ASSIGN_REF
        nop      
-						;; size=13 bbWeight=4 PerfScore 14.00
-G_M60666_IG40:
-       add      rsp, 216
+						;; size=13 bbWeight=1 PerfScore 3.50
+G_M60666_IG42:
+       add      rsp, 248
        pop      rbx
        pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
-						;; size=18 bbWeight=4 PerfScore 17.00
-G_M60666_IG41:
-       call     CORINFO_HELP_RNGCHKFAIL
-       int3     
-						;; size=6 bbWeight=0 PerfScore 0.00
-G_M60666_IG42:
+						;; size=18 bbWeight=1 PerfScore 4.25
+G_M60666_IG43:
        mov      rax, 0xD1FFAB1E      ; code for CORINFO_HELP_CHKCASTCLASS
        call     [rax]CORINFO_HELP_CHKCASTCLASS
        int3     
 						;; size=13 bbWeight=0 PerfScore 0.00
-G_M60666_IG43:
+G_M60666_IG44:
        mov      rdi, 0xD1FFAB1E
        mov      esi, 24
        call     CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
-       jmp      G_M60666_IG33
+       jmp      G_M60666_IG36
 						;; size=25 bbWeight=0 PerfScore 0.00
-G_M60666_IG44:
+G_M60666_IG45:
        mov      rax, 0xD1FFAB1E      ; code for System.MulticastDelegate:ThrowNullThisInDelegateToInstance()
        call     [rax]System.MulticastDelegate:ThrowNullThisInDelegateToInstance()
        int3     
 						;; size=13 bbWeight=0 PerfScore 0.00
-G_M60666_IG45:
-       mov      rax, 0xD1FFAB1E      ; code for System.ThrowHelper:ThrowInvalidOperationException_InvalidOperation_EnumFailedVersion()
-       call     [rax]System.ThrowHelper:ThrowInvalidOperationException_InvalidOperation_EnumFailedVersion()
-       int3     
-						;; size=13 bbWeight=0 PerfScore 0.00
 
-; Total bytes of code 1927, prolog size 37, PerfScore 1300.71, instruction count 429, allocated bytes for code 1927 (MethodHash=d7b51305) for method System.Reflection.Emit.ModuleBuilderImpl:AppendMetadata(System.Reflection.Metadata.Ecma335.MethodBodyStreamEncoder,System.Reflection.Metadata.BlobBuilder,byref):this (FullOpts)
+; Total bytes of code 2033, prolog size 57, PerfScore 1378.29, instruction count 430, allocated bytes for code 2033 (MethodHash=d7b51305) for method System.Reflection.Emit.ModuleBuilderImpl:AppendMetadata(System.Reflection.Metadata.Ecma335.MethodBodyStreamEncoder,System.Reflection.Metadata.BlobBuilder,byref):this (FullOpts)
105 (8.65 % of base) - ILCompiler.Reflection.ReadyToRun.Amd64.GcInfo:GetLiveSlotsAtSafepoints(ubyte[],byref):System.Collections.Generic.List`1[System.Collections.Generic.List`1[ILCompiler.Reflection.ReadyToRun.BaseGcSlot]]:this
 ; Assembly listing for method ILCompiler.Reflection.ReadyToRun.Amd64.GcInfo:GetLiveSlotsAtSafepoints(ubyte[],byref):System.Collections.Generic.List`1[System.Collections.Generic.List`1[ILCompiler.Reflection.ReadyToRun.BaseGcSlot]]:this (FullOpts)
 ; Emitting BLENDED_CODE for X64 with AVX - Unix
 ; FullOpts code
 ; optimized code
 ; rbp based frame
 ; fully interruptible
 ; No PGO data
-; 0 inlinees with PGO data; 29 single block inlinees; 8 inlinees without PGO data
+; 0 inlinees with PGO data; 29 single block inlinees; 6 inlinees without PGO data
 ; Final local variable assignments
 ;
-;  V00 this         [V00,T21] ( 13, 102   )     ref  ->  rbx         this class-hnd single-def <ILCompiler.Reflection.ReadyToRun.Amd64.GcInfo>
-;  V01 arg1         [V01,T31] ( 10,  43   )     ref  ->  r14         class-hnd single-def <ubyte[]>
-;  V02 arg2         [V02,T28] ( 17,  57.50)   byref  ->  r15         single-def
-;  V03 loc0         [V03,T42] ( 13,  23.50)     ref  ->  [rbp-0x60]  class-hnd exact spill-single-def <System.Collections.Generic.List`1[System.Collections.Generic.List`1[ILCompiler.Reflection.ReadyToRun.BaseGcSlot]]>
-;  V04 loc1         [V04,T33] (  6,  38   )     int  ->  [rbp-0x2C]  spill-single-def
-;  V05 loc2         [V05,T46] (  6,  11   )     int  ->  [rbp-0x30] 
-;  V06 loc3         [V06,T53] (  3,   6.50)     int  ->  [rbp-0x34]  spill-single-def
-;  V07 loc4         [V07,T43] (  6,  16.50)     int  ->  [rbp-0x38] 
-;  V08 loc5         [V08,T11] ( 16, 250   )     ref  ->  [rbp-0x68]  class-hnd exact spill-single-def <System.Collections.Generic.List`1[ILCompiler.Reflection.ReadyToRun.BaseGcSlot]>
-;  V09 loc6         [V09,T59] (  2,   4   )     int  ->  rax        
+;  V00 this         [V00,T17] ( 13, 102   )     ref  ->  rbx         this class-hnd single-def <ILCompiler.Reflection.ReadyToRun.Amd64.GcInfo>
+;  V01 arg1         [V01,T28] ( 10,  43   )     ref  ->  r14         class-hnd single-def <ubyte[]>
+;  V02 arg2         [V02,T25] ( 17,  57.50)   byref  ->  r15         single-def
+;  V03 loc0         [V03,T39] ( 13,  23.50)     ref  ->  [rbp-0x88]  class-hnd exact spill-single-def <System.Collections.Generic.List`1[System.Collections.Generic.List`1[ILCompiler.Reflection.ReadyToRun.BaseGcSlot]]>
+;  V04 loc1         [V04,T30] (  6,  38   )     int  ->  [rbp-0x2C]  spill-single-def
+;  V05 loc2         [V05,T42] (  6,  11   )     int  ->  [rbp-0x30] 
+;  V06 loc3         [V06,T49] (  3,   6.50)     int  ->  [rbp-0x34]  spill-single-def
+;  V07 loc4         [V07,T40] (  6,  16.50)     int  ->  [rbp-0x38] 
+;  V08 loc5         [V08,T10] ( 16, 250   )     ref  ->  [rbp-0x90]  class-hnd exact spill-single-def <System.Collections.Generic.List`1[ILCompiler.Reflection.ReadyToRun.BaseGcSlot]>
+;  V09 loc6         [V09,T55] (  2,   4   )     int  ->  rax        
 ;* V10 loc7         [V10    ] (  0,   0   )     int  ->  zero-ref   
-;  V11 loc8         [V11,T29] (  7,  56   )   ubyte  ->  [rbp-0x3C] 
-;  V12 loc9         [V12,T30] (  4,  50   )   ubyte  ->  [rbp-0x40] 
-;  V13 loc10        [V13,T27] (  6,  60   )     int  ->  [rbp-0x44] 
-;  V14 loc11        [V14,T32] (  3,  40   )     int  ->  [rbp-0x48]  spill-single-def
-;  V15 loc12        [V15,T09] (  7, 344   )     int  ->  [rbp-0x4C] 
-;  V16 loc13        [V16,T06] (  4, 448   )     int  ->  rsi        
+;  V11 loc8         [V11,T26] (  7,  56   )   ubyte  ->  [rbp-0x3C] 
+;  V12 loc9         [V12,T27] (  4,  50   )   ubyte  ->  [rbp-0x40] 
+;  V13 loc10        [V13,T24] (  6,  60   )     int  ->  [rbp-0x44] 
+;  V14 loc11        [V14,T29] (  3,  40   )     int  ->  [rbp-0x48]  spill-single-def
+;  V15 loc12        [V15,T08] (  7, 344   )     int  ->  [rbp-0x4C] 
+;  V16 loc13        [V16,T07] (  4, 448   )     int  ->  rsi        
 ;* V17 loc14        [V17    ] (  0,   0   )  struct (24) zero-ref    ld-addr-op <System.Collections.Generic.List`1+Enumerator[ILCompiler.Reflection.ReadyToRun.Amd64.GcSlotTable+GcSlot]>
 ;* V18 loc15        [V18    ] (  0,   0   )     ref  ->  zero-ref    class-hnd <ILCompiler.Reflection.ReadyToRun.Amd64.GcSlotTable+GcSlot>
-;  V19 loc16        [V19,T24] (  5,  82   )     int  ->  [rbp-0x50] 
+;  V19 loc16        [V19,T20] (  5,  82   )     int  ->  [rbp-0x50] 
 ;* V20 loc17        [V20    ] (  0,   0   )   ubyte  ->  zero-ref   
-;  V21 loc18        [V21,T22] (  4, 104   )     int  ->  rsi        
-;* V22 loc19        [V22    ] (  0,   0   )  struct (24) zero-ref    ld-addr-op <System.Collections.Generic.List`1+Enumerator[ILCompiler.Reflection.ReadyToRun.Amd64.GcSlotTable+GcSlot]>
-;* V23 loc20        [V23    ] (  0,   0   )     ref  ->  zero-ref    class-hnd <ILCompiler.Reflection.ReadyToRun.Amd64.GcSlotTable+GcSlot>
+;  V21 loc18        [V21,T18] (  4, 104   )     int  ->  [rbp-0x54] 
+;  V22 loc19        [V22    ] (  7, 168   )  struct (24) [rbp-0x70]  do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Collections.Generic.List`1+Enumerator[ILCompiler.Reflection.ReadyToRun.Amd64.GcSlotTable+GcSlot]>
+;  V23 loc20        [V23,T12] (  4, 144   )     ref  ->  rdx         class-hnd <ILCompiler.Reflection.ReadyToRun.Amd64.GcSlotTable+GcSlot>
 ;# V24 OutArgs      [V24    ] (  1,   1   )  struct ( 0) [rsp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-;  V25 tmp1         [V25,T54] (  3,   6   )     ref  ->  r13         class-hnd exact single-def "NewObj constructor temp" <System.Collections.Generic.List`1[System.Collections.Generic.List`1[ILCompiler.Reflection.ReadyToRun.BaseGcSlot]]>
-;  V26 tmp2         [V26,T39] (  3,  24   )     ref  ->  [rbp-0x70]  class-hnd exact spill-single-def "NewObj constructor temp" <System.Collections.Generic.List`1[ILCompiler.Reflection.ReadyToRun.BaseGcSlot]>
+;  V25 tmp1         [V25,T50] (  3,   6   )     ref  ->  r13         class-hnd exact single-def "NewObj constructor temp" <System.Collections.Generic.List`1[System.Collections.Generic.List`1[ILCompiler.Reflection.ReadyToRun.BaseGcSlot]]>
+;  V26 tmp2         [V26,T36] (  3,  24   )     ref  ->  [rbp-0x98]  class-hnd exact spill-single-def "NewObj constructor temp" <System.Collections.Generic.List`1[ILCompiler.Reflection.ReadyToRun.BaseGcSlot]>
 ;* V27 tmp3         [V27    ] (  0,   0   )     ref  ->  zero-ref   
 ;* V28 tmp4         [V28    ] (  0,   0   )     ref  ->  zero-ref   
-;  V29 tmp5         [V29,T58] (  3,   6   )     int  ->  rsi        
+;  V29 tmp5         [V29,T54] (  3,   6   )     int  ->  rsi        
 ;* V30 tmp6         [V30    ] (  0,   0   )     ref  ->  zero-ref   
 ;* V31 tmp7         [V31    ] (  0,   0   )     ref  ->  zero-ref   
-;  V32 tmp8         [V32,T35] (  3,  32   )     int  ->  rsi        
-;  V33 tmp9         [V33,T55] (  3,   6   )     ref  ->  rax         class-hnd single-def "Inlining Arg" <ILCompiler.Reflection.ReadyToRun.Amd64.GcSlotTable>
+;  V32 tmp8         [V32,T32] (  3,  32   )     int  ->  rsi        
+;  V33 tmp9         [V33,T51] (  3,   6   )     ref  ->  rax         class-hnd single-def "Inlining Arg" <ILCompiler.Reflection.ReadyToRun.Amd64.GcSlotTable>
 ;* V34 tmp10        [V34    ] (  0,   0   )     int  ->  zero-ref    "impAppendStmt"
 ;* V35 tmp11        [V35    ] (  0,   0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <ILCompiler.Reflection.ReadyToRun.GcInfoTypes>
-;  V36 tmp12        [V36,T49] (  2,   8   )     ref  ->  rdi         class-hnd "Inlining Arg" <ILCompiler.Reflection.ReadyToRun.GcInfoTypes>
-;  V37 tmp13        [V37,T50] (  2,   8   )     ref  ->  rsi         class-hnd "Inlining Arg" <ILCompiler.Reflection.ReadyToRun.GcInfoTypes>
-;  V38 tmp14        [V38,T36] (  2,  32   )     ref  ->  rdi         class-hnd "Inlining Arg" <ILCompiler.Reflection.ReadyToRun.GcInfoTypes>
-;  V39 tmp15        [V39,T37] (  2,  32   )     ref  ->  rsi         class-hnd "Inlining Arg" <ILCompiler.Reflection.ReadyToRun.GcInfoTypes>
+;  V36 tmp12        [V36,T45] (  2,   8   )     ref  ->  rdi         class-hnd "Inlining Arg" <ILCompiler.Reflection.ReadyToRun.GcInfoTypes>
+;  V37 tmp13        [V37,T46] (  2,   8   )     ref  ->  rsi         class-hnd "Inlining Arg" <ILCompiler.Reflection.ReadyToRun.GcInfoTypes>
+;  V38 tmp14        [V38,T33] (  2,  32   )     ref  ->  rdi         class-hnd "Inlining Arg" <ILCompiler.Reflection.ReadyToRun.GcInfoTypes>
+;  V39 tmp15        [V39,T34] (  2,  32   )     ref  ->  rsi         class-hnd "Inlining Arg" <ILCompiler.Reflection.ReadyToRun.GcInfoTypes>
 ;* V40 tmp16        [V40    ] (  0,   0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <ILCompiler.Reflection.ReadyToRun.Amd64.GcSlotTable>
-;  V41 tmp17        [V41,T10] (  2, 256   )     ref  ->  rdi         class-hnd "Inlining Arg" <System.Collections.Generic.List`1[ILCompiler.Reflection.ReadyToRun.Amd64.GcSlotTable+GcSlot]>
+;  V41 tmp17        [V41,T09] (  2, 256   )     ref  ->  rdi         class-hnd "Inlining Arg" <System.Collections.Generic.List`1[ILCompiler.Reflection.ReadyToRun.Amd64.GcSlotTable+GcSlot]>
 ;* V42 tmp18        [V42    ] (  0,   0   )  struct (24) zero-ref    ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[ILCompiler.Reflection.ReadyToRun.Amd64.GcSlotTable+GcSlot]>
-;  V43 tmp19        [V43,T23] (  3,  96   )     ref  ->  rdi         class-hnd "Inline stloc first use temp" <ILCompiler.Reflection.ReadyToRun.BaseGcSlot[]>
-;  V44 tmp20        [V44,T16] (  4, 128   )     int  ->  rsi         "Inline stloc first use temp"
+;  V43 tmp19        [V43,T19] (  3,  96   )     ref  ->  rdi         class-hnd "Inline stloc first use temp" <ILCompiler.Reflection.ReadyToRun.BaseGcSlot[]>
+;  V44 tmp20        [V44,T13] (  4, 128   )     int  ->  rsi         "Inline stloc first use temp"
 ;* V45 tmp21        [V45,T05] (  0,   0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
 ;* V46 tmp22        [V46    ] (  0,   0   )     ref  ->  zero-ref    class-hnd "Inline stloc first use temp" <System.Collections.Generic.List`1[ILCompiler.Reflection.ReadyToRun.Amd64.GcSlotTable+GcSlot]>
-;  V47 tmp23        [V47,T56] (  3,   6   )     ref  ->  rdi         class-hnd "Inline stloc first use temp" <System.Collections.Generic.List`1[ILCompiler.Reflection.ReadyToRun.BaseGcSlot][]>
-;  V48 tmp24        [V48,T47] (  4,   8   )     int  ->  rsi         "Inline stloc first use temp"
-;* V49 tmp25        [V49    ] (  0,   0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <ILCompiler.Reflection.ReadyToRun.Amd64.GcSlotTable>
-;  V50 tmp26        [V50,T38] (  2,  32   )     ref  ->  rdi         class-hnd "Inlining Arg" <System.Collections.Generic.List`1[ILCompiler.Reflection.ReadyToRun.Amd64.GcSlotTable+GcSlot]>
-;* V51 tmp27        [V51    ] (  0,   0   )  struct (24) zero-ref    ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[ILCompiler.Reflection.ReadyToRun.Amd64.GcSlotTable+GcSlot]>
-;  V52 tmp28        [V52,T40] (  3,  24   )     ref  ->  rdi         class-hnd "Inline stloc first use temp" <ILCompiler.Reflection.ReadyToRun.BaseGcSlot[]>
-;  V53 tmp29        [V53,T34] (  4,  32   )     int  ->  rsi         "Inline stloc first use temp"
-;* V54 tmp30        [V54,T17] (  0,   0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;* V55 tmp31        [V55    ] (  0,   0   )     ref  ->  zero-ref    class-hnd "Inline stloc first use temp" <System.Collections.Generic.List`1[ILCompiler.Reflection.ReadyToRun.Amd64.GcSlotTable+GcSlot]>
-;  V56 tmp32        [V56,T57] (  3,   6   )     ref  ->  rdi         class-hnd "Inline stloc first use temp" <System.Collections.Generic.List`1[ILCompiler.Reflection.ReadyToRun.BaseGcSlot][]>
-;  V57 tmp33        [V57,T48] (  4,   8   )     int  ->  rsi         "Inline stloc first use temp"
-;  V58 tmp34        [V58,T03] (  3, 832   )     ref  ->  rdi         "field V17._list (fldOffset=0x0)" P-INDEP
+;* V47 tmp23        [V47    ] (  0,   0   )     int  ->  zero-ref    "Inline stloc first use temp"
+;  V48 tmp24        [V48,T03] (  3, 768   )     ref  ->  r11         class-hnd "Inline stloc first use temp" <ILCompiler.Reflection.ReadyToRun.Amd64.GcSlotTable+GcSlot[]>
+;  V49 tmp25        [V49,T52] (  3,   6   )     ref  ->  rdi         class-hnd "Inline stloc first use temp" <System.Collections.Generic.List`1[ILCompiler.Reflection.ReadyToRun.BaseGcSlot][]>
+;  V50 tmp26        [V50,T43] (  4,   8   )     int  ->  rsi         "Inline stloc first use temp"
+;* V51 tmp27        [V51    ] (  0,   0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <ILCompiler.Reflection.ReadyToRun.Amd64.GcSlotTable>
+;  V52 tmp28        [V52,T35] (  2,  32   )     ref  ->  rdi         class-hnd "Inlining Arg" <System.Collections.Generic.List`1[ILCompiler.Reflection.ReadyToRun.Amd64.GcSlotTable+GcSlot]>
+;* V53 tmp29        [V53    ] (  0,   0   )  struct (24) zero-ref    ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[ILCompiler.Reflection.ReadyToRun.Amd64.GcSlotTable+GcSlot]>
+;  V54 tmp30        [V54,T37] (  3,  24   )     ref  ->  rdi         class-hnd "Inline stloc first use temp" <ILCompiler.Reflection.ReadyToRun.BaseGcSlot[]>
+;  V55 tmp31        [V55,T31] (  4,  32   )     int  ->  rsi         "Inline stloc first use temp"
+;  V56 tmp32        [V56,T53] (  3,   6   )     ref  ->  rdi         class-hnd "Inline stloc first use temp" <System.Collections.Generic.List`1[ILCompiler.Reflection.ReadyToRun.BaseGcSlot][]>
+;  V57 tmp33        [V57,T44] (  4,   8   )     int  ->  rsi         "Inline stloc first use temp"
+;  V58 tmp34        [V58,T02] (  3, 832   )     ref  ->  rdi         "field V17._list (fldOffset=0x0)" P-INDEP
 ;  V59 tmp35        [V59,T04] (  4, 448   )     ref  ->  r11         "field V17._current (fldOffset=0x8)" P-INDEP
 ;  V60 tmp36        [V60,T00] (  6,1600   )     int  ->  rdx         "field V17._index (fldOffset=0x10)" P-INDEP
-;* V61 tmp37        [V61,T25] (  0,   0   )     int  ->  zero-ref    "field V17._version (fldOffset=0x14)" P-INDEP
-;  V62 tmp38        [V62,T15] (  3, 136   )     ref  ->  rdi         "field V22._list (fldOffset=0x0)" P-INDEP
-;  V63 tmp39        [V63,T14] (  4, 112   )     ref  ->  rax         "field V22._current (fldOffset=0x8)" P-INDEP
-;  V64 tmp40        [V64,T07] (  6, 328   )     int  ->  rdx         "field V22._index (fldOffset=0x10)" P-INDEP
-;* V65 tmp41        [V65,T51] (  0,   0   )     int  ->  zero-ref    "field V22._version (fldOffset=0x14)" P-INDEP
-;  V66 tmp42        [V66,T12] (  3, 192   )     ref  ->  rdi         "field V42._list (fldOffset=0x0)" P-INDEP
+;* V61 tmp37        [V61,T22] (  0,   0   )     int  ->  zero-ref    "field V17._version (fldOffset=0x14)" P-INDEP
+;  V62 tmp38        [V62    ] (  3,  80   )     ref  ->  [rbp-0x70]  do-not-enreg[X] addr-exposed "field V22._list (fldOffset=0x0)" P-DEP
+;  V63 tmp39        [V63    ] (  4, 144   )     ref  ->  [rbp-0x68]  do-not-enreg[X] addr-exposed "field V22._current (fldOffset=0x8)" P-DEP
+;  V64 tmp40        [V64    ] (  3,  80   )     int  ->  [rbp-0x60]  do-not-enreg[X] addr-exposed "field V22._index (fldOffset=0x10)" P-DEP
+;  V65 tmp41        [V65    ] (  3,  80   )     int  ->  [rbp-0x5C]  do-not-enreg[X] addr-exposed "field V22._version (fldOffset=0x14)" P-DEP
+;  V66 tmp42        [V66,T11] (  3, 192   )     ref  ->  rdi         "field V42._list (fldOffset=0x0)" P-INDEP
 ;* V67 tmp43        [V67    ] (  0,   0   )     ref  ->  zero-ref    "field V42._current (fldOffset=0x8)" P-INDEP
-;* V68 tmp44        [V68,T26] (  0,   0   )     int  ->  zero-ref    "field V42._index (fldOffset=0x10)" P-INDEP
-;* V69 tmp45        [V69,T18] (  0,   0   )     int  ->  zero-ref    "field V42._version (fldOffset=0x14)" P-INDEP
-;  V70 tmp46        [V70,T41] (  3,  24   )     ref  ->  rdi         "field V51._list (fldOffset=0x0)" P-INDEP
-;* V71 tmp47        [V71    ] (  0,   0   )     ref  ->  zero-ref    "field V51._current (fldOffset=0x8)" P-INDEP
-;* V72 tmp48        [V72,T52] (  0,   0   )     int  ->  zero-ref    "field V51._index (fldOffset=0x10)" P-INDEP
-;* V73 tmp49        [V73,T44] (  0,   0   )     int  ->  zero-ref    "field V51._version (fldOffset=0x14)" P-INDEP
-;  V74 tmp50        [V74,T08] (  3, 384   )     ref  ->  rax         "arr expr"
-;  V75 tmp51        [V75,T01] (  3,1536   )     ref  ->  r11         "arr expr"
-;* V76 cse0         [V76,T19] (  0,   0   )     int  ->  zero-ref    "CSE #03: aggressive"
-;  V77 cse1         [V77,T02] (  2,1024   )     int  ->  r11         "CSE #04: aggressive"
-;* V78 cse2         [V78,T45] (  0,   0   )     int  ->  zero-ref    "CSE #07: moderate"
-;  V79 cse3         [V79,T13] (  2, 128   )     int  ->  rax         "CSE #08: moderate"
-;  V80 cse4         [V80,T20] (  5, 112   )     int  ->  [rbp-0x54]  multi-def "CSE #05: moderate"
+;* V68 tmp44        [V68,T23] (  0,   0   )     int  ->  zero-ref    "field V42._index (fldOffset=0x10)" P-INDEP
+;* V69 tmp45        [V69,T14] (  0,   0   )     int  ->  zero-ref    "field V42._version (fldOffset=0x14)" P-INDEP
+;  V70 tmp46        [V70,T38] (  3,  24   )     ref  ->  rdi         "field V53._list (fldOffset=0x0)" P-INDEP
+;* V71 tmp47        [V71,T47] (  0,   0   )     ref  ->  zero-ref    "field V53._current (fldOffset=0x8)" P-INDEP
+;* V72 tmp48        [V72,T48] (  0,   0   )     int  ->  zero-ref    "field V53._index (fldOffset=0x10)" P-INDEP
+;  V73 tmp49        [V73,T41] (  2,  16   )     int  ->  rsi         "field V53._version (fldOffset=0x14)" P-INDEP
+;* V74 cse0         [V74,T15] (  0,   0   )     int  ->  zero-ref    "CSE #03: aggressive"
+;  V75 cse1         [V75,T01] (  2,1024   )     int  ->  r11         "CSE #05: aggressive"
+;  V76 cse2         [V76,T06] (  2, 512   )     int  ->  r13         "CSE #04: aggressive"
+;  V77 cse3         [V77,T21] (  3,  80   )    long  ->  [rbp-0x78]  spill-single-def "CSE #08: moderate"
+;  V78 cse4         [V78,T16] (  5, 112   )     int  ->  [rbp-0x7C]  multi-def "CSE #06: moderate"
 ;
-; Lcl frame size = 72
+; Lcl frame size = 120
 
 G_M54607_IG01:
        push     rbp
        push     r15
        push     r14
        push     r13
        push     r12
        push     rbx
-       sub      rsp, 72
-       lea      rbp, [rsp+0x70]
+       sub      rsp, 120
+       lea      rbp, [rsp+0xA0]
+       vxorps   xmm8, xmm8, xmm8
+       vmovdqa  xmmword ptr [rbp-0x70], xmm8
+       xor      eax, eax
+       mov      qword ptr [rbp-0x60], rax
        mov      rbx, rdi
        mov      r14, rsi
        mov      r15, rdx
-						;; size=28 bbWeight=1 PerfScore 7.50
+						;; size=47 bbWeight=1 PerfScore 11.08
 G_M54607_IG02:
        mov      rdi, 0xD1FFAB1E      ; System.Collections.Generic.List`1[System.Collections.Generic.List`1[ILCompiler.Reflection.ReadyToRun.BaseGcSlot]]
        call     CORINFO_HELP_NEWSFAST
        mov      r13, rax
        mov      rdi, 0xD1FFAB1E
        mov      esi, 61
        call     CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
        mov      rdi, 0xD1FFAB1E      ; data for System.Collections.Generic.List`1[System.Collections.Generic.List`1[ILCompiler.Reflection.ReadyToRun.BaseGcSlot]]:s_emptyArray
        mov      rsi, gword ptr [rdi]
        lea      rdi, bword ptr [r13+0x08]
        call     CORINFO_HELP_ASSIGN_REF
-       mov      gword ptr [rbp-0x60], r13
+       mov      gword ptr [rbp-0x88], r13
        mov      rax, gword ptr [rbx+0x40]
        mov      r12d, dword ptr [rax+0x1C]
        sub      r12d, dword ptr [rax+0x18]
        mov      dword ptr [rbp-0x2C], r12d
        test     r12d, r12d
        jne      SHORT G_M54607_IG05
-						;; size=85 bbWeight=1 PerfScore 17.00
+						;; size=88 bbWeight=1 PerfScore 17.00
 G_M54607_IG03:
        xor      rax, rax
 						;; size=2 bbWeight=0.50 PerfScore 0.12
 G_M54607_IG04:
-       add      rsp, 72
+       add      rsp, 120
        pop      rbx
        pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
 						;; size=15 bbWeight=0.50 PerfScore 2.12
 G_M54607_IG05:
        xor      eax, eax
        mov      dword ptr [rbp-0x30], eax
        mov      rdi, r14
        mov      rdx, r15
        mov      esi, 1
        mov      rcx, 0xD1FFAB1E      ; code for ILCompiler.Reflection.ReadyToRun.NativeReader:ReadBits(ubyte[],int,byref):int
        call     [rcx]ILCompiler.Reflection.ReadyToRun.NativeReader:ReadBits(ubyte[],int,byref):int
        test     eax, eax
        je       SHORT G_M54607_IG06
        mov      rsi, gword ptr [rbx+0x28]
        mov      esi, dword ptr [rsi+0x68]
        mov      rdi, r14
        mov      rdx, r15
        mov      rax, 0xD1FFAB1E      ; code for ILCompiler.Reflection.ReadyToRun.NativeReader:DecodeVarLengthUnsigned(ubyte[],int,byref):uint
        call     [rax]ILCompiler.Reflection.ReadyToRun.NativeReader:DecodeVarLengthUnsigned(ubyte[],int,byref):uint
        inc      eax
        mov      dword ptr [rbp-0x30], eax
 						;; size=62 bbWeight=0.50 PerfScore 7.75
 G_M54607_IG06:
        mov      ecx, dword ptr [r15]
        mov      dword ptr [rbp-0x34], ecx
        xor      edx, edx
        mov      dword ptr [rbp-0x38], edx
        cmp      dword ptr [rbx+0x74], 0
        je       G_M54607_IG09
 						;; size=21 bbWeight=0.50 PerfScore 4.12
 G_M54607_IG07:
        mov      dword ptr [r15], ecx
        mov      rdi, 0xD1FFAB1E      ; System.Collections.Generic.List`1[ILCompiler.Reflection.ReadyToRun.BaseGcSlot]
        call     CORINFO_HELP_NEWSFAST
-       mov      gword ptr [rbp-0x70], rax
+       mov      gword ptr [rbp-0x98], rax
        mov      rdi, 0xD1FFAB1E
        mov      esi, 60
        call     CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
        mov      rdi, 0xD1FFAB1E      ; data for System.Collections.Generic.List`1[ILCompiler.Reflection.ReadyToRun.BaseGcSlot]:s_emptyArray
        mov      rsi, gword ptr [rdi]
-       mov      rax, gword ptr [rbp-0x70]
+       mov      rax, gword ptr [rbp-0x98]
        lea      rdi, bword ptr [rax+0x08]
        call     CORINFO_HELP_ASSIGN_REF
-       mov      rax, gword ptr [rbp-0x70]
-       mov      gword ptr [rbp-0x68], rax
+       mov      rax, gword ptr [rbp-0x98]
+       mov      gword ptr [rbp-0x90], rax
        mov      ecx, dword ptr [rbp-0x30]
        test     ecx, ecx
        je       G_M54607_IG29
-						;; size=87 bbWeight=4 PerfScore 55.00
+						;; size=99 bbWeight=4 PerfScore 55.00
 G_M54607_IG08:
        mov      r8d, dword ptr [rbp-0x38]
        mov      edi, ecx
        imul     edi, r8d
        add      dword ptr [r15], edi
        mov      rdi, r14
        mov      dword ptr [rbp-0x30], ecx
        mov      esi, ecx
        mov      rdx, r15
        mov      r9, 0xD1FFAB1E      ; code for ILCompiler.Reflection.ReadyToRun.NativeReader:ReadBits(ubyte[],int,byref):int
        call     [r9]ILCompiler.Reflection.ReadyToRun.NativeReader:ReadBits(ubyte[],int,byref):int
        mov      ecx, dword ptr [rbp-0x30]
        mov      edi, ecx
        imul     edi, dword ptr [rbx+0x74]
        mov      r8d, dword ptr [rbp-0x34]
        lea      edi, [rdi+r8+0x07]
        and      edi, -8
        add      edi, eax
        mov      dword ptr [r15], edi
        mov      rdi, r14
        mov      rdx, r15
        mov      esi, 1
        mov      rax, 0xD1FFAB1E      ; code for ILCompiler.Reflection.ReadyToRun.NativeReader:ReadBits(ubyte[],int,byref):int
        call     [rax]ILCompiler.Reflection.ReadyToRun.NativeReader:ReadBits(ubyte[],int,byref):int
        test     eax, eax
        je       G_M54607_IG30
        mov      rdi, r14
        mov      rdx, r15
        mov      esi, 1
        mov      rax, 0xD1FFAB1E      ; code for ILCompiler.Reflection.ReadyToRun.NativeReader:ReadBits(ubyte[],int,byref):int
        call     [rax]ILCompiler.Reflection.ReadyToRun.NativeReader:ReadBits(ubyte[],int,byref):int
        test     eax, eax
        sete     al
        movzx    rax, al
        mov      dword ptr [rbp-0x40], 1
        mov      dword ptr [rbp-0x3C], eax
        test     eax, eax
        jne      SHORT G_M54607_IG10
        mov      rdi, gword ptr [rbx+0x28]
        mov      esi, dword ptr [rdi+0x70]
        jmp      SHORT G_M54607_IG11
 						;; size=148 bbWeight=2 PerfScore 82.00
 G_M54607_IG09:
-       mov      r13, gword ptr [rbp-0x60]
-       jmp      G_M54607_IG41
-       align    [0 bytes for IG20]
-						;; size=9 bbWeight=0.25 PerfScore 0.75
+       mov      r13, gword ptr [rbp-0x88]
+       jmp      G_M54607_IG43
+       align    [6 bytes for IG20]
+						;; size=18 bbWeight=0.25 PerfScore 0.75
 G_M54607_IG10:
        mov      rsi, gword ptr [rbx+0x28]
        mov      esi, dword ptr [rsi+0x74]
 						;; size=7 bbWeight=2 PerfScore 8.00
 G_M54607_IG11:
        mov      rdi, r14
        mov      rdx, r15
        mov      r8, 0xD1FFAB1E      ; code for ILCompiler.Reflection.ReadyToRun.NativeReader:DecodeVarLengthUnsigned(ubyte[],int,byref):uint
        call     [r8]ILCompiler.Reflection.ReadyToRun.NativeReader:DecodeVarLengthUnsigned(ubyte[],int,byref):uint
        cmp      dword ptr [rbp-0x3C], 0
        sete     dil
        movzx    rdi, dil
        mov      ecx, edi
        mov      dword ptr [rbp-0x44], eax
        cmp      eax, r12d
        jae      SHORT G_M54607_IG14
 						;; size=41 bbWeight=2 PerfScore 19.00
 G_M54607_IG12:
        mov      dword ptr [rbp-0x3C], ecx
        test     ecx, ecx
        jne      SHORT G_M54607_IG15
 						;; size=7 bbWeight=16 PerfScore 36.00
 G_M54607_IG13:
        mov      rdi, gword ptr [rbx+0x28]
        mov      esi, dword ptr [rdi+0x70]
        jmp      SHORT G_M54607_IG16
 						;; size=9 bbWeight=8 PerfScore 48.00
 G_M54607_IG14:
        mov      r12d, dword ptr [rbp-0x2C]
        jmp      G_M54607_IG27
 						;; size=9 bbWeight=1 PerfScore 3.00
 G_M54607_IG15:
        mov      rsi, gword ptr [rbx+0x28]
        mov      esi, dword ptr [rsi+0x74]
 						;; size=7 bbWeight=8 PerfScore 32.00
 G_M54607_IG16:
        mov      rdi, r14
        mov      rdx, r15
        mov      r8, 0xD1FFAB1E      ; code for ILCompiler.Reflection.ReadyToRun.NativeReader:DecodeVarLengthUnsigned(ubyte[],int,byref):uint
        call     [r8]ILCompiler.Reflection.ReadyToRun.NativeReader:DecodeVarLengthUnsigned(ubyte[],int,byref):uint
        inc      eax
        mov      dword ptr [rbp-0x48], eax
        cmp      dword ptr [rbp-0x40], 0
        je       SHORT G_M54607_IG19
 						;; size=30 bbWeight=16 PerfScore 128.00
 G_M54607_IG17:
        mov      r8d, dword ptr [rbp-0x44]
        mov      r9d, r8d
        lea      r10d, [r9+rax]
-       mov      dword ptr [rbp-0x54], r10d
+       mov      dword ptr [rbp-0x7C], r10d
        cmp      r10d, r9d
        jbe      G_M54607_IG26
 						;; size=24 bbWeight=8 PerfScore 32.00
 G_M54607_IG18:
        xor      esi, esi
        mov      rdi, gword ptr [rbx+0x40]
        mov      rdi, gword ptr [rdi+0x08]
        mov      edx, dword ptr [rdi+0x14]
        xor      edx, edx
        jmp      SHORT G_M54607_IG21
 						;; size=17 bbWeight=64 PerfScore 544.00
 G_M54607_IG19:
        jmp      G_M54607_IG26
 						;; size=5 bbWeight=8 PerfScore 16.00
 G_M54607_IG20:
        cmp      dword ptr [r11+0x18], 4
        je       SHORT G_M54607_IG21
        mov      dword ptr [rbp-0x4C], r9d
        mov      r13d, r9d
        movsxd   r12, esi
        cmp      r13, r12
        je       SHORT G_M54607_IG23
        inc      esi
        mov      r9d, dword ptr [rbp-0x4C]
 						;; size=28 bbWeight=128 PerfScore 1024.00
 G_M54607_IG21:
        mov      r11d, dword ptr [rdi+0x10]
        cmp      edx, r11d
        jae      SHORT G_M54607_IG25
 						;; size=9 bbWeight=512 PerfScore 1664.00
 G_M54607_IG22:
        mov      r11, gword ptr [rdi+0x08]
-       cmp      edx, dword ptr [r11+0x08]
-       jae      G_M54607_IG44
+       mov      r13d, dword ptr [r11+0x08]
+       cmp      r13d, edx
+       jbe      SHORT G_M54607_IG25
        mov      r13d, edx
        mov      r11, gword ptr [r11+8*r13+0x10]
        inc      edx
        jmp      SHORT G_M54607_IG20
-						;; size=26 bbWeight=256 PerfScore 2688.00
+						;; size=25 bbWeight=256 PerfScore 2496.00
 G_M54607_IG23:
-       mov      r13, gword ptr [rbp-0x68]
+       mov      r13, gword ptr [rbp-0x90]
        inc      dword ptr [r13+0x14]
        mov      rdi, gword ptr [r13+0x08]
        mov      esi, dword ptr [r13+0x10]
        cmp      dword ptr [rdi+0x08], esi
        jbe      SHORT G_M54607_IG24
        lea      edx, [rsi+0x01]
        mov      dword ptr [r13+0x10], edx
        movsxd   rsi, esi
        mov      rdx, r11
        mov      r11, 0xD1FFAB1E      ; code for CORINFO_HELP_ARRADDR_ST
        call     [r11]CORINFO_HELP_ARRADDR_ST
        mov      r9d, dword ptr [rbp-0x4C]
        jmp      SHORT G_M54607_IG25
-						;; size=53 bbWeight=32 PerfScore 648.00
+						;; size=56 bbWeight=32 PerfScore 648.00
 G_M54607_IG24:
        mov      rdi, r13
        mov      rsi, r11
        mov      rdx, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
        call     [rdx]System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
        mov      r9d, dword ptr [rbp-0x4C]
 						;; size=22 bbWeight=32 PerfScore 152.00
 G_M54607_IG25:
        inc      r9d
-       mov      r10d, dword ptr [rbp-0x54]
+       mov      r10d, dword ptr [rbp-0x7C]
        cmp      r10d, r9d
-       mov      dword ptr [rbp-0x54], r10d
+       mov      dword ptr [rbp-0x7C], r10d
        ja       G_M54607_IG18
 						;; size=20 bbWeight=64 PerfScore 224.00
 G_M54607_IG26:
        mov      r8d, dword ptr [rbp-0x44]
        mov      r10d, r8d
        add      r10d, dword ptr [rbp-0x48]
        mov      r8d, r10d
        cmp      dword ptr [rbp-0x3C], 0
        sete     sil
        movzx    rsi, sil
        cmp      dword ptr [rbp-0x40], 0
        sete     cl
        movzx    rcx, cl
        mov      r12d, dword ptr [rbp-0x2C]
        cmp      r8d, r12d
        mov      dword ptr [rbp-0x44], r8d
        mov      dword ptr [rbp-0x40], ecx
        jb       SHORT G_M54607_IG28
 						;; size=52 bbWeight=16 PerfScore 228.00
 G_M54607_IG27:
-       mov      r13, gword ptr [rbp-0x60]
+       mov      r13, gword ptr [rbp-0x88]
        inc      dword ptr [r13+0x14]
        mov      rdi, gword ptr [r13+0x08]
        mov      esi, dword ptr [r13+0x10]
        cmp      dword ptr [rdi+0x08], esi
-       jbe      G_M54607_IG39
+       jbe      G_M54607_IG41
        lea      edx, [rsi+0x01]
        mov      dword ptr [r13+0x10], edx
        movsxd   rsi, esi
-       mov      rdx, gword ptr [rbp-0x68]
+       mov      rdx, gword ptr [rbp-0x90]
        mov      rax, 0xD1FFAB1E      ; code for CORINFO_HELP_ARRADDR_ST
        call     [rax]CORINFO_HELP_ARRADDR_ST
-       jmp      G_M54607_IG40
-       align    [5 bytes for IG33]
-						;; size=61 bbWeight=2 PerfScore 40.00
+       jmp      G_M54607_IG42
+						;; size=62 bbWeight=2 PerfScore 40.00
 G_M54607_IG28:
        mov      ecx, esi
        jmp      G_M54607_IG12
 						;; size=7 bbWeight=8 PerfScore 18.00
 G_M54607_IG29:
        mov      edi, r12d
        imul     edi, dword ptr [rbp-0x38]
        add      dword ptr [r15], edi
        mov      dword ptr [rbp-0x30], ecx
 						;; size=13 bbWeight=2 PerfScore 16.50
 G_M54607_IG30:
        xor      r9d, r9d
        mov      dword ptr [rbp-0x50], r9d
 						;; size=7 bbWeight=2 PerfScore 2.50
 G_M54607_IG31:
        mov      rdi, r14
        mov      rdx, r15
        mov      esi, 1
        mov      r10, 0xD1FFAB1E      ; code for ILCompiler.Reflection.ReadyToRun.NativeReader:ReadBits(ubyte[],int,byref):int
        call     [r10]ILCompiler.Reflection.ReadyToRun.NativeReader:ReadBits(ubyte[],int,byref):int
        test     eax, eax
-       je       G_M54607_IG37
+       je       G_M54607_IG39
 						;; size=32 bbWeight=16 PerfScore 84.00
 G_M54607_IG32:
-       xor      esi, esi
+       xor      eax, eax
+       mov      dword ptr [rbp-0x54], eax
        mov      rdi, gword ptr [rbx+0x40]
        mov      rdi, gword ptr [rdi+0x08]
-       mov      edx, dword ptr [rdi+0x14]
-       xor      edx, edx
-       jmp      SHORT G_M54607_IG34
-						;; size=17 bbWeight=8 PerfScore 68.00
+       mov      esi, dword ptr [rdi+0x14]
+       mov      gword ptr [rbp-0x70], rdi
+       xor      rdi, rdi
+       mov      gword ptr [rbp-0x68], rdi
+						;; size=26 bbWeight=8 PerfScore 76.00
 G_M54607_IG33:
-       cmp      dword ptr [rax+0x18], 4
-       je       SHORT G_M54607_IG34
-       mov      r8d, dword ptr [rbp-0x50]
-       movsxd   r9, esi
-       cmp      r8, r9
-       je       SHORT G_M54607_IG35
-       inc      esi
-						;; size=20 bbWeight=32 PerfScore 216.00
+       mov      dword ptr [rbp-0x60], edi
+       mov      dword ptr [rbp-0x5C], esi
+       lea      rdi, [rbp-0x70]
+       mov      rcx, 0xD1FFAB1E      ; System.Collections.Generic.List`1+Enumerator[ILCompiler.Reflection.ReadyToRun.Amd64.GcSlotTable+GcSlot]
+       mov      qword ptr [rbp-0x78], rcx
+       mov      rsi, rcx
+       mov      rdx, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       call     [rdx]System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       test     eax, eax
+       je       SHORT G_M54607_IG39
+						;; size=43 bbWeight=8 PerfScore 68.00
 G_M54607_IG34:
-       mov      eax, dword ptr [rdi+0x10]
-       cmp      edx, eax
-       jae      SHORT G_M54607_IG37
-       mov      rax, gword ptr [rdi+0x08]
-       cmp      edx, dword ptr [rax+0x08]
-       jae      G_M54607_IG44
-       mov      ecx, edx
-       mov      rax, gword ptr [rax+8*rcx+0x10]
-       inc      edx
-       jmp      SHORT G_M54607_IG33
-						;; size=31 bbWeight=64 PerfScore 880.00
+       mov      rdx, gword ptr [rbp-0x68]
+       cmp      dword ptr [rdx+0x18], 4
+       je       SHORT G_M54607_IG36
+						;; size=10 bbWeight=64 PerfScore 320.00
 G_M54607_IG35:
-       mov      r8, gword ptr [rbp-0x68]
-       inc      dword ptr [r8+0x14]
-       mov      rdi, gword ptr [r8+0x08]
-       mov      esi, dword ptr [r8+0x10]
+       mov      edi, dword ptr [rbp-0x50]
+       mov      esi, dword ptr [rbp-0x54]
+       movsxd   rcx, esi
+       cmp      rdi, rcx
+       je       SHORT G_M54607_IG37
+       inc      esi
+       mov      dword ptr [rbp-0x54], esi
+						;; size=19 bbWeight=32 PerfScore 152.00
+G_M54607_IG36:
+       lea      rdi, [rbp-0x70]
+       mov      rsi, qword ptr [rbp-0x78]
+       mov      rcx, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       call     [rcx]System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       test     eax, eax
+       jne      SHORT G_M54607_IG34
+       jmp      SHORT G_M54607_IG39
+						;; size=26 bbWeight=64 PerfScore 512.00
+G_M54607_IG37:
+       mov      rcx, gword ptr [rbp-0x90]
+       inc      dword ptr [rcx+0x14]
+       mov      rdi, gword ptr [rcx+0x08]
+       mov      esi, dword ptr [rcx+0x10]
        cmp      dword ptr [rdi+0x08], esi
-       jbe      SHORT G_M54607_IG36
-       lea      edx, [rsi+0x01]
-       mov      dword ptr [r8+0x10], edx
+       jbe      SHORT G_M54607_IG38
+       lea      r8d, [rsi+0x01]
+       mov      dword ptr [rcx+0x10], r8d
        movsxd   rsi, esi
-       mov      rdx, rax
-       mov      rax, 0xD1FFAB1E      ; code for CORINFO_HELP_ARRADDR_ST
-       call     [rax]CORINFO_HELP_ARRADDR_ST
-       jmp      SHORT G_M54607_IG37
-						;; size=48 bbWeight=8 PerfScore 154.00
-G_M54607_IG36:
-       mov      rdi, r8
-       mov      rsi, rax
-       mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
-       call     [rax]System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
+       mov      r8, 0xD1FFAB1E      ; code for CORINFO_HELP_ARRADDR_ST
+       call     [r8]CORINFO_HELP_ARRADDR_ST
+       jmp      SHORT G_M54607_IG39
+						;; size=48 bbWeight=8 PerfScore 152.00
+G_M54607_IG38:
+       mov      rdi, rcx
+       mov      rsi, rdx
+       mov      rdx, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
+       call     [rdx]System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
 						;; size=18 bbWeight=8 PerfScore 30.00
-G_M54607_IG37:
-       mov      ecx, dword ptr [rbp-0x50]
-       inc      ecx
-       cmp      ecx, r12d
-       mov      dword ptr [rbp-0x50], ecx
+G_M54607_IG39:
+       mov      eax, dword ptr [rbp-0x50]
+       inc      eax
+       cmp      eax, r12d
+       mov      dword ptr [rbp-0x50], eax
        jb       G_M54607_IG31
 						;; size=17 bbWeight=16 PerfScore 56.00
-G_M54607_IG38:
-       mov      rax, gword ptr [rbp-0x68]
-       mov      r13, gword ptr [rbp-0x60]
+G_M54607_IG40:
+       mov      rax, gword ptr [rbp-0x90]
+       mov      r13, gword ptr [rbp-0x88]
        inc      dword ptr [r13+0x14]
        mov      rdi, gword ptr [r13+0x08]
        mov      esi, dword ptr [r13+0x10]
        cmp      dword ptr [rdi+0x08], esi
-       jbe      SHORT G_M54607_IG39
+       jbe      SHORT G_M54607_IG41
        lea      edx, [rsi+0x01]
        mov      dword ptr [r13+0x10], edx
        movsxd   rsi, esi
        mov      rdx, rax
        mov      rax, 0xD1FFAB1E      ; code for CORINFO_HELP_ARRADDR_ST
        call     [rax]CORINFO_HELP_ARRADDR_ST
-       jmp      SHORT G_M54607_IG40
-						;; size=52 bbWeight=2 PerfScore 40.50
-G_M54607_IG39:
+       jmp      SHORT G_M54607_IG42
+						;; size=58 bbWeight=2 PerfScore 40.50
+G_M54607_IG41:
        mov      rdi, r13
-       mov      rsi, gword ptr [rbp-0x68]
+       mov      rsi, gword ptr [rbp-0x90]
        mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
        call     [rax]System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
-						;; size=19 bbWeight=2 PerfScore 9.00
-G_M54607_IG40:
+						;; size=22 bbWeight=2 PerfScore 9.00
+G_M54607_IG42:
        mov      r8d, dword ptr [rbp-0x38]
        inc      r8d
        cmp      r8d, dword ptr [rbx+0x74]
        mov      dword ptr [rbp-0x38], r8d
        mov      ecx, dword ptr [rbp-0x34]
-       jb       SHORT G_M54607_IG43
+       jb       SHORT G_M54607_IG45
 						;; size=20 bbWeight=4 PerfScore 29.00
-G_M54607_IG41:
+G_M54607_IG43:
        mov      rax, r13
 						;; size=3 bbWeight=0.50 PerfScore 0.12
-G_M54607_IG42:
-       add      rsp, 72
+G_M54607_IG44:
+       add      rsp, 120
        pop      rbx
        pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
 						;; size=15 bbWeight=0.50 PerfScore 2.12
-G_M54607_IG43:
+G_M54607_IG45:
        jmp      G_M54607_IG07
 						;; size=5 bbWeight=2 PerfScore 4.00
-G_M54607_IG44:
-       call     CORINFO_HELP_RNGCHKFAIL
-       int3     
-						;; size=6 bbWeight=0 PerfScore 0.00
 
-; Total bytes of code 1214, prolog size 28, PerfScore 9320.12, instruction count 332, allocated bytes for code 1214 (MethodHash=d7fe2ab0) for method ILCompiler.Reflection.ReadyToRun.Amd64.GcInfo:GetLiveSlotsAtSafepoints(ubyte[],byref):System.Collections.Generic.List`1[System.Collections.Generic.List`1[ILCompiler.Reflection.ReadyToRun.BaseGcSlot]]:this (FullOpts)
+; Total bytes of code 1319, prolog size 47, PerfScore 9093.71, instruction count 345, allocated bytes for code 1319 (MethodHash=d7fe2ab0) for method ILCompiler.Reflection.ReadyToRun.Amd64.GcInfo:GetLiveSlotsAtSafepoints(ubyte[],byref):System.Collections.Generic.List`1[System.Collections.Generic.List`1[ILCompiler.Reflection.ReadyToRun.BaseGcSlot]]:this (FullOpts)
101 (16.92 % of base) - System.Threading.Tasks.Dataflow.BatchBlock`1+BatchBlockTargetCore[double]:ConsumeReservedMessagesGreedyBounded():this
 ; Assembly listing for method System.Threading.Tasks.Dataflow.BatchBlock`1+BatchBlockTargetCore[double]:ConsumeReservedMessagesGreedyBounded():this (FullOpts)
 ; Emitting BLENDED_CODE for X64 with AVX - Unix
 ; FullOpts code
 ; optimized code
 ; rbp based frame
 ; fully interruptible
 ; No PGO data
-; 0 inlinees with PGO data; 17 single block inlinees; 8 inlinees without PGO data
+; 0 inlinees with PGO data; 17 single block inlinees; 6 inlinees without PGO data
 ; Final local variable assignments
 ;
-;  V00 this         [V00,T11] (  8, 11.50)     ref  ->  rbx         this class-hnd single-def <System.Threading.Tasks.Dataflow.BatchBlock`1+BatchBlockTargetCore[double]>
-;  V01 loc0         [V01,T28] (  4,  5.50)     int  ->  r15        
+;  V00 this         [V00,T07] (  8, 11.50)     ref  ->  rbx         this class-hnd single-def <System.Threading.Tasks.Dataflow.BatchBlock`1+BatchBlockTargetCore[double]>
+;  V01 loc0         [V01,T22] (  4,  5.50)     int  ->  r15        
 ;  V02 loc1         [V02,T01] ( 13, 32   )     ref  ->  r14         class-hnd single-def <System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[double],System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,double]]]>
-;* V03 loc2         [V03,T33] (  0,  0   )     int  ->  zero-ref   
+;* V03 loc2         [V03,T28] (  0,  0   )     int  ->  zero-ref   
 ;* V04 loc3         [V04    ] (  0,  0   )  struct (24) zero-ref    do-not-enreg[SF] ld-addr-op <System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[double],System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,double]]>
 ;  V05 loc4         [V05    ] (  2,  8   )   ubyte  ->  [rbp-0x30]  do-not-enreg[X] addr-exposed ld-addr-op
-;  V06 loc5         [V06,T36] (  2,  6   )  double  ->  [rbp-0x38]  spill-single-def
+;  V06 loc5         [V06,T30] (  2,  6   )  double  ->  [rbp-0x38]  spill-single-def
 ;* V07 loc6         [V07    ] (  0,  0   )  struct (24) zero-ref    do-not-enreg[S] ld-addr-op <System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[double],System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,double]]>
 ;* V08 loc7         [V08    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op <System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,double]>
 ;* V09 loc8         [V09    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op <System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,double]>
 ;* V10 loc9         [V10    ] (  0,  0   )  struct (24) zero-ref    do-not-enreg[SF] ld-addr-op <System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[double],System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,double]]>
-;  V11 loc10        [V11,T32] (  4,  1.50)     ref  ->  [rbp-0x58]  class-hnd EH-live spill-single-def <System.Threading.Tasks.TaskCompletionSource`1[System.Threading.Tasks.Dataflow.Internal.VoidResult]>
+;  V11 loc10        [V11,T27] (  4,  1.50)     ref  ->  [rbp-0xA8]  class-hnd EH-live spill-single-def <System.Threading.Tasks.TaskCompletionSource`1[System.Threading.Tasks.Dataflow.Internal.VoidResult]>
 ;  V12 loc11        [V12    ] (  5,  4   )   ubyte  ->  [rbp-0x40]  do-not-enreg[X] addr-exposed ld-addr-op
-;* V13 loc12        [V13    ] (  0,  0   )  struct (40) zero-ref    do-not-enreg[SF] ld-addr-op <System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[double],System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,double]]]>
+;  V13 loc12        [V13    ] (  8, 17   )  struct (40) [rbp-0x68]  do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[double],System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,double]]]>
 ;* V14 loc13        [V14    ] (  0,  0   )  struct (24) zero-ref    do-not-enreg[SF] ld-addr-op <System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[double],System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,double]]>
 ;# V15 OutArgs      [V15    ] (  1,  1   )  struct ( 0) [rsp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
 ;* V16 tmp1         [V16    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "impAppendStmt" <System.Threading.Tasks.Dataflow.ISourceBlock`1[double]>
 ;* V17 tmp2         [V17    ] (  0,  0   )  struct ( 8) zero-ref    "spilled call-like call argument" <System.Threading.Tasks.Dataflow.DataflowMessageHeader>
 ;* V18 tmp3         [V18    ] (  0,  0   )  struct ( 8) zero-ref    "spilled call-like call argument" <System.Threading.Tasks.Dataflow.DataflowMessageHeader>
-;  V19 tmp4         [V19,T00] ( 11, 44   )     ref  ->  r12         class-hnd "impAppendStmt" <System.Collections.Generic.Queue`1[double]>
-;  V20 tmp5         [V20,T30] (  3,  3   )     ref  ->  rsi         class-hnd single-def "dup spill" <System.Threading.Tasks.Dataflow.Internal.BoundingState>
+;  V19 tmp4         [V19,T00] ( 11, 44   )     ref  ->  r14         class-hnd "impAppendStmt" <System.Collections.Generic.Queue`1[double]>
+;  V20 tmp5         [V20,T25] (  3,  3   )     ref  ->  rdi         class-hnd single-def "dup spill" <System.Threading.Tasks.Dataflow.Internal.BoundingState>
 ;* V21 tmp6         [V21    ] (  0,  0   )  struct (24) zero-ref    do-not-enreg[S] "Inlining Arg" <System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[double],System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,double]]>
 ;* V22 tmp7         [V22    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <System.__Canon>
 ;* V23 tmp8         [V23    ] (  0,  0   )  struct (16) zero-ref    "Inlining Arg" <System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,double]>
 ;* V24 tmp9         [V24    ] (  0,  0   )  struct (24) zero-ref    do-not-enreg[S] "Inlining Arg" <System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[double],System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,double]]>
-;* V25 tmp10        [V25    ] (  0,  0   )  struct (40) zero-ref    do-not-enreg[SF] ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[double],System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,double]]]>
+;  V25 tmp10        [V25,T23] (  2,  4   )  struct (40) [rbp-0x90]  do-not-enreg[SF] must-init ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[double],System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,double]]]>
 ;* V26 tmp11        [V26    ] (  0,  0   )  double  ->  zero-ref    "Inlining Arg"
-;  V27 tmp12        [V27,T12] (  3, 12   )   byref  ->  rax         "Inlining Arg"
-;  V28 tmp13        [V28,T23] (  4,  8   )     int  ->  rcx         "Inline stloc first use temp"
-;* V29 tmp14        [V29,T24] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;* V30 tmp15        [V30    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline stloc first use temp" <System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[double],System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,double]]]>
-;* V31 tmp16        [V31,T29] (  0,  0   )    long  ->  zero-ref    "field V08.key (fldOffset=0x0)" P-INDEP
-;* V32 tmp17        [V32    ] (  0,  0   )  double  ->  zero-ref    "field V08.value (fldOffset=0x8)" P-INDEP
-;* V33 tmp18        [V33    ] (  0,  0   )    long  ->  zero-ref    "field V09.key (fldOffset=0x0)" P-INDEP
-;* V34 tmp19        [V34    ] (  0,  0   )  double  ->  zero-ref    "field V09.value (fldOffset=0x8)" P-INDEP
-;* V35 tmp20        [V35    ] (  0,  0   )    long  ->  zero-ref    "field V17._id (fldOffset=0x0)" P-INDEP
-;* V36 tmp21        [V36    ] (  0,  0   )    long  ->  zero-ref    "field V18._id (fldOffset=0x0)" P-INDEP
-;* V37 tmp22        [V37    ] (  0,  0   )    long  ->  zero-ref    "field V23.key (fldOffset=0x0)" P-INDEP
-;* V38 tmp23        [V38    ] (  0,  0   )  double  ->  zero-ref    "field V23.value (fldOffset=0x8)" P-INDEP
-;  V39 tmp24        [V39,T20] (  3, 10   )     ref  ->  [rbp-0x60]  spill-single-def "V04.[000..008)"
-;  V40 tmp25        [V40,T10] (  3, 10   )    long  ->  [rbp-0x48]  spill-single-def "V04.[008..016)"
-;* V41 tmp26        [V41    ] (  0,  0   )  double  ->  zero-ref    "V04.[016..024)"
-;* V42 tmp27        [V42    ] (  0,  0   )     ref  ->  zero-ref    "V10.[000..008)"
-;* V43 tmp28        [V43    ] (  0,  0   )    long  ->  zero-ref    "V10.[008..016)"
-;* V44 tmp29        [V44    ] (  0,  0   )  double  ->  zero-ref    "V10.[016..024)"
-;  V45 tmp30        [V45,T08] (  4, 17   )     ref  ->  r14         single-def "V13.[000..008)"
-;  V46 tmp31        [V46,T03] (  6, 21   )     int  ->  r13         "V13.[008..012)"
-;  V47 tmp32        [V47,T22] (  2,  9   )     int  ->  r15         "V13.[012..016)"
-;  V48 tmp33        [V48,T13] (  2,  8   )     ref  ->  rdi         "V13.[016..024)"
-;* V49 tmp34        [V49    ] (  0,  0   )    long  ->  zero-ref    "V13.[024..032)"
-;  V50 tmp35        [V50,T35] (  2,  6   )  double  ->  [rbp-0x50]  "V13.[032..040)"
-;* V51 tmp36        [V51    ] (  0,  0   )     ref  ->  zero-ref    "V14.[000..008)"
-;* V52 tmp37        [V52    ] (  0,  0   )    long  ->  zero-ref    "V14.[008..016)"
-;* V53 tmp38        [V53    ] (  0,  0   )  double  ->  zero-ref    "V14.[016..024)"
-;* V54 tmp39        [V54    ] (  0,  0   )     ref  ->  zero-ref    single-def "V25.[000..008)"
-;* V55 tmp40        [V55    ] (  0,  0   )     int  ->  zero-ref    "V25.[008..012)"
-;  V56 tmp41        [V56,T31] (  2,  2   )     int  ->  r15         "V25.[012..016)"
-;* V57 tmp42        [V57    ] (  0,  0   )     ref  ->  zero-ref    single-def "V25.[016..024)"
-;* V58 tmp43        [V58    ] (  0,  0   )    long  ->  zero-ref    "V25.[024..032)"
-;* V59 tmp44        [V59    ] (  0,  0   )  double  ->  zero-ref    "V25.[032..040)"
-;* V60 tmp45        [V60    ] (  0,  0   )     ref  ->  zero-ref    "V24.[000..008)"
-;* V61 tmp46        [V61    ] (  0,  0   )    long  ->  zero-ref    "V24.[008..016)"
-;* V62 tmp47        [V62    ] (  0,  0   )  double  ->  zero-ref    "V24.[016..024)"
-;  V63 tmp48        [V63,T04] (  3, 24   )   byref  ->  rcx         "Spilling address for field-by-field copy"
-;  V64 tmp49        [V64,T09] (  4, 16   )   byref  ->  r12         "Spilling address for field-by-field copy"
-;  V65 tmp50        [V65,T05] (  3, 24   )   byref  ->  rsi         "Spilling address for field-by-field copy"
-;  V66 tmp51        [V66,T06] (  3, 24   )     ref  ->  rdx         "arr expr"
-;* V67 tmp52        [V67,T25] (  0,  0   )     ref  ->  zero-ref    "arr expr"
-;  V68 tmp53        [V68,T14] (  3, 12   )     ref  ->  rdi         "arr expr"
-;  V69 tmp54        [V69,T07] (  3, 24   )     ref  ->  rsi         "arr expr"
-;  V70 tmp55        [V70,T15] (  3, 12   )     ref  ->  rax         "arr expr"
-;  V71 tmp56        [V71,T18] (  3, 12   )     int  ->  rcx         "index expr"
-;  V72 PSPSym       [V72,T34] (  1,  1   )    long  ->  [rbp-0x70]  do-not-enreg[V] "PSPSym"
-;  V73 cse0         [V73,T16] (  3, 12   )   byref  ->  rdx         "CSE #05: moderate"
-;  V74 cse1         [V74,T21] (  3, 10   )    long  ->  r12         "CSE #04: moderate"
-;  V75 cse2         [V75,T17] (  2,  8   )     ref  ->  rdx         "CSE #01: moderate"
-;  V76 cse3         [V76,T19] (  2,  8   )     int  ->  rsi         "CSE #11: moderate"
-;  V77 cse4         [V77,T27] (  3,  6   )     int  ->  rsi         "CSE #08: moderate"
-;  V78 cse5         [V78,T26] (  3,  6   )     ref  ->  rdi         "CSE #09: moderate"
-;  V79 rat0         [V79,T02] (  9, 29   )    long  ->  r13         "Widened IV V03"
+;  V27 tmp12        [V27,T08] (  3, 12   )   byref  ->  rsi         "Inlining Arg"
+;  V28 tmp13        [V28,T16] (  4,  8   )     int  ->  rax         "Inline stloc first use temp"
+;* V29 tmp14        [V29,T24] (  0,  0   )    long  ->  zero-ref    "field V08.key (fldOffset=0x0)" P-INDEP
+;* V30 tmp15        [V30    ] (  0,  0   )  double  ->  zero-ref    "field V08.value (fldOffset=0x8)" P-INDEP
+;* V31 tmp16        [V31    ] (  0,  0   )    long  ->  zero-ref    "field V09.key (fldOffset=0x0)" P-INDEP
+;* V32 tmp17        [V32    ] (  0,  0   )  double  ->  zero-ref    "field V09.value (fldOffset=0x8)" P-INDEP
+;* V33 tmp18        [V33    ] (  0,  0   )    long  ->  zero-ref    "field V17._id (fldOffset=0x0)" P-INDEP
+;* V34 tmp19        [V34    ] (  0,  0   )    long  ->  zero-ref    "field V18._id (fldOffset=0x0)" P-INDEP
+;* V35 tmp20        [V35    ] (  0,  0   )    long  ->  zero-ref    "field V23.key (fldOffset=0x0)" P-INDEP
+;* V36 tmp21        [V36    ] (  0,  0   )  double  ->  zero-ref    "field V23.value (fldOffset=0x8)" P-INDEP
+;  V37 tmp22        [V37,T14] (  3, 10   )     ref  ->  [rbp-0xB0]  spill-single-def "V04.[000..008)"
+;  V38 tmp23        [V38,T06] (  3, 10   )    long  ->  [rbp-0x98]  spill-single-def "V04.[008..016)"
+;* V39 tmp24        [V39    ] (  0,  0   )  double  ->  zero-ref    "V04.[016..024)"
+;* V40 tmp25        [V40    ] (  0,  0   )     ref  ->  zero-ref    "V10.[000..008)"
+;* V41 tmp26        [V41    ] (  0,  0   )    long  ->  zero-ref    "V10.[008..016)"
+;* V42 tmp27        [V42    ] (  0,  0   )  double  ->  zero-ref    "V10.[016..024)"
+;  V43 tmp28        [V43,T17] (  2,  8   )     ref  ->  rsi         "V14.[000..008)"
+;* V44 tmp29        [V44    ] (  0,  0   )    long  ->  zero-ref    "V14.[008..016)"
+;  V45 tmp30        [V45,T31] (  2,  6   )  double  ->  [rbp-0xA0]  spill-single-def "V14.[016..024)"
+;* V46 tmp31        [V46    ] (  0,  0   )     ref  ->  zero-ref    single-def "V25.[000..008)"
+;* V47 tmp32        [V47    ] (  0,  0   )     int  ->  zero-ref    "V25.[008..012)"
+;  V48 tmp33        [V48,T26] (  2,  2   )     int  ->  rdi         "V25.[012..016)"
+;* V49 tmp34        [V49    ] (  0,  0   )     ref  ->  zero-ref    "V24.[000..008)"
+;* V50 tmp35        [V50    ] (  0,  0   )    long  ->  zero-ref    "V24.[008..016)"
+;* V51 tmp36        [V51    ] (  0,  0   )  double  ->  zero-ref    "V24.[016..024)"
+;  V52 tmp37        [V52,T03] (  3, 24   )   byref  ->  rcx         "Spilling address for field-by-field copy"
+;  V53 tmp38        [V53,T05] (  4, 16   )   byref  ->  r12         "Spilling address for field-by-field copy"
+;  V54 tmp39        [V54,T04] (  3, 24   )     ref  ->  rdx         "arr expr"
+;* V55 tmp40        [V55,T18] (  0,  0   )     ref  ->  zero-ref    "arr expr"
+;  V56 tmp41        [V56,T09] (  3, 12   )     ref  ->  rdi         "arr expr"
+;  V57 tmp42        [V57,T10] (  3, 12   )     ref  ->  rsi         "arr expr"
+;  V58 tmp43        [V58,T13] (  3, 12   )     int  ->  rax         "index expr"
+;  V59 PSPSym       [V59,T29] (  1,  1   )    long  ->  [rbp-0xC0]  do-not-enreg[V] "PSPSym"
+;  V60 cse0         [V60,T11] (  3, 12   )   byref  ->  rdx         "CSE #05: moderate"
+;  V61 cse1         [V61,T15] (  3, 10   )    long  ->  r12         "CSE #04: moderate"
+;  V62 cse2         [V62,T12] (  2,  8   )     ref  ->  rdx         "CSE #01: moderate"
+;  V63 cse3         [V63,T20] (  3,  6   )     int  ->  rsi         "CSE #08: moderate"
+;  V64 cse4         [V64,T19] (  3,  6   )     ref  ->  rdi         "CSE #09: moderate"
+;  V65 cse5         [V65,T21] (  3,  6   )    long  ->  r15         "CSE #10: moderate"
+;  V66 rat0         [V66,T02] (  9, 29   )    long  ->  r13         "Widened IV V03"
 ;
-; Lcl frame size = 72
+; Lcl frame size = 152
 
 G_M55778_IG01:
        push     rbp
        push     r15
        push     r14
        push     r13
        push     r12
        push     rbx
-       sub      rsp, 72
-       lea      rbp, [rsp+0x70]
-       mov      qword ptr [rbp-0x70], rsp
+       sub      rsp, 152
+       lea      rbp, [rsp+0xC0]
+       vxorps   xmm8, xmm8, xmm8
+       vmovdqu  ymmword ptr [rbp-0x90], ymm8
+       vmovdqu  ymmword ptr [rbp-0x70], ymm8
+       vmovdqa  xmmword ptr [rbp-0x50], xmm8
+       mov      qword ptr [rbp-0xC0], rsp
        mov      rbx, rdi
-						;; size=26 bbWeight=1 PerfScore 8.00
+						;; size=58 bbWeight=1 PerfScore 14.33
 G_M55778_IG02:
        xor      r15d, r15d
        mov      rdx, gword ptr [rbx+0x20]
        mov      r14, gword ptr [rdx+0x18]
        xor      r13d, r13d
        cmp      dword ptr [r14+0x10], 0
        jle      G_M55778_IG06
 						;; size=25 bbWeight=1 PerfScore 8.50
 G_M55778_IG03:
        cmp      r13d, dword ptr [r14+0x10]
-       jae      G_M55778_IG23
+       jae      G_M55778_IG25
        mov      rdx, gword ptr [r14+0x08]
        cmp      r13d, dword ptr [rdx+0x08]
-       jae      G_M55778_IG22
+       jae      G_M55778_IG24
        lea      r12, [r13+2*r13]
        lea      rdx, bword ptr [rdx+8*r12+0x10]
        mov      rcx, rdx
        mov      rax, gword ptr [rcx]
-       mov      gword ptr [rbp-0x60], rax
+       mov      gword ptr [rbp-0xB0], rax
        mov      r8, qword ptr [rcx+0x08]
-       mov      qword ptr [rbp-0x48], r8
+       mov      qword ptr [rbp-0x98], r8
        xor      ecx, ecx
        mov      qword ptr [rdx], rcx
        mov      qword ptr [rdx+0x08], rcx
        mov      qword ptr [rdx+0x10], rcx
        inc      dword ptr [r14+0x14]
        mov      rdx, gword ptr [rbx+0x18]
        lea      rcx, [rbp-0x30]
        mov      rdi, rax
        mov      rsi, r8
        mov      r11, 0xD1FFAB1E      ; code for System.Threading.Tasks.Dataflow.ISourceBlock`1[double]:ConsumeMessage(System.Threading.Tasks.Dataflow.DataflowMessageHeader,System.Threading.Tasks.Dataflow.ITargetBlock`1[double],byref):double:this
        call     [r11]System.Threading.Tasks.Dataflow.ISourceBlock`1[double]:ConsumeMessage(System.Threading.Tasks.Dataflow.DataflowMessageHeader,System.Threading.Tasks.Dataflow.ITargetBlock`1[double],byref):double:this
        vmovsd   qword ptr [rbp-0x38], xmm0
        cmp      byte  ptr [rbp-0x30], 0
        je       SHORT G_M55778_IG05
-						;; size=107 bbWeight=4 PerfScore 143.00
+						;; size=113 bbWeight=4 PerfScore 143.00
 G_M55778_IG04:
        cmp      r13d, dword ptr [r14+0x10]
-       jae      G_M55778_IG23
+       jae      G_M55778_IG25
        mov      rdi, gword ptr [r14+0x08]
        cmp      r13d, dword ptr [rdi+0x08]
-       jae      G_M55778_IG22
+       jae      G_M55778_IG24
        lea      r12, bword ptr [rdi+8*r12+0x10]
-       mov      rsi, gword ptr [rbp-0x60]
+       mov      rsi, gword ptr [rbp-0xB0]
        mov      rdi, r12
        call     CORINFO_HELP_ASSIGN_REF
-       mov      rsi, qword ptr [rbp-0x48]
+       mov      rsi, qword ptr [rbp-0x98]
        mov      qword ptr [r12+0x08], rsi
        vmovsd   xmm0, qword ptr [rbp-0x38]
        vmovsd   qword ptr [r12+0x10], xmm0
        inc      dword ptr [r14+0x14]
        inc      r15d
-						;; size=69 bbWeight=2 PerfScore 47.00
+						;; size=75 bbWeight=2 PerfScore 47.00
 G_M55778_IG05:
        inc      r13d
        cmp      r13d, dword ptr [r14+0x10]
        jl       G_M55778_IG03
 						;; size=13 bbWeight=4 PerfScore 17.00
 G_M55778_IG06:
        mov      rdi, gword ptr [rbx+0x10]
-       mov      gword ptr [rbp-0x58], rdi
+       mov      gword ptr [rbp-0xA8], rdi
        xor      esi, esi
        mov      dword ptr [rbp-0x40], esi
-						;; size=13 bbWeight=1 PerfScore 4.25
+						;; size=16 bbWeight=1 PerfScore 4.25
 G_M55778_IG07:
        cmp      byte  ptr [rbp-0x40], 0
-       jne      G_M55778_IG15
+       jne      SHORT G_M55778_IG13
        lea      rsi, [rbp-0x40]
        call     System.Threading.Monitor:ReliableEnter(System.Object,byref)
        cmp      gword ptr [rbx+0x28], 0
        je       SHORT G_M55778_IG09
-						;; size=26 bbWeight=1 PerfScore 8.50
+						;; size=22 bbWeight=1 PerfScore 8.50
 G_M55778_IG08:
-       mov      rsi, gword ptr [rbx+0x28]
-       add      dword ptr [rsi+0x0C], r15d
+       mov      rdi, gword ptr [rbx+0x28]
+       add      dword ptr [rdi+0x0C], r15d
 						;; size=8 bbWeight=0.50 PerfScore 2.50
 G_M55778_IG09:
-       mov      r15d, dword ptr [r14+0x14]
-       xor      r13d, r13d
-						;; size=7 bbWeight=1 PerfScore 2.25
+       mov      edi, dword ptr [r14+0x14]
+       vxorps   xmm0, xmm0, xmm0
+       vmovdqu  xmmword ptr [rbp-0x80], xmm0
+       vmovdqu  xmmword ptr [rbp-0x78], xmm0
+						;; size=18 bbWeight=1 PerfScore 4.33
 G_M55778_IG10:
-       cmp      r15d, dword ptr [r14+0x14]
-       jne      G_M55778_IG17
-						;; size=10 bbWeight=8 PerfScore 32.00
+       vmovdqu  ymm0, ymmword ptr [rbp-0x90]
+       vmovdqu  ymmword ptr [rbp-0x68], ymm0
+       mov      rsi, qword ptr [rbp-0x70]
+       mov      qword ptr [rbp-0x48], rsi
+						;; size=21 bbWeight=1 PerfScore 7.00
 G_M55778_IG11:
-       mov      esi, dword ptr [r14+0x10]
-       cmp      r13d, esi
-       jae      G_M55778_IG18
-       mov      rsi, gword ptr [r14+0x08]
-       cmp      r13d, dword ptr [rsi+0x08]
-       jae      G_M55778_IG16
-       mov      edi, r13d
-       lea      rdi, [rdi+2*rdi]
-       lea      rsi, bword ptr [rsi+8*rdi+0x10]
-       mov      rdi, gword ptr [rsi]
-       vmovsd   xmm0, qword ptr [rsi+0x10]
-       inc      r13d
-       test     rdi, rdi
-       vmovsd   qword ptr [rbp-0x50], xmm0
-       je       SHORT G_M55778_IG10
-						;; size=60 bbWeight=4 PerfScore 78.00
+       mov      gword ptr [rbp-0x68], r14
+       xor      esi, esi
+       mov      dword ptr [rbp-0x60], esi
+       mov      dword ptr [rbp-0x5C], edi
+       jmp      SHORT G_M55778_IG14
+						;; size=14 bbWeight=1 PerfScore 5.25
 G_M55778_IG12:
-       mov      r12, gword ptr [rbx+0x08]
-       mov      esi, dword ptr [r12+0x18]
-       mov      rdi, gword ptr [r12+0x08]
-       cmp      esi, dword ptr [rdi+0x08]
-       jne      SHORT G_M55778_IG13
-       inc      esi
-       mov      rdi, r12
-       mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.Queue`1[double]:Grow(int):this
-       call     [rax]System.Collections.Generic.Queue`1[double]:Grow(int):this
-						;; size=36 bbWeight=2 PerfScore 27.50
+       call     CORINFO_HELP_RNGCHKFAIL
+       int3     
+						;; size=6 bbWeight=0 PerfScore 0.00
 G_M55778_IG13:
-       mov      rdi, gword ptr [r12+0x08]
-       mov      rax, rdi
-       mov      ecx, dword ptr [r12+0x14]
-       cmp      ecx, dword ptr [rax+0x08]
-       jae      SHORT G_M55778_IG16
-       vmovsd   xmm0, qword ptr [rbp-0x50]
-       vmovsd   qword ptr [rax+8*rcx+0x10], xmm0
-       lea      rax, bword ptr [r12+0x14]
-       mov      ecx, dword ptr [rax]
-       inc      ecx
-       cmp      dword ptr [rdi+0x08], ecx
-       jne      SHORT G_M55778_IG14
-       xor      ecx, ecx
-						;; size=45 bbWeight=2 PerfScore 40.50
-G_M55778_IG14:
-       mov      dword ptr [rax], ecx
-       inc      dword ptr [r12+0x18]
-       inc      dword ptr [r12+0x1C]
-       jmp      G_M55778_IG10
-						;; size=17 bbWeight=2 PerfScore 18.00
-G_M55778_IG15:
        mov      rax, 0xD1FFAB1E      ; code for System.Threading.Monitor:ThrowLockTakenException()
        call     [rax]System.Threading.Monitor:ThrowLockTakenException()
        int3     
 						;; size=13 bbWeight=0 PerfScore 0.00
+G_M55778_IG14:
+       lea      rdi, [rbp-0x68]
+       mov      r15, 0xD1FFAB1E      ; System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[double],System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,double]]]
+       mov      rsi, r15
+       mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.__Canon,System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,double]]]:MoveNext():ubyte:this
+       call     [rax]System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.__Canon,System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,double]]]:MoveNext():ubyte:this
+       test     eax, eax
+       je       G_M55778_IG20
+						;; size=37 bbWeight=1 PerfScore 5.50
+G_M55778_IG15:
+       mov      rsi, gword ptr [rbp-0x58]
+       vmovsd   xmm0, qword ptr [rbp-0x48]
+       vmovsd   qword ptr [rbp-0xA0], xmm0
+       test     rsi, rsi
+       je       SHORT G_M55778_IG19
+						;; size=22 bbWeight=4 PerfScore 25.00
 G_M55778_IG16:
-       call     CORINFO_HELP_RNGCHKFAIL
-       int3     
-						;; size=6 bbWeight=0 PerfScore 0.00
+       mov      r14, gword ptr [rbx+0x08]
+       mov      esi, dword ptr [r14+0x18]
+       mov      rdi, gword ptr [r14+0x08]
+       cmp      esi, dword ptr [rdi+0x08]
+       jne      SHORT G_M55778_IG17
+       inc      esi
+       mov      rdi, r14
+       mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.Queue`1[double]:Grow(int):this
+       call     [rax]System.Collections.Generic.Queue`1[double]:Grow(int):this
+						;; size=34 bbWeight=2 PerfScore 27.50
 G_M55778_IG17:
-       mov      rax, 0xD1FFAB1E      ; code for System.ThrowHelper:ThrowInvalidOperationException_InvalidOperation_EnumFailedVersion()
-       call     [rax]System.ThrowHelper:ThrowInvalidOperationException_InvalidOperation_EnumFailedVersion()
-       int3     
-						;; size=13 bbWeight=0 PerfScore 0.00
+       mov      rdi, gword ptr [r14+0x08]
+       mov      rsi, rdi
+       mov      eax, dword ptr [r14+0x14]
+       cmp      eax, dword ptr [rsi+0x08]
+       jae      SHORT G_M55778_IG12
+       vmovsd   xmm0, qword ptr [rbp-0xA0]
+       vmovsd   qword ptr [rsi+8*rax+0x10], xmm0
+       lea      rsi, bword ptr [r14+0x14]
+       mov      eax, dword ptr [rsi]
+       inc      eax
+       cmp      dword ptr [rdi+0x08], eax
+       jne      SHORT G_M55778_IG18
+       xor      eax, eax
+						;; size=45 bbWeight=2 PerfScore 40.50
 G_M55778_IG18:
+       mov      dword ptr [rsi], eax
+       inc      dword ptr [r14+0x18]
+       inc      dword ptr [r14+0x1C]
+						;; size=10 bbWeight=2 PerfScore 14.00
+G_M55778_IG19:
+       lea      rdi, [rbp-0x68]
+       mov      rsi, r15
+       mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.__Canon,System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,double]]]:MoveNext():ubyte:this
+       call     [rax]System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.__Canon,System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,double]]]:MoveNext():ubyte:this
+       test     eax, eax
+       jne      G_M55778_IG15
+						;; size=27 bbWeight=4 PerfScore 21.00
+G_M55778_IG20:
        cmp      byte  ptr [rbp-0x40], 0
-       je       SHORT G_M55778_IG20
+       je       SHORT G_M55778_IG22
 						;; size=6 bbWeight=1 PerfScore 3.00
-G_M55778_IG19:
-       mov      rdi, gword ptr [rbp-0x58]
+G_M55778_IG21:
+       mov      rdi, gword ptr [rbp-0xA8]
        call     System.Threading.Monitor:Exit(System.Object)
-						;; size=9 bbWeight=0.50 PerfScore 1.00
-G_M55778_IG20:
+						;; size=12 bbWeight=0.50 PerfScore 1.00
+G_M55778_IG22:
        nop      
 						;; size=1 bbWeight=1 PerfScore 0.25
-G_M55778_IG21:
-       add      rsp, 72
+G_M55778_IG23:
+       vzeroupper 
+       add      rsp, 152
        pop      rbx
        pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
-						;; size=15 bbWeight=1 PerfScore 4.25
-G_M55778_IG22:
+						;; size=21 bbWeight=1 PerfScore 5.25
+G_M55778_IG24:
        call     CORINFO_HELP_RNGCHKFAIL
        int3     
 						;; size=6 bbWeight=0 PerfScore 0.00
-G_M55778_IG23:
+G_M55778_IG25:
        mov      rax, 0xD1FFAB1E      ; code for System.ThrowHelper:ThrowArgumentOutOfRange_IndexMustBeLessException()
        call     [rax]System.ThrowHelper:ThrowArgumentOutOfRange_IndexMustBeLessException()
        int3     
 						;; size=13 bbWeight=0 PerfScore 0.00
-G_M55778_IG24:
+G_M55778_IG26:
        push     rbp
        push     r15
        push     r14
        push     r13
        push     r12
        push     rbx
        push     rax
        mov      rbp, qword ptr [rdi]
        mov      qword ptr [rsp], rbp
-       lea      rbp, [rbp+0x70]
-						;; size=22 bbWeight=0 PerfScore 0.00
-G_M55778_IG25:
+       lea      rbp, [rbp+0xC0]
+						;; size=25 bbWeight=0 PerfScore 0.00
+G_M55778_IG27:
        cmp      byte  ptr [rbp-0x40], 0
-       je       SHORT G_M55778_IG26
-       mov      rdi, gword ptr [rbp-0x58]
+       je       SHORT G_M55778_IG28
+       mov      rdi, gword ptr [rbp-0xA8]
        call     System.Threading.Monitor:Exit(System.Object)
-						;; size=15 bbWeight=0 PerfScore 0.00
-G_M55778_IG26:
+						;; size=18 bbWeight=0 PerfScore 0.00
+G_M55778_IG28:
        nop      
 						;; size=1 bbWeight=0 PerfScore 0.00
-G_M55778_IG27:
+G_M55778_IG29:
+       vzeroupper 
        add      rsp, 8
        pop      rbx
        pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
-						;; size=15 bbWeight=0 PerfScore 0.00
+						;; size=18 bbWeight=0 PerfScore 0.00
 
-; Total bytes of code 597, prolog size 26, PerfScore 445.50, instruction count 166, allocated bytes for code 597 (MethodHash=9d8c261d) for method System.Threading.Tasks.Dataflow.BatchBlock`1+BatchBlockTargetCore[double]:ConsumeReservedMessagesGreedyBounded():this (FullOpts)
+; Total bytes of code 698, prolog size 58, PerfScore 404.67, instruction count 180, allocated bytes for code 698 (MethodHash=9d8c261d) for method System.Threading.Tasks.Dataflow.BatchBlock`1+BatchBlockTargetCore[double]:ConsumeReservedMessagesGreedyBounded():this (FullOpts)
98 (3.87 % of base) - Microsoft.CSharp.RuntimeBinder.Semantics.MethodTypeInferrer:Fix(int):ubyte:this
 ; Assembly listing for method Microsoft.CSharp.RuntimeBinder.Semantics.MethodTypeInferrer:Fix(int):ubyte:this (FullOpts)
 ; Emitting BLENDED_CODE for X64 with AVX - Unix
 ; FullOpts code
 ; optimized code
 ; rbp based frame
-; fully interruptible
+; partially interruptible
 ; No PGO data
-; 0 inlinees with PGO data; 74 single block inlinees; 31 inlinees without PGO data
+; 0 inlinees with PGO data; 74 single block inlinees; 15 inlinees without PGO data
 ; Final local variable assignments
 ;
-;  V00 this         [V00,T28] ( 13, 37.50)     ref  ->  rbx         this class-hnd single-def <Microsoft.CSharp.RuntimeBinder.Semantics.MethodTypeInferrer>
-;  V01 arg1         [V01,T54] ( 14, 23   )     int  ->  r15         single-def
-;  V02 loc0         [V02,T00] ( 40,239.50)     ref  ->  r13         class-hnd exact single-def <System.Collections.Generic.List`1[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
-;  V03 loc1         [V03,T53] (  5, 26.50)     ref  ->  r14         class-hnd <Microsoft.CSharp.RuntimeBinder.Semantics.CType>
-;  V04 loc2         [V04,T119] (  3,  4.50)     ref  ->  r14         class-hnd exact single-def <System.Collections.Generic.HashSet`1[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
+;  V00 this         [V00,T12] ( 13, 34   )     ref  ->  rbx         this class-hnd single-def <Microsoft.CSharp.RuntimeBinder.Semantics.MethodTypeInferrer>
+;  V01 arg1         [V01,T30] ( 14, 16   )     int  ->  r15         single-def
+;  V02 loc0         [V02,T03] ( 33,136   )     ref  ->  r13         class-hnd exact single-def <System.Collections.Generic.List`1[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
+;  V03 loc1         [V03,T62] (  5,  5.50)     ref  ->  r12         class-hnd <Microsoft.CSharp.RuntimeBinder.Semantics.CType>
+;  V04 loc2         [V04,T63] (  3,  4.50)     ref  ->  r14         class-hnd exact single-def <System.Collections.Generic.HashSet`1[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
 ;* V05 loc3         [V05    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op <System.Collections.Generic.List`1+Enumerator[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
 ;* V06 loc4         [V06    ] (  0,  0   )     ref  ->  zero-ref    class-hnd <Microsoft.CSharp.RuntimeBinder.Semantics.CType>
 ;* V07 loc5         [V07    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op <System.Collections.Generic.List`1+Enumerator[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
 ;* V08 loc6         [V08    ] (  0,  0   )     ref  ->  zero-ref    class-hnd <Microsoft.CSharp.RuntimeBinder.Semantics.CType>
-;* V09 loc7         [V09    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op <System.Collections.Generic.List`1+Enumerator[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
-;  V10 loc8         [V10,T69] (  3, 18   )     ref  ->  [rbp-0x88]  class-hnd spill-single-def <Microsoft.CSharp.RuntimeBinder.Semantics.CType>
-;  V11 loc9         [V11,T14] (  8, 66   )     ref  ->  [rbp-0x90]  class-hnd exact spill-single-def <System.Collections.Generic.List`1[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
-;* V12 loc10        [V12    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op <System.Collections.Generic.List`1+Enumerator[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
-;* V13 loc11        [V13    ] (  0,  0   )     ref  ->  zero-ref    class-hnd <Microsoft.CSharp.RuntimeBinder.Semantics.CType>
-;* V14 loc12        [V14    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op <System.Collections.Generic.List`1+Enumerator[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
-;* V15 loc13        [V15    ] (  0,  0   )     ref  ->  zero-ref    class-hnd <Microsoft.CSharp.RuntimeBinder.Semantics.CType>
-;* V16 loc14        [V16    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op <System.Collections.Generic.List`1+Enumerator[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
-;  V17 loc15        [V17,T70] (  3, 18   )     ref  ->  [rbp-0x98]  class-hnd spill-single-def <Microsoft.CSharp.RuntimeBinder.Semantics.CType>
-;  V18 loc16        [V18,T15] (  8, 66   )     ref  ->  [rbp-0xA0]  class-hnd exact spill-single-def <System.Collections.Generic.List`1[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
-;* V19 loc17        [V19    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op <System.Collections.Generic.List`1+Enumerator[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
-;* V20 loc18        [V20    ] (  0,  0   )     ref  ->  zero-ref    class-hnd <Microsoft.CSharp.RuntimeBinder.Semantics.CType>
-;* V21 loc19        [V21    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op <System.Collections.Generic.List`1+Enumerator[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
-;* V22 loc20        [V22    ] (  0,  0   )     ref  ->  zero-ref    class-hnd <Microsoft.CSharp.RuntimeBinder.Semantics.CType>
-;* V23 loc21        [V23    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op <System.Collections.Generic.List`1+Enumerator[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
-;  V24 loc22        [V24,T68] (  4, 20   )     ref  ->  [rbp-0xA8]  class-hnd spill-single-def <Microsoft.CSharp.RuntimeBinder.Semantics.CType>
-;* V25 loc23        [V25    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op <System.Collections.Generic.List`1+Enumerator[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
-;* V26 loc24        [V26    ] (  0,  0   )     ref  ->  zero-ref    class-hnd <Microsoft.CSharp.RuntimeBinder.Semantics.CType>
-;* V27 loc25        [V27,T162] (  0,  0   )   ubyte  ->  zero-ref   
+;  V09 loc7         [V09    ] (  7, 10.50)  struct (24) [rbp-0x40]  do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Collections.Generic.List`1+Enumerator[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
+;  V10 loc8         [V10,T22] (  3, 28   )     ref  ->  r12         class-hnd <Microsoft.CSharp.RuntimeBinder.Semantics.CType>
+;  V11 loc9         [V11,T05] (  8, 56   )     ref  ->  [rbp-0x110]  class-hnd exact spill-single-def <System.Collections.Generic.List`1[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
+;  V12 loc10        [V12    ] (  7, 52   )  struct (24) [rbp-0x58]  do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Collections.Generic.List`1+Enumerator[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
+;  V13 loc11        [V13,T07] (  5, 56   )     ref  ->  [rbp-0x118]  class-hnd spill-single-def <Microsoft.CSharp.RuntimeBinder.Semantics.CType>
+;  V14 loc12        [V14    ] (  7, 52   )  struct (24) [rbp-0x70]  do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Collections.Generic.List`1+Enumerator[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
+;  V15 loc13        [V15,T15] (  2, 32   )     ref  ->  rdx         class-hnd <Microsoft.CSharp.RuntimeBinder.Semantics.CType>
+;  V16 loc14        [V16    ] (  7, 10.50)  struct (24) [rbp-0x88]  do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Collections.Generic.List`1+Enumerator[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
+;  V17 loc15        [V17,T23] (  3, 28   )     ref  ->  r12         class-hnd <Microsoft.CSharp.RuntimeBinder.Semantics.CType>
+;  V18 loc16        [V18,T06] (  8, 56   )     ref  ->  [rbp-0x120]  class-hnd exact spill-single-def <System.Collections.Generic.List`1[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
+;  V19 loc17        [V19    ] (  7, 52   )  struct (24) [rbp-0xA0]  do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Collections.Generic.List`1+Enumerator[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
+;  V20 loc18        [V20,T08] (  5, 56   )     ref  ->  [rbp-0x128]  class-hnd spill-single-def <Microsoft.CSharp.RuntimeBinder.Semantics.CType>
+;  V21 loc19        [V21    ] (  7, 52   )  struct (24) [rbp-0xB8]  do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Collections.Generic.List`1+Enumerator[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
+;  V22 loc20        [V22,T16] (  2, 32   )     ref  ->  rdx         class-hnd <Microsoft.CSharp.RuntimeBinder.Semantics.CType>
+;  V23 loc21        [V23    ] (  7, 10.50)  struct (24) [rbp-0xD0]  do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Collections.Generic.List`1+Enumerator[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
+;  V24 loc22        [V24,T20] (  4, 30   )     ref  ->  [rbp-0x130]  class-hnd spill-single-def <Microsoft.CSharp.RuntimeBinder.Semantics.CType>
+;  V25 loc23        [V25    ] (  7, 52   )  struct (24) [rbp-0xE8]  do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Collections.Generic.List`1+Enumerator[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
+;  V26 loc24        [V26,T09] (  3, 40   )     ref  ->  [rbp-0x138]  class-hnd spill-single-def <Microsoft.CSharp.RuntimeBinder.Semantics.CType>
+;* V27 loc25        [V27,T110] (  0,  0   )   ubyte  ->  zero-ref   
 ;* V28 loc26        [V28    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op <Microsoft.CSharp.RuntimeBinder.Semantics.BindingContext>
 ;# V29 OutArgs      [V29    ] (  1,  1   )  struct ( 0) [rsp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-;  V30 tmp1         [V30,T131] (  3,  3   )     ref  ->  r13         class-hnd exact single-def "NewObj constructor temp" <System.Collections.Generic.List`1[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
-;  V31 tmp2         [V31,T84] (  3, 12   )     ref  ->  [rbp-0xB0]  class-hnd exact spill-single-def "NewObj constructor temp" <System.Collections.Generic.List`1[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
-;  V32 tmp3         [V32,T85] (  3, 12   )     ref  ->  [rbp-0xB8]  class-hnd exact spill-single-def "NewObj constructor temp" <System.Collections.Generic.List`1[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
-;  V33 tmp4         [V33,T139] (  2,  2   )     ref  ->  r13         class-hnd single-def "impAppendStmt" <Microsoft.CSharp.RuntimeBinder.Semantics.CType[]>
-;  V34 tmp5         [V34,T132] (  3,  3   )     ref  ->  r14         class-hnd exact single-def "NewObj constructor temp" <System.Collections.Generic.HashSet`1[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
+;  V30 tmp1         [V30,T77] (  3,  3   )     ref  ->  r13         class-hnd exact single-def "NewObj constructor temp" <System.Collections.Generic.List`1[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
+;  V31 tmp2         [V31,T25] (  3, 24   )     ref  ->  [rbp-0x140]  class-hnd exact spill-single-def "NewObj constructor temp" <System.Collections.Generic.List`1[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
+;  V32 tmp3         [V32,T26] (  3, 24   )     ref  ->  [rbp-0x148]  class-hnd exact spill-single-def "NewObj constructor temp" <System.Collections.Generic.List`1[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
+;  V33 tmp4         [V33,T86] (  2,  2   )     ref  ->  r14         class-hnd single-def "impAppendStmt" <Microsoft.CSharp.RuntimeBinder.Semantics.CType[]>
+;  V34 tmp5         [V34,T78] (  3,  3   )     ref  ->  r14         class-hnd exact single-def "NewObj constructor temp" <System.Collections.Generic.HashSet`1[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
 ;* V35 tmp6         [V35    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <System.Collections.Generic.List`1[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
-;* V36 tmp7         [V36,T163] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;  V37 tmp8         [V37,T133] (  3,  3   )     ref  ->  rdi         class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
+;* V36 tmp7         [V36,T111] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
+;  V37 tmp8         [V37,T79] (  3,  3   )     ref  ->  rdi         class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
 ;* V38 tmp9         [V38    ] (  0,  0   )     ref  ->  zero-ref   
 ;* V39 tmp10        [V39    ] (  0,  0   )     ref  ->  zero-ref   
 ;* V40 tmp11        [V40    ] (  0,  0   )     ref  ->  zero-ref    single-def
-;  V41 tmp12        [V41,T155] (  2,  1   )     ref  ->  rsi         single-def
-;  V42 tmp13        [V42,T140] (  2,  2   )     ref  ->  r12         class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
+;  V41 tmp12        [V41,T97] (  2,  1   )     ref  ->  rsi         single-def
+;  V42 tmp13        [V42,T87] (  2,  2   )     ref  ->  r12         class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
 ;* V43 tmp14        [V43    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
-;  V44 tmp15        [V44    ] (  1,  2   )     int  ->  [rbp-0x30]  do-not-enreg[X] addr-exposed ld-addr-op "Inline ldloca(s) first use temp"
-;  V45 tmp16        [V45,T115] (  3,  6   )     ref  ->  rdi         class-hnd "Inline stloc first use temp" <Microsoft.CSharp.RuntimeBinder.Semantics.CType[]>
-;  V46 tmp17        [V46,T97] (  4,  8   )     int  ->  rsi         "Inline stloc first use temp"
-;* V47 tmp18        [V47,T100] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
+;  V44 tmp15        [V44    ] (  1,  2   )     int  ->  [rbp-0xF0]  do-not-enreg[X] addr-exposed ld-addr-op "Inline ldloca(s) first use temp"
+;  V45 tmp16        [V45,T59] (  3,  6   )     ref  ->  rdi         class-hnd "Inline stloc first use temp" <Microsoft.CSharp.RuntimeBinder.Semantics.CType[]>
+;  V46 tmp17        [V46,T43] (  4,  8   )     int  ->  rsi         "Inline stloc first use temp"
+;* V47 tmp18        [V47,T48] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
 ;* V48 tmp19        [V48    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline stloc first use temp" <System.Collections.Generic.List`1[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
-;  V49 tmp20        [V49,T76] (  2, 16   )     ref  ->  r12         class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
-;* V50 tmp21        [V50    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
-;  V51 tmp22        [V51    ] (  1,  2   )     int  ->  [rbp-0x38]  do-not-enreg[X] addr-exposed ld-addr-op "Inline ldloca(s) first use temp"
-;  V52 tmp23        [V52,T116] (  3,  6   )     ref  ->  rdi         class-hnd "Inline stloc first use temp" <Microsoft.CSharp.RuntimeBinder.Semantics.CType[]>
-;  V53 tmp24        [V53,T98] (  4,  8   )     int  ->  rsi         "Inline stloc first use temp"
-;* V54 tmp25        [V54,T101] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;* V55 tmp26        [V55    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline stloc first use temp" <System.Collections.Generic.List`1[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
-;  V56 tmp27        [V56,T141] (  2,  2   )     ref  ->  r14         class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
-;  V57 tmp28        [V57,T151] (  3,  1.50)     ref  ->  rdi         class-hnd single-def "Inline stloc first use temp" <Microsoft.CSharp.RuntimeBinder.Semantics.CType[]>
-;  V58 tmp29        [V58,T138] (  4,  2   )     int  ->  rsi         "Inline stloc first use temp"
-;  V59 tmp30        [V59,T134] (  3,  3   )     ref  ->  rdx         class-hnd single-def "Inlining Arg" <System.__Canon>
-;* V60 tmp31        [V60    ] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;  V61 tmp32        [V61,T142] (  2,  2   )     ref  ->  r14         class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
-;* V62 tmp33        [V62    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
-;* V63 tmp34        [V63    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
-;  V64 tmp35        [V64,T33] (  2, 32   )   byref  ->  [rbp-0xC0]  spill-single-def "Inlining Arg"
-;* V65 tmp36        [V65    ] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;  V66 tmp37        [V66,T01] (  9,144   )     ref  ->  [rbp-0xC8]  class-hnd exact spill-single-def "NewObj constructor temp" <Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder+ImplicitConversion>
-;* V67 tmp38        [V67    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inline stloc first use temp" <Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder+ImplicitConversion>
-;* V68 tmp39        [V68    ] (  0,  0   )  struct (16) zero-ref    do-not-enreg[S] "Inlining Arg" <Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder>
-;  V69 tmp40        [V69,T57] (  3, 24   )     ref  ->  rdx         class-hnd "Inline stloc first use temp" <Microsoft.CSharp.RuntimeBinder.Semantics.CType[]>
-;  V70 tmp41        [V70,T31] (  4, 32   )     int  ->  rsi         "Inline stloc first use temp"
-;* V71 tmp42        [V71,T36] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;* V72 tmp43        [V72    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline stloc first use temp" <System.Collections.Generic.List`1[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
-;* V73 tmp44        [V73    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
-;* V74 tmp45        [V74    ] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;  V75 tmp46        [V75,T66] (  3, 24   )     int  ->  registers   "Inline stloc first use temp"
-;* V76 tmp47        [V76,T37] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;* V77 tmp48        [V77    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline stloc first use temp" <System.Collections.Generic.List`1[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
-;* V78 tmp49        [V78,T102] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;* V79 tmp50        [V79    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline stloc first use temp" <System.Collections.Generic.List`1[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
-;  V80 tmp51        [V80,T77] (  2, 16   )     ref  ->  r14         class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
-;* V81 tmp52        [V81    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
-;* V82 tmp53        [V82    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
-;  V83 tmp54        [V83,T34] (  2, 32   )   byref  ->  [rbp-0xD0]  spill-single-def "Inlining Arg"
-;* V84 tmp55        [V84    ] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;  V85 tmp56        [V85,T02] (  9,144   )     ref  ->  [rbp-0xD8]  class-hnd exact spill-single-def "NewObj constructor temp" <Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder+ImplicitConversion>
-;* V86 tmp57        [V86    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inline stloc first use temp" <Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder+ImplicitConversion>
-;* V87 tmp58        [V87    ] (  0,  0   )  struct (16) zero-ref    do-not-enreg[S] "Inlining Arg" <Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder>
-;  V88 tmp59        [V88,T58] (  3, 24   )     ref  ->  rdx         class-hnd "Inline stloc first use temp" <Microsoft.CSharp.RuntimeBinder.Semantics.CType[]>
-;  V89 tmp60        [V89,T32] (  4, 32   )     int  ->  rsi         "Inline stloc first use temp"
-;* V90 tmp61        [V90,T38] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;* V91 tmp62        [V91    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline stloc first use temp" <System.Collections.Generic.List`1[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
+;* V49 tmp20        [V49    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
+;  V50 tmp21        [V50,T36] (  3, 12   )     ref  ->  rdi         class-hnd "Inline stloc first use temp" <Microsoft.CSharp.RuntimeBinder.Semantics.CType[]>
+;  V51 tmp22        [V51,T32] (  2, 16   )     ref  ->  r12         class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
+;* V52 tmp23        [V52    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
+;  V53 tmp24        [V53    ] (  1,  2   )     int  ->  [rbp-0xF8]  do-not-enreg[X] addr-exposed ld-addr-op "Inline ldloca(s) first use temp"
+;  V54 tmp25        [V54,T60] (  3,  6   )     ref  ->  rdi         class-hnd "Inline stloc first use temp" <Microsoft.CSharp.RuntimeBinder.Semantics.CType[]>
+;  V55 tmp26        [V55,T44] (  4,  8   )     int  ->  rsi         "Inline stloc first use temp"
+;* V56 tmp27        [V56,T49] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
+;* V57 tmp28        [V57    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline stloc first use temp" <System.Collections.Generic.List`1[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
+;* V58 tmp29        [V58    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
+;  V59 tmp30        [V59,T37] (  3, 12   )     ref  ->  rdi         class-hnd "Inline stloc first use temp" <Microsoft.CSharp.RuntimeBinder.Semantics.CType[]>
+;  V60 tmp31        [V60,T88] (  2,  2   )     ref  ->  r14         class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
+;  V61 tmp32        [V61,T92] (  3,  1.50)     ref  ->  rdi         class-hnd single-def "Inline stloc first use temp" <Microsoft.CSharp.RuntimeBinder.Semantics.CType[]>
+;  V62 tmp33        [V62,T85] (  4,  2   )     int  ->  rsi         "Inline stloc first use temp"
+;  V63 tmp34        [V63,T80] (  3,  3   )     ref  ->  rdx         class-hnd single-def "Inlining Arg" <System.__Canon>
+;* V64 tmp35        [V64    ] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
+;  V65 tmp36        [V65,T89] (  2,  2   )     ref  ->  rdi         class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
+;* V66 tmp37        [V66    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
+;* V67 tmp38        [V67    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
+;  V68 tmp39        [V68,T17] (  2, 32   )   byref  ->  [rbp-0x150]  spill-single-def "Inlining Arg"
+;* V69 tmp40        [V69    ] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
+;  V70 tmp41        [V70,T00] (  9,144   )     ref  ->  [rbp-0x158]  class-hnd exact spill-single-def "NewObj constructor temp" <Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder+ImplicitConversion>
+;* V71 tmp42        [V71    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inline stloc first use temp" <Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder+ImplicitConversion>
+;* V72 tmp43        [V72    ] (  0,  0   )  struct (16) zero-ref    do-not-enreg[S] "Inlining Arg" <Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder>
+;  V73 tmp44        [V73,T27] (  3, 24   )     ref  ->  rdi         class-hnd "Inline stloc first use temp" <Microsoft.CSharp.RuntimeBinder.Semantics.CType[]>
+;  V74 tmp45        [V74,T13] (  4, 32   )     int  ->  rsi         "Inline stloc first use temp"
+;* V75 tmp46        [V75    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
+;* V76 tmp47        [V76    ] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
+;  V77 tmp48        [V77,T10] (  3, 40   )     int  ->  rax         "Inline stloc first use temp"
+;  V78 tmp49        [V78,T90] (  2,  2   )     ref  ->  rdi         class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
+;* V79 tmp50        [V79    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
+;* V80 tmp51        [V80    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
+;  V81 tmp52        [V81,T18] (  2, 32   )   byref  ->  [rbp-0x160]  spill-single-def "Inlining Arg"
+;* V82 tmp53        [V82    ] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
+;  V83 tmp54        [V83,T01] (  9,144   )     ref  ->  [rbp-0x168]  class-hnd exact spill-single-def "NewObj constructor temp" <Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder+ImplicitConversion>
+;* V84 tmp55        [V84    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inline stloc first use temp" <Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder+ImplicitConversion>
+;* V85 tmp56        [V85    ] (  0,  0   )  struct (16) zero-ref    do-not-enreg[S] "Inlining Arg" <Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder>
+;  V86 tmp57        [V86,T28] (  3, 24   )     ref  ->  rdi         class-hnd "Inline stloc first use temp" <Microsoft.CSharp.RuntimeBinder.Semantics.CType[]>
+;  V87 tmp58        [V87,T14] (  4, 32   )     int  ->  rsi         "Inline stloc first use temp"
+;* V88 tmp59        [V88    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
+;* V89 tmp60        [V89    ] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
+;  V90 tmp61        [V90,T11] (  3, 40   )     int  ->  rax         "Inline stloc first use temp"
+;* V91 tmp62        [V91    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
 ;* V92 tmp63        [V92    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
-;* V93 tmp64        [V93    ] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;  V94 tmp65        [V94,T67] (  3, 24   )     int  ->  registers   "Inline stloc first use temp"
-;* V95 tmp66        [V95,T39] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;* V96 tmp67        [V96    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline stloc first use temp" <System.Collections.Generic.List`1[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
-;* V97 tmp68        [V97,T103] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;* V98 tmp69        [V98    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline stloc first use temp" <System.Collections.Generic.List`1[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
-;* V99 tmp70        [V99    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
-;* V100 tmp71       [V100    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
-;  V101 tmp72       [V101,T35] (  2, 32   )   byref  ->  [rbp-0xE0]  spill-single-def "Inlining Arg"
-;* V102 tmp73       [V102    ] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;  V103 tmp74       [V103,T03] (  9,144   )     ref  ->  [rbp-0xE8]  class-hnd exact spill-single-def "NewObj constructor temp" <Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder+ImplicitConversion>
-;* V104 tmp75       [V104    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inline stloc first use temp" <Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder+ImplicitConversion>
-;* V105 tmp76       [V105    ] (  0,  0   )  struct (16) zero-ref    do-not-enreg[S] "Inlining Arg" <Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder>
-;* V106 tmp77       [V106,T40] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;* V107 tmp78       [V107    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline stloc first use temp" <System.Collections.Generic.List`1[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
-;* V108 tmp79       [V108,T104] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;* V109 tmp80       [V109    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline stloc first use temp" <System.Collections.Generic.List`1[Microsoft.CSharp.RuntimeBinder.Semantics.CType]>
-;* V110 tmp81       [V110    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
-;* V111 tmp82       [V111,T161] (  0,  0   )     int  ->  zero-ref    "Single return block return value"
-;  V112 tmp83       [V112,T82] (  4, 12.50)     ref  ->  r12         single-def "field V05._list (fldOffset=0x0)" P-INDEP
-;  V113 tmp84       [V113,T80] (  4, 10   )     ref  ->  [rbp-0xF0]  "field V05._current (fldOffset=0x8)" P-INDEP
-;  V114 tmp85       [V114,T55] (  6, 20.50)     int  ->  [rbp-0x3C]  "field V05._index (fldOffset=0x10)" P-INDEP
-;  V115 tmp86       [V115,T120] (  2,  4.50)     int  ->  [rbp-0x40]  spill-single-def "field V05._version (fldOffset=0x14)" P-INDEP
-;  V116 tmp87       [V116,T74] (  4, 16   )     ref  ->  r12         single-def "field V07._list (fldOffset=0x0)" P-INDEP
-;  V117 tmp88       [V117,T81] (  4, 10   )     ref  ->  [rbp-0xF8]  "field V07._current (fldOffset=0x8)" P-INDEP
-;  V118 tmp89       [V118,T50] (  6, 24   )     int  ->  [rbp-0x44]  "field V07._index (fldOffset=0x10)" P-INDEP
-;  V119 tmp90       [V119,T105] (  2,  8   )     int  ->  [rbp-0x48]  spill-single-def "field V07._version (fldOffset=0x14)" P-INDEP
-;  V120 tmp91       [V120,T83] (  4, 24.50)     ref  ->  r14         single-def "field V09._list (fldOffset=0x0)" P-INDEP
-;  V121 tmp92       [V121,T93] (  2,  6   )     ref  ->  rax         "field V09._current (fldOffset=0x8)" P-INDEP
-;  V122 tmp93       [V122,T56] (  6, 20.50)     int  ->  [rbp-0x4C]  "field V09._index (fldOffset=0x10)" P-INDEP
-;  V123 tmp94       [V123,T121] (  2, 16.50)     int  ->  r12         "field V09._version (fldOffset=0x14)" P-INDEP
-;* V124 tmp95       [V124,T144] (  0,  0   )     ref  ->  zero-ref    "field V12._list (fldOffset=0x0)" P-INDEP
-;  V125 tmp96       [V125,T16] (  5, 48   )     ref  ->  [rbp-0x100]  "field V12._current (fldOffset=0x8)" P-INDEP
-;  V126 tmp97       [V126,T06] (  6, 82   )     int  ->  [rbp-0x50]  "field V12._index (fldOffset=0x10)" P-INDEP
-;  V127 tmp98       [V127,T71] (  2, 18   )     int  ->  [rbp-0x54]  spill-single-def "field V12._version (fldOffset=0x14)" P-INDEP
-;  V128 tmp99       [V128,T18] (  4, 64   )     ref  ->  [rbp-0x108]  "field V14._list (fldOffset=0x0)" P-INDEP
-;  V129 tmp100      [V129,T29] (  2, 24   )     ref  ->  rdx         "field V14._current (fldOffset=0x8)" P-INDEP
-;  V130 tmp101      [V130,T04] (  6, 96   )     int  ->  [rbp-0x58]  "field V14._index (fldOffset=0x10)" P-INDEP
-;  V131 tmp102      [V131,T41] (  2, 32   )     int  ->  [rbp-0x5C]  "field V14._version (fldOffset=0x14)" P-INDEP
-;  V132 tmp103      [V132,T75] (  4, 28   )     ref  ->  r14         single-def "field V16._list (fldOffset=0x0)" P-INDEP
-;  V133 tmp104      [V133,T94] (  2,  6   )     ref  ->  rax         "field V16._current (fldOffset=0x8)" P-INDEP
-;  V134 tmp105      [V134,T51] (  6, 24   )     int  ->  [rbp-0x60]  "field V16._index (fldOffset=0x10)" P-INDEP
-;  V135 tmp106      [V135,T106] (  2, 20   )     int  ->  r12         "field V16._version (fldOffset=0x14)" P-INDEP
-;* V136 tmp107      [V136,T145] (  0,  0   )     ref  ->  zero-ref    "field V19._list (fldOffset=0x0)" P-INDEP
-;  V137 tmp108      [V137,T17] (  5, 48   )     ref  ->  [rbp-0x110]  "field V19._current (fldOffset=0x8)" P-INDEP
-;  V138 tmp109      [V138,T07] (  6, 82   )     int  ->  [rbp-0x64]  "field V19._index (fldOffset=0x10)" P-INDEP
-;  V139 tmp110      [V139,T72] (  2, 18   )     int  ->  [rbp-0x68]  spill-single-def "field V19._version (fldOffset=0x14)" P-INDEP
-;  V140 tmp111      [V140,T19] (  4, 64   )     ref  ->  [rbp-0x118]  "field V21._list (fldOffset=0x0)" P-INDEP
-;  V141 tmp112      [V141,T30] (  2, 24   )     ref  ->  rdx         "field V21._current (fldOffset=0x8)" P-INDEP
-;  V142 tmp113      [V142,T05] (  6, 96   )     int  ->  [rbp-0x6C]  "field V21._index (fldOffset=0x10)" P-INDEP
-;  V143 tmp114      [V143,T42] (  2, 32   )     int  ->  [rbp-0x70]  "field V21._version (fldOffset=0x14)" P-INDEP
-;* V144 tmp115      [V144,T118] (  0,  0   )     ref  ->  zero-ref    single-def "field V23._list (fldOffset=0x0)" P-INDEP
-;  V145 tmp116      [V145,T95] (  2,  6   )     ref  ->  rcx         "field V23._current (fldOffset=0x8)" P-INDEP
-;  V146 tmp117      [V146,T52] (  6, 24   )     int  ->  [rbp-0x74]  "field V23._index (fldOffset=0x10)" P-INDEP
-;  V147 tmp118      [V147,T107] (  2,  8   )     int  ->  r12         "field V23._version (fldOffset=0x14)" P-INDEP
-;* V148 tmp119      [V148,T146] (  0,  0   )     ref  ->  zero-ref    "field V25._list (fldOffset=0x0)" P-INDEP
-;  V149 tmp120      [V149,T20] (  3, 32   )     ref  ->  [rbp-0x120]  "field V25._current (fldOffset=0x8)" P-INDEP
-;  V150 tmp121      [V150,T08] (  6, 82   )     int  ->  [rbp-0x78]  "field V25._index (fldOffset=0x10)" P-INDEP
-;  V151 tmp122      [V151,T73] (  2, 18   )     int  ->  [rbp-0x7C]  spill-single-def "field V25._version (fldOffset=0x14)" P-INDEP
-;  V152 tmp123      [V152,T156] (  2,  1   )     ref  ->  rdi         single-def "field V28.<ContextForMemberLookup>k__BackingField (fldOffset=0x0)" P-INDEP
-;* V153 tmp124      [V153    ] (  0,  0   )   ubyte  ->  zero-ref    "field V28.<Checked>k__BackingField (fldOffset=0x8)" P-INDEP
-;  V154 tmp125      [V154,T152] (  3,  1.50)     ref  ->  r12         single-def "field V43._list (fldOffset=0x0)" P-INDEP
-;* V155 tmp126      [V155    ] (  0,  0   )     ref  ->  zero-ref    single-def "field V43._current (fldOffset=0x8)" P-INDEP
-;* V156 tmp127      [V156,T164] (  0,  0   )     int  ->  zero-ref    "field V43._index (fldOffset=0x10)" P-INDEP
-;  V157 tmp128      [V157,T157] (  2,  1   )     int  ->  rax         "field V43._version (fldOffset=0x14)" P-INDEP
-;  V158 tmp129      [V158,T86] (  3, 12   )     ref  ->  r12         single-def "field V50._list (fldOffset=0x0)" P-INDEP
-;* V159 tmp130      [V159    ] (  0,  0   )     ref  ->  zero-ref    single-def "field V50._current (fldOffset=0x8)" P-INDEP
-;* V160 tmp131      [V160,T127] (  0,  0   )     int  ->  zero-ref    "field V50._index (fldOffset=0x10)" P-INDEP
-;  V161 tmp132      [V161,T108] (  2,  8   )     int  ->  rax         "field V50._version (fldOffset=0x14)" P-INDEP
-;  V162 tmp133      [V162,T153] (  3,  1.50)     ref  ->  r14         single-def "field V62._list (fldOffset=0x0)" P-INDEP
-;* V163 tmp134      [V163    ] (  0,  0   )     ref  ->  zero-ref    single-def "field V62._current (fldOffset=0x8)" P-INDEP
-;* V164 tmp135      [V164,T165] (  0,  0   )     int  ->  zero-ref    "field V62._index (fldOffset=0x10)" P-INDEP
-;  V165 tmp136      [V165,T158] (  2,  1   )     int  ->  r12         "field V62._version (fldOffset=0x14)" P-INDEP
-;  V166 tmp137      [V166,T122] (  2,  4   )     ref  ->  rdi         "field V63._list (fldOffset=0x0)" P-INDEP
-;* V167 tmp138      [V167    ] (  0,  0   )     ref  ->  zero-ref    "field V63._current (fldOffset=0x8)" P-INDEP
-;* V168 tmp139      [V168,T148] (  0,  0   )     int  ->  zero-ref    "field V63._index (fldOffset=0x10)" P-INDEP
-;  V169 tmp140      [V169,T124] (  2,  4   )     int  ->  rcx         "field V63._version (fldOffset=0x14)" P-INDEP
-;  V170 tmp141      [V170,T21] (  3, 48   )     ref  ->  rax         "field V73._list (fldOffset=0x0)" P-INDEP
-;* V171 tmp142      [V171    ] (  0,  0   )     ref  ->  zero-ref    "field V73._current (fldOffset=0x8)" P-INDEP
-;* V172 tmp143      [V172,T78] (  0,  0   )     int  ->  zero-ref    "field V73._index (fldOffset=0x10)" P-INDEP
-;  V173 tmp144      [V173,T43] (  2, 32   )     int  ->   r9         "field V73._version (fldOffset=0x14)" P-INDEP
-;  V174 tmp145      [V174,T87] (  3, 12   )     ref  ->  r14         single-def "field V81._list (fldOffset=0x0)" P-INDEP
-;* V175 tmp146      [V175    ] (  0,  0   )     ref  ->  zero-ref    single-def "field V81._current (fldOffset=0x8)" P-INDEP
-;* V176 tmp147      [V176,T128] (  0,  0   )     int  ->  zero-ref    "field V81._index (fldOffset=0x10)" P-INDEP
-;  V177 tmp148      [V177,T109] (  2,  8   )     int  ->  r12         "field V81._version (fldOffset=0x14)" P-INDEP
-;  V178 tmp149      [V178,T123] (  2,  4   )     ref  ->  rdi         "field V82._list (fldOffset=0x0)" P-INDEP
-;* V179 tmp150      [V179    ] (  0,  0   )     ref  ->  zero-ref    "field V82._current (fldOffset=0x8)" P-INDEP
-;* V180 tmp151      [V180,T149] (  0,  0   )     int  ->  zero-ref    "field V82._index (fldOffset=0x10)" P-INDEP
-;  V181 tmp152      [V181,T125] (  2,  4   )     int  ->  rcx         "field V82._version (fldOffset=0x14)" P-INDEP
-;  V182 tmp153      [V182,T22] (  3, 48   )     ref  ->  rax         "field V92._list (fldOffset=0x0)" P-INDEP
-;* V183 tmp154      [V183    ] (  0,  0   )     ref  ->  zero-ref    "field V92._current (fldOffset=0x8)" P-INDEP
-;* V184 tmp155      [V184,T79] (  0,  0   )     int  ->  zero-ref    "field V92._index (fldOffset=0x10)" P-INDEP
-;  V185 tmp156      [V185,T44] (  2, 32   )     int  ->   r9         "field V92._version (fldOffset=0x14)" P-INDEP
-;  V186 tmp157      [V186,T99] (  2,  8   )     ref  ->  rdi         single-def "field V99._list (fldOffset=0x0)" P-INDEP
-;* V187 tmp158      [V187    ] (  0,  0   )     ref  ->  zero-ref    single-def "field V99._current (fldOffset=0x8)" P-INDEP
-;* V188 tmp159      [V188,T129] (  0,  0   )     int  ->  zero-ref    "field V99._index (fldOffset=0x10)" P-INDEP
-;  V189 tmp160      [V189,T110] (  2,  8   )     int  ->  r12         "field V99._version (fldOffset=0x14)" P-INDEP
-;* V190 tmp161      [V190,T147] (  0,  0   )     ref  ->  zero-ref    "field V100._list (fldOffset=0x0)" P-INDEP
-;* V191 tmp162      [V191    ] (  0,  0   )     ref  ->  zero-ref    "field V100._current (fldOffset=0x8)" P-INDEP
-;* V192 tmp163      [V192,T150] (  0,  0   )     int  ->  zero-ref    "field V100._index (fldOffset=0x10)" P-INDEP
-;  V193 tmp164      [V193,T126] (  2,  4   )     int  ->  rax         "field V100._version (fldOffset=0x14)" P-INDEP
-;  V194 tmp165      [V194,T117] (  3,  6   )     ref  ->  rdi         single-def "arr expr"
-;* V195 tmp166      [V195,T159] (  0,  0   )     ref  ->  zero-ref    single-def "arr expr"
-;* V196 tmp167      [V196,T160] (  0,  0   )     ref  ->  zero-ref    single-def "arr expr"
-;  V197 tmp168      [V197,T135] (  3,  3   )     ref  ->  rsi         single-def "arr expr"
-;  V198 tmp169      [V198,T136] (  3,  3   )     ref  ->  rdx         single-def "arr expr"
-;  V199 tmp170      [V199,T59] (  3, 24   )     ref  ->  rdi         "arr expr"
-;  V200 tmp171      [V200,T60] (  3, 24   )     ref  ->  rdx         single-def "arr expr"
-;  V201 tmp172      [V201,T61] (  3, 24   )     ref  ->  rdi         "arr expr"
-;  V202 tmp173      [V202,T137] (  3,  3   )     ref  ->  rdi         single-def "arr expr"
-;  V203 tmp174      [V203,T62] (  3, 24   )     ref  ->  rax         "arr expr"
-;  V204 tmp175      [V204,T09] (  3, 96   )     ref  ->  rdx         "arr expr"
-;  V205 tmp176      [V205,T10] (  3, 96   )     ref  ->  rsi         "arr expr"
-;  V206 tmp177      [V206,T63] (  3, 24   )     ref  ->  rdi         single-def "arr expr"
-;  V207 tmp178      [V207,T64] (  3, 24   )     ref  ->  rax         "arr expr"
-;  V208 tmp179      [V208,T11] (  3, 96   )     ref  ->  rdx         "arr expr"
-;  V209 tmp180      [V209,T12] (  3, 96   )     ref  ->  rsi         "arr expr"
-;  V210 tmp181      [V210,T65] (  3, 24   )     ref  ->  rcx         "arr expr"
-;  V211 tmp182      [V211,T13] (  3, 96   )     ref  ->  rsi         "arr expr"
-;  V212 tmp183      [V212,T143] (  2,  2   )     ref  ->  rdx         single-def "argument with side effect"
-;* V213 cse0        [V213,T166] (  0,  0   )    long  ->  zero-ref    "CSE #12: conservative"
-;  V214 cse1        [V214,T130] (  4,  3   )     ref  ->  r14         "CSE #05: conservative"
-;  V215 cse2        [V215,T154] (  3,  1.50)     ref  ->  r12         "CSE #10: conservative"
-;  V216 cse3        [V216,T45] (  2, 32   )     int  ->  rdx         "CSE #14: moderate"
-;  V217 cse4        [V217,T23] (  2, 32   )     int  ->  rdx         "CSE #15: moderate"
-;  V218 cse5        [V218,T46] (  2, 32   )     int  ->  rsi         "CSE #16: moderate"
-;  V219 cse6        [V219,T24] (  2, 32   )     int  ->  rsi         "CSE #17: moderate"
-;  V220 cse7        [V220,T47] (  2, 32   )     int  ->  rdx         "CSE #22: moderate"
-;  V221 cse8        [V221,T25] (  2, 32   )     int  ->  rdx         "CSE #23: moderate"
-;  V222 cse9        [V222,T48] (  2, 32   )     int  ->  rsi         "CSE #24: moderate"
-;  V223 cse10       [V223,T26] (  2, 32   )     int  ->  rsi         "CSE #25: moderate"
-;  V224 cse11       [V224,T49] (  2, 32   )     int  ->  rsi         "CSE #29: moderate"
-;  V225 cse12       [V225,T27] (  2, 32   )     int  ->  rsi         "CSE #30: moderate"
-;  V226 cse13       [V226,T96] (  3, 10   )     int  ->  rax         "CSE #31: conservative"
-;  V227 cse14       [V227,T111] (  2,  8   )     int  ->  rdi         "CSE #06: conservative"
-;  V228 cse15       [V228,T88] (  2,  8   )     int  ->  rdi         "CSE #07: conservative"
-;  V229 cse16       [V229,T112] (  2,  8   )     int  ->  rdi         "CSE #08: conservative"
-;  V230 cse17       [V230,T89] (  2,  8   )     int  ->  rdi         "CSE #09: conservative"
-;  V231 cse18       [V231,T113] (  2, 32   )     int  ->  rax         "CSE #18: conservative"
-;  V232 cse19       [V232,T90] (  2,  8   )     int  ->  rax         "CSE #19: conservative"
-;  V233 cse20       [V233,T114] (  2, 32   )     int  ->  rax         "CSE #26: conservative"
-;  V234 cse21       [V234,T91] (  2,  8   )     int  ->  rax         "CSE #27: conservative"
-;  V235 cse22       [V235,T92] (  2,  8   )     int  ->  rcx         "CSE #32: conservative"
+;  V93 tmp64        [V93,T19] (  2, 32   )   byref  ->  [rbp-0x170]  spill-single-def "Inlining Arg"
+;* V94 tmp65        [V94    ] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
+;  V95 tmp66        [V95,T02] (  9,144   )     ref  ->  [rbp-0x178]  class-hnd exact spill-single-def "NewObj constructor temp" <Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder+ImplicitConversion>
+;* V96 tmp67        [V96    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inline stloc first use temp" <Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder+ImplicitConversion>
+;* V97 tmp68        [V97    ] (  0,  0   )  struct (16) zero-ref    do-not-enreg[S] "Inlining Arg" <Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder>
+;* V98 tmp69        [V98    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
+;* V99 tmp70        [V99,T106] (  0,  0   )     int  ->  zero-ref    "Single return block return value"
+;  V100 tmp71       [V100,T35] (  4, 12.50)     ref  ->  r12         single-def "field V05._list (fldOffset=0x0)" P-INDEP
+;  V101 tmp72       [V101,T33] (  4, 10   )     ref  ->  [rbp-0x180]  "field V05._current (fldOffset=0x8)" P-INDEP
+;  V102 tmp73       [V102,T24] (  6, 20.50)     int  ->  [rbp-0xFC]  "field V05._index (fldOffset=0x10)" P-INDEP
+;  V103 tmp74       [V103,T64] (  2,  4.50)     int  ->  [rbp-0x100]  spill-single-def "field V05._version (fldOffset=0x14)" P-INDEP
+;  V104 tmp75       [V104,T31] (  4, 16   )     ref  ->  r12         single-def "field V07._list (fldOffset=0x0)" P-INDEP
+;  V105 tmp76       [V105,T34] (  4, 10   )     ref  ->  [rbp-0x188]  "field V07._current (fldOffset=0x8)" P-INDEP
+;  V106 tmp77       [V106,T21] (  6, 24   )     int  ->  [rbp-0x104]  "field V07._index (fldOffset=0x10)" P-INDEP
+;  V107 tmp78       [V107,T50] (  2,  8   )     int  ->  [rbp-0x108]  spill-single-def "field V07._version (fldOffset=0x14)" P-INDEP
+;  V108 tmp79       [V108    ] (  3,  5   )     ref  ->  [rbp-0x40]  do-not-enreg[X] addr-exposed "field V09._list (fldOffset=0x0)" P-DEP
+;  V109 tmp80       [V109    ] (  4,  9   )     ref  ->  [rbp-0x38]  do-not-enreg[X] addr-exposed "field V09._current (fldOffset=0x8)" P-DEP
+;  V110 tmp81       [V110    ] (  3,  5   )     int  ->  [rbp-0x30]  do-not-enreg[X] addr-exposed "field V09._index (fldOffset=0x10)" P-DEP
+;  V111 tmp82       [V111    ] (  3,  5   )     int  ->  [rbp-0x2C]  do-not-enreg[X] addr-exposed "field V09._version (fldOffset=0x14)" P-DEP
+;  V112 tmp83       [V112    ] (  3, 24   )     ref  ->  [rbp-0x58]  do-not-enreg[X] addr-exposed "field V12._list (fldOffset=0x0)" P-DEP
+;  V113 tmp84       [V113    ] (  4, 40   )     ref  ->  [rbp-0x50]  do-not-enreg[X] addr-exposed "field V12._current (fldOffset=0x8)" P-DEP
+;  V114 tmp85       [V114    ] (  3, 24   )     int  ->  [rbp-0x48]  do-not-enreg[X] addr-exposed "field V12._index (fldOffset=0x10)" P-DEP
+;  V115 tmp86       [V115    ] (  3, 24   )     int  ->  [rbp-0x44]  do-not-enreg[X] addr-exposed "field V12._version (fldOffset=0x14)" P-DEP
+;  V116 tmp87       [V116    ] (  3, 24   )     ref  ->  [rbp-0x70]  do-not-enreg[X] addr-exposed "field V14._list (fldOffset=0x0)" P-DEP
+;  V117 tmp88       [V117    ] (  4, 40   )     ref  ->  [rbp-0x68]  do-not-enreg[X] addr-exposed "field V14._current (fldOffset=0x8)" P-DEP
+;  V118 tmp89       [V118    ] (  3, 24   )     int  ->  [rbp-0x60]  do-not-enreg[X] addr-exposed "field V14._index (fldOffset=0x10)" P-DEP
+;  V119 tmp90       [V119    ] (  3, 24   )     int  ->  [rbp-0x5C]  do-not-enreg[X] addr-exposed "field V14._version (fldOffset=0x14)" P-DEP
+;  V120 tmp91       [V120    ] (  3,  5   )     ref  ->  [rbp-0x88]  do-not-enreg[X] addr-exposed "field V16._list (fldOffset=0x0)" P-DEP
+;  V121 tmp92       [V121    ] (  4,  9   )     ref  ->  [rbp-0x80]  do-not-enreg[X] addr-exposed "field V16._current (fldOffset=0x8)" P-DEP
+;  V122 tmp93       [V122    ] (  3,  5   )     int  ->  [rbp-0x78]  do-not-enreg[X] addr-exposed "field V16._index (fldOffset=0x10)" P-DEP
+;  V123 tmp94       [V123    ] (  3,  5   )     int  ->  [rbp-0x74]  do-not-enreg[X] addr-exposed "field V16._version (fldOffset=0x14)" P-DEP
+;  V124 tmp95       [V124    ] (  3, 24   )     ref  ->  [rbp-0xA0]  do-not-enreg[X] addr-exposed "field V19._list (fldOffset=0x0)" P-DEP
+;  V125 tmp96       [V125    ] (  4, 40   )     ref  ->  [rbp-0x98]  do-not-enreg[X] addr-exposed "field V19._current (fldOffset=0x8)" P-DEP
+;  V126 tmp97       [V126    ] (  3, 24   )     int  ->  [rbp-0x90]  do-not-enreg[X] addr-exposed "field V19._index (fldOffset=0x10)" P-DEP
+;  V127 tmp98       [V127    ] (  3, 24   )     int  ->  [rbp-0x8C]  do-not-enreg[X] addr-exposed "field V19._version (fldOffset=0x14)" P-DEP
+;  V128 tmp99       [V128    ] (  3, 24   )     ref  ->  [rbp-0xB8]  do-not-enreg[X] addr-exposed "field V21._list (fldOffset=0x0)" P-DEP
+;  V129 tmp100      [V129    ] (  4, 40   )     ref  ->  [rbp-0xB0]  do-not-enreg[X] addr-exposed "field V21._current (fldOffset=0x8)" P-DEP
+;  V130 tmp101      [V130    ] (  3, 24   )     int  ->  [rbp-0xA8]  do-not-enreg[X] addr-exposed "field V21._index (fldOffset=0x10)" P-DEP
+;  V131 tmp102      [V131    ] (  3, 24   )     int  ->  [rbp-0xA4]  do-not-enreg[X] addr-exposed "field V21._version (fldOffset=0x14)" P-DEP
+;  V132 tmp103      [V132    ] (  3,  5   )     ref  ->  [rbp-0xD0]  do-not-enreg[X] addr-exposed "field V23._list (fldOffset=0x0)" P-DEP
+;  V133 tmp104      [V133    ] (  4,  9   )     ref  ->  [rbp-0xC8]  do-not-enreg[X] addr-exposed "field V23._current (fldOffset=0x8)" P-DEP
+;  V134 tmp105      [V134    ] (  3,  5   )     int  ->  [rbp-0xC0]  do-not-enreg[X] addr-exposed "field V23._index (fldOffset=0x10)" P-DEP
+;  V135 tmp106      [V135    ] (  3,  5   )     int  ->  [rbp-0xBC]  do-not-enreg[X] addr-exposed "field V23._version (fldOffset=0x14)" P-DEP
+;  V136 tmp107      [V136    ] (  3, 24   )     ref  ->  [rbp-0xE8]  do-not-enreg[X] addr-exposed "field V25._list (fldOffset=0x0)" P-DEP
+;  V137 tmp108      [V137    ] (  4, 40   )     ref  ->  [rbp-0xE0]  do-not-enreg[X] addr-exposed "field V25._current (fldOffset=0x8)" P-DEP
+;  V138 tmp109      [V138    ] (  3, 24   )     int  ->  [rbp-0xD8]  do-not-enreg[X] addr-exposed "field V25._index (fldOffset=0x10)" P-DEP
+;  V139 tmp110      [V139    ] (  3, 24   )     int  ->  [rbp-0xD4]  do-not-enreg[X] addr-exposed "field V25._version (fldOffset=0x14)" P-DEP
+;  V140 tmp111      [V140,T98] (  2,  1   )     ref  ->  rdi         single-def "field V28.<ContextForMemberLookup>k__BackingField (fldOffset=0x0)" P-INDEP
+;* V141 tmp112      [V141    ] (  0,  0   )   ubyte  ->  zero-ref    "field V28.<Checked>k__BackingField (fldOffset=0x8)" P-INDEP
+;  V142 tmp113      [V142,T93] (  3,  1.50)     ref  ->  r12         single-def "field V43._list (fldOffset=0x0)" P-INDEP
+;* V143 tmp114      [V143    ] (  0,  0   )     ref  ->  zero-ref    single-def "field V43._current (fldOffset=0x8)" P-INDEP
+;* V144 tmp115      [V144,T112] (  0,  0   )     int  ->  zero-ref    "field V43._index (fldOffset=0x10)" P-INDEP
+;  V145 tmp116      [V145,T100] (  2,  1   )     int  ->  rax         "field V43._version (fldOffset=0x14)" P-INDEP
+;  V146 tmp117      [V146,T38] (  3, 12   )     ref  ->  r12         single-def "field V52._list (fldOffset=0x0)" P-INDEP
+;* V147 tmp118      [V147    ] (  0,  0   )     ref  ->  zero-ref    single-def "field V52._current (fldOffset=0x8)" P-INDEP
+;* V148 tmp119      [V148,T70] (  0,  0   )     int  ->  zero-ref    "field V52._index (fldOffset=0x10)" P-INDEP
+;  V149 tmp120      [V149,T51] (  2,  8   )     int  ->  rax         "field V52._version (fldOffset=0x14)" P-INDEP
+;  V150 tmp121      [V150,T94] (  3,  1.50)     ref  ->  rdi         single-def "field V66._list (fldOffset=0x0)" P-INDEP
+;* V151 tmp122      [V151,T107] (  0,  0   )     ref  ->  zero-ref    single-def "field V66._current (fldOffset=0x8)" P-INDEP
+;* V152 tmp123      [V152,T113] (  0,  0   )     int  ->  zero-ref    "field V66._index (fldOffset=0x10)" P-INDEP
+;  V153 tmp124      [V153,T101] (  2,  1   )     int  ->  rsi         "field V66._version (fldOffset=0x14)" P-INDEP
+;  V154 tmp125      [V154,T45] (  2,  8   )     ref  ->  rdi         "field V67._list (fldOffset=0x0)" P-INDEP
+;* V155 tmp126      [V155,T65] (  0,  0   )     ref  ->  zero-ref    "field V67._current (fldOffset=0x8)" P-INDEP
+;* V156 tmp127      [V156,T71] (  0,  0   )     int  ->  zero-ref    "field V67._index (fldOffset=0x10)" P-INDEP
+;  V157 tmp128      [V157,T52] (  2,  8   )     int  ->  rdi         "field V67._version (fldOffset=0x14)" P-INDEP
+;  V158 tmp129      [V158,T39] (  3, 12   )     ref  ->  r12         "field V75._list (fldOffset=0x0)" P-INDEP
+;* V159 tmp130      [V159,T66] (  0,  0   )     ref  ->  zero-ref    "field V75._current (fldOffset=0x8)" P-INDEP
+;* V160 tmp131      [V160,T72] (  0,  0   )     int  ->  zero-ref    "field V75._index (fldOffset=0x10)" P-INDEP
+;  V161 tmp132      [V161,T53] (  2,  8   )     int  ->  rdi         "field V75._version (fldOffset=0x14)" P-INDEP
+;  V162 tmp133      [V162,T95] (  3,  1.50)     ref  ->  rdi         single-def "field V79._list (fldOffset=0x0)" P-INDEP
+;* V163 tmp134      [V163,T108] (  0,  0   )     ref  ->  zero-ref    single-def "field V79._current (fldOffset=0x8)" P-INDEP
+;* V164 tmp135      [V164,T114] (  0,  0   )     int  ->  zero-ref    "field V79._index (fldOffset=0x10)" P-INDEP
+;  V165 tmp136      [V165,T102] (  2,  1   )     int  ->  rsi         "field V79._version (fldOffset=0x14)" P-INDEP
+;  V166 tmp137      [V166,T46] (  2,  8   )     ref  ->  rdi         "field V80._list (fldOffset=0x0)" P-INDEP
+;* V167 tmp138      [V167,T67] (  0,  0   )     ref  ->  zero-ref    "field V80._current (fldOffset=0x8)" P-INDEP
+;* V168 tmp139      [V168,T73] (  0,  0   )     int  ->  zero-ref    "field V80._index (fldOffset=0x10)" P-INDEP
+;  V169 tmp140      [V169,T54] (  2,  8   )     int  ->  rdi         "field V80._version (fldOffset=0x14)" P-INDEP
+;  V170 tmp141      [V170,T40] (  3, 12   )     ref  ->  r12         "field V88._list (fldOffset=0x0)" P-INDEP
+;* V171 tmp142      [V171,T68] (  0,  0   )     ref  ->  zero-ref    "field V88._current (fldOffset=0x8)" P-INDEP
+;* V172 tmp143      [V172,T74] (  0,  0   )     int  ->  zero-ref    "field V88._index (fldOffset=0x10)" P-INDEP
+;  V173 tmp144      [V173,T55] (  2,  8   )     int  ->  rdi         "field V88._version (fldOffset=0x14)" P-INDEP
+;  V174 tmp145      [V174,T99] (  2,  1   )     ref  ->  rdi         single-def "field V91._list (fldOffset=0x0)" P-INDEP
+;* V175 tmp146      [V175,T109] (  0,  0   )     ref  ->  zero-ref    single-def "field V91._current (fldOffset=0x8)" P-INDEP
+;* V176 tmp147      [V176,T115] (  0,  0   )     int  ->  zero-ref    "field V91._index (fldOffset=0x10)" P-INDEP
+;  V177 tmp148      [V177,T103] (  2,  1   )     int  ->  rdi         "field V91._version (fldOffset=0x14)" P-INDEP
+;  V178 tmp149      [V178,T47] (  2,  8   )     ref  ->  rdi         "field V92._list (fldOffset=0x0)" P-INDEP
+;* V179 tmp150      [V179,T69] (  0,  0   )     ref  ->  zero-ref    "field V92._current (fldOffset=0x8)" P-INDEP
+;* V180 tmp151      [V180,T75] (  0,  0   )     int  ->  zero-ref    "field V92._index (fldOffset=0x10)" P-INDEP
+;  V181 tmp152      [V181,T56] (  2,  8   )     int  ->  rdi         "field V92._version (fldOffset=0x14)" P-INDEP
+;  V182 tmp153      [V182,T61] (  3,  6   )     ref  ->  rdi         single-def "arr expr"
+;* V183 tmp154      [V183,T104] (  0,  0   )     ref  ->  zero-ref    single-def "arr expr"
+;* V184 tmp155      [V184,T105] (  0,  0   )     ref  ->  zero-ref    single-def "arr expr"
+;  V185 tmp156      [V185,T81] (  3,  3   )     ref  ->  rsi         single-def "arr expr"
+;  V186 tmp157      [V186,T82] (  3,  3   )     ref  ->  rdx         single-def "arr expr"
+;  V187 tmp158      [V187,T29] (  3, 24   )     ref  ->  rdx         single-def "arr expr"
+;  V188 tmp159      [V188,T83] (  3,  3   )     ref  ->  rdi         single-def "arr expr"
+;  V189 tmp160      [V189,T84] (  3,  3   )     ref  ->  rdi         single-def "arr expr"
+;  V190 tmp161      [V190,T91] (  2,  2   )     ref  ->  rdx         single-def "argument with side effect"
+;* V191 cse0        [V191,T116] (  0,  0   )    long  ->  zero-ref    "CSE #13: conservative"
+;  V192 cse1        [V192,T76] (  4,  3   )     ref  ->  r14         "CSE #05: conservative"
+;  V193 cse2        [V193,T96] (  3,  1.50)     ref  ->  r12         "CSE #12: conservative"
+;  V194 cse3        [V194,T57] (  2,  8   )     int  ->  rdi         "CSE #07: conservative"
+;  V195 cse4        [V195,T41] (  2,  8   )     int  ->  rdi         "CSE #08: conservative"
+;  V196 cse5        [V196,T58] (  2,  8   )     int  ->  rdi         "CSE #10: conservative"
+;  V197 cse6        [V197,T42] (  2,  8   )     int  ->  rdi         "CSE #11: conservative"
+;  V198 cse7        [V198,T04] ( 17,114   )    long  ->  r14         "CSE #16: aggressive"
 ;
-; Lcl frame size = 248
+; Lcl frame size = 360
 
 G_M17172_IG01:
        push     rbp
        push     r15
        push     r14
        push     r13
        push     r12
        push     rbx
-       sub      rsp, 248
-       lea      rbp, [rsp+0x120]
+       sub      rsp, 360
+       lea      rbp, [rsp+0x190]
+       xor      eax, eax
+       mov      qword ptr [rbp-0xE8], rax
+       vxorps   xmm8, xmm8, xmm8
+       vmovdqu  ymmword ptr [rbp-0xE0], ymm8
+       vmovdqu  ymmword ptr [rbp-0xC0], ymm8
+       vmovdqu  ymmword ptr [rbp-0xA0], ymm8
+       vmovdqu  ymmword ptr [rbp-0x80], ymm8
+       vmovdqu  ymmword ptr [rbp-0x60], ymm8
+       vmovdqa  xmmword ptr [rbp-0x40], xmm8
+       mov      qword ptr [rbp-0x30], rax
        mov      rbx, rdi
        mov      r15d, esi
-						;; size=31 bbWeight=1 PerfScore 7.25
+						;; size=88 bbWeight=1 PerfScore 21.83
 G_M17172_IG02:
        mov      rdi, gword ptr [rbx+0x20]
        cmp      r15d, dword ptr [rdi+0x08]
-       jae      G_M17172_IG57
+       jae      G_M17172_IG63
        mov      eax, r15d
        mov      r14, gword ptr [rdi+8*rax+0x10]
        cmp      dword ptr [r14+0x10], 2
-       jge      G_M17172_IG51
+       jge      G_M17172_IG57
 						;; size=33 bbWeight=1 PerfScore 12.25
 G_M17172_IG03:
        mov      rdi, 0xD1FFAB1E      ; System.Collections.Generic.List`1[Microsoft.CSharp.RuntimeBinder.Semantics.CType]
        call     CORINFO_HELP_NEWSFAST
        mov      r13, rax
        mov      rdi, 0xD1FFAB1E
        mov      esi, 66
        call     CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
        mov      rdi, 0xD1FFAB1E      ; data for System.Collections.Generic.List`1[Microsoft.CSharp.RuntimeBinder.Semantics.CType]:s_emptyArray
        mov      r12, gword ptr [rdi]
        lea      rdi, bword ptr [r13+0x08]
        mov      rsi, r12
        call     CORINFO_HELP_ASSIGN_REF
        mov      rdi, r14
        test     rdi, rdi
        je       SHORT G_M17172_IG04
        cmp      dword ptr [rdi+0x10], 0
        je       SHORT G_M17172_IG04
        mov      rsi, gword ptr [r14+0x08]
        cmp      dword ptr [rsi+0x08], 0
-       jbe      G_M17172_IG57
+       jbe      G_M17172_IG63
        mov      rdx, gword ptr [rsi+0x10]
        inc      dword ptr [r13+0x14]
        mov      rdi, r12
        mov      esi, dword ptr [r13+0x10]
        cmp      dword ptr [rdi+0x08], esi
-       jbe      G_M17172_IG13
-       jmp      G_M17172_IG12
+       jbe      G_M17172_IG16
+       jmp      G_M17172_IG15
 						;; size=120 bbWeight=0.50 PerfScore 15.88
 G_M17172_IG04:
        mov      rdi, 0xD1FFAB1E      ; System.Collections.Generic.HashSet`1[Microsoft.CSharp.RuntimeBinder.Semantics.CType]
        call     CORINFO_HELP_NEWSFAST
        mov      r14, rax
        mov      rdi, 0xD1FFAB1E
        mov      esi, 67
        call     CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
        mov      rdi, 0xD1FFAB1E      ; data for System.Collections.Generic.EqualityComparer`1[Microsoft.CSharp.RuntimeBinder.Semantics.CType]:<Default>k__BackingField
        mov      rsi, gword ptr [rdi]
        lea      rdi, bword ptr [r14+0x18]
        call     CORINFO_HELP_ASSIGN_REF
        mov      rdx, gword ptr [rbx+0x30]
        cmp      r15d, dword ptr [rdx+0x08]
-       jae      G_M17172_IG57
+       jae      G_M17172_IG63
        mov      edi, r15d
        mov      r12, gword ptr [rdx+8*rdi+0x10]
        mov      eax, dword ptr [r12+0x14]
        xor      edx, edx
-       mov      dword ptr [rbp-0x40], eax
+       mov      dword ptr [rbp-0x100], eax
        jmp      G_M17172_IG07
-						;; size=97 bbWeight=0.50 PerfScore 10.12
+						;; size=100 bbWeight=0.50 PerfScore 10.12
 G_M17172_IG05:
-       lea      rdx, [rbp-0x30]
+       lea      rdx, [rbp-0xF0]
        mov      rdi, r14
-       mov      gword ptr [rbp-0xF0], rcx
+       mov      gword ptr [rbp-0x180], rcx
        mov      rsi, rcx
        mov      r8, 0xD1FFAB1E      ; code for System.Collections.Generic.HashSet`1[System.__Canon]:AddIfNotPresent(System.__Canon,byref):ubyte:this
        call     [r8]System.Collections.Generic.HashSet`1[System.__Canon]:AddIfNotPresent(System.__Canon,byref):ubyte:this
        test     eax, eax
-       mov      eax, dword ptr [rbp-0x40]
-       mov      edx, dword ptr [rbp-0x3C]
+       mov      eax, dword ptr [rbp-0x100]
+       mov      edx, dword ptr [rbp-0xFC]
        je       SHORT G_M17172_IG07
-       mov      rcx, gword ptr [rbp-0xF0]
+       mov      rcx, gword ptr [rbp-0x180]
        inc      dword ptr [r13+0x14]
        mov      rdi, gword ptr [r13+0x08]
        mov      esi, dword ptr [r13+0x10]
        cmp      dword ptr [rdi+0x08], esi
        jbe      SHORT G_M17172_IG06
-       mov      dword ptr [rbp-0x3C], edx
+       mov      dword ptr [rbp-0xFC], edx
        lea      r8d, [rsi+0x01]
        mov      dword ptr [r13+0x10], r8d
        movsxd   rsi, esi
        mov      rdx, rcx
        mov      rcx, 0xD1FFAB1E      ; code for CORINFO_HELP_ARRADDR_ST
        call     [rcx]CORINFO_HELP_ARRADDR_ST
-       mov      eax, dword ptr [rbp-0x40]
-       mov      edx, dword ptr [rbp-0x3C]
+       mov      eax, dword ptr [rbp-0x100]
+       mov      edx, dword ptr [rbp-0xFC]
        jmp      SHORT G_M17172_IG07
-						;; size=101 bbWeight=2 PerfScore 61.50
+						;; size=119 bbWeight=2 PerfScore 61.50
 G_M17172_IG06:
-       mov      dword ptr [rbp-0x3C], edx
+       mov      dword ptr [rbp-0xFC], edx
        mov      rdi, r13
        mov      rsi, rcx
        mov      rcx, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
        call     [rcx]System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
-       mov      eax, dword ptr [rbp-0x40]
-       mov      edx, dword ptr [rbp-0x3C]
-						;; size=27 bbWeight=2 PerfScore 13.50
+       mov      eax, dword ptr [rbp-0x100]
+       mov      edx, dword ptr [rbp-0xFC]
+						;; size=36 bbWeight=2 PerfScore 13.50
 G_M17172_IG07:
        mov      edi, dword ptr [r12+0x14]
        cmp      eax, edi
-       jne      G_M17172_IG58
+       jne      G_M17172_IG64
        mov      edi, dword ptr [r12+0x10]
        cmp      edx, edi
        jae      SHORT G_M17172_IG08
        mov      rdi, gword ptr [r12+0x08]
-       cmp      edx, dword ptr [rdi+0x08]
-       jae      G_M17172_IG57
+       cmp      dword ptr [rdi+0x08], edx
+       jbe      SHORT G_M17172_IG08
        mov      esi, edx
        mov      rcx, gword ptr [rdi+8*rsi+0x10]
        inc      edx
-       mov      dword ptr [rbp-0x3C], edx
+       mov      dword ptr [rbp-0xFC], edx
        jmp      G_M17172_IG05
-						;; size=53 bbWeight=4 PerfScore 72.00
+						;; size=52 bbWeight=4 PerfScore 72.00
 G_M17172_IG08:
        mov      rdx, gword ptr [rbx+0x28]
        cmp      r15d, dword ptr [rdx+0x08]
-       jae      G_M17172_IG57
+       jae      G_M17172_IG63
        mov      edi, r15d
        mov      r12, gword ptr [rdx+8*rdi+0x10]
        mov      eax, dword ptr [r12+0x14]
        xor      edx, edx
-       mov      dword ptr [rbp-0x48], eax
+       mov      dword ptr [rbp-0x108], eax
        jmp      G_M17172_IG11
-						;; size=37 bbWeight=4 PerfScore 54.00
+						;; size=40 bbWeight=4 PerfScore 54.00
 G_M17172_IG09:
-       lea      rdx, [rbp-0x38]
+       lea      rdx, [rbp-0xF8]
        mov      rdi, r14
-       mov      gword ptr [rbp-0xF8], rcx
+       mov      gword ptr [rbp-0x188], rcx
        mov      rsi, rcx
        mov      r8, 0xD1FFAB1E      ; code for System.Collections.Generic.HashSet`1[System.__Canon]:AddIfNotPresent(System.__Canon,byref):ubyte:this
        call     [r8]System.Collections.Generic.HashSet`1[System.__Canon]:AddIfNotPresent(System.__Canon,byref):ubyte:this
        test     eax, eax
-       mov      eax, dword ptr [rbp-0x48]
-       mov      edx, dword ptr [rbp-0x44]
+       mov      eax, dword ptr [rbp-0x108]
+       mov      edx, dword ptr [rbp-0x104]
        je       SHORT G_M17172_IG11
-       mov      rcx, gword ptr [rbp-0xF8]
+       mov      rcx, gword ptr [rbp-0x188]
        inc      dword ptr [r13+0x14]
        mov      rdi, gword ptr [r13+0x08]
        mov      esi, dword ptr [r13+0x10]
        cmp      dword ptr [rdi+0x08], esi
        jbe      SHORT G_M17172_IG10
-       mov      dword ptr [rbp-0x44], edx
+       mov      dword ptr [rbp-0x104], edx
        lea      r8d, [rsi+0x01]
        mov      dword ptr [r13+0x10], r8d
        movsxd   rsi, esi
        mov      rdx, rcx
        mov      rcx, 0xD1FFAB1E      ; code for CORINFO_HELP_ARRADDR_ST
        call     [rcx]CORINFO_HELP_ARRADDR_ST
-       mov      eax, dword ptr [rbp-0x48]
-       mov      edx, dword ptr [rbp-0x44]
+       mov      eax, dword ptr [rbp-0x108]
+       mov      edx, dword ptr [rbp-0x104]
        jmp      SHORT G_M17172_IG11
-						;; size=101 bbWeight=2 PerfScore 61.50
+						;; size=119 bbWeight=2 PerfScore 61.50
 G_M17172_IG10:
-       mov      dword ptr [rbp-0x44], edx
+       mov      dword ptr [rbp-0x104], edx
        mov      rdi, r13
        mov      rsi, rcx
        mov      rcx, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
        call     [rcx]System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
-       mov      eax, dword ptr [rbp-0x48]
-       mov      edx, dword ptr [rbp-0x44]
-						;; size=27 bbWeight=2 PerfScore 13.50
+       mov      eax, dword ptr [rbp-0x108]
+       mov      edx, dword ptr [rbp-0x104]
+						;; size=36 bbWeight=2 PerfScore 13.50
 G_M17172_IG11:
        mov      edi, dword ptr [r12+0x14]
        cmp      eax, edi
-       jne      G_M17172_IG58
+       jne      G_M17172_IG64
        mov      edi, dword ptr [r12+0x10]
        cmp      edx, edi
-       jae      SHORT G_M17172_IG14
+       jae      SHORT G_M17172_IG12
        mov      rdi, gword ptr [r12+0x08]
-       cmp      edx, dword ptr [rdi+0x08]
-       jae      G_M17172_IG57
+       cmp      dword ptr [rdi+0x08], edx
+       jbe      SHORT G_M17172_IG12
        mov      esi, edx
        mov      rcx, gword ptr [rdi+8*rsi+0x10]
        inc      edx
-       mov      dword ptr [rbp-0x44], edx
+       mov      dword ptr [rbp-0x104], edx
        jmp      G_M17172_IG09
-						;; size=53 bbWeight=4 PerfScore 72.00
+						;; size=52 bbWeight=4 PerfScore 72.00
 G_M17172_IG12:
+       cmp      dword ptr [r13+0x10], 0
+       je       G_M17172_IG57
+						;; size=11 bbWeight=4 PerfScore 16.00
+G_M17172_IG13:
+       mov      rdi, gword ptr [rbx+0x30]
+       cmp      r15d, dword ptr [rdi+0x08]
+       jae      G_M17172_IG63
+       mov      esi, r15d
+       mov      rdi, gword ptr [rdi+8*rsi+0x10]
+       mov      esi, dword ptr [rdi+0x14]
+       mov      gword ptr [rbp-0x40], rdi
+       xor      rdi, rdi
+       mov      gword ptr [rbp-0x38], rdi
+						;; size=35 bbWeight=0.50 PerfScore 6.25
+G_M17172_IG14:
+       mov      dword ptr [rbp-0x30], edi
+       mov      dword ptr [rbp-0x2C], esi
+       jmp      SHORT G_M17172_IG17
+						;; size=8 bbWeight=0.50 PerfScore 2.00
+G_M17172_IG15:
        lea      eax, [rsi+0x01]
        mov      dword ptr [r13+0x10], eax
        movsxd   rsi, esi
        mov      rax, 0xD1FFAB1E      ; code for CORINFO_HELP_ARRADDR_ST
        call     [rax]CORINFO_HELP_ARRADDR_ST
-       jmp      SHORT G_M17172_IG14
+       jmp      SHORT G_M17172_IG12
 						;; size=24 bbWeight=0.50 PerfScore 3.50
-G_M17172_IG13:
+G_M17172_IG16:
        mov      rdi, r13
        mov      rsi, rdx
        mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
        call     [rax]System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
-						;; size=18 bbWeight=0.50 PerfScore 1.88
-G_M17172_IG14:
-       cmp      dword ptr [r13+0x10], 0
-       je       G_M17172_IG51
-       mov      rdi, gword ptr [rbx+0x30]
-       cmp      r15d, dword ptr [rdi+0x08]
-       jae      G_M17172_IG57
-       mov      eax, r15d
-       mov      r14, gword ptr [rdi+8*rax+0x10]
-       mov      r12d, dword ptr [r14+0x14]
-       xor      edi, edi
-       jmp      G_M17172_IG25
-						;; size=44 bbWeight=0.50 PerfScore 8.25
-G_M17172_IG15:
-       mov      gword ptr [rbp-0x88], rax
+       jmp      SHORT G_M17172_IG12
+						;; size=20 bbWeight=0.50 PerfScore 2.88
+G_M17172_IG17:
+       lea      rdi, [rbp-0x40]
+       mov      r14, 0xD1FFAB1E      ; System.Collections.Generic.List`1+Enumerator[Microsoft.CSharp.RuntimeBinder.Semantics.CType]
+       mov      rsi, r14
+       mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       call     [rax]System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       test     eax, eax
+       je       G_M17172_IG31
+						;; size=37 bbWeight=0.50 PerfScore 2.75
+G_M17172_IG18:
+       mov      r12, gword ptr [rbp-0x38]
        mov      rdi, 0xD1FFAB1E      ; System.Collections.Generic.List`1[Microsoft.CSharp.RuntimeBinder.Semantics.CType]
        call     CORINFO_HELP_NEWSFAST
-       mov      gword ptr [rbp-0xB0], rax
+       mov      gword ptr [rbp-0x140], rax
        mov      rdi, 0xD1FFAB1E      ; data for System.Collections.Generic.List`1[Microsoft.CSharp.RuntimeBinder.Semantics.CType]:s_emptyArray
        mov      rsi, gword ptr [rdi]
        lea      rdi, bword ptr [rax+0x08]
        call     CORINFO_HELP_ASSIGN_REF
-       mov      rax, gword ptr [rbp-0xB0]
-       mov      gword ptr [rbp-0x90], rax
+       mov      rax, gword ptr [rbp-0x140]
+       mov      gword ptr [rbp-0x110], rax
        mov      rdi, r13
-       mov      ecx, dword ptr [rdi+0x14]
-       xor      edi, edi
-       mov      dword ptr [rbp-0x54], ecx
-       jmp      G_M17172_IG20
-						;; size=81 bbWeight=2 PerfScore 29.00
-G_M17172_IG16:
-       cmp      gword ptr [rbp-0x88], rdx
-       mov      gword ptr [rbp-0x100], rdx
-       je       G_M17172_IG18
-       lea      r8, bword ptr [rbx+0x50]
-       mov      bword ptr [rbp-0xC0], r8
+       mov      edi, dword ptr [rdi+0x14]
+       mov      gword ptr [rbp-0x58], r13
+       xor      rsi, rsi
+       mov      gword ptr [rbp-0x50], rsi
+						;; size=78 bbWeight=4 PerfScore 54.00
+G_M17172_IG19:
+       mov      dword ptr [rbp-0x48], esi
+       mov      dword ptr [rbp-0x44], edi
+       lea      rdi, [rbp-0x58]
+       mov      rsi, r14
+       mov      rcx, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       call     [rcx]System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       test     eax, eax
+       je       G_M17172_IG25
+						;; size=33 bbWeight=4 PerfScore 29.00
+G_M17172_IG20:
+       mov      rax, gword ptr [rbp-0x50]
+       mov      gword ptr [rbp-0x118], rax
+       cmp      r12, rax
+       je       G_M17172_IG24
+						;; size=20 bbWeight=16 PerfScore 52.00
+G_M17172_IG21:
+       lea      rcx, bword ptr [rbx+0x50]
+       mov      bword ptr [rbp-0x150], rcx
        mov      rdi, 0xD1FFAB1E      ; Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder+ImplicitConversion
        call     CORINFO_HELP_NEWSFAST
        mov      rdx, rax
-       mov      gword ptr [rbp-0xC8], rdx
+       mov      gword ptr [rbp-0x158], rdx
        lea      rdi, bword ptr [rdx+0x30]
-       mov      rsi, bword ptr [rbp-0xC0]
+       mov      rsi, bword ptr [rbp-0x150]
        call     CORINFO_HELP_ASSIGN_BYREF
        movsq    
        xor      rdi, rdi
        mov      gword ptr [rdx+0x10], rdi
        lea      rdi, bword ptr [rdx+0x18]
-       mov      rsi, gword ptr [rbp-0x88]
+       mov      rsi, r12
        call     CORINFO_HELP_ASSIGN_REF
-       mov      rax, gword ptr [rbp-0xC8]
+       mov      rax, gword ptr [rbp-0x158]
        lea      rdi, bword ptr [rax+0x20]
-       mov      rsi, gword ptr [rbp-0x100]
+       mov      rsi, gword ptr [rbp-0x118]
        call     CORINFO_HELP_ASSIGN_REF
-       mov      rax, gword ptr [rbp-0xC8]
+       mov      rax, gword ptr [rbp-0x158]
        mov      byte  ptr [rax+0x2C], 0
        xor      edi, edi
        mov      dword ptr [rax+0x28], edi
-						;; size=135 bbWeight=8 PerfScore 176.00
-G_M17172_IG17:
+						;; size=111 bbWeight=8 PerfScore 138.00
+G_M17172_IG22:
        mov      gword ptr [rax+0x08], rdi
        mov      rdi, rax
        mov      rax, 0xD1FFAB1E      ; code for Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder+ImplicitConversion:Bind():ubyte:this
        call     [rax]Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder+ImplicitConversion:Bind():ubyte:this
        test     eax, eax
-       mov      ecx, dword ptr [rbp-0x54]
-       mov      edi, dword ptr [rbp-0x50]
-       jne      SHORT G_M17172_IG20
-       mov      r8, gword ptr [rbp-0x100]
-       mov      rax, gword ptr [rbp-0x90]
+       jne      SHORT G_M17172_IG24
+       mov      rax, gword ptr [rbp-0x110]
        inc      dword ptr [rax+0x14]
-       mov      rdx, gword ptr [rax+0x08]
+       mov      rdi, gword ptr [rax+0x08]
        mov      esi, dword ptr [rax+0x10]
-       cmp      dword ptr [rdx+0x08], esi
-       jbe      SHORT G_M17172_IG19
-       mov      dword ptr [rbp-0x50], edi
-       lea      r9d, [rsi+0x01]
-       mov      dword ptr [rax+0x10], r9d
+       cmp      dword ptr [rdi+0x08], esi
+       jbe      SHORT G_M17172_IG23
+       lea      edx, [rsi+0x01]
+       mov      dword ptr [rax+0x10], edx
        movsxd   rsi, esi
-       mov      rdi, rdx
-       mov      rdx, r8
-       mov      r8, 0xD1FFAB1E      ; code for CORINFO_HELP_ARRADDR_ST
-       call     [r8]CORINFO_HELP_ARRADDR_ST
-       mov      ecx, dword ptr [rbp-0x54]
-       mov      edi, dword ptr [rbp-0x50]
-       jmp      SHORT G_M17172_IG20
-						;; size=99 bbWeight=8 PerfScore 250.00
-G_M17172_IG18:
-       mov      ecx, dword ptr [rbp-0x54]
-       mov      edi, dword ptr [rbp-0x50]
-       jmp      SHORT G_M17172_IG20
-						;; size=8 bbWeight=4 PerfScore 16.00
-G_M17172_IG19:
-       mov      dword ptr [rbp-0x50], edi
+       mov      rdx, gword ptr [rbp-0x118]
+       mov      rcx, 0xD1FFAB1E      ; code for CORINFO_HELP_ARRADDR_ST
+       call     [rcx]CORINFO_HELP_ARRADDR_ST
+       jmp      SHORT G_M17172_IG24
+						;; size=75 bbWeight=8 PerfScore 206.00
+G_M17172_IG23:
        mov      rdi, rax
-       mov      rsi, r8
-       mov      rdx, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
-       call     [rdx]System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
-       mov      ecx, dword ptr [rbp-0x54]
-       mov      edi, dword ptr [rbp-0x50]
-						;; size=27 bbWeight=8 PerfScore 54.00
-G_M17172_IG20:
-       mov      edx, dword ptr [r13+0x14]
-       cmp      ecx, edx
-       jne      G_M17172_IG58
-       mov      edx, dword ptr [r13+0x10]
-       cmp      edi, edx
-       jae      SHORT G_M17172_IG21
-       mov      rdx, gword ptr [r13+0x08]
-       cmp      edi, dword ptr [rdx+0x08]
-       jae      G_M17172_IG57
-       mov      esi, edi
-       mov      rdx, gword ptr [rdx+8*rsi+0x10]
-       inc      edi
-       mov      dword ptr [rbp-0x50], edi
-       jmp      G_M17172_IG16
-						;; size=50 bbWeight=16 PerfScore 288.00
-G_M17172_IG21:
-       mov      rax, gword ptr [rbp-0x90]
-       mov      r9d, dword ptr [rax+0x14]
-       xor      r8d, r8d
-       jmp      SHORT G_M17172_IG23
-						;; size=16 bbWeight=16 PerfScore 84.00
-G_M17172_IG22:
-       mov      dword ptr [rbp-0x4C], edi
+       mov      rsi, gword ptr [rbp-0x118]
+       mov      rcx, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
+       call     [rcx]System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
+						;; size=22 bbWeight=8 PerfScore 36.00
+G_M17172_IG24:
+       lea      rdi, [rbp-0x58]
+       mov      rsi, r14
+       mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       call     [rax]System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       test     eax, eax
+       jne      G_M17172_IG20
+						;; size=27 bbWeight=16 PerfScore 84.00
+G_M17172_IG25:
+       mov      r12, gword ptr [rbp-0x110]
+       mov      edi, dword ptr [r12+0x14]
+       mov      gword ptr [rbp-0x70], r12
+       xor      rsi, rsi
+       mov      gword ptr [rbp-0x68], rsi
+						;; size=22 bbWeight=4 PerfScore 21.00
+G_M17172_IG26:
+       mov      dword ptr [rbp-0x60], esi
+       mov      dword ptr [rbp-0x5C], edi
+       lea      rdi, [rbp-0x70]
+       mov      rsi, r14
+       mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       call     [rax]System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       test     eax, eax
+       je       SHORT G_M17172_IG30
+						;; size=29 bbWeight=4 PerfScore 29.00
+G_M17172_IG27:
+       mov      rdx, gword ptr [rbp-0x68]
        mov      r8d, dword ptr [r13+0x10]
        mov      rsi, gword ptr [r13+0x08]
        mov      rdi, 0xD1FFAB1E      ; System.Array:IndexOf[Microsoft.CSharp.RuntimeBinder.Semantics.CType](Microsoft.CSharp.RuntimeBinder.Semantics.CType[],Microsoft.CSharp.RuntimeBinder.Semantics.CType,int,int):int
        xor      ecx, ecx
-       mov      r10, 0xD1FFAB1E      ; code for System.Array:IndexOf[System.__Canon](System.__Canon[],System.__Canon,int,int):int
-       call     [r10]System.Array:IndexOf[System.__Canon](System.__Canon[],System.__Canon,int,int):int
+       mov      rax, 0xD1FFAB1E      ; code for System.Array:IndexOf[System.__Canon](System.__Canon[],System.__Canon,int,int):int
+       call     [rax]System.Array:IndexOf[System.__Canon](System.__Canon[],System.__Canon,int,int):int
        test     eax, eax
-       jl       SHORT G_M17172_IG24
-       mov      esi, eax
+       jl       SHORT G_M17172_IG29
+						;; size=40 bbWeight=16 PerfScore 160.00
+G_M17172_IG28:
        mov      rdi, r13
-       mov      rcx, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1[System.__Canon]:RemoveAt(int):this
-       call     [rcx]System.Collections.Generic.List`1[System.__Canon]:RemoveAt(int):this
-       mov      rax, gword ptr [rbp-0x108]
-       mov      r8d, dword ptr [rbp-0x58]
-       mov      r9d, dword ptr [rbp-0x5C]
-						;; size=72 bbWeight=8 PerfScore 134.00
-G_M17172_IG23:
-       mov      esi, dword ptr [rax+0x14]
-       cmp      r9d, esi
-       jne      G_M17172_IG58
-       mov      esi, dword ptr [rax+0x10]
-       cmp      r8d, esi
-       mov      dword ptr [rbp-0x5C], r9d
-       mov      edi, dword ptr [rbp-0x4C]
-       jae      SHORT G_M17172_IG25
-       mov      gword ptr [rbp-0x108], rax
-       mov      rsi, gword ptr [rax+0x08]
-       cmp      r8d, dword ptr [rsi+0x08]
-       jae      G_M17172_IG57
-       mov      edx, r8d
-       mov      rdx, gword ptr [rsi+8*rdx+0x10]
-       inc      r8d
-       mov      dword ptr [rbp-0x58], r8d
-       jmp      G_M17172_IG22
-						;; size=68 bbWeight=16 PerfScore 336.00
-G_M17172_IG24:
-       mov      rax, gword ptr [rbp-0x108]
-       mov      r8d, dword ptr [rbp-0x58]
-       mov      r9d, dword ptr [rbp-0x5C]
-       jmp      SHORT G_M17172_IG23
-						;; size=17 bbWeight=4 PerfScore 20.00
-G_M17172_IG25:
-       mov      eax, dword ptr [r14+0x14]
-       cmp      r12d, eax
-       jne      G_M17172_IG58
-						;; size=13 bbWeight=16 PerfScore 52.00
-G_M17172_IG26:
-       mov      eax, dword ptr [r14+0x10]
-       cmp      edi, eax
-       jae      SHORT G_M17172_IG27
-       mov      rax, gword ptr [r14+0x08]
-       cmp      edi, dword ptr [rax+0x08]
-       jae      G_M17172_IG57
-       mov      ecx, edi
-       mov      rax, gword ptr [rax+8*rcx+0x10]
-       inc      edi
-       mov      dword ptr [rbp-0x4C], edi
-       jmp      G_M17172_IG15
-						;; size=38 bbWeight=4 PerfScore 59.00
-G_M17172_IG27:
+       mov      esi, eax
+       mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1[System.__Canon]:RemoveAt(int):this
+       call     [rax]System.Collections.Generic.List`1[System.__Canon]:RemoveAt(int):this
+						;; size=17 bbWeight=8 PerfScore 30.00
+G_M17172_IG29:
+       lea      rdi, [rbp-0x70]
+       mov      rsi, r14
+       mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       call     [rax]System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       test     eax, eax
+       jne      SHORT G_M17172_IG27
+						;; size=23 bbWeight=16 PerfScore 84.00
+G_M17172_IG30:
+       lea      rdi, [rbp-0x40]
+       mov      rsi, r14
+       mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       call     [rax]System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       test     eax, eax
+       jne      G_M17172_IG18
+						;; size=27 bbWeight=4 PerfScore 21.00
+G_M17172_IG31:
        mov      rdi, gword ptr [rbx+0x28]
        cmp      r15d, dword ptr [rdi+0x08]
-       jae      G_M17172_IG57
-       mov      eax, r15d
-       mov      r14, gword ptr [rdi+8*rax+0x10]
-       mov      r12d, dword ptr [r14+0x14]
-       xor      edi, edi
-       jmp      G_M17172_IG38
-						;; size=33 bbWeight=4 PerfScore 50.00
-G_M17172_IG28:
-       mov      gword ptr [rbp-0x98], rax
+       jae      G_M17172_IG63
+       mov      esi, r15d
+       mov      rdi, gword ptr [rdi+8*rsi+0x10]
+       mov      esi, dword ptr [rdi+0x14]
+       mov      gword ptr [rbp-0x88], rdi
+       xor      rdi, rdi
+       mov      gword ptr [rbp-0x80], rdi
+						;; size=38 bbWeight=0.50 PerfScore 6.25
+G_M17172_IG32:
+       mov      dword ptr [rbp-0x78], edi
+       mov      dword ptr [rbp-0x74], esi
+       lea      rdi, [rbp-0x88]
+       mov      rsi, r14
+       mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       call     [rax]System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       test     eax, eax
+       je       G_M17172_IG46
+						;; size=36 bbWeight=0.50 PerfScore 3.62
+G_M17172_IG33:
+       mov      r12, gword ptr [rbp-0x80]
        mov      rdi, 0xD1FFAB1E      ; System.Collections.Generic.List`1[Microsoft.CSharp.RuntimeBinder.Semantics.CType]
        call     CORINFO_HELP_NEWSFAST
-       mov      gword ptr [rbp-0xB8], rax
+       mov      gword ptr [rbp-0x148], rax
        mov      rdi, 0xD1FFAB1E      ; data for System.Collections.Generic.List`1[Microsoft.CSharp.RuntimeBinder.Semantics.CType]:s_emptyArray
        mov      rsi, gword ptr [rdi]
        lea      rdi, bword ptr [rax+0x08]
        call     CORINFO_HELP_ASSIGN_REF
-       mov      rax, gword ptr [rbp-0xB8]
-       mov      gword ptr [rbp-0xA0], rax
+       mov      rax, gword ptr [rbp-0x148]
+       mov      gword ptr [rbp-0x120], rax
        mov      rdi, r13
-       mov      ecx, dword ptr [rdi+0x14]
-       xor      edi, edi
-       mov      dword ptr [rbp-0x68], ecx
-       jmp      G_M17172_IG33
-						;; size=81 bbWeight=2 PerfScore 29.00
-G_M17172_IG29:
-       cmp      gword ptr [rbp-0x98], rdx
-       mov      gword ptr [rbp-0x110], rdx
-       je       G_M17172_IG31
-       lea      r8, bword ptr [rbx+0x50]
-       mov      bword ptr [rbp-0xD0], r8
+       mov      edi, dword ptr [rdi+0x14]
+       mov      gword ptr [rbp-0xA0], r13
+       xor      rsi, rsi
+       mov      gword ptr [rbp-0x98], rsi
+						;; size=84 bbWeight=4 PerfScore 54.00
+G_M17172_IG34:
+       mov      dword ptr [rbp-0x90], esi
+       mov      dword ptr [rbp-0x8C], edi
+       lea      rdi, [rbp-0xA0]
+       mov      rsi, r14
+       mov      rcx, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       call     [rcx]System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       test     eax, eax
+       je       G_M17172_IG40
+						;; size=42 bbWeight=4 PerfScore 29.00
+G_M17172_IG35:
+       mov      rax, gword ptr [rbp-0x98]
+       mov      gword ptr [rbp-0x128], rax
+       cmp      r12, rax
+       je       G_M17172_IG39
+						;; size=23 bbWeight=16 PerfScore 52.00
+G_M17172_IG36:
+       lea      rcx, bword ptr [rbx+0x50]
+       mov      bword ptr [rbp-0x160], rcx
        mov      rdi, 0xD1FFAB1E      ; Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder+ImplicitConversion
        call     CORINFO_HELP_NEWSFAST
        mov      rdx, rax
-       mov      gword ptr [rbp-0xD8], rdx
+       mov      gword ptr [rbp-0x168], rdx
        lea      rdi, bword ptr [rdx+0x30]
-       mov      rsi, bword ptr [rbp-0xD0]
+       mov      rsi, bword ptr [rbp-0x160]
        call     CORINFO_HELP_ASSIGN_BYREF
        movsq    
        xor      rdi, rdi
        mov      gword ptr [rdx+0x10], rdi
        lea      rdi, bword ptr [rdx+0x18]
-       mov      rsi, gword ptr [rbp-0x110]
+       mov      rsi, gword ptr [rbp-0x128]
        call     CORINFO_HELP_ASSIGN_REF
-       mov      rax, gword ptr [rbp-0xD8]
+       mov      rax, gword ptr [rbp-0x168]
        lea      rdi, bword ptr [rax+0x20]
-       mov      rsi, gword ptr [rbp-0x98]
+       mov      rsi, r12
        call     CORINFO_HELP_ASSIGN_REF
-       mov      rax, gword ptr [rbp-0xD8]
+       mov      rax, gword ptr [rbp-0x168]
        mov      byte  ptr [rax+0x2C], 0
        xor      edi, edi
        mov      dword ptr [rax+0x28], edi
-						;; size=135 bbWeight=8 PerfScore 176.00
-G_M17172_IG30:
+						;; size=111 bbWeight=8 PerfScore 138.00
+G_M17172_IG37:
        mov      gword ptr [rax+0x08], rdi
        mov      rdi, rax
        mov      rax, 0xD1FFAB1E      ; code for Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder+ImplicitConversion:Bind():ubyte:this
        call     [rax]Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder+ImplicitConversion:Bind():ubyte:this
        test     eax, eax
-       mov      ecx, dword ptr [rbp-0x68]
-       mov      edi, dword ptr [rbp-0x64]
-       jne      SHORT G_M17172_IG33
-       mov      r8, gword ptr [rbp-0x110]
-       mov      rax, gword ptr [rbp-0xA0]
+       jne      SHORT G_M17172_IG39
+       mov      rax, gword ptr [rbp-0x120]
        inc      dword ptr [rax+0x14]
-       mov      rdx, gword ptr [rax+0x08]
+       mov      rdi, gword ptr [rax+0x08]
        mov      esi, dword ptr [rax+0x10]
-       cmp      dword ptr [rdx+0x08], esi
-       jbe      SHORT G_M17172_IG32
-       mov      dword ptr [rbp-0x64], edi
-       lea      r9d, [rsi+0x01]
-       mov      dword ptr [rax+0x10], r9d
+       cmp      dword ptr [rdi+0x08], esi
+       jbe      SHORT G_M17172_IG38
+       lea      edx, [rsi+0x01]
+       mov      dword ptr [rax+0x10], edx
        movsxd   rsi, esi
-       mov      rdi, rdx
-       mov      rdx, r8
-       mov      r8, 0xD1FFAB1E      ; code for CORINFO_HELP_ARRADDR_ST
-       call     [r8]CORINFO_HELP_ARRADDR_ST
-       mov      ecx, dword ptr [rbp-0x68]
-       mov      edi, dword ptr [rbp-0x64]
-       jmp      SHORT G_M17172_IG33
-						;; size=99 bbWeight=8 PerfScore 250.00
-G_M17172_IG31:
-       mov      ecx, dword ptr [rbp-0x68]
-       mov      edi, dword ptr [rbp-0x64]
-       jmp      SHORT G_M17172_IG33
-						;; size=8 bbWeight=4 PerfScore 16.00
-G_M17172_IG32:
-       mov      dword ptr [rbp-0x64], edi
+       mov      rdx, gword ptr [rbp-0x128]
+       mov      rcx, 0xD1FFAB1E      ; code for CORINFO_HELP_ARRADDR_ST
+       call     [rcx]CORINFO_HELP_ARRADDR_ST
+       jmp      SHORT G_M17172_IG39
+						;; size=75 bbWeight=8 PerfScore 206.00
+G_M17172_IG38:
        mov      rdi, rax
-       mov      rsi, r8
-       mov      rdx, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
-       call     [rdx]System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
-       mov      ecx, dword ptr [rbp-0x68]
-       mov      edi, dword ptr [rbp-0x64]
-						;; size=27 bbWeight=8 PerfScore 54.00
-G_M17172_IG33:
-       mov      edx, dword ptr [r13+0x14]
-       cmp      ecx, edx
-       jne      G_M17172_IG58
-       mov      edx, dword ptr [r13+0x10]
-       cmp      edi, edx
-       jae      SHORT G_M17172_IG34
-       mov      rdx, gword ptr [r13+0x08]
-       cmp      edi, dword ptr [rdx+0x08]
-       jae      G_M17172_IG57
-       mov      esi, edi
-       mov      rdx, gword ptr [rdx+8*rsi+0x10]
-       inc      edi
-       mov      dword ptr [rbp-0x64], edi
-       jmp      G_M17172_IG29
-						;; size=50 bbWeight=16 PerfScore 288.00
-G_M17172_IG34:
-       mov      rax, gword ptr [rbp-0xA0]
-       mov      r9d, dword ptr [rax+0x14]
-       xor      r8d, r8d
-       jmp      SHORT G_M17172_IG36
-						;; size=16 bbWeight=16 PerfScore 84.00
-G_M17172_IG35:
-       mov      dword ptr [rbp-0x60], edi
+       mov      rsi, gword ptr [rbp-0x128]
+       mov      rcx, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
+       call     [rcx]System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
+						;; size=22 bbWeight=8 PerfScore 36.00
+G_M17172_IG39:
+       lea      rdi, [rbp-0xA0]
+       mov      rsi, r14
+       mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       call     [rax]System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       test     eax, eax
+       jne      G_M17172_IG35
+						;; size=30 bbWeight=16 PerfScore 84.00
+G_M17172_IG40:
+       mov      r12, gword ptr [rbp-0x120]
+       mov      edi, dword ptr [r12+0x14]
+       mov      gword ptr [rbp-0xB8], r12
+       xor      rsi, rsi
+       mov      gword ptr [rbp-0xB0], rsi
+						;; size=28 bbWeight=4 PerfScore 21.00
+G_M17172_IG41:
+       mov      dword ptr [rbp-0xA8], esi
+       mov      dword ptr [rbp-0xA4], edi
+       lea      rdi, [rbp-0xB8]
+       mov      rsi, r14
+       mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       call     [rax]System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       test     eax, eax
+       je       SHORT G_M17172_IG45
+						;; size=38 bbWeight=4 PerfScore 29.00
+G_M17172_IG42:
+       mov      rdx, gword ptr [rbp-0xB0]
        mov      r8d, dword ptr [r13+0x10]
        mov      rsi, gword ptr [r13+0x08]
        mov      rdi, 0xD1FFAB1E      ; System.Array:IndexOf[Microsoft.CSharp.RuntimeBinder.Semantics.CType](Microsoft.CSharp.RuntimeBinder.Semantics.CType[],Microsoft.CSharp.RuntimeBinder.Semantics.CType,int,int):int
        xor      ecx, ecx
-       mov      r10, 0xD1FFAB1E      ; code for System.Array:IndexOf[System.__Canon](System.__Canon[],System.__Canon,int,int):int
-       call     [r10]System.Array:IndexOf[System.__Canon](System.__Canon[],System.__Canon,int,int):int
+       mov      rax, 0xD1FFAB1E      ; code for System.Array:IndexOf[System.__Canon](System.__Canon[],System.__Canon,int,int):int
+       call     [rax]System.Array:IndexOf[System.__Canon](System.__Canon[],System.__Canon,int,int):int
        test     eax, eax
-       jl       SHORT G_M17172_IG37
+       jl       SHORT G_M17172_IG44
+						;; size=43 bbWeight=16 PerfScore 160.00
+G_M17172_IG43:
+       mov      rdi, r13
        mov      esi, eax
+       mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1[System.__Canon]:RemoveAt(int):this
+       call     [rax]System.Collections.Generic.List`1[System.__Canon]:RemoveAt(int):this
+						;; size=17 bbWeight=8 PerfScore 30.00
+G_M17172_IG44:
+       lea      rdi, [rbp-0xB8]
+       mov      rsi, r14
+       mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       call     [rax]System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       test     eax, eax
+       jne      SHORT G_M17172_IG42
+						;; size=26 bbWeight=16 PerfScore 84.00
+G_M17172_IG45:
+       lea      rdi, [rbp-0x88]
+       mov      rsi, r14
+       mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       call     [rax]System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       test     eax, eax
+       jne      G_M17172_IG33
+						;; size=30 bbWeight=4 PerfScore 21.00
+G_M17172_IG46:
+       xor      r12, r12
        mov      rdi, r13
-       mov      rcx, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1[System.__Canon]:RemoveAt(int):this
-       call     [rcx]System.Collections.Generic.List`1[System.__Canon]:RemoveAt(int):this
-       mov      rax, gword ptr [rbp-0x118]
-       mov      r8d, dword ptr [rbp-0x6C]
-       mov      r9d, dword ptr [rbp-0x70]
-						;; size=72 bbWeight=8 PerfScore 134.00
-G_M17172_IG36:
-       mov      esi, dword ptr [rax+0x14]
-       cmp      r9d, esi
-       jne      G_M17172_IG58
-       mov      esi, dword ptr [rax+0x10]
-       cmp      r8d, esi
-       mov      dword ptr [rbp-0x70], r9d
-       mov      edi, dword ptr [rbp-0x60]
-       jae      SHORT G_M17172_IG38
-       mov      gword ptr [rbp-0x118], rax
-       mov      rsi, gword ptr [rax+0x08]
-       cmp      r8d, dword ptr [rsi+0x08]
-       jae      G_M17172_IG57
-       mov      edx, r8d
-       mov      rdx, gword ptr [rsi+8*rdx+0x10]
-       inc      r8d
-       mov      dword ptr [rbp-0x6C], r8d
-       jmp      G_M17172_IG35
-						;; size=68 bbWeight=16 PerfScore 336.00
-G_M17172_IG37:
-       mov      rax, gword ptr [rbp-0x118]
-       mov      r8d, dword ptr [rbp-0x6C]
-       mov      r9d, dword ptr [rbp-0x70]
-       jmp      SHORT G_M17172_IG36
-						;; size=17 bbWeight=4 PerfScore 20.00
-G_M17172_IG38:
-       mov      eax, dword ptr [r14+0x14]
-       cmp      r12d, eax
-       jne      G_M17172_IG58
-						;; size=13 bbWeight=16 PerfScore 52.00
-G_M17172_IG39:
-       mov      eax, dword ptr [r14+0x10]
-       cmp      edi, eax
-       jae      SHORT G_M17172_IG40
-       mov      rax, gword ptr [r14+0x08]
-       cmp      edi, dword ptr [rax+0x08]
-       jae      G_M17172_IG57
-       mov      ecx, edi
-       mov      rax, gword ptr [rax+8*rcx+0x10]
-       inc      edi
-       mov      dword ptr [rbp-0x60], edi
-       jmp      G_M17172_IG28
-						;; size=38 bbWeight=4 PerfScore 59.00
-G_M17172_IG40:
-       xor      r14, r14
+       mov      edi, dword ptr [rdi+0x14]
+       mov      gword ptr [rbp-0xD0], r13
+       xor      rsi, rsi
+       mov      gword ptr [rbp-0xC8], rsi
+						;; size=25 bbWeight=0.50 PerfScore 2.38
+G_M17172_IG47:
+       mov      dword ptr [rbp-0xC0], esi
+       mov      dword ptr [rbp-0xBC], edi
+       lea      rdi, [rbp-0xD0]
+       mov      rsi, r14
+       mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       call     [rax]System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       test     eax, eax
+       je       G_M17172_IG56
+						;; size=42 bbWeight=0.50 PerfScore 3.62
+G_M17172_IG48:
+       mov      rax, gword ptr [rbp-0xC8]
+       mov      gword ptr [rbp-0x130], rax
        mov      rdi, r13
-       mov      r12d, dword ptr [rdi+0x14]
-       xor      edi, edi
-       jmp      G_M17172_IG49
-						;; size=17 bbWeight=4 PerfScore 19.00
-G_M17172_IG41:
-       mov      gword ptr [rbp-0xA8], rcx
-       xor      edx, edx
-       mov      dword ptr [rbp-0x7C], eax
-       jmp      G_M17172_IG44
-						;; size=17 bbWeight=2 PerfScore 8.50
-G_M17172_IG42:
-       cmp      rcx, rsi
-       mov      gword ptr [rbp-0x120], rsi
-       je       G_M17172_IG46
-       lea      r8, bword ptr [rbx+0x50]
-       mov      bword ptr [rbp-0xE0], r8
+       mov      edi, dword ptr [rdi+0x14]
+       mov      gword ptr [rbp-0xE8], r13
+       xor      rsi, rsi
+       mov      gword ptr [rbp-0xE0], rsi
+						;; size=36 bbWeight=4 PerfScore 26.00
+G_M17172_IG49:
+       mov      dword ptr [rbp-0xD8], esi
+       mov      dword ptr [rbp-0xD4], edi
+       lea      rdi, [rbp-0xE8]
+       mov      rsi, r14
+       mov      rcx, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       call     [rcx]System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       test     eax, eax
+       je       G_M17172_IG54
+						;; size=42 bbWeight=4 PerfScore 29.00
+G_M17172_IG50:
+       mov      rax, gword ptr [rbp-0xE0]
+       mov      gword ptr [rbp-0x138], rax
+       cmp      gword ptr [rbp-0x130], rax
+       je       G_M17172_IG53
+						;; size=27 bbWeight=16 PerfScore 80.00
+G_M17172_IG51:
+       lea      rdx, bword ptr [rbx+0x50]
+       mov      bword ptr [rbp-0x170], rdx
        mov      rdi, 0xD1FFAB1E      ; Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder+ImplicitConversion
        call     CORINFO_HELP_NEWSFAST
        mov      rdx, rax
-       mov      gword ptr [rbp-0xE8], rdx
+       mov      gword ptr [rbp-0x178], rdx
        lea      rdi, bword ptr [rdx+0x30]
-       mov      rsi, bword ptr [rbp-0xE0]
+       mov      rsi, bword ptr [rbp-0x170]
        call     CORINFO_HELP_ASSIGN_BYREF
        movsq    
        xor      rdi, rdi
        mov      gword ptr [rdx+0x10], rdi
        lea      rdi, bword ptr [rdx+0x18]
-       mov      rsi, gword ptr [rbp-0x120]
+       mov      rsi, gword ptr [rbp-0x138]
        call     CORINFO_HELP_ASSIGN_REF
-       mov      rax, gword ptr [rbp-0xE8]
+       mov      rax, gword ptr [rbp-0x178]
        lea      rdi, bword ptr [rax+0x20]
-       mov      rsi, gword ptr [rbp-0xA8]
+       mov      rsi, gword ptr [rbp-0x130]
        call     CORINFO_HELP_ASSIGN_REF
-       mov      rax, gword ptr [rbp-0xE8]
+       mov      rax, gword ptr [rbp-0x178]
        mov      byte  ptr [rax+0x2C], 0
        xor      edi, edi
        mov      dword ptr [rax+0x28], edi
-						;; size=131 bbWeight=8 PerfScore 162.00
-G_M17172_IG43:
+						;; size=115 bbWeight=8 PerfScore 144.00
+G_M17172_IG52:
        mov      gword ptr [rax+0x08], rdi
        mov      rdi, rax
        mov      rax, 0xD1FFAB1E      ; code for Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder+ImplicitConversion:Bind():ubyte:this
        call     [rax]Microsoft.CSharp.RuntimeBinder.Semantics.ExpressionBinder+ImplicitConversion:Bind():ubyte:this
        test     eax, eax
-       mov      eax, dword ptr [rbp-0x7C]
-       mov      rcx, gword ptr [rbp-0xA8]
-       mov      edx, dword ptr [rbp-0x78]
-       je       SHORT G_M17172_IG45
-						;; size=36 bbWeight=8 PerfScore 70.00
-G_M17172_IG44:
-       mov      esi, dword ptr [r13+0x14]
-       cmp      eax, esi
-       jne      G_M17172_IG58
-       mov      esi, dword ptr [r13+0x10]
-       cmp      edx, esi
-       jae      SHORT G_M17172_IG47
-       mov      rsi, gword ptr [r13+0x08]
-       cmp      edx, dword ptr [rsi+0x08]
-       jae      G_M17172_IG57
-       mov      r8d, edx
-       mov      rsi, gword ptr [rsi+8*r8+0x10]
-       inc      edx
-       mov      dword ptr [rbp-0x78], edx
-       jmp      G_M17172_IG42
-						;; size=51 bbWeight=16 PerfScore 288.00
-G_M17172_IG45:
-       mov      edi, dword ptr [rbp-0x74]
-       jmp      SHORT G_M17172_IG49
-						;; size=5 bbWeight=4 PerfScore 12.00
-G_M17172_IG46:
-       mov      eax, dword ptr [rbp-0x7C]
-       mov      rcx, gword ptr [rbp-0xA8]
-       mov      edx, dword ptr [rbp-0x78]
-       jmp      SHORT G_M17172_IG44
-						;; size=15 bbWeight=4 PerfScore 20.00
-G_M17172_IG47:
-       test     r14, r14
-       jne      SHORT G_M17172_IG53
-						;; size=5 bbWeight=16 PerfScore 20.00
-G_M17172_IG48:
-       mov      r14, rcx
-       mov      edi, dword ptr [rbp-0x74]
-						;; size=6 bbWeight=2 PerfScore 2.50
-G_M17172_IG49:
-       mov      eax, dword ptr [r13+0x14]
-       cmp      r12d, eax
-       jne      G_M17172_IG58
-       mov      ecx, dword ptr [r13+0x10]
-       cmp      edi, ecx
-       jae      SHORT G_M17172_IG50
-       mov      rcx, gword ptr [r13+0x08]
-       cmp      edi, dword ptr [rcx+0x08]
-       jae      G_M17172_IG57
-       mov      edx, edi
-       mov      rcx, gword ptr [rcx+8*rdx+0x10]
-       inc      edi
-       mov      dword ptr [rbp-0x74], edi
-       jmp      G_M17172_IG41
-						;; size=51 bbWeight=4 PerfScore 72.00
-G_M17172_IG50:
-       test     r14, r14
-       jne      SHORT G_M17172_IG55
-						;; size=5 bbWeight=4 PerfScore 5.00
-G_M17172_IG51:
+       je       SHORT G_M17172_IG55
+						;; size=23 bbWeight=8 PerfScore 46.00
+G_M17172_IG53:
+       lea      rdi, [rbp-0xE8]
+       mov      rsi, r14
+       mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       call     [rax]System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       test     eax, eax
+       jne      G_M17172_IG50
+						;; size=30 bbWeight=16 PerfScore 84.00
+G_M17172_IG54:
+       test     r12, r12
+       jne      SHORT G_M17172_IG59
+       mov      r12, gword ptr [rbp-0x130]
+						;; size=12 bbWeight=2 PerfScore 4.50
+G_M17172_IG55:
+       lea      rdi, [rbp-0xD0]
+       mov      rsi, r14
+       mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       call     [rax]System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       test     eax, eax
+       jne      G_M17172_IG48
+						;; size=30 bbWeight=4 PerfScore 21.00
+G_M17172_IG56:
+       test     r12, r12
+       jne      SHORT G_M17172_IG61
+						;; size=5 bbWeight=0.50 PerfScore 0.62
+G_M17172_IG57:
        xor      eax, eax
 						;; size=2 bbWeight=0.50 PerfScore 0.12
-G_M17172_IG52:
-       add      rsp, 248
+G_M17172_IG58:
+       add      rsp, 360
        pop      rbx
        pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
 						;; size=18 bbWeight=0.50 PerfScore 2.12
-G_M17172_IG53:
+G_M17172_IG59:
        xor      eax, eax
 						;; size=2 bbWeight=0.50 PerfScore 0.12
-G_M17172_IG54:
-       add      rsp, 248
+G_M17172_IG60:
+       add      rsp, 360
        pop      rbx
        pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
 						;; size=18 bbWeight=0.50 PerfScore 2.12
-G_M17172_IG55:
-       mov      r13, gword ptr [rbx+0x38]
+G_M17172_IG61:
+       mov      r14, gword ptr [rbx+0x38]
        mov      rdi, gword ptr [rbx+0x50]
-       mov      rsi, r14
+       mov      rsi, r12
        mov      rax, 0xD1FFAB1E      ; code for Microsoft.CSharp.RuntimeBinder.Semantics.TypeManager:GetBestAccessibleType(Microsoft.CSharp.RuntimeBinder.Semantics.AggregateSymbol,Microsoft.CSharp.RuntimeBinder.Semantics.CType):Microsoft.CSharp.RuntimeBinder.Semantics.CType
        call     [rax]Microsoft.CSharp.RuntimeBinder.Semantics.TypeManager:GetBestAccessibleType(Microsoft.CSharp.RuntimeBinder.Semantics.AggregateSymbol,Microsoft.CSharp.RuntimeBinder.Semantics.CType):Microsoft.CSharp.RuntimeBinder.Semantics.CType
        mov      rdx, rax
        movsxd   rsi, r15d
-       mov      rdi, r13
+       mov      rdi, r14
        mov      rax, 0xD1FFAB1E      ; code for CORINFO_HELP_ARRADDR_ST
        call     [rax]CORINFO_HELP_ARRADDR_ST
        mov      rdi, rbx
        mov      esi, r15d
        mov      rax, 0xD1FFAB1E      ; code for Microsoft.CSharp.RuntimeBinder.Semantics.MethodTypeInferrer:UpdateDependenciesAfterFix(int):this
        call     [rax]Microsoft.CSharp.RuntimeBinder.Semantics.MethodTypeInferrer:UpdateDependenciesAfterFix(int):this
        mov      eax, 1
 						;; size=67 bbWeight=0.50 PerfScore 7.75
-G_M17172_IG56:
-       add      rsp, 248
+G_M17172_IG62:
+       add      rsp, 360
        pop      rbx
        pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
 						;; size=18 bbWeight=0.50 PerfScore 2.12
-G_M17172_IG57:
+G_M17172_IG63:
        call     CORINFO_HELP_RNGCHKFAIL
        int3     
 						;; size=6 bbWeight=0 PerfScore 0.00
-G_M17172_IG58:
+G_M17172_IG64:
        mov      rax, 0xD1FFAB1E      ; code for System.ThrowHelper:ThrowInvalidOperationException_InvalidOperation_EnumFailedVersion()
        call     [rax]System.ThrowHelper:ThrowInvalidOperationException_InvalidOperation_EnumFailedVersion()
        int3     
 						;; size=13 bbWeight=0 PerfScore 0.00
 
-; Total bytes of code 2530, prolog size 31, PerfScore 4146.50, instruction count 615, allocated bytes for code 2530 (MethodHash=6724bceb) for method Microsoft.CSharp.RuntimeBinder.Semantics.MethodTypeInferrer:Fix(int):ubyte:this (FullOpts)
+; Total bytes of code 2628, prolog size 82, PerfScore 2794.83, instruction count 583, allocated bytes for code 2628 (MethodHash=6724bceb) for method Microsoft.CSharp.RuntimeBinder.Semantics.MethodTypeInferrer:Fix(int):ubyte:this (FullOpts)
90 (4.17 % of base) - System.Data.DataColumnCollection:CanRemove(System.Data.DataColumn,ubyte):ubyte:this
 ; Assembly listing for method System.Data.DataColumnCollection:CanRemove(System.Data.DataColumn,ubyte):ubyte:this (FullOpts)
 ; Emitting BLENDED_CODE for X64 with AVX - Unix
 ; FullOpts code
 ; optimized code
 ; rbp based frame
 ; fully interruptible
 ; No PGO data
-; 0 inlinees with PGO data; 64 single block inlinees; 17 inlinees without PGO data
+; 0 inlinees with PGO data; 64 single block inlinees; 15 inlinees without PGO data
 ; Final local variable assignments
 ;
 ;  V00 this         [V00,T09] ( 19, 28.50)     ref  ->  r15         this class-hnd single-def <System.Data.DataColumnCollection>
 ;  V01 arg1         [V01,T00] ( 14, 68.50)     ref  ->  rbx         class-hnd single-def <System.Data.DataColumn>
-;  V02 arg2         [V02,T48] ( 10,  6   )   ubyte  ->  r14         single-def
+;  V02 arg2         [V02,T44] ( 10,  6   )   ubyte  ->  r14         single-def
 ;* V03 loc0         [V03    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op <System.Data.DataKey>
-;  V04 loc1         [V04,T41] (  6, 10.50)     int  ->  r12        
-;  V05 loc2         [V05,T42] (  6, 10.50)     int  ->  r12        
-;  V06 loc3         [V06,T40] (  7, 10.50)     int  ->  r13        
-;  V07 loc4         [V07,T46] (  4,  9   )     ref  ->  r13         class-hnd exact single-def <System.Data.ParentForeignKeyConstraintEnumerator>
+;  V04 loc1         [V04,T38] (  6, 10.50)     int  ->  r12        
+;  V05 loc2         [V05,T39] (  6, 10.50)     int  ->  r12        
+;  V06 loc3         [V06,T37] (  7, 10.50)     int  ->  r13        
+;  V07 loc4         [V07,T43] (  4,  9   )     ref  ->  r13         class-hnd exact single-def <System.Data.ParentForeignKeyConstraintEnumerator>
 ;  V08 loc5         [V08,T18] ( 10, 21   )     ref  ->  r12         class-hnd <System.Data.Constraint>
-;* V09 loc6         [V09,T80] (  0,  0   )     int  ->  zero-ref   
-;  V10 loc7         [V10,T32] (  7, 12   )     ref  ->  r13         class-hnd <System.Data.DataColumn>
-;  V11 loc8         [V11,T53] (  3,  6   )     ref  ->  rdi         class-hnd exact <System.Data.DataExpression>
-;* V12 loc9         [V12    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op <System.Collections.Generic.List`1+Enumerator[System.Data.Index]>
+;* V09 loc6         [V09,T76] (  0,  0   )     int  ->  zero-ref   
+;  V10 loc7         [V10,T30] (  7, 12   )     ref  ->  r13         class-hnd <System.Data.DataColumn>
+;  V11 loc8         [V11,T48] (  3,  6   )     ref  ->  rdi         class-hnd exact <System.Data.DataExpression>
+;  V12 loc9         [V12    ] (  6,  6.50)  struct (24) [rbp-0x40]  do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Collections.Generic.List`1+Enumerator[System.Data.Index]>
 ;* V13 loc10        [V13    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact <System.Data.Index>
 ;# V14 OutArgs      [V14    ] (  1,  1   )  struct ( 0) [rsp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
 ;* V15 tmp1         [V15    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "impAppendStmt" <System.String>
 ;* V16 tmp2         [V16    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "non-inline candidate call" <System.String>
-;  V17 tmp3         [V17,T56] (  5,  5   )     ref  ->  r13         class-hnd exact single-def "NewObj constructor temp" <System.Data.ParentForeignKeyConstraintEnumerator>
+;  V17 tmp3         [V17,T51] (  5,  5   )     ref  ->  r13         class-hnd exact single-def "NewObj constructor temp" <System.Data.ParentForeignKeyConstraintEnumerator>
 ;* V18 tmp4         [V18    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "non-inline candidate call" <System.String>
 ;* V19 tmp5         [V19    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <System.Data.DataTable>
 ;* V20 tmp6         [V20    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <System.Data.UniqueConstraint>
-;* V21 tmp7         [V21,T76] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;* V22 tmp8         [V22,T81] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
+;* V21 tmp7         [V21,T72] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
+;* V22 tmp8         [V22,T77] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V23 tmp9         [V23    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline return value spill temp" <System.Data.DataRelationCollection>
-;  V24 tmp10        [V24,T25] (  4, 16   )     ref  ->  r13         class-hnd "Inlining Arg" <System.Data.DataTable>
-;  V25 tmp11        [V25,T49] (  2,  8   )     ref  ->  rdi         class-hnd "dup spill" <System.Data.DataRelationCollection>
-;  V26 tmp12        [V26,T43] (  5, 10   )     ref  ->  rdi        
-;  V27 tmp13        [V27,T05] (  8, 32   )     ref  ->  [rbp-0x30]  class-hnd exact spill-single-def "NewObj constructor temp" <System.Data.DataRelationCollection+DataTableRelationCollection>
+;  V24 tmp10        [V24,T24] (  4, 16   )     ref  ->  r13         class-hnd "Inlining Arg" <System.Data.DataTable>
+;  V25 tmp11        [V25,T45] (  2,  8   )     ref  ->  rdi         class-hnd "dup spill" <System.Data.DataRelationCollection>
+;  V26 tmp12        [V26,T40] (  5, 10   )     ref  ->  rdi        
+;  V27 tmp13        [V27,T05] (  8, 32   )     ref  ->  [rbp-0x48]  class-hnd exact spill-single-def "NewObj constructor temp" <System.Data.DataRelationCollection+DataTableRelationCollection>
 ;* V28 tmp14        [V28    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inline stloc first use temp" <System.Data.DataRelationCollection+DataTableRelationCollection>
-;  V29 tmp15        [V29,T33] (  3, 12   )     ref  ->  [rbp-0x38]  class-hnd exact spill-single-def "NewObj constructor temp" <System.Collections.ArrayList>
-;  V30 tmp16        [V30,T26] (  4, 16   )     ref  ->  r13         class-hnd "Inlining Arg" <System.Data.DataRelation>
-;* V31 tmp17        [V31,T58] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;* V32 tmp18        [V32,T68] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
+;  V29 tmp15        [V29,T31] (  3, 12   )     ref  ->  [rbp-0x50]  class-hnd exact spill-single-def "NewObj constructor temp" <System.Collections.ArrayList>
+;  V30 tmp16        [V30,T25] (  4, 16   )     ref  ->  r13         class-hnd "Inlining Arg" <System.Data.DataRelation>
+;* V31 tmp17        [V31,T54] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
+;* V32 tmp18        [V32,T64] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V33 tmp19        [V33    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline return value spill temp" <System.Data.DataRelationCollection>
 ;  V34 tmp20        [V34,T12] (  4, 24   )     ref  ->  r13         class-hnd "Inlining Arg" <System.Data.DataTable>
-;  V35 tmp21        [V35,T29] (  2, 16   )     ref  ->  rdi         class-hnd "dup spill" <System.Data.DataRelationCollection>
-;  V36 tmp22        [V36,T22] (  5, 18   )     ref  ->  rdi        
-;  V37 tmp23        [V37,T06] (  8, 32   )     ref  ->  [rbp-0x40]  class-hnd exact spill-single-def "NewObj constructor temp" <System.Data.DataRelationCollection+DataTableRelationCollection>
+;  V35 tmp21        [V35,T28] (  2, 16   )     ref  ->  rdi         class-hnd "dup spill" <System.Data.DataRelationCollection>
+;  V36 tmp22        [V36,T21] (  5, 18   )     ref  ->  rdi        
+;  V37 tmp23        [V37,T06] (  8, 32   )     ref  ->  [rbp-0x58]  class-hnd exact spill-single-def "NewObj constructor temp" <System.Data.DataRelationCollection+DataTableRelationCollection>
 ;* V38 tmp24        [V38    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inline stloc first use temp" <System.Data.DataRelationCollection+DataTableRelationCollection>
-;  V39 tmp25        [V39,T34] (  3, 12   )     ref  ->  [rbp-0x48]  class-hnd exact spill-single-def "NewObj constructor temp" <System.Collections.ArrayList>
+;  V39 tmp25        [V39,T32] (  3, 12   )     ref  ->  [rbp-0x60]  class-hnd exact spill-single-def "NewObj constructor temp" <System.Collections.ArrayList>
 ;* V40 tmp26        [V40    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline return value spill temp" <System.Data.DataRelationCollection>
-;  V41 tmp27        [V41,T27] (  4, 16   )     ref  ->  r13         class-hnd "Inlining Arg" <System.Data.DataTable>
-;  V42 tmp28        [V42,T50] (  2,  8   )     ref  ->  rdi         class-hnd "dup spill" <System.Data.DataRelationCollection>
-;  V43 tmp29        [V43,T44] (  5, 10   )     ref  ->  rdi        
-;  V44 tmp30        [V44,T07] (  8, 32   )     ref  ->  [rbp-0x50]  class-hnd exact spill-single-def "NewObj constructor temp" <System.Data.DataRelationCollection+DataTableRelationCollection>
+;  V41 tmp27        [V41,T26] (  4, 16   )     ref  ->  r13         class-hnd "Inlining Arg" <System.Data.DataTable>
+;  V42 tmp28        [V42,T46] (  2,  8   )     ref  ->  rdi         class-hnd "dup spill" <System.Data.DataRelationCollection>
+;  V43 tmp29        [V43,T41] (  5, 10   )     ref  ->  rdi        
+;  V44 tmp30        [V44,T07] (  8, 32   )     ref  ->  [rbp-0x68]  class-hnd exact spill-single-def "NewObj constructor temp" <System.Data.DataRelationCollection+DataTableRelationCollection>
 ;* V45 tmp31        [V45    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inline stloc first use temp" <System.Data.DataRelationCollection+DataTableRelationCollection>
-;  V46 tmp32        [V46,T35] (  3, 12   )     ref  ->  [rbp-0x58]  class-hnd exact spill-single-def "NewObj constructor temp" <System.Collections.ArrayList>
-;  V47 tmp33        [V47,T28] (  4, 16   )     ref  ->  r13         class-hnd "Inlining Arg" <System.Data.DataRelation>
-;* V48 tmp34        [V48,T59] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;* V49 tmp35        [V49,T69] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
+;  V46 tmp32        [V46,T33] (  3, 12   )     ref  ->  [rbp-0x70]  class-hnd exact spill-single-def "NewObj constructor temp" <System.Collections.ArrayList>
+;  V47 tmp33        [V47,T27] (  4, 16   )     ref  ->  r13         class-hnd "Inlining Arg" <System.Data.DataRelation>
+;* V48 tmp34        [V48,T55] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
+;* V49 tmp35        [V49,T65] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V50 tmp36        [V50    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline return value spill temp" <System.Data.DataRelationCollection>
 ;  V51 tmp37        [V51,T13] (  4, 24   )     ref  ->  r13         class-hnd "Inlining Arg" <System.Data.DataTable>
-;  V52 tmp38        [V52,T30] (  2, 16   )     ref  ->  rdi         class-hnd "dup spill" <System.Data.DataRelationCollection>
-;  V53 tmp39        [V53,T23] (  5, 18   )     ref  ->  rdi        
-;  V54 tmp40        [V54,T08] (  8, 32   )     ref  ->  [rbp-0x60]  class-hnd exact spill-single-def "NewObj constructor temp" <System.Data.DataRelationCollection+DataTableRelationCollection>
+;  V52 tmp38        [V52,T29] (  2, 16   )     ref  ->  rdi         class-hnd "dup spill" <System.Data.DataRelationCollection>
+;  V53 tmp39        [V53,T22] (  5, 18   )     ref  ->  rdi        
+;  V54 tmp40        [V54,T08] (  8, 32   )     ref  ->  [rbp-0x78]  class-hnd exact spill-single-def "NewObj constructor temp" <System.Data.DataRelationCollection+DataTableRelationCollection>
 ;* V55 tmp41        [V55    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inline stloc first use temp" <System.Data.DataRelationCollection+DataTableRelationCollection>
-;  V56 tmp42        [V56,T36] (  3, 12   )     ref  ->  [rbp-0x68]  class-hnd exact spill-single-def "NewObj constructor temp" <System.Collections.ArrayList>
+;  V56 tmp42        [V56,T34] (  3, 12   )     ref  ->  [rbp-0x80]  class-hnd exact spill-single-def "NewObj constructor temp" <System.Collections.ArrayList>
 ;* V57 tmp43        [V57    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <System.Data.DataTable>
 ;* V58 tmp44        [V58    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <System.Data.DataTable>
 ;* V59 tmp45        [V59    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <System.Data.DataTable>
 ;* V60 tmp46        [V60    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <System.Data.DataTable>
 ;* V61 tmp47        [V61    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <System.Data.DataTable>
 ;* V62 tmp48        [V62    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.Data.ConstraintCollection>
 ;* V63 tmp49        [V63    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <System.Data.DataTable>
-;* V64 tmp50        [V64,T79] (  0,  0   )     ref  ->  zero-ref    class-hnd single-def "Inlining Arg" <System.Data.DataTable>
-;  V65 tmp51        [V65,T64] (  2,  2   )     ref  ->  r12         class-hnd single-def "Inlining Arg" <System.Data.DataSet>
-;  V66 tmp52        [V66,T65] (  2,  2   )     ref  ->  [rbp-0x70]  class-hnd spill-single-def "Inlining Arg" <System.Data.DataTable>
+;* V64 tmp50        [V64,T74] (  0,  0   )     ref  ->  zero-ref    class-hnd single-def "Inlining Arg" <System.Data.DataTable>
+;  V65 tmp51        [V65,T60] (  2,  2   )     ref  ->  r12         class-hnd single-def "Inlining Arg" <System.Data.DataSet>
+;  V66 tmp52        [V66,T61] (  2,  2   )     ref  ->  [rbp-0x88]  class-hnd spill-single-def "Inlining Arg" <System.Data.DataTable>
 ;* V67 tmp53        [V67    ] (  0,  0   )     ref  ->  zero-ref    single-def
 ;* V68 tmp54        [V68    ] (  0,  0   )     ref  ->  zero-ref   
-;  V69 tmp55        [V69,T75] (  2,  1   )     ref  ->  rax        
-;  V70 tmp56        [V70,T66] (  2,  2   )     ref  ->  rdi         class-hnd exact single-def "Inlining Arg" <System.Data.DataTableCollection>
-;* V71 tmp57        [V71,T52] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <System.Data.ForeignKeyConstraint>
-;* V72 tmp58        [V72,T60] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;* V73 tmp59        [V73,T61] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
+;  V69 tmp55        [V69,T71] (  2,  1   )     ref  ->  rax        
+;  V70 tmp56        [V70,T62] (  2,  2   )     ref  ->  rdi         class-hnd exact single-def "Inlining Arg" <System.Data.DataTableCollection>
+;* V71 tmp57        [V71,T47] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <System.Data.ForeignKeyConstraint>
+;* V72 tmp58        [V72,T56] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
+;* V73 tmp59        [V73,T57] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V74 tmp60        [V74    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <System.Data.DataTable>
 ;  V75 tmp61        [V75,T14] (  3, 24   )     ref  ->  rdi         class-hnd "Inlining Arg" <System.Collections.Generic.List`1[System.Data.DataColumn]>
-;  V76 tmp62        [V76,T55] (  2,  4   )   ubyte  ->  rax         "Inline return value spill temp"
+;  V76 tmp62        [V76,T50] (  2,  4   )   ubyte  ->  rax         "Inline return value spill temp"
 ;* V77 tmp63        [V77    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <System.Collections.Generic.List`1[System.Data.DataColumn]>
-;  V78 tmp64        [V78,T67] (  2,  2   )     ref  ->  rax         class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Data.Index]>
+;  V78 tmp64        [V78,T63] (  2,  2   )     ref  ->  rax         class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Data.Index]>
 ;* V79 tmp65        [V79    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Data.Index]>
-;* V80 tmp66        [V80,T51] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;* V81 tmp67        [V81    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline stloc first use temp" <System.Collections.Generic.List`1[System.Data.Index]>
-;  V82 tmp68        [V82,T01] ( 12, 69   )     ref  ->  registers   "field V03._columns (fldOffset=0x0)" P-INDEP
-;  V83 tmp69        [V83,T47] (  3,  8.50)     ref  ->  rax         single-def "field V12._list (fldOffset=0x0)" P-INDEP
-;* V84 tmp70        [V84    ] (  0,  0   )     ref  ->  zero-ref    "field V12._current (fldOffset=0x8)" P-INDEP
-;  V85 tmp71        [V85,T19] (  5, 16.50)     int  ->  rdi         "field V12._index (fldOffset=0x10)" P-INDEP
-;* V86 tmp72        [V86,T82] (  0,  0   )     int  ->  zero-ref    "field V12._version (fldOffset=0x14)" P-INDEP
-;  V87 tmp73        [V87,T70] (  3,  1.50)     ref  ->  rax         single-def "field V79._list (fldOffset=0x0)" P-INDEP
-;* V88 tmp74        [V88    ] (  0,  0   )     ref  ->  zero-ref    single-def "field V79._current (fldOffset=0x8)" P-INDEP
-;* V89 tmp75        [V89,T83] (  0,  0   )     int  ->  zero-ref    "field V79._index (fldOffset=0x10)" P-INDEP
-;* V90 tmp76        [V90,T77] (  0,  0   )     int  ->  zero-ref    "field V79._version (fldOffset=0x14)" P-INDEP
-;  V91 tmp77        [V91,T62] (  3,  3   )     ref  ->  rdi         single-def "argument with side effect"
-;  V92 tmp78        [V92,T84] (  3,  0   )     ref  ->  rax         "argument with side effect"
-;  V93 tmp79        [V93,T85] (  3,  0   )     ref  ->  rax         "argument with side effect"
-;  V94 tmp80        [V94,T86] (  3,  0   )     ref  ->  rax         "argument with side effect"
-;  V95 tmp81        [V95,T87] (  3,  0   )     ref  ->  rax         "argument with side effect"
-;  V96 tmp82        [V96,T15] (  3, 24   )     ref  ->  rdi         "argument with side effect"
-;  V97 tmp83        [V97,T37] (  3, 12   )     ref  ->  rax         "argument with side effect"
-;  V98 tmp84        [V98,T88] (  3,  0   )     ref  ->  rax         "argument with side effect"
-;  V99 tmp85        [V99,T89] (  3,  0   )     ref  ->  rax         "argument with side effect"
-;  V100 tmp86       [V100,T90] (  2,  0   )     ref  ->  rbx         "argument with side effect"
-;  V101 tmp87       [V101,T91] (  2,  0   )     ref  ->  rsi         "argument with side effect"
-;  V102 tmp88       [V102,T63] (  3,  3   )     ref  ->  rdi         single-def "argument with side effect"
-;  V103 tmp89       [V103,T92] (  2,  0   )     ref  ->  rbx         "argument with side effect"
-;  V104 tmp90       [V104,T93] (  2,  0   )     ref  ->  rsi         "argument with side effect"
-;  V105 tmp91       [V105,T16] (  3, 24   )     ref  ->  rdi         "arr expr"
-;  V106 tmp92       [V106,T38] (  3, 12   )     ref  ->  rdi         "argument with side effect"
-;  V107 tmp93       [V107,T94] (  2,  0   )     ref  ->  rsi         "argument with side effect"
-;  V108 tmp94       [V108,T95] (  2,  0   )     ref  ->  rbx         "argument with side effect"
-;  V109 tmp95       [V109,T31] (  2, 16   )     ref  ->  rsi         "arr expr"
-;  V110 cse0        [V110,T71] (  3,  1.50)     ref  ->  rdi         "CSE #04: conservative"
-;  V111 cse1        [V111,T72] (  3,  1.50)     ref  ->  r12         "CSE #14: conservative"
-;* V112 cse2        [V112,T78] (  0,  0   )     int  ->  zero-ref    "CSE #19: conservative"
-;  V113 cse3        [V113,T39] (  2,  8   )     int  ->  rsi         "CSE #20: conservative"
-;  V114 cse4        [V114,T54] (  3,  6   )     ref  ->  rdi         "CSE #18: conservative"
-;  V115 cse5        [V115,T73] (  3,  1.50)     ref  ->  rsi         "CSE #02: conservative"
-;  V116 cse6        [V116,T74] (  3,  1.50)     ref  ->  rdi         "CSE #16: conservative"
-;  V117 cse7        [V117,T20] (  3, 20   )     int  ->  rax         "CSE #06: moderate"
-;  V118 cse8        [V118,T21] (  3, 20   )     int  ->  rax         "CSE #12: moderate"
-;  V119 cse9        [V119,T17] (  3, 24   )     int  ->  rcx         "CSE #15: moderate"
-;  V120 cse10       [V120,T57] (  3,  5   )     int  ->  rax         "CSE #05: conservative"
-;  V121 rat0        [V121,T24] (  5, 16.50)    long  ->  rdi         "Widened IV V22"
-;  V122 rat1        [V122,T03] (  5, 66   )    long  ->  rdi         "Widened IV V32"
-;  V123 rat2        [V123,T04] (  5, 66   )    long  ->  rdi         "Widened IV V49"
-;  V124 rat3        [V124,T02] (  5, 68   )    long  ->  rax         "Widened IV V73"
-;  V125 rat4        [V125,T11] (  7, 24.50)    long  ->  r12         "Widened IV V09"
-;  V126 rat5        [V126,T10] (  3, 20   )     ref  ->  rsi         "replacement local"
-;  V127 rat6        [V127,T45] (  3, 10   )    long  ->  rdi         "CSE for expectedClsNode"
+;  V80 tmp66        [V80,T01] ( 12, 69   )     ref  ->  registers   "field V03._columns (fldOffset=0x0)" P-INDEP
+;  V81 tmp67        [V81    ] (  3,  5   )     ref  ->  [rbp-0x40]  do-not-enreg[X] addr-exposed "field V12._list (fldOffset=0x0)" P-DEP
+;  V82 tmp68        [V82    ] (  3,  5   )     ref  ->  [rbp-0x38]  do-not-enreg[X] addr-exposed "field V12._current (fldOffset=0x8)" P-DEP
+;  V83 tmp69        [V83    ] (  3,  5   )     int  ->  [rbp-0x30]  do-not-enreg[X] addr-exposed "field V12._index (fldOffset=0x10)" P-DEP
+;  V84 tmp70        [V84    ] (  3,  5   )     int  ->  [rbp-0x2C]  do-not-enreg[X] addr-exposed "field V12._version (fldOffset=0x14)" P-DEP
+;  V85 tmp71        [V85,T66] (  3,  1.50)     ref  ->  rax         single-def "field V79._list (fldOffset=0x0)" P-INDEP
+;* V86 tmp72        [V86,T75] (  0,  0   )     ref  ->  zero-ref    single-def "field V79._current (fldOffset=0x8)" P-INDEP
+;* V87 tmp73        [V87,T78] (  0,  0   )     int  ->  zero-ref    "field V79._index (fldOffset=0x10)" P-INDEP
+;  V88 tmp74        [V88,T73] (  2,  1   )     int  ->  rdi         "field V79._version (fldOffset=0x14)" P-INDEP
+;  V89 tmp75        [V89,T58] (  3,  3   )     ref  ->  rdi         single-def "argument with side effect"
+;  V90 tmp76        [V90,T79] (  3,  0   )     ref  ->  rax         "argument with side effect"
+;  V91 tmp77        [V91,T80] (  3,  0   )     ref  ->  rax         "argument with side effect"
+;  V92 tmp78        [V92,T81] (  3,  0   )     ref  ->  rax         "argument with side effect"
+;  V93 tmp79        [V93,T82] (  3,  0   )     ref  ->  rax         "argument with side effect"
+;  V94 tmp80        [V94,T15] (  3, 24   )     ref  ->  rdi         "argument with side effect"
+;  V95 tmp81        [V95,T35] (  3, 12   )     ref  ->  rax         "argument with side effect"
+;  V96 tmp82        [V96,T83] (  3,  0   )     ref  ->  rax         "argument with side effect"
+;  V97 tmp83        [V97,T84] (  3,  0   )     ref  ->  rax         "argument with side effect"
+;  V98 tmp84        [V98,T85] (  2,  0   )     ref  ->  rbx         "argument with side effect"
+;  V99 tmp85        [V99,T86] (  2,  0   )     ref  ->  rsi         "argument with side effect"
+;  V100 tmp86       [V100,T59] (  3,  3   )     ref  ->  rdi         single-def "argument with side effect"
+;  V101 tmp87       [V101,T87] (  2,  0   )     ref  ->  rbx         "argument with side effect"
+;  V102 tmp88       [V102,T88] (  2,  0   )     ref  ->  rsi         "argument with side effect"
+;  V103 tmp89       [V103,T16] (  3, 24   )     ref  ->  rdi         "arr expr"
+;  V104 tmp90       [V104,T36] (  3, 12   )     ref  ->  rdi         "argument with side effect"
+;  V105 tmp91       [V105,T89] (  2,  0   )     ref  ->  rsi         "argument with side effect"
+;  V106 tmp92       [V106,T90] (  2,  0   )     ref  ->  rbx         "argument with side effect"
+;  V107 cse0        [V107,T67] (  3,  1.50)     ref  ->  rdi         "CSE #04: conservative"
+;  V108 cse1        [V108,T68] (  3,  1.50)     ref  ->  r12         "CSE #14: conservative"
+;  V109 cse2        [V109,T49] (  3,  6   )     ref  ->  rdi         "CSE #18: conservative"
+;  V110 cse3        [V110,T69] (  3,  1.50)     ref  ->  rsi         "CSE #02: conservative"
+;  V111 cse4        [V111,T70] (  3,  1.50)     ref  ->  rdi         "CSE #16: conservative"
+;  V112 cse5        [V112,T19] (  3, 20   )     int  ->  rax         "CSE #06: moderate"
+;  V113 cse6        [V113,T20] (  3, 20   )     int  ->  rax         "CSE #12: moderate"
+;  V114 cse7        [V114,T17] (  3, 24   )     int  ->  rcx         "CSE #15: moderate"
+;  V115 cse8        [V115,T52] (  3,  5   )    long  ->  r14         "CSE #19: conservative"
+;  V116 cse9        [V116,T53] (  3,  5   )     int  ->  rax         "CSE #05: conservative"
+;  V117 rat0        [V117,T23] (  5, 16.50)    long  ->  rdi         "Widened IV V22"
+;  V118 rat1        [V118,T03] (  5, 66   )    long  ->  rdi         "Widened IV V32"
+;  V119 rat2        [V119,T04] (  5, 66   )    long  ->  rdi         "Widened IV V49"
+;  V120 rat3        [V120,T02] (  5, 68   )    long  ->  rax         "Widened IV V73"
+;  V121 rat4        [V121,T11] (  7, 24.50)    long  ->  r12         "Widened IV V09"
+;  V122 rat5        [V122,T10] (  3, 20   )     ref  ->  rsi         "replacement local"
+;  V123 rat6        [V123,T42] (  3, 10   )    long  ->  rdi         "CSE for expectedClsNode"
 ;
-; Lcl frame size = 72
+; Lcl frame size = 104
 
 G_M43767_IG01:
        push     rbp
        push     r15
        push     r14
        push     r13
        push     r12
        push     rbx
-       sub      rsp, 72
-       lea      rbp, [rsp+0x70]
+       sub      rsp, 104
+       lea      rbp, [rsp+0x90]
+       vxorps   xmm8, xmm8, xmm8
+       vmovdqa  xmmword ptr [rbp-0x40], xmm8
+       xor      eax, eax
+       mov      qword ptr [rbp-0x30], rax
        mov      r15, rdi
        mov      rbx, rsi
        mov      r14d, edx
-						;; size=28 bbWeight=1 PerfScore 7.50
+						;; size=47 bbWeight=1 PerfScore 11.08
 G_M43767_IG02:
        test     rbx, rbx
        jne      SHORT G_M43767_IG06
 						;; size=5 bbWeight=1 PerfScore 1.25
 G_M43767_IG03:
        test     r14b, r14b
-       jne      G_M43767_IG52
+       jne      G_M43767_IG53
 						;; size=9 bbWeight=0.50 PerfScore 0.62
 G_M43767_IG04:
        xor      eax, eax
 						;; size=2 bbWeight=0.50 PerfScore 0.12
 G_M43767_IG05:
-       add      rsp, 72
+       add      rsp, 104
        pop      rbx
        pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
 						;; size=15 bbWeight=0.50 PerfScore 2.12
 G_M43767_IG06:
        mov      rdi, gword ptr [rbx+0x48]
        mov      rsi, gword ptr [r15+0x08]
        cmp      rdi, rsi
        je       SHORT G_M43767_IG07
        test     r14b, r14b
-       jne      G_M43767_IG53
+       jne      G_M43767_IG54
        jmp      SHORT G_M43767_IG04
 						;; size=24 bbWeight=0.50 PerfScore 4.25
 G_M43767_IG07:
        mov      rdi, rsi
        mov      rsi, rbx
        mov      rax, qword ptr [rdi]
        mov      rax, qword ptr [rax+0x58]
        call     [rax+0x20]System.Data.DataTable:OnRemoveColumn(System.Data.DataColumn):this
        mov      rdi, gword ptr [r15+0x08]
        mov      rdi, gword ptr [rdi+0xD0]
        test     rdi, rdi
        je       SHORT G_M43767_IG10
        mov      r13, gword ptr [rdi+0x48]
        xor      edi, edi
        mov      eax, dword ptr [r13+0x08]
        test     eax, eax
        jle      SHORT G_M43767_IG10
-       align    [0 bytes for IG08]
-						;; size=46 bbWeight=0.50 PerfScore 9.12
+       align    [12 bytes for IG08]
+						;; size=58 bbWeight=0.50 PerfScore 9.25
 G_M43767_IG08:
        cmp      gword ptr [r13+8*rdi+0x10], rbx
        je       SHORT G_M43767_IG09
        inc      edi
        cmp      eax, edi
        jg       SHORT G_M43767_IG08
        jmp      SHORT G_M43767_IG10
 						;; size=15 bbWeight=4 PerfScore 30.00
 G_M43767_IG09:
        test     r14b, r14b
-       jne      G_M43767_IG54
+       jne      G_M43767_IG55
        jmp      SHORT G_M43767_IG04
 						;; size=11 bbWeight=0.50 PerfScore 1.62
 G_M43767_IG10:
        xor      r12d, r12d
        jmp      G_M43767_IG15
-       align    [12 bytes for IG13]
-						;; size=20 bbWeight=0.50 PerfScore 1.12
+       align    [13 bytes for IG13]
+						;; size=21 bbWeight=0.50 PerfScore 1.12
 G_M43767_IG11:
        mov      r13, gword ptr [r15+0x08]
        mov      rdi, gword ptr [r13+0x40]
        test     rdi, rdi
        jne      G_M43767_IG12
        mov      rdi, 0xD1FFAB1E      ; System.Data.DataRelationCollection+DataTableRelationCollection
        call     CORINFO_HELP_NEWSFAST
        mov      rdi, rax
-       mov      gword ptr [rbp-0x30], rdi
+       mov      gword ptr [rbp-0x48], rdi
        mov      dword ptr [rdi+0x20], 1
        mov      rsi, 0xD1FFAB1E      ; static handle
        mov      eax, 1
        lock     
        xadd     dword ptr [rsi], eax
        inc      eax
        mov      dword ptr [rdi+0x24], eax
        lea      rdi, bword ptr [rdi+0x28]
        mov      rsi, r13
        call     CORINFO_HELP_ASSIGN_REF
-       mov      rdi, gword ptr [rbp-0x30]
+       mov      rdi, gword ptr [rbp-0x48]
        mov      byte  ptr [rdi+0x40], 1
        mov      rdi, 0xD1FFAB1E      ; System.Collections.ArrayList
        call     CORINFO_HELP_NEWSFAST
-       mov      gword ptr [rbp-0x38], rax
+       mov      gword ptr [rbp-0x50], rax
        mov      rdi, 0xD1FFAB1E
        mov      esi, 52
        call     CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
        mov      rdi, 0xD1FFAB1E      ; data for System.Array+EmptyArray`1[System.Object]:Value
        mov      rsi, gword ptr [rdi]
-       mov      rax, gword ptr [rbp-0x38]
+       mov      rax, gword ptr [rbp-0x50]
        lea      rdi, bword ptr [rax+0x08]
        call     CORINFO_HELP_ASSIGN_REF
-       mov      rdi, gword ptr [rbp-0x30]
+       mov      rdi, gword ptr [rbp-0x48]
        lea      rdi, bword ptr [rdi+0x30]
-       mov      rsi, gword ptr [rbp-0x38]
+       mov      rsi, gword ptr [rbp-0x50]
        call     CORINFO_HELP_ASSIGN_REF
        lea      rdi, bword ptr [r13+0x40]
-       mov      rsi, gword ptr [rbp-0x30]
+       mov      rsi, gword ptr [rbp-0x48]
        call     CORINFO_HELP_ASSIGN_REF
-       mov      r13, gword ptr [rbp-0x30]
+       mov      r13, gword ptr [rbp-0x48]
        mov      rdi, r13
 						;; size=192 bbWeight=2 PerfScore 94.00
 G_M43767_IG12:
        mov      esi, r12d
        mov      rax, qword ptr [rdi]
        mov      rax, qword ptr [rax+0x48]
        call     [rax+0x10]System.Data.DataRelationCollection:get_Item(int):System.Data.DataRelation:this
        mov      r13, rax
        cmp      byte  ptr [r13], r13b
        mov      rdi, r13
        mov      rax, 0xD1FFAB1E      ; code for System.Data.DataRelation:CheckStateForProperty():this
        call     [rax]System.Data.DataRelation:CheckStateForProperty():this
        mov      r13, gword ptr [r13+0x70]
        xor      edi, edi
        mov      eax, dword ptr [r13+0x08]
        test     eax, eax
        jle      SHORT G_M43767_IG14
 						;; size=49 bbWeight=2 PerfScore 39.00
 G_M43767_IG13:
        cmp      gword ptr [r13+8*rdi+0x10], rbx
        je       G_M43767_IG19
        inc      edi
        cmp      eax, edi
        jg       SHORT G_M43767_IG13
 						;; size=17 bbWeight=16 PerfScore 88.00
 G_M43767_IG14:
        inc      r12d
 						;; size=3 bbWeight=2 PerfScore 0.50
 G_M43767_IG15:
        mov      r13, gword ptr [r15+0x08]
        mov      rdi, gword ptr [r13+0x40]
        test     rdi, rdi
        jne      G_M43767_IG17
 						;; size=17 bbWeight=4 PerfScore 21.00
 G_M43767_IG16:
        mov      rdi, 0xD1FFAB1E      ; System.Data.DataRelationCollection+DataTableRelationCollection
        call     CORINFO_HELP_NEWSFAST
        mov      rdi, rax
-       mov      gword ptr [rbp-0x40], rdi
+       mov      gword ptr [rbp-0x58], rdi
        mov      dword ptr [rdi+0x20], 1
        mov      rsi, 0xD1FFAB1E      ; static handle
        mov      eax, 1
        lock     
        xadd     dword ptr [rsi], eax
        inc      eax
        mov      dword ptr [rdi+0x24], eax
        lea      rdi, bword ptr [rdi+0x28]
        mov      rsi, r13
        call     CORINFO_HELP_ASSIGN_REF
-       mov      rdi, gword ptr [rbp-0x40]
+       mov      rdi, gword ptr [rbp-0x58]
        mov      byte  ptr [rdi+0x40], 1
        mov      rdi, 0xD1FFAB1E      ; System.Collections.ArrayList
        call     CORINFO_HELP_NEWSFAST
-       mov      gword ptr [rbp-0x48], rax
+       mov      gword ptr [rbp-0x60], rax
        mov      rdi, 0xD1FFAB1E
        mov      esi, 52
        call     CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
        mov      rdi, 0xD1FFAB1E      ; data for System.Array+EmptyArray`1[System.Object]:Value
        mov      rsi, gword ptr [rdi]
-       mov      rax, gword ptr [rbp-0x48]
+       mov      rax, gword ptr [rbp-0x60]
        lea      rdi, bword ptr [rax+0x08]
        call     CORINFO_HELP_ASSIGN_REF
-       mov      rdi, gword ptr [rbp-0x40]
+       mov      rdi, gword ptr [rbp-0x58]
        lea      rdi, bword ptr [rdi+0x30]
-       mov      rsi, gword ptr [rbp-0x48]
+       mov      rsi, gword ptr [rbp-0x60]
        call     CORINFO_HELP_ASSIGN_REF
        lea      rdi, bword ptr [r13+0x40]
-       mov      rsi, gword ptr [rbp-0x40]
+       mov      rsi, gword ptr [rbp-0x58]
        call     CORINFO_HELP_ASSIGN_REF
-       mov      r13, gword ptr [rbp-0x40]
+       mov      r13, gword ptr [rbp-0x58]
        mov      rdi, r13
 						;; size=175 bbWeight=2 PerfScore 83.50
 G_M43767_IG17:
        mov      rax, qword ptr [rdi]
        mov      rax, qword ptr [rax+0x40]
        call     [rax+0x20]System.Data.InternalDataCollectionBase:get_Count():int:this
        cmp      eax, r12d
        jg       G_M43767_IG11
 						;; size=19 bbWeight=4 PerfScore 33.00
 G_M43767_IG18:
        xor      r12d, r12d
        jmp      G_M43767_IG24
        align    [0 bytes for IG22]
 						;; size=8 bbWeight=0.50 PerfScore 1.12
 G_M43767_IG19:
        test     r14b, r14b
-       jne      G_M43767_IG55
+       jne      G_M43767_IG56
        jmp      G_M43767_IG04
 						;; size=14 bbWeight=0.50 PerfScore 1.62
 G_M43767_IG20:
        mov      r13, gword ptr [r15+0x08]
        mov      rdi, gword ptr [r13+0x48]
        test     rdi, rdi
        jne      G_M43767_IG21
        mov      rdi, 0xD1FFAB1E      ; System.Data.DataRelationCollection+DataTableRelationCollection
        call     CORINFO_HELP_NEWSFAST
        mov      rdi, rax
-       mov      gword ptr [rbp-0x50], rdi
+       mov      gword ptr [rbp-0x68], rdi
        mov      dword ptr [rdi+0x20], 1
        mov      rsi, 0xD1FFAB1E      ; static handle
        mov      eax, 1
        lock     
        xadd     dword ptr [rsi], eax
        inc      eax
        mov      dword ptr [rdi+0x24], eax
        lea      rdi, bword ptr [rdi+0x28]
        mov      rsi, r13
        call     CORINFO_HELP_ASSIGN_REF
-       mov      rdi, gword ptr [rbp-0x50]
+       mov      rdi, gword ptr [rbp-0x68]
        mov      byte  ptr [rdi+0x40], 0
        mov      rdi, 0xD1FFAB1E      ; System.Collections.ArrayList
        call     CORINFO_HELP_NEWSFAST
-       mov      gword ptr [rbp-0x58], rax
+       mov      gword ptr [rbp-0x70], rax
        mov      rdi, 0xD1FFAB1E
        mov      esi, 52
        call     CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
        mov      rdi, 0xD1FFAB1E      ; data for System.Array+EmptyArray`1[System.Object]:Value
        mov      rsi, gword ptr [rdi]
-       mov      rax, gword ptr [rbp-0x58]
+       mov      rax, gword ptr [rbp-0x70]
        lea      rdi, bword ptr [rax+0x08]
        call     CORINFO_HELP_ASSIGN_REF
-       mov      rdi, gword ptr [rbp-0x50]
+       mov      rdi, gword ptr [rbp-0x68]
        lea      rdi, bword ptr [rdi+0x30]
-       mov      rsi, gword ptr [rbp-0x58]
+       mov      rsi, gword ptr [rbp-0x70]
        call     CORINFO_HELP_ASSIGN_REF
        lea      rdi, bword ptr [r13+0x48]
-       mov      rsi, gword ptr [rbp-0x50]
+       mov      rsi, gword ptr [rbp-0x68]
        call     CORINFO_HELP_ASSIGN_REF
-       mov      r13, gword ptr [rbp-0x50]
+       mov      r13, gword ptr [rbp-0x68]
        mov      rdi, r13
 						;; size=192 bbWeight=2 PerfScore 94.00
 G_M43767_IG21:
        mov      esi, r12d
        mov      rax, qword ptr [rdi]
        mov      rax, qword ptr [rax+0x48]
        call     [rax+0x10]System.Data.DataRelationCollection:get_Item(int):System.Data.DataRelation:this
        mov      r13, rax
        cmp      byte  ptr [r13], r13b
        mov      rdi, r13
        mov      rax, 0xD1FFAB1E      ; code for System.Data.DataRelation:CheckStateForProperty():this
        call     [rax]System.Data.DataRelation:CheckStateForProperty():this
        mov      r13, gword ptr [r13+0x78]
        xor      edi, edi
        mov      eax, dword ptr [r13+0x08]
        test     eax, eax
        jle      SHORT G_M43767_IG23
 						;; size=49 bbWeight=2 PerfScore 39.00
 G_M43767_IG22:
        cmp      gword ptr [r13+8*rdi+0x10], rbx
        je       G_M43767_IG28
        inc      edi
        cmp      eax, edi
        jg       SHORT G_M43767_IG22
 						;; size=17 bbWeight=16 PerfScore 88.00
 G_M43767_IG23:
        inc      r12d
 						;; size=3 bbWeight=2 PerfScore 0.50
 G_M43767_IG24:
        mov      r13, gword ptr [r15+0x08]
        mov      rdi, gword ptr [r13+0x48]
        test     rdi, rdi
        jne      G_M43767_IG26
 						;; size=17 bbWeight=4 PerfScore 21.00
 G_M43767_IG25:
        mov      rdi, 0xD1FFAB1E      ; System.Data.DataRelationCollection+DataTableRelationCollection
        call     CORINFO_HELP_NEWSFAST
        mov      rdi, rax
-       mov      gword ptr [rbp-0x60], rdi
+       mov      gword ptr [rbp-0x78], rdi
        mov      dword ptr [rdi+0x20], 1
        mov      rsi, 0xD1FFAB1E      ; static handle
        mov      eax, 1
        lock     
        xadd     dword ptr [rsi], eax
        inc      eax
        mov      dword ptr [rdi+0x24], eax
        lea      rdi, bword ptr [rdi+0x28]
        mov      rsi, r13
        call     CORINFO_HELP_ASSIGN_REF
-       mov      rdi, gword ptr [rbp-0x60]
+       mov      rdi, gword ptr [rbp-0x78]
        mov      byte  ptr [rdi+0x40], 0
        mov      rdi, 0xD1FFAB1E      ; System.Collections.ArrayList
        call     CORINFO_HELP_NEWSFAST
-       mov      gword ptr [rbp-0x68], rax
+       mov      gword ptr [rbp-0x80], rax
        mov      rdi, 0xD1FFAB1E
        mov      esi, 52
        call     CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
        mov      rdi, 0xD1FFAB1E      ; data for System.Array+EmptyArray`1[System.Object]:Value
        mov      rsi, gword ptr [rdi]
-       mov      rax, gword ptr [rbp-0x68]
+       mov      rax, gword ptr [rbp-0x80]
        lea      rdi, bword ptr [rax+0x08]
        call     CORINFO_HELP_ASSIGN_REF
-       mov      rdi, gword ptr [rbp-0x60]
+       mov      rdi, gword ptr [rbp-0x78]
        lea      rdi, bword ptr [rdi+0x30]
-       mov      rsi, gword ptr [rbp-0x68]
+       mov      rsi, gword ptr [rbp-0x80]
        call     CORINFO_HELP_ASSIGN_REF
        lea      rdi, bword ptr [r13+0x48]
-       mov      rsi, gword ptr [rbp-0x60]
+       mov      rsi, gword ptr [rbp-0x78]
        call     CORINFO_HELP_ASSIGN_REF
-       mov      r13, gword ptr [rbp-0x60]
+       mov      r13, gword ptr [rbp-0x78]
        mov      rdi, r13
 						;; size=175 bbWeight=2 PerfScore 83.50
 G_M43767_IG26:
        mov      rax, qword ptr [rdi]
        mov      rax, qword ptr [rax+0x40]
        call     [rax+0x20]System.Data.InternalDataCollectionBase:get_Count():int:this
        cmp      eax, r12d
        jg       G_M43767_IG20
 						;; size=19 bbWeight=4 PerfScore 33.00
 G_M43767_IG27:
        xor      r13d, r13d
        jmp      SHORT G_M43767_IG30
-       align    [3 bytes for IG38]
-						;; size=8 bbWeight=0.50 PerfScore 1.12
+       align    [0 bytes for IG38]
+						;; size=5 bbWeight=0.50 PerfScore 1.12
 G_M43767_IG28:
        test     r14b, r14b
-       jne      G_M43767_IG56
+       jne      G_M43767_IG57
        jmp      G_M43767_IG04
 						;; size=14 bbWeight=0.50 PerfScore 1.62
 G_M43767_IG29:
        mov      rdi, gword ptr [r15+0x08]
        mov      rdi, gword ptr [rdi+0x38]
        mov      esi, r13d
        mov      rax, 0xD1FFAB1E      ; code for System.Data.ConstraintCollection:get_Item(int):System.Data.Constraint:this
        cmp      dword ptr [rdi], edi
        call     [rax]System.Data.ConstraintCollection:get_Item(int):System.Data.Constraint:this
        mov      rdi, rax
        mov      rsi, rbx
        mov      rax, qword ptr [rax]
        mov      rax, qword ptr [rax+0x48]
        call     [rax+0x08]System.Data.Constraint:ContainsColumn(System.Data.DataColumn):ubyte:this
        test     eax, eax
        jne      SHORT G_M43767_IG32
        inc      r13d
 						;; size=48 bbWeight=2 PerfScore 39.00
 G_M43767_IG30:
        mov      rdi, gword ptr [r15+0x08]
        mov      rdi, gword ptr [rdi+0x38]
        mov      rdi, gword ptr [rdi+0x10]
        mov      rax, qword ptr [rdi]
        mov      rax, qword ptr [rax+0x40]
        call     [rax+0x30]System.Collections.ArrayList:get_Count():int:this
        cmp      eax, r13d
        jg       SHORT G_M43767_IG29
 						;; size=27 bbWeight=4 PerfScore 57.00
 G_M43767_IG31:
        mov      rdi, gword ptr [r15+0x08]
        mov      r12, gword ptr [rdi+0x18]
        test     r12, r12
        je       G_M43767_IG40
        mov      rdi, 0xD1FFAB1E      ; System.Data.ParentForeignKeyConstraintEnumerator
        call     CORINFO_HELP_NEWSFAST
        mov      r13, rax
        mov      rax, gword ptr [r15+0x08]
-       mov      gword ptr [rbp-0x70], rax
+       mov      gword ptr [rbp-0x88], rax
        jmp      SHORT G_M43767_IG33
-						;; size=45 bbWeight=0.50 PerfScore 5.88
+						;; size=48 bbWeight=0.50 PerfScore 5.88
 G_M43767_IG32:
        test     r14b, r14b
-       jne      G_M43767_IG57
+       jne      G_M43767_IG58
        jmp      G_M43767_IG04
 						;; size=14 bbWeight=0.50 PerfScore 1.62
 G_M43767_IG33:
        mov      rdi, gword ptr [r12+0x20]
        mov      rdi, gword ptr [rdi+0x10]
        mov      rcx, qword ptr [rdi]
        mov      rcx, qword ptr [rcx+0x58]
        call     [rcx]System.Collections.ArrayList:GetEnumerator():System.Collections.IEnumerator:this
        lea      rdi, bword ptr [r13+0x08]
        mov      rsi, rax
        call     CORINFO_HELP_ASSIGN_REF
        xor      rdi, rdi
        mov      gword ptr [r13+0x18], rdi
        lea      rdi, bword ptr [r13+0x20]
-       mov      rsi, gword ptr [rbp-0x70]
+       mov      rsi, gword ptr [rbp-0x88]
        call     CORINFO_HELP_ASSIGN_REF
        mov      rdi, r13
        mov      rax, 0xD1FFAB1E      ; code for System.Data.ConstraintEnumerator:GetNext():ubyte:this
        call     [rax]System.Data.ConstraintEnumerator:GetNext():ubyte:this
        test     eax, eax
        je       SHORT G_M43767_IG40
-						;; size=68 bbWeight=0.50 PerfScore 10.62
+						;; size=71 bbWeight=0.50 PerfScore 10.62
 G_M43767_IG34:
        mov      r12, gword ptr [r13+0x18]
        mov      rsi, r12
        test     rsi, rsi
        je       SHORT G_M43767_IG37
 						;; size=12 bbWeight=4 PerfScore 14.00
 G_M43767_IG35:
        mov      rdi, 0xD1FFAB1E      ; System.Data.ForeignKeyConstraint
        cmp      qword ptr [rsi], rdi
        je       SHORT G_M43767_IG37
 						;; size=15 bbWeight=2 PerfScore 8.50
 G_M43767_IG36:
        mov      rsi, r12
        mov      rax, 0xD1FFAB1E      ; code for CORINFO_HELP_CHKCASTCLASS_SPECIAL
        call     [rax]CORINFO_HELP_CHKCASTCLASS_SPECIAL
 						;; size=15 bbWeight=1 PerfScore 3.50
 G_M43767_IG37:
        cmp      byte  ptr [r12], r12b
        mov      rdi, r12
        mov      rax, 0xD1FFAB1E      ; code for System.Data.Constraint:CheckStateForProperty():this
        call     [rax]System.Data.Constraint:CheckStateForProperty():this
        mov      rdi, gword ptr [r12+0x70]
        xor      eax, eax
        mov      ecx, dword ptr [rdi+0x08]
        test     ecx, ecx
        jle      SHORT G_M43767_IG39
 						;; size=33 bbWeight=4 PerfScore 48.00
 G_M43767_IG38:
        cmp      gword ptr [rdi+8*rax+0x10], rbx
-       je       G_M43767_IG49
+       je       G_M43767_IG50
        inc      eax
        cmp      ecx, eax
        jg       SHORT G_M43767_IG38
 						;; size=17 bbWeight=16 PerfScore 88.00
 G_M43767_IG39:
        mov      rdi, r13
        mov      rax, 0xD1FFAB1E      ; code for System.Data.ConstraintEnumerator:GetNext():ubyte:this
        call     [rax]System.Data.ConstraintEnumerator:GetNext():ubyte:this
        test     eax, eax
        jne      SHORT G_M43767_IG34
 						;; size=19 bbWeight=4 PerfScore 19.00
 G_M43767_IG40:
        mov      rdi, gword ptr [rbx+0x50]
        test     rdi, rdi
-       je       SHORT G_M43767_IG45
+       je       G_M43767_IG45
        xor      r12d, r12d
        cmp      dword ptr [rdi+0x10], 0
        jle      SHORT G_M43767_IG45
-						;; size=18 bbWeight=0.50 PerfScore 3.75
+						;; size=22 bbWeight=0.50 PerfScore 3.75
 G_M43767_IG41:
        mov      rdi, gword ptr [rbx+0x50]
        cmp      r12d, dword ptr [rdi+0x10]
-       jae      G_M43767_IG58
+       jae      G_M43767_IG59
        mov      rdi, gword ptr [rdi+0x08]
        cmp      r12d, dword ptr [rdi+0x08]
-       jae      G_M43767_IG51
+       jae      G_M43767_IG52
        mov      r13, gword ptr [rdi+8*r12+0x10]
        cmp      byte  ptr [r15+0x54], 0
        je       SHORT G_M43767_IG43
 						;; size=40 bbWeight=4 PerfScore 72.00
 G_M43767_IG42:
        mov      rdi, gword ptr [r13+0x48]
        cmp      rdi, gword ptr [r15+0x08]
        je       SHORT G_M43767_IG44
        cmp      gword ptr [r13+0x48], 0
        je       SHORT G_M43767_IG44
 						;; size=17 bbWeight=2 PerfScore 20.00
 G_M43767_IG43:
        cmp      gword ptr [r13+0x48], 0
        je       SHORT G_M43767_IG44
        mov      rdi, gword ptr [r13+0x38]
        test     rdi, rdi
        je       SHORT G_M43767_IG44
        mov      rdi, gword ptr [rdi+0x10]
        test     rdi, rdi
        je       SHORT G_M43767_IG44
        mov      rsi, rbx
        mov      rax, qword ptr [rdi]
        mov      rax, qword ptr [rax+0x48]
        call     [rax+0x30]System.Data.ExpressionNode:DependsOn(System.Data.DataColumn):ubyte:this
        test     eax, eax
-       jne      SHORT G_M43767_IG50
-						;; size=42 bbWeight=2 PerfScore 38.00
+       jne      G_M43767_IG51
+						;; size=46 bbWeight=2 PerfScore 38.00
 G_M43767_IG44:
        inc      r12d
        mov      rdi, gword ptr [rbx+0x50]
        cmp      r12d, dword ptr [rdi+0x10]
        jl       SHORT G_M43767_IG41
 						;; size=13 bbWeight=4 PerfScore 25.00
 G_M43767_IG45:
        mov      rdi, gword ptr [r15+0x08]
        mov      rax, 0xD1FFAB1E      ; code for System.Data.DataTable:get_LiveIndexes():System.Collections.Generic.List`1[System.Data.Index]:this
        cmp      dword ptr [rdi], edi
        call     [rax]System.Data.DataTable:get_LiveIndexes():System.Collections.Generic.List`1[System.Data.Index]:this
        mov      edi, dword ptr [rax+0x14]
-       xor      edi, edi
-       align    [3 bytes for IG46]
-						;; size=26 bbWeight=0.50 PerfScore 5.38
+       mov      gword ptr [rbp-0x40], rax
+       xor      rsi, rsi
+       mov      gword ptr [rbp-0x38], rsi
+						;; size=31 bbWeight=0.50 PerfScore 6.25
 G_M43767_IG46:
-       mov      esi, dword ptr [rax+0x10]
-       cmp      edi, esi
-       jae      SHORT G_M43767_IG47
-       mov      rsi, gword ptr [rax+0x08]
-       cmp      edi, dword ptr [rsi+0x08]
-       jae      SHORT G_M43767_IG51
-       inc      edi
-       jmp      SHORT G_M43767_IG46
-						;; size=20 bbWeight=4 PerfScore 46.00
+       mov      dword ptr [rbp-0x30], esi
+       mov      dword ptr [rbp-0x2C], edi
+       lea      rdi, [rbp-0x40]
+       mov      r14, 0xD1FFAB1E      ; System.Collections.Generic.List`1+Enumerator[System.Data.Index]
+       mov      rsi, r14
+       mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       call     [rax]System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       test     eax, eax
+       je       SHORT G_M43767_IG48
+						;; size=39 bbWeight=0.50 PerfScore 3.75
 G_M43767_IG47:
-       mov      eax, 1
-						;; size=5 bbWeight=4 PerfScore 1.00
+       lea      rdi, [rbp-0x40]
+       mov      rsi, r14
+       mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       call     [rax]System.Collections.Generic.List`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
+       test     eax, eax
+       jne      SHORT G_M43767_IG47
+						;; size=23 bbWeight=4 PerfScore 21.00
 G_M43767_IG48:
-       add      rsp, 72
+       mov      eax, 1
+						;; size=5 bbWeight=0.50 PerfScore 0.12
+G_M43767_IG49:
+       add      rsp, 104
        pop      rbx
        pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
-						;; size=15 bbWeight=4 PerfScore 17.00
-G_M43767_IG49:
-       test     r14b, r14b
-       jne      G_M43767_IG59
-       jmp      G_M43767_IG04
-						;; size=14 bbWeight=0.50 PerfScore 1.62
+						;; size=15 bbWeight=0.50 PerfScore 2.12
 G_M43767_IG50:
        test     r14b, r14b
        jne      G_M43767_IG60
        jmp      G_M43767_IG04
 						;; size=14 bbWeight=0.50 PerfScore 1.62
 G_M43767_IG51:
+       test     r14b, r14b
+       jne      G_M43767_IG61
+       jmp      G_M43767_IG04
+						;; size=14 bbWeight=0.50 PerfScore 1.62
+G_M43767_IG52:
        call     CORINFO_HELP_RNGCHKFAIL
        int3     
 						;; size=6 bbWeight=0 PerfScore 0.00
-G_M43767_IG52:
+G_M43767_IG53:
        mov      edi, 0x83F7
        mov      rsi, 0xD1FFAB1E
        call     CORINFO_HELP_STRCNS
        mov      rdi, rax
        mov      rax, 0xD1FFAB1E      ; code for System.Data.ExceptionBuilder:ArgumentNull(System.String):System.Exception
        call     [rax]System.Data.ExceptionBuilder:ArgumentNull(System.String):System.Exception
        mov      rdi, rax
        call     CORINFO_HELP_THROW
        int3     
 						;; size=44 bbWeight=0 PerfScore 0.00
-G_M43767_IG53:
+G_M43767_IG54:
        mov      rax, 0xD1FFAB1E      ; code for System.Data.ExceptionBuilder:CannotRemoveColumn():System.Exception
        call     [rax]System.Data.ExceptionBuilder:CannotRemoveColumn():System.Exception
        mov      rdi, rax
        call     CORINFO_HELP_THROW
        int3     
 						;; size=21 bbWeight=0 PerfScore 0.00
-G_M43767_IG54:
+G_M43767_IG55:
        mov      rax, 0xD1FFAB1E      ; code for System.Data.ExceptionBuilder:CannotRemovePrimaryKey():System.Exception
        call     [rax]System.Data.ExceptionBuilder:CannotRemovePrimaryKey():System.Exception
        mov      rdi, rax
        call     CORINFO_HELP_THROW
        int3     
 						;; size=21 bbWeight=0 PerfScore 0.00
-G_M43767_IG55:
+G_M43767_IG56:
        mov      rdi, gword ptr [r15+0x08]
        mov      rax, 0xD1FFAB1E      ; code for System.Data.DataTable:get_ParentRelations():System.Data.DataRelationCollection:this
        cmp      dword ptr [rdi], edi
        call     [rax]System.Data.DataTable:get_ParentRelations():System.Data.DataRelationCollection:this
        mov      rdi, rax
        mov      esi, r12d
        mov      rax, qword ptr [rax]
        mov      rax, qword ptr [rax+0x48]
        call     [rax+0x10]System.Data.DataRelationCollection:get_Item(int):System.Data.DataRelation:this
        mov      rdi, rax
        mov      rax, qword ptr [rax]
        mov      rax, qword ptr [rax+0x48]
        call     [rax+0x08]System.Data.DataRelation:get_RelationName():System.String:this
        mov      rdi, rax
        mov      rax, 0xD1FFAB1E      ; code for System.Data.ExceptionBuilder:CannotRemoveChildKey(System.String):System.Exception
        call     [rax]System.Data.ExceptionBuilder:CannotRemoveChildKey(System.String):System.Exception
        mov      rdi, rax
        call     CORINFO_HELP_THROW
        int3     
 						;; size=71 bbWeight=0 PerfScore 0.00
-G_M43767_IG56:
+G_M43767_IG57:
        mov      rdi, gword ptr [r15+0x08]
        mov      rax, 0xD1FFAB1E      ; code for System.Data.DataTable:get_ChildRelations():System.Data.DataRelationCollection:this
        cmp      dword ptr [rdi], edi
        call     [rax]System.Data.DataTable:get_ChildRelations():System.Data.DataRelationCollection:this
        mov      rdi, rax
        mov      esi, r12d
        mov      rax, qword ptr [rax]
        mov      rax, qword ptr [rax+0x48]
        call     [rax+0x10]System.Data.DataRelationCollection:get_Item(int):System.Data.DataRelation:this
        mov      rdi, rax
        mov      rax, qword ptr [rax]
        mov      rax, qword ptr [rax+0x48]
        call     [rax+0x08]System.Data.DataRelation:get_RelationName():System.String:this
        mov      rdi, rax
        mov      rax, 0xD1FFAB1E      ; code for System.Data.ExceptionBuilder:CannotRemoveChildKey(System.String):System.Exception
        call     [rax]System.Data.ExceptionBuilder:CannotRemoveChildKey(System.String):System.Exception
        mov      rdi, rax
        call     CORINFO_HELP_THROW
        int3     
 						;; size=71 bbWeight=0 PerfScore 0.00
-G_M43767_IG57:
+G_M43767_IG58:
        mov      rdi, gword ptr [r15+0x08]
        mov      rdi, gword ptr [rdi+0x38]
        mov      esi, r13d
        mov      rax, 0xD1FFAB1E      ; code for System.Data.ConstraintCollection:get_Item(int):System.Data.Constraint:this
        cmp      dword ptr [rdi], edi
        call     [rax]System.Data.ConstraintCollection:get_Item(int):System.Data.Constraint:this
        mov      rdi, rax
        mov      rax, qword ptr [rax]
        mov      rax, qword ptr [rax+0x40]
        call     [rax+0x20]System.Data.Constraint:get_ConstraintName():System.String:this
        mov      rbx, rax
        mov      rdi, gword ptr [r15+0x08]
        mov      rdi, gword ptr [rdi+0x38]
        mov      esi, r13d
        mov      rax, 0xD1FFAB1E      ; code for System.Data.ConstraintCollection:get_Item(int):System.Data.Constraint:this
        cmp      dword ptr [rdi], edi
        call     [rax]System.Data.ConstraintCollection:get_Item(int):System.Data.Constraint:this
        mov      rdi, rax
        mov      rax, qword ptr [rax]
        mov      rax, qword ptr [rax+0x48]
        call     [rax]System.Data.Constraint:get_Table():System.Data.DataTable:this
        mov      rsi, gword ptr [rax+0x70]
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.Data.ExceptionBuilder:CannotRemoveConstraint(System.String,System.String):System.Exception
        call     [rax]System.Data.ExceptionBuilder:CannotRemoveConstraint(System.String,System.String):System.Exception
        mov      rdi, rax
        call     CORINFO_HELP_THROW
        int3     
 						;; size=106 bbWeight=0 PerfScore 0.00
-G_M43767_IG58:
+G_M43767_IG59:
        mov      rax, 0xD1FFAB1E      ; code for System.ThrowHelper:ThrowArgumentOutOfRange_IndexMustBeLessException()
        call     [rax]System.ThrowHelper:ThrowArgumentOutOfRange_IndexMustBeLessException()
        int3     
 						;; size=13 bbWeight=0 PerfScore 0.00
-G_M43767_IG59:
+G_M43767_IG60:
        mov      rdi, r12
        mov      rax, qword ptr [r12]
        mov      rax, qword ptr [rax+0x40]
        call     [rax+0x20]System.Data.Constraint:get_ConstraintName():System.String:this
        mov      rbx, rax
        mov      rdi, r12
        mov      rax, qword ptr [r12]
        mov      rax, qword ptr [rax+0x48]
        call     [rax]System.Data.Constraint:get_Table():System.Data.DataTable:this
        mov      rsi, gword ptr [rax+0x70]
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.Data.ExceptionBuilder:CannotRemoveConstraint(System.String,System.String):System.Exception
        call     [rax]System.Data.ExceptionBuilder:CannotRemoveConstraint(System.String,System.String):System.Exception
        mov      rdi, rax
        call     CORINFO_HELP_THROW
        int3     
 						;; size=58 bbWeight=0 PerfScore 0.00
-G_M43767_IG60:
+G_M43767_IG61:
        mov      rbx, gword ptr [r13+0x20]
        mov      rdi, r13
        mov      rax, 0xD1FFAB1E      ; code for System.Data.DataColumn:get_Expression():System.String:this
        call     [rax]System.Data.DataColumn:get_Expression():System.String:this
        mov      rsi, rax
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.Data.ExceptionBuilder:CannotRemoveExpression(System.String,System.String):System.Exception
        call     [rax]System.Data.ExceptionBuilder:CannotRemoveExpression(System.String,System.String):System.Exception
        mov      rdi, rax
        call     CORINFO_HELP_THROW
        int3     
 						;; size=46 bbWeight=0 PerfScore 0.00
 
-; Total bytes of code 2157, prolog size 28, PerfScore 1307.75, instruction count 547, allocated bytes for code 2157 (MethodHash=a44a5508) for method System.Data.DataColumnCollection:CanRemove(System.Data.DataColumn,ubyte):ubyte:this (FullOpts)
+; Total bytes of code 2247, prolog size 47, PerfScore 1275.33, instruction count 559, allocated bytes for code 2247 (MethodHash=a44a5508) for method System.Data.DataColumnCollection:CanRemove(System.Data.DataColumn,ubyte):ubyte:this (FullOpts)
90 (15.62 % of base) - System.Threading.Tasks.Dataflow.BatchBlock`1+BatchBlockTargetCore[int]:ConsumeReservedMessagesGreedyBounded():this
 ; Assembly listing for method System.Threading.Tasks.Dataflow.BatchBlock`1+BatchBlockTargetCore[int]:ConsumeReservedMessagesGreedyBounded():this (FullOpts)
 ; Emitting BLENDED_CODE for X64 with AVX - Unix
 ; FullOpts code
 ; optimized code
 ; rbp based frame
 ; fully interruptible
 ; No PGO data
-; 0 inlinees with PGO data; 17 single block inlinees; 8 inlinees without PGO data
+; 0 inlinees with PGO data; 17 single block inlinees; 6 inlinees without PGO data
 ; Final local variable assignments
 ;
-;  V00 this         [V00,T11] (  8, 11.50)     ref  ->  rbx         this class-hnd single-def <System.Threading.Tasks.Dataflow.BatchBlock`1+BatchBlockTargetCore[int]>
-;  V01 loc0         [V01,T30] (  4,  5.50)     int  ->  r15        
+;  V00 this         [V00,T07] (  8, 11.50)     ref  ->  rbx         this class-hnd single-def <System.Threading.Tasks.Dataflow.BatchBlock`1+BatchBlockTargetCore[int]>
+;  V01 loc0         [V01,T24] (  4,  5.50)     int  ->  r15        
 ;  V02 loc1         [V02,T01] ( 13, 32   )     ref  ->  r14         class-hnd single-def <System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[int],System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,int]]]>
-;* V03 loc2         [V03,T35] (  0,  0   )     int  ->  zero-ref   
+;* V03 loc2         [V03,T30] (  0,  0   )     int  ->  zero-ref   
 ;* V04 loc3         [V04    ] (  0,  0   )  struct (24) zero-ref    do-not-enreg[SF] ld-addr-op <System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[int],System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,int]]>
 ;  V05 loc4         [V05    ] (  2,  8   )   ubyte  ->  [rbp-0x30]  do-not-enreg[X] addr-exposed ld-addr-op
-;  V06 loc5         [V06,T29] (  2,  6   )     int  ->  [rbp-0x34]  spill-single-def
+;  V06 loc5         [V06,T22] (  2,  6   )     int  ->  [rbp-0x34]  spill-single-def
 ;* V07 loc6         [V07    ] (  0,  0   )  struct (24) zero-ref    do-not-enreg[S] ld-addr-op <System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[int],System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,int]]>
 ;* V08 loc7         [V08    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op <System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,int]>
 ;* V09 loc8         [V09    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op <System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,int]>
 ;* V10 loc9         [V10    ] (  0,  0   )  struct (24) zero-ref    do-not-enreg[SF] ld-addr-op <System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[int],System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,int]]>
-;  V11 loc10        [V11,T34] (  4,  1.50)     ref  ->  [rbp-0x50]  class-hnd EH-live spill-single-def <System.Threading.Tasks.TaskCompletionSource`1[System.Threading.Tasks.Dataflow.Internal.VoidResult]>
+;  V11 loc10        [V11,T29] (  4,  1.50)     ref  ->  [rbp-0xA0]  class-hnd EH-live spill-single-def <System.Threading.Tasks.TaskCompletionSource`1[System.Threading.Tasks.Dataflow.Internal.VoidResult]>
 ;  V12 loc11        [V12    ] (  5,  4   )   ubyte  ->  [rbp-0x40]  do-not-enreg[X] addr-exposed ld-addr-op
-;* V13 loc12        [V13    ] (  0,  0   )  struct (40) zero-ref    do-not-enreg[SF] ld-addr-op <System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[int],System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,int]]]>
+;  V13 loc12        [V13    ] (  8, 17   )  struct (40) [rbp-0x68]  do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[int],System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,int]]]>
 ;* V14 loc13        [V14    ] (  0,  0   )  struct (24) zero-ref    do-not-enreg[SF] ld-addr-op <System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[int],System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,int]]>
 ;# V15 OutArgs      [V15    ] (  1,  1   )  struct ( 0) [rsp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
 ;* V16 tmp1         [V16    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "impAppendStmt" <System.Threading.Tasks.Dataflow.ISourceBlock`1[int]>
 ;* V17 tmp2         [V17    ] (  0,  0   )  struct ( 8) zero-ref    "spilled call-like call argument" <System.Threading.Tasks.Dataflow.DataflowMessageHeader>
 ;* V18 tmp3         [V18    ] (  0,  0   )  struct ( 8) zero-ref    "spilled call-like call argument" <System.Threading.Tasks.Dataflow.DataflowMessageHeader>
-;  V19 tmp4         [V19,T00] ( 11, 44   )     ref  ->  [rbp-0x58]  class-hnd spill-single-def "impAppendStmt" <System.Collections.Generic.Queue`1[int]>
-;  V20 tmp5         [V20,T32] (  3,  3   )     ref  ->  rsi         class-hnd single-def "dup spill" <System.Threading.Tasks.Dataflow.Internal.BoundingState>
+;  V19 tmp4         [V19,T00] ( 11, 44   )     ref  ->  r13         class-hnd "impAppendStmt" <System.Collections.Generic.Queue`1[int]>
+;  V20 tmp5         [V20,T27] (  3,  3   )     ref  ->  rdi         class-hnd single-def "dup spill" <System.Threading.Tasks.Dataflow.Internal.BoundingState>
 ;* V21 tmp6         [V21    ] (  0,  0   )  struct (24) zero-ref    do-not-enreg[S] "Inlining Arg" <System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[int],System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,int]]>
 ;* V22 tmp7         [V22    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <System.__Canon>
 ;* V23 tmp8         [V23    ] (  0,  0   )  struct (16) zero-ref    "Inlining Arg" <System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,int]>
 ;* V24 tmp9         [V24    ] (  0,  0   )  struct (24) zero-ref    do-not-enreg[S] "Inlining Arg" <System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[int],System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,int]]>
-;* V25 tmp10        [V25    ] (  0,  0   )  struct (40) zero-ref    do-not-enreg[SF] ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[int],System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,int]]]>
+;  V25 tmp10        [V25,T25] (  2,  4   )  struct (40) [rbp-0x90]  do-not-enreg[SF] must-init ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[int],System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,int]]]>
 ;* V26 tmp11        [V26    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
-;  V27 tmp12        [V27,T12] (  3, 12   )   byref  ->  rcx         "Inlining Arg"
-;  V28 tmp13        [V28,T24] (  4,  8   )     int  ->  rdx         "Inline stloc first use temp"
-;* V29 tmp14        [V29,T25] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;* V30 tmp15        [V30    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline stloc first use temp" <System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[int],System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,int]]]>
-;* V31 tmp16        [V31,T31] (  0,  0   )    long  ->  zero-ref    "field V08.key (fldOffset=0x0)" P-INDEP
-;* V32 tmp17        [V32    ] (  0,  0   )     int  ->  zero-ref    "field V08.value (fldOffset=0x8)" P-INDEP
-;* V33 tmp18        [V33    ] (  0,  0   )    long  ->  zero-ref    "field V09.key (fldOffset=0x0)" P-INDEP
-;* V34 tmp19        [V34    ] (  0,  0   )     int  ->  zero-ref    "field V09.value (fldOffset=0x8)" P-INDEP
-;* V35 tmp20        [V35    ] (  0,  0   )    long  ->  zero-ref    "field V17._id (fldOffset=0x0)" P-INDEP
-;* V36 tmp21        [V36    ] (  0,  0   )    long  ->  zero-ref    "field V18._id (fldOffset=0x0)" P-INDEP
-;* V37 tmp22        [V37    ] (  0,  0   )    long  ->  zero-ref    "field V23.key (fldOffset=0x0)" P-INDEP
-;* V38 tmp23        [V38    ] (  0,  0   )     int  ->  zero-ref    "field V23.value (fldOffset=0x8)" P-INDEP
-;  V39 tmp24        [V39,T20] (  3, 10   )     ref  ->  [rbp-0x60]  spill-single-def "V04.[000..008)"
-;  V40 tmp25        [V40,T10] (  3, 10   )    long  ->  [rbp-0x48]  spill-single-def "V04.[008..016)"
-;* V41 tmp26        [V41    ] (  0,  0   )     int  ->  zero-ref    "V04.[016..020)"
-;* V42 tmp27        [V42    ] (  0,  0   )     ref  ->  zero-ref    "V10.[000..008)"
-;* V43 tmp28        [V43    ] (  0,  0   )    long  ->  zero-ref    "V10.[008..016)"
-;* V44 tmp29        [V44    ] (  0,  0   )     int  ->  zero-ref    "V10.[016..020)"
-;  V45 tmp30        [V45,T08] (  4, 17   )     ref  ->  r14         single-def "V13.[000..008)"
-;  V46 tmp31        [V46,T03] (  6, 21   )     int  ->  r13         "V13.[008..012)"
-;  V47 tmp32        [V47,T23] (  2,  9   )     int  ->  r15         "V13.[012..016)"
-;  V48 tmp33        [V48,T13] (  2,  8   )     ref  ->  rdi         "V13.[016..024)"
-;* V49 tmp34        [V49    ] (  0,  0   )    long  ->  zero-ref    "V13.[024..032)"
-;  V50 tmp35        [V50,T21] (  2,  6   )     int  ->  r12         "V13.[032..036)"
-;* V51 tmp36        [V51    ] (  0,  0   )     ref  ->  zero-ref    "V14.[000..008)"
-;* V52 tmp37        [V52    ] (  0,  0   )    long  ->  zero-ref    "V14.[008..016)"
-;* V53 tmp38        [V53    ] (  0,  0   )     int  ->  zero-ref    "V14.[016..020)"
-;* V54 tmp39        [V54    ] (  0,  0   )     ref  ->  zero-ref    single-def "V25.[000..008)"
-;* V55 tmp40        [V55    ] (  0,  0   )     int  ->  zero-ref    "V25.[008..012)"
-;  V56 tmp41        [V56,T33] (  2,  2   )     int  ->  r15         "V25.[012..016)"
-;* V57 tmp42        [V57    ] (  0,  0   )     ref  ->  zero-ref    single-def "V25.[016..024)"
-;* V58 tmp43        [V58    ] (  0,  0   )    long  ->  zero-ref    "V25.[024..032)"
-;* V59 tmp44        [V59    ] (  0,  0   )     int  ->  zero-ref    "V25.[032..036)"
-;* V60 tmp45        [V60    ] (  0,  0   )     ref  ->  zero-ref    "V24.[000..008)"
-;* V61 tmp46        [V61    ] (  0,  0   )    long  ->  zero-ref    "V24.[008..016)"
-;* V62 tmp47        [V62    ] (  0,  0   )     int  ->  zero-ref    "V24.[016..020)"
-;  V63 tmp48        [V63,T04] (  3, 24   )   byref  ->  rcx         "Spilling address for field-by-field copy"
-;  V64 tmp49        [V64,T09] (  4, 16   )   byref  ->  r12         "Spilling address for field-by-field copy"
-;  V65 tmp50        [V65,T05] (  3, 24   )   byref  ->  rsi         "Spilling address for field-by-field copy"
-;  V66 tmp51        [V66,T06] (  3, 24   )     ref  ->  rdx         "arr expr"
-;* V67 tmp52        [V67,T26] (  0,  0   )     ref  ->  zero-ref    "arr expr"
-;  V68 tmp53        [V68,T14] (  3, 12   )     ref  ->  rdi         "arr expr"
-;  V69 tmp54        [V69,T07] (  3, 24   )     ref  ->  rsi         "arr expr"
-;  V70 tmp55        [V70,T15] (  3, 12   )     ref  ->  rcx         "arr expr"
-;  V71 tmp56        [V71,T18] (  3, 12   )     int  ->  rdx         "index expr"
-;  V72 PSPSym       [V72,T36] (  1,  1   )    long  ->  [rbp-0x70]  do-not-enreg[V] "PSPSym"
-;  V73 cse0         [V73,T16] (  3, 12   )   byref  ->  rdx         "CSE #05: moderate"
-;  V74 cse1         [V74,T22] (  3, 10   )    long  ->  r12         "CSE #04: moderate"
-;  V75 cse2         [V75,T17] (  2,  8   )     ref  ->  rdx         "CSE #01: moderate"
-;  V76 cse3         [V76,T19] (  2,  8   )     int  ->  rsi         "CSE #11: moderate"
-;  V77 cse4         [V77,T28] (  3,  6   )     int  ->  rsi         "CSE #08: moderate"
-;  V78 cse5         [V78,T27] (  3,  6   )     ref  ->  rdi         "CSE #09: moderate"
-;  V79 rat0         [V79,T02] (  9, 29   )    long  ->  r13         "Widened IV V03"
+;  V27 tmp12        [V27,T08] (  3, 12   )   byref  ->  rsi         "Inlining Arg"
+;  V28 tmp13        [V28,T16] (  4,  8   )     int  ->  rax         "Inline stloc first use temp"
+;* V29 tmp14        [V29,T26] (  0,  0   )    long  ->  zero-ref    "field V08.key (fldOffset=0x0)" P-INDEP
+;* V30 tmp15        [V30    ] (  0,  0   )     int  ->  zero-ref    "field V08.value (fldOffset=0x8)" P-INDEP
+;* V31 tmp16        [V31    ] (  0,  0   )    long  ->  zero-ref    "field V09.key (fldOffset=0x0)" P-INDEP
+;* V32 tmp17        [V32    ] (  0,  0   )     int  ->  zero-ref    "field V09.value (fldOffset=0x8)" P-INDEP
+;* V33 tmp18        [V33    ] (  0,  0   )    long  ->  zero-ref    "field V17._id (fldOffset=0x0)" P-INDEP
+;* V34 tmp19        [V34    ] (  0,  0   )    long  ->  zero-ref    "field V18._id (fldOffset=0x0)" P-INDEP
+;* V35 tmp20        [V35    ] (  0,  0   )    long  ->  zero-ref    "field V23.key (fldOffset=0x0)" P-INDEP
+;* V36 tmp21        [V36    ] (  0,  0   )     int  ->  zero-ref    "field V23.value (fldOffset=0x8)" P-INDEP
+;  V37 tmp22        [V37,T14] (  3, 10   )     ref  ->  [rbp-0xA8]  spill-single-def "V04.[000..008)"
+;  V38 tmp23        [V38,T06] (  3, 10   )    long  ->  [rbp-0x98]  spill-single-def "V04.[008..016)"
+;* V39 tmp24        [V39    ] (  0,  0   )     int  ->  zero-ref    "V04.[016..020)"
+;* V40 tmp25        [V40    ] (  0,  0   )     ref  ->  zero-ref    "V10.[000..008)"
+;* V41 tmp26        [V41    ] (  0,  0   )    long  ->  zero-ref    "V10.[008..016)"
+;* V42 tmp27        [V42    ] (  0,  0   )     int  ->  zero-ref    "V10.[016..020)"
+;  V43 tmp28        [V43,T17] (  2,  8   )     ref  ->  rsi         "V14.[000..008)"
+;* V44 tmp29        [V44    ] (  0,  0   )    long  ->  zero-ref    "V14.[008..016)"
+;  V45 tmp30        [V45,T23] (  2,  6   )     int  ->  r14         "V14.[016..020)"
+;* V46 tmp31        [V46    ] (  0,  0   )     ref  ->  zero-ref    single-def "V25.[000..008)"
+;* V47 tmp32        [V47    ] (  0,  0   )     int  ->  zero-ref    "V25.[008..012)"
+;  V48 tmp33        [V48,T28] (  2,  2   )     int  ->  rdi         "V25.[012..016)"
+;* V49 tmp34        [V49    ] (  0,  0   )     ref  ->  zero-ref    "V24.[000..008)"
+;* V50 tmp35        [V50    ] (  0,  0   )    long  ->  zero-ref    "V24.[008..016)"
+;* V51 tmp36        [V51    ] (  0,  0   )     int  ->  zero-ref    "V24.[016..020)"
+;  V52 tmp37        [V52,T03] (  3, 24   )   byref  ->  rcx         "Spilling address for field-by-field copy"
+;  V53 tmp38        [V53,T05] (  4, 16   )   byref  ->  r12         "Spilling address for field-by-field copy"
+;  V54 tmp39        [V54,T04] (  3, 24   )     ref  ->  rdx         "arr expr"
+;* V55 tmp40        [V55,T18] (  0,  0   )     ref  ->  zero-ref    "arr expr"
+;  V56 tmp41        [V56,T09] (  3, 12   )     ref  ->  rdi         "arr expr"
+;  V57 tmp42        [V57,T10] (  3, 12   )     ref  ->  rsi         "arr expr"
+;  V58 tmp43        [V58,T13] (  3, 12   )     int  ->  rax         "index expr"
+;  V59 PSPSym       [V59,T31] (  1,  1   )    long  ->  [rbp-0xB0]  do-not-enreg[V] "PSPSym"
+;  V60 cse0         [V60,T11] (  3, 12   )   byref  ->  rdx         "CSE #05: moderate"
+;  V61 cse1         [V61,T15] (  3, 10   )    long  ->  r12         "CSE #04: moderate"
+;  V62 cse2         [V62,T12] (  2,  8   )     ref  ->  rdx         "CSE #01: moderate"
+;  V63 cse3         [V63,T20] (  3,  6   )     int  ->  rsi         "CSE #08: moderate"
+;  V64 cse4         [V64,T19] (  3,  6   )     ref  ->  rdi         "CSE #09: moderate"
+;  V65 cse5         [V65,T21] (  3,  6   )    long  ->  r15         "CSE #10: moderate"
+;  V66 rat0         [V66,T02] (  9, 29   )    long  ->  r13         "Widened IV V03"
 ;
-; Lcl frame size = 72
+; Lcl frame size = 136
 
 G_M4676_IG01:
        push     rbp
        push     r15
        push     r14
        push     r13
        push     r12
        push     rbx
-       sub      rsp, 72
-       lea      rbp, [rsp+0x70]
-       mov      qword ptr [rbp-0x70], rsp
+       sub      rsp, 136
+       lea      rbp, [rsp+0xB0]
+       vxorps   xmm8, xmm8, xmm8
+       vmovdqu  ymmword ptr [rbp-0x90], ymm8
+       vmovdqu  ymmword ptr [rbp-0x70], ymm8
+       vmovdqa  xmmword ptr [rbp-0x50], xmm8
+       mov      qword ptr [rbp-0xB0], rsp
        mov      rbx, rdi
-						;; size=26 bbWeight=1 PerfScore 8.00
+						;; size=58 bbWeight=1 PerfScore 14.33
 G_M4676_IG02:
        xor      r15d, r15d
        mov      rdx, gword ptr [rbx+0x20]
        mov      r14, gword ptr [rdx+0x18]
        xor      r13d, r13d
        cmp      dword ptr [r14+0x10], 0
        jle      G_M4676_IG06
 						;; size=25 bbWeight=1 PerfScore 8.50
 G_M4676_IG03:
        cmp      r13d, dword ptr [r14+0x10]
-       jae      G_M4676_IG23
+       jae      G_M4676_IG25
        mov      rdx, gword ptr [r14+0x08]
        cmp      r13d, dword ptr [rdx+0x08]
-       jae      G_M4676_IG22
+       jae      G_M4676_IG24
        lea      r12, [r13+2*r13]
        lea      rdx, bword ptr [rdx+8*r12+0x10]
        mov      rcx, rdx
        mov      rax, gword ptr [rcx]
-       mov      gword ptr [rbp-0x60], rax
+       mov      gword ptr [rbp-0xA8], rax
        mov      r8, qword ptr [rcx+0x08]
-       mov      qword ptr [rbp-0x48], r8
+       mov      qword ptr [rbp-0x98], r8
        xor      ecx, ecx
        mov      qword ptr [rdx], rcx
        mov      qword ptr [rdx+0x08], rcx
        mov      qword ptr [rdx+0x10], rcx
        inc      dword ptr [r14+0x14]
        mov      rdx, gword ptr [rbx+0x18]
        lea      rcx, [rbp-0x30]
        mov      rdi, rax
        mov      rsi, r8
        mov      r11, 0xD1FFAB1E      ; code for System.Threading.Tasks.Dataflow.ISourceBlock`1[int]:ConsumeMessage(System.Threading.Tasks.Dataflow.DataflowMessageHeader,System.Threading.Tasks.Dataflow.ITargetBlock`1[int],byref):int:this
        call     [r11]System.Threading.Tasks.Dataflow.ISourceBlock`1[int]:ConsumeMessage(System.Threading.Tasks.Dataflow.DataflowMessageHeader,System.Threading.Tasks.Dataflow.ITargetBlock`1[int],byref):int:this
        mov      dword ptr [rbp-0x34], eax
        cmp      byte  ptr [rbp-0x30], 0
        je       SHORT G_M4676_IG05
-						;; size=105 bbWeight=4 PerfScore 143.00
+						;; size=111 bbWeight=4 PerfScore 143.00
 G_M4676_IG04:
        cmp      r13d, dword ptr [r14+0x10]
-       jae      G_M4676_IG23
+       jae      G_M4676_IG25
        mov      rdi, gword ptr [r14+0x08]
        cmp      r13d, dword ptr [rdi+0x08]
-       jae      G_M4676_IG22
+       jae      G_M4676_IG24
        lea      r12, bword ptr [rdi+8*r12+0x10]
-       mov      rsi, gword ptr [rbp-0x60]
+       mov      rsi, gword ptr [rbp-0xA8]
        mov      rdi, r12
        call     CORINFO_HELP_ASSIGN_REF
-       mov      rsi, qword ptr [rbp-0x48]
+       mov      rsi, qword ptr [rbp-0x98]
        mov      qword ptr [r12+0x08], rsi
        mov      esi, dword ptr [rbp-0x34]
        mov      dword ptr [r12+0x10], esi
        inc      dword ptr [r14+0x14]
        inc      r15d
-						;; size=65 bbWeight=2 PerfScore 41.00
+						;; size=71 bbWeight=2 PerfScore 41.00
 G_M4676_IG05:
        inc      r13d
        cmp      r13d, dword ptr [r14+0x10]
        jl       G_M4676_IG03
 						;; size=13 bbWeight=4 PerfScore 17.00
 G_M4676_IG06:
        mov      rdi, gword ptr [rbx+0x10]
-       mov      gword ptr [rbp-0x50], rdi
+       mov      gword ptr [rbp-0xA0], rdi
        xor      esi, esi
        mov      dword ptr [rbp-0x40], esi
-						;; size=13 bbWeight=1 PerfScore 4.25
+						;; size=16 bbWeight=1 PerfScore 4.25
 G_M4676_IG07:
        cmp      byte  ptr [rbp-0x40], 0
-       jne      G_M4676_IG15
+       jne      SHORT G_M4676_IG13
        lea      rsi, [rbp-0x40]
        call     System.Threading.Monitor:ReliableEnter(System.Object,byref)
        cmp      gword ptr [rbx+0x28], 0
        je       SHORT G_M4676_IG09
-						;; size=26 bbWeight=1 PerfScore 8.50
+						;; size=22 bbWeight=1 PerfScore 8.50
 G_M4676_IG08:
-       mov      rsi, gword ptr [rbx+0x28]
-       add      dword ptr [rsi+0x0C], r15d
+       mov      rdi, gword ptr [rbx+0x28]
+       add      dword ptr [rdi+0x0C], r15d
 						;; size=8 bbWeight=0.50 PerfScore 2.50
 G_M4676_IG09:
-       mov      r15d, dword ptr [r14+0x14]
-       xor      r13d, r13d
-						;; size=7 bbWeight=1 PerfScore 2.25
+       mov      edi, dword ptr [r14+0x14]
+       vxorps   xmm0, xmm0, xmm0
+       vmovdqu  xmmword ptr [rbp-0x80], xmm0
+       vmovdqu  xmmword ptr [rbp-0x78], xmm0
+						;; size=18 bbWeight=1 PerfScore 4.33
 G_M4676_IG10:
-       cmp      r15d, dword ptr [r14+0x14]
-       jne      G_M4676_IG17
-						;; size=10 bbWeight=8 PerfScore 32.00
+       vmovdqu  ymm0, ymmword ptr [rbp-0x90]
+       vmovdqu  ymmword ptr [rbp-0x68], ymm0
+       mov      rsi, qword ptr [rbp-0x70]
+       mov      qword ptr [rbp-0x48], rsi
+						;; size=21 bbWeight=1 PerfScore 7.00
 G_M4676_IG11:
-       mov      esi, dword ptr [r14+0x10]
-       cmp      r13d, esi
-       jae      G_M4676_IG18
-       mov      rsi, gword ptr [r14+0x08]
-       cmp      r13d, dword ptr [rsi+0x08]
-       jae      G_M4676_IG16
-       mov      edi, r13d
-       lea      rdi, [rdi+2*rdi]
-       lea      rsi, bword ptr [rsi+8*rdi+0x10]
-       mov      rdi, gword ptr [rsi]
-       mov      r12d, dword ptr [rsi+0x10]
-       inc      r13d
-       test     rdi, rdi
-       je       SHORT G_M4676_IG10
-						;; size=54 bbWeight=4 PerfScore 66.00
+       mov      gword ptr [rbp-0x68], r14
+       xor      esi, esi
+       mov      dword ptr [rbp-0x60], esi
+       mov      dword ptr [rbp-0x5C], edi
+       jmp      SHORT G_M4676_IG14
+						;; size=14 bbWeight=1 PerfScore 5.25
 G_M4676_IG12:
-       mov      rax, gword ptr [rbx+0x08]
-       mov      gword ptr [rbp-0x58], rax
-       mov      esi, dword ptr [rax+0x18]
-       mov      rdi, gword ptr [rax+0x08]
-       cmp      esi, dword ptr [rdi+0x08]
-       jne      SHORT G_M4676_IG13
-       inc      esi
-       mov      rdi, rax
-       mov      rcx, 0xD1FFAB1E      ; code for System.Collections.Generic.Queue`1[int]:Grow(int):this
-       call     [rcx]System.Collections.Generic.Queue`1[int]:Grow(int):this
-       mov      rax, gword ptr [rbp-0x58]
-						;; size=41 bbWeight=2 PerfScore 31.50
+       call     CORINFO_HELP_RNGCHKFAIL
+       int3     
+						;; size=6 bbWeight=0 PerfScore 0.00
 G_M4676_IG13:
-       mov      rdi, gword ptr [rax+0x08]
-       mov      rcx, rdi
-       mov      edx, dword ptr [rax+0x14]
-       cmp      edx, dword ptr [rcx+0x08]
-       jae      SHORT G_M4676_IG16
-       mov      dword ptr [rcx+4*rdx+0x10], r12d
-       lea      rcx, bword ptr [rax+0x14]
-       mov      edx, dword ptr [rcx]
-       inc      edx
-       cmp      dword ptr [rdi+0x08], edx
-       jne      SHORT G_M4676_IG14
-       xor      edx, edx
-						;; size=35 bbWeight=2 PerfScore 32.50
-G_M4676_IG14:
-       mov      dword ptr [rcx], edx
-       inc      dword ptr [rax+0x18]
-       inc      dword ptr [rax+0x1C]
-       jmp      G_M4676_IG10
-						;; size=13 bbWeight=2 PerfScore 18.00
-G_M4676_IG15:
        mov      rax, 0xD1FFAB1E      ; code for System.Threading.Monitor:ThrowLockTakenException()
        call     [rax]System.Threading.Monitor:ThrowLockTakenException()
        int3     
 						;; size=13 bbWeight=0 PerfScore 0.00
+G_M4676_IG14:
+       lea      rdi, [rbp-0x68]
+       mov      r15, 0xD1FFAB1E      ; System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[int],System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,int]]]
+       mov      rsi, r15
+       mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.__Canon,System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,int]]]:MoveNext():ubyte:this
+       call     [rax]System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.__Canon,System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,int]]]:MoveNext():ubyte:this
+       test     eax, eax
+       je       SHORT G_M4676_IG20
+						;; size=33 bbWeight=1 PerfScore 5.50
+G_M4676_IG15:
+       mov      rsi, gword ptr [rbp-0x58]
+       mov      r14d, dword ptr [rbp-0x48]
+       test     rsi, rsi
+       je       SHORT G_M4676_IG19
+						;; size=13 bbWeight=4 PerfScore 13.00
 G_M4676_IG16:
-       call     CORINFO_HELP_RNGCHKFAIL
-       int3     
-						;; size=6 bbWeight=0 PerfScore 0.00
+       mov      r13, gword ptr [rbx+0x08]
+       mov      esi, dword ptr [r13+0x18]
+       mov      rdi, gword ptr [r13+0x08]
+       cmp      esi, dword ptr [rdi+0x08]
+       jne      SHORT G_M4676_IG17
+       inc      esi
+       mov      rdi, r13
+       mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.Queue`1[int]:Grow(int):this
+       call     [rax]System.Collections.Generic.Queue`1[int]:Grow(int):this
+						;; size=34 bbWeight=2 PerfScore 27.50
 G_M4676_IG17:
-       mov      rax, 0xD1FFAB1E      ; code for System.ThrowHelper:ThrowInvalidOperationException_InvalidOperation_EnumFailedVersion()
-       call     [rax]System.ThrowHelper:ThrowInvalidOperationException_InvalidOperation_EnumFailedVersion()
-       int3     
-						;; size=13 bbWeight=0 PerfScore 0.00
+       mov      rdi, gword ptr [r13+0x08]
+       mov      rsi, rdi
+       mov      eax, dword ptr [r13+0x14]
+       cmp      eax, dword ptr [rsi+0x08]
+       jae      SHORT G_M4676_IG12
+       mov      dword ptr [rsi+4*rax+0x10], r14d
+       lea      rsi, bword ptr [r13+0x14]
+       mov      eax, dword ptr [rsi]
+       inc      eax
+       cmp      dword ptr [rdi+0x08], eax
+       jne      SHORT G_M4676_IG18
+       xor      eax, eax
+						;; size=36 bbWeight=2 PerfScore 32.50
 G_M4676_IG18:
+       mov      dword ptr [rsi], eax
+       inc      dword ptr [r13+0x18]
+       inc      dword ptr [r13+0x1C]
+						;; size=10 bbWeight=2 PerfScore 14.00
+G_M4676_IG19:
+       lea      rdi, [rbp-0x68]
+       mov      rsi, r15
+       mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.__Canon,System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,int]]]:MoveNext():ubyte:this
+       call     [rax]System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.__Canon,System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,int]]]:MoveNext():ubyte:this
+       test     eax, eax
+       jne      SHORT G_M4676_IG15
+						;; size=23 bbWeight=4 PerfScore 21.00
+G_M4676_IG20:
        cmp      byte  ptr [rbp-0x40], 0
-       je       SHORT G_M4676_IG20
+       je       SHORT G_M4676_IG22
 						;; size=6 bbWeight=1 PerfScore 3.00
-G_M4676_IG19:
-       mov      rdi, gword ptr [rbp-0x50]
+G_M4676_IG21:
+       mov      rdi, gword ptr [rbp-0xA0]
        call     System.Threading.Monitor:Exit(System.Object)
-						;; size=9 bbWeight=0.50 PerfScore 1.00
-G_M4676_IG20:
+						;; size=12 bbWeight=0.50 PerfScore 1.00
+G_M4676_IG22:
        nop      
 						;; size=1 bbWeight=1 PerfScore 0.25
-G_M4676_IG21:
-       add      rsp, 72
+G_M4676_IG23:
+       vzeroupper 
+       add      rsp, 136
        pop      rbx
        pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
-						;; size=15 bbWeight=1 PerfScore 4.25
-G_M4676_IG22:
+						;; size=21 bbWeight=1 PerfScore 5.25
+G_M4676_IG24:
        call     CORINFO_HELP_RNGCHKFAIL
        int3     
 						;; size=6 bbWeight=0 PerfScore 0.00
-G_M4676_IG23:
+G_M4676_IG25:
        mov      rax, 0xD1FFAB1E      ; code for System.ThrowHelper:ThrowArgumentOutOfRange_IndexMustBeLessException()
        call     [rax]System.ThrowHelper:ThrowArgumentOutOfRange_IndexMustBeLessException()
        int3     
 						;; size=13 bbWeight=0 PerfScore 0.00
-G_M4676_IG24:
+G_M4676_IG26:
        push     rbp
        push     r15
        push     r14
        push     r13
        push     r12
        push     rbx
        push     rax
        mov      rbp, qword ptr [rdi]
        mov      qword ptr [rsp], rbp
-       lea      rbp, [rbp+0x70]
-						;; size=22 bbWeight=0 PerfScore 0.00
-G_M4676_IG25:
+       lea      rbp, [rbp+0xB0]
+						;; size=25 bbWeight=0 PerfScore 0.00
+G_M4676_IG27:
        cmp      byte  ptr [rbp-0x40], 0
-       je       SHORT G_M4676_IG26
-       mov      rdi, gword ptr [rbp-0x50]
+       je       SHORT G_M4676_IG28
+       mov      rdi, gword ptr [rbp-0xA0]
        call     System.Threading.Monitor:Exit(System.Object)
-						;; size=15 bbWeight=0 PerfScore 0.00
-G_M4676_IG26:
+						;; size=18 bbWeight=0 PerfScore 0.00
+G_M4676_IG28:
        nop      
 						;; size=1 bbWeight=0 PerfScore 0.00
-G_M4676_IG27:
+G_M4676_IG29:
+       vzeroupper 
        add      rsp, 8
        pop      rbx
        pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
-						;; size=15 bbWeight=0 PerfScore 0.00
+						;; size=18 bbWeight=0 PerfScore 0.00
 
-; Total bytes of code 576, prolog size 26, PerfScore 423.50, instruction count 166, allocated bytes for code 576 (MethodHash=57b9edbb) for method System.Threading.Tasks.Dataflow.BatchBlock`1+BatchBlockTargetCore[int]:ConsumeReservedMessagesGreedyBounded():this (FullOpts)
+; Total bytes of code 666, prolog size 58, PerfScore 378.67, instruction count 178, allocated bytes for code 666 (MethodHash=57b9edbb) for method System.Threading.Tasks.Dataflow.BatchBlock`1+BatchBlockTargetCore[int]:ConsumeReservedMessagesGreedyBounded():this (FullOpts)
90 (15.57 % of base) - System.Threading.Tasks.Dataflow.BatchBlock`1+BatchBlockTargetCore[long]:ConsumeReservedMessagesGreedyBounded():this
 ; Assembly listing for method System.Threading.Tasks.Dataflow.BatchBlock`1+BatchBlockTargetCore[long]:ConsumeReservedMessagesGreedyBounded():this (FullOpts)
 ; Emitting BLENDED_CODE for X64 with AVX - Unix
 ; FullOpts code
 ; optimized code
 ; rbp based frame
 ; fully interruptible
 ; No PGO data
-; 0 inlinees with PGO data; 17 single block inlinees; 8 inlinees without PGO data
+; 0 inlinees with PGO data; 17 single block inlinees; 6 inlinees without PGO data
 ; Final local variable assignments
 ;
-;  V00 this         [V00,T11] (  8, 11.50)     ref  ->  rbx         this class-hnd single-def <System.Threading.Tasks.Dataflow.BatchBlock`1+BatchBlockTargetCore[long]>
-;  V01 loc0         [V01,T30] (  4,  5.50)     int  ->  r15        
+;  V00 this         [V00,T07] (  8, 11.50)     ref  ->  rbx         this class-hnd single-def <System.Threading.Tasks.Dataflow.BatchBlock`1+BatchBlockTargetCore[long]>
+;  V01 loc0         [V01,T24] (  4,  5.50)     int  ->  r15        
 ;  V02 loc1         [V02,T01] ( 13, 32   )     ref  ->  r14         class-hnd single-def <System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[long],System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,long]]]>
-;* V03 loc2         [V03,T35] (  0,  0   )     int  ->  zero-ref   
+;* V03 loc2         [V03,T30] (  0,  0   )     int  ->  zero-ref   
 ;* V04 loc3         [V04    ] (  0,  0   )  struct (24) zero-ref    do-not-enreg[SF] ld-addr-op <System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[long],System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,long]]>
 ;  V05 loc4         [V05    ] (  2,  8   )   ubyte  ->  [rbp-0x30]  do-not-enreg[X] addr-exposed ld-addr-op
-;  V06 loc5         [V06,T29] (  2,  6   )    long  ->  [rbp-0x38]  spill-single-def
+;  V06 loc5         [V06,T22] (  2,  6   )    long  ->  [rbp-0x38]  spill-single-def
 ;* V07 loc6         [V07    ] (  0,  0   )  struct (24) zero-ref    do-not-enreg[S] ld-addr-op <System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[long],System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,long]]>
 ;* V08 loc7         [V08    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op <System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,long]>
 ;* V09 loc8         [V09    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op <System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,long]>
 ;* V10 loc9         [V10    ] (  0,  0   )  struct (24) zero-ref    do-not-enreg[SF] ld-addr-op <System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[long],System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,long]]>
-;  V11 loc10        [V11,T34] (  4,  1.50)     ref  ->  [rbp-0x50]  class-hnd EH-live spill-single-def <System.Threading.Tasks.TaskCompletionSource`1[System.Threading.Tasks.Dataflow.Internal.VoidResult]>
+;  V11 loc10        [V11,T29] (  4,  1.50)     ref  ->  [rbp-0xA0]  class-hnd EH-live spill-single-def <System.Threading.Tasks.TaskCompletionSource`1[System.Threading.Tasks.Dataflow.Internal.VoidResult]>
 ;  V12 loc11        [V12    ] (  5,  4   )   ubyte  ->  [rbp-0x40]  do-not-enreg[X] addr-exposed ld-addr-op
-;* V13 loc12        [V13    ] (  0,  0   )  struct (40) zero-ref    do-not-enreg[SF] ld-addr-op <System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[long],System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,long]]]>
+;  V13 loc12        [V13    ] (  8, 17   )  struct (40) [rbp-0x68]  do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[long],System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,long]]]>
 ;* V14 loc13        [V14    ] (  0,  0   )  struct (24) zero-ref    do-not-enreg[SF] ld-addr-op <System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[long],System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,long]]>
 ;# V15 OutArgs      [V15    ] (  1,  1   )  struct ( 0) [rsp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
 ;* V16 tmp1         [V16    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "impAppendStmt" <System.Threading.Tasks.Dataflow.ISourceBlock`1[long]>
 ;* V17 tmp2         [V17    ] (  0,  0   )  struct ( 8) zero-ref    "spilled call-like call argument" <System.Threading.Tasks.Dataflow.DataflowMessageHeader>
 ;* V18 tmp3         [V18    ] (  0,  0   )  struct ( 8) zero-ref    "spilled call-like call argument" <System.Threading.Tasks.Dataflow.DataflowMessageHeader>
-;  V19 tmp4         [V19,T00] ( 11, 44   )     ref  ->  [rbp-0x58]  class-hnd spill-single-def "impAppendStmt" <System.Collections.Generic.Queue`1[long]>
-;  V20 tmp5         [V20,T32] (  3,  3   )     ref  ->  rsi         class-hnd single-def "dup spill" <System.Threading.Tasks.Dataflow.Internal.BoundingState>
+;  V19 tmp4         [V19,T00] ( 11, 44   )     ref  ->  r13         class-hnd "impAppendStmt" <System.Collections.Generic.Queue`1[long]>
+;  V20 tmp5         [V20,T27] (  3,  3   )     ref  ->  rdi         class-hnd single-def "dup spill" <System.Threading.Tasks.Dataflow.Internal.BoundingState>
 ;* V21 tmp6         [V21    ] (  0,  0   )  struct (24) zero-ref    do-not-enreg[S] "Inlining Arg" <System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[long],System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,long]]>
 ;* V22 tmp7         [V22    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <System.__Canon>
 ;* V23 tmp8         [V23    ] (  0,  0   )  struct (16) zero-ref    "Inlining Arg" <System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,long]>
 ;* V24 tmp9         [V24    ] (  0,  0   )  struct (24) zero-ref    do-not-enreg[S] "Inlining Arg" <System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[long],System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,long]]>
-;* V25 tmp10        [V25    ] (  0,  0   )  struct (40) zero-ref    do-not-enreg[SF] ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[long],System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,long]]]>
+;  V25 tmp10        [V25,T25] (  2,  4   )  struct (40) [rbp-0x90]  do-not-enreg[SF] must-init ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[long],System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,long]]]>
 ;* V26 tmp11        [V26    ] (  0,  0   )    long  ->  zero-ref    "Inlining Arg"
-;  V27 tmp12        [V27,T12] (  3, 12   )   byref  ->  rcx         "Inlining Arg"
-;  V28 tmp13        [V28,T24] (  4,  8   )     int  ->  rdx         "Inline stloc first use temp"
-;* V29 tmp14        [V29,T25] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;* V30 tmp15        [V30    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline stloc first use temp" <System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[long],System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,long]]]>
-;* V31 tmp16        [V31,T31] (  0,  0   )    long  ->  zero-ref    "field V08.key (fldOffset=0x0)" P-INDEP
-;* V32 tmp17        [V32    ] (  0,  0   )    long  ->  zero-ref    "field V08.value (fldOffset=0x8)" P-INDEP
-;* V33 tmp18        [V33    ] (  0,  0   )    long  ->  zero-ref    "field V09.key (fldOffset=0x0)" P-INDEP
-;* V34 tmp19        [V34    ] (  0,  0   )    long  ->  zero-ref    "field V09.value (fldOffset=0x8)" P-INDEP
-;* V35 tmp20        [V35    ] (  0,  0   )    long  ->  zero-ref    "field V17._id (fldOffset=0x0)" P-INDEP
-;* V36 tmp21        [V36    ] (  0,  0   )    long  ->  zero-ref    "field V18._id (fldOffset=0x0)" P-INDEP
-;* V37 tmp22        [V37    ] (  0,  0   )    long  ->  zero-ref    "field V23.key (fldOffset=0x0)" P-INDEP
-;* V38 tmp23        [V38    ] (  0,  0   )    long  ->  zero-ref    "field V23.value (fldOffset=0x8)" P-INDEP
-;  V39 tmp24        [V39,T20] (  3, 10   )     ref  ->  [rbp-0x60]  spill-single-def "V04.[000..008)"
-;  V40 tmp25        [V40,T10] (  3, 10   )    long  ->  [rbp-0x48]  spill-single-def "V04.[008..016)"
-;* V41 tmp26        [V41    ] (  0,  0   )    long  ->  zero-ref    "V04.[016..024)"
-;* V42 tmp27        [V42    ] (  0,  0   )     ref  ->  zero-ref    "V10.[000..008)"
-;* V43 tmp28        [V43    ] (  0,  0   )    long  ->  zero-ref    "V10.[008..016)"
-;* V44 tmp29        [V44    ] (  0,  0   )    long  ->  zero-ref    "V10.[016..024)"
-;  V45 tmp30        [V45,T08] (  4, 17   )     ref  ->  r14         single-def "V13.[000..008)"
-;  V46 tmp31        [V46,T03] (  6, 21   )     int  ->  r13         "V13.[008..012)"
-;  V47 tmp32        [V47,T23] (  2,  9   )     int  ->  r15         "V13.[012..016)"
-;  V48 tmp33        [V48,T13] (  2,  8   )     ref  ->  rdi         "V13.[016..024)"
-;* V49 tmp34        [V49    ] (  0,  0   )    long  ->  zero-ref    "V13.[024..032)"
-;  V50 tmp35        [V50,T21] (  2,  6   )    long  ->  r12         "V13.[032..040)"
-;* V51 tmp36        [V51    ] (  0,  0   )     ref  ->  zero-ref    "V14.[000..008)"
-;* V52 tmp37        [V52    ] (  0,  0   )    long  ->  zero-ref    "V14.[008..016)"
-;* V53 tmp38        [V53    ] (  0,  0   )    long  ->  zero-ref    "V14.[016..024)"
-;* V54 tmp39        [V54    ] (  0,  0   )     ref  ->  zero-ref    single-def "V25.[000..008)"
-;* V55 tmp40        [V55    ] (  0,  0   )     int  ->  zero-ref    "V25.[008..012)"
-;  V56 tmp41        [V56,T33] (  2,  2   )     int  ->  r15         "V25.[012..016)"
-;* V57 tmp42        [V57    ] (  0,  0   )     ref  ->  zero-ref    single-def "V25.[016..024)"
-;* V58 tmp43        [V58    ] (  0,  0   )    long  ->  zero-ref    "V25.[024..032)"
-;* V59 tmp44        [V59    ] (  0,  0   )    long  ->  zero-ref    "V25.[032..040)"
-;* V60 tmp45        [V60    ] (  0,  0   )     ref  ->  zero-ref    "V24.[000..008)"
-;* V61 tmp46        [V61    ] (  0,  0   )    long  ->  zero-ref    "V24.[008..016)"
-;* V62 tmp47        [V62    ] (  0,  0   )    long  ->  zero-ref    "V24.[016..024)"
-;  V63 tmp48        [V63,T04] (  3, 24   )   byref  ->  rcx         "Spilling address for field-by-field copy"
-;  V64 tmp49        [V64,T09] (  4, 16   )   byref  ->  r12         "Spilling address for field-by-field copy"
-;  V65 tmp50        [V65,T05] (  3, 24   )   byref  ->  rsi         "Spilling address for field-by-field copy"
-;  V66 tmp51        [V66,T06] (  3, 24   )     ref  ->  rdx         "arr expr"
-;* V67 tmp52        [V67,T26] (  0,  0   )     ref  ->  zero-ref    "arr expr"
-;  V68 tmp53        [V68,T14] (  3, 12   )     ref  ->  rdi         "arr expr"
-;  V69 tmp54        [V69,T07] (  3, 24   )     ref  ->  rsi         "arr expr"
-;  V70 tmp55        [V70,T15] (  3, 12   )     ref  ->  rcx         "arr expr"
-;  V71 tmp56        [V71,T18] (  3, 12   )     int  ->  rdx         "index expr"
-;  V72 PSPSym       [V72,T36] (  1,  1   )    long  ->  [rbp-0x70]  do-not-enreg[V] "PSPSym"
-;  V73 cse0         [V73,T16] (  3, 12   )   byref  ->  rdx         "CSE #05: moderate"
-;  V74 cse1         [V74,T22] (  3, 10   )    long  ->  r12         "CSE #04: moderate"
-;  V75 cse2         [V75,T17] (  2,  8   )     ref  ->  rdx         "CSE #01: moderate"
-;  V76 cse3         [V76,T19] (  2,  8   )     int  ->  rsi         "CSE #11: moderate"
-;  V77 cse4         [V77,T28] (  3,  6   )     int  ->  rsi         "CSE #08: moderate"
-;  V78 cse5         [V78,T27] (  3,  6   )     ref  ->  rdi         "CSE #09: moderate"
-;  V79 rat0         [V79,T02] (  9, 29   )    long  ->  r13         "Widened IV V03"
+;  V27 tmp12        [V27,T08] (  3, 12   )   byref  ->  rsi         "Inlining Arg"
+;  V28 tmp13        [V28,T16] (  4,  8   )     int  ->  rax         "Inline stloc first use temp"
+;* V29 tmp14        [V29,T26] (  0,  0   )    long  ->  zero-ref    "field V08.key (fldOffset=0x0)" P-INDEP
+;* V30 tmp15        [V30    ] (  0,  0   )    long  ->  zero-ref    "field V08.value (fldOffset=0x8)" P-INDEP
+;* V31 tmp16        [V31    ] (  0,  0   )    long  ->  zero-ref    "field V09.key (fldOffset=0x0)" P-INDEP
+;* V32 tmp17        [V32    ] (  0,  0   )    long  ->  zero-ref    "field V09.value (fldOffset=0x8)" P-INDEP
+;* V33 tmp18        [V33    ] (  0,  0   )    long  ->  zero-ref    "field V17._id (fldOffset=0x0)" P-INDEP
+;* V34 tmp19        [V34    ] (  0,  0   )    long  ->  zero-ref    "field V18._id (fldOffset=0x0)" P-INDEP
+;* V35 tmp20        [V35    ] (  0,  0   )    long  ->  zero-ref    "field V23.key (fldOffset=0x0)" P-INDEP
+;* V36 tmp21        [V36    ] (  0,  0   )    long  ->  zero-ref    "field V23.value (fldOffset=0x8)" P-INDEP
+;  V37 tmp22        [V37,T14] (  3, 10   )     ref  ->  [rbp-0xA8]  spill-single-def "V04.[000..008)"
+;  V38 tmp23        [V38,T06] (  3, 10   )    long  ->  [rbp-0x98]  spill-single-def "V04.[008..016)"
+;* V39 tmp24        [V39    ] (  0,  0   )    long  ->  zero-ref    "V04.[016..024)"
+;* V40 tmp25        [V40    ] (  0,  0   )     ref  ->  zero-ref    "V10.[000..008)"
+;* V41 tmp26        [V41    ] (  0,  0   )    long  ->  zero-ref    "V10.[008..016)"
+;* V42 tmp27        [V42    ] (  0,  0   )    long  ->  zero-ref    "V10.[016..024)"
+;  V43 tmp28        [V43,T17] (  2,  8   )     ref  ->  rsi         "V14.[000..008)"
+;* V44 tmp29        [V44    ] (  0,  0   )    long  ->  zero-ref    "V14.[008..016)"
+;  V45 tmp30        [V45,T23] (  2,  6   )    long  ->  r14         "V14.[016..024)"
+;* V46 tmp31        [V46    ] (  0,  0   )     ref  ->  zero-ref    single-def "V25.[000..008)"
+;* V47 tmp32        [V47    ] (  0,  0   )     int  ->  zero-ref    "V25.[008..012)"
+;  V48 tmp33        [V48,T28] (  2,  2   )     int  ->  rdi         "V25.[012..016)"
+;* V49 tmp34        [V49    ] (  0,  0   )     ref  ->  zero-ref    "V24.[000..008)"
+;* V50 tmp35        [V50    ] (  0,  0   )    long  ->  zero-ref    "V24.[008..016)"
+;* V51 tmp36        [V51    ] (  0,  0   )    long  ->  zero-ref    "V24.[016..024)"
+;  V52 tmp37        [V52,T03] (  3, 24   )   byref  ->  rcx         "Spilling address for field-by-field copy"
+;  V53 tmp38        [V53,T05] (  4, 16   )   byref  ->  r12         "Spilling address for field-by-field copy"
+;  V54 tmp39        [V54,T04] (  3, 24   )     ref  ->  rdx         "arr expr"
+;* V55 tmp40        [V55,T18] (  0,  0   )     ref  ->  zero-ref    "arr expr"
+;  V56 tmp41        [V56,T09] (  3, 12   )     ref  ->  rdi         "arr expr"
+;  V57 tmp42        [V57,T10] (  3, 12   )     ref  ->  rsi         "arr expr"
+;  V58 tmp43        [V58,T13] (  3, 12   )     int  ->  rax         "index expr"
+;  V59 PSPSym       [V59,T31] (  1,  1   )    long  ->  [rbp-0xB0]  do-not-enreg[V] "PSPSym"
+;  V60 cse0         [V60,T11] (  3, 12   )   byref  ->  rdx         "CSE #05: moderate"
+;  V61 cse1         [V61,T15] (  3, 10   )    long  ->  r12         "CSE #04: moderate"
+;  V62 cse2         [V62,T12] (  2,  8   )     ref  ->  rdx         "CSE #01: moderate"
+;  V63 cse3         [V63,T20] (  3,  6   )     int  ->  rsi         "CSE #08: moderate"
+;  V64 cse4         [V64,T19] (  3,  6   )     ref  ->  rdi         "CSE #09: moderate"
+;  V65 cse5         [V65,T21] (  3,  6   )    long  ->  r15         "CSE #10: moderate"
+;  V66 rat0         [V66,T02] (  9, 29   )    long  ->  r13         "Widened IV V03"
 ;
-; Lcl frame size = 72
+; Lcl frame size = 136
 
 G_M41661_IG01:
        push     rbp
        push     r15
        push     r14
        push     r13
        push     r12
        push     rbx
-       sub      rsp, 72
-       lea      rbp, [rsp+0x70]
-       mov      qword ptr [rbp-0x70], rsp
+       sub      rsp, 136
+       lea      rbp, [rsp+0xB0]
+       vxorps   xmm8, xmm8, xmm8
+       vmovdqu  ymmword ptr [rbp-0x90], ymm8
+       vmovdqu  ymmword ptr [rbp-0x70], ymm8
+       vmovdqa  xmmword ptr [rbp-0x50], xmm8
+       mov      qword ptr [rbp-0xB0], rsp
        mov      rbx, rdi
-						;; size=26 bbWeight=1 PerfScore 8.00
+						;; size=58 bbWeight=1 PerfScore 14.33
 G_M41661_IG02:
        xor      r15d, r15d
        mov      rdx, gword ptr [rbx+0x20]
        mov      r14, gword ptr [rdx+0x18]
        xor      r13d, r13d
        cmp      dword ptr [r14+0x10], 0
        jle      G_M41661_IG06
 						;; size=25 bbWeight=1 PerfScore 8.50
 G_M41661_IG03:
        cmp      r13d, dword ptr [r14+0x10]
-       jae      G_M41661_IG23
+       jae      G_M41661_IG25
        mov      rdx, gword ptr [r14+0x08]
        cmp      r13d, dword ptr [rdx+0x08]
-       jae      G_M41661_IG22
+       jae      G_M41661_IG24
        lea      r12, [r13+2*r13]
        lea      rdx, bword ptr [rdx+8*r12+0x10]
        mov      rcx, rdx
        mov      rax, gword ptr [rcx]
-       mov      gword ptr [rbp-0x60], rax
+       mov      gword ptr [rbp-0xA8], rax
        mov      r8, qword ptr [rcx+0x08]
-       mov      qword ptr [rbp-0x48], r8
+       mov      qword ptr [rbp-0x98], r8
        xor      ecx, ecx
        mov      qword ptr [rdx], rcx
        mov      qword ptr [rdx+0x08], rcx
        mov      qword ptr [rdx+0x10], rcx
        inc      dword ptr [r14+0x14]
        mov      rdx, gword ptr [rbx+0x18]
        lea      rcx, [rbp-0x30]
        mov      rdi, rax
        mov      rsi, r8
        mov      r11, 0xD1FFAB1E      ; code for System.Threading.Tasks.Dataflow.ISourceBlock`1[long]:ConsumeMessage(System.Threading.Tasks.Dataflow.DataflowMessageHeader,System.Threading.Tasks.Dataflow.ITargetBlock`1[long],byref):long:this
        call     [r11]System.Threading.Tasks.Dataflow.ISourceBlock`1[long]:ConsumeMessage(System.Threading.Tasks.Dataflow.DataflowMessageHeader,System.Threading.Tasks.Dataflow.ITargetBlock`1[long],byref):long:this
        mov      qword ptr [rbp-0x38], rax
        cmp      byte  ptr [rbp-0x30], 0
        je       SHORT G_M41661_IG05
-						;; size=106 bbWeight=4 PerfScore 143.00
+						;; size=112 bbWeight=4 PerfScore 143.00
 G_M41661_IG04:
        cmp      r13d, dword ptr [r14+0x10]
-       jae      G_M41661_IG23
+       jae      G_M41661_IG25
        mov      rdi, gword ptr [r14+0x08]
        cmp      r13d, dword ptr [rdi+0x08]
-       jae      G_M41661_IG22
+       jae      G_M41661_IG24
        lea      r12, bword ptr [rdi+8*r12+0x10]
-       mov      rsi, gword ptr [rbp-0x60]
+       mov      rsi, gword ptr [rbp-0xA8]
        mov      rdi, r12
        call     CORINFO_HELP_ASSIGN_REF
-       mov      rsi, qword ptr [rbp-0x48]
+       mov      rsi, qword ptr [rbp-0x98]
        mov      qword ptr [r12+0x08], rsi
        mov      rsi, qword ptr [rbp-0x38]
        mov      qword ptr [r12+0x10], rsi
        inc      dword ptr [r14+0x14]
        inc      r15d
-						;; size=66 bbWeight=2 PerfScore 41.00
+						;; size=72 bbWeight=2 PerfScore 41.00
 G_M41661_IG05:
        inc      r13d
        cmp      r13d, dword ptr [r14+0x10]
        jl       G_M41661_IG03
 						;; size=13 bbWeight=4 PerfScore 17.00
 G_M41661_IG06:
        mov      rdi, gword ptr [rbx+0x10]
-       mov      gword ptr [rbp-0x50], rdi
+       mov      gword ptr [rbp-0xA0], rdi
        xor      esi, esi
        mov      dword ptr [rbp-0x40], esi
-						;; size=13 bbWeight=1 PerfScore 4.25
+						;; size=16 bbWeight=1 PerfScore 4.25
 G_M41661_IG07:
        cmp      byte  ptr [rbp-0x40], 0
-       jne      G_M41661_IG15
+       jne      SHORT G_M41661_IG13
        lea      rsi, [rbp-0x40]
        call     System.Threading.Monitor:ReliableEnter(System.Object,byref)
        cmp      gword ptr [rbx+0x28], 0
        je       SHORT G_M41661_IG09
-						;; size=26 bbWeight=1 PerfScore 8.50
+						;; size=22 bbWeight=1 PerfScore 8.50
 G_M41661_IG08:
-       mov      rsi, gword ptr [rbx+0x28]
-       add      dword ptr [rsi+0x0C], r15d
+       mov      rdi, gword ptr [rbx+0x28]
+       add      dword ptr [rdi+0x0C], r15d
 						;; size=8 bbWeight=0.50 PerfScore 2.50
 G_M41661_IG09:
-       mov      r15d, dword ptr [r14+0x14]
-       xor      r13d, r13d
-						;; size=7 bbWeight=1 PerfScore 2.25
+       mov      edi, dword ptr [r14+0x14]
+       vxorps   xmm0, xmm0, xmm0
+       vmovdqu  xmmword ptr [rbp-0x80], xmm0
+       vmovdqu  xmmword ptr [rbp-0x78], xmm0
+						;; size=18 bbWeight=1 PerfScore 4.33
 G_M41661_IG10:
-       cmp      r15d, dword ptr [r14+0x14]
-       jne      G_M41661_IG17
-						;; size=10 bbWeight=8 PerfScore 32.00
+       vmovdqu  ymm0, ymmword ptr [rbp-0x90]
+       vmovdqu  ymmword ptr [rbp-0x68], ymm0
+       mov      rsi, qword ptr [rbp-0x70]
+       mov      qword ptr [rbp-0x48], rsi
+						;; size=21 bbWeight=1 PerfScore 7.00
 G_M41661_IG11:
-       mov      esi, dword ptr [r14+0x10]
-       cmp      r13d, esi
-       jae      G_M41661_IG18
-       mov      rsi, gword ptr [r14+0x08]
-       cmp      r13d, dword ptr [rsi+0x08]
-       jae      G_M41661_IG16
-       mov      edi, r13d
-       lea      rdi, [rdi+2*rdi]
-       lea      rsi, bword ptr [rsi+8*rdi+0x10]
-       mov      rdi, gword ptr [rsi]
-       mov      r12, qword ptr [rsi+0x10]
-       inc      r13d
-       test     rdi, rdi
-       je       SHORT G_M41661_IG10
-						;; size=54 bbWeight=4 PerfScore 66.00
+       mov      gword ptr [rbp-0x68], r14
+       xor      esi, esi
+       mov      dword ptr [rbp-0x60], esi
+       mov      dword ptr [rbp-0x5C], edi
+       jmp      SHORT G_M41661_IG14
+						;; size=14 bbWeight=1 PerfScore 5.25
 G_M41661_IG12:
-       mov      rax, gword ptr [rbx+0x08]
-       mov      gword ptr [rbp-0x58], rax
-       mov      esi, dword ptr [rax+0x18]
-       mov      rdi, gword ptr [rax+0x08]
-       cmp      esi, dword ptr [rdi+0x08]
-       jne      SHORT G_M41661_IG13
-       inc      esi
-       mov      rdi, rax
-       mov      rcx, 0xD1FFAB1E      ; code for System.Collections.Generic.Queue`1[long]:Grow(int):this
-       call     [rcx]System.Collections.Generic.Queue`1[long]:Grow(int):this
-       mov      rax, gword ptr [rbp-0x58]
-						;; size=41 bbWeight=2 PerfScore 31.50
+       call     CORINFO_HELP_RNGCHKFAIL
+       int3     
+						;; size=6 bbWeight=0 PerfScore 0.00
 G_M41661_IG13:
-       mov      rdi, gword ptr [rax+0x08]
-       mov      rcx, rdi
-       mov      edx, dword ptr [rax+0x14]
-       cmp      edx, dword ptr [rcx+0x08]
-       jae      SHORT G_M41661_IG16
-       mov      qword ptr [rcx+8*rdx+0x10], r12
-       lea      rcx, bword ptr [rax+0x14]
-       mov      edx, dword ptr [rcx]
-       inc      edx
-       cmp      dword ptr [rdi+0x08], edx
-       jne      SHORT G_M41661_IG14
-       xor      edx, edx
-						;; size=35 bbWeight=2 PerfScore 32.50
-G_M41661_IG14:
-       mov      dword ptr [rcx], edx
-       inc      dword ptr [rax+0x18]
-       inc      dword ptr [rax+0x1C]
-       jmp      G_M41661_IG10
-						;; size=13 bbWeight=2 PerfScore 18.00
-G_M41661_IG15:
        mov      rax, 0xD1FFAB1E      ; code for System.Threading.Monitor:ThrowLockTakenException()
        call     [rax]System.Threading.Monitor:ThrowLockTakenException()
        int3     
 						;; size=13 bbWeight=0 PerfScore 0.00
+G_M41661_IG14:
+       lea      rdi, [rbp-0x68]
+       mov      r15, 0xD1FFAB1E      ; System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[long],System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,long]]]
+       mov      rsi, r15
+       mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.__Canon,System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,long]]]:MoveNext():ubyte:this
+       call     [rax]System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.__Canon,System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,long]]]:MoveNext():ubyte:this
+       test     eax, eax
+       je       SHORT G_M41661_IG20
+						;; size=33 bbWeight=1 PerfScore 5.50
+G_M41661_IG15:
+       mov      rsi, gword ptr [rbp-0x58]
+       mov      r14, qword ptr [rbp-0x48]
+       test     rsi, rsi
+       je       SHORT G_M41661_IG19
+						;; size=13 bbWeight=4 PerfScore 13.00
 G_M41661_IG16:
-       call     CORINFO_HELP_RNGCHKFAIL
-       int3     
-						;; size=6 bbWeight=0 PerfScore 0.00
+       mov      r13, gword ptr [rbx+0x08]
+       mov      esi, dword ptr [r13+0x18]
+       mov      rdi, gword ptr [r13+0x08]
+       cmp      esi, dword ptr [rdi+0x08]
+       jne      SHORT G_M41661_IG17
+       inc      esi
+       mov      rdi, r13
+       mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.Queue`1[long]:Grow(int):this
+       call     [rax]System.Collections.Generic.Queue`1[long]:Grow(int):this
+						;; size=34 bbWeight=2 PerfScore 27.50
 G_M41661_IG17:
-       mov      rax, 0xD1FFAB1E      ; code for System.ThrowHelper:ThrowInvalidOperationException_InvalidOperation_EnumFailedVersion()
-       call     [rax]System.ThrowHelper:ThrowInvalidOperationException_InvalidOperation_EnumFailedVersion()
-       int3     
-						;; size=13 bbWeight=0 PerfScore 0.00
+       mov      rdi, gword ptr [r13+0x08]
+       mov      rsi, rdi
+       mov      eax, dword ptr [r13+0x14]
+       cmp      eax, dword ptr [rsi+0x08]
+       jae      SHORT G_M41661_IG12
+       mov      qword ptr [rsi+8*rax+0x10], r14
+       lea      rsi, bword ptr [r13+0x14]
+       mov      eax, dword ptr [rsi]
+       inc      eax
+       cmp      dword ptr [rdi+0x08], eax
+       jne      SHORT G_M41661_IG18
+       xor      eax, eax
+						;; size=36 bbWeight=2 PerfScore 32.50
 G_M41661_IG18:
+       mov      dword ptr [rsi], eax
+       inc      dword ptr [r13+0x18]
+       inc      dword ptr [r13+0x1C]
+						;; size=10 bbWeight=2 PerfScore 14.00
+G_M41661_IG19:
+       lea      rdi, [rbp-0x68]
+       mov      rsi, r15
+       mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.__Canon,System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,long]]]:MoveNext():ubyte:this
+       call     [rax]System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.__Canon,System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,long]]]:MoveNext():ubyte:this
+       test     eax, eax
+       jne      SHORT G_M41661_IG15
+						;; size=23 bbWeight=4 PerfScore 21.00
+G_M41661_IG20:
        cmp      byte  ptr [rbp-0x40], 0
-       je       SHORT G_M41661_IG20
+       je       SHORT G_M41661_IG22
 						;; size=6 bbWeight=1 PerfScore 3.00
-G_M41661_IG19:
-       mov      rdi, gword ptr [rbp-0x50]
+G_M41661_IG21:
+       mov      rdi, gword ptr [rbp-0xA0]
        call     System.Threading.Monitor:Exit(System.Object)
-						;; size=9 bbWeight=0.50 PerfScore 1.00
-G_M41661_IG20:
+						;; size=12 bbWeight=0.50 PerfScore 1.00
+G_M41661_IG22:
        nop      
 						;; size=1 bbWeight=1 PerfScore 0.25
-G_M41661_IG21:
-       add      rsp, 72
+G_M41661_IG23:
+       vzeroupper 
+       add      rsp, 136
        pop      rbx
        pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
-						;; size=15 bbWeight=1 PerfScore 4.25
-G_M41661_IG22:
+						;; size=21 bbWeight=1 PerfScore 5.25
+G_M41661_IG24:
        call     CORINFO_HELP_RNGCHKFAIL
        int3     
 						;; size=6 bbWeight=0 PerfScore 0.00
-G_M41661_IG23:
+G_M41661_IG25:
        mov      rax, 0xD1FFAB1E      ; code for System.ThrowHelper:ThrowArgumentOutOfRange_IndexMustBeLessException()
        call     [rax]System.ThrowHelper:ThrowArgumentOutOfRange_IndexMustBeLessException()
        int3     
 						;; size=13 bbWeight=0 PerfScore 0.00
-G_M41661_IG24:
+G_M41661_IG26:
        push     rbp
        push     r15
        push     r14
        push     r13
        push     r12
        push     rbx
        push     rax
        mov      rbp, qword ptr [rdi]
        mov      qword ptr [rsp], rbp
-       lea      rbp, [rbp+0x70]
-						;; size=22 bbWeight=0 PerfScore 0.00
-G_M41661_IG25:
+       lea      rbp, [rbp+0xB0]
+						;; size=25 bbWeight=0 PerfScore 0.00
+G_M41661_IG27:
        cmp      byte  ptr [rbp-0x40], 0
-       je       SHORT G_M41661_IG26
-       mov      rdi, gword ptr [rbp-0x50]
+       je       SHORT G_M41661_IG28
+       mov      rdi, gword ptr [rbp-0xA0]
        call     System.Threading.Monitor:Exit(System.Object)
-						;; size=15 bbWeight=0 PerfScore 0.00
-G_M41661_IG26:
+						;; size=18 bbWeight=0 PerfScore 0.00
+G_M41661_IG28:
        nop      
 						;; size=1 bbWeight=0 PerfScore 0.00
-G_M41661_IG27:
+G_M41661_IG29:
+       vzeroupper 
        add      rsp, 8
        pop      rbx
        pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
-						;; size=15 bbWeight=0 PerfScore 0.00
+						;; size=18 bbWeight=0 PerfScore 0.00
 
-; Total bytes of code 578, prolog size 26, PerfScore 423.50, instruction count 166, allocated bytes for code 578 (MethodHash=8b9d5d42) for method System.Threading.Tasks.Dataflow.BatchBlock`1+BatchBlockTargetCore[long]:ConsumeReservedMessagesGreedyBounded():this (FullOpts)
+; Total bytes of code 668, prolog size 58, PerfScore 378.67, instruction count 178, allocated bytes for code 668 (MethodHash=8b9d5d42) for method System.Threading.Tasks.Dataflow.BatchBlock`1+BatchBlockTargetCore[long]:ConsumeReservedMessagesGreedyBounded():this (FullOpts)
90 (15.54 % of base) - System.Threading.Tasks.Dataflow.BatchBlock`1+BatchBlockTargetCore[short]:ConsumeReservedMessagesGreedyBounded():this
 ; Assembly listing for method System.Threading.Tasks.Dataflow.BatchBlock`1+BatchBlockTargetCore[short]:ConsumeReservedMessagesGreedyBounded():this (FullOpts)
 ; Emitting BLENDED_CODE for X64 with AVX - Unix
 ; FullOpts code
 ; optimized code
 ; rbp based frame
 ; fully interruptible
 ; No PGO data
-; 0 inlinees with PGO data; 17 single block inlinees; 8 inlinees without PGO data
+; 0 inlinees with PGO data; 17 single block inlinees; 6 inlinees without PGO data
 ; Final local variable assignments
 ;
-;  V00 this         [V00,T11] (  8, 11.50)     ref  ->  rbx         this class-hnd single-def <System.Threading.Tasks.Dataflow.BatchBlock`1+BatchBlockTargetCore[short]>
-;  V01 loc0         [V01,T30] (  4,  5.50)     int  ->  r15        
+;  V00 this         [V00,T07] (  8, 11.50)     ref  ->  rbx         this class-hnd single-def <System.Threading.Tasks.Dataflow.BatchBlock`1+BatchBlockTargetCore[short]>
+;  V01 loc0         [V01,T24] (  4,  5.50)     int  ->  r15        
 ;  V02 loc1         [V02,T01] ( 13, 32   )     ref  ->  r14         class-hnd single-def <System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[short],System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,short]]]>
-;* V03 loc2         [V03,T35] (  0,  0   )     int  ->  zero-ref   
+;* V03 loc2         [V03,T30] (  0,  0   )     int  ->  zero-ref   
 ;* V04 loc3         [V04    ] (  0,  0   )  struct (24) zero-ref    do-not-enreg[SF] ld-addr-op <System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[short],System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,short]]>
 ;  V05 loc4         [V05    ] (  2,  8   )   ubyte  ->  [rbp-0x30]  do-not-enreg[X] addr-exposed ld-addr-op
-;  V06 loc5         [V06,T29] (  2,  6   )   short  ->  [rbp-0x34]  spill-single-def
+;  V06 loc5         [V06,T22] (  2,  6   )   short  ->  [rbp-0x34]  spill-single-def
 ;* V07 loc6         [V07    ] (  0,  0   )  struct (24) zero-ref    do-not-enreg[S] ld-addr-op <System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[short],System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,short]]>
 ;* V08 loc7         [V08    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op <System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,short]>
 ;* V09 loc8         [V09    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op <System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,short]>
 ;* V10 loc9         [V10    ] (  0,  0   )  struct (24) zero-ref    do-not-enreg[SF] ld-addr-op <System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[short],System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,short]]>
-;  V11 loc10        [V11,T34] (  4,  1.50)     ref  ->  [rbp-0x50]  class-hnd EH-live spill-single-def <System.Threading.Tasks.TaskCompletionSource`1[System.Threading.Tasks.Dataflow.Internal.VoidResult]>
+;  V11 loc10        [V11,T29] (  4,  1.50)     ref  ->  [rbp-0xA0]  class-hnd EH-live spill-single-def <System.Threading.Tasks.TaskCompletionSource`1[System.Threading.Tasks.Dataflow.Internal.VoidResult]>
 ;  V12 loc11        [V12    ] (  5,  4   )   ubyte  ->  [rbp-0x40]  do-not-enreg[X] addr-exposed ld-addr-op
-;* V13 loc12        [V13    ] (  0,  0   )  struct (40) zero-ref    do-not-enreg[SF] ld-addr-op <System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[short],System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,short]]]>
+;  V13 loc12        [V13    ] (  8, 17   )  struct (40) [rbp-0x68]  do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[short],System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,short]]]>
 ;* V14 loc13        [V14    ] (  0,  0   )  struct (24) zero-ref    do-not-enreg[SF] ld-addr-op <System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[short],System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,short]]>
 ;# V15 OutArgs      [V15    ] (  1,  1   )  struct ( 0) [rsp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
 ;* V16 tmp1         [V16    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "impAppendStmt" <System.Threading.Tasks.Dataflow.ISourceBlock`1[short]>
 ;* V17 tmp2         [V17    ] (  0,  0   )  struct ( 8) zero-ref    "spilled call-like call argument" <System.Threading.Tasks.Dataflow.DataflowMessageHeader>
 ;* V18 tmp3         [V18    ] (  0,  0   )  struct ( 8) zero-ref    "spilled call-like call argument" <System.Threading.Tasks.Dataflow.DataflowMessageHeader>
-;  V19 tmp4         [V19,T00] ( 11, 44   )     ref  ->  [rbp-0x58]  class-hnd spill-single-def "impAppendStmt" <System.Collections.Generic.Queue`1[short]>
-;  V20 tmp5         [V20,T32] (  3,  3   )     ref  ->  rsi         class-hnd single-def "dup spill" <System.Threading.Tasks.Dataflow.Internal.BoundingState>
+;  V19 tmp4         [V19,T00] ( 11, 44   )     ref  ->  r13         class-hnd "impAppendStmt" <System.Collections.Generic.Queue`1[short]>
+;  V20 tmp5         [V20,T27] (  3,  3   )     ref  ->  rdi         class-hnd single-def "dup spill" <System.Threading.Tasks.Dataflow.Internal.BoundingState>
 ;* V21 tmp6         [V21    ] (  0,  0   )  struct (24) zero-ref    do-not-enreg[S] "Inlining Arg" <System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[short],System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,short]]>
 ;* V22 tmp7         [V22    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <System.__Canon>
 ;* V23 tmp8         [V23    ] (  0,  0   )  struct (16) zero-ref    "Inlining Arg" <System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,short]>
 ;* V24 tmp9         [V24    ] (  0,  0   )  struct (24) zero-ref    do-not-enreg[S] "Inlining Arg" <System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[short],System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,short]]>
-;* V25 tmp10        [V25    ] (  0,  0   )  struct (40) zero-ref    do-not-enreg[SF] ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[short],System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,short]]]>
+;  V25 tmp10        [V25,T25] (  2,  4   )  struct (40) [rbp-0x90]  do-not-enreg[SF] must-init ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[short],System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,short]]]>
 ;* V26 tmp11        [V26    ] (  0,  0   )   short  ->  zero-ref    "Inlining Arg"
-;  V27 tmp12        [V27,T12] (  3, 12   )   byref  ->  rcx         "Inlining Arg"
-;  V28 tmp13        [V28,T24] (  4,  8   )     int  ->  rdx         "Inline stloc first use temp"
-;* V29 tmp14        [V29,T25] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;* V30 tmp15        [V30    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline stloc first use temp" <System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[short],System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,short]]]>
-;* V31 tmp16        [V31,T31] (  0,  0   )    long  ->  zero-ref    "field V08.key (fldOffset=0x0)" P-INDEP
-;* V32 tmp17        [V32    ] (  0,  0   )   short  ->  zero-ref    "field V08.value (fldOffset=0x8)" P-INDEP
-;* V33 tmp18        [V33    ] (  0,  0   )    long  ->  zero-ref    "field V09.key (fldOffset=0x0)" P-INDEP
-;* V34 tmp19        [V34    ] (  0,  0   )   short  ->  zero-ref    "field V09.value (fldOffset=0x8)" P-INDEP
-;* V35 tmp20        [V35    ] (  0,  0   )    long  ->  zero-ref    "field V17._id (fldOffset=0x0)" P-INDEP
-;* V36 tmp21        [V36    ] (  0,  0   )    long  ->  zero-ref    "field V18._id (fldOffset=0x0)" P-INDEP
-;* V37 tmp22        [V37    ] (  0,  0   )    long  ->  zero-ref    "field V23.key (fldOffset=0x0)" P-INDEP
-;* V38 tmp23        [V38    ] (  0,  0   )   short  ->  zero-ref    "field V23.value (fldOffset=0x8)" P-INDEP
-;  V39 tmp24        [V39,T20] (  3, 10   )     ref  ->  [rbp-0x60]  spill-single-def "V04.[000..008)"
-;  V40 tmp25        [V40,T10] (  3, 10   )    long  ->  [rbp-0x48]  spill-single-def "V04.[008..016)"
-;* V41 tmp26        [V41    ] (  0,  0   )   short  ->  zero-ref    "V04.[016..018)"
-;* V42 tmp27        [V42    ] (  0,  0   )     ref  ->  zero-ref    "V10.[000..008)"
-;* V43 tmp28        [V43    ] (  0,  0   )    long  ->  zero-ref    "V10.[008..016)"
-;* V44 tmp29        [V44    ] (  0,  0   )   short  ->  zero-ref    "V10.[016..018)"
-;  V45 tmp30        [V45,T08] (  4, 17   )     ref  ->  r14         single-def "V13.[000..008)"
-;  V46 tmp31        [V46,T03] (  6, 21   )     int  ->  r13         "V13.[008..012)"
-;  V47 tmp32        [V47,T23] (  2,  9   )     int  ->  r15         "V13.[012..016)"
-;  V48 tmp33        [V48,T13] (  2,  8   )     ref  ->  rdi         "V13.[016..024)"
-;* V49 tmp34        [V49    ] (  0,  0   )    long  ->  zero-ref    "V13.[024..032)"
-;  V50 tmp35        [V50,T21] (  2,  6   )   short  ->  r12         "V13.[032..034)"
-;* V51 tmp36        [V51    ] (  0,  0   )     ref  ->  zero-ref    "V14.[000..008)"
-;* V52 tmp37        [V52    ] (  0,  0   )    long  ->  zero-ref    "V14.[008..016)"
-;* V53 tmp38        [V53    ] (  0,  0   )   short  ->  zero-ref    "V14.[016..018)"
-;* V54 tmp39        [V54    ] (  0,  0   )     ref  ->  zero-ref    single-def "V25.[000..008)"
-;* V55 tmp40        [V55    ] (  0,  0   )     int  ->  zero-ref    "V25.[008..012)"
-;  V56 tmp41        [V56,T33] (  2,  2   )     int  ->  r15         "V25.[012..016)"
-;* V57 tmp42        [V57    ] (  0,  0   )     ref  ->  zero-ref    single-def "V25.[016..024)"
-;* V58 tmp43        [V58    ] (  0,  0   )    long  ->  zero-ref    "V25.[024..032)"
-;* V59 tmp44        [V59    ] (  0,  0   )   short  ->  zero-ref    "V25.[032..034)"
-;* V60 tmp45        [V60    ] (  0,  0   )     ref  ->  zero-ref    "V24.[000..008)"
-;* V61 tmp46        [V61    ] (  0,  0   )    long  ->  zero-ref    "V24.[008..016)"
-;* V62 tmp47        [V62    ] (  0,  0   )   short  ->  zero-ref    "V24.[016..018)"
-;  V63 tmp48        [V63,T04] (  3, 24   )   byref  ->  rcx         "Spilling address for field-by-field copy"
-;  V64 tmp49        [V64,T09] (  4, 16   )   byref  ->  r12         "Spilling address for field-by-field copy"
-;  V65 tmp50        [V65,T05] (  3, 24   )   byref  ->  rsi         "Spilling address for field-by-field copy"
-;  V66 tmp51        [V66,T06] (  3, 24   )     ref  ->  rdx         "arr expr"
-;* V67 tmp52        [V67,T26] (  0,  0   )     ref  ->  zero-ref    "arr expr"
-;  V68 tmp53        [V68,T14] (  3, 12   )     ref  ->  rdi         "arr expr"
-;  V69 tmp54        [V69,T07] (  3, 24   )     ref  ->  rsi         "arr expr"
-;  V70 tmp55        [V70,T15] (  3, 12   )     ref  ->  rcx         "arr expr"
-;  V71 tmp56        [V71,T18] (  3, 12   )     int  ->  rdx         "index expr"
-;  V72 PSPSym       [V72,T36] (  1,  1   )    long  ->  [rbp-0x70]  do-not-enreg[V] "PSPSym"
-;  V73 cse0         [V73,T16] (  3, 12   )   byref  ->  rdx         "CSE #05: moderate"
-;  V74 cse1         [V74,T22] (  3, 10   )    long  ->  r12         "CSE #04: moderate"
-;  V75 cse2         [V75,T17] (  2,  8   )     ref  ->  rdx         "CSE #01: moderate"
-;  V76 cse3         [V76,T19] (  2,  8   )     int  ->  rsi         "CSE #11: moderate"
-;  V77 cse4         [V77,T28] (  3,  6   )     int  ->  rsi         "CSE #08: moderate"
-;  V78 cse5         [V78,T27] (  3,  6   )     ref  ->  rdi         "CSE #09: moderate"
-;  V79 rat0         [V79,T02] (  9, 29   )    long  ->  r13         "Widened IV V03"
+;  V27 tmp12        [V27,T08] (  3, 12   )   byref  ->  rsi         "Inlining Arg"
+;  V28 tmp13        [V28,T16] (  4,  8   )     int  ->  rax         "Inline stloc first use temp"
+;* V29 tmp14        [V29,T26] (  0,  0   )    long  ->  zero-ref    "field V08.key (fldOffset=0x0)" P-INDEP
+;* V30 tmp15        [V30    ] (  0,  0   )   short  ->  zero-ref    "field V08.value (fldOffset=0x8)" P-INDEP
+;* V31 tmp16        [V31    ] (  0,  0   )    long  ->  zero-ref    "field V09.key (fldOffset=0x0)" P-INDEP
+;* V32 tmp17        [V32    ] (  0,  0   )   short  ->  zero-ref    "field V09.value (fldOffset=0x8)" P-INDEP
+;* V33 tmp18        [V33    ] (  0,  0   )    long  ->  zero-ref    "field V17._id (fldOffset=0x0)" P-INDEP
+;* V34 tmp19        [V34    ] (  0,  0   )    long  ->  zero-ref    "field V18._id (fldOffset=0x0)" P-INDEP
+;* V35 tmp20        [V35    ] (  0,  0   )    long  ->  zero-ref    "field V23.key (fldOffset=0x0)" P-INDEP
+;* V36 tmp21        [V36    ] (  0,  0   )   short  ->  zero-ref    "field V23.value (fldOffset=0x8)" P-INDEP
+;  V37 tmp22        [V37,T14] (  3, 10   )     ref  ->  [rbp-0xA8]  spill-single-def "V04.[000..008)"
+;  V38 tmp23        [V38,T06] (  3, 10   )    long  ->  [rbp-0x98]  spill-single-def "V04.[008..016)"
+;* V39 tmp24        [V39    ] (  0,  0   )   short  ->  zero-ref    "V04.[016..018)"
+;* V40 tmp25        [V40    ] (  0,  0   )     ref  ->  zero-ref    "V10.[000..008)"
+;* V41 tmp26        [V41    ] (  0,  0   )    long  ->  zero-ref    "V10.[008..016)"
+;* V42 tmp27        [V42    ] (  0,  0   )   short  ->  zero-ref    "V10.[016..018)"
+;  V43 tmp28        [V43,T17] (  2,  8   )     ref  ->  rsi         "V14.[000..008)"
+;* V44 tmp29        [V44    ] (  0,  0   )    long  ->  zero-ref    "V14.[008..016)"
+;  V45 tmp30        [V45,T23] (  2,  6   )   short  ->  r14         "V14.[016..018)"
+;* V46 tmp31        [V46    ] (  0,  0   )     ref  ->  zero-ref    single-def "V25.[000..008)"
+;* V47 tmp32        [V47    ] (  0,  0   )     int  ->  zero-ref    "V25.[008..012)"
+;  V48 tmp33        [V48,T28] (  2,  2   )     int  ->  rdi         "V25.[012..016)"
+;* V49 tmp34        [V49    ] (  0,  0   )     ref  ->  zero-ref    "V24.[000..008)"
+;* V50 tmp35        [V50    ] (  0,  0   )    long  ->  zero-ref    "V24.[008..016)"
+;* V51 tmp36        [V51    ] (  0,  0   )   short  ->  zero-ref    "V24.[016..018)"
+;  V52 tmp37        [V52,T03] (  3, 24   )   byref  ->  rcx         "Spilling address for field-by-field copy"
+;  V53 tmp38        [V53,T05] (  4, 16   )   byref  ->  r12         "Spilling address for field-by-field copy"
+;  V54 tmp39        [V54,T04] (  3, 24   )     ref  ->  rdx         "arr expr"
+;* V55 tmp40        [V55,T18] (  0,  0   )     ref  ->  zero-ref    "arr expr"
+;  V56 tmp41        [V56,T09] (  3, 12   )     ref  ->  rdi         "arr expr"
+;  V57 tmp42        [V57,T10] (  3, 12   )     ref  ->  rsi         "arr expr"
+;  V58 tmp43        [V58,T13] (  3, 12   )     int  ->  rax         "index expr"
+;  V59 PSPSym       [V59,T31] (  1,  1   )    long  ->  [rbp-0xB0]  do-not-enreg[V] "PSPSym"
+;  V60 cse0         [V60,T11] (  3, 12   )   byref  ->  rdx         "CSE #05: moderate"
+;  V61 cse1         [V61,T15] (  3, 10   )    long  ->  r12         "CSE #04: moderate"
+;  V62 cse2         [V62,T12] (  2,  8   )     ref  ->  rdx         "CSE #01: moderate"
+;  V63 cse3         [V63,T20] (  3,  6   )     int  ->  rsi         "CSE #08: moderate"
+;  V64 cse4         [V64,T19] (  3,  6   )     ref  ->  rdi         "CSE #09: moderate"
+;  V65 cse5         [V65,T21] (  3,  6   )    long  ->  r15         "CSE #10: moderate"
+;  V66 rat0         [V66,T02] (  9, 29   )    long  ->  r13         "Widened IV V03"
 ;
-; Lcl frame size = 72
+; Lcl frame size = 136
 
 G_M8549_IG01:
        push     rbp
        push     r15
        push     r14
        push     r13
        push     r12
        push     rbx
-       sub      rsp, 72
-       lea      rbp, [rsp+0x70]
-       mov      qword ptr [rbp-0x70], rsp
+       sub      rsp, 136
+       lea      rbp, [rsp+0xB0]
+       vxorps   xmm8, xmm8, xmm8
+       vmovdqu  ymmword ptr [rbp-0x90], ymm8
+       vmovdqu  ymmword ptr [rbp-0x70], ymm8
+       vmovdqa  xmmword ptr [rbp-0x50], xmm8
+       mov      qword ptr [rbp-0xB0], rsp
        mov      rbx, rdi
-						;; size=26 bbWeight=1 PerfScore 8.00
+						;; size=58 bbWeight=1 PerfScore 14.33
 G_M8549_IG02:
        xor      r15d, r15d
        mov      rdx, gword ptr [rbx+0x20]
        mov      r14, gword ptr [rdx+0x18]
        xor      r13d, r13d
        cmp      dword ptr [r14+0x10], 0
        jle      G_M8549_IG06
 						;; size=25 bbWeight=1 PerfScore 8.50
 G_M8549_IG03:
        cmp      r13d, dword ptr [r14+0x10]
-       jae      G_M8549_IG23
+       jae      G_M8549_IG25
        mov      rdx, gword ptr [r14+0x08]
        cmp      r13d, dword ptr [rdx+0x08]
-       jae      G_M8549_IG22
+       jae      G_M8549_IG24
        lea      r12, [r13+2*r13]
        lea      rdx, bword ptr [rdx+8*r12+0x10]
        mov      rcx, rdx
        mov      rax, gword ptr [rcx]
-       mov      gword ptr [rbp-0x60], rax
+       mov      gword ptr [rbp-0xA8], rax
        mov      r8, qword ptr [rcx+0x08]
-       mov      qword ptr [rbp-0x48], r8
+       mov      qword ptr [rbp-0x98], r8
        xor      ecx, ecx
        mov      qword ptr [rdx], rcx
        mov      qword ptr [rdx+0x08], rcx
        mov      qword ptr [rdx+0x10], rcx
        inc      dword ptr [r14+0x14]
        mov      rdx, gword ptr [rbx+0x18]
        lea      rcx, [rbp-0x30]
        mov      rdi, rax
        mov      rsi, r8
        mov      r11, 0xD1FFAB1E      ; code for System.Threading.Tasks.Dataflow.ISourceBlock`1[short]:ConsumeMessage(System.Threading.Tasks.Dataflow.DataflowMessageHeader,System.Threading.Tasks.Dataflow.ITargetBlock`1[short],byref):short:this
        call     [r11]System.Threading.Tasks.Dataflow.ISourceBlock`1[short]:ConsumeMessage(System.Threading.Tasks.Dataflow.DataflowMessageHeader,System.Threading.Tasks.Dataflow.ITargetBlock`1[short],byref):short:this
        mov      dword ptr [rbp-0x34], eax
        cmp      byte  ptr [rbp-0x30], 0
        je       SHORT G_M8549_IG05
-						;; size=105 bbWeight=4 PerfScore 143.00
+						;; size=111 bbWeight=4 PerfScore 143.00
 G_M8549_IG04:
        cmp      r13d, dword ptr [r14+0x10]
-       jae      G_M8549_IG23
+       jae      G_M8549_IG25
        mov      rdi, gword ptr [r14+0x08]
        cmp      r13d, dword ptr [rdi+0x08]
-       jae      G_M8549_IG22
+       jae      G_M8549_IG24
        lea      r12, bword ptr [rdi+8*r12+0x10]
-       mov      rsi, gword ptr [rbp-0x60]
+       mov      rsi, gword ptr [rbp-0xA8]
        mov      rdi, r12
        call     CORINFO_HELP_ASSIGN_REF
-       mov      rsi, qword ptr [rbp-0x48]
+       mov      rsi, qword ptr [rbp-0x98]
        mov      qword ptr [r12+0x08], rsi
        mov      esi, dword ptr [rbp-0x34]
        mov      word  ptr [r12+0x10], si
        inc      dword ptr [r14+0x14]
        inc      r15d
-						;; size=66 bbWeight=2 PerfScore 41.00
+						;; size=72 bbWeight=2 PerfScore 41.00
 G_M8549_IG05:
        inc      r13d
        cmp      r13d, dword ptr [r14+0x10]
        jl       G_M8549_IG03
 						;; size=13 bbWeight=4 PerfScore 17.00
 G_M8549_IG06:
        mov      rdi, gword ptr [rbx+0x10]
-       mov      gword ptr [rbp-0x50], rdi
+       mov      gword ptr [rbp-0xA0], rdi
        xor      esi, esi
        mov      dword ptr [rbp-0x40], esi
-						;; size=13 bbWeight=1 PerfScore 4.25
+						;; size=16 bbWeight=1 PerfScore 4.25
 G_M8549_IG07:
        cmp      byte  ptr [rbp-0x40], 0
-       jne      G_M8549_IG15
+       jne      SHORT G_M8549_IG13
        lea      rsi, [rbp-0x40]
        call     System.Threading.Monitor:ReliableEnter(System.Object,byref)
        cmp      gword ptr [rbx+0x28], 0
        je       SHORT G_M8549_IG09
-						;; size=26 bbWeight=1 PerfScore 8.50
+						;; size=22 bbWeight=1 PerfScore 8.50
 G_M8549_IG08:
-       mov      rsi, gword ptr [rbx+0x28]
-       add      dword ptr [rsi+0x0C], r15d
+       mov      rdi, gword ptr [rbx+0x28]
+       add      dword ptr [rdi+0x0C], r15d
 						;; size=8 bbWeight=0.50 PerfScore 2.50
 G_M8549_IG09:
-       mov      r15d, dword ptr [r14+0x14]
-       xor      r13d, r13d
-						;; size=7 bbWeight=1 PerfScore 2.25
+       mov      edi, dword ptr [r14+0x14]
+       vxorps   xmm0, xmm0, xmm0
+       vmovdqu  xmmword ptr [rbp-0x80], xmm0
+       vmovdqu  xmmword ptr [rbp-0x78], xmm0
+						;; size=18 bbWeight=1 PerfScore 4.33
 G_M8549_IG10:
-       cmp      r15d, dword ptr [r14+0x14]
-       jne      G_M8549_IG17
-						;; size=10 bbWeight=8 PerfScore 32.00
+       vmovdqu  ymm0, ymmword ptr [rbp-0x90]
+       vmovdqu  ymmword ptr [rbp-0x68], ymm0
+       mov      rsi, qword ptr [rbp-0x70]
+       mov      qword ptr [rbp-0x48], rsi
+						;; size=21 bbWeight=1 PerfScore 7.00
 G_M8549_IG11:
-       mov      esi, dword ptr [r14+0x10]
-       cmp      r13d, esi
-       jae      G_M8549_IG18
-       mov      rsi, gword ptr [r14+0x08]
-       cmp      r13d, dword ptr [rsi+0x08]
-       jae      G_M8549_IG16
-       mov      edi, r13d
-       lea      rdi, [rdi+2*rdi]
-       lea      rsi, bword ptr [rsi+8*rdi+0x10]
-       mov      rdi, gword ptr [rsi]
-       movsx    r12, word  ptr [rsi+0x10]
-       inc      r13d
-       test     rdi, rdi
-       je       SHORT G_M8549_IG10
-						;; size=55 bbWeight=4 PerfScore 74.00
+       mov      gword ptr [rbp-0x68], r14
+       xor      esi, esi
+       mov      dword ptr [rbp-0x60], esi
+       mov      dword ptr [rbp-0x5C], edi
+       jmp      SHORT G_M8549_IG14
+						;; size=14 bbWeight=1 PerfScore 5.25
 G_M8549_IG12:
-       mov      rax, gword ptr [rbx+0x08]
-       mov      gword ptr [rbp-0x58], rax
-       mov      esi, dword ptr [rax+0x18]
-       mov      rdi, gword ptr [rax+0x08]
-       cmp      esi, dword ptr [rdi+0x08]
-       jne      SHORT G_M8549_IG13
-       inc      esi
-       mov      rdi, rax
-       mov      rcx, 0xD1FFAB1E      ; code for System.Collections.Generic.Queue`1[short]:Grow(int):this
-       call     [rcx]System.Collections.Generic.Queue`1[short]:Grow(int):this
-       mov      rax, gword ptr [rbp-0x58]
-						;; size=41 bbWeight=2 PerfScore 31.50
+       call     CORINFO_HELP_RNGCHKFAIL
+       int3     
+						;; size=6 bbWeight=0 PerfScore 0.00
 G_M8549_IG13:
-       mov      rdi, gword ptr [rax+0x08]
-       mov      rcx, rdi
-       mov      edx, dword ptr [rax+0x14]
-       cmp      edx, dword ptr [rcx+0x08]
-       jae      SHORT G_M8549_IG16
-       mov      word  ptr [rcx+2*rdx+0x10], r12w
-       lea      rcx, bword ptr [rax+0x14]
-       mov      edx, dword ptr [rcx]
-       inc      edx
-       cmp      dword ptr [rdi+0x08], edx
-       jne      SHORT G_M8549_IG14
-       xor      edx, edx
-						;; size=36 bbWeight=2 PerfScore 32.50
-G_M8549_IG14:
-       mov      dword ptr [rcx], edx
-       inc      dword ptr [rax+0x18]
-       inc      dword ptr [rax+0x1C]
-       jmp      G_M8549_IG10
-						;; size=13 bbWeight=2 PerfScore 18.00
-G_M8549_IG15:
        mov      rax, 0xD1FFAB1E      ; code for System.Threading.Monitor:ThrowLockTakenException()
        call     [rax]System.Threading.Monitor:ThrowLockTakenException()
        int3     
 						;; size=13 bbWeight=0 PerfScore 0.00
+G_M8549_IG14:
+       lea      rdi, [rbp-0x68]
+       mov      r15, 0xD1FFAB1E      ; System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[short],System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,short]]]
+       mov      rsi, r15
+       mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.__Canon,System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,short]]]:MoveNext():ubyte:this
+       call     [rax]System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.__Canon,System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,short]]]:MoveNext():ubyte:this
+       test     eax, eax
+       je       SHORT G_M8549_IG20
+						;; size=33 bbWeight=1 PerfScore 5.50
+G_M8549_IG15:
+       mov      rsi, gword ptr [rbp-0x58]
+       movsx    r14, word  ptr [rbp-0x48]
+       test     rsi, rsi
+       je       SHORT G_M8549_IG19
+						;; size=14 bbWeight=4 PerfScore 21.00
 G_M8549_IG16:
-       call     CORINFO_HELP_RNGCHKFAIL
-       int3     
-						;; size=6 bbWeight=0 PerfScore 0.00
+       mov      r13, gword ptr [rbx+0x08]
+       mov      esi, dword ptr [r13+0x18]
+       mov      rdi, gword ptr [r13+0x08]
+       cmp      esi, dword ptr [rdi+0x08]
+       jne      SHORT G_M8549_IG17
+       inc      esi
+       mov      rdi, r13
+       mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.Queue`1[short]:Grow(int):this
+       call     [rax]System.Collections.Generic.Queue`1[short]:Grow(int):this
+						;; size=34 bbWeight=2 PerfScore 27.50
 G_M8549_IG17:
-       mov      rax, 0xD1FFAB1E      ; code for System.ThrowHelper:ThrowInvalidOperationException_InvalidOperation_EnumFailedVersion()
-       call     [rax]System.ThrowHelper:ThrowInvalidOperationException_InvalidOperation_EnumFailedVersion()
-       int3     
-						;; size=13 bbWeight=0 PerfScore 0.00
+       mov      rdi, gword ptr [r13+0x08]
+       mov      rsi, rdi
+       mov      eax, dword ptr [r13+0x14]
+       cmp      eax, dword ptr [rsi+0x08]
+       jae      SHORT G_M8549_IG12
+       mov      word  ptr [rsi+2*rax+0x10], r14w
+       lea      rsi, bword ptr [r13+0x14]
+       mov      eax, dword ptr [rsi]
+       inc      eax
+       cmp      dword ptr [rdi+0x08], eax
+       jne      SHORT G_M8549_IG18
+       xor      eax, eax
+						;; size=37 bbWeight=2 PerfScore 32.50
 G_M8549_IG18:
+       mov      dword ptr [rsi], eax
+       inc      dword ptr [r13+0x18]
+       inc      dword ptr [r13+0x1C]
+						;; size=10 bbWeight=2 PerfScore 14.00
+G_M8549_IG19:
+       lea      rdi, [rbp-0x68]
+       mov      rsi, r15
+       mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.__Canon,System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,short]]]:MoveNext():ubyte:this
+       call     [rax]System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.__Canon,System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,short]]]:MoveNext():ubyte:this
+       test     eax, eax
+       jne      SHORT G_M8549_IG15
+						;; size=23 bbWeight=4 PerfScore 21.00
+G_M8549_IG20:
        cmp      byte  ptr [rbp-0x40], 0
-       je       SHORT G_M8549_IG20
+       je       SHORT G_M8549_IG22
 						;; size=6 bbWeight=1 PerfScore 3.00
-G_M8549_IG19:
-       mov      rdi, gword ptr [rbp-0x50]
+G_M8549_IG21:
+       mov      rdi, gword ptr [rbp-0xA0]
        call     System.Threading.Monitor:Exit(System.Object)
-						;; size=9 bbWeight=0.50 PerfScore 1.00
-G_M8549_IG20:
+						;; size=12 bbWeight=0.50 PerfScore 1.00
+G_M8549_IG22:
        nop      
 						;; size=1 bbWeight=1 PerfScore 0.25
-G_M8549_IG21:
-       add      rsp, 72
+G_M8549_IG23:
+       vzeroupper 
+       add      rsp, 136
        pop      rbx
        pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
-						;; size=15 bbWeight=1 PerfScore 4.25
-G_M8549_IG22:
+						;; size=21 bbWeight=1 PerfScore 5.25
+G_M8549_IG24:
        call     CORINFO_HELP_RNGCHKFAIL
        int3     
 						;; size=6 bbWeight=0 PerfScore 0.00
-G_M8549_IG23:
+G_M8549_IG25:
        mov      rax, 0xD1FFAB1E      ; code for System.ThrowHelper:ThrowArgumentOutOfRange_IndexMustBeLessException()
        call     [rax]System.ThrowHelper:ThrowArgumentOutOfRange_IndexMustBeLessException()
        int3     
 						;; size=13 bbWeight=0 PerfScore 0.00
-G_M8549_IG24:
+G_M8549_IG26:
        push     rbp
        push     r15
        push     r14
        push     r13
        push     r12
        push     rbx
        push     rax
        mov      rbp, qword ptr [rdi]
        mov      qword ptr [rsp], rbp
-       lea      rbp, [rbp+0x70]
-						;; size=22 bbWeight=0 PerfScore 0.00
-G_M8549_IG25:
+       lea      rbp, [rbp+0xB0]
+						;; size=25 bbWeight=0 PerfScore 0.00
+G_M8549_IG27:
        cmp      byte  ptr [rbp-0x40], 0
-       je       SHORT G_M8549_IG26
-       mov      rdi, gword ptr [rbp-0x50]
+       je       SHORT G_M8549_IG28
+       mov      rdi, gword ptr [rbp-0xA0]
        call     System.Threading.Monitor:Exit(System.Object)
-						;; size=15 bbWeight=0 PerfScore 0.00
-G_M8549_IG26:
+						;; size=18 bbWeight=0 PerfScore 0.00
+G_M8549_IG28:
        nop      
 						;; size=1 bbWeight=0 PerfScore 0.00
-G_M8549_IG27:
+G_M8549_IG29:
+       vzeroupper 
        add      rsp, 8
        pop      rbx
        pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
-						;; size=15 bbWeight=0 PerfScore 0.00
+						;; size=18 bbWeight=0 PerfScore 0.00
 
-; Total bytes of code 579, prolog size 26, PerfScore 431.50, instruction count 166, allocated bytes for code 579 (MethodHash=6db8de9a) for method System.Threading.Tasks.Dataflow.BatchBlock`1+BatchBlockTargetCore[short]:ConsumeReservedMessagesGreedyBounded():this (FullOpts)
+; Total bytes of code 669, prolog size 58, PerfScore 386.67, instruction count 178, allocated bytes for code 669 (MethodHash=6db8de9a) for method System.Threading.Tasks.Dataflow.BatchBlock`1+BatchBlockTargetCore[short]:ConsumeReservedMessagesGreedyBounded():this (FullOpts)
90 (15.60 % of base) - System.Threading.Tasks.Dataflow.BatchBlock`1+BatchBlockTargetCore[ubyte]:ConsumeReservedMessagesGreedyBounded():this
 ; Assembly listing for method System.Threading.Tasks.Dataflow.BatchBlock`1+BatchBlockTargetCore[ubyte]:ConsumeReservedMessagesGreedyBounded():this (FullOpts)
 ; Emitting BLENDED_CODE for X64 with AVX - Unix
 ; FullOpts code
 ; optimized code
 ; rbp based frame
 ; fully interruptible
 ; No PGO data
-; 0 inlinees with PGO data; 17 single block inlinees; 8 inlinees without PGO data
+; 0 inlinees with PGO data; 17 single block inlinees; 6 inlinees without PGO data
 ; Final local variable assignments
 ;
-;  V00 this         [V00,T11] (  8, 11.50)     ref  ->  rbx         this class-hnd single-def <System.Threading.Tasks.Dataflow.BatchBlock`1+BatchBlockTargetCore[ubyte]>
-;  V01 loc0         [V01,T30] (  4,  5.50)     int  ->  r15        
+;  V00 this         [V00,T07] (  8, 11.50)     ref  ->  rbx         this class-hnd single-def <System.Threading.Tasks.Dataflow.BatchBlock`1+BatchBlockTargetCore[ubyte]>
+;  V01 loc0         [V01,T24] (  4,  5.50)     int  ->  r15        
 ;  V02 loc1         [V02,T01] ( 13, 32   )     ref  ->  r14         class-hnd single-def <System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[ubyte],System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,ubyte]]]>
-;* V03 loc2         [V03,T35] (  0,  0   )     int  ->  zero-ref   
+;* V03 loc2         [V03,T30] (  0,  0   )     int  ->  zero-ref   
 ;* V04 loc3         [V04    ] (  0,  0   )  struct (24) zero-ref    do-not-enreg[SF] ld-addr-op <System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[ubyte],System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,ubyte]]>
 ;  V05 loc4         [V05    ] (  2,  8   )   ubyte  ->  [rbp-0x30]  do-not-enreg[X] addr-exposed ld-addr-op
-;  V06 loc5         [V06,T29] (  2,  6   )   ubyte  ->  [rbp-0x34]  spill-single-def
+;  V06 loc5         [V06,T22] (  2,  6   )   ubyte  ->  [rbp-0x34]  spill-single-def
 ;* V07 loc6         [V07    ] (  0,  0   )  struct (24) zero-ref    do-not-enreg[S] ld-addr-op <System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[ubyte],System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,ubyte]]>
 ;* V08 loc7         [V08    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op <System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,ubyte]>
 ;* V09 loc8         [V09    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op <System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,ubyte]>
 ;* V10 loc9         [V10    ] (  0,  0   )  struct (24) zero-ref    do-not-enreg[SF] ld-addr-op <System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[ubyte],System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,ubyte]]>
-;  V11 loc10        [V11,T34] (  4,  1.50)     ref  ->  [rbp-0x50]  class-hnd EH-live spill-single-def <System.Threading.Tasks.TaskCompletionSource`1[System.Threading.Tasks.Dataflow.Internal.VoidResult]>
+;  V11 loc10        [V11,T29] (  4,  1.50)     ref  ->  [rbp-0xA0]  class-hnd EH-live spill-single-def <System.Threading.Tasks.TaskCompletionSource`1[System.Threading.Tasks.Dataflow.Internal.VoidResult]>
 ;  V12 loc11        [V12    ] (  5,  4   )   ubyte  ->  [rbp-0x40]  do-not-enreg[X] addr-exposed ld-addr-op
-;* V13 loc12        [V13    ] (  0,  0   )  struct (40) zero-ref    do-not-enreg[SF] ld-addr-op <System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[ubyte],System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,ubyte]]]>
+;  V13 loc12        [V13    ] (  8, 17   )  struct (40) [rbp-0x68]  do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[ubyte],System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,ubyte]]]>
 ;* V14 loc13        [V14    ] (  0,  0   )  struct (24) zero-ref    do-not-enreg[SF] ld-addr-op <System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[ubyte],System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,ubyte]]>
 ;# V15 OutArgs      [V15    ] (  1,  1   )  struct ( 0) [rsp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
 ;* V16 tmp1         [V16    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "impAppendStmt" <System.Threading.Tasks.Dataflow.ISourceBlock`1[ubyte]>
 ;* V17 tmp2         [V17    ] (  0,  0   )  struct ( 8) zero-ref    "spilled call-like call argument" <System.Threading.Tasks.Dataflow.DataflowMessageHeader>
 ;* V18 tmp3         [V18    ] (  0,  0   )  struct ( 8) zero-ref    "spilled call-like call argument" <System.Threading.Tasks.Dataflow.DataflowMessageHeader>
-;  V19 tmp4         [V19,T00] ( 11, 44   )     ref  ->  [rbp-0x58]  class-hnd spill-single-def "impAppendStmt" <System.Collections.Generic.Queue`1[ubyte]>
-;  V20 tmp5         [V20,T32] (  3,  3   )     ref  ->  rsi         class-hnd single-def "dup spill" <System.Threading.Tasks.Dataflow.Internal.BoundingState>
+;  V19 tmp4         [V19,T00] ( 11, 44   )     ref  ->  r13         class-hnd "impAppendStmt" <System.Collections.Generic.Queue`1[ubyte]>
+;  V20 tmp5         [V20,T27] (  3,  3   )     ref  ->  rdi         class-hnd single-def "dup spill" <System.Threading.Tasks.Dataflow.Internal.BoundingState>
 ;* V21 tmp6         [V21    ] (  0,  0   )  struct (24) zero-ref    do-not-enreg[S] "Inlining Arg" <System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[ubyte],System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,ubyte]]>
 ;* V22 tmp7         [V22    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <System.__Canon>
 ;* V23 tmp8         [V23    ] (  0,  0   )  struct (16) zero-ref    "Inlining Arg" <System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,ubyte]>
 ;* V24 tmp9         [V24    ] (  0,  0   )  struct (24) zero-ref    do-not-enreg[S] "Inlining Arg" <System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[ubyte],System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,ubyte]]>
-;* V25 tmp10        [V25    ] (  0,  0   )  struct (40) zero-ref    do-not-enreg[SF] ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[ubyte],System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,ubyte]]]>
+;  V25 tmp10        [V25,T25] (  2,  4   )  struct (40) [rbp-0x90]  do-not-enreg[SF] must-init ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[ubyte],System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,ubyte]]]>
 ;* V26 tmp11        [V26    ] (  0,  0   )   ubyte  ->  zero-ref    "Inlining Arg"
-;  V27 tmp12        [V27,T12] (  3, 12   )   byref  ->  rcx         "Inlining Arg"
-;  V28 tmp13        [V28,T24] (  4,  8   )     int  ->  rdx         "Inline stloc first use temp"
-;* V29 tmp14        [V29,T25] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;* V30 tmp15        [V30    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline stloc first use temp" <System.Collections.Generic.List`1[System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[ubyte],System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,ubyte]]]>
-;* V31 tmp16        [V31,T31] (  0,  0   )    long  ->  zero-ref    "field V08.key (fldOffset=0x0)" P-INDEP
-;* V32 tmp17        [V32    ] (  0,  0   )   ubyte  ->  zero-ref    "field V08.value (fldOffset=0x8)" P-INDEP
-;* V33 tmp18        [V33    ] (  0,  0   )    long  ->  zero-ref    "field V09.key (fldOffset=0x0)" P-INDEP
-;* V34 tmp19        [V34    ] (  0,  0   )   ubyte  ->  zero-ref    "field V09.value (fldOffset=0x8)" P-INDEP
-;* V35 tmp20        [V35    ] (  0,  0   )    long  ->  zero-ref    "field V17._id (fldOffset=0x0)" P-INDEP
-;* V36 tmp21        [V36    ] (  0,  0   )    long  ->  zero-ref    "field V18._id (fldOffset=0x0)" P-INDEP
-;* V37 tmp22        [V37    ] (  0,  0   )    long  ->  zero-ref    "field V23.key (fldOffset=0x0)" P-INDEP
-;* V38 tmp23        [V38    ] (  0,  0   )   ubyte  ->  zero-ref    "field V23.value (fldOffset=0x8)" P-INDEP
-;  V39 tmp24        [V39,T20] (  3, 10   )     ref  ->  [rbp-0x60]  spill-single-def "V04.[000..008)"
-;  V40 tmp25        [V40,T10] (  3, 10   )    long  ->  [rbp-0x48]  spill-single-def "V04.[008..016)"
-;* V41 tmp26        [V41    ] (  0,  0   )   ubyte  ->  zero-ref    "V04.[016..017)"
-;* V42 tmp27        [V42    ] (  0,  0   )     ref  ->  zero-ref    "V10.[000..008)"
-;* V43 tmp28        [V43    ] (  0,  0   )    long  ->  zero-ref    "V10.[008..016)"
-;* V44 tmp29        [V44    ] (  0,  0   )   ubyte  ->  zero-ref    "V10.[016..017)"
-;  V45 tmp30        [V45,T08] (  4, 17   )     ref  ->  r14         single-def "V13.[000..008)"
-;  V46 tmp31        [V46,T03] (  6, 21   )     int  ->  r13         "V13.[008..012)"
-;  V47 tmp32        [V47,T23] (  2,  9   )     int  ->  r15         "V13.[012..016)"
-;  V48 tmp33        [V48,T13] (  2,  8   )     ref  ->  rdi         "V13.[016..024)"
-;* V49 tmp34        [V49    ] (  0,  0   )    long  ->  zero-ref    "V13.[024..032)"
-;  V50 tmp35        [V50,T21] (  2,  6   )   ubyte  ->  r12         "V13.[032..033)"
-;* V51 tmp36        [V51    ] (  0,  0   )     ref  ->  zero-ref    "V14.[000..008)"
-;* V52 tmp37        [V52    ] (  0,  0   )    long  ->  zero-ref    "V14.[008..016)"
-;* V53 tmp38        [V53    ] (  0,  0   )   ubyte  ->  zero-ref    "V14.[016..017)"
-;* V54 tmp39        [V54    ] (  0,  0   )     ref  ->  zero-ref    single-def "V25.[000..008)"
-;* V55 tmp40        [V55    ] (  0,  0   )     int  ->  zero-ref    "V25.[008..012)"
-;  V56 tmp41        [V56,T33] (  2,  2   )     int  ->  r15         "V25.[012..016)"
-;* V57 tmp42        [V57    ] (  0,  0   )     ref  ->  zero-ref    single-def "V25.[016..024)"
-;* V58 tmp43        [V58    ] (  0,  0   )    long  ->  zero-ref    "V25.[024..032)"
-;* V59 tmp44        [V59    ] (  0,  0   )   ubyte  ->  zero-ref    "V25.[032..033)"
-;* V60 tmp45        [V60    ] (  0,  0   )     ref  ->  zero-ref    "V24.[000..008)"
-;* V61 tmp46        [V61    ] (  0,  0   )    long  ->  zero-ref    "V24.[008..016)"
-;* V62 tmp47        [V62    ] (  0,  0   )   ubyte  ->  zero-ref    "V24.[016..017)"
-;  V63 tmp48        [V63,T04] (  3, 24   )   byref  ->  rcx         "Spilling address for field-by-field copy"
-;  V64 tmp49        [V64,T09] (  4, 16   )   byref  ->  r12         "Spilling address for field-by-field copy"
-;  V65 tmp50        [V65,T05] (  3, 24   )   byref  ->  rsi         "Spilling address for field-by-field copy"
-;  V66 tmp51        [V66,T06] (  3, 24   )     ref  ->  rdx         "arr expr"
-;* V67 tmp52        [V67,T26] (  0,  0   )     ref  ->  zero-ref    "arr expr"
-;  V68 tmp53        [V68,T14] (  3, 12   )     ref  ->  rdi         "arr expr"
-;  V69 tmp54        [V69,T07] (  3, 24   )     ref  ->  rsi         "arr expr"
-;  V70 tmp55        [V70,T15] (  3, 12   )     ref  ->  rcx         "arr expr"
-;  V71 tmp56        [V71,T18] (  3, 12   )     int  ->  rdx         "index expr"
-;  V72 PSPSym       [V72,T36] (  1,  1   )    long  ->  [rbp-0x70]  do-not-enreg[V] "PSPSym"
-;  V73 cse0         [V73,T16] (  3, 12   )   byref  ->  rdx         "CSE #05: moderate"
-;  V74 cse1         [V74,T22] (  3, 10   )    long  ->  r12         "CSE #04: moderate"
-;  V75 cse2         [V75,T17] (  2,  8   )     ref  ->  rdx         "CSE #01: moderate"
-;  V76 cse3         [V76,T19] (  2,  8   )     int  ->  rsi         "CSE #11: moderate"
-;  V77 cse4         [V77,T28] (  3,  6   )     int  ->  rsi         "CSE #08: moderate"
-;  V78 cse5         [V78,T27] (  3,  6   )     ref  ->  rdi         "CSE #09: moderate"
-;  V79 rat0         [V79,T02] (  9, 29   )    long  ->  r13         "Widened IV V03"
+;  V27 tmp12        [V27,T08] (  3, 12   )   byref  ->  rsi         "Inlining Arg"
+;  V28 tmp13        [V28,T16] (  4,  8   )     int  ->  rax         "Inline stloc first use temp"
+;* V29 tmp14        [V29,T26] (  0,  0   )    long  ->  zero-ref    "field V08.key (fldOffset=0x0)" P-INDEP
+;* V30 tmp15        [V30    ] (  0,  0   )   ubyte  ->  zero-ref    "field V08.value (fldOffset=0x8)" P-INDEP
+;* V31 tmp16        [V31    ] (  0,  0   )    long  ->  zero-ref    "field V09.key (fldOffset=0x0)" P-INDEP
+;* V32 tmp17        [V32    ] (  0,  0   )   ubyte  ->  zero-ref    "field V09.value (fldOffset=0x8)" P-INDEP
+;* V33 tmp18        [V33    ] (  0,  0   )    long  ->  zero-ref    "field V17._id (fldOffset=0x0)" P-INDEP
+;* V34 tmp19        [V34    ] (  0,  0   )    long  ->  zero-ref    "field V18._id (fldOffset=0x0)" P-INDEP
+;* V35 tmp20        [V35    ] (  0,  0   )    long  ->  zero-ref    "field V23.key (fldOffset=0x0)" P-INDEP
+;* V36 tmp21        [V36    ] (  0,  0   )   ubyte  ->  zero-ref    "field V23.value (fldOffset=0x8)" P-INDEP
+;  V37 tmp22        [V37,T14] (  3, 10   )     ref  ->  [rbp-0xA8]  spill-single-def "V04.[000..008)"
+;  V38 tmp23        [V38,T06] (  3, 10   )    long  ->  [rbp-0x98]  spill-single-def "V04.[008..016)"
+;* V39 tmp24        [V39    ] (  0,  0   )   ubyte  ->  zero-ref    "V04.[016..017)"
+;* V40 tmp25        [V40    ] (  0,  0   )     ref  ->  zero-ref    "V10.[000..008)"
+;* V41 tmp26        [V41    ] (  0,  0   )    long  ->  zero-ref    "V10.[008..016)"
+;* V42 tmp27        [V42    ] (  0,  0   )   ubyte  ->  zero-ref    "V10.[016..017)"
+;  V43 tmp28        [V43,T17] (  2,  8   )     ref  ->  rsi         "V14.[000..008)"
+;* V44 tmp29        [V44    ] (  0,  0   )    long  ->  zero-ref    "V14.[008..016)"
+;  V45 tmp30        [V45,T23] (  2,  6   )   ubyte  ->  r14         "V14.[016..017)"
+;* V46 tmp31        [V46    ] (  0,  0   )     ref  ->  zero-ref    single-def "V25.[000..008)"
+;* V47 tmp32        [V47    ] (  0,  0   )     int  ->  zero-ref    "V25.[008..012)"
+;  V48 tmp33        [V48,T28] (  2,  2   )     int  ->  rdi         "V25.[012..016)"
+;* V49 tmp34        [V49    ] (  0,  0   )     ref  ->  zero-ref    "V24.[000..008)"
+;* V50 tmp35        [V50    ] (  0,  0   )    long  ->  zero-ref    "V24.[008..016)"
+;* V51 tmp36        [V51    ] (  0,  0   )   ubyte  ->  zero-ref    "V24.[016..017)"
+;  V52 tmp37        [V52,T03] (  3, 24   )   byref  ->  rcx         "Spilling address for field-by-field copy"
+;  V53 tmp38        [V53,T05] (  4, 16   )   byref  ->  r12         "Spilling address for field-by-field copy"
+;  V54 tmp39        [V54,T04] (  3, 24   )     ref  ->  rdx         "arr expr"
+;* V55 tmp40        [V55,T18] (  0,  0   )     ref  ->  zero-ref    "arr expr"
+;  V56 tmp41        [V56,T09] (  3, 12   )     ref  ->  rdi         "arr expr"
+;  V57 tmp42        [V57,T10] (  3, 12   )     ref  ->  rsi         "arr expr"
+;  V58 tmp43        [V58,T13] (  3, 12   )     int  ->  rax         "index expr"
+;  V59 PSPSym       [V59,T31] (  1,  1   )    long  ->  [rbp-0xB0]  do-not-enreg[V] "PSPSym"
+;  V60 cse0         [V60,T11] (  3, 12   )   byref  ->  rdx         "CSE #05: moderate"
+;  V61 cse1         [V61,T15] (  3, 10   )    long  ->  r12         "CSE #04: moderate"
+;  V62 cse2         [V62,T12] (  2,  8   )     ref  ->  rdx         "CSE #01: moderate"
+;  V63 cse3         [V63,T20] (  3,  6   )     int  ->  rsi         "CSE #08: moderate"
+;  V64 cse4         [V64,T19] (  3,  6   )     ref  ->  rdi         "CSE #09: moderate"
+;  V65 cse5         [V65,T21] (  3,  6   )    long  ->  r15         "CSE #10: moderate"
+;  V66 rat0         [V66,T02] (  9, 29   )    long  ->  r13         "Widened IV V03"
 ;
-; Lcl frame size = 72
+; Lcl frame size = 136
 
 G_M47816_IG01:
        push     rbp
        push     r15
        push     r14
        push     r13
        push     r12
        push     rbx
-       sub      rsp, 72
-       lea      rbp, [rsp+0x70]
-       mov      qword ptr [rbp-0x70], rsp
+       sub      rsp, 136
+       lea      rbp, [rsp+0xB0]
+       vxorps   xmm8, xmm8, xmm8
+       vmovdqu  ymmword ptr [rbp-0x90], ymm8
+       vmovdqu  ymmword ptr [rbp-0x70], ymm8
+       vmovdqa  xmmword ptr [rbp-0x50], xmm8
+       mov      qword ptr [rbp-0xB0], rsp
        mov      rbx, rdi
-						;; size=26 bbWeight=1 PerfScore 8.00
+						;; size=58 bbWeight=1 PerfScore 14.33
 G_M47816_IG02:
        xor      r15d, r15d
        mov      rdx, gword ptr [rbx+0x20]
        mov      r14, gword ptr [rdx+0x18]
        xor      r13d, r13d
        cmp      dword ptr [r14+0x10], 0
        jle      G_M47816_IG06
 						;; size=25 bbWeight=1 PerfScore 8.50
 G_M47816_IG03:
        cmp      r13d, dword ptr [r14+0x10]
-       jae      G_M47816_IG23
+       jae      G_M47816_IG25
        mov      rdx, gword ptr [r14+0x08]
        cmp      r13d, dword ptr [rdx+0x08]
-       jae      G_M47816_IG22
+       jae      G_M47816_IG24
        lea      r12, [r13+2*r13]
        lea      rdx, bword ptr [rdx+8*r12+0x10]
        mov      rcx, rdx
        mov      rax, gword ptr [rcx]
-       mov      gword ptr [rbp-0x60], rax
+       mov      gword ptr [rbp-0xA8], rax
        mov      r8, qword ptr [rcx+0x08]
-       mov      qword ptr [rbp-0x48], r8
+       mov      qword ptr [rbp-0x98], r8
        xor      ecx, ecx
        mov      qword ptr [rdx], rcx
        mov      qword ptr [rdx+0x08], rcx
        mov      qword ptr [rdx+0x10], rcx
        inc      dword ptr [r14+0x14]
        mov      rdx, gword ptr [rbx+0x18]
        lea      rcx, [rbp-0x30]
        mov      rdi, rax
        mov      rsi, r8
        mov      r11, 0xD1FFAB1E      ; code for System.Threading.Tasks.Dataflow.ISourceBlock`1[ubyte]:ConsumeMessage(System.Threading.Tasks.Dataflow.DataflowMessageHeader,System.Threading.Tasks.Dataflow.ITargetBlock`1[ubyte],byref):ubyte:this
        call     [r11]System.Threading.Tasks.Dataflow.ISourceBlock`1[ubyte]:ConsumeMessage(System.Threading.Tasks.Dataflow.DataflowMessageHeader,System.Threading.Tasks.Dataflow.ITargetBlock`1[ubyte],byref):ubyte:this
        mov      dword ptr [rbp-0x34], eax
        cmp      byte  ptr [rbp-0x30], 0
        je       SHORT G_M47816_IG05
-						;; size=105 bbWeight=4 PerfScore 143.00
+						;; size=111 bbWeight=4 PerfScore 143.00
 G_M47816_IG04:
        cmp      r13d, dword ptr [r14+0x10]
-       jae      G_M47816_IG23
+       jae      G_M47816_IG25
        mov      rdi, gword ptr [r14+0x08]
        cmp      r13d, dword ptr [rdi+0x08]
-       jae      G_M47816_IG22
+       jae      G_M47816_IG24
        lea      r12, bword ptr [rdi+8*r12+0x10]
-       mov      rsi, gword ptr [rbp-0x60]
+       mov      rsi, gword ptr [rbp-0xA8]
        mov      rdi, r12
        call     CORINFO_HELP_ASSIGN_REF
-       mov      rsi, qword ptr [rbp-0x48]
+       mov      rsi, qword ptr [rbp-0x98]
        mov      qword ptr [r12+0x08], rsi
        mov      esi, dword ptr [rbp-0x34]
        mov      byte  ptr [r12+0x10], sil
        inc      dword ptr [r14+0x14]
        inc      r15d
-						;; size=65 bbWeight=2 PerfScore 41.00
+						;; size=71 bbWeight=2 PerfScore 41.00
 G_M47816_IG05:
        inc      r13d
        cmp      r13d, dword ptr [r14+0x10]
        jl       G_M47816_IG03
 						;; size=13 bbWeight=4 PerfScore 17.00
 G_M47816_IG06:
        mov      rdi, gword ptr [rbx+0x10]
-       mov      gword ptr [rbp-0x50], rdi
+       mov      gword ptr [rbp-0xA0], rdi
        xor      esi, esi
        mov      dword ptr [rbp-0x40], esi
-						;; size=13 bbWeight=1 PerfScore 4.25
+						;; size=16 bbWeight=1 PerfScore 4.25
 G_M47816_IG07:
        cmp      byte  ptr [rbp-0x40], 0
-       jne      G_M47816_IG15
+       jne      SHORT G_M47816_IG13
        lea      rsi, [rbp-0x40]
        call     System.Threading.Monitor:ReliableEnter(System.Object,byref)
        cmp      gword ptr [rbx+0x28], 0
        je       SHORT G_M47816_IG09
-						;; size=26 bbWeight=1 PerfScore 8.50
+						;; size=22 bbWeight=1 PerfScore 8.50
 G_M47816_IG08:
-       mov      rsi, gword ptr [rbx+0x28]
-       add      dword ptr [rsi+0x0C], r15d
+       mov      rdi, gword ptr [rbx+0x28]
+       add      dword ptr [rdi+0x0C], r15d
 						;; size=8 bbWeight=0.50 PerfScore 2.50
 G_M47816_IG09:
-       mov      r15d, dword ptr [r14+0x14]
-       xor      r13d, r13d
-						;; size=7 bbWeight=1 PerfScore 2.25
+       mov      edi, dword ptr [r14+0x14]
+       vxorps   xmm0, xmm0, xmm0
+       vmovdqu  xmmword ptr [rbp-0x80], xmm0
+       vmovdqu  xmmword ptr [rbp-0x78], xmm0
+						;; size=18 bbWeight=1 PerfScore 4.33
 G_M47816_IG10:
-       cmp      r15d, dword ptr [r14+0x14]
-       jne      G_M47816_IG17
-						;; size=10 bbWeight=8 PerfScore 32.00
+       vmovdqu  ymm0, ymmword ptr [rbp-0x90]
+       vmovdqu  ymmword ptr [rbp-0x68], ymm0
+       mov      rsi, qword ptr [rbp-0x70]
+       mov      qword ptr [rbp-0x48], rsi
+						;; size=21 bbWeight=1 PerfScore 7.00
 G_M47816_IG11:
-       mov      esi, dword ptr [r14+0x10]
-       cmp      r13d, esi
-       jae      G_M47816_IG18
-       mov      rsi, gword ptr [r14+0x08]
-       cmp      r13d, dword ptr [rsi+0x08]
-       jae      G_M47816_IG16
-       mov      edi, r13d
-       lea      rdi, [rdi+2*rdi]
-       lea      rsi, bword ptr [rsi+8*rdi+0x10]
-       mov      rdi, gword ptr [rsi]
-       movzx    r12, byte  ptr [rsi+0x10]
-       inc      r13d
-       test     rdi, rdi
-       je       SHORT G_M47816_IG10
-						;; size=55 bbWeight=4 PerfScore 66.00
+       mov      gword ptr [rbp-0x68], r14
+       xor      esi, esi
+       mov      dword ptr [rbp-0x60], esi
+       mov      dword ptr [rbp-0x5C], edi
+       jmp      SHORT G_M47816_IG14
+						;; size=14 bbWeight=1 PerfScore 5.25
 G_M47816_IG12:
-       mov      rax, gword ptr [rbx+0x08]
-       mov      gword ptr [rbp-0x58], rax
-       mov      esi, dword ptr [rax+0x18]
-       mov      rdi, gword ptr [rax+0x08]
-       cmp      esi, dword ptr [rdi+0x08]
-       jne      SHORT G_M47816_IG13
-       inc      esi
-       mov      rdi, rax
-       mov      rcx, 0xD1FFAB1E      ; code for System.Collections.Generic.Queue`1[ubyte]:Grow(int):this
-       call     [rcx]System.Collections.Generic.Queue`1[ubyte]:Grow(int):this
-       mov      rax, gword ptr [rbp-0x58]
-						;; size=41 bbWeight=2 PerfScore 31.50
+       call     CORINFO_HELP_RNGCHKFAIL
+       int3     
+						;; size=6 bbWeight=0 PerfScore 0.00
 G_M47816_IG13:
-       mov      rdi, gword ptr [rax+0x08]
-       mov      rcx, rdi
-       mov      edx, dword ptr [rax+0x14]
-       cmp      edx, dword ptr [rcx+0x08]
-       jae      SHORT G_M47816_IG16
-       mov      byte  ptr [rcx+rdx+0x10], r12b
-       lea      rcx, bword ptr [rax+0x14]
-       mov      edx, dword ptr [rcx]
-       inc      edx
-       cmp      dword ptr [rdi+0x08], edx
-       jne      SHORT G_M47816_IG14
-       xor      edx, edx
-						;; size=35 bbWeight=2 PerfScore 32.50
-G_M47816_IG14:
-       mov      dword ptr [rcx], edx
-       inc      dword ptr [rax+0x18]
-       inc      dword ptr [rax+0x1C]
-       jmp      G_M47816_IG10
-						;; size=13 bbWeight=2 PerfScore 18.00
-G_M47816_IG15:
        mov      rax, 0xD1FFAB1E      ; code for System.Threading.Monitor:ThrowLockTakenException()
        call     [rax]System.Threading.Monitor:ThrowLockTakenException()
        int3     
 						;; size=13 bbWeight=0 PerfScore 0.00
+G_M47816_IG14:
+       lea      rdi, [rbp-0x68]
+       mov      r15, 0xD1FFAB1E      ; System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[ubyte],System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,ubyte]]]
+       mov      rsi, r15
+       mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.__Canon,System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,ubyte]]]:MoveNext():ubyte:this
+       call     [rax]System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.__Canon,System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,ubyte]]]:MoveNext():ubyte:this
+       test     eax, eax
+       je       SHORT G_M47816_IG20
+						;; size=33 bbWeight=1 PerfScore 5.50
+G_M47816_IG15:
+       mov      rsi, gword ptr [rbp-0x58]
+       movzx    r14, byte  ptr [rbp-0x48]
+       test     rsi, rsi
+       je       SHORT G_M47816_IG19
+						;; size=14 bbWeight=4 PerfScore 13.00
 G_M47816_IG16:
-       call     CORINFO_HELP_RNGCHKFAIL
-       int3     
-						;; size=6 bbWeight=0 PerfScore 0.00
+       mov      r13, gword ptr [rbx+0x08]
+       mov      esi, dword ptr [r13+0x18]
+       mov      rdi, gword ptr [r13+0x08]
+       cmp      esi, dword ptr [rdi+0x08]
+       jne      SHORT G_M47816_IG17
+       inc      esi
+       mov      rdi, r13
+       mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.Queue`1[ubyte]:Grow(int):this
+       call     [rax]System.Collections.Generic.Queue`1[ubyte]:Grow(int):this
+						;; size=34 bbWeight=2 PerfScore 27.50
 G_M47816_IG17:
-       mov      rax, 0xD1FFAB1E      ; code for System.ThrowHelper:ThrowInvalidOperationException_InvalidOperation_EnumFailedVersion()
-       call     [rax]System.ThrowHelper:ThrowInvalidOperationException_InvalidOperation_EnumFailedVersion()
-       int3     
-						;; size=13 bbWeight=0 PerfScore 0.00
+       mov      rdi, gword ptr [r13+0x08]
+       mov      rsi, rdi
+       mov      eax, dword ptr [r13+0x14]
+       cmp      eax, dword ptr [rsi+0x08]
+       jae      SHORT G_M47816_IG12
+       mov      byte  ptr [rsi+rax+0x10], r14b
+       lea      rsi, bword ptr [r13+0x14]
+       mov      eax, dword ptr [rsi]
+       inc      eax
+       cmp      dword ptr [rdi+0x08], eax
+       jne      SHORT G_M47816_IG18
+       xor      eax, eax
+						;; size=36 bbWeight=2 PerfScore 32.50
 G_M47816_IG18:
+       mov      dword ptr [rsi], eax
+       inc      dword ptr [r13+0x18]
+       inc      dword ptr [r13+0x1C]
+						;; size=10 bbWeight=2 PerfScore 14.00
+G_M47816_IG19:
+       lea      rdi, [rbp-0x68]
+       mov      rsi, r15
+       mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.__Canon,System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,ubyte]]]:MoveNext():ubyte:this
+       call     [rax]System.Collections.Generic.List`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.__Canon,System.Collections.Generic.KeyValuePair`2[System.Threading.Tasks.Dataflow.DataflowMessageHeader,ubyte]]]:MoveNext():ubyte:this
+       test     eax, eax
+       jne      SHORT G_M47816_IG15
+						;; size=23 bbWeight=4 PerfScore 21.00
+G_M47816_IG20:
        cmp      byte  ptr [rbp-0x40], 0
-       je       SHORT G_M47816_IG20
+       je       SHORT G_M47816_IG22
 						;; size=6 bbWeight=1 PerfScore 3.00
-G_M47816_IG19:
-       mov      rdi, gword ptr [rbp-0x50]
+G_M47816_IG21:
+       mov      rdi, gword ptr [rbp-0xA0]
        call     System.Threading.Monitor:Exit(System.Object)
-						;; size=9 bbWeight=0.50 PerfScore 1.00
-G_M47816_IG20:
+						;; size=12 bbWeight=0.50 PerfScore 1.00
+G_M47816_IG22:
        nop      
 						;; size=1 bbWeight=1 PerfScore 0.25
-G_M47816_IG21:
-       add      rsp, 72
+G_M47816_IG23:
+       vzeroupper 
+       add      rsp, 136
        pop      rbx
        pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
-						;; size=15 bbWeight=1 PerfScore 4.25
-G_M47816_IG22:
+						;; size=21 bbWeight=1 PerfScore 5.25
+G_M47816_IG24:
        call     CORINFO_HELP_RNGCHKFAIL
        int3     
 						;; size=6 bbWeight=0 PerfScore 0.00
-G_M47816_IG23:
+G_M47816_IG25:
        mov      rax, 0xD1FFAB1E      ; code for System.ThrowHelper:ThrowArgumentOutOfRange_IndexMustBeLessException()
        call     [rax]System.ThrowHelper:ThrowArgumentOutOfRange_IndexMustBeLessException()
        int3     
 						;; size=13 bbWeight=0 PerfScore 0.00
-G_M47816_IG24:
+G_M47816_IG26:
        push     rbp
        push     r15
        push     r14
        push     r13
        push     r12
        push     rbx
        push     rax
        mov      rbp, qword ptr [rdi]
        mov      qword ptr [rsp], rbp
-       lea      rbp, [rbp+0x70]
-						;; size=22 bbWeight=0 PerfScore 0.00
-G_M47816_IG25:
+       lea      rbp, [rbp+0xB0]
+						;; size=25 bbWeight=0 PerfScore 0.00
+G_M47816_IG27:
        cmp      byte  ptr [rbp-0x40], 0
-       je       SHORT G_M47816_IG26
-       mov      rdi, gword ptr [rbp-0x50]
+       je       SHORT G_M47816_IG28
+       mov      rdi, gword ptr [rbp-0xA0]
        call     System.Threading.Monitor:Exit(System.Object)
-						;; size=15 bbWeight=0 PerfScore 0.00
-G_M47816_IG26:
+						;; size=18 bbWeight=0 PerfScore 0.00
+G_M47816_IG28:
        nop      
 						;; size=1 bbWeight=0 PerfScore 0.00
-G_M47816_IG27:
+G_M47816_IG29:
+       vzeroupper 
        add      rsp, 8
        pop      rbx
        pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
-						;; size=15 bbWeight=0 PerfScore 0.00
+						;; size=18 bbWeight=0 PerfScore 0.00
 
-; Total bytes of code 577, prolog size 26, PerfScore 423.50, instruction count 166, allocated bytes for code 577 (MethodHash=1cf24537) for method System.Threading.Tasks.Dataflow.BatchBlock`1+BatchBlockTargetCore[ubyte]:ConsumeReservedMessagesGreedyBounded():this (FullOpts)
+; Total bytes of code 667, prolog size 58, PerfScore 378.67, instruction count 178, allocated bytes for code 667 (MethodHash=1cf24537) for method System.Threading.Tasks.Dataflow.BatchBlock`1+BatchBlockTargetCore[ubyte]:ConsumeReservedMessagesGreedyBounded():this (FullOpts)
75 (6.64 % of base) - System.Reflection.Metadata.Ecma335.MetadataBuilder:SerializeTypeDefTable(System.Reflection.Metadata.BlobBuilder,System.Collections.Immutable.ImmutableArray`1[int],System.Reflection.Metadata.Ecma335.MetadataSizes):this
 ; Assembly listing for method System.Reflection.Metadata.Ecma335.MetadataBuilder:SerializeTypeDefTable(System.Reflection.Metadata.BlobBuilder,System.Collections.Immutable.ImmutableArray`1[int],System.Reflection.Metadata.Ecma335.MetadataSizes):this (FullOpts)
 ; Emitting BLENDED_CODE for X64 with AVX - Unix
 ; FullOpts code
 ; optimized code
 ; rbp based frame
-; fully interruptible
+; partially interruptible
 ; No PGO data
-; 0 inlinees with PGO data; 37 single block inlinees; 29 inlinees without PGO data
+; 0 inlinees with PGO data; 37 single block inlinees; 27 inlinees without PGO data
 ; Final local variable assignments
 ;
-;  V00 this         [V00,T47] (  3,  3   )     ref  ->  rdi         this class-hnd single-def <System.Reflection.Metadata.Ecma335.MetadataBuilder>
-;  V01 arg1         [V01,T00] ( 57,112   )     ref  ->  rbx         class-hnd single-def <System.Reflection.Metadata.BlobBuilder>
+;  V00 this         [V00,T39] (  3,  3   )     ref  ->  rdi         this class-hnd single-def <System.Reflection.Metadata.Ecma335.MetadataBuilder>
+;  V01 arg1         [V01,T00] ( 57,120   )     ref  ->  rbx         class-hnd single-def <System.Reflection.Metadata.BlobBuilder>
 ;* V02 arg2         [V02    ] (  0,  0   )  struct ( 8) zero-ref    single-def <System.Collections.Immutable.ImmutableArray`1[int]>
-;  V03 arg3         [V03,T06] (  7, 12   )     ref  ->  r15         class-hnd single-def <System.Reflection.Metadata.Ecma335.MetadataSizes>
-;* V04 loc0         [V04    ] (  0,  0   )  struct (40) zero-ref    do-not-enreg[SF] ld-addr-op <System.Collections.Generic.List`1+Enumerator[System.Reflection.Metadata.Ecma335.MetadataBuilder+TypeDefRow]>
+;  V03 arg3         [V03,T01] (  7, 22   )     ref  ->  r15         class-hnd single-def <System.Reflection.Metadata.Ecma335.MetadataSizes>
+;  V04 loc0         [V04    ] ( 12, 33   )  struct (40) [rbp-0x50]  do-not-enreg[XS] addr-exposed ld-addr-op <System.Collections.Generic.List`1+Enumerator[System.Reflection.Metadata.Ecma335.MetadataBuilder+TypeDefRow]>
 ;* V05 loc1         [V05    ] (  0,  0   )  struct (24) zero-ref    do-not-enreg[SF] <System.Reflection.Metadata.Ecma335.MetadataBuilder+TypeDefRow>
 ;# V06 OutArgs      [V06    ] (  1,  1   )  struct ( 0) [rsp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-;  V07 tmp1         [V07,T46] (  3,  6   )     ref  ->  r13         class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Reflection.Metadata.Ecma335.MetadataBuilder+TypeDefRow]>
-;* V08 tmp2         [V08    ] (  0,  0   )  struct (40) zero-ref    do-not-enreg[SF] ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Reflection.Metadata.Ecma335.MetadataBuilder+TypeDefRow]>
+;  V07 tmp1         [V07,T38] (  3,  6   )     ref  ->  rdi         class-hnd single-def "Inlining Arg" <System.Collections.Generic.List`1[System.Reflection.Metadata.Ecma335.MetadataBuilder+TypeDefRow]>
+;  V08 tmp2         [V08,T41] (  1,  2   )  struct (40) [rbp-0x78]  do-not-enreg[SF] must-init ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.Reflection.Metadata.Ecma335.MetadataBuilder+TypeDefRow]>
 ;* V09 tmp3         [V09    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V10 tmp4         [V10    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
-;  V11 tmp5         [V11,T07] (  6, 12   )     int  ->  r11         "Inline stloc first use temp"
+;  V11 tmp5         [V11,T03] (  6, 22   )     int  ->   r9         "Inline stloc first use temp"
 ;* V12 tmp6         [V12    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <ubyte[]>
 ;* V13 tmp7         [V13    ] (  0,  0   )   byref  ->  zero-ref   
 ;* V14 tmp8         [V14    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
 ;* V15 tmp9         [V15    ] (  0,  0   )   byref  ->  zero-ref   
 ;* V16 tmp10        [V16    ] (  0,  0   )     int  ->  zero-ref   
 ;* V17 tmp11        [V17    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "Inlining Arg" <System.Collections.Immutable.ImmutableArray`1[int]>
 ;* V18 tmp12        [V18    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "Inlining Arg" <System.Reflection.Metadata.StringHandle>
 ;* V19 tmp13        [V19    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
-;  V20 tmp14        [V20,T40] (  2,  8   )   ubyte  ->  rsi         "Inlining Arg"
-;  V21 tmp15        [V21,T34] (  3, 12   )     int  ->  [rbp-0x2C]  spill-single-def "Inlining Arg"
+;  V20 tmp14        [V20,T07] (  2, 16   )   ubyte  ->  rdi         "Inlining Arg"
+;  V21 tmp15        [V21,T05] (  3, 16   )     int  ->  r13         "Inlining Arg"
 ;* V22 tmp16        [V22    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V23 tmp17        [V23    ] (  0,  0   )  ushort  ->  zero-ref    "Inlining Arg"
-;  V24 tmp18        [V24,T08] (  6, 12   )     int  ->  rcx         "Inline stloc first use temp"
+;  V24 tmp18        [V24,T12] (  6, 12   )     int  ->  r12         "Inline stloc first use temp"
 ;* V25 tmp19        [V25    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <ubyte[]>
 ;* V26 tmp20        [V26    ] (  0,  0   )   byref  ->  zero-ref   
 ;* V27 tmp21        [V27    ] (  0,  0   )  ushort  ->  zero-ref    "Inlining Arg"
 ;* V28 tmp22        [V28    ] (  0,  0   )   byref  ->  zero-ref   
 ;* V29 tmp23        [V29    ] (  0,  0   )     int  ->  zero-ref   
 ;* V30 tmp24        [V30    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
-;  V31 tmp25        [V31,T09] (  6, 12   )     int  ->  rcx         "Inline stloc first use temp"
+;  V31 tmp25        [V31,T13] (  6, 12   )     int  ->  r12         "Inline stloc first use temp"
 ;* V32 tmp26        [V32    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <ubyte[]>
 ;* V33 tmp27        [V33    ] (  0,  0   )   byref  ->  zero-ref   
 ;* V34 tmp28        [V34    ] (  0,  0   )   byref  ->  zero-ref   
 ;* V35 tmp29        [V35    ] (  0,  0   )     int  ->  zero-ref   
 ;* V36 tmp30        [V36    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "Inlining Arg" <System.Collections.Immutable.ImmutableArray`1[int]>
 ;* V37 tmp31        [V37    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "Inlining Arg" <System.Reflection.Metadata.StringHandle>
 ;* V38 tmp32        [V38    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
-;  V39 tmp33        [V39,T41] (  2,  8   )   ubyte  ->  rsi         "Inlining Arg"
-;  V40 tmp34        [V40,T35] (  3, 12   )     int  ->  [rbp-0x30]  spill-single-def "Inlining Arg"
+;  V39 tmp33        [V39,T08] (  2, 16   )   ubyte  ->  rdi         "Inlining Arg"
+;  V40 tmp34        [V40,T06] (  3, 16   )     int  ->  r13         "Inlining Arg"
 ;* V41 tmp35        [V41    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V42 tmp36        [V42    ] (  0,  0   )  ushort  ->  zero-ref    "Inlining Arg"
-;  V43 tmp37        [V43,T10] (  6, 12   )     int  ->  rcx         "Inline stloc first use temp"
+;  V43 tmp37        [V43,T14] (  6, 12   )     int  ->  r12         "Inline stloc first use temp"
 ;* V44 tmp38        [V44    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <ubyte[]>
 ;* V45 tmp39        [V45    ] (  0,  0   )   byref  ->  zero-ref   
 ;* V46 tmp40        [V46    ] (  0,  0   )  ushort  ->  zero-ref    "Inlining Arg"
 ;* V47 tmp41        [V47    ] (  0,  0   )   byref  ->  zero-ref   
 ;* V48 tmp42        [V48    ] (  0,  0   )     int  ->  zero-ref   
 ;* V49 tmp43        [V49    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
-;  V50 tmp44        [V50,T11] (  6, 12   )     int  ->  rcx         "Inline stloc first use temp"
+;  V50 tmp44        [V50,T15] (  6, 12   )     int  ->  r12         "Inline stloc first use temp"
 ;* V51 tmp45        [V51    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <ubyte[]>
 ;* V52 tmp46        [V52    ] (  0,  0   )   byref  ->  zero-ref   
 ;* V53 tmp47        [V53    ] (  0,  0   )   byref  ->  zero-ref   
 ;* V54 tmp48        [V54    ] (  0,  0   )     int  ->  zero-ref   
-;  V55 tmp49        [V55,T42] (  2,  8   )   ubyte  ->  rsi         "Inlining Arg"
+;  V55 tmp49        [V55,T09] (  2, 16   )   ubyte  ->  rdi         "Inlining Arg"
 ;* V56 tmp50        [V56    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
 ;* V57 tmp51        [V57    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V58 tmp52        [V58    ] (  0,  0   )  ushort  ->  zero-ref    "Inlining Arg"
-;  V59 tmp53        [V59,T12] (  6, 12   )     int  ->  rax         "Inline stloc first use temp"
+;  V59 tmp53        [V59,T16] (  6, 12   )     int  ->  r13         "Inline stloc first use temp"
 ;* V60 tmp54        [V60    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <ubyte[]>
 ;* V61 tmp55        [V61    ] (  0,  0   )   byref  ->  zero-ref   
 ;* V62 tmp56        [V62    ] (  0,  0   )  ushort  ->  zero-ref    "Inlining Arg"
 ;* V63 tmp57        [V63    ] (  0,  0   )   byref  ->  zero-ref   
 ;* V64 tmp58        [V64    ] (  0,  0   )     int  ->  zero-ref   
 ;* V65 tmp59        [V65    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
-;  V66 tmp60        [V66,T13] (  6, 12   )     int  ->  rax         "Inline stloc first use temp"
+;  V66 tmp60        [V66,T17] (  6, 12   )     int  ->  r13         "Inline stloc first use temp"
 ;* V67 tmp61        [V67    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <ubyte[]>
 ;* V68 tmp62        [V68    ] (  0,  0   )   byref  ->  zero-ref   
 ;* V69 tmp63        [V69    ] (  0,  0   )   byref  ->  zero-ref   
 ;* V70 tmp64        [V70    ] (  0,  0   )     int  ->  zero-ref   
-;  V71 tmp65        [V71,T43] (  2,  8   )   ubyte  ->  rsi         "Inlining Arg"
+;  V71 tmp65        [V71,T10] (  2, 16   )   ubyte  ->  rdi         "Inlining Arg"
 ;* V72 tmp66        [V72    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
 ;* V73 tmp67        [V73    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V74 tmp68        [V74    ] (  0,  0   )  ushort  ->  zero-ref    "Inlining Arg"
-;  V75 tmp69        [V75,T14] (  6, 12   )     int  ->  rax         "Inline stloc first use temp"
+;  V75 tmp69        [V75,T18] (  6, 12   )     int  ->  r13         "Inline stloc first use temp"
 ;* V76 tmp70        [V76    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <ubyte[]>
 ;* V77 tmp71        [V77    ] (  0,  0   )   byref  ->  zero-ref   
 ;* V78 tmp72        [V78    ] (  0,  0   )  ushort  ->  zero-ref    "Inlining Arg"
 ;* V79 tmp73        [V79    ] (  0,  0   )   byref  ->  zero-ref   
 ;* V80 tmp74        [V80    ] (  0,  0   )     int  ->  zero-ref   
 ;* V81 tmp75        [V81    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
-;  V82 tmp76        [V82,T15] (  6, 12   )     int  ->  rax         "Inline stloc first use temp"
+;  V82 tmp76        [V82,T19] (  6, 12   )     int  ->  r13         "Inline stloc first use temp"
 ;* V83 tmp77        [V83    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <ubyte[]>
 ;* V84 tmp78        [V84    ] (  0,  0   )   byref  ->  zero-ref   
 ;* V85 tmp79        [V85    ] (  0,  0   )   byref  ->  zero-ref   
 ;* V86 tmp80        [V86    ] (  0,  0   )     int  ->  zero-ref   
-;  V87 tmp81        [V87,T44] (  2,  8   )   ubyte  ->  rsi         "Inlining Arg"
+;  V87 tmp81        [V87,T11] (  2, 16   )   ubyte  ->  rdi         "Inlining Arg"
 ;* V88 tmp82        [V88    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
 ;* V89 tmp83        [V89    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V90 tmp84        [V90    ] (  0,  0   )  ushort  ->  zero-ref    "Inlining Arg"
-;  V91 tmp85        [V91,T16] (  6, 12   )     int  ->  rax         "Inline stloc first use temp"
+;  V91 tmp85        [V91,T20] (  6, 12   )     int  ->  r13         "Inline stloc first use temp"
 ;* V92 tmp86        [V92    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <ubyte[]>
 ;* V93 tmp87        [V93    ] (  0,  0   )   byref  ->  zero-ref   
 ;* V94 tmp88        [V94    ] (  0,  0   )  ushort  ->  zero-ref    "Inlining Arg"
 ;* V95 tmp89        [V95    ] (  0,  0   )   byref  ->  zero-ref   
 ;* V96 tmp90        [V96    ] (  0,  0   )     int  ->  zero-ref   
 ;* V97 tmp91        [V97    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
-;  V98 tmp92        [V98,T17] (  6, 12   )     int  ->  rax         "Inline stloc first use temp"
+;  V98 tmp92        [V98,T21] (  6, 12   )     int  ->  r13         "Inline stloc first use temp"
 ;* V99 tmp93        [V99    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <ubyte[]>
 ;* V100 tmp94       [V100    ] (  0,  0   )   byref  ->  zero-ref   
 ;* V101 tmp95       [V101    ] (  0,  0   )   byref  ->  zero-ref   
 ;* V102 tmp96       [V102    ] (  0,  0   )     int  ->  zero-ref   
-;* V103 tmp97       [V103,T45] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;* V104 tmp98       [V104    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline stloc first use temp" <System.Collections.Generic.List`1[System.Reflection.Metadata.Ecma335.MetadataBuilder+TypeDefRow]>
-;  V105 tmp99       [V105,T37] (  5,  9   )     ref  ->  r14         single-def "field V02.array (fldOffset=0x0)" P-INDEP
-;* V106 tmp100      [V106    ] (  0,  0   )     ref  ->  zero-ref    "field V17.array (fldOffset=0x0)" P-INDEP
-;* V107 tmp101      [V107    ] (  0,  0   )     int  ->  zero-ref    "field V18._value (fldOffset=0x0)" P-INDEP
-;* V108 tmp102      [V108    ] (  0,  0   )     ref  ->  zero-ref    "field V36.array (fldOffset=0x0)" P-INDEP
-;* V109 tmp103      [V109    ] (  0,  0   )     int  ->  zero-ref    "field V37._value (fldOffset=0x0)" P-INDEP
-;  V110 tmp104      [V110,T04] (  4, 17   )     ref  ->  r13         single-def "V04.[000..008)"
-;  V111 tmp105      [V111,T02] (  6, 21   )     int  ->  [rbp-0x34]  "V04.[008..012)"
-;  V112 tmp106      [V112,T39] (  2,  9   )     int  ->  r12         "V04.[012..016)"
-;  V113 tmp107      [V113,T38] (  2,  6   )     int  ->  [rbp-0x38]  spill-single-def "V04.[016..020)"
-;  V114 tmp108      [V114,T18] (  3,  8   )     int  ->  [rbp-0x3C]  spill-single-def "V04.[020..024)"
-;  V115 tmp109      [V115,T19] (  3,  8   )     int  ->  [rbp-0x40]  spill-single-def "V04.[024..028)"
-;  V116 tmp110      [V116,T20] (  3,  8   )     int  ->  [rbp-0x44]  spill-single-def "V04.[028..032)"
-;  V117 tmp111      [V117,T21] (  3,  8   )     int  ->  [rbp-0x48]  spill-single-def "V04.[032..036)"
-;  V118 tmp112      [V118,T22] (  3,  8   )     int  ->  [rbp-0x4C]  spill-single-def "V04.[036..040)"
-;* V119 tmp113      [V119    ] (  0,  0   )     int  ->  zero-ref    "V05.[000..004)"
-;* V120 tmp114      [V120    ] (  0,  0   )     int  ->  zero-ref    "V05.[004..008)"
-;* V121 tmp115      [V121    ] (  0,  0   )     int  ->  zero-ref    "V05.[008..012)"
-;* V122 tmp116      [V122    ] (  0,  0   )     int  ->  zero-ref    "V05.[012..016)"
-;* V123 tmp117      [V123    ] (  0,  0   )     int  ->  zero-ref    "V05.[016..020)"
-;* V124 tmp118      [V124    ] (  0,  0   )     int  ->  zero-ref    "V05.[020..024)"
-;* V125 tmp119      [V125    ] (  0,  0   )     ref  ->  zero-ref    single-def "V08.[000..008)"
-;* V126 tmp120      [V126    ] (  0,  0   )     int  ->  zero-ref    "V08.[008..012)"
-;  V127 tmp121      [V127,T48] (  2,  2   )     int  ->  r12         "V08.[012..016)"
-;* V128 tmp122      [V128    ] (  0,  0   )     int  ->  zero-ref    "V08.[016..020)"
-;* V129 tmp123      [V129    ] (  0,  0   )     int  ->  zero-ref    "V08.[020..024)"
-;* V130 tmp124      [V130    ] (  0,  0   )     int  ->  zero-ref    "V08.[024..028)"
-;* V131 tmp125      [V131    ] (  0,  0   )     int  ->  zero-ref    "V08.[028..032)"
-;* V132 tmp126      [V132    ] (  0,  0   )     int  ->  zero-ref    "V08.[032..036)"
-;* V133 tmp127      [V133    ] (  0,  0   )     int  ->  zero-ref    "V08.[036..040)"
-;  V134 tmp128      [V134,T01] (  7, 56   )   byref  ->  rsi         "Spilling address for field-by-field copy"
-;  V135 tmp129      [V135,T03] (  3, 24   )     ref  ->  rsi         "arr expr"
-;  V136 tmp130      [V136,T23] (  3, 12   )     ref  ->  rsi         "arr expr"
-;  V137 tmp131      [V137,T24] (  3, 12   )     ref  ->  rsi         "arr expr"
-;  V138 tmp132      [V138,T25] (  3, 12   )     ref  ->  rsi         "arr expr"
-;  V139 tmp133      [V139,T26] (  3, 12   )     ref  ->  rsi         "arr expr"
-;  V140 tmp134      [V140,T27] (  3, 12   )     ref  ->  rsi         "arr expr"
-;  V141 tmp135      [V141,T28] (  3, 12   )     ref  ->  rsi         "arr expr"
-;  V142 tmp136      [V142,T29] (  3, 12   )     ref  ->  rsi         "arr expr"
-;  V143 tmp137      [V143,T30] (  3, 12   )     ref  ->  rsi         "arr expr"
-;  V144 tmp138      [V144,T31] (  3, 12   )     ref  ->  rsi         "arr expr"
-;  V145 tmp139      [V145,T32] (  3, 12   )     ref  ->  rcx         "arr expr"
-;  V146 tmp140      [V146,T33] (  3, 12   )     ref  ->  rsi         "arr expr"
-;  V147 cse0        [V147,T36] (  2,  8   )     int  ->  rsi         "CSE #20: conservative"
-;  V148 cse1        [V148,T05] (  2, 16   )     int  ->  rsi         "CSE #19: aggressive"
+;  V103 tmp97       [V103,T04] (  5, 17   )     ref  ->  r14         single-def "field V02.array (fldOffset=0x0)" P-INDEP
+;* V104 tmp98       [V104    ] (  0,  0   )     ref  ->  zero-ref    "field V17.array (fldOffset=0x0)" P-INDEP
+;* V105 tmp99       [V105    ] (  0,  0   )     int  ->  zero-ref    "field V18._value (fldOffset=0x0)" P-INDEP
+;* V106 tmp100      [V106    ] (  0,  0   )     ref  ->  zero-ref    "field V36.array (fldOffset=0x0)" P-INDEP
+;* V107 tmp101      [V107    ] (  0,  0   )     int  ->  zero-ref    "field V37._value (fldOffset=0x0)" P-INDEP
+;  V108 tmp102      [V108,T37] (  2,  8   )     int  ->  r13         "V05.[000..004)"
+;  V109 tmp103      [V109,T32] (  3, 12   )     int  ->  r12         "V05.[004..008)"
+;  V110 tmp104      [V110,T33] (  3, 12   )     int  ->  [rbp-0x7C]  spill-single-def "V05.[008..012)"
+;  V111 tmp105      [V111,T34] (  3,  8   )     int  ->  [rbp-0x80]  spill-single-def "V05.[012..016)"
+;  V112 tmp106      [V112,T35] (  3,  8   )     int  ->  [rbp-0x84]  spill-single-def "V05.[016..020)"
+;  V113 tmp107      [V113,T36] (  3,  8   )     int  ->  [rbp-0x88]  spill-single-def "V05.[020..024)"
+;* V114 tmp108      [V114    ] (  0,  0   )     ref  ->  zero-ref    single-def "V08.[000..008)"
+;* V115 tmp109      [V115    ] (  0,  0   )     int  ->  zero-ref    "V08.[008..012)"
+;  V116 tmp110      [V116,T40] (  2,  2   )     int  ->  rax         "V08.[012..016)"
+;  V117 tmp111      [V117,T02] (  3, 24   )     ref  ->  rdi         "arr expr"
+;  V118 tmp112      [V118,T22] (  3, 12   )     ref  ->  rdi         "arr expr"
+;  V119 tmp113      [V119,T23] (  3, 12   )     ref  ->  rdi         "arr expr"
+;  V120 tmp114      [V120,T24] (  3, 12   )     ref  ->  rdi         "arr expr"
+;  V121 tmp115      [V121,T25] (  3, 12   )     ref  ->  rdi         "arr expr"
+;  V122 tmp116      [V122,T26] (  3, 12   )     ref  ->  rdi         "arr expr"
+;  V123 tmp117      [V123,T27] (  3, 12   )     ref  ->  rdi         "arr expr"
+;  V124 tmp118      [V124,T28] (  3, 12   )     ref  ->  rdi         "arr expr"
+;  V125 tmp119      [V125,T29] (  3, 12   )     ref  ->  rdi         "arr expr"
+;  V126 tmp120      [V126,T30] (  3, 12   )     ref  ->  rdi         "arr expr"
+;  V127 tmp121      [V127,T31] (  3, 12   )     ref  ->  rdi         "arr expr"
 ;
-; Lcl frame size = 40
+; Lcl frame size = 104
 
 G_M13357_IG01:
        push     rbp
        push     r15
        push     r14
        push     r13
        push     r12
        push     rbx
-       sub      rsp, 40
-       lea      rbp, [rsp+0x50]
+       sub      rsp, 104
+       lea      rbp, [rsp+0x90]
+       xor      eax, eax
+       mov      qword ptr [rbp-0x78], rax
+       vxorps   xmm8, xmm8, xmm8
+       vmovdqu  ymmword ptr [rbp-0x70], ymm8
        mov      rbx, rsi
        mov      r14, rdx
        mov      r15, rcx
-						;; size=28 bbWeight=1 PerfScore 7.50
+						;; size=47 bbWeight=1 PerfScore 11.08
 G_M13357_IG02:
-       mov      r13, gword ptr [rdi+0xF0]
-       mov      r12d, dword ptr [r13+0x14]
-       xor      edi, edi
-       jmp      G_M13357_IG24
-						;; size=18 bbWeight=1 PerfScore 6.25
+       mov      rdi, gword ptr [rdi+0xF0]
+       mov      eax, dword ptr [rdi+0x14]
+						;; size=10 bbWeight=1 PerfScore 4.00
 G_M13357_IG03:
-       mov      r11d, dword ptr [rbx+0x1C]
-       mov      rsi, gword ptr [rbx+0x10]
-       mov      esi, dword ptr [rsi+0x08]
-       add      esi, -4
-       movsxd   rsi, esi
-       mov      eax, r11d
-       cmp      rsi, rax
-       jge      SHORT G_M13357_IG04
-       mov      rdi, rbx
-       mov      esi, 4
-       mov      rax, 0xD1FFAB1E      ; code for System.Reflection.Metadata.BlobBuilder:Expand(int):this
-       call     [rax]System.Reflection.Metadata.BlobBuilder:Expand(int):this
-       xor      r11d, r11d
-						;; size=48 bbWeight=2 PerfScore 24.00
+       vmovdqu  ymm0, ymmword ptr [rbp-0x78]
+       vmovdqu  ymmword ptr [rbp-0x50], ymm0
+       mov      rcx, qword ptr [rbp-0x58]
+       mov      qword ptr [rbp-0x30], rcx
+						;; size=18 bbWeight=1 PerfScore 7.00
 G_M13357_IG04:
-       lea      esi, [r11+0x04]
-       mov      dword ptr [rbx+0x1C], esi
-       mov      rsi, gword ptr [rbx+0x10]
-       cmp      r11d, dword ptr [rsi+0x08]
-       jae      G_M13357_IG27
-       mov      eax, r11d
-       mov      r11d, dword ptr [rbp-0x38]
-       mov      dword ptr [rsi+rax+0x10], r11d
-       mov      ecx, dword ptr [rbp-0x3C]
-       mov      esi, ecx
-       and      esi, 0xD1FFAB1E
-       cmp      esi, dword ptr [r14+0x08]
-       jae      G_M13357_IG27
-       and      ecx, 0xD1FFAB1E
-       mov      esi, ecx
-       mov      eax, dword ptr [r14+4*rsi+0x10]
-       mov      dword ptr [rbp-0x2C], eax
-       movzx    rsi, byte  ptr [r15+0x2B]
-       test     esi, esi
-       je       SHORT G_M13357_IG06
-       mov      ecx, dword ptr [rbx+0x1C]
-       mov      rsi, gword ptr [rbx+0x10]
-       mov      esi, dword ptr [rsi+0x08]
-       add      esi, -2
-       movsxd   rsi, esi
-       mov      r11d, ecx
-       cmp      rsi, r11
-       jge      SHORT G_M13357_IG05
-       mov      rdi, rbx
-       mov      esi, 2
-       mov      rcx, 0xD1FFAB1E      ; code for System.Reflection.Metadata.BlobBuilder:Expand(int):this
-       call     [rcx]System.Reflection.Metadata.BlobBuilder:Expand(int):this
-       xor      ecx, ecx
-						;; size=125 bbWeight=2 PerfScore 68.00
+       mov      gword ptr [rbp-0x50], rdi
+       xor      edi, edi
+       mov      dword ptr [rbp-0x48], edi
+       mov      dword ptr [rbp-0x44], eax
+       lea      rdi, [rbp-0x50]
+       mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1+Enumerator[System.Reflection.Metadata.Ecma335.MetadataBuilder+TypeDefRow]:MoveNext():ubyte:this
+       call     [rax]System.Collections.Generic.List`1+Enumerator[System.Reflection.Metadata.Ecma335.MetadataBuilder+TypeDefRow]:MoveNext():ubyte:this
+       test     eax, eax
+       je       G_M13357_IG33
+						;; size=36 bbWeight=1 PerfScore 8.25
 G_M13357_IG05:
-       lea      esi, [rcx+0x02]
-       mov      dword ptr [rbx+0x1C], esi
-       mov      rsi, gword ptr [rbx+0x10]
-       cmp      ecx, dword ptr [rsi+0x08]
-       jae      G_M13357_IG27
-       mov      ecx, ecx
-       mov      eax, dword ptr [rbp-0x2C]
-       mov      word  ptr [rsi+rcx+0x10], ax
-       jmp      SHORT G_M13357_IG08
-						;; size=31 bbWeight=2 PerfScore 23.50
-G_M13357_IG06:
-       mov      ecx, dword ptr [rbx+0x1C]
-       mov      rsi, gword ptr [rbx+0x10]
-       mov      esi, dword ptr [rsi+0x08]
-       add      esi, -4
-       movsxd   rsi, esi
-       mov      r11d, ecx
-       cmp      rsi, r11
+       mov      r13d, dword ptr [rbp-0x40]
+       mov      r12d, dword ptr [rbp-0x3C]
+       mov      eax, dword ptr [rbp-0x38]
+       mov      dword ptr [rbp-0x7C], eax
+       mov      ecx, dword ptr [rbp-0x34]
+       mov      dword ptr [rbp-0x80], ecx
+       mov      edx, dword ptr [rbp-0x30]
+       mov      dword ptr [rbp-0x84], edx
+       mov      r8d, dword ptr [rbp-0x2C]
+       mov      dword ptr [rbp-0x88], r8d
+       mov      r9d, dword ptr [rbx+0x1C]
+       mov      rdi, gword ptr [rbx+0x10]
+       mov      edi, dword ptr [rdi+0x08]
+       add      edi, -4
+       movsxd   rdi, edi
+       mov      esi, r9d
+       cmp      rdi, rsi
        jge      SHORT G_M13357_IG07
+						;; size=65 bbWeight=4 PerfScore 72.00
+G_M13357_IG06:
        mov      rdi, rbx
        mov      esi, 4
-       mov      rcx, 0xD1FFAB1E      ; code for System.Reflection.Metadata.BlobBuilder:Expand(int):this
-       call     [rcx]System.Reflection.Metadata.BlobBuilder:Expand(int):this
-       xor      ecx, ecx
-						;; size=46 bbWeight=2 PerfScore 24.00
+       mov      r9, 0xD1FFAB1E      ; code for System.Reflection.Metadata.BlobBuilder:Expand(int):this
+       call     [r9]System.Reflection.Metadata.BlobBuilder:Expand(int):this
+       xor      r9d, r9d
+						;; size=24 bbWeight=2 PerfScore 8.00
 G_M13357_IG07:
-       lea      esi, [rcx+0x04]
-       mov      dword ptr [rbx+0x1C], esi
-       mov      rsi, gword ptr [rbx+0x10]
-       cmp      ecx, dword ptr [rsi+0x08]
-       jae      G_M13357_IG27
-       mov      ecx, ecx
-       mov      eax, dword ptr [rbp-0x2C]
-       mov      dword ptr [rsi+rcx+0x10], eax
-						;; size=28 bbWeight=2 PerfScore 19.50
-G_M13357_IG08:
-       mov      edx, dword ptr [rbp-0x40]
-       mov      esi, edx
-       and      esi, 0xD1FFAB1E
-       cmp      esi, dword ptr [r14+0x08]
-       jae      G_M13357_IG27
-       and      edx, 0xD1FFAB1E
-       mov      esi, edx
-       mov      eax, dword ptr [r14+4*rsi+0x10]
-       mov      dword ptr [rbp-0x30], eax
-       movzx    rsi, byte  ptr [r15+0x2B]
-       test     esi, esi
+       lea      edi, [r9+0x04]
+       mov      dword ptr [rbx+0x1C], edi
+       mov      rdi, gword ptr [rbx+0x10]
+       cmp      r9d, dword ptr [rdi+0x08]
+       jae      G_M13357_IG34
+       mov      esi, r9d
+       mov      dword ptr [rdi+rsi+0x10], r13d
+       mov      edi, r12d
+       and      edi, 0xD1FFAB1E
+       cmp      edi, dword ptr [r14+0x08]
+       jae      G_M13357_IG34
+       and      r12d, 0xD1FFAB1E
+       mov      edi, r12d
+       mov      r13d, dword ptr [r14+4*rdi+0x10]
+       movzx    rdi, byte  ptr [r15+0x2B]
+       test     edi, edi
        je       SHORT G_M13357_IG10
-       mov      ecx, dword ptr [rbx+0x1C]
-       mov      rsi, gword ptr [rbx+0x10]
-       mov      esi, dword ptr [rsi+0x08]
-       add      esi, -2
-       movsxd   rsi, esi
-       mov      edx, ecx
-       cmp      rsi, rdx
+						;; size=72 bbWeight=4 PerfScore 76.00
+G_M13357_IG08:
+       mov      r12d, dword ptr [rbx+0x1C]
+       mov      rdi, gword ptr [rbx+0x10]
+       mov      edi, dword ptr [rdi+0x08]
+       add      edi, -2
+       movsxd   rdi, edi
+       mov      esi, r12d
+       cmp      rdi, rsi
        jge      SHORT G_M13357_IG09
        mov      rdi, rbx
        mov      esi, 2
-       mov      rcx, 0xD1FFAB1E      ; code for System.Reflection.Metadata.BlobBuilder:Expand(int):this
-       call     [rcx]System.Reflection.Metadata.BlobBuilder:Expand(int):this
-       xor      ecx, ecx
-						;; size=91 bbWeight=2 PerfScore 48.50
+       mov      r9, 0xD1FFAB1E      ; code for System.Reflection.Metadata.BlobBuilder:Expand(int):this
+       call     [r9]System.Reflection.Metadata.BlobBuilder:Expand(int):this
+       xor      r12d, r12d
+						;; size=49 bbWeight=2 PerfScore 24.00
 G_M13357_IG09:
-       lea      esi, [rcx+0x02]
-       mov      dword ptr [rbx+0x1C], esi
-       mov      rsi, gword ptr [rbx+0x10]
-       cmp      ecx, dword ptr [rsi+0x08]
-       jae      G_M13357_IG27
-       mov      ecx, ecx
-       mov      eax, dword ptr [rbp-0x30]
-       mov      word  ptr [rsi+rcx+0x10], ax
+       lea      edi, [r12+0x02]
+       mov      dword ptr [rbx+0x1C], edi
+       mov      rdi, gword ptr [rbx+0x10]
+       cmp      r12d, dword ptr [rdi+0x08]
+       jae      G_M13357_IG34
+       mov      esi, r12d
+       mov      word  ptr [rdi+rsi+0x10], r13w
        jmp      SHORT G_M13357_IG12
-						;; size=31 bbWeight=2 PerfScore 23.50
+						;; size=33 bbWeight=2 PerfScore 21.50
 G_M13357_IG10:
-       mov      ecx, dword ptr [rbx+0x1C]
-       mov      rsi, gword ptr [rbx+0x10]
-       mov      esi, dword ptr [rsi+0x08]
-       add      esi, -4
-       movsxd   rsi, esi
-       mov      edx, ecx
-       cmp      rsi, rdx
+       mov      r12d, dword ptr [rbx+0x1C]
+       mov      rdi, gword ptr [rbx+0x10]
+       mov      edi, dword ptr [rdi+0x08]
+       add      edi, -4
+       movsxd   rdi, edi
+       mov      esi, r12d
+       cmp      rdi, rsi
        jge      SHORT G_M13357_IG11
        mov      rdi, rbx
        mov      esi, 4
-       mov      rcx, 0xD1FFAB1E      ; code for System.Reflection.Metadata.BlobBuilder:Expand(int):this
-       call     [rcx]System.Reflection.Metadata.BlobBuilder:Expand(int):this
-       xor      ecx, ecx
-						;; size=45 bbWeight=2 PerfScore 24.00
+       mov      r9, 0xD1FFAB1E      ; code for System.Reflection.Metadata.BlobBuilder:Expand(int):this
+       call     [r9]System.Reflection.Metadata.BlobBuilder:Expand(int):this
+       xor      r12d, r12d
+						;; size=49 bbWeight=2 PerfScore 24.00
 G_M13357_IG11:
-       lea      esi, [rcx+0x04]
-       mov      dword ptr [rbx+0x1C], esi
-       mov      rsi, gword ptr [rbx+0x10]
-       cmp      ecx, dword ptr [rsi+0x08]
-       jae      G_M13357_IG27
-       mov      ecx, ecx
-       mov      eax, dword ptr [rbp-0x30]
-       mov      dword ptr [rsi+rcx+0x10], eax
-						;; size=28 bbWeight=2 PerfScore 19.50
+       lea      edi, [r12+0x04]
+       mov      dword ptr [rbx+0x1C], edi
+       mov      rdi, gword ptr [rbx+0x10]
+       cmp      r12d, dword ptr [rdi+0x08]
+       jae      G_M13357_IG34
+       mov      esi, r12d
+       mov      dword ptr [rdi+rsi+0x10], r13d
+						;; size=30 bbWeight=2 PerfScore 17.50
 G_M13357_IG12:
-       movzx    rsi, byte  ptr [r15+0x40]
-       test     esi, esi
-       je       SHORT G_M13357_IG14
-       mov      eax, dword ptr [rbx+0x1C]
-       mov      rsi, gword ptr [rbx+0x10]
-       mov      esi, dword ptr [rsi+0x08]
-       add      esi, -2
-       movsxd   rsi, esi
-       mov      ecx, eax
-       cmp      rsi, rcx
-       jge      SHORT G_M13357_IG13
+       mov      eax, dword ptr [rbp-0x7C]
+       mov      edi, eax
+       and      edi, 0xD1FFAB1E
+       cmp      edi, dword ptr [r14+0x08]
+       jae      G_M13357_IG34
+       and      eax, 0xD1FFAB1E
+       mov      edi, eax
+       mov      r13d, dword ptr [r14+4*rdi+0x10]
+       movzx    rdi, byte  ptr [r15+0x2B]
+       test     edi, edi
+       je       SHORT G_M13357_IG15
+						;; size=42 bbWeight=4 PerfScore 45.00
+G_M13357_IG13:
+       mov      r12d, dword ptr [rbx+0x1C]
+       mov      rdi, gword ptr [rbx+0x10]
+       mov      edi, dword ptr [rdi+0x08]
+       add      edi, -2
+       movsxd   rdi, edi
+       mov      esi, r12d
+       cmp      rdi, rsi
+       jge      SHORT G_M13357_IG14
        mov      rdi, rbx
        mov      esi, 2
        mov      rax, 0xD1FFAB1E      ; code for System.Reflection.Metadata.BlobBuilder:Expand(int):this
        call     [rax]System.Reflection.Metadata.BlobBuilder:Expand(int):this
-       xor      eax, eax
-						;; size=54 bbWeight=2 PerfScore 30.50
-G_M13357_IG13:
-       lea      esi, [rax+0x02]
-       mov      dword ptr [rbx+0x1C], esi
-       mov      rsi, gword ptr [rbx+0x10]
-       cmp      eax, dword ptr [rsi+0x08]
-       jae      G_M13357_IG27
-       mov      eax, eax
-       mov      r8d, dword ptr [rbp-0x44]
-       mov      word  ptr [rsi+rax+0x10], r8w
-       jmp      SHORT G_M13357_IG16
-						;; size=33 bbWeight=2 PerfScore 23.50
+       xor      r12d, r12d
+						;; size=48 bbWeight=2 PerfScore 24.00
 G_M13357_IG14:
-       mov      eax, dword ptr [rbx+0x1C]
-       mov      rsi, gword ptr [rbx+0x10]
-       mov      esi, dword ptr [rsi+0x08]
-       add      esi, -4
-       movsxd   rsi, esi
-       mov      ecx, eax
-       cmp      rsi, rcx
-       jge      SHORT G_M13357_IG15
+       lea      edi, [r12+0x02]
+       mov      dword ptr [rbx+0x1C], edi
+       mov      rdi, gword ptr [rbx+0x10]
+       cmp      r12d, dword ptr [rdi+0x08]
+       jae      G_M13357_IG34
+       mov      esi, r12d
+       mov      word  ptr [rdi+rsi+0x10], r13w
+       jmp      SHORT G_M13357_IG17
+						;; size=33 bbWeight=2 PerfScore 21.50
+G_M13357_IG15:
+       mov      r12d, dword ptr [rbx+0x1C]
+       mov      rdi, gword ptr [rbx+0x10]
+       mov      edi, dword ptr [rdi+0x08]
+       add      edi, -4
+       movsxd   rdi, edi
+       mov      esi, r12d
+       cmp      rdi, rsi
+       jge      SHORT G_M13357_IG16
        mov      rdi, rbx
        mov      esi, 4
        mov      rax, 0xD1FFAB1E      ; code for System.Reflection.Metadata.BlobBuilder:Expand(int):this
        call     [rax]System.Reflection.Metadata.BlobBuilder:Expand(int):this
-       xor      eax, eax
-						;; size=45 bbWeight=2 PerfScore 24.00
-G_M13357_IG15:
-       lea      esi, [rax+0x04]
-       mov      dword ptr [rbx+0x1C], esi
-       mov      rsi, gword ptr [rbx+0x10]
-       cmp      eax, dword ptr [rsi+0x08]
-       jae      G_M13357_IG27
-       mov      eax, eax
-       mov      r8d, dword ptr [rbp-0x44]
-       mov      dword ptr [rsi+rax+0x10], r8d
-						;; size=30 bbWeight=2 PerfScore 19.50
+       xor      r12d, r12d
+						;; size=48 bbWeight=2 PerfScore 24.00
 G_M13357_IG16:
-       movzx    rsi, byte  ptr [r15+0x30]
-       test     esi, esi
-       je       SHORT G_M13357_IG18
-       mov      eax, dword ptr [rbx+0x1C]
-       mov      rsi, gword ptr [rbx+0x10]
-       mov      esi, dword ptr [rsi+0x08]
-       add      esi, -2
-       movsxd   rsi, esi
-       mov      ecx, eax
-       cmp      rsi, rcx
-       jge      SHORT G_M13357_IG17
-       mov      rdi, rbx
-       mov      esi, 2
-       mov      rax, 0xD1FFAB1E      ; code for System.Reflection.Metadata.BlobBuilder:Expand(int):this
-       call     [rax]System.Reflection.Metadata.BlobBuilder:Expand(int):this
-       xor      eax, eax
-						;; size=54 bbWeight=2 PerfScore 30.50
+       lea      edi, [r12+0x04]
+       mov      dword ptr [rbx+0x1C], edi
+       mov      rdi, gword ptr [rbx+0x10]
+       cmp      r12d, dword ptr [rdi+0x08]
+       jae      G_M13357_IG34
+       mov      esi, r12d
+       mov      dword ptr [rdi+rsi+0x10], r13d
+						;; size=30 bbWeight=2 PerfScore 17.50
 G_M13357_IG17:
-       lea      esi, [rax+0x02]
-       mov      dword ptr [rbx+0x1C], esi
-       mov      rsi, gword ptr [rbx+0x10]
-       cmp      eax, dword ptr [rsi+0x08]
-       jae      G_M13357_IG27
-       mov      eax, eax
-       mov      r9d, dword ptr [rbp-0x48]
-       mov      word  ptr [rsi+rax+0x10], r9w
-       jmp      SHORT G_M13357_IG20
-						;; size=33 bbWeight=2 PerfScore 23.50
+       movzx    rdi, byte  ptr [r15+0x40]
+       test     edi, edi
+       je       SHORT G_M13357_IG20
+						;; size=9 bbWeight=4 PerfScore 13.00
 G_M13357_IG18:
-       mov      eax, dword ptr [rbx+0x1C]
-       mov      rsi, gword ptr [rbx+0x10]
-       mov      esi, dword ptr [rsi+0x08]
-       add      esi, -4
-       movsxd   rsi, esi
-       mov      ecx, eax
-       cmp      rsi, rcx
+       mov      r13d, dword ptr [rbx+0x1C]
+       mov      rdi, gword ptr [rbx+0x10]
+       mov      edi, dword ptr [rdi+0x08]
+       add      edi, -2
+       movsxd   rdi, edi
+       mov      esi, r13d
+       cmp      rdi, rsi
        jge      SHORT G_M13357_IG19
        mov      rdi, rbx
-       mov      esi, 4
+       mov      esi, 2
        mov      rax, 0xD1FFAB1E      ; code for System.Reflection.Metadata.BlobBuilder:Expand(int):this
        call     [rax]System.Reflection.Metadata.BlobBuilder:Expand(int):this
-       xor      eax, eax
-						;; size=45 bbWeight=2 PerfScore 24.00
+       xor      r13d, r13d
+						;; size=48 bbWeight=2 PerfScore 24.00
 G_M13357_IG19:
-       lea      esi, [rax+0x04]
-       mov      dword ptr [rbx+0x1C], esi
-       mov      rsi, gword ptr [rbx+0x10]
-       cmp      eax, dword ptr [rsi+0x08]
-       jae      G_M13357_IG27
-       mov      eax, eax
-       mov      r9d, dword ptr [rbp-0x48]
-       mov      dword ptr [rsi+rax+0x10], r9d
-						;; size=30 bbWeight=2 PerfScore 19.50
+       lea      edi, [r13+0x02]
+       mov      dword ptr [rbx+0x1C], edi
+       mov      rdi, gword ptr [rbx+0x10]
+       cmp      r13d, dword ptr [rdi+0x08]
+       jae      G_M13357_IG34
+       mov      esi, r13d
+       mov      ecx, dword ptr [rbp-0x80]
+       mov      word  ptr [rdi+rsi+0x10], cx
+       jmp      SHORT G_M13357_IG22
+						;; size=34 bbWeight=2 PerfScore 23.50
 G_M13357_IG20:
-       movzx    rsi, byte  ptr [r15+0x39]
-       test     esi, esi
-       je       SHORT G_M13357_IG22
-       mov      eax, dword ptr [rbx+0x1C]
-       mov      rsi, gword ptr [rbx+0x10]
-       mov      esi, dword ptr [rsi+0x08]
-       add      esi, -2
-       movsxd   rsi, esi
-       mov      ecx, eax
-       cmp      rsi, rcx
+       mov      r13d, dword ptr [rbx+0x1C]
+       mov      rdi, gword ptr [rbx+0x10]
+       mov      edi, dword ptr [rdi+0x08]
+       add      edi, -4
+       movsxd   rdi, edi
+       mov      esi, r13d
+       cmp      rdi, rsi
        jge      SHORT G_M13357_IG21
        mov      rdi, rbx
-       mov      esi, 2
+       mov      esi, 4
        mov      rax, 0xD1FFAB1E      ; code for System.Reflection.Metadata.BlobBuilder:Expand(int):this
        call     [rax]System.Reflection.Metadata.BlobBuilder:Expand(int):this
-       xor      eax, eax
-						;; size=54 bbWeight=2 PerfScore 30.50
+       xor      r13d, r13d
+						;; size=48 bbWeight=2 PerfScore 24.00
 G_M13357_IG21:
-       lea      esi, [rax+0x02]
-       mov      dword ptr [rbx+0x1C], esi
-       mov      rsi, gword ptr [rbx+0x10]
-       cmp      eax, dword ptr [rsi+0x08]
-       jae      G_M13357_IG27
-       mov      eax, eax
-       mov      r10d, dword ptr [rbp-0x4C]
-       mov      word  ptr [rsi+rax+0x10], r10w
-       mov      edi, dword ptr [rbp-0x34]
-       jmp      SHORT G_M13357_IG24
-						;; size=36 bbWeight=2 PerfScore 25.50
+       lea      edi, [r13+0x04]
+       mov      dword ptr [rbx+0x1C], edi
+       mov      rdi, gword ptr [rbx+0x10]
+       cmp      r13d, dword ptr [rdi+0x08]
+       jae      G_M13357_IG34
+       mov      esi, r13d
+       mov      ecx, dword ptr [rbp-0x80]
+       mov      dword ptr [rdi+rsi+0x10], ecx
+						;; size=31 bbWeight=2 PerfScore 19.50
 G_M13357_IG22:
-       mov      eax, dword ptr [rbx+0x1C]
-       mov      rsi, gword ptr [rbx+0x10]
-       mov      esi, dword ptr [rsi+0x08]
-       add      esi, -4
-       movsxd   rsi, esi
-       mov      ecx, eax
-       cmp      rsi, rcx
-       jge      SHORT G_M13357_IG23
+       movzx    rdi, byte  ptr [r15+0x30]
+       test     edi, edi
+       je       SHORT G_M13357_IG25
+						;; size=9 bbWeight=4 PerfScore 13.00
+G_M13357_IG23:
+       mov      r13d, dword ptr [rbx+0x1C]
+       mov      rdi, gword ptr [rbx+0x10]
+       mov      edi, dword ptr [rdi+0x08]
+       add      edi, -2
+       movsxd   rdi, edi
+       mov      esi, r13d
+       cmp      rdi, rsi
+       jge      SHORT G_M13357_IG24
        mov      rdi, rbx
-       mov      esi, 4
+       mov      esi, 2
        mov      rax, 0xD1FFAB1E      ; code for System.Reflection.Metadata.BlobBuilder:Expand(int):this
        call     [rax]System.Reflection.Metadata.BlobBuilder:Expand(int):this
-       xor      eax, eax
-						;; size=45 bbWeight=2 PerfScore 24.00
-G_M13357_IG23:
-       lea      ecx, [rax+0x04]
-       mov      dword ptr [rbx+0x1C], ecx
-       mov      rcx, gword ptr [rbx+0x10]
-       cmp      eax, dword ptr [rcx+0x08]
-       jae      SHORT G_M13357_IG27
-       mov      eax, eax
-       mov      r10d, dword ptr [rbp-0x4C]
-       mov      dword ptr [rcx+rax+0x10], r10d
-       mov      edi, dword ptr [rbp-0x34]
-						;; size=29 bbWeight=2 PerfScore 21.50
+       xor      r13d, r13d
+						;; size=48 bbWeight=2 PerfScore 24.00
 G_M13357_IG24:
-       mov      esi, dword ptr [r13+0x14]
-       cmp      r12d, esi
-       jne      SHORT G_M13357_IG28
-						;; size=9 bbWeight=8 PerfScore 26.00
+       lea      edi, [r13+0x02]
+       mov      dword ptr [rbx+0x1C], edi
+       mov      rdi, gword ptr [rbx+0x10]
+       cmp      r13d, dword ptr [rdi+0x08]
+       jae      G_M13357_IG34
+       mov      esi, r13d
+       mov      edx, dword ptr [rbp-0x84]
+       mov      word  ptr [rdi+rsi+0x10], dx
+       jmp      SHORT G_M13357_IG27
+						;; size=37 bbWeight=2 PerfScore 23.50
 G_M13357_IG25:
-       mov      esi, dword ptr [r13+0x10]
-       cmp      edi, esi
-       jae      SHORT G_M13357_IG26
-       mov      rsi, gword ptr [r13+0x08]
-       cmp      edi, dword ptr [rsi+0x08]
-       jae      SHORT G_M13357_IG27
-       mov      eax, edi
-       lea      rax, [rax+2*rax]
-       lea      rsi, bword ptr [rsi+8*rax+0x10]
-       mov      eax, dword ptr [rsi]
-       mov      dword ptr [rbp-0x38], eax
-       mov      ecx, dword ptr [rsi+0x04]
-       mov      dword ptr [rbp-0x3C], ecx
-       mov      edx, dword ptr [rsi+0x08]
-       mov      dword ptr [rbp-0x40], edx
-       mov      r8d, dword ptr [rsi+0x0C]
-       mov      dword ptr [rbp-0x44], r8d
-       mov      r9d, dword ptr [rsi+0x10]
-       mov      dword ptr [rbp-0x48], r9d
-       mov      r10d, dword ptr [rsi+0x14]
-       mov      dword ptr [rbp-0x4C], r10d
-       inc      edi
-       mov      dword ptr [rbp-0x34], edi
-       jmp      G_M13357_IG03
-						;; size=79 bbWeight=4 PerfScore 129.00
+       mov      r13d, dword ptr [rbx+0x1C]
+       mov      rdi, gword ptr [rbx+0x10]
+       mov      edi, dword ptr [rdi+0x08]
+       add      edi, -4
+       movsxd   rdi, edi
+       mov      esi, r13d
+       cmp      rdi, rsi
+       jge      SHORT G_M13357_IG26
+       mov      rdi, rbx
+       mov      esi, 4
+       mov      rax, 0xD1FFAB1E      ; code for System.Reflection.Metadata.BlobBuilder:Expand(int):this
+       call     [rax]System.Reflection.Metadata.BlobBuilder:Expand(int):this
+       xor      r13d, r13d
+						;; size=48 bbWeight=2 PerfScore 24.00
 G_M13357_IG26:
-       add      rsp, 40
+       lea      edi, [r13+0x04]
+       mov      dword ptr [rbx+0x1C], edi
+       mov      rdi, gword ptr [rbx+0x10]
+       cmp      r13d, dword ptr [rdi+0x08]
+       jae      G_M13357_IG34
+       mov      esi, r13d
+       mov      edx, dword ptr [rbp-0x84]
+       mov      dword ptr [rdi+rsi+0x10], edx
+						;; size=34 bbWeight=2 PerfScore 19.50
+G_M13357_IG27:
+       movzx    rdi, byte  ptr [r15+0x39]
+       test     edi, edi
+       je       SHORT G_M13357_IG30
+						;; size=9 bbWeight=4 PerfScore 13.00
+G_M13357_IG28:
+       mov      r13d, dword ptr [rbx+0x1C]
+       mov      rdi, gword ptr [rbx+0x10]
+       mov      edi, dword ptr [rdi+0x08]
+       add      edi, -2
+       movsxd   rdi, edi
+       mov      esi, r13d
+       cmp      rdi, rsi
+       jge      SHORT G_M13357_IG29
+       mov      rdi, rbx
+       mov      esi, 2
+       mov      rax, 0xD1FFAB1E      ; code for System.Reflection.Metadata.BlobBuilder:Expand(int):this
+       call     [rax]System.Reflection.Metadata.BlobBuilder:Expand(int):this
+       xor      r13d, r13d
+						;; size=48 bbWeight=2 PerfScore 24.00
+G_M13357_IG29:
+       lea      edi, [r13+0x02]
+       mov      dword ptr [rbx+0x1C], edi
+       mov      rdi, gword ptr [rbx+0x10]
+       cmp      r13d, dword ptr [rdi+0x08]
+       jae      G_M13357_IG34
+       mov      esi, r13d
+       mov      r8d, dword ptr [rbp-0x88]
+       mov      word  ptr [rdi+rsi+0x10], r8w
+       jmp      SHORT G_M13357_IG32
+						;; size=39 bbWeight=2 PerfScore 23.50
+G_M13357_IG30:
+       mov      r13d, dword ptr [rbx+0x1C]
+       mov      rdi, gword ptr [rbx+0x10]
+       mov      edi, dword ptr [rdi+0x08]
+       add      edi, -4
+       movsxd   rdi, edi
+       mov      esi, r13d
+       cmp      rdi, rsi
+       jge      SHORT G_M13357_IG31
+       mov      rdi, rbx
+       mov      esi, 4
+       mov      rax, 0xD1FFAB1E      ; code for System.Reflection.Metadata.BlobBuilder:Expand(int):this
+       call     [rax]System.Reflection.Metadata.BlobBuilder:Expand(int):this
+       xor      r13d, r13d
+						;; size=48 bbWeight=2 PerfScore 24.00
+G_M13357_IG31:
+       lea      edi, [r13+0x04]
+       mov      dword ptr [rbx+0x1C], edi
+       mov      rdi, gword ptr [rbx+0x10]
+       cmp      r13d, dword ptr [rdi+0x08]
+       jae      SHORT G_M13357_IG34
+       mov      eax, r13d
+       mov      r8d, dword ptr [rbp-0x88]
+       mov      dword ptr [rdi+rax+0x10], r8d
+						;; size=32 bbWeight=2 PerfScore 19.50
+G_M13357_IG32:
+       lea      rdi, [rbp-0x50]
+       mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1+Enumerator[System.Reflection.Metadata.Ecma335.MetadataBuilder+TypeDefRow]:MoveNext():ubyte:this
+       call     [rax]System.Collections.Generic.List`1+Enumerator[System.Reflection.Metadata.Ecma335.MetadataBuilder+TypeDefRow]:MoveNext():ubyte:this
+       test     eax, eax
+       jne      G_M13357_IG05
+						;; size=24 bbWeight=4 PerfScore 20.00
+G_M13357_IG33:
+       vzeroupper 
+       add      rsp, 104
        pop      rbx
        pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
-						;; size=15 bbWeight=4 PerfScore 17.00
-G_M13357_IG27:
+						;; size=18 bbWeight=1 PerfScore 5.25
+G_M13357_IG34:
        call     CORINFO_HELP_RNGCHKFAIL
        int3     
 						;; size=6 bbWeight=0 PerfScore 0.00
-G_M13357_IG28:
-       mov      rax, 0xD1FFAB1E      ; code for System.ThrowHelper:ThrowInvalidOperationException_InvalidOperation_EnumFailedVersion()
-       call     [rax]System.ThrowHelper:ThrowInvalidOperationException_InvalidOperation_EnumFailedVersion()
-       int3     
-						;; size=13 bbWeight=0 PerfScore 0.00
 
-; Total bytes of code 1129, prolog size 28, PerfScore 756.75, instruction count 326, allocated bytes for code 1129 (MethodHash=ef4bcbd2) for method System.Reflection.Metadata.Ecma335.MetadataBuilder:SerializeTypeDefTable(System.Reflection.Metadata.BlobBuilder,System.Collections.Immutable.ImmutableArray`1[int],System.Reflection.Metadata.Ecma335.MetadataSizes):this (FullOpts)
+; Total bytes of code 1204, prolog size 38, PerfScore 742.58, instruction count 317, allocated bytes for code 1204 (MethodHash=ef4bcbd2) for method System.Reflection.Metadata.Ecma335.MetadataBuilder:SerializeTypeDefTable(System.Reflection.Metadata.BlobBuilder,System.Collections.Immutable.ImmutableArray`1[int],System.Reflection.Metadata.Ecma335.MetadataSizes):this (FullOpts)
72 (9.80 % of base) - System.Text.RegularExpressions.Symbolic.SymbolicRegexMatcher`1[double]:CreateNewCapturingTransition(int,int,int):System.ValueTuple`2[int,System.Text.RegularExpressions.Symbolic.DerivativeEffect[]][]:this
 ; Assembly listing for method System.Text.RegularExpressions.Symbolic.SymbolicRegexMatcher`1[double]:CreateNewCapturingTransition(int,int,int):System.ValueTuple`2[int,System.Text.RegularExpressions.Symbolic.DerivativeEffect[]][]:this (FullOpts)
 ; Emitting BLENDED_CODE for X64 with AVX - Unix
 ; FullOpts code
 ; optimized code
 ; rbp based frame
 ; fully interruptible
 ; No PGO data
-; 0 inlinees with PGO data; 10 single block inlinees; 5 inlinees without PGO data
+; 0 inlinees with PGO data; 10 single block inlinees; 3 inlinees without PGO data
 ; Final local variable assignments
 ;
-;  V00 this         [V00,T05] ( 14, 13.50)     ref  ->  [rbp-0x40]  this class-hnd EH-live single-def <System.Text.RegularExpressions.Symbolic.SymbolicRegexMatcher`1[double]>
-;  V01 arg1         [V01,T21] (  4,  3   )     int  ->  r14         single-def
-;  V02 arg2         [V02,T18] (  6,  4   )     int  ->  r15         single-def
-;  V03 arg3         [V03,T07] (  6, 12   )     int  ->  rbx         single-def
-;* V04 loc0         [V04,T38] (  0,  0   )     ref  ->  zero-ref    class-hnd exact EH-live single-def <System.Text.RegularExpressions.Symbolic.SymbolicRegexMatcher`1[double]>
+;  V00 this         [V00,T02] ( 14, 12.50)     ref  ->  [rbp-0x78]  this class-hnd EH-live single-def <System.Text.RegularExpressions.Symbolic.SymbolicRegexMatcher`1[double]>
+;  V01 arg1         [V01,T14] (  4,  3   )     int  ->  r14         single-def
+;  V02 arg2         [V02,T10] (  6,  4   )     int  ->  r15         single-def
+;  V03 arg3         [V03,T06] (  6,  6   )     int  ->  rbx         single-def
+;* V04 loc0         [V04,T32] (  0,  0   )     ref  ->  zero-ref    class-hnd exact EH-live single-def <System.Text.RegularExpressions.Symbolic.SymbolicRegexMatcher`1[double]>
 ;  V05 loc1         [V05    ] (  5,  4   )   ubyte  ->  [rbp-0x30]  do-not-enreg[X] addr-exposed ld-addr-op
-;  V06 loc2         [V06,T13] (  5, 11   )     ref  ->  r13         class-hnd <System.ValueTuple`2[int,System.Text.RegularExpressions.Symbolic.DerivativeEffect[]][]>
-;  V07 loc3         [V07,T33] (  2,  1   )     ref  ->  rdx         class-hnd exact single-def <System.Text.RegularExpressions.Symbolic.MatchingState`1[double]>
+;  V06 loc2         [V06,T13] (  5,  5   )     ref  ->  r13         class-hnd <System.ValueTuple`2[int,System.Text.RegularExpressions.Symbolic.DerivativeEffect[]][]>
+;  V07 loc3         [V07,T26] (  2,  1   )     ref  ->  rdx         class-hnd exact single-def <System.Text.RegularExpressions.Symbolic.MatchingState`1[double]>
 ;* V08 loc4         [V08    ] (  0,  0   )  double  ->  zero-ref   
-;  V09 loc5         [V09,T29] (  3,  3   )     int  ->  r13        
-;  V10 loc6         [V10,T31] (  3,  1.50)     ref  ->  r15         class-hnd single-def <System.Collections.Generic.List`1[System.ValueTuple`2[System.Text.RegularExpressions.Symbolic.SymbolicRegexNode`1[double],System.Text.RegularExpressions.Symbolic.DerivativeEffect[]]]>
-;  V11 loc7         [V11,T14] (  3,  6.50)     ref  ->  r14         class-hnd exact single-def <System.Collections.Generic.List`1[System.ValueTuple`2[int,System.Text.RegularExpressions.Symbolic.DerivativeEffect[]]]>
-;* V12 loc8         [V12    ] (  0,  0   )  struct (32) zero-ref    do-not-enreg[SF] ld-addr-op <System.Collections.Generic.List`1+Enumerator[System.ValueTuple`2[System.Text.RegularExpressions.Symbolic.SymbolicRegexNode`1[double],System.Text.RegularExpressions.Symbolic.DerivativeEffect[]]]>
+;  V09 loc5         [V09,T15] (  3,  5   )     int  ->  r13        
+;  V10 loc6         [V10,T24] (  3,  1.50)     ref  ->  r15         class-hnd single-def <System.Collections.Generic.List`1[System.ValueTuple`2[System.Text.RegularExpressions.Symbolic.SymbolicRegexNode`1[double],System.Text.RegularExpressions.Symbolic.DerivativeEffect[]]]>
+;  V11 loc7         [V11,T05] (  3,  5.50)     ref  ->  r14         class-hnd exact single-def <System.Collections.Generic.List`1[System.ValueTuple`2[int,System.Text.RegularExpressions.Symbolic.DerivativeEffect[]]]>
+;  V12 loc8         [V12    ] (  8, 14.50)  struct (32) [rbp-0x50]  do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Collections.Generic.List`1+Enumerator[System.ValueTuple`2[System.Text.RegularExpressions.Symbolic.SymbolicRegexNode`1[double],System.Text.RegularExpressions.Symbolic.DerivativeEffect[]]]>
 ;* V13 loc9         [V13    ] (  0,  0   )  struct (16) zero-ref    <System.ValueTuple`2[System.Text.RegularExpressions.Symbolic.SymbolicRegexNode`1[double],System.Text.RegularExpressions.Symbolic.DerivativeEffect[]]>
 ;* V14 loc10        [V14    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact single-def <System.ValueTuple`2[int,System.Text.RegularExpressions.Symbolic.DerivativeEffect[]][]>
 ;  V15 OutArgs      [V15    ] (  1,  1   )  struct ( 8) [rsp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-;  V16 tmp1         [V16,T25] (  3,  3   )     ref  ->  r14         class-hnd exact single-def "NewObj constructor temp" <System.Collections.Generic.List`1[System.ValueTuple`2[int,System.Text.RegularExpressions.Symbolic.DerivativeEffect[]]]>
+;  V16 tmp1         [V16,T18] (  3,  3   )     ref  ->  r14         class-hnd exact single-def "NewObj constructor temp" <System.Collections.Generic.List`1[System.ValueTuple`2[int,System.Text.RegularExpressions.Symbolic.DerivativeEffect[]]]>
 ;* V17 tmp2         [V17    ] (  0,  0   )  struct (16) zero-ref    multireg-arg ld-addr-op "NewObj constructor temp" <System.ValueTuple`2[System.Collections.Generic.List`1[System.ValueTuple`2[int,System.Text.RegularExpressions.Symbolic.DerivativeEffect[]]],System.Text.RegularExpressions.Symbolic.DerivativeEffect[]]>
-;  V18 tmp3         [V18,T06] (  2, 16   )     ref  ->  rax         class-hnd "dup spill" <System.Action`2[int,System.ValueTuple`2[System.Collections.Generic.List`1[System.ValueTuple`2[int,System.Text.RegularExpressions.Symbolic.DerivativeEffect[]]],System.Text.RegularExpressions.Symbolic.DerivativeEffect[]]]>
+;  V18 tmp3         [V18,T01] (  2, 16   )     ref  ->  rcx         class-hnd "dup spill" <System.Action`2[int,System.ValueTuple`2[System.Collections.Generic.List`1[System.ValueTuple`2[int,System.Text.RegularExpressions.Symbolic.DerivativeEffect[]]],System.Text.RegularExpressions.Symbolic.DerivativeEffect[]]]>
 ;* V19 tmp4         [V19    ] (  0,  0   )  struct (16) zero-ref    "impAppendStmt" <System.ValueTuple`2[System.Collections.Generic.List`1[System.ValueTuple`2[int,System.Text.RegularExpressions.Symbolic.DerivativeEffect[]]],System.Text.RegularExpressions.Symbolic.DerivativeEffect[]]>
 ;* V20 tmp5         [V20    ] (  0,  0   )     ref  ->  zero-ref   
 ;* V21 tmp6         [V21    ] (  0,  0   )     ref  ->  zero-ref   
 ;* V22 tmp7         [V22    ] (  0,  0   )     int  ->  zero-ref   
 ;* V23 tmp8         [V23    ] (  0,  0   )  struct (16) zero-ref    <System.ValueTuple`2[System.Collections.Generic.List`1[System.ValueTuple`2[int,System.Text.RegularExpressions.Symbolic.DerivativeEffect[]]],System.Text.RegularExpressions.Symbolic.DerivativeEffect[]]>
-;  V24 tmp9         [V24,T09] (  4, 12   )     ref  ->  rax        
-;  V25 tmp10        [V25,T04] (  5, 20   )     ref  ->  [rbp-0x48]  class-hnd exact spill-single-def "NewObj constructor temp" <System.Action`2[int,System.ValueTuple`2[System.Collections.Generic.List`1[System.ValueTuple`2[int,System.Text.RegularExpressions.Symbolic.DerivativeEffect[]]],System.Text.RegularExpressions.Symbolic.DerivativeEffect[]]]>
+;  V24 tmp9         [V24,T03] (  4, 14   )     ref  ->  rcx        
+;  V25 tmp10        [V25,T00] (  5, 20   )     ref  ->  [rbp-0x80]  class-hnd exact spill-single-def "NewObj constructor temp" <System.Action`2[int,System.ValueTuple`2[System.Collections.Generic.List`1[System.ValueTuple`2[int,System.Text.RegularExpressions.Symbolic.DerivativeEffect[]]],System.Text.RegularExpressions.Symbolic.DerivativeEffect[]]]>
 ;* V26 tmp11        [V26    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inline return value spill temp" <System.Text.RegularExpressions.Symbolic.MatchingState`1[double]>
-;  V27 tmp12        [V27,T30] (  3,  3   )     int  ->  rsi         "Inlining Arg"
+;  V27 tmp12        [V27,T22] (  3,  3   )     int  ->  rsi         "Inlining Arg"
 ;* V28 tmp13        [V28    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inline stloc first use temp" <System.Text.RegularExpressions.Symbolic.MatchingState`1[double]>
-;  V29 tmp14        [V29,T37] (  3,  1.50)  double  ->  mm0         "Inline return value spill temp"
-;  V30 tmp15        [V30,T32] (  3,  1.50)     ref  ->  rsi         class-hnd single-def "Inline stloc first use temp" <double[]>
-;* V31 tmp16        [V31    ] (  0,  0   )  struct (32) zero-ref    do-not-enreg[SF] ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.ValueTuple`2[System.Text.RegularExpressions.Symbolic.SymbolicRegexNode`1[double],System.Text.RegularExpressions.Symbolic.DerivativeEffect[]]]>
+;  V29 tmp14        [V29,T31] (  3,  1.50)  double  ->  mm0         "Inline return value spill temp"
+;  V30 tmp15        [V30,T25] (  3,  1.50)     ref  ->  rsi         class-hnd single-def "Inline stloc first use temp" <double[]>
+;  V31 tmp16        [V31,T23] (  2,  2   )  struct (32) [rbp-0x70]  do-not-enreg[SF] must-init ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.ValueTuple`2[System.Text.RegularExpressions.Symbolic.SymbolicRegexNode`1[double],System.Text.RegularExpressions.Symbolic.DerivativeEffect[]]]>
 ;* V32 tmp17        [V32    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <System.__Canon>
-;  V33 tmp18        [V33,T10] (  3, 12   )     ref  ->  rsi         class-hnd exact "Inlining Arg" <System.Text.RegularExpressions.Symbolic.SymbolicRegexMatcher`1+<>c[double]>
-;* V34 tmp19        [V34,T16] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;* V35 tmp20        [V35    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline stloc first use temp" <System.Collections.Generic.List`1[System.ValueTuple`2[System.Text.RegularExpressions.Symbolic.SymbolicRegexNode`1[double],System.Text.RegularExpressions.Symbolic.DerivativeEffect[]]]>
-;* V36 tmp21        [V36    ] (  0,  0   )     ref  ->  zero-ref    "field V13.Item1 (fldOffset=0x0)" P-INDEP
-;* V37 tmp22        [V37    ] (  0,  0   )     ref  ->  zero-ref    "field V13.Item2 (fldOffset=0x8)" P-INDEP
-;* V38 tmp23        [V38,T23] (  0,  0   )     ref  ->  zero-ref    "field V17.Item1 (fldOffset=0x0)" P-INDEP
-;  V39 tmp24        [V39,T20] (  2,  6   )     ref  ->  [rbp-0x50]  spill-single-def "field V17.Item2 (fldOffset=0x8)" P-INDEP
-;* V40 tmp25        [V40    ] (  0,  0   )     ref  ->  zero-ref    "field V19.Item1 (fldOffset=0x0)" P-INDEP
-;* V41 tmp26        [V41    ] (  0,  0   )     ref  ->  zero-ref    "field V19.Item2 (fldOffset=0x8)" P-INDEP
-;* V42 tmp27        [V42    ] (  0,  0   )     ref  ->  zero-ref    "field V23.Item1 (fldOffset=0x0)" P-INDEP
-;* V43 tmp28        [V43    ] (  0,  0   )     ref  ->  zero-ref    "field V23.Item2 (fldOffset=0x8)" P-INDEP
-;  V44 tmp29        [V44,T08] (  4, 12.50)     ref  ->  r15         single-def "V12.[000..008)"
-;  V45 tmp30        [V45,T00] (  6, 20.50)     int  ->  [rbp-0x34]  "V12.[008..012)"
-;  V46 tmp31        [V46,T22] (  2,  4.50)     int  ->  r12         "V12.[012..016)"
-;  V47 tmp32        [V47,T15] (  2,  6   )     ref  ->  [rbp-0x58]  spill-single-def "V12.[016..024)"
-;  V48 tmp33        [V48,T11] (  2,  8   )     ref  ->  rcx         "V12.[024..032)"
-;* V49 tmp34        [V49    ] (  0,  0   )     ref  ->  zero-ref    single-def "V31.[000..008)"
-;* V50 tmp35        [V50    ] (  0,  0   )     int  ->  zero-ref    "V31.[008..012)"
-;  V51 tmp36        [V51,T34] (  2,  1   )     int  ->  r12         "V31.[012..016)"
-;* V52 tmp37        [V52    ] (  0,  0   )     ref  ->  zero-ref    single-def "V31.[016..024)"
-;* V53 tmp38        [V53    ] (  0,  0   )     ref  ->  zero-ref    single-def "V31.[024..032)"
-;  V54 tmp39        [V54,T01] (  3, 24   )   byref  ->  rsi         "Spilling address for field-by-field copy"
-;  V55 tmp40        [V55,T19] (  3,  6   )     ref  ->  rsi         single-def "arr expr"
-;  V56 tmp41        [V56,T26] (  3,  3   )     ref  ->  rsi         single-def "arr expr"
-;  V57 tmp42        [V57,T27] (  3,  3   )     ref  ->  rdx         single-def "arr expr"
-;  V58 tmp43        [V58,T28] (  3,  3   )     ref  ->  rsi         single-def "arr expr"
-;  V59 tmp44        [V59,T02] (  3, 24   )     ref  ->  rsi         "arr expr"
-;  V60 tmp45        [V60,T03] (  3, 24   )     ref  ->  rsi         single-def "arr expr"
-;  V61 PSPSym       [V61,T36] (  1,  1   )    long  ->  [rbp-0x68]  do-not-enreg[V] "PSPSym"
-;* V62 cse0         [V62,T24] (  0,  0   )    long  ->  zero-ref    "CSE #04: moderate"
-;  V63 cse1         [V63,T35] (  2,  1   )     int  ->  rax         "CSE #01: conservative"
-;  V64 cse2         [V64,T17] (  2,  8   )     int  ->  rsi         "CSE #06: moderate"
-;  V65 cse3         [V65,T12] (  2,  8   )     int  ->  rsi         "CSE #07: moderate"
+;  V33 tmp18        [V33,T04] (  3, 12   )     ref  ->  rsi         class-hnd exact "Inlining Arg" <System.Text.RegularExpressions.Symbolic.SymbolicRegexMatcher`1+<>c[double]>
+;  V34 tmp19        [V34,T07] (  2,  8   )     ref  ->  r12         "field V13.Item1 (fldOffset=0x0)" P-INDEP
+;  V35 tmp20        [V35,T08] (  2,  8   )     ref  ->  rax         "field V13.Item2 (fldOffset=0x8)" P-INDEP
+;* V36 tmp21        [V36,T17] (  0,  0   )     ref  ->  zero-ref    "field V17.Item1 (fldOffset=0x0)" P-INDEP
+;  V37 tmp22        [V37,T09] (  2,  8   )     ref  ->  [rbp-0x88]  spill-single-def "field V17.Item2 (fldOffset=0x8)" P-INDEP
+;* V38 tmp23        [V38    ] (  0,  0   )     ref  ->  zero-ref    "field V19.Item1 (fldOffset=0x0)" P-INDEP
+;* V39 tmp24        [V39    ] (  0,  0   )     ref  ->  zero-ref    "field V19.Item2 (fldOffset=0x8)" P-INDEP
+;* V40 tmp25        [V40    ] (  0,  0   )     ref  ->  zero-ref    "field V23.Item1 (fldOffset=0x0)" P-INDEP
+;* V41 tmp26        [V41    ] (  0,  0   )     ref  ->  zero-ref    "field V23.Item2 (fldOffset=0x8)" P-INDEP
+;* V42 tmp27        [V42    ] (  0,  0   )     ref  ->  zero-ref    single-def "V31.[000..008)"
+;* V43 tmp28        [V43    ] (  0,  0   )     int  ->  zero-ref    "V31.[008..012)"
+;  V44 tmp29        [V44,T27] (  2,  1   )     int  ->  rdi         "V31.[012..016)"
+;  V45 tmp30        [V45,T11] (  3,  6   )     ref  ->  rsi         single-def "arr expr"
+;  V46 tmp31        [V46,T19] (  3,  3   )     ref  ->  rsi         single-def "arr expr"
+;  V47 tmp32        [V47,T20] (  3,  3   )     ref  ->  rdx         single-def "arr expr"
+;  V48 tmp33        [V48,T21] (  3,  3   )     ref  ->  rsi         single-def "arr expr"
+;  V49 tmp34        [V49,T12] (  3,  6   )     ref  ->  rsi         single-def "arr expr"
+;  V50 PSPSym       [V50,T29] (  1,  1   )    long  ->  [rbp-0x98]  do-not-enreg[V] "PSPSym"
+;* V51 cse0         [V51,T30] (  0,  0   )    long  ->  zero-ref    hoist "CSE #04: moderate"
+;  V52 cse1         [V52,T28] (  2,  1   )     int  ->  rax         "CSE #01: conservative"
+;  V53 cse2         [V53,T16] (  3,  5   )    long  ->  r15         "CSE #06: moderate"
 ;
-; Lcl frame size = 72
+; Lcl frame size = 120
 
 G_M28770_IG01:
        push     rbp
        push     r15
        push     r14
        push     r13
        push     r12
        push     rbx
-       sub      rsp, 72
-       lea      rbp, [rsp+0x70]
-       mov      qword ptr [rbp-0x68], rsp
-       mov      gword ptr [rbp-0x40], rdi
+       sub      rsp, 120
+       lea      rbp, [rsp+0xA0]
+       vxorps   xmm8, xmm8, xmm8
+       vmovdqu  ymmword ptr [rbp-0x70], ymm8
+       vmovdqu  ymmword ptr [rbp-0x50], ymm8
+       mov      qword ptr [rbp-0x98], rsp
+       mov      gword ptr [rbp-0x78], rdi
        mov      r14d, esi
        mov      r15d, edx
        mov      ebx, ecx
-						;; size=35 bbWeight=1 PerfScore 9.50
+						;; size=56 bbWeight=1 PerfScore 13.83
 G_M28770_IG02:
        xor      esi, esi
        mov      dword ptr [rbp-0x30], esi
 						;; size=5 bbWeight=1 PerfScore 1.25
 G_M28770_IG03:
        cmp      byte  ptr [rbp-0x30], 0
-       jne      G_M28770_IG10
+       jne      G_M28770_IG17
        lea      rsi, [rbp-0x30]
        call     System.Threading.Monitor:ReliableEnter(System.Object,byref)
-       mov      rdi, gword ptr [rbp-0x40]
+       mov      rdi, gword ptr [rbp-0x78]
        mov      rsi, gword ptr [rdi+0x40]
        cmp      ebx, dword ptr [rsi+0x08]
-       jae      G_M28770_IG12
+       jae      G_M28770_IG16
        mov      edx, ebx
        mov      r13, gword ptr [rsi+8*rdx+0x10]
        test     r13, r13
-       jne      G_M28770_IG15
+       jne      G_M28770_IG19
 						;; size=52 bbWeight=1 PerfScore 15.00
 G_M28770_IG04:
        mov      rsi, gword ptr [rdi+0x28]
        cmp      r14d, dword ptr [rsi+0x08]
-       jae      G_M28770_IG12
+       jae      G_M28770_IG16
        mov      edx, r14d
        mov      esi, dword ptr [rsi+4*rdx+0x10]
        mov      rdx, gword ptr [rdi+0x10]
        cmp      esi, dword ptr [rdx+0x08]
-       jae      G_M28770_IG12
+       jae      G_M28770_IG16
        mov      rdx, gword ptr [rdx+8*rsi+0x10]
        mov      rsi, gword ptr [rdi+0x90]
        mov      eax, dword ptr [rsi+0x08]
        cmp      eax, r15d
-       ja       G_M28770_IG06
+       ja       G_M28770_IG08
        mov      rsi, gword ptr [rdi+0x48]
        vmovsd   xmm0, qword ptr [rsi+0xB0]
 						;; size=70 bbWeight=0.50 PerfScore 13.75
 G_M28770_IG05:
        mov      rsi, gword ptr [rdi+0x98]
        lea      eax, [r15+0x01]
        cmp      eax, dword ptr [rsi+0x08]
-       jae      G_M28770_IG12
+       jae      G_M28770_IG16
        inc      r15d
        mov      eax, r15d
        mov      r13d, dword ptr [rsi+4*rax+0x10]
        mov      rsi, gword ptr [rdi+0x48]
        mov      rdi, rdx
        mov      edx, r13d
        mov      rax, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.Symbolic.MatchingState`1[double]:NfaNextWithEffects(System.Text.RegularExpressions.Symbolic.SymbolicRegexBuilder`1[double],double,uint):System.Collections.Generic.List`1[System.ValueTuple`2[System.Text.RegularExpressions.Symbolic.SymbolicRegexNode`1[double],System.Text.RegularExpressions.Symbolic.DerivativeEffect[]]]:this
        cmp      dword ptr [rdi], edi
        call     [rax]System.Text.RegularExpressions.Symbolic.MatchingState`1[double]:NfaNextWithEffects(System.Text.RegularExpressions.Symbolic.SymbolicRegexBuilder`1[double],double,uint):System.Collections.Generic.List`1[System.ValueTuple`2[System.Text.RegularExpressions.Symbolic.SymbolicRegexNode`1[double],System.Text.RegularExpressions.Symbolic.DerivativeEffect[]]]:this
        mov      r15, rax
        mov      rdi, 0xD1FFAB1E      ; System.Collections.Generic.List`1[System.ValueTuple`2[int,System.Text.RegularExpressions.Symbolic.DerivativeEffect[]]]
        call     CORINFO_HELP_NEWSFAST
        mov      r14, rax
        mov      rdi, 0xD1FFAB1E
        mov      esi, 136
        call     CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
        mov      rdi, 0xD1FFAB1E      ; data for System.Collections.Generic.List`1[System.ValueTuple`2[int,System.Text.RegularExpressions.Symbolic.DerivativeEffect[]]]:s_emptyArray
        mov      rsi, gword ptr [rdi]
        lea      rdi, bword ptr [r14+0x08]
        call     CORINFO_HELP_ASSIGN_REF
-       mov      r12d, dword ptr [r15+0x14]
-       xor      edi, edi
-       jmp      SHORT G_M28770_IG07
-						;; size=126 bbWeight=0.50 PerfScore 14.50
+       mov      edi, dword ptr [r15+0x14]
+       vxorps   xmm0, xmm0, xmm0
+       vmovdqu  xmmword ptr [rbp-0x60], xmm0
+						;; size=131 bbWeight=0.50 PerfScore 14.04
 G_M28770_IG06:
+       vmovdqu  ymm0, ymmword ptr [rbp-0x70]
+       vmovdqu  ymmword ptr [rbp-0x50], ymm0
+						;; size=10 bbWeight=0.50 PerfScore 2.50
+G_M28770_IG07:
+       mov      gword ptr [rbp-0x50], r15
+       xor      esi, esi
+       mov      dword ptr [rbp-0x48], esi
+       mov      dword ptr [rbp-0x44], edi
+       jmp      SHORT G_M28770_IG09
+						;; size=14 bbWeight=0.50 PerfScore 2.62
+G_M28770_IG08:
        mov      eax, r15d
        vmovsd   xmm0, qword ptr [rsi+8*rax+0x10]
        jmp      G_M28770_IG05
 						;; size=14 bbWeight=0.50 PerfScore 3.12
-G_M28770_IG07:
-       mov      esi, dword ptr [r15+0x14]
-       cmp      r12d, esi
-       jne      G_M28770_IG13
-       mov      esi, dword ptr [r15+0x10]
-       cmp      edi, esi
-       jae      G_M28770_IG11
-       mov      rsi, gword ptr [r15+0x08]
-       cmp      edi, dword ptr [rsi+0x08]
-       jae      G_M28770_IG12
-       mov      eax, edi
-       shl      rax, 4
-       lea      rsi, bword ptr [rsi+rax+0x10]
-       mov      rax, gword ptr [rsi]
-       mov      gword ptr [rbp-0x58], rax
-       mov      rcx, gword ptr [rsi+0x08]
-       inc      edi
-       mov      dword ptr [rbp-0x34], edi
-       mov      gword ptr [rbp-0x50], rcx
+G_M28770_IG09:
+       lea      rdi, [rbp-0x50]
+       mov      r15, 0xD1FFAB1E      ; System.Collections.Generic.List`1+Enumerator[System.ValueTuple`2[System.Text.RegularExpressions.Symbolic.SymbolicRegexNode`1[double],System.Text.RegularExpressions.Symbolic.DerivativeEffect[]]]
+       mov      rsi, r15
+       mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1+Enumerator[System.ValueTuple`2[System.__Canon,System.__Canon]]:MoveNext():ubyte:this
+       call     [rax]System.Collections.Generic.List`1+Enumerator[System.ValueTuple`2[System.__Canon,System.__Canon]]:MoveNext():ubyte:this
+       test     eax, eax
+       je       G_M28770_IG14
+						;; size=37 bbWeight=0.50 PerfScore 2.75
+G_M28770_IG10:
        mov      rdi, 0xD1FFAB1E
        mov      esi, 156
        call     CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
+						;; size=20 bbWeight=0.25 PerfScore 0.38
+G_M28770_IG11:
+       mov      r12, gword ptr [rbp-0x40]
+       mov      rax, gword ptr [rbp-0x38]
+       mov      gword ptr [rbp-0x88], rax
        mov      rdi, 0xD1FFAB1E      ; data for System.Text.RegularExpressions.Symbolic.SymbolicRegexMatcher`1+<>c[double]:<>9__21_0
-       mov      rax, gword ptr [rdi]
-       test     rax, rax
-       jne      SHORT G_M28770_IG09
-						;; size=107 bbWeight=4 PerfScore 106.00
-G_M28770_IG08:
+       mov      rcx, gword ptr [rdi]
+       test     rcx, rcx
+       jne      G_M28770_IG15
+						;; size=37 bbWeight=4 PerfScore 26.00
+G_M28770_IG12:
        mov      rdi, 0xD1FFAB1E      ; System.Action`2[int,System.ValueTuple`2[System.Collections.Generic.List`1[System.ValueTuple`2[int,System.Text.RegularExpressions.Symbolic.DerivativeEffect[]]],System.Text.RegularExpressions.Symbolic.DerivativeEffect[]]]
        call     CORINFO_HELP_NEWSFAST
-       mov      gword ptr [rbp-0x48], rax
+       mov      rcx, rax
+       mov      gword ptr [rbp-0x80], rcx
        mov      rdi, 0xD1FFAB1E      ; data for System.Text.RegularExpressions.Symbolic.SymbolicRegexMatcher`1+<>c[double]:<>9
        mov      rsi, gword ptr [rdi]
        test     rsi, rsi
-       je       G_M28770_IG14
-       lea      rdi, bword ptr [rax+0x08]
+       je       G_M28770_IG18
+       lea      rdi, bword ptr [rcx+0x08]
        call     CORINFO_HELP_ASSIGN_REF
        mov      rdi, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.Symbolic.SymbolicRegexMatcher`1+<>c[double]:<CreateNewCapturingTransition>b__21_0(int,System.ValueTuple`2[System.Collections.Generic.List`1[System.ValueTuple`2[int,System.Text.RegularExpressions.Symbolic.DerivativeEffect[]]],System.Text.RegularExpressions.Symbolic.DerivativeEffect[]]):this
-       mov      rax, gword ptr [rbp-0x48]
-       mov      qword ptr [rax+0x18], rdi
+       mov      rcx, gword ptr [rbp-0x80]
+       mov      qword ptr [rcx+0x18], rdi
        mov      rdi, 0xD1FFAB1E      ; data for System.Text.RegularExpressions.Symbolic.SymbolicRegexMatcher`1+<>c[double]:<>9__21_0
-       mov      rsi, rax
+       mov      rsi, rcx
        call     CORINFO_HELP_ASSIGN_REF
-       mov      rax, gword ptr [rbp-0x48]
-						;; size=90 bbWeight=2 PerfScore 24.00
-G_M28770_IG09:
-       mov      gword ptr [rsp], rax
+       mov      rcx, gword ptr [rbp-0x80]
+       mov      rax, gword ptr [rbp-0x88]
+						;; size=100 bbWeight=2 PerfScore 26.50
+G_M28770_IG13:
+       mov      gword ptr [rsp], rcx
        mov      r8, r14
-       mov      r9, gword ptr [rbp-0x50]
-       mov      rdi, gword ptr [rbp-0x40]
-       mov      rdx, gword ptr [rbp-0x58]
+       mov      r9, rax
+       mov      rdi, gword ptr [rbp-0x78]
+       mov      rdx, r12
        mov      ecx, r13d
        mov      rsi, 0xD1FFAB1E      ; System.Text.RegularExpressions.Symbolic.SymbolicRegexMatcher`1[double]:ForEachNfaState[System.ValueTuple`2[System.Collections.Generic.List`1[System.ValueTuple`2[int,System.Text.RegularExpressions.Symbolic.DerivativeEffect[]]],System.Text.RegularExpressions.Symbolic.DerivativeEffect[]]](System.Text.RegularExpressions.Symbolic.SymbolicRegexNode`1[double],uint,System.ValueTuple`2[System.Collections.Generic.List`1[System.ValueTuple`2[int,System.Text.RegularExpressions.Symbolic.DerivativeEffect[]]],System.Text.RegularExpressions.Symbolic.DerivativeEffect[]],System.Action`2[int,System.ValueTuple`2[System.Collections.Generic.List`1[System.ValueTuple`2[int,System.Text.RegularExpressions.Symbolic.DerivativeEffect[]]],System.Text.RegularExpressions.Symbolic.DerivativeEffect[]]]):this
        mov      rax, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.Symbolic.SymbolicRegexMatcher`1[double]:ForEachNfaState[System.ValueTuple`2[System.__Canon,System.__Canon]](System.Text.RegularExpressions.Symbolic.SymbolicRegexNode`1[double],uint,System.ValueTuple`2[System.__Canon,System.__Canon],System.Action`2[int,System.ValueTuple`2[System.__Canon,System.__Canon]]):this
        call     [rax]System.Text.RegularExpressions.Symbolic.SymbolicRegexMatcher`1[double]:ForEachNfaState[System.ValueTuple`2[System.__Canon,System.__Canon]](System.Text.RegularExpressions.Symbolic.SymbolicRegexNode`1[double],uint,System.ValueTuple`2[System.__Canon,System.__Canon],System.Action`2[int,System.ValueTuple`2[System.__Canon,System.__Canon]]):this
-       mov      edi, dword ptr [rbp-0x34]
-       jmp      G_M28770_IG07
-						;; size=52 bbWeight=2 PerfScore 22.00
-G_M28770_IG10:
-       mov      rax, 0xD1FFAB1E      ; code for System.Threading.Monitor:ThrowLockTakenException()
-       call     [rax]System.Threading.Monitor:ThrowLockTakenException()
-       int3     
-						;; size=13 bbWeight=0 PerfScore 0.00
-G_M28770_IG11:
+       lea      rdi, [rbp-0x50]
+       mov      rsi, r15
+       mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1+Enumerator[System.ValueTuple`2[System.__Canon,System.__Canon]]:MoveNext():ubyte:this
+       call     [rax]System.Collections.Generic.List`1+Enumerator[System.ValueTuple`2[System.__Canon,System.__Canon]]:MoveNext():ubyte:this
+       test     eax, eax
+       jne      G_M28770_IG11
+						;; size=69 bbWeight=4 PerfScore 47.00
+G_M28770_IG14:
        mov      rdi, r14
        mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.List`1[System.ValueTuple`2[int,System.__Canon]]:ToArray():System.ValueTuple`2[int,System.__Canon][]:this
        call     [rax]System.Collections.Generic.List`1[System.ValueTuple`2[int,System.__Canon]]:ToArray():System.ValueTuple`2[int,System.__Canon][]:this
        mov      r13, rax
-       mov      rdi, gword ptr [rbp-0x40]
+       mov      rdi, gword ptr [rbp-0x78]
        mov      rsi, gword ptr [rdi+0x40]
        cmp      ebx, dword ptr [rsi+0x08]
-       jae      SHORT G_M28770_IG12
+       jae      SHORT G_M28770_IG16
        mov      eax, ebx
        lea      rdi, bword ptr [rsi+8*rax+0x10]
        mov      rsi, r13
        call     CORINFO_HELP_ASSIGN_REF
-       jmp      SHORT G_M28770_IG15
-						;; size=48 bbWeight=4 PerfScore 61.00
-G_M28770_IG12:
+       mov      rdi, gword ptr [rbp-0x78]
+       jmp      SHORT G_M28770_IG19
+						;; size=52 bbWeight=1 PerfScore 16.25
+G_M28770_IG15:
+       mov      rax, gword ptr [rbp-0x88]
+       jmp      G_M28770_IG13
+						;; size=12 bbWeight=2 PerfScore 6.00
+G_M28770_IG16:
        call     CORINFO_HELP_RNGCHKFAIL
        int3     
 						;; size=6 bbWeight=0 PerfScore 0.00
-G_M28770_IG13:
-       mov      rax, 0xD1FFAB1E      ; code for System.ThrowHelper:ThrowInvalidOperationException_InvalidOperation_EnumFailedVersion()
-       call     [rax]System.ThrowHelper:ThrowInvalidOperationException_InvalidOperation_EnumFailedVersion()
+G_M28770_IG17:
+       mov      rax, 0xD1FFAB1E      ; code for System.Threading.Monitor:ThrowLockTakenException()
+       call     [rax]System.Threading.Monitor:ThrowLockTakenException()
        int3     
 						;; size=13 bbWeight=0 PerfScore 0.00
-G_M28770_IG14:
+G_M28770_IG18:
        mov      rax, 0xD1FFAB1E      ; code for System.MulticastDelegate:ThrowNullThisInDelegateToInstance()
        call     [rax]System.MulticastDelegate:ThrowNullThisInDelegateToInstance()
        int3     
 						;; size=13 bbWeight=0 PerfScore 0.00
-G_M28770_IG15:
+G_M28770_IG19:
        cmp      byte  ptr [rbp-0x30], 0
-       je       SHORT G_M28770_IG17
+       je       SHORT G_M28770_IG21
 						;; size=6 bbWeight=1 PerfScore 3.00
-G_M28770_IG16:
-       mov      rdi, gword ptr [rbp-0x40]
+G_M28770_IG20:
        call     System.Threading.Monitor:Exit(System.Object)
-						;; size=9 bbWeight=0.50 PerfScore 1.00
-G_M28770_IG17:
+						;; size=5 bbWeight=0.50 PerfScore 0.50
+G_M28770_IG21:
        mov      rax, r13
 						;; size=3 bbWeight=1 PerfScore 0.25
-G_M28770_IG18:
-       add      rsp, 72
+G_M28770_IG22:
+       vzeroupper 
+       add      rsp, 120
        pop      rbx
        pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
-						;; size=15 bbWeight=1 PerfScore 4.25
-G_M28770_IG19:
+						;; size=18 bbWeight=1 PerfScore 5.25
+G_M28770_IG23:
        push     rbp
        push     r15
        push     r14
        push     r13
        push     r12
        push     rbx
        sub      rsp, 24
        mov      rbp, qword ptr [rdi+0x08]
        mov      qword ptr [rsp+0x08], rbp
-       lea      rbp, [rbp+0x70]
-						;; size=27 bbWeight=0 PerfScore 0.00
-G_M28770_IG20:
+       lea      rbp, [rbp+0xA0]
+						;; size=30 bbWeight=0 PerfScore 0.00
+G_M28770_IG24:
        cmp      byte  ptr [rbp-0x30], 0
-       je       SHORT G_M28770_IG21
-       mov      rdi, gword ptr [rbp-0x40]
+       je       SHORT G_M28770_IG25
+       mov      rdi, gword ptr [rbp-0x78]
        call     System.Threading.Monitor:Exit(System.Object)
 						;; size=15 bbWeight=0 PerfScore 0.00
-G_M28770_IG21:
+G_M28770_IG25:
        nop      
 						;; size=1 bbWeight=0 PerfScore 0.00
-G_M28770_IG22:
+G_M28770_IG26:
+       vzeroupper 
        add      rsp, 24
        pop      rbx
        pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
-						;; size=15 bbWeight=0 PerfScore 0.00
+						;; size=18 bbWeight=0 PerfScore 0.00
 
-; Total bytes of code 735, prolog size 35, PerfScore 278.62, instruction count 184, allocated bytes for code 735 (MethodHash=b1728f9d) for method System.Text.RegularExpressions.Symbolic.SymbolicRegexMatcher`1[double]:CreateNewCapturingTransition(int,int,int):System.ValueTuple`2[int,System.Text.RegularExpressions.Symbolic.DerivativeEffect[]][]:this (FullOpts)
+; Total bytes of code 807, prolog size 56, PerfScore 200.00, instruction count 193, allocated bytes for code 807 (MethodHash=b1728f9d) for method System.Text.RegularExpressions.Symbolic.SymbolicRegexMatcher`1[double]:CreateNewCapturingTransition(int,int,int):System.ValueTuple`2[int,System.Text.RegularExpressions.Symbolic.DerivativeEffect[]][]:this (FullOpts)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment