66 (3.922% of base) - System.Text.CompositeFormat:TryParseLiterals(System.ReadOnlySpan`1[ushort],System.Collections.Generic.List`1[System.ValueTuple`4[System.String,int,int,System.String]],byref,byref):ubyte
; Assembly listing for method System.Text.CompositeFormat:TryParseLiterals(System.ReadOnlySpan`1[ushort],System.Collections.Generic.List`1[System.ValueTuple`4[System.String,int,int,System.String]],byref,byref):ubyte (FullOpts)
; Emitting BLENDED_CODE for X64 with AVX - Unix
; FullOpts code
; optimized code
; rbp based frame
; fully interruptible
; No PGO data
-; 0 inlinees with PGO data; 26 single block inlinees; 31 inlinees without PGO data
+; 0 inlinees with PGO data; 29 single block inlinees; 33 inlinees without PGO data
; Final local variable assignments
;
;* V00 arg0 [V00 ] ( 0, 0 ) struct (16) zero-ref multireg-arg ld-addr-op single-def <System.ReadOnlySpan`1[ushort]>
; V01 arg1 [V01,T04] ( 20, 49 ) ref -> r14 class-hnd single-def <System.Collections.Generic.List`1[System.ValueTuple`4[System.String,int,int,System.String]]>
-; V02 arg2 [V02,T42] ( 5, 4.75) byref -> r13 single-def
-; V03 arg3 [V03,T43] ( 5, 4.75) byref -> r12 single-def
-; V04 loc0 [V04 ] ( 29, 66 ) struct (32) [rbp-0x48] do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Text.ValueStringBuilder>
+; V02 arg2 [V02,T49] ( 5, 4.75) byref -> r13 single-def
+; V03 arg3 [V03,T50] ( 5, 4.75) byref -> r12 single-def
+; V04 loc0 [V04 ] ( 33, 82 ) struct (32) [rbp-0x48] do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Text.ValueStringBuilder>
; V05 loc1 [V05,T00] ( 57,463.75) int -> [rbp-0x4C] ld-addr-op
; V06 loc2 [V06,T01] ( 32,268 ) ushort -> [rbp-0x50] ld-addr-op
;* V07 loc3 [V07 ] ( 0, 0 ) struct (16) zero-ref <System.Span`1[ushort]>
; V08 loc4 [V08,T10] ( 8, 32 ) int -> [rbp-0x54]
-; V09 loc5 [V09,T39] ( 3, 10 ) ref -> rsi class-hnd <System.String>
-; V10 loc6 [V10,T06] ( 5, 44 ) int -> [rbp-0x58]
+; V09 loc5 [V09,T38] ( 3, 10 ) ref -> rsi class-hnd <System.String>
+; V10 loc6 [V10,T07] ( 5, 44 ) int -> [rbp-0x58]
;* V11 loc7 [V11 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op <System.ReadOnlySpan`1[ushort]>
;* V12 loc8 [V12 ] ( 0, 0 ) int -> zero-ref
-; V13 loc9 [V13,T37] ( 3, 12 ) ushort -> rcx
-; V14 loc10 [V14,T44] ( 3, 6 ) int -> rdi
-; V15 loc11 [V15,T32] ( 6, 12 ) int -> rsi
+; V13 loc9 [V13,T36] ( 3, 12 ) ushort -> rcx
+; V14 loc10 [V14,T51] ( 3, 6 ) int -> rdi
+; V15 loc11 [V15,T31] ( 6, 12 ) int -> rsi
; V16 loc12 [V16 ] ( 3, 6 ) struct (16) [rbp-0x68] do-not-enreg[XS] must-init addr-exposed ld-addr-op <System.ReadOnlySpan`1[ushort]>
; V17 OutArgs [V17 ] ( 1, 1 ) struct (32) [rsp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
;* V18 tmp1 [V18 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.Span`1[ushort]>
;* V19 tmp2 [V19 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V20 tmp3 [V20 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "NewObj constructor temp" <System.ValueTuple`4[System.String,int,int,System.String]>
;* V21 tmp4 [V21 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "NewObj constructor temp" <System.ValueTuple`4[System.String,int,int,System.String]>
;* V22 tmp5 [V22 ] ( 0, 0 ) struct (24) zero-ref ld-addr-op "NewObj constructor temp" <System.ValueTuple`4[System.String,int,int,System.String]>
-; V23 tmp6 [V23,T51] ( 2, 4 ) long -> rdx "Inlining Arg"
+; V23 tmp6 [V23,T58] ( 2, 4 ) long -> rdx "Inlining Arg"
;* V24 tmp7 [V24 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
;* V25 tmp8 [V25 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-; V26 tmp9 [V26,T08] ( 4, 41 ) byref -> [rbp-0xB0] spill-single-def "Inlining Arg"
-; V27 tmp10 [V27,T05] ( 8, 45 ) int -> [rbp-0x6C] spill-single-def "Inlining Arg"
+; V26 tmp9 [V26,T05] ( 2, 32 ) byref -> r8 "Inlining Arg"
+; V27 tmp10 [V27,T06] ( 2, 32 ) int -> r9 "Inlining Arg"
;* V28 tmp11 [V28 ] ( 0, 0 ) int -> zero-ref "Inline return value spill temp"
;* V29 tmp12 [V29 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
-;* V30 tmp13 [V30,T28] ( 0, 0 ) ushort -> zero-ref ld-addr-op "Inlining Arg"
-;* V31 tmp14 [V31,T29] ( 0, 0 ) ushort -> zero-ref ld-addr-op "Inlining Arg"
-;* V32 tmp15 [V32 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
-;* V33 tmp16 [V33 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
-;* V34 tmp17 [V34,T30] ( 0, 0 ) short -> zero-ref "Inlining Arg"
-;* V35 tmp18 [V35,T31] ( 0, 0 ) short -> zero-ref "Inlining Arg"
-;* V36 tmp19 [V36 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
-; V37 tmp20 [V37,T07] ( 9, 42 ) int -> [rbp-0x70] spill-single-def "Inline return value spill temp"
-;* V38 tmp21 [V38 ] ( 0, 0 ) short -> zero-ref ld-addr-op "Inlining Arg"
-;* V39 tmp22 [V39 ] ( 0, 0 ) short -> zero-ref ld-addr-op "Inlining Arg"
-;* V40 tmp23 [V40 ] ( 0, 0 ) ushort -> zero-ref "Inline stloc first use temp"
-;* V41 tmp24 [V41 ] ( 0, 0 ) short -> zero-ref ld-addr-op "Inlining Arg"
-;* V42 tmp25 [V42 ] ( 0, 0 ) short -> zero-ref ld-addr-op "Inlining Arg"
-;* V43 tmp26 [V43 ] ( 0, 0 ) ushort -> zero-ref "Inline return value spill temp"
-;* V44 tmp27 [V44 ] ( 0, 0 ) ushort -> zero-ref "Inlining Arg"
-;* V45 tmp28 [V45 ] ( 0, 0 ) ushort -> zero-ref "Inlining Arg"
-;* V46 tmp29 [V46 ] ( 0, 0 ) ushort -> zero-ref "Inlining Arg"
-;* V47 tmp30 [V47 ] ( 0, 0 ) ushort -> zero-ref "Inlining Arg"
-;* V48 tmp31 [V48 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
-;* V49 tmp32 [V49 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
-;* V50 tmp33 [V50 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
-;* V51 tmp34 [V51 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.Span`1[ushort]>
-; V52 tmp35 [V52,T49] ( 4, 4 ) int -> rdx "Inlining Arg"
-;* V53 tmp36 [V53 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.Span`1[ushort]>
-; V54 tmp37 [V54,T60] ( 2, 2 ) byref -> rdi single-def "Inlining Arg"
-; V55 tmp38 [V55,T62] ( 2, 2 ) int -> rsi "Inlining Arg"
-;* V56 tmp39 [V56 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.Span`1[ushort]>
-;* V57 tmp40 [V57 ] ( 0, 0 ) byref -> zero-ref single-def "Inlining Arg"
-;* V58 tmp41 [V58 ] ( 0, 0 ) byref -> zero-ref single-def "Inlining Arg"
-; V59 tmp42 [V59,T63] ( 2, 2 ) long -> rdx "Inlining Arg"
-;* V60 tmp43 [V60 ] ( 0, 0 ) long -> zero-ref "Inlining Arg"
-;* V61 tmp44 [V61 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.String>
-; V62 tmp45 [V62,T64] ( 3, 1.50) ref -> rdi class-hnd single-def "Inline stloc first use temp" <System.ValueTuple`4[System.String,int,int,System.String][]>
-; V63 tmp46 [V63,T59] ( 4, 2 ) int -> rsi "Inline stloc first use temp"
-;* V64 tmp47 [V64 ] ( 0, 0 ) struct (24) zero-ref do-not-enreg[S] "Inlining Arg" <System.ValueTuple`4[System.String,int,int,System.String]>
-;* V65 tmp48 [V65 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
+;* V30 tmp13 [V30 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
+;* V31 tmp14 [V31 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
+;* V32 tmp15 [V32 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
+; V33 tmp16 [V33,T08] ( 9, 42 ) int -> [rbp-0x6C] spill-single-def "Inline return value spill temp"
+;* V34 tmp17 [V34,T46] ( 0, 0 ) ushort -> zero-ref "Inline stloc first use temp"
+;* V35 tmp18 [V35,T47] ( 0, 0 ) ushort -> zero-ref "Inline stloc first use temp"
+;* V36 tmp19 [V36 ] ( 0, 0 ) ushort -> zero-ref "Inline stloc first use temp"
+;* V37 tmp20 [V37 ] ( 0, 0 ) ushort -> zero-ref "Inline return value spill temp"
+;* V38 tmp21 [V38 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
+;* V39 tmp22 [V39 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
+;* V40 tmp23 [V40 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
+;* V41 tmp24 [V41 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.Span`1[ushort]>
+; V42 tmp25 [V42,T56] ( 4, 4 ) int -> rdx "Inlining Arg"
+;* V43 tmp26 [V43 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.Span`1[ushort]>
+; V44 tmp27 [V44,T67] ( 2, 2 ) byref -> rdi single-def "Inlining Arg"
+; V45 tmp28 [V45,T69] ( 2, 2 ) int -> rsi "Inlining Arg"
+;* V46 tmp29 [V46 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.Span`1[ushort]>
+;* V47 tmp30 [V47 ] ( 0, 0 ) byref -> zero-ref single-def "Inlining Arg"
+;* V48 tmp31 [V48 ] ( 0, 0 ) byref -> zero-ref single-def "Inlining Arg"
+; V49 tmp32 [V49,T70] ( 2, 2 ) long -> rdx "Inlining Arg"
+;* V50 tmp33 [V50 ] ( 0, 0 ) long -> zero-ref "Inlining Arg"
+;* V51 tmp34 [V51 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.String>
+; V52 tmp35 [V52,T71] ( 3, 1.50) ref -> rdi class-hnd single-def "Inline stloc first use temp" <System.ValueTuple`4[System.String,int,int,System.String][]>
+; V53 tmp36 [V53,T66] ( 4, 2 ) int -> rsi "Inline stloc first use temp"
+;* V54 tmp37 [V54 ] ( 0, 0 ) struct (24) zero-ref do-not-enreg[S] "Inlining Arg" <System.ValueTuple`4[System.String,int,int,System.String]>
+;* V55 tmp38 [V55 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
+;* V56 tmp39 [V56 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
+;* V57 tmp40 [V57 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
+;* V58 tmp41 [V58 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
+;* V59 tmp42 [V59 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.Span`1[ushort]>
+; V60 tmp43 [V60,T11] ( 4, 32 ) int -> rdx "Inlining Arg"
+;* V61 tmp44 [V61 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.Span`1[ushort]>
+; V62 tmp45 [V62,T26] ( 2, 16 ) byref -> rdi "Inlining Arg"
+; V63 tmp46 [V63,T27] ( 2, 16 ) int -> rsi "Inlining Arg"
+;* V64 tmp47 [V64 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.Span`1[ushort]>
+;* V65 tmp48 [V65 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
;* V66 tmp49 [V66 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
-;* V67 tmp50 [V67 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
-;* V68 tmp51 [V68 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
-;* V69 tmp52 [V69 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.Span`1[ushort]>
-; V70 tmp53 [V70,T11] ( 4, 32 ) int -> rdx "Inlining Arg"
-;* V71 tmp54 [V71 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.Span`1[ushort]>
-; V72 tmp55 [V72,T23] ( 2, 16 ) byref -> rdi "Inlining Arg"
-; V73 tmp56 [V73,T24] ( 2, 16 ) int -> rsi "Inlining Arg"
-;* V74 tmp57 [V74 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.Span`1[ushort]>
-;* V75 tmp58 [V75 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
-;* V76 tmp59 [V76 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
-; V77 tmp60 [V77,T25] ( 2, 16 ) long -> rdx "Inlining Arg"
-;* V78 tmp61 [V78 ] ( 0, 0 ) long -> zero-ref "Inlining Arg"
-;* V79 tmp62 [V79,T46] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
-;* V80 tmp63 [V80 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
-;* V81 tmp64 [V81 ] ( 0, 0 ) int -> zero-ref "Span.get_Item index"
-; V82 tmp65 [V82,T34] ( 4, 12 ) int -> rdi "Inline stloc first use temp"
-;* V83 tmp66 [V83 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline stloc first use temp" <System.Span`1[ushort]>
-;* V84 tmp67 [V84 ] ( 0, 0 ) ushort -> zero-ref "Inlining Arg"
-;* V85 tmp68 [V85 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.String>
-; V86 tmp69 [V86,T40] ( 3, 10 ) ref -> rdi class-hnd "Inline stloc first use temp" <System.ValueTuple`4[System.String,int,int,System.String][]>
-; V87 tmp70 [V87,T35] ( 4, 12 ) int -> rsi "Inline stloc first use temp"
-; V88 tmp71 [V88,T26] ( 2, 16 ) struct (24) [rbp-0x88] do-not-enreg[S] must-init "Inlining Arg" <System.ValueTuple`4[System.String,int,int,System.String]>
-;* V89 tmp72 [V89,T47] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
-;* V90 tmp73 [V90 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
-;* V91 tmp74 [V91 ] ( 0, 0 ) int -> zero-ref "Span.get_Item index"
-;* V92 tmp75 [V92,T13] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
+; V67 tmp50 [V67,T28] ( 2, 16 ) long -> rdx "Inlining Arg"
+;* V68 tmp51 [V68 ] ( 0, 0 ) long -> zero-ref "Inlining Arg"
+;* V69 tmp52 [V69,T53] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
+;* V70 tmp53 [V70 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
+;* V71 tmp54 [V71 ] ( 0, 0 ) int -> zero-ref "Span.get_Item index"
+; V72 tmp55 [V72,T33] ( 4, 12 ) int -> rdi "Inline stloc first use temp"
+;* V73 tmp56 [V73 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline stloc first use temp" <System.Span`1[ushort]>
+;* V74 tmp57 [V74 ] ( 0, 0 ) ushort -> zero-ref "Inlining Arg"
+;* V75 tmp58 [V75 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inline return value spill temp" <System.String>
+; V76 tmp59 [V76 ] ( 3, 12 ) struct (16) [rbp-0x80] do-not-enreg[XS] must-init addr-exposed ld-addr-op "Inline stloc first use temp" <System.Span`1[ushort]>
+; V77 tmp60 [V77,T41] ( 2, 8 ) ref -> [rbp-0xC8] class-hnd exact spill-single-def "Inline stloc first use temp" <System.String>
+; V78 tmp61 [V78,T12] ( 3, 24 ) int -> rdi "Inlining Arg"
+;* V79 tmp62 [V79 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.Span`1[ushort]>
+;* V80 tmp63 [V80 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
+; V81 tmp64 [V81,T39] ( 3, 10 ) ref -> rdx class-hnd "Inline stloc first use temp" <ushort[]>
+; V82 tmp65 [V82,T40] ( 3, 10 ) ref -> rdi class-hnd "Inline stloc first use temp" <System.ValueTuple`4[System.String,int,int,System.String][]>
+; V83 tmp66 [V83,T34] ( 4, 12 ) int -> rax "Inline stloc first use temp"
+; V84 tmp67 [V84,T29] ( 2, 16 ) struct (24) [rbp-0x98] do-not-enreg[S] must-init "Inlining Arg" <System.ValueTuple`4[System.String,int,int,System.String]>
+;* V85 tmp68 [V85,T54] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
+;* V86 tmp69 [V86 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
+;* V87 tmp70 [V87 ] ( 0, 0 ) int -> zero-ref "Span.get_Item index"
+;* V88 tmp71 [V88,T14] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
+;* V89 tmp72 [V89 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
+;* V90 tmp73 [V90 ] ( 0, 0 ) int -> zero-ref "Span.get_Item index"
+;* V91 tmp74 [V91 ] ( 0, 0 ) ushort -> zero-ref "Inlining Arg"
+;* V92 tmp75 [V92,T15] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
;* V93 tmp76 [V93 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V94 tmp77 [V94 ] ( 0, 0 ) int -> zero-ref "Span.get_Item index"
-;* V95 tmp78 [V95 ] ( 0, 0 ) ushort -> zero-ref "Inlining Arg"
-;* V96 tmp79 [V96,T14] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
-;* V97 tmp80 [V97 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
-;* V98 tmp81 [V98 ] ( 0, 0 ) int -> zero-ref "Span.get_Item index"
-;* V99 tmp82 [V99,T15] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
-;* V100 tmp83 [V100 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
-;* V101 tmp84 [V101 ] ( 0, 0 ) int -> zero-ref "Span.get_Item index"
-;* V102 tmp85 [V102,T52] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
-;* V103 tmp86 [V103 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
-;* V104 tmp87 [V104 ] ( 0, 0 ) int -> zero-ref "Span.get_Item index"
-;* V105 tmp88 [V105,T53] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
-;* V106 tmp89 [V106 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
-;* V107 tmp90 [V107 ] ( 0, 0 ) int -> zero-ref "Span.get_Item index"
-;* V108 tmp91 [V108,T27] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
+;* V95 tmp78 [V95,T16] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
+;* V96 tmp79 [V96 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
+;* V97 tmp80 [V97 ] ( 0, 0 ) int -> zero-ref "Span.get_Item index"
+;* V98 tmp81 [V98,T59] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
+;* V99 tmp82 [V99 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
+;* V100 tmp83 [V100 ] ( 0, 0 ) int -> zero-ref "Span.get_Item index"
+;* V101 tmp84 [V101,T60] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
+;* V102 tmp85 [V102 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
+;* V103 tmp86 [V103 ] ( 0, 0 ) int -> zero-ref "Span.get_Item index"
+;* V104 tmp87 [V104,T30] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
+;* V105 tmp88 [V105 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
+;* V106 tmp89 [V106 ] ( 0, 0 ) int -> zero-ref "Span.get_Item index"
+;* V107 tmp90 [V107 ] ( 0, 0 ) ushort -> zero-ref "Inlining Arg"
+;* V108 tmp91 [V108,T17] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
;* V109 tmp92 [V109 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V110 tmp93 [V110 ] ( 0, 0 ) int -> zero-ref "Span.get_Item index"
-;* V111 tmp94 [V111 ] ( 0, 0 ) ushort -> zero-ref "Inlining Arg"
-;* V112 tmp95 [V112,T16] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
-;* V113 tmp96 [V113 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
-;* V114 tmp97 [V114 ] ( 0, 0 ) int -> zero-ref "Span.get_Item index"
-;* V115 tmp98 [V115,T17] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
-;* V116 tmp99 [V116 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
-;* V117 tmp100 [V117 ] ( 0, 0 ) int -> zero-ref "Span.get_Item index"
-; V118 tmp101 [V118,T38] ( 3, 12 ) int -> rdi "Inlining Arg"
-;* V119 tmp102 [V119 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V120 tmp103 [V120 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
-; V121 tmp104 [V121,T36] ( 3, 12 ) ref -> rdi class-hnd "Inline stloc first use temp" <System.ValueTuple`4[System.String,int,int,System.String][]>
-; V122 tmp105 [V122,T20] ( 4, 16 ) int -> r8 "Inline stloc first use temp"
-; V123 tmp106 [V123,T12] ( 3, 24 ) struct (24) [rbp-0xA0] do-not-enreg[S] must-init "Inlining Arg" <System.ValueTuple`4[System.String,int,int,System.String]>
-; V124 tmp107 [V124,T03] ( 14,115 ) byref -> r15 single-def "field V00._reference (fldOffset=0x0)" P-INDEP
-; V125 tmp108 [V125,T02] ( 15,123 ) int -> rbx single-def "field V00._length (fldOffset=0x8)" P-INDEP
-;* V126 tmp109 [V126 ] ( 0, 0 ) byref -> zero-ref single-def "field V07._reference (fldOffset=0x0)" P-INDEP
-;* V127 tmp110 [V127 ] ( 0, 0 ) int -> zero-ref "field V07._length (fldOffset=0x8)" P-INDEP
-;* V128 tmp111 [V128 ] ( 0, 0 ) byref -> zero-ref "field V11._reference (fldOffset=0x0)" P-INDEP
-;* V129 tmp112 [V129 ] ( 0, 0 ) int -> zero-ref "field V11._length (fldOffset=0x8)" P-INDEP
-; V130 tmp113 [V130 ] ( 2, 4 ) byref -> [rbp-0x68] do-not-enreg[X] addr-exposed "field V16._reference (fldOffset=0x0)" P-DEP
-; V131 tmp114 [V131 ] ( 2, 4 ) int -> [rbp-0x60] do-not-enreg[X] addr-exposed "field V16._length (fldOffset=0x8)" P-DEP
-; V132 tmp115 [V132,T61] ( 2, 2 ) byref -> rdx single-def "field V18._reference (fldOffset=0x0)" P-INDEP
-;* V133 tmp116 [V133,T67] ( 0, 0 ) int -> zero-ref "field V18._length (fldOffset=0x8)" P-INDEP
-;* V134 tmp117 [V134 ] ( 0, 0 ) byref -> zero-ref "field V19._reference (fldOffset=0x0)" P-INDEP
-;* V135 tmp118 [V135 ] ( 0, 0 ) int -> zero-ref "field V19._length (fldOffset=0x8)" P-INDEP
-; V136 tmp119 [V136,T33] ( 4, 12 ) ref -> rax "field V20.Item1 (fldOffset=0x0)" P-INDEP
-;* V137 tmp120 [V137,T55] ( 0, 0 ) ref -> zero-ref "field V20.Item4 (fldOffset=0x8)" P-INDEP
-;* V138 tmp121 [V138,T57] ( 0, 0 ) int -> zero-ref "field V20.Item2 (fldOffset=0x10)" P-INDEP
-;* V139 tmp122 [V139,T58] ( 0, 0 ) int -> zero-ref "field V20.Item3 (fldOffset=0x14)" P-INDEP
-;* V140 tmp123 [V140,T56] ( 0, 0 ) ref -> zero-ref "field V21.Item1 (fldOffset=0x0)" P-INDEP
-; V141 tmp124 [V141,T19] ( 4, 16 ) ref -> rsi "field V21.Item4 (fldOffset=0x8)" P-INDEP
-; V142 tmp125 [V142,T21] ( 4, 16 ) int -> [rbp-0xA4] spill-single-def "field V21.Item2 (fldOffset=0x10)" P-INDEP
-; V143 tmp126 [V143,T22] ( 4, 16 ) int -> [rbp-0xA8] spill-single-def "field V21.Item3 (fldOffset=0x14)" P-INDEP
-; V144 tmp127 [V144,T65] ( 3, 1.50) ref -> rax single-def "field V22.Item1 (fldOffset=0x0)" P-INDEP
-;* V145 tmp128 [V145,T68] ( 0, 0 ) ref -> zero-ref single-def "field V22.Item4 (fldOffset=0x8)" P-INDEP
-;* V146 tmp129 [V146,T69] ( 0, 0 ) int -> zero-ref "field V22.Item2 (fldOffset=0x10)" P-INDEP
-;* V147 tmp130 [V147,T70] ( 0, 0 ) int -> zero-ref "field V22.Item3 (fldOffset=0x14)" P-INDEP
-;* V148 tmp131 [V148 ] ( 0, 0 ) byref -> zero-ref "field V25._reference (fldOffset=0x0)" P-INDEP
-;* V149 tmp132 [V149 ] ( 0, 0 ) int -> zero-ref "field V25._length (fldOffset=0x8)" P-INDEP
-;* V150 tmp133 [V150 ] ( 0, 0 ) byref -> zero-ref "field V29._reference (fldOffset=0x0)" P-INDEP
-;* V151 tmp134 [V151 ] ( 0, 0 ) int -> zero-ref "field V29._length (fldOffset=0x8)" P-INDEP
-;* V152 tmp135 [V152 ] ( 0, 0 ) byref -> zero-ref "field V32._reference (fldOffset=0x0)" P-INDEP
-;* V153 tmp136 [V153 ] ( 0, 0 ) int -> zero-ref "field V32._length (fldOffset=0x8)" P-INDEP
-;* V154 tmp137 [V154 ] ( 0, 0 ) byref -> zero-ref "field V48._reference (fldOffset=0x0)" P-INDEP
-;* V155 tmp138 [V155 ] ( 0, 0 ) int -> zero-ref "field V48._length (fldOffset=0x8)" P-INDEP
-;* V156 tmp139 [V156 ] ( 0, 0 ) byref -> zero-ref single-def "field V50._reference (fldOffset=0x0)" P-INDEP
-;* V157 tmp140 [V157 ] ( 0, 0 ) int -> zero-ref "field V50._length (fldOffset=0x8)" P-INDEP
-;* V158 tmp141 [V158 ] ( 0, 0 ) byref -> zero-ref "field V51._reference (fldOffset=0x0)" P-INDEP
-;* V159 tmp142 [V159 ] ( 0, 0 ) int -> zero-ref "field V51._length (fldOffset=0x8)" P-INDEP
-;* V160 tmp143 [V160 ] ( 0, 0 ) byref -> zero-ref single-def "field V53._reference (fldOffset=0x0)" P-INDEP
-;* V161 tmp144 [V161 ] ( 0, 0 ) int -> zero-ref "field V53._length (fldOffset=0x8)" P-INDEP
-;* V162 tmp145 [V162 ] ( 0, 0 ) byref -> zero-ref single-def "field V56._reference (fldOffset=0x0)" P-INDEP
-;* V163 tmp146 [V163 ] ( 0, 0 ) int -> zero-ref "field V56._length (fldOffset=0x8)" P-INDEP
-;* V164 tmp147 [V164 ] ( 0, 0 ) byref -> zero-ref "field V65._reference (fldOffset=0x0)" P-INDEP
-;* V165 tmp148 [V165 ] ( 0, 0 ) int -> zero-ref "field V65._length (fldOffset=0x8)" P-INDEP
-;* V166 tmp149 [V166 ] ( 0, 0 ) byref -> zero-ref "field V68._reference (fldOffset=0x0)" P-INDEP
-;* V167 tmp150 [V167 ] ( 0, 0 ) int -> zero-ref "field V68._length (fldOffset=0x8)" P-INDEP
-;* V168 tmp151 [V168 ] ( 0, 0 ) byref -> zero-ref "field V69._reference (fldOffset=0x0)" P-INDEP
-;* V169 tmp152 [V169 ] ( 0, 0 ) int -> zero-ref "field V69._length (fldOffset=0x8)" P-INDEP
-;* V170 tmp153 [V170 ] ( 0, 0 ) byref -> zero-ref "field V71._reference (fldOffset=0x0)" P-INDEP
-;* V171 tmp154 [V171 ] ( 0, 0 ) int -> zero-ref "field V71._length (fldOffset=0x8)" P-INDEP
-;* V172 tmp155 [V172 ] ( 0, 0 ) byref -> zero-ref "field V74._reference (fldOffset=0x0)" P-INDEP
-;* V173 tmp156 [V173 ] ( 0, 0 ) int -> zero-ref "field V74._length (fldOffset=0x8)" P-INDEP
-;* V174 tmp157 [V174 ] ( 0, 0 ) byref -> zero-ref "field V80._reference (fldOffset=0x0)" P-INDEP
-;* V175 tmp158 [V175 ] ( 0, 0 ) int -> zero-ref "field V80._length (fldOffset=0x8)" P-INDEP
-; V176 tmp159 [V176,T45] ( 2, 6 ) byref -> rsi "field V83._reference (fldOffset=0x0)" P-INDEP
-; V177 tmp160 [V177,T41] ( 2, 8 ) int -> rcx "field V83._length (fldOffset=0x8)" P-INDEP
-;* V178 tmp161 [V178 ] ( 0, 0 ) byref -> zero-ref "field V90._reference (fldOffset=0x0)" P-INDEP
-;* V179 tmp162 [V179 ] ( 0, 0 ) int -> zero-ref "field V90._length (fldOffset=0x8)" P-INDEP
-;* V180 tmp163 [V180 ] ( 0, 0 ) byref -> zero-ref "field V93._reference (fldOffset=0x0)" P-INDEP
-;* V181 tmp164 [V181 ] ( 0, 0 ) int -> zero-ref "field V93._length (fldOffset=0x8)" P-INDEP
-;* V182 tmp165 [V182 ] ( 0, 0 ) byref -> zero-ref "field V97._reference (fldOffset=0x0)" P-INDEP
-;* V183 tmp166 [V183 ] ( 0, 0 ) int -> zero-ref "field V97._length (fldOffset=0x8)" P-INDEP
-;* V184 tmp167 [V184 ] ( 0, 0 ) byref -> zero-ref "field V100._reference (fldOffset=0x0)" P-INDEP
-;* V185 tmp168 [V185 ] ( 0, 0 ) int -> zero-ref "field V100._length (fldOffset=0x8)" P-INDEP
-;* V186 tmp169 [V186 ] ( 0, 0 ) byref -> zero-ref "field V103._reference (fldOffset=0x0)" P-INDEP
-;* V187 tmp170 [V187 ] ( 0, 0 ) int -> zero-ref "field V103._length (fldOffset=0x8)" P-INDEP
-;* V188 tmp171 [V188 ] ( 0, 0 ) byref -> zero-ref "field V106._reference (fldOffset=0x0)" P-INDEP
-;* V189 tmp172 [V189 ] ( 0, 0 ) int -> zero-ref "field V106._length (fldOffset=0x8)" P-INDEP
-;* V190 tmp173 [V190 ] ( 0, 0 ) byref -> zero-ref "field V109._reference (fldOffset=0x0)" P-INDEP
-;* V191 tmp174 [V191 ] ( 0, 0 ) int -> zero-ref "field V109._length (fldOffset=0x8)" P-INDEP
-;* V192 tmp175 [V192 ] ( 0, 0 ) byref -> zero-ref "field V113._reference (fldOffset=0x0)" P-INDEP
-;* V193 tmp176 [V193 ] ( 0, 0 ) int -> zero-ref "field V113._length (fldOffset=0x8)" P-INDEP
-;* V194 tmp177 [V194 ] ( 0, 0 ) byref -> zero-ref "field V116._reference (fldOffset=0x0)" P-INDEP
-;* V195 tmp178 [V195 ] ( 0, 0 ) int -> zero-ref "field V116._length (fldOffset=0x8)" P-INDEP
-; V196 tmp179 [V196,T50] ( 2, 4 ) byref -> rsi "field V119._reference (fldOffset=0x0)" P-INDEP
-; V197 tmp180 [V197,T54] ( 2, 4 ) int -> rdi "field V119._length (fldOffset=0x8)" P-INDEP
-; V198 tmp181 [V198,T18] ( 5, 20 ) byref -> [rbp-0xB8] spill-single-def "BlockOp address local"
-; V199 tmp182 [V199,T09] ( 5, 40 ) byref -> [rbp-0xC0] spill-single-def "BlockOp address local"
-; V200 tmp183 [V200,T48] ( 5, 5 ) byref -> r14 single-def "BlockOp address local"
-; V201 GsCookie [V201 ] ( 1, 1 ) long -> [rbp-0xC8] do-not-enreg[X] addr-exposed "GSSecurityCookie"
-; V202 cse0 [V202,T66] ( 2, 1 ) int -> rcx "CSE #09: conservative"
+;* V111 tmp94 [V111,T18] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
+;* V112 tmp95 [V112 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
+;* V113 tmp96 [V113 ] ( 0, 0 ) int -> zero-ref "Span.get_Item index"
+; V114 tmp97 [V114,T37] ( 3, 12 ) int -> rdi "Inlining Arg"
+;* V115 tmp98 [V115 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
+;* V116 tmp99 [V116 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
+; V117 tmp100 [V117,T35] ( 3, 12 ) ref -> rdi class-hnd "Inline stloc first use temp" <System.ValueTuple`4[System.String,int,int,System.String][]>
+; V118 tmp101 [V118,T23] ( 4, 16 ) int -> r8 "Inline stloc first use temp"
+; V119 tmp102 [V119,T13] ( 3, 24 ) struct (24) [rbp-0xB0] do-not-enreg[S] must-init "Inlining Arg" <System.ValueTuple`4[System.String,int,int,System.String]>
+; V120 tmp103 [V120,T03] ( 14,115 ) byref -> r15 single-def "field V00._reference (fldOffset=0x0)" P-INDEP
+; V121 tmp104 [V121,T02] ( 15,123 ) int -> rbx single-def "field V00._length (fldOffset=0x8)" P-INDEP
+;* V122 tmp105 [V122 ] ( 0, 0 ) byref -> zero-ref single-def "field V07._reference (fldOffset=0x0)" P-INDEP
+;* V123 tmp106 [V123 ] ( 0, 0 ) int -> zero-ref "field V07._length (fldOffset=0x8)" P-INDEP
+; V124 tmp107 [V124,T20] ( 4, 20.50) byref -> [rbp-0xD0] spill-single-def "field V11._reference (fldOffset=0x0)" P-INDEP
+; V125 tmp108 [V125,T19] ( 8, 22.50) int -> [rbp-0xB4] spill-single-def "field V11._length (fldOffset=0x8)" P-INDEP
+; V126 tmp109 [V126 ] ( 2, 4 ) byref -> [rbp-0x68] do-not-enreg[X] addr-exposed "field V16._reference (fldOffset=0x0)" P-DEP
+; V127 tmp110 [V127 ] ( 2, 4 ) int -> [rbp-0x60] do-not-enreg[X] addr-exposed "field V16._length (fldOffset=0x8)" P-DEP
+; V128 tmp111 [V128,T68] ( 2, 2 ) byref -> rdx single-def "field V18._reference (fldOffset=0x0)" P-INDEP
+;* V129 tmp112 [V129,T74] ( 0, 0 ) int -> zero-ref "field V18._length (fldOffset=0x8)" P-INDEP
+;* V130 tmp113 [V130 ] ( 0, 0 ) byref -> zero-ref "field V19._reference (fldOffset=0x0)" P-INDEP
+;* V131 tmp114 [V131 ] ( 0, 0 ) int -> zero-ref "field V19._length (fldOffset=0x8)" P-INDEP
+; V132 tmp115 [V132,T32] ( 4, 12 ) ref -> rsi "field V20.Item1 (fldOffset=0x0)" P-INDEP
+;* V133 tmp116 [V133,T62] ( 0, 0 ) ref -> zero-ref "field V20.Item4 (fldOffset=0x8)" P-INDEP
+;* V134 tmp117 [V134,T64] ( 0, 0 ) int -> zero-ref "field V20.Item2 (fldOffset=0x10)" P-INDEP
+;* V135 tmp118 [V135,T65] ( 0, 0 ) int -> zero-ref "field V20.Item3 (fldOffset=0x14)" P-INDEP
+;* V136 tmp119 [V136,T63] ( 0, 0 ) ref -> zero-ref "field V21.Item1 (fldOffset=0x0)" P-INDEP
+; V137 tmp120 [V137,T22] ( 4, 16 ) ref -> rsi "field V21.Item4 (fldOffset=0x8)" P-INDEP
+; V138 tmp121 [V138,T24] ( 4, 16 ) int -> [rbp-0xB8] spill-single-def "field V21.Item2 (fldOffset=0x10)" P-INDEP
+; V139 tmp122 [V139,T25] ( 4, 16 ) int -> [rbp-0xBC] spill-single-def "field V21.Item3 (fldOffset=0x14)" P-INDEP
+; V140 tmp123 [V140,T72] ( 3, 1.50) ref -> rax single-def "field V22.Item1 (fldOffset=0x0)" P-INDEP
+;* V141 tmp124 [V141,T75] ( 0, 0 ) ref -> zero-ref single-def "field V22.Item4 (fldOffset=0x8)" P-INDEP
+;* V142 tmp125 [V142,T76] ( 0, 0 ) int -> zero-ref "field V22.Item2 (fldOffset=0x10)" P-INDEP
+;* V143 tmp126 [V143,T77] ( 0, 0 ) int -> zero-ref "field V22.Item3 (fldOffset=0x14)" P-INDEP
+;* V144 tmp127 [V144,T45] ( 0, 0 ) byref -> zero-ref "field V25._reference (fldOffset=0x0)" P-INDEP
+;* V145 tmp128 [V145,T48] ( 0, 0 ) int -> zero-ref "field V25._length (fldOffset=0x8)" P-INDEP
+;* V146 tmp129 [V146 ] ( 0, 0 ) byref -> zero-ref "field V29._reference (fldOffset=0x0)" P-INDEP
+;* V147 tmp130 [V147 ] ( 0, 0 ) int -> zero-ref "field V29._length (fldOffset=0x8)" P-INDEP
+;* V148 tmp131 [V148 ] ( 0, 0 ) byref -> zero-ref "field V30._reference (fldOffset=0x0)" P-INDEP
+;* V149 tmp132 [V149 ] ( 0, 0 ) int -> zero-ref "field V30._length (fldOffset=0x8)" P-INDEP
+;* V150 tmp133 [V150 ] ( 0, 0 ) byref -> zero-ref "field V38._reference (fldOffset=0x0)" P-INDEP
+;* V151 tmp134 [V151 ] ( 0, 0 ) int -> zero-ref "field V38._length (fldOffset=0x8)" P-INDEP
+;* V152 tmp135 [V152 ] ( 0, 0 ) byref -> zero-ref single-def "field V40._reference (fldOffset=0x0)" P-INDEP
+;* V153 tmp136 [V153 ] ( 0, 0 ) int -> zero-ref "field V40._length (fldOffset=0x8)" P-INDEP
+;* V154 tmp137 [V154 ] ( 0, 0 ) byref -> zero-ref "field V41._reference (fldOffset=0x0)" P-INDEP
+;* V155 tmp138 [V155 ] ( 0, 0 ) int -> zero-ref "field V41._length (fldOffset=0x8)" P-INDEP
+;* V156 tmp139 [V156 ] ( 0, 0 ) byref -> zero-ref single-def "field V43._reference (fldOffset=0x0)" P-INDEP
+;* V157 tmp140 [V157 ] ( 0, 0 ) int -> zero-ref "field V43._length (fldOffset=0x8)" P-INDEP
+;* V158 tmp141 [V158 ] ( 0, 0 ) byref -> zero-ref single-def "field V46._reference (fldOffset=0x0)" P-INDEP
+;* V159 tmp142 [V159 ] ( 0, 0 ) int -> zero-ref "field V46._length (fldOffset=0x8)" P-INDEP
+;* V160 tmp143 [V160 ] ( 0, 0 ) byref -> zero-ref "field V55._reference (fldOffset=0x0)" P-INDEP
+;* V161 tmp144 [V161 ] ( 0, 0 ) int -> zero-ref "field V55._length (fldOffset=0x8)" P-INDEP
+;* V162 tmp145 [V162 ] ( 0, 0 ) byref -> zero-ref "field V58._reference (fldOffset=0x0)" P-INDEP
+;* V163 tmp146 [V163 ] ( 0, 0 ) int -> zero-ref "field V58._length (fldOffset=0x8)" P-INDEP
+;* V164 tmp147 [V164 ] ( 0, 0 ) byref -> zero-ref "field V59._reference (fldOffset=0x0)" P-INDEP
+;* V165 tmp148 [V165 ] ( 0, 0 ) int -> zero-ref "field V59._length (fldOffset=0x8)" P-INDEP
+;* V166 tmp149 [V166 ] ( 0, 0 ) byref -> zero-ref "field V61._reference (fldOffset=0x0)" P-INDEP
+;* V167 tmp150 [V167 ] ( 0, 0 ) int -> zero-ref "field V61._length (fldOffset=0x8)" P-INDEP
+;* V168 tmp151 [V168 ] ( 0, 0 ) byref -> zero-ref "field V64._reference (fldOffset=0x0)" P-INDEP
+;* V169 tmp152 [V169 ] ( 0, 0 ) int -> zero-ref "field V64._length (fldOffset=0x8)" P-INDEP
+;* V170 tmp153 [V170 ] ( 0, 0 ) byref -> zero-ref "field V70._reference (fldOffset=0x0)" P-INDEP
+;* V171 tmp154 [V171 ] ( 0, 0 ) int -> zero-ref "field V70._length (fldOffset=0x8)" P-INDEP
+; V172 tmp155 [V172,T52] ( 2, 6 ) byref -> rsi "field V73._reference (fldOffset=0x0)" P-INDEP
+; V173 tmp156 [V173,T43] ( 2, 8 ) int -> rcx "field V73._length (fldOffset=0x8)" P-INDEP
+; V174 tmp157 [V174 ] ( 2, 8 ) byref -> [rbp-0x80] do-not-enreg[X] addr-exposed "field V76._reference (fldOffset=0x0)" P-DEP
+; V175 tmp158 [V175 ] ( 2, 8 ) int -> [rbp-0x78] do-not-enreg[X] addr-exposed "field V76._length (fldOffset=0x8)" P-DEP
+; V176 tmp159 [V176,T42] ( 2, 8 ) byref -> rcx "field V79._reference (fldOffset=0x0)" P-INDEP
+; V177 tmp160 [V177,T44] ( 2, 8 ) int -> rdi "field V79._length (fldOffset=0x8)" P-INDEP
+;* V178 tmp161 [V178 ] ( 0, 0 ) byref -> zero-ref "field V86._reference (fldOffset=0x0)" P-INDEP
+;* V179 tmp162 [V179 ] ( 0, 0 ) int -> zero-ref "field V86._length (fldOffset=0x8)" P-INDEP
+;* V180 tmp163 [V180 ] ( 0, 0 ) byref -> zero-ref "field V89._reference (fldOffset=0x0)" P-INDEP
+;* V181 tmp164 [V181 ] ( 0, 0 ) int -> zero-ref "field V89._length (fldOffset=0x8)" P-INDEP
+;* V182 tmp165 [V182 ] ( 0, 0 ) byref -> zero-ref "field V93._reference (fldOffset=0x0)" P-INDEP
+;* V183 tmp166 [V183 ] ( 0, 0 ) int -> zero-ref "field V93._length (fldOffset=0x8)" P-INDEP
+;* V184 tmp167 [V184 ] ( 0, 0 ) byref -> zero-ref "field V96._reference (fldOffset=0x0)" P-INDEP
+;* V185 tmp168 [V185 ] ( 0, 0 ) int -> zero-ref "field V96._length (fldOffset=0x8)" P-INDEP
+;* V186 tmp169 [V186 ] ( 0, 0 ) byref -> zero-ref "field V99._reference (fldOffset=0x0)" P-INDEP
+;* V187 tmp170 [V187 ] ( 0, 0 ) int -> zero-ref "field V99._length (fldOffset=0x8)" P-INDEP
+;* V188 tmp171 [V188 ] ( 0, 0 ) byref -> zero-ref "field V102._reference (fldOffset=0x0)" P-INDEP
+;* V189 tmp172 [V189 ] ( 0, 0 ) int -> zero-ref "field V102._length (fldOffset=0x8)" P-INDEP
+;* V190 tmp173 [V190 ] ( 0, 0 ) byref -> zero-ref "field V105._reference (fldOffset=0x0)" P-INDEP
+;* V191 tmp174 [V191 ] ( 0, 0 ) int -> zero-ref "field V105._length (fldOffset=0x8)" P-INDEP
+;* V192 tmp175 [V192 ] ( 0, 0 ) byref -> zero-ref "field V109._reference (fldOffset=0x0)" P-INDEP
+;* V193 tmp176 [V193 ] ( 0, 0 ) int -> zero-ref "field V109._length (fldOffset=0x8)" P-INDEP
+;* V194 tmp177 [V194 ] ( 0, 0 ) byref -> zero-ref "field V112._reference (fldOffset=0x0)" P-INDEP
+;* V195 tmp178 [V195 ] ( 0, 0 ) int -> zero-ref "field V112._length (fldOffset=0x8)" P-INDEP
+; V196 tmp179 [V196,T57] ( 2, 4 ) byref -> rsi "field V115._reference (fldOffset=0x0)" P-INDEP
+; V197 tmp180 [V197,T61] ( 2, 4 ) int -> rdi "field V115._length (fldOffset=0x8)" P-INDEP
+; V198 tmp181 [V198,T21] ( 5, 20 ) byref -> [rbp-0xD8] spill-single-def "BlockOp address local"
+; V199 tmp182 [V199,T09] ( 5, 40 ) byref -> [rbp-0xE0] spill-single-def "BlockOp address local"
+; V200 tmp183 [V200,T55] ( 5, 5 ) byref -> r14 single-def "BlockOp address local"
+; V201 GsCookie [V201 ] ( 1, 1 ) long -> [rbp-0xE8] do-not-enreg[X] addr-exposed "GSSecurityCookie"
+; V202 cse0 [V202,T73] ( 2, 1 ) int -> rcx "CSE #12: conservative"
;
-; Lcl frame size = 200
+; Lcl frame size = 232
G_M35497_IG01:
push rbp
push r15
push r14
push r13
push r12
push rbx
- sub rsp, 200
- lea rbp, [rsp+0xF0]
+ sub rsp, 232
+ lea rbp, [rsp+0x110]
vxorps xmm8, xmm8, xmm8
- vmovdqu ymmword ptr [rbp-0xA0], ymm8
- vmovdqu ymmword ptr [rbp-0x80], ymm8
- vmovdqu ymmword ptr [rbp-0x60], ymm8
- vmovdqa xmmword ptr [rbp-0x40], xmm8
+ vmovdqu ymmword ptr [rbp-0xB0], ymm8
+ vmovdqu ymmword ptr [rbp-0x90], ymm8
+ vmovdqu ymmword ptr [rbp-0x70], ymm8
+ vmovdqu ymmword ptr [rbp-0x50], ymm8
xor eax, eax
mov qword ptr [rbp-0x30], rax
- mov qword ptr [rbp-0xC8], 0xD1FFAB1E
+ mov qword ptr [rbp-0xE8], 0xD1FFAB1E
mov r15, rdi
mov ebx, esi
mov r14, rdx
mov r13, rcx
mov r12, r8
- ;; size=84 bbWeight=1 PerfScore 18.58
+ ;; size=87 bbWeight=1 PerfScore 18.58
G_M35497_IG02:
test dword ptr [rsp], esp
sub rsp, 512
lea rdx, [rsp+0x20]
mov bword ptr [rbp-0x38], rdx
mov dword ptr [rbp-0x30], 256
xor edx, edx
mov dword ptr [rbp-0x40], edx
;; size=31 bbWeight=1 PerfScore 7.00
G_M35497_IG03:
xor eax, eax
;; size=2 bbWeight=1 PerfScore 0.25
G_M35497_IG04:
cmp eax, ebx
- ja G_M35497_IG59
+ ja G_M35497_IG61
mov edx, eax
lea r8, bword ptr [r15+2*rdx]
- mov bword ptr [rbp-0xB0], r8
mov dword ptr [rbp-0x4C], eax
mov r9d, ebx
sub r9d, eax
- mov dword ptr [rbp-0x6C], r9d
+ mov bword ptr [rbp-0xD0], r8
+ mov dword ptr [rbp-0xB4], r9d
mov edx, 125
mov esi, 123
mov rdi, r8
mov ecx, r9d
mov r10, 0xD1FFAB1E ; code for System.PackedSpanHelpers:IndexOfAny[System.SpanHelpers+DontNegate`1[short],System.PackedSpanHelpers+NopTransform](byref,short,short,int):int
call [r10]System.PackedSpanHelpers:IndexOfAny[System.SpanHelpers+DontNegate`1[short],System.PackedSpanHelpers+NopTransform](byref,short,short,int):int
- mov dword ptr [rbp-0x70], eax
+ mov dword ptr [rbp-0x6C], eax
test eax, eax
- jl G_M35497_IG41
- ;; size=74 bbWeight=8 PerfScore 96.00
+ jl G_M35497_IG43
+ ;; size=77 bbWeight=8 PerfScore 96.00
G_M35497_IG05:
- mov ecx, dword ptr [rbp-0x6C]
- cmp eax, ecx
- ja G_M35497_IG59
+ cmp eax, dword ptr [rbp-0xB4]
+ ja G_M35497_IG61
mov edi, dword ptr [rbp-0x30]
sub edi, eax
cmp dword ptr [rbp-0x40], edi
jle SHORT G_M35497_IG07
- ;; size=21 bbWeight=4 PerfScore 26.00
+ ;; size=22 bbWeight=4 PerfScore 29.00
G_M35497_IG06:
lea rdi, [rbp-0x48]
mov esi, eax
mov rcx, 0xD1FFAB1E ; code for System.Text.ValueStringBuilder:Grow(int):this
call [rcx]System.Text.ValueStringBuilder:Grow(int):this
- mov eax, dword ptr [rbp-0x70]
+ mov eax, dword ptr [rbp-0x6C]
;; size=21 bbWeight=2 PerfScore 10.00
G_M35497_IG07:
mov edx, dword ptr [rbp-0x40]
cmp edx, dword ptr [rbp-0x30]
- ja G_M35497_IG59
+ ja G_M35497_IG61
mov rdi, bword ptr [rbp-0x38]
mov esi, edx
lea rdi, bword ptr [rdi+2*rsi]
mov esi, dword ptr [rbp-0x30]
sub esi, edx
cmp eax, esi
- ja G_M35497_IG58
+ ja G_M35497_IG60
mov edx, eax
add rdx, rdx
- mov rsi, bword ptr [rbp-0xB0]
+ mov rsi, bword ptr [rbp-0xD0]
mov rcx, 0xD1FFAB1E ; code for System.SpanHelpers:Memmove(byref,byref,ulong)
call [rcx]System.SpanHelpers:Memmove(byref,byref,ulong)
- mov edi, dword ptr [rbp-0x70]
+ mov edi, dword ptr [rbp-0x6C]
mov esi, edi
add esi, dword ptr [rbp-0x40]
mov dword ptr [rbp-0x40], esi
mov eax, dword ptr [rbp-0x4C]
add eax, edi
cmp eax, ebx
- jae G_M35497_IG57
+ jae G_M35497_IG59
mov edi, eax
movzx rcx, word ptr [r15+2*rdi]
inc eax
cmp eax, ebx
jae SHORT G_M35497_IG09
mov dword ptr [rbp-0x4C], eax
mov edi, eax
movzx rdx, word ptr [r15+2*rdi]
cmp ecx, edx
jne SHORT G_M35497_IG12
mov edi, dword ptr [rbp-0x40]
mov rsi, bword ptr [rbp-0x38]
mov ecx, dword ptr [rbp-0x30]
cmp edi, ecx
jae SHORT G_M35497_IG10
;; size=124 bbWeight=4 PerfScore 129.00
G_M35497_IG08:
mov ecx, edi
mov word ptr [rsi+2*rcx], dx
inc edi
mov dword ptr [rbp-0x40], edi
jmp SHORT G_M35497_IG11
- align [0 bytes for IG19]
+ align [0 bytes for IG21]
;; size=13 bbWeight=2 PerfScore 9.00
G_M35497_IG09:
mov edx, eax
- jmp G_M35497_IG51
+ jmp G_M35497_IG53
;; size=7 bbWeight=2 PerfScore 4.50
G_M35497_IG10:
lea rdi, [rbp-0x48]
mov esi, edx
mov rcx, 0xD1FFAB1E ; code for System.Text.ValueStringBuilder:GrowAndAppend(ushort):this
call [rcx]System.Text.ValueStringBuilder:GrowAndAppend(ushort):this
;; size=18 bbWeight=2 PerfScore 8.00
G_M35497_IG11:
mov eax, dword ptr [rbp-0x4C]
inc eax
mov dword ptr [rbp-0x4C], eax
mov eax, dword ptr [rbp-0x4C]
jmp G_M35497_IG04
;; size=16 bbWeight=4 PerfScore 21.00
G_M35497_IG12:
cmp ecx, 123
- jne G_M35497_IG48
+ jne G_M35497_IG50
+ mov edi, dword ptr [rbp-0x40]
+ cmp edi, dword ptr [rbp-0x30]
mov dword ptr [rbp-0x50], edx
- lea rdi, [rbp-0x48]
- mov rcx, 0xD1FFAB1E ; code for System.Text.ValueStringBuilder:ToString():System.String:this
- call [rcx]System.Text.ValueStringBuilder:ToString():System.String:this
- mov gword ptr [rbp-0x88], rax
- mov dword ptr [rbp-0x78], -1
+ ja G_M35497_IG61
+ mov rcx, bword ptr [rbp-0x38]
+ mov bword ptr [rbp-0x80], rcx
+ mov dword ptr [rbp-0x78], edi
+ lea rdi, [rbp-0x80]
+ mov rcx, 0xD1FFAB1E ; code for System.Span`1[ushort]:ToString():System.String:this
+ call [rcx]System.Span`1[ushort]:ToString():System.String:this
+ mov gword ptr [rbp-0xC8], rax
+ mov rdx, gword ptr [rbp-0x48]
+ vxorps ymm0, ymm0, ymm0
+ vmovdqu ymmword ptr [rbp-0x48], ymm0
+ test rdx, rdx
+ je SHORT G_M35497_IG14
+ ;; size=76 bbWeight=4 PerfScore 70.33
+G_M35497_IG13:
+ mov rdi, 0xD1FFAB1E ; const ptr
+ mov rdi, gword ptr [rdi]
+ mov rsi, rdx
+ xor edx, edx
+ mov rax, 0xD1FFAB1E ; code for System.Buffers.SharedArrayPool`1[ushort]:Return(ushort[],ubyte):this
+ call [rax]System.Buffers.SharedArrayPool`1[ushort]:Return(ushort[],ubyte):this
+ ;; size=30 bbWeight=2 PerfScore 12.00
+G_M35497_IG14:
+ mov rsi, gword ptr [rbp-0xC8]
+ mov gword ptr [rbp-0x98], rsi
+ mov dword ptr [rbp-0x88], -1
inc dword ptr [r14+0x14]
mov rdi, gword ptr [r14+0x08]
- mov esi, dword ptr [r14+0x10]
- cmp dword ptr [rdi+0x08], esi
- jbe SHORT G_M35497_IG15
- ;; size=59 bbWeight=4 PerfScore 76.00
-G_M35497_IG13:
- lea ecx, [rsi+0x01]
+ mov eax, dword ptr [r14+0x10]
+ cmp dword ptr [rdi+0x08], eax
+ jbe SHORT G_M35497_IG17
+ ;; size=41 bbWeight=4 PerfScore 56.00
+G_M35497_IG15:
+ lea ecx, [rax+0x01]
mov dword ptr [r14+0x10], ecx
- mov esi, esi
- lea rsi, [rsi+2*rsi]
- lea rcx, bword ptr [rdi+8*rsi+0x10]
- mov bword ptr [rbp-0xB8], rcx
- mov rdi, rcx
- mov rsi, rax
+ mov eax, eax
+ lea rax, [rax+2*rax]
+ lea rax, bword ptr [rdi+8*rax+0x10]
+ mov bword ptr [rbp-0xD8], rax
+ mov rdi, rax
call CORINFO_HELP_ASSIGN_REF
xor rdi, rdi
- mov rax, bword ptr [rbp-0xB8]
+ mov rax, bword ptr [rbp-0xD8]
mov gword ptr [rax+0x08], rdi
mov dword ptr [rax+0x10], -1
- ;; size=56 bbWeight=2 PerfScore 18.00
-G_M35497_IG14:
+ ;; size=53 bbWeight=2 PerfScore 17.50
+G_M35497_IG16:
mov dword ptr [rax+0x14], edi
- jmp SHORT G_M35497_IG16
+ jmp SHORT G_M35497_IG18
;; size=5 bbWeight=2 PerfScore 6.00
-G_M35497_IG15:
+G_M35497_IG17:
xor rdi, rdi
- mov ecx, -1
- xor edx, edx
- mov gword ptr [rsp], rax
+ mov eax, -1
+ xor ecx, ecx
+ mov gword ptr [rsp], rsi
mov gword ptr [rsp+0x08], rdi
- mov dword ptr [rsp+0x10], ecx
- mov dword ptr [rsp+0x14], edx
+ mov dword ptr [rsp+0x10], eax
+ mov dword ptr [rsp+0x14], ecx
mov rdi, r14
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.ValueTuple`4[System.__Canon,int,int,System.__Canon]]:AddWithResize(System.ValueTuple`4[System.__Canon,int,int,System.__Canon]):this
call [rax]System.Collections.Generic.List`1[System.ValueTuple`4[System.__Canon,int,int,System.__Canon]]:AddWithResize(System.ValueTuple`4[System.__Canon,int,int,System.__Canon]):this
;; size=41 bbWeight=2 PerfScore 16.50
-G_M35497_IG16:
+G_M35497_IG18:
xor edi, edi
mov dword ptr [rbp-0x40], edi
;; size=5 bbWeight=4 PerfScore 5.00
-G_M35497_IG17:
+G_M35497_IG19:
xor rsi, rsi
mov eax, dword ptr [rbp-0x50]
lea ecx, [rax-0x30]
cmp ecx, 10
- jae G_M35497_IG54
+ jae G_M35497_IG56
mov edx, dword ptr [rbp-0x4C]
inc edx
cmp edx, ebx
- jae G_M35497_IG51
+ jae G_M35497_IG53
mov eax, edx
movzx rax, word ptr [r15+2*rax]
cmp eax, 125
- je G_M35497_IG39
+ je G_M35497_IG41
;; size=46 bbWeight=4 PerfScore 36.00
-G_M35497_IG18:
+G_M35497_IG20:
lea r8d, [rax-0x30]
cmp r8d, 9
- ja G_M35497_IG29
+ ja G_M35497_IG31
;; size=14 bbWeight=2 PerfScore 3.50
-G_M35497_IG19:
+G_M35497_IG21:
lea ecx, [rcx+4*rcx]
lea ecx, [rax+2*rcx-0x30]
mov dword ptr [rbp-0x58], ecx
inc edx
cmp edx, ebx
- jae G_M35497_IG51
+ jae G_M35497_IG53
mov eax, edx
movzx rax, word ptr [r15+2*rax]
lea r8d, [rax-0x30]
cmp r8d, 9
- jbe G_M35497_IG28
+ jbe G_M35497_IG30
;; size=41 bbWeight=16 PerfScore 128.00
-G_M35497_IG20:
+G_M35497_IG22:
cmp eax, 32
- jne SHORT G_M35497_IG22
- align [5 bytes for IG21]
- ;; size=10 bbWeight=2 PerfScore 3.00
-G_M35497_IG21:
+ jne SHORT G_M35497_IG24
+ align [0 bytes for IG23]
+ ;; size=5 bbWeight=2 PerfScore 2.50
+G_M35497_IG23:
inc edx
cmp edx, ebx
- jae G_M35497_IG51
+ jae G_M35497_IG53
mov eax, edx
movzx rax, word ptr [r15+2*rax]
cmp eax, 32
- je SHORT G_M35497_IG21
+ je SHORT G_M35497_IG23
;; size=22 bbWeight=16 PerfScore 80.00
-G_M35497_IG22:
+G_M35497_IG24:
cmp eax, 44
mov dword ptr [rbp-0x54], edi
- jne SHORT G_M35497_IG27
- align [2 bytes for IG23]
- ;; size=10 bbWeight=2 PerfScore 5.00
-G_M35497_IG23:
+ jne SHORT G_M35497_IG29
+ align [0 bytes for IG25]
+ ;; size=8 bbWeight=2 PerfScore 4.50
+G_M35497_IG25:
inc edx
cmp edx, ebx
- jae G_M35497_IG51
+ jae G_M35497_IG53
mov eax, edx
movzx rax, word ptr [r15+2*rax]
cmp eax, 32
- je SHORT G_M35497_IG23
+ je SHORT G_M35497_IG25
;; size=22 bbWeight=16 PerfScore 80.00
-G_M35497_IG24:
+G_M35497_IG26:
mov edi, 1
cmp eax, 45
- jne SHORT G_M35497_IG25
+ jne SHORT G_M35497_IG27
mov edi, -1
inc edx
cmp edx, ebx
- jae G_M35497_IG51
+ jae G_M35497_IG53
mov eax, edx
movzx rax, word ptr [r15+2*rax]
;; size=32 bbWeight=2 PerfScore 11.00
-G_M35497_IG25:
+G_M35497_IG27:
add eax, -48
cmp eax, 10
- jae SHORT G_M35497_IG26
+ jae SHORT G_M35497_IG28
inc edx
cmp edx, ebx
- jae G_M35497_IG51
+ jae G_M35497_IG53
mov r8d, edx
movzx r8, word ptr [r15+2*r8]
- jmp SHORT G_M35497_IG31
+ jmp SHORT G_M35497_IG33
;; size=28 bbWeight=2 PerfScore 14.50
-G_M35497_IG26:
+G_M35497_IG28:
mov dword ptr [rbp-0x4C], edx
- jmp G_M35497_IG54
- align [2 bytes for IG30]
- ;; size=10 bbWeight=1 PerfScore 3.00
-G_M35497_IG27:
+ jmp G_M35497_IG56
+ align [0 bytes for IG32]
+ ;; size=8 bbWeight=1 PerfScore 3.00
+G_M35497_IG29:
mov edi, eax
- jmp SHORT G_M35497_IG34
+ jmp SHORT G_M35497_IG36
;; size=4 bbWeight=1 PerfScore 2.25
-G_M35497_IG28:
+G_M35497_IG30:
mov ecx, dword ptr [rbp-0x58]
- jmp G_M35497_IG19
+ jmp G_M35497_IG21
;; size=8 bbWeight=8 PerfScore 24.00
-G_M35497_IG29:
+G_M35497_IG31:
mov dword ptr [rbp-0x58], ecx
- jmp G_M35497_IG20
+ jmp G_M35497_IG22
;; size=8 bbWeight=1 PerfScore 3.00
-G_M35497_IG30:
+G_M35497_IG32:
lea eax, [rax+4*rax]
lea eax, [r8+2*rax-0x30]
inc edx
cmp edx, ebx
- jae G_M35497_IG51
+ jae G_M35497_IG53
mov r8d, edx
movzx r8, word ptr [r15+2*r8]
;; size=26 bbWeight=8 PerfScore 42.00
-G_M35497_IG31:
+G_M35497_IG33:
lea r9d, [r8-0x30]
cmp r9d, 9
- jbe SHORT G_M35497_IG30
+ jbe SHORT G_M35497_IG32
;; size=10 bbWeight=16 PerfScore 28.00
-G_M35497_IG32:
+G_M35497_IG34:
imul eax, edi
mov dword ptr [rbp-0x54], eax
cmp r8d, 32
mov edi, r8d
- jne SHORT G_M35497_IG34
- align [13 bytes for IG33]
- ;; size=28 bbWeight=2 PerfScore 9.50
-G_M35497_IG33:
+ jne SHORT G_M35497_IG36
+ align [0 bytes for IG35]
+ ;; size=15 bbWeight=2 PerfScore 9.00
+G_M35497_IG35:
inc edx
cmp edx, ebx
- jae G_M35497_IG51
+ jae G_M35497_IG53
mov r8d, edx
movzx r8, word ptr [r15+2*r8]
mov edi, r8d
cmp edi, 32
- je SHORT G_M35497_IG33
+ je SHORT G_M35497_IG35
;; size=26 bbWeight=16 PerfScore 84.00
-G_M35497_IG34:
+G_M35497_IG36:
cmp edi, 125
- je SHORT G_M35497_IG37
+ je SHORT G_M35497_IG39
cmp edi, 58
- jne G_M35497_IG51
+ jne G_M35497_IG53
mov esi, edx
- align [6 bytes for IG35]
- ;; size=22 bbWeight=2 PerfScore 6.00
-G_M35497_IG35:
+ align [0 bytes for IG37]
+ ;; size=16 bbWeight=2 PerfScore 5.50
+G_M35497_IG37:
inc edx
cmp edx, ebx
- jae G_M35497_IG51
+ jae G_M35497_IG53
mov edi, edx
movzx rdi, word ptr [r15+2*rdi]
cmp edi, 125
- je SHORT G_M35497_IG38
+ je SHORT G_M35497_IG40
cmp edi, 123
- jne SHORT G_M35497_IG35
+ jne SHORT G_M35497_IG37
;; size=27 bbWeight=16 PerfScore 100.00
-G_M35497_IG36:
- jmp G_M35497_IG51
+G_M35497_IG38:
+ jmp G_M35497_IG53
;; size=5 bbWeight=1.75 PerfScore 3.50
-G_M35497_IG37:
+G_M35497_IG39:
mov ecx, dword ptr [rbp-0x58]
mov edi, dword ptr [rbp-0x54]
- jmp SHORT G_M35497_IG39
+ jmp SHORT G_M35497_IG41
;; size=8 bbWeight=1 PerfScore 4.00
-G_M35497_IG38:
+G_M35497_IG40:
inc esi
mov dword ptr [rbp-0x4C], edx
mov edi, edx
sub edi, esi
mov r8d, esi
mov r9d, edi
add r8, r9
mov r9d, ebx
cmp r8, r9
- ja G_M35497_IG59
+ ja G_M35497_IG61
lea rsi, bword ptr [r15+2*rsi]
mov bword ptr [rbp-0x68], rsi
mov dword ptr [rbp-0x60], edi
lea rdi, [rbp-0x68]
mov rsi, 0xD1FFAB1E ; code for System.ReadOnlySpan`1[ushort]:ToString():System.String:this
call [rsi]System.ReadOnlySpan`1[ushort]:ToString():System.String:this
mov rsi, rax
mov ecx, dword ptr [rbp-0x58]
mov edx, dword ptr [rbp-0x4C]
mov edi, dword ptr [rbp-0x54]
;; size=69 bbWeight=2 PerfScore 27.00
-G_M35497_IG39:
+G_M35497_IG41:
inc edx
mov dword ptr [rbp-0x4C], edx
mov eax, ecx
- mov dword ptr [rbp-0xA4], eax
+ mov dword ptr [rbp-0xB8], eax
mov ecx, edi
- mov dword ptr [rbp-0xA8], ecx
- mov gword ptr [rbp-0x98], rsi
- mov dword ptr [rbp-0x90], eax
- mov dword ptr [rbp-0x8C], ecx
+ mov dword ptr [rbp-0xBC], ecx
+ mov gword ptr [rbp-0xA8], rsi
+ mov dword ptr [rbp-0xA0], eax
+ mov dword ptr [rbp-0x9C], ecx
inc dword ptr [r14+0x14]
mov rdi, gword ptr [r14+0x08]
mov r8d, dword ptr [r14+0x10]
cmp dword ptr [rdi+0x08], r8d
- jbe SHORT G_M35497_IG40
+ jbe SHORT G_M35497_IG42
lea r9d, [r8+0x01]
mov dword ptr [r14+0x10], r9d
lea r8, [r8+2*r8]
lea r8, bword ptr [rdi+8*r8+0x10]
- mov bword ptr [rbp-0xC0], r8
+ mov bword ptr [rbp-0xE0], r8
xor rdi, rdi
mov gword ptr [r8], rdi
lea rdi, bword ptr [r8+0x08]
call CORINFO_HELP_ASSIGN_REF
- mov rdi, bword ptr [rbp-0xC0]
- mov eax, dword ptr [rbp-0xA4]
+ mov rdi, bword ptr [rbp-0xE0]
+ mov eax, dword ptr [rbp-0xB8]
mov dword ptr [rdi+0x10], eax
- mov ecx, dword ptr [rbp-0xA8]
+ mov ecx, dword ptr [rbp-0xBC]
mov dword ptr [rdi+0x14], ecx
mov eax, dword ptr [rbp-0x4C]
jmp G_M35497_IG04
;; size=129 bbWeight=4 PerfScore 130.00
-G_M35497_IG40:
+G_M35497_IG42:
xor rdi, rdi
mov gword ptr [rsp], rdi
mov gword ptr [rsp+0x08], rsi
- mov eax, dword ptr [rbp-0xA4]
+ mov eax, dword ptr [rbp-0xB8]
mov dword ptr [rsp+0x10], eax
- mov ecx, dword ptr [rbp-0xA8]
+ mov ecx, dword ptr [rbp-0xBC]
mov dword ptr [rsp+0x14], ecx
mov rdi, r14
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.ValueTuple`4[System.__Canon,int,int,System.__Canon]]:AddWithResize(System.ValueTuple`4[System.__Canon,int,int,System.__Canon]):this
call [rax]System.Collections.Generic.List`1[System.ValueTuple`4[System.__Canon,int,int,System.__Canon]]:AddWithResize(System.ValueTuple`4[System.__Canon,int,int,System.__Canon]):this
mov eax, dword ptr [rbp-0x4C]
jmp G_M35497_IG04
;; size=54 bbWeight=4 PerfScore 51.00
-G_M35497_IG41:
+G_M35497_IG43:
mov edi, dword ptr [rbp-0x30]
- mov r12d, dword ptr [rbp-0x6C]
+ mov r12d, dword ptr [rbp-0xB4]
sub edi, r12d
cmp dword ptr [rbp-0x40], edi
- jle SHORT G_M35497_IG42
+ jle SHORT G_M35497_IG44
lea rdi, [rbp-0x48]
mov esi, r12d
mov rax, 0xD1FFAB1E ; code for System.Text.ValueStringBuilder:Grow(int):this
call [rax]System.Text.ValueStringBuilder:Grow(int):this
- ;; size=34 bbWeight=0.50 PerfScore 4.62
-G_M35497_IG42:
+ ;; size=37 bbWeight=0.50 PerfScore 4.62
+G_M35497_IG44:
mov edx, dword ptr [rbp-0x40]
cmp edx, dword ptr [rbp-0x30]
- ja G_M35497_IG59
+ ja G_M35497_IG61
mov rdi, bword ptr [rbp-0x38]
mov esi, edx
lea rdi, bword ptr [rdi+2*rsi]
mov esi, dword ptr [rbp-0x30]
sub esi, edx
cmp r12d, esi
- ja G_M35497_IG58
+ ja G_M35497_IG60
mov edx, r12d
add rdx, rdx
- mov rsi, bword ptr [rbp-0xB0]
+ mov rsi, bword ptr [rbp-0xD0]
mov rax, 0xD1FFAB1E ; code for System.SpanHelpers:Memmove(byref,byref,ulong)
call [rax]System.SpanHelpers:Memmove(byref,byref,ulong)
- mov ecx, r12d
- add ecx, dword ptr [rbp-0x40]
- mov dword ptr [rbp-0x40], ecx
+ add r12d, dword ptr [rbp-0x40]
+ mov dword ptr [rbp-0x40], r12d
lea rdi, [rbp-0x48]
mov rax, 0xD1FFAB1E ; code for System.Text.ValueStringBuilder:ToString():System.String:this
call [rax]System.Text.ValueStringBuilder:ToString():System.String:this
inc dword ptr [r14+0x14]
mov rdi, gword ptr [r14+0x08]
mov esi, dword ptr [r14+0x10]
mov ecx, dword ptr [rdi+0x08]
cmp ecx, esi
- jbe SHORT G_M35497_IG44
+ jbe SHORT G_M35497_IG46
lea ecx, [rsi+0x01]
mov dword ptr [r14+0x10], ecx
lea rsi, [rsi+2*rsi]
lea r14, bword ptr [rdi+8*rsi+0x10]
mov rdi, r14
mov rsi, rax
call CORINFO_HELP_ASSIGN_REF
xor rdi, rdi
mov gword ptr [r14+0x08], rdi
mov dword ptr [r14+0x10], -1
- ;; size=146 bbWeight=0.50 PerfScore 18.50
-G_M35497_IG43:
+ ;; size=145 bbWeight=0.50 PerfScore 18.38
+G_M35497_IG45:
mov dword ptr [r14+0x14], edi
- jmp SHORT G_M35497_IG45
+ jmp SHORT G_M35497_IG47
;; size=6 bbWeight=0.50 PerfScore 1.50
-G_M35497_IG44:
+G_M35497_IG46:
xor rdi, rdi
mov ecx, -1
xor edx, edx
mov gword ptr [rsp], rax
mov gword ptr [rsp+0x08], rdi
mov dword ptr [rsp+0x10], ecx
mov dword ptr [rsp+0x14], edx
mov rdi, r14
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.ValueTuple`4[System.__Canon,int,int,System.__Canon]]:AddWithResize(System.ValueTuple`4[System.__Canon,int,int,System.__Canon]):this
call [rax]System.Collections.Generic.List`1[System.ValueTuple`4[System.__Canon,int,int,System.__Canon]]:AddWithResize(System.ValueTuple`4[System.__Canon,int,int,System.__Canon]):this
;; size=41 bbWeight=0.50 PerfScore 4.12
-G_M35497_IG45:
+G_M35497_IG47:
mov eax, 1
- cmp qword ptr [rbp-0xC8], 0xD1FFAB1E
- je SHORT G_M35497_IG46
+ cmp qword ptr [rbp-0xE8], 0xD1FFAB1E
+ je SHORT G_M35497_IG48
call CORINFO_HELP_FAIL_FAST
;; size=23 bbWeight=0.50 PerfScore 2.12
-G_M35497_IG46:
+G_M35497_IG48:
nop
;; size=1 bbWeight=0.50 PerfScore 0.12
-G_M35497_IG47:
+G_M35497_IG49:
lea rsp, [rbp-0x28]
pop rbx
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
;; size=15 bbWeight=0.50 PerfScore 2.25
-G_M35497_IG48:
+G_M35497_IG50:
mov dword ptr [r12], 75
mov eax, dword ptr [rbp-0x4C]
mov dword ptr [r13], eax
xor eax, eax
- cmp qword ptr [rbp-0xC8], 0xD1FFAB1E
- je SHORT G_M35497_IG49
+ cmp qword ptr [rbp-0xE8], 0xD1FFAB1E
+ je SHORT G_M35497_IG51
call CORINFO_HELP_FAIL_FAST
;; size=35 bbWeight=0.50 PerfScore 3.62
-G_M35497_IG49:
+G_M35497_IG51:
nop
;; size=1 bbWeight=0.50 PerfScore 0.12
-G_M35497_IG50:
+G_M35497_IG52:
lea rsp, [rbp-0x28]
pop rbx
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
;; size=15 bbWeight=0.50 PerfScore 2.25
-G_M35497_IG51:
+G_M35497_IG53:
mov dword ptr [r12], 76
mov dword ptr [r13], edx
xor eax, eax
- cmp qword ptr [rbp-0xC8], 0xD1FFAB1E
- je SHORT G_M35497_IG52
+ cmp qword ptr [rbp-0xE8], 0xD1FFAB1E
+ je SHORT G_M35497_IG54
call CORINFO_HELP_FAIL_FAST
;; size=32 bbWeight=1.75 PerfScore 10.94
-G_M35497_IG52:
+G_M35497_IG54:
nop
;; size=1 bbWeight=1.75 PerfScore 0.44
-G_M35497_IG53:
+G_M35497_IG55:
lea rsp, [rbp-0x28]
pop rbx
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
;; size=15 bbWeight=1.75 PerfScore 7.88
-G_M35497_IG54:
+G_M35497_IG56:
mov dword ptr [r12], 77
mov edx, dword ptr [rbp-0x4C]
mov dword ptr [r13], edx
xor eax, eax
- cmp qword ptr [rbp-0xC8], 0xD1FFAB1E
- je SHORT G_M35497_IG55
+ cmp qword ptr [rbp-0xE8], 0xD1FFAB1E
+ je SHORT G_M35497_IG57
call CORINFO_HELP_FAIL_FAST
;; size=35 bbWeight=0.50 PerfScore 3.62
-G_M35497_IG55:
+G_M35497_IG57:
nop
;; size=1 bbWeight=0.50 PerfScore 0.12
-G_M35497_IG56:
+G_M35497_IG58:
lea rsp, [rbp-0x28]
pop rbx
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
;; size=15 bbWeight=0.50 PerfScore 2.25
-G_M35497_IG57:
+G_M35497_IG59:
call CORINFO_HELP_RNGCHKFAIL
;; size=5 bbWeight=0 PerfScore 0.00
-G_M35497_IG58:
+G_M35497_IG60:
mov rax, 0xD1FFAB1E ; code for System.ThrowHelper:ThrowArgumentException_DestinationTooShort()
call [rax]System.ThrowHelper:ThrowArgumentException_DestinationTooShort()
int3
;; size=13 bbWeight=0 PerfScore 0.00
-G_M35497_IG59:
+G_M35497_IG61:
mov rax, 0xD1FFAB1E ; code for System.ThrowHelper:ThrowArgumentOutOfRangeException()
call [rax]System.ThrowHelper:ThrowArgumentOutOfRangeException()
int3
;; size=13 bbWeight=0 PerfScore 0.00
-; Total bytes of code 1683, prolog size 84, PerfScore 1393.58, instruction count 459, allocated bytes for code 1683 (MethodHash=42607556) for method System.Text.CompositeFormat:TryParseLiterals(System.ReadOnlySpan`1[ushort],System.Collections.Generic.List`1[System.ValueTuple`4[System.String,int,int,System.String]],byref,byref):ubyte (FullOpts)
+; Total bytes of code 1749, prolog size 87, PerfScore 1456.29, instruction count 475, allocated bytes for code 1749 (MethodHash=42607556) for method System.Text.CompositeFormat:TryParseLiterals(System.ReadOnlySpan`1[ushort],System.Collections.Generic.List`1[System.ValueTuple`4[System.String,int,int,System.String]],byref,byref):ubyte (FullOpts)
17 (1.499% of base) - System.__DTString:MatchSpecifiedWords(System.String,ubyte,byref):ubyte:this
; Assembly listing for method System.__DTString:MatchSpecifiedWords(System.String,ubyte,byref):ubyte:this (FullOpts)
; Emitting BLENDED_CODE for X64 with AVX - Unix
; FullOpts code
; optimized code
; rbp based frame
; fully interruptible
; No PGO data
; 0 inlinees with PGO data; 92 single block inlinees; 34 inlinees without PGO data
; Final local variable assignments
;
; V00 this [V00,T33] ( 3, 3 ) byref -> rbx this single-def
; V01 arg1 [V01,T34] ( 3, 3 ) ref -> r15 class-hnd single-def <System.String>
; V02 arg2 [V02,T38] ( 3, 2.50) ubyte -> r13 single-def
; V03 arg3 [V03,T35] ( 3, 3 ) byref -> r14 single-def
-; V04 loc0 [V04,T56] ( 2, 2 ) int -> rcx
+; V04 loc0 [V04,T57] ( 2, 2 ) int -> rcx
; V05 loc1 [V05,T05] ( 13, 30.50) int -> [rbp-0x34] ptr
; V06 loc2 [V06,T01] ( 16, 98 ) int -> [rbp-0x38] ptr
; V07 loc3 [V07,T07] ( 8, 25 ) int -> [rbp-0x3C] ptr
-; V08 loc4 [V08,T06] ( 10, 26 ) int -> [rbp-0x40] ptr
-; V09 loc5 [V09,T50] ( 4, 2 ) int -> rdx
-; V10 loc6 [V10,T51] ( 4, 2 ) int -> rdi
+; V08 loc4 [V08,T06] ( 9, 24 ) int -> [rbp-0x40] ptr
+; V09 loc5 [V09,T51] ( 4, 2 ) int -> rdx
+; V10 loc6 [V10,T52] ( 4, 2 ) int -> rdi
;# V11 OutArgs [V11 ] ( 1, 1 ) struct ( 0) [rsp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
;* V12 tmp1 [V12 ] ( 0, 0 ) struct (16) zero-ref "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
;* V13 tmp2 [V13 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
; V14 tmp3 [V14,T13] ( 3, 12 ) byref -> rax "Span.get_Item ptrToSpan"
-; V15 tmp4 [V15,T16] ( 2, 8 ) ref -> rdi class-hnd exact "impAppendStmt" <System.Globalization.CompareInfo>
+; V15 tmp4 [V15,T17] ( 2, 8 ) ref -> rdi class-hnd exact "impAppendStmt" <System.Globalization.CompareInfo>
;* V16 tmp5 [V16 ] ( 0, 0 ) struct (16) zero-ref "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
;* V17 tmp6 [V17 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V18 tmp7 [V18 ] ( 0, 0 ) struct (16) zero-ref "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
;* V19 tmp8 [V19 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
-; V20 tmp9 [V20,T45] ( 3, 3 ) byref -> rbx single-def "Span.get_Item ptrToSpan"
-; V21 tmp10 [V21,T52] ( 2, 2 ) ref -> rdi class-hnd exact single-def "impAppendStmt" <System.Globalization.CompareInfo>
+; V20 tmp9 [V20,T46] ( 3, 3 ) byref -> rbx single-def "Span.get_Item ptrToSpan"
+; V21 tmp10 [V21,T53] ( 2, 2 ) ref -> rdi class-hnd exact single-def "impAppendStmt" <System.Globalization.CompareInfo>
;* V22 tmp11 [V22 ] ( 0, 0 ) struct (16) zero-ref multireg-arg "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
;* V23 tmp12 [V23 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
; V24 tmp13 [V24,T02] ( 3, 96 ) byref -> rdi "Span.get_Item ptrToSpan"
-; V25 tmp14 [V25,T53] ( 2, 2 ) ref -> rdi class-hnd exact single-def "impAppendStmt" <System.Globalization.CompareInfo>
+; V25 tmp14 [V25,T54] ( 2, 2 ) ref -> rdi class-hnd exact single-def "impAppendStmt" <System.Globalization.CompareInfo>
;* V26 tmp15 [V26 ] ( 0, 0 ) struct (16) zero-ref multireg-arg "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
;* V27 tmp16 [V27 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
-; V28 tmp17 [V28,T48] ( 3, 3 ) int -> r8 "Inlining Arg"
-; V29 tmp18 [V29,T49] ( 3, 3 ) int -> rdx "Inlining Arg"
-; V30 tmp19 [V30,T46] ( 3, 3 ) byref -> rcx single-def "Inlining Arg"
+; V28 tmp17 [V28,T49] ( 3, 3 ) int -> r8 "Inlining Arg"
+; V29 tmp18 [V29,T50] ( 3, 3 ) int -> rdx "Inlining Arg"
+; V30 tmp19 [V30,T47] ( 3, 3 ) byref -> rcx single-def "Inlining Arg"
;* V31 tmp20 [V31 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
;* V32 tmp21 [V32 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
;* V33 tmp22 [V33 ] ( 0, 0 ) struct (16) zero-ref multireg-arg "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
;* V34 tmp23 [V34 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
;* V35 tmp24 [V35 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
-; V36 tmp25 [V36,T54] ( 2, 2 ) byref -> rcx single-def "Inlining Arg"
-; V37 tmp26 [V37,T57] ( 2, 2 ) int -> r8 "Inlining Arg"
+; V36 tmp25 [V36,T55] ( 2, 2 ) byref -> rcx single-def "Inlining Arg"
+; V37 tmp26 [V37,T58] ( 2, 2 ) int -> r8 "Inlining Arg"
;* V38 tmp27 [V38 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
;* V39 tmp28 [V39 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
-; V40 tmp29 [V40,T55] ( 2, 2 ) byref -> rdi single-def "Inlining Arg"
-; V41 tmp30 [V41,T58] ( 2, 2 ) int -> r8 "Inlining Arg"
+; V40 tmp29 [V40,T56] ( 2, 2 ) byref -> rdi single-def "Inlining Arg"
+; V41 tmp30 [V41,T59] ( 2, 2 ) int -> r8 "Inlining Arg"
;* V42 tmp31 [V42 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
;* V43 tmp32 [V43 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
;* V44 tmp33 [V44 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
; V45 tmp34 [V45,T72] ( 2, 1 ) int -> rdi "Inline return value spill temp"
;* V46 tmp35 [V46 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V47 tmp36 [V47 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V48 tmp37 [V48 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
;* V49 tmp38 [V49 ] ( 0, 0 ) int -> zero-ref "impAppendStmt"
;* V50 tmp39 [V50 ] ( 0, 0 ) byref -> zero-ref single-def ptr "Inline stloc first use temp"
;* V51 tmp40 [V51 ] ( 0, 0 ) byref -> zero-ref single-def ptr "Inline stloc first use temp"
;* V52 tmp41 [V52 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V53 tmp42 [V53 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V54 tmp43 [V54 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V55 tmp44 [V55 ] ( 0, 0 ) short -> zero-ref ptr "Inlining Arg"
;* V56 tmp45 [V56 ] ( 0, 0 ) int -> zero-ref ptr "Inlining Arg"
;* V57 tmp46 [V57 ] ( 0, 0 ) int -> zero-ref ptr "Inline return value spill temp"
;* V58 tmp47 [V58 ] ( 0, 0 ) short -> zero-ref ld-addr-op ptr "Inlining Arg"
-;* V59 tmp48 [V59 ] ( 0, 0 ) short -> zero-ref ld-addr-op "Inlining Arg"
+;* V59 tmp48 [V59 ] ( 0, 0 ) short -> zero-ref "Inlining Arg"
;* V60 tmp49 [V60 ] ( 0, 0 ) ushort -> zero-ref "Inlining Arg"
;* V61 tmp50 [V61 ] ( 0, 0 ) short -> zero-ref ptr "Inlining Arg"
;* V62 tmp51 [V62 ] ( 0, 0 ) short -> zero-ref ptr "Inlining Arg"
;* V63 tmp52 [V63 ] ( 0, 0 ) int -> zero-ref ptr "Inlining Arg"
;* V64 tmp53 [V64 ] ( 0, 0 ) int -> zero-ref ptr "Inline return value spill temp"
-;* V65 tmp54 [V65 ] ( 0, 0 ) short -> zero-ref ld-addr-op ptr "Inlining Arg"
-;* V66 tmp55 [V66 ] ( 0, 0 ) short -> zero-ref ld-addr-op ptr "Inlining Arg"
+;* V65 tmp54 [V65 ] ( 0, 0 ) ushort -> zero-ref ptr "Inline stloc first use temp"
+;* V66 tmp55 [V66 ] ( 0, 0 ) ushort -> zero-ref ptr "Inline stloc first use temp"
;* V67 tmp56 [V67 ] ( 0, 0 ) ushort -> zero-ref "Inline stloc first use temp"
-;* V68 tmp57 [V68 ] ( 0, 0 ) short -> zero-ref ld-addr-op "Inlining Arg"
-;* V69 tmp58 [V69 ] ( 0, 0 ) short -> zero-ref ld-addr-op "Inlining Arg"
-;* V70 tmp59 [V70 ] ( 0, 0 ) ushort -> zero-ref ptr "Inline return value spill temp"
-;* V71 tmp60 [V71 ] ( 0, 0 ) ushort -> zero-ref ptr "Inlining Arg"
-;* V72 tmp61 [V72 ] ( 0, 0 ) ushort -> zero-ref ptr "Inlining Arg"
-;* V73 tmp62 [V73 ] ( 0, 0 ) ushort -> zero-ref "Inlining Arg"
-;* V74 tmp63 [V74 ] ( 0, 0 ) ushort -> zero-ref "Inlining Arg"
-;* V75 tmp64 [V75,T80] ( 0, 0 ) short -> zero-ref ptr "Inlining Arg"
-;* V76 tmp65 [V76,T81] ( 0, 0 ) short -> zero-ref ptr "Inlining Arg"
-;* V77 tmp66 [V77,T82] ( 0, 0 ) short -> zero-ref ptr "Inlining Arg"
-;* V78 tmp67 [V78 ] ( 0, 0 ) int -> zero-ref ptr "Inlining Arg"
-; V79 tmp68 [V79,T73] ( 2, 1 ) int -> rax "Inline return value spill temp"
-;* V80 tmp69 [V80 ] ( 0, 0 ) short -> zero-ref ld-addr-op ptr "Inlining Arg"
-;* V81 tmp70 [V81 ] ( 0, 0 ) short -> zero-ref ld-addr-op ptr "Inlining Arg"
-;* V82 tmp71 [V82 ] ( 0, 0 ) short -> zero-ref ld-addr-op ptr "Inlining Arg"
-;* V83 tmp72 [V83 ] ( 0, 0 ) short -> zero-ref ld-addr-op "Inlining Arg"
-;* V84 tmp73 [V84 ] ( 0, 0 ) short -> zero-ref ld-addr-op "Inlining Arg"
-;* V85 tmp74 [V85 ] ( 0, 0 ) short -> zero-ref ld-addr-op "Inlining Arg"
-;* V86 tmp75 [V86 ] ( 0, 0 ) ushort -> zero-ref "Inlining Arg"
-;* V87 tmp76 [V87 ] ( 0, 0 ) ushort -> zero-ref "Inlining Arg"
-;* V88 tmp77 [V88 ] ( 0, 0 ) ushort -> zero-ref "Inlining Arg"
+;* V68 tmp57 [V68 ] ( 0, 0 ) ushort -> zero-ref ptr "Inline return value spill temp"
+;* V69 tmp58 [V69,T80] ( 0, 0 ) short -> zero-ref ptr "Inlining Arg"
+;* V70 tmp59 [V70,T81] ( 0, 0 ) short -> zero-ref ptr "Inlining Arg"
+;* V71 tmp60 [V71,T82] ( 0, 0 ) short -> zero-ref ptr "Inlining Arg"
+;* V72 tmp61 [V72 ] ( 0, 0 ) int -> zero-ref ptr "Inlining Arg"
+; V73 tmp62 [V73,T73] ( 2, 1 ) int -> rax "Inline return value spill temp"
+;* V74 tmp63 [V74 ] ( 0, 0 ) short -> zero-ref ld-addr-op ptr "Inlining Arg"
+;* V75 tmp64 [V75 ] ( 0, 0 ) short -> zero-ref ld-addr-op ptr "Inlining Arg"
+;* V76 tmp65 [V76 ] ( 0, 0 ) short -> zero-ref ld-addr-op ptr "Inlining Arg"
+;* V77 tmp66 [V77 ] ( 0, 0 ) short -> zero-ref "Inlining Arg"
+;* V78 tmp67 [V78 ] ( 0, 0 ) short -> zero-ref "Inlining Arg"
+;* V79 tmp68 [V79 ] ( 0, 0 ) short -> zero-ref "Inlining Arg"
+;* V80 tmp69 [V80 ] ( 0, 0 ) ushort -> zero-ref "Inlining Arg"
+;* V81 tmp70 [V81 ] ( 0, 0 ) ushort -> zero-ref "Inlining Arg"
+;* V82 tmp71 [V82 ] ( 0, 0 ) ushort -> zero-ref "Inlining Arg"
+;* V83 tmp72 [V83 ] ( 0, 0 ) short -> zero-ref "Inlining Arg"
+;* V84 tmp73 [V84 ] ( 0, 0 ) short -> zero-ref "Inlining Arg"
+;* V85 tmp74 [V85 ] ( 0, 0 ) short -> zero-ref "Inlining Arg"
+;* V86 tmp75 [V86 ] ( 0, 0 ) short -> zero-ref "Inlining Arg"
+;* V87 tmp76 [V87 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
+;* V88 tmp77 [V88 ] ( 0, 0 ) short -> zero-ref "Inlining Arg"
;* V89 tmp78 [V89 ] ( 0, 0 ) short -> zero-ref "Inlining Arg"
;* V90 tmp79 [V90 ] ( 0, 0 ) short -> zero-ref "Inlining Arg"
;* V91 tmp80 [V91 ] ( 0, 0 ) short -> zero-ref "Inlining Arg"
;* V92 tmp81 [V92 ] ( 0, 0 ) short -> zero-ref "Inlining Arg"
;* V93 tmp82 [V93 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
-;* V94 tmp83 [V94 ] ( 0, 0 ) short -> zero-ref "Inlining Arg"
-;* V95 tmp84 [V95 ] ( 0, 0 ) short -> zero-ref "Inlining Arg"
-;* V96 tmp85 [V96 ] ( 0, 0 ) short -> zero-ref "Inlining Arg"
-;* V97 tmp86 [V97 ] ( 0, 0 ) short -> zero-ref "Inlining Arg"
-;* V98 tmp87 [V98 ] ( 0, 0 ) short -> zero-ref "Inlining Arg"
-;* V99 tmp88 [V99 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
-;* V100 tmp89 [V100 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
-;* V101 tmp90 [V101 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
-; V102 tmp91 [V102,T41] ( 2, 4 ) ubyte -> rax "Inline return value spill temp"
-; V103 tmp92 [V103,T10] ( 4, 16 ) ushort -> rax "Inlining Arg"
-;* V104 tmp93 [V104 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline stloc first use temp" <System.ReadOnlySpan`1[ubyte]>
-;* V105 tmp94 [V105 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ubyte]>
-;* V106 tmp95 [V106 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline stloc first use temp" <System.ReadOnlySpan`1[ubyte]>
-;* V107 tmp96 [V107 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ubyte]>
-; V108 tmp97 [V108,T14] ( 3, 12 ) byref -> rcx "Inlining Arg"
-;* V109 tmp98 [V109 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V110 tmp99 [V110 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
-;* V111 tmp100 [V111 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
-;* V112 tmp101 [V112 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V113 tmp102 [V113 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
-;* V114 tmp103 [V114 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
-;* V115 tmp104 [V115 ] ( 0, 0 ) int -> zero-ref "Inline return value spill temp"
-;* V116 tmp105 [V116 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
+;* V94 tmp83 [V94 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
+;* V95 tmp84 [V95 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
+; V96 tmp85 [V96,T41] ( 2, 4 ) ubyte -> rax "Inline return value spill temp"
+; V97 tmp86 [V97,T10] ( 4, 16 ) ushort -> rax "Inlining Arg"
+;* V98 tmp87 [V98 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline stloc first use temp" <System.ReadOnlySpan`1[ubyte]>
+;* V99 tmp88 [V99 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ubyte]>
+;* V100 tmp89 [V100 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline stloc first use temp" <System.ReadOnlySpan`1[ubyte]>
+;* V101 tmp90 [V101 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ubyte]>
+; V102 tmp91 [V102,T14] ( 3, 12 ) byref -> rcx "Inlining Arg"
+;* V103 tmp92 [V103 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
+;* V104 tmp93 [V104 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
+;* V105 tmp94 [V105 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
+;* V106 tmp95 [V106 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
+;* V107 tmp96 [V107 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V108 tmp97 [V108 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
+;* V109 tmp98 [V109 ] ( 0, 0 ) int -> zero-ref "Inline return value spill temp"
+;* V110 tmp99 [V110 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
+;* V111 tmp100 [V111 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
+;* V112 tmp101 [V112 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
+;* V113 tmp102 [V113 ] ( 0, 0 ) int -> zero-ref "impAppendStmt"
+;* V114 tmp103 [V114 ] ( 0, 0 ) struct (16) zero-ref "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
+;* V115 tmp104 [V115 ] ( 0, 0 ) struct (16) zero-ref "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
+; V116 tmp105 [V116,T42] ( 2, 4 ) int -> rax "Inline return value spill temp"
;* V117 tmp106 [V117 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
-;* V118 tmp107 [V118 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
-;* V119 tmp108 [V119 ] ( 0, 0 ) int -> zero-ref "impAppendStmt"
-;* V120 tmp109 [V120 ] ( 0, 0 ) struct (16) zero-ref "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
-;* V121 tmp110 [V121 ] ( 0, 0 ) struct (16) zero-ref "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
-; V122 tmp111 [V122,T42] ( 2, 4 ) int -> rax "Inline return value spill temp"
+; V118 tmp107 [V118 ] ( 2, 4 ) byref -> [rbp-0x48] must-init pinned ptr "Inline stloc first use temp"
+;* V119 tmp108 [V119 ] ( 0, 0 ) long -> zero-ref ptr "Inline stloc first use temp"
+;* V120 tmp109 [V120 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
+; V121 tmp110 [V121 ] ( 2, 4 ) byref -> [rbp-0x50] must-init pinned ptr "Inline stloc first use temp"
+;* V122 tmp111 [V122 ] ( 0, 0 ) long -> zero-ref "Inline stloc first use temp"
;* V123 tmp112 [V123 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
-; V124 tmp113 [V124 ] ( 2, 4 ) byref -> [rbp-0x48] must-init pinned ptr "Inline stloc first use temp"
-;* V125 tmp114 [V125 ] ( 0, 0 ) long -> zero-ref ptr "Inline stloc first use temp"
+;* V124 tmp113 [V124 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
+;* V125 tmp114 [V125 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V126 tmp115 [V126 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
-; V127 tmp116 [V127 ] ( 2, 4 ) byref -> [rbp-0x50] must-init pinned ptr "Inline stloc first use temp"
-;* V128 tmp117 [V128 ] ( 0, 0 ) long -> zero-ref "Inline stloc first use temp"
-;* V129 tmp118 [V129 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
-;* V130 tmp119 [V130 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
-;* V131 tmp120 [V131 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
-;* V132 tmp121 [V132 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
-; V133 tmp122 [V133,T04] ( 2, 32 ) ubyte -> rax "Inline return value spill temp"
-; V134 tmp123 [V134,T00] ( 4,128 ) ushort -> rdi "Inlining Arg"
-;* V135 tmp124 [V135 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline stloc first use temp" <System.ReadOnlySpan`1[ubyte]>
-;* V136 tmp125 [V136 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ubyte]>
-;* V137 tmp126 [V137 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline stloc first use temp" <System.ReadOnlySpan`1[ubyte]>
-;* V138 tmp127 [V138 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ubyte]>
-;* V139 tmp128 [V139 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V140 tmp129 [V140 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
-; V141 tmp130 [V141,T11] ( 2, 16 ) byref -> rdi "Inlining Arg"
-; V142 tmp131 [V142,T12] ( 2, 16 ) int -> r8 "Inlining Arg"
-;* V143 tmp132 [V143 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
-;* V144 tmp133 [V144 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V145 tmp134 [V145 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
-; V146 tmp135 [V146,T19] ( 2, 8 ) int -> rdi "Inline return value spill temp"
-;* V147 tmp136 [V147 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
+; V127 tmp116 [V127,T04] ( 2, 32 ) ubyte -> rax "Inline return value spill temp"
+; V128 tmp117 [V128,T00] ( 4,128 ) ushort -> rdi "Inlining Arg"
+;* V129 tmp118 [V129 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline stloc first use temp" <System.ReadOnlySpan`1[ubyte]>
+;* V130 tmp119 [V130 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ubyte]>
+;* V131 tmp120 [V131 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline stloc first use temp" <System.ReadOnlySpan`1[ubyte]>
+;* V132 tmp121 [V132 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ubyte]>
+;* V133 tmp122 [V133 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
+;* V134 tmp123 [V134 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+; V135 tmp124 [V135,T11] ( 2, 16 ) byref -> rdi "Inlining Arg"
+; V136 tmp125 [V136,T12] ( 2, 16 ) int -> r8 "Inlining Arg"
+;* V137 tmp126 [V137 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
+;* V138 tmp127 [V138 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
+;* V139 tmp128 [V139 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
+; V140 tmp129 [V140,T20] ( 2, 8 ) int -> rdi "Inline return value spill temp"
+;* V141 tmp130 [V141 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
+;* V142 tmp131 [V142 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
+;* V143 tmp132 [V143 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
+;* V144 tmp133 [V144 ] ( 0, 0 ) int -> zero-ref "impAppendStmt"
+;* V145 tmp134 [V145 ] ( 0, 0 ) byref -> zero-ref ptr "Inline stloc first use temp"
+;* V146 tmp135 [V146 ] ( 0, 0 ) byref -> zero-ref ptr "Inline stloc first use temp"
+;* V147 tmp136 [V147 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V148 tmp137 [V148 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
-;* V149 tmp138 [V149 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
-;* V150 tmp139 [V150 ] ( 0, 0 ) int -> zero-ref "impAppendStmt"
-;* V151 tmp140 [V151 ] ( 0, 0 ) byref -> zero-ref ptr "Inline stloc first use temp"
-;* V152 tmp141 [V152 ] ( 0, 0 ) byref -> zero-ref ptr "Inline stloc first use temp"
-;* V153 tmp142 [V153 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
-;* V154 tmp143 [V154 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
-;* V155 tmp144 [V155 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
+;* V149 tmp138 [V149 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
+;* V150 tmp139 [V150 ] ( 0, 0 ) short -> zero-ref ptr "Inlining Arg"
+;* V151 tmp140 [V151 ] ( 0, 0 ) int -> zero-ref ptr "Inlining Arg"
+;* V152 tmp141 [V152 ] ( 0, 0 ) int -> zero-ref ptr "Inline return value spill temp"
+;* V153 tmp142 [V153 ] ( 0, 0 ) short -> zero-ref ld-addr-op ptr "Inlining Arg"
+;* V154 tmp143 [V154 ] ( 0, 0 ) short -> zero-ref "Inlining Arg"
+;* V155 tmp144 [V155 ] ( 0, 0 ) ushort -> zero-ref "Inlining Arg"
;* V156 tmp145 [V156 ] ( 0, 0 ) short -> zero-ref ptr "Inlining Arg"
-;* V157 tmp146 [V157 ] ( 0, 0 ) int -> zero-ref ptr "Inlining Arg"
-;* V158 tmp147 [V158 ] ( 0, 0 ) int -> zero-ref ptr "Inline return value spill temp"
-;* V159 tmp148 [V159 ] ( 0, 0 ) short -> zero-ref ld-addr-op ptr "Inlining Arg"
-;* V160 tmp149 [V160 ] ( 0, 0 ) short -> zero-ref ld-addr-op "Inlining Arg"
-;* V161 tmp150 [V161 ] ( 0, 0 ) ushort -> zero-ref "Inlining Arg"
-;* V162 tmp151 [V162 ] ( 0, 0 ) short -> zero-ref ptr "Inlining Arg"
-;* V163 tmp152 [V163 ] ( 0, 0 ) short -> zero-ref ptr "Inlining Arg"
-;* V164 tmp153 [V164 ] ( 0, 0 ) int -> zero-ref ptr "Inlining Arg"
-;* V165 tmp154 [V165 ] ( 0, 0 ) int -> zero-ref ptr "Inline return value spill temp"
-;* V166 tmp155 [V166 ] ( 0, 0 ) short -> zero-ref ld-addr-op ptr "Inlining Arg"
-;* V167 tmp156 [V167 ] ( 0, 0 ) short -> zero-ref ld-addr-op ptr "Inlining Arg"
-;* V168 tmp157 [V168 ] ( 0, 0 ) ushort -> zero-ref "Inline stloc first use temp"
-;* V169 tmp158 [V169 ] ( 0, 0 ) short -> zero-ref ld-addr-op "Inlining Arg"
-;* V170 tmp159 [V170 ] ( 0, 0 ) short -> zero-ref ld-addr-op "Inlining Arg"
-;* V171 tmp160 [V171 ] ( 0, 0 ) ushort -> zero-ref ptr "Inline return value spill temp"
-;* V172 tmp161 [V172 ] ( 0, 0 ) ushort -> zero-ref ptr "Inlining Arg"
-;* V173 tmp162 [V173 ] ( 0, 0 ) ushort -> zero-ref ptr "Inlining Arg"
-;* V174 tmp163 [V174 ] ( 0, 0 ) ushort -> zero-ref "Inlining Arg"
+;* V157 tmp146 [V157 ] ( 0, 0 ) short -> zero-ref ptr "Inlining Arg"
+;* V158 tmp147 [V158 ] ( 0, 0 ) int -> zero-ref ptr "Inlining Arg"
+;* V159 tmp148 [V159 ] ( 0, 0 ) int -> zero-ref ptr "Inline return value spill temp"
+;* V160 tmp149 [V160 ] ( 0, 0 ) ushort -> zero-ref ptr "Inline stloc first use temp"
+;* V161 tmp150 [V161 ] ( 0, 0 ) ushort -> zero-ref ptr "Inline stloc first use temp"
+;* V162 tmp151 [V162 ] ( 0, 0 ) ushort -> zero-ref "Inline stloc first use temp"
+;* V163 tmp152 [V163 ] ( 0, 0 ) ushort -> zero-ref ptr "Inline return value spill temp"
+;* V164 tmp153 [V164,T28] ( 0, 0 ) short -> zero-ref ptr "Inlining Arg"
+;* V165 tmp154 [V165,T29] ( 0, 0 ) short -> zero-ref ptr "Inlining Arg"
+;* V166 tmp155 [V166,T30] ( 0, 0 ) short -> zero-ref ptr "Inlining Arg"
+;* V167 tmp156 [V167 ] ( 0, 0 ) int -> zero-ref ptr "Inlining Arg"
+; V168 tmp157 [V168,T21] ( 2, 8 ) int -> rax "Inline return value spill temp"
+;* V169 tmp158 [V169 ] ( 0, 0 ) short -> zero-ref ld-addr-op ptr "Inlining Arg"
+;* V170 tmp159 [V170 ] ( 0, 0 ) short -> zero-ref ld-addr-op ptr "Inlining Arg"
+;* V171 tmp160 [V171 ] ( 0, 0 ) short -> zero-ref ld-addr-op ptr "Inlining Arg"
+;* V172 tmp161 [V172 ] ( 0, 0 ) short -> zero-ref "Inlining Arg"
+;* V173 tmp162 [V173 ] ( 0, 0 ) short -> zero-ref "Inlining Arg"
+;* V174 tmp163 [V174 ] ( 0, 0 ) short -> zero-ref "Inlining Arg"
;* V175 tmp164 [V175 ] ( 0, 0 ) ushort -> zero-ref "Inlining Arg"
-;* V176 tmp165 [V176,T27] ( 0, 0 ) short -> zero-ref ptr "Inlining Arg"
-;* V177 tmp166 [V177,T28] ( 0, 0 ) short -> zero-ref ptr "Inlining Arg"
-;* V178 tmp167 [V178,T29] ( 0, 0 ) short -> zero-ref ptr "Inlining Arg"
-;* V179 tmp168 [V179 ] ( 0, 0 ) int -> zero-ref ptr "Inlining Arg"
-; V180 tmp169 [V180,T20] ( 2, 8 ) int -> rax "Inline return value spill temp"
-;* V181 tmp170 [V181 ] ( 0, 0 ) short -> zero-ref ld-addr-op ptr "Inlining Arg"
-;* V182 tmp171 [V182 ] ( 0, 0 ) short -> zero-ref ld-addr-op ptr "Inlining Arg"
-;* V183 tmp172 [V183 ] ( 0, 0 ) short -> zero-ref ld-addr-op ptr "Inlining Arg"
-;* V184 tmp173 [V184 ] ( 0, 0 ) short -> zero-ref ld-addr-op "Inlining Arg"
-;* V185 tmp174 [V185 ] ( 0, 0 ) short -> zero-ref ld-addr-op "Inlining Arg"
-;* V186 tmp175 [V186 ] ( 0, 0 ) short -> zero-ref ld-addr-op "Inlining Arg"
-;* V187 tmp176 [V187 ] ( 0, 0 ) ushort -> zero-ref "Inlining Arg"
-;* V188 tmp177 [V188 ] ( 0, 0 ) ushort -> zero-ref "Inlining Arg"
-;* V189 tmp178 [V189 ] ( 0, 0 ) ushort -> zero-ref "Inlining Arg"
-;* V190 tmp179 [V190 ] ( 0, 0 ) short -> zero-ref "Inlining Arg"
-;* V191 tmp180 [V191 ] ( 0, 0 ) short -> zero-ref "Inlining Arg"
-;* V192 tmp181 [V192 ] ( 0, 0 ) short -> zero-ref "Inlining Arg"
-;* V193 tmp182 [V193 ] ( 0, 0 ) short -> zero-ref "Inlining Arg"
-;* V194 tmp183 [V194 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
-;* V195 tmp184 [V195 ] ( 0, 0 ) short -> zero-ref "Inlining Arg"
-;* V196 tmp185 [V196 ] ( 0, 0 ) short -> zero-ref "Inlining Arg"
-;* V197 tmp186 [V197 ] ( 0, 0 ) short -> zero-ref "Inlining Arg"
-;* V198 tmp187 [V198 ] ( 0, 0 ) short -> zero-ref "Inlining Arg"
-;* V199 tmp188 [V199 ] ( 0, 0 ) short -> zero-ref "Inlining Arg"
-;* V200 tmp189 [V200 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
-;* V201 tmp190 [V201 ] ( 0, 0 ) int -> zero-ref ptr "Inline return value spill temp"
-;* V202 tmp191 [V202 ] ( 0, 0 ) int -> zero-ref ptr "Inlining Arg"
-;* V203 tmp192 [V203 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V204 tmp193 [V204 ] ( 0, 0 ) struct (16) zero-ref "Inline stloc first use temp" <System.ReadOnlySpan`1[ushort]>
-;* V205 tmp194 [V205 ] ( 0, 0 ) int -> zero-ref ptr "Inlining Arg"
-;* V206 tmp195 [V206 ] ( 0, 0 ) int -> zero-ref do-not-enreg[X] addr-exposed ld-addr-op ptr "Inline ldloca(s) first use temp"
-;* V207 tmp196 [V207 ] ( 0, 0 ) ubyte -> zero-ref ptr "Inline return value spill temp"
-;* V208 tmp197 [V208 ] ( 0, 0 ) int -> zero-ref ptr "Inline return value spill temp"
-;* V209 tmp198 [V209 ] ( 0, 0 ) byref -> zero-ref ptr "Inline stloc first use temp"
-;* V210 tmp199 [V210 ] ( 0, 0 ) byref -> zero-ref ptr "Inline stloc first use temp"
-;* V211 tmp200 [V211 ] ( 0, 0 ) ushort -> zero-ref ptr "Inline stloc first use temp"
-;* V212 tmp201 [V212 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
-;* V213 tmp202 [V213 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
-;* V214 tmp203 [V214 ] ( 0, 0 ) ubyte -> zero-ref "Inlining Arg"
-;* V215 tmp204 [V215 ] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
-;* V216 tmp205 [V216 ] ( 0, 0 ) struct (64) zero-ref do-not-enreg[XS] addr-exposed ld-addr-op unsafe-buffer "Inline ldloca(s) first use temp" <System.Buffers.IndexOfAnyAsciiSearcher+AsciiState>
-;* V217 tmp206 [V217 ] ( 0, 0 ) ubyte -> zero-ref ld-addr-op ptr "Inline ldloca(s) first use temp"
-;* V218 tmp207 [V218 ] ( 0, 0 ) byref -> zero-ref
-;* V219 tmp208 [V219 ] ( 0, 0 ) byref -> zero-ref ptr
-;* V220 tmp209 [V220 ] ( 0, 0 ) int -> zero-ref
-;* V221 tmp210 [V221 ] ( 0, 0 ) byref -> zero-ref
-;* V222 tmp211 [V222 ] ( 0, 0 ) byref -> zero-ref ptr
-;* V223 tmp212 [V223 ] ( 0, 0 ) int -> zero-ref
-; V224 tmp213 [V224,T83] ( 1, 1 ) int -> [rbp-0x54] do-not-enreg[V] "GSCookie dummy for inlinee"
-;* V225 tmp214 [V225 ] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
-;* V226 tmp215 [V226 ] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
-;* V227 tmp216 [V227 ] ( 0, 0 ) long -> zero-ref ptr "Inlining Arg"
-;* V228 tmp217 [V228 ] ( 0, 0 ) long -> zero-ref ptr "Inline stloc first use temp"
-;* V229 tmp218 [V229 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline stloc first use temp" <System.ReadOnlySpan`1[ushort]>
-;* V230 tmp219 [V230 ] ( 0, 0 ) int -> zero-ref ptr "Inline stloc first use temp"
-;* V231 tmp220 [V231 ] ( 0, 0 ) ushort -> zero-ref ptr "Inline stloc first use temp"
-;* V232 tmp221 [V232 ] ( 0, 0 ) int -> zero-ref ptr "Inline stloc first use temp"
-;* V233 tmp222 [V233 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
-;* V234 tmp223 [V234 ] ( 0, 0 ) long -> zero-ref ptr "dup spill"
-;* V235 tmp224 [V235 ] ( 0, 0 ) simd16 -> zero-ref "Inlining Arg" <System.Runtime.Intrinsics.Vector128`1[ubyte]>
-;* V236 tmp225 [V236 ] ( 0, 0 ) simd16 -> zero-ref "Inlining Arg" <System.Runtime.Intrinsics.Vector128`1[ubyte]>
-;* V237 tmp226 [V237 ] ( 0, 0 ) simd32 -> zero-ref "Inline return value spill temp" <System.Runtime.Intrinsics.Vector256`1[ubyte]>
-;* V238 tmp227 [V238 ] ( 0, 0 ) simd32 -> zero-ref "Inline stloc first use temp" <System.Runtime.Intrinsics.Vector256`1[ubyte]>
-;* V239 tmp228 [V239 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
-;* V240 tmp229 [V240 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
-; V241 tmp230 [V241,T47] ( 3, 3 ) byref -> rcx single-def "Inlining Arg"
-;* V242 tmp231 [V242 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V243 tmp232 [V243 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
-;* V244 tmp233 [V244 ] ( 0, 0 ) struct (16) zero-ref multireg-arg "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
-;* V245 tmp234 [V245 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V246 tmp235 [V246 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
-;* V247 tmp236 [V247 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
-; V248 tmp237 [V248,T37] ( 3, 5 ) int -> rax "Single return block return value"
-; V249 FramesRoot [V249,T15] ( 6, 10 ) long -> r12 "Pinvoke FrameListRoot"
-; V250 PInvokeFrame[V250 ] ( 8, 12 ) struct (72) [rbp-0xB8] do-not-enreg[XS] addr-exposed "Pinvoke FrameVar"
-; V251 tmp240 [V251,T62] ( 2, 1 ) byref -> rdi "field V12._reference (fldOffset=0x0)" P-INDEP
-; V252 tmp241 [V252,T74] ( 2, 1 ) int -> r8 "field V12._length (fldOffset=0x8)" P-INDEP
-;* V253 tmp242 [V253 ] ( 0, 0 ) byref -> zero-ref single-def ptr "field V13._reference (fldOffset=0x0)" P-INDEP
-;* V254 tmp243 [V254 ] ( 0, 0 ) int -> zero-ref "field V13._length (fldOffset=0x8)" P-INDEP
-; V255 tmp244 [V255,T30] ( 3, 6 ) byref -> rsi "field V16._reference (fldOffset=0x0)" P-INDEP
-; V256 tmp245 [V256,T32] ( 2, 4 ) int -> rcx "field V16._length (fldOffset=0x8)" P-INDEP
-;* V257 tmp246 [V257 ] ( 0, 0 ) byref -> zero-ref ptr "field V17._reference (fldOffset=0x0)" P-INDEP
-;* V258 tmp247 [V258 ] ( 0, 0 ) int -> zero-ref ptr "field V17._length (fldOffset=0x8)" P-INDEP
-; V259 tmp248 [V259,T17] ( 2, 8 ) byref -> rdi "field V18._reference (fldOffset=0x0)" P-INDEP
-; V260 tmp249 [V260,T21] ( 2, 8 ) int -> r8 "field V18._length (fldOffset=0x8)" P-INDEP
-;* V261 tmp250 [V261 ] ( 0, 0 ) byref -> zero-ref ptr "field V19._reference (fldOffset=0x0)" P-INDEP
-;* V262 tmp251 [V262 ] ( 0, 0 ) int -> zero-ref ptr "field V19._length (fldOffset=0x8)" P-INDEP
-; V263 tmp252 [V263,T63] ( 2, 1 ) byref -> rsi single-def "field V22._reference (fldOffset=0x0)" P-INDEP
-; V264 tmp253 [V264,T44] ( 4, 2 ) int -> rdx "field V22._length (fldOffset=0x8)" P-INDEP
-;* V265 tmp254 [V265 ] ( 0, 0 ) byref -> zero-ref "field V23._reference (fldOffset=0x0)" P-INDEP
-;* V266 tmp255 [V266 ] ( 0, 0 ) int -> zero-ref "field V23._length (fldOffset=0x8)" P-INDEP
-; V267 tmp256 [V267,T64] ( 2, 1 ) byref -> rsi single-def "field V26._reference (fldOffset=0x0)" P-INDEP
-; V268 tmp257 [V268,T75] ( 2, 1 ) int -> rdx "field V26._length (fldOffset=0x8)" P-INDEP
-;* V269 tmp258 [V269 ] ( 0, 0 ) byref -> zero-ref "field V27._reference (fldOffset=0x0)" P-INDEP
-;* V270 tmp259 [V270 ] ( 0, 0 ) int -> zero-ref "field V27._length (fldOffset=0x8)" P-INDEP
-; V271 tmp260 [V271,T65] ( 2, 1 ) byref -> rsi single-def "field V31._reference (fldOffset=0x0)" P-INDEP
-; V272 tmp261 [V272,T76] ( 2, 1 ) int -> rdx "field V31._length (fldOffset=0x8)" P-INDEP
-; V273 tmp262 [V273,T66] ( 2, 1 ) byref -> rcx single-def "field V33._reference (fldOffset=0x0)" P-INDEP
-; V274 tmp263 [V274,T77] ( 2, 1 ) int -> r8 "field V33._length (fldOffset=0x8)" P-INDEP
-; V275 tmp264 [V275,T67] ( 2, 1 ) byref -> rcx single-def "field V34._reference (fldOffset=0x0)" P-INDEP
-; V276 tmp265 [V276,T78] ( 2, 1 ) int -> r8 "field V34._length (fldOffset=0x8)" P-INDEP
-;* V277 tmp266 [V277 ] ( 0, 0 ) byref -> zero-ref "field V35._reference (fldOffset=0x0)" P-INDEP
-;* V278 tmp267 [V278 ] ( 0, 0 ) int -> zero-ref "field V35._length (fldOffset=0x8)" P-INDEP
-; V279 tmp268 [V279,T68] ( 2, 1 ) byref -> rdi single-def "field V38._reference (fldOffset=0x0)" P-INDEP
-; V280 tmp269 [V280,T79] ( 2, 1 ) int -> r8 "field V38._length (fldOffset=0x8)" P-INDEP
-;* V281 tmp270 [V281 ] ( 0, 0 ) byref -> zero-ref single-def "field V39._reference (fldOffset=0x0)" P-INDEP
-;* V282 tmp271 [V282 ] ( 0, 0 ) int -> zero-ref "field V39._length (fldOffset=0x8)" P-INDEP
-;* V283 tmp272 [V283 ] ( 0, 0 ) byref -> zero-ref "field V42._reference (fldOffset=0x0)" P-INDEP
-;* V284 tmp273 [V284 ] ( 0, 0 ) int -> zero-ref "field V42._length (fldOffset=0x8)" P-INDEP
-;* V285 tmp274 [V285,T84] ( 0, 0 ) byref -> zero-ref single-def ptr "field V43._reference (fldOffset=0x0)" P-INDEP
-;* V286 tmp275 [V286 ] ( 0, 0 ) int -> zero-ref "field V43._length (fldOffset=0x8)" P-INDEP
-;* V287 tmp276 [V287 ] ( 0, 0 ) byref -> zero-ref single-def ptr "field V46._reference (fldOffset=0x0)" P-INDEP
-;* V288 tmp277 [V288 ] ( 0, 0 ) int -> zero-ref ptr "field V46._length (fldOffset=0x8)" P-INDEP
-;* V289 tmp278 [V289 ] ( 0, 0 ) byref -> zero-ref single-def ptr "field V47._reference (fldOffset=0x0)" P-INDEP
-;* V290 tmp279 [V290 ] ( 0, 0 ) int -> zero-ref "field V47._length (fldOffset=0x8)" P-INDEP
-;* V291 tmp280 [V291 ] ( 0, 0 ) byref -> zero-ref single-def ptr "field V53._reference (fldOffset=0x0)" P-INDEP
-;* V292 tmp281 [V292 ] ( 0, 0 ) int -> zero-ref "field V53._length (fldOffset=0x8)" P-INDEP
-;* V293 tmp282 [V293 ] ( 0, 0 ) byref -> zero-ref single-def ptr "field V54._reference (fldOffset=0x0)" P-INDEP
-;* V294 tmp283 [V294 ] ( 0, 0 ) int -> zero-ref "field V54._length (fldOffset=0x8)" P-INDEP
-;* V295 tmp284 [V295 ] ( 0, 0 ) byref -> zero-ref "field V100._reference (fldOffset=0x0)" P-INDEP
-;* V296 tmp285 [V296 ] ( 0, 0 ) int -> zero-ref "field V100._length (fldOffset=0x8)" P-INDEP
-;* V297 tmp286 [V297 ] ( 0, 0 ) byref -> zero-ref "field V101._reference (fldOffset=0x0)" P-INDEP
-;* V298 tmp287 [V298 ] ( 0, 0 ) int -> zero-ref "field V101._length (fldOffset=0x8)" P-INDEP
-;* V299 tmp288 [V299 ] ( 0, 0 ) byref -> zero-ref "field V104._reference (fldOffset=0x0)" P-INDEP
-;* V300 tmp289 [V300 ] ( 0, 0 ) int -> zero-ref "field V104._length (fldOffset=0x8)" P-INDEP
-;* V301 tmp290 [V301 ] ( 0, 0 ) byref -> zero-ref "field V105._reference (fldOffset=0x0)" P-INDEP
-;* V302 tmp291 [V302 ] ( 0, 0 ) int -> zero-ref "field V105._length (fldOffset=0x8)" P-INDEP
-;* V303 tmp292 [V303 ] ( 0, 0 ) byref -> zero-ref "field V106._reference (fldOffset=0x0)" P-INDEP
-;* V304 tmp293 [V304 ] ( 0, 0 ) int -> zero-ref "field V106._length (fldOffset=0x8)" P-INDEP
-;* V305 tmp294 [V305 ] ( 0, 0 ) byref -> zero-ref "field V107._reference (fldOffset=0x0)" P-INDEP
-;* V306 tmp295 [V306 ] ( 0, 0 ) int -> zero-ref "field V107._length (fldOffset=0x8)" P-INDEP
-; V307 tmp296 [V307,T39] ( 2, 4 ) byref -> rsi "field V109._reference (fldOffset=0x0)" P-INDEP
-;* V308 tmp297 [V308,T59] ( 0, 0 ) int -> zero-ref ptr "field V109._length (fldOffset=0x8)" P-INDEP
-; V309 tmp298 [V309,T31] ( 3, 6 ) byref -> rcx "field V111._reference (fldOffset=0x0)" P-INDEP
-;* V310 tmp299 [V310,T60] ( 0, 0 ) int -> zero-ref ptr "field V111._length (fldOffset=0x8)" P-INDEP
-; V311 tmp300 [V311,T40] ( 2, 4 ) byref -> rcx "field V112._reference (fldOffset=0x0)" P-INDEP
-;* V312 tmp301 [V312,T61] ( 0, 0 ) int -> zero-ref ptr "field V112._length (fldOffset=0x8)" P-INDEP
-;* V313 tmp302 [V313 ] ( 0, 0 ) byref -> zero-ref "field V113._reference (fldOffset=0x0)" P-INDEP
-;* V314 tmp303 [V314 ] ( 0, 0 ) int -> zero-ref "field V113._length (fldOffset=0x8)" P-INDEP
-;* V315 tmp304 [V315 ] ( 0, 0 ) byref -> zero-ref ptr "field V116._reference (fldOffset=0x0)" P-INDEP
-;* V316 tmp305 [V316 ] ( 0, 0 ) int -> zero-ref ptr "field V116._length (fldOffset=0x8)" P-INDEP
-;* V317 tmp306 [V317 ] ( 0, 0 ) byref -> zero-ref ptr "field V117._reference (fldOffset=0x0)" P-INDEP
-;* V318 tmp307 [V318 ] ( 0, 0 ) int -> zero-ref ptr "field V117._length (fldOffset=0x8)" P-INDEP
-;* V319 tmp308 [V319 ] ( 0, 0 ) byref -> zero-ref ptr "field V120._reference (fldOffset=0x0)" P-INDEP
-;* V320 tmp309 [V320 ] ( 0, 0 ) int -> zero-ref ptr "field V120._length (fldOffset=0x8)" P-INDEP
-;* V321 tmp310 [V321 ] ( 0, 0 ) byref -> zero-ref ptr "field V121._reference (fldOffset=0x0)" P-INDEP
-;* V322 tmp311 [V322 ] ( 0, 0 ) int -> zero-ref ptr "field V121._length (fldOffset=0x8)" P-INDEP
-;* V323 tmp312 [V323 ] ( 0, 0 ) byref -> zero-ref ptr "field V123._reference (fldOffset=0x0)" P-INDEP
-;* V324 tmp313 [V324 ] ( 0, 0 ) int -> zero-ref ptr "field V123._length (fldOffset=0x8)" P-INDEP
-;* V325 tmp314 [V325 ] ( 0, 0 ) byref -> zero-ref ptr "field V126._reference (fldOffset=0x0)" P-INDEP
-;* V326 tmp315 [V326 ] ( 0, 0 ) int -> zero-ref ptr "field V126._length (fldOffset=0x8)" P-INDEP
-;* V327 tmp316 [V327 ] ( 0, 0 ) byref -> zero-ref ptr "field V129._reference (fldOffset=0x0)" P-INDEP
-;* V328 tmp317 [V328 ] ( 0, 0 ) int -> zero-ref "field V129._length (fldOffset=0x8)" P-INDEP
-;* V329 tmp318 [V329 ] ( 0, 0 ) byref -> zero-ref ptr "field V130._reference (fldOffset=0x0)" P-INDEP
-;* V330 tmp319 [V330 ] ( 0, 0 ) int -> zero-ref "field V130._length (fldOffset=0x8)" P-INDEP
-;* V331 tmp320 [V331 ] ( 0, 0 ) byref -> zero-ref "field V131._reference (fldOffset=0x0)" P-INDEP
-;* V332 tmp321 [V332 ] ( 0, 0 ) int -> zero-ref "field V131._length (fldOffset=0x8)" P-INDEP
-;* V333 tmp322 [V333 ] ( 0, 0 ) byref -> zero-ref "field V132._reference (fldOffset=0x0)" P-INDEP
-;* V334 tmp323 [V334 ] ( 0, 0 ) int -> zero-ref "field V132._length (fldOffset=0x8)" P-INDEP
-;* V335 tmp324 [V335 ] ( 0, 0 ) byref -> zero-ref "field V135._reference (fldOffset=0x0)" P-INDEP
-;* V336 tmp325 [V336 ] ( 0, 0 ) int -> zero-ref "field V135._length (fldOffset=0x8)" P-INDEP
-;* V337 tmp326 [V337 ] ( 0, 0 ) byref -> zero-ref "field V136._reference (fldOffset=0x0)" P-INDEP
-;* V338 tmp327 [V338 ] ( 0, 0 ) int -> zero-ref "field V136._length (fldOffset=0x8)" P-INDEP
-;* V339 tmp328 [V339 ] ( 0, 0 ) byref -> zero-ref "field V137._reference (fldOffset=0x0)" P-INDEP
-;* V340 tmp329 [V340 ] ( 0, 0 ) int -> zero-ref "field V137._length (fldOffset=0x8)" P-INDEP
-;* V341 tmp330 [V341 ] ( 0, 0 ) byref -> zero-ref "field V138._reference (fldOffset=0x0)" P-INDEP
-;* V342 tmp331 [V342 ] ( 0, 0 ) int -> zero-ref "field V138._length (fldOffset=0x8)" P-INDEP
-; V343 tmp332 [V343,T18] ( 2, 8 ) byref -> rdi "field V139._reference (fldOffset=0x0)" P-INDEP
-; V344 tmp333 [V344,T22] ( 2, 8 ) int -> r8 "field V139._length (fldOffset=0x8)" P-INDEP
-;* V345 tmp334 [V345 ] ( 0, 0 ) byref -> zero-ref "field V140._reference (fldOffset=0x0)" P-INDEP
-;* V346 tmp335 [V346 ] ( 0, 0 ) int -> zero-ref "field V140._length (fldOffset=0x8)" P-INDEP
-;* V347 tmp336 [V347 ] ( 0, 0 ) byref -> zero-ref "field V143._reference (fldOffset=0x0)" P-INDEP
-;* V348 tmp337 [V348 ] ( 0, 0 ) int -> zero-ref "field V143._length (fldOffset=0x8)" P-INDEP
-;* V349 tmp338 [V349,T43] ( 0, 0 ) byref -> zero-ref ptr "field V144._reference (fldOffset=0x0)" P-INDEP
-;* V350 tmp339 [V350 ] ( 0, 0 ) int -> zero-ref ptr "field V144._length (fldOffset=0x8)" P-INDEP
-;* V351 tmp340 [V351 ] ( 0, 0 ) byref -> zero-ref ptr "field V147._reference (fldOffset=0x0)" P-INDEP
-;* V352 tmp341 [V352 ] ( 0, 0 ) int -> zero-ref ptr "field V147._length (fldOffset=0x8)" P-INDEP
-;* V353 tmp342 [V353 ] ( 0, 0 ) byref -> zero-ref ptr "field V148._reference (fldOffset=0x0)" P-INDEP
-;* V354 tmp343 [V354 ] ( 0, 0 ) int -> zero-ref ptr "field V148._length (fldOffset=0x8)" P-INDEP
-;* V355 tmp344 [V355 ] ( 0, 0 ) byref -> zero-ref ptr "field V154._reference (fldOffset=0x0)" P-INDEP
-;* V356 tmp345 [V356 ] ( 0, 0 ) int -> zero-ref "field V154._length (fldOffset=0x8)" P-INDEP
-;* V357 tmp346 [V357 ] ( 0, 0 ) byref -> zero-ref ptr "field V155._reference (fldOffset=0x0)" P-INDEP
-;* V358 tmp347 [V358 ] ( 0, 0 ) int -> zero-ref "field V155._length (fldOffset=0x8)" P-INDEP
-;* V359 tmp348 [V359 ] ( 0, 0 ) byref -> zero-ref ptr "field V203._reference (fldOffset=0x0)" P-INDEP
-;* V360 tmp349 [V360 ] ( 0, 0 ) int -> zero-ref ptr "field V203._length (fldOffset=0x8)" P-INDEP
-;* V361 tmp350 [V361 ] ( 0, 0 ) byref -> zero-ref ptr "field V204._reference (fldOffset=0x0)" P-INDEP
-;* V362 tmp351 [V362 ] ( 0, 0 ) int -> zero-ref ptr "field V204._length (fldOffset=0x8)" P-INDEP
-;* V363 tmp352 [V363 ] ( 0, 0 ) byref -> zero-ref ptr "field V212._reference (fldOffset=0x0)" P-INDEP
-;* V364 tmp353 [V364 ] ( 0, 0 ) int -> zero-ref ptr "field V212._length (fldOffset=0x8)" P-INDEP
-;* V365 tmp354 [V365 ] ( 0, 0 ) byref -> zero-ref ptr "field V213._reference (fldOffset=0x0)" P-INDEP
-;* V366 tmp355 [V366 ] ( 0, 0 ) int -> zero-ref "field V213._length (fldOffset=0x8)" P-INDEP
-;* V367 tmp356 [V367 ] ( 0, 0 ) byref -> zero-ref ptr "field V229._reference (fldOffset=0x0)" P-INDEP
-;* V368 tmp357 [V368 ] ( 0, 0 ) int -> zero-ref ptr "field V229._length (fldOffset=0x8)" P-INDEP
-;* V369 tmp358 [V369 ] ( 0, 0 ) byref -> zero-ref "field V239._reference (fldOffset=0x0)" P-INDEP
-;* V370 tmp359 [V370 ] ( 0, 0 ) int -> zero-ref "field V239._length (fldOffset=0x8)" P-INDEP
-;* V371 tmp360 [V371 ] ( 0, 0 ) byref -> zero-ref "field V240._reference (fldOffset=0x0)" P-INDEP
-;* V372 tmp361 [V372 ] ( 0, 0 ) int -> zero-ref "field V240._length (fldOffset=0x8)" P-INDEP
-; V373 tmp362 [V373,T69] ( 2, 1 ) byref -> rsi single-def "field V242._reference (fldOffset=0x0)" P-INDEP
-;* V374 tmp363 [V374,T85] ( 0, 0 ) int -> zero-ref ptr "field V242._length (fldOffset=0x8)" P-INDEP
-; V375 tmp364 [V375,T70] ( 2, 1 ) byref -> rcx single-def "field V244._reference (fldOffset=0x0)" P-INDEP
-;* V376 tmp365 [V376,T86] ( 0, 0 ) int -> zero-ref ptr "field V244._length (fldOffset=0x8)" P-INDEP
-; V377 tmp366 [V377,T71] ( 2, 1 ) byref -> rcx single-def "field V245._reference (fldOffset=0x0)" P-INDEP
-;* V378 tmp367 [V378,T87] ( 0, 0 ) int -> zero-ref ptr "field V245._length (fldOffset=0x8)" P-INDEP
-;* V379 tmp368 [V379 ] ( 0, 0 ) byref -> zero-ref "field V246._reference (fldOffset=0x0)" P-INDEP
-;* V380 tmp369 [V380 ] ( 0, 0 ) int -> zero-ref "field V246._length (fldOffset=0x8)" P-INDEP
-; V381 tmp370 [V381,T23] ( 2, 8 ) long -> rsi "Cast away GC"
-; V382 tmp371 [V382,T24] ( 2, 8 ) long -> rcx "Cast away GC"
-; V383 tmp372 [V383,T25] ( 2, 8 ) long -> rdi "argument with side effect"
-; V384 tmp373 [V384,T26] ( 2, 8 ) long -> rcx "argument with side effect"
-;* V385 tmp374 [V385 ] ( 0, 0 ) long -> zero-ref ptr "Cast away GC"
-; V386 GsCookie [V386 ] ( 1, 1 ) long -> [rbp-0x30] do-not-enreg[X] addr-exposed "GSSecurityCookie"
-; V387 tmp376 [V387,T03] ( 19, 66 ) byref -> [rbp-0x60] spill-single-def ptr "shadowVar"
-; V388 tmp377 [V388,T09] ( 16, 22.50) ref -> [rbp-0x68] spill-single-def ptr "shadowVar"
-; V389 tmp378 [V389,T08] ( 9, 24 ) byref -> [rbp-0x70] spill-single-def ptr "shadowVar"
-;* V390 cse0 [V390,T36] ( 0, 0 ) byref -> zero-ref "CSE #12: conservative"
+;* V176 tmp165 [V176 ] ( 0, 0 ) ushort -> zero-ref "Inlining Arg"
+;* V177 tmp166 [V177 ] ( 0, 0 ) ushort -> zero-ref "Inlining Arg"
+;* V178 tmp167 [V178 ] ( 0, 0 ) short -> zero-ref "Inlining Arg"
+;* V179 tmp168 [V179 ] ( 0, 0 ) short -> zero-ref "Inlining Arg"
+;* V180 tmp169 [V180 ] ( 0, 0 ) short -> zero-ref "Inlining Arg"
+;* V181 tmp170 [V181 ] ( 0, 0 ) short -> zero-ref "Inlining Arg"
+;* V182 tmp171 [V182 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
+;* V183 tmp172 [V183 ] ( 0, 0 ) short -> zero-ref "Inlining Arg"
+;* V184 tmp173 [V184 ] ( 0, 0 ) short -> zero-ref "Inlining Arg"
+;* V185 tmp174 [V185 ] ( 0, 0 ) short -> zero-ref "Inlining Arg"
+;* V186 tmp175 [V186 ] ( 0, 0 ) short -> zero-ref "Inlining Arg"
+;* V187 tmp176 [V187 ] ( 0, 0 ) short -> zero-ref "Inlining Arg"
+;* V188 tmp177 [V188 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
+;* V189 tmp178 [V189 ] ( 0, 0 ) int -> zero-ref ptr "Inline return value spill temp"
+;* V190 tmp179 [V190 ] ( 0, 0 ) int -> zero-ref ptr "Inlining Arg"
+;* V191 tmp180 [V191 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
+;* V192 tmp181 [V192 ] ( 0, 0 ) struct (16) zero-ref "Inline stloc first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V193 tmp182 [V193 ] ( 0, 0 ) int -> zero-ref ptr "Inlining Arg"
+;* V194 tmp183 [V194 ] ( 0, 0 ) int -> zero-ref do-not-enreg[X] addr-exposed ld-addr-op ptr "Inline ldloca(s) first use temp"
+;* V195 tmp184 [V195 ] ( 0, 0 ) ubyte -> zero-ref ptr "Inline return value spill temp"
+;* V196 tmp185 [V196 ] ( 0, 0 ) int -> zero-ref ptr "Inline return value spill temp"
+;* V197 tmp186 [V197 ] ( 0, 0 ) byref -> zero-ref ptr "Inline stloc first use temp"
+;* V198 tmp187 [V198 ] ( 0, 0 ) byref -> zero-ref ptr "Inline stloc first use temp"
+;* V199 tmp188 [V199 ] ( 0, 0 ) ushort -> zero-ref ptr "Inline stloc first use temp"
+;* V200 tmp189 [V200 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
+;* V201 tmp190 [V201 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
+;* V202 tmp191 [V202 ] ( 0, 0 ) ubyte -> zero-ref "Inlining Arg"
+;* V203 tmp192 [V203 ] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
+;* V204 tmp193 [V204 ] ( 0, 0 ) struct (64) zero-ref do-not-enreg[XS] addr-exposed ld-addr-op unsafe-buffer "Inline ldloca(s) first use temp" <System.Buffers.IndexOfAnyAsciiSearcher+AsciiState>
+;* V205 tmp194 [V205 ] ( 0, 0 ) ubyte -> zero-ref ld-addr-op ptr "Inline ldloca(s) first use temp"
+;* V206 tmp195 [V206 ] ( 0, 0 ) byref -> zero-ref
+;* V207 tmp196 [V207 ] ( 0, 0 ) byref -> zero-ref ptr
+;* V208 tmp197 [V208 ] ( 0, 0 ) int -> zero-ref
+;* V209 tmp198 [V209 ] ( 0, 0 ) byref -> zero-ref
+;* V210 tmp199 [V210 ] ( 0, 0 ) byref -> zero-ref ptr
+;* V211 tmp200 [V211 ] ( 0, 0 ) int -> zero-ref
+; V212 tmp201 [V212,T83] ( 1, 1 ) int -> [rbp-0x54] do-not-enreg[V] "GSCookie dummy for inlinee"
+;* V213 tmp202 [V213 ] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
+;* V214 tmp203 [V214 ] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
+;* V215 tmp204 [V215 ] ( 0, 0 ) long -> zero-ref ptr "Inlining Arg"
+;* V216 tmp205 [V216 ] ( 0, 0 ) long -> zero-ref ptr "Inline stloc first use temp"
+;* V217 tmp206 [V217 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline stloc first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V218 tmp207 [V218 ] ( 0, 0 ) int -> zero-ref ptr "Inline stloc first use temp"
+;* V219 tmp208 [V219 ] ( 0, 0 ) ushort -> zero-ref ptr "Inline stloc first use temp"
+;* V220 tmp209 [V220 ] ( 0, 0 ) int -> zero-ref ptr "Inline stloc first use temp"
+;* V221 tmp210 [V221 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
+;* V222 tmp211 [V222 ] ( 0, 0 ) long -> zero-ref ptr "dup spill"
+;* V223 tmp212 [V223 ] ( 0, 0 ) simd16 -> zero-ref "Inlining Arg" <System.Runtime.Intrinsics.Vector128`1[ubyte]>
+;* V224 tmp213 [V224 ] ( 0, 0 ) simd16 -> zero-ref "Inlining Arg" <System.Runtime.Intrinsics.Vector128`1[ubyte]>
+;* V225 tmp214 [V225 ] ( 0, 0 ) simd32 -> zero-ref "Inline return value spill temp" <System.Runtime.Intrinsics.Vector256`1[ubyte]>
+;* V226 tmp215 [V226 ] ( 0, 0 ) simd32 -> zero-ref "Inline stloc first use temp" <System.Runtime.Intrinsics.Vector256`1[ubyte]>
+;* V227 tmp216 [V227 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
+;* V228 tmp217 [V228 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
+; V229 tmp218 [V229,T48] ( 3, 3 ) byref -> rcx single-def "Inlining Arg"
+;* V230 tmp219 [V230 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
+;* V231 tmp220 [V231 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
+;* V232 tmp221 [V232 ] ( 0, 0 ) struct (16) zero-ref multireg-arg "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
+;* V233 tmp222 [V233 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
+;* V234 tmp223 [V234 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V235 tmp224 [V235 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
+; V236 tmp225 [V236,T37] ( 3, 5 ) int -> rax "Single return block return value"
+; V237 FramesRoot [V237,T15] ( 6, 10 ) long -> r12 "Pinvoke FrameListRoot"
+; V238 PInvokeFrame[V238 ] ( 8, 12 ) struct (72) [rbp-0xC0] do-not-enreg[XS] addr-exposed "Pinvoke FrameVar"
+; V239 tmp228 [V239,T62] ( 2, 1 ) byref -> rdi "field V12._reference (fldOffset=0x0)" P-INDEP
+; V240 tmp229 [V240,T74] ( 2, 1 ) int -> r8 "field V12._length (fldOffset=0x8)" P-INDEP
+;* V241 tmp230 [V241 ] ( 0, 0 ) byref -> zero-ref single-def ptr "field V13._reference (fldOffset=0x0)" P-INDEP
+;* V242 tmp231 [V242 ] ( 0, 0 ) int -> zero-ref "field V13._length (fldOffset=0x8)" P-INDEP
+; V243 tmp232 [V243,T31] ( 3, 6 ) byref -> rsi "field V16._reference (fldOffset=0x0)" P-INDEP
+; V244 tmp233 [V244,T16] ( 3, 6 ) int -> rdx "field V16._length (fldOffset=0x8)" P-INDEP
+;* V245 tmp234 [V245 ] ( 0, 0 ) byref -> zero-ref ptr "field V17._reference (fldOffset=0x0)" P-INDEP
+;* V246 tmp235 [V246 ] ( 0, 0 ) int -> zero-ref ptr "field V17._length (fldOffset=0x8)" P-INDEP
+; V247 tmp236 [V247,T18] ( 2, 8 ) byref -> rdi "field V18._reference (fldOffset=0x0)" P-INDEP
+; V248 tmp237 [V248,T22] ( 2, 8 ) int -> r8 "field V18._length (fldOffset=0x8)" P-INDEP
+;* V249 tmp238 [V249 ] ( 0, 0 ) byref -> zero-ref ptr "field V19._reference (fldOffset=0x0)" P-INDEP
+;* V250 tmp239 [V250 ] ( 0, 0 ) int -> zero-ref ptr "field V19._length (fldOffset=0x8)" P-INDEP
+; V251 tmp240 [V251,T63] ( 2, 1 ) byref -> rsi single-def "field V22._reference (fldOffset=0x0)" P-INDEP
+; V252 tmp241 [V252,T45] ( 4, 2 ) int -> rdx "field V22._length (fldOffset=0x8)" P-INDEP
+;* V253 tmp242 [V253 ] ( 0, 0 ) byref -> zero-ref "field V23._reference (fldOffset=0x0)" P-INDEP
+;* V254 tmp243 [V254 ] ( 0, 0 ) int -> zero-ref "field V23._length (fldOffset=0x8)" P-INDEP
+; V255 tmp244 [V255,T64] ( 2, 1 ) byref -> rsi single-def "field V26._reference (fldOffset=0x0)" P-INDEP
+; V256 tmp245 [V256,T75] ( 2, 1 ) int -> rdx "field V26._length (fldOffset=0x8)" P-INDEP
+;* V257 tmp246 [V257 ] ( 0, 0 ) byref -> zero-ref "field V27._reference (fldOffset=0x0)" P-INDEP
+;* V258 tmp247 [V258 ] ( 0, 0 ) int -> zero-ref "field V27._length (fldOffset=0x8)" P-INDEP
+; V259 tmp248 [V259,T65] ( 2, 1 ) byref -> rsi single-def "field V31._reference (fldOffset=0x0)" P-INDEP
+; V260 tmp249 [V260,T76] ( 2, 1 ) int -> rdx "field V31._length (fldOffset=0x8)" P-INDEP
+; V261 tmp250 [V261,T66] ( 2, 1 ) byref -> rcx single-def "field V33._reference (fldOffset=0x0)" P-INDEP
+; V262 tmp251 [V262,T77] ( 2, 1 ) int -> r8 "field V33._length (fldOffset=0x8)" P-INDEP
+; V263 tmp252 [V263,T67] ( 2, 1 ) byref -> rcx single-def "field V34._reference (fldOffset=0x0)" P-INDEP
+; V264 tmp253 [V264,T78] ( 2, 1 ) int -> r8 "field V34._length (fldOffset=0x8)" P-INDEP
+;* V265 tmp254 [V265 ] ( 0, 0 ) byref -> zero-ref "field V35._reference (fldOffset=0x0)" P-INDEP
+;* V266 tmp255 [V266 ] ( 0, 0 ) int -> zero-ref "field V35._length (fldOffset=0x8)" P-INDEP
+; V267 tmp256 [V267,T68] ( 2, 1 ) byref -> rdi single-def "field V38._reference (fldOffset=0x0)" P-INDEP
+; V268 tmp257 [V268,T79] ( 2, 1 ) int -> r8 "field V38._length (fldOffset=0x8)" P-INDEP
+;* V269 tmp258 [V269 ] ( 0, 0 ) byref -> zero-ref single-def "field V39._reference (fldOffset=0x0)" P-INDEP
+;* V270 tmp259 [V270 ] ( 0, 0 ) int -> zero-ref "field V39._length (fldOffset=0x8)" P-INDEP
+;* V271 tmp260 [V271 ] ( 0, 0 ) byref -> zero-ref "field V42._reference (fldOffset=0x0)" P-INDEP
+;* V272 tmp261 [V272 ] ( 0, 0 ) int -> zero-ref "field V42._length (fldOffset=0x8)" P-INDEP
+;* V273 tmp262 [V273,T84] ( 0, 0 ) byref -> zero-ref single-def ptr "field V43._reference (fldOffset=0x0)" P-INDEP
+;* V274 tmp263 [V274 ] ( 0, 0 ) int -> zero-ref "field V43._length (fldOffset=0x8)" P-INDEP
+;* V275 tmp264 [V275 ] ( 0, 0 ) byref -> zero-ref single-def ptr "field V46._reference (fldOffset=0x0)" P-INDEP
+;* V276 tmp265 [V276 ] ( 0, 0 ) int -> zero-ref ptr "field V46._length (fldOffset=0x8)" P-INDEP
+;* V277 tmp266 [V277 ] ( 0, 0 ) byref -> zero-ref single-def ptr "field V47._reference (fldOffset=0x0)" P-INDEP
+;* V278 tmp267 [V278 ] ( 0, 0 ) int -> zero-ref "field V47._length (fldOffset=0x8)" P-INDEP
+;* V279 tmp268 [V279 ] ( 0, 0 ) byref -> zero-ref single-def ptr "field V53._reference (fldOffset=0x0)" P-INDEP
+;* V280 tmp269 [V280 ] ( 0, 0 ) int -> zero-ref "field V53._length (fldOffset=0x8)" P-INDEP
+;* V281 tmp270 [V281 ] ( 0, 0 ) byref -> zero-ref single-def ptr "field V54._reference (fldOffset=0x0)" P-INDEP
+;* V282 tmp271 [V282 ] ( 0, 0 ) int -> zero-ref "field V54._length (fldOffset=0x8)" P-INDEP
+;* V283 tmp272 [V283 ] ( 0, 0 ) byref -> zero-ref "field V94._reference (fldOffset=0x0)" P-INDEP
+;* V284 tmp273 [V284 ] ( 0, 0 ) int -> zero-ref "field V94._length (fldOffset=0x8)" P-INDEP
+;* V285 tmp274 [V285 ] ( 0, 0 ) byref -> zero-ref "field V95._reference (fldOffset=0x0)" P-INDEP
+;* V286 tmp275 [V286 ] ( 0, 0 ) int -> zero-ref "field V95._length (fldOffset=0x8)" P-INDEP
+;* V287 tmp276 [V287 ] ( 0, 0 ) byref -> zero-ref "field V98._reference (fldOffset=0x0)" P-INDEP
+;* V288 tmp277 [V288 ] ( 0, 0 ) int -> zero-ref "field V98._length (fldOffset=0x8)" P-INDEP
+;* V289 tmp278 [V289 ] ( 0, 0 ) byref -> zero-ref "field V99._reference (fldOffset=0x0)" P-INDEP
+;* V290 tmp279 [V290 ] ( 0, 0 ) int -> zero-ref "field V99._length (fldOffset=0x8)" P-INDEP
+;* V291 tmp280 [V291 ] ( 0, 0 ) byref -> zero-ref "field V100._reference (fldOffset=0x0)" P-INDEP
+;* V292 tmp281 [V292 ] ( 0, 0 ) int -> zero-ref "field V100._length (fldOffset=0x8)" P-INDEP
+;* V293 tmp282 [V293 ] ( 0, 0 ) byref -> zero-ref "field V101._reference (fldOffset=0x0)" P-INDEP
+;* V294 tmp283 [V294 ] ( 0, 0 ) int -> zero-ref "field V101._length (fldOffset=0x8)" P-INDEP
+; V295 tmp284 [V295,T39] ( 2, 4 ) byref -> rsi "field V103._reference (fldOffset=0x0)" P-INDEP
+;* V296 tmp285 [V296,T60] ( 0, 0 ) int -> zero-ref ptr "field V103._length (fldOffset=0x8)" P-INDEP
+; V297 tmp286 [V297,T32] ( 3, 6 ) byref -> rcx "field V105._reference (fldOffset=0x0)" P-INDEP
+; V298 tmp287 [V298,T43] ( 2, 4 ) int -> rdx "field V105._length (fldOffset=0x8)" P-INDEP
+; V299 tmp288 [V299,T40] ( 2, 4 ) byref -> rcx "field V106._reference (fldOffset=0x0)" P-INDEP
+;* V300 tmp289 [V300,T61] ( 0, 0 ) int -> zero-ref ptr "field V106._length (fldOffset=0x8)" P-INDEP
+;* V301 tmp290 [V301 ] ( 0, 0 ) byref -> zero-ref "field V107._reference (fldOffset=0x0)" P-INDEP
+;* V302 tmp291 [V302 ] ( 0, 0 ) int -> zero-ref "field V107._length (fldOffset=0x8)" P-INDEP
+;* V303 tmp292 [V303 ] ( 0, 0 ) byref -> zero-ref ptr "field V110._reference (fldOffset=0x0)" P-INDEP
+;* V304 tmp293 [V304 ] ( 0, 0 ) int -> zero-ref ptr "field V110._length (fldOffset=0x8)" P-INDEP
+;* V305 tmp294 [V305 ] ( 0, 0 ) byref -> zero-ref ptr "field V111._reference (fldOffset=0x0)" P-INDEP
+;* V306 tmp295 [V306 ] ( 0, 0 ) int -> zero-ref ptr "field V111._length (fldOffset=0x8)" P-INDEP
+;* V307 tmp296 [V307 ] ( 0, 0 ) byref -> zero-ref ptr "field V114._reference (fldOffset=0x0)" P-INDEP
+;* V308 tmp297 [V308 ] ( 0, 0 ) int -> zero-ref ptr "field V114._length (fldOffset=0x8)" P-INDEP
+;* V309 tmp298 [V309 ] ( 0, 0 ) byref -> zero-ref ptr "field V115._reference (fldOffset=0x0)" P-INDEP
+;* V310 tmp299 [V310 ] ( 0, 0 ) int -> zero-ref ptr "field V115._length (fldOffset=0x8)" P-INDEP
+;* V311 tmp300 [V311 ] ( 0, 0 ) byref -> zero-ref ptr "field V117._reference (fldOffset=0x0)" P-INDEP
+;* V312 tmp301 [V312 ] ( 0, 0 ) int -> zero-ref ptr "field V117._length (fldOffset=0x8)" P-INDEP
+;* V313 tmp302 [V313 ] ( 0, 0 ) byref -> zero-ref ptr "field V120._reference (fldOffset=0x0)" P-INDEP
+;* V314 tmp303 [V314 ] ( 0, 0 ) int -> zero-ref ptr "field V120._length (fldOffset=0x8)" P-INDEP
+;* V315 tmp304 [V315 ] ( 0, 0 ) byref -> zero-ref ptr "field V123._reference (fldOffset=0x0)" P-INDEP
+;* V316 tmp305 [V316 ] ( 0, 0 ) int -> zero-ref "field V123._length (fldOffset=0x8)" P-INDEP
+;* V317 tmp306 [V317 ] ( 0, 0 ) byref -> zero-ref ptr "field V124._reference (fldOffset=0x0)" P-INDEP
+;* V318 tmp307 [V318 ] ( 0, 0 ) int -> zero-ref "field V124._length (fldOffset=0x8)" P-INDEP
+;* V319 tmp308 [V319 ] ( 0, 0 ) byref -> zero-ref "field V125._reference (fldOffset=0x0)" P-INDEP
+;* V320 tmp309 [V320 ] ( 0, 0 ) int -> zero-ref "field V125._length (fldOffset=0x8)" P-INDEP
+;* V321 tmp310 [V321 ] ( 0, 0 ) byref -> zero-ref "field V126._reference (fldOffset=0x0)" P-INDEP
+;* V322 tmp311 [V322 ] ( 0, 0 ) int -> zero-ref "field V126._length (fldOffset=0x8)" P-INDEP
+;* V323 tmp312 [V323 ] ( 0, 0 ) byref -> zero-ref "field V129._reference (fldOffset=0x0)" P-INDEP
+;* V324 tmp313 [V324 ] ( 0, 0 ) int -> zero-ref "field V129._length (fldOffset=0x8)" P-INDEP
+;* V325 tmp314 [V325 ] ( 0, 0 ) byref -> zero-ref "field V130._reference (fldOffset=0x0)" P-INDEP
+;* V326 tmp315 [V326 ] ( 0, 0 ) int -> zero-ref "field V130._length (fldOffset=0x8)" P-INDEP
+;* V327 tmp316 [V327 ] ( 0, 0 ) byref -> zero-ref "field V131._reference (fldOffset=0x0)" P-INDEP
+;* V328 tmp317 [V328 ] ( 0, 0 ) int -> zero-ref "field V131._length (fldOffset=0x8)" P-INDEP
+;* V329 tmp318 [V329 ] ( 0, 0 ) byref -> zero-ref "field V132._reference (fldOffset=0x0)" P-INDEP
+;* V330 tmp319 [V330 ] ( 0, 0 ) int -> zero-ref "field V132._length (fldOffset=0x8)" P-INDEP
+; V331 tmp320 [V331,T19] ( 2, 8 ) byref -> rdi "field V133._reference (fldOffset=0x0)" P-INDEP
+; V332 tmp321 [V332,T23] ( 2, 8 ) int -> r8 "field V133._length (fldOffset=0x8)" P-INDEP
+;* V333 tmp322 [V333 ] ( 0, 0 ) byref -> zero-ref "field V134._reference (fldOffset=0x0)" P-INDEP
+;* V334 tmp323 [V334 ] ( 0, 0 ) int -> zero-ref "field V134._length (fldOffset=0x8)" P-INDEP
+;* V335 tmp324 [V335 ] ( 0, 0 ) byref -> zero-ref "field V137._reference (fldOffset=0x0)" P-INDEP
+;* V336 tmp325 [V336 ] ( 0, 0 ) int -> zero-ref "field V137._length (fldOffset=0x8)" P-INDEP
+;* V337 tmp326 [V337,T44] ( 0, 0 ) byref -> zero-ref ptr "field V138._reference (fldOffset=0x0)" P-INDEP
+;* V338 tmp327 [V338 ] ( 0, 0 ) int -> zero-ref ptr "field V138._length (fldOffset=0x8)" P-INDEP
+;* V339 tmp328 [V339 ] ( 0, 0 ) byref -> zero-ref ptr "field V141._reference (fldOffset=0x0)" P-INDEP
+;* V340 tmp329 [V340 ] ( 0, 0 ) int -> zero-ref ptr "field V141._length (fldOffset=0x8)" P-INDEP
+;* V341 tmp330 [V341 ] ( 0, 0 ) byref -> zero-ref ptr "field V142._reference (fldOffset=0x0)" P-INDEP
+;* V342 tmp331 [V342 ] ( 0, 0 ) int -> zero-ref ptr "field V142._length (fldOffset=0x8)" P-INDEP
+;* V343 tmp332 [V343 ] ( 0, 0 ) byref -> zero-ref ptr "field V148._reference (fldOffset=0x0)" P-INDEP
+;* V344 tmp333 [V344 ] ( 0, 0 ) int -> zero-ref "field V148._length (fldOffset=0x8)" P-INDEP
+;* V345 tmp334 [V345 ] ( 0, 0 ) byref -> zero-ref ptr "field V149._reference (fldOffset=0x0)" P-INDEP
+;* V346 tmp335 [V346 ] ( 0, 0 ) int -> zero-ref "field V149._length (fldOffset=0x8)" P-INDEP
+;* V347 tmp336 [V347 ] ( 0, 0 ) byref -> zero-ref ptr "field V191._reference (fldOffset=0x0)" P-INDEP
+;* V348 tmp337 [V348 ] ( 0, 0 ) int -> zero-ref ptr "field V191._length (fldOffset=0x8)" P-INDEP
+;* V349 tmp338 [V349 ] ( 0, 0 ) byref -> zero-ref ptr "field V192._reference (fldOffset=0x0)" P-INDEP
+;* V350 tmp339 [V350 ] ( 0, 0 ) int -> zero-ref ptr "field V192._length (fldOffset=0x8)" P-INDEP
+;* V351 tmp340 [V351 ] ( 0, 0 ) byref -> zero-ref ptr "field V200._reference (fldOffset=0x0)" P-INDEP
+;* V352 tmp341 [V352 ] ( 0, 0 ) int -> zero-ref ptr "field V200._length (fldOffset=0x8)" P-INDEP
+;* V353 tmp342 [V353 ] ( 0, 0 ) byref -> zero-ref ptr "field V201._reference (fldOffset=0x0)" P-INDEP
+;* V354 tmp343 [V354 ] ( 0, 0 ) int -> zero-ref "field V201._length (fldOffset=0x8)" P-INDEP
+;* V355 tmp344 [V355 ] ( 0, 0 ) byref -> zero-ref ptr "field V217._reference (fldOffset=0x0)" P-INDEP
+;* V356 tmp345 [V356 ] ( 0, 0 ) int -> zero-ref ptr "field V217._length (fldOffset=0x8)" P-INDEP
+;* V357 tmp346 [V357 ] ( 0, 0 ) byref -> zero-ref "field V227._reference (fldOffset=0x0)" P-INDEP
+;* V358 tmp347 [V358 ] ( 0, 0 ) int -> zero-ref "field V227._length (fldOffset=0x8)" P-INDEP
+;* V359 tmp348 [V359 ] ( 0, 0 ) byref -> zero-ref "field V228._reference (fldOffset=0x0)" P-INDEP
+;* V360 tmp349 [V360 ] ( 0, 0 ) int -> zero-ref "field V228._length (fldOffset=0x8)" P-INDEP
+; V361 tmp350 [V361,T69] ( 2, 1 ) byref -> rsi single-def "field V230._reference (fldOffset=0x0)" P-INDEP
+;* V362 tmp351 [V362,T85] ( 0, 0 ) int -> zero-ref ptr "field V230._length (fldOffset=0x8)" P-INDEP
+; V363 tmp352 [V363,T70] ( 2, 1 ) byref -> rcx single-def "field V232._reference (fldOffset=0x0)" P-INDEP
+;* V364 tmp353 [V364,T86] ( 0, 0 ) int -> zero-ref ptr "field V232._length (fldOffset=0x8)" P-INDEP
+; V365 tmp354 [V365,T71] ( 2, 1 ) byref -> rcx single-def "field V233._reference (fldOffset=0x0)" P-INDEP
+;* V366 tmp355 [V366,T87] ( 0, 0 ) int -> zero-ref ptr "field V233._length (fldOffset=0x8)" P-INDEP
+;* V367 tmp356 [V367 ] ( 0, 0 ) byref -> zero-ref "field V234._reference (fldOffset=0x0)" P-INDEP
+;* V368 tmp357 [V368 ] ( 0, 0 ) int -> zero-ref "field V234._length (fldOffset=0x8)" P-INDEP
+; V369 tmp358 [V369,T24] ( 2, 8 ) long -> rsi "Cast away GC"
+; V370 tmp359 [V370,T25] ( 2, 8 ) long -> rcx "Cast away GC"
+; V371 tmp360 [V371,T26] ( 2, 8 ) long -> rdi "argument with side effect"
+; V372 tmp361 [V372,T27] ( 2, 8 ) long -> rcx "argument with side effect"
+;* V373 tmp362 [V373 ] ( 0, 0 ) long -> zero-ref ptr "Cast away GC"
+; V374 GsCookie [V374 ] ( 1, 1 ) long -> [rbp-0x30] do-not-enreg[X] addr-exposed "GSSecurityCookie"
+; V375 tmp364 [V375,T03] ( 19, 66 ) byref -> [rbp-0x60] spill-single-def ptr "shadowVar"
+; V376 tmp365 [V376,T09] ( 16, 22.50) ref -> [rbp-0x68] spill-single-def ptr "shadowVar"
+; V377 tmp366 [V377,T08] ( 9, 24 ) byref -> [rbp-0x70] spill-single-def ptr "shadowVar"
+; V378 cse0 [V378,T36] ( 1, 0.50) byref -> [rbp-0x78] spill-single-def "CSE #12: conservative"
;
; Lcl frame size = 152
G_M25649_IG01:
push rbp
push r15
push r14
push r13
push r12
push rbx
sub rsp, 152
vzeroupper
lea rbp, [rsp+0xC0]
xor ebx, ebx
mov qword ptr [rbp-0x48], rbx
mov qword ptr [rbp-0x50], rbx
mov qword ptr [rbp-0x30], 0xD1FFAB1E
mov rbx, rdi
mov r15, rsi
mov r13d, edx
mov r14, rcx
;; size=58 bbWeight=1 PerfScore 12.00
G_M25649_IG02:
- lea rdi, [rbp-0xB0]
+ lea rdi, [rbp-0xB8]
mov rsi, r10
call CORINFO_HELP_INIT_PINVOKE_FRAME
mov r12, rax
mov rcx, rsp
- mov qword ptr [rbp-0x90], rcx
+ mov qword ptr [rbp-0x98], rcx
mov rcx, rbp
- mov qword ptr [rbp-0x80], rcx
+ mov qword ptr [rbp-0x88], rcx
mov bword ptr [rbp-0x70], r14
mov gword ptr [rbp-0x68], r15
mov bword ptr [rbp-0x60], rbx
mov ecx, dword ptr [rbx+0x18]
sub ecx, dword ptr [rbx+0x08]
mov r8d, dword ptr [r15+0x08]
mov dword ptr [r14], r8d
cmp dword ptr [r14], ecx
jg SHORT G_M25649_IG04
- ;; size=65 bbWeight=1 PerfScore 19.50
+ ;; size=68 bbWeight=1 PerfScore 19.50
G_M25649_IG03:
mov rdi, gword ptr [rbx]
lea rcx, bword ptr [rbx+0x10]
mov r8d, dword ptr [rbx+0x08]
mov edx, dword ptr [r14]
mov esi, r8d
mov r9d, edx
add rsi, r9
mov r9d, dword ptr [rcx+0x08]
cmp rsi, r9
ja G_M25649_IG31
mov rcx, bword ptr [rcx]
lea rsi, bword ptr [rcx+2*r8]
lea rcx, bword ptr [r15+0x0C]
mov r8d, dword ptr [r15+0x08]
mov r9d, 1
mov rax, 0xD1FFAB1E ; code for System.Globalization.CompareInfo:Compare(System.ReadOnlySpan`1[ushort],System.ReadOnlySpan`1[ushort],int):int:this
cmp dword ptr [rdi], edi
call [rax]System.Globalization.CompareInfo:Compare(System.ReadOnlySpan`1[ushort],System.ReadOnlySpan`1[ushort],int):int:this
test eax, eax
je G_M25649_IG25
;; size=79 bbWeight=0.50 PerfScore 11.62
G_M25649_IG04:
xor eax, eax
mov dword ptr [rbp-0x34], eax
mov r9d, dword ptr [rbx+0x08]
mov dword ptr [rbp-0x38], r9d
mov edi, dword ptr [r15+0x08]
lea rdi, bword ptr [r15+0x0C]
mov r8d, dword ptr [r15+0x08]
+ mov r10, 0xD1FFAB1E
+ mov bword ptr [rbp-0x78], r10
mov esi, 32
mov edx, 160
mov ecx, 0x202F
- mov r10, 0xD1FFAB1E ; code for System.SpanHelpers:NonPackedIndexOfAnyValueType[short,System.SpanHelpers+DontNegate`1[short]](byref,short,short,short,int):int
- call [r10]System.SpanHelpers:NonPackedIndexOfAnyValueType[short,System.SpanHelpers+DontNegate`1[short]](byref,short,short,short,int):int
+ mov r11, 0xD1FFAB1E ; code for System.SpanHelpers:NonPackedIndexOfAnyValueType[short,System.SpanHelpers+DontNegate`1[short]](byref,short,short,short,int):int
+ call [r11]System.SpanHelpers:NonPackedIndexOfAnyValueType[short,System.SpanHelpers+DontNegate`1[short]](byref,short,short,short,int):int
mov edi, eax
test edi, edi
jge SHORT G_M25649_IG06
- ;; size=59 bbWeight=0.50 PerfScore 7.12
+ ;; size=73 bbWeight=0.50 PerfScore 7.75
G_M25649_IG05:
xor eax, eax
jmp G_M25649_IG27
;; size=7 bbWeight=1 PerfScore 2.25
G_M25649_IG06:
mov ecx, dword ptr [rbp-0x34]
add edi, ecx
mov dword ptr [rbp-0x3C], edi
mov dword ptr [rbp-0x34], ecx
mov edx, edi
sub edx, ecx
mov eax, dword ptr [rbx+0x18]
sub eax, edx
mov esi, dword ptr [rbp-0x38]
cmp eax, esi
mov dword ptr [rbp-0x38], esi
jle SHORT G_M25649_IG05
mov edi, dword ptr [rbp-0x3C]
test edx, edx
jne SHORT G_M25649_IG08
;; size=37 bbWeight=4 PerfScore 46.00
G_M25649_IG07:
dec dword ptr [r14]
jmp G_M25649_IG16
;; size=8 bbWeight=2 PerfScore 10.00
G_M25649_IG08:
lea rax, bword ptr [rbx+0x10]
mov esi, dword ptr [rbp-0x38]
lea r8d, [rsi+rdx]
cmp r8d, dword ptr [rax+0x08]
jae G_M25649_IG30
mov dword ptr [rbp-0x38], esi
mov dword ptr [rbp-0x40], edx
lea r8d, [rsi+rdx]
mov rax, bword ptr [rax]
movzx rax, word ptr [rax+2*r8]
cmp eax, 256
jae SHORT G_M25649_IG09
mov r8, 0xD1FFAB1E ; static handle
test byte ptr [rax+r8], 128
je SHORT G_M25649_IG05
mov eax, dword ptr [rbp-0x40]
mov dword ptr [rbp-0x40], eax
mov dword ptr [rbp-0x3C], edi
jmp SHORT G_M25649_IG10
;; size=74 bbWeight=2 PerfScore 46.00
G_M25649_IG09:
mov dword ptr [rbp-0x3C], edi
mov edi, eax
mov rax, 0xD1FFAB1E ; code for System.Globalization.CharUnicodeInfo:GetIsWhiteSpace(ushort):ubyte
call [rax]System.Globalization.CharUnicodeInfo:GetIsWhiteSpace(ushort):ubyte
test eax, eax
je G_M25649_IG05
;; size=25 bbWeight=2 PerfScore 11.50
G_M25649_IG10:
mov rdi, gword ptr [rbx]
lea rcx, bword ptr [rbx+0x10]
mov eax, dword ptr [rbp-0x38]
mov edx, eax
mov r10d, dword ptr [rbp-0x40]
mov esi, r10d
add rdx, rsi
mov esi, dword ptr [rcx+0x08]
cmp rdx, rsi
ja G_M25649_IG31
mov rcx, bword ptr [rcx]
mov dword ptr [rbp-0x38], eax
mov edx, eax
lea rsi, bword ptr [rcx+2*rdx]
- mov ecx, r10d
+ mov edx, r10d
mov r11d, dword ptr [rbp-0x34]
- mov edx, r11d
- add rcx, rdx
- mov edx, dword ptr [r15+0x08]
- cmp rcx, rdx
+ mov ecx, r11d
+ mov r8d, edx
+ add rcx, r8
+ mov r8d, dword ptr [r15+0x08]
+ cmp rcx, r8
ja G_M25649_IG32
mov ecx, r11d
lea rcx, bword ptr [r15+2*rcx+0x0C]
mov bword ptr [rbp-0x48], rsi
mov bword ptr [rbp-0x50], rcx
mov rdi, qword ptr [rdi+0x20]
- mov edx, r10d
mov dword ptr [rbp-0x40], r10d
mov r8d, r10d
mov r9d, 1
mov r11, 0xD1FFAB1E ; function address
- mov qword ptr [rbp-0xA0], r11
+ mov qword ptr [rbp-0xA8], r11
lea r11, G_M25649_IG13
- mov qword ptr [rbp-0x88], r11
- lea r11, bword ptr [rbp-0xB0]
+ mov qword ptr [rbp-0x90], r11
+ lea r11, bword ptr [rbp-0xB8]
mov qword ptr [r12+0x10], r11
mov byte ptr [r12+0x0C], 0
;; size=157 bbWeight=2 PerfScore 60.00
G_M25649_IG11:
mov r11, 0xD1FFAB1E ; function address
;; size=10 bbWeight=2 PerfScore 0.50
G_M25649_IG12:
call r11 ; Interop+Globalization:CompareString(long,ulong,int,ulong,int,int):int
;; size=3 bbWeight=2 PerfScore 6.00
G_M25649_IG13:
mov byte ptr [r12+0x0C], 1
mov rcx, 0xD1FFAB1E ; function address
cmp dword ptr [rcx], 0
je SHORT G_M25649_IG14
mov rdi, 0xD1FFAB1E
call [rdi]CORINFO_HELP_STOP_FOR_GC
;; size=33 bbWeight=2 PerfScore 17.00
G_M25649_IG14:
- mov rdi, bword ptr [rbp-0xA8]
+ mov rdi, bword ptr [rbp-0xB0]
mov qword ptr [r12+0x10], rdi
xor rdi, rdi
mov bword ptr [rbp-0x48], rdi
;; size=18 bbWeight=2 PerfScore 6.50
G_M25649_IG15:
mov bword ptr [rbp-0x50], rdi
test eax, eax
jne G_M25649_IG05
mov eax, dword ptr [rbp-0x40]
mov rbx, bword ptr [rbp-0x60]
mov edi, dword ptr [rbp-0x3C]
mov r14, bword ptr [rbp-0x70]
mov r15, gword ptr [rbp-0x68]
mov ecx, dword ptr [rbp-0x38]
lea ecx, [rcx+rax+0x01]
mov dword ptr [rbp-0x38], ecx
;; size=40 bbWeight=2 PerfScore 20.50
G_M25649_IG16:
lea r11d, [rdi+0x01]
mov dword ptr [rbp-0x34], r11d
jmp SHORT G_M25649_IG18
;; size=10 bbWeight=4 PerfScore 14.00
G_M25649_IG17:
mov esi, dword ptr [rbp-0x38]
inc esi
mov dword ptr [rbp-0x38], esi
mov r14, bword ptr [rbp-0x70]
inc dword ptr [r14]
;; size=15 bbWeight=8 PerfScore 50.00
G_M25649_IG18:
mov esi, dword ptr [rbp-0x38]
cmp esi, dword ptr [rbx+0x18]
jge SHORT G_M25649_IG23
;; size=8 bbWeight=32 PerfScore 160.00
G_M25649_IG19:
lea rdi, bword ptr [rbx+0x10]
cmp esi, dword ptr [rdi+0x08]
jae G_M25649_IG30
mov rdi, bword ptr [rdi]
mov dword ptr [rbp-0x38], esi
mov eax, esi
movzx rdi, word ptr [rdi+2*rax]
cmp edi, 256
jae SHORT G_M25649_IG21
mov rax, 0xD1FFAB1E ; static handle
test byte ptr [rdi+rax], 128
jne SHORT G_M25649_IG17
;; size=49 bbWeight=16 PerfScore 244.00
G_M25649_IG20:
mov esi, dword ptr [rbp-0x38]
jmp SHORT G_M25649_IG23
;; size=5 bbWeight=4 PerfScore 12.00
G_M25649_IG21:
mov rax, 0xD1FFAB1E ; code for System.Globalization.CharUnicodeInfo:GetIsWhiteSpace(ushort):ubyte
call [rax]System.Globalization.CharUnicodeInfo:GetIsWhiteSpace(ushort):ubyte
test eax, eax
jne SHORT G_M25649_IG17
;; size=16 bbWeight=16 PerfScore 72.00
G_M25649_IG22:
mov esi, dword ptr [rbp-0x38]
;; size=3 bbWeight=8 PerfScore 8.00
G_M25649_IG23:
mov ecx, dword ptr [rbp-0x34]
cmp dword ptr [r15+0x08], ecx
mov dword ptr [rbp-0x38], esi
jb G_M25649_IG32
mov edi, ecx
lea rdi, bword ptr [r15+2*rdi+0x0C]
mov r8d, dword ptr [r15+0x08]
mov dword ptr [rbp-0x34], ecx
sub r8d, ecx
mov esi, 32
mov edx, 160
mov ecx, 0x202F
mov rax, 0xD1FFAB1E ; code for System.SpanHelpers:NonPackedIndexOfAnyValueType[short,System.SpanHelpers+DontNegate`1[short]](byref,short,short,short,int):int
call [rax]System.SpanHelpers:NonPackedIndexOfAnyValueType[short,System.SpanHelpers+DontNegate`1[short]](byref,short,short,short,int):int
mov edi, eax
mov eax, edi
test eax, eax
mov edi, eax
mov r14, bword ptr [rbp-0x70]
jge G_M25649_IG06
;; size=78 bbWeight=4 PerfScore 70.00
G_M25649_IG24:
mov r12d, dword ptr [rbp-0x34]
cmp dword ptr [r15+0x08], r12d
jle G_M25649_IG25
mov edx, dword ptr [r15+0x08]
sub edx, r12d
mov ecx, dword ptr [rbx+0x18]
sub ecx, edx
mov r9d, dword ptr [rbp-0x38]
cmp ecx, r9d
mov dword ptr [rbp-0x38], r9d
mov dword ptr [rbp-0x34], r12d
jl G_M25649_IG05
mov rdi, gword ptr [rbx]
lea rcx, bword ptr [rbx+0x10]
mov r9d, dword ptr [rbp-0x38]
mov r8d, r9d
mov esi, edx
add r8, rsi
mov esi, dword ptr [rcx+0x08]
cmp r8, rsi
ja G_M25649_IG31
mov rcx, bword ptr [rcx]
mov r8d, r9d
lea rsi, bword ptr [rcx+2*r8]
mov r12d, dword ptr [rbp-0x34]
mov ecx, r12d
mov r8d, edx
add rcx, r8
mov r8d, dword ptr [r15+0x08]
cmp rcx, r8
ja G_M25649_IG32
mov ecx, r12d
lea rcx, bword ptr [r15+2*rcx+0x0C]
mov r8d, edx
mov rax, 0xD1FFAB1E ; code for System.Globalization.CompareInfo:CompareOptionIgnoreCase(System.ReadOnlySpan`1[ushort],System.ReadOnlySpan`1[ushort]):int:this
cmp dword ptr [rdi], edi
call [rax]System.Globalization.CompareInfo:CompareOptionIgnoreCase(System.ReadOnlySpan`1[ushort],System.ReadOnlySpan`1[ushort]):int:this
test eax, eax
jne G_M25649_IG05
;; size=147 bbWeight=0.50 PerfScore 19.00
G_M25649_IG25:
test r13b, r13b
je SHORT G_M25649_IG26
mov edi, dword ptr [rbx+0x08]
add edi, dword ptr [r14]
cmp edi, dword ptr [rbx+0x18]
jge SHORT G_M25649_IG26
add rbx, 16
cmp edi, dword ptr [rbx+0x08]
jae SHORT G_M25649_IG30
mov rax, bword ptr [rbx]
movzx rdi, word ptr [rax+2*rdi]
mov rax, 0xD1FFAB1E ; code for System.Char:IsLetter(ushort):ubyte
call [rax]System.Char:IsLetter(ushort):ubyte
test eax, eax
jne G_M25649_IG05
;; size=52 bbWeight=0.50 PerfScore 11.50
G_M25649_IG26:
mov eax, 1
;; size=5 bbWeight=0.50 PerfScore 0.12
G_M25649_IG27:
movzx rax, al
cmp qword ptr [rbp-0x30], 0xD1FFAB1E
je SHORT G_M25649_IG28
call CORINFO_HELP_FAIL_FAST
;; size=18 bbWeight=1 PerfScore 4.25
G_M25649_IG28:
nop
;; size=1 bbWeight=1 PerfScore 0.25
G_M25649_IG29:
add rsp, 152
pop rbx
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
;; size=18 bbWeight=1 PerfScore 4.25
G_M25649_IG30:
call CORINFO_HELP_RNGCHKFAIL
;; size=5 bbWeight=0 PerfScore 0.00
G_M25649_IG31:
mov rax, 0xD1FFAB1E ; code for System.ThrowHelper:ThrowArgumentOutOfRangeException()
call [rax]System.ThrowHelper:ThrowArgumentOutOfRangeException()
int3
;; size=13 bbWeight=0 PerfScore 0.00
G_M25649_IG32:
mov edi, 33
mov rax, 0xD1FFAB1E ; code for System.ThrowHelper:ThrowArgumentOutOfRangeException(int)
call [rax]System.ThrowHelper:ThrowArgumentOutOfRangeException(int)
int3
;; size=18 bbWeight=0 PerfScore 0.00
-; Total bytes of code 1134, prolog size 58, PerfScore 945.88, instruction count 299, allocated bytes for code 1134 (MethodHash=eeb89bce) for method System.__DTString:MatchSpecifiedWords(System.String,ubyte,byref):ubyte:this (FullOpts)
+; Total bytes of code 1151, prolog size 58, PerfScore 946.50, instruction count 301, allocated bytes for code 1151 (MethodHash=eeb89bce) for method System.__DTString:MatchSpecifiedWords(System.String,ubyte,byref):ubyte:this (FullOpts)
4 (11.765% of base) - System.MemoryExtensions:ContainsAny[ubyte](System.ReadOnlySpan`1[ubyte],ubyte,ubyte):ubyte
; Assembly listing for method System.MemoryExtensions:ContainsAny[ubyte](System.ReadOnlySpan`1[ubyte],ubyte,ubyte):ubyte (FullOpts)
; Emitting BLENDED_CODE for X64 with AVX - Unix
; FullOpts code
; optimized code
; rsp based frame
; partially interruptible
; No PGO data
; 0 inlinees with PGO data; 5 single block inlinees; 2 inlinees without PGO data
; Final local variable assignments
;
;* V00 arg0 [V00 ] ( 0, 0 ) struct (16) zero-ref multireg-arg single-def <System.ReadOnlySpan`1[ubyte]>
-; V01 arg1 [V01,T00] ( 3, 3 ) ubyte -> rdx single-def
+; V01 arg1 [V01,T00] ( 3, 3 ) ubyte -> rax single-def
; V02 arg2 [V02,T01] ( 3, 3 ) ubyte -> rcx single-def
;# V03 OutArgs [V03 ] ( 1, 1 ) struct ( 0) [rsp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
;* V04 tmp1 [V04 ] ( 0, 0 ) int -> zero-ref "Inline return value spill temp"
;* V05 tmp2 [V05 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
-; V06 tmp3 [V06,T03] ( 2, 4 ) ubyte -> rsi ld-addr-op "Inlining Arg"
-; V07 tmp4 [V07,T04] ( 2, 4 ) ubyte -> rdx ld-addr-op "Inlining Arg"
-;* V08 tmp5 [V08 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
-;* V09 tmp6 [V09 ] ( 0, 0 ) byref -> zero-ref single-def "Inlining Arg"
-;* V10 tmp7 [V10 ] ( 0, 0 ) ubyte -> zero-ref "Inlining Arg"
-;* V11 tmp8 [V11 ] ( 0, 0 ) ubyte -> zero-ref "Inlining Arg"
-;* V12 tmp9 [V12 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
-;* V13 tmp10 [V13 ] ( 0, 0 ) int -> zero-ref "Inline return value spill temp"
-;* V14 tmp11 [V14 ] ( 0, 0 ) ubyte -> zero-ref ld-addr-op "Inlining Arg"
-;* V15 tmp12 [V15 ] ( 0, 0 ) ubyte -> zero-ref ld-addr-op "Inlining Arg"
-;* V16 tmp13 [V16 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
-; V17 tmp14 [V17,T02] ( 2, 2 ) byref -> rdi single-def "field V00._reference (fldOffset=0x0)" P-INDEP
-; V18 tmp15 [V18,T05] ( 2, 2 ) int -> rax single-def "field V00._length (fldOffset=0x8)" P-INDEP
-;* V19 tmp16 [V19 ] ( 0, 0 ) byref -> zero-ref single-def "field V05._reference (fldOffset=0x0)" P-INDEP
-;* V20 tmp17 [V20 ] ( 0, 0 ) int -> zero-ref "field V05._length (fldOffset=0x8)" P-INDEP
-;* V21 tmp18 [V21 ] ( 0, 0 ) byref -> zero-ref single-def "field V08._reference (fldOffset=0x0)" P-INDEP
-;* V22 tmp19 [V22 ] ( 0, 0 ) int -> zero-ref "field V08._length (fldOffset=0x8)" P-INDEP
-;* V23 tmp20 [V23 ] ( 0, 0 ) byref -> zero-ref "field V16._reference (fldOffset=0x0)" P-INDEP
-;* V24 tmp21 [V24 ] ( 0, 0 ) int -> zero-ref "field V16._length (fldOffset=0x8)" P-INDEP
+;* V06 tmp3 [V06 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
+;* V07 tmp4 [V07 ] ( 0, 0 ) byref -> zero-ref single-def "Inlining Arg"
+;* V08 tmp5 [V08 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
+;* V09 tmp6 [V09 ] ( 0, 0 ) int -> zero-ref "Inline return value spill temp"
+;* V10 tmp7 [V10 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
+; V11 tmp8 [V11,T02] ( 2, 2 ) byref -> rdi single-def "field V00._reference (fldOffset=0x0)" P-INDEP
+; V12 tmp9 [V12,T03] ( 2, 2 ) int -> r8 single-def "field V00._length (fldOffset=0x8)" P-INDEP
+;* V13 tmp10 [V13 ] ( 0, 0 ) byref -> zero-ref single-def "field V05._reference (fldOffset=0x0)" P-INDEP
+;* V14 tmp11 [V14 ] ( 0, 0 ) int -> zero-ref "field V05._length (fldOffset=0x8)" P-INDEP
+;* V15 tmp12 [V15 ] ( 0, 0 ) byref -> zero-ref single-def "field V06._reference (fldOffset=0x0)" P-INDEP
+;* V16 tmp13 [V16 ] ( 0, 0 ) int -> zero-ref "field V06._length (fldOffset=0x8)" P-INDEP
+;* V17 tmp14 [V17 ] ( 0, 0 ) byref -> zero-ref "field V10._reference (fldOffset=0x0)" P-INDEP
+;* V18 tmp15 [V18 ] ( 0, 0 ) int -> zero-ref "field V10._length (fldOffset=0x8)" P-INDEP
;
; Lcl frame size = 8
G_M24801_IG01:
push rax
- mov eax, esi
- ;; size=3 bbWeight=1 PerfScore 1.25
+ mov r8d, esi
+ mov eax, edx
+ ;; size=6 bbWeight=1 PerfScore 1.50
G_M24801_IG02:
- movzx rsi, dl
movzx rdx, cl
- mov ecx, eax
+ movzx rsi, al
+ mov ecx, r8d
mov rax, 0xD1FFAB1E ; code for System.SpanHelpers:NonPackedIndexOfAnyValueType[ubyte,System.SpanHelpers+DontNegate`1[ubyte]](byref,ubyte,ubyte,int):int
call [rax]System.SpanHelpers:NonPackedIndexOfAnyValueType[ubyte,System.SpanHelpers+DontNegate`1[ubyte]](byref,ubyte,ubyte,int):int
not eax
shr eax, 31
- ;; size=26 bbWeight=1 PerfScore 4.75
+ ;; size=27 bbWeight=1 PerfScore 4.75
G_M24801_IG03:
add rsp, 8
ret
;; size=5 bbWeight=1 PerfScore 1.25
-; Total bytes of code 34, prolog size 1, PerfScore 7.25, instruction count 11, allocated bytes for code 34 (MethodHash=ed259f1e) for method System.MemoryExtensions:ContainsAny[ubyte](System.ReadOnlySpan`1[ubyte],ubyte,ubyte):ubyte (FullOpts)
+; Total bytes of code 38, prolog size 1, PerfScore 7.50, instruction count 12, allocated bytes for code 38 (MethodHash=ed259f1e) for method System.MemoryExtensions:ContainsAny[ubyte](System.ReadOnlySpan`1[ubyte],ubyte,ubyte):ubyte (FullOpts)
4 (11.765% of base) - System.MemoryExtensions:ContainsAny[ubyte](System.Span`1[ubyte],ubyte,ubyte):ubyte
; Assembly listing for method System.MemoryExtensions:ContainsAny[ubyte](System.Span`1[ubyte],ubyte,ubyte):ubyte (FullOpts)
; Emitting BLENDED_CODE for X64 with AVX - Unix
; FullOpts code
; optimized code
; rsp based frame
; partially interruptible
; No PGO data
; 0 inlinees with PGO data; 8 single block inlinees; 2 inlinees without PGO data
; Final local variable assignments
;
;* V00 arg0 [V00 ] ( 0, 0 ) struct (16) zero-ref multireg-arg single-def <System.Span`1[ubyte]>
-; V01 arg1 [V01,T00] ( 3, 3 ) ubyte -> rdx single-def
+; V01 arg1 [V01,T00] ( 3, 3 ) ubyte -> rax single-def
; V02 arg2 [V02,T01] ( 3, 3 ) ubyte -> rcx single-def
;# V03 OutArgs [V03 ] ( 1, 1 ) struct ( 0) [rsp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
;* V04 tmp1 [V04 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ubyte]>
;* V05 tmp2 [V05 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.Span`1[ubyte]>
;* V06 tmp3 [V06 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ubyte]>
;* V07 tmp4 [V07 ] ( 0, 0 ) byref -> zero-ref single-def "Inlining Arg"
;* V08 tmp5 [V08 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
;* V09 tmp6 [V09 ] ( 0, 0 ) int -> zero-ref "Inline return value spill temp"
;* V10 tmp7 [V10 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
-; V11 tmp8 [V11,T03] ( 2, 4 ) ubyte -> rsi ld-addr-op "Inlining Arg"
-; V12 tmp9 [V12,T04] ( 2, 4 ) ubyte -> rdx ld-addr-op "Inlining Arg"
-;* V13 tmp10 [V13 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
-;* V14 tmp11 [V14 ] ( 0, 0 ) byref -> zero-ref single-def "Inlining Arg"
-;* V15 tmp12 [V15 ] ( 0, 0 ) ubyte -> zero-ref "Inlining Arg"
-;* V16 tmp13 [V16 ] ( 0, 0 ) ubyte -> zero-ref "Inlining Arg"
-;* V17 tmp14 [V17 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
-;* V18 tmp15 [V18 ] ( 0, 0 ) int -> zero-ref "Inline return value spill temp"
-;* V19 tmp16 [V19 ] ( 0, 0 ) ubyte -> zero-ref ld-addr-op "Inlining Arg"
-;* V20 tmp17 [V20 ] ( 0, 0 ) ubyte -> zero-ref ld-addr-op "Inlining Arg"
-;* V21 tmp18 [V21 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
-; V22 tmp19 [V22,T02] ( 2, 2 ) byref -> rdi single-def "field V00._reference (fldOffset=0x0)" P-INDEP
-; V23 tmp20 [V23,T05] ( 2, 2 ) int -> rax single-def "field V00._length (fldOffset=0x8)" P-INDEP
-;* V24 tmp21 [V24 ] ( 0, 0 ) byref -> zero-ref "field V04._reference (fldOffset=0x0)" P-INDEP
-;* V25 tmp22 [V25 ] ( 0, 0 ) int -> zero-ref "field V04._length (fldOffset=0x8)" P-INDEP
-;* V26 tmp23 [V26 ] ( 0, 0 ) byref -> zero-ref single-def "field V05._reference (fldOffset=0x0)" P-INDEP
-;* V27 tmp24 [V27 ] ( 0, 0 ) int -> zero-ref "field V05._length (fldOffset=0x8)" P-INDEP
-;* V28 tmp25 [V28 ] ( 0, 0 ) byref -> zero-ref single-def "field V06._reference (fldOffset=0x0)" P-INDEP
-;* V29 tmp26 [V29 ] ( 0, 0 ) int -> zero-ref "field V06._length (fldOffset=0x8)" P-INDEP
-;* V30 tmp27 [V30 ] ( 0, 0 ) byref -> zero-ref single-def "field V10._reference (fldOffset=0x0)" P-INDEP
-;* V31 tmp28 [V31 ] ( 0, 0 ) int -> zero-ref "field V10._length (fldOffset=0x8)" P-INDEP
-;* V32 tmp29 [V32 ] ( 0, 0 ) byref -> zero-ref single-def "field V13._reference (fldOffset=0x0)" P-INDEP
-;* V33 tmp30 [V33 ] ( 0, 0 ) int -> zero-ref "field V13._length (fldOffset=0x8)" P-INDEP
-;* V34 tmp31 [V34 ] ( 0, 0 ) byref -> zero-ref "field V21._reference (fldOffset=0x0)" P-INDEP
-;* V35 tmp32 [V35 ] ( 0, 0 ) int -> zero-ref "field V21._length (fldOffset=0x8)" P-INDEP
+;* V11 tmp8 [V11 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
+;* V12 tmp9 [V12 ] ( 0, 0 ) byref -> zero-ref single-def "Inlining Arg"
+;* V13 tmp10 [V13 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
+;* V14 tmp11 [V14 ] ( 0, 0 ) int -> zero-ref "Inline return value spill temp"
+;* V15 tmp12 [V15 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
+; V16 tmp13 [V16,T02] ( 2, 2 ) byref -> rdi single-def "field V00._reference (fldOffset=0x0)" P-INDEP
+; V17 tmp14 [V17,T03] ( 2, 2 ) int -> r8 single-def "field V00._length (fldOffset=0x8)" P-INDEP
+;* V18 tmp15 [V18 ] ( 0, 0 ) byref -> zero-ref "field V04._reference (fldOffset=0x0)" P-INDEP
+;* V19 tmp16 [V19 ] ( 0, 0 ) int -> zero-ref "field V04._length (fldOffset=0x8)" P-INDEP
+;* V20 tmp17 [V20 ] ( 0, 0 ) byref -> zero-ref single-def "field V05._reference (fldOffset=0x0)" P-INDEP
+;* V21 tmp18 [V21 ] ( 0, 0 ) int -> zero-ref "field V05._length (fldOffset=0x8)" P-INDEP
+;* V22 tmp19 [V22 ] ( 0, 0 ) byref -> zero-ref single-def "field V06._reference (fldOffset=0x0)" P-INDEP
+;* V23 tmp20 [V23 ] ( 0, 0 ) int -> zero-ref "field V06._length (fldOffset=0x8)" P-INDEP
+;* V24 tmp21 [V24 ] ( 0, 0 ) byref -> zero-ref single-def "field V10._reference (fldOffset=0x0)" P-INDEP
+;* V25 tmp22 [V25 ] ( 0, 0 ) int -> zero-ref "field V10._length (fldOffset=0x8)" P-INDEP
+;* V26 tmp23 [V26 ] ( 0, 0 ) byref -> zero-ref single-def "field V11._reference (fldOffset=0x0)" P-INDEP
+;* V27 tmp24 [V27 ] ( 0, 0 ) int -> zero-ref "field V11._length (fldOffset=0x8)" P-INDEP
+;* V28 tmp25 [V28 ] ( 0, 0 ) byref -> zero-ref "field V15._reference (fldOffset=0x0)" P-INDEP
+;* V29 tmp26 [V29 ] ( 0, 0 ) int -> zero-ref "field V15._length (fldOffset=0x8)" P-INDEP
;
; Lcl frame size = 8
G_M3879_IG01:
push rax
- mov eax, esi
- ;; size=3 bbWeight=1 PerfScore 1.25
+ mov r8d, esi
+ mov eax, edx
+ ;; size=6 bbWeight=1 PerfScore 1.50
G_M3879_IG02:
- movzx rsi, dl
movzx rdx, cl
- mov ecx, eax
+ movzx rsi, al
+ mov ecx, r8d
mov rax, 0xD1FFAB1E ; code for System.SpanHelpers:NonPackedIndexOfAnyValueType[ubyte,System.SpanHelpers+DontNegate`1[ubyte]](byref,ubyte,ubyte,int):int
call [rax]System.SpanHelpers:NonPackedIndexOfAnyValueType[ubyte,System.SpanHelpers+DontNegate`1[ubyte]](byref,ubyte,ubyte,int):int
not eax
shr eax, 31
- ;; size=26 bbWeight=1 PerfScore 4.75
+ ;; size=27 bbWeight=1 PerfScore 4.75
G_M3879_IG03:
add rsp, 8
ret
;; size=5 bbWeight=1 PerfScore 1.25
-; Total bytes of code 34, prolog size 1, PerfScore 7.25, instruction count 11, allocated bytes for code 34 (MethodHash=7b01f0d8) for method System.MemoryExtensions:ContainsAny[ubyte](System.Span`1[ubyte],ubyte,ubyte):ubyte (FullOpts)
+; Total bytes of code 38, prolog size 1, PerfScore 7.50, instruction count 12, allocated bytes for code 38 (MethodHash=7b01f0d8) for method System.MemoryExtensions:ContainsAny[ubyte](System.Span`1[ubyte],ubyte,ubyte):ubyte (FullOpts)
4 (11.765% of base) - System.MemoryExtensions:ContainsAnyExcept[ubyte](System.ReadOnlySpan`1[ubyte],ubyte,ubyte):ubyte
; Assembly listing for method System.MemoryExtensions:ContainsAnyExcept[ubyte](System.ReadOnlySpan`1[ubyte],ubyte,ubyte):ubyte (FullOpts)
; Emitting BLENDED_CODE for X64 with AVX - Unix
; FullOpts code
; optimized code
; rsp based frame
; partially interruptible
; No PGO data
; 0 inlinees with PGO data; 5 single block inlinees; 2 inlinees without PGO data
; Final local variable assignments
;
;* V00 arg0 [V00 ] ( 0, 0 ) struct (16) zero-ref multireg-arg single-def <System.ReadOnlySpan`1[ubyte]>
-; V01 arg1 [V01,T00] ( 3, 3 ) ubyte -> rdx single-def
+; V01 arg1 [V01,T00] ( 3, 3 ) ubyte -> rax single-def
; V02 arg2 [V02,T01] ( 3, 3 ) ubyte -> rcx single-def
;# V03 OutArgs [V03 ] ( 1, 1 ) struct ( 0) [rsp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
;* V04 tmp1 [V04 ] ( 0, 0 ) int -> zero-ref "Inline return value spill temp"
;* V05 tmp2 [V05 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
-; V06 tmp3 [V06,T03] ( 2, 4 ) ubyte -> rsi ld-addr-op "Inlining Arg"
-; V07 tmp4 [V07,T04] ( 2, 4 ) ubyte -> rdx ld-addr-op "Inlining Arg"
-;* V08 tmp5 [V08 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
-;* V09 tmp6 [V09 ] ( 0, 0 ) byref -> zero-ref single-def "Inlining Arg"
-;* V10 tmp7 [V10 ] ( 0, 0 ) ubyte -> zero-ref "Inlining Arg"
-;* V11 tmp8 [V11 ] ( 0, 0 ) ubyte -> zero-ref "Inlining Arg"
-;* V12 tmp9 [V12 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
-;* V13 tmp10 [V13 ] ( 0, 0 ) int -> zero-ref "Inline return value spill temp"
-;* V14 tmp11 [V14 ] ( 0, 0 ) ubyte -> zero-ref ld-addr-op "Inlining Arg"
-;* V15 tmp12 [V15 ] ( 0, 0 ) ubyte -> zero-ref ld-addr-op "Inlining Arg"
-;* V16 tmp13 [V16 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
-; V17 tmp14 [V17,T02] ( 2, 2 ) byref -> rdi single-def "field V00._reference (fldOffset=0x0)" P-INDEP
-; V18 tmp15 [V18,T05] ( 2, 2 ) int -> rax single-def "field V00._length (fldOffset=0x8)" P-INDEP
-;* V19 tmp16 [V19 ] ( 0, 0 ) byref -> zero-ref single-def "field V05._reference (fldOffset=0x0)" P-INDEP
-;* V20 tmp17 [V20 ] ( 0, 0 ) int -> zero-ref "field V05._length (fldOffset=0x8)" P-INDEP
-;* V21 tmp18 [V21 ] ( 0, 0 ) byref -> zero-ref single-def "field V08._reference (fldOffset=0x0)" P-INDEP
-;* V22 tmp19 [V22 ] ( 0, 0 ) int -> zero-ref "field V08._length (fldOffset=0x8)" P-INDEP
-;* V23 tmp20 [V23 ] ( 0, 0 ) byref -> zero-ref "field V16._reference (fldOffset=0x0)" P-INDEP
-;* V24 tmp21 [V24 ] ( 0, 0 ) int -> zero-ref "field V16._length (fldOffset=0x8)" P-INDEP
+;* V06 tmp3 [V06 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
+;* V07 tmp4 [V07 ] ( 0, 0 ) byref -> zero-ref single-def "Inlining Arg"
+;* V08 tmp5 [V08 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
+;* V09 tmp6 [V09 ] ( 0, 0 ) int -> zero-ref "Inline return value spill temp"
+;* V10 tmp7 [V10 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
+; V11 tmp8 [V11,T02] ( 2, 2 ) byref -> rdi single-def "field V00._reference (fldOffset=0x0)" P-INDEP
+; V12 tmp9 [V12,T03] ( 2, 2 ) int -> r8 single-def "field V00._length (fldOffset=0x8)" P-INDEP
+;* V13 tmp10 [V13 ] ( 0, 0 ) byref -> zero-ref single-def "field V05._reference (fldOffset=0x0)" P-INDEP
+;* V14 tmp11 [V14 ] ( 0, 0 ) int -> zero-ref "field V05._length (fldOffset=0x8)" P-INDEP
+;* V15 tmp12 [V15 ] ( 0, 0 ) byref -> zero-ref single-def "field V06._reference (fldOffset=0x0)" P-INDEP
+;* V16 tmp13 [V16 ] ( 0, 0 ) int -> zero-ref "field V06._length (fldOffset=0x8)" P-INDEP
+;* V17 tmp14 [V17 ] ( 0, 0 ) byref -> zero-ref "field V10._reference (fldOffset=0x0)" P-INDEP
+;* V18 tmp15 [V18 ] ( 0, 0 ) int -> zero-ref "field V10._length (fldOffset=0x8)" P-INDEP
;
; Lcl frame size = 8
G_M52798_IG01:
push rax
- mov eax, esi
- ;; size=3 bbWeight=1 PerfScore 1.25
+ mov r8d, esi
+ mov eax, edx
+ ;; size=6 bbWeight=1 PerfScore 1.50
G_M52798_IG02:
- movzx rsi, dl
movzx rdx, cl
- mov ecx, eax
+ movzx rsi, al
+ mov ecx, r8d
mov rax, 0xD1FFAB1E ; code for System.SpanHelpers:NonPackedIndexOfAnyValueType[ubyte,System.SpanHelpers+Negate`1[ubyte]](byref,ubyte,ubyte,int):int
call [rax]System.SpanHelpers:NonPackedIndexOfAnyValueType[ubyte,System.SpanHelpers+Negate`1[ubyte]](byref,ubyte,ubyte,int):int
not eax
shr eax, 31
- ;; size=26 bbWeight=1 PerfScore 4.75
+ ;; size=27 bbWeight=1 PerfScore 4.75
G_M52798_IG03:
add rsp, 8
ret
;; size=5 bbWeight=1 PerfScore 1.25
-; Total bytes of code 34, prolog size 1, PerfScore 7.25, instruction count 11, allocated bytes for code 34 (MethodHash=d4f431c1) for method System.MemoryExtensions:ContainsAnyExcept[ubyte](System.ReadOnlySpan`1[ubyte],ubyte,ubyte):ubyte (FullOpts)
+; Total bytes of code 38, prolog size 1, PerfScore 7.50, instruction count 12, allocated bytes for code 38 (MethodHash=d4f431c1) for method System.MemoryExtensions:ContainsAnyExcept[ubyte](System.ReadOnlySpan`1[ubyte],ubyte,ubyte):ubyte (FullOpts)
4 (11.765% of base) - System.MemoryExtensions:ContainsAnyExcept[ubyte](System.Span`1[ubyte],ubyte,ubyte):ubyte
; Assembly listing for method System.MemoryExtensions:ContainsAnyExcept[ubyte](System.Span`1[ubyte],ubyte,ubyte):ubyte (FullOpts)
; Emitting BLENDED_CODE for X64 with AVX - Unix
; FullOpts code
; optimized code
; rsp based frame
; partially interruptible
; No PGO data
; 0 inlinees with PGO data; 8 single block inlinees; 2 inlinees without PGO data
; Final local variable assignments
;
;* V00 arg0 [V00 ] ( 0, 0 ) struct (16) zero-ref multireg-arg single-def <System.Span`1[ubyte]>
-; V01 arg1 [V01,T00] ( 3, 3 ) ubyte -> rdx single-def
+; V01 arg1 [V01,T00] ( 3, 3 ) ubyte -> rax single-def
; V02 arg2 [V02,T01] ( 3, 3 ) ubyte -> rcx single-def
;# V03 OutArgs [V03 ] ( 1, 1 ) struct ( 0) [rsp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
;* V04 tmp1 [V04 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ubyte]>
;* V05 tmp2 [V05 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.Span`1[ubyte]>
;* V06 tmp3 [V06 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ubyte]>
;* V07 tmp4 [V07 ] ( 0, 0 ) byref -> zero-ref single-def "Inlining Arg"
;* V08 tmp5 [V08 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
;* V09 tmp6 [V09 ] ( 0, 0 ) int -> zero-ref "Inline return value spill temp"
;* V10 tmp7 [V10 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
-; V11 tmp8 [V11,T03] ( 2, 4 ) ubyte -> rsi ld-addr-op "Inlining Arg"
-; V12 tmp9 [V12,T04] ( 2, 4 ) ubyte -> rdx ld-addr-op "Inlining Arg"
-;* V13 tmp10 [V13 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
-;* V14 tmp11 [V14 ] ( 0, 0 ) byref -> zero-ref single-def "Inlining Arg"
-;* V15 tmp12 [V15 ] ( 0, 0 ) ubyte -> zero-ref "Inlining Arg"
-;* V16 tmp13 [V16 ] ( 0, 0 ) ubyte -> zero-ref "Inlining Arg"
-;* V17 tmp14 [V17 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
-;* V18 tmp15 [V18 ] ( 0, 0 ) int -> zero-ref "Inline return value spill temp"
-;* V19 tmp16 [V19 ] ( 0, 0 ) ubyte -> zero-ref ld-addr-op "Inlining Arg"
-;* V20 tmp17 [V20 ] ( 0, 0 ) ubyte -> zero-ref ld-addr-op "Inlining Arg"
-;* V21 tmp18 [V21 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
-; V22 tmp19 [V22,T02] ( 2, 2 ) byref -> rdi single-def "field V00._reference (fldOffset=0x0)" P-INDEP
-; V23 tmp20 [V23,T05] ( 2, 2 ) int -> rax single-def "field V00._length (fldOffset=0x8)" P-INDEP
-;* V24 tmp21 [V24 ] ( 0, 0 ) byref -> zero-ref "field V04._reference (fldOffset=0x0)" P-INDEP
-;* V25 tmp22 [V25 ] ( 0, 0 ) int -> zero-ref "field V04._length (fldOffset=0x8)" P-INDEP
-;* V26 tmp23 [V26 ] ( 0, 0 ) byref -> zero-ref single-def "field V05._reference (fldOffset=0x0)" P-INDEP
-;* V27 tmp24 [V27 ] ( 0, 0 ) int -> zero-ref "field V05._length (fldOffset=0x8)" P-INDEP
-;* V28 tmp25 [V28 ] ( 0, 0 ) byref -> zero-ref single-def "field V06._reference (fldOffset=0x0)" P-INDEP
-;* V29 tmp26 [V29 ] ( 0, 0 ) int -> zero-ref "field V06._length (fldOffset=0x8)" P-INDEP
-;* V30 tmp27 [V30 ] ( 0, 0 ) byref -> zero-ref single-def "field V10._reference (fldOffset=0x0)" P-INDEP
-;* V31 tmp28 [V31 ] ( 0, 0 ) int -> zero-ref "field V10._length (fldOffset=0x8)" P-INDEP
-;* V32 tmp29 [V32 ] ( 0, 0 ) byref -> zero-ref single-def "field V13._reference (fldOffset=0x0)" P-INDEP
-;* V33 tmp30 [V33 ] ( 0, 0 ) int -> zero-ref "field V13._length (fldOffset=0x8)" P-INDEP
-;* V34 tmp31 [V34 ] ( 0, 0 ) byref -> zero-ref "field V21._reference (fldOffset=0x0)" P-INDEP
-;* V35 tmp32 [V35 ] ( 0, 0 ) int -> zero-ref "field V21._length (fldOffset=0x8)" P-INDEP
+;* V11 tmp8 [V11 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
+;* V12 tmp9 [V12 ] ( 0, 0 ) byref -> zero-ref single-def "Inlining Arg"
+;* V13 tmp10 [V13 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
+;* V14 tmp11 [V14 ] ( 0, 0 ) int -> zero-ref "Inline return value spill temp"
+;* V15 tmp12 [V15 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
+; V16 tmp13 [V16,T02] ( 2, 2 ) byref -> rdi single-def "field V00._reference (fldOffset=0x0)" P-INDEP
+; V17 tmp14 [V17,T03] ( 2, 2 ) int -> r8 single-def "field V00._length (fldOffset=0x8)" P-INDEP
+;* V18 tmp15 [V18 ] ( 0, 0 ) byref -> zero-ref "field V04._reference (fldOffset=0x0)" P-INDEP
+;* V19 tmp16 [V19 ] ( 0, 0 ) int -> zero-ref "field V04._length (fldOffset=0x8)" P-INDEP
+;* V20 tmp17 [V20 ] ( 0, 0 ) byref -> zero-ref single-def "field V05._reference (fldOffset=0x0)" P-INDEP
+;* V21 tmp18 [V21 ] ( 0, 0 ) int -> zero-ref "field V05._length (fldOffset=0x8)" P-INDEP
+;* V22 tmp19 [V22 ] ( 0, 0 ) byref -> zero-ref single-def "field V06._reference (fldOffset=0x0)" P-INDEP
+;* V23 tmp20 [V23 ] ( 0, 0 ) int -> zero-ref "field V06._length (fldOffset=0x8)" P-INDEP
+;* V24 tmp21 [V24 ] ( 0, 0 ) byref -> zero-ref single-def "field V10._reference (fldOffset=0x0)" P-INDEP
+;* V25 tmp22 [V25 ] ( 0, 0 ) int -> zero-ref "field V10._length (fldOffset=0x8)" P-INDEP
+;* V26 tmp23 [V26 ] ( 0, 0 ) byref -> zero-ref single-def "field V11._reference (fldOffset=0x0)" P-INDEP
+;* V27 tmp24 [V27 ] ( 0, 0 ) int -> zero-ref "field V11._length (fldOffset=0x8)" P-INDEP
+;* V28 tmp25 [V28 ] ( 0, 0 ) byref -> zero-ref "field V15._reference (fldOffset=0x0)" P-INDEP
+;* V29 tmp26 [V29 ] ( 0, 0 ) int -> zero-ref "field V15._length (fldOffset=0x8)" P-INDEP
;
; Lcl frame size = 8
G_M35832_IG01:
push rax
- mov eax, esi
- ;; size=3 bbWeight=1 PerfScore 1.25
+ mov r8d, esi
+ mov eax, edx
+ ;; size=6 bbWeight=1 PerfScore 1.50
G_M35832_IG02:
- movzx rsi, dl
movzx rdx, cl
- mov ecx, eax
+ movzx rsi, al
+ mov ecx, r8d
mov rax, 0xD1FFAB1E ; code for System.SpanHelpers:NonPackedIndexOfAnyValueType[ubyte,System.SpanHelpers+Negate`1[ubyte]](byref,ubyte,ubyte,int):int
call [rax]System.SpanHelpers:NonPackedIndexOfAnyValueType[ubyte,System.SpanHelpers+Negate`1[ubyte]](byref,ubyte,ubyte,int):int
not eax
shr eax, 31
- ;; size=26 bbWeight=1 PerfScore 4.75
+ ;; size=27 bbWeight=1 PerfScore 4.75
G_M35832_IG03:
add rsp, 8
ret
;; size=5 bbWeight=1 PerfScore 1.25
-; Total bytes of code 34, prolog size 1, PerfScore 7.25, instruction count 11, allocated bytes for code 34 (MethodHash=f7bb7407) for method System.MemoryExtensions:ContainsAnyExcept[ubyte](System.Span`1[ubyte],ubyte,ubyte):ubyte (FullOpts)
+; Total bytes of code 38, prolog size 1, PerfScore 7.50, instruction count 12, allocated bytes for code 38 (MethodHash=f7bb7407) for method System.MemoryExtensions:ContainsAnyExcept[ubyte](System.Span`1[ubyte],ubyte,ubyte):ubyte (FullOpts)
4 (13.333% of base) - System.MemoryExtensions:IndexOfAny[ubyte](System.ReadOnlySpan`1[ubyte],ubyte,ubyte):int
; Assembly listing for method System.MemoryExtensions:IndexOfAny[ubyte](System.ReadOnlySpan`1[ubyte],ubyte,ubyte):int (FullOpts)
; Emitting BLENDED_CODE for X64 with AVX - Unix
; FullOpts code
; optimized code
; rbp based frame
; partially interruptible
; No PGO data
; 0 inlinees with PGO data; 5 single block inlinees; 1 inlinees without PGO data
; Final local variable assignments
;
;* V00 arg0 [V00 ] ( 0, 0 ) struct (16) zero-ref multireg-arg ld-addr-op single-def <System.ReadOnlySpan`1[ubyte]>
-; V01 arg1 [V01,T00] ( 3, 3 ) ubyte -> rdx ld-addr-op single-def
-; V02 arg2 [V02,T01] ( 3, 3 ) ubyte -> rcx ld-addr-op single-def
+; V01 arg1 [V01,T00] ( 3, 3 ) ubyte -> rax single-def
+; V02 arg2 [V02,T01] ( 3, 3 ) ubyte -> rcx single-def
;# V03 OutArgs [V03 ] ( 1, 1 ) struct ( 0) [rsp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
;* V04 tmp1 [V04 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
;* V05 tmp2 [V05 ] ( 0, 0 ) byref -> zero-ref single-def "Inlining Arg"
-; V06 tmp3 [V06,T03] ( 2, 4 ) ubyte -> rsi "Inlining Arg"
-; V07 tmp4 [V07,T04] ( 2, 4 ) ubyte -> rdx "Inlining Arg"
-;* V08 tmp5 [V08 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
-;* V09 tmp6 [V09 ] ( 0, 0 ) int -> zero-ref "Inline return value spill temp"
-;* V10 tmp7 [V10 ] ( 0, 0 ) ubyte -> zero-ref ld-addr-op "Inlining Arg"
-;* V11 tmp8 [V11 ] ( 0, 0 ) ubyte -> zero-ref ld-addr-op "Inlining Arg"
-;* V12 tmp9 [V12 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
-; V13 tmp10 [V13,T02] ( 2, 2 ) byref -> rdi single-def "field V00._reference (fldOffset=0x0)" P-INDEP
-; V14 tmp11 [V14,T05] ( 2, 2 ) int -> rax single-def "field V00._length (fldOffset=0x8)" P-INDEP
-;* V15 tmp12 [V15 ] ( 0, 0 ) byref -> zero-ref single-def "field V04._reference (fldOffset=0x0)" P-INDEP
-;* V16 tmp13 [V16 ] ( 0, 0 ) int -> zero-ref "field V04._length (fldOffset=0x8)" P-INDEP
-;* V17 tmp14 [V17 ] ( 0, 0 ) byref -> zero-ref "field V12._reference (fldOffset=0x0)" P-INDEP
-;* V18 tmp15 [V18 ] ( 0, 0 ) int -> zero-ref "field V12._length (fldOffset=0x8)" P-INDEP
+;* V06 tmp3 [V06 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
+;* V07 tmp4 [V07 ] ( 0, 0 ) int -> zero-ref "Inline return value spill temp"
+;* V08 tmp5 [V08 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
+; V09 tmp6 [V09,T02] ( 2, 2 ) byref -> rdi single-def "field V00._reference (fldOffset=0x0)" P-INDEP
+; V10 tmp7 [V10,T03] ( 2, 2 ) int -> r8 single-def "field V00._length (fldOffset=0x8)" P-INDEP
+;* V11 tmp8 [V11 ] ( 0, 0 ) byref -> zero-ref single-def "field V04._reference (fldOffset=0x0)" P-INDEP
+;* V12 tmp9 [V12 ] ( 0, 0 ) int -> zero-ref "field V04._length (fldOffset=0x8)" P-INDEP
+;* V13 tmp10 [V13 ] ( 0, 0 ) byref -> zero-ref "field V08._reference (fldOffset=0x0)" P-INDEP
+;* V14 tmp11 [V14 ] ( 0, 0 ) int -> zero-ref "field V08._length (fldOffset=0x8)" P-INDEP
;
; Lcl frame size = 0
G_M53401_IG01:
push rbp
mov rbp, rsp
- mov eax, esi
- ;; size=6 bbWeight=1 PerfScore 1.50
+ mov r8d, esi
+ mov eax, edx
+ ;; size=9 bbWeight=1 PerfScore 1.75
G_M53401_IG02:
- movzx rsi, dl
movzx rdx, cl
- mov ecx, eax
+ movzx rsi, al
+ mov ecx, r8d
mov rax, 0xD1FFAB1E ; code for System.SpanHelpers:NonPackedIndexOfAnyValueType[ubyte,System.SpanHelpers+DontNegate`1[ubyte]](byref,ubyte,ubyte,int):int
call [rax]System.SpanHelpers:NonPackedIndexOfAnyValueType[ubyte,System.SpanHelpers+DontNegate`1[ubyte]](byref,ubyte,ubyte,int):int
nop
- ;; size=22 bbWeight=1 PerfScore 4.25
+ ;; size=23 bbWeight=1 PerfScore 4.25
G_M53401_IG03:
pop rbp
ret
;; size=2 bbWeight=1 PerfScore 1.50
-; Total bytes of code 30, prolog size 4, PerfScore 7.25, instruction count 11, allocated bytes for code 30 (MethodHash=199b2f66) for method System.MemoryExtensions:IndexOfAny[ubyte](System.ReadOnlySpan`1[ubyte],ubyte,ubyte):int (FullOpts)
+; Total bytes of code 34, prolog size 4, PerfScore 7.50, instruction count 12, allocated bytes for code 34 (MethodHash=199b2f66) for method System.MemoryExtensions:IndexOfAny[ubyte](System.ReadOnlySpan`1[ubyte],ubyte,ubyte):int (FullOpts)
4 (13.333% of base) - System.MemoryExtensions:IndexOfAny[ubyte](System.Span`1[ubyte],ubyte,ubyte):int
; Assembly listing for method System.MemoryExtensions:IndexOfAny[ubyte](System.Span`1[ubyte],ubyte,ubyte):int (FullOpts)
; Emitting BLENDED_CODE for X64 with AVX - Unix
; FullOpts code
; optimized code
; rbp based frame
; partially interruptible
; No PGO data
; 0 inlinees with PGO data; 5 single block inlinees; 1 inlinees without PGO data
; Final local variable assignments
;
;* V00 arg0 [V00 ] ( 0, 0 ) struct (16) zero-ref multireg-arg ld-addr-op single-def <System.Span`1[ubyte]>
-; V01 arg1 [V01,T00] ( 3, 3 ) ubyte -> rdx ld-addr-op single-def
-; V02 arg2 [V02,T01] ( 3, 3 ) ubyte -> rcx ld-addr-op single-def
+; V01 arg1 [V01,T00] ( 3, 3 ) ubyte -> rax single-def
+; V02 arg2 [V02,T01] ( 3, 3 ) ubyte -> rcx single-def
;# V03 OutArgs [V03 ] ( 1, 1 ) struct ( 0) [rsp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
;* V04 tmp1 [V04 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.Span`1[ubyte]>
;* V05 tmp2 [V05 ] ( 0, 0 ) byref -> zero-ref single-def "Inlining Arg"
-; V06 tmp3 [V06,T03] ( 2, 4 ) ubyte -> rsi "Inlining Arg"
-; V07 tmp4 [V07,T04] ( 2, 4 ) ubyte -> rdx "Inlining Arg"
-;* V08 tmp5 [V08 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
-;* V09 tmp6 [V09 ] ( 0, 0 ) int -> zero-ref "Inline return value spill temp"
-;* V10 tmp7 [V10 ] ( 0, 0 ) ubyte -> zero-ref ld-addr-op "Inlining Arg"
-;* V11 tmp8 [V11 ] ( 0, 0 ) ubyte -> zero-ref ld-addr-op "Inlining Arg"
-;* V12 tmp9 [V12 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.Span`1[ubyte]>
-; V13 tmp10 [V13,T02] ( 2, 2 ) byref -> rdi single-def "field V00._reference (fldOffset=0x0)" P-INDEP
-; V14 tmp11 [V14,T05] ( 2, 2 ) int -> rax single-def "field V00._length (fldOffset=0x8)" P-INDEP
-;* V15 tmp12 [V15 ] ( 0, 0 ) byref -> zero-ref single-def "field V04._reference (fldOffset=0x0)" P-INDEP
-;* V16 tmp13 [V16 ] ( 0, 0 ) int -> zero-ref "field V04._length (fldOffset=0x8)" P-INDEP
-;* V17 tmp14 [V17 ] ( 0, 0 ) byref -> zero-ref "field V12._reference (fldOffset=0x0)" P-INDEP
-;* V18 tmp15 [V18 ] ( 0, 0 ) int -> zero-ref "field V12._length (fldOffset=0x8)" P-INDEP
+;* V06 tmp3 [V06 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
+;* V07 tmp4 [V07 ] ( 0, 0 ) int -> zero-ref "Inline return value spill temp"
+;* V08 tmp5 [V08 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.Span`1[ubyte]>
+; V09 tmp6 [V09,T02] ( 2, 2 ) byref -> rdi single-def "field V00._reference (fldOffset=0x0)" P-INDEP
+; V10 tmp7 [V10,T03] ( 2, 2 ) int -> r8 single-def "field V00._length (fldOffset=0x8)" P-INDEP
+;* V11 tmp8 [V11 ] ( 0, 0 ) byref -> zero-ref single-def "field V04._reference (fldOffset=0x0)" P-INDEP
+;* V12 tmp9 [V12 ] ( 0, 0 ) int -> zero-ref "field V04._length (fldOffset=0x8)" P-INDEP
+;* V13 tmp10 [V13 ] ( 0, 0 ) byref -> zero-ref "field V08._reference (fldOffset=0x0)" P-INDEP
+;* V14 tmp11 [V14 ] ( 0, 0 ) int -> zero-ref "field V08._length (fldOffset=0x8)" P-INDEP
;
; Lcl frame size = 0
G_M38495_IG01:
push rbp
mov rbp, rsp
- mov eax, esi
- ;; size=6 bbWeight=1 PerfScore 1.50
+ mov r8d, esi
+ mov eax, edx
+ ;; size=9 bbWeight=1 PerfScore 1.75
G_M38495_IG02:
- movzx rsi, dl
movzx rdx, cl
- mov ecx, eax
+ movzx rsi, al
+ mov ecx, r8d
mov rax, 0xD1FFAB1E ; code for System.SpanHelpers:NonPackedIndexOfAnyValueType[ubyte,System.SpanHelpers+DontNegate`1[ubyte]](byref,ubyte,ubyte,int):int
call [rax]System.SpanHelpers:NonPackedIndexOfAnyValueType[ubyte,System.SpanHelpers+DontNegate`1[ubyte]](byref,ubyte,ubyte,int):int
nop
- ;; size=22 bbWeight=1 PerfScore 4.25
+ ;; size=23 bbWeight=1 PerfScore 4.25
G_M38495_IG03:
pop rbp
ret
;; size=2 bbWeight=1 PerfScore 1.50
-; Total bytes of code 30, prolog size 4, PerfScore 7.25, instruction count 11, allocated bytes for code 30 (MethodHash=5f0e69a0) for method System.MemoryExtensions:IndexOfAny[ubyte](System.Span`1[ubyte],ubyte,ubyte):int (FullOpts)
+; Total bytes of code 34, prolog size 4, PerfScore 7.50, instruction count 12, allocated bytes for code 34 (MethodHash=5f0e69a0) for method System.MemoryExtensions:IndexOfAny[ubyte](System.Span`1[ubyte],ubyte,ubyte):int (FullOpts)
4 (13.333% of base) - System.MemoryExtensions:IndexOfAnyExcept[ubyte](System.ReadOnlySpan`1[ubyte],ubyte,ubyte):int
; Assembly listing for method System.MemoryExtensions:IndexOfAnyExcept[ubyte](System.ReadOnlySpan`1[ubyte],ubyte,ubyte):int (FullOpts)
; Emitting BLENDED_CODE for X64 with AVX - Unix
; FullOpts code
; optimized code
; rbp based frame
; partially interruptible
; No PGO data
; 0 inlinees with PGO data; 5 single block inlinees; 1 inlinees without PGO data
; Final local variable assignments
;
;* V00 arg0 [V00 ] ( 0, 0 ) struct (16) zero-ref multireg-arg ld-addr-op single-def <System.ReadOnlySpan`1[ubyte]>
-; V01 arg1 [V01,T00] ( 3, 3 ) ubyte -> rdx ld-addr-op single-def
-; V02 arg2 [V02,T01] ( 3, 3 ) ubyte -> rcx ld-addr-op single-def
+; V01 arg1 [V01,T00] ( 3, 3 ) ubyte -> rax single-def
+; V02 arg2 [V02,T01] ( 3, 3 ) ubyte -> rcx single-def
;# V03 OutArgs [V03 ] ( 1, 1 ) struct ( 0) [rsp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
;* V04 tmp1 [V04 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
;* V05 tmp2 [V05 ] ( 0, 0 ) byref -> zero-ref single-def "Inlining Arg"
-; V06 tmp3 [V06,T03] ( 2, 4 ) ubyte -> rsi "Inlining Arg"
-; V07 tmp4 [V07,T04] ( 2, 4 ) ubyte -> rdx "Inlining Arg"
-;* V08 tmp5 [V08 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
-;* V09 tmp6 [V09 ] ( 0, 0 ) int -> zero-ref "Inline return value spill temp"
-;* V10 tmp7 [V10 ] ( 0, 0 ) ubyte -> zero-ref ld-addr-op "Inlining Arg"
-;* V11 tmp8 [V11 ] ( 0, 0 ) ubyte -> zero-ref ld-addr-op "Inlining Arg"
-;* V12 tmp9 [V12 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
-; V13 tmp10 [V13,T02] ( 2, 2 ) byref -> rdi single-def "field V00._reference (fldOffset=0x0)" P-INDEP
-; V14 tmp11 [V14,T05] ( 2, 2 ) int -> rax single-def "field V00._length (fldOffset=0x8)" P-INDEP
-;* V15 tmp12 [V15 ] ( 0, 0 ) byref -> zero-ref single-def "field V04._reference (fldOffset=0x0)" P-INDEP
-;* V16 tmp13 [V16 ] ( 0, 0 ) int -> zero-ref "field V04._length (fldOffset=0x8)" P-INDEP
-;* V17 tmp14 [V17 ] ( 0, 0 ) byref -> zero-ref "field V12._reference (fldOffset=0x0)" P-INDEP
-;* V18 tmp15 [V18 ] ( 0, 0 ) int -> zero-ref "field V12._length (fldOffset=0x8)" P-INDEP
+;* V06 tmp3 [V06 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
+;* V07 tmp4 [V07 ] ( 0, 0 ) int -> zero-ref "Inline return value spill temp"
+;* V08 tmp5 [V08 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
+; V09 tmp6 [V09,T02] ( 2, 2 ) byref -> rdi single-def "field V00._reference (fldOffset=0x0)" P-INDEP
+; V10 tmp7 [V10,T03] ( 2, 2 ) int -> r8 single-def "field V00._length (fldOffset=0x8)" P-INDEP
+;* V11 tmp8 [V11 ] ( 0, 0 ) byref -> zero-ref single-def "field V04._reference (fldOffset=0x0)" P-INDEP
+;* V12 tmp9 [V12 ] ( 0, 0 ) int -> zero-ref "field V04._length (fldOffset=0x8)" P-INDEP
+;* V13 tmp10 [V13 ] ( 0, 0 ) byref -> zero-ref "field V08._reference (fldOffset=0x0)" P-INDEP
+;* V14 tmp11 [V14 ] ( 0, 0 ) int -> zero-ref "field V08._length (fldOffset=0x8)" P-INDEP
;
; Lcl frame size = 0
G_M19078_IG01:
push rbp
mov rbp, rsp
- mov eax, esi
- ;; size=6 bbWeight=1 PerfScore 1.50
+ mov r8d, esi
+ mov eax, edx
+ ;; size=9 bbWeight=1 PerfScore 1.75
G_M19078_IG02:
- movzx rsi, dl
movzx rdx, cl
- mov ecx, eax
+ movzx rsi, al
+ mov ecx, r8d
mov rax, 0xD1FFAB1E ; code for System.SpanHelpers:NonPackedIndexOfAnyValueType[ubyte,System.SpanHelpers+Negate`1[ubyte]](byref,ubyte,ubyte,int):int
call [rax]System.SpanHelpers:NonPackedIndexOfAnyValueType[ubyte,System.SpanHelpers+Negate`1[ubyte]](byref,ubyte,ubyte,int):int
nop
- ;; size=22 bbWeight=1 PerfScore 4.25
+ ;; size=23 bbWeight=1 PerfScore 4.25
G_M19078_IG03:
pop rbp
ret
;; size=2 bbWeight=1 PerfScore 1.50
-; Total bytes of code 30, prolog size 4, PerfScore 7.25, instruction count 11, allocated bytes for code 30 (MethodHash=6519b579) for method System.MemoryExtensions:IndexOfAnyExcept[ubyte](System.ReadOnlySpan`1[ubyte],ubyte,ubyte):int (FullOpts)
+; Total bytes of code 34, prolog size 4, PerfScore 7.50, instruction count 12, allocated bytes for code 34 (MethodHash=6519b579) for method System.MemoryExtensions:IndexOfAnyExcept[ubyte](System.ReadOnlySpan`1[ubyte],ubyte,ubyte):int (FullOpts)
4 (13.333% of base) - System.MemoryExtensions:IndexOfAnyExcept[ubyte](System.Span`1[ubyte],ubyte,ubyte):int
; Assembly listing for method System.MemoryExtensions:IndexOfAnyExcept[ubyte](System.Span`1[ubyte],ubyte,ubyte):int (FullOpts)
; Emitting BLENDED_CODE for X64 with AVX - Unix
; FullOpts code
; optimized code
; rsp based frame
; partially interruptible
; No PGO data
; 0 inlinees with PGO data; 7 single block inlinees; 2 inlinees without PGO data
; Final local variable assignments
;
;* V00 arg0 [V00 ] ( 0, 0 ) struct (16) zero-ref multireg-arg single-def <System.Span`1[ubyte]>
-; V01 arg1 [V01,T00] ( 3, 3 ) ubyte -> rdx single-def
+; V01 arg1 [V01,T00] ( 3, 3 ) ubyte -> rax single-def
; V02 arg2 [V02,T01] ( 3, 3 ) ubyte -> rcx single-def
;# V03 OutArgs [V03 ] ( 1, 1 ) struct ( 0) [rsp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
;* V04 tmp1 [V04 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ubyte]>
;* V05 tmp2 [V05 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.Span`1[ubyte]>
;* V06 tmp3 [V06 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ubyte]>
;* V07 tmp4 [V07 ] ( 0, 0 ) byref -> zero-ref single-def "Inlining Arg"
;* V08 tmp5 [V08 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
;* V09 tmp6 [V09 ] ( 0, 0 ) int -> zero-ref "Inline return value spill temp"
;* V10 tmp7 [V10 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
-; V11 tmp8 [V11,T03] ( 2, 4 ) ubyte -> rsi ld-addr-op "Inlining Arg"
-; V12 tmp9 [V12,T04] ( 2, 4 ) ubyte -> rdx ld-addr-op "Inlining Arg"
-;* V13 tmp10 [V13 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
-;* V14 tmp11 [V14 ] ( 0, 0 ) byref -> zero-ref single-def "Inlining Arg"
-;* V15 tmp12 [V15 ] ( 0, 0 ) ubyte -> zero-ref "Inlining Arg"
-;* V16 tmp13 [V16 ] ( 0, 0 ) ubyte -> zero-ref "Inlining Arg"
-;* V17 tmp14 [V17 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
-;* V18 tmp15 [V18 ] ( 0, 0 ) int -> zero-ref "Inline return value spill temp"
-;* V19 tmp16 [V19 ] ( 0, 0 ) ubyte -> zero-ref ld-addr-op "Inlining Arg"
-;* V20 tmp17 [V20 ] ( 0, 0 ) ubyte -> zero-ref ld-addr-op "Inlining Arg"
-;* V21 tmp18 [V21 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
-; V22 tmp19 [V22,T02] ( 2, 2 ) byref -> rdi single-def "field V00._reference (fldOffset=0x0)" P-INDEP
-; V23 tmp20 [V23,T05] ( 2, 2 ) int -> rax single-def "field V00._length (fldOffset=0x8)" P-INDEP
-;* V24 tmp21 [V24 ] ( 0, 0 ) byref -> zero-ref "field V04._reference (fldOffset=0x0)" P-INDEP
-;* V25 tmp22 [V25 ] ( 0, 0 ) int -> zero-ref "field V04._length (fldOffset=0x8)" P-INDEP
-;* V26 tmp23 [V26 ] ( 0, 0 ) byref -> zero-ref single-def "field V05._reference (fldOffset=0x0)" P-INDEP
-;* V27 tmp24 [V27 ] ( 0, 0 ) int -> zero-ref "field V05._length (fldOffset=0x8)" P-INDEP
-;* V28 tmp25 [V28 ] ( 0, 0 ) byref -> zero-ref single-def "field V06._reference (fldOffset=0x0)" P-INDEP
-;* V29 tmp26 [V29 ] ( 0, 0 ) int -> zero-ref "field V06._length (fldOffset=0x8)" P-INDEP
-;* V30 tmp27 [V30 ] ( 0, 0 ) byref -> zero-ref single-def "field V10._reference (fldOffset=0x0)" P-INDEP
-;* V31 tmp28 [V31 ] ( 0, 0 ) int -> zero-ref "field V10._length (fldOffset=0x8)" P-INDEP
-;* V32 tmp29 [V32 ] ( 0, 0 ) byref -> zero-ref single-def "field V13._reference (fldOffset=0x0)" P-INDEP
-;* V33 tmp30 [V33 ] ( 0, 0 ) int -> zero-ref "field V13._length (fldOffset=0x8)" P-INDEP
-;* V34 tmp31 [V34 ] ( 0, 0 ) byref -> zero-ref "field V21._reference (fldOffset=0x0)" P-INDEP
-;* V35 tmp32 [V35 ] ( 0, 0 ) int -> zero-ref "field V21._length (fldOffset=0x8)" P-INDEP
+;* V11 tmp8 [V11 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
+;* V12 tmp9 [V12 ] ( 0, 0 ) byref -> zero-ref single-def "Inlining Arg"
+;* V13 tmp10 [V13 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
+;* V14 tmp11 [V14 ] ( 0, 0 ) int -> zero-ref "Inline return value spill temp"
+;* V15 tmp12 [V15 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
+; V16 tmp13 [V16,T02] ( 2, 2 ) byref -> rdi single-def "field V00._reference (fldOffset=0x0)" P-INDEP
+; V17 tmp14 [V17,T03] ( 2, 2 ) int -> r8 single-def "field V00._length (fldOffset=0x8)" P-INDEP
+;* V18 tmp15 [V18 ] ( 0, 0 ) byref -> zero-ref "field V04._reference (fldOffset=0x0)" P-INDEP
+;* V19 tmp16 [V19 ] ( 0, 0 ) int -> zero-ref "field V04._length (fldOffset=0x8)" P-INDEP
+;* V20 tmp17 [V20 ] ( 0, 0 ) byref -> zero-ref single-def "field V05._reference (fldOffset=0x0)" P-INDEP
+;* V21 tmp18 [V21 ] ( 0, 0 ) int -> zero-ref "field V05._length (fldOffset=0x8)" P-INDEP
+;* V22 tmp19 [V22 ] ( 0, 0 ) byref -> zero-ref single-def "field V06._reference (fldOffset=0x0)" P-INDEP
+;* V23 tmp20 [V23 ] ( 0, 0 ) int -> zero-ref "field V06._length (fldOffset=0x8)" P-INDEP
+;* V24 tmp21 [V24 ] ( 0, 0 ) byref -> zero-ref single-def "field V10._reference (fldOffset=0x0)" P-INDEP
+;* V25 tmp22 [V25 ] ( 0, 0 ) int -> zero-ref "field V10._length (fldOffset=0x8)" P-INDEP
+;* V26 tmp23 [V26 ] ( 0, 0 ) byref -> zero-ref single-def "field V11._reference (fldOffset=0x0)" P-INDEP
+;* V27 tmp24 [V27 ] ( 0, 0 ) int -> zero-ref "field V11._length (fldOffset=0x8)" P-INDEP
+;* V28 tmp25 [V28 ] ( 0, 0 ) byref -> zero-ref "field V15._reference (fldOffset=0x0)" P-INDEP
+;* V29 tmp26 [V29 ] ( 0, 0 ) int -> zero-ref "field V15._length (fldOffset=0x8)" P-INDEP
;
; Lcl frame size = 8
G_M37312_IG01:
push rax
- mov eax, esi
- ;; size=3 bbWeight=1 PerfScore 1.25
+ mov r8d, esi
+ mov eax, edx
+ ;; size=6 bbWeight=1 PerfScore 1.50
G_M37312_IG02:
- movzx rsi, dl
movzx rdx, cl
- mov ecx, eax
+ movzx rsi, al
+ mov ecx, r8d
mov rax, 0xD1FFAB1E ; code for System.SpanHelpers:NonPackedIndexOfAnyValueType[ubyte,System.SpanHelpers+Negate`1[ubyte]](byref,ubyte,ubyte,int):int
call [rax]System.SpanHelpers:NonPackedIndexOfAnyValueType[ubyte,System.SpanHelpers+Negate`1[ubyte]](byref,ubyte,ubyte,int):int
nop
- ;; size=22 bbWeight=1 PerfScore 4.25
+ ;; size=23 bbWeight=1 PerfScore 4.25
G_M37312_IG03:
add rsp, 8
ret
;; size=5 bbWeight=1 PerfScore 1.25
-; Total bytes of code 30, prolog size 1, PerfScore 6.75, instruction count 10, allocated bytes for code 30 (MethodHash=64b96e3f) for method System.MemoryExtensions:IndexOfAnyExcept[ubyte](System.Span`1[ubyte],ubyte,ubyte):int (FullOpts)
+; Total bytes of code 34, prolog size 1, PerfScore 7.00, instruction count 11, allocated bytes for code 34 (MethodHash=64b96e3f) for method System.MemoryExtensions:IndexOfAnyExcept[ubyte](System.Span`1[ubyte],ubyte,ubyte):int (FullOpts)