Skip to content

Instantly share code, notes, and snippets.

@MihuBot
Created April 12, 2024 15:38
Show Gist options
  • Save MihuBot/1a667fb0f790738619e61e6a68939e69 to your computer and use it in GitHub Desktop.
Save MihuBot/1a667fb0f790738619e61e6a68939e69 to your computer and use it in GitHub Desktop.

Top method regressions

56 (2.38 % of base) - System.Net.Http.HttpTelemetry:OnEventCommand(System.Diagnostics.Tracing.EventCommandEventArgs):this
 ; Assembly listing for method System.Net.Http.HttpTelemetry:OnEventCommand(System.Diagnostics.Tracing.EventCommandEventArgs):this (FullOpts)
 ; Emitting BLENDED_CODE for generic ARM64 - Unix
 ; FullOpts code
 ; optimized code
 ; fp based frame
 ; fully interruptible
 ; No PGO data
 ; 0 inlinees with PGO data; 67 single block inlinees; 57 inlinees without PGO data
 ; Final local variable assignments
 ;
 ;  V00 this         [V00,T00] ( 43, 22.50)     ref  ->  x19         this class-hnd single-def <System.Net.Http.HttpTelemetry>
-;  V01 arg1         [V01,T17] (  3,  3   )     ref  ->   x1         class-hnd single-def <System.Diagnostics.Tracing.EventCommandEventArgs>
+;  V01 arg1         [V01,T16] (  3,  3   )     ref  ->   x1         class-hnd single-def <System.Diagnostics.Tracing.EventCommandEventArgs>
 ;# V02 OutArgs      [V02    ] (  1,  1   )  struct ( 0) [sp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-;  V03 tmp1         [V03,T06] ( 14, 14   )     ref  ->  x21         class-hnd exact single-def "NewObj constructor temp" <System.Diagnostics.Tracing.EventCounter>
-;  V04 tmp2         [V04,T07] ( 14, 14   )     ref  ->  x21         class-hnd exact single-def "NewObj constructor temp" <System.Diagnostics.Tracing.EventCounter>
-;  V05 tmp3         [V05,T08] ( 14, 14   )     ref  ->  x21         class-hnd exact single-def "NewObj constructor temp" <System.Diagnostics.Tracing.EventCounter>
-;  V06 tmp4         [V06,T21] (  4,  4   )     ref  ->  x21         class-hnd exact single-def "NewObj constructor temp" <System.Func`1[double]>
-;  V07 tmp5         [V07,T11] ( 10, 10   )     ref  ->  x20         class-hnd exact single-def "NewObj constructor temp" <System.Diagnostics.Tracing.PollingCounter>
-;  V08 tmp6         [V08,T22] (  4,  4   )     ref  ->  x21         class-hnd exact single-def "NewObj constructor temp" <System.Func`1[double]>
-;  V09 tmp7         [V09,T12] ( 10, 10   )     ref  ->  x20         class-hnd exact single-def "NewObj constructor temp" <System.Diagnostics.Tracing.PollingCounter>
-;  V10 tmp8         [V10,T23] (  4,  4   )     ref  ->  x21         class-hnd exact single-def "NewObj constructor temp" <System.Func`1[double]>
-;  V11 tmp9         [V11,T13] ( 10, 10   )     ref  ->  x20         class-hnd exact single-def "NewObj constructor temp" <System.Diagnostics.Tracing.PollingCounter>
-;  V12 tmp10        [V12,T24] (  4,  4   )     ref  ->  x21         class-hnd exact single-def "NewObj constructor temp" <System.Func`1[double]>
-;  V13 tmp11        [V13,T14] ( 10, 10   )     ref  ->  x20         class-hnd exact single-def "NewObj constructor temp" <System.Diagnostics.Tracing.PollingCounter>
-;  V14 tmp12        [V14,T25] (  4,  4   )     ref  ->  x21         class-hnd exact single-def "NewObj constructor temp" <System.Func`1[double]>
-;  V15 tmp13        [V15,T09] ( 11, 11   )     ref  ->  x20         class-hnd exact single-def "NewObj constructor temp" <System.Diagnostics.Tracing.IncrementingPollingCounter>
+;  V03 tmp1         [V03,T05] ( 14, 14   )     ref  ->  x20         class-hnd exact single-def "NewObj constructor temp" <System.Diagnostics.Tracing.EventCounter>
+;  V04 tmp2         [V04,T06] ( 14, 14   )     ref  ->  x20         class-hnd exact single-def "NewObj constructor temp" <System.Diagnostics.Tracing.EventCounter>
+;  V05 tmp3         [V05,T07] ( 14, 14   )     ref  ->  x20         class-hnd exact single-def "NewObj constructor temp" <System.Diagnostics.Tracing.EventCounter>
+;  V06 tmp4         [V06,T20] (  4,  4   )     ref  ->  x20         class-hnd exact single-def "NewObj constructor temp" <System.Func`1[double]>
+;  V07 tmp5         [V07,T10] ( 10, 10   )     ref  ->  x21         class-hnd exact single-def "NewObj constructor temp" <System.Diagnostics.Tracing.PollingCounter>
+;  V08 tmp6         [V08,T21] (  4,  4   )     ref  ->  x20         class-hnd exact single-def "NewObj constructor temp" <System.Func`1[double]>
+;  V09 tmp7         [V09,T11] ( 10, 10   )     ref  ->  x21         class-hnd exact single-def "NewObj constructor temp" <System.Diagnostics.Tracing.PollingCounter>
+;  V10 tmp8         [V10,T22] (  4,  4   )     ref  ->  x20         class-hnd exact single-def "NewObj constructor temp" <System.Func`1[double]>
+;  V11 tmp9         [V11,T12] ( 10, 10   )     ref  ->  x21         class-hnd exact single-def "NewObj constructor temp" <System.Diagnostics.Tracing.PollingCounter>
+;  V12 tmp10        [V12,T23] (  4,  4   )     ref  ->  x20         class-hnd exact single-def "NewObj constructor temp" <System.Func`1[double]>
+;  V13 tmp11        [V13,T13] ( 10, 10   )     ref  ->  x21         class-hnd exact single-def "NewObj constructor temp" <System.Diagnostics.Tracing.PollingCounter>
+;  V14 tmp12        [V14,T24] (  4,  4   )     ref  ->  x20         class-hnd exact single-def "NewObj constructor temp" <System.Func`1[double]>
+;  V15 tmp13        [V15,T08] ( 11, 11   )     ref  ->  x21         class-hnd exact single-def "NewObj constructor temp" <System.Diagnostics.Tracing.IncrementingPollingCounter>
 ;* V16 tmp14        [V16    ] (  0,  0   )  struct ( 8) zero-ref    "spilled call-like call argument" <System.TimeSpan>
-;  V17 tmp15        [V17,T26] (  4,  4   )     ref  ->  x21         class-hnd exact single-def "NewObj constructor temp" <System.Func`1[double]>
-;  V18 tmp16        [V18,T15] ( 10, 10   )     ref  ->  x20         class-hnd exact single-def "NewObj constructor temp" <System.Diagnostics.Tracing.PollingCounter>
-;  V19 tmp17        [V19,T27] (  4,  4   )     ref  ->  x21         class-hnd exact single-def "NewObj constructor temp" <System.Func`1[double]>
-;  V20 tmp18        [V20,T10] ( 11, 11   )     ref  ->  x20         class-hnd exact single-def "NewObj constructor temp" <System.Diagnostics.Tracing.IncrementingPollingCounter>
+;  V17 tmp15        [V17,T25] (  4,  4   )     ref  ->  x20         class-hnd exact single-def "NewObj constructor temp" <System.Func`1[double]>
+;  V18 tmp16        [V18,T14] ( 10, 10   )     ref  ->  x21         class-hnd exact single-def "NewObj constructor temp" <System.Diagnostics.Tracing.PollingCounter>
+;  V19 tmp17        [V19,T26] (  4,  4   )     ref  ->  x20         class-hnd exact single-def "NewObj constructor temp" <System.Func`1[double]>
+;  V20 tmp18        [V20,T09] ( 11, 11   )     ref  ->  x21         class-hnd exact single-def "NewObj constructor temp" <System.Diagnostics.Tracing.IncrementingPollingCounter>
 ;* V21 tmp19        [V21    ] (  0,  0   )  struct ( 8) zero-ref    "spilled call-like call argument" <System.TimeSpan>
-;  V22 tmp20        [V22,T28] (  4,  4   )     ref  ->  x21         class-hnd exact single-def "NewObj constructor temp" <System.Func`1[double]>
-;  V23 tmp21        [V23,T16] ( 10, 10   )     ref  ->  x20         class-hnd exact single-def "NewObj constructor temp" <System.Diagnostics.Tracing.PollingCounter>
+;  V22 tmp20        [V22,T27] (  4,  4   )     ref  ->  x20         class-hnd exact single-def "NewObj constructor temp" <System.Func`1[double]>
+;  V23 tmp21        [V23,T15] ( 10, 10   )     ref  ->  x21         class-hnd exact single-def "NewObj constructor temp" <System.Diagnostics.Tracing.PollingCounter>
 ;* V24 tmp22        [V24    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.String>
 ;* V25 tmp23        [V25    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.String>
 ;* V26 tmp24        [V26    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "NewObj constructor temp" <System.TimeSpan>
 ;* V27 tmp25        [V27    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.String>
 ;* V28 tmp26        [V28    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.String>
 ;* V29 tmp27        [V29    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "NewObj constructor temp" <System.TimeSpan>
 ;* V30 tmp28        [V30    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.String>
 ;* V31 tmp29        [V31    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.String>
 ;* V32 tmp30        [V32    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.String>
 ;* V33 tmp31        [V33    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.String>
-;  V34 tmp32        [V34,T29] (  3,  1.50)     ref  ->   x0         class-hnd exact single-def "Inline stloc first use temp" <double[]>
-;  V35 tmp33        [V35,T03] (  5, 16.50)     int  ->  x14         "Inline stloc first use temp"
+;  V34 tmp32        [V34,T28] (  3,  1.50)     ref  ->   x0         class-hnd exact single-def "Inline stloc first use temp" <double[]>
+;  V35 tmp33        [V35,T02] (  5, 16.50)     int  ->  x14         "Inline stloc first use temp"
 ;* V36 tmp34        [V36    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.String>
 ;* V37 tmp35        [V37    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.String>
-;  V38 tmp36        [V38,T30] (  3,  1.50)     ref  ->   x0         class-hnd exact single-def "Inline stloc first use temp" <double[]>
-;  V39 tmp37        [V39,T04] (  5, 16.50)     int  ->  x14         "Inline stloc first use temp"
+;  V38 tmp36        [V38,T29] (  3,  1.50)     ref  ->   x0         class-hnd exact single-def "Inline stloc first use temp" <double[]>
+;  V39 tmp37        [V39,T03] (  5, 16.50)     int  ->  x14         "Inline stloc first use temp"
 ;* V40 tmp38        [V40    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.String>
 ;* V41 tmp39        [V41    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.String>
-;  V42 tmp40        [V42,T31] (  3,  1.50)     ref  ->   x0         class-hnd exact single-def "Inline stloc first use temp" <double[]>
-;  V43 tmp41        [V43,T05] (  5, 16.50)     int  ->  x14         "Inline stloc first use temp"
+;  V42 tmp40        [V42,T30] (  3,  1.50)     ref  ->   x0         class-hnd exact single-def "Inline stloc first use temp" <double[]>
+;  V43 tmp41        [V43,T04] (  5, 16.50)     int  ->  x14         "Inline stloc first use temp"
 ;* V44 tmp42        [V44    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.String>
 ;* V45 tmp43        [V45    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.String>
 ;* V46 tmp44        [V46    ] (  0,  0   )    long  ->  zero-ref    "field V16._ticks (fldOffset=0x0)" P-INDEP
 ;* V47 tmp45        [V47    ] (  0,  0   )    long  ->  zero-ref    "field V21._ticks (fldOffset=0x0)" P-INDEP
-;* V48 tmp46        [V48,T32] (  0,  0   )    long  ->  zero-ref    "field V26._ticks (fldOffset=0x0)" P-INDEP
-;* V49 tmp47        [V49,T33] (  0,  0   )    long  ->  zero-ref    "field V29._ticks (fldOffset=0x0)" P-INDEP
-;  V50 cse0         [V50,T34] (  9, 15   )  double  ->   d8         multi-def "CSE #05: aggressive"
-;  V51 cse1         [V51,T02] ( 33, 16.50)    long  ->  x20         multi-def "CSE #01: aggressive"
-;  V52 cse2         [V52,T01] ( 33, 16.50)     ref  ->  x22         multi-def "CSE #02: aggressive"
-;  V53 cse3         [V53,T18] (  2,  4.50)   byref  ->  x15         hoist "CSE #06: moderate"
-;  V54 cse4         [V54,T19] (  2,  4.50)   byref  ->  x15         hoist "CSE #08: moderate"
-;  V55 cse5         [V55,T20] (  2,  4.50)   byref  ->  x15         hoist "CSE #10: moderate"
+;* V48 tmp46        [V48,T31] (  0,  0   )    long  ->  zero-ref    "field V26._ticks (fldOffset=0x0)" P-INDEP
+;* V49 tmp47        [V49,T32] (  0,  0   )    long  ->  zero-ref    "field V29._ticks (fldOffset=0x0)" P-INDEP
+;  V50 cse0         [V50,T33] (  9, 15   )  double  ->   d8         multi-def "CSE #06: aggressive"
+;  V51 cse1         [V51,T01] ( 33, 16.50)     ref  ->  x22         multi-def "CSE #01: aggressive"
+;  V52 cse2         [V52,T17] (  2,  4.50)   byref  ->  x15         hoist "CSE #07: moderate"
+;  V53 cse3         [V53,T18] (  2,  4.50)   byref  ->  x15         hoist "CSE #09: moderate"
+;  V54 cse4         [V54,T19] (  2,  4.50)   byref  ->  x15         hoist "CSE #11: moderate"
 ;
 ; Lcl frame size = 8
 
 G_M12599_IG01:
             stp     fp, lr, [sp, #-0x40]!
             str     d8, [sp, #0x18]
             stp     x19, x20, [sp, #0x20]
             stp     x21, x22, [sp, #0x30]
             mov     fp, sp
             mov     x19, x0
 						;; size=24 bbWeight=1 PerfScore 5.00
 G_M12599_IG02:
             ldr     w0, [x1, #0x38]
             cmn     w0, #2
             bne     G_M12599_IG20
 						;; size=12 bbWeight=1 PerfScore 4.50
 G_M12599_IG03:
             ldr     x0, [x19, #0xC0]
             cbnz    x0, G_M12599_IG04
-            movz    x20, #0xD1FFAB1E
-            movk    x20, #0xD1FFAB1E LSL #16
-            movk    x20, #0xD1FFAB1E LSL #32
-            add     x0, x20, #0xD1FFAB1E
+            movz    x0, #0xD1FFAB1E
+            movk    x0, #0xD1FFAB1E LSL #16
+            movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
-            mov     x21, x0
-            add     x14, x21, #8
+            mov     x20, x0
+            add     x14, x20, #8
             mov     x15, x19
             bl      CORINFO_HELP_ASSIGN_REF
             movz    x0, #0xD1FFAB1E      // code for System.Net.Http.HttpTelemetry:<OnEventCommand>b__50_0():double:this
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
-            str     x0, [x21, #0x18]
-            add     x0, x20, #0xD1FFAB1E
+            str     x0, [x20, #0x18]
+            movz    x0, #0xD1FFAB1E
+            movk    x0, #0xD1FFAB1E LSL #16
+            movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
-            mov     x20, x0
+            mov     x21, x0
             movz    x22, #8
             movk    x22, #0xD1FFAB1E LSL #16
             movk    x22, #0xD1FFAB1E LSL #32
-            stp     x22, x22, [x20, #0x08]
+            stp     x22, x22, [x21, #0x08]
             movz    x14, #0xD1FFAB1E
             movk    x14, #0xD1FFAB1E LSL #16
             movk    x14, #0xD1FFAB1E LSL #32
-            str     x14, [x20, #0x18]
-            add     x14, x20, #32
+            str     x14, [x21, #0x18]
+            add     x14, x21, #32
             mov     x15, x19
             bl      CORINFO_HELP_ASSIGN_REF
-            add     x14, x20, #56
-            mov     x15, x21
+            add     x14, x21, #56
+            mov     x15, x20
             bl      CORINFO_HELP_ASSIGN_REF
-            mov     x0, x20
+            mov     x0, x21
             movz    x1, #0xD1FFAB1E      // code for System.Diagnostics.Tracing.DiagnosticCounter:Publish():this
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
-            ldr     x14, [x20, #0x08]
+            ldr     x14, [x21, #0x08]
             cbz     x14, G_M12599_IG21
             movz    x14, #0xD1FFAB1E
             movk    x14, #0xD1FFAB1E LSL #16
             movk    x14, #0xD1FFAB1E LSL #32
-            str     x14, [x20, #0x08]
+            str     x14, [x21, #0x08]
             add     x14, x19, #192
-            mov     x15, x20
+            mov     x15, x21
             bl      CORINFO_HELP_ASSIGN_REF
-						;; size=188 bbWeight=0.50 PerfScore 18.75
+						;; size=192 bbWeight=0.50 PerfScore 19.00
 G_M12599_IG04:
             ldr     x0, [x19, #0xB0]
             cbnz    x0, G_M12599_IG05
-            movz    x20, #0xD1FFAB1E
-            movk    x20, #0xD1FFAB1E LSL #16
-            movk    x20, #0xD1FFAB1E LSL #32
-            add     x0, x20, #0xD1FFAB1E
+            movz    x0, #0xD1FFAB1E
+            movk    x0, #0xD1FFAB1E LSL #16
+            movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
-            mov     x21, x0
-            add     x14, x21, #8
+            mov     x20, x0
+            add     x14, x20, #8
             mov     x15, x19
             bl      CORINFO_HELP_ASSIGN_REF
             movz    x0, #0xD1FFAB1E      // code for System.Net.Http.HttpTelemetry:<OnEventCommand>b__50_1():double:this
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
-            str     x0, [x21, #0x18]
-            add     x0, x20, #0xD1FFAB1E
+            str     x0, [x20, #0x18]
+            movz    x0, #0xD1FFAB1E
+            movk    x0, #0xD1FFAB1E LSL #16
+            movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
-            mov     x20, x0
+            mov     x21, x0
             movz    x22, #8
             movk    x22, #0xD1FFAB1E LSL #16
             movk    x22, #0xD1FFAB1E LSL #32
-            stp     x22, x22, [x20, #0x08]
+            stp     x22, x22, [x21, #0x08]
             movz    x14, #0xD1FFAB1E
             movk    x14, #0xD1FFAB1E LSL #16
             movk    x14, #0xD1FFAB1E LSL #32
-            str     x14, [x20, #0x18]
-            add     x14, x20, #32
+            str     x14, [x21, #0x18]
+            add     x14, x21, #32
             mov     x15, x19
             bl      CORINFO_HELP_ASSIGN_REF
-            add     x14, x20, #56
-            mov     x15, x21
+            add     x14, x21, #56
+            mov     x15, x20
             bl      CORINFO_HELP_ASSIGN_REF
-            mov     x0, x20
+            mov     x0, x21
             movz    x1, #0xD1FFAB1E      // code for System.Diagnostics.Tracing.DiagnosticCounter:Publish():this
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
-            ldr     x14, [x20, #0x08]
+            ldr     x14, [x21, #0x08]
             cbz     x14, G_M12599_IG21
             movz    x14, #0xD1FFAB1E
             movk    x14, #0xD1FFAB1E LSL #16
             movk    x14, #0xD1FFAB1E LSL #32
-            str     x14, [x20, #0x08]
+            str     x14, [x21, #0x08]
             movz    x14, #0xD1FFAB1E
             movk    x14, #152 LSL #16
-            str     x14, [x20, #0x50]
+            str     x14, [x21, #0x50]
             add     x14, x19, #176
-            mov     x15, x20
+            mov     x15, x21
             bl      CORINFO_HELP_ASSIGN_REF
-						;; size=200 bbWeight=0.50 PerfScore 19.75
+						;; size=204 bbWeight=0.50 PerfScore 20.00
 G_M12599_IG05:
             ldr     x0, [x19, #0xD0]
             cbnz    x0, G_M12599_IG06
-            movz    x20, #0xD1FFAB1E
-            movk    x20, #0xD1FFAB1E LSL #16
-            movk    x20, #0xD1FFAB1E LSL #32
-            add     x0, x20, #0xD1FFAB1E
+            movz    x0, #0xD1FFAB1E
+            movk    x0, #0xD1FFAB1E LSL #16
+            movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
-            mov     x21, x0
-            add     x14, x21, #8
+            mov     x20, x0
+            add     x14, x20, #8
             mov     x15, x19
             bl      CORINFO_HELP_ASSIGN_REF
             movz    x0, #0xD1FFAB1E      // code for System.Net.Http.HttpTelemetry:<OnEventCommand>b__50_2():double:this
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
-            str     x0, [x21, #0x18]
-            add     x0, x20, #0xD1FFAB1E
+            str     x0, [x20, #0x18]
+            movz    x0, #0xD1FFAB1E
+            movk    x0, #0xD1FFAB1E LSL #16
+            movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
-            mov     x20, x0
+            mov     x21, x0
             movz    x22, #8
             movk    x22, #0xD1FFAB1E LSL #16
             movk    x22, #0xD1FFAB1E LSL #32
-            stp     x22, x22, [x20, #0x08]
+            stp     x22, x22, [x21, #0x08]
             movz    x14, #0xD1FFAB1E
             movk    x14, #0xD1FFAB1E LSL #16
             movk    x14, #0xD1FFAB1E LSL #32
-            str     x14, [x20, #0x18]
-            add     x14, x20, #32
+            str     x14, [x21, #0x18]
+            add     x14, x21, #32
             mov     x15, x19
             bl      CORINFO_HELP_ASSIGN_REF
-            add     x14, x20, #56
-            mov     x15, x21
+            add     x14, x21, #56
+            mov     x15, x20
             bl      CORINFO_HELP_ASSIGN_REF
-            mov     x0, x20
+            mov     x0, x21
             movz    x1, #0xD1FFAB1E      // code for System.Diagnostics.Tracing.DiagnosticCounter:Publish():this
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
-            ldr     x14, [x20, #0x08]
+            ldr     x14, [x21, #0x08]
             cbz     x14, G_M12599_IG21
             movz    x14, #0xD1FFAB1E
             movk    x14, #0xD1FFAB1E LSL #16
             movk    x14, #0xD1FFAB1E LSL #32
-            str     x14, [x20, #0x08]
+            str     x14, [x21, #0x08]
             add     x14, x19, #208
-            mov     x15, x20
+            mov     x15, x21
             bl      CORINFO_HELP_ASSIGN_REF
-						;; size=188 bbWeight=0.50 PerfScore 18.75
+						;; size=192 bbWeight=0.50 PerfScore 19.00
 G_M12599_IG06:
             ldr     x0, [x19, #0xB8]
             cbnz    x0, G_M12599_IG07
-            movz    x20, #0xD1FFAB1E
-            movk    x20, #0xD1FFAB1E LSL #16
-            movk    x20, #0xD1FFAB1E LSL #32
-            add     x0, x20, #0xD1FFAB1E
+            movz    x0, #0xD1FFAB1E
+            movk    x0, #0xD1FFAB1E LSL #16
+            movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
-            mov     x21, x0
-            add     x14, x21, #8
+            mov     x20, x0
+            add     x14, x20, #8
             mov     x15, x19
             bl      CORINFO_HELP_ASSIGN_REF
             movz    x0, #0xD1FFAB1E      // code for System.Net.Http.HttpTelemetry:<OnEventCommand>b__50_3():double:this
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
-            str     x0, [x21, #0x18]
-            add     x0, x20, #0xD1FFAB1E
+            str     x0, [x20, #0x18]
+            movz    x0, #0xD1FFAB1E
+            movk    x0, #0xD1FFAB1E LSL #16
+            movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
-            mov     x20, x0
+            mov     x21, x0
             movz    x22, #8
             movk    x22, #0xD1FFAB1E LSL #16
             movk    x22, #0xD1FFAB1E LSL #32
-            stp     x22, x22, [x20, #0x08]
+            stp     x22, x22, [x21, #0x08]
             movz    x14, #0xD1FFAB1E
             movk    x14, #0xD1FFAB1E LSL #16
             movk    x14, #0xD1FFAB1E LSL #32
-            str     x14, [x20, #0x18]
-            add     x14, x20, #32
+            str     x14, [x21, #0x18]
+            add     x14, x21, #32
             mov     x15, x19
             bl      CORINFO_HELP_ASSIGN_REF
-            add     x14, x20, #56
-            mov     x15, x21
+            add     x14, x21, #56
+            mov     x15, x20
             bl      CORINFO_HELP_ASSIGN_REF
-            mov     x0, x20
+            mov     x0, x21
             movz    x1, #0xD1FFAB1E      // code for System.Diagnostics.Tracing.DiagnosticCounter:Publish():this
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
-            ldr     x14, [x20, #0x08]
+            ldr     x14, [x21, #0x08]
             cbz     x14, G_M12599_IG21
             movz    x14, #0xD1FFAB1E
             movk    x14, #0xD1FFAB1E LSL #16
             movk    x14, #0xD1FFAB1E LSL #32
-            str     x14, [x20, #0x08]
+            str     x14, [x21, #0x08]
             movz    x14, #0xD1FFAB1E
             movk    x14, #152 LSL #16
-            str     x14, [x20, #0x50]
+            str     x14, [x21, #0x50]
             add     x14, x19, #184
-            mov     x15, x20
+            mov     x15, x21
             bl      CORINFO_HELP_ASSIGN_REF
-						;; size=200 bbWeight=0.50 PerfScore 19.75
+						;; size=204 bbWeight=0.50 PerfScore 20.00
 G_M12599_IG07:
             ldr     x0, [x19, #0xC8]
             cbnz    x0, G_M12599_IG08
-            movz    x20, #0xD1FFAB1E
-            movk    x20, #0xD1FFAB1E LSL #16
-            movk    x20, #0xD1FFAB1E LSL #32
-            add     x0, x20, #0xD1FFAB1E
+            movz    x0, #0xD1FFAB1E
+            movk    x0, #0xD1FFAB1E LSL #16
+            movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
-            mov     x21, x0
-            add     x14, x21, #8
+            mov     x20, x0
+            add     x14, x20, #8
             mov     x15, x19
             bl      CORINFO_HELP_ASSIGN_REF
             movz    x0, #0xD1FFAB1E      // code for System.Net.Http.HttpTelemetry:<OnEventCommand>b__50_4():double:this
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
-            str     x0, [x21, #0x18]
-            add     x0, x20, #0xD1FFAB1E
+            str     x0, [x20, #0x18]
+            movz    x0, #0xD1FFAB1E
+            movk    x0, #0xD1FFAB1E LSL #16
+            movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
-            mov     x20, x0
+            mov     x21, x0
             movz    x22, #8
             movk    x22, #0xD1FFAB1E LSL #16
             movk    x22, #0xD1FFAB1E LSL #32
-            stp     x22, x22, [x20, #0x08]
+            stp     x22, x22, [x21, #0x08]
             movz    x14, #0xD1FFAB1E
             movk    x14, #0xD1FFAB1E LSL #16
             movk    x14, #0xD1FFAB1E LSL #32
-            str     x14, [x20, #0x18]
-            add     x14, x20, #32
+            str     x14, [x21, #0x18]
+            add     x14, x21, #32
             mov     x15, x19
             bl      CORINFO_HELP_ASSIGN_REF
-            add     x14, x20, #56
-            mov     x15, x21
+            add     x14, x21, #56
+            mov     x15, x20
             bl      CORINFO_HELP_ASSIGN_REF
-            mov     x0, x20
+            mov     x0, x21
             movz    x1, #0xD1FFAB1E      // code for System.Diagnostics.Tracing.DiagnosticCounter:Publish():this
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
-            ldr     x14, [x20, #0x08]
+            ldr     x14, [x21, #0x08]
             cbz     x14, G_M12599_IG21
             movz    x14, #0xD1FFAB1E
             movk    x14, #0xD1FFAB1E LSL #16
             movk    x14, #0xD1FFAB1E LSL #32
-            str     x14, [x20, #0x08]
+            str     x14, [x21, #0x08]
             add     x14, x19, #200
-            mov     x15, x20
+            mov     x15, x21
             bl      CORINFO_HELP_ASSIGN_REF
-						;; size=188 bbWeight=0.50 PerfScore 18.75
+						;; size=192 bbWeight=0.50 PerfScore 19.00
 G_M12599_IG08:
             ldr     x0, [x19, #0xD8]
             cbnz    x0, G_M12599_IG09
-            movz    x20, #0xD1FFAB1E
-            movk    x20, #0xD1FFAB1E LSL #16
-            movk    x20, #0xD1FFAB1E LSL #32
-            add     x0, x20, #0xD1FFAB1E
+            movz    x0, #0xD1FFAB1E
+            movk    x0, #0xD1FFAB1E LSL #16
+            movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
-            mov     x21, x0
-            add     x14, x21, #8
+            mov     x20, x0
+            add     x14, x20, #8
             mov     x15, x19
             bl      CORINFO_HELP_ASSIGN_REF
             movz    x0, #0xD1FFAB1E      // code for System.Net.Http.HttpTelemetry:<OnEventCommand>b__50_5():double:this
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
-            str     x0, [x21, #0x18]
-            add     x0, x20, #0xD1FFAB1E
+            str     x0, [x20, #0x18]
+            movz    x0, #0xD1FFAB1E
+            movk    x0, #0xD1FFAB1E LSL #16
+            movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
-            mov     x20, x0
+            mov     x21, x0
             movz    x22, #8
             movk    x22, #0xD1FFAB1E LSL #16
             movk    x22, #0xD1FFAB1E LSL #32
-            stp     x22, x22, [x20, #0x08]
+            stp     x22, x22, [x21, #0x08]
             movz    x14, #0xD1FFAB1E
             movk    x14, #0xD1FFAB1E LSL #16
             movk    x14, #0xD1FFAB1E LSL #32
-            str     x14, [x20, #0x18]
-            add     x14, x20, #32
+            str     x14, [x21, #0x18]
+            add     x14, x21, #32
             mov     x15, x19
             bl      CORINFO_HELP_ASSIGN_REF
-            add     x14, x20, #56
-            mov     x15, x21
+            add     x14, x21, #56
+            mov     x15, x20
             bl      CORINFO_HELP_ASSIGN_REF
-            mov     x0, x20
+            mov     x0, x21
             movz    x1, #0xD1FFAB1E      // code for System.Diagnostics.Tracing.DiagnosticCounter:Publish():this
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
-            ldr     x14, [x20, #0x08]
+            ldr     x14, [x21, #0x08]
             cbz     x14, G_M12599_IG21
             movz    x14, #0xD1FFAB1E
             movk    x14, #0xD1FFAB1E LSL #16
             movk    x14, #0xD1FFAB1E LSL #32
-            str     x14, [x20, #0x08]
+            str     x14, [x21, #0x08]
             add     x14, x19, #216
-            mov     x15, x20
+            mov     x15, x21
             bl      CORINFO_HELP_ASSIGN_REF
-						;; size=188 bbWeight=0.50 PerfScore 18.75
+						;; size=192 bbWeight=0.50 PerfScore 19.00
 G_M12599_IG09:
             ldr     x0, [x19, #0xE0]
             cbnz    x0, G_M12599_IG10
-            movz    x20, #0xD1FFAB1E
-            movk    x20, #0xD1FFAB1E LSL #16
-            movk    x20, #0xD1FFAB1E LSL #32
-            add     x0, x20, #0xD1FFAB1E
+            movz    x0, #0xD1FFAB1E
+            movk    x0, #0xD1FFAB1E LSL #16
+            movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
-            mov     x21, x0
-            add     x14, x21, #8
+            mov     x20, x0
+            add     x14, x20, #8
             mov     x15, x19
             bl      CORINFO_HELP_ASSIGN_REF
             movz    x0, #0xD1FFAB1E      // code for System.Net.Http.HttpTelemetry:<OnEventCommand>b__50_6():double:this
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
-            str     x0, [x21, #0x18]
-            add     x0, x20, #0xD1FFAB1E
+            str     x0, [x20, #0x18]
+            movz    x0, #0xD1FFAB1E
+            movk    x0, #0xD1FFAB1E LSL #16
+            movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
-            mov     x20, x0
+            mov     x21, x0
             movz    x22, #8
             movk    x22, #0xD1FFAB1E LSL #16
             movk    x22, #0xD1FFAB1E LSL #32
-            stp     x22, x22, [x20, #0x08]
+            stp     x22, x22, [x21, #0x08]
             movz    x14, #0xD1FFAB1E
             movk    x14, #0xD1FFAB1E LSL #16
             movk    x14, #0xD1FFAB1E LSL #32
-            str     x14, [x20, #0x18]
-            add     x14, x20, #32
+            str     x14, [x21, #0x18]
+            add     x14, x21, #32
             mov     x15, x19
             bl      CORINFO_HELP_ASSIGN_REF
-            add     x14, x20, #56
-            mov     x15, x21
+            add     x14, x21, #56
+            mov     x15, x20
             bl      CORINFO_HELP_ASSIGN_REF
-            mov     x0, x20
+            mov     x0, x21
             movz    x1, #0xD1FFAB1E      // code for System.Diagnostics.Tracing.DiagnosticCounter:Publish():this
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
-            ldr     x14, [x20, #0x08]
+            ldr     x14, [x21, #0x08]
             cbz     x14, G_M12599_IG21
             movz    x14, #0xD1FFAB1E
             movk    x14, #0xD1FFAB1E LSL #16
             movk    x14, #0xD1FFAB1E LSL #32
-            str     x14, [x20, #0x08]
+            str     x14, [x21, #0x08]
             add     x14, x19, #224
-            mov     x15, x20
+            mov     x15, x21
             bl      CORINFO_HELP_ASSIGN_REF
-						;; size=188 bbWeight=0.50 PerfScore 18.75
+						;; size=192 bbWeight=0.50 PerfScore 19.00
 G_M12599_IG10:
             ldr     x0, [x19, #0xE8]
             cbnz    x0, G_M12599_IG11
-            movz    x20, #0xD1FFAB1E
-            movk    x20, #0xD1FFAB1E LSL #16
-            movk    x20, #0xD1FFAB1E LSL #32
-            add     x0, x20, #0xD1FFAB1E
+            movz    x0, #0xD1FFAB1E
+            movk    x0, #0xD1FFAB1E LSL #16
+            movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
-            mov     x21, x0
-            add     x14, x21, #8
+            mov     x20, x0
+            add     x14, x20, #8
             mov     x15, x19
             bl      CORINFO_HELP_ASSIGN_REF
             movz    x0, #0xD1FFAB1E      // code for System.Net.Http.HttpTelemetry:<OnEventCommand>b__50_7():double:this
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
-            str     x0, [x21, #0x18]
-            add     x0, x20, #0xD1FFAB1E
+            str     x0, [x20, #0x18]
+            movz    x0, #0xD1FFAB1E
+            movk    x0, #0xD1FFAB1E LSL #16
+            movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
-            mov     x20, x0
+            mov     x21, x0
             movz    x22, #8
             movk    x22, #0xD1FFAB1E LSL #16
             movk    x22, #0xD1FFAB1E LSL #32
-            stp     x22, x22, [x20, #0x08]
+            stp     x22, x22, [x21, #0x08]
             movz    x14, #0xD1FFAB1E
             movk    x14, #0xD1FFAB1E LSL #16
             movk    x14, #0xD1FFAB1E LSL #32
-            str     x14, [x20, #0x18]
-            add     x14, x20, #32
+            str     x14, [x21, #0x18]
+            add     x14, x21, #32
             mov     x15, x19
             bl      CORINFO_HELP_ASSIGN_REF
-            add     x14, x20, #56
-            mov     x15, x21
+            add     x14, x21, #56
+            mov     x15, x20
             bl      CORINFO_HELP_ASSIGN_REF
-            mov     x0, x20
+            mov     x0, x21
             movz    x1, #0xD1FFAB1E      // code for System.Diagnostics.Tracing.DiagnosticCounter:Publish():this
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
-            ldr     x14, [x20, #0x08]
+            ldr     x14, [x21, #0x08]
             cbz     x14, G_M12599_IG21
             movz    x14, #0xD1FFAB1E
             movk    x14, #0xD1FFAB1E LSL #16
             movk    x14, #0xD1FFAB1E LSL #32
-            str     x14, [x20, #0x08]
+            str     x14, [x21, #0x08]
             add     x14, x19, #232
-            mov     x15, x20
+            mov     x15, x21
             bl      CORINFO_HELP_ASSIGN_REF
-						;; size=188 bbWeight=0.50 PerfScore 18.75
+						;; size=192 bbWeight=0.50 PerfScore 19.00
 G_M12599_IG11:
             ldr     x0, [x19, #0xF0]
             cbnz    x0, G_M12599_IG14
-            movz    x20, #0xD1FFAB1E
-            movk    x20, #0xD1FFAB1E LSL #16
-            movk    x20, #0xD1FFAB1E LSL #32
-            mov     x0, x20
+            movz    x0, #0xD1FFAB1E
+            movk    x0, #0xD1FFAB1E LSL #16
+            movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
-            mov     x21, x0
+            mov     x20, x0
             movz    x22, #8
             movk    x22, #0xD1FFAB1E LSL #16
             movk    x22, #0xD1FFAB1E LSL #32
-            stp     x22, x22, [x21, #0x08]
+            stp     x22, x22, [x20, #0x08]
             movz    x14, #0xD1FFAB1E
             movk    x14, #0xD1FFAB1E LSL #16
             movk    x14, #0xD1FFAB1E LSL #32
-            str     x14, [x21, #0x18]
-            add     x14, x21, #32
+            str     x14, [x20, #0x18]
+            add     x14, x20, #32
             mov     x15, x19
             bl      CORINFO_HELP_ASSIGN_REF
             ldr     d16, [@RWD00]
-            str     d16, [x21, #0x50]
+            str     d16, [x20, #0x50]
             ldr     d8, [@RWD08]
-            str     d8, [x21, #0x58]
-            add     x0, x20, #0xD1FFAB1E
+            str     d8, [x20, #0x58]
+            movz    x0, #0xD1FFAB1E
+            movk    x0, #0xD1FFAB1E LSL #16
+            movk    x0, #0xD1FFAB1E LSL #32
             mov     x1, #10
             bl      CORINFO_HELP_NEWARR_1_VC
             mov     w14, wzr
             add     x15, x0, #16
             align   [0 bytes for IG12]
             align   [0 bytes]
             align   [0 bytes]
             align   [0 bytes]
-						;; size=112 bbWeight=0.50 PerfScore 11.75
+						;; size=116 bbWeight=0.50 PerfScore 12.00
 G_M12599_IG12:
             str     d8, [x15, w14, UXTW #3]
             add     w14, w14, #1
             cmp     w14, #10
             blt     G_M12599_IG12
 						;; size=16 bbWeight=4 PerfScore 12.00
 G_M12599_IG13:
-            add     x14, x21, #56
+            add     x14, x20, #56
             mov     x15, x0
             bl      CORINFO_HELP_ASSIGN_REF
-            mov     x0, x21
+            mov     x0, x20
             movz    x1, #0xD1FFAB1E      // code for System.Diagnostics.Tracing.DiagnosticCounter:Publish():this
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
-            ldr     x14, [x21, #0x08]
+            ldr     x14, [x20, #0x08]
             cbz     x14, G_M12599_IG21
             movz    x14, #0xD1FFAB1E
             movk    x14, #0xD1FFAB1E LSL #16
             movk    x14, #0xD1FFAB1E LSL #32
-            str     x14, [x21, #0x08]
-            ldr     x14, [x21, #0x10]
+            str     x14, [x20, #0x08]
+            ldr     x14, [x20, #0x10]
             cbz     x14, G_M12599_IG22
             movz    x14, #0xD1FFAB1E
             movk    x14, #0xD1FFAB1E LSL #16
             movk    x14, #0xD1FFAB1E LSL #32
-            str     x14, [x21, #0x10]
+            str     x14, [x20, #0x10]
             add     x14, x19, #240
-            mov     x15, x21
+            mov     x15, x20
             bl      CORINFO_HELP_ASSIGN_REF
 						;; size=96 bbWeight=0.50 PerfScore 11.50
 G_M12599_IG14:
             ldr     x0, [x19, #0xF8]
             cbnz    x0, G_M12599_IG17
-            movz    x20, #0xD1FFAB1E
-            movk    x20, #0xD1FFAB1E LSL #16
-            movk    x20, #0xD1FFAB1E LSL #32
-            mov     x0, x20
+            movz    x0, #0xD1FFAB1E
+            movk    x0, #0xD1FFAB1E LSL #16
+            movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
-            mov     x21, x0
+            mov     x20, x0
             movz    x22, #8
             movk    x22, #0xD1FFAB1E LSL #16
             movk    x22, #0xD1FFAB1E LSL #32
-            stp     x22, x22, [x21, #0x08]
+            stp     x22, x22, [x20, #0x08]
             movz    x14, #0xD1FFAB1E
             movk    x14, #0xD1FFAB1E LSL #16
             movk    x14, #0xD1FFAB1E LSL #32
-            str     x14, [x21, #0x18]
-            add     x14, x21, #32
+            str     x14, [x20, #0x18]
+            add     x14, x20, #32
             mov     x15, x19
             bl      CORINFO_HELP_ASSIGN_REF
             ldr     d16, [@RWD00]
-            str     d16, [x21, #0x50]
+            str     d16, [x20, #0x50]
             ldr     d8, [@RWD08]
-            str     d8, [x21, #0x58]
-            add     x0, x20, #0xD1FFAB1E
+            str     d8, [x20, #0x58]
+            movz    x0, #0xD1FFAB1E
+            movk    x0, #0xD1FFAB1E LSL #16
+            movk    x0, #0xD1FFAB1E LSL #32
             mov     x1, #10
             bl      CORINFO_HELP_NEWARR_1_VC
             mov     w14, wzr
             add     x15, x0, #16
-            align   [0 bytes for IG15]
-            align   [0 bytes]
+            align   [4 bytes for IG15]
+            align   [4 bytes]
+            align   [4 bytes]
             align   [0 bytes]
-            align   [0 bytes]
-						;; size=112 bbWeight=0.50 PerfScore 11.75
+						;; size=128 bbWeight=0.50 PerfScore 12.75
 G_M12599_IG15:
             str     d8, [x15, w14, UXTW #3]
             add     w14, w14, #1
             cmp     w14, #10
             blt     G_M12599_IG15
 						;; size=16 bbWeight=4 PerfScore 12.00
 G_M12599_IG16:
-            add     x14, x21, #56
+            add     x14, x20, #56
             mov     x15, x0
             bl      CORINFO_HELP_ASSIGN_REF
-            mov     x0, x21
+            mov     x0, x20
             movz    x1, #0xD1FFAB1E      // code for System.Diagnostics.Tracing.DiagnosticCounter:Publish():this
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
-            ldr     x14, [x21, #0x08]
+            ldr     x14, [x20, #0x08]
             cbz     x14, G_M12599_IG21
             movz    x14, #0xD1FFAB1E
             movk    x14, #0xD1FFAB1E LSL #16
             movk    x14, #0xD1FFAB1E LSL #32
-            str     x14, [x21, #0x08]
-            ldr     x14, [x21, #0x10]
+            str     x14, [x20, #0x08]
+            ldr     x14, [x20, #0x10]
             cbz     x14, G_M12599_IG22
             movz    x14, #0xD1FFAB1E
             movk    x14, #0xD1FFAB1E LSL #16
             movk    x14, #0xD1FFAB1E LSL #32
-            str     x14, [x21, #0x10]
+            str     x14, [x20, #0x10]
             add     x14, x19, #248
-            mov     x15, x21
+            mov     x15, x20
             bl      CORINFO_HELP_ASSIGN_REF
 						;; size=96 bbWeight=0.50 PerfScore 11.50
 G_M12599_IG17:
             ldr     x0, [x19, #0xD1FFAB1E]
             cbnz    x0, G_M12599_IG20
-            movz    x20, #0xD1FFAB1E
-            movk    x20, #0xD1FFAB1E LSL #16
-            movk    x20, #0xD1FFAB1E LSL #32
-            mov     x0, x20
+            movz    x0, #0xD1FFAB1E
+            movk    x0, #0xD1FFAB1E LSL #16
+            movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
-            mov     x21, x0
+            mov     x20, x0
             movz    x22, #8
             movk    x22, #0xD1FFAB1E LSL #16
             movk    x22, #0xD1FFAB1E LSL #32
-            stp     x22, x22, [x21, #0x08]
+            stp     x22, x22, [x20, #0x08]
             movz    x14, #0xD1FFAB1E
             movk    x14, #0xD1FFAB1E LSL #16
             movk    x14, #0xD1FFAB1E LSL #32
-            str     x14, [x21, #0x18]
-            add     x14, x21, #32
+            str     x14, [x20, #0x18]
+            add     x14, x20, #32
             mov     x15, x19
             bl      CORINFO_HELP_ASSIGN_REF
             ldr     d16, [@RWD00]
-            str     d16, [x21, #0x50]
+            str     d16, [x20, #0x50]
             ldr     d8, [@RWD08]
-            str     d8, [x21, #0x58]
-            add     x0, x20, #0xD1FFAB1E
+            str     d8, [x20, #0x58]
+            movz    x0, #0xD1FFAB1E
+            movk    x0, #0xD1FFAB1E LSL #16
+            movk    x0, #0xD1FFAB1E LSL #32
             mov     x1, #10
             bl      CORINFO_HELP_NEWARR_1_VC
             mov     w14, wzr
             add     x15, x0, #16
             align   [0 bytes for IG18]
             align   [0 bytes]
             align   [0 bytes]
             align   [0 bytes]
-						;; size=112 bbWeight=0.50 PerfScore 11.75
+						;; size=116 bbWeight=0.50 PerfScore 12.00
 G_M12599_IG18:
             str     d8, [x15, w14, UXTW #3]
             add     w14, w14, #1
             cmp     w14, #10
             blt     G_M12599_IG18
 						;; size=16 bbWeight=4 PerfScore 12.00
 G_M12599_IG19:
-            add     x14, x21, #56
+            add     x14, x20, #56
             mov     x15, x0
             bl      CORINFO_HELP_ASSIGN_REF
-            mov     x0, x21
+            mov     x0, x20
             movz    x1, #0xD1FFAB1E      // code for System.Diagnostics.Tracing.DiagnosticCounter:Publish():this
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
-            ldr     x14, [x21, #0x08]
+            ldr     x14, [x20, #0x08]
             cbz     x14, G_M12599_IG21
             movz    x14, #0xD1FFAB1E
             movk    x14, #0xD1FFAB1E LSL #16
             movk    x14, #0xD1FFAB1E LSL #32
-            str     x14, [x21, #0x08]
-            ldr     x14, [x21, #0x10]
+            str     x14, [x20, #0x08]
+            ldr     x14, [x20, #0x10]
             cbz     x14, G_M12599_IG22
             movz    x14, #0xD1FFAB1E
             movk    x14, #0xD1FFAB1E LSL #16
             movk    x14, #0xD1FFAB1E LSL #32
-            str     x14, [x21, #0x10]
+            str     x14, [x20, #0x10]
             add     x14, x19, #0xD1FFAB1E
-            mov     x15, x21
+            mov     x15, x20
             bl      CORINFO_HELP_ASSIGN_REF
 						;; size=96 bbWeight=0.50 PerfScore 11.50
 G_M12599_IG20:
             ldp     x21, x22, [sp, #0x30]
             ldp     x19, x20, [sp, #0x20]
             ldr     d8, [sp, #0x18]
             ldp     fp, lr, [sp], #0x40
             ret     lr
 						;; size=20 bbWeight=1 PerfScore 6.00
 G_M12599_IG21:
             movz    w0, #0xD1FFAB1E
             movk    w0, #1 LSL #16
             movz    x1, #0xD1FFAB1E
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_STRCNS
             movz    x1, #0xD1FFAB1E      // code for System.ArgumentNullException:Throw(System.String)
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
             brk_unix #0
 						;; size=48 bbWeight=0 PerfScore 0.00
 G_M12599_IG22:
             movz    w0, #0xD1FFAB1E
             movk    w0, #1 LSL #16
             movz    x1, #0xD1FFAB1E
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_STRCNS
             movz    x1, #0xD1FFAB1E      // code for System.ArgumentNullException:Throw(System.String)
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
             brk_unix #0
 						;; size=48 bbWeight=0 PerfScore 0.00
 RWD00  	dq	7FF0000000000000h	;          inf
 RWD08  	dq	FFF0000000000000h	;         -inf
 
 
-; Total bytes of code 2352, prolog size 24, PerfScore 273.25, instruction count 600, allocated bytes for code 2352 (MethodHash=4f39cec8) for method System.Net.Http.HttpTelemetry:OnEventCommand(System.Diagnostics.Tracing.EventCommandEventArgs):this (FullOpts)
+; Total bytes of code 2408, prolog size 24, PerfScore 276.75, instruction count 611, allocated bytes for code 2408 (MethodHash=4f39cec8) for method System.Net.Http.HttpTelemetry:OnEventCommand(System.Diagnostics.Tracing.EventCommandEventArgs):this (FullOpts)
48 (1.26 % of base) - System.Resources.ResourceWriter:Generate():this
 ; Assembly listing for method System.Resources.ResourceWriter:Generate():this (FullOpts)
 ; Emitting BLENDED_CODE for generic ARM64 - Unix
 ; FullOpts code
 ; optimized code
 ; fp based frame
 ; fully interruptible
 ; No PGO data
 ; 0 inlinees with PGO data; 81 single block inlinees; 23 inlinees without PGO data
 ; Final local variable assignments
 ;
 ;  V00 this         [V00,T19] ( 12, 14   )     ref  ->  x19         this class-hnd single-def <System.Resources.ResourceWriter>
 ;  V01 loc0         [V01,T00] ( 24, 44   )     ref  ->  x21         class-hnd exact single-def <System.IO.BinaryWriter>
-;  V02 loc1         [V02,T46] (  4,  7   )     ref  ->  x20         class-hnd exact single-def <System.Collections.Generic.List`1[System.String]>
+;  V02 loc1         [V02,T45] (  4,  7   )     ref  ->  x20         class-hnd exact single-def <System.Collections.Generic.List`1[System.String]>
 ;* V03 loc2         [V03    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact single-def <System.IO.MemoryStream>
 ;* V04 loc3         [V04    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact single-def <System.IO.BinaryWriter>
-;  V05 loc4         [V05,T51] (  7,  6   )     int  ->  x24        
-;  V06 loc5         [V06,T13] (  6, 18   )     ref  ->  x25         class-hnd exact single-def <int[]>
-;  V07 loc6         [V07,T27] (  5, 14   )     ref  ->  x26         class-hnd exact single-def <int[]>
+;  V05 loc4         [V05,T50] (  7,  6   )     int  ->  x23        
+;  V06 loc5         [V06,T13] (  6, 18   )     ref  ->  x24         class-hnd exact single-def <int[]>
+;  V07 loc6         [V07,T27] (  5, 14   )     ref  ->  x25         class-hnd exact single-def <int[]>
 ;  V08 loc7         [V08,T15] (  5, 17   )     int  ->  [fp+0x124] 
-;  V09 loc8         [V09,T50] (  9,  6.50)     ref  ->  x28         class-hnd exact single-def <System.IO.MemoryStream>
-;  V10 loc9         [V10,T21] (  8, 16   )     ref  ->  x24         class-hnd exact single-def <System.IO.BinaryWriter>
-;  V11 loc10        [V11,T52] (  6,  6   )     ref  ->  [fp+0x58]  class-hnd exact spill-single-def <System.IO.MemoryStream>
-;  V12 loc11        [V12,T73] (  9,  4   )     ref  ->  [fp+0x50]  class-hnd exact EH-live spill-single-def <System.IO.MemoryStream>
+;  V09 loc8         [V09,T49] (  9,  6.50)     ref  ->  x27         class-hnd exact single-def <System.IO.MemoryStream>
+;  V10 loc9         [V10,T21] (  8, 16   )     ref  ->  x23         class-hnd exact single-def <System.IO.BinaryWriter>
+;  V11 loc10        [V11,T51] (  6,  6   )     ref  ->  x28         class-hnd exact single-def <System.IO.MemoryStream>
+;  V12 loc11        [V12,T72] (  9,  4   )     ref  ->  [fp+0x40]  class-hnd exact EH-live spill-single-def <System.IO.MemoryStream>
 ;  V13 loc12        [V13,T20] (  9, 16   )     ref  ->  x22         class-hnd exact single-def <System.IO.BinaryWriter>
-;  V14 loc13        [V14,T41] (  3,  8.50)     int  ->   x1        
+;  V14 loc13        [V14,T40] (  3,  8.50)     int  ->   x1        
 ;* V15 loc14        [V15    ] (  0,  0   )     int  ->  zero-ref   
 ;  V16 loc15        [V16    ] (  9, 15   )  struct (40) [fp+0xF8]  do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Collections.Generic.Dictionary`2+Enumerator[System.String,System.Resources.ResourceWriter+PrecannedResource]>
 ;* V17 loc16        [V17    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op <System.Collections.Generic.KeyValuePair`2[System.String,System.Resources.ResourceWriter+PrecannedResource]>
 ;  V18 loc17        [V18    ] (  6, 13   )  struct (40) [fp+0xD0]  do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Collections.Generic.SortedDictionary`2+Enumerator[System.String,System.Object]>
 ;* V19 loc18        [V19    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op <System.Collections.Generic.KeyValuePair`2[System.String,System.Object]>
 ;* V20 loc19        [V20    ] (  0,  0   )     ref  ->  zero-ref    class-hnd <System.Object>
-;  V21 loc20        [V21,T38] (  3, 10   )     int  ->  x27        
-;  V22 loc21        [V22,T69] (  2,  4   )     ref  ->   x3         class-hnd exact <System.Resources.ResourceWriter+PrecannedResource>
+;  V21 loc20        [V21,T38] (  3, 10   )     int  ->  x26        
+;  V22 loc21        [V22,T68] (  2,  4   )     ref  ->   x3         class-hnd exact <System.Resources.ResourceWriter+PrecannedResource>
 ;* V23 loc22        [V23    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op <System.Collections.Generic.List`1+Enumerator[System.String]>
 ;* V24 loc23        [V24    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact <System.String>
-;  V25 loc24        [V25,T12] (  6, 20.50)     int  ->  x23        
-;  V26 loc25        [V26,T71] (  2,  5   )     ref  ->  x25         class-hnd exact single-def <int[]>
-;  V27 loc26        [V27,T16] (  5, 17   )     int  ->  x23        
+;  V25 loc24        [V25,T12] (  6, 20.50)     int  ->  x26        
+;  V26 loc25        [V26,T70] (  2,  5   )     ref  ->  x24         class-hnd exact single-def <int[]>
+;  V27 loc26        [V27,T16] (  5, 17   )     int  ->  x26        
 ;* V28 loc27        [V28    ] (  0,  0   )     int  ->  zero-ref   
-;  V29 loc28        [V29,T37] (  4, 10   )     ref  ->  x26         class-hnd exact single-def <int[]>
+;  V29 loc28        [V29,T37] (  4, 10   )     ref  ->  x25         class-hnd exact single-def <int[]>
 ;  V30 loc29        [V30,T17] (  5, 17   )     int  ->  x20        
 ;* V31 loc30        [V31    ] (  0,  0   )     int  ->  zero-ref   
 ;# V32 OutArgs      [V32    ] (  1,  1   )  struct ( 0) [sp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
 ;  V33 tmp1         [V33,T35] (  5, 10   )     ref  ->  x20         class-hnd single-def "impAppendStmt" <System.IO.Stream>
 ;  V34 tmp2         [V34,T28] (  6, 12   )     ref  ->  x21         class-hnd exact single-def "NewObj constructor temp" <System.IO.BinaryWriter>
-;  V35 tmp3         [V35,T55] (  3,  6   )     ref  ->  x20         class-hnd exact single-def "NewObj constructor temp" <System.Collections.Generic.List`1[System.String]>
-;  V36 tmp4         [V36,T03] ( 14, 24   )     ref  ->  x24         class-hnd exact single-def "NewObj constructor temp" <System.IO.MemoryStream>
-;  V37 tmp5         [V37,T22] (  8, 16   )     ref  ->  x25         class-hnd exact single-def "NewObj constructor temp" <System.IO.BinaryWriter>
-;  V38 tmp6         [V38,T53] (  4,  6   )     ref  ->  x25         class-hnd single-def "impAppendStmt" <System.IO.Stream>
-;  V39 tmp7         [V39,T56] (  3,  6   )     ref  ->  x28         class-hnd exact single-def "NewObj constructor temp" <System.IO.MemoryStream>
-;  V40 tmp8         [V40,T57] (  3,  6   )     ref  ->  x24         class-hnd exact single-def "NewObj constructor temp" <System.IO.BinaryWriter>
-;  V41 tmp9         [V41,T58] (  3,  6   )     ref  ->  [fp+0x48]  class-hnd exact spill-single-def "NewObj constructor temp" <System.IO.MemoryStream>
-;  V42 tmp10        [V42,T59] (  3,  6   )     ref  ->  [fp+0x40]  class-hnd exact spill-single-def "NewObj constructor temp" <System.IO.BinaryWriter>
+;  V35 tmp3         [V35,T54] (  3,  6   )     ref  ->  x20         class-hnd exact single-def "NewObj constructor temp" <System.Collections.Generic.List`1[System.String]>
+;  V36 tmp4         [V36,T03] ( 14, 24   )     ref  ->  x23         class-hnd exact single-def "NewObj constructor temp" <System.IO.MemoryStream>
+;  V37 tmp5         [V37,T22] (  8, 16   )     ref  ->  x24         class-hnd exact single-def "NewObj constructor temp" <System.IO.BinaryWriter>
+;  V38 tmp6         [V38,T52] (  4,  6   )     ref  ->  x24         class-hnd single-def "impAppendStmt" <System.IO.Stream>
+;  V39 tmp7         [V39,T55] (  3,  6   )     ref  ->  x27         class-hnd exact single-def "NewObj constructor temp" <System.IO.MemoryStream>
+;  V40 tmp8         [V40,T56] (  3,  6   )     ref  ->  x23         class-hnd exact single-def "NewObj constructor temp" <System.IO.BinaryWriter>
+;  V41 tmp9         [V41,T57] (  3,  6   )     ref  ->  x28         class-hnd exact single-def "NewObj constructor temp" <System.IO.MemoryStream>
+;  V42 tmp10        [V42,T58] (  3,  6   )     ref  ->  [fp+0x38]  class-hnd exact spill-single-def "NewObj constructor temp" <System.IO.BinaryWriter>
 ;  V43 tmp11        [V43,T23] (  2, 16   )     int  ->   x0         "Strict ordering of exceptions for Array store"
-;  V44 tmp12        [V44,T01] (  4, 32   )     int  ->  x27         "impSpillLclRefs"
+;  V44 tmp12        [V44,T01] (  4, 32   )     int  ->  x26         "impSpillLclRefs"
 ;  V45 tmp13        [V45,T24] (  2, 16   )     int  ->   x0         "Strict ordering of exceptions for Array store"
 ;* V46 tmp14        [V46    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "spilling qmarkNull" <System.Resources.ResourceWriter+PrecannedResource>
 ;* V47 tmp15        [V47    ] (  0,  0   )    long  ->  zero-ref    "impAppendStmt"
 ;* V48 tmp16        [V48    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "impAppendStmt" <System.IO.Stream>
 ;* V49 tmp17        [V49    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "impAppendStmt" <System.Collections.Generic.SortedDictionary`2[System.String,System.Object]>
 ;* V50 tmp18        [V50    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "impAppendStmt" <System.String>
-;  V51 tmp19        [V51,T109] (  3,  0   )     ref  ->  x19         class-hnd exact single-def "NewObj constructor temp" <System.InvalidOperationException>
-;  V52 tmp20        [V52,T47] (  4,  7   )     ref  ->  x23         class-hnd exact single-def "Inlining Arg" <System.Text.UTF8Encoding+UTF8EncodingSealed>
+;  V51 tmp19        [V51,T108] (  3,  0   )     ref  ->  x19         class-hnd exact single-def "NewObj constructor temp" <System.InvalidOperationException>
+;  V52 tmp20        [V52,T46] (  4,  7   )     ref  ->  x23         class-hnd exact single-def "Inlining Arg" <System.Text.UTF8Encoding+UTF8EncodingSealed>
 ;* V53 tmp21        [V53    ] (  0,  0   )     ref  ->  zero-ref   
 ;* V54 tmp22        [V54    ] (  0,  0   )     ref  ->  zero-ref    single-def
-;  V55 tmp23        [V55,T96] (  3,  2   )     int  ->   x0        
-;  V56 tmp24        [V56,T110] (  3,  0   )     ref  ->  x21         class-hnd exact single-def "NewObj constructor temp" <System.ArgumentException>
-;  V57 tmp25        [V57,T48] (  4,  7   )     ref  ->   x0         class-hnd exact single-def "Inlining Arg" <System.Text.UTF8Encoding+UTF8EncodingSealed>
+;  V55 tmp23        [V55,T95] (  3,  2   )     int  ->   x0        
+;  V56 tmp24        [V56,T109] (  3,  0   )     ref  ->  x21         class-hnd exact single-def "NewObj constructor temp" <System.ArgumentException>
+;  V57 tmp25        [V57,T47] (  4,  7   )     ref  ->   x0         class-hnd exact single-def "Inlining Arg" <System.Text.UTF8Encoding+UTF8EncodingSealed>
 ;* V58 tmp26        [V58    ] (  0,  0   )     ref  ->  zero-ref   
 ;* V59 tmp27        [V59    ] (  0,  0   )     ref  ->  zero-ref    single-def
-;  V60 tmp28        [V60,T97] (  3,  2   )     int  ->   x0        
-;  V61 tmp29        [V61,T111] (  3,  0   )     ref  ->  x19         class-hnd exact single-def "NewObj constructor temp" <System.ArgumentException>
+;  V60 tmp28        [V60,T96] (  3,  2   )     int  ->   x0        
+;  V61 tmp29        [V61,T110] (  3,  0   )     ref  ->  x19         class-hnd exact single-def "NewObj constructor temp" <System.ArgumentException>
 ;* V62 tmp30        [V62    ] (  0,  0   )    long  ->  zero-ref    "Inline stloc first use temp"
 ;* V63 tmp31        [V63    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
-;  V64 tmp32        [V64,T79] (  2,  4   )     int  ->   x1         "Inlining Arg"
-;  V65 tmp33        [V65,T103] (  3,  1.50)     int  ->  x26         "Inline stloc first use temp"
-;  V66 tmp34        [V66,T104] (  3,  1.50)     int  ->   x3         "Inline stloc first use temp"
+;  V64 tmp32        [V64,T78] (  2,  4   )     int  ->   x1         "Inlining Arg"
+;  V65 tmp33        [V65,T102] (  3,  1.50)     int  ->  x25         "Inline stloc first use temp"
+;  V66 tmp34        [V66,T103] (  3,  1.50)     int  ->   x3         "Inline stloc first use temp"
 ;* V67 tmp35        [V67    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <System.Collections.Generic.SortedDictionary`2[System.String,System.Object]>
-;  V68 tmp36        [V68,T75] (  2,  4   )     ref  ->   x0         class-hnd exact single-def "Inlining Arg" <System.Collections.Generic.TreeSet`1[System.Collections.Generic.KeyValuePair`2[System.__Canon,System.__Canon]]>
-;  V69 tmp37        [V69,T86] (  3,  3   )     ref  ->   x0         class-hnd single-def "Inlining Arg" <System.Collections.Generic.Dictionary`2[System.String,System.Resources.ResourceWriter+PrecannedResource]>
+;  V68 tmp36        [V68,T74] (  2,  4   )     ref  ->   x0         class-hnd exact single-def "Inlining Arg" <System.Collections.Generic.TreeSet`1[System.Collections.Generic.KeyValuePair`2[System.__Canon,System.__Canon]]>
+;  V69 tmp37        [V69,T85] (  3,  3   )     ref  ->   x0         class-hnd single-def "Inlining Arg" <System.Collections.Generic.Dictionary`2[System.String,System.Resources.ResourceWriter+PrecannedResource]>
 ;* V70 tmp38        [V70    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <System.Text.UnicodeEncoding>
 ;* V71 tmp39        [V71    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.Text.UTF8Encoding+UTF8EncodingSealed>
-;  V72 tmp40        [V72,T87] (  3,  3   )     ref  ->   x0         class-hnd single-def "Inlining Arg" <System.Collections.Generic.Dictionary`2[System.String,System.Resources.ResourceWriter+PrecannedResource]>
-;  V73 tmp41        [V73,T99] (  2,  2   )  struct (40) [fp+0xA8]  do-not-enreg[SF] must-init ld-addr-op "NewObj constructor temp" <System.Collections.Generic.Dictionary`2+Enumerator[System.String,System.Resources.ResourceWriter+PrecannedResource]>
-;  V74 tmp42        [V74,T76] (  2,  4   )     ref  ->   x0         class-hnd single-def "Inlining Arg" <System.Collections.Generic.SortedDictionary`2[System.String,System.Object]>
-;  V75 tmp43        [V75,T80] (  2,  4   )  struct (40) [fp+0x80]  do-not-enreg[SF] must-init ld-addr-op "NewObj constructor temp" <System.Collections.Generic.SortedDictionary`2+Enumerator[System.String,System.Object]>
+;  V72 tmp40        [V72,T86] (  3,  3   )     ref  ->   x0         class-hnd single-def "Inlining Arg" <System.Collections.Generic.Dictionary`2[System.String,System.Resources.ResourceWriter+PrecannedResource]>
+;  V73 tmp41        [V73,T98] (  2,  2   )  struct (40) [fp+0xA8]  do-not-enreg[SF] must-init ld-addr-op "NewObj constructor temp" <System.Collections.Generic.Dictionary`2+Enumerator[System.String,System.Resources.ResourceWriter+PrecannedResource]>
+;  V74 tmp42        [V74,T75] (  2,  4   )     ref  ->   x0         class-hnd single-def "Inlining Arg" <System.Collections.Generic.SortedDictionary`2[System.String,System.Object]>
+;  V75 tmp43        [V75,T79] (  2,  4   )  struct (40) [fp+0x80]  do-not-enreg[SF] must-init ld-addr-op "NewObj constructor temp" <System.Collections.Generic.SortedDictionary`2+Enumerator[System.String,System.Object]>
 ;  V76 tmp44        [V76,T36] (  5, 10   )     ref  ->   x0         class-hnd exact single-def "Inlining Arg" <System.Collections.Generic.TreeSet`1[System.Collections.Generic.KeyValuePair`2[System.__Canon,System.__Canon]]>
 ;  V77 tmp45        [V77    ] (  8, 16   )  struct (32) [fp+0x60]  do-not-enreg[XSF] must-init addr-exposed ld-addr-op "NewObj constructor temp" <System.Collections.Generic.SortedSet`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.String,System.Object]]>
-;  V78 tmp46        [V78,T60] (  3,  6   )     ref  ->  [fp+0x38]  class-hnd exact spill-single-def "NewObj constructor temp" <System.Collections.Generic.Stack`1[System.Collections.Generic.SortedSet`1+Node[System.Collections.Generic.KeyValuePair`2[System.String,System.Object]]]>
+;  V78 tmp46        [V78,T59] (  3,  6   )     ref  ->  [fp+0x30]  class-hnd exact spill-single-def "NewObj constructor temp" <System.Collections.Generic.Stack`1[System.Collections.Generic.SortedSet`1+Node[System.Collections.Generic.KeyValuePair`2[System.String,System.Object]]]>
 ;* V79 tmp47        [V79    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
-;  V80 tmp48        [V80,T100] (  2,  2   )     int  ->  x23         "Inline return value spill temp"
+;  V80 tmp48        [V80,T99] (  2,  2   )     int  ->  [fp+0x5C]  spill-single-def "Inline return value spill temp"
 ;* V81 tmp49        [V81    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
-;  V82 tmp50        [V82,T54] (  4,  6   )     int  ->  x23         "Inlining Arg"
+;  V82 tmp50        [V82,T53] (  4,  6   )     int  ->  [fp+0x58]  spill-single-def "Inlining Arg"
 ;* V83 tmp51        [V83    ] (  0,  0   )  struct (16) zero-ref    "Inline return value spill temp" <System.Collections.Generic.KeyValuePair`2[System.String,System.Object]>
 ;* V84 tmp52        [V84    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.Collections.Generic.KeyValuePair`2[System.String,System.Object]>
 ;* V85 tmp53        [V85    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.Collections.Generic.SortedSet`1+Node[System.Collections.Generic.KeyValuePair`2[System.__Canon,System.__Canon]]>
 ;* V86 tmp54        [V86    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <System.Object>
-;  V87 tmp55        [V87,T42] (  4,  8   )     ref  ->   x1         class-hnd "Inline stloc first use temp" <ubyte[]>
+;  V87 tmp55        [V87,T41] (  4,  8   )     ref  ->   x1         class-hnd "Inline stloc first use temp" <ubyte[]>
 ;* V88 tmp56        [V88    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.String]>
-;* V89 tmp57        [V89,T45] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
+;* V89 tmp57        [V89,T44] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
 ;* V90 tmp58        [V90    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline stloc first use temp" <System.Collections.Generic.List`1[System.String]>
 ;* V91 tmp59        [V91    ] (  0,  0   )    long  ->  zero-ref    "Inline stloc first use temp"
 ;* V92 tmp60        [V92    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
-;  V93 tmp61        [V93,T77] (  2,  4   )     ref  ->  x28         class-hnd single-def "Inlining Arg" <System.IO.Stream>
-;  V94 tmp62        [V94,T43] (  2,  8   )     ref  ->   x1         "field V17.key (fldOffset=0x0)" P-INDEP
-;  V95 tmp63        [V95,T44] (  2,  8   )     ref  ->   x2         "field V17.value (fldOffset=0x8)" P-INDEP
+;  V93 tmp61        [V93,T76] (  2,  4   )     ref  ->  x27         class-hnd single-def "Inlining Arg" <System.IO.Stream>
+;  V94 tmp62        [V94,T42] (  2,  8   )     ref  ->   x1         "field V17.key (fldOffset=0x0)" P-INDEP
+;  V95 tmp63        [V95,T43] (  2,  8   )     ref  ->   x2         "field V17.value (fldOffset=0x8)" P-INDEP
 ;* V96 tmp64        [V96    ] (  0,  0   )     ref  ->  zero-ref    "field V19.key (fldOffset=0x0)" P-INDEP
 ;* V97 tmp65        [V97    ] (  0,  0   )     ref  ->  zero-ref    "field V19.value (fldOffset=0x8)" P-INDEP
 ;  V98 tmp66        [V98,T18] (  4, 17   )     ref  ->  x20         single-def "field V23._list (fldOffset=0x0)" P-INDEP
 ;  V99 tmp67        [V99,T30] (  2,  8   )     ref  ->   x1         "field V23._current (fldOffset=0x8)" P-INDEP
-;  V100 tmp68       [V100,T02] (  6, 21   )     int  ->  x27         "field V23._index (fldOffset=0x10)" P-INDEP
-;  V101 tmp69       [V101,T39] (  2,  9   )     int  ->  x23         "field V23._version (fldOffset=0x14)" P-INDEP
-;  V102 tmp70       [V102,T29] (  4, 12   )     ref  ->  [fp+0x30]  "field V83.key (fldOffset=0x0)" P-INDEP
-;  V103 tmp71       [V103,T14] (  7, 17   )     ref  ->  [fp+0x28]  "field V83.value (fldOffset=0x8)" P-INDEP
+;  V100 tmp68       [V100,T02] (  6, 21   )     int  ->  [fp+0x54]  "field V23._index (fldOffset=0x10)" P-INDEP
+;  V101 tmp69       [V101,T39] (  2,  9   )     int  ->  x26         "field V23._version (fldOffset=0x14)" P-INDEP
+;  V102 tmp70       [V102,T29] (  4, 12   )     ref  ->  [fp+0x28]  "field V83.key (fldOffset=0x0)" P-INDEP
+;  V103 tmp71       [V103,T14] (  7, 17   )     ref  ->  [fp+0x20]  "field V83.value (fldOffset=0x8)" P-INDEP
 ;* V104 tmp72       [V104    ] (  0,  0   )     ref  ->  zero-ref    "field V84.key (fldOffset=0x0)" P-INDEP
 ;* V105 tmp73       [V105    ] (  0,  0   )     ref  ->  zero-ref    "field V84.value (fldOffset=0x8)" P-INDEP
-;  V106 tmp74       [V106,T88] (  3,  3   )     ref  ->  x20         single-def "field V88._list (fldOffset=0x0)" P-INDEP
+;  V106 tmp74       [V106,T87] (  3,  3   )     ref  ->  x20         single-def "field V88._list (fldOffset=0x0)" P-INDEP
 ;* V107 tmp75       [V107    ] (  0,  0   )     ref  ->  zero-ref    single-def "field V88._current (fldOffset=0x8)" P-INDEP
-;* V108 tmp76       [V108,T106] (  0,  0   )     int  ->  zero-ref    "field V88._index (fldOffset=0x10)" P-INDEP
-;  V109 tmp77       [V109,T101] (  2,  2   )     int  ->  x23         "field V88._version (fldOffset=0x14)" P-INDEP
+;* V108 tmp76       [V108,T105] (  0,  0   )     int  ->  zero-ref    "field V88._index (fldOffset=0x10)" P-INDEP
+;  V109 tmp77       [V109,T100] (  2,  2   )     int  ->  x26         "field V88._version (fldOffset=0x14)" P-INDEP
 ;* V110 tmp78       [V110    ] (  0,  0   )     ref  ->  zero-ref    single-def "V73.[000..008)"
-;  V111 tmp79       [V111,T105] (  2,  1   )     int  ->   x1         "V73.[008..012)"
+;  V111 tmp79       [V111,T104] (  2,  1   )     int  ->   x1         "V73.[008..012)"
 ;* V112 tmp80       [V112    ] (  0,  0   )     int  ->  zero-ref    "V73.[012..016)"
 ;* V113 tmp81       [V113    ] (  0,  0   )     int  ->  zero-ref    "V73.[016..020)"
 ;* V114 tmp82       [V114    ] (  0,  0   )     int  ->  zero-ref    "V75.[000..004)"
-;  V115 tmp83       [V115,T89] (  3,  3   )     ref  ->   x0         single-def "argument with side effect"
-;  V116 tmp84       [V116,T81] (  2,  4   )     int  ->   x1         "argument with side effect"
-;  V117 tmp85       [V117,T82] (  2,  4   )     int  ->   x1         "argument with side effect"
-;  V118 tmp86       [V118,T112] (  2,  0   )     ref  ->   x1         single-def "argument with side effect"
-;  V119 tmp87       [V119,T90] (  3,  3   )     ref  ->   x0         single-def "argument with side effect"
-;  V120 tmp88       [V120,T61] (  3,  6   )     ref  ->   x0         single-def "argument with side effect"
-;  V121 tmp89       [V121,T83] (  2,  4   )     int  ->   x1         "argument with side effect"
-;  V122 tmp90       [V122,T62] (  3,  6   )     ref  ->   x0         single-def "argument with side effect"
-;  V123 tmp91       [V123,T78] (  2,  4   )     ref  ->   x2         single-def "argument with side effect"
-;  V124 tmp92       [V124,T113] (  2,  0   )     ref  ->   x1         single-def "argument with side effect"
+;  V115 tmp83       [V115,T88] (  3,  3   )     ref  ->   x0         single-def "argument with side effect"
+;  V116 tmp84       [V116,T80] (  2,  4   )     int  ->   x1         "argument with side effect"
+;  V117 tmp85       [V117,T81] (  2,  4   )     int  ->   x1         "argument with side effect"
+;  V118 tmp86       [V118,T111] (  2,  0   )     ref  ->   x1         single-def "argument with side effect"
+;  V119 tmp87       [V119,T89] (  3,  3   )     ref  ->   x0         single-def "argument with side effect"
+;  V120 tmp88       [V120,T60] (  3,  6   )     ref  ->   x0         single-def "argument with side effect"
+;  V121 tmp89       [V121,T82] (  2,  4   )     int  ->   x1         "argument with side effect"
+;  V122 tmp90       [V122,T61] (  3,  6   )     ref  ->   x0         single-def "argument with side effect"
+;  V123 tmp91       [V123,T77] (  2,  4   )     ref  ->   x2         single-def "argument with side effect"
+;  V124 tmp92       [V124,T112] (  2,  0   )     ref  ->   x1         single-def "argument with side effect"
 ;  V125 tmp93       [V125,T31] (  3, 12   )     ref  ->   x0         "BlockOp address local"
 ;  V126 tmp94       [V126,T04] (  3, 24   )     ref  ->   x0         "argument with side effect"
 ;  V127 tmp95       [V127,T05] (  3, 24   )     ref  ->   x0         "argument with side effect"
 ;  V128 tmp96       [V128,T25] (  2, 16   )     int  ->   x1         "argument with side effect"
 ;  V129 tmp97       [V129,T32] (  3, 12   )     ref  ->   x0         "argument with side effect"
 ;  V130 tmp98       [V130,T06] (  3, 24   )     ref  ->   x0         "arr expr"
 ;  V131 tmp99       [V131,T07] (  3, 24   )     ref  ->   x0         single-def "argument with side effect"
 ;  V132 tmp100      [V132,T08] (  3, 24   )     ref  ->   x0         single-def "argument with side effect"
 ;  V133 tmp101      [V133,T09] (  3, 24   )     ref  ->   x0         single-def "argument with side effect"
-;  V134 tmp102      [V134,T63] (  3,  6   )     ref  ->   x0         single-def "argument with side effect"
-;  V135 tmp103      [V135,T64] (  3,  6   )     ref  ->   x0         single-def "argument with side effect"
-;  V136 tmp104      [V136,T65] (  3,  6   )     ref  ->   x0         single-def "argument with side effect"
-;  V137 tmp105      [V137,T66] (  3,  6   )     ref  ->   x0         single-def "argument with side effect"
-;  V138 tmp106      [V138,T84] (  2,  4   )     int  ->   x1         "argument with side effect"
-;  V139 tmp107      [V139,T91] (  3,  3   )     ref  ->   x0         single-def "argument with side effect"
-;  V140 tmp108      [V140,T102] (  2,  2   )     int  ->   x2         "argument with side effect"
-;  V141 tmp109      [V141,T98] (  2,  2   )     ref  ->  x20         single-def "argument with side effect"
-;  V142 tmp110      [V142,T92] (  3,  3   )     ref  ->   x0         single-def "argument with side effect"
-;  V143 tmp111      [V143,T93] (  3,  3   )     ref  ->   x0         single-def "argument with side effect"
-;  V144 tmp112      [V144,T67] (  3,  6   )     ref  ->   x0         single-def "argument with side effect"
-;  V145 tmp113      [V145,T85] (  2,  4   )     int  ->   x2         "argument with side effect"
-;  V146 tmp114      [V146,T94] (  3,  3   )     ref  ->   x0         single-def "argument with side effect"
-;  V147 tmp115      [V147,T95] (  3,  3   )     ref  ->   x0         single-def "argument with side effect"
-;  V148 tmp116      [V148,T68] (  3,  6   )     ref  ->   x0         single-def "argument with side effect"
-;  V149 tmp117      [V149,T114] (  2,  0   )     ref  ->   x1         single-def "argument with side effect"
-;  V150 tmp118      [V150,T115] (  2,  0   )     ref  ->   x1         single-def "argument with side effect"
-;  V151 PSPSym      [V151,T107] (  1,  1   )    long  ->  [fp+0x128]  do-not-enreg[V] "PSPSym"
+;  V134 tmp102      [V134,T62] (  3,  6   )     ref  ->   x0         single-def "argument with side effect"
+;  V135 tmp103      [V135,T63] (  3,  6   )     ref  ->   x0         single-def "argument with side effect"
+;  V136 tmp104      [V136,T64] (  3,  6   )     ref  ->   x0         single-def "argument with side effect"
+;  V137 tmp105      [V137,T65] (  3,  6   )     ref  ->   x0         single-def "argument with side effect"
+;  V138 tmp106      [V138,T83] (  2,  4   )     int  ->   x1         "argument with side effect"
+;  V139 tmp107      [V139,T90] (  3,  3   )     ref  ->   x0         single-def "argument with side effect"
+;  V140 tmp108      [V140,T101] (  2,  2   )     int  ->   x2         "argument with side effect"
+;  V141 tmp109      [V141,T97] (  2,  2   )     ref  ->  x20         single-def "argument with side effect"
+;  V142 tmp110      [V142,T91] (  3,  3   )     ref  ->   x0         single-def "argument with side effect"
+;  V143 tmp111      [V143,T92] (  3,  3   )     ref  ->   x0         single-def "argument with side effect"
+;  V144 tmp112      [V144,T66] (  3,  6   )     ref  ->   x0         single-def "argument with side effect"
+;  V145 tmp113      [V145,T84] (  2,  4   )     int  ->   x2         "argument with side effect"
+;  V146 tmp114      [V146,T93] (  3,  3   )     ref  ->   x0         single-def "argument with side effect"
+;  V147 tmp115      [V147,T94] (  3,  3   )     ref  ->   x0         single-def "argument with side effect"
+;  V148 tmp116      [V148,T67] (  3,  6   )     ref  ->   x0         single-def "argument with side effect"
+;  V149 tmp117      [V149,T113] (  2,  0   )     ref  ->   x1         single-def "argument with side effect"
+;  V150 tmp118      [V150,T114] (  2,  0   )     ref  ->   x1         single-def "argument with side effect"
+;  V151 PSPSym      [V151,T106] (  1,  1   )    long  ->  [fp+0x128]  do-not-enreg[V] "PSPSym"
 ;  V152 cse0        [V152,T33] (  3, 12   )     int  ->   x1         "CSE #24: moderate"
-;* V153 cse1        [V153,T108] (  0,  0   )    long  ->  zero-ref    "CSE #02: conservative"
-;  V154 cse2        [V154,T74] (  4,  4   )     ref  ->  x22         "CSE #05: conservative"
-;  V155 cse3        [V155,T72] (  2,  4.25)   byref  ->  [fp+0x20]  spill-single-def hoist "CSE #26: conservative"
-;  V156 cse4        [V156,T70] (  3,  5   )     int  ->  x27         "CSE #21: conservative"
+;* V153 cse1        [V153,T107] (  0,  0   )    long  ->  zero-ref    "CSE #02: conservative"
+;  V154 cse2        [V154,T73] (  4,  4   )     ref  ->  x22         "CSE #05: conservative"
+;  V155 cse3        [V155,T71] (  2,  4.25)   byref  ->  [fp+0x18]  spill-single-def hoist "CSE #26: conservative"
+;  V156 cse4        [V156,T69] (  3,  5   )     int  ->  [fp+0x50]  spill-single-def "CSE #21: conservative"
 ;  V157 cse5        [V157,T34] (  2,  8   )     int  ->   x0         "CSE #18: moderate"
 ;  V158 cse6        [V158,T26] (  2, 16   )     int  ->   x0         "CSE #17: aggressive"
-;  V159 cse7        [V159,T40] (  6,  8.50)    long  ->  x23         "CSE #11: moderate"
-;  V160 cse8        [V160,T49] (  4,  7   )    long  ->  x23         "CSE #14: moderate"
-;  V161 cse9        [V161,T11] (  6, 21   )     int  ->  registers   multi-def "CSE #19: aggressive"
-;  V162 rat0        [V162,T10] (  3, 24   )     int  ->   x1         "ReplaceWithLclVar is creating a new local variable"
-;  TEMP_01                                     int  ->  [fp+0x1C]
+;  V159 cse7        [V159,T48] (  4,  7   )    long  ->  [fp+0x48]  spill-single-def "CSE #14: moderate"
+;  V160 cse8        [V160,T11] (  6, 21   )     int  ->  registers   multi-def "CSE #19: aggressive"
+;  V161 rat0        [V161,T10] (  3, 24   )     int  ->   x1         "ReplaceWithLclVar is creating a new local variable"
+;  TEMP_01                                     int  ->  [fp+0x14]
 ;
 ; Lcl frame size = 288
 
 G_M22543_IG01:
             stp     fp, lr, [sp, #0xD1FFAB1E]!
             stp     x19, x20, [sp, #0xD1FFAB1E]
             stp     x21, x22, [sp, #0xD1FFAB1E]
             stp     x23, x24, [sp, #0xD1FFAB1E]
             stp     x25, x26, [sp, #0xD1FFAB1E]
             stp     x27, x28, [sp, #0xD1FFAB1E]
             mov     fp, sp
             movi    v16.16b, #0
             add     x9, fp, #64
             mov     x10, #128
             stp     q16, q16, [x9, #0x20]
             stp     q16, q16, [x9, #0x40]!
             subs    x10, x10, #64
             bge     pc-16 (-4 instructions)
             add     x1, sp, #0xD1FFAB1E
             str     x1, [fp, #0xD1FFAB1E]	// [V151 PSPSym]
             mov     x19, x0
 						;; size=68 bbWeight=1 PerfScore 13.50
 G_M22543_IG02:
             ldr     x0, [x19, #0x10]
             cbz     x0, G_M22543_IG58
             ldr     x20, [x19, #0x18]
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x21, x0
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             ldr     x22, [x0]
             mov     x23, x22
             cbz     x20, G_M22543_IG61
             mov     x0, x20
             ldr     x1, [x20]
             ldr     x1, [x1, #0x40]
             ldr     x1, [x1, #0x30]
             blr     x1
             cbz     w0, G_M22543_IG59
             add     x14, x21, #8
             mov     x15, x20
             bl      CORINFO_HELP_ASSIGN_REF
             add     x14, x21, #16
             mov     x15, x23
             bl      CORINFO_HELP_ASSIGN_REF
             strb    wzr, [x21, #0x18]
             ldr     w0, [x23, #0x20]
             mov     w1, #0xD1FFAB1E
             cmp     w0, w1
             bne     G_M22543_IG04
 						;; size=124 bbWeight=1 PerfScore 37.50
 G_M22543_IG03:
             ldr     x0, [x23, #0x10]
             ldr     x1, [x0]
             ldr     x1, [x1, #0x40]
             ldr     x1, [x1, #0x28]
             blr     x1
             cmp     w0, #1
             cset    x0, le
             b       G_M22543_IG05
 						;; size=32 bbWeight=0.50 PerfScore 7.50
 G_M22543_IG04:
             mov     w0, wzr
 						;; size=4 bbWeight=0.50 PerfScore 0.25
 G_M22543_IG05:
             strb    w0, [x21, #0x19]
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x20, x0
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             mov     w1, #6
             bl      CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
             movz    x14, #0xD1FFAB1E      // data for System.Collections.Generic.List`1[System.String]:s_emptyArray
             movk    x14, #0xD1FFAB1E LSL #16
             movk    x14, #0xD1FFAB1E LSL #32
             ldr     x15, [x14]
             add     x14, x20, #8
             bl      CORINFO_HELP_ASSIGN_REF
             movz    x1, #0xD1FFAB1E
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     w1, [x1]
             tbz     w1, #0, G_M22543_IG60
 						;; size=88 bbWeight=1 PerfScore 18.50
 G_M22543_IG06:
             movz    x1, #0xD1FFAB1E      // data for System.Resources.ResourceManager:MagicNumber
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     w1, [x1]
             mov     x0, x21
             movz    x2, #0xD1FFAB1E      // code for System.IO.BinaryWriter:Write(int):this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             movz    x1, #0xD1FFAB1E      // data for System.Resources.ResourceManager:HeaderVersionNumber
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     w1, [x1]
             mov     x0, x21
             movz    x2, #0xD1FFAB1E      // code for System.IO.BinaryWriter:Write(int):this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            movz    x23, #0xD1FFAB1E
-            movk    x23, #0xD1FFAB1E LSL #16
-            movk    x23, #0xD1FFAB1E LSL #32
-            mov     x0, x23
+            movz    x0, #0xD1FFAB1E
+            movk    x0, #0xD1FFAB1E LSL #16
+            movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
-            mov     x24, x0
+            mov     x23, x0
             mov     w1, #240
             movz    x2, #0xD1FFAB1E      // code for System.IO.MemoryStream:.ctor(int):this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
-            mov     x25, x0
+            mov     x24, x0
             mov     x0, x22
-            ldrb    w14, [x24, #0x29]
+            ldrb    w14, [x23, #0x29]
             cbz     w14, G_M22543_IG62
-            add     x14, x25, #8
-            mov     x15, x24
+            add     x14, x24, #8
+            mov     x15, x23
             bl      CORINFO_HELP_ASSIGN_REF
-            add     x14, x25, #16
+            add     x14, x24, #16
             mov     x15, x0
             bl      CORINFO_HELP_ASSIGN_REF
-            strb    wzr, [x25, #0x18]
+            strb    wzr, [x24, #0x18]
             ldr     w1, [x0, #0x20]
             mov     w2, #0xD1FFAB1E
             cmp     w1, w2
             bne     G_M22543_IG08
-						;; size=204 bbWeight=1 PerfScore 48.00
+						;; size=200 bbWeight=1 PerfScore 47.50
 G_M22543_IG07:
             ldr     x0, [x0, #0x10]
             ldr     x1, [x0]
             ldr     x1, [x1, #0x40]
             ldr     x1, [x1, #0x28]
             blr     x1
             cmp     w0, #1
             cset    x0, le
             b       G_M22543_IG09
 						;; size=32 bbWeight=0.50 PerfScore 7.50
 G_M22543_IG08:
             mov     w0, wzr
 						;; size=4 bbWeight=0.50 PerfScore 0.25
 G_M22543_IG09:
-            strb    w0, [x25, #0x19]
-            mov     x0, x25
+            strb    w0, [x24, #0x19]
+            mov     x0, x24
             movz    x1, #0xD1FFAB1E
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             movz    x2, #0xD1FFAB1E      // code for System.IO.BinaryWriter:Write(System.String):this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            mov     x0, x25
+            mov     x0, x24
             movz    x1, #0xD1FFAB1E
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             movz    x2, #0xD1FFAB1E      // code for System.IO.BinaryWriter:Write(System.String):this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            ldr     x0, [x25, #0x08]
+            ldr     x0, [x24, #0x08]
             ldr     x1, [x0]
             ldr     x1, [x1, #0x50]
             ldr     x1, [x1, #0x30]
             blr     x1
-            mov     x0, x24
+            mov     x0, x23
             movz    x1, #0xD1FFAB1E      // code for System.IO.MemoryStream:get_Length():long:this
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
             mov     w1, w0
             mov     x0, x21
             movz    x2, #0xD1FFAB1E      // code for System.IO.BinaryWriter:Write(int):this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            ldrb    w2, [x24, #0x2B]
+            ldrb    w2, [x23, #0x2B]
             cbz     w2, G_M22543_IG63
-            ldr     w2, [x24, #0x18]
-            mov     x0, x24
+            ldr     w2, [x23, #0x18]
+            mov     x0, x23
             mov     x1, xzr
             movz    x3, #0xD1FFAB1E      // code for System.IO.MemoryStream:SeekCore(long,int):long:this
             movk    x3, #0xD1FFAB1E LSL #16
             movk    x3, #0xD1FFAB1E LSL #32
             ldr     x3, [x3]
             blr     x3
             ldr     x0, [x21, #0x08]
             ldr     x1, [x0]
             ldr     x1, [x1, #0x50]
             ldr     x1, [x1, #0x30]
             blr     x1
-            ldr     x25, [x21, #0x08]
-            mov     x0, x24
+            ldr     x24, [x21, #0x08]
+            mov     x0, x23
             movz    x1, #0xD1FFAB1E      // code for System.IO.MemoryStream:get_Length():long:this
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
             mov     w1, w0
-            mov     x0, x25
+            mov     x0, x24
             movz    x2, #0xD1FFAB1E      // code for System.IO.Stream:ValidateCopyToArguments(System.IO.Stream,int)
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            ldrb    w1, [x24, #0x2B]
+            ldrb    w1, [x23, #0x2B]
             cbz     w1, G_M22543_IG63
 						;; size=272 bbWeight=1 PerfScore 87.50
 G_M22543_IG10:
-            ldp     w26, w1, [x24, #0x1C]
-            sub     w1, w1, w26
-            mov     x0, x24
+            ldp     w25, w1, [x23, #0x1C]
+            sub     w1, w1, w25
+            mov     x0, x23
             movz    x2, #0xD1FFAB1E      // code for System.IO.MemoryStream:InternalEmulateRead(int):int:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             sxtw    w3, w0
             cmp     w3, #0
             ble     G_M22543_IG11
-            ldr     x1, [x24, #0x10]
-            mov     x0, x25
-            mov     w2, w26
-            ldr     x4, [x25]
+            ldr     x1, [x23, #0x10]
+            mov     x0, x24
+            mov     w2, w25
+            ldr     x4, [x24]
             ldr     x4, [x4, #0x60]
             ldr     x4, [x4, #0x30]
             blr     x4
 						;; size=72 bbWeight=0.50 PerfScore 12.75
 G_M22543_IG11:
             mov     x0, x21
             mov     w1, #2
             movz    x2, #0xD1FFAB1E      // code for System.IO.BinaryWriter:Write(int):this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             ldr     x0, [x19, #0x10]
             ldr     x0, [x0, #0x18]
-            ldr     w24, [x0, #0x20]
+            ldr     w23, [x0, #0x20]
             ldr     x0, [x19, #0x28]
             cbz     x0, G_M22543_IG13
 						;; size=48 bbWeight=1 PerfScore 19.50
 G_M22543_IG12:
             ldr     x0, [x19, #0x28]
             ldr     w1, [x0, #0x38]
             ldr     w0, [x0, #0x40]
             sub     w0, w1, w0
-            add     w24, w0, w24
+            add     w23, w0, w23
 						;; size=20 bbWeight=0.50 PerfScore 5.00
 G_M22543_IG13:
             mov     x0, x21
-            mov     w1, w24
+            mov     w1, w23
             movz    x2, #0xD1FFAB1E      // code for System.IO.BinaryWriter:Write(int):this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            sxtw    x1, w24
+            sxtw    x1, w23
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWARR_1_VC
-            mov     x25, x0
-            sxtw    x1, w24
+            mov     x24, x0
+            sxtw    x1, w23
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWARR_1_VC
-            mov     x26, x0
-            mov     w27, wzr
-            mov     x0, x23
+            mov     x25, x0
+            mov     w26, wzr
+            movz    x0, #0xD1FFAB1E
+            movk    x0, #0xD1FFAB1E LSL #16
+            movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
-            mov     x28, x0
+            mov     x27, x0
             mov     w1, #40
-            mul     w1, w24, w1
-            mov     x0, x28
+            mul     w1, w23, w1
+            mov     x0, x27
             movz    x2, #0xD1FFAB1E      // code for System.IO.MemoryStream:.ctor(int):this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
-            mov     x24, x0
+            mov     x23, x0
             movz    x2, #0xD1FFAB1E
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     w2, [x2]
             tbz     w2, #0, G_M22543_IG64
-						;; size=164 bbWeight=1 PerfScore 33.00
+						;; size=172 bbWeight=1 PerfScore 34.00
 G_M22543_IG14:
             movz    x2, #0xD1FFAB1E      // data for System.Text.UnicodeEncoding:s_littleEndianDefault
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
-            mov     x1, x28
-            mov     x0, x24
+            mov     x1, x27
+            mov     x0, x23
             mov     w3, wzr
             movz    x4, #0xD1FFAB1E      // code for System.IO.BinaryWriter:.ctor(System.IO.Stream,System.Text.Encoding,ubyte):this
             movk    x4, #0xD1FFAB1E LSL #16
             movk    x4, #0xD1FFAB1E LSL #32
             ldr     x4, [x4]
             blr     x4
-            mov     x0, x23
+            movz    x0, #0xD1FFAB1E
+            movk    x0, #0xD1FFAB1E LSL #16
+            movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
-            mov     x2, x0
-            str     x2, [fp, #0x48]	// [V41 tmp9]
-            mov     x0, x2
+            mov     x28, x0
             mov     w1, wzr
-            movz    x3, #0xD1FFAB1E      // code for System.IO.MemoryStream:.ctor(int):this
-            movk    x3, #0xD1FFAB1E LSL #16
-            movk    x3, #0xD1FFAB1E LSL #32
-            ldr     x3, [x3]
-            blr     x3
-            ldr     x1, [fp, #0x48]	// [V41 tmp9]
-            stp     x1, x1, [fp, #0x50]	// [V12 loc11], [V11 loc10]
-						;; size=100 bbWeight=1 PerfScore 24.00
+            movz    x2, #0xD1FFAB1E      // code for System.IO.MemoryStream:.ctor(int):this
+            movk    x2, #0xD1FFAB1E LSL #16
+            movk    x2, #0xD1FFAB1E LSL #32
+            ldr     x2, [x2]
+            blr     x2
+            str     x28, [fp, #0x40]	// [V12 loc11]
+						;; size=96 bbWeight=1 PerfScore 21.50
 G_M22543_IG15:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x4, x0
-            str     x4, [fp, #0x40]	// [V42 tmp10]
+            str     x4, [fp, #0x38]	// [V42 tmp10]
             mov     x2, x22
             mov     x0, x4
-            ldr     x1, [fp, #0x58]	// [V11 loc10]
+            mov     x1, x28
             mov     w3, wzr
             movz    x5, #0xD1FFAB1E      // code for System.IO.BinaryWriter:.ctor(System.IO.Stream,System.Text.Encoding,ubyte):this
             movk    x5, #0xD1FFAB1E LSL #16
             movk    x5, #0xD1FFAB1E LSL #32
             ldr     x5, [x5]
             blr     x5
-            ldr     x22, [fp, #0x40]	// [V42 tmp10]
+            ldr     x22, [fp, #0x38]	// [V42 tmp10]
             ldr     x0, [x19, #0x28]
             cbz     x0, G_M22543_IG20
-						;; size=72 bbWeight=1 PerfScore 19.00
+						;; size=72 bbWeight=1 PerfScore 17.50
 G_M22543_IG16:
             ldr     x0, [x19, #0x28]
             ldr     w1, [x0, #0x44]
             stp     xzr, xzr, [fp, #0xC0]
 						;; size=12 bbWeight=0.50 PerfScore 3.50
 G_M22543_IG17:
             ldr     x2, [fp, #0xA8]
             str     x2, [fp, #0xF8]
             ldp     q16, q17, [fp, #0xB0]
             stp     q16, q17, [fp, #0xD1FFAB1E]
 						;; size=16 bbWeight=0.50 PerfScore 3.00
 G_M22543_IG18:
             str     x0, [fp, #0xF8]	// [V16 loc15]
             str     w1, [fp, #0xD1FFAB1E]	// [V16 loc15+0x08]
             str     wzr, [fp, #0xD1FFAB1E]	// [V16 loc15+0x0c]
             mov     w0, #2
             str     w0, [fp, #0xD1FFAB1E]	// [V16 loc15+0x10]
             add     x0, fp, #248	// [V16 loc15]
-            add     x1, x23, #0xD1FFAB1E
+            movz    x1, #0xD1FFAB1E
+            movk    x1, #0xD1FFAB1E LSL #16
+            movk    x1, #0xD1FFAB1E LSL #32
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.Dictionary`2+Enumerator[System.__Canon,System.__Canon]:MoveNext():ubyte:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             cbz     w0, G_M22543_IG20
-						;; size=52 bbWeight=0.50 PerfScore 6.00
+						;; size=60 bbWeight=0.50 PerfScore 6.50
 G_M22543_IG19:
             ldp     x1, x2, [fp, #0xD1FFAB1E]	// [V16 loc15+0x18], [V16 loc15+0x20]
             ldr     x0, [x19, #0x10]
             movz    x3, #0xD1FFAB1E      // code for System.Collections.Generic.SortedDictionary`2[System.__Canon,System.__Canon]:Add(System.__Canon,System.__Canon):this
             movk    x3, #0xD1FFAB1E LSL #16
             movk    x3, #0xD1FFAB1E LSL #32
             ldr     x3, [x3]
             ldr     wzr, [x0]
             blr     x3
             add     x0, fp, #248	// [V16 loc15]
-            add     x1, x23, #0xD1FFAB1E
+            movz    x1, #0xD1FFAB1E
+            movk    x1, #0xD1FFAB1E LSL #16
+            movk    x1, #0xD1FFAB1E LSL #32
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.Dictionary`2+Enumerator[System.__Canon,System.__Canon]:MoveNext():ubyte:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             cbnz    w0, G_M22543_IG19
-						;; size=64 bbWeight=4 PerfScore 88.00
+						;; size=72 bbWeight=4 PerfScore 92.00
 G_M22543_IG20:
             ldr     x0, [x19, #0x10]
             ldr     x0, [x0, #0x18]
             ldrsb   wzr, [x0]
             stp     xzr, xzr, [fp, #0x60]
             stp     xzr, xzr, [fp, #0x70]
             str     x0, [fp, #0x60]	// [V77 tmp45]
             ldr     w1, [x0, #0x24]
             str     w1, [fp, #0x78]	// [V77 tmp45+0x18]
             ldr     w0, [x0, #0x20]
             add     w0, w0, #1
             orr     w0, w0, #1
             clz     w0, w0
-            eor     w23, w0, #31
+            eor     w1, w0, #31
+            str     w1, [fp, #0x5C]	// [V80 tmp48]
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
-            str     x0, [fp, #0x38]	// [V78 tmp46]
-            lsl     w23, w23, #1
-            tbnz    w23, #31, G_M22543_IG35
-            sxtw    x1, w23
+            str     x0, [fp, #0x30]	// [V78 tmp46]
+            ldr     w1, [fp, #0x5C]	// [V80 tmp48]
+            lsl     w3, w1, #1
+            str     w3, [fp, #0x58]	// [V82 tmp50]
+            tbnz    w3, #31, G_M22543_IG35
+            sxtw    x1, w3
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWARR_1_OBJ
-            ldr     x23, [fp, #0x38]	// [V78 tmp46]
-            add     x14, x23, #8
+            ldr     x1, [fp, #0x30]	// [V78 tmp46]
+            add     x14, x1, #8
             mov     x15, x0
             bl      CORINFO_HELP_ASSIGN_REF
-            stp     x23, xzr, [fp, #0x68]	// [V77 tmp45+0x08], [V77 tmp45+0x10]
+            stp     x1, xzr, [fp, #0x68]	// [V77 tmp45+0x08], [V77 tmp45+0x10]
             strb    wzr, [fp, #0x7C]	// [V77 tmp45+0x1c]
             add     x0, fp, #96	// [V77 tmp45]
-            movz    x23, #0xD1FFAB1E
-            movk    x23, #0xD1FFAB1E LSL #16
-            movk    x23, #0xD1FFAB1E LSL #32
-            mov     x1, x23
-            movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.SortedSet`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.__Canon,System.__Canon]]:Initialize():this
+            movz    x2, #0xD1FFAB1E
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
-            ldr     x2, [x2]
-            blr     x2
-						;; size=164 bbWeight=1 PerfScore 43.50
+            str     x2, [fp, #0x48]	// [V159 cse7]
+            mov     x1, x2
+            movz    x3, #0xD1FFAB1E      // code for System.Collections.Generic.SortedSet`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.__Canon,System.__Canon]]:Initialize():this
+            movk    x3, #0xD1FFAB1E LSL #16
+            movk    x3, #0xD1FFAB1E LSL #32
+            ldr     x3, [x3]
+            blr     x3
+						;; size=180 bbWeight=1 PerfScore 48.50
 G_M22543_IG21:
             ldp     x0, x1, [fp, #0x60]
             stp     x0, x1, [fp, #0x88]
             ldp     x0, x1, [fp, #0x70]
             stp     x0, x1, [fp, #0x98]
 						;; size=16 bbWeight=1 PerfScore 8.00
 G_M22543_IG22:
             ldp     q16, q17, [fp, #0x80]
             stp     q16, q17, [fp, #0xD0]
             ldr     x0, [fp, #0xA0]
             str     x0, [fp, #0xF0]
 						;; size=16 bbWeight=1 PerfScore 6.00
 G_M22543_IG23:
             mov     w0, #1
             str     w0, [fp, #0xD0]	// [V18 loc17]
             add     x0, fp, #216	// [V18 loc17+0x08]
-            mov     x1, x23
+            ldr     x1, [fp, #0x48]	// [V159 cse7]
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.SortedSet`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.__Canon,System.__Canon]]:MoveNext():ubyte:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             cbz     w0, G_M22543_IG29
-						;; size=40 bbWeight=1 PerfScore 9.00
+						;; size=40 bbWeight=1 PerfScore 10.50
 G_M22543_IG24:
             ldr     x0, [fp, #0xE8]	// [V18 loc17+0x18]
             cbz     x0, G_M22543_IG30
 						;; size=8 bbWeight=4 PerfScore 12.00
 G_M22543_IG25:
             ldr     x0, [fp, #0xE8]	// [V18 loc17+0x18]
             ldp     x1, x2, [x0, #0x20]
-            str     x2, [fp, #0x28]	// [V103 tmp71]
+            str     x2, [fp, #0x20]	// [V103 tmp71]
 						;; size=12 bbWeight=2 PerfScore 14.00
 G_M22543_IG26:
-            str     x1, [fp, #0x30]	// [V102 tmp70]
+            str     x1, [fp, #0x28]	// [V102 tmp70]
             mov     x0, x1
             movz    x3, #0xD1FFAB1E      // code for System.Resources.FastResourceComparer:HashFunction(System.String):int
             movk    x3, #0xD1FFAB1E LSL #16
             movk    x3, #0xD1FFAB1E LSL #32
             ldr     x3, [x3]
             blr     x3
-            ldr     w3, [x25, #0x08]
-            cmp     w27, w3
+            ldr     w3, [x24, #0x08]
+            cmp     w26, w3
             bhs     G_M22543_IG37
-            add     x1, x25, #16
-            str     w0, [x1, w27, UXTW #2]
-            add     w0, w27, #1
+            add     x1, x24, #16
+            str     w0, [x1, w26, UXTW #2]
+            add     w0, w26, #1
             str     w0, [fp, #0xD1FFAB1E]	// [V08 loc7]
-            ldr     x0, [x24, #0x08]
+            ldr     x0, [x23, #0x08]
             mov     x1, xzr
             mov     w2, #1
             ldr     x3, [x0]
             ldr     x3, [x3, #0x60]
             ldr     x3, [x3, #0x08]
             blr     x3
-            ldr     w1, [x26, #0x08]
-            cmp     w27, w1
+            ldr     w1, [x25, #0x08]
+            cmp     w26, w1
             bhs     G_M22543_IG37
-            add     x1, x26, #16
-            str     w0, [x1, w27, UXTW #2]
-            mov     x0, x24
-            ldr     x1, [fp, #0x30]	// [V102 tmp70]
+            add     x1, x25, #16
+            str     w0, [x1, w26, UXTW #2]
+            mov     x0, x23
+            ldr     x1, [fp, #0x28]	// [V102 tmp70]
             movz    x2, #0xD1FFAB1E      // code for System.IO.BinaryWriter:Write(System.String):this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             ldr     x0, [x22, #0x08]
             mov     x1, xzr
             mov     w2, #1
             ldr     x3, [x0]
             ldr     x3, [x3, #0x60]
             ldr     x3, [x3, #0x08]
             blr     x3
             mov     w1, w0
-            mov     x0, x24
+            mov     x0, x23
             movz    x2, #0xD1FFAB1E      // code for System.IO.BinaryWriter:Write(int):this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            ldr     x0, [fp, #0x28]	// [V103 tmp71]
+            ldr     x0, [fp, #0x20]	// [V103 tmp71]
             mov     x1, x20
             movz    x2, #0xD1FFAB1E      // code for System.Resources.ResourceWriter:FindTypeCode(System.Object,System.Collections.Generic.List`1[System.String]):int
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            sxtw    w27, w0
+            sxtw    w26, w0
             mov     x0, x22
-            mov     w1, w27
+            mov     w1, w26
             movz    x2, #0xD1FFAB1E      // code for System.IO.BinaryWriter:Write7BitEncodedInt(int):this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            ldr     x3, [fp, #0x28]	// [V103 tmp71]
+            ldr     x3, [fp, #0x20]	// [V103 tmp71]
             cbnz    x3, G_M22543_IG31
 						;; size=256 bbWeight=4 PerfScore 324.00
 G_M22543_IG27:
-            mov     w0, w27
+            mov     w0, w26
             mov     x1, x3
             mov     x2, x22
             movz    x3, #0xD1FFAB1E      // code for System.Resources.ResourceWriter:WriteValue(int,System.Object,System.IO.BinaryWriter)
             movk    x3, #0xD1FFAB1E LSL #16
             movk    x3, #0xD1FFAB1E LSL #32
             ldr     x3, [x3]
             blr     x3
 						;; size=32 bbWeight=2 PerfScore 14.00
 G_M22543_IG28:
             add     x0, fp, #216	// [V18 loc17+0x08]
-            mov     x1, x23
+            ldr     x1, [fp, #0x48]	// [V159 cse7]
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.SortedSet`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.__Canon,System.__Canon]]:MoveNext():ubyte:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            ldr     w27, [fp, #0xD1FFAB1E]	// [V08 loc7]
+            ldr     w26, [fp, #0xD1FFAB1E]	// [V08 loc7]
             cbnz    w0, G_M22543_IG24
-						;; size=36 bbWeight=4 PerfScore 38.00
+						;; size=36 bbWeight=4 PerfScore 44.00
 G_M22543_IG29:
             ldr     w1, [x20, #0x10]
             mov     x0, x21
             movz    x2, #0xD1FFAB1E      // code for System.IO.BinaryWriter:Write(int):this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            ldr     w23, [x20, #0x14]
-            mov     w27, wzr
+            ldr     w26, [x20, #0x14]
+            mov     w2, wzr
             b       G_M22543_IG33
 						;; size=40 bbWeight=1 PerfScore 13.50
 G_M22543_IG30:
             mov     x1, xzr
-            str     xzr, [fp, #0x28]	// [V103 tmp71]
+            str     xzr, [fp, #0x20]	// [V103 tmp71]
             b       G_M22543_IG26
 						;; size=12 bbWeight=2 PerfScore 5.00
 G_M22543_IG31:
             ldr     x1, [x3]
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             cmp     x1, x0
             bne     G_M22543_IG27
 						;; size=24 bbWeight=1 PerfScore 6.00
 G_M22543_IG32:
             ldr     x1, [x3, #0x10]
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             movz    x2, #0xD1FFAB1E      // code for CORINFO_HELP_ISINSTANCEOFARRAY
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             mov     x1, x0
             cbz     x1, G_M22543_IG36
             ldr     x0, [x22, #0x08]
             ldr     w3, [x1, #0x08]
             mov     w2, wzr
             ldr     x4, [x0]
             ldr     x4, [x4, #0x60]
             ldr     x4, [x4, #0x30]
             blr     x4
             b       G_M22543_IG28
 						;; size=76 bbWeight=2 PerfScore 58.00
 G_M22543_IG33:
             ldr     w0, [x20, #0x14]
-            cmp     w23, w0
+            cmp     w26, w0
             bne     G_M22543_IG39
 						;; size=12 bbWeight=8 PerfScore 36.00
 G_M22543_IG34:
             ldr     w0, [x20, #0x10]
-            cmp     w27, w0
+            cmp     w2, w0
             bhs     G_M22543_IG40
             ldr     x0, [x20, #0x08]
             ldr     w1, [x0, #0x08]
-            cmp     w27, w1
+            cmp     w2, w1
             bhs     G_M22543_IG37
             add     x0, x0, #16
-            ldr     x1, [x0, w27, UXTW #3]
-            add     w27, w27, #1
+            ldr     x1, [x0, w2, UXTW #3]
+            add     w2, w2, #1
+            str     w2, [fp, #0x54]	// [V100 tmp68]
             mov     x0, x21
-            movz    x2, #0xD1FFAB1E      // code for System.IO.BinaryWriter:Write(System.String):this
-            movk    x2, #0xD1FFAB1E LSL #16
-            movk    x2, #0xD1FFAB1E LSL #32
-            ldr     x2, [x2]
-            blr     x2
+            movz    x3, #0xD1FFAB1E      // code for System.IO.BinaryWriter:Write(System.String):this
+            movk    x3, #0xD1FFAB1E LSL #16
+            movk    x3, #0xD1FFAB1E LSL #32
+            ldr     x3, [x3]
+            blr     x3
+            ldr     w2, [fp, #0x54]	// [V100 tmp68]
             b       G_M22543_IG33
-						;; size=68 bbWeight=4 PerfScore 92.00
+						;; size=76 bbWeight=4 PerfScore 104.00
 G_M22543_IG35:
             mov     w0, #0xD1FFAB1E
             movz    x1, #0xD1FFAB1E
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_STRCNS
             mov     x1, x0
-            mov     w0, w23
+            ldr     w0, [fp, #0x58]	// [V82 tmp50]
             movz    x2, #0xD1FFAB1E      // code for System.ArgumentOutOfRangeException:ThrowNegative[int](int,System.String)
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             brk_unix #0
 						;; size=52 bbWeight=0 PerfScore 0.00
 G_M22543_IG36:
             movz    w0, #0xD1FFAB1E
             movk    w0, #1 LSL #16
             movz    x1, #0xD1FFAB1E
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_STRCNS
             movz    x1, #0xD1FFAB1E      // code for System.ArgumentNullException:Throw(System.String)
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
             brk_unix #0
 						;; size=48 bbWeight=0 PerfScore 0.00
 G_M22543_IG37:
             bl      CORINFO_HELP_RNGCHKFAIL
             brk_unix #0
 						;; size=8 bbWeight=0 PerfScore 0.00
 G_M22543_IG38:
             mov     x0, xzr
             movz    x1, #0xD1FFAB1E      // code for System.ThrowHelper:ThrowObjectDisposedException_StreamClosed(System.String)
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
             brk_unix #0
 						;; size=28 bbWeight=0 PerfScore 0.00
 G_M22543_IG39:
             movz    x0, #0xD1FFAB1E      // code for System.ThrowHelper:ThrowInvalidOperationException_InvalidOperation_EnumFailedVersion()
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             ldr     x0, [x0]
             blr     x0
             brk_unix #0
 						;; size=24 bbWeight=0 PerfScore 0.00
 G_M22543_IG40:
-            ldr     w3, [x25, #0x08]
+            ldr     w3, [x24, #0x08]
             sxtw    w20, w3
             mov     w3, w20
-            mov     x0, x25
-            mov     x1, x26
+            mov     x0, x24
+            mov     x1, x25
             mov     w2, wzr
             mov     x4, xzr
             movz    x5, #0xD1FFAB1E      // code for System.Array:Sort[int,int](int[],int[],int,int,System.Collections.Generic.IComparer`1[int])
             movk    x5, #0xD1FFAB1E LSL #16
             movk    x5, #0xD1FFAB1E LSL #32
             ldr     x5, [x5]
             blr     x5
             ldr     x0, [x21, #0x08]
             ldr     x1, [x0]
             ldr     x1, [x1, #0x50]
             ldr     x1, [x1, #0x30]
             blr     x1
             ldr     x0, [x21, #0x08]
             ldr     x1, [x0]
             ldr     x1, [x1, #0x50]
             ldr     x1, [x1, #0x30]
             blr     x1
             ldr     x0, [x21, #0x08]
             ldr     x1, [x0]
             ldr     x1, [x1, #0x48]
             ldr     x1, [x1, #0x10]
             blr     x1
             and     w1, w0, #7
             cmp     w1, #0
             ble     G_M22543_IG44
 						;; size=120 bbWeight=4 PerfScore 210.00
 G_M22543_IG41:
-            mov     w23, wzr
+            mov     w26, wzr
             neg     w1, w1
-            add     w27, w1, #8
-            cmp     w27, #0
+            add     w2, w1, #8
+            str     w2, [fp, #0x50]	// [V156 cse4]
+            cmp     w2, #0
             ble     G_M22543_IG44
-						;; size=20 bbWeight=0.50 PerfScore 1.50
+						;; size=24 bbWeight=0.50 PerfScore 2.00
 G_M22543_IG42:
-            movz    x2, #0xD1FFAB1E
-            movk    x2, #0xD1FFAB1E LSL #16
-            movk    x2, #0xD1FFAB1E LSL #32
-            str     x2, [fp, #0x20]	// [V155 cse3]
+            movz    x3, #0xD1FFAB1E
+            movk    x3, #0xD1FFAB1E LSL #16
+            movk    x3, #0xD1FFAB1E LSL #32
+            str     x3, [fp, #0x18]	// [V155 cse3]
 						;; size=16 bbWeight=0.25 PerfScore 0.62
 G_M22543_IG43:
             movz    w1, #0xD1FFAB1E
             movk    w1, #0xD1FFAB1E LSL #16
-            smull   x1, w1, w23
+            smull   x1, w1, w26
             asr     x1, x1, #32
             add     w1, w1, w1,  LSR #31
             mov     w0, #3
-            msub    w1, w1, w0, w23
+            msub    w1, w1, w0, w26
             cmp     w1, #3
             bhs     G_M22543_IG37
-            ldrh    w1, [x2, w1, UXTW #2]
+            ldrh    w1, [x3, w1, UXTW #2]
             mov     x0, x21
-            movz    x3, #0xD1FFAB1E      // code for System.IO.BinaryWriter:Write(ushort):this
-            movk    x3, #0xD1FFAB1E LSL #16
-            movk    x3, #0xD1FFAB1E LSL #32
-            ldr     x3, [x3]
-            blr     x3
-            add     w23, w23, #1
-            cmp     w27, w23
-            ldr     x2, [fp, #0x20]	// [V155 cse3]
+            movz    x4, #0xD1FFAB1E      // code for System.IO.BinaryWriter:Write(ushort):this
+            movk    x4, #0xD1FFAB1E LSL #16
+            movk    x4, #0xD1FFAB1E LSL #32
+            ldr     x4, [x4]
+            blr     x4
+            add     w26, w26, #1
+            ldr     w1, [fp, #0x50]	// [V156 cse4]
+            cmp     w1, w26
+            ldr     x3, [fp, #0x18]	// [V155 cse3]
             bgt     G_M22543_IG43
-						;; size=80 bbWeight=4 PerfScore 88.00
+						;; size=84 bbWeight=4 PerfScore 96.00
 G_M22543_IG44:
-            mov     w23, wzr
+            mov     w26, wzr
             cmp     w20, #0
             ble     G_M22543_IG46
 						;; size=12 bbWeight=1 PerfScore 2.00
 G_M22543_IG45:
-            add     x1, x25, #16
-            ldr     w1, [x1, w23, UXTW #2]
+            add     x1, x24, #16
+            ldr     w1, [x1, w26, UXTW #2]
             mov     x0, x21
             movz    x2, #0xD1FFAB1E      // code for System.IO.BinaryWriter:Write(int):this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            add     w23, w23, #1
-            cmp     w20, w23
+            add     w26, w26, #1
+            cmp     w20, w26
             bgt     G_M22543_IG45
 						;; size=44 bbWeight=4 PerfScore 46.00
 G_M22543_IG46:
             mov     w20, wzr
-            ldr     w1, [x26, #0x08]
+            ldr     w1, [x25, #0x08]
             cmp     w1, #0
             ble     G_M22543_IG48
 						;; size=16 bbWeight=1 PerfScore 5.00
 G_M22543_IG47:
-            add     x1, x26, #16
+            add     x1, x25, #16
             ldr     w1, [x1, w20, UXTW #2]
             mov     x0, x21
             movz    x2, #0xD1FFAB1E      // code for System.IO.BinaryWriter:Write(int):this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             add     w20, w20, #1
-            ldr     w0, [x26, #0x08]
+            ldr     w0, [x25, #0x08]
             cmp     w0, w20
             bgt     G_M22543_IG47
 						;; size=48 bbWeight=4 PerfScore 58.00
 G_M22543_IG48:
             ldr     x0, [x21, #0x08]
             ldr     x1, [x0]
             ldr     x1, [x1, #0x50]
             ldr     x1, [x1, #0x30]
             blr     x1
-            ldr     x0, [x24, #0x08]
+            ldr     x0, [x23, #0x08]
             ldr     x1, [x0]
             ldr     x1, [x1, #0x50]
             ldr     x1, [x1, #0x30]
             blr     x1
             ldr     x0, [x22, #0x08]
             ldr     x1, [x0]
             ldr     x1, [x1, #0x50]
             ldr     x1, [x1, #0x30]
             blr     x1
             ldr     x0, [x21, #0x08]
             mov     x1, xzr
             mov     w2, #1
             ldr     x3, [x0]
             ldr     x3, [x3, #0x60]
             ldr     x3, [x3, #0x08]
             blr     x3
-            str     w0, [fp, #0x1C]	// [TEMP_01]
-            mov     x0, x28
+            str     w0, [fp, #0x14]	// [TEMP_01]
+            mov     x0, x27
             movz    x1, #0xD1FFAB1E      // code for System.IO.MemoryStream:get_Length():long:this
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
-            ldr     w1, [fp, #0x1C]	// [TEMP_01]
+            ldr     w1, [fp, #0x14]	// [TEMP_01]
             add     w1, w1, w0
             add     w1, w1, #4
             mov     x0, x21
             movz    x2, #0xD1FFAB1E      // code for System.IO.BinaryWriter:Write(int):this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            mov     x0, x28
+            mov     x0, x27
             movz    x1, #0xD1FFAB1E      // code for System.IO.MemoryStream:get_Length():long:this
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
             cmp     x0, #0
             ble     G_M22543_IG50
 						;; size=184 bbWeight=1 PerfScore 76.50
 G_M22543_IG49:
-            ldrb    w2, [x28, #0x2B]
+            ldrb    w2, [x27, #0x2B]
             cbz     w2, G_M22543_IG38
-            ldr     w2, [x28, #0x18]
-            mov     x0, x28
+            ldr     w2, [x27, #0x18]
+            mov     x0, x27
             mov     x1, xzr
             movz    x3, #0xD1FFAB1E      // code for System.IO.MemoryStream:SeekCore(long,int):long:this
             movk    x3, #0xD1FFAB1E LSL #16
             movk    x3, #0xD1FFAB1E LSL #32
             ldr     x3, [x3]
             blr     x3
             ldr     x0, [x21, #0x08]
             ldr     x1, [x0]
             ldr     x1, [x1, #0x50]
             ldr     x1, [x1, #0x30]
             blr     x1
             ldr     x20, [x21, #0x08]
-            mov     x0, x28
+            mov     x0, x27
             movz    x1, #0xD1FFAB1E      // code for System.IO.MemoryStream:get_Length():long:this
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
             mov     w2, w0
             mov     x1, x20
-            mov     x0, x28
+            mov     x0, x27
             movz    x3, #0xD1FFAB1E      // code for System.IO.MemoryStream:CopyTo(System.IO.Stream,int):this
             movk    x3, #0xD1FFAB1E LSL #16
             movk    x3, #0xD1FFAB1E LSL #32
             ldr     x3, [x3]
             blr     x3
 						;; size=120 bbWeight=0.50 PerfScore 21.25
 G_M22543_IG50:
-            ldrb    w0, [x24, #0x18]
+            ldrb    w0, [x23, #0x18]
             cbz     w0, G_M22543_IG52
 						;; size=8 bbWeight=1 PerfScore 4.00
 G_M22543_IG51:
-            ldr     x0, [x24, #0x08]
+            ldr     x0, [x23, #0x08]
             ldr     x1, [x0]
             ldr     x1, [x1, #0x50]
             ldr     x1, [x1, #0x30]
             blr     x1
             b       G_M22543_IG53
 						;; size=24 bbWeight=0.50 PerfScore 7.00
 G_M22543_IG52:
-            ldr     x0, [x24, #0x08]
+            ldr     x0, [x23, #0x08]
             ldr     x1, [x0]
             ldr     x1, [x1, #0x50]
             ldr     x1, [x1, #0x18]
             blr     x1
 						;; size=20 bbWeight=0.50 PerfScore 6.50
 G_M22543_IG53:
-            ldr     x0, [fp, #0x58]	// [V11 loc10]
+            mov     x0, x28
             mov     x1, xzr
             movz    x2, #0xD1FFAB1E      // code for System.IO.MemoryStream:set_Position(long):this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             ldr     x0, [x21, #0x08]
             ldr     x1, [x0]
             ldr     x1, [x1, #0x50]
             ldr     x1, [x1, #0x30]
             blr     x1
-            ldr     x28, [x21, #0x08]
-            ldr     x0, [fp, #0x58]	// [V11 loc10]
+            ldr     x27, [x21, #0x08]
+            mov     x0, x28
             movz    x1, #0xD1FFAB1E      // code for System.IO.Stream:GetCopyBufferSize():int:this
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
             sxtw    w2, w0
-            mov     x1, x28
-            ldr     x0, [fp, #0x58]	// [V11 loc10]
+            mov     x1, x27
+            mov     x0, x28
             movz    x3, #0xD1FFAB1E      // code for System.IO.MemoryStream:CopyTo(System.IO.Stream,int):this
             movk    x3, #0xD1FFAB1E LSL #16
             movk    x3, #0xD1FFAB1E LSL #32
             ldr     x3, [x3]
             blr     x3
             ldrb    w0, [x22, #0x18]
             cbz     w0, G_M22543_IG55
-						;; size=116 bbWeight=1 PerfScore 44.00
+						;; size=116 bbWeight=1 PerfScore 39.50
 G_M22543_IG54:
             ldr     x0, [x22, #0x08]
             ldr     x1, [x0]
             ldr     x1, [x1, #0x50]
             ldr     x1, [x1, #0x30]
             blr     x1
             b       G_M22543_IG56
 						;; size=24 bbWeight=0.50 PerfScore 7.00
 G_M22543_IG55:
             ldr     x0, [x22, #0x08]
             ldr     x1, [x0]
             ldr     x1, [x1, #0x50]
             ldr     x1, [x1, #0x18]
             blr     x1
 						;; size=20 bbWeight=0.50 PerfScore 6.50
 G_M22543_IG56:
-            ldr     x0, [fp, #0x50]	// [V12 loc11]
+            ldr     x0, [fp, #0x40]	// [V12 loc11]
             strb    wzr, [x0, #0x2B]
             strh    wzr, [x0, #0x28]
             str     xzr, [x0, #0x30]
             bl      System.GC:_SuppressFinalize(System.Object)
             ldr     x0, [x21, #0x08]
             ldr     x1, [x0]
             ldr     x1, [x1, #0x50]
             ldr     x1, [x1, #0x30]
             blr     x1
             str     xzr, [x19, #0x10]
 						;; size=44 bbWeight=1 PerfScore 20.00
 G_M22543_IG57:
             ldp     x27, x28, [sp, #0xD1FFAB1E]
             ldp     x25, x26, [sp, #0xD1FFAB1E]
             ldp     x23, x24, [sp, #0xD1FFAB1E]
             ldp     x21, x22, [sp, #0xD1FFAB1E]
             ldp     x19, x20, [sp, #0xD1FFAB1E]
             ldp     fp, lr, [sp], #0xD1FFAB1E
             ret     lr
 						;; size=28 bbWeight=1 PerfScore 7.00
 G_M22543_IG58:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x19, x0
             movz    x0, #0xD1FFAB1E      // code for System.SR:get_InvalidOperation_ResourceWriterSaved():System.String
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             ldr     x0, [x0]
             blr     x0
             mov     x1, x0
             mov     x0, x19
             movz    x2, #0xD1FFAB1E      // code for System.InvalidOperationException:.ctor(System.String):this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             mov     x0, x19
             bl      CORINFO_HELP_THROW
             brk_unix #0
 						;; size=80 bbWeight=0 PerfScore 0.00
 G_M22543_IG59:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x21, x0
             movz    x0, #0xD1FFAB1E      // code for System.SR:get_Argument_StreamNotWritable():System.String
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             ldr     x0, [x0]
             blr     x0
             mov     x1, x0
             mov     x0, x21
             movz    x2, #0xD1FFAB1E      // code for System.ArgumentException:.ctor(System.String):this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             mov     x0, x21
             bl      CORINFO_HELP_THROW
             brk_unix #0
 						;; size=80 bbWeight=0 PerfScore 0.00
 G_M22543_IG60:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             mov     w1, #0xD1FFAB1E
             bl      CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
             b       G_M22543_IG06
 						;; size=24 bbWeight=0 PerfScore 0.00
 G_M22543_IG61:
             movz    w0, #0xD1FFAB1E
             movk    w0, #1 LSL #16
             movz    x1, #0xD1FFAB1E
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_STRCNS
             movz    x1, #0xD1FFAB1E      // code for System.ArgumentNullException:Throw(System.String)
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
             brk_unix #0
 						;; size=48 bbWeight=0 PerfScore 0.00
 G_M22543_IG62:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x19, x0
             movz    x0, #0xD1FFAB1E      // code for System.SR:get_Argument_StreamNotWritable():System.String
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             ldr     x0, [x0]
             blr     x0
             mov     x1, x0
             mov     x0, x19
             movz    x2, #0xD1FFAB1E      // code for System.ArgumentException:.ctor(System.String):this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             mov     x0, x19
             bl      CORINFO_HELP_THROW
             brk_unix #0
 						;; size=80 bbWeight=0 PerfScore 0.00
 G_M22543_IG63:
             mov     x0, xzr
             movz    x1, #0xD1FFAB1E      // code for System.ThrowHelper:ThrowObjectDisposedException_StreamClosed(System.String)
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
             brk_unix #0
 						;; size=28 bbWeight=0 PerfScore 0.00
 G_M22543_IG64:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             mov     w1, #0xD1FFAB1E
             bl      CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
             b       G_M22543_IG14
 						;; size=24 bbWeight=0 PerfScore 0.00
 G_M22543_IG65:
             stp     fp, lr, [sp, #-0x70]!
             stp     x19, x20, [sp, #0x20]
             stp     x21, x22, [sp, #0x30]
             stp     x23, x24, [sp, #0x40]
             stp     x25, x26, [sp, #0x50]
             stp     x27, x28, [sp, #0x60]
             add     x3, fp, #0xD1FFAB1E
             str     x3, [sp, #0x18]
 						;; size=32 bbWeight=0 PerfScore 0.00
 G_M22543_IG66:
-            ldr     x0, [fp, #0x50]	// [V12 loc11]
+            ldr     x0, [fp, #0x40]	// [V12 loc11]
             strb    wzr, [x0, #0x2B]
             strh    wzr, [x0, #0x28]
             str     xzr, [x0, #0x30]
             bl      System.GC:_SuppressFinalize(System.Object)
 						;; size=20 bbWeight=0 PerfScore 0.00
 G_M22543_IG67:
             ldp     x27, x28, [sp, #0x60]
             ldp     x25, x26, [sp, #0x50]
             ldp     x23, x24, [sp, #0x40]
             ldp     x21, x22, [sp, #0x30]
             ldp     x19, x20, [sp, #0x20]
             ldp     fp, lr, [sp], #0x70
             ret     lr
 						;; size=28 bbWeight=0 PerfScore 0.00
 
-; Total bytes of code 3808, prolog size 68, PerfScore 1724.12, instruction count 952, allocated bytes for code 3808 (MethodHash=0feca7f0) for method System.Resources.ResourceWriter:Generate():this (FullOpts)
+; Total bytes of code 3856, prolog size 68, PerfScore 1753.62, instruction count 964, allocated bytes for code 3856 (MethodHash=0feca7f0) for method System.Resources.ResourceWriter:Generate():this (FullOpts)
32 (3.92 % of base) - Microsoft.VisualBasic.CompilerServices.VB6InputFile:OpenFile():this
 ; Assembly listing for method Microsoft.VisualBasic.CompilerServices.VB6InputFile:OpenFile():this (FullOpts)
 ; Emitting BLENDED_CODE for generic ARM64 - Unix
 ; FullOpts code
 ; optimized code
 ; fp based frame
 ; fully interruptible
 ; No PGO data
 ; 0 inlinees with PGO data; 17 single block inlinees; 2 inlinees without PGO data
 ; Final local variable assignments
 ;
 ;  V00 this         [V00,T00] ( 12, 12   )     ref  ->  x19         this class-hnd single-def <Microsoft.VisualBasic.CompilerServices.VB6InputFile>
 ;* V01 loc0         [V01    ] (  0,  0   )     ref  ->  zero-ref    class-hnd <System.IO.FileNotFoundException>
 ;* V02 loc1         [V02    ] (  0,  0   )     ref  ->  zero-ref    class-hnd <System.Security.SecurityException>
 ;* V03 loc2         [V03    ] (  0,  0   )     ref  ->  zero-ref    class-hnd <System.IO.DirectoryNotFoundException>
 ;* V04 loc3         [V04    ] (  0,  0   )     ref  ->  zero-ref    class-hnd <System.IO.IOException>
 ;* V05 loc4         [V05    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact <System.StackOverflowException>
 ;* V06 loc5         [V06    ] (  0,  0   )     ref  ->  zero-ref    class-hnd <System.OutOfMemoryException>
 ;* V07 loc6         [V07    ] (  0,  0   )     ref  ->  zero-ref    class-hnd <System.Exception>
 ;# V08 OutArgs      [V08    ] (  1,  1   )  struct ( 0) [sp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
 ;  V09 tmp1         [V09,T01] (  4,  8   )     ref  ->  x23         class-hnd exact single-def "NewObj constructor temp" <System.IO.FileStream>
 ;  V10 tmp2         [V10,T03] (  3,  6   )     ref  ->  x20         class-hnd exact single-def "finalizable newobj spill" <System.String>
 ;  V11 tmp3         [V11,T07] (  3,  6   )     int  ->  x21         "finalizable newobj spill"
 ;  V12 tmp4         [V12,T08] (  3,  6   )     int  ->  x22         "finalizable newobj spill"
 ;  V13 tmp5         [V13,T04] (  3,  6   )     ref  ->  x20         class-hnd exact single-def "NewObj constructor temp" <System.IO.StreamReader>
-;  V14 tmp6         [V14,T16] (  2,  0   )     ref  ->   x0         class-hnd single-def "impSpillSpecialSideEff" <System.Exception>
-;  V15 tmp7         [V15,T17] (  2,  0   )     ref  ->   x0         class-hnd single-def "impSpillSpecialSideEff" <System.OutOfMemoryException>
-;  V16 tmp8         [V16,T18] (  2,  0   )     ref  ->   x0         class-hnd single-def "impSpillSpecialSideEff" <System.StackOverflowException>
-;  V17 tmp9         [V17,T19] (  2,  0   )     ref  ->   x0         class-hnd single-def "impSpillSpecialSideEff" <System.IO.IOException>
-;  V18 tmp10        [V18,T20] (  2,  0   )     ref  ->   x0         class-hnd single-def "impSpillSpecialSideEff" <System.IO.DirectoryNotFoundException>
+;  V14 tmp6         [V14,T17] (  2,  0   )     ref  ->   x0         class-hnd single-def "impSpillSpecialSideEff" <System.Exception>
+;  V15 tmp7         [V15,T18] (  2,  0   )     ref  ->   x0         class-hnd single-def "impSpillSpecialSideEff" <System.OutOfMemoryException>
+;  V16 tmp8         [V16,T19] (  2,  0   )     ref  ->   x0         class-hnd single-def "impSpillSpecialSideEff" <System.StackOverflowException>
+;  V17 tmp9         [V17,T20] (  2,  0   )     ref  ->   x0         class-hnd single-def "impSpillSpecialSideEff" <System.IO.IOException>
+;  V18 tmp10        [V18,T21] (  2,  0   )     ref  ->   x0         class-hnd single-def "impSpillSpecialSideEff" <System.IO.DirectoryNotFoundException>
 ;* V19 tmp11        [V19    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "impSpillSpecialSideEff" <System.Security.SecurityException>
-;  V20 tmp12        [V20,T21] (  2,  0   )     ref  ->   x0         class-hnd single-def "impSpillSpecialSideEff" <System.IO.FileNotFoundException>
+;  V20 tmp12        [V20,T22] (  2,  0   )     ref  ->   x0         class-hnd single-def "impSpillSpecialSideEff" <System.IO.FileNotFoundException>
 ;* V21 tmp13        [V21    ] (  0,  0   )     ref  ->  zero-ref    single-def
 ;* V22 tmp14        [V22    ] (  0,  0   )     ref  ->  zero-ref    single-def
 ;* V23 tmp15        [V23    ] (  0,  0   )     int  ->  zero-ref    single-def
 ;* V24 tmp16        [V24    ] (  0,  0   )     int  ->  zero-ref    single-def
 ;* V25 tmp17        [V25    ] (  0,  0   )     int  ->  zero-ref    single-def
 ;* V26 tmp18        [V26    ] (  0,  0   )     int  ->  zero-ref    single-def
-;* V27 tmp19        [V27,T12] (  0,  0   )     ref  ->  zero-ref    single-def
+;* V27 tmp19        [V27,T13] (  0,  0   )     ref  ->  zero-ref    single-def
 ;* V28 tmp20        [V28    ] (  0,  0   )     ref  ->  zero-ref    single-def
 ;* V29 tmp21        [V29    ] (  0,  0   )     int  ->  zero-ref    single-def
 ;* V30 tmp22        [V30    ] (  0,  0   )     int  ->  zero-ref    single-def
 ;* V31 tmp23        [V31    ] (  0,  0   )     int  ->  zero-ref    single-def
 ;* V32 tmp24        [V32    ] (  0,  0   )     int  ->  zero-ref    single-def
 ;* V33 tmp25        [V33    ] (  0,  0   )     int  ->  zero-ref    single-def
 ;* V34 tmp26        [V34    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.Nullable`1[int]>
-;  V35 tmp27        [V35,T10] (  2,  2   )     ref  ->  x15         class-hnd single-def "Inline return value spill temp" <System.IO.Strategies.FileStreamStrategy>
+;  V35 tmp27        [V35,T11] (  2,  2   )     ref  ->  x15         class-hnd single-def "Inline return value spill temp" <System.IO.Strategies.FileStreamStrategy>
 ;* V36 tmp28        [V36    ] (  0,  0   )  struct ( 8) zero-ref    "Inlining Arg" <System.Nullable`1[int]>
 ;* V37 tmp29        [V37    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline stloc first use temp" <System.IO.Strategies.FileStreamStrategy>
-;  V38 tmp30        [V38,T05] (  3,  6   )     ref  ->  x24         class-hnd exact single-def "NewObj constructor temp" <System.IO.Strategies.UnixFileStreamStrategy>
-;  V39 tmp31        [V39,T11] (  2,  2   )     ref  ->   x1         class-hnd single-def "Inline return value spill temp" <System.IO.Strategies.FileStreamStrategy>
+;  V38 tmp30        [V38,T05] (  3,  6   )     ref  ->  x25         class-hnd exact single-def "NewObj constructor temp" <System.IO.Strategies.UnixFileStreamStrategy>
+;  V39 tmp31        [V39,T12] (  2,  2   )     ref  ->   x1         class-hnd single-def "Inline return value spill temp" <System.IO.Strategies.FileStreamStrategy>
 ;  V40 tmp32        [V40,T02] (  4,  8   )     ref  ->   x1         class-hnd exact single-def "NewObj constructor temp" <System.IO.Strategies.BufferedFileStreamStrategy>
 ;* V41 tmp33        [V41    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <System.IO.FileStream>
 ;* V42 tmp34        [V42    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <System.Text.Encoding>
 ;* V43 tmp35        [V43    ] (  0,  0   )   ubyte  ->  zero-ref    single-def "field V34.hasValue (fldOffset=0x0)" P-INDEP
 ;* V44 tmp36        [V44    ] (  0,  0   )     int  ->  zero-ref    single-def "field V34.value (fldOffset=0x4)" P-INDEP
-;* V45 tmp37        [V45,T13] (  0,  0   )   ubyte  ->  zero-ref    single-def "field V36.hasValue (fldOffset=0x0)" P-INDEP
-;* V46 tmp38        [V46,T14] (  0,  0   )     int  ->  zero-ref    single-def "field V36.value (fldOffset=0x4)" P-INDEP
-;  V47 tmp39        [V47,T09] (  3,  6   )  struct ( 8) [fp+0x10]  do-not-enreg[SF] "by-value struct argument" <System.Nullable`1[int]>
+;* V45 tmp37        [V45,T14] (  0,  0   )   ubyte  ->  zero-ref    single-def "field V36.hasValue (fldOffset=0x0)" P-INDEP
+;* V46 tmp38        [V46,T15] (  0,  0   )     int  ->  zero-ref    single-def "field V36.value (fldOffset=0x4)" P-INDEP
+;  V47 tmp39        [V47,T09] (  3,  6   )  struct ( 8) [fp+0x18]  do-not-enreg[SF] "by-value struct argument" <System.Nullable`1[int]>
 ;  V48 tmp40        [V48,T06] (  3,  6   )     ref  ->   x0         single-def "argument with side effect"
-;  V49 PSPSym       [V49,T15] (  1,  1   )    long  ->  [fp+0x18]  do-not-enreg[V] "PSPSym"
+;  V49 PSPSym       [V49,T16] (  1,  1   )    long  ->  [fp+0x20]  do-not-enreg[V] "PSPSym"
+;  V50 cse0         [V50,T10] (  3,  3   )    long  ->  x24         "CSE #01: aggressive"
 ;
-; Lcl frame size = 16
+; Lcl frame size = 24
 
 G_M25124_IG01:
-            stp     fp, lr, [sp, #-0x50]!
-            stp     x19, x20, [sp, #0x20]
-            stp     x21, x22, [sp, #0x30]
-            stp     x23, x24, [sp, #0x40]
+            stp     fp, lr, [sp, #-0x60]!
+            stp     x19, x20, [sp, #0x28]
+            stp     x21, x22, [sp, #0x38]
+            stp     x23, x24, [sp, #0x48]
+            str     x25, [sp, #0x58]
             mov     fp, sp
-            add     x1, sp, #80
-            str     x1, [fp, #0x18]	// [V49 PSPSym]
+            add     x1, sp, #96
+            str     x1, [fp, #0x20]	// [V49 PSPSym]
             mov     x19, x0
-						;; size=32 bbWeight=1 PerfScore 6.50
+						;; size=36 bbWeight=1 PerfScore 7.50
 G_M25124_IG02:
             ldr     x20, [x19, #0x08]
             ldp     w22, w21, [x19, #0x5C]
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWFAST
             mov     x23, x0
             mov     x0, x20
             mov     w3, w22
             mov     w2, w21
             mov     w1, #3
             mov     w4, #0xD1FFAB1E
             mov     w5, wzr
             mov     x6, xzr
             movz    x7, #0xD1FFAB1E      // code for System.IO.Strategies.FileStreamHelpers:ValidateArguments(System.String,int,int,int,int,int,long)
             movk    x7, #0xD1FFAB1E LSL #16
             movk    x7, #0xD1FFAB1E LSL #32
             ldr     x7, [x7]
             blr     x7
-            movz    x0, #0xD1FFAB1E
-            movk    x0, #0xD1FFAB1E LSL #16
-            movk    x0, #0xD1FFAB1E LSL #32
+            movz    x24, #0xD1FFAB1E
+            movk    x24, #0xD1FFAB1E LSL #16
+            movk    x24, #0xD1FFAB1E LSL #32
+            mov     x0, x24
             bl      CORINFO_HELP_NEWSFAST
-            mov     x24, x0
-            strb    wzr, [fp, #0x10]	// [V47 tmp39]
-            str     wzr, [fp, #0x14]	// [V47 tmp39+0x04]
-            ldr     x7, [fp, #0x10]	// [V47 tmp39]
+            mov     x25, x0
+            strb    wzr, [fp, #0x18]	// [V47 tmp39]
+            str     wzr, [fp, #0x1C]	// [V47 tmp39+0x04]
+            ldr     x7, [fp, #0x18]	// [V47 tmp39]
             mov     x1, x20
-            mov     x0, x24
+            mov     x0, x25
             mov     w3, w21
             mov     w4, w22
             mov     w2, #3
             mov     w5, wzr
             mov     x6, xzr
             movz    x8, #0xD1FFAB1E      // code for System.IO.Strategies.OSFileStreamStrategy:.ctor(System.String,int,int,int,int,long,System.Nullable`1[int]):this
             movk    x8, #0xD1FFAB1E LSL #16
             movk    x8, #0xD1FFAB1E LSL #32
             ldr     x8, [x8]
             blr     x8
-            movz    x0, #0xD1FFAB1E
-            movk    x0, #0xD1FFAB1E LSL #16
-            movk    x0, #0xD1FFAB1E LSL #32
+            add     x0, x24, #0xD1FFAB1E
             bl      CORINFO_HELP_NEWSFAST
             mov     x1, x0
             add     x14, x1, #24
-            mov     x15, x24
+            mov     x15, x25
             bl      CORINFO_HELP_ASSIGN_REF
             mov     w0, #0xD1FFAB1E
             str     w0, [x1, #0x28]
             mov     x0, x23
             movz    x2, #0xD1FFAB1E      // code for System.IO.Strategies.FileStreamHelpers:WrapIfDerivedType(System.IO.FileStream,System.IO.Strategies.FileStreamStrategy):System.IO.Strategies.FileStreamStrategy
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             mov     x15, x0
             add     x14, x23, #16
             bl      CORINFO_HELP_ASSIGN_REF
             add     x14, x19, #16
             mov     x15, x23
             bl      CORINFO_HELP_ASSIGN_REF
-						;; size=244 bbWeight=1 PerfScore 50.50
+						;; size=240 bbWeight=1 PerfScore 50.00
 G_M25124_IG03:
             movz    x14, #0xD1FFAB1E
             movk    x14, #0xD1FFAB1E LSL #16
             movk    x14, #0xD1FFAB1E LSL #32
             ldr     w14, [x14]
             tbz     w14, #0, G_M25124_IG06
 						;; size=20 bbWeight=1 PerfScore 5.50
 G_M25124_IG04:
             movz    x14, #0xD1FFAB1E      // data for System.Text.Encoding:s_defaultEncoding
             movk    x14, #0xD1FFAB1E LSL #16
             movk    x14, #0xD1FFAB1E LSL #32
             ldr     x15, [x14]
             add     x14, x19, #56
             bl      CORINFO_HELP_ASSIGN_REF
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x20, x0
             ldr     x2, [x19, #0x38]
             ldr     x1, [x19, #0x10]
             mov     x0, x20
             mov     w3, wzr
             mov     w4, #128
             mov     w5, wzr
             movz    x6, #0xD1FFAB1E      // code for System.IO.StreamReader:.ctor(System.IO.Stream,System.Text.Encoding,ubyte,int,ubyte):this
             movk    x6, #0xD1FFAB1E LSL #16
             movk    x6, #0xD1FFAB1E LSL #32
             ldr     x6, [x6]
             blr     x6
             add     x14, x19, #32
             mov     x15, x20
             bl      CORINFO_HELP_ASSIGN_REF
             ldr     x0, [x19, #0x10]
             ldr     x1, [x0]
             ldr     x1, [x1, #0x48]
             ldr     x1, [x1, #0x08]
             blr     x1
             cmp     x0, #0
             cset    x0, eq
             strb    w0, [x19, #0x64]
 						;; size=132 bbWeight=1 PerfScore 39.50
 G_M25124_IG05:
-            ldp     x23, x24, [sp, #0x40]
-            ldp     x21, x22, [sp, #0x30]
-            ldp     x19, x20, [sp, #0x20]
-            ldp     fp, lr, [sp], #0x50
+            ldr     x25, [sp, #0x58]
+            ldp     x23, x24, [sp, #0x48]
+            ldp     x21, x22, [sp, #0x38]
+            ldp     x19, x20, [sp, #0x28]
+            ldp     fp, lr, [sp], #0x60
             ret     lr
-						;; size=20 bbWeight=1 PerfScore 5.00
+						;; size=24 bbWeight=1 PerfScore 7.00
 G_M25124_IG06:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             mov     w1, #0xD1FFAB1E
             bl      CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
             b       G_M25124_IG04
 						;; size=24 bbWeight=0 PerfScore 0.00
 G_M25124_IG07:
             stp     fp, lr, [sp, #-0x50]!
-            stp     x19, x20, [sp, #0x20]
-            stp     x21, x22, [sp, #0x30]
-            stp     x23, x24, [sp, #0x40]
-            add     x3, fp, #80
-            str     x3, [sp, #0x18]
-						;; size=24 bbWeight=0 PerfScore 0.00
+            stp     x19, x20, [sp, #0x18]
+            stp     x21, x22, [sp, #0x28]
+            stp     x23, x24, [sp, #0x38]
+            str     x25, [sp, #0x48]
+            add     x3, fp, #96
+            str     x3, [sp, #0x10]
+						;; size=28 bbWeight=0 PerfScore 0.00
 G_M25124_IG08:
             mov     w1, #53
             movz    x2, #0xD1FFAB1E      // code for Microsoft.VisualBasic.CompilerServices.ExceptionUtils:VbMakeException(System.Exception,int):System.Exception
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             bl      CORINFO_HELP_THROW
             brk_unix #0
 						;; size=32 bbWeight=0 PerfScore 0.00
 G_M25124_IG09:
             stp     fp, lr, [sp, #-0x50]!
-            stp     x19, x20, [sp, #0x20]
-            stp     x21, x22, [sp, #0x30]
-            stp     x23, x24, [sp, #0x40]
-            add     x3, fp, #80
-            str     x3, [sp, #0x18]
-						;; size=24 bbWeight=0 PerfScore 0.00
+            stp     x19, x20, [sp, #0x18]
+            stp     x21, x22, [sp, #0x28]
+            stp     x23, x24, [sp, #0x38]
+            str     x25, [sp, #0x48]
+            add     x3, fp, #96
+            str     x3, [sp, #0x10]
+						;; size=28 bbWeight=0 PerfScore 0.00
 G_M25124_IG10:
             mov     w0, #53
             movz    x1, #0xD1FFAB1E      // code for Microsoft.VisualBasic.CompilerServices.ExceptionUtils:VbMakeException(int):System.Exception
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
             bl      CORINFO_HELP_THROW
             brk_unix #0
 						;; size=32 bbWeight=0 PerfScore 0.00
 G_M25124_IG11:
             stp     fp, lr, [sp, #-0x50]!
-            stp     x19, x20, [sp, #0x20]
-            stp     x21, x22, [sp, #0x30]
-            stp     x23, x24, [sp, #0x40]
-            add     x3, fp, #80
-            str     x3, [sp, #0x18]
-						;; size=24 bbWeight=0 PerfScore 0.00
+            stp     x19, x20, [sp, #0x18]
+            stp     x21, x22, [sp, #0x28]
+            stp     x23, x24, [sp, #0x38]
+            str     x25, [sp, #0x48]
+            add     x3, fp, #96
+            str     x3, [sp, #0x10]
+						;; size=28 bbWeight=0 PerfScore 0.00
 G_M25124_IG12:
             mov     w1, #76
             movz    x2, #0xD1FFAB1E      // code for Microsoft.VisualBasic.CompilerServices.ExceptionUtils:VbMakeException(System.Exception,int):System.Exception
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             bl      CORINFO_HELP_THROW
             brk_unix #0
 						;; size=32 bbWeight=0 PerfScore 0.00
 G_M25124_IG13:
             stp     fp, lr, [sp, #-0x50]!
-            stp     x19, x20, [sp, #0x20]
-            stp     x21, x22, [sp, #0x30]
-            stp     x23, x24, [sp, #0x40]
-            add     x3, fp, #80
-            str     x3, [sp, #0x18]
-						;; size=24 bbWeight=0 PerfScore 0.00
+            stp     x19, x20, [sp, #0x18]
+            stp     x21, x22, [sp, #0x28]
+            stp     x23, x24, [sp, #0x38]
+            str     x25, [sp, #0x48]
+            add     x3, fp, #96
+            str     x3, [sp, #0x10]
+						;; size=28 bbWeight=0 PerfScore 0.00
 G_M25124_IG14:
             mov     w1, #75
             movz    x2, #0xD1FFAB1E      // code for Microsoft.VisualBasic.CompilerServices.ExceptionUtils:VbMakeException(System.Exception,int):System.Exception
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             bl      CORINFO_HELP_THROW
             brk_unix #0
 						;; size=32 bbWeight=0 PerfScore 0.00
 G_M25124_IG15:
             stp     fp, lr, [sp, #-0x50]!
-            stp     x19, x20, [sp, #0x20]
-            stp     x21, x22, [sp, #0x30]
-            stp     x23, x24, [sp, #0x40]
-            add     x3, fp, #80
-            str     x3, [sp, #0x18]
-						;; size=24 bbWeight=0 PerfScore 0.00
+            stp     x19, x20, [sp, #0x18]
+            stp     x21, x22, [sp, #0x28]
+            stp     x23, x24, [sp, #0x38]
+            str     x25, [sp, #0x48]
+            add     x3, fp, #96
+            str     x3, [sp, #0x10]
+						;; size=28 bbWeight=0 PerfScore 0.00
 G_M25124_IG16:
             bl      CORINFO_HELP_THROW
             brk_unix #0
 						;; size=8 bbWeight=0 PerfScore 0.00
 G_M25124_IG17:
             stp     fp, lr, [sp, #-0x50]!
-            stp     x19, x20, [sp, #0x20]
-            stp     x21, x22, [sp, #0x30]
-            stp     x23, x24, [sp, #0x40]
-            add     x3, fp, #80
-            str     x3, [sp, #0x18]
-						;; size=24 bbWeight=0 PerfScore 0.00
+            stp     x19, x20, [sp, #0x18]
+            stp     x21, x22, [sp, #0x28]
+            stp     x23, x24, [sp, #0x38]
+            str     x25, [sp, #0x48]
+            add     x3, fp, #96
+            str     x3, [sp, #0x10]
+						;; size=28 bbWeight=0 PerfScore 0.00
 G_M25124_IG18:
             bl      CORINFO_HELP_THROW
             brk_unix #0
 						;; size=8 bbWeight=0 PerfScore 0.00
 G_M25124_IG19:
             stp     fp, lr, [sp, #-0x50]!
-            stp     x19, x20, [sp, #0x20]
-            stp     x21, x22, [sp, #0x30]
-            stp     x23, x24, [sp, #0x40]
-            add     x3, fp, #80
-            str     x3, [sp, #0x18]
-						;; size=24 bbWeight=0 PerfScore 0.00
+            stp     x19, x20, [sp, #0x18]
+            stp     x21, x22, [sp, #0x28]
+            stp     x23, x24, [sp, #0x38]
+            str     x25, [sp, #0x48]
+            add     x3, fp, #96
+            str     x3, [sp, #0x10]
+						;; size=28 bbWeight=0 PerfScore 0.00
 G_M25124_IG20:
             mov     w1, #76
             movz    x2, #0xD1FFAB1E      // code for Microsoft.VisualBasic.CompilerServices.ExceptionUtils:VbMakeException(System.Exception,int):System.Exception
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             bl      CORINFO_HELP_THROW
             brk_unix #0
 						;; size=32 bbWeight=0 PerfScore 0.00
 
-; Total bytes of code 816, prolog size 32, PerfScore 107.00, instruction count 204, allocated bytes for code 816 (MethodHash=b86a9ddb) for method Microsoft.VisualBasic.CompilerServices.VB6InputFile:OpenFile():this (FullOpts)
+; Total bytes of code 848, prolog size 36, PerfScore 109.50, instruction count 212, allocated bytes for code 848 (MethodHash=b86a9ddb) for method Microsoft.VisualBasic.CompilerServices.VB6InputFile:OpenFile():this (FullOpts)
24 (1.30 % of base) - System.ConsolePal:EnsureInitializedCore()
 ; Assembly listing for method System.ConsolePal:EnsureInitializedCore() (FullOpts)
 ; Emitting BLENDED_CODE for generic ARM64 - Unix
 ; FullOpts code
 ; optimized code
 ; fp based frame
 ; fully interruptible
 ; No PGO data
 ; 0 inlinees with PGO data; 2 single block inlinees; 2 inlinees without PGO data
 ; Final local variable assignments
 ;
 ;  V00 loc0         [V00,T06] (  4,  1.50)     ref  ->  [fp+0x60]  class-hnd EH-live spill-single-def ptr <System.IO.TextWriter>
 ;  V01 loc1         [V01    ] (  5,  4   )   ubyte  ->  [fp+0x70]  do-not-enreg[X] addr-exposed ld-addr-op
 ;  V02 loc2         [V02,T07] (  3,  1.50)     ref  ->   x1         class-hnd exact single-def <System.String>
 ;  V03 loc3         [V03,T09] (  2,  1   )    long  ->   x0        
 ;  V04 loc4         [V04,T04] (  6,  3   )    long  ->  x21        
 ;* V05 loc5         [V05    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op <System.ReadOnlySpan`1[int]>
 ;# V06 OutArgs      [V06    ] (  1,  1   )  struct ( 0) [sp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
 ;  V07 tmp1         [V07,T05] (  4,  2   )     ref  ->  x15        
 ;  V08 tmp2         [V08    ] (  2,  1   )  struct (16) [fp+0x80]  do-not-enreg[XS] addr-exposed ld-addr-op unsafe-buffer "stackallocLocal"
 ;* V09 tmp3         [V09    ] (  0,  0   )  struct (16) zero-ref    "ReadOnlySpan<T> for CreateSpan<T>" <System.ReadOnlySpan`1[int]>
 ;  V10 tmp4         [V10    ] (  1,  0.50)  struct ( 8) [fp+0x78]  do-not-enreg[XS] addr-exposed ld-addr-op unsafe-buffer "stackallocLocal"
 ;  V11 tmp5         [V11,T12] (  3,  0   )     ref  ->  x19         class-hnd exact single-def "NewObj constructor temp" <System.ComponentModel.Win32Exception>
 ;  V12 tmp6         [V12,T08] (  3,  1.50)     ref  ->   x0         class-hnd "Inline return value spill temp" <System.TerminalFormatStrings>
 ;  V13 tmp7         [V13,T03] (  4,  4   )     ref  ->   x0         class-hnd exact single-def "Inlining Arg" <System.Lazy`1[System.TerminalFormatStrings]>
 ;  V14 tmp8         [V14    ] (  2,  1   )   byref  ->  [fp+0x68]  must-init pinned "Inline stloc first use temp"
 ;* V15 tmp9         [V15    ] (  0,  0   )    long  ->  zero-ref    "Inline stloc first use temp"
 ;  V16 FramesRoot   [V16,T00] ( 10,  6   )    long  ->  x19         "Pinvoke FrameListRoot"
 ;  V17 PInvokeFrame [V17    ] ( 12,  8   )  struct (72) [fp+0x18]  do-not-enreg[XS] addr-exposed "Pinvoke FrameVar"
 ;* V18 tmp12        [V18    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V05._reference (fldOffset=0x0)" P-INDEP
 ;* V19 tmp13        [V19    ] (  0,  0   )     int  ->  zero-ref    "field V05._length (fldOffset=0x8)" P-INDEP
 ;* V20 tmp14        [V20    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V09._reference (fldOffset=0x0)" P-INDEP
 ;* V21 tmp15        [V21    ] (  0,  0   )     int  ->  zero-ref    "field V09._length (fldOffset=0x8)" P-INDEP
 ;* V22 tmp16        [V22    ] (  0,  0   )    long  ->  zero-ref    "Cast away GC"
 ;* V23 tmp17        [V23,T10] (  0,  0   )    long  ->  zero-ref    "argument with side effect"
 ;  V24 GsCookie     [V24    ] (  1,  1   )    long  ->  [fp+0x90]  do-not-enreg[X] addr-exposed "GSSecurityCookie"
 ;  V25 PSPSym       [V25,T11] (  1,  1   )    long  ->  [fp+0x98]  do-not-enreg[V] "PSPSym"
 ;  V26 cse0         [V26,T01] (  7,  4.50)    long  ->  x20         "CSE #02: aggressive"
 ;  V27 cse1         [V27,T02] (  9,  4.50)    long  ->  x21         multi-def "CSE #01: aggressive"
 ;
 ; Lcl frame size = 144
 
 G_M57901_IG01:
             stp     fp, lr, [sp, #-0xF0]!
             stp     x19, x20, [sp, #0xA0]
             stp     x21, x22, [sp, #0xB0]
             stp     x23, x24, [sp, #0xC0]
             stp     x25, x26, [sp, #0xD0]
             stp     x27, x28, [sp, #0xE0]
             mov     fp, sp
             str     xzr, [fp, #0x68]	// [V14 tmp8]
             add     x0, sp, #240
             str     x0, [fp, #0x98]	// [V25 PSPSym]
             movz    x0, #0xD1FFAB1E
-            movk    x0, #23 LSL #16
+            movk    x0, #26 LSL #16
             str     x0, [fp, #0x90]	// [V24 GsCookie]
 						;; size=52 bbWeight=1 PerfScore 11.00
 G_M57901_IG02:
             add     x0, fp, #32	// [V17 PInvokeFrame+0x08]
             mov     x1, xzr
             bl      CORINFO_HELP_INIT_PINVOKE_FRAME
             mov     x19, x0
             mov     x0, sp
             str     x0, [fp, #0x40]	// [V17 PInvokeFrame+0x28]
             mov     x0, fp
             str     x0, [fp, #0x50]	// [V17 PInvokeFrame+0x38]
             movz    x0, #0xD1FFAB1E      // code for System.Console:get_Out():System.IO.TextWriter
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             ldr     x0, [x0]
             blr     x0
             str     x0, [fp, #0x60]	// [V00 loc0]
             str     wzr, [fp, #0x70]	// [V01 loc1]
 						;; size=60 bbWeight=1 PerfScore 13.00
 G_M57901_IG03:
             ldrb    w1, [fp, #0x70]	// [V01 loc1]
             cbnz    w1, G_M57901_IG18
             add     x1, fp, #112	// [V01 loc1]
             bl      System.Threading.Monitor:ReliableEnter(System.Object,byref)
             movz    x20, #0xD1FFAB1E      // data for System.ConsolePal:s_initialized
             movk    x20, #0xD1FFAB1E LSL #16
             movk    x20, #0xD1FFAB1E LSL #32
             ldaprb  w0, [x20]
             cbnz    w0, G_M57901_IG22
 						;; size=36 bbWeight=1 PerfScore 10.00
 G_M57901_IG04:
             movz    x0, #0xD1FFAB1E      // code for Interop+Sys:InitializeTerminalAndSignalHandling():ubyte
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             ldr     x0, [x0]
             blr     x0
             cbz     w0, G_M57901_IG17
             movz    x0, #0xD1FFAB1E      // code for System.Console:get_IsOutputRedirected():ubyte
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             ldr     x0, [x0]
             blr     x0
             cbz     w0, G_M57901_IG20
             movz    x0, #0xD1FFAB1E      // code for System.Console:get_IsInputRedirected():ubyte
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             ldr     x0, [x0]
             blr     x0
             cbz     w0, G_M57901_IG19
             mov     x15, xzr
 						;; size=76 bbWeight=0.50 PerfScore 10.00
 G_M57901_IG05:
             movz    x21, #0xD1FFAB1E
+            movk    x21, #0xD1FFAB1E LSL #16
             movk    x21, #0xD1FFAB1E LSL #32
             add     x14, x21, #128
             bl      CORINFO_HELP_ASSIGN_REF
             ldr     x0, [x21, #0x80]
             cbz     x0, G_M57901_IG07
             ldr     x0, [x21, #0x88]
             add     x1, x0, #8
             ldapr   x1, [x1]
             cbz     x1, G_M57901_IG21
             movz    x1, #0xD1FFAB1E      // code for System.Lazy`1[System.__Canon]:CreateValue():System.__Canon:this
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
-						;; size=60 bbWeight=0.50 PerfScore 9.75
+						;; size=64 bbWeight=0.50 PerfScore 10.00
 G_M57901_IG06:
             ldr     x1, [x0, #0x68]
             cbz     x1, G_M57901_IG07
             ldr     x0, [x21, #0x80]
             movz    x2, #0xD1FFAB1E      // code for Interop+Sys:SetKeypadXmit(Microsoft.Win32.SafeHandles.SafeFileHandle,System.String)
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
 						;; size=32 bbWeight=0.50 PerfScore 6.25
 G_M57901_IG07:
             movz    x0, #0xD1FFAB1E      // code for System.Console:get_IsInputRedirected():ubyte
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             ldr     x0, [x0]
             blr     x0
             cbnz    w0, G_M57901_IG16
             movz    x0, #0xD1FFAB1E      // code for System.ConsolePal:InvalidateTerminalSettings()
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             movz    x1, #0xD1FFAB1E
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             str     x1, [fp, #0x30]	// [V17 PInvokeFrame+0x18]
             adr     x1, [G_M57901_IG10]
             str     x1, [fp, #0x48]	// [V17 PInvokeFrame+0x30]
             add     x1, fp, #32	// [V17 PInvokeFrame+0x08]
             str     x1, [x19, #0x08]
             strb    wzr, [x19, #0x04]
 						;; size=72 bbWeight=0.50 PerfScore 7.25
 G_M57901_IG08:
             movz    x1, #0xD1FFAB1E
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
 						;; size=12 bbWeight=0.50 PerfScore 0.75
 G_M57901_IG09:
             blr     x1
 						;; size=4 bbWeight=0.50 PerfScore 0.50
 G_M57901_IG10:
             mov     w0, #1
             strb    w0, [x19, #0x04]
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             ldr     w0, [x0]
             cmp     w0, #0
             beq     G_M57901_IG11
             bl      CORINFO_HELP_STOP_FOR_GC
 						;; size=36 bbWeight=0.50 PerfScore 4.25
 G_M57901_IG11:
             ldr     x3, [fp, #0x28]	// [V17 PInvokeFrame+0x10]
             str     x3, [x19, #0x08]
             movz    x3, #0xD1FFAB1E
             movk    x3, #0xD1FFAB1E LSL #16
             movk    x3, #0xD1FFAB1E LSL #32
             ldr     q16, [x3]
             str     q16, [fp, #0x80]	// [V08 tmp2]
             add     x0, fp, #128	// [V08 tmp2]
             add     x21, fp, #120	// [V10 tmp4]
             movz    x3, #0xD1FFAB1E
             movk    x3, #0xD1FFAB1E LSL #16
             movk    x3, #0xD1FFAB1E LSL #32
             str     x3, [fp, #0x68]	// [V14 tmp8]
             movz    x3, #0xD1FFAB1E
             movk    x3, #0xD1FFAB1E LSL #16
             movk    x3, #0xD1FFAB1E LSL #32
             mov     x1, x21
             mov     w2, #4
             movz    x4, #0xD1FFAB1E
             movk    x4, #0xD1FFAB1E LSL #16
             movk    x4, #0xD1FFAB1E LSL #32
             str     x4, [fp, #0x30]	// [V17 PInvokeFrame+0x18]
             adr     x4, [G_M57901_IG14]
             str     x4, [fp, #0x48]	// [V17 PInvokeFrame+0x30]
             add     x4, fp, #32	// [V17 PInvokeFrame+0x08]
             str     x4, [x19, #0x08]
             strb    wzr, [x19, #0x04]
 						;; size=108 bbWeight=0.50 PerfScore 10.50
 G_M57901_IG12:
             movz    x4, #0xD1FFAB1E
             movk    x4, #0xD1FFAB1E LSL #16
             movk    x4, #0xD1FFAB1E LSL #32
 						;; size=12 bbWeight=0.50 PerfScore 0.75
 G_M57901_IG13:
             blr     x4
 						;; size=4 bbWeight=0.50 PerfScore 0.50
 G_M57901_IG14:
             mov     w0, #1
             strb    w0, [x19, #0x04]
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             ldr     w0, [x0]
             cmp     w0, #0
             beq     G_M57901_IG15
             bl      CORINFO_HELP_STOP_FOR_GC
 						;; size=36 bbWeight=0.50 PerfScore 4.25
 G_M57901_IG15:
             ldr     x0, [fp, #0x28]	// [V17 PInvokeFrame+0x10]
             str     x0, [x19, #0x08]
             str     xzr, [fp, #0x68]	// [V14 tmp8]
             ldrb    w0, [x21]
             strb    w0, [x20, #0x02]
             ldrb    w0, [x21, #0x01]
             strb    w0, [x20, #0x03]
             ldrb    w0, [x21, #0x02]
             strb    w0, [x20, #0x04]
             ldrb    w0, [x21, #0x03]
             strb    w0, [x20, #0x05]
 						;; size=44 bbWeight=0.50 PerfScore 10.00
 G_M57901_IG16:
             mov     w0, #1
             stlrb   w0, [x20]
             b       G_M57901_IG22
 						;; size=12 bbWeight=0.50 PerfScore 1.25
 G_M57901_IG17:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x19, x0
             movz    x1, #0xD1FFAB1E      // code for System.ComponentModel.Win32Exception:.ctor():this
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
             mov     x0, x19
             bl      CORINFO_HELP_THROW
             brk_unix #0
 						;; size=52 bbWeight=0 PerfScore 0.00
 G_M57901_IG18:
             movz    x1, #0xD1FFAB1E      // code for System.Threading.Monitor:ThrowLockTakenException()
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
             brk_unix #0
 						;; size=24 bbWeight=0 PerfScore 0.00
 G_M57901_IG19:
             movz    x21, #0xD1FFAB1E
+            movk    x21, #0xD1FFAB1E LSL #16
             movk    x21, #0xD1FFAB1E LSL #32
             ldr     x15, [x21]
             b       G_M57901_IG05
-						;; size=16 bbWeight=0.50 PerfScore 2.50
+						;; size=20 bbWeight=0.50 PerfScore 2.75
 G_M57901_IG20:
             movz    x21, #0xD1FFAB1E
+            movk    x21, #0xD1FFAB1E LSL #16
             movk    x21, #0xD1FFAB1E LSL #32
             ldr     x15, [x21, #0x08]
             b       G_M57901_IG05
-						;; size=16 bbWeight=0.50 PerfScore 2.50
+						;; size=20 bbWeight=0.50 PerfScore 2.75
 G_M57901_IG21:
             ldr     x0, [x0, #0x18]
             b       G_M57901_IG06
 						;; size=8 bbWeight=0.50 PerfScore 2.00
 G_M57901_IG22:
             ldrb    w0, [fp, #0x70]	// [V01 loc1]
             cbz     w0, G_M57901_IG24
 						;; size=8 bbWeight=1 PerfScore 3.00
 G_M57901_IG23:
             ldr     x0, [fp, #0x60]	// [V00 loc0]
             bl      System.Threading.Monitor:Exit(System.Object)
 						;; size=8 bbWeight=0.50 PerfScore 1.50
 G_M57901_IG24:
             movz    xip0, #0xD1FFAB1E
-            movk    xip0, #23 LSL #16
+            movk    xip0, #26 LSL #16
             ldr     xip1, [fp, #0x90]	// [V24 GsCookie]
             cmp     xip0, xip1
             beq     G_M57901_IG25
             bl      CORINFO_HELP_FAIL_FAST
 						;; size=24 bbWeight=1 PerfScore 5.50
 G_M57901_IG25:
             ldp     x27, x28, [sp, #0xE0]
             ldp     x25, x26, [sp, #0xD0]
             ldp     x23, x24, [sp, #0xC0]
             ldp     x21, x22, [sp, #0xB0]
             ldp     x19, x20, [sp, #0xA0]
             ldp     fp, lr, [sp], #0xF0
             ret     lr
 						;; size=28 bbWeight=1 PerfScore 7.00
 G_M57901_IG26:
             stp     fp, lr, [sp, #-0x70]!
             stp     x19, x20, [sp, #0x20]
             stp     x21, x22, [sp, #0x30]
             stp     x23, x24, [sp, #0x40]
             stp     x25, x26, [sp, #0x50]
             stp     x27, x28, [sp, #0x60]
             add     x3, fp, #240
             str     x3, [sp, #0x18]
 						;; size=32 bbWeight=0 PerfScore 0.00
 G_M57901_IG27:
             ldrb    w0, [fp, #0x70]	// [V01 loc1]
             cbz     w0, G_M57901_IG28
             ldr     x0, [fp, #0x60]	// [V00 loc0]
             bl      System.Threading.Monitor:Exit(System.Object)
 						;; size=16 bbWeight=0 PerfScore 0.00
 G_M57901_IG28:
             ldp     x27, x28, [sp, #0x60]
             ldp     x25, x26, [sp, #0x50]
             ldp     x23, x24, [sp, #0x40]
             ldp     x21, x22, [sp, #0x30]
             ldp     x19, x20, [sp, #0x20]
             ldp     fp, lr, [sp], #0x70
             ret     lr
 						;; size=28 bbWeight=0 PerfScore 0.00
 
-; Total bytes of code 916, prolog size 52, PerfScore 124.00, instruction count 229, allocated bytes for code 916 (MethodHash=c8491dd2) for method System.ConsolePal:EnsureInitializedCore() (FullOpts)
+; Total bytes of code 928, prolog size 52, PerfScore 124.75, instruction count 232, allocated bytes for code 928 (MethodHash=c8491dd2) for method System.ConsolePal:EnsureInitializedCore() (FullOpts)
24 (0.45 % of base) - System.Net.Http.HttpConnectionPool+d__51:MoveNext():this
 ; Assembly listing for method System.Net.Http.HttpConnectionPool+<ConnectAsync>d__51:MoveNext():this (FullOpts)
 ; Emitting BLENDED_CODE for generic ARM64 - Unix
 ; FullOpts code
 ; optimized code
 ; fp based frame
 ; fully interruptible
 ; No PGO data
 ; 0 inlinees with PGO data; 114 single block inlinees; 41 inlinees without PGO data
 ; Final local variable assignments
 ;
 ;  V00 this         [V00,T00] ( 79, 76   )   byref  ->  [fp+0x10]  this EH-live single-def
 ;  V01 loc0         [V01,T115] (  3,  2.88)     int  ->  x19        
 ;  V02 loc1         [V02,T06] ( 16, 16   )     ref  ->  x20         class-hnd exact single-def <System.Net.Http.HttpConnectionPool>
 ;* V03 loc2         [V03    ] (  0,  0   )  struct (24) zero-ref    <System.ValueTuple`3[System.IO.Stream,System.Net.TransportContext,System.Net.IPEndPoint]>
 ;  V04 loc3         [V04,T07] ( 15, 15   )     ref  ->  x19         class-hnd <System.IO.Stream>
 ;  V05 loc4         [V05,T92] (  3,  3   )     ref  ->  registers   class-hnd <System.Net.TransportContext>
 ;  V06 loc5         [V06,T93] (  3,  3   )     ref  ->   x0         class-hnd single-def <System.Net.Http.HttpContentStream>
 ;* V07 loc6         [V07    ] (  0,  0   )     ref  ->  zero-ref    class-hnd single-def <System.IO.Stream>
 ;* V08 loc7         [V08    ] (  0,  0   )   ubyte  ->  zero-ref   
 ;* V09 loc8         [V09    ] (  0,  0   )     ref  ->  zero-ref    class-hnd <System.IO.Stream>
 ;  V10 loc9         [V10    ] ( 12, 12   )  struct (24) [fp+0x100]  do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1+ConfiguredValueTaskAwaiter[System.IO.Stream]>
 ;  V11 loc10        [V11    ] ( 16, 16   )  struct (24) [fp+0xE8]  do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Threading.Tasks.ValueTask`1[System.IO.Stream]>
 ;* V12 loc11        [V12    ] (  0,  0   )  struct (24) zero-ref    do-not-enreg[S] ld-addr-op <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1[System.IO.Stream]>
 ;* V13 loc12        [V13    ] (  0,  0   )     ref  ->  zero-ref    class-hnd <System.Net.Security.SslStream>
 ;  V14 loc13        [V14    ] ( 12, 12   )  struct (24) [fp+0xD0]  do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1+ConfiguredValueTaskAwaiter[System.Net.Security.SslStream]>
 ;  V15 loc14        [V15    ] ( 12, 12   )  struct (24) [fp+0xB8]  do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Threading.Tasks.ValueTask`1[System.Net.Security.SslStream]>
 ;* V16 loc15        [V16    ] (  0,  0   )  struct (24) zero-ref    do-not-enreg[S] ld-addr-op <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1[System.Net.Security.SslStream]>
 ;* V17 loc16        [V17    ] (  0,  0   )     ref  ->  zero-ref    class-hnd <System.IO.Stream>
 ;  V18 loc17        [V18    ] ( 12, 12   )  struct (24) [fp+0xA0]  do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1+ConfiguredValueTaskAwaiter[System.IO.Stream]>
 ;* V19 loc18        [V19    ] (  0,  0   )     ref  ->  zero-ref    class-hnd <System.Net.Security.SslStream>
 ;  V20 loc19        [V20    ] ( 12, 12   )  struct (24) [fp+0x88]  do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1+ConfiguredValueTaskAwaiter[System.Net.Security.SslStream]>
 ;* V21 loc20        [V21    ] (  0,  0   )     ref  ->  zero-ref    class-hnd <System.IO.Stream>
 ;  V22 loc21        [V22    ] ( 12, 12   )  struct (24) [fp+0x70]  do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1+ConfiguredValueTaskAwaiter[System.IO.Stream]>
 ;* V23 loc22        [V23    ] (  0,  0   )     ref  ->  zero-ref    class-hnd <System.IO.Stream>
 ;  V24 loc23        [V24    ] ( 12, 12   )  struct (24) [fp+0x58]  do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1+ConfiguredValueTaskAwaiter[System.IO.Stream]>
 ;  V25 loc24        [V25,T15] (  7,  7   )     ref  ->  x22         class-hnd <System.Net.Security.SslStream>
 ;* V26 loc25        [V26    ] (  0,  0   )     ref  ->  zero-ref    class-hnd <System.Net.Security.SslStream>
 ;  V27 loc26        [V27    ] ( 12, 12   )  struct (24) [fp+0x40]  do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1+ConfiguredValueTaskAwaiter[System.Net.Security.SslStream]>
 ;  V28 loc27        [V28    ] ( 22, 22   )  struct (40) [fp+0x18]  do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Runtime.CompilerServices.DefaultInterpolatedStringHandler>
 ;* V29 loc28        [V29    ] (  0,  0   )     ref  ->  zero-ref    class-hnd single-def <System.Exception>
 ;# V30 OutArgs      [V30    ] (  1,  1   )  struct ( 0) [sp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
 ;* V31 tmp1         [V31    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op "NewObj constructor temp" <System.ValueTuple`3[System.IO.Stream,System.Net.TransportContext,System.Net.IPEndPoint]>
 ;* V32 tmp2         [V32    ] (  0,  0   )  struct (40) zero-ref    do-not-enreg[SF] ld-addr-op "NewObj constructor temp" <System.Runtime.CompilerServices.DefaultInterpolatedStringHandler>
 ;* V33 tmp3         [V33    ] (  0,  0   )  struct ( 8) zero-ref    single-def "spilled call-like call argument" <System.Net.Security.SslApplicationProtocol>
 ;* V34 tmp4         [V34    ] (  0,  0   )     int  ->  zero-ref    "dup spill"
 ;* V35 tmp5         [V35    ] (  0,  0   )     int  ->  zero-ref    "dup spill"
 ;  V36 tmp6         [V36,T16] (  3,  6   )     ref  ->   x0         class-hnd exact single-def "dup spill" <System.Net.Http.HttpConnection>
 ;* V37 tmp7         [V37    ] (  0,  0   )     ref  ->  zero-ref    single-def
 ;  V38 tmp8         [V38,T29] (  4,  4   )     ref  ->   x0        
 ;* V39 tmp9         [V39    ] (  0,  0   )     int  ->  zero-ref    "dup spill"
 ;* V40 tmp10        [V40    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "impAppendStmt" <System.String>
 ;* V41 tmp11        [V41    ] (  0,  0   )     int  ->  zero-ref    "dup spill"
 ;* V42 tmp12        [V42    ] (  0,  0   )     int  ->  zero-ref    "dup spill"
 ;* V43 tmp13        [V43    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "impAppendStmt" <System.String>
 ;* V44 tmp14        [V44    ] (  0,  0   )     int  ->  zero-ref    "dup spill"
 ;* V45 tmp15        [V45    ] (  0,  0   )     int  ->  zero-ref    "dup spill"
 ;* V46 tmp16        [V46    ] (  0,  0   )     int  ->  zero-ref    "dup spill"
 ;* V47 tmp17        [V47    ] (  0,  0   )     int  ->  zero-ref    "dup spill"
 ;* V48 tmp18        [V48    ] (  0,  0   )     int  ->  zero-ref    "dup spill"
 ;* V49 tmp19        [V49    ] (  0,  0   )     int  ->  zero-ref    "dup spill"
 ;* V50 tmp20        [V50    ] (  0,  0   )     int  ->  zero-ref    "dup spill"
 ;* V51 tmp21        [V51    ] (  0,  0   )     int  ->  zero-ref    "dup spill"
 ;  V52 tmp22        [V52,T160] (  2,  0   )     ref  ->   x2         class-hnd single-def "impSpillSpecialSideEff" <System.Exception>
 ;* V53 tmp23        [V53    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.Net.Http.HttpAuthority>
 ;* V54 tmp24        [V54    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.Net.Http.HttpAuthority>
 ;* V55 tmp25        [V55    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op "NewObj constructor temp" <System.Threading.Tasks.ValueTask`1[System.IO.Stream]>
 ;* V56 tmp26        [V56    ] (  0,  0   )  struct (24) zero-ref    do-not-enreg[S] ld-addr-op "Inline stloc first use temp" <System.Threading.Tasks.ValueTask`1[System.IO.Stream]>
 ;* V57 tmp27        [V57    ] (  0,  0   )  struct (24) zero-ref    do-not-enreg[S] ld-addr-op "NewObj constructor temp" <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1[System.IO.Stream]>
 ;  V58 tmp28        [V58,T49] (  2,  4   )     ref  ->   x1         class-hnd single-def "Inlining Arg" <System.Object>
 ;  V59 tmp29        [V59,T50] (  2,  4   )     ref  ->   x0         class-hnd single-def "Inlining Arg" <System.__Canon>
 ;  V60 tmp30        [V60,T79] (  2,  4   )   short  ->   x2         "Inlining Arg"
 ;* V61 tmp31        [V61    ] (  0,  0   )  struct (24) zero-ref    do-not-enreg[S] ld-addr-op "NewObj constructor temp" <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1+ConfiguredValueTaskAwaiter[System.IO.Stream]>
 ;* V62 tmp32        [V62,T145] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
 ;  V63 tmp33        [V63,T30] (  4,  4   )     ref  ->  x19         class-hnd single-def "Inline stloc first use temp" <System.Object>
 ;  V64 tmp34        [V64,T94] (  3,  3   )     ref  ->   x0         class-hnd single-def "Inline stloc first use temp" <System.Threading.Tasks.Task`1[System.IO.Stream]>
 ;* V65 tmp35        [V65    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "updating class info" <System.Threading.Tasks.Sources.IValueTaskSource`1[System.IO.Stream]>
 ;* V66 tmp36        [V66    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V67 tmp37        [V67    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
 ;* V68 tmp38        [V68    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
 ;* V69 tmp39        [V69    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline stloc first use temp" <System.Runtime.CompilerServices.IAsyncStateMachineBox>
 ;  V70 tmp40        [V70,T19] (  5,  5   )     ref  ->  x23         class-hnd "Inline return value spill temp" <System.IO.Stream>
 ;  V71 tmp41        [V71,T31] (  4,  4   )     ref  ->  x22         class-hnd single-def "Inline stloc first use temp" <System.Object>
 ;  V72 tmp42        [V72,T20] (  5,  5   )     ref  ->  x23         class-hnd single-def "Inline stloc first use temp" <System.Threading.Tasks.Task`1[System.IO.Stream]>
 ;* V73 tmp43        [V73    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "updating class info" <System.Threading.Tasks.Sources.IValueTaskSource`1[System.IO.Stream]>
 ;* V74 tmp44        [V74    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op "NewObj constructor temp" <System.Threading.Tasks.ValueTask`1[System.Net.Security.SslStream]>
 ;* V75 tmp45        [V75    ] (  0,  0   )  struct (24) zero-ref    do-not-enreg[S] ld-addr-op "Inline stloc first use temp" <System.Threading.Tasks.ValueTask`1[System.Net.Security.SslStream]>
 ;* V76 tmp46        [V76    ] (  0,  0   )  struct (24) zero-ref    do-not-enreg[S] ld-addr-op "NewObj constructor temp" <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1[System.Net.Security.SslStream]>
 ;  V77 tmp47        [V77,T51] (  2,  4   )     ref  ->   x1         class-hnd single-def "Inlining Arg" <System.Object>
 ;  V78 tmp48        [V78,T52] (  2,  4   )     ref  ->   x0         class-hnd single-def "Inlining Arg" <System.__Canon>
 ;  V79 tmp49        [V79,T80] (  2,  4   )   short  ->   x2         "Inlining Arg"
 ;* V80 tmp50        [V80    ] (  0,  0   )  struct (24) zero-ref    do-not-enreg[S] ld-addr-op "NewObj constructor temp" <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1+ConfiguredValueTaskAwaiter[System.Net.Security.SslStream]>
 ;* V81 tmp51        [V81,T146] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
 ;  V82 tmp52        [V82,T32] (  4,  4   )     ref  ->  x19         class-hnd single-def "Inline stloc first use temp" <System.Object>
 ;  V83 tmp53        [V83,T95] (  3,  3   )     ref  ->   x0         class-hnd single-def "Inline stloc first use temp" <System.Threading.Tasks.Task`1[System.Net.Security.SslStream]>
 ;* V84 tmp54        [V84    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "updating class info" <System.Threading.Tasks.Sources.IValueTaskSource`1[System.Net.Security.SslStream]>
 ;* V85 tmp55        [V85    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V86 tmp56        [V86    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
 ;* V87 tmp57        [V87    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
 ;* V88 tmp58        [V88    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline stloc first use temp" <System.Runtime.CompilerServices.IAsyncStateMachineBox>
 ;  V89 tmp59        [V89,T33] (  4,  4   )     ref  ->  x19         class-hnd "Inline return value spill temp" <System.Net.Security.SslStream>
-;  V90 tmp60        [V90,T34] (  4,  4   )     ref  ->  x19         class-hnd single-def "Inline stloc first use temp" <System.Object>
-;  V91 tmp61        [V91,T21] (  5,  5   )     ref  ->  x24         class-hnd single-def "Inline stloc first use temp" <System.Threading.Tasks.Task`1[System.Net.Security.SslStream]>
+;  V90 tmp60        [V90,T34] (  4,  4   )     ref  ->  x24         class-hnd single-def "Inline stloc first use temp" <System.Object>
+;  V91 tmp61        [V91,T21] (  5,  5   )     ref  ->  x19         class-hnd single-def "Inline stloc first use temp" <System.Threading.Tasks.Task`1[System.Net.Security.SslStream]>
 ;* V92 tmp62        [V92    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "updating class info" <System.Threading.Tasks.Sources.IValueTaskSource`1[System.Net.Security.SslStream]>
 ;* V93 tmp63        [V93    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op "NewObj constructor temp" <System.Threading.Tasks.ValueTask`1[System.IO.Stream]>
 ;* V94 tmp64        [V94    ] (  0,  0   )  struct (24) zero-ref    do-not-enreg[S] ld-addr-op "Inline stloc first use temp" <System.Threading.Tasks.ValueTask`1[System.IO.Stream]>
 ;* V95 tmp65        [V95    ] (  0,  0   )  struct (24) zero-ref    do-not-enreg[S] ld-addr-op "NewObj constructor temp" <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1[System.IO.Stream]>
 ;  V96 tmp66        [V96,T53] (  2,  4   )     ref  ->   x1         class-hnd single-def "Inlining Arg" <System.Object>
 ;  V97 tmp67        [V97,T54] (  2,  4   )     ref  ->   x0         class-hnd single-def "Inlining Arg" <System.__Canon>
 ;  V98 tmp68        [V98,T81] (  2,  4   )   short  ->   x2         "Inlining Arg"
 ;* V99 tmp69        [V99    ] (  0,  0   )  struct (24) zero-ref    do-not-enreg[S] ld-addr-op "NewObj constructor temp" <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1+ConfiguredValueTaskAwaiter[System.IO.Stream]>
 ;* V100 tmp70       [V100,T147] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
 ;  V101 tmp71       [V101,T35] (  4,  4   )     ref  ->  x19         class-hnd single-def "Inline stloc first use temp" <System.Object>
 ;  V102 tmp72       [V102,T96] (  3,  3   )     ref  ->   x0         class-hnd single-def "Inline stloc first use temp" <System.Threading.Tasks.Task`1[System.IO.Stream]>
 ;* V103 tmp73       [V103    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "updating class info" <System.Threading.Tasks.Sources.IValueTaskSource`1[System.IO.Stream]>
 ;* V104 tmp74       [V104    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V105 tmp75       [V105    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
 ;* V106 tmp76       [V106    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
 ;* V107 tmp77       [V107    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline stloc first use temp" <System.Runtime.CompilerServices.IAsyncStateMachineBox>
 ;  V108 tmp78       [V108,T22] (  5,  5   )     ref  ->  x21         class-hnd "Inline return value spill temp" <System.IO.Stream>
 ;  V109 tmp79       [V109,T36] (  4,  4   )     ref  ->  x19         class-hnd single-def "Inline stloc first use temp" <System.Object>
 ;  V110 tmp80       [V110,T23] (  5,  5   )     ref  ->  x21         class-hnd single-def "Inline stloc first use temp" <System.Threading.Tasks.Task`1[System.IO.Stream]>
 ;* V111 tmp81       [V111    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "updating class info" <System.Threading.Tasks.Sources.IValueTaskSource`1[System.IO.Stream]>
 ;* V112 tmp82       [V112    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op "NewObj constructor temp" <System.Threading.Tasks.ValueTask`1[System.Net.Security.SslStream]>
 ;* V113 tmp83       [V113    ] (  0,  0   )  struct (24) zero-ref    do-not-enreg[S] ld-addr-op "Inline stloc first use temp" <System.Threading.Tasks.ValueTask`1[System.Net.Security.SslStream]>
 ;* V114 tmp84       [V114    ] (  0,  0   )  struct (24) zero-ref    do-not-enreg[S] ld-addr-op "NewObj constructor temp" <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1[System.Net.Security.SslStream]>
 ;  V115 tmp85       [V115,T55] (  2,  4   )     ref  ->   x1         class-hnd single-def "Inlining Arg" <System.Object>
 ;  V116 tmp86       [V116,T56] (  2,  4   )     ref  ->   x0         class-hnd single-def "Inlining Arg" <System.__Canon>
 ;  V117 tmp87       [V117,T82] (  2,  4   )   short  ->   x2         "Inlining Arg"
 ;* V118 tmp88       [V118    ] (  0,  0   )  struct (24) zero-ref    do-not-enreg[S] ld-addr-op "NewObj constructor temp" <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1+ConfiguredValueTaskAwaiter[System.Net.Security.SslStream]>
 ;* V119 tmp89       [V119,T148] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
 ;  V120 tmp90       [V120,T37] (  4,  4   )     ref  ->  x19         class-hnd single-def "Inline stloc first use temp" <System.Object>
 ;  V121 tmp91       [V121,T97] (  3,  3   )     ref  ->   x0         class-hnd single-def "Inline stloc first use temp" <System.Threading.Tasks.Task`1[System.Net.Security.SslStream]>
 ;* V122 tmp92       [V122    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "updating class info" <System.Threading.Tasks.Sources.IValueTaskSource`1[System.Net.Security.SslStream]>
 ;* V123 tmp93       [V123    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V124 tmp94       [V124    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
 ;* V125 tmp95       [V125    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
 ;* V126 tmp96       [V126    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline stloc first use temp" <System.Runtime.CompilerServices.IAsyncStateMachineBox>
 ;  V127 tmp97       [V127,T38] (  4,  4   )     ref  ->  x19         class-hnd "Inline return value spill temp" <System.Net.Security.SslStream>
 ;  V128 tmp98       [V128,T39] (  4,  4   )     ref  ->  x19         class-hnd single-def "Inline stloc first use temp" <System.Object>
 ;  V129 tmp99       [V129,T24] (  5,  5   )     ref  ->  x21         class-hnd single-def "Inline stloc first use temp" <System.Threading.Tasks.Task`1[System.Net.Security.SslStream]>
 ;* V130 tmp100      [V130    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "updating class info" <System.Threading.Tasks.Sources.IValueTaskSource`1[System.Net.Security.SslStream]>
 ;* V131 tmp101      [V131    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op "NewObj constructor temp" <System.Threading.Tasks.ValueTask`1[System.IO.Stream]>
 ;* V132 tmp102      [V132    ] (  0,  0   )  struct (24) zero-ref    do-not-enreg[S] ld-addr-op "Inline stloc first use temp" <System.Threading.Tasks.ValueTask`1[System.IO.Stream]>
 ;* V133 tmp103      [V133    ] (  0,  0   )  struct (24) zero-ref    do-not-enreg[S] ld-addr-op "NewObj constructor temp" <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1[System.IO.Stream]>
 ;  V134 tmp104      [V134,T57] (  2,  4   )     ref  ->   x1         class-hnd single-def "Inlining Arg" <System.Object>
 ;  V135 tmp105      [V135,T58] (  2,  4   )     ref  ->   x0         class-hnd single-def "Inlining Arg" <System.__Canon>
 ;  V136 tmp106      [V136,T83] (  2,  4   )   short  ->   x2         "Inlining Arg"
 ;* V137 tmp107      [V137    ] (  0,  0   )  struct (24) zero-ref    do-not-enreg[S] ld-addr-op "NewObj constructor temp" <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1+ConfiguredValueTaskAwaiter[System.IO.Stream]>
 ;* V138 tmp108      [V138,T149] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
 ;  V139 tmp109      [V139,T40] (  4,  4   )     ref  ->  x19         class-hnd single-def "Inline stloc first use temp" <System.Object>
 ;  V140 tmp110      [V140,T98] (  3,  3   )     ref  ->   x0         class-hnd single-def "Inline stloc first use temp" <System.Threading.Tasks.Task`1[System.IO.Stream]>
 ;* V141 tmp111      [V141    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "updating class info" <System.Threading.Tasks.Sources.IValueTaskSource`1[System.IO.Stream]>
 ;* V142 tmp112      [V142    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V143 tmp113      [V143    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
 ;* V144 tmp114      [V144    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
 ;* V145 tmp115      [V145    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline stloc first use temp" <System.Runtime.CompilerServices.IAsyncStateMachineBox>
 ;  V146 tmp116      [V146,T41] (  4,  4   )     ref  ->  x19         class-hnd "Inline return value spill temp" <System.IO.Stream>
 ;  V147 tmp117      [V147,T42] (  4,  4   )     ref  ->  x19         class-hnd single-def "Inline stloc first use temp" <System.Object>
 ;  V148 tmp118      [V148,T25] (  5,  5   )     ref  ->  x21         class-hnd single-def "Inline stloc first use temp" <System.Threading.Tasks.Task`1[System.IO.Stream]>
 ;* V149 tmp119      [V149    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "updating class info" <System.Threading.Tasks.Sources.IValueTaskSource`1[System.IO.Stream]>
 ;* V150 tmp120      [V150    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op "NewObj constructor temp" <System.Threading.Tasks.ValueTask`1[System.IO.Stream]>
 ;* V151 tmp121      [V151    ] (  0,  0   )  struct (24) zero-ref    do-not-enreg[S] ld-addr-op "Inline stloc first use temp" <System.Threading.Tasks.ValueTask`1[System.IO.Stream]>
 ;* V152 tmp122      [V152    ] (  0,  0   )  struct (24) zero-ref    do-not-enreg[S] ld-addr-op "NewObj constructor temp" <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1[System.IO.Stream]>
 ;  V153 tmp123      [V153,T59] (  2,  4   )     ref  ->   x1         class-hnd single-def "Inlining Arg" <System.Object>
 ;  V154 tmp124      [V154,T60] (  2,  4   )     ref  ->   x0         class-hnd single-def "Inlining Arg" <System.__Canon>
 ;  V155 tmp125      [V155,T84] (  2,  4   )   short  ->   x2         "Inlining Arg"
 ;* V156 tmp126      [V156    ] (  0,  0   )  struct (24) zero-ref    do-not-enreg[S] ld-addr-op "NewObj constructor temp" <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1+ConfiguredValueTaskAwaiter[System.IO.Stream]>
 ;* V157 tmp127      [V157,T150] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
 ;  V158 tmp128      [V158,T43] (  4,  4   )     ref  ->  x19         class-hnd single-def "Inline stloc first use temp" <System.Object>
 ;  V159 tmp129      [V159,T99] (  3,  3   )     ref  ->   x0         class-hnd single-def "Inline stloc first use temp" <System.Threading.Tasks.Task`1[System.IO.Stream]>
 ;* V160 tmp130      [V160    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "updating class info" <System.Threading.Tasks.Sources.IValueTaskSource`1[System.IO.Stream]>
 ;* V161 tmp131      [V161    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V162 tmp132      [V162    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
 ;* V163 tmp133      [V163    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
 ;* V164 tmp134      [V164    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline stloc first use temp" <System.Runtime.CompilerServices.IAsyncStateMachineBox>
 ;  V165 tmp135      [V165,T44] (  4,  4   )     ref  ->  x19         class-hnd "Inline return value spill temp" <System.IO.Stream>
 ;  V166 tmp136      [V166,T45] (  4,  4   )     ref  ->  x19         class-hnd single-def "Inline stloc first use temp" <System.Object>
 ;  V167 tmp137      [V167,T26] (  5,  5   )     ref  ->  x21         class-hnd single-def "Inline stloc first use temp" <System.Threading.Tasks.Task`1[System.IO.Stream]>
 ;* V168 tmp138      [V168    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "updating class info" <System.Threading.Tasks.Sources.IValueTaskSource`1[System.IO.Stream]>
 ;* V169 tmp139      [V169    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op "NewObj constructor temp" <System.Threading.Tasks.ValueTask`1[System.Net.Security.SslStream]>
 ;* V170 tmp140      [V170    ] (  0,  0   )  struct (24) zero-ref    do-not-enreg[S] ld-addr-op "Inline stloc first use temp" <System.Threading.Tasks.ValueTask`1[System.Net.Security.SslStream]>
 ;* V171 tmp141      [V171    ] (  0,  0   )  struct (24) zero-ref    do-not-enreg[S] ld-addr-op "NewObj constructor temp" <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1[System.Net.Security.SslStream]>
 ;  V172 tmp142      [V172,T61] (  2,  4   )     ref  ->   x1         class-hnd single-def "Inlining Arg" <System.Object>
 ;  V173 tmp143      [V173,T62] (  2,  4   )     ref  ->   x0         class-hnd single-def "Inlining Arg" <System.__Canon>
 ;  V174 tmp144      [V174,T85] (  2,  4   )   short  ->   x2         "Inlining Arg"
 ;* V175 tmp145      [V175    ] (  0,  0   )  struct (24) zero-ref    do-not-enreg[S] ld-addr-op "NewObj constructor temp" <System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1+ConfiguredValueTaskAwaiter[System.Net.Security.SslStream]>
 ;* V176 tmp146      [V176,T151] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
 ;  V177 tmp147      [V177,T46] (  4,  4   )     ref  ->  x22         class-hnd single-def "Inline stloc first use temp" <System.Object>
 ;  V178 tmp148      [V178,T100] (  3,  3   )     ref  ->   x0         class-hnd single-def "Inline stloc first use temp" <System.Threading.Tasks.Task`1[System.Net.Security.SslStream]>
 ;* V179 tmp149      [V179    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "updating class info" <System.Threading.Tasks.Sources.IValueTaskSource`1[System.Net.Security.SslStream]>
 ;* V180 tmp150      [V180    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V181 tmp151      [V181    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
 ;* V182 tmp152      [V182    ] (  0,  0   )   byref  ->  zero-ref    "Inlining Arg"
 ;* V183 tmp153      [V183    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline stloc first use temp" <System.Runtime.CompilerServices.IAsyncStateMachineBox>
 ;  V184 tmp154      [V184,T47] (  4,  4   )     ref  ->  x22         class-hnd "Inline return value spill temp" <System.Net.Security.SslStream>
 ;  V185 tmp155      [V185,T48] (  4,  4   )     ref  ->  x20         class-hnd single-def "Inline stloc first use temp" <System.Object>
 ;  V186 tmp156      [V186,T27] (  5,  5   )     ref  ->  x22         class-hnd single-def "Inline stloc first use temp" <System.Threading.Tasks.Task`1[System.Net.Security.SslStream]>
 ;* V187 tmp157      [V187    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "updating class info" <System.Threading.Tasks.Sources.IValueTaskSource`1[System.Net.Security.SslStream]>
 ;* V188 tmp158      [V188    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.Net.NetEventSource>
 ;* V189 tmp159      [V189    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "impAppendStmt" <System.Buffers.SharedArrayPool`1[ushort]>
 ;  V190 tmp160      [V190,T12] (  5, 10   )     ref  ->   x0         class-hnd single-def "dup spill" <ushort[]>
 ;* V191 tmp161      [V191    ] (  0,  0   )     ref  ->  zero-ref    class-hnd single-def "Inline stloc first use temp" <ushort[]>
 ;* V192 tmp162      [V192    ] (  0,  0   )     int  ->  zero-ref    "Inline return value spill temp"
 ;* V193 tmp163      [V193    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.Span`1[ushort]>
 ;* V194 tmp164      [V194    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.Span`1[ushort]>
 ;  V195 tmp165      [V195,T13] (  4,  8   )     int  ->   x0         "Inlining Arg"
 ;* V196 tmp166      [V196    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.Span`1[ushort]>
 ;  V197 tmp167      [V197,T63] (  2,  4   )   byref  ->   x1         single-def "Inlining Arg"
 ;  V198 tmp168      [V198,T86] (  2,  4   )     int  ->   x0         "Inlining Arg"
 ;* V199 tmp169      [V199,T134] (  0,  0   )   ubyte  ->  zero-ref    "Inline stloc first use temp"
 ;* V200 tmp170      [V200    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.Span`1[ushort]>
 ;* V201 tmp171      [V201    ] (  0,  0   )   byref  ->  zero-ref    single-def "Inlining Arg"
 ;  V202 tmp172      [V202,T64] (  2,  4   )   byref  ->   x2         single-def "Inlining Arg"
 ;* V203 tmp173      [V203    ] (  0,  0   )  struct (16) zero-ref    "spilled call-like call argument" <System.Span`1[ushort]>
 ;  V204 tmp174      [V204,T14] (  4,  8   )     int  ->   x0         "Inlining Arg"
 ;* V205 tmp175      [V205    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "NewObj constructor temp" <System.Span`1[ushort]>
 ;  V206 tmp176      [V206,T65] (  2,  4   )   byref  ->   x1         single-def "Inlining Arg"
 ;  V207 tmp177      [V207,T87] (  2,  4   )     int  ->   x0         "Inlining Arg"
 ;* V208 tmp178      [V208,T135] (  0,  0   )   ubyte  ->  zero-ref    "Inline stloc first use temp"
 ;* V209 tmp179      [V209    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inlining Arg" <System.Span`1[ushort]>
 ;* V210 tmp180      [V210    ] (  0,  0   )   byref  ->  zero-ref    single-def "Inlining Arg"
 ;  V211 tmp181      [V211,T66] (  2,  4   )   byref  ->   x0         single-def "Inlining Arg"
 ;  V212 tmp182      [V212,T67] (  2,  4   )     ref  ->  x19         class-hnd exact single-def "impAppendStmt" <System.Net.NetEventSource>
 ;  V213 tmp183      [V213,T68] (  2,  4   )     ref  ->  x23         class-hnd exact single-def "Inlining Arg" <System.String>
 ;  V214 tmp184      [V214,T88] (  2,  4   )     int  ->   x2         "Inlining Arg"
 ;  V215 tmp185      [V215,T17] (  3,  6   )     ref  ->   x0         class-hnd exact single-def "NewObj constructor temp" <System.Net.SslStreamContext>
 ;  V216 tmp186      [V216,T69] (  2,  4   )     ref  ->   x0         class-hnd single-def "Inlining Arg" <System.Net.IPEndPoint>
 ;  V217 tmp187      [V217,T09] (  7, 14   )   byref  ->  x20         single-def "Inlining Arg"
 ;  V218 tmp188      [V218,T05] (  9, 18   )     ref  ->  x20         class-hnd single-def "Inlining Arg" <System.Threading.Tasks.Task`1[System.ValueTuple`3[System.__Canon,System.__Canon,System.__Canon]]>
 ;  V219 tmp189      [V219,T11] (  6, 12   )     ref  ->  x19         class-hnd exact single-def "impAppendStmt" <System.Threading.Tasks.TplEventSource>
 ;* V220 tmp190      [V220    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.Threading.Tasks.TplEventSource>
 ;  V221 tmp191      [V221,T89] (  2,  4   )     int  ->  x21         "Inlining Arg"
 ;* V222 tmp192      [V222,T136] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
 ;* V223 tmp193      [V223    ] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
 ;* V224 tmp194      [V224,T137] (  0,  0   )   ubyte  ->  zero-ref    "Inline stloc first use temp"
 ;  V225 tmp195      [V225,T101] (  3,  3   )     ref  ->  x19         class-hnd exact single-def "Inline stloc first use temp" <System.Threading.Tasks.Task+ContingentProperties>
 ;  V226 tmp196      [V226,T91] (  2,  2   )   ubyte  ->   x1         "Inline return value spill temp"
 ;  V227 tmp197      [V227,T28] (  5,  5   )     int  ->  x14         "Inline stloc first use temp"
 ;  V228 tmp198      [V228,T112] (  3,  3   )   ubyte  ->   x1         "Inline return value spill temp"
 ;  V229 tmp199      [V229,T01] (  6, 41   )     int  ->  x14         "Inline stloc first use temp"
 ;  V230 tmp200      [V230,T02] (  3, 24   )     int  ->  x12         "Inline stloc first use temp"
 ;  V231 tmp201      [V231,T102] (  3,  3   )     ref  ->   x0         class-hnd single-def "Inline stloc first use temp" <System.Threading.ManualResetEventSlim>
 ;  V232 tmp202      [V232,T116] (  2,  2   )     ref  ->  x22         single-def "field V03.Item1 (fldOffset=0x0)" P-INDEP
 ;  V233 tmp203      [V233,T117] (  2,  2   )     ref  ->  x23         single-def "field V03.Item2 (fldOffset=0x8)" P-INDEP
 ;  V234 tmp204      [V234,T118] (  2,  2   )     ref  ->  x24         single-def "field V03.Item3 (fldOffset=0x10)" P-INDEP
 ;  V235 tmp205      [V235    ] (  8,  8   )     ref  ->  [fp+0xE8]  do-not-enreg[X] addr-exposed "field V11._obj (fldOffset=0x0)" P-DEP
 ;  V236 tmp206      [V236    ] (  8,  8   )     ref  ->  [fp+0xF0]  do-not-enreg[X] addr-exposed "field V11._result (fldOffset=0x8)" P-DEP
 ;  V237 tmp207      [V237    ] (  8,  8   )   short  ->  [fp+0xF8]  do-not-enreg[X] addr-exposed "field V11._token (fldOffset=0x10)" P-DEP
 ;  V238 tmp208      [V238    ] (  4,  4   )   ubyte  ->  [fp+0xFA]  do-not-enreg[X] addr-exposed "field V11._continueOnCapturedContext (fldOffset=0x12)" P-DEP
 ;  V239 tmp209      [V239    ] (  6,  6   )     ref  ->  [fp+0xB8]  do-not-enreg[X] addr-exposed "field V15._obj (fldOffset=0x0)" P-DEP
 ;  V240 tmp210      [V240    ] (  6,  6   )     ref  ->  [fp+0xC0]  do-not-enreg[X] addr-exposed "field V15._result (fldOffset=0x8)" P-DEP
 ;  V241 tmp211      [V241    ] (  6,  6   )   short  ->  [fp+0xC8]  do-not-enreg[X] addr-exposed "field V15._token (fldOffset=0x10)" P-DEP
 ;  V242 tmp212      [V242    ] (  3,  3   )   ubyte  ->  [fp+0xCA]  do-not-enreg[X] addr-exposed "field V15._continueOnCapturedContext (fldOffset=0x12)" P-DEP
 ;  V243 tmp213      [V243,T103] (  3,  3   )     ref  ->  x15         single-def "field V31.Item1 (fldOffset=0x0)" P-INDEP
 ;  V244 tmp214      [V244,T104] (  3,  3   )     ref  ->  x21         single-def "field V31.Item2 (fldOffset=0x8)" P-INDEP
 ;  V245 tmp215      [V245,T105] (  3,  3   )     ref  ->   x0         single-def "field V31.Item3 (fldOffset=0x10)" P-INDEP
 ;  V246 tmp216      [V246,T119] (  2,  2   )     ref  ->   x1         "field V33._readOnlyProtocol (fldOffset=0x0)" P-INDEP
 ;  V247 tmp217      [V247,T120] (  2,  2   )     ref  ->   x1         single-def "field V55._obj (fldOffset=0x0)" P-INDEP
 ;  V248 tmp218      [V248,T121] (  2,  2   )     ref  ->   x0         single-def "field V55._result (fldOffset=0x8)" P-INDEP
 ;  V249 tmp219      [V249,T138] (  2,  2   )   short  ->   x2         "field V55._token (fldOffset=0x10)" P-INDEP
 ;* V250 tmp220      [V250,T152] (  0,  0   )   ubyte  ->  zero-ref    "field V55._continueOnCapturedContext (fldOffset=0x12)" P-INDEP
 ;  V251 tmp221      [V251,T122] (  2,  2   )     ref  ->   x1         single-def "field V74._obj (fldOffset=0x0)" P-INDEP
 ;  V252 tmp222      [V252,T123] (  2,  2   )     ref  ->   x0         single-def "field V74._result (fldOffset=0x8)" P-INDEP
 ;  V253 tmp223      [V253,T139] (  2,  2   )   short  ->   x2         "field V74._token (fldOffset=0x10)" P-INDEP
 ;* V254 tmp224      [V254,T153] (  0,  0   )   ubyte  ->  zero-ref    "field V74._continueOnCapturedContext (fldOffset=0x12)" P-INDEP
 ;  V255 tmp225      [V255,T124] (  2,  2   )     ref  ->   x1         single-def "field V93._obj (fldOffset=0x0)" P-INDEP
 ;  V256 tmp226      [V256,T125] (  2,  2   )     ref  ->   x0         single-def "field V93._result (fldOffset=0x8)" P-INDEP
 ;  V257 tmp227      [V257,T140] (  2,  2   )   short  ->   x2         "field V93._token (fldOffset=0x10)" P-INDEP
 ;* V258 tmp228      [V258,T154] (  0,  0   )   ubyte  ->  zero-ref    "field V93._continueOnCapturedContext (fldOffset=0x12)" P-INDEP
 ;  V259 tmp229      [V259,T126] (  2,  2   )     ref  ->   x1         single-def "field V112._obj (fldOffset=0x0)" P-INDEP
 ;  V260 tmp230      [V260,T127] (  2,  2   )     ref  ->   x0         single-def "field V112._result (fldOffset=0x8)" P-INDEP
 ;  V261 tmp231      [V261,T141] (  2,  2   )   short  ->   x2         "field V112._token (fldOffset=0x10)" P-INDEP
 ;* V262 tmp232      [V262,T155] (  0,  0   )   ubyte  ->  zero-ref    "field V112._continueOnCapturedContext (fldOffset=0x12)" P-INDEP
 ;  V263 tmp233      [V263,T128] (  2,  2   )     ref  ->   x1         single-def "field V131._obj (fldOffset=0x0)" P-INDEP
 ;  V264 tmp234      [V264,T129] (  2,  2   )     ref  ->   x0         single-def "field V131._result (fldOffset=0x8)" P-INDEP
 ;  V265 tmp235      [V265,T142] (  2,  2   )   short  ->   x2         "field V131._token (fldOffset=0x10)" P-INDEP
 ;* V266 tmp236      [V266,T156] (  0,  0   )   ubyte  ->  zero-ref    "field V131._continueOnCapturedContext (fldOffset=0x12)" P-INDEP
 ;  V267 tmp237      [V267,T130] (  2,  2   )     ref  ->   x1         single-def "field V150._obj (fldOffset=0x0)" P-INDEP
 ;  V268 tmp238      [V268,T131] (  2,  2   )     ref  ->   x0         single-def "field V150._result (fldOffset=0x8)" P-INDEP
 ;  V269 tmp239      [V269,T143] (  2,  2   )   short  ->   x2         "field V150._token (fldOffset=0x10)" P-INDEP
 ;* V270 tmp240      [V270,T157] (  0,  0   )   ubyte  ->  zero-ref    "field V150._continueOnCapturedContext (fldOffset=0x12)" P-INDEP
 ;  V271 tmp241      [V271,T132] (  2,  2   )     ref  ->   x1         single-def "field V169._obj (fldOffset=0x0)" P-INDEP
 ;  V272 tmp242      [V272,T133] (  2,  2   )     ref  ->   x0         single-def "field V169._result (fldOffset=0x8)" P-INDEP
 ;  V273 tmp243      [V273,T144] (  2,  2   )   short  ->   x2         "field V169._token (fldOffset=0x10)" P-INDEP
 ;* V274 tmp244      [V274,T158] (  0,  0   )   ubyte  ->  zero-ref    "field V169._continueOnCapturedContext (fldOffset=0x12)" P-INDEP
 ;  V275 tmp245      [V275,T106] (  3,  3   )   byref  ->   x1         "field V193._reference (fldOffset=0x0)" P-INDEP
 ;  V276 tmp246      [V276,T113] (  3,  3   )     int  ->   x2         "field V193._length (fldOffset=0x8)" P-INDEP
 ;* V277 tmp247      [V277    ] (  0,  0   )   byref  ->  zero-ref    "field V194._reference (fldOffset=0x0)" P-INDEP
 ;* V278 tmp248      [V278    ] (  0,  0   )     int  ->  zero-ref    "field V194._length (fldOffset=0x8)" P-INDEP
 ;* V279 tmp249      [V279    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V196._reference (fldOffset=0x0)" P-INDEP
 ;* V280 tmp250      [V280    ] (  0,  0   )     int  ->  zero-ref    "field V196._length (fldOffset=0x8)" P-INDEP
 ;* V281 tmp251      [V281    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V200._reference (fldOffset=0x0)" P-INDEP
 ;* V282 tmp252      [V282    ] (  0,  0   )     int  ->  zero-ref    "field V200._length (fldOffset=0x8)" P-INDEP
 ;* V283 tmp253      [V283    ] (  0,  0   )   byref  ->  zero-ref    "field V203._reference (fldOffset=0x0)" P-INDEP
 ;* V284 tmp254      [V284    ] (  0,  0   )     int  ->  zero-ref    "field V203._length (fldOffset=0x8)" P-INDEP
 ;* V285 tmp255      [V285    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V205._reference (fldOffset=0x0)" P-INDEP
 ;* V286 tmp256      [V286    ] (  0,  0   )     int  ->  zero-ref    "field V205._length (fldOffset=0x8)" P-INDEP
 ;* V287 tmp257      [V287    ] (  0,  0   )   byref  ->  zero-ref    single-def "field V209._reference (fldOffset=0x0)" P-INDEP
 ;* V288 tmp258      [V288    ] (  0,  0   )     int  ->  zero-ref    "field V209._length (fldOffset=0x8)" P-INDEP
 ;* V289 tmp259      [V289    ] (  0,  0   )     ref  ->  zero-ref    single-def "V32.[000..008)"
 ;* V290 tmp260      [V290    ] (  0,  0   )     ref  ->  zero-ref    single-def "V32.[008..016)"
 ;* V291 tmp261      [V291    ] (  0,  0   )     int  ->  zero-ref    "V32.[016..020)"
 ;* V292 tmp262      [V292    ] (  0,  0   )   ubyte  ->  zero-ref    "V32.[020..021)"
 ;* V293 tmp263      [V293    ] (  0,  0   )   byref  ->  zero-ref    single-def "V32.[024..032)"
 ;* V294 tmp264      [V294    ] (  0,  0   )     int  ->  zero-ref    "V32.[032..036)"
 ;  V295 tmp265      [V295,T70] (  2,  4   )     ref  ->   x2         single-def "argument with side effect"
 ;  V296 tmp266      [V296,T71] (  2,  4   )     ref  ->   x2         single-def "argument with side effect"
 ;  V297 tmp267      [V297,T72] (  2,  4   )     ref  ->  x19         single-def "argument with side effect"
 ;  V298 tmp268      [V298,T90] (  2,  4   )     int  ->   x2         "argument with side effect"
 ;  V299 tmp269      [V299,T73] (  2,  4   )     ref  ->   x2         single-def "argument with side effect"
 ;  V300 tmp270      [V300,T74] (  2,  4   )     ref  ->   x2         single-def "argument with side effect"
 ;  V301 tmp271      [V301,T75] (  2,  4   )     ref  ->   x2         single-def "argument with side effect"
 ;  V302 tmp272      [V302,T76] (  2,  4   )     ref  ->   x0         single-def "argument with side effect"
 ;  V303 tmp273      [V303,T77] (  2,  4   )     ref  ->   x2         single-def "argument with side effect"
 ;  V304 tmp274      [V304,T78] (  2,  4   )     ref  ->   x2         single-def "argument with side effect"
 ;  V305 PSPSym      [V305,T159] (  1,  1   )    long  ->  [fp+0x118]  do-not-enreg[V] "PSPSym"
-;  V306 cse0        [V306,T107] (  3,  3   )     ref  ->  x19         "CSE #24: conservative"
-;  V307 cse1        [V307,T108] (  3,  3   )     ref  ->  x19         "CSE #17: conservative"
-;  V308 cse2        [V308,T114] (  3,  3   )     int  ->   x1         "CSE #25: conservative"
+;  V306 cse0        [V306,T107] (  3,  3   )     ref  ->  x19         "CSE #25: conservative"
+;  V307 cse1        [V307,T108] (  3,  3   )     ref  ->  x19         "CSE #18: conservative"
+;  V308 cse2        [V308,T114] (  3,  3   )     int  ->   x1         "CSE #26: conservative"
 ;  V309 cse3        [V309,T109] (  3,  3   )     ref  ->   x2         "CSE #01: conservative"
 ;  V310 cse4        [V310,T110] (  3,  3   )     ref  ->   x0         "CSE #05: conservative"
 ;  V311 cse5        [V311,T111] (  3,  3   )     ref  ->   x0         "CSE #08: conservative"
-;  V312 cse6        [V312,T10] (  7, 14   )   byref  ->   x0         "CSE #26: aggressive"
-;  V313 cse7        [V313,T03] ( 23, 23   )    long  ->  x19         multi-def "CSE #02: aggressive"
-;  V314 cse8        [V314,T04] ( 20, 20   )   byref  ->  x14         multi-def "CSE #03: aggressive"
+;  V312 cse6        [V312,T10] (  7, 14   )   byref  ->   x0         "CSE #27: aggressive"
+;  V313 cse7        [V313,T04] ( 18, 18   )    long  ->  x19         multi-def "CSE #02: aggressive"
+;  V314 cse8        [V314,T03] ( 20, 20   )   byref  ->  x14         multi-def "CSE #03: aggressive"
 ;  V315 cse9        [V315,T08] ( 15, 15   )   byref  ->  x14         multi-def "CSE #07: aggressive"
 ;  V316 rat0        [V316,T18] (  3,  5.78)     int  ->  x21         "ReplaceWithLclVar is creating a new local variable"
 ;
 ; Lcl frame size = 272
 
 G_M36868_IG01:
             stp     fp, lr, [sp, #0xD1FFAB1E]!
             stp     x19, x20, [sp, #0xD1FFAB1E]
             stp     x21, x22, [sp, #0xD1FFAB1E]
             stp     x23, x24, [sp, #0xD1FFAB1E]
             mov     fp, sp
             movi    v16.16b, #0
             add     x9, fp, #88
             add     x10, fp, #216
             stp     q16, q16, [x9, #-0x40]
             stp     q16, q16, [x9, #-0x20]
             bfm     x9, xzr, #0, #5
             dczva   x9
             add     x9, x9, #64
             cmp     x9, x10
             blo     pc-16 (-4 instructions)
             stp     q16, q16, [x10]
             stp     q16, q16, [x10, #0x20]
             add     x1, sp, #0xD1FFAB1E
             str     x1, [fp, #0xD1FFAB1E]	// [V305 PSPSym]
             str     x0, [fp, #0x10]	// [V00 this]
             mov     x1, x0
 						;; size=84 bbWeight=1 PerfScore 17.00
 G_M36868_IG02:
             ldr     w19, [x1, #0x18]
             ldr     x20, [x1]
 						;; size=8 bbWeight=1 PerfScore 6.00
 G_M36868_IG03:
             cmp     w19, #6
             bhi     G_M36868_IG05
 						;; size=8 bbWeight=1 PerfScore 1.50
 G_M36868_IG04:
             mov     w0, w19
             adr     x2, [@RWD00]
             ldr     w2, [x2, x0, LSL #2]
             adr     x3, [G_M36868_IG02]
             add     x2, x2, x3
             br      x2
 						;; size=24 bbWeight=0.88 PerfScore 5.25
 G_M36868_IG05:
             mov     x19, xzr
             str     xzr, [x1, #0x10]
             ldrb    w21, [x20, #0xD0]
             cmp     w21, #7
             bhi     G_M36868_IG73
 						;; size=20 bbWeight=1 PerfScore 6.00
 G_M36868_IG06:
             mov     w2, w21
             adr     x4, [@RWD28]
             ldr     w4, [x4, x2, LSL #2]
             adr     x3, [G_M36868_IG02]
             add     x4, x4, x3
             br      x4
 						;; size=24 bbWeight=0.89 PerfScore 5.33
 G_M36868_IG07:
             ldr     x2, [x20, #0x18]
             ldr     x1, [x2, #0x08]
             ldr     w2, [x2, #0x18]
             ldr     x22, [fp, #0x10]	// [V00 this]
             ldrb    w4, [x22, #0x1C]
             ldr     x3, [x22, #0x08]
             ldr     x5, [x22, #0x40]
             add     x8, fp, #232	// [V11 loc10]
             mov     x0, x20
             movz    x6, #0xD1FFAB1E      // code for System.Net.Http.HttpConnectionPool:ConnectToTcpHostAsync(System.String,int,System.Net.Http.HttpRequestMessage,ubyte,System.Threading.CancellationToken):System.Threading.Tasks.ValueTask`1[System.IO.Stream]:this
             movk    x6, #0xD1FFAB1E LSL #16
             movk    x6, #0xD1FFAB1E LSL #32
             ldr     x6, [x6]
             blr     x6
             ldp     x1, x0, [fp, #0xE8]	// [V235 tmp205], [V236 tmp206]
             ldrsh   x2, [fp, #0xF8]	// [V237 tmp207]
             stp     x1, x0, [fp, #0xD1FFAB1E]	// [V10 loc9], [V10 loc9+0x08]
             strh    w2, [fp, #0xD1FFAB1E]	// [V10 loc9+0x10]
             strb    wzr, [fp, #0xD1FFAB1E]	// [V10 loc9+0x12]
             ldr     x19, [fp, #0xD1FFAB1E]	// [V10 loc9]
             cbz     x19, G_M36868_IG13
             mov     x1, x19
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             movz    x2, #0xD1FFAB1E      // code for CORINFO_HELP_ISINSTANCEOFCLASS
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             cbz     x0, G_M36868_IG08
             add     x0, x0, #52
             ldapr   w0, [x0]
             mov     w1, #0xD1FFAB1E
             tst     w0, w1
             bne     G_M36868_IG13
             b       G_M36868_IG09
 						;; size=148 bbWeight=1 PerfScore 52.50
 G_M36868_IG08:
             mov     x0, x19
             ldrsh   w1, [fp, #0xD1FFAB1E]	// [V10 loc9+0x10]
             movz    x11, #0xD1FFAB1E      // code for System.Threading.Tasks.Sources.IValueTaskSource`1[System.__Canon]:GetStatus(short):int:this
             movk    x11, #0xD1FFAB1E LSL #16
             movk    x11, #0xD1FFAB1E LSL #32
             ldr     x2, [x11]
             blr     x2
             cbnz    w0, G_M36868_IG13
 						;; size=32 bbWeight=1 PerfScore 9.00
 G_M36868_IG09:
             ldr     x22, [fp, #0x10]	// [V00 this]
             str     wzr, [x22, #0x18]
             add     x14, x22, #72
             add     x13, fp, #0xD1FFAB1E	// [V10 loc9]
             bl      CORINFO_HELP_ASSIGN_BYREF
             bl      CORINFO_HELP_ASSIGN_BYREF
             ldr     x12, [x13], #0x08
             str     x12, [x14], #0x08
             add     x2, x22, #32
             mov     x1, x22
             movz    x19, #0xD1FFAB1E
             movk    x19, #0xD1FFAB1E LSL #16
             movk    x19, #0xD1FFAB1E LSL #32
             mov     x0, x19
             movz    x3, #0xD1FFAB1E      // code for System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.ValueTuple`3[System.__Canon,System.__Canon,System.__Canon]]:GetStateMachineBox[System.Net.Http.HttpConnectionPool+<ConnectAsync>d__51](byref,byref):System.Runtime.CompilerServices.IAsyncStateMachineBox
             movk    x3, #0xD1FFAB1E LSL #16
             movk    x3, #0xD1FFAB1E LSL #32
             ldr     x3, [x3]
             blr     x3
             mov     x2, x0
             add     x1, fp, #0xD1FFAB1E	// [V10 loc9]
             add     x0, x19, #248
             movz    x3, #0xD1FFAB1E      // code for System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.ValueTuple`3[System.__Canon,System.__Canon,System.__Canon]]:AwaitUnsafeOnCompleted[System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1+ConfiguredValueTaskAwaiter[System.__Canon]](byref,System.Runtime.CompilerServices.IAsyncStateMachineBox)
             movk    x3, #0xD1FFAB1E LSL #16
             movk    x3, #0xD1FFAB1E LSL #32
             ldr     x3, [x3]
             blr     x3
             b       G_M36868_IG104
-            align   [0 bytes for IG98]
+            align   [4 bytes for IG98]
             align   [0 bytes]
             align   [0 bytes]
             align   [0 bytes]
-						;; size=112 bbWeight=1 PerfScore 26.50
+						;; size=116 bbWeight=1 PerfScore 26.50
 G_M36868_IG10:
             add     x14, x1, #72
 						;; size=4 bbWeight=1 PerfScore 0.50
 G_M36868_IG11:
             ldp     x0, x2, [x14]
             stp     x0, x2, [fp, #0xD1FFAB1E]
             ldr     x0, [x14, #0x10]
             str     x0, [fp, #0xD1FFAB1E]
 						;; size=16 bbWeight=1 PerfScore 9.00
 G_M36868_IG12:
             stp     xzr, xzr, [x14]
             str     xzr, [x14, #0x10]
             movn    w0, #0
             str     w0, [x1, #0x18]
 						;; size=16 bbWeight=1 PerfScore 3.50
 G_M36868_IG13:
             ldr     x22, [fp, #0xD1FFAB1E]	// [V10 loc9]
             cbnz    x22, G_M36868_IG14
             ldr     x23, [fp, #0xD1FFAB1E]	// [V10 loc9+0x08]
             b       G_M36868_IG17
 						;; size=16 bbWeight=1 PerfScore 6.00
 G_M36868_IG14:
             mov     x1, x22
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             movz    x2, #0xD1FFAB1E      // code for CORINFO_HELP_ISINSTANCEOFCLASS
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             mov     x23, x0
             cbz     x23, G_M36868_IG16
             add     x0, x23, #52
             ldapr   w0, [x0]
             mov     w1, #0xD1FFAB1E
             and     w0, w0, w1
             mov     w1, #0xD1FFAB1E
             cmp     w0, w1
             beq     G_M36868_IG15
             mov     x0, x23
             mov     w1, wzr
             movz    x2, #0xD1FFAB1E      // code for System.Runtime.CompilerServices.TaskAwaiter:HandleNonSuccessAndDebuggerNotification(System.Threading.Tasks.Task,int)
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
 						;; size=100 bbWeight=1 PerfScore 22.00
 G_M36868_IG15:
             ldr     x23, [x23, #0x38]
             b       G_M36868_IG17
 						;; size=8 bbWeight=1 PerfScore 4.00
 G_M36868_IG16:
             mov     x0, x22
             ldrsh   w1, [fp, #0xD1FFAB1E]	// [V10 loc9+0x10]
             movz    x11, #0xD1FFAB1E      // code for System.Threading.Tasks.Sources.IValueTaskSource`1[System.__Canon]:GetResult(short):System.__Canon:this
             movk    x11, #0xD1FFAB1E LSL #16
             movk    x11, #0xD1FFAB1E LSL #32
             ldr     x2, [x11]
             blr     x2
             mov     x23, x0
 						;; size=32 bbWeight=1 PerfScore 8.50
 G_M36868_IG17:
             mov     x19, x23
             mov     x0, x19
             movz    x2, #0xD1FFAB1E      // code for System.Net.Http.HttpConnectionPool:<ConnectAsync>g__GetRemoteEndPoint|51_0(System.IO.Stream):System.Net.IPEndPoint
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             ldr     x21, [fp, #0x10]	// [V00 this]
             add     x14, x21, #16
             mov     x15, x0
             bl      CORINFO_HELP_CHECKED_ASSIGN_REF
             ldrb    w2, [x20, #0xD0]
             cmp     w2, #5
             bne     G_M36868_IG73
             ldr     x0, [x20, #0x48]
             cbz     x0, G_M36868_IG73
             ldr     x1, [fp, #0x10]	// [V00 this]
             ldrb    w2, [x1, #0x1C]
             ldr     x1, [x1, #0x08]
             ldr     x21, [fp, #0x10]	// [V00 this]
             ldr     x4, [x21, #0x40]
             add     x8, fp, #184	// [V15 loc14]
             mov     x3, x23
             movz    x5, #0xD1FFAB1E      // code for System.Net.Http.ConnectHelper:EstablishSslConnectionAsync(System.Net.Security.SslClientAuthenticationOptions,System.Net.Http.HttpRequestMessage,ubyte,System.IO.Stream,System.Threading.CancellationToken):System.Threading.Tasks.ValueTask`1[System.Net.Security.SslStream]
             movk    x5, #0xD1FFAB1E LSL #16
             movk    x5, #0xD1FFAB1E LSL #32
             ldr     x5, [x5]
             blr     x5
             ldp     x1, x0, [fp, #0xB8]	// [V239 tmp209], [V240 tmp210]
             ldrsh   x2, [fp, #0xC8]	// [V241 tmp211]
             stp     x1, x0, [fp, #0xD0]	// [V14 loc13], [V14 loc13+0x08]
             strh    w2, [fp, #0xE0]	// [V14 loc13+0x10]
             strb    wzr, [fp, #0xE2]	// [V14 loc13+0x12]
             ldr     x19, [fp, #0xD0]	// [V14 loc13]
             cbz     x19, G_M36868_IG23
             mov     x1, x19
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             movz    x2, #0xD1FFAB1E      // code for CORINFO_HELP_ISINSTANCEOFCLASS
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             cbz     x0, G_M36868_IG18
             add     x0, x0, #52
             ldapr   w0, [x0]
             mov     w1, #0xD1FFAB1E
             tst     w0, w1
             bne     G_M36868_IG23
             b       G_M36868_IG19
 						;; size=204 bbWeight=1 PerfScore 64.50
 G_M36868_IG18:
             mov     x0, x19
             ldrsh   w1, [fp, #0xE0]	// [V14 loc13+0x10]
             movz    x11, #0xD1FFAB1E      // code for System.Threading.Tasks.Sources.IValueTaskSource`1[System.__Canon]:GetStatus(short):int:this
             movk    x11, #0xD1FFAB1E LSL #16
             movk    x11, #0xD1FFAB1E LSL #32
             ldr     x2, [x11]
             blr     x2
             cbnz    w0, G_M36868_IG23
 						;; size=32 bbWeight=1 PerfScore 9.00
 G_M36868_IG19:
             mov     w14, #1
             str     w14, [x21, #0x18]
             add     x14, x21, #96
             add     x13, fp, #208	// [V14 loc13]
             bl      CORINFO_HELP_ASSIGN_BYREF
             bl      CORINFO_HELP_ASSIGN_BYREF
             ldr     x12, [x13], #0x08
             str     x12, [x14], #0x08
             add     x2, x21, #32
             mov     x1, x21
             movz    x19, #0xD1FFAB1E
             movk    x19, #0xD1FFAB1E LSL #16
             movk    x19, #0xD1FFAB1E LSL #32
             mov     x0, x19
             movz    x3, #0xD1FFAB1E      // code for System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.ValueTuple`3[System.__Canon,System.__Canon,System.__Canon]]:GetStateMachineBox[System.Net.Http.HttpConnectionPool+<ConnectAsync>d__51](byref,byref):System.Runtime.CompilerServices.IAsyncStateMachineBox
             movk    x3, #0xD1FFAB1E LSL #16
             movk    x3, #0xD1FFAB1E LSL #32
             ldr     x3, [x3]
             blr     x3
             mov     x2, x0
             add     x1, fp, #208	// [V14 loc13]
-            add     x0, x19, #0xD1FFAB1E
+            movz    x0, #0xD1FFAB1E
+            movk    x0, #0xD1FFAB1E LSL #16
+            movk    x0, #0xD1FFAB1E LSL #32
             movz    x3, #0xD1FFAB1E      // code for System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.ValueTuple`3[System.__Canon,System.__Canon,System.__Canon]]:AwaitUnsafeOnCompleted[System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1+ConfiguredValueTaskAwaiter[System.__Canon]](byref,System.Runtime.CompilerServices.IAsyncStateMachineBox)
             movk    x3, #0xD1FFAB1E LSL #16
             movk    x3, #0xD1FFAB1E LSL #32
             ldr     x3, [x3]
             blr     x3
             b       G_M36868_IG104
-						;; size=112 bbWeight=1 PerfScore 25.00
+						;; size=120 bbWeight=1 PerfScore 26.00
 G_M36868_IG20:
             add     x14, x1, #96
 						;; size=4 bbWeight=1 PerfScore 0.50
 G_M36868_IG21:
             ldp     x0, x2, [x14]
             stp     x0, x2, [fp, #0xD0]
             ldr     x0, [x14, #0x10]
             str     x0, [fp, #0xE0]
 						;; size=16 bbWeight=1 PerfScore 9.00
 G_M36868_IG22:
             stp     xzr, xzr, [x14]
             str     xzr, [x14, #0x10]
             movn    w0, #0
             str     w0, [x1, #0x18]
             mov     x21, x1
 						;; size=20 bbWeight=1 PerfScore 4.00
 G_M36868_IG23:
-            ldr     x19, [fp, #0xD0]	// [V14 loc13]
-            cbnz    x19, G_M36868_IG24
+            ldr     x24, [fp, #0xD0]	// [V14 loc13]
+            cbnz    x24, G_M36868_IG24
             ldr     x19, [fp, #0xD8]	// [V14 loc13+0x08]
             b       G_M36868_IG27
 						;; size=16 bbWeight=1 PerfScore 6.00
 G_M36868_IG24:
-            mov     x1, x19
+            mov     x1, x24
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             movz    x2, #0xD1FFAB1E      // code for CORINFO_HELP_ISINSTANCEOFCLASS
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            mov     x24, x0
-            cbz     x24, G_M36868_IG26
-            add     x0, x24, #52
+            mov     x19, x0
+            cbz     x19, G_M36868_IG26
+            add     x0, x19, #52
             ldapr   w0, [x0]
             mov     w1, #0xD1FFAB1E
             and     w0, w0, w1
             mov     w1, #0xD1FFAB1E
             cmp     w0, w1
             beq     G_M36868_IG25
-            mov     x0, x24
+            mov     x0, x19
             mov     w1, wzr
             movz    x2, #0xD1FFAB1E      // code for System.Runtime.CompilerServices.TaskAwaiter:HandleNonSuccessAndDebuggerNotification(System.Threading.Tasks.Task,int)
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
 						;; size=100 bbWeight=1 PerfScore 22.00
 G_M36868_IG25:
-            ldr     x19, [x24, #0x38]
+            ldr     x19, [x19, #0x38]
             b       G_M36868_IG27
 						;; size=8 bbWeight=1 PerfScore 4.00
 G_M36868_IG26:
-            mov     x0, x19
+            mov     x0, x24
             ldrsh   w1, [fp, #0xE0]	// [V14 loc13+0x10]
             movz    x11, #0xD1FFAB1E      // code for System.Threading.Tasks.Sources.IValueTaskSource`1[System.__Canon]:GetResult(short):System.__Canon:this
             movk    x11, #0xD1FFAB1E LSL #16
             movk    x11, #0xD1FFAB1E LSL #32
             ldr     x2, [x11]
             blr     x2
             mov     x19, x0
 						;; size=32 bbWeight=1 PerfScore 8.50
 G_M36868_IG27:
             b       G_M36868_IG73
 						;; size=4 bbWeight=1 PerfScore 1.00
 G_M36868_IG28:
             ldr     x0, [x20, #0x10]
             movz    x2, #0xD1FFAB1E      // code for System.Uri:get_IdnHost():System.String:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             ldr     wzr, [x0]
             blr     x2
             mov     x19, x0
             ldr     x0, [x20, #0x10]
             movz    x1, #0xD1FFAB1E      // code for System.Uri:get_Port():int:this
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             ldr     wzr, [x0]
             blr     x1
             sxtw    w2, w0
             mov     x1, x19
             ldr     x22, [fp, #0x10]	// [V00 this]
             ldrb    w4, [x22, #0x1C]
             ldr     x3, [x22, #0x08]
             ldr     x5, [x22, #0x40]
             add     x8, fp, #232	// [V11 loc10]
             mov     x0, x20
             movz    x6, #0xD1FFAB1E      // code for System.Net.Http.HttpConnectionPool:ConnectToTcpHostAsync(System.String,int,System.Net.Http.HttpRequestMessage,ubyte,System.Threading.CancellationToken):System.Threading.Tasks.ValueTask`1[System.IO.Stream]:this
             movk    x6, #0xD1FFAB1E LSL #16
             movk    x6, #0xD1FFAB1E LSL #32
             ldr     x6, [x6]
             blr     x6
             ldp     x1, x0, [fp, #0xE8]	// [V235 tmp205], [V236 tmp206]
             ldrsh   x2, [fp, #0xF8]	// [V237 tmp207]
             stp     x1, x0, [fp, #0xA0]	// [V18 loc17], [V18 loc17+0x08]
             strh    w2, [fp, #0xB0]	// [V18 loc17+0x10]
             strb    wzr, [fp, #0xB2]	// [V18 loc17+0x12]
             ldr     x19, [fp, #0xA0]	// [V18 loc17]
             cbz     x19, G_M36868_IG34
             mov     x1, x19
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             movz    x2, #0xD1FFAB1E      // code for CORINFO_HELP_ISINSTANCEOFCLASS
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             cbz     x0, G_M36868_IG29
             add     x0, x0, #52
             ldapr   w0, [x0]
             mov     w1, #0xD1FFAB1E
             tst     w0, w1
             bne     G_M36868_IG34
             b       G_M36868_IG30
 						;; size=204 bbWeight=1 PerfScore 68.00
 G_M36868_IG29:
             mov     x0, x19
             ldrsh   w1, [fp, #0xB0]	// [V18 loc17+0x10]
             movz    x11, #0xD1FFAB1E      // code for System.Threading.Tasks.Sources.IValueTaskSource`1[System.__Canon]:GetStatus(short):int:this
             movk    x11, #0xD1FFAB1E LSL #16
             movk    x11, #0xD1FFAB1E LSL #32
             ldr     x2, [x11]
             blr     x2
             cbnz    w0, G_M36868_IG34
 						;; size=32 bbWeight=1 PerfScore 9.00
 G_M36868_IG30:
             mov     w14, #2
             ldr     x22, [fp, #0x10]	// [V00 this]
             str     w14, [x22, #0x18]
             add     x14, x22, #72
             add     x13, fp, #160	// [V18 loc17]
             bl      CORINFO_HELP_ASSIGN_BYREF
             bl      CORINFO_HELP_ASSIGN_BYREF
             ldr     x12, [x13], #0x08
             str     x12, [x14], #0x08
             add     x2, x22, #32
             mov     x1, x22
             movz    x19, #0xD1FFAB1E
             movk    x19, #0xD1FFAB1E LSL #16
             movk    x19, #0xD1FFAB1E LSL #32
             mov     x0, x19
             movz    x3, #0xD1FFAB1E      // code for System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.ValueTuple`3[System.__Canon,System.__Canon,System.__Canon]]:GetStateMachineBox[System.Net.Http.HttpConnectionPool+<ConnectAsync>d__51](byref,byref):System.Runtime.CompilerServices.IAsyncStateMachineBox
             movk    x3, #0xD1FFAB1E LSL #16
             movk    x3, #0xD1FFAB1E LSL #32
             ldr     x3, [x3]
             blr     x3
             mov     x2, x0
             add     x1, fp, #160	// [V18 loc17]
             add     x0, x19, #248
             movz    x3, #0xD1FFAB1E      // code for System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.ValueTuple`3[System.__Canon,System.__Canon,System.__Canon]]:AwaitUnsafeOnCompleted[System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1+ConfiguredValueTaskAwaiter[System.__Canon]](byref,System.Runtime.CompilerServices.IAsyncStateMachineBox)
             movk    x3, #0xD1FFAB1E LSL #16
             movk    x3, #0xD1FFAB1E LSL #32
             ldr     x3, [x3]
             blr     x3
             b       G_M36868_IG104
 						;; size=116 bbWeight=1 PerfScore 27.00
 G_M36868_IG31:
             add     x14, x1, #72
 						;; size=4 bbWeight=1 PerfScore 0.50
 G_M36868_IG32:
             ldp     x0, x2, [x14]
             stp     x0, x2, [fp, #0xA0]
             ldr     x0, [x14, #0x10]
             str     x0, [fp, #0xB0]
 						;; size=16 bbWeight=1 PerfScore 9.00
 G_M36868_IG33:
             stp     xzr, xzr, [x14]
             str     xzr, [x14, #0x10]
             movn    w0, #0
             str     w0, [x1, #0x18]
 						;; size=16 bbWeight=1 PerfScore 3.50
 G_M36868_IG34:
             ldr     x19, [fp, #0xA0]	// [V18 loc17]
             cbnz    x19, G_M36868_IG35
             ldr     x21, [fp, #0xA8]	// [V18 loc17+0x08]
             b       G_M36868_IG38
 						;; size=16 bbWeight=1 PerfScore 6.00
 G_M36868_IG35:
             mov     x1, x19
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             movz    x2, #0xD1FFAB1E      // code for CORINFO_HELP_ISINSTANCEOFCLASS
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             mov     x21, x0
             cbz     x21, G_M36868_IG37
             add     x0, x21, #52
             ldapr   w0, [x0]
             mov     w1, #0xD1FFAB1E
             and     w0, w0, w1
             mov     w1, #0xD1FFAB1E
             cmp     w0, w1
             beq     G_M36868_IG36
             mov     x0, x21
             mov     w1, wzr
             movz    x2, #0xD1FFAB1E      // code for System.Runtime.CompilerServices.TaskAwaiter:HandleNonSuccessAndDebuggerNotification(System.Threading.Tasks.Task,int)
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
 						;; size=100 bbWeight=1 PerfScore 22.00
 G_M36868_IG36:
             ldr     x21, [x21, #0x38]
             b       G_M36868_IG38
 						;; size=8 bbWeight=1 PerfScore 4.00
 G_M36868_IG37:
             mov     x0, x19
             ldrsh   w1, [fp, #0xB0]	// [V18 loc17+0x10]
             movz    x11, #0xD1FFAB1E      // code for System.Threading.Tasks.Sources.IValueTaskSource`1[System.__Canon]:GetResult(short):System.__Canon:this
             movk    x11, #0xD1FFAB1E LSL #16
             movk    x11, #0xD1FFAB1E LSL #32
             ldr     x2, [x11]
             blr     x2
             mov     x21, x0
 						;; size=32 bbWeight=1 PerfScore 8.50
 G_M36868_IG38:
             mov     x19, x21
             mov     x0, x19
             movz    x2, #0xD1FFAB1E      // code for System.Net.Http.HttpConnectionPool:<ConnectAsync>g__GetRemoteEndPoint|51_0(System.IO.Stream):System.Net.IPEndPoint
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             ldr     x22, [fp, #0x10]	// [V00 this]
             add     x14, x22, #16
             mov     x15, x0
             bl      CORINFO_HELP_CHECKED_ASSIGN_REF
             ldr     x0, [x20, #0x48]
             cbz     x0, G_M36868_IG73
             ldr     x1, [fp, #0x10]	// [V00 this]
             ldrb    w2, [x1, #0x1C]
             ldr     x1, [x1, #0x08]
             ldr     x22, [fp, #0x10]	// [V00 this]
             ldr     x4, [x22, #0x40]
             add     x8, fp, #184	// [V15 loc14]
             mov     x3, x21
             movz    x5, #0xD1FFAB1E      // code for System.Net.Http.ConnectHelper:EstablishSslConnectionAsync(System.Net.Security.SslClientAuthenticationOptions,System.Net.Http.HttpRequestMessage,ubyte,System.IO.Stream,System.Threading.CancellationToken):System.Threading.Tasks.ValueTask`1[System.Net.Security.SslStream]
             movk    x5, #0xD1FFAB1E LSL #16
             movk    x5, #0xD1FFAB1E LSL #32
             ldr     x5, [x5]
             blr     x5
             ldp     x1, x0, [fp, #0xB8]	// [V239 tmp209], [V240 tmp210]
             ldrsh   x2, [fp, #0xC8]	// [V241 tmp211]
             stp     x1, x0, [fp, #0x88]	// [V20 loc19], [V20 loc19+0x08]
             strh    w2, [fp, #0x98]	// [V20 loc19+0x10]
             strb    wzr, [fp, #0x9A]	// [V20 loc19+0x12]
             ldr     x19, [fp, #0x88]	// [V20 loc19]
             cbz     x19, G_M36868_IG44
             mov     x1, x19
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             movz    x2, #0xD1FFAB1E      // code for CORINFO_HELP_ISINSTANCEOFCLASS
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             cbz     x0, G_M36868_IG39
             add     x0, x0, #52
             ldapr   w0, [x0]
             mov     w1, #0xD1FFAB1E
             tst     w0, w1
             bne     G_M36868_IG44
             b       G_M36868_IG40
 						;; size=192 bbWeight=1 PerfScore 60.00
 G_M36868_IG39:
             mov     x0, x19
             ldrsh   w1, [fp, #0x98]	// [V20 loc19+0x10]
             movz    x11, #0xD1FFAB1E      // code for System.Threading.Tasks.Sources.IValueTaskSource`1[System.__Canon]:GetStatus(short):int:this
             movk    x11, #0xD1FFAB1E LSL #16
             movk    x11, #0xD1FFAB1E LSL #32
             ldr     x2, [x11]
             blr     x2
             cbnz    w0, G_M36868_IG44
 						;; size=32 bbWeight=1 PerfScore 9.00
 G_M36868_IG40:
             mov     w14, #3
             str     w14, [x22, #0x18]
             add     x14, x22, #96
             add     x13, fp, #136	// [V20 loc19]
             bl      CORINFO_HELP_ASSIGN_BYREF
             bl      CORINFO_HELP_ASSIGN_BYREF
             ldr     x12, [x13], #0x08
             str     x12, [x14], #0x08
             add     x2, x22, #32
             mov     x1, x22
             movz    x19, #0xD1FFAB1E
             movk    x19, #0xD1FFAB1E LSL #16
             movk    x19, #0xD1FFAB1E LSL #32
             mov     x0, x19
             movz    x3, #0xD1FFAB1E      // code for System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.ValueTuple`3[System.__Canon,System.__Canon,System.__Canon]]:GetStateMachineBox[System.Net.Http.HttpConnectionPool+<ConnectAsync>d__51](byref,byref):System.Runtime.CompilerServices.IAsyncStateMachineBox
             movk    x3, #0xD1FFAB1E LSL #16
             movk    x3, #0xD1FFAB1E LSL #32
             ldr     x3, [x3]
             blr     x3
             mov     x2, x0
             add     x1, fp, #136	// [V20 loc19]
-            add     x0, x19, #0xD1FFAB1E
+            movz    x0, #0xD1FFAB1E
+            movk    x0, #0xD1FFAB1E LSL #16
+            movk    x0, #0xD1FFAB1E LSL #32
             movz    x3, #0xD1FFAB1E      // code for System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.ValueTuple`3[System.__Canon,System.__Canon,System.__Canon]]:AwaitUnsafeOnCompleted[System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1+ConfiguredValueTaskAwaiter[System.__Canon]](byref,System.Runtime.CompilerServices.IAsyncStateMachineBox)
             movk    x3, #0xD1FFAB1E LSL #16
             movk    x3, #0xD1FFAB1E LSL #32
             ldr     x3, [x3]
             blr     x3
             b       G_M36868_IG104
-						;; size=112 bbWeight=1 PerfScore 25.00
+						;; size=120 bbWeight=1 PerfScore 26.00
 G_M36868_IG41:
             add     x14, x1, #96
 						;; size=4 bbWeight=1 PerfScore 0.50
 G_M36868_IG42:
             ldp     x0, x2, [x14]
             stp     x0, x2, [fp, #0x88]
             ldr     x0, [x14, #0x10]
             str     x0, [fp, #0x98]
 						;; size=16 bbWeight=1 PerfScore 9.00
 G_M36868_IG43:
             stp     xzr, xzr, [x14]
             str     xzr, [x14, #0x10]
             movn    w0, #0
             str     w0, [x1, #0x18]
             mov     x22, x1
 						;; size=20 bbWeight=1 PerfScore 4.00
 G_M36868_IG44:
             ldr     x19, [fp, #0x88]	// [V20 loc19]
             cbnz    x19, G_M36868_IG45
             ldr     x19, [fp, #0x90]	// [V20 loc19+0x08]
             b       G_M36868_IG48
 						;; size=16 bbWeight=1 PerfScore 6.00
 G_M36868_IG45:
             mov     x1, x19
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             movz    x2, #0xD1FFAB1E      // code for CORINFO_HELP_ISINSTANCEOFCLASS
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             mov     x21, x0
             cbz     x21, G_M36868_IG47
             add     x0, x21, #52
             ldapr   w0, [x0]
             mov     w1, #0xD1FFAB1E
             and     w0, w0, w1
             mov     w1, #0xD1FFAB1E
             cmp     w0, w1
             beq     G_M36868_IG46
             mov     x0, x21
             mov     w1, wzr
             movz    x2, #0xD1FFAB1E      // code for System.Runtime.CompilerServices.TaskAwaiter:HandleNonSuccessAndDebuggerNotification(System.Threading.Tasks.Task,int)
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
 						;; size=100 bbWeight=1 PerfScore 22.00
 G_M36868_IG46:
             ldr     x19, [x21, #0x38]
             b       G_M36868_IG48
 						;; size=8 bbWeight=1 PerfScore 4.00
 G_M36868_IG47:
             mov     x0, x19
             ldrsh   w1, [fp, #0x98]	// [V20 loc19+0x10]
             movz    x11, #0xD1FFAB1E      // code for System.Threading.Tasks.Sources.IValueTaskSource`1[System.__Canon]:GetResult(short):System.__Canon:this
             movk    x11, #0xD1FFAB1E LSL #16
             movk    x11, #0xD1FFAB1E LSL #32
             ldr     x2, [x11]
             blr     x2
             mov     x19, x0
 						;; size=32 bbWeight=1 PerfScore 8.50
 G_M36868_IG48:
             b       G_M36868_IG73
 						;; size=4 bbWeight=1 PerfScore 1.00
 G_M36868_IG49:
             ldr     x1, [fp, #0x10]	// [V00 this]
             ldrb    w1, [x1, #0x1C]
             ldr     x22, [fp, #0x10]	// [V00 this]
             ldr     x2, [x22, #0x40]
             add     x8, fp, #232	// [V11 loc10]
             mov     x0, x20
             movz    x3, #0xD1FFAB1E      // code for System.Net.Http.HttpConnectionPool:EstablishProxyTunnelAsync(ubyte,System.Threading.CancellationToken):System.Threading.Tasks.ValueTask`1[System.IO.Stream]:this
             movk    x3, #0xD1FFAB1E LSL #16
             movk    x3, #0xD1FFAB1E LSL #32
             ldr     x3, [x3]
             blr     x3
             ldp     x1, x0, [fp, #0xE8]	// [V235 tmp205], [V236 tmp206]
             ldrsh   x2, [fp, #0xF8]	// [V237 tmp207]
             stp     x1, x0, [fp, #0x70]	// [V22 loc21], [V22 loc21+0x08]
             strh    w2, [fp, #0x80]	// [V22 loc21+0x10]
             strb    wzr, [fp, #0x82]	// [V22 loc21+0x12]
             ldr     x19, [fp, #0x70]	// [V22 loc21]
             cbz     x19, G_M36868_IG55
             mov     x1, x19
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             movz    x2, #0xD1FFAB1E      // code for CORINFO_HELP_ISINSTANCEOFCLASS
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             cbz     x0, G_M36868_IG50
             add     x0, x0, #52
             ldapr   w0, [x0]
             mov     w1, #0xD1FFAB1E
             tst     w0, w1
             bne     G_M36868_IG55
             b       G_M36868_IG51
 						;; size=136 bbWeight=1 PerfScore 42.50
 G_M36868_IG50:
             mov     x0, x19
             ldrsh   w1, [fp, #0x80]	// [V22 loc21+0x10]
             movz    x11, #0xD1FFAB1E      // code for System.Threading.Tasks.Sources.IValueTaskSource`1[System.__Canon]:GetStatus(short):int:this
             movk    x11, #0xD1FFAB1E LSL #16
             movk    x11, #0xD1FFAB1E LSL #32
             ldr     x2, [x11]
             blr     x2
             cbnz    w0, G_M36868_IG55
 						;; size=32 bbWeight=1 PerfScore 9.00
 G_M36868_IG51:
             mov     w14, #4
             ldr     x22, [fp, #0x10]	// [V00 this]
             str     w14, [x22, #0x18]
             add     x14, x22, #72
             add     x13, fp, #112	// [V22 loc21]
             bl      CORINFO_HELP_ASSIGN_BYREF
             bl      CORINFO_HELP_ASSIGN_BYREF
             ldr     x12, [x13], #0x08
             str     x12, [x14], #0x08
             add     x2, x22, #32
             mov     x1, x22
             movz    x19, #0xD1FFAB1E
             movk    x19, #0xD1FFAB1E LSL #16
             movk    x19, #0xD1FFAB1E LSL #32
             mov     x0, x19
             movz    x3, #0xD1FFAB1E      // code for System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.ValueTuple`3[System.__Canon,System.__Canon,System.__Canon]]:GetStateMachineBox[System.Net.Http.HttpConnectionPool+<ConnectAsync>d__51](byref,byref):System.Runtime.CompilerServices.IAsyncStateMachineBox
             movk    x3, #0xD1FFAB1E LSL #16
             movk    x3, #0xD1FFAB1E LSL #32
             ldr     x3, [x3]
             blr     x3
             mov     x2, x0
             add     x1, fp, #112	// [V22 loc21]
             add     x0, x19, #248
             movz    x3, #0xD1FFAB1E      // code for System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.ValueTuple`3[System.__Canon,System.__Canon,System.__Canon]]:AwaitUnsafeOnCompleted[System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1+ConfiguredValueTaskAwaiter[System.__Canon]](byref,System.Runtime.CompilerServices.IAsyncStateMachineBox)
             movk    x3, #0xD1FFAB1E LSL #16
             movk    x3, #0xD1FFAB1E LSL #32
             ldr     x3, [x3]
             blr     x3
             b       G_M36868_IG104
 						;; size=116 bbWeight=1 PerfScore 27.00
 G_M36868_IG52:
             add     x14, x1, #72
 						;; size=4 bbWeight=1 PerfScore 0.50
 G_M36868_IG53:
             ldp     x0, x2, [x14]
             stp     x0, x2, [fp, #0x70]
             ldr     x0, [x14, #0x10]
             str     x0, [fp, #0x80]
 						;; size=16 bbWeight=1 PerfScore 9.00
 G_M36868_IG54:
             stp     xzr, xzr, [x14]
             str     xzr, [x14, #0x10]
             movn    w0, #0
             str     w0, [x1, #0x18]
 						;; size=16 bbWeight=1 PerfScore 3.50
 G_M36868_IG55:
             ldr     x19, [fp, #0x70]	// [V22 loc21]
             cbnz    x19, G_M36868_IG56
             ldr     x19, [fp, #0x78]	// [V22 loc21+0x08]
             b       G_M36868_IG59
 						;; size=16 bbWeight=1 PerfScore 6.00
 G_M36868_IG56:
             mov     x1, x19
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             movz    x2, #0xD1FFAB1E      // code for CORINFO_HELP_ISINSTANCEOFCLASS
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             mov     x21, x0
             cbz     x21, G_M36868_IG58
             add     x0, x21, #52
             ldapr   w0, [x0]
             mov     w1, #0xD1FFAB1E
             and     w0, w0, w1
             mov     w1, #0xD1FFAB1E
             cmp     w0, w1
             beq     G_M36868_IG57
             mov     x0, x21
             mov     w1, wzr
             movz    x2, #0xD1FFAB1E      // code for System.Runtime.CompilerServices.TaskAwaiter:HandleNonSuccessAndDebuggerNotification(System.Threading.Tasks.Task,int)
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
 						;; size=100 bbWeight=1 PerfScore 22.00
 G_M36868_IG57:
             ldr     x19, [x21, #0x38]
             b       G_M36868_IG59
 						;; size=8 bbWeight=1 PerfScore 4.00
 G_M36868_IG58:
             mov     x0, x19
             ldrsh   w1, [fp, #0x80]	// [V22 loc21+0x10]
             movz    x11, #0xD1FFAB1E      // code for System.Threading.Tasks.Sources.IValueTaskSource`1[System.__Canon]:GetResult(short):System.__Canon:this
             movk    x11, #0xD1FFAB1E LSL #16
             movk    x11, #0xD1FFAB1E LSL #32
             ldr     x2, [x11]
             blr     x2
             mov     x19, x0
 						;; size=32 bbWeight=1 PerfScore 8.50
 G_M36868_IG59:
             mov     x1, x19
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             movz    x2, #0xD1FFAB1E      // code for CORINFO_HELP_ISINSTANCEOFCLASS
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             cbz     x0, G_M36868_IG73
             ldr     x0, [x0, #0x10]
             cbnz    x0, G_M36868_IG60
             mov     x0, xzr
             b       G_M36868_IG61
 						;; size=56 bbWeight=1 PerfScore 14.00
 G_M36868_IG60:
             ldr     x0, [x0, #0x48]
 						;; size=4 bbWeight=1 PerfScore 3.00
 G_M36868_IG61:
             cbz     x0, G_M36868_IG73
             movz    x2, #0xD1FFAB1E      // code for System.Net.Http.HttpConnectionPool:<ConnectAsync>g__GetRemoteEndPoint|51_0(System.IO.Stream):System.Net.IPEndPoint
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             ldr     x22, [fp, #0x10]	// [V00 this]
             add     x14, x22, #16
             mov     x15, x0
             bl      CORINFO_HELP_CHECKED_ASSIGN_REF
             b       G_M36868_IG73
 						;; size=44 bbWeight=1 PerfScore 11.50
 G_M36868_IG62:
             ldr     x1, [fp, #0x10]	// [V00 this]
             ldrb    w2, [x1, #0x1C]
             ldr     x1, [x1, #0x08]
             ldr     x22, [fp, #0x10]	// [V00 this]
             ldr     x3, [x22, #0x40]
             add     x8, fp, #232	// [V11 loc10]
             mov     x0, x20
             movz    x4, #0xD1FFAB1E      // code for System.Net.Http.HttpConnectionPool:EstablishSocksTunnel(System.Net.Http.HttpRequestMessage,ubyte,System.Threading.CancellationToken):System.Threading.Tasks.ValueTask`1[System.IO.Stream]:this
             movk    x4, #0xD1FFAB1E LSL #16
             movk    x4, #0xD1FFAB1E LSL #32
             ldr     x4, [x4]
             blr     x4
             ldp     x1, x0, [fp, #0xE8]	// [V235 tmp205], [V236 tmp206]
             ldrsh   x2, [fp, #0xF8]	// [V237 tmp207]
             stp     x1, x0, [fp, #0x58]	// [V24 loc23], [V24 loc23+0x08]
             strh    w2, [fp, #0x68]	// [V24 loc23+0x10]
             strb    wzr, [fp, #0x6A]	// [V24 loc23+0x12]
             ldr     x19, [fp, #0x58]	// [V24 loc23]
             cbz     x19, G_M36868_IG68
             mov     x1, x19
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             movz    x2, #0xD1FFAB1E      // code for CORINFO_HELP_ISINSTANCEOFCLASS
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             cbz     x0, G_M36868_IG63
             add     x0, x0, #52
             ldapr   w0, [x0]
             mov     w1, #0xD1FFAB1E
             tst     w0, w1
             bne     G_M36868_IG68
             b       G_M36868_IG64
 						;; size=140 bbWeight=1 PerfScore 45.50
 G_M36868_IG63:
             mov     x0, x19
             ldrsh   w1, [fp, #0x68]	// [V24 loc23+0x10]
             movz    x11, #0xD1FFAB1E      // code for System.Threading.Tasks.Sources.IValueTaskSource`1[System.__Canon]:GetStatus(short):int:this
             movk    x11, #0xD1FFAB1E LSL #16
             movk    x11, #0xD1FFAB1E LSL #32
             ldr     x2, [x11]
             blr     x2
             cbnz    w0, G_M36868_IG68
 						;; size=32 bbWeight=1 PerfScore 9.00
 G_M36868_IG64:
             mov     w14, #5
             ldr     x22, [fp, #0x10]	// [V00 this]
             str     w14, [x22, #0x18]
             add     x14, x22, #72
             add     x13, fp, #88	// [V24 loc23]
             bl      CORINFO_HELP_ASSIGN_BYREF
             bl      CORINFO_HELP_ASSIGN_BYREF
             ldr     x12, [x13], #0x08
             str     x12, [x14], #0x08
             add     x2, x22, #32
             mov     x1, x22
             movz    x19, #0xD1FFAB1E
             movk    x19, #0xD1FFAB1E LSL #16
             movk    x19, #0xD1FFAB1E LSL #32
             mov     x0, x19
             movz    x3, #0xD1FFAB1E      // code for System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.ValueTuple`3[System.__Canon,System.__Canon,System.__Canon]]:GetStateMachineBox[System.Net.Http.HttpConnectionPool+<ConnectAsync>d__51](byref,byref):System.Runtime.CompilerServices.IAsyncStateMachineBox
             movk    x3, #0xD1FFAB1E LSL #16
             movk    x3, #0xD1FFAB1E LSL #32
             ldr     x3, [x3]
             blr     x3
             mov     x2, x0
             add     x1, fp, #88	// [V24 loc23]
             add     x0, x19, #248
             movz    x3, #0xD1FFAB1E      // code for System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.ValueTuple`3[System.__Canon,System.__Canon,System.__Canon]]:AwaitUnsafeOnCompleted[System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1+ConfiguredValueTaskAwaiter[System.__Canon]](byref,System.Runtime.CompilerServices.IAsyncStateMachineBox)
             movk    x3, #0xD1FFAB1E LSL #16
             movk    x3, #0xD1FFAB1E LSL #32
             ldr     x3, [x3]
             blr     x3
             b       G_M36868_IG104
 						;; size=116 bbWeight=1 PerfScore 27.00
 G_M36868_IG65:
             add     x14, x1, #72
 						;; size=4 bbWeight=1 PerfScore 0.50
 G_M36868_IG66:
             ldp     x0, x2, [x14]
             stp     x0, x2, [fp, #0x58]
             ldr     x0, [x14, #0x10]
             str     x0, [fp, #0x68]
 						;; size=16 bbWeight=1 PerfScore 9.00
 G_M36868_IG67:
             stp     xzr, xzr, [x14]
             str     xzr, [x14, #0x10]
             movn    w0, #0
             str     w0, [x1, #0x18]
 						;; size=16 bbWeight=1 PerfScore 3.50
 G_M36868_IG68:
             ldr     x19, [fp, #0x58]	// [V24 loc23]
             cbnz    x19, G_M36868_IG69
             ldr     x19, [fp, #0x60]	// [V24 loc23+0x08]
             b       G_M36868_IG72
 						;; size=16 bbWeight=1 PerfScore 6.00
 G_M36868_IG69:
             mov     x1, x19
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             movz    x2, #0xD1FFAB1E      // code for CORINFO_HELP_ISINSTANCEOFCLASS
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             mov     x21, x0
             cbz     x21, G_M36868_IG71
             add     x0, x21, #52
             ldapr   w0, [x0]
             mov     w1, #0xD1FFAB1E
             and     w0, w0, w1
             mov     w1, #0xD1FFAB1E
             cmp     w0, w1
             beq     G_M36868_IG70
             mov     x0, x21
             mov     w1, wzr
             movz    x2, #0xD1FFAB1E      // code for System.Runtime.CompilerServices.TaskAwaiter:HandleNonSuccessAndDebuggerNotification(System.Threading.Tasks.Task,int)
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
 						;; size=100 bbWeight=1 PerfScore 22.00
 G_M36868_IG70:
             ldr     x19, [x21, #0x38]
             b       G_M36868_IG72
 						;; size=8 bbWeight=1 PerfScore 4.00
 G_M36868_IG71:
             mov     x0, x19
             ldrsh   w1, [fp, #0x68]	// [V24 loc23+0x10]
             movz    x11, #0xD1FFAB1E      // code for System.Threading.Tasks.Sources.IValueTaskSource`1[System.__Canon]:GetResult(short):System.__Canon:this
             movk    x11, #0xD1FFAB1E LSL #16
             movk    x11, #0xD1FFAB1E LSL #32
             ldr     x2, [x11]
             blr     x2
             mov     x19, x0
 						;; size=32 bbWeight=1 PerfScore 8.50
 G_M36868_IG72:
             mov     x0, x19
             movz    x2, #0xD1FFAB1E      // code for System.Net.Http.HttpConnectionPool:<ConnectAsync>g__GetRemoteEndPoint|51_0(System.IO.Stream):System.Net.IPEndPoint
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             ldr     x22, [fp, #0x10]	// [V00 this]
             add     x14, x22, #16
             mov     x15, x0
             bl      CORINFO_HELP_CHECKED_ASSIGN_REF
 						;; size=40 bbWeight=1 PerfScore 10.00
 G_M36868_IG73:
             mov     x21, xzr
             mov     x0, x20
             movz    x2, #0xD1FFAB1E      // code for System.Net.Http.HttpConnectionPool:get_IsSecure():ubyte:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             cbz     w0, G_M36868_IG91
             mov     x1, x19
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             movz    x2, #0xD1FFAB1E      // code for CORINFO_HELP_ISINSTANCEOFCLASS
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             mov     x22, x0
             cbnz    x22, G_M36868_IG84
             ldr     x1, [fp, #0x10]	// [V00 this]
             ldr     x1, [x1, #0x08]
             mov     x0, x20
             movz    x2, #0xD1FFAB1E      // code for System.Net.Http.HttpConnectionPool:GetSslOptionsForRequest(System.Net.Http.HttpRequestMessage):System.Net.Security.SslClientAuthenticationOptions:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             ldr     x1, [fp, #0x10]	// [V00 this]
             ldrb    w2, [x1, #0x1C]
             ldr     x1, [x1, #0x08]
             ldr     x21, [fp, #0x10]	// [V00 this]
             ldr     x4, [x21, #0x40]
             add     x8, fp, #184	// [V15 loc14]
             mov     x3, x19
             movz    x5, #0xD1FFAB1E      // code for System.Net.Http.ConnectHelper:EstablishSslConnectionAsync(System.Net.Security.SslClientAuthenticationOptions,System.Net.Http.HttpRequestMessage,ubyte,System.IO.Stream,System.Threading.CancellationToken):System.Threading.Tasks.ValueTask`1[System.Net.Security.SslStream]
             movk    x5, #0xD1FFAB1E LSL #16
             movk    x5, #0xD1FFAB1E LSL #32
             ldr     x5, [x5]
             blr     x5
             ldp     x1, x0, [fp, #0xB8]	// [V239 tmp209], [V240 tmp210]
             ldrsh   x2, [fp, #0xC8]	// [V241 tmp211]
             stp     x1, x0, [fp, #0x40]	// [V27 loc26], [V27 loc26+0x08]
             strh    w2, [fp, #0x50]	// [V27 loc26+0x10]
             strb    wzr, [fp, #0x52]	// [V27 loc26+0x12]
             ldr     x22, [fp, #0x40]	// [V27 loc26]
             cbz     x22, G_M36868_IG79
             mov     x1, x22
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             movz    x2, #0xD1FFAB1E      // code for CORINFO_HELP_ISINSTANCEOFCLASS
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             cbz     x0, G_M36868_IG74
             add     x0, x0, #52
             ldapr   w0, [x0]
             mov     w1, #0xD1FFAB1E
             tst     w0, w1
             bne     G_M36868_IG79
             b       G_M36868_IG75
 						;; size=248 bbWeight=1 PerfScore 73.00
 G_M36868_IG74:
             mov     x0, x22
             ldrsh   w1, [fp, #0x50]	// [V27 loc26+0x10]
             movz    x11, #0xD1FFAB1E      // code for System.Threading.Tasks.Sources.IValueTaskSource`1[System.__Canon]:GetStatus(short):int:this
             movk    x11, #0xD1FFAB1E LSL #16
             movk    x11, #0xD1FFAB1E LSL #32
             ldr     x2, [x11]
             blr     x2
             cbnz    w0, G_M36868_IG79
 						;; size=32 bbWeight=1 PerfScore 9.00
 G_M36868_IG75:
             mov     w14, #6
             str     w14, [x21, #0x18]
             add     x14, x21, #96
             add     x13, fp, #64	// [V27 loc26]
             bl      CORINFO_HELP_ASSIGN_BYREF
             bl      CORINFO_HELP_ASSIGN_BYREF
             ldr     x12, [x13], #0x08
             str     x12, [x14], #0x08
             add     x2, x21, #32
             mov     x1, x21
             movz    x19, #0xD1FFAB1E
             movk    x19, #0xD1FFAB1E LSL #16
             movk    x19, #0xD1FFAB1E LSL #32
             mov     x0, x19
             movz    x3, #0xD1FFAB1E      // code for System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.ValueTuple`3[System.__Canon,System.__Canon,System.__Canon]]:GetStateMachineBox[System.Net.Http.HttpConnectionPool+<ConnectAsync>d__51](byref,byref):System.Runtime.CompilerServices.IAsyncStateMachineBox
             movk    x3, #0xD1FFAB1E LSL #16
             movk    x3, #0xD1FFAB1E LSL #32
             ldr     x3, [x3]
             blr     x3
             mov     x2, x0
             add     x1, fp, #64	// [V27 loc26]
-            add     x0, x19, #0xD1FFAB1E
+            movz    x0, #0xD1FFAB1E
+            movk    x0, #0xD1FFAB1E LSL #16
+            movk    x0, #0xD1FFAB1E LSL #32
             movz    x3, #0xD1FFAB1E      // code for System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[System.ValueTuple`3[System.__Canon,System.__Canon,System.__Canon]]:AwaitUnsafeOnCompleted[System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1+ConfiguredValueTaskAwaiter[System.__Canon]](byref,System.Runtime.CompilerServices.IAsyncStateMachineBox)
             movk    x3, #0xD1FFAB1E LSL #16
             movk    x3, #0xD1FFAB1E LSL #32
             ldr     x3, [x3]
             blr     x3
             b       G_M36868_IG104
-						;; size=112 bbWeight=1 PerfScore 25.00
+						;; size=120 bbWeight=1 PerfScore 26.00
 G_M36868_IG76:
             add     x14, x1, #96
 						;; size=4 bbWeight=1 PerfScore 0.50
 G_M36868_IG77:
             ldp     x2, x4, [x14]
             stp     x2, x4, [fp, #0x40]
             ldr     x2, [x14, #0x10]
             str     x2, [fp, #0x50]
 						;; size=16 bbWeight=1 PerfScore 9.00
 G_M36868_IG78:
             stp     xzr, xzr, [x14]
             str     xzr, [x14, #0x10]
             movn    w2, #0
             str     w2, [x1, #0x18]
             ldr     x21, [fp, #0x10]	// [V00 this]
 						;; size=20 bbWeight=1 PerfScore 5.50
 G_M36868_IG79:
             ldr     x20, [fp, #0x40]	// [V27 loc26]
             cbnz    x20, G_M36868_IG80
             ldr     x22, [fp, #0x48]	// [V27 loc26+0x08]
             b       G_M36868_IG83
 						;; size=16 bbWeight=1 PerfScore 6.00
 G_M36868_IG80:
             mov     x1, x20
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             movz    x2, #0xD1FFAB1E      // code for CORINFO_HELP_ISINSTANCEOFCLASS
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             mov     x22, x0
             cbz     x22, G_M36868_IG82
             add     x0, x22, #52
             ldapr   w0, [x0]
             mov     w1, #0xD1FFAB1E
             and     w0, w0, w1
             mov     w1, #0xD1FFAB1E
             cmp     w0, w1
             beq     G_M36868_IG81
             mov     x0, x22
             mov     w1, wzr
             movz    x2, #0xD1FFAB1E      // code for System.Runtime.CompilerServices.TaskAwaiter:HandleNonSuccessAndDebuggerNotification(System.Threading.Tasks.Task,int)
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
 						;; size=100 bbWeight=1 PerfScore 22.00
 G_M36868_IG81:
             ldr     x22, [x22, #0x38]
             b       G_M36868_IG83
 						;; size=8 bbWeight=1 PerfScore 4.00
 G_M36868_IG82:
             mov     x0, x20
             ldrsh   w1, [fp, #0x50]	// [V27 loc26+0x10]
             movz    x11, #0xD1FFAB1E      // code for System.Threading.Tasks.Sources.IValueTaskSource`1[System.__Canon]:GetResult(short):System.__Canon:this
             movk    x11, #0xD1FFAB1E LSL #16
             movk    x11, #0xD1FFAB1E LSL #32
             ldr     x2, [x11]
             blr     x2
             mov     x22, x0
 						;; size=32 bbWeight=1 PerfScore 8.50
 G_M36868_IG83:
             b       G_M36868_IG90
 						;; size=4 bbWeight=1 PerfScore 1.00
 G_M36868_IG84:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             ldr     x19, [x0]
             ldrb    w0, [x19, #0x9D]
             cbz     w0, G_M36868_IG90
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             ldr     x0, [x0]
             mov     w1, #0xD1FFAB1E
             movz    x2, #0xD1FFAB1E      // code for System.Buffers.SharedArrayPool`1[ushort]:Rent(int):ushort[]:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             cbnz    x0, G_M36868_IG85
             mov     x1, xzr
             mov     w2, wzr
             b       G_M36868_IG86
 						;; size=80 bbWeight=1 PerfScore 22.00
 G_M36868_IG85:
             add     x1, x0, #16
             ldr     w2, [x0, #0x08]
 						;; size=8 bbWeight=1 PerfScore 3.50
 G_M36868_IG86:
             stp     xzr, x0, [fp, #0x18]	// [V28 loc27], [V28 loc27+0x08]
             str     wzr, [fp, #0x28]	// [V28 loc27+0x10]
             strb    wzr, [fp, #0x2C]	// [V28 loc27+0x14]
             str     x1, [fp, #0x30]	// [V28 loc27+0x18]
             str     w2, [fp, #0x38]	// [V28 loc27+0x20]
             ldr     w0, [fp, #0x28]	// [V28 loc27+0x10]
             ldr     w1, [fp, #0x38]	// [V28 loc27+0x20]
             cmp     w0, w1
             bhi     G_M36868_IG92
             ldr     x1, [fp, #0x30]	// [V28 loc27+0x18]
             ubfiz   x2, x0, #1, #32
             add     x1, x1, x2
             ldr     w2, [fp, #0x38]	// [V28 loc27+0x20]
             sub     w0, w2, w0
             cmp     w0, #40
             blo     G_M36868_IG87
             movz    x2, #0xD1FFAB1E
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             mov     x0, x1
             mov     x1, x2
             mov     x2, #80
             movz    x3, #0xD1FFAB1E      // code for System.SpanHelpers:Memmove(byref,byref,ulong)
             movk    x3, #0xD1FFAB1E LSL #16
             movk    x3, #0xD1FFAB1E LSL #32
             ldr     x3, [x3]
             blr     x3
             ldr     w0, [fp, #0x28]	// [V28 loc27+0x10]
             add     w0, w0, #40
             str     w0, [fp, #0x28]	// [V28 loc27+0x10]
             b       G_M36868_IG88
 						;; size=124 bbWeight=1 PerfScore 31.00
 G_M36868_IG87:
             add     x0, fp, #24	// [V28 loc27]
             movz    x1, #0xD1FFAB1E
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             movz    x2, #0xD1FFAB1E      // code for System.Runtime.CompilerServices.DefaultInterpolatedStringHandler:GrowThenCopyString(System.String):this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
 						;; size=36 bbWeight=1 PerfScore 7.50
 G_M36868_IG88:
             mov     x0, x22
             movz    x1, #0xD1FFAB1E      // code for System.Net.Security.SslStream:get_NegotiatedApplicationProtocol():System.Net.Security.SslApplicationProtocol:this
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
             mov     x1, x0
             add     x0, fp, #24	// [V28 loc27]
             movz    x2, #0xD1FFAB1E      // code for System.Runtime.CompilerServices.DefaultInterpolatedStringHandler:AppendFormatted[System.Net.Security.SslApplicationProtocol](System.Net.Security.SslApplicationProtocol):this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             ldr     w0, [fp, #0x28]	// [V28 loc27+0x10]
             ldr     w1, [fp, #0x38]	// [V28 loc27+0x20]
             cmp     w0, w1
             bhi     G_M36868_IG92
             ldr     x1, [fp, #0x30]	// [V28 loc27+0x18]
             ubfiz   x2, x0, #1, #32
             add     x1, x1, x2
             ldr     w2, [fp, #0x38]	// [V28 loc27+0x20]
             sub     w0, w2, w0
             cbz     w0, G_M36868_IG93
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             ldrh    w2, [x0]
             strh    w2, [x1]
             ldr     w0, [fp, #0x28]	// [V28 loc27+0x10]
             add     w0, w0, #1
             str     w0, [fp, #0x28]	// [V28 loc27+0x10]
 						;; size=124 bbWeight=1 PerfScore 34.00
 G_M36868_IG89:
             add     x0, fp, #24	// [V28 loc27]
             movz    x1, #0xD1FFAB1E      // code for System.Runtime.CompilerServices.DefaultInterpolatedStringHandler:ToStringAndClear():System.String:this
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
             mov     x23, x0
             ldrsb   wzr, [x20]
             mov     x0, x20
             bl      System.Runtime.CompilerServices.RuntimeHelpers:GetHashCode(System.Object):int
             sxtw    w2, w0
             mov     x0, x19
             mov     x6, x23
             mov     w1, #8
             mov     w3, wzr
             mov     w4, wzr
             movz    x5, #0xD1FFAB1E
             movk    x5, #0xD1FFAB1E LSL #16
             movk    x5, #0xD1FFAB1E LSL #32
             movz    x7, #0xD1FFAB1E      // code for System.Net.NetEventSource:WriteEvent(int,int,int,int,System.String,System.String):this
             movk    x7, #0xD1FFAB1E LSL #16
             movk    x7, #0xD1FFAB1E LSL #32
             ldr     x7, [x7]
             blr     x7
 						;; size=96 bbWeight=1 PerfScore 21.00
 G_M36868_IG90:
             ldr     x21, [fp, #0x10]	// [V00 this]
             ldrsb   wzr, [x22]
-            movz    x19, #0xD1FFAB1E
-            movk    x19, #0xD1FFAB1E LSL #16
-            movk    x19, #0xD1FFAB1E LSL #32
-            add     x0, x19, #0xD1FFAB1E
+            movz    x0, #0xD1FFAB1E
+            movk    x0, #0xD1FFAB1E LSL #16
+            movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             add     x14, x0, #8
             mov     x15, x22
             bl      CORINFO_HELP_ASSIGN_REF
             mov     x20, x0
             mov     x19, x22
             mov     x21, x20
-						;; size=52 bbWeight=1 PerfScore 11.50
+						;; size=48 bbWeight=1 PerfScore 11.00
 G_M36868_IG91:
             ldr     x20, [fp, #0x10]	// [V00 this]
             ldr     x0, [x20, #0x10]
             mov     x15, x19
             mov     x22, x15
             mov     x23, x21
             mov     x24, x0
             b       G_M36868_IG94
 						;; size=28 bbWeight=1 PerfScore 8.00
 G_M36868_IG92:
             movz    x0, #0xD1FFAB1E      // code for System.ThrowHelper:ThrowArgumentOutOfRangeException()
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             ldr     x0, [x0]
             blr     x0
             brk_unix #0
 						;; size=24 bbWeight=0 PerfScore 0.00
 G_M36868_IG93:
             add     x0, fp, #24	// [V28 loc27]
             movz    x1, #0xD1FFAB1E
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             movz    x2, #0xD1FFAB1E      // code for System.Runtime.CompilerServices.DefaultInterpolatedStringHandler:GrowThenCopyString(System.String):this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             b       G_M36868_IG89
 						;; size=40 bbWeight=1 PerfScore 8.50
 G_M36868_IG94:
             movn    w14, #1
             str     w14, [x20, #0x18]
             str     xzr, [x20, #0x10]
             add     x20, x20, #32
             ldr     x14, [x20]
             cbnz    x14, G_M36868_IG95
             add     x14, x20, #8
             bl      CORINFO_HELP_CHECKED_ASSIGN_REF
             add     x14, x20, #16
             mov     x15, x21
             bl      CORINFO_HELP_CHECKED_ASSIGN_REF
             add     x14, x20, #24
             mov     x15, x0
             bl      CORINFO_HELP_CHECKED_ASSIGN_REF
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             mov     w1, #26
             bl      CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
             movz    x14, #0xD1FFAB1E      // data for System.Runtime.CompilerServices.AsyncValueTaskMethodBuilder`1[System.ValueTuple`3[System.IO.Stream,System.Net.TransportContext,System.Net.IPEndPoint]]:s_syncSuccessSentinel
             movk    x14, #0xD1FFAB1E LSL #16
             movk    x14, #0xD1FFAB1E LSL #32
             ldr     x15, [x14]
             mov     x14, x20
             bl      CORINFO_HELP_CHECKED_ASSIGN_REF
             b       G_M36868_IG104
 						;; size=104 bbWeight=1 PerfScore 22.50
 G_M36868_IG95:
             ldr     x20, [x20]
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             ldr     w0, [x0]
             tbz     w0, #0, G_M36868_IG107
 						;; size=24 bbWeight=1 PerfScore 8.50
 G_M36868_IG96:
             movz    x0, #0xD1FFAB1E      // data for System.Threading.Tasks.TplEventSource:Log
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             ldr     x19, [x0]
             ldrb    w0, [x19, #0x9D]
             cbz     w0, G_M36868_IG97
             mov     x0, x20
             movz    x1, #0xD1FFAB1E      // code for System.Threading.Tasks.Task:get_Id():int:this
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             ldr     wzr, [x0]
             blr     x1
             sxtw    w21, w0
             ldrb    w1, [x19, #0x9D]
             cbz     w1, G_M36868_IG97
             ldr     x3, [x19, #0x80]
             ldr     w2, [x19, #0x98]
             mov     x0, x19
             mov     w4, #4
             mov     x5, #8
             mov     w6, wzr
             movz    x7, #0xD1FFAB1E      // code for System.Diagnostics.Tracing.EventSource:IsEnabledCommon(ubyte,int,long,int,long,ubyte):ubyte:this
             movk    x7, #0xD1FFAB1E LSL #16
             movk    x7, #0xD1FFAB1E LSL #32
             ldr     x7, [x7]
             blr     x7
             cbz     w0, G_M36868_IG97
             mov     x0, x19
             mov     w2, w21
             mov     w1, #15
             mov     w3, #1
             movz    x4, #0xD1FFAB1E      // code for System.Diagnostics.Tracing.EventSource:WriteEvent(int,int,int):this
             movk    x4, #0xD1FFAB1E LSL #16
             movk    x4, #0xD1FFAB1E LSL #32
             ldr     x4, [x4]
             blr     x4
 						;; size=148 bbWeight=1 PerfScore 44.00
 G_M36868_IG97:
             add     x0, x20, #52
             ldapr   w14, [x0]
             mov     w15, #0xD1FFAB1E
             tst     w14, w15
             bne     G_M36868_IG106
             orr     w15, w14, #0xD1FFAB1E
             mov     w12, w14
             casal   w12, w15, [x0]
             cmp     w12, w14
             beq     G_M36868_IG102
             ldapr   w14, [x0]
 						;; size=44 bbWeight=1 PerfScore 14.00
 G_M36868_IG98:
             mov     w15, #0xD1FFAB1E
             tst     w14, w15
             bne     G_M36868_IG99
             orr     w15, w14, #0xD1FFAB1E
             mov     w12, w14
             casal   w12, w15, [x0]
             cmp     w12, w14
             beq     G_M36868_IG100
             sxtw    w14, w12
             b       G_M36868_IG98
 						;; size=40 bbWeight=8 PerfScore 72.00
 G_M36868_IG99:
             mov     w1, wzr
             b       G_M36868_IG101
 						;; size=8 bbWeight=1 PerfScore 1.50
 G_M36868_IG100:
             mov     w1, #1
 						;; size=4 bbWeight=1 PerfScore 0.50
 G_M36868_IG101:
             b       G_M36868_IG105
 						;; size=4 bbWeight=1 PerfScore 1.00
 G_M36868_IG102:
             add     x14, x20, #56
             mov     x15, x22
             bl      CORINFO_HELP_ASSIGN_REF
             add     x14, x20, #64
             mov     x15, x23
             bl      CORINFO_HELP_ASSIGN_REF
             add     x14, x20, #72
             mov     x15, x24
             bl      CORINFO_HELP_ASSIGN_REF
             ldapr   w1, [x0]
             orr     w1, w1, #0xD1FFAB1E
             swpal   w1, w0, [x0]
             ldr     x19, [x20, #0x28]
             cbz     x19, G_M36868_IG103
             mov     x0, x20
             movz    x1, #0xD1FFAB1E      // code for System.Threading.Tasks.Task:NotifyParentIfPotentiallyAttachedTask():this
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
             add     x0, x19, #16
             ldapr   x0, [x0]
             cbz     x0, G_M36868_IG103
             movz    x1, #0xD1FFAB1E      // code for System.Threading.Tasks.Task+ContingentProperties:SetEvent(System.Threading.ManualResetEventSlim)
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
 						;; size=112 bbWeight=1 PerfScore 32.50
 G_M36868_IG103:
             mov     x0, x20
             movz    x1, #0xD1FFAB1E      // code for System.Threading.Tasks.Task:FinishContinuations():this
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
 						;; size=24 bbWeight=1 PerfScore 6.00
 G_M36868_IG104:
             ldp     x23, x24, [sp, #0xD1FFAB1E]
             ldp     x21, x22, [sp, #0xD1FFAB1E]
             ldp     x19, x20, [sp, #0xD1FFAB1E]
             ldp     fp, lr, [sp], #0xD1FFAB1E
             ret     lr
 						;; size=20 bbWeight=1 PerfScore 5.00
 G_M36868_IG105:
             cbnz    w1, G_M36868_IG102
 						;; size=4 bbWeight=1 PerfScore 1.00
 G_M36868_IG106:
             mov     w0, #24
             movz    x1, #0xD1FFAB1E      // code for System.ThrowHelper:ThrowInvalidOperationException(int)
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
             brk_unix #0
 						;; size=28 bbWeight=0 PerfScore 0.00
 G_M36868_IG107:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             mov     w1, #0xD1FFAB1E
             bl      CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
             b       G_M36868_IG96
 						;; size=24 bbWeight=0 PerfScore 0.00
 G_M36868_IG108:
             stp     fp, lr, [sp, #-0x50]!
             stp     x19, x20, [sp, #0x20]
             stp     x21, x22, [sp, #0x30]
             stp     x23, x24, [sp, #0x40]
             add     x3, fp, #0xD1FFAB1E
             str     x3, [sp, #0x18]
 						;; size=24 bbWeight=0 PerfScore 0.00
 G_M36868_IG109:
             mov     x2, x0
             movn    w0, #1
             ldr     x21, [fp, #0x10]	// [V00 this]
             str     w0, [x21, #0x18]
             str     xzr, [x21, #0x10]
             add     x0, x21, #32
             movz    x1, #0xD1FFAB1E
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             movz    x3, #0xD1FFAB1E      // code for System.Runtime.CompilerServices.AsyncValueTaskMethodBuilder`1[System.ValueTuple`3[System.__Canon,System.__Canon,System.__Canon]]:SetException(System.Exception):this
             movk    x3, #0xD1FFAB1E LSL #16
             movk    x3, #0xD1FFAB1E LSL #32
             ldr     x3, [x3]
             blr     x3
             adr     x0, [G_M36868_IG104]
 						;; size=60 bbWeight=0 PerfScore 0.00
 G_M36868_IG110:
             ldp     x23, x24, [sp, #0x40]
             ldp     x21, x22, [sp, #0x30]
             ldp     x19, x20, [sp, #0x20]
             ldp     fp, lr, [sp], #0x50
             ret     lr
 						;; size=20 bbWeight=0 PerfScore 0.00
 RWD00  	dd	G_M36868_IG10 - G_M36868_IG02
        	dd	G_M36868_IG20 - G_M36868_IG02
        	dd	G_M36868_IG31 - G_M36868_IG02
        	dd	G_M36868_IG41 - G_M36868_IG02
        	dd	G_M36868_IG52 - G_M36868_IG02
        	dd	G_M36868_IG65 - G_M36868_IG02
        	dd	G_M36868_IG76 - G_M36868_IG02
 RWD28  	dd	G_M36868_IG07 - G_M36868_IG02
        	dd	G_M36868_IG07 - G_M36868_IG02
        	dd	G_M36868_IG28 - G_M36868_IG02
        	dd	G_M36868_IG49 - G_M36868_IG02
        	dd	G_M36868_IG49 - G_M36868_IG02
        	dd	G_M36868_IG07 - G_M36868_IG02
        	dd	G_M36868_IG62 - G_M36868_IG02
        	dd	G_M36868_IG62 - G_M36868_IG02
 
 
-; Total bytes of code 5276, prolog size 84, PerfScore 1467.08, instruction count 1323, allocated bytes for code 5276 (MethodHash=a6736ffb) for method System.Net.Http.HttpConnectionPool+<ConnectAsync>d__51:MoveNext():this (FullOpts)
+; Total bytes of code 5300, prolog size 84, PerfScore 1469.58, instruction count 1328, allocated bytes for code 5300 (MethodHash=a6736ffb) for method System.Net.Http.HttpConnectionPool+<ConnectAsync>d__51:MoveNext():this (FullOpts)
24 (0.65 % of base) - System.Resources.Extensions.PreserializedResourceWriter:Generate():this
 ; Assembly listing for method System.Resources.Extensions.PreserializedResourceWriter:Generate():this (FullOpts)
 ; Emitting BLENDED_CODE for generic ARM64 - Unix
 ; FullOpts code
 ; optimized code
 ; fp based frame
 ; fully interruptible
 ; No PGO data
 ; 0 inlinees with PGO data; 79 single block inlinees; 22 inlinees without PGO data
 ; Final local variable assignments
 ;
 ;  V00 this         [V00,T11] ( 15, 18   )     ref  ->  x19         this class-hnd single-def <System.Resources.Extensions.PreserializedResourceWriter>
 ;  V01 loc0         [V01,T00] ( 24, 44   )     ref  ->  x21         class-hnd exact single-def <System.IO.BinaryWriter>
-;  V02 loc1         [V02,T44] (  4,  7   )     ref  ->  x20         class-hnd exact single-def <System.Collections.Generic.List`1[System.String]>
+;  V02 loc1         [V02,T43] (  4,  7   )     ref  ->  x20         class-hnd exact single-def <System.Collections.Generic.List`1[System.String]>
 ;* V03 loc2         [V03    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact single-def <System.IO.MemoryStream>
 ;* V04 loc3         [V04    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact single-def <System.IO.BinaryWriter>
-;  V05 loc4         [V05,T49] (  7,  6   )     int  ->  x25        
-;  V06 loc5         [V06,T13] (  6, 18   )     ref  ->  x26         class-hnd exact single-def <int[]>
-;  V07 loc6         [V07,T26] (  5, 14   )     ref  ->  x27         class-hnd exact single-def <int[]>
+;  V05 loc4         [V05,T48] (  7,  6   )     int  ->  x24        
+;  V06 loc5         [V06,T13] (  6, 18   )     ref  ->  x25         class-hnd exact single-def <int[]>
+;  V07 loc6         [V07,T26] (  5, 14   )     ref  ->  x26         class-hnd exact single-def <int[]>
 ;  V08 loc7         [V08,T15] (  5, 17   )     int  ->  [fp+0x124] 
-;  V09 loc8         [V09,T48] (  9,  6.50)     ref  ->  x25         class-hnd exact single-def <System.IO.MemoryStream>
-;  V10 loc9         [V10,T20] (  8, 16   )     ref  ->  x23         class-hnd exact single-def <System.IO.BinaryWriter>
-;  V11 loc10        [V11,T50] (  6,  6   )     ref  ->  [fp+0x58]  class-hnd exact spill-single-def <System.IO.MemoryStream>
-;  V12 loc11        [V12,T69] (  9,  4   )     ref  ->  [fp+0x50]  class-hnd exact EH-live spill-single-def <System.IO.MemoryStream>
+;  V09 loc8         [V09,T47] (  9,  6.50)     ref  ->  x28         class-hnd exact single-def <System.IO.MemoryStream>
+;  V10 loc9         [V10,T20] (  8, 16   )     ref  ->  x24         class-hnd exact single-def <System.IO.BinaryWriter>
+;  V11 loc10        [V11,T49] (  6,  6   )     ref  ->  x23         class-hnd exact single-def <System.IO.MemoryStream>
+;  V12 loc11        [V12,T68] (  9,  4   )     ref  ->  [fp+0x40]  class-hnd exact EH-live spill-single-def <System.IO.MemoryStream>
 ;  V13 loc12        [V13,T19] (  9, 16   )     ref  ->  x22         class-hnd exact single-def <System.IO.BinaryWriter>
-;  V14 loc13        [V14,T40] (  3,  8.50)     int  ->   x1         single-def
+;  V14 loc13        [V14,T39] (  3,  8.50)     int  ->   x1         single-def
 ;* V15 loc14        [V15    ] (  0,  0   )     int  ->  zero-ref   
 ;  V16 loc15        [V16    ] (  9, 15   )  struct (40) [fp+0xF8]  do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.Collections.Generic.Dictionary`2+Enumerator[System.String,System.Resources.Extensions.PreserializedResourceWriter+PrecannedResource]>
 ;* V17 loc16        [V17    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op <System.Collections.Generic.KeyValuePair`2[System.String,System.Resources.Extensions.PreserializedResourceWriter+PrecannedResource]>
 ;  V18 loc17        [V18    ] (  6, 13   )  struct (40) [fp+0xD0]  do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Collections.Generic.SortedDictionary`2+Enumerator[System.String,System.Object]>
 ;* V19 loc18        [V19    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op <System.Collections.Generic.KeyValuePair`2[System.String,System.Object]>
 ;* V20 loc19        [V20    ] (  0,  0   )     ref  ->  zero-ref    class-hnd <System.Object>
-;  V21 loc20        [V21,T37] (  3, 10   )     int  ->  x28        
-;  V22 loc21        [V22,T66] (  2,  4   )     ref  ->   x3         class-hnd exact <System.Resources.Extensions.PreserializedResourceWriter+PrecannedResource>
+;  V21 loc20        [V21,T37] (  3, 10   )     int  ->  x27        
+;  V22 loc21        [V22,T65] (  2,  4   )     ref  ->   x3         class-hnd exact <System.Resources.Extensions.PreserializedResourceWriter+PrecannedResource>
 ;* V23 loc22        [V23    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op <System.Collections.Generic.List`1+Enumerator[System.String]>
 ;* V24 loc23        [V24    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact <System.String>
 ;  V25 loc24        [V25,T10] (  6, 20.50)     int  ->  x20        
-;  V26 loc25        [V26,T35] (  4, 10   )     ref  ->  x26         class-hnd exact single-def <int[]>
+;  V26 loc25        [V26,T35] (  4, 10   )     ref  ->  x25         class-hnd exact single-def <int[]>
 ;  V27 loc26        [V27,T16] (  5, 17   )     int  ->  x20        
 ;* V28 loc27        [V28    ] (  0,  0   )     int  ->  zero-ref   
-;  V29 loc28        [V29,T36] (  4, 10   )     ref  ->  x27         class-hnd exact single-def <int[]>
+;  V29 loc28        [V29,T36] (  4, 10   )     ref  ->  x26         class-hnd exact single-def <int[]>
 ;  V30 loc29        [V30,T17] (  5, 17   )     int  ->  x20        
 ;* V31 loc30        [V31    ] (  0,  0   )     int  ->  zero-ref   
 ;# V32 OutArgs      [V32    ] (  1,  1   )  struct ( 0) [sp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
 ;  V33 tmp1         [V33,T33] (  5, 10   )     ref  ->  x20         class-hnd single-def "impAppendStmt" <System.IO.Stream>
 ;  V34 tmp2         [V34,T27] (  6, 12   )     ref  ->  x21         class-hnd exact single-def "NewObj constructor temp" <System.IO.BinaryWriter>
-;  V35 tmp3         [V35,T52] (  3,  6   )     ref  ->  x20         class-hnd exact single-def "NewObj constructor temp" <System.Collections.Generic.List`1[System.String]>
-;  V36 tmp4         [V36,T12] ( 10, 20   )     ref  ->  x25         class-hnd exact single-def "NewObj constructor temp" <System.IO.MemoryStream>
-;  V37 tmp5         [V37,T21] (  8, 16   )     ref  ->  x26         class-hnd exact single-def "NewObj constructor temp" <System.IO.BinaryWriter>
+;  V35 tmp3         [V35,T51] (  3,  6   )     ref  ->  x20         class-hnd exact single-def "NewObj constructor temp" <System.Collections.Generic.List`1[System.String]>
+;  V36 tmp4         [V36,T12] ( 10, 20   )     ref  ->  x24         class-hnd exact single-def "NewObj constructor temp" <System.IO.MemoryStream>
+;  V37 tmp5         [V37,T21] (  8, 16   )     ref  ->  x25         class-hnd exact single-def "NewObj constructor temp" <System.IO.BinaryWriter>
 ;* V38 tmp6         [V38    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "impAppendStmt" <System.IO.Stream>
-;  V39 tmp7         [V39,T53] (  3,  6   )     ref  ->  [fp+0x48]  class-hnd exact spill-single-def "NewObj constructor temp" <System.IO.MemoryStream>
-;  V40 tmp8         [V40,T54] (  3,  6   )     ref  ->  [fp+0x40]  class-hnd exact spill-single-def "NewObj constructor temp" <System.IO.BinaryWriter>
-;  V41 tmp9         [V41,T55] (  3,  6   )     ref  ->  [fp+0x38]  class-hnd exact spill-single-def "NewObj constructor temp" <System.IO.MemoryStream>
-;  V42 tmp10        [V42,T56] (  3,  6   )     ref  ->  [fp+0x30]  class-hnd exact spill-single-def "NewObj constructor temp" <System.IO.BinaryWriter>
+;  V39 tmp7         [V39,T52] (  3,  6   )     ref  ->  x28         class-hnd exact single-def "NewObj constructor temp" <System.IO.MemoryStream>
+;  V40 tmp8         [V40,T53] (  3,  6   )     ref  ->  x24         class-hnd exact single-def "NewObj constructor temp" <System.IO.BinaryWriter>
+;  V41 tmp9         [V41,T54] (  3,  6   )     ref  ->  x23         class-hnd exact single-def "NewObj constructor temp" <System.IO.MemoryStream>
+;  V42 tmp10        [V42,T55] (  3,  6   )     ref  ->  [fp+0x38]  class-hnd exact spill-single-def "NewObj constructor temp" <System.IO.BinaryWriter>
 ;  V43 tmp11        [V43,T22] (  2, 16   )     int  ->   x0         "Strict ordering of exceptions for Array store"
-;  V44 tmp12        [V44,T01] (  4, 32   )     int  ->  x28         "impSpillLclRefs"
+;  V44 tmp12        [V44,T01] (  4, 32   )     int  ->  x27         "impSpillLclRefs"
 ;  V45 tmp13        [V45,T23] (  2, 16   )     int  ->   x0         "Strict ordering of exceptions for Array store"
 ;* V46 tmp14        [V46    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "spilling qmarkNull" <System.Resources.Extensions.PreserializedResourceWriter+PrecannedResource>
 ;* V47 tmp15        [V47    ] (  0,  0   )    long  ->  zero-ref    "impAppendStmt"
 ;* V48 tmp16        [V48    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "impAppendStmt" <System.IO.Stream>
 ;* V49 tmp17        [V49    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "impAppendStmt" <System.Collections.Generic.SortedDictionary`2[System.String,System.Object]>
 ;* V50 tmp18        [V50    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "impAppendStmt" <System.String>
-;  V51 tmp19        [V51,T107] (  3,  0   )     ref  ->  x19         class-hnd exact single-def "NewObj constructor temp" <System.InvalidOperationException>
-;  V52 tmp20        [V52,T45] (  4,  7   )     ref  ->  x23         class-hnd exact single-def "Inlining Arg" <System.Text.UTF8Encoding+UTF8EncodingSealed>
+;  V51 tmp19        [V51,T106] (  3,  0   )     ref  ->  x19         class-hnd exact single-def "NewObj constructor temp" <System.InvalidOperationException>
+;  V52 tmp20        [V52,T44] (  4,  7   )     ref  ->  x23         class-hnd exact single-def "Inlining Arg" <System.Text.UTF8Encoding+UTF8EncodingSealed>
 ;* V53 tmp21        [V53    ] (  0,  0   )     ref  ->  zero-ref   
 ;* V54 tmp22        [V54    ] (  0,  0   )     ref  ->  zero-ref    single-def
-;  V55 tmp23        [V55,T94] (  3,  2   )     int  ->   x0        
-;  V56 tmp24        [V56,T108] (  3,  0   )     ref  ->  x21         class-hnd exact single-def "NewObj constructor temp" <System.ArgumentException>
-;  V57 tmp25        [V57,T46] (  4,  7   )     ref  ->   x0         class-hnd exact single-def "Inlining Arg" <System.Text.UTF8Encoding+UTF8EncodingSealed>
+;  V55 tmp23        [V55,T93] (  3,  2   )     int  ->   x0        
+;  V56 tmp24        [V56,T107] (  3,  0   )     ref  ->  x21         class-hnd exact single-def "NewObj constructor temp" <System.ArgumentException>
+;  V57 tmp25        [V57,T45] (  4,  7   )     ref  ->   x0         class-hnd exact single-def "Inlining Arg" <System.Text.UTF8Encoding+UTF8EncodingSealed>
 ;* V58 tmp26        [V58    ] (  0,  0   )     ref  ->  zero-ref   
 ;* V59 tmp27        [V59    ] (  0,  0   )     ref  ->  zero-ref    single-def
-;  V60 tmp28        [V60,T95] (  3,  2   )     int  ->   x0        
-;  V61 tmp29        [V61,T109] (  3,  0   )     ref  ->  x23         class-hnd exact single-def "NewObj constructor temp" <System.ArgumentException>
-;  V62 tmp30        [V62,T96] (  2,  2   )     ref  ->   x1         class-hnd "Inline return value spill temp" <System.String>
-;  V63 tmp31        [V63,T97] (  2,  2   )     ref  ->   x1         class-hnd "Inline return value spill temp" <System.String>
+;  V60 tmp28        [V60,T94] (  3,  2   )     int  ->   x0        
+;  V61 tmp29        [V61,T108] (  3,  0   )     ref  ->  x23         class-hnd exact single-def "NewObj constructor temp" <System.ArgumentException>
+;  V62 tmp30        [V62,T95] (  2,  2   )     ref  ->   x1         class-hnd "Inline return value spill temp" <System.String>
+;  V63 tmp31        [V63,T96] (  2,  2   )     ref  ->   x1         class-hnd "Inline return value spill temp" <System.String>
 ;* V64 tmp32        [V64    ] (  0,  0   )    long  ->  zero-ref    single-def "Inline stloc first use temp"
 ;* V65 tmp33        [V65    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
 ;* V66 tmp34        [V66    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <System.Collections.Generic.SortedDictionary`2[System.String,System.Object]>
-;  V67 tmp35        [V67,T72] (  2,  4   )     ref  ->   x0         class-hnd exact single-def "Inlining Arg" <System.Collections.Generic.TreeSet`1[System.Collections.Generic.KeyValuePair`2[System.__Canon,System.__Canon]]>
-;  V68 tmp36        [V68,T84] (  3,  3   )     ref  ->   x0         class-hnd single-def "Inlining Arg" <System.Collections.Generic.Dictionary`2[System.String,System.Resources.Extensions.PreserializedResourceWriter+PrecannedResource]>
+;  V67 tmp35        [V67,T71] (  2,  4   )     ref  ->   x0         class-hnd exact single-def "Inlining Arg" <System.Collections.Generic.TreeSet`1[System.Collections.Generic.KeyValuePair`2[System.__Canon,System.__Canon]]>
+;  V68 tmp36        [V68,T83] (  3,  3   )     ref  ->   x0         class-hnd single-def "Inlining Arg" <System.Collections.Generic.Dictionary`2[System.String,System.Resources.Extensions.PreserializedResourceWriter+PrecannedResource]>
 ;* V69 tmp37        [V69    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <System.Text.UnicodeEncoding>
 ;* V70 tmp38        [V70    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.Text.UTF8Encoding+UTF8EncodingSealed>
-;  V71 tmp39        [V71,T85] (  3,  3   )     ref  ->   x0         class-hnd single-def "Inlining Arg" <System.Collections.Generic.Dictionary`2[System.String,System.Resources.Extensions.PreserializedResourceWriter+PrecannedResource]>
-;  V72 tmp40        [V72,T99] (  2,  2   )  struct (40) [fp+0xA8]  do-not-enreg[SF] must-init ld-addr-op "NewObj constructor temp" <System.Collections.Generic.Dictionary`2+Enumerator[System.String,System.Resources.Extensions.PreserializedResourceWriter+PrecannedResource]>
-;  V73 tmp41        [V73,T73] (  2,  4   )     ref  ->   x0         class-hnd single-def "Inlining Arg" <System.Collections.Generic.SortedDictionary`2[System.String,System.Object]>
-;  V74 tmp42        [V74,T77] (  2,  4   )  struct (40) [fp+0x80]  do-not-enreg[SF] must-init ld-addr-op "NewObj constructor temp" <System.Collections.Generic.SortedDictionary`2+Enumerator[System.String,System.Object]>
+;  V71 tmp39        [V71,T84] (  3,  3   )     ref  ->   x0         class-hnd single-def "Inlining Arg" <System.Collections.Generic.Dictionary`2[System.String,System.Resources.Extensions.PreserializedResourceWriter+PrecannedResource]>
+;  V72 tmp40        [V72,T98] (  2,  2   )  struct (40) [fp+0xA8]  do-not-enreg[SF] must-init ld-addr-op "NewObj constructor temp" <System.Collections.Generic.Dictionary`2+Enumerator[System.String,System.Resources.Extensions.PreserializedResourceWriter+PrecannedResource]>
+;  V73 tmp41        [V73,T72] (  2,  4   )     ref  ->   x0         class-hnd single-def "Inlining Arg" <System.Collections.Generic.SortedDictionary`2[System.String,System.Object]>
+;  V74 tmp42        [V74,T76] (  2,  4   )  struct (40) [fp+0x80]  do-not-enreg[SF] must-init ld-addr-op "NewObj constructor temp" <System.Collections.Generic.SortedDictionary`2+Enumerator[System.String,System.Object]>
 ;  V75 tmp43        [V75,T34] (  5, 10   )     ref  ->   x0         class-hnd exact single-def "Inlining Arg" <System.Collections.Generic.TreeSet`1[System.Collections.Generic.KeyValuePair`2[System.__Canon,System.__Canon]]>
 ;  V76 tmp44        [V76    ] (  8, 16   )  struct (32) [fp+0x60]  do-not-enreg[XSF] must-init addr-exposed ld-addr-op "NewObj constructor temp" <System.Collections.Generic.SortedSet`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.String,System.Object]]>
-;  V77 tmp45        [V77,T57] (  3,  6   )     ref  ->  [fp+0x28]  class-hnd exact spill-single-def "NewObj constructor temp" <System.Collections.Generic.Stack`1[System.Collections.Generic.SortedSet`1+Node[System.Collections.Generic.KeyValuePair`2[System.String,System.Object]]]>
+;  V77 tmp45        [V77,T56] (  3,  6   )     ref  ->  [fp+0x30]  class-hnd exact spill-single-def "NewObj constructor temp" <System.Collections.Generic.Stack`1[System.Collections.Generic.SortedSet`1+Node[System.Collections.Generic.KeyValuePair`2[System.String,System.Object]]]>
 ;* V78 tmp46        [V78    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
-;  V79 tmp47        [V79,T100] (  2,  2   )     int  ->  x24         single-def "Inline return value spill temp"
+;  V79 tmp47        [V79,T99] (  2,  2   )     int  ->  [fp+0x5C]  spill-single-def "Inline return value spill temp"
 ;* V80 tmp48        [V80    ] (  0,  0   )     int  ->  zero-ref    "Inlining Arg"
-;  V81 tmp49        [V81,T51] (  4,  6   )     int  ->  x24         "Inlining Arg"
+;  V81 tmp49        [V81,T50] (  4,  6   )     int  ->  [fp+0x58]  spill-single-def "Inlining Arg"
 ;* V82 tmp50        [V82    ] (  0,  0   )  struct (16) zero-ref    "Inline return value spill temp" <System.Collections.Generic.KeyValuePair`2[System.String,System.Object]>
 ;* V83 tmp51        [V83    ] (  0,  0   )  struct (16) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.Collections.Generic.KeyValuePair`2[System.String,System.Object]>
 ;* V84 tmp52        [V84    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.Collections.Generic.SortedSet`1+Node[System.Collections.Generic.KeyValuePair`2[System.__Canon,System.__Canon]]>
 ;* V85 tmp53        [V85    ] (  0,  0   )  struct (24) zero-ref    ld-addr-op "NewObj constructor temp" <System.Collections.Generic.List`1+Enumerator[System.String]>
-;* V86 tmp54        [V86,T43] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
+;* V86 tmp54        [V86,T42] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
 ;* V87 tmp55        [V87    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inline stloc first use temp" <System.Collections.Generic.List`1[System.String]>
 ;* V88 tmp56        [V88    ] (  0,  0   )    long  ->  zero-ref    single-def "Inline stloc first use temp"
 ;* V89 tmp57        [V89    ] (  0,  0   )     int  ->  zero-ref    "Inline stloc first use temp"
-;  V90 tmp58        [V90,T74] (  2,  4   )     ref  ->  x25         class-hnd single-def "Inlining Arg" <System.IO.Stream>
-;  V91 tmp59        [V91,T41] (  2,  8   )     ref  ->   x1         "field V17.key (fldOffset=0x0)" P-INDEP
-;  V92 tmp60        [V92,T42] (  2,  8   )     ref  ->   x2         "field V17.value (fldOffset=0x8)" P-INDEP
+;  V90 tmp58        [V90,T73] (  2,  4   )     ref  ->  x28         class-hnd single-def "Inlining Arg" <System.IO.Stream>
+;  V91 tmp59        [V91,T40] (  2,  8   )     ref  ->   x1         "field V17.key (fldOffset=0x0)" P-INDEP
+;  V92 tmp60        [V92,T41] (  2,  8   )     ref  ->   x2         "field V17.value (fldOffset=0x8)" P-INDEP
 ;* V93 tmp61        [V93    ] (  0,  0   )     ref  ->  zero-ref    "field V19.key (fldOffset=0x0)" P-INDEP
 ;* V94 tmp62        [V94    ] (  0,  0   )     ref  ->  zero-ref    "field V19.value (fldOffset=0x8)" P-INDEP
 ;  V95 tmp63        [V95,T18] (  4, 17   )     ref  ->  x20         single-def "field V23._list (fldOffset=0x0)" P-INDEP
 ;  V96 tmp64        [V96,T29] (  2,  8   )     ref  ->   x1         "field V23._current (fldOffset=0x8)" P-INDEP
-;  V97 tmp65        [V97,T02] (  6, 21   )     int  ->  x28         "field V23._index (fldOffset=0x10)" P-INDEP
-;  V98 tmp66        [V98,T38] (  2,  9   )     int  ->  x24         single-def "field V23._version (fldOffset=0x14)" P-INDEP
-;  V99 tmp67        [V99,T28] (  4, 12   )     ref  ->  [fp+0x20]  "field V82.key (fldOffset=0x0)" P-INDEP
-;  V100 tmp68       [V100,T14] (  7, 17   )     ref  ->  [fp+0x18]  "field V82.value (fldOffset=0x8)" P-INDEP
+;  V97 tmp65        [V97,T02] (  6, 21   )     int  ->  [fp+0x54]  "field V23._index (fldOffset=0x10)" P-INDEP
+;  V98 tmp66        [V98,T38] (  2,  9   )     int  ->  x27         single-def "field V23._version (fldOffset=0x14)" P-INDEP
+;  V99 tmp67        [V99,T28] (  4, 12   )     ref  ->  [fp+0x28]  "field V82.key (fldOffset=0x0)" P-INDEP
+;  V100 tmp68       [V100,T14] (  7, 17   )     ref  ->  [fp+0x20]  "field V82.value (fldOffset=0x8)" P-INDEP
 ;* V101 tmp69       [V101    ] (  0,  0   )     ref  ->  zero-ref    "field V83.key (fldOffset=0x0)" P-INDEP
 ;* V102 tmp70       [V102    ] (  0,  0   )     ref  ->  zero-ref    "field V83.value (fldOffset=0x8)" P-INDEP
-;  V103 tmp71       [V103,T86] (  3,  3   )     ref  ->  x20         single-def "field V85._list (fldOffset=0x0)" P-INDEP
+;  V103 tmp71       [V103,T85] (  3,  3   )     ref  ->  x20         single-def "field V85._list (fldOffset=0x0)" P-INDEP
 ;* V104 tmp72       [V104    ] (  0,  0   )     ref  ->  zero-ref    single-def "field V85._current (fldOffset=0x8)" P-INDEP
-;* V105 tmp73       [V105,T104] (  0,  0   )     int  ->  zero-ref    single-def "field V85._index (fldOffset=0x10)" P-INDEP
-;  V106 tmp74       [V106,T101] (  2,  2   )     int  ->  x24         single-def "field V85._version (fldOffset=0x14)" P-INDEP
+;* V105 tmp73       [V105,T103] (  0,  0   )     int  ->  zero-ref    single-def "field V85._index (fldOffset=0x10)" P-INDEP
+;  V106 tmp74       [V106,T100] (  2,  2   )     int  ->  x27         single-def "field V85._version (fldOffset=0x14)" P-INDEP
 ;* V107 tmp75       [V107    ] (  0,  0   )     ref  ->  zero-ref    single-def "V72.[000..008)"
-;  V108 tmp76       [V108,T103] (  2,  1   )     int  ->   x1         single-def "V72.[008..012)"
+;  V108 tmp76       [V108,T102] (  2,  1   )     int  ->   x1         single-def "V72.[008..012)"
 ;* V109 tmp77       [V109    ] (  0,  0   )     int  ->  zero-ref    single-def "V72.[012..016)"
 ;* V110 tmp78       [V110    ] (  0,  0   )     int  ->  zero-ref    single-def "V72.[016..020)"
 ;* V111 tmp79       [V111    ] (  0,  0   )     int  ->  zero-ref    "V74.[000..004)"
-;  V112 tmp80       [V112,T87] (  3,  3   )     ref  ->   x0         single-def "argument with side effect"
-;  V113 tmp81       [V113,T78] (  2,  4   )     int  ->   x1         "argument with side effect"
-;  V114 tmp82       [V114,T79] (  2,  4   )     int  ->   x1         "argument with side effect"
-;  V115 tmp83       [V115,T110] (  2,  0   )     ref  ->   x1         single-def "argument with side effect"
-;  V116 tmp84       [V116,T88] (  3,  3   )     ref  ->   x0         single-def "argument with side effect"
-;  V117 tmp85       [V117,T58] (  3,  6   )     ref  ->   x0         single-def "argument with side effect"
-;  V118 tmp86       [V118,T80] (  2,  4   )     int  ->   x1         "argument with side effect"
-;  V119 tmp87       [V119,T59] (  3,  6   )     ref  ->   x0         single-def "argument with side effect"
-;  V120 tmp88       [V120,T81] (  2,  4   )     int  ->   x2         "argument with side effect"
-;  V121 tmp89       [V121,T75] (  2,  4   )     ref  ->  x26         single-def "argument with side effect"
-;  V122 tmp90       [V122,T76] (  2,  4   )     ref  ->   x2         single-def "argument with side effect"
-;  V123 tmp91       [V123,T111] (  2,  0   )     ref  ->   x1         single-def "argument with side effect"
+;  V112 tmp80       [V112,T86] (  3,  3   )     ref  ->   x0         single-def "argument with side effect"
+;  V113 tmp81       [V113,T77] (  2,  4   )     int  ->   x1         "argument with side effect"
+;  V114 tmp82       [V114,T78] (  2,  4   )     int  ->   x1         "argument with side effect"
+;  V115 tmp83       [V115,T109] (  2,  0   )     ref  ->   x1         single-def "argument with side effect"
+;  V116 tmp84       [V116,T87] (  3,  3   )     ref  ->   x0         single-def "argument with side effect"
+;  V117 tmp85       [V117,T57] (  3,  6   )     ref  ->   x0         single-def "argument with side effect"
+;  V118 tmp86       [V118,T79] (  2,  4   )     int  ->   x1         "argument with side effect"
+;  V119 tmp87       [V119,T58] (  3,  6   )     ref  ->   x0         single-def "argument with side effect"
+;  V120 tmp88       [V120,T80] (  2,  4   )     int  ->   x2         "argument with side effect"
+;  V121 tmp89       [V121,T74] (  2,  4   )     ref  ->  x25         single-def "argument with side effect"
+;  V122 tmp90       [V122,T75] (  2,  4   )     ref  ->   x2         single-def "argument with side effect"
+;  V123 tmp91       [V123,T110] (  2,  0   )     ref  ->   x1         single-def "argument with side effect"
 ;  V124 tmp92       [V124,T30] (  3, 12   )     ref  ->   x0         "BlockOp address local"
 ;  V125 tmp93       [V125,T03] (  3, 24   )     ref  ->   x0         "argument with side effect"
 ;  V126 tmp94       [V126,T04] (  3, 24   )     ref  ->   x0         "argument with side effect"
 ;  V127 tmp95       [V127,T24] (  2, 16   )     int  ->   x1         "argument with side effect"
 ;  V128 tmp96       [V128,T05] (  3, 24   )     ref  ->   x0         "arr expr"
 ;  V129 tmp97       [V129,T06] (  3, 24   )     ref  ->   x0         single-def "argument with side effect"
 ;  V130 tmp98       [V130,T07] (  3, 24   )     ref  ->   x0         single-def "argument with side effect"
 ;  V131 tmp99       [V131,T08] (  3, 24   )     ref  ->   x0         single-def "argument with side effect"
-;  V132 tmp100      [V132,T60] (  3,  6   )     ref  ->   x0         single-def "argument with side effect"
-;  V133 tmp101      [V133,T61] (  3,  6   )     ref  ->   x0         single-def "argument with side effect"
-;  V134 tmp102      [V134,T62] (  3,  6   )     ref  ->   x0         single-def "argument with side effect"
-;  V135 tmp103      [V135,T63] (  3,  6   )     ref  ->   x0         single-def "argument with side effect"
-;  V136 tmp104      [V136,T82] (  2,  4   )     int  ->   x1         "argument with side effect"
-;  V137 tmp105      [V137,T89] (  3,  3   )     ref  ->   x0         single-def "argument with side effect"
-;  V138 tmp106      [V138,T102] (  2,  2   )     int  ->   x2         "argument with side effect"
-;  V139 tmp107      [V139,T98] (  2,  2   )     ref  ->  x20         single-def "argument with side effect"
-;  V140 tmp108      [V140,T90] (  3,  3   )     ref  ->   x0         single-def "argument with side effect"
-;  V141 tmp109      [V141,T91] (  3,  3   )     ref  ->   x0         single-def "argument with side effect"
-;  V142 tmp110      [V142,T64] (  3,  6   )     ref  ->   x0         single-def "argument with side effect"
-;  V143 tmp111      [V143,T83] (  2,  4   )     int  ->   x2         "argument with side effect"
-;  V144 tmp112      [V144,T92] (  3,  3   )     ref  ->   x0         single-def "argument with side effect"
-;  V145 tmp113      [V145,T93] (  3,  3   )     ref  ->   x0         single-def "argument with side effect"
-;  V146 tmp114      [V146,T65] (  3,  6   )     ref  ->   x0         single-def "argument with side effect"
-;  V147 tmp115      [V147,T112] (  2,  0   )     ref  ->   x1         single-def "argument with side effect"
-;  V148 tmp116      [V148,T113] (  2,  0   )     ref  ->   x1         single-def "argument with side effect"
-;  V149 PSPSym      [V149,T105] (  1,  1   )    long  ->  [fp+0x128]  do-not-enreg[V] "PSPSym"
+;  V132 tmp100      [V132,T59] (  3,  6   )     ref  ->   x0         single-def "argument with side effect"
+;  V133 tmp101      [V133,T60] (  3,  6   )     ref  ->   x0         single-def "argument with side effect"
+;  V134 tmp102      [V134,T61] (  3,  6   )     ref  ->   x0         single-def "argument with side effect"
+;  V135 tmp103      [V135,T62] (  3,  6   )     ref  ->   x0         single-def "argument with side effect"
+;  V136 tmp104      [V136,T81] (  2,  4   )     int  ->   x1         "argument with side effect"
+;  V137 tmp105      [V137,T88] (  3,  3   )     ref  ->   x0         single-def "argument with side effect"
+;  V138 tmp106      [V138,T101] (  2,  2   )     int  ->   x2         "argument with side effect"
+;  V139 tmp107      [V139,T97] (  2,  2   )     ref  ->  x20         single-def "argument with side effect"
+;  V140 tmp108      [V140,T89] (  3,  3   )     ref  ->   x0         single-def "argument with side effect"
+;  V141 tmp109      [V141,T90] (  3,  3   )     ref  ->   x0         single-def "argument with side effect"
+;  V142 tmp110      [V142,T63] (  3,  6   )     ref  ->   x0         single-def "argument with side effect"
+;  V143 tmp111      [V143,T82] (  2,  4   )     int  ->   x2         "argument with side effect"
+;  V144 tmp112      [V144,T91] (  3,  3   )     ref  ->   x0         single-def "argument with side effect"
+;  V145 tmp113      [V145,T92] (  3,  3   )     ref  ->   x0         single-def "argument with side effect"
+;  V146 tmp114      [V146,T64] (  3,  6   )     ref  ->   x0         single-def "argument with side effect"
+;  V147 tmp115      [V147,T111] (  2,  0   )     ref  ->   x1         single-def "argument with side effect"
+;  V148 tmp116      [V148,T112] (  2,  0   )     ref  ->   x1         single-def "argument with side effect"
+;  V149 PSPSym      [V149,T104] (  1,  1   )    long  ->  [fp+0x128]  do-not-enreg[V] "PSPSym"
 ;  V150 cse0        [V150,T31] (  3, 12   )     int  ->   x1         "CSE #24: moderate"
-;* V151 cse1        [V151,T106] (  0,  0   )    long  ->  zero-ref    "CSE #02: conservative"
-;  V152 cse2        [V152,T71] (  4,  4   )     ref  ->  x22         "CSE #05: conservative"
-;  V153 cse3        [V153,T68] (  2,  4.25)   byref  ->  x28         hoist "CSE #26: conservative"
-;  V154 cse4        [V154,T67] (  3,  5   )     int  ->  x24         "CSE #21: moderate"
+;* V151 cse1        [V151,T105] (  0,  0   )    long  ->  zero-ref    "CSE #02: conservative"
+;  V152 cse2        [V152,T70] (  4,  4   )     ref  ->  x22         "CSE #05: conservative"
+;  V153 cse3        [V153,T67] (  2,  4.25)   byref  ->  [fp+0x18]  spill-single-def hoist "CSE #26: conservative"
+;  V154 cse4        [V154,T66] (  3,  5   )     int  ->  x27         "CSE #21: moderate"
 ;  V155 cse5        [V155,T32] (  2,  8   )     int  ->   x0         "CSE #18: moderate"
 ;  V156 cse6        [V156,T25] (  2, 16   )     int  ->   x0         "CSE #17: aggressive"
-;  V157 cse7        [V157,T39] (  6,  8.50)    long  ->  x24         "CSE #11: moderate"
-;  V158 cse8        [V158,T70] (  6,  4   )    long  ->  x23         "CSE #01: moderate"
-;  V159 cse9        [V159,T47] (  4,  7   )    long  ->  x24         "CSE #14: moderate"
-;  V160 rat0        [V160,T09] (  3, 24   )     int  ->   x1         "ReplaceWithLclVar is creating a new local variable"
+;  V157 cse7        [V157,T69] (  6,  4   )    long  ->  x23         "CSE #01: moderate"
+;  V158 cse8        [V158,T46] (  4,  7   )    long  ->  [fp+0x48]  spill-single-def "CSE #14: moderate"
+;  V159 rat0        [V159,T09] (  3, 24   )     int  ->   x1         "ReplaceWithLclVar is creating a new local variable"
 ;  TEMP_01                                     int  ->  [fp+0x14]
 ;
 ; Lcl frame size = 288
 
 G_M45214_IG01:
             stp     fp, lr, [sp, #0xD1FFAB1E]!
             stp     x19, x20, [sp, #0xD1FFAB1E]
             stp     x21, x22, [sp, #0xD1FFAB1E]
             stp     x23, x24, [sp, #0xD1FFAB1E]
             stp     x25, x26, [sp, #0xD1FFAB1E]
             stp     x27, x28, [sp, #0xD1FFAB1E]
             mov     fp, sp
             movi    v16.16b, #0
             add     x9, fp, #64
             mov     x10, #128
             stp     q16, q16, [x9, #0x20]
             stp     q16, q16, [x9, #0x40]!
             subs    x10, x10, #64
             bge     pc-16 (-4 instructions)
             add     x1, sp, #0xD1FFAB1E
             str     x1, [fp, #0xD1FFAB1E]	// [V149 PSPSym]
             mov     x19, x0
 						;; size=68 bbWeight=1 PerfScore 13.50
 G_M45214_IG02:
             ldr     x0, [x19, #0x08]
             cbz     x0, G_M45214_IG55
             ldr     x20, [x19, #0x10]
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x21, x0
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             ldr     x22, [x0]
             mov     x23, x22
             cbz     x20, G_M45214_IG58
             mov     x0, x20
             ldr     x1, [x20]
             ldr     x1, [x1, #0x40]
             ldr     x1, [x1, #0x30]
             blr     x1
             cbz     w0, G_M45214_IG56
             add     x14, x21, #8
             mov     x15, x20
             bl      CORINFO_HELP_ASSIGN_REF
             add     x14, x21, #16
             mov     x15, x23
             bl      CORINFO_HELP_ASSIGN_REF
             strb    wzr, [x21, #0x18]
             ldr     w0, [x23, #0x20]
             mov     w1, #0xD1FFAB1E
             cmp     w0, w1
             bne     G_M45214_IG04
 						;; size=124 bbWeight=1 PerfScore 37.50
 G_M45214_IG03:
             ldr     x0, [x23, #0x10]
             ldr     x1, [x0]
             ldr     x1, [x1, #0x40]
             ldr     x1, [x1, #0x28]
             blr     x1
             cmp     w0, #1
             cset    x0, le
             b       G_M45214_IG05
 						;; size=32 bbWeight=0.50 PerfScore 7.50
 G_M45214_IG04:
             mov     w0, wzr
 						;; size=4 bbWeight=0.50 PerfScore 0.25
 G_M45214_IG05:
             strb    w0, [x21, #0x19]
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x20, x0
             movz    x23, #0xD1FFAB1E
             movk    x23, #0xD1FFAB1E LSL #16
             movk    x23, #0xD1FFAB1E LSL #32
             mov     x0, x23
             mov     w1, #6
             bl      CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
             movz    x14, #0xD1FFAB1E      // data for System.Collections.Generic.List`1[System.String]:s_emptyArray
             movk    x14, #0xD1FFAB1E LSL #16
             movk    x14, #0xD1FFAB1E LSL #32
             ldr     x15, [x14]
             add     x14, x20, #8
             bl      CORINFO_HELP_ASSIGN_REF
             movz    x1, #0xD1FFAB1E
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     w1, [x1]
             tbz     w1, #0, G_M45214_IG57
 						;; size=92 bbWeight=1 PerfScore 19.00
 G_M45214_IG06:
             ldr     w1, [x23, #0xD1FFAB1E]
             mov     x0, x21
             movz    x2, #0xD1FFAB1E      // code for System.IO.BinaryWriter:Write(int):this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             ldr     w1, [x23, #0xD1FFAB1E]
             mov     x0, x21
             movz    x2, #0xD1FFAB1E      // code for System.IO.BinaryWriter:Write(int):this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            movz    x24, #0xD1FFAB1E
-            movk    x24, #0xD1FFAB1E LSL #16
-            movk    x24, #0xD1FFAB1E LSL #32
-            mov     x0, x24
+            movz    x0, #0xD1FFAB1E
+            movk    x0, #0xD1FFAB1E LSL #16
+            movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
-            mov     x25, x0
+            mov     x24, x0
             mov     w1, #240
             movz    x2, #0xD1FFAB1E      // code for System.IO.MemoryStream:.ctor(int):this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
-            mov     x26, x0
+            mov     x25, x0
             mov     x0, x22
-            ldrb    w14, [x25, #0x29]
+            ldrb    w14, [x24, #0x29]
             cbz     w14, G_M45214_IG59
-            add     x14, x26, #8
-            mov     x15, x25
+            add     x14, x25, #8
+            mov     x15, x24
             bl      CORINFO_HELP_ASSIGN_REF
-            add     x14, x26, #16
+            add     x14, x25, #16
             mov     x15, x0
             bl      CORINFO_HELP_ASSIGN_REF
-            strb    wzr, [x26, #0x18]
+            strb    wzr, [x25, #0x18]
             ldr     w1, [x0, #0x20]
             mov     w2, #0xD1FFAB1E
             cmp     w1, w2
             bne     G_M45214_IG08
-						;; size=180 bbWeight=1 PerfScore 45.00
+						;; size=176 bbWeight=1 PerfScore 44.50
 G_M45214_IG07:
             ldr     x0, [x0, #0x10]
             ldr     x1, [x0]
             ldr     x1, [x1, #0x40]
             ldr     x1, [x1, #0x28]
             blr     x1
             cmp     w0, #1
             cset    x0, le
             b       G_M45214_IG09
 						;; size=32 bbWeight=0.50 PerfScore 7.50
 G_M45214_IG08:
             mov     w0, wzr
 						;; size=4 bbWeight=0.50 PerfScore 0.25
 G_M45214_IG09:
-            strb    w0, [x26, #0x19]
+            strb    w0, [x25, #0x19]
             ldrb    w0, [x19, #0x28]
             movz    x1, #0xD1FFAB1E
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             movz    x2, #0xD1FFAB1E
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             cmp     w0, #0
             csel    x1, x1, x2, ne
-            mov     x0, x26
+            mov     x0, x25
             movz    x2, #0xD1FFAB1E      // code for System.IO.BinaryWriter:Write(System.String):this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             ldrb    w0, [x19, #0x28]
             movz    x1, #0xD1FFAB1E
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             movz    x2, #0xD1FFAB1E
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             cmp     w0, #0
             csel    x1, x1, x2, ne
-            mov     x0, x26
+            mov     x0, x25
             movz    x2, #0xD1FFAB1E      // code for System.IO.BinaryWriter:Write(System.String):this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            ldr     x0, [x26, #0x08]
+            ldr     x0, [x25, #0x08]
             ldr     x1, [x0]
             ldr     x1, [x1, #0x50]
             ldr     x1, [x1, #0x30]
             blr     x1
-            mov     x0, x25
+            mov     x0, x24
             movz    x1, #0xD1FFAB1E      // code for System.IO.MemoryStream:get_Length():long:this
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
             mov     w1, w0
             mov     x0, x21
             movz    x2, #0xD1FFAB1E      // code for System.IO.BinaryWriter:Write(int):this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            ldrb    w2, [x25, #0x2B]
+            ldrb    w2, [x24, #0x2B]
             cbz     w2, G_M45214_IG60
-            ldr     w2, [x25, #0x18]
-            mov     x0, x25
+            ldr     w2, [x24, #0x18]
+            mov     x0, x24
             mov     x1, xzr
             movz    x3, #0xD1FFAB1E      // code for System.IO.MemoryStream:SeekCore(long,int):long:this
             movk    x3, #0xD1FFAB1E LSL #16
             movk    x3, #0xD1FFAB1E LSL #32
             ldr     x3, [x3]
             blr     x3
             ldr     x0, [x21, #0x08]
             ldr     x1, [x0]
             ldr     x1, [x1, #0x50]
             ldr     x1, [x1, #0x30]
             blr     x1
-            ldr     x26, [x21, #0x08]
-            mov     x0, x25
+            ldr     x25, [x21, #0x08]
+            mov     x0, x24
             movz    x1, #0xD1FFAB1E      // code for System.IO.MemoryStream:get_Length():long:this
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
             mov     w2, w0
-            mov     x1, x26
-            mov     x0, x25
+            mov     x1, x25
+            mov     x0, x24
             movz    x3, #0xD1FFAB1E      // code for System.IO.MemoryStream:CopyTo(System.IO.Stream,int):this
             movk    x3, #0xD1FFAB1E LSL #16
             movk    x3, #0xD1FFAB1E LSL #32
             ldr     x3, [x3]
             blr     x3
             mov     x0, x21
             mov     w1, #2
             movz    x2, #0xD1FFAB1E      // code for System.IO.BinaryWriter:Write(int):this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             ldr     x0, [x19, #0x08]
             ldr     x0, [x0, #0x18]
-            ldr     w25, [x0, #0x20]
+            ldr     w24, [x0, #0x20]
             ldr     x0, [x19, #0x20]
             cbz     x0, G_M45214_IG11
 						;; size=364 bbWeight=1 PerfScore 114.50
 G_M45214_IG10:
             ldr     x0, [x19, #0x20]
             ldr     w1, [x0, #0x38]
             ldr     w0, [x0, #0x40]
             sub     w0, w1, w0
-            add     w25, w0, w25
+            add     w24, w0, w24
 						;; size=20 bbWeight=0.50 PerfScore 5.00
 G_M45214_IG11:
             mov     x0, x21
-            mov     w1, w25
+            mov     w1, w24
             movz    x2, #0xD1FFAB1E      // code for System.IO.BinaryWriter:Write(int):this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            sxtw    x1, w25
+            sxtw    x1, w24
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWARR_1_VC
-            mov     x26, x0
-            sxtw    x1, w25
+            mov     x25, x0
+            sxtw    x1, w24
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWARR_1_VC
-            mov     x27, x0
-            mov     w28, wzr
-            mov     x0, x24
+            mov     x26, x0
+            mov     w27, wzr
+            movz    x0, #0xD1FFAB1E
+            movk    x0, #0xD1FFAB1E LSL #16
+            movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
-            mov     x2, x0
-            str     x2, [fp, #0x48]	// [V39 tmp7]
+            mov     x28, x0
             mov     w1, #40
-            mul     w1, w25, w1
-            mov     x0, x2
-            movz    x3, #0xD1FFAB1E      // code for System.IO.MemoryStream:.ctor(int):this
-            movk    x3, #0xD1FFAB1E LSL #16
-            movk    x3, #0xD1FFAB1E LSL #32
-            ldr     x3, [x3]
-            blr     x3
-            ldr     x25, [fp, #0x48]	// [V39 tmp7]
+            mul     w1, w24, w1
+            mov     x0, x28
+            movz    x2, #0xD1FFAB1E      // code for System.IO.MemoryStream:.ctor(int):this
+            movk    x2, #0xD1FFAB1E LSL #16
+            movk    x2, #0xD1FFAB1E LSL #32
+            ldr     x2, [x2]
+            blr     x2
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
-            mov     x4, x0
-            str     x4, [fp, #0x40]	// [V40 tmp8]
+            mov     x24, x0
             movz    x2, #0xD1FFAB1E
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     w2, [x2]
             tbz     w2, #0, G_M45214_IG61
-						;; size=176 bbWeight=1 PerfScore 37.00
+						;; size=172 bbWeight=1 PerfScore 34.00
 G_M45214_IG12:
             movz    x2, #0xD1FFAB1E      // data for System.Text.UnicodeEncoding:s_littleEndianDefault
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
-            mov     x1, x25
-            mov     x0, x4
-            mov     w3, wzr
-            movz    x5, #0xD1FFAB1E      // code for System.IO.BinaryWriter:.ctor(System.IO.Stream,System.Text.Encoding,ubyte):this
-            movk    x5, #0xD1FFAB1E LSL #16
-            movk    x5, #0xD1FFAB1E LSL #32
-            ldr     x5, [x5]
-            blr     x5
-            ldr     x23, [fp, #0x40]	// [V40 tmp8]
+            mov     x1, x28
             mov     x0, x24
+            mov     w3, wzr
+            movz    x4, #0xD1FFAB1E      // code for System.IO.BinaryWriter:.ctor(System.IO.Stream,System.Text.Encoding,ubyte):this
+            movk    x4, #0xD1FFAB1E LSL #16
+            movk    x4, #0xD1FFAB1E LSL #32
+            ldr     x4, [x4]
+            blr     x4
+            movz    x0, #0xD1FFAB1E
+            movk    x0, #0xD1FFAB1E LSL #16
+            movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
-            mov     x2, x0
-            str     x2, [fp, #0x38]	// [V41 tmp9]
-            mov     x0, x2
+            mov     x23, x0
             mov     w1, wzr
-            movz    x3, #0xD1FFAB1E      // code for System.IO.MemoryStream:.ctor(int):this
-            movk    x3, #0xD1FFAB1E LSL #16
-            movk    x3, #0xD1FFAB1E LSL #32
-            ldr     x3, [x3]
-            blr     x3
-            ldr     x1, [fp, #0x38]	// [V41 tmp9]
-            stp     x1, x1, [fp, #0x50]	// [V12 loc11], [V11 loc10]
-						;; size=104 bbWeight=1 PerfScore 26.00
+            movz    x2, #0xD1FFAB1E      // code for System.IO.MemoryStream:.ctor(int):this
+            movk    x2, #0xD1FFAB1E LSL #16
+            movk    x2, #0xD1FFAB1E LSL #32
+            ldr     x2, [x2]
+            blr     x2
+            str     x23, [fp, #0x40]	// [V12 loc11]
+						;; size=96 bbWeight=1 PerfScore 21.50
 G_M45214_IG13:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x4, x0
-            str     x4, [fp, #0x30]	// [V42 tmp10]
+            str     x4, [fp, #0x38]	// [V42 tmp10]
             mov     x2, x22
             mov     x0, x4
-            ldr     x1, [fp, #0x58]	// [V11 loc10]
+            mov     x1, x23
             mov     w3, wzr
             movz    x5, #0xD1FFAB1E      // code for System.IO.BinaryWriter:.ctor(System.IO.Stream,System.Text.Encoding,ubyte):this
             movk    x5, #0xD1FFAB1E LSL #16
             movk    x5, #0xD1FFAB1E LSL #32
             ldr     x5, [x5]
             blr     x5
-            ldr     x22, [fp, #0x30]	// [V42 tmp10]
+            ldr     x22, [fp, #0x38]	// [V42 tmp10]
             ldr     x0, [x19, #0x20]
             cbz     x0, G_M45214_IG18
-						;; size=72 bbWeight=1 PerfScore 19.00
+						;; size=72 bbWeight=1 PerfScore 17.50
 G_M45214_IG14:
             ldr     x0, [x19, #0x20]
             ldr     w1, [x0, #0x44]
             stp     xzr, xzr, [fp, #0xC0]
 						;; size=12 bbWeight=0.50 PerfScore 3.50
 G_M45214_IG15:
             ldr     x2, [fp, #0xA8]
             str     x2, [fp, #0xF8]
             ldp     q16, q17, [fp, #0xB0]
             stp     q16, q17, [fp, #0xD1FFAB1E]
 						;; size=16 bbWeight=0.50 PerfScore 3.00
 G_M45214_IG16:
             str     x0, [fp, #0xF8]	// [V16 loc15]
             str     w1, [fp, #0xD1FFAB1E]	// [V16 loc15+0x08]
             str     wzr, [fp, #0xD1FFAB1E]	// [V16 loc15+0x0c]
             mov     w0, #2
             str     w0, [fp, #0xD1FFAB1E]	// [V16 loc15+0x10]
             add     x0, fp, #248	// [V16 loc15]
-            add     x1, x24, #0xD1FFAB1E
+            movz    x1, #0xD1FFAB1E
+            movk    x1, #0xD1FFAB1E LSL #16
+            movk    x1, #0xD1FFAB1E LSL #32
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.Dictionary`2+Enumerator[System.__Canon,System.__Canon]:MoveNext():ubyte:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             cbz     w0, G_M45214_IG18
-						;; size=52 bbWeight=0.50 PerfScore 6.00
+						;; size=60 bbWeight=0.50 PerfScore 6.50
 G_M45214_IG17:
             ldp     x1, x2, [fp, #0xD1FFAB1E]	// [V16 loc15+0x18], [V16 loc15+0x20]
             ldr     x0, [x19, #0x08]
             movz    x3, #0xD1FFAB1E      // code for System.Collections.Generic.SortedDictionary`2[System.__Canon,System.__Canon]:Add(System.__Canon,System.__Canon):this
             movk    x3, #0xD1FFAB1E LSL #16
             movk    x3, #0xD1FFAB1E LSL #32
             ldr     x3, [x3]
             ldr     wzr, [x0]
             blr     x3
             add     x0, fp, #248	// [V16 loc15]
-            add     x1, x24, #0xD1FFAB1E
+            movz    x1, #0xD1FFAB1E
+            movk    x1, #0xD1FFAB1E LSL #16
+            movk    x1, #0xD1FFAB1E LSL #32
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.Dictionary`2+Enumerator[System.__Canon,System.__Canon]:MoveNext():ubyte:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             cbnz    w0, G_M45214_IG17
-						;; size=64 bbWeight=4 PerfScore 88.00
+						;; size=72 bbWeight=4 PerfScore 92.00
 G_M45214_IG18:
             ldr     x0, [x19, #0x08]
             ldr     x0, [x0, #0x18]
             ldrsb   wzr, [x0]
             stp     xzr, xzr, [fp, #0x60]
             stp     xzr, xzr, [fp, #0x70]
             str     x0, [fp, #0x60]	// [V76 tmp44]
             ldr     w1, [x0, #0x24]
             str     w1, [fp, #0x78]	// [V76 tmp44+0x18]
             ldr     w0, [x0, #0x20]
             add     w0, w0, #1
             orr     w0, w0, #1
             clz     w0, w0
-            eor     w24, w0, #31
+            eor     w1, w0, #31
+            str     w1, [fp, #0x5C]	// [V79 tmp47]
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
-            str     x0, [fp, #0x28]	// [V77 tmp45]
-            lsl     w24, w24, #1
-            tbnz    w24, #31, G_M45214_IG33
-            sxtw    x1, w24
+            str     x0, [fp, #0x30]	// [V77 tmp45]
+            ldr     w1, [fp, #0x5C]	// [V79 tmp47]
+            lsl     w3, w1, #1
+            str     w3, [fp, #0x58]	// [V81 tmp49]
+            tbnz    w3, #31, G_M45214_IG33
+            sxtw    x1, w3
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWARR_1_OBJ
-            ldr     x24, [fp, #0x28]	// [V77 tmp45]
-            add     x14, x24, #8
+            ldr     x1, [fp, #0x30]	// [V77 tmp45]
+            add     x14, x1, #8
             mov     x15, x0
             bl      CORINFO_HELP_ASSIGN_REF
-            stp     x24, xzr, [fp, #0x68]	// [V76 tmp44+0x08], [V76 tmp44+0x10]
+            stp     x1, xzr, [fp, #0x68]	// [V76 tmp44+0x08], [V76 tmp44+0x10]
             strb    wzr, [fp, #0x7C]	// [V76 tmp44+0x1c]
             add     x0, fp, #96	// [V76 tmp44]
-            movz    x24, #0xD1FFAB1E
-            movk    x24, #0xD1FFAB1E LSL #16
-            movk    x24, #0xD1FFAB1E LSL #32
-            mov     x1, x24
-            movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.SortedSet`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.__Canon,System.__Canon]]:Initialize():this
+            movz    x2, #0xD1FFAB1E
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
-            ldr     x2, [x2]
-            blr     x2
-						;; size=164 bbWeight=1 PerfScore 43.50
+            str     x2, [fp, #0x48]	// [V158 cse8]
+            mov     x1, x2
+            movz    x3, #0xD1FFAB1E      // code for System.Collections.Generic.SortedSet`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.__Canon,System.__Canon]]:Initialize():this
+            movk    x3, #0xD1FFAB1E LSL #16
+            movk    x3, #0xD1FFAB1E LSL #32
+            ldr     x3, [x3]
+            blr     x3
+						;; size=180 bbWeight=1 PerfScore 48.50
 G_M45214_IG19:
             ldp     x0, x1, [fp, #0x60]
             stp     x0, x1, [fp, #0x88]
             ldp     x0, x1, [fp, #0x70]
             stp     x0, x1, [fp, #0x98]
 						;; size=16 bbWeight=1 PerfScore 8.00
 G_M45214_IG20:
             ldp     q16, q17, [fp, #0x80]
             stp     q16, q17, [fp, #0xD0]
             ldr     x0, [fp, #0xA0]
             str     x0, [fp, #0xF0]
 						;; size=16 bbWeight=1 PerfScore 6.00
 G_M45214_IG21:
             mov     w0, #1
             str     w0, [fp, #0xD0]	// [V18 loc17]
             add     x0, fp, #216	// [V18 loc17+0x08]
-            mov     x1, x24
+            ldr     x1, [fp, #0x48]	// [V158 cse8]
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.SortedSet`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.__Canon,System.__Canon]]:MoveNext():ubyte:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             cbz     w0, G_M45214_IG27
-						;; size=40 bbWeight=1 PerfScore 9.00
+						;; size=40 bbWeight=1 PerfScore 10.50
 G_M45214_IG22:
             ldr     x0, [fp, #0xE8]	// [V18 loc17+0x18]
             cbz     x0, G_M45214_IG28
 						;; size=8 bbWeight=4 PerfScore 12.00
 G_M45214_IG23:
             ldr     x0, [fp, #0xE8]	// [V18 loc17+0x18]
             ldp     x1, x2, [x0, #0x20]
-            str     x2, [fp, #0x18]	// [V100 tmp68]
+            str     x2, [fp, #0x20]	// [V100 tmp68]
 						;; size=12 bbWeight=2 PerfScore 14.00
 G_M45214_IG24:
-            str     x1, [fp, #0x20]	// [V99 tmp67]
+            str     x1, [fp, #0x28]	// [V99 tmp67]
             mov     x0, x1
             movz    x3, #0xD1FFAB1E      // code for System.Resources.FastResourceComparer:HashFunction(System.String):int
             movk    x3, #0xD1FFAB1E LSL #16
             movk    x3, #0xD1FFAB1E LSL #32
             ldr     x3, [x3]
             blr     x3
-            ldr     w1, [x26, #0x08]
-            cmp     w28, w1
+            ldr     w1, [x25, #0x08]
+            cmp     w27, w1
             bhs     G_M45214_IG48
-            add     x1, x26, #16
-            str     w0, [x1, w28, UXTW #2]
-            add     w0, w28, #1
+            add     x1, x25, #16
+            str     w0, [x1, w27, UXTW #2]
+            add     w0, w27, #1
             str     w0, [fp, #0xD1FFAB1E]	// [V08 loc7]
-            ldr     x0, [x23, #0x08]
+            ldr     x0, [x24, #0x08]
             mov     x1, xzr
             mov     w2, #1
             ldr     x4, [x0]
             ldr     x4, [x4, #0x60]
             ldr     x4, [x4, #0x08]
             blr     x4
-            ldr     w1, [x27, #0x08]
-            cmp     w28, w1
+            ldr     w1, [x26, #0x08]
+            cmp     w27, w1
             bhs     G_M45214_IG48
-            add     x1, x27, #16
-            str     w0, [x1, w28, UXTW #2]
-            mov     x0, x23
-            ldr     x1, [fp, #0x20]	// [V99 tmp67]
+            add     x1, x26, #16
+            str     w0, [x1, w27, UXTW #2]
+            mov     x0, x24
+            ldr     x1, [fp, #0x28]	// [V99 tmp67]
             movz    x2, #0xD1FFAB1E      // code for System.IO.BinaryWriter:Write(System.String):this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             ldr     x0, [x22, #0x08]
             mov     x1, xzr
             mov     w2, #1
             ldr     x3, [x0]
             ldr     x3, [x3, #0x60]
             ldr     x3, [x3, #0x08]
             blr     x3
             mov     w1, w0
-            mov     x0, x23
+            mov     x0, x24
             movz    x2, #0xD1FFAB1E      // code for System.IO.BinaryWriter:Write(int):this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            ldr     x0, [fp, #0x18]	// [V100 tmp68]
+            ldr     x0, [fp, #0x20]	// [V100 tmp68]
             mov     x1, x20
             movz    x2, #0xD1FFAB1E      // code for System.Resources.Extensions.PreserializedResourceWriter:FindTypeCode(System.Object,System.Collections.Generic.List`1[System.String]):int
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            sxtw    w28, w0
+            sxtw    w27, w0
             mov     x0, x22
-            mov     w1, w28
+            mov     w1, w27
             movz    x2, #0xD1FFAB1E      // code for System.IO.BinaryWriter:Write7BitEncodedInt(int):this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            ldr     x3, [fp, #0x18]	// [V100 tmp68]
+            ldr     x3, [fp, #0x20]	// [V100 tmp68]
             cbnz    x3, G_M45214_IG29
 						;; size=256 bbWeight=4 PerfScore 324.00
 G_M45214_IG25:
-            mov     w0, w28
+            mov     w0, w27
             mov     x1, x3
             mov     x2, x22
             movz    x3, #0xD1FFAB1E      // code for System.Resources.Extensions.PreserializedResourceWriter:WriteValue(int,System.Object,System.IO.BinaryWriter)
             movk    x3, #0xD1FFAB1E LSL #16
             movk    x3, #0xD1FFAB1E LSL #32
             ldr     x3, [x3]
             blr     x3
 						;; size=32 bbWeight=2 PerfScore 14.00
 G_M45214_IG26:
             add     x0, fp, #216	// [V18 loc17+0x08]
-            mov     x1, x24
+            ldr     x1, [fp, #0x48]	// [V158 cse8]
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.SortedSet`1+Enumerator[System.Collections.Generic.KeyValuePair`2[System.__Canon,System.__Canon]]:MoveNext():ubyte:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            ldr     w28, [fp, #0xD1FFAB1E]	// [V08 loc7]
+            ldr     w27, [fp, #0xD1FFAB1E]	// [V08 loc7]
             cbnz    w0, G_M45214_IG22
-						;; size=36 bbWeight=4 PerfScore 38.00
+						;; size=36 bbWeight=4 PerfScore 44.00
 G_M45214_IG27:
             ldr     w1, [x20, #0x10]
             mov     x0, x21
             movz    x2, #0xD1FFAB1E      // code for System.IO.BinaryWriter:Write(int):this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            ldr     w24, [x20, #0x14]
-            mov     w28, wzr
+            ldr     w27, [x20, #0x14]
+            mov     w2, wzr
             b       G_M45214_IG31
 						;; size=40 bbWeight=1 PerfScore 13.50
 G_M45214_IG28:
             mov     x1, xzr
-            str     xzr, [fp, #0x18]	// [V100 tmp68]
+            str     xzr, [fp, #0x20]	// [V100 tmp68]
             b       G_M45214_IG24
 						;; size=12 bbWeight=2 PerfScore 5.00
 G_M45214_IG29:
             ldr     x2, [x3]
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             cmp     x2, x0
             bne     G_M45214_IG25
 						;; size=24 bbWeight=1 PerfScore 6.00
 G_M45214_IG30:
             ldr     x2, [x3, #0x10]
             mov     x0, x19
             mov     x1, x22
             movz    x3, #0xD1FFAB1E      // code for System.Resources.Extensions.PreserializedResourceWriter:WriteData(System.IO.BinaryWriter,System.Object):this
             movk    x3, #0xD1FFAB1E LSL #16
             movk    x3, #0xD1FFAB1E LSL #32
             ldr     x3, [x3]
             blr     x3
             b       G_M45214_IG26
 						;; size=36 bbWeight=2 PerfScore 21.00
 G_M45214_IG31:
             ldr     w0, [x20, #0x14]
-            cmp     w24, w0
+            cmp     w27, w0
             bne     G_M45214_IG50
 						;; size=12 bbWeight=8 PerfScore 36.00
 G_M45214_IG32:
             ldr     w0, [x20, #0x10]
-            cmp     w28, w0
+            cmp     w2, w0
             bhs     G_M45214_IG34
             ldr     x0, [x20, #0x08]
             ldr     w1, [x0, #0x08]
-            cmp     w28, w1
+            cmp     w2, w1
             bhs     G_M45214_IG48
             add     x0, x0, #16
-            ldr     x1, [x0, w28, UXTW #3]
-            add     w28, w28, #1
+            ldr     x1, [x0, w2, UXTW #3]
+            add     w2, w2, #1
+            str     w2, [fp, #0x54]	// [V97 tmp65]
             mov     x0, x21
-            movz    x2, #0xD1FFAB1E      // code for System.IO.BinaryWriter:Write(System.String):this
-            movk    x2, #0xD1FFAB1E LSL #16
-            movk    x2, #0xD1FFAB1E LSL #32
-            ldr     x2, [x2]
-            blr     x2
+            movz    x3, #0xD1FFAB1E      // code for System.IO.BinaryWriter:Write(System.String):this
+            movk    x3, #0xD1FFAB1E LSL #16
+            movk    x3, #0xD1FFAB1E LSL #32
+            ldr     x3, [x3]
+            blr     x3
+            ldr     w2, [fp, #0x54]	// [V97 tmp65]
             b       G_M45214_IG31
-						;; size=68 bbWeight=4 PerfScore 92.00
+						;; size=76 bbWeight=4 PerfScore 104.00
 G_M45214_IG33:
             mov     w0, #0xD1FFAB1E
-            movz    x1, #0xD1FFAB1E
-            movk    x1, #0xD1FFAB1E LSL #16
+            movz    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_STRCNS
             mov     x1, x0
-            mov     w0, w24
+            ldr     w0, [fp, #0x58]	// [V81 tmp49]
             movz    x2, #0xD1FFAB1E      // code for System.ArgumentOutOfRangeException:ThrowNegative[int](int,System.String)
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             brk_unix #0
-						;; size=52 bbWeight=0 PerfScore 0.00
+						;; size=48 bbWeight=0 PerfScore 0.00
 G_M45214_IG34:
-            ldr     w3, [x26, #0x08]
-            mov     x0, x26
-            mov     x1, x27
+            ldr     w3, [x25, #0x08]
+            mov     x0, x25
+            mov     x1, x26
             mov     w2, wzr
             mov     x4, xzr
             movz    x5, #0xD1FFAB1E      // code for System.Array:Sort[int,int](int[],int[],int,int,System.Collections.Generic.IComparer`1[int])
             movk    x5, #0xD1FFAB1E LSL #16
             movk    x5, #0xD1FFAB1E LSL #32
             ldr     x5, [x5]
             blr     x5
             ldr     x0, [x21, #0x08]
             ldr     x1, [x0]
             ldr     x1, [x1, #0x50]
             ldr     x1, [x1, #0x30]
             blr     x1
             ldr     x0, [x21, #0x08]
             ldr     x1, [x0]
             ldr     x1, [x1, #0x50]
             ldr     x1, [x1, #0x30]
             blr     x1
             ldr     x0, [x21, #0x08]
             ldr     x1, [x0]
             ldr     x1, [x1, #0x48]
             ldr     x1, [x1, #0x10]
             blr     x1
             and     w1, w0, #7
             cmp     w1, #0
             ble     G_M45214_IG38
 						;; size=112 bbWeight=4 PerfScore 206.00
 G_M45214_IG35:
             mov     w20, wzr
             neg     w1, w1
-            add     w24, w1, #8
-            cmp     w24, #0
+            add     w27, w1, #8
+            cmp     w27, #0
             ble     G_M45214_IG38
 						;; size=20 bbWeight=0.50 PerfScore 1.50
 G_M45214_IG36:
-            movz    x28, #0xD1FFAB1E
-            movk    x28, #0xD1FFAB1E LSL #16
-            movk    x28, #0xD1FFAB1E LSL #32
-						;; size=12 bbWeight=0.25 PerfScore 0.38
+            movz    x2, #0xD1FFAB1E
+            movk    x2, #0xD1FFAB1E LSL #16
+            movk    x2, #0xD1FFAB1E LSL #32
+            str     x2, [fp, #0x18]	// [V153 cse3]
+						;; size=16 bbWeight=0.25 PerfScore 0.62
 G_M45214_IG37:
             movz    w1, #0xD1FFAB1E
             movk    w1, #0xD1FFAB1E LSL #16
             smull   x1, w1, w20
             asr     x1, x1, #32
             add     w1, w1, w1,  LSR #31
             mov     w0, #3
             msub    w1, w1, w0, w20
             cmp     w1, #3
             bhs     G_M45214_IG48
-            ldrh    w1, [x28, w1, UXTW #2]
+            ldrh    w1, [x2, w1, UXTW #2]
             mov     x0, x21
-            movz    x2, #0xD1FFAB1E      // code for System.IO.BinaryWriter:Write(ushort):this
-            movk    x2, #0xD1FFAB1E LSL #16
-            movk    x2, #0xD1FFAB1E LSL #32
-            ldr     x2, [x2]
-            blr     x2
+            movz    x3, #0xD1FFAB1E      // code for System.IO.BinaryWriter:Write(ushort):this
+            movk    x3, #0xD1FFAB1E LSL #16
+            movk    x3, #0xD1FFAB1E LSL #32
+            ldr     x3, [x3]
+            blr     x3
             add     w20, w20, #1
-            cmp     w24, w20
+            cmp     w27, w20
+            ldr     x2, [fp, #0x18]	// [V153 cse3]
             bgt     G_M45214_IG37
-						;; size=76 bbWeight=4 PerfScore 80.00
+						;; size=80 bbWeight=4 PerfScore 88.00
 G_M45214_IG38:
             mov     w20, wzr
-            ldr     w1, [x26, #0x08]
+            ldr     w1, [x25, #0x08]
             cmp     w1, #0
             ble     G_M45214_IG40
 						;; size=16 bbWeight=1 PerfScore 5.00
 G_M45214_IG39:
-            add     x1, x26, #16
+            add     x1, x25, #16
             ldr     w1, [x1, w20, UXTW #2]
             mov     x0, x21
             movz    x2, #0xD1FFAB1E      // code for System.IO.BinaryWriter:Write(int):this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             add     w20, w20, #1
-            ldr     w1, [x26, #0x08]
+            ldr     w1, [x25, #0x08]
             cmp     w1, w20
             bgt     G_M45214_IG39
 						;; size=48 bbWeight=4 PerfScore 58.00
 G_M45214_IG40:
             mov     w20, wzr
-            ldr     w1, [x27, #0x08]
+            ldr     w1, [x26, #0x08]
             cmp     w1, #0
             ble     G_M45214_IG42
 						;; size=16 bbWeight=1 PerfScore 5.00
 G_M45214_IG41:
-            add     x1, x27, #16
+            add     x1, x26, #16
             ldr     w1, [x1, w20, UXTW #2]
             mov     x0, x21
             movz    x2, #0xD1FFAB1E      // code for System.IO.BinaryWriter:Write(int):this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             add     w20, w20, #1
-            ldr     w0, [x27, #0x08]
+            ldr     w0, [x26, #0x08]
             cmp     w0, w20
             bgt     G_M45214_IG41
 						;; size=48 bbWeight=4 PerfScore 58.00
 G_M45214_IG42:
             ldr     x0, [x21, #0x08]
             ldr     x1, [x0]
             ldr     x1, [x1, #0x50]
             ldr     x1, [x1, #0x30]
             blr     x1
-            ldr     x0, [x23, #0x08]
+            ldr     x0, [x24, #0x08]
             ldr     x1, [x0]
             ldr     x1, [x1, #0x50]
             ldr     x1, [x1, #0x30]
             blr     x1
             ldr     x0, [x22, #0x08]
             ldr     x1, [x0]
             ldr     x1, [x1, #0x50]
             ldr     x1, [x1, #0x30]
             blr     x1
             ldr     x0, [x21, #0x08]
             mov     x1, xzr
             mov     w2, #1
             ldr     x3, [x0]
             ldr     x3, [x3, #0x60]
             ldr     x3, [x3, #0x08]
             blr     x3
             str     w0, [fp, #0x14]	// [TEMP_01]
-            mov     x0, x25
+            mov     x0, x28
             movz    x1, #0xD1FFAB1E      // code for System.IO.MemoryStream:get_Length():long:this
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
             ldr     w1, [fp, #0x14]	// [TEMP_01]
             add     w1, w1, w0
             add     w1, w1, #4
             mov     x0, x21
             movz    x2, #0xD1FFAB1E      // code for System.IO.BinaryWriter:Write(int):this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            mov     x0, x25
+            mov     x0, x28
             movz    x1, #0xD1FFAB1E      // code for System.IO.MemoryStream:get_Length():long:this
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
             cmp     x0, #0
             ble     G_M45214_IG44
 						;; size=184 bbWeight=1 PerfScore 76.50
 G_M45214_IG43:
-            ldrb    w2, [x25, #0x2B]
+            ldrb    w2, [x28, #0x2B]
             cbz     w2, G_M45214_IG49
-            ldr     w2, [x25, #0x18]
-            mov     x0, x25
+            ldr     w2, [x28, #0x18]
+            mov     x0, x28
             mov     x1, xzr
             movz    x3, #0xD1FFAB1E      // code for System.IO.MemoryStream:SeekCore(long,int):long:this
             movk    x3, #0xD1FFAB1E LSL #16
             movk    x3, #0xD1FFAB1E LSL #32
             ldr     x3, [x3]
             blr     x3
             ldr     x0, [x21, #0x08]
             ldr     x1, [x0]
             ldr     x1, [x1, #0x50]
             ldr     x1, [x1, #0x30]
             blr     x1
             ldr     x20, [x21, #0x08]
-            mov     x0, x25
+            mov     x0, x28
             movz    x1, #0xD1FFAB1E      // code for System.IO.MemoryStream:get_Length():long:this
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
             mov     w2, w0
             mov     x1, x20
-            mov     x0, x25
+            mov     x0, x28
             movz    x3, #0xD1FFAB1E      // code for System.IO.MemoryStream:CopyTo(System.IO.Stream,int):this
             movk    x3, #0xD1FFAB1E LSL #16
             movk    x3, #0xD1FFAB1E LSL #32
             ldr     x3, [x3]
             blr     x3
 						;; size=120 bbWeight=0.50 PerfScore 21.25
 G_M45214_IG44:
-            ldrb    w0, [x23, #0x18]
+            ldrb    w0, [x24, #0x18]
             cbz     w0, G_M45214_IG51
 						;; size=8 bbWeight=1 PerfScore 4.00
 G_M45214_IG45:
-            ldr     x0, [x23, #0x08]
+            ldr     x0, [x24, #0x08]
             ldr     x1, [x0]
             ldr     x1, [x1, #0x50]
             ldr     x1, [x1, #0x30]
             blr     x1
 						;; size=20 bbWeight=0.50 PerfScore 6.50
 G_M45214_IG46:
-            ldr     x0, [fp, #0x58]	// [V11 loc10]
+            mov     x0, x23
             mov     x1, xzr
             movz    x2, #0xD1FFAB1E      // code for System.IO.MemoryStream:set_Position(long):this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             ldr     x0, [x21, #0x08]
             ldr     x1, [x0]
             ldr     x1, [x1, #0x50]
             ldr     x1, [x1, #0x30]
             blr     x1
-            ldr     x25, [x21, #0x08]
-            ldr     x0, [fp, #0x58]	// [V11 loc10]
+            ldr     x28, [x21, #0x08]
+            mov     x0, x23
             movz    x1, #0xD1FFAB1E      // code for System.IO.Stream:GetCopyBufferSize():int:this
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
             sxtw    w2, w0
-            mov     x1, x25
-            ldr     x0, [fp, #0x58]	// [V11 loc10]
+            mov     x1, x28
+            mov     x0, x23
             movz    x3, #0xD1FFAB1E      // code for System.IO.MemoryStream:CopyTo(System.IO.Stream,int):this
             movk    x3, #0xD1FFAB1E LSL #16
             movk    x3, #0xD1FFAB1E LSL #32
             ldr     x3, [x3]
             blr     x3
             ldrb    w0, [x22, #0x18]
             cbz     w0, G_M45214_IG52
-						;; size=116 bbWeight=1 PerfScore 44.00
+						;; size=116 bbWeight=1 PerfScore 39.50
 G_M45214_IG47:
             ldr     x0, [x22, #0x08]
             ldr     x1, [x0]
             ldr     x1, [x1, #0x50]
             ldr     x1, [x1, #0x30]
             blr     x1
             b       G_M45214_IG53
 						;; size=24 bbWeight=0.50 PerfScore 7.00
 G_M45214_IG48:
             bl      CORINFO_HELP_RNGCHKFAIL
             brk_unix #0
 						;; size=8 bbWeight=0 PerfScore 0.00
 G_M45214_IG49:
             mov     x0, xzr
             movz    x1, #0xD1FFAB1E      // code for System.ThrowHelper:ThrowObjectDisposedException_StreamClosed(System.String)
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
             brk_unix #0
 						;; size=28 bbWeight=0 PerfScore 0.00
 G_M45214_IG50:
             movz    x0, #0xD1FFAB1E      // code for System.ThrowHelper:ThrowInvalidOperationException_InvalidOperation_EnumFailedVersion()
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             ldr     x0, [x0]
             blr     x0
             brk_unix #0
 						;; size=24 bbWeight=0 PerfScore 0.00
 G_M45214_IG51:
-            ldr     x0, [x23, #0x08]
+            ldr     x0, [x24, #0x08]
             ldr     x1, [x0]
             ldr     x1, [x1, #0x50]
             ldr     x1, [x1, #0x18]
             blr     x1
             b       G_M45214_IG46
 						;; size=24 bbWeight=0.50 PerfScore 7.00
 G_M45214_IG52:
             ldr     x0, [x22, #0x08]
             ldr     x1, [x0]
             ldr     x1, [x1, #0x50]
             ldr     x1, [x1, #0x18]
             blr     x1
 						;; size=20 bbWeight=0.50 PerfScore 6.50
 G_M45214_IG53:
-            ldr     x0, [fp, #0x50]	// [V12 loc11]
+            ldr     x0, [fp, #0x40]	// [V12 loc11]
             strb    wzr, [x0, #0x2B]
             strh    wzr, [x0, #0x28]
             str     xzr, [x0, #0x30]
             bl      System.GC:_SuppressFinalize(System.Object)
             ldr     x0, [x21, #0x08]
             ldr     x1, [x0]
             ldr     x1, [x1, #0x50]
             ldr     x1, [x1, #0x30]
             blr     x1
             str     xzr, [x19, #0x08]
 						;; size=44 bbWeight=1 PerfScore 20.00
 G_M45214_IG54:
             ldp     x27, x28, [sp, #0xD1FFAB1E]
             ldp     x25, x26, [sp, #0xD1FFAB1E]
             ldp     x23, x24, [sp, #0xD1FFAB1E]
             ldp     x21, x22, [sp, #0xD1FFAB1E]
             ldp     x19, x20, [sp, #0xD1FFAB1E]
             ldp     fp, lr, [sp], #0xD1FFAB1E
             ret     lr
 						;; size=28 bbWeight=1 PerfScore 7.00
 G_M45214_IG55:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x19, x0
             movz    x0, #0xD1FFAB1E      // code for System.SR:get_InvalidOperation_ResourceWriterSaved():System.String
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             ldr     x0, [x0]
             blr     x0
             mov     x1, x0
             mov     x0, x19
             movz    x2, #0xD1FFAB1E      // code for System.InvalidOperationException:.ctor(System.String):this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             mov     x0, x19
             bl      CORINFO_HELP_THROW
             brk_unix #0
 						;; size=80 bbWeight=0 PerfScore 0.00
 G_M45214_IG56:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x21, x0
             movz    x0, #0xD1FFAB1E      // code for System.SR:get_Argument_StreamNotWritable():System.String
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             ldr     x0, [x0]
             blr     x0
             mov     x1, x0
             mov     x0, x21
             movz    x2, #0xD1FFAB1E      // code for System.ArgumentException:.ctor(System.String):this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             mov     x0, x21
             bl      CORINFO_HELP_THROW
             brk_unix #0
 						;; size=80 bbWeight=0 PerfScore 0.00
 G_M45214_IG57:
             mov     x0, x23
             mov     w1, #0xD1FFAB1E
             bl      CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
             b       G_M45214_IG06
 						;; size=16 bbWeight=0 PerfScore 0.00
 G_M45214_IG58:
             movz    w0, #0xD1FFAB1E
             movk    w0, #1 LSL #16
             movz    x1, #0xD1FFAB1E
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_STRCNS
             movz    x1, #0xD1FFAB1E      // code for System.ArgumentNullException:Throw(System.String)
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
             brk_unix #0
 						;; size=48 bbWeight=0 PerfScore 0.00
 G_M45214_IG59:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x23, x0
             movz    x0, #0xD1FFAB1E      // code for System.SR:get_Argument_StreamNotWritable():System.String
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             ldr     x0, [x0]
             blr     x0
             mov     x1, x0
             mov     x0, x23
             movz    x2, #0xD1FFAB1E      // code for System.ArgumentException:.ctor(System.String):this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             mov     x0, x23
             bl      CORINFO_HELP_THROW
             brk_unix #0
 						;; size=80 bbWeight=0 PerfScore 0.00
 G_M45214_IG60:
             mov     x0, xzr
             movz    x1, #0xD1FFAB1E      // code for System.ThrowHelper:ThrowObjectDisposedException_StreamClosed(System.String)
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
             brk_unix #0
 						;; size=28 bbWeight=0 PerfScore 0.00
 G_M45214_IG61:
             mov     x0, x23
             mov     w1, #0xD1FFAB1E
             bl      CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
-            ldr     x4, [fp, #0x40]	// [V40 tmp8]
             b       G_M45214_IG12
-						;; size=20 bbWeight=0 PerfScore 0.00
+						;; size=16 bbWeight=0 PerfScore 0.00
 G_M45214_IG62:
             stp     fp, lr, [sp, #-0x70]!
             stp     x19, x20, [sp, #0x20]
             stp     x21, x22, [sp, #0x30]
             stp     x23, x24, [sp, #0x40]
             stp     x25, x26, [sp, #0x50]
             stp     x27, x28, [sp, #0x60]
             add     x3, fp, #0xD1FFAB1E
             str     x3, [sp, #0x18]
 						;; size=32 bbWeight=0 PerfScore 0.00
 G_M45214_IG63:
-            ldr     x0, [fp, #0x50]	// [V12 loc11]
+            ldr     x0, [fp, #0x40]	// [V12 loc11]
             strb    wzr, [x0, #0x2B]
             strh    wzr, [x0, #0x28]
             str     xzr, [x0, #0x30]
             bl      System.GC:_SuppressFinalize(System.Object)
 						;; size=20 bbWeight=0 PerfScore 0.00
 G_M45214_IG64:
             ldp     x27, x28, [sp, #0x60]
             ldp     x25, x26, [sp, #0x50]
             ldp     x23, x24, [sp, #0x40]
             ldp     x21, x22, [sp, #0x30]
             ldp     x19, x20, [sp, #0x20]
             ldp     fp, lr, [sp], #0x70
             ret     lr
 						;; size=28 bbWeight=0 PerfScore 0.00
 
-; Total bytes of code 3668, prolog size 68, PerfScore 1688.12, instruction count 917, allocated bytes for code 3668 (MethodHash=a9014f61) for method System.Resources.Extensions.PreserializedResourceWriter:Generate():this (FullOpts)
+; Total bytes of code 3692, prolog size 68, PerfScore 1711.38, instruction count 923, allocated bytes for code 3692 (MethodHash=a9014f61) for method System.Resources.Extensions.PreserializedResourceWriter:Generate():this (FullOpts)
24 (0.81 % of base) - System.Threading.Tasks.Dataflow.TransformBlock`2[long,System.Nullable`1[int]]:.ctor(System.Func`2[long,System.Nullable`1[int]],System.Func`2[long,System.Threading.Tasks.Task`1[System.Nullable`1[int]]],System.Threading.Tasks.Dataflow.ExecutionDataflowBlockOptions):this
 ; Assembly listing for method System.Threading.Tasks.Dataflow.TransformBlock`2[long,System.Nullable`1[int]]:.ctor(System.Func`2[long,System.Nullable`1[int]],System.Func`2[long,System.Threading.Tasks.Task`1[System.Nullable`1[int]]],System.Threading.Tasks.Dataflow.ExecutionDataflowBlockOptions):this (FullOpts)
 ; Emitting BLENDED_CODE for generic ARM64 - Unix
 ; FullOpts code
 ; optimized code
 ; fp based frame
 ; partially interruptible
 ; No PGO data
 ; 0 inlinees with PGO data; 60 single block inlinees; 20 inlinees without PGO data
 ; Final local variable assignments
 ;
 ;  V00 this         [V00,T00] ( 21, 16   )     ref  ->  x19         this class-hnd single-def <System.Threading.Tasks.Dataflow.TransformBlock`2[long,System.Nullable`1[int]]>
 ;  V01 arg1         [V01,T22] (  3,  3   )     ref  ->  x21         class-hnd single-def <System.Func`2[long,System.Nullable`1[int]]>
 ;  V02 arg2         [V02,T23] (  3,  3   )     ref  ->  x22         class-hnd single-def <System.Func`2[long,System.Threading.Tasks.Task`1[System.Nullable`1[int]]]>
 ;  V03 arg3         [V03,T01] ( 16, 12.50)     ref  ->  x20         class-hnd <System.Threading.Tasks.Dataflow.ExecutionDataflowBlockOptions>
 ;  V04 loc0         [V04,T09] (  9,  7.50)     ref  ->  x23         class-hnd exact single-def <System.Threading.Tasks.Dataflow.TransformBlock`2+<>c__DisplayClass9_0[long,System.Nullable`1[int]]>
-;  V05 loc1         [V05,T68] (  3,  2.50)     ref  ->  x21         class-hnd <System.Action`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[System.Nullable`1[int]],int]>
+;  V05 loc1         [V05,T67] (  3,  2.50)     ref  ->  x21         class-hnd <System.Action`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[System.Nullable`1[int]],int]>
 ;  V06 loc2         [V06,T24] (  7,  4.50)     ref  ->  x22         class-hnd exact single-def <System.Threading.Tasks.Dataflow.Internal.DataflowEtwProvider>
 ;# V07 OutArgs      [V07    ] (  1,  1   )  struct ( 0) [sp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
 ;* V08 tmp1         [V08    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "NewObj constructor temp" <System.Threading.Tasks.Dataflow.TransformBlock`2+<>c__DisplayClass9_0[long,System.Nullable`1[int]]>
-;  V09 tmp2         [V09,T32] (  2,  4   )     ref  ->  x24         class-hnd single-def "dup spill" <System.Action`1[System.Threading.Tasks.Dataflow.ISourceBlock`1[System.Nullable`1[int]]]>
+;  V09 tmp2         [V09,T31] (  2,  4   )     ref  ->  x24         class-hnd single-def "dup spill" <System.Action`1[System.Threading.Tasks.Dataflow.ISourceBlock`1[System.Nullable`1[int]]]>
 ;* V10 tmp3         [V10    ] (  0,  0   )     ref  ->  zero-ref    single-def
 ;* V11 tmp4         [V11    ] (  0,  0   )     ref  ->  zero-ref    single-def
 ;* V12 tmp5         [V12    ] (  0,  0   )     ref  ->  zero-ref    single-def
-;  V13 tmp6         [V13,T44] (  4,  3.50)     ref  ->  x24        
+;  V13 tmp6         [V13,T43] (  4,  3.50)     ref  ->  x24        
 ;  V14 tmp7         [V14,T12] (  3,  6   )     ref  ->  x25         class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.Dataflow.Internal.SourceCore`1[System.Nullable`1[int]]>
-;  V15 tmp8         [V15,T28] (  4,  4   )     ref  ->  x24         class-hnd exact single-def "NewObj constructor temp" <System.Action`1[System.Collections.Generic.KeyValuePair`2[long,long]]>
+;  V15 tmp8         [V15,T27] (  4,  4   )     ref  ->  x21         class-hnd exact single-def "NewObj constructor temp" <System.Action`1[System.Collections.Generic.KeyValuePair`2[long,long]]>
 ;  V16 tmp9         [V16,T03] ( 11, 11   )     ref  ->  x23         class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.Dataflow.Internal.TargetCore`1[long]>
-;  V17 tmp10        [V17,T33] (  2,  4   )     ref  ->  x23         class-hnd single-def "dup spill" <System.Action`2[System.Threading.Tasks.Task,System.Object]>
+;  V17 tmp10        [V17,T32] (  2,  4   )     ref  ->  x23         class-hnd single-def "dup spill" <System.Action`2[System.Threading.Tasks.Task,System.Object]>
 ;  V18 tmp11        [V18,T07] (  4,  8   )     ref  ->  x21         class-hnd single-def "impAppendStmt" <System.Threading.Tasks.Task`1[System.Threading.Tasks.Dataflow.Internal.VoidResult]>
 ;* V19 tmp12        [V19    ] (  0,  0   )     ref  ->  zero-ref    single-def
 ;  V20 tmp13        [V20,T25] (  5,  4.50)     ref  ->  x23        
-;  V21 tmp14        [V21,T34] (  2,  4   )     ref  ->  x24         class-hnd exact single-def "impAppendStmt" <System.Threading.Tasks.Dataflow.Internal.SourceCore`1[System.Nullable`1[int]]>
+;  V21 tmp14        [V21,T33] (  2,  4   )     ref  ->  x24         class-hnd exact single-def "impAppendStmt" <System.Threading.Tasks.Dataflow.Internal.SourceCore`1[System.Nullable`1[int]]>
 ;* V22 tmp15        [V22    ] (  0,  0   )  struct ( 8) zero-ref    "impAppendStmt" <System.Threading.CancellationToken>
 ;* V23 tmp16        [V23    ] (  0,  0   )     int  ->  zero-ref    "impAppendStmt"
-;  V24 tmp17        [V24,T35] (  2,  4   )     ref  ->  x23         class-hnd single-def "dup spill" <System.Action`2[System.Threading.Tasks.Task,System.Object]>
+;  V24 tmp17        [V24,T34] (  2,  4   )     ref  ->  x23         class-hnd single-def "dup spill" <System.Action`2[System.Threading.Tasks.Task,System.Object]>
 ;  V25 tmp18        [V25,T08] (  4,  8   )     ref  ->  x21         class-hnd single-def "impAppendStmt" <System.Threading.Tasks.Task`1[System.Threading.Tasks.Dataflow.Internal.VoidResult]>
 ;* V26 tmp19        [V26    ] (  0,  0   )     ref  ->  zero-ref    single-def
 ;  V27 tmp20        [V27,T26] (  5,  4.50)     ref  ->  x23        
 ;* V28 tmp21        [V28    ] (  0,  0   )  struct ( 8) zero-ref    "impAppendStmt" <System.Threading.CancellationToken>
 ;* V29 tmp22        [V29    ] (  0,  0   )     int  ->  zero-ref    "impAppendStmt"
 ;* V30 tmp23        [V30    ] (  0,  0   )  struct ( 8) zero-ref    "impAppendStmt" <System.Threading.CancellationToken>
-;  V31 tmp24        [V31,T36] (  2,  4   )     ref  ->   x2         class-hnd single-def "dup spill" <System.Action`2[System.Object,System.Threading.CancellationToken]>
-;  V32 tmp25        [V32,T37] (  2,  4   )     ref  ->  x23         class-hnd single-def "impAppendStmt" <System.Threading.Tasks.Task`1[System.Threading.Tasks.Dataflow.Internal.VoidResult]>
+;  V31 tmp24        [V31,T35] (  2,  4   )     ref  ->   x2         class-hnd single-def "dup spill" <System.Action`2[System.Object,System.Threading.CancellationToken]>
+;  V32 tmp25        [V32,T36] (  2,  4   )     ref  ->  x23         class-hnd single-def "impAppendStmt" <System.Threading.Tasks.Task`1[System.Threading.Tasks.Dataflow.Internal.VoidResult]>
 ;* V33 tmp26        [V33    ] (  0,  0   )  struct ( 8) zero-ref    <System.Threading.CancellationToken>
 ;* V34 tmp27        [V34    ] (  0,  0   )     ref  ->  zero-ref    single-def
-;  V35 tmp28        [V35,T45] (  4,  3.50)     ref  ->   x2        
+;  V35 tmp28        [V35,T44] (  4,  3.50)     ref  ->   x2        
 ;  V36 tmp29        [V36,T13] (  5,  5   )     ref  ->   x2         class-hnd exact single-def "NewObj constructor temp" <System.Action`2[System.Object,System.Threading.CancellationToken]>
 ;  V37 tmp30        [V37,T14] (  5,  5   )     ref  ->  x23         class-hnd exact single-def "NewObj constructor temp" <System.Action`2[System.Threading.Tasks.Task,System.Object]>
 ;  V38 tmp31        [V38,T15] (  5,  5   )     ref  ->  x23         class-hnd exact single-def "NewObj constructor temp" <System.Action`2[System.Threading.Tasks.Task,System.Object]>
-;  V39 tmp32        [V39,T29] (  4,  4   )     ref  ->  x24         class-hnd exact single-def "NewObj constructor temp" <System.Action`1[System.Collections.Generic.KeyValuePair`2[long,long]]>
+;  V39 tmp32        [V39,T28] (  4,  4   )     ref  ->  x21         class-hnd exact single-def "NewObj constructor temp" <System.Action`1[System.Collections.Generic.KeyValuePair`2[long,long]]>
 ;  V40 tmp33        [V40,T04] ( 11, 11   )     ref  ->  x23         class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.Dataflow.Internal.TargetCore`1[long]>
-;  V41 tmp34        [V41,T73] (  2,  2   )     ref  ->  x21         class-hnd single-def "dup spill" <System.Action`2[System.Object,System.Nullable`1[int]]>
+;  V41 tmp34        [V41,T72] (  2,  2   )     ref  ->  x21         class-hnd single-def "dup spill" <System.Action`2[System.Object,System.Nullable`1[int]]>
 ;* V42 tmp35        [V42    ] (  0,  0   )     ref  ->  zero-ref    single-def
 ;* V43 tmp36        [V43    ] (  0,  0   )     ref  ->  zero-ref    single-def
-;  V44 tmp37        [V44,T69] (  4,  2   )     ref  ->  x21        
+;  V44 tmp37        [V44,T68] (  4,  2   )     ref  ->  x21        
 ;  V45 tmp38        [V45,T16] (  5,  5   )     ref  ->  x24         class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.Dataflow.Internal.ReorderingBuffer`1[System.Nullable`1[int]]>
 ;  V46 tmp39        [V46,T17] (  5,  5   )     ref  ->  x21         class-hnd exact single-def "NewObj constructor temp" <System.Action`2[System.Object,System.Nullable`1[int]]>
 ;  V47 tmp40        [V47,T18] (  5,  5   )     ref  ->  x24         class-hnd exact single-def "NewObj constructor temp" <System.Action`1[System.Threading.Tasks.Dataflow.ISourceBlock`1[System.Nullable`1[int]]]>
-;  V48 tmp41        [V48,T74] (  2,  2   )     ref  ->  x21         class-hnd single-def "dup spill" <System.Action`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[System.Nullable`1[int]],int]>
-;  V49 tmp42        [V49,T70] (  4,  2   )     ref  ->  x21        
+;  V48 tmp41        [V48,T73] (  2,  2   )     ref  ->  x21         class-hnd single-def "dup spill" <System.Action`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[System.Nullable`1[int]],int]>
+;  V49 tmp42        [V49,T69] (  4,  2   )     ref  ->  x21        
 ;  V50 tmp43        [V50,T19] (  5,  5   )     ref  ->  x21         class-hnd exact single-def "NewObj constructor temp" <System.Action`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[System.Nullable`1[int]],int]>
 ;* V51 tmp44        [V51    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "NewObj constructor temp" <System.ArgumentNullException>
-;  V52 tmp45        [V52,T98] (  3,  0   )     ref  ->  x24         class-hnd exact single-def "NewObj constructor temp" <System.ArgumentNullException>
-;  V53 tmp46        [V53,T99] (  3,  0   )     ref  ->  x19         class-hnd exact single-def "NewObj constructor temp" <System.ArgumentNullException>
-;  V54 tmp47        [V54,T46] (  3,  3   )     ref  ->  x15         class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.Dataflow.TransformBlock`2+<>c[long,System.Nullable`1[int]]>
-;  V55 tmp48        [V55,T47] (  3,  3   )     ref  ->  x15         class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.Dataflow.TransformBlock`2+<>c[long,System.Nullable`1[int]]>
-;* V56 tmp49        [V56,T97] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;  V57 tmp50        [V57,T48] (  3,  3   )     ref  ->  x15         class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.Dataflow.TransformBlock`2+<>c[long,System.Nullable`1[int]]>
-;  V58 tmp51        [V58,T49] (  3,  3   )     ref  ->  x25         class-hnd exact single-def "NewObj constructor temp" <System.Collections.Generic.Dictionary`2[long,System.Collections.Generic.KeyValuePair`2[ubyte,System.Nullable`1[int]]]>
-;  V59 tmp52        [V59,T50] (  3,  3   )     ref  ->  x26         class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.TaskCompletionSource`1[System.Threading.Tasks.Dataflow.Internal.VoidResult]>
-;  V60 tmp53        [V60,T75] (  2,  2   )     ref  ->  x25         class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.Dataflow.Internal.ReorderingBuffer`1[System.Nullable`1[int]]>
+;  V52 tmp45        [V52,T97] (  3,  0   )     ref  ->  x24         class-hnd exact single-def "NewObj constructor temp" <System.ArgumentNullException>
+;  V53 tmp46        [V53,T98] (  3,  0   )     ref  ->  x19         class-hnd exact single-def "NewObj constructor temp" <System.ArgumentNullException>
+;  V54 tmp47        [V54,T45] (  3,  3   )     ref  ->  x15         class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.Dataflow.TransformBlock`2+<>c[long,System.Nullable`1[int]]>
+;  V55 tmp48        [V55,T46] (  3,  3   )     ref  ->  x15         class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.Dataflow.TransformBlock`2+<>c[long,System.Nullable`1[int]]>
+;* V56 tmp49        [V56,T96] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
+;  V57 tmp50        [V57,T47] (  3,  3   )     ref  ->  x15         class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.Dataflow.TransformBlock`2+<>c[long,System.Nullable`1[int]]>
+;  V58 tmp51        [V58,T48] (  3,  3   )     ref  ->  x25         class-hnd exact single-def "NewObj constructor temp" <System.Collections.Generic.Dictionary`2[long,System.Collections.Generic.KeyValuePair`2[ubyte,System.Nullable`1[int]]]>
+;  V59 tmp52        [V59,T49] (  3,  3   )     ref  ->  x25         class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.TaskCompletionSource`1[System.Threading.Tasks.Dataflow.Internal.VoidResult]>
+;  V60 tmp53        [V60,T74] (  2,  2   )     ref  ->  x24         class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.Dataflow.Internal.ReorderingBuffer`1[System.Nullable`1[int]]>
 ;* V61 tmp54        [V61    ] (  0,  0   )     ref  ->  zero-ref    single-def
-;  V62 tmp55        [V62,T51] (  3,  3   )     ref  ->  x24         class-hnd exact single-def "NewObj constructor temp" <System.Collections.Concurrent.SingleProducerSingleConsumerQueue`1[System.Collections.Generic.KeyValuePair`2[long,long]]>
-;  V63 tmp56        [V63,T81] (  3,  1.50)     ref  ->  x24         class-hnd "Inline stloc first use temp" <System.Collections.Concurrent.IProducerConsumerQueue`1[System.Collections.Generic.KeyValuePair`2[long,long]]>
+;  V62 tmp55        [V62,T50] (  3,  3   )     ref  ->  x21         class-hnd exact single-def "NewObj constructor temp" <System.Collections.Concurrent.SingleProducerSingleConsumerQueue`1[System.Collections.Generic.KeyValuePair`2[long,long]]>
+;  V63 tmp56        [V63,T80] (  3,  1.50)     ref  ->  x21         class-hnd "Inline stloc first use temp" <System.Collections.Concurrent.IProducerConsumerQueue`1[System.Collections.Generic.KeyValuePair`2[long,long]]>
 ;* V64 tmp57        [V64    ] (  0,  0   )     ref  ->  zero-ref   
 ;* V65 tmp58        [V65    ] (  0,  0   )     ref  ->  zero-ref   
-;  V66 tmp59        [V66,T30] (  4,  4   )     ref  ->  x24         class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.Dataflow.Internal.BoundingStateWithPostponed`1[long]>
-;  V67 tmp60        [V67,T52] (  3,  3   )     ref  ->  x24         class-hnd exact single-def "NewObj constructor temp" <System.Collections.Concurrent.MultiProducerMultiConsumerQueue`1[System.Collections.Generic.KeyValuePair`2[long,long]]>
-;  V68 tmp61        [V68,T53] (  3,  3   )     ref  ->   x0         class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.Task`1[System.Threading.Tasks.Dataflow.Internal.VoidResult]>
+;  V66 tmp59        [V66,T29] (  4,  4   )     ref  ->  x24         class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.Dataflow.Internal.BoundingStateWithPostponed`1[long]>
+;  V67 tmp60        [V67,T51] (  3,  3   )     ref  ->  x21         class-hnd exact single-def "NewObj constructor temp" <System.Collections.Concurrent.MultiProducerMultiConsumerQueue`1[System.Collections.Generic.KeyValuePair`2[long,long]]>
+;  V68 tmp61        [V68,T52] (  3,  3   )     ref  ->   x0         class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.Task`1[System.Threading.Tasks.Dataflow.Internal.VoidResult]>
 ;* V69 tmp62        [V69    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <System.Threading.Tasks.Dataflow.ExecutionDataflowBlockOptions>
-;* V70 tmp63        [V70,T91] (  0,  0   )     ref  ->  zero-ref    class-hnd single-def "Inlining Arg" <System.Threading.Tasks.Dataflow.ExecutionDataflowBlockOptions>
-;  V71 tmp64        [V71,T54] (  3,  3   )     ref  ->  x25         class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.Dataflow.Internal.QueuedMap`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[long],System.Threading.Tasks.Dataflow.DataflowMessageHeader]>
-;  V72 tmp65        [V72,T79] (  2,  2   )     int  ->  x21         "Inlining Arg"
-;  V73 tmp66        [V73,T55] (  3,  3   )     ref  ->  x26         class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.TaskCompletionSource`1[System.Threading.Tasks.Dataflow.Internal.VoidResult]>
-;  V74 tmp67        [V74,T76] (  2,  2   )     ref  ->  x25         class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.Dataflow.Internal.ReorderingBuffer`1[System.Nullable`1[int]]>
+;* V70 tmp63        [V70,T90] (  0,  0   )     ref  ->  zero-ref    class-hnd single-def "Inlining Arg" <System.Threading.Tasks.Dataflow.ExecutionDataflowBlockOptions>
+;  V71 tmp64        [V71,T53] (  3,  3   )     ref  ->  x25         class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.Dataflow.Internal.QueuedMap`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[long],System.Threading.Tasks.Dataflow.DataflowMessageHeader]>
+;  V72 tmp65        [V72,T78] (  2,  2   )     int  ->  x21         "Inlining Arg"
+;  V73 tmp66        [V73,T54] (  3,  3   )     ref  ->  x25         class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.TaskCompletionSource`1[System.Threading.Tasks.Dataflow.Internal.VoidResult]>
+;  V74 tmp67        [V74,T75] (  2,  2   )     ref  ->  x24         class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.Dataflow.Internal.ReorderingBuffer`1[System.Nullable`1[int]]>
 ;* V75 tmp68        [V75    ] (  0,  0   )     ref  ->  zero-ref    single-def
-;  V76 tmp69        [V76,T56] (  3,  3   )     ref  ->  x24         class-hnd exact single-def "NewObj constructor temp" <System.Collections.Concurrent.SingleProducerSingleConsumerQueue`1[System.Collections.Generic.KeyValuePair`2[long,long]]>
-;  V77 tmp70        [V77,T82] (  3,  1.50)     ref  ->  x24         class-hnd "Inline stloc first use temp" <System.Collections.Concurrent.IProducerConsumerQueue`1[System.Collections.Generic.KeyValuePair`2[long,long]]>
+;  V76 tmp69        [V76,T55] (  3,  3   )     ref  ->  x21         class-hnd exact single-def "NewObj constructor temp" <System.Collections.Concurrent.SingleProducerSingleConsumerQueue`1[System.Collections.Generic.KeyValuePair`2[long,long]]>
+;  V77 tmp70        [V77,T81] (  3,  1.50)     ref  ->  x21         class-hnd "Inline stloc first use temp" <System.Collections.Concurrent.IProducerConsumerQueue`1[System.Collections.Generic.KeyValuePair`2[long,long]]>
 ;* V78 tmp71        [V78    ] (  0,  0   )     ref  ->  zero-ref   
 ;* V79 tmp72        [V79    ] (  0,  0   )     ref  ->  zero-ref   
-;  V80 tmp73        [V80,T31] (  4,  4   )     ref  ->  x24         class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.Dataflow.Internal.BoundingStateWithPostponed`1[long]>
-;  V81 tmp74        [V81,T57] (  3,  3   )     ref  ->  x24         class-hnd exact single-def "NewObj constructor temp" <System.Collections.Concurrent.MultiProducerMultiConsumerQueue`1[System.Collections.Generic.KeyValuePair`2[long,long]]>
-;  V82 tmp75        [V82,T58] (  3,  3   )     ref  ->   x0         class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.Task`1[System.Threading.Tasks.Dataflow.Internal.VoidResult]>
+;  V80 tmp73        [V80,T30] (  4,  4   )     ref  ->  x24         class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.Dataflow.Internal.BoundingStateWithPostponed`1[long]>
+;  V81 tmp74        [V81,T56] (  3,  3   )     ref  ->  x21         class-hnd exact single-def "NewObj constructor temp" <System.Collections.Concurrent.MultiProducerMultiConsumerQueue`1[System.Collections.Generic.KeyValuePair`2[long,long]]>
+;  V82 tmp75        [V82,T57] (  3,  3   )     ref  ->   x0         class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.Task`1[System.Threading.Tasks.Dataflow.Internal.VoidResult]>
 ;* V83 tmp76        [V83    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <System.Threading.Tasks.Dataflow.ExecutionDataflowBlockOptions>
-;* V84 tmp77        [V84,T92] (  0,  0   )     ref  ->  zero-ref    class-hnd single-def "Inlining Arg" <System.Threading.Tasks.Dataflow.ExecutionDataflowBlockOptions>
-;  V85 tmp78        [V85,T59] (  3,  3   )     ref  ->  x25         class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.Dataflow.Internal.QueuedMap`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[long],System.Threading.Tasks.Dataflow.DataflowMessageHeader]>
-;  V86 tmp79        [V86,T80] (  2,  2   )     int  ->  x21         "Inlining Arg"
+;* V84 tmp77        [V84,T91] (  0,  0   )     ref  ->  zero-ref    class-hnd single-def "Inlining Arg" <System.Threading.Tasks.Dataflow.ExecutionDataflowBlockOptions>
+;  V85 tmp78        [V85,T58] (  3,  3   )     ref  ->  x25         class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.Dataflow.Internal.QueuedMap`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[long],System.Threading.Tasks.Dataflow.DataflowMessageHeader]>
+;  V86 tmp79        [V86,T79] (  2,  2   )     int  ->  x21         "Inlining Arg"
 ;* V87 tmp80        [V87    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.Threading.Tasks.Dataflow.Internal.TargetCore`1[long]>
 ;* V88 tmp81        [V88    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <System.Threading.Tasks.TaskCompletionSource`1[System.Threading.Tasks.Dataflow.Internal.VoidResult]>
-;  V89 tmp82        [V89,T60] (  3,  3   )     ref  ->  x15         class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.Dataflow.TransformBlock`2+<>c[long,System.Nullable`1[int]]>
+;  V89 tmp82        [V89,T59] (  3,  3   )     ref  ->  x15         class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.Dataflow.TransformBlock`2+<>c[long,System.Nullable`1[int]]>
 ;* V90 tmp83        [V90    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.Threading.CancellationToken>
-;  V91 tmp84        [V91,T38] (  2,  4   )     ref  ->  x26         class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.ThreadPoolTaskScheduler>
+;  V91 tmp84        [V91,T37] (  2,  4   )     ref  ->  x26         class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.ThreadPoolTaskScheduler>
 ;* V92 tmp85        [V92    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inline return value spill temp" <System.Threading.Tasks.ContinuationTaskFromTask>
 ;  V93 tmp86        [V93    ] (  2,  2   )     int  ->  [fp+0x38]  do-not-enreg[X] addr-exposed ld-addr-op "Inline ldloca(s) first use temp"
 ;  V94 tmp87        [V94    ] (  2,  2   )     int  ->  [fp+0x30]  do-not-enreg[X] addr-exposed ld-addr-op "Inline ldloca(s) first use temp"
 ;  V95 tmp88        [V95,T05] (  6, 11   )     ref  ->  x27         class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.ContinuationTaskFromTask>
 ;* V96 tmp89        [V96    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact single-def "Inline stloc first use temp" <System.Threading.Tasks.ContinuationTaskFromTask>
 ;  V97 tmp90        [V97,T10] (  4,  7   )     int  ->  x28         "Inlining Arg"
 ;* V98 tmp91        [V98    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.Threading.CancellationToken>
 ;  V99 tmp92        [V99,T20] (  4,  5   )     ref  ->  [fp+0x10]  class-hnd "impAppendStmt" <System.Threading.Tasks.Task>
-;  V100 tmp93       [V100,T42] (  2,  4   )     int  ->  [fp+0x2C]  spill-single-def "Inlining Arg"
+;  V100 tmp93       [V100,T41] (  2,  4   )     int  ->  [fp+0x2C]  spill-single-def "Inlining Arg"
 ;* V101 tmp94       [V101    ] (  0,  0   )  struct ( 8) zero-ref    "Inlining Arg" <System.Threading.CancellationToken>
 ;* V102 tmp95       [V102    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.Threading.Tasks.Dataflow.Internal.SourceCore`1[System.Nullable`1[int]]>
 ;* V103 tmp96       [V103    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <System.Threading.Tasks.TaskCompletionSource`1[System.Threading.Tasks.Dataflow.Internal.VoidResult]>
-;  V104 tmp97       [V104,T61] (  3,  3   )     ref  ->  x15         class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.Dataflow.TransformBlock`2+<>c[long,System.Nullable`1[int]]>
+;  V104 tmp97       [V104,T60] (  3,  3   )     ref  ->  x15         class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.Dataflow.TransformBlock`2+<>c[long,System.Nullable`1[int]]>
 ;* V105 tmp98       [V105    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.Threading.CancellationToken>
-;  V106 tmp99       [V106,T39] (  2,  4   )     ref  ->  x25         class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.ThreadPoolTaskScheduler>
+;  V106 tmp99       [V106,T38] (  2,  4   )     ref  ->  x25         class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.ThreadPoolTaskScheduler>
 ;* V107 tmp100      [V107    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inline return value spill temp" <System.Threading.Tasks.ContinuationTaskFromTask>
 ;  V108 tmp101      [V108    ] (  2,  2   )     int  ->  [fp+0x20]  do-not-enreg[X] addr-exposed ld-addr-op "Inline ldloca(s) first use temp"
 ;  V109 tmp102      [V109    ] (  2,  2   )     int  ->  [fp+0x18]  do-not-enreg[X] addr-exposed ld-addr-op "Inline ldloca(s) first use temp"
 ;  V110 tmp103      [V110,T06] (  6, 11   )     ref  ->  x24         class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.ContinuationTaskFromTask>
 ;* V111 tmp104      [V111    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact single-def "Inline stloc first use temp" <System.Threading.Tasks.ContinuationTaskFromTask>
 ;  V112 tmp105      [V112,T11] (  4,  7   )     int  ->  x26         "Inlining Arg"
 ;* V113 tmp106      [V113    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.Threading.CancellationToken>
 ;  V114 tmp107      [V114,T21] (  4,  5   )     ref  ->  x28         class-hnd "impAppendStmt" <System.Threading.Tasks.Task>
-;  V115 tmp108      [V115,T43] (  2,  4   )     int  ->  x27         "Inlining Arg"
+;  V115 tmp108      [V115,T42] (  2,  4   )     int  ->  x27         "Inlining Arg"
 ;* V116 tmp109      [V116    ] (  0,  0   )  struct ( 8) zero-ref    "Inlining Arg" <System.Threading.CancellationToken>
 ;* V117 tmp110      [V117    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.Threading.Tasks.Dataflow.Internal.SourceCore`1[System.Nullable`1[int]]>
 ;* V118 tmp111      [V118    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <System.Threading.Tasks.TaskCompletionSource`1[System.Threading.Tasks.Dataflow.Internal.VoidResult]>
-;  V119 tmp112      [V119,T62] (  3,  3   )     ref  ->  x15         class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.Dataflow.TransformBlock`2+<>c[long,System.Nullable`1[int]]>
-;  V120 tmp113      [V120,T77] (  2,  2   )     ref  ->  x20         class-hnd exact single-def "impAppendStmt" <System.String>
-;* V121 tmp114      [V121,T90] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;  V122 tmp115      [V122,T86] (  3,  1.50)     int  ->   x3         "Inline return value spill temp"
-;  V123 tmp116      [V123,T83] (  3,  1.50)     ref  ->   x0         class-hnd single-def "Inline stloc first use temp" <System.Threading.Tasks.Task>
-;* V124 tmp117      [V124,T93] (  0,  0   )     ref  ->  zero-ref    single-def "field V22._source (fldOffset=0x0)" P-INDEP
-;* V125 tmp118      [V125,T94] (  0,  0   )     ref  ->  zero-ref    single-def "field V28._source (fldOffset=0x0)" P-INDEP
-;  V126 tmp119      [V126,T78] (  2,  2   )     ref  ->  x21         single-def "field V30._source (fldOffset=0x0)" P-INDEP
+;  V119 tmp112      [V119,T61] (  3,  3   )     ref  ->  x15         class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.Dataflow.TransformBlock`2+<>c[long,System.Nullable`1[int]]>
+;  V120 tmp113      [V120,T76] (  2,  2   )     ref  ->  x20         class-hnd exact single-def "impAppendStmt" <System.String>
+;* V121 tmp114      [V121,T89] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
+;  V122 tmp115      [V122,T85] (  3,  1.50)     int  ->   x3         "Inline return value spill temp"
+;  V123 tmp116      [V123,T82] (  3,  1.50)     ref  ->   x0         class-hnd single-def "Inline stloc first use temp" <System.Threading.Tasks.Task>
+;* V124 tmp117      [V124,T92] (  0,  0   )     ref  ->  zero-ref    single-def "field V22._source (fldOffset=0x0)" P-INDEP
+;* V125 tmp118      [V125,T93] (  0,  0   )     ref  ->  zero-ref    single-def "field V28._source (fldOffset=0x0)" P-INDEP
+;  V126 tmp119      [V126,T77] (  2,  2   )     ref  ->  x21         single-def "field V30._source (fldOffset=0x0)" P-INDEP
 ;* V127 tmp120      [V127    ] (  0,  0   )     ref  ->  zero-ref    single-def "field V33._source (fldOffset=0x0)" P-INDEP
 ;* V128 tmp121      [V128    ] (  0,  0   )     ref  ->  zero-ref    single-def "field V90._source (fldOffset=0x0)" P-INDEP
 ;* V129 tmp122      [V129    ] (  0,  0   )     ref  ->  zero-ref    single-def "field V98._source (fldOffset=0x0)" P-INDEP
-;* V130 tmp123      [V130,T95] (  0,  0   )     ref  ->  zero-ref    single-def "field V101._source (fldOffset=0x0)" P-INDEP
+;* V130 tmp123      [V130,T94] (  0,  0   )     ref  ->  zero-ref    single-def "field V101._source (fldOffset=0x0)" P-INDEP
 ;* V131 tmp124      [V131    ] (  0,  0   )     ref  ->  zero-ref    single-def "field V105._source (fldOffset=0x0)" P-INDEP
 ;* V132 tmp125      [V132    ] (  0,  0   )     ref  ->  zero-ref    single-def "field V113._source (fldOffset=0x0)" P-INDEP
-;* V133 tmp126      [V133,T96] (  0,  0   )     ref  ->  zero-ref    single-def "field V116._source (fldOffset=0x0)" P-INDEP
-;  V134 tmp127      [V134,T40] (  2,  4   )     ref  ->   x1         single-def "argument with side effect"
-;  V135 tmp128      [V135,T41] (  2,  4   )     ref  ->   x1         single-def "argument with side effect"
+;* V133 tmp126      [V133,T95] (  0,  0   )     ref  ->  zero-ref    single-def "field V116._source (fldOffset=0x0)" P-INDEP
+;  V134 tmp127      [V134,T39] (  2,  4   )     ref  ->   x1         single-def "argument with side effect"
+;  V135 tmp128      [V135,T40] (  2,  4   )     ref  ->   x1         single-def "argument with side effect"
 ;* V136 tmp129      [V136    ] (  0,  0   )     ref  ->  zero-ref    "argument with side effect"
-;  V137 tmp130      [V137,T100] (  2,  0   )     ref  ->   x1         single-def "argument with side effect"
-;  V138 tmp131      [V138,T101] (  2,  0   )     ref  ->   x1         single-def "argument with side effect"
-;* V139 cse0        [V139,T89] (  0,  0   )    long  ->  zero-ref    multi-def "CSE #04: aggressive"
-;  V140 cse1        [V140,T87] (  3,  1.50)     int  ->  x21         "CSE #13: conservative"
-;  V141 cse2        [V141,T88] (  3,  1.50)     int  ->  x21         "CSE #21: conservative"
-;  V142 cse3        [V142,T63] (  3,  3   )     ref  ->  x25         "CSE #26: conservative"
-;  V143 cse4        [V143,T84] (  2,  1   )     ref  ->   x0         "CSE #12: conservative"
-;  V144 cse5        [V144,T85] (  2,  1   )     ref  ->   x0         "CSE #19: conservative"
+;  V137 tmp130      [V137,T99] (  2,  0   )     ref  ->   x1         single-def "argument with side effect"
+;  V138 tmp131      [V138,T100] (  2,  0   )     ref  ->   x1         single-def "argument with side effect"
+;* V139 cse0        [V139,T88] (  0,  0   )    long  ->  zero-ref    multi-def "CSE #04: aggressive"
+;  V140 cse1        [V140,T86] (  3,  1.50)     int  ->  x21         "CSE #15: conservative"
+;  V141 cse2        [V141,T87] (  3,  1.50)     int  ->  x21         "CSE #20: conservative"
+;  V142 cse3        [V142,T62] (  3,  3   )     ref  ->  x25         "CSE #24: conservative"
+;  V143 cse4        [V143,T83] (  2,  1   )     ref  ->   x0         "CSE #13: conservative"
+;  V144 cse5        [V144,T84] (  2,  1   )     ref  ->   x0         "CSE #19: conservative"
 ;  V145 cse6        [V145,T02] ( 20, 12.50)    long  ->  x22         multi-def "CSE #05: aggressive"
-;  V146 cse7        [V146,T27] (  8,  4   )    long  ->  x21         multi-def "CSE #11: moderate"
-;  V147 rat0        [V147,T71] (  3,  2   )   byref  ->   x2         "TLS field access"
-;  V148 rat1        [V148,T64] (  3,  3   )    long  ->   x2         "TLS access"
-;  V149 rat2        [V149,T65] (  3,  3   )    long  ->   x0         "ThreadStaticBlockBase access"
-;  V150 rat3        [V150,T72] (  3,  2   )   byref  ->   x1         "TLS field access"
-;  V151 rat4        [V151,T66] (  3,  3   )    long  ->   x0         "TLS access"
-;  V152 rat5        [V152,T67] (  3,  3   )    long  ->   x0         "ThreadStaticBlockBase access"
+;  V146 rat0        [V146,T70] (  3,  2   )   byref  ->   x2         "TLS field access"
+;  V147 rat1        [V147,T63] (  3,  3   )    long  ->   x2         "TLS access"
+;  V148 rat2        [V148,T64] (  3,  3   )    long  ->   x0         "ThreadStaticBlockBase access"
+;  V149 rat3        [V149,T71] (  3,  2   )   byref  ->   x1         "TLS field access"
+;  V150 rat4        [V150,T65] (  3,  3   )    long  ->   x0         "TLS access"
+;  V151 rat5        [V151,T66] (  3,  3   )    long  ->   x0         "ThreadStaticBlockBase access"
 ;
 ; Lcl frame size = 48
 
 G_M45976_IG01:
             stp     fp, lr, [sp, #-0x90]!
             stp     x19, x20, [sp, #0x40]
             stp     x21, x22, [sp, #0x50]
             stp     x23, x24, [sp, #0x60]
             stp     x25, x26, [sp, #0x70]
             stp     x27, x28, [sp, #0x80]
             mov     fp, sp
             mov     x19, x0
             mov     x21, x1
             mov     x22, x2
             mov     x20, x3
 						;; size=44 bbWeight=1 PerfScore 8.50
 G_M45976_IG02:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x23, x0
             add     x14, x23, #16
             mov     x15, x21
             bl      CORINFO_HELP_ASSIGN_REF
             add     x14, x23, #24
             mov     x15, x22
             bl      CORINFO_HELP_ASSIGN_REF
             add     x14, x23, #8
             mov     x15, x19
             bl      CORINFO_HELP_ASSIGN_REF
             cbz     x20, G_M45976_IG45
             ldr     x0, [x23, #0x10]
             cbnz    x0, G_M45976_IG04
 						;; size=68 bbWeight=1 PerfScore 14.00
 G_M45976_IG03:
             ldr     x0, [x23, #0x18]
             cbz     x0, G_M45976_IG46
 						;; size=8 bbWeight=0.50 PerfScore 2.00
 G_M45976_IG04:
             mov     x0, x20
             movz    x1, #0xD1FFAB1E      // code for System.Threading.Tasks.Dataflow.ExecutionDataflowBlockOptions:DefaultOrClone():System.Threading.Tasks.Dataflow.ExecutionDataflowBlockOptions:this
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
             mov     x20, x0
             mov     x21, xzr
             ldr     w0, [x20, #0x1C]
             cmp     w0, #0
             ble     G_M45976_IG06
 						;; size=44 bbWeight=1 PerfScore 11.50
 G_M45976_IG05:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             mov     w1, #0xD1FFAB1E
             bl      CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
             movz    x22, #0xD1FFAB1E      // data for System.Threading.Tasks.Dataflow.TransformBlock`2+<>c[long,System.Nullable`1[int]]:<>9__9_0
             movk    x22, #0xD1FFAB1E LSL #16
             movk    x22, #0xD1FFAB1E LSL #32
             ldr     x21, [x22]
             cbnz    x21, G_M45976_IG06
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x21, x0
             ldr     x15, [x22, #-0x08]
             cbz     x15, G_M45976_IG50
             add     x14, x21, #8
             bl      CORINFO_HELP_ASSIGN_REF
             movz    x14, #0xD1FFAB1E      // code for System.Threading.Tasks.Dataflow.TransformBlock`2+<>c[long,System.Nullable`1[int]]:<.ctor>b__9_0(System.Threading.Tasks.Dataflow.ISourceBlock`1[System.Nullable`1[int]],int):this
             movk    x14, #0xD1FFAB1E LSL #16
             movk    x14, #0xD1FFAB1E LSL #32
             str     x14, [x21, #0x18]
             mov     x14, x22
             mov     x15, x21
             bl      CORINFO_HELP_ASSIGN_REF
 						;; size=104 bbWeight=0.50 PerfScore 10.75
 G_M45976_IG06:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             mov     w1, #0xD1FFAB1E
             bl      CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
             movz    x22, #0xD1FFAB1E
             movk    x22, #0xD1FFAB1E LSL #16
             movk    x22, #0xD1FFAB1E LSL #32
             ldr     x24, [x22, #0x08]
             cbnz    x24, G_M45976_IG08
 						;; size=40 bbWeight=1 PerfScore 8.50
 G_M45976_IG07:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x24, x0
             ldr     x15, [x22, #-0x08]
             cbz     x15, G_M45976_IG50
             add     x14, x24, #8
             bl      CORINFO_HELP_ASSIGN_REF
             movz    x14, #0xD1FFAB1E      // code for System.Threading.Tasks.Dataflow.TransformBlock`2+<>c[long,System.Nullable`1[int]]:<.ctor>b__9_1(System.Threading.Tasks.Dataflow.ISourceBlock`1[System.Nullable`1[int]]):this
             movk    x14, #0xD1FFAB1E LSL #16
             movk    x14, #0xD1FFAB1E LSL #32
             str     x14, [x24, #0x18]
             add     x14, x22, #8
             mov     x15, x24
             bl      CORINFO_HELP_ASSIGN_REF
 						;; size=64 bbWeight=0.50 PerfScore 6.50
 G_M45976_IG08:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x25, x0
             mov     x1, x19
             mov     x2, x20
             mov     x3, x24
             mov     x4, x21
             mov     x5, xzr
             movz    x6, #0xD1FFAB1E      // code for System.Threading.Tasks.Dataflow.Internal.SourceCore`1[System.Nullable`1[int]]:.ctor(System.Threading.Tasks.Dataflow.ISourceBlock`1[System.Nullable`1[int]],System.Threading.Tasks.Dataflow.DataflowBlockOptions,System.Action`1[System.Threading.Tasks.Dataflow.ISourceBlock`1[System.Nullable`1[int]]],System.Action`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[System.Nullable`1[int]],int],System.Func`4[System.Threading.Tasks.Dataflow.ISourceBlock`1[System.Nullable`1[int]],System.Nullable`1[int],System.Collections.Generic.IList`1[System.Nullable`1[int]],int]):this
             movk    x6, #0xD1FFAB1E LSL #16
             movk    x6, #0xD1FFAB1E LSL #32
             ldr     x6, [x6]
             blr     x6
             add     x14, x19, #24
             mov     x15, x25
             bl      CORINFO_HELP_ASSIGN_REF
             ldr     w0, [x20, #0x30]
             cmn     w0, #1
             beq     G_M45976_IG10
 						;; size=84 bbWeight=1 PerfScore 17.50
 G_M45976_IG09:
             ldr     w0, [x20, #0x30]
             cmp     w0, #1
             ble     G_M45976_IG12
 						;; size=12 bbWeight=0.50 PerfScore 2.25
 G_M45976_IG10:
             ldrb    w0, [x20, #0x20]
             cbz     w0, G_M45976_IG12
             ldr     x21, [x22, #0x10]
             cbnz    x21, G_M45976_IG11
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x21, x0
             ldr     x15, [x22, #-0x08]
             cbz     x15, G_M45976_IG50
             add     x14, x21, #8
             bl      CORINFO_HELP_ASSIGN_REF
             movz    x14, #0xD1FFAB1E      // code for System.Threading.Tasks.Dataflow.TransformBlock`2+<>c[long,System.Nullable`1[int]]:<.ctor>b__9_2(System.Object,System.Nullable`1[int]):this
             movk    x14, #0xD1FFAB1E LSL #16
             movk    x14, #0xD1FFAB1E LSL #32
             str     x14, [x21, #0x18]
             add     x14, x22, #16
             mov     x15, x21
             bl      CORINFO_HELP_ASSIGN_REF
 						;; size=80 bbWeight=0.50 PerfScore 10.50
 G_M45976_IG11:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x24, x0
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x25, x0
             mov     w1, wzr
             mov     x2, xzr
             movz    x3, #0xD1FFAB1E      // code for System.Collections.Generic.Dictionary`2[long,System.Collections.Generic.KeyValuePair`2[ubyte,System.Nullable`1[int]]]:.ctor(int,System.Collections.Generic.IEqualityComparer`1[long]):this
             movk    x3, #0xD1FFAB1E LSL #16
             movk    x3, #0xD1FFAB1E LSL #32
             ldr     x3, [x3]
             blr     x3
             add     x14, x24, #16
             mov     x15, x25
             bl      CORINFO_HELP_ASSIGN_REF
             add     x14, x24, #8
             mov     x15, x19
             bl      CORINFO_HELP_ASSIGN_REF
             add     x14, x24, #24
             mov     x15, x21
             bl      CORINFO_HELP_ASSIGN_REF
             add     x14, x19, #16
             mov     x15, x24
             bl      CORINFO_HELP_ASSIGN_REF
 						;; size=116 bbWeight=0.50 PerfScore 10.25
 G_M45976_IG12:
             ldr     x0, [x23, #0x10]
             cbz     x0, G_M45976_IG17
 						;; size=8 bbWeight=1 PerfScore 4.00
 G_M45976_IG13:
-            movz    x21, #0xD1FFAB1E
-            movk    x21, #0xD1FFAB1E LSL #16
-            movk    x21, #0xD1FFAB1E LSL #32
-            mov     x0, x21
+            movz    x0, #0xD1FFAB1E
+            movk    x0, #0xD1FFAB1E LSL #16
+            movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
-            mov     x24, x0
-            add     x14, x24, #8
+            mov     x21, x0
+            add     x14, x21, #8
             mov     x15, x23
             bl      CORINFO_HELP_ASSIGN_REF
             movz    x0, #0xD1FFAB1E      // code for System.Threading.Tasks.Dataflow.TransformBlock`2+<>c__DisplayClass9_0[long,System.Nullable`1[int]]:<.ctor>b__3(System.Collections.Generic.KeyValuePair`2[long,long]):this
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
-            str     x0, [x24, #0x18]
+            str     x0, [x21, #0x18]
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x23, x0
-            ldr     x25, [x19, #0x10]
+            ldr     x24, [x19, #0x10]
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
-            mov     x26, x0
+            mov     x25, x0
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             add     x14, x0, #52
             movz    w15, #0xD1FFAB1E
             movk    w15, #0xD1FFAB1E LSL #16
             stlr    w15, [x14]
-            add     x14, x26, #8
+            add     x14, x25, #8
             mov     x15, x0
             bl      CORINFO_HELP_ASSIGN_REF
             add     x14, x23, #8
-            mov     x15, x26
+            mov     x15, x25
             bl      CORINFO_HELP_ASSIGN_REF
             add     x14, x23, #16
             mov     x15, x19
             bl      CORINFO_HELP_ASSIGN_REF
             add     x14, x23, #40
-            mov     x15, x24
+            mov     x15, x21
             bl      CORINFO_HELP_ASSIGN_REF
             add     x14, x23, #56
-            mov     x15, x25
+            mov     x15, x24
             bl      CORINFO_HELP_ASSIGN_REF
             add     x14, x23, #32
             mov     x15, x20
             bl      CORINFO_HELP_ASSIGN_REF
             strb    wzr, [x23, #0x54]
             ldr     w0, [x20, #0x30]
             cmp     w0, #1
             beq     G_M45976_IG14
-            add     x0, x21, #0xD1FFAB1E
+            movz    x0, #0xD1FFAB1E
+            movk    x0, #0xD1FFAB1E LSL #16
+            movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
-            mov     x24, x0
+            mov     x21, x0
             movz    x1, #0xD1FFAB1E      // code for System.Collections.Concurrent.ConcurrentQueue`1[System.Collections.Generic.KeyValuePair`2[long,long]]:.ctor():this
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
             b       G_M45976_IG15
-						;; size=252 bbWeight=0.50 PerfScore 24.00
+						;; size=256 bbWeight=0.50 PerfScore 24.25
 G_M45976_IG14:
-            add     x0, x21, #0xD1FFAB1E
+            movz    x0, #0xD1FFAB1E
+            movk    x0, #0xD1FFAB1E LSL #16
+            movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
-            mov     x24, x0
+            mov     x21, x0
             movz    x1, #0xD1FFAB1E      // code for System.Collections.Concurrent.SingleProducerSingleConsumerQueue`1[System.Collections.Generic.KeyValuePair`2[long,long]]:.ctor():this
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
-						;; size=32 bbWeight=0.50 PerfScore 3.75
+						;; size=40 bbWeight=0.50 PerfScore 4.25
 G_M45976_IG15:
             add     x14, x23, #24
-            mov     x15, x24
+            mov     x15, x21
             bl      CORINFO_HELP_ASSIGN_REF
             ldr     x0, [x23, #0x20]
             ldr     w21, [x0, #0x1C]
             cmn     w21, #1
             beq     G_M45976_IG16
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x24, x0
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x25, x0
             movz    x1, #0xD1FFAB1E      // code for System.Threading.Tasks.Dataflow.Internal.QueuedMap`2[System.__Canon,System.Threading.Tasks.Dataflow.DataflowMessageHeader]:.ctor():this
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
             add     x14, x24, #16
             mov     x15, x25
             bl      CORINFO_HELP_ASSIGN_REF
             str     w21, [x24, #0x08]
             add     x14, x23, #48
             mov     x15, x24
             bl      CORINFO_HELP_ASSIGN_REF
 						;; size=116 bbWeight=0.50 PerfScore 13.00
 G_M45976_IG16:
             add     x14, x19, #8
             mov     x15, x23
             bl      CORINFO_HELP_ASSIGN_REF
             b       G_M45976_IG21
 						;; size=16 bbWeight=0.50 PerfScore 1.50
 G_M45976_IG17:
-            movz    x21, #0xD1FFAB1E
-            movk    x21, #0xD1FFAB1E LSL #16
-            movk    x21, #0xD1FFAB1E LSL #32
-            mov     x0, x21
+            movz    x0, #0xD1FFAB1E
+            movk    x0, #0xD1FFAB1E LSL #16
+            movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
-            mov     x24, x0
-            add     x14, x24, #8
+            mov     x21, x0
+            add     x14, x21, #8
             mov     x15, x23
             bl      CORINFO_HELP_ASSIGN_REF
             movz    x0, #0xD1FFAB1E      // code for System.Threading.Tasks.Dataflow.TransformBlock`2+<>c__DisplayClass9_0[long,System.Nullable`1[int]]:<.ctor>b__4(System.Collections.Generic.KeyValuePair`2[long,long]):this
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
-            str     x0, [x24, #0x18]
+            str     x0, [x21, #0x18]
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x23, x0
-            ldr     x25, [x19, #0x10]
+            ldr     x24, [x19, #0x10]
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
-            mov     x26, x0
+            mov     x25, x0
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             add     x14, x0, #52
             movz    w15, #0xD1FFAB1E
             movk    w15, #0xD1FFAB1E LSL #16
             stlr    w15, [x14]
-            add     x14, x26, #8
+            add     x14, x25, #8
             mov     x15, x0
             bl      CORINFO_HELP_ASSIGN_REF
             add     x14, x23, #8
-            mov     x15, x26
+            mov     x15, x25
             bl      CORINFO_HELP_ASSIGN_REF
             add     x14, x23, #16
             mov     x15, x19
             bl      CORINFO_HELP_ASSIGN_REF
             add     x14, x23, #40
-            mov     x15, x24
+            mov     x15, x21
             bl      CORINFO_HELP_ASSIGN_REF
             add     x14, x23, #56
-            mov     x15, x25
+            mov     x15, x24
             bl      CORINFO_HELP_ASSIGN_REF
             add     x14, x23, #32
             mov     x15, x20
             bl      CORINFO_HELP_ASSIGN_REF
             mov     w0, #1
             strb    w0, [x23, #0x54]
             ldr     w0, [x20, #0x30]
             cmp     w0, #1
             beq     G_M45976_IG18
-            add     x0, x21, #0xD1FFAB1E
+            movz    x0, #0xD1FFAB1E
+            movk    x0, #0xD1FFAB1E LSL #16
+            movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
-            mov     x24, x0
+            mov     x21, x0
             movz    x1, #0xD1FFAB1E      // code for System.Collections.Concurrent.ConcurrentQueue`1[System.Collections.Generic.KeyValuePair`2[long,long]]:.ctor():this
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
             b       G_M45976_IG19
-						;; size=256 bbWeight=0.50 PerfScore 24.25
+						;; size=260 bbWeight=0.50 PerfScore 24.50
 G_M45976_IG18:
-            add     x0, x21, #0xD1FFAB1E
+            movz    x0, #0xD1FFAB1E
+            movk    x0, #0xD1FFAB1E LSL #16
+            movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
-            mov     x24, x0
+            mov     x21, x0
             movz    x1, #0xD1FFAB1E      // code for System.Collections.Concurrent.SingleProducerSingleConsumerQueue`1[System.Collections.Generic.KeyValuePair`2[long,long]]:.ctor():this
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
-						;; size=32 bbWeight=0.50 PerfScore 3.75
+						;; size=40 bbWeight=0.50 PerfScore 4.25
 G_M45976_IG19:
             add     x14, x23, #24
-            mov     x15, x24
+            mov     x15, x21
             bl      CORINFO_HELP_ASSIGN_REF
             ldr     x0, [x23, #0x20]
             ldr     w21, [x0, #0x1C]
             cmn     w21, #1
             beq     G_M45976_IG20
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x24, x0
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x25, x0
             movz    x1, #0xD1FFAB1E      // code for System.Threading.Tasks.Dataflow.Internal.QueuedMap`2[System.__Canon,System.Threading.Tasks.Dataflow.DataflowMessageHeader]:.ctor():this
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
             add     x14, x24, #16
             mov     x15, x25
             bl      CORINFO_HELP_ASSIGN_REF
             str     w21, [x24, #0x08]
             add     x14, x23, #48
             mov     x15, x24
             bl      CORINFO_HELP_ASSIGN_REF
 						;; size=116 bbWeight=0.50 PerfScore 13.00
 G_M45976_IG20:
             add     x14, x19, #8
             mov     x15, x23
             bl      CORINFO_HELP_ASSIGN_REF
 						;; size=12 bbWeight=0.50 PerfScore 1.00
 G_M45976_IG21:
             ldr     x0, [x19, #0x08]
             ldr     x0, [x0, #0x08]
             ldr     x21, [x0, #0x08]
             ldr     x23, [x22, #0x18]
             cbnz    x23, G_M45976_IG23
 						;; size=20 bbWeight=1 PerfScore 13.00
 G_M45976_IG22:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x23, x0
             ldr     x15, [x22, #-0x08]
             cbz     x15, G_M45976_IG50
             add     x14, x23, #8
             bl      CORINFO_HELP_ASSIGN_REF
             movz    x14, #0xD1FFAB1E      // code for System.Threading.Tasks.Dataflow.TransformBlock`2+<>c[long,System.Nullable`1[int]]:<.ctor>b__9_5(System.Threading.Tasks.Task,System.Object):this
             movk    x14, #0xD1FFAB1E LSL #16
             movk    x14, #0xD1FFAB1E LSL #32
             str     x14, [x23, #0x18]
             add     x14, x22, #24
             mov     x15, x23
             bl      CORINFO_HELP_ASSIGN_REF
 						;; size=64 bbWeight=0.50 PerfScore 6.50
 G_M45976_IG23:
             ldr     x24, [x19, #0x18]
             movz    x2, #0xD1FFAB1E
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x25, [x2]
             mov     x26, x25
             ldrsb   wzr, [x21]
             cbz     x23, G_M45976_IG48
             add     x2, fp, #48	// [V94 tmp87]
             add     x1, fp, #56	// [V93 tmp86]
             mov     w0, #8
             movz    x3, #0xD1FFAB1E      // code for System.Threading.Tasks.Task:CreationOptionsFromContinuationOptions(int,byref,byref)
             movk    x3, #0xD1FFAB1E LSL #16
             movk    x3, #0xD1FFAB1E LSL #32
             ldr     x3, [x3]
             blr     x3
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x27, x0
             ldr     w28, [fp, #0x38]	// [V93 tmp86]
             ldr     w1, [fp, #0x30]	// [V94 tmp87]
             str     w1, [fp, #0x2C]	// [V100 tmp93]
             tbnz    w28, #2, G_M45976_IG25
 						;; size=100 bbWeight=1 PerfScore 28.00
 G_M45976_IG24:
             mov     x2, xzr
             b       G_M45976_IG27
 						;; size=8 bbWeight=0.50 PerfScore 0.75
 G_M45976_IG25:
             mrs     x2, tpidr_el0
             ldr     w0, [x2, #0xD1FFAB1E]
             cmp     w0, #6
             blt     G_M45976_IG47
             ldr     x0, [x2, #0xD1FFAB1E]
             ldr     x0, [x0, #0x30]
             cbz     x0, G_M45976_IG47
             ldr     x0, [x0]
             add     x2, x0, #16
 						;; size=36 bbWeight=0.50 PerfScore 8.00
 G_M45976_IG26:
             ldr     x2, [x2, #0x50]
 						;; size=4 bbWeight=0.50 PerfScore 1.50
 G_M45976_IG27:
             str     x2, [fp, #0x10]	// [V99 tmp92]
             cbz     x2, G_M45976_IG29
 						;; size=8 bbWeight=1 PerfScore 2.00
 G_M45976_IG28:
             tbz     w28, #2, G_M45976_IG29
             mov     x0, x27
             movz    x3, #0xD1FFAB1E      // code for System.Threading.Tasks.Task:EnsureContingentPropertiesInitializedUnsafe():System.Threading.Tasks.Task+ContingentProperties:this
             movk    x3, #0xD1FFAB1E LSL #16
             movk    x3, #0xD1FFAB1E LSL #32
             ldr     x3, [x3]
             blr     x3
             add     x14, x0, #48
             ldr     x15, [fp, #0x10]	// [V99 tmp92]
             bl      CORINFO_HELP_ASSIGN_REF
 						;; size=40 bbWeight=0.50 PerfScore 5.25
 G_M45976_IG29:
             mov     x0, x27
             mov     x1, x23
             mov     x2, x24
             mov     x3, xzr
             mov     w4, w28
             ldr     w5, [fp, #0x2C]	// [V100 tmp93]
             mov     x6, xzr
             movz    x7, #0xD1FFAB1E      // code for System.Threading.Tasks.Task:TaskConstructorCore(System.Delegate,System.Object,System.Threading.CancellationToken,int,int,System.Threading.Tasks.TaskScheduler):this
             movk    x7, #0xD1FFAB1E LSL #16
             movk    x7, #0xD1FFAB1E LSL #32
             ldr     x7, [x7]
             blr     x7
             movz    x0, #0xD1FFAB1E      // code for System.Threading.ExecutionContext:Capture():System.Threading.ExecutionContext
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             ldr     x0, [x0]
             blr     x0
             mov     x1, x0
             mov     x0, x27
             movz    x2, #0xD1FFAB1E      // code for System.Threading.Tasks.Task:set_CapturedContext(System.Threading.ExecutionContext):this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             add     x14, x27, #56
             mov     x15, x21
             bl      CORINFO_HELP_ASSIGN_REF
             mov     x0, x21
             mov     x1, x27
             mov     x2, x26
             mov     x3, xzr
             mov     w4, #8
             movz    x5, #0xD1FFAB1E      // code for System.Threading.Tasks.Task:ContinueWithCore(System.Threading.Tasks.Task,System.Threading.Tasks.TaskScheduler,System.Threading.CancellationToken,int):this
             movk    x5, #0xD1FFAB1E LSL #16
             movk    x5, #0xD1FFAB1E LSL #32
             ldr     x5, [x5]
             blr     x5
             ldr     x0, [x19, #0x18]
             ldr     x0, [x0, #0x08]
             ldr     x21, [x0, #0x08]
             ldr     x23, [x22, #0x20]
             cbnz    x23, G_M45976_IG31
 						;; size=168 bbWeight=1 PerfScore 45.50
 G_M45976_IG30:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x23, x0
             ldr     x15, [x22, #-0x08]
             cbz     x15, G_M45976_IG50
             add     x14, x23, #8
             bl      CORINFO_HELP_ASSIGN_REF
             movz    x14, #0xD1FFAB1E      // code for System.Threading.Tasks.Dataflow.TransformBlock`2+<>c[long,System.Nullable`1[int]]:<.ctor>b__9_6(System.Threading.Tasks.Task,System.Object):this
             movk    x14, #0xD1FFAB1E LSL #16
             movk    x14, #0xD1FFAB1E LSL #32
             str     x14, [x23, #0x18]
             add     x14, x22, #32
             mov     x15, x23
             bl      CORINFO_HELP_ASSIGN_REF
 						;; size=64 bbWeight=0.50 PerfScore 6.50
 G_M45976_IG31:
             ldrsb   wzr, [x21]
             cbz     x23, G_M45976_IG48
             add     x2, fp, #24	// [V109 tmp102]
             add     x1, fp, #32	// [V108 tmp101]
             movz    w0, #8
             movk    w0, #5 LSL #16
             movz    x3, #0xD1FFAB1E      // code for System.Threading.Tasks.Task:CreationOptionsFromContinuationOptions(int,byref,byref)
             movk    x3, #0xD1FFAB1E LSL #16
             movk    x3, #0xD1FFAB1E LSL #32
             ldr     x3, [x3]
             blr     x3
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x24, x0
             ldr     w26, [fp, #0x20]	// [V108 tmp101]
             ldr     w27, [fp, #0x18]	// [V109 tmp102]
             tbnz    w26, #2, G_M45976_IG33
 						;; size=76 bbWeight=1 PerfScore 19.50
 G_M45976_IG32:
             mov     x28, xzr
             b       G_M45976_IG35
 						;; size=8 bbWeight=0.50 PerfScore 0.75
 G_M45976_IG33:
             mrs     x0, tpidr_el0
             ldr     w1, [x0, #0xD1FFAB1E]
             cmp     w1, #6
             blt     G_M45976_IG49
             ldr     x0, [x0, #0xD1FFAB1E]
             ldr     x0, [x0, #0x30]
             cbz     x0, G_M45976_IG49
             ldr     x0, [x0]
             add     x1, x0, #16
 						;; size=36 bbWeight=0.50 PerfScore 8.00
 G_M45976_IG34:
             ldr     x28, [x1, #0x50]
 						;; size=4 bbWeight=0.50 PerfScore 1.50
 G_M45976_IG35:
             cbz     x28, G_M45976_IG37
 						;; size=4 bbWeight=1 PerfScore 1.00
 G_M45976_IG36:
             tbz     w26, #2, G_M45976_IG37
             mov     x0, x24
             movz    x1, #0xD1FFAB1E      // code for System.Threading.Tasks.Task:EnsureContingentPropertiesInitializedUnsafe():System.Threading.Tasks.Task+ContingentProperties:this
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
             add     x14, x0, #48
             mov     x15, x28
             bl      CORINFO_HELP_ASSIGN_REF
 						;; size=40 bbWeight=0.50 PerfScore 4.50
 G_M45976_IG37:
             mov     x0, x24
             mov     x1, x23
             mov     x2, x19
             mov     x3, xzr
             mov     w4, w26
             mov     w5, w27
             mov     x6, xzr
             movz    x7, #0xD1FFAB1E      // code for System.Threading.Tasks.Task:TaskConstructorCore(System.Delegate,System.Object,System.Threading.CancellationToken,int,int,System.Threading.Tasks.TaskScheduler):this
             movk    x7, #0xD1FFAB1E LSL #16
             movk    x7, #0xD1FFAB1E LSL #32
             ldr     x7, [x7]
             blr     x7
             movz    x0, #0xD1FFAB1E      // code for System.Threading.ExecutionContext:Capture():System.Threading.ExecutionContext
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             ldr     x0, [x0]
             blr     x0
             mov     x1, x0
             mov     x0, x24
             movz    x2, #0xD1FFAB1E      // code for System.Threading.Tasks.Task:set_CapturedContext(System.Threading.ExecutionContext):this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             add     x14, x24, #56
             mov     x15, x21
             bl      CORINFO_HELP_ASSIGN_REF
             mov     x0, x21
             mov     x1, x24
             mov     x2, x25
             mov     x3, xzr
             movz    w4, #8
             movk    w4, #5 LSL #16
             movz    x5, #0xD1FFAB1E      // code for System.Threading.Tasks.Task:ContinueWithCore(System.Threading.Tasks.Task,System.Threading.Tasks.TaskScheduler,System.Threading.CancellationToken,int):this
             movk    x5, #0xD1FFAB1E LSL #16
             movk    x5, #0xD1FFAB1E LSL #32
             ldr     x5, [x5]
             blr     x5
             ldr     x21, [x20, #0x28]
             ldr     x0, [x19, #0x18]
             ldr     x0, [x0, #0x08]
             ldr     x23, [x0, #0x08]
             ldr     x2, [x22, #0x28]
             cbnz    x2, G_M45976_IG39
 						;; size=176 bbWeight=1 PerfScore 47.50
 G_M45976_IG38:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x2, x0
             ldr     x15, [x22, #-0x08]
             cbz     x15, G_M45976_IG50
             add     x14, x2, #8
             bl      CORINFO_HELP_ASSIGN_REF
             movz    x14, #0xD1FFAB1E      // code for System.Threading.Tasks.Dataflow.TransformBlock`2+<>c[long,System.Nullable`1[int]]:<.ctor>b__9_7(System.Object,System.Threading.CancellationToken):this
             movk    x14, #0xD1FFAB1E LSL #16
             movk    x14, #0xD1FFAB1E LSL #32
             str     x14, [x2, #0x18]
             add     x14, x22, #40
             mov     x15, x2
             bl      CORINFO_HELP_ASSIGN_REF
 						;; size=64 bbWeight=0.50 PerfScore 6.50
 G_M45976_IG39:
             ldr     x3, [x19, #0x08]
             mov     x0, x21
             mov     x1, x23
             movz    x4, #0xD1FFAB1E      // code for System.Threading.Tasks.Dataflow.Internal.Common:WireCancellationToComplete(System.Threading.CancellationToken,System.Threading.Tasks.Task,System.Action`2[System.Object,System.Threading.CancellationToken],System.Object)
             movk    x4, #0xD1FFAB1E LSL #16
             movk    x4, #0xD1FFAB1E LSL #32
             ldr     x4, [x4]
             blr     x4
             movz    x1, #0xD1FFAB1E
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     w1, [x1]
             tbz     w1, #0, G_M45976_IG51
 						;; size=52 bbWeight=1 PerfScore 15.00
 G_M45976_IG40:
             movz    x1, #0xD1FFAB1E      // data for System.Threading.Tasks.Dataflow.Internal.DataflowEtwProvider:Log
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x22, [x1]
             ldrb    w1, [x22, #0x9D]
             cbz     w1, G_M45976_IG44
 						;; size=24 bbWeight=1 PerfScore 8.50
 G_M45976_IG41:
             ldrb    w1, [x22, #0x9D]
             ldr     x3, [x22, #0x80]
             ldr     w2, [x22, #0x98]
             mov     x0, x22
             mov     w4, #4
             movn    x5, #0
             mov     w6, wzr
             movz    x7, #0xD1FFAB1E      // code for System.Diagnostics.Tracing.EventSource:IsEnabledCommon(ubyte,int,long,int,long,ubyte):ubyte:this
             movk    x7, #0xD1FFAB1E LSL #16
             movk    x7, #0xD1FFAB1E LSL #32
             ldr     x7, [x7]
             blr     x7
             cbz     w0, G_M45976_IG44
             mov     x0, x19
             mov     x1, x20
             movz    x2, #0xD1FFAB1E      // code for System.Threading.Tasks.Dataflow.Internal.Common:GetNameForDebugger(System.Threading.Tasks.Dataflow.IDataflowBlock,System.Threading.Tasks.Dataflow.DataflowBlockOptions):System.String
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             mov     x20, x0
             mov     x0, x19
             movz    x1, #0xD1FFAB1E      // code for System.Threading.Tasks.Dataflow.Internal.Common:GetPotentiallyNotSupportedCompletionTask(System.Threading.Tasks.Dataflow.IDataflowBlock):System.Threading.Tasks.Task
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
             cbnz    x0, G_M45976_IG42
             mov     w3, wzr
             b       G_M45976_IG43
 						;; size=120 bbWeight=0.50 PerfScore 16.50
 G_M45976_IG42:
             movz    x1, #0xD1FFAB1E      // code for System.Threading.Tasks.Task:get_Id():int:this
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
             sxtw    w3, w0
 						;; size=24 bbWeight=0.50 PerfScore 3.00
 G_M45976_IG43:
             mov     x0, x22
             mov     x2, x20
             mov     w1, #1
             movz    x4, #0xD1FFAB1E      // code for System.Diagnostics.Tracing.EventSource:WriteEvent(int,System.String,int):this
             movk    x4, #0xD1FFAB1E LSL #16
             movk    x4, #0xD1FFAB1E LSL #32
             ldr     x4, [x4]
             blr     x4
 						;; size=32 bbWeight=0.50 PerfScore 3.50
 G_M45976_IG44:
             ldp     x27, x28, [sp, #0x80]
             ldp     x25, x26, [sp, #0x70]
             ldp     x23, x24, [sp, #0x60]
             ldp     x21, x22, [sp, #0x50]
             ldp     x19, x20, [sp, #0x40]
             ldp     fp, lr, [sp], #0x90
             ret     lr
 						;; size=28 bbWeight=1 PerfScore 7.00
 G_M45976_IG45:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x19, x0
             mov     w0, #0xD1FFAB1E
             movz    x1, #0xD1FFAB1E
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_STRCNS
             mov     x1, x0
             mov     x0, x19
             movz    x2, #0xD1FFAB1E      // code for System.ArgumentNullException:.ctor(System.String):this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             mov     x0, x19
             bl      CORINFO_HELP_THROW
             brk_unix #0
 						;; size=80 bbWeight=0 PerfScore 0.00
 G_M45976_IG46:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x24, x0
             mov     w0, #0xD1FFAB1E
             movz    x1, #0xD1FFAB1E
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_STRCNS
             mov     x1, x0
             mov     x0, x24
             movz    x2, #0xD1FFAB1E      // code for System.ArgumentNullException:.ctor(System.String):this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             mov     x0, x24
             bl      CORINFO_HELP_THROW
             brk_unix #0
 						;; size=80 bbWeight=0 PerfScore 0.00
 G_M45976_IG47:
             mov     w0, #6
             bl      CORINFO_HELP_GETSHARED_GCTHREADSTATIC_BASE_NOCTOR_OPTIMIZED
             mov     x2, x0
             b       G_M45976_IG26
 						;; size=16 bbWeight=0 PerfScore 0.00
 G_M45976_IG48:
             mov     w0, #49
             movz    x1, #0xD1FFAB1E      // code for System.ThrowHelper:ThrowArgumentNullException(int)
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
             brk_unix #0
 						;; size=28 bbWeight=0 PerfScore 0.00
 G_M45976_IG49:
             mov     w0, #6
             bl      CORINFO_HELP_GETSHARED_GCTHREADSTATIC_BASE_NOCTOR_OPTIMIZED
             mov     x1, x0
             b       G_M45976_IG34
 						;; size=16 bbWeight=0 PerfScore 0.00
 G_M45976_IG50:
             movz    x0, #0xD1FFAB1E      // code for System.MulticastDelegate:ThrowNullThisInDelegateToInstance()
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             ldr     x0, [x0]
             blr     x0
             brk_unix #0
 						;; size=24 bbWeight=0 PerfScore 0.00
 G_M45976_IG51:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             mov     w1, #124
             bl      CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
             b       G_M45976_IG40
 						;; size=24 bbWeight=0 PerfScore 0.00
 
-; Total bytes of code 2972, prolog size 28, PerfScore 450.25, instruction count 743, allocated bytes for code 2972 (MethodHash=f6124c67) for method System.Threading.Tasks.Dataflow.TransformBlock`2[long,System.Nullable`1[int]]:.ctor(System.Func`2[long,System.Nullable`1[int]],System.Func`2[long,System.Threading.Tasks.Task`1[System.Nullable`1[int]]],System.Threading.Tasks.Dataflow.ExecutionDataflowBlockOptions):this (FullOpts)
+; Total bytes of code 2996, prolog size 28, PerfScore 451.75, instruction count 749, allocated bytes for code 2996 (MethodHash=f6124c67) for method System.Threading.Tasks.Dataflow.TransformBlock`2[long,System.Nullable`1[int]]:.ctor(System.Func`2[long,System.Nullable`1[int]],System.Func`2[long,System.Threading.Tasks.Task`1[System.Nullable`1[int]]],System.Threading.Tasks.Dataflow.ExecutionDataflowBlockOptions):this (FullOpts)
24 (0.81 % of base) - System.Threading.Tasks.Dataflow.TransformBlock`2[ubyte,System.Nullable`1[int]]:.ctor(System.Func`2[ubyte,System.Nullable`1[int]],System.Func`2[ubyte,System.Threading.Tasks.Task`1[System.Nullable`1[int]]],System.Threading.Tasks.Dataflow.ExecutionDataflowBlockOptions):this
 ; Assembly listing for method System.Threading.Tasks.Dataflow.TransformBlock`2[ubyte,System.Nullable`1[int]]:.ctor(System.Func`2[ubyte,System.Nullable`1[int]],System.Func`2[ubyte,System.Threading.Tasks.Task`1[System.Nullable`1[int]]],System.Threading.Tasks.Dataflow.ExecutionDataflowBlockOptions):this (FullOpts)
 ; Emitting BLENDED_CODE for generic ARM64 - Unix
 ; FullOpts code
 ; optimized code
 ; fp based frame
 ; partially interruptible
 ; No PGO data
 ; 0 inlinees with PGO data; 60 single block inlinees; 20 inlinees without PGO data
 ; Final local variable assignments
 ;
 ;  V00 this         [V00,T00] ( 21, 16   )     ref  ->  x19         this class-hnd single-def <System.Threading.Tasks.Dataflow.TransformBlock`2[ubyte,System.Nullable`1[int]]>
 ;  V01 arg1         [V01,T22] (  3,  3   )     ref  ->  x21         class-hnd single-def <System.Func`2[ubyte,System.Nullable`1[int]]>
 ;  V02 arg2         [V02,T23] (  3,  3   )     ref  ->  x22         class-hnd single-def <System.Func`2[ubyte,System.Threading.Tasks.Task`1[System.Nullable`1[int]]]>
 ;  V03 arg3         [V03,T01] ( 16, 12.50)     ref  ->  x20         class-hnd <System.Threading.Tasks.Dataflow.ExecutionDataflowBlockOptions>
 ;  V04 loc0         [V04,T09] (  9,  7.50)     ref  ->  x23         class-hnd exact single-def <System.Threading.Tasks.Dataflow.TransformBlock`2+<>c__DisplayClass9_0[ubyte,System.Nullable`1[int]]>
-;  V05 loc1         [V05,T68] (  3,  2.50)     ref  ->  x21         class-hnd <System.Action`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[System.Nullable`1[int]],int]>
+;  V05 loc1         [V05,T67] (  3,  2.50)     ref  ->  x21         class-hnd <System.Action`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[System.Nullable`1[int]],int]>
 ;  V06 loc2         [V06,T24] (  7,  4.50)     ref  ->  x22         class-hnd exact single-def <System.Threading.Tasks.Dataflow.Internal.DataflowEtwProvider>
 ;# V07 OutArgs      [V07    ] (  1,  1   )  struct ( 0) [sp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
 ;* V08 tmp1         [V08    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "NewObj constructor temp" <System.Threading.Tasks.Dataflow.TransformBlock`2+<>c__DisplayClass9_0[ubyte,System.Nullable`1[int]]>
-;  V09 tmp2         [V09,T32] (  2,  4   )     ref  ->  x24         class-hnd single-def "dup spill" <System.Action`1[System.Threading.Tasks.Dataflow.ISourceBlock`1[System.Nullable`1[int]]]>
+;  V09 tmp2         [V09,T31] (  2,  4   )     ref  ->  x24         class-hnd single-def "dup spill" <System.Action`1[System.Threading.Tasks.Dataflow.ISourceBlock`1[System.Nullable`1[int]]]>
 ;* V10 tmp3         [V10    ] (  0,  0   )     ref  ->  zero-ref    single-def
 ;* V11 tmp4         [V11    ] (  0,  0   )     ref  ->  zero-ref    single-def
 ;* V12 tmp5         [V12    ] (  0,  0   )     ref  ->  zero-ref    single-def
-;  V13 tmp6         [V13,T44] (  4,  3.50)     ref  ->  x24        
+;  V13 tmp6         [V13,T43] (  4,  3.50)     ref  ->  x24        
 ;  V14 tmp7         [V14,T12] (  3,  6   )     ref  ->  x25         class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.Dataflow.Internal.SourceCore`1[System.Nullable`1[int]]>
-;  V15 tmp8         [V15,T28] (  4,  4   )     ref  ->  x24         class-hnd exact single-def "NewObj constructor temp" <System.Action`1[System.Collections.Generic.KeyValuePair`2[ubyte,long]]>
+;  V15 tmp8         [V15,T27] (  4,  4   )     ref  ->  x21         class-hnd exact single-def "NewObj constructor temp" <System.Action`1[System.Collections.Generic.KeyValuePair`2[ubyte,long]]>
 ;  V16 tmp9         [V16,T03] ( 11, 11   )     ref  ->  x23         class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.Dataflow.Internal.TargetCore`1[ubyte]>
-;  V17 tmp10        [V17,T33] (  2,  4   )     ref  ->  x23         class-hnd single-def "dup spill" <System.Action`2[System.Threading.Tasks.Task,System.Object]>
+;  V17 tmp10        [V17,T32] (  2,  4   )     ref  ->  x23         class-hnd single-def "dup spill" <System.Action`2[System.Threading.Tasks.Task,System.Object]>
 ;  V18 tmp11        [V18,T07] (  4,  8   )     ref  ->  x21         class-hnd single-def "impAppendStmt" <System.Threading.Tasks.Task`1[System.Threading.Tasks.Dataflow.Internal.VoidResult]>
 ;* V19 tmp12        [V19    ] (  0,  0   )     ref  ->  zero-ref    single-def
 ;  V20 tmp13        [V20,T25] (  5,  4.50)     ref  ->  x23        
-;  V21 tmp14        [V21,T34] (  2,  4   )     ref  ->  x24         class-hnd exact single-def "impAppendStmt" <System.Threading.Tasks.Dataflow.Internal.SourceCore`1[System.Nullable`1[int]]>
+;  V21 tmp14        [V21,T33] (  2,  4   )     ref  ->  x24         class-hnd exact single-def "impAppendStmt" <System.Threading.Tasks.Dataflow.Internal.SourceCore`1[System.Nullable`1[int]]>
 ;* V22 tmp15        [V22    ] (  0,  0   )  struct ( 8) zero-ref    "impAppendStmt" <System.Threading.CancellationToken>
 ;* V23 tmp16        [V23    ] (  0,  0   )     int  ->  zero-ref    "impAppendStmt"
-;  V24 tmp17        [V24,T35] (  2,  4   )     ref  ->  x23         class-hnd single-def "dup spill" <System.Action`2[System.Threading.Tasks.Task,System.Object]>
+;  V24 tmp17        [V24,T34] (  2,  4   )     ref  ->  x23         class-hnd single-def "dup spill" <System.Action`2[System.Threading.Tasks.Task,System.Object]>
 ;  V25 tmp18        [V25,T08] (  4,  8   )     ref  ->  x21         class-hnd single-def "impAppendStmt" <System.Threading.Tasks.Task`1[System.Threading.Tasks.Dataflow.Internal.VoidResult]>
 ;* V26 tmp19        [V26    ] (  0,  0   )     ref  ->  zero-ref    single-def
 ;  V27 tmp20        [V27,T26] (  5,  4.50)     ref  ->  x23        
 ;* V28 tmp21        [V28    ] (  0,  0   )  struct ( 8) zero-ref    "impAppendStmt" <System.Threading.CancellationToken>
 ;* V29 tmp22        [V29    ] (  0,  0   )     int  ->  zero-ref    "impAppendStmt"
 ;* V30 tmp23        [V30    ] (  0,  0   )  struct ( 8) zero-ref    "impAppendStmt" <System.Threading.CancellationToken>
-;  V31 tmp24        [V31,T36] (  2,  4   )     ref  ->   x2         class-hnd single-def "dup spill" <System.Action`2[System.Object,System.Threading.CancellationToken]>
-;  V32 tmp25        [V32,T37] (  2,  4   )     ref  ->  x23         class-hnd single-def "impAppendStmt" <System.Threading.Tasks.Task`1[System.Threading.Tasks.Dataflow.Internal.VoidResult]>
+;  V31 tmp24        [V31,T35] (  2,  4   )     ref  ->   x2         class-hnd single-def "dup spill" <System.Action`2[System.Object,System.Threading.CancellationToken]>
+;  V32 tmp25        [V32,T36] (  2,  4   )     ref  ->  x23         class-hnd single-def "impAppendStmt" <System.Threading.Tasks.Task`1[System.Threading.Tasks.Dataflow.Internal.VoidResult]>
 ;* V33 tmp26        [V33    ] (  0,  0   )  struct ( 8) zero-ref    <System.Threading.CancellationToken>
 ;* V34 tmp27        [V34    ] (  0,  0   )     ref  ->  zero-ref    single-def
-;  V35 tmp28        [V35,T45] (  4,  3.50)     ref  ->   x2        
+;  V35 tmp28        [V35,T44] (  4,  3.50)     ref  ->   x2        
 ;  V36 tmp29        [V36,T13] (  5,  5   )     ref  ->   x2         class-hnd exact single-def "NewObj constructor temp" <System.Action`2[System.Object,System.Threading.CancellationToken]>
 ;  V37 tmp30        [V37,T14] (  5,  5   )     ref  ->  x23         class-hnd exact single-def "NewObj constructor temp" <System.Action`2[System.Threading.Tasks.Task,System.Object]>
 ;  V38 tmp31        [V38,T15] (  5,  5   )     ref  ->  x23         class-hnd exact single-def "NewObj constructor temp" <System.Action`2[System.Threading.Tasks.Task,System.Object]>
-;  V39 tmp32        [V39,T29] (  4,  4   )     ref  ->  x24         class-hnd exact single-def "NewObj constructor temp" <System.Action`1[System.Collections.Generic.KeyValuePair`2[ubyte,long]]>
+;  V39 tmp32        [V39,T28] (  4,  4   )     ref  ->  x21         class-hnd exact single-def "NewObj constructor temp" <System.Action`1[System.Collections.Generic.KeyValuePair`2[ubyte,long]]>
 ;  V40 tmp33        [V40,T04] ( 11, 11   )     ref  ->  x23         class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.Dataflow.Internal.TargetCore`1[ubyte]>
-;  V41 tmp34        [V41,T73] (  2,  2   )     ref  ->  x21         class-hnd single-def "dup spill" <System.Action`2[System.Object,System.Nullable`1[int]]>
+;  V41 tmp34        [V41,T72] (  2,  2   )     ref  ->  x21         class-hnd single-def "dup spill" <System.Action`2[System.Object,System.Nullable`1[int]]>
 ;* V42 tmp35        [V42    ] (  0,  0   )     ref  ->  zero-ref    single-def
 ;* V43 tmp36        [V43    ] (  0,  0   )     ref  ->  zero-ref    single-def
-;  V44 tmp37        [V44,T69] (  4,  2   )     ref  ->  x21        
+;  V44 tmp37        [V44,T68] (  4,  2   )     ref  ->  x21        
 ;  V45 tmp38        [V45,T16] (  5,  5   )     ref  ->  x24         class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.Dataflow.Internal.ReorderingBuffer`1[System.Nullable`1[int]]>
 ;  V46 tmp39        [V46,T17] (  5,  5   )     ref  ->  x21         class-hnd exact single-def "NewObj constructor temp" <System.Action`2[System.Object,System.Nullable`1[int]]>
 ;  V47 tmp40        [V47,T18] (  5,  5   )     ref  ->  x24         class-hnd exact single-def "NewObj constructor temp" <System.Action`1[System.Threading.Tasks.Dataflow.ISourceBlock`1[System.Nullable`1[int]]]>
-;  V48 tmp41        [V48,T74] (  2,  2   )     ref  ->  x21         class-hnd single-def "dup spill" <System.Action`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[System.Nullable`1[int]],int]>
-;  V49 tmp42        [V49,T70] (  4,  2   )     ref  ->  x21        
+;  V48 tmp41        [V48,T73] (  2,  2   )     ref  ->  x21         class-hnd single-def "dup spill" <System.Action`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[System.Nullable`1[int]],int]>
+;  V49 tmp42        [V49,T69] (  4,  2   )     ref  ->  x21        
 ;  V50 tmp43        [V50,T19] (  5,  5   )     ref  ->  x21         class-hnd exact single-def "NewObj constructor temp" <System.Action`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[System.Nullable`1[int]],int]>
 ;* V51 tmp44        [V51    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "NewObj constructor temp" <System.ArgumentNullException>
-;  V52 tmp45        [V52,T98] (  3,  0   )     ref  ->  x24         class-hnd exact single-def "NewObj constructor temp" <System.ArgumentNullException>
-;  V53 tmp46        [V53,T99] (  3,  0   )     ref  ->  x19         class-hnd exact single-def "NewObj constructor temp" <System.ArgumentNullException>
-;  V54 tmp47        [V54,T46] (  3,  3   )     ref  ->  x15         class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.Dataflow.TransformBlock`2+<>c[ubyte,System.Nullable`1[int]]>
-;  V55 tmp48        [V55,T47] (  3,  3   )     ref  ->  x15         class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.Dataflow.TransformBlock`2+<>c[ubyte,System.Nullable`1[int]]>
-;* V56 tmp49        [V56,T97] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;  V57 tmp50        [V57,T48] (  3,  3   )     ref  ->  x15         class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.Dataflow.TransformBlock`2+<>c[ubyte,System.Nullable`1[int]]>
-;  V58 tmp51        [V58,T49] (  3,  3   )     ref  ->  x25         class-hnd exact single-def "NewObj constructor temp" <System.Collections.Generic.Dictionary`2[long,System.Collections.Generic.KeyValuePair`2[ubyte,System.Nullable`1[int]]]>
-;  V59 tmp52        [V59,T50] (  3,  3   )     ref  ->  x26         class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.TaskCompletionSource`1[System.Threading.Tasks.Dataflow.Internal.VoidResult]>
-;  V60 tmp53        [V60,T75] (  2,  2   )     ref  ->  x25         class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.Dataflow.Internal.ReorderingBuffer`1[System.Nullable`1[int]]>
+;  V52 tmp45        [V52,T97] (  3,  0   )     ref  ->  x24         class-hnd exact single-def "NewObj constructor temp" <System.ArgumentNullException>
+;  V53 tmp46        [V53,T98] (  3,  0   )     ref  ->  x19         class-hnd exact single-def "NewObj constructor temp" <System.ArgumentNullException>
+;  V54 tmp47        [V54,T45] (  3,  3   )     ref  ->  x15         class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.Dataflow.TransformBlock`2+<>c[ubyte,System.Nullable`1[int]]>
+;  V55 tmp48        [V55,T46] (  3,  3   )     ref  ->  x15         class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.Dataflow.TransformBlock`2+<>c[ubyte,System.Nullable`1[int]]>
+;* V56 tmp49        [V56,T96] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
+;  V57 tmp50        [V57,T47] (  3,  3   )     ref  ->  x15         class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.Dataflow.TransformBlock`2+<>c[ubyte,System.Nullable`1[int]]>
+;  V58 tmp51        [V58,T48] (  3,  3   )     ref  ->  x25         class-hnd exact single-def "NewObj constructor temp" <System.Collections.Generic.Dictionary`2[long,System.Collections.Generic.KeyValuePair`2[ubyte,System.Nullable`1[int]]]>
+;  V59 tmp52        [V59,T49] (  3,  3   )     ref  ->  x25         class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.TaskCompletionSource`1[System.Threading.Tasks.Dataflow.Internal.VoidResult]>
+;  V60 tmp53        [V60,T74] (  2,  2   )     ref  ->  x24         class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.Dataflow.Internal.ReorderingBuffer`1[System.Nullable`1[int]]>
 ;* V61 tmp54        [V61    ] (  0,  0   )     ref  ->  zero-ref    single-def
-;  V62 tmp55        [V62,T51] (  3,  3   )     ref  ->  x24         class-hnd exact single-def "NewObj constructor temp" <System.Collections.Concurrent.SingleProducerSingleConsumerQueue`1[System.Collections.Generic.KeyValuePair`2[ubyte,long]]>
-;  V63 tmp56        [V63,T81] (  3,  1.50)     ref  ->  x24         class-hnd "Inline stloc first use temp" <System.Collections.Concurrent.IProducerConsumerQueue`1[System.Collections.Generic.KeyValuePair`2[ubyte,long]]>
+;  V62 tmp55        [V62,T50] (  3,  3   )     ref  ->  x21         class-hnd exact single-def "NewObj constructor temp" <System.Collections.Concurrent.SingleProducerSingleConsumerQueue`1[System.Collections.Generic.KeyValuePair`2[ubyte,long]]>
+;  V63 tmp56        [V63,T80] (  3,  1.50)     ref  ->  x21         class-hnd "Inline stloc first use temp" <System.Collections.Concurrent.IProducerConsumerQueue`1[System.Collections.Generic.KeyValuePair`2[ubyte,long]]>
 ;* V64 tmp57        [V64    ] (  0,  0   )     ref  ->  zero-ref   
 ;* V65 tmp58        [V65    ] (  0,  0   )     ref  ->  zero-ref   
-;  V66 tmp59        [V66,T30] (  4,  4   )     ref  ->  x24         class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.Dataflow.Internal.BoundingStateWithPostponed`1[ubyte]>
-;  V67 tmp60        [V67,T52] (  3,  3   )     ref  ->  x24         class-hnd exact single-def "NewObj constructor temp" <System.Collections.Concurrent.MultiProducerMultiConsumerQueue`1[System.Collections.Generic.KeyValuePair`2[ubyte,long]]>
-;  V68 tmp61        [V68,T53] (  3,  3   )     ref  ->   x0         class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.Task`1[System.Threading.Tasks.Dataflow.Internal.VoidResult]>
+;  V66 tmp59        [V66,T29] (  4,  4   )     ref  ->  x24         class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.Dataflow.Internal.BoundingStateWithPostponed`1[ubyte]>
+;  V67 tmp60        [V67,T51] (  3,  3   )     ref  ->  x21         class-hnd exact single-def "NewObj constructor temp" <System.Collections.Concurrent.MultiProducerMultiConsumerQueue`1[System.Collections.Generic.KeyValuePair`2[ubyte,long]]>
+;  V68 tmp61        [V68,T52] (  3,  3   )     ref  ->   x0         class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.Task`1[System.Threading.Tasks.Dataflow.Internal.VoidResult]>
 ;* V69 tmp62        [V69    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <System.Threading.Tasks.Dataflow.ExecutionDataflowBlockOptions>
-;* V70 tmp63        [V70,T91] (  0,  0   )     ref  ->  zero-ref    class-hnd single-def "Inlining Arg" <System.Threading.Tasks.Dataflow.ExecutionDataflowBlockOptions>
-;  V71 tmp64        [V71,T54] (  3,  3   )     ref  ->  x25         class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.Dataflow.Internal.QueuedMap`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[ubyte],System.Threading.Tasks.Dataflow.DataflowMessageHeader]>
-;  V72 tmp65        [V72,T79] (  2,  2   )     int  ->  x21         "Inlining Arg"
-;  V73 tmp66        [V73,T55] (  3,  3   )     ref  ->  x26         class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.TaskCompletionSource`1[System.Threading.Tasks.Dataflow.Internal.VoidResult]>
-;  V74 tmp67        [V74,T76] (  2,  2   )     ref  ->  x25         class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.Dataflow.Internal.ReorderingBuffer`1[System.Nullable`1[int]]>
+;* V70 tmp63        [V70,T90] (  0,  0   )     ref  ->  zero-ref    class-hnd single-def "Inlining Arg" <System.Threading.Tasks.Dataflow.ExecutionDataflowBlockOptions>
+;  V71 tmp64        [V71,T53] (  3,  3   )     ref  ->  x25         class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.Dataflow.Internal.QueuedMap`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[ubyte],System.Threading.Tasks.Dataflow.DataflowMessageHeader]>
+;  V72 tmp65        [V72,T78] (  2,  2   )     int  ->  x21         "Inlining Arg"
+;  V73 tmp66        [V73,T54] (  3,  3   )     ref  ->  x25         class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.TaskCompletionSource`1[System.Threading.Tasks.Dataflow.Internal.VoidResult]>
+;  V74 tmp67        [V74,T75] (  2,  2   )     ref  ->  x24         class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.Dataflow.Internal.ReorderingBuffer`1[System.Nullable`1[int]]>
 ;* V75 tmp68        [V75    ] (  0,  0   )     ref  ->  zero-ref    single-def
-;  V76 tmp69        [V76,T56] (  3,  3   )     ref  ->  x24         class-hnd exact single-def "NewObj constructor temp" <System.Collections.Concurrent.SingleProducerSingleConsumerQueue`1[System.Collections.Generic.KeyValuePair`2[ubyte,long]]>
-;  V77 tmp70        [V77,T82] (  3,  1.50)     ref  ->  x24         class-hnd "Inline stloc first use temp" <System.Collections.Concurrent.IProducerConsumerQueue`1[System.Collections.Generic.KeyValuePair`2[ubyte,long]]>
+;  V76 tmp69        [V76,T55] (  3,  3   )     ref  ->  x21         class-hnd exact single-def "NewObj constructor temp" <System.Collections.Concurrent.SingleProducerSingleConsumerQueue`1[System.Collections.Generic.KeyValuePair`2[ubyte,long]]>
+;  V77 tmp70        [V77,T81] (  3,  1.50)     ref  ->  x21         class-hnd "Inline stloc first use temp" <System.Collections.Concurrent.IProducerConsumerQueue`1[System.Collections.Generic.KeyValuePair`2[ubyte,long]]>
 ;* V78 tmp71        [V78    ] (  0,  0   )     ref  ->  zero-ref   
 ;* V79 tmp72        [V79    ] (  0,  0   )     ref  ->  zero-ref   
-;  V80 tmp73        [V80,T31] (  4,  4   )     ref  ->  x24         class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.Dataflow.Internal.BoundingStateWithPostponed`1[ubyte]>
-;  V81 tmp74        [V81,T57] (  3,  3   )     ref  ->  x24         class-hnd exact single-def "NewObj constructor temp" <System.Collections.Concurrent.MultiProducerMultiConsumerQueue`1[System.Collections.Generic.KeyValuePair`2[ubyte,long]]>
-;  V82 tmp75        [V82,T58] (  3,  3   )     ref  ->   x0         class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.Task`1[System.Threading.Tasks.Dataflow.Internal.VoidResult]>
+;  V80 tmp73        [V80,T30] (  4,  4   )     ref  ->  x24         class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.Dataflow.Internal.BoundingStateWithPostponed`1[ubyte]>
+;  V81 tmp74        [V81,T56] (  3,  3   )     ref  ->  x21         class-hnd exact single-def "NewObj constructor temp" <System.Collections.Concurrent.MultiProducerMultiConsumerQueue`1[System.Collections.Generic.KeyValuePair`2[ubyte,long]]>
+;  V82 tmp75        [V82,T57] (  3,  3   )     ref  ->   x0         class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.Task`1[System.Threading.Tasks.Dataflow.Internal.VoidResult]>
 ;* V83 tmp76        [V83    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <System.Threading.Tasks.Dataflow.ExecutionDataflowBlockOptions>
-;* V84 tmp77        [V84,T92] (  0,  0   )     ref  ->  zero-ref    class-hnd single-def "Inlining Arg" <System.Threading.Tasks.Dataflow.ExecutionDataflowBlockOptions>
-;  V85 tmp78        [V85,T59] (  3,  3   )     ref  ->  x25         class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.Dataflow.Internal.QueuedMap`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[ubyte],System.Threading.Tasks.Dataflow.DataflowMessageHeader]>
-;  V86 tmp79        [V86,T80] (  2,  2   )     int  ->  x21         "Inlining Arg"
+;* V84 tmp77        [V84,T91] (  0,  0   )     ref  ->  zero-ref    class-hnd single-def "Inlining Arg" <System.Threading.Tasks.Dataflow.ExecutionDataflowBlockOptions>
+;  V85 tmp78        [V85,T58] (  3,  3   )     ref  ->  x25         class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.Dataflow.Internal.QueuedMap`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[ubyte],System.Threading.Tasks.Dataflow.DataflowMessageHeader]>
+;  V86 tmp79        [V86,T79] (  2,  2   )     int  ->  x21         "Inlining Arg"
 ;* V87 tmp80        [V87    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.Threading.Tasks.Dataflow.Internal.TargetCore`1[ubyte]>
 ;* V88 tmp81        [V88    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <System.Threading.Tasks.TaskCompletionSource`1[System.Threading.Tasks.Dataflow.Internal.VoidResult]>
-;  V89 tmp82        [V89,T60] (  3,  3   )     ref  ->  x15         class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.Dataflow.TransformBlock`2+<>c[ubyte,System.Nullable`1[int]]>
+;  V89 tmp82        [V89,T59] (  3,  3   )     ref  ->  x15         class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.Dataflow.TransformBlock`2+<>c[ubyte,System.Nullable`1[int]]>
 ;* V90 tmp83        [V90    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.Threading.CancellationToken>
-;  V91 tmp84        [V91,T38] (  2,  4   )     ref  ->  x26         class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.ThreadPoolTaskScheduler>
+;  V91 tmp84        [V91,T37] (  2,  4   )     ref  ->  x26         class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.ThreadPoolTaskScheduler>
 ;* V92 tmp85        [V92    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inline return value spill temp" <System.Threading.Tasks.ContinuationTaskFromTask>
 ;  V93 tmp86        [V93    ] (  2,  2   )     int  ->  [fp+0x38]  do-not-enreg[X] addr-exposed ld-addr-op "Inline ldloca(s) first use temp"
 ;  V94 tmp87        [V94    ] (  2,  2   )     int  ->  [fp+0x30]  do-not-enreg[X] addr-exposed ld-addr-op "Inline ldloca(s) first use temp"
 ;  V95 tmp88        [V95,T05] (  6, 11   )     ref  ->  x27         class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.ContinuationTaskFromTask>
 ;* V96 tmp89        [V96    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact single-def "Inline stloc first use temp" <System.Threading.Tasks.ContinuationTaskFromTask>
 ;  V97 tmp90        [V97,T10] (  4,  7   )     int  ->  x28         "Inlining Arg"
 ;* V98 tmp91        [V98    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.Threading.CancellationToken>
 ;  V99 tmp92        [V99,T20] (  4,  5   )     ref  ->  [fp+0x10]  class-hnd "impAppendStmt" <System.Threading.Tasks.Task>
-;  V100 tmp93       [V100,T42] (  2,  4   )     int  ->  [fp+0x2C]  spill-single-def "Inlining Arg"
+;  V100 tmp93       [V100,T41] (  2,  4   )     int  ->  [fp+0x2C]  spill-single-def "Inlining Arg"
 ;* V101 tmp94       [V101    ] (  0,  0   )  struct ( 8) zero-ref    "Inlining Arg" <System.Threading.CancellationToken>
 ;* V102 tmp95       [V102    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.Threading.Tasks.Dataflow.Internal.SourceCore`1[System.Nullable`1[int]]>
 ;* V103 tmp96       [V103    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <System.Threading.Tasks.TaskCompletionSource`1[System.Threading.Tasks.Dataflow.Internal.VoidResult]>
-;  V104 tmp97       [V104,T61] (  3,  3   )     ref  ->  x15         class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.Dataflow.TransformBlock`2+<>c[ubyte,System.Nullable`1[int]]>
+;  V104 tmp97       [V104,T60] (  3,  3   )     ref  ->  x15         class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.Dataflow.TransformBlock`2+<>c[ubyte,System.Nullable`1[int]]>
 ;* V105 tmp98       [V105    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.Threading.CancellationToken>
-;  V106 tmp99       [V106,T39] (  2,  4   )     ref  ->  x25         class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.ThreadPoolTaskScheduler>
+;  V106 tmp99       [V106,T38] (  2,  4   )     ref  ->  x25         class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.ThreadPoolTaskScheduler>
 ;* V107 tmp100      [V107    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inline return value spill temp" <System.Threading.Tasks.ContinuationTaskFromTask>
 ;  V108 tmp101      [V108    ] (  2,  2   )     int  ->  [fp+0x20]  do-not-enreg[X] addr-exposed ld-addr-op "Inline ldloca(s) first use temp"
 ;  V109 tmp102      [V109    ] (  2,  2   )     int  ->  [fp+0x18]  do-not-enreg[X] addr-exposed ld-addr-op "Inline ldloca(s) first use temp"
 ;  V110 tmp103      [V110,T06] (  6, 11   )     ref  ->  x24         class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.ContinuationTaskFromTask>
 ;* V111 tmp104      [V111    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact single-def "Inline stloc first use temp" <System.Threading.Tasks.ContinuationTaskFromTask>
 ;  V112 tmp105      [V112,T11] (  4,  7   )     int  ->  x26         "Inlining Arg"
 ;* V113 tmp106      [V113    ] (  0,  0   )  struct ( 8) zero-ref    ld-addr-op "Inline ldloca(s) first use temp" <System.Threading.CancellationToken>
 ;  V114 tmp107      [V114,T21] (  4,  5   )     ref  ->  x28         class-hnd "impAppendStmt" <System.Threading.Tasks.Task>
-;  V115 tmp108      [V115,T43] (  2,  4   )     int  ->  x27         "Inlining Arg"
+;  V115 tmp108      [V115,T42] (  2,  4   )     int  ->  x27         "Inlining Arg"
 ;* V116 tmp109      [V116    ] (  0,  0   )  struct ( 8) zero-ref    "Inlining Arg" <System.Threading.CancellationToken>
 ;* V117 tmp110      [V117    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.Threading.Tasks.Dataflow.Internal.SourceCore`1[System.Nullable`1[int]]>
 ;* V118 tmp111      [V118    ] (  0,  0   )     ref  ->  zero-ref    class-hnd "Inlining Arg" <System.Threading.Tasks.TaskCompletionSource`1[System.Threading.Tasks.Dataflow.Internal.VoidResult]>
-;  V119 tmp112      [V119,T62] (  3,  3   )     ref  ->  x15         class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.Dataflow.TransformBlock`2+<>c[ubyte,System.Nullable`1[int]]>
-;  V120 tmp113      [V120,T77] (  2,  2   )     ref  ->  x20         class-hnd exact single-def "impAppendStmt" <System.String>
-;* V121 tmp114      [V121,T90] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
-;  V122 tmp115      [V122,T86] (  3,  1.50)     int  ->   x3         "Inline return value spill temp"
-;  V123 tmp116      [V123,T83] (  3,  1.50)     ref  ->   x0         class-hnd single-def "Inline stloc first use temp" <System.Threading.Tasks.Task>
-;* V124 tmp117      [V124,T93] (  0,  0   )     ref  ->  zero-ref    single-def "field V22._source (fldOffset=0x0)" P-INDEP
-;* V125 tmp118      [V125,T94] (  0,  0   )     ref  ->  zero-ref    single-def "field V28._source (fldOffset=0x0)" P-INDEP
-;  V126 tmp119      [V126,T78] (  2,  2   )     ref  ->  x21         single-def "field V30._source (fldOffset=0x0)" P-INDEP
+;  V119 tmp112      [V119,T61] (  3,  3   )     ref  ->  x15         class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.Dataflow.TransformBlock`2+<>c[ubyte,System.Nullable`1[int]]>
+;  V120 tmp113      [V120,T76] (  2,  2   )     ref  ->  x20         class-hnd exact single-def "impAppendStmt" <System.String>
+;* V121 tmp114      [V121,T89] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
+;  V122 tmp115      [V122,T85] (  3,  1.50)     int  ->   x3         "Inline return value spill temp"
+;  V123 tmp116      [V123,T82] (  3,  1.50)     ref  ->   x0         class-hnd single-def "Inline stloc first use temp" <System.Threading.Tasks.Task>
+;* V124 tmp117      [V124,T92] (  0,  0   )     ref  ->  zero-ref    single-def "field V22._source (fldOffset=0x0)" P-INDEP
+;* V125 tmp118      [V125,T93] (  0,  0   )     ref  ->  zero-ref    single-def "field V28._source (fldOffset=0x0)" P-INDEP
+;  V126 tmp119      [V126,T77] (  2,  2   )     ref  ->  x21         single-def "field V30._source (fldOffset=0x0)" P-INDEP
 ;* V127 tmp120      [V127    ] (  0,  0   )     ref  ->  zero-ref    single-def "field V33._source (fldOffset=0x0)" P-INDEP
 ;* V128 tmp121      [V128    ] (  0,  0   )     ref  ->  zero-ref    single-def "field V90._source (fldOffset=0x0)" P-INDEP
 ;* V129 tmp122      [V129    ] (  0,  0   )     ref  ->  zero-ref    single-def "field V98._source (fldOffset=0x0)" P-INDEP
-;* V130 tmp123      [V130,T95] (  0,  0   )     ref  ->  zero-ref    single-def "field V101._source (fldOffset=0x0)" P-INDEP
+;* V130 tmp123      [V130,T94] (  0,  0   )     ref  ->  zero-ref    single-def "field V101._source (fldOffset=0x0)" P-INDEP
 ;* V131 tmp124      [V131    ] (  0,  0   )     ref  ->  zero-ref    single-def "field V105._source (fldOffset=0x0)" P-INDEP
 ;* V132 tmp125      [V132    ] (  0,  0   )     ref  ->  zero-ref    single-def "field V113._source (fldOffset=0x0)" P-INDEP
-;* V133 tmp126      [V133,T96] (  0,  0   )     ref  ->  zero-ref    single-def "field V116._source (fldOffset=0x0)" P-INDEP
-;  V134 tmp127      [V134,T40] (  2,  4   )     ref  ->   x1         single-def "argument with side effect"
-;  V135 tmp128      [V135,T41] (  2,  4   )     ref  ->   x1         single-def "argument with side effect"
+;* V133 tmp126      [V133,T95] (  0,  0   )     ref  ->  zero-ref    single-def "field V116._source (fldOffset=0x0)" P-INDEP
+;  V134 tmp127      [V134,T39] (  2,  4   )     ref  ->   x1         single-def "argument with side effect"
+;  V135 tmp128      [V135,T40] (  2,  4   )     ref  ->   x1         single-def "argument with side effect"
 ;* V136 tmp129      [V136    ] (  0,  0   )     ref  ->  zero-ref    "argument with side effect"
-;  V137 tmp130      [V137,T100] (  2,  0   )     ref  ->   x1         single-def "argument with side effect"
-;  V138 tmp131      [V138,T101] (  2,  0   )     ref  ->   x1         single-def "argument with side effect"
-;* V139 cse0        [V139,T89] (  0,  0   )    long  ->  zero-ref    multi-def "CSE #04: aggressive"
-;  V140 cse1        [V140,T87] (  3,  1.50)     int  ->  x21         "CSE #13: conservative"
-;  V141 cse2        [V141,T88] (  3,  1.50)     int  ->  x21         "CSE #21: conservative"
-;  V142 cse3        [V142,T63] (  3,  3   )     ref  ->  x25         "CSE #26: conservative"
-;  V143 cse4        [V143,T84] (  2,  1   )     ref  ->   x0         "CSE #12: conservative"
-;  V144 cse5        [V144,T85] (  2,  1   )     ref  ->   x0         "CSE #19: conservative"
+;  V137 tmp130      [V137,T99] (  2,  0   )     ref  ->   x1         single-def "argument with side effect"
+;  V138 tmp131      [V138,T100] (  2,  0   )     ref  ->   x1         single-def "argument with side effect"
+;* V139 cse0        [V139,T88] (  0,  0   )    long  ->  zero-ref    multi-def "CSE #04: aggressive"
+;  V140 cse1        [V140,T86] (  3,  1.50)     int  ->  x21         "CSE #15: conservative"
+;  V141 cse2        [V141,T87] (  3,  1.50)     int  ->  x21         "CSE #20: conservative"
+;  V142 cse3        [V142,T62] (  3,  3   )     ref  ->  x25         "CSE #24: conservative"
+;  V143 cse4        [V143,T83] (  2,  1   )     ref  ->   x0         "CSE #13: conservative"
+;  V144 cse5        [V144,T84] (  2,  1   )     ref  ->   x0         "CSE #19: conservative"
 ;  V145 cse6        [V145,T02] ( 20, 12.50)    long  ->  x22         multi-def "CSE #05: aggressive"
-;  V146 cse7        [V146,T27] (  8,  4   )    long  ->  x21         multi-def "CSE #11: moderate"
-;  V147 rat0        [V147,T71] (  3,  2   )   byref  ->   x2         "TLS field access"
-;  V148 rat1        [V148,T64] (  3,  3   )    long  ->   x2         "TLS access"
-;  V149 rat2        [V149,T65] (  3,  3   )    long  ->   x0         "ThreadStaticBlockBase access"
-;  V150 rat3        [V150,T72] (  3,  2   )   byref  ->   x1         "TLS field access"
-;  V151 rat4        [V151,T66] (  3,  3   )    long  ->   x0         "TLS access"
-;  V152 rat5        [V152,T67] (  3,  3   )    long  ->   x0         "ThreadStaticBlockBase access"
+;  V146 rat0        [V146,T70] (  3,  2   )   byref  ->   x2         "TLS field access"
+;  V147 rat1        [V147,T63] (  3,  3   )    long  ->   x2         "TLS access"
+;  V148 rat2        [V148,T64] (  3,  3   )    long  ->   x0         "ThreadStaticBlockBase access"
+;  V149 rat3        [V149,T71] (  3,  2   )   byref  ->   x1         "TLS field access"
+;  V150 rat4        [V150,T65] (  3,  3   )    long  ->   x0         "TLS access"
+;  V151 rat5        [V151,T66] (  3,  3   )    long  ->   x0         "ThreadStaticBlockBase access"
 ;
 ; Lcl frame size = 48
 
 G_M1709_IG01:
             stp     fp, lr, [sp, #-0x90]!
             stp     x19, x20, [sp, #0x40]
             stp     x21, x22, [sp, #0x50]
             stp     x23, x24, [sp, #0x60]
             stp     x25, x26, [sp, #0x70]
             stp     x27, x28, [sp, #0x80]
             mov     fp, sp
             mov     x19, x0
             mov     x21, x1
             mov     x22, x2
             mov     x20, x3
 						;; size=44 bbWeight=1 PerfScore 8.50
 G_M1709_IG02:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x23, x0
             add     x14, x23, #16
             mov     x15, x21
             bl      CORINFO_HELP_ASSIGN_REF
             add     x14, x23, #24
             mov     x15, x22
             bl      CORINFO_HELP_ASSIGN_REF
             add     x14, x23, #8
             mov     x15, x19
             bl      CORINFO_HELP_ASSIGN_REF
             cbz     x20, G_M1709_IG45
             ldr     x0, [x23, #0x10]
             cbnz    x0, G_M1709_IG04
 						;; size=68 bbWeight=1 PerfScore 14.00
 G_M1709_IG03:
             ldr     x0, [x23, #0x18]
             cbz     x0, G_M1709_IG46
 						;; size=8 bbWeight=0.50 PerfScore 2.00
 G_M1709_IG04:
             mov     x0, x20
             movz    x1, #0xD1FFAB1E      // code for System.Threading.Tasks.Dataflow.ExecutionDataflowBlockOptions:DefaultOrClone():System.Threading.Tasks.Dataflow.ExecutionDataflowBlockOptions:this
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
             mov     x20, x0
             mov     x21, xzr
             ldr     w0, [x20, #0x1C]
             cmp     w0, #0
             ble     G_M1709_IG06
 						;; size=44 bbWeight=1 PerfScore 11.50
 G_M1709_IG05:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             mov     w1, #0xD1FFAB1E
             bl      CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
             movz    x22, #0xD1FFAB1E      // data for System.Threading.Tasks.Dataflow.TransformBlock`2+<>c[ubyte,System.Nullable`1[int]]:<>9__9_0
             movk    x22, #0xD1FFAB1E LSL #16
             movk    x22, #0xD1FFAB1E LSL #32
             ldr     x21, [x22]
             cbnz    x21, G_M1709_IG06
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x21, x0
             ldr     x15, [x22, #-0x08]
             cbz     x15, G_M1709_IG50
             add     x14, x21, #8
             bl      CORINFO_HELP_ASSIGN_REF
             movz    x14, #0xD1FFAB1E      // code for System.Threading.Tasks.Dataflow.TransformBlock`2+<>c[ubyte,System.Nullable`1[int]]:<.ctor>b__9_0(System.Threading.Tasks.Dataflow.ISourceBlock`1[System.Nullable`1[int]],int):this
             movk    x14, #0xD1FFAB1E LSL #16
             movk    x14, #0xD1FFAB1E LSL #32
             str     x14, [x21, #0x18]
             mov     x14, x22
             mov     x15, x21
             bl      CORINFO_HELP_ASSIGN_REF
 						;; size=104 bbWeight=0.50 PerfScore 10.75
 G_M1709_IG06:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             mov     w1, #0xD1FFAB1E
             bl      CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
             movz    x22, #0xD1FFAB1E
             movk    x22, #0xD1FFAB1E LSL #16
             movk    x22, #0xD1FFAB1E LSL #32
             ldr     x24, [x22, #0x08]
             cbnz    x24, G_M1709_IG08
 						;; size=40 bbWeight=1 PerfScore 8.50
 G_M1709_IG07:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x24, x0
             ldr     x15, [x22, #-0x08]
             cbz     x15, G_M1709_IG50
             add     x14, x24, #8
             bl      CORINFO_HELP_ASSIGN_REF
             movz    x14, #0xD1FFAB1E      // code for System.Threading.Tasks.Dataflow.TransformBlock`2+<>c[ubyte,System.Nullable`1[int]]:<.ctor>b__9_1(System.Threading.Tasks.Dataflow.ISourceBlock`1[System.Nullable`1[int]]):this
             movk    x14, #0xD1FFAB1E LSL #16
             movk    x14, #0xD1FFAB1E LSL #32
             str     x14, [x24, #0x18]
             add     x14, x22, #8
             mov     x15, x24
             bl      CORINFO_HELP_ASSIGN_REF
 						;; size=64 bbWeight=0.50 PerfScore 6.50
 G_M1709_IG08:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x25, x0
             mov     x1, x19
             mov     x2, x20
             mov     x3, x24
             mov     x4, x21
             mov     x5, xzr
             movz    x6, #0xD1FFAB1E      // code for System.Threading.Tasks.Dataflow.Internal.SourceCore`1[System.Nullable`1[int]]:.ctor(System.Threading.Tasks.Dataflow.ISourceBlock`1[System.Nullable`1[int]],System.Threading.Tasks.Dataflow.DataflowBlockOptions,System.Action`1[System.Threading.Tasks.Dataflow.ISourceBlock`1[System.Nullable`1[int]]],System.Action`2[System.Threading.Tasks.Dataflow.ISourceBlock`1[System.Nullable`1[int]],int],System.Func`4[System.Threading.Tasks.Dataflow.ISourceBlock`1[System.Nullable`1[int]],System.Nullable`1[int],System.Collections.Generic.IList`1[System.Nullable`1[int]],int]):this
             movk    x6, #0xD1FFAB1E LSL #16
             movk    x6, #0xD1FFAB1E LSL #32
             ldr     x6, [x6]
             blr     x6
             add     x14, x19, #24
             mov     x15, x25
             bl      CORINFO_HELP_ASSIGN_REF
             ldr     w0, [x20, #0x30]
             cmn     w0, #1
             beq     G_M1709_IG10
 						;; size=84 bbWeight=1 PerfScore 17.50
 G_M1709_IG09:
             ldr     w0, [x20, #0x30]
             cmp     w0, #1
             ble     G_M1709_IG12
 						;; size=12 bbWeight=0.50 PerfScore 2.25
 G_M1709_IG10:
             ldrb    w0, [x20, #0x20]
             cbz     w0, G_M1709_IG12
             ldr     x21, [x22, #0x10]
             cbnz    x21, G_M1709_IG11
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x21, x0
             ldr     x15, [x22, #-0x08]
             cbz     x15, G_M1709_IG50
             add     x14, x21, #8
             bl      CORINFO_HELP_ASSIGN_REF
             movz    x14, #0xD1FFAB1E      // code for System.Threading.Tasks.Dataflow.TransformBlock`2+<>c[ubyte,System.Nullable`1[int]]:<.ctor>b__9_2(System.Object,System.Nullable`1[int]):this
             movk    x14, #0xD1FFAB1E LSL #16
             movk    x14, #0xD1FFAB1E LSL #32
             str     x14, [x21, #0x18]
             add     x14, x22, #16
             mov     x15, x21
             bl      CORINFO_HELP_ASSIGN_REF
 						;; size=80 bbWeight=0.50 PerfScore 10.50
 G_M1709_IG11:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x24, x0
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x25, x0
             mov     w1, wzr
             mov     x2, xzr
             movz    x3, #0xD1FFAB1E      // code for System.Collections.Generic.Dictionary`2[long,System.Collections.Generic.KeyValuePair`2[ubyte,System.Nullable`1[int]]]:.ctor(int,System.Collections.Generic.IEqualityComparer`1[long]):this
             movk    x3, #0xD1FFAB1E LSL #16
             movk    x3, #0xD1FFAB1E LSL #32
             ldr     x3, [x3]
             blr     x3
             add     x14, x24, #16
             mov     x15, x25
             bl      CORINFO_HELP_ASSIGN_REF
             add     x14, x24, #8
             mov     x15, x19
             bl      CORINFO_HELP_ASSIGN_REF
             add     x14, x24, #24
             mov     x15, x21
             bl      CORINFO_HELP_ASSIGN_REF
             add     x14, x19, #16
             mov     x15, x24
             bl      CORINFO_HELP_ASSIGN_REF
 						;; size=116 bbWeight=0.50 PerfScore 10.25
 G_M1709_IG12:
             ldr     x0, [x23, #0x10]
             cbz     x0, G_M1709_IG17
 						;; size=8 bbWeight=1 PerfScore 4.00
 G_M1709_IG13:
-            movz    x21, #0xD1FFAB1E
-            movk    x21, #0xD1FFAB1E LSL #16
-            movk    x21, #0xD1FFAB1E LSL #32
-            mov     x0, x21
+            movz    x0, #0xD1FFAB1E
+            movk    x0, #0xD1FFAB1E LSL #16
+            movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
-            mov     x24, x0
-            add     x14, x24, #8
+            mov     x21, x0
+            add     x14, x21, #8
             mov     x15, x23
             bl      CORINFO_HELP_ASSIGN_REF
             movz    x0, #0xD1FFAB1E      // code for System.Threading.Tasks.Dataflow.TransformBlock`2+<>c__DisplayClass9_0[ubyte,System.Nullable`1[int]]:<.ctor>b__3(System.Collections.Generic.KeyValuePair`2[ubyte,long]):this
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
-            str     x0, [x24, #0x18]
+            str     x0, [x21, #0x18]
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x23, x0
-            ldr     x25, [x19, #0x10]
+            ldr     x24, [x19, #0x10]
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
-            mov     x26, x0
+            mov     x25, x0
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             add     x14, x0, #52
             movz    w15, #0xD1FFAB1E
             movk    w15, #0xD1FFAB1E LSL #16
             stlr    w15, [x14]
-            add     x14, x26, #8
+            add     x14, x25, #8
             mov     x15, x0
             bl      CORINFO_HELP_ASSIGN_REF
             add     x14, x23, #8
-            mov     x15, x26
+            mov     x15, x25
             bl      CORINFO_HELP_ASSIGN_REF
             add     x14, x23, #16
             mov     x15, x19
             bl      CORINFO_HELP_ASSIGN_REF
             add     x14, x23, #40
-            mov     x15, x24
+            mov     x15, x21
             bl      CORINFO_HELP_ASSIGN_REF
             add     x14, x23, #56
-            mov     x15, x25
+            mov     x15, x24
             bl      CORINFO_HELP_ASSIGN_REF
             add     x14, x23, #32
             mov     x15, x20
             bl      CORINFO_HELP_ASSIGN_REF
             strb    wzr, [x23, #0x54]
             ldr     w0, [x20, #0x30]
             cmp     w0, #1
             beq     G_M1709_IG14
-            add     x0, x21, #0xD1FFAB1E
+            movz    x0, #0xD1FFAB1E
+            movk    x0, #0xD1FFAB1E LSL #16
+            movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
-            mov     x24, x0
+            mov     x21, x0
             movz    x1, #0xD1FFAB1E      // code for System.Collections.Concurrent.ConcurrentQueue`1[System.Collections.Generic.KeyValuePair`2[ubyte,long]]:.ctor():this
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
             b       G_M1709_IG15
-						;; size=252 bbWeight=0.50 PerfScore 24.00
+						;; size=256 bbWeight=0.50 PerfScore 24.25
 G_M1709_IG14:
-            add     x0, x21, #0xD1FFAB1E
+            movz    x0, #0xD1FFAB1E
+            movk    x0, #0xD1FFAB1E LSL #16
+            movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
-            mov     x24, x0
+            mov     x21, x0
             movz    x1, #0xD1FFAB1E      // code for System.Collections.Concurrent.SingleProducerSingleConsumerQueue`1[System.Collections.Generic.KeyValuePair`2[ubyte,long]]:.ctor():this
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
-						;; size=32 bbWeight=0.50 PerfScore 3.75
+						;; size=40 bbWeight=0.50 PerfScore 4.25
 G_M1709_IG15:
             add     x14, x23, #24
-            mov     x15, x24
+            mov     x15, x21
             bl      CORINFO_HELP_ASSIGN_REF
             ldr     x0, [x23, #0x20]
             ldr     w21, [x0, #0x1C]
             cmn     w21, #1
             beq     G_M1709_IG16
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x24, x0
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x25, x0
             movz    x1, #0xD1FFAB1E      // code for System.Threading.Tasks.Dataflow.Internal.QueuedMap`2[System.__Canon,System.Threading.Tasks.Dataflow.DataflowMessageHeader]:.ctor():this
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
             add     x14, x24, #16
             mov     x15, x25
             bl      CORINFO_HELP_ASSIGN_REF
             str     w21, [x24, #0x08]
             add     x14, x23, #48
             mov     x15, x24
             bl      CORINFO_HELP_ASSIGN_REF
 						;; size=116 bbWeight=0.50 PerfScore 13.00
 G_M1709_IG16:
             add     x14, x19, #8
             mov     x15, x23
             bl      CORINFO_HELP_ASSIGN_REF
             b       G_M1709_IG21
 						;; size=16 bbWeight=0.50 PerfScore 1.50
 G_M1709_IG17:
-            movz    x21, #0xD1FFAB1E
-            movk    x21, #0xD1FFAB1E LSL #16
-            movk    x21, #0xD1FFAB1E LSL #32
-            mov     x0, x21
+            movz    x0, #0xD1FFAB1E
+            movk    x0, #0xD1FFAB1E LSL #16
+            movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
-            mov     x24, x0
-            add     x14, x24, #8
+            mov     x21, x0
+            add     x14, x21, #8
             mov     x15, x23
             bl      CORINFO_HELP_ASSIGN_REF
             movz    x0, #0xD1FFAB1E      // code for System.Threading.Tasks.Dataflow.TransformBlock`2+<>c__DisplayClass9_0[ubyte,System.Nullable`1[int]]:<.ctor>b__4(System.Collections.Generic.KeyValuePair`2[ubyte,long]):this
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
-            str     x0, [x24, #0x18]
+            str     x0, [x21, #0x18]
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x23, x0
-            ldr     x25, [x19, #0x10]
+            ldr     x24, [x19, #0x10]
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
-            mov     x26, x0
+            mov     x25, x0
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             add     x14, x0, #52
             movz    w15, #0xD1FFAB1E
             movk    w15, #0xD1FFAB1E LSL #16
             stlr    w15, [x14]
-            add     x14, x26, #8
+            add     x14, x25, #8
             mov     x15, x0
             bl      CORINFO_HELP_ASSIGN_REF
             add     x14, x23, #8
-            mov     x15, x26
+            mov     x15, x25
             bl      CORINFO_HELP_ASSIGN_REF
             add     x14, x23, #16
             mov     x15, x19
             bl      CORINFO_HELP_ASSIGN_REF
             add     x14, x23, #40
-            mov     x15, x24
+            mov     x15, x21
             bl      CORINFO_HELP_ASSIGN_REF
             add     x14, x23, #56
-            mov     x15, x25
+            mov     x15, x24
             bl      CORINFO_HELP_ASSIGN_REF
             add     x14, x23, #32
             mov     x15, x20
             bl      CORINFO_HELP_ASSIGN_REF
             mov     w0, #1
             strb    w0, [x23, #0x54]
             ldr     w0, [x20, #0x30]
             cmp     w0, #1
             beq     G_M1709_IG18
-            add     x0, x21, #0xD1FFAB1E
+            movz    x0, #0xD1FFAB1E
+            movk    x0, #0xD1FFAB1E LSL #16
+            movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
-            mov     x24, x0
+            mov     x21, x0
             movz    x1, #0xD1FFAB1E      // code for System.Collections.Concurrent.ConcurrentQueue`1[System.Collections.Generic.KeyValuePair`2[ubyte,long]]:.ctor():this
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
             b       G_M1709_IG19
-						;; size=256 bbWeight=0.50 PerfScore 24.25
+						;; size=260 bbWeight=0.50 PerfScore 24.50
 G_M1709_IG18:
-            add     x0, x21, #0xD1FFAB1E
+            movz    x0, #0xD1FFAB1E
+            movk    x0, #0xD1FFAB1E LSL #16
+            movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
-            mov     x24, x0
+            mov     x21, x0
             movz    x1, #0xD1FFAB1E      // code for System.Collections.Concurrent.SingleProducerSingleConsumerQueue`1[System.Collections.Generic.KeyValuePair`2[ubyte,long]]:.ctor():this
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
-						;; size=32 bbWeight=0.50 PerfScore 3.75
+						;; size=40 bbWeight=0.50 PerfScore 4.25
 G_M1709_IG19:
             add     x14, x23, #24
-            mov     x15, x24
+            mov     x15, x21
             bl      CORINFO_HELP_ASSIGN_REF
             ldr     x0, [x23, #0x20]
             ldr     w21, [x0, #0x1C]
             cmn     w21, #1
             beq     G_M1709_IG20
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x24, x0
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x25, x0
             movz    x1, #0xD1FFAB1E      // code for System.Threading.Tasks.Dataflow.Internal.QueuedMap`2[System.__Canon,System.Threading.Tasks.Dataflow.DataflowMessageHeader]:.ctor():this
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
             add     x14, x24, #16
             mov     x15, x25
             bl      CORINFO_HELP_ASSIGN_REF
             str     w21, [x24, #0x08]
             add     x14, x23, #48
             mov     x15, x24
             bl      CORINFO_HELP_ASSIGN_REF
 						;; size=116 bbWeight=0.50 PerfScore 13.00
 G_M1709_IG20:
             add     x14, x19, #8
             mov     x15, x23
             bl      CORINFO_HELP_ASSIGN_REF
 						;; size=12 bbWeight=0.50 PerfScore 1.00
 G_M1709_IG21:
             ldr     x0, [x19, #0x08]
             ldr     x0, [x0, #0x08]
             ldr     x21, [x0, #0x08]
             ldr     x23, [x22, #0x18]
             cbnz    x23, G_M1709_IG23
 						;; size=20 bbWeight=1 PerfScore 13.00
 G_M1709_IG22:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x23, x0
             ldr     x15, [x22, #-0x08]
             cbz     x15, G_M1709_IG50
             add     x14, x23, #8
             bl      CORINFO_HELP_ASSIGN_REF
             movz    x14, #0xD1FFAB1E      // code for System.Threading.Tasks.Dataflow.TransformBlock`2+<>c[ubyte,System.Nullable`1[int]]:<.ctor>b__9_5(System.Threading.Tasks.Task,System.Object):this
             movk    x14, #0xD1FFAB1E LSL #16
             movk    x14, #0xD1FFAB1E LSL #32
             str     x14, [x23, #0x18]
             add     x14, x22, #24
             mov     x15, x23
             bl      CORINFO_HELP_ASSIGN_REF
 						;; size=64 bbWeight=0.50 PerfScore 6.50
 G_M1709_IG23:
             ldr     x24, [x19, #0x18]
             movz    x2, #0xD1FFAB1E
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x25, [x2]
             mov     x26, x25
             ldrsb   wzr, [x21]
             cbz     x23, G_M1709_IG48
             add     x2, fp, #48	// [V94 tmp87]
             add     x1, fp, #56	// [V93 tmp86]
             mov     w0, #8
             movz    x3, #0xD1FFAB1E      // code for System.Threading.Tasks.Task:CreationOptionsFromContinuationOptions(int,byref,byref)
             movk    x3, #0xD1FFAB1E LSL #16
             movk    x3, #0xD1FFAB1E LSL #32
             ldr     x3, [x3]
             blr     x3
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x27, x0
             ldr     w28, [fp, #0x38]	// [V93 tmp86]
             ldr     w1, [fp, #0x30]	// [V94 tmp87]
             str     w1, [fp, #0x2C]	// [V100 tmp93]
             tbnz    w28, #2, G_M1709_IG25
 						;; size=100 bbWeight=1 PerfScore 28.00
 G_M1709_IG24:
             mov     x2, xzr
             b       G_M1709_IG27
 						;; size=8 bbWeight=0.50 PerfScore 0.75
 G_M1709_IG25:
             mrs     x2, tpidr_el0
             ldr     w0, [x2, #0xD1FFAB1E]
             cmp     w0, #6
             blt     G_M1709_IG47
             ldr     x0, [x2, #0xD1FFAB1E]
             ldr     x0, [x0, #0x30]
             cbz     x0, G_M1709_IG47
             ldr     x0, [x0]
             add     x2, x0, #16
 						;; size=36 bbWeight=0.50 PerfScore 8.00
 G_M1709_IG26:
             ldr     x2, [x2, #0x50]
 						;; size=4 bbWeight=0.50 PerfScore 1.50
 G_M1709_IG27:
             str     x2, [fp, #0x10]	// [V99 tmp92]
             cbz     x2, G_M1709_IG29
 						;; size=8 bbWeight=1 PerfScore 2.00
 G_M1709_IG28:
             tbz     w28, #2, G_M1709_IG29
             mov     x0, x27
             movz    x3, #0xD1FFAB1E      // code for System.Threading.Tasks.Task:EnsureContingentPropertiesInitializedUnsafe():System.Threading.Tasks.Task+ContingentProperties:this
             movk    x3, #0xD1FFAB1E LSL #16
             movk    x3, #0xD1FFAB1E LSL #32
             ldr     x3, [x3]
             blr     x3
             add     x14, x0, #48
             ldr     x15, [fp, #0x10]	// [V99 tmp92]
             bl      CORINFO_HELP_ASSIGN_REF
 						;; size=40 bbWeight=0.50 PerfScore 5.25
 G_M1709_IG29:
             mov     x0, x27
             mov     x1, x23
             mov     x2, x24
             mov     x3, xzr
             mov     w4, w28
             ldr     w5, [fp, #0x2C]	// [V100 tmp93]
             mov     x6, xzr
             movz    x7, #0xD1FFAB1E      // code for System.Threading.Tasks.Task:TaskConstructorCore(System.Delegate,System.Object,System.Threading.CancellationToken,int,int,System.Threading.Tasks.TaskScheduler):this
             movk    x7, #0xD1FFAB1E LSL #16
             movk    x7, #0xD1FFAB1E LSL #32
             ldr     x7, [x7]
             blr     x7
             movz    x0, #0xD1FFAB1E      // code for System.Threading.ExecutionContext:Capture():System.Threading.ExecutionContext
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             ldr     x0, [x0]
             blr     x0
             mov     x1, x0
             mov     x0, x27
             movz    x2, #0xD1FFAB1E      // code for System.Threading.Tasks.Task:set_CapturedContext(System.Threading.ExecutionContext):this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             add     x14, x27, #56
             mov     x15, x21
             bl      CORINFO_HELP_ASSIGN_REF
             mov     x0, x21
             mov     x1, x27
             mov     x2, x26
             mov     x3, xzr
             mov     w4, #8
             movz    x5, #0xD1FFAB1E      // code for System.Threading.Tasks.Task:ContinueWithCore(System.Threading.Tasks.Task,System.Threading.Tasks.TaskScheduler,System.Threading.CancellationToken,int):this
             movk    x5, #0xD1FFAB1E LSL #16
             movk    x5, #0xD1FFAB1E LSL #32
             ldr     x5, [x5]
             blr     x5
             ldr     x0, [x19, #0x18]
             ldr     x0, [x0, #0x08]
             ldr     x21, [x0, #0x08]
             ldr     x23, [x22, #0x20]
             cbnz    x23, G_M1709_IG31
 						;; size=168 bbWeight=1 PerfScore 45.50
 G_M1709_IG30:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x23, x0
             ldr     x15, [x22, #-0x08]
             cbz     x15, G_M1709_IG50
             add     x14, x23, #8
             bl      CORINFO_HELP_ASSIGN_REF
             movz    x14, #0xD1FFAB1E      // code for System.Threading.Tasks.Dataflow.TransformBlock`2+<>c[ubyte,System.Nullable`1[int]]:<.ctor>b__9_6(System.Threading.Tasks.Task,System.Object):this
             movk    x14, #0xD1FFAB1E LSL #16
             movk    x14, #0xD1FFAB1E LSL #32
             str     x14, [x23, #0x18]
             add     x14, x22, #32
             mov     x15, x23
             bl      CORINFO_HELP_ASSIGN_REF
 						;; size=64 bbWeight=0.50 PerfScore 6.50
 G_M1709_IG31:
             ldrsb   wzr, [x21]
             cbz     x23, G_M1709_IG48
             add     x2, fp, #24	// [V109 tmp102]
             add     x1, fp, #32	// [V108 tmp101]
             movz    w0, #8
             movk    w0, #5 LSL #16
             movz    x3, #0xD1FFAB1E      // code for System.Threading.Tasks.Task:CreationOptionsFromContinuationOptions(int,byref,byref)
             movk    x3, #0xD1FFAB1E LSL #16
             movk    x3, #0xD1FFAB1E LSL #32
             ldr     x3, [x3]
             blr     x3
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x24, x0
             ldr     w26, [fp, #0x20]	// [V108 tmp101]
             ldr     w27, [fp, #0x18]	// [V109 tmp102]
             tbnz    w26, #2, G_M1709_IG33
 						;; size=76 bbWeight=1 PerfScore 19.50
 G_M1709_IG32:
             mov     x28, xzr
             b       G_M1709_IG35
 						;; size=8 bbWeight=0.50 PerfScore 0.75
 G_M1709_IG33:
             mrs     x0, tpidr_el0
             ldr     w1, [x0, #0xD1FFAB1E]
             cmp     w1, #6
             blt     G_M1709_IG49
             ldr     x0, [x0, #0xD1FFAB1E]
             ldr     x0, [x0, #0x30]
             cbz     x0, G_M1709_IG49
             ldr     x0, [x0]
             add     x1, x0, #16
 						;; size=36 bbWeight=0.50 PerfScore 8.00
 G_M1709_IG34:
             ldr     x28, [x1, #0x50]
 						;; size=4 bbWeight=0.50 PerfScore 1.50
 G_M1709_IG35:
             cbz     x28, G_M1709_IG37
 						;; size=4 bbWeight=1 PerfScore 1.00
 G_M1709_IG36:
             tbz     w26, #2, G_M1709_IG37
             mov     x0, x24
             movz    x1, #0xD1FFAB1E      // code for System.Threading.Tasks.Task:EnsureContingentPropertiesInitializedUnsafe():System.Threading.Tasks.Task+ContingentProperties:this
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
             add     x14, x0, #48
             mov     x15, x28
             bl      CORINFO_HELP_ASSIGN_REF
 						;; size=40 bbWeight=0.50 PerfScore 4.50
 G_M1709_IG37:
             mov     x0, x24
             mov     x1, x23
             mov     x2, x19
             mov     x3, xzr
             mov     w4, w26
             mov     w5, w27
             mov     x6, xzr
             movz    x7, #0xD1FFAB1E      // code for System.Threading.Tasks.Task:TaskConstructorCore(System.Delegate,System.Object,System.Threading.CancellationToken,int,int,System.Threading.Tasks.TaskScheduler):this
             movk    x7, #0xD1FFAB1E LSL #16
             movk    x7, #0xD1FFAB1E LSL #32
             ldr     x7, [x7]
             blr     x7
             movz    x0, #0xD1FFAB1E      // code for System.Threading.ExecutionContext:Capture():System.Threading.ExecutionContext
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             ldr     x0, [x0]
             blr     x0
             mov     x1, x0
             mov     x0, x24
             movz    x2, #0xD1FFAB1E      // code for System.Threading.Tasks.Task:set_CapturedContext(System.Threading.ExecutionContext):this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             add     x14, x24, #56
             mov     x15, x21
             bl      CORINFO_HELP_ASSIGN_REF
             mov     x0, x21
             mov     x1, x24
             mov     x2, x25
             mov     x3, xzr
             movz    w4, #8
             movk    w4, #5 LSL #16
             movz    x5, #0xD1FFAB1E      // code for System.Threading.Tasks.Task:ContinueWithCore(System.Threading.Tasks.Task,System.Threading.Tasks.TaskScheduler,System.Threading.CancellationToken,int):this
             movk    x5, #0xD1FFAB1E LSL #16
             movk    x5, #0xD1FFAB1E LSL #32
             ldr     x5, [x5]
             blr     x5
             ldr     x21, [x20, #0x28]
             ldr     x0, [x19, #0x18]
             ldr     x0, [x0, #0x08]
             ldr     x23, [x0, #0x08]
             ldr     x2, [x22, #0x28]
             cbnz    x2, G_M1709_IG39
 						;; size=176 bbWeight=1 PerfScore 47.50
 G_M1709_IG38:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x2, x0
             ldr     x15, [x22, #-0x08]
             cbz     x15, G_M1709_IG50
             add     x14, x2, #8
             bl      CORINFO_HELP_ASSIGN_REF
             movz    x14, #0xD1FFAB1E      // code for System.Threading.Tasks.Dataflow.TransformBlock`2+<>c[ubyte,System.Nullable`1[int]]:<.ctor>b__9_7(System.Object,System.Threading.CancellationToken):this
             movk    x14, #0xD1FFAB1E LSL #16
             movk    x14, #0xD1FFAB1E LSL #32
             str     x14, [x2, #0x18]
             add     x14, x22, #40
             mov     x15, x2
             bl      CORINFO_HELP_ASSIGN_REF
 						;; size=64 bbWeight=0.50 PerfScore 6.50
 G_M1709_IG39:
             ldr     x3, [x19, #0x08]
             mov     x0, x21
             mov     x1, x23
             movz    x4, #0xD1FFAB1E      // code for System.Threading.Tasks.Dataflow.Internal.Common:WireCancellationToComplete(System.Threading.CancellationToken,System.Threading.Tasks.Task,System.Action`2[System.Object,System.Threading.CancellationToken],System.Object)
             movk    x4, #0xD1FFAB1E LSL #16
             movk    x4, #0xD1FFAB1E LSL #32
             ldr     x4, [x4]
             blr     x4
             movz    x1, #0xD1FFAB1E
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     w1, [x1]
             tbz     w1, #0, G_M1709_IG51
 						;; size=52 bbWeight=1 PerfScore 15.00
 G_M1709_IG40:
             movz    x1, #0xD1FFAB1E      // data for System.Threading.Tasks.Dataflow.Internal.DataflowEtwProvider:Log
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x22, [x1]
             ldrb    w1, [x22, #0x9D]
             cbz     w1, G_M1709_IG44
 						;; size=24 bbWeight=1 PerfScore 8.50
 G_M1709_IG41:
             ldrb    w1, [x22, #0x9D]
             ldr     x3, [x22, #0x80]
             ldr     w2, [x22, #0x98]
             mov     x0, x22
             mov     w4, #4
             movn    x5, #0
             mov     w6, wzr
             movz    x7, #0xD1FFAB1E      // code for System.Diagnostics.Tracing.EventSource:IsEnabledCommon(ubyte,int,long,int,long,ubyte):ubyte:this
             movk    x7, #0xD1FFAB1E LSL #16
             movk    x7, #0xD1FFAB1E LSL #32
             ldr     x7, [x7]
             blr     x7
             cbz     w0, G_M1709_IG44
             mov     x0, x19
             mov     x1, x20
             movz    x2, #0xD1FFAB1E      // code for System.Threading.Tasks.Dataflow.Internal.Common:GetNameForDebugger(System.Threading.Tasks.Dataflow.IDataflowBlock,System.Threading.Tasks.Dataflow.DataflowBlockOptions):System.String
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             mov     x20, x0
             mov     x0, x19
             movz    x1, #0xD1FFAB1E      // code for System.Threading.Tasks.Dataflow.Internal.Common:GetPotentiallyNotSupportedCompletionTask(System.Threading.Tasks.Dataflow.IDataflowBlock):System.Threading.Tasks.Task
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
             cbnz    x0, G_M1709_IG42
             mov     w3, wzr
             b       G_M1709_IG43
 						;; size=120 bbWeight=0.50 PerfScore 16.50
 G_M1709_IG42:
             movz    x1, #0xD1FFAB1E      // code for System.Threading.Tasks.Task:get_Id():int:this
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
             sxtw    w3, w0
 						;; size=24 bbWeight=0.50 PerfScore 3.00
 G_M1709_IG43:
             mov     x0, x22
             mov     x2, x20
             mov     w1, #1
             movz    x4, #0xD1FFAB1E      // code for System.Diagnostics.Tracing.EventSource:WriteEvent(int,System.String,int):this
             movk    x4, #0xD1FFAB1E LSL #16
             movk    x4, #0xD1FFAB1E LSL #32
             ldr     x4, [x4]
             blr     x4
 						;; size=32 bbWeight=0.50 PerfScore 3.50
 G_M1709_IG44:
             ldp     x27, x28, [sp, #0x80]
             ldp     x25, x26, [sp, #0x70]
             ldp     x23, x24, [sp, #0x60]
             ldp     x21, x22, [sp, #0x50]
             ldp     x19, x20, [sp, #0x40]
             ldp     fp, lr, [sp], #0x90
             ret     lr
 						;; size=28 bbWeight=1 PerfScore 7.00
 G_M1709_IG45:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x19, x0
             mov     w0, #0xD1FFAB1E
             movz    x1, #0xD1FFAB1E
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_STRCNS
             mov     x1, x0
             mov     x0, x19
             movz    x2, #0xD1FFAB1E      // code for System.ArgumentNullException:.ctor(System.String):this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             mov     x0, x19
             bl      CORINFO_HELP_THROW
             brk_unix #0
 						;; size=80 bbWeight=0 PerfScore 0.00
 G_M1709_IG46:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x24, x0
             mov     w0, #0xD1FFAB1E
             movz    x1, #0xD1FFAB1E
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_STRCNS
             mov     x1, x0
             mov     x0, x24
             movz    x2, #0xD1FFAB1E      // code for System.ArgumentNullException:.ctor(System.String):this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             mov     x0, x24
             bl      CORINFO_HELP_THROW
             brk_unix #0
 						;; size=80 bbWeight=0 PerfScore 0.00
 G_M1709_IG47:
             mov     w0, #6
             bl      CORINFO_HELP_GETSHARED_GCTHREADSTATIC_BASE_NOCTOR_OPTIMIZED
             mov     x2, x0
             b       G_M1709_IG26
 						;; size=16 bbWeight=0 PerfScore 0.00
 G_M1709_IG48:
             mov     w0, #49
             movz    x1, #0xD1FFAB1E      // code for System.ThrowHelper:ThrowArgumentNullException(int)
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
             brk_unix #0
 						;; size=28 bbWeight=0 PerfScore 0.00
 G_M1709_IG49:
             mov     w0, #6
             bl      CORINFO_HELP_GETSHARED_GCTHREADSTATIC_BASE_NOCTOR_OPTIMIZED
             mov     x1, x0
             b       G_M1709_IG34
 						;; size=16 bbWeight=0 PerfScore 0.00
 G_M1709_IG50:
             movz    x0, #0xD1FFAB1E      // code for System.MulticastDelegate:ThrowNullThisInDelegateToInstance()
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             ldr     x0, [x0]
             blr     x0
             brk_unix #0
 						;; size=24 bbWeight=0 PerfScore 0.00
 G_M1709_IG51:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             mov     w1, #124
             bl      CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
             b       G_M1709_IG40
 						;; size=24 bbWeight=0 PerfScore 0.00
 
-; Total bytes of code 2972, prolog size 28, PerfScore 450.25, instruction count 743, allocated bytes for code 2972 (MethodHash=ca5ff952) for method System.Threading.Tasks.Dataflow.TransformBlock`2[ubyte,System.Nullable`1[int]]:.ctor(System.Func`2[ubyte,System.Nullable`1[int]],System.Func`2[ubyte,System.Threading.Tasks.Task`1[System.Nullable`1[int]]],System.Threading.Tasks.Dataflow.ExecutionDataflowBlockOptions):this (FullOpts)
+; Total bytes of code 2996, prolog size 28, PerfScore 451.75, instruction count 749, allocated bytes for code 2996 (MethodHash=ca5ff952) for method System.Threading.Tasks.Dataflow.TransformBlock`2[ubyte,System.Nullable`1[int]]:.ctor(System.Func`2[ubyte,System.Nullable`1[int]],System.Func`2[ubyte,System.Threading.Tasks.Task`1[System.Nullable`1[int]]],System.Threading.Tasks.Dataflow.ExecutionDataflowBlockOptions):this (FullOpts)
20 (3.38 % of base) - System.Composition.TypedParts.TypedPartExportDescriptorProvider:GetExportDescriptors(System.Composition.Hosting.Core.CompositionContract,System.Composition.Hosting.Core.DependencyAccessor):System.Collections.Generic.IEnumerable`1[System.Composition.Hosting.Core.ExportDescriptorPromise]:this
 ; Assembly listing for method System.Composition.TypedParts.TypedPartExportDescriptorProvider:GetExportDescriptors(System.Composition.Hosting.Core.CompositionContract,System.Composition.Hosting.Core.DependencyAccessor):System.Collections.Generic.IEnumerable`1[System.Composition.Hosting.Core.ExportDescriptorPromise]:this (FullOpts)
 ; Emitting BLENDED_CODE for generic ARM64 - Unix
 ; FullOpts code
 ; optimized code
 ; fp based frame
 ; partially interruptible
 ; No PGO data
 ; 0 inlinees with PGO data; 2 single block inlinees; 3 inlinees without PGO data
 ; Final local variable assignments
 ;
 ;  V00 this         [V00,T00] (  6,  5.50)     ref  ->  x19         this class-hnd single-def <System.Composition.TypedParts.TypedPartExportDescriptorProvider>
 ;  V01 arg1         [V01,T04] (  3,  3   )     ref  ->  x20         class-hnd single-def <System.Composition.Hosting.Core.CompositionContract>
 ;  V02 arg2         [V02,T05] (  3,  3   )     ref  ->  x21         class-hnd single-def <System.Composition.Hosting.Core.DependencyAccessor>
 ;  V03 loc0         [V03,T01] (  8,  7   )     ref  ->  x22         class-hnd exact single-def <System.Composition.TypedParts.TypedPartExportDescriptorProvider+<>c__DisplayClass4_0>
-;  V04 loc1         [V04,T12] (  3,  1.50)     ref  ->  x20         ld-addr-op class-hnd <System.Collections.Generic.ICollection`1[System.Composition.TypedParts.Discovery.DiscoveredExport]>
+;  V04 loc1         [V04,T11] (  3,  1.50)     ref  ->  x20         ld-addr-op class-hnd <System.Collections.Generic.ICollection`1[System.Composition.TypedParts.Discovery.DiscoveredExport]>
 ;# V05 OutArgs      [V05    ] (  1,  1   )  struct ( 0) [sp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
 ;* V06 tmp1         [V06    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "NewObj constructor temp" <System.Composition.TypedParts.TypedPartExportDescriptorProvider+<>c__DisplayClass4_0>
-;  V07 tmp2         [V07,T14] (  2,  2   )     ref  ->   x2         class-hnd single-def "dup spill" <System.Func`2[System.Composition.TypedParts.Discovery.DiscoveredExport,ubyte]>
+;  V07 tmp2         [V07,T13] (  2,  2   )     ref  ->   x2         class-hnd single-def "dup spill" <System.Func`2[System.Composition.TypedParts.Discovery.DiscoveredExport,ubyte]>
 ;* V08 tmp3         [V08    ] (  0,  0   )     ref  ->  zero-ref    class-hnd single-def "impAppendStmt" <System.Collections.Generic.ICollection`1[System.Composition.TypedParts.Discovery.DiscoveredExport]>
 ;* V09 tmp4         [V09    ] (  0,  0   )     ref  ->  zero-ref    single-def
-;  V10 tmp5         [V10,T13] (  4,  2   )     ref  ->   x2        
+;  V10 tmp5         [V10,T12] (  4,  2   )     ref  ->   x2        
 ;  V11 tmp6         [V11,T06] (  4,  4   )     ref  ->   x0         class-hnd exact single-def "NewObj constructor temp" <System.Func`2[System.Composition.TypedParts.Discovery.DiscoveredExport,System.Composition.Hosting.Core.ExportDescriptorPromise]>
 ;* V12 tmp7         [V12    ] (  0,  0   )     ref  ->  zero-ref    class-hnd single-def "impAppendStmt" <System.Collections.Generic.ICollection`1[System.Composition.TypedParts.Discovery.DiscoveredExport]>
 ;  V13 tmp8         [V13,T03] (  5,  5   )     ref  ->   x2         class-hnd exact single-def "NewObj constructor temp" <System.Func`2[System.Composition.TypedParts.Discovery.DiscoveredExport,ubyte]>
-;* V14 tmp9         [V14,T16] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
+;* V14 tmp9         [V14,T15] (  0,  0   )   ubyte  ->  zero-ref    "Inline return value spill temp"
 ;  V15 tmp10        [V15,T02] (  3,  6   )     ref  ->   x0         class-hnd single-def "Inlining Arg" <System.Collections.Generic.Dictionary`2[System.Composition.Hosting.Core.CompositionContract,System.Collections.Generic.ICollection`1[System.Composition.TypedParts.Discovery.DiscoveredExport]]>
 ;  V16 tmp11        [V16,T07] (  2,  4   )     ref  ->   x1         class-hnd exact single-def "Inlining Arg" <System.Composition.Hosting.Core.CompositionContract>
-;  V17 tmp12        [V17,T11] (  3,  2.50)   byref  ->   x0         single-def "Inline stloc first use temp"
+;  V17 tmp12        [V17,T10] (  3,  2.50)   byref  ->   x0         single-def "Inline stloc first use temp"
 ;  V18 tmp13        [V18,T09] (  3,  3   )     ref  ->  x15         class-hnd exact single-def "Inlining Arg" <System.Composition.TypedParts.TypedPartExportDescriptorProvider+<>c>
-;  V19 tmp14        [V19,T15] (  2,  2   )     ref  ->   x1         single-def "argument with side effect"
-;* V20 cse0         [V20,T17] (  0,  0   )    long  ->  zero-ref    "CSE #03: aggressive"
-;  V21 cse1         [V21,T10] (  5,  2.50)    long  ->  x21         "CSE #04: aggressive"
-;  V22 cse2         [V22,T08] (  6,  3   )    long  ->  registers   multi-def "CSE #01: aggressive"
+;  V19 tmp14        [V19,T14] (  2,  2   )     ref  ->   x1         single-def "argument with side effect"
+;* V20 cse0         [V20,T16] (  0,  0   )    long  ->  zero-ref    "CSE #03: aggressive"
+;  V21 cse1         [V21,T08] (  6,  3   )    long  ->  registers   multi-def "CSE #01: aggressive"
 ;
 ; Lcl frame size = 0
 
 G_M27698_IG01:
             stp     fp, lr, [sp, #-0x30]!
             stp     x19, x20, [sp, #0x10]
             stp     x21, x22, [sp, #0x20]
             mov     fp, sp
             mov     x19, x0
             mov     x20, x1
             mov     x21, x2
 						;; size=28 bbWeight=1 PerfScore 5.00
 G_M27698_IG02:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x22, x0
             add     x14, x22, #8
             mov     x15, x20
             bl      CORINFO_HELP_ASSIGN_REF
             add     x14, x22, #16
             mov     x15, x21
             bl      CORINFO_HELP_ASSIGN_REF
             ldr     x1, [x22, #0x08]
             mov     x0, x19
             movz    x2, #0xD1FFAB1E      // code for System.Composition.TypedParts.TypedPartExportDescriptorProvider:DiscoverGenericParts(System.Composition.Hosting.Core.CompositionContract):this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             ldr     x1, [x22, #0x08]
             mov     x0, x19
             movz    x2, #0xD1FFAB1E      // code for System.Composition.TypedParts.TypedPartExportDescriptorProvider:DiscoverConstrainedParts(System.Composition.Hosting.Core.CompositionContract):this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             ldr     x0, [x19, #0x08]
             ldr     x1, [x22, #0x08]
             ldrsb   wzr, [x0]
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:FindValue(System.__Canon):byref:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
             cbz     x0, G_M27698_IG04
 						;; size=136 bbWeight=1 PerfScore 40.50
 G_M27698_IG03:
             ldr     x20, [x0]
             b       G_M27698_IG07
 						;; size=8 bbWeight=0.50 PerfScore 2.00
 G_M27698_IG04:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             ldr     w0, [x0]
             tbz     w0, #0, G_M27698_IG12
 						;; size=20 bbWeight=0.50 PerfScore 2.75
 G_M27698_IG05:
             movz    x20, #0xD1FFAB1E
             movk    x20, #0xD1FFAB1E LSL #16
             movk    x20, #0xD1FFAB1E LSL #32
             ldr     x0, [x20, #0xD1FFAB1E]
 						;; size=16 bbWeight=0.50 PerfScore 2.25
 G_M27698_IG06:
             ldp     x21, x22, [sp, #0x20]
             ldp     x19, x20, [sp, #0x10]
             ldp     fp, lr, [sp], #0x30
             ret     lr
 						;; size=16 bbWeight=0.50 PerfScore 2.00
 G_M27698_IG07:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             ldr     w0, [x0]
             tbz     w0, #0, G_M27698_IG13
 						;; size=20 bbWeight=0.50 PerfScore 2.75
 G_M27698_IG08:
             movz    x0, #0xD1FFAB1E      // data for System.Composition.TypedParts.TypedPartExportDescriptorProvider+<>c:<>9__4_0
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             mov     x21, x0
             ldr     x2, [x21]
             cbnz    x2, G_M27698_IG09
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x2, x0
             ldr     x15, [x21, #-0x08]
             cbz     x15, G_M27698_IG14
             add     x14, x2, #8
             bl      CORINFO_HELP_ASSIGN_REF
             movz    x14, #0xD1FFAB1E      // code for System.Composition.TypedParts.TypedPartExportDescriptorProvider+<>c:<GetExportDescriptors>b__4_0(System.Composition.TypedParts.Discovery.DiscoveredExport):ubyte:this
             movk    x14, #0xD1FFAB1E LSL #16
             movk    x14, #0xD1FFAB1E LSL #32
             str     x14, [x2, #0x18]
             mov     x14, x21
             mov     x15, x2
             bl      CORINFO_HELP_ASSIGN_REF
 						;; size=88 bbWeight=0.50 PerfScore 9.50
 G_M27698_IG09:
             mov     x1, x20
-            movz    x21, #0xD1FFAB1E
-            movk    x21, #0xD1FFAB1E LSL #16
-            movk    x21, #0xD1FFAB1E LSL #32
-            mov     x0, x21
+            movz    x0, #0xD1FFAB1E
+            movk    x0, #0xD1FFAB1E LSL #16
+            movk    x0, #0xD1FFAB1E LSL #32
             movz    x3, #0xD1FFAB1E      // code for System.Linq.Enumerable:Any[System.__Canon](System.Collections.Generic.IEnumerable`1[System.__Canon],System.Func`2[System.__Canon,ubyte]):ubyte
             movk    x3, #0xD1FFAB1E LSL #16
             movk    x3, #0xD1FFAB1E LSL #32
             ldr     x3, [x3]
             blr     x3
             cbnz    w0, G_M27698_IG10
             ldr     x0, [x19, #0x08]
             ldr     x1, [x22, #0x08]
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:Remove(System.__Canon):ubyte:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             ldr     wzr, [x0]
             blr     x2
-						;; size=76 bbWeight=0.50 PerfScore 11.75
+						;; size=72 bbWeight=0.50 PerfScore 11.50
 G_M27698_IG10:
-            add     x0, x21, #0xD1FFAB1E
+            movz    x0, #0xD1FFAB1E
+            movk    x0, #0xD1FFAB1E LSL #16
+            movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             add     x14, x0, #8
             mov     x15, x22
             bl      CORINFO_HELP_ASSIGN_REF
             movz    x2, #0xD1FFAB1E      // code for System.Composition.TypedParts.TypedPartExportDescriptorProvider+<>c__DisplayClass4_0:<GetExportDescriptors>b__1(System.Composition.TypedParts.Discovery.DiscoveredExport):System.Composition.Hosting.Core.ExportDescriptorPromise:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             str     x2, [x0, #0x18]
             mov     x2, x0
             mov     x1, x20
-            add     x0, x21, #0xD1FFAB1E
+            movz    x0, #0xD1FFAB1E
+            movk    x0, #0xD1FFAB1E LSL #16
+            movk    x0, #0xD1FFAB1E LSL #32
             movz    x3, #0xD1FFAB1E      // code for System.Linq.Enumerable:Select[System.__Canon,System.__Canon](System.Collections.Generic.IEnumerable`1[System.__Canon],System.Func`2[System.__Canon,System.__Canon]):System.Collections.Generic.IEnumerable`1[System.__Canon]
             movk    x3, #0xD1FFAB1E LSL #16
             movk    x3, #0xD1FFAB1E LSL #32
             ldr     x3, [x3]
             blr     x3
             mov     x1, x0
-            add     x0, x21, #0xD1FFAB1E
+            movz    x0, #0xD1FFAB1E
+            movk    x0, #0xD1FFAB1E LSL #16
+            movk    x0, #0xD1FFAB1E LSL #32
             movz    x2, #0xD1FFAB1E      // code for System.Linq.Enumerable:ToArray[System.__Canon](System.Collections.Generic.IEnumerable`1[System.__Canon]):System.__Canon[]
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-						;; size=96 bbWeight=0.50 PerfScore 9.75
+						;; size=120 bbWeight=0.50 PerfScore 11.25
 G_M27698_IG11:
             ldp     x21, x22, [sp, #0x20]
             ldp     x19, x20, [sp, #0x10]
             ldp     fp, lr, [sp], #0x30
             ret     lr
 						;; size=16 bbWeight=0.50 PerfScore 2.00
 G_M27698_IG12:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             mov     w1, #24
             bl      CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
             b       G_M27698_IG05
 						;; size=24 bbWeight=0 PerfScore 0.00
 G_M27698_IG13:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             mov     w1, #33
             bl      CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
             b       G_M27698_IG08
 						;; size=24 bbWeight=0 PerfScore 0.00
 G_M27698_IG14:
             movz    x0, #0xD1FFAB1E      // code for System.MulticastDelegate:ThrowNullThisInDelegateToInstance()
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             ldr     x0, [x0]
             blr     x0
             brk_unix #0
 						;; size=24 bbWeight=0 PerfScore 0.00
 
-; Total bytes of code 592, prolog size 16, PerfScore 90.25, instruction count 148, allocated bytes for code 592 (MethodHash=58d193cd) for method System.Composition.TypedParts.TypedPartExportDescriptorProvider:GetExportDescriptors(System.Composition.Hosting.Core.CompositionContract,System.Composition.Hosting.Core.DependencyAccessor):System.Collections.Generic.IEnumerable`1[System.Composition.Hosting.Core.ExportDescriptorPromise]:this (FullOpts)
+; Total bytes of code 612, prolog size 16, PerfScore 91.50, instruction count 153, allocated bytes for code 612 (MethodHash=58d193cd) for method System.Composition.TypedParts.TypedPartExportDescriptorProvider:GetExportDescriptors(System.Composition.Hosting.Core.CompositionContract,System.Composition.Hosting.Core.DependencyAccessor):System.Collections.Generic.IEnumerable`1[System.Composition.Hosting.Core.ExportDescriptorPromise]:this (FullOpts)
20 (2.96 % of base) - System.Data.SortExpressionBuilder`1[double]:CloneCast[short]():System.Data.SortExpressionBuilder`1[short]:this
 ; Assembly listing for method System.Data.SortExpressionBuilder`1[double]:CloneCast[short]():System.Data.SortExpressionBuilder`1[short]:this (FullOpts)
 ; Emitting BLENDED_CODE for generic ARM64 - Unix
 ; FullOpts code
 ; optimized code
 ; fp based frame
 ; partially interruptible
 ; No PGO data
 ; 0 inlinees with PGO data; 12 single block inlinees; 4 inlinees without PGO data
 ; Final local variable assignments
 ;
 ;  V00 this         [V00,T06] (  6, 12   )     ref  ->  x19         this class-hnd single-def <System.Data.SortExpressionBuilder`1[double]>
 ;  V01 loc0         [V01,T05] (  8, 14   )     ref  ->  x20         class-hnd exact single-def <System.Data.SortExpressionBuilder`1[short]>
-;  V02 loc1         [V02    ] (  8, 14   )  struct (32) [fp+0x30]  do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Collections.Generic.LinkedList`1+Enumerator[System.Func`2[double,System.Object]]>
-;  V03 loc2         [V03,T08] (  4, 12   )     ref  ->  x22         class-hnd exact <System.Data.SortExpressionBuilder`1+<>c__DisplayClass10_0`1[double,short]>
-;  V04 loc3         [V04    ] (  8, 14   )  struct (32) [fp+0x10]  do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Collections.Generic.LinkedList`1+Enumerator[System.Comparison`1[System.Object]]>
+;  V02 loc1         [V02    ] (  8, 14   )  struct (32) [fp+0x38]  do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Collections.Generic.LinkedList`1+Enumerator[System.Func`2[double,System.Object]]>
+;  V03 loc2         [V03,T08] (  4, 12   )     ref  ->  x23         class-hnd exact <System.Data.SortExpressionBuilder`1+<>c__DisplayClass10_0`1[double,short]>
+;  V04 loc3         [V04    ] (  8, 14   )  struct (32) [fp+0x18]  do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Collections.Generic.LinkedList`1+Enumerator[System.Comparison`1[System.Object]]>
 ;  V05 loc4         [V05,T07] (  6, 14   )     ref  ->  x22         class-hnd <System.Comparison`1[System.Object]>
 ;# V06 OutArgs      [V06    ] (  1,  1   )  struct ( 0) [sp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-;  V07 tmp1         [V07,T15] (  3,  6   )     ref  ->  x20         class-hnd exact single-def "NewObj constructor temp" <System.Data.SortExpressionBuilder`1[short]>
+;  V07 tmp1         [V07,T14] (  3,  6   )     ref  ->  x20         class-hnd exact single-def "NewObj constructor temp" <System.Data.SortExpressionBuilder`1[short]>
 ;* V08 tmp2         [V08    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "NewObj constructor temp" <System.Data.SortExpressionBuilder`1+<>c__DisplayClass10_0`1[double,short]>
 ;  V09 tmp3         [V09,T02] (  4, 20   )     ref  ->   x1         class-hnd "impAppendStmt" <System.Func`2[double,System.Object]>
 ;  V10 tmp4         [V10,T03] (  4, 16   )     ref  ->   x1         class-hnd exact "NewObj constructor temp" <System.Func`2[short,System.Object]>
-;  V11 tmp5         [V11,T13] (  2,  8   )     ref  ->   x0         class-hnd "impAppendStmt" <System.Collections.Generic.LinkedList`1[System.Func`2[short,System.Object]]>
+;  V11 tmp5         [V11,T12] (  2,  8   )     ref  ->   x0         class-hnd "impAppendStmt" <System.Collections.Generic.LinkedList`1[System.Func`2[short,System.Object]]>
 ;  V12 tmp6         [V12,T04] (  4, 16   )     ref  ->   x1         class-hnd exact "NewObj constructor temp" <System.Func`2[short,System.Object]>
-;  V13 tmp7         [V13,T14] (  2,  8   )     ref  ->   x0         class-hnd "impAppendStmt" <System.Collections.Generic.LinkedList`1[System.Func`2[short,System.Object]]>
-;  V14 tmp8         [V14,T11] (  4,  8   )     ref  ->   x0         class-hnd single-def "Inlining Arg" <System.Collections.Generic.LinkedList`1[System.Func`2[double,System.Object]]>
+;  V13 tmp7         [V13,T13] (  2,  8   )     ref  ->   x0         class-hnd "impAppendStmt" <System.Collections.Generic.LinkedList`1[System.Func`2[short,System.Object]]>
+;  V14 tmp8         [V14,T10] (  4,  8   )     ref  ->   x0         class-hnd single-def "Inlining Arg" <System.Collections.Generic.LinkedList`1[System.Func`2[double,System.Object]]>
 ;* V15 tmp9         [V15    ] (  0,  0   )  struct (32) zero-ref    do-not-enreg[SF] ld-addr-op "NewObj constructor temp" <System.Collections.Generic.LinkedList`1+Enumerator[System.Func`2[double,System.Object]]>
 ;* V16 tmp10        [V16    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.Collections.Generic.LinkedListNode`1[System.Func`2[double,System.Object]]>
-;  V17 tmp11        [V17,T16] (  2,  4   )   ubyte  ->   x0         "Inline return value spill temp"
+;  V17 tmp11        [V17,T15] (  2,  4   )   ubyte  ->   x0         "Inline return value spill temp"
 ;  V18 tmp12        [V18,T00] (  5, 28   )     ref  ->   x0         class-hnd "Inlining Arg" <System.__Canon>
-;  V19 tmp13        [V19,T12] (  4,  8   )     ref  ->   x0         class-hnd single-def "Inlining Arg" <System.Collections.Generic.LinkedList`1[System.Comparison`1[System.Object]]>
+;  V19 tmp13        [V19,T11] (  4,  8   )     ref  ->   x0         class-hnd single-def "Inlining Arg" <System.Collections.Generic.LinkedList`1[System.Comparison`1[System.Object]]>
 ;* V20 tmp14        [V20    ] (  0,  0   )  struct (32) zero-ref    do-not-enreg[SF] ld-addr-op "NewObj constructor temp" <System.Collections.Generic.LinkedList`1+Enumerator[System.Comparison`1[System.Object]]>
 ;* V21 tmp15        [V21    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.Collections.Generic.LinkedListNode`1[System.Comparison`1[System.Object]]>
-;  V22 tmp16        [V22,T17] (  2,  4   )   ubyte  ->   x0         "Inline return value spill temp"
+;  V22 tmp16        [V22,T16] (  2,  4   )   ubyte  ->   x0         "Inline return value spill temp"
 ;  V23 tmp17        [V23,T01] (  5, 28   )     ref  ->   x0         class-hnd "Inlining Arg" <System.__Canon>
 ;* V24 tmp18        [V24    ] (  0,  0   )     ref  ->  zero-ref    single-def "V15.[000..008)"
-;  V25 tmp19        [V25,T19] (  2,  2   )     ref  ->   x2         single-def "V15.[008..016)"
+;  V25 tmp19        [V25,T20] (  2,  2   )     ref  ->   x2         single-def "V15.[008..016)"
 ;* V26 tmp20        [V26    ] (  0,  0   )     ref  ->  zero-ref    "V15.[016..024)"
-;  V27 tmp21        [V27,T21] (  2,  2   )     int  ->   x1         "V15.[024..028)"
+;  V27 tmp21        [V27,T22] (  2,  2   )     int  ->   x1         "V15.[024..028)"
 ;* V28 tmp22        [V28    ] (  0,  0   )     int  ->  zero-ref    "V15.[028..032)"
 ;* V29 tmp23        [V29    ] (  0,  0   )     ref  ->  zero-ref    single-def "V20.[000..008)"
-;  V30 tmp24        [V30,T20] (  2,  2   )     ref  ->   x2         single-def "V20.[008..016)"
+;  V30 tmp24        [V30,T21] (  2,  2   )     ref  ->   x2         single-def "V20.[008..016)"
 ;* V31 tmp25        [V31    ] (  0,  0   )     ref  ->  zero-ref    "V20.[016..024)"
-;  V32 tmp26        [V32,T22] (  2,  2   )     int  ->   x1         "V20.[024..028)"
+;  V32 tmp26        [V32,T23] (  2,  2   )     int  ->   x1         "V20.[024..028)"
 ;* V33 tmp27        [V33    ] (  0,  0   )     int  ->  zero-ref    "V20.[028..032)"
-;  V34 cse0         [V34,T10] (  4, 10   )    long  ->  x21         "CSE #01: aggressive"
-;  V35 cse1         [V35,T18] (  3,  6   )    long  ->  x21         "CSE #05: moderate"
-;  V36 cse2         [V36,T09] (  3, 12   )     ref  ->   x1         "CSE #02: aggressive"
+;  V34 cse0         [V34,T17] (  3,  6   )    long  ->  x21         "CSE #01: moderate"
+;  V35 cse1         [V35,T18] (  3,  6   )    long  ->  x21         "CSE #06: moderate"
+;  V36 cse2         [V36,T19] (  2,  4.25)    long  ->  x22         hoist "CSE #02: moderate"
+;  V37 cse3         [V37,T09] (  3, 12   )     ref  ->   x1         "CSE #03: aggressive"
 ;
-; Lcl frame size = 64
+; Lcl frame size = 72
 
 G_M65338_IG01:
-            stp     fp, lr, [sp, #-0x70]!
-            stp     x19, x20, [sp, #0x50]
-            stp     x21, x22, [sp, #0x60]
+            stp     fp, lr, [sp, #-0x80]!
+            stp     x19, x20, [sp, #0x58]
+            stp     x21, x22, [sp, #0x68]
+            str     x23, [sp, #0x78]
             mov     fp, sp
-            add     x9, fp, #16
+            add     x9, fp, #24
             movi    v16.16b, #0
             stp     q16, q16, [x9]
             stp     q16, q16, [x9, #0x20]
             mov     x19, x0
-						;; size=36 bbWeight=1 PerfScore 7.00
+						;; size=40 bbWeight=1 PerfScore 8.00
 G_M65338_IG02:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x20, x0
             movz    x1, #0xD1FFAB1E      // code for System.Data.SortExpressionBuilder`1[short]:.ctor():this
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
             ldr     x0, [x19, #0x08]
             ldr     w1, [x0, #0x1C]
             ldr     x2, [x0, #0x08]
-            stp     x0, x2, [fp, #0x30]	// [V02 loc1], [V02 loc1+0x08]
-            str     xzr, [fp, #0x40]	// [V02 loc1+0x10]
-            stp     w1, wzr, [fp, #0x48]	// [V02 loc1+0x18], [V02 loc1+0x1c]
-            add     x0, fp, #48	// [V02 loc1]
+            stp     x0, x2, [fp, #0x38]	// [V02 loc1], [V02 loc1+0x08]
+            str     xzr, [fp, #0x48]	// [V02 loc1+0x10]
+            stp     w1, wzr, [fp, #0x50]	// [V02 loc1+0x18], [V02 loc1+0x1c]
+            add     x0, fp, #56	// [V02 loc1]
             movz    x21, #0xD1FFAB1E
             movk    x21, #0xD1FFAB1E LSL #16
             movk    x21, #0xD1FFAB1E LSL #32
             mov     x1, x21
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            cbz     w0, G_M65338_IG09
+            cbz     w0, G_M65338_IG10
 						;; size=108 bbWeight=1 PerfScore 29.50
 G_M65338_IG03:
-            add     x0, x21, #0xD1FFAB1E
+            movz    x22, #0xD1FFAB1E
+            movk    x22, #0xD1FFAB1E LSL #16
+            movk    x22, #0xD1FFAB1E LSL #32
+						;; size=12 bbWeight=0.25 PerfScore 0.38
+G_M65338_IG04:
+            mov     x0, x22
             bl      CORINFO_HELP_NEWSFAST
-            mov     x22, x0
-            ldr     x1, [fp, #0x40]	// [V02 loc1+0x10]
-            add     x14, x22, #8
+            mov     x23, x0
+            ldr     x1, [fp, #0x48]	// [V02 loc1+0x10]
+            add     x14, x23, #8
             mov     x15, x1
             bl      CORINFO_HELP_ASSIGN_REF
             ldr     x0, [x19, #0x18]
             ldr     x0, [x0, #0x20]
-            cbnz    x0, G_M65338_IG05
+            cbnz    x0, G_M65338_IG06
 						;; size=40 bbWeight=4 PerfScore 52.00
-G_M65338_IG04:
-            cbnz    x1, G_M65338_IG07
-            b       G_M65338_IG06
-						;; size=8 bbWeight=2 PerfScore 4.00
 G_M65338_IG05:
+            cbnz    x1, G_M65338_IG08
+            b       G_M65338_IG07
+						;; size=8 bbWeight=2 PerfScore 4.00
+G_M65338_IG06:
             cmp     x0, x1
-            beq     G_M65338_IG06
+            beq     G_M65338_IG07
             ldr     x2, [x0]
             ldr     x2, [x2, #0x40]
             ldr     x2, [x2, #0x10]
             blr     x2
-            cbz     w0, G_M65338_IG07
+            cbz     w0, G_M65338_IG08
 						;; size=28 bbWeight=2 PerfScore 25.00
-G_M65338_IG06:
+G_M65338_IG07:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x1, x0
             ldr     x0, [x20, #0x08]
             add     x14, x1, #8
-            mov     x15, x22
+            mov     x15, x23
             bl      CORINFO_HELP_ASSIGN_REF
             movz    x2, #0xD1FFAB1E      // code for System.Data.SortExpressionBuilder`1+<>c__DisplayClass10_0`1[double,short]:<CloneCast>b__0(short):System.Object:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             str     x2, [x1, #0x18]
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1[System.__Canon]:AddLast(System.__Canon):System.Collections.Generic.LinkedListNode`1[System.__Canon]:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             ldr     wzr, [x0]
             blr     x2
             add     x14, x20, #24
             mov     x15, x0
             bl      CORINFO_HELP_ASSIGN_REF
-            b       G_M65338_IG08
+            b       G_M65338_IG09
 						;; size=92 bbWeight=2 PerfScore 44.00
-G_M65338_IG07:
+G_M65338_IG08:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x1, x0
             ldr     x0, [x20, #0x08]
             add     x14, x1, #8
-            mov     x15, x22
+            mov     x15, x23
             bl      CORINFO_HELP_ASSIGN_REF
             movz    x2, #0xD1FFAB1E      // code for System.Data.SortExpressionBuilder`1+<>c__DisplayClass10_0`1[double,short]:<CloneCast>b__1(short):System.Object:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             str     x2, [x1, #0x18]
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1[System.__Canon]:AddLast(System.__Canon):System.Collections.Generic.LinkedListNode`1[System.__Canon]:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             ldr     wzr, [x0]
             blr     x2
 						;; size=76 bbWeight=2 PerfScore 38.00
-G_M65338_IG08:
-            add     x0, fp, #48	// [V02 loc1]
+G_M65338_IG09:
+            add     x0, fp, #56	// [V02 loc1]
             mov     x1, x21
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            cbnz    w0, G_M65338_IG03
+            cbnz    w0, G_M65338_IG04
 						;; size=32 bbWeight=4 PerfScore 30.00
-G_M65338_IG09:
+G_M65338_IG10:
             ldr     x0, [x19, #0x10]
             ldr     w1, [x0, #0x1C]
             ldr     x2, [x0, #0x08]
-            stp     x0, x2, [fp, #0x10]	// [V04 loc3], [V04 loc3+0x08]
-            str     xzr, [fp, #0x20]	// [V04 loc3+0x10]
-            stp     w1, wzr, [fp, #0x28]	// [V04 loc3+0x18], [V04 loc3+0x1c]
-            add     x0, fp, #16	// [V04 loc3]
+            stp     x0, x2, [fp, #0x18]	// [V04 loc3], [V04 loc3+0x08]
+            str     xzr, [fp, #0x28]	// [V04 loc3+0x10]
+            stp     w1, wzr, [fp, #0x30]	// [V04 loc3+0x18], [V04 loc3+0x1c]
+            add     x0, fp, #24	// [V04 loc3]
             movz    x21, #0xD1FFAB1E
             movk    x21, #0xD1FFAB1E LSL #16
             movk    x21, #0xD1FFAB1E LSL #32
             mov     x1, x21
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            cbz     w0, G_M65338_IG16
+            cbz     w0, G_M65338_IG17
 						;; size=68 bbWeight=1 PerfScore 21.00
-G_M65338_IG10:
-            ldr     x22, [fp, #0x20]	// [V04 loc3+0x10]
+G_M65338_IG11:
+            ldr     x22, [fp, #0x28]	// [V04 loc3+0x10]
             ldr     x0, [x19, #0x20]
             ldr     x0, [x0, #0x20]
-            cbnz    x0, G_M65338_IG12
+            cbnz    x0, G_M65338_IG13
 						;; size=16 bbWeight=4 PerfScore 36.00
-G_M65338_IG11:
-            cbnz    x22, G_M65338_IG14
-            b       G_M65338_IG13
-						;; size=8 bbWeight=2 PerfScore 4.00
 G_M65338_IG12:
+            cbnz    x22, G_M65338_IG15
+            b       G_M65338_IG14
+						;; size=8 bbWeight=2 PerfScore 4.00
+G_M65338_IG13:
             cmp     x0, x22
-            beq     G_M65338_IG13
+            beq     G_M65338_IG14
             mov     x1, x22
             ldr     x2, [x0]
             ldr     x2, [x2, #0x40]
             ldr     x2, [x2, #0x10]
             blr     x2
-            cbz     w0, G_M65338_IG14
+            cbz     w0, G_M65338_IG15
 						;; size=32 bbWeight=2 PerfScore 26.00
-G_M65338_IG13:
+G_M65338_IG14:
             ldr     x0, [x20, #0x10]
             mov     x1, x22
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1[System.__Canon]:AddLast(System.__Canon):System.Collections.Generic.LinkedListNode`1[System.__Canon]:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             ldr     wzr, [x0]
             blr     x2
             add     x14, x20, #32
             mov     x15, x0
             bl      CORINFO_HELP_ASSIGN_REF
-            b       G_M65338_IG15
+            b       G_M65338_IG16
 						;; size=48 bbWeight=2 PerfScore 30.00
-G_M65338_IG14:
+G_M65338_IG15:
             ldr     x0, [x20, #0x10]
             mov     x1, x22
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1[System.__Canon]:AddLast(System.__Canon):System.Collections.Generic.LinkedListNode`1[System.__Canon]:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             ldr     wzr, [x0]
             blr     x2
 						;; size=32 bbWeight=2 PerfScore 24.00
-G_M65338_IG15:
-            add     x0, fp, #16	// [V04 loc3]
+G_M65338_IG16:
+            add     x0, fp, #24	// [V04 loc3]
             mov     x1, x21
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            cbnz    w0, G_M65338_IG10
+            cbnz    w0, G_M65338_IG11
 						;; size=32 bbWeight=4 PerfScore 30.00
-G_M65338_IG16:
+G_M65338_IG17:
             mov     x0, x20
 						;; size=4 bbWeight=1 PerfScore 0.50
-G_M65338_IG17:
-            ldp     x21, x22, [sp, #0x60]
-            ldp     x19, x20, [sp, #0x50]
-            ldp     fp, lr, [sp], #0x70
+G_M65338_IG18:
+            ldr     x23, [sp, #0x78]
+            ldp     x21, x22, [sp, #0x68]
+            ldp     x19, x20, [sp, #0x58]
+            ldp     fp, lr, [sp], #0x80
             ret     lr
-						;; size=16 bbWeight=1 PerfScore 4.00
+						;; size=20 bbWeight=1 PerfScore 6.00
 
-; Total bytes of code 676, prolog size 32, PerfScore 405.00, instruction count 169, allocated bytes for code 676 (MethodHash=88c300c5) for method System.Data.SortExpressionBuilder`1[double]:CloneCast[short]():System.Data.SortExpressionBuilder`1[short]:this (FullOpts)
+; Total bytes of code 696, prolog size 36, PerfScore 408.38, instruction count 174, allocated bytes for code 696 (MethodHash=88c300c5) for method System.Data.SortExpressionBuilder`1[double]:CloneCast[short]():System.Data.SortExpressionBuilder`1[short]:this (FullOpts)
20 (2.96 % of base) - System.Data.SortExpressionBuilder`1[double]:CloneCast[ubyte]():System.Data.SortExpressionBuilder`1[ubyte]:this
 ; Assembly listing for method System.Data.SortExpressionBuilder`1[double]:CloneCast[ubyte]():System.Data.SortExpressionBuilder`1[ubyte]:this (FullOpts)
 ; Emitting BLENDED_CODE for generic ARM64 - Unix
 ; FullOpts code
 ; optimized code
 ; fp based frame
 ; partially interruptible
 ; No PGO data
 ; 0 inlinees with PGO data; 12 single block inlinees; 4 inlinees without PGO data
 ; Final local variable assignments
 ;
 ;  V00 this         [V00,T06] (  6, 12   )     ref  ->  x19         this class-hnd single-def <System.Data.SortExpressionBuilder`1[double]>
 ;  V01 loc0         [V01,T05] (  8, 14   )     ref  ->  x20         class-hnd exact single-def <System.Data.SortExpressionBuilder`1[ubyte]>
-;  V02 loc1         [V02    ] (  8, 14   )  struct (32) [fp+0x30]  do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Collections.Generic.LinkedList`1+Enumerator[System.Func`2[double,System.Object]]>
-;  V03 loc2         [V03,T08] (  4, 12   )     ref  ->  x22         class-hnd exact <System.Data.SortExpressionBuilder`1+<>c__DisplayClass10_0`1[double,ubyte]>
-;  V04 loc3         [V04    ] (  8, 14   )  struct (32) [fp+0x10]  do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Collections.Generic.LinkedList`1+Enumerator[System.Comparison`1[System.Object]]>
+;  V02 loc1         [V02    ] (  8, 14   )  struct (32) [fp+0x38]  do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Collections.Generic.LinkedList`1+Enumerator[System.Func`2[double,System.Object]]>
+;  V03 loc2         [V03,T08] (  4, 12   )     ref  ->  x23         class-hnd exact <System.Data.SortExpressionBuilder`1+<>c__DisplayClass10_0`1[double,ubyte]>
+;  V04 loc3         [V04    ] (  8, 14   )  struct (32) [fp+0x18]  do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Collections.Generic.LinkedList`1+Enumerator[System.Comparison`1[System.Object]]>
 ;  V05 loc4         [V05,T07] (  6, 14   )     ref  ->  x22         class-hnd <System.Comparison`1[System.Object]>
 ;# V06 OutArgs      [V06    ] (  1,  1   )  struct ( 0) [sp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-;  V07 tmp1         [V07,T15] (  3,  6   )     ref  ->  x20         class-hnd exact single-def "NewObj constructor temp" <System.Data.SortExpressionBuilder`1[ubyte]>
+;  V07 tmp1         [V07,T14] (  3,  6   )     ref  ->  x20         class-hnd exact single-def "NewObj constructor temp" <System.Data.SortExpressionBuilder`1[ubyte]>
 ;* V08 tmp2         [V08    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "NewObj constructor temp" <System.Data.SortExpressionBuilder`1+<>c__DisplayClass10_0`1[double,ubyte]>
 ;  V09 tmp3         [V09,T02] (  4, 20   )     ref  ->   x1         class-hnd "impAppendStmt" <System.Func`2[double,System.Object]>
 ;  V10 tmp4         [V10,T03] (  4, 16   )     ref  ->   x1         class-hnd exact "NewObj constructor temp" <System.Func`2[ubyte,System.Object]>
-;  V11 tmp5         [V11,T13] (  2,  8   )     ref  ->   x0         class-hnd "impAppendStmt" <System.Collections.Generic.LinkedList`1[System.Func`2[ubyte,System.Object]]>
+;  V11 tmp5         [V11,T12] (  2,  8   )     ref  ->   x0         class-hnd "impAppendStmt" <System.Collections.Generic.LinkedList`1[System.Func`2[ubyte,System.Object]]>
 ;  V12 tmp6         [V12,T04] (  4, 16   )     ref  ->   x1         class-hnd exact "NewObj constructor temp" <System.Func`2[ubyte,System.Object]>
-;  V13 tmp7         [V13,T14] (  2,  8   )     ref  ->   x0         class-hnd "impAppendStmt" <System.Collections.Generic.LinkedList`1[System.Func`2[ubyte,System.Object]]>
-;  V14 tmp8         [V14,T11] (  4,  8   )     ref  ->   x0         class-hnd single-def "Inlining Arg" <System.Collections.Generic.LinkedList`1[System.Func`2[double,System.Object]]>
+;  V13 tmp7         [V13,T13] (  2,  8   )     ref  ->   x0         class-hnd "impAppendStmt" <System.Collections.Generic.LinkedList`1[System.Func`2[ubyte,System.Object]]>
+;  V14 tmp8         [V14,T10] (  4,  8   )     ref  ->   x0         class-hnd single-def "Inlining Arg" <System.Collections.Generic.LinkedList`1[System.Func`2[double,System.Object]]>
 ;* V15 tmp9         [V15    ] (  0,  0   )  struct (32) zero-ref    do-not-enreg[SF] ld-addr-op "NewObj constructor temp" <System.Collections.Generic.LinkedList`1+Enumerator[System.Func`2[double,System.Object]]>
 ;* V16 tmp10        [V16    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.Collections.Generic.LinkedListNode`1[System.Func`2[double,System.Object]]>
-;  V17 tmp11        [V17,T16] (  2,  4   )   ubyte  ->   x0         "Inline return value spill temp"
+;  V17 tmp11        [V17,T15] (  2,  4   )   ubyte  ->   x0         "Inline return value spill temp"
 ;  V18 tmp12        [V18,T00] (  5, 28   )     ref  ->   x0         class-hnd "Inlining Arg" <System.__Canon>
-;  V19 tmp13        [V19,T12] (  4,  8   )     ref  ->   x0         class-hnd single-def "Inlining Arg" <System.Collections.Generic.LinkedList`1[System.Comparison`1[System.Object]]>
+;  V19 tmp13        [V19,T11] (  4,  8   )     ref  ->   x0         class-hnd single-def "Inlining Arg" <System.Collections.Generic.LinkedList`1[System.Comparison`1[System.Object]]>
 ;* V20 tmp14        [V20    ] (  0,  0   )  struct (32) zero-ref    do-not-enreg[SF] ld-addr-op "NewObj constructor temp" <System.Collections.Generic.LinkedList`1+Enumerator[System.Comparison`1[System.Object]]>
 ;* V21 tmp15        [V21    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.Collections.Generic.LinkedListNode`1[System.Comparison`1[System.Object]]>
-;  V22 tmp16        [V22,T17] (  2,  4   )   ubyte  ->   x0         "Inline return value spill temp"
+;  V22 tmp16        [V22,T16] (  2,  4   )   ubyte  ->   x0         "Inline return value spill temp"
 ;  V23 tmp17        [V23,T01] (  5, 28   )     ref  ->   x0         class-hnd "Inlining Arg" <System.__Canon>
 ;* V24 tmp18        [V24    ] (  0,  0   )     ref  ->  zero-ref    single-def "V15.[000..008)"
-;  V25 tmp19        [V25,T19] (  2,  2   )     ref  ->   x2         single-def "V15.[008..016)"
+;  V25 tmp19        [V25,T20] (  2,  2   )     ref  ->   x2         single-def "V15.[008..016)"
 ;* V26 tmp20        [V26    ] (  0,  0   )     ref  ->  zero-ref    "V15.[016..024)"
-;  V27 tmp21        [V27,T21] (  2,  2   )     int  ->   x1         "V15.[024..028)"
+;  V27 tmp21        [V27,T22] (  2,  2   )     int  ->   x1         "V15.[024..028)"
 ;* V28 tmp22        [V28    ] (  0,  0   )     int  ->  zero-ref    "V15.[028..032)"
 ;* V29 tmp23        [V29    ] (  0,  0   )     ref  ->  zero-ref    single-def "V20.[000..008)"
-;  V30 tmp24        [V30,T20] (  2,  2   )     ref  ->   x2         single-def "V20.[008..016)"
+;  V30 tmp24        [V30,T21] (  2,  2   )     ref  ->   x2         single-def "V20.[008..016)"
 ;* V31 tmp25        [V31    ] (  0,  0   )     ref  ->  zero-ref    "V20.[016..024)"
-;  V32 tmp26        [V32,T22] (  2,  2   )     int  ->   x1         "V20.[024..028)"
+;  V32 tmp26        [V32,T23] (  2,  2   )     int  ->   x1         "V20.[024..028)"
 ;* V33 tmp27        [V33    ] (  0,  0   )     int  ->  zero-ref    "V20.[028..032)"
-;  V34 cse0         [V34,T10] (  4, 10   )    long  ->  x21         "CSE #01: aggressive"
-;  V35 cse1         [V35,T18] (  3,  6   )    long  ->  x21         "CSE #05: moderate"
-;  V36 cse2         [V36,T09] (  3, 12   )     ref  ->   x1         "CSE #02: aggressive"
+;  V34 cse0         [V34,T17] (  3,  6   )    long  ->  x21         "CSE #01: moderate"
+;  V35 cse1         [V35,T18] (  3,  6   )    long  ->  x21         "CSE #06: moderate"
+;  V36 cse2         [V36,T19] (  2,  4.25)    long  ->  x22         hoist "CSE #02: moderate"
+;  V37 cse3         [V37,T09] (  3, 12   )     ref  ->   x1         "CSE #03: aggressive"
 ;
-; Lcl frame size = 64
+; Lcl frame size = 72
 
 G_M28250_IG01:
-            stp     fp, lr, [sp, #-0x70]!
-            stp     x19, x20, [sp, #0x50]
-            stp     x21, x22, [sp, #0x60]
+            stp     fp, lr, [sp, #-0x80]!
+            stp     x19, x20, [sp, #0x58]
+            stp     x21, x22, [sp, #0x68]
+            str     x23, [sp, #0x78]
             mov     fp, sp
-            add     x9, fp, #16
+            add     x9, fp, #24
             movi    v16.16b, #0
             stp     q16, q16, [x9]
             stp     q16, q16, [x9, #0x20]
             mov     x19, x0
-						;; size=36 bbWeight=1 PerfScore 7.00
+						;; size=40 bbWeight=1 PerfScore 8.00
 G_M28250_IG02:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x20, x0
             movz    x1, #0xD1FFAB1E      // code for System.Data.SortExpressionBuilder`1[ubyte]:.ctor():this
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
             ldr     x0, [x19, #0x08]
             ldr     w1, [x0, #0x1C]
             ldr     x2, [x0, #0x08]
-            stp     x0, x2, [fp, #0x30]	// [V02 loc1], [V02 loc1+0x08]
-            str     xzr, [fp, #0x40]	// [V02 loc1+0x10]
-            stp     w1, wzr, [fp, #0x48]	// [V02 loc1+0x18], [V02 loc1+0x1c]
-            add     x0, fp, #48	// [V02 loc1]
+            stp     x0, x2, [fp, #0x38]	// [V02 loc1], [V02 loc1+0x08]
+            str     xzr, [fp, #0x48]	// [V02 loc1+0x10]
+            stp     w1, wzr, [fp, #0x50]	// [V02 loc1+0x18], [V02 loc1+0x1c]
+            add     x0, fp, #56	// [V02 loc1]
             movz    x21, #0xD1FFAB1E
             movk    x21, #0xD1FFAB1E LSL #16
             movk    x21, #0xD1FFAB1E LSL #32
             mov     x1, x21
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            cbz     w0, G_M28250_IG09
+            cbz     w0, G_M28250_IG10
 						;; size=108 bbWeight=1 PerfScore 29.50
 G_M28250_IG03:
-            add     x0, x21, #0xD1FFAB1E
+            movz    x22, #0xD1FFAB1E
+            movk    x22, #0xD1FFAB1E LSL #16
+            movk    x22, #0xD1FFAB1E LSL #32
+						;; size=12 bbWeight=0.25 PerfScore 0.38
+G_M28250_IG04:
+            mov     x0, x22
             bl      CORINFO_HELP_NEWSFAST
-            mov     x22, x0
-            ldr     x1, [fp, #0x40]	// [V02 loc1+0x10]
-            add     x14, x22, #8
+            mov     x23, x0
+            ldr     x1, [fp, #0x48]	// [V02 loc1+0x10]
+            add     x14, x23, #8
             mov     x15, x1
             bl      CORINFO_HELP_ASSIGN_REF
             ldr     x0, [x19, #0x18]
             ldr     x0, [x0, #0x20]
-            cbnz    x0, G_M28250_IG05
+            cbnz    x0, G_M28250_IG06
 						;; size=40 bbWeight=4 PerfScore 52.00
-G_M28250_IG04:
-            cbnz    x1, G_M28250_IG07
-            b       G_M28250_IG06
-						;; size=8 bbWeight=2 PerfScore 4.00
 G_M28250_IG05:
+            cbnz    x1, G_M28250_IG08
+            b       G_M28250_IG07
+						;; size=8 bbWeight=2 PerfScore 4.00
+G_M28250_IG06:
             cmp     x0, x1
-            beq     G_M28250_IG06
+            beq     G_M28250_IG07
             ldr     x2, [x0]
             ldr     x2, [x2, #0x40]
             ldr     x2, [x2, #0x10]
             blr     x2
-            cbz     w0, G_M28250_IG07
+            cbz     w0, G_M28250_IG08
 						;; size=28 bbWeight=2 PerfScore 25.00
-G_M28250_IG06:
+G_M28250_IG07:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x1, x0
             ldr     x0, [x20, #0x08]
             add     x14, x1, #8
-            mov     x15, x22
+            mov     x15, x23
             bl      CORINFO_HELP_ASSIGN_REF
             movz    x2, #0xD1FFAB1E      // code for System.Data.SortExpressionBuilder`1+<>c__DisplayClass10_0`1[double,ubyte]:<CloneCast>b__0(ubyte):System.Object:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             str     x2, [x1, #0x18]
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1[System.__Canon]:AddLast(System.__Canon):System.Collections.Generic.LinkedListNode`1[System.__Canon]:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             ldr     wzr, [x0]
             blr     x2
             add     x14, x20, #24
             mov     x15, x0
             bl      CORINFO_HELP_ASSIGN_REF
-            b       G_M28250_IG08
+            b       G_M28250_IG09
 						;; size=92 bbWeight=2 PerfScore 44.00
-G_M28250_IG07:
+G_M28250_IG08:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x1, x0
             ldr     x0, [x20, #0x08]
             add     x14, x1, #8
-            mov     x15, x22
+            mov     x15, x23
             bl      CORINFO_HELP_ASSIGN_REF
             movz    x2, #0xD1FFAB1E      // code for System.Data.SortExpressionBuilder`1+<>c__DisplayClass10_0`1[double,ubyte]:<CloneCast>b__1(ubyte):System.Object:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             str     x2, [x1, #0x18]
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1[System.__Canon]:AddLast(System.__Canon):System.Collections.Generic.LinkedListNode`1[System.__Canon]:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             ldr     wzr, [x0]
             blr     x2
 						;; size=76 bbWeight=2 PerfScore 38.00
-G_M28250_IG08:
-            add     x0, fp, #48	// [V02 loc1]
+G_M28250_IG09:
+            add     x0, fp, #56	// [V02 loc1]
             mov     x1, x21
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            cbnz    w0, G_M28250_IG03
+            cbnz    w0, G_M28250_IG04
 						;; size=32 bbWeight=4 PerfScore 30.00
-G_M28250_IG09:
+G_M28250_IG10:
             ldr     x0, [x19, #0x10]
             ldr     w1, [x0, #0x1C]
             ldr     x2, [x0, #0x08]
-            stp     x0, x2, [fp, #0x10]	// [V04 loc3], [V04 loc3+0x08]
-            str     xzr, [fp, #0x20]	// [V04 loc3+0x10]
-            stp     w1, wzr, [fp, #0x28]	// [V04 loc3+0x18], [V04 loc3+0x1c]
-            add     x0, fp, #16	// [V04 loc3]
+            stp     x0, x2, [fp, #0x18]	// [V04 loc3], [V04 loc3+0x08]
+            str     xzr, [fp, #0x28]	// [V04 loc3+0x10]
+            stp     w1, wzr, [fp, #0x30]	// [V04 loc3+0x18], [V04 loc3+0x1c]
+            add     x0, fp, #24	// [V04 loc3]
             movz    x21, #0xD1FFAB1E
             movk    x21, #0xD1FFAB1E LSL #16
             movk    x21, #0xD1FFAB1E LSL #32
             mov     x1, x21
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            cbz     w0, G_M28250_IG16
+            cbz     w0, G_M28250_IG17
 						;; size=68 bbWeight=1 PerfScore 21.00
-G_M28250_IG10:
-            ldr     x22, [fp, #0x20]	// [V04 loc3+0x10]
+G_M28250_IG11:
+            ldr     x22, [fp, #0x28]	// [V04 loc3+0x10]
             ldr     x0, [x19, #0x20]
             ldr     x0, [x0, #0x20]
-            cbnz    x0, G_M28250_IG12
+            cbnz    x0, G_M28250_IG13
 						;; size=16 bbWeight=4 PerfScore 36.00
-G_M28250_IG11:
-            cbnz    x22, G_M28250_IG14
-            b       G_M28250_IG13
-						;; size=8 bbWeight=2 PerfScore 4.00
 G_M28250_IG12:
+            cbnz    x22, G_M28250_IG15
+            b       G_M28250_IG14
+						;; size=8 bbWeight=2 PerfScore 4.00
+G_M28250_IG13:
             cmp     x0, x22
-            beq     G_M28250_IG13
+            beq     G_M28250_IG14
             mov     x1, x22
             ldr     x2, [x0]
             ldr     x2, [x2, #0x40]
             ldr     x2, [x2, #0x10]
             blr     x2
-            cbz     w0, G_M28250_IG14
+            cbz     w0, G_M28250_IG15
 						;; size=32 bbWeight=2 PerfScore 26.00
-G_M28250_IG13:
+G_M28250_IG14:
             ldr     x0, [x20, #0x10]
             mov     x1, x22
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1[System.__Canon]:AddLast(System.__Canon):System.Collections.Generic.LinkedListNode`1[System.__Canon]:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             ldr     wzr, [x0]
             blr     x2
             add     x14, x20, #32
             mov     x15, x0
             bl      CORINFO_HELP_ASSIGN_REF
-            b       G_M28250_IG15
+            b       G_M28250_IG16
 						;; size=48 bbWeight=2 PerfScore 30.00
-G_M28250_IG14:
+G_M28250_IG15:
             ldr     x0, [x20, #0x10]
             mov     x1, x22
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1[System.__Canon]:AddLast(System.__Canon):System.Collections.Generic.LinkedListNode`1[System.__Canon]:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             ldr     wzr, [x0]
             blr     x2
 						;; size=32 bbWeight=2 PerfScore 24.00
-G_M28250_IG15:
-            add     x0, fp, #16	// [V04 loc3]
+G_M28250_IG16:
+            add     x0, fp, #24	// [V04 loc3]
             mov     x1, x21
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            cbnz    w0, G_M28250_IG10
+            cbnz    w0, G_M28250_IG11
 						;; size=32 bbWeight=4 PerfScore 30.00
-G_M28250_IG16:
+G_M28250_IG17:
             mov     x0, x20
 						;; size=4 bbWeight=1 PerfScore 0.50
-G_M28250_IG17:
-            ldp     x21, x22, [sp, #0x60]
-            ldp     x19, x20, [sp, #0x50]
-            ldp     fp, lr, [sp], #0x70
+G_M28250_IG18:
+            ldr     x23, [sp, #0x78]
+            ldp     x21, x22, [sp, #0x68]
+            ldp     x19, x20, [sp, #0x58]
+            ldp     fp, lr, [sp], #0x80
             ret     lr
-						;; size=16 bbWeight=1 PerfScore 4.00
+						;; size=20 bbWeight=1 PerfScore 6.00
 
-; Total bytes of code 676, prolog size 32, PerfScore 405.00, instruction count 169, allocated bytes for code 676 (MethodHash=f67e91a5) for method System.Data.SortExpressionBuilder`1[double]:CloneCast[ubyte]():System.Data.SortExpressionBuilder`1[ubyte]:this (FullOpts)
+; Total bytes of code 696, prolog size 36, PerfScore 408.38, instruction count 174, allocated bytes for code 696 (MethodHash=f67e91a5) for method System.Data.SortExpressionBuilder`1[double]:CloneCast[ubyte]():System.Data.SortExpressionBuilder`1[ubyte]:this (FullOpts)
20 (2.96 % of base) - System.Data.SortExpressionBuilder`1[long]:CloneCast[double]():System.Data.SortExpressionBuilder`1[double]:this
 ; Assembly listing for method System.Data.SortExpressionBuilder`1[long]:CloneCast[double]():System.Data.SortExpressionBuilder`1[double]:this (FullOpts)
 ; Emitting BLENDED_CODE for generic ARM64 - Unix
 ; FullOpts code
 ; optimized code
 ; fp based frame
 ; partially interruptible
 ; No PGO data
 ; 0 inlinees with PGO data; 12 single block inlinees; 4 inlinees without PGO data
 ; Final local variable assignments
 ;
 ;  V00 this         [V00,T06] (  6, 12   )     ref  ->  x19         this class-hnd single-def <System.Data.SortExpressionBuilder`1[long]>
 ;  V01 loc0         [V01,T05] (  8, 14   )     ref  ->  x20         class-hnd exact single-def <System.Data.SortExpressionBuilder`1[double]>
-;  V02 loc1         [V02    ] (  8, 14   )  struct (32) [fp+0x30]  do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Collections.Generic.LinkedList`1+Enumerator[System.Func`2[long,System.Object]]>
-;  V03 loc2         [V03,T08] (  4, 12   )     ref  ->  x22         class-hnd exact <System.Data.SortExpressionBuilder`1+<>c__DisplayClass10_0`1[long,double]>
-;  V04 loc3         [V04    ] (  8, 14   )  struct (32) [fp+0x10]  do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Collections.Generic.LinkedList`1+Enumerator[System.Comparison`1[System.Object]]>
+;  V02 loc1         [V02    ] (  8, 14   )  struct (32) [fp+0x38]  do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Collections.Generic.LinkedList`1+Enumerator[System.Func`2[long,System.Object]]>
+;  V03 loc2         [V03,T08] (  4, 12   )     ref  ->  x23         class-hnd exact <System.Data.SortExpressionBuilder`1+<>c__DisplayClass10_0`1[long,double]>
+;  V04 loc3         [V04    ] (  8, 14   )  struct (32) [fp+0x18]  do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Collections.Generic.LinkedList`1+Enumerator[System.Comparison`1[System.Object]]>
 ;  V05 loc4         [V05,T07] (  6, 14   )     ref  ->  x22         class-hnd <System.Comparison`1[System.Object]>
 ;# V06 OutArgs      [V06    ] (  1,  1   )  struct ( 0) [sp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-;  V07 tmp1         [V07,T15] (  3,  6   )     ref  ->  x20         class-hnd exact single-def "NewObj constructor temp" <System.Data.SortExpressionBuilder`1[double]>
+;  V07 tmp1         [V07,T14] (  3,  6   )     ref  ->  x20         class-hnd exact single-def "NewObj constructor temp" <System.Data.SortExpressionBuilder`1[double]>
 ;* V08 tmp2         [V08    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "NewObj constructor temp" <System.Data.SortExpressionBuilder`1+<>c__DisplayClass10_0`1[long,double]>
 ;  V09 tmp3         [V09,T02] (  4, 20   )     ref  ->   x1         class-hnd "impAppendStmt" <System.Func`2[long,System.Object]>
 ;  V10 tmp4         [V10,T03] (  4, 16   )     ref  ->   x1         class-hnd exact "NewObj constructor temp" <System.Func`2[double,System.Object]>
-;  V11 tmp5         [V11,T13] (  2,  8   )     ref  ->   x0         class-hnd "impAppendStmt" <System.Collections.Generic.LinkedList`1[System.Func`2[double,System.Object]]>
+;  V11 tmp5         [V11,T12] (  2,  8   )     ref  ->   x0         class-hnd "impAppendStmt" <System.Collections.Generic.LinkedList`1[System.Func`2[double,System.Object]]>
 ;  V12 tmp6         [V12,T04] (  4, 16   )     ref  ->   x1         class-hnd exact "NewObj constructor temp" <System.Func`2[double,System.Object]>
-;  V13 tmp7         [V13,T14] (  2,  8   )     ref  ->   x0         class-hnd "impAppendStmt" <System.Collections.Generic.LinkedList`1[System.Func`2[double,System.Object]]>
-;  V14 tmp8         [V14,T11] (  4,  8   )     ref  ->   x0         class-hnd single-def "Inlining Arg" <System.Collections.Generic.LinkedList`1[System.Func`2[long,System.Object]]>
+;  V13 tmp7         [V13,T13] (  2,  8   )     ref  ->   x0         class-hnd "impAppendStmt" <System.Collections.Generic.LinkedList`1[System.Func`2[double,System.Object]]>
+;  V14 tmp8         [V14,T10] (  4,  8   )     ref  ->   x0         class-hnd single-def "Inlining Arg" <System.Collections.Generic.LinkedList`1[System.Func`2[long,System.Object]]>
 ;* V15 tmp9         [V15    ] (  0,  0   )  struct (32) zero-ref    do-not-enreg[SF] ld-addr-op "NewObj constructor temp" <System.Collections.Generic.LinkedList`1+Enumerator[System.Func`2[long,System.Object]]>
 ;* V16 tmp10        [V16    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.Collections.Generic.LinkedListNode`1[System.Func`2[long,System.Object]]>
-;  V17 tmp11        [V17,T16] (  2,  4   )   ubyte  ->   x0         "Inline return value spill temp"
+;  V17 tmp11        [V17,T15] (  2,  4   )   ubyte  ->   x0         "Inline return value spill temp"
 ;  V18 tmp12        [V18,T00] (  5, 28   )     ref  ->   x0         class-hnd "Inlining Arg" <System.__Canon>
-;  V19 tmp13        [V19,T12] (  4,  8   )     ref  ->   x0         class-hnd single-def "Inlining Arg" <System.Collections.Generic.LinkedList`1[System.Comparison`1[System.Object]]>
+;  V19 tmp13        [V19,T11] (  4,  8   )     ref  ->   x0         class-hnd single-def "Inlining Arg" <System.Collections.Generic.LinkedList`1[System.Comparison`1[System.Object]]>
 ;* V20 tmp14        [V20    ] (  0,  0   )  struct (32) zero-ref    do-not-enreg[SF] ld-addr-op "NewObj constructor temp" <System.Collections.Generic.LinkedList`1+Enumerator[System.Comparison`1[System.Object]]>
 ;* V21 tmp15        [V21    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.Collections.Generic.LinkedListNode`1[System.Comparison`1[System.Object]]>
-;  V22 tmp16        [V22,T17] (  2,  4   )   ubyte  ->   x0         "Inline return value spill temp"
+;  V22 tmp16        [V22,T16] (  2,  4   )   ubyte  ->   x0         "Inline return value spill temp"
 ;  V23 tmp17        [V23,T01] (  5, 28   )     ref  ->   x0         class-hnd "Inlining Arg" <System.__Canon>
 ;* V24 tmp18        [V24    ] (  0,  0   )     ref  ->  zero-ref    single-def "V15.[000..008)"
-;  V25 tmp19        [V25,T19] (  2,  2   )     ref  ->   x2         single-def "V15.[008..016)"
+;  V25 tmp19        [V25,T20] (  2,  2   )     ref  ->   x2         single-def "V15.[008..016)"
 ;* V26 tmp20        [V26    ] (  0,  0   )     ref  ->  zero-ref    "V15.[016..024)"
-;  V27 tmp21        [V27,T21] (  2,  2   )     int  ->   x1         "V15.[024..028)"
+;  V27 tmp21        [V27,T22] (  2,  2   )     int  ->   x1         "V15.[024..028)"
 ;* V28 tmp22        [V28    ] (  0,  0   )     int  ->  zero-ref    "V15.[028..032)"
 ;* V29 tmp23        [V29    ] (  0,  0   )     ref  ->  zero-ref    single-def "V20.[000..008)"
-;  V30 tmp24        [V30,T20] (  2,  2   )     ref  ->   x2         single-def "V20.[008..016)"
+;  V30 tmp24        [V30,T21] (  2,  2   )     ref  ->   x2         single-def "V20.[008..016)"
 ;* V31 tmp25        [V31    ] (  0,  0   )     ref  ->  zero-ref    "V20.[016..024)"
-;  V32 tmp26        [V32,T22] (  2,  2   )     int  ->   x1         "V20.[024..028)"
+;  V32 tmp26        [V32,T23] (  2,  2   )     int  ->   x1         "V20.[024..028)"
 ;* V33 tmp27        [V33    ] (  0,  0   )     int  ->  zero-ref    "V20.[028..032)"
-;  V34 cse0         [V34,T10] (  4, 10   )    long  ->  x21         "CSE #01: aggressive"
-;  V35 cse1         [V35,T18] (  3,  6   )    long  ->  x21         "CSE #05: moderate"
-;  V36 cse2         [V36,T09] (  3, 12   )     ref  ->   x1         "CSE #02: aggressive"
+;  V34 cse0         [V34,T17] (  3,  6   )    long  ->  x21         "CSE #01: moderate"
+;  V35 cse1         [V35,T18] (  3,  6   )    long  ->  x21         "CSE #06: moderate"
+;  V36 cse2         [V36,T19] (  2,  4.25)    long  ->  x22         hoist "CSE #02: moderate"
+;  V37 cse3         [V37,T09] (  3, 12   )     ref  ->   x1         "CSE #03: aggressive"
 ;
-; Lcl frame size = 64
+; Lcl frame size = 72
 
 G_M18629_IG01:
-            stp     fp, lr, [sp, #-0x70]!
-            stp     x19, x20, [sp, #0x50]
-            stp     x21, x22, [sp, #0x60]
+            stp     fp, lr, [sp, #-0x80]!
+            stp     x19, x20, [sp, #0x58]
+            stp     x21, x22, [sp, #0x68]
+            str     x23, [sp, #0x78]
             mov     fp, sp
-            add     x9, fp, #16
+            add     x9, fp, #24
             movi    v16.16b, #0
             stp     q16, q16, [x9]
             stp     q16, q16, [x9, #0x20]
             mov     x19, x0
-						;; size=36 bbWeight=1 PerfScore 7.00
+						;; size=40 bbWeight=1 PerfScore 8.00
 G_M18629_IG02:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x20, x0
             movz    x1, #0xD1FFAB1E      // code for System.Data.SortExpressionBuilder`1[double]:.ctor():this
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
             ldr     x0, [x19, #0x08]
             ldr     w1, [x0, #0x1C]
             ldr     x2, [x0, #0x08]
-            stp     x0, x2, [fp, #0x30]	// [V02 loc1], [V02 loc1+0x08]
-            str     xzr, [fp, #0x40]	// [V02 loc1+0x10]
-            stp     w1, wzr, [fp, #0x48]	// [V02 loc1+0x18], [V02 loc1+0x1c]
-            add     x0, fp, #48	// [V02 loc1]
+            stp     x0, x2, [fp, #0x38]	// [V02 loc1], [V02 loc1+0x08]
+            str     xzr, [fp, #0x48]	// [V02 loc1+0x10]
+            stp     w1, wzr, [fp, #0x50]	// [V02 loc1+0x18], [V02 loc1+0x1c]
+            add     x0, fp, #56	// [V02 loc1]
             movz    x21, #0xD1FFAB1E
             movk    x21, #0xD1FFAB1E LSL #16
             movk    x21, #0xD1FFAB1E LSL #32
             mov     x1, x21
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            cbz     w0, G_M18629_IG09
+            cbz     w0, G_M18629_IG10
 						;; size=108 bbWeight=1 PerfScore 29.50
 G_M18629_IG03:
-            add     x0, x21, #0xD1FFAB1E
+            movz    x22, #0xD1FFAB1E
+            movk    x22, #0xD1FFAB1E LSL #16
+            movk    x22, #0xD1FFAB1E LSL #32
+						;; size=12 bbWeight=0.25 PerfScore 0.38
+G_M18629_IG04:
+            mov     x0, x22
             bl      CORINFO_HELP_NEWSFAST
-            mov     x22, x0
-            ldr     x1, [fp, #0x40]	// [V02 loc1+0x10]
-            add     x14, x22, #8
+            mov     x23, x0
+            ldr     x1, [fp, #0x48]	// [V02 loc1+0x10]
+            add     x14, x23, #8
             mov     x15, x1
             bl      CORINFO_HELP_ASSIGN_REF
             ldr     x0, [x19, #0x18]
             ldr     x0, [x0, #0x20]
-            cbnz    x0, G_M18629_IG05
+            cbnz    x0, G_M18629_IG06
 						;; size=40 bbWeight=4 PerfScore 52.00
-G_M18629_IG04:
-            cbnz    x1, G_M18629_IG07
-            b       G_M18629_IG06
-						;; size=8 bbWeight=2 PerfScore 4.00
 G_M18629_IG05:
+            cbnz    x1, G_M18629_IG08
+            b       G_M18629_IG07
+						;; size=8 bbWeight=2 PerfScore 4.00
+G_M18629_IG06:
             cmp     x0, x1
-            beq     G_M18629_IG06
+            beq     G_M18629_IG07
             ldr     x2, [x0]
             ldr     x2, [x2, #0x40]
             ldr     x2, [x2, #0x10]
             blr     x2
-            cbz     w0, G_M18629_IG07
+            cbz     w0, G_M18629_IG08
 						;; size=28 bbWeight=2 PerfScore 25.00
-G_M18629_IG06:
+G_M18629_IG07:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x1, x0
             ldr     x0, [x20, #0x08]
             add     x14, x1, #8
-            mov     x15, x22
+            mov     x15, x23
             bl      CORINFO_HELP_ASSIGN_REF
             movz    x2, #0xD1FFAB1E      // code for System.Data.SortExpressionBuilder`1+<>c__DisplayClass10_0`1[long,double]:<CloneCast>b__0(double):System.Object:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             str     x2, [x1, #0x18]
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1[System.__Canon]:AddLast(System.__Canon):System.Collections.Generic.LinkedListNode`1[System.__Canon]:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             ldr     wzr, [x0]
             blr     x2
             add     x14, x20, #24
             mov     x15, x0
             bl      CORINFO_HELP_ASSIGN_REF
-            b       G_M18629_IG08
+            b       G_M18629_IG09
 						;; size=92 bbWeight=2 PerfScore 44.00
-G_M18629_IG07:
+G_M18629_IG08:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x1, x0
             ldr     x0, [x20, #0x08]
             add     x14, x1, #8
-            mov     x15, x22
+            mov     x15, x23
             bl      CORINFO_HELP_ASSIGN_REF
             movz    x2, #0xD1FFAB1E      // code for System.Data.SortExpressionBuilder`1+<>c__DisplayClass10_0`1[long,double]:<CloneCast>b__1(double):System.Object:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             str     x2, [x1, #0x18]
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1[System.__Canon]:AddLast(System.__Canon):System.Collections.Generic.LinkedListNode`1[System.__Canon]:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             ldr     wzr, [x0]
             blr     x2
 						;; size=76 bbWeight=2 PerfScore 38.00
-G_M18629_IG08:
-            add     x0, fp, #48	// [V02 loc1]
+G_M18629_IG09:
+            add     x0, fp, #56	// [V02 loc1]
             mov     x1, x21
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            cbnz    w0, G_M18629_IG03
+            cbnz    w0, G_M18629_IG04
 						;; size=32 bbWeight=4 PerfScore 30.00
-G_M18629_IG09:
+G_M18629_IG10:
             ldr     x0, [x19, #0x10]
             ldr     w1, [x0, #0x1C]
             ldr     x2, [x0, #0x08]
-            stp     x0, x2, [fp, #0x10]	// [V04 loc3], [V04 loc3+0x08]
-            str     xzr, [fp, #0x20]	// [V04 loc3+0x10]
-            stp     w1, wzr, [fp, #0x28]	// [V04 loc3+0x18], [V04 loc3+0x1c]
-            add     x0, fp, #16	// [V04 loc3]
+            stp     x0, x2, [fp, #0x18]	// [V04 loc3], [V04 loc3+0x08]
+            str     xzr, [fp, #0x28]	// [V04 loc3+0x10]
+            stp     w1, wzr, [fp, #0x30]	// [V04 loc3+0x18], [V04 loc3+0x1c]
+            add     x0, fp, #24	// [V04 loc3]
             movz    x21, #0xD1FFAB1E
             movk    x21, #0xD1FFAB1E LSL #16
             movk    x21, #0xD1FFAB1E LSL #32
             mov     x1, x21
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            cbz     w0, G_M18629_IG16
+            cbz     w0, G_M18629_IG17
 						;; size=68 bbWeight=1 PerfScore 21.00
-G_M18629_IG10:
-            ldr     x22, [fp, #0x20]	// [V04 loc3+0x10]
+G_M18629_IG11:
+            ldr     x22, [fp, #0x28]	// [V04 loc3+0x10]
             ldr     x0, [x19, #0x20]
             ldr     x0, [x0, #0x20]
-            cbnz    x0, G_M18629_IG12
+            cbnz    x0, G_M18629_IG13
 						;; size=16 bbWeight=4 PerfScore 36.00
-G_M18629_IG11:
-            cbnz    x22, G_M18629_IG14
-            b       G_M18629_IG13
-						;; size=8 bbWeight=2 PerfScore 4.00
 G_M18629_IG12:
+            cbnz    x22, G_M18629_IG15
+            b       G_M18629_IG14
+						;; size=8 bbWeight=2 PerfScore 4.00
+G_M18629_IG13:
             cmp     x0, x22
-            beq     G_M18629_IG13
+            beq     G_M18629_IG14
             mov     x1, x22
             ldr     x2, [x0]
             ldr     x2, [x2, #0x40]
             ldr     x2, [x2, #0x10]
             blr     x2
-            cbz     w0, G_M18629_IG14
+            cbz     w0, G_M18629_IG15
 						;; size=32 bbWeight=2 PerfScore 26.00
-G_M18629_IG13:
+G_M18629_IG14:
             ldr     x0, [x20, #0x10]
             mov     x1, x22
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1[System.__Canon]:AddLast(System.__Canon):System.Collections.Generic.LinkedListNode`1[System.__Canon]:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             ldr     wzr, [x0]
             blr     x2
             add     x14, x20, #32
             mov     x15, x0
             bl      CORINFO_HELP_ASSIGN_REF
-            b       G_M18629_IG15
+            b       G_M18629_IG16
 						;; size=48 bbWeight=2 PerfScore 30.00
-G_M18629_IG14:
+G_M18629_IG15:
             ldr     x0, [x20, #0x10]
             mov     x1, x22
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1[System.__Canon]:AddLast(System.__Canon):System.Collections.Generic.LinkedListNode`1[System.__Canon]:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             ldr     wzr, [x0]
             blr     x2
 						;; size=32 bbWeight=2 PerfScore 24.00
-G_M18629_IG15:
-            add     x0, fp, #16	// [V04 loc3]
+G_M18629_IG16:
+            add     x0, fp, #24	// [V04 loc3]
             mov     x1, x21
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            cbnz    w0, G_M18629_IG10
+            cbnz    w0, G_M18629_IG11
 						;; size=32 bbWeight=4 PerfScore 30.00
-G_M18629_IG16:
+G_M18629_IG17:
             mov     x0, x20
 						;; size=4 bbWeight=1 PerfScore 0.50
-G_M18629_IG17:
-            ldp     x21, x22, [sp, #0x60]
-            ldp     x19, x20, [sp, #0x50]
-            ldp     fp, lr, [sp], #0x70
+G_M18629_IG18:
+            ldr     x23, [sp, #0x78]
+            ldp     x21, x22, [sp, #0x68]
+            ldp     x19, x20, [sp, #0x58]
+            ldp     fp, lr, [sp], #0x80
             ret     lr
-						;; size=16 bbWeight=1 PerfScore 4.00
+						;; size=20 bbWeight=1 PerfScore 6.00
 
-; Total bytes of code 676, prolog size 32, PerfScore 405.00, instruction count 169, allocated bytes for code 676 (MethodHash=4afbb73a) for method System.Data.SortExpressionBuilder`1[long]:CloneCast[double]():System.Data.SortExpressionBuilder`1[double]:this (FullOpts)
+; Total bytes of code 696, prolog size 36, PerfScore 408.38, instruction count 174, allocated bytes for code 696 (MethodHash=4afbb73a) for method System.Data.SortExpressionBuilder`1[long]:CloneCast[double]():System.Data.SortExpressionBuilder`1[double]:this (FullOpts)
20 (2.96 % of base) - System.Data.SortExpressionBuilder`1[long]:CloneCast[int]():System.Data.SortExpressionBuilder`1[int]:this
 ; Assembly listing for method System.Data.SortExpressionBuilder`1[long]:CloneCast[int]():System.Data.SortExpressionBuilder`1[int]:this (FullOpts)
 ; Emitting BLENDED_CODE for generic ARM64 - Unix
 ; FullOpts code
 ; optimized code
 ; fp based frame
 ; partially interruptible
 ; No PGO data
 ; 0 inlinees with PGO data; 12 single block inlinees; 4 inlinees without PGO data
 ; Final local variable assignments
 ;
 ;  V00 this         [V00,T06] (  6, 12   )     ref  ->  x19         this class-hnd single-def <System.Data.SortExpressionBuilder`1[long]>
 ;  V01 loc0         [V01,T05] (  8, 14   )     ref  ->  x20         class-hnd exact single-def <System.Data.SortExpressionBuilder`1[int]>
-;  V02 loc1         [V02    ] (  8, 14   )  struct (32) [fp+0x30]  do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Collections.Generic.LinkedList`1+Enumerator[System.Func`2[long,System.Object]]>
-;  V03 loc2         [V03,T08] (  4, 12   )     ref  ->  x22         class-hnd exact <System.Data.SortExpressionBuilder`1+<>c__DisplayClass10_0`1[long,int]>
-;  V04 loc3         [V04    ] (  8, 14   )  struct (32) [fp+0x10]  do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Collections.Generic.LinkedList`1+Enumerator[System.Comparison`1[System.Object]]>
+;  V02 loc1         [V02    ] (  8, 14   )  struct (32) [fp+0x38]  do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Collections.Generic.LinkedList`1+Enumerator[System.Func`2[long,System.Object]]>
+;  V03 loc2         [V03,T08] (  4, 12   )     ref  ->  x23         class-hnd exact <System.Data.SortExpressionBuilder`1+<>c__DisplayClass10_0`1[long,int]>
+;  V04 loc3         [V04    ] (  8, 14   )  struct (32) [fp+0x18]  do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Collections.Generic.LinkedList`1+Enumerator[System.Comparison`1[System.Object]]>
 ;  V05 loc4         [V05,T07] (  6, 14   )     ref  ->  x22         class-hnd <System.Comparison`1[System.Object]>
 ;# V06 OutArgs      [V06    ] (  1,  1   )  struct ( 0) [sp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-;  V07 tmp1         [V07,T15] (  3,  6   )     ref  ->  x20         class-hnd exact single-def "NewObj constructor temp" <System.Data.SortExpressionBuilder`1[int]>
+;  V07 tmp1         [V07,T14] (  3,  6   )     ref  ->  x20         class-hnd exact single-def "NewObj constructor temp" <System.Data.SortExpressionBuilder`1[int]>
 ;* V08 tmp2         [V08    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "NewObj constructor temp" <System.Data.SortExpressionBuilder`1+<>c__DisplayClass10_0`1[long,int]>
 ;  V09 tmp3         [V09,T02] (  4, 20   )     ref  ->   x1         class-hnd "impAppendStmt" <System.Func`2[long,System.Object]>
 ;  V10 tmp4         [V10,T03] (  4, 16   )     ref  ->   x1         class-hnd exact "NewObj constructor temp" <System.Func`2[int,System.Object]>
-;  V11 tmp5         [V11,T13] (  2,  8   )     ref  ->   x0         class-hnd "impAppendStmt" <System.Collections.Generic.LinkedList`1[System.Func`2[int,System.Object]]>
+;  V11 tmp5         [V11,T12] (  2,  8   )     ref  ->   x0         class-hnd "impAppendStmt" <System.Collections.Generic.LinkedList`1[System.Func`2[int,System.Object]]>
 ;  V12 tmp6         [V12,T04] (  4, 16   )     ref  ->   x1         class-hnd exact "NewObj constructor temp" <System.Func`2[int,System.Object]>
-;  V13 tmp7         [V13,T14] (  2,  8   )     ref  ->   x0         class-hnd "impAppendStmt" <System.Collections.Generic.LinkedList`1[System.Func`2[int,System.Object]]>
-;  V14 tmp8         [V14,T11] (  4,  8   )     ref  ->   x0         class-hnd single-def "Inlining Arg" <System.Collections.Generic.LinkedList`1[System.Func`2[long,System.Object]]>
+;  V13 tmp7         [V13,T13] (  2,  8   )     ref  ->   x0         class-hnd "impAppendStmt" <System.Collections.Generic.LinkedList`1[System.Func`2[int,System.Object]]>
+;  V14 tmp8         [V14,T10] (  4,  8   )     ref  ->   x0         class-hnd single-def "Inlining Arg" <System.Collections.Generic.LinkedList`1[System.Func`2[long,System.Object]]>
 ;* V15 tmp9         [V15    ] (  0,  0   )  struct (32) zero-ref    do-not-enreg[SF] ld-addr-op "NewObj constructor temp" <System.Collections.Generic.LinkedList`1+Enumerator[System.Func`2[long,System.Object]]>
 ;* V16 tmp10        [V16    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.Collections.Generic.LinkedListNode`1[System.Func`2[long,System.Object]]>
-;  V17 tmp11        [V17,T16] (  2,  4   )   ubyte  ->   x0         "Inline return value spill temp"
+;  V17 tmp11        [V17,T15] (  2,  4   )   ubyte  ->   x0         "Inline return value spill temp"
 ;  V18 tmp12        [V18,T00] (  5, 28   )     ref  ->   x0         class-hnd "Inlining Arg" <System.__Canon>
-;  V19 tmp13        [V19,T12] (  4,  8   )     ref  ->   x0         class-hnd single-def "Inlining Arg" <System.Collections.Generic.LinkedList`1[System.Comparison`1[System.Object]]>
+;  V19 tmp13        [V19,T11] (  4,  8   )     ref  ->   x0         class-hnd single-def "Inlining Arg" <System.Collections.Generic.LinkedList`1[System.Comparison`1[System.Object]]>
 ;* V20 tmp14        [V20    ] (  0,  0   )  struct (32) zero-ref    do-not-enreg[SF] ld-addr-op "NewObj constructor temp" <System.Collections.Generic.LinkedList`1+Enumerator[System.Comparison`1[System.Object]]>
 ;* V21 tmp15        [V21    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.Collections.Generic.LinkedListNode`1[System.Comparison`1[System.Object]]>
-;  V22 tmp16        [V22,T17] (  2,  4   )   ubyte  ->   x0         "Inline return value spill temp"
+;  V22 tmp16        [V22,T16] (  2,  4   )   ubyte  ->   x0         "Inline return value spill temp"
 ;  V23 tmp17        [V23,T01] (  5, 28   )     ref  ->   x0         class-hnd "Inlining Arg" <System.__Canon>
 ;* V24 tmp18        [V24    ] (  0,  0   )     ref  ->  zero-ref    single-def "V15.[000..008)"
-;  V25 tmp19        [V25,T19] (  2,  2   )     ref  ->   x2         single-def "V15.[008..016)"
+;  V25 tmp19        [V25,T20] (  2,  2   )     ref  ->   x2         single-def "V15.[008..016)"
 ;* V26 tmp20        [V26    ] (  0,  0   )     ref  ->  zero-ref    "V15.[016..024)"
-;  V27 tmp21        [V27,T21] (  2,  2   )     int  ->   x1         "V15.[024..028)"
+;  V27 tmp21        [V27,T22] (  2,  2   )     int  ->   x1         "V15.[024..028)"
 ;* V28 tmp22        [V28    ] (  0,  0   )     int  ->  zero-ref    "V15.[028..032)"
 ;* V29 tmp23        [V29    ] (  0,  0   )     ref  ->  zero-ref    single-def "V20.[000..008)"
-;  V30 tmp24        [V30,T20] (  2,  2   )     ref  ->   x2         single-def "V20.[008..016)"
+;  V30 tmp24        [V30,T21] (  2,  2   )     ref  ->   x2         single-def "V20.[008..016)"
 ;* V31 tmp25        [V31    ] (  0,  0   )     ref  ->  zero-ref    "V20.[016..024)"
-;  V32 tmp26        [V32,T22] (  2,  2   )     int  ->   x1         "V20.[024..028)"
+;  V32 tmp26        [V32,T23] (  2,  2   )     int  ->   x1         "V20.[024..028)"
 ;* V33 tmp27        [V33    ] (  0,  0   )     int  ->  zero-ref    "V20.[028..032)"
-;  V34 cse0         [V34,T10] (  4, 10   )    long  ->  x21         "CSE #01: aggressive"
-;  V35 cse1         [V35,T18] (  3,  6   )    long  ->  x21         "CSE #05: moderate"
-;  V36 cse2         [V36,T09] (  3, 12   )     ref  ->   x1         "CSE #02: aggressive"
+;  V34 cse0         [V34,T17] (  3,  6   )    long  ->  x21         "CSE #01: moderate"
+;  V35 cse1         [V35,T18] (  3,  6   )    long  ->  x21         "CSE #06: moderate"
+;  V36 cse2         [V36,T19] (  2,  4.25)    long  ->  x22         hoist "CSE #02: moderate"
+;  V37 cse3         [V37,T09] (  3, 12   )     ref  ->   x1         "CSE #03: aggressive"
 ;
-; Lcl frame size = 64
+; Lcl frame size = 72
 
 G_M22693_IG01:
-            stp     fp, lr, [sp, #-0x70]!
-            stp     x19, x20, [sp, #0x50]
-            stp     x21, x22, [sp, #0x60]
+            stp     fp, lr, [sp, #-0x80]!
+            stp     x19, x20, [sp, #0x58]
+            stp     x21, x22, [sp, #0x68]
+            str     x23, [sp, #0x78]
             mov     fp, sp
-            add     x9, fp, #16
+            add     x9, fp, #24
             movi    v16.16b, #0
             stp     q16, q16, [x9]
             stp     q16, q16, [x9, #0x20]
             mov     x19, x0
-						;; size=36 bbWeight=1 PerfScore 7.00
+						;; size=40 bbWeight=1 PerfScore 8.00
 G_M22693_IG02:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x20, x0
             movz    x1, #0xD1FFAB1E      // code for System.Data.SortExpressionBuilder`1[int]:.ctor():this
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
             ldr     x0, [x19, #0x08]
             ldr     w1, [x0, #0x1C]
             ldr     x2, [x0, #0x08]
-            stp     x0, x2, [fp, #0x30]	// [V02 loc1], [V02 loc1+0x08]
-            str     xzr, [fp, #0x40]	// [V02 loc1+0x10]
-            stp     w1, wzr, [fp, #0x48]	// [V02 loc1+0x18], [V02 loc1+0x1c]
-            add     x0, fp, #48	// [V02 loc1]
+            stp     x0, x2, [fp, #0x38]	// [V02 loc1], [V02 loc1+0x08]
+            str     xzr, [fp, #0x48]	// [V02 loc1+0x10]
+            stp     w1, wzr, [fp, #0x50]	// [V02 loc1+0x18], [V02 loc1+0x1c]
+            add     x0, fp, #56	// [V02 loc1]
             movz    x21, #0xD1FFAB1E
             movk    x21, #0xD1FFAB1E LSL #16
             movk    x21, #0xD1FFAB1E LSL #32
             mov     x1, x21
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            cbz     w0, G_M22693_IG09
+            cbz     w0, G_M22693_IG10
 						;; size=108 bbWeight=1 PerfScore 29.50
 G_M22693_IG03:
-            add     x0, x21, #0xD1FFAB1E
+            movz    x22, #0xD1FFAB1E
+            movk    x22, #0xD1FFAB1E LSL #16
+            movk    x22, #0xD1FFAB1E LSL #32
+						;; size=12 bbWeight=0.25 PerfScore 0.38
+G_M22693_IG04:
+            mov     x0, x22
             bl      CORINFO_HELP_NEWSFAST
-            mov     x22, x0
-            ldr     x1, [fp, #0x40]	// [V02 loc1+0x10]
-            add     x14, x22, #8
+            mov     x23, x0
+            ldr     x1, [fp, #0x48]	// [V02 loc1+0x10]
+            add     x14, x23, #8
             mov     x15, x1
             bl      CORINFO_HELP_ASSIGN_REF
             ldr     x0, [x19, #0x18]
             ldr     x0, [x0, #0x20]
-            cbnz    x0, G_M22693_IG05
+            cbnz    x0, G_M22693_IG06
 						;; size=40 bbWeight=4 PerfScore 52.00
-G_M22693_IG04:
-            cbnz    x1, G_M22693_IG07
-            b       G_M22693_IG06
-						;; size=8 bbWeight=2 PerfScore 4.00
 G_M22693_IG05:
+            cbnz    x1, G_M22693_IG08
+            b       G_M22693_IG07
+						;; size=8 bbWeight=2 PerfScore 4.00
+G_M22693_IG06:
             cmp     x0, x1
-            beq     G_M22693_IG06
+            beq     G_M22693_IG07
             ldr     x2, [x0]
             ldr     x2, [x2, #0x40]
             ldr     x2, [x2, #0x10]
             blr     x2
-            cbz     w0, G_M22693_IG07
+            cbz     w0, G_M22693_IG08
 						;; size=28 bbWeight=2 PerfScore 25.00
-G_M22693_IG06:
+G_M22693_IG07:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x1, x0
             ldr     x0, [x20, #0x08]
             add     x14, x1, #8
-            mov     x15, x22
+            mov     x15, x23
             bl      CORINFO_HELP_ASSIGN_REF
             movz    x2, #0xD1FFAB1E      // code for System.Data.SortExpressionBuilder`1+<>c__DisplayClass10_0`1[long,int]:<CloneCast>b__0(int):System.Object:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             str     x2, [x1, #0x18]
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1[System.__Canon]:AddLast(System.__Canon):System.Collections.Generic.LinkedListNode`1[System.__Canon]:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             ldr     wzr, [x0]
             blr     x2
             add     x14, x20, #24
             mov     x15, x0
             bl      CORINFO_HELP_ASSIGN_REF
-            b       G_M22693_IG08
+            b       G_M22693_IG09
 						;; size=92 bbWeight=2 PerfScore 44.00
-G_M22693_IG07:
+G_M22693_IG08:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x1, x0
             ldr     x0, [x20, #0x08]
             add     x14, x1, #8
-            mov     x15, x22
+            mov     x15, x23
             bl      CORINFO_HELP_ASSIGN_REF
             movz    x2, #0xD1FFAB1E      // code for System.Data.SortExpressionBuilder`1+<>c__DisplayClass10_0`1[long,int]:<CloneCast>b__1(int):System.Object:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             str     x2, [x1, #0x18]
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1[System.__Canon]:AddLast(System.__Canon):System.Collections.Generic.LinkedListNode`1[System.__Canon]:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             ldr     wzr, [x0]
             blr     x2
 						;; size=76 bbWeight=2 PerfScore 38.00
-G_M22693_IG08:
-            add     x0, fp, #48	// [V02 loc1]
+G_M22693_IG09:
+            add     x0, fp, #56	// [V02 loc1]
             mov     x1, x21
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            cbnz    w0, G_M22693_IG03
+            cbnz    w0, G_M22693_IG04
 						;; size=32 bbWeight=4 PerfScore 30.00
-G_M22693_IG09:
+G_M22693_IG10:
             ldr     x0, [x19, #0x10]
             ldr     w1, [x0, #0x1C]
             ldr     x2, [x0, #0x08]
-            stp     x0, x2, [fp, #0x10]	// [V04 loc3], [V04 loc3+0x08]
-            str     xzr, [fp, #0x20]	// [V04 loc3+0x10]
-            stp     w1, wzr, [fp, #0x28]	// [V04 loc3+0x18], [V04 loc3+0x1c]
-            add     x0, fp, #16	// [V04 loc3]
+            stp     x0, x2, [fp, #0x18]	// [V04 loc3], [V04 loc3+0x08]
+            str     xzr, [fp, #0x28]	// [V04 loc3+0x10]
+            stp     w1, wzr, [fp, #0x30]	// [V04 loc3+0x18], [V04 loc3+0x1c]
+            add     x0, fp, #24	// [V04 loc3]
             movz    x21, #0xD1FFAB1E
             movk    x21, #0xD1FFAB1E LSL #16
             movk    x21, #0xD1FFAB1E LSL #32
             mov     x1, x21
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            cbz     w0, G_M22693_IG16
+            cbz     w0, G_M22693_IG17
 						;; size=68 bbWeight=1 PerfScore 21.00
-G_M22693_IG10:
-            ldr     x22, [fp, #0x20]	// [V04 loc3+0x10]
+G_M22693_IG11:
+            ldr     x22, [fp, #0x28]	// [V04 loc3+0x10]
             ldr     x0, [x19, #0x20]
             ldr     x0, [x0, #0x20]
-            cbnz    x0, G_M22693_IG12
+            cbnz    x0, G_M22693_IG13
 						;; size=16 bbWeight=4 PerfScore 36.00
-G_M22693_IG11:
-            cbnz    x22, G_M22693_IG14
-            b       G_M22693_IG13
-						;; size=8 bbWeight=2 PerfScore 4.00
 G_M22693_IG12:
+            cbnz    x22, G_M22693_IG15
+            b       G_M22693_IG14
+						;; size=8 bbWeight=2 PerfScore 4.00
+G_M22693_IG13:
             cmp     x0, x22
-            beq     G_M22693_IG13
+            beq     G_M22693_IG14
             mov     x1, x22
             ldr     x2, [x0]
             ldr     x2, [x2, #0x40]
             ldr     x2, [x2, #0x10]
             blr     x2
-            cbz     w0, G_M22693_IG14
+            cbz     w0, G_M22693_IG15
 						;; size=32 bbWeight=2 PerfScore 26.00
-G_M22693_IG13:
+G_M22693_IG14:
             ldr     x0, [x20, #0x10]
             mov     x1, x22
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1[System.__Canon]:AddLast(System.__Canon):System.Collections.Generic.LinkedListNode`1[System.__Canon]:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             ldr     wzr, [x0]
             blr     x2
             add     x14, x20, #32
             mov     x15, x0
             bl      CORINFO_HELP_ASSIGN_REF
-            b       G_M22693_IG15
+            b       G_M22693_IG16
 						;; size=48 bbWeight=2 PerfScore 30.00
-G_M22693_IG14:
+G_M22693_IG15:
             ldr     x0, [x20, #0x10]
             mov     x1, x22
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1[System.__Canon]:AddLast(System.__Canon):System.Collections.Generic.LinkedListNode`1[System.__Canon]:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             ldr     wzr, [x0]
             blr     x2
 						;; size=32 bbWeight=2 PerfScore 24.00
-G_M22693_IG15:
-            add     x0, fp, #16	// [V04 loc3]
+G_M22693_IG16:
+            add     x0, fp, #24	// [V04 loc3]
             mov     x1, x21
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            cbnz    w0, G_M22693_IG10
+            cbnz    w0, G_M22693_IG11
 						;; size=32 bbWeight=4 PerfScore 30.00
-G_M22693_IG16:
+G_M22693_IG17:
             mov     x0, x20
 						;; size=4 bbWeight=1 PerfScore 0.50
-G_M22693_IG17:
-            ldp     x21, x22, [sp, #0x60]
-            ldp     x19, x20, [sp, #0x50]
-            ldp     fp, lr, [sp], #0x70
+G_M22693_IG18:
+            ldr     x23, [sp, #0x78]
+            ldp     x21, x22, [sp, #0x68]
+            ldp     x19, x20, [sp, #0x58]
+            ldp     fp, lr, [sp], #0x80
             ret     lr
-						;; size=16 bbWeight=1 PerfScore 4.00
+						;; size=20 bbWeight=1 PerfScore 6.00
 
-; Total bytes of code 676, prolog size 32, PerfScore 405.00, instruction count 169, allocated bytes for code 676 (MethodHash=4be2a75a) for method System.Data.SortExpressionBuilder`1[long]:CloneCast[int]():System.Data.SortExpressionBuilder`1[int]:this (FullOpts)
+; Total bytes of code 696, prolog size 36, PerfScore 408.38, instruction count 174, allocated bytes for code 696 (MethodHash=4be2a75a) for method System.Data.SortExpressionBuilder`1[long]:CloneCast[int]():System.Data.SortExpressionBuilder`1[int]:this (FullOpts)
20 (2.96 % of base) - System.Data.SortExpressionBuilder`1[long]:CloneCast[long]():System.Data.SortExpressionBuilder`1[long]:this
 ; Assembly listing for method System.Data.SortExpressionBuilder`1[long]:CloneCast[long]():System.Data.SortExpressionBuilder`1[long]:this (FullOpts)
 ; Emitting BLENDED_CODE for generic ARM64 - Unix
 ; FullOpts code
 ; optimized code
 ; fp based frame
 ; partially interruptible
 ; No PGO data
 ; 0 inlinees with PGO data; 12 single block inlinees; 4 inlinees without PGO data
 ; Final local variable assignments
 ;
 ;  V00 this         [V00,T06] (  6, 12   )     ref  ->  x19         this class-hnd single-def <System.Data.SortExpressionBuilder`1[long]>
 ;  V01 loc0         [V01,T05] (  8, 14   )     ref  ->  x20         class-hnd exact single-def <System.Data.SortExpressionBuilder`1[long]>
-;  V02 loc1         [V02    ] (  8, 14   )  struct (32) [fp+0x30]  do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Collections.Generic.LinkedList`1+Enumerator[System.Func`2[long,System.Object]]>
-;  V03 loc2         [V03,T08] (  4, 12   )     ref  ->  x22         class-hnd exact <System.Data.SortExpressionBuilder`1+<>c__DisplayClass10_0`1[long,long]>
-;  V04 loc3         [V04    ] (  8, 14   )  struct (32) [fp+0x10]  do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Collections.Generic.LinkedList`1+Enumerator[System.Comparison`1[System.Object]]>
+;  V02 loc1         [V02    ] (  8, 14   )  struct (32) [fp+0x38]  do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Collections.Generic.LinkedList`1+Enumerator[System.Func`2[long,System.Object]]>
+;  V03 loc2         [V03,T08] (  4, 12   )     ref  ->  x23         class-hnd exact <System.Data.SortExpressionBuilder`1+<>c__DisplayClass10_0`1[long,long]>
+;  V04 loc3         [V04    ] (  8, 14   )  struct (32) [fp+0x18]  do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Collections.Generic.LinkedList`1+Enumerator[System.Comparison`1[System.Object]]>
 ;  V05 loc4         [V05,T07] (  6, 14   )     ref  ->  x22         class-hnd <System.Comparison`1[System.Object]>
 ;# V06 OutArgs      [V06    ] (  1,  1   )  struct ( 0) [sp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-;  V07 tmp1         [V07,T15] (  3,  6   )     ref  ->  x20         class-hnd exact single-def "NewObj constructor temp" <System.Data.SortExpressionBuilder`1[long]>
+;  V07 tmp1         [V07,T14] (  3,  6   )     ref  ->  x20         class-hnd exact single-def "NewObj constructor temp" <System.Data.SortExpressionBuilder`1[long]>
 ;* V08 tmp2         [V08    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "NewObj constructor temp" <System.Data.SortExpressionBuilder`1+<>c__DisplayClass10_0`1[long,long]>
 ;  V09 tmp3         [V09,T02] (  4, 20   )     ref  ->   x1         class-hnd "impAppendStmt" <System.Func`2[long,System.Object]>
 ;  V10 tmp4         [V10,T03] (  4, 16   )     ref  ->   x1         class-hnd exact "NewObj constructor temp" <System.Func`2[long,System.Object]>
-;  V11 tmp5         [V11,T13] (  2,  8   )     ref  ->   x0         class-hnd "impAppendStmt" <System.Collections.Generic.LinkedList`1[System.Func`2[long,System.Object]]>
+;  V11 tmp5         [V11,T12] (  2,  8   )     ref  ->   x0         class-hnd "impAppendStmt" <System.Collections.Generic.LinkedList`1[System.Func`2[long,System.Object]]>
 ;  V12 tmp6         [V12,T04] (  4, 16   )     ref  ->   x1         class-hnd exact "NewObj constructor temp" <System.Func`2[long,System.Object]>
-;  V13 tmp7         [V13,T14] (  2,  8   )     ref  ->   x0         class-hnd "impAppendStmt" <System.Collections.Generic.LinkedList`1[System.Func`2[long,System.Object]]>
-;  V14 tmp8         [V14,T11] (  4,  8   )     ref  ->   x0         class-hnd single-def "Inlining Arg" <System.Collections.Generic.LinkedList`1[System.Func`2[long,System.Object]]>
+;  V13 tmp7         [V13,T13] (  2,  8   )     ref  ->   x0         class-hnd "impAppendStmt" <System.Collections.Generic.LinkedList`1[System.Func`2[long,System.Object]]>
+;  V14 tmp8         [V14,T10] (  4,  8   )     ref  ->   x0         class-hnd single-def "Inlining Arg" <System.Collections.Generic.LinkedList`1[System.Func`2[long,System.Object]]>
 ;* V15 tmp9         [V15    ] (  0,  0   )  struct (32) zero-ref    do-not-enreg[SF] ld-addr-op "NewObj constructor temp" <System.Collections.Generic.LinkedList`1+Enumerator[System.Func`2[long,System.Object]]>
 ;* V16 tmp10        [V16    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.Collections.Generic.LinkedListNode`1[System.Func`2[long,System.Object]]>
-;  V17 tmp11        [V17,T16] (  2,  4   )   ubyte  ->   x0         "Inline return value spill temp"
+;  V17 tmp11        [V17,T15] (  2,  4   )   ubyte  ->   x0         "Inline return value spill temp"
 ;  V18 tmp12        [V18,T00] (  5, 28   )     ref  ->   x0         class-hnd "Inlining Arg" <System.__Canon>
-;  V19 tmp13        [V19,T12] (  4,  8   )     ref  ->   x0         class-hnd single-def "Inlining Arg" <System.Collections.Generic.LinkedList`1[System.Comparison`1[System.Object]]>
+;  V19 tmp13        [V19,T11] (  4,  8   )     ref  ->   x0         class-hnd single-def "Inlining Arg" <System.Collections.Generic.LinkedList`1[System.Comparison`1[System.Object]]>
 ;* V20 tmp14        [V20    ] (  0,  0   )  struct (32) zero-ref    do-not-enreg[SF] ld-addr-op "NewObj constructor temp" <System.Collections.Generic.LinkedList`1+Enumerator[System.Comparison`1[System.Object]]>
 ;* V21 tmp15        [V21    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.Collections.Generic.LinkedListNode`1[System.Comparison`1[System.Object]]>
-;  V22 tmp16        [V22,T17] (  2,  4   )   ubyte  ->   x0         "Inline return value spill temp"
+;  V22 tmp16        [V22,T16] (  2,  4   )   ubyte  ->   x0         "Inline return value spill temp"
 ;  V23 tmp17        [V23,T01] (  5, 28   )     ref  ->   x0         class-hnd "Inlining Arg" <System.__Canon>
 ;* V24 tmp18        [V24    ] (  0,  0   )     ref  ->  zero-ref    single-def "V15.[000..008)"
-;  V25 tmp19        [V25,T19] (  2,  2   )     ref  ->   x2         single-def "V15.[008..016)"
+;  V25 tmp19        [V25,T20] (  2,  2   )     ref  ->   x2         single-def "V15.[008..016)"
 ;* V26 tmp20        [V26    ] (  0,  0   )     ref  ->  zero-ref    "V15.[016..024)"
-;  V27 tmp21        [V27,T21] (  2,  2   )     int  ->   x1         "V15.[024..028)"
+;  V27 tmp21        [V27,T22] (  2,  2   )     int  ->   x1         "V15.[024..028)"
 ;* V28 tmp22        [V28    ] (  0,  0   )     int  ->  zero-ref    "V15.[028..032)"
 ;* V29 tmp23        [V29    ] (  0,  0   )     ref  ->  zero-ref    single-def "V20.[000..008)"
-;  V30 tmp24        [V30,T20] (  2,  2   )     ref  ->   x2         single-def "V20.[008..016)"
+;  V30 tmp24        [V30,T21] (  2,  2   )     ref  ->   x2         single-def "V20.[008..016)"
 ;* V31 tmp25        [V31    ] (  0,  0   )     ref  ->  zero-ref    "V20.[016..024)"
-;  V32 tmp26        [V32,T22] (  2,  2   )     int  ->   x1         "V20.[024..028)"
+;  V32 tmp26        [V32,T23] (  2,  2   )     int  ->   x1         "V20.[024..028)"
 ;* V33 tmp27        [V33    ] (  0,  0   )     int  ->  zero-ref    "V20.[028..032)"
-;  V34 cse0         [V34,T10] (  4, 10   )    long  ->  x21         "CSE #01: aggressive"
-;  V35 cse1         [V35,T18] (  3,  6   )    long  ->  x21         "CSE #05: moderate"
-;  V36 cse2         [V36,T09] (  3, 12   )     ref  ->   x1         "CSE #02: aggressive"
+;  V34 cse0         [V34,T17] (  3,  6   )    long  ->  x21         "CSE #01: moderate"
+;  V35 cse1         [V35,T18] (  3,  6   )    long  ->  x21         "CSE #06: moderate"
+;  V36 cse2         [V36,T19] (  2,  4.25)    long  ->  x22         hoist "CSE #02: moderate"
+;  V37 cse3         [V37,T09] (  3, 12   )     ref  ->   x1         "CSE #03: aggressive"
 ;
-; Lcl frame size = 64
+; Lcl frame size = 72
 
 G_M27205_IG01:
-            stp     fp, lr, [sp, #-0x70]!
-            stp     x19, x20, [sp, #0x50]
-            stp     x21, x22, [sp, #0x60]
+            stp     fp, lr, [sp, #-0x80]!
+            stp     x19, x20, [sp, #0x58]
+            stp     x21, x22, [sp, #0x68]
+            str     x23, [sp, #0x78]
             mov     fp, sp
-            add     x9, fp, #16
+            add     x9, fp, #24
             movi    v16.16b, #0
             stp     q16, q16, [x9]
             stp     q16, q16, [x9, #0x20]
             mov     x19, x0
-						;; size=36 bbWeight=1 PerfScore 7.00
+						;; size=40 bbWeight=1 PerfScore 8.00
 G_M27205_IG02:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x20, x0
             movz    x1, #0xD1FFAB1E      // code for System.Data.SortExpressionBuilder`1[long]:.ctor():this
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
             ldr     x0, [x19, #0x08]
             ldr     w1, [x0, #0x1C]
             ldr     x2, [x0, #0x08]
-            stp     x0, x2, [fp, #0x30]	// [V02 loc1], [V02 loc1+0x08]
-            str     xzr, [fp, #0x40]	// [V02 loc1+0x10]
-            stp     w1, wzr, [fp, #0x48]	// [V02 loc1+0x18], [V02 loc1+0x1c]
-            add     x0, fp, #48	// [V02 loc1]
+            stp     x0, x2, [fp, #0x38]	// [V02 loc1], [V02 loc1+0x08]
+            str     xzr, [fp, #0x48]	// [V02 loc1+0x10]
+            stp     w1, wzr, [fp, #0x50]	// [V02 loc1+0x18], [V02 loc1+0x1c]
+            add     x0, fp, #56	// [V02 loc1]
             movz    x21, #0xD1FFAB1E
             movk    x21, #0xD1FFAB1E LSL #16
             movk    x21, #0xD1FFAB1E LSL #32
             mov     x1, x21
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            cbz     w0, G_M27205_IG09
+            cbz     w0, G_M27205_IG10
 						;; size=108 bbWeight=1 PerfScore 29.50
 G_M27205_IG03:
-            add     x0, x21, #0xD1FFAB1E
+            movz    x22, #0xD1FFAB1E
+            movk    x22, #0xD1FFAB1E LSL #16
+            movk    x22, #0xD1FFAB1E LSL #32
+						;; size=12 bbWeight=0.25 PerfScore 0.38
+G_M27205_IG04:
+            mov     x0, x22
             bl      CORINFO_HELP_NEWSFAST
-            mov     x22, x0
-            ldr     x1, [fp, #0x40]	// [V02 loc1+0x10]
-            add     x14, x22, #8
+            mov     x23, x0
+            ldr     x1, [fp, #0x48]	// [V02 loc1+0x10]
+            add     x14, x23, #8
             mov     x15, x1
             bl      CORINFO_HELP_ASSIGN_REF
             ldr     x0, [x19, #0x18]
             ldr     x0, [x0, #0x20]
-            cbnz    x0, G_M27205_IG05
+            cbnz    x0, G_M27205_IG06
 						;; size=40 bbWeight=4 PerfScore 52.00
-G_M27205_IG04:
-            cbnz    x1, G_M27205_IG07
-            b       G_M27205_IG06
-						;; size=8 bbWeight=2 PerfScore 4.00
 G_M27205_IG05:
+            cbnz    x1, G_M27205_IG08
+            b       G_M27205_IG07
+						;; size=8 bbWeight=2 PerfScore 4.00
+G_M27205_IG06:
             cmp     x0, x1
-            beq     G_M27205_IG06
+            beq     G_M27205_IG07
             ldr     x2, [x0]
             ldr     x2, [x2, #0x40]
             ldr     x2, [x2, #0x10]
             blr     x2
-            cbz     w0, G_M27205_IG07
+            cbz     w0, G_M27205_IG08
 						;; size=28 bbWeight=2 PerfScore 25.00
-G_M27205_IG06:
+G_M27205_IG07:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x1, x0
             ldr     x0, [x20, #0x08]
             add     x14, x1, #8
-            mov     x15, x22
+            mov     x15, x23
             bl      CORINFO_HELP_ASSIGN_REF
             movz    x2, #0xD1FFAB1E      // code for System.Data.SortExpressionBuilder`1+<>c__DisplayClass10_0`1[long,long]:<CloneCast>b__0(long):System.Object:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             str     x2, [x1, #0x18]
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1[System.__Canon]:AddLast(System.__Canon):System.Collections.Generic.LinkedListNode`1[System.__Canon]:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             ldr     wzr, [x0]
             blr     x2
             add     x14, x20, #24
             mov     x15, x0
             bl      CORINFO_HELP_ASSIGN_REF
-            b       G_M27205_IG08
+            b       G_M27205_IG09
 						;; size=92 bbWeight=2 PerfScore 44.00
-G_M27205_IG07:
+G_M27205_IG08:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x1, x0
             ldr     x0, [x20, #0x08]
             add     x14, x1, #8
-            mov     x15, x22
+            mov     x15, x23
             bl      CORINFO_HELP_ASSIGN_REF
             movz    x2, #0xD1FFAB1E      // code for System.Data.SortExpressionBuilder`1+<>c__DisplayClass10_0`1[long,long]:<CloneCast>b__1(long):System.Object:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             str     x2, [x1, #0x18]
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1[System.__Canon]:AddLast(System.__Canon):System.Collections.Generic.LinkedListNode`1[System.__Canon]:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             ldr     wzr, [x0]
             blr     x2
 						;; size=76 bbWeight=2 PerfScore 38.00
-G_M27205_IG08:
-            add     x0, fp, #48	// [V02 loc1]
+G_M27205_IG09:
+            add     x0, fp, #56	// [V02 loc1]
             mov     x1, x21
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            cbnz    w0, G_M27205_IG03
+            cbnz    w0, G_M27205_IG04
 						;; size=32 bbWeight=4 PerfScore 30.00
-G_M27205_IG09:
+G_M27205_IG10:
             ldr     x0, [x19, #0x10]
             ldr     w1, [x0, #0x1C]
             ldr     x2, [x0, #0x08]
-            stp     x0, x2, [fp, #0x10]	// [V04 loc3], [V04 loc3+0x08]
-            str     xzr, [fp, #0x20]	// [V04 loc3+0x10]
-            stp     w1, wzr, [fp, #0x28]	// [V04 loc3+0x18], [V04 loc3+0x1c]
-            add     x0, fp, #16	// [V04 loc3]
+            stp     x0, x2, [fp, #0x18]	// [V04 loc3], [V04 loc3+0x08]
+            str     xzr, [fp, #0x28]	// [V04 loc3+0x10]
+            stp     w1, wzr, [fp, #0x30]	// [V04 loc3+0x18], [V04 loc3+0x1c]
+            add     x0, fp, #24	// [V04 loc3]
             movz    x21, #0xD1FFAB1E
             movk    x21, #0xD1FFAB1E LSL #16
             movk    x21, #0xD1FFAB1E LSL #32
             mov     x1, x21
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            cbz     w0, G_M27205_IG16
+            cbz     w0, G_M27205_IG17
 						;; size=68 bbWeight=1 PerfScore 21.00
-G_M27205_IG10:
-            ldr     x22, [fp, #0x20]	// [V04 loc3+0x10]
+G_M27205_IG11:
+            ldr     x22, [fp, #0x28]	// [V04 loc3+0x10]
             ldr     x0, [x19, #0x20]
             ldr     x0, [x0, #0x20]
-            cbnz    x0, G_M27205_IG12
+            cbnz    x0, G_M27205_IG13
 						;; size=16 bbWeight=4 PerfScore 36.00
-G_M27205_IG11:
-            cbnz    x22, G_M27205_IG14
-            b       G_M27205_IG13
-						;; size=8 bbWeight=2 PerfScore 4.00
 G_M27205_IG12:
+            cbnz    x22, G_M27205_IG15
+            b       G_M27205_IG14
+						;; size=8 bbWeight=2 PerfScore 4.00
+G_M27205_IG13:
             cmp     x0, x22
-            beq     G_M27205_IG13
+            beq     G_M27205_IG14
             mov     x1, x22
             ldr     x2, [x0]
             ldr     x2, [x2, #0x40]
             ldr     x2, [x2, #0x10]
             blr     x2
-            cbz     w0, G_M27205_IG14
+            cbz     w0, G_M27205_IG15
 						;; size=32 bbWeight=2 PerfScore 26.00
-G_M27205_IG13:
+G_M27205_IG14:
             ldr     x0, [x20, #0x10]
             mov     x1, x22
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1[System.__Canon]:AddLast(System.__Canon):System.Collections.Generic.LinkedListNode`1[System.__Canon]:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             ldr     wzr, [x0]
             blr     x2
             add     x14, x20, #32
             mov     x15, x0
             bl      CORINFO_HELP_ASSIGN_REF
-            b       G_M27205_IG15
+            b       G_M27205_IG16
 						;; size=48 bbWeight=2 PerfScore 30.00
-G_M27205_IG14:
+G_M27205_IG15:
             ldr     x0, [x20, #0x10]
             mov     x1, x22
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1[System.__Canon]:AddLast(System.__Canon):System.Collections.Generic.LinkedListNode`1[System.__Canon]:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             ldr     wzr, [x0]
             blr     x2
 						;; size=32 bbWeight=2 PerfScore 24.00
-G_M27205_IG15:
-            add     x0, fp, #16	// [V04 loc3]
+G_M27205_IG16:
+            add     x0, fp, #24	// [V04 loc3]
             mov     x1, x21
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            cbnz    w0, G_M27205_IG10
+            cbnz    w0, G_M27205_IG11
 						;; size=32 bbWeight=4 PerfScore 30.00
-G_M27205_IG16:
+G_M27205_IG17:
             mov     x0, x20
 						;; size=4 bbWeight=1 PerfScore 0.50
-G_M27205_IG17:
-            ldp     x21, x22, [sp, #0x60]
-            ldp     x19, x20, [sp, #0x50]
-            ldp     fp, lr, [sp], #0x70
+G_M27205_IG18:
+            ldr     x23, [sp, #0x78]
+            ldp     x21, x22, [sp, #0x68]
+            ldp     x19, x20, [sp, #0x58]
+            ldp     fp, lr, [sp], #0x80
             ret     lr
-						;; size=16 bbWeight=1 PerfScore 4.00
+						;; size=20 bbWeight=1 PerfScore 6.00
 
-; Total bytes of code 676, prolog size 32, PerfScore 405.00, instruction count 169, allocated bytes for code 676 (MethodHash=f50a95ba) for method System.Data.SortExpressionBuilder`1[long]:CloneCast[long]():System.Data.SortExpressionBuilder`1[long]:this (FullOpts)
+; Total bytes of code 696, prolog size 36, PerfScore 408.38, instruction count 174, allocated bytes for code 696 (MethodHash=f50a95ba) for method System.Data.SortExpressionBuilder`1[long]:CloneCast[long]():System.Data.SortExpressionBuilder`1[long]:this (FullOpts)
20 (2.96 % of base) - System.Data.SortExpressionBuilder`1[long]:CloneCast[short]():System.Data.SortExpressionBuilder`1[short]:this
 ; Assembly listing for method System.Data.SortExpressionBuilder`1[long]:CloneCast[short]():System.Data.SortExpressionBuilder`1[short]:this (FullOpts)
 ; Emitting BLENDED_CODE for generic ARM64 - Unix
 ; FullOpts code
 ; optimized code
 ; fp based frame
 ; partially interruptible
 ; No PGO data
 ; 0 inlinees with PGO data; 12 single block inlinees; 4 inlinees without PGO data
 ; Final local variable assignments
 ;
 ;  V00 this         [V00,T06] (  6, 12   )     ref  ->  x19         this class-hnd single-def <System.Data.SortExpressionBuilder`1[long]>
 ;  V01 loc0         [V01,T05] (  8, 14   )     ref  ->  x20         class-hnd exact single-def <System.Data.SortExpressionBuilder`1[short]>
-;  V02 loc1         [V02    ] (  8, 14   )  struct (32) [fp+0x30]  do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Collections.Generic.LinkedList`1+Enumerator[System.Func`2[long,System.Object]]>
-;  V03 loc2         [V03,T08] (  4, 12   )     ref  ->  x22         class-hnd exact <System.Data.SortExpressionBuilder`1+<>c__DisplayClass10_0`1[long,short]>
-;  V04 loc3         [V04    ] (  8, 14   )  struct (32) [fp+0x10]  do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Collections.Generic.LinkedList`1+Enumerator[System.Comparison`1[System.Object]]>
+;  V02 loc1         [V02    ] (  8, 14   )  struct (32) [fp+0x38]  do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Collections.Generic.LinkedList`1+Enumerator[System.Func`2[long,System.Object]]>
+;  V03 loc2         [V03,T08] (  4, 12   )     ref  ->  x23         class-hnd exact <System.Data.SortExpressionBuilder`1+<>c__DisplayClass10_0`1[long,short]>
+;  V04 loc3         [V04    ] (  8, 14   )  struct (32) [fp+0x18]  do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Collections.Generic.LinkedList`1+Enumerator[System.Comparison`1[System.Object]]>
 ;  V05 loc4         [V05,T07] (  6, 14   )     ref  ->  x22         class-hnd <System.Comparison`1[System.Object]>
 ;# V06 OutArgs      [V06    ] (  1,  1   )  struct ( 0) [sp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-;  V07 tmp1         [V07,T15] (  3,  6   )     ref  ->  x20         class-hnd exact single-def "NewObj constructor temp" <System.Data.SortExpressionBuilder`1[short]>
+;  V07 tmp1         [V07,T14] (  3,  6   )     ref  ->  x20         class-hnd exact single-def "NewObj constructor temp" <System.Data.SortExpressionBuilder`1[short]>
 ;* V08 tmp2         [V08    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "NewObj constructor temp" <System.Data.SortExpressionBuilder`1+<>c__DisplayClass10_0`1[long,short]>
 ;  V09 tmp3         [V09,T02] (  4, 20   )     ref  ->   x1         class-hnd "impAppendStmt" <System.Func`2[long,System.Object]>
 ;  V10 tmp4         [V10,T03] (  4, 16   )     ref  ->   x1         class-hnd exact "NewObj constructor temp" <System.Func`2[short,System.Object]>
-;  V11 tmp5         [V11,T13] (  2,  8   )     ref  ->   x0         class-hnd "impAppendStmt" <System.Collections.Generic.LinkedList`1[System.Func`2[short,System.Object]]>
+;  V11 tmp5         [V11,T12] (  2,  8   )     ref  ->   x0         class-hnd "impAppendStmt" <System.Collections.Generic.LinkedList`1[System.Func`2[short,System.Object]]>
 ;  V12 tmp6         [V12,T04] (  4, 16   )     ref  ->   x1         class-hnd exact "NewObj constructor temp" <System.Func`2[short,System.Object]>
-;  V13 tmp7         [V13,T14] (  2,  8   )     ref  ->   x0         class-hnd "impAppendStmt" <System.Collections.Generic.LinkedList`1[System.Func`2[short,System.Object]]>
-;  V14 tmp8         [V14,T11] (  4,  8   )     ref  ->   x0         class-hnd single-def "Inlining Arg" <System.Collections.Generic.LinkedList`1[System.Func`2[long,System.Object]]>
+;  V13 tmp7         [V13,T13] (  2,  8   )     ref  ->   x0         class-hnd "impAppendStmt" <System.Collections.Generic.LinkedList`1[System.Func`2[short,System.Object]]>
+;  V14 tmp8         [V14,T10] (  4,  8   )     ref  ->   x0         class-hnd single-def "Inlining Arg" <System.Collections.Generic.LinkedList`1[System.Func`2[long,System.Object]]>
 ;* V15 tmp9         [V15    ] (  0,  0   )  struct (32) zero-ref    do-not-enreg[SF] ld-addr-op "NewObj constructor temp" <System.Collections.Generic.LinkedList`1+Enumerator[System.Func`2[long,System.Object]]>
 ;* V16 tmp10        [V16    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.Collections.Generic.LinkedListNode`1[System.Func`2[long,System.Object]]>
-;  V17 tmp11        [V17,T16] (  2,  4   )   ubyte  ->   x0         "Inline return value spill temp"
+;  V17 tmp11        [V17,T15] (  2,  4   )   ubyte  ->   x0         "Inline return value spill temp"
 ;  V18 tmp12        [V18,T00] (  5, 28   )     ref  ->   x0         class-hnd "Inlining Arg" <System.__Canon>
-;  V19 tmp13        [V19,T12] (  4,  8   )     ref  ->   x0         class-hnd single-def "Inlining Arg" <System.Collections.Generic.LinkedList`1[System.Comparison`1[System.Object]]>
+;  V19 tmp13        [V19,T11] (  4,  8   )     ref  ->   x0         class-hnd single-def "Inlining Arg" <System.Collections.Generic.LinkedList`1[System.Comparison`1[System.Object]]>
 ;* V20 tmp14        [V20    ] (  0,  0   )  struct (32) zero-ref    do-not-enreg[SF] ld-addr-op "NewObj constructor temp" <System.Collections.Generic.LinkedList`1+Enumerator[System.Comparison`1[System.Object]]>
 ;* V21 tmp15        [V21    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.Collections.Generic.LinkedListNode`1[System.Comparison`1[System.Object]]>
-;  V22 tmp16        [V22,T17] (  2,  4   )   ubyte  ->   x0         "Inline return value spill temp"
+;  V22 tmp16        [V22,T16] (  2,  4   )   ubyte  ->   x0         "Inline return value spill temp"
 ;  V23 tmp17        [V23,T01] (  5, 28   )     ref  ->   x0         class-hnd "Inlining Arg" <System.__Canon>
 ;* V24 tmp18        [V24    ] (  0,  0   )     ref  ->  zero-ref    single-def "V15.[000..008)"
-;  V25 tmp19        [V25,T19] (  2,  2   )     ref  ->   x2         single-def "V15.[008..016)"
+;  V25 tmp19        [V25,T20] (  2,  2   )     ref  ->   x2         single-def "V15.[008..016)"
 ;* V26 tmp20        [V26    ] (  0,  0   )     ref  ->  zero-ref    "V15.[016..024)"
-;  V27 tmp21        [V27,T21] (  2,  2   )     int  ->   x1         "V15.[024..028)"
+;  V27 tmp21        [V27,T22] (  2,  2   )     int  ->   x1         "V15.[024..028)"
 ;* V28 tmp22        [V28    ] (  0,  0   )     int  ->  zero-ref    "V15.[028..032)"
 ;* V29 tmp23        [V29    ] (  0,  0   )     ref  ->  zero-ref    single-def "V20.[000..008)"
-;  V30 tmp24        [V30,T20] (  2,  2   )     ref  ->   x2         single-def "V20.[008..016)"
+;  V30 tmp24        [V30,T21] (  2,  2   )     ref  ->   x2         single-def "V20.[008..016)"
 ;* V31 tmp25        [V31    ] (  0,  0   )     ref  ->  zero-ref    "V20.[016..024)"
-;  V32 tmp26        [V32,T22] (  2,  2   )     int  ->   x1         "V20.[024..028)"
+;  V32 tmp26        [V32,T23] (  2,  2   )     int  ->   x1         "V20.[024..028)"
 ;* V33 tmp27        [V33    ] (  0,  0   )     int  ->  zero-ref    "V20.[028..032)"
-;  V34 cse0         [V34,T10] (  4, 10   )    long  ->  x21         "CSE #01: aggressive"
-;  V35 cse1         [V35,T18] (  3,  6   )    long  ->  x21         "CSE #05: moderate"
-;  V36 cse2         [V36,T09] (  3, 12   )     ref  ->   x1         "CSE #02: aggressive"
+;  V34 cse0         [V34,T17] (  3,  6   )    long  ->  x21         "CSE #01: moderate"
+;  V35 cse1         [V35,T18] (  3,  6   )    long  ->  x21         "CSE #06: moderate"
+;  V36 cse2         [V36,T19] (  2,  4.25)    long  ->  x22         hoist "CSE #02: moderate"
+;  V37 cse3         [V37,T09] (  3, 12   )     ref  ->   x1         "CSE #03: aggressive"
 ;
-; Lcl frame size = 64
+; Lcl frame size = 72
 
 G_M27333_IG01:
-            stp     fp, lr, [sp, #-0x70]!
-            stp     x19, x20, [sp, #0x50]
-            stp     x21, x22, [sp, #0x60]
+            stp     fp, lr, [sp, #-0x80]!
+            stp     x19, x20, [sp, #0x58]
+            stp     x21, x22, [sp, #0x68]
+            str     x23, [sp, #0x78]
             mov     fp, sp
-            add     x9, fp, #16
+            add     x9, fp, #24
             movi    v16.16b, #0
             stp     q16, q16, [x9]
             stp     q16, q16, [x9, #0x20]
             mov     x19, x0
-						;; size=36 bbWeight=1 PerfScore 7.00
+						;; size=40 bbWeight=1 PerfScore 8.00
 G_M27333_IG02:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x20, x0
             movz    x1, #0xD1FFAB1E      // code for System.Data.SortExpressionBuilder`1[short]:.ctor():this
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
             ldr     x0, [x19, #0x08]
             ldr     w1, [x0, #0x1C]
             ldr     x2, [x0, #0x08]
-            stp     x0, x2, [fp, #0x30]	// [V02 loc1], [V02 loc1+0x08]
-            str     xzr, [fp, #0x40]	// [V02 loc1+0x10]
-            stp     w1, wzr, [fp, #0x48]	// [V02 loc1+0x18], [V02 loc1+0x1c]
-            add     x0, fp, #48	// [V02 loc1]
+            stp     x0, x2, [fp, #0x38]	// [V02 loc1], [V02 loc1+0x08]
+            str     xzr, [fp, #0x48]	// [V02 loc1+0x10]
+            stp     w1, wzr, [fp, #0x50]	// [V02 loc1+0x18], [V02 loc1+0x1c]
+            add     x0, fp, #56	// [V02 loc1]
             movz    x21, #0xD1FFAB1E
             movk    x21, #0xD1FFAB1E LSL #16
             movk    x21, #0xD1FFAB1E LSL #32
             mov     x1, x21
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            cbz     w0, G_M27333_IG09
+            cbz     w0, G_M27333_IG10
 						;; size=108 bbWeight=1 PerfScore 29.50
 G_M27333_IG03:
-            add     x0, x21, #0xD1FFAB1E
+            movz    x22, #0xD1FFAB1E
+            movk    x22, #0xD1FFAB1E LSL #16
+            movk    x22, #0xD1FFAB1E LSL #32
+						;; size=12 bbWeight=0.25 PerfScore 0.38
+G_M27333_IG04:
+            mov     x0, x22
             bl      CORINFO_HELP_NEWSFAST
-            mov     x22, x0
-            ldr     x1, [fp, #0x40]	// [V02 loc1+0x10]
-            add     x14, x22, #8
+            mov     x23, x0
+            ldr     x1, [fp, #0x48]	// [V02 loc1+0x10]
+            add     x14, x23, #8
             mov     x15, x1
             bl      CORINFO_HELP_ASSIGN_REF
             ldr     x0, [x19, #0x18]
             ldr     x0, [x0, #0x20]
-            cbnz    x0, G_M27333_IG05
+            cbnz    x0, G_M27333_IG06
 						;; size=40 bbWeight=4 PerfScore 52.00
-G_M27333_IG04:
-            cbnz    x1, G_M27333_IG07
-            b       G_M27333_IG06
-						;; size=8 bbWeight=2 PerfScore 4.00
 G_M27333_IG05:
+            cbnz    x1, G_M27333_IG08
+            b       G_M27333_IG07
+						;; size=8 bbWeight=2 PerfScore 4.00
+G_M27333_IG06:
             cmp     x0, x1
-            beq     G_M27333_IG06
+            beq     G_M27333_IG07
             ldr     x2, [x0]
             ldr     x2, [x2, #0x40]
             ldr     x2, [x2, #0x10]
             blr     x2
-            cbz     w0, G_M27333_IG07
+            cbz     w0, G_M27333_IG08
 						;; size=28 bbWeight=2 PerfScore 25.00
-G_M27333_IG06:
+G_M27333_IG07:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x1, x0
             ldr     x0, [x20, #0x08]
             add     x14, x1, #8
-            mov     x15, x22
+            mov     x15, x23
             bl      CORINFO_HELP_ASSIGN_REF
             movz    x2, #0xD1FFAB1E      // code for System.Data.SortExpressionBuilder`1+<>c__DisplayClass10_0`1[long,short]:<CloneCast>b__0(short):System.Object:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             str     x2, [x1, #0x18]
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1[System.__Canon]:AddLast(System.__Canon):System.Collections.Generic.LinkedListNode`1[System.__Canon]:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             ldr     wzr, [x0]
             blr     x2
             add     x14, x20, #24
             mov     x15, x0
             bl      CORINFO_HELP_ASSIGN_REF
-            b       G_M27333_IG08
+            b       G_M27333_IG09
 						;; size=92 bbWeight=2 PerfScore 44.00
-G_M27333_IG07:
+G_M27333_IG08:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x1, x0
             ldr     x0, [x20, #0x08]
             add     x14, x1, #8
-            mov     x15, x22
+            mov     x15, x23
             bl      CORINFO_HELP_ASSIGN_REF
             movz    x2, #0xD1FFAB1E      // code for System.Data.SortExpressionBuilder`1+<>c__DisplayClass10_0`1[long,short]:<CloneCast>b__1(short):System.Object:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             str     x2, [x1, #0x18]
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1[System.__Canon]:AddLast(System.__Canon):System.Collections.Generic.LinkedListNode`1[System.__Canon]:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             ldr     wzr, [x0]
             blr     x2
 						;; size=76 bbWeight=2 PerfScore 38.00
-G_M27333_IG08:
-            add     x0, fp, #48	// [V02 loc1]
+G_M27333_IG09:
+            add     x0, fp, #56	// [V02 loc1]
             mov     x1, x21
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            cbnz    w0, G_M27333_IG03
+            cbnz    w0, G_M27333_IG04
 						;; size=32 bbWeight=4 PerfScore 30.00
-G_M27333_IG09:
+G_M27333_IG10:
             ldr     x0, [x19, #0x10]
             ldr     w1, [x0, #0x1C]
             ldr     x2, [x0, #0x08]
-            stp     x0, x2, [fp, #0x10]	// [V04 loc3], [V04 loc3+0x08]
-            str     xzr, [fp, #0x20]	// [V04 loc3+0x10]
-            stp     w1, wzr, [fp, #0x28]	// [V04 loc3+0x18], [V04 loc3+0x1c]
-            add     x0, fp, #16	// [V04 loc3]
+            stp     x0, x2, [fp, #0x18]	// [V04 loc3], [V04 loc3+0x08]
+            str     xzr, [fp, #0x28]	// [V04 loc3+0x10]
+            stp     w1, wzr, [fp, #0x30]	// [V04 loc3+0x18], [V04 loc3+0x1c]
+            add     x0, fp, #24	// [V04 loc3]
             movz    x21, #0xD1FFAB1E
             movk    x21, #0xD1FFAB1E LSL #16
             movk    x21, #0xD1FFAB1E LSL #32
             mov     x1, x21
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            cbz     w0, G_M27333_IG16
+            cbz     w0, G_M27333_IG17
 						;; size=68 bbWeight=1 PerfScore 21.00
-G_M27333_IG10:
-            ldr     x22, [fp, #0x20]	// [V04 loc3+0x10]
+G_M27333_IG11:
+            ldr     x22, [fp, #0x28]	// [V04 loc3+0x10]
             ldr     x0, [x19, #0x20]
             ldr     x0, [x0, #0x20]
-            cbnz    x0, G_M27333_IG12
+            cbnz    x0, G_M27333_IG13
 						;; size=16 bbWeight=4 PerfScore 36.00
-G_M27333_IG11:
-            cbnz    x22, G_M27333_IG14
-            b       G_M27333_IG13
-						;; size=8 bbWeight=2 PerfScore 4.00
 G_M27333_IG12:
+            cbnz    x22, G_M27333_IG15
+            b       G_M27333_IG14
+						;; size=8 bbWeight=2 PerfScore 4.00
+G_M27333_IG13:
             cmp     x0, x22
-            beq     G_M27333_IG13
+            beq     G_M27333_IG14
             mov     x1, x22
             ldr     x2, [x0]
             ldr     x2, [x2, #0x40]
             ldr     x2, [x2, #0x10]
             blr     x2
-            cbz     w0, G_M27333_IG14
+            cbz     w0, G_M27333_IG15
 						;; size=32 bbWeight=2 PerfScore 26.00
-G_M27333_IG13:
+G_M27333_IG14:
             ldr     x0, [x20, #0x10]
             mov     x1, x22
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1[System.__Canon]:AddLast(System.__Canon):System.Collections.Generic.LinkedListNode`1[System.__Canon]:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             ldr     wzr, [x0]
             blr     x2
             add     x14, x20, #32
             mov     x15, x0
             bl      CORINFO_HELP_ASSIGN_REF
-            b       G_M27333_IG15
+            b       G_M27333_IG16
 						;; size=48 bbWeight=2 PerfScore 30.00
-G_M27333_IG14:
+G_M27333_IG15:
             ldr     x0, [x20, #0x10]
             mov     x1, x22
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1[System.__Canon]:AddLast(System.__Canon):System.Collections.Generic.LinkedListNode`1[System.__Canon]:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             ldr     wzr, [x0]
             blr     x2
 						;; size=32 bbWeight=2 PerfScore 24.00
-G_M27333_IG15:
-            add     x0, fp, #16	// [V04 loc3]
+G_M27333_IG16:
+            add     x0, fp, #24	// [V04 loc3]
             mov     x1, x21
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            cbnz    w0, G_M27333_IG10
+            cbnz    w0, G_M27333_IG11
 						;; size=32 bbWeight=4 PerfScore 30.00
-G_M27333_IG16:
+G_M27333_IG17:
             mov     x0, x20
 						;; size=4 bbWeight=1 PerfScore 0.50
-G_M27333_IG17:
-            ldp     x21, x22, [sp, #0x60]
-            ldp     x19, x20, [sp, #0x50]
-            ldp     fp, lr, [sp], #0x70
+G_M27333_IG18:
+            ldr     x23, [sp, #0x78]
+            ldp     x21, x22, [sp, #0x68]
+            ldp     x19, x20, [sp, #0x58]
+            ldp     fp, lr, [sp], #0x80
             ret     lr
-						;; size=16 bbWeight=1 PerfScore 4.00
+						;; size=20 bbWeight=1 PerfScore 6.00
 
-; Total bytes of code 676, prolog size 32, PerfScore 405.00, instruction count 169, allocated bytes for code 676 (MethodHash=5a47953a) for method System.Data.SortExpressionBuilder`1[long]:CloneCast[short]():System.Data.SortExpressionBuilder`1[short]:this (FullOpts)
+; Total bytes of code 696, prolog size 36, PerfScore 408.38, instruction count 174, allocated bytes for code 696 (MethodHash=5a47953a) for method System.Data.SortExpressionBuilder`1[long]:CloneCast[short]():System.Data.SortExpressionBuilder`1[short]:this (FullOpts)
20 (2.96 % of base) - System.Data.SortExpressionBuilder`1[long]:CloneCast[System.Numerics.Vector`1[float]]():System.Data.SortExpressionBuilder`1[System.Numerics.Vector`1[float]]:this
 ; Assembly listing for method System.Data.SortExpressionBuilder`1[long]:CloneCast[System.Numerics.Vector`1[float]]():System.Data.SortExpressionBuilder`1[System.Numerics.Vector`1[float]]:this (FullOpts)
 ; Emitting BLENDED_CODE for generic ARM64 - Unix
 ; FullOpts code
 ; optimized code
 ; fp based frame
 ; partially interruptible
 ; No PGO data
 ; 0 inlinees with PGO data; 12 single block inlinees; 4 inlinees without PGO data
 ; Final local variable assignments
 ;
 ;  V00 this         [V00,T06] (  6, 12   )     ref  ->  x19         this class-hnd single-def <System.Data.SortExpressionBuilder`1[long]>
 ;  V01 loc0         [V01,T05] (  8, 14   )     ref  ->  x20         class-hnd exact single-def <System.Data.SortExpressionBuilder`1[System.Numerics.Vector`1[float]]>
-;  V02 loc1         [V02    ] (  8, 14   )  struct (32) [fp+0x30]  do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Collections.Generic.LinkedList`1+Enumerator[System.Func`2[long,System.Object]]>
-;  V03 loc2         [V03,T08] (  4, 12   )     ref  ->  x22         class-hnd exact <System.Data.SortExpressionBuilder`1+<>c__DisplayClass10_0`1[long,System.Numerics.Vector`1[float]]>
-;  V04 loc3         [V04    ] (  8, 14   )  struct (32) [fp+0x10]  do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Collections.Generic.LinkedList`1+Enumerator[System.Comparison`1[System.Object]]>
+;  V02 loc1         [V02    ] (  8, 14   )  struct (32) [fp+0x38]  do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Collections.Generic.LinkedList`1+Enumerator[System.Func`2[long,System.Object]]>
+;  V03 loc2         [V03,T08] (  4, 12   )     ref  ->  x23         class-hnd exact <System.Data.SortExpressionBuilder`1+<>c__DisplayClass10_0`1[long,System.Numerics.Vector`1[float]]>
+;  V04 loc3         [V04    ] (  8, 14   )  struct (32) [fp+0x18]  do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Collections.Generic.LinkedList`1+Enumerator[System.Comparison`1[System.Object]]>
 ;  V05 loc4         [V05,T07] (  6, 14   )     ref  ->  x22         class-hnd <System.Comparison`1[System.Object]>
 ;# V06 OutArgs      [V06    ] (  1,  1   )  struct ( 0) [sp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-;  V07 tmp1         [V07,T15] (  3,  6   )     ref  ->  x20         class-hnd exact single-def "NewObj constructor temp" <System.Data.SortExpressionBuilder`1[System.Numerics.Vector`1[float]]>
+;  V07 tmp1         [V07,T14] (  3,  6   )     ref  ->  x20         class-hnd exact single-def "NewObj constructor temp" <System.Data.SortExpressionBuilder`1[System.Numerics.Vector`1[float]]>
 ;* V08 tmp2         [V08    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "NewObj constructor temp" <System.Data.SortExpressionBuilder`1+<>c__DisplayClass10_0`1[long,System.Numerics.Vector`1[float]]>
 ;  V09 tmp3         [V09,T02] (  4, 20   )     ref  ->   x1         class-hnd "impAppendStmt" <System.Func`2[long,System.Object]>
 ;  V10 tmp4         [V10,T03] (  4, 16   )     ref  ->   x1         class-hnd exact "NewObj constructor temp" <System.Func`2[System.Numerics.Vector`1[float],System.Object]>
-;  V11 tmp5         [V11,T13] (  2,  8   )     ref  ->   x0         class-hnd "impAppendStmt" <System.Collections.Generic.LinkedList`1[System.Func`2[System.Numerics.Vector`1[float],System.Object]]>
+;  V11 tmp5         [V11,T12] (  2,  8   )     ref  ->   x0         class-hnd "impAppendStmt" <System.Collections.Generic.LinkedList`1[System.Func`2[System.Numerics.Vector`1[float],System.Object]]>
 ;  V12 tmp6         [V12,T04] (  4, 16   )     ref  ->   x1         class-hnd exact "NewObj constructor temp" <System.Func`2[System.Numerics.Vector`1[float],System.Object]>
-;  V13 tmp7         [V13,T14] (  2,  8   )     ref  ->   x0         class-hnd "impAppendStmt" <System.Collections.Generic.LinkedList`1[System.Func`2[System.Numerics.Vector`1[float],System.Object]]>
-;  V14 tmp8         [V14,T11] (  4,  8   )     ref  ->   x0         class-hnd single-def "Inlining Arg" <System.Collections.Generic.LinkedList`1[System.Func`2[long,System.Object]]>
+;  V13 tmp7         [V13,T13] (  2,  8   )     ref  ->   x0         class-hnd "impAppendStmt" <System.Collections.Generic.LinkedList`1[System.Func`2[System.Numerics.Vector`1[float],System.Object]]>
+;  V14 tmp8         [V14,T10] (  4,  8   )     ref  ->   x0         class-hnd single-def "Inlining Arg" <System.Collections.Generic.LinkedList`1[System.Func`2[long,System.Object]]>
 ;* V15 tmp9         [V15    ] (  0,  0   )  struct (32) zero-ref    do-not-enreg[SF] ld-addr-op "NewObj constructor temp" <System.Collections.Generic.LinkedList`1+Enumerator[System.Func`2[long,System.Object]]>
 ;* V16 tmp10        [V16    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.Collections.Generic.LinkedListNode`1[System.Func`2[long,System.Object]]>
-;  V17 tmp11        [V17,T16] (  2,  4   )   ubyte  ->   x0         "Inline return value spill temp"
+;  V17 tmp11        [V17,T15] (  2,  4   )   ubyte  ->   x0         "Inline return value spill temp"
 ;  V18 tmp12        [V18,T00] (  5, 28   )     ref  ->   x0         class-hnd "Inlining Arg" <System.__Canon>
-;  V19 tmp13        [V19,T12] (  4,  8   )     ref  ->   x0         class-hnd single-def "Inlining Arg" <System.Collections.Generic.LinkedList`1[System.Comparison`1[System.Object]]>
+;  V19 tmp13        [V19,T11] (  4,  8   )     ref  ->   x0         class-hnd single-def "Inlining Arg" <System.Collections.Generic.LinkedList`1[System.Comparison`1[System.Object]]>
 ;* V20 tmp14        [V20    ] (  0,  0   )  struct (32) zero-ref    do-not-enreg[SF] ld-addr-op "NewObj constructor temp" <System.Collections.Generic.LinkedList`1+Enumerator[System.Comparison`1[System.Object]]>
 ;* V21 tmp15        [V21    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.Collections.Generic.LinkedListNode`1[System.Comparison`1[System.Object]]>
-;  V22 tmp16        [V22,T17] (  2,  4   )   ubyte  ->   x0         "Inline return value spill temp"
+;  V22 tmp16        [V22,T16] (  2,  4   )   ubyte  ->   x0         "Inline return value spill temp"
 ;  V23 tmp17        [V23,T01] (  5, 28   )     ref  ->   x0         class-hnd "Inlining Arg" <System.__Canon>
 ;* V24 tmp18        [V24    ] (  0,  0   )     ref  ->  zero-ref    single-def "V15.[000..008)"
-;  V25 tmp19        [V25,T19] (  2,  2   )     ref  ->   x2         single-def "V15.[008..016)"
+;  V25 tmp19        [V25,T20] (  2,  2   )     ref  ->   x2         single-def "V15.[008..016)"
 ;* V26 tmp20        [V26    ] (  0,  0   )     ref  ->  zero-ref    "V15.[016..024)"
-;  V27 tmp21        [V27,T21] (  2,  2   )     int  ->   x1         "V15.[024..028)"
+;  V27 tmp21        [V27,T22] (  2,  2   )     int  ->   x1         "V15.[024..028)"
 ;* V28 tmp22        [V28    ] (  0,  0   )     int  ->  zero-ref    "V15.[028..032)"
 ;* V29 tmp23        [V29    ] (  0,  0   )     ref  ->  zero-ref    single-def "V20.[000..008)"
-;  V30 tmp24        [V30,T20] (  2,  2   )     ref  ->   x2         single-def "V20.[008..016)"
+;  V30 tmp24        [V30,T21] (  2,  2   )     ref  ->   x2         single-def "V20.[008..016)"
 ;* V31 tmp25        [V31    ] (  0,  0   )     ref  ->  zero-ref    "V20.[016..024)"
-;  V32 tmp26        [V32,T22] (  2,  2   )     int  ->   x1         "V20.[024..028)"
+;  V32 tmp26        [V32,T23] (  2,  2   )     int  ->   x1         "V20.[024..028)"
 ;* V33 tmp27        [V33    ] (  0,  0   )     int  ->  zero-ref    "V20.[028..032)"
-;  V34 cse0         [V34,T10] (  4, 10   )    long  ->  x21         "CSE #01: aggressive"
-;  V35 cse1         [V35,T18] (  3,  6   )    long  ->  x21         "CSE #05: moderate"
-;  V36 cse2         [V36,T09] (  3, 12   )     ref  ->   x1         "CSE #02: aggressive"
+;  V34 cse0         [V34,T17] (  3,  6   )    long  ->  x21         "CSE #01: moderate"
+;  V35 cse1         [V35,T18] (  3,  6   )    long  ->  x21         "CSE #06: moderate"
+;  V36 cse2         [V36,T19] (  2,  4.25)    long  ->  x22         hoist "CSE #02: moderate"
+;  V37 cse3         [V37,T09] (  3, 12   )     ref  ->   x1         "CSE #03: aggressive"
 ;
-; Lcl frame size = 64
+; Lcl frame size = 72
 
 G_M50597_IG01:
-            stp     fp, lr, [sp, #-0x70]!
-            stp     x19, x20, [sp, #0x50]
-            stp     x21, x22, [sp, #0x60]
+            stp     fp, lr, [sp, #-0x80]!
+            stp     x19, x20, [sp, #0x58]
+            stp     x21, x22, [sp, #0x68]
+            str     x23, [sp, #0x78]
             mov     fp, sp
-            add     x9, fp, #16
+            add     x9, fp, #24
             movi    v16.16b, #0
             stp     q16, q16, [x9]
             stp     q16, q16, [x9, #0x20]
             mov     x19, x0
-						;; size=36 bbWeight=1 PerfScore 7.00
+						;; size=40 bbWeight=1 PerfScore 8.00
 G_M50597_IG02:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x20, x0
             movz    x1, #0xD1FFAB1E      // code for System.Data.SortExpressionBuilder`1[System.Numerics.Vector`1[float]]:.ctor():this
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
             ldr     x0, [x19, #0x08]
             ldr     w1, [x0, #0x1C]
             ldr     x2, [x0, #0x08]
-            stp     x0, x2, [fp, #0x30]	// [V02 loc1], [V02 loc1+0x08]
-            str     xzr, [fp, #0x40]	// [V02 loc1+0x10]
-            stp     w1, wzr, [fp, #0x48]	// [V02 loc1+0x18], [V02 loc1+0x1c]
-            add     x0, fp, #48	// [V02 loc1]
+            stp     x0, x2, [fp, #0x38]	// [V02 loc1], [V02 loc1+0x08]
+            str     xzr, [fp, #0x48]	// [V02 loc1+0x10]
+            stp     w1, wzr, [fp, #0x50]	// [V02 loc1+0x18], [V02 loc1+0x1c]
+            add     x0, fp, #56	// [V02 loc1]
             movz    x21, #0xD1FFAB1E
             movk    x21, #0xD1FFAB1E LSL #16
             movk    x21, #0xD1FFAB1E LSL #32
             mov     x1, x21
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            cbz     w0, G_M50597_IG09
+            cbz     w0, G_M50597_IG10
 						;; size=108 bbWeight=1 PerfScore 29.50
 G_M50597_IG03:
-            add     x0, x21, #0xD1FFAB1E
+            movz    x22, #0xD1FFAB1E
+            movk    x22, #0xD1FFAB1E LSL #16
+            movk    x22, #0xD1FFAB1E LSL #32
+						;; size=12 bbWeight=0.25 PerfScore 0.38
+G_M50597_IG04:
+            mov     x0, x22
             bl      CORINFO_HELP_NEWSFAST
-            mov     x22, x0
-            ldr     x1, [fp, #0x40]	// [V02 loc1+0x10]
-            add     x14, x22, #8
+            mov     x23, x0
+            ldr     x1, [fp, #0x48]	// [V02 loc1+0x10]
+            add     x14, x23, #8
             mov     x15, x1
             bl      CORINFO_HELP_ASSIGN_REF
             ldr     x0, [x19, #0x18]
             ldr     x0, [x0, #0x20]
-            cbnz    x0, G_M50597_IG05
+            cbnz    x0, G_M50597_IG06
 						;; size=40 bbWeight=4 PerfScore 52.00
-G_M50597_IG04:
-            cbnz    x1, G_M50597_IG07
-            b       G_M50597_IG06
-						;; size=8 bbWeight=2 PerfScore 4.00
 G_M50597_IG05:
+            cbnz    x1, G_M50597_IG08
+            b       G_M50597_IG07
+						;; size=8 bbWeight=2 PerfScore 4.00
+G_M50597_IG06:
             cmp     x0, x1
-            beq     G_M50597_IG06
+            beq     G_M50597_IG07
             ldr     x2, [x0]
             ldr     x2, [x2, #0x40]
             ldr     x2, [x2, #0x10]
             blr     x2
-            cbz     w0, G_M50597_IG07
+            cbz     w0, G_M50597_IG08
 						;; size=28 bbWeight=2 PerfScore 25.00
-G_M50597_IG06:
+G_M50597_IG07:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x1, x0
             ldr     x0, [x20, #0x08]
             add     x14, x1, #8
-            mov     x15, x22
+            mov     x15, x23
             bl      CORINFO_HELP_ASSIGN_REF
             movz    x2, #0xD1FFAB1E      // code for System.Data.SortExpressionBuilder`1+<>c__DisplayClass10_0`1[long,System.Numerics.Vector`1[float]]:<CloneCast>b__0(System.Numerics.Vector`1[float]):System.Object:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             str     x2, [x1, #0x18]
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1[System.__Canon]:AddLast(System.__Canon):System.Collections.Generic.LinkedListNode`1[System.__Canon]:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             ldr     wzr, [x0]
             blr     x2
             add     x14, x20, #24
             mov     x15, x0
             bl      CORINFO_HELP_ASSIGN_REF
-            b       G_M50597_IG08
+            b       G_M50597_IG09
 						;; size=92 bbWeight=2 PerfScore 44.00
-G_M50597_IG07:
+G_M50597_IG08:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x1, x0
             ldr     x0, [x20, #0x08]
             add     x14, x1, #8
-            mov     x15, x22
+            mov     x15, x23
             bl      CORINFO_HELP_ASSIGN_REF
             movz    x2, #0xD1FFAB1E      // code for System.Data.SortExpressionBuilder`1+<>c__DisplayClass10_0`1[long,System.Numerics.Vector`1[float]]:<CloneCast>b__1(System.Numerics.Vector`1[float]):System.Object:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             str     x2, [x1, #0x18]
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1[System.__Canon]:AddLast(System.__Canon):System.Collections.Generic.LinkedListNode`1[System.__Canon]:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             ldr     wzr, [x0]
             blr     x2
 						;; size=76 bbWeight=2 PerfScore 38.00
-G_M50597_IG08:
-            add     x0, fp, #48	// [V02 loc1]
+G_M50597_IG09:
+            add     x0, fp, #56	// [V02 loc1]
             mov     x1, x21
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            cbnz    w0, G_M50597_IG03
+            cbnz    w0, G_M50597_IG04
 						;; size=32 bbWeight=4 PerfScore 30.00
-G_M50597_IG09:
+G_M50597_IG10:
             ldr     x0, [x19, #0x10]
             ldr     w1, [x0, #0x1C]
             ldr     x2, [x0, #0x08]
-            stp     x0, x2, [fp, #0x10]	// [V04 loc3], [V04 loc3+0x08]
-            str     xzr, [fp, #0x20]	// [V04 loc3+0x10]
-            stp     w1, wzr, [fp, #0x28]	// [V04 loc3+0x18], [V04 loc3+0x1c]
-            add     x0, fp, #16	// [V04 loc3]
+            stp     x0, x2, [fp, #0x18]	// [V04 loc3], [V04 loc3+0x08]
+            str     xzr, [fp, #0x28]	// [V04 loc3+0x10]
+            stp     w1, wzr, [fp, #0x30]	// [V04 loc3+0x18], [V04 loc3+0x1c]
+            add     x0, fp, #24	// [V04 loc3]
             movz    x21, #0xD1FFAB1E
             movk    x21, #0xD1FFAB1E LSL #16
             movk    x21, #0xD1FFAB1E LSL #32
             mov     x1, x21
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            cbz     w0, G_M50597_IG16
+            cbz     w0, G_M50597_IG17
 						;; size=68 bbWeight=1 PerfScore 21.00
-G_M50597_IG10:
-            ldr     x22, [fp, #0x20]	// [V04 loc3+0x10]
+G_M50597_IG11:
+            ldr     x22, [fp, #0x28]	// [V04 loc3+0x10]
             ldr     x0, [x19, #0x20]
             ldr     x0, [x0, #0x20]
-            cbnz    x0, G_M50597_IG12
+            cbnz    x0, G_M50597_IG13
 						;; size=16 bbWeight=4 PerfScore 36.00
-G_M50597_IG11:
-            cbnz    x22, G_M50597_IG14
-            b       G_M50597_IG13
-						;; size=8 bbWeight=2 PerfScore 4.00
 G_M50597_IG12:
+            cbnz    x22, G_M50597_IG15
+            b       G_M50597_IG14
+						;; size=8 bbWeight=2 PerfScore 4.00
+G_M50597_IG13:
             cmp     x0, x22
-            beq     G_M50597_IG13
+            beq     G_M50597_IG14
             mov     x1, x22
             ldr     x2, [x0]
             ldr     x2, [x2, #0x40]
             ldr     x2, [x2, #0x10]
             blr     x2
-            cbz     w0, G_M50597_IG14
+            cbz     w0, G_M50597_IG15
 						;; size=32 bbWeight=2 PerfScore 26.00
-G_M50597_IG13:
+G_M50597_IG14:
             ldr     x0, [x20, #0x10]
             mov     x1, x22
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1[System.__Canon]:AddLast(System.__Canon):System.Collections.Generic.LinkedListNode`1[System.__Canon]:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             ldr     wzr, [x0]
             blr     x2
             add     x14, x20, #32
             mov     x15, x0
             bl      CORINFO_HELP_ASSIGN_REF
-            b       G_M50597_IG15
+            b       G_M50597_IG16
 						;; size=48 bbWeight=2 PerfScore 30.00
-G_M50597_IG14:
+G_M50597_IG15:
             ldr     x0, [x20, #0x10]
             mov     x1, x22
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1[System.__Canon]:AddLast(System.__Canon):System.Collections.Generic.LinkedListNode`1[System.__Canon]:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             ldr     wzr, [x0]
             blr     x2
 						;; size=32 bbWeight=2 PerfScore 24.00
-G_M50597_IG15:
-            add     x0, fp, #16	// [V04 loc3]
+G_M50597_IG16:
+            add     x0, fp, #24	// [V04 loc3]
             mov     x1, x21
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            cbnz    w0, G_M50597_IG10
+            cbnz    w0, G_M50597_IG11
 						;; size=32 bbWeight=4 PerfScore 30.00
-G_M50597_IG16:
+G_M50597_IG17:
             mov     x0, x20
 						;; size=4 bbWeight=1 PerfScore 0.50
-G_M50597_IG17:
-            ldp     x21, x22, [sp, #0x60]
-            ldp     x19, x20, [sp, #0x50]
-            ldp     fp, lr, [sp], #0x70
+G_M50597_IG18:
+            ldr     x23, [sp, #0x78]
+            ldp     x21, x22, [sp, #0x68]
+            ldp     x19, x20, [sp, #0x58]
+            ldp     fp, lr, [sp], #0x80
             ret     lr
-						;; size=16 bbWeight=1 PerfScore 4.00
+						;; size=20 bbWeight=1 PerfScore 6.00
 
-; Total bytes of code 676, prolog size 32, PerfScore 405.00, instruction count 169, allocated bytes for code 676 (MethodHash=2cab3a5a) for method System.Data.SortExpressionBuilder`1[long]:CloneCast[System.Numerics.Vector`1[float]]():System.Data.SortExpressionBuilder`1[System.Numerics.Vector`1[float]]:this (FullOpts)
+; Total bytes of code 696, prolog size 36, PerfScore 408.38, instruction count 174, allocated bytes for code 696 (MethodHash=2cab3a5a) for method System.Data.SortExpressionBuilder`1[long]:CloneCast[System.Numerics.Vector`1[float]]():System.Data.SortExpressionBuilder`1[System.Numerics.Vector`1[float]]:this (FullOpts)
20 (2.96 % of base) - System.Data.SortExpressionBuilder`1[long]:CloneCast[ubyte]():System.Data.SortExpressionBuilder`1[ubyte]:this
 ; Assembly listing for method System.Data.SortExpressionBuilder`1[long]:CloneCast[ubyte]():System.Data.SortExpressionBuilder`1[ubyte]:this (FullOpts)
 ; Emitting BLENDED_CODE for generic ARM64 - Unix
 ; FullOpts code
 ; optimized code
 ; fp based frame
 ; partially interruptible
 ; No PGO data
 ; 0 inlinees with PGO data; 12 single block inlinees; 4 inlinees without PGO data
 ; Final local variable assignments
 ;
 ;  V00 this         [V00,T06] (  6, 12   )     ref  ->  x19         this class-hnd single-def <System.Data.SortExpressionBuilder`1[long]>
 ;  V01 loc0         [V01,T05] (  8, 14   )     ref  ->  x20         class-hnd exact single-def <System.Data.SortExpressionBuilder`1[ubyte]>
-;  V02 loc1         [V02    ] (  8, 14   )  struct (32) [fp+0x30]  do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Collections.Generic.LinkedList`1+Enumerator[System.Func`2[long,System.Object]]>
-;  V03 loc2         [V03,T08] (  4, 12   )     ref  ->  x22         class-hnd exact <System.Data.SortExpressionBuilder`1+<>c__DisplayClass10_0`1[long,ubyte]>
-;  V04 loc3         [V04    ] (  8, 14   )  struct (32) [fp+0x10]  do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Collections.Generic.LinkedList`1+Enumerator[System.Comparison`1[System.Object]]>
+;  V02 loc1         [V02    ] (  8, 14   )  struct (32) [fp+0x38]  do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Collections.Generic.LinkedList`1+Enumerator[System.Func`2[long,System.Object]]>
+;  V03 loc2         [V03,T08] (  4, 12   )     ref  ->  x23         class-hnd exact <System.Data.SortExpressionBuilder`1+<>c__DisplayClass10_0`1[long,ubyte]>
+;  V04 loc3         [V04    ] (  8, 14   )  struct (32) [fp+0x18]  do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Collections.Generic.LinkedList`1+Enumerator[System.Comparison`1[System.Object]]>
 ;  V05 loc4         [V05,T07] (  6, 14   )     ref  ->  x22         class-hnd <System.Comparison`1[System.Object]>
 ;# V06 OutArgs      [V06    ] (  1,  1   )  struct ( 0) [sp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-;  V07 tmp1         [V07,T15] (  3,  6   )     ref  ->  x20         class-hnd exact single-def "NewObj constructor temp" <System.Data.SortExpressionBuilder`1[ubyte]>
+;  V07 tmp1         [V07,T14] (  3,  6   )     ref  ->  x20         class-hnd exact single-def "NewObj constructor temp" <System.Data.SortExpressionBuilder`1[ubyte]>
 ;* V08 tmp2         [V08    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "NewObj constructor temp" <System.Data.SortExpressionBuilder`1+<>c__DisplayClass10_0`1[long,ubyte]>
 ;  V09 tmp3         [V09,T02] (  4, 20   )     ref  ->   x1         class-hnd "impAppendStmt" <System.Func`2[long,System.Object]>
 ;  V10 tmp4         [V10,T03] (  4, 16   )     ref  ->   x1         class-hnd exact "NewObj constructor temp" <System.Func`2[ubyte,System.Object]>
-;  V11 tmp5         [V11,T13] (  2,  8   )     ref  ->   x0         class-hnd "impAppendStmt" <System.Collections.Generic.LinkedList`1[System.Func`2[ubyte,System.Object]]>
+;  V11 tmp5         [V11,T12] (  2,  8   )     ref  ->   x0         class-hnd "impAppendStmt" <System.Collections.Generic.LinkedList`1[System.Func`2[ubyte,System.Object]]>
 ;  V12 tmp6         [V12,T04] (  4, 16   )     ref  ->   x1         class-hnd exact "NewObj constructor temp" <System.Func`2[ubyte,System.Object]>
-;  V13 tmp7         [V13,T14] (  2,  8   )     ref  ->   x0         class-hnd "impAppendStmt" <System.Collections.Generic.LinkedList`1[System.Func`2[ubyte,System.Object]]>
-;  V14 tmp8         [V14,T11] (  4,  8   )     ref  ->   x0         class-hnd single-def "Inlining Arg" <System.Collections.Generic.LinkedList`1[System.Func`2[long,System.Object]]>
+;  V13 tmp7         [V13,T13] (  2,  8   )     ref  ->   x0         class-hnd "impAppendStmt" <System.Collections.Generic.LinkedList`1[System.Func`2[ubyte,System.Object]]>
+;  V14 tmp8         [V14,T10] (  4,  8   )     ref  ->   x0         class-hnd single-def "Inlining Arg" <System.Collections.Generic.LinkedList`1[System.Func`2[long,System.Object]]>
 ;* V15 tmp9         [V15    ] (  0,  0   )  struct (32) zero-ref    do-not-enreg[SF] ld-addr-op "NewObj constructor temp" <System.Collections.Generic.LinkedList`1+Enumerator[System.Func`2[long,System.Object]]>
 ;* V16 tmp10        [V16    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.Collections.Generic.LinkedListNode`1[System.Func`2[long,System.Object]]>
-;  V17 tmp11        [V17,T16] (  2,  4   )   ubyte  ->   x0         "Inline return value spill temp"
+;  V17 tmp11        [V17,T15] (  2,  4   )   ubyte  ->   x0         "Inline return value spill temp"
 ;  V18 tmp12        [V18,T00] (  5, 28   )     ref  ->   x0         class-hnd "Inlining Arg" <System.__Canon>
-;  V19 tmp13        [V19,T12] (  4,  8   )     ref  ->   x0         class-hnd single-def "Inlining Arg" <System.Collections.Generic.LinkedList`1[System.Comparison`1[System.Object]]>
+;  V19 tmp13        [V19,T11] (  4,  8   )     ref  ->   x0         class-hnd single-def "Inlining Arg" <System.Collections.Generic.LinkedList`1[System.Comparison`1[System.Object]]>
 ;* V20 tmp14        [V20    ] (  0,  0   )  struct (32) zero-ref    do-not-enreg[SF] ld-addr-op "NewObj constructor temp" <System.Collections.Generic.LinkedList`1+Enumerator[System.Comparison`1[System.Object]]>
 ;* V21 tmp15        [V21    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.Collections.Generic.LinkedListNode`1[System.Comparison`1[System.Object]]>
-;  V22 tmp16        [V22,T17] (  2,  4   )   ubyte  ->   x0         "Inline return value spill temp"
+;  V22 tmp16        [V22,T16] (  2,  4   )   ubyte  ->   x0         "Inline return value spill temp"
 ;  V23 tmp17        [V23,T01] (  5, 28   )     ref  ->   x0         class-hnd "Inlining Arg" <System.__Canon>
 ;* V24 tmp18        [V24    ] (  0,  0   )     ref  ->  zero-ref    single-def "V15.[000..008)"
-;  V25 tmp19        [V25,T19] (  2,  2   )     ref  ->   x2         single-def "V15.[008..016)"
+;  V25 tmp19        [V25,T20] (  2,  2   )     ref  ->   x2         single-def "V15.[008..016)"
 ;* V26 tmp20        [V26    ] (  0,  0   )     ref  ->  zero-ref    "V15.[016..024)"
-;  V27 tmp21        [V27,T21] (  2,  2   )     int  ->   x1         "V15.[024..028)"
+;  V27 tmp21        [V27,T22] (  2,  2   )     int  ->   x1         "V15.[024..028)"
 ;* V28 tmp22        [V28    ] (  0,  0   )     int  ->  zero-ref    "V15.[028..032)"
 ;* V29 tmp23        [V29    ] (  0,  0   )     ref  ->  zero-ref    single-def "V20.[000..008)"
-;  V30 tmp24        [V30,T20] (  2,  2   )     ref  ->   x2         single-def "V20.[008..016)"
+;  V30 tmp24        [V30,T21] (  2,  2   )     ref  ->   x2         single-def "V20.[008..016)"
 ;* V31 tmp25        [V31    ] (  0,  0   )     ref  ->  zero-ref    "V20.[016..024)"
-;  V32 tmp26        [V32,T22] (  2,  2   )     int  ->   x1         "V20.[024..028)"
+;  V32 tmp26        [V32,T23] (  2,  2   )     int  ->   x1         "V20.[024..028)"
 ;* V33 tmp27        [V33    ] (  0,  0   )     int  ->  zero-ref    "V20.[028..032)"
-;  V34 cse0         [V34,T10] (  4, 10   )    long  ->  x21         "CSE #01: aggressive"
-;  V35 cse1         [V35,T18] (  3,  6   )    long  ->  x21         "CSE #05: moderate"
-;  V36 cse2         [V36,T09] (  3, 12   )     ref  ->   x1         "CSE #02: aggressive"
+;  V34 cse0         [V34,T17] (  3,  6   )    long  ->  x21         "CSE #01: moderate"
+;  V35 cse1         [V35,T18] (  3,  6   )    long  ->  x21         "CSE #06: moderate"
+;  V36 cse2         [V36,T19] (  2,  4.25)    long  ->  x22         hoist "CSE #02: moderate"
+;  V37 cse3         [V37,T09] (  3, 12   )     ref  ->   x1         "CSE #03: aggressive"
 ;
-; Lcl frame size = 64
+; Lcl frame size = 72
 
 G_M21285_IG01:
-            stp     fp, lr, [sp, #-0x70]!
-            stp     x19, x20, [sp, #0x50]
-            stp     x21, x22, [sp, #0x60]
+            stp     fp, lr, [sp, #-0x80]!
+            stp     x19, x20, [sp, #0x58]
+            stp     x21, x22, [sp, #0x68]
+            str     x23, [sp, #0x78]
             mov     fp, sp
-            add     x9, fp, #16
+            add     x9, fp, #24
             movi    v16.16b, #0
             stp     q16, q16, [x9]
             stp     q16, q16, [x9, #0x20]
             mov     x19, x0
-						;; size=36 bbWeight=1 PerfScore 7.00
+						;; size=40 bbWeight=1 PerfScore 8.00
 G_M21285_IG02:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x20, x0
             movz    x1, #0xD1FFAB1E      // code for System.Data.SortExpressionBuilder`1[ubyte]:.ctor():this
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
             ldr     x0, [x19, #0x08]
             ldr     w1, [x0, #0x1C]
             ldr     x2, [x0, #0x08]
-            stp     x0, x2, [fp, #0x30]	// [V02 loc1], [V02 loc1+0x08]
-            str     xzr, [fp, #0x40]	// [V02 loc1+0x10]
-            stp     w1, wzr, [fp, #0x48]	// [V02 loc1+0x18], [V02 loc1+0x1c]
-            add     x0, fp, #48	// [V02 loc1]
+            stp     x0, x2, [fp, #0x38]	// [V02 loc1], [V02 loc1+0x08]
+            str     xzr, [fp, #0x48]	// [V02 loc1+0x10]
+            stp     w1, wzr, [fp, #0x50]	// [V02 loc1+0x18], [V02 loc1+0x1c]
+            add     x0, fp, #56	// [V02 loc1]
             movz    x21, #0xD1FFAB1E
             movk    x21, #0xD1FFAB1E LSL #16
             movk    x21, #0xD1FFAB1E LSL #32
             mov     x1, x21
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            cbz     w0, G_M21285_IG09
+            cbz     w0, G_M21285_IG10
 						;; size=108 bbWeight=1 PerfScore 29.50
 G_M21285_IG03:
-            add     x0, x21, #0xD1FFAB1E
+            movz    x22, #0xD1FFAB1E
+            movk    x22, #0xD1FFAB1E LSL #16
+            movk    x22, #0xD1FFAB1E LSL #32
+						;; size=12 bbWeight=0.25 PerfScore 0.38
+G_M21285_IG04:
+            mov     x0, x22
             bl      CORINFO_HELP_NEWSFAST
-            mov     x22, x0
-            ldr     x1, [fp, #0x40]	// [V02 loc1+0x10]
-            add     x14, x22, #8
+            mov     x23, x0
+            ldr     x1, [fp, #0x48]	// [V02 loc1+0x10]
+            add     x14, x23, #8
             mov     x15, x1
             bl      CORINFO_HELP_ASSIGN_REF
             ldr     x0, [x19, #0x18]
             ldr     x0, [x0, #0x20]
-            cbnz    x0, G_M21285_IG05
+            cbnz    x0, G_M21285_IG06
 						;; size=40 bbWeight=4 PerfScore 52.00
-G_M21285_IG04:
-            cbnz    x1, G_M21285_IG07
-            b       G_M21285_IG06
-						;; size=8 bbWeight=2 PerfScore 4.00
 G_M21285_IG05:
+            cbnz    x1, G_M21285_IG08
+            b       G_M21285_IG07
+						;; size=8 bbWeight=2 PerfScore 4.00
+G_M21285_IG06:
             cmp     x0, x1
-            beq     G_M21285_IG06
+            beq     G_M21285_IG07
             ldr     x2, [x0]
             ldr     x2, [x2, #0x40]
             ldr     x2, [x2, #0x10]
             blr     x2
-            cbz     w0, G_M21285_IG07
+            cbz     w0, G_M21285_IG08
 						;; size=28 bbWeight=2 PerfScore 25.00
-G_M21285_IG06:
+G_M21285_IG07:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x1, x0
             ldr     x0, [x20, #0x08]
             add     x14, x1, #8
-            mov     x15, x22
+            mov     x15, x23
             bl      CORINFO_HELP_ASSIGN_REF
             movz    x2, #0xD1FFAB1E      // code for System.Data.SortExpressionBuilder`1+<>c__DisplayClass10_0`1[long,ubyte]:<CloneCast>b__0(ubyte):System.Object:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             str     x2, [x1, #0x18]
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1[System.__Canon]:AddLast(System.__Canon):System.Collections.Generic.LinkedListNode`1[System.__Canon]:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             ldr     wzr, [x0]
             blr     x2
             add     x14, x20, #24
             mov     x15, x0
             bl      CORINFO_HELP_ASSIGN_REF
-            b       G_M21285_IG08
+            b       G_M21285_IG09
 						;; size=92 bbWeight=2 PerfScore 44.00
-G_M21285_IG07:
+G_M21285_IG08:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x1, x0
             ldr     x0, [x20, #0x08]
             add     x14, x1, #8
-            mov     x15, x22
+            mov     x15, x23
             bl      CORINFO_HELP_ASSIGN_REF
             movz    x2, #0xD1FFAB1E      // code for System.Data.SortExpressionBuilder`1+<>c__DisplayClass10_0`1[long,ubyte]:<CloneCast>b__1(ubyte):System.Object:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             str     x2, [x1, #0x18]
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1[System.__Canon]:AddLast(System.__Canon):System.Collections.Generic.LinkedListNode`1[System.__Canon]:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             ldr     wzr, [x0]
             blr     x2
 						;; size=76 bbWeight=2 PerfScore 38.00
-G_M21285_IG08:
-            add     x0, fp, #48	// [V02 loc1]
+G_M21285_IG09:
+            add     x0, fp, #56	// [V02 loc1]
             mov     x1, x21
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            cbnz    w0, G_M21285_IG03
+            cbnz    w0, G_M21285_IG04
 						;; size=32 bbWeight=4 PerfScore 30.00
-G_M21285_IG09:
+G_M21285_IG10:
             ldr     x0, [x19, #0x10]
             ldr     w1, [x0, #0x1C]
             ldr     x2, [x0, #0x08]
-            stp     x0, x2, [fp, #0x10]	// [V04 loc3], [V04 loc3+0x08]
-            str     xzr, [fp, #0x20]	// [V04 loc3+0x10]
-            stp     w1, wzr, [fp, #0x28]	// [V04 loc3+0x18], [V04 loc3+0x1c]
-            add     x0, fp, #16	// [V04 loc3]
+            stp     x0, x2, [fp, #0x18]	// [V04 loc3], [V04 loc3+0x08]
+            str     xzr, [fp, #0x28]	// [V04 loc3+0x10]
+            stp     w1, wzr, [fp, #0x30]	// [V04 loc3+0x18], [V04 loc3+0x1c]
+            add     x0, fp, #24	// [V04 loc3]
             movz    x21, #0xD1FFAB1E
             movk    x21, #0xD1FFAB1E LSL #16
             movk    x21, #0xD1FFAB1E LSL #32
             mov     x1, x21
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            cbz     w0, G_M21285_IG16
+            cbz     w0, G_M21285_IG17
 						;; size=68 bbWeight=1 PerfScore 21.00
-G_M21285_IG10:
-            ldr     x22, [fp, #0x20]	// [V04 loc3+0x10]
+G_M21285_IG11:
+            ldr     x22, [fp, #0x28]	// [V04 loc3+0x10]
             ldr     x0, [x19, #0x20]
             ldr     x0, [x0, #0x20]
-            cbnz    x0, G_M21285_IG12
+            cbnz    x0, G_M21285_IG13
 						;; size=16 bbWeight=4 PerfScore 36.00
-G_M21285_IG11:
-            cbnz    x22, G_M21285_IG14
-            b       G_M21285_IG13
-						;; size=8 bbWeight=2 PerfScore 4.00
 G_M21285_IG12:
+            cbnz    x22, G_M21285_IG15
+            b       G_M21285_IG14
+						;; size=8 bbWeight=2 PerfScore 4.00
+G_M21285_IG13:
             cmp     x0, x22
-            beq     G_M21285_IG13
+            beq     G_M21285_IG14
             mov     x1, x22
             ldr     x2, [x0]
             ldr     x2, [x2, #0x40]
             ldr     x2, [x2, #0x10]
             blr     x2
-            cbz     w0, G_M21285_IG14
+            cbz     w0, G_M21285_IG15
 						;; size=32 bbWeight=2 PerfScore 26.00
-G_M21285_IG13:
+G_M21285_IG14:
             ldr     x0, [x20, #0x10]
             mov     x1, x22
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1[System.__Canon]:AddLast(System.__Canon):System.Collections.Generic.LinkedListNode`1[System.__Canon]:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             ldr     wzr, [x0]
             blr     x2
             add     x14, x20, #32
             mov     x15, x0
             bl      CORINFO_HELP_ASSIGN_REF
-            b       G_M21285_IG15
+            b       G_M21285_IG16
 						;; size=48 bbWeight=2 PerfScore 30.00
-G_M21285_IG14:
+G_M21285_IG15:
             ldr     x0, [x20, #0x10]
             mov     x1, x22
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1[System.__Canon]:AddLast(System.__Canon):System.Collections.Generic.LinkedListNode`1[System.__Canon]:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             ldr     wzr, [x0]
             blr     x2
 						;; size=32 bbWeight=2 PerfScore 24.00
-G_M21285_IG15:
-            add     x0, fp, #16	// [V04 loc3]
+G_M21285_IG16:
+            add     x0, fp, #24	// [V04 loc3]
             mov     x1, x21
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            cbnz    w0, G_M21285_IG10
+            cbnz    w0, G_M21285_IG11
 						;; size=32 bbWeight=4 PerfScore 30.00
-G_M21285_IG16:
+G_M21285_IG17:
             mov     x0, x20
 						;; size=4 bbWeight=1 PerfScore 0.50
-G_M21285_IG17:
-            ldp     x21, x22, [sp, #0x60]
-            ldp     x19, x20, [sp, #0x50]
-            ldp     fp, lr, [sp], #0x70
+G_M21285_IG18:
+            ldr     x23, [sp, #0x78]
+            ldp     x21, x22, [sp, #0x68]
+            ldp     x19, x20, [sp, #0x58]
+            ldp     fp, lr, [sp], #0x80
             ret     lr
-						;; size=16 bbWeight=1 PerfScore 4.00
+						;; size=20 bbWeight=1 PerfScore 6.00
 
-; Total bytes of code 676, prolog size 32, PerfScore 405.00, instruction count 169, allocated bytes for code 676 (MethodHash=2aeaacda) for method System.Data.SortExpressionBuilder`1[long]:CloneCast[ubyte]():System.Data.SortExpressionBuilder`1[ubyte]:this (FullOpts)
+; Total bytes of code 696, prolog size 36, PerfScore 408.38, instruction count 174, allocated bytes for code 696 (MethodHash=2aeaacda) for method System.Data.SortExpressionBuilder`1[long]:CloneCast[ubyte]():System.Data.SortExpressionBuilder`1[ubyte]:this (FullOpts)
20 (2.96 % of base) - System.Data.SortExpressionBuilder`1[System.Nullable`1[int]]:CloneCast[double]():System.Data.SortExpressionBuilder`1[double]:this
 ; Assembly listing for method System.Data.SortExpressionBuilder`1[System.Nullable`1[int]]:CloneCast[double]():System.Data.SortExpressionBuilder`1[double]:this (FullOpts)
 ; Emitting BLENDED_CODE for generic ARM64 - Unix
 ; FullOpts code
 ; optimized code
 ; fp based frame
 ; partially interruptible
 ; No PGO data
 ; 0 inlinees with PGO data; 12 single block inlinees; 4 inlinees without PGO data
 ; Final local variable assignments
 ;
 ;  V00 this         [V00,T06] (  6, 12   )     ref  ->  x19         this class-hnd single-def <System.Data.SortExpressionBuilder`1[System.Nullable`1[int]]>
 ;  V01 loc0         [V01,T05] (  8, 14   )     ref  ->  x20         class-hnd exact single-def <System.Data.SortExpressionBuilder`1[double]>
-;  V02 loc1         [V02    ] (  8, 14   )  struct (32) [fp+0x30]  do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Collections.Generic.LinkedList`1+Enumerator[System.Func`2[System.Nullable`1[int],System.Object]]>
-;  V03 loc2         [V03,T08] (  4, 12   )     ref  ->  x22         class-hnd exact <System.Data.SortExpressionBuilder`1+<>c__DisplayClass10_0`1[System.Nullable`1[int],double]>
-;  V04 loc3         [V04    ] (  8, 14   )  struct (32) [fp+0x10]  do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Collections.Generic.LinkedList`1+Enumerator[System.Comparison`1[System.Object]]>
+;  V02 loc1         [V02    ] (  8, 14   )  struct (32) [fp+0x38]  do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Collections.Generic.LinkedList`1+Enumerator[System.Func`2[System.Nullable`1[int],System.Object]]>
+;  V03 loc2         [V03,T08] (  4, 12   )     ref  ->  x23         class-hnd exact <System.Data.SortExpressionBuilder`1+<>c__DisplayClass10_0`1[System.Nullable`1[int],double]>
+;  V04 loc3         [V04    ] (  8, 14   )  struct (32) [fp+0x18]  do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Collections.Generic.LinkedList`1+Enumerator[System.Comparison`1[System.Object]]>
 ;  V05 loc4         [V05,T07] (  6, 14   )     ref  ->  x22         class-hnd <System.Comparison`1[System.Object]>
 ;# V06 OutArgs      [V06    ] (  1,  1   )  struct ( 0) [sp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-;  V07 tmp1         [V07,T15] (  3,  6   )     ref  ->  x20         class-hnd exact single-def "NewObj constructor temp" <System.Data.SortExpressionBuilder`1[double]>
+;  V07 tmp1         [V07,T14] (  3,  6   )     ref  ->  x20         class-hnd exact single-def "NewObj constructor temp" <System.Data.SortExpressionBuilder`1[double]>
 ;* V08 tmp2         [V08    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "NewObj constructor temp" <System.Data.SortExpressionBuilder`1+<>c__DisplayClass10_0`1[System.Nullable`1[int],double]>
 ;  V09 tmp3         [V09,T02] (  4, 20   )     ref  ->   x1         class-hnd "impAppendStmt" <System.Func`2[System.Nullable`1[int],System.Object]>
 ;  V10 tmp4         [V10,T03] (  4, 16   )     ref  ->   x1         class-hnd exact "NewObj constructor temp" <System.Func`2[double,System.Object]>
-;  V11 tmp5         [V11,T13] (  2,  8   )     ref  ->   x0         class-hnd "impAppendStmt" <System.Collections.Generic.LinkedList`1[System.Func`2[double,System.Object]]>
+;  V11 tmp5         [V11,T12] (  2,  8   )     ref  ->   x0         class-hnd "impAppendStmt" <System.Collections.Generic.LinkedList`1[System.Func`2[double,System.Object]]>
 ;  V12 tmp6         [V12,T04] (  4, 16   )     ref  ->   x1         class-hnd exact "NewObj constructor temp" <System.Func`2[double,System.Object]>
-;  V13 tmp7         [V13,T14] (  2,  8   )     ref  ->   x0         class-hnd "impAppendStmt" <System.Collections.Generic.LinkedList`1[System.Func`2[double,System.Object]]>
-;  V14 tmp8         [V14,T11] (  4,  8   )     ref  ->   x0         class-hnd single-def "Inlining Arg" <System.Collections.Generic.LinkedList`1[System.Func`2[System.Nullable`1[int],System.Object]]>
+;  V13 tmp7         [V13,T13] (  2,  8   )     ref  ->   x0         class-hnd "impAppendStmt" <System.Collections.Generic.LinkedList`1[System.Func`2[double,System.Object]]>
+;  V14 tmp8         [V14,T10] (  4,  8   )     ref  ->   x0         class-hnd single-def "Inlining Arg" <System.Collections.Generic.LinkedList`1[System.Func`2[System.Nullable`1[int],System.Object]]>
 ;* V15 tmp9         [V15    ] (  0,  0   )  struct (32) zero-ref    do-not-enreg[SF] ld-addr-op "NewObj constructor temp" <System.Collections.Generic.LinkedList`1+Enumerator[System.Func`2[System.Nullable`1[int],System.Object]]>
 ;* V16 tmp10        [V16    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.Collections.Generic.LinkedListNode`1[System.Func`2[System.Nullable`1[int],System.Object]]>
-;  V17 tmp11        [V17,T16] (  2,  4   )   ubyte  ->   x0         "Inline return value spill temp"
+;  V17 tmp11        [V17,T15] (  2,  4   )   ubyte  ->   x0         "Inline return value spill temp"
 ;  V18 tmp12        [V18,T00] (  5, 28   )     ref  ->   x0         class-hnd "Inlining Arg" <System.__Canon>
-;  V19 tmp13        [V19,T12] (  4,  8   )     ref  ->   x0         class-hnd single-def "Inlining Arg" <System.Collections.Generic.LinkedList`1[System.Comparison`1[System.Object]]>
+;  V19 tmp13        [V19,T11] (  4,  8   )     ref  ->   x0         class-hnd single-def "Inlining Arg" <System.Collections.Generic.LinkedList`1[System.Comparison`1[System.Object]]>
 ;* V20 tmp14        [V20    ] (  0,  0   )  struct (32) zero-ref    do-not-enreg[SF] ld-addr-op "NewObj constructor temp" <System.Collections.Generic.LinkedList`1+Enumerator[System.Comparison`1[System.Object]]>
 ;* V21 tmp15        [V21    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.Collections.Generic.LinkedListNode`1[System.Comparison`1[System.Object]]>
-;  V22 tmp16        [V22,T17] (  2,  4   )   ubyte  ->   x0         "Inline return value spill temp"
+;  V22 tmp16        [V22,T16] (  2,  4   )   ubyte  ->   x0         "Inline return value spill temp"
 ;  V23 tmp17        [V23,T01] (  5, 28   )     ref  ->   x0         class-hnd "Inlining Arg" <System.__Canon>
 ;* V24 tmp18        [V24    ] (  0,  0   )     ref  ->  zero-ref    single-def "V15.[000..008)"
-;  V25 tmp19        [V25,T19] (  2,  2   )     ref  ->   x2         single-def "V15.[008..016)"
+;  V25 tmp19        [V25,T20] (  2,  2   )     ref  ->   x2         single-def "V15.[008..016)"
 ;* V26 tmp20        [V26    ] (  0,  0   )     ref  ->  zero-ref    "V15.[016..024)"
-;  V27 tmp21        [V27,T21] (  2,  2   )     int  ->   x1         "V15.[024..028)"
+;  V27 tmp21        [V27,T22] (  2,  2   )     int  ->   x1         "V15.[024..028)"
 ;* V28 tmp22        [V28    ] (  0,  0   )     int  ->  zero-ref    "V15.[028..032)"
 ;* V29 tmp23        [V29    ] (  0,  0   )     ref  ->  zero-ref    single-def "V20.[000..008)"
-;  V30 tmp24        [V30,T20] (  2,  2   )     ref  ->   x2         single-def "V20.[008..016)"
+;  V30 tmp24        [V30,T21] (  2,  2   )     ref  ->   x2         single-def "V20.[008..016)"
 ;* V31 tmp25        [V31    ] (  0,  0   )     ref  ->  zero-ref    "V20.[016..024)"
-;  V32 tmp26        [V32,T22] (  2,  2   )     int  ->   x1         "V20.[024..028)"
+;  V32 tmp26        [V32,T23] (  2,  2   )     int  ->   x1         "V20.[024..028)"
 ;* V33 tmp27        [V33    ] (  0,  0   )     int  ->  zero-ref    "V20.[028..032)"
-;  V34 cse0         [V34,T10] (  4, 10   )    long  ->  x21         "CSE #01: aggressive"
-;  V35 cse1         [V35,T18] (  3,  6   )    long  ->  x21         "CSE #05: moderate"
-;  V36 cse2         [V36,T09] (  3, 12   )     ref  ->   x1         "CSE #02: aggressive"
+;  V34 cse0         [V34,T17] (  3,  6   )    long  ->  x21         "CSE #01: moderate"
+;  V35 cse1         [V35,T18] (  3,  6   )    long  ->  x21         "CSE #06: moderate"
+;  V36 cse2         [V36,T19] (  2,  4.25)    long  ->  x22         hoist "CSE #02: moderate"
+;  V37 cse3         [V37,T09] (  3, 12   )     ref  ->   x1         "CSE #03: aggressive"
 ;
-; Lcl frame size = 64
+; Lcl frame size = 72
 
 G_M2865_IG01:
-            stp     fp, lr, [sp, #-0x70]!
-            stp     x19, x20, [sp, #0x50]
-            stp     x21, x22, [sp, #0x60]
+            stp     fp, lr, [sp, #-0x80]!
+            stp     x19, x20, [sp, #0x58]
+            stp     x21, x22, [sp, #0x68]
+            str     x23, [sp, #0x78]
             mov     fp, sp
-            add     x9, fp, #16
+            add     x9, fp, #24
             movi    v16.16b, #0
             stp     q16, q16, [x9]
             stp     q16, q16, [x9, #0x20]
             mov     x19, x0
-						;; size=36 bbWeight=1 PerfScore 7.00
+						;; size=40 bbWeight=1 PerfScore 8.00
 G_M2865_IG02:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x20, x0
             movz    x1, #0xD1FFAB1E      // code for System.Data.SortExpressionBuilder`1[double]:.ctor():this
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
             ldr     x0, [x19, #0x08]
             ldr     w1, [x0, #0x1C]
             ldr     x2, [x0, #0x08]
-            stp     x0, x2, [fp, #0x30]	// [V02 loc1], [V02 loc1+0x08]
-            str     xzr, [fp, #0x40]	// [V02 loc1+0x10]
-            stp     w1, wzr, [fp, #0x48]	// [V02 loc1+0x18], [V02 loc1+0x1c]
-            add     x0, fp, #48	// [V02 loc1]
+            stp     x0, x2, [fp, #0x38]	// [V02 loc1], [V02 loc1+0x08]
+            str     xzr, [fp, #0x48]	// [V02 loc1+0x10]
+            stp     w1, wzr, [fp, #0x50]	// [V02 loc1+0x18], [V02 loc1+0x1c]
+            add     x0, fp, #56	// [V02 loc1]
             movz    x21, #0xD1FFAB1E
             movk    x21, #0xD1FFAB1E LSL #16
             movk    x21, #0xD1FFAB1E LSL #32
             mov     x1, x21
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            cbz     w0, G_M2865_IG09
+            cbz     w0, G_M2865_IG10
 						;; size=108 bbWeight=1 PerfScore 29.50
 G_M2865_IG03:
-            add     x0, x21, #0xD1FFAB1E
+            movz    x22, #0xD1FFAB1E
+            movk    x22, #0xD1FFAB1E LSL #16
+            movk    x22, #0xD1FFAB1E LSL #32
+						;; size=12 bbWeight=0.25 PerfScore 0.38
+G_M2865_IG04:
+            mov     x0, x22
             bl      CORINFO_HELP_NEWSFAST
-            mov     x22, x0
-            ldr     x1, [fp, #0x40]	// [V02 loc1+0x10]
-            add     x14, x22, #8
+            mov     x23, x0
+            ldr     x1, [fp, #0x48]	// [V02 loc1+0x10]
+            add     x14, x23, #8
             mov     x15, x1
             bl      CORINFO_HELP_ASSIGN_REF
             ldr     x0, [x19, #0x18]
             ldr     x0, [x0, #0x20]
-            cbnz    x0, G_M2865_IG05
+            cbnz    x0, G_M2865_IG06
 						;; size=40 bbWeight=4 PerfScore 52.00
-G_M2865_IG04:
-            cbnz    x1, G_M2865_IG07
-            b       G_M2865_IG06
-						;; size=8 bbWeight=2 PerfScore 4.00
 G_M2865_IG05:
+            cbnz    x1, G_M2865_IG08
+            b       G_M2865_IG07
+						;; size=8 bbWeight=2 PerfScore 4.00
+G_M2865_IG06:
             cmp     x0, x1
-            beq     G_M2865_IG06
+            beq     G_M2865_IG07
             ldr     x2, [x0]
             ldr     x2, [x2, #0x40]
             ldr     x2, [x2, #0x10]
             blr     x2
-            cbz     w0, G_M2865_IG07
+            cbz     w0, G_M2865_IG08
 						;; size=28 bbWeight=2 PerfScore 25.00
-G_M2865_IG06:
+G_M2865_IG07:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x1, x0
             ldr     x0, [x20, #0x08]
             add     x14, x1, #8
-            mov     x15, x22
+            mov     x15, x23
             bl      CORINFO_HELP_ASSIGN_REF
             movz    x2, #0xD1FFAB1E      // code for System.Data.SortExpressionBuilder`1+<>c__DisplayClass10_0`1[System.Nullable`1[int],double]:<CloneCast>b__0(double):System.Object:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             str     x2, [x1, #0x18]
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1[System.__Canon]:AddLast(System.__Canon):System.Collections.Generic.LinkedListNode`1[System.__Canon]:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             ldr     wzr, [x0]
             blr     x2
             add     x14, x20, #24
             mov     x15, x0
             bl      CORINFO_HELP_ASSIGN_REF
-            b       G_M2865_IG08
+            b       G_M2865_IG09
 						;; size=92 bbWeight=2 PerfScore 44.00
-G_M2865_IG07:
+G_M2865_IG08:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x1, x0
             ldr     x0, [x20, #0x08]
             add     x14, x1, #8
-            mov     x15, x22
+            mov     x15, x23
             bl      CORINFO_HELP_ASSIGN_REF
             movz    x2, #0xD1FFAB1E      // code for System.Data.SortExpressionBuilder`1+<>c__DisplayClass10_0`1[System.Nullable`1[int],double]:<CloneCast>b__1(double):System.Object:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             str     x2, [x1, #0x18]
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1[System.__Canon]:AddLast(System.__Canon):System.Collections.Generic.LinkedListNode`1[System.__Canon]:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             ldr     wzr, [x0]
             blr     x2
 						;; size=76 bbWeight=2 PerfScore 38.00
-G_M2865_IG08:
-            add     x0, fp, #48	// [V02 loc1]
+G_M2865_IG09:
+            add     x0, fp, #56	// [V02 loc1]
             mov     x1, x21
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            cbnz    w0, G_M2865_IG03
+            cbnz    w0, G_M2865_IG04
 						;; size=32 bbWeight=4 PerfScore 30.00
-G_M2865_IG09:
+G_M2865_IG10:
             ldr     x0, [x19, #0x10]
             ldr     w1, [x0, #0x1C]
             ldr     x2, [x0, #0x08]
-            stp     x0, x2, [fp, #0x10]	// [V04 loc3], [V04 loc3+0x08]
-            str     xzr, [fp, #0x20]	// [V04 loc3+0x10]
-            stp     w1, wzr, [fp, #0x28]	// [V04 loc3+0x18], [V04 loc3+0x1c]
-            add     x0, fp, #16	// [V04 loc3]
+            stp     x0, x2, [fp, #0x18]	// [V04 loc3], [V04 loc3+0x08]
+            str     xzr, [fp, #0x28]	// [V04 loc3+0x10]
+            stp     w1, wzr, [fp, #0x30]	// [V04 loc3+0x18], [V04 loc3+0x1c]
+            add     x0, fp, #24	// [V04 loc3]
             movz    x21, #0xD1FFAB1E
             movk    x21, #0xD1FFAB1E LSL #16
             movk    x21, #0xD1FFAB1E LSL #32
             mov     x1, x21
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            cbz     w0, G_M2865_IG16
+            cbz     w0, G_M2865_IG17
 						;; size=68 bbWeight=1 PerfScore 21.00
-G_M2865_IG10:
-            ldr     x22, [fp, #0x20]	// [V04 loc3+0x10]
+G_M2865_IG11:
+            ldr     x22, [fp, #0x28]	// [V04 loc3+0x10]
             ldr     x0, [x19, #0x20]
             ldr     x0, [x0, #0x20]
-            cbnz    x0, G_M2865_IG12
+            cbnz    x0, G_M2865_IG13
 						;; size=16 bbWeight=4 PerfScore 36.00
-G_M2865_IG11:
-            cbnz    x22, G_M2865_IG14
-            b       G_M2865_IG13
-						;; size=8 bbWeight=2 PerfScore 4.00
 G_M2865_IG12:
+            cbnz    x22, G_M2865_IG15
+            b       G_M2865_IG14
+						;; size=8 bbWeight=2 PerfScore 4.00
+G_M2865_IG13:
             cmp     x0, x22
-            beq     G_M2865_IG13
+            beq     G_M2865_IG14
             mov     x1, x22
             ldr     x2, [x0]
             ldr     x2, [x2, #0x40]
             ldr     x2, [x2, #0x10]
             blr     x2
-            cbz     w0, G_M2865_IG14
+            cbz     w0, G_M2865_IG15
 						;; size=32 bbWeight=2 PerfScore 26.00
-G_M2865_IG13:
+G_M2865_IG14:
             ldr     x0, [x20, #0x10]
             mov     x1, x22
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1[System.__Canon]:AddLast(System.__Canon):System.Collections.Generic.LinkedListNode`1[System.__Canon]:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             ldr     wzr, [x0]
             blr     x2
             add     x14, x20, #32
             mov     x15, x0
             bl      CORINFO_HELP_ASSIGN_REF
-            b       G_M2865_IG15
+            b       G_M2865_IG16
 						;; size=48 bbWeight=2 PerfScore 30.00
-G_M2865_IG14:
+G_M2865_IG15:
             ldr     x0, [x20, #0x10]
             mov     x1, x22
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1[System.__Canon]:AddLast(System.__Canon):System.Collections.Generic.LinkedListNode`1[System.__Canon]:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             ldr     wzr, [x0]
             blr     x2
 						;; size=32 bbWeight=2 PerfScore 24.00
-G_M2865_IG15:
-            add     x0, fp, #16	// [V04 loc3]
+G_M2865_IG16:
+            add     x0, fp, #24	// [V04 loc3]
             mov     x1, x21
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            cbnz    w0, G_M2865_IG10
+            cbnz    w0, G_M2865_IG11
 						;; size=32 bbWeight=4 PerfScore 30.00
-G_M2865_IG16:
+G_M2865_IG17:
             mov     x0, x20
 						;; size=4 bbWeight=1 PerfScore 0.50
-G_M2865_IG17:
-            ldp     x21, x22, [sp, #0x60]
-            ldp     x19, x20, [sp, #0x50]
-            ldp     fp, lr, [sp], #0x70
+G_M2865_IG18:
+            ldr     x23, [sp, #0x78]
+            ldp     x21, x22, [sp, #0x68]
+            ldp     x19, x20, [sp, #0x58]
+            ldp     fp, lr, [sp], #0x80
             ret     lr
-						;; size=16 bbWeight=1 PerfScore 4.00
+						;; size=20 bbWeight=1 PerfScore 6.00
 
-; Total bytes of code 676, prolog size 32, PerfScore 405.00, instruction count 169, allocated bytes for code 676 (MethodHash=7feef4ce) for method System.Data.SortExpressionBuilder`1[System.Nullable`1[int]]:CloneCast[double]():System.Data.SortExpressionBuilder`1[double]:this (FullOpts)
+; Total bytes of code 696, prolog size 36, PerfScore 408.38, instruction count 174, allocated bytes for code 696 (MethodHash=7feef4ce) for method System.Data.SortExpressionBuilder`1[System.Nullable`1[int]]:CloneCast[double]():System.Data.SortExpressionBuilder`1[double]:this (FullOpts)
20 (2.96 % of base) - System.Data.SortExpressionBuilder`1[System.Nullable`1[int]]:CloneCast[int]():System.Data.SortExpressionBuilder`1[int]:this
 ; Assembly listing for method System.Data.SortExpressionBuilder`1[System.Nullable`1[int]]:CloneCast[int]():System.Data.SortExpressionBuilder`1[int]:this (FullOpts)
 ; Emitting BLENDED_CODE for generic ARM64 - Unix
 ; FullOpts code
 ; optimized code
 ; fp based frame
 ; partially interruptible
 ; No PGO data
 ; 0 inlinees with PGO data; 12 single block inlinees; 4 inlinees without PGO data
 ; Final local variable assignments
 ;
 ;  V00 this         [V00,T06] (  6, 12   )     ref  ->  x19         this class-hnd single-def <System.Data.SortExpressionBuilder`1[System.Nullable`1[int]]>
 ;  V01 loc0         [V01,T05] (  8, 14   )     ref  ->  x20         class-hnd exact single-def <System.Data.SortExpressionBuilder`1[int]>
-;  V02 loc1         [V02    ] (  8, 14   )  struct (32) [fp+0x30]  do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Collections.Generic.LinkedList`1+Enumerator[System.Func`2[System.Nullable`1[int],System.Object]]>
-;  V03 loc2         [V03,T08] (  4, 12   )     ref  ->  x22         class-hnd exact <System.Data.SortExpressionBuilder`1+<>c__DisplayClass10_0`1[System.Nullable`1[int],int]>
-;  V04 loc3         [V04    ] (  8, 14   )  struct (32) [fp+0x10]  do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Collections.Generic.LinkedList`1+Enumerator[System.Comparison`1[System.Object]]>
+;  V02 loc1         [V02    ] (  8, 14   )  struct (32) [fp+0x38]  do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Collections.Generic.LinkedList`1+Enumerator[System.Func`2[System.Nullable`1[int],System.Object]]>
+;  V03 loc2         [V03,T08] (  4, 12   )     ref  ->  x23         class-hnd exact <System.Data.SortExpressionBuilder`1+<>c__DisplayClass10_0`1[System.Nullable`1[int],int]>
+;  V04 loc3         [V04    ] (  8, 14   )  struct (32) [fp+0x18]  do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Collections.Generic.LinkedList`1+Enumerator[System.Comparison`1[System.Object]]>
 ;  V05 loc4         [V05,T07] (  6, 14   )     ref  ->  x22         class-hnd <System.Comparison`1[System.Object]>
 ;# V06 OutArgs      [V06    ] (  1,  1   )  struct ( 0) [sp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-;  V07 tmp1         [V07,T15] (  3,  6   )     ref  ->  x20         class-hnd exact single-def "NewObj constructor temp" <System.Data.SortExpressionBuilder`1[int]>
+;  V07 tmp1         [V07,T14] (  3,  6   )     ref  ->  x20         class-hnd exact single-def "NewObj constructor temp" <System.Data.SortExpressionBuilder`1[int]>
 ;* V08 tmp2         [V08    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "NewObj constructor temp" <System.Data.SortExpressionBuilder`1+<>c__DisplayClass10_0`1[System.Nullable`1[int],int]>
 ;  V09 tmp3         [V09,T02] (  4, 20   )     ref  ->   x1         class-hnd "impAppendStmt" <System.Func`2[System.Nullable`1[int],System.Object]>
 ;  V10 tmp4         [V10,T03] (  4, 16   )     ref  ->   x1         class-hnd exact "NewObj constructor temp" <System.Func`2[int,System.Object]>
-;  V11 tmp5         [V11,T13] (  2,  8   )     ref  ->   x0         class-hnd "impAppendStmt" <System.Collections.Generic.LinkedList`1[System.Func`2[int,System.Object]]>
+;  V11 tmp5         [V11,T12] (  2,  8   )     ref  ->   x0         class-hnd "impAppendStmt" <System.Collections.Generic.LinkedList`1[System.Func`2[int,System.Object]]>
 ;  V12 tmp6         [V12,T04] (  4, 16   )     ref  ->   x1         class-hnd exact "NewObj constructor temp" <System.Func`2[int,System.Object]>
-;  V13 tmp7         [V13,T14] (  2,  8   )     ref  ->   x0         class-hnd "impAppendStmt" <System.Collections.Generic.LinkedList`1[System.Func`2[int,System.Object]]>
-;  V14 tmp8         [V14,T11] (  4,  8   )     ref  ->   x0         class-hnd single-def "Inlining Arg" <System.Collections.Generic.LinkedList`1[System.Func`2[System.Nullable`1[int],System.Object]]>
+;  V13 tmp7         [V13,T13] (  2,  8   )     ref  ->   x0         class-hnd "impAppendStmt" <System.Collections.Generic.LinkedList`1[System.Func`2[int,System.Object]]>
+;  V14 tmp8         [V14,T10] (  4,  8   )     ref  ->   x0         class-hnd single-def "Inlining Arg" <System.Collections.Generic.LinkedList`1[System.Func`2[System.Nullable`1[int],System.Object]]>
 ;* V15 tmp9         [V15    ] (  0,  0   )  struct (32) zero-ref    do-not-enreg[SF] ld-addr-op "NewObj constructor temp" <System.Collections.Generic.LinkedList`1+Enumerator[System.Func`2[System.Nullable`1[int],System.Object]]>
 ;* V16 tmp10        [V16    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.Collections.Generic.LinkedListNode`1[System.Func`2[System.Nullable`1[int],System.Object]]>
-;  V17 tmp11        [V17,T16] (  2,  4   )   ubyte  ->   x0         "Inline return value spill temp"
+;  V17 tmp11        [V17,T15] (  2,  4   )   ubyte  ->   x0         "Inline return value spill temp"
 ;  V18 tmp12        [V18,T00] (  5, 28   )     ref  ->   x0         class-hnd "Inlining Arg" <System.__Canon>
-;  V19 tmp13        [V19,T12] (  4,  8   )     ref  ->   x0         class-hnd single-def "Inlining Arg" <System.Collections.Generic.LinkedList`1[System.Comparison`1[System.Object]]>
+;  V19 tmp13        [V19,T11] (  4,  8   )     ref  ->   x0         class-hnd single-def "Inlining Arg" <System.Collections.Generic.LinkedList`1[System.Comparison`1[System.Object]]>
 ;* V20 tmp14        [V20    ] (  0,  0   )  struct (32) zero-ref    do-not-enreg[SF] ld-addr-op "NewObj constructor temp" <System.Collections.Generic.LinkedList`1+Enumerator[System.Comparison`1[System.Object]]>
 ;* V21 tmp15        [V21    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.Collections.Generic.LinkedListNode`1[System.Comparison`1[System.Object]]>
-;  V22 tmp16        [V22,T17] (  2,  4   )   ubyte  ->   x0         "Inline return value spill temp"
+;  V22 tmp16        [V22,T16] (  2,  4   )   ubyte  ->   x0         "Inline return value spill temp"
 ;  V23 tmp17        [V23,T01] (  5, 28   )     ref  ->   x0         class-hnd "Inlining Arg" <System.__Canon>
 ;* V24 tmp18        [V24    ] (  0,  0   )     ref  ->  zero-ref    single-def "V15.[000..008)"
-;  V25 tmp19        [V25,T19] (  2,  2   )     ref  ->   x2         single-def "V15.[008..016)"
+;  V25 tmp19        [V25,T20] (  2,  2   )     ref  ->   x2         single-def "V15.[008..016)"
 ;* V26 tmp20        [V26    ] (  0,  0   )     ref  ->  zero-ref    "V15.[016..024)"
-;  V27 tmp21        [V27,T21] (  2,  2   )     int  ->   x1         "V15.[024..028)"
+;  V27 tmp21        [V27,T22] (  2,  2   )     int  ->   x1         "V15.[024..028)"
 ;* V28 tmp22        [V28    ] (  0,  0   )     int  ->  zero-ref    "V15.[028..032)"
 ;* V29 tmp23        [V29    ] (  0,  0   )     ref  ->  zero-ref    single-def "V20.[000..008)"
-;  V30 tmp24        [V30,T20] (  2,  2   )     ref  ->   x2         single-def "V20.[008..016)"
+;  V30 tmp24        [V30,T21] (  2,  2   )     ref  ->   x2         single-def "V20.[008..016)"
 ;* V31 tmp25        [V31    ] (  0,  0   )     ref  ->  zero-ref    "V20.[016..024)"
-;  V32 tmp26        [V32,T22] (  2,  2   )     int  ->   x1         "V20.[024..028)"
+;  V32 tmp26        [V32,T23] (  2,  2   )     int  ->   x1         "V20.[024..028)"
 ;* V33 tmp27        [V33    ] (  0,  0   )     int  ->  zero-ref    "V20.[028..032)"
-;  V34 cse0         [V34,T10] (  4, 10   )    long  ->  x21         "CSE #01: aggressive"
-;  V35 cse1         [V35,T18] (  3,  6   )    long  ->  x21         "CSE #05: moderate"
-;  V36 cse2         [V36,T09] (  3, 12   )     ref  ->   x1         "CSE #02: aggressive"
+;  V34 cse0         [V34,T17] (  3,  6   )    long  ->  x21         "CSE #01: moderate"
+;  V35 cse1         [V35,T18] (  3,  6   )    long  ->  x21         "CSE #06: moderate"
+;  V36 cse2         [V36,T19] (  2,  4.25)    long  ->  x22         hoist "CSE #02: moderate"
+;  V37 cse3         [V37,T09] (  3, 12   )     ref  ->   x1         "CSE #03: aggressive"
 ;
-; Lcl frame size = 64
+; Lcl frame size = 72
 
 G_M23313_IG01:
-            stp     fp, lr, [sp, #-0x70]!
-            stp     x19, x20, [sp, #0x50]
-            stp     x21, x22, [sp, #0x60]
+            stp     fp, lr, [sp, #-0x80]!
+            stp     x19, x20, [sp, #0x58]
+            stp     x21, x22, [sp, #0x68]
+            str     x23, [sp, #0x78]
             mov     fp, sp
-            add     x9, fp, #16
+            add     x9, fp, #24
             movi    v16.16b, #0
             stp     q16, q16, [x9]
             stp     q16, q16, [x9, #0x20]
             mov     x19, x0
-						;; size=36 bbWeight=1 PerfScore 7.00
+						;; size=40 bbWeight=1 PerfScore 8.00
 G_M23313_IG02:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x20, x0
             movz    x1, #0xD1FFAB1E      // code for System.Data.SortExpressionBuilder`1[int]:.ctor():this
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
             ldr     x0, [x19, #0x08]
             ldr     w1, [x0, #0x1C]
             ldr     x2, [x0, #0x08]
-            stp     x0, x2, [fp, #0x30]	// [V02 loc1], [V02 loc1+0x08]
-            str     xzr, [fp, #0x40]	// [V02 loc1+0x10]
-            stp     w1, wzr, [fp, #0x48]	// [V02 loc1+0x18], [V02 loc1+0x1c]
-            add     x0, fp, #48	// [V02 loc1]
+            stp     x0, x2, [fp, #0x38]	// [V02 loc1], [V02 loc1+0x08]
+            str     xzr, [fp, #0x48]	// [V02 loc1+0x10]
+            stp     w1, wzr, [fp, #0x50]	// [V02 loc1+0x18], [V02 loc1+0x1c]
+            add     x0, fp, #56	// [V02 loc1]
             movz    x21, #0xD1FFAB1E
             movk    x21, #0xD1FFAB1E LSL #16
             movk    x21, #0xD1FFAB1E LSL #32
             mov     x1, x21
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            cbz     w0, G_M23313_IG09
+            cbz     w0, G_M23313_IG10
 						;; size=108 bbWeight=1 PerfScore 29.50
 G_M23313_IG03:
-            add     x0, x21, #0xD1FFAB1E
+            movz    x22, #0xD1FFAB1E
+            movk    x22, #0xD1FFAB1E LSL #16
+            movk    x22, #0xD1FFAB1E LSL #32
+						;; size=12 bbWeight=0.25 PerfScore 0.38
+G_M23313_IG04:
+            mov     x0, x22
             bl      CORINFO_HELP_NEWSFAST
-            mov     x22, x0
-            ldr     x1, [fp, #0x40]	// [V02 loc1+0x10]
-            add     x14, x22, #8
+            mov     x23, x0
+            ldr     x1, [fp, #0x48]	// [V02 loc1+0x10]
+            add     x14, x23, #8
             mov     x15, x1
             bl      CORINFO_HELP_ASSIGN_REF
             ldr     x0, [x19, #0x18]
             ldr     x0, [x0, #0x20]
-            cbnz    x0, G_M23313_IG05
+            cbnz    x0, G_M23313_IG06
 						;; size=40 bbWeight=4 PerfScore 52.00
-G_M23313_IG04:
-            cbnz    x1, G_M23313_IG07
-            b       G_M23313_IG06
-						;; size=8 bbWeight=2 PerfScore 4.00
 G_M23313_IG05:
+            cbnz    x1, G_M23313_IG08
+            b       G_M23313_IG07
+						;; size=8 bbWeight=2 PerfScore 4.00
+G_M23313_IG06:
             cmp     x0, x1
-            beq     G_M23313_IG06
+            beq     G_M23313_IG07
             ldr     x2, [x0]
             ldr     x2, [x2, #0x40]
             ldr     x2, [x2, #0x10]
             blr     x2
-            cbz     w0, G_M23313_IG07
+            cbz     w0, G_M23313_IG08
 						;; size=28 bbWeight=2 PerfScore 25.00
-G_M23313_IG06:
+G_M23313_IG07:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x1, x0
             ldr     x0, [x20, #0x08]
             add     x14, x1, #8
-            mov     x15, x22
+            mov     x15, x23
             bl      CORINFO_HELP_ASSIGN_REF
             movz    x2, #0xD1FFAB1E      // code for System.Data.SortExpressionBuilder`1+<>c__DisplayClass10_0`1[System.Nullable`1[int],int]:<CloneCast>b__0(int):System.Object:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             str     x2, [x1, #0x18]
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1[System.__Canon]:AddLast(System.__Canon):System.Collections.Generic.LinkedListNode`1[System.__Canon]:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             ldr     wzr, [x0]
             blr     x2
             add     x14, x20, #24
             mov     x15, x0
             bl      CORINFO_HELP_ASSIGN_REF
-            b       G_M23313_IG08
+            b       G_M23313_IG09
 						;; size=92 bbWeight=2 PerfScore 44.00
-G_M23313_IG07:
+G_M23313_IG08:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x1, x0
             ldr     x0, [x20, #0x08]
             add     x14, x1, #8
-            mov     x15, x22
+            mov     x15, x23
             bl      CORINFO_HELP_ASSIGN_REF
             movz    x2, #0xD1FFAB1E      // code for System.Data.SortExpressionBuilder`1+<>c__DisplayClass10_0`1[System.Nullable`1[int],int]:<CloneCast>b__1(int):System.Object:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             str     x2, [x1, #0x18]
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1[System.__Canon]:AddLast(System.__Canon):System.Collections.Generic.LinkedListNode`1[System.__Canon]:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             ldr     wzr, [x0]
             blr     x2
 						;; size=76 bbWeight=2 PerfScore 38.00
-G_M23313_IG08:
-            add     x0, fp, #48	// [V02 loc1]
+G_M23313_IG09:
+            add     x0, fp, #56	// [V02 loc1]
             mov     x1, x21
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            cbnz    w0, G_M23313_IG03
+            cbnz    w0, G_M23313_IG04
 						;; size=32 bbWeight=4 PerfScore 30.00
-G_M23313_IG09:
+G_M23313_IG10:
             ldr     x0, [x19, #0x10]
             ldr     w1, [x0, #0x1C]
             ldr     x2, [x0, #0x08]
-            stp     x0, x2, [fp, #0x10]	// [V04 loc3], [V04 loc3+0x08]
-            str     xzr, [fp, #0x20]	// [V04 loc3+0x10]
-            stp     w1, wzr, [fp, #0x28]	// [V04 loc3+0x18], [V04 loc3+0x1c]
-            add     x0, fp, #16	// [V04 loc3]
+            stp     x0, x2, [fp, #0x18]	// [V04 loc3], [V04 loc3+0x08]
+            str     xzr, [fp, #0x28]	// [V04 loc3+0x10]
+            stp     w1, wzr, [fp, #0x30]	// [V04 loc3+0x18], [V04 loc3+0x1c]
+            add     x0, fp, #24	// [V04 loc3]
             movz    x21, #0xD1FFAB1E
             movk    x21, #0xD1FFAB1E LSL #16
             movk    x21, #0xD1FFAB1E LSL #32
             mov     x1, x21
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            cbz     w0, G_M23313_IG16
+            cbz     w0, G_M23313_IG17
 						;; size=68 bbWeight=1 PerfScore 21.00
-G_M23313_IG10:
-            ldr     x22, [fp, #0x20]	// [V04 loc3+0x10]
+G_M23313_IG11:
+            ldr     x22, [fp, #0x28]	// [V04 loc3+0x10]
             ldr     x0, [x19, #0x20]
             ldr     x0, [x0, #0x20]
-            cbnz    x0, G_M23313_IG12
+            cbnz    x0, G_M23313_IG13
 						;; size=16 bbWeight=4 PerfScore 36.00
-G_M23313_IG11:
-            cbnz    x22, G_M23313_IG14
-            b       G_M23313_IG13
-						;; size=8 bbWeight=2 PerfScore 4.00
 G_M23313_IG12:
+            cbnz    x22, G_M23313_IG15
+            b       G_M23313_IG14
+						;; size=8 bbWeight=2 PerfScore 4.00
+G_M23313_IG13:
             cmp     x0, x22
-            beq     G_M23313_IG13
+            beq     G_M23313_IG14
             mov     x1, x22
             ldr     x2, [x0]
             ldr     x2, [x2, #0x40]
             ldr     x2, [x2, #0x10]
             blr     x2
-            cbz     w0, G_M23313_IG14
+            cbz     w0, G_M23313_IG15
 						;; size=32 bbWeight=2 PerfScore 26.00
-G_M23313_IG13:
+G_M23313_IG14:
             ldr     x0, [x20, #0x10]
             mov     x1, x22
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1[System.__Canon]:AddLast(System.__Canon):System.Collections.Generic.LinkedListNode`1[System.__Canon]:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             ldr     wzr, [x0]
             blr     x2
             add     x14, x20, #32
             mov     x15, x0
             bl      CORINFO_HELP_ASSIGN_REF
-            b       G_M23313_IG15
+            b       G_M23313_IG16
 						;; size=48 bbWeight=2 PerfScore 30.00
-G_M23313_IG14:
+G_M23313_IG15:
             ldr     x0, [x20, #0x10]
             mov     x1, x22
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1[System.__Canon]:AddLast(System.__Canon):System.Collections.Generic.LinkedListNode`1[System.__Canon]:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             ldr     wzr, [x0]
             blr     x2
 						;; size=32 bbWeight=2 PerfScore 24.00
-G_M23313_IG15:
-            add     x0, fp, #16	// [V04 loc3]
+G_M23313_IG16:
+            add     x0, fp, #24	// [V04 loc3]
             mov     x1, x21
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            cbnz    w0, G_M23313_IG10
+            cbnz    w0, G_M23313_IG11
 						;; size=32 bbWeight=4 PerfScore 30.00
-G_M23313_IG16:
+G_M23313_IG17:
             mov     x0, x20
 						;; size=4 bbWeight=1 PerfScore 0.50
-G_M23313_IG17:
-            ldp     x21, x22, [sp, #0x60]
-            ldp     x19, x20, [sp, #0x50]
-            ldp     fp, lr, [sp], #0x70
+G_M23313_IG18:
+            ldr     x23, [sp, #0x78]
+            ldp     x21, x22, [sp, #0x68]
+            ldp     x19, x20, [sp, #0x58]
+            ldp     fp, lr, [sp], #0x80
             ret     lr
-						;; size=16 bbWeight=1 PerfScore 4.00
+						;; size=20 bbWeight=1 PerfScore 6.00
 
-; Total bytes of code 676, prolog size 32, PerfScore 405.00, instruction count 169, allocated bytes for code 676 (MethodHash=aebea4ee) for method System.Data.SortExpressionBuilder`1[System.Nullable`1[int]]:CloneCast[int]():System.Data.SortExpressionBuilder`1[int]:this (FullOpts)
+; Total bytes of code 696, prolog size 36, PerfScore 408.38, instruction count 174, allocated bytes for code 696 (MethodHash=aebea4ee) for method System.Data.SortExpressionBuilder`1[System.Nullable`1[int]]:CloneCast[int]():System.Data.SortExpressionBuilder`1[int]:this (FullOpts)
20 (2.96 % of base) - System.Data.SortExpressionBuilder`1[System.Nullable`1[int]]:CloneCast[long]():System.Data.SortExpressionBuilder`1[long]:this
 ; Assembly listing for method System.Data.SortExpressionBuilder`1[System.Nullable`1[int]]:CloneCast[long]():System.Data.SortExpressionBuilder`1[long]:this (FullOpts)
 ; Emitting BLENDED_CODE for generic ARM64 - Unix
 ; FullOpts code
 ; optimized code
 ; fp based frame
 ; partially interruptible
 ; No PGO data
 ; 0 inlinees with PGO data; 12 single block inlinees; 4 inlinees without PGO data
 ; Final local variable assignments
 ;
 ;  V00 this         [V00,T06] (  6, 12   )     ref  ->  x19         this class-hnd single-def <System.Data.SortExpressionBuilder`1[System.Nullable`1[int]]>
 ;  V01 loc0         [V01,T05] (  8, 14   )     ref  ->  x20         class-hnd exact single-def <System.Data.SortExpressionBuilder`1[long]>
-;  V02 loc1         [V02    ] (  8, 14   )  struct (32) [fp+0x30]  do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Collections.Generic.LinkedList`1+Enumerator[System.Func`2[System.Nullable`1[int],System.Object]]>
-;  V03 loc2         [V03,T08] (  4, 12   )     ref  ->  x22         class-hnd exact <System.Data.SortExpressionBuilder`1+<>c__DisplayClass10_0`1[System.Nullable`1[int],long]>
-;  V04 loc3         [V04    ] (  8, 14   )  struct (32) [fp+0x10]  do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Collections.Generic.LinkedList`1+Enumerator[System.Comparison`1[System.Object]]>
+;  V02 loc1         [V02    ] (  8, 14   )  struct (32) [fp+0x38]  do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Collections.Generic.LinkedList`1+Enumerator[System.Func`2[System.Nullable`1[int],System.Object]]>
+;  V03 loc2         [V03,T08] (  4, 12   )     ref  ->  x23         class-hnd exact <System.Data.SortExpressionBuilder`1+<>c__DisplayClass10_0`1[System.Nullable`1[int],long]>
+;  V04 loc3         [V04    ] (  8, 14   )  struct (32) [fp+0x18]  do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Collections.Generic.LinkedList`1+Enumerator[System.Comparison`1[System.Object]]>
 ;  V05 loc4         [V05,T07] (  6, 14   )     ref  ->  x22         class-hnd <System.Comparison`1[System.Object]>
 ;# V06 OutArgs      [V06    ] (  1,  1   )  struct ( 0) [sp+0x00]  do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-;  V07 tmp1         [V07,T15] (  3,  6   )     ref  ->  x20         class-hnd exact single-def "NewObj constructor temp" <System.Data.SortExpressionBuilder`1[long]>
+;  V07 tmp1         [V07,T14] (  3,  6   )     ref  ->  x20         class-hnd exact single-def "NewObj constructor temp" <System.Data.SortExpressionBuilder`1[long]>
 ;* V08 tmp2         [V08    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "NewObj constructor temp" <System.Data.SortExpressionBuilder`1+<>c__DisplayClass10_0`1[System.Nullable`1[int],long]>
 ;  V09 tmp3         [V09,T02] (  4, 20   )     ref  ->   x1         class-hnd "impAppendStmt" <System.Func`2[System.Nullable`1[int],System.Object]>
 ;  V10 tmp4         [V10,T03] (  4, 16   )     ref  ->   x1         class-hnd exact "NewObj constructor temp" <System.Func`2[long,System.Object]>
-;  V11 tmp5         [V11,T13] (  2,  8   )     ref  ->   x0         class-hnd "impAppendStmt" <System.Collections.Generic.LinkedList`1[System.Func`2[long,System.Object]]>
+;  V11 tmp5         [V11,T12] (  2,  8   )     ref  ->   x0         class-hnd "impAppendStmt" <System.Collections.Generic.LinkedList`1[System.Func`2[long,System.Object]]>
 ;  V12 tmp6         [V12,T04] (  4, 16   )     ref  ->   x1         class-hnd exact "NewObj constructor temp" <System.Func`2[long,System.Object]>
-;  V13 tmp7         [V13,T14] (  2,  8   )     ref  ->   x0         class-hnd "impAppendStmt" <System.Collections.Generic.LinkedList`1[System.Func`2[long,System.Object]]>
-;  V14 tmp8         [V14,T11] (  4,  8   )     ref  ->   x0         class-hnd single-def "Inlining Arg" <System.Collections.Generic.LinkedList`1[System.Func`2[System.Nullable`1[int],System.Object]]>
+;  V13 tmp7         [V13,T13] (  2,  8   )     ref  ->   x0         class-hnd "impAppendStmt" <System.Collections.Generic.LinkedList`1[System.Func`2[long,System.Object]]>
+;  V14 tmp8         [V14,T10] (  4,  8   )     ref  ->   x0         class-hnd single-def "Inlining Arg" <System.Collections.Generic.LinkedList`1[System.Func`2[System.Nullable`1[int],System.Object]]>
 ;* V15 tmp9         [V15    ] (  0,  0   )  struct (32) zero-ref    do-not-enreg[SF] ld-addr-op "NewObj constructor temp" <System.Collections.Generic.LinkedList`1+Enumerator[System.Func`2[System.Nullable`1[int],System.Object]]>
 ;* V16 tmp10        [V16    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.Collections.Generic.LinkedListNode`1[System.Func`2[System.Nullable`1[int],System.Object]]>
-;  V17 tmp11        [V17,T16] (  2,  4   )   ubyte  ->   x0         "Inline return value spill temp"
+;  V17 tmp11        [V17,T15] (  2,  4   )   ubyte  ->   x0         "Inline return value spill temp"
 ;  V18 tmp12        [V18,T00] (  5, 28   )     ref  ->   x0         class-hnd "Inlining Arg" <System.__Canon>
-;  V19 tmp13        [V19,T12] (  4,  8   )     ref  ->   x0         class-hnd single-def "Inlining Arg" <System.Collections.Generic.LinkedList`1[System.Comparison`1[System.Object]]>
+;  V19 tmp13        [V19,T11] (  4,  8   )     ref  ->   x0         class-hnd single-def "Inlining Arg" <System.Collections.Generic.LinkedList`1[System.Comparison`1[System.Object]]>
 ;* V20 tmp14        [V20    ] (  0,  0   )  struct (32) zero-ref    do-not-enreg[SF] ld-addr-op "NewObj constructor temp" <System.Collections.Generic.LinkedList`1+Enumerator[System.Comparison`1[System.Object]]>
 ;* V21 tmp15        [V21    ] (  0,  0   )     ref  ->  zero-ref    class-hnd exact "Inlining Arg" <System.Collections.Generic.LinkedListNode`1[System.Comparison`1[System.Object]]>
-;  V22 tmp16        [V22,T17] (  2,  4   )   ubyte  ->   x0         "Inline return value spill temp"
+;  V22 tmp16        [V22,T16] (  2,  4   )   ubyte  ->   x0         "Inline return value spill temp"
 ;  V23 tmp17        [V23,T01] (  5, 28   )     ref  ->   x0         class-hnd "Inlining Arg" <System.__Canon>
 ;* V24 tmp18        [V24    ] (  0,  0   )     ref  ->  zero-ref    single-def "V15.[000..008)"
-;  V25 tmp19        [V25,T19] (  2,  2   )     ref  ->   x2         single-def "V15.[008..016)"
+;  V25 tmp19        [V25,T20] (  2,  2   )     ref  ->   x2         single-def "V15.[008..016)"
 ;* V26 tmp20        [V26    ] (  0,  0   )     ref  ->  zero-ref    "V15.[016..024)"
-;  V27 tmp21        [V27,T21] (  2,  2   )     int  ->   x1         "V15.[024..028)"
+;  V27 tmp21        [V27,T22] (  2,  2   )     int  ->   x1         "V15.[024..028)"
 ;* V28 tmp22        [V28    ] (  0,  0   )     int  ->  zero-ref    "V15.[028..032)"
 ;* V29 tmp23        [V29    ] (  0,  0   )     ref  ->  zero-ref    single-def "V20.[000..008)"
-;  V30 tmp24        [V30,T20] (  2,  2   )     ref  ->   x2         single-def "V20.[008..016)"
+;  V30 tmp24        [V30,T21] (  2,  2   )     ref  ->   x2         single-def "V20.[008..016)"
 ;* V31 tmp25        [V31    ] (  0,  0   )     ref  ->  zero-ref    "V20.[016..024)"
-;  V32 tmp26        [V32,T22] (  2,  2   )     int  ->   x1         "V20.[024..028)"
+;  V32 tmp26        [V32,T23] (  2,  2   )     int  ->   x1         "V20.[024..028)"
 ;* V33 tmp27        [V33    ] (  0,  0   )     int  ->  zero-ref    "V20.[028..032)"
-;  V34 cse0         [V34,T10] (  4, 10   )    long  ->  x21         "CSE #01: aggressive"
-;  V35 cse1         [V35,T18] (  3,  6   )    long  ->  x21         "CSE #05: moderate"
-;  V36 cse2         [V36,T09] (  3, 12   )     ref  ->   x1         "CSE #02: aggressive"
+;  V34 cse0         [V34,T17] (  3,  6   )    long  ->  x21         "CSE #01: moderate"
+;  V35 cse1         [V35,T18] (  3,  6   )    long  ->  x21         "CSE #06: moderate"
+;  V36 cse2         [V36,T19] (  2,  4.25)    long  ->  x22         hoist "CSE #02: moderate"
+;  V37 cse3         [V37,T09] (  3, 12   )     ref  ->   x1         "CSE #03: aggressive"
 ;
-; Lcl frame size = 64
+; Lcl frame size = 72
 
 G_M2097_IG01:
-            stp     fp, lr, [sp, #-0x70]!
-            stp     x19, x20, [sp, #0x50]
-            stp     x21, x22, [sp, #0x60]
+            stp     fp, lr, [sp, #-0x80]!
+            stp     x19, x20, [sp, #0x58]
+            stp     x21, x22, [sp, #0x68]
+            str     x23, [sp, #0x78]
             mov     fp, sp
-            add     x9, fp, #16
+            add     x9, fp, #24
             movi    v16.16b, #0
             stp     q16, q16, [x9]
             stp     q16, q16, [x9, #0x20]
             mov     x19, x0
-						;; size=36 bbWeight=1 PerfScore 7.00
+						;; size=40 bbWeight=1 PerfScore 8.00
 G_M2097_IG02:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x20, x0
             movz    x1, #0xD1FFAB1E      // code for System.Data.SortExpressionBuilder`1[long]:.ctor():this
             movk    x1, #0xD1FFAB1E LSL #16
             movk    x1, #0xD1FFAB1E LSL #32
             ldr     x1, [x1]
             blr     x1
             ldr     x0, [x19, #0x08]
             ldr     w1, [x0, #0x1C]
             ldr     x2, [x0, #0x08]
-            stp     x0, x2, [fp, #0x30]	// [V02 loc1], [V02 loc1+0x08]
-            str     xzr, [fp, #0x40]	// [V02 loc1+0x10]
-            stp     w1, wzr, [fp, #0x48]	// [V02 loc1+0x18], [V02 loc1+0x1c]
-            add     x0, fp, #48	// [V02 loc1]
+            stp     x0, x2, [fp, #0x38]	// [V02 loc1], [V02 loc1+0x08]
+            str     xzr, [fp, #0x48]	// [V02 loc1+0x10]
+            stp     w1, wzr, [fp, #0x50]	// [V02 loc1+0x18], [V02 loc1+0x1c]
+            add     x0, fp, #56	// [V02 loc1]
             movz    x21, #0xD1FFAB1E
             movk    x21, #0xD1FFAB1E LSL #16
             movk    x21, #0xD1FFAB1E LSL #32
             mov     x1, x21
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            cbz     w0, G_M2097_IG09
+            cbz     w0, G_M2097_IG10
 						;; size=108 bbWeight=1 PerfScore 29.50
 G_M2097_IG03:
-            add     x0, x21, #0xD1FFAB1E
+            movz    x22, #0xD1FFAB1E
+            movk    x22, #0xD1FFAB1E LSL #16
+            movk    x22, #0xD1FFAB1E LSL #32
+						;; size=12 bbWeight=0.25 PerfScore 0.38
+G_M2097_IG04:
+            mov     x0, x22
             bl      CORINFO_HELP_NEWSFAST
-            mov     x22, x0
-            ldr     x1, [fp, #0x40]	// [V02 loc1+0x10]
-            add     x14, x22, #8
+            mov     x23, x0
+            ldr     x1, [fp, #0x48]	// [V02 loc1+0x10]
+            add     x14, x23, #8
             mov     x15, x1
             bl      CORINFO_HELP_ASSIGN_REF
             ldr     x0, [x19, #0x18]
             ldr     x0, [x0, #0x20]
-            cbnz    x0, G_M2097_IG05
+            cbnz    x0, G_M2097_IG06
 						;; size=40 bbWeight=4 PerfScore 52.00
-G_M2097_IG04:
-            cbnz    x1, G_M2097_IG07
-            b       G_M2097_IG06
-						;; size=8 bbWeight=2 PerfScore 4.00
 G_M2097_IG05:
+            cbnz    x1, G_M2097_IG08
+            b       G_M2097_IG07
+						;; size=8 bbWeight=2 PerfScore 4.00
+G_M2097_IG06:
             cmp     x0, x1
-            beq     G_M2097_IG06
+            beq     G_M2097_IG07
             ldr     x2, [x0]
             ldr     x2, [x2, #0x40]
             ldr     x2, [x2, #0x10]
             blr     x2
-            cbz     w0, G_M2097_IG07
+            cbz     w0, G_M2097_IG08
 						;; size=28 bbWeight=2 PerfScore 25.00
-G_M2097_IG06:
+G_M2097_IG07:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x1, x0
             ldr     x0, [x20, #0x08]
             add     x14, x1, #8
-            mov     x15, x22
+            mov     x15, x23
             bl      CORINFO_HELP_ASSIGN_REF
             movz    x2, #0xD1FFAB1E      // code for System.Data.SortExpressionBuilder`1+<>c__DisplayClass10_0`1[System.Nullable`1[int],long]:<CloneCast>b__0(long):System.Object:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             str     x2, [x1, #0x18]
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1[System.__Canon]:AddLast(System.__Canon):System.Collections.Generic.LinkedListNode`1[System.__Canon]:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             ldr     wzr, [x0]
             blr     x2
             add     x14, x20, #24
             mov     x15, x0
             bl      CORINFO_HELP_ASSIGN_REF
-            b       G_M2097_IG08
+            b       G_M2097_IG09
 						;; size=92 bbWeight=2 PerfScore 44.00
-G_M2097_IG07:
+G_M2097_IG08:
             movz    x0, #0xD1FFAB1E
             movk    x0, #0xD1FFAB1E LSL #16
             movk    x0, #0xD1FFAB1E LSL #32
             bl      CORINFO_HELP_NEWSFAST
             mov     x1, x0
             ldr     x0, [x20, #0x08]
             add     x14, x1, #8
-            mov     x15, x22
+            mov     x15, x23
             bl      CORINFO_HELP_ASSIGN_REF
             movz    x2, #0xD1FFAB1E      // code for System.Data.SortExpressionBuilder`1+<>c__DisplayClass10_0`1[System.Nullable`1[int],long]:<CloneCast>b__1(long):System.Object:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             str     x2, [x1, #0x18]
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1[System.__Canon]:AddLast(System.__Canon):System.Collections.Generic.LinkedListNode`1[System.__Canon]:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             ldr     wzr, [x0]
             blr     x2
 						;; size=76 bbWeight=2 PerfScore 38.00
-G_M2097_IG08:
-            add     x0, fp, #48	// [V02 loc1]
+G_M2097_IG09:
+            add     x0, fp, #56	// [V02 loc1]
             mov     x1, x21
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            cbnz    w0, G_M2097_IG03
+            cbnz    w0, G_M2097_IG04
 						;; size=32 bbWeight=4 PerfScore 30.00
-G_M2097_IG09:
+G_M2097_IG10:
             ldr     x0, [x19, #0x10]
             ldr     w1, [x0, #0x1C]
             ldr     x2, [x0, #0x08]
-            stp     x0, x2, [fp, #0x10]	// [V04 loc3], [V04 loc3+0x08]
-            str     xzr, [fp, #0x20]	// [V04 loc3+0x10]
-            stp     w1, wzr, [fp, #0x28]	// [V04 loc3+0x18], [V04 loc3+0x1c]
-            add     x0, fp, #16	// [V04 loc3]
+            stp     x0, x2, [fp, #0x18]	// [V04 loc3], [V04 loc3+0x08]
+            str     xzr, [fp, #0x28]	// [V04 loc3+0x10]
+            stp     w1, wzr, [fp, #0x30]	// [V04 loc3+0x18], [V04 loc3+0x1c]
+            add     x0, fp, #24	// [V04 loc3]
             movz    x21, #0xD1FFAB1E
             movk    x21, #0xD1FFAB1E LSL #16
             movk    x21, #0xD1FFAB1E LSL #32
             mov     x1, x21
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            cbz     w0, G_M2097_IG16
+            cbz     w0, G_M2097_IG17
 						;; size=68 bbWeight=1 PerfScore 21.00
-G_M2097_IG10:
-            ldr     x22, [fp, #0x20]	// [V04 loc3+0x10]
+G_M2097_IG11:
+            ldr     x22, [fp, #0x28]	// [V04 loc3+0x10]
             ldr     x0, [x19, #0x20]
             ldr     x0, [x0, #0x20]
-            cbnz    x0, G_M2097_IG12
+            cbnz    x0, G_M2097_IG13
 						;; size=16 bbWeight=4 PerfScore 36.00
-G_M2097_IG11:
-            cbnz    x22, G_M2097_IG14
-            b       G_M2097_IG13
-						;; size=8 bbWeight=2 PerfScore 4.00
 G_M2097_IG12:
+            cbnz    x22, G_M2097_IG15
+            b       G_M2097_IG14
+						;; size=8 bbWeight=2 PerfScore 4.00
+G_M2097_IG13:
             cmp     x0, x22
-            beq     G_M2097_IG13
+            beq     G_M2097_IG14
             mov     x1, x22
             ldr     x2, [x0]
             ldr     x2, [x2, #0x40]
             ldr     x2, [x2, #0x10]
             blr     x2
-            cbz     w0, G_M2097_IG14
+            cbz     w0, G_M2097_IG15
 						;; size=32 bbWeight=2 PerfScore 26.00
-G_M2097_IG13:
+G_M2097_IG14:
             ldr     x0, [x20, #0x10]
             mov     x1, x22
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1[System.__Canon]:AddLast(System.__Canon):System.Collections.Generic.LinkedListNode`1[System.__Canon]:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             ldr     wzr, [x0]
             blr     x2
             add     x14, x20, #32
             mov     x15, x0
             bl      CORINFO_HELP_ASSIGN_REF
-            b       G_M2097_IG15
+            b       G_M2097_IG16
 						;; size=48 bbWeight=2 PerfScore 30.00
-G_M2097_IG14:
+G_M2097_IG15:
             ldr     x0, [x20, #0x10]
             mov     x1, x22
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1[System.__Canon]:AddLast(System.__Canon):System.Collections.Generic.LinkedListNode`1[System.__Canon]:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             ldr     wzr, [x0]
             blr     x2
 						;; size=32 bbWeight=2 PerfScore 24.00
-G_M2097_IG15:
-            add     x0, fp, #16	// [V04 loc3]
+G_M2097_IG16:
+            add     x0, fp, #24	// [V04 loc3]
             mov     x1, x21
             movz    x2, #0xD1FFAB1E      // code for System.Collections.Generic.LinkedList`1+Enumerator[System.__Canon]:MoveNext():ubyte:this
             movk    x2, #0xD1FFAB1E LSL #16
             movk    x2, #0xD1FFAB1E LSL #32
             ldr     x2, [x2]
             blr     x2
-            cbnz    w0, G_M2097_IG10
+            cbnz    w0, G_M2097_IG11
 						;; size=32 bbWeight=4 PerfScore 30.00
-G_M2097_IG16:
+G_M2097_IG17:
             mov     x0, x20
 						;; size=4 bbWeight=1 PerfScore 0.50
-G_M2097_IG17:
-            ldp     x21, x22, [sp, #0x60]
-            ldp     x19, x20, [sp, #0x50]
-            ldp     fp, lr, [sp], #0x70
+G_M2097_IG18:
+            ldr     x23, [sp, #0x78]
+            ldp     x21, x22, [sp, #0x68]
+            ldp     x19, x20, [sp, #0x58]
+            ldp     fp, lr, [sp], #0x80
             ret     lr
-						;; size=16 bbWeight=1 PerfScore 4.00
+						;; size=20 bbWeight=1 PerfScore 6.00
 
-; Total bytes of code 676, prolog size 32, PerfScore 405.00, instruction count 169, allocated bytes for code 676 (MethodHash=b964f7ce) for method System.Data.SortExpressionBuilder`1[System.Nullable`1[int]]:CloneCast[long]():System.Data.SortExpressionBuilder`1[long]:this (FullOpts)
+; Total bytes of code 696, prolog size 36, PerfScore 408.38, instruction count 174, allocated bytes for code 696 (MethodHash=b964f7ce) for method System.Data.SortExpressionBuilder`1[System.Nullable`1[int]]:CloneCast[long]():System.Data.SortExpressionBuilder`1[long]:this (FullOpts)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment