Skip to content

Instantly share code, notes, and snippets.

@MihuBot
Created January 15, 2024 15:49
Show Gist options
  • Save MihuBot/1414b3bb401bc380a7398915ed4cdf91 to your computer and use it in GitHub Desktop.
Save MihuBot/1414b3bb401bc380a7398915ed4cdf91 to your computer and use it in GitHub Desktop.
JIT diffs CoreLib regressions for https://github.com/MihuBot/runtime-utils/issues/220

Top method regressions

238 (11.35 % of base) - System.Version:ParseVersion(System.ReadOnlySpan`1[ushort],ubyte):System.Version
 ; Assembly listing for method System.Version:ParseVersion(System.ReadOnlySpan`1[ushort],ubyte):System.Version (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; 59 single block inlinees; 71 inlinees without PGO data
 ; Final local variable assignments
 ;
 ;* V00 arg0         [V00    ] (  0,  0   )  struct (16) zero-ref    multireg-arg ld-addr-op single-def <System.ReadOnlySpan`1[ushort]>
 ;  V01 arg1         [V01,T02] ( 10,  6   )   ubyte  ->  r14         single-def
 ;* V02 loc0         [V02    ] (  0,  0   )     int  ->  zero-ref   
 ;  V03 loc1         [V03,T06] (  8,  4   )     int  ->  [rbp-0x2C] 
 ;  V04 loc2         [V04,T05] ( 10,  5   )     int  ->  [rbp-0x30] 
 ;  V05 loc3         [V05    ] ( 11,  5.50)     int  ->  [rbp-0x38]  do-not-enreg[X] addr-exposed ld-addr-op
 ;  V06 loc4         [V06    ] ( 10,  5   )     int  ->  [rbp-0x40]  do-not-enreg[X] addr-exposed ld-addr-op
 ;  V07 loc5         [V07    ] (  5,  2.50)     int  ->  [rbp-0x48]  do-not-enreg[X] addr-exposed ld-addr-op
 ;  V08 loc6         [V08    ] (  7,  3.50)     int  ->  [rbp-0x50]  do-not-enreg[X] addr-exposed ld-addr-op
 ;# V09 OutArgs      [V09    ] (  1,  1   )  struct ( 0) [rsp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
 ;* V10 tmp1         [V10    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
 ;* V11 tmp2         [V11    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
 ;* V12 tmp3         [V12    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
 ;  V13 tmp4         [V13,T13] (  3,  3   )     ref  ->  r13         class-hnd exact single-def "NewObj constructor temp" <System.Version>
 ;* V14 tmp5         [V14    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
 ;* V15 tmp6         [V15    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
 ;  V16 tmp7         [V16,T14] (  3,  3   )     ref  ->  r13         class-hnd exact single-def "NewObj constructor temp" <System.Version>
 ;* V17 tmp8         [V17    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
 ;* V18 tmp9         [V18    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
 ;  V19 tmp10        [V19,T15] (  3,  3   )     ref  ->  r13         class-hnd exact single-def "NewObj constructor temp" <System.Version>
 ;* V20 tmp11        [V20    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
 ;* V21 tmp12        [V21    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
 ;  V22 tmp13        [V22,T93] (  3,  0   )     ref  ->  rbx         class-hnd exact single-def "NewObj constructor temp" <System.ArgumentException>
 ;  V23 tmp14        [V23,T94] (  3,  0   )     ref  ->  r12         class-hnd exact single-def "NewObj constructor temp" <System.ArgumentException>
 ;* V24 tmp15        [V24    ] (  0,  0   )     int  ->  zero-ref    "Inline return value spill temp"
 ;* V25 tmp16        [V25    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
 ;* V26 tmp17        [V26,T46] (  0,  0   )  ushort  ->  zero-ref    ld-addr-op "Inlining Arg"
 ;* V27 tmp18        [V27    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
 ;* V28 tmp19        [V28    ] (  0,  0   )   byref  ->  zero-ref    single-def "Inlining Arg"
 ;* V29 tmp20        [V29,T47] (  0,  0   )   short  ->  zero-ref    "Inlining Arg"
 ;* V30 tmp21        [V30    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
 ;  V31 tmp22        [V31,T04] (  9,  5.50)     int  ->  r13         "Inline return value spill temp"
 ;* V32 tmp23        [V32    ] (  0,  0   )   short  ->  zero-ref    ld-addr-op "Inlining Arg"
 ;* V33 tmp24        [V33    ] (  0,  0   )   short  ->  zero-ref    ld-addr-op "Inlining Arg"
 ;* V34 tmp25        [V34    ] (  0,  0   )  ushort  ->  zero-ref    "Inlining Arg"
 ;* V35 tmp26        [V35    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
 ;  V36 tmp27        [V36,T08] (  4,  4   )     int  ->  rsi         "Inlining Arg"
 ;* V37 tmp28        [V37    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;  V38 tmp29        [V38,T20] (  2,  2   )   byref  ->  rdi         single-def "Inlining Arg"
+;  V38 tmp29        [V38,T32] (  2,  2   )   byref  ->  rdi         single-def "Inlining Arg"
 ;  V39 tmp30        [V39,T38] (  2,  2   )     int  ->  rdx         "Inlining Arg"
 ;* V40 tmp31        [V40    ] (  0,  0   )     int  ->  zero-ref    "Inline return value spill temp"
 ;* V41 tmp32        [V41    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
 ;* V42 tmp33        [V42,T86] (  0,  0   )  ushort  ->  zero-ref    ld-addr-op "Inlining Arg"
 ;* V43 tmp34        [V43    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
 ;* V44 tmp35        [V44    ] (  0,  0   )   byref  ->  zero-ref    single-def "Inlining Arg"
 ;* V45 tmp36        [V45,T87] (  0,  0   )   short  ->  zero-ref    "Inlining Arg"
 ;* V46 tmp37        [V46    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
-;  V47 tmp38        [V47,T59] (  3,  1.50)     int  ->  rax         "Inline return value spill temp"
+;  V47 tmp38        [V47,T71] (  3,  1.50)     int  ->  rax         "Inline return value spill temp"
 ;* V48 tmp39        [V48    ] (  0,  0   )   short  ->  zero-ref    ld-addr-op "Inlining Arg"
 ;* V49 tmp40        [V49    ] (  0,  0   )   short  ->  zero-ref    ld-addr-op "Inlining Arg"
 ;* V50 tmp41        [V50    ] (  0,  0   )  ushort  ->  zero-ref    "Inlining Arg"
 ;* V51 tmp42        [V51    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
 ;  V52 tmp43        [V52,T09] (  4,  4   )     int  ->  rsi         "Inlining Arg"
 ;* V53 tmp44        [V53    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;  V54 tmp45        [V54,T21] (  2,  2   )   byref  ->  rdi         single-def "Inlining Arg"
+;  V54 tmp45        [V54,T33] (  2,  2   )   byref  ->  rdi         single-def "Inlining Arg"
 ;  V55 tmp46        [V55,T39] (  2,  2   )     int  ->  rdx         "Inlining Arg"
 ;* V56 tmp47        [V56    ] (  0,  0   )     int  ->  zero-ref    "Inline return value spill temp"
 ;* V57 tmp48        [V57    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
 ;* V58 tmp49        [V58,T88] (  0,  0   )  ushort  ->  zero-ref    ld-addr-op "Inlining Arg"
 ;* V59 tmp50        [V59    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
 ;* V60 tmp51        [V60    ] (  0,  0   )   byref  ->  zero-ref    single-def "Inlining Arg"
 ;* V61 tmp52        [V61,T89] (  0,  0   )   short  ->  zero-ref    "Inlining Arg"
 ;* V62 tmp53        [V62    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
-;  V63 tmp54        [V63,T60] (  3,  1.50)     int  ->  rax         "Inline return value spill temp"
+;  V63 tmp54        [V63,T72] (  3,  1.50)     int  ->  rax         "Inline return value spill temp"
 ;* V64 tmp55        [V64    ] (  0,  0   )   short  ->  zero-ref    ld-addr-op "Inlining Arg"
 ;* V65 tmp56        [V65    ] (  0,  0   )   short  ->  zero-ref    ld-addr-op "Inlining Arg"
 ;* V66 tmp57        [V66    ] (  0,  0   )  ushort  ->  zero-ref    "Inlining Arg"
 ;* V67 tmp58        [V67    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
 ;  V68 tmp59        [V68,T10] (  4,  4   )     int  ->  rdi         "Inlining Arg"
 ;* V69 tmp60        [V69    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;  V70 tmp61        [V70,T22] (  2,  2   )   byref  ->  rsi         single-def "Inlining Arg"
+;  V70 tmp61        [V70,T34] (  2,  2   )   byref  ->  rsi         single-def "Inlining Arg"
 ;  V71 tmp62        [V71,T40] (  2,  2   )     int  ->  rdx         "Inlining Arg"
 ;* V72 tmp63        [V72    ] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
 ;* V73 tmp64        [V73    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
 ;* V74 tmp65        [V74,T90] (  0,  0   )  ushort  ->  zero-ref    ld-addr-op "Inlining Arg"
 ;* V75 tmp66        [V75    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
 ;  V76 tmp67        [V76,T79] (  2,  1   )   ubyte  ->  rax         "Inline return value spill temp"
 ;* V77 tmp68        [V77    ] (  0,  0   )   byref  ->  zero-ref    single-def "Inlining Arg"
 ;* V78 tmp69        [V78,T91] (  0,  0   )   short  ->  zero-ref    ld-addr-op "Inlining Arg"
 ;* V79 tmp70        [V79    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
 ;* V80 tmp71        [V80    ] (  0,  0   )   short  ->  zero-ref    ld-addr-op "Inlining Arg"
 ;* V81 tmp72        [V81    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
 ;* V82 tmp73        [V82    ] (  0,  0   )  struct (16) zero-ref    multireg-arg ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
 ;* V83 tmp74        [V83    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
 ;* V84 tmp75        [V84,T80] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;  V85 tmp76        [V85,T23] (  2,  2   )     ref  ->  rsi         class-hnd exact single-def "Inlining Arg" <System.Globalization.CultureInfo>
-;  V86 tmp77        [V86,T67] (  2,  1   )     ref  ->  rcx         class-hnd "Inline return value spill temp" <System.Globalization.NumberFormatInfo>
+;  V85 tmp76        [V85,T16] (  3,  3   )     ref  ->  rsi         class-hnd exact single-def "Inlining Arg" <System.Globalization.CultureInfo>
+;  V86 tmp77        [V86,T59] (  3,  1.50)     ref  ->  rax         class-hnd "Inline return value spill temp" <System.Globalization.NumberFormatInfo>
 ;  V87 tmp78        [V87    ] (  2,  1   )     int  ->  [rbp-0x58]  do-not-enreg[X] addr-exposed ld-addr-op "Inline ldloca(s) first use temp"
-;  V88 tmp79        [V88,T61] (  3,  1   )     int  ->  rax         "Inline stloc first use temp"
+;  V88 tmp79        [V88,T73] (  3,  1   )     int  ->  rax         "Inline stloc first use temp"
 ;* V89 tmp80        [V89    ] (  0,  0   )     int  ->  zero-ref    "Inline return value spill temp"
-;  V90 tmp81        [V90,T24] (  2,  2   )     ref  ->  rax         class-hnd exact single-def "Inlining Arg" <System.Globalization.CultureInfo>
-;  V91 tmp82        [V91,T68] (  2,  1   )     ref  ->  rcx         class-hnd "Inline return value spill temp" <System.Globalization.NumberFormatInfo>
+;  V90 tmp81        [V90,T17] (  3,  3   )     ref  ->  rax         class-hnd exact single-def "Inlining Arg" <System.Globalization.CultureInfo>
+;  V91 tmp82        [V91,T60] (  3,  1.50)     ref  ->  rax         class-hnd "Inline return value spill temp" <System.Globalization.NumberFormatInfo>
 ;* V92 tmp83        [V92    ] (  0,  0   )     int  ->  zero-ref    "Inline return value spill temp"
 ;  V93 tmp84        [V93,T41] (  2,  2   )     int  ->  rdi         "Inlining Arg"
-;  V94 tmp85        [V94,T16] (  3,  3   )     int  ->  r13         "Inlining Arg"
+;  V94 tmp85        [V94,T28] (  3,  3   )     int  ->  r13         "Inlining Arg"
 ;* V95 tmp86        [V95    ] (  0,  0   )  struct (16) zero-ref    multireg-arg ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
 ;* V96 tmp87        [V96    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
 ;* V97 tmp88        [V97,T81] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;  V98 tmp89        [V98,T25] (  2,  2   )     ref  ->  rcx         class-hnd exact single-def "Inlining Arg" <System.Globalization.CultureInfo>
-;  V99 tmp90        [V99,T69] (  2,  1   )     ref  ->  rcx         class-hnd "Inline return value spill temp" <System.Globalization.NumberFormatInfo>
+;  V98 tmp89        [V98,T18] (  3,  3   )     ref  ->  rcx         class-hnd exact single-def "Inlining Arg" <System.Globalization.CultureInfo>
+;  V99 tmp90        [V99,T61] (  3,  1.50)     ref  ->  rax         class-hnd "Inline return value spill temp" <System.Globalization.NumberFormatInfo>
 ;  V100 tmp91       [V100    ] (  2,  1   )     int  ->  [rbp-0x60]  do-not-enreg[X] addr-exposed ld-addr-op "Inline ldloca(s) first use temp"
-;  V101 tmp92       [V101,T62] (  3,  1   )     int  ->  rax         "Inline stloc first use temp"
+;  V101 tmp92       [V101,T74] (  3,  1   )     int  ->  rax         "Inline stloc first use temp"
 ;* V102 tmp93       [V102    ] (  0,  0   )     int  ->  zero-ref    "Inline return value spill temp"
-;  V103 tmp94       [V103,T26] (  2,  2   )     ref  ->  rcx         class-hnd exact single-def "Inlining Arg" <System.Globalization.CultureInfo>
-;  V104 tmp95       [V104,T70] (  2,  1   )     ref  ->  rcx         class-hnd "Inline return value spill temp" <System.Globalization.NumberFormatInfo>
+;  V103 tmp94       [V103,T19] (  3,  3   )     ref  ->  rcx         class-hnd exact single-def "Inlining Arg" <System.Globalization.CultureInfo>
+;  V104 tmp95       [V104,T62] (  3,  1.50)     ref  ->  rax         class-hnd "Inline return value spill temp" <System.Globalization.NumberFormatInfo>
 ;* V105 tmp96       [V105    ] (  0,  0   )     int  ->  zero-ref    "Inline return value spill temp"
-;  V106 tmp97       [V106,T17] (  3,  3   )     int  ->  rdi         "Inlining Arg"
-;  V107 tmp98       [V107,T18] (  3,  3   )     int  ->  r13         "Inlining Arg"
+;  V106 tmp97       [V106,T29] (  3,  3   )     int  ->  rdi         "Inlining Arg"
+;  V107 tmp98       [V107,T30] (  3,  3   )     int  ->  r13         "Inlining Arg"
 ;* V108 tmp99       [V108    ] (  0,  0   )  struct (16) zero-ref    multireg-arg ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
 ;* V109 tmp100      [V109    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
 ;* V110 tmp101      [V110,T82] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;  V111 tmp102      [V111,T27] (  2,  2   )     ref  ->  rcx         class-hnd exact single-def "Inlining Arg" <System.Globalization.CultureInfo>
-;  V112 tmp103      [V112,T71] (  2,  1   )     ref  ->  rcx         class-hnd "Inline return value spill temp" <System.Globalization.NumberFormatInfo>
+;  V111 tmp102      [V111,T20] (  3,  3   )     ref  ->  rcx         class-hnd exact single-def "Inlining Arg" <System.Globalization.CultureInfo>
+;  V112 tmp103      [V112,T63] (  3,  1.50)     ref  ->  rax         class-hnd "Inline return value spill temp" <System.Globalization.NumberFormatInfo>
 ;  V113 tmp104      [V113    ] (  2,  1   )     int  ->  [rbp-0x68]  do-not-enreg[X] addr-exposed ld-addr-op "Inline ldloca(s) first use temp"
-;  V114 tmp105      [V114,T63] (  3,  1   )     int  ->  rax         "Inline stloc first use temp"
+;  V114 tmp105      [V114,T75] (  3,  1   )     int  ->  rax         "Inline stloc first use temp"
 ;* V115 tmp106      [V115    ] (  0,  0   )     int  ->  zero-ref    "Inline return value spill temp"
-;  V116 tmp107      [V116,T28] (  2,  2   )     ref  ->  rcx         class-hnd exact single-def "Inlining Arg" <System.Globalization.CultureInfo>
-;  V117 tmp108      [V117,T72] (  2,  1   )     ref  ->  rcx         class-hnd "Inline return value spill temp" <System.Globalization.NumberFormatInfo>
+;  V116 tmp107      [V116,T21] (  3,  3   )     ref  ->  rcx         class-hnd exact single-def "Inlining Arg" <System.Globalization.CultureInfo>
+;  V117 tmp108      [V117,T64] (  3,  1.50)     ref  ->  rax         class-hnd "Inline return value spill temp" <System.Globalization.NumberFormatInfo>
 ;* V118 tmp109      [V118    ] (  0,  0   )     int  ->  zero-ref    "Inline return value spill temp"
 ;  V119 tmp110      [V119,T11] (  4,  4   )     int  ->  r12         "Inlining Arg"
 ;* V120 tmp111      [V120    ] (  0,  0   )  struct (16) zero-ref    multireg-arg ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;  V121 tmp112      [V121,T29] (  2,  2   )   byref  ->  r13         single-def "Inlining Arg"
+;  V121 tmp112      [V121,T35] (  2,  2   )   byref  ->  r13         single-def "Inlining Arg"
 ;  V122 tmp113      [V122,T42] (  2,  2   )     int  ->  rbx         "Inlining Arg"
 ;* V123 tmp114      [V123,T83] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;  V124 tmp115      [V124,T30] (  2,  2   )     ref  ->  rdi         class-hnd exact single-def "Inlining Arg" <System.Globalization.CultureInfo>
-;  V125 tmp116      [V125,T73] (  2,  1   )     ref  ->  rcx         class-hnd "Inline return value spill temp" <System.Globalization.NumberFormatInfo>
+;  V124 tmp115      [V124,T22] (  3,  3   )     ref  ->  rdi         class-hnd exact single-def "Inlining Arg" <System.Globalization.CultureInfo>
+;  V125 tmp116      [V125,T65] (  3,  1.50)     ref  ->  rax         class-hnd "Inline return value spill temp" <System.Globalization.NumberFormatInfo>
 ;  V126 tmp117      [V126    ] (  2,  1   )     int  ->  [rbp-0x70]  do-not-enreg[X] addr-exposed ld-addr-op "Inline ldloca(s) first use temp"
-;  V127 tmp118      [V127,T64] (  3,  1   )     int  ->  rax         "Inline stloc first use temp"
+;  V127 tmp118      [V127,T76] (  3,  1   )     int  ->  rax         "Inline stloc first use temp"
 ;* V128 tmp119      [V128    ] (  0,  0   )     int  ->  zero-ref    "Inline return value spill temp"
-;  V129 tmp120      [V129,T31] (  2,  2   )     ref  ->  rdi         class-hnd exact single-def "Inlining Arg" <System.Globalization.CultureInfo>
-;  V130 tmp121      [V130,T74] (  2,  1   )     ref  ->  rcx         class-hnd "Inline return value spill temp" <System.Globalization.NumberFormatInfo>
+;  V129 tmp120      [V129,T23] (  3,  3   )     ref  ->  rdi         class-hnd exact single-def "Inlining Arg" <System.Globalization.CultureInfo>
+;  V130 tmp121      [V130,T66] (  3,  1.50)     ref  ->  rax         class-hnd "Inline return value spill temp" <System.Globalization.NumberFormatInfo>
 ;* V131 tmp122      [V131    ] (  0,  0   )     int  ->  zero-ref    "Inline return value spill temp"
 ;  V132 tmp123      [V132,T12] (  4,  4   )     int  ->  r13         "Inlining Arg"
 ;* V133 tmp124      [V133    ] (  0,  0   )  struct (16) zero-ref    multireg-arg ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;  V134 tmp125      [V134,T32] (  2,  2   )   byref  ->  r15         single-def "Inlining Arg"
+;  V134 tmp125      [V134,T36] (  2,  2   )   byref  ->  r15         single-def "Inlining Arg"
 ;  V135 tmp126      [V135,T43] (  2,  2   )     int  ->  r12         "Inlining Arg"
 ;* V136 tmp127      [V136,T84] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;  V137 tmp128      [V137,T33] (  2,  2   )     ref  ->  rdi         class-hnd exact single-def "Inlining Arg" <System.Globalization.CultureInfo>
-;  V138 tmp129      [V138,T75] (  2,  1   )     ref  ->  rcx         class-hnd "Inline return value spill temp" <System.Globalization.NumberFormatInfo>
+;  V137 tmp128      [V137,T24] (  3,  3   )     ref  ->  rdi         class-hnd exact single-def "Inlining Arg" <System.Globalization.CultureInfo>
+;  V138 tmp129      [V138,T67] (  3,  1.50)     ref  ->  rax         class-hnd "Inline return value spill temp" <System.Globalization.NumberFormatInfo>
 ;  V139 tmp130      [V139    ] (  2,  1   )     int  ->  [rbp-0x78]  do-not-enreg[X] addr-exposed ld-addr-op "Inline ldloca(s) first use temp"
-;  V140 tmp131      [V140,T65] (  3,  1   )     int  ->  rax         "Inline stloc first use temp"
+;  V140 tmp131      [V140,T77] (  3,  1   )     int  ->  rax         "Inline stloc first use temp"
 ;* V141 tmp132      [V141    ] (  0,  0   )     int  ->  zero-ref    "Inline return value spill temp"
-;  V142 tmp133      [V142,T34] (  2,  2   )     ref  ->  rdi         class-hnd exact single-def "Inlining Arg" <System.Globalization.CultureInfo>
-;  V143 tmp134      [V143,T76] (  2,  1   )     ref  ->  rcx         class-hnd "Inline return value spill temp" <System.Globalization.NumberFormatInfo>
+;  V142 tmp133      [V142,T25] (  3,  3   )     ref  ->  rdi         class-hnd exact single-def "Inlining Arg" <System.Globalization.CultureInfo>
+;  V143 tmp134      [V143,T68] (  3,  1.50)     ref  ->  rax         class-hnd "Inline return value spill temp" <System.Globalization.NumberFormatInfo>
 ;* V144 tmp135      [V144    ] (  0,  0   )     int  ->  zero-ref    "Inline return value spill temp"
 ;  V145 tmp136      [V145,T44] (  2,  2   )     int  ->  r13         "Inlining Arg"
 ;* V146 tmp137      [V146    ] (  0,  0   )  struct (16) zero-ref    multireg-arg ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;  V147 tmp138      [V147,T35] (  2,  2   )   byref  ->  r15         single-def "Inlining Arg"
+;  V147 tmp138      [V147,T37] (  2,  2   )   byref  ->  r15         single-def "Inlining Arg"
 ;  V148 tmp139      [V148,T45] (  2,  2   )     int  ->  rbx         "Inlining Arg"
 ;* V149 tmp140      [V149,T85] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;  V150 tmp141      [V150,T36] (  2,  2   )     ref  ->  rdi         class-hnd exact single-def "Inlining Arg" <System.Globalization.CultureInfo>
-;  V151 tmp142      [V151,T77] (  2,  1   )     ref  ->  rcx         class-hnd "Inline return value spill temp" <System.Globalization.NumberFormatInfo>
+;  V150 tmp141      [V150,T26] (  3,  3   )     ref  ->  rdi         class-hnd exact single-def "Inlining Arg" <System.Globalization.CultureInfo>
+;  V151 tmp142      [V151,T69] (  3,  1.50)     ref  ->  rax         class-hnd "Inline return value spill temp" <System.Globalization.NumberFormatInfo>
 ;  V152 tmp143      [V152    ] (  2,  1   )     int  ->  [rbp-0x80]  do-not-enreg[X] addr-exposed ld-addr-op "Inline ldloca(s) first use temp"
-;  V153 tmp144      [V153,T66] (  3,  1   )     int  ->  rax         "Inline stloc first use temp"
+;  V153 tmp144      [V153,T78] (  3,  1   )     int  ->  rax         "Inline stloc first use temp"
 ;* V154 tmp145      [V154    ] (  0,  0   )     int  ->  zero-ref    "Inline return value spill temp"
-;  V155 tmp146      [V155,T37] (  2,  2   )     ref  ->  rdi         class-hnd exact single-def "Inlining Arg" <System.Globalization.CultureInfo>
-;  V156 tmp147      [V156,T78] (  2,  1   )     ref  ->  rcx         class-hnd "Inline return value spill temp" <System.Globalization.NumberFormatInfo>
+;  V155 tmp146      [V155,T27] (  3,  3   )     ref  ->  rdi         class-hnd exact single-def "Inlining Arg" <System.Globalization.CultureInfo>
+;  V156 tmp147      [V156,T70] (  3,  1.50)     ref  ->  rax         class-hnd "Inline return value spill temp" <System.Globalization.NumberFormatInfo>
 ;* V157 tmp148      [V157    ] (  0,  0   )     int  ->  zero-ref    "Inline return value spill temp"
 ;  V158 tmp149      [V158,T07] (  4,  4   )     ref  ->  r13         "Single return block return value"
 ;  V159 tmp150      [V159,T01] ( 11,  6.50)   byref  ->  r15         single-def "field V00._reference (fldOffset=0x0)" P-INDEP
 ;  V160 tmp151      [V160,T00] ( 16,  9   )     int  ->  rbx         single-def "field V00._length (fldOffset=0x8)" P-INDEP
 ;* V161 tmp152      [V161    ] (  0,  0   )   byref  ->  zero-ref    "field V10._reference (fldOffset=0x0)" P-INDEP
 ;* V162 tmp153      [V162    ] (  0,  0   )     int  ->  zero-ref    "field V10._length (fldOffset=0x8)" P-INDEP
 ;* V163 tmp154      [V163    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V11._reference (fldOffset=0x0)" P-INDEP
 ;* V164 tmp155      [V164    ] (  0,  0   )     int  ->  zero-ref    "field V11._length (fldOffset=0x8)" P-INDEP
 ;* V165 tmp156      [V165    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V12._reference (fldOffset=0x0)" P-INDEP
 ;* V166 tmp157      [V166    ] (  0,  0   )     int  ->  zero-ref    "field V12._length (fldOffset=0x8)" P-INDEP
 ;* V167 tmp158      [V167    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V14._reference (fldOffset=0x0)" P-INDEP
 ;* V168 tmp159      [V168    ] (  0,  0   )     int  ->  zero-ref    "field V14._length (fldOffset=0x8)" P-INDEP
 ;* V169 tmp160      [V169    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V15._reference (fldOffset=0x0)" P-INDEP
 ;* V170 tmp161      [V170    ] (  0,  0   )     int  ->  zero-ref    "field V15._length (fldOffset=0x8)" P-INDEP
 ;* V171 tmp162      [V171    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V17._reference (fldOffset=0x0)" P-INDEP
 ;* V172 tmp163      [V172    ] (  0,  0   )     int  ->  zero-ref    "field V17._length (fldOffset=0x8)" P-INDEP
 ;* V173 tmp164      [V173    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V18._reference (fldOffset=0x0)" P-INDEP
 ;* V174 tmp165      [V174    ] (  0,  0   )     int  ->  zero-ref    "field V18._length (fldOffset=0x8)" P-INDEP
 ;* V175 tmp166      [V175    ] (  0,  0   )   byref  ->  zero-ref    "field V20._reference (fldOffset=0x0)" P-INDEP
 ;* V176 tmp167      [V176    ] (  0,  0   )     int  ->  zero-ref    "field V20._length (fldOffset=0x8)" P-INDEP
 ;* V177 tmp168      [V177    ] (  0,  0   )   byref  ->  zero-ref    "field V21._reference (fldOffset=0x0)" P-INDEP
 ;* V178 tmp169      [V178    ] (  0,  0   )     int  ->  zero-ref    "field V21._length (fldOffset=0x8)" P-INDEP
 ;* V179 tmp170      [V179    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V25._reference (fldOffset=0x0)" P-INDEP
 ;* V180 tmp171      [V180    ] (  0,  0   )     int  ->  zero-ref    "field V25._length (fldOffset=0x8)" P-INDEP
 ;* V181 tmp172      [V181    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V27._reference (fldOffset=0x0)" P-INDEP
 ;* V182 tmp173      [V182    ] (  0,  0   )     int  ->  zero-ref    "field V27._length (fldOffset=0x8)" P-INDEP
 ;* V183 tmp174      [V183    ] (  0,  0   )   byref  ->  zero-ref    "field V35._reference (fldOffset=0x0)" P-INDEP
 ;* V184 tmp175      [V184    ] (  0,  0   )     int  ->  zero-ref    "field V35._length (fldOffset=0x8)" P-INDEP
 ;* V185 tmp176      [V185    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V37._reference (fldOffset=0x0)" P-INDEP
 ;* V186 tmp177      [V186    ] (  0,  0   )     int  ->  zero-ref    "field V37._length (fldOffset=0x8)" P-INDEP
 ;* V187 tmp178      [V187    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V41._reference (fldOffset=0x0)" P-INDEP
 ;* V188 tmp179      [V188    ] (  0,  0   )     int  ->  zero-ref    "field V41._length (fldOffset=0x8)" P-INDEP
 ;* V189 tmp180      [V189    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V43._reference (fldOffset=0x0)" P-INDEP
 ;* V190 tmp181      [V190    ] (  0,  0   )     int  ->  zero-ref    "field V43._length (fldOffset=0x8)" P-INDEP
 ;* V191 tmp182      [V191    ] (  0,  0   )   byref  ->  zero-ref    "field V51._reference (fldOffset=0x0)" P-INDEP
 ;* V192 tmp183      [V192    ] (  0,  0   )     int  ->  zero-ref    "field V51._length (fldOffset=0x8)" P-INDEP
 ;* V193 tmp184      [V193    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V53._reference (fldOffset=0x0)" P-INDEP
 ;* V194 tmp185      [V194    ] (  0,  0   )     int  ->  zero-ref    "field V53._length (fldOffset=0x8)" P-INDEP
 ;* V195 tmp186      [V195    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V57._reference (fldOffset=0x0)" P-INDEP
 ;* V196 tmp187      [V196    ] (  0,  0   )     int  ->  zero-ref    "field V57._length (fldOffset=0x8)" P-INDEP
 ;* V197 tmp188      [V197    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V59._reference (fldOffset=0x0)" P-INDEP
 ;* V198 tmp189      [V198    ] (  0,  0   )     int  ->  zero-ref    "field V59._length (fldOffset=0x8)" P-INDEP
 ;* V199 tmp190      [V199    ] (  0,  0   )   byref  ->  zero-ref    "field V67._reference (fldOffset=0x0)" P-INDEP
 ;* V200 tmp191      [V200    ] (  0,  0   )     int  ->  zero-ref    "field V67._length (fldOffset=0x8)" P-INDEP
 ;* V201 tmp192      [V201    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V69._reference (fldOffset=0x0)" P-INDEP
 ;* V202 tmp193      [V202    ] (  0,  0   )     int  ->  zero-ref    "field V69._length (fldOffset=0x8)" P-INDEP
 ;* V203 tmp194      [V203    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V73._reference (fldOffset=0x0)" P-INDEP
 ;* V204 tmp195      [V204    ] (  0,  0   )     int  ->  zero-ref    "field V73._length (fldOffset=0x8)" P-INDEP
 ;* V205 tmp196      [V205    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V75._reference (fldOffset=0x0)" P-INDEP
 ;* V206 tmp197      [V206    ] (  0,  0   )     int  ->  zero-ref    "field V75._length (fldOffset=0x8)" P-INDEP
 ;* V207 tmp198      [V207    ] (  0,  0   )   byref  ->  zero-ref    "field V81._reference (fldOffset=0x0)" P-INDEP
 ;* V208 tmp199      [V208    ] (  0,  0   )     int  ->  zero-ref    "field V81._length (fldOffset=0x8)" P-INDEP
 ;  V209 tmp200      [V209,T92] (  2,  0.50)   byref  ->  [rbp-0x90]  spill-single-def "field V82._reference (fldOffset=0x0)" P-INDEP
 ;  V210 tmp201      [V210,T53] (  4,  1.50)     int  ->  [rbp-0x84]  spill-single-def "field V82._length (fldOffset=0x8)" P-INDEP
 ;  V211 tmp202      [V211,T48] (  4,  1.50)   byref  ->  [rbp-0x98]  spill-single-def "field V95._reference (fldOffset=0x0)" P-INDEP
 ;  V212 tmp203      [V212,T54] (  4,  1.50)     int  ->  r13         "field V95._length (fldOffset=0x8)" P-INDEP
 ;  V213 tmp204      [V213,T49] (  4,  1.50)   byref  ->  [rbp-0xA0]  spill-single-def "field V108._reference (fldOffset=0x0)" P-INDEP
 ;  V214 tmp205      [V214,T55] (  4,  1.50)     int  ->  r13         "field V108._length (fldOffset=0x8)" P-INDEP
 ;  V215 tmp206      [V215,T50] (  4,  1.50)   byref  ->  r13         single-def "field V120._reference (fldOffset=0x0)" P-INDEP
 ;  V216 tmp207      [V216,T56] (  4,  1.50)     int  ->  rbx         "field V120._length (fldOffset=0x8)" P-INDEP
 ;  V217 tmp208      [V217,T51] (  4,  1.50)   byref  ->  r15         single-def "field V133._reference (fldOffset=0x0)" P-INDEP
 ;  V218 tmp209      [V218,T57] (  4,  1.50)     int  ->  r12         "field V133._length (fldOffset=0x8)" P-INDEP
 ;  V219 tmp210      [V219,T52] (  4,  1.50)   byref  ->  r15         single-def "field V146._reference (fldOffset=0x0)" P-INDEP
 ;  V220 tmp211      [V220,T58] (  4,  1.50)     int  ->  rbx         "field V146._length (fldOffset=0x8)" P-INDEP
 ;  V221 tmp212      [V221,T95] (  2,  0   )     ref  ->  r15         single-def "argument with side effect"
 ;  V222 tmp213      [V222,T96] (  2,  0   )     ref  ->  rdx         single-def "argument with side effect"
 ;  V223 tmp214      [V223,T97] (  2,  0   )     ref  ->  r15         single-def "argument with side effect"
 ;  V224 tmp215      [V224,T98] (  2,  0   )     ref  ->  rdx         single-def "argument with side effect"
-;  V225 cse0        [V225,T19] (  4,  2   )   byref  ->  [rbp-0xA8]  spill-single-def "CSE - conservative"
+;  V225 cse0        [V225,T31] (  4,  2   )   byref  ->  [rbp-0xA8]  spill-single-def "CSE - conservative"
 ;  V226 cse1        [V226,T03] ( 14,  7   )     ref  ->  [rbp-0xB0]  multi-def "CSE - aggressive"
 ;
 ; Lcl frame size = 136
 
 G_M14102_IG01:
        push     rbp
        push     r15
        push     r14
        push     r13
        push     r12
        push     rbx
        sub      rsp, 136
        lea      rbp, [rsp+0xB0]
        mov      r15, rdi
        mov      ebx, esi
        mov      r14d, edx
 						;; size=33 bbWeight=1 PerfScore 7.50
 G_M14102_IG02:
        mov      esi, 46
        mov      rdi, r15
        mov      edx, ebx
        mov      rax, 0xD1FFAB1E      ; code for System.PackedSpanHelpers:IndexOf[System.SpanHelpers+DontNegate`1[short]](byref,short,int):int
        call     [rax]System.PackedSpanHelpers:IndexOf[System.SpanHelpers+DontNegate`1[short]](byref,short,int):int
        mov      r13d, eax
        test     r13d, r13d
        jge      SHORT G_M14102_IG06
 						;; size=30 bbWeight=1 PerfScore 5.50
 G_M14102_IG03:
        test     r14b, r14b
-       jne      G_M14102_IG26
+       jne      G_M14102_IG50
 						;; size=9 bbWeight=0.50 PerfScore 0.62
 G_M14102_IG04:
        xor      rax, rax
 						;; size=2 bbWeight=0.50 PerfScore 0.12
 G_M14102_IG05:
        add      rsp, 136
        pop      rbx
        pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
 						;; size=18 bbWeight=0.50 PerfScore 2.12
 G_M14102_IG06:
        mov      r12d, -1
        lea      esi, [r13+0x01]
        cmp      esi, ebx
-       ja       G_M14102_IG33
+       ja       G_M14102_IG57
        mov      edi, esi
        lea      rax, bword ptr [r15+2*rdi]
        mov      bword ptr [rbp-0xA8], rax
        mov      rdi, rax
        mov      edx, ebx
        sub      edx, esi
        mov      esi, 46
        mov      rcx, 0xD1FFAB1E      ; code for System.PackedSpanHelpers:IndexOf[System.SpanHelpers+DontNegate`1[short]](byref,short,int):int
        call     [rcx]System.PackedSpanHelpers:IndexOf[System.SpanHelpers+DontNegate`1[short]](byref,short,int):int
        mov      ecx, eax
        test     ecx, ecx
        jl       G_M14102_IG09
        lea      ecx, [rax+r13+0x01]
        mov      r12d, ecx
        lea      esi, [r12+0x01]
        cmp      esi, ebx
-       ja       G_M14102_IG33
+       ja       G_M14102_IG57
        mov      edi, esi
        lea      rdi, bword ptr [r15+2*rdi]
        mov      edx, ebx
        sub      edx, esi
        mov      esi, 46
        mov      rax, 0xD1FFAB1E      ; code for System.PackedSpanHelpers:IndexOf[System.SpanHelpers+DontNegate`1[short]](byref,short,int):int
        call     [rax]System.PackedSpanHelpers:IndexOf[System.SpanHelpers+DontNegate`1[short]](byref,short,int):int
        mov      ecx, eax
        test     ecx, ecx
        jl       SHORT G_M14102_IG08
        mov      dword ptr [rbp-0x30], r12d
        lea      ecx, [rax+r12+0x01]
        mov      eax, ecx
        mov      dword ptr [rbp-0x2C], eax
        lea      edi, [rax+0x01]
        cmp      edi, ebx
-       ja       G_M14102_IG33
+       ja       G_M14102_IG57
        mov      esi, edi
        lea      rsi, bword ptr [r15+2*rsi]
        mov      edx, ebx
        sub      edx, edi
        mov      rdi, rsi
        mov      esi, 46
        mov      rcx, 0xD1FFAB1E      ; code for System.PackedSpanHelpers:Contains(byref,short,int):ubyte
        call     [rcx]System.PackedSpanHelpers:Contains(byref,short,int):ubyte
        test     eax, eax
        mov      ecx, dword ptr [rbp-0x30]
        mov      r12d, dword ptr [rbp-0x2C]
        je       SHORT G_M14102_IG09
        test     r14b, r14b
-       jne      G_M14102_IG27
+       jne      G_M14102_IG51
 						;; size=194 bbWeight=0.50 PerfScore 16.62
 G_M14102_IG07:
        jmp      G_M14102_IG04
 						;; size=5 bbWeight=0.50 PerfScore 1.00
 G_M14102_IG08:
        mov      eax, ecx
        mov      ecx, r12d
        mov      r12d, eax
 						;; size=8 bbWeight=0.25 PerfScore 0.19
 G_M14102_IG09:
        cmp      r13d, ebx
-       ja       G_M14102_IG33
+       ja       G_M14102_IG57
        mov      bword ptr [rbp-0x90], r15
        mov      dword ptr [rbp-0x84], r13d
        test     r14b, r14b
-       je       SHORT G_M14102_IG10
-       mov      dword ptr [rbp-0x30], ecx
+       je       G_M14102_IG12
        mov      rdi, 0xD1FFAB1E      ; const ptr
        mov      rsi, gword ptr [rdi]
        mov      rdi, rsi
        mov      gword ptr [rbp-0xB0], rdi
        mov      rsi, rdi
+       test     rsi, rsi
+       je       SHORT G_M14102_IG10
+       mov      dword ptr [rbp-0x30], ecx
        mov      rdi, rsi
        mov      rsi, 0xD1FFAB1E      ; code for System.Globalization.NumberFormatInfo:<GetInstance>g__GetProviderNonNull|59_0(System.IFormatProvider):System.Globalization.NumberFormatInfo
        call     [rsi]System.Globalization.NumberFormatInfo:<GetInstance>g__GetProviderNonNull|59_0(System.IFormatProvider):System.Globalization.NumberFormatInfo
-       mov      rcx, rax
+       jmp      SHORT G_M14102_IG11
+						;; size=83 bbWeight=0.50 PerfScore 8.00
+G_M14102_IG10:
+       mov      dword ptr [rbp-0x30], ecx
+       mov      rsi, 0xD1FFAB1E      ; code for System.Globalization.NumberFormatInfo:get_CurrentInfo():System.Globalization.NumberFormatInfo
+       call     [rsi]System.Globalization.NumberFormatInfo:get_CurrentInfo():System.Globalization.NumberFormatInfo
+						;; size=15 bbWeight=0.50 PerfScore 2.12
+G_M14102_IG11:
        mov      rdi, r15
        mov      esi, dword ptr [rbp-0x84]
        lea      r8, [rbp-0x58]
+       mov      rcx, rax
        mov      edx, 7
        mov      rax, 0xD1FFAB1E      ; code for System.Number:TryParseBinaryIntegerStyle[ushort,int](System.ReadOnlySpan`1[ushort],int,System.Globalization.NumberFormatInfo,byref):int
        call     [rax]System.Number:TryParseBinaryIntegerStyle[ushort,int](System.ReadOnlySpan`1[ushort],int,System.Globalization.NumberFormatInfo,byref):int
        test     eax, eax
-       jne      G_M14102_IG28
+       jne      G_M14102_IG52
        mov      edi, dword ptr [rbp-0x58]
        mov      dword ptr [rbp-0x50], edi
        mov      edi, dword ptr [rbp-0x50]
        mov      rsi, 0xD1FFAB1E      ; 'input'
 
        mov      rax, 0xD1FFAB1E      ; code for System.ArgumentOutOfRangeException:ThrowIfNegative[int](int,System.String)
        call     [rax]System.ArgumentOutOfRangeException:ThrowIfNegative[int](int,System.String)
-       jmp      SHORT G_M14102_IG11
-						;; size=146 bbWeight=0.50 PerfScore 14.00
-G_M14102_IG10:
-       mov      dword ptr [rbp-0x30], ecx
+       jmp      SHORT G_M14102_IG15
+						;; size=74 bbWeight=0.50 PerfScore 7.62
+G_M14102_IG12:
        mov      rdi, 0xD1FFAB1E      ; const ptr
        mov      rdi, gword ptr [rdi]
        mov      gword ptr [rbp-0xB0], rdi
        mov      rax, rdi
+       test     rax, rax
+       je       SHORT G_M14102_IG13
+       mov      dword ptr [rbp-0x30], ecx
        mov      rdi, rax
        mov      rax, 0xD1FFAB1E      ; code for System.Globalization.NumberFormatInfo:<GetInstance>g__GetProviderNonNull|59_0(System.IFormatProvider):System.Globalization.NumberFormatInfo
        call     [rax]System.Globalization.NumberFormatInfo:<GetInstance>g__GetProviderNonNull|59_0(System.IFormatProvider):System.Globalization.NumberFormatInfo
-       mov      rcx, rax
+       jmp      SHORT G_M14102_IG14
+						;; size=48 bbWeight=0.50 PerfScore 5.62
+G_M14102_IG13:
+       mov      dword ptr [rbp-0x30], ecx
+       mov      rax, 0xD1FFAB1E      ; code for System.Globalization.NumberFormatInfo:get_CurrentInfo():System.Globalization.NumberFormatInfo
+       call     [rax]System.Globalization.NumberFormatInfo:get_CurrentInfo():System.Globalization.NumberFormatInfo
+						;; size=15 bbWeight=0.50 PerfScore 2.12
+G_M14102_IG14:
        mov      rdi, r15
        mov      esi, dword ptr [rbp-0x84]
        lea      r8, [rbp-0x50]
+       mov      rcx, rax
        mov      edx, 7
        mov      rax, 0xD1FFAB1E      ; code for System.Number:TryParseBinaryIntegerStyle[ushort,int](System.ReadOnlySpan`1[ushort],int,System.Globalization.NumberFormatInfo,byref):int
        call     [rax]System.Number:TryParseBinaryIntegerStyle[ushort,int](System.ReadOnlySpan`1[ushort],int,System.Globalization.NumberFormatInfo,byref):int
        test     eax, eax
        jne      G_M14102_IG04
        cmp      dword ptr [rbp-0x50], 0
        jl       G_M14102_IG04
-						;; size=92 bbWeight=0.50 PerfScore 8.88
-G_M14102_IG11:
+						;; size=51 bbWeight=0.50 PerfScore 4.88
+G_M14102_IG15:
        mov      eax, dword ptr [rbp-0x30]
        cmp      eax, -1
-       je       G_M14102_IG21
+       je       G_M14102_IG41
        lea      edi, [r13+0x01]
        mov      dword ptr [rbp-0x30], eax
        mov      ecx, eax
        sub      ecx, r13d
        dec      ecx
        mov      r13d, ecx
        mov      ecx, r13d
        add      rdi, rcx
        mov      ecx, ebx
        cmp      rdi, rcx
-       ja       G_M14102_IG33
+       ja       G_M14102_IG57
        mov      rcx, bword ptr [rbp-0xA8]
        mov      bword ptr [rbp-0x98], rcx
        test     r14b, r14b
-       je       SHORT G_M14102_IG12
+       je       SHORT G_M14102_IG18
        mov      rdi, gword ptr [rbp-0xB0]
        mov      rcx, rdi
+       test     rcx, rcx
+       je       SHORT G_M14102_IG16
        mov      rdi, rcx
        mov      rcx, 0xD1FFAB1E      ; code for System.Globalization.NumberFormatInfo:<GetInstance>g__GetProviderNonNull|59_0(System.IFormatProvider):System.Globalization.NumberFormatInfo
        call     [rcx]System.Globalization.NumberFormatInfo:<GetInstance>g__GetProviderNonNull|59_0(System.IFormatProvider):System.Globalization.NumberFormatInfo
-       mov      rcx, rax
+       jmp      SHORT G_M14102_IG17
+						;; size=97 bbWeight=0.50 PerfScore 9.00
+G_M14102_IG16:
+       mov      rcx, 0xD1FFAB1E      ; code for System.Globalization.NumberFormatInfo:get_CurrentInfo():System.Globalization.NumberFormatInfo
+       call     [rcx]System.Globalization.NumberFormatInfo:get_CurrentInfo():System.Globalization.NumberFormatInfo
+						;; size=12 bbWeight=0.50 PerfScore 1.62
+G_M14102_IG17:
        mov      rdi, bword ptr [rbp-0x98]
        mov      esi, r13d
        lea      r8, [rbp-0x60]
+       mov      rcx, rax
        mov      edx, 7
        mov      rax, 0xD1FFAB1E      ; code for System.Number:TryParseBinaryIntegerStyle[ushort,int](System.ReadOnlySpan`1[ushort],int,System.Globalization.NumberFormatInfo,byref):int
        call     [rax]System.Number:TryParseBinaryIntegerStyle[ushort,int](System.ReadOnlySpan`1[ushort],int,System.Globalization.NumberFormatInfo,byref):int
        test     eax, eax
-       jne      G_M14102_IG29
+       jne      G_M14102_IG53
        mov      edi, dword ptr [rbp-0x60]
        mov      dword ptr [rbp-0x38], edi
        mov      edi, dword ptr [rbp-0x38]
        mov      rsi, 0xD1FFAB1E      ; 'input'
 
        mov      rax, 0xD1FFAB1E      ; code for System.ArgumentOutOfRangeException:ThrowIfNegative[int](int,System.String)
        call     [rax]System.ArgumentOutOfRangeException:ThrowIfNegative[int](int,System.String)
-       jmp      SHORT G_M14102_IG13
-						;; size=165 bbWeight=0.50 PerfScore 15.00
-G_M14102_IG12:
+       jmp      SHORT G_M14102_IG21
+						;; size=75 bbWeight=0.50 PerfScore 7.62
+G_M14102_IG18:
        mov      rdi, gword ptr [rbp-0xB0]
        mov      rcx, rdi
+       test     rcx, rcx
+       je       SHORT G_M14102_IG19
        mov      rdi, rcx
        mov      rcx, 0xD1FFAB1E      ; code for System.Globalization.NumberFormatInfo:<GetInstance>g__GetProviderNonNull|59_0(System.IFormatProvider):System.Globalization.NumberFormatInfo
        call     [rcx]System.Globalization.NumberFormatInfo:<GetInstance>g__GetProviderNonNull|59_0(System.IFormatProvider):System.Globalization.NumberFormatInfo
-       mov      rcx, rax
+       jmp      SHORT G_M14102_IG20
+						;; size=32 bbWeight=0.50 PerfScore 4.00
+G_M14102_IG19:
+       mov      rcx, 0xD1FFAB1E      ; code for System.Globalization.NumberFormatInfo:get_CurrentInfo():System.Globalization.NumberFormatInfo
+       call     [rcx]System.Globalization.NumberFormatInfo:get_CurrentInfo():System.Globalization.NumberFormatInfo
+						;; size=12 bbWeight=0.50 PerfScore 1.62
+G_M14102_IG20:
        mov      rdi, bword ptr [rbp-0x98]
        mov      esi, r13d
        lea      r8, [rbp-0x38]
+       mov      rcx, rax
        mov      edx, 7
        mov      rax, 0xD1FFAB1E      ; code for System.Number:TryParseBinaryIntegerStyle[ushort,int](System.ReadOnlySpan`1[ushort],int,System.Globalization.NumberFormatInfo,byref):int
        call     [rax]System.Number:TryParseBinaryIntegerStyle[ushort,int](System.ReadOnlySpan`1[ushort],int,System.Globalization.NumberFormatInfo,byref):int
        test     eax, eax
        jne      G_M14102_IG04
        cmp      dword ptr [rbp-0x38], 0
        jl       G_M14102_IG04
-						;; size=77 bbWeight=0.50 PerfScore 7.25
-G_M14102_IG13:
+						;; size=52 bbWeight=0.50 PerfScore 4.88
+G_M14102_IG21:
        cmp      r12d, -1
-       je       G_M14102_IG18
+       je       G_M14102_IG34
        mov      r13d, dword ptr [rbp-0x30]
        lea      edi, [r13+0x01]
        mov      eax, r12d
        sub      eax, r13d
        dec      eax
        mov      r13d, eax
        mov      eax, edi
        mov      ecx, r13d
        add      rax, rcx
        mov      ecx, ebx
        cmp      rax, rcx
-       ja       G_M14102_IG33
+       ja       G_M14102_IG57
        lea      rax, bword ptr [r15+2*rdi]
        mov      bword ptr [rbp-0xA0], rax
        test     r14b, r14b
-       je       SHORT G_M14102_IG14
+       je       SHORT G_M14102_IG24
        mov      rdi, gword ptr [rbp-0xB0]
        mov      rcx, rdi
+       test     rcx, rcx
+       je       SHORT G_M14102_IG22
        mov      rdi, rcx
        mov      rcx, 0xD1FFAB1E      ; code for System.Globalization.NumberFormatInfo:<GetInstance>g__GetProviderNonNull|59_0(System.IFormatProvider):System.Globalization.NumberFormatInfo
        call     [rcx]System.Globalization.NumberFormatInfo:<GetInstance>g__GetProviderNonNull|59_0(System.IFormatProvider):System.Globalization.NumberFormatInfo
-       mov      rcx, rax
+       jmp      SHORT G_M14102_IG23
+						;; size=96 bbWeight=0.50 PerfScore 8.38
+G_M14102_IG22:
+       mov      rcx, 0xD1FFAB1E      ; code for System.Globalization.NumberFormatInfo:get_CurrentInfo():System.Globalization.NumberFormatInfo
+       call     [rcx]System.Globalization.NumberFormatInfo:get_CurrentInfo():System.Globalization.NumberFormatInfo
+						;; size=12 bbWeight=0.50 PerfScore 1.62
+G_M14102_IG23:
        mov      rdi, bword ptr [rbp-0xA0]
        mov      esi, r13d
        lea      r8, [rbp-0x68]
+       mov      rcx, rax
        mov      edx, 7
        mov      rax, 0xD1FFAB1E      ; code for System.Number:TryParseBinaryIntegerStyle[ushort,int](System.ReadOnlySpan`1[ushort],int,System.Globalization.NumberFormatInfo,byref):int
        call     [rax]System.Number:TryParseBinaryIntegerStyle[ushort,int](System.ReadOnlySpan`1[ushort],int,System.Globalization.NumberFormatInfo,byref):int
        test     eax, eax
-       jne      G_M14102_IG30
+       jne      G_M14102_IG54
        mov      edi, dword ptr [rbp-0x68]
        mov      dword ptr [rbp-0x40], edi
        mov      edi, dword ptr [rbp-0x40]
        mov      rsi, 0xD1FFAB1E      ; 'build'
 
        mov      rax, 0xD1FFAB1E      ; code for System.ArgumentOutOfRangeException:ThrowIfNegative[int](int,System.String)
        call     [rax]System.ArgumentOutOfRangeException:ThrowIfNegative[int](int,System.String)
-       jmp      SHORT G_M14102_IG15
-						;; size=164 bbWeight=0.50 PerfScore 14.38
-G_M14102_IG14:
+       jmp      SHORT G_M14102_IG27
+						;; size=75 bbWeight=0.50 PerfScore 7.62
+G_M14102_IG24:
        mov      rdi, gword ptr [rbp-0xB0]
        mov      rcx, rdi
+       test     rcx, rcx
+       je       SHORT G_M14102_IG25
        mov      rdi, rcx
        mov      rcx, 0xD1FFAB1E      ; code for System.Globalization.NumberFormatInfo:<GetInstance>g__GetProviderNonNull|59_0(System.IFormatProvider):System.Globalization.NumberFormatInfo
        call     [rcx]System.Globalization.NumberFormatInfo:<GetInstance>g__GetProviderNonNull|59_0(System.IFormatProvider):System.Globalization.NumberFormatInfo
-       mov      rcx, rax
+       jmp      SHORT G_M14102_IG26
+						;; size=32 bbWeight=0.50 PerfScore 4.00
+G_M14102_IG25:
+       mov      rcx, 0xD1FFAB1E      ; code for System.Globalization.NumberFormatInfo:get_CurrentInfo():System.Globalization.NumberFormatInfo
+       call     [rcx]System.Globalization.NumberFormatInfo:get_CurrentInfo():System.Globalization.NumberFormatInfo
+						;; size=12 bbWeight=0.50 PerfScore 1.62
+G_M14102_IG26:
        mov      rdi, bword ptr [rbp-0xA0]
        mov      esi, r13d
        lea      r8, [rbp-0x40]
+       mov      rcx, rax
        mov      edx, 7
        mov      rax, 0xD1FFAB1E      ; code for System.Number:TryParseBinaryIntegerStyle[ushort,int](System.ReadOnlySpan`1[ushort],int,System.Globalization.NumberFormatInfo,byref):int
        call     [rax]System.Number:TryParseBinaryIntegerStyle[ushort,int](System.ReadOnlySpan`1[ushort],int,System.Globalization.NumberFormatInfo,byref):int
        test     eax, eax
        jne      G_M14102_IG04
        cmp      dword ptr [rbp-0x40], 0
        jl       G_M14102_IG04
-						;; size=77 bbWeight=0.50 PerfScore 7.25
-G_M14102_IG15:
+						;; size=52 bbWeight=0.50 PerfScore 4.88
+G_M14102_IG27:
        inc      r12d
        cmp      r12d, ebx
-       ja       G_M14102_IG33
+       ja       G_M14102_IG57
        mov      edi, r12d
        lea      r13, bword ptr [r15+2*rdi]
        sub      ebx, r12d
        test     r14b, r14b
-       je       SHORT G_M14102_IG16
+       je       SHORT G_M14102_IG30
        mov      r15, gword ptr [rbp-0xB0]
        mov      rdi, r15
+       test     rdi, rdi
+       je       SHORT G_M14102_IG28
        mov      rax, 0xD1FFAB1E      ; code for System.Globalization.NumberFormatInfo:<GetInstance>g__GetProviderNonNull|59_0(System.IFormatProvider):System.Globalization.NumberFormatInfo
        call     [rax]System.Globalization.NumberFormatInfo:<GetInstance>g__GetProviderNonNull|59_0(System.IFormatProvider):System.Globalization.NumberFormatInfo
-       mov      rcx, rax
+       jmp      SHORT G_M14102_IG29
+						;; size=56 bbWeight=0.50 PerfScore 5.75
+G_M14102_IG28:
+       mov      rax, 0xD1FFAB1E      ; code for System.Globalization.NumberFormatInfo:get_CurrentInfo():System.Globalization.NumberFormatInfo
+       call     [rax]System.Globalization.NumberFormatInfo:get_CurrentInfo():System.Globalization.NumberFormatInfo
+						;; size=12 bbWeight=0.50 PerfScore 1.62
+G_M14102_IG29:
        mov      rdi, r13
        mov      esi, ebx
        lea      r8, [rbp-0x70]
+       mov      rcx, rax
        mov      edx, 7
        mov      rax, 0xD1FFAB1E      ; code for System.Number:TryParseBinaryIntegerStyle[ushort,int](System.ReadOnlySpan`1[ushort],int,System.Globalization.NumberFormatInfo,byref):int
        call     [rax]System.Number:TryParseBinaryIntegerStyle[ushort,int](System.ReadOnlySpan`1[ushort],int,System.Globalization.NumberFormatInfo,byref):int
        test     eax, eax
-       jne      G_M14102_IG31
+       jne      G_M14102_IG55
        mov      edi, dword ptr [rbp-0x70]
        mov      dword ptr [rbp-0x48], edi
        mov      edi, dword ptr [rbp-0x48]
        mov      rsi, 0xD1FFAB1E      ; 'revision'
 
        mov      rax, 0xD1FFAB1E      ; code for System.ArgumentOutOfRangeException:ThrowIfNegative[int](int,System.String)
        call     [rax]System.ArgumentOutOfRangeException:ThrowIfNegative[int](int,System.String)
-       jmp      SHORT G_M14102_IG17
-						;; size=119 bbWeight=0.50 PerfScore 11.38
-G_M14102_IG16:
+       jmp      SHORT G_M14102_IG33
+						;; size=70 bbWeight=0.50 PerfScore 7.25
+G_M14102_IG30:
        mov      r15, gword ptr [rbp-0xB0]
        mov      rdi, r15
+       test     rdi, rdi
+       je       SHORT G_M14102_IG31
        mov      rax, 0xD1FFAB1E      ; code for System.Globalization.NumberFormatInfo:<GetInstance>g__GetProviderNonNull|59_0(System.IFormatProvider):System.Globalization.NumberFormatInfo
        call     [rax]System.Globalization.NumberFormatInfo:<GetInstance>g__GetProviderNonNull|59_0(System.IFormatProvider):System.Globalization.NumberFormatInfo
-       mov      rcx, rax
+       jmp      SHORT G_M14102_IG32
+						;; size=29 bbWeight=0.50 PerfScore 3.88
+G_M14102_IG31:
+       mov      rax, 0xD1FFAB1E      ; code for System.Globalization.NumberFormatInfo:get_CurrentInfo():System.Globalization.NumberFormatInfo
+       call     [rax]System.Globalization.NumberFormatInfo:get_CurrentInfo():System.Globalization.NumberFormatInfo
+						;; size=12 bbWeight=0.50 PerfScore 1.62
+G_M14102_IG32:
        mov      rdi, r13
        mov      esi, ebx
        lea      r8, [rbp-0x48]
+       mov      rcx, rax
        mov      edx, 7
        mov      rax, 0xD1FFAB1E      ; code for System.Number:TryParseBinaryIntegerStyle[ushort,int](System.ReadOnlySpan`1[ushort],int,System.Globalization.NumberFormatInfo,byref):int
        call     [rax]System.Number:TryParseBinaryIntegerStyle[ushort,int](System.ReadOnlySpan`1[ushort],int,System.Globalization.NumberFormatInfo,byref):int
        test     eax, eax
        jne      G_M14102_IG04
        cmp      dword ptr [rbp-0x48], 0
        jl       G_M14102_IG04
-						;; size=69 bbWeight=0.50 PerfScore 6.75
-G_M14102_IG17:
+						;; size=47 bbWeight=0.50 PerfScore 4.50
+G_M14102_IG33:
        mov      rdi, 0xD1FFAB1E      ; System.Version
        call     CORINFO_HELP_NEWSFAST
        mov      r13, rax
        mov      rdi, r13
        mov      esi, dword ptr [rbp-0x50]
        mov      edx, dword ptr [rbp-0x38]
        mov      ecx, dword ptr [rbp-0x40]
        mov      r8d, dword ptr [rbp-0x48]
        mov      rax, 0xD1FFAB1E      ; code for System.Version:.ctor(int,int,int,int):this
        call     [rax]System.Version:.ctor(int,int,int,int):this
-       jmp      G_M14102_IG24
+       jmp      G_M14102_IG48
 						;; size=51 bbWeight=0.50 PerfScore 5.50
-G_M14102_IG18:
+G_M14102_IG34:
        mov      r13d, dword ptr [rbp-0x30]
        inc      r13d
        cmp      r13d, ebx
-       ja       G_M14102_IG33
+       ja       G_M14102_IG57
        mov      edi, r13d
        lea      r15, bword ptr [r15+2*rdi]
        mov      r12d, ebx
        sub      r12d, r13d
        test     r14b, r14b
-       je       SHORT G_M14102_IG19
+       je       SHORT G_M14102_IG37
        mov      r13, gword ptr [rbp-0xB0]
        mov      rdi, r13
+       test     rdi, rdi
+       je       SHORT G_M14102_IG35
        mov      rax, 0xD1FFAB1E      ; code for System.Globalization.NumberFormatInfo:<GetInstance>g__GetProviderNonNull|59_0(System.IFormatProvider):System.Globalization.NumberFormatInfo
        call     [rax]System.Globalization.NumberFormatInfo:<GetInstance>g__GetProviderNonNull|59_0(System.IFormatProvider):System.Globalization.NumberFormatInfo
-       mov      rcx, rax
+       jmp      SHORT G_M14102_IG36
+						;; size=63 bbWeight=0.50 PerfScore 6.38
+G_M14102_IG35:
+       mov      rax, 0xD1FFAB1E      ; code for System.Globalization.NumberFormatInfo:get_CurrentInfo():System.Globalization.NumberFormatInfo
+       call     [rax]System.Globalization.NumberFormatInfo:get_CurrentInfo():System.Globalization.NumberFormatInfo
+						;; size=12 bbWeight=0.50 PerfScore 1.62
+G_M14102_IG36:
        mov      rdi, r15
        mov      esi, r12d
        lea      r8, [rbp-0x78]
+       mov      rcx, rax
        mov      edx, 7
        mov      rax, 0xD1FFAB1E      ; code for System.Number:TryParseBinaryIntegerStyle[ushort,int](System.ReadOnlySpan`1[ushort],int,System.Globalization.NumberFormatInfo,byref):int
        call     [rax]System.Number:TryParseBinaryIntegerStyle[ushort,int](System.ReadOnlySpan`1[ushort],int,System.Globalization.NumberFormatInfo,byref):int
        test     eax, eax
-       jne      G_M14102_IG32
+       jne      G_M14102_IG56
        mov      edi, dword ptr [rbp-0x78]
        mov      dword ptr [rbp-0x40], edi
        mov      edi, dword ptr [rbp-0x40]
        mov      rsi, 0xD1FFAB1E      ; 'build'
 
        mov      rax, 0xD1FFAB1E      ; code for System.ArgumentOutOfRangeException:ThrowIfNegative[int](int,System.String)
        call     [rax]System.ArgumentOutOfRangeException:ThrowIfNegative[int](int,System.String)
-       jmp      SHORT G_M14102_IG20
-						;; size=127 bbWeight=0.50 PerfScore 12.00
-G_M14102_IG19:
+       jmp      SHORT G_M14102_IG40
+						;; size=71 bbWeight=0.50 PerfScore 7.25
+G_M14102_IG37:
        mov      r13, gword ptr [rbp-0xB0]
        mov      rdi, r13
+       test     rdi, rdi
+       je       SHORT G_M14102_IG38
        mov      rax, 0xD1FFAB1E      ; code for System.Globalization.NumberFormatInfo:<GetInstance>g__GetProviderNonNull|59_0(System.IFormatProvider):System.Globalization.NumberFormatInfo
        call     [rax]System.Globalization.NumberFormatInfo:<GetInstance>g__GetProviderNonNull|59_0(System.IFormatProvider):System.Globalization.NumberFormatInfo
-       mov      rcx, rax
+       jmp      SHORT G_M14102_IG39
+						;; size=29 bbWeight=0.50 PerfScore 3.88
+G_M14102_IG38:
+       mov      rax, 0xD1FFAB1E      ; code for System.Globalization.NumberFormatInfo:get_CurrentInfo():System.Globalization.NumberFormatInfo
+       call     [rax]System.Globalization.NumberFormatInfo:get_CurrentInfo():System.Globalization.NumberFormatInfo
+						;; size=12 bbWeight=0.50 PerfScore 1.62
+G_M14102_IG39:
        mov      rdi, r15
        mov      esi, r12d
        lea      r8, [rbp-0x40]
+       mov      rcx, rax
        mov      edx, 7
        mov      rax, 0xD1FFAB1E      ; code for System.Number:TryParseBinaryIntegerStyle[ushort,int](System.ReadOnlySpan`1[ushort],int,System.Globalization.NumberFormatInfo,byref):int
        call     [rax]System.Number:TryParseBinaryIntegerStyle[ushort,int](System.ReadOnlySpan`1[ushort],int,System.Globalization.NumberFormatInfo,byref):int
        test     eax, eax
        jne      G_M14102_IG04
        cmp      dword ptr [rbp-0x40], 0
        jl       G_M14102_IG04
-						;; size=70 bbWeight=0.50 PerfScore 6.75
-G_M14102_IG20:
+						;; size=48 bbWeight=0.50 PerfScore 4.50
+G_M14102_IG40:
        mov      rdi, 0xD1FFAB1E      ; System.Version
        call     CORINFO_HELP_NEWSFAST
        mov      r13, rax
        mov      rdi, r13
        mov      esi, dword ptr [rbp-0x50]
        mov      edx, dword ptr [rbp-0x38]
        mov      ecx, dword ptr [rbp-0x40]
        mov      rax, 0xD1FFAB1E      ; code for System.Version:.ctor(int,int,int):this
        call     [rax]System.Version:.ctor(int,int,int):this
-       jmp      G_M14102_IG24
+       jmp      G_M14102_IG48
 						;; size=47 bbWeight=0.50 PerfScore 5.00
-G_M14102_IG21:
+G_M14102_IG41:
        inc      r13d
        mov      r15, bword ptr [rbp-0xA8]
        sub      ebx, r13d
        test     r14b, r14b
-       je       SHORT G_M14102_IG22
+       je       SHORT G_M14102_IG44
        mov      r13, gword ptr [rbp-0xB0]
        mov      rdi, r13
+       test     rdi, rdi
+       je       SHORT G_M14102_IG42
        mov      rax, 0xD1FFAB1E      ; code for System.Globalization.NumberFormatInfo:<GetInstance>g__GetProviderNonNull|59_0(System.IFormatProvider):System.Globalization.NumberFormatInfo
        call     [rax]System.Globalization.NumberFormatInfo:<GetInstance>g__GetProviderNonNull|59_0(System.IFormatProvider):System.Globalization.NumberFormatInfo
-       mov      rcx, rax
+       jmp      SHORT G_M14102_IG43
+						;; size=47 bbWeight=0.50 PerfScore 5.25
+G_M14102_IG42:
+       mov      rax, 0xD1FFAB1E      ; code for System.Globalization.NumberFormatInfo:get_CurrentInfo():System.Globalization.NumberFormatInfo
+       call     [rax]System.Globalization.NumberFormatInfo:get_CurrentInfo():System.Globalization.NumberFormatInfo
+						;; size=12 bbWeight=0.50 PerfScore 1.62
+G_M14102_IG43:
        mov      rdi, r15
        mov      esi, ebx
        lea      r8, [rbp-0x80]
+       mov      rcx, rax
        mov      edx, 7
        mov      rax, 0xD1FFAB1E      ; code for System.Number:TryParseBinaryIntegerStyle[ushort,int](System.ReadOnlySpan`1[ushort],int,System.Globalization.NumberFormatInfo,byref):int
        call     [rax]System.Number:TryParseBinaryIntegerStyle[ushort,int](System.ReadOnlySpan`1[ushort],int,System.Globalization.NumberFormatInfo,byref):int
        test     eax, eax
-       jne      G_M14102_IG34
+       jne      G_M14102_IG58
        mov      edi, dword ptr [rbp-0x80]
        mov      dword ptr [rbp-0x38], edi
        mov      edi, dword ptr [rbp-0x38]
        mov      rsi, 0xD1FFAB1E      ; 'input'
 
        mov      rax, 0xD1FFAB1E      ; code for System.ArgumentOutOfRangeException:ThrowIfNegative[int](int,System.String)
        call     [rax]System.ArgumentOutOfRangeException:ThrowIfNegative[int](int,System.String)
-       jmp      SHORT G_M14102_IG23
-						;; size=110 bbWeight=0.50 PerfScore 10.88
-G_M14102_IG22:
+       jmp      SHORT G_M14102_IG47
+						;; size=70 bbWeight=0.50 PerfScore 7.25
+G_M14102_IG44:
        mov      r13, gword ptr [rbp-0xB0]
        mov      rdi, r13
+       test     rdi, rdi
+       je       SHORT G_M14102_IG45
        mov      rax, 0xD1FFAB1E      ; code for System.Globalization.NumberFormatInfo:<GetInstance>g__GetProviderNonNull|59_0(System.IFormatProvider):System.Globalization.NumberFormatInfo
        call     [rax]System.Globalization.NumberFormatInfo:<GetInstance>g__GetProviderNonNull|59_0(System.IFormatProvider):System.Globalization.NumberFormatInfo
-       mov      rcx, rax
+       jmp      SHORT G_M14102_IG46
+						;; size=29 bbWeight=0.50 PerfScore 3.88
+G_M14102_IG45:
+       mov      rax, 0xD1FFAB1E      ; code for System.Globalization.NumberFormatInfo:get_CurrentInfo():System.Globalization.NumberFormatInfo
+       call     [rax]System.Globalization.NumberFormatInfo:get_CurrentInfo():System.Globalization.NumberFormatInfo
+						;; size=12 bbWeight=0.50 PerfScore 1.62
+G_M14102_IG46:
        mov      rdi, r15
        mov      esi, ebx
        lea      r8, [rbp-0x38]
+       mov      rcx, rax
        mov      edx, 7
        mov      rax, 0xD1FFAB1E      ; code for System.Number:TryParseBinaryIntegerStyle[ushort,int](System.ReadOnlySpan`1[ushort],int,System.Globalization.NumberFormatInfo,byref):int
        call     [rax]System.Number:TryParseBinaryIntegerStyle[ushort,int](System.ReadOnlySpan`1[ushort],int,System.Globalization.NumberFormatInfo,byref):int
        test     eax, eax
        jne      G_M14102_IG04
        cmp      dword ptr [rbp-0x38], 0
        jl       G_M14102_IG04
-						;; size=69 bbWeight=0.50 PerfScore 6.75
-G_M14102_IG23:
+						;; size=47 bbWeight=0.50 PerfScore 4.50
+G_M14102_IG47:
        mov      rdi, 0xD1FFAB1E      ; System.Version
        call     CORINFO_HELP_NEWSFAST
        mov      r13, rax
        mov      rdi, r13
        mov      esi, dword ptr [rbp-0x50]
        mov      edx, dword ptr [rbp-0x38]
        mov      rax, 0xD1FFAB1E      ; code for System.Version:.ctor(int,int):this
        call     [rax]System.Version:.ctor(int,int):this
 						;; size=39 bbWeight=0.50 PerfScore 3.50
-G_M14102_IG24:
+G_M14102_IG48:
        mov      rax, r13
 						;; size=3 bbWeight=0.50 PerfScore 0.12
-G_M14102_IG25:
+G_M14102_IG49:
        add      rsp, 136
        pop      rbx
        pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
 						;; size=18 bbWeight=0.50 PerfScore 2.12
-G_M14102_IG26:
+G_M14102_IG50:
        mov      rdi, 0xD1FFAB1E      ; System.ArgumentException
        call     CORINFO_HELP_NEWSFAST
        mov      r12, rax
        mov      rax, 0xD1FFAB1E      ; code for System.SR:get_Arg_VersionString():System.String
        call     [rax]System.SR:get_Arg_VersionString():System.String
        mov      r15, rax
        mov      edi, 0x1827
        mov      rsi, 0xD1FFAB1E
        call     CORINFO_HELP_STRCNS
        mov      rdx, rax
        mov      rsi, r15
        mov      rdi, r12
        mov      rax, 0xD1FFAB1E      ; code for System.ArgumentException:.ctor(System.String,System.String):this
        call     [rax]System.ArgumentException:.ctor(System.String,System.String):this
        mov      rdi, r12
        call     CORINFO_HELP_THROW
 						;; size=82 bbWeight=0 PerfScore 0.00
-G_M14102_IG27:
+G_M14102_IG51:
        mov      rdi, 0xD1FFAB1E      ; System.ArgumentException
        call     CORINFO_HELP_NEWSFAST
        mov      rbx, rax
        mov      rax, 0xD1FFAB1E      ; code for System.SR:get_Arg_VersionString():System.String
        call     [rax]System.SR:get_Arg_VersionString():System.String
        mov      r15, rax
        mov      edi, 0x1827
        mov      rsi, 0xD1FFAB1E
        call     CORINFO_HELP_STRCNS
        mov      rdx, rax
        mov      rsi, r15
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.ArgumentException:.ctor(System.String,System.String):this
        call     [rax]System.ArgumentException:.ctor(System.String,System.String):this
        mov      rdi, rbx
        call     CORINFO_HELP_THROW
 						;; size=82 bbWeight=0 PerfScore 0.00
-G_M14102_IG28:
+G_M14102_IG52:
        cmp      eax, 1
-       jne      G_M14102_IG35
+       jne      G_M14102_IG59
        mov      rdi, bword ptr [rbp-0x90]
        mov      esi, dword ptr [rbp-0x84]
        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=35 bbWeight=0 PerfScore 0.00
-G_M14102_IG29:
+G_M14102_IG53:
        cmp      eax, 1
-       jne      G_M14102_IG35
+       jne      G_M14102_IG59
        mov      rdi, bword ptr [rbp-0x98]
        mov      esi, r13d
        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=32 bbWeight=0 PerfScore 0.00
-G_M14102_IG30:
+G_M14102_IG54:
        cmp      eax, 1
-       jne      SHORT G_M14102_IG35
+       jne      SHORT G_M14102_IG59
        mov      rdi, bword ptr [rbp-0xA0]
        mov      esi, r13d
        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=28 bbWeight=0 PerfScore 0.00
-G_M14102_IG31:
+G_M14102_IG55:
        cmp      eax, 1
-       jne      SHORT G_M14102_IG35
+       jne      SHORT G_M14102_IG59
        mov      rdi, r13
        mov      esi, ebx
        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=23 bbWeight=0 PerfScore 0.00
-G_M14102_IG32:
+G_M14102_IG56:
        cmp      eax, 1
-       jne      SHORT G_M14102_IG35
+       jne      SHORT G_M14102_IG59
        mov      rdi, r15
        mov      esi, r12d
        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=24 bbWeight=0 PerfScore 0.00
-G_M14102_IG33:
+G_M14102_IG57:
        mov      rax, 0xD1FFAB1E      ; code for System.ThrowHelper:ThrowArgumentOutOfRangeException()
        call     [rax]System.ThrowHelper:ThrowArgumentOutOfRangeException()
        int3     
 						;; size=13 bbWeight=0 PerfScore 0.00
-G_M14102_IG34:
+G_M14102_IG58:
        cmp      eax, 1
-       jne      SHORT G_M14102_IG35
+       jne      SHORT G_M14102_IG59
        mov      rdi, r15
        mov      esi, ebx
        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=23 bbWeight=0 PerfScore 0.00
-G_M14102_IG35:
+G_M14102_IG59:
        mov      rax, 0xD1FFAB1E      ; code for System.Number:ThrowOverflowException[int]()
        call     [rax]System.Number:ThrowOverflowException[int]()
        int3     
 						;; size=13 bbWeight=0 PerfScore 0.00
 
-; Total bytes of code 2097, prolog size 25, PerfScore 380.89, instruction count 492, allocated bytes for code 2097 (MethodHash=fb9ec8e9) for method System.Version:ParseVersion(System.ReadOnlySpan`1[ushort],ubyte):System.Version (FullOpts)
+; Total bytes of code 2335, prolog size 25, PerfScore 444.69, instruction count 554, allocated bytes for code 2335 (MethodHash=fb9ec8e9) for method System.Version:ParseVersion(System.ReadOnlySpan`1[ushort],ubyte):System.Version (FullOpts)
181 (6.75 % of base) - System.TimeZoneInfo+StringSerializer:SerializeTransitionTime(System.TimeZoneInfo+TransitionTime,byref)
 ; Assembly listing for method System.TimeZoneInfo+StringSerializer:SerializeTransitionTime(System.TimeZoneInfo+TransitionTime,byref) (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; 88 single block inlinees; 76 inlinees without PGO data
 ; Final local variable assignments
 ;
-;  V00 arg0         [V00,T31] (  6,  4.50)  struct (24) [rbp+0x10]  do-not-enreg[SF] ld-addr-op single-def <System.TimeZoneInfo+TransitionTime>
+;  V00 arg0         [V00,T35] (  6,  4.50)  struct (24) [rbp+0x10]  do-not-enreg[SF] ld-addr-op single-def <System.TimeZoneInfo+TransitionTime>
 ;  V01 arg1         [V01,T00] ( 82, 52.50)   byref  ->  rbx         single-def
 ;  V02 OutArgs      [V02    ] (  1,  1   )  struct (16) [rsp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
 ;* V03 tmp1         [V03    ] (  0,  0   )   byref  ->  zero-ref   
 ;* V04 tmp2         [V04    ] (  0,  0   )   byref  ->  zero-ref    single-def
 ;  V05 tmp3         [V05,T97] (  2,  2   )     int  ->  rdi        
 ;* V06 tmp4         [V06    ] (  0,  0   )  struct ( 8) zero-ref    "impAppendStmt" <System.DateTime>
 ;* V07 tmp5         [V07    ] (  0,  0   )     int  ->  zero-ref    "impAppendStmt"
 ;* V08 tmp6         [V08    ] (  0,  0   )     int  ->  zero-ref    "impAppendStmt"
 ;* V09 tmp7         [V09    ] (  0,  0   )     int  ->  zero-ref    "impAppendStmt"
 ;* V10 tmp8         [V10    ] (  0,  0   )     int  ->  zero-ref    "impAppendStmt"
-;  V11 tmp9         [V11,T56] (  4,  3   )     int  ->  rdi         "Inline stloc first use temp"
+;  V11 tmp9         [V11,T59] (  4,  3   )     int  ->  rdi         "Inline stloc first use temp"
 ;* V12 tmp10        [V12    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline stloc first use temp" <System.Span`1[ushort]>
-;  V13 tmp11        [V13,T57] (  4,  3   )     int  ->  rdi         "Inline stloc first use temp"
+;  V13 tmp11        [V13,T60] (  4,  3   )     int  ->  rdi         "Inline stloc first use temp"
 ;* V14 tmp12        [V14    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline stloc first use temp" <System.Span`1[ushort]>
-;  V15 tmp13        [V15,T47] (  3,  4   )  ushort  ->  rsi         "Inlining Arg"
-;  V16 tmp14        [V16,T58] (  4,  3   )     int  ->  rdi         "Inline stloc first use temp"
+;  V15 tmp13        [V15,T50] (  3,  4   )  ushort  ->  rsi         "Inlining Arg"
+;  V16 tmp14        [V16,T61] (  4,  3   )     int  ->  rdi         "Inline stloc first use temp"
 ;* V17 tmp15        [V17    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline stloc first use temp" <System.Span`1[ushort]>
 ;  V18 tmp16        [V18    ] (  3,  5   )  struct ( 8) [rbp-0x30]  do-not-enreg[XS] addr-exposed ld-addr-op "Inlining Arg" <System.DateTime>
 ;* V19 tmp17        [V19    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.DateTime>
 ;  V20 tmp18        [V20,T88] (  2,  2   )   byref  ->   r8         single-def
 ;  V21 tmp19        [V21    ] (  2,  1.50)     int  ->  [rbp-0x38]  do-not-enreg[X] addr-exposed ld-addr-op "Inline ldloca(s) first use temp"
 ;* V22 tmp20        [V22    ] (  0,  0   )  struct (16) zero-ref    "impAppendStmt" <System.Span`1[ushort]>
-;  V23 tmp21        [V23,T30] (  3,  5   )     ref  ->  r14         class-hnd exact single-def "Inlining Arg" <System.Globalization.DateTimeFormatInfo>
+;  V23 tmp21        [V23,T34] (  3,  5   )     ref  ->  r14         class-hnd exact single-def "Inlining Arg" <System.Globalization.DateTimeFormatInfo>
 ;* V24 tmp22        [V24    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
-;  V25 tmp23        [V25,T13] (  4,  8   )     int  ->  rsi         "Inlining Arg"
-;  V26 tmp24        [V26,T25] (  3,  6   )   byref  ->   r9         single-def "Inlining Arg"
+;  V25 tmp23        [V25,T16] (  4,  8   )     int  ->  rsi         "Inlining Arg"
+;  V26 tmp24        [V26,T26] (  3,  6   )   byref  ->   r9         single-def "Inlining Arg"
 ;* V27 tmp25        [V27    ] (  0,  0   )  struct (16) zero-ref    multireg-arg ld-addr-op "NewObj constructor temp" <System.Span`1[ushort]>
-;  V28 tmp26        [V28,T48] (  2,  4   )   byref  ->   r9         single-def "Inlining Arg"
-;  V29 tmp27        [V29,T49] (  2,  4   )     int  ->  rdx         "Inlining Arg"
+;  V28 tmp26        [V28,T51] (  2,  4   )   byref  ->   r9         single-def "Inlining Arg"
+;  V29 tmp27        [V29,T52] (  2,  4   )     int  ->  rdx         "Inlining Arg"
 ;* V30 tmp28        [V30    ] (  0,  0   )  struct (16) zero-ref    "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
 ;* V31 tmp29        [V31    ] (  0,  0   )  struct (16) zero-ref    multireg-arg ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
 ;* V32 tmp30        [V32    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
 ;* V33 tmp31        [V33    ] (  0,  0   )  struct ( 8) zero-ref    "Inlining Arg" <System.DateTime>
 ;* V34 tmp32        [V34    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "NewObj constructor temp" <System.TimeSpan>
 ;* V35 tmp33        [V35    ] (  0,  0   )  struct ( 8) zero-ref    "Inlining Arg" <System.DateTime>
 ;* V36 tmp34        [V36    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "NewObj constructor temp" <System.TimeSpan>
-;  V37 tmp35        [V37,T27] (  5,  5   )     ref  ->  rax         class-hnd exact single-def "Inlining Arg" <System.String>
+;  V37 tmp35        [V37,T28] (  5,  5   )     ref  ->  rax         class-hnd exact single-def "Inlining Arg" <System.String>
 ;  V38 tmp36        [V38,T75] (  5,  2.50)     int  ->  rdi         "Inline stloc first use temp"
-;  V39 tmp37        [V39,T61] (  3,  3   )   byref  ->  rsi         single-def "Span.get_Item ptrToSpan"
-;  V40 tmp38        [V40,T59] (  4,  3   )     int  ->  rdi         "Inline stloc first use temp"
+;  V39 tmp37        [V39,T64] (  3,  3   )   byref  ->  rsi         single-def "Span.get_Item ptrToSpan"
+;  V40 tmp38        [V40,T62] (  4,  3   )     int  ->  rdi         "Inline stloc first use temp"
 ;* V41 tmp39        [V41    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline stloc first use temp" <System.Span`1[ushort]>
 ;  V42 tmp40        [V42    ] (  3,  5   )     int  ->  [rbp-0x3C]  do-not-enreg[X] addr-exposed ld-addr-op "Inlining Arg"
 ;* V43 tmp41        [V43    ] (  0,  0   )     int  ->  zero-ref    ld-addr-op "Inline ldloca(s) first use temp"
 ;  V44 tmp42        [V44,T89] (  2,  2   )   byref  ->  rdi         single-def
 ;  V45 tmp43        [V45    ] (  4,  2   )     int  ->  [rbp-0x48]  do-not-enreg[X] addr-exposed ld-addr-op "Inline ldloca(s) first use temp"
 ;* V46 tmp44        [V46    ] (  0,  0   )  struct (16) zero-ref    multireg-arg "impAppendStmt" <System.Span`1[ushort]>
-;  V47 tmp45        [V47,T46] (  3,  4   )     ref  ->  r12         class-hnd exact single-def "Inlining Arg" <System.Globalization.CultureInfo>
+;  V47 tmp45        [V47,T25] (  5,  6   )     ref  ->  r12         class-hnd exact single-def "Inlining Arg" <System.Globalization.CultureInfo>
 ;* V48 tmp46        [V48    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
-;  V49 tmp47        [V49,T14] (  4,  8   )     int  ->  rcx         "Inlining Arg"
-;  V50 tmp48        [V50,T26] (  3,  6   )   byref  ->  rax         single-def "Inlining Arg"
+;  V49 tmp47        [V49,T17] (  4,  8   )     int  ->  rcx         "Inlining Arg"
+;  V50 tmp48        [V50,T27] (  3,  6   )   byref  ->  rax         single-def "Inlining Arg"
 ;* V51 tmp49        [V51    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.Span`1[ushort]>
-;  V52 tmp50        [V52,T12] (  4,  6   )   byref  ->  rax         single-def "Inlining Arg"
+;  V52 tmp50        [V52,T15] (  4,  6   )   byref  ->  rax         single-def "Inlining Arg"
 ;  V53 tmp51        [V53,T22] (  3,  5   )     int  ->  rdx         "Inlining Arg"
 ;* V54 tmp52        [V54    ] (  0,  0   )  struct (16) zero-ref    "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
 ;* V55 tmp53        [V55    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
 ;  V56 tmp54        [V56,T87] (  3,  2   )   ubyte  ->  rax         "Inline return value spill temp"
 ;* V57 tmp55        [V57    ] (  0,  0   )  struct (16) zero-ref    multireg-arg ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
-;  V58 tmp56        [V58,T11] (  6,  8   )     int  ->  [rbp-0x4C]  spill-single-def "Inlining Arg"
+;  V58 tmp56        [V58,T14] (  6,  8   )     int  ->  [rbp-0x4C]  spill-single-def "Inlining Arg"
 ;* V59 tmp57        [V59    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
-;  V60 tmp58        [V60,T142] (  2,  1   )     ref  ->  rax         class-hnd "Inline return value spill temp" <System.Globalization.NumberFormatInfo>
+;  V60 tmp58        [V60,T113] (  3,  1.50)     ref  ->  rax         class-hnd "Inline return value spill temp" <System.Globalization.NumberFormatInfo>
 ;* V61 tmp59        [V61    ] (  0,  0   )  struct (16) zero-ref    "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
 ;* V62 tmp60        [V62    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
 ;* V63 tmp61        [V63    ] (  0,  0   )  struct (16) zero-ref    "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
-;  V64 tmp62        [V64,T32] (  4,  4   )     ref  ->   r8         class-hnd exact single-def "Inlining Arg" <System.String>
+;  V64 tmp62        [V64,T36] (  4,  4   )     ref  ->   r8         class-hnd exact single-def "Inlining Arg" <System.String>
 ;* V65 tmp63        [V65    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
 ;* V66 tmp64        [V66    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
 ;  V67 tmp65        [V67,T90] (  2,  2   )   byref  ->  rdx         single-def "Inlining Arg"
 ;  V68 tmp66        [V68,T98] (  2,  2   )     int  ->  rcx         "Inlining Arg"
 ;* V69 tmp67        [V69    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V70 tmp68        [V70    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V71 tmp69        [V71    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
 ;* V72 tmp70        [V72    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V73 tmp71        [V73    ] (  0,  0   )    long  ->  zero-ref    "Inline stloc first use temp"
-;  V74 tmp72        [V74,T174] (  2,  1   )     int  ->  rcx         "Inline stloc first use temp"
+;  V74 tmp72        [V74,T175] (  2,  1   )     int  ->  rcx         "Inline stloc first use temp"
 ;* V75 tmp73        [V75    ] (  0,  0   )  struct (16) zero-ref    multireg-arg ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
 ;* V76 tmp74        [V76    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
 ;* V77 tmp75        [V77    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
-;  V78 tmp76        [V78,T118] (  3,  1.50)   ubyte  ->  rax         "Inline return value spill temp"
-;  V79 tmp77        [V79,T83] (  4,  2   )     int  ->  rdi         "Inline stloc first use temp"
+;  V78 tmp76        [V78,T129] (  3,  1.50)   ubyte  ->  rax         "Inline return value spill temp"
+;  V79 tmp77        [V79,T84] (  4,  2   )     int  ->  rdi         "Inline stloc first use temp"
 ;* V80 tmp78        [V80    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.Span`1[ushort]>
 ;  V81 tmp79        [V81    ] (  3,  1.50)   byref  ->  [rbp-0x58]  must-init pinned "Inline stloc first use temp"
 ;* V82 tmp80        [V82    ] (  0,  0   )    long  ->  zero-ref    "Inline stloc first use temp"
 ;* V83 tmp81        [V83    ] (  0,  0   )    long  ->  zero-ref    "Inline stloc first use temp"
 ;* V84 tmp82        [V84    ] (  0,  0   )  struct (16) zero-ref    "ReadOnlySpan<T> for CreateSpan<T>" <System.ReadOnlySpan`1[long]>
 ;* V85 tmp83        [V85    ] (  0,  0   )  struct (16) zero-ref    "Inline stloc first use temp" <System.ReadOnlySpan`1[long]>
 ;* V86 tmp84        [V86    ] (  0,  0   )   byref  ->  zero-ref    "impAppendStmt"
 ;* V87 tmp85        [V87    ] (  0,  0   )    long  ->  zero-ref    "Inline stloc first use temp"
 ;* V88 tmp86        [V88    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[long]>
 ;* V89 tmp87        [V89    ] (  0,  0   )     int  ->  zero-ref    "Inline return value spill temp"
 ;* V90 tmp88        [V90    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
 ;* V91 tmp89        [V91    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.Span`1[ushort]>
 ;* V92 tmp90        [V92    ] (  0,  0   )    long  ->  zero-ref    "Inline return value spill temp"
 ;  V93 tmp91        [V93,T01] ( 10, 38   )     int  ->  registers   "Inlining Arg"
 ;  V94 tmp92        [V94,T04] (  6, 27   )    long  ->  rdi         "Inlining Arg"
 ;* V95 tmp93        [V95    ] (  0,  0   )    long  ->  zero-ref    "dup spill"
 ;* V96 tmp94        [V96    ] (  0,  0   )  struct ( 8) zero-ref    "dup spill" <System.ValueTuple`2[uint,uint]>
 ;* V97 tmp95        [V97    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
-;  V98 tmp96        [V98,T08] (  3, 12   )     int  ->  rcx         "Inline stloc first use temp"
+;  V98 tmp96        [V98,T11] (  3, 12   )     int  ->  rcx         "Inline stloc first use temp"
 ;* V99 tmp97        [V99    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "NewObj constructor temp" <System.ValueTuple`2[uint,uint]>
 ;* V100 tmp98       [V100    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
 ;* V101 tmp99       [V101    ] (  0,  0   )    long  ->  zero-ref   
 ;* V102 tmp100      [V102    ] (  0,  0   )    long  ->  zero-ref   
-;  V103 tmp101      [V103,T15] (  2,  8   )     ref  ->  rdx        
+;  V103 tmp101      [V103,T08] (  3, 12   )     ref  ->  rdx        
 ;* V104 tmp102      [V104    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
 ;* V105 tmp103      [V105    ] (  0,  0   )    long  ->  zero-ref   
-;  V106 tmp104      [V106,T175] (  2,  1   )    long  ->  rdi        
-;  V107 tmp105      [V107,T143] (  2,  1   )     ref  ->  rax         single-def
+;  V106 tmp104      [V106,T176] (  2,  1   )    long  ->  rdi        
+;  V107 tmp105      [V107,T114] (  3,  1.50)     ref  ->  rax         single-def
 ;* V108 tmp106      [V108    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
 ;* V109 tmp107      [V109    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
-;  V110 tmp108      [V110,T54] (  6,  3   )     ref  ->  rax         class-hnd "Inline return value spill temp" <System.String>
-;  V111 tmp109      [V111,T36] (  4,  4   )     int  ->  [rbp-0x5C]  spill-single-def "Inlining Arg"
+;  V110 tmp108      [V110,T57] (  6,  3   )     ref  ->  rax         class-hnd "Inline return value spill temp" <System.String>
+;  V111 tmp109      [V111,T40] (  4,  4   )     int  ->  [rbp-0x5C]  spill-single-def "Inlining Arg"
 ;* V112 tmp110      [V112    ] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;  V113 tmp111      [V113,T144] (  2,  1   )     ref  ->  rax         class-hnd "Inline return value spill temp" <System.Globalization.NumberFormatInfo>
+;  V113 tmp111      [V113,T115] (  3,  1.50)     ref  ->  rax         class-hnd "Inline return value spill temp" <System.Globalization.NumberFormatInfo>
 ;  V114 tmp112      [V114,T76] (  5,  2.50)     int  ->  rdi         "Inline stloc first use temp"
-;  V115 tmp113      [V115,T62] (  3,  3   )   byref  ->  rsi         single-def "Span.get_Item ptrToSpan"
-;  V116 tmp114      [V116,T60] (  4,  3   )     int  ->  rdi         "Inline stloc first use temp"
+;  V115 tmp113      [V115,T65] (  3,  3   )   byref  ->  rsi         single-def "Span.get_Item ptrToSpan"
+;  V116 tmp114      [V116,T63] (  4,  3   )     int  ->  rdi         "Inline stloc first use temp"
 ;* V117 tmp115      [V117    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline stloc first use temp" <System.Span`1[ushort]>
 ;  V118 tmp116      [V118    ] (  3,  3   )     int  ->  [rbp-0x60]  do-not-enreg[X] addr-exposed ld-addr-op "Inlining Arg"
 ;* V119 tmp117      [V119    ] (  0,  0   )     int  ->  zero-ref    ld-addr-op "Inline ldloca(s) first use temp"
-;  V120 tmp118      [V120,T145] (  2,  1   )   byref  ->  rdi         single-def
+;  V120 tmp118      [V120,T154] (  2,  1   )   byref  ->  rdi         single-def
 ;  V121 tmp119      [V121    ] (  4,  2   )     int  ->  [rbp-0x68]  do-not-enreg[X] addr-exposed ld-addr-op "Inline ldloca(s) first use temp"
 ;* V122 tmp120      [V122    ] (  0,  0   )  struct (16) zero-ref    multireg-arg "impAppendStmt" <System.Span`1[ushort]>
-;  V123 tmp121      [V123,T63] (  3,  3   )     ref  ->  r14         class-hnd exact single-def "Inlining Arg" <System.Globalization.CultureInfo>
+;  V123 tmp121      [V123,T29] (  5,  5   )     ref  ->  r14         class-hnd exact single-def "Inlining Arg" <System.Globalization.CultureInfo>
 ;* V124 tmp122      [V124    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
-;  V125 tmp123      [V125,T37] (  4,  4   )     int  ->  rcx         "Inlining Arg"
-;  V126 tmp124      [V126,T64] (  3,  3   )   byref  ->  rax         single-def "Inlining Arg"
+;  V125 tmp123      [V125,T41] (  4,  4   )     int  ->  rcx         "Inlining Arg"
+;  V126 tmp124      [V126,T66] (  3,  3   )   byref  ->  rax         single-def "Inlining Arg"
 ;* V127 tmp125      [V127    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.Span`1[ushort]>
-;  V128 tmp126      [V128,T28] (  4,  4   )   byref  ->  r15         single-def "Inlining Arg"
-;  V129 tmp127      [V129,T38] (  3,  3   )     int  ->  rdx         "Inlining Arg"
+;  V128 tmp126      [V128,T30] (  4,  4   )   byref  ->  r15         single-def "Inlining Arg"
+;  V129 tmp127      [V129,T42] (  3,  3   )     int  ->  rdx         "Inlining Arg"
 ;* V130 tmp128      [V130    ] (  0,  0   )  struct (16) zero-ref    "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
 ;* V131 tmp129      [V131    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
-;  V132 tmp130      [V132,T119] (  3,  1.50)   ubyte  ->  rax         "Inline return value spill temp"
+;  V132 tmp130      [V132,T130] (  3,  1.50)   ubyte  ->  rax         "Inline return value spill temp"
 ;* V133 tmp131      [V133    ] (  0,  0   )  struct (16) zero-ref    multireg-arg ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
 ;  V134 tmp132      [V134,T23] (  6,  6   )     int  ->  [rbp-0x6C]  spill-single-def "Inlining Arg"
 ;* V135 tmp133      [V135    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
-;  V136 tmp134      [V136,T146] (  2,  1   )     ref  ->  rax         class-hnd "Inline return value spill temp" <System.Globalization.NumberFormatInfo>
+;  V136 tmp134      [V136,T116] (  3,  1.50)     ref  ->  rax         class-hnd "Inline return value spill temp" <System.Globalization.NumberFormatInfo>
 ;* V137 tmp135      [V137    ] (  0,  0   )  struct (16) zero-ref    "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
 ;* V138 tmp136      [V138    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
 ;* V139 tmp137      [V139    ] (  0,  0   )  struct (16) zero-ref    "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
-;  V140 tmp138      [V140,T33] (  4,  4   )     ref  ->   r8         class-hnd exact single-def "Inlining Arg" <System.String>
+;  V140 tmp138      [V140,T37] (  4,  4   )     ref  ->   r8         class-hnd exact single-def "Inlining Arg" <System.String>
 ;* V141 tmp139      [V141    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
 ;* V142 tmp140      [V142    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
 ;  V143 tmp141      [V143,T91] (  2,  2   )   byref  ->  rdx         single-def "Inlining Arg"
 ;  V144 tmp142      [V144,T99] (  2,  2   )     int  ->  rcx         "Inlining Arg"
 ;* V145 tmp143      [V145    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V146 tmp144      [V146    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V147 tmp145      [V147    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
 ;* V148 tmp146      [V148    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V149 tmp147      [V149    ] (  0,  0   )    long  ->  zero-ref    "Inline stloc first use temp"
-;  V150 tmp148      [V150,T176] (  2,  1   )     int  ->  rcx         "Inline stloc first use temp"
+;  V150 tmp148      [V150,T177] (  2,  1   )     int  ->  rcx         "Inline stloc first use temp"
 ;* V151 tmp149      [V151    ] (  0,  0   )  struct (16) zero-ref    multireg-arg ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
 ;* V152 tmp150      [V152    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
 ;* V153 tmp151      [V153    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
-;  V154 tmp152      [V154,T120] (  3,  1.50)   ubyte  ->  rax         "Inline return value spill temp"
-;  V155 tmp153      [V155,T84] (  4,  2   )     int  ->  rax         "Inline stloc first use temp"
+;  V154 tmp152      [V154,T131] (  3,  1.50)   ubyte  ->  rax         "Inline return value spill temp"
+;  V155 tmp153      [V155,T85] (  4,  2   )     int  ->  rax         "Inline stloc first use temp"
 ;* V156 tmp154      [V156    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.Span`1[ushort]>
 ;  V157 tmp155      [V157    ] (  3,  1.50)   byref  ->  [rbp-0x78]  must-init pinned "Inline stloc first use temp"
 ;* V158 tmp156      [V158    ] (  0,  0   )    long  ->  zero-ref    "Inline stloc first use temp"
 ;* V159 tmp157      [V159    ] (  0,  0   )    long  ->  zero-ref    "Inline stloc first use temp"
 ;* V160 tmp158      [V160    ] (  0,  0   )  struct (16) zero-ref    "ReadOnlySpan<T> for CreateSpan<T>" <System.ReadOnlySpan`1[long]>
 ;* V161 tmp159      [V161    ] (  0,  0   )  struct (16) zero-ref    "Inline stloc first use temp" <System.ReadOnlySpan`1[long]>
 ;* V162 tmp160      [V162    ] (  0,  0   )   byref  ->  zero-ref    "impAppendStmt"
 ;* V163 tmp161      [V163    ] (  0,  0   )    long  ->  zero-ref    "Inline stloc first use temp"
 ;* V164 tmp162      [V164    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[long]>
 ;* V165 tmp163      [V165    ] (  0,  0   )     int  ->  zero-ref    "Inline return value spill temp"
 ;* V166 tmp164      [V166    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
 ;* V167 tmp165      [V167    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.Span`1[ushort]>
 ;* V168 tmp166      [V168    ] (  0,  0   )    long  ->  zero-ref    "Inline return value spill temp"
 ;  V169 tmp167      [V169,T02] ( 10, 38   )     int  ->  registers   "Inlining Arg"
 ;  V170 tmp168      [V170,T05] (  6, 27   )    long  ->  rdi         "Inlining Arg"
 ;* V171 tmp169      [V171    ] (  0,  0   )    long  ->  zero-ref    "dup spill"
 ;* V172 tmp170      [V172    ] (  0,  0   )  struct ( 8) zero-ref    "dup spill" <System.ValueTuple`2[uint,uint]>
 ;* V173 tmp171      [V173    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
-;  V174 tmp172      [V174,T09] (  3, 12   )     int  ->  rdx         "Inline stloc first use temp"
+;  V174 tmp172      [V174,T12] (  3, 12   )     int  ->  rdx         "Inline stloc first use temp"
 ;* V175 tmp173      [V175    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "NewObj constructor temp" <System.ValueTuple`2[uint,uint]>
 ;* V176 tmp174      [V176    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
 ;* V177 tmp175      [V177    ] (  0,  0   )    long  ->  zero-ref   
 ;* V178 tmp176      [V178    ] (  0,  0   )    long  ->  zero-ref   
-;  V179 tmp177      [V179,T16] (  2,  8   )     ref  ->  rsi        
+;  V179 tmp177      [V179,T09] (  3, 12   )     ref  ->  rsi        
 ;* V180 tmp178      [V180    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
 ;* V181 tmp179      [V181    ] (  0,  0   )    long  ->  zero-ref   
-;  V182 tmp180      [V182,T177] (  2,  1   )    long  ->  rdi        
-;  V183 tmp181      [V183,T147] (  2,  1   )     ref  ->  rax         single-def
+;  V182 tmp180      [V182,T178] (  2,  1   )    long  ->  rdi        
+;  V183 tmp181      [V183,T117] (  3,  1.50)     ref  ->  rax         single-def
 ;* V184 tmp182      [V184    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
 ;* V185 tmp183      [V185    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
-;  V186 tmp184      [V186,T55] (  6,  3   )     ref  ->  rax         class-hnd "Inline return value spill temp" <System.String>
-;  V187 tmp185      [V187,T39] (  4,  4   )     int  ->  r15         "Inlining Arg"
+;  V186 tmp184      [V186,T58] (  6,  3   )     ref  ->  rax         class-hnd "Inline return value spill temp" <System.String>
+;  V187 tmp185      [V187,T43] (  4,  4   )     int  ->  r15         "Inlining Arg"
 ;* V188 tmp186      [V188    ] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;  V189 tmp187      [V189,T148] (  2,  1   )     ref  ->  rax         class-hnd "Inline return value spill temp" <System.Globalization.NumberFormatInfo>
+;  V189 tmp187      [V189,T118] (  3,  1.50)     ref  ->  rax         class-hnd "Inline return value spill temp" <System.Globalization.NumberFormatInfo>
 ;  V190 tmp188      [V190,T77] (  5,  2.50)     int  ->  rdi         "Inline stloc first use temp"
-;  V191 tmp189      [V191,T65] (  3,  3   )   byref  ->  r13         single-def "Span.get_Item ptrToSpan"
-;  V192 tmp190      [V192,T85] (  4,  2   )     int  ->  rdi         "Inline stloc first use temp"
+;  V191 tmp189      [V191,T67] (  3,  3   )   byref  ->  r13         single-def "Span.get_Item ptrToSpan"
+;  V192 tmp190      [V192,T78] (  5,  2.50)     int  ->  rdi         "Inline stloc first use temp"
 ;* V193 tmp191      [V193    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline stloc first use temp" <System.Span`1[ushort]>
 ;  V194 tmp192      [V194    ] (  3,  3   )     int  ->  [rbp-0x7C]  do-not-enreg[X] addr-exposed ld-addr-op "Inlining Arg"
 ;* V195 tmp193      [V195    ] (  0,  0   )     int  ->  zero-ref    ld-addr-op "Inline ldloca(s) first use temp"
-;  V196 tmp194      [V196,T149] (  2,  1   )   byref  ->  rdi         single-def
+;  V196 tmp194      [V196,T155] (  2,  1   )   byref  ->  rdi         single-def
 ;  V197 tmp195      [V197    ] (  4,  2   )     int  ->  [rbp-0x88]  do-not-enreg[X] addr-exposed ld-addr-op "Inline ldloca(s) first use temp"
 ;* V198 tmp196      [V198    ] (  0,  0   )  struct (16) zero-ref    multireg-arg "impAppendStmt" <System.Span`1[ushort]>
-;  V199 tmp197      [V199,T66] (  3,  3   )     ref  ->  r15         class-hnd exact single-def "Inlining Arg" <System.Globalization.CultureInfo>
+;  V199 tmp197      [V199,T31] (  5,  5   )     ref  ->  r15         class-hnd exact single-def "Inlining Arg" <System.Globalization.CultureInfo>
 ;* V200 tmp198      [V200    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
-;  V201 tmp199      [V201,T40] (  4,  4   )     int  ->  rcx         "Inlining Arg"
-;  V202 tmp200      [V202,T67] (  3,  3   )   byref  ->  rax         single-def "Inlining Arg"
+;  V201 tmp199      [V201,T44] (  4,  4   )     int  ->  rcx         "Inlining Arg"
+;  V202 tmp200      [V202,T68] (  3,  3   )   byref  ->  rax         single-def "Inlining Arg"
 ;* V203 tmp201      [V203    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.Span`1[ushort]>
-;  V204 tmp202      [V204,T29] (  4,  4   )   byref  ->  r12         single-def "Inlining Arg"
-;  V205 tmp203      [V205,T41] (  3,  3   )     int  ->  rdx         "Inlining Arg"
+;  V204 tmp202      [V204,T32] (  4,  4   )   byref  ->  r12         single-def "Inlining Arg"
+;  V205 tmp203      [V205,T45] (  3,  3   )     int  ->  rdx         "Inlining Arg"
 ;* V206 tmp204      [V206    ] (  0,  0   )  struct (16) zero-ref    "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
 ;* V207 tmp205      [V207    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
-;  V208 tmp206      [V208,T121] (  3,  1.50)   ubyte  ->  rax         "Inline return value spill temp"
+;  V208 tmp206      [V208,T132] (  3,  1.50)   ubyte  ->  rax         "Inline return value spill temp"
 ;* V209 tmp207      [V209    ] (  0,  0   )  struct (16) zero-ref    multireg-arg ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
 ;  V210 tmp208      [V210,T24] (  6,  6   )     int  ->  [rbp-0x8C]  spill-single-def "Inlining Arg"
 ;* V211 tmp209      [V211    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
-;  V212 tmp210      [V212,T150] (  2,  1   )     ref  ->  rax         class-hnd "Inline return value spill temp" <System.Globalization.NumberFormatInfo>
+;  V212 tmp210      [V212,T119] (  3,  1.50)     ref  ->  rax         class-hnd "Inline return value spill temp" <System.Globalization.NumberFormatInfo>
 ;* V213 tmp211      [V213    ] (  0,  0   )  struct (16) zero-ref    "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
 ;* V214 tmp212      [V214    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
 ;* V215 tmp213      [V215    ] (  0,  0   )  struct (16) zero-ref    "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
-;  V216 tmp214      [V216,T34] (  4,  4   )     ref  ->   r8         class-hnd exact single-def "Inlining Arg" <System.String>
+;  V216 tmp214      [V216,T38] (  4,  4   )     ref  ->   r8         class-hnd exact single-def "Inlining Arg" <System.String>
 ;* V217 tmp215      [V217    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
 ;* V218 tmp216      [V218    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
 ;  V219 tmp217      [V219,T92] (  2,  2   )   byref  ->  rdx         single-def "Inlining Arg"
 ;  V220 tmp218      [V220,T100] (  2,  2   )     int  ->  rcx         "Inlining Arg"
 ;* V221 tmp219      [V221    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V222 tmp220      [V222    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V223 tmp221      [V223    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
 ;* V224 tmp222      [V224    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V225 tmp223      [V225    ] (  0,  0   )    long  ->  zero-ref    "Inline stloc first use temp"
-;  V226 tmp224      [V226,T178] (  2,  1   )     int  ->  rcx         "Inline stloc first use temp"
+;  V226 tmp224      [V226,T179] (  2,  1   )     int  ->  rcx         "Inline stloc first use temp"
 ;* V227 tmp225      [V227    ] (  0,  0   )  struct (16) zero-ref    multireg-arg ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
 ;* V228 tmp226      [V228    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
 ;* V229 tmp227      [V229    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
-;  V230 tmp228      [V230,T122] (  3,  1.50)   ubyte  ->  rax         "Inline return value spill temp"
+;  V230 tmp228      [V230,T133] (  3,  1.50)   ubyte  ->  rax         "Inline return value spill temp"
 ;  V231 tmp229      [V231,T86] (  4,  2   )     int  ->  rax         "Inline stloc first use temp"
 ;* V232 tmp230      [V232    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.Span`1[ushort]>
 ;  V233 tmp231      [V233    ] (  3,  1.50)   byref  ->  [rbp-0x98]  must-init pinned "Inline stloc first use temp"
 ;* V234 tmp232      [V234    ] (  0,  0   )    long  ->  zero-ref    "Inline stloc first use temp"
 ;* V235 tmp233      [V235    ] (  0,  0   )    long  ->  zero-ref    "Inline stloc first use temp"
 ;* V236 tmp234      [V236    ] (  0,  0   )  struct (16) zero-ref    "ReadOnlySpan<T> for CreateSpan<T>" <System.ReadOnlySpan`1[long]>
 ;* V237 tmp235      [V237    ] (  0,  0   )  struct (16) zero-ref    "Inline stloc first use temp" <System.ReadOnlySpan`1[long]>
 ;* V238 tmp236      [V238    ] (  0,  0   )   byref  ->  zero-ref    "impAppendStmt"
 ;* V239 tmp237      [V239    ] (  0,  0   )    long  ->  zero-ref    "Inline stloc first use temp"
 ;* V240 tmp238      [V240    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[long]>
 ;* V241 tmp239      [V241    ] (  0,  0   )     int  ->  zero-ref    "Inline return value spill temp"
 ;* V242 tmp240      [V242    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
 ;* V243 tmp241      [V243    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.Span`1[ushort]>
 ;* V244 tmp242      [V244    ] (  0,  0   )    long  ->  zero-ref    "Inline return value spill temp"
 ;  V245 tmp243      [V245,T03] ( 10, 38   )     int  ->  registers   "Inlining Arg"
 ;  V246 tmp244      [V246,T06] (  6, 27   )    long  ->  rdi         "Inlining Arg"
 ;* V247 tmp245      [V247    ] (  0,  0   )    long  ->  zero-ref    "dup spill"
 ;* V248 tmp246      [V248    ] (  0,  0   )  struct ( 8) zero-ref    "dup spill" <System.ValueTuple`2[uint,uint]>
 ;* V249 tmp247      [V249    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
-;  V250 tmp248      [V250,T10] (  3, 12   )     int  ->  rcx         "Inline stloc first use temp"
+;  V250 tmp248      [V250,T13] (  3, 12   )     int  ->  rcx         "Inline stloc first use temp"
 ;* V251 tmp249      [V251    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "NewObj constructor temp" <System.ValueTuple`2[uint,uint]>
 ;* V252 tmp250      [V252    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
 ;* V253 tmp251      [V253    ] (  0,  0   )    long  ->  zero-ref   
 ;* V254 tmp252      [V254    ] (  0,  0   )    long  ->  zero-ref   
-;  V255 tmp253      [V255,T17] (  2,  8   )     ref  ->  rdx        
+;  V255 tmp253      [V255,T10] (  3, 12   )     ref  ->  rdx        
 ;* V256 tmp254      [V256    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
 ;* V257 tmp255      [V257    ] (  0,  0   )    long  ->  zero-ref   
-;  V258 tmp256      [V258,T179] (  2,  1   )    long  ->  rdi        
-;  V259 tmp257      [V259,T151] (  2,  1   )     ref  ->  rax         single-def
+;  V258 tmp256      [V258,T180] (  2,  1   )    long  ->  rdi        
+;  V259 tmp257      [V259,T120] (  3,  1.50)     ref  ->  rax         single-def
 ;* V260 tmp258      [V260    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
 ;* V261 tmp259      [V261    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
-;  V262 tmp260      [V262,T50] (  7,  3.50)     ref  ->  rax         class-hnd "Inline return value spill temp" <System.String>
-;  V263 tmp261      [V263,T42] (  4,  4   )     int  ->  r12         "Inlining Arg"
+;  V262 tmp260      [V262,T53] (  7,  3.50)     ref  ->  rax         class-hnd "Inline return value spill temp" <System.String>
+;  V263 tmp261      [V263,T46] (  4,  4   )     int  ->  r12         "Inlining Arg"
 ;* V264 tmp262      [V264    ] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;  V265 tmp263      [V265,T152] (  2,  1   )     ref  ->  rax         class-hnd "Inline return value spill temp" <System.Globalization.NumberFormatInfo>
-;  V266 tmp264      [V266,T78] (  5,  2.50)     int  ->  rdi         "Inline stloc first use temp"
-;  V267 tmp265      [V267,T68] (  3,  3   )   byref  ->  rsi         single-def "Span.get_Item ptrToSpan"
-;  V268 tmp266      [V268,T79] (  5,  2.50)     int  ->  rdi         "Inline stloc first use temp"
+;  V265 tmp263      [V265,T121] (  3,  1.50)     ref  ->  rax         class-hnd "Inline return value spill temp" <System.Globalization.NumberFormatInfo>
+;  V266 tmp264      [V266,T79] (  5,  2.50)     int  ->  rdi         "Inline stloc first use temp"
+;  V267 tmp265      [V267,T69] (  3,  3   )   byref  ->  rsi         single-def "Span.get_Item ptrToSpan"
+;  V268 tmp266      [V268,T80] (  5,  2.50)     int  ->  rdi         "Inline stloc first use temp"
 ;* V269 tmp267      [V269    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline stloc first use temp" <System.Span`1[ushort]>
 ;  V270 tmp268      [V270    ] (  3,  3   )     int  ->  [rbp-0x9C]  do-not-enreg[X] addr-exposed ld-addr-op "Inlining Arg"
 ;* V271 tmp269      [V271    ] (  0,  0   )     int  ->  zero-ref    ld-addr-op "Inline ldloca(s) first use temp"
-;  V272 tmp270      [V272,T153] (  2,  1   )   byref  ->  rdi         single-def
+;  V272 tmp270      [V272,T156] (  2,  1   )   byref  ->  rdi         single-def
 ;  V273 tmp271      [V273    ] (  3,  1.50)     int  ->  [rbp-0xA8]  do-not-enreg[X] addr-exposed ld-addr-op "Inline ldloca(s) first use temp"
 ;* V274 tmp272      [V274    ] (  0,  0   )  struct (16) zero-ref    multireg-arg "impAppendStmt" <System.Span`1[ushort]>
-;  V275 tmp273      [V275,T69] (  3,  3   )     ref  ->  r15         class-hnd exact single-def "Inlining Arg" <System.Globalization.CultureInfo>
+;  V275 tmp273      [V275,T33] (  5,  5   )     ref  ->  r15         class-hnd exact single-def "Inlining Arg" <System.Globalization.CultureInfo>
 ;* V276 tmp274      [V276    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
-;  V277 tmp275      [V277,T43] (  4,  4   )     int  ->  rcx         "Inlining Arg"
+;  V277 tmp275      [V277,T47] (  4,  4   )     int  ->  rcx         "Inlining Arg"
 ;  V278 tmp276      [V278,T70] (  3,  3   )   byref  ->  rax         single-def "Inlining Arg"
 ;* V279 tmp277      [V279    ] (  0,  0   )  struct (16) zero-ref    multireg-arg ld-addr-op "NewObj constructor temp" <System.Span`1[ushort]>
 ;  V280 tmp278      [V280,T93] (  2,  2   )   byref  ->  rsi         single-def "Inlining Arg"
 ;  V281 tmp279      [V281,T101] (  2,  2   )     int  ->  rdx         "Inlining Arg"
 ;* V282 tmp280      [V282    ] (  0,  0   )  struct (16) zero-ref    "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
 ;* V283 tmp281      [V283    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
-;  V284 tmp282      [V284,T123] (  3,  1.50)   ubyte  ->  rax         "Inline return value spill temp"
+;  V284 tmp282      [V284,T134] (  3,  1.50)   ubyte  ->  rax         "Inline return value spill temp"
 ;* V285 tmp283      [V285    ] (  0,  0   )  struct (16) zero-ref    multireg-arg ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
-;  V286 tmp284      [V286,T44] (  4,  4   )     int  ->  [rbp-0xAC]  spill-single-def "Inlining Arg"
+;  V286 tmp284      [V286,T48] (  4,  4   )     int  ->  [rbp-0xAC]  spill-single-def "Inlining Arg"
 ;* V287 tmp285      [V287    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
-;  V288 tmp286      [V288,T154] (  2,  1   )     ref  ->  rax         class-hnd "Inline return value spill temp" <System.Globalization.NumberFormatInfo>
+;  V288 tmp286      [V288,T122] (  3,  1.50)     ref  ->  rax         class-hnd "Inline return value spill temp" <System.Globalization.NumberFormatInfo>
 ;* V289 tmp287      [V289    ] (  0,  0   )  struct (16) zero-ref    "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
 ;* V290 tmp288      [V290    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
 ;* V291 tmp289      [V291    ] (  0,  0   )  struct (16) zero-ref    "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
-;  V292 tmp290      [V292,T35] (  4,  4   )     ref  ->   r8         class-hnd exact single-def "Inlining Arg" <System.String>
+;  V292 tmp290      [V292,T39] (  4,  4   )     ref  ->   r8         class-hnd exact single-def "Inlining Arg" <System.String>
 ;* V293 tmp291      [V293    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
 ;* V294 tmp292      [V294    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
 ;  V295 tmp293      [V295,T94] (  2,  2   )   byref  ->  rdx         single-def "Inlining Arg"
 ;  V296 tmp294      [V296,T102] (  2,  2   )     int  ->  rcx         "Inlining Arg"
 ;* V297 tmp295      [V297    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V298 tmp296      [V298    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V299 tmp297      [V299    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
 ;* V300 tmp298      [V300    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V301 tmp299      [V301    ] (  0,  0   )    long  ->  zero-ref    "Inline stloc first use temp"
-;  V302 tmp300      [V302,T180] (  2,  1   )     int  ->  rcx         "Inline stloc first use temp"
+;  V302 tmp300      [V302,T181] (  2,  1   )     int  ->  rcx         "Inline stloc first use temp"
 ;* V303 tmp301      [V303    ] (  0,  0   )  struct (16) zero-ref    multireg-arg ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
 ;* V304 tmp302      [V304    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
 ;* V305 tmp303      [V305    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
-;  V306 tmp304      [V306,T51] (  7,  3.50)     ref  ->  rax         class-hnd "Inline return value spill temp" <System.String>
-;  V307 tmp305      [V307,T45] (  4,  4   )     int  ->  r14         "Inlining Arg"
+;  V306 tmp304      [V306,T54] (  7,  3.50)     ref  ->  rax         class-hnd "Inline return value spill temp" <System.String>
+;  V307 tmp305      [V307,T49] (  4,  4   )     int  ->  r14         "Inlining Arg"
 ;* V308 tmp306      [V308    ] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;  V309 tmp307      [V309,T155] (  2,  1   )     ref  ->  rax         class-hnd "Inline return value spill temp" <System.Globalization.NumberFormatInfo>
-;  V310 tmp308      [V310,T80] (  5,  2.50)     int  ->  rdi         "Inline stloc first use temp"
+;  V309 tmp307      [V309,T123] (  3,  1.50)     ref  ->  rax         class-hnd "Inline return value spill temp" <System.Globalization.NumberFormatInfo>
+;  V310 tmp308      [V310,T81] (  5,  2.50)     int  ->  rdi         "Inline stloc first use temp"
 ;  V311 tmp309      [V311,T71] (  3,  3   )   byref  ->  rsi         single-def "Span.get_Item ptrToSpan"
-;  V312 tmp310      [V312,T81] (  5,  2.50)     int  ->  rdi         "Inline stloc first use temp"
+;  V312 tmp310      [V312,T82] (  5,  2.50)     int  ->  rdi         "Inline stloc first use temp"
 ;* V313 tmp311      [V313    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline stloc first use temp" <System.Span`1[ushort]>
-;  V314 tmp312      [V314,T53] (  5,  3.50)     int  ->  rdi         "Inline stloc first use temp"
+;  V314 tmp312      [V314,T56] (  5,  3.50)     int  ->  rdi         "Inline stloc first use temp"
 ;* V315 tmp313      [V315    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline stloc first use temp" <System.Span`1[ushort]>
 ;* V316 tmp314      [V316    ] (  0,  0   )    long  ->  zero-ref    "field V06._dateData (fldOffset=0x0)" P-INDEP
-;  V317 tmp315      [V317,T134] (  2,  1.50)   byref  ->  rsi         single-def "field V12._reference (fldOffset=0x0)" P-INDEP
+;  V317 tmp315      [V317,T146] (  2,  1.50)   byref  ->  rsi         single-def "field V12._reference (fldOffset=0x0)" P-INDEP
 ;  V318 tmp316      [V318,T103] (  2,  2   )     int  ->  rax         "field V12._length (fldOffset=0x8)" P-INDEP
-;  V319 tmp317      [V319,T135] (  2,  1.50)   byref  ->  rax         single-def "field V14._reference (fldOffset=0x0)" P-INDEP
+;  V319 tmp317      [V319,T147] (  2,  1.50)   byref  ->  rax         single-def "field V14._reference (fldOffset=0x0)" P-INDEP
 ;  V320 tmp318      [V320,T104] (  2,  2   )     int  ->  rcx         "field V14._length (fldOffset=0x8)" P-INDEP
-;  V321 tmp319      [V321,T136] (  2,  1.50)   byref  ->  rsi         single-def "field V17._reference (fldOffset=0x0)" P-INDEP
+;  V321 tmp319      [V321,T148] (  2,  1.50)   byref  ->  rsi         single-def "field V17._reference (fldOffset=0x0)" P-INDEP
 ;  V322 tmp320      [V322,T105] (  2,  2   )     int  ->  rax         "field V17._length (fldOffset=0x8)" P-INDEP
 ;  V323 tmp321      [V323    ] (  3,  3.50)    long  ->  [rbp-0x30]  do-not-enreg[X] addr-exposed "field V18._dateData (fldOffset=0x0)" P-DEP
 ;* V324 tmp322      [V324    ] (  0,  0   )    long  ->  zero-ref    "field V19._dateData (fldOffset=0x0)" P-INDEP
 ;* V325 tmp323      [V325    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V22._reference (fldOffset=0x0)" P-INDEP
 ;* V326 tmp324      [V326    ] (  0,  0   )     int  ->  zero-ref    "field V22._length (fldOffset=0x8)" P-INDEP
 ;* V327 tmp325      [V327    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V24._reference (fldOffset=0x0)" P-INDEP
 ;* V328 tmp326      [V328    ] (  0,  0   )     int  ->  zero-ref    "field V24._length (fldOffset=0x8)" P-INDEP
 ;  V329 tmp327      [V329,T95] (  2,  2   )   byref  ->  rsi         single-def "field V27._reference (fldOffset=0x0)" P-INDEP
 ;  V330 tmp328      [V330,T106] (  2,  2   )     int  ->  rdx         "field V27._length (fldOffset=0x8)" P-INDEP
 ;* V331 tmp329      [V331    ] (  0,  0   )   byref  ->  zero-ref    "field V30._reference (fldOffset=0x0)" P-INDEP
 ;* V332 tmp330      [V332    ] (  0,  0   )     int  ->  zero-ref    "field V30._length (fldOffset=0x8)" P-INDEP
 ;  V333 tmp331      [V333,T96] (  2,  2   )   byref  ->   r9         single-def "field V31._reference (fldOffset=0x0)" P-INDEP
 ;* V334 tmp332      [V334,T195] (  0,  0   )     int  ->  zero-ref    "field V31._length (fldOffset=0x8)" P-INDEP
 ;  V335 tmp333      [V335,T107] (  2,  2   )    long  ->  rdi         "field V33._dateData (fldOffset=0x0)" P-INDEP
 ;* V336 tmp334      [V336,T196] (  0,  0   )    long  ->  zero-ref    "field V34._ticks (fldOffset=0x0)" P-INDEP
-;  V337 tmp335      [V337,T181] (  2,  1   )    long  ->  rdi         "field V35._dateData (fldOffset=0x0)" P-INDEP
+;  V337 tmp335      [V337,T182] (  2,  1   )    long  ->  rdi         "field V35._dateData (fldOffset=0x0)" P-INDEP
 ;* V338 tmp336      [V338,T200] (  0,  0   )    long  ->  zero-ref    "field V36._ticks (fldOffset=0x0)" P-INDEP
-;  V339 tmp337      [V339,T137] (  2,  1.50)   byref  ->  rsi         single-def "field V41._reference (fldOffset=0x0)" P-INDEP
+;  V339 tmp337      [V339,T149] (  2,  1.50)   byref  ->  rsi         single-def "field V41._reference (fldOffset=0x0)" P-INDEP
 ;  V340 tmp338      [V340,T108] (  2,  2   )     int  ->  rax         "field V41._length (fldOffset=0x8)" P-INDEP
-;  V341 tmp339      [V341,T138] (  2,  1.50)   byref  ->  [rbp-0xC0]  spill-single-def "field V46._reference (fldOffset=0x0)" P-INDEP
-;  V342 tmp340      [V342,T141] (  2,  1.50)     int  ->  [rbp-0xB0]  spill-single-def "field V46._length (fldOffset=0x8)" P-INDEP
+;  V341 tmp339      [V341,T150] (  2,  1.50)   byref  ->  [rbp-0xC0]  spill-single-def "field V46._reference (fldOffset=0x0)" P-INDEP
+;  V342 tmp340      [V342,T153] (  2,  1.50)     int  ->  [rbp-0xB0]  spill-single-def "field V46._length (fldOffset=0x8)" P-INDEP
 ;* V343 tmp341      [V343    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V48._reference (fldOffset=0x0)" P-INDEP
 ;* V344 tmp342      [V344    ] (  0,  0   )     int  ->  zero-ref    "field V48._length (fldOffset=0x8)" P-INDEP
 ;* V345 tmp343      [V345,T194] (  0,  0   )   byref  ->  zero-ref    single-def "field V51._reference (fldOffset=0x0)" P-INDEP
 ;* V346 tmp344      [V346,T197] (  0,  0   )     int  ->  zero-ref    "field V51._length (fldOffset=0x8)" P-INDEP
 ;* V347 tmp345      [V347    ] (  0,  0   )   byref  ->  zero-ref    "field V54._reference (fldOffset=0x0)" P-INDEP
 ;* V348 tmp346      [V348    ] (  0,  0   )     int  ->  zero-ref    "field V54._length (fldOffset=0x8)" P-INDEP
 ;* V349 tmp347      [V349    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V55._reference (fldOffset=0x0)" P-INDEP
 ;* V350 tmp348      [V350    ] (  0,  0   )     int  ->  zero-ref    "field V55._length (fldOffset=0x8)" P-INDEP
 ;* V351 tmp349      [V351    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V57._reference (fldOffset=0x0)" P-INDEP
 ;* V352 tmp350      [V352    ] (  0,  0   )     int  ->  zero-ref    "field V57._length (fldOffset=0x8)" P-INDEP
 ;* V353 tmp351      [V353    ] (  0,  0   )   byref  ->  zero-ref    "field V59._reference (fldOffset=0x0)" P-INDEP
 ;* V354 tmp352      [V354    ] (  0,  0   )     int  ->  zero-ref    "field V59._length (fldOffset=0x8)" P-INDEP
 ;* V355 tmp353      [V355    ] (  0,  0   )   byref  ->  zero-ref    "field V61._reference (fldOffset=0x0)" P-INDEP
 ;* V356 tmp354      [V356    ] (  0,  0   )     int  ->  zero-ref    "field V61._length (fldOffset=0x8)" P-INDEP
 ;* V357 tmp355      [V357    ] (  0,  0   )   byref  ->  zero-ref    "field V62._reference (fldOffset=0x0)" P-INDEP
 ;* V358 tmp356      [V358    ] (  0,  0   )     int  ->  zero-ref    "field V62._length (fldOffset=0x8)" P-INDEP
-;  V359 tmp357      [V359,T113] (  3,  1.50)   byref  ->  rdx         "field V63._reference (fldOffset=0x0)" P-INDEP
-;  V360 tmp358      [V360,T124] (  3,  1.50)     int  ->  rcx         "field V63._length (fldOffset=0x8)" P-INDEP
-;  V361 tmp359      [V361,T156] (  2,  1   )   byref  ->  rdx         single-def "field V65._reference (fldOffset=0x0)" P-INDEP
-;  V362 tmp360      [V362,T182] (  2,  1   )     int  ->  rcx         "field V65._length (fldOffset=0x8)" P-INDEP
+;  V359 tmp357      [V359,T124] (  3,  1.50)   byref  ->  rdx         "field V63._reference (fldOffset=0x0)" P-INDEP
+;  V360 tmp358      [V360,T135] (  3,  1.50)     int  ->  rcx         "field V63._length (fldOffset=0x8)" P-INDEP
+;  V361 tmp359      [V361,T157] (  2,  1   )   byref  ->  rdx         single-def "field V65._reference (fldOffset=0x0)" P-INDEP
+;  V362 tmp360      [V362,T183] (  2,  1   )     int  ->  rcx         "field V65._length (fldOffset=0x8)" P-INDEP
 ;* V363 tmp361      [V363    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V66._reference (fldOffset=0x0)" P-INDEP
 ;* V364 tmp362      [V364    ] (  0,  0   )     int  ->  zero-ref    "field V66._length (fldOffset=0x8)" P-INDEP
-;  V365 tmp363      [V365,T157] (  2,  1   )   byref  ->  rdx         single-def "field V71._reference (fldOffset=0x0)" P-INDEP
+;  V365 tmp363      [V365,T158] (  2,  1   )   byref  ->  rdx         single-def "field V71._reference (fldOffset=0x0)" P-INDEP
 ;* V366 tmp364      [V366    ] (  0,  0   )     int  ->  zero-ref    "field V71._length (fldOffset=0x8)" P-INDEP
-;  V367 tmp365      [V367,T158] (  2,  1   )   byref  ->  rdx         single-def "field V75._reference (fldOffset=0x0)" P-INDEP
-;  V368 tmp366      [V368,T183] (  2,  1   )     int  ->  rcx         "field V75._length (fldOffset=0x8)" P-INDEP
+;  V367 tmp365      [V367,T159] (  2,  1   )   byref  ->  rdx         single-def "field V75._reference (fldOffset=0x0)" P-INDEP
+;  V368 tmp366      [V368,T184] (  2,  1   )     int  ->  rcx         "field V75._length (fldOffset=0x8)" P-INDEP
 ;* V369 tmp367      [V369    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V76._reference (fldOffset=0x0)" P-INDEP
 ;* V370 tmp368      [V370    ] (  0,  0   )     int  ->  zero-ref    "field V76._length (fldOffset=0x8)" P-INDEP
 ;* V371 tmp369      [V371    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V80._reference (fldOffset=0x0)" P-INDEP
 ;* V372 tmp370      [V372    ] (  0,  0   )     int  ->  zero-ref    "field V80._length (fldOffset=0x8)" P-INDEP
 ;* V373 tmp371      [V373    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V84._reference (fldOffset=0x0)" P-INDEP
 ;* V374 tmp372      [V374    ] (  0,  0   )     int  ->  zero-ref    "field V84._length (fldOffset=0x8)" P-INDEP
 ;* V375 tmp373      [V375    ] (  0,  0   )   byref  ->  zero-ref    "field V85._reference (fldOffset=0x0)" P-INDEP
 ;* V376 tmp374      [V376    ] (  0,  0   )     int  ->  zero-ref    "field V85._length (fldOffset=0x8)" P-INDEP
 ;* V377 tmp375      [V377    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V88._reference (fldOffset=0x0)" P-INDEP
 ;* V378 tmp376      [V378    ] (  0,  0   )     int  ->  zero-ref    "field V88._length (fldOffset=0x8)" P-INDEP
 ;* V379 tmp377      [V379    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V91._reference (fldOffset=0x0)" P-INDEP
 ;* V380 tmp378      [V380    ] (  0,  0   )     int  ->  zero-ref    "field V91._length (fldOffset=0x8)" P-INDEP
 ;* V381 tmp379      [V381    ] (  0,  0   )     int  ->  zero-ref    "field V96.Item1 (fldOffset=0x0)" P-INDEP
 ;* V382 tmp380      [V382    ] (  0,  0   )     int  ->  zero-ref    "field V96.Item2 (fldOffset=0x4)" P-INDEP
 ;* V383 tmp381      [V383    ] (  0,  0   )     int  ->  zero-ref    "field V99.Item1 (fldOffset=0x0)" P-INDEP
 ;  V384 tmp382      [V384,T18] (  2,  8   )     int  ->   r8         "field V99.Item2 (fldOffset=0x4)" P-INDEP
-;  V385 tmp383      [V385,T139] (  2,  1.50)   byref  ->  rsi         single-def "field V117._reference (fldOffset=0x0)" P-INDEP
+;  V385 tmp383      [V385,T151] (  2,  1.50)   byref  ->  rsi         single-def "field V117._reference (fldOffset=0x0)" P-INDEP
 ;  V386 tmp384      [V386,T109] (  2,  2   )     int  ->  rax         "field V117._length (fldOffset=0x8)" P-INDEP
-;  V387 tmp385      [V387,T159] (  2,  1   )   byref  ->  r12         single-def "field V122._reference (fldOffset=0x0)" P-INDEP
-;  V388 tmp386      [V388,T184] (  2,  1   )     int  ->  [rbp-0xB4]  spill-single-def "field V122._length (fldOffset=0x8)" P-INDEP
+;  V387 tmp385      [V387,T160] (  2,  1   )   byref  ->  r12         single-def "field V122._reference (fldOffset=0x0)" P-INDEP
+;  V388 tmp386      [V388,T185] (  2,  1   )     int  ->  [rbp-0xB4]  spill-single-def "field V122._length (fldOffset=0x8)" P-INDEP
 ;* V389 tmp387      [V389    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V124._reference (fldOffset=0x0)" P-INDEP
 ;* V390 tmp388      [V390    ] (  0,  0   )     int  ->  zero-ref    "field V124._length (fldOffset=0x8)" P-INDEP
 ;* V391 tmp389      [V391,T198] (  0,  0   )   byref  ->  zero-ref    single-def "field V127._reference (fldOffset=0x0)" P-INDEP
 ;* V392 tmp390      [V392,T201] (  0,  0   )     int  ->  zero-ref    "field V127._length (fldOffset=0x8)" P-INDEP
 ;* V393 tmp391      [V393    ] (  0,  0   )   byref  ->  zero-ref    "field V130._reference (fldOffset=0x0)" P-INDEP
 ;* V394 tmp392      [V394    ] (  0,  0   )     int  ->  zero-ref    "field V130._length (fldOffset=0x8)" P-INDEP
 ;* V395 tmp393      [V395    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V131._reference (fldOffset=0x0)" P-INDEP
 ;* V396 tmp394      [V396    ] (  0,  0   )     int  ->  zero-ref    "field V131._length (fldOffset=0x8)" P-INDEP
 ;* V397 tmp395      [V397    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V133._reference (fldOffset=0x0)" P-INDEP
 ;* V398 tmp396      [V398    ] (  0,  0   )     int  ->  zero-ref    "field V133._length (fldOffset=0x8)" P-INDEP
 ;* V399 tmp397      [V399    ] (  0,  0   )   byref  ->  zero-ref    "field V135._reference (fldOffset=0x0)" P-INDEP
 ;* V400 tmp398      [V400    ] (  0,  0   )     int  ->  zero-ref    "field V135._length (fldOffset=0x8)" P-INDEP
 ;* V401 tmp399      [V401    ] (  0,  0   )   byref  ->  zero-ref    "field V137._reference (fldOffset=0x0)" P-INDEP
 ;* V402 tmp400      [V402    ] (  0,  0   )     int  ->  zero-ref    "field V137._length (fldOffset=0x8)" P-INDEP
 ;* V403 tmp401      [V403    ] (  0,  0   )   byref  ->  zero-ref    "field V138._reference (fldOffset=0x0)" P-INDEP
 ;* V404 tmp402      [V404    ] (  0,  0   )     int  ->  zero-ref    "field V138._length (fldOffset=0x8)" P-INDEP
-;  V405 tmp403      [V405,T114] (  3,  1.50)   byref  ->  rdx         "field V139._reference (fldOffset=0x0)" P-INDEP
-;  V406 tmp404      [V406,T125] (  3,  1.50)     int  ->  rcx         "field V139._length (fldOffset=0x8)" P-INDEP
-;  V407 tmp405      [V407,T160] (  2,  1   )   byref  ->  rdx         single-def "field V141._reference (fldOffset=0x0)" P-INDEP
-;  V408 tmp406      [V408,T185] (  2,  1   )     int  ->  rcx         "field V141._length (fldOffset=0x8)" P-INDEP
+;  V405 tmp403      [V405,T125] (  3,  1.50)   byref  ->  rdx         "field V139._reference (fldOffset=0x0)" P-INDEP
+;  V406 tmp404      [V406,T136] (  3,  1.50)     int  ->  rcx         "field V139._length (fldOffset=0x8)" P-INDEP
+;  V407 tmp405      [V407,T161] (  2,  1   )   byref  ->  rdx         single-def "field V141._reference (fldOffset=0x0)" P-INDEP
+;  V408 tmp406      [V408,T186] (  2,  1   )     int  ->  rcx         "field V141._length (fldOffset=0x8)" P-INDEP
 ;* V409 tmp407      [V409    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V142._reference (fldOffset=0x0)" P-INDEP
 ;* V410 tmp408      [V410    ] (  0,  0   )     int  ->  zero-ref    "field V142._length (fldOffset=0x8)" P-INDEP
-;  V411 tmp409      [V411,T161] (  2,  1   )   byref  ->  rdx         single-def "field V147._reference (fldOffset=0x0)" P-INDEP
+;  V411 tmp409      [V411,T162] (  2,  1   )   byref  ->  rdx         single-def "field V147._reference (fldOffset=0x0)" P-INDEP
 ;* V412 tmp410      [V412    ] (  0,  0   )     int  ->  zero-ref    "field V147._length (fldOffset=0x8)" P-INDEP
-;  V413 tmp411      [V413,T162] (  2,  1   )   byref  ->  rdx         single-def "field V151._reference (fldOffset=0x0)" P-INDEP
-;  V414 tmp412      [V414,T186] (  2,  1   )     int  ->  rcx         "field V151._length (fldOffset=0x8)" P-INDEP
+;  V413 tmp411      [V413,T163] (  2,  1   )   byref  ->  rdx         single-def "field V151._reference (fldOffset=0x0)" P-INDEP
+;  V414 tmp412      [V414,T187] (  2,  1   )     int  ->  rcx         "field V151._length (fldOffset=0x8)" P-INDEP
 ;* V415 tmp413      [V415    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V152._reference (fldOffset=0x0)" P-INDEP
 ;* V416 tmp414      [V416    ] (  0,  0   )     int  ->  zero-ref    "field V152._length (fldOffset=0x8)" P-INDEP
 ;* V417 tmp415      [V417    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V156._reference (fldOffset=0x0)" P-INDEP
 ;* V418 tmp416      [V418    ] (  0,  0   )     int  ->  zero-ref    "field V156._length (fldOffset=0x8)" P-INDEP
 ;* V419 tmp417      [V419    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V160._reference (fldOffset=0x0)" P-INDEP
 ;* V420 tmp418      [V420    ] (  0,  0   )     int  ->  zero-ref    "field V160._length (fldOffset=0x8)" P-INDEP
 ;* V421 tmp419      [V421    ] (  0,  0   )   byref  ->  zero-ref    "field V161._reference (fldOffset=0x0)" P-INDEP
 ;* V422 tmp420      [V422    ] (  0,  0   )     int  ->  zero-ref    "field V161._length (fldOffset=0x8)" P-INDEP
 ;* V423 tmp421      [V423    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V164._reference (fldOffset=0x0)" P-INDEP
 ;* V424 tmp422      [V424    ] (  0,  0   )     int  ->  zero-ref    "field V164._length (fldOffset=0x8)" P-INDEP
 ;* V425 tmp423      [V425    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V167._reference (fldOffset=0x0)" P-INDEP
 ;* V426 tmp424      [V426    ] (  0,  0   )     int  ->  zero-ref    "field V167._length (fldOffset=0x8)" P-INDEP
 ;* V427 tmp425      [V427    ] (  0,  0   )     int  ->  zero-ref    "field V172.Item1 (fldOffset=0x0)" P-INDEP
 ;* V428 tmp426      [V428    ] (  0,  0   )     int  ->  zero-ref    "field V172.Item2 (fldOffset=0x4)" P-INDEP
 ;* V429 tmp427      [V429    ] (  0,  0   )     int  ->  zero-ref    "field V175.Item1 (fldOffset=0x0)" P-INDEP
 ;  V430 tmp428      [V430,T19] (  2,  8   )     int  ->  rcx         "field V175.Item2 (fldOffset=0x4)" P-INDEP
-;  V431 tmp429      [V431,T163] (  2,  1   )   byref  ->  rax         single-def "field V193._reference (fldOffset=0x0)" P-INDEP
-;  V432 tmp430      [V432,T187] (  2,  1   )     int  ->  rcx         "field V193._length (fldOffset=0x8)" P-INDEP
-;  V433 tmp431      [V433,T164] (  2,  1   )   byref  ->  [rbp-0xC8]  spill-single-def "field V198._reference (fldOffset=0x0)" P-INDEP
+;  V431 tmp429      [V431,T164] (  2,  1   )   byref  ->  rax         single-def "field V193._reference (fldOffset=0x0)" P-INDEP
+;  V432 tmp430      [V432,T137] (  3,  1.50)     int  ->  rcx         "field V193._length (fldOffset=0x8)" P-INDEP
+;  V433 tmp431      [V433,T165] (  2,  1   )   byref  ->  [rbp-0xC8]  spill-single-def "field V198._reference (fldOffset=0x0)" P-INDEP
 ;  V434 tmp432      [V434,T188] (  2,  1   )     int  ->  [rbp-0xB8]  spill-single-def "field V198._length (fldOffset=0x8)" P-INDEP
 ;* V435 tmp433      [V435    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V200._reference (fldOffset=0x0)" P-INDEP
 ;* V436 tmp434      [V436    ] (  0,  0   )     int  ->  zero-ref    "field V200._length (fldOffset=0x8)" P-INDEP
 ;* V437 tmp435      [V437,T199] (  0,  0   )   byref  ->  zero-ref    single-def "field V203._reference (fldOffset=0x0)" P-INDEP
 ;* V438 tmp436      [V438,T202] (  0,  0   )     int  ->  zero-ref    "field V203._length (fldOffset=0x8)" P-INDEP
 ;* V439 tmp437      [V439    ] (  0,  0   )   byref  ->  zero-ref    "field V206._reference (fldOffset=0x0)" P-INDEP
 ;* V440 tmp438      [V440    ] (  0,  0   )     int  ->  zero-ref    "field V206._length (fldOffset=0x8)" P-INDEP
 ;* V441 tmp439      [V441    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V207._reference (fldOffset=0x0)" P-INDEP
 ;* V442 tmp440      [V442    ] (  0,  0   )     int  ->  zero-ref    "field V207._length (fldOffset=0x8)" P-INDEP
 ;* V443 tmp441      [V443    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V209._reference (fldOffset=0x0)" P-INDEP
 ;* V444 tmp442      [V444    ] (  0,  0   )     int  ->  zero-ref    "field V209._length (fldOffset=0x8)" P-INDEP
 ;* V445 tmp443      [V445    ] (  0,  0   )   byref  ->  zero-ref    "field V211._reference (fldOffset=0x0)" P-INDEP
 ;* V446 tmp444      [V446    ] (  0,  0   )     int  ->  zero-ref    "field V211._length (fldOffset=0x8)" P-INDEP
 ;* V447 tmp445      [V447    ] (  0,  0   )   byref  ->  zero-ref    "field V213._reference (fldOffset=0x0)" P-INDEP
 ;* V448 tmp446      [V448    ] (  0,  0   )     int  ->  zero-ref    "field V213._length (fldOffset=0x8)" P-INDEP
 ;* V449 tmp447      [V449    ] (  0,  0   )   byref  ->  zero-ref    "field V214._reference (fldOffset=0x0)" P-INDEP
 ;* V450 tmp448      [V450    ] (  0,  0   )     int  ->  zero-ref    "field V214._length (fldOffset=0x8)" P-INDEP
-;  V451 tmp449      [V451,T115] (  3,  1.50)   byref  ->  rdx         "field V215._reference (fldOffset=0x0)" P-INDEP
-;  V452 tmp450      [V452,T126] (  3,  1.50)     int  ->  rcx         "field V215._length (fldOffset=0x8)" P-INDEP
-;  V453 tmp451      [V453,T165] (  2,  1   )   byref  ->  rdx         single-def "field V217._reference (fldOffset=0x0)" P-INDEP
+;  V451 tmp449      [V451,T126] (  3,  1.50)   byref  ->  rdx         "field V215._reference (fldOffset=0x0)" P-INDEP
+;  V452 tmp450      [V452,T138] (  3,  1.50)     int  ->  rcx         "field V215._length (fldOffset=0x8)" P-INDEP
+;  V453 tmp451      [V453,T166] (  2,  1   )   byref  ->  rdx         single-def "field V217._reference (fldOffset=0x0)" P-INDEP
 ;  V454 tmp452      [V454,T189] (  2,  1   )     int  ->  rcx         "field V217._length (fldOffset=0x8)" P-INDEP
 ;* V455 tmp453      [V455    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V218._reference (fldOffset=0x0)" P-INDEP
 ;* V456 tmp454      [V456    ] (  0,  0   )     int  ->  zero-ref    "field V218._length (fldOffset=0x8)" P-INDEP
-;  V457 tmp455      [V457,T166] (  2,  1   )   byref  ->  rdx         single-def "field V223._reference (fldOffset=0x0)" P-INDEP
+;  V457 tmp455      [V457,T167] (  2,  1   )   byref  ->  rdx         single-def "field V223._reference (fldOffset=0x0)" P-INDEP
 ;* V458 tmp456      [V458    ] (  0,  0   )     int  ->  zero-ref    "field V223._length (fldOffset=0x8)" P-INDEP
-;  V459 tmp457      [V459,T167] (  2,  1   )   byref  ->  rdx         single-def "field V227._reference (fldOffset=0x0)" P-INDEP
+;  V459 tmp457      [V459,T168] (  2,  1   )   byref  ->  rdx         single-def "field V227._reference (fldOffset=0x0)" P-INDEP
 ;  V460 tmp458      [V460,T190] (  2,  1   )     int  ->  rcx         "field V227._length (fldOffset=0x8)" P-INDEP
 ;* V461 tmp459      [V461    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V228._reference (fldOffset=0x0)" P-INDEP
 ;* V462 tmp460      [V462    ] (  0,  0   )     int  ->  zero-ref    "field V228._length (fldOffset=0x8)" P-INDEP
 ;* V463 tmp461      [V463    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V232._reference (fldOffset=0x0)" P-INDEP
 ;* V464 tmp462      [V464    ] (  0,  0   )     int  ->  zero-ref    "field V232._length (fldOffset=0x8)" P-INDEP
 ;* V465 tmp463      [V465    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V236._reference (fldOffset=0x0)" P-INDEP
 ;* V466 tmp464      [V466    ] (  0,  0   )     int  ->  zero-ref    "field V236._length (fldOffset=0x8)" P-INDEP
 ;* V467 tmp465      [V467    ] (  0,  0   )   byref  ->  zero-ref    "field V237._reference (fldOffset=0x0)" P-INDEP
 ;* V468 tmp466      [V468    ] (  0,  0   )     int  ->  zero-ref    "field V237._length (fldOffset=0x8)" P-INDEP
 ;* V469 tmp467      [V469    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V240._reference (fldOffset=0x0)" P-INDEP
 ;* V470 tmp468      [V470    ] (  0,  0   )     int  ->  zero-ref    "field V240._length (fldOffset=0x8)" P-INDEP
 ;* V471 tmp469      [V471    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V243._reference (fldOffset=0x0)" P-INDEP
 ;* V472 tmp470      [V472    ] (  0,  0   )     int  ->  zero-ref    "field V243._length (fldOffset=0x8)" P-INDEP
 ;* V473 tmp471      [V473    ] (  0,  0   )     int  ->  zero-ref    "field V248.Item1 (fldOffset=0x0)" P-INDEP
 ;* V474 tmp472      [V474    ] (  0,  0   )     int  ->  zero-ref    "field V248.Item2 (fldOffset=0x4)" P-INDEP
 ;* V475 tmp473      [V475    ] (  0,  0   )     int  ->  zero-ref    "field V251.Item1 (fldOffset=0x0)" P-INDEP
 ;  V476 tmp474      [V476,T20] (  2,  8   )     int  ->  rsi         "field V251.Item2 (fldOffset=0x4)" P-INDEP
-;  V477 tmp475      [V477,T168] (  2,  1   )   byref  ->  rsi         single-def "field V269._reference (fldOffset=0x0)" P-INDEP
-;  V478 tmp476      [V478,T127] (  3,  1.50)     int  ->  rax         "field V269._length (fldOffset=0x8)" P-INDEP
-;  V479 tmp477      [V479,T169] (  2,  1   )   byref  ->  r14         single-def "field V274._reference (fldOffset=0x0)" P-INDEP
+;  V477 tmp475      [V477,T169] (  2,  1   )   byref  ->  rsi         single-def "field V269._reference (fldOffset=0x0)" P-INDEP
+;  V478 tmp476      [V478,T139] (  3,  1.50)     int  ->  rax         "field V269._length (fldOffset=0x8)" P-INDEP
+;  V479 tmp477      [V479,T170] (  2,  1   )   byref  ->  r14         single-def "field V274._reference (fldOffset=0x0)" P-INDEP
 ;  V480 tmp478      [V480,T191] (  2,  1   )     int  ->  r12         "field V274._length (fldOffset=0x8)" P-INDEP
 ;* V481 tmp479      [V481    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V276._reference (fldOffset=0x0)" P-INDEP
 ;* V482 tmp480      [V482    ] (  0,  0   )     int  ->  zero-ref    "field V276._length (fldOffset=0x8)" P-INDEP
-;  V483 tmp481      [V483,T116] (  3,  1.50)   byref  ->  rsi         single-def "field V279._reference (fldOffset=0x0)" P-INDEP
-;  V484 tmp482      [V484,T128] (  3,  1.50)     int  ->  rdx         "field V279._length (fldOffset=0x8)" P-INDEP
+;  V483 tmp481      [V483,T127] (  3,  1.50)   byref  ->  rsi         single-def "field V279._reference (fldOffset=0x0)" P-INDEP
+;  V484 tmp482      [V484,T140] (  3,  1.50)     int  ->  rdx         "field V279._length (fldOffset=0x8)" P-INDEP
 ;* V485 tmp483      [V485    ] (  0,  0   )   byref  ->  zero-ref    "field V282._reference (fldOffset=0x0)" P-INDEP
 ;* V486 tmp484      [V486    ] (  0,  0   )     int  ->  zero-ref    "field V282._length (fldOffset=0x8)" P-INDEP
 ;* V487 tmp485      [V487    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V283._reference (fldOffset=0x0)" P-INDEP
 ;* V488 tmp486      [V488    ] (  0,  0   )     int  ->  zero-ref    "field V283._length (fldOffset=0x8)" P-INDEP
 ;* V489 tmp487      [V489    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V285._reference (fldOffset=0x0)" P-INDEP
 ;* V490 tmp488      [V490    ] (  0,  0   )     int  ->  zero-ref    "field V285._length (fldOffset=0x8)" P-INDEP
 ;* V491 tmp489      [V491    ] (  0,  0   )   byref  ->  zero-ref    "field V287._reference (fldOffset=0x0)" P-INDEP
 ;* V492 tmp490      [V492    ] (  0,  0   )     int  ->  zero-ref    "field V287._length (fldOffset=0x8)" P-INDEP
 ;* V493 tmp491      [V493    ] (  0,  0   )   byref  ->  zero-ref    "field V289._reference (fldOffset=0x0)" P-INDEP
 ;* V494 tmp492      [V494    ] (  0,  0   )     int  ->  zero-ref    "field V289._length (fldOffset=0x8)" P-INDEP
 ;* V495 tmp493      [V495    ] (  0,  0   )   byref  ->  zero-ref    "field V290._reference (fldOffset=0x0)" P-INDEP
 ;* V496 tmp494      [V496    ] (  0,  0   )     int  ->  zero-ref    "field V290._length (fldOffset=0x8)" P-INDEP
-;  V497 tmp495      [V497,T117] (  3,  1.50)   byref  ->  rdx         "field V291._reference (fldOffset=0x0)" P-INDEP
-;  V498 tmp496      [V498,T129] (  3,  1.50)     int  ->  rcx         "field V291._length (fldOffset=0x8)" P-INDEP
-;  V499 tmp497      [V499,T170] (  2,  1   )   byref  ->  rdx         single-def "field V293._reference (fldOffset=0x0)" P-INDEP
+;  V497 tmp495      [V497,T128] (  3,  1.50)   byref  ->  rdx         "field V291._reference (fldOffset=0x0)" P-INDEP
+;  V498 tmp496      [V498,T141] (  3,  1.50)     int  ->  rcx         "field V291._length (fldOffset=0x8)" P-INDEP
+;  V499 tmp497      [V499,T171] (  2,  1   )   byref  ->  rdx         single-def "field V293._reference (fldOffset=0x0)" P-INDEP
 ;  V500 tmp498      [V500,T192] (  2,  1   )     int  ->  rcx         "field V293._length (fldOffset=0x8)" P-INDEP
 ;* V501 tmp499      [V501    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V294._reference (fldOffset=0x0)" P-INDEP
 ;* V502 tmp500      [V502    ] (  0,  0   )     int  ->  zero-ref    "field V294._length (fldOffset=0x8)" P-INDEP
-;  V503 tmp501      [V503,T171] (  2,  1   )   byref  ->  rdx         single-def "field V299._reference (fldOffset=0x0)" P-INDEP
+;  V503 tmp501      [V503,T172] (  2,  1   )   byref  ->  rdx         single-def "field V299._reference (fldOffset=0x0)" P-INDEP
 ;* V504 tmp502      [V504    ] (  0,  0   )     int  ->  zero-ref    "field V299._length (fldOffset=0x8)" P-INDEP
-;  V505 tmp503      [V505,T172] (  2,  1   )   byref  ->  rdx         single-def "field V303._reference (fldOffset=0x0)" P-INDEP
+;  V505 tmp503      [V505,T173] (  2,  1   )   byref  ->  rdx         single-def "field V303._reference (fldOffset=0x0)" P-INDEP
 ;  V506 tmp504      [V506,T193] (  2,  1   )     int  ->  rcx         "field V303._length (fldOffset=0x8)" P-INDEP
 ;* V507 tmp505      [V507    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V304._reference (fldOffset=0x0)" P-INDEP
 ;* V508 tmp506      [V508    ] (  0,  0   )     int  ->  zero-ref    "field V304._length (fldOffset=0x8)" P-INDEP
-;  V509 tmp507      [V509,T173] (  2,  1   )   byref  ->  rsi         single-def "field V313._reference (fldOffset=0x0)" P-INDEP
-;  V510 tmp508      [V510,T130] (  3,  1.50)     int  ->  rax         "field V313._length (fldOffset=0x8)" P-INDEP
-;  V511 tmp509      [V511,T140] (  2,  1.50)   byref  ->  rsi         single-def "field V315._reference (fldOffset=0x0)" P-INDEP
-;  V512 tmp510      [V512,T82] (  3,  2.50)     int  ->  rax         "field V315._length (fldOffset=0x8)" P-INDEP
+;  V509 tmp507      [V509,T174] (  2,  1   )   byref  ->  rsi         single-def "field V313._reference (fldOffset=0x0)" P-INDEP
+;  V510 tmp508      [V510,T142] (  3,  1.50)     int  ->  rax         "field V313._length (fldOffset=0x8)" P-INDEP
+;  V511 tmp509      [V511,T152] (  2,  1.50)   byref  ->  rsi         single-def "field V315._reference (fldOffset=0x0)" P-INDEP
+;  V512 tmp510      [V512,T83] (  3,  2.50)     int  ->  rax         "field V315._length (fldOffset=0x8)" P-INDEP
 ;  V513 tmp511      [V513,T72] (  3,  3   )   ubyte  ->  r15         "V00.[016..017)"
 ;  V514 tmp512      [V514,T110] (  2,  2   )    long  ->  rax         "Cast away GC"
 ;  V515 tmp513      [V515,T111] (  2,  2   )    long  ->  r12         "Cast away GC"
 ;  V516 tmp514      [V516,T112] (  2,  2   )    long  ->  r15         "Cast away GC"
 ;  V517 cse0        [V517,T07] ( 12, 16.50)     ref  ->  rax         hoist multi-def "CSE - aggressive"
-;  V518 cse1        [V518,T52] (  5,  3.50)     ref  ->  r14         "CSE - conservative"
+;  V518 cse1        [V518,T55] (  5,  3.50)     ref  ->  r14         "CSE - conservative"
 ;  V519 cse2        [V519,T73] (  3,  3   )     int  ->  rdx         "CSE - conservative"
 ;  V520 cse3        [V520,T74] (  3,  3   )     int  ->  rdx         "CSE - conservative"
-;  V521 cse4        [V521,T131] (  3,  1.50)     int  ->  rdx         "CSE - conservative"
-;  V522 cse5        [V522,T132] (  3,  1.50)     int  ->  rdx         "CSE - conservative"
-;  V523 cse6        [V523,T133] (  3,  1.50)     int  ->  rdx         "CSE - conservative"
+;  V521 cse4        [V521,T143] (  3,  1.50)     int  ->  rdx         "CSE - conservative"
+;  V522 cse5        [V522,T144] (  3,  1.50)     int  ->  rdx         "CSE - conservative"
+;  V523 cse6        [V523,T145] (  3,  1.50)     int  ->  rdx         "CSE - conservative"
 ;  V524 cse7        [V524,T21] ( 11,  7   )   byref  ->  r13         "CSE - moderate"
 ;
 ; Lcl frame size = 184
 
 G_M63296_IG01:
        push     rbp
        push     r15
        push     r14
        push     r13
        push     r12
        push     rbx
        sub      rsp, 184
        lea      rbp, [rsp+0xE0]
        xor      eax, eax
        mov      qword ptr [rbp-0x98], rax
        vxorps   xmm8, xmm8, xmm8
        vmovdqu  ymmword ptr [rbp-0x90], ymm8
        vmovdqu  ymmword ptr [rbp-0x70], ymm8
        mov      rbx, rdi
 						;; size=55 bbWeight=1 PerfScore 12.58
 G_M63296_IG02:
        movzx    r15, byte  ptr [rbp+0x20]
        mov      edi, dword ptr [rbx+0x08]
        mov      rsi, bword ptr [rbx+0x10]
        mov      eax, dword ptr [rbx+0x18]
        cmp      edi, eax
        jae      SHORT G_M63296_IG04
 						;; size=19 bbWeight=1 PerfScore 8.25
 G_M63296_IG03:
        mov      eax, edi
        mov      word  ptr [rsi+2*rax], 91
        inc      edi
        mov      dword ptr [rbx+0x08], edi
        jmp      SHORT G_M63296_IG05
-       align    [0 bytes for IG23]
-						;; size=15 bbWeight=0.50 PerfScore 2.25
+       align    [4 bytes for IG25]
+						;; size=19 bbWeight=0.50 PerfScore 2.25
 G_M63296_IG04:
        mov      rdi, rbx
        mov      esi, 91
        mov      rax, 0xD1FFAB1E      ; code for System.Text.ValueStringBuilder:GrowAndAppend(ushort):this
        call     [rax]System.Text.ValueStringBuilder:GrowAndAppend(ushort):this
 						;; size=20 bbWeight=0.50 PerfScore 1.88
 G_M63296_IG05:
        mov      edi, 49
        mov      esi, 48
        test     r15d, r15d
        cmove    edi, esi
        movzx    rsi, di
        mov      edi, dword ptr [rbx+0x08]
        mov      rax, bword ptr [rbx+0x10]
        mov      ecx, dword ptr [rbx+0x18]
        cmp      edi, ecx
        jae      SHORT G_M63296_IG07
 						;; size=33 bbWeight=1 PerfScore 8.50
 G_M63296_IG06:
        mov      ecx, edi
        mov      word  ptr [rax+2*rcx], si
        inc      edi
        mov      dword ptr [rbx+0x08], edi
        jmp      SHORT G_M63296_IG08
 						;; size=13 bbWeight=0.50 PerfScore 2.25
 G_M63296_IG07:
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.Text.ValueStringBuilder:GrowAndAppend(ushort):this
        call     [rax]System.Text.ValueStringBuilder:GrowAndAppend(ushort):this
 						;; size=15 bbWeight=0.50 PerfScore 1.75
 G_M63296_IG08:
        mov      edi, dword ptr [rbx+0x08]
        mov      rsi, bword ptr [rbx+0x10]
        mov      eax, dword ptr [rbx+0x18]
        cmp      edi, eax
        jae      SHORT G_M63296_IG10
 						;; size=14 bbWeight=1 PerfScore 7.25
 G_M63296_IG09:
        mov      eax, edi
        mov      word  ptr [rsi+2*rax], 59
        inc      edi
        mov      dword ptr [rbx+0x08], edi
        jmp      SHORT G_M63296_IG11
 						;; size=15 bbWeight=0.50 PerfScore 2.25
 G_M63296_IG10:
        mov      rdi, rbx
        mov      esi, 59
        mov      rax, 0xD1FFAB1E      ; code for System.Text.ValueStringBuilder:GrowAndAppend(ushort):this
        call     [rax]System.Text.ValueStringBuilder:GrowAndAppend(ushort):this
 						;; size=20 bbWeight=0.50 PerfScore 1.88
 G_M63296_IG11:
        mov      r8, qword ptr [rbp+0x10]
        mov      qword ptr [rbp-0x30], r8
        mov      r8, 0xD1FFAB1E      ; const ptr
        mov      r14, gword ptr [r8]
        lea      r8, bword ptr [rbp-0x30]
        lea      r13, bword ptr [rbx+0x10]
        mov      r9, r13
        mov      esi, dword ptr [rbx+0x08]
        mov      edx, dword ptr [r9+0x08]
        cmp      esi, edx
-       ja       G_M63296_IG98
+       ja       G_M63296_IG114
        mov      r9, bword ptr [r9]
        mov      ecx, esi
        lea      r9, bword ptr [r9+2*rcx]
        sub      edx, esi
        mov      rsi, r9
        mov      r9, 0xD1FFAB1E
        mov      rdi, qword ptr [r8]
        mov      gword ptr [rsp], r14
        mov      r8, 0xD1FFAB1E
        mov      qword ptr [rsp+0x08], r8
        mov      r8, r9
        mov      r9d, 12
        lea      rcx, [rbp-0x38]
        mov      rax, 0xD1FFAB1E      ; code for System.DateTimeFormat:TryFormat[ushort](System.DateTime,System.Span`1[ushort],byref,System.ReadOnlySpan`1[ushort],System.IFormatProvider,System.TimeSpan):ubyte
        call     [rax]System.DateTimeFormat:TryFormat[ushort](System.DateTime,System.Span`1[ushort],byref,System.ReadOnlySpan`1[ushort],System.IFormatProvider,System.TimeSpan):ubyte
        test     eax, eax
        je       SHORT G_M63296_IG13
 						;; size=122 bbWeight=1 PerfScore 24.00
 G_M63296_IG12:
        mov      edi, dword ptr [rbp-0x38]
        add      dword ptr [rbx+0x08], edi
        jmp      SHORT G_M63296_IG15
 						;; size=8 bbWeight=0.50 PerfScore 3.00
 G_M63296_IG13:
        mov      rdi, qword ptr [rbp-0x30]
        mov      rcx, 0xD1FFAB1E
        mov      rdx, r14
        mov      rsi, 0xD1FFAB1E      ; 'HH:mm:ss.FFF'
 
        mov      rax, 0xD1FFAB1E      ; code for System.DateTimeFormat:Format(System.DateTime,System.String,System.IFormatProvider,System.TimeSpan):System.String
        call     [rax]System.DateTimeFormat:Format(System.DateTime,System.String,System.IFormatProvider,System.TimeSpan):System.String
        test     rax, rax
        je       SHORT G_M63296_IG15
        mov      edi, dword ptr [rbx+0x08]
        cmp      dword ptr [rax+0x08], 1
        jne      SHORT G_M63296_IG14
        cmp      edi, dword ptr [rbx+0x18]
        jae      SHORT G_M63296_IG14
        mov      rsi, r13
        cmp      edi, dword ptr [rsi+0x08]
-       jae      G_M63296_IG97
+       jae      G_M63296_IG113
        mov      rsi, bword ptr [rsi]
        mov      ecx, edi
        movzx    rax, word  ptr [rax+0x0C]
        mov      word  ptr [rsi+2*rcx], ax
        inc      edi
        mov      dword ptr [rbx+0x08], edi
        jmp      SHORT G_M63296_IG15
 						;; size=90 bbWeight=0.50 PerfScore 14.50
 G_M63296_IG14:
        mov      rdi, rbx
        mov      rsi, rax
        mov      rax, 0xD1FFAB1E      ; code for System.Text.ValueStringBuilder:AppendSlow(System.String):this
        call     [rax]System.Text.ValueStringBuilder:AppendSlow(System.String):this
 						;; size=18 bbWeight=0.50 PerfScore 1.88
 G_M63296_IG15:
        mov      edi, dword ptr [rbx+0x08]
        mov      rsi, bword ptr [rbx+0x10]
        mov      eax, dword ptr [rbx+0x18]
        cmp      edi, eax
        jae      SHORT G_M63296_IG17
 						;; size=14 bbWeight=1 PerfScore 7.25
 G_M63296_IG16:
        mov      eax, edi
        mov      word  ptr [rsi+2*rax], 59
        inc      edi
        mov      dword ptr [rbx+0x08], edi
        jmp      SHORT G_M63296_IG18
 						;; size=15 bbWeight=0.50 PerfScore 2.25
 G_M63296_IG17:
        mov      rdi, rbx
        mov      esi, 59
        mov      rax, 0xD1FFAB1E      ; code for System.Text.ValueStringBuilder:GrowAndAppend(ushort):this
        call     [rax]System.Text.ValueStringBuilder:GrowAndAppend(ushort):this
 						;; size=20 bbWeight=0.50 PerfScore 1.88
 G_M63296_IG18:
        movzx    rdi, byte  ptr [rbp+0x18]
        mov      dword ptr [rbp-0x3C], edi
        mov      rdi, 0xD1FFAB1E      ; const ptr
        mov      r14, gword ptr [rdi]
        mov      r12, r14
        lea      rdi, bword ptr [rbp-0x3C]
        mov      rax, r13
        mov      ecx, dword ptr [rbx+0x08]
        mov      edx, dword ptr [rax+0x08]
        cmp      ecx, edx
-       ja       G_M63296_IG98
+       ja       G_M63296_IG114
        mov      rax, bword ptr [rax]
        mov      esi, ecx
        lea      rax, bword ptr [rax+2*rsi]
        sub      edx, ecx
        mov      bword ptr [rbp-0xC0], rax
        mov      dword ptr [rbp-0xB0], edx
        mov      r8d, dword ptr [rdi]
        mov      dword ptr [rbp-0x4C], r8d
        test     r8d, r8d
-       jge      SHORT G_M63296_IG22
+       jge      SHORT G_M63296_IG24
 						;; size=81 bbWeight=1 PerfScore 19.75
 G_M63296_IG19:
+       test     r12, r12
+       je       SHORT G_M63296_IG20
        mov      rdi, r12
        mov      rax, 0xD1FFAB1E      ; code for System.Globalization.NumberFormatInfo:<GetInstance>g__GetProviderNonNull|59_0(System.IFormatProvider):System.Globalization.NumberFormatInfo
        call     [rax]System.Globalization.NumberFormatInfo:<GetInstance>g__GetProviderNonNull|59_0(System.IFormatProvider):System.Globalization.NumberFormatInfo
+       jmp      SHORT G_M63296_IG21
+						;; size=22 bbWeight=0.50 PerfScore 3.38
+G_M63296_IG20:
+       mov      rax, 0xD1FFAB1E      ; code for System.Globalization.NumberFormatInfo:get_CurrentInfo():System.Globalization.NumberFormatInfo
+       call     [rax]System.Globalization.NumberFormatInfo:get_CurrentInfo():System.Globalization.NumberFormatInfo
+						;; size=12 bbWeight=0.50 PerfScore 1.62
+G_M63296_IG21:
        mov      r8, gword ptr [rax+0x28]
        test     r8, r8
-       jne      SHORT G_M63296_IG20
+       jne      SHORT G_M63296_IG22
        xor      rdx, rdx
        xor      ecx, ecx
-       jmp      SHORT G_M63296_IG21
-						;; size=30 bbWeight=0.50 PerfScore 4.62
-G_M63296_IG20:
+       jmp      SHORT G_M63296_IG23
+						;; size=15 bbWeight=0.50 PerfScore 2.88
+G_M63296_IG22:
        lea      rdx, bword ptr [r8+0x0C]
        mov      ecx, dword ptr [r8+0x08]
 						;; size=8 bbWeight=0.50 PerfScore 1.25
-G_M63296_IG21:
+G_M63296_IG23:
        lea      r8, [rbp-0x48]
        mov      qword ptr [rsp], r8
        mov      r8, bword ptr [rbp-0xC0]
        mov      r9d, dword ptr [rbp-0xB0]
        mov      edi, dword ptr [rbp-0x4C]
        mov      esi, -1
        mov      rax, 0xD1FFAB1E      ; code for System.Number:TryNegativeInt32ToDecStr[ushort](int,int,System.ReadOnlySpan`1[ushort],System.Span`1[ushort],byref):ubyte
        call     [rax]System.Number:TryNegativeInt32ToDecStr[ushort](int,int,System.ReadOnlySpan`1[ushort],System.Span`1[ushort],byref):ubyte
-       jmp      G_M63296_IG32
+       jmp      G_M63296_IG34
 						;; size=47 bbWeight=0.50 PerfScore 5.00
-G_M63296_IG22:
+G_M63296_IG24:
        mov      r8d, dword ptr [rbp-0x4C]
        mov      edi, r8d
        mov      ecx, r8d
        or       ecx, 1
        lzcnt    ecx, ecx
        xor      ecx, 31
        mov      rsi, 0xD1FFAB1E      ; static handle
        add      rdi, qword ptr [rsi+8*rcx]
        sar      rdi, 32
        cmp      edi, edx
-       jg       G_M63296_IG30
+       jg       G_M63296_IG32
        mov      dword ptr [rbp-0x48], edi
        mov      bword ptr [rbp-0x58], rax
        movsxd   rdi, edi
        lea      rdi, [rax+2*rdi]
        cmp      r8d, 10
-       jb       SHORT G_M63296_IG28
+       jb       SHORT G_M63296_IG30
+		  ;; NOP compensation instructions of 4 bytes.
        cmp      r8d, 100
-       jb       SHORT G_M63296_IG27
+       jb       SHORT G_M63296_IG29
        mov      rax, 0xD1FFAB1E      ; const ptr
        mov      rax, gword ptr [rax]
-						;; size=85 bbWeight=0.50 PerfScore 8.25
-G_M63296_IG23:
+						;; size=89 bbWeight=0.50 PerfScore 8.25
+G_M63296_IG25:
        add      rdi, -4
        mov      ecx, r8d
        imul     rcx, rcx, 0xD1FFAB1E
        shr      rcx, 37
        imul     edx, ecx, 100
        sub      r8d, edx
        mov      rdx, rax
+       cmp      byte  ptr [rdx], dl
        shl      r8d, 2
        mov      esi, r8d
        mov      edx, dword ptr [rdx+rsi+0x10]
        mov      dword ptr [rdi], edx
        cmp      ecx, 100
-       jae      SHORT G_M63296_IG26
-						;; size=45 bbWeight=4 PerfScore 42.00
-G_M63296_IG24:
+       jae      SHORT G_M63296_IG28
+						;; size=47 bbWeight=4 PerfScore 54.00
+G_M63296_IG26:
        cmp      ecx, 10
-       jb       SHORT G_M63296_IG25
+       jb       SHORT G_M63296_IG27
        add      rdi, -4
        mov      rax, 0xD1FFAB1E      ; const ptr
        mov      rax, gword ptr [rax]
+       cmp      byte  ptr [rax], al
        shl      ecx, 2
        mov      eax, dword ptr [rax+rcx+0x10]
        mov      dword ptr [rdi], eax
-       jmp      SHORT G_M63296_IG29
-						;; size=33 bbWeight=0.50 PerfScore 4.62
-G_M63296_IG25:
+       jmp      SHORT G_M63296_IG31
+						;; size=35 bbWeight=0.50 PerfScore 6.12
+G_M63296_IG27:
        mov      r8d, ecx
-       jmp      SHORT G_M63296_IG28
-       align    [0 bytes for IG46]
+       jmp      SHORT G_M63296_IG30
+       align    [0 bytes for IG52]
 						;; size=5 bbWeight=0.25 PerfScore 0.56
-G_M63296_IG26:
+G_M63296_IG28:
        mov      r8d, ecx
-       jmp      SHORT G_M63296_IG23
+       jmp      SHORT G_M63296_IG25
 						;; size=5 bbWeight=2 PerfScore 4.50
-G_M63296_IG27:
+G_M63296_IG29:
        mov      ecx, r8d
-       jmp      SHORT G_M63296_IG24
+       jmp      SHORT G_M63296_IG26
 						;; size=5 bbWeight=0.25 PerfScore 0.56
-G_M63296_IG28:
+G_M63296_IG30:
        lea      eax, [r8+0x30]
        mov      word  ptr [rdi-0x02], ax
 						;; size=8 bbWeight=0.50 PerfScore 0.75
-G_M63296_IG29:
+G_M63296_IG31:
        xor      edi, edi
        mov      bword ptr [rbp-0x58], rdi
        mov      eax, 1
-       jmp      SHORT G_M63296_IG31
+       jmp      SHORT G_M63296_IG33
 						;; size=13 bbWeight=0.50 PerfScore 1.75
-G_M63296_IG30:
+G_M63296_IG32:
        xor      eax, eax
        mov      dword ptr [rbp-0x48], eax
 						;; size=5 bbWeight=0.50 PerfScore 0.62
-G_M63296_IG31:
+G_M63296_IG33:
        xor      rdi, rdi
        mov      bword ptr [rbp-0x58], rdi
 						;; size=6 bbWeight=0.50 PerfScore 0.62
-G_M63296_IG32:
+G_M63296_IG34:
        test     eax, eax
-       je       SHORT G_M63296_IG34
+       je       SHORT G_M63296_IG36
 						;; size=4 bbWeight=1 PerfScore 1.25
-G_M63296_IG33:
+G_M63296_IG35:
        mov      edi, dword ptr [rbp-0x48]
        add      dword ptr [rbx+0x08], edi
-       jmp      G_M63296_IG38
+       jmp      G_M63296_IG42
 						;; size=11 bbWeight=0.50 PerfScore 3.00
-G_M63296_IG34:
+G_M63296_IG36:
        mov      eax, dword ptr [rbp-0x3C]
        mov      dword ptr [rbp-0x5C], eax
        test     eax, eax
-       jge      SHORT G_M63296_IG35
+       jge      SHORT G_M63296_IG39
+       test     r12, r12
+       je       SHORT G_M63296_IG37
        mov      rdi, r12
        mov      rcx, 0xD1FFAB1E      ; code for System.Globalization.NumberFormatInfo:<GetInstance>g__GetProviderNonNull|59_0(System.IFormatProvider):System.Globalization.NumberFormatInfo
        call     [rcx]System.Globalization.NumberFormatInfo:<GetInstance>g__GetProviderNonNull|59_0(System.IFormatProvider):System.Globalization.NumberFormatInfo
+       jmp      SHORT G_M63296_IG38
+						;; size=32 bbWeight=0.50 PerfScore 5.00
+G_M63296_IG37:
+       mov      rcx, 0xD1FFAB1E      ; code for System.Globalization.NumberFormatInfo:get_CurrentInfo():System.Globalization.NumberFormatInfo
+       call     [rcx]System.Globalization.NumberFormatInfo:get_CurrentInfo():System.Globalization.NumberFormatInfo
+						;; size=12 bbWeight=0.50 PerfScore 1.62
+G_M63296_IG38:
        mov      rdx, gword ptr [rax+0x28]
        mov      edi, dword ptr [rbp-0x5C]
        mov      esi, -1
        mov      rax, 0xD1FFAB1E      ; code for System.Number:NegativeInt32ToDecStr(int,int,System.String):System.String
        call     [rax]System.Number:NegativeInt32ToDecStr(int,int,System.String):System.String
-       jmp      SHORT G_M63296_IG36
-						;; size=51 bbWeight=0.50 PerfScore 7.62
-G_M63296_IG35:
+       jmp      SHORT G_M63296_IG40
+						;; size=26 bbWeight=0.50 PerfScore 4.25
+G_M63296_IG39:
        mov      eax, dword ptr [rbp-0x5C]
        mov      edi, eax
        mov      rax, 0xD1FFAB1E      ; code for System.Number:UInt32ToDecStr(uint):System.String
        call     [rax]System.Number:UInt32ToDecStr(uint):System.String
 						;; size=17 bbWeight=0.50 PerfScore 2.25
-G_M63296_IG36:
+G_M63296_IG40:
        test     rax, rax
-       je       SHORT G_M63296_IG38
+       je       SHORT G_M63296_IG42
        mov      edi, dword ptr [rbx+0x08]
        cmp      dword ptr [rax+0x08], 1
-       jne      SHORT G_M63296_IG37
+       jne      SHORT G_M63296_IG41
        cmp      edi, dword ptr [rbx+0x18]
-       jae      SHORT G_M63296_IG37
+       jae      SHORT G_M63296_IG41
        mov      rsi, r13
        cmp      edi, dword ptr [rsi+0x08]
-       jae      G_M63296_IG97
+       jae      G_M63296_IG113
        mov      rsi, bword ptr [rsi]
        mov      ecx, edi
        movzx    rax, word  ptr [rax+0x0C]
        mov      word  ptr [rsi+2*rcx], ax
        inc      edi
        mov      dword ptr [rbx+0x08], edi
-       jmp      SHORT G_M63296_IG38
+       jmp      SHORT G_M63296_IG42
 						;; size=51 bbWeight=0.50 PerfScore 12.00
-G_M63296_IG37:
+G_M63296_IG41:
        mov      rdi, rbx
        mov      rsi, rax
        mov      rax, 0xD1FFAB1E      ; code for System.Text.ValueStringBuilder:AppendSlow(System.String):this
        call     [rax]System.Text.ValueStringBuilder:AppendSlow(System.String):this
 						;; size=18 bbWeight=0.50 PerfScore 1.88
-G_M63296_IG38:
+G_M63296_IG42:
        mov      edi, dword ptr [rbx+0x08]
        mov      rsi, bword ptr [rbx+0x10]
        mov      eax, dword ptr [rbx+0x18]
        cmp      edi, eax
-       jae      SHORT G_M63296_IG40
+       jae      SHORT G_M63296_IG44
 						;; size=14 bbWeight=1 PerfScore 7.25
-G_M63296_IG39:
+G_M63296_IG43:
        mov      eax, edi
        mov      word  ptr [rsi+2*rax], 59
        inc      edi
        mov      dword ptr [rbx+0x08], edi
-       jmp      SHORT G_M63296_IG41
+       jmp      SHORT G_M63296_IG45
 						;; size=15 bbWeight=0.50 PerfScore 2.25
-G_M63296_IG40:
+G_M63296_IG44:
        mov      rdi, rbx
        mov      esi, 59
        mov      rax, 0xD1FFAB1E      ; code for System.Text.ValueStringBuilder:GrowAndAppend(ushort):this
        call     [rax]System.Text.ValueStringBuilder:GrowAndAppend(ushort):this
 						;; size=20 bbWeight=0.50 PerfScore 1.88
-G_M63296_IG41:
+G_M63296_IG45:
        test     r15d, r15d
-       je       G_M63296_IG61
+       je       G_M63296_IG69
 						;; size=9 bbWeight=1 PerfScore 1.25
-G_M63296_IG42:
+G_M63296_IG46:
        movzx    rdi, byte  ptr [rbp+0x1A]
        mov      dword ptr [rbp-0x60], edi
        lea      rdi, bword ptr [rbp-0x60]
        mov      rax, r13
        mov      ecx, dword ptr [rbx+0x08]
        mov      edx, dword ptr [rax+0x08]
        cmp      ecx, edx
-       ja       G_M63296_IG98
+       ja       G_M63296_IG114
        mov      rax, bword ptr [rax]
        mov      esi, ecx
        lea      r15, bword ptr [rax+2*rsi]
        sub      edx, ecx
        mov      r12, r15
        mov      dword ptr [rbp-0xB4], edx
        mov      ecx, dword ptr [rdi]
        mov      dword ptr [rbp-0x6C], ecx
        test     ecx, ecx
-       jge      SHORT G_M63296_IG45
+       jge      SHORT G_M63296_IG51
+       test     r14, r14
+       je       SHORT G_M63296_IG47
        mov      rdi, r14
        mov      rdx, 0xD1FFAB1E      ; code for System.Globalization.NumberFormatInfo:<GetInstance>g__GetProviderNonNull|59_0(System.IFormatProvider):System.Globalization.NumberFormatInfo
        call     [rdx]System.Globalization.NumberFormatInfo:<GetInstance>g__GetProviderNonNull|59_0(System.IFormatProvider):System.Globalization.NumberFormatInfo
+       jmp      SHORT G_M63296_IG48
+						;; size=80 bbWeight=0.50 PerfScore 11.62
+G_M63296_IG47:
+       mov      rdx, 0xD1FFAB1E      ; code for System.Globalization.NumberFormatInfo:get_CurrentInfo():System.Globalization.NumberFormatInfo
+       call     [rdx]System.Globalization.NumberFormatInfo:get_CurrentInfo():System.Globalization.NumberFormatInfo
+						;; size=12 bbWeight=0.50 PerfScore 1.62
+G_M63296_IG48:
        mov      r8, gword ptr [rax+0x28]
        test     r8, r8
-       jne      SHORT G_M63296_IG43
+       jne      SHORT G_M63296_IG49
        xor      rdx, rdx
        xor      ecx, ecx
-       jmp      SHORT G_M63296_IG44
-						;; size=88 bbWeight=0.50 PerfScore 12.88
-G_M63296_IG43:
+       jmp      SHORT G_M63296_IG50
+						;; size=15 bbWeight=0.50 PerfScore 2.88
+G_M63296_IG49:
        lea      rdx, bword ptr [r8+0x0C]
        mov      ecx, dword ptr [r8+0x08]
 						;; size=8 bbWeight=0.50 PerfScore 1.25
-G_M63296_IG44:
+G_M63296_IG50:
        lea      r8, [rbp-0x68]
        mov      qword ptr [rsp], r8
        mov      r8, r12
        mov      r9d, dword ptr [rbp-0xB4]
        mov      edi, dword ptr [rbp-0x6C]
        mov      esi, -1
        mov      rax, 0xD1FFAB1E      ; code for System.Number:TryNegativeInt32ToDecStr[ushort](int,int,System.ReadOnlySpan`1[ushort],System.Span`1[ushort],byref):ubyte
        call     [rax]System.Number:TryNegativeInt32ToDecStr[ushort](int,int,System.ReadOnlySpan`1[ushort],System.Span`1[ushort],byref):ubyte
-       jmp      G_M63296_IG55
+       jmp      G_M63296_IG61
 						;; size=43 bbWeight=0.50 PerfScore 4.62
-G_M63296_IG45:
+G_M63296_IG51:
        mov      ecx, dword ptr [rbp-0x6C]
        mov      eax, ecx
        mov      edi, ecx
        or       edi, 1
        lzcnt    edi, edi
        xor      edi, 31
        mov      rsi, 0xD1FFAB1E      ; static handle
        add      rax, qword ptr [rsi+8*rdi]
        sar      rax, 32
        cmp      eax, edx
-       jg       G_M63296_IG53
+       jg       G_M63296_IG59
        mov      dword ptr [rbp-0x68], eax
        mov      bword ptr [rbp-0x78], r15
        movsxd   rdi, eax
        lea      rdi, [r15+2*rdi]
        cmp      ecx, 10
-       jb       SHORT G_M63296_IG51
+       jb       SHORT G_M63296_IG57
        cmp      ecx, 100
-       jb       SHORT G_M63296_IG50
+       jb       SHORT G_M63296_IG56
        mov      rax, 0xD1FFAB1E      ; const ptr
        mov      rax, gword ptr [rax]
 						;; size=80 bbWeight=0.50 PerfScore 8.25
-G_M63296_IG46:
+G_M63296_IG52:
        add      rdi, -4
        mov      edx, ecx
        imul     rdx, rdx, 0xD1FFAB1E
        shr      rdx, 37
        imul     esi, edx, 100
        sub      ecx, esi
        mov      rsi, rax
+       cmp      byte  ptr [rsi], sil
        shl      ecx, 2
        mov      ecx, dword ptr [rsi+rcx+0x10]
        mov      dword ptr [rdi], ecx
        cmp      edx, 100
-       jae      SHORT G_M63296_IG49
-						;; size=39 bbWeight=4 PerfScore 41.00
-G_M63296_IG47:
+       jae      SHORT G_M63296_IG55
+						;; size=42 bbWeight=4 PerfScore 53.00
+G_M63296_IG53:
        cmp      edx, 10
-       jb       SHORT G_M63296_IG48
+       jb       SHORT G_M63296_IG54
        add      rdi, -4
        mov      rax, 0xD1FFAB1E      ; const ptr
        mov      rax, gword ptr [rax]
+       cmp      byte  ptr [rax], al
        shl      edx, 2
        mov      ecx, edx
        mov      eax, dword ptr [rax+rcx+0x10]
        mov      dword ptr [rdi], eax
-       jmp      SHORT G_M63296_IG52
-						;; size=35 bbWeight=0.50 PerfScore 4.75
-G_M63296_IG48:
+       jmp      SHORT G_M63296_IG58
+						;; size=37 bbWeight=0.50 PerfScore 6.25
+G_M63296_IG54:
        mov      ecx, edx
-       jmp      SHORT G_M63296_IG51
-       align    [0 bytes for IG65]
+       jmp      SHORT G_M63296_IG57
+       align    [0 bytes for IG75]
 						;; size=4 bbWeight=0.25 PerfScore 0.56
-G_M63296_IG49:
+G_M63296_IG55:
        mov      ecx, edx
-       jmp      SHORT G_M63296_IG46
+       jmp      SHORT G_M63296_IG52
 						;; size=4 bbWeight=2 PerfScore 4.50
-G_M63296_IG50:
+G_M63296_IG56:
        mov      edx, ecx
-       jmp      SHORT G_M63296_IG47
+       jmp      SHORT G_M63296_IG53
 						;; size=4 bbWeight=0.25 PerfScore 0.56
-G_M63296_IG51:
+G_M63296_IG57:
        lea      eax, [rcx+0x30]
        mov      word  ptr [rdi-0x02], ax
 						;; size=7 bbWeight=0.50 PerfScore 0.75
-G_M63296_IG52:
+G_M63296_IG58:
        xor      edi, edi
        mov      bword ptr [rbp-0x78], rdi
        mov      eax, 1
-       jmp      SHORT G_M63296_IG54
+       jmp      SHORT G_M63296_IG60
 						;; size=13 bbWeight=0.50 PerfScore 1.75
-G_M63296_IG53:
+G_M63296_IG59:
        xor      eax, eax
        mov      dword ptr [rbp-0x68], eax
 						;; size=5 bbWeight=0.50 PerfScore 0.62
-G_M63296_IG54:
+G_M63296_IG60:
        xor      rdi, rdi
        mov      bword ptr [rbp-0x78], rdi
 						;; size=6 bbWeight=0.50 PerfScore 0.62
-G_M63296_IG55:
+G_M63296_IG61:
        test     eax, eax
-       je       SHORT G_M63296_IG56
+       je       SHORT G_M63296_IG62
        mov      edi, dword ptr [rbp-0x68]
        add      dword ptr [rbx+0x08], edi
-       jmp      G_M63296_IG60
+       jmp      G_M63296_IG68
 						;; size=15 bbWeight=0.50 PerfScore 3.62
-G_M63296_IG56:
+G_M63296_IG62:
        mov      r15d, dword ptr [rbp-0x60]
        test     r15d, r15d
-       jge      SHORT G_M63296_IG57
+       jge      SHORT G_M63296_IG65
+       test     r14, r14
+       je       SHORT G_M63296_IG63
        mov      rdi, r14
        mov      rax, 0xD1FFAB1E      ; code for System.Globalization.NumberFormatInfo:<GetInstance>g__GetProviderNonNull|59_0(System.IFormatProvider):System.Globalization.NumberFormatInfo
        call     [rax]System.Globalization.NumberFormatInfo:<GetInstance>g__GetProviderNonNull|59_0(System.IFormatProvider):System.Globalization.NumberFormatInfo
+       jmp      SHORT G_M63296_IG64
+						;; size=31 bbWeight=0.50 PerfScore 4.50
+G_M63296_IG63:
+       mov      rax, 0xD1FFAB1E      ; code for System.Globalization.NumberFormatInfo:get_CurrentInfo():System.Globalization.NumberFormatInfo
+       call     [rax]System.Globalization.NumberFormatInfo:get_CurrentInfo():System.Globalization.NumberFormatInfo
+						;; size=12 bbWeight=0.50 PerfScore 1.62
+G_M63296_IG64:
        mov      rdx, gword ptr [rax+0x28]
        mov      edi, r15d
        mov      esi, -1
        mov      rax, 0xD1FFAB1E      ; code for System.Number:NegativeInt32ToDecStr(int,int,System.String):System.String
        call     [rax]System.Number:NegativeInt32ToDecStr(int,int,System.String):System.String
-       jmp      SHORT G_M63296_IG58
-						;; size=50 bbWeight=0.50 PerfScore 6.75
-G_M63296_IG57:
+       jmp      SHORT G_M63296_IG66
+						;; size=26 bbWeight=0.50 PerfScore 3.88
+G_M63296_IG65:
        mov      edi, r15d
        mov      rax, 0xD1FFAB1E      ; code for System.Number:UInt32ToDecStr(uint):System.String
        call     [rax]System.Number:UInt32ToDecStr(uint):System.String
 						;; size=15 bbWeight=0.50 PerfScore 1.75
-G_M63296_IG58:
+G_M63296_IG66:
        test     rax, rax
-       je       SHORT G_M63296_IG60
+       je       SHORT G_M63296_IG68
        mov      edi, dword ptr [rbx+0x08]
        cmp      dword ptr [rax+0x08], 1
-       jne      SHORT G_M63296_IG59
+       jne      SHORT G_M63296_IG67
        cmp      edi, dword ptr [rbx+0x18]
-       jae      SHORT G_M63296_IG59
+       jae      SHORT G_M63296_IG67
        cmp      edi, dword ptr [r13+0x08]
-       jae      G_M63296_IG97
+       jae      G_M63296_IG113
        mov      rsi, bword ptr [r13]
        mov      ecx, edi
        movzx    rax, word  ptr [rax+0x0C]
        mov      word  ptr [rsi+2*rcx], ax
        inc      edi
        mov      dword ptr [rbx+0x08], edi
-       jmp      SHORT G_M63296_IG60
+       jmp      SHORT G_M63296_IG68
 						;; size=50 bbWeight=0.50 PerfScore 11.88
-G_M63296_IG59:
+G_M63296_IG67:
        mov      rdi, rbx
        mov      rsi, rax
        mov      rax, 0xD1FFAB1E      ; code for System.Text.ValueStringBuilder:AppendSlow(System.String):this
        call     [rax]System.Text.ValueStringBuilder:AppendSlow(System.String):this
 						;; size=18 bbWeight=0.50 PerfScore 1.88
-G_M63296_IG60:
+G_M63296_IG68:
        mov      edi, dword ptr [rbx+0x08]
        mov      rax, bword ptr [rbx+0x10]
        mov      ecx, dword ptr [rbx+0x18]
        cmp      edi, ecx
-       jae      G_M63296_IG91
+       jae      G_M63296_IG107
+       cmp      edi, ecx
+       jae      G_M63296_IG113
        mov      ecx, edi
        mov      word  ptr [rax+2*rcx], 59
        inc      edi
        mov      dword ptr [rbx+0x08], edi
-       jmp      G_M63296_IG92
-						;; size=36 bbWeight=0.50 PerfScore 5.88
-G_M63296_IG61:
+       jmp      G_M63296_IG108
+						;; size=44 bbWeight=0.50 PerfScore 6.50
+G_M63296_IG69:
        movzx    rdi, byte  ptr [rbp+0x19]
        mov      dword ptr [rbp-0x7C], edi
        mov      r15, r14
        lea      rdi, bword ptr [rbp-0x7C]
        mov      rax, r13
        mov      ecx, dword ptr [rbx+0x08]
        mov      edx, dword ptr [rax+0x08]
        cmp      ecx, edx
-       ja       G_M63296_IG98
+       ja       G_M63296_IG114
        mov      rax, bword ptr [rax]
        mov      esi, ecx
        lea      r12, bword ptr [rax+2*rsi]
        sub      edx, ecx
        mov      bword ptr [rbp-0xC8], r12
        mov      dword ptr [rbp-0xB8], edx
        mov      esi, dword ptr [rdi]
        mov      dword ptr [rbp-0x8C], esi
        test     esi, esi
-       jge      SHORT G_M63296_IG64
+       jge      SHORT G_M63296_IG74
+       test     r15, r15
+       je       SHORT G_M63296_IG70
        mov      rdi, r15
        mov      rdx, 0xD1FFAB1E      ; code for System.Globalization.NumberFormatInfo:<GetInstance>g__GetProviderNonNull|59_0(System.IFormatProvider):System.Globalization.NumberFormatInfo
        call     [rdx]System.Globalization.NumberFormatInfo:<GetInstance>g__GetProviderNonNull|59_0(System.IFormatProvider):System.Globalization.NumberFormatInfo
+       jmp      SHORT G_M63296_IG71
+						;; size=90 bbWeight=0.50 PerfScore 12.12
+G_M63296_IG70:
+       mov      rdx, 0xD1FFAB1E      ; code for System.Globalization.NumberFormatInfo:get_CurrentInfo():System.Globalization.NumberFormatInfo
+       call     [rdx]System.Globalization.NumberFormatInfo:get_CurrentInfo():System.Globalization.NumberFormatInfo
+						;; size=12 bbWeight=0.50 PerfScore 1.62
+G_M63296_IG71:
        mov      r8, gword ptr [rax+0x28]
        test     r8, r8
-       jne      SHORT G_M63296_IG62
+       jne      SHORT G_M63296_IG72
        xor      rdx, rdx
        xor      ecx, ecx
-       jmp      SHORT G_M63296_IG63
-						;; size=98 bbWeight=0.50 PerfScore 13.38
-G_M63296_IG62:
+       jmp      SHORT G_M63296_IG73
+						;; size=15 bbWeight=0.50 PerfScore 2.88
+G_M63296_IG72:
        lea      rdx, bword ptr [r8+0x0C]
        mov      ecx, dword ptr [r8+0x08]
 						;; size=8 bbWeight=0.50 PerfScore 1.25
-G_M63296_IG63:
+G_M63296_IG73:
        lea      r8, [rbp-0x88]
        mov      qword ptr [rsp], r8
        mov      r8, bword ptr [rbp-0xC8]
        mov      r9d, dword ptr [rbp-0xB8]
        mov      edi, dword ptr [rbp-0x8C]
        mov      esi, -1
        mov      rax, 0xD1FFAB1E      ; code for System.Number:TryNegativeInt32ToDecStr[ushort](int,int,System.ReadOnlySpan`1[ushort],System.Span`1[ushort],byref):ubyte
        call     [rax]System.Number:TryNegativeInt32ToDecStr[ushort](int,int,System.ReadOnlySpan`1[ushort],System.Span`1[ushort],byref):ubyte
-       jmp      G_M63296_IG74
+       jmp      G_M63296_IG84
 						;; size=53 bbWeight=0.50 PerfScore 5.00
-G_M63296_IG64:
+G_M63296_IG74:
        mov      esi, dword ptr [rbp-0x8C]
        mov      eax, esi
        mov      edi, esi
        or       edi, 1
        lzcnt    edi, edi
        xor      edi, 31
        mov      rcx, 0xD1FFAB1E      ; static handle
        add      rax, qword ptr [rcx+8*rdi]
        sar      rax, 32
        cmp      eax, edx
-       jg       G_M63296_IG72
+       jg       G_M63296_IG82
        mov      dword ptr [rbp-0x88], eax
        mov      bword ptr [rbp-0x98], r12
        movsxd   rdi, eax
        lea      rdi, [r12+2*rdi]
        cmp      esi, 10
-       jb       SHORT G_M63296_IG70
+       jb       SHORT G_M63296_IG80
        cmp      esi, 100
-       jb       SHORT G_M63296_IG69
+       jb       SHORT G_M63296_IG79
        mov      rax, 0xD1FFAB1E      ; const ptr
        mov      rax, gword ptr [rax]
 						;; size=89 bbWeight=0.50 PerfScore 8.25
-G_M63296_IG65:
+G_M63296_IG75:
        add      rdi, -4
        mov      ecx, esi
        imul     rcx, rcx, 0xD1FFAB1E
        shr      rcx, 37
        imul     edx, ecx, 100
        sub      esi, edx
        mov      rdx, rax
+       cmp      byte  ptr [rdx], dl
        shl      esi, 2
        mov      edx, dword ptr [rdx+rsi+0x10]
        mov      dword ptr [rdi], edx
        cmp      ecx, 100
-       jae      SHORT G_M63296_IG68
-						;; size=39 bbWeight=4 PerfScore 41.00
-G_M63296_IG66:
+       jae      SHORT G_M63296_IG78
+						;; size=41 bbWeight=4 PerfScore 53.00
+G_M63296_IG76:
        cmp      ecx, 10
-       jb       SHORT G_M63296_IG67
+       jb       SHORT G_M63296_IG77
        add      rdi, -4
        mov      rax, 0xD1FFAB1E      ; const ptr
        mov      rax, gword ptr [rax]
+       cmp      byte  ptr [rax], al
        shl      ecx, 2
        mov      eax, dword ptr [rax+rcx+0x10]
        mov      dword ptr [rdi], eax
-       jmp      SHORT G_M63296_IG71
-						;; size=33 bbWeight=0.50 PerfScore 4.62
-G_M63296_IG67:
+       jmp      SHORT G_M63296_IG81
+						;; size=35 bbWeight=0.50 PerfScore 6.12
+G_M63296_IG77:
        mov      esi, ecx
-       jmp      SHORT G_M63296_IG70
+       jmp      SHORT G_M63296_IG80
 						;; size=4 bbWeight=0.25 PerfScore 0.56
-G_M63296_IG68:
+G_M63296_IG78:
        mov      esi, ecx
-       jmp      SHORT G_M63296_IG65
+       jmp      SHORT G_M63296_IG75
 						;; size=4 bbWeight=2 PerfScore 4.50
-G_M63296_IG69:
+G_M63296_IG79:
        mov      ecx, esi
-       jmp      SHORT G_M63296_IG66
+       jmp      SHORT G_M63296_IG76
 						;; size=4 bbWeight=0.25 PerfScore 0.56
-G_M63296_IG70:
+G_M63296_IG80:
        lea      eax, [rsi+0x30]
        mov      word  ptr [rdi-0x02], ax
 						;; size=7 bbWeight=0.50 PerfScore 0.75
-G_M63296_IG71:
+G_M63296_IG81:
        xor      edi, edi
        mov      bword ptr [rbp-0x98], rdi
        mov      eax, 1
-       jmp      SHORT G_M63296_IG73
+       jmp      SHORT G_M63296_IG83
 						;; size=16 bbWeight=0.50 PerfScore 1.75
-G_M63296_IG72:
+G_M63296_IG82:
        xor      eax, eax
        mov      dword ptr [rbp-0x88], eax
 						;; size=8 bbWeight=0.50 PerfScore 0.62
-G_M63296_IG73:
+G_M63296_IG83:
        xor      rdi, rdi
        mov      bword ptr [rbp-0x98], rdi
 						;; size=9 bbWeight=0.50 PerfScore 0.62
-G_M63296_IG74:
+G_M63296_IG84:
        test     eax, eax
-       je       SHORT G_M63296_IG75
+       je       SHORT G_M63296_IG85
        mov      edi, dword ptr [rbp-0x88]
        add      dword ptr [rbx+0x08], edi
-       jmp      G_M63296_IG79
+       jmp      G_M63296_IG91
 						;; size=18 bbWeight=0.50 PerfScore 3.62
-G_M63296_IG75:
+G_M63296_IG85:
        mov      r12d, dword ptr [rbp-0x7C]
        test     r12d, r12d
-       jge      SHORT G_M63296_IG76
+       jge      SHORT G_M63296_IG88
+       test     r15, r15
+       je       SHORT G_M63296_IG86
        mov      rdi, r15
        mov      rax, 0xD1FFAB1E      ; code for System.Globalization.NumberFormatInfo:<GetInstance>g__GetProviderNonNull|59_0(System.IFormatProvider):System.Globalization.NumberFormatInfo
        call     [rax]System.Globalization.NumberFormatInfo:<GetInstance>g__GetProviderNonNull|59_0(System.IFormatProvider):System.Globalization.NumberFormatInfo
+       jmp      SHORT G_M63296_IG87
+						;; size=31 bbWeight=0.50 PerfScore 4.50
+G_M63296_IG86:
+       mov      rax, 0xD1FFAB1E      ; code for System.Globalization.NumberFormatInfo:get_CurrentInfo():System.Globalization.NumberFormatInfo
+       call     [rax]System.Globalization.NumberFormatInfo:get_CurrentInfo():System.Globalization.NumberFormatInfo
+						;; size=12 bbWeight=0.50 PerfScore 1.62
+G_M63296_IG87:
        mov      rdx, gword ptr [rax+0x28]
        mov      edi, r12d
        mov      esi, -1
        mov      rax, 0xD1FFAB1E      ; code for System.Number:NegativeInt32ToDecStr(int,int,System.String):System.String
        call     [rax]System.Number:NegativeInt32ToDecStr(int,int,System.String):System.String
-       jmp      SHORT G_M63296_IG77
-						;; size=50 bbWeight=0.50 PerfScore 6.75
-G_M63296_IG76:
+       jmp      SHORT G_M63296_IG89
+						;; size=26 bbWeight=0.50 PerfScore 3.88
+G_M63296_IG88:
        mov      edi, r12d
        mov      rax, 0xD1FFAB1E      ; code for System.Number:UInt32ToDecStr(uint):System.String
        call     [rax]System.Number:UInt32ToDecStr(uint):System.String
 						;; size=15 bbWeight=0.50 PerfScore 1.75
-G_M63296_IG77:
+G_M63296_IG89:
        test     rax, rax
-       je       SHORT G_M63296_IG79
+       je       SHORT G_M63296_IG91
        mov      edi, dword ptr [rbx+0x08]
        cmp      dword ptr [rax+0x08], 1
-       jne      SHORT G_M63296_IG78
+       jne      SHORT G_M63296_IG90
        cmp      edi, dword ptr [rbx+0x18]
-       jae      SHORT G_M63296_IG78
+       jae      SHORT G_M63296_IG90
        mov      rsi, r13
        cmp      edi, dword ptr [rsi+0x08]
-       jae      G_M63296_IG97
+       jae      G_M63296_IG113
        mov      rsi, bword ptr [rsi]
        mov      ecx, edi
        cmp      dword ptr [rax+0x08], 0
-       jbe      G_M63296_IG97
+       jbe      G_M63296_IG113
        movzx    rax, word  ptr [rax+0x0C]
        mov      word  ptr [rsi+2*rcx], ax
        inc      edi
        mov      dword ptr [rbx+0x08], edi
-       jmp      SHORT G_M63296_IG79
+       jmp      SHORT G_M63296_IG91
 						;; size=61 bbWeight=0.50 PerfScore 14.00
-G_M63296_IG78:
+G_M63296_IG90:
        mov      rdi, rbx
        mov      rsi, rax
        mov      rax, 0xD1FFAB1E      ; code for System.Text.ValueStringBuilder:AppendSlow(System.String):this
        call     [rax]System.Text.ValueStringBuilder:AppendSlow(System.String):this
 						;; size=18 bbWeight=0.50 PerfScore 1.88
-G_M63296_IG79:
+G_M63296_IG91:
        mov      edi, dword ptr [rbx+0x08]
        mov      rsi, bword ptr [rbx+0x10]
        mov      eax, dword ptr [rbx+0x18]
        cmp      edi, eax
-       jae      SHORT G_M63296_IG80
+       jae      SHORT G_M63296_IG92
        cmp      edi, eax
-       jae      G_M63296_IG97
+       jae      G_M63296_IG113
        mov      eax, edi
        mov      word  ptr [rsi+2*rax], 59
        inc      edi
        mov      dword ptr [rbx+0x08], edi
-       jmp      SHORT G_M63296_IG81
+       jmp      SHORT G_M63296_IG93
 						;; size=37 bbWeight=0.50 PerfScore 6.50
-G_M63296_IG80:
+G_M63296_IG92:
        mov      rdi, rbx
        mov      esi, 59
        mov      rax, 0xD1FFAB1E      ; code for System.Text.ValueStringBuilder:GrowAndAppend(ushort):this
        call     [rax]System.Text.ValueStringBuilder:GrowAndAppend(ushort):this
 						;; size=20 bbWeight=0.50 PerfScore 1.88
-G_M63296_IG81:
+G_M63296_IG93:
        mov      edi, dword ptr [rbp+0x1C]
        mov      dword ptr [rbp-0x9C], edi
        mov      r15, r14
        lea      rdi, bword ptr [rbp-0x9C]
        mov      rax, r13
        mov      ecx, dword ptr [rbx+0x08]
        mov      edx, dword ptr [rax+0x08]
        cmp      ecx, edx
-       ja       G_M63296_IG98
+       ja       G_M63296_IG114
        mov      rax, bword ptr [rax]
        mov      esi, ecx
        lea      rsi, bword ptr [rax+2*rsi]
        sub      edx, ecx
        mov      r14, rsi
        mov      r12d, edx
        mov      eax, dword ptr [rdi]
        mov      dword ptr [rbp-0xAC], eax
        test     eax, eax
-       jge      SHORT G_M63296_IG84
+       jge      SHORT G_M63296_IG98
+       test     r15, r15
+       je       SHORT G_M63296_IG94
        mov      rdi, r15
        mov      rcx, 0xD1FFAB1E      ; code for System.Globalization.NumberFormatInfo:<GetInstance>g__GetProviderNonNull|59_0(System.IFormatProvider):System.Globalization.NumberFormatInfo
        call     [rcx]System.Globalization.NumberFormatInfo:<GetInstance>g__GetProviderNonNull|59_0(System.IFormatProvider):System.Globalization.NumberFormatInfo
+       jmp      SHORT G_M63296_IG95
+						;; size=87 bbWeight=0.50 PerfScore 11.38
+G_M63296_IG94:
+       mov      rcx, 0xD1FFAB1E      ; code for System.Globalization.NumberFormatInfo:get_CurrentInfo():System.Globalization.NumberFormatInfo
+       call     [rcx]System.Globalization.NumberFormatInfo:get_CurrentInfo():System.Globalization.NumberFormatInfo
+						;; size=12 bbWeight=0.50 PerfScore 1.62
+G_M63296_IG95:
        mov      r8, gword ptr [rax+0x28]
        test     r8, r8
-       jne      SHORT G_M63296_IG82
+       jne      SHORT G_M63296_IG96
        xor      rdx, rdx
        xor      ecx, ecx
-       jmp      SHORT G_M63296_IG83
-						;; size=95 bbWeight=0.50 PerfScore 12.62
-G_M63296_IG82:
+       jmp      SHORT G_M63296_IG97
+						;; size=15 bbWeight=0.50 PerfScore 2.88
+G_M63296_IG96:
        lea      rdx, bword ptr [r8+0x0C]
        mov      ecx, dword ptr [r8+0x08]
 						;; size=8 bbWeight=0.50 PerfScore 1.25
-G_M63296_IG83:
+G_M63296_IG97:
        lea      r8, [rbp-0xA8]
        mov      qword ptr [rsp], r8
        mov      r8, r14
        mov      r9d, r12d
        mov      edi, dword ptr [rbp-0xAC]
        mov      esi, -1
        mov      rax, 0xD1FFAB1E      ; code for System.Number:TryNegativeInt32ToDecStr[ushort](int,int,System.ReadOnlySpan`1[ushort],System.Span`1[ushort],byref):ubyte
        call     [rax]System.Number:TryNegativeInt32ToDecStr[ushort](int,int,System.ReadOnlySpan`1[ushort],System.Span`1[ushort],byref):ubyte
-       jmp      SHORT G_M63296_IG85
+       jmp      SHORT G_M63296_IG99
 						;; size=42 bbWeight=0.50 PerfScore 4.25
-G_M63296_IG84:
+G_M63296_IG98:
        mov      eax, dword ptr [rbp-0xAC]
        lea      rcx, [rbp-0xA8]
        mov      edi, eax
        mov      rax, 0xD1FFAB1E      ; code for System.Number:TryUInt32ToDecStr[ushort](uint,System.Span`1[ushort],byref):ubyte
        call     [rax]System.Number:TryUInt32ToDecStr[ushort](uint,System.Span`1[ushort],byref):ubyte
 						;; size=27 bbWeight=0.50 PerfScore 2.50
-G_M63296_IG85:
+G_M63296_IG99:
        test     eax, eax
-       je       SHORT G_M63296_IG86
+       je       SHORT G_M63296_IG100
        mov      edi, dword ptr [rbp-0xA8]
        add      dword ptr [rbx+0x08], edi
-       jmp      G_M63296_IG90
+       jmp      G_M63296_IG106
 						;; size=18 bbWeight=0.50 PerfScore 3.62
-G_M63296_IG86:
+G_M63296_IG100:
        mov      r14d, dword ptr [rbp-0x9C]
        test     r14d, r14d
-       jge      SHORT G_M63296_IG87
+       jge      SHORT G_M63296_IG103
+       test     r15, r15
+       je       SHORT G_M63296_IG101
        mov      rdi, r15
        mov      rax, 0xD1FFAB1E      ; code for System.Globalization.NumberFormatInfo:<GetInstance>g__GetProviderNonNull|59_0(System.IFormatProvider):System.Globalization.NumberFormatInfo
        call     [rax]System.Globalization.NumberFormatInfo:<GetInstance>g__GetProviderNonNull|59_0(System.IFormatProvider):System.Globalization.NumberFormatInfo
+       jmp      SHORT G_M63296_IG102
+						;; size=34 bbWeight=0.50 PerfScore 4.50
+G_M63296_IG101:
+       mov      rax, 0xD1FFAB1E      ; code for System.Globalization.NumberFormatInfo:get_CurrentInfo():System.Globalization.NumberFormatInfo
+       call     [rax]System.Globalization.NumberFormatInfo:get_CurrentInfo():System.Globalization.NumberFormatInfo
+						;; size=12 bbWeight=0.50 PerfScore 1.62
+G_M63296_IG102:
        mov      rdx, gword ptr [rax+0x28]
        mov      edi, r14d
        mov      esi, -1
        mov      rax, 0xD1FFAB1E      ; code for System.Number:NegativeInt32ToDecStr(int,int,System.String):System.String
        call     [rax]System.Number:NegativeInt32ToDecStr(int,int,System.String):System.String
-       jmp      SHORT G_M63296_IG88
-						;; size=53 bbWeight=0.50 PerfScore 6.75
-G_M63296_IG87:
+       jmp      SHORT G_M63296_IG104
+						;; size=26 bbWeight=0.50 PerfScore 3.88
+G_M63296_IG103:
        mov      edi, r14d
        mov      rax, 0xD1FFAB1E      ; code for System.Number:UInt32ToDecStr(uint):System.String
        call     [rax]System.Number:UInt32ToDecStr(uint):System.String
 						;; size=15 bbWeight=0.50 PerfScore 1.75
-G_M63296_IG88:
+G_M63296_IG104:
        test     rax, rax
-       je       SHORT G_M63296_IG90
+       je       SHORT G_M63296_IG106
        mov      edi, dword ptr [rbx+0x08]
        cmp      dword ptr [rax+0x08], 1
-       jne      SHORT G_M63296_IG89
+       jne      SHORT G_M63296_IG105
        cmp      edi, dword ptr [rbx+0x18]
-       jae      SHORT G_M63296_IG89
+       jae      SHORT G_M63296_IG105
        mov      rsi, r13
        cmp      edi, dword ptr [rsi+0x08]
-       jae      G_M63296_IG97
+       jae      G_M63296_IG113
        mov      rsi, bword ptr [rsi]
        mov      ecx, edi
        cmp      dword ptr [rax+0x08], 0
-       jbe      G_M63296_IG97
+       jbe      G_M63296_IG113
        movzx    rax, word  ptr [rax+0x0C]
        mov      word  ptr [rsi+2*rcx], ax
        inc      edi
        mov      dword ptr [rbx+0x08], edi
-       jmp      SHORT G_M63296_IG90
+       jmp      SHORT G_M63296_IG106
 						;; size=61 bbWeight=0.50 PerfScore 14.00
-G_M63296_IG89:
+G_M63296_IG105:
        mov      rdi, rbx
        mov      rsi, rax
        mov      rax, 0xD1FFAB1E      ; code for System.Text.ValueStringBuilder:AppendSlow(System.String):this
        call     [rax]System.Text.ValueStringBuilder:AppendSlow(System.String):this
 						;; size=18 bbWeight=0.50 PerfScore 1.88
-G_M63296_IG90:
+G_M63296_IG106:
        mov      edi, dword ptr [rbx+0x08]
        mov      rsi, bword ptr [rbx+0x10]
        mov      eax, dword ptr [rbx+0x18]
        cmp      edi, eax
-       jae      SHORT G_M63296_IG91
+       jae      SHORT G_M63296_IG107
        cmp      edi, eax
-       jae      SHORT G_M63296_IG97
+       jae      SHORT G_M63296_IG113
        mov      eax, edi
        mov      word  ptr [rsi+2*rax], 59
        inc      edi
        mov      dword ptr [rbx+0x08], edi
-       jmp      SHORT G_M63296_IG92
+       jmp      SHORT G_M63296_IG108
 						;; size=33 bbWeight=0.50 PerfScore 6.50
-G_M63296_IG91:
+G_M63296_IG107:
        mov      rdi, rbx
        mov      esi, 59
        mov      rax, 0xD1FFAB1E      ; code for System.Text.ValueStringBuilder:GrowAndAppend(ushort):this
        call     [rax]System.Text.ValueStringBuilder:GrowAndAppend(ushort):this
 						;; size=20 bbWeight=0.50 PerfScore 1.88
-G_M63296_IG92:
+G_M63296_IG108:
        mov      edi, dword ptr [rbx+0x08]
        mov      rsi, bword ptr [rbx+0x10]
        mov      eax, dword ptr [rbx+0x18]
        cmp      edi, eax
-       jae      SHORT G_M63296_IG94
+       jae      SHORT G_M63296_IG110
 						;; size=14 bbWeight=1 PerfScore 7.25
-G_M63296_IG93:
+G_M63296_IG109:
        cmp      edi, eax
-       jae      SHORT G_M63296_IG97
+       jae      SHORT G_M63296_IG113
        mov      eax, edi
        mov      word  ptr [rsi+2*rax], 93
        inc      edi
        mov      dword ptr [rbx+0x08], edi
-       jmp      SHORT G_M63296_IG95
+       jmp      SHORT G_M63296_IG111
 						;; size=19 bbWeight=0.50 PerfScore 2.88
-G_M63296_IG94:
+G_M63296_IG110:
        mov      rdi, rbx
        mov      esi, 93
        mov      rax, 0xD1FFAB1E      ; code for System.Text.ValueStringBuilder:GrowAndAppend(ushort):this
        call     [rax]System.Text.ValueStringBuilder:GrowAndAppend(ushort):this
 						;; size=20 bbWeight=0.50 PerfScore 1.88
-G_M63296_IG95:
+G_M63296_IG111:
        nop      
 						;; size=1 bbWeight=1 PerfScore 0.25
-G_M63296_IG96:
+G_M63296_IG112:
        add      rsp, 184
        pop      rbx
        pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
 						;; size=18 bbWeight=1 PerfScore 4.25
-G_M63296_IG97:
+G_M63296_IG113:
        call     CORINFO_HELP_RNGCHKFAIL
 						;; size=5 bbWeight=0 PerfScore 0.00
-G_M63296_IG98:
+G_M63296_IG114:
        mov      rax, 0xD1FFAB1E      ; code for System.ThrowHelper:ThrowArgumentOutOfRangeException()
        call     [rax]System.ThrowHelper:ThrowArgumentOutOfRangeException()
        int3     
 						;; size=13 bbWeight=0 PerfScore 0.00
 
-; Total bytes of code 2683, prolog size 55, PerfScore 814.41, instruction count 730, allocated bytes for code 2687 (MethodHash=a16208bf) for method System.TimeZoneInfo+StringSerializer:SerializeTransitionTime(System.TimeZoneInfo+TransitionTime,byref) (FullOpts)
+; Total bytes of code 2864, prolog size 55, PerfScore 899.63, instruction count 778, allocated bytes for code 2868 (MethodHash=a16208bf) for method System.TimeZoneInfo+StringSerializer:SerializeTransitionTime(System.TimeZoneInfo+TransitionTime,byref) (FullOpts)
125 (16.94 % of base) - System.String:Replace(System.String,System.String,int):System.String:this
 ; Assembly listing for method System.String:Replace(System.String,System.String,int):System.String:this (FullOpts)
 ; Emitting BLENDED_CODE for X64 with AVX - Unix
 ; FullOpts code
 ; optimized code
 ; rbp based frame
 ; partially interruptible
 ; No PGO data
 ; 0 inlinees with PGO data; 20 single block inlinees; 18 inlinees without PGO data
 ; Final local variable assignments
 ;
 ;  V00 this         [V00,T00] ( 15,  8.50)     ref  ->  rbx         this class-hnd single-def <System.String>
 ;  V01 arg1         [V01,T01] ( 13,  7   )     ref  ->  r15         class-hnd single-def <System.String>
 ;  V02 arg2         [V02,T02] ( 12,  7   )     ref  ->  r14         class-hnd single-def <System.String>
 ;  V03 arg3         [V03,T03] (  6,  5   )     int  ->  r13         single-def
 ;  V04 OutArgs      [V04    ] (  1,  1   )  struct (16) [rsp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-;  V05 tmp1         [V05,T73] (  3,  0   )     ref  ->  rbx         class-hnd exact single-def "NewObj constructor temp" <System.ArgumentException>
-;  V06 tmp2         [V06,T11] (  2,  2   )     ref  ->  rdi         class-hnd exact single-def "impAppendStmt" <System.Globalization.CompareInfo>
-;  V07 tmp3         [V07,T12] (  2,  2   )     ref  ->  rax         class-hnd exact single-def "impAppendStmt" <System.Globalization.CompareInfo>
+;  V05 tmp1         [V05,T75] (  3,  0   )     ref  ->  rbx         class-hnd exact single-def "NewObj constructor temp" <System.ArgumentException>
+;  V06 tmp2         [V06,T15] (  2,  2   )     ref  ->  rax         class-hnd exact single-def "impAppendStmt" <System.Globalization.CompareInfo>
+;  V07 tmp3         [V07,T16] (  2,  2   )     ref  ->  rax         class-hnd exact single-def "impAppendStmt" <System.Globalization.CompareInfo>
 ;* V08 tmp4         [V08    ] (  0,  0   )  struct (16) zero-ref    multireg-arg "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
 ;* V09 tmp5         [V09    ] (  0,  0   )  struct (16) zero-ref    multireg-arg "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
 ;* V10 tmp6         [V10    ] (  0,  0   )  struct (16) zero-ref    <System.ReadOnlySpan`1[ushort]>
 ;* V11 tmp7         [V11    ] (  0,  0   )  struct (16) zero-ref    <System.ReadOnlySpan`1[ushort]>
 ;* V12 tmp8         [V12    ] (  0,  0   )  struct (16) zero-ref    <System.ReadOnlySpan`1[ushort]>
-;  V13 tmp9         [V13,T10] (  4,  2   )     ref  ->  rax        
+;  V13 tmp9         [V13,T12] (  4,  2   )     ref  ->  rax        
 ;* V14 tmp10        [V14    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
-;  V15 tmp11        [V15,T13] (  2,  2   )     ref  ->  rax         class-hnd exact single-def "dup spill" <System.String>
-;  V16 tmp12        [V16,T07] (  5,  2.50)     ref  ->  rax        
-;* V17 tmp13        [V17,T77] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
+;  V15 tmp11        [V15,T17] (  2,  2   )     ref  ->  rax         class-hnd exact single-def "dup spill" <System.String>
+;  V16 tmp12        [V16,T09] (  5,  2.50)     ref  ->  rax        
+;* V17 tmp13        [V17,T79] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
 ;* V18 tmp14        [V18    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
 ;* V19 tmp15        [V19    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
-;  V20 tmp16        [V20,T14] (  2,  2   )   byref  ->  rcx         single-def "Inlining Arg"
-;  V21 tmp17        [V21,T26] (  2,  2   )     int  ->  rdx         "Inlining Arg"
+;  V20 tmp16        [V20,T18] (  2,  2   )   byref  ->  rcx         single-def "Inlining Arg"
+;  V21 tmp17        [V21,T30] (  2,  2   )     int  ->  rdx         "Inlining Arg"
 ;* V22 tmp18        [V22    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
 ;* V23 tmp19        [V23    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
-;  V24 tmp20        [V24,T15] (  2,  2   )   byref  ->  r15         single-def "Inlining Arg"
-;  V25 tmp21        [V25,T27] (  2,  2   )     int  ->  r12         "Inlining Arg"
+;  V24 tmp20        [V24,T19] (  2,  2   )   byref  ->  r15         single-def "Inlining Arg"
+;  V25 tmp21        [V25,T31] (  2,  2   )     int  ->  r12         "Inlining Arg"
 ;* V26 tmp22        [V26    ] (  0,  0   )  struct (16) zero-ref    multireg-arg "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
 ;* V27 tmp23        [V27    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
 ;* V28 tmp24        [V28    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
-;  V29 tmp25        [V29,T16] (  2,  2   )   byref  ->  rdi         single-def "Inlining Arg"
-;  V30 tmp26        [V30,T28] (  2,  2   )     int  ->  rsi         "Inlining Arg"
+;  V29 tmp25        [V29,T20] (  2,  2   )   byref  ->  rdi         single-def "Inlining Arg"
+;  V30 tmp26        [V30,T32] (  2,  2   )     int  ->  rsi         "Inlining Arg"
 ;* V31 tmp27        [V31    ] (  0,  0   )  struct (16) zero-ref    multireg-arg "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
 ;* V32 tmp28        [V32    ] (  0,  0   )  struct (16) zero-ref    multireg-arg "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
 ;* V33 tmp29        [V33    ] (  0,  0   )  struct (16) zero-ref    <System.ReadOnlySpan`1[ushort]>
 ;* V34 tmp30        [V34    ] (  0,  0   )  struct (16) zero-ref    <System.ReadOnlySpan`1[ushort]>
 ;* V35 tmp31        [V35    ] (  0,  0   )  struct (16) zero-ref    <System.ReadOnlySpan`1[ushort]>
-;  V36 tmp32        [V36,T47] (  2,  1   )     ref  ->  rdi        
+;  V36 tmp32        [V36,T13] (  4,  2   )     ref  ->  rax        
 ;* V37 tmp33        [V37    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
-;  V38 tmp34        [V38,T17] (  2,  2   )     ref  ->  rax         class-hnd exact single-def "dup spill" <System.String>
-;  V39 tmp35        [V39,T08] (  5,  2.50)     ref  ->  rax        
-;* V40 tmp36        [V40,T78] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
+;  V38 tmp34        [V38,T21] (  2,  2   )     ref  ->  rax         class-hnd exact single-def "dup spill" <System.String>
+;  V39 tmp35        [V39,T10] (  5,  2.50)     ref  ->  rax        
+;* V40 tmp36        [V40,T80] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
 ;* V41 tmp37        [V41    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
 ;* V42 tmp38        [V42    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
-;  V43 tmp39        [V43,T18] (  2,  2   )   byref  ->  rsi         single-def "Inlining Arg"
-;  V44 tmp40        [V44,T29] (  2,  2   )     int  ->  rdx         "Inlining Arg"
+;  V43 tmp39        [V43,T22] (  2,  2   )   byref  ->  rcx         single-def "Inlining Arg"
+;  V44 tmp40        [V44,T33] (  2,  2   )     int  ->  rdx         "Inlining Arg"
 ;* V45 tmp41        [V45    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
 ;* V46 tmp42        [V46    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
-;  V47 tmp43        [V47,T19] (  2,  2   )   byref  ->  rcx         single-def "Inlining Arg"
-;  V48 tmp44        [V48,T30] (  2,  2   )     int  ->   r8         "Inlining Arg"
+;  V47 tmp43        [V47,T23] (  2,  2   )   byref  ->  r15         single-def "Inlining Arg"
+;  V48 tmp44        [V48,T34] (  2,  2   )     int  ->  r12         "Inlining Arg"
 ;* V49 tmp45        [V49    ] (  0,  0   )  struct (16) zero-ref    multireg-arg "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
 ;* V50 tmp46        [V50    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
 ;* V51 tmp47        [V51    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
-;  V52 tmp48        [V52,T20] (  2,  2   )   byref  ->   r9         single-def "Inlining Arg"
-;  V53 tmp49        [V53,T31] (  2,  2   )     int  ->  rax         "Inlining Arg"
+;  V52 tmp48        [V52,T24] (  2,  2   )   byref  ->  rdi         single-def "Inlining Arg"
+;  V53 tmp49        [V53,T35] (  2,  2   )     int  ->  rsi         "Inlining Arg"
 ;* V54 tmp50        [V54    ] (  0,  0   )  struct (16) zero-ref    multireg-arg "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
 ;* V55 tmp51        [V55    ] (  0,  0   )  struct (16) zero-ref    multireg-arg "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
-;  V56 tmp52        [V56,T21] (  2,  2   )     ref  ->  rdi         class-hnd exact single-def "Inlining Arg" <System.Globalization.CompareInfo>
+;  V56 tmp52        [V56,T25] (  2,  2   )     ref  ->  rax         class-hnd exact single-def "Inlining Arg" <System.Globalization.CompareInfo>
 ;* V57 tmp53        [V57    ] (  0,  0   )  struct (16) zero-ref    <System.ReadOnlySpan`1[ushort]>
 ;* V58 tmp54        [V58    ] (  0,  0   )  struct (16) zero-ref    <System.ReadOnlySpan`1[ushort]>
 ;* V59 tmp55        [V59    ] (  0,  0   )  struct (16) zero-ref    <System.ReadOnlySpan`1[ushort]>
-;  V60 tmp56        [V60,T48] (  2,  1   )     ref  ->  rdi        
-;  V61 tmp57        [V61,T22] (  2,  2   )     ref  ->  rax         class-hnd exact single-def "dup spill" <System.String>
-;  V62 tmp58        [V62,T09] (  5,  2.50)     ref  ->  rax        
-;* V63 tmp59        [V63,T79] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
+;  V60 tmp56        [V60,T14] (  4,  2   )     ref  ->  rax        
+;  V61 tmp57        [V61,T26] (  2,  2   )     ref  ->  rax         class-hnd exact single-def "dup spill" <System.String>
+;  V62 tmp58        [V62,T11] (  5,  2.50)     ref  ->  rax        
+;* V63 tmp59        [V63,T81] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
 ;* V64 tmp60        [V64    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
 ;* V65 tmp61        [V65    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
-;  V66 tmp62        [V66,T23] (  2,  2   )   byref  ->  rsi         single-def "Inlining Arg"
-;  V67 tmp63        [V67,T32] (  2,  2   )     int  ->  rdx         "Inlining Arg"
+;  V66 tmp62        [V66,T27] (  2,  2   )   byref  ->  r13         single-def "Inlining Arg"
+;  V67 tmp63        [V67,T36] (  2,  2   )     int  ->  rcx         "Inlining Arg"
 ;* V68 tmp64        [V68    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
 ;* V69 tmp65        [V69    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
-;  V70 tmp66        [V70,T24] (  2,  2   )   byref  ->  rcx         single-def "Inlining Arg"
-;  V71 tmp67        [V71,T33] (  2,  2   )     int  ->   r8         "Inlining Arg"
+;  V70 tmp66        [V70,T28] (  2,  2   )   byref  ->  r15         single-def "Inlining Arg"
+;  V71 tmp67        [V71,T37] (  2,  2   )     int  ->  r12         "Inlining Arg"
 ;* V72 tmp68        [V72    ] (  0,  0   )  struct (16) zero-ref    multireg-arg "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
 ;* V73 tmp69        [V73    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
 ;* V74 tmp70        [V74    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
-;  V75 tmp71        [V75,T25] (  2,  2   )   byref  ->   r9         single-def "Inlining Arg"
-;  V76 tmp72        [V76,T34] (  2,  2   )     int  ->  rax         "Inlining Arg"
-;  V77 tmp73        [V77,T35] (  3,  1.50)   byref  ->  [rbp-0x38]  "field V08._reference (fldOffset=0x0)" P-INDEP
-;  V78 tmp74        [V78,T41] (  3,  1.50)     int  ->  [rbp-0x2C]  "field V08._length (fldOffset=0x8)" P-INDEP
-;  V79 tmp75        [V79,T49] (  2,  1   )   byref  ->  r15         "field V09._reference (fldOffset=0x0)" P-INDEP
-;  V80 tmp76        [V80,T61] (  2,  1   )     int  ->  r12         "field V09._length (fldOffset=0x8)" P-INDEP
+;  V75 tmp71        [V75,T29] (  2,  2   )   byref  ->  rdx         single-def "Inlining Arg"
+;  V76 tmp72        [V76,T38] (  2,  2   )     int  ->  rdi         "Inlining Arg"
+;  V77 tmp73        [V77,T39] (  3,  1.50)   byref  ->  [rbp-0x48]  "field V08._reference (fldOffset=0x0)" P-INDEP
+;  V78 tmp74        [V78,T45] (  3,  1.50)     int  ->  [rbp-0x2C]  "field V08._length (fldOffset=0x8)" P-INDEP
+;  V79 tmp75        [V79,T51] (  2,  1   )   byref  ->  r15         "field V09._reference (fldOffset=0x0)" P-INDEP
+;  V80 tmp76        [V80,T63] (  2,  1   )     int  ->  r12         "field V09._length (fldOffset=0x8)" P-INDEP
 ;* V81 tmp77        [V81    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V10._reference (fldOffset=0x0)" P-INDEP
 ;* V82 tmp78        [V82    ] (  0,  0   )     int  ->  zero-ref    "field V10._length (fldOffset=0x8)" P-INDEP
 ;* V83 tmp79        [V83    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V11._reference (fldOffset=0x0)" P-INDEP
 ;* V84 tmp80        [V84    ] (  0,  0   )     int  ->  zero-ref    "field V11._length (fldOffset=0x8)" P-INDEP
 ;* V85 tmp81        [V85    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V12._reference (fldOffset=0x0)" P-INDEP
 ;* V86 tmp82        [V86    ] (  0,  0   )     int  ->  zero-ref    "field V12._length (fldOffset=0x8)" P-INDEP
-;  V87 tmp83        [V87,T50] (  2,  1   )   byref  ->  rcx         single-def "field V18._reference (fldOffset=0x0)" P-INDEP
-;  V88 tmp84        [V88,T62] (  2,  1   )     int  ->  rdx         "field V18._length (fldOffset=0x8)" P-INDEP
+;  V87 tmp83        [V87,T52] (  2,  1   )   byref  ->  rcx         single-def "field V18._reference (fldOffset=0x0)" P-INDEP
+;  V88 tmp84        [V88,T64] (  2,  1   )     int  ->  rdx         "field V18._length (fldOffset=0x8)" P-INDEP
 ;* V89 tmp85        [V89    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V19._reference (fldOffset=0x0)" P-INDEP
 ;* V90 tmp86        [V90    ] (  0,  0   )     int  ->  zero-ref    "field V19._length (fldOffset=0x8)" P-INDEP
-;  V91 tmp87        [V91,T51] (  2,  1   )   byref  ->  r15         single-def "field V22._reference (fldOffset=0x0)" P-INDEP
-;  V92 tmp88        [V92,T63] (  2,  1   )     int  ->  r12         "field V22._length (fldOffset=0x8)" P-INDEP
+;  V91 tmp87        [V91,T53] (  2,  1   )   byref  ->  r15         single-def "field V22._reference (fldOffset=0x0)" P-INDEP
+;  V92 tmp88        [V92,T65] (  2,  1   )     int  ->  r12         "field V22._length (fldOffset=0x8)" P-INDEP
 ;* V93 tmp89        [V93    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V23._reference (fldOffset=0x0)" P-INDEP
 ;* V94 tmp90        [V94    ] (  0,  0   )     int  ->  zero-ref    "field V23._length (fldOffset=0x8)" P-INDEP
-;  V95 tmp91        [V95,T36] (  3,  1.50)   byref  ->  r14         "field V26._reference (fldOffset=0x0)" P-INDEP
-;  V96 tmp92        [V96,T42] (  3,  1.50)     int  ->  [rbp-0x30]  "field V26._length (fldOffset=0x8)" P-INDEP
-;  V97 tmp93        [V97,T52] (  2,  1   )   byref  ->  r14         single-def "field V27._reference (fldOffset=0x0)" P-INDEP
-;  V98 tmp94        [V98,T64] (  2,  1   )     int  ->  rdi         "field V27._length (fldOffset=0x8)" P-INDEP
+;  V95 tmp91        [V95,T40] (  3,  1.50)   byref  ->  r14         "field V26._reference (fldOffset=0x0)" P-INDEP
+;  V96 tmp92        [V96,T46] (  3,  1.50)     int  ->  [rbp-0x30]  "field V26._length (fldOffset=0x8)" P-INDEP
+;  V97 tmp93        [V97,T54] (  2,  1   )   byref  ->  r14         single-def "field V27._reference (fldOffset=0x0)" P-INDEP
+;  V98 tmp94        [V98,T66] (  2,  1   )     int  ->  rdi         "field V27._length (fldOffset=0x8)" P-INDEP
 ;* V99 tmp95        [V99    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V28._reference (fldOffset=0x0)" P-INDEP
 ;* V100 tmp96       [V100    ] (  0,  0   )     int  ->  zero-ref    "field V28._length (fldOffset=0x8)" P-INDEP
-;  V101 tmp97       [V101,T37] (  3,  1.50)   byref  ->  rsi         "field V31._reference (fldOffset=0x0)" P-INDEP
-;  V102 tmp98       [V102,T43] (  3,  1.50)     int  ->  rdx         "field V31._length (fldOffset=0x8)" P-INDEP
-;  V103 tmp99       [V103,T53] (  2,  1   )   byref  ->  rcx         "field V32._reference (fldOffset=0x0)" P-INDEP
-;  V104 tmp100      [V104,T65] (  2,  1   )     int  ->   r8         "field V32._length (fldOffset=0x8)" P-INDEP
+;  V101 tmp97       [V101,T41] (  3,  1.50)   byref  ->  [rbp-0x50]  "field V31._reference (fldOffset=0x0)" P-INDEP
+;  V102 tmp98       [V102,T47] (  3,  1.50)     int  ->  [rbp-0x34]  "field V31._length (fldOffset=0x8)" P-INDEP
+;  V103 tmp99       [V103,T55] (  2,  1   )   byref  ->  r15         "field V32._reference (fldOffset=0x0)" P-INDEP
+;  V104 tmp100      [V104,T67] (  2,  1   )     int  ->  r12         "field V32._length (fldOffset=0x8)" P-INDEP
 ;* V105 tmp101      [V105    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V33._reference (fldOffset=0x0)" P-INDEP
 ;* V106 tmp102      [V106    ] (  0,  0   )     int  ->  zero-ref    "field V33._length (fldOffset=0x8)" P-INDEP
 ;* V107 tmp103      [V107    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V34._reference (fldOffset=0x0)" P-INDEP
 ;* V108 tmp104      [V108    ] (  0,  0   )     int  ->  zero-ref    "field V34._length (fldOffset=0x8)" P-INDEP
 ;* V109 tmp105      [V109    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V35._reference (fldOffset=0x0)" P-INDEP
 ;* V110 tmp106      [V110    ] (  0,  0   )     int  ->  zero-ref    "field V35._length (fldOffset=0x8)" P-INDEP
-;  V111 tmp107      [V111,T54] (  2,  1   )   byref  ->  rsi         single-def "field V41._reference (fldOffset=0x0)" P-INDEP
-;  V112 tmp108      [V112,T66] (  2,  1   )     int  ->  rdx         "field V41._length (fldOffset=0x8)" P-INDEP
+;  V111 tmp107      [V111,T56] (  2,  1   )   byref  ->  rcx         single-def "field V41._reference (fldOffset=0x0)" P-INDEP
+;  V112 tmp108      [V112,T68] (  2,  1   )     int  ->  rdx         "field V41._length (fldOffset=0x8)" P-INDEP
 ;* V113 tmp109      [V113    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V42._reference (fldOffset=0x0)" P-INDEP
 ;* V114 tmp110      [V114    ] (  0,  0   )     int  ->  zero-ref    "field V42._length (fldOffset=0x8)" P-INDEP
-;  V115 tmp111      [V115,T55] (  2,  1   )   byref  ->  rcx         single-def "field V45._reference (fldOffset=0x0)" P-INDEP
-;  V116 tmp112      [V116,T67] (  2,  1   )     int  ->   r8         "field V45._length (fldOffset=0x8)" P-INDEP
+;  V115 tmp111      [V115,T57] (  2,  1   )   byref  ->  r15         single-def "field V45._reference (fldOffset=0x0)" P-INDEP
+;  V116 tmp112      [V116,T69] (  2,  1   )     int  ->  r12         "field V45._length (fldOffset=0x8)" P-INDEP
 ;* V117 tmp113      [V117    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V46._reference (fldOffset=0x0)" P-INDEP
 ;* V118 tmp114      [V118    ] (  0,  0   )     int  ->  zero-ref    "field V46._length (fldOffset=0x8)" P-INDEP
-;  V119 tmp115      [V119,T38] (  3,  1.50)   byref  ->   r9         "field V49._reference (fldOffset=0x0)" P-INDEP
-;  V120 tmp116      [V120,T44] (  3,  1.50)     int  ->  rax         "field V49._length (fldOffset=0x8)" P-INDEP
-;  V121 tmp117      [V121,T56] (  2,  1   )   byref  ->   r9         single-def "field V50._reference (fldOffset=0x0)" P-INDEP
-;  V122 tmp118      [V122,T68] (  2,  1   )     int  ->  rax         "field V50._length (fldOffset=0x8)" P-INDEP
+;  V119 tmp115      [V119,T42] (  3,  1.50)   byref  ->  r14         "field V49._reference (fldOffset=0x0)" P-INDEP
+;  V120 tmp116      [V120,T48] (  3,  1.50)     int  ->  [rbp-0x38]  "field V49._length (fldOffset=0x8)" P-INDEP
+;  V121 tmp117      [V121,T58] (  2,  1   )   byref  ->  r14         single-def "field V50._reference (fldOffset=0x0)" P-INDEP
+;  V122 tmp118      [V122,T70] (  2,  1   )     int  ->  rdi         "field V50._length (fldOffset=0x8)" P-INDEP
 ;* V123 tmp119      [V123    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V51._reference (fldOffset=0x0)" P-INDEP
 ;* V124 tmp120      [V124    ] (  0,  0   )     int  ->  zero-ref    "field V51._length (fldOffset=0x8)" P-INDEP
-;  V125 tmp121      [V125,T39] (  3,  1.50)   byref  ->  rsi         "field V54._reference (fldOffset=0x0)" P-INDEP
-;  V126 tmp122      [V126,T45] (  3,  1.50)     int  ->  rdx         "field V54._length (fldOffset=0x8)" P-INDEP
-;  V127 tmp123      [V127,T57] (  2,  1   )   byref  ->  rcx         "field V55._reference (fldOffset=0x0)" P-INDEP
-;  V128 tmp124      [V128,T69] (  2,  1   )     int  ->   r8         "field V55._length (fldOffset=0x8)" P-INDEP
+;  V125 tmp121      [V125,T43] (  3,  1.50)   byref  ->  r13         "field V54._reference (fldOffset=0x0)" P-INDEP
+;  V126 tmp122      [V126,T49] (  3,  1.50)     int  ->  [rbp-0x3C]  "field V54._length (fldOffset=0x8)" P-INDEP
+;  V127 tmp123      [V127,T59] (  2,  1   )   byref  ->  r15         "field V55._reference (fldOffset=0x0)" P-INDEP
+;  V128 tmp124      [V128,T71] (  2,  1   )     int  ->  r12         "field V55._length (fldOffset=0x8)" P-INDEP
 ;* V129 tmp125      [V129    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V57._reference (fldOffset=0x0)" P-INDEP
 ;* V130 tmp126      [V130    ] (  0,  0   )     int  ->  zero-ref    "field V57._length (fldOffset=0x8)" P-INDEP
 ;* V131 tmp127      [V131    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V58._reference (fldOffset=0x0)" P-INDEP
 ;* V132 tmp128      [V132    ] (  0,  0   )     int  ->  zero-ref    "field V58._length (fldOffset=0x8)" P-INDEP
 ;* V133 tmp129      [V133    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V59._reference (fldOffset=0x0)" P-INDEP
 ;* V134 tmp130      [V134    ] (  0,  0   )     int  ->  zero-ref    "field V59._length (fldOffset=0x8)" P-INDEP
-;  V135 tmp131      [V135,T58] (  2,  1   )   byref  ->  rsi         single-def "field V64._reference (fldOffset=0x0)" P-INDEP
-;  V136 tmp132      [V136,T70] (  2,  1   )     int  ->  rdx         "field V64._length (fldOffset=0x8)" P-INDEP
+;  V135 tmp131      [V135,T60] (  2,  1   )   byref  ->  r13         single-def "field V64._reference (fldOffset=0x0)" P-INDEP
+;  V136 tmp132      [V136,T72] (  2,  1   )     int  ->  rcx         "field V64._length (fldOffset=0x8)" P-INDEP
 ;* V137 tmp133      [V137    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V65._reference (fldOffset=0x0)" P-INDEP
 ;* V138 tmp134      [V138    ] (  0,  0   )     int  ->  zero-ref    "field V65._length (fldOffset=0x8)" P-INDEP
-;  V139 tmp135      [V139,T59] (  2,  1   )   byref  ->  rcx         single-def "field V68._reference (fldOffset=0x0)" P-INDEP
-;  V140 tmp136      [V140,T71] (  2,  1   )     int  ->   r8         "field V68._length (fldOffset=0x8)" P-INDEP
+;  V139 tmp135      [V139,T61] (  2,  1   )   byref  ->  r15         single-def "field V68._reference (fldOffset=0x0)" P-INDEP
+;  V140 tmp136      [V140,T73] (  2,  1   )     int  ->  r12         "field V68._length (fldOffset=0x8)" P-INDEP
 ;* V141 tmp137      [V141    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V69._reference (fldOffset=0x0)" P-INDEP
 ;* V142 tmp138      [V142    ] (  0,  0   )     int  ->  zero-ref    "field V69._length (fldOffset=0x8)" P-INDEP
-;  V143 tmp139      [V143,T40] (  3,  1.50)   byref  ->   r9         "field V72._reference (fldOffset=0x0)" P-INDEP
-;  V144 tmp140      [V144,T46] (  3,  1.50)     int  ->  rax         "field V72._length (fldOffset=0x8)" P-INDEP
-;  V145 tmp141      [V145,T60] (  2,  1   )   byref  ->   r9         single-def "field V73._reference (fldOffset=0x0)" P-INDEP
-;  V146 tmp142      [V146,T72] (  2,  1   )     int  ->  rax         "field V73._length (fldOffset=0x8)" P-INDEP
+;  V143 tmp139      [V143,T44] (  3,  1.50)   byref  ->  r14         "field V72._reference (fldOffset=0x0)" P-INDEP
+;  V144 tmp140      [V144,T50] (  3,  1.50)     int  ->  [rbp-0x40]  "field V72._length (fldOffset=0x8)" P-INDEP
+;  V145 tmp141      [V145,T62] (  2,  1   )   byref  ->  r14         single-def "field V73._reference (fldOffset=0x0)" P-INDEP
+;  V146 tmp142      [V146,T74] (  2,  1   )     int  ->  rdx         "field V73._length (fldOffset=0x8)" P-INDEP
 ;* V147 tmp143      [V147    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V74._reference (fldOffset=0x0)" P-INDEP
 ;* V148 tmp144      [V148    ] (  0,  0   )     int  ->  zero-ref    "field V74._length (fldOffset=0x8)" P-INDEP
-;  V149 tmp145      [V149,T74] (  2,  0   )     ref  ->  r15         single-def "argument with side effect"
-;  V150 tmp146      [V150,T75] (  2,  0   )     ref  ->  rdx         single-def "argument with side effect"
-;* V151 tmp147      [V151    ] (  0,  0   )     ref  ->  zero-ref    single-def "argument with side effect"
-;  V152 tmp148      [V152,T05] (  3,  3   )     ref  ->  rax         single-def "argument with side effect"
-;  V153 tmp149      [V153,T76] (  2,  0   )     ref  ->  rsi         single-def "argument with side effect"
-;* V154 tmp150      [V154    ] (  0,  0   )     ref  ->  zero-ref    single-def "argument with side effect"
-;  V155 tmp151      [V155,T06] (  3,  3   )     ref  ->  rax         single-def "argument with side effect"
+;  V149 tmp145      [V149,T76] (  2,  0   )     ref  ->  r15         single-def "argument with side effect"
+;  V150 tmp146      [V150,T77] (  2,  0   )     ref  ->  rdx         single-def "argument with side effect"
+;  V151 tmp147      [V151,T05] (  3,  3   )     ref  ->  rax         single-def "argument with side effect"
+;  V152 tmp148      [V152,T06] (  3,  3   )     ref  ->  rax         single-def "argument with side effect"
+;  V153 tmp149      [V153,T78] (  2,  0   )     ref  ->  rsi         single-def "argument with side effect"
+;  V154 tmp150      [V154,T07] (  3,  3   )     ref  ->  rax         single-def "argument with side effect"
+;  V155 tmp151      [V155,T08] (  3,  3   )     ref  ->  rax         single-def "argument with side effect"
 ;  V156 cse0        [V156,T04] (  9,  4.50)     int  ->  r12         multi-def "CSE - aggressive"
 ;
-; Lcl frame size = 40
+; Lcl frame size = 56
 
 G_M5144_IG01:
        push     rbp
        push     r15
        push     r14
        push     r13
        push     r12
        push     rbx
-       sub      rsp, 40
-       lea      rbp, [rsp+0x50]
+       sub      rsp, 56
+       lea      rbp, [rsp+0x60]
        mov      rbx, rdi
        mov      r15, rsi
        mov      r14, rdx
        mov      r13d, ecx
 						;; size=31 bbWeight=1 PerfScore 7.75
 G_M5144_IG02:
        cmp      r13d, 5
-       ja       G_M5144_IG24
+       ja       G_M5144_IG26
        mov      eax, r13d
        lea      rcx, [reloc @RWD00]
        mov      ecx, dword ptr [rcx+4*rax]
        lea      rdx, G_M5144_IG02
        add      rcx, rdx
        jmp      rcx
 						;; size=35 bbWeight=1 PerfScore 7.25
 G_M5144_IG03:
        mov      rax, 0xD1FFAB1E      ; code for System.Globalization.CultureInfo:get_CurrentCulture():System.Globalization.CultureInfo
        call     [rax]System.Globalization.CultureInfo:get_CurrentCulture():System.Globalization.CultureInfo
        mov      rdi, rax
        mov      rax, qword ptr [rax]
        mov      rax, qword ptr [rax+0x48]
        call     [rax+0x30]System.Globalization.CultureInfo:get_CompareInfo():System.Globalization.CompareInfo:this
        test     r15, r15
-       je       G_M5144_IG25
+       je       G_M5144_IG27
        mov      r12d, dword ptr [r15+0x08]
        test     r12d, r12d
-       je       G_M5144_IG25
+       je       G_M5144_IG27
        test     rbx, rbx
        jne      SHORT G_M5144_IG04
        xor      rcx, rcx
        xor      edx, edx
        jmp      SHORT G_M5144_IG05
 						;; size=58 bbWeight=0.50 PerfScore 9.38
 G_M5144_IG04:
        lea      rcx, bword ptr [rbx+0x0C]
        mov      edx, dword ptr [rbx+0x08]
-       mov      bword ptr [rbp-0x38], rcx
+       mov      bword ptr [rbp-0x48], rcx
        mov      dword ptr [rbp-0x2C], edx
-       mov      rcx, bword ptr [rbp-0x38]
+       mov      rcx, bword ptr [rbp-0x48]
        mov      edx, dword ptr [rbp-0x2C]
 						;; size=21 bbWeight=0.50 PerfScore 3.25
 G_M5144_IG05:
        add      r15, 12
        test     r14, r14
        jne      SHORT G_M5144_IG06
        xor      r14, r14
        xor      edi, edi
        jmp      SHORT G_M5144_IG07
 						;; size=16 bbWeight=0.50 PerfScore 2.00
 G_M5144_IG06:
        lea      rdi, bword ptr [r14+0x0C]
        mov      esi, dword ptr [r14+0x08]
        mov      r14, rdi
        mov      edi, esi
        mov      dword ptr [rbp-0x30], edi
        mov      edi, dword ptr [rbp-0x30]
 						;; size=19 bbWeight=0.50 PerfScore 2.50
 G_M5144_IG07:
        test     rax, rax
        mov      dword ptr [rbp-0x30], edi
        jne      SHORT G_M5144_IG08
-       mov      bword ptr [rbp-0x38], rcx
+       mov      bword ptr [rbp-0x48], rcx
        mov      dword ptr [rbp-0x2C], edx
        mov      rax, 0xD1FFAB1E      ; code for System.Globalization.CultureInfo:get_CurrentCulture():System.Globalization.CultureInfo
        call     [rax]System.Globalization.CultureInfo:get_CurrentCulture():System.Globalization.CultureInfo
        mov      rdi, rax
        mov      rax, qword ptr [rax]
        mov      rax, qword ptr [rax+0x48]
        call     [rax+0x30]System.Globalization.CultureInfo:get_CompareInfo():System.Globalization.CompareInfo:this
-       mov      rcx, bword ptr [rbp-0x38]
+       mov      rcx, bword ptr [rbp-0x48]
        mov      edx, dword ptr [rbp-0x2C]
 						;; size=47 bbWeight=0.50 PerfScore 8.38
 G_M5144_IG08:
        mov      gword ptr [rsp], rax
        and      r13d, 1
        mov      dword ptr [rsp+0x08], r13d
        mov      rdi, rcx
        mov      esi, edx
        mov      rdx, r15
        mov      ecx, r12d
        mov      r8, r14
        mov      r9d, dword ptr [rbp-0x30]
        mov      rax, 0xD1FFAB1E      ; code for System.String:ReplaceCore(System.ReadOnlySpan`1[ushort],System.ReadOnlySpan`1[ushort],System.ReadOnlySpan`1[ushort],System.Globalization.CompareInfo,int):System.String
        call     [rax]System.String:ReplaceCore(System.ReadOnlySpan`1[ushort],System.ReadOnlySpan`1[ushort],System.ReadOnlySpan`1[ushort],System.Globalization.CompareInfo,int):System.String
        test     rax, rax
        cmove    rax, rbx
 						;; size=50 bbWeight=0.50 PerfScore 4.12
 G_M5144_IG09:
-       add      rsp, 40
+       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_M5144_IG10:
-       mov      rdi, 0xD1FFAB1E      ; const ptr
-       mov      rdi, gword ptr [rdi]
+       mov      rax, 0xD1FFAB1E      ; const ptr
+       mov      rax, gword ptr [rax]
        test     r15, r15
-       je       G_M5144_IG25
+       je       G_M5144_IG27
        mov      r12d, dword ptr [r15+0x08]
        test     r12d, r12d
-       je       G_M5144_IG25
+       je       G_M5144_IG27
        test     rbx, rbx
        jne      SHORT G_M5144_IG11
-       xor      rsi, rsi
+       xor      rcx, rcx
        xor      edx, edx
        jmp      SHORT G_M5144_IG12
 						;; size=46 bbWeight=0.50 PerfScore 5.25
 G_M5144_IG11:
-       lea      rsi, bword ptr [rbx+0x0C]
+       lea      rcx, bword ptr [rbx+0x0C]
        mov      edx, dword ptr [rbx+0x08]
-						;; size=7 bbWeight=0.50 PerfScore 1.25
+       mov      bword ptr [rbp-0x50], rcx
+       mov      dword ptr [rbp-0x34], edx
+       mov      rcx, bword ptr [rbp-0x50]
+       mov      edx, dword ptr [rbp-0x34]
+						;; size=21 bbWeight=0.50 PerfScore 3.25
 G_M5144_IG12:
-       lea      rcx, bword ptr [r15+0x0C]
-       mov      r8d, r12d
+       add      r15, 12
        test     r14, r14
        jne      SHORT G_M5144_IG13
-       xor      r9, r9
-       xor      eax, eax
+       xor      r14, r14
+       xor      edi, edi
        jmp      SHORT G_M5144_IG14
-						;; size=19 bbWeight=0.50 PerfScore 2.25
+						;; size=16 bbWeight=0.50 PerfScore 2.00
 G_M5144_IG13:
-       lea      r9, bword ptr [r14+0x0C]
-       mov      eax, dword ptr [r14+0x08]
-						;; size=8 bbWeight=0.50 PerfScore 1.25
+       lea      rdi, bword ptr [r14+0x0C]
+       mov      esi, dword ptr [r14+0x08]
+       mov      r14, rdi
+       mov      edi, esi
+       mov      dword ptr [rbp-0x38], edi
+       mov      edi, dword ptr [rbp-0x38]
+						;; size=19 bbWeight=0.50 PerfScore 2.50
 G_M5144_IG14:
-       mov      gword ptr [rsp], rdi
-       mov      edi, r13d
-       and      edi, 1
-       mov      dword ptr [rsp+0x08], edi
-       mov      rdi, rsi
+       test     rax, rax
+       mov      dword ptr [rbp-0x38], edi
+       jne      SHORT G_M5144_IG15
+       mov      bword ptr [rbp-0x50], rcx
+       mov      dword ptr [rbp-0x34], edx
+       mov      rax, 0xD1FFAB1E      ; code for System.Globalization.CultureInfo:get_CurrentCulture():System.Globalization.CultureInfo
+       call     [rax]System.Globalization.CultureInfo:get_CurrentCulture():System.Globalization.CultureInfo
+       mov      rdi, rax
+       mov      rax, qword ptr [rax]
+       mov      rax, qword ptr [rax+0x48]
+       call     [rax+0x30]System.Globalization.CultureInfo:get_CompareInfo():System.Globalization.CompareInfo:this
+       mov      rcx, bword ptr [rbp-0x50]
+       mov      edx, dword ptr [rbp-0x34]
+						;; size=47 bbWeight=0.50 PerfScore 8.38
+G_M5144_IG15:
+       mov      gword ptr [rsp], rax
+       mov      esi, r13d
+       and      esi, 1
+       mov      dword ptr [rsp+0x08], esi
+       mov      rdi, rcx
        mov      esi, edx
-       mov      rdx, rcx
-       mov      ecx, r8d
-       mov      r8, r9
-       mov      r9d, eax
+       mov      rdx, r15
+       mov      ecx, r12d
+       mov      r8, r14
+       mov      r9d, dword ptr [rbp-0x38]
        mov      rax, 0xD1FFAB1E      ; code for System.String:ReplaceCore(System.ReadOnlySpan`1[ushort],System.ReadOnlySpan`1[ushort],System.ReadOnlySpan`1[ushort],System.Globalization.CompareInfo,int):System.String
        call     [rax]System.String:ReplaceCore(System.ReadOnlySpan`1[ushort],System.ReadOnlySpan`1[ushort],System.ReadOnlySpan`1[ushort],System.Globalization.CompareInfo,int):System.String
        test     rax, rax
        cmove    rax, rbx
-						;; size=50 bbWeight=0.50 PerfScore 3.88
-G_M5144_IG15:
-       add      rsp, 40
+						;; size=51 bbWeight=0.50 PerfScore 4.25
+G_M5144_IG16:
+       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_M5144_IG16:
+G_M5144_IG17:
        mov      rdi, rbx
        mov      rsi, r15
        mov      rdx, r14
        mov      rax, 0xD1FFAB1E      ; code for System.String:Replace(System.String,System.String):System.String:this
        call     [rax]System.String:Replace(System.String,System.String):System.String:this
        nop      
 						;; size=22 bbWeight=0.50 PerfScore 2.12
-G_M5144_IG17:
-       add      rsp, 40
+G_M5144_IG18:
+       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_M5144_IG18:
-       mov      rdi, 0xD1FFAB1E      ; const ptr
-       mov      rdi, gword ptr [rdi]
+G_M5144_IG19:
+       mov      rax, 0xD1FFAB1E      ; const ptr
+       mov      rax, gword ptr [rax]
        test     r15, r15
-       je       G_M5144_IG25
+       je       G_M5144_IG27
        mov      r12d, dword ptr [r15+0x08]
        test     r12d, r12d
-       je       G_M5144_IG25
+       je       G_M5144_IG27
        test     rbx, rbx
-       jne      SHORT G_M5144_IG19
-       xor      rsi, rsi
-       xor      edx, edx
-       jmp      SHORT G_M5144_IG20
-						;; size=46 bbWeight=0.50 PerfScore 5.25
-G_M5144_IG19:
-       lea      rsi, bword ptr [rbx+0x0C]
-       mov      edx, dword ptr [rbx+0x08]
-						;; size=7 bbWeight=0.50 PerfScore 1.25
+       jne      SHORT G_M5144_IG20
+       xor      r13, r13
+       xor      ecx, ecx
+       mov      dword ptr [rbp-0x3C], ecx
+       mov      ecx, dword ptr [rbp-0x3C]
+       jmp      SHORT G_M5144_IG21
+						;; size=53 bbWeight=0.50 PerfScore 6.25
 G_M5144_IG20:
-       lea      rcx, bword ptr [r15+0x0C]
-       mov      r8d, r12d
-       test     r14, r14
-       jne      SHORT G_M5144_IG21
-       xor      r9, r9
-       xor      eax, eax
-       jmp      SHORT G_M5144_IG22
-						;; size=19 bbWeight=0.50 PerfScore 2.25
+       lea      r13, bword ptr [rbx+0x0C]
+       mov      ecx, dword ptr [rbx+0x08]
+						;; size=7 bbWeight=0.50 PerfScore 1.25
 G_M5144_IG21:
-       lea      r9, bword ptr [r14+0x0C]
-       mov      eax, dword ptr [r14+0x08]
-						;; size=8 bbWeight=0.50 PerfScore 1.25
+       add      r15, 12
+       test     r14, r14
+       jne      SHORT G_M5144_IG22
+       xor      r14, r14
+       xor      edx, edx
+       jmp      SHORT G_M5144_IG23
+						;; size=16 bbWeight=0.50 PerfScore 2.00
 G_M5144_IG22:
-       mov      gword ptr [rsp], rdi
+       lea      rdx, bword ptr [r14+0x0C]
+       mov      edi, dword ptr [r14+0x08]
+       mov      r14, rdx
+       mov      edx, edi
+       mov      dword ptr [rbp-0x40], edx
+       mov      edx, dword ptr [rbp-0x40]
+						;; size=19 bbWeight=0.50 PerfScore 2.50
+G_M5144_IG23:
+       test     rax, rax
+       mov      dword ptr [rbp-0x40], edx
+       jne      SHORT G_M5144_IG24
+       mov      dword ptr [rbp-0x3C], ecx
+       mov      rax, 0xD1FFAB1E      ; code for System.Globalization.CultureInfo:get_CurrentCulture():System.Globalization.CultureInfo
+       call     [rax]System.Globalization.CultureInfo:get_CurrentCulture():System.Globalization.CultureInfo
+       mov      rdi, rax
+       mov      rax, qword ptr [rax]
+       mov      rax, qword ptr [rax+0x48]
+       call     [rax+0x30]System.Globalization.CultureInfo:get_CompareInfo():System.Globalization.CompareInfo:this
+       mov      ecx, dword ptr [rbp-0x3C]
+						;; size=39 bbWeight=0.50 PerfScore 7.38
+G_M5144_IG24:
+       mov      gword ptr [rsp], rax
        mov      dword ptr [rsp+0x08], 0xD1FFAB1E
-       mov      rdi, rsi
-       mov      esi, edx
-       mov      rdx, rcx
-       mov      ecx, r8d
-       mov      r8, r9
-       mov      r9d, eax
+       mov      rdi, r13
+       mov      esi, ecx
+       mov      rdx, r15
+       mov      ecx, r12d
+       mov      r8, r14
+       mov      r9d, dword ptr [rbp-0x40]
        mov      rax, 0xD1FFAB1E      ; code for System.String:ReplaceCore(System.ReadOnlySpan`1[ushort],System.ReadOnlySpan`1[ushort],System.ReadOnlySpan`1[ushort],System.Globalization.CompareInfo,int):System.String
        call     [rax]System.String:ReplaceCore(System.ReadOnlySpan`1[ushort],System.ReadOnlySpan`1[ushort],System.ReadOnlySpan`1[ushort],System.Globalization.CompareInfo,int):System.String
        test     rax, rax
        cmove    rax, rbx
-						;; size=48 bbWeight=0.50 PerfScore 3.62
-G_M5144_IG23:
-       add      rsp, 40
+						;; size=49 bbWeight=0.50 PerfScore 4.00
+G_M5144_IG25:
+       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_M5144_IG24:
+G_M5144_IG26:
        mov      rdi, 0xD1FFAB1E      ; System.ArgumentException
        call     CORINFO_HELP_NEWSFAST
        mov      rbx, rax
        mov      rax, 0xD1FFAB1E      ; code for System.SR:get_NotSupported_StringComparison():System.String
        call     [rax]System.SR:get_NotSupported_StringComparison():System.String
        mov      r15, rax
        mov      edi, 0xD03
        mov      rsi, 0xD1FFAB1E
        call     CORINFO_HELP_STRCNS
        mov      rdx, rax
        mov      rsi, r15
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.ArgumentException:.ctor(System.String,System.String):this
        call     [rax]System.ArgumentException:.ctor(System.String,System.String):this
        mov      rdi, rbx
        call     CORINFO_HELP_THROW
 						;; size=82 bbWeight=0 PerfScore 0.00
-G_M5144_IG25:
+G_M5144_IG27:
        mov      edi, 0xDA5
        mov      rsi, 0xD1FFAB1E
        call     CORINFO_HELP_STRCNS
        mov      rsi, rax
        mov      rdi, r15
        mov      rax, 0xD1FFAB1E      ; code for System.ArgumentException:ThrowNullOrEmptyException(System.String,System.String)
        call     [rax]System.ArgumentException:ThrowNullOrEmptyException(System.String,System.String)
        int3     
 						;; size=39 bbWeight=0 PerfScore 0.00
 RWD00  	dd	G_M5144_IG03 - G_M5144_IG02
        	dd	G_M5144_IG03 - G_M5144_IG02
        	dd	G_M5144_IG10 - G_M5144_IG02
        	dd	G_M5144_IG10 - G_M5144_IG02
-       	dd	G_M5144_IG16 - G_M5144_IG02
-       	dd	G_M5144_IG18 - G_M5144_IG02
+       	dd	G_M5144_IG17 - G_M5144_IG02
+       	dd	G_M5144_IG19 - G_M5144_IG02
 
 
-; Total bytes of code 738, prolog size 19, PerfScore 156.55, instruction count 214, allocated bytes for code 738 (MethodHash=aa3febe7) for method System.String:Replace(System.String,System.String,int):System.String:this (FullOpts)
+; Total bytes of code 863, prolog size 19, PerfScore 190.55, instruction count 250, allocated bytes for code 863 (MethodHash=aa3febe7) for method System.String:Replace(System.String,System.String,int):System.String:this (FullOpts)
123 (4.27 % of base) - System.TimeZoneInfo+StringSerializer:GetSerializedString(System.TimeZoneInfo):System.String
 ; Assembly listing for method System.TimeZoneInfo+StringSerializer:GetSerializedString(System.TimeZoneInfo):System.String (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; 52 single block inlinees; 53 inlinees without PGO data
 ; Final local variable assignments
 ;
 ;  V00 arg0         [V00,T32] (  8,  8   )     ref  ->  rbx         class-hnd single-def <System.TimeZoneInfo>
 ;  V01 loc0         [V01    ] (164,338   )  struct (32) [rbp-0x48]  do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Text.ValueStringBuilder>
 ;* V02 loc1         [V02    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact <System.TimeZoneInfo+AdjustmentRule[]>
 ;* V03 loc2         [V03    ] (  0,  0   )  struct (16) zero-ref    <System.Span`1[ushort]>
 ;* V04 loc3         [V04    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op <System.TimeSpan>
 ;  V05 loc4         [V05,T39] (  4, 10   )     ref  ->  rbx         class-hnd exact single-def <System.TimeZoneInfo+AdjustmentRule[]>
-;  V06 loc5         [V06,T11] (  5, 17   )     int  ->  r15        
+;  V06 loc5         [V06,T12] (  5, 17   )     int  ->  r15        
 ;  V07 loc6         [V07,T00] (  9, 34   )     ref  ->  r13         class-hnd exact <System.TimeZoneInfo+AdjustmentRule>
 ;  V08 OutArgs      [V08    ] (  1,  1   )  struct (32) [rsp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
 ;* V09 tmp1         [V09    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.Span`1[ushort]>
 ;* V10 tmp2         [V10    ] (  0,  0   )  double  ->  zero-ref    "impAppendStmt"
 ;* V11 tmp3         [V11    ] (  0,  0   )  struct ( 8) zero-ref    "impAppendStmt" <System.DateTime>
 ;* V12 tmp4         [V12    ] (  0,  0   )  struct ( 8) zero-ref    "impAppendStmt" <System.DateTime>
 ;* V13 tmp5         [V13    ] (  0,  0   )  double  ->  zero-ref    "impAppendStmt"
 ;* V14 tmp6         [V14    ] (  0,  0   )  struct (24) zero-ref    do-not-enreg[S] "spilled call-like call argument" <System.TimeZoneInfo+TransitionTime>
 ;* V15 tmp7         [V15    ] (  0,  0   )  struct (24) zero-ref    do-not-enreg[S] "spilled call-like call argument" <System.TimeZoneInfo+TransitionTime>
 ;* V16 tmp8         [V16    ] (  0,  0   )  struct ( 8) zero-ref    "folding static readonly field struct" <System.TimeSpan>
 ;* V17 tmp9         [V17    ] (  0,  0   )  struct ( 8) zero-ref    "spilled call-like call argument" <System.TimeSpan>
 ;* V18 tmp10        [V18    ] (  0,  0   )  double  ->  zero-ref    "impAppendStmt"
 ;  V19 tmp11        [V19,T100] (  2,  4   )    long  ->  rdi         "Inlining Arg"
 ;  V20 tmp12        [V20,T113] (  4,  3   )     int  ->  rdi         "Inline stloc first use temp"
 ;* V21 tmp13        [V21    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline stloc first use temp" <System.Span`1[ushort]>
 ;  V22 tmp14        [V22    ] (  3,  5   )  double  ->  [rbp-0x50]  do-not-enreg[X] addr-exposed ld-addr-op "Inlining Arg"
 ;* V23 tmp15        [V23    ] (  0,  0   )  double  ->  zero-ref    ld-addr-op "Inline ldloca(s) first use temp"
-;  V24 tmp16        [V24,T120] (  2,  2   )   byref  ->  rdi         single-def
+;  V24 tmp16        [V24,T121] (  2,  2   )   byref  ->  rdi         single-def
 ;  V25 tmp17        [V25    ] (  2,  1.50)     int  ->  [rbp-0x58]  do-not-enreg[X] addr-exposed ld-addr-op "Inline ldloca(s) first use temp"
 ;* V26 tmp18        [V26    ] (  0,  0   )  struct (16) zero-ref    "impAppendStmt" <System.Span`1[ushort]>
-;  V27 tmp19        [V27,T86] (  3,  5   )     ref  ->  r15         class-hnd exact single-def "Inlining Arg" <System.Globalization.CultureInfo>
+;  V27 tmp19        [V27,T78] (  5,  7   )     ref  ->  r15         class-hnd exact single-def "Inlining Arg" <System.Globalization.CultureInfo>
 ;* V28 tmp20        [V28    ] (  0,  0   )  struct (16) zero-ref    multireg-arg "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
 ;  V29 tmp21        [V29,T41] (  4,  8   )     int  ->  rax         "Inlining Arg"
 ;* V30 tmp22        [V30    ] (  0,  0   )  struct (16) zero-ref    multireg-arg ld-addr-op "NewObj constructor temp" <System.Span`1[ushort]>
-;  V31 tmp23        [V31,T87] (  2,  4   )   byref  ->  r13         single-def "Inlining Arg"
+;  V31 tmp23        [V31,T90] (  2,  4   )   byref  ->  r13         single-def "Inlining Arg"
 ;  V32 tmp24        [V32,T101] (  2,  4   )     int  ->  r12         "Inlining Arg"
 ;* V33 tmp25        [V33    ] (  0,  0   )  struct (16) zero-ref    "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
 ;* V34 tmp26        [V34    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
 ;  V35 tmp27        [V35,T148] (  2,  4   )  double  ->  [rbp-0x60]  spill-single-def "impAppendStmt"
-;  V36 tmp28        [V36,T121] (  2,  2   )     ref  ->  rdx         class-hnd "Inline return value spill temp" <System.Globalization.NumberFormatInfo>
+;  V36 tmp28        [V36,T120] (  3,  2   )     ref  ->  rax         class-hnd "Inline return value spill temp" <System.Globalization.NumberFormatInfo>
 ;  V37 tmp29        [V37,T149] (  2,  2   )  double  ->  [rbp-0x68]  spill-single-def "impAppendStmt"
-;  V38 tmp30        [V38,T141] (  2,  1   )     ref  ->  rsi         class-hnd "Inline return value spill temp" <System.Globalization.NumberFormatInfo>
-;  V39 tmp31        [V39,T85] (  5,  5   )     ref  ->  rax         class-hnd exact single-def "Inlining Arg" <System.String>
+;  V38 tmp30        [V38,T135] (  3,  1.50)     ref  ->  rax         class-hnd "Inline return value spill temp" <System.Globalization.NumberFormatInfo>
+;  V39 tmp31        [V39,T89] (  5,  5   )     ref  ->  rax         class-hnd exact single-def "Inlining Arg" <System.String>
 ;  V40 tmp32        [V40,T119] (  5,  2.50)     int  ->  rdi         "Inline stloc first use temp"
 ;  V41 tmp33        [V41,T114] (  4,  3   )     int  ->  rdi         "Inline stloc first use temp"
 ;* V42 tmp34        [V42    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline stloc first use temp" <System.Span`1[ushort]>
 ;  V43 tmp35        [V43,T115] (  4,  3   )     int  ->  rdi         "Inline stloc first use temp"
 ;* V44 tmp36        [V44    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline stloc first use temp" <System.Span`1[ushort]>
 ;  V45 tmp37        [V45,T116] (  4,  3   )     int  ->  rdi         "Inline stloc first use temp"
 ;* V46 tmp38        [V46    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline stloc first use temp" <System.Span`1[ushort]>
 ;  V47 tmp39        [V47,T117] (  4,  3   )     int  ->  rdi         "Inline stloc first use temp"
 ;* V48 tmp40        [V48    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline stloc first use temp" <System.Span`1[ushort]>
-;  V49 tmp41        [V49,T22] (  4, 12   )     int  ->  rdi         "Inline stloc first use temp"
+;  V49 tmp41        [V49,T23] (  4, 12   )     int  ->  rdi         "Inline stloc first use temp"
 ;* V50 tmp42        [V50    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline stloc first use temp" <System.Span`1[ushort]>
 ;  V51 tmp43        [V51    ] (  3, 20   )  struct ( 8) [rbp-0x70]  do-not-enreg[XS] addr-exposed ld-addr-op "Inlining Arg" <System.DateTime>
 ;* V52 tmp44        [V52    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.DateTime>
-;  V53 tmp45        [V53,T45] (  2,  8   )   byref  ->   r8        
+;  V53 tmp45        [V53,T46] (  2,  8   )   byref  ->   r8        
 ;  V54 tmp46        [V54    ] (  2,  6   )     int  ->  [rbp-0x78]  do-not-enreg[X] addr-exposed ld-addr-op "Inline ldloca(s) first use temp"
 ;* V55 tmp47        [V55    ] (  0,  0   )  struct (16) zero-ref    "impAppendStmt" <System.Span`1[ushort]>
-;  V56 tmp48        [V56,T08] (  3, 20   )     ref  ->  [rbp-0xF0]  class-hnd exact spill-single-def "Inlining Arg" <System.Globalization.DateTimeFormatInfo>
+;  V56 tmp48        [V56,T10] (  3, 20   )     ref  ->  [rbp-0xF0]  class-hnd exact spill-single-def "Inlining Arg" <System.Globalization.DateTimeFormatInfo>
 ;* V57 tmp49        [V57    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
 ;  V58 tmp50        [V58,T01] (  4, 32   )     int  ->   r9         "Inlining Arg"
 ;* V59 tmp51        [V59    ] (  0,  0   )  struct (16) zero-ref    multireg-arg ld-addr-op "NewObj constructor temp" <System.Span`1[ushort]>
-;  V60 tmp52        [V60,T13] (  2, 16   )   byref  ->  rsi         "Inlining Arg"
-;  V61 tmp53        [V61,T16] (  2, 16   )     int  ->  rdx         "Inlining Arg"
+;  V60 tmp52        [V60,T14] (  2, 16   )   byref  ->  rsi         "Inlining Arg"
+;  V61 tmp53        [V61,T17] (  2, 16   )     int  ->  rdx         "Inlining Arg"
 ;* V62 tmp54        [V62    ] (  0,  0   )  struct (16) zero-ref    "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
 ;* V63 tmp55        [V63    ] (  0,  0   )  struct (16) zero-ref    multireg-arg ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
 ;* V64 tmp56        [V64    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
 ;* V65 tmp57        [V65    ] (  0,  0   )  struct ( 8) zero-ref    "Inlining Arg" <System.DateTime>
 ;* V66 tmp58        [V66    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "NewObj constructor temp" <System.TimeSpan>
 ;* V67 tmp59        [V67    ] (  0,  0   )  struct ( 8) zero-ref    "Inlining Arg" <System.DateTime>
 ;* V68 tmp60        [V68    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "NewObj constructor temp" <System.TimeSpan>
-;  V69 tmp61        [V69,T04] (  5, 20   )     ref  ->  [rbp-0xF8]  class-hnd exact spill-single-def "Inlining Arg" <System.String>
+;  V69 tmp61        [V69,T05] (  5, 20   )     ref  ->  [rbp-0xF8]  class-hnd exact spill-single-def "Inlining Arg" <System.String>
 ;  V70 tmp62        [V70,T33] (  5, 10   )     int  ->  rdi         "Inline stloc first use temp"
 ;  V71 tmp63        [V71,T34] (  5, 10   )     int  ->  [rbp-0x7C]  spill-single-def "Inline stloc first use temp"
 ;* V72 tmp64        [V72    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.Span`1[ushort]>
 ;* V73 tmp65        [V73    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.Span`1[ushort]>
-;  V74 tmp66        [V74,T46] (  2,  8   )   byref  ->  rdi         "Inlining Arg"
+;  V74 tmp66        [V74,T47] (  2,  8   )   byref  ->  rdi         "Inlining Arg"
 ;  V75 tmp67        [V75,T60] (  2,  8   )     int  ->  rdx         "Inlining Arg"
 ;* V76 tmp68        [V76    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.Span`1[ushort]>
 ;* V77 tmp69        [V77    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
-;  V78 tmp70        [V78,T47] (  2,  8   )   byref  ->  rsi         "Inlining Arg"
+;  V78 tmp70        [V78,T48] (  2,  8   )   byref  ->  rsi         "Inlining Arg"
 ;  V79 tmp71        [V79,T61] (  2,  8   )    long  ->  rdx         "Inlining Arg"
 ;* V80 tmp72        [V80    ] (  0,  0   )    long  ->  zero-ref    "Inlining Arg"
-;  V81 tmp73        [V81,T23] (  4, 12   )     int  ->  rdi         "Inline stloc first use temp"
+;  V81 tmp73        [V81,T24] (  4, 12   )     int  ->  rdi         "Inline stloc first use temp"
 ;* V82 tmp74        [V82    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline stloc first use temp" <System.Span`1[ushort]>
 ;  V83 tmp75        [V83    ] (  3, 20   )  struct ( 8) [rbp-0x88]  do-not-enreg[XS] addr-exposed ld-addr-op "Inlining Arg" <System.DateTime>
 ;* V84 tmp76        [V84    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.DateTime>
-;  V85 tmp77        [V85,T48] (  2,  8   )   byref  ->   r8        
+;  V85 tmp77        [V85,T49] (  2,  8   )   byref  ->   r8        
 ;  V86 tmp78        [V86    ] (  2,  6   )     int  ->  [rbp-0x90]  do-not-enreg[X] addr-exposed ld-addr-op "Inline ldloca(s) first use temp"
 ;* V87 tmp79        [V87    ] (  0,  0   )  struct (16) zero-ref    "impAppendStmt" <System.Span`1[ushort]>
-;  V88 tmp80        [V88,T09] (  3, 20   )     ref  ->  r12         class-hnd exact "Inlining Arg" <System.Globalization.DateTimeFormatInfo>
+;  V88 tmp80        [V88,T11] (  3, 20   )     ref  ->  r12         class-hnd exact "Inlining Arg" <System.Globalization.DateTimeFormatInfo>
 ;* V89 tmp81        [V89    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
 ;  V90 tmp82        [V90,T02] (  4, 32   )     int  ->   r9         "Inlining Arg"
 ;* V91 tmp83        [V91    ] (  0,  0   )  struct (16) zero-ref    multireg-arg ld-addr-op "NewObj constructor temp" <System.Span`1[ushort]>
-;  V92 tmp84        [V92,T14] (  2, 16   )   byref  ->  rsi         "Inlining Arg"
-;  V93 tmp85        [V93,T17] (  2, 16   )     int  ->  rdx         "Inlining Arg"
+;  V92 tmp84        [V92,T15] (  2, 16   )   byref  ->  rsi         "Inlining Arg"
+;  V93 tmp85        [V93,T18] (  2, 16   )     int  ->  rdx         "Inlining Arg"
 ;* V94 tmp86        [V94    ] (  0,  0   )  struct (16) zero-ref    "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
 ;* V95 tmp87        [V95    ] (  0,  0   )  struct (16) zero-ref    multireg-arg ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
 ;* V96 tmp88        [V96    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
 ;* V97 tmp89        [V97    ] (  0,  0   )  struct ( 8) zero-ref    "Inlining Arg" <System.DateTime>
 ;* V98 tmp90        [V98    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "NewObj constructor temp" <System.TimeSpan>
 ;* V99 tmp91        [V99    ] (  0,  0   )  struct ( 8) zero-ref    "Inlining Arg" <System.DateTime>
 ;* V100 tmp92       [V100    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "NewObj constructor temp" <System.TimeSpan>
-;  V101 tmp93       [V101,T05] (  5, 20   )     ref  ->  r12         class-hnd exact "Inlining Arg" <System.String>
+;  V101 tmp93       [V101,T06] (  5, 20   )     ref  ->  r12         class-hnd exact "Inlining Arg" <System.String>
 ;  V102 tmp94       [V102,T35] (  5, 10   )     int  ->  rsi         "Inline stloc first use temp"
 ;  V103 tmp95       [V103,T36] (  5, 10   )     int  ->  [rbp-0x94]  spill-single-def "Inline stloc first use temp"
 ;* V104 tmp96       [V104    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.Span`1[ushort]>
 ;* V105 tmp97       [V105    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.Span`1[ushort]>
-;  V106 tmp98       [V106,T49] (  2,  8   )   byref  ->  rdi         "Inlining Arg"
+;  V106 tmp98       [V106,T50] (  2,  8   )   byref  ->  rdi         "Inlining Arg"
 ;  V107 tmp99       [V107,T62] (  2,  8   )     int  ->  rdx         "Inlining Arg"
 ;* V108 tmp100      [V108    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.Span`1[ushort]>
 ;* V109 tmp101      [V109    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
-;  V110 tmp102      [V110,T50] (  2,  8   )   byref  ->  rsi         "Inlining Arg"
+;  V110 tmp102      [V110,T51] (  2,  8   )   byref  ->  rsi         "Inlining Arg"
 ;  V111 tmp103      [V111,T63] (  2,  8   )    long  ->  rdx         "Inlining Arg"
 ;* V112 tmp104      [V112    ] (  0,  0   )    long  ->  zero-ref    "Inlining Arg"
-;  V113 tmp105      [V113,T24] (  4, 12   )     int  ->  rdi         "Inline stloc first use temp"
+;  V113 tmp105      [V113,T25] (  4, 12   )     int  ->  rdi         "Inline stloc first use temp"
 ;* V114 tmp106      [V114    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline stloc first use temp" <System.Span`1[ushort]>
 ;  V115 tmp107      [V115    ] (  3, 20   )  double  ->  [rbp-0xA0]  do-not-enreg[X] addr-exposed ld-addr-op "Inlining Arg"
 ;* V116 tmp108      [V116    ] (  0,  0   )  double  ->  zero-ref    ld-addr-op "Inline ldloca(s) first use temp"
-;  V117 tmp109      [V117,T51] (  2,  8   )   byref  ->  rdi        
+;  V117 tmp109      [V117,T52] (  2,  8   )   byref  ->  rdi        
 ;  V118 tmp110      [V118    ] (  2,  6   )     int  ->  [rbp-0xA8]  do-not-enreg[X] addr-exposed ld-addr-op "Inline ldloca(s) first use temp"
 ;* V119 tmp111      [V119    ] (  0,  0   )  struct (16) zero-ref    "impAppendStmt" <System.Span`1[ushort]>
-;  V120 tmp112      [V120,T10] (  3, 20   )     ref  ->  r12         class-hnd exact "Inlining Arg" <System.Globalization.CultureInfo>
+;  V120 tmp112      [V120,T04] (  5, 28   )     ref  ->  r12         class-hnd exact "Inlining Arg" <System.Globalization.CultureInfo>
 ;* V121 tmp113      [V121    ] (  0,  0   )  struct (16) zero-ref    multireg-arg "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
 ;  V122 tmp114      [V122,T03] (  4, 32   )     int  ->  rax         "Inlining Arg"
 ;* V123 tmp115      [V123    ] (  0,  0   )  struct (16) zero-ref    multireg-arg ld-addr-op "NewObj constructor temp" <System.Span`1[ushort]>
-;  V124 tmp116      [V124,T15] (  2, 16   )   byref  ->  rcx         "Inlining Arg"
-;  V125 tmp117      [V125,T18] (  2, 16   )     int  ->  rax         "Inlining Arg"
+;  V124 tmp116      [V124,T16] (  2, 16   )   byref  ->  rcx         "Inlining Arg"
+;  V125 tmp117      [V125,T19] (  2, 16   )     int  ->  rax         "Inlining Arg"
 ;* V126 tmp118      [V126    ] (  0,  0   )  struct (16) zero-ref    "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
 ;* V127 tmp119      [V127    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
 ;  V128 tmp120      [V128,T144] (  2, 16   )  double  ->  [rbp-0xB0]  spill-single-def "impAppendStmt"
-;  V129 tmp121      [V129,T52] (  2,  8   )     ref  ->  rdx         class-hnd "Inline return value spill temp" <System.Globalization.NumberFormatInfo>
+;  V129 tmp121      [V129,T45] (  3,  8   )     ref  ->  rax         class-hnd "Inline return value spill temp" <System.Globalization.NumberFormatInfo>
 ;  V130 tmp122      [V130,T145] (  2,  8   )  double  ->  [rbp-0xB8]  spill-single-def "impAppendStmt"
-;  V131 tmp123      [V131,T88] (  2,  4   )     ref  ->  rsi         class-hnd "Inline return value spill temp" <System.Globalization.NumberFormatInfo>
-;  V132 tmp124      [V132,T06] (  5, 20   )     ref  ->  rax         class-hnd exact "Inlining Arg" <System.String>
+;  V131 tmp123      [V131,T79] (  3,  6   )     ref  ->  rax         class-hnd "Inline return value spill temp" <System.Globalization.NumberFormatInfo>
+;  V132 tmp124      [V132,T07] (  5, 20   )     ref  ->  rax         class-hnd exact "Inlining Arg" <System.String>
 ;  V133 tmp125      [V133,T37] (  5, 10   )     int  ->  rdi         "Inline stloc first use temp"
-;  V134 tmp126      [V134,T25] (  4, 12   )     int  ->  rdi         "Inline stloc first use temp"
+;  V134 tmp126      [V134,T26] (  4, 12   )     int  ->  rdi         "Inline stloc first use temp"
 ;* V135 tmp127      [V135    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline stloc first use temp" <System.Span`1[ushort]>
-;  V136 tmp128      [V136,T26] (  4, 12   )     int  ->  rdi         "Inline stloc first use temp"
+;  V136 tmp128      [V136,T27] (  4, 12   )     int  ->  rdi         "Inline stloc first use temp"
 ;* V137 tmp129      [V137    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline stloc first use temp" <System.Span`1[ushort]>
-;  V138 tmp130      [V138,T27] (  4, 12   )     int  ->  rdi         "Inline stloc first use temp"
+;  V138 tmp130      [V138,T28] (  4, 12   )     int  ->  rdi         "Inline stloc first use temp"
 ;* V139 tmp131      [V139    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline stloc first use temp" <System.Span`1[ushort]>
 ;  V140 tmp132      [V140    ] (  3, 12   )  double  ->  [rbp-0xC0]  do-not-enreg[X] addr-exposed ld-addr-op "Inlining Arg"
 ;* V141 tmp133      [V141    ] (  0,  0   )  double  ->  zero-ref    ld-addr-op "Inline ldloca(s) first use temp"
-;  V142 tmp134      [V142,T89] (  2,  4   )   byref  ->  rdi        
+;  V142 tmp134      [V142,T91] (  2,  4   )   byref  ->  rdi        
 ;  V143 tmp135      [V143    ] (  2,  4   )     int  ->  [rbp-0xC8]  do-not-enreg[X] addr-exposed ld-addr-op "Inline ldloca(s) first use temp"
 ;* V144 tmp136      [V144    ] (  0,  0   )  struct (16) zero-ref    "impAppendStmt" <System.Span`1[ushort]>
-;  V145 tmp137      [V145,T29] (  3, 12   )     ref  ->  r12         class-hnd exact "Inlining Arg" <System.Globalization.CultureInfo>
+;  V145 tmp137      [V145,T08] (  5, 20   )     ref  ->  r12         class-hnd exact "Inlining Arg" <System.Globalization.CultureInfo>
 ;* V146 tmp138      [V146    ] (  0,  0   )  struct (16) zero-ref    multireg-arg "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
-;  V147 tmp139      [V147,T12] (  4, 16   )     int  ->  rax         "Inlining Arg"
+;  V147 tmp139      [V147,T13] (  4, 16   )     int  ->  rax         "Inlining Arg"
 ;* V148 tmp140      [V148    ] (  0,  0   )  struct (16) zero-ref    multireg-arg ld-addr-op "NewObj constructor temp" <System.Span`1[ushort]>
 ;  V149 tmp141      [V149,T53] (  2,  8   )   byref  ->  rcx         "Inlining Arg"
 ;  V150 tmp142      [V150,T64] (  2,  8   )     int  ->  rax         "Inlining Arg"
 ;* V151 tmp143      [V151    ] (  0,  0   )  struct (16) zero-ref    "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
 ;* V152 tmp144      [V152    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
 ;  V153 tmp145      [V153,T146] (  2,  8   )  double  ->  [rbp-0xD0]  spill-single-def "impAppendStmt"
-;  V154 tmp146      [V154,T90] (  2,  4   )     ref  ->  rdx         class-hnd "Inline return value spill temp" <System.Globalization.NumberFormatInfo>
+;  V154 tmp146      [V154,T80] (  3,  6   )     ref  ->  rax         class-hnd "Inline return value spill temp" <System.Globalization.NumberFormatInfo>
 ;  V155 tmp147      [V155,T147] (  2,  8   )  double  ->  [rbp-0xD8]  spill-single-def "impAppendStmt"
-;  V156 tmp148      [V156,T91] (  2,  4   )     ref  ->  rsi         class-hnd "Inline return value spill temp" <System.Globalization.NumberFormatInfo>
-;  V157 tmp149      [V157,T07] (  5, 20   )     ref  ->  rax         class-hnd exact "Inlining Arg" <System.String>
+;  V156 tmp148      [V156,T81] (  3,  6   )     ref  ->  rax         class-hnd "Inline return value spill temp" <System.Globalization.NumberFormatInfo>
+;  V157 tmp149      [V157,T09] (  5, 20   )     ref  ->  rax         class-hnd exact "Inlining Arg" <System.String>
 ;  V158 tmp150      [V158,T38] (  5, 10   )     int  ->  rdi         "Inline stloc first use temp"
 ;  V159 tmp151      [V159,T42] (  4,  8   )     int  ->  rdi         "Inline stloc first use temp"
 ;* V160 tmp152      [V160    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline stloc first use temp" <System.Span`1[ushort]>
 ;  V161 tmp153      [V161,T43] (  4,  8   )     int  ->  rdi         "Inline stloc first use temp"
 ;* V162 tmp154      [V162    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline stloc first use temp" <System.Span`1[ushort]>
 ;  V163 tmp155      [V163,T44] (  4,  8   )     int  ->  rdi         "Inline stloc first use temp"
 ;* V164 tmp156      [V164    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline stloc first use temp" <System.Span`1[ushort]>
-;  V165 tmp157      [V165,T28] (  4, 12   )     int  ->  rdi         "Inline stloc first use temp"
+;  V165 tmp157      [V165,T29] (  4, 12   )     int  ->  rdi         "Inline stloc first use temp"
 ;* V166 tmp158      [V166    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline stloc first use temp" <System.Span`1[ushort]>
 ;  V167 tmp159      [V167,T118] (  4,  3   )     int  ->  rdi         "Inline stloc first use temp"
 ;* V168 tmp160      [V168    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline stloc first use temp" <System.Span`1[ushort]>
 ;* V169 tmp161      [V169    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V03._reference (fldOffset=0x0)" P-INDEP
 ;* V170 tmp162      [V170    ] (  0,  0   )     int  ->  zero-ref    "field V03._length (fldOffset=0x8)" P-INDEP
-;  V171 tmp163      [V171,T21] (  6, 14   )    long  ->  registers   "field V04._ticks (fldOffset=0x0)" P-INDEP
+;  V171 tmp163      [V171,T22] (  6, 14   )    long  ->  registers   "field V04._ticks (fldOffset=0x0)" P-INDEP
 ;  V172 tmp164      [V172,T122] (  2,  2   )   byref  ->  rdi         single-def "field V09._reference (fldOffset=0x0)" P-INDEP
 ;* V173 tmp165      [V173,T142] (  0,  0   )     int  ->  zero-ref    "field V09._length (fldOffset=0x8)" P-INDEP
 ;* V174 tmp166      [V174    ] (  0,  0   )    long  ->  zero-ref    "field V11._dateData (fldOffset=0x0)" P-INDEP
 ;* V175 tmp167      [V175    ] (  0,  0   )    long  ->  zero-ref    "field V12._dateData (fldOffset=0x0)" P-INDEP
 ;* V176 tmp168      [V176    ] (  0,  0   )    long  ->  zero-ref    "field V16._ticks (fldOffset=0x0)" P-INDEP
 ;  V177 tmp169      [V177,T65] (  2,  8   )    long  ->  rdi         "field V17._ticks (fldOffset=0x0)" P-INDEP
-;  V178 tmp170      [V178,T135] (  2,  1.50)   byref  ->  rsi         single-def "field V21._reference (fldOffset=0x0)" P-INDEP
+;  V178 tmp170      [V178,T136] (  2,  1.50)   byref  ->  rsi         single-def "field V21._reference (fldOffset=0x0)" P-INDEP
 ;  V179 tmp171      [V179,T125] (  2,  2   )     int  ->  rax         "field V21._length (fldOffset=0x8)" P-INDEP
 ;* V180 tmp172      [V180    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V26._reference (fldOffset=0x0)" P-INDEP
 ;* V181 tmp173      [V181    ] (  0,  0   )     int  ->  zero-ref    "field V26._length (fldOffset=0x8)" P-INDEP
 ;  V182 tmp174      [V182,T123] (  2,  2   )   byref  ->  [rbp-0x100]  spill-single-def "field V28._reference (fldOffset=0x0)" P-INDEP
 ;* V183 tmp175      [V183,T143] (  0,  0   )     int  ->  zero-ref    "field V28._length (fldOffset=0x8)" P-INDEP
 ;  V184 tmp176      [V184,T124] (  2,  2   )   byref  ->  r13         single-def "field V30._reference (fldOffset=0x0)" P-INDEP
 ;  V185 tmp177      [V185,T126] (  2,  2   )     int  ->  r12         "field V30._length (fldOffset=0x8)" P-INDEP
 ;* V186 tmp178      [V186    ] (  0,  0   )   byref  ->  zero-ref    "field V33._reference (fldOffset=0x0)" P-INDEP
 ;* V187 tmp179      [V187    ] (  0,  0   )     int  ->  zero-ref    "field V33._length (fldOffset=0x8)" P-INDEP
 ;* V188 tmp180      [V188    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V34._reference (fldOffset=0x0)" P-INDEP
 ;* V189 tmp181      [V189    ] (  0,  0   )     int  ->  zero-ref    "field V34._length (fldOffset=0x8)" P-INDEP
-;  V190 tmp182      [V190,T136] (  2,  1.50)   byref  ->  rsi         single-def "field V42._reference (fldOffset=0x0)" P-INDEP
+;  V190 tmp182      [V190,T137] (  2,  1.50)   byref  ->  rsi         single-def "field V42._reference (fldOffset=0x0)" P-INDEP
 ;  V191 tmp183      [V191,T127] (  2,  2   )     int  ->  rax         "field V42._length (fldOffset=0x8)" P-INDEP
-;  V192 tmp184      [V192,T137] (  2,  1.50)   byref  ->  rsi         single-def "field V44._reference (fldOffset=0x0)" P-INDEP
+;  V192 tmp184      [V192,T138] (  2,  1.50)   byref  ->  rsi         single-def "field V44._reference (fldOffset=0x0)" P-INDEP
 ;  V193 tmp185      [V193,T128] (  2,  2   )     int  ->  rax         "field V44._length (fldOffset=0x8)" P-INDEP
-;  V194 tmp186      [V194,T138] (  2,  1.50)   byref  ->  rsi         single-def "field V46._reference (fldOffset=0x0)" P-INDEP
+;  V194 tmp186      [V194,T139] (  2,  1.50)   byref  ->  rsi         single-def "field V46._reference (fldOffset=0x0)" P-INDEP
 ;  V195 tmp187      [V195,T129] (  2,  2   )     int  ->  rax         "field V46._length (fldOffset=0x8)" P-INDEP
-;  V196 tmp188      [V196,T139] (  2,  1.50)   byref  ->  rsi         single-def "field V48._reference (fldOffset=0x0)" P-INDEP
+;  V196 tmp188      [V196,T140] (  2,  1.50)   byref  ->  rsi         single-def "field V48._reference (fldOffset=0x0)" P-INDEP
 ;  V197 tmp189      [V197,T130] (  2,  2   )     int  ->  rax         "field V48._length (fldOffset=0x8)" P-INDEP
-;  V198 tmp190      [V198,T78] (  2,  6   )   byref  ->  rsi         "field V50._reference (fldOffset=0x0)" P-INDEP
+;  V198 tmp190      [V198,T82] (  2,  6   )   byref  ->  rsi         "field V50._reference (fldOffset=0x0)" P-INDEP
 ;  V199 tmp191      [V199,T66] (  2,  8   )     int  ->  rax         "field V50._length (fldOffset=0x8)" P-INDEP
 ;  V200 tmp192      [V200    ] (  3, 14   )    long  ->  [rbp-0x70]  do-not-enreg[X] addr-exposed "field V51._dateData (fldOffset=0x0)" P-DEP
 ;* V201 tmp193      [V201    ] (  0,  0   )    long  ->  zero-ref    "field V52._dateData (fldOffset=0x0)" P-INDEP
 ;* V202 tmp194      [V202    ] (  0,  0   )   byref  ->  zero-ref    "field V55._reference (fldOffset=0x0)" P-INDEP
 ;* V203 tmp195      [V203    ] (  0,  0   )     int  ->  zero-ref    "field V55._length (fldOffset=0x8)" P-INDEP
 ;* V204 tmp196      [V204    ] (  0,  0   )   byref  ->  zero-ref    "field V57._reference (fldOffset=0x0)" P-INDEP
 ;* V205 tmp197      [V205    ] (  0,  0   )     int  ->  zero-ref    "field V57._length (fldOffset=0x8)" P-INDEP
 ;  V206 tmp198      [V206,T54] (  2,  8   )   byref  ->  rsi         "field V59._reference (fldOffset=0x0)" P-INDEP
 ;  V207 tmp199      [V207,T67] (  2,  8   )     int  ->  rdx         "field V59._length (fldOffset=0x8)" P-INDEP
 ;* V208 tmp200      [V208    ] (  0,  0   )   byref  ->  zero-ref    "field V62._reference (fldOffset=0x0)" P-INDEP
 ;* V209 tmp201      [V209    ] (  0,  0   )     int  ->  zero-ref    "field V62._length (fldOffset=0x8)" P-INDEP
 ;  V210 tmp202      [V210,T55] (  2,  8   )   byref  ->   r9         "field V63._reference (fldOffset=0x0)" P-INDEP
 ;* V211 tmp203      [V211,T108] (  0,  0   )     int  ->  zero-ref    "field V63._length (fldOffset=0x8)" P-INDEP
 ;  V212 tmp204      [V212,T68] (  2,  8   )    long  ->  rdi         "field V65._dateData (fldOffset=0x0)" P-INDEP
 ;* V213 tmp205      [V213,T109] (  0,  0   )    long  ->  zero-ref    "field V66._ticks (fldOffset=0x0)" P-INDEP
 ;  V214 tmp206      [V214,T102] (  2,  4   )    long  ->  rdi         "field V67._dateData (fldOffset=0x0)" P-INDEP
 ;* V215 tmp207      [V215,T132] (  0,  0   )    long  ->  zero-ref    "field V68._ticks (fldOffset=0x0)" P-INDEP
 ;* V216 tmp208      [V216    ] (  0,  0   )   byref  ->  zero-ref    "field V72._reference (fldOffset=0x0)" P-INDEP
 ;* V217 tmp209      [V217    ] (  0,  0   )     int  ->  zero-ref    "field V72._length (fldOffset=0x8)" P-INDEP
 ;* V218 tmp210      [V218    ] (  0,  0   )   byref  ->  zero-ref    "field V73._reference (fldOffset=0x0)" P-INDEP
 ;* V219 tmp211      [V219    ] (  0,  0   )     int  ->  zero-ref    "field V73._length (fldOffset=0x8)" P-INDEP
 ;* V220 tmp212      [V220    ] (  0,  0   )   byref  ->  zero-ref    "field V76._reference (fldOffset=0x0)" P-INDEP
 ;* V221 tmp213      [V221    ] (  0,  0   )     int  ->  zero-ref    "field V76._length (fldOffset=0x8)" P-INDEP
-;  V222 tmp214      [V222,T79] (  2,  6   )   byref  ->  rsi         "field V82._reference (fldOffset=0x0)" P-INDEP
+;  V222 tmp214      [V222,T83] (  2,  6   )   byref  ->  rsi         "field V82._reference (fldOffset=0x0)" P-INDEP
 ;  V223 tmp215      [V223,T69] (  2,  8   )     int  ->  rax         "field V82._length (fldOffset=0x8)" P-INDEP
 ;  V224 tmp216      [V224    ] (  3, 14   )    long  ->  [rbp-0x88]  do-not-enreg[X] addr-exposed "field V83._dateData (fldOffset=0x0)" P-DEP
 ;* V225 tmp217      [V225    ] (  0,  0   )    long  ->  zero-ref    "field V84._dateData (fldOffset=0x0)" P-INDEP
 ;* V226 tmp218      [V226    ] (  0,  0   )   byref  ->  zero-ref    "field V87._reference (fldOffset=0x0)" P-INDEP
 ;* V227 tmp219      [V227    ] (  0,  0   )     int  ->  zero-ref    "field V87._length (fldOffset=0x8)" P-INDEP
 ;* V228 tmp220      [V228    ] (  0,  0   )   byref  ->  zero-ref    "field V89._reference (fldOffset=0x0)" P-INDEP
 ;* V229 tmp221      [V229    ] (  0,  0   )     int  ->  zero-ref    "field V89._length (fldOffset=0x8)" P-INDEP
 ;  V230 tmp222      [V230,T56] (  2,  8   )   byref  ->  rsi         "field V91._reference (fldOffset=0x0)" P-INDEP
 ;  V231 tmp223      [V231,T70] (  2,  8   )     int  ->  rdx         "field V91._length (fldOffset=0x8)" P-INDEP
 ;* V232 tmp224      [V232    ] (  0,  0   )   byref  ->  zero-ref    "field V94._reference (fldOffset=0x0)" P-INDEP
 ;* V233 tmp225      [V233    ] (  0,  0   )     int  ->  zero-ref    "field V94._length (fldOffset=0x8)" P-INDEP
 ;  V234 tmp226      [V234,T57] (  2,  8   )   byref  ->   r9         "field V95._reference (fldOffset=0x0)" P-INDEP
 ;* V235 tmp227      [V235,T110] (  0,  0   )     int  ->  zero-ref    "field V95._length (fldOffset=0x8)" P-INDEP
 ;  V236 tmp228      [V236,T71] (  2,  8   )    long  ->  rdi         "field V97._dateData (fldOffset=0x0)" P-INDEP
 ;* V237 tmp229      [V237,T111] (  0,  0   )    long  ->  zero-ref    "field V98._ticks (fldOffset=0x0)" P-INDEP
 ;  V238 tmp230      [V238,T103] (  2,  4   )    long  ->  rdi         "field V99._dateData (fldOffset=0x0)" P-INDEP
 ;* V239 tmp231      [V239,T133] (  0,  0   )    long  ->  zero-ref    "field V100._ticks (fldOffset=0x0)" P-INDEP
 ;* V240 tmp232      [V240    ] (  0,  0   )   byref  ->  zero-ref    "field V104._reference (fldOffset=0x0)" P-INDEP
 ;* V241 tmp233      [V241    ] (  0,  0   )     int  ->  zero-ref    "field V104._length (fldOffset=0x8)" P-INDEP
 ;* V242 tmp234      [V242    ] (  0,  0   )   byref  ->  zero-ref    "field V105._reference (fldOffset=0x0)" P-INDEP
 ;* V243 tmp235      [V243    ] (  0,  0   )     int  ->  zero-ref    "field V105._length (fldOffset=0x8)" P-INDEP
 ;* V244 tmp236      [V244    ] (  0,  0   )   byref  ->  zero-ref    "field V108._reference (fldOffset=0x0)" P-INDEP
 ;* V245 tmp237      [V245    ] (  0,  0   )     int  ->  zero-ref    "field V108._length (fldOffset=0x8)" P-INDEP
-;  V246 tmp238      [V246,T80] (  2,  6   )   byref  ->  rsi         "field V114._reference (fldOffset=0x0)" P-INDEP
+;  V246 tmp238      [V246,T84] (  2,  6   )   byref  ->  rsi         "field V114._reference (fldOffset=0x0)" P-INDEP
 ;  V247 tmp239      [V247,T72] (  2,  8   )     int  ->  rax         "field V114._length (fldOffset=0x8)" P-INDEP
 ;* V248 tmp240      [V248    ] (  0,  0   )   byref  ->  zero-ref    "field V119._reference (fldOffset=0x0)" P-INDEP
 ;* V249 tmp241      [V249    ] (  0,  0   )     int  ->  zero-ref    "field V119._length (fldOffset=0x8)" P-INDEP
 ;  V250 tmp242      [V250,T58] (  2,  8   )   byref  ->  [rbp-0x108]  spill-single-def "field V121._reference (fldOffset=0x0)" P-INDEP
 ;* V251 tmp243      [V251,T112] (  0,  0   )     int  ->  zero-ref    "field V121._length (fldOffset=0x8)" P-INDEP
 ;  V252 tmp244      [V252,T59] (  2,  8   )   byref  ->  [rbp-0x110]  spill-single-def "field V123._reference (fldOffset=0x0)" P-INDEP
 ;  V253 tmp245      [V253,T73] (  2,  8   )     int  ->  [rbp-0xDC]  spill-single-def "field V123._length (fldOffset=0x8)" P-INDEP
 ;* V254 tmp246      [V254    ] (  0,  0   )   byref  ->  zero-ref    "field V126._reference (fldOffset=0x0)" P-INDEP
 ;* V255 tmp247      [V255    ] (  0,  0   )     int  ->  zero-ref    "field V126._length (fldOffset=0x8)" P-INDEP
 ;* V256 tmp248      [V256    ] (  0,  0   )   byref  ->  zero-ref    "field V127._reference (fldOffset=0x0)" P-INDEP
 ;* V257 tmp249      [V257    ] (  0,  0   )     int  ->  zero-ref    "field V127._length (fldOffset=0x8)" P-INDEP
-;  V258 tmp250      [V258,T81] (  2,  6   )   byref  ->  rsi         "field V135._reference (fldOffset=0x0)" P-INDEP
+;  V258 tmp250      [V258,T85] (  2,  6   )   byref  ->  rsi         "field V135._reference (fldOffset=0x0)" P-INDEP
 ;  V259 tmp251      [V259,T74] (  2,  8   )     int  ->  rax         "field V135._length (fldOffset=0x8)" P-INDEP
-;  V260 tmp252      [V260,T82] (  2,  6   )   byref  ->  rsi         "field V137._reference (fldOffset=0x0)" P-INDEP
+;  V260 tmp252      [V260,T86] (  2,  6   )   byref  ->  rsi         "field V137._reference (fldOffset=0x0)" P-INDEP
 ;  V261 tmp253      [V261,T75] (  2,  8   )     int  ->  rax         "field V137._length (fldOffset=0x8)" P-INDEP
-;  V262 tmp254      [V262,T83] (  2,  6   )   byref  ->  rsi         "field V139._reference (fldOffset=0x0)" P-INDEP
+;  V262 tmp254      [V262,T87] (  2,  6   )   byref  ->  rsi         "field V139._reference (fldOffset=0x0)" P-INDEP
 ;  V263 tmp255      [V263,T76] (  2,  8   )     int  ->  rax         "field V139._length (fldOffset=0x8)" P-INDEP
 ;* V264 tmp256      [V264    ] (  0,  0   )   byref  ->  zero-ref    "field V144._reference (fldOffset=0x0)" P-INDEP
 ;* V265 tmp257      [V265    ] (  0,  0   )     int  ->  zero-ref    "field V144._length (fldOffset=0x8)" P-INDEP
 ;  V266 tmp258      [V266,T92] (  2,  4   )   byref  ->  [rbp-0x118]  spill-single-def "field V146._reference (fldOffset=0x0)" P-INDEP
 ;* V267 tmp259      [V267,T134] (  0,  0   )     int  ->  zero-ref    "field V146._length (fldOffset=0x8)" P-INDEP
 ;  V268 tmp260      [V268,T93] (  2,  4   )   byref  ->  [rbp-0x120]  spill-single-def "field V148._reference (fldOffset=0x0)" P-INDEP
 ;  V269 tmp261      [V269,T104] (  2,  4   )     int  ->  [rbp-0xE0]  spill-single-def "field V148._length (fldOffset=0x8)" P-INDEP
 ;* V270 tmp262      [V270    ] (  0,  0   )   byref  ->  zero-ref    "field V151._reference (fldOffset=0x0)" P-INDEP
 ;* V271 tmp263      [V271    ] (  0,  0   )     int  ->  zero-ref    "field V151._length (fldOffset=0x8)" P-INDEP
 ;* V272 tmp264      [V272    ] (  0,  0   )   byref  ->  zero-ref    "field V152._reference (fldOffset=0x0)" P-INDEP
 ;* V273 tmp265      [V273    ] (  0,  0   )     int  ->  zero-ref    "field V152._length (fldOffset=0x8)" P-INDEP
 ;  V274 tmp266      [V274,T94] (  2,  4   )   byref  ->  rsi         "field V160._reference (fldOffset=0x0)" P-INDEP
 ;  V275 tmp267      [V275,T105] (  2,  4   )     int  ->  rax         "field V160._length (fldOffset=0x8)" P-INDEP
 ;  V276 tmp268      [V276,T95] (  2,  4   )   byref  ->  rsi         "field V162._reference (fldOffset=0x0)" P-INDEP
 ;  V277 tmp269      [V277,T106] (  2,  4   )     int  ->  rax         "field V162._length (fldOffset=0x8)" P-INDEP
 ;  V278 tmp270      [V278,T96] (  2,  4   )   byref  ->  rsi         "field V164._reference (fldOffset=0x0)" P-INDEP
 ;  V279 tmp271      [V279,T107] (  2,  4   )     int  ->  rax         "field V164._length (fldOffset=0x8)" P-INDEP
-;  V280 tmp272      [V280,T84] (  2,  6   )   byref  ->  rsi         "field V166._reference (fldOffset=0x0)" P-INDEP
+;  V280 tmp272      [V280,T88] (  2,  6   )   byref  ->  rsi         "field V166._reference (fldOffset=0x0)" P-INDEP
 ;  V281 tmp273      [V281,T77] (  2,  8   )     int  ->  rax         "field V166._length (fldOffset=0x8)" P-INDEP
-;  V282 tmp274      [V282,T140] (  2,  1.50)   byref  ->  rsi         single-def "field V168._reference (fldOffset=0x0)" P-INDEP
+;  V282 tmp274      [V282,T141] (  2,  1.50)   byref  ->  rsi         single-def "field V168._reference (fldOffset=0x0)" P-INDEP
 ;  V283 tmp275      [V283,T131] (  2,  2   )     int  ->  rax         "field V168._length (fldOffset=0x8)" P-INDEP
 ;  V284 tmp276      [V284,T97] (  2,  4   )     ref  ->  rdi         single-def "argument with side effect"
 ;  V285 tmp277      [V285,T98] (  2,  4   )     ref  ->  rdi         single-def "argument with side effect"
 ;  V286 tmp278      [V286,T99] (  2,  4   )     ref  ->  rdi         single-def "argument with side effect"
 ;  V287 GsCookie    [V287    ] (  1,  1   )    long  ->  [rbp-0x130]  do-not-enreg[X] addr-exposed "GSSecurityCookie"
 ;  V288 cse0        [V288,T40] (  4,  8   )     ref  ->  r14         "CSE - conservative"
 ;  V289 cse1        [V289,T30] (  3, 12   )     ref  ->  r12         "CSE - conservative"
 ;  V290 cse2        [V290,T31] (  3, 12   )   byref  ->  [rbp-0x128]  spill-single-def "CSE - conservative"
-;  V291 cse3        [V291,T19] (  7, 14   )     int  ->  [rbp-0xE4]  spill-single-def "CSE - moderate"
-;  V292 cse4        [V292,T20] (  7, 14   )     int  ->  [rbp-0xE8]  spill-single-def "CSE - moderate"
+;  V291 cse3        [V291,T20] (  7, 14   )     int  ->  [rbp-0xE4]  spill-single-def "CSE - moderate"
+;  V292 cse4        [V292,T21] (  7, 14   )     int  ->  [rbp-0xE8]  spill-single-def "CSE - moderate"
 ;
 ; Lcl frame size = 296
 
 G_M8366_IG01:
        push     rbp
        push     r15
        push     r14
        push     r13
        push     r12
        push     rbx
        sub      rsp, 296
        vzeroupper 
        lea      rbp, [rsp+0x150]
        xor      eax, eax
        mov      qword ptr [rbp-0x48], rax
        vxorps   xmm8, xmm8, xmm8
        vmovdqa  xmmword ptr [rbp-0x40], xmm8
        mov      qword ptr [rbp-0x30], rax
        mov      qword ptr [rbp-0x130], 0xD1FFAB1E
        mov      rbx, rdi
 						;; size=62 bbWeight=1 PerfScore 13.58
 G_M8366_IG02:
        test     dword ptr [rsp], esp
        sub      rsp, 128
        lea      rdi, [rsp+0x20]
        mov      bword ptr [rbp-0x38], rdi
        mov      dword ptr [rbp-0x30], 64
        xor      edi, edi
        mov      dword ptr [rbp-0x40], edi
        mov      rdi, gword ptr [rbx+0x08]
        lea      rsi, [rbp-0x48]
        mov      rax, 0xD1FFAB1E      ; code for System.TimeZoneInfo+StringSerializer:SerializeSubstitute(System.String,byref)
        call     [rax]System.TimeZoneInfo+StringSerializer:SerializeSubstitute(System.String,byref)
        mov      edi, dword ptr [rbp-0x40]
        mov      rsi, bword ptr [rbp-0x38]
        mov      eax, dword ptr [rbp-0x30]
        cmp      edi, eax
        jae      SHORT G_M8366_IG04
 						;; size=65 bbWeight=1 PerfScore 17.00
 G_M8366_IG03:
        mov      eax, edi
        mov      word  ptr [rsi+2*rax], 59
        inc      edi
        mov      dword ptr [rbp-0x40], edi
        jmp      SHORT G_M8366_IG05
 						;; size=15 bbWeight=0.50 PerfScore 2.25
 G_M8366_IG04:
        lea      rdi, [rbp-0x48]
        mov      esi, 59
        mov      rax, 0xD1FFAB1E      ; code for System.Text.ValueStringBuilder:GrowAndAppend(ushort):this
        call     [rax]System.Text.ValueStringBuilder:GrowAndAppend(ushort):this
 						;; size=21 bbWeight=0.50 PerfScore 2.00
 G_M8366_IG05:
        mov      r15, qword ptr [rbx+0x50]
        vxorps   xmm0, xmm0, xmm0
        vcvtsi2sd xmm0, xmm0, r15
        vdivsd   xmm0, xmm0, qword ptr [reloc @RWD00]
        vmovsd   qword ptr [rbp-0x50], xmm0
        mov      rdi, 0xD1FFAB1E      ; const ptr
        mov      r14, gword ptr [rdi]
        mov      r15, r14
        lea      rdi, bword ptr [rbp-0x50]
        mov      eax, dword ptr [rbp-0x40]
        cmp      eax, dword ptr [rbp-0x30]
-       ja       G_M8366_IG77
+       ja       G_M8366_IG91
        mov      rcx, bword ptr [rbp-0x38]
        mov      edx, eax
        lea      r13, bword ptr [rcx+2*rdx]
        mov      r12d, dword ptr [rbp-0x30]
        sub      r12d, eax
        xor      rax, rax
        mov      bword ptr [rbp-0x100], rax
        vmovsd   xmm0, qword ptr [rdi]
        vmovsd   qword ptr [rbp-0x60], xmm0
+       test     r15, r15
+       je       SHORT G_M8366_IG07
+						;; size=98 bbWeight=1 PerfScore 40.83
+G_M8366_IG06:
        mov      rdi, r15
        mov      rcx, 0xD1FFAB1E      ; code for System.Globalization.NumberFormatInfo:<GetInstance>g__GetProviderNonNull|59_0(System.IFormatProvider):System.Globalization.NumberFormatInfo
        call     [rcx]System.Globalization.NumberFormatInfo:<GetInstance>g__GetProviderNonNull|59_0(System.IFormatProvider):System.Globalization.NumberFormatInfo
-       mov      rdx, rax
+       jmp      SHORT G_M8366_IG08
+						;; size=17 bbWeight=0.50 PerfScore 2.75
+G_M8366_IG07:
+       mov      rcx, 0xD1FFAB1E      ; code for System.Globalization.NumberFormatInfo:get_CurrentInfo():System.Globalization.NumberFormatInfo
+       call     [rcx]System.Globalization.NumberFormatInfo:get_CurrentInfo():System.Globalization.NumberFormatInfo
+						;; size=12 bbWeight=0.50 PerfScore 1.62
+G_M8366_IG08:
        mov      rcx, r13
        mov      r8d, r12d
        mov      rdi, bword ptr [rbp-0x100]
        xor      esi, esi
        lea      r9, [rbp-0x58]
        vmovsd   xmm0, qword ptr [rbp-0x60]
+       mov      rdx, rax
        mov      rax, 0xD1FFAB1E      ; code for System.Number:TryFormatDouble[ushort](double,System.ReadOnlySpan`1[ushort],System.Globalization.NumberFormatInfo,System.Span`1[ushort],byref):ubyte
        call     [rax]System.Number:TryFormatDouble[ushort](double,System.ReadOnlySpan`1[ushort],System.Globalization.NumberFormatInfo,System.Span`1[ushort],byref):ubyte
        test     eax, eax
-       je       SHORT G_M8366_IG07
-						;; size=151 bbWeight=1 PerfScore 53.08
-G_M8366_IG06:
+       je       SHORT G_M8366_IG10
+						;; size=43 bbWeight=1 PerfScore 10.00
+G_M8366_IG09:
        mov      edi, dword ptr [rbp-0x40]
        add      edi, dword ptr [rbp-0x58]
        mov      dword ptr [rbp-0x40], edi
-       jmp      SHORT G_M8366_IG09
-						;; size=11 bbWeight=0.50 PerfScore 3.00
-G_M8366_IG07:
+       jmp      G_M8366_IG14
+						;; size=14 bbWeight=0.50 PerfScore 3.00
+G_M8366_IG10:
        vmovsd   xmm0, qword ptr [rbp-0x50]
        vmovsd   qword ptr [rbp-0x68], xmm0
+       test     r15, r15
+       je       SHORT G_M8366_IG11
        mov      rdi, r15
        mov      rax, 0xD1FFAB1E      ; code for System.Globalization.NumberFormatInfo:<GetInstance>g__GetProviderNonNull|59_0(System.IFormatProvider):System.Globalization.NumberFormatInfo
        call     [rax]System.Globalization.NumberFormatInfo:<GetInstance>g__GetProviderNonNull|59_0(System.IFormatProvider):System.Globalization.NumberFormatInfo
-       mov      rsi, rax
+       jmp      SHORT G_M8366_IG12
+						;; size=32 bbWeight=0.50 PerfScore 5.38
+G_M8366_IG11:
+       mov      rax, 0xD1FFAB1E      ; code for System.Globalization.NumberFormatInfo:get_CurrentInfo():System.Globalization.NumberFormatInfo
+       call     [rax]System.Globalization.NumberFormatInfo:get_CurrentInfo():System.Globalization.NumberFormatInfo
+						;; size=12 bbWeight=0.50 PerfScore 1.62
+G_M8366_IG12:
        vmovsd   xmm0, qword ptr [rbp-0x68]
+       mov      rsi, rax
        xor      rdi, rdi
        mov      rax, 0xD1FFAB1E      ; code for System.Number:FormatDouble(double,System.String,System.Globalization.NumberFormatInfo):System.String
        call     [rax]System.Number:FormatDouble(double,System.String,System.Globalization.NumberFormatInfo):System.String
        test     rax, rax
-       je       SHORT G_M8366_IG09
+       je       SHORT G_M8366_IG14
        mov      edi, dword ptr [rbp-0x40]
        cmp      dword ptr [rax+0x08], 1
-       jne      SHORT G_M8366_IG08
+       jne      SHORT G_M8366_IG13
        cmp      edi, dword ptr [rbp-0x30]
-       jae      SHORT G_M8366_IG08
+       jae      SHORT G_M8366_IG13
        cmp      edi, dword ptr [rbp-0x30]
-       jae      G_M8366_IG75
+       jae      G_M8366_IG89
        mov      rsi, bword ptr [rbp-0x38]
        mov      ecx, edi
        movzx    rax, word  ptr [rax+0x0C]
        mov      word  ptr [rsi+2*rcx], ax
        inc      edi
        mov      dword ptr [rbp-0x40], edi
-       jmp      SHORT G_M8366_IG09
-						;; size=96 bbWeight=0.50 PerfScore 17.00
-G_M8366_IG08:
+       jmp      SHORT G_M8366_IG14
+						;; size=71 bbWeight=0.50 PerfScore 13.25
+G_M8366_IG13:
        lea      rdi, [rbp-0x48]
        mov      rsi, rax
        mov      rax, 0xD1FFAB1E      ; code for System.Text.ValueStringBuilder:AppendSlow(System.String):this
        call     [rax]System.Text.ValueStringBuilder:AppendSlow(System.String):this
 						;; size=19 bbWeight=0.50 PerfScore 2.00
-G_M8366_IG09:
+G_M8366_IG14:
        mov      edi, dword ptr [rbp-0x40]
        mov      rsi, bword ptr [rbp-0x38]
        mov      eax, dword ptr [rbp-0x30]
        cmp      edi, eax
-       jae      SHORT G_M8366_IG11
+       jae      SHORT G_M8366_IG16
 						;; size=14 bbWeight=1 PerfScore 4.25
-G_M8366_IG10:
+G_M8366_IG15:
        mov      eax, edi
        mov      word  ptr [rsi+2*rax], 59
        inc      edi
        mov      dword ptr [rbp-0x40], edi
-       jmp      SHORT G_M8366_IG12
+       jmp      SHORT G_M8366_IG17
 						;; size=15 bbWeight=0.50 PerfScore 2.25
-G_M8366_IG11:
+G_M8366_IG16:
        lea      rdi, [rbp-0x48]
        mov      esi, 59
        mov      rax, 0xD1FFAB1E      ; code for System.Text.ValueStringBuilder:GrowAndAppend(ushort):this
        call     [rax]System.Text.ValueStringBuilder:GrowAndAppend(ushort):this
 						;; size=21 bbWeight=0.50 PerfScore 2.00
-G_M8366_IG12:
+G_M8366_IG17:
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.TimeZoneInfo:get_DisplayName():System.String:this
        call     [rax]System.TimeZoneInfo:get_DisplayName():System.String:this
        mov      rdi, rax
        lea      rsi, [rbp-0x48]
        mov      rax, 0xD1FFAB1E      ; code for System.TimeZoneInfo+StringSerializer:SerializeSubstitute(System.String,byref)
        call     [rax]System.TimeZoneInfo+StringSerializer:SerializeSubstitute(System.String,byref)
        mov      edi, dword ptr [rbp-0x40]
        mov      rsi, bword ptr [rbp-0x38]
        mov      eax, dword ptr [rbp-0x30]
        cmp      edi, eax
-       jae      SHORT G_M8366_IG14
+       jae      SHORT G_M8366_IG19
 						;; size=48 bbWeight=1 PerfScore 11.75
-G_M8366_IG13:
+G_M8366_IG18:
        mov      eax, edi
        mov      word  ptr [rsi+2*rax], 59
        inc      edi
        mov      dword ptr [rbp-0x40], edi
-       jmp      SHORT G_M8366_IG15
+       jmp      SHORT G_M8366_IG20
 						;; size=15 bbWeight=0.50 PerfScore 2.25
-G_M8366_IG14:
+G_M8366_IG19:
        lea      rdi, [rbp-0x48]
        mov      esi, 59
        mov      rax, 0xD1FFAB1E      ; code for System.Text.ValueStringBuilder:GrowAndAppend(ushort):this
        call     [rax]System.Text.ValueStringBuilder:GrowAndAppend(ushort):this
 						;; size=21 bbWeight=0.50 PerfScore 2.00
-G_M8366_IG15:
+G_M8366_IG20:
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.TimeZoneInfo:get_StandardName():System.String:this
        call     [rax]System.TimeZoneInfo:get_StandardName():System.String:this
        mov      rdi, rax
        lea      rsi, [rbp-0x48]
        mov      rax, 0xD1FFAB1E      ; code for System.TimeZoneInfo+StringSerializer:SerializeSubstitute(System.String,byref)
        call     [rax]System.TimeZoneInfo+StringSerializer:SerializeSubstitute(System.String,byref)
        mov      edi, dword ptr [rbp-0x40]
        mov      rsi, bword ptr [rbp-0x38]
        mov      eax, dword ptr [rbp-0x30]
        cmp      edi, eax
-       jae      SHORT G_M8366_IG17
+       jae      SHORT G_M8366_IG22
 						;; size=48 bbWeight=1 PerfScore 11.75
-G_M8366_IG16:
+G_M8366_IG21:
        mov      eax, edi
        mov      word  ptr [rsi+2*rax], 59
        inc      edi
        mov      dword ptr [rbp-0x40], edi
-       jmp      SHORT G_M8366_IG18
+       jmp      SHORT G_M8366_IG23
 						;; size=15 bbWeight=0.50 PerfScore 2.25
-G_M8366_IG17:
+G_M8366_IG22:
        lea      rdi, [rbp-0x48]
        mov      esi, 59
        mov      rax, 0xD1FFAB1E      ; code for System.Text.ValueStringBuilder:GrowAndAppend(ushort):this
        call     [rax]System.Text.ValueStringBuilder:GrowAndAppend(ushort):this
 						;; size=21 bbWeight=0.50 PerfScore 2.00
-G_M8366_IG18:
+G_M8366_IG23:
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.TimeZoneInfo:get_DaylightName():System.String:this
        call     [rax]System.TimeZoneInfo:get_DaylightName():System.String:this
        mov      rdi, rax
        lea      rsi, [rbp-0x48]
        mov      rax, 0xD1FFAB1E      ; code for System.TimeZoneInfo+StringSerializer:SerializeSubstitute(System.String,byref)
        call     [rax]System.TimeZoneInfo+StringSerializer:SerializeSubstitute(System.String,byref)
        mov      edi, dword ptr [rbp-0x40]
        mov      rsi, bword ptr [rbp-0x38]
        mov      eax, dword ptr [rbp-0x30]
        cmp      edi, eax
-       jae      SHORT G_M8366_IG20
+       jae      SHORT G_M8366_IG25
 						;; size=48 bbWeight=1 PerfScore 11.75
-G_M8366_IG19:
+G_M8366_IG24:
        mov      eax, edi
        mov      word  ptr [rsi+2*rax], 59
        inc      edi
        mov      dword ptr [rbp-0x40], edi
-       jmp      SHORT G_M8366_IG21
+       jmp      SHORT G_M8366_IG26
 						;; size=15 bbWeight=0.50 PerfScore 2.25
-G_M8366_IG20:
+G_M8366_IG25:
        lea      rdi, [rbp-0x48]
        mov      esi, 59
        mov      rax, 0xD1FFAB1E      ; code for System.Text.ValueStringBuilder:GrowAndAppend(ushort):this
        call     [rax]System.Text.ValueStringBuilder:GrowAndAppend(ushort):this
 						;; size=21 bbWeight=0.50 PerfScore 2.00
-G_M8366_IG21:
+G_M8366_IG26:
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.TimeZoneInfo:GetAdjustmentRules():System.TimeZoneInfo+AdjustmentRule[]:this
        call     [rax]System.TimeZoneInfo:GetAdjustmentRules():System.TimeZoneInfo+AdjustmentRule[]:this
        mov      rbx, rax
        xor      r15d, r15d
        cmp      dword ptr [rbx+0x08], 0
-       jle      G_M8366_IG69
+       jle      G_M8366_IG83
 						;; size=31 bbWeight=1 PerfScore 8.00
-G_M8366_IG22:
+G_M8366_IG27:
        mov      edi, r15d
        mov      r13, gword ptr [rbx+8*rdi+0x10]
        mov      edi, dword ptr [rbp-0x40]
        mov      rsi, bword ptr [rbp-0x38]
        mov      eax, dword ptr [rbp-0x30]
        cmp      edi, eax
-       jae      SHORT G_M8366_IG24
+       jae      SHORT G_M8366_IG29
 						;; size=22 bbWeight=4 PerfScore 26.00
-G_M8366_IG23:
+G_M8366_IG28:
        mov      eax, edi
        mov      word  ptr [rsi+2*rax], 91
        inc      edi
        mov      dword ptr [rbp-0x40], edi
-       jmp      SHORT G_M8366_IG25
+       jmp      SHORT G_M8366_IG30
 						;; size=15 bbWeight=2 PerfScore 9.00
-G_M8366_IG24:
+G_M8366_IG29:
        lea      rdi, [rbp-0x48]
        mov      esi, 91
        mov      rax, 0xD1FFAB1E      ; code for System.Text.ValueStringBuilder:GrowAndAppend(ushort):this
        call     [rax]System.Text.ValueStringBuilder:GrowAndAppend(ushort):this
 						;; size=21 bbWeight=2 PerfScore 8.00
-G_M8366_IG25:
+G_M8366_IG30:
        mov      r8, qword ptr [r13+0x10]
        mov      qword ptr [rbp-0x70], r8
        mov      r8, 0xD1FFAB1E      ; const ptr
        mov      r12, gword ptr [r8]
        mov      rax, r12
        mov      gword ptr [rbp-0xF0], rax
        lea      r8, bword ptr [rbp-0x70]
        mov      r9d, dword ptr [rbp-0x40]
        cmp      r9d, dword ptr [rbp-0x30]
-       ja       G_M8366_IG77
+       ja       G_M8366_IG91
        mov      rsi, bword ptr [rbp-0x38]
        mov      edx, r9d
        lea      rsi, bword ptr [rsi+2*rdx]
        mov      edx, dword ptr [rbp-0x30]
        sub      edx, r9d
        mov      r10, 0xD1FFAB1E
        mov      bword ptr [rbp-0x128], r10
        mov      r9, r10
        mov      rdi, qword ptr [r8]
        mov      gword ptr [rsp], rax
        mov      r8, 0xD1FFAB1E
        mov      qword ptr [rsp+0x08], r8
        mov      r8, r9
        mov      r9d, 10
        lea      rcx, [rbp-0x78]
        mov      r11, 0xD1FFAB1E      ; code for System.DateTimeFormat:TryFormat[ushort](System.DateTime,System.Span`1[ushort],byref,System.ReadOnlySpan`1[ushort],System.IFormatProvider,System.TimeSpan):ubyte
        call     [r11]System.DateTimeFormat:TryFormat[ushort](System.DateTime,System.Span`1[ushort],byref,System.ReadOnlySpan`1[ushort],System.IFormatProvider,System.TimeSpan):ubyte
        test     eax, eax
-       je       SHORT G_M8366_IG27
+       je       SHORT G_M8366_IG32
 						;; size=138 bbWeight=4 PerfScore 101.00
-G_M8366_IG26:
+G_M8366_IG31:
        mov      edi, dword ptr [rbp-0x40]
        add      edi, dword ptr [rbp-0x78]
        mov      dword ptr [rbp-0x40], edi
-       jmp      G_M8366_IG30
+       jmp      G_M8366_IG35
 						;; size=14 bbWeight=2 PerfScore 12.00
-G_M8366_IG27:
+G_M8366_IG32:
        mov      rdi, qword ptr [rbp-0x70]
        mov      rcx, 0xD1FFAB1E
        mov      rdx, gword ptr [rbp-0xF0]
        mov      rsi, 0xD1FFAB1E      ; 'MM:dd:yyyy'
 
        mov      rax, 0xD1FFAB1E      ; code for System.DateTimeFormat:Format(System.DateTime,System.String,System.IFormatProvider,System.TimeSpan):System.String
        call     [rax]System.DateTimeFormat:Format(System.DateTime,System.String,System.IFormatProvider,System.TimeSpan):System.String
        mov      rsi, rax
        mov      gword ptr [rbp-0xF8], rsi
        test     rsi, rsi
-       je       G_M8366_IG30
+       je       G_M8366_IG35
        mov      edi, dword ptr [rbp-0x40]
        mov      eax, dword ptr [rsi+0x08]
        mov      dword ptr [rbp-0xE4], eax
        cmp      eax, 1
-       jne      SHORT G_M8366_IG28
+       jne      SHORT G_M8366_IG33
        cmp      edi, dword ptr [rbp-0x30]
-       jae      SHORT G_M8366_IG28
+       jae      SHORT G_M8366_IG33
        cmp      edi, dword ptr [rbp-0x30]
-       jae      G_M8366_IG75
+       jae      G_M8366_IG89
        mov      rax, bword ptr [rbp-0x38]
        mov      ecx, edi
        movzx    rsi, word  ptr [rsi+0x0C]
        mov      word  ptr [rax+2*rcx], si
        inc      edi
        mov      dword ptr [rbp-0x40], edi
-       jmp      SHORT G_M8366_IG30
+       jmp      SHORT G_M8366_IG35
 						;; size=114 bbWeight=2 PerfScore 54.00
-G_M8366_IG28:
+G_M8366_IG33:
        mov      ecx, dword ptr [rbp-0x40]
        mov      dword ptr [rbp-0x7C], ecx
        mov      edi, dword ptr [rbp-0x30]
        sub      edi, eax
        cmp      edi, ecx
-       jge      SHORT G_M8366_IG29
+       jge      SHORT G_M8366_IG34
        mov      esi, eax
        lea      rdi, [rbp-0x48]
        mov      rdx, 0xD1FFAB1E      ; code for System.Text.ValueStringBuilder:Grow(int):this
        call     [rdx]System.Text.ValueStringBuilder:Grow(int):this
        mov      eax, dword ptr [rbp-0xE4]
        mov      rsi, gword ptr [rbp-0xF8]
 						;; size=46 bbWeight=2 PerfScore 21.00
-G_M8366_IG29:
+G_M8366_IG34:
        mov      ecx, dword ptr [rbp-0x7C]
        cmp      ecx, dword ptr [rbp-0x30]
-       ja       G_M8366_IG77
+       ja       G_M8366_IG91
        mov      rdx, bword ptr [rbp-0x38]
        mov      edi, ecx
        lea      rdi, bword ptr [rdx+2*rdi]
        mov      edx, dword ptr [rbp-0x30]
        sub      edx, ecx
        cmp      eax, edx
-       ja       G_M8366_IG76
+       ja       G_M8366_IG90
        add      rsi, 12
        mov      edx, eax
        add      rdx, rdx
        mov      rcx, 0xD1FFAB1E      ; code for System.Buffer:Memmove(byref,byref,ulong)
        call     [rcx]System.Buffer:Memmove(byref,byref,ulong)
        mov      edi, dword ptr [rbp-0xE4]
        add      edi, dword ptr [rbp-0x40]
        mov      dword ptr [rbp-0x40], edi
 						;; size=68 bbWeight=2 PerfScore 32.50
-G_M8366_IG30:
+G_M8366_IG35:
        mov      edi, dword ptr [rbp-0x40]
        mov      rsi, bword ptr [rbp-0x38]
        mov      eax, dword ptr [rbp-0x30]
        cmp      edi, eax
-       jae      SHORT G_M8366_IG32
+       jae      SHORT G_M8366_IG37
 						;; size=14 bbWeight=4 PerfScore 17.00
-G_M8366_IG31:
+G_M8366_IG36:
        mov      eax, edi
        mov      word  ptr [rsi+2*rax], 59
        inc      edi
        mov      dword ptr [rbp-0x40], edi
-       jmp      SHORT G_M8366_IG33
+       jmp      SHORT G_M8366_IG38
 						;; size=15 bbWeight=2 PerfScore 9.00
-G_M8366_IG32:
+G_M8366_IG37:
        lea      rdi, [rbp-0x48]
        mov      esi, 59
        mov      rax, 0xD1FFAB1E      ; code for System.Text.ValueStringBuilder:GrowAndAppend(ushort):this
        call     [rax]System.Text.ValueStringBuilder:GrowAndAppend(ushort):this
 						;; size=21 bbWeight=2 PerfScore 8.00
-G_M8366_IG33:
+G_M8366_IG38:
        mov      r8, qword ptr [r13+0x18]
        mov      qword ptr [rbp-0x88], r8
        lea      r8, bword ptr [rbp-0x88]
        mov      r9d, dword ptr [rbp-0x40]
        cmp      r9d, dword ptr [rbp-0x30]
-       ja       G_M8366_IG77
+       ja       G_M8366_IG91
        mov      rsi, bword ptr [rbp-0x38]
        mov      edx, r9d
        lea      rsi, bword ptr [rsi+2*rdx]
        mov      edx, dword ptr [rbp-0x30]
        sub      edx, r9d
        mov      r9, bword ptr [rbp-0x128]
        mov      rdi, qword ptr [r8]
        mov      gword ptr [rsp], r12
        mov      r8, 0xD1FFAB1E
        mov      qword ptr [rsp+0x08], r8
        mov      r8, r9
        mov      r9d, 10
        lea      rcx, [rbp-0x90]
        mov      rax, 0xD1FFAB1E      ; code for System.DateTimeFormat:TryFormat[ushort](System.DateTime,System.Span`1[ushort],byref,System.ReadOnlySpan`1[ushort],System.IFormatProvider,System.TimeSpan):ubyte
        call     [rax]System.DateTimeFormat:TryFormat[ushort](System.DateTime,System.Span`1[ushort],byref,System.ReadOnlySpan`1[ushort],System.IFormatProvider,System.TimeSpan):ubyte
        test     eax, eax
-       je       SHORT G_M8366_IG35
+       je       SHORT G_M8366_IG40
 						;; size=110 bbWeight=4 PerfScore 85.00
-G_M8366_IG34:
+G_M8366_IG39:
        mov      edi, dword ptr [rbp-0x40]
        add      edi, dword ptr [rbp-0x90]
        mov      dword ptr [rbp-0x40], edi
-       jmp      G_M8366_IG38
+       jmp      G_M8366_IG43
 						;; size=17 bbWeight=2 PerfScore 12.00
-G_M8366_IG35:
+G_M8366_IG40:
        mov      rdi, qword ptr [rbp-0x88]
        mov      rcx, 0xD1FFAB1E
        mov      rdx, r12
        mov      rsi, 0xD1FFAB1E      ; 'MM:dd:yyyy'
 
        mov      rax, 0xD1FFAB1E      ; code for System.DateTimeFormat:Format(System.DateTime,System.String,System.IFormatProvider,System.TimeSpan):System.String
        call     [rax]System.DateTimeFormat:Format(System.DateTime,System.String,System.IFormatProvider,System.TimeSpan):System.String
        mov      r12, rax
        test     r12, r12
-       je       G_M8366_IG38
+       je       G_M8366_IG43
        mov      esi, dword ptr [rbp-0x40]
        mov      eax, dword ptr [r12+0x08]
        mov      dword ptr [rbp-0xE8], eax
        cmp      eax, 1
-       jne      SHORT G_M8366_IG36
+       jne      SHORT G_M8366_IG41
        cmp      esi, dword ptr [rbp-0x30]
-       jae      SHORT G_M8366_IG36
+       jae      SHORT G_M8366_IG41
        cmp      esi, dword ptr [rbp-0x30]
-       jae      G_M8366_IG75
+       jae      G_M8366_IG89
        mov      rax, bword ptr [rbp-0x38]
        mov      edi, esi
        movzx    rcx, word  ptr [r12+0x0C]
        mov      word  ptr [rax+2*rdi], cx
        inc      esi
        mov      dword ptr [rbp-0x40], esi
-       jmp      SHORT G_M8366_IG38
+       jmp      SHORT G_M8366_IG43
 						;; size=110 bbWeight=2 PerfScore 50.50
-G_M8366_IG36:
+G_M8366_IG41:
        mov      ecx, dword ptr [rbp-0x40]
        mov      dword ptr [rbp-0x94], ecx
        mov      esi, dword ptr [rbp-0x30]
        sub      esi, eax
        cmp      esi, ecx
-       jge      SHORT G_M8366_IG37
+       jge      SHORT G_M8366_IG42
        mov      esi, eax
        lea      rdi, [rbp-0x48]
        mov      rdx, 0xD1FFAB1E      ; code for System.Text.ValueStringBuilder:Grow(int):this
        call     [rdx]System.Text.ValueStringBuilder:Grow(int):this
        mov      eax, dword ptr [rbp-0xE8]
 						;; size=42 bbWeight=2 PerfScore 19.00
-G_M8366_IG37:
+G_M8366_IG42:
        mov      ecx, dword ptr [rbp-0x94]
        cmp      ecx, dword ptr [rbp-0x30]
-       ja       G_M8366_IG77
+       ja       G_M8366_IG91
        mov      rdx, bword ptr [rbp-0x38]
        mov      edi, ecx
        lea      rdi, bword ptr [rdx+2*rdi]
        mov      edx, dword ptr [rbp-0x30]
        sub      edx, ecx
        cmp      eax, edx
-       ja       G_M8366_IG76
+       ja       G_M8366_IG90
        lea      rsi, bword ptr [r12+0x0C]
        mov      edx, eax
        add      rdx, rdx
        mov      rcx, 0xD1FFAB1E      ; code for System.Buffer:Memmove(byref,byref,ulong)
        call     [rcx]System.Buffer:Memmove(byref,byref,ulong)
        mov      r12d, dword ptr [rbp-0xE8]
        add      r12d, dword ptr [rbp-0x40]
        mov      dword ptr [rbp-0x40], r12d
 						;; size=75 bbWeight=2 PerfScore 33.00
-G_M8366_IG38:
+G_M8366_IG43:
        mov      edi, dword ptr [rbp-0x40]
        mov      rsi, bword ptr [rbp-0x38]
        mov      eax, dword ptr [rbp-0x30]
        cmp      edi, eax
-       jae      SHORT G_M8366_IG40
+       jae      SHORT G_M8366_IG45
 						;; size=14 bbWeight=4 PerfScore 17.00
-G_M8366_IG39:
+G_M8366_IG44:
        mov      eax, edi
        mov      word  ptr [rsi+2*rax], 59
        inc      edi
        mov      dword ptr [rbp-0x40], edi
-       jmp      SHORT G_M8366_IG41
+       jmp      SHORT G_M8366_IG46
 						;; size=15 bbWeight=2 PerfScore 9.00
-G_M8366_IG40:
+G_M8366_IG45:
        lea      rdi, [rbp-0x48]
        mov      esi, 59
        mov      rax, 0xD1FFAB1E      ; code for System.Text.ValueStringBuilder:GrowAndAppend(ushort):this
        call     [rax]System.Text.ValueStringBuilder:GrowAndAppend(ushort):this
 						;; size=21 bbWeight=2 PerfScore 8.00
-G_M8366_IG41:
+G_M8366_IG46:
        mov      rdi, qword ptr [r13+0x20]
        vxorps   xmm0, xmm0, xmm0
        vcvtsi2sd xmm0, xmm0, rdi
        vdivsd   xmm0, xmm0, qword ptr [reloc @RWD00]
        vmovsd   qword ptr [rbp-0xA0], xmm0
        mov      r12, r14
        lea      rdi, bword ptr [rbp-0xA0]
        mov      eax, dword ptr [rbp-0x40]
        cmp      eax, dword ptr [rbp-0x30]
-       ja       G_M8366_IG77
+       ja       G_M8366_IG91
        mov      rcx, bword ptr [rbp-0x38]
        mov      edx, eax
        lea      rcx, bword ptr [rcx+2*rdx]
        mov      edx, dword ptr [rbp-0x30]
        sub      edx, eax
        mov      eax, edx
        mov      bword ptr [rbp-0x110], rcx
        mov      dword ptr [rbp-0xDC], eax
        xor      rdx, rdx
        mov      bword ptr [rbp-0x108], rdx
        vmovsd   xmm0, qword ptr [rdi]
        vmovsd   qword ptr [rbp-0xB0], xmm0
+       test     r12, r12
+       je       SHORT G_M8366_IG48
+						;; size=107 bbWeight=4 PerfScore 163.33
+G_M8366_IG47:
        mov      rdi, r12
        mov      rsi, 0xD1FFAB1E      ; code for System.Globalization.NumberFormatInfo:<GetInstance>g__GetProviderNonNull|59_0(System.IFormatProvider):System.Globalization.NumberFormatInfo
        call     [rsi]System.Globalization.NumberFormatInfo:<GetInstance>g__GetProviderNonNull|59_0(System.IFormatProvider):System.Globalization.NumberFormatInfo
-       mov      rdx, rax
+       jmp      SHORT G_M8366_IG49
+						;; size=17 bbWeight=2 PerfScore 11.00
+G_M8366_IG48:
+       mov      rdi, 0xD1FFAB1E      ; code for System.Globalization.NumberFormatInfo:get_CurrentInfo():System.Globalization.NumberFormatInfo
+       call     [rdi]System.Globalization.NumberFormatInfo:get_CurrentInfo():System.Globalization.NumberFormatInfo
+						;; size=12 bbWeight=2 PerfScore 6.50
+G_M8366_IG49:
        mov      rcx, bword ptr [rbp-0x110]
        mov      r8d, dword ptr [rbp-0xDC]
        mov      rdi, bword ptr [rbp-0x108]
        xor      esi, esi
        lea      r9, [rbp-0xA8]
        vmovsd   xmm0, qword ptr [rbp-0xB0]
+       mov      rdx, rax
        mov      rax, 0xD1FFAB1E      ; code for System.Number:TryFormatDouble[ushort](double,System.ReadOnlySpan`1[ushort],System.Globalization.NumberFormatInfo,System.Span`1[ushort],byref):ubyte
        call     [rax]System.Number:TryFormatDouble[ushort](double,System.ReadOnlySpan`1[ushort],System.Globalization.NumberFormatInfo,System.Span`1[ushort],byref):ubyte
        test     eax, eax
-       je       SHORT G_M8366_IG43
-						;; size=174 bbWeight=4 PerfScore 218.33
-G_M8366_IG42:
+       je       SHORT G_M8366_IG51
+						;; size=57 bbWeight=4 PerfScore 46.00
+G_M8366_IG50:
        mov      edi, dword ptr [rbp-0x40]
        add      edi, dword ptr [rbp-0xA8]
        mov      dword ptr [rbp-0x40], edi
-       jmp      SHORT G_M8366_IG45
-						;; size=14 bbWeight=2 PerfScore 12.00
-G_M8366_IG43:
+       jmp      G_M8366_IG55
+						;; size=17 bbWeight=2 PerfScore 12.00
+G_M8366_IG51:
        vmovsd   xmm0, qword ptr [rbp-0xA0]
        vmovsd   qword ptr [rbp-0xB8], xmm0
+       test     r12, r12
+       je       SHORT G_M8366_IG52
        mov      rdi, r12
        mov      rax, 0xD1FFAB1E      ; code for System.Globalization.NumberFormatInfo:<GetInstance>g__GetProviderNonNull|59_0(System.IFormatProvider):System.Globalization.NumberFormatInfo
        call     [rax]System.Globalization.NumberFormatInfo:<GetInstance>g__GetProviderNonNull|59_0(System.IFormatProvider):System.Globalization.NumberFormatInfo
-       mov      rsi, rax
+       jmp      SHORT G_M8366_IG53
+						;; size=38 bbWeight=2 PerfScore 21.50
+G_M8366_IG52:
+       mov      rax, 0xD1FFAB1E      ; code for System.Globalization.NumberFormatInfo:get_CurrentInfo():System.Globalization.NumberFormatInfo
+       call     [rax]System.Globalization.NumberFormatInfo:get_CurrentInfo():System.Globalization.NumberFormatInfo
+						;; size=12 bbWeight=2 PerfScore 6.50
+G_M8366_IG53:
        vmovsd   xmm0, qword ptr [rbp-0xB8]
+       mov      rsi, rax
        xor      rdi, rdi
        mov      rax, 0xD1FFAB1E      ; code for System.Number:FormatDouble(double,System.String,System.Globalization.NumberFormatInfo):System.String
        call     [rax]System.Number:FormatDouble(double,System.String,System.Globalization.NumberFormatInfo):System.String
        test     rax, rax
-       je       SHORT G_M8366_IG45
+       je       SHORT G_M8366_IG55
        mov      edi, dword ptr [rbp-0x40]
        cmp      dword ptr [rax+0x08], 1
-       jne      SHORT G_M8366_IG44
+       jne      SHORT G_M8366_IG54
        cmp      edi, dword ptr [rbp-0x30]
-       jae      SHORT G_M8366_IG44
+       jae      SHORT G_M8366_IG54
        cmp      edi, dword ptr [rbp-0x30]
-       jae      G_M8366_IG75
+       jae      G_M8366_IG89
        mov      rsi, bword ptr [rbp-0x38]
        mov      ecx, edi
        movzx    rax, word  ptr [rax+0x0C]
        mov      word  ptr [rsi+2*rcx], ax
        inc      edi
        mov      dword ptr [rbp-0x40], edi
-       jmp      SHORT G_M8366_IG45
-						;; size=105 bbWeight=2 PerfScore 68.00
-G_M8366_IG44:
+       jmp      SHORT G_M8366_IG55
+						;; size=74 bbWeight=2 PerfScore 53.00
+G_M8366_IG54:
        lea      rdi, [rbp-0x48]
        mov      rsi, rax
        mov      rax, 0xD1FFAB1E      ; code for System.Text.ValueStringBuilder:AppendSlow(System.String):this
        call     [rax]System.Text.ValueStringBuilder:AppendSlow(System.String):this
 						;; size=19 bbWeight=2 PerfScore 8.00
-G_M8366_IG45:
+G_M8366_IG55:
        mov      edi, dword ptr [rbp-0x40]
        mov      rsi, bword ptr [rbp-0x38]
        mov      eax, dword ptr [rbp-0x30]
        cmp      edi, eax
-       jae      SHORT G_M8366_IG47
+       jae      SHORT G_M8366_IG57
 						;; size=14 bbWeight=4 PerfScore 17.00
-G_M8366_IG46:
+G_M8366_IG56:
        mov      eax, edi
        mov      word  ptr [rsi+2*rax], 59
        inc      edi
        mov      dword ptr [rbp-0x40], edi
-       jmp      SHORT G_M8366_IG48
+       jmp      SHORT G_M8366_IG58
 						;; size=15 bbWeight=2 PerfScore 9.00
-G_M8366_IG47:
+G_M8366_IG57:
        lea      rdi, [rbp-0x48]
        mov      esi, 59
        mov      rax, 0xD1FFAB1E      ; code for System.Text.ValueStringBuilder:GrowAndAppend(ushort):this
        call     [rax]System.Text.ValueStringBuilder:GrowAndAppend(ushort):this
 						;; size=21 bbWeight=2 PerfScore 8.00
-G_M8366_IG48:
+G_M8366_IG58:
        lea      rdi, bword ptr [r13+0x28]
        vmovdqu  xmm0, xmmword ptr [rdi]
        vmovdqu  xmmword ptr [rsp], xmm0
        mov      rax, qword ptr [rdi+0x10]
        mov      qword ptr [rsp+0x10], rax
        lea      rdi, [rbp-0x48]
        mov      rax, 0xD1FFAB1E      ; code for System.TimeZoneInfo+StringSerializer:SerializeTransitionTime(System.TimeZoneInfo+TransitionTime,byref)
        call     [rax]System.TimeZoneInfo+StringSerializer:SerializeTransitionTime(System.TimeZoneInfo+TransitionTime,byref)
        mov      edi, dword ptr [rbp-0x40]
        mov      rsi, bword ptr [rbp-0x38]
        mov      eax, dword ptr [rbp-0x30]
        cmp      edi, eax
-       jae      SHORT G_M8366_IG50
+       jae      SHORT G_M8366_IG60
 						;; size=52 bbWeight=4 PerfScore 66.00
-G_M8366_IG49:
+G_M8366_IG59:
        mov      eax, edi
        mov      word  ptr [rsi+2*rax], 59
        inc      edi
        mov      dword ptr [rbp-0x40], edi
-       jmp      SHORT G_M8366_IG51
+       jmp      SHORT G_M8366_IG61
 						;; size=15 bbWeight=2 PerfScore 9.00
-G_M8366_IG50:
+G_M8366_IG60:
        lea      rdi, [rbp-0x48]
        mov      esi, 59
        mov      rax, 0xD1FFAB1E      ; code for System.Text.ValueStringBuilder:GrowAndAppend(ushort):this
        call     [rax]System.Text.ValueStringBuilder:GrowAndAppend(ushort):this
 						;; size=21 bbWeight=2 PerfScore 8.00
-G_M8366_IG51:
+G_M8366_IG61:
        lea      rdi, bword ptr [r13+0x40]
        vmovdqu  xmm0, xmmword ptr [rdi]
        vmovdqu  xmmword ptr [rsp], xmm0
        mov      rax, qword ptr [rdi+0x10]
        mov      qword ptr [rsp+0x10], rax
        lea      rdi, [rbp-0x48]
        mov      rax, 0xD1FFAB1E      ; code for System.TimeZoneInfo+StringSerializer:SerializeTransitionTime(System.TimeZoneInfo+TransitionTime,byref)
        call     [rax]System.TimeZoneInfo+StringSerializer:SerializeTransitionTime(System.TimeZoneInfo+TransitionTime,byref)
        mov      edi, dword ptr [rbp-0x40]
        mov      rsi, bword ptr [rbp-0x38]
        mov      eax, dword ptr [rbp-0x30]
        cmp      edi, eax
-       jae      SHORT G_M8366_IG53
+       jae      SHORT G_M8366_IG63
 						;; size=52 bbWeight=4 PerfScore 66.00
-G_M8366_IG52:
+G_M8366_IG62:
        mov      eax, edi
        mov      word  ptr [rsi+2*rax], 59
        inc      edi
        mov      dword ptr [rbp-0x40], edi
-       jmp      SHORT G_M8366_IG54
+       jmp      SHORT G_M8366_IG64
 						;; size=15 bbWeight=2 PerfScore 9.00
-G_M8366_IG53:
+G_M8366_IG63:
        lea      rdi, [rbp-0x48]
        mov      esi, 59
        mov      rax, 0xD1FFAB1E      ; code for System.Text.ValueStringBuilder:GrowAndAppend(ushort):this
        call     [rax]System.Text.ValueStringBuilder:GrowAndAppend(ushort):this
 						;; size=21 bbWeight=2 PerfScore 8.00
-G_M8366_IG54:
+G_M8366_IG64:
        mov      rdi, qword ptr [r13+0x58]
        test     rdi, rdi
-       je       G_M8366_IG60
+       je       G_M8366_IG74
 						;; size=13 bbWeight=4 PerfScore 13.00
-G_M8366_IG55:
+G_M8366_IG65:
        mov      rdi, qword ptr [r13+0x58]
        vxorps   xmm0, xmm0, xmm0
        vcvtsi2sd xmm0, xmm0, rdi
        vdivsd   xmm0, xmm0, qword ptr [reloc @RWD00]
        vmovsd   qword ptr [rbp-0xC0], xmm0
        mov      r12, r14
        lea      rdi, bword ptr [rbp-0xC0]
        mov      eax, dword ptr [rbp-0x40]
        cmp      eax, dword ptr [rbp-0x30]
-       ja       G_M8366_IG77
+       ja       G_M8366_IG91
        mov      rcx, bword ptr [rbp-0x38]
        mov      edx, eax
        lea      rcx, bword ptr [rcx+2*rdx]
        mov      edx, dword ptr [rbp-0x30]
        sub      edx, eax
        mov      eax, edx
        mov      bword ptr [rbp-0x120], rcx
        mov      dword ptr [rbp-0xE0], eax
        xor      rdx, rdx
        mov      bword ptr [rbp-0x118], rdx
        vmovsd   xmm0, qword ptr [rdi]
        vmovsd   qword ptr [rbp-0xD0], xmm0
+       test     r12, r12
+       je       SHORT G_M8366_IG66
        mov      rdi, r12
        mov      rsi, 0xD1FFAB1E      ; code for System.Globalization.NumberFormatInfo:<GetInstance>g__GetProviderNonNull|59_0(System.IFormatProvider):System.Globalization.NumberFormatInfo
        call     [rsi]System.Globalization.NumberFormatInfo:<GetInstance>g__GetProviderNonNull|59_0(System.IFormatProvider):System.Globalization.NumberFormatInfo
-       mov      rdx, rax
+       jmp      SHORT G_M8366_IG67
+						;; size=124 bbWeight=2 PerfScore 92.67
+G_M8366_IG66:
+       mov      rdi, 0xD1FFAB1E      ; code for System.Globalization.NumberFormatInfo:get_CurrentInfo():System.Globalization.NumberFormatInfo
+       call     [rdi]System.Globalization.NumberFormatInfo:get_CurrentInfo():System.Globalization.NumberFormatInfo
+						;; size=12 bbWeight=2 PerfScore 6.50
+G_M8366_IG67:
        mov      rcx, bword ptr [rbp-0x120]
        mov      r8d, dword ptr [rbp-0xE0]
        mov      rdi, bword ptr [rbp-0x118]
        xor      esi, esi
        lea      r9, [rbp-0xC8]
        vmovsd   xmm0, qword ptr [rbp-0xD0]
+       mov      rdx, rax
        mov      rax, 0xD1FFAB1E      ; code for System.Number:TryFormatDouble[ushort](double,System.ReadOnlySpan`1[ushort],System.Globalization.NumberFormatInfo,System.Span`1[ushort],byref):ubyte
        call     [rax]System.Number:TryFormatDouble[ushort](double,System.ReadOnlySpan`1[ushort],System.Globalization.NumberFormatInfo,System.Span`1[ushort],byref):ubyte
        test     eax, eax
-       je       SHORT G_M8366_IG56
+       je       SHORT G_M8366_IG68
        mov      edi, dword ptr [rbp-0x40]
        add      edi, dword ptr [rbp-0xC8]
        mov      dword ptr [rbp-0x40], edi
-       jmp      SHORT G_M8366_IG58
-						;; size=188 bbWeight=2 PerfScore 121.17
-G_M8366_IG56:
+       jmp      G_M8366_IG72
+						;; size=74 bbWeight=2 PerfScore 35.00
+G_M8366_IG68:
        vmovsd   xmm0, qword ptr [rbp-0xC0]
        vmovsd   qword ptr [rbp-0xD8], xmm0
+       test     r12, r12
+       je       SHORT G_M8366_IG69
        mov      rdi, r12
        mov      rax, 0xD1FFAB1E      ; code for System.Globalization.NumberFormatInfo:<GetInstance>g__GetProviderNonNull|59_0(System.IFormatProvider):System.Globalization.NumberFormatInfo
        call     [rax]System.Globalization.NumberFormatInfo:<GetInstance>g__GetProviderNonNull|59_0(System.IFormatProvider):System.Globalization.NumberFormatInfo
-       mov      rsi, rax
+       jmp      SHORT G_M8366_IG70
+						;; size=38 bbWeight=2 PerfScore 21.50
+G_M8366_IG69:
+       mov      rax, 0xD1FFAB1E      ; code for System.Globalization.NumberFormatInfo:get_CurrentInfo():System.Globalization.NumberFormatInfo
+       call     [rax]System.Globalization.NumberFormatInfo:get_CurrentInfo():System.Globalization.NumberFormatInfo
+						;; size=12 bbWeight=2 PerfScore 6.50
+G_M8366_IG70:
        vmovsd   xmm0, qword ptr [rbp-0xD8]
+       mov      rsi, rax
        xor      rdi, rdi
        mov      rax, 0xD1FFAB1E      ; code for System.Number:FormatDouble(double,System.String,System.Globalization.NumberFormatInfo):System.String
        call     [rax]System.Number:FormatDouble(double,System.String,System.Globalization.NumberFormatInfo):System.String
        test     rax, rax
-       je       SHORT G_M8366_IG58
+       je       SHORT G_M8366_IG72
        mov      edi, dword ptr [rbp-0x40]
        cmp      dword ptr [rax+0x08], 1
-       jne      SHORT G_M8366_IG57
+       jne      SHORT G_M8366_IG71
        cmp      edi, dword ptr [rbp-0x30]
-       jae      SHORT G_M8366_IG57
+       jae      SHORT G_M8366_IG71
        cmp      edi, dword ptr [rbp-0x30]
-       jae      G_M8366_IG75
+       jae      G_M8366_IG89
        mov      rsi, bword ptr [rbp-0x38]
        mov      ecx, edi
        movzx    rax, word  ptr [rax+0x0C]
        mov      word  ptr [rsi+2*rcx], ax
        inc      edi
        mov      dword ptr [rbp-0x40], edi
-       jmp      SHORT G_M8366_IG58
-						;; size=105 bbWeight=2 PerfScore 68.00
-G_M8366_IG57:
+       jmp      SHORT G_M8366_IG72
+						;; size=74 bbWeight=2 PerfScore 53.00
+G_M8366_IG71:
        lea      rdi, [rbp-0x48]
        mov      rsi, rax
        mov      rax, 0xD1FFAB1E      ; code for System.Text.ValueStringBuilder:AppendSlow(System.String):this
        call     [rax]System.Text.ValueStringBuilder:AppendSlow(System.String):this
 						;; size=19 bbWeight=2 PerfScore 8.00
-G_M8366_IG58:
+G_M8366_IG72:
        mov      edi, dword ptr [rbp-0x40]
        mov      rsi, bword ptr [rbp-0x38]
        mov      eax, dword ptr [rbp-0x30]
        cmp      edi, eax
-       jae      SHORT G_M8366_IG59
+       jae      SHORT G_M8366_IG73
        mov      eax, edi
        mov      word  ptr [rsi+2*rax], 59
        inc      edi
        mov      dword ptr [rbp-0x40], edi
-       jmp      SHORT G_M8366_IG60
+       jmp      SHORT G_M8366_IG74
 						;; size=29 bbWeight=2 PerfScore 17.50
-G_M8366_IG59:
+G_M8366_IG73:
        lea      rdi, [rbp-0x48]
        mov      esi, 59
        mov      rax, 0xD1FFAB1E      ; code for System.Text.ValueStringBuilder:GrowAndAppend(ushort):this
        call     [rax]System.Text.ValueStringBuilder:GrowAndAppend(ushort):this
 						;; size=21 bbWeight=2 PerfScore 8.00
-G_M8366_IG60:
+G_M8366_IG74:
        cmp      byte  ptr [r13+0x08], 0
-       je       SHORT G_M8366_IG65
+       je       SHORT G_M8366_IG79
 						;; size=7 bbWeight=4 PerfScore 16.00
-G_M8366_IG61:
+G_M8366_IG75:
        mov      edi, dword ptr [rbp-0x40]
        mov      rsi, bword ptr [rbp-0x38]
        mov      eax, dword ptr [rbp-0x30]
        cmp      edi, eax
-       jae      SHORT G_M8366_IG62
+       jae      SHORT G_M8366_IG76
        mov      eax, edi
        mov      word  ptr [rsi+2*rax], 49
        inc      edi
        mov      dword ptr [rbp-0x40], edi
-       jmp      SHORT G_M8366_IG63
+       jmp      SHORT G_M8366_IG77
 						;; size=29 bbWeight=2 PerfScore 17.50
-G_M8366_IG62:
+G_M8366_IG76:
        lea      rdi, [rbp-0x48]
        mov      esi, 49
        mov      rax, 0xD1FFAB1E      ; code for System.Text.ValueStringBuilder:GrowAndAppend(ushort):this
        call     [rax]System.Text.ValueStringBuilder:GrowAndAppend(ushort):this
 						;; size=21 bbWeight=2 PerfScore 8.00
-G_M8366_IG63:
+G_M8366_IG77:
        mov      edi, dword ptr [rbp-0x40]
        mov      rsi, bword ptr [rbp-0x38]
        mov      eax, dword ptr [rbp-0x30]
        cmp      edi, eax
-       jae      SHORT G_M8366_IG64
+       jae      SHORT G_M8366_IG78
        mov      eax, edi
        mov      word  ptr [rsi+2*rax], 59
        inc      edi
        mov      dword ptr [rbp-0x40], edi
-       jmp      SHORT G_M8366_IG65
+       jmp      SHORT G_M8366_IG79
 						;; size=29 bbWeight=2 PerfScore 17.50
-G_M8366_IG64:
+G_M8366_IG78:
        lea      rdi, [rbp-0x48]
        mov      esi, 59
        mov      rax, 0xD1FFAB1E      ; code for System.Text.ValueStringBuilder:GrowAndAppend(ushort):this
        call     [rax]System.Text.ValueStringBuilder:GrowAndAppend(ushort):this
 						;; size=21 bbWeight=2 PerfScore 8.00
-G_M8366_IG65:
+G_M8366_IG79:
        mov      edi, dword ptr [rbp-0x40]
        mov      rsi, bword ptr [rbp-0x38]
        mov      eax, dword ptr [rbp-0x30]
        cmp      edi, eax
-       jae      SHORT G_M8366_IG67
+       jae      SHORT G_M8366_IG81
 						;; size=14 bbWeight=4 PerfScore 17.00
-G_M8366_IG66:
+G_M8366_IG80:
        mov      eax, edi
        mov      word  ptr [rsi+2*rax], 93
        inc      edi
        mov      dword ptr [rbp-0x40], edi
-       jmp      SHORT G_M8366_IG68
+       jmp      SHORT G_M8366_IG82
 						;; size=15 bbWeight=2 PerfScore 9.00
-G_M8366_IG67:
+G_M8366_IG81:
        lea      rdi, [rbp-0x48]
        mov      esi, 93
        mov      rax, 0xD1FFAB1E      ; code for System.Text.ValueStringBuilder:GrowAndAppend(ushort):this
        call     [rax]System.Text.ValueStringBuilder:GrowAndAppend(ushort):this
 						;; size=21 bbWeight=2 PerfScore 8.00
-G_M8366_IG68:
+G_M8366_IG82:
        inc      r15d
        cmp      dword ptr [rbx+0x08], r15d
-       jg       G_M8366_IG22
+       jg       G_M8366_IG27
 						;; size=13 bbWeight=4 PerfScore 17.00
-G_M8366_IG69:
+G_M8366_IG83:
        mov      edi, dword ptr [rbp-0x40]
        mov      rsi, bword ptr [rbp-0x38]
        mov      eax, dword ptr [rbp-0x30]
        cmp      edi, eax
-       jae      SHORT G_M8366_IG74
+       jae      SHORT G_M8366_IG88
 						;; size=14 bbWeight=1 PerfScore 4.25
-G_M8366_IG70:
+G_M8366_IG84:
        mov      eax, edi
        mov      word  ptr [rsi+2*rax], 59
        inc      edi
        mov      dword ptr [rbp-0x40], edi
 						;; size=13 bbWeight=0.50 PerfScore 1.25
-G_M8366_IG71:
+G_M8366_IG85:
        lea      rdi, [rbp-0x48]
        mov      rax, 0xD1FFAB1E      ; code for System.Text.ValueStringBuilder:ToString():System.String:this
        call     [rax]System.Text.ValueStringBuilder:ToString():System.String:this
        cmp      qword ptr [rbp-0x130], 0xD1FFAB1E
-       je       SHORT G_M8366_IG72
+       je       SHORT G_M8366_IG86
        call     CORINFO_HELP_FAIL_FAST
 						;; size=34 bbWeight=1 PerfScore 7.75
-G_M8366_IG72:
+G_M8366_IG86:
        nop      
 						;; size=1 bbWeight=1 PerfScore 0.25
-G_M8366_IG73:
+G_M8366_IG87:
        lea      rsp, [rbp-0x28]
        pop      rbx
        pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
 						;; size=15 bbWeight=1 PerfScore 4.50
-G_M8366_IG74:
+G_M8366_IG88:
        lea      rdi, [rbp-0x48]
        mov      esi, 59
        mov      rax, 0xD1FFAB1E      ; code for System.Text.ValueStringBuilder:GrowAndAppend(ushort):this
        call     [rax]System.Text.ValueStringBuilder:GrowAndAppend(ushort):this
-       jmp      SHORT G_M8366_IG71
+       jmp      SHORT G_M8366_IG85
 						;; size=23 bbWeight=0.50 PerfScore 3.00
-G_M8366_IG75:
+G_M8366_IG89:
        call     CORINFO_HELP_RNGCHKFAIL
 						;; size=5 bbWeight=0 PerfScore 0.00
-G_M8366_IG76:
+G_M8366_IG90:
        mov      rax, 0xD1FFAB1E      ; code for System.ThrowHelper:ThrowArgumentException_DestinationTooShort()
        call     [rax]System.ThrowHelper:ThrowArgumentException_DestinationTooShort()
        int3     
 						;; size=13 bbWeight=0 PerfScore 0.00
-G_M8366_IG77:
+G_M8366_IG91:
        mov      rax, 0xD1FFAB1E      ; code for System.ThrowHelper:ThrowArgumentOutOfRangeException()
        call     [rax]System.ThrowHelper:ThrowArgumentOutOfRangeException()
        int3     
 						;; size=13 bbWeight=0 PerfScore 0.00
 RWD00  	dq	41C1E1A300000000h	;    600000000
 
 
-; Total bytes of code 2879, prolog size 59, PerfScore 1874.32, instruction count 706, allocated bytes for code 2879 (MethodHash=f157df51) for method System.TimeZoneInfo+StringSerializer:GetSerializedString(System.TimeZoneInfo):System.String (FullOpts)
+; Total bytes of code 3002, prolog size 59, PerfScore 1939.49, instruction count 736, allocated bytes for code 3002 (MethodHash=f157df51) for method System.TimeZoneInfo+StringSerializer:GetSerializedString(System.TimeZoneInfo):System.String (FullOpts)
99 (23.40 % of base) - System.Globalization.CultureData:GetNativeDigits():System.String[]:this
 ; Assembly listing for method System.Globalization.CultureData:GetNativeDigits():System.String[]: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; 11 single block inlinees; 2 inlinees without PGO data
 ; Final local variable assignments
 ;
 ;  V00 this         [V00,T12] (  4,  4   )     ref  ->  rdi         this class-hnd single-def <System.Globalization.CultureData>
-;  V01 loc0         [V01,T11] (  5,  9.96)     ref  ->  r15         class-hnd <System.String[]>
-;  V02 loc1         [V02,T02] ( 10, 28.46)     ref  ->  r14         class-hnd exact single-def <System.String>
+;  V01 loc0         [V01,T11] (  6, 10   )     ref  ->  r15         class-hnd <System.String[]>
+;  V02 loc1         [V02,T02] ( 11, 28.50)     ref  ->  r14         class-hnd exact single-def <System.String>
 ;  V03 loc2         [V03,T00] ( 11, 85   )     int  ->  r12        
 ;  V04 loc3         [V04,T09] (  4, 12.50)     int  ->  rsi        
 ;  V05 loc4         [V05,T08] (  5, 13   )     int  ->  [rbp-0x2C] 
-;  V06 loc5         [V06,T04] (  6, 20.30)     int  ->  r12        
+;  V06 loc5         [V06,T04] ( 12, 20.54)     int  ->  r12        
 ;# V07 OutArgs      [V07    ] (  1,  1   )  struct ( 0) [rsp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
 ;* V08 tmp1         [V08    ] (  0,  0   )     ref  ->  zero-ref    single-def "spilling varStr"
 ;  V09 tmp2         [V09,T15] (  2,  2   )     int  ->  rdi         "spilling unroll qmark"
 ;* V10 tmp3         [V10    ] (  0,  0   )     ref  ->  zero-ref    single-def "spilling varStr"
-;  V11 tmp4         [V11,T17] (  2,  2   )     int  ->  rdi         "spilling unroll qmark"
+;  V11 tmp4         [V11,T16] (  2,  2   )     int  ->  rdi         "spilling unroll qmark"
 ;  V12 tmp5         [V12,T03] (  3, 24   )     int  ->  [rbp-0x30]  spill-single-def "impSpillLclRefs"
-;  V13 tmp6         [V13,T05] (  2, 16   )     ref  ->  rax         class-hnd exact "Strict ordering of exceptions for Array store" <System.String>
-;  V14 tmp7         [V14,T06] (  2, 16   )     int  ->  r12         "dup spill"
+;  V13 tmp6         [V13,T06] (  2, 16   )     ref  ->  rax         class-hnd exact "Strict ordering of exceptions for Array store" <System.String>
+;  V14 tmp7         [V14,T07] (  2, 16   )     int  ->  r12         "dup spill"
 ;* V15 tmp8         [V15    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Strict ordering of exceptions for Array store" <System.String>
 ;* V16 tmp9         [V16    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline return value spill temp" <System.String>
-;  V17 tmp10        [V17,T16] (  2,  2   )   byref  ->  rdi         single-def "Inlining Arg"
+;  V17 tmp10        [V17,T17] (  2,  2   )   byref  ->  rdi         single-def "Inlining Arg"
 ;  V18 tmp11        [V18,T18] (  2,  2   )     int  ->  rdx         "Inlining Arg"
 ;  V19 tmp12        [V19,T19] (  2,  1   )     int  ->  r12         "Inline return value spill temp"
 ;* V20 tmp13        [V20,T20] (  0,  0   )   short  ->  zero-ref    ld-addr-op "Inlining Arg"
 ;* V21 tmp14        [V21    ] (  0,  0   )   short  ->  zero-ref    ld-addr-op "Inlining Arg"
 ;* V22 tmp15        [V22    ] (  0,  0   )  ushort  ->  zero-ref    "Inlining Arg"
-;  V23 tmp16        [V23,T07] (  2, 15.84)  ushort  ->  r13         "Inlining Arg"
+;  V23 tmp16        [V23,T05] (  4, 16   )  ushort  ->  rbx         "Inlining Arg"
 ;* V24 tmp17        [V24    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inline return value spill temp" <System.String>
-;  V25 tmp18        [V25,T10] (  3, 11.88)     ref  ->  rax         class-hnd exact "Inline stloc first use temp" <System.String>
+;  V25 tmp18        [V25,T10] (  6, 12   )     ref  ->  rax         class-hnd exact "Inline stloc first use temp" <System.String>
 ;  V26 tmp19        [V26,T13] (  3,  4   )     ref  ->  rax         "Single return block return value"
-;  V27 cse0         [V27,T14] (  3,  2.50)     ref  ->  rbx         "CSE - moderate"
-;  V28 cse1         [V28,T01] (  6, 39   )     int  ->  r13         "CSE - aggressive"
-;  V29 rat0         [V29,T22] (  3,  3   )  simd32  ->  mm0         "ReplaceWithLclVar is creating a new local variable"
-;  V30 rat1         [V30,T21] (  3,  3   )  simd16  ->  mm0         "ReplaceWithLclVar is creating a new local variable"
+;  V27 cse0         [V27,T14] (  4,  3.50)     ref  ->  rbx         "CSE - moderate"
+;  V28 cse1         [V28,T01] (  9, 40.04)     int  ->  r13         "CSE - aggressive"
+;  V29 rat0         [V29,T21] (  3,  3   )  simd32  ->  mm0         "ReplaceWithLclVar is creating a new local variable"
+;  V30 rat1         [V30,T22] (  3,  3   )  simd16  ->  mm0         "ReplaceWithLclVar is creating a new local variable"
 ;
 ; Lcl frame size = 8
 
 G_M6160_IG01:
        push     rbp
        push     r15
        push     r14
        push     r13
        push     r12
        push     rbx
        push     rax
        vzeroupper 
        lea      rbp, [rsp+0x30]
 						;; size=19 bbWeight=1 PerfScore 8.50
 G_M6160_IG02:
        mov      rsi, 0xD1FFAB1E      ; const ptr
        mov      rbx, gword ptr [rsi]
        mov      r15, rbx
        mov      rsi, gword ptr [rdi+0x10]
        mov      edx, 19
        xor      rcx, rcx
        mov      rax, 0xD1FFAB1E      ; code for System.Globalization.CultureData:IcuGetLocaleInfo(System.String,uint,System.String):System.String:this
        call     [rax]System.Globalization.CultureData:IcuGetLocaleInfo(System.String,uint,System.String):System.String:this
        mov      r14, rax
        mov      r13d, dword ptr [r14+0x08]
-       cmp      r13d, 10
+       cmp      r13d, dword ptr [rbx+0x08]
        jge      SHORT G_M6160_IG04
-						;; size=52 bbWeight=1 PerfScore 11.75
+						;; size=52 bbWeight=1 PerfScore 14.50
 G_M6160_IG03:
        mov      rax, r15
-       jmp      G_M6160_IG16
-       align    [0 bytes for IG10]
-						;; size=8 bbWeight=0.50 PerfScore 1.12
+       jmp      G_M6160_IG19
+       align    [12 bytes for IG13]
+						;; size=20 bbWeight=0.50 PerfScore 1.12
 G_M6160_IG04:
        cmp      r13d, 20
        jl       SHORT G_M6160_IG05
        vmovups  ymm0, ymmword ptr [r14+0x0C]
        vpxor    ymm0, ymm0, ymmword ptr [reloc @RWD00]
        vmovups  ymm1, ymmword ptr [r14+0x14]
        vpxor    ymm1, ymm1, ymmword ptr [reloc @RWD32]
        vpor     ymm0, ymm0, ymm1
        vptest   ymm0, ymm0
        sete     dil
        movzx    rdi, dil
        test     edi, edi
        jne      SHORT G_M6160_IG03
 						;; size=55 bbWeight=0.50 PerfScore 11.54
 G_M6160_IG05:
+       cmp      r13d, 10
+       jl       SHORT G_M6160_IG06
        vmovups  xmm0, xmmword ptr [r14+0x0C]
        vpxor    xmm0, xmm0, xmmword ptr [reloc @RWD64]
        vmovups  xmm1, xmmword ptr [r14+0x10]
        vpxor    xmm1, xmm1, xmmword ptr [reloc @RWD80]
        vpor     xmm0, xmm0, xmm1
        vptest   xmm0, xmm0
        sete     dil
        movzx    rdi, dil
        test     edi, edi
-       jne      SHORT G_M6160_IG03
+       jne      G_M6160_IG03
+						;; size=59 bbWeight=0.50 PerfScore 9.54
+G_M6160_IG06:
        lea      rdi, bword ptr [r14+0x0C]
        mov      edx, r13d
        mov      esi, -1
        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
        mov      r12d, eax
        mov      rdi, 0xD1FFAB1E      ; System.String[]
        mov      esi, 10
        call     CORINFO_HELP_NEWARR_1_OBJ
        mov      r15, rax
        test     r12d, r12d
-       jge      SHORT G_M6160_IG08
+       jge      G_M6160_IG11
        xor      r12d, r12d
-						;; size=107 bbWeight=0.50 PerfScore 12.79
-G_M6160_IG06:
+       cmp      r13d, 10
+       jl       SHORT G_M6160_IG09
+						;; size=68 bbWeight=0.50 PerfScore 4.50
+G_M6160_IG07:
        mov      edi, r12d
-       movzx    r13, word  ptr [r14+2*rdi+0x0C]
+       movzx    rbx, word  ptr [r14+2*rdi+0x0C]
        mov      edi, 1
        call     System.String:FastAllocateString(int):System.String
-       mov      word  ptr [rax+0x0C], r13w
+       mov      word  ptr [rax+0x0C], bx
        mov      edi, r12d
        lea      rdi, bword ptr [r15+8*rdi+0x10]
        mov      rsi, rax
        call     CORINFO_HELP_ASSIGN_REF
        inc      r12d
        cmp      r12d, 10
-       jl       SHORT G_M6160_IG06
-						;; size=49 bbWeight=3.96 PerfScore 33.66
-G_M6160_IG07:
+       jl       SHORT G_M6160_IG07
+						;; size=48 bbWeight=3.96 PerfScore 33.66
+G_M6160_IG08:
        jmp      G_M6160_IG03
 						;; size=5 bbWeight=0.50 PerfScore 1.00
-G_M6160_IG08:
+G_M6160_IG09:
+       cmp      r12d, r13d
+       jae      G_M6160_IG20
+       mov      edi, r12d
+       movzx    rbx, word  ptr [r14+2*rdi+0x0C]
+       mov      edi, 1
+       call     System.String:FastAllocateString(int):System.String
+       mov      word  ptr [rax+0x0C], bx
+       mov      edi, r12d
+       lea      rdi, bword ptr [r15+8*rdi+0x10]
+       mov      rsi, rax
+       call     CORINFO_HELP_ASSIGN_REF
+       inc      r12d
+       cmp      r12d, 10
+       jl       SHORT G_M6160_IG09
+						;; size=57 bbWeight=0.04 PerfScore 0.39
+G_M6160_IG10:
+       jmp      G_M6160_IG03
+						;; size=5 bbWeight=0.50 PerfScore 1.00
+G_M6160_IG11:
        xor      esi, esi
        xor      eax, eax
 						;; size=4 bbWeight=0.50 PerfScore 0.25
-G_M6160_IG09:
+G_M6160_IG12:
        mov      ecx, eax
        mov      dword ptr [rbp-0x30], ecx
        lea      eax, [rcx+0x01]
        mov      dword ptr [rbp-0x2C], eax
        mov      edx, r12d
        sub      edx, esi
        mov      rdi, r14
        mov      r8, 0xD1FFAB1E      ; code for System.String:Substring(int,int):System.String:this
        call     [r8]System.String:Substring(int,int):System.String:this
        mov      edi, dword ptr [rbp-0x30]
        lea      rdi, bword ptr [r15+8*rdi+0x10]
        mov      rsi, rax
        call     CORINFO_HELP_ASSIGN_REF
        inc      r12d
        mov      esi, r12d
-       jmp      SHORT G_M6160_IG11
+       jmp      SHORT G_M6160_IG14
 						;; size=56 bbWeight=4 PerfScore 50.00
-G_M6160_IG10:
+G_M6160_IG13:
        inc      r12d
 						;; size=3 bbWeight=8 PerfScore 2.00
-G_M6160_IG11:
+G_M6160_IG14:
        cmp      r13d, r12d
-       jbe      SHORT G_M6160_IG13
+       jbe      SHORT G_M6160_IG16
 						;; size=5 bbWeight=32 PerfScore 40.00
-G_M6160_IG12:
+G_M6160_IG15:
        mov      eax, r12d
        cmp      word  ptr [r14+2*rax+0x0C], 0xFFFF
-       jne      SHORT G_M6160_IG10
+       jne      SHORT G_M6160_IG13
 						;; size=13 bbWeight=16 PerfScore 68.00
-G_M6160_IG13:
+G_M6160_IG16:
        cmp      r13d, r12d
-       jle      SHORT G_M6160_IG15
+       jle      SHORT G_M6160_IG18
        mov      eax, dword ptr [rbp-0x2C]
        cmp      eax, 10
-       jl       SHORT G_M6160_IG09
+       jl       SHORT G_M6160_IG12
 						;; size=13 bbWeight=4 PerfScore 14.00
-G_M6160_IG14:
+G_M6160_IG17:
        mov      dword ptr [rbp-0x2C], eax
 						;; size=3 bbWeight=2 PerfScore 2.00
-G_M6160_IG15:
+G_M6160_IG18:
        cmp      dword ptr [rbp-0x2C], 10
        jge      G_M6160_IG03
        mov      rax, rbx
 						;; size=13 bbWeight=0.50 PerfScore 1.62
-G_M6160_IG16:
+G_M6160_IG19:
        vzeroupper 
        add      rsp, 8
        pop      rbx
        pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
 						;; size=18 bbWeight=1 PerfScore 5.25
+G_M6160_IG20:
+       call     CORINFO_HELP_RNGCHKFAIL
+       int3     
+						;; size=6 bbWeight=0 PerfScore 0.00
 RWD00  	dq	FFFF0031FFFF0030h, FFFF0033FFFF0032h, FFFF0035FFFF0034h, FFFF0037FFFF0036h
 RWD32  	dq	FFFF0033FFFF0032h, FFFF0035FFFF0034h, FFFF0037FFFF0036h, FFFF0039FFFF0038h
 RWD64  	dq	0033003200310030h, 0037003600350034h
 RWD80  	dq	0035003400330032h, 0039003800370036h
 
 
-; Total bytes of code 423, prolog size 19, PerfScore 305.79, instruction count 114, allocated bytes for code 423 (MethodHash=9ba2e7ef) for method System.Globalization.CultureData:GetNativeDigits():System.String[]:this (FullOpts)
+; Total bytes of code 522, prolog size 19, PerfScore 321.08, instruction count 135, allocated bytes for code 522 (MethodHash=9ba2e7ef) for method System.Globalization.CultureData:GetNativeDigits():System.String[]:this (FullOpts)
63 (14.06 % of base) - System.IO.TextWriter:WriteAsync(ushort[],int,int):System.Threading.Tasks.Task:this
 ; Assembly listing for method System.IO.TextWriter:WriteAsync(ushort[],int,int):System.Threading.Tasks.Task: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; 7 single block inlinees; 5 inlinees without PGO data
 ; Final local variable assignments
 ;
-;  V00 this         [V00,T04] (  3,  3   )     ref  ->  rbx         this class-hnd single-def <System.IO.TextWriter>
-;  V01 arg1         [V01,T05] (  3,  3   )     ref  ->  r15         class-hnd single-def <ushort[]>
-;  V02 arg2         [V02,T06] (  3,  3   )     int  ->  r14         single-def
-;  V03 arg3         [V03,T07] (  3,  3   )     int  ->  r13         single-def
+;  V00 this         [V00,T05] (  3,  3   )     ref  ->  rbx         this class-hnd single-def <System.IO.TextWriter>
+;  V01 arg1         [V01,T06] (  3,  3   )     ref  ->  r15         class-hnd single-def <ushort[]>
+;  V02 arg2         [V02,T07] (  3,  3   )     int  ->  r14         single-def
+;  V03 arg3         [V03,T08] (  3,  3   )     int  ->  r13         single-def
 ;  V04 OutArgs      [V04    ] (  1,  1   )  struct ( 8) [rsp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-;  V05 tmp1         [V05,T09] (  2,  4   )     ref  ->  r12         class-hnd single-def "dup spill" <System.Action`1[System.Object]>
-;* V06 tmp2         [V06,T12] (  0,  0   )     ref  ->  zero-ref    class-hnd exact single-def "impAppendStmt" <System.Threading.Tasks.TaskFactory>
+;  V05 tmp1         [V05,T10] (  2,  4   )     ref  ->  rax         class-hnd single-def "dup spill" <System.Action`1[System.Object]>
+;  V06 tmp2         [V06,T11] (  2,  4   )     ref  ->  r12         class-hnd exact single-def "impAppendStmt" <System.Threading.Tasks.TaskFactory>
 ;* V07 tmp3         [V07    ] (  0,  0   )     ref  ->  zero-ref    single-def
-;  V08 tmp4         [V08,T08] (  5,  4.50)     ref  ->  r12        
-;  V09 tmp5         [V09,T00] (  6, 12   )     ref  ->  [rbp-0x30]  class-hnd exact spill-single-def "NewObj constructor temp" <System.TupleSlim`4[System.IO.TextWriter,ushort[],int,int]>
+;  V08 tmp4         [V08,T09] (  5,  4.50)     ref  ->  [rbp-0x30] 
+;  V09 tmp5         [V09,T00] (  6, 12   )     ref  ->  [rbp-0x38]  class-hnd exact spill-single-def "NewObj constructor temp" <System.TupleSlim`4[System.IO.TextWriter,ushort[],int,int]>
 ;* V10 tmp6         [V10    ] (  0,  0   )  struct ( 8) zero-ref    "impAppendStmt" <System.Threading.CancellationToken>
-;  V11 tmp7         [V11,T03] (  5,  5   )     ref  ->  r12         class-hnd exact single-def "NewObj constructor temp" <System.Action`1[System.Object]>
-;  V12 tmp8         [V12,T11] (  3,  3   )     ref  ->  rsi         class-hnd exact single-def "Inlining Arg" <System.IO.TextWriter+<>c>
+;  V11 tmp7         [V11,T04] (  5,  5   )     ref  ->  [rbp-0x40]  class-hnd exact spill-single-def "NewObj constructor temp" <System.Action`1[System.Object]>
+;  V12 tmp8         [V12,T12] (  3,  3   )     ref  ->  rsi         class-hnd exact single-def "Inlining Arg" <System.IO.TextWriter+<>c>
 ;* V13 tmp9         [V13    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.Threading.CancellationToken>
-;  V14 tmp10        [V14,T10] (  2,  4   )     ref  ->  r15         class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.ThreadPoolTaskScheduler>
+;  V14 tmp10        [V14,T03] (  3,  6   )     ref  ->  r15         class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.ThreadPoolTaskScheduler>
 ;* V15 tmp11        [V15    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline return value spill temp" <System.Threading.Tasks.Task>
 ;* V16 tmp12        [V16    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inline return value spill temp" <System.Threading.Tasks.Task>
 ;  V17 tmp13        [V17,T01] (  7, 11   )     ref  ->  r14         class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.Task>
 ;* V18 tmp14        [V18    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact single-def "Inline stloc first use temp" <System.Threading.Tasks.Task>
-;  V19 tmp15        [V19,T02] (  4,  6   )     ref  ->  r13         class-hnd exact single-def "Inlining Arg" <System.Threading.ExecutionContext>
+;  V19 tmp15        [V19,T02] (  4,  6   )     ref  ->  r12         class-hnd exact single-def "Inlining Arg" <System.Threading.ExecutionContext>
 ;* V20 tmp16        [V20,T13] (  0,  0   )     ref  ->  zero-ref    single-def "field V10._source (fldOffset=0x0)" P-INDEP
 ;* V21 tmp17        [V21    ] (  0,  0   )     ref  ->  zero-ref    single-def "field V13._source (fldOffset=0x0)" P-INDEP
 ;* V22 cse0         [V22,T14] (  0,  0   )    long  ->  zero-ref    "CSE - moderate"
 ;
-; Lcl frame size = 24
+; Lcl frame size = 40
 
 G_M46618_IG01:
        push     rbp
        push     r15
        push     r14
        push     r13
        push     r12
        push     rbx
-       sub      rsp, 24
-       lea      rbp, [rsp+0x40]
+       sub      rsp, 40
+       lea      rbp, [rsp+0x50]
        mov      rbx, rdi
        mov      r15, rsi
        mov      r14d, edx
        mov      r13d, ecx
 						;; size=31 bbWeight=1 PerfScore 7.75
 G_M46618_IG02:
+       mov      rdi, 0xD1FFAB1E      ; const ptr
+       mov      r12, gword ptr [rdi]
        mov      rdi, 0xD1FFAB1E      ; global ptr
        test     byte  ptr [rdi], 1
        je       G_M46618_IG10
-						;; size=19 bbWeight=1 PerfScore 4.25
+						;; size=32 bbWeight=1 PerfScore 6.50
 G_M46618_IG03:
        mov      rdi, 0xD1FFAB1E      ; data for System.IO.TextWriter+<>c:<>9__62_0
-       mov      r12, gword ptr [rdi]
-       test     r12, r12
+       mov      rax, gword ptr [rdi]
+       test     rax, rax
+       mov      gword ptr [rbp-0x30], rax
        jne      SHORT G_M46618_IG05
-						;; size=18 bbWeight=1 PerfScore 3.50
+						;; size=22 bbWeight=1 PerfScore 4.50
 G_M46618_IG04:
        mov      rdi, 0xD1FFAB1E      ; System.Action`1[System.Object]
        call     CORINFO_HELP_NEWSFAST
-       mov      r12, rax
+       mov      gword ptr [rbp-0x40], rax
        mov      rdi, 0xD1FFAB1E      ; data for System.IO.TextWriter+<>c:<>9
        mov      rsi, gword ptr [rdi]
        test     rsi, rsi
        je       G_M46618_IG11
-       lea      rdi, bword ptr [r12+0x08]
+       lea      rdi, bword ptr [rax+0x08]
        call     CORINFO_HELP_ASSIGN_REF
        mov      rdi, 0xD1FFAB1E      ; code for System.IO.TextWriter+<>c:<WriteAsync>b__62_0(System.Object):this
-       mov      qword ptr [r12+0x18], rdi
+       mov      rax, gword ptr [rbp-0x40]
+       mov      qword ptr [rax+0x18], rdi
        mov      rdi, 0xD1FFAB1E      ; data for System.IO.TextWriter+<>c:<>9__62_0
-       mov      rsi, r12
+       mov      rsi, rax
        call     CORINFO_HELP_ASSIGN_REF
-						;; size=83 bbWeight=0.50 PerfScore 4.62
+       mov      rax, gword ptr [rbp-0x40]
+       mov      gword ptr [rbp-0x30], rax
+						;; size=94 bbWeight=0.50 PerfScore 6.50
 G_M46618_IG05:
        mov      rdi, 0xD1FFAB1E      ; System.TupleSlim`4[System.IO.TextWriter,ushort[],int,int]
        call     CORINFO_HELP_NEWSFAST
-       mov      gword ptr [rbp-0x30], rax
+       mov      gword ptr [rbp-0x38], rax
        lea      rdi, bword ptr [rax+0x08]
        mov      rsi, rbx
        call     CORINFO_HELP_ASSIGN_REF
-       mov      rbx, gword ptr [rbp-0x30]
+       mov      rbx, gword ptr [rbp-0x38]
        lea      rdi, bword ptr [rbx+0x10]
        mov      rsi, r15
        call     CORINFO_HELP_ASSIGN_REF
        mov      dword ptr [rbx+0x18], r14d
        mov      dword ptr [rbx+0x1C], r13d
        mov      rdi, 0xD1FFAB1E      ; const ptr
        mov      r15, gword ptr [rdi]
+       cmp      byte  ptr [r12], r12b
+       test     r15, r15
+       je       G_M46618_IG12
        mov      rdi, 0xD1FFAB1E      ; System.Threading.Tasks.Task
        call     CORINFO_HELP_NEWSFAST
        mov      r14, rax
-       test     r12, r12
-       je       G_M46618_IG12
+       mov      r13, gword ptr [rbp-0x30]
+       test     r13, r13
+       je       G_M46618_IG13
        mov      gword ptr [rsp], r15
        mov      rdi, r14
-       mov      rsi, r12
+       mov      rsi, r13
        mov      rdx, rbx
        xor      rcx, rcx
        mov      r8d, 8
        mov      r9d, 0x2000
        mov      rax, 0xD1FFAB1E      ; code for System.Threading.Tasks.Task:TaskConstructorCore(System.Delegate,System.Object,System.Threading.CancellationToken,int,int,System.Threading.Tasks.TaskScheduler):this
        call     [rax]System.Threading.Tasks.Task:TaskConstructorCore(System.Delegate,System.Object,System.Threading.CancellationToken,int,int,System.Threading.Tasks.TaskScheduler):this
        mov      rax, 0xD1FFAB1E      ; code for System.Threading.ExecutionContext:Capture():System.Threading.ExecutionContext
        call     [rax]System.Threading.ExecutionContext:Capture():System.Threading.ExecutionContext
-       mov      r13, rax
-       test     r13, r13
+       mov      r12, rax
+       test     r12, r12
        jne      SHORT G_M46618_IG07
-						;; size=154 bbWeight=1 PerfScore 24.25
+						;; size=171 bbWeight=1 PerfScore 29.50
 G_M46618_IG06:
        or       dword ptr [r14+0x34], 0xD1FFAB1E
        jmp      SHORT G_M46618_IG08
 						;; size=10 bbWeight=0.50 PerfScore 2.50
 G_M46618_IG07:
        mov      rdi, 0xD1FFAB1E      ; const ptr
-       cmp      r13, gword ptr [rdi]
+       cmp      r12, gword ptr [rdi]
        je       SHORT G_M46618_IG08
        mov      rdi, r14
        mov      rax, 0xD1FFAB1E      ; code for System.Threading.Tasks.Task:EnsureContingentPropertiesInitializedUnsafe():System.Threading.Tasks.Task+ContingentProperties:this
        call     [rax]System.Threading.Tasks.Task:EnsureContingentPropertiesInitializedUnsafe():System.Threading.Tasks.Task+ContingentProperties:this
        lea      rdi, bword ptr [rax+0x08]
-       mov      rsi, r13
+       mov      rsi, r12
        call     CORINFO_HELP_ASSIGN_REF
 						;; size=42 bbWeight=0.50 PerfScore 4.75
 G_M46618_IG08:
        mov      rdi, r14
        xor      esi, esi
        mov      rax, 0xD1FFAB1E      ; code for System.Threading.Tasks.Task:ScheduleAndStart(ubyte):this
        call     [rax]System.Threading.Tasks.Task:ScheduleAndStart(ubyte):this
        mov      rax, r14
 						;; size=20 bbWeight=1 PerfScore 4.00
 G_M46618_IG09:
-       add      rsp, 24
+       add      rsp, 40
        pop      rbx
        pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
 						;; size=15 bbWeight=1 PerfScore 4.25
 G_M46618_IG10:
        mov      rdi, 0xD1FFAB1E
        mov      esi, 0x7FF
        call     CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
        jmp      G_M46618_IG03
 						;; size=25 bbWeight=0 PerfScore 0.00
 G_M46618_IG11:
        mov      rax, 0xD1FFAB1E      ; code for System.MulticastDelegate:ThrowNullThisInDelegateToInstance()
        call     [rax]System.MulticastDelegate:ThrowNullThisInDelegateToInstance()
        int3     
 						;; size=13 bbWeight=0 PerfScore 0.00
 G_M46618_IG12:
+       mov      edi, 47
+       mov      rax, 0xD1FFAB1E      ; code for System.ThrowHelper:ThrowArgumentNullException(int)
+       call     [rax]System.ThrowHelper:ThrowArgumentNullException(int)
+       int3     
+						;; size=18 bbWeight=0 PerfScore 0.00
+G_M46618_IG13:
        mov      edi, 28
        mov      rax, 0xD1FFAB1E      ; code for System.ThrowHelper:ThrowArgumentNullException(int)
        call     [rax]System.ThrowHelper:ThrowArgumentNullException(int)
        int3     
 						;; size=18 bbWeight=0 PerfScore 0.00
 
-; Total bytes of code 448, prolog size 19, PerfScore 104.68, instruction count 101, allocated bytes for code 448 (MethodHash=aa2149e5) for method System.IO.TextWriter:WriteAsync(ushort[],int,int):System.Threading.Tasks.Task:this (FullOpts)
+; Total bytes of code 511, prolog size 19, PerfScore 121.35, instruction count 115, allocated bytes for code 511 (MethodHash=aa2149e5) for method System.IO.TextWriter:WriteAsync(ushort[],int,int):System.Threading.Tasks.Task:this (FullOpts)
63 (14.06 % of base) - System.IO.TextWriter:WriteLineAsync(ushort[],int,int):System.Threading.Tasks.Task:this
 ; Assembly listing for method System.IO.TextWriter:WriteLineAsync(ushort[],int,int):System.Threading.Tasks.Task: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; 7 single block inlinees; 5 inlinees without PGO data
 ; Final local variable assignments
 ;
-;  V00 this         [V00,T04] (  3,  3   )     ref  ->  rbx         this class-hnd single-def <System.IO.TextWriter>
-;  V01 arg1         [V01,T05] (  3,  3   )     ref  ->  r15         class-hnd single-def <ushort[]>
-;  V02 arg2         [V02,T06] (  3,  3   )     int  ->  r14         single-def
-;  V03 arg3         [V03,T07] (  3,  3   )     int  ->  r13         single-def
+;  V00 this         [V00,T05] (  3,  3   )     ref  ->  rbx         this class-hnd single-def <System.IO.TextWriter>
+;  V01 arg1         [V01,T06] (  3,  3   )     ref  ->  r15         class-hnd single-def <ushort[]>
+;  V02 arg2         [V02,T07] (  3,  3   )     int  ->  r14         single-def
+;  V03 arg3         [V03,T08] (  3,  3   )     int  ->  r13         single-def
 ;  V04 OutArgs      [V04    ] (  1,  1   )  struct ( 8) [rsp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-;  V05 tmp1         [V05,T09] (  2,  4   )     ref  ->  r12         class-hnd single-def "dup spill" <System.Action`1[System.Object]>
-;* V06 tmp2         [V06,T12] (  0,  0   )     ref  ->  zero-ref    class-hnd exact single-def "impAppendStmt" <System.Threading.Tasks.TaskFactory>
+;  V05 tmp1         [V05,T10] (  2,  4   )     ref  ->  rax         class-hnd single-def "dup spill" <System.Action`1[System.Object]>
+;  V06 tmp2         [V06,T11] (  2,  4   )     ref  ->  r12         class-hnd exact single-def "impAppendStmt" <System.Threading.Tasks.TaskFactory>
 ;* V07 tmp3         [V07    ] (  0,  0   )     ref  ->  zero-ref    single-def
-;  V08 tmp4         [V08,T08] (  5,  4.50)     ref  ->  r12        
-;  V09 tmp5         [V09,T00] (  6, 12   )     ref  ->  [rbp-0x30]  class-hnd exact spill-single-def "NewObj constructor temp" <System.TupleSlim`4[System.IO.TextWriter,ushort[],int,int]>
+;  V08 tmp4         [V08,T09] (  5,  4.50)     ref  ->  [rbp-0x30] 
+;  V09 tmp5         [V09,T00] (  6, 12   )     ref  ->  [rbp-0x38]  class-hnd exact spill-single-def "NewObj constructor temp" <System.TupleSlim`4[System.IO.TextWriter,ushort[],int,int]>
 ;* V10 tmp6         [V10    ] (  0,  0   )  struct ( 8) zero-ref    "impAppendStmt" <System.Threading.CancellationToken>
-;  V11 tmp7         [V11,T03] (  5,  5   )     ref  ->  r12         class-hnd exact single-def "NewObj constructor temp" <System.Action`1[System.Object]>
-;  V12 tmp8         [V12,T11] (  3,  3   )     ref  ->  rsi         class-hnd exact single-def "Inlining Arg" <System.IO.TextWriter+<>c>
+;  V11 tmp7         [V11,T04] (  5,  5   )     ref  ->  [rbp-0x40]  class-hnd exact spill-single-def "NewObj constructor temp" <System.Action`1[System.Object]>
+;  V12 tmp8         [V12,T12] (  3,  3   )     ref  ->  rsi         class-hnd exact single-def "Inlining Arg" <System.IO.TextWriter+<>c>
 ;* V13 tmp9         [V13    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.Threading.CancellationToken>
-;  V14 tmp10        [V14,T10] (  2,  4   )     ref  ->  r15         class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.ThreadPoolTaskScheduler>
+;  V14 tmp10        [V14,T03] (  3,  6   )     ref  ->  r15         class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.ThreadPoolTaskScheduler>
 ;* V15 tmp11        [V15    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline return value spill temp" <System.Threading.Tasks.Task>
 ;* V16 tmp12        [V16    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inline return value spill temp" <System.Threading.Tasks.Task>
 ;  V17 tmp13        [V17,T01] (  7, 11   )     ref  ->  r14         class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.Task>
 ;* V18 tmp14        [V18    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact single-def "Inline stloc first use temp" <System.Threading.Tasks.Task>
-;  V19 tmp15        [V19,T02] (  4,  6   )     ref  ->  r13         class-hnd exact single-def "Inlining Arg" <System.Threading.ExecutionContext>
+;  V19 tmp15        [V19,T02] (  4,  6   )     ref  ->  r12         class-hnd exact single-def "Inlining Arg" <System.Threading.ExecutionContext>
 ;* V20 tmp16        [V20,T13] (  0,  0   )     ref  ->  zero-ref    single-def "field V10._source (fldOffset=0x0)" P-INDEP
 ;* V21 tmp17        [V21    ] (  0,  0   )     ref  ->  zero-ref    single-def "field V13._source (fldOffset=0x0)" P-INDEP
 ;* V22 cse0         [V22,T14] (  0,  0   )    long  ->  zero-ref    "CSE - moderate"
 ;
-; Lcl frame size = 24
+; Lcl frame size = 40
 
 G_M64756_IG01:
        push     rbp
        push     r15
        push     r14
        push     r13
        push     r12
        push     rbx
-       sub      rsp, 24
-       lea      rbp, [rsp+0x40]
+       sub      rsp, 40
+       lea      rbp, [rsp+0x50]
        mov      rbx, rdi
        mov      r15, rsi
        mov      r14d, edx
        mov      r13d, ecx
 						;; size=31 bbWeight=1 PerfScore 7.75
 G_M64756_IG02:
+       mov      rdi, 0xD1FFAB1E      ; const ptr
+       mov      r12, gword ptr [rdi]
        mov      rdi, 0xD1FFAB1E      ; global ptr
        test     byte  ptr [rdi], 1
        je       G_M64756_IG10
-						;; size=19 bbWeight=1 PerfScore 4.25
+						;; size=32 bbWeight=1 PerfScore 6.50
 G_M64756_IG03:
        mov      rdi, 0xD1FFAB1E      ; data for System.IO.TextWriter+<>c:<>9__68_0
-       mov      r12, gword ptr [rdi]
-       test     r12, r12
+       mov      rax, gword ptr [rdi]
+       test     rax, rax
+       mov      gword ptr [rbp-0x30], rax
        jne      SHORT G_M64756_IG05
-						;; size=18 bbWeight=1 PerfScore 3.50
+						;; size=22 bbWeight=1 PerfScore 4.50
 G_M64756_IG04:
        mov      rdi, 0xD1FFAB1E      ; System.Action`1[System.Object]
        call     CORINFO_HELP_NEWSFAST
-       mov      r12, rax
+       mov      gword ptr [rbp-0x40], rax
        mov      rdi, 0xD1FFAB1E      ; data for System.IO.TextWriter+<>c:<>9
        mov      rsi, gword ptr [rdi]
        test     rsi, rsi
        je       G_M64756_IG11
-       lea      rdi, bword ptr [r12+0x08]
+       lea      rdi, bword ptr [rax+0x08]
        call     CORINFO_HELP_ASSIGN_REF
        mov      rdi, 0xD1FFAB1E      ; code for System.IO.TextWriter+<>c:<WriteLineAsync>b__68_0(System.Object):this
-       mov      qword ptr [r12+0x18], rdi
+       mov      rax, gword ptr [rbp-0x40]
+       mov      qword ptr [rax+0x18], rdi
        mov      rdi, 0xD1FFAB1E      ; data for System.IO.TextWriter+<>c:<>9__68_0
-       mov      rsi, r12
+       mov      rsi, rax
        call     CORINFO_HELP_ASSIGN_REF
-						;; size=83 bbWeight=0.50 PerfScore 4.62
+       mov      rax, gword ptr [rbp-0x40]
+       mov      gword ptr [rbp-0x30], rax
+						;; size=94 bbWeight=0.50 PerfScore 6.50
 G_M64756_IG05:
        mov      rdi, 0xD1FFAB1E      ; System.TupleSlim`4[System.IO.TextWriter,ushort[],int,int]
        call     CORINFO_HELP_NEWSFAST
-       mov      gword ptr [rbp-0x30], rax
+       mov      gword ptr [rbp-0x38], rax
        lea      rdi, bword ptr [rax+0x08]
        mov      rsi, rbx
        call     CORINFO_HELP_ASSIGN_REF
-       mov      rbx, gword ptr [rbp-0x30]
+       mov      rbx, gword ptr [rbp-0x38]
        lea      rdi, bword ptr [rbx+0x10]
        mov      rsi, r15
        call     CORINFO_HELP_ASSIGN_REF
        mov      dword ptr [rbx+0x18], r14d
        mov      dword ptr [rbx+0x1C], r13d
        mov      rdi, 0xD1FFAB1E      ; const ptr
        mov      r15, gword ptr [rdi]
+       cmp      byte  ptr [r12], r12b
+       test     r15, r15
+       je       G_M64756_IG12
        mov      rdi, 0xD1FFAB1E      ; System.Threading.Tasks.Task
        call     CORINFO_HELP_NEWSFAST
        mov      r14, rax
-       test     r12, r12
-       je       G_M64756_IG12
+       mov      r13, gword ptr [rbp-0x30]
+       test     r13, r13
+       je       G_M64756_IG13
        mov      gword ptr [rsp], r15
        mov      rdi, r14
-       mov      rsi, r12
+       mov      rsi, r13
        mov      rdx, rbx
        xor      rcx, rcx
        mov      r8d, 8
        mov      r9d, 0x2000
        mov      rax, 0xD1FFAB1E      ; code for System.Threading.Tasks.Task:TaskConstructorCore(System.Delegate,System.Object,System.Threading.CancellationToken,int,int,System.Threading.Tasks.TaskScheduler):this
        call     [rax]System.Threading.Tasks.Task:TaskConstructorCore(System.Delegate,System.Object,System.Threading.CancellationToken,int,int,System.Threading.Tasks.TaskScheduler):this
        mov      rax, 0xD1FFAB1E      ; code for System.Threading.ExecutionContext:Capture():System.Threading.ExecutionContext
        call     [rax]System.Threading.ExecutionContext:Capture():System.Threading.ExecutionContext
-       mov      r13, rax
-       test     r13, r13
+       mov      r12, rax
+       test     r12, r12
        jne      SHORT G_M64756_IG07
-						;; size=154 bbWeight=1 PerfScore 24.25
+						;; size=171 bbWeight=1 PerfScore 29.50
 G_M64756_IG06:
        or       dword ptr [r14+0x34], 0xD1FFAB1E
        jmp      SHORT G_M64756_IG08
 						;; size=10 bbWeight=0.50 PerfScore 2.50
 G_M64756_IG07:
        mov      rdi, 0xD1FFAB1E      ; const ptr
-       cmp      r13, gword ptr [rdi]
+       cmp      r12, gword ptr [rdi]
        je       SHORT G_M64756_IG08
        mov      rdi, r14
        mov      rax, 0xD1FFAB1E      ; code for System.Threading.Tasks.Task:EnsureContingentPropertiesInitializedUnsafe():System.Threading.Tasks.Task+ContingentProperties:this
        call     [rax]System.Threading.Tasks.Task:EnsureContingentPropertiesInitializedUnsafe():System.Threading.Tasks.Task+ContingentProperties:this
        lea      rdi, bword ptr [rax+0x08]
-       mov      rsi, r13
+       mov      rsi, r12
        call     CORINFO_HELP_ASSIGN_REF
 						;; size=42 bbWeight=0.50 PerfScore 4.75
 G_M64756_IG08:
        mov      rdi, r14
        xor      esi, esi
        mov      rax, 0xD1FFAB1E      ; code for System.Threading.Tasks.Task:ScheduleAndStart(ubyte):this
        call     [rax]System.Threading.Tasks.Task:ScheduleAndStart(ubyte):this
        mov      rax, r14
 						;; size=20 bbWeight=1 PerfScore 4.00
 G_M64756_IG09:
-       add      rsp, 24
+       add      rsp, 40
        pop      rbx
        pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
 						;; size=15 bbWeight=1 PerfScore 4.25
 G_M64756_IG10:
        mov      rdi, 0xD1FFAB1E
        mov      esi, 0x7FF
        call     CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
        jmp      G_M64756_IG03
 						;; size=25 bbWeight=0 PerfScore 0.00
 G_M64756_IG11:
        mov      rax, 0xD1FFAB1E      ; code for System.MulticastDelegate:ThrowNullThisInDelegateToInstance()
        call     [rax]System.MulticastDelegate:ThrowNullThisInDelegateToInstance()
        int3     
 						;; size=13 bbWeight=0 PerfScore 0.00
 G_M64756_IG12:
+       mov      edi, 47
+       mov      rax, 0xD1FFAB1E      ; code for System.ThrowHelper:ThrowArgumentNullException(int)
+       call     [rax]System.ThrowHelper:ThrowArgumentNullException(int)
+       int3     
+						;; size=18 bbWeight=0 PerfScore 0.00
+G_M64756_IG13:
        mov      edi, 28
        mov      rax, 0xD1FFAB1E      ; code for System.ThrowHelper:ThrowArgumentNullException(int)
        call     [rax]System.ThrowHelper:ThrowArgumentNullException(int)
        int3     
 						;; size=18 bbWeight=0 PerfScore 0.00
 
-; Total bytes of code 448, prolog size 19, PerfScore 104.68, instruction count 101, allocated bytes for code 448 (MethodHash=a714030b) for method System.IO.TextWriter:WriteLineAsync(ushort[],int,int):System.Threading.Tasks.Task:this (FullOpts)
+; Total bytes of code 511, prolog size 19, PerfScore 121.35, instruction count 115, allocated bytes for code 511 (MethodHash=a714030b) for method System.IO.TextWriter:WriteLineAsync(ushort[],int,int):System.Threading.Tasks.Task:this (FullOpts)
46 (0.84 % of base) - System.DateTimeFormat:FormatCustomized[ubyte](System.DateTime,System.ReadOnlySpan`1[ushort],System.Globalization.DateTimeFormatInfo,System.TimeSpan,byref)
 ; Assembly listing for method System.DateTimeFormat:FormatCustomized[ubyte](System.DateTime,System.ReadOnlySpan`1[ushort],System.Globalization.DateTimeFormatInfo,System.TimeSpan,byref) (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; 108 single block inlinees; 90 inlinees without PGO data
 ; Final local variable assignments
 ;
 ;  V00 arg0         [V00    ] ( 19, 77   )  struct ( 8) [rbp-0x30]  do-not-enreg[XS] addr-exposed ld-addr-op single-def <System.DateTime>
 ;* V01 arg1         [V01    ] (  0,  0   )  struct (16) zero-ref    multireg-arg ld-addr-op single-def <System.ReadOnlySpan`1[ushort]>
 ;  V02 arg2         [V02,T09] ( 27,131   )     ref  ->  r13         class-hnd single-def <System.Globalization.DateTimeFormatInfo>
 ;* V03 arg3         [V03    ] (  0,  0   )  struct ( 8) zero-ref    single-def <System.TimeSpan>
 ;  V04 arg4         [V04,T00] ( 99,550   )   byref  ->  rbx         single-def
 ;  V05 loc0         [V05,T14] ( 15, 96   )     ref  ->  [rbp-0xA0]  class-hnd spill-single-def <System.Globalization.Calendar>
 ;  V06 loc1         [V06,T58] (  4, 35   )   ubyte  ->  [rbp-0x34]  spill-single-def
-;  V07 loc2         [V07,T124] (  2, 17   )   ubyte  ->  [rbp-0x38]  spill-single-def
+;  V07 loc2         [V07,T126] (  2, 17   )   ubyte  ->  [rbp-0x38]  spill-single-def
 ;  V08 loc3         [V08,T168] (  3, 11   )   ubyte  ->  [rbp-0x3C] 
 ;  V09 loc4         [V09,T07] ( 35,149   )     int  ->  [rbp-0x40] 
 ;  V10 loc5         [V10,T03] ( 51,332   )     int  ->  [rbp-0x44]  ld-addr-op
 ;  V11 loc6         [V11,T155] (  7, 14   )     int  ->  rsi        
 ;  V12 loc7         [V12,T05] ( 39,270   )  ushort  ->  [rbp-0x48]  spill-single-def
 ;* V13 loc8         [V13    ] (  0,  0   )     int  ->  zero-ref   
 ;  V14 loc9         [V14,T15] (  7, 96   )     int  ->  [rbp-0x4C]  spill-single-def
 ;  V15 loc10        [V15,T08] ( 11,144   )     int  ->  [rbp-0x50]  ld-addr-op spill-single-def
-;  V16 loc11        [V16,T33] (  6, 54   )    long  ->  rsi        
-;  V17 loc12        [V17,T30] (  7, 56   )     int  ->  rcx        
+;  V16 loc11        [V16,T34] (  6, 54   )    long  ->  rsi        
+;  V17 loc12        [V17,T31] (  7, 56   )     int  ->  rcx        
 ;* V18 loc13        [V18    ] (  0,  0   )     int  ->  zero-ref   
 ;* V19 loc14        [V19    ] (  0,  0   )     ref  ->  zero-ref    class-hnd <System.String>
 ;  V20 loc15        [V20,T219] (  3,  6   )     int  ->  rax        
 ;  V21 loc16        [V21,T220] (  3,  6   )     int  ->  rax        
 ;  V22 loc17        [V22    ] (  2,  4   )  ushort  ->  [rbp-0x54]  do-not-enreg[X] addr-exposed ld-addr-op
 ;# V23 OutArgs      [V23    ] (  1,  1   )  struct ( 0) [rsp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
 ;  V24 tmp1         [V24,T16] (  4, 96   )     ref  ->  rax         class-hnd exact "impAppendStmt" <System.String>
 ;* V25 tmp2         [V25    ] (  0,  0   )  struct (16) zero-ref    multireg-arg "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
 ;* V26 tmp3         [V26    ] (  0,  0   )     int  ->  zero-ref    "impAppendStmt"
-;  V27 tmp4         [V27,T51] (  3, 48   )     int  ->  rdi         "Span.get_Item index"
+;  V27 tmp4         [V27,T52] (  3, 48   )     int  ->  rdi         "Span.get_Item index"
 ;  V28 tmp5         [V28,T198] (  2,  8   )     int  ->  rsi         "impAppendStmt"
 ;* V29 tmp6         [V29    ] (  0,  0   )   byref  ->  zero-ref   
 ;* V30 tmp7         [V30    ] (  0,  0   )   byref  ->  zero-ref   
 ;* V31 tmp8         [V31    ] (  0,  0   )  struct (16) zero-ref    multireg-arg multireg-ret <System.ReadOnlySpan`1[ubyte]>
 ;  V32 tmp9         [V32,T169] (  5, 10   )     ref  ->  rax        
 ;  V33 tmp10        [V33,T199] (  2,  8   )     int  ->  rsi         "impAppendStmt"
 ;* V34 tmp11        [V34    ] (  0,  0   )  struct (16) zero-ref    multireg-arg "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
 ;  V35 tmp12        [V35,T309] (  3,  0   )     ref  ->  rbx         class-hnd exact "NewObj constructor temp" <System.FormatException>
 ;* V36 tmp13        [V36    ] (  0,  0   )     int  ->  zero-ref    "impAppendStmt"
 ;* V37 tmp14        [V37    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
 ;* V38 tmp15        [V38    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
 ;* V39 tmp16        [V39    ] (  0,  0   )  struct (16) zero-ref    multireg-arg "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
 ;* V40 tmp17        [V40    ] (  0,  0   )  struct (16) zero-ref    multireg-arg "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
 ;* V41 tmp18        [V41    ] (  0,  0   )   byref  ->  zero-ref   
 ;* V42 tmp19        [V42    ] (  0,  0   )     ref  ->  zero-ref   
 ;* V43 tmp20        [V43    ] (  0,  0   )     int  ->  zero-ref   
 ;* V44 tmp21        [V44    ] (  0,  0   )   byref  ->  zero-ref   
 ;* V45 tmp22        [V45    ] (  0,  0   )     ref  ->  zero-ref   
 ;* V46 tmp23        [V46    ] (  0,  0   )     int  ->  zero-ref   
 ;  V47 tmp24        [V47,T70] (  3, 32   )     int  ->  rdx        
 ;* V48 tmp25        [V48    ] (  0,  0   )  struct (16) zero-ref    multireg-arg "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
 ;* V49 tmp26        [V49    ] (  0,  0   )  struct (16) zero-ref    multireg-arg "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
 ;  V50 tmp27        [V50,T310] (  3,  0   )     ref  ->  rbx         class-hnd exact "NewObj constructor temp" <System.FormatException>
 ;  V51 tmp28        [V51,T200] (  2,  8   )     int  ->  rsi         "impAppendStmt"
 ;* V52 tmp29        [V52    ] (  0,  0   )  struct (16) zero-ref    do-not-enreg[SBR] multireg-ret "spilled call-like call argument" <System.ReadOnlySpan`1[ubyte]>
 ;* V53 tmp30        [V53    ] (  0,  0   )  struct (16) zero-ref    do-not-enreg[SBR] multireg-ret "spilled call-like call argument" <System.ReadOnlySpan`1[ubyte]>
 ;  V54 tmp31        [V54,T311] (  3,  0   )     ref  ->  rbx         class-hnd exact "NewObj constructor temp" <System.FormatException>
 ;* V55 tmp32        [V55    ] (  0,  0   )  struct (16) zero-ref    multireg-arg ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
 ;* V56 tmp33        [V56    ] (  0,  0   )  struct ( 8) zero-ref    "impAppendStmt" <System.DateTime>
-;  V57 tmp34        [V57,T34] (  6, 52   )     int  ->  rdi         "Inline stloc first use temp"
+;  V57 tmp34        [V57,T35] (  6, 52   )     int  ->  rdi         "Inline stloc first use temp"
 ;* V58 tmp35        [V58    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
 ;* V59 tmp36        [V59    ] (  0,  0   )  struct (16) zero-ref    multireg-arg "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
-;  V60 tmp37        [V60,T125] (  4, 16   )     ref  ->  rax         class-hnd exact "Inlining Arg" <System.String>
+;  V60 tmp37        [V60,T127] (  4, 16   )     ref  ->  rax         class-hnd exact "Inlining Arg" <System.String>
 ;* V61 tmp38        [V61    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
 ;* V62 tmp39        [V62    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
 ;  V63 tmp40        [V63,T190] (  2,  8   )   byref  ->  rcx         "Inlining Arg"
 ;  V64 tmp41        [V64,T201] (  2,  8   )     int  ->   r8         "Inlining Arg"
 ;  V65 tmp42        [V65,T191] (  2,  8   )     ref  ->  [rbp-0xA8]  class-hnd exact spill-single-def "impAppendStmt" <System.Text.UTF8Encoding+UTF8EncodingSealed>
 ;* V66 tmp43        [V66    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.Span`1[ubyte]>
 ;* V67 tmp44        [V67    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.Span`1[ubyte]>
 ;* V68 tmp45        [V68    ] (  0,  0   )  struct (16) zero-ref    multireg-ret "Inline return value spill temp" <System.Span`1[ubyte]>
 ;  V69 tmp46        [V69,T184] (  4,  8   )     int  ->  rdi         "Inline stloc first use temp"
 ;* V70 tmp47        [V70    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline stloc first use temp" <System.Span`1[ubyte]>
-;  V71 tmp48        [V71,T121] (  5, 20   )     int  ->  rax         "Inlining Arg"
+;  V71 tmp48        [V71,T123] (  5, 20   )     int  ->  rax         "Inlining Arg"
 ;* V72 tmp49        [V72    ] (  0,  0   )  struct (16) zero-ref    do-not-enreg[SBR] multireg-ret "Return value temp for multireg return" <System.Span`1[ubyte]>
 ;* V73 tmp50        [V73    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.Span`1[ubyte]>
 ;* V74 tmp51        [V74    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
 ;* V75 tmp52        [V75    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V76 tmp53        [V76    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V77 tmp54        [V77    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.Span`1[ubyte]>
 ;* V78 tmp55        [V78    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V79 tmp56        [V79    ] (  0,  0   )    long  ->  zero-ref    "Inline stloc first use temp"
 ;  V80 tmp57        [V80,T273] (  2,  4   )     int  ->   r8         "Inline stloc first use temp"
 ;* V81 tmp58        [V81    ] (  0,  0   )  struct (16) zero-ref    multireg-arg ld-addr-op "NewObj constructor temp" <System.Span`1[ubyte]>
 ;* V82 tmp59        [V82    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
-;  V83 tmp60        [V83,T35] (  6, 52   )     int  ->  rdi         "Inline stloc first use temp"
+;  V83 tmp60        [V83,T36] (  6, 52   )     int  ->  rdi         "Inline stloc first use temp"
 ;* V84 tmp61        [V84    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
 ;  V85 tmp62        [V85,T221] (  3,  6   )     int  ->  rdx         "Inline return value spill temp"
 ;* V86 tmp63        [V86    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
-;  V87 tmp64        [V87,T36] (  6, 52   )     int  ->  rdi         "Inline stloc first use temp"
+;  V87 tmp64        [V87,T37] (  6, 52   )     int  ->  rdi         "Inline stloc first use temp"
 ;* V88 tmp65        [V88    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
 ;  V89 tmp66        [V89,T222] (  3,  6   )     int  ->  rdx         "Inline return value spill temp"
 ;* V90 tmp67        [V90    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
-;  V91 tmp68        [V91,T37] (  6, 52   )     int  ->  rdi         "Inline stloc first use temp"
+;  V91 tmp68        [V91,T38] (  6, 52   )     int  ->  rdi         "Inline stloc first use temp"
 ;* V92 tmp69        [V92    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
 ;  V93 tmp70        [V93,T223] (  3,  6   )     int  ->  rdx         "Inline return value spill temp"
 ;* V94 tmp71        [V94    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
-;  V95 tmp72        [V95,T38] (  6, 52   )     int  ->  rdi         "Inline stloc first use temp"
+;  V95 tmp72        [V95,T39] (  6, 52   )     int  ->  rdi         "Inline stloc first use temp"
 ;* V96 tmp73        [V96    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
 ;  V97 tmp74        [V97,T224] (  3,  6   )     int  ->  rdx         "Inline return value spill temp"
 ;* V98 tmp75        [V98    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
-;  V99 tmp76        [V99,T39] (  6, 52   )     int  ->  rdi         "Inline stloc first use temp"
+;  V99 tmp76        [V99,T40] (  6, 52   )     int  ->  rdi         "Inline stloc first use temp"
 ;* V100 tmp77       [V100    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
 ;* V101 tmp78       [V101    ] (  0,  0   )  struct (16) zero-ref    multireg-arg "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
-;  V102 tmp79       [V102,T126] (  4, 16   )     ref  ->  rdx         class-hnd exact "Inlining Arg" <System.String>
+;  V102 tmp79       [V102,T128] (  4, 16   )     ref  ->  rdx         class-hnd exact "Inlining Arg" <System.String>
 ;* V103 tmp80       [V103    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
 ;* V104 tmp81       [V104    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
 ;  V105 tmp82       [V105,T192] (  2,  8   )   byref  ->  rcx         "Inlining Arg"
 ;  V106 tmp83       [V106,T202] (  2,  8   )     int  ->  rdx         "Inlining Arg"
 ;* V107 tmp84       [V107    ] (  0,  0   )  struct (16) zero-ref    multireg-arg "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
-;  V108 tmp85       [V108,T127] (  4, 16   )     ref  ->  rdx         class-hnd exact "Inlining Arg" <System.String>
+;  V108 tmp85       [V108,T129] (  4, 16   )     ref  ->  rdx         class-hnd exact "Inlining Arg" <System.String>
 ;* V109 tmp86       [V109    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
 ;* V110 tmp87       [V110    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
 ;  V111 tmp88       [V111,T193] (  2,  8   )   byref  ->  rcx         "Inlining Arg"
 ;  V112 tmp89       [V112,T203] (  2,  8   )     int  ->  rdx         "Inlining Arg"
 ;  V113 tmp90       [V113,T161] (  3, 12   )     int  ->  rax         "Inlining Arg"
 ;  V114 tmp91       [V114,T156] (  3, 12   )   byref  ->  rcx         "Span.get_Item ptrToSpan"
 ;* V115 tmp92       [V115    ] (  0,  0   )   ubyte  ->  zero-ref    "Inlining Arg"
 ;* V116 tmp93       [V116    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
-;  V117 tmp94       [V117,T23] (  7, 68   )     int  ->   r8         "Inline stloc first use temp"
+;  V117 tmp94       [V117,T24] (  7, 68   )     int  ->   r8         "Inline stloc first use temp"
 ;* V118 tmp95       [V118    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
 ;* V119 tmp96       [V119    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline return value spill temp" <System.String>
-;  V120 tmp97       [V120,T119] (  5, 20   )     ref  ->  [rbp-0xB0]  class-hnd exact spill-single-def "Inlining Arg" <System.Globalization.CultureData>
+;  V120 tmp97       [V120,T121] (  5, 20   )     ref  ->  [rbp-0xB0]  class-hnd exact spill-single-def "Inlining Arg" <System.Globalization.CultureData>
 ;  V121 tmp98       [V121,T194] (  2,  8   )     ref  ->  rsi         class-hnd exact "dup spill" <System.String>
 ;  V122 tmp99       [V122,T181] (  4,  8   )     ref  ->  rsi        
 ;  V123 tmp100      [V123,T157] (  3, 12   )     ref  ->  [rbp-0xB8]  class-hnd exact spill-single-def "dup spill" <System.String>
 ;* V124 tmp101      [V124    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inline stloc first use temp" <System.String>
 ;* V125 tmp102      [V125    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline return value spill temp" <System.String>
 ;* V126 tmp103      [V126    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline return value spill temp" <System.String>
-;  V127 tmp104      [V127,T120] (  5, 20   )     ref  ->  [rbp-0xC0]  class-hnd exact spill-single-def "Inlining Arg" <System.Globalization.CultureData>
+;  V127 tmp104      [V127,T122] (  5, 20   )     ref  ->  [rbp-0xC0]  class-hnd exact spill-single-def "Inlining Arg" <System.Globalization.CultureData>
 ;  V128 tmp105      [V128,T195] (  2,  8   )     ref  ->  rsi         class-hnd exact "dup spill" <System.String>
 ;  V129 tmp106      [V129,T182] (  4,  8   )     ref  ->  rsi        
 ;  V130 tmp107      [V130,T158] (  3, 12   )     ref  ->  [rbp-0xC8]  class-hnd exact spill-single-def "dup spill" <System.String>
 ;* V131 tmp108      [V131    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inline stloc first use temp" <System.String>
 ;* V132 tmp109      [V132    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline return value spill temp" <System.String>
-;  V133 tmp110      [V133,T128] (  4, 16   )  ushort  ->  rax         "Inlining Arg"
+;  V133 tmp110      [V133,T130] (  4, 16   )  ushort  ->  rax         "Inlining Arg"
 ;* V134 tmp111      [V134    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.Text.Rune>
 ;* V135 tmp112      [V135    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.Span`1[ubyte]>
 ;* V136 tmp113      [V136    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.Span`1[ubyte]>
 ;  V137 tmp114      [V137,T171] (  5, 10   )     int  ->  rdi         "Inline stloc first use temp"
 ;* V138 tmp115      [V138    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline stloc first use temp" <System.Span`1[ubyte]>
 ;  V139 tmp116      [V139,T162] (  3, 12   )   ubyte  ->  rsi         "Inlining Arg"
 ;  V140 tmp117      [V140,T225] (  3,  6   )     int  ->  rax         "Inline stloc first use temp"
 ;  V141 tmp118      [V141,T172] (  5, 10   )     int  ->  rax         "Inline stloc first use temp"
 ;* V142 tmp119      [V142    ] (  0,  0   )  struct (16) zero-ref    multireg-ret "Inline return value spill temp" <System.Span`1[ubyte]>
 ;  V143 tmp120      [V143,T185] (  4,  8   )     int  ->  rdi         "Inline stloc first use temp"
 ;* V144 tmp121      [V144    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline stloc first use temp" <System.Span`1[ubyte]>
 ;* V145 tmp122      [V145    ] (  0,  0   )  struct (16) zero-ref    do-not-enreg[SBR] multireg-ret "Return value temp for multireg return" <System.Span`1[ubyte]>
 ;* V146 tmp123      [V146    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.Span`1[ubyte]>
 ;* V147 tmp124      [V147    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
 ;* V148 tmp125      [V148    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.Span`1[ubyte]>
 ;* V149 tmp126      [V149    ] (  0,  0   )  struct (16) zero-ref    multireg-arg ld-addr-op "NewObj constructor temp" <System.Span`1[ubyte]>
 ;* V150 tmp127      [V150    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.Span`1[ubyte]>
 ;* V151 tmp128      [V151    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
 ;* V152 tmp129      [V152    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
 ;  V153 tmp130      [V153    ] (  1,  2   )     int  ->  [rbp-0x60]  do-not-enreg[X] addr-exposed ld-addr-op "Inline ldloca(s) first use temp"
 ;  V154 tmp131      [V154,T173] (  5, 10   )     int  ->  rsi         "Inline stloc first use temp"
 ;* V155 tmp132      [V155    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline stloc first use temp" <System.Span`1[ubyte]>
 ;* V156 tmp133      [V156    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
-;  V157 tmp134      [V157,T24] (  7, 68   )     int  ->  rdi         "Inline stloc first use temp"
+;  V157 tmp134      [V157,T25] (  7, 68   )     int  ->  rdi         "Inline stloc first use temp"
 ;* V158 tmp135      [V158    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
 ;  V159 tmp136      [V159,T170] (  5, 10   )     ref  ->  rax         class-hnd "Inline return value spill temp" <System.String>
 ;* V160 tmp137      [V160    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
 ;* V161 tmp138      [V161    ] (  0,  0   )  struct (16) zero-ref    multireg-arg "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
 ;* V162 tmp139      [V162    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
 ;* V163 tmp140      [V163    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
 ;  V164 tmp141      [V164,T196] (  2,  8   )   byref  ->  rcx         "Inlining Arg"
 ;  V165 tmp142      [V165,T204] (  2,  8   )     int  ->   r8         "Inlining Arg"
 ;  V166 tmp143      [V166,T197] (  2,  8   )     ref  ->  [rbp-0xD0]  class-hnd exact spill-single-def "impAppendStmt" <System.Text.UTF8Encoding+UTF8EncodingSealed>
 ;* V167 tmp144      [V167    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.Span`1[ubyte]>
 ;* V168 tmp145      [V168    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.Span`1[ubyte]>
 ;* V169 tmp146      [V169    ] (  0,  0   )  struct (16) zero-ref    multireg-ret "Inline return value spill temp" <System.Span`1[ubyte]>
 ;  V170 tmp147      [V170,T186] (  4,  8   )     int  ->  rdi         "Inline stloc first use temp"
 ;* V171 tmp148      [V171    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline stloc first use temp" <System.Span`1[ubyte]>
-;  V172 tmp149      [V172,T122] (  5, 20   )     int  ->  rax         "Inlining Arg"
+;  V172 tmp149      [V172,T124] (  5, 20   )     int  ->  rax         "Inlining Arg"
 ;* V173 tmp150      [V173    ] (  0,  0   )  struct (16) zero-ref    do-not-enreg[SBR] multireg-ret "Return value temp for multireg return" <System.Span`1[ubyte]>
 ;* V174 tmp151      [V174    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.Span`1[ubyte]>
 ;* V175 tmp152      [V175    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
 ;* V176 tmp153      [V176    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V177 tmp154      [V177    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V178 tmp155      [V178    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.Span`1[ubyte]>
 ;* V179 tmp156      [V179    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V180 tmp157      [V180    ] (  0,  0   )    long  ->  zero-ref    "Inline stloc first use temp"
 ;  V181 tmp158      [V181,T274] (  2,  4   )     int  ->   r8         "Inline stloc first use temp"
 ;* V182 tmp159      [V182    ] (  0,  0   )  struct (16) zero-ref    multireg-arg ld-addr-op "NewObj constructor temp" <System.Span`1[ubyte]>
 ;* V183 tmp160      [V183    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
 ;  V184 tmp161      [V184,T02] (  7,352   )     int  ->  rdi         "Inline stloc first use temp"
 ;* V185 tmp162      [V185    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
 ;* V186 tmp163      [V186    ] (  0,  0   )  struct (16) zero-ref    multireg-arg "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
 ;  V187 tmp164      [V187,T17] (  4, 96   )     ref  ->  rax         class-hnd exact "Inlining Arg" <System.String>
 ;* V188 tmp165      [V188    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
 ;* V189 tmp166      [V189    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
 ;  V190 tmp167      [V190,T82] (  2, 32   )   byref  ->  rcx         "Inlining Arg"
 ;  V191 tmp168      [V191,T95] (  2, 32   )     int  ->   r8         "Inlining Arg"
-;  V192 tmp169      [V192,T26] (  2, 64   )     ref  ->  [rbp-0xD8]  class-hnd exact spill-single-def "impAppendStmt" <System.Text.UTF8Encoding+UTF8EncodingSealed>
+;  V192 tmp169      [V192,T27] (  2, 64   )     ref  ->  [rbp-0xD8]  class-hnd exact spill-single-def "impAppendStmt" <System.Text.UTF8Encoding+UTF8EncodingSealed>
 ;* V193 tmp170      [V193    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.Span`1[ubyte]>
 ;* V194 tmp171      [V194    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.Span`1[ubyte]>
 ;* V195 tmp172      [V195    ] (  0,  0   )  struct (16) zero-ref    multireg-ret "Inline return value spill temp" <System.Span`1[ubyte]>
-;  V196 tmp173      [V196,T41] (  4, 48   )     int  ->  rdi         "Inline stloc first use temp"
+;  V196 tmp173      [V196,T42] (  4, 48   )     int  ->  rdi         "Inline stloc first use temp"
 ;* V197 tmp174      [V197    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline stloc first use temp" <System.Span`1[ubyte]>
 ;  V198 tmp175      [V198,T10] (  5,112   )     int  ->  rax         "Inlining Arg"
 ;* V199 tmp176      [V199    ] (  0,  0   )  struct (16) zero-ref    do-not-enreg[SBR] multireg-ret "Return value temp for multireg return" <System.Span`1[ubyte]>
 ;* V200 tmp177      [V200    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.Span`1[ubyte]>
 ;* V201 tmp178      [V201    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
 ;* V202 tmp179      [V202    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V203 tmp180      [V203    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V204 tmp181      [V204    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.Span`1[ubyte]>
 ;* V205 tmp182      [V205    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V206 tmp183      [V206    ] (  0,  0   )    long  ->  zero-ref    "Inline stloc first use temp"
 ;  V207 tmp184      [V207,T96] (  2, 32   )     int  ->   r8         "Inline stloc first use temp"
 ;* V208 tmp185      [V208    ] (  0,  0   )  struct (16) zero-ref    multireg-arg ld-addr-op "NewObj constructor temp" <System.Span`1[ubyte]>
 ;* V209 tmp186      [V209    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
 ;  V210 tmp187      [V210,T71] (  3, 32   )     int  ->  registers   "Inline return value spill temp"
 ;* V211 tmp188      [V211    ] (  0,  0   )  struct (16) zero-ref    multireg-arg "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
 ;  V212 tmp189      [V212,T18] (  4, 96   )     ref  ->  rax         class-hnd exact "Inlining Arg" <System.String>
 ;* V213 tmp190      [V213    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
 ;* V214 tmp191      [V214    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
 ;  V215 tmp192      [V215,T83] (  2, 32   )   byref  ->  rcx         "Inlining Arg"
 ;  V216 tmp193      [V216,T97] (  2, 32   )     int  ->   r8         "Inlining Arg"
-;  V217 tmp194      [V217,T27] (  2, 64   )     ref  ->  [rbp-0xE0]  class-hnd exact spill-single-def "impAppendStmt" <System.Text.UTF8Encoding+UTF8EncodingSealed>
+;  V217 tmp194      [V217,T28] (  2, 64   )     ref  ->  [rbp-0xE0]  class-hnd exact spill-single-def "impAppendStmt" <System.Text.UTF8Encoding+UTF8EncodingSealed>
 ;* V218 tmp195      [V218    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.Span`1[ubyte]>
 ;* V219 tmp196      [V219    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.Span`1[ubyte]>
 ;* V220 tmp197      [V220    ] (  0,  0   )  struct (16) zero-ref    multireg-ret "Inline return value spill temp" <System.Span`1[ubyte]>
-;  V221 tmp198      [V221,T42] (  4, 48   )     int  ->  rdi         "Inline stloc first use temp"
+;  V221 tmp198      [V221,T43] (  4, 48   )     int  ->  rdi         "Inline stloc first use temp"
 ;* V222 tmp199      [V222    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline stloc first use temp" <System.Span`1[ubyte]>
 ;  V223 tmp200      [V223,T11] (  5,112   )     int  ->  rax         "Inlining Arg"
 ;* V224 tmp201      [V224    ] (  0,  0   )  struct (16) zero-ref    do-not-enreg[SBR] multireg-ret "Return value temp for multireg return" <System.Span`1[ubyte]>
 ;* V225 tmp202      [V225    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.Span`1[ubyte]>
 ;* V226 tmp203      [V226    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
 ;* V227 tmp204      [V227    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V228 tmp205      [V228    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V229 tmp206      [V229    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.Span`1[ubyte]>
 ;* V230 tmp207      [V230    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V231 tmp208      [V231    ] (  0,  0   )    long  ->  zero-ref    "Inline stloc first use temp"
 ;  V232 tmp209      [V232,T98] (  2, 32   )     int  ->   r8         "Inline stloc first use temp"
 ;* V233 tmp210      [V233    ] (  0,  0   )  struct (16) zero-ref    multireg-arg ld-addr-op "NewObj constructor temp" <System.Span`1[ubyte]>
 ;* V234 tmp211      [V234    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
-;  V235 tmp212      [V235,T40] (  5, 48   )     ref  ->  rax         class-hnd "Inline return value spill temp" <System.String>
+;  V235 tmp212      [V235,T41] (  5, 48   )     ref  ->  rax         class-hnd "Inline return value spill temp" <System.String>
 ;* V236 tmp213      [V236    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
 ;* V237 tmp214      [V237    ] (  0,  0   )  struct (16) zero-ref    multireg-arg "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
 ;* V238 tmp215      [V238    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
 ;* V239 tmp216      [V239    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
 ;  V240 tmp217      [V240,T84] (  2, 32   )   byref  ->  rcx         "Inlining Arg"
 ;  V241 tmp218      [V241,T99] (  2, 32   )     int  ->   r8         "Inlining Arg"
-;  V242 tmp219      [V242,T28] (  2, 64   )     ref  ->  [rbp-0xE8]  class-hnd exact spill-single-def "impAppendStmt" <System.Text.UTF8Encoding+UTF8EncodingSealed>
+;  V242 tmp219      [V242,T29] (  2, 64   )     ref  ->  [rbp-0xE8]  class-hnd exact spill-single-def "impAppendStmt" <System.Text.UTF8Encoding+UTF8EncodingSealed>
 ;* V243 tmp220      [V243    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.Span`1[ubyte]>
 ;* V244 tmp221      [V244    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.Span`1[ubyte]>
 ;* V245 tmp222      [V245    ] (  0,  0   )  struct (16) zero-ref    multireg-ret "Inline return value spill temp" <System.Span`1[ubyte]>
-;  V246 tmp223      [V246,T43] (  4, 48   )     int  ->  rdi         "Inline stloc first use temp"
+;  V246 tmp223      [V246,T44] (  4, 48   )     int  ->  rdi         "Inline stloc first use temp"
 ;* V247 tmp224      [V247    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline stloc first use temp" <System.Span`1[ubyte]>
 ;  V248 tmp225      [V248,T12] (  5,112   )     int  ->  rax         "Inlining Arg"
 ;* V249 tmp226      [V249    ] (  0,  0   )  struct (16) zero-ref    do-not-enreg[SBR] multireg-ret "Return value temp for multireg return" <System.Span`1[ubyte]>
 ;* V250 tmp227      [V250    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.Span`1[ubyte]>
 ;* V251 tmp228      [V251    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
 ;* V252 tmp229      [V252    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V253 tmp230      [V253    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V254 tmp231      [V254    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.Span`1[ubyte]>
 ;* V255 tmp232      [V255    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V256 tmp233      [V256    ] (  0,  0   )    long  ->  zero-ref    "Inline stloc first use temp"
 ;  V257 tmp234      [V257,T100] (  2, 32   )     int  ->   r8         "Inline stloc first use temp"
 ;* V258 tmp235      [V258    ] (  0,  0   )  struct (16) zero-ref    multireg-arg ld-addr-op "NewObj constructor temp" <System.Span`1[ubyte]>
 ;* V259 tmp236      [V259    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
 ;  V260 tmp237      [V260,T59] (  2, 16   )   ubyte  ->  rax         "Inline return value spill temp"
 ;* V261 tmp238      [V261,T113] (  0,  0   )  ushort  ->  zero-ref    "Inlining Arg"
 ;* V262 tmp239      [V262    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.Text.Rune>
 ;* V263 tmp240      [V263    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.Span`1[ubyte]>
 ;* V264 tmp241      [V264    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.Span`1[ubyte]>
 ;* V265 tmp242      [V265    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V266 tmp243      [V266    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline stloc first use temp" <System.Span`1[ubyte]>
 ;* V267 tmp244      [V267    ] (  0,  0   )   ubyte  ->  zero-ref    "Inlining Arg"
 ;* V268 tmp245      [V268,T152] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
-;  V269 tmp246      [V269,T32] (  5, 56   )     int  ->  rax         "Inline stloc first use temp"
+;  V269 tmp246      [V269,T33] (  5, 56   )     int  ->  rax         "Inline stloc first use temp"
 ;* V270 tmp247      [V270    ] (  0,  0   )  struct (16) zero-ref    multireg-ret "Inline return value spill temp" <System.Span`1[ubyte]>
-;  V271 tmp248      [V271,T44] (  4, 48   )     int  ->  rdi         "Inline stloc first use temp"
+;  V271 tmp248      [V271,T45] (  4, 48   )     int  ->  rdi         "Inline stloc first use temp"
 ;* V272 tmp249      [V272    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline stloc first use temp" <System.Span`1[ubyte]>
 ;* V273 tmp250      [V273    ] (  0,  0   )  struct (16) zero-ref    do-not-enreg[SBR] multireg-ret "Return value temp for multireg return" <System.Span`1[ubyte]>
 ;* V274 tmp251      [V274    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.Span`1[ubyte]>
 ;* V275 tmp252      [V275    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
 ;* V276 tmp253      [V276    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.Span`1[ubyte]>
 ;* V277 tmp254      [V277    ] (  0,  0   )  struct (16) zero-ref    multireg-arg ld-addr-op "NewObj constructor temp" <System.Span`1[ubyte]>
 ;* V278 tmp255      [V278    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.Span`1[ubyte]>
 ;* V279 tmp256      [V279    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
 ;* V280 tmp257      [V280    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
 ;  V281 tmp258      [V281    ] (  1, 16   )     int  ->  [rbp-0x68]  do-not-enreg[X] addr-exposed ld-addr-op "Inline ldloca(s) first use temp"
 ;* V282 tmp259      [V282,T141] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
 ;* V283 tmp260      [V283    ] (  0,  0   )  ushort  ->  zero-ref    "Inline stloc first use temp"
 ;  V284 tmp261      [V284,T72] (  3, 32   )     int  ->  rdx         "Inline return value spill temp"
 ;* V285 tmp262      [V285    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
-;  V286 tmp263      [V286,T57] (  2, 48   )     ref  ->  rdi         class-hnd exact "Inlining Arg" <System.Globalization.CultureInfo>
+;  V286 tmp263      [V286,T26] (  3, 64   )     ref  ->  rdi         class-hnd exact "Inlining Arg" <System.Globalization.CultureInfo>
 ;  V287 tmp264      [V287,T60] (  3, 32   )     ref  ->  rax         class-hnd "Inline return value spill temp" <System.String>
 ;* V288 tmp265      [V288    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
 ;* V289 tmp266      [V289    ] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;  V290 tmp267      [V290,T130] (  2, 16   )     ref  ->  rax         class-hnd "Inline return value spill temp" <System.Globalization.NumberFormatInfo>
-;  V291 tmp268      [V291,T25] (  3, 64   )     ref  ->  rcx         class-hnd exact "Inlining Arg" <System.Globalization.CultureInfo>
-;  V292 tmp269      [V292,T31] (  6, 56   )     ref  ->  rax         class-hnd "Inline return value spill temp" <System.String>
+;  V290 tmp267      [V290,T114] (  3, 24   )     ref  ->  rax         class-hnd "Inline return value spill temp" <System.Globalization.NumberFormatInfo>
+;  V291 tmp268      [V291,T23] (  4, 80   )     ref  ->  rcx         class-hnd exact "Inlining Arg" <System.Globalization.CultureInfo>
+;  V292 tmp269      [V292,T32] (  6, 56   )     ref  ->  rax         class-hnd "Inline return value spill temp" <System.String>
 ;* V293 tmp270      [V293    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
 ;* V294 tmp271      [V294,T206] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;  V295 tmp272      [V295,T131] (  2, 16   )     ref  ->  rax         class-hnd "Inline return value spill temp" <System.Globalization.NumberFormatInfo>
+;  V295 tmp272      [V295,T115] (  3, 24   )     ref  ->  rax         class-hnd "Inline return value spill temp" <System.Globalization.NumberFormatInfo>
 ;* V296 tmp273      [V296    ] (  0,  0   )  struct (16) zero-ref    multireg-arg "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
 ;* V297 tmp274      [V297    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
 ;* V298 tmp275      [V298    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
 ;  V299 tmp276      [V299,T85] (  2, 32   )   byref  ->  rcx         "Inlining Arg"
 ;  V300 tmp277      [V300,T101] (  2, 32   )     int  ->   r8         "Inlining Arg"
-;  V301 tmp278      [V301,T29] (  2, 64   )     ref  ->  [rbp-0xF0]  class-hnd exact spill-single-def "impAppendStmt" <System.Text.UTF8Encoding+UTF8EncodingSealed>
+;  V301 tmp278      [V301,T30] (  2, 64   )     ref  ->  [rbp-0xF0]  class-hnd exact spill-single-def "impAppendStmt" <System.Text.UTF8Encoding+UTF8EncodingSealed>
 ;* V302 tmp279      [V302    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.Span`1[ubyte]>
 ;* V303 tmp280      [V303    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.Span`1[ubyte]>
 ;* V304 tmp281      [V304    ] (  0,  0   )  struct (16) zero-ref    multireg-ret "Inline return value spill temp" <System.Span`1[ubyte]>
-;  V305 tmp282      [V305,T45] (  4, 48   )     int  ->  rdi         "Inline stloc first use temp"
+;  V305 tmp282      [V305,T46] (  4, 48   )     int  ->  rdi         "Inline stloc first use temp"
 ;* V306 tmp283      [V306    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline stloc first use temp" <System.Span`1[ubyte]>
 ;  V307 tmp284      [V307,T13] (  5,112   )     int  ->  rax         "Inlining Arg"
 ;* V308 tmp285      [V308    ] (  0,  0   )  struct (16) zero-ref    do-not-enreg[SBR] multireg-ret "Return value temp for multireg return" <System.Span`1[ubyte]>
 ;* V309 tmp286      [V309    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.Span`1[ubyte]>
 ;* V310 tmp287      [V310    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
 ;* V311 tmp288      [V311    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V312 tmp289      [V312    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V313 tmp290      [V313    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.Span`1[ubyte]>
 ;* V314 tmp291      [V314    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V315 tmp292      [V315    ] (  0,  0   )    long  ->  zero-ref    "Inline stloc first use temp"
 ;  V316 tmp293      [V316,T102] (  2, 32   )     int  ->   r8         "Inline stloc first use temp"
 ;* V317 tmp294      [V317    ] (  0,  0   )  struct (16) zero-ref    multireg-arg ld-addr-op "NewObj constructor temp" <System.Span`1[ubyte]>
 ;* V318 tmp295      [V318    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
 ;  V319 tmp296      [V319,T174] (  5, 10   )     int  ->  rsi         "Inline stloc first use temp"
 ;* V320 tmp297      [V320    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline stloc first use temp" <System.Span`1[ubyte]>
 ;* V321 tmp298      [V321    ] (  0,  0   )  struct (16) zero-ref    multireg-arg multireg-ret ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
 ;  V322 tmp299      [V322,T175] (  5, 10   )     int  ->  rsi         "Inline stloc first use temp"
 ;* V323 tmp300      [V323    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline stloc first use temp" <System.Span`1[ubyte]>
 ;* V324 tmp301      [V324    ] (  0,  0   )  struct (16) zero-ref    multireg-arg multireg-ret ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
 ;  V325 tmp302      [V325,T176] (  5, 10   )     int  ->  rsi         "Inline return value spill temp"
 ;* V326 tmp303      [V326    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
 ;  V327 tmp304      [V327,T187] (  4,  8   )     int  ->  rdi         "Inline return value spill temp"
 ;* V328 tmp305      [V328    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
 ;  V329 tmp306      [V329,T177] (  5, 10   )     int  ->  rdi         "Inline stloc first use temp"
 ;* V330 tmp307      [V330    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline stloc first use temp" <System.Span`1[ubyte]>
 ;  V331 tmp308      [V331,T163] (  3, 12   )   ubyte  ->  rsi         "Inlining Arg"
 ;* V332 tmp309      [V332    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.Text.Rune>
 ;* V333 tmp310      [V333    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.Span`1[ubyte]>
 ;* V334 tmp311      [V334    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.Span`1[ubyte]>
 ;  V335 tmp312      [V335,T178] (  5, 10   )     int  ->  rdi         "Inline stloc first use temp"
 ;* V336 tmp313      [V336    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline stloc first use temp" <System.Span`1[ubyte]>
 ;  V337 tmp314      [V337,T164] (  3, 12   )   ubyte  ->  rsi         "Inlining Arg"
 ;  V338 tmp315      [V338,T226] (  3,  6   )     int  ->  rsi         "Inline stloc first use temp"
 ;  V339 tmp316      [V339,T179] (  5, 10   )     int  ->  rax         "Inline stloc first use temp"
 ;* V340 tmp317      [V340    ] (  0,  0   )  struct (16) zero-ref    multireg-ret "Inline return value spill temp" <System.Span`1[ubyte]>
 ;  V341 tmp318      [V341,T188] (  4,  8   )     int  ->  rdi         "Inline stloc first use temp"
 ;* V342 tmp319      [V342    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline stloc first use temp" <System.Span`1[ubyte]>
 ;* V343 tmp320      [V343    ] (  0,  0   )  struct (16) zero-ref    do-not-enreg[SBR] multireg-ret "Return value temp for multireg return" <System.Span`1[ubyte]>
 ;* V344 tmp321      [V344    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.Span`1[ubyte]>
 ;* V345 tmp322      [V345    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
 ;* V346 tmp323      [V346    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.Span`1[ubyte]>
 ;* V347 tmp324      [V347    ] (  0,  0   )  struct (16) zero-ref    multireg-arg ld-addr-op "NewObj constructor temp" <System.Span`1[ubyte]>
 ;* V348 tmp325      [V348    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.Span`1[ubyte]>
 ;* V349 tmp326      [V349    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
 ;* V350 tmp327      [V350    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
 ;  V351 tmp328      [V351    ] (  1,  2   )     int  ->  [rbp-0x70]  do-not-enreg[X] addr-exposed ld-addr-op "Inline ldloca(s) first use temp"
 ;  V352 tmp329      [V352    ] ( 19, 77   )    long  ->  [rbp-0x30]  do-not-enreg[X] addr-exposed single-def "field V00._dateData (fldOffset=0x0)" P-DEP
 ;  V353 tmp330      [V353,T04] ( 20,261   )   byref  ->  r14         single-def "field V01._reference (fldOffset=0x0)" P-INDEP
 ;  V354 tmp331      [V354,T01] ( 29,454   )     int  ->  r15         single-def "field V01._length (fldOffset=0x8)" P-INDEP
 ;  V355 tmp332      [V355,T180] (  4,  7   )    long  ->  r12         single-def "field V03._ticks (fldOffset=0x0)" P-INDEP
-;  V356 tmp333      [V356,T46] (  3, 48   )   byref  ->  [rbp-0xF8]  spill-single-def "field V25._reference (fldOffset=0x0)" P-INDEP
-;  V357 tmp334      [V357,T52] (  3, 48   )     int  ->  [rbp-0x74]  spill-single-def "field V25._length (fldOffset=0x8)" P-INDEP
+;  V356 tmp333      [V356,T47] (  3, 48   )   byref  ->  [rbp-0xF8]  spill-single-def "field V25._reference (fldOffset=0x0)" P-INDEP
+;  V357 tmp334      [V357,T53] (  3, 48   )     int  ->  [rbp-0x74]  spill-single-def "field V25._length (fldOffset=0x8)" P-INDEP
 ;  V358 tmp335      [V358,T183] (  4,  8   )   byref  ->  rax         "field V31._reference (fldOffset=0x0)" P-INDEP
 ;  V359 tmp336      [V359,T189] (  4,  8   )     int  ->  rdx         "field V31._length (fldOffset=0x8)" P-INDEP
 ;  V360 tmp337      [V360,T207] (  3,  6   )   byref  ->  [rbp-0x100]  spill-single-def "field V34._reference (fldOffset=0x0)" P-INDEP
 ;  V361 tmp338      [V361,T227] (  3,  6   )     int  ->  [rbp-0x78]  spill-single-def "field V34._length (fldOffset=0x8)" P-INDEP
 ;* V362 tmp339      [V362    ] (  0,  0   )   byref  ->  zero-ref    "field V37._reference (fldOffset=0x0)" P-INDEP
 ;* V363 tmp340      [V363    ] (  0,  0   )     int  ->  zero-ref    "field V37._length (fldOffset=0x8)" P-INDEP
 ;* V364 tmp341      [V364    ] (  0,  0   )   byref  ->  zero-ref    "field V38._reference (fldOffset=0x0)" P-INDEP
 ;* V365 tmp342      [V365    ] (  0,  0   )     int  ->  zero-ref    "field V38._length (fldOffset=0x8)" P-INDEP
 ;  V366 tmp343      [V366,T208] (  3,  6   )   byref  ->  [rbp-0x108]  spill-single-def "field V39._reference (fldOffset=0x0)" P-INDEP
 ;  V367 tmp344      [V367,T228] (  3,  6   )     int  ->  [rbp-0x7C]  spill-single-def "field V39._length (fldOffset=0x8)" P-INDEP
-;  V368 tmp345      [V368,T47] (  3, 48   )   byref  ->  [rbp-0x110]  spill-single-def "field V40._reference (fldOffset=0x0)" P-INDEP
-;  V369 tmp346      [V369,T53] (  3, 48   )     int  ->  [rbp-0x80]  spill-single-def "field V40._length (fldOffset=0x8)" P-INDEP
-;  V370 tmp347      [V370,T48] (  3, 48   )   byref  ->  [rbp-0x118]  spill-single-def "field V48._reference (fldOffset=0x0)" P-INDEP
-;  V371 tmp348      [V371,T54] (  3, 48   )     int  ->  [rbp-0x84]  spill-single-def "field V48._length (fldOffset=0x8)" P-INDEP
-;  V372 tmp349      [V372,T49] (  3, 48   )   byref  ->  [rbp-0x120]  spill-single-def "field V49._reference (fldOffset=0x0)" P-INDEP
-;  V373 tmp350      [V373,T55] (  3, 48   )     int  ->  [rbp-0x88]  spill-single-def "field V49._length (fldOffset=0x8)" P-INDEP
+;  V368 tmp345      [V368,T48] (  3, 48   )   byref  ->  [rbp-0x110]  spill-single-def "field V40._reference (fldOffset=0x0)" P-INDEP
+;  V369 tmp346      [V369,T54] (  3, 48   )     int  ->  [rbp-0x80]  spill-single-def "field V40._length (fldOffset=0x8)" P-INDEP
+;  V370 tmp347      [V370,T49] (  3, 48   )   byref  ->  [rbp-0x118]  spill-single-def "field V48._reference (fldOffset=0x0)" P-INDEP
+;  V371 tmp348      [V371,T55] (  3, 48   )     int  ->  [rbp-0x84]  spill-single-def "field V48._length (fldOffset=0x8)" P-INDEP
+;  V372 tmp349      [V372,T50] (  3, 48   )   byref  ->  [rbp-0x120]  spill-single-def "field V49._reference (fldOffset=0x0)" P-INDEP
+;  V373 tmp350      [V373,T56] (  3, 48   )     int  ->  [rbp-0x88]  spill-single-def "field V49._length (fldOffset=0x8)" P-INDEP
 ;* V374 tmp351      [V374    ] (  0,  0   )   byref  ->  zero-ref    "field V52._reference (fldOffset=0x0)" P-DEP
 ;* V375 tmp352      [V375    ] (  0,  0   )     int  ->  zero-ref    "field V52._length (fldOffset=0x8)" P-DEP
 ;* V376 tmp353      [V376    ] (  0,  0   )   byref  ->  zero-ref    "field V53._reference (fldOffset=0x0)" P-DEP
 ;* V377 tmp354      [V377    ] (  0,  0   )     int  ->  zero-ref    "field V53._length (fldOffset=0x8)" P-DEP
 ;  V378 tmp355      [V378,T248] (  2,  4   )   byref  ->  rsi         "field V55._reference (fldOffset=0x0)" P-INDEP
 ;* V379 tmp356      [V379,T300] (  0,  0   )     int  ->  zero-ref    "field V55._length (fldOffset=0x8)" P-INDEP
 ;  V380 tmp357      [V380,T275] (  2,  4   )    long  ->  rdi         "field V56._dateData (fldOffset=0x0)" P-INDEP
 ;* V381 tmp358      [V381,T292] (  0,  0   )   byref  ->  zero-ref    "field V58._reference (fldOffset=0x0)" P-INDEP
 ;* V382 tmp359      [V382,T301] (  0,  0   )     int  ->  zero-ref    "field V58._length (fldOffset=0x8)" P-INDEP
 ;  V383 tmp360      [V383,T209] (  3,  6   )   byref  ->  registers   "field V59._reference (fldOffset=0x0)" P-INDEP
 ;  V384 tmp361      [V384,T229] (  3,  6   )     int  ->  registers   "field V59._length (fldOffset=0x8)" P-INDEP
 ;  V385 tmp362      [V385,T249] (  2,  4   )   byref  ->  rcx         "field V61._reference (fldOffset=0x0)" P-INDEP
 ;  V386 tmp363      [V386,T276] (  2,  4   )     int  ->   r8         "field V61._length (fldOffset=0x8)" P-INDEP
 ;* V387 tmp364      [V387    ] (  0,  0   )   byref  ->  zero-ref    "field V62._reference (fldOffset=0x0)" P-INDEP
 ;* V388 tmp365      [V388    ] (  0,  0   )     int  ->  zero-ref    "field V62._length (fldOffset=0x8)" P-INDEP
 ;* V389 tmp366      [V389    ] (  0,  0   )   byref  ->  zero-ref    "field V66._reference (fldOffset=0x0)" P-INDEP
 ;* V390 tmp367      [V390    ] (  0,  0   )     int  ->  zero-ref    "field V66._length (fldOffset=0x8)" P-INDEP
 ;* V391 tmp368      [V391    ] (  0,  0   )   byref  ->  zero-ref    "field V67._reference (fldOffset=0x0)" P-INDEP
 ;* V392 tmp369      [V392    ] (  0,  0   )     int  ->  zero-ref    "field V67._length (fldOffset=0x8)" P-INDEP
 ;  V393 tmp370      [V393,T210] (  3,  6   )   byref  ->  rcx         "field V68._reference (fldOffset=0x0)" P-INDEP
 ;  V394 tmp371      [V394,T230] (  3,  6   )     int  ->  rax         "field V68._length (fldOffset=0x8)" P-INDEP
 ;  V395 tmp372      [V395,T250] (  2,  4   )   byref  ->  rcx         "field V70._reference (fldOffset=0x0)" P-INDEP
 ;  V396 tmp373      [V396,T277] (  2,  4   )     int  ->  rsi         "field V70._length (fldOffset=0x8)" P-INDEP
 ;* V397 tmp374      [V397    ] (  0,  0   )   byref  ->  zero-ref    "field V72._reference (fldOffset=0x0)" P-DEP
 ;* V398 tmp375      [V398    ] (  0,  0   )     int  ->  zero-ref    "field V72._length (fldOffset=0x8)" P-DEP
 ;  V399 tmp376      [V399,T251] (  2,  4   )   byref  ->  rcx         "field V73._reference (fldOffset=0x0)" P-INDEP
 ;  V400 tmp377      [V400,T278] (  2,  4   )     int  ->  rax         "field V73._length (fldOffset=0x8)" P-INDEP
 ;  V401 tmp378      [V401,T252] (  2,  4   )   byref  ->  rcx         "field V77._reference (fldOffset=0x0)" P-INDEP
 ;* V402 tmp379      [V402    ] (  0,  0   )     int  ->  zero-ref    "field V77._length (fldOffset=0x8)" P-INDEP
 ;  V403 tmp380      [V403,T253] (  2,  4   )   byref  ->  rcx         "field V81._reference (fldOffset=0x0)" P-INDEP
 ;  V404 tmp381      [V404,T279] (  2,  4   )     int  ->   r8         "field V81._length (fldOffset=0x8)" P-INDEP
 ;* V405 tmp382      [V405,T293] (  0,  0   )   byref  ->  zero-ref    "field V84._reference (fldOffset=0x0)" P-INDEP
 ;* V406 tmp383      [V406,T302] (  0,  0   )     int  ->  zero-ref    "field V84._length (fldOffset=0x8)" P-INDEP
 ;* V407 tmp384      [V407,T294] (  0,  0   )   byref  ->  zero-ref    "field V88._reference (fldOffset=0x0)" P-INDEP
 ;* V408 tmp385      [V408,T303] (  0,  0   )     int  ->  zero-ref    "field V88._length (fldOffset=0x8)" P-INDEP
 ;* V409 tmp386      [V409,T295] (  0,  0   )   byref  ->  zero-ref    "field V92._reference (fldOffset=0x0)" P-INDEP
 ;* V410 tmp387      [V410,T304] (  0,  0   )     int  ->  zero-ref    "field V92._length (fldOffset=0x8)" P-INDEP
 ;* V411 tmp388      [V411,T296] (  0,  0   )   byref  ->  zero-ref    "field V96._reference (fldOffset=0x0)" P-INDEP
 ;* V412 tmp389      [V412,T305] (  0,  0   )     int  ->  zero-ref    "field V96._length (fldOffset=0x8)" P-INDEP
 ;* V413 tmp390      [V413,T297] (  0,  0   )   byref  ->  zero-ref    "field V100._reference (fldOffset=0x0)" P-INDEP
 ;* V414 tmp391      [V414,T306] (  0,  0   )     int  ->  zero-ref    "field V100._length (fldOffset=0x8)" P-INDEP
 ;  V415 tmp392      [V415,T211] (  3,  6   )   byref  ->  registers   "field V101._reference (fldOffset=0x0)" P-INDEP
 ;  V416 tmp393      [V416,T231] (  3,  6   )     int  ->  registers   "field V101._length (fldOffset=0x8)" P-INDEP
 ;  V417 tmp394      [V417,T254] (  2,  4   )   byref  ->  rcx         "field V103._reference (fldOffset=0x0)" P-INDEP
 ;  V418 tmp395      [V418,T280] (  2,  4   )     int  ->  rdx         "field V103._length (fldOffset=0x8)" P-INDEP
 ;* V419 tmp396      [V419    ] (  0,  0   )   byref  ->  zero-ref    "field V104._reference (fldOffset=0x0)" P-INDEP
 ;* V420 tmp397      [V420    ] (  0,  0   )     int  ->  zero-ref    "field V104._length (fldOffset=0x8)" P-INDEP
 ;  V421 tmp398      [V421,T212] (  3,  6   )   byref  ->  registers   "field V107._reference (fldOffset=0x0)" P-INDEP
 ;  V422 tmp399      [V422,T232] (  3,  6   )     int  ->  registers   "field V107._length (fldOffset=0x8)" P-INDEP
 ;  V423 tmp400      [V423,T255] (  2,  4   )   byref  ->  rcx         "field V109._reference (fldOffset=0x0)" P-INDEP
 ;  V424 tmp401      [V424,T281] (  2,  4   )     int  ->  rdx         "field V109._length (fldOffset=0x8)" P-INDEP
 ;* V425 tmp402      [V425    ] (  0,  0   )   byref  ->  zero-ref    "field V110._reference (fldOffset=0x0)" P-INDEP
 ;* V426 tmp403      [V426    ] (  0,  0   )     int  ->  zero-ref    "field V110._length (fldOffset=0x8)" P-INDEP
 ;* V427 tmp404      [V427,T298] (  0,  0   )   byref  ->  zero-ref    "field V118._reference (fldOffset=0x0)" P-INDEP
 ;* V428 tmp405      [V428,T307] (  0,  0   )     int  ->  zero-ref    "field V118._length (fldOffset=0x8)" P-INDEP
 ;  V429 tmp406      [V429,T233] (  3,  6   )     int  ->  [rbp-0x8C]  spill-single-def "field V134._value (fldOffset=0x0)" P-INDEP
 ;* V430 tmp407      [V430    ] (  0,  0   )   byref  ->  zero-ref    "field V135._reference (fldOffset=0x0)" P-INDEP
 ;* V431 tmp408      [V431    ] (  0,  0   )     int  ->  zero-ref    "field V135._length (fldOffset=0x8)" P-INDEP
 ;* V432 tmp409      [V432    ] (  0,  0   )   byref  ->  zero-ref    "field V136._reference (fldOffset=0x0)" P-INDEP
 ;* V433 tmp410      [V433    ] (  0,  0   )     int  ->  zero-ref    "field V136._length (fldOffset=0x8)" P-INDEP
 ;  V434 tmp411      [V434,T256] (  2,  4   )   byref  ->  rax         "field V138._reference (fldOffset=0x0)" P-INDEP
 ;  V435 tmp412      [V435,T234] (  3,  6   )     int  ->  rcx         "field V138._length (fldOffset=0x8)" P-INDEP
 ;  V436 tmp413      [V436,T213] (  3,  6   )   byref  ->  rsi         "field V142._reference (fldOffset=0x0)" P-INDEP
 ;  V437 tmp414      [V437,T235] (  3,  6   )     int  ->  rdx         "field V142._length (fldOffset=0x8)" P-INDEP
 ;  V438 tmp415      [V438,T257] (  2,  4   )   byref  ->  rsi         "field V144._reference (fldOffset=0x0)" P-INDEP
 ;  V439 tmp416      [V439,T282] (  2,  4   )     int  ->  rcx         "field V144._length (fldOffset=0x8)" P-INDEP
 ;* V440 tmp417      [V440    ] (  0,  0   )   byref  ->  zero-ref    "field V145._reference (fldOffset=0x0)" P-DEP
 ;* V441 tmp418      [V441    ] (  0,  0   )     int  ->  zero-ref    "field V145._length (fldOffset=0x8)" P-DEP
 ;  V442 tmp419      [V442,T258] (  2,  4   )   byref  ->  rsi         "field V146._reference (fldOffset=0x0)" P-INDEP
 ;  V443 tmp420      [V443,T283] (  2,  4   )     int  ->  rax         "field V146._length (fldOffset=0x8)" P-INDEP
 ;* V444 tmp421      [V444    ] (  0,  0   )   byref  ->  zero-ref    "field V148._reference (fldOffset=0x0)" P-INDEP
 ;* V445 tmp422      [V445    ] (  0,  0   )     int  ->  zero-ref    "field V148._length (fldOffset=0x8)" P-INDEP
 ;  V446 tmp423      [V446,T259] (  2,  4   )   byref  ->  rsi         "field V149._reference (fldOffset=0x0)" P-INDEP
 ;  V447 tmp424      [V447,T284] (  2,  4   )     int  ->  rdx         "field V149._length (fldOffset=0x8)" P-INDEP
 ;* V448 tmp425      [V448    ] (  0,  0   )   byref  ->  zero-ref    "field V150._reference (fldOffset=0x0)" P-INDEP
 ;* V449 tmp426      [V449    ] (  0,  0   )     int  ->  zero-ref    "field V150._length (fldOffset=0x8)" P-INDEP
 ;  V450 tmp427      [V450,T260] (  2,  4   )   byref  ->  rdi         "field V155._reference (fldOffset=0x0)" P-INDEP
 ;  V451 tmp428      [V451,T236] (  3,  6   )     int  ->  rcx         "field V155._length (fldOffset=0x8)" P-INDEP
 ;* V452 tmp429      [V452    ] (  0,  0   )   byref  ->  zero-ref    "field V156._reference (fldOffset=0x0)" P-INDEP
 ;* V453 tmp430      [V453    ] (  0,  0   )     int  ->  zero-ref    "field V156._length (fldOffset=0x8)" P-INDEP
 ;* V454 tmp431      [V454,T299] (  0,  0   )   byref  ->  zero-ref    "field V158._reference (fldOffset=0x0)" P-INDEP
 ;* V455 tmp432      [V455,T308] (  0,  0   )     int  ->  zero-ref    "field V158._length (fldOffset=0x8)" P-INDEP
 ;  V456 tmp433      [V456,T214] (  3,  6   )   byref  ->  registers   "field V161._reference (fldOffset=0x0)" P-INDEP
 ;  V457 tmp434      [V457,T237] (  3,  6   )     int  ->  registers   "field V161._length (fldOffset=0x8)" P-INDEP
 ;  V458 tmp435      [V458,T261] (  2,  4   )   byref  ->  rcx         "field V162._reference (fldOffset=0x0)" P-INDEP
 ;  V459 tmp436      [V459,T285] (  2,  4   )     int  ->   r8         "field V162._length (fldOffset=0x8)" P-INDEP
 ;* V460 tmp437      [V460    ] (  0,  0   )   byref  ->  zero-ref    "field V163._reference (fldOffset=0x0)" P-INDEP
 ;* V461 tmp438      [V461    ] (  0,  0   )     int  ->  zero-ref    "field V163._length (fldOffset=0x8)" P-INDEP
 ;* V462 tmp439      [V462    ] (  0,  0   )   byref  ->  zero-ref    "field V167._reference (fldOffset=0x0)" P-INDEP
 ;* V463 tmp440      [V463    ] (  0,  0   )     int  ->  zero-ref    "field V167._length (fldOffset=0x8)" P-INDEP
 ;* V464 tmp441      [V464    ] (  0,  0   )   byref  ->  zero-ref    "field V168._reference (fldOffset=0x0)" P-INDEP
 ;* V465 tmp442      [V465    ] (  0,  0   )     int  ->  zero-ref    "field V168._length (fldOffset=0x8)" P-INDEP
 ;  V466 tmp443      [V466,T215] (  3,  6   )   byref  ->  rcx         "field V169._reference (fldOffset=0x0)" P-INDEP
 ;  V467 tmp444      [V467,T238] (  3,  6   )     int  ->  rax         "field V169._length (fldOffset=0x8)" P-INDEP
 ;  V468 tmp445      [V468,T262] (  2,  4   )   byref  ->  rcx         "field V171._reference (fldOffset=0x0)" P-INDEP
 ;  V469 tmp446      [V469,T286] (  2,  4   )     int  ->  rsi         "field V171._length (fldOffset=0x8)" P-INDEP
 ;* V470 tmp447      [V470    ] (  0,  0   )   byref  ->  zero-ref    "field V173._reference (fldOffset=0x0)" P-DEP
 ;* V471 tmp448      [V471    ] (  0,  0   )     int  ->  zero-ref    "field V173._length (fldOffset=0x8)" P-DEP
 ;  V472 tmp449      [V472,T263] (  2,  4   )   byref  ->  rcx         "field V174._reference (fldOffset=0x0)" P-INDEP
 ;  V473 tmp450      [V473,T287] (  2,  4   )     int  ->  rax         "field V174._length (fldOffset=0x8)" P-INDEP
 ;  V474 tmp451      [V474,T264] (  2,  4   )   byref  ->  rcx         "field V178._reference (fldOffset=0x0)" P-INDEP
 ;* V475 tmp452      [V475    ] (  0,  0   )     int  ->  zero-ref    "field V178._length (fldOffset=0x8)" P-INDEP
 ;  V476 tmp453      [V476,T265] (  2,  4   )   byref  ->  rcx         "field V182._reference (fldOffset=0x0)" P-INDEP
 ;  V477 tmp454      [V477,T288] (  2,  4   )     int  ->   r8         "field V182._length (fldOffset=0x8)" P-INDEP
 ;* V478 tmp455      [V478,T151] (  0,  0   )   byref  ->  zero-ref    "field V185._reference (fldOffset=0x0)" P-INDEP
 ;* V479 tmp456      [V479,T153] (  0,  0   )     int  ->  zero-ref    "field V185._length (fldOffset=0x8)" P-INDEP
 ;  V480 tmp457      [V480,T61] (  3, 32   )   byref  ->  registers   "field V186._reference (fldOffset=0x0)" P-INDEP
 ;  V481 tmp458      [V481,T73] (  3, 32   )     int  ->  registers   "field V186._length (fldOffset=0x8)" P-INDEP
 ;  V482 tmp459      [V482,T132] (  2, 16   )   byref  ->  rcx         "field V188._reference (fldOffset=0x0)" P-INDEP
 ;  V483 tmp460      [V483,T142] (  2, 16   )     int  ->   r8         "field V188._length (fldOffset=0x8)" P-INDEP
 ;* V484 tmp461      [V484    ] (  0,  0   )   byref  ->  zero-ref    "field V189._reference (fldOffset=0x0)" P-INDEP
 ;* V485 tmp462      [V485    ] (  0,  0   )     int  ->  zero-ref    "field V189._length (fldOffset=0x8)" P-INDEP
 ;* V486 tmp463      [V486    ] (  0,  0   )   byref  ->  zero-ref    "field V193._reference (fldOffset=0x0)" P-INDEP
 ;* V487 tmp464      [V487    ] (  0,  0   )     int  ->  zero-ref    "field V193._length (fldOffset=0x8)" P-INDEP
 ;* V488 tmp465      [V488    ] (  0,  0   )   byref  ->  zero-ref    "field V194._reference (fldOffset=0x0)" P-INDEP
 ;* V489 tmp466      [V489    ] (  0,  0   )     int  ->  zero-ref    "field V194._length (fldOffset=0x8)" P-INDEP
 ;  V490 tmp467      [V490,T62] (  3, 32   )   byref  ->  rcx         "field V195._reference (fldOffset=0x0)" P-INDEP
 ;  V491 tmp468      [V491,T74] (  3, 32   )     int  ->  rax         "field V195._length (fldOffset=0x8)" P-INDEP
-;  V492 tmp469      [V492,T114] (  2, 24   )   byref  ->  rcx         "field V197._reference (fldOffset=0x0)" P-INDEP
+;  V492 tmp469      [V492,T116] (  2, 24   )   byref  ->  rcx         "field V197._reference (fldOffset=0x0)" P-INDEP
 ;  V493 tmp470      [V493,T103] (  2, 32   )     int  ->  rsi         "field V197._length (fldOffset=0x8)" P-INDEP
 ;* V494 tmp471      [V494    ] (  0,  0   )   byref  ->  zero-ref    "field V199._reference (fldOffset=0x0)" P-DEP
 ;* V495 tmp472      [V495    ] (  0,  0   )     int  ->  zero-ref    "field V199._length (fldOffset=0x8)" P-DEP
 ;  V496 tmp473      [V496,T133] (  2, 16   )   byref  ->  rcx         "field V200._reference (fldOffset=0x0)" P-INDEP
 ;  V497 tmp474      [V497,T143] (  2, 16   )     int  ->  rax         "field V200._length (fldOffset=0x8)" P-INDEP
 ;  V498 tmp475      [V498,T86] (  2, 32   )   byref  ->  rcx         "field V204._reference (fldOffset=0x0)" P-INDEP
 ;* V499 tmp476      [V499    ] (  0,  0   )     int  ->  zero-ref    "field V204._length (fldOffset=0x8)" P-INDEP
 ;  V500 tmp477      [V500,T87] (  2, 32   )   byref  ->  rcx         "field V208._reference (fldOffset=0x0)" P-INDEP
 ;  V501 tmp478      [V501,T104] (  2, 32   )     int  ->   r8         "field V208._length (fldOffset=0x8)" P-INDEP
 ;  V502 tmp479      [V502,T63] (  3, 32   )   byref  ->  registers   "field V211._reference (fldOffset=0x0)" P-INDEP
 ;  V503 tmp480      [V503,T75] (  3, 32   )     int  ->  registers   "field V211._length (fldOffset=0x8)" P-INDEP
 ;  V504 tmp481      [V504,T134] (  2, 16   )   byref  ->  rcx         "field V213._reference (fldOffset=0x0)" P-INDEP
 ;  V505 tmp482      [V505,T144] (  2, 16   )     int  ->   r8         "field V213._length (fldOffset=0x8)" P-INDEP
 ;* V506 tmp483      [V506    ] (  0,  0   )   byref  ->  zero-ref    "field V214._reference (fldOffset=0x0)" P-INDEP
 ;* V507 tmp484      [V507    ] (  0,  0   )     int  ->  zero-ref    "field V214._length (fldOffset=0x8)" P-INDEP
 ;* V508 tmp485      [V508    ] (  0,  0   )   byref  ->  zero-ref    "field V218._reference (fldOffset=0x0)" P-INDEP
 ;* V509 tmp486      [V509    ] (  0,  0   )     int  ->  zero-ref    "field V218._length (fldOffset=0x8)" P-INDEP
 ;* V510 tmp487      [V510    ] (  0,  0   )   byref  ->  zero-ref    "field V219._reference (fldOffset=0x0)" P-INDEP
 ;* V511 tmp488      [V511    ] (  0,  0   )     int  ->  zero-ref    "field V219._length (fldOffset=0x8)" P-INDEP
 ;  V512 tmp489      [V512,T64] (  3, 32   )   byref  ->  rcx         "field V220._reference (fldOffset=0x0)" P-INDEP
 ;  V513 tmp490      [V513,T76] (  3, 32   )     int  ->  rax         "field V220._length (fldOffset=0x8)" P-INDEP
-;  V514 tmp491      [V514,T115] (  2, 24   )   byref  ->  rcx         "field V222._reference (fldOffset=0x0)" P-INDEP
+;  V514 tmp491      [V514,T117] (  2, 24   )   byref  ->  rcx         "field V222._reference (fldOffset=0x0)" P-INDEP
 ;  V515 tmp492      [V515,T105] (  2, 32   )     int  ->  rsi         "field V222._length (fldOffset=0x8)" P-INDEP
 ;* V516 tmp493      [V516    ] (  0,  0   )   byref  ->  zero-ref    "field V224._reference (fldOffset=0x0)" P-DEP
 ;* V517 tmp494      [V517    ] (  0,  0   )     int  ->  zero-ref    "field V224._length (fldOffset=0x8)" P-DEP
 ;  V518 tmp495      [V518,T135] (  2, 16   )   byref  ->  rcx         "field V225._reference (fldOffset=0x0)" P-INDEP
 ;  V519 tmp496      [V519,T145] (  2, 16   )     int  ->  rax         "field V225._length (fldOffset=0x8)" P-INDEP
 ;  V520 tmp497      [V520,T88] (  2, 32   )   byref  ->  rcx         "field V229._reference (fldOffset=0x0)" P-INDEP
 ;* V521 tmp498      [V521    ] (  0,  0   )     int  ->  zero-ref    "field V229._length (fldOffset=0x8)" P-INDEP
 ;  V522 tmp499      [V522,T89] (  2, 32   )   byref  ->  rcx         "field V233._reference (fldOffset=0x0)" P-INDEP
 ;  V523 tmp500      [V523,T106] (  2, 32   )     int  ->   r8         "field V233._length (fldOffset=0x8)" P-INDEP
 ;  V524 tmp501      [V524,T65] (  3, 32   )   byref  ->  registers   "field V237._reference (fldOffset=0x0)" P-INDEP
 ;  V525 tmp502      [V525,T77] (  3, 32   )     int  ->  registers   "field V237._length (fldOffset=0x8)" P-INDEP
 ;  V526 tmp503      [V526,T136] (  2, 16   )   byref  ->  rcx         "field V238._reference (fldOffset=0x0)" P-INDEP
 ;  V527 tmp504      [V527,T146] (  2, 16   )     int  ->   r8         "field V238._length (fldOffset=0x8)" P-INDEP
 ;* V528 tmp505      [V528    ] (  0,  0   )   byref  ->  zero-ref    "field V239._reference (fldOffset=0x0)" P-INDEP
 ;* V529 tmp506      [V529    ] (  0,  0   )     int  ->  zero-ref    "field V239._length (fldOffset=0x8)" P-INDEP
 ;* V530 tmp507      [V530    ] (  0,  0   )   byref  ->  zero-ref    "field V243._reference (fldOffset=0x0)" P-INDEP
 ;* V531 tmp508      [V531    ] (  0,  0   )     int  ->  zero-ref    "field V243._length (fldOffset=0x8)" P-INDEP
 ;* V532 tmp509      [V532    ] (  0,  0   )   byref  ->  zero-ref    "field V244._reference (fldOffset=0x0)" P-INDEP
 ;* V533 tmp510      [V533    ] (  0,  0   )     int  ->  zero-ref    "field V244._length (fldOffset=0x8)" P-INDEP
 ;  V534 tmp511      [V534,T66] (  3, 32   )   byref  ->  rcx         "field V245._reference (fldOffset=0x0)" P-INDEP
 ;  V535 tmp512      [V535,T78] (  3, 32   )     int  ->  rax         "field V245._length (fldOffset=0x8)" P-INDEP
-;  V536 tmp513      [V536,T116] (  2, 24   )   byref  ->  rcx         "field V247._reference (fldOffset=0x0)" P-INDEP
+;  V536 tmp513      [V536,T118] (  2, 24   )   byref  ->  rcx         "field V247._reference (fldOffset=0x0)" P-INDEP
 ;  V537 tmp514      [V537,T107] (  2, 32   )     int  ->  rsi         "field V247._length (fldOffset=0x8)" P-INDEP
 ;* V538 tmp515      [V538    ] (  0,  0   )   byref  ->  zero-ref    "field V249._reference (fldOffset=0x0)" P-DEP
 ;* V539 tmp516      [V539    ] (  0,  0   )     int  ->  zero-ref    "field V249._length (fldOffset=0x8)" P-DEP
 ;  V540 tmp517      [V540,T137] (  2, 16   )   byref  ->  rcx         "field V250._reference (fldOffset=0x0)" P-INDEP
 ;  V541 tmp518      [V541,T147] (  2, 16   )     int  ->  rax         "field V250._length (fldOffset=0x8)" P-INDEP
 ;  V542 tmp519      [V542,T90] (  2, 32   )   byref  ->  rcx         "field V254._reference (fldOffset=0x0)" P-INDEP
 ;* V543 tmp520      [V543    ] (  0,  0   )     int  ->  zero-ref    "field V254._length (fldOffset=0x8)" P-INDEP
 ;  V544 tmp521      [V544,T91] (  2, 32   )   byref  ->  rcx         "field V258._reference (fldOffset=0x0)" P-INDEP
 ;  V545 tmp522      [V545,T108] (  2, 32   )     int  ->   r8         "field V258._length (fldOffset=0x8)" P-INDEP
 ;* V546 tmp523      [V546,T154] (  0,  0   )     int  ->  zero-ref    "field V262._value (fldOffset=0x0)" P-INDEP
 ;* V547 tmp524      [V547    ] (  0,  0   )   byref  ->  zero-ref    "field V263._reference (fldOffset=0x0)" P-INDEP
 ;* V548 tmp525      [V548    ] (  0,  0   )     int  ->  zero-ref    "field V263._length (fldOffset=0x8)" P-INDEP
 ;* V549 tmp526      [V549    ] (  0,  0   )   byref  ->  zero-ref    "field V264._reference (fldOffset=0x0)" P-INDEP
 ;* V550 tmp527      [V550    ] (  0,  0   )     int  ->  zero-ref    "field V264._length (fldOffset=0x8)" P-INDEP
 ;* V551 tmp528      [V551    ] (  0,  0   )   byref  ->  zero-ref    "field V266._reference (fldOffset=0x0)" P-INDEP
 ;* V552 tmp529      [V552    ] (  0,  0   )     int  ->  zero-ref    "field V266._length (fldOffset=0x8)" P-INDEP
 ;  V553 tmp530      [V553,T67] (  3, 32   )   byref  ->  rsi         "field V270._reference (fldOffset=0x0)" P-INDEP
 ;  V554 tmp531      [V554,T79] (  3, 32   )     int  ->  rdx         "field V270._length (fldOffset=0x8)" P-INDEP
-;  V555 tmp532      [V555,T117] (  2, 24   )   byref  ->  rsi         "field V272._reference (fldOffset=0x0)" P-INDEP
+;  V555 tmp532      [V555,T119] (  2, 24   )   byref  ->  rsi         "field V272._reference (fldOffset=0x0)" P-INDEP
 ;  V556 tmp533      [V556,T109] (  2, 32   )     int  ->  rcx         "field V272._length (fldOffset=0x8)" P-INDEP
 ;* V557 tmp534      [V557    ] (  0,  0   )   byref  ->  zero-ref    "field V273._reference (fldOffset=0x0)" P-DEP
 ;* V558 tmp535      [V558    ] (  0,  0   )     int  ->  zero-ref    "field V273._length (fldOffset=0x8)" P-DEP
 ;  V559 tmp536      [V559,T138] (  2, 16   )   byref  ->  rsi         "field V274._reference (fldOffset=0x0)" P-INDEP
 ;  V560 tmp537      [V560,T148] (  2, 16   )     int  ->  rax         "field V274._length (fldOffset=0x8)" P-INDEP
 ;* V561 tmp538      [V561    ] (  0,  0   )   byref  ->  zero-ref    "field V276._reference (fldOffset=0x0)" P-INDEP
 ;* V562 tmp539      [V562    ] (  0,  0   )     int  ->  zero-ref    "field V276._length (fldOffset=0x8)" P-INDEP
 ;  V563 tmp540      [V563,T92] (  2, 32   )   byref  ->  rsi         "field V277._reference (fldOffset=0x0)" P-INDEP
 ;  V564 tmp541      [V564,T110] (  2, 32   )     int  ->  rdx         "field V277._length (fldOffset=0x8)" P-INDEP
 ;* V565 tmp542      [V565    ] (  0,  0   )   byref  ->  zero-ref    "field V278._reference (fldOffset=0x0)" P-INDEP
 ;* V566 tmp543      [V566    ] (  0,  0   )     int  ->  zero-ref    "field V278._length (fldOffset=0x8)" P-INDEP
 ;  V567 tmp544      [V567,T68] (  3, 32   )   byref  ->  registers   "field V296._reference (fldOffset=0x0)" P-INDEP
 ;  V568 tmp545      [V568,T80] (  3, 32   )     int  ->  registers   "field V296._length (fldOffset=0x8)" P-INDEP
 ;  V569 tmp546      [V569,T139] (  2, 16   )   byref  ->  rcx         "field V297._reference (fldOffset=0x0)" P-INDEP
 ;  V570 tmp547      [V570,T149] (  2, 16   )     int  ->   r8         "field V297._length (fldOffset=0x8)" P-INDEP
 ;* V571 tmp548      [V571    ] (  0,  0   )   byref  ->  zero-ref    "field V298._reference (fldOffset=0x0)" P-INDEP
 ;* V572 tmp549      [V572    ] (  0,  0   )     int  ->  zero-ref    "field V298._length (fldOffset=0x8)" P-INDEP
 ;* V573 tmp550      [V573    ] (  0,  0   )   byref  ->  zero-ref    "field V302._reference (fldOffset=0x0)" P-INDEP
 ;* V574 tmp551      [V574    ] (  0,  0   )     int  ->  zero-ref    "field V302._length (fldOffset=0x8)" P-INDEP
 ;* V575 tmp552      [V575    ] (  0,  0   )   byref  ->  zero-ref    "field V303._reference (fldOffset=0x0)" P-INDEP
 ;* V576 tmp553      [V576    ] (  0,  0   )     int  ->  zero-ref    "field V303._length (fldOffset=0x8)" P-INDEP
 ;  V577 tmp554      [V577,T69] (  3, 32   )   byref  ->  rcx         "field V304._reference (fldOffset=0x0)" P-INDEP
 ;  V578 tmp555      [V578,T81] (  3, 32   )     int  ->  rax         "field V304._length (fldOffset=0x8)" P-INDEP
-;  V579 tmp556      [V579,T118] (  2, 24   )   byref  ->  rcx         "field V306._reference (fldOffset=0x0)" P-INDEP
+;  V579 tmp556      [V579,T120] (  2, 24   )   byref  ->  rcx         "field V306._reference (fldOffset=0x0)" P-INDEP
 ;  V580 tmp557      [V580,T111] (  2, 32   )     int  ->  rsi         "field V306._length (fldOffset=0x8)" P-INDEP
 ;* V581 tmp558      [V581    ] (  0,  0   )   byref  ->  zero-ref    "field V308._reference (fldOffset=0x0)" P-DEP
 ;* V582 tmp559      [V582    ] (  0,  0   )     int  ->  zero-ref    "field V308._length (fldOffset=0x8)" P-DEP
 ;  V583 tmp560      [V583,T140] (  2, 16   )   byref  ->  rcx         "field V309._reference (fldOffset=0x0)" P-INDEP
 ;  V584 tmp561      [V584,T150] (  2, 16   )     int  ->  rax         "field V309._length (fldOffset=0x8)" P-INDEP
 ;  V585 tmp562      [V585,T93] (  2, 32   )   byref  ->  rcx         "field V313._reference (fldOffset=0x0)" P-INDEP
 ;* V586 tmp563      [V586    ] (  0,  0   )     int  ->  zero-ref    "field V313._length (fldOffset=0x8)" P-INDEP
 ;  V587 tmp564      [V587,T94] (  2, 32   )   byref  ->  rcx         "field V317._reference (fldOffset=0x0)" P-INDEP
 ;  V588 tmp565      [V588,T112] (  2, 32   )     int  ->   r8         "field V317._length (fldOffset=0x8)" P-INDEP
 ;  V589 tmp566      [V589,T266] (  2,  4   )   byref  ->  rdi         "field V320._reference (fldOffset=0x0)" P-INDEP
 ;  V590 tmp567      [V590,T239] (  3,  6   )     int  ->  rcx         "field V320._length (fldOffset=0x8)" P-INDEP
 ;  V591 tmp568      [V591,T216] (  3,  6   )   byref  ->  rax         "field V321._reference (fldOffset=0x0)" P-INDEP
 ;  V592 tmp569      [V592,T240] (  3,  6   )     int  ->  rdx         "field V321._length (fldOffset=0x8)" P-INDEP
 ;  V593 tmp570      [V593,T267] (  2,  4   )   byref  ->  rdi         "field V323._reference (fldOffset=0x0)" P-INDEP
 ;  V594 tmp571      [V594,T241] (  3,  6   )     int  ->  rcx         "field V323._length (fldOffset=0x8)" P-INDEP
 ;  V595 tmp572      [V595,T217] (  3,  6   )   byref  ->  rax         "field V324._reference (fldOffset=0x0)" P-INDEP
 ;  V596 tmp573      [V596,T242] (  3,  6   )     int  ->  rdx         "field V324._length (fldOffset=0x8)" P-INDEP
 ;* V597 tmp574      [V597    ] (  0,  0   )   byref  ->  zero-ref    "field V326._reference (fldOffset=0x0)" P-INDEP
 ;* V598 tmp575      [V598    ] (  0,  0   )     int  ->  zero-ref    "field V326._length (fldOffset=0x8)" P-INDEP
 ;* V599 tmp576      [V599    ] (  0,  0   )   byref  ->  zero-ref    "field V328._reference (fldOffset=0x0)" P-INDEP
 ;* V600 tmp577      [V600    ] (  0,  0   )     int  ->  zero-ref    "field V328._length (fldOffset=0x8)" P-INDEP
 ;  V601 tmp578      [V601,T268] (  2,  4   )   byref  ->   r8         "field V330._reference (fldOffset=0x0)" P-INDEP
 ;  V602 tmp579      [V602,T243] (  3,  6   )     int  ->   r9         "field V330._length (fldOffset=0x8)" P-INDEP
 ;  V603 tmp580      [V603,T244] (  3,  6   )     int  ->  [rbp-0x90]  spill-single-def "field V332._value (fldOffset=0x0)" P-INDEP
 ;* V604 tmp581      [V604    ] (  0,  0   )   byref  ->  zero-ref    "field V333._reference (fldOffset=0x0)" P-INDEP
 ;* V605 tmp582      [V605    ] (  0,  0   )     int  ->  zero-ref    "field V333._length (fldOffset=0x8)" P-INDEP
 ;* V606 tmp583      [V606    ] (  0,  0   )   byref  ->  zero-ref    "field V334._reference (fldOffset=0x0)" P-INDEP
 ;* V607 tmp584      [V607    ] (  0,  0   )     int  ->  zero-ref    "field V334._length (fldOffset=0x8)" P-INDEP
 ;  V608 tmp585      [V608,T269] (  2,  4   )   byref  ->   r8         "field V336._reference (fldOffset=0x0)" P-INDEP
 ;  V609 tmp586      [V609,T245] (  3,  6   )     int  ->   r9         "field V336._length (fldOffset=0x8)" P-INDEP
 ;  V610 tmp587      [V610,T218] (  3,  6   )   byref  ->  rsi         "field V340._reference (fldOffset=0x0)" P-INDEP
 ;  V611 tmp588      [V611,T246] (  3,  6   )     int  ->  rdx         "field V340._length (fldOffset=0x8)" P-INDEP
 ;  V612 tmp589      [V612,T270] (  2,  4   )   byref  ->  rsi         "field V342._reference (fldOffset=0x0)" P-INDEP
 ;  V613 tmp590      [V613,T289] (  2,  4   )     int  ->  rcx         "field V342._length (fldOffset=0x8)" P-INDEP
 ;* V614 tmp591      [V614    ] (  0,  0   )   byref  ->  zero-ref    "field V343._reference (fldOffset=0x0)" P-DEP
 ;* V615 tmp592      [V615    ] (  0,  0   )     int  ->  zero-ref    "field V343._length (fldOffset=0x8)" P-DEP
 ;  V616 tmp593      [V616,T271] (  2,  4   )   byref  ->  rsi         "field V344._reference (fldOffset=0x0)" P-INDEP
 ;  V617 tmp594      [V617,T290] (  2,  4   )     int  ->  rax         "field V344._length (fldOffset=0x8)" P-INDEP
 ;* V618 tmp595      [V618    ] (  0,  0   )   byref  ->  zero-ref    "field V346._reference (fldOffset=0x0)" P-INDEP
 ;* V619 tmp596      [V619    ] (  0,  0   )     int  ->  zero-ref    "field V346._length (fldOffset=0x8)" P-INDEP
 ;  V620 tmp597      [V620,T272] (  2,  4   )   byref  ->  rsi         "field V347._reference (fldOffset=0x0)" P-INDEP
 ;  V621 tmp598      [V621,T291] (  2,  4   )     int  ->  rdx         "field V347._length (fldOffset=0x8)" P-INDEP
 ;* V622 tmp599      [V622    ] (  0,  0   )   byref  ->  zero-ref    "field V348._reference (fldOffset=0x0)" P-INDEP
 ;* V623 tmp600      [V623    ] (  0,  0   )     int  ->  zero-ref    "field V348._length (fldOffset=0x8)" P-INDEP
 ;  V624 tmp601      [V624,T19] (  3, 96   )     ref  ->  rdi         "argument with side effect"
 ;  V625 tmp602      [V625,T205] (  2,  8   )     int  ->  rsi         "argument with side effect"
 ;  V626 tmp603      [V626,T312] (  2,  0   )     ref  ->  rsi         "argument with side effect"
 ;  V627 tmp604      [V627,T313] (  2,  0   )     ref  ->  rsi         "argument with side effect"
-;  V628 tmp605      [V628,T129] (  4, 16   )    long  ->   r8         "fgMakeTemp is creating a new local variable"
+;  V628 tmp605      [V628,T131] (  4, 16   )    long  ->   r8         "fgMakeTemp is creating a new local variable"
 ;  V629 tmp606      [V629,T159] (  3, 12   )     ref  ->  rdx         "arr expr"
 ;  V630 tmp607      [V630,T160] (  3, 12   )     ref  ->  rdx         "arr expr"
 ;  V631 tmp608      [V631,T314] (  2,  0   )     ref  ->  rsi         "argument with side effect"
-;  V632 cse0        [V632,T56] (  3, 48   )    long  ->  rdx         "CSE - conservative"
-;  V633 cse1        [V633,T123] (  4, 19   )    long  ->  [rbp-0x98]  spill-single-def "CSE - conservative"
+;  V632 cse0        [V632,T57] (  3, 48   )    long  ->  rdx         "CSE - conservative"
+;  V633 cse1        [V633,T125] (  4, 19   )    long  ->  [rbp-0x98]  spill-single-def "CSE - conservative"
 ;  V634 cse2        [V634,T247] (  3,  6   )     int  ->  rdi         "CSE - conservative"
 ;  V635 cse3        [V635,T06] ( 18,204   )     ref  ->  rdi         multi-def "CSE - aggressive"
-;  V636 cse4        [V636,T50] (  3, 48   )     ref  ->  [rbp-0x128]  spill-single-def "CSE - conservative"
+;  V636 cse4        [V636,T51] (  3, 48   )     ref  ->  [rbp-0x128]  spill-single-def "CSE - conservative"
 ;  V637 cse5        [V637,T22] (  8, 80   )     int  ->  rdi         "CSE - moderate"
 ;  V638 rat0        [V638,T165] (  3, 12   )     int  ->   r8         "ReplaceWithLclVar is creating a new local variable"
 ;  V639 rat1        [V639,T166] (  3, 12   )    long  ->  rsi         "ReplaceWithLclVar is creating a new local variable"
 ;  V640 rat2        [V640,T167] (  3, 12   )    long  ->  rdx         "ReplaceWithLclVar is creating a new local variable"
 ;  V641 rat3        [V641,T20] (  3, 96   )    long  ->  rdx         "ReplaceWithLclVar is creating a new local variable"
 ;  V642 rat4        [V642,T21] (  3, 96   )     int  ->  rdx         "ReplaceWithLclVar is creating a new local variable"
 ;  TEMP_01                                    long  ->  [rbp-0x130]
 ;
 ; Lcl frame size = 264
 
 G_M51644_IG01:
        push     rbp
        push     r15
        push     r14
        push     r13
        push     r12
        push     rbx
        sub      rsp, 264
        vzeroupper 
        lea      rbp, [rsp+0x130]
        mov      qword ptr [rbp-0x30], rdi
        mov      r14, rsi
        mov      r15d, edx
        mov      r13, rcx
        mov      r12, r8
        mov      rbx, r9
 						;; size=47 bbWeight=1 PerfScore 10.00
 G_M51644_IG02:
        mov      rax, gword ptr [r13+0x90]
        mov      gword ptr [rbp-0xA0], rax
        mov      rdi, rax
        mov      rcx, qword ptr [rax]
        mov      rcx, qword ptr [rcx+0x40]
        mov      qword ptr [rbp-0x98], rcx
        call     [rcx+0x38]System.Globalization.Calendar:get_ID():ushort:this
        cmp      eax, 8
        sete     al
        movzx    rax, al
        mov      dword ptr [rbp-0x34], eax
        mov      rdi, gword ptr [rbp-0xA0]
        mov      rcx, qword ptr [rbp-0x98]
        call     [rcx+0x38]System.Globalization.Calendar:get_ID():ushort:this
        cmp      eax, 3
        sete     al
        movzx    rax, al
        mov      dword ptr [rbp-0x38], eax
        mov      dword ptr [rbp-0x3C], 1
        xor      edx, edx
        test     r15d, r15d
-       jle      G_M51644_IG181
+       jle      G_M51644_IG185
 						;; size=93 bbWeight=1 PerfScore 23.75
 G_M51644_IG03:
        cmp      edx, r15d
-       jae      G_M51644_IG182
+       jae      G_M51644_IG186
        mov      dword ptr [rbp-0x40], edx
        mov      edi, edx
        movzx    rsi, word  ptr [r14+2*rdi]
        mov      dword ptr [rbp-0x48], esi
        cmp      esi, 75
        ja       G_M51644_IG08
 						;; size=31 bbWeight=4 PerfScore 27.00
 G_M51644_IG04:
        cmp      esi, 47
        ja       SHORT G_M51644_IG06
        cmp      esi, 37
        ja       SHORT G_M51644_IG05
        cmp      esi, 34
-       je       G_M51644_IG165
+       je       G_M51644_IG169
        cmp      esi, 37
-       jne      G_M51644_IG174
-       jmp      G_M51644_IG166
+       jne      G_M51644_IG178
+       jmp      G_M51644_IG170
 						;; size=33 bbWeight=2 PerfScore 14.00
 G_M51644_IG05:
        cmp      esi, 39
-       je       G_M51644_IG165
+       je       G_M51644_IG169
        cmp      esi, 47
-       jne      G_M51644_IG174
+       jne      G_M51644_IG178
        mov      rdi, r13
        mov      rsi, 0xD1FFAB1E      ; code for System.Globalization.DateTimeFormatInfo:DateSeparatorTChar[ubyte]():System.ReadOnlySpan`1[ubyte]:this
        call     [rsi]System.Globalization.DateTimeFormatInfo:DateSeparatorTChar[ubyte]():System.ReadOnlySpan`1[ubyte]:this
-       jmp      G_M51644_IG163
+       jmp      G_M51644_IG167
 						;; size=38 bbWeight=2 PerfScore 16.00
 G_M51644_IG06:
        cmp      esi, 70
        ja       SHORT G_M51644_IG07
        cmp      esi, 58
-       je       G_M51644_IG161
+       je       G_M51644_IG165
        cmp      esi, 70
        je       G_M51644_IG48
-       jmp      G_M51644_IG174
+       jmp      G_M51644_IG178
 						;; size=28 bbWeight=2 PerfScore 11.50
 G_M51644_IG07:
        cmp      esi, 72
        je       G_M51644_IG30
        cmp      esi, 75
-       jne      G_M51644_IG174
+       jne      G_M51644_IG178
        mov      dword ptr [rbp-0x44], 1
        mov      rdi, qword ptr [rbp-0x30]
        mov      rsi, r12
        mov      rdx, rbx
        mov      r9, 0xD1FFAB1E      ; code for System.DateTimeFormat:FormatCustomizedRoundripTimeZone[ubyte](System.DateTime,System.TimeSpan,byref)
        call     [r9]System.DateTimeFormat:FormatCustomizedRoundripTimeZone[ubyte](System.DateTime,System.TimeSpan,byref)
-       jmp      G_M51644_IG180
+       jmp      G_M51644_IG184
 						;; size=53 bbWeight=2 PerfScore 20.50
 G_M51644_IG08:
        cmp      esi, 109
        ja       SHORT G_M51644_IG11
        cmp      esi, 92
        ja       SHORT G_M51644_IG09
        cmp      esi, 77
        je       G_M51644_IG92
        cmp      esi, 92
-       jne      G_M51644_IG174
-       jmp      G_M51644_IG169
+       jne      G_M51644_IG178
+       jmp      G_M51644_IG173
 						;; size=33 bbWeight=2 PerfScore 14.00
 G_M51644_IG09:
        lea      r8d, [rsi-0x64]
        cmp      r8d, 4
        ja       SHORT G_M51644_IG10
        mov      edi, r8d
        lea      r8, [reloc @RWD00]
        mov      r8d, dword ptr [r8+4*rdi]
        lea      r9, G_M51644_IG02
        add      r8, r9
        jmp      r8
 						;; size=37 bbWeight=2 PerfScore 15.50
 G_M51644_IG10:
        cmp      esi, 109
-       jne      G_M51644_IG174
+       jne      G_M51644_IG178
        jmp      G_M51644_IG36
 						;; size=14 bbWeight=2 PerfScore 6.50
 G_M51644_IG11:
        cmp      esi, 116
        ja       SHORT G_M51644_IG12
        cmp      esi, 115
        je       G_M51644_IG42
        cmp      esi, 116
-       jne      G_M51644_IG174
+       jne      G_M51644_IG178
        jmp      G_M51644_IG61
 						;; size=28 bbWeight=2 PerfScore 11.50
 G_M51644_IG12:
        cmp      esi, 121
        je       G_M51644_IG128
        cmp      esi, 122
        jne      SHORT G_M51644_IG13
        mov      rdi, r14
        mov      esi, r15d
        mov      edx, dword ptr [rbp-0x40]
        mov      ecx, dword ptr [rbp-0x48]
        mov      r8, 0xD1FFAB1E      ; code for System.DateTimeFormat:ParseRepeatPattern(System.ReadOnlySpan`1[ushort],int,ushort):int
        call     [r8]System.DateTimeFormat:ParseRepeatPattern(System.ReadOnlySpan`1[ushort],int,ushort):int
        mov      rdi, qword ptr [rbp-0x30]
        mov      rsi, r12
        mov      dword ptr [rbp-0x44], eax
        mov      edx, eax
        mov      ecx, dword ptr [rbp-0x3C]
        mov      r8, rbx
        mov      r9, 0xD1FFAB1E      ; code for System.DateTimeFormat:FormatCustomizedTimeZone[ubyte](System.DateTime,System.TimeSpan,int,ubyte,byref)
        call     [r9]System.DateTimeFormat:FormatCustomizedTimeZone[ubyte](System.DateTime,System.TimeSpan,int,ubyte,byref)
-       jmp      G_M51644_IG180
+       jmp      G_M51644_IG184
 						;; size=75 bbWeight=2 PerfScore 34.50
 G_M51644_IG13:
        mov      esi, dword ptr [rbp-0x48]
-       jmp      G_M51644_IG174
+       jmp      G_M51644_IG178
        align    [2 bytes for IG15]
 						;; size=10 bbWeight=1 PerfScore 3.00
 G_M51644_IG14:
        mov      edx, dword ptr [rbp-0x40]
        lea      edi, [rdx+0x01]
        jmp      SHORT G_M51644_IG16
 						;; size=8 bbWeight=2 PerfScore 7.00
 G_M51644_IG15:
        inc      edi
 						;; size=2 bbWeight=8 PerfScore 2.00
 G_M51644_IG16:
        cmp      edi, r15d
        jae      SHORT G_M51644_IG17
        mov      r8d, edi
        movzx    r8, word  ptr [r14+2*r8]
        cmp      r8d, esi
        je       SHORT G_M51644_IG15
 						;; size=18 bbWeight=16 PerfScore 76.00
 G_M51644_IG17:
        mov      dword ptr [rbp-0x40], edx
        sub      edi, edx
        mov      dword ptr [rbp-0x44], edi
        mov      rdi, gword ptr [rbp-0xA0]
        mov      rsi, qword ptr [rbp-0x30]
        mov      r9, qword ptr [rdi]
        mov      r9, qword ptr [r9+0x58]
        call     [r9+0x10]System.Globalization.Calendar:GetEra(System.DateTime):int:this
        mov      esi, eax
        mov      rdi, r13
        mov      rax, 0xD1FFAB1E      ; code for System.Globalization.DateTimeFormatInfo:GetEraName(int):System.String:this
        call     [rax]System.Globalization.DateTimeFormatInfo:GetEraName(int):System.String:this
        test     rax, rax
        jne      SHORT G_M51644_IG18
        xor      rcx, rcx
        xor      r8d, r8d
        jmp      SHORT G_M51644_IG19
-       align    [0 bytes for IG23]
-						;; size=59 bbWeight=2 PerfScore 37.50
+       align    [14 bytes for IG23]
+						;; size=73 bbWeight=2 PerfScore 37.50
 G_M51644_IG18:
        lea      rcx, bword ptr [rax+0x0C]
        mov      r8d, dword ptr [rax+0x08]
        mov      rax, rcx
        mov      ecx, r8d
        mov      r8d, ecx
        mov      rcx, rax
 						;; size=20 bbWeight=2 PerfScore 7.00
 G_M51644_IG19:
        mov      rax, rcx
        mov      bword ptr [rbp-0x100], rax
        mov      ecx, r8d
        mov      dword ptr [rbp-0x78], ecx
        mov      rsi, 0xD1FFAB1E      ; const ptr
        mov      rdi, gword ptr [rsi]
        mov      gword ptr [rbp-0xA8], rdi
        mov      rsi, rax
        mov      edx, ecx
        mov      r9, 0xD1FFAB1E      ; code for System.Text.UTF8Encoding:GetByteCount(System.ReadOnlySpan`1[ushort]):int:this
        call     [r9]System.Text.UTF8Encoding:GetByteCount(System.ReadOnlySpan`1[ushort]):int:this
        mov      edi, dword ptr [rbx+0x08]
        mov      rcx, bword ptr [rbx+0x10]
        mov      esi, dword ptr [rbx+0x18]
        mov      edx, edi
        mov      r8d, eax
        add      rdx, r8
        cmp      rdx, rsi
        ja       SHORT G_M51644_IG20
        lea      esi, [rdi+rax]
        mov      dword ptr [rbx+0x08], esi
        mov      edx, edi
        add      rcx, rdx
        jmp      SHORT G_M51644_IG21
 						;; size=90 bbWeight=2 PerfScore 43.00
 G_M51644_IG20:
        mov      rdi, rbx
        mov      esi, eax
        mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.ValueListBuilder`1[ubyte]:AppendSpanWithGrow(int):System.Span`1[ubyte]:this
        call     [rax]System.Collections.Generic.ValueListBuilder`1[ubyte]:AppendSpanWithGrow(int):System.Span`1[ubyte]:this
        mov      rcx, rax
        mov      eax, edx
 						;; size=22 bbWeight=2 PerfScore 8.50
 G_M51644_IG21:
        mov      r8d, eax
        mov      rsi, bword ptr [rbp-0x100]
        mov      edx, dword ptr [rbp-0x78]
        mov      rdi, gword ptr [rbp-0xA8]
        mov      rax, 0xD1FFAB1E      ; code for System.Text.UTF8Encoding:GetBytes(System.ReadOnlySpan`1[ushort],System.Span`1[ubyte]):int:this
+       cmp      dword ptr [rdi], edi
        call     [rax]System.Text.UTF8Encoding:GetBytes(System.ReadOnlySpan`1[ushort],System.Span`1[ubyte]):int:this
-       jmp      G_M51644_IG180
-						;; size=37 bbWeight=2 PerfScore 17.00
+       jmp      G_M51644_IG184
+						;; size=39 bbWeight=2 PerfScore 23.00
 G_M51644_IG22:
        mov      edx, dword ptr [rbp-0x40]
        lea      edi, [rdx+0x01]
        jmp      SHORT G_M51644_IG24
 						;; size=8 bbWeight=2 PerfScore 7.00
 G_M51644_IG23:
        inc      edi
 						;; size=2 bbWeight=8 PerfScore 2.00
 G_M51644_IG24:
        cmp      edi, r15d
        jae      SHORT G_M51644_IG25
        mov      r8d, edi
        movzx    r8, word  ptr [r14+2*r8]
        cmp      r8d, esi
        je       SHORT G_M51644_IG23
 						;; size=18 bbWeight=16 PerfScore 76.00
 G_M51644_IG25:
        mov      dword ptr [rbp-0x40], edx
        mov      r8d, edi
        sub      r8d, edx
        mov      dword ptr [rbp-0x44], r8d
        lea      rdi, [rbp-0x30]
        mov      rsi, 0xD1FFAB1E      ; code for System.DateTime:get_Hour():int:this
        call     [rsi]System.DateTime:get_Hour():int:this
        mov      esi, eax
        cmp      esi, 12
        jle      SHORT G_M51644_IG26
        add      esi, -12
        jmp      SHORT G_M51644_IG27
-       align    [0 bytes for IG31]
-						;; size=41 bbWeight=2 PerfScore 20.00
+       align    [7 bytes for IG31]
+						;; size=48 bbWeight=2 PerfScore 20.00
 G_M51644_IG26:
        test     esi, esi
        jne      SHORT G_M51644_IG27
        mov      esi, 12
 						;; size=9 bbWeight=2 PerfScore 3.00
 G_M51644_IG27:
        mov      eax, dword ptr [rbp-0x44]
        cmp      eax, 2
        jle      SHORT G_M51644_IG28
        mov      edx, 2
        mov      dword ptr [rbp-0x44], eax
        jmp      SHORT G_M51644_IG29
 						;; size=18 bbWeight=2 PerfScore 11.00
 G_M51644_IG28:
        mov      dword ptr [rbp-0x44], eax
        mov      edx, eax
 						;; size=5 bbWeight=2 PerfScore 2.50
 G_M51644_IG29:
        mov      rdi, rbx
        mov      rcx, 0xD1FFAB1E      ; code for System.DateTimeFormat:FormatDigits[ubyte](byref,int,int)
        call     [rcx]System.DateTimeFormat:FormatDigits[ubyte](byref,int,int)
-       jmp      G_M51644_IG180
+       jmp      G_M51644_IG184
 						;; size=20 bbWeight=2 PerfScore 11.00
 G_M51644_IG30:
        mov      edx, dword ptr [rbp-0x40]
        lea      edi, [rdx+0x01]
        jmp      SHORT G_M51644_IG32
 						;; size=8 bbWeight=2 PerfScore 7.00
 G_M51644_IG31:
        inc      edi
 						;; size=2 bbWeight=8 PerfScore 2.00
 G_M51644_IG32:
        cmp      edi, r15d
        jae      SHORT G_M51644_IG33
        mov      r8d, edi
        movzx    r8, word  ptr [r14+2*r8]
        cmp      r8d, esi
        je       SHORT G_M51644_IG31
 						;; size=18 bbWeight=16 PerfScore 76.00
 G_M51644_IG33:
        mov      dword ptr [rbp-0x40], edx
        sub      edi, edx
        mov      dword ptr [rbp-0x44], edi
        lea      rdi, [rbp-0x30]
        mov      rsi, 0xD1FFAB1E      ; code for System.DateTime:get_Hour():int:this
        call     [rsi]System.DateTime:get_Hour():int:this
        mov      esi, eax
        mov      eax, dword ptr [rbp-0x44]
        cmp      eax, 2
        jle      SHORT G_M51644_IG34
        mov      edx, 2
        mov      dword ptr [rbp-0x44], eax
        jmp      SHORT G_M51644_IG35
        align    [0 bytes for IG37]
 						;; size=44 bbWeight=2 PerfScore 23.50
 G_M51644_IG34:
        mov      dword ptr [rbp-0x44], eax
        mov      edx, eax
 						;; size=5 bbWeight=2 PerfScore 2.50
 G_M51644_IG35:
        mov      rdi, rbx
        mov      rcx, 0xD1FFAB1E      ; code for System.DateTimeFormat:FormatDigits[ubyte](byref,int,int)
        call     [rcx]System.DateTimeFormat:FormatDigits[ubyte](byref,int,int)
-       jmp      G_M51644_IG180
+       jmp      G_M51644_IG184
 						;; size=20 bbWeight=2 PerfScore 11.00
 G_M51644_IG36:
        mov      edx, dword ptr [rbp-0x40]
        lea      edi, [rdx+0x01]
        jmp      SHORT G_M51644_IG38
 						;; size=8 bbWeight=2 PerfScore 7.00
 G_M51644_IG37:
        inc      edi
 						;; size=2 bbWeight=8 PerfScore 2.00
 G_M51644_IG38:
        cmp      edi, r15d
        jae      SHORT G_M51644_IG39
        mov      r8d, edi
        movzx    r8, word  ptr [r14+2*r8]
        cmp      r8d, esi
        je       SHORT G_M51644_IG37
 						;; size=18 bbWeight=16 PerfScore 76.00
 G_M51644_IG39:
        mov      dword ptr [rbp-0x40], edx
        sub      edi, edx
        mov      dword ptr [rbp-0x44], edi
        lea      rdi, [rbp-0x30]
        mov      rsi, 0xD1FFAB1E      ; code for System.DateTime:get_Minute():int:this
        call     [rsi]System.DateTime:get_Minute():int:this
        mov      esi, eax
        mov      eax, dword ptr [rbp-0x44]
        cmp      eax, 2
        jle      SHORT G_M51644_IG40
        mov      edx, 2
        mov      dword ptr [rbp-0x44], eax
        jmp      SHORT G_M51644_IG41
        align    [0 bytes for IG43]
 						;; size=44 bbWeight=2 PerfScore 23.50
 G_M51644_IG40:
        mov      dword ptr [rbp-0x44], eax
        mov      edx, eax
 						;; size=5 bbWeight=2 PerfScore 2.50
 G_M51644_IG41:
        mov      rdi, rbx
        mov      rcx, 0xD1FFAB1E      ; code for System.DateTimeFormat:FormatDigits[ubyte](byref,int,int)
        call     [rcx]System.DateTimeFormat:FormatDigits[ubyte](byref,int,int)
-       jmp      G_M51644_IG180
+       jmp      G_M51644_IG184
 						;; size=20 bbWeight=2 PerfScore 11.00
 G_M51644_IG42:
        mov      edx, dword ptr [rbp-0x40]
        lea      edi, [rdx+0x01]
        jmp      SHORT G_M51644_IG44
 						;; size=8 bbWeight=2 PerfScore 7.00
 G_M51644_IG43:
        inc      edi
 						;; size=2 bbWeight=8 PerfScore 2.00
 G_M51644_IG44:
        cmp      edi, r15d
        jae      SHORT G_M51644_IG45
        mov      r8d, edi
        movzx    r8, word  ptr [r14+2*r8]
        cmp      r8d, esi
        je       SHORT G_M51644_IG43
 						;; size=18 bbWeight=16 PerfScore 76.00
 G_M51644_IG45:
        mov      dword ptr [rbp-0x40], edx
        sub      edi, edx
        mov      r8d, edi
        mov      rdi, 0xD1FFAB1E
        and      rdi, qword ptr [rbp-0x30]
        mov      rsi, 0xD1FFAB1E
        mov      rax, rdi
        mul      rdx:rax, rsi
        mov      rsi, rdx
        shr      rsi, 22
        mov      rdx, 0xD1FFAB1E
        mov      rax, rsi
        mul      rdx:rax, rdx
        imul     rdi, rdx, 60
        sub      rsi, rdi
        cmp      r8d, 2
        jle      SHORT G_M51644_IG46
        mov      edx, 2
        mov      dword ptr [rbp-0x44], r8d
        jmp      SHORT G_M51644_IG47
-       align    [9 bytes for IG49]
-						;; size=94 bbWeight=2 PerfScore 36.50
+       align    [2 bytes for IG49]
+						;; size=87 bbWeight=2 PerfScore 36.50
 G_M51644_IG46:
        mov      dword ptr [rbp-0x44], r8d
        mov      edx, r8d
 						;; size=7 bbWeight=2 PerfScore 2.50
 G_M51644_IG47:
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.DateTimeFormat:FormatDigits[ubyte](byref,int,int)
        call     [rax]System.DateTimeFormat:FormatDigits[ubyte](byref,int,int)
-       jmp      G_M51644_IG180
+       jmp      G_M51644_IG184
 						;; size=20 bbWeight=2 PerfScore 11.00
 G_M51644_IG48:
        mov      edx, dword ptr [rbp-0x40]
        lea      edi, [rdx+0x01]
        jmp      SHORT G_M51644_IG50
 						;; size=8 bbWeight=2 PerfScore 7.00
 G_M51644_IG49:
        inc      edi
        mov      esi, dword ptr [rbp-0x48]
 						;; size=5 bbWeight=8 PerfScore 10.00
 G_M51644_IG50:
        cmp      edi, r15d
        jae      SHORT G_M51644_IG52
        mov      r8d, edi
        movzx    r8, word  ptr [r14+2*r8]
        cmp      r8d, esi
        je       SHORT G_M51644_IG49
 						;; size=18 bbWeight=16 PerfScore 76.00
 G_M51644_IG51:
        mov      esi, dword ptr [rbp-0x48]
 						;; size=3 bbWeight=8 PerfScore 8.00
 G_M51644_IG52:
        mov      dword ptr [rbp-0x40], edx
        mov      r8d, edi
        sub      r8d, edx
        mov      edi, r8d
        cmp      edi, 7
-       jg       G_M51644_IG183
+       jg       G_M51644_IG187
        mov      r8, 0xD1FFAB1E
        and      r8, qword ptr [rbp-0x30]
        mov      r9, 0xD1FFAB1E
        mov      rax, r9
        imul     rdx:rax, r8
        add      rdx, r8
        mov      rax, rdx
        shr      rax, 63
        sar      rdx, 23
        add      rax, rdx
        imul     rax, rax, 0xD1FFAB1E
        sub      r8, rax
        mov      qword ptr [rbp-0x130], r8
        mov      dword ptr [rbp-0x44], edi
        mov      eax, edi
        neg      eax
        add      eax, 7
        vxorps   xmm1, xmm1, xmm1
        vcvtsi2sd xmm1, xmm1, eax
        vmovsd   xmm0, qword ptr [reloc @RWD24]
        call     System.Math:Pow(double,double):double
        vcvttsd2si  rcx, xmm0
        mov      rax, qword ptr [rbp-0x130]
        cqo      
        idiv     rdx:rax, rcx
        mov      rsi, rax
        cmp      dword ptr [rbp-0x48], 102
        jne      SHORT G_M51644_IG55
        mov      rdx, 0xD1FFAB1E      ; data for System.DateTimeFormat:fixedNumberFormats
        mov      rdx, gword ptr [rdx]
        mov      eax, dword ptr [rbp-0x44]
        lea      ecx, [rax-0x01]
        cmp      ecx, dword ptr [rdx+0x08]
-       jae      G_M51644_IG182
+       jae      G_M51644_IG186
        mov      dword ptr [rbp-0x44], eax
        lea      ecx, [rax-0x01]
        mov      rdx, gword ptr [rdx+8*rcx+0x10]
        test     rdx, rdx
        jne      SHORT G_M51644_IG53
        xor      rdx, rdx
        xor      ecx, ecx
        jmp      SHORT G_M51644_IG54
        align    [3 bytes for IG56]
 						;; size=195 bbWeight=2 PerfScore 239.17
 G_M51644_IG53:
        lea      rcx, bword ptr [rdx+0x0C]
        mov      edx, dword ptr [rdx+0x08]
        mov      edi, edx
        mov      rdx, rcx
        mov      ecx, edi
 						;; size=14 bbWeight=2 PerfScore 6.50
 G_M51644_IG54:
        mov      rdi, rbx
        mov      r8, 0xD1FFAB1E      ; code for System.DateTimeFormat:FormatFraction[ubyte](byref,int,System.ReadOnlySpan`1[ushort])
        call     [r8]System.DateTimeFormat:FormatFraction[ubyte](byref,int,System.ReadOnlySpan`1[ushort])
-       jmp      G_M51644_IG180
+       jmp      G_M51644_IG184
 						;; size=21 bbWeight=2 PerfScore 11.00
 G_M51644_IG55:
        mov      r8d, dword ptr [rbp-0x44]
        mov      ecx, r8d
        mov      dword ptr [rbp-0x44], r8d
        test     r8d, r8d
        jle      SHORT G_M51644_IG57
 						;; size=16 bbWeight=2 PerfScore 7.00
 G_M51644_IG56:
        mov      rdx, 0xD1FFAB1E
        mov      rax, rdx
        imul     rdx:rax, rsi
        mov      rdi, rdx
        shr      rdi, 63
        sar      rdx, 2
        add      rdx, rdi
        lea      rdi, [rdx+4*rdx]
        add      rdi, rdi
        mov      rax, rsi
        sub      rax, rdi
        jne      SHORT G_M51644_IG57
        mov      rsi, rdx
        dec      ecx
        test     ecx, ecx
        jg       SHORT G_M51644_IG56
 						;; size=54 bbWeight=16 PerfScore 144.00
 G_M51644_IG57:
        test     ecx, ecx
        jle      SHORT G_M51644_IG60
        mov      rdx, 0xD1FFAB1E      ; data for System.DateTimeFormat:fixedNumberFormats
        mov      rdx, gword ptr [rdx]
        lea      edi, [rcx-0x01]
        cmp      edi, dword ptr [rdx+0x08]
-       jae      G_M51644_IG182
+       jae      G_M51644_IG186
        dec      ecx
        mov      rdx, gword ptr [rdx+8*rcx+0x10]
        test     rdx, rdx
        jne      SHORT G_M51644_IG58
        xor      rdx, rdx
        xor      ecx, ecx
        jmp      SHORT G_M51644_IG59
-       align    [13 bytes for IG62]
-						;; size=60 bbWeight=2 PerfScore 28.00
+       align    [0 bytes for IG62]
+						;; size=47 bbWeight=2 PerfScore 28.00
 G_M51644_IG58:
        lea      rcx, bword ptr [rdx+0x0C]
        mov      edx, dword ptr [rdx+0x08]
        mov      edi, edx
        mov      rdx, rcx
        mov      ecx, edi
 						;; size=14 bbWeight=2 PerfScore 6.50
 G_M51644_IG59:
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.DateTimeFormat:FormatFraction[ubyte](byref,int,System.ReadOnlySpan`1[ushort])
        call     [rax]System.DateTimeFormat:FormatFraction[ubyte](byref,int,System.ReadOnlySpan`1[ushort])
-       jmp      G_M51644_IG180
+       jmp      G_M51644_IG184
 						;; size=20 bbWeight=2 PerfScore 11.00
 G_M51644_IG60:
        cmp      dword ptr [rbx+0x08], 0
-       jle      G_M51644_IG180
+       jle      G_M51644_IG184
        mov      edi, dword ptr [rbx+0x08]
        dec      edi
        mov      eax, edi
        lea      rcx, bword ptr [rbx+0x10]
        cmp      eax, dword ptr [rcx+0x08]
-       jae      G_M51644_IG182
+       jae      G_M51644_IG186
        mov      rcx, bword ptr [rcx]
        cmp      byte  ptr [rcx+rax], 46
-       jne      G_M51644_IG180
+       jne      G_M51644_IG184
        mov      dword ptr [rbx+0x08], edi
-       jmp      G_M51644_IG180
+       jmp      G_M51644_IG184
 						;; size=51 bbWeight=2 PerfScore 40.00
 G_M51644_IG61:
        mov      edx, dword ptr [rbp-0x40]
        lea      r8d, [rdx+0x01]
        jmp      SHORT G_M51644_IG63
 						;; size=9 bbWeight=2 PerfScore 7.00
 G_M51644_IG62:
        inc      r8d
 						;; size=3 bbWeight=8 PerfScore 2.00
 G_M51644_IG63:
        cmp      r8d, r15d
        jae      SHORT G_M51644_IG64
        cmp      r8d, r15d
-       jae      G_M51644_IG182
+       jae      G_M51644_IG186
        mov      edi, r8d
        movzx    rdi, word  ptr [r14+2*rdi]
        cmp      edi, esi
        je       SHORT G_M51644_IG62
 						;; size=26 bbWeight=16 PerfScore 96.00
 G_M51644_IG64:
        mov      dword ptr [rbp-0x40], edx
        sub      r8d, edx
        mov      dword ptr [rbp-0x44], r8d
        cmp      r8d, 1
        jne      G_M51644_IG75
        lea      rdi, [rbp-0x30]
        mov      rsi, 0xD1FFAB1E      ; code for System.DateTime:get_Hour():int:this
        call     [rsi]System.DateTime:get_Hour():int:this
        cmp      eax, 12
        jl       SHORT G_M51644_IG67
        cmp      gword ptr [r13+0x38], 0
        jne      SHORT G_M51644_IG66
        mov      rax, gword ptr [r13+0x08]
        mov      gword ptr [rbp-0xB0], rax
        mov      rsi, gword ptr [rax+0x138]
        test     rsi, rsi
        jne      SHORT G_M51644_IG65
        mov      rsi, gword ptr [rax+0x10]
        mov      rdi, rax
        mov      edx, 41
        xor      rcx, rcx
        mov      r8, 0xD1FFAB1E      ; code for System.Globalization.CultureData:IcuGetLocaleInfo(System.String,uint,System.String):System.String:this
        call     [r8]System.Globalization.CultureData:IcuGetLocaleInfo(System.String,uint,System.String):System.String:this
        mov      rsi, rax
        mov      gword ptr [rbp-0xB8], rsi
        mov      rdi, gword ptr [rbp-0xB0]
        lea      rdi, bword ptr [rdi+0x138]
        call     CORINFO_HELP_ASSIGN_REF
        mov      rsi, gword ptr [rbp-0xB8]
 						;; size=134 bbWeight=2 PerfScore 59.00
 G_M51644_IG65:
        lea      rdi, bword ptr [r13+0x38]
        call     CORINFO_HELP_ASSIGN_REF
 						;; size=9 bbWeight=2 PerfScore 3.00
 G_M51644_IG66:
        mov      rax, gword ptr [r13+0x38]
        jmp      SHORT G_M51644_IG70
-       align    [5 bytes for IG80]
-						;; size=11 bbWeight=2 PerfScore 8.00
+       align    [2 bytes for IG80]
+						;; size=8 bbWeight=2 PerfScore 8.00
 G_M51644_IG67:
        cmp      gword ptr [r13+0x30], 0
        jne      SHORT G_M51644_IG69
        mov      rax, gword ptr [r13+0x08]
        mov      gword ptr [rbp-0xC0], rax
        mov      rsi, gword ptr [rax+0x130]
        test     rsi, rsi
        jne      SHORT G_M51644_IG68
        mov      rsi, gword ptr [rax+0x10]
        mov      rdi, rax
        mov      edx, 40
        xor      rcx, rcx
        mov      r8, 0xD1FFAB1E      ; code for System.Globalization.CultureData:IcuGetLocaleInfo(System.String,uint,System.String):System.String:this
        call     [r8]System.Globalization.CultureData:IcuGetLocaleInfo(System.String,uint,System.String):System.String:this
        mov      rsi, rax
        mov      gword ptr [rbp-0xC8], rsi
        mov      rdi, gword ptr [rbp-0xC0]
        lea      rdi, bword ptr [rdi+0x130]
        call     CORINFO_HELP_ASSIGN_REF
        mov      rsi, gword ptr [rbp-0xC8]
 						;; size=93 bbWeight=2 PerfScore 42.00
 G_M51644_IG68:
        lea      rdi, bword ptr [r13+0x30]
        call     CORINFO_HELP_ASSIGN_REF
 						;; size=9 bbWeight=2 PerfScore 3.00
 G_M51644_IG69:
        mov      rax, gword ptr [r13+0x30]
 						;; size=4 bbWeight=2 PerfScore 4.00
 G_M51644_IG70:
        cmp      dword ptr [rax+0x08], 0
-       jle      G_M51644_IG180
+       jle      G_M51644_IG184
        cmp      dword ptr [rax+0x08], 0
-       jbe      G_M51644_IG182
+       jbe      G_M51644_IG186
        movzx    rax, word  ptr [rax+0x0C]
        cmp      eax, 127
        ja       SHORT G_M51644_IG72
        movzx    rsi, al
        mov      edi, dword ptr [rbx+0x08]
        mov      rax, bword ptr [rbx+0x10]
        mov      ecx, dword ptr [rbx+0x18]
        cmp      edi, ecx
        jae      SHORT G_M51644_IG71
        cmp      edi, ecx
-       jae      G_M51644_IG182
+       jae      G_M51644_IG186
        mov      ecx, edi
        mov      byte  ptr [rax+rcx], sil
        inc      edi
        mov      dword ptr [rbx+0x08], edi
-       jmp      G_M51644_IG180
+       jmp      G_M51644_IG184
 						;; size=71 bbWeight=2 PerfScore 49.00
 G_M51644_IG71:
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.ValueListBuilder`1[ubyte]:AddWithResize(ubyte):this
        call     [rax]System.Collections.Generic.ValueListBuilder`1[ubyte]:AddWithResize(ubyte):this
-       jmp      G_M51644_IG180
+       jmp      G_M51644_IG184
 						;; size=20 bbWeight=2 PerfScore 11.00
 G_M51644_IG72:
        lea      edi, [rax-0xD800]
        cmp      edi, 0x7FF
-       jbe      G_M51644_IG186
+       jbe      G_M51644_IG190
        mov      dword ptr [rbp-0x8C], eax
        mov      edi, eax
        mov      rcx, 0xD1FFAB1E      ; code for System.Text.UnicodeUtility:GetUtf8SequenceLength(uint):int
        call     [rcx]System.Text.UnicodeUtility:GetUtf8SequenceLength(uint):int
        mov      edi, dword ptr [rbx+0x08]
        mov      rsi, bword ptr [rbx+0x10]
        mov      ecx, dword ptr [rbx+0x18]
        mov      edx, edi
        mov      r8d, eax
        add      rdx, r8
        cmp      rdx, rcx
        ja       SHORT G_M51644_IG73
        lea      ecx, [rdi+rax]
        mov      dword ptr [rbx+0x08], ecx
        mov      ecx, edi
        add      rsi, rcx
        mov      edx, eax
        jmp      SHORT G_M51644_IG74
 						;; size=76 bbWeight=2 PerfScore 37.00
 G_M51644_IG73:
        mov      rdi, rbx
        mov      esi, eax
        mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.ValueListBuilder`1[ubyte]:AppendSpanWithGrow(int):System.Span`1[ubyte]:this
        call     [rax]System.Collections.Generic.ValueListBuilder`1[ubyte]:AppendSpanWithGrow(int):System.Span`1[ubyte]:this
        mov      rsi, rax
 						;; size=20 bbWeight=2 PerfScore 8.00
 G_M51644_IG74:
        lea      rcx, [rbp-0x60]
        mov      edi, dword ptr [rbp-0x8C]
        mov      rax, 0xD1FFAB1E      ; code for System.Text.Rune:TryEncodeToUtf8(System.Text.Rune,System.Span`1[ubyte],byref):ubyte
        call     [rax]System.Text.Rune:TryEncodeToUtf8(System.Text.Rune,System.Span`1[ubyte],byref):ubyte
        test     eax, eax
-       je       G_M51644_IG187
-       jmp      G_M51644_IG180
+       je       G_M51644_IG191
+       jmp      G_M51644_IG184
 						;; size=35 bbWeight=2 PerfScore 16.00
 G_M51644_IG75:
        lea      rdi, [rbp-0x30]
        mov      rsi, 0xD1FFAB1E      ; code for System.DateTime:get_Hour():int:this
        call     [rsi]System.DateTime:get_Hour():int:this
        cmp      eax, 12
        jl       SHORT G_M51644_IG76
        mov      rdi, r13
        mov      rax, 0xD1FFAB1E      ; code for System.Globalization.DateTimeFormatInfo:PMDesignatorTChar[ubyte]():System.ReadOnlySpan`1[ubyte]:this
        call     [rax]System.Globalization.DateTimeFormatInfo:PMDesignatorTChar[ubyte]():System.ReadOnlySpan`1[ubyte]:this
        jmp      SHORT G_M51644_IG77
 						;; size=38 bbWeight=2 PerfScore 21.00
 G_M51644_IG76:
        mov      rdi, r13
        mov      rax, 0xD1FFAB1E      ; code for System.Globalization.DateTimeFormatInfo:AMDesignatorTChar[ubyte]():System.ReadOnlySpan`1[ubyte]:this
        call     [rax]System.Globalization.DateTimeFormatInfo:AMDesignatorTChar[ubyte]():System.ReadOnlySpan`1[ubyte]:this
 						;; size=15 bbWeight=2 PerfScore 7.00
 G_M51644_IG77:
        mov      esi, dword ptr [rbx+0x08]
        mov      rdi, bword ptr [rbx+0x10]
        mov      ecx, dword ptr [rbx+0x18]
        cmp      edx, 1
        jne      SHORT G_M51644_IG78
        cmp      esi, ecx
        jae      SHORT G_M51644_IG78
        cmp      esi, ecx
-       jae      G_M51644_IG182
+       jae      G_M51644_IG186
        mov      edx, esi
        movzx    rax, byte  ptr [rax]
        mov      byte  ptr [rdi+rdx], al
        inc      esi
        mov      dword ptr [rbx+0x08], esi
-       jmp      G_M51644_IG180
+       jmp      G_M51644_IG184
 						;; size=45 bbWeight=2 PerfScore 32.50
 G_M51644_IG78:
        mov      rsi, rax
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.ValueListBuilder`1[ubyte]:AppendMultiChar(System.ReadOnlySpan`1[ubyte]):this
        call     [rax]System.Collections.Generic.ValueListBuilder`1[ubyte]:AppendMultiChar(System.ReadOnlySpan`1[ubyte]):this
-       jmp      G_M51644_IG180
+       jmp      G_M51644_IG184
 						;; size=23 bbWeight=2 PerfScore 11.50
 G_M51644_IG79:
        mov      edx, dword ptr [rbp-0x40]
        lea      edi, [rdx+0x01]
        jmp      SHORT G_M51644_IG81
 						;; size=8 bbWeight=2 PerfScore 7.00
 G_M51644_IG80:
        inc      edi
 						;; size=2 bbWeight=8 PerfScore 2.00
 G_M51644_IG81:
        cmp      edi, r15d
        jae      SHORT G_M51644_IG82
        cmp      edi, r15d
-       jae      G_M51644_IG182
+       jae      G_M51644_IG186
        mov      ecx, edi
        movzx    rcx, word  ptr [r14+2*rcx]
        cmp      ecx, esi
        je       SHORT G_M51644_IG80
 						;; size=25 bbWeight=16 PerfScore 96.00
 G_M51644_IG82:
        mov      dword ptr [rbp-0x40], edx
        sub      edi, edx
        mov      ecx, edi
        mov      dword ptr [rbp-0x44], ecx
        cmp      ecx, 2
        jg       SHORT G_M51644_IG84
        mov      rdi, gword ptr [rbp-0xA0]
        mov      rsi, qword ptr [rbp-0x30]
        mov      r8, qword ptr [rdi]
        mov      r8, qword ptr [r8+0x50]
        call     [r8+0x18]System.Globalization.Calendar:GetDayOfMonth(System.DateTime):int:this
        cmp      dword ptr [rbp-0x34], 0
        je       SHORT G_M51644_IG83
        mov      rdi, rbx
        mov      esi, eax
        mov      rax, 0xD1FFAB1E      ; code for System.Globalization.HebrewNumber:Append[ubyte](byref,int)
        call     [rax]System.Globalization.HebrewNumber:Append[ubyte](byref,int)
        jmp      G_M51644_IG91
-       align    [9 bytes for IG93]
-						;; size=74 bbWeight=2 PerfScore 43.00
+       align    [7 bytes for IG93]
+						;; size=72 bbWeight=2 PerfScore 43.00
 G_M51644_IG83:
        mov      rdi, rbx
        mov      esi, eax
        mov      edx, dword ptr [rbp-0x44]
        mov      rax, 0xD1FFAB1E      ; code for System.DateTimeFormat:FormatDigits[ubyte](byref,int,int)
        call     [rax]System.DateTimeFormat:FormatDigits[ubyte](byref,int,int)
        jmp      G_M51644_IG91
 						;; size=25 bbWeight=2 PerfScore 13.50
 G_M51644_IG84:
        mov      rdi, gword ptr [rbp-0xA0]
        mov      rsi, qword ptr [rbp-0x30]
        mov      r8, qword ptr [rdi]
        mov      r8, qword ptr [r8+0x50]
        call     [r8+0x20]System.Globalization.Calendar:GetDayOfWeek(System.DateTime):int:this
        cmp      dword ptr [rbp-0x44], 3
        jne      SHORT G_M51644_IG85
        mov      rdi, r13
        mov      esi, eax
        mov      rax, 0xD1FFAB1E      ; code for System.Globalization.DateTimeFormatInfo:GetAbbreviatedDayName(int):System.String:this
        call     [rax]System.Globalization.DateTimeFormatInfo:GetAbbreviatedDayName(int):System.String:this
        jmp      SHORT G_M51644_IG86
 						;; size=47 bbWeight=2 PerfScore 35.50
 G_M51644_IG85:
        mov      rdi, r13
        mov      esi, eax
        mov      rax, 0xD1FFAB1E      ; code for System.Globalization.DateTimeFormatInfo:GetDayName(int):System.String:this
        call     [rax]System.Globalization.DateTimeFormatInfo:GetDayName(int):System.String:this
 						;; size=17 bbWeight=2 PerfScore 7.50
 G_M51644_IG86:
        test     rax, rax
        jne      SHORT G_M51644_IG87
        xor      rcx, rcx
        xor      r8d, r8d
        jmp      SHORT G_M51644_IG88
 						;; size=12 bbWeight=2 PerfScore 7.50
 G_M51644_IG87:
        lea      rcx, bword ptr [rax+0x0C]
        mov      r8d, dword ptr [rax+0x08]
        mov      rax, rcx
        mov      ecx, r8d
        mov      r8d, ecx
        mov      rcx, rax
 						;; size=20 bbWeight=2 PerfScore 7.00
 G_M51644_IG88:
        mov      rax, rcx
        mov      bword ptr [rbp-0x108], rax
        mov      ecx, r8d
        mov      dword ptr [rbp-0x7C], ecx
        mov      rsi, 0xD1FFAB1E      ; const ptr
        mov      rdi, gword ptr [rsi]
        mov      gword ptr [rbp-0xD0], rdi
        mov      rsi, rax
        mov      edx, ecx
        mov      r9, 0xD1FFAB1E      ; code for System.Text.UTF8Encoding:GetByteCount(System.ReadOnlySpan`1[ushort]):int:this
        call     [r9]System.Text.UTF8Encoding:GetByteCount(System.ReadOnlySpan`1[ushort]):int:this
        mov      edi, dword ptr [rbx+0x08]
        mov      rcx, bword ptr [rbx+0x10]
        mov      esi, dword ptr [rbx+0x18]
        mov      edx, edi
        mov      r8d, eax
        add      rdx, r8
        cmp      rdx, rsi
        ja       SHORT G_M51644_IG89
        lea      esi, [rdi+rax]
        mov      dword ptr [rbx+0x08], esi
        mov      edx, edi
        add      rcx, rdx
        jmp      SHORT G_M51644_IG90
 						;; size=90 bbWeight=2 PerfScore 43.00
 G_M51644_IG89:
        mov      rdi, rbx
        mov      esi, eax
        mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.ValueListBuilder`1[ubyte]:AppendSpanWithGrow(int):System.Span`1[ubyte]:this
        call     [rax]System.Collections.Generic.ValueListBuilder`1[ubyte]:AppendSpanWithGrow(int):System.Span`1[ubyte]:this
        mov      rcx, rax
        mov      eax, edx
 						;; size=22 bbWeight=2 PerfScore 8.50
 G_M51644_IG90:
        mov      r8d, eax
        mov      rsi, bword ptr [rbp-0x108]
        mov      edx, dword ptr [rbp-0x7C]
        mov      rdi, gword ptr [rbp-0xD0]
        mov      rax, 0xD1FFAB1E      ; code for System.Text.UTF8Encoding:GetBytes(System.ReadOnlySpan`1[ushort],System.Span`1[ubyte]):int:this
+       cmp      dword ptr [rdi], edi
        call     [rax]System.Text.UTF8Encoding:GetBytes(System.ReadOnlySpan`1[ushort],System.Span`1[ubyte]):int:this
-						;; size=32 bbWeight=2 PerfScore 13.00
+						;; size=34 bbWeight=2 PerfScore 19.00
 G_M51644_IG91:
        xor      ecx, ecx
        mov      dword ptr [rbp-0x3C], ecx
-       jmp      G_M51644_IG180
+       jmp      G_M51644_IG184
 						;; size=10 bbWeight=8 PerfScore 26.00
 G_M51644_IG92:
        mov      edx, dword ptr [rbp-0x40]
        lea      edi, [rdx+0x01]
        jmp      SHORT G_M51644_IG94
 						;; size=8 bbWeight=16 PerfScore 56.00
 G_M51644_IG93:
        inc      edi
 						;; size=2 bbWeight=32 PerfScore 8.00
 G_M51644_IG94:
        cmp      edi, r15d
        jae      SHORT G_M51644_IG96
 						;; size=5 bbWeight=128 PerfScore 160.00
 G_M51644_IG95:
        cmp      edi, r15d
-       jae      G_M51644_IG182
+       jae      G_M51644_IG186
        mov      ecx, edi
        movzx    rcx, word  ptr [r14+2*rcx]
        cmp      ecx, esi
        je       SHORT G_M51644_IG93
 						;; size=20 bbWeight=64 PerfScore 304.00
 G_M51644_IG96:
        mov      dword ptr [rbp-0x40], edx
        mov      r8d, edi
        sub      r8d, edx
        mov      dword ptr [rbp-0x44], r8d
        mov      rdi, gword ptr [rbp-0xA0]
        mov      rsi, qword ptr [rbp-0x30]
        mov      r8, qword ptr [rdi]
        mov      r8, qword ptr [r8+0x58]
        call     [r8+0x38]System.Globalization.Calendar:GetMonth(System.DateTime):int:this
        mov      dword ptr [rbp-0x4C], eax
        cmp      dword ptr [rbp-0x44], 2
        jg       SHORT G_M51644_IG98
        mov      ecx, dword ptr [rbp-0x44]
        cmp      dword ptr [rbp-0x34], 0
        je       SHORT G_M51644_IG97
        mov      dword ptr [rbp-0x44], ecx
        mov      rdi, rbx
        mov      esi, eax
        mov      rax, 0xD1FFAB1E      ; code for System.Globalization.HebrewNumber:Append[ubyte](byref,int)
        call     [rax]System.Globalization.HebrewNumber:Append[ubyte](byref,int)
        jmp      SHORT G_M51644_IG91
 						;; size=75 bbWeight=16 PerfScore 420.00
 G_M51644_IG97:
        mov      rdi, rbx
        mov      esi, eax
        mov      dword ptr [rbp-0x44], ecx
        mov      edx, ecx
        mov      rax, 0xD1FFAB1E      ; code for System.DateTimeFormat:FormatDigits[ubyte](byref,int,int)
        call     [rax]System.DateTimeFormat:FormatDigits[ubyte](byref,int,int)
        jmp      G_M51644_IG91
 						;; size=27 bbWeight=16 PerfScore 112.00
 G_M51644_IG98:
        mov      ecx, dword ptr [rbp-0x44]
        cmp      dword ptr [rbp-0x34], 0
        je       G_M51644_IG105
        mov      rdi, qword ptr [rbp-0x30]
        mov      esi, eax
        mov      dword ptr [rbp-0x44], ecx
        mov      edx, ecx
        mov      rcx, r13
        mov      rax, 0xD1FFAB1E      ; code for System.DateTimeFormat:FormatHebrewMonthName(System.DateTime,int,int,System.Globalization.DateTimeFormatInfo):System.String
        call     [rax]System.DateTimeFormat:FormatHebrewMonthName(System.DateTime,int,int,System.Globalization.DateTimeFormatInfo):System.String
        test     rax, rax
        jne      SHORT G_M51644_IG100
 						;; size=44 bbWeight=16 PerfScore 180.00
 G_M51644_IG99:
        xor      rcx, rcx
        xor      r8d, r8d
        jmp      SHORT G_M51644_IG101
 						;; size=7 bbWeight=8 PerfScore 20.00
 G_M51644_IG100:
        lea      rcx, bword ptr [rax+0x0C]
        mov      r8d, dword ptr [rax+0x08]
        mov      rax, rcx
        mov      ecx, r8d
        mov      r8d, ecx
        mov      rcx, rax
 						;; size=20 bbWeight=8 PerfScore 28.00
 G_M51644_IG101:
        mov      rax, rcx
        mov      bword ptr [rbp-0x120], rax
        mov      ecx, r8d
        mov      dword ptr [rbp-0x88], ecx
        mov      rsi, 0xD1FFAB1E      ; const ptr
        mov      rdi, gword ptr [rsi]
        mov      gword ptr [rbp-0xD8], rdi
        mov      rsi, rax
        mov      edx, ecx
        mov      r9, 0xD1FFAB1E      ; code for System.Text.UTF8Encoding:GetByteCount(System.ReadOnlySpan`1[ushort]):int:this
        call     [r9]System.Text.UTF8Encoding:GetByteCount(System.ReadOnlySpan`1[ushort]):int:this
        mov      edi, dword ptr [rbx+0x08]
        mov      rcx, bword ptr [rbx+0x10]
        mov      esi, dword ptr [rbx+0x18]
        mov      edx, edi
        mov      r8d, eax
        add      rdx, r8
        cmp      rdx, rsi
        ja       SHORT G_M51644_IG103
 						;; size=80 bbWeight=16 PerfScore 280.00
 G_M51644_IG102:
        lea      esi, [rdi+rax]
        mov      dword ptr [rbx+0x08], esi
        mov      edx, edi
        add      rcx, rdx
        jmp      SHORT G_M51644_IG104
 						;; size=13 bbWeight=8 PerfScore 32.00
 G_M51644_IG103:
        mov      rdi, rbx
        mov      esi, eax
        mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.ValueListBuilder`1[ubyte]:AppendSpanWithGrow(int):System.Span`1[ubyte]:this
        call     [rax]System.Collections.Generic.ValueListBuilder`1[ubyte]:AppendSpanWithGrow(int):System.Span`1[ubyte]:this
        mov      rcx, rax
        mov      eax, edx
 						;; size=22 bbWeight=8 PerfScore 34.00
 G_M51644_IG104:
        mov      r8d, eax
        mov      rsi, bword ptr [rbp-0x120]
        mov      edx, dword ptr [rbp-0x88]
        mov      rdi, gword ptr [rbp-0xD8]
        mov      rax, 0xD1FFAB1E      ; code for System.Text.UTF8Encoding:GetBytes(System.ReadOnlySpan`1[ushort],System.Span`1[ubyte]):int:this
+       cmp      dword ptr [rdi], edi
        call     [rax]System.Text.UTF8Encoding:GetBytes(System.ReadOnlySpan`1[ushort],System.Span`1[ubyte]):int:this
        jmp      G_M51644_IG91
-						;; size=40 bbWeight=16 PerfScore 136.00
+						;; size=42 bbWeight=16 PerfScore 184.00
 G_M51644_IG105:
        cmp      dword ptr [r13+0x180], -1
        jne      SHORT G_M51644_IG107
 						;; size=10 bbWeight=16 PerfScore 64.00
 G_M51644_IG106:
        mov      dword ptr [rbp-0x44], ecx
        mov      rdi, r13
        mov      rdx, 0xD1FFAB1E      ; code for System.Globalization.DateTimeFormatInfo:InitializeFormatFlags():int:this
        call     [rdx]System.Globalization.DateTimeFormatInfo:InitializeFormatFlags():int:this
        jmp      SHORT G_M51644_IG108
 						;; size=20 bbWeight=8 PerfScore 52.00
 G_M51644_IG107:
        mov      edi, dword ptr [r13+0x180]
        mov      dword ptr [rbp-0x44], ecx
        mov      eax, edi
 						;; size=12 bbWeight=8 PerfScore 26.00
 G_M51644_IG108:
        test     al, 1
        je       G_M51644_IG118
        mov      rdi, r14
        mov      esi, r15d
        mov      edx, dword ptr [rbp-0x40]
        mov      ecx, dword ptr [rbp-0x44]
        mov      r8d, 100
        mov      rax, 0xD1FFAB1E      ; code for System.DateTimeFormat:IsUseGenitiveForm(System.ReadOnlySpan`1[ushort],int,int,ushort):ubyte
        call     [rax]System.DateTimeFormat:IsUseGenitiveForm(System.ReadOnlySpan`1[ushort],int,int,ushort):ubyte
        test     eax, eax
        jne      SHORT G_M51644_IG110
 						;; size=42 bbWeight=16 PerfScore 136.00
 G_M51644_IG109:
        xor      edx, edx
        jmp      SHORT G_M51644_IG111
 						;; size=4 bbWeight=8 PerfScore 18.00
 G_M51644_IG110:
        mov      edx, 1
 						;; size=5 bbWeight=8 PerfScore 2.00
 G_M51644_IG111:
        xor      ecx, ecx
        cmp      dword ptr [rbp-0x44], 3
        sete     cl
        mov      rdi, r13
        mov      esi, dword ptr [rbp-0x4C]
        mov      r8, 0xD1FFAB1E      ; code for System.Globalization.DateTimeFormatInfo:InternalGetMonthName(int,int,ubyte):System.String:this
        call     [r8]System.Globalization.DateTimeFormatInfo:InternalGetMonthName(int,int,ubyte):System.String:this
        test     rax, rax
        jne      SHORT G_M51644_IG113
 						;; size=33 bbWeight=16 PerfScore 144.00
 G_M51644_IG112:
        xor      rcx, rcx
        xor      r8d, r8d
        jmp      SHORT G_M51644_IG114
 						;; size=7 bbWeight=8 PerfScore 20.00
 G_M51644_IG113:
        lea      rcx, bword ptr [rax+0x0C]
        mov      r8d, dword ptr [rax+0x08]
        mov      rax, rcx
        mov      ecx, r8d
        mov      r8d, ecx
        mov      rcx, rax
 						;; size=20 bbWeight=8 PerfScore 28.00
 G_M51644_IG114:
        mov      rax, rcx
        mov      bword ptr [rbp-0x118], rax
        mov      ecx, r8d
        mov      dword ptr [rbp-0x84], ecx
        mov      rsi, 0xD1FFAB1E      ; const ptr
        mov      rdi, gword ptr [rsi]
        mov      gword ptr [rbp-0xE0], rdi
        mov      rsi, rax
        mov      edx, ecx
        mov      r9, 0xD1FFAB1E      ; code for System.Text.UTF8Encoding:GetByteCount(System.ReadOnlySpan`1[ushort]):int:this
        call     [r9]System.Text.UTF8Encoding:GetByteCount(System.ReadOnlySpan`1[ushort]):int:this
        mov      edi, dword ptr [rbx+0x08]
        mov      rcx, bword ptr [rbx+0x10]
        mov      esi, dword ptr [rbx+0x18]
        mov      edx, edi
        mov      r8d, eax
        add      rdx, r8
        cmp      rdx, rsi
        ja       SHORT G_M51644_IG116
 						;; size=80 bbWeight=16 PerfScore 280.00
 G_M51644_IG115:
        lea      esi, [rdi+rax]
        mov      dword ptr [rbx+0x08], esi
        mov      edx, edi
        add      rcx, rdx
        jmp      SHORT G_M51644_IG117
 						;; size=13 bbWeight=8 PerfScore 32.00
 G_M51644_IG116:
        mov      rdi, rbx
        mov      esi, eax
        mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.ValueListBuilder`1[ubyte]:AppendSpanWithGrow(int):System.Span`1[ubyte]:this
        call     [rax]System.Collections.Generic.ValueListBuilder`1[ubyte]:AppendSpanWithGrow(int):System.Span`1[ubyte]:this
        mov      rcx, rax
        mov      eax, edx
 						;; size=22 bbWeight=8 PerfScore 34.00
 G_M51644_IG117:
        mov      r8d, eax
        mov      rsi, bword ptr [rbp-0x118]
        mov      edx, dword ptr [rbp-0x84]
        mov      rdi, gword ptr [rbp-0xE0]
        mov      rax, 0xD1FFAB1E      ; code for System.Text.UTF8Encoding:GetBytes(System.ReadOnlySpan`1[ushort],System.Span`1[ubyte]):int:this
+       cmp      dword ptr [rdi], edi
        call     [rax]System.Text.UTF8Encoding:GetBytes(System.ReadOnlySpan`1[ushort],System.Span`1[ubyte]):int:this
        jmp      G_M51644_IG91
-						;; size=40 bbWeight=16 PerfScore 136.00
+						;; size=42 bbWeight=16 PerfScore 184.00
 G_M51644_IG118:
        cmp      dword ptr [rbp-0x44], 3
        jne      SHORT G_M51644_IG120
 						;; size=6 bbWeight=16 PerfScore 48.00
 G_M51644_IG119:
        mov      rdi, r13
        mov      esi, dword ptr [rbp-0x4C]
        mov      rax, 0xD1FFAB1E      ; code for System.Globalization.DateTimeFormatInfo:GetAbbreviatedMonthName(int):System.String:this
        call     [rax]System.Globalization.DateTimeFormatInfo:GetAbbreviatedMonthName(int):System.String:this
        jmp      SHORT G_M51644_IG121
 						;; size=20 bbWeight=8 PerfScore 52.00
 G_M51644_IG120:
        mov      rdi, r13
        mov      esi, dword ptr [rbp-0x4C]
        mov      rax, 0xD1FFAB1E      ; code for System.Globalization.DateTimeFormatInfo:GetMonthName(int):System.String:this
        call     [rax]System.Globalization.DateTimeFormatInfo:GetMonthName(int):System.String:this
 						;; size=18 bbWeight=8 PerfScore 36.00
 G_M51644_IG121:
        test     rax, rax
        jne      SHORT G_M51644_IG123
 						;; size=5 bbWeight=16 PerfScore 20.00
 G_M51644_IG122:
        xor      rcx, rcx
        xor      r8d, r8d
        jmp      SHORT G_M51644_IG124
 						;; size=7 bbWeight=8 PerfScore 20.00
 G_M51644_IG123:
        lea      rcx, bword ptr [rax+0x0C]
        mov      r8d, dword ptr [rax+0x08]
        mov      rax, rcx
        mov      ecx, r8d
        mov      r8d, ecx
        mov      rcx, rax
 						;; size=20 bbWeight=8 PerfScore 28.00
 G_M51644_IG124:
        mov      rax, rcx
        mov      bword ptr [rbp-0x110], rax
        mov      ecx, r8d
        mov      dword ptr [rbp-0x80], ecx
        mov      rsi, 0xD1FFAB1E      ; const ptr
        mov      rdi, gword ptr [rsi]
        mov      gword ptr [rbp-0xE8], rdi
        mov      rsi, rax
        mov      edx, ecx
        mov      r9, 0xD1FFAB1E      ; code for System.Text.UTF8Encoding:GetByteCount(System.ReadOnlySpan`1[ushort]):int:this
        call     [r9]System.Text.UTF8Encoding:GetByteCount(System.ReadOnlySpan`1[ushort]):int:this
        mov      edi, dword ptr [rbx+0x08]
        mov      rcx, bword ptr [rbx+0x10]
        mov      esi, dword ptr [rbx+0x18]
        mov      edx, edi
        mov      r8d, eax
        add      rdx, r8
        cmp      rdx, rsi
        ja       SHORT G_M51644_IG126
 						;; size=77 bbWeight=16 PerfScore 280.00
 G_M51644_IG125:
        lea      esi, [rdi+rax]
        mov      dword ptr [rbx+0x08], esi
        mov      edx, edi
        add      rcx, rdx
        jmp      SHORT G_M51644_IG127
 						;; size=13 bbWeight=8 PerfScore 32.00
 G_M51644_IG126:
        mov      rdi, rbx
        mov      esi, eax
        mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.ValueListBuilder`1[ubyte]:AppendSpanWithGrow(int):System.Span`1[ubyte]:this
        call     [rax]System.Collections.Generic.ValueListBuilder`1[ubyte]:AppendSpanWithGrow(int):System.Span`1[ubyte]:this
        mov      rcx, rax
        mov      eax, edx
 						;; size=22 bbWeight=8 PerfScore 34.00
 G_M51644_IG127:
        mov      r8d, eax
        mov      rsi, bword ptr [rbp-0x110]
        mov      edx, dword ptr [rbp-0x80]
        mov      rdi, gword ptr [rbp-0xE8]
        mov      rax, 0xD1FFAB1E      ; code for System.Text.UTF8Encoding:GetBytes(System.ReadOnlySpan`1[ushort],System.Span`1[ubyte]):int:this
+       cmp      dword ptr [rdi], edi
        call     [rax]System.Text.UTF8Encoding:GetBytes(System.ReadOnlySpan`1[ushort],System.Span`1[ubyte]):int:this
        jmp      G_M51644_IG91
-						;; size=37 bbWeight=16 PerfScore 136.00
+						;; size=39 bbWeight=16 PerfScore 184.00
 G_M51644_IG128:
        mov      rdi, gword ptr [rbp-0xA0]
        mov      rsi, qword ptr [rbp-0x30]
        mov      rcx, qword ptr [rdi]
        mov      rcx, qword ptr [rcx+0x60]
        call     [rcx+0x28]System.Globalization.Calendar:GetYear(System.DateTime):int:this
        mov      dword ptr [rbp-0x50], eax
        mov      rdi, r14
        mov      esi, r15d
        mov      edx, dword ptr [rbp-0x40]
        mov      ecx, dword ptr [rbp-0x48]
        mov      rax, 0xD1FFAB1E      ; code for System.DateTimeFormat:ParseRepeatPattern(System.ReadOnlySpan`1[ushort],int,ushort):int
        call     [rax]System.DateTimeFormat:ParseRepeatPattern(System.ReadOnlySpan`1[ushort],int,ushort):int
        mov      dword ptr [rbp-0x44], eax
        cmp      dword ptr [rbp-0x38], 0
        je       G_M51644_IG140
        mov      rdi, 0xD1FFAB1E      ; static handle
        cmp      dword ptr [rdi], 0
        jl       SHORT G_M51644_IG130
 						;; size=76 bbWeight=16 PerfScore 384.00
 G_M51644_IG129:
        mov      rdi, 0xD1FFAB1E      ; static handle
        cmp      dword ptr [rdi], 0
        jg       G_M51644_IG140
        mov      rdi, 0xD1FFAB1E      ; 'Switch.System.Globalization.FormatJapaneseFirstYearAsANumber'
 
        mov      rsi, 0xD1FFAB1E      ; static handle
        mov      rdx, 0xD1FFAB1E      ; code for System.LocalAppContextSwitches:GetCachedSwitchValueInternal(System.String,byref):ubyte
        call     [rdx]System.LocalAppContextSwitches:GetCachedSwitchValueInternal(System.String,byref):ubyte
        test     eax, eax
        jne      G_M51644_IG140
 						;; size=59 bbWeight=8 PerfScore 74.00
 G_M51644_IG130:
        mov      esi, dword ptr [rbp-0x50]
        cmp      esi, 1
        jne      G_M51644_IG137
        mov      eax, dword ptr [rbp-0x44]
        mov      edi, eax
        add      edi, dword ptr [rbp-0x40]
        cmp      edi, r15d
        jge      SHORT G_M51644_IG132
 						;; size=25 bbWeight=16 PerfScore 108.00
 G_M51644_IG131:
        cmp      edi, r15d
-       jae      G_M51644_IG182
+       jae      G_M51644_IG186
        mov      r8d, edi
        cmp      word  ptr [r14+2*r8], 0x5E74
        je       SHORT G_M51644_IG133
 						;; size=21 bbWeight=8 PerfScore 44.00
 G_M51644_IG132:
        lea      r8d, [r15-0x01]
        cmp      edi, r8d
        jge      SHORT G_M51644_IG136
        cmp      edi, r15d
-       jae      G_M51644_IG182
+       jae      G_M51644_IG186
        mov      r8d, edi
        cmp      word  ptr [r14+2*r8], 39
        jne      SHORT G_M51644_IG135
        inc      edi
        cmp      edi, r15d
-       jae      G_M51644_IG182
+       jae      G_M51644_IG186
        cmp      word  ptr [r14+2*rdi], 0x5E74
        jne      SHORT G_M51644_IG140
 						;; size=49 bbWeight=8 PerfScore 102.00
 G_M51644_IG133:
        mov      edi, 0x5143
        mov      rsi, 0xD1FFAB1E      ; code for System.Text.UnicodeUtility:GetUtf8SequenceLength(uint):int
        call     [rsi]System.Text.UnicodeUtility:GetUtf8SequenceLength(uint):int
        mov      edi, dword ptr [rbx+0x08]
        mov      rsi, bword ptr [rbx+0x10]
        mov      ecx, dword ptr [rbx+0x18]
        mov      edx, edi
        mov      r8d, eax
        add      rdx, r8
        cmp      rdx, rcx
        ja       SHORT G_M51644_IG138
 						;; size=40 bbWeight=16 PerfScore 184.00
 G_M51644_IG134:
        lea      ecx, [rdi+rax]
        mov      dword ptr [rbx+0x08], ecx
        mov      ecx, edi
        add      rsi, rcx
        mov      edx, eax
        jmp      SHORT G_M51644_IG139
 						;; size=15 bbWeight=8 PerfScore 34.00
 G_M51644_IG135:
        jmp      SHORT G_M51644_IG140
 						;; size=2 bbWeight=4 PerfScore 8.00
 G_M51644_IG136:
        jmp      SHORT G_M51644_IG140
 						;; size=2 bbWeight=4 PerfScore 8.00
 G_M51644_IG137:
        jmp      SHORT G_M51644_IG140
 						;; size=2 bbWeight=8 PerfScore 16.00
 G_M51644_IG138:
        mov      rdi, rbx
        mov      esi, eax
        mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.ValueListBuilder`1[ubyte]:AppendSpanWithGrow(int):System.Span`1[ubyte]:this
        call     [rax]System.Collections.Generic.ValueListBuilder`1[ubyte]:AppendSpanWithGrow(int):System.Span`1[ubyte]:this
        mov      rsi, rax
 						;; size=20 bbWeight=8 PerfScore 32.00
 G_M51644_IG139:
        lea      rcx, [rbp-0x68]
        mov      edi, 0x5143
        mov      rax, 0xD1FFAB1E      ; code for System.Text.Rune:TryEncodeToUtf8(System.Text.Rune,System.Span`1[ubyte],byref):ubyte
        call     [rax]System.Text.Rune:TryEncodeToUtf8(System.Text.Rune,System.Span`1[ubyte],byref):ubyte
        test     eax, eax
-       je       G_M51644_IG187
+       je       G_M51644_IG191
        jmp      G_M51644_IG91
 						;; size=34 bbWeight=16 PerfScore 116.00
 G_M51644_IG140:
        mov      rdi, gword ptr [r13+0x90]
        mov      rdx, qword ptr [rdi]
        mov      rdx, qword ptr [rdx+0x40]
        call     [rdx+0x38]System.Globalization.Calendar:get_ID():ushort:this
        add      eax, -3
        cmp      eax, 1
        ja       SHORT G_M51644_IG144
        mov      eax, dword ptr [rbp-0x44]
        cmp      eax, 2
        jle      SHORT G_M51644_IG142
 						;; size=33 bbWeight=16 PerfScore 204.00
 G_M51644_IG141:
        mov      edx, 2
        mov      dword ptr [rbp-0x44], eax
        jmp      SHORT G_M51644_IG143
 						;; size=10 bbWeight=8 PerfScore 26.00
 G_M51644_IG142:
        mov      dword ptr [rbp-0x44], eax
        mov      edx, eax
 						;; size=5 bbWeight=8 PerfScore 10.00
 G_M51644_IG143:
        mov      rdi, rbx
        mov      esi, dword ptr [rbp-0x50]
        mov      rcx, 0xD1FFAB1E      ; code for System.DateTimeFormat:FormatDigits[ubyte](byref,int,int)
        call     [rcx]System.DateTimeFormat:FormatDigits[ubyte](byref,int,int)
        jmp      G_M51644_IG91
 						;; size=23 bbWeight=16 PerfScore 104.00
 G_M51644_IG144:
        mov      rdi, gword ptr [rbp-0xA0]
        mov      rax, qword ptr [rbp-0x98]
        call     [rax+0x38]System.Globalization.Calendar:get_ID():ushort:this
        cmp      eax, 8
        jne      SHORT G_M51644_IG145
        mov      rdi, rbx
        mov      esi, dword ptr [rbp-0x50]
        mov      rax, 0xD1FFAB1E      ; code for System.Globalization.HebrewNumber:Append[ubyte](byref,int)
        call     [rax]System.Globalization.HebrewNumber:Append[ubyte](byref,int)
        jmp      G_M51644_IG91
 						;; size=45 bbWeight=16 PerfScore 204.00
 G_M51644_IG145:
        mov      ecx, dword ptr [rbp-0x44]
        cmp      ecx, 2
        jg       SHORT G_M51644_IG146
        mov      edx, 0xD1FFAB1E
        mov      esi, dword ptr [rbp-0x50]
        mov      eax, edx
        imul     edx:eax, esi
        mov      edi, edx
        shr      edi, 31
        sar      edx, 5
        add      edi, edx
        imul     edi, edi, 100
        sub      esi, edi
        mov      rdi, rbx
        mov      dword ptr [rbp-0x44], ecx
        mov      edx, ecx
        mov      rax, 0xD1FFAB1E      ; code for System.DateTimeFormat:FormatDigits[ubyte](byref,int,int)
        call     [rax]System.DateTimeFormat:FormatDigits[ubyte](byref,int,int)
        jmp      G_M51644_IG91
 						;; size=60 bbWeight=16 PerfScore 276.00
 G_M51644_IG146:
        cmp      ecx, 16
        jg       SHORT G_M51644_IG147
        mov      rdi, rbx
        mov      esi, dword ptr [rbp-0x50]
        mov      dword ptr [rbp-0x44], ecx
        mov      edx, ecx
        mov      rax, 0xD1FFAB1E      ; code for System.DateTimeFormat:FormatDigits[ubyte](byref,int,int)
        call     [rax]System.DateTimeFormat:FormatDigits[ubyte](byref,int,int)
        jmp      G_M51644_IG91
 						;; size=33 bbWeight=16 PerfScore 144.00
 G_M51644_IG147:
        mov      rdi, 0xD1FFAB1E      ; const ptr
        mov      rax, gword ptr [rdi]
        mov      gword ptr [rbp-0x128], rax
        mov      rdi, rax
        mov      dword ptr [rbp-0x44], ecx
        test     ecx, ecx
-       jge      SHORT G_M51644_IG149
+       jge      SHORT G_M51644_IG151
 						;; size=30 bbWeight=16 PerfScore 92.00
 G_M51644_IG148:
+       test     rdi, rdi
+       je       SHORT G_M51644_IG149
        mov      rdx, 0xD1FFAB1E      ; code for System.Globalization.NumberFormatInfo:<GetInstance>g__GetProviderNonNull|59_0(System.IFormatProvider):System.Globalization.NumberFormatInfo
        call     [rdx]System.Globalization.NumberFormatInfo:<GetInstance>g__GetProviderNonNull|59_0(System.IFormatProvider):System.Globalization.NumberFormatInfo
+       jmp      SHORT G_M51644_IG150
+						;; size=19 bbWeight=8 PerfScore 52.00
+G_M51644_IG149:
+       mov      rdx, 0xD1FFAB1E      ; code for System.Globalization.NumberFormatInfo:get_CurrentInfo():System.Globalization.NumberFormatInfo
+       call     [rdx]System.Globalization.NumberFormatInfo:get_CurrentInfo():System.Globalization.NumberFormatInfo
+						;; size=12 bbWeight=8 PerfScore 26.00
+G_M51644_IG150:
        mov      rdx, gword ptr [rax+0x28]
        mov      edi, dword ptr [rbp-0x44]
        mov      esi, -1
        mov      rax, 0xD1FFAB1E      ; code for System.Number:NegativeInt32ToDecStr(int,int,System.String):System.String
        call     [rax]System.Number:NegativeInt32ToDecStr(int,int,System.String):System.String
-       jmp      SHORT G_M51644_IG150
-						;; size=38 bbWeight=8 PerfScore 94.00
-G_M51644_IG149:
+       jmp      SHORT G_M51644_IG152
+						;; size=26 bbWeight=8 PerfScore 68.00
+G_M51644_IG151:
        mov      ecx, dword ptr [rbp-0x44]
        mov      dword ptr [rbp-0x44], ecx
        mov      edi, ecx
        mov      rdx, 0xD1FFAB1E      ; code for System.Number:UInt32ToDecStr(uint):System.String
        call     [rdx]System.Number:UInt32ToDecStr(uint):System.String
 						;; size=20 bbWeight=8 PerfScore 44.00
-G_M51644_IG150:
+G_M51644_IG152:
        mov      rsi, rax
        mov      rdi, 0xD1FFAB1E      ; 'D'
 
        mov      rax, 0xD1FFAB1E      ; code for System.String:Concat(System.String,System.String):System.String
        call     [rax]System.String:Concat(System.String,System.String):System.String
        mov      rcx, gword ptr [rbp-0x128]
        test     rax, rax
-       je       SHORT G_M51644_IG152
+       je       SHORT G_M51644_IG154
 						;; size=37 bbWeight=16 PerfScore 96.00
-G_M51644_IG151:
+G_M51644_IG153:
        cmp      dword ptr [rax+0x08], 0
-       je       SHORT G_M51644_IG152
+       je       SHORT G_M51644_IG154
        mov      edi, dword ptr [rbp-0x50]
        mov      rdx, rax
        mov      esi, -1
        mov      rax, 0xD1FFAB1E      ; code for System.Number:<FormatInt32>g__FormatInt32Slow|41_0(int,int,System.String,System.IFormatProvider):System.String
        call     [rax]System.Number:<FormatInt32>g__FormatInt32Slow|41_0(int,int,System.String,System.IFormatProvider):System.String
-       jmp      SHORT G_M51644_IG154
+       jmp      SHORT G_M51644_IG158
 						;; size=31 bbWeight=8 PerfScore 86.00
-G_M51644_IG152:
+G_M51644_IG154:
        cmp      dword ptr [rbp-0x50], 0
-       jge      SHORT G_M51644_IG153
+       jge      SHORT G_M51644_IG157
+       test     rcx, rcx
+       je       SHORT G_M51644_IG155
        mov      rdi, rcx
        mov      rcx, 0xD1FFAB1E      ; code for System.Globalization.NumberFormatInfo:<GetInstance>g__GetProviderNonNull|59_0(System.IFormatProvider):System.Globalization.NumberFormatInfo
        call     [rcx]System.Globalization.NumberFormatInfo:<GetInstance>g__GetProviderNonNull|59_0(System.IFormatProvider):System.Globalization.NumberFormatInfo
+       jmp      SHORT G_M51644_IG156
+						;; size=28 bbWeight=8 PerfScore 78.00
+G_M51644_IG155:
+       mov      rcx, 0xD1FFAB1E      ; code for System.Globalization.NumberFormatInfo:get_CurrentInfo():System.Globalization.NumberFormatInfo
+       call     [rcx]System.Globalization.NumberFormatInfo:get_CurrentInfo():System.Globalization.NumberFormatInfo
+						;; size=12 bbWeight=8 PerfScore 26.00
+G_M51644_IG156:
        mov      rdx, gword ptr [rax+0x28]
        mov      edi, dword ptr [rbp-0x50]
        mov      esi, -1
        mov      rax, 0xD1FFAB1E      ; code for System.Number:NegativeInt32ToDecStr(int,int,System.String):System.String
        call     [rax]System.Number:NegativeInt32ToDecStr(int,int,System.String):System.String
-       jmp      SHORT G_M51644_IG154
-						;; size=47 bbWeight=8 PerfScore 120.00
-G_M51644_IG153:
+       jmp      SHORT G_M51644_IG158
+						;; size=26 bbWeight=8 PerfScore 68.00
+G_M51644_IG157:
        mov      eax, dword ptr [rbp-0x50]
        mov      edi, eax
        mov      rax, 0xD1FFAB1E      ; code for System.Number:UInt32ToDecStr(uint):System.String
        call     [rax]System.Number:UInt32ToDecStr(uint):System.String
 						;; size=17 bbWeight=8 PerfScore 36.00
-G_M51644_IG154:
+G_M51644_IG158:
        test     rax, rax
-       jne      SHORT G_M51644_IG156
+       jne      SHORT G_M51644_IG160
 						;; size=5 bbWeight=16 PerfScore 20.00
-G_M51644_IG155:
+G_M51644_IG159:
        xor      rcx, rcx
        xor      r8d, r8d
-       jmp      SHORT G_M51644_IG157
+       jmp      SHORT G_M51644_IG161
 						;; size=7 bbWeight=8 PerfScore 20.00
-G_M51644_IG156:
+G_M51644_IG160:
        lea      rcx, bword ptr [rax+0x0C]
        mov      r8d, dword ptr [rax+0x08]
        mov      rax, rcx
        mov      ecx, r8d
        mov      r8d, ecx
        mov      rcx, rax
 						;; size=20 bbWeight=8 PerfScore 28.00
-G_M51644_IG157:
+G_M51644_IG161:
        mov      rax, rcx
        mov      bword ptr [rbp-0xF8], rax
        mov      ecx, r8d
        mov      dword ptr [rbp-0x74], ecx
        mov      rsi, 0xD1FFAB1E      ; const ptr
        mov      rdi, gword ptr [rsi]
        mov      gword ptr [rbp-0xF0], rdi
        mov      rsi, rax
        mov      edx, ecx
        mov      r9, 0xD1FFAB1E      ; code for System.Text.UTF8Encoding:GetByteCount(System.ReadOnlySpan`1[ushort]):int:this
        call     [r9]System.Text.UTF8Encoding:GetByteCount(System.ReadOnlySpan`1[ushort]):int:this
        mov      edi, dword ptr [rbx+0x08]
        mov      rcx, bword ptr [rbx+0x10]
        mov      esi, dword ptr [rbx+0x18]
        mov      edx, edi
        mov      r8d, eax
        add      rdx, r8
        cmp      rdx, rsi
-       ja       SHORT G_M51644_IG159
+       ja       SHORT G_M51644_IG163
 						;; size=77 bbWeight=16 PerfScore 280.00
-G_M51644_IG158:
+G_M51644_IG162:
        lea      esi, [rdi+rax]
        mov      dword ptr [rbx+0x08], esi
        mov      edx, edi
        add      rcx, rdx
-       jmp      SHORT G_M51644_IG160
+       jmp      SHORT G_M51644_IG164
 						;; size=13 bbWeight=8 PerfScore 32.00
-G_M51644_IG159:
+G_M51644_IG163:
        mov      rdi, rbx
        mov      esi, eax
        mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.ValueListBuilder`1[ubyte]:AppendSpanWithGrow(int):System.Span`1[ubyte]:this
        call     [rax]System.Collections.Generic.ValueListBuilder`1[ubyte]:AppendSpanWithGrow(int):System.Span`1[ubyte]:this
        mov      rcx, rax
        mov      eax, edx
 						;; size=22 bbWeight=8 PerfScore 34.00
-G_M51644_IG160:
+G_M51644_IG164:
        mov      r8d, eax
        mov      rsi, bword ptr [rbp-0xF8]
        mov      edx, dword ptr [rbp-0x74]
        mov      rdi, gword ptr [rbp-0xF0]
        mov      rax, 0xD1FFAB1E      ; code for System.Text.UTF8Encoding:GetBytes(System.ReadOnlySpan`1[ushort],System.Span`1[ubyte]):int:this
+       cmp      dword ptr [rdi], edi
        call     [rax]System.Text.UTF8Encoding:GetBytes(System.ReadOnlySpan`1[ushort],System.Span`1[ubyte]):int:this
        jmp      G_M51644_IG91
-						;; size=37 bbWeight=16 PerfScore 136.00
-G_M51644_IG161:
+						;; size=39 bbWeight=16 PerfScore 184.00
+G_M51644_IG165:
        mov      rdi, r13
        mov      rsi, 0xD1FFAB1E      ; code for System.Globalization.DateTimeFormatInfo:TimeSeparatorTChar[ubyte]():System.ReadOnlySpan`1[ubyte]:this
        call     [rsi]System.Globalization.DateTimeFormatInfo:TimeSeparatorTChar[ubyte]():System.ReadOnlySpan`1[ubyte]:this
        mov      esi, dword ptr [rbx+0x08]
        mov      rdi, bword ptr [rbx+0x10]
        mov      ecx, dword ptr [rbx+0x18]
        cmp      edx, 1
-       jne      SHORT G_M51644_IG162
+       jne      SHORT G_M51644_IG166
        cmp      esi, ecx
-       jae      SHORT G_M51644_IG162
+       jae      SHORT G_M51644_IG166
        cmp      esi, ecx
-       jae      G_M51644_IG182
+       jae      G_M51644_IG186
        mov      edx, esi
        movzx    rax, byte  ptr [rax]
        mov      byte  ptr [rdi+rdx], al
        inc      esi
        mov      dword ptr [rbx+0x08], esi
-       jmp      G_M51644_IG179
+       jmp      G_M51644_IG183
 						;; size=60 bbWeight=2 PerfScore 39.50
-G_M51644_IG162:
+G_M51644_IG166:
        mov      rsi, rax
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.ValueListBuilder`1[ubyte]:AppendMultiChar(System.ReadOnlySpan`1[ubyte]):this
        call     [rax]System.Collections.Generic.ValueListBuilder`1[ubyte]:AppendMultiChar(System.ReadOnlySpan`1[ubyte]):this
-       jmp      G_M51644_IG179
+       jmp      G_M51644_IG183
 						;; size=23 bbWeight=2 PerfScore 11.50
-G_M51644_IG163:
+G_M51644_IG167:
        mov      esi, dword ptr [rbx+0x08]
        mov      rdi, bword ptr [rbx+0x10]
        mov      ecx, dword ptr [rbx+0x18]
        cmp      edx, 1
-       jne      SHORT G_M51644_IG164
+       jne      SHORT G_M51644_IG168
        cmp      esi, ecx
-       jae      SHORT G_M51644_IG164
+       jae      SHORT G_M51644_IG168
        cmp      esi, ecx
-       jae      G_M51644_IG182
+       jae      G_M51644_IG186
        mov      edx, esi
        movzx    rax, byte  ptr [rax]
        mov      byte  ptr [rdi+rdx], al
        inc      esi
        mov      dword ptr [rbx+0x08], esi
-       jmp      G_M51644_IG179
+       jmp      G_M51644_IG183
 						;; size=45 bbWeight=2 PerfScore 32.50
-G_M51644_IG164:
+G_M51644_IG168:
        mov      rsi, rax
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.ValueListBuilder`1[ubyte]:AppendMultiChar(System.ReadOnlySpan`1[ubyte]):this
        call     [rax]System.Collections.Generic.ValueListBuilder`1[ubyte]:AppendMultiChar(System.ReadOnlySpan`1[ubyte]):this
-       jmp      G_M51644_IG179
+       jmp      G_M51644_IG183
 						;; size=23 bbWeight=2 PerfScore 11.50
-G_M51644_IG165:
+G_M51644_IG169:
        mov      rdi, r14
        mov      esi, r15d
        mov      edx, dword ptr [rbp-0x40]
        mov      rcx, rbx
        mov      r8, 0xD1FFAB1E      ; code for System.DateTimeFormat:ParseQuoteString[ubyte](System.ReadOnlySpan`1[ushort],int,byref):int
        call     [r8]System.DateTimeFormat:ParseQuoteString[ubyte](System.ReadOnlySpan`1[ushort],int,byref):int
        mov      dword ptr [rbp-0x44], eax
-       jmp      G_M51644_IG180
+       jmp      G_M51644_IG184
 						;; size=33 bbWeight=2 PerfScore 16.00
-G_M51644_IG166:
+G_M51644_IG170:
        mov      edx, dword ptr [rbp-0x40]
        lea      esi, [rdx+0x01]
        cmp      esi, r15d
-       jb       SHORT G_M51644_IG167
+       jb       SHORT G_M51644_IG171
        mov      esi, -1
-       jmp      SHORT G_M51644_IG168
+       jmp      SHORT G_M51644_IG172
 						;; size=18 bbWeight=2 PerfScore 10.00
-G_M51644_IG167:
+G_M51644_IG171:
        lea      esi, [rdx+0x01]
        cmp      esi, r15d
-       jae      G_M51644_IG182
+       jae      G_M51644_IG186
        mov      dword ptr [rbp-0x40], edx
        lea      esi, [rdx+0x01]
        movzx    rsi, word  ptr [r14+2*rsi]
        mov      edx, dword ptr [rbp-0x40]
 						;; size=26 bbWeight=2 PerfScore 12.50
-G_M51644_IG168:
+G_M51644_IG172:
        test     esi, esi
-       jl       G_M51644_IG184
+       jl       G_M51644_IG188
        cmp      esi, 37
        mov      dword ptr [rbp-0x40], edx
-       je       G_M51644_IG184
+       je       G_M51644_IG188
        movzx    rsi, si
        mov      dword ptr [rbp-0x54], esi
        mov      rdi, qword ptr [rbp-0x30]
        lea      rsi, bword ptr [rbp-0x54]
        mov      edx, 1
        mov      rcx, r13
        mov      r8, r12
        mov      r9, rbx
        mov      r10, 0xD1FFAB1E      ; code for System.DateTimeFormat:FormatCustomized[ubyte](System.DateTime,System.ReadOnlySpan`1[ushort],System.Globalization.DateTimeFormatInfo,System.TimeSpan,byref)
        call     [r10]System.DateTimeFormat:FormatCustomized[ubyte](System.DateTime,System.ReadOnlySpan`1[ushort],System.Globalization.DateTimeFormatInfo,System.TimeSpan,byref)
-       jmp      SHORT G_M51644_IG173
+       jmp      SHORT G_M51644_IG177
 						;; size=63 bbWeight=2 PerfScore 25.00
-G_M51644_IG169:
+G_M51644_IG173:
        mov      edx, dword ptr [rbp-0x40]
        lea      edi, [rdx+0x01]
        cmp      edi, r15d
-       jb       SHORT G_M51644_IG170
+       jb       SHORT G_M51644_IG174
        mov      edi, -1
-       jmp      SHORT G_M51644_IG171
+       jmp      SHORT G_M51644_IG175
 						;; size=18 bbWeight=2 PerfScore 10.00
-G_M51644_IG170:
+G_M51644_IG174:
        lea      edi, [rdx+0x01]
        cmp      edi, r15d
-       jae      G_M51644_IG182
+       jae      G_M51644_IG186
        mov      dword ptr [rbp-0x40], edx
        lea      edi, [rdx+0x01]
        movzx    rdi, word  ptr [r14+2*rdi]
        mov      edx, dword ptr [rbp-0x40]
 						;; size=26 bbWeight=2 PerfScore 12.50
-G_M51644_IG171:
+G_M51644_IG175:
        test     edi, edi
-       jl       G_M51644_IG185
+       jl       G_M51644_IG189
        movzx    rsi, dil
        mov      edi, dword ptr [rbx+0x08]
        mov      r8, bword ptr [rbx+0x10]
        mov      r9d, dword ptr [rbx+0x18]
        cmp      edi, r9d
-       jae      SHORT G_M51644_IG172
+       jae      SHORT G_M51644_IG176
        cmp      edi, r9d
-       jae      G_M51644_IG182
+       jae      G_M51644_IG186
        mov      r9d, edi
        mov      byte  ptr [r8+r9], sil
        inc      edi
        mov      dword ptr [rbx+0x08], edi
        mov      dword ptr [rbp-0x40], edx
-       jmp      SHORT G_M51644_IG173
+       jmp      SHORT G_M51644_IG177
 						;; size=54 bbWeight=2 PerfScore 31.00
-G_M51644_IG172:
+G_M51644_IG176:
        mov      dword ptr [rbp-0x40], edx
        mov      rdi, rbx
        mov      r8, 0xD1FFAB1E      ; code for System.Collections.Generic.ValueListBuilder`1[ubyte]:AddWithResize(ubyte):this
        call     [r8]System.Collections.Generic.ValueListBuilder`1[ubyte]:AddWithResize(ubyte):this
 						;; size=19 bbWeight=2 PerfScore 9.00
-G_M51644_IG173:
+G_M51644_IG177:
        mov      eax, 2
        mov      dword ptr [rbp-0x44], eax
-       jmp      G_M51644_IG180
+       jmp      G_M51644_IG184
 						;; size=13 bbWeight=2 PerfScore 6.50
-G_M51644_IG174:
+G_M51644_IG178:
        cmp      esi, 127
-       ja       SHORT G_M51644_IG176
+       ja       SHORT G_M51644_IG180
        movzx    rsi, sil
        mov      edi, dword ptr [rbx+0x08]
        mov      r8, bword ptr [rbx+0x10]
        mov      r9d, dword ptr [rbx+0x18]
        cmp      edi, r9d
-       jae      SHORT G_M51644_IG175
+       jae      SHORT G_M51644_IG179
        cmp      edi, r9d
-       jae      G_M51644_IG182
+       jae      G_M51644_IG186
        mov      r9d, edi
        mov      byte  ptr [r8+r9], sil
        inc      edi
        mov      dword ptr [rbx+0x08], edi
-       jmp      G_M51644_IG179
+       jmp      G_M51644_IG183
 						;; size=51 bbWeight=2 PerfScore 29.00
-G_M51644_IG175:
+G_M51644_IG179:
        mov      rdi, rbx
        mov      r8, 0xD1FFAB1E      ; code for System.Collections.Generic.ValueListBuilder`1[ubyte]:AddWithResize(ubyte):this
        call     [r8]System.Collections.Generic.ValueListBuilder`1[ubyte]:AddWithResize(ubyte):this
-       jmp      G_M51644_IG179
+       jmp      G_M51644_IG183
 						;; size=21 bbWeight=2 PerfScore 11.00
-G_M51644_IG176:
+G_M51644_IG180:
        lea      edi, [rsi-0xD800]
        cmp      edi, 0x7FF
-       jbe      G_M51644_IG186
+       jbe      G_M51644_IG190
        mov      dword ptr [rbp-0x90], esi
        mov      edi, esi
        mov      r8, 0xD1FFAB1E      ; code for System.Text.UnicodeUtility:GetUtf8SequenceLength(uint):int
        call     [r8]System.Text.UnicodeUtility:GetUtf8SequenceLength(uint):int
        mov      edi, dword ptr [rbx+0x08]
        mov      rsi, bword ptr [rbx+0x10]
        mov      ecx, dword ptr [rbx+0x18]
        mov      edx, edi
        mov      r8d, eax
        add      rdx, r8
        cmp      rdx, rcx
-       ja       SHORT G_M51644_IG177
+       ja       SHORT G_M51644_IG181
        lea      ecx, [rdi+rax]
        mov      dword ptr [rbx+0x08], ecx
        mov      ecx, edi
        add      rsi, rcx
        mov      edx, eax
-       jmp      SHORT G_M51644_IG178
+       jmp      SHORT G_M51644_IG182
 						;; size=77 bbWeight=2 PerfScore 37.00
-G_M51644_IG177:
+G_M51644_IG181:
        mov      rdi, rbx
        mov      esi, eax
        mov      rax, 0xD1FFAB1E      ; code for System.Collections.Generic.ValueListBuilder`1[ubyte]:AppendSpanWithGrow(int):System.Span`1[ubyte]:this
        call     [rax]System.Collections.Generic.ValueListBuilder`1[ubyte]:AppendSpanWithGrow(int):System.Span`1[ubyte]:this
        mov      rsi, rax
 						;; size=20 bbWeight=2 PerfScore 8.00
-G_M51644_IG178:
+G_M51644_IG182:
        lea      rcx, [rbp-0x70]
        mov      edi, dword ptr [rbp-0x90]
        mov      rax, 0xD1FFAB1E      ; code for System.Text.Rune:TryEncodeToUtf8(System.Text.Rune,System.Span`1[ubyte],byref):ubyte
        call     [rax]System.Text.Rune:TryEncodeToUtf8(System.Text.Rune,System.Span`1[ubyte],byref):ubyte
        test     eax, eax
-       je       G_M51644_IG187
+       je       G_M51644_IG191
 						;; size=30 bbWeight=2 PerfScore 12.00
-G_M51644_IG179:
+G_M51644_IG183:
        mov      edi, 1
        mov      dword ptr [rbp-0x44], edi
 						;; size=8 bbWeight=2 PerfScore 2.50
-G_M51644_IG180:
+G_M51644_IG184:
        mov      edi, dword ptr [rbp-0x44]
        mov      edx, edi
        add      edx, dword ptr [rbp-0x40]
        mov      ecx, edx
        cmp      ecx, r15d
        mov      edx, ecx
        jl       G_M51644_IG03
 						;; size=21 bbWeight=4 PerfScore 20.00
-G_M51644_IG181:
+G_M51644_IG185:
        add      rsp, 264
        pop      rbx
        pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
 						;; size=18 bbWeight=1 PerfScore 4.25
-G_M51644_IG182:
+G_M51644_IG186:
        call     CORINFO_HELP_RNGCHKFAIL
 						;; size=5 bbWeight=0 PerfScore 0.00
-G_M51644_IG183:
+G_M51644_IG187:
        mov      rdi, 0xD1FFAB1E      ; System.FormatException
        call     CORINFO_HELP_NEWSFAST
        mov      rbx, rax
        mov      rax, 0xD1FFAB1E      ; code for System.SR:get_Format_InvalidString():System.String
        call     [rax]System.SR:get_Format_InvalidString():System.String
        mov      rsi, rax
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.FormatException:.ctor(System.String):this
        call     [rax]System.FormatException:.ctor(System.String):this
        mov      rdi, rbx
        call     CORINFO_HELP_THROW
 						;; size=56 bbWeight=0 PerfScore 0.00
-G_M51644_IG184:
+G_M51644_IG188:
        mov      rdi, 0xD1FFAB1E      ; System.FormatException
        call     CORINFO_HELP_NEWSFAST
        mov      rbx, rax
        mov      rax, 0xD1FFAB1E      ; code for System.SR:get_Format_InvalidString():System.String
        call     [rax]System.SR:get_Format_InvalidString():System.String
        mov      rsi, rax
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.FormatException:.ctor(System.String):this
        call     [rax]System.FormatException:.ctor(System.String):this
        mov      rdi, rbx
        call     CORINFO_HELP_THROW
 						;; size=56 bbWeight=0 PerfScore 0.00
-G_M51644_IG185:
+G_M51644_IG189:
        mov      rdi, 0xD1FFAB1E      ; System.FormatException
        call     CORINFO_HELP_NEWSFAST
        mov      rbx, rax
        mov      rax, 0xD1FFAB1E      ; code for System.SR:get_Format_InvalidString():System.String
        call     [rax]System.SR:get_Format_InvalidString():System.String
        mov      rsi, rax
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.FormatException:.ctor(System.String):this
        call     [rax]System.FormatException:.ctor(System.String):this
        mov      rdi, rbx
        call     CORINFO_HELP_THROW
 						;; size=56 bbWeight=0 PerfScore 0.00
-G_M51644_IG186:
+G_M51644_IG190:
        mov      edi, 13
        mov      rax, 0xD1FFAB1E      ; code for System.ThrowHelper:ThrowArgumentOutOfRangeException(int)
        call     [rax]System.ThrowHelper:ThrowArgumentOutOfRangeException(int)
        int3     
 						;; size=18 bbWeight=0 PerfScore 0.00
-G_M51644_IG187:
+G_M51644_IG191:
        mov      rax, 0xD1FFAB1E      ; code for System.ThrowHelper:ThrowArgumentException_DestinationTooShort()
        call     [rax]System.ThrowHelper:ThrowArgumentException_DestinationTooShort()
        int3     
 						;; size=13 bbWeight=0 PerfScore 0.00
 RWD00  	dd	G_M51644_IG79 - G_M51644_IG02
-       	dd	G_M51644_IG174 - G_M51644_IG02
+       	dd	G_M51644_IG178 - G_M51644_IG02
        	dd	G_M51644_IG48 - G_M51644_IG02
        	dd	G_M51644_IG14 - G_M51644_IG02
        	dd	G_M51644_IG22 - G_M51644_IG02
 RWD20  	dd	00000000h
 RWD24  	dq	4024000000000000h	;           10
 
 
-; Total bytes of code 5466, prolog size 47, PerfScore 9759.77, instruction count 1426, allocated bytes for code 5466 (MethodHash=c4ca3643) for method System.DateTimeFormat:FormatCustomized[ubyte](System.DateTime,System.ReadOnlySpan`1[ushort],System.Globalization.DateTimeFormatInfo,System.TimeSpan,byref) (FullOpts)
+; Total bytes of code 5512, prolog size 47, PerfScore 10072.37, instruction count 1442, allocated bytes for code 5512 (MethodHash=c4ca3643) for method System.DateTimeFormat:FormatCustomized[ubyte](System.DateTime,System.ReadOnlySpan`1[ushort],System.Globalization.DateTimeFormatInfo,System.TimeSpan,byref) (FullOpts)
46 (10.87 % of base) - System.IO.TextWriter:WriteAsync(System.String):System.Threading.Tasks.Task:this
 ; Assembly listing for method System.IO.TextWriter:WriteAsync(System.String):System.Threading.Tasks.Task: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; 7 single block inlinees; 5 inlinees without PGO data
 ; Final local variable assignments
 ;
-;  V00 this         [V00,T04] (  3,  3   )     ref  ->  rbx         this class-hnd single-def <System.IO.TextWriter>
-;  V01 arg1         [V01,T05] (  3,  3   )     ref  ->  r15         class-hnd single-def <System.String>
+;  V00 this         [V00,T05] (  3,  3   )     ref  ->  rbx         this class-hnd single-def <System.IO.TextWriter>
+;  V01 arg1         [V01,T06] (  3,  3   )     ref  ->  r15         class-hnd single-def <System.String>
 ;  V02 OutArgs      [V02    ] (  1,  1   )  struct ( 8) [rsp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-;  V03 tmp1         [V03,T07] (  2,  4   )     ref  ->  r14         class-hnd single-def "dup spill" <System.Action`1[System.Object]>
-;* V04 tmp2         [V04,T10] (  0,  0   )     ref  ->  zero-ref    class-hnd exact single-def "impAppendStmt" <System.Threading.Tasks.TaskFactory>
+;  V03 tmp1         [V03,T08] (  2,  4   )     ref  ->  r13         class-hnd single-def "dup spill" <System.Action`1[System.Object]>
+;  V04 tmp2         [V04,T09] (  2,  4   )     ref  ->  r14         class-hnd exact single-def "impAppendStmt" <System.Threading.Tasks.TaskFactory>
 ;* V05 tmp3         [V05    ] (  0,  0   )     ref  ->  zero-ref    single-def
-;  V06 tmp4         [V06,T06] (  5,  4.50)     ref  ->  r14        
-;  V07 tmp5         [V07,T01] (  4,  8   )     ref  ->  r13         class-hnd exact single-def "NewObj constructor temp" <System.TupleSlim`2[System.IO.TextWriter,System.String]>
+;  V06 tmp4         [V06,T07] (  5,  4.50)     ref  ->  r13        
+;  V07 tmp5         [V07,T01] (  4,  8   )     ref  ->  r12         class-hnd exact single-def "NewObj constructor temp" <System.TupleSlim`2[System.IO.TextWriter,System.String]>
 ;* V08 tmp6         [V08    ] (  0,  0   )  struct ( 8) zero-ref    "impAppendStmt" <System.Threading.CancellationToken>
-;  V09 tmp7         [V09,T03] (  5,  5   )     ref  ->  r14         class-hnd exact single-def "NewObj constructor temp" <System.Action`1[System.Object]>
-;  V10 tmp8         [V10,T09] (  3,  3   )     ref  ->  rsi         class-hnd exact single-def "Inlining Arg" <System.IO.TextWriter+<>c>
+;  V09 tmp7         [V09,T04] (  5,  5   )     ref  ->  r13         class-hnd exact single-def "NewObj constructor temp" <System.Action`1[System.Object]>
+;  V10 tmp8         [V10,T10] (  3,  3   )     ref  ->  rsi         class-hnd exact single-def "Inlining Arg" <System.IO.TextWriter+<>c>
 ;* V11 tmp9         [V11    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.Threading.CancellationToken>
-;  V12 tmp10        [V12,T08] (  2,  4   )     ref  ->  rbx         class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.ThreadPoolTaskScheduler>
+;  V12 tmp10        [V12,T03] (  3,  6   )     ref  ->  rbx         class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.ThreadPoolTaskScheduler>
 ;* V13 tmp11        [V13    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline return value spill temp" <System.Threading.Tasks.Task>
 ;* V14 tmp12        [V14    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inline return value spill temp" <System.Threading.Tasks.Task>
 ;  V15 tmp13        [V15,T00] (  7, 11   )     ref  ->  r15         class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.Task>
 ;* V16 tmp14        [V16    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact single-def "Inline stloc first use temp" <System.Threading.Tasks.Task>
-;  V17 tmp15        [V17,T02] (  4,  6   )     ref  ->  rbx         class-hnd exact single-def "Inlining Arg" <System.Threading.ExecutionContext>
+;  V17 tmp15        [V17,T02] (  4,  6   )     ref  ->  r14         class-hnd exact single-def "Inlining Arg" <System.Threading.ExecutionContext>
 ;* V18 tmp16        [V18,T11] (  0,  0   )     ref  ->  zero-ref    single-def "field V08._source (fldOffset=0x0)" P-INDEP
 ;* V19 tmp17        [V19    ] (  0,  0   )     ref  ->  zero-ref    single-def "field V11._source (fldOffset=0x0)" P-INDEP
 ;* V20 cse0         [V20,T12] (  0,  0   )    long  ->  zero-ref    "CSE - moderate"
 ;
-; Lcl frame size = 16
+; Lcl frame size = 8
 
 G_M7461_IG01:
        push     rbp
        push     r15
        push     r14
        push     r13
+       push     r12
        push     rbx
-       sub      rsp, 16
+       push     rax
        lea      rbp, [rsp+0x30]
        mov      rbx, rdi
        mov      r15, rsi
-						;; size=23 bbWeight=1 PerfScore 6.25
+						;; size=22 bbWeight=1 PerfScore 8.00
 G_M7461_IG02:
+       mov      rdi, 0xD1FFAB1E      ; const ptr
+       mov      r14, gword ptr [rdi]
        mov      rdi, 0xD1FFAB1E      ; global ptr
        test     byte  ptr [rdi], 1
        je       G_M7461_IG10
-						;; size=19 bbWeight=1 PerfScore 4.25
+						;; size=32 bbWeight=1 PerfScore 6.50
 G_M7461_IG03:
        mov      rdi, 0xD1FFAB1E      ; data for System.IO.TextWriter+<>c:<>9__59_0
-       mov      r14, gword ptr [rdi]
-       test     r14, r14
+       mov      r13, gword ptr [rdi]
+       test     r13, r13
        jne      SHORT G_M7461_IG05
 						;; size=18 bbWeight=1 PerfScore 3.50
 G_M7461_IG04:
        mov      rdi, 0xD1FFAB1E      ; System.Action`1[System.Object]
        call     CORINFO_HELP_NEWSFAST
-       mov      r14, rax
+       mov      r13, rax
        mov      rdi, 0xD1FFAB1E      ; data for System.IO.TextWriter+<>c:<>9
        mov      rsi, gword ptr [rdi]
        test     rsi, rsi
        je       G_M7461_IG11
-       lea      rdi, bword ptr [r14+0x08]
+       lea      rdi, bword ptr [r13+0x08]
        call     CORINFO_HELP_ASSIGN_REF
        mov      rdi, 0xD1FFAB1E      ; code for System.IO.TextWriter+<>c:<WriteAsync>b__59_0(System.Object):this
-       mov      qword ptr [r14+0x18], rdi
+       mov      qword ptr [r13+0x18], rdi
        mov      rdi, 0xD1FFAB1E      ; data for System.IO.TextWriter+<>c:<>9__59_0
-       mov      rsi, r14
+       mov      rsi, r13
        call     CORINFO_HELP_ASSIGN_REF
 						;; size=81 bbWeight=0.50 PerfScore 4.62
 G_M7461_IG05:
        mov      rdi, 0xD1FFAB1E      ; System.TupleSlim`2[System.IO.TextWriter,System.String]
        call     CORINFO_HELP_NEWSFAST
-       mov      r13, rax
-       lea      rdi, bword ptr [r13+0x08]
+       mov      r12, rax
+       lea      rdi, bword ptr [r12+0x08]
        mov      rsi, rbx
        call     CORINFO_HELP_ASSIGN_REF
-       lea      rdi, bword ptr [r13+0x10]
+       lea      rdi, bword ptr [r12+0x10]
        mov      rsi, r15
        call     CORINFO_HELP_ASSIGN_REF
        mov      rdi, 0xD1FFAB1E      ; const ptr
        mov      rbx, gword ptr [rdi]
+       cmp      byte  ptr [r14], r14b
+       test     rbx, rbx
+       je       G_M7461_IG12
        mov      rdi, 0xD1FFAB1E      ; System.Threading.Tasks.Task
        call     CORINFO_HELP_NEWSFAST
        mov      r15, rax
-       test     r14, r14
-       je       G_M7461_IG12
+       test     r13, r13
+       je       G_M7461_IG13
        mov      gword ptr [rsp], rbx
        mov      rdi, r15
-       mov      rsi, r14
-       mov      rdx, r13
+       mov      rsi, r13
+       mov      rdx, r12
        xor      rcx, rcx
        mov      r8d, 8
        mov      r9d, 0x2000
        mov      rax, 0xD1FFAB1E      ; code for System.Threading.Tasks.Task:TaskConstructorCore(System.Delegate,System.Object,System.Threading.CancellationToken,int,int,System.Threading.Tasks.TaskScheduler):this
        call     [rax]System.Threading.Tasks.Task:TaskConstructorCore(System.Delegate,System.Object,System.Threading.CancellationToken,int,int,System.Threading.Tasks.TaskScheduler):this
        mov      rax, 0xD1FFAB1E      ; code for System.Threading.ExecutionContext:Capture():System.Threading.ExecutionContext
        call     [rax]System.Threading.ExecutionContext:Capture():System.Threading.ExecutionContext
-       mov      rbx, rax
-       test     rbx, rbx
+       mov      r14, rax
+       test     r14, r14
        jne      SHORT G_M7461_IG07
-						;; size=141 bbWeight=1 PerfScore 20.50
+						;; size=155 bbWeight=1 PerfScore 24.75
 G_M7461_IG06:
        or       dword ptr [r15+0x34], 0xD1FFAB1E
        jmp      SHORT G_M7461_IG08
 						;; size=10 bbWeight=0.50 PerfScore 2.50
 G_M7461_IG07:
        mov      rdi, 0xD1FFAB1E      ; const ptr
-       cmp      rbx, gword ptr [rdi]
+       cmp      r14, gword ptr [rdi]
        je       SHORT G_M7461_IG08
        mov      rdi, r15
        mov      rax, 0xD1FFAB1E      ; code for System.Threading.Tasks.Task:EnsureContingentPropertiesInitializedUnsafe():System.Threading.Tasks.Task+ContingentProperties:this
        call     [rax]System.Threading.Tasks.Task:EnsureContingentPropertiesInitializedUnsafe():System.Threading.Tasks.Task+ContingentProperties:this
        lea      rdi, bword ptr [rax+0x08]
-       mov      rsi, rbx
+       mov      rsi, r14
        call     CORINFO_HELP_ASSIGN_REF
 						;; size=42 bbWeight=0.50 PerfScore 4.75
 G_M7461_IG08:
        mov      rdi, r15
        xor      esi, esi
        mov      rax, 0xD1FFAB1E      ; code for System.Threading.Tasks.Task:ScheduleAndStart(ubyte):this
        call     [rax]System.Threading.Tasks.Task:ScheduleAndStart(ubyte):this
        mov      rax, r15
 						;; size=20 bbWeight=1 PerfScore 4.00
 G_M7461_IG09:
-       add      rsp, 16
+       add      rsp, 8
        pop      rbx
+       pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
-						;; size=13 bbWeight=1 PerfScore 3.75
+						;; size=15 bbWeight=1 PerfScore 4.25
 G_M7461_IG10:
        mov      rdi, 0xD1FFAB1E
        mov      esi, 0x7FF
        call     CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
        jmp      G_M7461_IG03
 						;; size=25 bbWeight=0 PerfScore 0.00
 G_M7461_IG11:
        mov      rax, 0xD1FFAB1E      ; code for System.MulticastDelegate:ThrowNullThisInDelegateToInstance()
        call     [rax]System.MulticastDelegate:ThrowNullThisInDelegateToInstance()
        int3     
 						;; size=13 bbWeight=0 PerfScore 0.00
 G_M7461_IG12:
+       mov      edi, 47
+       mov      rax, 0xD1FFAB1E      ; code for System.ThrowHelper:ThrowArgumentNullException(int)
+       call     [rax]System.ThrowHelper:ThrowArgumentNullException(int)
+       int3     
+						;; size=18 bbWeight=0 PerfScore 0.00
+G_M7461_IG13:
        mov      edi, 28
        mov      rax, 0xD1FFAB1E      ; code for System.ThrowHelper:ThrowArgumentNullException(int)
        call     [rax]System.ThrowHelper:ThrowArgumentNullException(int)
        int3     
 						;; size=18 bbWeight=0 PerfScore 0.00
 
-; Total bytes of code 423, prolog size 17, PerfScore 96.43, instruction count 94, allocated bytes for code 423 (MethodHash=5c49e2da) for method System.IO.TextWriter:WriteAsync(System.String):System.Threading.Tasks.Task:this (FullOpts)
+; Total bytes of code 469, prolog size 16, PerfScore 109.78, instruction count 105, allocated bytes for code 469 (MethodHash=5c49e2da) for method System.IO.TextWriter:WriteAsync(System.String):System.Threading.Tasks.Task:this (FullOpts)
46 (11.06 % of base) - System.IO.TextWriter:WriteAsync(ushort):System.Threading.Tasks.Task:this
 ; Assembly listing for method System.IO.TextWriter:WriteAsync(ushort):System.Threading.Tasks.Task: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; 7 single block inlinees; 5 inlinees without PGO data
 ; Final local variable assignments
 ;
-;  V00 this         [V00,T04] (  3,  3   )     ref  ->  rbx         this class-hnd single-def <System.IO.TextWriter>
-;  V01 arg1         [V01,T05] (  3,  3   )  ushort  ->  r15         single-def
+;  V00 this         [V00,T05] (  3,  3   )     ref  ->  rbx         this class-hnd single-def <System.IO.TextWriter>
+;  V01 arg1         [V01,T06] (  3,  3   )  ushort  ->  r15         single-def
 ;  V02 OutArgs      [V02    ] (  1,  1   )  struct ( 8) [rsp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-;  V03 tmp1         [V03,T07] (  2,  4   )     ref  ->  r14         class-hnd single-def "dup spill" <System.Action`1[System.Object]>
-;* V04 tmp2         [V04,T10] (  0,  0   )     ref  ->  zero-ref    class-hnd exact single-def "impAppendStmt" <System.Threading.Tasks.TaskFactory>
+;  V03 tmp1         [V03,T08] (  2,  4   )     ref  ->  r13         class-hnd single-def "dup spill" <System.Action`1[System.Object]>
+;  V04 tmp2         [V04,T09] (  2,  4   )     ref  ->  r14         class-hnd exact single-def "impAppendStmt" <System.Threading.Tasks.TaskFactory>
 ;* V05 tmp3         [V05    ] (  0,  0   )     ref  ->  zero-ref    single-def
-;  V06 tmp4         [V06,T06] (  5,  4.50)     ref  ->  r14        
-;  V07 tmp5         [V07,T01] (  4,  8   )     ref  ->  r13         class-hnd exact single-def "NewObj constructor temp" <System.TupleSlim`2[System.IO.TextWriter,ushort]>
+;  V06 tmp4         [V06,T07] (  5,  4.50)     ref  ->  r13        
+;  V07 tmp5         [V07,T01] (  4,  8   )     ref  ->  r12         class-hnd exact single-def "NewObj constructor temp" <System.TupleSlim`2[System.IO.TextWriter,ushort]>
 ;* V08 tmp6         [V08    ] (  0,  0   )  struct ( 8) zero-ref    "impAppendStmt" <System.Threading.CancellationToken>
-;  V09 tmp7         [V09,T03] (  5,  5   )     ref  ->  r14         class-hnd exact single-def "NewObj constructor temp" <System.Action`1[System.Object]>
-;  V10 tmp8         [V10,T09] (  3,  3   )     ref  ->  rsi         class-hnd exact single-def "Inlining Arg" <System.IO.TextWriter+<>c>
+;  V09 tmp7         [V09,T04] (  5,  5   )     ref  ->  r13         class-hnd exact single-def "NewObj constructor temp" <System.Action`1[System.Object]>
+;  V10 tmp8         [V10,T10] (  3,  3   )     ref  ->  rsi         class-hnd exact single-def "Inlining Arg" <System.IO.TextWriter+<>c>
 ;* V11 tmp9         [V11    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.Threading.CancellationToken>
-;  V12 tmp10        [V12,T08] (  2,  4   )     ref  ->  rbx         class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.ThreadPoolTaskScheduler>
+;  V12 tmp10        [V12,T03] (  3,  6   )     ref  ->  rbx         class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.ThreadPoolTaskScheduler>
 ;* V13 tmp11        [V13    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline return value spill temp" <System.Threading.Tasks.Task>
 ;* V14 tmp12        [V14    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inline return value spill temp" <System.Threading.Tasks.Task>
 ;  V15 tmp13        [V15,T00] (  7, 11   )     ref  ->  r15         class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.Task>
 ;* V16 tmp14        [V16    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact single-def "Inline stloc first use temp" <System.Threading.Tasks.Task>
-;  V17 tmp15        [V17,T02] (  4,  6   )     ref  ->  rbx         class-hnd exact single-def "Inlining Arg" <System.Threading.ExecutionContext>
+;  V17 tmp15        [V17,T02] (  4,  6   )     ref  ->  r14         class-hnd exact single-def "Inlining Arg" <System.Threading.ExecutionContext>
 ;* V18 tmp16        [V18,T11] (  0,  0   )     ref  ->  zero-ref    single-def "field V08._source (fldOffset=0x0)" P-INDEP
 ;* V19 tmp17        [V19    ] (  0,  0   )     ref  ->  zero-ref    single-def "field V11._source (fldOffset=0x0)" P-INDEP
 ;* V20 cse0         [V20,T12] (  0,  0   )    long  ->  zero-ref    "CSE - moderate"
 ;
-; Lcl frame size = 16
+; Lcl frame size = 8
 
 G_M12796_IG01:
        push     rbp
        push     r15
        push     r14
        push     r13
+       push     r12
        push     rbx
-       sub      rsp, 16
+       push     rax
        lea      rbp, [rsp+0x30]
        mov      rbx, rdi
        mov      r15d, esi
-						;; size=23 bbWeight=1 PerfScore 6.25
+						;; size=22 bbWeight=1 PerfScore 8.00
 G_M12796_IG02:
+       mov      rdi, 0xD1FFAB1E      ; const ptr
+       mov      r14, gword ptr [rdi]
        mov      rdi, 0xD1FFAB1E      ; global ptr
        test     byte  ptr [rdi], 1
        je       G_M12796_IG10
-						;; size=19 bbWeight=1 PerfScore 4.25
+						;; size=32 bbWeight=1 PerfScore 6.50
 G_M12796_IG03:
        mov      rdi, 0xD1FFAB1E      ; data for System.IO.TextWriter+<>c:<>9__58_0
-       mov      r14, gword ptr [rdi]
-       test     r14, r14
+       mov      r13, gword ptr [rdi]
+       test     r13, r13
        jne      SHORT G_M12796_IG05
 						;; size=18 bbWeight=1 PerfScore 3.50
 G_M12796_IG04:
        mov      rdi, 0xD1FFAB1E      ; System.Action`1[System.Object]
        call     CORINFO_HELP_NEWSFAST
-       mov      r14, rax
+       mov      r13, rax
        mov      rdi, 0xD1FFAB1E      ; data for System.IO.TextWriter+<>c:<>9
        mov      rsi, gword ptr [rdi]
        test     rsi, rsi
        je       G_M12796_IG11
-       lea      rdi, bword ptr [r14+0x08]
+       lea      rdi, bword ptr [r13+0x08]
        call     CORINFO_HELP_ASSIGN_REF
        mov      rdi, 0xD1FFAB1E      ; code for System.IO.TextWriter+<>c:<WriteAsync>b__58_0(System.Object):this
-       mov      qword ptr [r14+0x18], rdi
+       mov      qword ptr [r13+0x18], rdi
        mov      rdi, 0xD1FFAB1E      ; data for System.IO.TextWriter+<>c:<>9__58_0
-       mov      rsi, r14
+       mov      rsi, r13
        call     CORINFO_HELP_ASSIGN_REF
 						;; size=81 bbWeight=0.50 PerfScore 4.62
 G_M12796_IG05:
        mov      rdi, 0xD1FFAB1E      ; System.TupleSlim`2[System.IO.TextWriter,ushort]
        call     CORINFO_HELP_NEWSFAST
-       mov      r13, rax
-       lea      rdi, bword ptr [r13+0x08]
+       mov      r12, rax
+       lea      rdi, bword ptr [r12+0x08]
        mov      rsi, rbx
        call     CORINFO_HELP_ASSIGN_REF
-       mov      word  ptr [r13+0x10], r15w
+       mov      word  ptr [r12+0x10], r15w
        mov      rdi, 0xD1FFAB1E      ; const ptr
        mov      rbx, gword ptr [rdi]
+       cmp      byte  ptr [r14], r14b
+       test     rbx, rbx
+       je       G_M12796_IG12
        mov      rdi, 0xD1FFAB1E      ; System.Threading.Tasks.Task
        call     CORINFO_HELP_NEWSFAST
        mov      r15, rax
-       test     r14, r14
-       je       G_M12796_IG12
+       test     r13, r13
+       je       G_M12796_IG13
        mov      gword ptr [rsp], rbx
        mov      rdi, r15
-       mov      rsi, r14
-       mov      rdx, r13
+       mov      rsi, r13
+       mov      rdx, r12
        xor      rcx, rcx
        mov      r8d, 8
        mov      r9d, 0x2000
        mov      rax, 0xD1FFAB1E      ; code for System.Threading.Tasks.Task:TaskConstructorCore(System.Delegate,System.Object,System.Threading.CancellationToken,int,int,System.Threading.Tasks.TaskScheduler):this
        call     [rax]System.Threading.Tasks.Task:TaskConstructorCore(System.Delegate,System.Object,System.Threading.CancellationToken,int,int,System.Threading.Tasks.TaskScheduler):this
        mov      rax, 0xD1FFAB1E      ; code for System.Threading.ExecutionContext:Capture():System.Threading.ExecutionContext
        call     [rax]System.Threading.ExecutionContext:Capture():System.Threading.ExecutionContext
-       mov      rbx, rax
-       test     rbx, rbx
+       mov      r14, rax
+       test     r14, r14
        jne      SHORT G_M12796_IG07
-						;; size=134 bbWeight=1 PerfScore 19.75
+						;; size=148 bbWeight=1 PerfScore 24.00
 G_M12796_IG06:
        or       dword ptr [r15+0x34], 0xD1FFAB1E
        jmp      SHORT G_M12796_IG08
 						;; size=10 bbWeight=0.50 PerfScore 2.50
 G_M12796_IG07:
        mov      rdi, 0xD1FFAB1E      ; const ptr
-       cmp      rbx, gword ptr [rdi]
+       cmp      r14, gword ptr [rdi]
        je       SHORT G_M12796_IG08
        mov      rdi, r15
        mov      rax, 0xD1FFAB1E      ; code for System.Threading.Tasks.Task:EnsureContingentPropertiesInitializedUnsafe():System.Threading.Tasks.Task+ContingentProperties:this
        call     [rax]System.Threading.Tasks.Task:EnsureContingentPropertiesInitializedUnsafe():System.Threading.Tasks.Task+ContingentProperties:this
        lea      rdi, bword ptr [rax+0x08]
-       mov      rsi, rbx
+       mov      rsi, r14
        call     CORINFO_HELP_ASSIGN_REF
 						;; size=42 bbWeight=0.50 PerfScore 4.75
 G_M12796_IG08:
        mov      rdi, r15
        xor      esi, esi
        mov      rax, 0xD1FFAB1E      ; code for System.Threading.Tasks.Task:ScheduleAndStart(ubyte):this
        call     [rax]System.Threading.Tasks.Task:ScheduleAndStart(ubyte):this
        mov      rax, r15
 						;; size=20 bbWeight=1 PerfScore 4.00
 G_M12796_IG09:
-       add      rsp, 16
+       add      rsp, 8
        pop      rbx
+       pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
-						;; size=13 bbWeight=1 PerfScore 3.75
+						;; size=15 bbWeight=1 PerfScore 4.25
 G_M12796_IG10:
        mov      rdi, 0xD1FFAB1E
        mov      esi, 0x7FF
        call     CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
        jmp      G_M12796_IG03
 						;; size=25 bbWeight=0 PerfScore 0.00
 G_M12796_IG11:
        mov      rax, 0xD1FFAB1E      ; code for System.MulticastDelegate:ThrowNullThisInDelegateToInstance()
        call     [rax]System.MulticastDelegate:ThrowNullThisInDelegateToInstance()
        int3     
 						;; size=13 bbWeight=0 PerfScore 0.00
 G_M12796_IG12:
+       mov      edi, 47
+       mov      rax, 0xD1FFAB1E      ; code for System.ThrowHelper:ThrowArgumentNullException(int)
+       call     [rax]System.ThrowHelper:ThrowArgumentNullException(int)
+       int3     
+						;; size=18 bbWeight=0 PerfScore 0.00
+G_M12796_IG13:
        mov      edi, 28
        mov      rax, 0xD1FFAB1E      ; code for System.ThrowHelper:ThrowArgumentNullException(int)
        call     [rax]System.ThrowHelper:ThrowArgumentNullException(int)
        int3     
 						;; size=18 bbWeight=0 PerfScore 0.00
 
-; Total bytes of code 416, prolog size 17, PerfScore 94.98, instruction count 92, allocated bytes for code 416 (MethodHash=6502ce03) for method System.IO.TextWriter:WriteAsync(ushort):System.Threading.Tasks.Task:this (FullOpts)
+; Total bytes of code 462, prolog size 16, PerfScore 108.33, instruction count 103, allocated bytes for code 462 (MethodHash=6502ce03) for method System.IO.TextWriter:WriteAsync(ushort):System.Threading.Tasks.Task:this (FullOpts)
46 (10.87 % of base) - System.IO.TextWriter:WriteLineAsync(System.String):System.Threading.Tasks.Task:this
 ; Assembly listing for method System.IO.TextWriter:WriteLineAsync(System.String):System.Threading.Tasks.Task: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; 7 single block inlinees; 5 inlinees without PGO data
 ; Final local variable assignments
 ;
-;  V00 this         [V00,T04] (  3,  3   )     ref  ->  rbx         this class-hnd single-def <System.IO.TextWriter>
-;  V01 arg1         [V01,T05] (  3,  3   )     ref  ->  r15         class-hnd single-def <System.String>
+;  V00 this         [V00,T05] (  3,  3   )     ref  ->  rbx         this class-hnd single-def <System.IO.TextWriter>
+;  V01 arg1         [V01,T06] (  3,  3   )     ref  ->  r15         class-hnd single-def <System.String>
 ;  V02 OutArgs      [V02    ] (  1,  1   )  struct ( 8) [rsp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-;  V03 tmp1         [V03,T07] (  2,  4   )     ref  ->  r14         class-hnd single-def "dup spill" <System.Action`1[System.Object]>
-;* V04 tmp2         [V04,T10] (  0,  0   )     ref  ->  zero-ref    class-hnd exact single-def "impAppendStmt" <System.Threading.Tasks.TaskFactory>
+;  V03 tmp1         [V03,T08] (  2,  4   )     ref  ->  r13         class-hnd single-def "dup spill" <System.Action`1[System.Object]>
+;  V04 tmp2         [V04,T09] (  2,  4   )     ref  ->  r14         class-hnd exact single-def "impAppendStmt" <System.Threading.Tasks.TaskFactory>
 ;* V05 tmp3         [V05    ] (  0,  0   )     ref  ->  zero-ref    single-def
-;  V06 tmp4         [V06,T06] (  5,  4.50)     ref  ->  r14        
-;  V07 tmp5         [V07,T01] (  4,  8   )     ref  ->  r13         class-hnd exact single-def "NewObj constructor temp" <System.TupleSlim`2[System.IO.TextWriter,System.String]>
+;  V06 tmp4         [V06,T07] (  5,  4.50)     ref  ->  r13        
+;  V07 tmp5         [V07,T01] (  4,  8   )     ref  ->  r12         class-hnd exact single-def "NewObj constructor temp" <System.TupleSlim`2[System.IO.TextWriter,System.String]>
 ;* V08 tmp6         [V08    ] (  0,  0   )  struct ( 8) zero-ref    "impAppendStmt" <System.Threading.CancellationToken>
-;  V09 tmp7         [V09,T03] (  5,  5   )     ref  ->  r14         class-hnd exact single-def "NewObj constructor temp" <System.Action`1[System.Object]>
-;  V10 tmp8         [V10,T09] (  3,  3   )     ref  ->  rsi         class-hnd exact single-def "Inlining Arg" <System.IO.TextWriter+<>c>
+;  V09 tmp7         [V09,T04] (  5,  5   )     ref  ->  r13         class-hnd exact single-def "NewObj constructor temp" <System.Action`1[System.Object]>
+;  V10 tmp8         [V10,T10] (  3,  3   )     ref  ->  rsi         class-hnd exact single-def "Inlining Arg" <System.IO.TextWriter+<>c>
 ;* V11 tmp9         [V11    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.Threading.CancellationToken>
-;  V12 tmp10        [V12,T08] (  2,  4   )     ref  ->  rbx         class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.ThreadPoolTaskScheduler>
+;  V12 tmp10        [V12,T03] (  3,  6   )     ref  ->  rbx         class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.ThreadPoolTaskScheduler>
 ;* V13 tmp11        [V13    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline return value spill temp" <System.Threading.Tasks.Task>
 ;* V14 tmp12        [V14    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inline return value spill temp" <System.Threading.Tasks.Task>
 ;  V15 tmp13        [V15,T00] (  7, 11   )     ref  ->  r15         class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.Task>
 ;* V16 tmp14        [V16    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact single-def "Inline stloc first use temp" <System.Threading.Tasks.Task>
-;  V17 tmp15        [V17,T02] (  4,  6   )     ref  ->  rbx         class-hnd exact single-def "Inlining Arg" <System.Threading.ExecutionContext>
+;  V17 tmp15        [V17,T02] (  4,  6   )     ref  ->  r14         class-hnd exact single-def "Inlining Arg" <System.Threading.ExecutionContext>
 ;* V18 tmp16        [V18,T11] (  0,  0   )     ref  ->  zero-ref    single-def "field V08._source (fldOffset=0x0)" P-INDEP
 ;* V19 tmp17        [V19    ] (  0,  0   )     ref  ->  zero-ref    single-def "field V11._source (fldOffset=0x0)" P-INDEP
 ;* V20 cse0         [V20,T12] (  0,  0   )    long  ->  zero-ref    "CSE - moderate"
 ;
-; Lcl frame size = 16
+; Lcl frame size = 8
 
 G_M49035_IG01:
        push     rbp
        push     r15
        push     r14
        push     r13
+       push     r12
        push     rbx
-       sub      rsp, 16
+       push     rax
        lea      rbp, [rsp+0x30]
        mov      rbx, rdi
        mov      r15, rsi
-						;; size=23 bbWeight=1 PerfScore 6.25
+						;; size=22 bbWeight=1 PerfScore 8.00
 G_M49035_IG02:
+       mov      rdi, 0xD1FFAB1E      ; const ptr
+       mov      r14, gword ptr [rdi]
        mov      rdi, 0xD1FFAB1E      ; global ptr
        test     byte  ptr [rdi], 1
        je       G_M49035_IG10
-						;; size=19 bbWeight=1 PerfScore 4.25
+						;; size=32 bbWeight=1 PerfScore 6.50
 G_M49035_IG03:
        mov      rdi, 0xD1FFAB1E      ; data for System.IO.TextWriter+<>c:<>9__65_0
-       mov      r14, gword ptr [rdi]
-       test     r14, r14
+       mov      r13, gword ptr [rdi]
+       test     r13, r13
        jne      SHORT G_M49035_IG05
 						;; size=18 bbWeight=1 PerfScore 3.50
 G_M49035_IG04:
        mov      rdi, 0xD1FFAB1E      ; System.Action`1[System.Object]
        call     CORINFO_HELP_NEWSFAST
-       mov      r14, rax
+       mov      r13, rax
        mov      rdi, 0xD1FFAB1E      ; data for System.IO.TextWriter+<>c:<>9
        mov      rsi, gword ptr [rdi]
        test     rsi, rsi
        je       G_M49035_IG11
-       lea      rdi, bword ptr [r14+0x08]
+       lea      rdi, bword ptr [r13+0x08]
        call     CORINFO_HELP_ASSIGN_REF
        mov      rdi, 0xD1FFAB1E      ; code for System.IO.TextWriter+<>c:<WriteLineAsync>b__65_0(System.Object):this
-       mov      qword ptr [r14+0x18], rdi
+       mov      qword ptr [r13+0x18], rdi
        mov      rdi, 0xD1FFAB1E      ; data for System.IO.TextWriter+<>c:<>9__65_0
-       mov      rsi, r14
+       mov      rsi, r13
        call     CORINFO_HELP_ASSIGN_REF
 						;; size=81 bbWeight=0.50 PerfScore 4.62
 G_M49035_IG05:
        mov      rdi, 0xD1FFAB1E      ; System.TupleSlim`2[System.IO.TextWriter,System.String]
        call     CORINFO_HELP_NEWSFAST
-       mov      r13, rax
-       lea      rdi, bword ptr [r13+0x08]
+       mov      r12, rax
+       lea      rdi, bword ptr [r12+0x08]
        mov      rsi, rbx
        call     CORINFO_HELP_ASSIGN_REF
-       lea      rdi, bword ptr [r13+0x10]
+       lea      rdi, bword ptr [r12+0x10]
        mov      rsi, r15
        call     CORINFO_HELP_ASSIGN_REF
        mov      rdi, 0xD1FFAB1E      ; const ptr
        mov      rbx, gword ptr [rdi]
+       cmp      byte  ptr [r14], r14b
+       test     rbx, rbx
+       je       G_M49035_IG12
        mov      rdi, 0xD1FFAB1E      ; System.Threading.Tasks.Task
        call     CORINFO_HELP_NEWSFAST
        mov      r15, rax
-       test     r14, r14
-       je       G_M49035_IG12
+       test     r13, r13
+       je       G_M49035_IG13
        mov      gword ptr [rsp], rbx
        mov      rdi, r15
-       mov      rsi, r14
-       mov      rdx, r13
+       mov      rsi, r13
+       mov      rdx, r12
        xor      rcx, rcx
        mov      r8d, 8
        mov      r9d, 0x2000
        mov      rax, 0xD1FFAB1E      ; code for System.Threading.Tasks.Task:TaskConstructorCore(System.Delegate,System.Object,System.Threading.CancellationToken,int,int,System.Threading.Tasks.TaskScheduler):this
        call     [rax]System.Threading.Tasks.Task:TaskConstructorCore(System.Delegate,System.Object,System.Threading.CancellationToken,int,int,System.Threading.Tasks.TaskScheduler):this
        mov      rax, 0xD1FFAB1E      ; code for System.Threading.ExecutionContext:Capture():System.Threading.ExecutionContext
        call     [rax]System.Threading.ExecutionContext:Capture():System.Threading.ExecutionContext
-       mov      rbx, rax
-       test     rbx, rbx
+       mov      r14, rax
+       test     r14, r14
        jne      SHORT G_M49035_IG07
-						;; size=141 bbWeight=1 PerfScore 20.50
+						;; size=155 bbWeight=1 PerfScore 24.75
 G_M49035_IG06:
        or       dword ptr [r15+0x34], 0xD1FFAB1E
        jmp      SHORT G_M49035_IG08
 						;; size=10 bbWeight=0.50 PerfScore 2.50
 G_M49035_IG07:
        mov      rdi, 0xD1FFAB1E      ; const ptr
-       cmp      rbx, gword ptr [rdi]
+       cmp      r14, gword ptr [rdi]
        je       SHORT G_M49035_IG08
        mov      rdi, r15
        mov      rax, 0xD1FFAB1E      ; code for System.Threading.Tasks.Task:EnsureContingentPropertiesInitializedUnsafe():System.Threading.Tasks.Task+ContingentProperties:this
        call     [rax]System.Threading.Tasks.Task:EnsureContingentPropertiesInitializedUnsafe():System.Threading.Tasks.Task+ContingentProperties:this
        lea      rdi, bword ptr [rax+0x08]
-       mov      rsi, rbx
+       mov      rsi, r14
        call     CORINFO_HELP_ASSIGN_REF
 						;; size=42 bbWeight=0.50 PerfScore 4.75
 G_M49035_IG08:
        mov      rdi, r15
        xor      esi, esi
        mov      rax, 0xD1FFAB1E      ; code for System.Threading.Tasks.Task:ScheduleAndStart(ubyte):this
        call     [rax]System.Threading.Tasks.Task:ScheduleAndStart(ubyte):this
        mov      rax, r15
 						;; size=20 bbWeight=1 PerfScore 4.00
 G_M49035_IG09:
-       add      rsp, 16
+       add      rsp, 8
        pop      rbx
+       pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
-						;; size=13 bbWeight=1 PerfScore 3.75
+						;; size=15 bbWeight=1 PerfScore 4.25
 G_M49035_IG10:
        mov      rdi, 0xD1FFAB1E
        mov      esi, 0x7FF
        call     CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
        jmp      G_M49035_IG03
 						;; size=25 bbWeight=0 PerfScore 0.00
 G_M49035_IG11:
        mov      rax, 0xD1FFAB1E      ; code for System.MulticastDelegate:ThrowNullThisInDelegateToInstance()
        call     [rax]System.MulticastDelegate:ThrowNullThisInDelegateToInstance()
        int3     
 						;; size=13 bbWeight=0 PerfScore 0.00
 G_M49035_IG12:
+       mov      edi, 47
+       mov      rax, 0xD1FFAB1E      ; code for System.ThrowHelper:ThrowArgumentNullException(int)
+       call     [rax]System.ThrowHelper:ThrowArgumentNullException(int)
+       int3     
+						;; size=18 bbWeight=0 PerfScore 0.00
+G_M49035_IG13:
        mov      edi, 28
        mov      rax, 0xD1FFAB1E      ; code for System.ThrowHelper:ThrowArgumentNullException(int)
        call     [rax]System.ThrowHelper:ThrowArgumentNullException(int)
        int3     
 						;; size=18 bbWeight=0 PerfScore 0.00
 
-; Total bytes of code 423, prolog size 17, PerfScore 96.43, instruction count 94, allocated bytes for code 423 (MethodHash=32f84074) for method System.IO.TextWriter:WriteLineAsync(System.String):System.Threading.Tasks.Task:this (FullOpts)
+; Total bytes of code 469, prolog size 16, PerfScore 109.78, instruction count 105, allocated bytes for code 469 (MethodHash=32f84074) for method System.IO.TextWriter:WriteLineAsync(System.String):System.Threading.Tasks.Task:this (FullOpts)
46 (11.06 % of base) - System.IO.TextWriter:WriteLineAsync(ushort):System.Threading.Tasks.Task:this
 ; Assembly listing for method System.IO.TextWriter:WriteLineAsync(ushort):System.Threading.Tasks.Task: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; 7 single block inlinees; 5 inlinees without PGO data
 ; Final local variable assignments
 ;
-;  V00 this         [V00,T04] (  3,  3   )     ref  ->  rbx         this class-hnd single-def <System.IO.TextWriter>
-;  V01 arg1         [V01,T05] (  3,  3   )  ushort  ->  r15         single-def
+;  V00 this         [V00,T05] (  3,  3   )     ref  ->  rbx         this class-hnd single-def <System.IO.TextWriter>
+;  V01 arg1         [V01,T06] (  3,  3   )  ushort  ->  r15         single-def
 ;  V02 OutArgs      [V02    ] (  1,  1   )  struct ( 8) [rsp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-;  V03 tmp1         [V03,T07] (  2,  4   )     ref  ->  r14         class-hnd single-def "dup spill" <System.Action`1[System.Object]>
-;* V04 tmp2         [V04,T10] (  0,  0   )     ref  ->  zero-ref    class-hnd exact single-def "impAppendStmt" <System.Threading.Tasks.TaskFactory>
+;  V03 tmp1         [V03,T08] (  2,  4   )     ref  ->  r13         class-hnd single-def "dup spill" <System.Action`1[System.Object]>
+;  V04 tmp2         [V04,T09] (  2,  4   )     ref  ->  r14         class-hnd exact single-def "impAppendStmt" <System.Threading.Tasks.TaskFactory>
 ;* V05 tmp3         [V05    ] (  0,  0   )     ref  ->  zero-ref    single-def
-;  V06 tmp4         [V06,T06] (  5,  4.50)     ref  ->  r14        
-;  V07 tmp5         [V07,T01] (  4,  8   )     ref  ->  r13         class-hnd exact single-def "NewObj constructor temp" <System.TupleSlim`2[System.IO.TextWriter,ushort]>
+;  V06 tmp4         [V06,T07] (  5,  4.50)     ref  ->  r13        
+;  V07 tmp5         [V07,T01] (  4,  8   )     ref  ->  r12         class-hnd exact single-def "NewObj constructor temp" <System.TupleSlim`2[System.IO.TextWriter,ushort]>
 ;* V08 tmp6         [V08    ] (  0,  0   )  struct ( 8) zero-ref    "impAppendStmt" <System.Threading.CancellationToken>
-;  V09 tmp7         [V09,T03] (  5,  5   )     ref  ->  r14         class-hnd exact single-def "NewObj constructor temp" <System.Action`1[System.Object]>
-;  V10 tmp8         [V10,T09] (  3,  3   )     ref  ->  rsi         class-hnd exact single-def "Inlining Arg" <System.IO.TextWriter+<>c>
+;  V09 tmp7         [V09,T04] (  5,  5   )     ref  ->  r13         class-hnd exact single-def "NewObj constructor temp" <System.Action`1[System.Object]>
+;  V10 tmp8         [V10,T10] (  3,  3   )     ref  ->  rsi         class-hnd exact single-def "Inlining Arg" <System.IO.TextWriter+<>c>
 ;* V11 tmp9         [V11    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.Threading.CancellationToken>
-;  V12 tmp10        [V12,T08] (  2,  4   )     ref  ->  rbx         class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.ThreadPoolTaskScheduler>
+;  V12 tmp10        [V12,T03] (  3,  6   )     ref  ->  rbx         class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.ThreadPoolTaskScheduler>
 ;* V13 tmp11        [V13    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline return value spill temp" <System.Threading.Tasks.Task>
 ;* V14 tmp12        [V14    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inline return value spill temp" <System.Threading.Tasks.Task>
 ;  V15 tmp13        [V15,T00] (  7, 11   )     ref  ->  r15         class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.Task>
 ;* V16 tmp14        [V16    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact single-def "Inline stloc first use temp" <System.Threading.Tasks.Task>
-;  V17 tmp15        [V17,T02] (  4,  6   )     ref  ->  rbx         class-hnd exact single-def "Inlining Arg" <System.Threading.ExecutionContext>
+;  V17 tmp15        [V17,T02] (  4,  6   )     ref  ->  r14         class-hnd exact single-def "Inlining Arg" <System.Threading.ExecutionContext>
 ;* V18 tmp16        [V18,T11] (  0,  0   )     ref  ->  zero-ref    single-def "field V08._source (fldOffset=0x0)" P-INDEP
 ;* V19 tmp17        [V19    ] (  0,  0   )     ref  ->  zero-ref    single-def "field V11._source (fldOffset=0x0)" P-INDEP
 ;* V20 cse0         [V20,T12] (  0,  0   )    long  ->  zero-ref    "CSE - moderate"
 ;
-; Lcl frame size = 16
+; Lcl frame size = 8
 
 G_M60754_IG01:
        push     rbp
        push     r15
        push     r14
        push     r13
+       push     r12
        push     rbx
-       sub      rsp, 16
+       push     rax
        lea      rbp, [rsp+0x30]
        mov      rbx, rdi
        mov      r15d, esi
-						;; size=23 bbWeight=1 PerfScore 6.25
+						;; size=22 bbWeight=1 PerfScore 8.00
 G_M60754_IG02:
+       mov      rdi, 0xD1FFAB1E      ; const ptr
+       mov      r14, gword ptr [rdi]
        mov      rdi, 0xD1FFAB1E      ; global ptr
        test     byte  ptr [rdi], 1
        je       G_M60754_IG10
-						;; size=19 bbWeight=1 PerfScore 4.25
+						;; size=32 bbWeight=1 PerfScore 6.50
 G_M60754_IG03:
        mov      rdi, 0xD1FFAB1E      ; data for System.IO.TextWriter+<>c:<>9__64_0
-       mov      r14, gword ptr [rdi]
-       test     r14, r14
+       mov      r13, gword ptr [rdi]
+       test     r13, r13
        jne      SHORT G_M60754_IG05
 						;; size=18 bbWeight=1 PerfScore 3.50
 G_M60754_IG04:
        mov      rdi, 0xD1FFAB1E      ; System.Action`1[System.Object]
        call     CORINFO_HELP_NEWSFAST
-       mov      r14, rax
+       mov      r13, rax
        mov      rdi, 0xD1FFAB1E      ; data for System.IO.TextWriter+<>c:<>9
        mov      rsi, gword ptr [rdi]
        test     rsi, rsi
        je       G_M60754_IG11
-       lea      rdi, bword ptr [r14+0x08]
+       lea      rdi, bword ptr [r13+0x08]
        call     CORINFO_HELP_ASSIGN_REF
        mov      rdi, 0xD1FFAB1E      ; code for System.IO.TextWriter+<>c:<WriteLineAsync>b__64_0(System.Object):this
-       mov      qword ptr [r14+0x18], rdi
+       mov      qword ptr [r13+0x18], rdi
        mov      rdi, 0xD1FFAB1E      ; data for System.IO.TextWriter+<>c:<>9__64_0
-       mov      rsi, r14
+       mov      rsi, r13
        call     CORINFO_HELP_ASSIGN_REF
 						;; size=81 bbWeight=0.50 PerfScore 4.62
 G_M60754_IG05:
        mov      rdi, 0xD1FFAB1E      ; System.TupleSlim`2[System.IO.TextWriter,ushort]
        call     CORINFO_HELP_NEWSFAST
-       mov      r13, rax
-       lea      rdi, bword ptr [r13+0x08]
+       mov      r12, rax
+       lea      rdi, bword ptr [r12+0x08]
        mov      rsi, rbx
        call     CORINFO_HELP_ASSIGN_REF
-       mov      word  ptr [r13+0x10], r15w
+       mov      word  ptr [r12+0x10], r15w
        mov      rdi, 0xD1FFAB1E      ; const ptr
        mov      rbx, gword ptr [rdi]
+       cmp      byte  ptr [r14], r14b
+       test     rbx, rbx
+       je       G_M60754_IG12
        mov      rdi, 0xD1FFAB1E      ; System.Threading.Tasks.Task
        call     CORINFO_HELP_NEWSFAST
        mov      r15, rax
-       test     r14, r14
-       je       G_M60754_IG12
+       test     r13, r13
+       je       G_M60754_IG13
        mov      gword ptr [rsp], rbx
        mov      rdi, r15
-       mov      rsi, r14
-       mov      rdx, r13
+       mov      rsi, r13
+       mov      rdx, r12
        xor      rcx, rcx
        mov      r8d, 8
        mov      r9d, 0x2000
        mov      rax, 0xD1FFAB1E      ; code for System.Threading.Tasks.Task:TaskConstructorCore(System.Delegate,System.Object,System.Threading.CancellationToken,int,int,System.Threading.Tasks.TaskScheduler):this
        call     [rax]System.Threading.Tasks.Task:TaskConstructorCore(System.Delegate,System.Object,System.Threading.CancellationToken,int,int,System.Threading.Tasks.TaskScheduler):this
        mov      rax, 0xD1FFAB1E      ; code for System.Threading.ExecutionContext:Capture():System.Threading.ExecutionContext
        call     [rax]System.Threading.ExecutionContext:Capture():System.Threading.ExecutionContext
-       mov      rbx, rax
-       test     rbx, rbx
+       mov      r14, rax
+       test     r14, r14
        jne      SHORT G_M60754_IG07
-						;; size=134 bbWeight=1 PerfScore 19.75
+						;; size=148 bbWeight=1 PerfScore 24.00
 G_M60754_IG06:
        or       dword ptr [r15+0x34], 0xD1FFAB1E
        jmp      SHORT G_M60754_IG08
 						;; size=10 bbWeight=0.50 PerfScore 2.50
 G_M60754_IG07:
        mov      rdi, 0xD1FFAB1E      ; const ptr
-       cmp      rbx, gword ptr [rdi]
+       cmp      r14, gword ptr [rdi]
        je       SHORT G_M60754_IG08
        mov      rdi, r15
        mov      rax, 0xD1FFAB1E      ; code for System.Threading.Tasks.Task:EnsureContingentPropertiesInitializedUnsafe():System.Threading.Tasks.Task+ContingentProperties:this
        call     [rax]System.Threading.Tasks.Task:EnsureContingentPropertiesInitializedUnsafe():System.Threading.Tasks.Task+ContingentProperties:this
        lea      rdi, bword ptr [rax+0x08]
-       mov      rsi, rbx
+       mov      rsi, r14
        call     CORINFO_HELP_ASSIGN_REF
 						;; size=42 bbWeight=0.50 PerfScore 4.75
 G_M60754_IG08:
        mov      rdi, r15
        xor      esi, esi
        mov      rax, 0xD1FFAB1E      ; code for System.Threading.Tasks.Task:ScheduleAndStart(ubyte):this
        call     [rax]System.Threading.Tasks.Task:ScheduleAndStart(ubyte):this
        mov      rax, r15
 						;; size=20 bbWeight=1 PerfScore 4.00
 G_M60754_IG09:
-       add      rsp, 16
+       add      rsp, 8
        pop      rbx
+       pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
-						;; size=13 bbWeight=1 PerfScore 3.75
+						;; size=15 bbWeight=1 PerfScore 4.25
 G_M60754_IG10:
        mov      rdi, 0xD1FFAB1E
        mov      esi, 0x7FF
        call     CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
        jmp      G_M60754_IG03
 						;; size=25 bbWeight=0 PerfScore 0.00
 G_M60754_IG11:
        mov      rax, 0xD1FFAB1E      ; code for System.MulticastDelegate:ThrowNullThisInDelegateToInstance()
        call     [rax]System.MulticastDelegate:ThrowNullThisInDelegateToInstance()
        int3     
 						;; size=13 bbWeight=0 PerfScore 0.00
 G_M60754_IG12:
+       mov      edi, 47
+       mov      rax, 0xD1FFAB1E      ; code for System.ThrowHelper:ThrowArgumentNullException(int)
+       call     [rax]System.ThrowHelper:ThrowArgumentNullException(int)
+       int3     
+						;; size=18 bbWeight=0 PerfScore 0.00
+G_M60754_IG13:
        mov      edi, 28
        mov      rax, 0xD1FFAB1E      ; code for System.ThrowHelper:ThrowArgumentNullException(int)
        call     [rax]System.ThrowHelper:ThrowArgumentNullException(int)
        int3     
 						;; size=18 bbWeight=0 PerfScore 0.00
 
-; Total bytes of code 416, prolog size 17, PerfScore 94.98, instruction count 92, allocated bytes for code 416 (MethodHash=716812ad) for method System.IO.TextWriter:WriteLineAsync(ushort):System.Threading.Tasks.Task:this (FullOpts)
+; Total bytes of code 462, prolog size 16, PerfScore 108.33, instruction count 103, allocated bytes for code 462 (MethodHash=716812ad) for method System.IO.TextWriter:WriteLineAsync(ushort):System.Threading.Tasks.Task:this (FullOpts)
45 (2.98 % of base) - System.Environment:ReadXdgDirectory(System.String,System.String,System.String):System.String
 ; Assembly listing for method System.Environment:ReadXdgDirectory(System.String,System.String,System.String):System.String (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; 58 single block inlinees; 33 inlinees without PGO data
 ; Final local variable assignments
 ;
 ;  V00 arg0         [V00,T24] (  5,  5   )     ref  ->  [rbp-0x38]  class-hnd EH-live single-def <System.String>
 ;  V01 arg1         [V01,T09] (  6, 39   )     ref  ->  rbx         class-hnd single-def <System.String>
-;  V02 arg2         [V02,T29] (  3,  3   )     ref  ->  [rbp-0x40]  class-hnd EH-live single-def <System.String>
-;  V03 loc0         [V03,T30] (  4,  4   )     ref  ->  rax         class-hnd exact single-def <System.String>
+;  V02 arg2         [V02,T30] (  3,  3   )     ref  ->  [rbp-0x40]  class-hnd EH-live single-def <System.String>
+;  V03 loc0         [V03,T31] (  4,  4   )     ref  ->  rax         class-hnd exact single-def <System.String>
 ;* V04 loc1         [V04    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact single-def <System.String>
 ;  V05 loc2         [V05,T15] (  6, 12   )     ref  ->  [rbp-0x48]  class-hnd exact EH-live spill-single-def <System.IO.StreamReader>
 ;  V06 loc3         [V06,T05] ( 13,181   )     ref  ->  r15         class-hnd exact <System.String>
 ;  V07 loc4         [V07,T00] ( 38,510   )     int  ->  r14         ld-addr-op
 ;  V08 loc5         [V08,T18] (  3,  9   )   ubyte  ->  r12        
 ;* V09 loc6         [V09    ] (  0,  0   )     int  ->  zero-ref   
 ;  V10 loc7         [V10,T36] (  3,  3   )     ref  ->  rax         class-hnd exact <System.String>
 ;  V11 loc8         [V11,T41] (  2,  2   )     ref  ->  [rbp-0x50]  do-not-enreg[Z] must-init class-hnd EH-live <System.String>
 ;* V12 loc9         [V12    ] (  0,  0   )     ref  ->  zero-ref    class-hnd <System.Exception>
 ;  V13 OutArgs      [V13    ] (  1,  1   )  struct (16) [rsp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
 ;  V14 tmp1         [V14,T25] (  3,  6   )     ref  ->  r14         class-hnd exact single-def "NewObj constructor temp" <System.IO.StreamReader>
 ;  V15 tmp2         [V15,T10] (  2, 32   )     ref  ->  r15         class-hnd exact "dup spill" <System.String>
 ;  V16 tmp3         [V16,T37] (  3,  3   )     ref  ->  rax        
 ;* V17 tmp4         [V17    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "impSpillSpecialSideEff" <System.Exception>
 ;* V18 tmp5         [V18    ] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
 ;  V19 tmp6         [V19,T16] (  5, 10   )     ref  ->  rax         class-hnd exact single-def "Inlining Arg" <System.String>
 ;  V20 tmp7         [V20,T23] (  8,  7   )     ref  ->  r15         class-hnd "Inline return value spill temp" <System.String>
 ;* V21 tmp8         [V21    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
 ;* V22 tmp9         [V22    ] (  0,  0   )  struct (16) zero-ref    multireg-arg "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
 ;* V23 tmp10        [V23    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
 ;* V24 tmp11        [V24    ] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
 ;* V25 tmp12        [V25    ] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
 ;* V26 tmp13        [V26    ] (  0,  0   )  struct (16) zero-ref    "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
 ;* V27 tmp14        [V27    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
 ;* V28 tmp15        [V28    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
 ;* V29 tmp16        [V29,T51] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
 ;* V30 tmp17        [V30    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
 ;* V31 tmp18        [V31    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
 ;* V32 tmp19        [V32    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
-;  V33 tmp20        [V33,T32] (  2,  4   )   byref  ->  rdi         single-def "Inlining Arg"
+;  V33 tmp20        [V33,T33] (  2,  4   )   byref  ->  rdi         single-def "Inlining Arg"
 ;  V34 tmp21        [V34,T35] (  2,  4   )     int  ->  rsi         "Inlining Arg"
 ;* V35 tmp22        [V35    ] (  0,  0   )  struct (16) zero-ref    "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
 ;* V36 tmp23        [V36    ] (  0,  0   )  struct (16) zero-ref    multireg-arg ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
 ;* V37 tmp24        [V37    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
 ;  V38 tmp25        [V38,T38] (  3,  3   )     ref  ->  r15         class-hnd "Inline return value spill temp" <System.String>
 ;* V39 tmp26        [V39    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
-;  V40 tmp27        [V40,T26] (  3,  6   )     int  ->  rdx         "Span.get_Item index"
+;  V40 tmp27        [V40,T27] (  3,  6   )     int  ->  rdx         "Span.get_Item index"
 ;* V41 tmp28        [V41,T46] (  0,  0   )     int  ->  zero-ref   
 ;* V42 tmp29        [V42    ] (  0,  0   )   ubyte  ->  zero-ref    "Inline stloc first use temp"
 ;* V43 tmp30        [V43    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
 ;* V44 tmp31        [V44    ] (  0,  0   )  struct (16) zero-ref    "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
 ;* V45 tmp32        [V45    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
 ;* V46 tmp33        [V46    ] (  0,  0   )  ushort  ->  zero-ref    "Inlining Arg"
 ;* V47 tmp34        [V47    ] (  0,  0   )  ushort  ->  zero-ref    "Inlining Arg"
 ;* V48 tmp35        [V48    ] (  0,  0   )  struct (16) zero-ref    "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
 ;* V49 tmp36        [V49    ] (  0,  0   )  struct (16) zero-ref    multireg-arg ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
 ;* V50 tmp37        [V50    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
-;  V51 tmp38        [V51,T33] (  2,  4   )     ref  ->  r13         class-hnd exact single-def "Inlining Arg" <System.Text.UTF8Encoding+UTF8EncodingSealed>
+;  V51 tmp38        [V51,T26] (  3,  6   )     ref  ->  r13         class-hnd exact single-def "Inlining Arg" <System.Text.UTF8Encoding+UTF8EncodingSealed>
 ;  V52 tmp39        [V52,T17] (  4,  8   )     ref  ->  r12         class-hnd exact single-def "NewObj constructor temp" <System.IO.FileStream>
 ;* V53 tmp40        [V53,T58] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
 ;* V54 tmp41        [V54    ] (  0,  0   )     ref  ->  zero-ref    single-def
 ;* V55 tmp42        [V55    ] (  0,  0   )     ref  ->  zero-ref    single-def
 ;* V56 tmp43        [V56    ] (  0,  0   )     int  ->  zero-ref   
 ;* V57 tmp44        [V57    ] (  0,  0   )     int  ->  zero-ref   
 ;* V58 tmp45        [V58    ] (  0,  0   )     int  ->  zero-ref   
 ;* V59 tmp46        [V59    ] (  0,  0   )     int  ->  zero-ref   
 ;* V60 tmp47        [V60,T49] (  0,  0   )     ref  ->  zero-ref    single-def
 ;* V61 tmp48        [V61    ] (  0,  0   )     ref  ->  zero-ref    single-def
 ;* V62 tmp49        [V62    ] (  0,  0   )     int  ->  zero-ref   
 ;* V63 tmp50        [V63    ] (  0,  0   )     int  ->  zero-ref   
 ;* V64 tmp51        [V64    ] (  0,  0   )     int  ->  zero-ref   
 ;* V65 tmp52        [V65    ] (  0,  0   )     int  ->  zero-ref   
 ;* V66 tmp53        [V66    ] (  0,  0   )     int  ->  zero-ref   
 ;* V67 tmp54        [V67    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.Nullable`1[int]>
 ;  V68 tmp55        [V68,T42] (  2,  2   )     ref  ->  rax         class-hnd single-def "Inline return value spill temp" <System.IO.Strategies.FileStreamStrategy>
 ;* V69 tmp56        [V69    ] (  0,  0   )  struct ( 8) zero-ref    "Inlining Arg" <System.Nullable`1[int]>
 ;* V70 tmp57        [V70    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline stloc first use temp" <System.IO.Strategies.FileStreamStrategy>
 ;  V71 tmp58        [V71,T19] (  3,  6   )     ref  ->  [rbp-0x58]  class-hnd exact spill-single-def "NewObj constructor temp" <System.IO.Strategies.UnixFileStreamStrategy>
 ;  V72 tmp59        [V72,T43] (  2,  2   )     ref  ->  rsi         class-hnd single-def "Inline return value spill temp" <System.IO.Strategies.FileStreamStrategy>
 ;  V73 tmp60        [V73,T20] (  4,  8   )     ref  ->  r15         class-hnd exact single-def "NewObj constructor temp" <System.IO.Strategies.BufferedFileStreamStrategy>
 ;  V74 tmp61        [V74,T06] (  2, 64   )   ubyte  ->  rax         "Inline return value spill temp"
 ;  V75 tmp62        [V75,T01] (  4,256   )  ushort  ->  rax         "Inlining Arg"
 ;* V76 tmp63        [V76    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline stloc first use temp" <System.ReadOnlySpan`1[ubyte]>
 ;* V77 tmp64        [V77    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ubyte]>
 ;* V78 tmp65        [V78    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline stloc first use temp" <System.ReadOnlySpan`1[ubyte]>
 ;* V79 tmp66        [V79    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ubyte]>
 ;  V80 tmp67        [V80,T07] (  2, 64   )   ubyte  ->  rax         "Inline return value spill temp"
 ;  V81 tmp68        [V81,T02] (  4,256   )  ushort  ->  rax         "Inlining Arg"
 ;* V82 tmp69        [V82    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline stloc first use temp" <System.ReadOnlySpan`1[ubyte]>
 ;* V83 tmp70        [V83    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ubyte]>
 ;* V84 tmp71        [V84    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline stloc first use temp" <System.ReadOnlySpan`1[ubyte]>
 ;* V85 tmp72        [V85    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ubyte]>
 ;  V86 tmp73        [V86,T08] (  2, 64   )   ubyte  ->  rax         "Inline return value spill temp"
 ;  V87 tmp74        [V87,T03] (  4,256   )  ushort  ->  rax         "Inlining Arg"
 ;* V88 tmp75        [V88    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline stloc first use temp" <System.ReadOnlySpan`1[ubyte]>
 ;* V89 tmp76        [V89    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ubyte]>
 ;* V90 tmp77        [V90    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline stloc first use temp" <System.ReadOnlySpan`1[ubyte]>
 ;* V91 tmp78        [V91    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ubyte]>
 ;* V92 tmp79        [V92    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
 ;  V93 tmp80        [V93,T14] (  4, 13   )     int  ->  rdx         "Inline return value spill temp"
 ;  V94 tmp81        [V94,T13] (  2, 16   )     int  ->  rdx         "Inlining Arg"
 ;* V95 tmp82        [V95    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;  V96 tmp83        [V96,T12] (  2, 16   )   byref  ->  rdi         "Inlining Arg"
 ;  V97 tmp84        [V97,T11] (  4, 16   )     int  ->  rax         "Inline return value spill temp"
 ;* V98 tmp85        [V98,T22] (  0,  0   )   short  ->  zero-ref    ld-addr-op "Inlining Arg"
 ;* V99 tmp86        [V99    ] (  0,  0   )   short  ->  zero-ref    ld-addr-op "Inlining Arg"
 ;* V100 tmp87       [V100    ] (  0,  0   )  ushort  ->  zero-ref    "Inlining Arg"
 ;* V101 tmp88       [V101    ] (  0,  0   )   byref  ->  zero-ref    "field V21._reference (fldOffset=0x0)" P-INDEP
 ;* V102 tmp89       [V102    ] (  0,  0   )     int  ->  zero-ref    "field V21._length (fldOffset=0x8)" P-INDEP
-;  V103 tmp90       [V103,T31] (  4,  4   )   byref  ->  rdi         "field V22._reference (fldOffset=0x0)" P-INDEP
-;  V104 tmp91       [V104,T28] (  5,  5   )     int  ->  rsi         "field V22._length (fldOffset=0x8)" P-INDEP
+;  V103 tmp90       [V103,T32] (  4,  4   )   byref  ->  rdi         "field V22._reference (fldOffset=0x0)" P-INDEP
+;  V104 tmp91       [V104,T29] (  5,  5   )     int  ->  rsi         "field V22._length (fldOffset=0x8)" P-INDEP
 ;* V105 tmp92       [V105    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V23._reference (fldOffset=0x0)" P-INDEP
 ;* V106 tmp93       [V106    ] (  0,  0   )     int  ->  zero-ref    "field V23._length (fldOffset=0x8)" P-INDEP
 ;* V107 tmp94       [V107    ] (  0,  0   )   byref  ->  zero-ref    "field V26._reference (fldOffset=0x0)" P-INDEP
 ;* V108 tmp95       [V108    ] (  0,  0   )     int  ->  zero-ref    "field V26._length (fldOffset=0x8)" P-INDEP
 ;* V109 tmp96       [V109,T50] (  0,  0   )   byref  ->  zero-ref    single-def "field V27._reference (fldOffset=0x0)" P-INDEP
 ;* V110 tmp97       [V110    ] (  0,  0   )     int  ->  zero-ref    "field V27._length (fldOffset=0x8)" P-INDEP
 ;* V111 tmp98       [V111    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V30._reference (fldOffset=0x0)" P-INDEP
 ;* V112 tmp99       [V112    ] (  0,  0   )     int  ->  zero-ref    "field V30._length (fldOffset=0x8)" P-INDEP
 ;  V113 tmp100      [V113,T44] (  2,  2   )   byref  ->  rdi         single-def "field V31._reference (fldOffset=0x0)" P-INDEP
 ;  V114 tmp101      [V114,T47] (  2,  2   )     int  ->  rsi         "field V31._length (fldOffset=0x8)" P-INDEP
 ;* V115 tmp102      [V115    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V32._reference (fldOffset=0x0)" P-INDEP
 ;* V116 tmp103      [V116    ] (  0,  0   )     int  ->  zero-ref    "field V32._length (fldOffset=0x8)" P-INDEP
 ;* V117 tmp104      [V117    ] (  0,  0   )   byref  ->  zero-ref    "field V35._reference (fldOffset=0x0)" P-INDEP
 ;* V118 tmp105      [V118    ] (  0,  0   )     int  ->  zero-ref    "field V35._length (fldOffset=0x8)" P-INDEP
 ;  V119 tmp106      [V119,T39] (  3,  3   )   byref  ->   r8         single-def "field V36._reference (fldOffset=0x0)" P-INDEP
 ;* V120 tmp107      [V120,T52] (  0,  0   )     int  ->  zero-ref    "field V36._length (fldOffset=0x8)" P-INDEP
 ;* V121 tmp108      [V121    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V39._reference (fldOffset=0x0)" P-INDEP
 ;* V122 tmp109      [V122    ] (  0,  0   )     int  ->  zero-ref    "field V39._length (fldOffset=0x8)" P-INDEP
 ;* V123 tmp110      [V123    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V43._reference (fldOffset=0x0)" P-INDEP
 ;* V124 tmp111      [V124    ] (  0,  0   )     int  ->  zero-ref    "field V43._length (fldOffset=0x8)" P-INDEP
 ;* V125 tmp112      [V125    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V44._reference (fldOffset=0x0)" P-INDEP
 ;* V126 tmp113      [V126    ] (  0,  0   )     int  ->  zero-ref    "field V44._length (fldOffset=0x8)" P-INDEP
 ;* V127 tmp114      [V127    ] (  0,  0   )   byref  ->  zero-ref    "field V45._reference (fldOffset=0x0)" P-INDEP
 ;* V128 tmp115      [V128    ] (  0,  0   )     int  ->  zero-ref    "field V45._length (fldOffset=0x8)" P-INDEP
 ;* V129 tmp116      [V129    ] (  0,  0   )   byref  ->  zero-ref    "field V48._reference (fldOffset=0x0)" P-INDEP
 ;* V130 tmp117      [V130    ] (  0,  0   )     int  ->  zero-ref    "field V48._length (fldOffset=0x8)" P-INDEP
 ;  V131 tmp118      [V131,T45] (  2,  2   )   byref  ->  rdx         single-def "field V49._reference (fldOffset=0x0)" P-INDEP
 ;* V132 tmp119      [V132,T53] (  0,  0   )     int  ->  zero-ref    "field V49._length (fldOffset=0x8)" P-INDEP
 ;* V133 tmp120      [V133    ] (  0,  0   )   ubyte  ->  zero-ref    "field V67.hasValue (fldOffset=0x0)" P-INDEP
 ;* V134 tmp121      [V134    ] (  0,  0   )     int  ->  zero-ref    "field V67.value (fldOffset=0x4)" P-INDEP
 ;* V135 tmp122      [V135,T54] (  0,  0   )   ubyte  ->  zero-ref    "field V69.hasValue (fldOffset=0x0)" P-INDEP
 ;* V136 tmp123      [V136,T55] (  0,  0   )     int  ->  zero-ref    "field V69.value (fldOffset=0x4)" P-INDEP
 ;* V137 tmp124      [V137    ] (  0,  0   )   byref  ->  zero-ref    "field V76._reference (fldOffset=0x0)" P-INDEP
 ;* V138 tmp125      [V138    ] (  0,  0   )     int  ->  zero-ref    "field V76._length (fldOffset=0x8)" P-INDEP
 ;* V139 tmp126      [V139    ] (  0,  0   )   byref  ->  zero-ref    "field V77._reference (fldOffset=0x0)" P-INDEP
 ;* V140 tmp127      [V140    ] (  0,  0   )     int  ->  zero-ref    "field V77._length (fldOffset=0x8)" P-INDEP
 ;* V141 tmp128      [V141    ] (  0,  0   )   byref  ->  zero-ref    "field V78._reference (fldOffset=0x0)" P-INDEP
 ;* V142 tmp129      [V142    ] (  0,  0   )     int  ->  zero-ref    "field V78._length (fldOffset=0x8)" P-INDEP
 ;* V143 tmp130      [V143    ] (  0,  0   )   byref  ->  zero-ref    "field V79._reference (fldOffset=0x0)" P-INDEP
 ;* V144 tmp131      [V144    ] (  0,  0   )     int  ->  zero-ref    "field V79._length (fldOffset=0x8)" P-INDEP
 ;* V145 tmp132      [V145    ] (  0,  0   )   byref  ->  zero-ref    "field V82._reference (fldOffset=0x0)" P-INDEP
 ;* V146 tmp133      [V146    ] (  0,  0   )     int  ->  zero-ref    "field V82._length (fldOffset=0x8)" P-INDEP
 ;* V147 tmp134      [V147    ] (  0,  0   )   byref  ->  zero-ref    "field V83._reference (fldOffset=0x0)" P-INDEP
 ;* V148 tmp135      [V148    ] (  0,  0   )     int  ->  zero-ref    "field V83._length (fldOffset=0x8)" P-INDEP
 ;* V149 tmp136      [V149    ] (  0,  0   )   byref  ->  zero-ref    "field V84._reference (fldOffset=0x0)" P-INDEP
 ;* V150 tmp137      [V150    ] (  0,  0   )     int  ->  zero-ref    "field V84._length (fldOffset=0x8)" P-INDEP
 ;* V151 tmp138      [V151    ] (  0,  0   )   byref  ->  zero-ref    "field V85._reference (fldOffset=0x0)" P-INDEP
 ;* V152 tmp139      [V152    ] (  0,  0   )     int  ->  zero-ref    "field V85._length (fldOffset=0x8)" P-INDEP
 ;* V153 tmp140      [V153    ] (  0,  0   )   byref  ->  zero-ref    "field V88._reference (fldOffset=0x0)" P-INDEP
 ;* V154 tmp141      [V154    ] (  0,  0   )     int  ->  zero-ref    "field V88._length (fldOffset=0x8)" P-INDEP
 ;* V155 tmp142      [V155    ] (  0,  0   )   byref  ->  zero-ref    "field V89._reference (fldOffset=0x0)" P-INDEP
 ;* V156 tmp143      [V156    ] (  0,  0   )     int  ->  zero-ref    "field V89._length (fldOffset=0x8)" P-INDEP
 ;* V157 tmp144      [V157    ] (  0,  0   )   byref  ->  zero-ref    "field V90._reference (fldOffset=0x0)" P-INDEP
 ;* V158 tmp145      [V158    ] (  0,  0   )     int  ->  zero-ref    "field V90._length (fldOffset=0x8)" P-INDEP
 ;* V159 tmp146      [V159    ] (  0,  0   )   byref  ->  zero-ref    "field V91._reference (fldOffset=0x0)" P-INDEP
 ;* V160 tmp147      [V160    ] (  0,  0   )     int  ->  zero-ref    "field V91._length (fldOffset=0x8)" P-INDEP
 ;  V161 tmp148      [V161,T57] (  2,  0   )     ref  ->  rsi         single-def "argument with side effect"
-;  V162 tmp149      [V162,T27] (  3,  6   )  struct ( 8) [rbp-0x30]  do-not-enreg[SF] "by-value struct argument" <System.Nullable`1[int]>
+;  V162 tmp149      [V162,T28] (  3,  6   )  struct ( 8) [rbp-0x30]  do-not-enreg[SF] "by-value struct argument" <System.Nullable`1[int]>
 ;* V163 tmp150      [V163,T48] (  0,  0   )     ref  ->  zero-ref    single-def "argument with side effect"
 ;  V164 tmp151      [V164,T34] (  2,  4   )     ref  ->  rsi         single-def "argument with side effect"
 ;  V165 PSPSym      [V165,T56] (  1,  1   )    long  ->  [rbp-0x60]  do-not-enreg[V] "PSPSym"
 ;  V166 cse0        [V166,T21] (  2,  8   )     int  ->  rdx         "CSE - conservative"
 ;  V167 cse1        [V167,T40] (  2,  2   )   byref  ->   r8         "CSE - conservative"
 ;  V168 cse2        [V168,T04] ( 13,244   )     int  ->  r13         "CSE - aggressive"
 ;
 ; Lcl frame size = 72
 
 G_M35333_IG01:
        push     rbp
        push     r15
        push     r14
        push     r13
        push     r12
        push     rbx
        sub      rsp, 72
        lea      rbp, [rsp+0x70]
        xor      eax, eax
        mov      qword ptr [rbp-0x50], rax
        mov      qword ptr [rbp-0x60], rsp
        mov      gword ptr [rbp-0x38], rdi
        mov      gword ptr [rbp-0x40], rdx
        mov      rbx, rsi
 						;; size=40 bbWeight=1 PerfScore 11.25
 G_M35333_IG02:
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.Environment:GetEnvironmentVariable(System.String):System.String
        call     [rax]System.Environment:GetEnvironmentVariable(System.String):System.String
        test     rax, rax
        je       SHORT G_M35333_IG04
        cmp      word  ptr [rax+0x0C], 47
        jne      SHORT G_M35333_IG04
 						;; size=27 bbWeight=1 PerfScore 8.75
 G_M35333_IG03:
        add      rsp, 72
        pop      rbx
        pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
 						;; size=15 bbWeight=1 PerfScore 4.25
 G_M35333_IG04:
        mov      rdi, gword ptr [rbp-0x38]
        mov      rax, 0xD1FFAB1E      ; code for System.Environment:GetXdgConfig(System.String):System.String
        call     [rax]System.Environment:GetXdgConfig(System.String):System.String
        test     rax, rax
-       je       G_M35333_IG49
+       je       G_M35333_IG50
        cmp      dword ptr [rax+0x08], 0
        jne      SHORT G_M35333_IG05
        mov      r15, 0xD1FFAB1E      ; 'user-dirs.dirs'
 
        jmp      SHORT G_M35333_IG07
 						;; size=43 bbWeight=1 PerfScore 11.75
 G_M35333_IG05:
        mov      r8, 0xD1FFAB1E
        lea      rdi, bword ptr [rax+0x0C]
        mov      esi, dword ptr [rax+0x08]
        lea      edx, [rsi-0x01]
        cmp      edx, esi
-       jae      G_M35333_IG48
+       jae      G_M35333_IG49
        cmp      word  ptr [rdi+2*rdx], 47
        je       SHORT G_M35333_IG06
        mov      rdx, 0xD1FFAB1E
        mov      ecx, 1
        mov      r9d, 14
        mov      rax, 0xD1FFAB1E      ; code for System.String:Concat(System.ReadOnlySpan`1[ushort],System.ReadOnlySpan`1[ushort],System.ReadOnlySpan`1[ushort]):System.String
        call     [rax]System.String:Concat(System.ReadOnlySpan`1[ushort],System.ReadOnlySpan`1[ushort],System.ReadOnlySpan`1[ushort]):System.String
        mov      r15, rax
        jmp      SHORT G_M35333_IG07
 						;; size=73 bbWeight=1 PerfScore 14.75
 G_M35333_IG06:
        mov      rdx, r8
        mov      ecx, 14
        mov      rax, 0xD1FFAB1E      ; code for System.String:Concat(System.ReadOnlySpan`1[ushort],System.ReadOnlySpan`1[ushort]):System.String
        call     [rax]System.String:Concat(System.ReadOnlySpan`1[ushort],System.ReadOnlySpan`1[ushort]):System.String
        mov      r15, rax
 						;; size=23 bbWeight=1 PerfScore 4.00
 G_M35333_IG07:
        mov      rdi, r15
        mov      esi, 4
        mov      rax, 0xD1FFAB1E      ; code for Interop+Sys:Access(System.String,int):int
        call     [rax]Interop+Sys:Access(System.String,int):int
        test     eax, eax
-       jne      G_M35333_IG44
+       jne      G_M35333_IG45
 						;; size=28 bbWeight=1 PerfScore 5.00
 G_M35333_IG08:
        mov      rdi, 0xD1FFAB1E      ; System.IO.StreamReader
        call     CORINFO_HELP_NEWSFAST
        mov      r14, rax
        mov      rdi, 0xD1FFAB1E      ; const ptr
        mov      r13, gword ptr [rdi]
        test     r15, r15
        je       G_M35333_IG43
        cmp      dword ptr [r15+0x08], 0
        je       G_M35333_IG43
+       test     r13, r13
+       je       G_M35333_IG44
        mov      rdi, 0xD1FFAB1E      ; System.IO.FileStream
        call     CORINFO_HELP_NEWFAST
        mov      r12, rax
        xor      edi, edi
        mov      qword ptr [rsp], rdi
        mov      rdi, r15
        mov      esi, 3
        mov      edx, 1
        mov      ecx, 1
        mov      r8d, 0x1000
        xor      r9d, r9d
        mov      rax, 0xD1FFAB1E      ; code for System.IO.Strategies.FileStreamHelpers:ValidateArguments(System.String,int,int,int,int,int,long)
        call     [rax]System.IO.Strategies.FileStreamHelpers:ValidateArguments(System.String,int,int,int,int,int,long)
        mov      rdi, 0xD1FFAB1E      ; System.IO.Strategies.UnixFileStreamStrategy
        call     CORINFO_HELP_NEWSFAST
        mov      gword ptr [rbp-0x58], rax
        mov      rsi, r15
        xor      edi, edi
        mov      qword ptr [rsp], rdi
        mov      byte  ptr [rbp-0x30], 0
-						;; size=146 bbWeight=1 PerfScore 21.25
+						;; size=155 bbWeight=1 PerfScore 22.50
 G_M35333_IG09:
        mov      dword ptr [rbp-0x2C], edi
        mov      rdi, rax
        mov      rdx, qword ptr [rbp-0x30]
        mov      qword ptr [rsp+0x08], rdx
        mov      edx, 3
        mov      ecx, 1
        mov      r8d, 1
        xor      r9d, r9d
        mov      r10, 0xD1FFAB1E      ; code for System.IO.Strategies.OSFileStreamStrategy:.ctor(System.String,int,int,int,int,long,System.Nullable`1[int]):this
        call     [r10]System.IO.Strategies.OSFileStreamStrategy:.ctor(System.String,int,int,int,int,long,System.Nullable`1[int]):this
        mov      rdi, 0xD1FFAB1E      ; System.IO.Strategies.BufferedFileStreamStrategy
        call     CORINFO_HELP_NEWSFAST
        mov      r15, rax
        lea      rdi, bword ptr [r15+0x18]
        mov      rsi, gword ptr [rbp-0x58]
        call     CORINFO_HELP_ASSIGN_REF
        mov      dword ptr [r15+0x28], 0x1000
        mov      rsi, r15
        mov      rdi, r12
        mov      rax, 0xD1FFAB1E      ; code for System.IO.Strategies.FileStreamHelpers:WrapIfDerivedType(System.IO.FileStream,System.IO.Strategies.FileStreamStrategy):System.IO.Strategies.FileStreamStrategy
        call     [rax]System.IO.Strategies.FileStreamHelpers:WrapIfDerivedType(System.IO.FileStream,System.IO.Strategies.FileStreamStrategy):System.IO.Strategies.FileStreamStrategy
        lea      rdi, bword ptr [r12+0x10]
        mov      rsi, rax
        call     CORINFO_HELP_ASSIGN_REF
        mov      rdi, r14
        mov      rsi, r12
        mov      rdx, r13
        mov      ecx, 1
        mov      r8d, 0x400
        xor      r9d, r9d
        mov      rax, 0xD1FFAB1E      ; code for System.IO.StreamReader:.ctor(System.IO.Stream,System.Text.Encoding,ubyte,int,ubyte):this
        call     [rax]System.IO.StreamReader:.ctor(System.IO.Stream,System.Text.Encoding,ubyte,int,ubyte):this
        mov      rdi, r14
        mov      gword ptr [rbp-0x48], rdi
 						;; size=159 bbWeight=1 PerfScore 24.00
 G_M35333_IG10:
        jmp      G_M35333_IG24
 						;; size=5 bbWeight=1 PerfScore 2.00
 G_M35333_IG11:
        xor      r14d, r14d
        jmp      SHORT G_M35333_IG13
 						;; size=5 bbWeight=4 PerfScore 9.00
 G_M35333_IG12:
        inc      r14d
 						;; size=3 bbWeight=16 PerfScore 4.00
 G_M35333_IG13:
        mov      r13d, dword ptr [r15+0x08]
        cmp      r13d, r14d
        mov      rdi, gword ptr [rbp-0x48]
        jle      G_M35333_IG24
        mov      r8d, r14d
        movzx    rax, word  ptr [r15+2*r8+0x0C]
        cmp      eax, 256
        jae      G_M35333_IG28
        mov      r8d, eax
        mov      rsi, 0xD1FFAB1E      ; static handle
        test     byte  ptr [r8+rsi], 128
        jne      SHORT G_M35333_IG12
 						;; size=57 bbWeight=32 PerfScore 392.00
 G_M35333_IG14:
        mov      r8d, dword ptr [rbx+0x08]
        mov      rdi, r15
        mov      esi, r14d
        mov      rdx, rbx
        xor      ecx, ecx
        mov      rax, 0xD1FFAB1E      ; code for System.String:CompareOrdinal(System.String,int,System.String,int,int):int
        call     [rax]System.String:CompareOrdinal(System.String,int,System.String,int,int):int
        test     eax, eax
        mov      rdi, gword ptr [rbp-0x48]
        jne      G_M35333_IG24
 						;; size=39 bbWeight=16 PerfScore 136.00
 G_M35333_IG15:
        add      r14d, dword ptr [rbx+0x08]
 						;; size=4 bbWeight=4 PerfScore 12.00
 G_M35333_IG16:
        cmp      r13d, r14d
        jle      SHORT G_M35333_IG17
        cmp      r14d, r13d
        jae      G_M35333_IG27
        mov      eax, r14d
        movzx    rax, word  ptr [r15+2*rax+0x0C]
        cmp      eax, 256
        jae      G_M35333_IG31
        mov      rcx, 0xD1FFAB1E      ; static handle
        test     byte  ptr [rax+rcx], 128
        jne      G_M35333_IG30
 						;; size=54 bbWeight=32 PerfScore 328.00
 G_M35333_IG17:
        lea      eax, [r13-0x04]
        cmp      eax, r14d
        jle      G_M35333_IG24
 						;; size=13 bbWeight=16 PerfScore 28.00
 G_M35333_IG18:
        cmp      r14d, r13d
        jae      G_M35333_IG27
        mov      eax, r14d
        cmp      word  ptr [r15+2*rax+0x0C], 61
        jne      G_M35333_IG24
 						;; size=25 bbWeight=4 PerfScore 22.00
 G_M35333_IG19:
        inc      r14d
        cmp      r13d, r14d
        jle      SHORT G_M35333_IG20
        cmp      r14d, r13d
        jae      G_M35333_IG27
        mov      eax, r14d
        movzx    rax, word  ptr [r15+2*rax+0x0C]
        cmp      eax, 256
        jae      G_M35333_IG33
        mov      rcx, 0xD1FFAB1E      ; static handle
        test     byte  ptr [rax+rcx], 128
        jne      SHORT G_M35333_IG19
 						;; size=53 bbWeight=32 PerfScore 336.00
 G_M35333_IG20:
        lea      eax, [r13-0x03]
        cmp      eax, r14d
        jle      G_M35333_IG24
 						;; size=13 bbWeight=16 PerfScore 28.00
 G_M35333_IG21:
        cmp      r14d, r13d
        jae      G_M35333_IG27
        mov      esi, r14d
        cmp      word  ptr [r15+2*rsi+0x0C], 34
        jne      SHORT G_M35333_IG24
        inc      r14d
        xor      r12d, r12d
        mov      rdi, r15
        mov      esi, r14d
        mov      rdx, 0xD1FFAB1E      ; '$HOME/'
 
        xor      ecx, ecx
        mov      r8d, 6
        mov      rax, 0xD1FFAB1E      ; code for System.String:CompareOrdinal(System.String,int,System.String,int,int):int
        call     [rax]System.String:CompareOrdinal(System.String,int,System.String,int,int):int
        test     eax, eax
        jne      G_M35333_IG35
        mov      r12d, 1
        add      r14d, 6
 						;; size=81 bbWeight=4 PerfScore 49.00
 G_M35333_IG22:
        mov      edx, r13d
        sub      edx, r14d
        cmp      r13d, r14d
        jb       SHORT G_M35333_IG26
        movsxd   rsi, r14d
        lea      rdi, bword ptr [r15+2*rsi+0x0C]
        mov      esi, 34
        mov      rax, 0xD1FFAB1E      ; code for System.PackedSpanHelpers:IndexOf[System.SpanHelpers+DontNegate`1[short]](byref,short,int):int
        call     [rax]System.PackedSpanHelpers:IndexOf[System.SpanHelpers+DontNegate`1[short]](byref,short,int):int
        test     eax, eax
        jl       G_M35333_IG36
        add      eax, r14d
        mov      edx, eax
 						;; size=49 bbWeight=4 PerfScore 33.00
 G_M35333_IG23:
        cmp      edx, r14d
        jg       G_M35333_IG37
 						;; size=9 bbWeight=4 PerfScore 5.00
 G_M35333_IG24:
        mov      rdi, gword ptr [rbp-0x48]
        mov      rax, 0xD1FFAB1E      ; code for System.IO.StreamReader:ReadLine():System.String:this
        call     [rax]System.IO.StreamReader:ReadLine():System.String:this
        mov      r15, rax
        test     r15, r15
        jne      G_M35333_IG11
 						;; size=28 bbWeight=8 PerfScore 46.00
 G_M35333_IG25:
        jmp      G_M35333_IG40
 						;; size=5 bbWeight=1 PerfScore 2.00
 G_M35333_IG26:
        mov      edi, 8
        xor      esi, esi
        mov      rax, 0xD1FFAB1E      ; code for System.ThrowHelper:ThrowArgumentOutOfRangeException(int,int)
        call     [rax]System.ThrowHelper:ThrowArgumentOutOfRangeException(int,int)
        int3     
 						;; size=20 bbWeight=0 PerfScore 0.00
 G_M35333_IG27:
        call     CORINFO_HELP_RNGCHKFAIL
 						;; size=5 bbWeight=0 PerfScore 0.00
 G_M35333_IG28:
        mov      edi, eax
        mov      rax, 0xD1FFAB1E      ; code for System.Globalization.CharUnicodeInfo:GetIsWhiteSpace(ushort):ubyte
        call     [rax]System.Globalization.CharUnicodeInfo:GetIsWhiteSpace(ushort):ubyte
        test     eax, eax
        mov      rdi, gword ptr [rbp-0x48]
        jne      G_M35333_IG12
 						;; size=26 bbWeight=32 PerfScore 184.00
 G_M35333_IG29:
        jmp      G_M35333_IG14
 						;; size=5 bbWeight=4 PerfScore 8.00
 G_M35333_IG30:
        inc      r14d
        jmp      G_M35333_IG16
 						;; size=8 bbWeight=16 PerfScore 36.00
 G_M35333_IG31:
        mov      edi, eax
        mov      rax, 0xD1FFAB1E      ; code for System.Globalization.CharUnicodeInfo:GetIsWhiteSpace(ushort):ubyte
        call     [rax]System.Globalization.CharUnicodeInfo:GetIsWhiteSpace(ushort):ubyte
        test     eax, eax
        mov      rdi, gword ptr [rbp-0x48]
        jne      SHORT G_M35333_IG30
 						;; size=22 bbWeight=32 PerfScore 184.00
 G_M35333_IG32:
        jmp      G_M35333_IG17
 						;; size=5 bbWeight=4 PerfScore 8.00
 G_M35333_IG33:
        mov      edi, eax
        mov      rax, 0xD1FFAB1E      ; code for System.Globalization.CharUnicodeInfo:GetIsWhiteSpace(ushort):ubyte
        call     [rax]System.Globalization.CharUnicodeInfo:GetIsWhiteSpace(ushort):ubyte
        test     eax, eax
        mov      rdi, gword ptr [rbp-0x48]
        jne      G_M35333_IG19
 						;; size=26 bbWeight=32 PerfScore 184.00
 G_M35333_IG34:
        jmp      G_M35333_IG20
 						;; size=5 bbWeight=4 PerfScore 8.00
 G_M35333_IG35:
        cmp      r14d, r13d
        jae      SHORT G_M35333_IG27
        mov      esi, r14d
        cmp      word  ptr [r15+2*rsi+0x0C], 47
        jne      G_M35333_IG24
        mov      rdi, gword ptr [rbp-0x48]
        jmp      G_M35333_IG22
 						;; size=30 bbWeight=4 PerfScore 34.00
 G_M35333_IG36:
        mov      edx, eax
        jmp      G_M35333_IG23
 						;; size=7 bbWeight=4 PerfScore 9.00
 G_M35333_IG37:
        sub      edx, r14d
        mov      rdi, r15
        mov      esi, r14d
        mov      rax, 0xD1FFAB1E      ; code for System.String:Substring(int,int):System.String:this
        call     [rax]System.String:Substring(int,int):System.String:this
        test     r12d, r12d
        jne      SHORT G_M35333_IG38
        jmp      SHORT G_M35333_IG39
 						;; size=28 bbWeight=1 PerfScore 7.25
 G_M35333_IG38:
        mov      rdi, gword ptr [rbp-0x38]
        mov      rsi, rax
        mov      rax, 0xD1FFAB1E      ; code for System.IO.Path:Combine(System.String,System.String):System.String
        call     [rax]System.IO.Path:Combine(System.String,System.String):System.String
 						;; size=19 bbWeight=1 PerfScore 4.50
 G_M35333_IG39:
        mov      gword ptr [rbp-0x50], rax
        jmp      SHORT G_M35333_IG41
 						;; size=6 bbWeight=1 PerfScore 3.00
 G_M35333_IG40:
        mov      rdi, gword ptr [rbp-0x48]
        mov      esi, 1
        mov      rax, 0xD1FFAB1E      ; code for System.IO.StreamReader:Dispose(ubyte):this
        call     [rax]System.IO.StreamReader:Dispose(ubyte):this
        mov      rdi, gword ptr [rbp-0x48]
        call     System.GC:_SuppressFinalize(System.Object)
-       jmp      SHORT G_M35333_IG44
+       jmp      SHORT G_M35333_IG45
 						;; size=32 bbWeight=1 PerfScore 8.50
 G_M35333_IG41:
        mov      rdi, rsp
-       call     G_M35333_IG50
+       call     G_M35333_IG51
 						;; size=8 bbWeight=1 PerfScore 1.25
 G_M35333_IG42:
-       jmp      SHORT G_M35333_IG46
+       jmp      SHORT G_M35333_IG47
 						;; size=2 bbWeight=1 PerfScore 2.00
 G_M35333_IG43:
        mov      edi, 0x18FD3
        mov      rsi, 0xD1FFAB1E
        call     CORINFO_HELP_STRCNS
        mov      rsi, rax
        mov      rdi, r15
        mov      rax, 0xD1FFAB1E      ; code for System.ArgumentException:ThrowNullOrEmptyException(System.String,System.String)
        call     [rax]System.ArgumentException:ThrowNullOrEmptyException(System.String,System.String)
        int3     
 						;; size=39 bbWeight=0 PerfScore 0.00
 G_M35333_IG44:
+       mov      edi, 0x1A695
+       mov      rsi, 0xD1FFAB1E
+       call     CORINFO_HELP_STRCNS
+       mov      rdi, rax
+       mov      rax, 0xD1FFAB1E      ; code for System.ArgumentNullException:Throw(System.String)
+       call     [rax]System.ArgumentNullException:Throw(System.String)
+       int3     
+						;; size=36 bbWeight=0 PerfScore 0.00
+G_M35333_IG45:
        mov      rdi, gword ptr [rbp-0x38]
        mov      rsi, gword ptr [rbp-0x40]
        mov      rax, 0xD1FFAB1E      ; code for System.IO.Path:Combine(System.String,System.String):System.String
        call     [rax]System.IO.Path:Combine(System.String,System.String):System.String
        nop      
 						;; size=21 bbWeight=1 PerfScore 5.50
-G_M35333_IG45:
+G_M35333_IG46:
        add      rsp, 72
        pop      rbx
        pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
 						;; size=15 bbWeight=1 PerfScore 4.25
-G_M35333_IG46:
+G_M35333_IG47:
        mov      rax, gword ptr [rbp-0x50]
 						;; size=4 bbWeight=1 PerfScore 1.00
-G_M35333_IG47:
+G_M35333_IG48:
        add      rsp, 72
        pop      rbx
        pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
 						;; size=15 bbWeight=1 PerfScore 4.25
-G_M35333_IG48:
+G_M35333_IG49:
        call     CORINFO_HELP_RNGCHKFAIL
 						;; size=5 bbWeight=0 PerfScore 0.00
-G_M35333_IG49:
+G_M35333_IG50:
        mov      edi, 0x1A851
        mov      rsi, 0xD1FFAB1E
        call     CORINFO_HELP_STRCNS
        mov      rdi, rax
        mov      rax, 0xD1FFAB1E      ; code for System.ArgumentNullException:Throw(System.String)
        call     [rax]System.ArgumentNullException:Throw(System.String)
        int3     
 						;; size=36 bbWeight=0 PerfScore 0.00
-G_M35333_IG50:
+G_M35333_IG51:
        push     rbp
        push     r15
        push     r14
        push     r13
        push     r12
        push     rbx
        sub      rsp, 24
        mov      rbp, qword ptr [rdi+0x10]
        mov      qword ptr [rsp+0x10], rbp
        lea      rbp, [rbp+0x70]
 						;; size=27 bbWeight=1 PerfScore 9.75
-G_M35333_IG51:
+G_M35333_IG52:
        mov      rdi, gword ptr [rbp-0x48]
        mov      esi, 1
        mov      rax, 0xD1FFAB1E      ; code for System.IO.StreamReader:Dispose(ubyte):this
        call     [rax]System.IO.StreamReader:Dispose(ubyte):this
        mov      rdi, gword ptr [rbp-0x48]
        call     System.GC:_SuppressFinalize(System.Object)
        nop      
 						;; size=31 bbWeight=1 PerfScore 6.75
-G_M35333_IG52:
+G_M35333_IG53:
        add      rsp, 24
        pop      rbx
        pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
 						;; size=15 bbWeight=1 PerfScore 4.25
-G_M35333_IG53:
+G_M35333_IG54:
        push     rbp
        push     r15
        push     r14
        push     r13
        push     r12
        push     rbx
        sub      rsp, 24
        mov      rbp, qword ptr [rdi+0x10]
        mov      qword ptr [rsp+0x10], rbp
        lea      rbp, [rbp+0x70]
 						;; size=27 bbWeight=0 PerfScore 0.00
-G_M35333_IG54:
-       lea      rax, G_M35333_IG44
-						;; size=7 bbWeight=0 PerfScore 0.00
 G_M35333_IG55:
+       lea      rax, G_M35333_IG45
+						;; size=7 bbWeight=0 PerfScore 0.00
+G_M35333_IG56:
        add      rsp, 24
        pop      rbx
        pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
 						;; size=15 bbWeight=0 PerfScore 0.00
 
-; Total bytes of code 1508, prolog size 40, PerfScore 2405.05, instruction count 372, allocated bytes for code 1508 (MethodHash=a8cb75fa) for method System.Environment:ReadXdgDirectory(System.String,System.String,System.String):System.String (FullOpts)
+; Total bytes of code 1553, prolog size 40, PerfScore 2410.80, instruction count 381, allocated bytes for code 1553 (MethodHash=a8cb75fa) for method System.Environment:ReadXdgDirectory(System.String,System.String,System.String):System.String (FullOpts)
44 (12.26 % of base) - System.Diagnostics.Tracing.EventPipeEventDispatcher:StartDispatchTask(ulong,System.DateTime,long,long):this
 ; Assembly listing for method System.Diagnostics.Tracing.EventPipeEventDispatcher:StartDispatchTask(ulong,System.DateTime,long,long):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; 9 single block inlinees; 5 inlinees without PGO data
 ; Final local variable assignments
 ;
 ;  V00 this         [V00,T02] (  6,  6   )     ref  ->  rbx         this class-hnd single-def <System.Diagnostics.Tracing.EventPipeEventDispatcher>
-;  V01 arg1         [V01,T05] (  3,  3   )    long  ->  r15         single-def
+;  V01 arg1         [V01,T06] (  3,  3   )    long  ->  r15         single-def
 ;* V02 arg2         [V02    ] (  0,  0   )  struct ( 8) zero-ref    single-def <System.DateTime>
-;  V03 arg3         [V03,T06] (  3,  3   )    long  ->  r14         single-def
-;  V04 arg4         [V04,T07] (  3,  3   )    long  ->  r13         single-def
+;  V03 arg3         [V03,T07] (  3,  3   )    long  ->  r14         single-def
+;  V04 arg4         [V04,T08] (  3,  3   )    long  ->  r13         single-def
 ;  V05 loc0         [V05,T01] (  8,  8   )     ref  ->  [rbp-0x30]  class-hnd exact spill-single-def <System.Diagnostics.Tracing.EventPipeEventDispatcher+<>c__DisplayClass12_0>
 ;  V06 OutArgs      [V06    ] (  1,  1   )  struct ( 8) [rsp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
 ;* V07 tmp1         [V07    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "NewObj constructor temp" <System.Diagnostics.Tracing.EventPipeEventDispatcher+<>c__DisplayClass12_0>
-;  V08 tmp2         [V08,T08] (  2,  4   )     ref  ->  rax         class-hnd exact single-def "NewObj constructor temp" <System.Threading.CancellationTokenSource>
+;  V08 tmp2         [V08,T09] (  2,  4   )     ref  ->  rax         class-hnd exact single-def "NewObj constructor temp" <System.Threading.CancellationTokenSource>
 ;  V09 tmp3         [V09,T03] (  4,  8   )     ref  ->  r14         class-hnd exact single-def "NewObj constructor temp" <System.Action>
-;* V10 tmp4         [V10,T11] (  0,  0   )     ref  ->  zero-ref    class-hnd exact single-def "impAppendStmt" <System.Threading.Tasks.TaskFactory>
+;  V10 tmp4         [V10,T10] (  2,  4   )     ref  ->  r13         class-hnd exact single-def "impAppendStmt" <System.Threading.Tasks.TaskFactory>
 ;* V11 tmp5         [V11    ] (  0,  0   )  struct ( 8) zero-ref    "impAppendStmt" <System.Threading.CancellationToken>
 ;* V12 tmp6         [V12    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.Threading.CancellationToken>
-;  V13 tmp7         [V13,T09] (  2,  4   )     ref  ->  r15         class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.ThreadPoolTaskScheduler>
+;  V13 tmp7         [V13,T05] (  3,  6   )     ref  ->  r15         class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.ThreadPoolTaskScheduler>
 ;* V14 tmp8         [V14    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline return value spill temp" <System.Threading.Tasks.Task>
 ;* V15 tmp9         [V15    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inline return value spill temp" <System.Threading.Tasks.Task>
 ;  V16 tmp10        [V16,T00] (  7, 11   )     ref  ->  r13         class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.Task>
 ;* V17 tmp11        [V17    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact single-def "Inline stloc first use temp" <System.Threading.Tasks.Task>
 ;  V18 tmp12        [V18,T04] (  4,  6   )     ref  ->  r15         class-hnd exact single-def "Inlining Arg" <System.Threading.ExecutionContext>
-;  V19 tmp13        [V19,T10] (  2,  2   )    long  ->  r12         single-def "field V02._dateData (fldOffset=0x0)" P-INDEP
+;  V19 tmp13        [V19,T11] (  2,  2   )    long  ->  r12         single-def "field V02._dateData (fldOffset=0x0)" P-INDEP
 ;* V20 tmp14        [V20,T12] (  0,  0   )     ref  ->  zero-ref    single-def "field V11._source (fldOffset=0x0)" P-INDEP
 ;* V21 tmp15        [V21    ] (  0,  0   )     ref  ->  zero-ref    single-def "field V12._source (fldOffset=0x0)" P-INDEP
 ;
 ; Lcl frame size = 24
 
 G_M33225_IG01:
        push     rbp
        push     r15
        push     r14
        push     r13
        push     r12
        push     rbx
        sub      rsp, 24
        lea      rbp, [rsp+0x40]
        mov      rbx, rdi
        mov      r15, rsi
        mov      r12, rdx
        mov      r14, rcx
        mov      r13, r8
 						;; size=34 bbWeight=1 PerfScore 8.00
 G_M33225_IG02:
        mov      rdi, 0xD1FFAB1E      ; System.Diagnostics.Tracing.EventPipeEventDispatcher+<>c__DisplayClass12_0
        call     CORINFO_HELP_NEWSFAST
        mov      gword ptr [rbp-0x30], rax
        lea      rdi, bword ptr [rax+0x08]
        mov      rsi, rbx
        call     CORINFO_HELP_ASSIGN_REF
        mov      rax, gword ptr [rbp-0x30]
        mov      qword ptr [rax+0x18], r15
        mov      qword ptr [rax+0x30], r12
        mov      qword ptr [rax+0x20], r14
        mov      qword ptr [rax+0x28], r13
        mov      rdi, 0xD1FFAB1E      ; System.Threading.CancellationTokenSource
        call     CORINFO_HELP_NEWSFAST
        lea      rdi, bword ptr [rbx+0x08]
        mov      rsi, rax
        call     CORINFO_HELP_ASSIGN_REF
        mov      rsi, gword ptr [rbx+0x10]
        mov      r15, gword ptr [rbp-0x30]
        lea      rdi, bword ptr [r15+0x10]
        call     CORINFO_HELP_ASSIGN_REF
        mov      rdi, 0xD1FFAB1E      ; System.Action
        call     CORINFO_HELP_NEWSFAST
        mov      r14, rax
+       mov      rdi, 0xD1FFAB1E      ; const ptr
+       mov      r13, gword ptr [rdi]
        lea      rdi, bword ptr [r14+0x08]
        mov      rsi, r15
        call     CORINFO_HELP_ASSIGN_REF
        mov      rdi, 0xD1FFAB1E      ; code for System.Diagnostics.Tracing.EventPipeEventDispatcher+<>c__DisplayClass12_0:<StartDispatchTask>b__0():this
        mov      qword ptr [r14+0x18], rdi
        mov      rdi, 0xD1FFAB1E      ; const ptr
        mov      r15, gword ptr [rdi]
+       cmp      byte  ptr [r13], r13b
+       test     r15, r15
+       je       G_M33225_IG08
        mov      rdi, 0xD1FFAB1E      ; System.Threading.Tasks.Task
        call     CORINFO_HELP_NEWSFAST
        mov      r13, rax
        mov      gword ptr [rsp], r15
        mov      rdi, r13
        mov      rsi, r14
        xor      rcx, rcx
        xor      rdx, rdx
        mov      r8d, 2
        mov      r9d, 0x2000
        mov      rax, 0xD1FFAB1E      ; code for System.Threading.Tasks.Task:TaskConstructorCore(System.Delegate,System.Object,System.Threading.CancellationToken,int,int,System.Threading.Tasks.TaskScheduler):this
        call     [rax]System.Threading.Tasks.Task:TaskConstructorCore(System.Delegate,System.Object,System.Threading.CancellationToken,int,int,System.Threading.Tasks.TaskScheduler):this
        mov      rax, 0xD1FFAB1E      ; code for System.Threading.ExecutionContext:Capture():System.Threading.ExecutionContext
        call     [rax]System.Threading.ExecutionContext:Capture():System.Threading.ExecutionContext
        mov      r15, rax
-       test     r15, r15
-       jne      SHORT G_M33225_IG04
-						;; size=228 bbWeight=1 PerfScore 35.25
+						;; size=249 bbWeight=1 PerfScore 40.50
 G_M33225_IG03:
+       test     r15, r15
+       jne      SHORT G_M33225_IG05
+						;; size=5 bbWeight=1 PerfScore 1.25
+G_M33225_IG04:
        or       dword ptr [r13+0x34], 0xD1FFAB1E
-       jmp      SHORT G_M33225_IG05
+       jmp      SHORT G_M33225_IG06
 						;; size=10 bbWeight=0.50 PerfScore 2.50
-G_M33225_IG04:
+G_M33225_IG05:
        mov      rdi, 0xD1FFAB1E      ; const ptr
        cmp      r15, gword ptr [rdi]
-       je       SHORT G_M33225_IG05
+       je       SHORT G_M33225_IG06
        mov      rdi, r13
        mov      rax, 0xD1FFAB1E      ; code for System.Threading.Tasks.Task:EnsureContingentPropertiesInitializedUnsafe():System.Threading.Tasks.Task+ContingentProperties:this
        call     [rax]System.Threading.Tasks.Task:EnsureContingentPropertiesInitializedUnsafe():System.Threading.Tasks.Task+ContingentProperties:this
        lea      rdi, bword ptr [rax+0x08]
        mov      rsi, r15
        call     CORINFO_HELP_ASSIGN_REF
 						;; size=42 bbWeight=0.50 PerfScore 4.75
-G_M33225_IG05:
+G_M33225_IG06:
        mov      rdi, r13
        xor      esi, esi
        mov      rax, 0xD1FFAB1E      ; code for System.Threading.Tasks.Task:ScheduleAndStart(ubyte):this
        call     [rax]System.Threading.Tasks.Task:ScheduleAndStart(ubyte):this
        lea      rdi, bword ptr [rbx+0x10]
        mov      rsi, r13
        call     CORINFO_HELP_ASSIGN_REF
        nop      
 						;; size=30 bbWeight=1 PerfScore 5.75
-G_M33225_IG06:
+G_M33225_IG07:
        add      rsp, 24
        pop      rbx
        pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
 						;; size=15 bbWeight=1 PerfScore 4.25
+G_M33225_IG08:
+       mov      edi, 47
+       mov      rax, 0xD1FFAB1E      ; code for System.ThrowHelper:ThrowArgumentNullException(int)
+       call     [rax]System.ThrowHelper:ThrowArgumentNullException(int)
+       int3     
+						;; size=18 bbWeight=0 PerfScore 0.00
 
-; Total bytes of code 359, prolog size 19, PerfScore 96.40, instruction count 87, allocated bytes for code 359 (MethodHash=cfcf7e36) for method System.Diagnostics.Tracing.EventPipeEventDispatcher:StartDispatchTask(ulong,System.DateTime,long,long):this (FullOpts)
+; Total bytes of code 403, prolog size 19, PerfScore 107.30, instruction count 96, allocated bytes for code 403 (MethodHash=cfcf7e36) for method System.Diagnostics.Tracing.EventPipeEventDispatcher:StartDispatchTask(ulong,System.DateTime,long,long):this (FullOpts)
44 (7.87 % of base) - System.IO.TextWriter:WriteAsync(System.ReadOnlyMemory`1[ushort],System.Threading.CancellationToken):System.Threading.Tasks.Task:this
 ; Assembly listing for method System.IO.TextWriter:WriteAsync(System.ReadOnlyMemory`1[ushort],System.Threading.CancellationToken):System.Threading.Tasks.Task: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; 10 single block inlinees; 6 inlinees without PGO data
 ; Final local variable assignments
 ;
 ;  V00 this         [V00,T01] (  5,  3.50)     ref  ->  rbx         this class-hnd single-def <System.IO.TextWriter>
 ;  V01 arg1         [V01,T03] (  5,  3.50)  struct (16) [rbp-0x38]  do-not-enreg[SA] multireg-arg single-def <System.ReadOnlyMemory`1[ushort]>
 ;* V02 arg2         [V02    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op single-def <System.Threading.CancellationToken>
 ;  V03 loc0         [V03    ] (  4,  2   )  struct (16) [rbp-0x48]  do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.ArraySegment`1[ushort]>
 ;  V04 OutArgs      [V04    ] (  1,  1   )  struct ( 8) [rsp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-;  V05 tmp1         [V05,T09] (  2,  2   )     ref  ->  rsi         class-hnd single-def "impAppendStmt" <ushort[]>
-;  V06 tmp2         [V06,T12] (  2,  2   )     int  ->  rdx         "impAppendStmt"
-;  V07 tmp3         [V07,T10] (  2,  2   )     ref  ->  r14         class-hnd single-def "dup spill" <System.Action`1[System.Object]>
-;* V08 tmp4         [V08,T13] (  0,  0   )     ref  ->  zero-ref    class-hnd exact single-def "impAppendStmt" <System.Threading.Tasks.TaskFactory>
+;  V05 tmp1         [V05,T10] (  2,  2   )     ref  ->  rsi         class-hnd single-def "impAppendStmt" <ushort[]>
+;  V06 tmp2         [V06,T13] (  2,  2   )     int  ->  rdx         "impAppendStmt"
+;  V07 tmp3         [V07,T11] (  2,  2   )     ref  ->  r13         class-hnd single-def "dup spill" <System.Action`1[System.Object]>
+;  V08 tmp4         [V08,T12] (  2,  2   )     ref  ->  r14         class-hnd exact single-def "impAppendStmt" <System.Threading.Tasks.TaskFactory>
 ;* V09 tmp5         [V09    ] (  0,  0   )     ref  ->  zero-ref    single-def
-;  V10 tmp6         [V10,T08] (  5,  2.50)     ref  ->  r14        
-;  V11 tmp7         [V11,T05] (  4,  4   )     ref  ->  r13         class-hnd exact single-def "NewObj constructor temp" <System.TupleSlim`2[System.IO.TextWriter,System.ReadOnlyMemory`1[ushort]]>
+;  V10 tmp6         [V10,T09] (  5,  2.50)     ref  ->  r13        
+;  V11 tmp7         [V11,T05] (  4,  4   )     ref  ->  r12         class-hnd exact single-def "NewObj constructor temp" <System.TupleSlim`2[System.IO.TextWriter,System.ReadOnlyMemory`1[ushort]]>
 ;* V12 tmp8         [V12    ] (  0,  0   )  struct ( 8) zero-ref    "impAppendStmt" <System.Threading.CancellationToken>
-;  V13 tmp9         [V13,T04] (  5,  5   )     ref  ->  r14         class-hnd exact single-def "NewObj constructor temp" <System.Action`1[System.Object]>
+;  V13 tmp9         [V13,T04] (  5,  5   )     ref  ->  r13         class-hnd exact single-def "NewObj constructor temp" <System.Action`1[System.Object]>
 ;* V14 tmp10        [V14,T14] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
 ;* V15 tmp11        [V15    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <System.Threading.CancellationTokenSource>
 ;  V16 tmp12        [V16,T07] (  3,  3   )     ref  ->  rsi         class-hnd exact single-def "Inlining Arg" <System.IO.TextWriter+<>c>
-;  V17 tmp13        [V17,T11] (  2,  2   )     ref  ->  rbx         class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.ThreadPoolTaskScheduler>
+;  V17 tmp13        [V17,T08] (  3,  3   )     ref  ->  rbx         class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.ThreadPoolTaskScheduler>
 ;* V18 tmp14        [V18    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline return value spill temp" <System.Threading.Tasks.Task>
 ;* V19 tmp15        [V19    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inline return value spill temp" <System.Threading.Tasks.Task>
-;  V20 tmp16        [V20,T00] (  7,  7   )     ref  ->  r12         class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.Task>
+;  V20 tmp16        [V20,T00] (  7,  7   )     ref  ->  r14         class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.Task>
 ;* V21 tmp17        [V21    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact single-def "Inline stloc first use temp" <System.Threading.Tasks.Task>
 ;  V22 tmp18        [V22,T06] (  4,  4   )     ref  ->  r15         class-hnd exact single-def "Inlining Arg" <System.Threading.ExecutionContext>
 ;  V23 tmp19        [V23,T02] (  5,  3.50)     ref  ->  r15         single-def "field V02._source (fldOffset=0x0)" P-INDEP
 ;  V24 tmp20        [V24    ] (  2,  1   )     ref  ->  [rbp-0x48]  do-not-enreg[X] addr-exposed "field V03._array (fldOffset=0x0)" P-DEP
 ;  V25 tmp21        [V25    ] (  2,  1   )     int  ->  [rbp-0x40]  do-not-enreg[X] addr-exposed "field V03._offset (fldOffset=0x8)" P-DEP
 ;  V26 tmp22        [V26    ] (  2,  1   )     int  ->  [rbp-0x3C]  do-not-enreg[X] addr-exposed "field V03._count (fldOffset=0xc)" P-DEP
 ;* V27 tmp23        [V27    ] (  0,  0   )     ref  ->  zero-ref    single-def "field V12._source (fldOffset=0x0)" P-INDEP
 ;* V28 cse0         [V28,T15] (  0,  0   )    long  ->  zero-ref    "CSE - moderate"
 ;
 ; Lcl frame size = 40
 
 G_M7148_IG01:
        push     rbp
        push     r15
        push     r14
        push     r13
        push     r12
        push     rbx
        sub      rsp, 40
        lea      rbp, [rsp+0x50]
        xor      eax, eax
        mov      qword ptr [rbp-0x48], rax
        mov      gword ptr [rbp-0x38], rsi
        mov      qword ptr [rbp-0x30], rdx
        mov      rbx, rdi
        mov      r15, rcx
 						;; size=39 bbWeight=1 PerfScore 10.50
 G_M7148_IG02:
        test     r15, r15
        je       SHORT G_M7148_IG05
 						;; size=5 bbWeight=1 PerfScore 1.25
 G_M7148_IG03:
        cmp      dword ptr [r15+0x20], 0
        je       SHORT G_M7148_IG05
        mov      rdi, r15
        mov      rax, 0xD1FFAB1E      ; code for System.Threading.Tasks.Task:FromCanceled(System.Threading.CancellationToken):System.Threading.Tasks.Task
        call     [rax]System.Threading.Tasks.Task:FromCanceled(System.Threading.CancellationToken):System.Threading.Tasks.Task
        nop      
 						;; size=23 bbWeight=0.50 PerfScore 3.88
 G_M7148_IG04:
        add      rsp, 40
        pop      rbx
        pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
 						;; size=15 bbWeight=0.50 PerfScore 2.12
 G_M7148_IG05:
        mov      rdi, gword ptr [rbp-0x38]
        mov      rsi, qword ptr [rbp-0x30]
        lea      rdx, [rbp-0x48]
        mov      rax, 0xD1FFAB1E      ; code for System.Runtime.InteropServices.MemoryMarshal:TryGetArray[ushort](System.ReadOnlyMemory`1[ushort],byref):ubyte
        call     [rax]System.Runtime.InteropServices.MemoryMarshal:TryGetArray[ushort](System.ReadOnlyMemory`1[ushort],byref):ubyte
        test     eax, eax
        jne      G_M7148_IG11
+       mov      rdi, 0xD1FFAB1E      ; const ptr
+       mov      r14, gword ptr [rdi]
        mov      rdi, 0xD1FFAB1E      ; global ptr
        test     byte  ptr [rdi], 1
        je       G_M7148_IG13
-						;; size=51 bbWeight=0.50 PerfScore 5.62
+						;; size=64 bbWeight=0.50 PerfScore 6.75
 G_M7148_IG06:
        mov      rdi, 0xD1FFAB1E      ; data for System.IO.TextWriter+<>c:<>9__63_0
-       mov      r14, gword ptr [rdi]
-       test     r14, r14
+       mov      r13, gword ptr [rdi]
+       test     r13, r13
        jne      SHORT G_M7148_IG07
        mov      rdi, 0xD1FFAB1E      ; System.Action`1[System.Object]
        call     CORINFO_HELP_NEWSFAST
-       mov      r14, rax
+       mov      r13, rax
        mov      rdi, 0xD1FFAB1E      ; data for System.IO.TextWriter+<>c:<>9
        mov      rsi, gword ptr [rdi]
        test     rsi, rsi
        je       G_M7148_IG14
-       lea      rdi, bword ptr [r14+0x08]
+       lea      rdi, bword ptr [r13+0x08]
        call     CORINFO_HELP_ASSIGN_REF
        mov      rdi, 0xD1FFAB1E      ; code for System.IO.TextWriter+<>c:<WriteAsync>b__63_0(System.Object):this
-       mov      qword ptr [r14+0x18], rdi
+       mov      qword ptr [r13+0x18], rdi
        mov      rdi, 0xD1FFAB1E      ; data for System.IO.TextWriter+<>c:<>9__63_0
-       mov      rsi, r14
+       mov      rsi, r13
        call     CORINFO_HELP_ASSIGN_REF
 						;; size=99 bbWeight=0.50 PerfScore 6.38
 G_M7148_IG07:
        mov      rdi, 0xD1FFAB1E      ; System.TupleSlim`2[System.IO.TextWriter,System.ReadOnlyMemory`1[ushort]]
        call     CORINFO_HELP_NEWSFAST
-       mov      r13, rax
-       lea      rdi, bword ptr [r13+0x08]
+       mov      r12, rax
+       lea      rdi, bword ptr [r12+0x08]
        mov      rsi, rbx
        call     CORINFO_HELP_ASSIGN_REF
-       lea      rdi, bword ptr [r13+0x10]
+       lea      rdi, bword ptr [r12+0x10]
        lea      rsi, bword ptr [rbp-0x38]
        call     CORINFO_HELP_ASSIGN_BYREF
        movsq    
        mov      rdi, 0xD1FFAB1E      ; const ptr
        mov      rbx, gword ptr [rdi]
+       cmp      byte  ptr [r14], r14b
+       test     rbx, rbx
+       je       G_M7148_IG15
        mov      rdi, 0xD1FFAB1E      ; System.Threading.Tasks.Task
        call     CORINFO_HELP_NEWSFAST
-       mov      r12, rax
-       test     r14, r14
-       je       G_M7148_IG15
+       mov      r14, rax
+       test     r13, r13
+       je       G_M7148_IG16
        mov      gword ptr [rsp], rbx
-       mov      rdi, r12
-       mov      rsi, r14
-       mov      rdx, r13
+       mov      rdi, r14
+       mov      rsi, r13
+       mov      rdx, r12
        mov      rcx, r15
        mov      r8d, 8
        mov      r9d, 0x2000
        mov      rax, 0xD1FFAB1E      ; code for System.Threading.Tasks.Task:TaskConstructorCore(System.Delegate,System.Object,System.Threading.CancellationToken,int,int,System.Threading.Tasks.TaskScheduler):this
        call     [rax]System.Threading.Tasks.Task:TaskConstructorCore(System.Delegate,System.Object,System.Threading.CancellationToken,int,int,System.Threading.Tasks.TaskScheduler):this
        mov      rax, 0xD1FFAB1E      ; code for System.Threading.ExecutionContext:Capture():System.Threading.ExecutionContext
        call     [rax]System.Threading.ExecutionContext:Capture():System.Threading.ExecutionContext
        mov      r15, rax
        test     r15, r15
        jne      SHORT G_M7148_IG08
-       or       dword ptr [r12+0x34], 0xD1FFAB1E
+       or       dword ptr [r14+0x34], 0xD1FFAB1E
        jmp      SHORT G_M7148_IG09
-						;; size=156 bbWeight=0.50 PerfScore 13.38
+						;; size=169 bbWeight=0.50 PerfScore 15.50
 G_M7148_IG08:
        mov      rdi, 0xD1FFAB1E      ; const ptr
        cmp      r15, gword ptr [rdi]
        je       SHORT G_M7148_IG09
-       mov      rdi, r12
+       mov      rdi, r14
        mov      rax, 0xD1FFAB1E      ; code for System.Threading.Tasks.Task:EnsureContingentPropertiesInitializedUnsafe():System.Threading.Tasks.Task+ContingentProperties:this
        call     [rax]System.Threading.Tasks.Task:EnsureContingentPropertiesInitializedUnsafe():System.Threading.Tasks.Task+ContingentProperties:this
        lea      rdi, bword ptr [rax+0x08]
        mov      rsi, r15
        call     CORINFO_HELP_ASSIGN_REF
 						;; size=42 bbWeight=0.50 PerfScore 4.75
 G_M7148_IG09:
-       mov      rdi, r12
+       mov      rdi, r14
        xor      esi, esi
        mov      rax, 0xD1FFAB1E      ; code for System.Threading.Tasks.Task:ScheduleAndStart(ubyte):this
        call     [rax]System.Threading.Tasks.Task:ScheduleAndStart(ubyte):this
-       mov      rax, r12
+       mov      rax, r14
 						;; size=20 bbWeight=0.50 PerfScore 2.00
 G_M7148_IG10:
        add      rsp, 40
        pop      rbx
        pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
 						;; size=15 bbWeight=0.50 PerfScore 2.12
 G_M7148_IG11:
        mov      rsi, gword ptr [rbp-0x48]
        mov      edx, dword ptr [rbp-0x40]
        mov      rdi, rbx
        mov      ecx, dword ptr [rbp-0x3C]
        mov      rax, qword ptr [rbx]
        mov      rax, qword ptr [rax+0x78]
        call     [rax]System.IO.TextWriter:WriteAsync(ushort[],int,int):System.Threading.Tasks.Task:this
        nop      
 						;; size=23 bbWeight=0.50 PerfScore 5.25
 G_M7148_IG12:
        add      rsp, 40
        pop      rbx
        pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
 						;; size=15 bbWeight=0.50 PerfScore 2.12
 G_M7148_IG13:
        mov      rdi, 0xD1FFAB1E
        mov      esi, 0x7FF
        call     CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
        jmp      G_M7148_IG06
 						;; size=25 bbWeight=0 PerfScore 0.00
 G_M7148_IG14:
        mov      rax, 0xD1FFAB1E      ; code for System.MulticastDelegate:ThrowNullThisInDelegateToInstance()
        call     [rax]System.MulticastDelegate:ThrowNullThisInDelegateToInstance()
        int3     
 						;; size=13 bbWeight=0 PerfScore 0.00
 G_M7148_IG15:
+       mov      edi, 47
+       mov      rax, 0xD1FFAB1E      ; code for System.ThrowHelper:ThrowArgumentNullException(int)
+       call     [rax]System.ThrowHelper:ThrowArgumentNullException(int)
+       int3     
+						;; size=18 bbWeight=0 PerfScore 0.00
+G_M7148_IG16:
        mov      edi, 28
        mov      rax, 0xD1FFAB1E      ; code for System.ThrowHelper:ThrowArgumentNullException(int)
        call     [rax]System.ThrowHelper:ThrowArgumentNullException(int)
        int3     
 						;; size=18 bbWeight=0 PerfScore 0.00
 
-; Total bytes of code 559, prolog size 25, PerfScore 115.28, instruction count 140, allocated bytes for code 559 (MethodHash=53eee413) for method System.IO.TextWriter:WriteAsync(System.ReadOnlyMemory`1[ushort],System.Threading.CancellationToken):System.Threading.Tasks.Task:this (FullOpts)
+; Total bytes of code 603, prolog size 25, PerfScore 122.93, instruction count 149, allocated bytes for code 603 (MethodHash=53eee413) for method System.IO.TextWriter:WriteAsync(System.ReadOnlyMemory`1[ushort],System.Threading.CancellationToken):System.Threading.Tasks.Task:this (FullOpts)
44 (7.86 % of base) - System.IO.TextWriter:WriteLineAsync(System.ReadOnlyMemory`1[ushort],System.Threading.CancellationToken):System.Threading.Tasks.Task:this
 ; Assembly listing for method System.IO.TextWriter:WriteLineAsync(System.ReadOnlyMemory`1[ushort],System.Threading.CancellationToken):System.Threading.Tasks.Task: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; 10 single block inlinees; 6 inlinees without PGO data
 ; Final local variable assignments
 ;
 ;  V00 this         [V00,T01] (  5,  3.50)     ref  ->  rbx         this class-hnd single-def <System.IO.TextWriter>
 ;  V01 arg1         [V01,T03] (  5,  3.50)  struct (16) [rbp-0x38]  do-not-enreg[SA] multireg-arg single-def <System.ReadOnlyMemory`1[ushort]>
 ;* V02 arg2         [V02    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op single-def <System.Threading.CancellationToken>
 ;  V03 loc0         [V03    ] (  4,  2   )  struct (16) [rbp-0x48]  do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.ArraySegment`1[ushort]>
 ;  V04 OutArgs      [V04    ] (  1,  1   )  struct ( 8) [rsp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-;  V05 tmp1         [V05,T09] (  2,  2   )     ref  ->  rsi         class-hnd single-def "impAppendStmt" <ushort[]>
-;  V06 tmp2         [V06,T12] (  2,  2   )     int  ->  rdx         "impAppendStmt"
-;  V07 tmp3         [V07,T10] (  2,  2   )     ref  ->  r14         class-hnd single-def "dup spill" <System.Action`1[System.Object]>
-;* V08 tmp4         [V08,T13] (  0,  0   )     ref  ->  zero-ref    class-hnd exact single-def "impAppendStmt" <System.Threading.Tasks.TaskFactory>
+;  V05 tmp1         [V05,T10] (  2,  2   )     ref  ->  rsi         class-hnd single-def "impAppendStmt" <ushort[]>
+;  V06 tmp2         [V06,T13] (  2,  2   )     int  ->  rdx         "impAppendStmt"
+;  V07 tmp3         [V07,T11] (  2,  2   )     ref  ->  r13         class-hnd single-def "dup spill" <System.Action`1[System.Object]>
+;  V08 tmp4         [V08,T12] (  2,  2   )     ref  ->  r14         class-hnd exact single-def "impAppendStmt" <System.Threading.Tasks.TaskFactory>
 ;* V09 tmp5         [V09    ] (  0,  0   )     ref  ->  zero-ref    single-def
-;  V10 tmp6         [V10,T08] (  5,  2.50)     ref  ->  r14        
-;  V11 tmp7         [V11,T05] (  4,  4   )     ref  ->  r13         class-hnd exact single-def "NewObj constructor temp" <System.TupleSlim`2[System.IO.TextWriter,System.ReadOnlyMemory`1[ushort]]>
+;  V10 tmp6         [V10,T09] (  5,  2.50)     ref  ->  r13        
+;  V11 tmp7         [V11,T05] (  4,  4   )     ref  ->  r12         class-hnd exact single-def "NewObj constructor temp" <System.TupleSlim`2[System.IO.TextWriter,System.ReadOnlyMemory`1[ushort]]>
 ;* V12 tmp8         [V12    ] (  0,  0   )  struct ( 8) zero-ref    "impAppendStmt" <System.Threading.CancellationToken>
-;  V13 tmp9         [V13,T04] (  5,  5   )     ref  ->  r14         class-hnd exact single-def "NewObj constructor temp" <System.Action`1[System.Object]>
+;  V13 tmp9         [V13,T04] (  5,  5   )     ref  ->  r13         class-hnd exact single-def "NewObj constructor temp" <System.Action`1[System.Object]>
 ;* V14 tmp10        [V14,T14] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
 ;* V15 tmp11        [V15    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <System.Threading.CancellationTokenSource>
 ;  V16 tmp12        [V16,T07] (  3,  3   )     ref  ->  rsi         class-hnd exact single-def "Inlining Arg" <System.IO.TextWriter+<>c>
-;  V17 tmp13        [V17,T11] (  2,  2   )     ref  ->  rbx         class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.ThreadPoolTaskScheduler>
+;  V17 tmp13        [V17,T08] (  3,  3   )     ref  ->  rbx         class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.ThreadPoolTaskScheduler>
 ;* V18 tmp14        [V18    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline return value spill temp" <System.Threading.Tasks.Task>
 ;* V19 tmp15        [V19    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inline return value spill temp" <System.Threading.Tasks.Task>
-;  V20 tmp16        [V20,T00] (  7,  7   )     ref  ->  r12         class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.Task>
+;  V20 tmp16        [V20,T00] (  7,  7   )     ref  ->  r14         class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.Task>
 ;* V21 tmp17        [V21    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact single-def "Inline stloc first use temp" <System.Threading.Tasks.Task>
 ;  V22 tmp18        [V22,T06] (  4,  4   )     ref  ->  r15         class-hnd exact single-def "Inlining Arg" <System.Threading.ExecutionContext>
 ;  V23 tmp19        [V23,T02] (  5,  3.50)     ref  ->  r15         single-def "field V02._source (fldOffset=0x0)" P-INDEP
 ;  V24 tmp20        [V24    ] (  2,  1   )     ref  ->  [rbp-0x48]  do-not-enreg[X] addr-exposed "field V03._array (fldOffset=0x0)" P-DEP
 ;  V25 tmp21        [V25    ] (  2,  1   )     int  ->  [rbp-0x40]  do-not-enreg[X] addr-exposed "field V03._offset (fldOffset=0x8)" P-DEP
 ;  V26 tmp22        [V26    ] (  2,  1   )     int  ->  [rbp-0x3C]  do-not-enreg[X] addr-exposed "field V03._count (fldOffset=0xc)" P-DEP
 ;* V27 tmp23        [V27    ] (  0,  0   )     ref  ->  zero-ref    single-def "field V12._source (fldOffset=0x0)" P-INDEP
 ;* V28 cse0         [V28,T15] (  0,  0   )    long  ->  zero-ref    "CSE - moderate"
 ;
 ; Lcl frame size = 40
 
 G_M28994_IG01:
        push     rbp
        push     r15
        push     r14
        push     r13
        push     r12
        push     rbx
        sub      rsp, 40
        lea      rbp, [rsp+0x50]
        xor      eax, eax
        mov      qword ptr [rbp-0x48], rax
        mov      gword ptr [rbp-0x38], rsi
        mov      qword ptr [rbp-0x30], rdx
        mov      rbx, rdi
        mov      r15, rcx
 						;; size=39 bbWeight=1 PerfScore 10.50
 G_M28994_IG02:
        test     r15, r15
        je       SHORT G_M28994_IG05
 						;; size=5 bbWeight=1 PerfScore 1.25
 G_M28994_IG03:
        cmp      dword ptr [r15+0x20], 0
        je       SHORT G_M28994_IG05
        mov      rdi, r15
        mov      rax, 0xD1FFAB1E      ; code for System.Threading.Tasks.Task:FromCanceled(System.Threading.CancellationToken):System.Threading.Tasks.Task
        call     [rax]System.Threading.Tasks.Task:FromCanceled(System.Threading.CancellationToken):System.Threading.Tasks.Task
        nop      
 						;; size=23 bbWeight=0.50 PerfScore 3.88
 G_M28994_IG04:
        add      rsp, 40
        pop      rbx
        pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
 						;; size=15 bbWeight=0.50 PerfScore 2.12
 G_M28994_IG05:
        mov      rdi, gword ptr [rbp-0x38]
        mov      rsi, qword ptr [rbp-0x30]
        lea      rdx, [rbp-0x48]
        mov      rax, 0xD1FFAB1E      ; code for System.Runtime.InteropServices.MemoryMarshal:TryGetArray[ushort](System.ReadOnlyMemory`1[ushort],byref):ubyte
        call     [rax]System.Runtime.InteropServices.MemoryMarshal:TryGetArray[ushort](System.ReadOnlyMemory`1[ushort],byref):ubyte
        test     eax, eax
        jne      G_M28994_IG11
+       mov      rdi, 0xD1FFAB1E      ; const ptr
+       mov      r14, gword ptr [rdi]
        mov      rdi, 0xD1FFAB1E      ; global ptr
        test     byte  ptr [rdi], 1
        je       G_M28994_IG13
-						;; size=51 bbWeight=0.50 PerfScore 5.62
+						;; size=64 bbWeight=0.50 PerfScore 6.75
 G_M28994_IG06:
        mov      rdi, 0xD1FFAB1E      ; data for System.IO.TextWriter+<>c:<>9__69_0
-       mov      r14, gword ptr [rdi]
-       test     r14, r14
+       mov      r13, gword ptr [rdi]
+       test     r13, r13
        jne      SHORT G_M28994_IG07
        mov      rdi, 0xD1FFAB1E      ; System.Action`1[System.Object]
        call     CORINFO_HELP_NEWSFAST
-       mov      r14, rax
+       mov      r13, rax
        mov      rdi, 0xD1FFAB1E      ; data for System.IO.TextWriter+<>c:<>9
        mov      rsi, gword ptr [rdi]
        test     rsi, rsi
        je       G_M28994_IG14
-       lea      rdi, bword ptr [r14+0x08]
+       lea      rdi, bword ptr [r13+0x08]
        call     CORINFO_HELP_ASSIGN_REF
        mov      rdi, 0xD1FFAB1E      ; code for System.IO.TextWriter+<>c:<WriteLineAsync>b__69_0(System.Object):this
-       mov      qword ptr [r14+0x18], rdi
+       mov      qword ptr [r13+0x18], rdi
        mov      rdi, 0xD1FFAB1E      ; data for System.IO.TextWriter+<>c:<>9__69_0
-       mov      rsi, r14
+       mov      rsi, r13
        call     CORINFO_HELP_ASSIGN_REF
 						;; size=99 bbWeight=0.50 PerfScore 6.38
 G_M28994_IG07:
        mov      rdi, 0xD1FFAB1E      ; System.TupleSlim`2[System.IO.TextWriter,System.ReadOnlyMemory`1[ushort]]
        call     CORINFO_HELP_NEWSFAST
-       mov      r13, rax
-       lea      rdi, bword ptr [r13+0x08]
+       mov      r12, rax
+       lea      rdi, bword ptr [r12+0x08]
        mov      rsi, rbx
        call     CORINFO_HELP_ASSIGN_REF
-       lea      rdi, bword ptr [r13+0x10]
+       lea      rdi, bword ptr [r12+0x10]
        lea      rsi, bword ptr [rbp-0x38]
        call     CORINFO_HELP_ASSIGN_BYREF
        movsq    
        mov      rdi, 0xD1FFAB1E      ; const ptr
        mov      rbx, gword ptr [rdi]
+       cmp      byte  ptr [r14], r14b
+       test     rbx, rbx
+       je       G_M28994_IG15
        mov      rdi, 0xD1FFAB1E      ; System.Threading.Tasks.Task
        call     CORINFO_HELP_NEWSFAST
-       mov      r12, rax
-       test     r14, r14
-       je       G_M28994_IG15
+       mov      r14, rax
+       test     r13, r13
+       je       G_M28994_IG16
        mov      gword ptr [rsp], rbx
-       mov      rdi, r12
-       mov      rsi, r14
-       mov      rdx, r13
+       mov      rdi, r14
+       mov      rsi, r13
+       mov      rdx, r12
        mov      rcx, r15
        mov      r8d, 8
        mov      r9d, 0x2000
        mov      rax, 0xD1FFAB1E      ; code for System.Threading.Tasks.Task:TaskConstructorCore(System.Delegate,System.Object,System.Threading.CancellationToken,int,int,System.Threading.Tasks.TaskScheduler):this
        call     [rax]System.Threading.Tasks.Task:TaskConstructorCore(System.Delegate,System.Object,System.Threading.CancellationToken,int,int,System.Threading.Tasks.TaskScheduler):this
        mov      rax, 0xD1FFAB1E      ; code for System.Threading.ExecutionContext:Capture():System.Threading.ExecutionContext
        call     [rax]System.Threading.ExecutionContext:Capture():System.Threading.ExecutionContext
        mov      r15, rax
        test     r15, r15
        jne      SHORT G_M28994_IG08
-       or       dword ptr [r12+0x34], 0xD1FFAB1E
+       or       dword ptr [r14+0x34], 0xD1FFAB1E
        jmp      SHORT G_M28994_IG09
-						;; size=156 bbWeight=0.50 PerfScore 13.38
+						;; size=169 bbWeight=0.50 PerfScore 15.50
 G_M28994_IG08:
        mov      rdi, 0xD1FFAB1E      ; const ptr
        cmp      r15, gword ptr [rdi]
        je       SHORT G_M28994_IG09
-       mov      rdi, r12
+       mov      rdi, r14
        mov      rax, 0xD1FFAB1E      ; code for System.Threading.Tasks.Task:EnsureContingentPropertiesInitializedUnsafe():System.Threading.Tasks.Task+ContingentProperties:this
        call     [rax]System.Threading.Tasks.Task:EnsureContingentPropertiesInitializedUnsafe():System.Threading.Tasks.Task+ContingentProperties:this
        lea      rdi, bword ptr [rax+0x08]
        mov      rsi, r15
        call     CORINFO_HELP_ASSIGN_REF
 						;; size=42 bbWeight=0.50 PerfScore 4.75
 G_M28994_IG09:
-       mov      rdi, r12
+       mov      rdi, r14
        xor      esi, esi
        mov      rax, 0xD1FFAB1E      ; code for System.Threading.Tasks.Task:ScheduleAndStart(ubyte):this
        call     [rax]System.Threading.Tasks.Task:ScheduleAndStart(ubyte):this
-       mov      rax, r12
+       mov      rax, r14
 						;; size=20 bbWeight=0.50 PerfScore 2.00
 G_M28994_IG10:
        add      rsp, 40
        pop      rbx
        pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
 						;; size=15 bbWeight=0.50 PerfScore 2.12
 G_M28994_IG11:
        mov      rsi, gword ptr [rbp-0x48]
        mov      edx, dword ptr [rbp-0x40]
        mov      rdi, rbx
        mov      ecx, dword ptr [rbp-0x3C]
        mov      rax, qword ptr [rbx]
        mov      rax, qword ptr [rax+0x78]
        call     [rax+0x28]System.IO.TextWriter:WriteLineAsync(ushort[],int,int):System.Threading.Tasks.Task:this
        nop      
 						;; size=24 bbWeight=0.50 PerfScore 5.25
 G_M28994_IG12:
        add      rsp, 40
        pop      rbx
        pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
 						;; size=15 bbWeight=0.50 PerfScore 2.12
 G_M28994_IG13:
        mov      rdi, 0xD1FFAB1E
        mov      esi, 0x7FF
        call     CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
        jmp      G_M28994_IG06
 						;; size=25 bbWeight=0 PerfScore 0.00
 G_M28994_IG14:
        mov      rax, 0xD1FFAB1E      ; code for System.MulticastDelegate:ThrowNullThisInDelegateToInstance()
        call     [rax]System.MulticastDelegate:ThrowNullThisInDelegateToInstance()
        int3     
 						;; size=13 bbWeight=0 PerfScore 0.00
 G_M28994_IG15:
+       mov      edi, 47
+       mov      rax, 0xD1FFAB1E      ; code for System.ThrowHelper:ThrowArgumentNullException(int)
+       call     [rax]System.ThrowHelper:ThrowArgumentNullException(int)
+       int3     
+						;; size=18 bbWeight=0 PerfScore 0.00
+G_M28994_IG16:
        mov      edi, 28
        mov      rax, 0xD1FFAB1E      ; code for System.ThrowHelper:ThrowArgumentNullException(int)
        call     [rax]System.ThrowHelper:ThrowArgumentNullException(int)
        int3     
 						;; size=18 bbWeight=0 PerfScore 0.00
 
-; Total bytes of code 560, prolog size 25, PerfScore 115.38, instruction count 140, allocated bytes for code 560 (MethodHash=a7ca8ebd) for method System.IO.TextWriter:WriteLineAsync(System.ReadOnlyMemory`1[ushort],System.Threading.CancellationToken):System.Threading.Tasks.Task:this (FullOpts)
+; Total bytes of code 604, prolog size 25, PerfScore 123.03, instruction count 149, allocated bytes for code 604 (MethodHash=a7ca8ebd) for method System.IO.TextWriter:WriteLineAsync(System.ReadOnlyMemory`1[ushort],System.Threading.CancellationToken):System.Threading.Tasks.Task:this (FullOpts)
43 (11.38 % of base) - System.IO.TextWriter:FlushAsync():System.Threading.Tasks.Task:this
 ; Assembly listing for method System.IO.TextWriter:FlushAsync():System.Threading.Tasks.Task: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; 5 single block inlinees; 5 inlinees without PGO data
 ; Final local variable assignments
 ;
-;  V00 this         [V00,T03] (  3,  3   )     ref  ->  rbx         this class-hnd single-def <System.IO.TextWriter>
+;  V00 this         [V00,T04] (  3,  3   )     ref  ->  rbx         this class-hnd single-def <System.IO.TextWriter>
 ;  V01 OutArgs      [V01    ] (  1,  1   )  struct ( 8) [rsp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-;  V02 tmp1         [V02,T05] (  2,  4   )     ref  ->  r15         class-hnd single-def "dup spill" <System.Action`1[System.Object]>
-;* V03 tmp2         [V03,T08] (  0,  0   )     ref  ->  zero-ref    class-hnd exact single-def "impAppendStmt" <System.Threading.Tasks.TaskFactory>
+;  V02 tmp1         [V02,T06] (  2,  4   )     ref  ->  r14         class-hnd single-def "dup spill" <System.Action`1[System.Object]>
+;  V03 tmp2         [V03,T07] (  2,  4   )     ref  ->  r15         class-hnd exact single-def "impAppendStmt" <System.Threading.Tasks.TaskFactory>
 ;* V04 tmp3         [V04    ] (  0,  0   )     ref  ->  zero-ref    single-def
-;  V05 tmp4         [V05,T04] (  5,  4.50)     ref  ->  r15        
+;  V05 tmp4         [V05,T05] (  5,  4.50)     ref  ->  r14        
 ;* V06 tmp5         [V06    ] (  0,  0   )  struct ( 8) zero-ref    "impAppendStmt" <System.Threading.CancellationToken>
-;  V07 tmp6         [V07,T02] (  5,  5   )     ref  ->  r15         class-hnd exact single-def "NewObj constructor temp" <System.Action`1[System.Object]>
-;  V08 tmp7         [V08,T07] (  3,  3   )     ref  ->  rsi         class-hnd exact single-def "Inlining Arg" <System.IO.TextWriter+<>c>
+;  V07 tmp6         [V07,T03] (  5,  5   )     ref  ->  r14         class-hnd exact single-def "NewObj constructor temp" <System.Action`1[System.Object]>
+;  V08 tmp7         [V08,T08] (  3,  3   )     ref  ->  rsi         class-hnd exact single-def "Inlining Arg" <System.IO.TextWriter+<>c>
 ;* V09 tmp8         [V09    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.Threading.CancellationToken>
-;  V10 tmp9         [V10,T06] (  2,  4   )     ref  ->  r14         class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.ThreadPoolTaskScheduler>
+;  V10 tmp9         [V10,T02] (  3,  6   )     ref  ->  r13         class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.ThreadPoolTaskScheduler>
 ;* V11 tmp10        [V11    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline return value spill temp" <System.Threading.Tasks.Task>
 ;* V12 tmp11        [V12    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inline return value spill temp" <System.Threading.Tasks.Task>
-;  V13 tmp12        [V13,T00] (  7, 11   )     ref  ->  r13         class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.Task>
+;  V13 tmp12        [V13,T00] (  7, 11   )     ref  ->  r15         class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.Task>
 ;* V14 tmp13        [V14    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact single-def "Inline stloc first use temp" <System.Threading.Tasks.Task>
 ;  V15 tmp14        [V15,T01] (  4,  6   )     ref  ->  rbx         class-hnd exact single-def "Inlining Arg" <System.Threading.ExecutionContext>
 ;* V16 tmp15        [V16,T09] (  0,  0   )     ref  ->  zero-ref    single-def "field V06._source (fldOffset=0x0)" P-INDEP
 ;* V17 tmp16        [V17    ] (  0,  0   )     ref  ->  zero-ref    single-def "field V09._source (fldOffset=0x0)" P-INDEP
 ;* V18 cse0         [V18,T10] (  0,  0   )    long  ->  zero-ref    "CSE - moderate"
 ;
 ; Lcl frame size = 16
 
 G_M52834_IG01:
        push     rbp
        push     r15
        push     r14
        push     r13
        push     rbx
        sub      rsp, 16
        lea      rbp, [rsp+0x30]
        mov      rbx, rdi
 						;; size=20 bbWeight=1 PerfScore 6.00
 G_M52834_IG02:
+       mov      rdi, 0xD1FFAB1E      ; const ptr
+       mov      r15, gword ptr [rdi]
        mov      rdi, 0xD1FFAB1E      ; global ptr
        test     byte  ptr [rdi], 1
        je       G_M52834_IG10
-						;; size=19 bbWeight=1 PerfScore 4.25
+						;; size=32 bbWeight=1 PerfScore 6.50
 G_M52834_IG03:
        mov      rdi, 0xD1FFAB1E      ; data for System.IO.TextWriter+<>c:<>9__71_0
-       mov      r15, gword ptr [rdi]
-       test     r15, r15
+       mov      r14, gword ptr [rdi]
+       test     r14, r14
        jne      SHORT G_M52834_IG05
 						;; size=18 bbWeight=1 PerfScore 3.50
 G_M52834_IG04:
        mov      rdi, 0xD1FFAB1E      ; System.Action`1[System.Object]
        call     CORINFO_HELP_NEWSFAST
-       mov      r15, rax
+       mov      r14, rax
        mov      rdi, 0xD1FFAB1E      ; data for System.IO.TextWriter+<>c:<>9
        mov      rsi, gword ptr [rdi]
        test     rsi, rsi
        je       G_M52834_IG11
-       lea      rdi, bword ptr [r15+0x08]
+       lea      rdi, bword ptr [r14+0x08]
        call     CORINFO_HELP_ASSIGN_REF
        mov      rdi, 0xD1FFAB1E      ; code for System.IO.TextWriter+<>c:<FlushAsync>b__71_0(System.Object):this
-       mov      qword ptr [r15+0x18], rdi
+       mov      qword ptr [r14+0x18], rdi
        mov      rdi, 0xD1FFAB1E      ; data for System.IO.TextWriter+<>c:<>9__71_0
-       mov      rsi, r15
+       mov      rsi, r14
        call     CORINFO_HELP_ASSIGN_REF
 						;; size=81 bbWeight=0.50 PerfScore 4.62
 G_M52834_IG05:
        mov      rdi, 0xD1FFAB1E      ; const ptr
-       mov      r14, gword ptr [rdi]
+       mov      r13, gword ptr [rdi]
+       cmp      byte  ptr [r15], r15b
+       test     r13, r13
+       je       G_M52834_IG12
        mov      rdi, 0xD1FFAB1E      ; System.Threading.Tasks.Task
        call     CORINFO_HELP_NEWSFAST
-       mov      r13, rax
-       test     r15, r15
-       je       G_M52834_IG12
-       mov      gword ptr [rsp], r14
-       mov      rdi, r13
-       mov      rsi, r15
+       mov      r15, rax
+       test     r14, r14
+       je       G_M52834_IG13
+       mov      gword ptr [rsp], r13
+       mov      rdi, r15
+       mov      rsi, r14
        mov      rdx, rbx
        xor      rcx, rcx
        mov      r8d, 8
        mov      r9d, 0x2000
        mov      rax, 0xD1FFAB1E      ; code for System.Threading.Tasks.Task:TaskConstructorCore(System.Delegate,System.Object,System.Threading.CancellationToken,int,int,System.Threading.Tasks.TaskScheduler):this
        call     [rax]System.Threading.Tasks.Task:TaskConstructorCore(System.Delegate,System.Object,System.Threading.CancellationToken,int,int,System.Threading.Tasks.TaskScheduler):this
        mov      rax, 0xD1FFAB1E      ; code for System.Threading.ExecutionContext:Capture():System.Threading.ExecutionContext
        call     [rax]System.Threading.ExecutionContext:Capture():System.Threading.ExecutionContext
        mov      rbx, rax
        test     rbx, rbx
        jne      SHORT G_M52834_IG07
-						;; size=99 bbWeight=1 PerfScore 15.50
+						;; size=111 bbWeight=1 PerfScore 19.75
 G_M52834_IG06:
-       or       dword ptr [r13+0x34], 0xD1FFAB1E
+       or       dword ptr [r15+0x34], 0xD1FFAB1E
        jmp      SHORT G_M52834_IG08
 						;; size=10 bbWeight=0.50 PerfScore 2.50
 G_M52834_IG07:
        mov      rdi, 0xD1FFAB1E      ; const ptr
        cmp      rbx, gword ptr [rdi]
        je       SHORT G_M52834_IG08
-       mov      rdi, r13
+       mov      rdi, r15
        mov      rax, 0xD1FFAB1E      ; code for System.Threading.Tasks.Task:EnsureContingentPropertiesInitializedUnsafe():System.Threading.Tasks.Task+ContingentProperties:this
        call     [rax]System.Threading.Tasks.Task:EnsureContingentPropertiesInitializedUnsafe():System.Threading.Tasks.Task+ContingentProperties:this
        lea      rdi, bword ptr [rax+0x08]
        mov      rsi, rbx
        call     CORINFO_HELP_ASSIGN_REF
 						;; size=42 bbWeight=0.50 PerfScore 4.75
 G_M52834_IG08:
-       mov      rdi, r13
+       mov      rdi, r15
        xor      esi, esi
        mov      rax, 0xD1FFAB1E      ; code for System.Threading.Tasks.Task:ScheduleAndStart(ubyte):this
        call     [rax]System.Threading.Tasks.Task:ScheduleAndStart(ubyte):this
-       mov      rax, r13
+       mov      rax, r15
 						;; size=20 bbWeight=1 PerfScore 4.00
 G_M52834_IG09:
        add      rsp, 16
        pop      rbx
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
 						;; size=13 bbWeight=1 PerfScore 3.75
 G_M52834_IG10:
        mov      rdi, 0xD1FFAB1E
        mov      esi, 0x7FF
        call     CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
        jmp      G_M52834_IG03
 						;; size=25 bbWeight=0 PerfScore 0.00
 G_M52834_IG11:
        mov      rax, 0xD1FFAB1E      ; code for System.MulticastDelegate:ThrowNullThisInDelegateToInstance()
        call     [rax]System.MulticastDelegate:ThrowNullThisInDelegateToInstance()
        int3     
 						;; size=13 bbWeight=0 PerfScore 0.00
 G_M52834_IG12:
+       mov      edi, 47
+       mov      rax, 0xD1FFAB1E      ; code for System.ThrowHelper:ThrowArgumentNullException(int)
+       call     [rax]System.ThrowHelper:ThrowArgumentNullException(int)
+       int3     
+						;; size=18 bbWeight=0 PerfScore 0.00
+G_M52834_IG13:
        mov      edi, 28
        mov      rax, 0xD1FFAB1E      ; code for System.ThrowHelper:ThrowArgumentNullException(int)
        call     [rax]System.ThrowHelper:ThrowArgumentNullException(int)
        int3     
 						;; size=18 bbWeight=0 PerfScore 0.00
 
-; Total bytes of code 378, prolog size 17, PerfScore 86.68, instruction count 84, allocated bytes for code 378 (MethodHash=9517319d) for method System.IO.TextWriter:FlushAsync():System.Threading.Tasks.Task:this (FullOpts)
+; Total bytes of code 421, prolog size 17, PerfScore 97.48, instruction count 93, allocated bytes for code 421 (MethodHash=9517319d) for method System.IO.TextWriter:FlushAsync():System.Threading.Tasks.Task:this (FullOpts)
43 (10.31 % of base) - System.Threading.Tasks.Task:ThrowAsync(System.Exception,System.Threading.SynchronizationContext)
 ; Assembly listing for method System.Threading.Tasks.Task:ThrowAsync(System.Exception,System.Threading.SynchronizationContext) (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; 0 single block inlinees; 2 inlinees without PGO data
 ; Final local variable assignments
 ;
-;  V00 arg0         [V00,T03] (  4,  3   )     ref  ->  [rbp-0x18]  class-hnd EH-live single-def <System.Exception>
+;  V00 arg0         [V00,T05] (  4,  3   )     ref  ->  [rbp-0x18]  class-hnd EH-live single-def <System.Exception>
 ;  V01 arg1         [V01,T02] (  5,  5   )     ref  ->  rbx         class-hnd single-def <System.Threading.SynchronizationContext>
 ;  V02 loc0         [V02,T10] (  4,  3   )     ref  ->  [rbp-0x20]  do-not-enreg[M] class-hnd EH-live <System.Runtime.ExceptionServices.ExceptionDispatchInfo>
 ;* V03 loc1         [V03    ] (  0,  0   )     ref  ->  zero-ref    class-hnd single-def <System.Exception>
 ;# V04 OutArgs      [V04    ] (  1,  1   )  struct ( 0) [rsp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-;  V05 tmp1         [V05,T06] (  2,  4   )     ref  ->  rdi         class-hnd exact single-def "dup spill" <System.Threading.WaitCallback>
-;  V06 tmp2         [V06,T04] (  4,  4   )     ref  ->  rdi        
+;  V05 tmp1         [V05,T08] (  2,  4   )     ref  ->  rdi         class-hnd exact single-def "dup spill" <System.Threading.WaitCallback>
+;  V06 tmp2         [V06,T06] (  4,  4   )     ref  ->  rdi        
 ;  V07 tmp3         [V07,T00] (  5, 10   )     ref  ->  rbx         class-hnd exact single-def "NewObj constructor temp" <System.Threading.WaitCallback>
-;  V08 tmp4         [V08,T07] (  2,  4   )     ref  ->  rsi         class-hnd exact single-def "dup spill" <System.Threading.SendOrPostCallback>
+;  V08 tmp4         [V08,T09] (  2,  4   )     ref  ->  rsi         class-hnd exact single-def "dup spill" <System.Threading.SendOrPostCallback>
 ;* V09 tmp5         [V09    ] (  0,  0   )     ref  ->  zero-ref    single-def
-;  V10 tmp6         [V10,T05] (  4,  4   )     ref  ->  rsi        
+;  V10 tmp6         [V10,T07] (  4,  4   )     ref  ->  rsi        
 ;  V11 tmp7         [V11,T01] (  5, 10   )     ref  ->  r15         class-hnd exact single-def "NewObj constructor temp" <System.Threading.SendOrPostCallback>
 ;  V12 tmp8         [V12,T14] (  2,  0   )     ref  ->  rbx         class-hnd single-def "impSpillSpecialSideEff" <System.Exception>
 ;  V13 tmp9         [V13,T12] (  4,  0   )     ref  ->  r15         class-hnd exact single-def "dup spill" <System.Exception[]>
 ;  V14 tmp10        [V14,T13] (  3,  0   )     ref  ->  rbx         class-hnd exact single-def "NewObj constructor temp" <System.AggregateException>
-;  V15 tmp11        [V15,T08] (  2,  4   )     ref  ->  rsi         class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.Task+<>c>
-;  V16 tmp12        [V16,T09] (  2,  4   )     ref  ->  rsi         class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.Task+<>c>
+;  V15 tmp11        [V15,T03] (  3,  6   )     ref  ->  rsi         class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.Task+<>c>
+;  V16 tmp12        [V16,T04] (  3,  6   )     ref  ->  rsi         class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.Task+<>c>
 ;  V17 PSPSym       [V17,T11] (  1,  1   )    long  ->  [rbp-0x30]  do-not-enreg[V] "PSPSym"
 ;
 ; Lcl frame size = 32
 
 G_M13169_IG01:
        push     rbp
        push     r15
        push     rbx
        sub      rsp, 32
        lea      rbp, [rsp+0x30]
        mov      qword ptr [rbp-0x30], rsp
        mov      gword ptr [rbp-0x18], rdi
        mov      rbx, rsi
 						;; size=24 bbWeight=1 PerfScore 6.00
 G_M13169_IG02:
        mov      rax, 0xD1FFAB1E      ; code for System.Runtime.ExceptionServices.ExceptionDispatchInfo:Capture(System.Exception):System.Runtime.ExceptionServices.ExceptionDispatchInfo
        call     [rax]System.Runtime.ExceptionServices.ExceptionDispatchInfo:Capture(System.Exception):System.Runtime.ExceptionServices.ExceptionDispatchInfo
        mov      gword ptr [rbp-0x20], rax
        test     rbx, rbx
-       je       SHORT G_M13169_IG05
-						;; size=21 bbWeight=1 PerfScore 5.50
+       je       G_M13169_IG06
+						;; size=25 bbWeight=1 PerfScore 5.50
 G_M13169_IG03:
        mov      rdi, 0xD1FFAB1E      ; data for System.Threading.Tasks.Task+<>c:<>9__128_0
        mov      rsi, gword ptr [rdi]
        test     rsi, rsi
        jne      SHORT G_M13169_IG04
        mov      rdi, 0xD1FFAB1E      ; System.Threading.SendOrPostCallback
        call     CORINFO_HELP_NEWSFAST
        mov      r15, rax
        mov      rdi, 0xD1FFAB1E      ; const ptr
        mov      rsi, gword ptr [rdi]
+       test     rsi, rsi
+       je       SHORT G_M13169_IG05
        lea      rdi, bword ptr [r15+0x08]
        call     CORINFO_HELP_ASSIGN_REF
        mov      rdi, 0xD1FFAB1E      ; code for System.Threading.Tasks.Task+<>c:<ThrowAsync>b__128_0(System.Object):this
        mov      qword ptr [r15+0x18], rdi
        mov      rdi, 0xD1FFAB1E      ; data for System.Threading.Tasks.Task+<>c:<>9__128_0
        mov      rsi, r15
        call     CORINFO_HELP_ASSIGN_REF
        mov      rsi, r15
-						;; size=93 bbWeight=1 PerfScore 11.75
+						;; size=98 bbWeight=1 PerfScore 13.00
 G_M13169_IG04:
        mov      rdi, rbx
        mov      rdx, gword ptr [rbp-0x20]
        mov      rax, qword ptr [rbx]
        mov      rax, qword ptr [rax+0x40]
        call     [rax+0x28]System.Threading.SynchronizationContext:Post(System.Threading.SendOrPostCallback,System.Object):this
-       jmp      SHORT G_M13169_IG07
-						;; size=19 bbWeight=1 PerfScore 10.25
+       jmp      G_M13169_IG08
+						;; size=22 bbWeight=1 PerfScore 10.25
 G_M13169_IG05:
+       mov      rax, 0xD1FFAB1E      ; code for System.MulticastDelegate:ThrowNullThisInDelegateToInstance()
+       call     [rax]System.MulticastDelegate:ThrowNullThisInDelegateToInstance()
+       int3     
+						;; size=13 bbWeight=0 PerfScore 0.00
+G_M13169_IG06:
        mov      rdi, 0xD1FFAB1E      ; data for System.Threading.Tasks.Task+<>c:<>9__128_1
        mov      rdi, gword ptr [rdi]
        test     rdi, rdi
-       jne      SHORT G_M13169_IG06
+       jne      SHORT G_M13169_IG07
        mov      rdi, 0xD1FFAB1E      ; System.Threading.WaitCallback
        call     CORINFO_HELP_NEWSFAST
        mov      rbx, rax
        mov      rdi, 0xD1FFAB1E      ; const ptr
        mov      rsi, gword ptr [rdi]
+       test     rsi, rsi
+       je       SHORT G_M13169_IG10
        lea      rdi, bword ptr [rbx+0x08]
        call     CORINFO_HELP_ASSIGN_REF
        mov      rdi, 0xD1FFAB1E      ; code for System.Threading.Tasks.Task+<>c:<ThrowAsync>b__128_1(System.Object):this
        mov      qword ptr [rbx+0x18], rdi
        mov      rdi, 0xD1FFAB1E      ; data for System.Threading.Tasks.Task+<>c:<>9__128_1
        mov      rsi, rbx
        call     CORINFO_HELP_ASSIGN_REF
        mov      rdi, rbx
-						;; size=93 bbWeight=1 PerfScore 11.75
-G_M13169_IG06:
+						;; size=98 bbWeight=1 PerfScore 13.00
+G_M13169_IG07:
        mov      rsi, gword ptr [rbp-0x20]
        mov      rax, 0xD1FFAB1E      ; code for System.Threading.ThreadPool:QueueUserWorkItem(System.Threading.WaitCallback,System.Object):ubyte
        call     [rax]System.Threading.ThreadPool:QueueUserWorkItem(System.Threading.WaitCallback,System.Object):ubyte
 						;; size=16 bbWeight=1 PerfScore 4.25
-G_M13169_IG07:
+G_M13169_IG08:
        nop      
 						;; size=1 bbWeight=1 PerfScore 0.25
-G_M13169_IG08:
+G_M13169_IG09:
        add      rsp, 32
        pop      rbx
        pop      r15
        pop      rbp
        ret      
 						;; size=9 bbWeight=1 PerfScore 2.75
-G_M13169_IG09:
+G_M13169_IG10:
+       mov      rax, 0xD1FFAB1E      ; code for System.MulticastDelegate:ThrowNullThisInDelegateToInstance()
+       call     [rax]System.MulticastDelegate:ThrowNullThisInDelegateToInstance()
+       int3     
+						;; size=13 bbWeight=0 PerfScore 0.00
+G_M13169_IG11:
        push     rbp
        push     r15
        push     rbx
        sub      rsp, 16
        mov      rbp, qword ptr [rdi]
        mov      qword ptr [rsp], rbp
        lea      rbp, [rbp+0x30]
 						;; size=19 bbWeight=0 PerfScore 0.00
-G_M13169_IG10:
+G_M13169_IG12:
        mov      rbx, rsi
        mov      rdi, 0xD1FFAB1E      ; System.Exception[]
        mov      esi, 2
        call     CORINFO_HELP_NEWARR_1_OBJ
        mov      r15, rax
        lea      rdi, bword ptr [r15+0x10]
        mov      rsi, gword ptr [rbp-0x18]
        call     CORINFO_HELP_ASSIGN_REF
        lea      rdi, bword ptr [r15+0x18]
        mov      rsi, rbx
        call     CORINFO_HELP_ASSIGN_REF
        mov      rdi, 0xD1FFAB1E      ; System.AggregateException
        call     CORINFO_HELP_NEWSFAST
        mov      rbx, rax
        mov      rdi, rbx
        mov      rsi, r15
        mov      rax, 0xD1FFAB1E      ; code for System.AggregateException:.ctor(System.Exception[]):this
        call     [rax]System.AggregateException:.ctor(System.Exception[]):this
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.Runtime.ExceptionServices.ExceptionDispatchInfo:Capture(System.Exception):System.Runtime.ExceptionServices.ExceptionDispatchInfo
        call     [rax]System.Runtime.ExceptionServices.ExceptionDispatchInfo:Capture(System.Exception):System.Runtime.ExceptionServices.ExceptionDispatchInfo
        mov      gword ptr [rbp-0x20], rax
-       lea      rax, G_M13169_IG05
+       lea      rax, G_M13169_IG06
 						;; size=113 bbWeight=0 PerfScore 0.00
-G_M13169_IG11:
+G_M13169_IG13:
        add      rsp, 16
        pop      rbx
        pop      r15
        pop      rbp
        ret      
 						;; size=9 bbWeight=0 PerfScore 0.00
 
-; Total bytes of code 417, prolog size 24, PerfScore 94.20, instruction count 97, allocated bytes for code 417 (MethodHash=7c9bcc8e) for method System.Threading.Tasks.Task:ThrowAsync(System.Exception,System.Threading.SynchronizationContext) (FullOpts)
+; Total bytes of code 460, prolog size 24, PerfScore 101.00, instruction count 107, allocated bytes for code 460 (MethodHash=7c9bcc8e) for method System.Threading.Tasks.Task:ThrowAsync(System.Exception,System.Threading.SynchronizationContext) (FullOpts)
42 (10.94 % of base) - System.IO.Stream:FlushAsync(System.Threading.CancellationToken):System.Threading.Tasks.Task:this
 ; Assembly listing for method System.IO.Stream:FlushAsync(System.Threading.CancellationToken):System.Threading.Tasks.Task: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; 4 single block inlinees; 5 inlinees without PGO data
 ; Final local variable assignments
 ;
-;  V00 this         [V00,T03] (  3,  3   )     ref  ->  rbx         this class-hnd single-def <System.IO.Stream>
+;  V00 this         [V00,T04] (  3,  3   )     ref  ->  rbx         this class-hnd single-def <System.IO.Stream>
 ;* V01 arg1         [V01    ] (  0,  0   )  struct ( 8) zero-ref    single-def <System.Threading.CancellationToken>
 ;  V02 OutArgs      [V02    ] (  1,  1   )  struct ( 8) [rsp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-;  V03 tmp1         [V03,T05] (  2,  4   )     ref  ->  r14         class-hnd single-def "dup spill" <System.Action`1[System.Object]>
-;* V04 tmp2         [V04,T09] (  0,  0   )     ref  ->  zero-ref    class-hnd exact single-def "impAppendStmt" <System.Threading.Tasks.TaskFactory>
+;  V03 tmp1         [V03,T06] (  2,  4   )     ref  ->  r13         class-hnd single-def "dup spill" <System.Action`1[System.Object]>
+;  V04 tmp2         [V04,T07] (  2,  4   )     ref  ->  r14         class-hnd exact single-def "impAppendStmt" <System.Threading.Tasks.TaskFactory>
 ;* V05 tmp3         [V05    ] (  0,  0   )     ref  ->  zero-ref    single-def
-;  V06 tmp4         [V06,T04] (  5,  4.50)     ref  ->  r14        
-;  V07 tmp5         [V07,T02] (  5,  5   )     ref  ->  r14         class-hnd exact single-def "NewObj constructor temp" <System.Action`1[System.Object]>
-;  V08 tmp6         [V08,T08] (  3,  3   )     ref  ->  rsi         class-hnd exact single-def "Inlining Arg" <System.IO.Stream+<>c>
-;  V09 tmp7         [V09,T06] (  2,  4   )     ref  ->  r13         class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.ThreadPoolTaskScheduler>
+;  V06 tmp4         [V06,T05] (  5,  4.50)     ref  ->  r13        
+;  V07 tmp5         [V07,T03] (  5,  5   )     ref  ->  r13         class-hnd exact single-def "NewObj constructor temp" <System.Action`1[System.Object]>
+;  V08 tmp6         [V08,T09] (  3,  3   )     ref  ->  rsi         class-hnd exact single-def "Inlining Arg" <System.IO.Stream+<>c>
+;  V09 tmp7         [V09,T02] (  3,  6   )     ref  ->  r12         class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.ThreadPoolTaskScheduler>
 ;* V10 tmp8         [V10    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline return value spill temp" <System.Threading.Tasks.Task>
 ;* V11 tmp9         [V11    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inline return value spill temp" <System.Threading.Tasks.Task>
-;  V12 tmp10        [V12,T00] (  7, 11   )     ref  ->  r12         class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.Task>
+;  V12 tmp10        [V12,T00] (  7, 11   )     ref  ->  r14         class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.Task>
 ;* V13 tmp11        [V13    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact single-def "Inline stloc first use temp" <System.Threading.Tasks.Task>
 ;  V14 tmp12        [V14,T01] (  4,  6   )     ref  ->  rbx         class-hnd exact single-def "Inlining Arg" <System.Threading.ExecutionContext>
-;  V15 tmp13        [V15,T07] (  2,  2   )     ref  ->  r15         single-def "field V01._source (fldOffset=0x0)" P-INDEP
+;  V15 tmp13        [V15,T08] (  2,  2   )     ref  ->  r15         single-def "field V01._source (fldOffset=0x0)" P-INDEP
 ;* V16 cse0         [V16,T10] (  0,  0   )    long  ->  zero-ref    "CSE - aggressive"
 ;
 ; Lcl frame size = 8
 
 G_M48555_IG01:
        push     rbp
        push     r15
        push     r14
        push     r13
        push     r12
        push     rbx
        push     rax
        lea      rbp, [rsp+0x30]
        mov      rbx, rdi
        mov      r15, rsi
 						;; size=22 bbWeight=1 PerfScore 8.00
 G_M48555_IG02:
+       mov      rdi, 0xD1FFAB1E      ; const ptr
+       mov      r14, gword ptr [rdi]
        mov      rdi, 0xD1FFAB1E      ; global ptr
        test     byte  ptr [rdi], 1
        je       G_M48555_IG10
-						;; size=19 bbWeight=1 PerfScore 4.25
+						;; size=32 bbWeight=1 PerfScore 6.50
 G_M48555_IG03:
        mov      rdi, 0xD1FFAB1E      ; data for System.IO.Stream+<>c:<>9__35_0
-       mov      r14, gword ptr [rdi]
-       test     r14, r14
+       mov      r13, gword ptr [rdi]
+       test     r13, r13
        jne      SHORT G_M48555_IG05
 						;; size=18 bbWeight=1 PerfScore 3.50
 G_M48555_IG04:
        mov      rdi, 0xD1FFAB1E      ; System.Action`1[System.Object]
        call     CORINFO_HELP_NEWSFAST
-       mov      r14, rax
+       mov      r13, rax
        mov      rdi, 0xD1FFAB1E      ; data for System.IO.Stream+<>c:<>9
        mov      rsi, gword ptr [rdi]
        test     rsi, rsi
        je       G_M48555_IG11
-       lea      rdi, bword ptr [r14+0x08]
+       lea      rdi, bword ptr [r13+0x08]
        call     CORINFO_HELP_ASSIGN_REF
        mov      rdi, 0xD1FFAB1E      ; code for System.IO.Stream+<>c:<FlushAsync>b__35_0(System.Object):this
-       mov      qword ptr [r14+0x18], rdi
+       mov      qword ptr [r13+0x18], rdi
        mov      rdi, 0xD1FFAB1E      ; data for System.IO.Stream+<>c:<>9__35_0
-       mov      rsi, r14
+       mov      rsi, r13
        call     CORINFO_HELP_ASSIGN_REF
 						;; size=81 bbWeight=0.50 PerfScore 4.62
 G_M48555_IG05:
        mov      rdi, 0xD1FFAB1E      ; const ptr
-       mov      r13, gword ptr [rdi]
+       mov      r12, gword ptr [rdi]
+       cmp      byte  ptr [r14], r14b
+       test     r12, r12
+       je       G_M48555_IG12
        mov      rdi, 0xD1FFAB1E      ; System.Threading.Tasks.Task
        call     CORINFO_HELP_NEWSFAST
-       mov      r12, rax
-       test     r14, r14
-       je       G_M48555_IG12
-       mov      gword ptr [rsp], r13
-       mov      rdi, r12
-       mov      rsi, r14
+       mov      r14, rax
+       test     r13, r13
+       je       G_M48555_IG13
+       mov      gword ptr [rsp], r12
+       mov      rdi, r14
+       mov      rsi, r13
        mov      rdx, rbx
        mov      rcx, r15
        mov      r8d, 8
        mov      r9d, 0x2000
        mov      rax, 0xD1FFAB1E      ; code for System.Threading.Tasks.Task:TaskConstructorCore(System.Delegate,System.Object,System.Threading.CancellationToken,int,int,System.Threading.Tasks.TaskScheduler):this
        call     [rax]System.Threading.Tasks.Task:TaskConstructorCore(System.Delegate,System.Object,System.Threading.CancellationToken,int,int,System.Threading.Tasks.TaskScheduler):this
        mov      rax, 0xD1FFAB1E      ; code for System.Threading.ExecutionContext:Capture():System.Threading.ExecutionContext
        call     [rax]System.Threading.ExecutionContext:Capture():System.Threading.ExecutionContext
        mov      rbx, rax
        test     rbx, rbx
        jne      SHORT G_M48555_IG07
-						;; size=100 bbWeight=1 PerfScore 15.50
+						;; size=112 bbWeight=1 PerfScore 19.75
 G_M48555_IG06:
-       or       dword ptr [r12+0x34], 0xD1FFAB1E
+       or       dword ptr [r14+0x34], 0xD1FFAB1E
        jmp      SHORT G_M48555_IG08
-						;; size=11 bbWeight=0.50 PerfScore 2.50
+						;; size=10 bbWeight=0.50 PerfScore 2.50
 G_M48555_IG07:
        mov      rdi, 0xD1FFAB1E      ; const ptr
        cmp      rbx, gword ptr [rdi]
        je       SHORT G_M48555_IG08
-       mov      rdi, r12
+       mov      rdi, r14
        mov      rax, 0xD1FFAB1E      ; code for System.Threading.Tasks.Task:EnsureContingentPropertiesInitializedUnsafe():System.Threading.Tasks.Task+ContingentProperties:this
        call     [rax]System.Threading.Tasks.Task:EnsureContingentPropertiesInitializedUnsafe():System.Threading.Tasks.Task+ContingentProperties:this
        lea      rdi, bword ptr [rax+0x08]
        mov      rsi, rbx
        call     CORINFO_HELP_ASSIGN_REF
 						;; size=42 bbWeight=0.50 PerfScore 4.75
 G_M48555_IG08:
-       mov      rdi, r12
+       mov      rdi, r14
        xor      esi, esi
        mov      rax, 0xD1FFAB1E      ; code for System.Threading.Tasks.Task:ScheduleAndStart(ubyte):this
        call     [rax]System.Threading.Tasks.Task:ScheduleAndStart(ubyte):this
-       mov      rax, r12
+       mov      rax, r14
 						;; size=20 bbWeight=1 PerfScore 4.00
 G_M48555_IG09:
        add      rsp, 8
        pop      rbx
        pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
 						;; size=15 bbWeight=1 PerfScore 4.25
 G_M48555_IG10:
        mov      rdi, 0xD1FFAB1E
        mov      esi, 0x7E5
        call     CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
        jmp      G_M48555_IG03
 						;; size=25 bbWeight=0 PerfScore 0.00
 G_M48555_IG11:
        mov      rax, 0xD1FFAB1E      ; code for System.MulticastDelegate:ThrowNullThisInDelegateToInstance()
        call     [rax]System.MulticastDelegate:ThrowNullThisInDelegateToInstance()
        int3     
 						;; size=13 bbWeight=0 PerfScore 0.00
 G_M48555_IG12:
+       mov      edi, 47
+       mov      rax, 0xD1FFAB1E      ; code for System.ThrowHelper:ThrowArgumentNullException(int)
+       call     [rax]System.ThrowHelper:ThrowArgumentNullException(int)
+       int3     
+						;; size=18 bbWeight=0 PerfScore 0.00
+G_M48555_IG13:
        mov      edi, 28
        mov      rax, 0xD1FFAB1E      ; code for System.ThrowHelper:ThrowArgumentNullException(int)
        call     [rax]System.ThrowHelper:ThrowArgumentNullException(int)
        int3     
 						;; size=18 bbWeight=0 PerfScore 0.00
 
-; Total bytes of code 384, prolog size 16, PerfScore 89.78, instruction count 87, allocated bytes for code 384 (MethodHash=46d94254) for method System.IO.Stream:FlushAsync(System.Threading.CancellationToken):System.Threading.Tasks.Task:this (FullOpts)
+; Total bytes of code 426, prolog size 16, PerfScore 100.48, instruction count 96, allocated bytes for code 426 (MethodHash=46d94254) for method System.IO.Stream:FlushAsync(System.Threading.CancellationToken):System.Threading.Tasks.Task:this (FullOpts)
41 (1.42 % of base) - System.Reflection.AssemblyNameFormatter:ComputeDisplayName(System.String,System.Version,System.String,ubyte[],int,int):System.String
 ; Assembly listing for method System.Reflection.AssemblyNameFormatter:ComputeDisplayName(System.String,System.Version,System.String,ubyte[],int,int):System.String (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; 70 single block inlinees; 93 inlinees without PGO data
 ; Final local variable assignments
 ;
 ;  V00 arg0         [V00,T34] (  3,  3   )     ref  ->  rsi         class-hnd single-def <System.String>
 ;  V01 arg1         [V01,T31] (  7,  5   )     ref  ->  r15         class-hnd single-def <System.Version>
 ;  V02 arg2         [V02,T32] (  7,  5   )     ref  ->  r14         class-hnd <System.String>
 ;  V03 arg3         [V03,T30] (  8,  5.50)     ref  ->  rbx         class-hnd single-def <ubyte[]>
 ;  V04 arg4         [V04,T35] (  3,  3   )     int  ->  r13         single-def
 ;  V05 arg5         [V05,T36] (  3,  3   )     int  ->  r12         single-def
 ;  V06 loc0         [V06    ] (123, 64   )  struct (32) [rbp-0x48]  do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Text.ValueStringBuilder>
 ;* V07 loc1         [V07    ] (  0,  0   )  struct (16) zero-ref    <System.Span`1[ushort]>
-;  V08 loc2         [V08,T106] (  3,  1.50)  ushort  ->  [rbp-0x4C]  spill-single-def
-;  V09 loc3         [V09,T107] (  3,  1.50)  ushort  ->  [rbp-0x50]  spill-single-def
-;  V10 loc4         [V10,T108] (  3,  1.50)  ushort  ->  [rbp-0x54]  spill-single-def
-;  V11 loc5         [V11,T109] (  3,  1.50)  ushort  ->  r15        
+;  V08 loc2         [V08,T110] (  3,  1.50)  ushort  ->  [rbp-0x4C]  spill-single-def
+;  V09 loc3         [V09,T111] (  3,  1.50)  ushort  ->  [rbp-0x50]  spill-single-def
+;  V10 loc4         [V10,T112] (  3,  1.50)  ushort  ->  [rbp-0x54]  spill-single-def
+;  V11 loc5         [V11,T113] (  3,  1.50)  ushort  ->  r15        
 ;# V12 OutArgs      [V12    ] (  1,  1   )  struct ( 0) [rsp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
 ;* V13 tmp1         [V13    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.Span`1[ushort]>
 ;* V14 tmp2         [V14    ] (  0,  0   )  struct (16) zero-ref    "impAppendStmt" <System.ReadOnlySpan`1[ubyte]>
 ;* V15 tmp3         [V15    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.Span`1[ushort]>
 ;  V16 tmp4         [V16,T139] (  3,  0   )     ref  ->  rbx         class-hnd exact single-def "NewObj constructor temp" <System.ArgumentException>
 ;  V17 tmp5         [V17,T46] (  2,  4   )    long  ->  rdi         "Inlining Arg"
 ;* V18 tmp6         [V18    ] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
 ;* V19 tmp7         [V19    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;  V20 tmp8         [V20,T55] (  5,  2.50)     int  ->  [rbp-0x58]  spill-single-def "Inline stloc first use temp"
 ;* V21 tmp9         [V21    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.Span`1[ushort]>
 ;* V22 tmp10        [V22    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.Span`1[ushort]>
 ;  V23 tmp11        [V23,T73] (  2,  2   )   byref  ->  rdi         single-def "Inlining Arg"
 ;  V24 tmp12        [V24,T86] (  2,  2   )     int  ->  rdx         "Inlining Arg"
 ;* V25 tmp13        [V25    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.Span`1[ushort]>
 ;* V26 tmp14        [V26    ] (  0,  0   )   byref  ->  zero-ref    single-def "Inlining Arg"
 ;  V27 tmp15        [V27,T74] (  2,  2   )   byref  ->  rcx         single-def "Inlining Arg"
 ;  V28 tmp16        [V28    ] (  3,  3   )  ushort  ->  [rbp-0x5C]  do-not-enreg[X] addr-exposed ld-addr-op "Inlining Arg"
 ;* V29 tmp17        [V29    ] (  0,  0   )  ushort  ->  zero-ref    ld-addr-op "Inline ldloca(s) first use temp"
-;  V30 tmp18        [V30,T116] (  2,  1   )   byref  ->  rdi         single-def
+;  V30 tmp18        [V30,T120] (  2,  1   )   byref  ->  rdi         single-def
 ;  V31 tmp19        [V31    ] (  3,  1.50)     int  ->  [rbp-0x68]  do-not-enreg[X] addr-exposed ld-addr-op "Inline ldloca(s) first use temp"
 ;* V32 tmp20        [V32    ] (  0,  0   )  struct (16) zero-ref    multireg-arg "impAppendStmt" <System.Span`1[ushort]>
 ;* V33 tmp21        [V33    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
 ;  V34 tmp22        [V34,T38] (  4,  4   )     int  ->  rax         "Inlining Arg"
 ;* V35 tmp23        [V35    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.Span`1[ushort]>
 ;  V36 tmp24        [V36,T48] (  3,  3   )   byref  ->  rcx         single-def "Inlining Arg"
 ;  V37 tmp25        [V37,T87] (  2,  2   )     int  ->  rdx         "Inlining Arg"
 ;* V38 tmp26        [V38    ] (  0,  0   )  struct (16) zero-ref    "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
 ;* V39 tmp27        [V39    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
 ;  V40 tmp28        [V40,T127] (  2,  1   )   ubyte  ->  rdi         "Inline return value spill temp"
 ;* V41 tmp29        [V41    ] (  0,  0   )  struct (16) zero-ref    multireg-arg ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
 ;  V42 tmp30        [V42,T39] (  4,  4   )     int  ->  rdi         "Inlining Arg"
-;  V43 tmp31        [V43,T110] (  3,  1.50)   ubyte  ->  rdi         "Inline return value spill temp"
+;  V43 tmp31        [V43,T114] (  3,  1.50)   ubyte  ->  rdi         "Inline return value spill temp"
 ;  V44 tmp32        [V44,T66] (  4,  2   )     int  ->  rax         "Inline stloc first use temp"
 ;* V45 tmp33        [V45    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.Span`1[ushort]>
 ;  V46 tmp34        [V46    ] (  3,  1.50)   byref  ->  [rbp-0x70]  must-init pinned "Inline stloc first use temp"
 ;* V47 tmp35        [V47    ] (  0,  0   )    long  ->  zero-ref    "Inline stloc first use temp"
 ;* V48 tmp36        [V48    ] (  0,  0   )    long  ->  zero-ref    "Inline stloc first use temp"
 ;* V49 tmp37        [V49    ] (  0,  0   )  struct (16) zero-ref    "ReadOnlySpan<T> for CreateSpan<T>" <System.ReadOnlySpan`1[long]>
 ;* V50 tmp38        [V50    ] (  0,  0   )  struct (16) zero-ref    "Inline stloc first use temp" <System.ReadOnlySpan`1[long]>
 ;* V51 tmp39        [V51    ] (  0,  0   )   byref  ->  zero-ref    "impAppendStmt"
 ;* V52 tmp40        [V52    ] (  0,  0   )    long  ->  zero-ref    "Inline stloc first use temp"
 ;* V53 tmp41        [V53    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[long]>
 ;* V54 tmp42        [V54    ] (  0,  0   )     int  ->  zero-ref    "Inline return value spill temp"
 ;* V55 tmp43        [V55    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
 ;* V56 tmp44        [V56    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.Span`1[ushort]>
 ;* V57 tmp45        [V57    ] (  0,  0   )    long  ->  zero-ref    "Inline return value spill temp"
 ;  V58 tmp46        [V58,T00] ( 10, 38   )     int  ->  registers   "Inlining Arg"
 ;  V59 tmp47        [V59,T05] (  6, 27   )    long  ->  rax         "Inlining Arg"
 ;* V60 tmp48        [V60    ] (  0,  0   )    long  ->  zero-ref    "dup spill"
 ;* V61 tmp49        [V61    ] (  0,  0   )  struct ( 8) zero-ref    "dup spill" <System.ValueTuple`2[uint,uint]>
 ;* V62 tmp50        [V62    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
-;  V63 tmp51        [V63,T12] (  3, 12   )     int  ->  rdx         "Inline stloc first use temp"
+;  V63 tmp51        [V63,T16] (  3, 12   )     int  ->  rdx         "Inline stloc first use temp"
 ;* V64 tmp52        [V64    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "NewObj constructor temp" <System.ValueTuple`2[uint,uint]>
 ;* V65 tmp53        [V65    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
 ;* V66 tmp54        [V66    ] (  0,  0   )    long  ->  zero-ref   
 ;* V67 tmp55        [V67    ] (  0,  0   )    long  ->  zero-ref   
-;  V68 tmp56        [V68,T22] (  2,  8   )     ref  ->  rsi        
+;  V68 tmp56        [V68,T12] (  3, 12   )     ref  ->  rsi        
 ;* V69 tmp57        [V69    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
 ;* V70 tmp58        [V70    ] (  0,  0   )    long  ->  zero-ref   
 ;  V71 tmp59        [V71,T128] (  2,  1   )    long  ->  rax        
-;  V72 tmp60        [V72,T117] (  2,  1   )     ref  ->  rcx         single-def
+;  V72 tmp60        [V72,T104] (  3,  1.50)     ref  ->  rcx         single-def
 ;* V73 tmp61        [V73    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
 ;* V74 tmp62        [V74    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
 ;  V75 tmp63        [V75,T52] (  5,  2.50)     ref  ->  rax         class-hnd single-def "Inline return value spill temp" <System.String>
 ;  V76 tmp64        [V76,T88] (  2,  2   )     int  ->  rdi         "Inlining Arg"
 ;* V77 tmp65        [V77    ] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
 ;  V78 tmp66        [V78,T56] (  5,  2.50)     int  ->  rdi         "Inline stloc first use temp"
 ;  V79 tmp67        [V79,T67] (  4,  2   )     int  ->  rdi         "Inline stloc first use temp"
 ;* V80 tmp68        [V80    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline stloc first use temp" <System.Span`1[ushort]>
 ;  V81 tmp69        [V81    ] (  3,  3   )  ushort  ->  [rbp-0x74]  do-not-enreg[X] addr-exposed ld-addr-op "Inlining Arg"
 ;* V82 tmp70        [V82    ] (  0,  0   )  ushort  ->  zero-ref    ld-addr-op "Inline ldloca(s) first use temp"
-;  V83 tmp71        [V83,T118] (  2,  1   )   byref  ->  rdi         single-def
+;  V83 tmp71        [V83,T121] (  2,  1   )   byref  ->  rdi         single-def
 ;  V84 tmp72        [V84    ] (  3,  1.50)     int  ->  [rbp-0x80]  do-not-enreg[X] addr-exposed ld-addr-op "Inline ldloca(s) first use temp"
 ;* V85 tmp73        [V85    ] (  0,  0   )  struct (16) zero-ref    multireg-arg "impAppendStmt" <System.Span`1[ushort]>
 ;* V86 tmp74        [V86    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
 ;  V87 tmp75        [V87,T40] (  4,  4   )     int  ->  rax         "Inlining Arg"
 ;* V88 tmp76        [V88    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.Span`1[ushort]>
 ;  V89 tmp77        [V89,T49] (  3,  3   )   byref  ->  rcx         single-def "Inlining Arg"
 ;  V90 tmp78        [V90,T89] (  2,  2   )     int  ->  rdx         "Inlining Arg"
 ;* V91 tmp79        [V91    ] (  0,  0   )  struct (16) zero-ref    "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
 ;* V92 tmp80        [V92    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
 ;  V93 tmp81        [V93,T129] (  2,  1   )   ubyte  ->  rdi         "Inline return value spill temp"
 ;* V94 tmp82        [V94    ] (  0,  0   )  struct (16) zero-ref    multireg-arg ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
 ;  V95 tmp83        [V95,T41] (  4,  4   )     int  ->  rdi         "Inlining Arg"
-;  V96 tmp84        [V96,T111] (  3,  1.50)   ubyte  ->  rdi         "Inline return value spill temp"
+;  V96 tmp84        [V96,T115] (  3,  1.50)   ubyte  ->  rdi         "Inline return value spill temp"
 ;  V97 tmp85        [V97,T68] (  4,  2   )     int  ->  rax         "Inline stloc first use temp"
 ;* V98 tmp86        [V98    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.Span`1[ushort]>
 ;  V99 tmp87        [V99    ] (  3,  1.50)   byref  ->  [rbp-0x88]  must-init pinned "Inline stloc first use temp"
 ;* V100 tmp88       [V100    ] (  0,  0   )    long  ->  zero-ref    "Inline stloc first use temp"
 ;* V101 tmp89       [V101    ] (  0,  0   )    long  ->  zero-ref    "Inline stloc first use temp"
 ;* V102 tmp90       [V102    ] (  0,  0   )  struct (16) zero-ref    "ReadOnlySpan<T> for CreateSpan<T>" <System.ReadOnlySpan`1[long]>
 ;* V103 tmp91       [V103    ] (  0,  0   )  struct (16) zero-ref    "Inline stloc first use temp" <System.ReadOnlySpan`1[long]>
 ;* V104 tmp92       [V104    ] (  0,  0   )   byref  ->  zero-ref    "impAppendStmt"
 ;* V105 tmp93       [V105    ] (  0,  0   )    long  ->  zero-ref    "Inline stloc first use temp"
 ;* V106 tmp94       [V106    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[long]>
 ;* V107 tmp95       [V107    ] (  0,  0   )     int  ->  zero-ref    "Inline return value spill temp"
 ;* V108 tmp96       [V108    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
 ;* V109 tmp97       [V109    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.Span`1[ushort]>
 ;* V110 tmp98       [V110    ] (  0,  0   )    long  ->  zero-ref    "Inline return value spill temp"
 ;  V111 tmp99       [V111,T01] ( 10, 38   )     int  ->  registers   "Inlining Arg"
 ;  V112 tmp100      [V112,T06] (  6, 27   )    long  ->  rax         "Inlining Arg"
 ;* V113 tmp101      [V113    ] (  0,  0   )    long  ->  zero-ref    "dup spill"
 ;* V114 tmp102      [V114    ] (  0,  0   )  struct ( 8) zero-ref    "dup spill" <System.ValueTuple`2[uint,uint]>
 ;* V115 tmp103      [V115    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
-;  V116 tmp104      [V116,T13] (  3, 12   )     int  ->  rdx         "Inline stloc first use temp"
+;  V116 tmp104      [V116,T17] (  3, 12   )     int  ->  rdx         "Inline stloc first use temp"
 ;* V117 tmp105      [V117    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "NewObj constructor temp" <System.ValueTuple`2[uint,uint]>
 ;* V118 tmp106      [V118    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
 ;* V119 tmp107      [V119    ] (  0,  0   )    long  ->  zero-ref   
 ;* V120 tmp108      [V120    ] (  0,  0   )    long  ->  zero-ref   
-;  V121 tmp109      [V121,T23] (  2,  8   )     ref  ->  rsi        
+;  V121 tmp109      [V121,T13] (  3, 12   )     ref  ->  rsi        
 ;* V122 tmp110      [V122    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
 ;* V123 tmp111      [V123    ] (  0,  0   )    long  ->  zero-ref   
 ;  V124 tmp112      [V124,T130] (  2,  1   )    long  ->  rax        
-;  V125 tmp113      [V125,T119] (  2,  1   )     ref  ->  rdi         single-def
+;  V125 tmp113      [V125,T105] (  3,  1.50)     ref  ->  rdi         single-def
 ;* V126 tmp114      [V126    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
 ;* V127 tmp115      [V127    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
 ;  V128 tmp116      [V128,T53] (  5,  2.50)     ref  ->  rax         class-hnd single-def "Inline return value spill temp" <System.String>
 ;  V129 tmp117      [V129,T90] (  2,  2   )     int  ->  rdi         "Inlining Arg"
 ;* V130 tmp118      [V130    ] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
 ;  V131 tmp119      [V131,T57] (  5,  2.50)     int  ->  rdi         "Inline stloc first use temp"
 ;  V132 tmp120      [V132,T69] (  4,  2   )     int  ->  rdi         "Inline stloc first use temp"
 ;* V133 tmp121      [V133    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline stloc first use temp" <System.Span`1[ushort]>
 ;  V134 tmp122      [V134    ] (  3,  3   )  ushort  ->  [rbp-0x8C]  do-not-enreg[X] addr-exposed ld-addr-op "Inlining Arg"
 ;* V135 tmp123      [V135    ] (  0,  0   )  ushort  ->  zero-ref    ld-addr-op "Inline ldloca(s) first use temp"
-;  V136 tmp124      [V136,T120] (  2,  1   )   byref  ->  rdi         single-def
+;  V136 tmp124      [V136,T122] (  2,  1   )   byref  ->  rdi         single-def
 ;  V137 tmp125      [V137    ] (  3,  1.50)     int  ->  [rbp-0x98]  do-not-enreg[X] addr-exposed ld-addr-op "Inline ldloca(s) first use temp"
 ;* V138 tmp126      [V138    ] (  0,  0   )  struct (16) zero-ref    multireg-arg "impAppendStmt" <System.Span`1[ushort]>
 ;* V139 tmp127      [V139    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
 ;  V140 tmp128      [V140,T42] (  4,  4   )     int  ->  rax         "Inlining Arg"
 ;* V141 tmp129      [V141    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.Span`1[ushort]>
 ;  V142 tmp130      [V142,T50] (  3,  3   )   byref  ->  rcx         single-def "Inlining Arg"
 ;  V143 tmp131      [V143,T91] (  2,  2   )     int  ->  rdx         "Inlining Arg"
 ;* V144 tmp132      [V144    ] (  0,  0   )  struct (16) zero-ref    "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
 ;* V145 tmp133      [V145    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
 ;  V146 tmp134      [V146,T131] (  2,  1   )   ubyte  ->  rdi         "Inline return value spill temp"
 ;* V147 tmp135      [V147    ] (  0,  0   )  struct (16) zero-ref    multireg-arg ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
 ;  V148 tmp136      [V148,T43] (  4,  4   )     int  ->  rdi         "Inlining Arg"
-;  V149 tmp137      [V149,T112] (  3,  1.50)   ubyte  ->  rdi         "Inline return value spill temp"
+;  V149 tmp137      [V149,T116] (  3,  1.50)   ubyte  ->  rdi         "Inline return value spill temp"
 ;  V150 tmp138      [V150,T70] (  4,  2   )     int  ->  rax         "Inline stloc first use temp"
 ;* V151 tmp139      [V151    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.Span`1[ushort]>
 ;  V152 tmp140      [V152    ] (  3,  1.50)   byref  ->  [rbp-0xA0]  must-init pinned "Inline stloc first use temp"
 ;* V153 tmp141      [V153    ] (  0,  0   )    long  ->  zero-ref    "Inline stloc first use temp"
 ;* V154 tmp142      [V154    ] (  0,  0   )    long  ->  zero-ref    "Inline stloc first use temp"
 ;* V155 tmp143      [V155    ] (  0,  0   )  struct (16) zero-ref    "ReadOnlySpan<T> for CreateSpan<T>" <System.ReadOnlySpan`1[long]>
 ;* V156 tmp144      [V156    ] (  0,  0   )  struct (16) zero-ref    "Inline stloc first use temp" <System.ReadOnlySpan`1[long]>
 ;* V157 tmp145      [V157    ] (  0,  0   )   byref  ->  zero-ref    "impAppendStmt"
 ;* V158 tmp146      [V158    ] (  0,  0   )    long  ->  zero-ref    "Inline stloc first use temp"
 ;* V159 tmp147      [V159    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[long]>
 ;* V160 tmp148      [V160    ] (  0,  0   )     int  ->  zero-ref    "Inline return value spill temp"
 ;* V161 tmp149      [V161    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
 ;* V162 tmp150      [V162    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.Span`1[ushort]>
 ;* V163 tmp151      [V163    ] (  0,  0   )    long  ->  zero-ref    "Inline return value spill temp"
 ;  V164 tmp152      [V164,T02] ( 10, 38   )     int  ->  registers   "Inlining Arg"
 ;  V165 tmp153      [V165,T07] (  6, 27   )    long  ->  rax         "Inlining Arg"
 ;* V166 tmp154      [V166    ] (  0,  0   )    long  ->  zero-ref    "dup spill"
 ;* V167 tmp155      [V167    ] (  0,  0   )  struct ( 8) zero-ref    "dup spill" <System.ValueTuple`2[uint,uint]>
 ;* V168 tmp156      [V168    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
-;  V169 tmp157      [V169,T14] (  3, 12   )     int  ->  rdx         "Inline stloc first use temp"
+;  V169 tmp157      [V169,T18] (  3, 12   )     int  ->  rdx         "Inline stloc first use temp"
 ;* V170 tmp158      [V170    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "NewObj constructor temp" <System.ValueTuple`2[uint,uint]>
 ;* V171 tmp159      [V171    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
 ;* V172 tmp160      [V172    ] (  0,  0   )    long  ->  zero-ref   
 ;* V173 tmp161      [V173    ] (  0,  0   )    long  ->  zero-ref   
-;  V174 tmp162      [V174,T24] (  2,  8   )     ref  ->  rsi        
+;  V174 tmp162      [V174,T14] (  3, 12   )     ref  ->  rsi        
 ;* V175 tmp163      [V175    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
 ;* V176 tmp164      [V176    ] (  0,  0   )    long  ->  zero-ref   
 ;  V177 tmp165      [V177,T132] (  2,  1   )    long  ->  rax        
-;  V178 tmp166      [V178,T121] (  2,  1   )     ref  ->  rdi         single-def
+;  V178 tmp166      [V178,T106] (  3,  1.50)     ref  ->  rdi         single-def
 ;* V179 tmp167      [V179    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
 ;* V180 tmp168      [V180    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
 ;  V181 tmp169      [V181,T54] (  5,  2.50)     ref  ->  rax         class-hnd single-def "Inline return value spill temp" <System.String>
 ;  V182 tmp170      [V182,T92] (  2,  2   )     int  ->  rdi         "Inlining Arg"
 ;* V183 tmp171      [V183    ] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
 ;  V184 tmp172      [V184,T58] (  5,  2.50)     int  ->  rdi         "Inline stloc first use temp"
 ;  V185 tmp173      [V185,T71] (  4,  2   )     int  ->  rdi         "Inline stloc first use temp"
 ;* V186 tmp174      [V186    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline stloc first use temp" <System.Span`1[ushort]>
 ;  V187 tmp175      [V187    ] (  3,  3   )  ushort  ->  [rbp-0xA4]  do-not-enreg[X] addr-exposed ld-addr-op "Inlining Arg"
 ;* V188 tmp176      [V188    ] (  0,  0   )  ushort  ->  zero-ref    ld-addr-op "Inline ldloca(s) first use temp"
-;  V189 tmp177      [V189,T122] (  2,  1   )   byref  ->  rdi         single-def
+;  V189 tmp177      [V189,T123] (  2,  1   )   byref  ->  rdi         single-def
 ;  V190 tmp178      [V190    ] (  3,  1.50)     int  ->  [rbp-0xB0]  do-not-enreg[X] addr-exposed ld-addr-op "Inline ldloca(s) first use temp"
 ;* V191 tmp179      [V191    ] (  0,  0   )  struct (16) zero-ref    multireg-arg "impAppendStmt" <System.Span`1[ushort]>
 ;* V192 tmp180      [V192    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
 ;  V193 tmp181      [V193,T44] (  4,  4   )     int  ->  rax         "Inlining Arg"
 ;* V194 tmp182      [V194    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.Span`1[ushort]>
 ;  V195 tmp183      [V195,T51] (  3,  3   )   byref  ->  rcx         single-def "Inlining Arg"
 ;  V196 tmp184      [V196,T93] (  2,  2   )     int  ->  rdx         "Inlining Arg"
 ;* V197 tmp185      [V197    ] (  0,  0   )  struct (16) zero-ref    "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
 ;* V198 tmp186      [V198    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
 ;  V199 tmp187      [V199,T133] (  2,  1   )   ubyte  ->  rdi         "Inline return value spill temp"
 ;* V200 tmp188      [V200    ] (  0,  0   )  struct (16) zero-ref    multireg-arg ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
 ;  V201 tmp189      [V201,T45] (  4,  4   )     int  ->  rdi         "Inlining Arg"
-;  V202 tmp190      [V202,T113] (  3,  1.50)   ubyte  ->  rdi         "Inline return value spill temp"
+;  V202 tmp190      [V202,T117] (  3,  1.50)   ubyte  ->  rdi         "Inline return value spill temp"
 ;  V203 tmp191      [V203,T72] (  4,  2   )     int  ->  rax         "Inline stloc first use temp"
 ;* V204 tmp192      [V204    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.Span`1[ushort]>
 ;  V205 tmp193      [V205    ] (  3,  1.50)   byref  ->  [rbp-0xB8]  must-init pinned "Inline stloc first use temp"
 ;* V206 tmp194      [V206    ] (  0,  0   )    long  ->  zero-ref    "Inline stloc first use temp"
 ;* V207 tmp195      [V207    ] (  0,  0   )    long  ->  zero-ref    "Inline stloc first use temp"
 ;* V208 tmp196      [V208    ] (  0,  0   )  struct (16) zero-ref    "ReadOnlySpan<T> for CreateSpan<T>" <System.ReadOnlySpan`1[long]>
 ;* V209 tmp197      [V209    ] (  0,  0   )  struct (16) zero-ref    "Inline stloc first use temp" <System.ReadOnlySpan`1[long]>
 ;* V210 tmp198      [V210    ] (  0,  0   )   byref  ->  zero-ref    "impAppendStmt"
 ;* V211 tmp199      [V211    ] (  0,  0   )    long  ->  zero-ref    "Inline stloc first use temp"
 ;* V212 tmp200      [V212    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[long]>
 ;* V213 tmp201      [V213    ] (  0,  0   )     int  ->  zero-ref    "Inline return value spill temp"
 ;* V214 tmp202      [V214    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
 ;* V215 tmp203      [V215    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.Span`1[ushort]>
 ;* V216 tmp204      [V216    ] (  0,  0   )    long  ->  zero-ref    "Inline return value spill temp"
 ;  V217 tmp205      [V217,T03] ( 10, 38   )     int  ->  registers   "Inlining Arg"
 ;  V218 tmp206      [V218,T08] (  6, 27   )    long  ->  rax         "Inlining Arg"
 ;* V219 tmp207      [V219    ] (  0,  0   )    long  ->  zero-ref    "dup spill"
 ;* V220 tmp208      [V220    ] (  0,  0   )  struct ( 8) zero-ref    "dup spill" <System.ValueTuple`2[uint,uint]>
 ;* V221 tmp209      [V221    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
-;  V222 tmp210      [V222,T15] (  3, 12   )     int  ->  rdx         "Inline stloc first use temp"
+;  V222 tmp210      [V222,T19] (  3, 12   )     int  ->  rdx         "Inline stloc first use temp"
 ;* V223 tmp211      [V223    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "NewObj constructor temp" <System.ValueTuple`2[uint,uint]>
 ;* V224 tmp212      [V224    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
 ;* V225 tmp213      [V225    ] (  0,  0   )    long  ->  zero-ref   
 ;* V226 tmp214      [V226    ] (  0,  0   )    long  ->  zero-ref   
-;  V227 tmp215      [V227,T25] (  2,  8   )     ref  ->  rsi        
+;  V227 tmp215      [V227,T15] (  3, 12   )     ref  ->  rsi        
 ;* V228 tmp216      [V228    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
 ;* V229 tmp217      [V229    ] (  0,  0   )    long  ->  zero-ref   
 ;  V230 tmp218      [V230,T134] (  2,  1   )    long  ->  rax        
-;  V231 tmp219      [V231,T123] (  2,  1   )     ref  ->  rdi         single-def
+;  V231 tmp219      [V231,T107] (  3,  1.50)     ref  ->  rdi         single-def
 ;* V232 tmp220      [V232    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
 ;* V233 tmp221      [V233    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
 ;  V234 tmp222      [V234,T47] (  6,  3   )     ref  ->  rax         class-hnd single-def "Inline return value spill temp" <System.String>
 ;  V235 tmp223      [V235,T94] (  2,  2   )     int  ->  rdi         "Inlining Arg"
 ;* V236 tmp224      [V236    ] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
 ;  V237 tmp225      [V237,T59] (  5,  2.50)     int  ->  rdi         "Inline stloc first use temp"
 ;* V238 tmp226      [V238    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;  V239 tmp227      [V239,T60] (  5,  2.50)     int  ->  r15         "Inline stloc first use temp"
 ;* V240 tmp228      [V240    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.Span`1[ushort]>
 ;* V241 tmp229      [V241    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.Span`1[ushort]>
 ;  V242 tmp230      [V242,T75] (  2,  2   )   byref  ->  rdi         single-def "Inlining Arg"
 ;  V243 tmp231      [V243,T95] (  2,  2   )     int  ->  rsi         "Inlining Arg"
 ;* V244 tmp232      [V244    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.Span`1[ushort]>
 ;* V245 tmp233      [V245    ] (  0,  0   )   byref  ->  zero-ref    single-def "Inlining Arg"
 ;  V246 tmp234      [V246,T76] (  2,  2   )   byref  ->  rsi         single-def "Inlining Arg"
 ;* V247 tmp235      [V247    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;  V248 tmp236      [V248,T61] (  5,  2.50)     int  ->  r15         "Inline stloc first use temp"
 ;* V249 tmp237      [V249    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.Span`1[ushort]>
 ;* V250 tmp238      [V250    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.Span`1[ushort]>
 ;  V251 tmp239      [V251,T77] (  2,  2   )   byref  ->  rdi         single-def "Inlining Arg"
 ;  V252 tmp240      [V252,T96] (  2,  2   )     int  ->  rsi         "Inlining Arg"
 ;* V253 tmp241      [V253    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.Span`1[ushort]>
 ;* V254 tmp242      [V254    ] (  0,  0   )   byref  ->  zero-ref    single-def "Inlining Arg"
 ;  V255 tmp243      [V255,T78] (  2,  2   )   byref  ->  rsi         single-def "Inlining Arg"
 ;* V256 tmp244      [V256    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;  V257 tmp245      [V257,T62] (  5,  2.50)     int  ->  rbx         "Inline stloc first use temp"
 ;* V258 tmp246      [V258    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.Span`1[ushort]>
 ;* V259 tmp247      [V259    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.Span`1[ushort]>
 ;  V260 tmp248      [V260,T79] (  2,  2   )   byref  ->  rdi         single-def "Inlining Arg"
 ;  V261 tmp249      [V261,T97] (  2,  2   )     int  ->  rsi         "Inlining Arg"
 ;* V262 tmp250      [V262    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.Span`1[ushort]>
 ;* V263 tmp251      [V263    ] (  0,  0   )   byref  ->  zero-ref    single-def "Inlining Arg"
 ;  V264 tmp252      [V264,T80] (  2,  2   )   byref  ->  rsi         single-def "Inlining Arg"
 ;* V265 tmp253      [V265    ] (  0,  0   )  struct (16) zero-ref    multireg-arg ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ubyte]>
 ;  V266 tmp254      [V266,T63] (  5,  2.50)     int  ->  [rbp-0xBC]  spill-single-def "Inline stloc first use temp"
 ;  V267 tmp255      [V267,T33] (  6,  6   )     int  ->  rbx         "Inlining Arg"
 ;* V268 tmp256      [V268    ] (  0,  0   )  struct (16) zero-ref    multireg-arg ld-addr-op "NewObj constructor temp" <System.Span`1[ushort]>
 ;* V269 tmp257      [V269    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
 ;* V270 tmp258      [V270    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
 ;  V271 tmp259      [V271,T09] (  7, 24.50)     int  ->  rdi         "Inline stloc first use temp"
 ;  V272 tmp260      [V272,T10] (  3, 24   )   ubyte  ->  rsi         "Inlining Arg"
-;  V273 tmp261      [V273,T16] (  3, 12   )     int  ->  rsi         "Inline stloc first use temp"
-;  V274 tmp262      [V274,T17] (  3, 12   )     int  ->  rsi         "Inline stloc first use temp"
+;  V273 tmp261      [V273,T20] (  3, 12   )     int  ->  rsi         "Inline stloc first use temp"
+;  V274 tmp262      [V274,T21] (  3, 12   )     int  ->  rsi         "Inline stloc first use temp"
 ;* V275 tmp263      [V275    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.Span`1[ushort]>
 ;  V276 tmp264      [V276,T04] (  4, 32   )     int  ->  rcx         "Inlining Arg"
 ;* V277 tmp265      [V277    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;  V278 tmp266      [V278,T64] (  5,  2.50)     int  ->  rbx         "Inline stloc first use temp"
 ;* V279 tmp267      [V279    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.Span`1[ushort]>
 ;* V280 tmp268      [V280    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.Span`1[ushort]>
 ;  V281 tmp269      [V281,T81] (  2,  2   )   byref  ->  rdi         single-def "Inlining Arg"
 ;  V282 tmp270      [V282,T98] (  2,  2   )     int  ->  rsi         "Inlining Arg"
 ;* V283 tmp271      [V283    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.Span`1[ushort]>
 ;* V284 tmp272      [V284    ] (  0,  0   )   byref  ->  zero-ref    single-def "Inlining Arg"
 ;  V285 tmp273      [V285,T82] (  2,  2   )   byref  ->  rsi         single-def "Inlining Arg"
 ;* V286 tmp274      [V286    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;  V287 tmp275      [V287,T65] (  5,  2.50)     int  ->  rbx         "Inline stloc first use temp"
 ;* V288 tmp276      [V288    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.Span`1[ushort]>
 ;* V289 tmp277      [V289    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.Span`1[ushort]>
 ;  V290 tmp278      [V290,T83] (  2,  2   )   byref  ->  rdi         single-def "Inlining Arg"
 ;  V291 tmp279      [V291,T99] (  2,  2   )     int  ->  rax         "Inlining Arg"
 ;* V292 tmp280      [V292    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.Span`1[ushort]>
 ;* V293 tmp281      [V293    ] (  0,  0   )   byref  ->  zero-ref    single-def "Inlining Arg"
 ;  V294 tmp282      [V294,T84] (  2,  2   )   byref  ->  rax         single-def "Inlining Arg"
 ;* V295 tmp283      [V295    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V07._reference (fldOffset=0x0)" P-INDEP
 ;* V296 tmp284      [V296    ] (  0,  0   )     int  ->  zero-ref    "field V07._length (fldOffset=0x8)" P-INDEP
 ;  V297 tmp285      [V297,T85] (  2,  2   )   byref  ->  rdi         single-def "field V13._reference (fldOffset=0x0)" P-INDEP
 ;* V298 tmp286      [V298,T138] (  0,  0   )     int  ->  zero-ref    "field V13._length (fldOffset=0x8)" P-INDEP
 ;* V299 tmp287      [V299    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V14._reference (fldOffset=0x0)" P-INDEP
 ;* V300 tmp288      [V300    ] (  0,  0   )     int  ->  zero-ref    "field V14._length (fldOffset=0x8)" P-INDEP
-;  V301 tmp289      [V301,T20] (  3,  8.50)   byref  ->  rbx         single-def "field V15._reference (fldOffset=0x0)" P-INDEP
-;  V302 tmp290      [V302,T21] (  3,  8.50)     int  ->  rax         "field V15._length (fldOffset=0x8)" P-INDEP
+;  V301 tmp289      [V301,T24] (  3,  8.50)   byref  ->  rbx         single-def "field V15._reference (fldOffset=0x0)" P-INDEP
+;  V302 tmp290      [V302,T25] (  3,  8.50)     int  ->  rax         "field V15._length (fldOffset=0x8)" P-INDEP
 ;* V303 tmp291      [V303    ] (  0,  0   )   byref  ->  zero-ref    "field V21._reference (fldOffset=0x0)" P-INDEP
 ;* V304 tmp292      [V304    ] (  0,  0   )     int  ->  zero-ref    "field V21._length (fldOffset=0x8)" P-INDEP
 ;* V305 tmp293      [V305    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V22._reference (fldOffset=0x0)" P-INDEP
 ;* V306 tmp294      [V306    ] (  0,  0   )     int  ->  zero-ref    "field V22._length (fldOffset=0x8)" P-INDEP
 ;* V307 tmp295      [V307    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V25._reference (fldOffset=0x0)" P-INDEP
 ;* V308 tmp296      [V308    ] (  0,  0   )     int  ->  zero-ref    "field V25._length (fldOffset=0x8)" P-INDEP
 ;* V309 tmp297      [V309    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V32._reference (fldOffset=0x0)" P-INDEP
 ;* V310 tmp298      [V310    ] (  0,  0   )     int  ->  zero-ref    "field V32._length (fldOffset=0x8)" P-INDEP
 ;* V311 tmp299      [V311    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V33._reference (fldOffset=0x0)" P-INDEP
 ;* V312 tmp300      [V312    ] (  0,  0   )     int  ->  zero-ref    "field V33._length (fldOffset=0x8)" P-INDEP
 ;* V313 tmp301      [V313    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V35._reference (fldOffset=0x0)" P-INDEP
 ;* V314 tmp302      [V314    ] (  0,  0   )     int  ->  zero-ref    "field V35._length (fldOffset=0x8)" P-INDEP
 ;* V315 tmp303      [V315    ] (  0,  0   )   byref  ->  zero-ref    "field V38._reference (fldOffset=0x0)" P-INDEP
 ;* V316 tmp304      [V316    ] (  0,  0   )     int  ->  zero-ref    "field V38._length (fldOffset=0x8)" P-INDEP
 ;* V317 tmp305      [V317    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V39._reference (fldOffset=0x0)" P-INDEP
 ;* V318 tmp306      [V318    ] (  0,  0   )     int  ->  zero-ref    "field V39._length (fldOffset=0x8)" P-INDEP
 ;* V319 tmp307      [V319    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V41._reference (fldOffset=0x0)" P-INDEP
 ;* V320 tmp308      [V320    ] (  0,  0   )     int  ->  zero-ref    "field V41._length (fldOffset=0x8)" P-INDEP
 ;* V321 tmp309      [V321    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V45._reference (fldOffset=0x0)" P-INDEP
 ;* V322 tmp310      [V322    ] (  0,  0   )     int  ->  zero-ref    "field V45._length (fldOffset=0x8)" P-INDEP
 ;* V323 tmp311      [V323    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V49._reference (fldOffset=0x0)" P-INDEP
 ;* V324 tmp312      [V324    ] (  0,  0   )     int  ->  zero-ref    "field V49._length (fldOffset=0x8)" P-INDEP
 ;* V325 tmp313      [V325    ] (  0,  0   )   byref  ->  zero-ref    "field V50._reference (fldOffset=0x0)" P-INDEP
 ;* V326 tmp314      [V326    ] (  0,  0   )     int  ->  zero-ref    "field V50._length (fldOffset=0x8)" P-INDEP
 ;* V327 tmp315      [V327    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V53._reference (fldOffset=0x0)" P-INDEP
 ;* V328 tmp316      [V328    ] (  0,  0   )     int  ->  zero-ref    "field V53._length (fldOffset=0x8)" P-INDEP
 ;* V329 tmp317      [V329    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V56._reference (fldOffset=0x0)" P-INDEP
 ;* V330 tmp318      [V330    ] (  0,  0   )     int  ->  zero-ref    "field V56._length (fldOffset=0x8)" P-INDEP
 ;* V331 tmp319      [V331    ] (  0,  0   )     int  ->  zero-ref    "field V61.Item1 (fldOffset=0x0)" P-INDEP
 ;* V332 tmp320      [V332    ] (  0,  0   )     int  ->  zero-ref    "field V61.Item2 (fldOffset=0x4)" P-INDEP
 ;* V333 tmp321      [V333    ] (  0,  0   )     int  ->  zero-ref    "field V64.Item1 (fldOffset=0x0)" P-INDEP
 ;  V334 tmp322      [V334,T26] (  2,  8   )     int  ->  rdi         "field V64.Item2 (fldOffset=0x4)" P-INDEP
 ;  V335 tmp323      [V335,T124] (  2,  1   )   byref  ->  rsi         single-def "field V80._reference (fldOffset=0x0)" P-INDEP
 ;  V336 tmp324      [V336,T135] (  2,  1   )     int  ->  rcx         "field V80._length (fldOffset=0x8)" P-INDEP
 ;* V337 tmp325      [V337    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V85._reference (fldOffset=0x0)" P-INDEP
 ;* V338 tmp326      [V338    ] (  0,  0   )     int  ->  zero-ref    "field V85._length (fldOffset=0x8)" P-INDEP
 ;* V339 tmp327      [V339    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V86._reference (fldOffset=0x0)" P-INDEP
 ;* V340 tmp328      [V340    ] (  0,  0   )     int  ->  zero-ref    "field V86._length (fldOffset=0x8)" P-INDEP
 ;* V341 tmp329      [V341    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V88._reference (fldOffset=0x0)" P-INDEP
 ;* V342 tmp330      [V342    ] (  0,  0   )     int  ->  zero-ref    "field V88._length (fldOffset=0x8)" P-INDEP
 ;* V343 tmp331      [V343    ] (  0,  0   )   byref  ->  zero-ref    "field V91._reference (fldOffset=0x0)" P-INDEP
 ;* V344 tmp332      [V344    ] (  0,  0   )     int  ->  zero-ref    "field V91._length (fldOffset=0x8)" P-INDEP
 ;* V345 tmp333      [V345    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V92._reference (fldOffset=0x0)" P-INDEP
 ;* V346 tmp334      [V346    ] (  0,  0   )     int  ->  zero-ref    "field V92._length (fldOffset=0x8)" P-INDEP
 ;* V347 tmp335      [V347    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V94._reference (fldOffset=0x0)" P-INDEP
 ;* V348 tmp336      [V348    ] (  0,  0   )     int  ->  zero-ref    "field V94._length (fldOffset=0x8)" P-INDEP
 ;* V349 tmp337      [V349    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V98._reference (fldOffset=0x0)" P-INDEP
 ;* V350 tmp338      [V350    ] (  0,  0   )     int  ->  zero-ref    "field V98._length (fldOffset=0x8)" P-INDEP
 ;* V351 tmp339      [V351    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V102._reference (fldOffset=0x0)" P-INDEP
 ;* V352 tmp340      [V352    ] (  0,  0   )     int  ->  zero-ref    "field V102._length (fldOffset=0x8)" P-INDEP
 ;* V353 tmp341      [V353    ] (  0,  0   )   byref  ->  zero-ref    "field V103._reference (fldOffset=0x0)" P-INDEP
 ;* V354 tmp342      [V354    ] (  0,  0   )     int  ->  zero-ref    "field V103._length (fldOffset=0x8)" P-INDEP
 ;* V355 tmp343      [V355    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V106._reference (fldOffset=0x0)" P-INDEP
 ;* V356 tmp344      [V356    ] (  0,  0   )     int  ->  zero-ref    "field V106._length (fldOffset=0x8)" P-INDEP
 ;* V357 tmp345      [V357    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V109._reference (fldOffset=0x0)" P-INDEP
 ;* V358 tmp346      [V358    ] (  0,  0   )     int  ->  zero-ref    "field V109._length (fldOffset=0x8)" P-INDEP
 ;* V359 tmp347      [V359    ] (  0,  0   )     int  ->  zero-ref    "field V114.Item1 (fldOffset=0x0)" P-INDEP
 ;* V360 tmp348      [V360    ] (  0,  0   )     int  ->  zero-ref    "field V114.Item2 (fldOffset=0x4)" P-INDEP
 ;* V361 tmp349      [V361    ] (  0,  0   )     int  ->  zero-ref    "field V117.Item1 (fldOffset=0x0)" P-INDEP
 ;  V362 tmp350      [V362,T27] (  2,  8   )     int  ->  rdi         "field V117.Item2 (fldOffset=0x4)" P-INDEP
 ;  V363 tmp351      [V363,T125] (  2,  1   )   byref  ->  rsi         single-def "field V133._reference (fldOffset=0x0)" P-INDEP
 ;  V364 tmp352      [V364,T136] (  2,  1   )     int  ->  rcx         "field V133._length (fldOffset=0x8)" P-INDEP
 ;* V365 tmp353      [V365    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V138._reference (fldOffset=0x0)" P-INDEP
 ;* V366 tmp354      [V366    ] (  0,  0   )     int  ->  zero-ref    "field V138._length (fldOffset=0x8)" P-INDEP
 ;* V367 tmp355      [V367    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V139._reference (fldOffset=0x0)" P-INDEP
 ;* V368 tmp356      [V368    ] (  0,  0   )     int  ->  zero-ref    "field V139._length (fldOffset=0x8)" P-INDEP
 ;* V369 tmp357      [V369    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V141._reference (fldOffset=0x0)" P-INDEP
 ;* V370 tmp358      [V370    ] (  0,  0   )     int  ->  zero-ref    "field V141._length (fldOffset=0x8)" P-INDEP
 ;* V371 tmp359      [V371    ] (  0,  0   )   byref  ->  zero-ref    "field V144._reference (fldOffset=0x0)" P-INDEP
 ;* V372 tmp360      [V372    ] (  0,  0   )     int  ->  zero-ref    "field V144._length (fldOffset=0x8)" P-INDEP
 ;* V373 tmp361      [V373    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V145._reference (fldOffset=0x0)" P-INDEP
 ;* V374 tmp362      [V374    ] (  0,  0   )     int  ->  zero-ref    "field V145._length (fldOffset=0x8)" P-INDEP
 ;* V375 tmp363      [V375    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V147._reference (fldOffset=0x0)" P-INDEP
 ;* V376 tmp364      [V376    ] (  0,  0   )     int  ->  zero-ref    "field V147._length (fldOffset=0x8)" P-INDEP
 ;* V377 tmp365      [V377    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V151._reference (fldOffset=0x0)" P-INDEP
 ;* V378 tmp366      [V378    ] (  0,  0   )     int  ->  zero-ref    "field V151._length (fldOffset=0x8)" P-INDEP
 ;* V379 tmp367      [V379    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V155._reference (fldOffset=0x0)" P-INDEP
 ;* V380 tmp368      [V380    ] (  0,  0   )     int  ->  zero-ref    "field V155._length (fldOffset=0x8)" P-INDEP
 ;* V381 tmp369      [V381    ] (  0,  0   )   byref  ->  zero-ref    "field V156._reference (fldOffset=0x0)" P-INDEP
 ;* V382 tmp370      [V382    ] (  0,  0   )     int  ->  zero-ref    "field V156._length (fldOffset=0x8)" P-INDEP
 ;* V383 tmp371      [V383    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V159._reference (fldOffset=0x0)" P-INDEP
 ;* V384 tmp372      [V384    ] (  0,  0   )     int  ->  zero-ref    "field V159._length (fldOffset=0x8)" P-INDEP
 ;* V385 tmp373      [V385    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V162._reference (fldOffset=0x0)" P-INDEP
 ;* V386 tmp374      [V386    ] (  0,  0   )     int  ->  zero-ref    "field V162._length (fldOffset=0x8)" P-INDEP
 ;* V387 tmp375      [V387    ] (  0,  0   )     int  ->  zero-ref    "field V167.Item1 (fldOffset=0x0)" P-INDEP
 ;* V388 tmp376      [V388    ] (  0,  0   )     int  ->  zero-ref    "field V167.Item2 (fldOffset=0x4)" P-INDEP
 ;* V389 tmp377      [V389    ] (  0,  0   )     int  ->  zero-ref    "field V170.Item1 (fldOffset=0x0)" P-INDEP
 ;  V390 tmp378      [V390,T28] (  2,  8   )     int  ->  rdi         "field V170.Item2 (fldOffset=0x4)" P-INDEP
 ;  V391 tmp379      [V391,T126] (  2,  1   )   byref  ->  rsi         single-def "field V186._reference (fldOffset=0x0)" P-INDEP
 ;  V392 tmp380      [V392,T137] (  2,  1   )     int  ->  rax         "field V186._length (fldOffset=0x8)" P-INDEP
 ;* V393 tmp381      [V393    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V191._reference (fldOffset=0x0)" P-INDEP
 ;* V394 tmp382      [V394    ] (  0,  0   )     int  ->  zero-ref    "field V191._length (fldOffset=0x8)" P-INDEP
 ;* V395 tmp383      [V395    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V192._reference (fldOffset=0x0)" P-INDEP
 ;* V396 tmp384      [V396    ] (  0,  0   )     int  ->  zero-ref    "field V192._length (fldOffset=0x8)" P-INDEP
 ;* V397 tmp385      [V397    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V194._reference (fldOffset=0x0)" P-INDEP
 ;* V398 tmp386      [V398    ] (  0,  0   )     int  ->  zero-ref    "field V194._length (fldOffset=0x8)" P-INDEP
 ;* V399 tmp387      [V399    ] (  0,  0   )   byref  ->  zero-ref    "field V197._reference (fldOffset=0x0)" P-INDEP
 ;* V400 tmp388      [V400    ] (  0,  0   )     int  ->  zero-ref    "field V197._length (fldOffset=0x8)" P-INDEP
 ;* V401 tmp389      [V401    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V198._reference (fldOffset=0x0)" P-INDEP
 ;* V402 tmp390      [V402    ] (  0,  0   )     int  ->  zero-ref    "field V198._length (fldOffset=0x8)" P-INDEP
 ;* V403 tmp391      [V403    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V200._reference (fldOffset=0x0)" P-INDEP
 ;* V404 tmp392      [V404    ] (  0,  0   )     int  ->  zero-ref    "field V200._length (fldOffset=0x8)" P-INDEP
 ;* V405 tmp393      [V405    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V204._reference (fldOffset=0x0)" P-INDEP
 ;* V406 tmp394      [V406    ] (  0,  0   )     int  ->  zero-ref    "field V204._length (fldOffset=0x8)" P-INDEP
 ;* V407 tmp395      [V407    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V208._reference (fldOffset=0x0)" P-INDEP
 ;* V408 tmp396      [V408    ] (  0,  0   )     int  ->  zero-ref    "field V208._length (fldOffset=0x8)" P-INDEP
 ;* V409 tmp397      [V409    ] (  0,  0   )   byref  ->  zero-ref    "field V209._reference (fldOffset=0x0)" P-INDEP
 ;* V410 tmp398      [V410    ] (  0,  0   )     int  ->  zero-ref    "field V209._length (fldOffset=0x8)" P-INDEP
 ;* V411 tmp399      [V411    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V212._reference (fldOffset=0x0)" P-INDEP
 ;* V412 tmp400      [V412    ] (  0,  0   )     int  ->  zero-ref    "field V212._length (fldOffset=0x8)" P-INDEP
 ;* V413 tmp401      [V413    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V215._reference (fldOffset=0x0)" P-INDEP
 ;* V414 tmp402      [V414    ] (  0,  0   )     int  ->  zero-ref    "field V215._length (fldOffset=0x8)" P-INDEP
 ;* V415 tmp403      [V415    ] (  0,  0   )     int  ->  zero-ref    "field V220.Item1 (fldOffset=0x0)" P-INDEP
 ;* V416 tmp404      [V416    ] (  0,  0   )     int  ->  zero-ref    "field V220.Item2 (fldOffset=0x4)" P-INDEP
 ;* V417 tmp405      [V417    ] (  0,  0   )     int  ->  zero-ref    "field V223.Item1 (fldOffset=0x0)" P-INDEP
 ;  V418 tmp406      [V418,T29] (  2,  8   )     int  ->  rdi         "field V223.Item2 (fldOffset=0x4)" P-INDEP
 ;* V419 tmp407      [V419    ] (  0,  0   )   byref  ->  zero-ref    "field V240._reference (fldOffset=0x0)" P-INDEP
 ;* V420 tmp408      [V420    ] (  0,  0   )     int  ->  zero-ref    "field V240._length (fldOffset=0x8)" P-INDEP
 ;* V421 tmp409      [V421    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V241._reference (fldOffset=0x0)" P-INDEP
 ;* V422 tmp410      [V422    ] (  0,  0   )     int  ->  zero-ref    "field V241._length (fldOffset=0x8)" P-INDEP
 ;* V423 tmp411      [V423    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V244._reference (fldOffset=0x0)" P-INDEP
 ;* V424 tmp412      [V424    ] (  0,  0   )     int  ->  zero-ref    "field V244._length (fldOffset=0x8)" P-INDEP
 ;* V425 tmp413      [V425    ] (  0,  0   )   byref  ->  zero-ref    "field V249._reference (fldOffset=0x0)" P-INDEP
 ;* V426 tmp414      [V426    ] (  0,  0   )     int  ->  zero-ref    "field V249._length (fldOffset=0x8)" P-INDEP
 ;* V427 tmp415      [V427    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V250._reference (fldOffset=0x0)" P-INDEP
 ;* V428 tmp416      [V428    ] (  0,  0   )     int  ->  zero-ref    "field V250._length (fldOffset=0x8)" P-INDEP
 ;* V429 tmp417      [V429    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V253._reference (fldOffset=0x0)" P-INDEP
 ;* V430 tmp418      [V430    ] (  0,  0   )     int  ->  zero-ref    "field V253._length (fldOffset=0x8)" P-INDEP
 ;* V431 tmp419      [V431    ] (  0,  0   )   byref  ->  zero-ref    "field V258._reference (fldOffset=0x0)" P-INDEP
 ;* V432 tmp420      [V432    ] (  0,  0   )     int  ->  zero-ref    "field V258._length (fldOffset=0x8)" P-INDEP
 ;* V433 tmp421      [V433    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V259._reference (fldOffset=0x0)" P-INDEP
 ;* V434 tmp422      [V434    ] (  0,  0   )     int  ->  zero-ref    "field V259._length (fldOffset=0x8)" P-INDEP
 ;* V435 tmp423      [V435    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V262._reference (fldOffset=0x0)" P-INDEP
 ;* V436 tmp424      [V436    ] (  0,  0   )     int  ->  zero-ref    "field V262._length (fldOffset=0x8)" P-INDEP
-;  V437 tmp425      [V437,T104] (  3,  1.50)   byref  ->  r15         single-def "field V265._reference (fldOffset=0x0)" P-INDEP
-;  V438 tmp426      [V438,T114] (  3,  1.50)     int  ->  r14         "field V265._length (fldOffset=0x8)" P-INDEP
-;  V439 tmp427      [V439,T105] (  3,  1.50)   byref  ->  rdx         single-def "field V268._reference (fldOffset=0x0)" P-INDEP
-;  V440 tmp428      [V440,T115] (  3,  1.50)     int  ->  rcx         "field V268._length (fldOffset=0x8)" P-INDEP
+;  V437 tmp425      [V437,T108] (  3,  1.50)   byref  ->  r15         single-def "field V265._reference (fldOffset=0x0)" P-INDEP
+;  V438 tmp426      [V438,T118] (  3,  1.50)     int  ->  r14         "field V265._length (fldOffset=0x8)" P-INDEP
+;  V439 tmp427      [V439,T109] (  3,  1.50)   byref  ->  rdx         single-def "field V268._reference (fldOffset=0x0)" P-INDEP
+;  V440 tmp428      [V440,T119] (  3,  1.50)     int  ->  rcx         "field V268._length (fldOffset=0x8)" P-INDEP
 ;  V441 tmp429      [V441,T37] (  2,  4.50)   byref  ->   r9         single-def "field V270._reference (fldOffset=0x0)" P-INDEP
-;  V442 tmp430      [V442,T19] (  5,  9.50)     int  ->  r10         "field V270._length (fldOffset=0x8)" P-INDEP
+;  V442 tmp430      [V442,T23] (  5,  9.50)     int  ->  r10         "field V270._length (fldOffset=0x8)" P-INDEP
 ;* V443 tmp431      [V443    ] (  0,  0   )   byref  ->  zero-ref    "field V275._reference (fldOffset=0x0)" P-INDEP
 ;* V444 tmp432      [V444    ] (  0,  0   )     int  ->  zero-ref    "field V275._length (fldOffset=0x8)" P-INDEP
 ;* V445 tmp433      [V445    ] (  0,  0   )   byref  ->  zero-ref    "field V279._reference (fldOffset=0x0)" P-INDEP
 ;* V446 tmp434      [V446    ] (  0,  0   )     int  ->  zero-ref    "field V279._length (fldOffset=0x8)" P-INDEP
 ;* V447 tmp435      [V447    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V280._reference (fldOffset=0x0)" P-INDEP
 ;* V448 tmp436      [V448    ] (  0,  0   )     int  ->  zero-ref    "field V280._length (fldOffset=0x8)" P-INDEP
 ;* V449 tmp437      [V449    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V283._reference (fldOffset=0x0)" P-INDEP
 ;* V450 tmp438      [V450    ] (  0,  0   )     int  ->  zero-ref    "field V283._length (fldOffset=0x8)" P-INDEP
 ;* V451 tmp439      [V451    ] (  0,  0   )   byref  ->  zero-ref    "field V288._reference (fldOffset=0x0)" P-INDEP
 ;* V452 tmp440      [V452    ] (  0,  0   )     int  ->  zero-ref    "field V288._length (fldOffset=0x8)" P-INDEP
 ;* V453 tmp441      [V453    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V289._reference (fldOffset=0x0)" P-INDEP
 ;* V454 tmp442      [V454    ] (  0,  0   )     int  ->  zero-ref    "field V289._length (fldOffset=0x8)" P-INDEP
 ;* V455 tmp443      [V455    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V292._reference (fldOffset=0x0)" P-INDEP
 ;* V456 tmp444      [V456    ] (  0,  0   )     int  ->  zero-ref    "field V292._length (fldOffset=0x8)" P-INDEP
 ;  V457 tmp445      [V457,T100] (  2,  2   )    long  ->  rcx         "Cast away GC"
 ;  V458 tmp446      [V458,T101] (  2,  2   )    long  ->  rcx         "Cast away GC"
 ;  V459 tmp447      [V459,T102] (  2,  2   )    long  ->  rcx         "Cast away GC"
 ;  V460 tmp448      [V460,T103] (  2,  2   )    long  ->  rcx         "Cast away GC"
 ;  V461 GsCookie    [V461    ] (  1,  1   )    long  ->  [rbp-0xC8]  do-not-enreg[X] addr-exposed "GSSecurityCookie"
 ;  V462 cse0        [V462,T11] ( 16, 22   )     ref  ->  rcx         hoist multi-def "CSE - moderate"
-;  V463 cse1        [V463,T18] (  3, 12   )     int  ->  rdx         "CSE - moderate"
+;  V463 cse1        [V463,T22] (  3, 12   )     int  ->  rdx         "CSE - moderate"
 ;
 ; Lcl frame size = 168
 
 G_M51890_IG01:
        push     rbp
        push     r15
        push     r14
        push     r13
        push     r12
        push     rbx
        sub      rsp, 168
        vzeroupper 
        lea      rbp, [rsp+0xD0]
        xor      eax, eax
        mov      qword ptr [rbp-0xB8], rax
        vxorps   xmm8, xmm8, xmm8
        vmovdqu  ymmword ptr [rbp-0xB0], ymm8
        vmovdqu  ymmword ptr [rbp-0x90], ymm8
        vmovdqu  ymmword ptr [rbp-0x70], ymm8
        vmovdqu  ymmword ptr [rbp-0x50], ymm8
        mov      qword ptr [rbp-0x30], rax
        mov      qword ptr [rbp-0xC8], 0xD1FFAB1E
        mov      r15, rsi
        mov      r14, rdx
        mov      rbx, rcx
        mov      r13d, r8d
        mov      r12d, r9d
        mov      rsi, rdi
 						;; size=101 bbWeight=1 PerfScore 20.83
 G_M51890_IG02:
        test     dword ptr [rsp], esp
        sub      rsp, 512
        lea      rdi, [rsp]
        mov      bword ptr [rbp-0x38], rdi
        mov      dword ptr [rbp-0x30], 256
        xor      edi, edi
        mov      dword ptr [rbp-0x40], edi
        lea      rdi, [rbp-0x48]
        mov      rax, 0xD1FFAB1E      ; code for System.Reflection.AssemblyNameFormatter:AppendQuoted(byref,System.String)
        call     [rax]System.Reflection.AssemblyNameFormatter:AppendQuoted(byref,System.String)
        test     r15, r15
        je       G_M51890_IG58
 						;; size=55 bbWeight=1 PerfScore 12.00
 G_M51890_IG03:
        movzx    rax, word  ptr [r15+0x08]
        mov      dword ptr [rbp-0x4C], eax
        cmp      eax, 0xFFFF
        je       G_M51890_IG58
        mov      ecx, dword ptr [rbp-0x40]
        mov      dword ptr [rbp-0x58], ecx
        mov      edi, dword ptr [rbp-0x30]
        add      edi, -10
        cmp      ecx, edi
        jle      SHORT G_M51890_IG04
        lea      rdi, [rbp-0x48]
        mov      esi, 10
        mov      rdx, 0xD1FFAB1E      ; code for System.Text.ValueStringBuilder:Grow(int):this
        call     [rdx]System.Text.ValueStringBuilder:Grow(int):this
 						;; size=56 bbWeight=0.50 PerfScore 6.38
 G_M51890_IG04:
        mov      ecx, dword ptr [rbp-0x58]
        cmp      ecx, dword ptr [rbp-0x30]
        ja       G_M51890_IG80
        mov      rdi, bword ptr [rbp-0x38]
        mov      edx, ecx
        lea      rdi, bword ptr [rdi+2*rdx]
        mov      edx, dword ptr [rbp-0x30]
        sub      edx, ecx
        cmp      edx, 10
        jb       G_M51890_IG81
        mov      rcx, 0xD1FFAB1E
        vmovdqu  xmm0, xmmword ptr [rcx]
        vmovdqu  xmm1, xmmword ptr [rcx+0x04]
        vmovdqu  xmmword ptr [rdi], xmm0
        vmovdqu  xmmword ptr [rdi+0x04], xmm1
        mov      edi, dword ptr [rbp-0x40]
        add      edi, 10
        mov      dword ptr [rbp-0x40], edi
        mov      eax, dword ptr [rbp-0x4C]
        mov      word  ptr [rbp-0x5C], ax
        lea      rdi, bword ptr [rbp-0x5C]
        mov      eax, dword ptr [rbp-0x40]
        cmp      eax, dword ptr [rbp-0x30]
        ja       G_M51890_IG80
        mov      rcx, bword ptr [rbp-0x38]
        mov      edx, eax
        lea      rcx, bword ptr [rcx+2*rdx]
        mov      edx, dword ptr [rbp-0x30]
        sub      edx, eax
        movzx    rdi, word  ptr [rdi]
        mov      eax, edi
        mov      esi, edi
        or       esi, 1
        lzcnt    esi, esi
        xor      esi, 31
        mov      r8, 0xD1FFAB1E      ; static handle
        add      rax, qword ptr [r8+8*rsi]
        sar      rax, 32
        cmp      eax, edx
        jg       G_M51890_IG12
        mov      dword ptr [rbp-0x68], eax
        mov      bword ptr [rbp-0x70], rcx
        cdqe     
        lea      rax, [rcx+2*rax]
        cmp      edi, 10
        jb       SHORT G_M51890_IG10
+		  ;; NOP compensation instructions of 4 bytes.
        cmp      edi, 100
        jb       SHORT G_M51890_IG09
+		  ;; NOP compensation instructions of 4 bytes.
        mov      rcx, 0xD1FFAB1E      ; const ptr
        mov      rcx, gword ptr [rcx]
        jmp      SHORT G_M51890_IG05
-       align    [0 bytes for IG05]
-						;; size=192 bbWeight=0.50 PerfScore 25.88
+       align    [4 bytes for IG05]
+						;; size=204 bbWeight=0.50 PerfScore 25.88
 G_M51890_IG05:
        add      rax, -4
        mov      edx, edi
        imul     rdx, rdx, 0xD1FFAB1E
        shr      rdx, 37
        imul     esi, edx, 100
        sub      edi, esi
        mov      rsi, rcx
+       cmp      byte  ptr [rsi], sil
        shl      edi, 2
        mov      edi, dword ptr [rsi+rdi+0x10]
        mov      dword ptr [rax], edi
        cmp      edx, 100
        jae      SHORT G_M51890_IG08
-						;; size=39 bbWeight=4 PerfScore 41.00
+						;; size=42 bbWeight=4 PerfScore 53.00
 G_M51890_IG06:
        cmp      edx, 10
        jb       SHORT G_M51890_IG07
        add      rax, -4
        mov      rcx, 0xD1FFAB1E      ; const ptr
        mov      rcx, gword ptr [rcx]
+       cmp      byte  ptr [rcx], cl
        shl      edx, 2
        mov      edi, edx
        mov      edi, dword ptr [rcx+rdi+0x10]
        mov      dword ptr [rax], edi
        jmp      SHORT G_M51890_IG11
-						;; size=35 bbWeight=0.50 PerfScore 4.75
+						;; size=37 bbWeight=0.50 PerfScore 6.25
 G_M51890_IG07:
        mov      edi, edx
        jmp      SHORT G_M51890_IG10
-       align    [0 bytes for IG19]
-						;; size=4 bbWeight=0.25 PerfScore 0.56
+       align    [2 bytes for IG19]
+						;; size=6 bbWeight=0.25 PerfScore 0.56
 G_M51890_IG08:
        mov      edi, edx
        jmp      SHORT G_M51890_IG05
 						;; size=4 bbWeight=2 PerfScore 4.50
 G_M51890_IG09:
        mov      edx, edi
        jmp      SHORT G_M51890_IG06
 						;; size=4 bbWeight=0.25 PerfScore 0.56
 G_M51890_IG10:
        add      edi, 48
        mov      word  ptr [rax-0x02], di
 						;; size=7 bbWeight=0.50 PerfScore 0.62
 G_M51890_IG11:
        xor      edi, edi
        mov      bword ptr [rbp-0x70], rdi
        mov      edi, 1
        jmp      SHORT G_M51890_IG13
 						;; size=13 bbWeight=0.50 PerfScore 1.75
 G_M51890_IG12:
        xor      edi, edi
        mov      dword ptr [rbp-0x68], edi
 						;; size=5 bbWeight=0.50 PerfScore 0.62
 G_M51890_IG13:
        xor      rax, rax
        mov      bword ptr [rbp-0x70], rax
        test     edi, edi
        je       SHORT G_M51890_IG14
        mov      edi, dword ptr [rbp-0x40]
        add      edi, dword ptr [rbp-0x68]
        mov      dword ptr [rbp-0x40], edi
        jmp      SHORT G_M51890_IG16
 						;; size=21 bbWeight=0.50 PerfScore 4.25
 G_M51890_IG14:
        movzx    rdi, word  ptr [rbp-0x5C]
        mov      rax, 0xD1FFAB1E      ; code for System.Number:UInt32ToDecStr(uint):System.String
        call     [rax]System.Number:UInt32ToDecStr(uint):System.String
        test     rax, rax
        je       SHORT G_M51890_IG16
        mov      edi, dword ptr [rbp-0x40]
        cmp      dword ptr [rax+0x08], 1
        jne      SHORT G_M51890_IG15
        cmp      edi, dword ptr [rbp-0x30]
        jae      SHORT G_M51890_IG15
        cmp      edi, dword ptr [rbp-0x30]
        jae      G_M51890_IG78
        mov      rsi, bword ptr [rbp-0x38]
        mov      ecx, edi
        movzx    rax, word  ptr [rax+0x0C]
        mov      word  ptr [rsi+2*rcx], ax
        inc      edi
        mov      dword ptr [rbp-0x40], edi
        jmp      SHORT G_M51890_IG16
 						;; size=65 bbWeight=0.50 PerfScore 12.00
 G_M51890_IG15:
        lea      rdi, [rbp-0x48]
        mov      rsi, rax
        mov      rax, 0xD1FFAB1E      ; code for System.Text.ValueStringBuilder:AppendSlow(System.String):this
        call     [rax]System.Text.ValueStringBuilder:AppendSlow(System.String):this
 						;; size=19 bbWeight=0.50 PerfScore 2.00
 G_M51890_IG16:
        movzx    rax, word  ptr [r15+0x0C]
        mov      dword ptr [rbp-0x50], eax
        cmp      eax, 0xFFFF
        je       G_M51890_IG58
        mov      edi, dword ptr [rbp-0x40]
        mov      rsi, bword ptr [rbp-0x38]
        mov      ecx, dword ptr [rbp-0x30]
        cmp      edi, ecx
        jae      SHORT G_M51890_IG17
        mov      ecx, edi
        mov      word  ptr [rsi+2*rcx], 46
        inc      edi
        mov      dword ptr [rbp-0x40], edi
        jmp      SHORT G_M51890_IG18
 						;; size=48 bbWeight=0.50 PerfScore 6.50
 G_M51890_IG17:
        lea      rdi, [rbp-0x48]
        mov      esi, 46
        mov      rcx, 0xD1FFAB1E      ; code for System.Text.ValueStringBuilder:GrowAndAppend(ushort):this
        call     [rcx]System.Text.ValueStringBuilder:GrowAndAppend(ushort):this
 						;; size=21 bbWeight=0.50 PerfScore 2.00
 G_M51890_IG18:
        mov      eax, dword ptr [rbp-0x50]
        mov      word  ptr [rbp-0x74], ax
        lea      rdi, bword ptr [rbp-0x74]
        mov      eax, dword ptr [rbp-0x40]
        cmp      eax, dword ptr [rbp-0x30]
        ja       G_M51890_IG80
        mov      rcx, bword ptr [rbp-0x38]
        mov      edx, eax
        lea      rcx, bword ptr [rcx+2*rdx]
        mov      edx, dword ptr [rbp-0x30]
        sub      edx, eax
        movzx    rdi, word  ptr [rdi]
        mov      eax, edi
        mov      esi, edi
        or       esi, 1
        lzcnt    esi, esi
        xor      esi, 31
        mov      r8, 0xD1FFAB1E      ; static handle
        add      rax, qword ptr [r8+8*rsi]
        sar      rax, 32
        cmp      eax, edx
        jg       G_M51890_IG26
        mov      dword ptr [rbp-0x80], eax
        mov      bword ptr [rbp-0x88], rcx
        cdqe     
        lea      rax, [rcx+2*rax]
        cmp      edi, 10
        jb       SHORT G_M51890_IG24
+		  ;; NOP compensation instructions of 4 bytes.
        cmp      edi, 100
        jb       SHORT G_M51890_IG23
        mov      rcx, 0xD1FFAB1E      ; const ptr
        mov      rcx, gword ptr [rcx]
-						;; size=120 bbWeight=0.50 PerfScore 13.50
+						;; size=124 bbWeight=0.50 PerfScore 13.50
 G_M51890_IG19:
        add      rax, -4
        mov      edx, edi
        imul     rdx, rdx, 0xD1FFAB1E
        shr      rdx, 37
        imul     esi, edx, 100
        sub      edi, esi
        mov      rsi, rcx
+       cmp      byte  ptr [rsi], sil
        shl      edi, 2
        mov      edi, dword ptr [rsi+rdi+0x10]
        mov      dword ptr [rax], edi
        cmp      edx, 100
        jae      SHORT G_M51890_IG22
-						;; size=39 bbWeight=4 PerfScore 41.00
+						;; size=42 bbWeight=4 PerfScore 53.00
 G_M51890_IG20:
        cmp      edx, 10
        jb       SHORT G_M51890_IG21
        add      rax, -4
        mov      rcx, 0xD1FFAB1E      ; const ptr
        mov      rcx, gword ptr [rcx]
        mov      rdi, rcx
+       cmp      byte  ptr [rdi], dil
        shl      edx, 2
        mov      ecx, edx
        mov      edi, dword ptr [rdi+rcx+0x10]
        mov      dword ptr [rax], edi
        jmp      SHORT G_M51890_IG25
-						;; size=38 bbWeight=0.50 PerfScore 4.88
+						;; size=41 bbWeight=0.50 PerfScore 6.38
 G_M51890_IG21:
        mov      edi, edx
        jmp      SHORT G_M51890_IG24
        align    [0 bytes for IG33]
 						;; size=4 bbWeight=0.25 PerfScore 0.56
 G_M51890_IG22:
        mov      edi, edx
        jmp      SHORT G_M51890_IG19
 						;; size=4 bbWeight=2 PerfScore 4.50
 G_M51890_IG23:
        mov      edx, edi
        jmp      SHORT G_M51890_IG20
 						;; size=4 bbWeight=0.25 PerfScore 0.56
 G_M51890_IG24:
        add      edi, 48
        mov      word  ptr [rax-0x02], di
 						;; size=7 bbWeight=0.50 PerfScore 0.62
 G_M51890_IG25:
        xor      edi, edi
        mov      bword ptr [rbp-0x88], rdi
        mov      edi, 1
        jmp      SHORT G_M51890_IG27
 						;; size=16 bbWeight=0.50 PerfScore 1.75
 G_M51890_IG26:
        xor      edi, edi
        mov      dword ptr [rbp-0x80], edi
 						;; size=5 bbWeight=0.50 PerfScore 0.62
 G_M51890_IG27:
        xor      rax, rax
        mov      bword ptr [rbp-0x88], rax
        test     edi, edi
        je       SHORT G_M51890_IG28
        mov      edi, dword ptr [rbp-0x40]
        add      edi, dword ptr [rbp-0x80]
        mov      dword ptr [rbp-0x40], edi
        jmp      SHORT G_M51890_IG30
 						;; size=24 bbWeight=0.50 PerfScore 4.25
 G_M51890_IG28:
        movzx    rdi, word  ptr [rbp-0x74]
        mov      rax, 0xD1FFAB1E      ; code for System.Number:UInt32ToDecStr(uint):System.String
        call     [rax]System.Number:UInt32ToDecStr(uint):System.String
        test     rax, rax
        je       SHORT G_M51890_IG30
        mov      edi, dword ptr [rbp-0x40]
        cmp      dword ptr [rax+0x08], 1
        jne      SHORT G_M51890_IG29
        cmp      edi, dword ptr [rbp-0x30]
        jae      SHORT G_M51890_IG29
        cmp      edi, dword ptr [rbp-0x30]
        jae      G_M51890_IG78
        mov      rsi, bword ptr [rbp-0x38]
        mov      ecx, edi
        movzx    rax, word  ptr [rax+0x0C]
        mov      word  ptr [rsi+2*rcx], ax
        inc      edi
        mov      dword ptr [rbp-0x40], edi
        jmp      SHORT G_M51890_IG30
 						;; size=65 bbWeight=0.50 PerfScore 12.00
 G_M51890_IG29:
        lea      rdi, [rbp-0x48]
        mov      rsi, rax
        mov      rax, 0xD1FFAB1E      ; code for System.Text.ValueStringBuilder:AppendSlow(System.String):this
        call     [rax]System.Text.ValueStringBuilder:AppendSlow(System.String):this
 						;; size=19 bbWeight=0.50 PerfScore 2.00
 G_M51890_IG30:
        movzx    rax, word  ptr [r15+0x10]
        mov      dword ptr [rbp-0x54], eax
        cmp      eax, 0xFFFF
        je       G_M51890_IG58
        mov      edi, dword ptr [rbp-0x40]
        mov      rsi, bword ptr [rbp-0x38]
        mov      ecx, dword ptr [rbp-0x30]
        cmp      edi, ecx
        jae      SHORT G_M51890_IG31
        mov      ecx, edi
        mov      word  ptr [rsi+2*rcx], 46
        inc      edi
        mov      dword ptr [rbp-0x40], edi
        jmp      SHORT G_M51890_IG32
 						;; size=48 bbWeight=0.50 PerfScore 6.50
 G_M51890_IG31:
        lea      rdi, [rbp-0x48]
        mov      esi, 46
        mov      rcx, 0xD1FFAB1E      ; code for System.Text.ValueStringBuilder:GrowAndAppend(ushort):this
        call     [rcx]System.Text.ValueStringBuilder:GrowAndAppend(ushort):this
 						;; size=21 bbWeight=0.50 PerfScore 2.00
 G_M51890_IG32:
        mov      eax, dword ptr [rbp-0x54]
        mov      word  ptr [rbp-0x8C], ax
        lea      rdi, bword ptr [rbp-0x8C]
        mov      eax, dword ptr [rbp-0x40]
        cmp      eax, dword ptr [rbp-0x30]
        ja       G_M51890_IG80
        mov      rcx, bword ptr [rbp-0x38]
        mov      edx, eax
        lea      rcx, bword ptr [rcx+2*rdx]
        mov      edx, dword ptr [rbp-0x30]
        sub      edx, eax
        movzx    rdi, word  ptr [rdi]
        mov      eax, edi
        mov      esi, edi
        or       esi, 1
        lzcnt    esi, esi
        xor      esi, 31
        mov      r8, 0xD1FFAB1E      ; static handle
        add      rax, qword ptr [r8+8*rsi]
        sar      rax, 32
        cmp      eax, edx
        jg       G_M51890_IG40
        mov      dword ptr [rbp-0x98], eax
        mov      bword ptr [rbp-0xA0], rcx
        cdqe     
        lea      rax, [rcx+2*rax]
        cmp      edi, 10
        jb       SHORT G_M51890_IG38
        cmp      edi, 100
        jb       SHORT G_M51890_IG37
        mov      rcx, 0xD1FFAB1E      ; const ptr
        mov      rcx, gword ptr [rcx]
 						;; size=129 bbWeight=0.50 PerfScore 13.50
 G_M51890_IG33:
        add      rax, -4
        mov      edx, edi
        imul     rdx, rdx, 0xD1FFAB1E
        shr      rdx, 37
        imul     esi, edx, 100
        sub      edi, esi
        mov      rsi, rcx
+       cmp      byte  ptr [rsi], sil
        shl      edi, 2
        mov      edi, dword ptr [rsi+rdi+0x10]
        mov      dword ptr [rax], edi
        cmp      edx, 100
        jae      SHORT G_M51890_IG36
-						;; size=39 bbWeight=4 PerfScore 41.00
+						;; size=42 bbWeight=4 PerfScore 53.00
 G_M51890_IG34:
        cmp      edx, 10
        jb       SHORT G_M51890_IG35
        add      rax, -4
        mov      rcx, 0xD1FFAB1E      ; const ptr
        mov      rcx, gword ptr [rcx]
        mov      rdi, rcx
+       cmp      byte  ptr [rdi], dil
        shl      edx, 2
        mov      ecx, edx
        mov      edi, dword ptr [rdi+rcx+0x10]
        mov      dword ptr [rax], edi
        jmp      SHORT G_M51890_IG39
-						;; size=38 bbWeight=0.50 PerfScore 4.88
+						;; size=41 bbWeight=0.50 PerfScore 6.38
 G_M51890_IG35:
        mov      edi, edx
        jmp      SHORT G_M51890_IG38
        align    [0 bytes for IG47]
 						;; size=4 bbWeight=0.25 PerfScore 0.56
 G_M51890_IG36:
        mov      edi, edx
        jmp      SHORT G_M51890_IG33
 						;; size=4 bbWeight=2 PerfScore 4.50
 G_M51890_IG37:
        mov      edx, edi
        jmp      SHORT G_M51890_IG34
 						;; size=4 bbWeight=0.25 PerfScore 0.56
 G_M51890_IG38:
        add      edi, 48
        mov      word  ptr [rax-0x02], di
 						;; size=7 bbWeight=0.50 PerfScore 0.62
 G_M51890_IG39:
        xor      edi, edi
        mov      bword ptr [rbp-0xA0], rdi
        mov      edi, 1
        jmp      SHORT G_M51890_IG41
 						;; size=16 bbWeight=0.50 PerfScore 1.75
 G_M51890_IG40:
        xor      edi, edi
        mov      dword ptr [rbp-0x98], edi
 						;; size=8 bbWeight=0.50 PerfScore 0.62
 G_M51890_IG41:
        xor      rax, rax
        mov      bword ptr [rbp-0xA0], rax
        test     edi, edi
        je       SHORT G_M51890_IG42
        mov      edi, dword ptr [rbp-0x40]
        add      edi, dword ptr [rbp-0x98]
        mov      dword ptr [rbp-0x40], edi
        jmp      SHORT G_M51890_IG44
 						;; size=27 bbWeight=0.50 PerfScore 4.25
 G_M51890_IG42:
        movzx    rdi, word  ptr [rbp-0x8C]
        mov      rax, 0xD1FFAB1E      ; code for System.Number:UInt32ToDecStr(uint):System.String
        call     [rax]System.Number:UInt32ToDecStr(uint):System.String
        test     rax, rax
        je       SHORT G_M51890_IG44
        mov      edi, dword ptr [rbp-0x40]
        cmp      dword ptr [rax+0x08], 1
        jne      SHORT G_M51890_IG43
        cmp      edi, dword ptr [rbp-0x30]
        jae      SHORT G_M51890_IG43
        cmp      edi, dword ptr [rbp-0x30]
        jae      G_M51890_IG78
        mov      rsi, bword ptr [rbp-0x38]
        mov      ecx, edi
        movzx    rax, word  ptr [rax+0x0C]
        mov      word  ptr [rsi+2*rcx], ax
        inc      edi
        mov      dword ptr [rbp-0x40], edi
        jmp      SHORT G_M51890_IG44
 						;; size=68 bbWeight=0.50 PerfScore 12.00
 G_M51890_IG43:
        lea      rdi, [rbp-0x48]
        mov      rsi, rax
        mov      rax, 0xD1FFAB1E      ; code for System.Text.ValueStringBuilder:AppendSlow(System.String):this
        call     [rax]System.Text.ValueStringBuilder:AppendSlow(System.String):this
 						;; size=19 bbWeight=0.50 PerfScore 2.00
 G_M51890_IG44:
        movzx    r15, word  ptr [r15+0x14]
        cmp      r15d, 0xFFFF
        je       G_M51890_IG58
        mov      edi, dword ptr [rbp-0x40]
        mov      rsi, bword ptr [rbp-0x38]
        mov      eax, dword ptr [rbp-0x30]
        cmp      edi, eax
        jae      SHORT G_M51890_IG45
        mov      eax, edi
        mov      word  ptr [rsi+2*rax], 46
        inc      edi
        mov      dword ptr [rbp-0x40], edi
        jmp      SHORT G_M51890_IG46
 						;; size=47 bbWeight=0.50 PerfScore 6.00
 G_M51890_IG45:
        lea      rdi, [rbp-0x48]
        mov      esi, 46
        mov      rax, 0xD1FFAB1E      ; code for System.Text.ValueStringBuilder:GrowAndAppend(ushort):this
        call     [rax]System.Text.ValueStringBuilder:GrowAndAppend(ushort):this
 						;; size=21 bbWeight=0.50 PerfScore 2.00
 G_M51890_IG46:
        mov      word  ptr [rbp-0xA4], r15w
        lea      rdi, bword ptr [rbp-0xA4]
        mov      eax, dword ptr [rbp-0x40]
        cmp      eax, dword ptr [rbp-0x30]
        ja       G_M51890_IG80
        mov      rcx, bword ptr [rbp-0x38]
        mov      edx, eax
        lea      rcx, bword ptr [rcx+2*rdx]
        mov      edx, dword ptr [rbp-0x30]
        sub      edx, eax
        movzx    rdi, word  ptr [rdi]
        mov      eax, edi
        mov      esi, edi
        or       esi, 1
        lzcnt    esi, esi
        xor      esi, 31
        mov      r8, 0xD1FFAB1E      ; static handle
        add      rax, qword ptr [r8+8*rsi]
        sar      rax, 32
        cmp      eax, edx
        jg       G_M51890_IG54
        mov      dword ptr [rbp-0xB0], eax
        mov      bword ptr [rbp-0xB8], rcx
        cdqe     
        lea      rax, [rcx+2*rax]
        cmp      edi, 10
        jb       SHORT G_M51890_IG52
        cmp      edi, 100
        jb       SHORT G_M51890_IG51
        mov      rcx, 0xD1FFAB1E      ; const ptr
        mov      rcx, gword ptr [rcx]
 						;; size=127 bbWeight=0.50 PerfScore 13.00
 G_M51890_IG47:
        add      rax, -4
        mov      edx, edi
        imul     rdx, rdx, 0xD1FFAB1E
        shr      rdx, 37
        imul     esi, edx, 100
        sub      edi, esi
        mov      rsi, rcx
+       cmp      byte  ptr [rsi], sil
        shl      edi, 2
        mov      edi, dword ptr [rsi+rdi+0x10]
        mov      dword ptr [rax], edi
        cmp      edx, 100
        jae      SHORT G_M51890_IG50
-						;; size=39 bbWeight=4 PerfScore 41.00
+						;; size=42 bbWeight=4 PerfScore 53.00
 G_M51890_IG48:
        cmp      edx, 10
        jb       SHORT G_M51890_IG49
        add      rax, -4
        mov      rcx, 0xD1FFAB1E      ; const ptr
        mov      rcx, gword ptr [rcx]
        mov      rdi, rcx
+       cmp      byte  ptr [rdi], dil
        shl      edx, 2
        mov      ecx, edx
        mov      edi, dword ptr [rdi+rcx+0x10]
        mov      dword ptr [rax], edi
        jmp      SHORT G_M51890_IG53
-						;; size=38 bbWeight=0.50 PerfScore 4.88
+						;; size=41 bbWeight=0.50 PerfScore 6.38
 G_M51890_IG49:
        mov      edi, edx
        jmp      SHORT G_M51890_IG52
        align    [0 bytes for IG68]
 						;; size=4 bbWeight=0.25 PerfScore 0.56
 G_M51890_IG50:
        mov      edi, edx
        jmp      SHORT G_M51890_IG47
 						;; size=4 bbWeight=2 PerfScore 4.50
 G_M51890_IG51:
        mov      edx, edi
        jmp      SHORT G_M51890_IG48
 						;; size=4 bbWeight=0.25 PerfScore 0.56
 G_M51890_IG52:
        add      edi, 48
        mov      word  ptr [rax-0x02], di
 						;; size=7 bbWeight=0.50 PerfScore 0.62
 G_M51890_IG53:
        xor      edi, edi
        mov      bword ptr [rbp-0xB8], rdi
        mov      edi, 1
        jmp      SHORT G_M51890_IG55
 						;; size=16 bbWeight=0.50 PerfScore 1.75
 G_M51890_IG54:
        xor      edi, edi
        mov      dword ptr [rbp-0xB0], edi
 						;; size=8 bbWeight=0.50 PerfScore 0.62
 G_M51890_IG55:
        xor      rax, rax
        mov      bword ptr [rbp-0xB8], rax
        test     edi, edi
        je       SHORT G_M51890_IG56
        mov      edi, dword ptr [rbp-0x40]
        add      edi, dword ptr [rbp-0xB0]
        mov      dword ptr [rbp-0x40], edi
        jmp      SHORT G_M51890_IG58
 						;; size=27 bbWeight=0.50 PerfScore 4.25
 G_M51890_IG56:
        movzx    rdi, word  ptr [rbp-0xA4]
        mov      rax, 0xD1FFAB1E      ; code for System.Number:UInt32ToDecStr(uint):System.String
        call     [rax]System.Number:UInt32ToDecStr(uint):System.String
        test     rax, rax
        je       SHORT G_M51890_IG58
        mov      edi, dword ptr [rbp-0x40]
        cmp      dword ptr [rax+0x08], 1
        jne      SHORT G_M51890_IG57
        cmp      edi, dword ptr [rbp-0x30]
        jae      SHORT G_M51890_IG57
        cmp      edi, dword ptr [rbp-0x30]
        jae      G_M51890_IG78
        mov      rsi, bword ptr [rbp-0x38]
        mov      ecx, edi
        cmp      dword ptr [rax+0x08], 0
        jbe      G_M51890_IG78
        movzx    rax, word  ptr [rax+0x0C]
        mov      word  ptr [rsi+2*rcx], ax
        inc      edi
        mov      dword ptr [rbp-0x40], edi
        jmp      SHORT G_M51890_IG58
 						;; size=78 bbWeight=0.50 PerfScore 14.00
 G_M51890_IG57:
        lea      rdi, [rbp-0x48]
        mov      rsi, rax
        mov      rax, 0xD1FFAB1E      ; code for System.Text.ValueStringBuilder:AppendSlow(System.String):this
        call     [rax]System.Text.ValueStringBuilder:AppendSlow(System.String):this
 						;; size=19 bbWeight=0.50 PerfScore 2.00
 G_M51890_IG58:
        test     r14, r14
        je       G_M51890_IG61
 						;; size=9 bbWeight=1 PerfScore 1.25
 G_M51890_IG59:
        mov      rdi, 0xD1FFAB1E      ; 'neutral'
 
        cmp      dword ptr [r14+0x08], 0
        cmove    r14, rdi
        mov      r15d, dword ptr [rbp-0x40]
        mov      edi, dword ptr [rbp-0x30]
        add      edi, -10
        cmp      r15d, edi
        jle      SHORT G_M51890_IG60
        lea      rdi, [rbp-0x48]
        mov      esi, 10
        mov      rax, 0xD1FFAB1E      ; code for System.Text.ValueStringBuilder:Grow(int):this
        call     [rax]System.Text.ValueStringBuilder:Grow(int):this
 						;; size=55 bbWeight=0.50 PerfScore 5.50
 G_M51890_IG60:
        cmp      r15d, dword ptr [rbp-0x30]
        ja       G_M51890_IG80
        mov      rdi, bword ptr [rbp-0x38]
        mov      esi, r15d
        lea      rdi, bword ptr [rdi+2*rsi]
        mov      esi, dword ptr [rbp-0x30]
        sub      esi, r15d
        cmp      esi, 10
        jb       G_M51890_IG81
        mov      rsi, 0xD1FFAB1E
        vmovdqu  xmm0, xmmword ptr [rsi]
        vmovdqu  xmm1, xmmword ptr [rsi+0x04]
        vmovdqu  xmmword ptr [rdi], xmm0
        vmovdqu  xmmword ptr [rdi+0x04], xmm1
        mov      edi, dword ptr [rbp-0x40]
        add      edi, 10
        mov      dword ptr [rbp-0x40], edi
        lea      rdi, [rbp-0x48]
        mov      rsi, r14
        mov      rax, 0xD1FFAB1E      ; code for System.Reflection.AssemblyNameFormatter:AppendQuoted(byref,System.String)
        call     [rax]System.Reflection.AssemblyNameFormatter:AppendQuoted(byref,System.String)
 						;; size=92 bbWeight=0.50 PerfScore 12.88
 G_M51890_IG61:
        test     rbx, rbx
        je       G_M51890_IG69
 						;; size=9 bbWeight=1 PerfScore 1.25
 G_M51890_IG62:
        cmp      dword ptr [rbx+0x08], 8
        jg       G_M51890_IG79
        mov      r15d, dword ptr [rbp-0x40]
        mov      edi, dword ptr [rbp-0x30]
        add      edi, -17
        cmp      r15d, edi
        jle      SHORT G_M51890_IG63
        lea      rdi, [rbp-0x48]
        mov      esi, 17
        mov      rax, 0xD1FFAB1E      ; code for System.Text.ValueStringBuilder:Grow(int):this
        call     [rax]System.Text.ValueStringBuilder:Grow(int):this
 						;; size=46 bbWeight=0.50 PerfScore 5.75
 G_M51890_IG63:
        cmp      r15d, dword ptr [rbp-0x30]
        ja       G_M51890_IG80
        mov      rdi, bword ptr [rbp-0x38]
        mov      esi, r15d
        lea      rdi, bword ptr [rdi+2*rsi]
        mov      esi, dword ptr [rbp-0x30]
        sub      esi, r15d
        cmp      esi, 17
        jb       G_M51890_IG81
        mov      rsi, 0xD1FFAB1E
        vmovdqu  ymm0, ymmword ptr [rsi]
        vmovdqu  xmm1, xmmword ptr [rsi+0x12]
        vmovdqu  ymmword ptr [rdi], ymm0
        vmovdqu  xmmword ptr [rdi+0x12], xmm1
        mov      edi, dword ptr [rbp-0x40]
        add      edi, 17
        mov      dword ptr [rbp-0x40], edi
        cmp      dword ptr [rbx+0x08], 0
        jne      SHORT G_M51890_IG65
        mov      ebx, dword ptr [rbp-0x40]
        mov      edi, dword ptr [rbp-0x30]
        add      edi, -4
        cmp      ebx, edi
        jle      SHORT G_M51890_IG64
        lea      rdi, [rbp-0x48]
        mov      esi, 4
        mov      rax, 0xD1FFAB1E      ; code for System.Text.ValueStringBuilder:Grow(int):this
        call     [rax]System.Text.ValueStringBuilder:Grow(int):this
 						;; size=113 bbWeight=0.50 PerfScore 17.12
 G_M51890_IG64:
        cmp      ebx, dword ptr [rbp-0x30]
        ja       G_M51890_IG80
        mov      rdi, bword ptr [rbp-0x38]
        mov      esi, ebx
        lea      rdi, bword ptr [rdi+2*rsi]
        mov      esi, dword ptr [rbp-0x30]
        sub      esi, ebx
        cmp      esi, 4
        jb       G_M51890_IG81
        mov      rsi, 0xD1FFAB1E
        mov      rax, qword ptr [rsi]
        mov      qword ptr [rdi], rax
        mov      edi, dword ptr [rbp-0x40]
        add      edi, 4
        mov      dword ptr [rbp-0x40], edi
        jmp      G_M51890_IG69
 						;; size=63 bbWeight=0.50 PerfScore 7.38
 G_M51890_IG65:
        lea      r15, bword ptr [rbx+0x10]
        mov      r14d, dword ptr [rbx+0x08]
        mov      ebx, dword ptr [rbx+0x08]
        add      ebx, ebx
        mov      eax, dword ptr [rbp-0x40]
        mov      dword ptr [rbp-0xBC], eax
        mov      edi, dword ptr [rbp-0x30]
        sub      edi, ebx
        cmp      edi, eax
        jge      SHORT G_M51890_IG66
        lea      rdi, [rbp-0x48]
        mov      esi, ebx
        mov      rcx, 0xD1FFAB1E      ; code for System.Text.ValueStringBuilder:Grow(int):this
        call     [rcx]System.Text.ValueStringBuilder:Grow(int):this
 						;; size=49 bbWeight=0.50 PerfScore 6.62
 G_M51890_IG66:
        mov      eax, dword ptr [rbp-0xBC]
        lea      edi, [rax+rbx]
        mov      dword ptr [rbp-0x40], edi
        mov      edi, eax
        mov      esi, ebx
        add      rdi, rsi
        mov      esi, dword ptr [rbp-0x30]
        cmp      rdi, rsi
        ja       G_M51890_IG80
        mov      rdi, bword ptr [rbp-0x38]
        mov      esi, eax
        lea      rdx, bword ptr [rdi+2*rsi]
        mov      ecx, ebx
        mov      rbx, rdx
        mov      eax, ecx
        mov      r9, r15
        mov      r10d, r14d
        cmp      r10d, 4
        jl       SHORT G_M51890_IG67
        mov      rdi, r15
        mov      esi, r14d
        mov      r8d, 0x2020
        mov      rax, 0xD1FFAB1E      ; code for System.HexConverter:EncodeToUtf16_Vector128(System.ReadOnlySpan`1[ubyte],System.Span`1[ushort],uint)
        call     [rax]System.HexConverter:EncodeToUtf16_Vector128(System.ReadOnlySpan`1[ubyte],System.Span`1[ushort],uint)
        jmp      SHORT G_M51890_IG69
 						;; size=86 bbWeight=0.50 PerfScore 7.88
 G_M51890_IG67:
        xor      edi, edi
        test     r10d, r10d
        jle      SHORT G_M51890_IG69
 						;; size=7 bbWeight=0.50 PerfScore 0.75
 G_M51890_IG68:
        cmp      edi, r10d
        jae      G_M51890_IG78
        mov      esi, edi
        movzx    rsi, byte  ptr [r9+rsi]
        lea      ecx, [rdi+rdi]
        mov      edx, esi
        and      edx, 240
        shl      edx, 4
        and      esi, 15
        lea      esi, [rdx+rsi-0x8989]
        mov      edx, esi
        neg      edx
        and      edx, 0x7070
        shr      edx, 4
        lea      esi, [rdx+rsi+0xB9B9]
        or       esi, 0x2020
        lea      edx, [rcx+0x01]
        cmp      edx, eax
        jae      G_M51890_IG78
        movzx    r8, sil
        mov      word  ptr [rbx+2*rdx], r8w
        cmp      ecx, eax
        jae      G_M51890_IG78
        shr      esi, 8
        mov      word  ptr [rbx+2*rcx], si
        inc      edi
        cmp      edi, r10d
        jl       SHORT G_M51890_IG68
 						;; size=108 bbWeight=4 PerfScore 64.00
 G_M51890_IG69:
        test     r13d, 256
        je       SHORT G_M51890_IG72
 						;; size=9 bbWeight=1 PerfScore 1.25
 G_M51890_IG70:
        mov      ebx, dword ptr [rbp-0x40]
        mov      edi, dword ptr [rbp-0x30]
        add      edi, -18
        cmp      ebx, edi
        jle      SHORT G_M51890_IG71
        lea      rdi, [rbp-0x48]
        mov      esi, 18
        mov      rax, 0xD1FFAB1E      ; code for System.Text.ValueStringBuilder:Grow(int):this
        call     [rax]System.Text.ValueStringBuilder:Grow(int):this
 						;; size=34 bbWeight=0.50 PerfScore 3.75
 G_M51890_IG71:
        cmp      ebx, dword ptr [rbp-0x30]
        ja       G_M51890_IG80
        mov      rdi, bword ptr [rbp-0x38]
        mov      esi, ebx
        lea      rdi, bword ptr [rdi+2*rsi]
        mov      esi, dword ptr [rbp-0x30]
        sub      esi, ebx
        cmp      esi, 18
        jb       G_M51890_IG81
        mov      rsi, 0xD1FFAB1E
        vmovdqu  ymm0, ymmword ptr [rsi]
        vmovdqu  xmm1, xmmword ptr [rsi+0x14]
        vmovdqu  ymmword ptr [rdi], ymm0
        vmovdqu  xmmword ptr [rdi+0x14], xmm1
        mov      edi, dword ptr [rbp-0x40]
        add      edi, 18
        mov      dword ptr [rbp-0x40], edi
 						;; size=70 bbWeight=0.50 PerfScore 11.38
 G_M51890_IG72:
        cmp      r12d, 1
        jne      SHORT G_M51890_IG75
 						;; size=6 bbWeight=1 PerfScore 1.25
 G_M51890_IG73:
        mov      ebx, dword ptr [rbp-0x40]
        mov      edi, dword ptr [rbp-0x30]
        add      edi, -28
        cmp      ebx, edi
        jle      SHORT G_M51890_IG74
        lea      rdi, [rbp-0x48]
        mov      esi, 28
        mov      rax, 0xD1FFAB1E      ; code for System.Text.ValueStringBuilder:Grow(int):this
        call     [rax]System.Text.ValueStringBuilder:Grow(int):this
 						;; size=34 bbWeight=0.50 PerfScore 3.75
 G_M51890_IG74:
        cmp      ebx, dword ptr [rbp-0x30]
        ja       G_M51890_IG80
        mov      rdi, bword ptr [rbp-0x38]
        mov      eax, ebx
        lea      rdi, bword ptr [rdi+2*rax]
        mov      eax, dword ptr [rbp-0x30]
        sub      eax, ebx
        cmp      eax, 28
        jb       G_M51890_IG81
        mov      rax, 0xD1FFAB1E
        vmovdqu  ymm0, ymmword ptr [rax]
        vmovdqu  ymm1, ymmword ptr [rax+0x18]
        vmovdqu  ymmword ptr [rdi], ymm0
        vmovdqu  ymmword ptr [rdi+0x18], ymm1
        mov      edi, dword ptr [rbp-0x40]
        add      edi, 28
        mov      dword ptr [rbp-0x40], edi
 						;; size=70 bbWeight=0.50 PerfScore 11.88
 G_M51890_IG75:
        lea      rdi, [rbp-0x48]
        mov      rax, 0xD1FFAB1E      ; code for System.Text.ValueStringBuilder:ToString():System.String:this
        call     [rax]System.Text.ValueStringBuilder:ToString():System.String:this
        cmp      qword ptr [rbp-0xC8], 0xD1FFAB1E
        je       SHORT G_M51890_IG76
        call     CORINFO_HELP_FAIL_FAST
 						;; size=34 bbWeight=1 PerfScore 7.75
 G_M51890_IG76:
        nop      
 						;; size=1 bbWeight=1 PerfScore 0.25
 G_M51890_IG77:
        lea      rsp, [rbp-0x28]
        pop      rbx
        pop      r12
        pop      r13
        pop      r14
        pop      r15
        pop      rbp
        ret      
 						;; size=15 bbWeight=1 PerfScore 4.50
 G_M51890_IG78:
        call     CORINFO_HELP_RNGCHKFAIL
 						;; size=5 bbWeight=0 PerfScore 0.00
 G_M51890_IG79:
        mov      rdi, 0xD1FFAB1E      ; System.ArgumentException
        call     CORINFO_HELP_NEWSFAST
        mov      rbx, rax
        mov      rdi, rbx
        mov      rax, 0xD1FFAB1E      ; code for System.ArgumentException:.ctor():this
        call     [rax]System.ArgumentException:.ctor():this
        mov      rdi, rbx
        call     CORINFO_HELP_THROW
 						;; size=41 bbWeight=0 PerfScore 0.00
 G_M51890_IG80:
        mov      rax, 0xD1FFAB1E      ; code for System.ThrowHelper:ThrowArgumentOutOfRangeException()
        call     [rax]System.ThrowHelper:ThrowArgumentOutOfRangeException()
        int3     
 						;; size=13 bbWeight=0 PerfScore 0.00
 G_M51890_IG81:
        mov      rax, 0xD1FFAB1E      ; code for System.ThrowHelper:ThrowArgumentException_DestinationTooShort()
        call     [rax]System.ThrowHelper:ThrowArgumentException_DestinationTooShort()
        int3     
 						;; size=13 bbWeight=0 PerfScore 0.00
 
-; Total bytes of code 2887, prolog size 101, PerfScore 888.58, instruction count 775, allocated bytes for code 2895 (MethodHash=77e6354d) for method System.Reflection.AssemblyNameFormatter:ComputeDisplayName(System.String,System.Version,System.String,ubyte[],int,int):System.String (FullOpts)
+; Total bytes of code 2928, prolog size 101, PerfScore 946.68, instruction count 783, allocated bytes for code 2936 (MethodHash=77e6354d) for method System.Reflection.AssemblyNameFormatter:ComputeDisplayName(System.String,System.Version,System.String,ubyte[],int,int):System.String (FullOpts)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment