Skip to content

Instantly share code, notes, and snippets.

@MihuBot
Created September 8, 2024 07:14
Show Gist options
  • Save MihuBot/661c25382226059d94407267bb82c17e to your computer and use it in GitHub Desktop.
Save MihuBot/661c25382226059d94407267bb82c17e to your computer and use it in GitHub Desktop.

Top method improvements

-118 (-0.64 % of base) - System.Text.RegularExpressions.RegexInterpreter:TryMatchAtCurrentPosition(System.ReadOnlySpan`1[ushort]):ubyte:this
 ; Assembly listing for method System.Text.RegularExpressions.RegexInterpreter:TryMatchAtCurrentPosition(System.ReadOnlySpan`1[ushort]):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; 205 single block inlinees; 48 inlinees without PGO data
 ; Final local variable assignments
 ;
-;  V00 this         [V00,T00] (531,6751   )     ref  ->  rbx         this class-hnd single-def <System.Text.RegularExpressions.RegexInterpreter>
+;  V00 this         [V00,T00] (522,5738.25)     ref  ->  rbx         this class-hnd single-def <System.Text.RegularExpressions.RegexInterpreter>
 ;* V01 arg1         [V01    ] (  0,   0   )  struct (16) zero-ref    multireg-arg ld-addr-op single-def <System.ReadOnlySpan`1[ushort]>
-;  V02 loc0         [V02,T37] (  4, 152   )     int  ->  rdi        
+;  V02 loc0         [V02,T44] (  4, 104   )     int  ->  rdi        
 ;  V03 loc1         [V03,T50] (  7, 159.33)     int  ->  r13        
-;  V04 loc2         [V04,T206] (  5,  64   )     int  ->  rax        
-;  V05 loc3         [V05,T349] (  3,  48   )     int  ->  r13        
-;  V06 loc4         [V06,T272] (  4,  56   )     int  ->  [rbp-0x2C]  spill-single-def
-;  V07 loc5         [V07,T207] (  5,  64   )     int  ->  [rbp-0x30]  spill-single-def
-;  V08 loc6         [V08,T464] (  2,  32   )     int  ->  rdi        
-;  V09 loc7         [V09,T423] (  3,  40   )     int  ->   r8        
-;  V10 loc8         [V10,T273] (  4,  56   )     int  ->  r13        
-;  V11 loc9         [V11,T350] (  3,  48   )     int  ->  rax        
-;  V12 loc10        [V12,T211] (  4,  64   )     int  ->  rdi        
-;  V13 loc11        [V13,T424] (  4,  32   )     int  ->  rsi        
-;  V14 loc12        [V14,T425] (  4,  32   )     int  ->   r8        
-;  V15 loc13        [V15,T417] (  5,  40   )     int  ->   r8        
-;  V16 loc14        [V16,T426] (  4,  32   )     int  ->  rsi        
-;  V17 loc15        [V17,T427] (  4,  32   )     int  ->  r12        
+;  V04 loc2         [V04,T484] (  5,  10   )     int  ->  rax        
+;  V05 loc3         [V05,T280] (  3,  48   )     int  ->  r13        
+;  V06 loc4         [V06,T219] (  4,  50   )     int  ->  [rbp-0x2C]  spill-single-def
+;  V07 loc5         [V07,T217] (  5,  58   )     int  ->  [rbp-0x30]  spill-single-def
+;  V08 loc6         [V08,T369] (  2,  32   )     int  ->  rdi        
+;  V09 loc7         [V09,T337] (  3,  34   )     int  ->   r8        
+;  V10 loc8         [V10,T220] (  4,  50   )     int  ->  r13        
+;  V11 loc9         [V11,T281] (  3,  48   )     int  ->  rax        
+;  V12 loc10        [V12,T181] (  4,  64   )     int  ->  rdi        
+;  V13 loc11        [V13,T338] (  4,  32   )     int  ->  rsi        
+;  V14 loc12        [V14,T339] (  4,  32   )     int  ->   r8        
+;  V15 loc13        [V15,T331] (  5,  40   )     int  ->   r8        
+;  V16 loc14        [V16,T340] (  4,  32   )     int  ->  rsi        
+;  V17 loc15        [V17,T341] (  4,  32   )     int  ->  r12        
 ;  V18 loc16        [V18,T45] (  6, 160   )     int  ->  registers  
-;  V19 loc17        [V19,T204] (  2,  72   )  ushort  ->  rsi        
+;  V19 loc17        [V19,T177] (  2,  72   )  ushort  ->  rdi        
 ;  V20 loc18        [V20,T46] (  6, 160   )     int  ->  registers  
-;  V21 loc19        [V21,T205] (  2,  72   )  ushort  ->  rsi        
+;  V21 loc19        [V21,T178] (  2,  72   )  ushort  ->  rdi        
 ;  V22 loc20        [V22,T47] (  6, 160   )     int  ->  [rbp-0x34] 
-;  V23 loc21        [V23,T428] (  4,  32   )     int  ->  rsi        
+;  V23 loc21        [V23,T342] (  4,  32   )     int  ->  rsi        
 ;  V24 loc22        [V24,T20] ( 11, 328   )     ref  ->  r12         class-hnd exact <System.String>
-;  V25 loc23        [V25,T89] (  3, 104   )   byref  ->  [rbp-0x50]  spill-single-def
-;  V26 loc24        [V26,T195] (  5,  80   )     int  ->  rsi        
-;  V27 loc25        [V27,T203] (  2,  80   )  ushort  ->  rdx        
+;  V25 loc23        [V25,T80] (  3, 104   )   byref  ->  [rbp-0x50]  spill-single-def
+;  V26 loc24        [V26,T169] (  5,  80   )     int  ->  rsi        
+;  V27 loc25        [V27,T176] (  2,  80   )  ushort  ->  rdx        
 ;  V28 loc26        [V28,T31] (  6, 240   )     int  ->  rdi        
-;  V29 loc27        [V29,T88] ( 10, 104   )     int  ->  r13        
-;  V30 loc28        [V30,T190] (  3,  88   )  ushort  ->  r12        
+;  V29 loc27        [V29,T79] ( 10, 104   )     int  ->  r13        
+;  V30 loc28        [V30,T168] (  3,  88   )  ushort  ->  r12        
 ;  V31 loc29        [V31,T30] (  8, 248   )     int  ->  [rbp-0x38] 
-;  V32 loc30        [V32,T196] (  5,  80   )     int  ->  r13        
-;  V33 loc31        [V33,T212] (  4,  64   )     int  ->  rsi        
-;  V34 loc32        [V34,T198] (  3,  80   )     ref  ->  r12         class-hnd exact <System.String>
-;  V35 loc33        [V35,T87] (  3, 112   )   byref  ->  [rbp-0x58]  spill-single-def
+;  V32 loc30        [V32,T170] (  5,  80   )     int  ->  r13        
+;  V33 loc31        [V33,T182] (  4,  64   )     int  ->  rsi        
+;  V34 loc32        [V34,T171] (  3,  80   )     ref  ->  r12         class-hnd exact <System.String>
+;  V35 loc33        [V35,T77] (  3, 112   )   byref  ->  [rbp-0x58]  spill-single-def
 ;  V36 loc34        [V36,T32] (  6, 240   )     int  ->  [rbp-0x3C] 
-;  V37 loc35        [V37,T351] (  3,  48   )     int  ->  rsi        
-;  V38 loc36        [V38,T352] (  3,  48   )     int  ->  rdx        
+;  V37 loc35        [V37,T282] (  3,  48   )     int  ->  rsi        
+;  V38 loc36        [V38,T283] (  3,  48   )     int  ->  rdx        
 ;* V39 loc37        [V39    ] (  0,   0   )     int  ->  zero-ref   
-;  V40 loc38        [V40,T444] (  3,  32   )     int  ->  rsi        
-;  V41 loc39        [V41,T353] (  3,  48   )     int  ->  rdi        
-;  V42 loc40        [V42,T445] (  3,  32   )     int  ->  rsi        
-;  V43 loc41        [V43,T354] (  3,  48   )     int  ->  rdi        
-;  V44 loc42        [V44,T446] (  3,  32   )     int  ->  r13        
-;  V45 loc43        [V45,T429] (  4,  32   )     int  ->  rsi        
-;  V46 loc44        [V46,T355] (  3,  48   )     int  ->  rsi        
-;  V47 loc45        [V47,T535] (  3,  12   )   byref  ->  rdi        
+;  V40 loc38        [V40,T352] (  3,  32   )     int  ->  rsi        
+;  V41 loc39        [V41,T284] (  3,  48   )     int  ->  rdi        
+;  V42 loc40        [V42,T353] (  3,  32   )     int  ->  rsi        
+;  V43 loc41        [V43,T285] (  3,  48   )     int  ->  rdi        
+;  V44 loc42        [V44,T354] (  3,  32   )     int  ->  r13        
+;  V45 loc43        [V45,T343] (  4,  32   )     int  ->  rsi        
+;  V46 loc44        [V46,T286] (  3,  48   )     int  ->  rsi        
+;  V47 loc45        [V47,T441] (  3,  12   )   byref  ->  rdi        
 ;# V48 OutArgs      [V48    ] (  1,   1   )  struct ( 0) [rsp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
 ;* V49 tmp1         [V49    ] (  0,   0   )     int  ->  zero-ref    "impAppendStmt"
-;  V50 tmp2         [V50,T465] (  2,  32   )     int  ->  rdi         "impAppendStmt"
-;  V51 tmp3         [V51,T466] (  2,  32   )     int  ->  rax         "impAppendStmt"
+;  V50 tmp2         [V50,T370] (  2,  32   )     int  ->  rdi         "impAppendStmt"
+;  V51 tmp3         [V51,T371] (  2,  32   )     int  ->  rax         "impAppendStmt"
 ;* V52 tmp4         [V52    ] (  0,   0   )     int  ->  zero-ref    "impAppendStmt"
 ;* V53 tmp5         [V53    ] (  0,   0   )     int  ->  zero-ref    "impAppendStmt"
-;  V54 tmp6         [V54,T467] (  2,  32   )     int  ->  rdi         "impAppendStmt"
-;  V55 tmp7         [V55,T468] (  2,  32   )     int  ->  rdx         "impAppendStmt"
+;  V54 tmp6         [V54,T372] (  2,  32   )     int  ->  rdi         "impAppendStmt"
+;  V55 tmp7         [V55,T373] (  2,  32   )     int  ->  rdx         "impAppendStmt"
 ;* V56 tmp8         [V56    ] (  0,   0   )     int  ->  zero-ref    "impAppendStmt"
 ;* V57 tmp9         [V57    ] (  0,   0   )     int  ->  zero-ref    "impAppendStmt"
 ;* V58 tmp10        [V58    ] (  0,   0   )     int  ->  zero-ref    "impAppendStmt"
 ;* V59 tmp11        [V59    ] (  0,   0   )     int  ->  zero-ref    "impAppendStmt"
-;  V60 tmp12        [V60,T469] (  2,  32   )     int  ->  rdi         "impAppendStmt"
-;  V61 tmp13        [V61,T356] (  3,  48   )     int  ->  r13         "impAppendStmt"
+;  V60 tmp12        [V60,T500] (  2,   8   )     int  ->  rdi         "impAppendStmt"
+;  V61 tmp13        [V61,T464] (  3,  12   )     int  ->  r13         "impAppendStmt"
 ;* V62 tmp14        [V62    ] (  0,   0   )     int  ->  zero-ref    "impAppendStmt"
 ;* V63 tmp15        [V63    ] (  0,   0   )     int  ->  zero-ref    "impAppendStmt"
-;  V64 tmp16        [V64,T252] (  2,  64   )     int  ->   r8         "impAppendStmt"
+;  V64 tmp16        [V64,T501] (  2,   8   )     int  ->   r8         "impAppendStmt"
 ;* V65 tmp17        [V65    ] (  0,   0   )     int  ->  zero-ref    "impAppendStmt"
 ;* V66 tmp18        [V66    ] (  0,   0   )     ref  ->  zero-ref    class-hnd exact "impAppendStmt" <System.String[]>
 ;* V67 tmp19        [V67    ] (  0,   0   )     int  ->  zero-ref    "impAppendStmt"
 ;* V68 tmp20        [V68    ] (  0,   0   )     int  ->  zero-ref    "impAppendStmt"
-;  V69 tmp21        [V69,T199] (  3,  80   )     int  ->  rsi         "impAppendStmt"
-;  V70 tmp22        [V70,T200] (  3,  80   )     int  ->  r13         "impAppendStmt"
-;  V71 tmp23        [V71,T411] (  2,  48   )     int  ->  rdx         "impAppendStmt"
-;  V72 tmp24        [V72,T201] (  3,  80   )     int  ->  r13         "impAppendStmt"
-;  V73 tmp25        [V73,T412] (  2,  48   )     int  ->  rdx         "impAppendStmt"
+;  V69 tmp21        [V69,T172] (  3,  80   )     int  ->  rsi         "impAppendStmt"
+;  V70 tmp22        [V70,T173] (  3,  80   )     int  ->  r13         "impAppendStmt"
+;  V71 tmp23        [V71,T204] (  2,  64   )     int  ->  rdx         "impAppendStmt"
+;  V72 tmp24        [V72,T174] (  3,  80   )     int  ->  r13         "impAppendStmt"
+;  V73 tmp25        [V73,T205] (  2,  64   )     int  ->  rdx         "impAppendStmt"
 ;* V74 tmp26        [V74    ] (  0,   0   )  struct (16) zero-ref    "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
-;  V75 tmp27        [V75,T202] (  3,  80   )     int  ->  rsi         "impAppendStmt"
-;  V76 tmp28        [V76,T413] (  2,  48   )     int  ->  rdx         "impAppendStmt"
-;  V77 tmp29        [V77,T12] (  6, 432   )     int  ->  r13         "impSpillLclRefs"
-;  V78 tmp30        [V78,T13] (  6, 432   )     int  ->  rdi         "impSpillLclRefs"
-;  V79 tmp31        [V79,T14] (  6, 432   )     int  ->  rdi         "impSpillLclRefs"
-;  V80 tmp32        [V80,T538] (  3,   6   )     int  ->  rdi         "Inlining Arg"
-;  V81 tmp33        [V81,T357] (  3,  48   )     int  ->  rdi         "Inlining Arg"
+;  V75 tmp27        [V75,T175] (  3,  80   )     int  ->  rsi         "impAppendStmt"
+;  V76 tmp28        [V76,T206] (  2,  64   )     int  ->  rdx         "impAppendStmt"
+;  V77 tmp29        [V77,T13] (  6, 432   )     int  ->  r13         "impSpillLclRefs"
+;  V78 tmp30        [V78,T14] (  6, 432   )     int  ->  rsi         "impSpillLclRefs"
+;  V79 tmp31        [V79,T15] (  6, 432   )     int  ->  rsi         "impSpillLclRefs"
+;  V80 tmp32        [V80,T534] (  3,   6   )     int  ->  rdi         "Inlining Arg"
+;  V81 tmp33        [V81,T287] (  3,  48   )     int  ->  rdi         "Inlining Arg"
 ;* V82 tmp34        [V82    ] (  0,   0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <System.Text.RegularExpressions.Match>
-;  V83 tmp35        [V83,T57] (  4, 128   )     int  ->  r13         "Inlining Arg"
-;  V84 tmp36        [V84,T358] (  3,  48   )     int  ->  r12         "Inline stloc first use temp"
-;  V85 tmp37        [V85,T132] (  3,  96   )     int  ->  rdi         "Inlining Arg"
-;  V86 tmp38        [V86,T470] (  2,  32   )     int  ->  rsi         "Inlining Arg"
+;  V83 tmp35        [V83,T54] (  4, 128   )     int  ->  r13         "Inlining Arg"
+;  V84 tmp36        [V84,T288] (  3,  48   )     int  ->  r12         "Inline stloc first use temp"
+;  V85 tmp37        [V85,T116] (  3,  96   )     int  ->  rdi         "Inlining Arg"
+;  V86 tmp38        [V86,T374] (  2,  32   )     int  ->  rsi         "Inlining Arg"
 ;* V87 tmp39        [V87    ] (  0,   0   )     int  ->  zero-ref    "Inline stloc first use temp"
-;  V88 tmp40        [V88,T52] (  4, 128   )     ref  ->  rdi         class-hnd "impAppendStmt" <int[]>
-;  V89 tmp41        [V89,T58] (  4, 128   )     int  ->  rsi         "dup spill"
-;  V90 tmp42        [V90,T253] (  2,  64   )     int  ->   r8         "Inlining Arg"
-;  V91 tmp43        [V91,T59] (  4, 128   )     int  ->  rsi         "dup spill"
-;  V92 tmp44        [V92,T254] (  2,  64   )     int  ->  rdx         "Strict ordering of exceptions for Array store"
-;  V93 tmp45        [V93,T60] (  4, 128   )     int  ->  r13         "Inlining Arg"
-;  V94 tmp46        [V94,T359] (  3,  48   )     int  ->  r12         "Inline stloc first use temp"
-;  V95 tmp47        [V95,T133] (  3,  96   )     int  ->  rdi         "Inlining Arg"
-;  V96 tmp48        [V96,T430] (  4,  32   )     int  ->  rdi         "Inline stloc first use temp"
-;  V97 tmp49        [V97,T281] (  3,  48   )     ref  ->  rcx         class-hnd "impAppendStmt" <int[]>
-;  V98 tmp50        [V98,T471] (  2,  32   )     int  ->  rdx         "Inlining Arg"
-;  V99 tmp51        [V99,T431] (  4,  32   )     int  ->  rcx         "Inline stloc first use temp"
-;  V100 tmp52       [V100,T282] (  3,  48   )     ref  ->  rdx         class-hnd "impAppendStmt" <int[]>
-;  V101 tmp53       [V101,T472] (  2,  32   )     int  ->   r8         "Strict ordering of exceptions for Array store"
-;  V102 tmp54       [V102,T432] (  4,  32   )     int  ->  rdi         "Inline stloc first use temp"
-;  V103 tmp55       [V103,T283] (  3,  48   )     ref  ->  rcx         class-hnd "impAppendStmt" <int[]>
-;  V104 tmp56       [V104,T433] (  4,  32   )     int  ->  rdi         "Inline stloc first use temp"
-;  V105 tmp57       [V105,T284] (  3,  48   )     ref  ->  rcx         class-hnd "impAppendStmt" <int[]>
-;  V106 tmp58       [V106,T473] (  2,  32   )     int  ->  rsi         "Strict ordering of exceptions for Array store"
+;  V88 tmp40        [V88,T417] (  4,  16   )     ref  ->  rdi         class-hnd "impAppendStmt" <int[]>
+;  V89 tmp41        [V89,T421] (  4,  16   )     int  ->  rsi         "dup spill"
+;  V90 tmp42        [V90,T502] (  2,   8   )     int  ->   r8         "Inlining Arg"
+;  V91 tmp43        [V91,T422] (  4,  16   )     int  ->  rsi         "dup spill"
+;  V92 tmp44        [V92,T503] (  2,   8   )     int  ->  rdx         "Strict ordering of exceptions for Array store"
+;  V93 tmp45        [V93,T55] (  4, 128   )     int  ->  r13         "Inlining Arg"
+;  V94 tmp46        [V94,T289] (  3,  48   )     int  ->  r12         "Inline stloc first use temp"
+;  V95 tmp47        [V95,T117] (  3,  96   )     int  ->  rdi         "Inlining Arg"
+;  V96 tmp48        [V96,T485] (  4,   8   )     int  ->  rdi         "Inline stloc first use temp"
+;  V97 tmp49        [V97,T442] (  3,  12   )     ref  ->  rcx         class-hnd "impAppendStmt" <int[]>
+;  V98 tmp50        [V98,T504] (  2,   8   )     int  ->  rdx         "Inlining Arg"
+;  V99 tmp51        [V99,T486] (  4,   8   )     int  ->  rcx         "Inline stloc first use temp"
+;  V100 tmp52       [V100,T443] (  3,  12   )     ref  ->  rdx         class-hnd "impAppendStmt" <int[]>
+;  V101 tmp53       [V101,T505] (  2,   8   )     int  ->   r8         "Strict ordering of exceptions for Array store"
+;  V102 tmp54       [V102,T487] (  4,   8   )     int  ->  rdi         "Inline stloc first use temp"
+;  V103 tmp55       [V103,T444] (  3,  12   )     ref  ->  rcx         class-hnd "impAppendStmt" <int[]>
+;  V104 tmp56       [V104,T488] (  4,   8   )     int  ->  rdi         "Inline stloc first use temp"
+;  V105 tmp57       [V105,T445] (  3,  12   )     ref  ->  rcx         class-hnd "impAppendStmt" <int[]>
+;  V106 tmp58       [V106,T506] (  2,   8   )     int  ->  rsi         "Strict ordering of exceptions for Array store"
 ;* V107 tmp59       [V107    ] (  0,   0   )     int  ->  zero-ref    "Inline stloc first use temp"
-;  V108 tmp60       [V108,T208] (  4,  64   )     ref  ->  rsi         class-hnd "impAppendStmt" <int[]>
-;  V109 tmp61       [V109,T213] (  4,  64   )     int  ->  rax         "dup spill"
-;  V110 tmp62       [V110,T474] (  2,  32   )     int  ->  r12         "Inlining Arg"
-;  V111 tmp63       [V111,T214] (  4,  64   )     int  ->  rax         "dup spill"
-;  V112 tmp64       [V112,T475] (  2,  32   )     int  ->   r8         "Strict ordering of exceptions for Array store"
-;  V113 tmp65       [V113,T434] (  4,  32   )     int  ->  rax         "Inline stloc first use temp"
-;  V114 tmp66       [V114,T285] (  3,  48   )     ref  ->  rsi         class-hnd "impAppendStmt" <int[]>
-;  V115 tmp67       [V115,T476] (  2,  32   )     int  ->  rdi         "Inlining Arg"
-;  V116 tmp68       [V116,T477] (  2,  32   )     int  ->  rsi         "Inlining Arg"
-;  V117 tmp69       [V117,T197] (  5,  80   )     int  ->  [rbp-0x40]  "Inlining Arg"
-;  V118 tmp70       [V118,T90] (  6,  96   )     int  ->  registers   "Inlining Arg"
-;  V119 tmp71       [V119,T478] (  2,  32   )     int  ->  rdi         "impSpillLclRefs"
-;  V120 tmp72       [V120,T435] (  4,  32   )     int  ->  rsi         "Inline stloc first use temp"
-;  V121 tmp73       [V121,T286] (  3,  48   )     ref  ->  rcx         class-hnd "impAppendStmt" <int[]>
+;  V108 tmp60       [V108,T418] (  4,  16   )     ref  ->  rsi         class-hnd "impAppendStmt" <int[]>
+;  V109 tmp61       [V109,T423] (  4,  16   )     int  ->  rax         "dup spill"
+;  V110 tmp62       [V110,T507] (  2,   8   )     int  ->  r12         "Inlining Arg"
+;  V111 tmp63       [V111,T424] (  4,  16   )     int  ->  rax         "dup spill"
+;  V112 tmp64       [V112,T508] (  2,   8   )     int  ->   r8         "Strict ordering of exceptions for Array store"
+;  V113 tmp65       [V113,T344] (  4,  32   )     int  ->  rax         "Inline stloc first use temp"
+;  V114 tmp66       [V114,T228] (  3,  48   )     ref  ->  rsi         class-hnd "impAppendStmt" <int[]>
+;  V115 tmp67       [V115,T375] (  2,  32   )     int  ->  rdi         "Inlining Arg"
+;  V116 tmp68       [V116,T376] (  2,  32   )     int  ->  rsi         "Inlining Arg"
+;  V117 tmp69       [V117,T416] (  5,  20   )     int  ->  [rbp-0x40]  "Inlining Arg"
+;  V118 tmp70       [V118,T390] (  6,  24   )     int  ->  registers   "Inlining Arg"
+;  V119 tmp71       [V119,T509] (  2,   8   )     int  ->  rdi         "impSpillLclRefs"
+;  V120 tmp72       [V120,T489] (  4,   8   )     int  ->  rsi         "Inline stloc first use temp"
+;  V121 tmp73       [V121,T446] (  3,  12   )     ref  ->  rcx         class-hnd "impAppendStmt" <int[]>
 ;* V122 tmp74       [V122    ] (  0,   0   )     int  ->  zero-ref    "Inline stloc first use temp"
-;  V123 tmp75       [V123,T191] (  5,  80   )     ref  ->  rdi         class-hnd "impAppendStmt" <int[]>
-;  V124 tmp76       [V124,T215] (  4,  64   )     int  ->  rsi         "dup spill"
-;  V125 tmp77       [V125,T479] (  2,  32   )     int  ->  rcx         "Inlining Arg"
-;  V126 tmp78       [V126,T216] (  4,  64   )     int  ->  rsi         "dup spill"
-;  V127 tmp79       [V127,T480] (  2,  32   )     int  ->  rcx         "Strict ordering of exceptions for Array store"
-;  V128 tmp80       [V128,T436] (  4,  32   )     int  ->  rax         "Inline stloc first use temp"
-;  V129 tmp81       [V129,T287] (  3,  48   )     ref  ->  rsi         class-hnd "impAppendStmt" <int[]>
-;  V130 tmp82       [V130,T481] (  2,  32   )     int  ->  rdi         "Inlining Arg"
-;  V131 tmp83       [V131,T512] (  3,  24   )     int  ->  rdi         "Inline stloc first use temp"
-;  V132 tmp84       [V132,T437] (  4,  32   )     int  ->  rsi         "Inline stloc first use temp"
-;  V133 tmp85       [V133,T288] (  3,  48   )     ref  ->  rdi         class-hnd "impAppendStmt" <int[]>
+;  V123 tmp75       [V123,T412] (  5,  20   )     ref  ->  rdi         class-hnd "impAppendStmt" <int[]>
+;  V124 tmp76       [V124,T425] (  4,  16   )     int  ->  rsi         "dup spill"
+;  V125 tmp77       [V125,T510] (  2,   8   )     int  ->  rcx         "Inlining Arg"
+;  V126 tmp78       [V126,T426] (  4,  16   )     int  ->  rsi         "dup spill"
+;  V127 tmp79       [V127,T511] (  2,   8   )     int  ->  rcx         "Strict ordering of exceptions for Array store"
+;  V128 tmp80       [V128,T345] (  4,  32   )     int  ->  rax         "Inline stloc first use temp"
+;  V129 tmp81       [V129,T229] (  3,  48   )     ref  ->  rsi         class-hnd "impAppendStmt" <int[]>
+;  V130 tmp82       [V130,T377] (  2,  32   )     int  ->  rdi         "Inlining Arg"
+;  V131 tmp83       [V131,T393] (  3,  24   )     int  ->  rdi         "Inline stloc first use temp"
+;  V132 tmp84       [V132,T346] (  4,  32   )     int  ->  rsi         "Inline stloc first use temp"
+;  V133 tmp85       [V133,T230] (  3,  48   )     ref  ->  rdi         class-hnd "impAppendStmt" <int[]>
 ;* V134 tmp86       [V134    ] (  0,   0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <System.Text.RegularExpressions.Match>
-;  V135 tmp87       [V135,T289] (  3,  48   )   byref  ->  rdi         "dup spill"
-;  V136 tmp88       [V136,T513] (  3,  24   )     int  ->  rdi         "Inline stloc first use temp"
-;  V137 tmp89       [V137,T438] (  4,  32   )     int  ->  rdi         "Inline stloc first use temp"
-;  V138 tmp90       [V138,T290] (  3,  48   )     ref  ->  r12         class-hnd "impAppendStmt" <int[]>
+;  V135 tmp87       [V135,T231] (  3,  48   )   byref  ->  rdi         "dup spill"
+;  V136 tmp88       [V136,T394] (  3,  24   )     int  ->  rdi         "Inline stloc first use temp"
+;  V137 tmp89       [V137,T347] (  4,  32   )     int  ->  rdi         "Inline stloc first use temp"
+;  V138 tmp90       [V138,T232] (  3,  48   )     ref  ->  r12         class-hnd "impAppendStmt" <int[]>
 ;* V139 tmp91       [V139    ] (  0,   0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <System.Text.RegularExpressions.Match>
-;  V140 tmp92       [V140,T291] (  3,  48   )   byref  ->  rdi         "dup spill"
+;  V140 tmp92       [V140,T233] (  3,  48   )   byref  ->  rdi         "dup spill"
 ;* V141 tmp93       [V141    ] (  0,   0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;  V142 tmp94       [V142,T48] (  5, 160   )     ref  ->  rsi         class-hnd "impAppendStmt" <int[]>
-;  V143 tmp95       [V143,T61] (  4, 128   )     int  ->   r9         "dup spill"
-;  V144 tmp96       [V144,T255] (  2,  64   )     int  ->  rax         "Inlining Arg"
-;  V145 tmp97       [V145,T62] (  4, 128   )     int  ->   r9         "dup spill"
-;  V146 tmp98       [V146,T256] (  2,  64   )     int  ->  rdx         "Inlining Arg"
-;  V147 tmp99       [V147,T63] (  4, 128   )     int  ->   r9         "dup spill"
-;  V148 tmp100      [V148,T257] (  2,  64   )     int  ->  rax         "Strict ordering of exceptions for Array store"
-;  V149 tmp101      [V149,T217] (  4,  64   )     int  ->  rdi         "Inline stloc first use temp"
-;  V150 tmp102      [V150,T239] (  2,  64   )     ref  ->  rdx         class-hnd "impAppendStmt" <int[]>
-;  V151 tmp103      [V151,T258] (  2,  64   )     int  ->  rax         "Inlining Arg"
-;  V152 tmp104      [V152,T64] (  4, 128   )     int  ->  r12         "Inlining Arg"
-;  V153 tmp105      [V153,T134] (  3,  96   )     int  ->  rdi         "Inlining Arg"
-;  V154 tmp106      [V154,T439] (  4,  32   )     int  ->  rcx         "Inline stloc first use temp"
-;  V155 tmp107      [V155,T292] (  3,  48   )     ref  ->  rax         class-hnd "impAppendStmt" <int[]>
-;  V156 tmp108      [V156,T482] (  2,  32   )     int  ->  rdi         "Inlining Arg"
+;  V143 tmp95       [V143,T56] (  4, 128   )     int  ->   r9         "dup spill"
+;  V144 tmp96       [V144,T207] (  2,  64   )     int  ->  rax         "Inlining Arg"
+;  V145 tmp97       [V145,T57] (  4, 128   )     int  ->   r9         "dup spill"
+;  V146 tmp98       [V146,T208] (  2,  64   )     int  ->  rdx         "Inlining Arg"
+;  V147 tmp99       [V147,T58] (  4, 128   )     int  ->   r9         "dup spill"
+;  V148 tmp100      [V148,T209] (  2,  64   )     int  ->  rax         "Strict ordering of exceptions for Array store"
+;  V149 tmp101      [V149,T183] (  4,  64   )     int  ->  rdi         "Inline stloc first use temp"
+;  V150 tmp102      [V150,T194] (  2,  64   )     ref  ->  rdx         class-hnd "impAppendStmt" <int[]>
+;  V151 tmp103      [V151,T210] (  2,  64   )     int  ->  rax         "Inlining Arg"
+;  V152 tmp104      [V152,T59] (  4, 128   )     int  ->  r12         "Inlining Arg"
+;  V153 tmp105      [V153,T118] (  3,  96   )     int  ->  rdi         "Inlining Arg"
+;  V154 tmp106      [V154,T348] (  4,  32   )     int  ->  rcx         "Inline stloc first use temp"
+;  V155 tmp107      [V155,T234] (  3,  48   )     ref  ->  rax         class-hnd "impAppendStmt" <int[]>
+;  V156 tmp108      [V156,T378] (  2,  32   )     int  ->  rdi         "Inlining Arg"
 ;* V157 tmp109      [V157    ] (  0,   0   )     int  ->  zero-ref    "Inline stloc first use temp"
-;  V158 tmp110      [V158,T192] (  5,  80   )     ref  ->  rsi         class-hnd "impAppendStmt" <int[]>
-;  V159 tmp111      [V159,T218] (  4,  64   )     int  ->  rdi         "dup spill"
-;  V160 tmp112      [V160,T219] (  4,  64   )     int  ->  rdi         "dup spill"
-;  V161 tmp113      [V161,T483] (  2,  32   )     int  ->   r8         "Inlining Arg"
-;  V162 tmp114      [V162,T220] (  4,  64   )     int  ->  rdi         "dup spill"
-;  V163 tmp115      [V163,T484] (  2,  32   )     int  ->  rax         "Strict ordering of exceptions for Array store"
+;  V158 tmp110      [V158,T413] (  5,  20   )     ref  ->  rsi         class-hnd "impAppendStmt" <int[]>
+;  V159 tmp111      [V159,T427] (  4,  16   )     int  ->  rdi         "dup spill"
+;  V160 tmp112      [V160,T428] (  4,  16   )     int  ->  rdi         "dup spill"
+;  V161 tmp113      [V161,T512] (  2,   8   )     int  ->   r8         "Inlining Arg"
+;  V162 tmp114      [V162,T429] (  4,  16   )     int  ->  rdi         "dup spill"
+;  V163 tmp115      [V163,T513] (  2,   8   )     int  ->  rax         "Strict ordering of exceptions for Array store"
 ;* V164 tmp116      [V164    ] (  0,   0   )     int  ->  zero-ref    "Inline stloc first use temp"
-;  V165 tmp117      [V165,T193] (  5,  80   )     ref  ->  rdi         class-hnd "impAppendStmt" <int[]>
-;  V166 tmp118      [V166,T221] (  4,  64   )     int  ->  rsi         "dup spill"
-;  V167 tmp119      [V167,T485] (  2,  32   )     int  ->  rax         "Inlining Arg"
-;  V168 tmp120      [V168,T222] (  4,  64   )     int  ->  rsi         "dup spill"
-;  V169 tmp121      [V169,T486] (  2,  32   )     int  ->   r8         "Inlining Arg"
-;  V170 tmp122      [V170,T223] (  4,  64   )     int  ->  rsi         "dup spill"
-;  V171 tmp123      [V171,T487] (  2,  32   )     int  ->  r11         "Strict ordering of exceptions for Array store"
-;  V172 tmp124      [V172,T224] (  4,  64   )     int  ->  rdi         "Inline stloc first use temp"
-;  V173 tmp125      [V173,T240] (  2,  64   )     ref  ->  rsi         class-hnd "impAppendStmt" <int[]>
-;  V174 tmp126      [V174,T225] (  4,  64   )     int  ->  rax         "Inline stloc first use temp"
-;  V175 tmp127      [V175,T92] (  3,  96   )     ref  ->  rdi         class-hnd "impAppendStmt" <int[]>
-;  V176 tmp128      [V176,T65] (  4, 128   )     int  ->  r13         "Inlining Arg"
-;  V177 tmp129      [V177,T135] (  3,  96   )     int  ->  rsi         "Inlining Arg"
-;  V178 tmp130      [V178,T440] (  4,  32   )     int  ->  rdi         "Inline stloc first use temp"
-;  V179 tmp131      [V179,T293] (  3,  48   )     ref  ->  rcx         class-hnd "impAppendStmt" <int[]>
-;  V180 tmp132      [V180,T488] (  2,  32   )     int  ->  rax         "Inlining Arg"
+;  V165 tmp117      [V165,T414] (  5,  20   )     ref  ->  rdi         class-hnd "impAppendStmt" <int[]>
+;  V166 tmp118      [V166,T430] (  4,  16   )     int  ->  rsi         "dup spill"
+;  V167 tmp119      [V167,T514] (  2,   8   )     int  ->  rax         "Inlining Arg"
+;  V168 tmp120      [V168,T431] (  4,  16   )     int  ->  rsi         "dup spill"
+;  V169 tmp121      [V169,T515] (  2,   8   )     int  ->   r8         "Inlining Arg"
+;  V170 tmp122      [V170,T432] (  4,  16   )     int  ->  rsi         "dup spill"
+;  V171 tmp123      [V171,T516] (  2,   8   )     int  ->  r11         "Strict ordering of exceptions for Array store"
+;  V172 tmp124      [V172,T490] (  4,   8   )     int  ->  rdi         "Inline stloc first use temp"
+;  V173 tmp125      [V173,T494] (  2,   8   )     ref  ->  rsi         class-hnd "impAppendStmt" <int[]>
+;  V174 tmp126      [V174,T184] (  4,  64   )     int  ->  rax         "Inline stloc first use temp"
+;  V175 tmp127      [V175,T82] (  3,  96   )     ref  ->  rdi         class-hnd "impAppendStmt" <int[]>
+;  V176 tmp128      [V176,T60] (  4, 128   )     int  ->  r13         "Inlining Arg"
+;  V177 tmp129      [V177,T119] (  3,  96   )     int  ->  rsi         "Inlining Arg"
+;  V178 tmp130      [V178,T349] (  4,  32   )     int  ->  rdi         "Inline stloc first use temp"
+;  V179 tmp131      [V179,T235] (  3,  48   )     ref  ->  rcx         class-hnd "impAppendStmt" <int[]>
+;  V180 tmp132      [V180,T379] (  2,  32   )     int  ->  rax         "Inlining Arg"
 ;* V181 tmp133      [V181    ] (  0,   0   )     int  ->  zero-ref    "Inline stloc first use temp"
-;  V182 tmp134      [V182,T53] (  4, 128   )     ref  ->  rdi         class-hnd "impAppendStmt" <int[]>
-;  V183 tmp135      [V183,T66] (  4, 128   )     int  ->  rax         "dup spill"
-;  V184 tmp136      [V184,T67] (  4, 128   )     int  ->  rax         "dup spill"
-;  V185 tmp137      [V185,T259] (  2,  64   )     int  ->  rsi         "Inlining Arg"
-;  V186 tmp138      [V186,T226] (  4,  64   )     int  ->  rsi         "Inline stloc first use temp"
-;  V187 tmp139      [V187,T93] (  3,  96   )     ref  ->  rdi         class-hnd "impAppendStmt" <int[]>
-;  V188 tmp140      [V188,T260] (  2,  64   )     int  ->  r11         "Strict ordering of exceptions for Array store"
+;  V182 tmp134      [V182,T419] (  4,  16   )     ref  ->  rdi         class-hnd "impAppendStmt" <int[]>
+;  V183 tmp135      [V183,T433] (  4,  16   )     int  ->  rax         "dup spill"
+;  V184 tmp136      [V184,T434] (  4,  16   )     int  ->  rax         "dup spill"
+;  V185 tmp137      [V185,T517] (  2,   8   )     int  ->  rsi         "Inlining Arg"
+;  V186 tmp138      [V186,T491] (  4,   8   )     int  ->  rsi         "Inline stloc first use temp"
+;  V187 tmp139      [V187,T447] (  3,  12   )     ref  ->  rdi         class-hnd "impAppendStmt" <int[]>
+;  V188 tmp140      [V188,T518] (  2,   8   )     int  ->  r11         "Strict ordering of exceptions for Array store"
 ;* V189 tmp141      [V189    ] (  0,   0   )     int  ->  zero-ref    "Inline stloc first use temp"
-;  V190 tmp142      [V190,T54] (  4, 128   )     ref  ->  rdi         class-hnd "impAppendStmt" <int[]>
-;  V191 tmp143      [V191,T68] (  4, 128   )     int  ->  rax         "dup spill"
-;  V192 tmp144      [V192,T69] (  4, 128   )     int  ->  rax         "dup spill"
-;  V193 tmp145      [V193,T261] (  2,  64   )     int  ->  rsi         "Inlining Arg"
-;  V194 tmp146      [V194,T227] (  4,  64   )     int  ->  rdi         "Inline stloc first use temp"
-;  V195 tmp147      [V195,T94] (  3,  96   )     ref  ->  rsi         class-hnd "impAppendStmt" <int[]>
-;  V196 tmp148      [V196,T262] (  2,  64   )     int  ->  rax         "Strict ordering of exceptions for Array store"
+;  V190 tmp142      [V190,T420] (  4,  16   )     ref  ->  rdi         class-hnd "impAppendStmt" <int[]>
+;  V191 tmp143      [V191,T435] (  4,  16   )     int  ->  rax         "dup spill"
+;  V192 tmp144      [V192,T436] (  4,  16   )     int  ->  rax         "dup spill"
+;  V193 tmp145      [V193,T519] (  2,   8   )     int  ->  rsi         "Inlining Arg"
+;  V194 tmp146      [V194,T492] (  4,   8   )     int  ->  rdi         "Inline stloc first use temp"
+;  V195 tmp147      [V195,T448] (  3,  12   )     ref  ->  rsi         class-hnd "impAppendStmt" <int[]>
+;  V196 tmp148      [V196,T520] (  2,   8   )     int  ->  rax         "Strict ordering of exceptions for Array store"
 ;* V197 tmp149      [V197    ] (  0,   0   )     int  ->  zero-ref    "Inline stloc first use temp"
-;  V198 tmp150      [V198,T55] (  4, 128   )     ref  ->  rdi         class-hnd "impAppendStmt" <int[]>
-;  V199 tmp151      [V199,T70] (  4, 128   )     int  ->  r10         "dup spill"
-;  V200 tmp152      [V200,T71] (  4, 128   )     int  ->  r10         "dup spill"
-;  V201 tmp153      [V201,T263] (  2,  64   )     int  ->  rcx         "Strict ordering of exceptions for Array store"
+;  V198 tmp150      [V198,T52] (  4, 128   )     ref  ->  rdi         class-hnd "impAppendStmt" <int[]>
+;  V199 tmp151      [V199,T61] (  4, 128   )     int  ->  r10         "dup spill"
+;  V200 tmp152      [V200,T62] (  4, 128   )     int  ->  r10         "dup spill"
+;  V201 tmp153      [V201,T211] (  2,  64   )     int  ->  rcx         "Strict ordering of exceptions for Array store"
 ;* V202 tmp154      [V202    ] (  0,   0   )     int  ->  zero-ref    "Inline stloc first use temp"
-;  V203 tmp155      [V203,T95] (  3,  96   )     ref  ->  rcx         class-hnd "impAppendStmt" <int[]>
-;  V204 tmp156      [V204,T72] (  4, 128   )     int  ->  rax         "dup spill"
-;  V205 tmp157      [V205,T264] (  2,  64   )     int  ->  rdi         "Inlining Arg"
-;  V206 tmp158      [V206,T73] (  4, 128   )     int  ->  rax         "dup spill"
+;  V203 tmp155      [V203,T83] (  3,  96   )     ref  ->  rcx         class-hnd "impAppendStmt" <int[]>
+;  V204 tmp156      [V204,T63] (  4, 128   )     int  ->  rax         "dup spill"
+;  V205 tmp157      [V205,T212] (  2,  64   )     int  ->  rdi         "Inlining Arg"
+;  V206 tmp158      [V206,T64] (  4, 128   )     int  ->  rax         "dup spill"
 ;* V207 tmp159      [V207    ] (  0,   0   )     int  ->  zero-ref    "Inlining Arg"
-;  V208 tmp160      [V208,T74] (  4, 128   )     int  ->  r13         "Inlining Arg"
-;  V209 tmp161      [V209,T136] (  3,  96   )     int  ->  rdi         "Inlining Arg"
+;  V208 tmp160      [V208,T65] (  4, 128   )     int  ->  r13         "Inlining Arg"
+;  V209 tmp161      [V209,T120] (  3,  96   )     int  ->  rdi         "Inlining Arg"
 ;* V210 tmp162      [V210    ] (  0,   0   )     int  ->  zero-ref    "Inline stloc first use temp"
-;  V211 tmp163      [V211,T294] (  3,  48   )     ref  ->  rax         class-hnd "impAppendStmt" <int[]>
-;  V212 tmp164      [V212,T228] (  4,  64   )     int  ->  rsi         "dup spill"
-;  V213 tmp165      [V213,T229] (  4,  64   )     int  ->  rsi         "dup spill"
-;  V214 tmp166      [V214,T489] (  2,  32   )     int  ->  rdi         "Inlining Arg"
+;  V211 tmp163      [V211,T236] (  3,  48   )     ref  ->  rax         class-hnd "impAppendStmt" <int[]>
+;  V212 tmp164      [V212,T185] (  4,  64   )     int  ->  rsi         "dup spill"
+;  V213 tmp165      [V213,T186] (  4,  64   )     int  ->  rsi         "dup spill"
+;  V214 tmp166      [V214,T380] (  2,  32   )     int  ->  rdi         "Inlining Arg"
 ;* V215 tmp167      [V215    ] (  0,   0   )     int  ->  zero-ref    "Inline stloc first use temp"
-;  V216 tmp168      [V216,T209] (  4,  64   )     ref  ->  rcx         class-hnd "impAppendStmt" <int[]>
-;  V217 tmp169      [V217,T230] (  4,  64   )     int  ->  rdx         "dup spill"
-;  V218 tmp170      [V218,T231] (  4,  64   )     int  ->  rdx         "dup spill"
-;  V219 tmp171      [V219,T490] (  2,  32   )     int  ->  rdi         "Inlining Arg"
+;  V216 tmp168      [V216,T179] (  4,  64   )     ref  ->  rcx         class-hnd "impAppendStmt" <int[]>
+;  V217 tmp169      [V217,T187] (  4,  64   )     int  ->  rdx         "dup spill"
+;  V218 tmp170      [V218,T188] (  4,  64   )     int  ->  rdx         "dup spill"
+;  V219 tmp171      [V219,T381] (  2,  32   )     int  ->  rdi         "Inlining Arg"
 ;* V220 tmp172      [V220    ] (  0,   0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;  V221 tmp173      [V221,T49] (  5, 160   )     ref  ->  rax         class-hnd "impAppendStmt" <int[]>
-;  V222 tmp174      [V222,T75] (  4, 128   )     int  ->  rcx         "dup spill"
-;  V223 tmp175      [V223,T265] (  2,  64   )     int  ->  rdi         "Inlining Arg"
-;  V224 tmp176      [V224,T76] (  4, 128   )     int  ->  rcx         "dup spill"
+;  V222 tmp174      [V222,T66] (  4, 128   )     int  ->  rcx         "dup spill"
+;  V223 tmp175      [V223,T213] (  2,  64   )     int  ->  rdi         "Inlining Arg"
+;  V224 tmp176      [V224,T67] (  4, 128   )     int  ->  rcx         "dup spill"
 ;* V225 tmp177      [V225    ] (  0,   0   )     int  ->  zero-ref    "Inlining Arg"
-;  V226 tmp178      [V226,T77] (  4, 128   )     int  ->  r13         "Inlining Arg"
-;  V227 tmp179      [V227,T137] (  3,  96   )     int  ->  rdi         "Inlining Arg"
+;  V226 tmp178      [V226,T68] (  4, 128   )     int  ->  r13         "Inlining Arg"
+;  V227 tmp179      [V227,T121] (  3,  96   )     int  ->  rdi         "Inlining Arg"
 ;* V228 tmp180      [V228    ] (  0,   0   )     int  ->  zero-ref    "Inline stloc first use temp"
-;  V229 tmp181      [V229,T56] (  4, 128   )     ref  ->  rcx         class-hnd "impAppendStmt" <int[]>
-;  V230 tmp182      [V230,T78] (  4, 128   )     int  ->  rdx         "dup spill"
-;  V231 tmp183      [V231,T79] (  4, 128   )     int  ->  rdx         "dup spill"
-;  V232 tmp184      [V232,T266] (  2,  64   )     int  ->  rsi         "Inlining Arg"
-;  V233 tmp185      [V233,T80] (  4, 128   )     int  ->  r13         "Inlining Arg"
-;  V234 tmp186      [V234,T138] (  3,  96   )     int  ->  rsi         "Inlining Arg"
+;  V229 tmp181      [V229,T53] (  4, 128   )     ref  ->  rcx         class-hnd "impAppendStmt" <int[]>
+;  V230 tmp182      [V230,T69] (  4, 128   )     int  ->  rdx         "dup spill"
+;  V231 tmp183      [V231,T70] (  4, 128   )     int  ->  rdx         "dup spill"
+;  V232 tmp184      [V232,T214] (  2,  64   )     int  ->  rsi         "Inlining Arg"
+;  V233 tmp185      [V233,T71] (  4, 128   )     int  ->  r13         "Inlining Arg"
+;  V234 tmp186      [V234,T122] (  3,  96   )     int  ->  rsi         "Inlining Arg"
 ;* V235 tmp187      [V235    ] (  0,   0   )     int  ->  zero-ref    "Inline stloc first use temp"
-;  V236 tmp188      [V236,T210] (  4,  64   )     ref  ->  rax         class-hnd "impAppendStmt" <int[]>
-;  V237 tmp189      [V237,T232] (  4,  64   )     int  ->  rcx         "dup spill"
-;  V238 tmp190      [V238,T233] (  4,  64   )     int  ->  rcx         "dup spill"
-;  V239 tmp191      [V239,T491] (  2,  32   )     int  ->  rsi         "Inlining Arg"
+;  V236 tmp188      [V236,T180] (  4,  64   )     ref  ->  rax         class-hnd "impAppendStmt" <int[]>
+;  V237 tmp189      [V237,T189] (  4,  64   )     int  ->  rcx         "dup spill"
+;  V238 tmp190      [V238,T190] (  4,  64   )     int  ->  rcx         "dup spill"
+;  V239 tmp191      [V239,T382] (  2,  32   )     int  ->  rsi         "Inlining Arg"
 ;* V240 tmp192      [V240    ] (  0,   0   )     int  ->  zero-ref    "Inline stloc first use temp"
-;  V241 tmp193      [V241,T295] (  3,  48   )     ref  ->  r13         class-hnd "impAppendStmt" <int[]>
-;  V242 tmp194      [V242,T234] (  4,  64   )     int  ->  rax         "dup spill"
-;  V243 tmp195      [V243,T235] (  4,  64   )     int  ->  rax         "dup spill"
-;  V244 tmp196      [V244,T492] (  2,  32   )     int  ->  rcx         "Inlining Arg"
+;  V241 tmp193      [V241,T237] (  3,  48   )     ref  ->  r13         class-hnd "impAppendStmt" <int[]>
+;  V242 tmp194      [V242,T191] (  4,  64   )     int  ->  rax         "dup spill"
+;  V243 tmp195      [V243,T192] (  4,  64   )     int  ->  rax         "dup spill"
+;  V244 tmp196      [V244,T383] (  2,  32   )     int  ->  rcx         "Inlining Arg"
 ;* V245 tmp197      [V245    ] (  0,   0   )     int  ->  zero-ref    "Inline stloc first use temp"
-;  V246 tmp198      [V246,T194] (  5,  80   )     ref  ->  rax         class-hnd "impAppendStmt" <int[]>
-;  V247 tmp199      [V247,T236] (  4,  64   )     int  ->  rcx         "dup spill"
-;  V248 tmp200      [V248,T237] (  4,  64   )     int  ->  rcx         "dup spill"
-;  V249 tmp201      [V249,T493] (  2,  32   )     int  ->  rsi         "Inlining Arg"
-;  V250 tmp202      [V250,T441] (  4,  32   )     int  ->  rsi         "Inline stloc first use temp"
-;  V251 tmp203      [V251,T296] (  3,  48   )     ref  ->  rdi         class-hnd "impAppendStmt" <int[]>
-;  V252 tmp204      [V252,T494] (  2,  32   )     int  ->  rax         "Strict ordering of exceptions for Array store"
-;  V253 tmp205      [V253,T495] (  2,  32   )     int  ->  rcx         "Inlining Arg"
-;  V254 tmp206      [V254,T139] (  3,  96   )     int  ->  rcx         "Inline stloc first use temp"
-;  V255 tmp207      [V255,T81] (  4, 128   )     int  ->  rdx         "Inline stloc first use temp"
-;  V256 tmp208      [V256,T38] (  3, 192   )     ref  ->  rcx         class-hnd "impAppendStmt" <int[]>
+;  V246 tmp198      [V246,T415] (  5,  20   )     ref  ->  rax         class-hnd "impAppendStmt" <int[]>
+;  V247 tmp199      [V247,T437] (  4,  16   )     int  ->  rcx         "dup spill"
+;  V248 tmp200      [V248,T438] (  4,  16   )     int  ->  rcx         "dup spill"
+;  V249 tmp201      [V249,T521] (  2,   8   )     int  ->  rsi         "Inlining Arg"
+;  V250 tmp202      [V250,T493] (  4,   8   )     int  ->  rsi         "Inline stloc first use temp"
+;  V251 tmp203      [V251,T449] (  3,  12   )     ref  ->  rdi         class-hnd "impAppendStmt" <int[]>
+;  V252 tmp204      [V252,T522] (  2,   8   )     int  ->  rax         "Strict ordering of exceptions for Array store"
+;  V253 tmp205      [V253,T384] (  2,  32   )     int  ->  rcx         "Inlining Arg"
+;  V254 tmp206      [V254,T123] (  3,  96   )     int  ->  rcx         "Inline stloc first use temp"
+;  V255 tmp207      [V255,T72] (  4, 128   )     int  ->  rdx         "Inline stloc first use temp"
+;  V256 tmp208      [V256,T37] (  3, 192   )     ref  ->  rcx         class-hnd "impAppendStmt" <int[]>
 ;* V257 tmp209      [V257    ] (  0,   0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <System.Text.RegularExpressions.Match>
-;  V258 tmp210      [V258,T39] (  3, 192   )   byref  ->  rcx         "dup spill"
-;  V259 tmp211      [V259,T496] (  2,  32   )     int  ->  rsi         "Inlining Arg"
-;  V260 tmp212      [V260,T140] (  3,  96   )     int  ->  rdi         "Inline stloc first use temp"
-;  V261 tmp213      [V261,T82] (  4, 128   )     int  ->  rsi         "Inline stloc first use temp"
-;  V262 tmp214      [V262,T40] (  3, 192   )     ref  ->  rdi         class-hnd "impAppendStmt" <int[]>
+;  V258 tmp210      [V258,T38] (  3, 192   )   byref  ->  rcx         "dup spill"
+;  V259 tmp211      [V259,T523] (  2,   8   )     int  ->  rsi         "Inlining Arg"
+;  V260 tmp212      [V260,T124] (  3,  96   )     int  ->  rdi         "Inline stloc first use temp"
+;  V261 tmp213      [V261,T73] (  4, 128   )     int  ->  rsi         "Inline stloc first use temp"
+;  V262 tmp214      [V262,T39] (  3, 192   )     ref  ->  rdi         class-hnd "impAppendStmt" <int[]>
 ;* V263 tmp215      [V263    ] (  0,   0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <System.Text.RegularExpressions.Match>
-;  V264 tmp216      [V264,T41] (  3, 192   )   byref  ->  rdi         "dup spill"
-;  V265 tmp217      [V265,T514] (  3,  24   )     int  ->  rdx         "Inline return value spill temp"
-;  V266 tmp218      [V266,T274] (  6,  48   )     int  ->  rdx         "Inline stloc first use temp"
+;  V264 tmp216      [V264,T40] (  3, 192   )   byref  ->  rdi         "dup spill"
+;  V265 tmp217      [V265,T395] (  3,  24   )     int  ->  rdx         "Inline return value spill temp"
+;  V266 tmp218      [V266,T221] (  6,  48   )     int  ->  rdx         "Inline stloc first use temp"
 ;* V267 tmp219      [V267    ] (  0,   0   )     int  ->  zero-ref   
 ;* V268 tmp220      [V268    ] (  0,   0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V269 tmp221      [V269    ] (  0,   0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
-;  V270 tmp222      [V270,T515] (  3,  24   )     int  ->  rdx         "Inline return value spill temp"
-;  V271 tmp223      [V271,T275] (  6,  48   )     int  ->  rdx         "Inline stloc first use temp"
+;  V270 tmp222      [V270,T396] (  3,  24   )     int  ->  rdx         "Inline return value spill temp"
+;  V271 tmp223      [V271,T222] (  6,  48   )     int  ->  rdx         "Inline stloc first use temp"
 ;* V272 tmp224      [V272    ] (  0,   0   )     int  ->  zero-ref   
 ;* V273 tmp225      [V273    ] (  0,   0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V274 tmp226      [V274    ] (  0,   0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
-;  V275 tmp227      [V275,T516] (  3,  24   )     int  ->  rdi         "Inline return value spill temp"
-;  V276 tmp228      [V276,T276] (  6,  48   )     int  ->  rdi         "Inline stloc first use temp"
+;  V275 tmp227      [V275,T397] (  3,  24   )     int  ->  rdi         "Inline return value spill temp"
+;  V276 tmp228      [V276,T223] (  6,  48   )     int  ->  rdi         "Inline stloc first use temp"
 ;* V277 tmp229      [V277    ] (  0,   0   )     int  ->  zero-ref   
 ;* V278 tmp230      [V278    ] (  0,   0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V279 tmp231      [V279    ] (  0,   0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
-;  V280 tmp232      [V280,T517] (  3,  24   )   ubyte  ->  rax         "Inline return value spill temp"
-;  V281 tmp233      [V281,T297] (  3,  48   )   byref  ->  rax         "Inlining Arg"
-;  V282 tmp234      [V282,T415] (  5,  40   )     ref  ->  rdi         class-hnd "Inline stloc first use temp" <uint[]>
-;  V283 tmp235      [V283,T86] (  7, 112   )  ushort  ->  r12         "Inlining Arg"
-;  V284 tmp236      [V284,T44] ( 11, 176   )     ref  ->  r13         class-hnd exact "Inlining Arg" <System.String>
-;  V285 tmp237      [V285,T442] (  4,  32   )     int  ->  rsi         "Inline stloc first use temp"
-;  V286 tmp238      [V286,T518] (  3,  24   )     int  ->  rcx         "Inline stloc first use temp"
-;  V287 tmp239      [V287,T519] (  3,  24   )     int  ->   r8         "Inline stloc first use temp"
-;  V288 tmp240      [V288,T520] (  3,  24   )     int  ->  rcx         "Inline stloc first use temp"
-;  V289 tmp241      [V289,T521] (  3,  24   )     int  ->   r8         "Inline stloc first use temp"
-;  V290 tmp242      [V290,T522] (  3,  24   )     int  ->  [rbp-0x44]  spill-single-def "Inline stloc first use temp"
-;  V291 tmp243      [V291,T271] (  7,  56   )   ubyte  ->  rax         "Inline stloc first use temp"
-;  V292 tmp244      [V292,T523] (  3,  24   )     int  ->  rsi         "Inline return value spill temp"
-;  V293 tmp245      [V293,T23] (  6, 256   )     int  ->  rdi         "Inline stloc first use temp"
+;  V280 tmp232      [V280,T398] (  3,  24   )   ubyte  ->  rax         "Inline return value spill temp"
+;  V281 tmp233      [V281,T238] (  3,  48   )   byref  ->  rax         "Inlining Arg"
+;  V282 tmp234      [V282,T329] (  5,  40   )     ref  ->  rdi         class-hnd "Inline stloc first use temp" <uint[]>
+;  V283 tmp235      [V283,T76] (  7, 112   )  ushort  ->  r12         "Inlining Arg"
+;  V284 tmp236      [V284,T43] ( 11, 176   )     ref  ->  r13         class-hnd exact "Inlining Arg" <System.String>
+;  V285 tmp237      [V285,T350] (  4,  32   )     int  ->  rsi         "Inline stloc first use temp"
+;  V286 tmp238      [V286,T399] (  3,  24   )     int  ->  rcx         "Inline stloc first use temp"
+;  V287 tmp239      [V287,T400] (  3,  24   )     int  ->   r8         "Inline stloc first use temp"
+;  V288 tmp240      [V288,T401] (  3,  24   )     int  ->  rcx         "Inline stloc first use temp"
+;  V289 tmp241      [V289,T402] (  3,  24   )     int  ->   r8         "Inline stloc first use temp"
+;  V290 tmp242      [V290,T403] (  3,  24   )     int  ->  [rbp-0x44]  spill-single-def "Inline stloc first use temp"
+;  V291 tmp243      [V291,T218] (  7,  56   )   ubyte  ->  rax         "Inline stloc first use temp"
+;  V292 tmp244      [V292,T404] (  3,  24   )     int  ->  rax         "Inline return value spill temp"
+;  V293 tmp245      [V293,T23] (  6, 256   )     int  ->  rsi         "Inline stloc first use temp"
 ;* V294 tmp246      [V294    ] (  0,   0   )     int  ->  zero-ref   
 ;* V295 tmp247      [V295    ] (  0,   0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V296 tmp248      [V296    ] (  0,   0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
-;  V297 tmp249      [V297,T524] (  3,  24   )     int  ->  rsi         "Inline return value spill temp"
-;  V298 tmp250      [V298,T24] (  6, 256   )     int  ->  rdi         "Inline stloc first use temp"
+;  V297 tmp249      [V297,T405] (  3,  24   )     int  ->  rax         "Inline return value spill temp"
+;  V298 tmp250      [V298,T24] (  6, 256   )     int  ->  rsi         "Inline stloc first use temp"
 ;* V299 tmp251      [V299    ] (  0,   0   )     int  ->  zero-ref   
 ;* V300 tmp252      [V300    ] (  0,   0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V301 tmp253      [V301    ] (  0,   0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
-;  V302 tmp254      [V302,T525] (  3,  24   )     int  ->  rdi         "Inline return value spill temp"
+;  V302 tmp254      [V302,T406] (  3,  24   )     int  ->  rsi         "Inline return value spill temp"
 ;  V303 tmp255      [V303,T25] (  6, 256   )     int  ->  rdi         "Inline stloc first use temp"
 ;* V304 tmp256      [V304    ] (  0,   0   )     int  ->  zero-ref   
 ;* V305 tmp257      [V305    ] (  0,   0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V306 tmp258      [V306    ] (  0,   0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
-;  V307 tmp259      [V307,T141] (  3,  96   )   ubyte  ->  rax         "Inline return value spill temp"
+;  V307 tmp259      [V307,T125] (  3,  96   )   ubyte  ->  rax         "Inline return value spill temp"
 ;  V308 tmp260      [V308,T35] (  5, 224   )     ref  ->  rdi         class-hnd "Inline stloc first use temp" <uint[]>
 ;  V309 tmp261      [V309,T10] (  7, 512   )  ushort  ->  r13         "Inlining Arg"
-;  V310 tmp262      [V310,T83] (  4, 128   )     int  ->  rsi         "Inline stloc first use temp"
-;  V311 tmp263      [V311,T142] (  3,  96   )     int  ->   r8         "Inline stloc first use temp"
-;  V312 tmp264      [V312,T143] (  3,  96   )     int  ->   r9         "Inline stloc first use temp"
-;  V313 tmp265      [V313,T144] (  3,  96   )     int  ->  rdx         "Inline stloc first use temp"
-;  V314 tmp266      [V314,T145] (  3,  96   )     int  ->   r8         "Inline stloc first use temp"
-;  V315 tmp267      [V315,T146] (  3,  96   )     int  ->  [rbp-0x48]  spill-single-def "Inline stloc first use temp"
+;  V310 tmp262      [V310,T74] (  4, 128   )     int  ->  rsi         "Inline stloc first use temp"
+;  V311 tmp263      [V311,T126] (  3,  96   )     int  ->   r8         "Inline stloc first use temp"
+;  V312 tmp264      [V312,T127] (  3,  96   )     int  ->   r9         "Inline stloc first use temp"
+;  V313 tmp265      [V313,T128] (  3,  96   )     int  ->  rdx         "Inline stloc first use temp"
+;  V314 tmp266      [V314,T129] (  3,  96   )     int  ->   r8         "Inline stloc first use temp"
+;  V315 tmp267      [V315,T130] (  3,  96   )     int  ->  [rbp-0x48]  spill-single-def "Inline stloc first use temp"
 ;  V316 tmp268      [V316,T34] (  7, 224   )   ubyte  ->  rax         "Inline stloc first use temp"
-;  V317 tmp269      [V317,T419] (  4,  40   )     int  ->  rdx         "Inline return value spill temp"
-;  V318 tmp270      [V318,T447] (  3,  32   )     int  ->  rsi         "Inline return value spill temp"
+;  V317 tmp269      [V317,T333] (  4,  40   )     int  ->  rdx         "Inline return value spill temp"
+;  V318 tmp270      [V318,T355] (  3,  32   )     int  ->  rsi         "Inline return value spill temp"
 ;  V319 tmp271      [V319,T26] (  6, 256   )     int  ->  rax         "Inline stloc first use temp"
 ;* V320 tmp272      [V320    ] (  0,   0   )     int  ->  zero-ref   
 ;* V321 tmp273      [V321    ] (  0,   0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V322 tmp274      [V322    ] (  0,   0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
-;  V323 tmp275      [V323,T497] (  2,  32   )     int  ->  rax         "impAppendStmt"
+;  V323 tmp275      [V323,T385] (  2,  32   )     int  ->  rax         "impAppendStmt"
 ;* V324 tmp276      [V324    ] (  0,   0   )     ref  ->  zero-ref   
 ;* V325 tmp277      [V325    ] (  0,   0   )     int  ->  zero-ref   
 ;* V326 tmp278      [V326    ] (  0,   0   )     ref  ->  zero-ref   
 ;* V327 tmp279      [V327    ] (  0,   0   )     int  ->  zero-ref   
-;  V328 tmp280      [V328,T526] (  3,  24   )     int  ->  rdx        
-;  V329 tmp281      [V329,T448] (  3,  32   )     int  ->  rax         "Inline return value spill temp"
-;  V330 tmp282      [V330,T420] (  4,  40   )     int  ->  r12         "Inline return value spill temp"
-;  V331 tmp283      [V331,T449] (  3,  32   )     int  ->  r13         "Inline return value spill temp"
-;  V332 tmp284      [V332,T360] (  3,  48   )     int  ->  rdi         "Inlining Arg"
+;  V328 tmp280      [V328,T407] (  3,  24   )     int  ->  rdx        
+;  V329 tmp281      [V329,T356] (  3,  32   )     int  ->  rax         "Inline return value spill temp"
+;  V330 tmp282      [V330,T334] (  4,  40   )     int  ->  r12         "Inline return value spill temp"
+;  V331 tmp283      [V331,T357] (  3,  32   )     int  ->  r13         "Inline return value spill temp"
+;  V332 tmp284      [V332,T290] (  3,  48   )     int  ->  rdi         "Inlining Arg"
 ;* V333 tmp285      [V333    ] (  0,   0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
 ;* V334 tmp286      [V334    ] (  0,   0   )   byref  ->  zero-ref    "Inlining Arg"
 ;* V335 tmp287      [V335    ] (  0,   0   )     int  ->  zero-ref    "Inline return value spill temp"
 ;* V336 tmp288      [V336    ] (  0,   0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
 ;* V337 tmp289      [V337    ] (  0,   0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
 ;* V338 tmp290      [V338    ] (  0,   0   )   byref  ->  zero-ref    "Inlining Arg"
 ;* V339 tmp291      [V339    ] (  0,   0   )   short  ->  zero-ref    "Inlining Arg"
 ;* V340 tmp292      [V340    ] (  0,   0   )     int  ->  zero-ref    "Inlining Arg"
-;  V341 tmp293      [V341,T418] (  5,  40   )     int  ->  rax         "Inline return value spill temp"
-;  V342 tmp294      [V342,T238] (  4,  64   )   short  ->  rsi         "Inlining Arg"
+;  V341 tmp293      [V341,T332] (  5,  40   )     int  ->  rax         "Inline return value spill temp"
+;  V342 tmp294      [V342,T193] (  4,  64   )   short  ->  rsi         "Inlining Arg"
 ;* V343 tmp295      [V343    ] (  0,   0   )  ushort  ->  zero-ref    "Inlining Arg"
 ;* V344 tmp296      [V344    ] (  0,   0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
 ;  V345 tmp297      [V345,T28] (  4, 256   )     int  ->  rax         "Inline stloc first use temp"
 ;* V346 tmp298      [V346    ] (  0,   0   )     int  ->  zero-ref   
 ;* V347 tmp299      [V347    ] (  0,   0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V348 tmp300      [V348    ] (  0,   0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
-;  V349 tmp301      [V349,T450] (  3,  32   )     int  ->  rax         "Inline return value spill temp"
-;  V350 tmp302      [V350,T421] (  4,  40   )     int  ->  r12         "Inline return value spill temp"
-;  V351 tmp303      [V351,T451] (  3,  32   )     int  ->  r13         "Inline return value spill temp"
+;  V349 tmp301      [V349,T358] (  3,  32   )     int  ->  rax         "Inline return value spill temp"
+;  V350 tmp302      [V350,T335] (  4,  40   )     int  ->  r12         "Inline return value spill temp"
+;  V351 tmp303      [V351,T359] (  3,  32   )     int  ->  r13         "Inline return value spill temp"
 ;  V352 tmp304      [V352,T27] (  6, 256   )     int  ->  rdi         "Inline stloc first use temp"
 ;* V353 tmp305      [V353    ] (  0,   0   )     int  ->  zero-ref   
 ;* V354 tmp306      [V354    ] (  0,   0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V355 tmp307      [V355    ] (  0,   0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
-;  V356 tmp308      [V356,T147] (  3,  96   )   ubyte  ->  rax         "Inline return value spill temp"
+;  V356 tmp308      [V356,T131] (  3,  96   )   ubyte  ->  rax         "Inline return value spill temp"
 ;  V357 tmp309      [V357,T36] (  5, 224   )     ref  ->  rsi         class-hnd "Inline stloc first use temp" <uint[]>
-;  V358 tmp310      [V358,T11] (  6, 448   )  ushort  ->  rdi         "Inlining Arg"
-;  V359 tmp311      [V359,T84] (  4, 128   )     int  ->  rdx         "Inline stloc first use temp"
-;  V360 tmp312      [V360,T148] (  3,  96   )     int  ->   r8         "Inline stloc first use temp"
-;  V361 tmp313      [V361,T149] (  3,  96   )     int  ->   r9         "Inline stloc first use temp"
-;  V362 tmp314      [V362,T452] (  3,  32   )     int  ->  rdi         "Inline return value spill temp"
-;  V363 tmp315      [V363,T453] (  3,  32   )     int  ->  rdi         "Inline return value spill temp"
-;  V364 tmp316      [V364,T422] (  4,  40   )     int  ->  rdi         "Inline return value spill temp"
-;  V365 tmp317      [V365,T280] (  4,  48   )     int  ->  rsi         "Inline return value spill temp"
-;  V366 tmp318      [V366,T277] (  6,  48   )     int  ->  rax         "Inline stloc first use temp"
+;  V358 tmp310      [V358,T12] (  6, 448   )  ushort  ->  rdi         "Inlining Arg"
+;  V359 tmp311      [V359,T75] (  4, 128   )     int  ->  rdx         "Inline stloc first use temp"
+;  V360 tmp312      [V360,T132] (  3,  96   )     int  ->   r8         "Inline stloc first use temp"
+;  V361 tmp313      [V361,T133] (  3,  96   )     int  ->   r9         "Inline stloc first use temp"
+;  V362 tmp314      [V362,T360] (  3,  32   )     int  ->  rdi         "Inline return value spill temp"
+;  V363 tmp315      [V363,T361] (  3,  32   )     int  ->  rdi         "Inline return value spill temp"
+;  V364 tmp316      [V364,T336] (  4,  40   )     int  ->  rdi         "Inline return value spill temp"
+;  V365 tmp317      [V365,T227] (  4,  48   )     int  ->  rsi         "Inline return value spill temp"
+;  V366 tmp318      [V366,T224] (  6,  48   )     int  ->  rax         "Inline stloc first use temp"
 ;* V367 tmp319      [V367    ] (  0,   0   )     int  ->  zero-ref   
 ;* V368 tmp320      [V368    ] (  0,   0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V369 tmp321      [V369    ] (  0,   0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
-;  V370 tmp322      [V370,T454] (  3,  32   )     int  ->  rdx         "Inline return value spill temp"
-;  V371 tmp323      [V371,T278] (  6,  48   )     int  ->  rax         "Inline stloc first use temp"
+;  V370 tmp322      [V370,T362] (  3,  32   )     int  ->  rdx         "Inline return value spill temp"
+;  V371 tmp323      [V371,T225] (  6,  48   )     int  ->  rax         "Inline stloc first use temp"
 ;* V372 tmp324      [V372    ] (  0,   0   )     int  ->  zero-ref   
 ;* V373 tmp325      [V373    ] (  0,   0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V374 tmp326      [V374    ] (  0,   0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
-;  V375 tmp327      [V375,T455] (  3,  32   )     int  ->  rdx         "Inline return value spill temp"
-;  V376 tmp328      [V376,T279] (  6,  48   )     int  ->  rdi         "Inline stloc first use temp"
+;  V375 tmp327      [V375,T363] (  3,  32   )     int  ->  rdx         "Inline return value spill temp"
+;  V376 tmp328      [V376,T226] (  6,  48   )     int  ->  rdi         "Inline stloc first use temp"
 ;* V377 tmp329      [V377    ] (  0,   0   )     int  ->  zero-ref   
 ;* V378 tmp330      [V378    ] (  0,   0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V379 tmp331      [V379    ] (  0,   0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
-;  V380 tmp332      [V380,T527] (  3,  24   )   ubyte  ->  rax         "Inline return value spill temp"
-;  V381 tmp333      [V381,T298] (  3,  48   )   byref  ->  rax         "Inlining Arg"
-;  V382 tmp334      [V382,T416] (  5,  40   )     ref  ->  rdi         class-hnd "Inline stloc first use temp" <uint[]>
-;  V383 tmp335      [V383,T91] (  6,  96   )  ushort  ->  r12         "Inlining Arg"
-;  V384 tmp336      [V384,T299] (  3,  48   )     ref  ->  [rbp-0x60]  class-hnd exact spill-single-def "Inlining Arg" <System.String>
-;  V385 tmp337      [V385,T443] (  4,  32   )     int  ->  rsi         "Inline stloc first use temp"
-;  V386 tmp338      [V386,T528] (  3,  24   )     int  ->  rcx         "Inline stloc first use temp"
-;  V387 tmp339      [V387,T529] (  3,  24   )     int  ->   r8         "Inline stloc first use temp"
-;  V388 tmp340      [V388,T456] (  3,  32   )     int  ->  rdx         "Inline return value spill temp"
+;  V380 tmp332      [V380,T408] (  3,  24   )   ubyte  ->  rax         "Inline return value spill temp"
+;  V381 tmp333      [V381,T239] (  3,  48   )   byref  ->  rax         "Inlining Arg"
+;  V382 tmp334      [V382,T330] (  5,  40   )     ref  ->  rdi         class-hnd "Inline stloc first use temp" <uint[]>
+;  V383 tmp335      [V383,T81] (  6,  96   )  ushort  ->  r12         "Inlining Arg"
+;  V384 tmp336      [V384,T240] (  3,  48   )     ref  ->  [rbp-0x60]  class-hnd exact spill-single-def "Inlining Arg" <System.String>
+;  V385 tmp337      [V385,T351] (  4,  32   )     int  ->  rsi         "Inline stloc first use temp"
+;  V386 tmp338      [V386,T409] (  3,  24   )     int  ->  rcx         "Inline stloc first use temp"
+;  V387 tmp339      [V387,T410] (  3,  24   )     int  ->   r8         "Inline stloc first use temp"
+;  V388 tmp340      [V388,T364] (  3,  32   )     int  ->  rdx         "Inline return value spill temp"
 ;  V389 tmp341      [V389,T09] ( 23, 513   )   byref  ->  r14         single-def "field V01._reference (fldOffset=0x0)" P-INDEP
-;  V390 tmp342      [V390,T08] ( 28, 553   )     int  ->  r15         single-def "field V01._length (fldOffset=0x8)" P-INDEP
+;  V390 tmp342      [V390,T07] ( 28, 553   )     int  ->  r15         single-def "field V01._length (fldOffset=0x8)" P-INDEP
 ;* V391 tmp343      [V391    ] (  0,   0   )   byref  ->  zero-ref    "field V74._reference (fldOffset=0x0)" P-INDEP
 ;* V392 tmp344      [V392    ] (  0,   0   )     int  ->  zero-ref    "field V74._length (fldOffset=0x8)" P-INDEP
 ;* V393 tmp345      [V393    ] (  0,   0   )   byref  ->  zero-ref    "field V269._reference (fldOffset=0x0)" P-INDEP
 ;* V394 tmp346      [V394    ] (  0,   0   )     int  ->  zero-ref    "field V269._length (fldOffset=0x8)" P-INDEP
 ;* V395 tmp347      [V395    ] (  0,   0   )   byref  ->  zero-ref    "field V274._reference (fldOffset=0x0)" P-INDEP
 ;* V396 tmp348      [V396    ] (  0,   0   )     int  ->  zero-ref    "field V274._length (fldOffset=0x8)" P-INDEP
 ;* V397 tmp349      [V397    ] (  0,   0   )   byref  ->  zero-ref    "field V279._reference (fldOffset=0x0)" P-INDEP
 ;* V398 tmp350      [V398    ] (  0,   0   )     int  ->  zero-ref    "field V279._length (fldOffset=0x8)" P-INDEP
 ;* V399 tmp351      [V399    ] (  0,   0   )   byref  ->  zero-ref    "field V296._reference (fldOffset=0x0)" P-INDEP
 ;* V400 tmp352      [V400    ] (  0,   0   )     int  ->  zero-ref    "field V296._length (fldOffset=0x8)" P-INDEP
 ;* V401 tmp353      [V401    ] (  0,   0   )   byref  ->  zero-ref    "field V301._reference (fldOffset=0x0)" P-INDEP
 ;* V402 tmp354      [V402    ] (  0,   0   )     int  ->  zero-ref    "field V301._length (fldOffset=0x8)" P-INDEP
 ;* V403 tmp355      [V403    ] (  0,   0   )   byref  ->  zero-ref    "field V306._reference (fldOffset=0x0)" P-INDEP
 ;* V404 tmp356      [V404    ] (  0,   0   )     int  ->  zero-ref    "field V306._length (fldOffset=0x8)" P-INDEP
 ;* V405 tmp357      [V405    ] (  0,   0   )   byref  ->  zero-ref    "field V322._reference (fldOffset=0x0)" P-INDEP
 ;* V406 tmp358      [V406    ] (  0,   0   )     int  ->  zero-ref    "field V322._length (fldOffset=0x8)" P-INDEP
-;  V407 tmp359      [V407,T510] (  3,  24   )   byref  ->  rdi         "field V333._reference (fldOffset=0x0)" P-INDEP
+;  V407 tmp359      [V407,T391] (  3,  24   )   byref  ->  rdi         "field V333._reference (fldOffset=0x0)" P-INDEP
 ;* V408 tmp360      [V408    ] (  0,   0   )     int  ->  zero-ref    "field V333._length (fldOffset=0x8)" P-INDEP
 ;* V409 tmp361      [V409    ] (  0,   0   )   byref  ->  zero-ref    "field V336._reference (fldOffset=0x0)" P-INDEP
 ;* V410 tmp362      [V410    ] (  0,   0   )     int  ->  zero-ref    "field V336._length (fldOffset=0x8)" P-INDEP
 ;* V411 tmp363      [V411    ] (  0,   0   )   byref  ->  zero-ref    "field V337._reference (fldOffset=0x0)" P-INDEP
 ;* V412 tmp364      [V412    ] (  0,   0   )     int  ->  zero-ref    "field V337._length (fldOffset=0x8)" P-INDEP
 ;* V413 tmp365      [V413    ] (  0,   0   )   byref  ->  zero-ref    "field V344._reference (fldOffset=0x0)" P-INDEP
 ;* V414 tmp366      [V414    ] (  0,   0   )     int  ->  zero-ref    "field V344._length (fldOffset=0x8)" P-INDEP
 ;* V415 tmp367      [V415    ] (  0,   0   )   byref  ->  zero-ref    "field V348._reference (fldOffset=0x0)" P-INDEP
 ;* V416 tmp368      [V416    ] (  0,   0   )     int  ->  zero-ref    "field V348._length (fldOffset=0x8)" P-INDEP
 ;* V417 tmp369      [V417    ] (  0,   0   )   byref  ->  zero-ref    "field V355._reference (fldOffset=0x0)" P-INDEP
 ;* V418 tmp370      [V418    ] (  0,   0   )     int  ->  zero-ref    "field V355._length (fldOffset=0x8)" P-INDEP
 ;* V419 tmp371      [V419    ] (  0,   0   )   byref  ->  zero-ref    "field V369._reference (fldOffset=0x0)" P-INDEP
 ;* V420 tmp372      [V420    ] (  0,   0   )     int  ->  zero-ref    "field V369._length (fldOffset=0x8)" P-INDEP
 ;* V421 tmp373      [V421    ] (  0,   0   )   byref  ->  zero-ref    "field V374._reference (fldOffset=0x0)" P-INDEP
 ;* V422 tmp374      [V422    ] (  0,   0   )     int  ->  zero-ref    "field V374._length (fldOffset=0x8)" P-INDEP
 ;* V423 tmp375      [V423    ] (  0,   0   )   byref  ->  zero-ref    "field V379._reference (fldOffset=0x0)" P-INDEP
 ;* V424 tmp376      [V424    ] (  0,   0   )     int  ->  zero-ref    "field V379._length (fldOffset=0x8)" P-INDEP
-;  V425 tmp377      [V425,T536] (  3,   6   )     ref  ->  rdi         single-def "arr expr"
-;  V426 tmp378      [V426,T300] (  3,  48   )     ref  ->  rdi         "arr expr"
-;  V427 tmp379      [V427,T361] (  3,  48   )     int  ->  rax         "index expr"
-;  V428 tmp380      [V428,T301] (  3,  48   )     ref  ->  r13         "arr expr"
-;  V429 tmp381      [V429,T362] (  3,  48   )     int  ->  rdi         "index expr"
-;  V430 tmp382      [V430,T302] (  3,  48   )     ref  ->  rcx         "arr expr"
-;  V431 tmp383      [V431,T363] (  3,  48   )     int  ->  rdx         "index expr"
-;  V432 tmp384      [V432,T303] (  3,  48   )     ref  ->  rax         "arr expr"
-;  V433 tmp385      [V433,T364] (  3,  48   )     int  ->  rcx         "index expr"
-;  V434 tmp386      [V434,T457] (  2,  32   )     ref  ->  rcx         "arr expr"
-;  V435 tmp387      [V435,T365] (  3,  48   )     int  ->  rdi         "index expr"
-;  V436 tmp388      [V436,T304] (  3,  48   )     ref  ->  rcx         "arr expr"
-;  V437 tmp389      [V437,T366] (  3,  48   )     int  ->  rax         "index expr"
-;  V438 tmp390      [V438,T305] (  3,  48   )     ref  ->  rdi         "arr expr"
-;  V439 tmp391      [V439,T367] (  3,  48   )     int  ->  rax         "index expr"
-;  V440 tmp392      [V440,T15] (  3, 384   )     ref  ->  rsi         "arr expr"
-;  V441 tmp393      [V441,T16] (  3, 384   )     int  ->  rcx         "index expr"
-;  V442 tmp394      [V442,T42] (  3, 192   )     ref  ->  rsi         "arr expr"
-;  V443 tmp395      [V443,T306] (  3,  48   )     ref  ->  rsi         "arr expr"
-;  V444 tmp396      [V444,T368] (  3,  48   )     int  ->  rax         "index expr"
-;  V445 tmp397      [V445,T307] (  3,  48   )     ref  ->  rsi         "arr expr"
-;  V446 tmp398      [V446,T369] (  3,  48   )     int  ->  rdi         "index expr"
-;  V447 tmp399      [V447,T308] (  3,  48   )     ref  ->  rsi         "arr expr"
-;  V448 tmp400      [V448,T309] (  3,  48   )     ref  ->  rdi         "arr expr"
-;  V449 tmp401      [V449,T370] (  3,  48   )     int  ->  rsi         "index expr"
-;  V450 tmp402      [V450,T310] (  3,  48   )     ref  ->   r9         "arr expr"
-;  V451 tmp403      [V451,T371] (  3,  48   )     int  ->  r11         "index expr"
-;  V452 tmp404      [V452,T311] (  3,  48   )     ref  ->  rsi         "arr expr"
-;  V453 tmp405      [V453,T96] (  3,  96   )     ref  ->  rdi         "arr expr"
-;  V454 tmp406      [V454,T150] (  3,  96   )     int  ->  rax         "index expr"
-;  V455 tmp407      [V455,T241] (  2,  64   )     ref  ->  rdi         "arr expr"
-;  V456 tmp408      [V456,T151] (  3,  96   )     int  ->  rcx         "index expr"
-;  V457 tmp409      [V457,T242] (  2,  64   )     ref  ->  rcx         "arr expr"
-;  V458 tmp410      [V458,T152] (  3,  96   )     int  ->   r8         "index expr"
-;  V459 tmp411      [V459,T97] (  3,  96   )     ref  ->   r8         "arr expr"
-;  V460 tmp412      [V460,T153] (  3,  96   )     int  ->   r9         "index expr"
-;  V461 tmp413      [V461,T458] (  2,  32   )     ref  ->  rdi         "arr expr"
-;  V462 tmp414      [V462,T372] (  3,  48   )     int  ->  rax         "index expr"
-;  V463 tmp415      [V463,T459] (  2,  32   )     ref  ->  rsi         "arr expr"
-;  V464 tmp416      [V464,T373] (  3,  48   )     int  ->  rax         "index expr"
-;  V465 tmp417      [V465,T243] (  2,  64   )     ref  ->  rsi         "arr expr"
-;  V466 tmp418      [V466,T154] (  3,  96   )     int  ->  rcx         "index expr"
-;  V467 tmp419      [V467,T98] (  3,  96   )     ref  ->  rdi         "arr expr"
-;  V468 tmp420      [V468,T155] (  3,  96   )     int  ->  rax         "index expr"
-;  V469 tmp421      [V469,T99] (  3,  96   )     ref  ->  rsi         "arr expr"
-;  V470 tmp422      [V470,T312] (  3,  48   )     ref  ->  rdx         "arr expr"
-;  V471 tmp423      [V471,T374] (  3,  48   )     int  ->  rdi         "index expr"
-;  V472 tmp424      [V472,T313] (  3,  48   )     ref  ->  rdx         "arr expr"
-;  V473 tmp425      [V473,T375] (  3,  48   )     int  ->  rax         "index expr"
-;* V474 tmp426      [V474,T531] (  0,   0   )     ref  ->  zero-ref    "arr expr"
-;* V475 tmp427      [V475,T533] (  0,   0   )     int  ->  zero-ref    "index expr"
-;  V476 tmp428      [V476,T460] (  2,  32   )     ref  ->  rdx         "arr expr"
-;  V477 tmp429      [V477,T376] (  3,  48   )     int  ->  rsi         "index expr"
-;  V478 tmp430      [V478,T314] (  3,  48   )     ref  ->  rsi         "arr expr"
-;  V479 tmp431      [V479,T377] (  3,  48   )     int  ->  rdx         "index expr"
-;* V480 tmp432      [V480,T532] (  0,   0   )     ref  ->  zero-ref    "arr expr"
-;* V481 tmp433      [V481,T534] (  0,   0   )     int  ->  zero-ref    "index expr"
-;  V482 tmp434      [V482,T498] (  2,  32   )     int  ->  rsi         "argument with side effect"
-;  V483 tmp435      [V483,T499] (  2,  32   )     int  ->  rdx         "argument with side effect"
-;  V484 tmp436      [V484,T100] (  3,  96   )     ref  ->  rsi         "arr expr"
-;  V485 tmp437      [V485,T156] (  3,  96   )     int  ->  rax         "index expr"
-;  V486 tmp438      [V486,T244] (  2,  64   )     ref  ->  rsi         "arr expr"
-;  V487 tmp439      [V487,T157] (  3,  96   )     int  ->  rdi         "index expr"
-;  V488 tmp440      [V488,T267] (  2,  64   )     int  ->  rsi         "argument with side effect"
-;  V489 tmp441      [V489,T101] (  3,  96   )     ref  ->  rdi         "arr expr"
-;  V490 tmp442      [V490,T158] (  3,  96   )     int  ->  rax         "index expr"
-;  V491 tmp443      [V491,T102] (  3,  96   )     ref  ->  rsi         "arr expr"
-;  V492 tmp444      [V492,T103] (  3,  96   )     ref  ->  rsi         "arr expr"
-;  V493 tmp445      [V493,T159] (  3,  96   )     int  ->  rax         "index expr"
-;  V494 tmp446      [V494,T245] (  2,  64   )     ref  ->  rsi         "arr expr"
-;  V495 tmp447      [V495,T160] (  3,  96   )     int  ->  rdi         "index expr"
-;  V496 tmp448      [V496,T268] (  2,  64   )     int  ->  rsi         "argument with side effect"
-;  V497 tmp449      [V497,T104] (  3,  96   )     ref  ->  rdi         "arr expr"
-;  V498 tmp450      [V498,T161] (  3,  96   )     int  ->  rax         "index expr"
-;  V499 tmp451      [V499,T105] (  3,  96   )     ref  ->  rdi         "arr expr"
-;  V500 tmp452      [V500,T162] (  3,  96   )     int  ->  rax         "index expr"
-;  V501 tmp453      [V501,T106] (  3,  96   )     ref  ->  rdi         "arr expr"
-;  V502 tmp454      [V502,T315] (  3,  48   )     ref  ->  rsi         "arr expr"
-;  V503 tmp455      [V503,T378] (  3,  48   )     int  ->  rdi         "index expr"
-;  V504 tmp456      [V504,T316] (  3,  48   )     ref  ->  rdi         "arr expr"
-;  V505 tmp457      [V505,T379] (  3,  48   )     int  ->  rsi         "index expr"
-;  V506 tmp458      [V506,T317] (  3,  48   )     ref  ->  rdi         "arr expr"
-;  V507 tmp459      [V507,T107] (  3,  96   )     ref  ->  rdx         "arr expr"
-;  V508 tmp460      [V508,T163] (  3,  96   )     int  ->  rsi         "index expr"
-;  V509 tmp461      [V509,T318] (  3,  48   )     ref  ->  rsi         "arr expr"
-;  V510 tmp462      [V510,T380] (  3,  48   )     int  ->  rax         "index expr"
-;  V511 tmp463      [V511,T319] (  3,  48   )     ref  ->   r8         "arr expr"
-;  V512 tmp464      [V512,T381] (  3,  48   )     int  ->   r9         "index expr"
-;  V513 tmp465      [V513,T246] (  2,  64   )     ref  ->  rdx         "arr expr"
-;  V514 tmp466      [V514,T164] (  3,  96   )     int  ->  rdi         "index expr"
-;  V515 tmp467      [V515,T320] (  3,  48   )     ref  ->  rsi         "arr expr"
-;  V516 tmp468      [V516,T382] (  3,  48   )     int  ->  rax         "index expr"
-;  V517 tmp469      [V517,T321] (  3,  48   )     ref  ->   r8         "arr expr"
-;  V518 tmp470      [V518,T383] (  3,  48   )     int  ->   r9         "index expr"
-;  V519 tmp471      [V519,T247] (  2,  64   )     ref  ->  rdx         "arr expr"
-;  V520 tmp472      [V520,T165] (  3,  96   )     int  ->  rdi         "index expr"
-;  V521 tmp473      [V521,T108] (  3,  96   )     ref  ->  rsi         "arr expr"
-;  V522 tmp474      [V522,T166] (  3,  96   )     int  ->  rax         "index expr"
-;  V523 tmp475      [V523,T248] (  2,  64   )     ref  ->  rdx         "arr expr"
-;  V524 tmp476      [V524,T167] (  3,  96   )     int  ->  rdi         "index expr"
-;  V525 tmp477      [V525,T511] (  3,  24   )     ref  ->  rdi         "arr expr"
-;  V526 tmp478      [V526,T530] (  3,  24   )     int  ->  rsi         "index expr"
-;  V527 tmp479      [V527,T537] (  3,   6   )     ref  ->  rax         single-def "arr expr"
-;  V528 tmp480      [V528,T109] (  3,  96   )     ref  ->  rdi         "arr expr"
-;  V529 tmp481      [V529,T168] (  3,  96   )     int  ->  rax         "index expr"
-;  V530 tmp482      [V530,T110] (  3,  96   )     ref  ->  rdi         "arr expr"
-;  V531 tmp483      [V531,T322] (  3,  48   )     ref  ->  rdi         "arr expr"
-;  V532 tmp484      [V532,T384] (  3,  48   )     int  ->  rsi         "index expr"
-;  V533 tmp485      [V533,T323] (  3,  48   )     ref  ->  rsi         "arr expr"
-;  V534 tmp486      [V534,T385] (  3,  48   )     int  ->  rdi         "index expr"
-;  V535 tmp487      [V535,T461] (  2,  32   )     ref  ->  rsi         "arr expr"
-;  V536 tmp488      [V536,T386] (  3,  48   )     int  ->  rdi         "index expr"
-;  V537 tmp489      [V537,T500] (  2,  32   )     int  ->  rsi         "argument with side effect"
-;  V538 tmp490      [V538,T324] (  3,  48   )     ref  ->  rcx         "arr expr"
-;  V539 tmp491      [V539,T387] (  3,  48   )     int  ->  rdx         "index expr"
+;  V425 tmp377      [V425,T533] (  3,   6   )     ref  ->  rdi         single-def "arr expr"
+;  V426 tmp378      [V426,T241] (  3,  48   )     ref  ->  rdi         "arr expr"
+;  V427 tmp379      [V427,T291] (  3,  48   )     int  ->  rax         "index expr"
+;  V428 tmp380      [V428,T242] (  3,  48   )     ref  ->  r13         "arr expr"
+;  V429 tmp381      [V429,T292] (  3,  48   )     int  ->  rdi         "index expr"
+;  V430 tmp382      [V430,T243] (  3,  48   )     ref  ->  rcx         "arr expr"
+;  V431 tmp383      [V431,T293] (  3,  48   )     int  ->  rdx         "index expr"
+;  V432 tmp384      [V432,T244] (  3,  48   )     ref  ->  rax         "arr expr"
+;  V433 tmp385      [V433,T294] (  3,  48   )     int  ->  rcx         "index expr"
+;  V434 tmp386      [V434,T365] (  2,  32   )     ref  ->  rcx         "arr expr"
+;  V435 tmp387      [V435,T295] (  3,  48   )     int  ->  rdi         "index expr"
+;  V436 tmp388      [V436,T245] (  3,  48   )     ref  ->  rcx         "arr expr"
+;  V437 tmp389      [V437,T296] (  3,  48   )     int  ->  rax         "index expr"
+;  V438 tmp390      [V438,T246] (  3,  48   )     ref  ->  rdi         "arr expr"
+;  V439 tmp391      [V439,T297] (  3,  48   )     int  ->  rax         "index expr"
+;  V440 tmp392      [V440,T16] (  3, 384   )     ref  ->  rsi         "arr expr"
+;  V441 tmp393      [V441,T17] (  3, 384   )     int  ->  rcx         "index expr"
+;  V442 tmp394      [V442,T41] (  3, 192   )     ref  ->  rsi         "arr expr"
+;  V443 tmp395      [V443,T247] (  3,  48   )     ref  ->  rsi         "arr expr"
+;  V444 tmp396      [V444,T298] (  3,  48   )     int  ->  rax         "index expr"
+;  V445 tmp397      [V445,T248] (  3,  48   )     ref  ->  rsi         "arr expr"
+;  V446 tmp398      [V446,T299] (  3,  48   )     int  ->  rdi         "index expr"
+;  V447 tmp399      [V447,T249] (  3,  48   )     ref  ->  rsi         "arr expr"
+;  V448 tmp400      [V448,T250] (  3,  48   )     ref  ->   r9         "arr expr"
+;  V449 tmp401      [V449,T300] (  3,  48   )     int  ->  rsi         "index expr"
+;  V450 tmp402      [V450,T251] (  3,  48   )     ref  ->  rdi         "arr expr"
+;  V451 tmp403      [V451,T301] (  3,  48   )     int  ->  r11         "index expr"
+;  V452 tmp404      [V452,T252] (  3,  48   )     ref  ->  rsi         "arr expr"
+;  V453 tmp405      [V453,T84] (  3,  96   )     ref  ->  rdi         "arr expr"
+;  V454 tmp406      [V454,T134] (  3,  96   )     int  ->  rax         "index expr"
+;  V455 tmp407      [V455,T195] (  2,  64   )     ref  ->  rdi         "arr expr"
+;  V456 tmp408      [V456,T135] (  3,  96   )     int  ->  rcx         "index expr"
+;  V457 tmp409      [V457,T196] (  2,  64   )     ref  ->  rcx         "arr expr"
+;  V458 tmp410      [V458,T136] (  3,  96   )     int  ->   r8         "index expr"
+;  V459 tmp411      [V459,T85] (  3,  96   )     ref  ->   r8         "arr expr"
+;  V460 tmp412      [V460,T137] (  3,  96   )     int  ->   r9         "index expr"
+;  V461 tmp413      [V461,T366] (  2,  32   )     ref  ->  rdi         "arr expr"
+;  V462 tmp414      [V462,T302] (  3,  48   )     int  ->  rax         "index expr"
+;  V463 tmp415      [V463,T367] (  2,  32   )     ref  ->  rsi         "arr expr"
+;  V464 tmp416      [V464,T303] (  3,  48   )     int  ->  rax         "index expr"
+;  V465 tmp417      [V465,T197] (  2,  64   )     ref  ->  rsi         "arr expr"
+;  V466 tmp418      [V466,T138] (  3,  96   )     int  ->  rcx         "index expr"
+;  V467 tmp419      [V467,T86] (  3,  96   )     ref  ->  rdi         "arr expr"
+;  V468 tmp420      [V468,T139] (  3,  96   )     int  ->  rax         "index expr"
+;  V469 tmp421      [V469,T87] (  3,  96   )     ref  ->  rsi         "arr expr"
+;  V470 tmp422      [V470,T253] (  3,  48   )     ref  ->  rdx         "arr expr"
+;  V471 tmp423      [V471,T304] (  3,  48   )     int  ->  rdi         "index expr"
+;  V472 tmp424      [V472,T254] (  3,  48   )     ref  ->  rdx         "arr expr"
+;  V473 tmp425      [V473,T305] (  3,  48   )     int  ->  rax         "index expr"
+;* V474 tmp426      [V474,T439] (  0,   0   )     ref  ->  zero-ref    "arr expr"
+;* V475 tmp427      [V475,T440] (  0,   0   )     int  ->  zero-ref    "index expr"
+;  V476 tmp428      [V476,T495] (  2,   8   )     ref  ->  rdx         "arr expr"
+;  V477 tmp429      [V477,T465] (  3,  12   )     int  ->  rsi         "index expr"
+;  V478 tmp430      [V478,T450] (  3,  12   )     ref  ->  rsi         "arr expr"
+;  V479 tmp431      [V479,T466] (  3,  12   )     int  ->  rdx         "index expr"
+;* V480 tmp432      [V480,T535] (  0,   0   )     ref  ->  zero-ref    "arr expr"
+;* V481 tmp433      [V481,T537] (  0,   0   )     int  ->  zero-ref    "index expr"
+;  V482 tmp434      [V482,T524] (  2,   8   )     int  ->  rsi         "argument with side effect"
+;  V483 tmp435      [V483,T525] (  2,   8   )     int  ->  rdx         "argument with side effect"
+;  V484 tmp436      [V484,T88] (  3,  96   )     ref  ->  rsi         "arr expr"
+;  V485 tmp437      [V485,T140] (  3,  96   )     int  ->  rax         "index expr"
+;  V486 tmp438      [V486,T198] (  2,  64   )     ref  ->  rsi         "arr expr"
+;  V487 tmp439      [V487,T141] (  3,  96   )     int  ->  rdi         "index expr"
+;  V488 tmp440      [V488,T215] (  2,  64   )     int  ->  rsi         "argument with side effect"
+;  V489 tmp441      [V489,T89] (  3,  96   )     ref  ->  rdi         "arr expr"
+;  V490 tmp442      [V490,T142] (  3,  96   )     int  ->  rax         "index expr"
+;  V491 tmp443      [V491,T90] (  3,  96   )     ref  ->  rsi         "arr expr"
+;  V492 tmp444      [V492,T451] (  3,  12   )     ref  ->  rsi         "arr expr"
+;  V493 tmp445      [V493,T467] (  3,  12   )     int  ->  rax         "index expr"
+;  V494 tmp446      [V494,T496] (  2,   8   )     ref  ->  rsi         "arr expr"
+;  V495 tmp447      [V495,T468] (  3,  12   )     int  ->  rdi         "index expr"
+;  V496 tmp448      [V496,T526] (  2,   8   )     int  ->  rsi         "argument with side effect"
+;  V497 tmp449      [V497,T91] (  3,  96   )     ref  ->  rdi         "arr expr"
+;  V498 tmp450      [V498,T143] (  3,  96   )     int  ->  rax         "index expr"
+;  V499 tmp451      [V499,T92] (  3,  96   )     ref  ->  rdi         "arr expr"
+;  V500 tmp452      [V500,T144] (  3,  96   )     int  ->  rax         "index expr"
+;  V501 tmp453      [V501,T93] (  3,  96   )     ref  ->  rdi         "arr expr"
+;  V502 tmp454      [V502,T255] (  3,  48   )     ref  ->  rsi         "arr expr"
+;  V503 tmp455      [V503,T306] (  3,  48   )     int  ->  rdi         "index expr"
+;  V504 tmp456      [V504,T256] (  3,  48   )     ref  ->  rdi         "arr expr"
+;  V505 tmp457      [V505,T307] (  3,  48   )     int  ->  rsi         "index expr"
+;  V506 tmp458      [V506,T257] (  3,  48   )     ref  ->  rdi         "arr expr"
+;  V507 tmp459      [V507,T94] (  3,  96   )     ref  ->  rdx         "arr expr"
+;  V508 tmp460      [V508,T145] (  3,  96   )     int  ->  rsi         "index expr"
+;  V509 tmp461      [V509,T258] (  3,  48   )     ref  ->  rsi         "arr expr"
+;  V510 tmp462      [V510,T308] (  3,  48   )     int  ->  rax         "index expr"
+;  V511 tmp463      [V511,T259] (  3,  48   )     ref  ->   r8         "arr expr"
+;  V512 tmp464      [V512,T309] (  3,  48   )     int  ->   r9         "index expr"
+;  V513 tmp465      [V513,T199] (  2,  64   )     ref  ->  rdx         "arr expr"
+;  V514 tmp466      [V514,T146] (  3,  96   )     int  ->  rdi         "index expr"
+;  V515 tmp467      [V515,T260] (  3,  48   )     ref  ->  rsi         "arr expr"
+;  V516 tmp468      [V516,T310] (  3,  48   )     int  ->  rax         "index expr"
+;  V517 tmp469      [V517,T261] (  3,  48   )     ref  ->   r8         "arr expr"
+;  V518 tmp470      [V518,T311] (  3,  48   )     int  ->   r9         "index expr"
+;  V519 tmp471      [V519,T200] (  2,  64   )     ref  ->  rdx         "arr expr"
+;  V520 tmp472      [V520,T147] (  3,  96   )     int  ->  rdi         "index expr"
+;  V521 tmp473      [V521,T95] (  3,  96   )     ref  ->  rsi         "arr expr"
+;  V522 tmp474      [V522,T148] (  3,  96   )     int  ->  rax         "index expr"
+;  V523 tmp475      [V523,T201] (  2,  64   )     ref  ->  rdx         "arr expr"
+;  V524 tmp476      [V524,T149] (  3,  96   )     int  ->  rdi         "index expr"
+;  V525 tmp477      [V525,T392] (  3,  24   )     ref  ->  rdi         "arr expr"
+;  V526 tmp478      [V526,T411] (  3,  24   )     int  ->  rsi         "index expr"
+;  V527 tmp479      [V527,T539] (  3,   1.50)     ref  ->  rax         single-def "arr expr"
+;  V528 tmp480      [V528,T96] (  3,  96   )     ref  ->  rdi         "arr expr"
+;  V529 tmp481      [V529,T150] (  3,  96   )     int  ->  rax         "index expr"
+;  V530 tmp482      [V530,T97] (  3,  96   )     ref  ->  rdi         "arr expr"
+;  V531 tmp483      [V531,T262] (  3,  48   )     ref  ->  rdi         "arr expr"
+;  V532 tmp484      [V532,T312] (  3,  48   )     int  ->  rsi         "index expr"
+;  V533 tmp485      [V533,T452] (  3,  12   )     ref  ->  rsi         "arr expr"
+;  V534 tmp486      [V534,T469] (  3,  12   )     int  ->  rdi         "index expr"
+;  V535 tmp487      [V535,T497] (  2,   8   )     ref  ->  rsi         "arr expr"
+;  V536 tmp488      [V536,T470] (  3,  12   )     int  ->  rdi         "index expr"
+;  V537 tmp489      [V537,T527] (  2,   8   )     int  ->  rsi         "argument with side effect"
+;  V538 tmp490      [V538,T263] (  3,  48   )     ref  ->  rcx         "arr expr"
+;  V539 tmp491      [V539,T313] (  3,  48   )     int  ->  rdx         "index expr"
 ;  V540 tmp492      [V540,T29] (  2, 256   )     ref  ->  rdx         "arr expr"
-;  V541 tmp493      [V541,T17] (  3, 384   )     int  ->  rsi         "index expr"
-;  V542 tmp494      [V542,T43] (  3, 192   )     ref  ->  rdx         "arr expr"
-;  V543 tmp495      [V543,T325] (  3,  48   )     ref  ->  rsi         "arr expr"
-;  V544 tmp496      [V544,T388] (  3,  48   )     int  ->  rax         "index expr"
-;  V545 tmp497      [V545,T462] (  2,  32   )     ref  ->  rsi         "arr expr"
-;  V546 tmp498      [V546,T389] (  3,  48   )     int  ->  rdi         "index expr"
-;  V547 tmp499      [V547,T326] (  3,  48   )     ref  ->  rsi         "arr expr"
-;  V548 tmp500      [V548,T390] (  3,  48   )     int  ->  rax         "index expr"
-;  V549 tmp501      [V549,T327] (  3,  48   )     ref  ->  rdi         "arr expr"
-;  V550 tmp502      [V550,T391] (  3,  48   )     int  ->  rsi         "index expr"
-;  V551 tmp503      [V551,T328] (  3,  48   )     ref  ->  rdi         "arr expr"
-;  V552 tmp504      [V552,T392] (  3,  48   )     int  ->  rax         "index expr"
-;  V553 tmp505      [V553,T329] (  3,  48   )     ref  ->  rdi         "arr expr"
-;  V554 tmp506      [V554,T393] (  3,  48   )     int  ->  rax         "index expr"
-;  V555 tmp507      [V555,T330] (  3,  48   )     ref  ->  rdi         "arr expr"
-;  V556 tmp508      [V556,T394] (  3,  48   )     int  ->  rax         "index expr"
-;  V557 tmp509      [V557,T331] (  3,  48   )     ref  ->  rsi         "arr expr"
-;  V558 tmp510      [V558,T395] (  3,  48   )     int  ->  rdx         "index expr"
-;  V559 tmp511      [V559,T332] (  3,  48   )     ref  ->  rdx         "arr expr"
-;  V560 tmp512      [V560,T396] (  3,  48   )     int  ->  rcx         "index expr"
-;  V561 tmp513      [V561,T333] (  3,  48   )     ref  ->  rcx         "arr expr"
-;  V562 tmp514      [V562,T397] (  3,  48   )     int  ->   r8         "index expr"
-;  V563 tmp515      [V563,T501] (  2,  32   )     int  ->  rsi         "argument with side effect"
-;  V564 tmp516      [V564,T502] (  2,  32   )     int  ->  rdx         "argument with side effect"
-;  V565 tmp517      [V565,T503] (  2,  32   )     int  ->  rcx         "argument with side effect"
-;  V566 tmp518      [V566,T334] (  3,  48   )     ref  ->  rcx         "arr expr"
-;  V567 tmp519      [V567,T398] (  3,  48   )     int  ->  rdi         "index expr"
-;  V568 tmp520      [V568,T111] (  3,  96   )     ref  ->  rcx         "arr expr"
-;  V569 tmp521      [V569,T169] (  3,  96   )     int  ->  rdi         "index expr"
-;  V570 tmp522      [V570,T249] (  2,  64   )     ref  ->  rcx         "arr expr"
-;  V571 tmp523      [V571,T170] (  3,  96   )     int  ->  rdi         "index expr"
-;  V572 tmp524      [V572,T112] (  3,  96   )     ref  ->  rdi         "arr expr"
-;  V573 tmp525      [V573,T171] (  3,  96   )     int  ->  rax         "index expr"
-;  V574 tmp526      [V574,T113] (  3,  96   )     ref  ->  rdi         "arr expr"
-;  V575 tmp527      [V575,T114] (  3,  96   )     ref  ->  rdi         "arr expr"
-;  V576 tmp528      [V576,T172] (  3,  96   )     int  ->  rcx         "index expr"
-;  V577 tmp529      [V577,T250] (  2,  64   )     ref  ->  rdi         "arr expr"
-;  V578 tmp530      [V578,T173] (  3,  96   )     int  ->  rdx         "index expr"
-;  V579 tmp531      [V579,T115] (  3,  96   )     ref  ->  r10         "arr expr"
-;  V580 tmp532      [V580,T174] (  3,  96   )     int  ->  r12         "index expr"
-;  V581 tmp533      [V581,T116] (  3,  96   )     ref  ->  rdi         "arr expr"
-;  V582 tmp534      [V582,T175] (  3,  96   )     int  ->  rax         "index expr"
-;  V583 tmp535      [V583,T117] (  3,  96   )     ref  ->  rdi         "arr expr"
-;  V584 tmp536      [V584,T118] (  3,  96   )     ref  ->   r9         "arr expr"
-;  V585 tmp537      [V585,T176] (  3,  96   )     int  ->  rsi         "index expr"
-;  V586 tmp538      [V586,T119] (  3,  96   )     ref  ->  rsi         "arr expr"
-;  V587 tmp539      [V587,T177] (  3,  96   )     int  ->  rdi         "index expr"
-;  V588 tmp540      [V588,T120] (  3,  96   )     ref  ->  rsi         "arr expr"
-;  V589 tmp541      [V589,T178] (  3,  96   )     int  ->  rax         "index expr"
-;  V590 tmp542      [V590,T251] (  2,  64   )     ref  ->  rsi         "arr expr"
-;  V591 tmp543      [V591,T179] (  3,  96   )     int  ->  rdi         "index expr"
-;  V592 tmp544      [V592,T269] (  2,  64   )     int  ->  rsi         "argument with side effect"
-;  V593 tmp545      [V593,T121] (  3,  96   )     ref  ->  rsi         "arr expr"
-;  V594 tmp546      [V594,T180] (  3,  96   )     int  ->  rax         "index expr"
-;* V595 tmp547      [V595,T506] (  0,   0   )     ref  ->  zero-ref    "arr expr"
-;* V596 tmp548      [V596,T508] (  0,   0   )     int  ->  zero-ref    "index expr"
-;  V597 tmp549      [V597,T270] (  2,  64   )     int  ->  rsi         "argument with side effect"
-;* V598 tmp550      [V598,T507] (  0,   0   )     ref  ->  zero-ref    "arr expr"
-;* V599 tmp551      [V599,T509] (  0,   0   )     int  ->  zero-ref    "index expr"
-;  V600 tmp552      [V600,T122] (  3,  96   )     ref  ->  rdi         "arr expr"
-;  V601 tmp553      [V601,T181] (  3,  96   )     int  ->  rax         "index expr"
-;  V602 tmp554      [V602,T123] (  3,  96   )     ref  ->  rdi         "arr expr"
-;  V603 tmp555      [V603,T335] (  3,  48   )     ref  ->  rdi         "arr expr"
-;  V604 tmp556      [V604,T399] (  3,  48   )     int  ->  rsi         "index expr"
-;  V605 tmp557      [V605,T504] (  2,  32   )     int  ->  r13         "argument with side effect"
-;  V606 tmp558      [V606,T505] (  2,  32   )     int  ->  rdx         "argument with side effect"
-;  V607 tmp559      [V607,T336] (  3,  48   )     ref  ->  rsi         "arr expr"
-;  V608 tmp560      [V608,T400] (  3,  48   )     int  ->  rdx         "index expr"
-;  V609 tmp561      [V609,T337] (  3,  48   )     ref  ->  rdx         "arr expr"
-;  V610 tmp562      [V610,T401] (  3,  48   )     int  ->  rcx         "index expr"
-;  V611 tmp563      [V611,T463] (  2,  32   )     ref  ->  rsi         "argument with side effect"
-;  V612 tmp564      [V612,T338] (  3,  48   )     ref  ->  rdi         "arr expr"
-;  V613 tmp565      [V613,T402] (  3,  48   )     int  ->  rsi         "index expr"
-;  V614 tmp566      [V614,T339] (  3,  48   )     ref  ->  rdi         "arr expr"
-;  V615 tmp567      [V615,T340] (  3,  48   )     ref  ->   r9         "arr expr"
-;  V616 tmp568      [V616,T403] (  3,  48   )     int  ->  r11         "index expr"
-;  V617 tmp569      [V617,T341] (  3,  48   )     ref  ->   r9         "arr expr"
-;  V618 tmp570      [V618,T404] (  3,  48   )     int  ->  r11         "index expr"
-;  V619 tmp571      [V619,T124] (  3,  96   )     ref  ->  rdx         "arr expr"
-;  V620 tmp572      [V620,T182] (  3,  96   )     int  ->  rsi         "index expr"
-;  V621 tmp573      [V621,T125] (  3,  96   )     ref  ->  rdi         "arr expr"
-;  V622 tmp574      [V622,T183] (  3,  96   )     int  ->  rsi         "index expr"
-;  V623 tmp575      [V623,T126] (  3,  96   )     ref  ->  rdi         "arr expr"
-;  V624 tmp576      [V624,T184] (  3,  96   )     int  ->  rsi         "index expr"
-;  V625 tmp577      [V625,T127] (  3,  96   )     ref  ->  rdi         "arr expr"
-;  V626 tmp578      [V626,T128] (  3,  96   )     ref  ->  rdi         "arr expr"
-;  V627 tmp579      [V627,T185] (  3,  96   )     int  ->  rax         "index expr"
-;  V628 tmp580      [V628,T129] (  3,  96   )     ref  ->  rdi         "arr expr"
-;  V629 tmp581      [V629,T186] (  3,  96   )     int  ->  rax         "index expr"
-;  V630 tmp582      [V630,T130] (  3,  96   )     ref  ->  rsi         "arr expr"
-;  V631 tmp583      [V631,T187] (  3,  96   )     int  ->  rdx         "index expr"
-;  V632 tmp584      [V632,T131] (  3,  96   )     ref  ->  rdx         "arr expr"
-;  V633 tmp585      [V633,T188] (  3,  96   )     int  ->  rdi         "index expr"
-;  V634 tmp586      [V634,T342] (  3,  48   )     ref  ->  rdi         "arr expr"
-;  V635 tmp587      [V635,T405] (  3,  48   )     int  ->  rsi         "index expr"
-;  V636 tmp588      [V636,T343] (  3,  48   )     ref  ->  rdi         "arr expr"
-;  V637 tmp589      [V637,T406] (  3,  48   )     int  ->  rsi         "index expr"
-;  V638 tmp590      [V638,T344] (  3,  48   )     ref  ->  rdi         "arr expr"
-;  V639 tmp591      [V639,T345] (  3,  48   )     ref  ->  rdi         "arr expr"
-;  V640 tmp592      [V640,T407] (  3,  48   )     int  ->  rsi         "index expr"
-;  V641 tmp593      [V641,T346] (  3,  48   )     ref  ->   r9         "arr expr"
-;  V642 tmp594      [V642,T408] (  3,  48   )     int  ->  r11         "index expr"
-;  V643 tmp595      [V643,T347] (  3,  48   )     ref  ->  rdi         "arr expr"
-;  V644 tmp596      [V644,T409] (  3,  48   )     int  ->  rsi         "index expr"
-;  V645 tmp597      [V645,T348] (  3,  48   )     ref  ->   r9         "arr expr"
-;  V646 tmp598      [V646,T410] (  3,  48   )     int  ->  r11         "index expr"
-;  V647 cse0        [V647,T85] (  8, 112   )     int  ->  r12         multi-def "CSE #40: conservative"
-;  V648 cse1        [V648,T51] ( 12, 128   )     int  ->  registers   multi-def "CSE #56: conservative"
-;  V649 cse2        [V649,T06] ( 59, 680   )     ref  ->  registers   multi-def "CSE #02: aggressive"
-;  V650 cse3        [V650,T18] ( 28, 352   )     int  ->  registers   multi-def "CSE #44: moderate"
-;  V651 cse4        [V651,T19] ( 27, 328   )     int  ->  rdi         multi-def "CSE #42: moderate"
-;  V652 cse5        [V652,T21] ( 25, 280   )     int  ->  registers   multi-def "CSE #09: moderate"
-;  V653 cse6        [V653,T22] ( 19, 232   )     int  ->  registers   multi-def "CSE #36: moderate"
-;  V654 cse7        [V654,T07] ( 52, 632   )     ref  ->  r13         multi-def "CSE #26: aggressive"
-;  V655 cse8        [V655,T33] (  9, 232   )     ref  ->  r12         hoist multi-def "CSE #31: moderate"
-;  V656 cse9        [V656,T03] ( 75, 856   )     int  ->  registers   multi-def "CSE #03: aggressive"
-;  V657 cse10       [V657,T02] ( 72, 900   )     ref  ->  registers   multi-def "CSE #15: aggressive"
-;  V658 cse11       [V658,T04] ( 91, 828   )     int  ->  registers   multi-def "CSE #41: aggressive"
-;  V659 cse12       [V659,T05] ( 60, 728   )     int  ->  registers   multi-def "CSE #28: aggressive"
-;  V660 cse13       [V660,T01] ( 76, 968   )     int  ->  registers   multi-def "CSE #17: aggressive"
-;  V661 rat0        [V661,T414] (  3,  45.71)     int  ->  r12         "ReplaceWithLclVar is creating a new local variable"
-;  V662 rat1        [V662,T189] (  3,  95.09)     int  ->  r13         "ReplaceWithLclVar is creating a new local variable"
+;  V541 tmp493      [V541,T18] (  3, 384   )     int  ->  rsi         "index expr"
+;  V542 tmp494      [V542,T42] (  3, 192   )     ref  ->  rdx         "arr expr"
+;  V543 tmp495      [V543,T453] (  3,  12   )     ref  ->  rsi         "arr expr"
+;  V544 tmp496      [V544,T471] (  3,  12   )     int  ->  rax         "index expr"
+;  V545 tmp497      [V545,T498] (  2,   8   )     ref  ->  rsi         "arr expr"
+;  V546 tmp498      [V546,T472] (  3,  12   )     int  ->  rdi         "index expr"
+;  V547 tmp499      [V547,T264] (  3,  48   )     ref  ->  rsi         "arr expr"
+;  V548 tmp500      [V548,T314] (  3,  48   )     int  ->  rax         "index expr"
+;  V549 tmp501      [V549,T265] (  3,  48   )     ref  ->  rdi         "arr expr"
+;  V550 tmp502      [V550,T315] (  3,  48   )     int  ->  rsi         "index expr"
+;  V551 tmp503      [V551,T454] (  3,  12   )     ref  ->  rdi         "arr expr"
+;  V552 tmp504      [V552,T473] (  3,  12   )     int  ->  rax         "index expr"
+;  V553 tmp505      [V553,T455] (  3,  12   )     ref  ->  rdi         "arr expr"
+;  V554 tmp506      [V554,T474] (  3,  12   )     int  ->  rax         "index expr"
+;  V555 tmp507      [V555,T456] (  3,  12   )     ref  ->  rdi         "arr expr"
+;  V556 tmp508      [V556,T475] (  3,  12   )     int  ->  rax         "index expr"
+;  V557 tmp509      [V557,T457] (  3,  12   )     ref  ->  rsi         "arr expr"
+;  V558 tmp510      [V558,T476] (  3,  12   )     int  ->  rdx         "index expr"
+;  V559 tmp511      [V559,T458] (  3,  12   )     ref  ->  rdx         "arr expr"
+;  V560 tmp512      [V560,T477] (  3,  12   )     int  ->  rcx         "index expr"
+;  V561 tmp513      [V561,T459] (  3,  12   )     ref  ->  rcx         "arr expr"
+;  V562 tmp514      [V562,T478] (  3,  12   )     int  ->   r8         "index expr"
+;  V563 tmp515      [V563,T528] (  2,   8   )     int  ->  rsi         "argument with side effect"
+;  V564 tmp516      [V564,T529] (  2,   8   )     int  ->  rdx         "argument with side effect"
+;  V565 tmp517      [V565,T530] (  2,   8   )     int  ->  rcx         "argument with side effect"
+;  V566 tmp518      [V566,T460] (  3,  12   )     ref  ->  rcx         "arr expr"
+;  V567 tmp519      [V567,T479] (  3,  12   )     int  ->  rdi         "index expr"
+;  V568 tmp520      [V568,T98] (  3,  96   )     ref  ->  rcx         "arr expr"
+;  V569 tmp521      [V569,T151] (  3,  96   )     int  ->  rdi         "index expr"
+;  V570 tmp522      [V570,T202] (  2,  64   )     ref  ->  rcx         "arr expr"
+;  V571 tmp523      [V571,T152] (  3,  96   )     int  ->  rdi         "index expr"
+;  V572 tmp524      [V572,T99] (  3,  96   )     ref  ->  rdi         "arr expr"
+;  V573 tmp525      [V573,T153] (  3,  96   )     int  ->  rax         "index expr"
+;  V574 tmp526      [V574,T100] (  3,  96   )     ref  ->  rdi         "arr expr"
+;  V575 tmp527      [V575,T101] (  3,  96   )     ref  ->  rdi         "arr expr"
+;  V576 tmp528      [V576,T154] (  3,  96   )     int  ->  rcx         "index expr"
+;  V577 tmp529      [V577,T203] (  2,  64   )     ref  ->  rdi         "arr expr"
+;  V578 tmp530      [V578,T155] (  3,  96   )     int  ->  rdx         "index expr"
+;  V579 tmp531      [V579,T102] (  3,  96   )     ref  ->  r10         "arr expr"
+;  V580 tmp532      [V580,T156] (  3,  96   )     int  ->  r12         "index expr"
+;  V581 tmp533      [V581,T103] (  3,  96   )     ref  ->  rdi         "arr expr"
+;  V582 tmp534      [V582,T157] (  3,  96   )     int  ->  rax         "index expr"
+;  V583 tmp535      [V583,T104] (  3,  96   )     ref  ->  rdi         "arr expr"
+;  V584 tmp536      [V584,T461] (  3,  12   )     ref  ->   r9         "arr expr"
+;  V585 tmp537      [V585,T480] (  3,  12   )     int  ->  rsi         "index expr"
+;  V586 tmp538      [V586,T462] (  3,  12   )     ref  ->  rsi         "arr expr"
+;  V587 tmp539      [V587,T481] (  3,  12   )     int  ->  rdi         "index expr"
+;  V588 tmp540      [V588,T463] (  3,  12   )     ref  ->  rsi         "arr expr"
+;  V589 tmp541      [V589,T482] (  3,  12   )     int  ->  rax         "index expr"
+;  V590 tmp542      [V590,T499] (  2,   8   )     ref  ->  rsi         "arr expr"
+;  V591 tmp543      [V591,T483] (  3,  12   )     int  ->  rdi         "index expr"
+;  V592 tmp544      [V592,T531] (  2,   8   )     int  ->  rsi         "argument with side effect"
+;  V593 tmp545      [V593,T105] (  3,  96   )     ref  ->  rsi         "arr expr"
+;  V594 tmp546      [V594,T158] (  3,  96   )     int  ->  rax         "index expr"
+;* V595 tmp547      [V595,T536] (  0,   0   )     ref  ->  zero-ref    "arr expr"
+;* V596 tmp548      [V596,T538] (  0,   0   )     int  ->  zero-ref    "index expr"
+;  V597 tmp549      [V597,T532] (  2,   8   )     int  ->  rsi         "argument with side effect"
+;* V598 tmp550      [V598,T388] (  0,   0   )     ref  ->  zero-ref    "arr expr"
+;* V599 tmp551      [V599,T389] (  0,   0   )     int  ->  zero-ref    "index expr"
+;  V600 tmp552      [V600,T106] (  3,  96   )     ref  ->  rdi         "arr expr"
+;  V601 tmp553      [V601,T159] (  3,  96   )     int  ->  rax         "index expr"
+;  V602 tmp554      [V602,T107] (  3,  96   )     ref  ->  rdi         "arr expr"
+;  V603 tmp555      [V603,T266] (  3,  48   )     ref  ->  rdi         "arr expr"
+;  V604 tmp556      [V604,T316] (  3,  48   )     int  ->  rsi         "index expr"
+;  V605 tmp557      [V605,T386] (  2,  32   )     int  ->  r13         "argument with side effect"
+;  V606 tmp558      [V606,T387] (  2,  32   )     int  ->  rdx         "argument with side effect"
+;  V607 tmp559      [V607,T267] (  3,  48   )     ref  ->  rsi         "arr expr"
+;  V608 tmp560      [V608,T317] (  3,  48   )     int  ->  rdx         "index expr"
+;  V609 tmp561      [V609,T268] (  3,  48   )     ref  ->  rdx         "arr expr"
+;  V610 tmp562      [V610,T318] (  3,  48   )     int  ->  rcx         "index expr"
+;  V611 tmp563      [V611,T368] (  2,  32   )     ref  ->  rsi         "argument with side effect"
+;  V612 tmp564      [V612,T269] (  3,  48   )     ref  ->  rdi         "arr expr"
+;  V613 tmp565      [V613,T319] (  3,  48   )     int  ->  rsi         "index expr"
+;  V614 tmp566      [V614,T270] (  3,  48   )     ref  ->  rdi         "arr expr"
+;  V615 tmp567      [V615,T271] (  3,  48   )     ref  ->   r9         "arr expr"
+;  V616 tmp568      [V616,T320] (  3,  48   )     int  ->  rdi         "index expr"
+;  V617 tmp569      [V617,T272] (  3,  48   )     ref  ->   r9         "arr expr"
+;  V618 tmp570      [V618,T321] (  3,  48   )     int  ->  rdi         "index expr"
+;  V619 tmp571      [V619,T108] (  3,  96   )     ref  ->  rdx         "arr expr"
+;  V620 tmp572      [V620,T160] (  3,  96   )     int  ->  rsi         "index expr"
+;  V621 tmp573      [V621,T109] (  3,  96   )     ref  ->  rsi         "arr expr"
+;  V622 tmp574      [V622,T161] (  3,  96   )     int  ->  rdx         "index expr"
+;  V623 tmp575      [V623,T110] (  3,  96   )     ref  ->  rdi         "arr expr"
+;  V624 tmp576      [V624,T162] (  3,  96   )     int  ->  rsi         "index expr"
+;  V625 tmp577      [V625,T111] (  3,  96   )     ref  ->  rdi         "arr expr"
+;  V626 tmp578      [V626,T112] (  3,  96   )     ref  ->  rax         "arr expr"
+;  V627 tmp579      [V627,T163] (  3,  96   )     int  ->  rcx         "index expr"
+;  V628 tmp580      [V628,T113] (  3,  96   )     ref  ->  rdi         "arr expr"
+;  V629 tmp581      [V629,T164] (  3,  96   )     int  ->  rax         "index expr"
+;  V630 tmp582      [V630,T114] (  3,  96   )     ref  ->  rsi         "arr expr"
+;  V631 tmp583      [V631,T165] (  3,  96   )     int  ->  rdx         "index expr"
+;  V632 tmp584      [V632,T115] (  3,  96   )     ref  ->  rdx         "arr expr"
+;  V633 tmp585      [V633,T166] (  3,  96   )     int  ->  rdi         "index expr"
+;  V634 tmp586      [V634,T273] (  3,  48   )     ref  ->  rsi         "arr expr"
+;  V635 tmp587      [V635,T322] (  3,  48   )     int  ->  rdx         "index expr"
+;  V636 tmp588      [V636,T274] (  3,  48   )     ref  ->  rdi         "arr expr"
+;  V637 tmp589      [V637,T323] (  3,  48   )     int  ->  rsi         "index expr"
+;  V638 tmp590      [V638,T275] (  3,  48   )     ref  ->  rdi         "arr expr"
+;  V639 tmp591      [V639,T276] (  3,  48   )     ref  ->   r9         "arr expr"
+;  V640 tmp592      [V640,T324] (  3,  48   )     int  ->  rsi         "index expr"
+;  V641 tmp593      [V641,T277] (  3,  48   )     ref  ->  rdi         "arr expr"
+;  V642 tmp594      [V642,T325] (  3,  48   )     int  ->  r11         "index expr"
+;  V643 tmp595      [V643,T278] (  3,  48   )     ref  ->   r9         "arr expr"
+;  V644 tmp596      [V644,T326] (  3,  48   )     int  ->  rsi         "index expr"
+;  V645 tmp597      [V645,T279] (  3,  48   )     ref  ->  rdi         "arr expr"
+;  V646 tmp598      [V646,T327] (  3,  48   )     int  ->  r11         "index expr"
+;  V647 cse0        [V647,T216] (  8,  58   )     int  ->  r12         multi-def "CSE #40: conservative"
+;  V648 cse1        [V648,T78] ( 12, 110   )     int  ->  registers   multi-def "CSE #56: conservative"
+;  V649 cse2        [V649,T05] ( 59, 624   )     ref  ->  registers   multi-def "CSE #02: aggressive"
+;  V650 cse3        [V650,T19] ( 28, 322   )     int  ->  registers   multi-def "CSE #44: moderate"
+;  V651 cse4        [V651,T22] ( 27, 272   )     int  ->  rdi         multi-def "CSE #42: moderate"
+;  V652 cse5        [V652,T21] ( 25, 274   )     int  ->  registers   multi-def "CSE #09: moderate"
+;  V653 cse6        [V653,T51] ( 19, 124   )     int  ->  registers   multi-def "CSE #36: conservative"
+;  V654 cse7        [V654,T33] (  9, 232   )     ref  ->  r12         hoist multi-def "CSE #31: moderate"
+;  V655 cse8        [V655,T06] ( 59, 608   )     ref  ->  registers   multi-def "CSE #01: aggressive"
+;  V656 cse9        [V656,T11] ( 52, 454   )     ref  ->  r13         multi-def "CSE #26: aggressive"
+;  V657 cse10       [V657,T03] ( 72, 690   )     ref  ->  registers   multi-def "CSE #15: aggressive"
+;  V658 cse11       [V658,T04] ( 75, 684   )     int  ->  registers   multi-def "CSE #03: aggressive"
+;  V659 cse12       [V659,T02] ( 91, 702   )     int  ->  registers   multi-def "CSE #41: aggressive"
+;  V660 cse13       [V660,T08] ( 60, 522   )     int  ->  registers   multi-def "CSE #28: aggressive"
+;  V661 cse14       [V661,T01] ( 76, 726   )     int  ->  registers   multi-def "CSE #17: aggressive"
+;  V662 rat0        [V662,T328] (  3,  45.71)     int  ->  r12         "ReplaceWithLclVar is creating a new local variable"
+;  V663 rat1        [V663,T167] (  3,  95.09)     int  ->  r13         "ReplaceWithLclVar is creating a new local variable"
 ;
 ; Lcl frame size = 56
 
 G_M19968_IG01:
        push     rbp
        push     r15
        push     r14
        push     r13
        push     r12
        push     rbx
        sub      rsp, 56
        lea      rbp, [rsp+0x60]
        mov      rbx, rdi
        mov      r14, rsi
        mov      r15d, edx
 						;; size=28 bbWeight=1 PerfScore 7.50
 G_M19968_IG02:
        mov      rdi, gword ptr [rbx+0x70]
        mov      rdi, gword ptr [rdi+0x10]
        cmp      dword ptr [rdi+0x08], 0
        jbe      G_M19968_IG245
        mov      edi, dword ptr [rdi+0x10]
        mov      esi, edi
        and      esi, -65
        mov      dword ptr [rbx+0x84], esi
        test     dil, 64
        setne    dil
        mov      byte  ptr [rbx+0x69], dil
        xor      edi, edi
        mov      dword ptr [rbx+0x88], edi
        jmp      SHORT G_M19968_IG04
        align    [0 bytes for IG17]
 						;; size=54 bbWeight=1 PerfScore 17.00
 G_M19968_IG03:
        add      edi, dword ptr [rbx+0x88]
        inc      edi
        mov      dword ptr [rbx+0x88], edi
        mov      rdi, gword ptr [rbx+0x70]
        mov      rdi, gword ptr [rdi+0x10]
        mov      eax, dword ptr [rbx+0x88]
        cmp      eax, dword ptr [rdi+0x08]
        jae      G_M19968_IG245
        mov      edi, dword ptr [rdi+4*rax+0x10]
        mov      eax, edi
        and      eax, -65
        mov      dword ptr [rbx+0x84], eax
        test     dil, 64
        setne    dil
        mov      byte  ptr [rbx+0x69], dil
 						;; size=64 bbWeight=8 PerfScore 160.00
 G_M19968_IG04:
        mov      r13d, dword ptr [rbx+0x84]
        cmp      r13d, 164
        jle      G_M19968_IG12
 						;; size=20 bbWeight=32 PerfScore 104.00
 G_M19968_IG05:
        lea      r12d, [r13-0x118]
        cmp      r12d, 5
        ja       SHORT G_M19968_IG07
 						;; size=13 bbWeight=8 PerfScore 14.00
 G_M19968_IG06:
        mov      edi, r12d
        lea      rax, [reloc @RWD00]
        mov      eax, dword ptr [rax+4*rdi]
        lea      rcx, G_M19968_IG02
        add      rax, rcx
        jmp      rax
 						;; size=25 bbWeight=6.86 PerfScore 41.14
 G_M19968_IG07:
        cmp      r13d, 525
        je       G_M19968_IG119
        jmp      G_M19968_IG240
 						;; size=18 bbWeight=8 PerfScore 26.00
 G_M19968_IG08:
        mov      edi, dword ptr [rbx+0x50]
        inc      edi
        mov      dword ptr [rbx+0x50], edi
        mov      eax, dword ptr [rbx+0x54]
        add      eax, 2
        mov      dword ptr [rbx+0x54], eax
        mov      r13, gword ptr [rbx+0x10]
        dec      edi
        mov      r12d, dword ptr [r13+0x08]
        cmp      edi, r12d
        jae      G_M19968_IG245
        mov      edi, dword ptr [r13+4*rdi+0x10]
        mov      r13, gword ptr [rbx+0x18]
        mov      rcx, r13
        lea      edx, [rax-0x02]
        mov      esi, dword ptr [rcx+0x08]
        cmp      edx, esi
        jae      G_M19968_IG245
        mov      ecx, dword ptr [rcx+4*rdx+0x10]
        dec      ecx
        dec      eax
        cmp      eax, esi
        jae      G_M19968_IG245
        mov      edx, eax
        mov      dword ptr [r13+4*rdx+0x10], edi
        dec      eax
        cmp      eax, esi
        jae      G_M19968_IG245
        mov      esi, eax
        mov      dword ptr [r13+4*rsi+0x10], ecx
        mov      dword ptr [rbx+0x54], eax
        jmp      G_M19968_IG240
 						;; size=110 bbWeight=8 PerfScore 246.00
 G_M19968_IG09:
        mov      edi, dword ptr [rbx+0x50]
        add      edi, 2
        mov      dword ptr [rbx+0x50], edi
        mov      r13, gword ptr [rbx+0x10]
        mov      rax, r13
        lea      ecx, [rdi-0x01]
        mov      r12d, dword ptr [rax+0x08]
        cmp      ecx, r12d
        jae      G_M19968_IG245
        mov      eax, dword ptr [rax+4*rcx+0x10]
        mov      rcx, r13
        add      edi, -2
        cmp      edi, r12d
        jae      G_M19968_IG245
        mov      edi, dword ptr [rcx+4*rdi+0x10]
        mov      r13, gword ptr [rbx+0x18]
        mov      rcx, r13
        mov      edx, dword ptr [rbx+0x54]
        dec      edx
        mov      esi, dword ptr [rcx+0x08]
        cmp      edx, esi
        jae      G_M19968_IG245
        mov      r8d, edx
        mov      dword ptr [rcx+4*r8+0x10], eax
        dec      edx
        cmp      edx, esi
        jae      G_M19968_IG245
        mov      esi, edx
        mov      dword ptr [rcx+4*rsi+0x10], edi
        mov      dword ptr [rbx+0x54], edx
        jmp      G_M19968_IG240
 						;; size=110 bbWeight=8 PerfScore 238.00
 G_M19968_IG10:
        mov      edi, dword ptr [rbx+0x54]
        inc      edi
        mov      dword ptr [rbx+0x54], edi
        mov      eax, dword ptr [rbx+0x50]
        inc      eax
        mov      dword ptr [rbx+0x50], eax
        mov      r13, gword ptr [rbx+0x10]
        mov      rcx, r13
        dec      eax
        mov      r12d, dword ptr [rcx+0x08]
        cmp      eax, r12d
        jae      G_M19968_IG245
        mov      eax, dword ptr [rcx+4*rax+0x10]
        mov      r13, gword ptr [rbx+0x18]
        mov      rcx, r13
        dec      edi
        mov      dword ptr [rbx+0x54], edi
        mov      esi, dword ptr [rcx+0x08]
        cmp      edi, esi
        jae      G_M19968_IG245
        mov      esi, edi
        mov      dword ptr [rcx+4*rsi+0x10], eax
        jmp      G_M19968_IG240
 						;; size=76 bbWeight=8 PerfScore 194.00
 G_M19968_IG11:
        mov      eax, dword ptr [rbx+0x50]
        inc      eax
        mov      dword ptr [rbx+0x50], eax
        mov      r13, gword ptr [rbx+0x10]
        mov      rdi, r13
        dec      eax
        mov      r12d, dword ptr [rdi+0x08]
        cmp      eax, r12d
        jae      G_M19968_IG245
        mov      edi, dword ptr [rdi+4*rax+0x10]
        mov      r13, gword ptr [rbx+0x18]
        mov      rax, r13
        mov      ecx, dword ptr [rbx+0x54]
        dec      ecx
        mov      dword ptr [rbx+0x54], ecx
        mov      esi, dword ptr [rax+0x08]
        cmp      ecx, esi
        jae      G_M19968_IG245
        mov      dword ptr [rax+4*rcx+0x10], edi
        jmp      G_M19968_IG240
 						;; size=69 bbWeight=8 PerfScore 182.00
 G_M19968_IG12:
        cmp      r13d, 46
        ja       SHORT G_M19968_IG14
 						;; size=6 bbWeight=32 PerfScore 40.00
 G_M19968_IG13:
        mov      edi, r13d
        lea      rsi, [reloc @RWD24]
        mov      esi, dword ptr [rsi+4*rdi]
        lea      rdx, G_M19968_IG02
        add      rsi, rdx
        jmp      rsi
 						;; size=25 bbWeight=31.33 PerfScore 188.00
 G_M19968_IG14:
        add      r13d, -131
        cmp      r13d, 33
        ja       G_M19968_IG240
 						;; size=17 bbWeight=16 PerfScore 24.00
 G_M19968_IG15:
        mov      edi, r13d
        lea      rsi, [reloc @RWD212]
        mov      esi, dword ptr [rsi+4*rdi]
        lea      rax, G_M19968_IG02
        add      rsi, rax
        jmp      rsi
 						;; size=25 bbWeight=15.54 PerfScore 93.26
 G_M19968_IG16:
        mov      eax, dword ptr [rbx+0x50]
        inc      eax
        mov      dword ptr [rbx+0x50], eax
        mov      r12, gword ptr [rbx+0x20]
        jmp      SHORT G_M19968_IG18
 						;; size=14 bbWeight=8 PerfScore 58.00
 G_M19968_IG17:
        mov      rdi, r12
        mov      esi, dword ptr [rbx+0x58]
        lea      ecx, [rsi+0x01]
        mov      dword ptr [rbx+0x58], ecx
        cmp      esi, dword ptr [rdi+0x08]
        jae      G_M19968_IG245
        mov      edi, dword ptr [rdi+4*rsi+0x10]
        mov      rsi, gword ptr [rbx+0x28]
        mov      rsi, gword ptr [rsi+0x50]
        cmp      edi, dword ptr [rsi+0x08]
        jae      G_M19968_IG245
        lea      rdi, bword ptr [rsi+4*rdi+0x10]
        dec      dword ptr [rdi]
 						;; size=49 bbWeight=32 PerfScore 696.00
 G_M19968_IG18:
        mov      edi, dword ptr [r12+0x08]
        sub      edi, dword ptr [rbx+0x58]
        mov      rsi, gword ptr [rbx+0x10]
        lea      ecx, [rax-0x01]
        mov      edx, dword ptr [rsi+0x08]
        cmp      ecx, edx
        jae      G_M19968_IG245
        mov      edx, ecx
        cmp      edi, dword ptr [rsi+4*rdx+0x10]
        jne      SHORT G_M19968_IG17
        jmp      G_M19968_IG240
 						;; size=39 bbWeight=64 PerfScore 1088.00
 G_M19968_IG19:
        mov      eax, dword ptr [rbx+0x50]
        inc      eax
        mov      dword ptr [rbx+0x50], eax
        mov      rsi, gword ptr [rbx+0x10]
        dec      eax
        mov      edx, dword ptr [rsi+0x08]
        cmp      eax, edx
        jae      G_M19968_IG245
        mov      edx, eax
        mov      edi, dword ptr [rsi+4*rdx+0x10]
        mov      r13, gword ptr [rbx+0x18]
        mov      rsi, r13
        mov      eax, dword ptr [rbx+0x54]
        dec      eax
        mov      dword ptr [rbx+0x54], eax
        mov      ecx, dword ptr [rsi+0x08]
        cmp      eax, ecx
        jae      G_M19968_IG245
        mov      ecx, eax
        mov      dword ptr [rsi+4*rcx+0x10], edi
        jmp      G_M19968_IG240
 						;; size=68 bbWeight=8 PerfScore 184.00
 G_M19968_IG20:
        mov      eax, dword ptr [rbx+0x50]
        inc      eax
        mov      dword ptr [rbx+0x50], eax
        mov      rsi, gword ptr [rbx+0x10]
        lea      edi, [rax-0x01]
        mov      edx, dword ptr [rsi+0x08]
        cmp      edi, edx
        jae      G_M19968_IG245
        mov      edx, edi
        mov      edi, dword ptr [rsi+4*rdx+0x10]
        mov      r13, gword ptr [rbx+0x18]
        mov      rsi, r13
        mov      eax, dword ptr [rbx+0x54]
        dec      eax
        mov      dword ptr [rbx+0x54], eax
        mov      ecx, dword ptr [rsi+0x08]
        cmp      eax, ecx
        jae      G_M19968_IG245
        mov      ecx, eax
        mov      dword ptr [rsi+4*rcx+0x10], edi
        mov      r12, gword ptr [rbx+0x20]
        mov      rdi, r12
        mov      esi, dword ptr [rbx+0x58]
        lea      eax, [rsi+0x01]
        mov      dword ptr [rbx+0x58], eax
        cmp      esi, dword ptr [rdi+0x08]
        jae      G_M19968_IG245
        mov      edi, dword ptr [rdi+4*rsi+0x10]
        mov      rsi, gword ptr [rbx+0x28]
        mov      rsi, gword ptr [rsi+0x50]
        cmp      edi, dword ptr [rsi+0x08]
        jae      G_M19968_IG245
        lea      rdi, bword ptr [rsi+4*rdi+0x10]
        dec      dword ptr [rdi]
-       mov      rdi, gword ptr [rbx+0x70]
-       mov      r9, gword ptr [rdi+0x10]
-       mov      rdi, r9
+       mov      r9, gword ptr [rbx+0x70]
+       mov      rdi, gword ptr [r9+0x10]
+       mov      r9, rdi
        mov      r11d, dword ptr [rbx+0x88]
        lea      esi, [r11+0x01]
-       cmp      esi, dword ptr [rdi+0x08]
+       cmp      esi, dword ptr [r9+0x08]
        jae      G_M19968_IG245
-       cmp      dword ptr [rdi+4*rsi+0x10], -1
+       cmp      dword ptr [r9+4*rsi+0x10], -1
        je       G_M19968_IG240
        add      r11d, 2
-       cmp      r11d, dword ptr [r9+0x08]
+       cmp      r11d, dword ptr [rdi+0x08]
        jae      G_M19968_IG245
-       mov      edi, r11d
-       cmp      dword ptr [r9+4*rdi+0x10], -1
+       mov      esi, r11d
+       cmp      dword ptr [rdi+4*rsi+0x10], -1
        je       G_M19968_IG240
        mov      edi, dword ptr [rbx+0x58]
        lea      esi, [rdi+0x01]
        mov      dword ptr [rbx+0x58], esi
-						;; size=197 bbWeight=8 PerfScore 574.00
+						;; size=198 bbWeight=8 PerfScore 574.00
 G_M19968_IG21:
        cmp      edi, dword ptr [r12+0x08]
        jae      G_M19968_IG245
        mov      edi, dword ptr [r12+4*rdi+0x10]
        mov      rsi, gword ptr [rbx+0x28]
        mov      rsi, gword ptr [rsi+0x50]
        cmp      edi, dword ptr [rsi+0x08]
        jae      G_M19968_IG245
        lea      rdi, bword ptr [rsi+4*rdi+0x10]
        dec      dword ptr [rdi]
        jmp      G_M19968_IG240
 						;; size=45 bbWeight=8 PerfScore 160.00
 G_M19968_IG22:
        mov      edi, dword ptr [rbx+0x54]
        inc      edi
        mov      dword ptr [rbx+0x54], edi
        jmp      G_M19968_IG240
 						;; size=13 bbWeight=8 PerfScore 42.00
 G_M19968_IG23:
        add      dword ptr [rbx+0x50], 3
        mov      rsi, gword ptr [rbx+0x10]
        mov      rdi, rsi
        mov      eax, dword ptr [rbx+0x50]
        dec      eax
        mov      edx, dword ptr [rdi+0x08]
        cmp      eax, edx
        jae      G_M19968_IG245
        mov      eax, dword ptr [rdi+4*rax+0x10]
        mov      rdi, rsi
        mov      ecx, dword ptr [rbx+0x50]
        add      ecx, -3
        cmp      ecx, edx
        jae      G_M19968_IG245
        mov      edi, dword ptr [rdi+4*rcx+0x10]
        mov      rcx, rsi
        mov      r8d, dword ptr [rbx+0x50]
        add      r8d, -2
        cmp      r8d, edx
        jae      G_M19968_IG245
        mov      ecx, dword ptr [rcx+4*r8+0x10]
-       mov      r8, gword ptr [rbx+0x70]
-       mov      r9, gword ptr [r8+0x10]
-       mov      r8, r9
+       mov      r9, gword ptr [rbx+0x70]
+       mov      r8, gword ptr [r9+0x10]
        mov      r11d, dword ptr [rbx+0x88]
        lea      r9d, [r11+0x02]
        cmp      r9d, dword ptr [r8+0x08]
        jae      G_M19968_IG245
        cmp      ecx, dword ptr [r8+4*r9+0x10]
        jge      SHORT G_M19968_IG24
        cmp      edi, eax
        jne      SHORT G_M19968_IG25
-						;; size=120 bbWeight=16 PerfScore 644.00
+						;; size=117 bbWeight=16 PerfScore 640.00
 G_M19968_IG24:
        mov      rdi, rsi
        mov      eax, dword ptr [rbx+0x50]
        dec      eax
        cmp      eax, edx
        jae      G_M19968_IG245
        mov      edi, dword ptr [rdi+4*rax+0x10]
        mov      eax, dword ptr [rbx+0x50]
        add      eax, -2
        cmp      eax, edx
        jae      G_M19968_IG245
        mov      edx, eax
        mov      esi, dword ptr [rsi+4*rdx+0x10]
        mov      r13, gword ptr [rbx+0x18]
        mov      rax, r13
        mov      ecx, dword ptr [rbx+0x54]
        dec      ecx
        mov      edx, dword ptr [rax+0x08]
        cmp      ecx, edx
        jae      G_M19968_IG245
        mov      r8d, ecx
        mov      dword ptr [rax+4*r8+0x10], edi
        dec      ecx
        cmp      ecx, edx
        jae      G_M19968_IG245
        mov      edx, ecx
        mov      dword ptr [rax+4*rdx+0x10], esi
        mov      dword ptr [rbx+0x54], ecx
        jmp      G_M19968_IG240
 						;; size=95 bbWeight=8 PerfScore 210.00
 G_M19968_IG25:
        mov      dword ptr [rbx+0x4C], edi
        mov      ecx, dword ptr [rbx+0x50]
        add      ecx, -2
        cmp      ecx, edx
        jae      G_M19968_IG245
        mov      esi, dword ptr [rsi+4*rcx+0x10]
        inc      esi
        mov      r13, gword ptr [rbx+0x18]
        mov      rcx, r13
        mov      edx, dword ptr [rbx+0x54]
        dec      edx
        mov      r8d, dword ptr [rcx+0x08]
        cmp      edx, r8d
        jae      G_M19968_IG245
        mov      r9d, edx
        mov      dword ptr [rcx+4*r9+0x10], edi
        dec      edx
        cmp      edx, r8d
        jae      G_M19968_IG245
        mov      edi, edx
        mov      dword ptr [rcx+4*rdi+0x10], esi
        mov      dword ptr [rbx+0x54], edx
        mov      rdi, rbx
        mov      esi, eax
        mov      rax, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.RegexInterpreter:TrackPush2(int):this
        call     [rax]System.Text.RegularExpressions.RegexInterpreter:TrackPush2(int):this
        mov      rdi, gword ptr [rbx+0x70]
        mov      rdi, gword ptr [rdi+0x10]
        mov      eax, dword ptr [rbx+0x88]
        inc      eax
        cmp      eax, dword ptr [rdi+0x08]
        jae      G_M19968_IG245
        mov      r13d, dword ptr [rdi+4*rax+0x10]
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.RegexRunner:EnsureStorage():this
        call     [rax]System.Text.RegularExpressions.RegexRunner:EnsureStorage():this
        mov      dword ptr [rbx+0x88], r13d
        mov      rsi, gword ptr [rbx+0x70]
        mov      rsi, gword ptr [rsi+0x10]
        cmp      r13d, dword ptr [rsi+0x08]
        jae      G_M19968_IG245
        mov      edx, r13d
        mov      esi, dword ptr [rsi+4*rdx+0x10]
        mov      edx, esi
        and      edx, -65
        mov      dword ptr [rbx+0x84], edx
        test     sil, 64
        setne    sil
        mov      byte  ptr [rbx+0x69], sil
        jmp      G_M19968_IG04
 						;; size=198 bbWeight=16 PerfScore 896.00
 G_M19968_IG26:
        mov      eax, dword ptr [rbx+0x50]
        inc      eax
        mov      dword ptr [rbx+0x50], eax
        mov      esi, dword ptr [rbx+0x54]
        add      esi, 2
        mov      dword ptr [rbx+0x54], esi
        mov      r13, gword ptr [rbx+0x18]
        mov      rdx, r13
        lea      edi, [rsi-0x02]
        mov      r8d, dword ptr [rdx+0x08]
        cmp      edi, r8d
        jae      G_M19968_IG245
        mov      edi, dword ptr [rdx+4*rdi+0x10]
        test     edi, edi
        jg       SHORT G_M19968_IG27
        mov      rdx, gword ptr [rbx+0x10]
        dec      eax
        mov      ecx, dword ptr [rdx+0x08]
        cmp      eax, ecx
        jae      G_M19968_IG245
        mov      ecx, eax
        mov      edx, dword ptr [rdx+4*rcx+0x10]
        dec      edi
        mov      rax, r13
        dec      esi
        cmp      esi, r8d
        jae      G_M19968_IG245
        mov      ecx, esi
        mov      dword ptr [rax+4*rcx+0x10], edx
        dec      esi
        cmp      esi, r8d
        jae      G_M19968_IG245
        mov      r8d, esi
        mov      dword ptr [rax+4*r8+0x10], edi
        mov      dword ptr [rbx+0x54], esi
        jmp      G_M19968_IG240
 						;; size=120 bbWeight=8 PerfScore 260.00
 G_M19968_IG27:
        mov      rdx, r13
        dec      esi
        cmp      esi, r8d
        jae      G_M19968_IG245
        mov      esi, dword ptr [rdx+4*rsi+0x10]
        mov      dword ptr [rbx+0x4C], esi
        mov      rdx, gword ptr [rbx+0x10]
        mov      rsi, rdx
        lea      edx, [rax-0x01]
        mov      ecx, dword ptr [rsi+0x08]
        cmp      edx, ecx
        jae      G_M19968_IG245
        mov      esi, dword ptr [rsi+4*rdx+0x10]
        lea      edx, [rdi-0x01]
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.RegexInterpreter:TrackPush2(int,int):this
        call     [rax]System.Text.RegularExpressions.RegexInterpreter:TrackPush2(int,int):this
        jmp      G_M19968_IG242
-						;; size=69 bbWeight=8 PerfScore 150.00
+       align    [0 bytes for IG78]
+						;; size=69 bbWeight=2 PerfScore 37.50
 G_M19968_IG28:
        mov      esi, dword ptr [rbx+0x54]
        add      esi, 2
        mov      dword ptr [rbx+0x54], esi
        jmp      G_M19968_IG240
 						;; size=14 bbWeight=8 PerfScore 42.00
 G_M19968_IG29:
        mov      edi, dword ptr [rbx+0x50]
        add      edi, 2
        mov      dword ptr [rbx+0x50], edi
        mov      rdx, gword ptr [rbx+0x10]
        mov      rsi, rdx
        lea      eax, [rdi-0x02]
        mov      ecx, dword ptr [rsi+0x08]
        cmp      eax, ecx
        jae      G_M19968_IG245
        mov      r13d, dword ptr [rsi+4*rax+0x10]
        mov      rsi, rdx
        dec      edi
        cmp      edi, ecx
        jae      G_M19968_IG245
        mov      esi, dword ptr [rsi+4*rdi+0x10]
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.RegexInterpreter:TrackPush2(int):this
        call     [rax]System.Text.RegularExpressions.RegexInterpreter:TrackPush2(int):this
        mov      rdi, gword ptr [rbx+0x18]
        mov      eax, dword ptr [rbx+0x54]
        dec      eax
        mov      dword ptr [rbx+0x54], eax
        cmp      eax, dword ptr [rdi+0x08]
        jae      G_M19968_IG245
        mov      dword ptr [rdi+4*rax+0x10], r13d
        mov      dword ptr [rbx+0x4C], r13d
        mov      rdi, gword ptr [rbx+0x70]
        mov      rdi, gword ptr [rdi+0x10]
        mov      eax, dword ptr [rbx+0x88]
        inc      eax
        cmp      eax, dword ptr [rdi+0x08]
        jae      G_M19968_IG245
        mov      r13d, dword ptr [rdi+4*rax+0x10]
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.RegexRunner:EnsureStorage():this
        call     [rax]System.Text.RegularExpressions.RegexRunner:EnsureStorage():this
        mov      dword ptr [rbx+0x88], r13d
        mov      rsi, gword ptr [rbx+0x70]
        mov      rsi, gword ptr [rsi+0x10]
        cmp      r13d, dword ptr [rsi+0x08]
        jae      G_M19968_IG245
        mov      edi, r13d
        mov      esi, dword ptr [rsi+4*rdi+0x10]
        mov      edi, esi
        and      edi, -65
        mov      dword ptr [rbx+0x84], edi
        test     sil, 64
        setne    sil
        mov      byte  ptr [rbx+0x69], sil
        jmp      G_M19968_IG04
 						;; size=202 bbWeight=16 PerfScore 1000.00
 G_M19968_IG30:
        mov      edi, dword ptr [rbx+0x50]
        add      edi, 2
        mov      dword ptr [rbx+0x50], edi
        mov      esi, dword ptr [rbx+0x54]
        inc      esi
        mov      dword ptr [rbx+0x54], esi
        mov      rdx, gword ptr [rbx+0x10]
        mov      rsi, rdx
        lea      eax, [rdi-0x02]
        mov      ecx, dword ptr [rsi+0x08]
        cmp      eax, ecx
        jae      G_M19968_IG245
        mov      esi, dword ptr [rsi+4*rax+0x10]
        mov      dword ptr [rbx+0x4C], esi
        mov      rsi, rdx
        dec      edi
        cmp      edi, ecx
        jae      G_M19968_IG245
        mov      esi, dword ptr [rsi+4*rdi+0x10]
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.RegexInterpreter:TrackPush2(int):this
        call     [rax]System.Text.RegularExpressions.RegexInterpreter:TrackPush2(int):this
-						;; size=77 bbWeight=16 PerfScore 364.00
+       jmp      G_M19968_IG143
+						;; size=82 bbWeight=2 PerfScore 49.50
 G_M19968_IG31:
-       mov      edi, 1
-       jmp      G_M19968_IG03
-						;; size=10 bbWeight=16 PerfScore 36.00
-G_M19968_IG32:
        mov      eax, dword ptr [rbx+0x50]
        inc      eax
        mov      dword ptr [rbx+0x50], eax
        mov      rdx, gword ptr [rbx+0x10]
        mov      rdi, rdx
        dec      eax
        mov      ecx, dword ptr [rdi+0x08]
        cmp      eax, ecx
        jae      G_M19968_IG245
        mov      edi, dword ptr [rdi+4*rax+0x10]
        mov      dword ptr [rbx+0x4C], edi
-       mov      rdi, gword ptr [rbx+0x70]
-       mov      r9, gword ptr [rdi+0x10]
-       mov      rdi, r9
+       mov      r9, gword ptr [rbx+0x70]
+       mov      r8, gword ptr [r9+0x10]
+       mov      rdi, r8
        mov      r11d, dword ptr [rbx+0x88]
        lea      eax, [r11+0x01]
        cmp      eax, dword ptr [rdi+0x08]
        jae      G_M19968_IG245
        mov      r13d, dword ptr [rdi+4*rax+0x10]
        mov      r12d, dword ptr [rbx+0x5C]
        shl      r12d, 2
        cmp      dword ptr [rbx+0x54], r12d
-       jge      SHORT G_M19968_IG34
+       jge      SHORT G_M19968_IG33
 						;; size=85 bbWeight=16 PerfScore 500.00
-G_M19968_IG33:
+G_M19968_IG32:
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.RegexRunner:DoubleStack():this
        call     [rax]System.Text.RegularExpressions.RegexRunner:DoubleStack():this
 						;; size=15 bbWeight=8 PerfScore 28.00
-G_M19968_IG34:
+G_M19968_IG33:
        cmp      dword ptr [rbx+0x50], r12d
-       jge      SHORT G_M19968_IG36
+       jge      SHORT G_M19968_IG35
 						;; size=6 bbWeight=16 PerfScore 64.00
-G_M19968_IG35:
+G_M19968_IG34:
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.RegexRunner:DoubleTrack():this
        call     [rax]System.Text.RegularExpressions.RegexRunner:DoubleTrack():this
 						;; size=15 bbWeight=8 PerfScore 28.00
-G_M19968_IG36:
+G_M19968_IG35:
        mov      dword ptr [rbx+0x88], r13d
        mov      rdi, gword ptr [rbx+0x70]
        mov      rdi, gword ptr [rdi+0x10]
        cmp      r13d, dword ptr [rdi+0x08]
        jae      G_M19968_IG245
        mov      esi, r13d
        mov      edi, dword ptr [rdi+4*rsi+0x10]
        mov      esi, edi
        and      esi, -65
        mov      dword ptr [rbx+0x84], esi
        test     dil, 64
        setne    dil
        mov      byte  ptr [rbx+0x69], dil
        jmp      G_M19968_IG04
 						;; size=60 bbWeight=16 PerfScore 272.00
-G_M19968_IG37:
+G_M19968_IG36:
        mov      edi, dword ptr [rbx+0x50]
        add      edi, 2
        mov      dword ptr [rbx+0x50], edi
        mov      rdx, gword ptr [rbx+0x10]
        mov      rsi, rdx
        add      edi, -2
        mov      ecx, dword ptr [rsi+0x08]
        cmp      edi, ecx
        jae      G_M19968_IG245
        mov      r13d, dword ptr [rsi+4*rdi+0x10]
        mov      dword ptr [rbx+0x4C], r13d
-       mov      rdi, gword ptr [rbx+0x70]
-       mov      r9, gword ptr [rdi+0x10]
-       mov      rdi, r9
+       mov      r9, gword ptr [rbx+0x70]
+       mov      r8, gword ptr [r9+0x10]
+       mov      rdi, r8
        mov      r11d, dword ptr [rbx+0x88]
        lea      esi, [r11+0x01]
        cmp      esi, dword ptr [rdi+0x08]
        jae      G_M19968_IG245
        mov      esi, dword ptr [rdi+4*rsi+0x10]
        cmp      byte  ptr [rbx+0x69], 0
-       je       SHORT G_M19968_IG38
+       je       SHORT G_M19968_IG37
        mov      edi, dword ptr [rbx+0x4C]
        dec      edi
        mov      dword ptr [rbx+0x4C], edi
-       jmp      SHORT G_M19968_IG39
+       jmp      SHORT G_M19968_IG38
 						;; size=90 bbWeight=8 PerfScore 272.00
-G_M19968_IG38:
+G_M19968_IG37:
        mov      edi, dword ptr [rbx+0x4C]
        lea      edx, [rdi+0x01]
        mov      dword ptr [rbx+0x4C], edx
 						;; size=9 bbWeight=8 PerfScore 28.00
-G_M19968_IG39:
+G_M19968_IG38:
        cmp      edi, r15d
        jae      G_M19968_IG245
        mov      edi, edi
        movzx    r12, word  ptr [r14+2*rdi]
-       mov      rdi, gword ptr [rbx+0x70]
-       mov      rdi, gword ptr [rdi+0x18]
+       mov      rdi, gword ptr [r9+0x18]
        cmp      esi, dword ptr [rdi+0x08]
        jae      G_M19968_IG245
        mov      edx, esi
        mov      rax, gword ptr [rdi+8*rdx+0x10]
        mov      gword ptr [rbp-0x60], rax
-       mov      rdi, gword ptr [rbx+0x70]
-       mov      rdi, gword ptr [rdi+0x20]
+       mov      rdi, gword ptr [r9+0x20]
        movsxd   rsi, esi
        mov      rdx, 0xD1FFAB1E      ; uint[]
        mov      rcx, 0xD1FFAB1E      ; code for CORINFO_HELP_LDELEMA_REF
        call     [rcx]CORINFO_HELP_LDELEMA_REF
        mov      rdi, gword ptr [rax]
        test     rdi, rdi
-       je       SHORT G_M19968_IG40
+       je       SHORT G_M19968_IG39
        mov      esi, r12d
        sar      esi, 4
        cmp      dword ptr [rdi+0x08], esi
-       jbe      SHORT G_M19968_IG40
+       jbe      SHORT G_M19968_IG39
        cmp      esi, dword ptr [rdi+0x08]
        jae      G_M19968_IG245
        mov      ecx, dword ptr [rdi+4*rsi+0x10]
        mov      edi, r12d
        and      edi, 15
        add      edi, edi
        mov      esi, 1
        shlx     r8d, esi, edi
        test     ecx, r8d
-       jne      SHORT G_M19968_IG43
-						;; size=132 bbWeight=8 PerfScore 314.00
-G_M19968_IG40:
+       jne      SHORT G_M19968_IG42
+						;; size=124 bbWeight=8 PerfScore 282.00
+G_M19968_IG39:
        cmp      r12d, 128
-       jge      SHORT G_M19968_IG41
+       jge      SHORT G_M19968_IG40
        mov      edi, r12d
        mov      rsi, gword ptr [rbp-0x60]
        mov      rdx, rax
        mov      rax, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.RegexCharClass:<CharInClass>g__InitializeValue|127_0(ushort,System.String,byref):ubyte
        call     [rax]System.Text.RegularExpressions.RegexCharClass:<CharInClass>g__InitializeValue|127_0(ushort,System.String,byref):ubyte
-       jmp      SHORT G_M19968_IG42
+       jmp      SHORT G_M19968_IG41
 						;; size=33 bbWeight=8 PerfScore 64.00
-G_M19968_IG41:
+G_M19968_IG40:
        mov      edi, r12d
        mov      rsi, gword ptr [rbp-0x60]
        xor      edx, edx
        mov      rax, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.RegexCharClass:CharInClassRecursive(ushort,System.String,int):ubyte
        call     [rax]System.Text.RegularExpressions.RegexCharClass:CharInClassRecursive(ushort,System.String,int):ubyte
 						;; size=21 bbWeight=8 PerfScore 38.00
-G_M19968_IG42:
+G_M19968_IG41:
        test     eax, eax
        je       G_M19968_IG240
-       jmp      SHORT G_M19968_IG44
+       jmp      SHORT G_M19968_IG43
 						;; size=10 bbWeight=8 PerfScore 26.00
-G_M19968_IG43:
+G_M19968_IG42:
        add      r8d, r8d
        test     ecx, r8d
        je       G_M19968_IG240
 						;; size=12 bbWeight=8 PerfScore 12.00
-G_M19968_IG44:
+G_M19968_IG43:
        mov      rdx, gword ptr [rbx+0x10]
        mov      esi, dword ptr [rbx+0x50]
        dec      esi
        cmp      esi, dword ptr [rdx+0x08]
        jae      G_M19968_IG245
        mov      esi, dword ptr [rdx+4*rsi+0x10]
        test     esi, esi
        jle      G_M19968_IG242
-						;; size=30 bbWeight=16 PerfScore 184.00
-G_M19968_IG45:
        cmp      byte  ptr [rbx+0x69], 0
-       je       SHORT G_M19968_IG46
+       je       SHORT G_M19968_IG45
+						;; size=36 bbWeight=16 PerfScore 248.00
+G_M19968_IG44:
        mov      edx, -1
-       jmp      SHORT G_M19968_IG47
-						;; size=13 bbWeight=8 PerfScore 50.00
-G_M19968_IG46:
+       jmp      SHORT G_M19968_IG46
+						;; size=7 bbWeight=8 PerfScore 18.00
+G_M19968_IG45:
        mov      edx, 1
 						;; size=5 bbWeight=8 PerfScore 2.00
-G_M19968_IG47:
+G_M19968_IG46:
        add      edx, r13d
        dec      esi
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.RegexInterpreter:TrackPush(int,int):this
        call     [rax]System.Text.RegularExpressions.RegexInterpreter:TrackPush(int,int):this
        jmp      G_M19968_IG242
 						;; size=25 bbWeight=16 PerfScore 96.00
-G_M19968_IG48:
+G_M19968_IG47:
        mov      edi, dword ptr [rbx+0x50]
        add      edi, 2
        mov      dword ptr [rbx+0x50], edi
        mov      rdx, gword ptr [rbx+0x10]
        mov      rsi, rdx
        lea      eax, [rdi-0x02]
        mov      ecx, dword ptr [rsi+0x08]
        cmp      eax, ecx
        jae      G_M19968_IG245
        mov      esi, dword ptr [rsi+4*rax+0x10]
        mov      dword ptr [rbx+0x4C], esi
        cmp      byte  ptr [rbx+0x69], 0
-       je       SHORT G_M19968_IG49
+       je       SHORT G_M19968_IG48
        mov      eax, dword ptr [rbx+0x4C]
        dec      eax
        mov      dword ptr [rbx+0x4C], eax
-       jmp      SHORT G_M19968_IG50
+       jmp      SHORT G_M19968_IG49
 						;; size=53 bbWeight=8 PerfScore 172.00
-G_M19968_IG49:
+G_M19968_IG48:
        mov      eax, dword ptr [rbx+0x4C]
        lea      r8d, [rax+0x01]
        mov      dword ptr [rbx+0x4C], r8d
 						;; size=11 bbWeight=8 PerfScore 28.00
-G_M19968_IG50:
+G_M19968_IG49:
        cmp      eax, r15d
        jae      G_M19968_IG245
        mov      eax, eax
        movzx    rax, word  ptr [r14+2*rax]
-       mov      r8, gword ptr [rbx+0x70]
-       mov      r9, gword ptr [r8+0x10]
-       mov      r8, r9
+       mov      r9, gword ptr [rbx+0x70]
+       mov      r8, gword ptr [r9+0x10]
        mov      r11d, dword ptr [rbx+0x88]
        lea      r9d, [r11+0x01]
        cmp      r9d, dword ptr [r8+0x08]
        jae      G_M19968_IG245
        cmp      ax, word  ptr [r8+4*r9+0x10]
        je       G_M19968_IG240
-						;; size=60 bbWeight=8 PerfScore 146.00
-G_M19968_IG51:
+						;; size=57 bbWeight=8 PerfScore 144.00
+G_M19968_IG50:
        dec      edi
        cmp      edi, ecx
        jae      G_M19968_IG245
        mov      edi, dword ptr [rdx+4*rdi+0x10]
        test     edi, edi
        jle      G_M19968_IG242
-						;; size=22 bbWeight=16 PerfScore 76.00
-G_M19968_IG52:
        cmp      byte  ptr [rbx+0x69], 0
-       je       SHORT G_M19968_IG53
+       je       SHORT G_M19968_IG52
+						;; size=28 bbWeight=16 PerfScore 140.00
+G_M19968_IG51:
        mov      edx, -1
-       jmp      SHORT G_M19968_IG54
-						;; size=13 bbWeight=8 PerfScore 50.00
-G_M19968_IG53:
+       jmp      SHORT G_M19968_IG53
+						;; size=7 bbWeight=8 PerfScore 18.00
+G_M19968_IG52:
        mov      edx, 1
 						;; size=5 bbWeight=8 PerfScore 2.00
-G_M19968_IG54:
+G_M19968_IG53:
        add      edx, esi
        lea      esi, [rdi-0x01]
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.RegexInterpreter:TrackPush(int,int):this
        call     [rax]System.Text.RegularExpressions.RegexInterpreter:TrackPush(int,int):this
        jmp      G_M19968_IG242
 						;; size=25 bbWeight=16 PerfScore 100.00
-G_M19968_IG55:
+G_M19968_IG54:
        mov      edi, dword ptr [rbx+0x50]
        add      edi, 2
        mov      dword ptr [rbx+0x50], edi
        mov      rdx, gword ptr [rbx+0x10]
        mov      rsi, rdx
        lea      eax, [rdi-0x02]
        mov      ecx, dword ptr [rsi+0x08]
        cmp      eax, ecx
        jae      G_M19968_IG245
        mov      esi, dword ptr [rsi+4*rax+0x10]
        mov      dword ptr [rbx+0x4C], esi
        cmp      byte  ptr [rbx+0x69], 0
-       je       SHORT G_M19968_IG56
+       je       SHORT G_M19968_IG55
        mov      eax, dword ptr [rbx+0x4C]
        dec      eax
        mov      dword ptr [rbx+0x4C], eax
-       jmp      SHORT G_M19968_IG57
+       jmp      SHORT G_M19968_IG56
 						;; size=53 bbWeight=8 PerfScore 172.00
-G_M19968_IG56:
+G_M19968_IG55:
        mov      eax, dword ptr [rbx+0x4C]
        lea      r8d, [rax+0x01]
        mov      dword ptr [rbx+0x4C], r8d
 						;; size=11 bbWeight=8 PerfScore 28.00
-G_M19968_IG57:
+G_M19968_IG56:
        cmp      eax, r15d
        jae      G_M19968_IG245
        mov      eax, eax
        movzx    rax, word  ptr [r14+2*rax]
-       mov      r8, gword ptr [rbx+0x70]
-       mov      r9, gword ptr [r8+0x10]
-       mov      r8, r9
+       mov      r9, gword ptr [rbx+0x70]
+       mov      r8, gword ptr [r9+0x10]
        mov      r11d, dword ptr [rbx+0x88]
        lea      r9d, [r11+0x01]
        cmp      r9d, dword ptr [r8+0x08]
        jae      G_M19968_IG245
        cmp      ax, word  ptr [r8+4*r9+0x10]
        jne      G_M19968_IG240
-						;; size=60 bbWeight=8 PerfScore 146.00
-G_M19968_IG58:
+						;; size=57 bbWeight=8 PerfScore 144.00
+G_M19968_IG57:
        dec      edi
        cmp      edi, ecx
        jae      G_M19968_IG245
        mov      edi, dword ptr [rdx+4*rdi+0x10]
        test     edi, edi
        jle      G_M19968_IG242
-						;; size=22 bbWeight=16 PerfScore 76.00
-G_M19968_IG59:
        cmp      byte  ptr [rbx+0x69], 0
-       je       SHORT G_M19968_IG60
+       je       SHORT G_M19968_IG59
+						;; size=28 bbWeight=16 PerfScore 140.00
+G_M19968_IG58:
        mov      edx, -1
-       jmp      SHORT G_M19968_IG61
-						;; size=13 bbWeight=8 PerfScore 50.00
-G_M19968_IG60:
+       jmp      SHORT G_M19968_IG60
+						;; size=7 bbWeight=8 PerfScore 18.00
+G_M19968_IG59:
        mov      edx, 1
 						;; size=5 bbWeight=8 PerfScore 2.00
-G_M19968_IG61:
+G_M19968_IG60:
        add      edx, esi
        lea      esi, [rdi-0x01]
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.RegexInterpreter:TrackPush(int,int):this
        call     [rax]System.Text.RegularExpressions.RegexInterpreter:TrackPush(int,int):this
        jmp      G_M19968_IG242
 						;; size=25 bbWeight=16 PerfScore 100.00
-G_M19968_IG62:
+G_M19968_IG61:
        mov      edi, dword ptr [rbx+0x50]
        add      edi, 2
        mov      dword ptr [rbx+0x50], edi
        mov      rdx, gword ptr [rbx+0x10]
        mov      rsi, rdx
        lea      eax, [rdi-0x01]
        mov      ecx, dword ptr [rsi+0x08]
        cmp      eax, ecx
        jae      G_M19968_IG245
        mov      esi, dword ptr [rsi+4*rax+0x10]
        add      edi, -2
        cmp      edi, ecx
        jae      G_M19968_IG245
        mov      edx, dword ptr [rdx+4*rdi+0x10]
        mov      dword ptr [rbx+0x4C], edx
        test     esi, esi
        jle      G_M19968_IG242
-						;; size=60 bbWeight=16 PerfScore 272.00
-G_M19968_IG63:
        cmp      byte  ptr [rbx+0x69], 0
-       je       SHORT G_M19968_IG64
+       je       SHORT G_M19968_IG63
+						;; size=66 bbWeight=16 PerfScore 336.00
+G_M19968_IG62:
        mov      edi, -1
-       jmp      SHORT G_M19968_IG65
-						;; size=13 bbWeight=8 PerfScore 50.00
-G_M19968_IG64:
+       jmp      SHORT G_M19968_IG64
+						;; size=7 bbWeight=8 PerfScore 18.00
+G_M19968_IG63:
        mov      edi, 1
 						;; size=5 bbWeight=8 PerfScore 2.00
-G_M19968_IG65:
+G_M19968_IG64:
        sub      edx, edi
        dec      esi
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.RegexInterpreter:TrackPush(int,int):this
        call     [rax]System.Text.RegularExpressions.RegexInterpreter:TrackPush(int,int):this
        jmp      G_M19968_IG242
 						;; size=24 bbWeight=16 PerfScore 96.00
-G_M19968_IG66:
+G_M19968_IG65:
        mov      r13, gword ptr [rbx+0x10]
        mov      rdi, r13
        mov      esi, dword ptr [r13+0x08]
        dec      esi
        mov      r12d, dword ptr [rdi+0x08]
        cmp      esi, r12d
        jae      G_M19968_IG245
        lea      rdi, bword ptr [rdi+4*rsi+0x10]
        mov      esi, dword ptr [rdi]
        mov      edx, dword ptr [rbx+0x4C]
        cmp      esi, edx
-       jge      G_M19968_IG78
+       jge      G_M19968_IG118
        mov      dword ptr [rdi], edx
-       jmp      G_M19968_IG78
-       align    [0 bytes for IG80]
+       jmp      G_M19968_IG118
 						;; size=51 bbWeight=4 PerfScore 68.00
-G_M19968_IG67:
+G_M19968_IG66:
        mov      rdi, r14
        mov      esi, r15d
        mov      edx, dword ptr [rbx+0x4C]
        mov      rax, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.RegexRunner:IsECMABoundary(System.ReadOnlySpan`1[ushort],int):ubyte
        call     [rax]System.Text.RegularExpressions.RegexRunner:IsECMABoundary(System.ReadOnlySpan`1[ushort],int):ubyte
        test     eax, eax
        jne      G_M19968_IG240
-       jmp      G_M19968_IG78
+       jmp      G_M19968_IG118
 						;; size=34 bbWeight=8 PerfScore 72.00
-G_M19968_IG68:
+G_M19968_IG67:
        mov      rdi, r14
        mov      esi, r15d
        mov      edx, dword ptr [rbx+0x4C]
        mov      rax, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.RegexRunner:IsECMABoundary(System.ReadOnlySpan`1[ushort],int):ubyte
        call     [rax]System.Text.RegularExpressions.RegexRunner:IsECMABoundary(System.ReadOnlySpan`1[ushort],int):ubyte
        test     eax, eax
        je       G_M19968_IG240
-       jmp      G_M19968_IG78
+       jmp      G_M19968_IG118
 						;; size=34 bbWeight=8 PerfScore 72.00
-G_M19968_IG69:
+G_M19968_IG68:
        mov      rax, gword ptr [rbx+0x28]
        mov      rax, gword ptr [rax+0x50]
        cmp      dword ptr [rax+0x08], 0
        jbe      G_M19968_IG245
        cmp      dword ptr [rax+0x10], 0
        setg     al
        movzx    rax, al
-						;; size=28 bbWeight=1 PerfScore 12.25
-G_M19968_IG70:
+						;; size=28 bbWeight=0.25 PerfScore 3.06
+G_M19968_IG69:
        add      rsp, 56
        pop      rbx
        pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
-						;; size=15 bbWeight=1 PerfScore 4.25
-G_M19968_IG71:
-       mov      rdi, gword ptr [rbx+0x70]
-       mov      rdi, gword ptr [rdi+0x10]
+						;; size=15 bbWeight=0.25 PerfScore 1.06
+G_M19968_IG70:
+       mov      rax, gword ptr [rbx+0x70]
+       mov      rdi, gword ptr [rax+0x10]
        mov      esi, dword ptr [rbx+0x88]
        lea      eax, [rsi+0x01]
        cmp      eax, dword ptr [rdi+0x08]
        jae      G_M19968_IG245
        mov      r13d, dword ptr [rdi+4*rax+0x10]
        mov      r12d, dword ptr [rbx+0x5C]
        shl      r12d, 2
        cmp      dword ptr [rbx+0x54], r12d
-       jge      SHORT G_M19968_IG73
+       jge      SHORT G_M19968_IG72
 						;; size=45 bbWeight=16 PerfScore 304.00
-G_M19968_IG72:
+G_M19968_IG71:
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.RegexRunner:DoubleStack():this
        call     [rax]System.Text.RegularExpressions.RegexRunner:DoubleStack():this
 						;; size=15 bbWeight=8 PerfScore 28.00
-G_M19968_IG73:
+G_M19968_IG72:
        cmp      dword ptr [rbx+0x50], r12d
-       jge      SHORT G_M19968_IG75
+       jge      SHORT G_M19968_IG74
 						;; size=6 bbWeight=16 PerfScore 64.00
-G_M19968_IG74:
+G_M19968_IG73:
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.RegexRunner:DoubleTrack():this
        call     [rax]System.Text.RegularExpressions.RegexRunner:DoubleTrack():this
 						;; size=15 bbWeight=8 PerfScore 28.00
-G_M19968_IG75:
+G_M19968_IG74:
        mov      dword ptr [rbx+0x88], r13d
        mov      rdi, gword ptr [rbx+0x70]
        mov      rdi, gword ptr [rdi+0x10]
        cmp      r13d, dword ptr [rdi+0x08]
        jae      G_M19968_IG245
        mov      esi, r13d
        mov      edi, dword ptr [rdi+4*rsi+0x10]
        mov      esi, edi
        and      esi, -65
        mov      dword ptr [rbx+0x84], esi
        test     dil, 64
        setne    dil
        mov      byte  ptr [rbx+0x69], dil
        jmp      G_M19968_IG04
 						;; size=60 bbWeight=16 PerfScore 272.00
-G_M19968_IG76:
-       mov      rdi, gword ptr [rbx+0x70]
-       mov      rdi, gword ptr [rdi+0x10]
+G_M19968_IG75:
+       mov      rax, gword ptr [rbx+0x70]
+       mov      rdi, gword ptr [rax+0x10]
        mov      esi, dword ptr [rbx+0x88]
        inc      esi
        cmp      esi, dword ptr [rdi+0x08]
        jae      G_M19968_IG245
        mov      esi, dword ptr [rdi+4*rsi+0x10]
        mov      rdi, gword ptr [rbx+0x28]
        mov      rax, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.Match:IsMatched(int):ubyte:this
        cmp      dword ptr [rdi], edi
        call     [rax]System.Text.RegularExpressions.Match:IsMatched(int):ubyte:this
        test     eax, eax
        je       G_M19968_IG240
-       jmp      G_M19968_IG31
+       jmp      G_M19968_IG143
 						;; size=60 bbWeight=8 PerfScore 190.00
-G_M19968_IG77:
+G_M19968_IG76:
        mov      eax, dword ptr [rbx+0x54]
        add      eax, 2
        mov      dword ptr [rbx+0x54], eax
        mov      r13, gword ptr [rbx+0x18]
        mov      rsi, r13
        lea      edi, [rax-0x01]
        mov      ecx, dword ptr [rsi+0x08]
        cmp      edi, ecx
        jae      G_M19968_IG245
        mov      esi, dword ptr [rsi+4*rdi+0x10]
        mov      rdi, gword ptr [rbx+0x10]
        mov      edi, dword ptr [rdi+0x08]
        sub      edi, esi
        mov      dword ptr [rbx+0x50], edi
        mov      rsi, r13
        lea      edi, [rax-0x02]
        cmp      edi, ecx
        jae      G_M19968_IG245
        mov      ecx, dword ptr [rsi+4*rdi+0x10]
        mov      esi, ecx
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.RegexInterpreter:TrackPush(int):this
        call     [rax]System.Text.RegularExpressions.RegexInterpreter:TrackPush(int):this
-						;; size=81 bbWeight=8 PerfScore 194.00
-G_M19968_IG78:
-       xor      edi, edi
-       jmp      G_M19968_IG03
-						;; size=7 bbWeight=64 PerfScore 144.00
-G_M19968_IG79:
+       jmp      G_M19968_IG118
+						;; size=86 bbWeight=2 PerfScore 52.50
+G_M19968_IG77:
        mov      eax, dword ptr [rbx+0x54]
        add      eax, 2
        mov      dword ptr [rbx+0x54], eax
        mov      r13, gword ptr [rbx+0x18]
        mov      rcx, r13
        lea      edx, [rax-0x01]
        mov      edi, dword ptr [rcx+0x08]
        cmp      edx, edi
        jae      G_M19968_IG245
        mov      ecx, dword ptr [rcx+4*rdx+0x10]
        mov      rdx, gword ptr [rbx+0x10]
        mov      edx, dword ptr [rdx+0x08]
        sub      edx, ecx
        mov      dword ptr [rbx+0x50], edx
        mov      r12, gword ptr [rbx+0x20]
-       jmp      SHORT G_M19968_IG81
+       jmp      SHORT G_M19968_IG79
 						;; size=52 bbWeight=8 PerfScore 164.00
-G_M19968_IG80:
+G_M19968_IG78:
        mov      rcx, r12
        mov      edx, dword ptr [rbx+0x58]
        lea      esi, [rdx+0x01]
        mov      dword ptr [rbx+0x58], esi
        cmp      edx, dword ptr [rcx+0x08]
        jae      G_M19968_IG245
        mov      ecx, dword ptr [rcx+4*rdx+0x10]
        mov      rdx, gword ptr [rbx+0x28]
        mov      rdx, gword ptr [rdx+0x50]
        cmp      ecx, dword ptr [rdx+0x08]
        jae      G_M19968_IG245
        lea      rcx, bword ptr [rdx+4*rcx+0x10]
        dec      dword ptr [rcx]
 						;; size=49 bbWeight=32 PerfScore 696.00
-G_M19968_IG81:
+G_M19968_IG79:
        mov      ecx, dword ptr [r12+0x08]
        sub      ecx, dword ptr [rbx+0x58]
        mov      rdx, r13
        lea      esi, [rax-0x02]
        cmp      esi, edi
        jae      G_M19968_IG245
        cmp      ecx, dword ptr [rdx+4*rsi+0x10]
-       jne      SHORT G_M19968_IG80
+       jne      SHORT G_M19968_IG78
        jmp      G_M19968_IG240
 						;; size=33 bbWeight=64 PerfScore 832.00
-G_M19968_IG82:
+G_M19968_IG80:
        cmp      byte  ptr [rbx+0x68], 0
-       je       SHORT G_M19968_IG83
+       je       SHORT G_M19968_IG81
        call     System.Environment:get_TickCount64():long
        cmp      rax, qword ptr [rbx+0x38]
        jge      G_M19968_IG243
-						;; size=21 bbWeight=8 PerfScore 72.00
-G_M19968_IG83:
+						;; size=21 bbWeight=2 PerfScore 18.00
+G_M19968_IG81:
        mov      rdi, gword ptr [rbx+0x10]
        mov      edi, dword ptr [rdi+0x08]
        sub      edi, dword ptr [rbx+0x50]
        mov      rsi, gword ptr [rbx+0x20]
        mov      esi, dword ptr [rsi+0x08]
        sub      esi, dword ptr [rbx+0x58]
        mov      rax, gword ptr [rbx+0x18]
        mov      ecx, dword ptr [rbx+0x54]
        dec      ecx
        cmp      ecx, dword ptr [rax+0x08]
        jae      G_M19968_IG245
        mov      edx, ecx
        mov      dword ptr [rax+4*rdx+0x10], edi
        dec      ecx
        cmp      ecx, dword ptr [rax+0x08]
        jae      G_M19968_IG245
        mov      edi, ecx
        mov      dword ptr [rax+4*rdi+0x10], esi
        mov      dword ptr [rbx+0x54], ecx
        mov      rdi, gword ptr [rbx+0x10]
        mov      esi, dword ptr [rbx+0x50]
        dec      esi
        mov      dword ptr [rbx+0x50], esi
        mov      eax, dword ptr [rbx+0x88]
        cmp      esi, dword ptr [rdi+0x08]
        jae      G_M19968_IG245
        mov      dword ptr [rdi+4*rsi+0x10], eax
-       jmp      G_M19968_IG78
-						;; size=100 bbWeight=8 PerfScore 354.00
-G_M19968_IG84:
+       jmp      G_M19968_IG118
+       align    [0 bytes for IG183]
+						;; size=100 bbWeight=2 PerfScore 88.50
+G_M19968_IG82:
        mov      edi, dword ptr [rbx+0x54]
        inc      edi
        mov      dword ptr [rbx+0x54], edi
        mov      r13, gword ptr [rbx+0x18]
        mov      rsi, r13
        lea      eax, [rdi-0x01]
        mov      ecx, dword ptr [rsi+0x08]
        cmp      eax, ecx
        jae      G_M19968_IG245
        mov      r12d, dword ptr [rsi+4*rax+0x10]
        mov      rdx, gword ptr [rbx+0x10]
        mov      rsi, rdx
        mov      eax, dword ptr [rbx+0x50]
        dec      eax
        mov      edx, dword ptr [rsi+0x08]
        cmp      eax, edx
        jae      G_M19968_IG245
        mov      r8d, eax
        mov      dword ptr [rsi+4*r8+0x10], r12d
        dec      eax
        mov      r8d, dword ptr [rbx+0x88]
        cmp      eax, edx
        jae      G_M19968_IG245
        mov      edx, eax
        mov      dword ptr [rsi+4*rdx+0x10], r8d
        mov      dword ptr [rbx+0x50], eax
        mov      rsi, r13
        dec      edi
        cmp      edi, ecx
        jae      G_M19968_IG245
        mov      edi, dword ptr [rsi+4*rdi+0x10]
        mov      dword ptr [rbx+0x4C], edi
-       jmp      G_M19968_IG78
-						;; size=117 bbWeight=8 PerfScore 262.00
-G_M19968_IG85:
-       mov      rdi, gword ptr [rbx+0x70]
-       mov      rdi, gword ptr [rdi+0x10]
+       jmp      G_M19968_IG118
+						;; size=117 bbWeight=2 PerfScore 65.50
+G_M19968_IG83:
+       mov      rax, gword ptr [rbx+0x70]
+       mov      rdi, gword ptr [rax+0x10]
        mov      rsi, rdi
        mov      r8d, dword ptr [rbx+0x88]
        lea      eax, [r8+0x02]
        cmp      eax, dword ptr [rsi+0x08]
        jae      G_M19968_IG245
        cmp      dword ptr [rsi+4*rax+0x10], -1
-       je       SHORT G_M19968_IG86
+       je       SHORT G_M19968_IG84
        lea      esi, [r8+0x02]
        cmp      esi, dword ptr [rdi+0x08]
        jae      G_M19968_IG245
        mov      esi, dword ptr [rdi+4*rsi+0x10]
        mov      rdi, gword ptr [rbx+0x28]
        mov      rax, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.Match:IsMatched(int):ubyte:this
        cmp      dword ptr [rdi], edi
        call     [rax]System.Text.RegularExpressions.Match:IsMatched(int):ubyte:this
        test     eax, eax
        je       G_M19968_IG240
 						;; size=81 bbWeight=8 PerfScore 246.00
-G_M19968_IG86:
+G_M19968_IG84:
        inc      dword ptr [rbx+0x54]
        mov      rdi, gword ptr [rbx+0x70]
        mov      rdi, gword ptr [rdi+0x10]
        mov      eax, dword ptr [rbx+0x88]
        add      eax, 2
        cmp      eax, dword ptr [rdi+0x08]
        jae      G_M19968_IG245
        cmp      dword ptr [rdi+4*rax+0x10], -1
-       jne      G_M19968_IG89
+       jne      G_M19968_IG87
        mov      rdi, gword ptr [rbx+0x70]
        mov      rdi, gword ptr [rdi+0x10]
        mov      eax, dword ptr [rbx+0x88]
        inc      eax
        cmp      eax, dword ptr [rdi+0x08]
        jae      G_M19968_IG245
        mov      r13d, dword ptr [rdi+4*rax+0x10]
        mov      rdi, gword ptr [rbx+0x18]
        mov      eax, dword ptr [rbx+0x54]
        dec      eax
        cmp      eax, dword ptr [rdi+0x08]
        jae      G_M19968_IG245
        mov      r12d, dword ptr [rdi+4*rax+0x10]
        mov      edi, dword ptr [rbx+0x4C]
        cmp      edi, r12d
-       jge      SHORT G_M19968_IG87
+       jge      SHORT G_M19968_IG85
        mov      dword ptr [rbp-0x40], r12d
        mov      eax, edi
        mov      r12d, eax
        mov      edi, dword ptr [rbp-0x40]
-						;; size=113 bbWeight=8 PerfScore 364.00
-G_M19968_IG87:
+						;; size=113 bbWeight=2 PerfScore 91.00
+G_M19968_IG85:
        cmp      dword ptr [rbx+0x58], 0
-       jne      SHORT G_M19968_IG88
+       jne      SHORT G_M19968_IG86
        mov      dword ptr [rbp-0x40], edi
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.RegexRunner:DoubleCrawl():this
        call     [rax]System.Text.RegularExpressions.RegexRunner:DoubleCrawl():this
        mov      edi, dword ptr [rbp-0x40]
-						;; size=27 bbWeight=8 PerfScore 76.00
-G_M19968_IG88:
+						;; size=27 bbWeight=2 PerfScore 19.00
+G_M19968_IG86:
        mov      rcx, gword ptr [rbx+0x20]
        mov      esi, dword ptr [rbx+0x58]
        dec      esi
        mov      dword ptr [rbx+0x58], esi
        cmp      esi, dword ptr [rcx+0x08]
        jae      G_M19968_IG245
        mov      dword ptr [rcx+4*rsi+0x10], r13d
        mov      ecx, edi
        sub      ecx, r12d
        mov      rdi, gword ptr [rbx+0x28]
        mov      esi, r13d
        mov      edx, r12d
        mov      rax, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.Match:AddMatch(int,int,int):this
        cmp      dword ptr [rdi], edi
        call     [rax]System.Text.RegularExpressions.Match:AddMatch(int,int,int):this
-       jmp      SHORT G_M19968_IG90
-						;; size=57 bbWeight=8 PerfScore 172.00
-G_M19968_IG89:
+       jmp      SHORT G_M19968_IG88
+						;; size=57 bbWeight=2 PerfScore 43.00
+G_M19968_IG87:
        mov      rsi, gword ptr [rbx+0x70]
        mov      rsi, gword ptr [rsi+0x10]
        mov      edx, dword ptr [rbx+0x88]
        inc      edx
        cmp      edx, dword ptr [rsi+0x08]
        jae      G_M19968_IG245
        mov      esi, dword ptr [rsi+4*rdx+0x10]
        mov      rdx, gword ptr [rbx+0x70]
        mov      rdx, gword ptr [rdx+0x10]
        mov      ecx, dword ptr [rbx+0x88]
        add      ecx, 2
        cmp      ecx, dword ptr [rdx+0x08]
        jae      G_M19968_IG245
        mov      edx, dword ptr [rdx+4*rcx+0x10]
        mov      rcx, gword ptr [rbx+0x18]
        mov      r8d, dword ptr [rbx+0x54]
        dec      r8d
        cmp      r8d, dword ptr [rcx+0x08]
        jae      G_M19968_IG245
        mov      ecx, dword ptr [rcx+4*r8+0x10]
        mov      r8d, dword ptr [rbx+0x4C]
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.RegexRunner:TransferCapture(int,int,int,int):this
        call     [rax]System.Text.RegularExpressions.RegexRunner:TransferCapture(int,int,int,int):this
-						;; size=104 bbWeight=8 PerfScore 322.00
-G_M19968_IG90:
+						;; size=104 bbWeight=2 PerfScore 80.50
+G_M19968_IG88:
        mov      rcx, gword ptr [rbx+0x18]
        mov      edi, dword ptr [rbx+0x54]
        dec      edi
        cmp      edi, dword ptr [rcx+0x08]
        jae      G_M19968_IG245
        mov      ecx, dword ptr [rcx+4*rdi+0x10]
        mov      rdi, gword ptr [rbx+0x10]
        mov      esi, dword ptr [rbx+0x50]
        dec      esi
        cmp      esi, dword ptr [rdi+0x08]
        jae      G_M19968_IG245
        mov      edx, esi
        mov      dword ptr [rdi+4*rdx+0x10], ecx
        dec      esi
        mov      ecx, dword ptr [rbx+0x88]
        cmp      esi, dword ptr [rdi+0x08]
        jae      G_M19968_IG245
        mov      edx, esi
        mov      dword ptr [rdi+4*rdx+0x10], ecx
        mov      dword ptr [rbx+0x50], esi
        jmp      G_M19968_IG242
-						;; size=77 bbWeight=8 PerfScore 242.00
-G_M19968_IG91:
+						;; size=77 bbWeight=2 PerfScore 60.50
+G_M19968_IG89:
        mov      edx, dword ptr [rbx+0x4C]
        mov      r13, gword ptr [rbx+0x18]
        mov      rcx, r13
        mov      edi, dword ptr [rbx+0x54]
        dec      edi
        mov      dword ptr [rbx+0x54], edi
        mov      esi, dword ptr [rcx+0x08]
        cmp      edi, esi
        jae      G_M19968_IG245
        mov      esi, edi
        mov      dword ptr [rcx+4*rsi+0x10], edx
        mov      rdx, gword ptr [rbx+0x10]
        mov      ecx, dword ptr [rbx+0x50]
        dec      ecx
        mov      dword ptr [rbx+0x50], ecx
        mov      r8d, dword ptr [rbx+0x88]
        mov      edi, dword ptr [rdx+0x08]
        cmp      ecx, edi
        jae      G_M19968_IG245
        mov      edi, ecx
        mov      dword ptr [rdx+4*rdi+0x10], r8d
-       jmp      G_M19968_IG78
-						;; size=77 bbWeight=8 PerfScore 206.00
-G_M19968_IG92:
+       jmp      G_M19968_IG118
+						;; size=77 bbWeight=2 PerfScore 51.50
+G_M19968_IG90:
        mov      r13, gword ptr [rbx+0x18]
        mov      rcx, r13
        mov      edi, dword ptr [rbx+0x54]
        dec      edi
        mov      dword ptr [rbx+0x54], edi
        mov      esi, dword ptr [rcx+0x08]
        cmp      edi, esi
        jae      G_M19968_IG245
        mov      esi, edi
        mov      dword ptr [rcx+4*rsi+0x10], -1
        mov      rdx, gword ptr [rbx+0x10]
        mov      rcx, rdx
        mov      edi, dword ptr [rbx+0x50]
        dec      edi
        mov      dword ptr [rbx+0x50], edi
        mov      r8d, dword ptr [rbx+0x88]
        mov      esi, r8d
        mov      edx, dword ptr [rcx+0x08]
        cmp      edi, edx
        jae      G_M19968_IG245
        mov      dword ptr [rcx+4*rdi+0x10], esi
-       jmp      G_M19968_IG78
-						;; size=81 bbWeight=8 PerfScore 192.00
-G_M19968_IG93:
+       jmp      G_M19968_IG118
+						;; size=81 bbWeight=2 PerfScore 48.00
+G_M19968_IG91:
        mov      eax, dword ptr [rbx+0x54]
        add      eax, 2
        mov      dword ptr [rbx+0x54], eax
        mov      r13, gword ptr [rbx+0x18]
        mov      rcx, r13
        lea      edi, [rax-0x01]
        mov      esi, dword ptr [rcx+0x08]
        cmp      edi, esi
        jae      G_M19968_IG245
        mov      r8d, dword ptr [rcx+4*rdi+0x10]
        mov      rcx, r13
        lea      edi, [rax-0x02]
        cmp      edi, esi
        jae      G_M19968_IG245
        mov      ecx, dword ptr [rcx+4*rdi+0x10]
        mov      r13d, ecx
        test     r13d, r13d
-       jl       SHORT G_M19968_IG95
+       jl       SHORT G_M19968_IG93
 						;; size=61 bbWeight=16 PerfScore 268.00
-G_M19968_IG94:
+G_M19968_IG92:
        mov      edx, dword ptr [rbx+0x4C]
        mov      ecx, edx
        mov      rdi, rbx
        mov      esi, r8d
        mov      edx, r13d
        mov      rax, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.RegexInterpreter:TrackPush(int,int,int):this
        call     [rax]System.Text.RegularExpressions.RegexInterpreter:TrackPush(int,int,int):this
        jmp      G_M19968_IG242
-						;; size=31 bbWeight=8 PerfScore 66.00
-G_M19968_IG95:
+						;; size=31 bbWeight=2 PerfScore 16.50
+G_M19968_IG93:
        mov      rdi, rbx
        mov      esi, r8d
        mov      rax, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.RegexInterpreter:TrackPush2(int):this
        call     [rax]System.Text.RegularExpressions.RegexInterpreter:TrackPush2(int):this
        mov      edi, dword ptr [rbx+0x4C]
        mov      rax, gword ptr [rbx+0x18]
        mov      ecx, dword ptr [rbx+0x54]
        dec      ecx
        cmp      ecx, dword ptr [rax+0x08]
        jae      G_M19968_IG245
        mov      edx, ecx
        mov      dword ptr [rax+4*rdx+0x10], edi
        dec      ecx
        cmp      ecx, dword ptr [rax+0x08]
        jae      G_M19968_IG245
        mov      edi, ecx
        inc      r13d
        mov      dword ptr [rax+4*rdi+0x10], r13d
        mov      dword ptr [rbx+0x54], ecx
        mov      rdi, gword ptr [rbx+0x70]
        mov      rdi, gword ptr [rdi+0x10]
        mov      eax, dword ptr [rbx+0x88]
        inc      eax
        cmp      eax, dword ptr [rdi+0x08]
        jae      G_M19968_IG245
        mov      r13d, dword ptr [rdi+4*rax+0x10]
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.RegexRunner:EnsureStorage():this
        call     [rax]System.Text.RegularExpressions.RegexRunner:EnsureStorage():this
        mov      dword ptr [rbx+0x88], r13d
        mov      rdi, gword ptr [rbx+0x70]
        mov      rdi, gword ptr [rdi+0x10]
        cmp      r13d, dword ptr [rdi+0x08]
        jae      G_M19968_IG245
        mov      eax, r13d
        mov      edi, dword ptr [rdi+4*rax+0x10]
        mov      eax, edi
        and      eax, -65
        mov      dword ptr [rbx+0x84], eax
        test     dil, 64
        setne    dil
        mov      byte  ptr [rbx+0x69], dil
        jmp      G_M19968_IG04
 						;; size=174 bbWeight=16 PerfScore 876.00
-G_M19968_IG96:
+G_M19968_IG94:
        mov      eax, dword ptr [rbx+0x54]
        add      eax, 2
        mov      dword ptr [rbx+0x54], eax
        mov      r13, gword ptr [rbx+0x18]
        mov      rdi, r13
        lea      ecx, [rax-0x01]
        mov      esi, dword ptr [rdi+0x08]
        cmp      ecx, esi
        jae      G_M19968_IG245
        mov      ecx, dword ptr [rdi+4*rcx+0x10]
        mov      dword ptr [rbp-0x2C], ecx
        mov      rdi, r13
        lea      edx, [rax-0x02]
        cmp      edx, esi
        jae      G_M19968_IG245
        mov      edi, dword ptr [rdi+4*rdx+0x10]
        mov      edx, edi
        mov      dword ptr [rbp-0x30], edx
        mov      edi, dword ptr [rbx+0x4C]
        mov      r8d, edi
        mov      edi, r8d
        sub      edi, ecx
        mov      r9, gword ptr [rbx+0x70]
        mov      r9, gword ptr [r9+0x10]
        mov      r10, r9
        mov      r11d, dword ptr [rbx+0x88]
        lea      r12d, [r11+0x02]
        cmp      r12d, dword ptr [r10+0x08]
        jae      G_M19968_IG245
        cmp      dword ptr [r10+4*r12+0x10], edx
-       jle      SHORT G_M19968_IG100
+       jle      SHORT G_M19968_IG98
        test     edi, edi
-       jne      SHORT G_M19968_IG99
+       jne      SHORT G_M19968_IG97
 						;; size=114 bbWeight=16 PerfScore 580.00
-G_M19968_IG97:
+G_M19968_IG95:
        test     edx, edx
-       jl       SHORT G_M19968_IG101
+       jl       SHORT G_M19968_IG99
 						;; size=4 bbWeight=8 PerfScore 10.00
-G_M19968_IG98:
+G_M19968_IG96:
        mov      ecx, dword ptr [rbp-0x2C]
        mov      edx, dword ptr [rbp-0x30]
-       jmp      G_M19968_IG102
-       align    [0 bytes for IG183]
+       jmp      G_M19968_IG100
 						;; size=11 bbWeight=4 PerfScore 16.00
-G_M19968_IG99:
-       jmp      SHORT G_M19968_IG101
+G_M19968_IG97:
+       jmp      SHORT G_M19968_IG99
 						;; size=2 bbWeight=8 PerfScore 16.00
-G_M19968_IG100:
+G_M19968_IG98:
        mov      ecx, dword ptr [rbp-0x2C]
-       jmp      G_M19968_IG102
+       jmp      G_M19968_IG100
 						;; size=8 bbWeight=8 PerfScore 24.00
-G_M19968_IG101:
+G_M19968_IG99:
        mov      rdi, gword ptr [rbx+0x10]
        mov      r10d, dword ptr [rbx+0x50]
        dec      r10d
        mov      r12d, dword ptr [rdi+0x08]
        cmp      r10d, r12d
        jae      G_M19968_IG245
        mov      ecx, r10d
        mov      edx, dword ptr [rbp-0x2C]
        mov      dword ptr [rdi+4*rcx+0x10], edx
        dec      r10d
        mov      ecx, r11d
        cmp      r10d, r12d
        jae      G_M19968_IG245
        mov      edx, r10d
        mov      dword ptr [rdi+4*rdx+0x10], ecx
        mov      dword ptr [rbx+0x50], r10d
        mov      edi, r8d
        mov      rcx, r13
        dec      eax
        cmp      eax, esi
        jae      G_M19968_IG245
        mov      edx, eax
        mov      dword ptr [rcx+4*rdx+0x10], edi
        dec      eax
        cmp      eax, esi
        jae      G_M19968_IG245
        mov      edi, eax
        mov      edx, dword ptr [rbp-0x30]
        inc      edx
        mov      dword ptr [rcx+4*rdi+0x10], edx
        mov      dword ptr [rbx+0x54], eax
        mov      rdi, r9
        lea      eax, [r11+0x01]
        cmp      eax, dword ptr [rdi+0x08]
        jae      G_M19968_IG245
        mov      r13d, dword ptr [rdi+4*rax+0x10]
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.RegexRunner:EnsureStorage():this
        call     [rax]System.Text.RegularExpressions.RegexRunner:EnsureStorage():this
        mov      dword ptr [rbx+0x88], r13d
        mov      rdi, gword ptr [rbx+0x70]
        mov      rdi, gword ptr [rdi+0x10]
        cmp      r13d, dword ptr [rdi+0x08]
        jae      G_M19968_IG245
        mov      esi, r13d
        mov      edi, dword ptr [rdi+4*rsi+0x10]
        mov      esi, edi
        and      esi, -65
        mov      dword ptr [rbx+0x84], esi
        test     dil, 64
        setne    dil
        mov      byte  ptr [rbx+0x69], dil
        jmp      G_M19968_IG04
 						;; size=202 bbWeight=16 PerfScore 788.00
-G_M19968_IG102:
+G_M19968_IG100:
        mov      rdi, rbx
        mov      esi, ecx
        mov      rax, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.RegexInterpreter:TrackPush2(int,int):this
        call     [rax]System.Text.RegularExpressions.RegexInterpreter:TrackPush2(int,int):this
        jmp      G_M19968_IG242
-						;; size=22 bbWeight=8 PerfScore 46.00
-G_M19968_IG103:
+						;; size=22 bbWeight=2 PerfScore 11.50
+G_M19968_IG101:
        mov      r8d, dword ptr [rbx+0x4C]
-       mov      rsi, gword ptr [rbx+0x70]
-       mov      r9, gword ptr [rsi+0x10]
+       mov      r9, gword ptr [rbx+0x70]
+       mov      r9, gword ptr [r9+0x10]
        mov      r11d, dword ptr [rbx+0x88]
        lea      esi, [r11+0x01]
        cmp      esi, dword ptr [r9+0x08]
        jae      G_M19968_IG245
        mov      esi, dword ptr [r9+4*rsi+0x10]
        mov      r13, gword ptr [rbx+0x18]
        mov      rdi, r13
        mov      eax, dword ptr [rbx+0x54]
        dec      eax
        mov      ecx, dword ptr [rdi+0x08]
        cmp      eax, ecx
        jae      G_M19968_IG245
        mov      edx, eax
        mov      dword ptr [rdi+4*rdx+0x10], r8d
        dec      eax
        cmp      eax, ecx
        jae      G_M19968_IG245
        mov      ecx, eax
        mov      dword ptr [rdi+4*rcx+0x10], esi
        mov      dword ptr [rbx+0x54], eax
        mov      rdi, gword ptr [rbx+0x10]
        mov      esi, dword ptr [rbx+0x50]
        dec      esi
        mov      dword ptr [rbx+0x50], esi
        mov      r12d, dword ptr [rdi+0x08]
        cmp      esi, r12d
        jae      G_M19968_IG245
        mov      dword ptr [rdi+4*rsi+0x10], r11d
-       jmp      G_M19968_IG31
-						;; size=122 bbWeight=16 PerfScore 620.00
-G_M19968_IG104:
-       mov      rsi, gword ptr [rbx+0x70]
-       mov      r9, gword ptr [rsi+0x10]
+       jmp      G_M19968_IG143
+						;; size=122 bbWeight=2 PerfScore 77.50
+G_M19968_IG102:
+       mov      r9, gword ptr [rbx+0x70]
+       mov      r9, gword ptr [r9+0x10]
        mov      rsi, r9
        mov      r11d, dword ptr [rbx+0x88]
        lea      edi, [r11+0x01]
        cmp      edi, dword ptr [rsi+0x08]
        jae      G_M19968_IG245
        mov      esi, dword ptr [rsi+4*rdi+0x10]
        mov      r13, gword ptr [rbx+0x18]
        mov      rdi, r13
        mov      eax, dword ptr [rbx+0x54]
        dec      eax
        mov      ecx, dword ptr [rdi+0x08]
        cmp      eax, ecx
        jae      G_M19968_IG245
        mov      edx, eax
        mov      dword ptr [rdi+4*rdx+0x10], -1
        dec      eax
        cmp      eax, ecx
        jae      G_M19968_IG245
        mov      ecx, eax
        mov      dword ptr [rdi+4*rcx+0x10], esi
        mov      dword ptr [rbx+0x54], eax
        mov      rdi, gword ptr [rbx+0x10]
        mov      rsi, rdi
        mov      edi, dword ptr [rbx+0x50]
        dec      edi
        mov      dword ptr [rbx+0x50], edi
        mov      eax, r11d
        mov      r12d, dword ptr [rsi+0x08]
        cmp      edi, r12d
        jae      G_M19968_IG245
        mov      dword ptr [rsi+4*rdi+0x10], eax
-       jmp      G_M19968_IG31
-						;; size=127 bbWeight=16 PerfScore 600.00
-G_M19968_IG105:
+       jmp      G_M19968_IG143
+						;; size=127 bbWeight=2 PerfScore 75.00
+G_M19968_IG103:
        mov      edi, dword ptr [rbx+0x54]
        inc      edi
        mov      dword ptr [rbx+0x54], edi
        mov      r13, gword ptr [rbx+0x18]
        mov      rsi, r13
        lea      eax, [rdi-0x01]
        mov      ecx, dword ptr [rsi+0x08]
        cmp      eax, ecx
        jae      G_M19968_IG245
        mov      r12d, dword ptr [rsi+4*rax+0x10]
        mov      eax, r12d
        mov      r8d, dword ptr [rbx+0x4C]
        cmp      r8d, eax
-       jne      SHORT G_M19968_IG106
+       jne      SHORT G_M19968_IG104
        mov      rsi, r13
        dec      edi
        mov      dword ptr [rbx+0x54], edi
        cmp      edi, ecx
        jae      G_M19968_IG245
        mov      dword ptr [rsi+4*rdi+0x10], eax
        mov      rsi, r13
        mov      edi, dword ptr [rbx+0x54]
        dec      edi
        cmp      edi, ecx
        jae      G_M19968_IG245
        mov      esi, dword ptr [rsi+4*rdi+0x10]
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.RegexInterpreter:TrackPush2(int):this
        call     [rax]System.Text.RegularExpressions.RegexInterpreter:TrackPush2(int):this
-       jmp      G_M19968_IG31
-						;; size=106 bbWeight=16 PerfScore 476.00
-G_M19968_IG106:
+       jmp      G_M19968_IG143
+						;; size=106 bbWeight=2 PerfScore 59.50
+G_M19968_IG104:
        cmp      eax, -1
-       jne      SHORT G_M19968_IG107
+       jne      SHORT G_M19968_IG105
        mov      eax, r8d
        mov      rdi, gword ptr [rbx+0x10]
        mov      esi, dword ptr [rbx+0x50]
        dec      esi
        mov      r12d, dword ptr [rdi+0x08]
        cmp      esi, r12d
        jae      G_M19968_IG245
        mov      ecx, esi
        mov      dword ptr [rdi+4*rcx+0x10], eax
        dec      esi
        cmp      esi, r12d
        jae      G_M19968_IG245
        mov      eax, esi
        mov      dword ptr [rdi+4*rax+0x10], r8d
        dec      esi
        mov      r11d, dword ptr [rbx+0x88]
        cmp      esi, r12d
        jae      G_M19968_IG245
        mov      eax, esi
        mov      dword ptr [rdi+4*rax+0x10], r11d
        mov      dword ptr [rbx+0x50], esi
-       jmp      G_M19968_IG31
-						;; size=87 bbWeight=8 PerfScore 166.00
-G_M19968_IG107:
+       jmp      G_M19968_IG143
+						;; size=87 bbWeight=2 PerfScore 41.50
+G_M19968_IG105:
        mov      rdi, gword ptr [rbx+0x10]
        mov      rsi, rdi
        mov      edi, dword ptr [rbx+0x50]
        dec      edi
        mov      r12d, dword ptr [rsi+0x08]
        cmp      edi, r12d
        jae      G_M19968_IG245
        mov      ecx, edi
        mov      dword ptr [rsi+4*rcx+0x10], eax
        dec      edi
        cmp      edi, r12d
        jae      G_M19968_IG245
        mov      eax, edi
        mov      dword ptr [rsi+4*rax+0x10], r8d
        dec      edi
        mov      r11d, dword ptr [rbx+0x88]
        mov      eax, r11d
        cmp      edi, r12d
        jae      G_M19968_IG245
        mov      ecx, edi
        mov      dword ptr [rsi+4*rcx+0x10], eax
        mov      dword ptr [rbx+0x50], edi
-       jmp      G_M19968_IG31
-						;; size=84 bbWeight=8 PerfScore 158.00
-G_M19968_IG108:
+       jmp      G_M19968_IG143
+						;; size=84 bbWeight=2 PerfScore 39.50
+G_M19968_IG106:
        mov      edi, dword ptr [rbx+0x54]
        inc      edi
        mov      dword ptr [rbx+0x54], edi
        mov      r8d, dword ptr [rbx+0x4C]
        mov      r13, gword ptr [rbx+0x18]
        mov      rsi, r13
        lea      eax, [rdi-0x01]
        mov      ecx, dword ptr [rsi+0x08]
        cmp      eax, ecx
        jae      G_M19968_IG245
        mov      r12d, dword ptr [rsi+4*rax+0x10]
        cmp      r8d, r12d
-       jne      SHORT G_M19968_IG109
+       jne      SHORT G_M19968_IG108
+						;; size=43 bbWeight=16 PerfScore 232.00
+G_M19968_IG107:
        mov      esi, r12d
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.RegexInterpreter:TrackPush2(int):this
        call     [rax]System.Text.RegularExpressions.RegexInterpreter:TrackPush2(int):this
-       jmp      G_M19968_IG31
-						;; size=66 bbWeight=16 PerfScore 324.00
-G_M19968_IG109:
+       jmp      G_M19968_IG143
+						;; size=23 bbWeight=2 PerfScore 11.50
+G_M19968_IG108:
        mov      eax, r12d
        mov      edx, r8d
        mov      rsi, gword ptr [rbx+0x10]
        mov      r9d, dword ptr [rbx+0x50]
        dec      r9d
        mov      r12d, dword ptr [rsi+0x08]
        cmp      r9d, r12d
        jae      G_M19968_IG245
        mov      r10d, r9d
        mov      dword ptr [rsi+4*r10+0x10], eax
        dec      r9d
        cmp      r9d, r12d
        jae      G_M19968_IG245
        mov      eax, r9d
        mov      dword ptr [rsi+4*rax+0x10], edx
        dec      r9d
        mov      r11d, dword ptr [rbx+0x88]
        mov      eax, r11d
        cmp      r9d, r12d
        jae      G_M19968_IG245
        mov      edx, r9d
        mov      dword ptr [rsi+4*rdx+0x10], eax
        mov      dword ptr [rbx+0x50], r9d
        mov      eax, r8d
        mov      rdx, r13
        dec      edi
        mov      dword ptr [rbx+0x54], edi
        cmp      edi, ecx
        jae      G_M19968_IG245
        mov      dword ptr [rdx+4*rdi+0x10], eax
-       mov      rdi, gword ptr [rbx+0x70]
-       mov      r9, gword ptr [rdi+0x10]
+       mov      r9, gword ptr [rbx+0x70]
+       mov      r9, gword ptr [r9+0x10]
        mov      rdi, r9
        lea      eax, [r11+0x01]
        cmp      eax, dword ptr [rdi+0x08]
        jae      G_M19968_IG245
        mov      r12d, dword ptr [rdi+4*rax+0x10]
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.RegexRunner:EnsureStorage():this
        call     [rax]System.Text.RegularExpressions.RegexRunner:EnsureStorage():this
        mov      dword ptr [rbx+0x88], r12d
        mov      rdi, gword ptr [rbx+0x70]
        mov      rdi, gword ptr [rdi+0x10]
        cmp      r12d, dword ptr [rdi+0x08]
        jae      G_M19968_IG245
        mov      esi, r12d
        mov      edi, dword ptr [rdi+4*rsi+0x10]
        mov      esi, edi
        and      esi, -65
        mov      dword ptr [rbx+0x84], esi
        test     dil, 64
        setne    dil
        mov      byte  ptr [rbx+0x69], dil
        jmp      G_M19968_IG04
 						;; size=217 bbWeight=16 PerfScore 852.00
-G_M19968_IG110:
+G_M19968_IG109:
        mov      r8d, dword ptr [rbx+0x4C]
        mov      rsi, gword ptr [rbx+0x10]
        mov      rdi, rsi
        mov      esi, dword ptr [rbx+0x50]
        dec      esi
        mov      r12d, dword ptr [rdi+0x08]
        cmp      esi, r12d
        jae      G_M19968_IG245
        mov      edx, esi
        mov      dword ptr [rdi+4*rdx+0x10], r8d
        dec      esi
        mov      r11d, dword ptr [rbx+0x88]
        mov      edx, r11d
        cmp      esi, r12d
        jae      G_M19968_IG245
        mov      eax, esi
        mov      dword ptr [rdi+4*rax+0x10], edx
        mov      dword ptr [rbx+0x50], esi
-       jmp      G_M19968_IG31
-						;; size=71 bbWeight=16 PerfScore 304.00
-G_M19968_IG111:
+       jmp      G_M19968_IG143
+						;; size=71 bbWeight=2 PerfScore 38.00
+G_M19968_IG110:
        mov      r8d, dword ptr [rbx+0x4C]
        cmp      r8d, r15d
        jl       G_M19968_IG240
-       jmp      G_M19968_IG78
+       jmp      G_M19968_IG118
 						;; size=18 bbWeight=8 PerfScore 42.00
-G_M19968_IG112:
+G_M19968_IG111:
        mov      r8d, dword ptr [rbx+0x4C]
        lea      edi, [r15-0x01]
        cmp      r8d, edi
        jl       G_M19968_IG240
        cmp      r8d, r15d
-       jae      G_M19968_IG78
+       jae      G_M19968_IG118
        cmp      r8d, r15d
        jae      G_M19968_IG245
        mov      edi, r8d
        cmp      word  ptr [r14+2*rdi], 10
        jne      G_M19968_IG240
-       jmp      G_M19968_IG78
+       jmp      G_M19968_IG118
 						;; size=55 bbWeight=8 PerfScore 100.00
-G_M19968_IG113:
+G_M19968_IG112:
        mov      r8d, dword ptr [rbx+0x4C]
        cmp      r8d, dword ptr [rbx+0x48]
        jne      G_M19968_IG240
-       jmp      G_M19968_IG78
+       jmp      G_M19968_IG118
 						;; size=19 bbWeight=8 PerfScore 64.00
-G_M19968_IG114:
+G_M19968_IG113:
        mov      r8d, dword ptr [rbx+0x4C]
        test     r8d, r8d
        jg       G_M19968_IG240
-       jmp      G_M19968_IG78
+       jmp      G_M19968_IG118
 						;; size=18 bbWeight=8 PerfScore 42.00
+G_M19968_IG114:
+       mov      rdi, r14
+       mov      esi, r15d
+       mov      r8d, dword ptr [rbx+0x4C]
+       mov      edx, r8d
+       mov      rax, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.RegexRunner:IsBoundary(System.ReadOnlySpan`1[ushort],int):ubyte
+       call     [rax]System.Text.RegularExpressions.RegexRunner:IsBoundary(System.ReadOnlySpan`1[ushort],int):ubyte
+       test     eax, eax
+       jne      G_M19968_IG240
+       jmp      SHORT G_M19968_IG118
+						;; size=35 bbWeight=8 PerfScore 74.00
 G_M19968_IG115:
-       mov      rdi, r14
-       mov      esi, r15d
-       mov      r8d, dword ptr [rbx+0x4C]
-       mov      edx, r8d
-       mov      rax, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.RegexRunner:IsBoundary(System.ReadOnlySpan`1[ushort],int):ubyte
-       call     [rax]System.Text.RegularExpressions.RegexRunner:IsBoundary(System.ReadOnlySpan`1[ushort],int):ubyte
-       test     eax, eax
-       jne      G_M19968_IG240
-       jmp      G_M19968_IG78
-						;; size=38 bbWeight=8 PerfScore 74.00
-G_M19968_IG116:
        mov      rdi, r14
        mov      esi, r15d
        mov      r8d, dword ptr [rbx+0x4C]
        mov      edx, r8d
        mov      rax, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.RegexRunner:IsBoundary(System.ReadOnlySpan`1[ushort],int):ubyte
        call     [rax]System.Text.RegularExpressions.RegexRunner:IsBoundary(System.ReadOnlySpan`1[ushort],int):ubyte
        test     eax, eax
        je       G_M19968_IG240
-       jmp      G_M19968_IG78
-						;; size=38 bbWeight=8 PerfScore 74.00
-G_M19968_IG117:
+       jmp      SHORT G_M19968_IG118
+						;; size=35 bbWeight=8 PerfScore 74.00
+G_M19968_IG116:
        mov      r8d, dword ptr [rbx+0x4C]
        cmp      r8d, r15d
-       jae      G_M19968_IG78
+       jae      SHORT G_M19968_IG118
        cmp      r8d, r15d
        jae      G_M19968_IG245
        mov      esi, r8d
        cmp      word  ptr [r14+2*rsi], 10
        jne      G_M19968_IG240
-       jmp      G_M19968_IG78
-						;; size=42 bbWeight=8 PerfScore 86.00
-G_M19968_IG118:
+       jmp      SHORT G_M19968_IG118
+						;; size=35 bbWeight=8 PerfScore 86.00
+G_M19968_IG117:
        mov      r8d, dword ptr [rbx+0x4C]
        lea      esi, [r8-0x01]
        cmp      esi, r15d
-       jae      G_M19968_IG78
+       jae      SHORT G_M19968_IG118
        cmp      esi, r15d
        jae      G_M19968_IG245
        cmp      word  ptr [r14+2*rsi], 10
        jne      G_M19968_IG240
-       jmp      G_M19968_IG78
-						;; size=43 bbWeight=8 PerfScore 88.00
+						;; size=34 bbWeight=8 PerfScore 72.00
+G_M19968_IG118:
+       xor      edi, edi
+       jmp      G_M19968_IG03
+						;; size=7 bbWeight=16 PerfScore 36.00
 G_M19968_IG119:
-       mov      rdi, gword ptr [rbx+0x70]
-       mov      rdi, gword ptr [rdi+0x10]
+       mov      rax, gword ptr [rbx+0x70]
+       mov      rdi, gword ptr [rax+0x10]
        mov      esi, dword ptr [rbx+0x88]
        inc      esi
        cmp      esi, dword ptr [rdi+0x08]
        jae      G_M19968_IG245
        mov      r12d, dword ptr [rdi+4*rsi+0x10]
        mov      rdi, gword ptr [rbx+0x28]
        mov      esi, r12d
        mov      rax, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.Match:IsMatched(int):ubyte:this
        cmp      dword ptr [rdi], edi
        call     [rax]System.Text.RegularExpressions.Match:IsMatched(int):ubyte:this
        test     eax, eax
        jne      SHORT G_M19968_IG120
        mov      rdi, gword ptr [rbx+0x30]
        test     dword ptr [rdi+0x40], 256
        je       G_M19968_IG240
-       jmp      G_M19968_IG31
+       jmp      G_M19968_IG143
 						;; size=77 bbWeight=8 PerfScore 240.00
 G_M19968_IG120:
        mov      rdi, gword ptr [rbx+0x28]
        mov      esi, r12d
        mov      rax, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.Match:MatchIndex(int):int:this
        cmp      dword ptr [rdi], edi
        call     [rax]System.Text.RegularExpressions.Match:MatchIndex(int):int:this
        mov      r13d, eax
        mov      rdi, gword ptr [rbx+0x28]
        mov      esi, r12d
        mov      rax, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.Match:MatchLength(int):int:this
        cmp      dword ptr [rdi], edi
        call     [rax]System.Text.RegularExpressions.Match:MatchLength(int):int:this
        mov      edx, eax
        mov      esi, r13d
        test     dword ptr [rbx+0x84], 512
        setne    r9b
        movzx    r9, r9b
        mov      rcx, r14
        mov      r8d, r15d
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.RegexInterpreter:MatchRef(int,int,System.ReadOnlySpan`1[ushort],ubyte):ubyte:this
        call     [rax]System.Text.RegularExpressions.RegexInterpreter:MatchRef(int,int,System.ReadOnlySpan`1[ushort],ubyte):ubyte:this
        test     eax, eax
-       jne      G_M19968_IG31
+       jne      G_M19968_IG143
        jmp      G_M19968_IG240
 						;; size=102 bbWeight=8 PerfScore 234.00
 G_M19968_IG121:
-       mov      rsi, gword ptr [rbx+0x70]
-       mov      rsi, gword ptr [rsi+0x18]
-       mov      rdx, gword ptr [rbx+0x70]
-       mov      r9, gword ptr [rdx+0x10]
+       mov      r9, gword ptr [rbx+0x70]
+       mov      rsi, gword ptr [r9+0x18]
+       mov      r9, gword ptr [r9+0x10]
        mov      rdx, r9
        mov      r11d, dword ptr [rbx+0x88]
        lea      ecx, [r11+0x01]
        cmp      ecx, dword ptr [rdx+0x08]
        jae      G_M19968_IG245
        mov      edx, dword ptr [rdx+4*rcx+0x10]
        cmp      edx, dword ptr [rsi+0x08]
        jae      G_M19968_IG245
        mov      rsi, gword ptr [rsi+8*rdx+0x10]
        mov      rdx, r14
        mov      ecx, r15d
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.RegexInterpreter:MatchString(System.String,System.ReadOnlySpan`1[ushort]):ubyte:this
        call     [rax]System.Text.RegularExpressions.RegexInterpreter:MatchString(System.String,System.ReadOnlySpan`1[ushort]):ubyte:this
        test     eax, eax
        je       G_M19968_IG240
-       jmp      G_M19968_IG31
-						;; size=91 bbWeight=8 PerfScore 240.00
+       jmp      G_M19968_IG143
+						;; size=87 bbWeight=8 PerfScore 224.00
 G_M19968_IG122:
        cmp      byte  ptr [rbx+0x69], 0
        je       SHORT G_M19968_IG123
        mov      r8d, dword ptr [rbx+0x4C]
        mov      edi, r8d
        jmp      SHORT G_M19968_IG124
 						;; size=15 bbWeight=8 PerfScore 66.00
 G_M19968_IG123:
        mov      edi, dword ptr [rbx+0x44]
        mov      r8d, dword ptr [rbx+0x4C]
        sub      edi, r8d
 						;; size=10 bbWeight=8 PerfScore 34.00
 G_M19968_IG124:
        test     edi, edi
        jle      G_M19968_IG240
-       mov      rdi, gword ptr [rbx+0x70]
-       mov      r9, gword ptr [rdi+0x10]
-       mov      rdi, r9
+       mov      r9, gword ptr [rbx+0x70]
+       mov      rdi, gword ptr [r9+0x10]
        mov      r11d, dword ptr [rbx+0x88]
        lea      esi, [r11+0x01]
        cmp      esi, dword ptr [rdi+0x08]
        jae      G_M19968_IG245
        mov      esi, dword ptr [rdi+4*rsi+0x10]
        cmp      byte  ptr [rbx+0x69], 0
        je       SHORT G_M19968_IG125
        lea      edi, [r8-0x01]
        mov      dword ptr [rbx+0x4C], edi
        jmp      SHORT G_M19968_IG126
-						;; size=58 bbWeight=8 PerfScore 172.00
+						;; size=55 bbWeight=8 PerfScore 170.00
 G_M19968_IG125:
        mov      edi, r8d
        lea      edx, [rdi+0x01]
        mov      dword ptr [rbx+0x4C], edx
 						;; size=9 bbWeight=8 PerfScore 14.00
 G_M19968_IG126:
        cmp      edi, r15d
        jae      G_M19968_IG245
        mov      edi, edi
        movzx    r12, word  ptr [r14+2*rdi]
-       mov      rdi, gword ptr [rbx+0x70]
-       mov      rdi, gword ptr [rdi+0x18]
+       mov      rdi, gword ptr [r9+0x18]
        cmp      esi, dword ptr [rdi+0x08]
        jae      G_M19968_IG245
        mov      edx, esi
        mov      r13, gword ptr [rdi+8*rdx+0x10]
-       mov      rdi, gword ptr [rbx+0x70]
-       mov      rdi, gword ptr [rdi+0x20]
+       mov      rdi, gword ptr [r9+0x20]
        movsxd   rsi, esi
        mov      rdx, 0xD1FFAB1E      ; uint[]
        mov      rax, 0xD1FFAB1E      ; code for CORINFO_HELP_LDELEMA_REF
        call     [rax]CORINFO_HELP_LDELEMA_REF
        mov      rdi, gword ptr [rax]
        test     rdi, rdi
        je       SHORT G_M19968_IG127
        mov      esi, r12d
        sar      esi, 4
        cmp      dword ptr [rdi+0x08], esi
        jbe      SHORT G_M19968_IG127
        cmp      esi, dword ptr [rdi+0x08]
        jae      G_M19968_IG245
        mov      ecx, dword ptr [rdi+4*rsi+0x10]
        mov      edi, r12d
        and      edi, 15
        add      edi, edi
        mov      esi, 1
        shlx     r8d, esi, edi
        test     ecx, r8d
        jne      G_M19968_IG132
-						;; size=132 bbWeight=8 PerfScore 306.00
+						;; size=124 bbWeight=8 PerfScore 274.00
 G_M19968_IG127:
        cmp      r12d, 128
        jge      SHORT G_M19968_IG128
        mov      edi, r12d
        mov      rsi, r13
        mov      rdx, rax
        mov      rax, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.RegexCharClass:<CharInClass>g__InitializeValue|127_0(ushort,System.String,byref):ubyte
        call     [rax]System.Text.RegularExpressions.RegexCharClass:<CharInClass>g__InitializeValue|127_0(ushort,System.String,byref):ubyte
        jmp      G_M19968_IG131
 						;; size=35 bbWeight=8 PerfScore 58.00
 G_M19968_IG128:
        cmp      dword ptr [r13+0x08], 1
        jbe      G_M19968_IG245
        movzx    rcx, word  ptr [r13+0x0E]
        cmp      dword ptr [r13+0x08], 2
        jbe      G_M19968_IG245
        movzx    r8, word  ptr [r13+0x10]
        lea      eax, [rcx+r8+0x03]
        mov      dword ptr [rbp-0x44], eax
        mov      edi, r12d
        mov      rsi, r13
        xor      edx, edx
        mov      r9, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.RegexCharClass:CharInClassInternal(ushort,System.String,int,int,int):ubyte
        call     [r9]System.Text.RegularExpressions.RegexCharClass:CharInClassInternal(ushort,System.String,int,int,int):ubyte
        cmp      dword ptr [r13+0x08], 0
        jbe      G_M19968_IG245
        cmp      word  ptr [r13+0x0C], 1
        je       SHORT G_M19968_IG129
        test     eax, eax
        je       SHORT G_M19968_IG131
        jmp      SHORT G_M19968_IG130
 						;; size=86 bbWeight=8 PerfScore 234.00
 G_M19968_IG129:
        test     eax, eax
        sete     al
        movzx    rax, al
        test     eax, eax
        je       SHORT G_M19968_IG131
 						;; size=12 bbWeight=8 PerfScore 22.00
 G_M19968_IG130:
        mov      edx, dword ptr [rbp-0x44]
        cmp      dword ptr [r13+0x08], edx
        jle      SHORT G_M19968_IG131
        mov      edi, r12d
        mov      rsi, r13
        mov      rax, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.RegexCharClass:CharInClassRecursive(ushort,System.String,int):ubyte
        call     [rax]System.Text.RegularExpressions.RegexCharClass:CharInClassRecursive(ushort,System.String,int):ubyte
        test     eax, eax
        sete     al
        movzx    rax, al
 						;; size=35 bbWeight=8 PerfScore 82.00
 G_M19968_IG131:
        test     eax, eax
        je       G_M19968_IG240
-       jmp      G_M19968_IG31
+       jmp      G_M19968_IG143
 						;; size=13 bbWeight=8 PerfScore 26.00
 G_M19968_IG132:
        add      r8d, r8d
        test     ecx, r8d
        je       G_M19968_IG240
-       jmp      G_M19968_IG31
+       jmp      G_M19968_IG143
 						;; size=17 bbWeight=8 PerfScore 28.00
 G_M19968_IG133:
        cmp      byte  ptr [rbx+0x69], 0
        je       SHORT G_M19968_IG134
        mov      r8d, dword ptr [rbx+0x4C]
        mov      edx, r8d
        jmp      SHORT G_M19968_IG135
 						;; size=15 bbWeight=8 PerfScore 66.00
 G_M19968_IG134:
        mov      edx, dword ptr [rbx+0x44]
        mov      r8d, dword ptr [rbx+0x4C]
        sub      edx, r8d
 						;; size=10 bbWeight=8 PerfScore 34.00
 G_M19968_IG135:
        test     edx, edx
        jle      G_M19968_IG240
        cmp      byte  ptr [rbx+0x69], 0
        je       SHORT G_M19968_IG136
        lea      edx, [r8-0x01]
        mov      dword ptr [rbx+0x4C], edx
        jmp      SHORT G_M19968_IG137
 						;; size=23 bbWeight=8 PerfScore 70.00
 G_M19968_IG136:
        mov      edx, r8d
        lea      r8d, [rdx+0x01]
        mov      dword ptr [rbx+0x4C], r8d
 						;; size=11 bbWeight=8 PerfScore 14.00
 G_M19968_IG137:
        cmp      edx, r15d
        jae      G_M19968_IG245
        mov      edx, edx
        movzx    rdx, word  ptr [r14+2*rdx]
-       mov      rsi, gword ptr [rbx+0x70]
-       mov      r9, gword ptr [rsi+0x10]
+       mov      r9, gword ptr [rbx+0x70]
+       mov      rdi, gword ptr [r9+0x10]
+       mov      r9, rdi
        mov      r11d, dword ptr [rbx+0x88]
-       inc      r11d
-       cmp      r11d, dword ptr [r9+0x08]
+       lea      edi, [r11+0x01]
+       cmp      edi, dword ptr [r9+0x08]
        jae      G_M19968_IG245
-       mov      esi, r11d
-       cmp      dx, word  ptr [r9+4*rsi+0x10]
+       mov      r11d, edi
+       cmp      dx, word  ptr [r9+4*r11+0x10]
        je       G_M19968_IG240
-       jmp      G_M19968_IG31
-						;; size=64 bbWeight=8 PerfScore 160.00
+       jmp      SHORT G_M19968_IG143
+						;; size=65 bbWeight=8 PerfScore 164.00
 G_M19968_IG138:
        cmp      byte  ptr [rbx+0x69], 0
        je       SHORT G_M19968_IG139
        mov      r8d, dword ptr [rbx+0x4C]
        mov      edx, r8d
        jmp      SHORT G_M19968_IG140
 						;; size=15 bbWeight=8 PerfScore 66.00
 G_M19968_IG139:
        mov      edx, dword ptr [rbx+0x44]
        mov      r8d, dword ptr [rbx+0x4C]
        sub      edx, r8d
 						;; size=10 bbWeight=8 PerfScore 34.00
 G_M19968_IG140:
        test     edx, edx
        jle      G_M19968_IG240
        cmp      byte  ptr [rbx+0x69], 0
        je       SHORT G_M19968_IG141
        lea      edx, [r8-0x01]
        mov      dword ptr [rbx+0x4C], edx
        jmp      SHORT G_M19968_IG142
 						;; size=23 bbWeight=8 PerfScore 70.00
 G_M19968_IG141:
        mov      edx, r8d
        lea      r8d, [rdx+0x01]
        mov      dword ptr [rbx+0x4C], r8d
 						;; size=11 bbWeight=8 PerfScore 14.00
 G_M19968_IG142:
        cmp      edx, r15d
        jae      G_M19968_IG245
        mov      edx, edx
        movzx    rdx, word  ptr [r14+2*rdx]
-       mov      rsi, gword ptr [rbx+0x70]
-       mov      r9, gword ptr [rsi+0x10]
+       mov      r9, gword ptr [rbx+0x70]
+       mov      rdi, gword ptr [r9+0x10]
+       mov      r9, rdi
        mov      r11d, dword ptr [rbx+0x88]
-       inc      r11d
-       cmp      r11d, dword ptr [r9+0x08]
+       lea      edi, [r11+0x01]
+       cmp      edi, dword ptr [r9+0x08]
        jae      G_M19968_IG245
-       mov      esi, r11d
-       cmp      dx, word  ptr [r9+4*rsi+0x10]
+       mov      r11d, edi
+       cmp      dx, word  ptr [r9+4*r11+0x10]
        jne      G_M19968_IG240
-       jmp      G_M19968_IG31
-						;; size=64 bbWeight=8 PerfScore 160.00
+						;; size=63 bbWeight=8 PerfScore 148.00
 G_M19968_IG143:
-       mov      rdx, gword ptr [rbx+0x70]
-       mov      r9, gword ptr [rdx+0x10]
-       mov      rdx, r9
+       mov      edi, 1
+       jmp      G_M19968_IG03
+						;; size=10 bbWeight=16 PerfScore 36.00
+G_M19968_IG144:
+       mov      r9, gword ptr [rbx+0x70]
+       mov      rdi, gword ptr [r9+0x10]
+       mov      rdx, rdi
        mov      r11d, dword ptr [rbx+0x88]
        lea      esi, [r11+0x02]
        cmp      esi, dword ptr [rdx+0x08]
        jae      G_M19968_IG245
        mov      esi, dword ptr [rdx+4*rsi+0x10]
        cmp      byte  ptr [rbx+0x69], 0
-       je       SHORT G_M19968_IG145
+       je       SHORT G_M19968_IG146
 						;; size=41 bbWeight=16 PerfScore 268.00
-G_M19968_IG144:
+G_M19968_IG145:
        mov      r8d, dword ptr [rbx+0x4C]
        mov      edi, r8d
-       jmp      SHORT G_M19968_IG146
+       jmp      SHORT G_M19968_IG147
 						;; size=9 bbWeight=8 PerfScore 34.00
-G_M19968_IG145:
+G_M19968_IG146:
        mov      edi, dword ptr [rbx+0x44]
        mov      r8d, dword ptr [rbx+0x4C]
        sub      edi, r8d
 						;; size=10 bbWeight=8 PerfScore 34.00
-G_M19968_IG146:
-       cmp      esi, edi
-       jg       SHORT G_M19968_IG148
-						;; size=4 bbWeight=16 PerfScore 20.00
 G_M19968_IG147:
-       jmp      SHORT G_M19968_IG149
-						;; size=2 bbWeight=8 PerfScore 16.00
+       cmp      esi, edi
+       jg       SHORT G_M19968_IG149
+						;; size=4 bbWeight=16 PerfScore 20.00
 G_M19968_IG148:
+       jmp      SHORT G_M19968_IG150
+						;; size=2 bbWeight=8 PerfScore 16.00
+G_M19968_IG149:
        mov      esi, edi
 						;; size=2 bbWeight=8 PerfScore 2.00
-G_M19968_IG149:
+G_M19968_IG150:
        test     esi, esi
        jle      G_M19968_IG242
        mov      edx, r8d
        dec      esi
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.RegexInterpreter:TrackPush(int,int):this
        call     [rax]System.Text.RegularExpressions.RegexInterpreter:TrackPush(int,int):this
        jmp      G_M19968_IG242
 						;; size=33 bbWeight=16 PerfScore 116.00
-G_M19968_IG150:
-       mov      rdi, gword ptr [rbx+0x70]
-       mov      r9, gword ptr [rdi+0x10]
-       mov      rdi, r9
-       mov      r11d, dword ptr [rbx+0x88]
-       lea      esi, [r11+0x02]
-       cmp      esi, dword ptr [rdi+0x08]
-       jae      G_M19968_IG245
-       mov      r13d, dword ptr [rdi+4*rsi+0x10]
-       cmp      byte  ptr [rbx+0x69], 0
-       je       SHORT G_M19968_IG152
-						;; size=42 bbWeight=16 PerfScore 268.00
 G_M19968_IG151:
+       mov      r9, gword ptr [rbx+0x70]
+       mov      rdi, gword ptr [r9+0x10]
+       mov      rsi, rdi
+       mov      r11d, dword ptr [rbx+0x88]
+       lea      edx, [r11+0x02]
+       cmp      edx, dword ptr [rsi+0x08]
+       jae      G_M19968_IG245
+       mov      r13d, dword ptr [rsi+4*rdx+0x10]
+       cmp      byte  ptr [rbx+0x69], 0
+       je       SHORT G_M19968_IG153
+						;; size=42 bbWeight=16 PerfScore 268.00
+G_M19968_IG152:
        mov      r8d, dword ptr [rbx+0x4C]
        mov      r12d, r8d
-       jmp      SHORT G_M19968_IG153
+       jmp      SHORT G_M19968_IG154
 						;; size=9 bbWeight=8 PerfScore 34.00
-G_M19968_IG152:
+G_M19968_IG153:
        mov      r12d, dword ptr [rbx+0x44]
        mov      r8d, dword ptr [rbx+0x4C]
        sub      r12d, r8d
 						;; size=11 bbWeight=8 PerfScore 34.00
-G_M19968_IG153:
-       cmp      r13d, r12d
-       jg       SHORT G_M19968_IG155
-						;; size=5 bbWeight=16 PerfScore 20.00
 G_M19968_IG154:
-       jmp      SHORT G_M19968_IG156
-						;; size=2 bbWeight=8 PerfScore 16.00
+       cmp      r13d, r12d
+       jg       SHORT G_M19968_IG156
+						;; size=5 bbWeight=16 PerfScore 20.00
 G_M19968_IG155:
+       jmp      SHORT G_M19968_IG157
+						;; size=2 bbWeight=8 PerfScore 16.00
+G_M19968_IG156:
        mov      r13d, r12d
 						;; size=3 bbWeight=8 PerfScore 2.00
-G_M19968_IG156:
-       mov      rdi, r9
+G_M19968_IG157:
        lea      esi, [r11+0x01]
        cmp      esi, dword ptr [rdi+0x08]
        jae      G_M19968_IG245
        mov      esi, dword ptr [rdi+4*rsi+0x10]
-       mov      rdi, gword ptr [rbx+0x70]
-       mov      rdi, gword ptr [rdi+0x18]
+       mov      rdi, gword ptr [r9+0x18]
        cmp      esi, dword ptr [rdi+0x08]
        jae      G_M19968_IG245
        mov      edx, esi
        mov      r12, gword ptr [rdi+8*rdx+0x10]
-       mov      rdi, gword ptr [rbx+0x70]
-       mov      rdi, gword ptr [rdi+0x20]
+       mov      rdi, gword ptr [r9+0x20]
        movsxd   rsi, esi
        mov      rdx, 0xD1FFAB1E      ; uint[]
        mov      rax, 0xD1FFAB1E      ; code for CORINFO_HELP_LDELEMA_REF
        call     [rax]CORINFO_HELP_LDELEMA_REF
        mov      bword ptr [rbp-0x58], rax
        mov      dword ptr [rbp-0x3C], r13d
        test     r13d, r13d
-       jle      SHORT G_M19968_IG158
-						;; size=90 bbWeight=16 PerfScore 448.00
-G_M19968_IG157:
-       cmp      byte  ptr [rbx+0x69], 0
-       jne      SHORT G_M19968_IG159
-       jmp      SHORT G_M19968_IG160
-						;; size=8 bbWeight=64 PerfScore 384.00
+       jle      SHORT G_M19968_IG159
+						;; size=79 bbWeight=16 PerfScore 380.00
 G_M19968_IG158:
-       mov      ecx, dword ptr [rbp-0x3C]
-       jmp      G_M19968_IG169
-						;; size=8 bbWeight=8 PerfScore 24.00
+       cmp      byte  ptr [rbx+0x69], 0
+       jne      SHORT G_M19968_IG160
+       jmp      SHORT G_M19968_IG161
+						;; size=8 bbWeight=64 PerfScore 384.00
 G_M19968_IG159:
+       mov      ecx, dword ptr [rbp-0x3C]
+       jmp      G_M19968_IG170
+						;; size=8 bbWeight=8 PerfScore 24.00
+G_M19968_IG160:
        mov      edi, dword ptr [rbx+0x4C]
        dec      edi
        mov      dword ptr [rbx+0x4C], edi
-       jmp      SHORT G_M19968_IG161
+       jmp      SHORT G_M19968_IG162
 						;; size=10 bbWeight=32 PerfScore 168.00
-G_M19968_IG160:
+G_M19968_IG161:
        mov      edi, dword ptr [rbx+0x4C]
        lea      esi, [rdi+0x01]
        mov      dword ptr [rbx+0x4C], esi
 						;; size=9 bbWeight=32 PerfScore 112.00
-G_M19968_IG161:
+G_M19968_IG162:
        cmp      edi, r15d
        jae      G_M19968_IG245
        mov      edi, edi
        movzx    rdi, word  ptr [r14+2*rdi]
        mov      rsi, gword ptr [rax]
        test     rsi, rsi
-       je       SHORT G_M19968_IG163
+       je       SHORT G_M19968_IG164
 						;; size=24 bbWeight=64 PerfScore 432.00
-G_M19968_IG162:
+G_M19968_IG163:
        mov      edx, edi
        sar      edx, 4
        cmp      dword ptr [rsi+0x08], edx
-       jbe      SHORT G_M19968_IG163
+       jbe      SHORT G_M19968_IG164
        cmp      edx, dword ptr [rsi+0x08]
        jae      G_M19968_IG245
        mov      r8d, dword ptr [rsi+4*rdx+0x10]
        mov      esi, edi
        and      esi, 15
        add      esi, esi
        mov      edx, 1
        shlx     r9d, edx, esi
        test     r8d, r9d
-       jne      SHORT G_M19968_IG167
+       jne      SHORT G_M19968_IG168
 						;; size=46 bbWeight=32 PerfScore 432.00
-G_M19968_IG163:
+G_M19968_IG164:
        cmp      edi, 128
-       jge      SHORT G_M19968_IG164
+       jge      SHORT G_M19968_IG165
        mov      rsi, r12
        mov      rdx, rax
        mov      r8, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.RegexCharClass:<CharInClass>g__InitializeValue|127_0(ushort,System.String,byref):ubyte
        call     [r8]System.Text.RegularExpressions.RegexCharClass:<CharInClass>g__InitializeValue|127_0(ushort,System.String,byref):ubyte
-       jmp      SHORT G_M19968_IG165
+       jmp      SHORT G_M19968_IG166
 						;; size=29 bbWeight=32 PerfScore 224.00
-G_M19968_IG164:
+G_M19968_IG165:
        mov      rsi, r12
        xor      edx, edx
        mov      r8, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.RegexCharClass:CharInClassRecursive(ushort,System.String,int):ubyte
        call     [r8]System.Text.RegularExpressions.RegexCharClass:CharInClassRecursive(ushort,System.String,int):ubyte
 						;; size=18 bbWeight=32 PerfScore 120.00
-G_M19968_IG165:
-       test     eax, eax
-       jne      SHORT G_M19968_IG168
-						;; size=4 bbWeight=32 PerfScore 40.00
 G_M19968_IG166:
+       test     eax, eax
+       jne      SHORT G_M19968_IG169
+						;; size=4 bbWeight=32 PerfScore 40.00
+G_M19968_IG167:
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.RegexInterpreter:Backwardnext():this
        call     [rax]System.Text.RegularExpressions.RegexInterpreter:Backwardnext():this
        mov      ecx, dword ptr [rbp-0x3C]
-       jmp      SHORT G_M19968_IG169
+       jmp      SHORT G_M19968_IG170
 						;; size=20 bbWeight=8 PerfScore 52.00
-G_M19968_IG167:
+G_M19968_IG168:
        add      r9d, r9d
        test     r8d, r9d
-       je       SHORT G_M19968_IG166
+       je       SHORT G_M19968_IG167
 						;; size=8 bbWeight=32 PerfScore 48.00
-G_M19968_IG168:
+G_M19968_IG169:
        mov      ecx, dword ptr [rbp-0x3C]
        dec      ecx
        test     ecx, ecx
        mov      rax, bword ptr [rbp-0x58]
        jg       SHORT G_M19968_IG171
 						;; size=13 bbWeight=64 PerfScore 224.00
-G_M19968_IG169:
+G_M19968_IG170:
        cmp      r13d, ecx
        jle      G_M19968_IG242
-						;; size=9 bbWeight=16 PerfScore 20.00
-G_M19968_IG170:
        cmp      dword ptr [rbx+0x84], 5
        jne      G_M19968_IG242
        mov      edx, dword ptr [rbx+0x4C]
        cmp      byte  ptr [rbx+0x69], 0
        jne      SHORT G_M19968_IG172
        jmp      SHORT G_M19968_IG173
-						;; size=24 bbWeight=8 PerfScore 96.00
+						;; size=33 bbWeight=16 PerfScore 212.00
 G_M19968_IG171:
        mov      dword ptr [rbp-0x3C], ecx
-       jmp      G_M19968_IG157
+       jmp      G_M19968_IG158
 						;; size=8 bbWeight=32 PerfScore 96.00
 G_M19968_IG172:
        mov      edi, -1
        jmp      SHORT G_M19968_IG174
 						;; size=7 bbWeight=8 PerfScore 18.00
 G_M19968_IG173:
        mov      edi, 1
 						;; size=5 bbWeight=8 PerfScore 2.00
 G_M19968_IG174:
        mov      esi, r13d
        sub      esi, ecx
        dec      esi
        sub      edx, edi
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.RegexInterpreter:TrackPush(int,int):this
        call     [rax]System.Text.RegularExpressions.RegexInterpreter:TrackPush(int,int):this
        jmp      G_M19968_IG242
 						;; size=29 bbWeight=16 PerfScore 104.00
 G_M19968_IG175:
-       mov      rdi, gword ptr [rbx+0x70]
-       mov      r9, gword ptr [rdi+0x10]
-       mov      rdi, r9
+       mov      r9, gword ptr [rbx+0x70]
+       mov      rdi, gword ptr [r9+0x10]
+       mov      rax, rdi
        mov      r11d, dword ptr [rbx+0x88]
-       lea      eax, [r11+0x02]
-       cmp      eax, dword ptr [rdi+0x08]
+       lea      ecx, [r11+0x02]
+       cmp      ecx, dword ptr [rax+0x08]
        jae      G_M19968_IG245
-       mov      r13d, dword ptr [rdi+4*rax+0x10]
+       mov      r13d, dword ptr [rax+4*rcx+0x10]
        cmp      byte  ptr [rbx+0x69], 0
        je       SHORT G_M19968_IG177
 						;; size=42 bbWeight=16 PerfScore 268.00
 G_M19968_IG176:
        mov      r8d, dword ptr [rbx+0x4C]
        mov      r12d, r8d
        jmp      SHORT G_M19968_IG178
 						;; size=9 bbWeight=8 PerfScore 34.00
 G_M19968_IG177:
        mov      r12d, dword ptr [rbx+0x44]
        mov      r8d, dword ptr [rbx+0x4C]
        sub      r12d, r8d
 						;; size=11 bbWeight=8 PerfScore 34.00
 G_M19968_IG178:
        cmp      r13d, r12d
        jg       SHORT G_M19968_IG180
 						;; size=5 bbWeight=16 PerfScore 20.00
 G_M19968_IG179:
        jmp      SHORT G_M19968_IG181
 						;; size=2 bbWeight=8 PerfScore 16.00
 G_M19968_IG180:
        mov      r13d, r12d
 						;; size=3 bbWeight=8 PerfScore 2.00
 G_M19968_IG181:
-       mov      rdi, r9
        lea      eax, [r11+0x01]
        cmp      eax, dword ptr [rdi+0x08]
        jae      G_M19968_IG245
        movzx    r12, word  ptr [rdi+4*rax+0x10]
        cmp      byte  ptr [rbx+0x69], 0
        je       SHORT G_M19968_IG187
-						;; size=28 bbWeight=16 PerfScore 172.00
+		  ;; NOP compensation instructions of 4 bytes.
+						;; size=29 bbWeight=16 PerfScore 168.00
 G_M19968_IG182:
        mov      edi, r13d
        test     r13d, r13d
        jle      SHORT G_M19968_IG184
 						;; size=8 bbWeight=8 PerfScore 12.00
 G_M19968_IG183:
        mov      eax, dword ptr [rbx+0x4C]
        dec      eax
        mov      dword ptr [rbx+0x4C], eax
        cmp      eax, r15d
        jae      G_M19968_IG245
        movzx    rax, word  ptr [r14+2*rax]
        cmp      eax, r12d
        je       SHORT G_M19968_IG186
        dec      edi
        test     edi, edi
        jg       SHORT G_M19968_IG183
 						;; size=33 bbWeight=64 PerfScore 592.00
 G_M19968_IG184:
        mov      dword ptr [rbp-0x38], edi
        cmp      r13d, edi
        jle      G_M19968_IG242
-						;; size=12 bbWeight=16 PerfScore 36.00
-G_M19968_IG185:
        cmp      dword ptr [rbx+0x84], 4
        jne      G_M19968_IG242
        mov      edx, dword ptr [rbx+0x4C]
        cmp      byte  ptr [rbx+0x69], 0
        jne      G_M19968_IG191
+						;; size=38 bbWeight=16 PerfScore 196.00
+G_M19968_IG185:
        mov      eax, 1
        jmp      G_M19968_IG192
        align    [0 bytes for IG200]
-						;; size=36 bbWeight=8 PerfScore 98.00
+						;; size=10 bbWeight=8 PerfScore 18.00
 G_M19968_IG186:
        mov      dword ptr [rbp-0x38], edi
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.RegexInterpreter:Backwardnext():this
        call     [rax]System.Text.RegularExpressions.RegexInterpreter:Backwardnext():this
        mov      edi, dword ptr [rbp-0x38]
        jmp      SHORT G_M19968_IG184
 						;; size=23 bbWeight=8 PerfScore 60.00
 G_M19968_IG187:
        mov      edi, r8d
        mov      esi, edi
        mov      edx, r13d
        add      rsi, rdx
        mov      edx, r15d
        cmp      rsi, rdx
        ja       G_M19968_IG244
        lea      rdi, bword ptr [r14+2*rdi]
        movsx    rsi, r12w
        movzx    rdx, si
        dec      edx
        cmp      edx, 254
        jb       SHORT G_M19968_IG188
        mov      edx, r13d
        mov      rax, 0xD1FFAB1E      ; code for System.SpanHelpers:NonPackedIndexOfValueType[short,System.SpanHelpers+DontNegate`1[short]](byref,short,int):int
        call     [rax]System.SpanHelpers:NonPackedIndexOfValueType[short,System.SpanHelpers+DontNegate`1[short]](byref,short,int):int
        jmp      SHORT G_M19968_IG189
 						;; size=61 bbWeight=8 PerfScore 84.00
 G_M19968_IG188:
        movsx    rsi, si
        mov      edx, r13d
        mov      rax, 0xD1FFAB1E      ; code for System.PackedSpanHelpers:IndexOf[System.SpanHelpers+DontNegate`1[short],System.PackedSpanHelpers+NopTransform](byref,short,int):int
        call     [rax]System.PackedSpanHelpers:IndexOf[System.SpanHelpers+DontNegate`1[short],System.PackedSpanHelpers+NopTransform](byref,short,int):int
 						;; size=19 bbWeight=8 PerfScore 30.00
 G_M19968_IG189:
        cmp      eax, -1
        je       SHORT G_M19968_IG190
        add      dword ptr [rbx+0x4C], eax
        mov      edi, r13d
        sub      edi, eax
        mov      r12d, edi
        mov      edi, r12d
        jmp      G_M19968_IG184
 						;; size=24 bbWeight=8 PerfScore 58.00
 G_M19968_IG190:
        add      dword ptr [rbx+0x4C], r13d
        xor      r12d, r12d
        mov      edi, r12d
        jmp      G_M19968_IG184
 						;; size=15 bbWeight=8 PerfScore 44.00
 G_M19968_IG191:
        mov      eax, -1
 						;; size=5 bbWeight=8 PerfScore 2.00
 G_M19968_IG192:
        mov      esi, r13d
        sub      esi, dword ptr [rbp-0x38]
        dec      esi
        sub      edx, eax
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.RegexInterpreter:TrackPush(int,int):this
        call     [rax]System.Text.RegularExpressions.RegexInterpreter:TrackPush(int,int):this
        jmp      G_M19968_IG242
 						;; size=30 bbWeight=16 PerfScore 132.00
 G_M19968_IG193:
-       mov      rsi, gword ptr [rbx+0x70]
-       mov      r9, gword ptr [rsi+0x10]
-       mov      rsi, r9
+       mov      r9, gword ptr [rbx+0x70]
+       mov      rdi, gword ptr [r9+0x10]
+       mov      rsi, rdi
        mov      r11d, dword ptr [rbx+0x88]
        lea      edx, [r11+0x02]
        cmp      edx, dword ptr [rsi+0x08]
        jae      G_M19968_IG245
        mov      esi, dword ptr [rsi+4*rdx+0x10]
        cmp      byte  ptr [rbx+0x69], 0
        je       SHORT G_M19968_IG195
 						;; size=41 bbWeight=16 PerfScore 268.00
 G_M19968_IG194:
        mov      r8d, dword ptr [rbx+0x4C]
        mov      edx, r8d
        jmp      SHORT G_M19968_IG196
 						;; size=9 bbWeight=8 PerfScore 34.00
 G_M19968_IG195:
        mov      edx, dword ptr [rbx+0x44]
        mov      r8d, dword ptr [rbx+0x4C]
        sub      edx, r8d
 						;; size=10 bbWeight=8 PerfScore 34.00
 G_M19968_IG196:
        cmp      esi, edx
        jg       SHORT G_M19968_IG198
 						;; size=4 bbWeight=16 PerfScore 20.00
 G_M19968_IG197:
        jmp      SHORT G_M19968_IG199
 						;; size=2 bbWeight=8 PerfScore 16.00
 G_M19968_IG198:
        mov      esi, edx
 						;; size=2 bbWeight=8 PerfScore 2.00
 G_M19968_IG199:
-       mov      rdx, r9
+       mov      rdx, rdi
        lea      edi, [r11+0x01]
        cmp      edi, dword ptr [rdx+0x08]
        jae      G_M19968_IG245
        movzx    rdx, word  ptr [rdx+4*rdi+0x10]
        mov      edi, esi
        test     esi, esi
        jle      SHORT G_M19968_IG204
 						;; size=27 bbWeight=16 PerfScore 132.00
 G_M19968_IG200:
        cmp      byte  ptr [rbx+0x69], 0
        je       SHORT G_M19968_IG202
 						;; size=6 bbWeight=64 PerfScore 256.00
 G_M19968_IG201:
        mov      eax, dword ptr [rbx+0x4C]
        dec      eax
        mov      dword ptr [rbx+0x4C], eax
        jmp      SHORT G_M19968_IG203
 						;; size=10 bbWeight=32 PerfScore 168.00
 G_M19968_IG202:
        mov      eax, dword ptr [rbx+0x4C]
        lea      ecx, [rax+0x01]
        mov      dword ptr [rbx+0x4C], ecx
 						;; size=9 bbWeight=32 PerfScore 112.00
 G_M19968_IG203:
        cmp      eax, r15d
        jae      G_M19968_IG245
        mov      eax, eax
        movzx    rax, word  ptr [r14+2*rax]
        cmp      eax, edx
        jne      SHORT G_M19968_IG206
        dec      edi
        test     edi, edi
        jg       SHORT G_M19968_IG200
 						;; size=26 bbWeight=64 PerfScore 400.00
 G_M19968_IG204:
        cmp      esi, edi
        jle      G_M19968_IG242
-						;; size=8 bbWeight=16 PerfScore 20.00
-G_M19968_IG205:
        cmp      dword ptr [rbx+0x84], 3
        jne      G_M19968_IG242
        mov      edx, dword ptr [rbx+0x4C]
        cmp      byte  ptr [rbx+0x69], 0
        jne      SHORT G_M19968_IG209
+						;; size=30 bbWeight=16 PerfScore 180.00
+G_M19968_IG205:
        mov      eax, 1
        jmp      SHORT G_M19968_IG210
-       align    [0 bytes for IG229]
-						;; size=29 bbWeight=8 PerfScore 98.00
+       align    [2 bytes for IG229]
+						;; size=9 bbWeight=8 PerfScore 18.00
 G_M19968_IG206:
        mov      eax, dword ptr [rbx+0x4C]
        cmp      byte  ptr [rbx+0x69], 0
        je       SHORT G_M19968_IG207
        mov      edx, 1
        jmp      SHORT G_M19968_IG208
 						;; size=16 bbWeight=8 PerfScore 66.00
 G_M19968_IG207:
        mov      edx, -1
 						;; size=5 bbWeight=8 PerfScore 2.00
 G_M19968_IG208:
        add      edx, eax
        mov      dword ptr [rbx+0x4C], edx
        jmp      SHORT G_M19968_IG204
 						;; size=7 bbWeight=8 PerfScore 26.00
 G_M19968_IG209:
        mov      eax, -1
 						;; size=5 bbWeight=8 PerfScore 2.00
 G_M19968_IG210:
        sub      esi, edi
        dec      esi
        sub      edx, eax
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.RegexInterpreter:TrackPush(int,int):this
        call     [rax]System.Text.RegularExpressions.RegexInterpreter:TrackPush(int,int):this
        jmp      G_M19968_IG242
 						;; size=26 bbWeight=16 PerfScore 100.00
 G_M19968_IG211:
-       mov      rdi, gword ptr [rbx+0x70]
-       mov      r9, gword ptr [rdi+0x10]
-       mov      rdi, r9
+       mov      r9, gword ptr [rbx+0x70]
+       mov      rdi, gword ptr [r9+0x10]
+       mov      rsi, rdi
        mov      r11d, dword ptr [rbx+0x88]
-       lea      esi, [r11+0x02]
-       cmp      esi, dword ptr [rdi+0x08]
+       lea      edx, [r11+0x02]
+       cmp      edx, dword ptr [rsi+0x08]
        jae      G_M19968_IG245
-       mov      r13d, dword ptr [rdi+4*rsi+0x10]
+       mov      r13d, dword ptr [rsi+4*rdx+0x10]
        cmp      byte  ptr [rbx+0x69], 0
        je       SHORT G_M19968_IG212
        mov      r8d, dword ptr [rbx+0x4C]
-       mov      edi, r8d
+       mov      esi, r8d
        jmp      SHORT G_M19968_IG213
 						;; size=51 bbWeight=8 PerfScore 168.00
 G_M19968_IG212:
-       mov      edi, dword ptr [rbx+0x44]
+       mov      esi, dword ptr [rbx+0x44]
        mov      r8d, dword ptr [rbx+0x4C]
-       sub      edi, r8d
+       sub      esi, r8d
 						;; size=10 bbWeight=8 PerfScore 34.00
 G_M19968_IG213:
-       cmp      edi, r13d
+       cmp      esi, r13d
        jl       G_M19968_IG240
-       mov      rdi, r9
        lea      esi, [r11+0x01]
        cmp      esi, dword ptr [rdi+0x08]
        jae      G_M19968_IG245
        mov      esi, dword ptr [rdi+4*rsi+0x10]
-       mov      rdi, gword ptr [rbx+0x70]
-       mov      rdi, gword ptr [rdi+0x18]
+       mov      rdi, gword ptr [r9+0x18]
        cmp      esi, dword ptr [rdi+0x08]
        jae      G_M19968_IG245
        mov      edx, esi
        mov      r12, gword ptr [rdi+8*rdx+0x10]
-       mov      rdi, gword ptr [rbx+0x70]
-       mov      rdi, gword ptr [rdi+0x20]
+       mov      rdi, gword ptr [r9+0x20]
        movsxd   rsi, esi
        mov      rdx, 0xD1FFAB1E      ; uint[]
        mov      rax, 0xD1FFAB1E      ; code for CORINFO_HELP_LDELEMA_REF
        call     [rax]CORINFO_HELP_LDELEMA_REF
        mov      bword ptr [rbp-0x50], rax
        lea      edi, [r13-0x01]
        mov      dword ptr [rbp-0x34], edi
        test     r13d, r13d
        jle      G_M19968_IG242
-						;; size=106 bbWeight=8 PerfScore 238.00
+						;; size=95 bbWeight=8 PerfScore 204.00
 G_M19968_IG214:
        cmp      byte  ptr [rbx+0x69], 0
        je       SHORT G_M19968_IG216
 						;; size=6 bbWeight=64 PerfScore 256.00
 G_M19968_IG215:
        mov      edi, dword ptr [rbx+0x4C]
        dec      edi
        mov      dword ptr [rbx+0x4C], edi
        jmp      SHORT G_M19968_IG217
 						;; size=10 bbWeight=32 PerfScore 168.00
 G_M19968_IG216:
        mov      edi, dword ptr [rbx+0x4C]
        lea      esi, [rdi+0x01]
        mov      dword ptr [rbx+0x4C], esi
 						;; size=9 bbWeight=32 PerfScore 112.00
 G_M19968_IG217:
        cmp      edi, r15d
        jae      G_M19968_IG245
        mov      edi, edi
        movzx    r13, word  ptr [r14+2*rdi]
        mov      rdi, gword ptr [rax]
        test     rdi, rdi
        je       SHORT G_M19968_IG219
 						;; size=24 bbWeight=64 PerfScore 432.00
 G_M19968_IG218:
        mov      esi, r13d
        sar      esi, 4
        cmp      dword ptr [rdi+0x08], esi
        jbe      SHORT G_M19968_IG219
        cmp      esi, dword ptr [rdi+0x08]
        jae      G_M19968_IG245
        mov      r8d, dword ptr [rdi+4*rsi+0x10]
        mov      edi, r13d
        and      edi, 15
        add      edi, edi
        mov      esi, 1
        shlx     r9d, esi, edi
        test     r8d, r9d
        jne      G_M19968_IG224
 						;; size=52 bbWeight=32 PerfScore 432.00
 G_M19968_IG219:
        cmp      r13d, 128
        jge      SHORT G_M19968_IG220
        mov      edi, r13d
        mov      rsi, r12
        mov      rdx, rax
        mov      r8, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.RegexCharClass:<CharInClass>g__InitializeValue|127_0(ushort,System.String,byref):ubyte
        call     [r8]System.Text.RegularExpressions.RegexCharClass:<CharInClass>g__InitializeValue|127_0(ushort,System.String,byref):ubyte
        jmp      G_M19968_IG223
 						;; size=36 bbWeight=32 PerfScore 232.00
 G_M19968_IG220:
        cmp      dword ptr [r12+0x08], 1
        jbe      G_M19968_IG245
        movzx    rdx, word  ptr [r12+0x0E]
        cmp      dword ptr [r12+0x08], 2
        jbe      G_M19968_IG245
        movzx    r8, word  ptr [r12+0x10]
        lea      r9d, [rdx+r8+0x03]
        mov      dword ptr [rbp-0x48], r9d
        mov      edi, r13d
        mov      rsi, r12
        mov      ecx, edx
        xor      edx, edx
        mov      r10, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.RegexCharClass:CharInClassInternal(ushort,System.String,int,int,int):ubyte
        call     [r10]System.Text.RegularExpressions.RegexCharClass:CharInClassInternal(ushort,System.String,int,int,int):ubyte
        cmp      dword ptr [r12+0x08], 0
        jbe      G_M19968_IG245
        cmp      word  ptr [r12+0x0C], 1
        je       SHORT G_M19968_IG221
        test     eax, eax
        je       SHORT G_M19968_IG223
        jmp      SHORT G_M19968_IG222
 						;; size=95 bbWeight=32 PerfScore 944.00
 G_M19968_IG221:
        test     eax, eax
        sete     al
        movzx    rax, al
        test     eax, eax
        je       SHORT G_M19968_IG223
 						;; size=12 bbWeight=32 PerfScore 88.00
 G_M19968_IG222:
        mov      edx, dword ptr [rbp-0x48]
        cmp      dword ptr [r12+0x08], edx
        jle      SHORT G_M19968_IG223
        mov      edi, r13d
        mov      rsi, r12
        mov      rax, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.RegexCharClass:CharInClassRecursive(ushort,System.String,int):ubyte
        call     [rax]System.Text.RegularExpressions.RegexCharClass:CharInClassRecursive(ushort,System.String,int):ubyte
        test     eax, eax
        sete     al
        movzx    rax, al
 						;; size=36 bbWeight=32 PerfScore 328.00
 G_M19968_IG223:
        test     eax, eax
        je       G_M19968_IG240
        jmp      SHORT G_M19968_IG225
 						;; size=10 bbWeight=32 PerfScore 104.00
 G_M19968_IG224:
        add      r9d, r9d
        test     r8d, r9d
        je       G_M19968_IG240
 						;; size=12 bbWeight=32 PerfScore 48.00
 G_M19968_IG225:
        mov      ecx, dword ptr [rbp-0x34]
        mov      r13d, ecx
        lea      ecx, [r13-0x01]
        test     r13d, r13d
        mov      dword ptr [rbp-0x34], ecx
        mov      rax, bword ptr [rbp-0x50]
        jg       G_M19968_IG214
        jmp      G_M19968_IG242
 						;; size=31 bbWeight=64 PerfScore 448.00
 G_M19968_IG226:
-       mov      rdi, gword ptr [rbx+0x70]
-       mov      r9, gword ptr [rdi+0x10]
-       mov      rdi, r9
+       mov      r9, gword ptr [rbx+0x70]
+       mov      rdi, gword ptr [r9+0x10]
+       mov      r9, rdi
        mov      r11d, dword ptr [rbx+0x88]
        lea      esi, [r11+0x02]
-       cmp      esi, dword ptr [rdi+0x08]
+       cmp      esi, dword ptr [r9+0x08]
        jae      G_M19968_IG245
-       mov      edi, dword ptr [rdi+4*rsi+0x10]
+       mov      esi, dword ptr [r9+4*rsi+0x10]
        cmp      byte  ptr [rbx+0x69], 0
        je       SHORT G_M19968_IG227
        mov      r8d, dword ptr [rbx+0x4C]
-       mov      esi, r8d
+       mov      eax, r8d
        jmp      SHORT G_M19968_IG228
-						;; size=50 bbWeight=8 PerfScore 168.00
+						;; size=52 bbWeight=8 PerfScore 168.00
 G_M19968_IG227:
-       mov      esi, dword ptr [rbx+0x44]
+       mov      eax, dword ptr [rbx+0x44]
        mov      r8d, dword ptr [rbx+0x4C]
-       sub      esi, r8d
+       sub      eax, r8d
 						;; size=10 bbWeight=8 PerfScore 34.00
 G_M19968_IG228:
-       cmp      esi, edi
+       cmp      eax, esi
        jl       G_M19968_IG240
        inc      r11d
-       cmp      r11d, dword ptr [r9+0x08]
+       cmp      r11d, dword ptr [rdi+0x08]
        jae      G_M19968_IG245
        mov      r8d, r11d
-       movzx    rsi, word  ptr [r9+4*r8+0x10]
-       lea      eax, [rdi-0x01]
-       test     edi, edi
+       movzx    rdi, word  ptr [rdi+4*r8+0x10]
+       lea      eax, [rsi-0x01]
+       test     esi, esi
        jle      G_M19968_IG242
 						;; size=41 bbWeight=8 PerfScore 76.00
 G_M19968_IG229:
        cmp      byte  ptr [rbx+0x69], 0
        je       SHORT G_M19968_IG231
 						;; size=6 bbWeight=64 PerfScore 256.00
 G_M19968_IG230:
-       mov      edi, dword ptr [rbx+0x4C]
-       dec      edi
-       mov      dword ptr [rbx+0x4C], edi
+       mov      esi, dword ptr [rbx+0x4C]
+       dec      esi
+       mov      dword ptr [rbx+0x4C], esi
        jmp      SHORT G_M19968_IG232
 						;; size=10 bbWeight=32 PerfScore 168.00
 G_M19968_IG231:
-       mov      edi, dword ptr [rbx+0x4C]
-       lea      ecx, [rdi+0x01]
+       mov      esi, dword ptr [rbx+0x4C]
+       lea      ecx, [rsi+0x01]
        mov      dword ptr [rbx+0x4C], ecx
 						;; size=9 bbWeight=32 PerfScore 112.00
 G_M19968_IG232:
-       cmp      edi, r15d
+       cmp      esi, r15d
        jae      G_M19968_IG245
-       mov      edi, edi
-       movzx    rdi, word  ptr [r14+2*rdi]
-       cmp      edi, esi
+       mov      esi, esi
+       movzx    rsi, word  ptr [r14+2*rsi]
+       cmp      esi, edi
        je       G_M19968_IG240
-       mov      edi, eax
-       lea      eax, [rdi-0x01]
-       test     edi, edi
+       mov      esi, eax
+       lea      eax, [rsi-0x01]
+       test     esi, esi
        jg       SHORT G_M19968_IG229
        jmp      G_M19968_IG242
 						;; size=38 bbWeight=64 PerfScore 560.00
 G_M19968_IG233:
-       mov      rdi, gword ptr [rbx+0x70]
-       mov      r9, gword ptr [rdi+0x10]
-       mov      rdi, r9
+       mov      r9, gword ptr [rbx+0x70]
+       mov      rdi, gword ptr [r9+0x10]
+       mov      r9, rdi
        mov      r11d, dword ptr [rbx+0x88]
        lea      esi, [r11+0x02]
-       cmp      esi, dword ptr [rdi+0x08]
+       cmp      esi, dword ptr [r9+0x08]
        jae      G_M19968_IG245
-       mov      edi, dword ptr [rdi+4*rsi+0x10]
+       mov      esi, dword ptr [r9+4*rsi+0x10]
        cmp      byte  ptr [rbx+0x69], 0
        je       SHORT G_M19968_IG234
        mov      r8d, dword ptr [rbx+0x4C]
-       mov      esi, r8d
+       mov      eax, r8d
        jmp      SHORT G_M19968_IG235
        align    [0 bytes for IG236]
-						;; size=50 bbWeight=8 PerfScore 168.00
+						;; size=52 bbWeight=8 PerfScore 168.00
 G_M19968_IG234:
-       mov      esi, dword ptr [rbx+0x44]
+       mov      eax, dword ptr [rbx+0x44]
        mov      r8d, dword ptr [rbx+0x4C]
-       sub      esi, r8d
+       sub      eax, r8d
 						;; size=10 bbWeight=8 PerfScore 34.00
 G_M19968_IG235:
-       cmp      esi, edi
+       cmp      eax, esi
        jl       SHORT G_M19968_IG240
        inc      r11d
-       cmp      r11d, dword ptr [r9+0x08]
+       cmp      r11d, dword ptr [rdi+0x08]
        jae      G_M19968_IG245
-       mov      esi, r11d
-       movzx    rsi, word  ptr [r9+4*rsi+0x10]
-       lea      eax, [rdi-0x01]
-       test     edi, edi
+       mov      eax, r11d
+       movzx    rdi, word  ptr [rdi+4*rax+0x10]
+       lea      eax, [rsi-0x01]
+       test     esi, esi
        jle      SHORT G_M19968_IG242
-						;; size=33 bbWeight=8 PerfScore 76.00
+						;; size=32 bbWeight=8 PerfScore 76.00
 G_M19968_IG236:
        cmp      byte  ptr [rbx+0x69], 0
        je       SHORT G_M19968_IG238
 						;; size=6 bbWeight=64 PerfScore 256.00
 G_M19968_IG237:
-       mov      edi, dword ptr [rbx+0x4C]
-       dec      edi
-       mov      dword ptr [rbx+0x4C], edi
+       mov      esi, dword ptr [rbx+0x4C]
+       dec      esi
+       mov      dword ptr [rbx+0x4C], esi
        jmp      SHORT G_M19968_IG239
 						;; size=10 bbWeight=32 PerfScore 168.00
 G_M19968_IG238:
-       mov      edi, dword ptr [rbx+0x4C]
-       lea      ecx, [rdi+0x01]
+       mov      esi, dword ptr [rbx+0x4C]
+       lea      ecx, [rsi+0x01]
        mov      dword ptr [rbx+0x4C], ecx
 						;; size=9 bbWeight=32 PerfScore 112.00
 G_M19968_IG239:
-       cmp      edi, r15d
+       cmp      esi, r15d
        jae      SHORT G_M19968_IG245
-       mov      edi, edi
-       movzx    rdi, word  ptr [r14+2*rdi]
-       cmp      edi, esi
+       mov      esi, esi
+       movzx    rsi, word  ptr [r14+2*rsi]
+       cmp      esi, edi
        je       SHORT G_M19968_IG241
 						;; size=16 bbWeight=64 PerfScore 304.00
 G_M19968_IG240:
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.RegexInterpreter:Backtrack():this
        call     [rax]System.Text.RegularExpressions.RegexInterpreter:Backtrack():this
        jmp      G_M19968_IG04
 						;; size=20 bbWeight=16 PerfScore 88.00
 G_M19968_IG241:
-       mov      edi, eax
-       lea      eax, [rdi-0x01]
-       test     edi, edi
+       mov      esi, eax
+       lea      eax, [rsi-0x01]
+       test     esi, esi
        jg       SHORT G_M19968_IG236
 						;; size=9 bbWeight=64 PerfScore 128.00
 G_M19968_IG242:
        mov      edi, 2
        jmp      G_M19968_IG03
 						;; size=10 bbWeight=64 PerfScore 144.00
 G_M19968_IG243:
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.Text.RegularExpressions.RegexRunner:<CheckTimeout>g__ThrowRegexTimeout|25_0():this
        call     [rax]System.Text.RegularExpressions.RegexRunner:<CheckTimeout>g__ThrowRegexTimeout|25_0():this
        int3     
 						;; size=16 bbWeight=0 PerfScore 0.00
 G_M19968_IG244:
        mov      rax, 0xD1FFAB1E      ; code for System.ThrowHelper:ThrowArgumentOutOfRangeException()
        call     [rax]System.ThrowHelper:ThrowArgumentOutOfRangeException()
        int3     
 						;; size=13 bbWeight=0 PerfScore 0.00
 G_M19968_IG245:
        call     CORINFO_HELP_RNGCHKFAIL
        int3     
 						;; size=6 bbWeight=0 PerfScore 0.00
 RWD00  	dd	G_M19968_IG11 - G_M19968_IG02
        	dd	G_M19968_IG10 - G_M19968_IG02
        	dd	G_M19968_IG240 - G_M19968_IG02
        	dd	G_M19968_IG240 - G_M19968_IG02
        	dd	G_M19968_IG09 - G_M19968_IG02
        	dd	G_M19968_IG08 - G_M19968_IG02
 RWD24  	dd	G_M19968_IG233 - G_M19968_IG02
        	dd	G_M19968_IG226 - G_M19968_IG02
        	dd	G_M19968_IG211 - G_M19968_IG02
        	dd	G_M19968_IG193 - G_M19968_IG02
        	dd	G_M19968_IG175 - G_M19968_IG02
-       	dd	G_M19968_IG150 - G_M19968_IG02
-       	dd	G_M19968_IG143 - G_M19968_IG02
-       	dd	G_M19968_IG143 - G_M19968_IG02
-       	dd	G_M19968_IG143 - G_M19968_IG02
+       	dd	G_M19968_IG151 - G_M19968_IG02
+       	dd	G_M19968_IG144 - G_M19968_IG02
+       	dd	G_M19968_IG144 - G_M19968_IG02
+       	dd	G_M19968_IG144 - G_M19968_IG02
        	dd	G_M19968_IG138 - G_M19968_IG02
        	dd	G_M19968_IG133 - G_M19968_IG02
        	dd	G_M19968_IG122 - G_M19968_IG02
        	dd	G_M19968_IG121 - G_M19968_IG02
        	dd	G_M19968_IG119 - G_M19968_IG02
-       	dd	G_M19968_IG118 - G_M19968_IG02
        	dd	G_M19968_IG117 - G_M19968_IG02
        	dd	G_M19968_IG116 - G_M19968_IG02
        	dd	G_M19968_IG115 - G_M19968_IG02
        	dd	G_M19968_IG114 - G_M19968_IG02
        	dd	G_M19968_IG113 - G_M19968_IG02
        	dd	G_M19968_IG112 - G_M19968_IG02
        	dd	G_M19968_IG111 - G_M19968_IG02
-       	dd	G_M19968_IG240 - G_M19968_IG02
        	dd	G_M19968_IG110 - G_M19968_IG02
-       	dd	G_M19968_IG108 - G_M19968_IG02
-       	dd	G_M19968_IG105 - G_M19968_IG02
-       	dd	G_M19968_IG104 - G_M19968_IG02
+       	dd	G_M19968_IG240 - G_M19968_IG02
+       	dd	G_M19968_IG109 - G_M19968_IG02
+       	dd	G_M19968_IG106 - G_M19968_IG02
        	dd	G_M19968_IG103 - G_M19968_IG02
-       	dd	G_M19968_IG96 - G_M19968_IG02
-       	dd	G_M19968_IG93 - G_M19968_IG02
-       	dd	G_M19968_IG92 - G_M19968_IG02
+       	dd	G_M19968_IG102 - G_M19968_IG02
+       	dd	G_M19968_IG101 - G_M19968_IG02
+       	dd	G_M19968_IG94 - G_M19968_IG02
        	dd	G_M19968_IG91 - G_M19968_IG02
-       	dd	G_M19968_IG85 - G_M19968_IG02
-       	dd	G_M19968_IG84 - G_M19968_IG02
+       	dd	G_M19968_IG90 - G_M19968_IG02
+       	dd	G_M19968_IG89 - G_M19968_IG02
+       	dd	G_M19968_IG83 - G_M19968_IG02
        	dd	G_M19968_IG82 - G_M19968_IG02
-       	dd	G_M19968_IG79 - G_M19968_IG02
+       	dd	G_M19968_IG80 - G_M19968_IG02
        	dd	G_M19968_IG77 - G_M19968_IG02
        	dd	G_M19968_IG76 - G_M19968_IG02
-       	dd	G_M19968_IG71 - G_M19968_IG02
+       	dd	G_M19968_IG75 - G_M19968_IG02
+       	dd	G_M19968_IG70 - G_M19968_IG02
        	dd	G_M19968_IG240 - G_M19968_IG02
-       	dd	G_M19968_IG69 - G_M19968_IG02
        	dd	G_M19968_IG68 - G_M19968_IG02
        	dd	G_M19968_IG67 - G_M19968_IG02
+       	dd	G_M19968_IG66 - G_M19968_IG02
        	dd	G_M19968_IG193 - G_M19968_IG02
        	dd	G_M19968_IG175 - G_M19968_IG02
-       	dd	G_M19968_IG150 - G_M19968_IG02
-       	dd	G_M19968_IG66 - G_M19968_IG02
-RWD212 	dd	G_M19968_IG62 - G_M19968_IG02
-       	dd	G_M19968_IG62 - G_M19968_IG02
-       	dd	G_M19968_IG62 - G_M19968_IG02
-       	dd	G_M19968_IG55 - G_M19968_IG02
-       	dd	G_M19968_IG48 - G_M19968_IG02
-       	dd	G_M19968_IG37 - G_M19968_IG02
+       	dd	G_M19968_IG151 - G_M19968_IG02
+       	dd	G_M19968_IG65 - G_M19968_IG02
+RWD212 	dd	G_M19968_IG61 - G_M19968_IG02
+       	dd	G_M19968_IG61 - G_M19968_IG02
+       	dd	G_M19968_IG61 - G_M19968_IG02
+       	dd	G_M19968_IG54 - G_M19968_IG02
+       	dd	G_M19968_IG47 - G_M19968_IG02
+       	dd	G_M19968_IG36 - G_M19968_IG02
        	dd	G_M19968_IG240 - G_M19968_IG02
        	dd	G_M19968_IG240 - G_M19968_IG02
        	dd	G_M19968_IG240 - G_M19968_IG02
        	dd	G_M19968_IG240 - G_M19968_IG02
        	dd	G_M19968_IG240 - G_M19968_IG02
        	dd	G_M19968_IG240 - G_M19968_IG02
        	dd	G_M19968_IG240 - G_M19968_IG02
        	dd	G_M19968_IG240 - G_M19968_IG02
        	dd	G_M19968_IG240 - G_M19968_IG02
        	dd	G_M19968_IG240 - G_M19968_IG02
        	dd	G_M19968_IG240 - G_M19968_IG02
        	dd	G_M19968_IG240 - G_M19968_IG02
        	dd	G_M19968_IG240 - G_M19968_IG02
        	dd	G_M19968_IG240 - G_M19968_IG02
-       	dd	G_M19968_IG32 - G_M19968_IG02
+       	dd	G_M19968_IG31 - G_M19968_IG02
        	dd	G_M19968_IG30 - G_M19968_IG02
        	dd	G_M19968_IG29 - G_M19968_IG02
        	dd	G_M19968_IG28 - G_M19968_IG02
        	dd	G_M19968_IG28 - G_M19968_IG02
        	dd	G_M19968_IG26 - G_M19968_IG02
        	dd	G_M19968_IG23 - G_M19968_IG02
        	dd	G_M19968_IG22 - G_M19968_IG02
        	dd	G_M19968_IG22 - G_M19968_IG02
        	dd	G_M19968_IG20 - G_M19968_IG02
        	dd	G_M19968_IG19 - G_M19968_IG02
        	dd	G_M19968_IG28 - G_M19968_IG02
        	dd	G_M19968_IG240 - G_M19968_IG02
        	dd	G_M19968_IG16 - G_M19968_IG02
 
 
-; Total bytes of code 9211, prolog size 28, PerfScore 40623.40, instruction count 2448, allocated bytes for code 9215 (MethodHash=588bb1ff) for method System.Text.RegularExpressions.RegexInterpreter:TryMatchAtCurrentPosition(System.ReadOnlySpan`1[ushort]):ubyte:this (FullOpts)
+; Total bytes of code 9152, prolog size 28, PerfScore 36244.53, instruction count 2434, allocated bytes for code 9152 (MethodHash=588bb1ff) for method System.Text.RegularExpressions.RegexInterpreter:TryMatchAtCurrentPosition(System.ReadOnlySpan`1[ushort]):ubyte:this (FullOpts)
 ; ============================================================
-47 (-2.78 % of base) - System.Net.Http.HPack.HPackDecoder:DecodeInternal(System.ReadOnlySpan`1[ubyte],System.Net.Http.IHttpStreamHeadersHandler):this
 ; Assembly listing for method System.Net.Http.HPack.HPackDecoder:DecodeInternal(System.ReadOnlySpan`1[ubyte],System.Net.Http.IHttpStreamHeadersHandler):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; 7 single block inlinees; 22 inlinees without PGO data
 ; Final local variable assignments
 ;
-;  V00 this         [V00,T06] ( 46,229   )     ref  ->  r15         this class-hnd single-def <System.Net.Http.HPack.HPackDecoder>
+;  V00 this         [V00,T01] ( 49,185   )     ref  ->  r15         this class-hnd single-def <System.Net.Http.HPack.HPackDecoder>
 ;* V01 arg1         [V01    ] (  0,  0   )  struct (16) zero-ref    multireg-arg ld-addr-op single-def <System.ReadOnlySpan`1[ubyte]>
-;  V02 arg2         [V02,T21] ( 14, 44   )     ref  ->  r13         class-hnd single-def <System.Net.Http.IHttpStreamHeadersHandler>
-;  V03 loc0         [V03    ] ( 66,961   )     int  ->  [rbp-0x30]  do-not-enreg[X] addr-exposed ld-addr-op
+;  V02 arg2         [V02,T20] ( 14, 26   )     ref  ->  r13         class-hnd single-def <System.Net.Http.IHttpStreamHeadersHandler>
+;  V03 loc0         [V03    ] ( 66,529   )     int  ->  [rbp-0x30]  do-not-enreg[X] addr-exposed ld-addr-op
 ;* V04 loc1         [V04    ] (  0,  0   )   ubyte  ->  zero-ref   
 ;* V05 loc2         [V05    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op <System.ReadOnlySpan`1[ubyte]>
 ;# V06 OutArgs      [V06    ] (  1,  1   )  struct ( 0) [rsp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-;  V07 tmp1         [V07,T62] (  3,  0   )     ref  ->  rbx         class-hnd exact "Single-def Box Helper" <System.Net.Http.HPack.HPackDecoder+State>
-;  V08 tmp2         [V08,T63] (  3,  0   )     ref  ->  r15         class-hnd exact "NewObj constructor temp" <System.NotImplementedException>
+;  V07 tmp1         [V07,T61] (  3,  0   )     ref  ->  rbx         class-hnd exact "Single-def Box Helper" <System.Net.Http.HPack.HPackDecoder+State>
+;  V08 tmp2         [V08,T62] (  3,  0   )     ref  ->  r15         class-hnd exact "NewObj constructor temp" <System.NotImplementedException>
 ;* V09 tmp3         [V09    ] (  0,  0   )  struct ( 8) zero-ref    "location for address-of(RValue)" <System.ValueTuple`2[int,int]>
 ;* V10 tmp4         [V10    ] (  0,  0   )  struct ( 8) zero-ref    "location for address-of(RValue)" <System.ValueTuple`2[int,int]>
 ;* V11 tmp5         [V11    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.Span`1[ubyte]>
 ;* V12 tmp6         [V12    ] (  0,  0   )  struct (16) zero-ref    "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
 ;  V13 tmp7         [V13    ] (  3, 20   )     int  ->  [rbp-0x38]  do-not-enreg[X] addr-exposed ld-addr-op "Inline ldloca(s) first use temp"
 ;* V14 tmp8         [V14    ] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
 ;* V15 tmp9         [V15    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
-;  V16 tmp10        [V16,T09] (  3, 96   )     int  ->  rsi         "Span.get_Item index"
-;  V17 tmp11        [V17,T15] (  2, 64   )   byref  ->  rdi         "impAppendStmt"
+;  V16 tmp10        [V16,T03] (  3, 96   )     int  ->  rsi         "Span.get_Item index"
+;  V17 tmp11        [V17,T10] (  2, 64   )   byref  ->  rdi         "impAppendStmt"
 ;* V18 tmp12        [V18    ] (  0,  0   )  struct (16) zero-ref    multireg-arg "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
 ;  V19 tmp13        [V19    ] (  3, 20   )     int  ->  [rbp-0x40]  do-not-enreg[X] addr-exposed ld-addr-op "Inline ldloca(s) first use temp"
 ;* V20 tmp14        [V20    ] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
 ;* V21 tmp15        [V21    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
-;  V22 tmp16        [V22,T10] (  3, 96   )     int  ->  rsi         "Span.get_Item index"
-;  V23 tmp17        [V23,T16] (  2, 64   )   byref  ->  rdi         "impAppendStmt"
+;  V22 tmp16        [V22,T04] (  3, 96   )     int  ->  rsi         "Span.get_Item index"
+;  V23 tmp17        [V23,T11] (  2, 64   )   byref  ->  rdi         "impAppendStmt"
 ;* V24 tmp18        [V24    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
-;  V25 tmp19        [V25,T28] (  4,  8   )     int  ->  rsi         "Inline stloc first use temp"
-;  V26 tmp20        [V26,T32] (  3,  6   )   ubyte  ->  rsi         "Inline stloc first use temp"
-;  V27 tmp21        [V27,T33] (  3,  6   )     int  ->  r12         ld-addr-op "Inline ldloca(s) first use temp"
+;  V25 tmp19        [V25,T27] (  4,  8   )     int  ->  rsi         "Inline stloc first use temp"
+;  V26 tmp20        [V26,T29] (  3,  6   )   ubyte  ->  rsi         "Inline stloc first use temp"
+;  V27 tmp21        [V27,T30] (  3,  6   )     int  ->  r12         ld-addr-op "Inline ldloca(s) first use temp"
 ;* V28 tmp22        [V28    ] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;  V29 tmp23        [V29,T24] (  4, 16   )   ubyte  ->  rax         "Inlining Arg"
-;  V30 tmp24        [V30,T26] (  3, 12   )   byref  ->  rdx         "Inlining Arg"
+;  V29 tmp23        [V29,T23] (  4, 16   )   ubyte  ->  r12         "Inlining Arg"
+;  V30 tmp24        [V30,T25] (  3, 12   )   byref  ->  rdx         "Inlining Arg"
 ;* V31 tmp25        [V31    ] (  0,  0   )  struct (16) zero-ref    multireg-arg "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
 ;  V32 tmp26        [V32    ] (  3, 20   )     int  ->  [rbp-0x48]  do-not-enreg[X] addr-exposed ld-addr-op "Inline ldloca(s) first use temp"
 ;* V33 tmp27        [V33    ] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
 ;* V34 tmp28        [V34    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
-;  V35 tmp29        [V35,T11] (  3, 96   )     int  ->  rsi         "Span.get_Item index"
-;  V36 tmp30        [V36,T17] (  2, 64   )   byref  ->  rdi         "impAppendStmt"
+;  V35 tmp29        [V35,T05] (  3, 96   )     int  ->  rsi         "Span.get_Item index"
+;  V36 tmp30        [V36,T12] (  2, 64   )   byref  ->  rdi         "impAppendStmt"
 ;* V37 tmp31        [V37    ] (  0,  0   )  struct (16) zero-ref    multireg-arg "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
 ;  V38 tmp32        [V38    ] (  3, 20   )     int  ->  [rbp-0x50]  do-not-enreg[X] addr-exposed ld-addr-op "Inline ldloca(s) first use temp"
 ;* V39 tmp33        [V39    ] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
 ;* V40 tmp34        [V40    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
-;  V41 tmp35        [V41,T12] (  3, 96   )     int  ->  rsi         "Span.get_Item index"
-;  V42 tmp36        [V42,T18] (  2, 64   )   byref  ->  rdi         "impAppendStmt"
+;  V41 tmp35        [V41,T06] (  3, 96   )     int  ->  rsi         "Span.get_Item index"
+;  V42 tmp36        [V42,T13] (  2, 64   )   byref  ->  rdi         "impAppendStmt"
 ;* V43 tmp37        [V43    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
-;  V44 tmp38        [V44,T29] (  4,  8   )     int  ->  rsi         "Inline stloc first use temp"
-;  V45 tmp39        [V45,T34] (  3,  6   )   ubyte  ->  rsi         "Inline stloc first use temp"
-;  V46 tmp40        [V46,T35] (  3,  6   )     int  ->  r12         ld-addr-op "Inline ldloca(s) first use temp"
+;  V44 tmp38        [V44,T28] (  4,  8   )     int  ->  rsi         "Inline stloc first use temp"
+;  V45 tmp39        [V45,T31] (  3,  6   )   ubyte  ->  rsi         "Inline stloc first use temp"
+;  V46 tmp40        [V46,T32] (  3,  6   )     int  ->  r12         ld-addr-op "Inline ldloca(s) first use temp"
 ;* V47 tmp41        [V47    ] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;  V48 tmp42        [V48,T25] (  4, 16   )   ubyte  ->  rax         "Inlining Arg"
-;  V49 tmp43        [V49,T27] (  3, 12   )   byref  ->  rdx         "Inlining Arg"
+;  V48 tmp42        [V48,T24] (  4, 16   )   ubyte  ->  r12         "Inlining Arg"
+;  V49 tmp43        [V49,T26] (  3, 12   )   byref  ->  rdx         "Inlining Arg"
 ;* V50 tmp44        [V50    ] (  0,  0   )  struct (16) zero-ref    multireg-arg "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
-;  V51 tmp45        [V51    ] (  3, 80   )     int  ->  [rbp-0x58]  do-not-enreg[X] addr-exposed ld-addr-op "Inline ldloca(s) first use temp"
+;  V51 tmp45        [V51    ] (  3, 20   )     int  ->  [rbp-0x58]  do-not-enreg[X] addr-exposed ld-addr-op "Inline ldloca(s) first use temp"
 ;* V52 tmp46        [V52    ] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
 ;* V53 tmp47        [V53    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
-;  V54 tmp48        [V54,T00] (  3,384   )     int  ->  rsi         "Span.get_Item index"
-;  V55 tmp49        [V55,T04] (  2,256   )   byref  ->  rdi         "impAppendStmt"
+;  V54 tmp48        [V54,T07] (  3, 96   )     int  ->  rsi         "Span.get_Item index"
+;  V55 tmp49        [V55,T14] (  2, 64   )   byref  ->  rdi         "impAppendStmt"
 ;* V56 tmp50        [V56    ] (  0,  0   )  struct (16) zero-ref    multireg-arg "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
-;  V57 tmp51        [V57    ] (  3, 80   )     int  ->  [rbp-0x60]  do-not-enreg[X] addr-exposed ld-addr-op "Inline ldloca(s) first use temp"
+;  V57 tmp51        [V57    ] (  3, 20   )     int  ->  [rbp-0x60]  do-not-enreg[X] addr-exposed ld-addr-op "Inline ldloca(s) first use temp"
 ;* V58 tmp52        [V58    ] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
 ;* V59 tmp53        [V59    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
-;  V60 tmp54        [V60,T01] (  3,384   )     int  ->  rsi         "Span.get_Item index"
-;  V61 tmp55        [V61,T05] (  2,256   )   byref  ->  rdi         "impAppendStmt"
+;  V60 tmp54        [V60,T08] (  3, 96   )     int  ->  rsi         "Span.get_Item index"
+;  V61 tmp55        [V61,T15] (  2, 64   )   byref  ->  rdi         "impAppendStmt"
 ;* V62 tmp56        [V62    ] (  0,  0   )  struct (16) zero-ref    "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
 ;  V63 tmp57        [V63    ] (  3, 20   )     int  ->  [rbp-0x68]  do-not-enreg[X] addr-exposed ld-addr-op "Inline ldloca(s) first use temp"
 ;* V64 tmp58        [V64    ] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
 ;* V65 tmp59        [V65    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
-;  V66 tmp60        [V66,T13] (  3, 96   )     int  ->  rsi         "Span.get_Item index"
-;  V67 tmp61        [V67,T19] (  2, 64   )   byref  ->  rdi         "impAppendStmt"
+;  V66 tmp60        [V66,T09] (  3, 96   )     int  ->  rsi         "Span.get_Item index"
+;  V67 tmp61        [V67,T16] (  2, 64   )   byref  ->  rdi         "impAppendStmt"
 ;* V68 tmp62        [V68    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
 ;* V69 tmp63        [V69    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
 ;* V70 tmp64        [V70    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
 ;* V71 tmp65        [V71    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
 ;* V72 tmp66        [V72    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
 ;* V73 tmp67        [V73    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ubyte]>
 ;* V74 tmp68        [V74    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
-;  V75 tmp69        [V75,T36] (  4,  4   )     ref  ->  r12         class-hnd single-def "Inlining Arg" <ubyte[]>
+;  V75 tmp69        [V75,T33] (  4,  4   )     ref  ->  r13         class-hnd single-def "Inlining Arg" <ubyte[]>
 ;* V76 tmp70        [V76    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.Span`1[ubyte]>
 ;* V77 tmp71        [V77    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.Span`1[ubyte]>
 ;* V78 tmp72        [V78    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
 ;* V79 tmp73        [V79    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
 ;* V80 tmp74        [V80    ] (  0,  0   )    long  ->  zero-ref    "Inlining Arg"
-;  V81 tmp75        [V81,T07] ( 22,183.50)   byref  ->  r14         single-def "field V01._reference (fldOffset=0x0)" P-INDEP
-;  V82 tmp76        [V82,T02] ( 35,333.50)     int  ->  rbx         single-def "field V01._length (fldOffset=0x8)" P-INDEP
+;  V81 tmp75        [V81,T02] ( 22,111.50)   byref  ->  r14         single-def "field V01._reference (fldOffset=0x0)" P-INDEP
+;  V82 tmp76        [V82,T00] ( 35,213.50)     int  ->  rbx         single-def "field V01._length (fldOffset=0x8)" P-INDEP
 ;* V83 tmp77        [V83    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V05._reference (fldOffset=0x0)" P-INDEP
 ;* V84 tmp78        [V84    ] (  0,  0   )     int  ->  zero-ref    "field V05._length (fldOffset=0x8)" P-INDEP
-;  V85 tmp79        [V85,T61] (  2,  1   )     int  ->  rsi         "field V09.Item1 (fldOffset=0x0)" P-INDEP
+;  V85 tmp79        [V85,T60] (  2,  1   )     int  ->  rdx         "field V09.Item1 (fldOffset=0x0)" P-INDEP
 ;* V86 tmp80        [V86    ] (  0,  0   )     int  ->  zero-ref    "field V09.Item2 (fldOffset=0x4)" P-INDEP
 ;* V87 tmp81        [V87    ] (  0,  0   )     int  ->  zero-ref    "field V10.Item1 (fldOffset=0x0)" P-INDEP
-;  V88 tmp82        [V88,T43] (  4,  2   )     int  ->  rax         "field V10.Item2 (fldOffset=0x4)" P-INDEP
+;  V88 tmp82        [V88,T40] (  4,  2   )     int  ->  rdi         "field V10.Item2 (fldOffset=0x4)" P-INDEP
 ;* V89 tmp83        [V89    ] (  0,  0   )   byref  ->  zero-ref    "field V11._reference (fldOffset=0x0)" P-INDEP
 ;* V90 tmp84        [V90    ] (  0,  0   )     int  ->  zero-ref    "field V11._length (fldOffset=0x8)" P-INDEP
 ;* V91 tmp85        [V91    ] (  0,  0   )   byref  ->  zero-ref    "field V12._reference (fldOffset=0x0)" P-INDEP
 ;* V92 tmp86        [V92    ] (  0,  0   )     int  ->  zero-ref    "field V12._length (fldOffset=0x8)" P-INDEP
-;* V93 tmp87        [V93,T44] (  0,  0   )   byref  ->  zero-ref    "field V15._reference (fldOffset=0x0)" P-INDEP
-;* V94 tmp88        [V94,T50] (  0,  0   )     int  ->  zero-ref    "field V15._length (fldOffset=0x8)" P-INDEP
-;  V95 tmp89        [V95,T23] (  2, 18   )   byref  ->  r12         "field V18._reference (fldOffset=0x0)" P-INDEP
-;  V96 tmp90        [V96,T22] (  4, 36   )     int  ->  [rbp-0x6C]  spill-single-def "field V18._length (fldOffset=0x8)" P-INDEP
-;* V97 tmp91        [V97,T45] (  0,  0   )   byref  ->  zero-ref    "field V21._reference (fldOffset=0x0)" P-INDEP
-;* V98 tmp92        [V98,T51] (  0,  0   )     int  ->  zero-ref    "field V21._length (fldOffset=0x8)" P-INDEP
+;* V93 tmp87        [V93,T41] (  0,  0   )   byref  ->  zero-ref    "field V15._reference (fldOffset=0x0)" P-INDEP
+;* V94 tmp88        [V94,T48] (  0,  0   )     int  ->  zero-ref    "field V15._length (fldOffset=0x8)" P-INDEP
+;  V95 tmp89        [V95,T21] (  2, 18   )   byref  ->  r12         "field V18._reference (fldOffset=0x0)" P-INDEP
+;  V96 tmp90        [V96,T18] (  4, 36   )     int  ->  [rbp-0x6C]  spill-single-def "field V18._length (fldOffset=0x8)" P-INDEP
+;* V97 tmp91        [V97,T42] (  0,  0   )   byref  ->  zero-ref    "field V21._reference (fldOffset=0x0)" P-INDEP
+;* V98 tmp92        [V98,T49] (  0,  0   )     int  ->  zero-ref    "field V21._length (fldOffset=0x8)" P-INDEP
 ;* V99 tmp93        [V99    ] (  0,  0   )   byref  ->  zero-ref    "field V24._reference (fldOffset=0x0)" P-INDEP
 ;* V100 tmp94       [V100    ] (  0,  0   )     int  ->  zero-ref    "field V24._length (fldOffset=0x8)" P-INDEP
-;* V101 tmp95       [V101,T37] (  0,  0   )   byref  ->  zero-ref    "field V31._reference (fldOffset=0x0)" P-INDEP
-;* V102 tmp96       [V102,T40] (  0,  0   )     int  ->  zero-ref    "field V31._length (fldOffset=0x8)" P-INDEP
-;* V103 tmp97       [V103,T46] (  0,  0   )   byref  ->  zero-ref    "field V34._reference (fldOffset=0x0)" P-INDEP
-;* V104 tmp98       [V104,T52] (  0,  0   )     int  ->  zero-ref    "field V34._length (fldOffset=0x8)" P-INDEP
-;* V105 tmp99       [V105,T38] (  0,  0   )   byref  ->  zero-ref    "field V37._reference (fldOffset=0x0)" P-INDEP
-;* V106 tmp100      [V106,T41] (  0,  0   )     int  ->  zero-ref    "field V37._length (fldOffset=0x8)" P-INDEP
-;* V107 tmp101      [V107,T47] (  0,  0   )   byref  ->  zero-ref    "field V40._reference (fldOffset=0x0)" P-INDEP
-;* V108 tmp102      [V108,T53] (  0,  0   )     int  ->  zero-ref    "field V40._length (fldOffset=0x8)" P-INDEP
+;* V101 tmp95       [V101,T34] (  0,  0   )   byref  ->  zero-ref    "field V31._reference (fldOffset=0x0)" P-INDEP
+;* V102 tmp96       [V102,T37] (  0,  0   )     int  ->  zero-ref    "field V31._length (fldOffset=0x8)" P-INDEP
+;* V103 tmp97       [V103,T43] (  0,  0   )   byref  ->  zero-ref    "field V34._reference (fldOffset=0x0)" P-INDEP
+;* V104 tmp98       [V104,T50] (  0,  0   )     int  ->  zero-ref    "field V34._length (fldOffset=0x8)" P-INDEP
+;* V105 tmp99       [V105,T35] (  0,  0   )   byref  ->  zero-ref    "field V37._reference (fldOffset=0x0)" P-INDEP
+;* V106 tmp100      [V106,T38] (  0,  0   )     int  ->  zero-ref    "field V37._length (fldOffset=0x8)" P-INDEP
+;* V107 tmp101      [V107,T44] (  0,  0   )   byref  ->  zero-ref    "field V40._reference (fldOffset=0x0)" P-INDEP
+;* V108 tmp102      [V108,T51] (  0,  0   )     int  ->  zero-ref    "field V40._length (fldOffset=0x8)" P-INDEP
 ;* V109 tmp103      [V109    ] (  0,  0   )   byref  ->  zero-ref    "field V43._reference (fldOffset=0x0)" P-INDEP
 ;* V110 tmp104      [V110    ] (  0,  0   )     int  ->  zero-ref    "field V43._length (fldOffset=0x8)" P-INDEP
-;* V111 tmp105      [V111,T39] (  0,  0   )   byref  ->  zero-ref    "field V50._reference (fldOffset=0x0)" P-INDEP
-;* V112 tmp106      [V112,T42] (  0,  0   )     int  ->  zero-ref    "field V50._length (fldOffset=0x8)" P-INDEP
-;* V113 tmp107      [V113,T48] (  0,  0   )   byref  ->  zero-ref    "field V53._reference (fldOffset=0x0)" P-INDEP
-;* V114 tmp108      [V114,T54] (  0,  0   )     int  ->  zero-ref    "field V53._length (fldOffset=0x8)" P-INDEP
-;  V115 tmp109      [V115,T14] (  2, 72   )   byref  ->  r12         "field V56._reference (fldOffset=0x0)" P-INDEP
-;  V116 tmp110      [V116,T08] (  4,144   )     int  ->  [rbp-0x70]  spill-single-def "field V56._length (fldOffset=0x8)" P-INDEP
-;* V117 tmp111      [V117,T30] (  0,  0   )   byref  ->  zero-ref    "field V59._reference (fldOffset=0x0)" P-INDEP
-;* V118 tmp112      [V118,T31] (  0,  0   )     int  ->  zero-ref    "field V59._length (fldOffset=0x8)" P-INDEP
+;* V111 tmp105      [V111,T36] (  0,  0   )   byref  ->  zero-ref    "field V50._reference (fldOffset=0x0)" P-INDEP
+;* V112 tmp106      [V112,T39] (  0,  0   )     int  ->  zero-ref    "field V50._length (fldOffset=0x8)" P-INDEP
+;* V113 tmp107      [V113,T45] (  0,  0   )   byref  ->  zero-ref    "field V53._reference (fldOffset=0x0)" P-INDEP
+;* V114 tmp108      [V114,T52] (  0,  0   )     int  ->  zero-ref    "field V53._length (fldOffset=0x8)" P-INDEP
+;  V115 tmp109      [V115,T22] (  2, 18   )   byref  ->  r12         "field V56._reference (fldOffset=0x0)" P-INDEP
+;  V116 tmp110      [V116,T19] (  4, 36   )     int  ->  [rbp-0x70]  spill-single-def "field V56._length (fldOffset=0x8)" P-INDEP
+;* V117 tmp111      [V117,T46] (  0,  0   )   byref  ->  zero-ref    "field V59._reference (fldOffset=0x0)" P-INDEP
+;* V118 tmp112      [V118,T53] (  0,  0   )     int  ->  zero-ref    "field V59._length (fldOffset=0x8)" P-INDEP
 ;* V119 tmp113      [V119    ] (  0,  0   )   byref  ->  zero-ref    "field V62._reference (fldOffset=0x0)" P-INDEP
 ;* V120 tmp114      [V120    ] (  0,  0   )     int  ->  zero-ref    "field V62._length (fldOffset=0x8)" P-INDEP
-;* V121 tmp115      [V121,T49] (  0,  0   )   byref  ->  zero-ref    "field V65._reference (fldOffset=0x0)" P-INDEP
-;* V122 tmp116      [V122,T55] (  0,  0   )     int  ->  zero-ref    "field V65._length (fldOffset=0x8)" P-INDEP
-;  V123 tmp117      [V123,T60] (  2,  1   )   byref  ->  rsi         single-def "field V73._reference (fldOffset=0x0)" P-INDEP
+;* V121 tmp115      [V121,T47] (  0,  0   )   byref  ->  zero-ref    "field V65._reference (fldOffset=0x0)" P-INDEP
+;* V122 tmp116      [V122,T54] (  0,  0   )     int  ->  zero-ref    "field V65._length (fldOffset=0x8)" P-INDEP
+;  V123 tmp117      [V123,T59] (  2,  1   )   byref  ->  rsi         single-def "field V73._reference (fldOffset=0x0)" P-INDEP
 ;* V124 tmp118      [V124    ] (  0,  0   )     int  ->  zero-ref    "field V73._length (fldOffset=0x8)" P-INDEP
-;  V125 tmp119      [V125,T56] (  3,  1.50)   byref  ->  rdi         "field V76._reference (fldOffset=0x0)" P-INDEP
-;  V126 tmp120      [V126,T58] (  3,  1.50)     int  ->  rdx         "field V76._length (fldOffset=0x8)" P-INDEP
+;  V125 tmp119      [V125,T55] (  3,  1.50)   byref  ->  rax         "field V76._reference (fldOffset=0x0)" P-INDEP
+;  V126 tmp120      [V126,T57] (  3,  1.50)     int  ->  rdx         "field V76._length (fldOffset=0x8)" P-INDEP
 ;* V127 tmp121      [V127    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V77._reference (fldOffset=0x0)" P-INDEP
 ;* V128 tmp122      [V128    ] (  0,  0   )     int  ->  zero-ref    "field V77._length (fldOffset=0x8)" P-INDEP
-;  V129 tmp123      [V129,T64] (  2,  0   )     ref  ->  rsi         "argument with side effect"
-;  V130 cse0        [V130,T59] (  3,  1.50)    long  ->  rsi         "CSE #10: conservative"
-;  V131 cse1        [V131,T57] (  3,  1.50)     ref  ->  r12         "CSE #11: conservative"
-;  V132 cse2        [V132,T03] ( 15,342   )   byref  ->  [rbp-0x78]  multi-def "CSE #02: aggressive"
-;  V133 rat0        [V133,T20] (  3, 46.55)     int  ->  rsi         "ReplaceWithLclVar is creating a new local variable"
+;  V129 tmp123      [V129,T63] (  2,  0   )     ref  ->  rsi         "argument with side effect"
+;  V130 cse0        [V130,T58] (  3,  1.50)    long  ->  rsi         "CSE #10: conservative"
+;  V131 cse1        [V131,T56] (  3,  1.50)     ref  ->  r13         "CSE #11: conservative"
+;  V132 rat0        [V132,T17] (  3, 46.55)     int  ->  rsi         "ReplaceWithLclVar is creating a new local variable"
 ;
-; Lcl frame size = 88
+; Lcl frame size = 72
 
 G_M46554_IG01:
        push     rbp
        push     r15
        push     r14
        push     r13
        push     r12
        push     rbx
-       sub      rsp, 88
-       lea      rbp, [rsp+0x80]
+       sub      rsp, 72
+       lea      rbp, [rsp+0x70]
        mov      r15, rdi
        mov      r14, rsi
        mov      ebx, edx
        mov      r13, rcx
-						;; size=33 bbWeight=1 PerfScore 7.75
+						;; size=30 bbWeight=1 PerfScore 7.75
 G_M46554_IG02:
        xor      esi, esi
        mov      dword ptr [rbp-0x30], esi
 						;; size=5 bbWeight=1 PerfScore 1.25
 G_M46554_IG03:
        movzx    rsi, byte  ptr [r15+0x4C]
        cmp      esi, 9
-       ja       G_M46554_IG47
+       ja       G_M46554_IG46
 						;; size=14 bbWeight=8 PerfScore 26.00
 G_M46554_IG04:
        mov      esi, esi
        lea      rdx, [reloc @RWD00]
        mov      edx, dword ptr [rdx+4*rsi]
        lea      rdi, G_M46554_IG02
        add      rdx, rdi
        jmp      rdx
 						;; size=24 bbWeight=7.27 PerfScore 43.64
 G_M46554_IG05:
        cmp      dword ptr [rbp-0x30], ebx
        jge      SHORT G_M46554_IG07
 						;; size=5 bbWeight=2 PerfScore 6.00
 G_M46554_IG06:
-       lea      r12, bword ptr [r15+0x50]
-       mov      rdi, r12
+       lea      rdi, bword ptr [r15+0x50]
        mov      esi, dword ptr [rbp-0x30]
        cmp      esi, ebx
-       jae      G_M46554_IG50
+       jae      G_M46554_IG49
        movzx    rsi, byte  ptr [r14+rsi]
        lea      rdx, [rbp-0x68]
        mov      rax, 0xD1FFAB1E      ; code for System.Net.Http.HPack.IntegerDecoder:TryDecode(ubyte,byref):ubyte:this
        call     [rax]System.Net.Http.HPack.IntegerDecoder:TryDecode(ubyte,byref):ubyte:this
        test     eax, eax
        jne      SHORT G_M46554_IG08
        mov      edi, dword ptr [rbp-0x30]
        inc      edi
        mov      dword ptr [rbp-0x30], edi
        cmp      dword ptr [rbp-0x30], ebx
        jl       SHORT G_M46554_IG06
-						;; size=56 bbWeight=16 PerfScore 244.00
+						;; size=53 bbWeight=16 PerfScore 240.00
 G_M46554_IG07:
        xor      edi, edi
        mov      dword ptr [rbp-0x68], edi
-       jmp      SHORT G_M46554_IG12
-						;; size=7 bbWeight=2 PerfScore 6.50
+       jmp      G_M46554_IG40
+						;; size=10 bbWeight=2 PerfScore 6.50
 G_M46554_IG08:
        mov      edi, dword ptr [rbp-0x30]
        inc      edi
        mov      dword ptr [rbp-0x30], edi
        mov      rdi, r15
        mov      esi, dword ptr [rbp-0x68]
        mov      rax, 0xD1FFAB1E      ; code for System.Net.Http.HPack.HPackDecoder:SetDynamicHeaderTableSize(int):this
        call     [rax]System.Net.Http.HPack.HPackDecoder:SetDynamicHeaderTableSize(int):this
        mov      byte  ptr [r15+0x4C], 0
-       jmp      SHORT G_M46554_IG12
-						;; size=33 bbWeight=2 PerfScore 19.50
+       jmp      G_M46554_IG40
+						;; size=36 bbWeight=2 PerfScore 19.50
 G_M46554_IG09:
        mov      r12, r14
        mov      eax, ebx
        mov      dword ptr [rbp-0x70], eax
        cmp      dword ptr [rbp-0x30], eax
        jge      SHORT G_M46554_IG11
-						;; size=13 bbWeight=8 PerfScore 36.00
+						;; size=13 bbWeight=2 PerfScore 9.00
 G_M46554_IG10:
-       lea      rsi, bword ptr [r15+0x50]
-       mov      rcx, rsi
-       mov      rdi, rcx
+       lea      rdi, bword ptr [r15+0x50]
        mov      esi, dword ptr [rbp-0x30]
        cmp      esi, eax
-       jae      G_M46554_IG50
+       jae      G_M46554_IG49
        movzx    rsi, byte  ptr [r12+rsi]
        lea      rdx, [rbp-0x60]
        mov      rcx, 0xD1FFAB1E      ; code for System.Net.Http.HPack.IntegerDecoder:TryDecode(ubyte,byref):ubyte:this
        call     [rcx]System.Net.Http.HPack.IntegerDecoder:TryDecode(ubyte,byref):ubyte:this
        test     eax, eax
-       jne      SHORT G_M46554_IG15
+       jne      SHORT G_M46554_IG12
        mov      edi, dword ptr [rbp-0x30]
        inc      edi
        mov      dword ptr [rbp-0x30], edi
        mov      edi, dword ptr [rbp-0x70]
        cmp      dword ptr [rbp-0x30], edi
        mov      eax, edi
        jl       SHORT G_M46554_IG10
-						;; size=64 bbWeight=64 PerfScore 1072.00
+						;; size=58 bbWeight=16 PerfScore 260.00
 G_M46554_IG11:
        xor      edi, edi
        mov      dword ptr [rbp-0x60], edi
-						;; size=5 bbWeight=8 PerfScore 10.00
+       jmp      G_M46554_IG40
+						;; size=10 bbWeight=2 PerfScore 6.50
 G_M46554_IG12:
-       cmp      dword ptr [rbp-0x30], ebx
-       jl       G_M46554_IG03
-						;; size=9 bbWeight=8 PerfScore 24.00
-G_M46554_IG13:
-       cmp      byte  ptr [r15+0x58], 0
-       je       G_M46554_IG46
-						;; size=11 bbWeight=1 PerfScore 4.00
-G_M46554_IG14:
-       mov      edx, dword ptr [r15+0x44]
-       lea      rsi, bword ptr [r15+0x18]
-       mov      rdi, r15
-       mov      rax, 0xD1FFAB1E      ; code for System.Net.Http.HPack.HPackDecoder:EnsureStringCapacity(byref,int):this
-       call     [rax]System.Net.Http.HPack.HPackDecoder:EnsureStringCapacity(byref,int):this
-       mov      r12, gword ptr [r15+0x18]
-       lea      rdi, bword ptr [r15+0x28]
-       mov      rsi, r12
-       call     CORINFO_HELP_ASSIGN_REF
-       mov      esi, dword ptr [r15+0x60]
-       mov      eax, dword ptr [r15+0x64]
-       mov      edx, eax
-       add      rdx, rsi
-       mov      edi, ebx
-       cmp      rdx, rdi
-       jbe      G_M46554_IG43
-       jmp      G_M46554_IG49
-						;; size=68 bbWeight=0.50 PerfScore 8.88
-G_M46554_IG15:
        mov      edi, dword ptr [rbp-0x30]
        inc      edi
        mov      dword ptr [rbp-0x30], edi
        mov      rdi, r15
        mov      esi, dword ptr [rbp-0x60]
        mov      edx, 8
        mov      rax, 0xD1FFAB1E      ; code for System.Net.Http.HPack.HPackDecoder:OnStringLength(int,ubyte):this
        call     [rax]System.Net.Http.HPack.HPackDecoder:OnStringLength(int,ubyte):this
        mov      rsi, r14
        mov      edx, ebx
        lea      rcx, [rbp-0x30]
        mov      rdi, r15
        mov      r8, r13
        mov      rax, 0xD1FFAB1E      ; code for System.Net.Http.HPack.HPackDecoder:ParseHeaderValue(System.ReadOnlySpan`1[ubyte],byref,System.Net.Http.IHttpStreamHeadersHandler):this
        call     [rax]System.Net.Http.HPack.HPackDecoder:ParseHeaderValue(System.ReadOnlySpan`1[ubyte],byref,System.Net.Http.IHttpStreamHeadersHandler):this
-       jmp      G_M46554_IG12
-						;; size=63 bbWeight=8 PerfScore 110.00
-G_M46554_IG16:
+       jmp      G_M46554_IG40
+						;; size=63 bbWeight=2 PerfScore 27.50
+G_M46554_IG13:
        cmp      dword ptr [rbp-0x30], ebx
-       jge      G_M46554_IG12
+       jge      G_M46554_IG40
        mov      esi, dword ptr [rbp-0x30]
        lea      edx, [rsi+0x01]
        mov      dword ptr [rbp-0x30], edx
        cmp      esi, ebx
-       jae      G_M46554_IG50
+       jae      G_M46554_IG49
        movzx    rsi, byte  ptr [r14+rsi]
        test     sil, 128
        setne    dl
        mov      byte  ptr [r15+0x4E], dl
-       lea      rcx, bword ptr [r15+0x50]
-       mov      r12, rcx
-       mov      rdx, r12
+       lea      rdx, bword ptr [r15+0x50]
        and      esi, -129
-       movzx    rax, sil
-       cmp      eax, 127
-       jl       G_M46554_IG20
-       mov      dword ptr [rdx], eax
+       movzx    r12, sil
+       cmp      r12d, 127
+       jl       G_M46554_IG17
+       mov      dword ptr [rdx], r12d
        xor      esi, esi
        mov      dword ptr [rdx+0x04], esi
        mov      byte  ptr [r15+0x4C], 7
        cmp      dword ptr [rbp-0x30], ebx
-       jge      SHORT G_M46554_IG18
-						;; size=88 bbWeight=2 PerfScore 40.00
-G_M46554_IG17:
-       mov      rdi, r12
+       jge      SHORT G_M46554_IG15
+						;; size=84 bbWeight=2 PerfScore 39.00
+G_M46554_IG14:
+       lea      rdi, bword ptr [r15+0x50]
        mov      esi, dword ptr [rbp-0x30]
        cmp      esi, ebx
-       jae      G_M46554_IG50
+       jae      G_M46554_IG49
        movzx    rsi, byte  ptr [r14+rsi]
        lea      rdx, [rbp-0x58]
        mov      rax, 0xD1FFAB1E      ; code for System.Net.Http.HPack.IntegerDecoder:TryDecode(ubyte,byref):ubyte:this
        call     [rax]System.Net.Http.HPack.IntegerDecoder:TryDecode(ubyte,byref):ubyte:this
        test     eax, eax
-       jne      SHORT G_M46554_IG19
+       jne      SHORT G_M46554_IG16
        mov      edi, dword ptr [rbp-0x30]
        inc      edi
        mov      dword ptr [rbp-0x30], edi
        cmp      dword ptr [rbp-0x30], ebx
-       jl       SHORT G_M46554_IG17
-						;; size=52 bbWeight=64 PerfScore 944.00
-G_M46554_IG18:
+       jl       SHORT G_M46554_IG14
+						;; size=53 bbWeight=16 PerfScore 240.00
+G_M46554_IG15:
        xor      edi, edi
        mov      dword ptr [rbp-0x58], edi
-       jmp      G_M46554_IG12
-						;; size=10 bbWeight=8 PerfScore 26.00
-G_M46554_IG19:
+       jmp      G_M46554_IG40
+						;; size=10 bbWeight=2 PerfScore 6.50
+G_M46554_IG16:
        mov      edi, dword ptr [rbp-0x30]
        inc      edi
        mov      dword ptr [rbp-0x30], edi
        mov      rdi, r15
        mov      esi, dword ptr [rbp-0x58]
        mov      edx, 8
        mov      rax, 0xD1FFAB1E      ; code for System.Net.Http.HPack.HPackDecoder:OnStringLength(int,ubyte):this
        call     [rax]System.Net.Http.HPack.HPackDecoder:OnStringLength(int,ubyte):this
        mov      rsi, r14
        mov      edx, ebx
        lea      rcx, [rbp-0x30]
        mov      rdi, r15
        mov      r8, r13
        mov      rax, 0xD1FFAB1E      ; code for System.Net.Http.HPack.HPackDecoder:ParseHeaderValue(System.ReadOnlySpan`1[ubyte],byref,System.Net.Http.IHttpStreamHeadersHandler):this
        call     [rax]System.Net.Http.HPack.HPackDecoder:ParseHeaderValue(System.ReadOnlySpan`1[ubyte],byref,System.Net.Http.IHttpStreamHeadersHandler):this
-       jmp      G_M46554_IG12
-						;; size=63 bbWeight=8 PerfScore 110.00
-G_M46554_IG20:
-       mov      r12d, eax
+       jmp      G_M46554_IG40
+						;; size=63 bbWeight=2 PerfScore 27.50
+G_M46554_IG17:
        mov      rdi, r15
        mov      esi, r12d
        mov      edx, 8
        mov      rax, 0xD1FFAB1E      ; code for System.Net.Http.HPack.HPackDecoder:OnStringLength(int,ubyte):this
        call     [rax]System.Net.Http.HPack.HPackDecoder:OnStringLength(int,ubyte):this
        test     r12d, r12d
-       je       SHORT G_M46554_IG22
-						;; size=31 bbWeight=2 PerfScore 11.00
-G_M46554_IG21:
+       je       SHORT G_M46554_IG19
+						;; size=28 bbWeight=2 PerfScore 10.50
+G_M46554_IG18:
        mov      rsi, r14
        mov      edx, ebx
        lea      rcx, [rbp-0x30]
        mov      rdi, r15
        mov      r8, r13
        mov      rax, 0xD1FFAB1E      ; code for System.Net.Http.HPack.HPackDecoder:ParseHeaderValue(System.ReadOnlySpan`1[ubyte],byref,System.Net.Http.IHttpStreamHeadersHandler):this
        call     [rax]System.Net.Http.HPack.HPackDecoder:ParseHeaderValue(System.ReadOnlySpan`1[ubyte],byref,System.Net.Http.IHttpStreamHeadersHandler):this
-       jmp      G_M46554_IG12
-						;; size=32 bbWeight=8 PerfScore 54.00
-G_M46554_IG22:
+       jmp      G_M46554_IG40
+						;; size=32 bbWeight=2 PerfScore 13.50
+G_M46554_IG19:
        mov      rdi, r15
        xor      esi, esi
        mov      rax, 0xD1FFAB1E      ; code for System.Net.Http.HPack.HPackDecoder:OnString(ubyte):this
        call     [rax]System.Net.Http.HPack.HPackDecoder:OnString(ubyte):this
        mov      rsi, r14
        mov      edx, ebx
        mov      rdi, r15
        mov      rcx, r13
        mov      rax, 0xD1FFAB1E      ; code for System.Net.Http.HPack.HPackDecoder:ProcessHeaderValue(System.ReadOnlySpan`1[ubyte],System.Net.Http.IHttpStreamHeadersHandler):this
        call     [rax]System.Net.Http.HPack.HPackDecoder:ProcessHeaderValue(System.ReadOnlySpan`1[ubyte],System.Net.Http.IHttpStreamHeadersHandler):this
-       jmp      G_M46554_IG12
+       jmp      G_M46554_IG40
 						;; size=45 bbWeight=2 PerfScore 20.00
-G_M46554_IG23:
+G_M46554_IG20:
        mov      rsi, r14
        mov      edx, ebx
        lea      rcx, [rbp-0x30]
        mov      rdi, r15
        mov      r8, r13
        mov      rax, 0xD1FFAB1E      ; code for System.Net.Http.HPack.HPackDecoder:ParseHeaderName(System.ReadOnlySpan`1[ubyte],byref,System.Net.Http.IHttpStreamHeadersHandler):this
        call     [rax]System.Net.Http.HPack.HPackDecoder:ParseHeaderName(System.ReadOnlySpan`1[ubyte],byref,System.Net.Http.IHttpStreamHeadersHandler):this
-       jmp      G_M46554_IG12
+       jmp      G_M46554_IG40
 						;; size=32 bbWeight=2 PerfScore 13.50
-G_M46554_IG24:
+G_M46554_IG21:
        cmp      dword ptr [rbp-0x30], ebx
-       jge      SHORT G_M46554_IG26
+       jge      SHORT G_M46554_IG23
 						;; size=5 bbWeight=2 PerfScore 6.00
-G_M46554_IG25:
-       lea      r12, bword ptr [r15+0x50]
-       mov      rdi, r12
+G_M46554_IG22:
+       lea      rdi, bword ptr [r15+0x50]
        mov      esi, dword ptr [rbp-0x30]
        cmp      esi, ebx
-       jae      G_M46554_IG50
+       jae      G_M46554_IG49
        movzx    rsi, byte  ptr [r14+rsi]
        lea      rdx, [rbp-0x50]
        mov      rax, 0xD1FFAB1E      ; code for System.Net.Http.HPack.IntegerDecoder:TryDecode(ubyte,byref):ubyte:this
        call     [rax]System.Net.Http.HPack.IntegerDecoder:TryDecode(ubyte,byref):ubyte:this
        test     eax, eax
-       jne      SHORT G_M46554_IG27
+       jne      SHORT G_M46554_IG24
        mov      edi, dword ptr [rbp-0x30]
        inc      edi
        mov      dword ptr [rbp-0x30], edi
        cmp      dword ptr [rbp-0x30], ebx
-       jl       SHORT G_M46554_IG25
-						;; size=56 bbWeight=16 PerfScore 244.00
-G_M46554_IG26:
+       jl       SHORT G_M46554_IG22
+						;; size=53 bbWeight=16 PerfScore 240.00
+G_M46554_IG23:
        xor      edi, edi
        mov      dword ptr [rbp-0x50], edi
-       jmp      G_M46554_IG12
+       jmp      G_M46554_IG40
 						;; size=10 bbWeight=2 PerfScore 6.50
-G_M46554_IG27:
+G_M46554_IG24:
        mov      edi, dword ptr [rbp-0x30]
        inc      edi
        mov      dword ptr [rbp-0x30], edi
        mov      rdi, r15
        mov      esi, dword ptr [rbp-0x50]
        mov      edx, 5
        mov      rax, 0xD1FFAB1E      ; code for System.Net.Http.HPack.HPackDecoder:OnStringLength(int,ubyte):this
        call     [rax]System.Net.Http.HPack.HPackDecoder:OnStringLength(int,ubyte):this
        mov      rsi, r14
        mov      edx, ebx
        lea      rcx, [rbp-0x30]
        mov      rdi, r15
        mov      r8, r13
        mov      rax, 0xD1FFAB1E      ; code for System.Net.Http.HPack.HPackDecoder:ParseHeaderName(System.ReadOnlySpan`1[ubyte],byref,System.Net.Http.IHttpStreamHeadersHandler):this
        call     [rax]System.Net.Http.HPack.HPackDecoder:ParseHeaderName(System.ReadOnlySpan`1[ubyte],byref,System.Net.Http.IHttpStreamHeadersHandler):this
-       jmp      G_M46554_IG12
+       jmp      G_M46554_IG40
 						;; size=63 bbWeight=2 PerfScore 27.50
-G_M46554_IG28:
+G_M46554_IG25:
        mov      rsi, r14
        mov      edx, ebx
        lea      rcx, [rbp-0x30]
        mov      rdi, r15
        mov      r8, r13
        mov      rax, 0xD1FFAB1E      ; code for System.Net.Http.HPack.HPackDecoder:ParseHeaderNameLength(System.ReadOnlySpan`1[ubyte],byref,System.Net.Http.IHttpStreamHeadersHandler):this
        call     [rax]System.Net.Http.HPack.HPackDecoder:ParseHeaderNameLength(System.ReadOnlySpan`1[ubyte],byref,System.Net.Http.IHttpStreamHeadersHandler):this
-       jmp      G_M46554_IG12
+       jmp      G_M46554_IG40
 						;; size=32 bbWeight=2 PerfScore 13.50
-G_M46554_IG29:
+G_M46554_IG26:
        mov      r12, r14
        mov      eax, ebx
        mov      dword ptr [rbp-0x6C], eax
        cmp      dword ptr [rbp-0x30], eax
-       jge      SHORT G_M46554_IG31
+       jge      SHORT G_M46554_IG28
 						;; size=13 bbWeight=2 PerfScore 9.00
-G_M46554_IG30:
-       lea      rsi, bword ptr [r15+0x50]
-       mov      rcx, rsi
-       mov      bword ptr [rbp-0x78], rcx
-       mov      rdi, rcx
+G_M46554_IG27:
+       lea      rdi, bword ptr [r15+0x50]
        mov      esi, dword ptr [rbp-0x30]
        cmp      esi, eax
-       jae      G_M46554_IG50
+       jae      G_M46554_IG49
        movzx    rsi, byte  ptr [r12+rsi]
        lea      rdx, [rbp-0x40]
-       mov      r8, 0xD1FFAB1E      ; code for System.Net.Http.HPack.IntegerDecoder:TryDecode(ubyte,byref):ubyte:this
-       call     [r8]System.Net.Http.HPack.IntegerDecoder:TryDecode(ubyte,byref):ubyte:this
+       mov      rcx, 0xD1FFAB1E      ; code for System.Net.Http.HPack.IntegerDecoder:TryDecode(ubyte,byref):ubyte:this
+       call     [rcx]System.Net.Http.HPack.IntegerDecoder:TryDecode(ubyte,byref):ubyte:this
        test     eax, eax
-       jne      SHORT G_M46554_IG32
+       jne      SHORT G_M46554_IG29
        mov      edi, dword ptr [rbp-0x30]
        inc      edi
        mov      dword ptr [rbp-0x30], edi
        mov      edi, dword ptr [rbp-0x6C]
        cmp      dword ptr [rbp-0x30], edi
        mov      eax, edi
-       jl       SHORT G_M46554_IG30
-						;; size=69 bbWeight=16 PerfScore 284.00
-G_M46554_IG31:
+       jl       SHORT G_M46554_IG27
+						;; size=58 bbWeight=16 PerfScore 260.00
+G_M46554_IG28:
        xor      edi, edi
        mov      dword ptr [rbp-0x40], edi
-       jmp      G_M46554_IG12
+       jmp      G_M46554_IG40
 						;; size=10 bbWeight=2 PerfScore 6.50
-G_M46554_IG32:
+G_M46554_IG29:
        mov      edi, dword ptr [rbp-0x30]
        inc      edi
        mov      dword ptr [rbp-0x30], edi
        mov      rdi, r15
        mov      esi, dword ptr [rbp-0x40]
        mov      rax, 0xD1FFAB1E      ; code for System.Net.Http.HPack.HPackDecoder:OnIndexedHeaderName(int):this
        call     [rax]System.Net.Http.HPack.HPackDecoder:OnIndexedHeaderName(int):this
        cmp      dword ptr [rbp-0x30], ebx
-       jge      G_M46554_IG12
-       mov      r12, bword ptr [rbp-0x78]
+       jge      G_M46554_IG40
        mov      esi, dword ptr [rbp-0x30]
        lea      edx, [rsi+0x01]
        mov      dword ptr [rbp-0x30], edx
        cmp      esi, ebx
-       jae      G_M46554_IG50
+       jae      G_M46554_IG49
        movzx    rsi, byte  ptr [r14+rsi]
        test     sil, 128
        setne    dl
        mov      byte  ptr [r15+0x4E], dl
-       mov      rdx, r12
+       lea      rdx, bword ptr [r15+0x50]
        and      esi, -129
-       movzx    rax, sil
-       cmp      eax, 127
-       jl       G_M46554_IG36
-       mov      dword ptr [rdx], eax
+       movzx    r12, sil
+       cmp      r12d, 127
+       jl       G_M46554_IG33
+       mov      dword ptr [rdx], r12d
        xor      esi, esi
        mov      dword ptr [rdx+0x04], esi
        mov      byte  ptr [r15+0x4C], 7
        cmp      dword ptr [rbp-0x30], ebx
-       jge      SHORT G_M46554_IG34
-						;; size=111 bbWeight=2 PerfScore 54.00
-G_M46554_IG33:
-       mov      rdi, r12
+       jge      SHORT G_M46554_IG31
+						;; size=110 bbWeight=2 PerfScore 52.50
+G_M46554_IG30:
+       lea      rdi, bword ptr [r15+0x50]
        mov      esi, dword ptr [rbp-0x30]
        cmp      esi, ebx
-       jae      G_M46554_IG50
+       jae      G_M46554_IG49
        movzx    rsi, byte  ptr [r14+rsi]
        lea      rdx, [rbp-0x48]
        mov      rax, 0xD1FFAB1E      ; code for System.Net.Http.HPack.IntegerDecoder:TryDecode(ubyte,byref):ubyte:this
        call     [rax]System.Net.Http.HPack.IntegerDecoder:TryDecode(ubyte,byref):ubyte:this
        test     eax, eax
-       jne      SHORT G_M46554_IG35
+       jne      SHORT G_M46554_IG32
        mov      edi, dword ptr [rbp-0x30]
        inc      edi
        mov      dword ptr [rbp-0x30], edi
        cmp      dword ptr [rbp-0x30], ebx
-       jl       SHORT G_M46554_IG33
-						;; size=52 bbWeight=16 PerfScore 236.00
-G_M46554_IG34:
+       jl       SHORT G_M46554_IG30
+						;; size=53 bbWeight=16 PerfScore 240.00
+G_M46554_IG31:
        xor      edi, edi
        mov      dword ptr [rbp-0x48], edi
-       jmp      G_M46554_IG12
+       jmp      G_M46554_IG40
 						;; size=10 bbWeight=2 PerfScore 6.50
-G_M46554_IG35:
+G_M46554_IG32:
        mov      edi, dword ptr [rbp-0x30]
        inc      edi
        mov      dword ptr [rbp-0x30], edi
        mov      rdi, r15
        mov      esi, dword ptr [rbp-0x48]
        mov      edx, 8
        mov      rax, 0xD1FFAB1E      ; code for System.Net.Http.HPack.HPackDecoder:OnStringLength(int,ubyte):this
        call     [rax]System.Net.Http.HPack.HPackDecoder:OnStringLength(int,ubyte):this
        mov      rsi, r14
        mov      edx, ebx
        lea      rcx, [rbp-0x30]
        mov      rdi, r15
        mov      r8, r13
        mov      rax, 0xD1FFAB1E      ; code for System.Net.Http.HPack.HPackDecoder:ParseHeaderValue(System.ReadOnlySpan`1[ubyte],byref,System.Net.Http.IHttpStreamHeadersHandler):this
        call     [rax]System.Net.Http.HPack.HPackDecoder:ParseHeaderValue(System.ReadOnlySpan`1[ubyte],byref,System.Net.Http.IHttpStreamHeadersHandler):this
-       jmp      G_M46554_IG12
+       jmp      G_M46554_IG40
 						;; size=63 bbWeight=2 PerfScore 27.50
-G_M46554_IG36:
-       mov      r12d, eax
+G_M46554_IG33:
        mov      rdi, r15
        mov      esi, r12d
        mov      edx, 8
        mov      rax, 0xD1FFAB1E      ; code for System.Net.Http.HPack.HPackDecoder:OnStringLength(int,ubyte):this
        call     [rax]System.Net.Http.HPack.HPackDecoder:OnStringLength(int,ubyte):this
        test     r12d, r12d
-       je       SHORT G_M46554_IG37
+       je       SHORT G_M46554_IG34
        mov      rsi, r14
        mov      edx, ebx
        lea      rcx, [rbp-0x30]
        mov      rdi, r15
        mov      r8, r13
        mov      rax, 0xD1FFAB1E      ; code for System.Net.Http.HPack.HPackDecoder:ParseHeaderValue(System.ReadOnlySpan`1[ubyte],byref,System.Net.Http.IHttpStreamHeadersHandler):this
        call     [rax]System.Net.Http.HPack.HPackDecoder:ParseHeaderValue(System.ReadOnlySpan`1[ubyte],byref,System.Net.Http.IHttpStreamHeadersHandler):this
-       jmp      G_M46554_IG12
-						;; size=63 bbWeight=2 PerfScore 24.50
-G_M46554_IG37:
+       jmp      G_M46554_IG40
+						;; size=60 bbWeight=2 PerfScore 24.00
+G_M46554_IG34:
        mov      rdi, r15
        xor      esi, esi
        mov      rax, 0xD1FFAB1E      ; code for System.Net.Http.HPack.HPackDecoder:OnString(ubyte):this
        call     [rax]System.Net.Http.HPack.HPackDecoder:OnString(ubyte):this
        mov      rsi, r14
        mov      edx, ebx
        mov      rdi, r15
        mov      rcx, r13
        mov      rax, 0xD1FFAB1E      ; code for System.Net.Http.HPack.HPackDecoder:ProcessHeaderValue(System.ReadOnlySpan`1[ubyte],System.Net.Http.IHttpStreamHeadersHandler):this
        call     [rax]System.Net.Http.HPack.HPackDecoder:ProcessHeaderValue(System.ReadOnlySpan`1[ubyte],System.Net.Http.IHttpStreamHeadersHandler):this
-       jmp      G_M46554_IG12
-						;; size=45 bbWeight=2 PerfScore 20.00
-G_M46554_IG38:
+       jmp      SHORT G_M46554_IG40
+						;; size=42 bbWeight=2 PerfScore 20.00
+G_M46554_IG35:
        cmp      dword ptr [rbp-0x30], ebx
-       jge      SHORT G_M46554_IG40
+       jge      SHORT G_M46554_IG37
 						;; size=5 bbWeight=2 PerfScore 6.00
-G_M46554_IG39:
-       lea      r12, bword ptr [r15+0x50]
-       mov      rdi, r12
+G_M46554_IG36:
+       lea      rdi, bword ptr [r15+0x50]
        mov      esi, dword ptr [rbp-0x30]
        cmp      esi, ebx
-       jae      G_M46554_IG50
+       jae      G_M46554_IG49
        movzx    rsi, byte  ptr [r14+rsi]
        lea      rdx, [rbp-0x38]
        mov      rax, 0xD1FFAB1E      ; code for System.Net.Http.HPack.IntegerDecoder:TryDecode(ubyte,byref):ubyte:this
        call     [rax]System.Net.Http.HPack.IntegerDecoder:TryDecode(ubyte,byref):ubyte:this
        test     eax, eax
-       jne      SHORT G_M46554_IG41
+       jne      SHORT G_M46554_IG38
        mov      edi, dword ptr [rbp-0x30]
        inc      edi
        mov      dword ptr [rbp-0x30], edi
        cmp      dword ptr [rbp-0x30], ebx
-       jl       SHORT G_M46554_IG39
-						;; size=56 bbWeight=16 PerfScore 244.00
-G_M46554_IG40:
+       jl       SHORT G_M46554_IG36
+						;; size=53 bbWeight=16 PerfScore 240.00
+G_M46554_IG37:
        xor      edi, edi
        mov      dword ptr [rbp-0x38], edi
-       jmp      G_M46554_IG12
-						;; size=10 bbWeight=2 PerfScore 6.50
-G_M46554_IG41:
+       jmp      SHORT G_M46554_IG40
+						;; size=7 bbWeight=2 PerfScore 6.50
+G_M46554_IG38:
        mov      edi, dword ptr [rbp-0x30]
        inc      edi
        mov      dword ptr [rbp-0x30], edi
        mov      rdi, r15
        mov      esi, dword ptr [rbp-0x38]
        mov      rdx, r13
        mov      rax, 0xD1FFAB1E      ; code for System.Net.Http.HPack.HPackDecoder:OnIndexedHeaderField(int,System.Net.Http.IHttpStreamHeadersHandler):this
        call     [rax]System.Net.Http.HPack.HPackDecoder:OnIndexedHeaderField(int,System.Net.Http.IHttpStreamHeadersHandler):this
-       jmp      G_M46554_IG12
-						;; size=34 bbWeight=2 PerfScore 18.00
-G_M46554_IG42:
+       jmp      SHORT G_M46554_IG40
+						;; size=31 bbWeight=2 PerfScore 18.00
+G_M46554_IG39:
        mov      rsi, r14
        mov      edx, ebx
        lea      rcx, [rbp-0x30]
        mov      rdi, r15
        mov      r8, r13
        mov      rax, 0xD1FFAB1E      ; code for System.Net.Http.HPack.HPackDecoder:Parse(System.ReadOnlySpan`1[ubyte],byref,System.Net.Http.IHttpStreamHeadersHandler):this
        call     [rax]System.Net.Http.HPack.HPackDecoder:Parse(System.ReadOnlySpan`1[ubyte],byref,System.Net.Http.IHttpStreamHeadersHandler):this
-       jmp      G_M46554_IG12
-						;; size=32 bbWeight=2 PerfScore 13.50
-G_M46554_IG43:
+						;; size=27 bbWeight=2 PerfScore 9.50
+G_M46554_IG40:
+       cmp      dword ptr [rbp-0x30], ebx
+       jl       G_M46554_IG03
+						;; size=9 bbWeight=8 PerfScore 24.00
+G_M46554_IG41:
+       cmp      byte  ptr [r15+0x58], 0
+       je       SHORT G_M46554_IG45
+						;; size=7 bbWeight=1 PerfScore 4.00
+G_M46554_IG42:
+       mov      edx, dword ptr [r15+0x44]
+       lea      rsi, bword ptr [r15+0x18]
+       mov      rdi, r15
+       mov      rax, 0xD1FFAB1E      ; code for System.Net.Http.HPack.HPackDecoder:EnsureStringCapacity(byref,int):this
+       call     [rax]System.Net.Http.HPack.HPackDecoder:EnsureStringCapacity(byref,int):this
+       mov      r13, gword ptr [r15+0x18]
+       lea      rdi, bword ptr [r15+0x28]
+       mov      rsi, r13
+       call     CORINFO_HELP_ASSIGN_REF
+       mov      edx, dword ptr [r15+0x60]
+       mov      edi, dword ptr [r15+0x64]
+       mov      esi, edx
+       mov      edx, edi
+       add      rdx, rsi
+       mov      eax, ebx
+       cmp      rdx, rax
+       ja       G_M46554_IG48
        add      rsi, r14
-       test     r12, r12
-       je       SHORT G_M46554_IG44
-       lea      rdi, bword ptr [r12+0x10]
-       mov      edx, dword ptr [r12+0x08]
-       jmp      SHORT G_M46554_IG45
-						;; size=20 bbWeight=0.50 PerfScore 3.00
-G_M46554_IG44:
-       xor      rdi, rdi
+       test     r13, r13
+       je       SHORT G_M46554_IG43
+       lea      rax, bword ptr [r13+0x10]
+       mov      edx, dword ptr [r13+0x08]
+       jmp      SHORT G_M46554_IG44
+						;; size=83 bbWeight=0.50 PerfScore 11.00
+G_M46554_IG43:
+       xor      rax, rax
        xor      edx, edx
 						;; size=4 bbWeight=0.50 PerfScore 0.25
-G_M46554_IG45:
-       cmp      eax, edx
-       ja       G_M46554_IG48
-       mov      edx, eax
+G_M46554_IG44:
+       cmp      edi, edx
+       ja       G_M46554_IG47
+       mov      edx, edi
+       mov      rdi, rax
        mov      rax, 0xD1FFAB1E      ; code for System.SpanHelpers:Memmove(byref,byref,ulong)
        call     [rax]System.SpanHelpers:Memmove(byref,byref,ulong)
        vxorps   xmm0, xmm0, xmm0
        vmovdqu  xmmword ptr [r15+0x58], xmm0
-						;; size=32 bbWeight=0.50 PerfScore 3.54
-G_M46554_IG46:
-       add      rsp, 88
+						;; size=35 bbWeight=0.50 PerfScore 3.67
+G_M46554_IG45:
+       add      rsp, 72
        pop      rbx
        pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
 						;; size=15 bbWeight=1 PerfScore 4.25
-G_M46554_IG47:
+G_M46554_IG46:
        mov      rdi, 0xD1FFAB1E      ; System.Net.Http.HPack.HPackDecoder+State
        call     CORINFO_HELP_NEWSFAST
        mov      rbx, rax
        movzx    rdi, byte  ptr [r15+0x4C]
        mov      byte  ptr [rbx+0x08], dil
        mov      rdi, 0xD1FFAB1E      ; System.NotImplementedException
        call     CORINFO_HELP_NEWSFAST
        mov      r15, rax
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.Enum:ToString():System.String:this
        call     [rax]System.Enum:ToString():System.String:this
        mov      rsi, rax
        mov      rdi, r15
        mov      rax, 0xD1FFAB1E      ; code for System.NotImplementedException:.ctor(System.String):this
        call     [rax]System.NotImplementedException:.ctor(System.String):this
        mov      rdi, r15
        call     CORINFO_HELP_THROW
        int3     
 						;; size=87 bbWeight=0 PerfScore 0.00
-G_M46554_IG48:
+G_M46554_IG47:
        mov      rax, 0xD1FFAB1E      ; code for System.ThrowHelper:ThrowArgumentException_DestinationTooShort()
        call     [rax]System.ThrowHelper:ThrowArgumentException_DestinationTooShort()
        int3     
 						;; size=13 bbWeight=0 PerfScore 0.00
-G_M46554_IG49:
+G_M46554_IG48:
        mov      rax, 0xD1FFAB1E      ; code for System.ThrowHelper:ThrowArgumentOutOfRangeException()
        call     [rax]System.ThrowHelper:ThrowArgumentOutOfRangeException()
        int3     
 						;; size=13 bbWeight=0 PerfScore 0.00
-G_M46554_IG50:
+G_M46554_IG49:
        call     CORINFO_HELP_RNGCHKFAIL
        int3     
 						;; size=6 bbWeight=0 PerfScore 0.00
-RWD00  	dd	G_M46554_IG42 - G_M46554_IG02
-       	dd	G_M46554_IG38 - G_M46554_IG02
-       	dd	G_M46554_IG29 - G_M46554_IG02
-       	dd	G_M46554_IG28 - G_M46554_IG02
-       	dd	G_M46554_IG24 - G_M46554_IG02
-       	dd	G_M46554_IG23 - G_M46554_IG02
-       	dd	G_M46554_IG16 - G_M46554_IG02
-       	dd	G_M46554_IG09 - G_M46554_IG02
+RWD00  	dd	G_M46554_IG39 - G_M46554_IG02
+       	dd	G_M46554_IG35 - G_M46554_IG02
+       	dd	G_M46554_IG26 - G_M46554_IG02
+       	dd	G_M46554_IG25 - G_M46554_IG02
        	dd	G_M46554_IG21 - G_M46554_IG02
+       	dd	G_M46554_IG20 - G_M46554_IG02
+       	dd	G_M46554_IG13 - G_M46554_IG02
+       	dd	G_M46554_IG09 - G_M46554_IG02
+       	dd	G_M46554_IG18 - G_M46554_IG02
        	dd	G_M46554_IG05 - G_M46554_IG02
 
 
-; Total bytes of code 1692, prolog size 33, PerfScore 4102.55, instruction count 460, allocated bytes for code 1692 (MethodHash=10da4a25) for method System.Net.Http.HPack.HPackDecoder:DecodeInternal(System.ReadOnlySpan`1[ubyte],System.Net.Http.IHttpStreamHeadersHandler):this (FullOpts)
+; Total bytes of code 1645, prolog size 30, PerfScore 2290.80, instruction count 448, allocated bytes for code 1645 (MethodHash=10da4a25) for method System.Net.Http.HPack.HPackDecoder:DecodeInternal(System.ReadOnlySpan`1[ubyte],System.Net.Http.IHttpStreamHeadersHandler):this (FullOpts)
 ; ============================================================
-43 (-3.39 % 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
 ; Final local variable assignments
 ;
-;  V00 this         [V00,T16] ( 13,  102   )     ref  ->  rbx         this class-hnd single-def <ILCompiler.Reflection.ReadyToRun.Amd64.GcInfo>
-;  V01 arg1         [V01,T24] ( 10,   43   )     ref  ->  r14         class-hnd single-def <ubyte[]>
-;  V02 arg2         [V02,T21] ( 17,   57.50)   byref  ->  r15         single-def
-;  V03 loc0         [V03,T35] ( 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,T26] (  6,   38   )     int  ->  [rbp-0x2C]  spill-single-def
-;  V05 loc2         [V05,T39] (  6,   11   )     int  ->  [rbp-0x30] 
-;  V06 loc3         [V06,T45] (  3,    6.50)     int  ->  [rbp-0x34]  spill-single-def
-;  V07 loc4         [V07,T36] (  6,   16.50)     int  ->  [rbp-0x38] 
-;  V08 loc5         [V08,T10] ( 16,  250   )     ref  ->  [rbp-0x68]  class-hnd exact spill-single-def <System.Collections.Generic.List`1[ILCompiler.Reflection.ReadyToRun.BaseGcSlot]>
+;  V00 this         [V00,T12] ( 13,  126   )     ref  ->  rbx         this class-hnd single-def <ILCompiler.Reflection.ReadyToRun.Amd64.GcInfo>
+;  V01 arg1         [V01,T24] ( 10,   91   )     ref  ->  r14         class-hnd single-def <ubyte[]>
+;  V02 arg2         [V02,T18] ( 17,  117.50)   byref  ->  r15         single-def
+;  V03 loc0         [V03,T26] ( 13,   85.50)     ref  ->  r13         class-hnd exact single-def <System.Collections.Generic.List`1[System.Collections.Generic.List`1[ILCompiler.Reflection.ReadyToRun.BaseGcSlot]]>
+;  V04 loc1         [V04,T25] (  6,   92   )     int  ->  r12         single-def
+;  V05 loc2         [V05,T42] (  6,   11   )     int  ->  [rbp-0x2C] 
+;  V06 loc3         [V06,T46] (  3,    6.50)     int  ->  [rbp-0x30]  spill-single-def
+;  V07 loc4         [V07,T41] (  6,   22.50)     int  ->  [rbp-0x34] 
+;  V08 loc5         [V08,T09] ( 16,  400   )     ref  ->  [rbp-0x58]  class-hnd exact spill-single-def <System.Collections.Generic.List`1[ILCompiler.Reflection.ReadyToRun.BaseGcSlot]>
 ;  V09 loc6         [V09,T51] (  2,    4   )     int  ->  rax        
 ;* V10 loc7         [V10    ] (  0,    0   )     int  ->  zero-ref   
-;  V11 loc8         [V11,T22] (  7,   56   )   ubyte  ->  [rbp-0x3C] 
-;  V12 loc9         [V12,T23] (  4,   50   )   ubyte  ->  [rbp-0x40] 
-;  V13 loc10        [V13,T19] (  7,   68   )     int  ->  [rbp-0x44] 
-;  V14 loc11        [V14,T25] (  3,   40   )     int  ->  [rbp-0x48]  spill-single-def
-;  V15 loc12        [V15,T06] (  6, 1232   )     int  ->  [rbp-0x4C] 
-;  V16 loc13        [V16,T04] (  4, 3136   )     int  ->  rdi        
+;  V11 loc8         [V11,T31] (  7,   56   )   ubyte  ->  [rbp-0x38] 
+;  V12 loc9         [V12,T32] (  4,   50   )   ubyte  ->  [rbp-0x3C] 
+;  V13 loc10        [V13,T27] (  7,   68   )     int  ->  [rbp-0x40] 
+;  V14 loc11        [V14,T33] (  3,   40   )     int  ->  [rbp-0x44]  spill-single-def
+;  V15 loc12        [V15,T07] (  6, 1232   )     int  ->  [rbp-0x48] 
+;  V16 loc13        [V16,T05] (  4, 3136   )     int  ->  rdi        
 ;* 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,T08] (  5,  305   )     int  ->  [rbp-0x50] 
-;  V20 loc17        [V20,T07] (  4,  776   )     int  ->  rdi        
+;  V19 loc16        [V19,T08] (  5, 1220   )     int  ->  [rbp-0x4C] 
+;  V20 loc17        [V20,T06] (  4, 3104   )     int  ->  rdi        
 ;* V21 loc18        [V21    ] (  0,    0   )     ref  ->  zero-ref    class-hnd <ILCompiler.Reflection.ReadyToRun.Amd64.GcSlotTable+GcSlot>
 ;# V22 OutArgs      [V22    ] (  1,    1   )  struct ( 0) [rsp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-;  V23 tmp1         [V23,T46] (  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]]>
-;  V24 tmp2         [V24,T32] (  3,   24   )     ref  ->  [rbp-0x70]  class-hnd exact spill-single-def "NewObj constructor temp" <System.Collections.Generic.List`1[ILCompiler.Reflection.ReadyToRun.BaseGcSlot]>
+;  V23 tmp1         [V23,T47] (  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]]>
+;  V24 tmp2         [V24,T40] (  3,   24   )     ref  ->  [rbp-0x60]  class-hnd exact spill-single-def "NewObj constructor temp" <System.Collections.Generic.List`1[ILCompiler.Reflection.ReadyToRun.BaseGcSlot]>
 ;* V25 tmp3         [V25    ] (  0,    0   )     ref  ->  zero-ref   
 ;* V26 tmp4         [V26    ] (  0,    0   )     ref  ->  zero-ref   
 ;  V27 tmp5         [V27,T50] (  3,    6   )     int  ->  rsi        
 ;* V28 tmp6         [V28    ] (  0,    0   )     ref  ->  zero-ref   
 ;* V29 tmp7         [V29    ] (  0,    0   )     ref  ->  zero-ref   
-;  V30 tmp8         [V30,T28] (  3,   32   )     int  ->  rsi        
-;  V31 tmp9         [V31,T47] (  3,    6   )     ref  ->  rax         class-hnd single-def "Inlining Arg" <ILCompiler.Reflection.ReadyToRun.Amd64.GcSlotTable>
+;  V30 tmp8         [V30,T36] (  3,   32   )     int  ->  rsi        
+;  V31 tmp9         [V31,T48] (  3,    6   )     ref  ->  rax         class-hnd single-def "Inlining Arg" <ILCompiler.Reflection.ReadyToRun.Amd64.GcSlotTable>
 ;* V32 tmp10        [V32    ] (  0,    0   )     int  ->  zero-ref    "impAppendStmt"
 ;* V33 tmp11        [V33    ] (  0,    0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <ILCompiler.Reflection.ReadyToRun.GcInfoTypes>
-;  V34 tmp12        [V34,T42] (  2,    8   )     ref  ->  rdi         class-hnd "Inlining Arg" <ILCompiler.Reflection.ReadyToRun.GcInfoTypes>
-;  V35 tmp13        [V35,T43] (  2,    8   )     ref  ->  rdi         class-hnd "Inlining Arg" <ILCompiler.Reflection.ReadyToRun.GcInfoTypes>
-;  V36 tmp14        [V36,T29] (  2,   32   )     ref  ->  rsi         class-hnd "Inlining Arg" <ILCompiler.Reflection.ReadyToRun.GcInfoTypes>
-;  V37 tmp15        [V37,T30] (  2,   32   )     ref  ->  rdi         class-hnd "Inlining Arg" <ILCompiler.Reflection.ReadyToRun.GcInfoTypes>
+;  V34 tmp12        [V34,T44] (  2,    8   )     ref  ->  rdi         class-hnd "Inlining Arg" <ILCompiler.Reflection.ReadyToRun.GcInfoTypes>
+;  V35 tmp13        [V35,T45] (  2,    8   )     ref  ->  rdi         class-hnd "Inlining Arg" <ILCompiler.Reflection.ReadyToRun.GcInfoTypes>
+;  V36 tmp14        [V36,T37] (  2,   32   )     ref  ->  rsi         class-hnd "Inlining Arg" <ILCompiler.Reflection.ReadyToRun.GcInfoTypes>
+;  V37 tmp15        [V37,T38] (  2,   32   )     ref  ->  rdi         class-hnd "Inlining Arg" <ILCompiler.Reflection.ReadyToRun.GcInfoTypes>
 ;* V38 tmp16        [V38    ] (  0,    0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <ILCompiler.Reflection.ReadyToRun.Amd64.GcSlotTable>
-;  V39 tmp17        [V39,T09] (  2,  256   )     ref  ->  rsi         class-hnd "Inlining Arg" <System.Collections.Generic.List`1[ILCompiler.Reflection.ReadyToRun.Amd64.GcSlotTable+GcSlot]>
+;  V39 tmp17        [V39,T10] (  2,  256   )     ref  ->  rsi         class-hnd "Inlining Arg" <System.Collections.Generic.List`1[ILCompiler.Reflection.ReadyToRun.Amd64.GcSlotTable+GcSlot]>
 ;* V40 tmp18        [V40    ] (  0,    0   )  struct (24) zero-ref    ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[ILCompiler.Reflection.ReadyToRun.Amd64.GcSlotTable+GcSlot]>
-;  V41 tmp19        [V41,T17] (  3,   96   )     ref  ->  rdi         class-hnd "Inline stloc first use temp" <ILCompiler.Reflection.ReadyToRun.BaseGcSlot[]>
-;  V42 tmp20        [V42,T12] (  4,  128   )     int  ->  r12         "Inline stloc first use temp"
+;  V41 tmp19        [V41,T20] (  3,   96   )     ref  ->  rdi         class-hnd "Inline stloc first use temp" <ILCompiler.Reflection.ReadyToRun.BaseGcSlot[]>
+;  V42 tmp20        [V42,T13] (  4,  128   )     int  ->  rcx         "Inline stloc first use temp"
 ;* V43 tmp21        [V43    ] (  0,    0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
 ;* V44 tmp22        [V44    ] (  0,    0   )     ref  ->  zero-ref    class-hnd "Inline stloc first use temp" <System.Collections.Generic.List`1[ILCompiler.Reflection.ReadyToRun.Amd64.GcSlotTable+GcSlot]>
-;  V45 tmp23        [V45,T48] (  3,    6   )     ref  ->  rdi         class-hnd "Inline stloc first use temp" <System.Collections.Generic.List`1[ILCompiler.Reflection.ReadyToRun.BaseGcSlot][]>
-;  V46 tmp24        [V46,T40] (  4,    8   )     int  ->  registers   "Inline stloc first use temp"
+;  V45 tmp23        [V45,T49] (  3,    6   )     ref  ->  rdi         class-hnd "Inline stloc first use temp" <System.Collections.Generic.List`1[ILCompiler.Reflection.ReadyToRun.BaseGcSlot][]>
+;  V46 tmp24        [V46,T43] (  4,    8   )     int  ->  registers   "Inline stloc first use temp"
 ;* V47 tmp25        [V47    ] (  0,    0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <ILCompiler.Reflection.ReadyToRun.Amd64.GcSlotTable>
-;  V48 tmp26        [V48,T31] (  2,   32   )     ref  ->  rax         class-hnd "Inlining Arg" <System.Collections.Generic.List`1[ILCompiler.Reflection.ReadyToRun.Amd64.GcSlotTable+GcSlot]>
+;  V48 tmp26        [V48,T15] (  2,  128   )     ref  ->  rax         class-hnd "Inlining Arg" <System.Collections.Generic.List`1[ILCompiler.Reflection.ReadyToRun.Amd64.GcSlotTable+GcSlot]>
 ;* V49 tmp27        [V49    ] (  0,    0   )  struct (24) zero-ref    ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[ILCompiler.Reflection.ReadyToRun.Amd64.GcSlotTable+GcSlot]>
-;  V50 tmp28        [V50,T33] (  3,   24   )     ref  ->  rdi         class-hnd "Inline stloc first use temp" <ILCompiler.Reflection.ReadyToRun.BaseGcSlot[]>
-;  V51 tmp29        [V51,T27] (  4,   32   )     int  ->  rax         "Inline stloc first use temp"
+;  V50 tmp28        [V50,T21] (  3,   96   )     ref  ->  rdi         class-hnd "Inline stloc first use temp" <ILCompiler.Reflection.ReadyToRun.BaseGcSlot[]>
+;  V51 tmp29        [V51,T14] (  4,  128   )     int  ->  rax         "Inline stloc first use temp"
 ;* V52 tmp30        [V52    ] (  0,    0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
 ;* V53 tmp31        [V53    ] (  0,    0   )     ref  ->  zero-ref    class-hnd "Inline stloc first use temp" <System.Collections.Generic.List`1[ILCompiler.Reflection.ReadyToRun.Amd64.GcSlotTable+GcSlot]>
-;  V54 tmp32        [V54,T49] (  3,    6   )     ref  ->  rdi         class-hnd "Inline stloc first use temp" <System.Collections.Generic.List`1[ILCompiler.Reflection.ReadyToRun.BaseGcSlot][]>
-;  V55 tmp33        [V55,T41] (  4,    8   )     int  ->  rsi         "Inline stloc first use temp"
-;  V56 tmp34        [V56,T03] (  6, 5192   )     ref  ->  registers   "field V17._list (fldOffset=0x0)" P-INDEP
-;  V57 tmp35        [V57,T02] (  8, 5200   )     ref  ->  registers   "field V17._current (fldOffset=0x8)" P-INDEP
-;  V58 tmp36        [V58,T00] ( 12,12872   )     int  ->  registers   "field V17._index (fldOffset=0x10)" P-INDEP
-;* V59 tmp37        [V59,T18] (  0,    0   )     int  ->  zero-ref    "field V17._version (fldOffset=0x14)" P-INDEP
+;  V54 tmp32        [V54,T35] (  3,   34   )     ref  ->  rdi         class-hnd "Inline stloc first use temp" <System.Collections.Generic.List`1[ILCompiler.Reflection.ReadyToRun.BaseGcSlot][]>
+;  V55 tmp33        [V55,T34] (  4,   36   )     int  ->  rsi         "Inline stloc first use temp"
+;  V56 tmp34        [V56,T04] (  6, 8288   )     ref  ->  registers   "field V17._list (fldOffset=0x0)" P-INDEP
+;  V57 tmp35        [V57,T03] (  8, 8320   )     ref  ->  registers   "field V17._current (fldOffset=0x8)" P-INDEP
+;  V58 tmp36        [V58,T00] ( 12,20576   )     int  ->  registers   "field V17._index (fldOffset=0x10)" P-INDEP
+;* V59 tmp37        [V59,T23] (  0,    0   )     int  ->  zero-ref    "field V17._version (fldOffset=0x14)" P-INDEP
 ;  V60 tmp38        [V60,T11] (  3,  192   )     ref  ->  rsi         "field V40._list (fldOffset=0x0)" P-INDEP
 ;* V61 tmp39        [V61    ] (  0,    0   )     ref  ->  zero-ref    "field V40._current (fldOffset=0x8)" P-INDEP
-;* V62 tmp40        [V62,T20] (  0,    0   )     int  ->  zero-ref    "field V40._index (fldOffset=0x10)" P-INDEP
-;* V63 tmp41        [V63,T13] (  0,    0   )     int  ->  zero-ref    "field V40._version (fldOffset=0x14)" P-INDEP
-;  V64 tmp42        [V64,T34] (  3,   24   )     ref  ->  rax         "field V49._list (fldOffset=0x0)" P-INDEP
+;* V62 tmp40        [V62,T30] (  0,    0   )     int  ->  zero-ref    "field V40._index (fldOffset=0x10)" P-INDEP
+;* V63 tmp41        [V63,T16] (  0,    0   )     int  ->  zero-ref    "field V40._version (fldOffset=0x14)" P-INDEP
+;  V64 tmp42        [V64,T22] (  3,   96   )     ref  ->  rax         "field V49._list (fldOffset=0x0)" P-INDEP
 ;* V65 tmp43        [V65    ] (  0,    0   )     ref  ->  zero-ref    "field V49._current (fldOffset=0x8)" P-INDEP
-;* V66 tmp44        [V66,T44] (  0,    0   )     int  ->  zero-ref    "field V49._index (fldOffset=0x10)" P-INDEP
-;* V67 tmp45        [V67,T37] (  0,    0   )     int  ->  zero-ref    "field V49._version (fldOffset=0x14)" P-INDEP
-;  V68 tmp46        [V68,T05] (  3, 3072   )     ref  ->  rcx         "arr expr"
-;  V69 tmp47        [V69,T01] (  3,12288   )     ref  ->  r11         "arr expr"
-;* V70 cse0         [V70,T14] (  0,    0   )     int  ->  zero-ref    "CSE #05: moderate"
-;* V71 cse1         [V71,T38] (  0,    0   )     int  ->  zero-ref    "CSE #09: moderate"
-;  V72 cse2         [V72,T15] (  5,  112   )     int  ->  [rbp-0x54]  multi-def "CSE #07: moderate"
+;* V66 tmp44        [V66,T39] (  0,    0   )     int  ->  zero-ref    "field V49._index (fldOffset=0x10)" P-INDEP
+;* V67 tmp45        [V67,T28] (  0,    0   )     int  ->  zero-ref    "field V49._version (fldOffset=0x14)" P-INDEP
+;  V68 tmp46        [V68,T01] (  3,12288   )     ref  ->  rcx         "arr expr"
+;  V69 tmp47        [V69,T02] (  3,12288   )     ref  ->  r11         "arr expr"
+;* V70 cse0         [V70,T17] (  0,    0   )     int  ->  zero-ref    "CSE #05: moderate"
+;* V71 cse1         [V71,T29] (  0,    0   )     int  ->  zero-ref    "CSE #09: moderate"
+;  V72 cse2         [V72,T19] (  5,  112   )     int  ->  [rbp-0x50]  multi-def "CSE #07: moderate"
 ;
-; Lcl frame size = 72
+; Lcl frame size = 56
 
 G_M54607_IG01:
        push     rbp
        push     r15
        push     r14
        push     r13
        push     r12
        push     rbx
-       sub      rsp, 72
-       lea      rbp, [rsp+0x70]
+       sub      rsp, 56
+       lea      rbp, [rsp+0x60]
        mov      rbx, rdi
        mov      r14, rsi
        mov      r15, rdx
 						;; size=28 bbWeight=1 PerfScore 7.50
 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      ; global ptr
        test     byte  ptr [rdi], 1
-       je       G_M54607_IG49
+       je       G_M54607_IG48
 						;; size=37 bbWeight=1 PerfScore 5.75
 G_M54607_IG03:
        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      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_IG06
-						;; size=47 bbWeight=1 PerfScore 14.00
+						;; size=36 bbWeight=1 PerfScore 11.75
 G_M54607_IG04:
        xor      rax, rax
 						;; size=2 bbWeight=0.50 PerfScore 0.12
 G_M54607_IG05:
-       add      rsp, 72
+       add      rsp, 56
        pop      rbx
        pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
 						;; size=15 bbWeight=0.50 PerfScore 2.12
 G_M54607_IG06:
        xor      eax, eax
-       mov      dword ptr [rbp-0x30], eax
+       mov      dword ptr [rbp-0x2C], 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_IG07
        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
+       mov      dword ptr [rbp-0x2C], eax
 						;; size=62 bbWeight=0.50 PerfScore 7.75
 G_M54607_IG07:
        mov      ecx, dword ptr [r15]
-       mov      dword ptr [rbp-0x34], ecx
+       mov      dword ptr [rbp-0x30], ecx
        xor      edx, edx
-       mov      dword ptr [rbp-0x38], edx
+       mov      dword ptr [rbp-0x34], edx
        cmp      dword ptr [rbx+0x74], 0
-       je       G_M54607_IG47
+       je       G_M54607_IG45
 						;; size=21 bbWeight=0.50 PerfScore 4.12
 G_M54607_IG08:
        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-0x60], rax
        mov      rdi, 0xD1FFAB1E      ; global ptr
        test     byte  ptr [rdi], 1
-       je       G_M54607_IG50
+       je       G_M54607_IG49
 						;; size=41 bbWeight=4 PerfScore 30.00
 G_M54607_IG09:
        mov      rdi, 0xD1FFAB1E      ; data for System.Collections.Generic.List`1[ILCompiler.Reflection.ReadyToRun.BaseGcSlot]:s_emptyArray
        mov      rsi, gword ptr [rdi]
        lea      rdi, bword ptr [rax+0x08]
        call     CORINFO_HELP_ASSIGN_REF
-       mov      rax, gword ptr [rbp-0x70]
-       mov      gword ptr [rbp-0x68], rax
-       mov      ecx, dword ptr [rbp-0x30]
+       mov      rax, gword ptr [rbp-0x60]
+       mov      gword ptr [rbp-0x58], rax
+       mov      ecx, dword ptr [rbp-0x2C]
        test     ecx, ecx
-       je       G_M54607_IG11
+       je       G_M54607_IG12
 						;; size=41 bbWeight=4 PerfScore 32.00
 G_M54607_IG10:
-       mov      r8d, dword ptr [rbp-0x38]
+       mov      r8d, dword ptr [rbp-0x34]
        mov      edi, ecx
        imul     edi, r8d
        add      dword ptr [r15], edi
        mov      rdi, r14
-       mov      dword ptr [rbp-0x30], ecx
+       mov      dword ptr [rbp-0x2C], 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      ecx, dword ptr [rbp-0x2C]
        mov      edi, ecx
        imul     edi, dword ptr [rbx+0x74]
-       mov      r8d, dword ptr [rbp-0x34]
+       mov      r8d, dword ptr [rbp-0x30]
        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       SHORT G_M54607_IG12
+       je       SHORT G_M54607_IG11
        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
+       mov      dword ptr [rbp-0x3C], 1
+       mov      dword ptr [rbp-0x38], eax
        test     eax, eax
-       jne      G_M54607_IG22
+       jne      G_M54607_IG24
        mov      rdi, gword ptr [rbx+0x28]
        mov      esi, dword ptr [rdi+0x70]
-       jmp      G_M54607_IG23
-       align    [0 bytes for IG15]
+       jmp      G_M54607_IG25
 						;; size=151 bbWeight=2 PerfScore 82.00
 G_M54607_IG11:
-       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
+       mov      ecx, dword ptr [rbp-0x2C]
+       jmp      SHORT G_M54607_IG13
+       align    [4 bytes for IG16]
+						;; size=9 bbWeight=1 PerfScore 3.00
 G_M54607_IG12:
-       xor      r9d, r9d
-       mov      dword ptr [rbp-0x50], r9d
-						;; size=7 bbWeight=1 PerfScore 1.25
+       mov      edi, r12d
+       imul     edi, dword ptr [rbp-0x34]
+       add      dword ptr [r15], edi
+						;; size=10 bbWeight=8 PerfScore 58.00
 G_M54607_IG13:
+       xor      r9d, r9d
+       mov      dword ptr [rbp-0x4C], r9d
+       mov      dword ptr [rbp-0x2C], ecx
+						;; size=10 bbWeight=4 PerfScore 9.00
+G_M54607_IG14:
        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_IG20
-						;; size=32 bbWeight=16 PerfScore 84.00
-G_M54607_IG14:
+       je       G_M54607_IG21
+						;; size=32 bbWeight=64 PerfScore 336.00
+G_M54607_IG15:
        xor      edi, edi
        mov      rsi, gword ptr [rbx+0x40]
        mov      rax, gword ptr [rsi+0x08]
        mov      esi, dword ptr [rax+0x14]
        xor      esi, esi
-       jmp      SHORT G_M54607_IG16
-						;; size=17 bbWeight=8 PerfScore 68.00
-G_M54607_IG15:
-       inc      edi
-						;; size=2 bbWeight=256 PerfScore 64.00
+       jmp      SHORT G_M54607_IG17
+						;; size=17 bbWeight=32 PerfScore 272.00
 G_M54607_IG16:
+       inc      edi
+						;; size=2 bbWeight=1024 PerfScore 256.00
+G_M54607_IG17:
        cmp      esi, dword ptr [rax+0x10]
-       jae      SHORT G_M54607_IG20
+       jae      SHORT G_M54607_IG21
        mov      rcx, gword ptr [rax+0x08]
        cmp      esi, dword ptr [rcx+0x08]
-       jae      G_M54607_IG51
+       jae      G_M54607_IG50
        mov      edx, esi
        mov      rdx, gword ptr [rcx+8*rdx+0x10]
        inc      esi
        cmp      dword ptr [rdx+0x18], 4
-       je       SHORT G_M54607_IG16
-						;; size=33 bbWeight=512 PerfScore 8448.00
-G_M54607_IG17:
-       mov      r8d, dword ptr [rbp-0x50]
+       je       SHORT G_M54607_IG17
+						;; size=33 bbWeight=2048 PerfScore 33792.00
+G_M54607_IG18:
+       mov      r8d, dword ptr [rbp-0x4C]
        movsxd   r9, edi
        cmp      r8, r9
-       jne      SHORT G_M54607_IG15
-						;; size=12 bbWeight=256 PerfScore 640.00
-G_M54607_IG18:
-       mov      r8, gword ptr [rbp-0x68]
+       jne      SHORT G_M54607_IG16
+						;; size=12 bbWeight=1024 PerfScore 2560.00
+G_M54607_IG19:
+       mov      r8, gword ptr [rbp-0x58]
        inc      dword ptr [r8+0x14]
        mov      rdi, gword ptr [r8+0x08]
        mov      eax, dword ptr [r8+0x10]
        cmp      dword ptr [rdi+0x08], eax
-       ja       SHORT G_M54607_IG19
+       ja       SHORT G_M54607_IG20
        mov      rdi, r8
        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
-       jmp      SHORT G_M54607_IG20
-						;; size=41 bbWeight=8 PerfScore 142.00
-G_M54607_IG19:
+       jmp      SHORT G_M54607_IG21
+						;; size=41 bbWeight=32 PerfScore 568.00
+G_M54607_IG20:
        lea      esi, [rax+0x01]
        mov      dword ptr [r8+0x10], esi
        movsxd   rsi, eax
        mov      rax, 0xD1FFAB1E      ; code for CORINFO_HELP_ARRADDR_ST
        call     [rax]CORINFO_HELP_ARRADDR_ST
-						;; size=22 bbWeight=8 PerfScore 40.00
-G_M54607_IG20:
-       mov      ecx, dword ptr [rbp-0x50]
+						;; size=22 bbWeight=32 PerfScore 160.00
+G_M54607_IG21:
+       mov      ecx, dword ptr [rbp-0x4C]
        inc      ecx
        cmp      ecx, r12d
-       mov      dword ptr [rbp-0x50], ecx
-       jb       G_M54607_IG13
-						;; size=17 bbWeight=16 PerfScore 56.00
-G_M54607_IG21:
-       mov      rax, gword ptr [rbp-0x68]
+       mov      dword ptr [rbp-0x4C], ecx
+       jb       G_M54607_IG14
+						;; size=17 bbWeight=64 PerfScore 224.00
+G_M54607_IG22:
+       mov      rax, gword ptr [rbp-0x58]
+       mov      ecx, dword ptr [rbp-0x2C]
        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_IG44
+       mov      dword ptr [rbp-0x2C], ecx
+       jbe      G_M54607_IG43
+						;; size=31 bbWeight=16 PerfScore 224.00
+G_M54607_IG23:
        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
-       mov      r13, gword ptr [rbp-0x60]
-       jmp      G_M54607_IG46
-						;; size=59 bbWeight=2 PerfScore 40.50
-G_M54607_IG22:
+       jmp      G_M54607_IG44
+       align    [0 bytes for IG33]
+						;; size=30 bbWeight=2 PerfScore 14.50
+G_M54607_IG24:
        mov      rdi, gword ptr [rbx+0x28]
        mov      esi, dword ptr [rdi+0x74]
 						;; size=7 bbWeight=2 PerfScore 8.00
-G_M54607_IG23:
+G_M54607_IG25:
        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
+       cmp      dword ptr [rbp-0x38], 0
        sete     dil
        movzx    rdi, dil
        mov      ecx, edi
-       mov      dword ptr [rbp-0x44], eax
+       mov      dword ptr [rbp-0x40], eax
        cmp      eax, r12d
-       jae      SHORT G_M54607_IG25
-						;; size=41 bbWeight=2 PerfScore 19.00
-G_M54607_IG24:
-       mov      dword ptr [rbp-0x3C], ecx
-       test     ecx, ecx
-       jne      SHORT G_M54607_IG26
-       jmp      SHORT G_M54607_IG27
-						;; size=9 bbWeight=16 PerfScore 68.00
-G_M54607_IG25:
-       mov      r12d, dword ptr [rbp-0x2C]
-       jmp      G_M54607_IG41
-       align    [2 bytes for IG32]
-						;; size=11 bbWeight=1 PerfScore 3.00
+       jae      G_M54607_IG40
+						;; size=45 bbWeight=2 PerfScore 19.00
 G_M54607_IG26:
+       mov      dword ptr [rbp-0x38], ecx
+       test     ecx, ecx
+       je       SHORT G_M54607_IG28
+						;; size=7 bbWeight=16 PerfScore 36.00
+G_M54607_IG27:
        mov      rdi, gword ptr [rbx+0x28]
        mov      esi, dword ptr [rdi+0x74]
-       jmp      SHORT G_M54607_IG28
+       jmp      SHORT G_M54607_IG29
 						;; size=9 bbWeight=8 PerfScore 48.00
-G_M54607_IG27:
+G_M54607_IG28:
        mov      rsi, gword ptr [rbx+0x28]
        mov      esi, dword ptr [rsi+0x70]
 						;; size=7 bbWeight=8 PerfScore 32.00
-G_M54607_IG28:
+G_M54607_IG29:
        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_IG31
+       mov      dword ptr [rbp-0x44], eax
+       cmp      dword ptr [rbp-0x3C], 0
+       je       SHORT G_M54607_IG32
 						;; size=30 bbWeight=16 PerfScore 128.00
-G_M54607_IG29:
-       mov      edx, dword ptr [rbp-0x44]
+G_M54607_IG30:
+       mov      edx, dword ptr [rbp-0x40]
        mov      r8d, edx
        lea      r9d, [r8+rax]
-       mov      dword ptr [rbp-0x54], r9d
-       mov      dword ptr [rbp-0x44], edx
+       mov      dword ptr [rbp-0x50], r9d
+       mov      dword ptr [rbp-0x40], edx
        cmp      r9d, edx
-       jbe      G_M54607_IG40
+       jbe      G_M54607_IG39
 						;; size=26 bbWeight=8 PerfScore 40.00
-G_M54607_IG30:
+G_M54607_IG31:
        xor      edi, edi
        mov      rsi, gword ptr [rbx+0x40]
        mov      rsi, gword ptr [rsi+0x08]
        mov      r10d, dword ptr [rsi+0x14]
        xor      r10d, r10d
-       jmp      SHORT G_M54607_IG33
+       jmp      SHORT G_M54607_IG34
 						;; size=19 bbWeight=64 PerfScore 544.00
-G_M54607_IG31:
-       jmp      G_M54607_IG40
-						;; size=5 bbWeight=8 PerfScore 16.00
 G_M54607_IG32:
-       inc      edi
-       mov      r8d, dword ptr [rbp-0x4C]
-       mov      r13, gword ptr [rbp-0x60]
-						;; size=10 bbWeight=1024 PerfScore 2304.00
+       jmp      G_M54607_IG39
+						;; size=5 bbWeight=8 PerfScore 16.00
 G_M54607_IG33:
+       inc      edi
+       mov      r8d, dword ptr [rbp-0x48]
+						;; size=6 bbWeight=1024 PerfScore 1280.00
+G_M54607_IG34:
        cmp      r10d, dword ptr [rsi+0x10]
-       jae      G_M54607_IG39
+       jae      SHORT G_M54607_IG38
        mov      r11, gword ptr [rsi+0x08]
        cmp      r10d, dword ptr [r11+0x08]
-       jae      G_M54607_IG51
-       mov      r13d, r10d
-       mov      r11, gword ptr [r11+8*r13+0x10]
+       jae      G_M54607_IG50
+       mov      eax, r10d
+       mov      rax, gword ptr [r11+8*rax+0x10]
        inc      r10d
-       cmp      dword ptr [r11+0x18], 4
-       je       SHORT G_M54607_IG36
-						;; size=42 bbWeight=2048 PerfScore 33792.00
-G_M54607_IG34:
-       mov      dword ptr [rbp-0x4C], r8d
-       mov      r13d, r8d
-       movsxd   r12, edi
-       cmp      r13, r12
-       jne      SHORT G_M54607_IG32
-						;; size=15 bbWeight=1024 PerfScore 2816.00
+       cmp      dword ptr [rax+0x18], 4
+       je       SHORT G_M54607_IG34
+						;; size=37 bbWeight=2048 PerfScore 33792.00
 G_M54607_IG35:
-       mov      r13, gword ptr [rbp-0x68]
-       inc      dword ptr [r13+0x14]
-       mov      rdi, gword ptr [r13+0x08]
-       mov      r12d, dword ptr [r13+0x10]
-       cmp      dword ptr [rdi+0x08], r12d
-       jbe      SHORT G_M54607_IG37
-       jmp      SHORT G_M54607_IG38
-						;; size=24 bbWeight=32 PerfScore 448.00
+       mov      r11, rax
+       mov      dword ptr [rbp-0x48], r8d
+       mov      eax, r8d
+       movsxd   rcx, edi
+       cmp      rax, rcx
+       jne      SHORT G_M54607_IG33
+						;; size=18 bbWeight=1024 PerfScore 3072.00
 G_M54607_IG36:
-       mov      r13, gword ptr [rbp-0x60]
-       jmp      SHORT G_M54607_IG33
-						;; size=6 bbWeight=1024 PerfScore 3072.00
-G_M54607_IG37:
-       mov      rdi, r13
+       mov      rax, gword ptr [rbp-0x58]
+       inc      dword ptr [rax+0x14]
+       mov      rdi, gword ptr [rax+0x08]
+       mov      ecx, dword ptr [rax+0x10]
+       cmp      dword ptr [rdi+0x08], ecx
+       ja       SHORT G_M54607_IG37
+       mov      rdi, rax
        mov      rsi, r11
-       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
-       mov      r8d, dword ptr [rbp-0x4C]
-       mov      r13, gword ptr [rbp-0x60]
-       jmp      SHORT G_M54607_IG39
-						;; size=29 bbWeight=32 PerfScore 248.00
-G_M54607_IG38:
-       lea      esi, [r12+0x01]
-       mov      dword ptr [r13+0x10], esi
-       movsxd   rsi, r12d
+       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      r8d, dword ptr [rbp-0x48]
+       jmp      SHORT G_M54607_IG38
+						;; size=43 bbWeight=32 PerfScore 600.00
+G_M54607_IG37:
+       lea      esi, [rcx+0x01]
+       mov      dword ptr [rax+0x10], esi
+       movsxd   rsi, ecx
        mov      rdx, r11
-       mov      r10, 0xD1FFAB1E      ; code for CORINFO_HELP_ARRADDR_ST
-       call     [r10]CORINFO_HELP_ARRADDR_ST
-       mov      r8d, dword ptr [rbp-0x4C]
-       mov      r13, gword ptr [rbp-0x60]
-						;; size=36 bbWeight=32 PerfScore 232.00
-G_M54607_IG39:
+       mov      rcx, 0xD1FFAB1E      ; code for CORINFO_HELP_ARRADDR_ST
+       call     [rcx]CORINFO_HELP_ARRADDR_ST
+       mov      r8d, dword ptr [rbp-0x48]
+						;; size=28 bbWeight=32 PerfScore 200.00
+G_M54607_IG38:
        inc      r8d
-       mov      r9d, dword ptr [rbp-0x54]
+       mov      r9d, dword ptr [rbp-0x50]
        cmp      r9d, r8d
-       mov      dword ptr [rbp-0x54], r9d
-       ja       G_M54607_IG30
+       mov      dword ptr [rbp-0x50], r9d
+       ja       G_M54607_IG31
 						;; size=20 bbWeight=64 PerfScore 224.00
-G_M54607_IG40:
-       mov      edx, dword ptr [rbp-0x44]
+G_M54607_IG39:
+       mov      edx, dword ptr [rbp-0x40]
        mov      r9d, edx
-       add      r9d, dword ptr [rbp-0x48]
+       add      r9d, dword ptr [rbp-0x44]
        mov      edx, r9d
-       cmp      dword ptr [rbp-0x3C], 0
+       cmp      dword ptr [rbp-0x38], 0
        sete     dil
        movzx    rdi, dil
-       cmp      dword ptr [rbp-0x40], 0
+       cmp      dword ptr [rbp-0x3C], 0
        sete     cl
        movzx    rcx, cl
-       mov      r12d, dword ptr [rbp-0x2C]
        cmp      edx, r12d
-       mov      dword ptr [rbp-0x44], edx
-       mov      dword ptr [rbp-0x40], ecx
-       jb       SHORT G_M54607_IG43
-						;; size=50 bbWeight=16 PerfScore 228.00
-G_M54607_IG41:
+       mov      dword ptr [rbp-0x40], edx
+       mov      dword ptr [rbp-0x3C], ecx
+       jb       SHORT G_M54607_IG42
+						;; size=46 bbWeight=16 PerfScore 212.00
+G_M54607_IG40:
        inc      dword ptr [r13+0x14]
        mov      rdi, gword ptr [r13+0x08]
        mov      eax, dword ptr [r13+0x10]
        cmp      dword ptr [rdi+0x08], eax
-       ja       SHORT G_M54607_IG45
+       ja       SHORT G_M54607_IG47
 						;; size=17 bbWeight=2 PerfScore 22.00
-G_M54607_IG42:
-       mov      rax, gword ptr [rbp-0x68]
-       jmp      SHORT G_M54607_IG44
+G_M54607_IG41:
+       mov      rax, gword ptr [rbp-0x58]
+       jmp      SHORT G_M54607_IG43
 						;; size=6 bbWeight=1 PerfScore 3.00
-G_M54607_IG43:
+G_M54607_IG42:
        mov      ecx, edi
-       jmp      G_M54607_IG24
+       jmp      G_M54607_IG26
 						;; size=7 bbWeight=8 PerfScore 18.00
-G_M54607_IG44:
+G_M54607_IG43:
        mov      rdi, r13
        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
-       jmp      SHORT G_M54607_IG46
-						;; size=20 bbWeight=2 PerfScore 11.50
-G_M54607_IG45:
-       mov      esi, eax
-       mov      rax, gword ptr [rbp-0x68]
-       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
-						;; size=31 bbWeight=2 PerfScore 13.00
-G_M54607_IG46:
-       mov      r8d, dword ptr [rbp-0x38]
+						;; size=18 bbWeight=8 PerfScore 30.00
+G_M54607_IG44:
+       mov      r8d, dword ptr [rbp-0x34]
        inc      r8d
        cmp      r8d, dword ptr [rbx+0x74]
-       mov      dword ptr [rbp-0x38], r8d
-       mov      ecx, dword ptr [rbp-0x34]
+       mov      dword ptr [rbp-0x34], r8d
+       mov      ecx, dword ptr [rbp-0x30]
        jb       G_M54607_IG08
 						;; size=24 bbWeight=4 PerfScore 29.00
-G_M54607_IG47:
+G_M54607_IG45:
        mov      rax, r13
 						;; size=3 bbWeight=0.50 PerfScore 0.12
-G_M54607_IG48:
-       add      rsp, 72
+G_M54607_IG46:
+       add      rsp, 56
        pop      rbx
        pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
 						;; size=15 bbWeight=0.50 PerfScore 2.12
-G_M54607_IG49:
+G_M54607_IG47:
+       mov      esi, eax
+       mov      rax, gword ptr [rbp-0x58]
+       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_IG44
+						;; size=33 bbWeight=2 PerfScore 17.00
+G_M54607_IG48:
        mov      rdi, 0xD1FFAB1E      ; System.Collections.Generic.List`1[System.Collections.Generic.List`1[ILCompiler.Reflection.ReadyToRun.BaseGcSlot]]
        call     CORINFO_HELP_GET_GCSTATIC_BASE
        jmp      G_M54607_IG03
 						;; size=20 bbWeight=0 PerfScore 0.00
-G_M54607_IG50:
+G_M54607_IG49:
        mov      rdi, 0xD1FFAB1E      ; System.Collections.Generic.List`1[ILCompiler.Reflection.ReadyToRun.BaseGcSlot]
        call     CORINFO_HELP_GET_GCSTATIC_BASE
-       mov      rax, gword ptr [rbp-0x70]
+       mov      rax, gword ptr [rbp-0x60]
        jmp      G_M54607_IG09
 						;; size=24 bbWeight=0 PerfScore 0.00
-G_M54607_IG51:
+G_M54607_IG50:
        call     CORINFO_HELP_RNGCHKFAIL
        int3     
 						;; size=6 bbWeight=0 PerfScore 0.00
 
-; Total bytes of code 1269, prolog size 28, PerfScore 54154.38, instruction count 341, allocated bytes for code 1269 (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 1226, prolog size 28, PerfScore 79031.88, instruction count 332, allocated bytes for code 1226 (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)
 ; ============================================================
-43 (-6.20 % of base) - System.Enum:ToUInt64(System.Object):ulong
 ; Assembly listing for method System.Enum:ToUInt64(System.Object):ulong (FullOpts)
 ; Emitting BLENDED_CODE for X64 with AVX - Unix
 ; FullOpts code
 ; optimized code
 ; rbp based frame
 ; partially interruptible
 ; No PGO data
 ; Final local variable assignments
 ;
 ;  V00 arg0         [V00,T00] ( 34, 16.75)     ref  ->  rbx         class-hnd single-def <System.Object>
 ;* V01 loc0         [V01    ] (  0,  0   )     int  ->  zero-ref   
 ;  V02 loc1         [V02,T03] (  8,  4   )     ref  ->  r15         class-hnd <System.Type>
 ;# V03 OutArgs      [V03    ] (  1,  1   )  struct ( 0) [rsp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
 ;  V04 tmp1         [V04,T01] (  8,  9   )    long  ->  rax         "Single return block return value"
-;  V05 rat0         [V05,T02] (  3,  5.80)     int  ->  rax         "ReplaceWithLclVar is creating a new local variable"
+;  V05 cse0         [V05,T04] (  3,  1.50)    long  ->  rdi         "CSE #10: moderate"
+;  V06 cse1         [V06,T05] (  3,  1.50)    long  ->  rdi         "CSE #11: moderate"
+;  V07 cse2         [V07,T06] (  3,  1.50)    long  ->  rdi         "CSE #13: moderate"
+;  V08 cse3         [V08,T07] (  3,  1.50)    long  ->  rdi         "CSE #14: moderate"
+;  V09 rat0         [V09,T02] (  3,  5.80)     int  ->  rax         "ReplaceWithLclVar is creating a new local variable"
 ;
 ; Lcl frame size = 0
 
 G_M38557_IG01:
        push     rbp
        push     r15
        push     rbx
        lea      rbp, [rsp+0x10]
        mov      rbx, rdi
 						;; size=12 bbWeight=1 PerfScore 3.75
 G_M38557_IG02:
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.Convert:GetTypeCode(System.Object):int
        call     [rax]System.Convert:GetTypeCode(System.Object):int
        add      eax, -4
        cmp      eax, 8
        ja       SHORT G_M38557_IG04
 						;; size=23 bbWeight=1 PerfScore 5.00
 G_M38557_IG03:
        mov      esi, eax
        lea      rdi, [reloc @RWD00]
        mov      edi, dword ptr [rdi+4*rsi]
        lea      rax, G_M38557_IG02
        add      rdi, rax
        jmp      rdi
 						;; size=24 bbWeight=0.90 PerfScore 5.40
 G_M38557_IG04:
        test     rbx, rbx
        je       G_M38557_IG31
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.Object:GetType():System.Type:this
        call     [rax]System.Object:GetType():System.Type:this
        mov      r15, rax
        mov      rdi, r15
        mov      rax, qword ptr [r15]
        mov      rax, qword ptr [rax+0x70]
        call     [rax+0x30]System.Type:get_IsEnum():ubyte:this
        test     eax, eax
        je       SHORT G_M38557_IG05
        mov      rdi, r15
        mov      rax, qword ptr [r15]
        mov      rax, qword ptr [rax+0xA0]
        call     [rax+0x18]System.Type:GetEnumUnderlyingType():System.Type:this
        mov      r15, rax
 						;; size=63 bbWeight=0.50 PerfScore 10.50
 G_M38557_IG05:
        mov      rsi, 0xD1FFAB1E      ; 'System.IntPtr'
        cmp      r15, rsi
        je       SHORT G_M38557_IG07
        mov      rsi, 0xD1FFAB1E      ; 'System.UIntPtr'
        cmp      r15, rsi
        jne      G_M38557_IG31
-       mov      rsi, 0xD1FFAB1E      ; System.UIntPtr
-       cmp      qword ptr [rbx], rsi
+       mov      rdi, 0xD1FFAB1E      ; System.UIntPtr
+       cmp      qword ptr [rbx], rdi
        je       SHORT G_M38557_IG06
        mov      rsi, rbx
-       mov      rdi, 0xD1FFAB1E      ; System.UIntPtr
        mov      rax, 0xD1FFAB1E      ; code for CORINFO_HELP_UNBOX
        call     [rax]CORINFO_HELP_UNBOX
-						;; size=74 bbWeight=0.50 PerfScore 5.50
+						;; size=64 bbWeight=0.50 PerfScore 5.38
 G_M38557_IG06:
        mov      rax, qword ptr [rbx+0x08]
        jmp      G_M38557_IG30
 						;; size=9 bbWeight=0.50 PerfScore 2.00
 G_M38557_IG07:
-       mov      rsi, 0xD1FFAB1E      ; System.IntPtr
-       cmp      qword ptr [rbx], rsi
-       je       SHORT G_M38557_IG06
-       mov      rsi, rbx
        mov      rdi, 0xD1FFAB1E      ; System.IntPtr
-       mov      rax, 0xD1FFAB1E      ; code for CORINFO_HELP_UNBOX
-       call     [rax]CORINFO_HELP_UNBOX
-       jmp      SHORT G_M38557_IG06
-						;; size=42 bbWeight=0.50 PerfScore 5.00
-G_M38557_IG08:
-       mov      rsi, 0xD1FFAB1E      ; System.UInt64
-       cmp      qword ptr [rbx], rsi
+       cmp      qword ptr [rbx], rdi
        je       SHORT G_M38557_IG06
        mov      rsi, rbx
-       mov      rdi, 0xD1FFAB1E      ; System.UInt64
        mov      rax, 0xD1FFAB1E      ; code for CORINFO_HELP_UNBOX
        call     [rax]CORINFO_HELP_UNBOX
        jmp      SHORT G_M38557_IG06
-						;; size=42 bbWeight=0.50 PerfScore 5.00
+						;; size=32 bbWeight=0.50 PerfScore 4.88
+G_M38557_IG08:
+       mov      rdi, 0xD1FFAB1E      ; System.UInt64
+       cmp      qword ptr [rbx], rdi
+       je       SHORT G_M38557_IG06
+       mov      rsi, rbx
+       mov      rax, 0xD1FFAB1E      ; code for CORINFO_HELP_UNBOX
+       call     [rax]CORINFO_HELP_UNBOX
+       jmp      SHORT G_M38557_IG06
+						;; size=32 bbWeight=0.50 PerfScore 4.88
 G_M38557_IG09:
        mov      rsi, 0xD1FFAB1E      ; System.Int64
        cmp      qword ptr [rbx], rsi
        je       SHORT G_M38557_IG06
 						;; size=15 bbWeight=0.50 PerfScore 2.12
 G_M38557_IG10:
        mov      rsi, rbx
        mov      rdi, 0xD1FFAB1E      ; System.Int64
        mov      rax, 0xD1FFAB1E      ; code for CORINFO_HELP_UNBOX
        call     [rax]CORINFO_HELP_UNBOX
-       jmp      G_M38557_IG06
-						;; size=30 bbWeight=0.25 PerfScore 1.44
+       jmp      SHORT G_M38557_IG06
+						;; size=27 bbWeight=0.25 PerfScore 1.44
 G_M38557_IG11:
        mov      rsi, 0xD1FFAB1E      ; System.UInt32
        cmp      qword ptr [rbx], rsi
        je       SHORT G_M38557_IG13
 						;; size=15 bbWeight=0.50 PerfScore 2.12
 G_M38557_IG12:
        mov      rsi, rbx
        mov      rdi, 0xD1FFAB1E      ; System.UInt32
        mov      rax, 0xD1FFAB1E      ; code for CORINFO_HELP_UNBOX
        call     [rax]CORINFO_HELP_UNBOX
 						;; size=25 bbWeight=0.25 PerfScore 0.94
 G_M38557_IG13:
        mov      eax, dword ptr [rbx+0x08]
        jmp      G_M38557_IG30
 						;; size=8 bbWeight=0.50 PerfScore 2.00
 G_M38557_IG14:
        mov      rsi, 0xD1FFAB1E      ; System.Int32
        cmp      qword ptr [rbx], rsi
        je       SHORT G_M38557_IG16
 						;; size=15 bbWeight=0.50 PerfScore 2.12
 G_M38557_IG15:
        mov      rsi, rbx
        mov      rdi, 0xD1FFAB1E      ; System.Int32
        mov      rax, 0xD1FFAB1E      ; code for CORINFO_HELP_UNBOX
        call     [rax]CORINFO_HELP_UNBOX
 						;; size=25 bbWeight=0.25 PerfScore 0.94
 G_M38557_IG16:
        movsxd   rax, dword ptr [rbx+0x08]
        jmp      G_M38557_IG30
 						;; size=9 bbWeight=0.50 PerfScore 3.00
 G_M38557_IG17:
        mov      rsi, 0xD1FFAB1E      ; System.UInt16
        cmp      qword ptr [rbx], rsi
        je       G_M38557_IG29
 						;; size=19 bbWeight=0.50 PerfScore 2.12
 G_M38557_IG18:
        mov      rsi, rbx
        mov      rdi, 0xD1FFAB1E      ; System.UInt16
        mov      rax, 0xD1FFAB1E      ; code for CORINFO_HELP_UNBOX
        call     [rax]CORINFO_HELP_UNBOX
        jmp      G_M38557_IG29
 						;; size=30 bbWeight=0.25 PerfScore 1.44
 G_M38557_IG19:
        mov      rsi, 0xD1FFAB1E      ; System.Int16
        cmp      qword ptr [rbx], rsi
        je       SHORT G_M38557_IG21
 						;; size=15 bbWeight=0.50 PerfScore 2.12
 G_M38557_IG20:
        mov      rsi, rbx
        mov      rdi, 0xD1FFAB1E      ; System.Int16
        mov      rax, 0xD1FFAB1E      ; code for CORINFO_HELP_UNBOX
        call     [rax]CORINFO_HELP_UNBOX
 						;; size=25 bbWeight=0.25 PerfScore 0.94
 G_M38557_IG21:
        movsx    rax, word  ptr [rbx+0x08]
        jmp      G_M38557_IG30
 						;; size=10 bbWeight=0.50 PerfScore 3.00
 G_M38557_IG22:
        mov      rsi, 0xD1FFAB1E      ; System.Byte
        cmp      qword ptr [rbx], rsi
        je       SHORT G_M38557_IG24
 						;; size=15 bbWeight=0.50 PerfScore 2.12
 G_M38557_IG23:
        mov      rsi, rbx
        mov      rdi, 0xD1FFAB1E      ; System.Byte
        mov      rax, 0xD1FFAB1E      ; code for CORINFO_HELP_UNBOX
        call     [rax]CORINFO_HELP_UNBOX
 						;; size=25 bbWeight=0.25 PerfScore 0.94
 G_M38557_IG24:
        movzx    rax, byte  ptr [rbx+0x08]
        jmp      SHORT G_M38557_IG30
 						;; size=6 bbWeight=0.50 PerfScore 2.00
 G_M38557_IG25:
        mov      rsi, 0xD1FFAB1E      ; System.SByte
        cmp      qword ptr [rbx], rsi
        je       SHORT G_M38557_IG27
 						;; size=15 bbWeight=0.50 PerfScore 2.12
 G_M38557_IG26:
        mov      rsi, rbx
        mov      rdi, 0xD1FFAB1E      ; System.SByte
        mov      rax, 0xD1FFAB1E      ; code for CORINFO_HELP_UNBOX
        call     [rax]CORINFO_HELP_UNBOX
 						;; size=25 bbWeight=0.25 PerfScore 0.94
 G_M38557_IG27:
        movsx    rax, byte  ptr [rbx+0x08]
        jmp      SHORT G_M38557_IG30
 						;; size=7 bbWeight=0.50 PerfScore 3.00
 G_M38557_IG28:
-       mov      rsi, 0xD1FFAB1E      ; System.Char
-       cmp      qword ptr [rbx], rsi
+       mov      rdi, 0xD1FFAB1E      ; System.Char
+       cmp      qword ptr [rbx], rdi
        je       SHORT G_M38557_IG29
        mov      rsi, rbx
-       mov      rdi, 0xD1FFAB1E      ; System.Char
        mov      rax, 0xD1FFAB1E      ; code for CORINFO_HELP_UNBOX
        call     [rax]CORINFO_HELP_UNBOX
-						;; size=40 bbWeight=0.50 PerfScore 4.00
+						;; size=30 bbWeight=0.50 PerfScore 3.88
 G_M38557_IG29:
        movzx    rax, word  ptr [rbx+0x08]
 						;; size=4 bbWeight=0.50 PerfScore 1.00
 G_M38557_IG30:
        pop      rbx
        pop      r15
        pop      rbp
        ret      
 						;; size=5 bbWeight=1 PerfScore 2.50
 G_M38557_IG31:
        mov      rax, 0xD1FFAB1E      ; code for System.Enum:CreateUnknownEnumTypeException():System.InvalidOperationException
        call     [rax]System.Enum:CreateUnknownEnumTypeException():System.InvalidOperationException
        mov      rdi, rax
        call     CORINFO_HELP_THROW
        int3     
 						;; size=21 bbWeight=0 PerfScore 0.00
 RWD00  	dd	G_M38557_IG28 - G_M38557_IG02
        	dd	G_M38557_IG25 - G_M38557_IG02
        	dd	G_M38557_IG22 - G_M38557_IG02
        	dd	G_M38557_IG19 - G_M38557_IG02
        	dd	G_M38557_IG17 - G_M38557_IG02
        	dd	G_M38557_IG14 - G_M38557_IG02
        	dd	G_M38557_IG11 - G_M38557_IG02
        	dd	G_M38557_IG09 - G_M38557_IG02
        	dd	G_M38557_IG08 - G_M38557_IG02
 
 
-; Total bytes of code 693, prolog size 9, PerfScore 85.09, instruction count 143, allocated bytes for code 693 (MethodHash=6ce96962) for method System.Enum:ToUInt64(System.Object):ulong (FullOpts)
+; Total bytes of code 650, prolog size 9, PerfScore 84.59, instruction count 139, allocated bytes for code 650 (MethodHash=6ce96962) for method System.Enum:ToUInt64(System.Object):ulong (FullOpts)
 ; ============================================================
-33 (-5.34 % of base) - System.IO.Pipelines.Pipe:PrepareFlushUnsynchronized(byref,byref,System.Threading.CancellationToken):this
 ; Assembly listing for method System.IO.Pipelines.Pipe:PrepareFlushUnsynchronized(byref,byref,System.Threading.CancellationToken):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; 13 single block inlinees; 10 inlinees without PGO data
 ; Final local variable assignments
 ;
 ;  V00 this         [V00,T01] ( 11,  8.50)     ref  ->  rbx         this class-hnd single-def <System.IO.Pipelines.Pipe>
 ;  V01 arg1         [V01,T04] (  7,  4.50)   byref  ->  r14         single-def
 ;  V02 arg2         [V02,T03] (  9,  5.50)   byref  ->  r15         single-def
 ;* V03 arg3         [V03    ] (  0,  0   )  struct ( 8) zero-ref    single-def <System.Threading.CancellationToken>
 ;* V04 loc0         [V04    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op <System.IO.Pipelines.FlushResult>
 ;# V05 OutArgs      [V05    ] (  1,  1   )  struct ( 0) [rsp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
 ;  V06 tmp1         [V06,T08] (  2,  4   )     int  ->  r12         "impAppendStmt"
 ;* V07 tmp2         [V07    ] (  0,  0   )     int  ->  zero-ref   
 ;* V08 tmp3         [V08    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.Threading.Tasks.ValueTask`1[System.IO.Pipelines.FlushResult]>
 ;* V09 tmp4         [V09    ] (  0,  0   )     int  ->  zero-ref   
 ;* V10 tmp5         [V10    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.Threading.Tasks.ValueTask`1[System.IO.Pipelines.FlushResult]>
 ;  V11 tmp6         [V11    ] (  6,  7   )  struct ( 8) [rbp-0x30]  do-not-enreg[XS] must-init addr-exposed ld-addr-op "Inlining Arg" <System.Threading.CancellationToken>
 ;  V12 tmp7         [V12,T00] (  8, 11   )   byref  ->  [rbp-0x38]  spill-single-def "Inlining Arg"
 ;  V13 tmp8         [V13,T12] (  2,  3   )     ref  ->  rsi         class-hnd exact single-def "Inlining Arg" <System.Action`1[System.Object]>
 ;* V14 tmp9         [V14    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.Threading.CancellationTokenRegistration>
 ;* V15 tmp10        [V15    ] (  0,  0   )  struct (16) zero-ref    "impAppendStmt" <System.Threading.CancellationTokenRegistration>
 ;* V16 tmp11        [V16    ] (  0,  0   )  struct (16) zero-ref    multireg-ret "Inline return value spill temp" <System.Threading.CancellationTokenRegistration>
 ;  V17 tmp12        [V17,T26] (  2,  1   )     ref  ->  rdi         class-hnd single-def "Inline stloc first use temp" <System.Threading.CancellationTokenSource>
 ;* V18 tmp13        [V18    ] (  0,  0   )     ref  ->  zero-ref   
 ;* V19 tmp14        [V19    ] (  0,  0   )     ref  ->  zero-ref   
 ;* V20 tmp15        [V20    ] (  0,  0   )     ref  ->  zero-ref   
 ;* V21 tmp16        [V21    ] (  0,  0   )     ref  ->  zero-ref   
 ;* V22 tmp17        [V22    ] (  0,  0   )     ref  ->  zero-ref   
 ;* V23 tmp18        [V23    ] (  0,  0   )     ref  ->  zero-ref   
 ;* V24 tmp19        [V24    ] (  0,  0   )     ref  ->  zero-ref   
 ;* V25 tmp20        [V25    ] (  0,  0   )     ref  ->  zero-ref   
 ;* V26 tmp21        [V26    ] (  0,  0   )     ref  ->  zero-ref   
 ;* V27 tmp22        [V27    ] (  0,  0   )     ref  ->  zero-ref   
 ;* V28 tmp23        [V28    ] (  0,  0   )     ref  ->  zero-ref   
 ;* V29 tmp24        [V29    ] (  0,  0   )     ref  ->  zero-ref   
 ;* V30 tmp25        [V30    ] (  0,  0   )     ref  ->  zero-ref   
 ;* V31 tmp26        [V31    ] (  0,  0   )     ref  ->  zero-ref   
 ;* V32 tmp27        [V32    ] (  0,  0   )     ref  ->  zero-ref   
 ;* V33 tmp28        [V33    ] (  0,  0   )     ref  ->  zero-ref   
 ;* V34 tmp29        [V34    ] (  0,  0   )  struct (16) zero-ref    do-not-enreg[SBR] multireg-ret "Return value temp for multireg return" <System.Threading.CancellationTokenRegistration>
 ;* V35 tmp30        [V35    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.Threading.CancellationTokenRegistration>
 ;* V36 tmp31        [V36    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.Threading.CancellationTokenRegistration>
 ;* V37 tmp32        [V37    ] (  0,  0   )  struct (16) zero-ref    "Inlining Arg" <System.Threading.CancellationTokenRegistration>
 ;* V38 tmp33        [V38,T35] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
 ;* V39 tmp34        [V39,T36] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
 ;  V40 tmp35        [V40,T13] (  2,  2   )     ref  ->  rdi         class-hnd single-def "Inlining Arg" <System.Threading.CancellationTokenSource>
 ;  V41 tmp36        [V41,T06] (  2,  4   )   byref  ->  rax         single-def "Inlining Arg"
 ;  V42 tmp37        [V42,T14] (  2,  2   )   byref  ->  rax         single-def "Inlining Arg"
 ;  V43 tmp38        [V43,T16] (  2,  2   )     int  ->  rcx         "impAppendStmt"
 ;* V44 tmp39        [V44    ] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
 ;  V45 tmp40        [V45,T15] (  2,  2   )   byref  ->  rdi         single-def "Inlining Arg"
 ;  V46 tmp41        [V46,T25] (  3,  1   )     ref  ->  rdi         single-def "ISINST eval op1"
 ;* V47 tmp42        [V47    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "spilling qmarkNull" <System.Runtime.ExceptionServices.ExceptionDispatchInfo>
 ;  V48 tmp43        [V48,T42] (  2,  0   )     ref  ->  rdi         class-hnd exact "Inline stloc first use temp" <System.Runtime.ExceptionServices.ExceptionDispatchInfo>
 ;* V49 tmp44        [V49    ] (  0,  0   )  struct ( 8) zero-ref    "Inlining Arg" <System.IO.Pipelines.FlushResult>
 ;  V50 tmp45        [V50,T11] (  3,  3   )     ref  ->  rsi         class-hnd exact single-def "Inlining Arg" <System.IO.Pipelines.Pipe+DefaultPipeWriter>
 ;  V51 tmp46        [V51,T02] (  9,  9   )   byref  ->  rbx         single-def "Inlining Arg"
 ;  V52 tmp47        [V52,T17] (  3,  1.50)     ref  ->  rsi         class-hnd single-def "Inline stloc first use temp" <System.Action`1[System.Object]>
-;  V53 tmp48        [V53,T27] (  2,  1   )     ref  ->  r13         class-hnd single-def "Inline stloc first use temp" <System.Object>
-;  V54 tmp49        [V54,T05] (  4,  4   )     ref  ->  rax         class-hnd exact single-def "dup spill" <System.IO.Pipelines.PipeAwaitable+SchedulingContext>
+;  V53 tmp48        [V53,T27] (  2,  1   )     ref  ->  r15         class-hnd single-def "Inline stloc first use temp" <System.Object>
+;  V54 tmp49        [V54,T05] (  4,  4   )     ref  ->  rdi         class-hnd exact single-def "dup spill" <System.IO.Pipelines.PipeAwaitable+SchedulingContext>
 ;* V55 tmp50        [V55    ] (  0,  0   )     ref  ->  zero-ref    single-def
 ;* V56 tmp51        [V56    ] (  0,  0   )     ref  ->  zero-ref    single-def
 ;* V57 tmp52        [V57    ] (  0,  0   )     ref  ->  zero-ref    single-def
-;  V58 tmp53        [V58,T18] (  3,  1.50)     ref  ->  r12        
+;  V58 tmp53        [V58,T18] (  3,  1.50)     ref  ->  r13        
 ;* V59 tmp54        [V59    ] (  0,  0   )     ref  ->  zero-ref    class-hnd single-def "Inline stloc first use temp" <System.Threading.ExecutionContext>
 ;* V60 tmp55        [V60    ] (  0,  0   )     ref  ->  zero-ref    single-def
-;  V61 tmp56        [V61,T19] (  3,  1.50)     ref  ->  r15        
+;  V61 tmp56        [V61,T19] (  3,  1.50)     ref  ->  r12        
 ;* V62 tmp57        [V62    ] (  0,  0   )     ref  ->  zero-ref    class-hnd single-def "Inline stloc first use temp" <System.Threading.SynchronizationContext>
 ;* V63 tmp58        [V63    ] (  0,  0   )   byref  ->  zero-ref    single-def
 ;* V64 tmp59        [V64    ] (  0,  0   )  struct (32) zero-ref    ld-addr-op "NewObj constructor temp" <System.IO.Pipelines.CompletionData>
 ;* V65 tmp60        [V65    ] (  0,  0   )   byref  ->  zero-ref   
 ;* V66 tmp61        [V66    ] (  0,  0   )  struct (32) zero-ref    do-not-enreg[S] <System.IO.Pipelines.CompletionData>
 ;* V67 tmp62        [V67    ] (  0,  0   )  struct (32) zero-ref    do-not-enreg[S] ld-addr-op "Inline ldloca(s) first use temp" <System.IO.Pipelines.CompletionData>
 ;  V68 tmp63        [V68,T07] (  2,  2   )     ref  ->  r13         single-def "field V03._source (fldOffset=0x0)" P-INDEP
 ;  V69 tmp64        [V69,T09] (  6,  3   )   ubyte  ->  rsi         "field V04._resultFlags (fldOffset=0x0)" P-INDEP
 ;  V70 tmp65        [V70,T28] (  2,  1   )     ref  ->  rsi         single-def "field V08._obj (fldOffset=0x0)" P-INDEP
 ;* V71 tmp66        [V71,T37] (  0,  0   )   short  ->  zero-ref    "field V08._token (fldOffset=0x8)" P-INDEP
 ;* V72 tmp67        [V72,T38] (  0,  0   )   ubyte  ->  zero-ref    "field V08._continueOnCapturedContext (fldOffset=0xa)" P-INDEP
 ;* V73 tmp68        [V73,T39] (  0,  0   )   ubyte  ->  zero-ref    "field V08._result (fldOffset=0xb)" P-INDEP
 ;* V74 tmp69        [V74,T34] (  0,  0   )     ref  ->  zero-ref    single-def "field V10._obj (fldOffset=0x0)" P-INDEP
 ;* V75 tmp70        [V75,T40] (  0,  0   )   short  ->  zero-ref    "field V10._token (fldOffset=0x8)" P-INDEP
 ;* V76 tmp71        [V76,T41] (  0,  0   )   ubyte  ->  zero-ref    "field V10._continueOnCapturedContext (fldOffset=0xa)" P-INDEP
 ;  V77 tmp72        [V77,T31] (  2,  1   )   ubyte  ->  rdi         "field V10._result (fldOffset=0xb)" P-INDEP
 ;  V78 tmp73        [V78    ] (  6,  3.50)     ref  ->  [rbp-0x30]  do-not-enreg[X] addr-exposed "field V11._source (fldOffset=0x0)" P-DEP
 ;* V79 tmp74        [V79    ] (  0,  0   )     ref  ->  zero-ref    single-def "field V14._node (fldOffset=0x0)" P-INDEP
 ;* V80 tmp75        [V80    ] (  0,  0   )    long  ->  zero-ref    "field V14._id (fldOffset=0x8)" P-INDEP
 ;  V81 tmp76        [V81,T29] (  2,  1   )     ref  ->  rsi         single-def "field V15._node (fldOffset=0x0)" P-INDEP
 ;  V82 tmp77        [V82,T32] (  2,  1   )    long  ->  registers   "field V15._id (fldOffset=0x8)" P-INDEP
 ;  V83 tmp78        [V83,T30] (  2,  1   )     ref  ->  rax         single-def "field V16._node (fldOffset=0x0)" P-INDEP
 ;  V84 tmp79        [V84,T33] (  2,  1   )    long  ->  r13         "field V16._id (fldOffset=0x8)" P-INDEP
 ;* V85 tmp80        [V85    ] (  0,  0   )     ref  ->  zero-ref    "field V34._node (fldOffset=0x0)" P-DEP
 ;* V86 tmp81        [V86    ] (  0,  0   )    long  ->  zero-ref    "field V34._id (fldOffset=0x8)" P-DEP
 ;* V87 tmp82        [V87    ] (  0,  0   )     ref  ->  zero-ref    single-def "field V35._node (fldOffset=0x0)" P-INDEP
 ;* V88 tmp83        [V88    ] (  0,  0   )    long  ->  zero-ref    "field V35._id (fldOffset=0x8)" P-INDEP
 ;* V89 tmp84        [V89    ] (  0,  0   )     ref  ->  zero-ref    single-def "field V36._node (fldOffset=0x0)" P-INDEP
 ;* V90 tmp85        [V90    ] (  0,  0   )    long  ->  zero-ref    "field V36._id (fldOffset=0x8)" P-INDEP
 ;* V91 tmp86        [V91    ] (  0,  0   )     ref  ->  zero-ref    single-def "field V37._node (fldOffset=0x0)" P-INDEP
 ;* V92 tmp87        [V92    ] (  0,  0   )    long  ->  zero-ref    "field V37._id (fldOffset=0x8)" P-INDEP
 ;* V93 tmp88        [V93    ] (  0,  0   )   ubyte  ->  zero-ref    "field V49._resultFlags (fldOffset=0x0)" P-INDEP
 ;* V94 tmp89        [V94    ] (  0,  0   )     ref  ->  zero-ref    single-def "field V64.<Completion>k__BackingField (fldOffset=0x0)" P-INDEP
 ;* V95 tmp90        [V95    ] (  0,  0   )     ref  ->  zero-ref    single-def "field V64.<CompletionState>k__BackingField (fldOffset=0x8)" P-INDEP
 ;* V96 tmp91        [V96    ] (  0,  0   )     ref  ->  zero-ref    single-def "field V64.<ExecutionContext>k__BackingField (fldOffset=0x10)" P-INDEP
 ;* V97 tmp92        [V97    ] (  0,  0   )     ref  ->  zero-ref    single-def "field V64.<SynchronizationContext>k__BackingField (fldOffset=0x18)" P-INDEP
 ;  V98 tmp93        [V98,T20] (  3,  1.50)     ref  ->  rsi         "V66.[000..008)"
-;  V99 tmp94        [V99,T21] (  3,  1.50)     ref  ->  r13         "V66.[008..016)"
-;  V100 tmp95       [V100,T22] (  3,  1.50)     ref  ->  r12         "V66.[016..024)"
-;  V101 tmp96       [V101,T23] (  3,  1.50)     ref  ->  r15         "V66.[024..032)"
+;  V99 tmp94        [V99,T21] (  3,  1.50)     ref  ->  r15         "V66.[008..016)"
+;  V100 tmp95       [V100,T22] (  3,  1.50)     ref  ->  r13         "V66.[016..024)"
+;  V101 tmp96       [V101,T23] (  3,  1.50)     ref  ->  r12         "V66.[024..032)"
 ;* V102 tmp97       [V102    ] (  0,  0   )     ref  ->  zero-ref    single-def "V67.[000..008)"
 ;* V103 tmp98       [V103    ] (  0,  0   )     ref  ->  zero-ref    single-def "V67.[008..016)"
 ;* V104 tmp99       [V104    ] (  0,  0   )     ref  ->  zero-ref    single-def "V67.[016..024)"
 ;* V105 tmp100      [V105    ] (  0,  0   )     ref  ->  zero-ref    single-def "V67.[024..032)"
 ;  V106 cse0        [V106,T10] (  4,  3   )     int  ->  rdi         "CSE #02: moderate"
 ;  V107 cse1        [V107,T24] (  3,  1.25)     ref  ->  rdi         "CSE #03: moderate"
 ;
 ; Lcl frame size = 24
 
 G_M5050_IG01:
        push     rbp
        push     r15
        push     r14
        push     r13
        push     r12
        push     rbx
        sub      rsp, 24
        lea      rbp, [rsp+0x40]
        xor      eax, eax
        mov      qword ptr [rbp-0x30], rax
        mov      rbx, rdi
        mov      r14, rsi
        mov      r15, rdx
        mov      r13, rcx
 						;; size=37 bbWeight=1 PerfScore 9.00
 G_M5050_IG02:
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.IO.Pipelines.Pipe:CommitUnsynchronized():ubyte:this
        call     [rax]System.IO.Pipelines.Pipe:CommitUnsynchronized():ubyte:this
        mov      r12d, eax
        cmp      byte  ptr [rbx], bl
        lea      rax, bword ptr [rbx+0xB0]
        mov      bword ptr [rbp-0x38], rax
        mov      gword ptr [rbp-0x30], r13
        mov      rdi, 0xD1FFAB1E      ; const ptr
        mov      rsi, gword ptr [rdi]
        cmp      gword ptr [rbp-0x30], 0
        je       SHORT G_M5050_IG06
 						;; size=55 bbWeight=1 PerfScore 14.50
 G_M5050_IG03:
        test     byte  ptr [rax+0x18], 5
        jne      SHORT G_M5050_IG05
        mov      rdi, gword ptr [rbp-0x30]
        mov      rdx, rbx
        xor      rcx, rcx
        xor      r8, r8
        mov      r9, 0xD1FFAB1E      ; code for System.Threading.CancellationTokenSource:Register(System.Delegate,System.Object,System.Threading.SynchronizationContext,System.Threading.ExecutionContext):System.Threading.CancellationTokenRegistration:this
        call     [r9]System.Threading.CancellationTokenSource:Register(System.Delegate,System.Object,System.Threading.SynchronizationContext,System.Threading.ExecutionContext):System.Threading.CancellationTokenRegistration:this
        mov      r13, rdx
        mov      rcx, bword ptr [rbp-0x38]
        lea      rdi, bword ptr [rcx+0x20]
        mov      rsi, rax
        call     CORINFO_HELP_ASSIGN_REF
        mov      rdi, bword ptr [rbp-0x38]
        mov      qword ptr [rdi+0x28], r13
        mov      rsi, gword ptr [rdi+0x20]
        mov      rax, qword ptr [rdi+0x28]
        test     rsi, rsi
-       je       G_M5050_IG13
-						;; size=75 bbWeight=0.50 PerfScore 9.62
+       je       SHORT G_M5050_IG09
+						;; size=71 bbWeight=0.50 PerfScore 9.62
 G_M5050_IG04:
        mov      rax, rdi
        jmp      SHORT G_M5050_IG06
 						;; size=5 bbWeight=0.25 PerfScore 0.56
 G_M5050_IG05:
        mov      rax, bword ptr [rbp-0x38]
 						;; size=4 bbWeight=0.25 PerfScore 0.25
 G_M5050_IG06:
        or       dword ptr [rax+0x18], 2
        lea      rax, bword ptr [rbx+0xB0]
        mov      edi, dword ptr [rax+0x18]
        test     dil, 5
-       je       G_M5050_IG14
-						;; size=24 bbWeight=1 PerfScore 6.75
+       je       SHORT G_M5050_IG10
+						;; size=20 bbWeight=1 PerfScore 6.75
 G_M5050_IG07:
        xor      esi, esi
        lea      rax, bword ptr [rbx+0xB0]
        test     dil, 4
        setne    cl
        movzx    rcx, cl
        and      edi, -7
        mov      dword ptr [rax+0x18], edi
        mov      edi, 1
        test     ecx, ecx
        cmovne   esi, edi
        lea      rdi, bword ptr [rbx+0xF0]
        mov      rdi, gword ptr [rdi]
        test     rdi, rdi
-       je       SHORT G_M5050_IG10
+       je       SHORT G_M5050_IG12
 						;; size=50 bbWeight=0.50 PerfScore 4.00
 G_M5050_IG08:
        mov      rax, 0xD1FFAB1E      ; System.Runtime.ExceptionServices.ExceptionDispatchInfo
        cmp      qword ptr [rdi], rax
-       je       G_M5050_IG25
-						;; size=19 bbWeight=0.25 PerfScore 1.06
+       jne      SHORT G_M5050_IG11
+       jmp      G_M5050_IG25
+						;; size=20 bbWeight=0.25 PerfScore 1.56
 G_M5050_IG09:
-       movzx    rsi, sil
-       or       esi, 2
-						;; size=7 bbWeight=0.50 PerfScore 0.25
-G_M5050_IG10:
-       movzx    rdi, sil
-       xor      rsi, rsi
-       mov      gword ptr [r15], rsi
-       mov      word  ptr [r15+0x08], 0
-       mov      byte  ptr [r15+0x0A], 1
-       mov      byte  ptr [r15+0x0B], dil
-						;; size=25 bbWeight=0.50 PerfScore 2.25
-G_M5050_IG11:
-       test     r12d, r12d
-       je       G_M5050_IG15
-						;; size=9 bbWeight=1 PerfScore 1.25
-G_M5050_IG12:
-       add      rbx, 128
-       mov      rsi, gword ptr [rbx]
-       mov      r13, gword ptr [rbx+0x08]
-       mov      rax, gword ptr [rbx+0x10]
-       test     rax, rax
-       jne      G_M5050_IG17
-       xor      r12, r12
-       xor      r15, r15
-       jmp      G_M5050_IG18
-						;; size=38 bbWeight=0.50 PerfScore 5.00
-G_M5050_IG13:
        mov      rcx, rax
        mov      rax, rdi
        mov      rdi, rcx
        test     rdi, rdi
-       jne      G_M5050_IG06
+       jne      SHORT G_M5050_IG06
        cmp      gword ptr [rbp-0x30], 0
-       je       G_M5050_IG06
+       je       SHORT G_M5050_IG06
        mov      rdi, gword ptr [rbp-0x30]
        cmp      dword ptr [rdi+0x20], 0
-       je       G_M5050_IG06
+       je       SHORT G_M5050_IG06
        jmp      G_M5050_IG26
-						;; size=48 bbWeight=0.50 PerfScore 6.00
-G_M5050_IG14:
+						;; size=36 bbWeight=0.50 PerfScore 6.00
+G_M5050_IG10:
        mov      rsi, gword ptr [rbx+0x10]
        test     rsi, rsi
        je       G_M5050_IG24
        mov      rdi, r15
        call     CORINFO_HELP_CHECKED_ASSIGN_REF
        mov      word  ptr [r15+0x08], 0
        mov      word  ptr [r15+0x0A], 1
-       jmp      G_M5050_IG11
-						;; size=40 bbWeight=0.50 PerfScore 4.25
-G_M5050_IG15:
+       jmp      SHORT G_M5050_IG13
+						;; size=37 bbWeight=0.50 PerfScore 4.25
+G_M5050_IG11:
+       movzx    rsi, sil
+       or       esi, 2
+						;; size=7 bbWeight=0.50 PerfScore 0.25
+G_M5050_IG12:
+       movzx    rdi, sil
+       xor      rsi, rsi
+       mov      gword ptr [r15], rsi
+       mov      word  ptr [r15+0x08], 0
+       mov      byte  ptr [r15+0x0A], 1
+       mov      byte  ptr [r15+0x0B], dil
+						;; size=25 bbWeight=0.50 PerfScore 2.25
+G_M5050_IG13:
+       test     r12d, r12d
+       jne      SHORT G_M5050_IG16
+						;; size=5 bbWeight=1 PerfScore 1.25
+G_M5050_IG14:
        xor      edi, edi
        mov      qword ptr [r14], rdi
        mov      qword ptr [r14+0x08], rdi
        mov      qword ptr [r14+0x10], rdi
        mov      qword ptr [r14+0x18], rdi
 						;; size=17 bbWeight=0.50 PerfScore 2.12
-G_M5050_IG16:
+G_M5050_IG15:
        add      rsp, 24
        pop      rbx
        pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
 						;; size=15 bbWeight=0.50 PerfScore 2.12
+G_M5050_IG16:
+       add      rbx, 128
+       mov      rsi, gword ptr [rbx]
+       mov      r15, gword ptr [rbx+0x08]
+       mov      rdi, gword ptr [rbx+0x10]
+       test     rdi, rdi
+       je       SHORT G_M5050_IG17
+       mov      r13, gword ptr [rdi+0x10]
+       mov      r12, gword ptr [rdi+0x08]
+       jmp      SHORT G_M5050_IG18
+						;; size=33 bbWeight=0.50 PerfScore 6.75
 G_M5050_IG17:
-       mov      r12, gword ptr [rax+0x10]
-       mov      r15, gword ptr [rax+0x08]
-						;; size=8 bbWeight=0.50 PerfScore 2.00
+       xor      r13, r13
+       xor      r12, r12
+						;; size=6 bbWeight=0.50 PerfScore 0.25
 G_M5050_IG18:
        xor      rdi, rdi
        mov      gword ptr [rbx], rdi
 						;; size=5 bbWeight=0.50 PerfScore 0.62
 G_M5050_IG19:
        mov      gword ptr [rbx+0x08], rdi
 						;; size=4 bbWeight=0.50 PerfScore 0.50
 G_M5050_IG20:
        mov      gword ptr [rbx+0x10], rdi
        test     rsi, rsi
        je       SHORT G_M5050_IG21
        jmp      SHORT G_M5050_IG22
 						;; size=11 bbWeight=0.50 PerfScore 2.12
 G_M5050_IG21:
        xor      rsi, rsi
+       xor      r15, r15
        xor      r13, r13
        xor      r12, r12
-       xor      r15, r15
 						;; size=11 bbWeight=0.50 PerfScore 0.50
 G_M5050_IG22:
        mov      rdi, r14
        call     CORINFO_HELP_CHECKED_ASSIGN_REF
        lea      rdi, bword ptr [r14+0x08]
-       mov      rsi, r13
+       mov      rsi, r15
        call     CORINFO_HELP_CHECKED_ASSIGN_REF
        lea      rdi, bword ptr [r14+0x10]
-       mov      rsi, r12
+       mov      rsi, r13
        call     CORINFO_HELP_CHECKED_ASSIGN_REF
        lea      rdi, bword ptr [r14+0x18]
-       mov      rsi, r15
+       mov      rsi, r12
        call     CORINFO_HELP_CHECKED_ASSIGN_REF
        or       dword ptr [rbx+0x18], 1
 						;; size=48 bbWeight=0.50 PerfScore 4.75
 G_M5050_IG23:
        add      rsp, 24
        pop      rbx
        pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
 						;; size=15 bbWeight=0.50 PerfScore 2.12
 G_M5050_IG24:
        mov      edi, 39
        mov      rax, 0xD1FFAB1E      ; code for System.ThrowHelper:ThrowArgumentNullException(int)
        call     [rax]System.ThrowHelper:ThrowArgumentNullException(int)
        int3     
 						;; size=18 bbWeight=0 PerfScore 0.00
 G_M5050_IG25:
        mov      rax, 0xD1FFAB1E      ; code for System.Runtime.ExceptionServices.ExceptionDispatchInfo:Throw():this
        call     [rax]System.Runtime.ExceptionServices.ExceptionDispatchInfo:Throw():this
        int3     
 						;; size=13 bbWeight=0 PerfScore 0.00
 G_M5050_IG26:
        lea      rdi, [rbp-0x30]
        mov      rax, 0xD1FFAB1E      ; code for System.Threading.CancellationToken:ThrowOperationCanceledException():this
        call     [rax]System.Threading.CancellationToken:ThrowOperationCanceledException():this
        int3     
 						;; size=17 bbWeight=0 PerfScore 0.00
 
-; Total bytes of code 618, prolog size 25, PerfScore 81.62, instruction count 165, allocated bytes for code 618 (MethodHash=f4acec45) for method System.IO.Pipelines.Pipe:PrepareFlushUnsynchronized(byref,byref,System.Threading.CancellationToken):this (FullOpts)
+; Total bytes of code 585, prolog size 25, PerfScore 82.12, instruction count 166, allocated bytes for code 585 (MethodHash=f4acec45) for method System.IO.Pipelines.Pipe:PrepareFlushUnsynchronized(byref,byref,System.Threading.CancellationToken):this (FullOpts)
 ; ============================================================
-28 (-15.73 % of base) - System.Xml.Serialization.SourceInfo:op_Inequality(System.Xml.Serialization.SourceInfo,System.Xml.Serialization.SourceInfo):ubyte
 ; Assembly listing for method System.Xml.Serialization.SourceInfo:op_Inequality(System.Xml.Serialization.SourceInfo,System.Xml.Serialization.SourceInfo):ubyte (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; 4 single block inlinees; 3 inlinees without PGO data
 ; Final local variable assignments
 ;
 ;  V00 arg0         [V00,T01] (  5,  4   )     ref  ->  r15         class-hnd single-def <System.Xml.Serialization.SourceInfo>
 ;  V01 arg1         [V01,T00] (  6,  4   )     ref  ->  rbx         class-hnd single-def <System.Xml.Serialization.SourceInfo>
 ;# V02 OutArgs      [V02    ] (  1,  1   )  struct ( 0) [rsp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-;  V03 tmp1         [V03,T04] (  4,  2   )   ubyte  ->  r14         "Inline return value spill temp"
+;  V03 tmp1         [V03,T07] (  2,  1   )   ubyte  ->  rax         "Inline return value spill temp"
 ;* V04 tmp2         [V04    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact single-def "Inline stloc first use temp" <System.Xml.Serialization.SourceInfo>
 ;* V05 tmp3         [V05    ] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
 ;  V06 tmp4         [V06,T02] (  5,  5   )     ref  ->  rdi         class-hnd exact single-def "Inlining Arg" <System.String>
 ;  V07 tmp5         [V07,T03] (  5,  5   )     ref  ->  rsi         class-hnd exact single-def "Inlining Arg" <System.String>
-;  V08 tmp6         [V08,T05] (  4,  2   )   ubyte  ->  r14         "Inline return value spill temp"
-;  V09 tmp7         [V09,T06] (  2,  2   )   byref  ->  rdi         single-def "impAppendStmt"
-;  V10 cse0         [V10,T07] (  3,  1.50)     int  ->  rdx         "CSE #01: moderate"
+;  V08 tmp6         [V08,T04] (  4,  2   )   ubyte  ->  rax         "Inline return value spill temp"
+;  V09 tmp7         [V09,T05] (  2,  2   )   byref  ->  rdi         single-def "impAppendStmt"
+;  V10 cse0         [V10,T06] (  3,  1.50)     int  ->  rdx         "CSE #01: moderate"
 ;
-; Lcl frame size = 8
+; Lcl frame size = 0
 
 G_M8008_IG01:
        push     rbp
        push     r15
-       push     r14
        push     rbx
-       push     rax
-       lea      rbp, [rsp+0x20]
+       lea      rbp, [rsp+0x10]
        mov      r15, rdi
        mov      rbx, rsi
-						;; size=18 bbWeight=1 PerfScore 6.00
+						;; size=15 bbWeight=1 PerfScore 4.00
 G_M8008_IG02:
        test     r15, r15
-       jne      SHORT G_M8008_IG05
+       jne      SHORT G_M8008_IG06
 						;; size=5 bbWeight=1 PerfScore 1.25
 G_M8008_IG03:
        test     rbx, rbx
-       setne    al
-       movzx    rax, al
-						;; size=9 bbWeight=0.50 PerfScore 0.75
+       jne      SHORT G_M8008_IG13
+						;; size=5 bbWeight=0.50 PerfScore 0.62
 G_M8008_IG04:
-       add      rsp, 8
+       xor      eax, eax
+						;; size=2 bbWeight=0.25 PerfScore 0.06
+G_M8008_IG05:
        pop      rbx
-       pop      r14
        pop      r15
        pop      rbp
        ret      
-						;; size=11 bbWeight=0.50 PerfScore 1.62
-G_M8008_IG05:
+						;; size=5 bbWeight=0.25 PerfScore 0.62
+G_M8008_IG06:
        test     rbx, rbx
-       je       SHORT G_M8008_IG10
+       je       SHORT G_M8008_IG12
        mov      rdi, rbx
        xor      rsi, rsi
        mov      rax, 0xD1FFAB1E      ; code for System.Xml.Serialization.SourceInfo:Equals(System.Object):ubyte:this
        call     [rax]System.Xml.Serialization.SourceInfo:Equals(System.Object):ubyte:this
        test     eax, eax
-       je       SHORT G_M8008_IG06
-       xor      r14d, r14d
-       jmp      SHORT G_M8008_IG11
-						;; size=31 bbWeight=0.50 PerfScore 4.25
-G_M8008_IG06:
+       jne      SHORT G_M8008_IG13
        mov      rdi, gword ptr [r15+0x08]
        mov      rsi, gword ptr [rbx+0x08]
        cmp      rdi, rsi
        je       SHORT G_M8008_IG08
        test     rdi, rdi
        je       SHORT G_M8008_IG07
        test     rsi, rsi
        je       SHORT G_M8008_IG07
        mov      edx, dword ptr [rdi+0x08]
        cmp      edx, dword ptr [rsi+0x08]
        jne      SHORT G_M8008_IG07
        add      rdi, 12
        add      rsi, 12
        add      edx, edx
        mov      rax, 0xD1FFAB1E      ; code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
        call     [rax]System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
-       mov      r14d, eax
        jmp      SHORT G_M8008_IG09
-						;; size=58 bbWeight=0.50 PerfScore 10.00
+						;; size=81 bbWeight=0.50 PerfScore 13.00
 G_M8008_IG07:
-       xor      r14d, r14d
+       xor      eax, eax
        jmp      SHORT G_M8008_IG09
-						;; size=5 bbWeight=0.50 PerfScore 1.12
+						;; size=4 bbWeight=0.50 PerfScore 1.12
 G_M8008_IG08:
-       mov      r14d, 1
-						;; size=6 bbWeight=0.50 PerfScore 0.12
+       mov      eax, 1
+						;; size=5 bbWeight=0.50 PerfScore 0.12
 G_M8008_IG09:
-       jmp      SHORT G_M8008_IG11
-						;; size=2 bbWeight=0.50 PerfScore 1.00
+       test     eax, eax
+       je       SHORT G_M8008_IG13
+						;; size=4 bbWeight=0.50 PerfScore 0.62
 G_M8008_IG10:
-       cmp      gword ptr [r15+0x08], 0
-       sete     r14b
-       movzx    r14, r14b
-						;; size=13 bbWeight=0.50 PerfScore 2.12
+       xor      eax, eax
+						;; size=2 bbWeight=0.25 PerfScore 0.06
 G_M8008_IG11:
-       test     r14d, r14d
-       sete     al
-       movzx    rax, al
-						;; size=9 bbWeight=0.50 PerfScore 0.75
-G_M8008_IG12:
-       add      rsp, 8
        pop      rbx
-       pop      r14
        pop      r15
        pop      rbp
        ret      
-						;; size=11 bbWeight=0.50 PerfScore 1.62
+						;; size=5 bbWeight=0.25 PerfScore 0.62
+G_M8008_IG12:
+       cmp      gword ptr [r15+0x08], 0
+       je       SHORT G_M8008_IG10
+						;; size=7 bbWeight=0.50 PerfScore 2.00
+G_M8008_IG13:
+       mov      eax, 1
+						;; size=5 bbWeight=0.25 PerfScore 0.06
+G_M8008_IG14:
+       pop      rbx
+       pop      r15
+       pop      rbp
+       ret      
+						;; size=5 bbWeight=0.25 PerfScore 0.62
 
-; Total bytes of code 178, prolog size 12, PerfScore 30.62, instruction count 63, allocated bytes for code 178 (MethodHash=6a7fe0b7) for method System.Xml.Serialization.SourceInfo:op_Inequality(System.Xml.Serialization.SourceInfo,System.Xml.Serialization.SourceInfo):ubyte (FullOpts)
+; Total bytes of code 150, prolog size 9, PerfScore 24.81, instruction count 57, allocated bytes for code 150 (MethodHash=6a7fe0b7) for method System.Xml.Serialization.SourceInfo:op_Inequality(System.Xml.Serialization.SourceInfo,System.Xml.Serialization.SourceInfo):ubyte (FullOpts)
 ; ============================================================
-25 (-50.00 % of base) - System.Data.ColumnTypeConverter:CanConvertFrom(System.ComponentModel.ITypeDescriptorContext,System.Type):ubyte:this
 ; Assembly listing for method System.Data.ColumnTypeConverter:CanConvertFrom(System.ComponentModel.ITypeDescriptorContext,System.Type):ubyte:this (FullOpts)
 ; Emitting BLENDED_CODE for X64 with AVX - Unix
 ; FullOpts code
 ; optimized code
 ; rsp based frame
 ; partially interruptible
 ; No PGO data
 ; 0 inlinees with PGO data; 1 single block inlinees; 0 inlinees without PGO data
 ; Final local variable assignments
 ;
 ;* V00 this         [V00    ] (  0,  0   )     ref  ->  zero-ref    this class-hnd single-def <System.Data.ColumnTypeConverter>
 ;* V01 arg1         [V01    ] (  0,  0   )     ref  ->  zero-ref    class-hnd single-def <System.ComponentModel.ITypeDescriptorContext>
-;  V02 arg2         [V02,T00] (  3,  3   )     ref  ->  rdx         class-hnd single-def <System.Type>
+;  V02 arg2         [V02,T00] (  3,  2.25)     ref  ->  rdx         class-hnd single-def <System.Type>
 ;# V03 OutArgs      [V03    ] (  1,  1   )  struct ( 0) [rsp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-;  V04 cse0         [V04,T01] (  3,  2.50)     ref  ->  rcx         "CSE #01: aggressive"
 ;
 ; Lcl frame size = 8
 
 G_M45673_IG01:
        push     rax
-						;; size=1 bbWeight=1 PerfScore 1.00
+						;; size=1 bbWeight=0.25 PerfScore 0.25
 G_M45673_IG02:
-       mov      rcx, 0xD1FFAB1E      ; 'System.String'
-       cmp      rdx, rcx
-       jne      SHORT G_M45673_IG05
-						;; size=15 bbWeight=1 PerfScore 1.50
-G_M45673_IG03:
-       mov      eax, 1
-						;; size=5 bbWeight=0.50 PerfScore 0.12
-G_M45673_IG04:
-       add      rsp, 8
-       ret      
-						;; size=5 bbWeight=0.50 PerfScore 0.62
-G_M45673_IG05:
-       mov      rax, 0xD1FFAB1E
-       cmp      rcx, rax
-       setne    al
+       mov      rax, 0xD1FFAB1E      ; 'System.String'
+       cmp      rdx, rax
+       sete     al
        movzx    rax, al
-						;; size=19 bbWeight=0.50 PerfScore 0.88
-G_M45673_IG06:
+						;; size=19 bbWeight=0.25 PerfScore 0.44
+G_M45673_IG03:
        add      rsp, 8
        ret      
-						;; size=5 bbWeight=0.50 PerfScore 0.62
+						;; size=5 bbWeight=0.25 PerfScore 0.31
 
-; Total bytes of code 50, prolog size 1, PerfScore 4.75, instruction count 13, allocated bytes for code 50 (MethodHash=6d854d96) for method System.Data.ColumnTypeConverter:CanConvertFrom(System.ComponentModel.ITypeDescriptorContext,System.Type):ubyte:this (FullOpts)
+; Total bytes of code 25, prolog size 1, PerfScore 1.00, instruction count 7, allocated bytes for code 25 (MethodHash=6d854d96) for method System.Data.ColumnTypeConverter:CanConvertFrom(System.ComponentModel.ITypeDescriptorContext,System.Type):ubyte:this (FullOpts)
 ; ============================================================
-25 (-50.00 % of base) - System.Data.PrimaryKeyTypeConverter:CanConvertTo(System.ComponentModel.ITypeDescriptorContext,System.Type):ubyte:this
 ; Assembly listing for method System.Data.PrimaryKeyTypeConverter:CanConvertTo(System.ComponentModel.ITypeDescriptorContext,System.Type):ubyte:this (FullOpts)
 ; Emitting BLENDED_CODE for X64 with AVX - Unix
 ; FullOpts code
 ; optimized code
 ; rsp based frame
 ; partially interruptible
 ; No PGO data
 ; 0 inlinees with PGO data; 1 single block inlinees; 0 inlinees without PGO data
 ; Final local variable assignments
 ;
 ;* V00 this         [V00    ] (  0,  0   )     ref  ->  zero-ref    this class-hnd single-def <System.Data.PrimaryKeyTypeConverter>
 ;* V01 arg1         [V01    ] (  0,  0   )     ref  ->  zero-ref    class-hnd single-def <System.ComponentModel.ITypeDescriptorContext>
-;  V02 arg2         [V02,T00] (  3,  3   )     ref  ->  rdx         class-hnd single-def <System.Type>
+;  V02 arg2         [V02,T00] (  3,  2.25)     ref  ->  rdx         class-hnd single-def <System.Type>
 ;# V03 OutArgs      [V03    ] (  1,  1   )  struct ( 0) [rsp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-;  V04 cse0         [V04,T01] (  3,  2.50)     ref  ->  rcx         "CSE #01: aggressive"
 ;
 ; Lcl frame size = 8
 
 G_M17449_IG01:
        push     rax
-						;; size=1 bbWeight=1 PerfScore 1.00
+						;; size=1 bbWeight=0.25 PerfScore 0.25
 G_M17449_IG02:
-       mov      rcx, 0xD1FFAB1E      ; 'System.String'
-       cmp      rdx, rcx
-       jne      SHORT G_M17449_IG05
-						;; size=15 bbWeight=1 PerfScore 1.50
-G_M17449_IG03:
-       mov      eax, 1
-						;; size=5 bbWeight=0.50 PerfScore 0.12
-G_M17449_IG04:
-       add      rsp, 8
-       ret      
-						;; size=5 bbWeight=0.50 PerfScore 0.62
-G_M17449_IG05:
-       mov      rax, 0xD1FFAB1E
-       cmp      rcx, rax
-       setne    al
+       mov      rax, 0xD1FFAB1E      ; 'System.String'
+       cmp      rdx, rax
+       sete     al
        movzx    rax, al
-						;; size=19 bbWeight=0.50 PerfScore 0.88
-G_M17449_IG06:
+						;; size=19 bbWeight=0.25 PerfScore 0.44
+G_M17449_IG03:
        add      rsp, 8
        ret      
-						;; size=5 bbWeight=0.50 PerfScore 0.62
+						;; size=5 bbWeight=0.25 PerfScore 0.31
 
-; Total bytes of code 50, prolog size 1, PerfScore 4.75, instruction count 13, allocated bytes for code 50 (MethodHash=405fbbd6) for method System.Data.PrimaryKeyTypeConverter:CanConvertTo(System.ComponentModel.ITypeDescriptorContext,System.Type):ubyte:this (FullOpts)
+; Total bytes of code 25, prolog size 1, PerfScore 1.00, instruction count 7, allocated bytes for code 25 (MethodHash=405fbbd6) for method System.Data.PrimaryKeyTypeConverter:CanConvertTo(System.ComponentModel.ITypeDescriptorContext,System.Type):ubyte:this (FullOpts)
 ; ============================================================
-23 (-31.94 % of base) - System.Reflection.Assembly:op_Inequality(System.Reflection.Assembly,System.Reflection.Assembly):ubyte
 ; Assembly listing for method System.Reflection.Assembly:op_Inequality(System.Reflection.Assembly,System.Reflection.Assembly):ubyte (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; 0 single block inlinees; 1 inlinees without PGO data
 ; Final local variable assignments
 ;
 ;  V00 arg0         [V00,T00] (  7,  4.50)     ref  ->  rdi         class-hnd single-def <System.Reflection.Assembly>
 ;  V01 arg1         [V01,T01] (  5,  4   )     ref  ->  rsi         class-hnd single-def <System.Reflection.Assembly>
 ;# V02 OutArgs      [V02    ] (  1,  1   )  struct ( 0) [rsp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-;  V03 tmp1         [V03,T02] (  5,  3   )   ubyte  ->  rbx         "Inline return value spill temp"
+;  V03 tmp1         [V03,T02] (  2,  1   )   ubyte  ->  rax         "Inline return value spill temp"
 ;
-; Lcl frame size = 8
+; Lcl frame size = 0
 
 G_M13755_IG01:
        push     rbp
-       push     rbx
-       push     rax
-       lea      rbp, [rsp+0x10]
-						;; size=8 bbWeight=1 PerfScore 3.50
+       mov      rbp, rsp
+						;; size=4 bbWeight=1 PerfScore 1.25
 G_M13755_IG02:
        test     rsi, rsi
        je       SHORT G_M13755_IG06
 						;; size=5 bbWeight=1 PerfScore 1.25
 G_M13755_IG03:
        cmp      rdi, rsi
-       je       SHORT G_M13755_IG05
+       je       SHORT G_M13755_IG04
        test     rdi, rdi
-       jne      SHORT G_M13755_IG04
-       xor      ebx, ebx
-       jmp      SHORT G_M13755_IG07
-						;; size=14 bbWeight=0.50 PerfScore 2.38
-G_M13755_IG04:
+       je       SHORT G_M13755_IG07
        mov      rax, qword ptr [rdi]
        mov      rax, qword ptr [rax+0x40]
        call     [rax+0x10]System.Object:Equals(System.Object):ubyte:this
-       mov      ebx, eax
-       jmp      SHORT G_M13755_IG07
-						;; size=14 bbWeight=0.50 PerfScore 4.62
+       test     eax, eax
+       je       SHORT G_M13755_IG07
+						;; size=24 bbWeight=0.50 PerfScore 5.38
+G_M13755_IG04:
+       xor      eax, eax
+						;; size=2 bbWeight=0.25 PerfScore 0.06
 G_M13755_IG05:
-       mov      ebx, 1
-       jmp      SHORT G_M13755_IG07
-						;; size=7 bbWeight=0.50 PerfScore 1.12
-G_M13755_IG06:
-       test     rdi, rdi
-       sete     bl
-       movzx    rbx, bl
-						;; size=9 bbWeight=0.50 PerfScore 0.75
-G_M13755_IG07:
-       test     ebx, ebx
-       sete     al
-       movzx    rax, al
-						;; size=8 bbWeight=1 PerfScore 1.50
-G_M13755_IG08:
-       add      rsp, 8
-       pop      rbx
        pop      rbp
        ret      
-						;; size=7 bbWeight=1 PerfScore 2.25
+						;; size=2 bbWeight=0.25 PerfScore 0.38
+G_M13755_IG06:
+       test     rdi, rdi
+       je       SHORT G_M13755_IG04
+						;; size=5 bbWeight=0.50 PerfScore 0.62
+G_M13755_IG07:
+       mov      eax, 1
+						;; size=5 bbWeight=0.25 PerfScore 0.06
+G_M13755_IG08:
+       pop      rbp
+       ret      
+						;; size=2 bbWeight=0.25 PerfScore 0.38
 
-; Total bytes of code 72, prolog size 8, PerfScore 17.38, instruction count 29, allocated bytes for code 72 (MethodHash=f229ca44) for method System.Reflection.Assembly:op_Inequality(System.Reflection.Assembly,System.Reflection.Assembly):ubyte (FullOpts)
+; Total bytes of code 49, prolog size 4, PerfScore 9.38, instruction count 21, allocated bytes for code 49 (MethodHash=f229ca44) for method System.Reflection.Assembly:op_Inequality(System.Reflection.Assembly,System.Reflection.Assembly):ubyte (FullOpts)
 ; ============================================================
-23 (-31.94 % of base) - System.Reflection.ConstructorInfo:op_Inequality(System.Reflection.ConstructorInfo,System.Reflection.ConstructorInfo):ubyte
 ; Assembly listing for method System.Reflection.ConstructorInfo:op_Inequality(System.Reflection.ConstructorInfo,System.Reflection.ConstructorInfo):ubyte (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; 0 single block inlinees; 1 inlinees without PGO data
 ; Final local variable assignments
 ;
 ;  V00 arg0         [V00,T00] (  7,  4.50)     ref  ->  rdi         class-hnd single-def <System.Reflection.ConstructorInfo>
 ;  V01 arg1         [V01,T01] (  5,  4   )     ref  ->  rsi         class-hnd single-def <System.Reflection.ConstructorInfo>
 ;# V02 OutArgs      [V02    ] (  1,  1   )  struct ( 0) [rsp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-;  V03 tmp1         [V03,T02] (  5,  3   )   ubyte  ->  rbx         "Inline return value spill temp"
+;  V03 tmp1         [V03,T02] (  2,  1   )   ubyte  ->  rax         "Inline return value spill temp"
 ;
-; Lcl frame size = 8
+; Lcl frame size = 0
 
 G_M65155_IG01:
        push     rbp
-       push     rbx
-       push     rax
-       lea      rbp, [rsp+0x10]
-						;; size=8 bbWeight=1 PerfScore 3.50
+       mov      rbp, rsp
+						;; size=4 bbWeight=1 PerfScore 1.25
 G_M65155_IG02:
        test     rsi, rsi
        je       SHORT G_M65155_IG06
 						;; size=5 bbWeight=1 PerfScore 1.25
 G_M65155_IG03:
        cmp      rdi, rsi
-       je       SHORT G_M65155_IG05
+       je       SHORT G_M65155_IG04
        test     rdi, rdi
-       jne      SHORT G_M65155_IG04
-       xor      ebx, ebx
-       jmp      SHORT G_M65155_IG07
-						;; size=14 bbWeight=0.50 PerfScore 2.38
-G_M65155_IG04:
+       je       SHORT G_M65155_IG07
        mov      rax, qword ptr [rdi]
        mov      rax, qword ptr [rax+0x40]
        call     [rax+0x10]System.Object:Equals(System.Object):ubyte:this
-       mov      ebx, eax
-       jmp      SHORT G_M65155_IG07
-						;; size=14 bbWeight=0.50 PerfScore 4.62
+       test     eax, eax
+       je       SHORT G_M65155_IG07
+						;; size=24 bbWeight=0.50 PerfScore 5.38
+G_M65155_IG04:
+       xor      eax, eax
+						;; size=2 bbWeight=0.25 PerfScore 0.06
 G_M65155_IG05:
-       mov      ebx, 1
-       jmp      SHORT G_M65155_IG07
-						;; size=7 bbWeight=0.50 PerfScore 1.12
-G_M65155_IG06:
-       test     rdi, rdi
-       sete     bl
-       movzx    rbx, bl
-						;; size=9 bbWeight=0.50 PerfScore 0.75
-G_M65155_IG07:
-       test     ebx, ebx
-       sete     al
-       movzx    rax, al
-						;; size=8 bbWeight=1 PerfScore 1.50
-G_M65155_IG08:
-       add      rsp, 8
-       pop      rbx
        pop      rbp
        ret      
-						;; size=7 bbWeight=1 PerfScore 2.25
+						;; size=2 bbWeight=0.25 PerfScore 0.38
+G_M65155_IG06:
+       test     rdi, rdi
+       je       SHORT G_M65155_IG04
+						;; size=5 bbWeight=0.50 PerfScore 0.62
+G_M65155_IG07:
+       mov      eax, 1
+						;; size=5 bbWeight=0.25 PerfScore 0.06
+G_M65155_IG08:
+       pop      rbp
+       ret      
+						;; size=2 bbWeight=0.25 PerfScore 0.38
 
-; Total bytes of code 72, prolog size 8, PerfScore 17.38, instruction count 29, allocated bytes for code 72 (MethodHash=03ca017c) for method System.Reflection.ConstructorInfo:op_Inequality(System.Reflection.ConstructorInfo,System.Reflection.ConstructorInfo):ubyte (FullOpts)
+; Total bytes of code 49, prolog size 4, PerfScore 9.38, instruction count 21, allocated bytes for code 49 (MethodHash=03ca017c) for method System.Reflection.ConstructorInfo:op_Inequality(System.Reflection.ConstructorInfo,System.Reflection.ConstructorInfo):ubyte (FullOpts)
 ; ============================================================
-23 (-31.94 % of base) - System.Reflection.EventInfo:op_Inequality(System.Reflection.EventInfo,System.Reflection.EventInfo):ubyte
 ; Assembly listing for method System.Reflection.EventInfo:op_Inequality(System.Reflection.EventInfo,System.Reflection.EventInfo):ubyte (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; 0 single block inlinees; 1 inlinees without PGO data
 ; Final local variable assignments
 ;
 ;  V00 arg0         [V00,T00] (  7,  4.50)     ref  ->  rdi         class-hnd single-def <System.Reflection.EventInfo>
 ;  V01 arg1         [V01,T01] (  5,  4   )     ref  ->  rsi         class-hnd single-def <System.Reflection.EventInfo>
 ;# V02 OutArgs      [V02    ] (  1,  1   )  struct ( 0) [rsp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-;  V03 tmp1         [V03,T02] (  5,  3   )   ubyte  ->  rbx         "Inline return value spill temp"
+;  V03 tmp1         [V03,T02] (  2,  1   )   ubyte  ->  rax         "Inline return value spill temp"
 ;
-; Lcl frame size = 8
+; Lcl frame size = 0
 
 G_M57543_IG01:
        push     rbp
-       push     rbx
-       push     rax
-       lea      rbp, [rsp+0x10]
-						;; size=8 bbWeight=1 PerfScore 3.50
+       mov      rbp, rsp
+						;; size=4 bbWeight=1 PerfScore 1.25
 G_M57543_IG02:
        test     rsi, rsi
        je       SHORT G_M57543_IG06
 						;; size=5 bbWeight=1 PerfScore 1.25
 G_M57543_IG03:
        cmp      rdi, rsi
-       je       SHORT G_M57543_IG05
+       je       SHORT G_M57543_IG04
        test     rdi, rdi
-       jne      SHORT G_M57543_IG04
-       xor      ebx, ebx
-       jmp      SHORT G_M57543_IG07
-						;; size=14 bbWeight=0.50 PerfScore 2.38
-G_M57543_IG04:
+       je       SHORT G_M57543_IG07
        mov      rax, qword ptr [rdi]
        mov      rax, qword ptr [rax+0x40]
        call     [rax+0x10]System.Object:Equals(System.Object):ubyte:this
-       mov      ebx, eax
-       jmp      SHORT G_M57543_IG07
-						;; size=14 bbWeight=0.50 PerfScore 4.62
+       test     eax, eax
+       je       SHORT G_M57543_IG07
+						;; size=24 bbWeight=0.50 PerfScore 5.38
+G_M57543_IG04:
+       xor      eax, eax
+						;; size=2 bbWeight=0.25 PerfScore 0.06
 G_M57543_IG05:
-       mov      ebx, 1
-       jmp      SHORT G_M57543_IG07
-						;; size=7 bbWeight=0.50 PerfScore 1.12
-G_M57543_IG06:
-       test     rdi, rdi
-       sete     bl
-       movzx    rbx, bl
-						;; size=9 bbWeight=0.50 PerfScore 0.75
-G_M57543_IG07:
-       test     ebx, ebx
-       sete     al
-       movzx    rax, al
-						;; size=8 bbWeight=1 PerfScore 1.50
-G_M57543_IG08:
-       add      rsp, 8
-       pop      rbx
        pop      rbp
        ret      
-						;; size=7 bbWeight=1 PerfScore 2.25
+						;; size=2 bbWeight=0.25 PerfScore 0.38
+G_M57543_IG06:
+       test     rdi, rdi
+       je       SHORT G_M57543_IG04
+						;; size=5 bbWeight=0.50 PerfScore 0.62
+G_M57543_IG07:
+       mov      eax, 1
+						;; size=5 bbWeight=0.25 PerfScore 0.06
+G_M57543_IG08:
+       pop      rbp
+       ret      
+						;; size=2 bbWeight=0.25 PerfScore 0.38
 
-; Total bytes of code 72, prolog size 8, PerfScore 17.38, instruction count 29, allocated bytes for code 72 (MethodHash=c9c11f38) for method System.Reflection.EventInfo:op_Inequality(System.Reflection.EventInfo,System.Reflection.EventInfo):ubyte (FullOpts)
+; Total bytes of code 49, prolog size 4, PerfScore 9.38, instruction count 21, allocated bytes for code 49 (MethodHash=c9c11f38) for method System.Reflection.EventInfo:op_Inequality(System.Reflection.EventInfo,System.Reflection.EventInfo):ubyte (FullOpts)
 ; ============================================================
-23 (-31.94 % of base) - System.Reflection.FieldInfo:op_Inequality(System.Reflection.FieldInfo,System.Reflection.FieldInfo):ubyte
 ; Assembly listing for method System.Reflection.FieldInfo:op_Inequality(System.Reflection.FieldInfo,System.Reflection.FieldInfo):ubyte (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; 0 single block inlinees; 1 inlinees without PGO data
 ; Final local variable assignments
 ;
 ;  V00 arg0         [V00,T00] (  7,  4.50)     ref  ->  rdi         class-hnd single-def <System.Reflection.FieldInfo>
 ;  V01 arg1         [V01,T01] (  5,  4   )     ref  ->  rsi         class-hnd single-def <System.Reflection.FieldInfo>
 ;# V02 OutArgs      [V02    ] (  1,  1   )  struct ( 0) [rsp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-;  V03 tmp1         [V03,T02] (  5,  3   )   ubyte  ->  rbx         "Inline return value spill temp"
+;  V03 tmp1         [V03,T02] (  2,  1   )   ubyte  ->  rax         "Inline return value spill temp"
 ;
-; Lcl frame size = 8
+; Lcl frame size = 0
 
 G_M14889_IG01:
        push     rbp
-       push     rbx
-       push     rax
-       lea      rbp, [rsp+0x10]
-						;; size=8 bbWeight=1 PerfScore 3.50
+       mov      rbp, rsp
+						;; size=4 bbWeight=1 PerfScore 1.25
 G_M14889_IG02:
        test     rsi, rsi
        je       SHORT G_M14889_IG06
 						;; size=5 bbWeight=1 PerfScore 1.25
 G_M14889_IG03:
        cmp      rdi, rsi
-       je       SHORT G_M14889_IG05
+       je       SHORT G_M14889_IG04
        test     rdi, rdi
-       jne      SHORT G_M14889_IG04
-       xor      ebx, ebx
-       jmp      SHORT G_M14889_IG07
-						;; size=14 bbWeight=0.50 PerfScore 2.38
-G_M14889_IG04:
+       je       SHORT G_M14889_IG07
        mov      rax, qword ptr [rdi]
        mov      rax, qword ptr [rax+0x40]
        call     [rax+0x10]System.Object:Equals(System.Object):ubyte:this
-       mov      ebx, eax
-       jmp      SHORT G_M14889_IG07
-						;; size=14 bbWeight=0.50 PerfScore 4.62
+       test     eax, eax
+       je       SHORT G_M14889_IG07
+						;; size=24 bbWeight=0.50 PerfScore 5.38
+G_M14889_IG04:
+       xor      eax, eax
+						;; size=2 bbWeight=0.25 PerfScore 0.06
 G_M14889_IG05:
-       mov      ebx, 1
-       jmp      SHORT G_M14889_IG07
-						;; size=7 bbWeight=0.50 PerfScore 1.12
-G_M14889_IG06:
-       test     rdi, rdi
-       sete     bl
-       movzx    rbx, bl
-						;; size=9 bbWeight=0.50 PerfScore 0.75
-G_M14889_IG07:
-       test     ebx, ebx
-       sete     al
-       movzx    rax, al
-						;; size=8 bbWeight=1 PerfScore 1.50
-G_M14889_IG08:
-       add      rsp, 8
-       pop      rbx
        pop      rbp
        ret      
-						;; size=7 bbWeight=1 PerfScore 2.25
+						;; size=2 bbWeight=0.25 PerfScore 0.38
+G_M14889_IG06:
+       test     rdi, rdi
+       je       SHORT G_M14889_IG04
+						;; size=5 bbWeight=0.50 PerfScore 0.62
+G_M14889_IG07:
+       mov      eax, 1
+						;; size=5 bbWeight=0.25 PerfScore 0.06
+G_M14889_IG08:
+       pop      rbp
+       ret      
+						;; size=2 bbWeight=0.25 PerfScore 0.38
 
-; Total bytes of code 72, prolog size 8, PerfScore 17.38, instruction count 29, allocated bytes for code 72 (MethodHash=3005c5d6) for method System.Reflection.FieldInfo:op_Inequality(System.Reflection.FieldInfo,System.Reflection.FieldInfo):ubyte (FullOpts)
+; Total bytes of code 49, prolog size 4, PerfScore 9.38, instruction count 21, allocated bytes for code 49 (MethodHash=3005c5d6) for method System.Reflection.FieldInfo:op_Inequality(System.Reflection.FieldInfo,System.Reflection.FieldInfo):ubyte (FullOpts)
 ; ============================================================
-23 (-31.94 % of base) - System.Reflection.MemberInfo:op_Inequality(System.Reflection.MemberInfo,System.Reflection.MemberInfo):ubyte
 ; Assembly listing for method System.Reflection.MemberInfo:op_Inequality(System.Reflection.MemberInfo,System.Reflection.MemberInfo):ubyte (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; 0 single block inlinees; 1 inlinees without PGO data
 ; Final local variable assignments
 ;
 ;  V00 arg0         [V00,T00] (  7,  4.50)     ref  ->  rdi         class-hnd single-def <System.Reflection.MemberInfo>
 ;  V01 arg1         [V01,T01] (  5,  4   )     ref  ->  rsi         class-hnd single-def <System.Reflection.MemberInfo>
 ;# V02 OutArgs      [V02    ] (  1,  1   )  struct ( 0) [rsp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-;  V03 tmp1         [V03,T02] (  5,  3   )   ubyte  ->  rbx         "Inline return value spill temp"
+;  V03 tmp1         [V03,T02] (  2,  1   )   ubyte  ->  rax         "Inline return value spill temp"
 ;
-; Lcl frame size = 8
+; Lcl frame size = 0
 
 G_M38971_IG01:
        push     rbp
-       push     rbx
-       push     rax
-       lea      rbp, [rsp+0x10]
-						;; size=8 bbWeight=1 PerfScore 3.50
+       mov      rbp, rsp
+						;; size=4 bbWeight=1 PerfScore 1.25
 G_M38971_IG02:
        test     rsi, rsi
        je       SHORT G_M38971_IG06
 						;; size=5 bbWeight=1 PerfScore 1.25
 G_M38971_IG03:
        cmp      rdi, rsi
-       je       SHORT G_M38971_IG05
+       je       SHORT G_M38971_IG04
        test     rdi, rdi
-       jne      SHORT G_M38971_IG04
-       xor      ebx, ebx
-       jmp      SHORT G_M38971_IG07
-						;; size=14 bbWeight=0.50 PerfScore 2.38
-G_M38971_IG04:
+       je       SHORT G_M38971_IG07
        mov      rax, qword ptr [rdi]
        mov      rax, qword ptr [rax+0x40]
        call     [rax+0x10]System.Object:Equals(System.Object):ubyte:this
-       mov      ebx, eax
-       jmp      SHORT G_M38971_IG07
-						;; size=14 bbWeight=0.50 PerfScore 4.62
+       test     eax, eax
+       je       SHORT G_M38971_IG07
+						;; size=24 bbWeight=0.50 PerfScore 5.38
+G_M38971_IG04:
+       xor      eax, eax
+						;; size=2 bbWeight=0.25 PerfScore 0.06
 G_M38971_IG05:
-       mov      ebx, 1
-       jmp      SHORT G_M38971_IG07
-						;; size=7 bbWeight=0.50 PerfScore 1.12
-G_M38971_IG06:
-       test     rdi, rdi
-       sete     bl
-       movzx    rbx, bl
-						;; size=9 bbWeight=0.50 PerfScore 0.75
-G_M38971_IG07:
-       test     ebx, ebx
-       sete     al
-       movzx    rax, al
-						;; size=8 bbWeight=1 PerfScore 1.50
-G_M38971_IG08:
-       add      rsp, 8
-       pop      rbx
        pop      rbp
        ret      
-						;; size=7 bbWeight=1 PerfScore 2.25
+						;; size=2 bbWeight=0.25 PerfScore 0.38
+G_M38971_IG06:
+       test     rdi, rdi
+       je       SHORT G_M38971_IG04
+						;; size=5 bbWeight=0.50 PerfScore 0.62
+G_M38971_IG07:
+       mov      eax, 1
+						;; size=5 bbWeight=0.25 PerfScore 0.06
+G_M38971_IG08:
+       pop      rbp
+       ret      
+						;; size=2 bbWeight=0.25 PerfScore 0.38
 
-; Total bytes of code 72, prolog size 8, PerfScore 17.38, instruction count 29, allocated bytes for code 72 (MethodHash=664067c4) for method System.Reflection.MemberInfo:op_Inequality(System.Reflection.MemberInfo,System.Reflection.MemberInfo):ubyte (FullOpts)
+; Total bytes of code 49, prolog size 4, PerfScore 9.38, instruction count 21, allocated bytes for code 49 (MethodHash=664067c4) for method System.Reflection.MemberInfo:op_Inequality(System.Reflection.MemberInfo,System.Reflection.MemberInfo):ubyte (FullOpts)
 ; ============================================================
-23 (-31.94 % of base) - System.Reflection.MethodBase:op_Inequality(System.Reflection.MethodBase,System.Reflection.MethodBase):ubyte
 ; Assembly listing for method System.Reflection.MethodBase:op_Inequality(System.Reflection.MethodBase,System.Reflection.MethodBase):ubyte (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; 0 single block inlinees; 1 inlinees without PGO data
 ; Final local variable assignments
 ;
 ;  V00 arg0         [V00,T00] (  7,  4.50)     ref  ->  rdi         class-hnd single-def <System.Reflection.MethodBase>
 ;  V01 arg1         [V01,T01] (  5,  4   )     ref  ->  rsi         class-hnd single-def <System.Reflection.MethodBase>
 ;# V02 OutArgs      [V02    ] (  1,  1   )  struct ( 0) [rsp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-;  V03 tmp1         [V03,T02] (  5,  3   )   ubyte  ->  rbx         "Inline return value spill temp"
+;  V03 tmp1         [V03,T02] (  2,  1   )   ubyte  ->  rax         "Inline return value spill temp"
 ;
-; Lcl frame size = 8
+; Lcl frame size = 0
 
 G_M38607_IG01:
        push     rbp
-       push     rbx
-       push     rax
-       lea      rbp, [rsp+0x10]
-						;; size=8 bbWeight=1 PerfScore 3.50
+       mov      rbp, rsp
+						;; size=4 bbWeight=1 PerfScore 1.25
 G_M38607_IG02:
        test     rsi, rsi
        je       SHORT G_M38607_IG06
 						;; size=5 bbWeight=1 PerfScore 1.25
 G_M38607_IG03:
        cmp      rdi, rsi
-       je       SHORT G_M38607_IG05
+       je       SHORT G_M38607_IG04
        test     rdi, rdi
-       jne      SHORT G_M38607_IG04
-       xor      ebx, ebx
-       jmp      SHORT G_M38607_IG07
-						;; size=14 bbWeight=0.50 PerfScore 2.38
-G_M38607_IG04:
+       je       SHORT G_M38607_IG07
        mov      rax, qword ptr [rdi]
        mov      rax, qword ptr [rax+0x40]
        call     [rax+0x10]System.Object:Equals(System.Object):ubyte:this
-       mov      ebx, eax
-       jmp      SHORT G_M38607_IG07
-						;; size=14 bbWeight=0.50 PerfScore 4.62
+       test     eax, eax
+       je       SHORT G_M38607_IG07
+						;; size=24 bbWeight=0.50 PerfScore 5.38
+G_M38607_IG04:
+       xor      eax, eax
+						;; size=2 bbWeight=0.25 PerfScore 0.06
 G_M38607_IG05:
-       mov      ebx, 1
-       jmp      SHORT G_M38607_IG07
-						;; size=7 bbWeight=0.50 PerfScore 1.12
-G_M38607_IG06:
-       test     rdi, rdi
-       sete     bl
-       movzx    rbx, bl
-						;; size=9 bbWeight=0.50 PerfScore 0.75
-G_M38607_IG07:
-       test     ebx, ebx
-       sete     al
-       movzx    rax, al
-						;; size=8 bbWeight=1 PerfScore 1.50
-G_M38607_IG08:
-       add      rsp, 8
-       pop      rbx
        pop      rbp
        ret      
-						;; size=7 bbWeight=1 PerfScore 2.25
+						;; size=2 bbWeight=0.25 PerfScore 0.38
+G_M38607_IG06:
+       test     rdi, rdi
+       je       SHORT G_M38607_IG04
+						;; size=5 bbWeight=0.50 PerfScore 0.62
+G_M38607_IG07:
+       mov      eax, 1
+						;; size=5 bbWeight=0.25 PerfScore 0.06
+G_M38607_IG08:
+       pop      rbp
+       ret      
+						;; size=2 bbWeight=0.25 PerfScore 0.38
 
-; Total bytes of code 72, prolog size 8, PerfScore 17.38, instruction count 29, allocated bytes for code 72 (MethodHash=fc7e6930) for method System.Reflection.MethodBase:op_Inequality(System.Reflection.MethodBase,System.Reflection.MethodBase):ubyte (FullOpts)
+; Total bytes of code 49, prolog size 4, PerfScore 9.38, instruction count 21, allocated bytes for code 49 (MethodHash=fc7e6930) for method System.Reflection.MethodBase:op_Inequality(System.Reflection.MethodBase,System.Reflection.MethodBase):ubyte (FullOpts)
 ; ============================================================
-23 (-31.94 % of base) - System.Reflection.MethodInfo:op_Inequality(System.Reflection.MethodInfo,System.Reflection.MethodInfo):ubyte
 ; Assembly listing for method System.Reflection.MethodInfo:op_Inequality(System.Reflection.MethodInfo,System.Reflection.MethodInfo):ubyte (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; 0 single block inlinees; 1 inlinees without PGO data
 ; Final local variable assignments
 ;
 ;  V00 arg0         [V00,T00] (  7,  4.50)     ref  ->  rdi         class-hnd single-def <System.Reflection.MethodInfo>
 ;  V01 arg1         [V01,T01] (  5,  4   )     ref  ->  rsi         class-hnd single-def <System.Reflection.MethodInfo>
 ;# V02 OutArgs      [V02    ] (  1,  1   )  struct ( 0) [rsp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-;  V03 tmp1         [V03,T02] (  5,  3   )   ubyte  ->  rbx         "Inline return value spill temp"
+;  V03 tmp1         [V03,T02] (  2,  1   )   ubyte  ->  rax         "Inline return value spill temp"
 ;
-; Lcl frame size = 8
+; Lcl frame size = 0
 
 G_M44692_IG01:
        push     rbp
-       push     rbx
-       push     rax
-       lea      rbp, [rsp+0x10]
-						;; size=8 bbWeight=1 PerfScore 3.50
+       mov      rbp, rsp
+						;; size=4 bbWeight=1 PerfScore 1.25
 G_M44692_IG02:
        test     rsi, rsi
        je       SHORT G_M44692_IG06
 						;; size=5 bbWeight=1 PerfScore 1.25
 G_M44692_IG03:
        cmp      rdi, rsi
-       je       SHORT G_M44692_IG05
+       je       SHORT G_M44692_IG04
        test     rdi, rdi
-       jne      SHORT G_M44692_IG04
-       xor      ebx, ebx
-       jmp      SHORT G_M44692_IG07
-						;; size=14 bbWeight=0.50 PerfScore 2.38
-G_M44692_IG04:
+       je       SHORT G_M44692_IG07
        mov      rax, qword ptr [rdi]
        mov      rax, qword ptr [rax+0x40]
        call     [rax+0x10]System.Object:Equals(System.Object):ubyte:this
-       mov      ebx, eax
-       jmp      SHORT G_M44692_IG07
-						;; size=14 bbWeight=0.50 PerfScore 4.62
+       test     eax, eax
+       je       SHORT G_M44692_IG07
+						;; size=24 bbWeight=0.50 PerfScore 5.38
+G_M44692_IG04:
+       xor      eax, eax
+						;; size=2 bbWeight=0.25 PerfScore 0.06
 G_M44692_IG05:
-       mov      ebx, 1
-       jmp      SHORT G_M44692_IG07
-						;; size=7 bbWeight=0.50 PerfScore 1.12
-G_M44692_IG06:
-       test     rdi, rdi
-       sete     bl
-       movzx    rbx, bl
-						;; size=9 bbWeight=0.50 PerfScore 0.75
-G_M44692_IG07:
-       test     ebx, ebx
-       sete     al
-       movzx    rax, al
-						;; size=8 bbWeight=1 PerfScore 1.50
-G_M44692_IG08:
-       add      rsp, 8
-       pop      rbx
        pop      rbp
        ret      
-						;; size=7 bbWeight=1 PerfScore 2.25
+						;; size=2 bbWeight=0.25 PerfScore 0.38
+G_M44692_IG06:
+       test     rdi, rdi
+       je       SHORT G_M44692_IG04
+						;; size=5 bbWeight=0.50 PerfScore 0.62
+G_M44692_IG07:
+       mov      eax, 1
+						;; size=5 bbWeight=0.25 PerfScore 0.06
+G_M44692_IG08:
+       pop      rbp
+       ret      
+						;; size=2 bbWeight=0.25 PerfScore 0.38
 
-; Total bytes of code 72, prolog size 8, PerfScore 17.38, instruction count 29, allocated bytes for code 72 (MethodHash=e373516b) for method System.Reflection.MethodInfo:op_Inequality(System.Reflection.MethodInfo,System.Reflection.MethodInfo):ubyte (FullOpts)
+; Total bytes of code 49, prolog size 4, PerfScore 9.38, instruction count 21, allocated bytes for code 49 (MethodHash=e373516b) for method System.Reflection.MethodInfo:op_Inequality(System.Reflection.MethodInfo,System.Reflection.MethodInfo):ubyte (FullOpts)
 ; ============================================================
-23 (-31.94 % of base) - System.Reflection.Module:op_Inequality(System.Reflection.Module,System.Reflection.Module):ubyte
 ; Assembly listing for method System.Reflection.Module:op_Inequality(System.Reflection.Module,System.Reflection.Module):ubyte (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; 0 single block inlinees; 1 inlinees without PGO data
 ; Final local variable assignments
 ;
 ;  V00 arg0         [V00,T00] (  7,  4.50)     ref  ->  rdi         class-hnd single-def <System.Reflection.Module>
 ;  V01 arg1         [V01,T01] (  5,  4   )     ref  ->  rsi         class-hnd single-def <System.Reflection.Module>
 ;# V02 OutArgs      [V02    ] (  1,  1   )  struct ( 0) [rsp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-;  V03 tmp1         [V03,T02] (  5,  3   )   ubyte  ->  rbx         "Inline return value spill temp"
+;  V03 tmp1         [V03,T02] (  2,  1   )   ubyte  ->  rax         "Inline return value spill temp"
 ;
-; Lcl frame size = 8
+; Lcl frame size = 0
 
 G_M63807_IG01:
        push     rbp
-       push     rbx
-       push     rax
-       lea      rbp, [rsp+0x10]
-						;; size=8 bbWeight=1 PerfScore 3.50
+       mov      rbp, rsp
+						;; size=4 bbWeight=1 PerfScore 1.25
 G_M63807_IG02:
        test     rsi, rsi
        je       SHORT G_M63807_IG06
 						;; size=5 bbWeight=1 PerfScore 1.25
 G_M63807_IG03:
        cmp      rdi, rsi
-       je       SHORT G_M63807_IG05
+       je       SHORT G_M63807_IG04
        test     rdi, rdi
-       jne      SHORT G_M63807_IG04
-       xor      ebx, ebx
-       jmp      SHORT G_M63807_IG07
-						;; size=14 bbWeight=0.50 PerfScore 2.38
-G_M63807_IG04:
+       je       SHORT G_M63807_IG07
        mov      rax, qword ptr [rdi]
        mov      rax, qword ptr [rax+0x40]
        call     [rax+0x10]System.Object:Equals(System.Object):ubyte:this
-       mov      ebx, eax
-       jmp      SHORT G_M63807_IG07
-						;; size=14 bbWeight=0.50 PerfScore 4.62
+       test     eax, eax
+       je       SHORT G_M63807_IG07
+						;; size=24 bbWeight=0.50 PerfScore 5.38
+G_M63807_IG04:
+       xor      eax, eax
+						;; size=2 bbWeight=0.25 PerfScore 0.06
 G_M63807_IG05:
-       mov      ebx, 1
-       jmp      SHORT G_M63807_IG07
-						;; size=7 bbWeight=0.50 PerfScore 1.12
-G_M63807_IG06:
-       test     rdi, rdi
-       sete     bl
-       movzx    rbx, bl
-						;; size=9 bbWeight=0.50 PerfScore 0.75
-G_M63807_IG07:
-       test     ebx, ebx
-       sete     al
-       movzx    rax, al
-						;; size=8 bbWeight=1 PerfScore 1.50
-G_M63807_IG08:
-       add      rsp, 8
-       pop      rbx
        pop      rbp
        ret      
-						;; size=7 bbWeight=1 PerfScore 2.25
+						;; size=2 bbWeight=0.25 PerfScore 0.38
+G_M63807_IG06:
+       test     rdi, rdi
+       je       SHORT G_M63807_IG04
+						;; size=5 bbWeight=0.50 PerfScore 0.62
+G_M63807_IG07:
+       mov      eax, 1
+						;; size=5 bbWeight=0.25 PerfScore 0.06
+G_M63807_IG08:
+       pop      rbp
+       ret      
+						;; size=2 bbWeight=0.25 PerfScore 0.38
 
-; Total bytes of code 72, prolog size 8, PerfScore 17.38, instruction count 29, allocated bytes for code 72 (MethodHash=b11d06c0) for method System.Reflection.Module:op_Inequality(System.Reflection.Module,System.Reflection.Module):ubyte (FullOpts)
+; Total bytes of code 49, prolog size 4, PerfScore 9.38, instruction count 21, allocated bytes for code 49 (MethodHash=b11d06c0) for method System.Reflection.Module:op_Inequality(System.Reflection.Module,System.Reflection.Module):ubyte (FullOpts)
 ; ============================================================
-23 (-31.94 % of base) - System.Reflection.PropertyInfo:op_Inequality(System.Reflection.PropertyInfo,System.Reflection.PropertyInfo):ubyte
 ; Assembly listing for method System.Reflection.PropertyInfo:op_Inequality(System.Reflection.PropertyInfo,System.Reflection.PropertyInfo):ubyte (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; 0 single block inlinees; 1 inlinees without PGO data
 ; Final local variable assignments
 ;
 ;  V00 arg0         [V00,T00] (  7,  4.50)     ref  ->  rdi         class-hnd single-def <System.Reflection.PropertyInfo>
 ;  V01 arg1         [V01,T01] (  5,  4   )     ref  ->  rsi         class-hnd single-def <System.Reflection.PropertyInfo>
 ;# V02 OutArgs      [V02    ] (  1,  1   )  struct ( 0) [rsp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-;  V03 tmp1         [V03,T02] (  5,  3   )   ubyte  ->  rbx         "Inline return value spill temp"
+;  V03 tmp1         [V03,T02] (  2,  1   )   ubyte  ->  rax         "Inline return value spill temp"
 ;
-; Lcl frame size = 8
+; Lcl frame size = 0
 
 G_M34892_IG01:
        push     rbp
-       push     rbx
-       push     rax
-       lea      rbp, [rsp+0x10]
-						;; size=8 bbWeight=1 PerfScore 3.50
+       mov      rbp, rsp
+						;; size=4 bbWeight=1 PerfScore 1.25
 G_M34892_IG02:
        test     rsi, rsi
        je       SHORT G_M34892_IG06
 						;; size=5 bbWeight=1 PerfScore 1.25
 G_M34892_IG03:
        cmp      rdi, rsi
-       je       SHORT G_M34892_IG05
+       je       SHORT G_M34892_IG04
        test     rdi, rdi
-       jne      SHORT G_M34892_IG04
-       xor      ebx, ebx
-       jmp      SHORT G_M34892_IG07
-						;; size=14 bbWeight=0.50 PerfScore 2.38
-G_M34892_IG04:
+       je       SHORT G_M34892_IG07
        mov      rax, qword ptr [rdi]
        mov      rax, qword ptr [rax+0x40]
        call     [rax+0x10]System.Object:Equals(System.Object):ubyte:this
-       mov      ebx, eax
-       jmp      SHORT G_M34892_IG07
-						;; size=14 bbWeight=0.50 PerfScore 4.62
+       test     eax, eax
+       je       SHORT G_M34892_IG07
+						;; size=24 bbWeight=0.50 PerfScore 5.38
+G_M34892_IG04:
+       xor      eax, eax
+						;; size=2 bbWeight=0.25 PerfScore 0.06
 G_M34892_IG05:
-       mov      ebx, 1
-       jmp      SHORT G_M34892_IG07
-						;; size=7 bbWeight=0.50 PerfScore 1.12
-G_M34892_IG06:
-       test     rdi, rdi
-       sete     bl
-       movzx    rbx, bl
-						;; size=9 bbWeight=0.50 PerfScore 0.75
-G_M34892_IG07:
-       test     ebx, ebx
-       sete     al
-       movzx    rax, al
-						;; size=8 bbWeight=1 PerfScore 1.50
-G_M34892_IG08:
-       add      rsp, 8
-       pop      rbx
        pop      rbp
        ret      
-						;; size=7 bbWeight=1 PerfScore 2.25
+						;; size=2 bbWeight=0.25 PerfScore 0.38
+G_M34892_IG06:
+       test     rdi, rdi
+       je       SHORT G_M34892_IG04
+						;; size=5 bbWeight=0.50 PerfScore 0.62
+G_M34892_IG07:
+       mov      eax, 1
+						;; size=5 bbWeight=0.25 PerfScore 0.06
+G_M34892_IG08:
+       pop      rbp
+       ret      
+						;; size=2 bbWeight=0.25 PerfScore 0.38
 
-; Total bytes of code 72, prolog size 8, PerfScore 17.38, instruction count 29, allocated bytes for code 72 (MethodHash=7d6977b3) for method System.Reflection.PropertyInfo:op_Inequality(System.Reflection.PropertyInfo,System.Reflection.PropertyInfo):ubyte (FullOpts)
+; Total bytes of code 49, prolog size 4, PerfScore 9.38, instruction count 21, allocated bytes for code 49 (MethodHash=7d6977b3) for method System.Reflection.PropertyInfo:op_Inequality(System.Reflection.PropertyInfo,System.Reflection.PropertyInfo):ubyte (FullOpts)
 ; ============================================================
-22 (-5.28 % of base) - System.Data.XDRSchema:IsTextOnlyContent(System.Xml.XmlElement):ubyte
 ; Assembly listing for method System.Data.XDRSchema:IsTextOnlyContent(System.Xml.XmlElement):ubyte (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; 5 single block inlinees; 2 inlinees without PGO data
 ; Final local variable assignments
 ;
 ;  V00 arg0         [V00,T00] (  5,  4.50)     ref  ->  rbx         class-hnd single-def <System.Xml.XmlElement>
 ;  V01 loc0         [V01,T01] ( 13,  4.75)     ref  ->  r14         class-hnd exact single-def <System.String>
 ;# V02 OutArgs      [V02    ] (  1,  1   )  struct ( 0) [rsp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-;* V03 tmp1         [V03,T08] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;  V04 tmp2         [V04,T07] (  3,  1.50)   ubyte  ->  rdi         "Inline return value spill temp"
+;* V03 tmp1         [V03,T07] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
+;* V04 tmp2         [V04,T08] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
 ;  V05 tmp3         [V05,T02] (  3,  3   )     ref  ->  rax         class-hnd exact single-def "Inlining Arg" <System.String>
 ;* V06 tmp4         [V06    ] (  0,  0   )     ref  ->  zero-ref    single-def "spilling varStr"
 ;* V07 tmp5         [V07    ] (  0,  0   )     int  ->  zero-ref    "spilling unroll qmark"
 ;* V08 tmp6         [V08    ] (  0,  0   )     ref  ->  zero-ref    single-def "spilling varStr"
 ;* V09 tmp7         [V09    ] (  0,  0   )     int  ->  zero-ref    "spilling unroll qmark"
 ;* V10 tmp8         [V10    ] (  0,  0   )     ref  ->  zero-ref    single-def "spilling varStr"
 ;  V11 tmp9         [V11,T05] (  2,  2   )     int  ->  rax         "spilling unroll qmark"
 ;* V12 tmp10        [V12    ] (  0,  0   )     ref  ->  zero-ref    single-def "spilling varStr"
 ;* V13 tmp11        [V13    ] (  0,  0   )     int  ->  zero-ref    "spilling unroll qmark"
 ;* V14 tmp12        [V14    ] (  0,  0   )     ref  ->  zero-ref    single-def "spilling varStr"
 ;  V15 tmp13        [V15,T06] (  2,  2   )     int  ->  rax         "spilling unroll qmark"
 ;  V16 tmp14        [V16,T11] (  2,  0   )     ref  ->  rdi         single-def "argument with side effect"
 ;  V17 cse0         [V17,T04] (  7,  2.25)     int  ->  r13         "CSE #02: moderate"
 ;  V18 cse1         [V18,T03] (  3,  2.50)    long  ->  r15         "CSE #01: aggressive"
 ;  V19 rat0         [V19,T09] (  3,  3   )  simd16  ->  mm0         "ReplaceWithLclVar is creating a new local variable"
 ;  V20 rat1         [V20,T10] (  3,  3   )  simd16  ->  mm0         "ReplaceWithLclVar is creating a new local variable"
 ;
 ; Lcl frame size = 0
 
 G_M1327_IG01:
        push     rbp
        push     r15
        push     r14
        push     r13
        push     rbx
        lea      rbp, [rsp+0x20]
        mov      rbx, rdi
 						;; size=16 bbWeight=1 PerfScore 5.75
 G_M1327_IG02:
        mov      rdi, rbx
        mov      rsi, 0xD1FFAB1E      ; 'content'
        mov      r15, qword ptr [rbx]
        mov      rax, qword ptr [r15+0x80]
        call     [rax+0x38]System.Xml.XmlElement:GetAttribute(System.String):System.String:this
        mov      r14, rax
        test     r14, r14
-       jne      SHORT G_M1327_IG04
+       jne      SHORT G_M1327_IG06
 						;; size=34 bbWeight=1 PerfScore 9.00
 G_M1327_IG03:
        mov      rdi, rbx
        mov      rsi, 0xD1FFAB1E      ; 'type'
        mov      rdx, 0xD1FFAB1E      ; 'urn:schemas-microsoft-com:datatypes'
        mov      rax, qword ptr [r15+0x88]
        call     [rax+0x30]System.Xml.XmlElement:GetAttribute(System.String,System.String):System.String:this
        test     rax, rax
-       je       G_M1327_IG18
+       je       SHORT G_M1327_IG04
        cmp      dword ptr [rax+0x08], 0
-       sete     dil
-       movzx    rdi, dil
-       jmp      G_M1327_IG19
-						;; size=59 bbWeight=0.50 PerfScore 6.62
+       jne      G_M1327_IG17
+						;; size=48 bbWeight=0.50 PerfScore 5.50
 G_M1327_IG04:
+       xor      eax, eax
+						;; size=2 bbWeight=0.25 PerfScore 0.06
+G_M1327_IG05:
+       pop      rbx
+       pop      r13
+       pop      r14
+       pop      r15
+       pop      rbp
+       ret      
+						;; size=9 bbWeight=0.25 PerfScore 0.88
+G_M1327_IG06:
        mov      r13d, dword ptr [r14+0x08]
        test     r13d, r13d
        je       SHORT G_M1327_IG03
 						;; size=9 bbWeight=0.50 PerfScore 1.62
-G_M1327_IG05:
-       cmp      r13d, 5
-       jne      SHORT G_M1327_IG07
-						;; size=6 bbWeight=0.25 PerfScore 0.31
-G_M1327_IG06:
-       mov      rax, 0xD1FFAB1E
-       xor      rax, qword ptr [r14+0x0C]
-       mov      edi, dword ptr [r14+0x12]
-       xor      edi, 0xD1FFAB1E
-       or       rax, rdi
-       je       G_M1327_IG16
-						;; size=33 bbWeight=0.12 PerfScore 0.84
 G_M1327_IG07:
-       cmp      r13d, 7
+       cmp      r13d, 5
        jne      SHORT G_M1327_IG09
 						;; size=6 bbWeight=0.25 PerfScore 0.31
 G_M1327_IG08:
        mov      rax, 0xD1FFAB1E
        xor      rax, qword ptr [r14+0x0C]
-       mov      rdi, 0xD1FFAB1E
-       xor      rdi, qword ptr [r14+0x12]
+       mov      edi, dword ptr [r14+0x12]
+       xor      edi, 0xD1FFAB1E
        or       rax, rdi
-       je       G_M1327_IG16
-						;; size=37 bbWeight=0.12 PerfScore 0.97
+       je       G_M1327_IG19
+						;; size=33 bbWeight=0.12 PerfScore 0.84
 G_M1327_IG09:
-       cmp      r13d, 11
+       cmp      r13d, 7
        jne      SHORT G_M1327_IG11
 						;; size=6 bbWeight=0.25 PerfScore 0.31
 G_M1327_IG10:
+       mov      rax, 0xD1FFAB1E
+       xor      rax, qword ptr [r14+0x0C]
+       mov      rdi, 0xD1FFAB1E
+       xor      rdi, qword ptr [r14+0x12]
+       or       rax, rdi
+       je       G_M1327_IG19
+						;; size=37 bbWeight=0.12 PerfScore 0.97
+G_M1327_IG11:
+       cmp      r13d, 11
+       jne      SHORT G_M1327_IG13
+						;; size=6 bbWeight=0.25 PerfScore 0.31
+G_M1327_IG12:
        vmovups  xmm0, xmmword ptr [r14+0x0C]
        vpxor    xmm0, xmm0, xmmword ptr [reloc @RWD00]
        vmovups  xmm1, xmmword ptr [r14+0x12]
        vpxor    xmm1, xmm1, xmmword ptr [reloc @RWD16]
        vpor     xmm0, xmm1, xmm0
        vptest   xmm0, xmm0
        sete     al
        movzx    rax, al
        test     eax, eax
-       jne      SHORT G_M1327_IG16
+       jne      SHORT G_M1327_IG19
 						;; size=47 bbWeight=0.50 PerfScore 8.92
-G_M1327_IG11:
+G_M1327_IG13:
        cmp      r13d, 5
-       jne      SHORT G_M1327_IG13
+       jne      SHORT G_M1327_IG15
 						;; size=6 bbWeight=0.25 PerfScore 0.31
-G_M1327_IG12:
+G_M1327_IG14:
        mov      rax, 0xD1FFAB1E
        xor      rax, qword ptr [r14+0x0C]
        mov      edi, dword ptr [r14+0x12]
        xor      edi, 0xD1FFAB1E
        or       rax, rdi
-       je       SHORT G_M1327_IG16
+       je       SHORT G_M1327_IG19
 						;; size=29 bbWeight=0.12 PerfScore 0.84
-G_M1327_IG13:
+G_M1327_IG15:
        cmp      r13d, 8
        jne      SHORT G_M1327_IG21
 						;; size=6 bbWeight=0.25 PerfScore 0.31
-G_M1327_IG14:
+G_M1327_IG16:
        vmovups  xmm0, xmmword ptr [r14+0x0C]
        vpxor    xmm0, xmm0, xmmword ptr [reloc @RWD32]
        vptest   xmm0, xmm0
        sete     al
        movzx    rax, al
        test     eax, eax
        je       SHORT G_M1327_IG21
+						;; size=29 bbWeight=0.50 PerfScore 5.75
+G_M1327_IG17:
        mov      eax, 1
-						;; size=34 bbWeight=0.50 PerfScore 5.88
-G_M1327_IG15:
+						;; size=5 bbWeight=0.25 PerfScore 0.06
+G_M1327_IG18:
        pop      rbx
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
-						;; size=9 bbWeight=0.50 PerfScore 1.75
-G_M1327_IG16:
+						;; size=9 bbWeight=0.25 PerfScore 0.88
+G_M1327_IG19:
        xor      eax, eax
 						;; size=2 bbWeight=0.50 PerfScore 0.12
-G_M1327_IG17:
-       pop      rbx
-       pop      r13
-       pop      r14
-       pop      r15
-       pop      rbp
-       ret      
-						;; size=9 bbWeight=0.50 PerfScore 1.75
-G_M1327_IG18:
-       mov      edi, 1
-						;; size=5 bbWeight=0.50 PerfScore 0.12
-G_M1327_IG19:
-       test     edi, edi
-       sete     al
-       movzx    rax, al
-						;; size=8 bbWeight=0.50 PerfScore 0.75
 G_M1327_IG20:
        pop      rbx
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
 						;; size=9 bbWeight=0.50 PerfScore 1.75
 G_M1327_IG21:
        mov      edi, 0x6D82
        mov      rsi, 0xD1FFAB1E
        call     CORINFO_HELP_STRCNS
        mov      rdi, rax
        mov      rsi, r14
        mov      rax, 0xD1FFAB1E      ; code for System.Data.ExceptionBuilder:InvalidAttributeValue(System.String,System.String):System.Exception
        call     [rax]System.Data.ExceptionBuilder:InvalidAttributeValue(System.String,System.String):System.Exception
        mov      rdi, rax
        call     CORINFO_HELP_THROW
        int3     
 						;; size=47 bbWeight=0 PerfScore 0.00
 RWD00  	dq	006D0065006C0065h, 004F0074006E0065h
 RWD16  	dq	0074006E0065006Dh, 0079006C006E004Fh
 RWD32  	dq	0074007800650074h, 0079006C006E004Fh
 
 
-; Total bytes of code 417, prolog size 13, PerfScore 48.26, instruction count 108, allocated bytes for code 417 (MethodHash=9ffcfad0) for method System.Data.XDRSchema:IsTextOnlyContent(System.Xml.XmlElement):ubyte (FullOpts)
+; Total bytes of code 395, prolog size 13, PerfScore 44.51, instruction count 103, allocated bytes for code 395 (MethodHash=9ffcfad0) for method System.Data.XDRSchema:IsTextOnlyContent(System.Xml.XmlElement):ubyte (FullOpts)
 ; ============================================================
-21 (-41.18 % of base) - System.ModuleHandle:op_Inequality(System.ModuleHandle,System.ModuleHandle):ubyte
 ; Assembly listing for method System.ModuleHandle:op_Inequality(System.ModuleHandle,System.ModuleHandle):ubyte (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; 3 single block inlinees; 1 inlinees without PGO data
 ; Final local variable assignments
 ;
 ;* V00 arg0         [V00    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op single-def <System.ModuleHandle>
 ;* V01 arg1         [V01    ] (  0,  0   )  struct ( 8) zero-ref    single-def <System.ModuleHandle>
 ;# V02 OutArgs      [V02    ] (  1,  1   )  struct ( 0) [rsp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-;  V03 tmp1         [V03,T02] (  3,  2   )   ubyte  ->  rax         "Inline return value spill temp"
+;* V03 tmp1         [V03,T02] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
 ;* V04 tmp2         [V04    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact single-def "Inlining Arg" <System.Reflection.RuntimeModule>
 ;* V05 tmp3         [V05    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact single-def "Inlining Arg" <System.Reflection.RuntimeModule>
 ;  V06 tmp4         [V06,T01] (  3,  2.50)     ref  ->  rdi         single-def "field V00.m_ptr (fldOffset=0x0)" P-INDEP
-;  V07 tmp5         [V07,T00] (  4,  2.50)     ref  ->  rsi         single-def "field V01.m_ptr (fldOffset=0x0)" P-INDEP
+;  V07 tmp5         [V07,T00] (  3,  2   )     ref  ->  rsi         single-def "field V01.m_ptr (fldOffset=0x0)" P-INDEP
 ;
 ; Lcl frame size = 0
 
 G_M7260_IG01:
        push     rbp
        mov      rbp, rsp
 						;; size=4 bbWeight=1 PerfScore 1.25
 G_M7260_IG02:
        test     rdi, rdi
-       je       SHORT G_M7260_IG04
+       je       SHORT G_M7260_IG06
 						;; size=5 bbWeight=1 PerfScore 1.25
 G_M7260_IG03:
-       xor      eax, eax
-       xor      ecx, ecx
-       test     rsi, rsi
-       cmovne   eax, ecx
-       mov      ecx, 1
        cmp      rsi, rdi
-       cmove    eax, ecx
-       jmp      SHORT G_M7260_IG05
-						;; size=23 bbWeight=0.50 PerfScore 1.88
+       je       SHORT G_M7260_IG07
+						;; size=5 bbWeight=0.50 PerfScore 0.62
 G_M7260_IG04:
-       test     rsi, rsi
-       sete     al
-       movzx    rax, al
-						;; size=9 bbWeight=0.50 PerfScore 0.75
+       mov      eax, 1
+						;; size=5 bbWeight=0.25 PerfScore 0.06
 G_M7260_IG05:
-       test     eax, eax
-       sete     al
-       movzx    rax, al
-						;; size=8 bbWeight=1 PerfScore 1.50
-G_M7260_IG06:
        pop      rbp
        ret      
-						;; size=2 bbWeight=1 PerfScore 1.50
+						;; size=2 bbWeight=0.25 PerfScore 0.38
+G_M7260_IG06:
+       test     rsi, rsi
+       jne      SHORT G_M7260_IG04
+						;; size=5 bbWeight=0.50 PerfScore 0.62
+G_M7260_IG07:
+       xor      eax, eax
+						;; size=2 bbWeight=0.25 PerfScore 0.06
+G_M7260_IG08:
+       pop      rbp
+       ret      
+						;; size=2 bbWeight=0.25 PerfScore 0.38
 
-; Total bytes of code 51, prolog size 4, PerfScore 8.12, instruction count 20, allocated bytes for code 51 (MethodHash=073ae3a3) for method System.ModuleHandle:op_Inequality(System.ModuleHandle,System.ModuleHandle):ubyte (FullOpts)
+; Total bytes of code 30, prolog size 4, PerfScore 4.62, instruction count 14, allocated bytes for code 30 (MethodHash=073ae3a3) for method System.ModuleHandle:op_Inequality(System.ModuleHandle,System.ModuleHandle):ubyte (FullOpts)
 ; ============================================================
-21 (-6.02 % of base) - System.Net.Http.RuntimeSettingParser:QueryRuntimeSettingInt32(System.String,System.String,int):int
 ; Assembly listing for method System.Net.Http.RuntimeSettingParser:QueryRuntimeSettingInt32(System.String,System.String,int):int (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; 3 single block inlinees; 7 inlinees without PGO data
 ; Final local variable assignments
 ;
 ;  V00 arg0         [V00,T00] (  3,  3   )     ref  ->  rdi         class-hnd single-def <System.String>
 ;  V01 arg1         [V01,T01] (  3,  2.50)     ref  ->  rbx         class-hnd single-def <System.String>
 ;  V02 arg2         [V02,T02] (  3,  2.50)     int  ->  r15         single-def
 ;* V03 loc0         [V03    ] (  0,  0   )     int  ->  zero-ref   
 ;  V04 loc1         [V04,T08] (  3,  1.50)     ref  ->  r14         class-hnd exact <System.String>
-;  V05 loc2         [V05,T09] (  3,  1.50)     ref  ->  r13         class-hnd single-def <System.IConvertible>
+;  V05 loc2         [V05,T09] (  3,  1.50)     ref  ->  r14         class-hnd single-def <System.IConvertible>
 ;  V06 loc3         [V06,T03] (  7,  4   )     ref  ->  r14         class-hnd single-def <System.Object>
 ;# V07 OutArgs      [V07    ] (  1,  1   )  struct ( 0) [rsp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
 ;* V08 tmp1         [V08    ] (  0,  0   )     int  ->  zero-ref    "spilling qmarkNull"
 ;* V09 tmp2         [V09    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "spilling qmarkNull" <System.String>
 ;  V10 tmp3         [V10,T04] (  3,  3   )     ref  ->  rax         class-hnd exact single-def "Inlining Arg" <System.Globalization.NumberFormatInfo>
 ;* V11 tmp4         [V11    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
 ;* V12 tmp5         [V12    ] (  0,  0   )  struct (16) zero-ref    multireg-arg "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
 ;* V13 tmp6         [V13    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
 ;* V14 tmp7         [V14    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
-;  V15 tmp8         [V15,T05] (  2,  2   )   byref  ->  r13         single-def "Inlining Arg"
-;  V16 tmp9         [V16,T07] (  2,  2   )     int  ->  r14         "Inlining Arg"
+;  V15 tmp8         [V15,T05] (  2,  2   )   byref  ->  rbx         single-def "Inlining Arg"
+;  V16 tmp9         [V16,T07] (  2,  2   )     int  ->  r15         "Inlining Arg"
 ;  V17 tmp10        [V17,T10] (  3,  1.50)     ref  ->  rax         class-hnd "Inline return value spill temp" <System.Globalization.NumberFormatInfo>
-;  V18 tmp11        [V18    ] (  2,  1   )     int  ->  [rbp-0x28]  do-not-enreg[X] addr-exposed ld-addr-op "Inline ldloca(s) first use temp"
+;  V18 tmp11        [V18    ] (  2,  1   )     int  ->  [rbp-0x20]  do-not-enreg[X] addr-exposed ld-addr-op "Inline ldloca(s) first use temp"
 ;  V19 tmp12        [V19,T12] (  3,  1   )     int  ->  rax         "Inline stloc first use temp"
 ;* V20 tmp13        [V20    ] (  0,  0   )     int  ->  zero-ref    "Inline return value spill temp"
 ;* V21 tmp14        [V21    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V11._reference (fldOffset=0x0)" P-INDEP
 ;* V22 tmp15        [V22    ] (  0,  0   )     int  ->  zero-ref    "field V11._length (fldOffset=0x8)" P-INDEP
-;  V23 tmp16        [V23,T11] (  3,  1   )   byref  ->  r13         single-def "field V12._reference (fldOffset=0x0)" P-INDEP
-;  V24 tmp17        [V24,T13] (  3,  1   )     int  ->  r14         "field V12._length (fldOffset=0x8)" P-INDEP
-;  V25 tmp18        [V25,T14] (  2,  1   )   byref  ->  r13         single-def "field V13._reference (fldOffset=0x0)" P-INDEP
-;  V26 tmp19        [V26,T15] (  2,  1   )     int  ->  r14         "field V13._length (fldOffset=0x8)" P-INDEP
+;  V23 tmp16        [V23,T11] (  3,  1   )   byref  ->  rbx         single-def "field V12._reference (fldOffset=0x0)" P-INDEP
+;  V24 tmp17        [V24,T13] (  3,  1   )     int  ->  r15         "field V12._length (fldOffset=0x8)" P-INDEP
+;  V25 tmp18        [V25,T14] (  2,  1   )   byref  ->  rbx         single-def "field V13._reference (fldOffset=0x0)" P-INDEP
+;  V26 tmp19        [V26,T15] (  2,  1   )     int  ->  r15         "field V13._length (fldOffset=0x8)" P-INDEP
 ;* V27 tmp20        [V27    ] (  0,  0   )   byref  ->  zero-ref    "field V14._reference (fldOffset=0x0)" P-INDEP
 ;* V28 tmp21        [V28    ] (  0,  0   )     int  ->  zero-ref    "field V14._length (fldOffset=0x8)" P-INDEP
 ;  V29 tmp22        [V29,T06] (  2,  2   )     ref  ->  rsi         single-def "argument with side effect"
 ;
-; Lcl frame size = 16
+; Lcl frame size = 8
 
 G_M30760_IG01:
        push     rbp
        push     r15
        push     r14
-       push     r13
        push     rbx
-       sub      rsp, 16
-       lea      rbp, [rsp+0x30]
+       push     rax
+       lea      rbp, [rsp+0x20]
        mov      rbx, rsi
        mov      r15d, edx
-						;; size=23 bbWeight=1 PerfScore 6.25
+						;; size=18 bbWeight=1 PerfScore 6.00
 G_M30760_IG02:
        mov      rax, 0xD1FFAB1E      ; code for System.AppContext:GetData(System.String):System.Object
        call     [rax]System.AppContext:GetData(System.String):System.Object
        mov      r14, rax
        test     r14, r14
-       je       G_M30760_IG11
-						;; size=24 bbWeight=1 PerfScore 4.75
+       je       SHORT G_M30760_IG07
+						;; size=20 bbWeight=1 PerfScore 4.75
 G_M30760_IG03:
        mov      rax, 0xD1FFAB1E      ; System.UInt32
        cmp      qword ptr [r14], rax
        jne      SHORT G_M30760_IG06
 						;; size=15 bbWeight=0.25 PerfScore 1.06
 G_M30760_IG04:
        mov      eax, dword ptr [r14+0x08]
 						;; size=4 bbWeight=0.50 PerfScore 1.00
 G_M30760_IG05:
-       add      rsp, 16
+       add      rsp, 8
        pop      rbx
-       pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
-						;; size=13 bbWeight=0.50 PerfScore 1.88
+						;; size=11 bbWeight=0.50 PerfScore 1.62
 G_M30760_IG06:
-       mov      rax, 0xD1FFAB1E      ; System.String
-       cmp      qword ptr [r14], rax
-       jne      SHORT G_M30760_IG11
+       mov      rsi, 0xD1FFAB1E      ; System.String
+       cmp      qword ptr [r14], rsi
+       je       SHORT G_M30760_IG11
 						;; size=15 bbWeight=0.25 PerfScore 1.06
 G_M30760_IG07:
-       mov      rax, 0xD1FFAB1E      ; code for System.Globalization.NumberFormatInfo:get_InvariantInfo():System.Globalization.NumberFormatInfo
-       call     [rax]System.Globalization.NumberFormatInfo:get_InvariantInfo():System.Globalization.NumberFormatInfo
-       lea      r13, bword ptr [r14+0x0C]
-       mov      r14d, dword ptr [r14+0x08]
-       test     rax, rax
-       jne      SHORT G_M30760_IG08
-       mov      rax, 0xD1FFAB1E      ; code for System.Globalization.NumberFormatInfo:get_CurrentInfo():System.Globalization.NumberFormatInfo
-       call     [rax]System.Globalization.NumberFormatInfo:get_CurrentInfo():System.Globalization.NumberFormatInfo
-       jmp      SHORT G_M30760_IG09
-						;; size=39 bbWeight=0.50 PerfScore 6.12
-G_M30760_IG08:
-       mov      rdi, rax
-       mov      rax, 0xD1FFAB1E      ; code for System.Globalization.NumberFormatInfo:<GetInstance>g__GetProviderNonNull|58_0(System.IFormatProvider):System.Globalization.NumberFormatInfo
-       call     [rax]System.Globalization.NumberFormatInfo:<GetInstance>g__GetProviderNonNull|58_0(System.IFormatProvider):System.Globalization.NumberFormatInfo
-						;; size=15 bbWeight=0.50 PerfScore 1.75
-G_M30760_IG09:
-       mov      rdi, r13
-       mov      esi, r14d
-       lea      r8, [rbp-0x28]
-       mov      rcx, rax
-       mov      edx, 511
-       mov      rax, 0xD1FFAB1E      ; code for System.Number:TryParseBinaryIntegerNumber[ushort,int](System.ReadOnlySpan`1[ushort],int,System.Globalization.NumberFormatInfo,byref):int
-       call     [rax]System.Number:TryParseBinaryIntegerNumber[ushort,int](System.ReadOnlySpan`1[ushort],int,System.Globalization.NumberFormatInfo,byref):int
-       test     eax, eax
-       jne      G_M30760_IG15
-       mov      eax, dword ptr [rbp-0x28]
-						;; size=41 bbWeight=0.50 PerfScore 3.50
-G_M30760_IG10:
-       add      rsp, 16
-       pop      rbx
-       pop      r13
-       pop      r14
-       pop      r15
-       pop      rbp
-       ret      
-						;; size=13 bbWeight=0.50 PerfScore 1.88
-G_M30760_IG11:
        mov      rsi, r14
        mov      rdi, 0xD1FFAB1E      ; System.IConvertible
        mov      rax, 0xD1FFAB1E      ; code for CORINFO_HELP_ISINSTANCEOFINTERFACE
        call     [rax]CORINFO_HELP_ISINSTANCEOFINTERFACE
-       mov      r13, rax
-       test     r13, r13
-       je       SHORT G_M30760_IG13
+       mov      r14, rax
+       test     r14, r14
+       je       SHORT G_M30760_IG09
        mov      rax, 0xD1FFAB1E      ; code for System.Globalization.NumberFormatInfo:get_InvariantInfo():System.Globalization.NumberFormatInfo
        call     [rax]System.Globalization.NumberFormatInfo:get_InvariantInfo():System.Globalization.NumberFormatInfo
        mov      rsi, rax
-       mov      rdi, r13
+       mov      rdi, r14
        mov      r11, 0xD1FFAB1E      ; code for System.IConvertible:ToInt32(System.IFormatProvider):int:this
        call     [r11]System.IConvertible:ToInt32(System.IFormatProvider):int:this
        nop      
 						;; size=65 bbWeight=0.50 PerfScore 6.25
-G_M30760_IG12:
-       add      rsp, 16
+G_M30760_IG08:
+       add      rsp, 8
        pop      rbx
-       pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
-						;; size=13 bbWeight=0.50 PerfScore 1.88
-G_M30760_IG13:
+						;; size=11 bbWeight=0.50 PerfScore 1.62
+G_M30760_IG09:
        mov      rdi, rbx
        mov      esi, r15d
        mov      rax, 0xD1FFAB1E      ; code for System.Net.Http.RuntimeSettingParser:ParseInt32EnvironmentVariableValue(System.String,int):int
        call     [rax]System.Net.Http.RuntimeSettingParser:ParseInt32EnvironmentVariableValue(System.String,int):int
        nop      
 						;; size=19 bbWeight=0.50 PerfScore 2.00
-G_M30760_IG14:
-       add      rsp, 16
+G_M30760_IG10:
+       add      rsp, 8
        pop      rbx
-       pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
-						;; size=13 bbWeight=0.50 PerfScore 1.88
+						;; size=11 bbWeight=0.50 PerfScore 1.62
+G_M30760_IG11:
+       mov      rax, 0xD1FFAB1E      ; code for System.Globalization.NumberFormatInfo:get_InvariantInfo():System.Globalization.NumberFormatInfo
+       call     [rax]System.Globalization.NumberFormatInfo:get_InvariantInfo():System.Globalization.NumberFormatInfo
+       lea      rbx, bword ptr [r14+0x0C]
+       mov      r15d, dword ptr [r14+0x08]
+       test     rax, rax
+       jne      SHORT G_M30760_IG12
+       mov      rax, 0xD1FFAB1E      ; code for System.Globalization.NumberFormatInfo:get_CurrentInfo():System.Globalization.NumberFormatInfo
+       call     [rax]System.Globalization.NumberFormatInfo:get_CurrentInfo():System.Globalization.NumberFormatInfo
+       jmp      SHORT G_M30760_IG13
+						;; size=39 bbWeight=0.50 PerfScore 6.12
+G_M30760_IG12:
+       mov      rdi, rax
+       mov      rax, 0xD1FFAB1E      ; code for System.Globalization.NumberFormatInfo:<GetInstance>g__GetProviderNonNull|58_0(System.IFormatProvider):System.Globalization.NumberFormatInfo
+       call     [rax]System.Globalization.NumberFormatInfo:<GetInstance>g__GetProviderNonNull|58_0(System.IFormatProvider):System.Globalization.NumberFormatInfo
+						;; size=15 bbWeight=0.50 PerfScore 1.75
+G_M30760_IG13:
+       mov      rdi, rbx
+       mov      esi, r15d
+       lea      r8, [rbp-0x20]
+       mov      rcx, rax
+       mov      edx, 511
+       mov      rax, 0xD1FFAB1E      ; code for System.Number:TryParseBinaryIntegerNumber[ushort,int](System.ReadOnlySpan`1[ushort],int,System.Globalization.NumberFormatInfo,byref):int
+       call     [rax]System.Number:TryParseBinaryIntegerNumber[ushort,int](System.ReadOnlySpan`1[ushort],int,System.Globalization.NumberFormatInfo,byref):int
+       test     eax, eax
+       jne      SHORT G_M30760_IG15
+       mov      eax, dword ptr [rbp-0x20]
+						;; size=37 bbWeight=0.50 PerfScore 3.50
+G_M30760_IG14:
+       add      rsp, 8
+       pop      rbx
+       pop      r14
+       pop      r15
+       pop      rbp
+       ret      
+						;; size=11 bbWeight=0.50 PerfScore 1.62
 G_M30760_IG15:
        cmp      eax, 1
        je       SHORT G_M30760_IG16
        mov      rax, 0xD1FFAB1E      ; code for System.Number:ThrowOverflowException[int]()
        call     [rax]System.Number:ThrowOverflowException[int]()
        int3     
 						;; size=18 bbWeight=0 PerfScore 0.00
 G_M30760_IG16:
-       mov      rdi, r13
-       mov      esi, r14d
+       mov      rdi, rbx
+       mov      esi, r15d
        mov      rax, 0xD1FFAB1E      ; code for System.Number:ThrowFormatException[ushort](System.ReadOnlySpan`1[ushort])
        call     [rax]System.Number:ThrowFormatException[ushort](System.ReadOnlySpan`1[ushort])
        int3     
 						;; size=19 bbWeight=0 PerfScore 0.00
 
-; Total bytes of code 349, prolog size 17, PerfScore 41.25, instruction count 100, allocated bytes for code 349 (MethodHash=f39587d7) for method System.Net.Http.RuntimeSettingParser:QueryRuntimeSettingInt32(System.String,System.String,int):int (FullOpts)
+; Total bytes of code 328, prolog size 12, PerfScore 40.00, instruction count 95, allocated bytes for code 328 (MethodHash=f39587d7) for method System.Net.Http.RuntimeSettingParser:QueryRuntimeSettingInt32(System.String,System.String,int):int (FullOpts)
 ; ============================================================
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment