381 (19.59 % of base) - System.Net.Http.HttpConnectionPool:BlocklistAuthority(System.Net.Http.HttpAuthority,System.Exception):this
; Assembly listing for method System.Net.Http.HttpConnectionPool:BlocklistAuthority(System.Net.Http.HttpAuthority,System.Exception):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; 32 single block inlinees; 28 inlinees without PGO data
+; 0 inlinees with PGO data; 39 single block inlinees; 36 inlinees without PGO data
; Final local variable assignments
;
; V00 this [V00,T00] ( 17, 17 ) ref -> rbx this class-hnd single-def <System.Net.Http.HttpConnectionPool>
-; V01 arg1 [V01,T22] ( 3, 3 ) ref -> r15 class-hnd single-def <System.Net.Http.HttpAuthority>
-; V02 arg2 [V02,T23] ( 3, 3 ) ref -> r14 class-hnd single-def <System.Exception>
-; V03 loc0 [V03,T02] ( 14, 14 ) ref -> r13 class-hnd exact single-def <System.Net.Http.HttpConnectionPool+<>c__DisplayClass141_0>
-; V04 loc1 [V04,T39] ( 3, 3 ) ubyte -> r14
-; V05 loc2 [V05,T40] ( 3, 3 ) ubyte -> r15
+; V01 arg1 [V01,T28] ( 3, 3 ) ref -> r15 class-hnd single-def <System.Net.Http.HttpAuthority>
+; V02 arg2 [V02,T29] ( 3, 3 ) ref -> r14 class-hnd single-def <System.Exception>
+; V03 loc0 [V03,T03] ( 14, 14 ) ref -> r13 class-hnd exact single-def <System.Net.Http.HttpConnectionPool+<>c__DisplayClass141_0>
+; V04 loc1 [V04,T51] ( 3, 3 ) ubyte -> r14
+; V05 loc2 [V05,T52] ( 3, 3 ) ubyte -> r15
;* V06 loc3 [V06 ] ( 0, 0 ) struct ( 8) zero-ref <System.Threading.CancellationToken>
-; V07 loc4 [V07,T06] ( 8, 8 ) ref -> [rbp-0x40] do-not-enreg[M] class-hnd EH-live <System.Object>
+; V07 loc4 [V07,T09] ( 8, 8 ) ref -> [rbp-0x48] do-not-enreg[M] class-hnd EH-live <System.Object>
; V08 loc5 [V08 ] ( 15, 14 ) ubyte -> [rbp-0x30] do-not-enreg[X] addr-exposed ld-addr-op
-; V09 loc6 [V09,T43] ( 4, 2 ) ref -> [rbp-0x48] class-hnd EH-live spill-single-def <System.Collections.Generic.Dictionary`2[System.Net.Http.HttpAuthority,System.Exception]>
+; V09 loc6 [V09,T56] ( 4, 2 ) ref -> [rbp-0x50] class-hnd EH-live spill-single-def <System.Collections.Generic.Dictionary`2[System.Net.Http.HttpAuthority,System.Exception]>
; V10 OutArgs [V10 ] ( 1, 1 ) struct ( 8) [rsp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
;* V11 tmp1 [V11 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "NewObj constructor temp" <System.Net.Http.HttpConnectionPool+<>c__DisplayClass141_0>
-; V12 tmp2 [V12,T07] ( 4, 8 ) ref -> r15 class-hnd exact single-def "NewObj constructor temp" <System.Action`1[System.Threading.Tasks.Task]>
-; V13 tmp3 [V13,T08] ( 4, 8 ) ref -> r14 class-hnd single-def "impAppendStmt" <System.Threading.Tasks.Task>
-; V14 tmp4 [V14,T09] ( 4, 8 ) ref -> r14 class-hnd exact single-def "NewObj constructor temp" <System.Action`1[System.Threading.Tasks.Task]>
-; V15 tmp5 [V15,T10] ( 4, 8 ) ref -> r12 class-hnd single-def "impAppendStmt" <System.Threading.Tasks.Task>
-; V16 tmp6 [V16,T15] ( 3, 6 ) ref -> r15 class-hnd exact single-def "NewObj constructor temp" <System.Collections.Generic.Dictionary`2[System.Net.Http.HttpAuthority,System.Exception]>
-; V17 tmp7 [V17,T24] ( 2, 4 ) ref -> rax class-hnd exact single-def "NewObj constructor temp" <System.Threading.CancellationTokenSource>
-; V18 tmp8 [V18,T16] ( 3, 6 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.Dictionary`2[System.Net.Http.HttpAuthority,System.Exception]>
-; V19 tmp9 [V19,T25] ( 2, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.Net.Http.HttpAuthority>
-; V20 tmp10 [V20,T17] ( 3, 6 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.Dictionary`2[System.Net.Http.HttpAuthority,System.Exception]>
-; V21 tmp11 [V21,T26] ( 2, 4 ) ref -> rdi class-hnd exact single-def "Inlining Arg" <System.Threading.Timer>
+; V12 tmp2 [V12,T10] ( 4, 8 ) ref -> r15 class-hnd exact single-def "NewObj constructor temp" <System.Action`1[System.Threading.Tasks.Task]>
+; V13 tmp3 [V13,T11] ( 4, 8 ) ref -> r14 class-hnd single-def "impAppendStmt" <System.Threading.Tasks.Task>
+; V14 tmp4 [V14,T12] ( 4, 8 ) ref -> r14 class-hnd exact single-def "NewObj constructor temp" <System.Action`1[System.Threading.Tasks.Task]>
+; V15 tmp5 [V15,T13] ( 4, 8 ) ref -> r12 class-hnd single-def "impAppendStmt" <System.Threading.Tasks.Task>
+; V16 tmp6 [V16,T19] ( 3, 6 ) ref -> r15 class-hnd exact single-def "NewObj constructor temp" <System.Collections.Generic.Dictionary`2[System.Net.Http.HttpAuthority,System.Exception]>
+; V17 tmp7 [V17,T30] ( 2, 4 ) ref -> rax class-hnd exact single-def "NewObj constructor temp" <System.Threading.CancellationTokenSource>
+; V18 tmp8 [V18,T20] ( 3, 6 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.Dictionary`2[System.Net.Http.HttpAuthority,System.Exception]>
+; V19 tmp9 [V19,T31] ( 2, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.Net.Http.HttpAuthority>
+; V20 tmp10 [V20,T21] ( 3, 6 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.Dictionary`2[System.Net.Http.HttpAuthority,System.Exception]>
+; V21 tmp11 [V21,T32] ( 2, 4 ) ref -> rdi class-hnd exact single-def "Inlining Arg" <System.Threading.Timer>
;* V22 tmp12 [V22 ] ( 0, 0 ) int -> zero-ref ld-addr-op "Inlining Arg"
;* V23 tmp13 [V23 ] ( 0, 0 ) int -> zero-ref "Inline return value spill temp"
;* V24 tmp14 [V24 ] ( 0, 0 ) int -> zero-ref ld-addr-op "Inlining Arg"
;* V25 tmp15 [V25 ] ( 0, 0 ) int -> zero-ref "Inline return value spill temp"
-; V26 tmp16 [V26,T11] ( 3, 6 ) ref -> rbx class-hnd single-def "Inlining Arg" <System.Threading.CancellationTokenSource>
+; V26 tmp16 [V26,T14] ( 3, 6 ) ref -> rbx class-hnd single-def "Inlining Arg" <System.Threading.CancellationTokenSource>
;* V27 tmp17 [V27 ] ( 0, 0 ) struct ( 8) zero-ref ld-addr-op "NewObj constructor temp" <System.Threading.CancellationToken>
-; V28 tmp18 [V28,T33] ( 3, 3 ) ref -> r12 class-hnd "Inline return value spill temp" <System.Threading.Tasks.Task>
+; V28 tmp18 [V28,T41] ( 3, 3 ) ref -> r12 class-hnd "Inline return value spill temp" <System.Threading.Tasks.Task>
;* V29 tmp19 [V29 ] ( 0, 0 ) struct ( 8) zero-ref ld-addr-op "Inlining Arg" <System.Threading.CancellationToken>
-; V30 tmp20 [V30,T27] ( 2, 4 ) ref -> r14 class-hnd single-def "Inlining Arg" <System.TimeProvider>
+; V30 tmp20 [V30,T33] ( 2, 4 ) ref -> r14 class-hnd single-def "Inlining Arg" <System.TimeProvider>
; V31 tmp21 [V31,T01] ( 8, 16 ) ref -> r12 class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.Task+DelayPromiseWithCancellation>
;* V32 tmp22 [V32 ] ( 0, 0 ) ref -> zero-ref class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.Task+DelayPromise>
;* V33 tmp23 [V33 ] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
;* V34 tmp24 [V34 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.Threading.CancellationTokenSource>
; V35 tmp25 [V35 ] ( 2, 4 ) struct ( 8) [rbp-0x38] do-not-enreg[SF] must-init ld-addr-op "Inlining Arg" <System.Threading.CancellationToken>
-; V36 tmp26 [V36,T28] ( 2, 4 ) ref -> rsi class-hnd single-def "dup spill" <System.Action`2[System.Object,System.Threading.CancellationToken]>
+; V36 tmp26 [V36,T34] ( 2, 4 ) ref -> rsi class-hnd single-def "dup spill" <System.Action`2[System.Object,System.Threading.CancellationToken]>
;* V37 tmp27 [V37 ] ( 0, 0 ) ref -> zero-ref single-def
;* V38 tmp28 [V38 ] ( 0, 0 ) byref -> zero-ref
-; V39 tmp29 [V39,T21] ( 5, 5 ) ref -> rsi
-; V40 tmp30 [V40,T03] ( 5, 10 ) ref -> r14 class-hnd exact single-def "NewObj constructor temp" <System.Action`2[System.Object,System.Threading.CancellationToken]>
-; V41 tmp31 [V41,T18] ( 3, 6 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.Task+DelayPromiseWithCancellation+<>c>
+; V39 tmp29 [V39,T26] ( 5, 5 ) ref -> rsi
+; V40 tmp30 [V40,T04] ( 5, 10 ) ref -> r14 class-hnd exact single-def "NewObj constructor temp" <System.Action`2[System.Object,System.Threading.CancellationToken]>
+; V41 tmp31 [V41,T22] ( 3, 6 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.Task+DelayPromiseWithCancellation+<>c>
;* V42 tmp32 [V42 ] ( 0, 0 ) struct (16) zero-ref multireg-ret "Inline return value spill temp" <System.Threading.CancellationTokenRegistration>
-; V43 tmp33 [V43,T34] ( 3, 3 ) ref -> rdi class-hnd single-def "Inline stloc first use temp" <System.Threading.CancellationTokenSource>
-;* V44 tmp34 [V44 ] ( 0, 0 ) ref -> zero-ref
+; V43 tmp33 [V43,T42] ( 3, 3 ) ref -> rdi class-hnd single-def "Inline stloc first use temp" <System.Threading.CancellationTokenSource>
+;* V44 tmp34 [V44 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.Threading.CancellationTokenRegistration>
;* V45 tmp35 [V45 ] ( 0, 0 ) ref -> zero-ref
;* V46 tmp36 [V46 ] ( 0, 0 ) ref -> zero-ref
;* V47 tmp37 [V47 ] ( 0, 0 ) ref -> zero-ref
;* V48 tmp38 [V48 ] ( 0, 0 ) ref -> zero-ref
;* V49 tmp39 [V49 ] ( 0, 0 ) ref -> zero-ref
;* V50 tmp40 [V50 ] ( 0, 0 ) ref -> zero-ref
;* V51 tmp41 [V51 ] ( 0, 0 ) ref -> zero-ref
;* V52 tmp42 [V52 ] ( 0, 0 ) ref -> zero-ref
;* V53 tmp43 [V53 ] ( 0, 0 ) ref -> zero-ref
;* V54 tmp44 [V54 ] ( 0, 0 ) ref -> zero-ref
;* V55 tmp45 [V55 ] ( 0, 0 ) ref -> zero-ref
;* V56 tmp46 [V56 ] ( 0, 0 ) ref -> zero-ref
;* V57 tmp47 [V57 ] ( 0, 0 ) ref -> zero-ref
;* V58 tmp48 [V58 ] ( 0, 0 ) ref -> zero-ref
;* V59 tmp49 [V59 ] ( 0, 0 ) ref -> zero-ref
-;* V60 tmp50 [V60 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[SBR] multireg-ret "Return value temp for multireg return" <System.Threading.CancellationTokenRegistration>
-;* V61 tmp51 [V61 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.Threading.CancellationTokenRegistration>
+;* V60 tmp50 [V60 ] ( 0, 0 ) ref -> zero-ref
+;* V61 tmp51 [V61 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[SBR] multireg-ret "Return value temp for multireg return" <System.Threading.CancellationTokenRegistration>
;* V62 tmp52 [V62 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
-; V63 tmp53 [V63,T12] ( 4, 8 ) byref -> r14 single-def "Inlining Arg"
-; V64 tmp54 [V64,T13] ( 7, 7 ) ref -> [rbp-0x50] class-hnd exact spill-single-def "Inline stloc first use temp" <System.Threading.CancellationTokenSource+CallbackNode>
-; V65 tmp55 [V65,T35] ( 3, 3 ) ref -> rcx class-hnd single-def "Inline stloc first use temp" <System.Threading.CancellationTokenSource>
+; V63 tmp53 [V63,T15] ( 4, 8 ) byref -> r14 single-def "Inlining Arg"
+; V64 tmp54 [V64,T17] ( 7, 7 ) ref -> [rbp-0x58] class-hnd exact spill-single-def "Inline stloc first use temp" <System.Threading.CancellationTokenSource+CallbackNode>
+; V65 tmp55 [V65,T43] ( 3, 3 ) ref -> rcx class-hnd single-def "Inline stloc first use temp" <System.Threading.CancellationTokenSource>
;* V66 tmp56 [V66 ] ( 0, 0 ) int -> zero-ref "non-inline candidate call"
-; V67 tmp57 [V67,T32] ( 2, 4 ) long -> r14 "Inlining Arg"
-; V68 tmp58 [V68,T19] ( 3, 6 ) ref -> [rbp-0x58] class-hnd spill-single-def "Inlining Arg" <System.Threading.Tasks.TaskScheduler>
+; V67 tmp57 [V67,T39] ( 2, 4 ) long -> r14 "Inlining Arg"
+; V68 tmp58 [V68,T23] ( 3, 6 ) ref -> [rbp-0x60] class-hnd spill-single-def "Inlining Arg" <System.Threading.Tasks.TaskScheduler>
;* V69 tmp59 [V69 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inline return value spill temp" <System.Threading.Tasks.ContinuationTaskFromTask>
;* V70 tmp60 [V70 ] ( 0, 0 ) int -> zero-ref ld-addr-op "Inline ldloca(s) first use temp"
;* V71 tmp61 [V71 ] ( 0, 0 ) int -> zero-ref ld-addr-op "Inline ldloca(s) first use temp"
-; V72 tmp62 [V72,T04] ( 5, 10 ) ref -> [rbp-0x60] class-hnd exact spill-single-def "NewObj constructor temp" <System.Threading.Tasks.ContinuationTaskFromTask>
+; V72 tmp62 [V72,T05] ( 5, 10 ) ref -> [rbp-0x68] class-hnd exact spill-single-def "NewObj constructor temp" <System.Threading.Tasks.ContinuationTaskFromTask>
;* V73 tmp63 [V73 ] ( 0, 0 ) ref -> zero-ref class-hnd exact single-def "Inline stloc first use temp" <System.Threading.Tasks.ContinuationTaskFromTask>
;* V74 tmp64 [V74 ] ( 0, 0 ) byref -> zero-ref
;* V75 tmp65 [V75 ] ( 0, 0 ) byref -> zero-ref
;* V76 tmp66 [V76 ] ( 0, 0 ) int -> zero-ref
-;* V77 tmp67 [V77,T46] ( 0, 0 ) int -> zero-ref "Inlining Arg"
+;* V77 tmp67 [V77,T60] ( 0, 0 ) int -> zero-ref "Inlining Arg"
;* V78 tmp68 [V78 ] ( 0, 0 ) struct ( 8) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.Threading.CancellationToken>
-;* V79 tmp69 [V79,T44] ( 0, 0 ) ref -> zero-ref class-hnd single-def "impAppendStmt" <System.Threading.Tasks.Task>
-;* V80 tmp70 [V80,T47] ( 0, 0 ) int -> zero-ref "Inlining Arg"
+;* V79 tmp69 [V79,T58] ( 0, 0 ) ref -> zero-ref class-hnd single-def "impAppendStmt" <System.Threading.Tasks.Task>
+;* V80 tmp70 [V80,T61] ( 0, 0 ) int -> zero-ref "Inlining Arg"
;* V81 tmp71 [V81 ] ( 0, 0 ) struct ( 8) zero-ref "Inlining Arg" <System.Threading.CancellationToken>
-; V82 tmp72 [V82,T20] ( 3, 6 ) ref -> r13 class-hnd single-def "Inlining Arg" <System.Threading.Tasks.TaskScheduler>
-;* V83 tmp73 [V83 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inline return value spill temp" <System.Threading.Tasks.ContinuationTaskFromTask>
-;* V84 tmp74 [V84 ] ( 0, 0 ) int -> zero-ref ld-addr-op "Inline ldloca(s) first use temp"
-;* V85 tmp75 [V85 ] ( 0, 0 ) int -> zero-ref ld-addr-op "Inline ldloca(s) first use temp"
-; V86 tmp76 [V86,T05] ( 5, 10 ) ref -> r12 class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.ContinuationTaskFromTask>
-;* V87 tmp77 [V87 ] ( 0, 0 ) ref -> zero-ref class-hnd exact single-def "Inline stloc first use temp" <System.Threading.Tasks.ContinuationTaskFromTask>
-;* V88 tmp78 [V88 ] ( 0, 0 ) byref -> zero-ref
-;* V89 tmp79 [V89 ] ( 0, 0 ) byref -> zero-ref
-;* V90 tmp80 [V90 ] ( 0, 0 ) int -> zero-ref
-;* V91 tmp81 [V91,T48] ( 0, 0 ) int -> zero-ref "Inlining Arg"
-;* V92 tmp82 [V92 ] ( 0, 0 ) struct ( 8) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.Threading.CancellationToken>
-;* V93 tmp83 [V93,T45] ( 0, 0 ) ref -> zero-ref class-hnd single-def "impAppendStmt" <System.Threading.Tasks.Task>
-;* V94 tmp84 [V94,T49] ( 0, 0 ) int -> zero-ref "Inlining Arg"
-;* V95 tmp85 [V95 ] ( 0, 0 ) struct ( 8) zero-ref "Inlining Arg" <System.Threading.CancellationToken>
-; V96 tmp86 [V96,T14] ( 7, 7 ) ref -> rbx single-def "field V06._source (fldOffset=0x0)" P-INDEP
-;* V97 tmp87 [V97,T50] ( 0, 0 ) ref -> zero-ref single-def "field V27._source (fldOffset=0x0)" P-INDEP
-;* V98 tmp88 [V98 ] ( 0, 0 ) ref -> zero-ref single-def "field V29._source (fldOffset=0x0)" P-INDEP
-; V99 tmp89 [V99,T42] ( 2, 3 ) ref -> [rbp-0x38] do-not-enreg[] "field V35._source (fldOffset=0x0)" P-DEP
-; V100 tmp90 [V100,T36] ( 3, 3 ) ref -> rax single-def "field V42._node (fldOffset=0x0)" P-INDEP
-; V101 tmp91 [V101,T41] ( 3, 3 ) long -> r14 "field V42._id (fldOffset=0x8)" P-INDEP
-;* V102 tmp92 [V102 ] ( 0, 0 ) ref -> zero-ref "field V60._node (fldOffset=0x0)" P-DEP
-;* V103 tmp93 [V103 ] ( 0, 0 ) long -> zero-ref "field V60._id (fldOffset=0x8)" P-DEP
-;* V104 tmp94 [V104 ] ( 0, 0 ) ref -> zero-ref single-def "field V61._node (fldOffset=0x0)" P-INDEP
-;* V105 tmp95 [V105 ] ( 0, 0 ) long -> zero-ref "field V61._id (fldOffset=0x8)" P-INDEP
-;* V106 tmp96 [V106 ] ( 0, 0 ) ref -> zero-ref single-def "field V78._source (fldOffset=0x0)" P-INDEP
-;* V107 tmp97 [V107,T51] ( 0, 0 ) ref -> zero-ref single-def "field V81._source (fldOffset=0x0)" P-INDEP
-;* V108 tmp98 [V108 ] ( 0, 0 ) ref -> zero-ref single-def "field V92._source (fldOffset=0x0)" P-INDEP
-;* V109 tmp99 [V109,T52] ( 0, 0 ) ref -> zero-ref single-def "field V95._source (fldOffset=0x0)" P-INDEP
-;* V110 tmp100 [V110 ] ( 0, 0 ) ref -> zero-ref "argument with side effect"
-;* V111 tmp101 [V111 ] ( 0, 0 ) ref -> zero-ref "argument with side effect"
-; V112 tmp102 [V112,T29] ( 2, 4 ) ref -> rsi single-def "argument with side effect"
-; V113 tmp103 [V113,T30] ( 2, 4 ) ref -> rsi single-def "argument with side effect"
-; V114 tmp104 [V114,T31] ( 2, 4 ) ref -> rsi single-def "argument with side effect"
-; V115 PSPSym [V115,T54] ( 1, 1 ) long -> [rbp-0x78] do-not-enreg[V] "PSPSym"
-;* V116 cse0 [V116,T53] ( 0, 0 ) byref -> zero-ref "CSE #04: conservative"
-; V117 cse1 [V117,T37] ( 3, 3 ) ref -> r15 "CSE #01: conservative"
-; V118 cse2 [V118,T38] ( 3, 3 ) ref -> r15 "CSE #02: conservative"
-; TEMP_01 int -> [rbp-0x64]
+; V82 tmp72 [V82,T44] ( 3, 3 ) ref -> r14 class-hnd "Inline return value spill temp" <System.Threading.Tasks.Task>
+;* V83 tmp73 [V83 ] ( 0, 0 ) struct ( 8) zero-ref ld-addr-op "Inlining Arg" <System.Threading.CancellationToken>
+; V84 tmp74 [V84,T35] ( 2, 4 ) ref -> r15 class-hnd single-def "Inlining Arg" <System.TimeProvider>
+; V85 tmp75 [V85,T02] ( 8, 16 ) ref -> r14 class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.Task+DelayPromiseWithCancellation>
+;* V86 tmp76 [V86 ] ( 0, 0 ) ref -> zero-ref class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.Task+DelayPromise>
+;* V87 tmp77 [V87 ] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
+;* V88 tmp78 [V88 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.Threading.CancellationTokenSource>
+; V89 tmp79 [V89 ] ( 2, 4 ) struct ( 8) [rbp-0x40] do-not-enreg[XS] must-init addr-exposed ld-addr-op "Inlining Arg" <System.Threading.CancellationToken>
+; V90 tmp80 [V90,T36] ( 2, 4 ) ref -> rsi class-hnd single-def "dup spill" <System.Action`2[System.Object,System.Threading.CancellationToken]>
+;* V91 tmp81 [V91 ] ( 0, 0 ) ref -> zero-ref single-def
+;* V92 tmp82 [V92,T64] ( 0, 0 ) byref -> zero-ref single-def
+; V93 tmp83 [V93,T27] ( 5, 5 ) ref -> rsi
+; V94 tmp84 [V94,T06] ( 5, 10 ) ref -> r15 class-hnd exact single-def "NewObj constructor temp" <System.Action`2[System.Object,System.Threading.CancellationToken]>
+; V95 tmp85 [V95,T24] ( 3, 6 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.Threading.Tasks.Task+DelayPromiseWithCancellation+<>c>
+;* V96 tmp86 [V96 ] ( 0, 0 ) struct (16) zero-ref multireg-ret "Inline return value spill temp" <System.Threading.CancellationTokenRegistration>
+; V97 tmp87 [V97,T45] ( 3, 3 ) ref -> rdi class-hnd single-def "Inline stloc first use temp" <System.Threading.CancellationTokenSource>
+;* V98 tmp88 [V98 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.Threading.CancellationTokenRegistration>
+;* V99 tmp89 [V99 ] ( 0, 0 ) ref -> zero-ref
+;* V100 tmp90 [V100 ] ( 0, 0 ) ref -> zero-ref
+;* V101 tmp91 [V101 ] ( 0, 0 ) ref -> zero-ref
+;* V102 tmp92 [V102 ] ( 0, 0 ) ref -> zero-ref
+;* V103 tmp93 [V103 ] ( 0, 0 ) ref -> zero-ref
+;* V104 tmp94 [V104 ] ( 0, 0 ) ref -> zero-ref
+;* V105 tmp95 [V105 ] ( 0, 0 ) ref -> zero-ref
+;* V106 tmp96 [V106 ] ( 0, 0 ) ref -> zero-ref
+;* V107 tmp97 [V107 ] ( 0, 0 ) ref -> zero-ref
+;* V108 tmp98 [V108 ] ( 0, 0 ) ref -> zero-ref
+;* V109 tmp99 [V109 ] ( 0, 0 ) ref -> zero-ref
+;* V110 tmp100 [V110 ] ( 0, 0 ) ref -> zero-ref
+;* V111 tmp101 [V111 ] ( 0, 0 ) ref -> zero-ref
+;* V112 tmp102 [V112 ] ( 0, 0 ) ref -> zero-ref
+;* V113 tmp103 [V113 ] ( 0, 0 ) ref -> zero-ref
+;* V114 tmp104 [V114 ] ( 0, 0 ) ref -> zero-ref
+;* V115 tmp105 [V115 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[SBR] multireg-ret "Return value temp for multireg return" <System.Threading.CancellationTokenRegistration>
+;* V116 tmp106 [V116 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
+; V117 tmp107 [V117,T16] ( 4, 8 ) byref -> r15 single-def "Inlining Arg"
+; V118 tmp108 [V118,T18] ( 7, 7 ) ref -> r12 class-hnd exact single-def "Inline stloc first use temp" <System.Threading.CancellationTokenSource+CallbackNode>
+; V119 tmp109 [V119,T46] ( 3, 3 ) ref -> rax class-hnd single-def "Inline stloc first use temp" <System.Threading.CancellationTokenSource>
+;* V120 tmp110 [V120 ] ( 0, 0 ) int -> zero-ref "non-inline candidate call"
+; V121 tmp111 [V121,T40] ( 2, 4 ) long -> r15 "Inlining Arg"
+; V122 tmp112 [V122,T25] ( 3, 6 ) ref -> r13 class-hnd single-def "Inlining Arg" <System.Threading.Tasks.TaskScheduler>
+;* V123 tmp113 [V123 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inline return value spill temp" <System.Threading.Tasks.ContinuationTaskFromTask>
+;* V124 tmp114 [V124 ] ( 0, 0 ) int -> zero-ref ld-addr-op "Inline ldloca(s) first use temp"
+;* V125 tmp115 [V125 ] ( 0, 0 ) int -> zero-ref ld-addr-op "Inline ldloca(s) first use temp"
+; V126 tmp116 [V126,T07] ( 5, 10 ) ref -> r12 class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.ContinuationTaskFromTask>
+;* V127 tmp117 [V127 ] ( 0, 0 ) ref -> zero-ref class-hnd exact single-def "Inline stloc first use temp" <System.Threading.Tasks.ContinuationTaskFromTask>
+;* V128 tmp118 [V128 ] ( 0, 0 ) byref -> zero-ref
+;* V129 tmp119 [V129 ] ( 0, 0 ) byref -> zero-ref
+;* V130 tmp120 [V130 ] ( 0, 0 ) int -> zero-ref
+;* V131 tmp121 [V131,T62] ( 0, 0 ) int -> zero-ref "Inlining Arg"
+;* V132 tmp122 [V132 ] ( 0, 0 ) struct ( 8) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.Threading.CancellationToken>
+;* V133 tmp123 [V133,T59] ( 0, 0 ) ref -> zero-ref class-hnd single-def "impAppendStmt" <System.Threading.Tasks.Task>
+;* V134 tmp124 [V134,T63] ( 0, 0 ) int -> zero-ref "Inlining Arg"
+;* V135 tmp125 [V135 ] ( 0, 0 ) struct ( 8) zero-ref "Inlining Arg" <System.Threading.CancellationToken>
+; V136 tmp126 [V136,T08] ( 9, 9 ) ref -> rbx single-def "field V06._source (fldOffset=0x0)" P-INDEP
+;* V137 tmp127 [V137,T65] ( 0, 0 ) ref -> zero-ref single-def "field V27._source (fldOffset=0x0)" P-INDEP
+;* V138 tmp128 [V138 ] ( 0, 0 ) ref -> zero-ref single-def "field V29._source (fldOffset=0x0)" P-INDEP
+; V139 tmp129 [V139,T55] ( 2, 3 ) ref -> [rbp-0x38] do-not-enreg[] "field V35._source (fldOffset=0x0)" P-DEP
+; V140 tmp130 [V140,T47] ( 3, 3 ) ref -> rsi single-def "field V42._node (fldOffset=0x0)" P-INDEP
+; V141 tmp131 [V141,T53] ( 3, 3 ) long -> r14 "field V42._id (fldOffset=0x8)" P-INDEP
+;* V142 tmp132 [V142 ] ( 0, 0 ) ref -> zero-ref single-def "field V44._node (fldOffset=0x0)" P-INDEP
+;* V143 tmp133 [V143 ] ( 0, 0 ) long -> zero-ref "field V44._id (fldOffset=0x8)" P-INDEP
+;* V144 tmp134 [V144 ] ( 0, 0 ) ref -> zero-ref "field V61._node (fldOffset=0x0)" P-DEP
+;* V145 tmp135 [V145 ] ( 0, 0 ) long -> zero-ref "field V61._id (fldOffset=0x8)" P-DEP
+;* V146 tmp136 [V146 ] ( 0, 0 ) ref -> zero-ref single-def "field V78._source (fldOffset=0x0)" P-INDEP
+;* V147 tmp137 [V147,T66] ( 0, 0 ) ref -> zero-ref single-def "field V81._source (fldOffset=0x0)" P-INDEP
+;* V148 tmp138 [V148 ] ( 0, 0 ) ref -> zero-ref single-def "field V83._source (fldOffset=0x0)" P-INDEP
+; V149 tmp139 [V149 ] ( 2, 3 ) ref -> [rbp-0x40] do-not-enreg[X] addr-exposed "field V89._source (fldOffset=0x0)" P-DEP
+; V150 tmp140 [V150,T48] ( 3, 3 ) ref -> rsi single-def "field V96._node (fldOffset=0x0)" P-INDEP
+; V151 tmp141 [V151,T54] ( 3, 3 ) long -> r15 "field V96._id (fldOffset=0x8)" P-INDEP
+;* V152 tmp142 [V152 ] ( 0, 0 ) ref -> zero-ref single-def "field V98._node (fldOffset=0x0)" P-INDEP
+;* V153 tmp143 [V153 ] ( 0, 0 ) long -> zero-ref "field V98._id (fldOffset=0x8)" P-INDEP
+;* V154 tmp144 [V154 ] ( 0, 0 ) ref -> zero-ref "field V115._node (fldOffset=0x0)" P-DEP
+;* V155 tmp145 [V155 ] ( 0, 0 ) long -> zero-ref "field V115._id (fldOffset=0x8)" P-DEP
+;* V156 tmp146 [V156 ] ( 0, 0 ) ref -> zero-ref single-def "field V132._source (fldOffset=0x0)" P-INDEP
+;* V157 tmp147 [V157,T67] ( 0, 0 ) ref -> zero-ref single-def "field V135._source (fldOffset=0x0)" P-INDEP
+;* V158 tmp148 [V158 ] ( 0, 0 ) ref -> zero-ref "argument with side effect"
+;* V159 tmp149 [V159 ] ( 0, 0 ) ref -> zero-ref "argument with side effect"
+; V160 tmp150 [V160,T37] ( 2, 4 ) ref -> rsi single-def "argument with side effect"
+; V161 tmp151 [V161,T38] ( 2, 4 ) ref -> rsi single-def "argument with side effect"
+; V162 PSPSym [V162,T68] ( 1, 1 ) long -> [rbp-0x78] do-not-enreg[V] "PSPSym"
+;* V163 cse0 [V163,T57] ( 0, 0 ) byref -> zero-ref multi-def "CSE #04: moderate"
+; V164 cse1 [V164,T49] ( 3, 3 ) ref -> r15 "CSE #01: conservative"
+; V165 cse2 [V165,T50] ( 3, 3 ) ref -> r15 "CSE #02: conservative"
+; TEMP_01 int -> [rbp-0x6C]
;
; Lcl frame size = 88
G_M55340_IG01:
push rbp
push r15
push r14
push r13
push r12
push rbx
sub rsp, 88
lea rbp, [rsp+0x80]
xor eax, eax
mov qword ptr [rbp-0x38], rax
+ mov qword ptr [rbp-0x40], rax
mov qword ptr [rbp-0x78], rsp
mov rbx, rdi
mov r15, rsi
mov r14, rdx
- ;; size=41 bbWeight=1 PerfScore 9.75
+ ;; size=45 bbWeight=1 PerfScore 10.75
G_M55340_IG02:
mov rdi, 0xD1FFAB1E ; System.Net.Http.HttpConnectionPool+<>c__DisplayClass141_0
call CORINFO_HELP_NEWSFAST
mov r13, rax
lea rdi, bword ptr [r13+0x10]
mov rsi, r15
call CORINFO_HELP_ASSIGN_REF
lea rdi, bword ptr [r13+0x18]
mov rsi, rbx
call CORINFO_HELP_ASSIGN_REF
mov r15, gword ptr [rbx+0xA0]
lea rdi, bword ptr [r13+0x08]
mov rsi, r15
call CORINFO_HELP_ASSIGN_REF
test r15, r15
jne G_M55340_IG06
mov rsi, gword ptr [rbx+0x58]
- mov gword ptr [rbp-0x40], rsi
+ mov gword ptr [rbp-0x48], rsi
xor esi, esi
mov dword ptr [rbp-0x30], esi
;; size=83 bbWeight=1 PerfScore 14.25
G_M55340_IG03:
cmp byte ptr [rbp-0x30], 0
jne G_M55340_IG04
lea rsi, [rbp-0x30]
- mov rdi, gword ptr [rbp-0x40]
+ mov rdi, gword ptr [rbp-0x48]
call System.Threading.Monitor:ReliableEnter(System.Object,byref)
cmp byte ptr [rbx+0xCE], 0
jne G_M55340_IG07
mov r15, gword ptr [rbx+0xA0]
lea rdi, bword ptr [r13+0x08]
mov rsi, r15
call CORINFO_HELP_ASSIGN_REF
test r15, r15
jne SHORT G_M55340_IG05
mov rdi, 0xD1FFAB1E ; System.Collections.Generic.Dictionary`2[System.Net.Http.HttpAuthority,System.Exception]
call CORINFO_HELP_NEWSFAST
mov r15, rax
mov rdi, r15
xor esi, esi
xor rdx, rdx
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:.ctor(int,System.Collections.Generic.IEqualityComparer`1[System.__Canon]):this
call [rax]System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:.ctor(int,System.Collections.Generic.IEqualityComparer`1[System.__Canon]):this
lea rdi, bword ptr [r13+0x08]
mov rsi, r15
call CORINFO_HELP_ASSIGN_REF
mov rdi, 0xD1FFAB1E ; System.Threading.CancellationTokenSource
call CORINFO_HELP_NEWSFAST
lea rdi, bword ptr [rbx+0xA8]
mov rsi, rax
call CORINFO_HELP_ASSIGN_REF
mov rsi, gword ptr [r13+0x08]
lea rdi, bword ptr [rbx+0xA0]
call CORINFO_HELP_ASSIGN_REF
jmp SHORT G_M55340_IG05
;; size=157 bbWeight=1 PerfScore 30.25
G_M55340_IG04:
mov rax, 0xD1FFAB1E ; code for System.Threading.Monitor:ThrowLockTakenException()
call [rax]System.Threading.Monitor:ThrowLockTakenException()
int3
;; size=13 bbWeight=0 PerfScore 0.00
G_M55340_IG05:
cmp byte ptr [rbp-0x30], 0
je SHORT G_M55340_IG06
- mov rdi, gword ptr [rbp-0x40]
+ mov rdi, gword ptr [rbp-0x48]
call System.Threading.Monitor:Exit(System.Object)
;; size=15 bbWeight=1 PerfScore 5.00
G_M55340_IG06:
xor r15d, r15d
mov rdi, gword ptr [r13+0x08]
- mov gword ptr [rbp-0x48], rdi
+ mov gword ptr [rbp-0x50], rdi
xor esi, esi
mov dword ptr [rbp-0x30], esi
jmp SHORT G_M55340_IG10
;; size=18 bbWeight=1 PerfScore 6.50
G_M55340_IG07:
mov rdi, rsp
;; size=3 bbWeight=1 PerfScore 0.25
G_M55340_IG08:
- call G_M55340_IG42
+ call G_M55340_IG50
nop
;; size=6 bbWeight=1 PerfScore 1.25
G_M55340_IG09:
add rsp, 88
pop rbx
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
;; size=15 bbWeight=1 PerfScore 4.25
G_M55340_IG10:
cmp byte ptr [rbp-0x30], 0
jne SHORT G_M55340_IG11
lea rsi, [rbp-0x30]
call System.Threading.Monitor:ReliableEnter(System.Object,byref)
mov rdi, gword ptr [r13+0x08]
mov rsi, gword ptr [r13+0x10]
cmp byte ptr [rdi], dil
mov rdx, r14
xor ecx, ecx
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:TryInsert(System.__Canon,System.__Canon,ubyte):ubyte:this
call [rax]System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:TryInsert(System.__Canon,System.__Canon,ubyte):ubyte:this
mov r14d, eax
test r14d, r14d
je SHORT G_M55340_IG12
mov rdi, gword ptr [r13+0x08]
mov eax, dword ptr [rdi+0x38]
sub eax, dword ptr [rdi+0x40]
cmp eax, 8
jl SHORT G_M55340_IG12
cmp byte ptr [rbx+0xD5], 0
je SHORT G_M55340_IG12
mov byte ptr [rbx+0xD5], 0
mov r15d, 1
jmp SHORT G_M55340_IG12
;; size=90 bbWeight=1 PerfScore 32.25
G_M55340_IG11:
mov rax, 0xD1FFAB1E ; code for System.Threading.Monitor:ThrowLockTakenException()
call [rax]System.Threading.Monitor:ThrowLockTakenException()
int3
;; size=13 bbWeight=0 PerfScore 0.00
G_M55340_IG12:
cmp byte ptr [rbp-0x30], 0
je SHORT G_M55340_IG13
- mov rdi, gword ptr [rbp-0x48]
+ mov rdi, gword ptr [rbp-0x50]
call System.Threading.Monitor:Exit(System.Object)
;; size=15 bbWeight=1 PerfScore 5.00
G_M55340_IG13:
mov rsi, gword ptr [rbx+0x58]
- mov gword ptr [rbp-0x40], rsi
+ mov gword ptr [rbp-0x48], rsi
xor esi, esi
mov dword ptr [rbp-0x30], esi
;; size=13 bbWeight=1 PerfScore 4.25
G_M55340_IG14:
cmp byte ptr [rbp-0x30], 0
jne SHORT G_M55340_IG17
lea rsi, [rbp-0x30]
- mov rdi, gword ptr [rbp-0x40]
+ mov rdi, gword ptr [rbp-0x48]
call System.Threading.Monitor:ReliableEnter(System.Object,byref)
cmp byte ptr [rbx+0xCE], 0
- jne G_M55340_IG32
+ jne G_M55340_IG39
mov rdi, gword ptr [rbx+0x90]
cmp rdi, gword ptr [r13+0x10]
jne SHORT G_M55340_IG15
xor rdi, rdi
mov gword ptr [rbx+0x90], rdi
mov rdi, gword ptr [rbx+0x98]
mov rdi, gword ptr [rdi+0x08]
mov rdi, gword ptr [rdi+0x08]
mov esi, -1
mov edx, -1
mov rax, 0xD1FFAB1E ; code for System.Threading.TimerQueueTimer:Change(uint,uint):ubyte:this
cmp dword ptr [rdi], edi
call [rax]System.Threading.TimerQueueTimer:Change(uint,uint):ubyte:this
;; size=93 bbWeight=1 PerfScore 29.50
G_M55340_IG15:
mov rbx, gword ptr [rbx+0xA8]
cmp byte ptr [rbx+0x24], 0
jne SHORT G_M55340_IG16
jmp SHORT G_M55340_IG18
;; size=15 bbWeight=1 PerfScore 8.00
G_M55340_IG16:
mov edi, 70
mov rax, 0xD1FFAB1E ; code for System.ThrowHelper:ThrowObjectDisposedException(int)
call [rax]System.ThrowHelper:ThrowObjectDisposedException(int)
int3
;; size=18 bbWeight=0 PerfScore 0.00
G_M55340_IG17:
mov rax, 0xD1FFAB1E ; code for System.Threading.Monitor:ThrowLockTakenException()
call [rax]System.Threading.Monitor:ThrowLockTakenException()
int3
;; size=13 bbWeight=0 PerfScore 0.00
G_M55340_IG18:
cmp byte ptr [rbp-0x30], 0
je SHORT G_M55340_IG19
- mov rdi, gword ptr [rbp-0x40]
+ mov rdi, gword ptr [rbp-0x48]
call System.Threading.Monitor:Exit(System.Object)
;; size=15 bbWeight=1 PerfScore 5.00
G_M55340_IG19:
test r14d, r14d
je G_M55340_IG29
mov rdi, 0xD1FFAB1E ; global ptr
test byte ptr [rdi], 1
- je G_M55340_IG34
+ je G_M55340_IG41
;; size=28 bbWeight=1 PerfScore 5.50
G_M55340_IG20:
mov rdi, 0xD1FFAB1E ; data for System.TimeProvider:<System>k__BackingField
mov r14, gword ptr [rdi]
cmp dword ptr [rbx+0x20], 0
jne SHORT G_M55340_IG22
mov rdi, 0xD1FFAB1E ; System.Threading.Tasks.Task+DelayPromiseWithCancellation
call CORINFO_HELP_NEWSFAST
mov r12, rax
mov gword ptr [rbp-0x38], rbx
mov rdi, r12
mov rdx, r14
mov esi, 0xD1FFAB1E
mov rax, 0xD1FFAB1E ; code for System.Threading.Tasks.Task+DelayPromise:.ctor(uint,System.TimeProvider):this
call [rax]System.Threading.Tasks.Task+DelayPromise:.ctor(uint,System.TimeProvider):this
mov rdi, 0xD1FFAB1E ; global ptr
test byte ptr [rdi], 1
- je G_M55340_IG35
+ je G_M55340_IG42
;; size=83 bbWeight=1 PerfScore 17.00
G_M55340_IG21:
mov rdi, 0xD1FFAB1E ; data for System.Threading.Tasks.Task+DelayPromiseWithCancellation+<>c:<>9__1_0
mov rsi, gword ptr [rdi]
test rsi, rsi
jne SHORT G_M55340_IG24
mov rdi, 0xD1FFAB1E ; System.Action`2[System.Object,System.Threading.CancellationToken]
call CORINFO_HELP_NEWSFAST
mov r14, rax
mov rdi, 0xD1FFAB1E ; data for System.Threading.Tasks.Task+DelayPromiseWithCancellation+<>c:<>9
mov rsi, gword ptr [rdi]
test rsi, rsi
jne SHORT G_M55340_IG23
- jmp G_M55340_IG41
+ jmp G_M55340_IG49
;; size=59 bbWeight=1 PerfScore 10.50
G_M55340_IG22:
mov rdi, rbx
mov rax, 0xD1FFAB1E ; code for System.Threading.Tasks.Task:FromCanceled(System.Threading.CancellationToken):System.Threading.Tasks.Task
call [rax]System.Threading.Tasks.Task:FromCanceled(System.Threading.CancellationToken):System.Threading.Tasks.Task
mov r12, rax
jmp G_M55340_IG27
;; size=23 bbWeight=1 PerfScore 5.75
G_M55340_IG23:
lea rdi, bword ptr [r14+0x08]
call CORINFO_HELP_ASSIGN_REF
mov rdi, 0xD1FFAB1E ; code for System.Threading.Tasks.Task+DelayPromiseWithCancellation+<>c:<.ctor>b__1_0(System.Object,System.Threading.CancellationToken):this
mov qword ptr [r14+0x18], rdi
mov rdi, 0xD1FFAB1E ; data for System.Threading.Tasks.Task+DelayPromiseWithCancellation+<>c:<>9__1_0
mov rsi, r14
call CORINFO_HELP_ASSIGN_REF
mov rsi, r14
;; size=44 bbWeight=1 PerfScore 4.50
G_M55340_IG24:
test rsi, rsi
- je G_M55340_IG40
+ je G_M55340_IG48
mov rdi, gword ptr [rbp-0x38]
test rdi, rdi
- je SHORT G_M55340_IG25
+ jne SHORT G_M55340_IG25
+ xor rsi, rsi
+ xor r14d, r14d
+ jmp SHORT G_M55340_IG26
+ ;; size=25 bbWeight=1 PerfScore 6.00
+G_M55340_IG25:
mov rdx, r12
xor rcx, rcx
xor r8, r8
mov rax, 0xD1FFAB1E ; code for System.Threading.CancellationTokenSource:Register(System.Delegate,System.Object,System.Threading.SynchronizationContext,System.Threading.ExecutionContext):System.Threading.CancellationTokenRegistration:this
call [rax]System.Threading.CancellationTokenSource:Register(System.Delegate,System.Object,System.Threading.SynchronizationContext,System.Threading.ExecutionContext):System.Threading.CancellationTokenRegistration:this
+ mov rsi, rax
mov r14, rdx
- jmp SHORT G_M55340_IG26
- ;; size=43 bbWeight=1 PerfScore 9.75
-G_M55340_IG25:
- xor rax, rax
- xor r14d, r14d
- ;; size=5 bbWeight=1 PerfScore 0.50
+ ;; size=26 bbWeight=1 PerfScore 4.50
G_M55340_IG26:
lea rdi, bword ptr [r12+0x40]
- mov rsi, rax
call CORINFO_HELP_ASSIGN_REF
mov qword ptr [r12+0x48], r14
test dword ptr [r12+0x34], 0xD1FFAB1E
je SHORT G_M55340_IG27
lea r14, bword ptr [r12+0x40]
mov rax, gword ptr [r14]
- mov gword ptr [rbp-0x50], rax
+ mov gword ptr [rbp-0x58], rax
test rax, rax
je SHORT G_M55340_IG27
mov rdi, gword ptr [rax+0x08]
mov rsi, qword ptr [r14+0x08]
mov rdx, rax
mov rcx, 0xD1FFAB1E ; code for System.Threading.CancellationTokenSource+Registrations:Unregister(long,System.Threading.CancellationTokenSource+CallbackNode):ubyte:this
cmp dword ptr [rdi], edi
call [rcx]System.Threading.CancellationTokenSource+Registrations:Unregister(long,System.Threading.CancellationTokenSource+CallbackNode):ubyte:this
test eax, eax
jne SHORT G_M55340_IG27
mov r14, qword ptr [r14+0x08]
- mov rax, gword ptr [rbp-0x50]
+ mov rax, gword ptr [rbp-0x58]
mov rcx, gword ptr [rax+0x08]
mov rcx, gword ptr [rcx+0x08]
cmp dword ptr [rcx+0x20], 0
je SHORT G_M55340_IG27
cmp dword ptr [rcx+0x20], 2
je SHORT G_M55340_IG27
mov rcx, gword ptr [rax+0x08]
mov ecx, dword ptr [rcx+0x30]
- mov dword ptr [rbp-0x64], ecx
+ mov dword ptr [rbp-0x6C], ecx
call System.Environment:get_CurrentManagedThreadId():int
- cmp dword ptr [rbp-0x64], eax
+ cmp dword ptr [rbp-0x6C], eax
je SHORT G_M55340_IG27
- mov rdi, gword ptr [rbp-0x50]
+ mov rdi, gword ptr [rbp-0x58]
mov rdi, gword ptr [rdi+0x08]
mov rsi, r14
mov rax, 0xD1FFAB1E ; code for System.Threading.CancellationTokenSource+Registrations:WaitForCallbackToComplete(long):this
cmp dword ptr [rdi], edi
call [rax]System.Threading.CancellationTokenSource+Registrations:WaitForCallbackToComplete(long):this
- ;; size=148 bbWeight=1 PerfScore 56.75
+ ;; size=145 bbWeight=1 PerfScore 56.50
G_M55340_IG27:
mov rdi, 0xD1FFAB1E ; System.Action`1[System.Threading.Tasks.Task]
call CORINFO_HELP_NEWSFAST
mov r14, rax
lea rdi, bword ptr [r14+0x08]
mov rsi, r13
call CORINFO_HELP_ASSIGN_REF
mov rdi, 0xD1FFAB1E ; code for System.Net.Http.HttpConnectionPool+<>c__DisplayClass141_0:<BlocklistAuthority>b__0(System.Threading.Tasks.Task):this
mov qword ptr [r14+0x18], rdi
mov rdi, 0xD1FFAB1E ; global ptr
test byte ptr [rdi], 1
- je G_M55340_IG36
+ je G_M55340_IG43
;; size=63 bbWeight=1 PerfScore 8.75
G_M55340_IG28:
mov rdi, 0xD1FFAB1E ; data for System.Threading.Tasks.TaskScheduler:s_defaultTaskScheduler
mov rax, gword ptr [rdi]
- mov gword ptr [rbp-0x58], rax
+ mov gword ptr [rbp-0x60], rax
cmp byte ptr [r12], r12b
test rax, rax
- je G_M55340_IG39
+ je G_M55340_IG47
mov rdi, 0xD1FFAB1E ; System.Threading.Tasks.ContinuationTaskFromTask
call CORINFO_HELP_NEWSFAST
- mov gword ptr [rbp-0x60], rax
+ mov gword ptr [rbp-0x68], rax
xor rdi, rdi
mov gword ptr [rsp], rdi
mov rdi, rax
mov rsi, r14
mov r9d, 512
xor rcx, rcx
xor r8d, r8d
xor rdx, rdx
mov r10, 0xD1FFAB1E ; code for System.Threading.Tasks.Task:TaskConstructorCore(System.Delegate,System.Object,System.Threading.CancellationToken,int,int,System.Threading.Tasks.TaskScheduler):this
call [r10]System.Threading.Tasks.Task:TaskConstructorCore(System.Delegate,System.Object,System.Threading.CancellationToken,int,int,System.Threading.Tasks.TaskScheduler):this
mov rax, 0xD1FFAB1E ; code for System.Threading.ExecutionContext:Capture():System.Threading.ExecutionContext
call [rax]System.Threading.ExecutionContext:Capture():System.Threading.ExecutionContext
mov rsi, rax
- mov rdi, gword ptr [rbp-0x60]
+ mov rdi, gword ptr [rbp-0x68]
mov rax, 0xD1FFAB1E ; code for System.Threading.Tasks.Task:set_CapturedContext(System.Threading.ExecutionContext):this
call [rax]System.Threading.Tasks.Task:set_CapturedContext(System.Threading.ExecutionContext):this
- mov r14, gword ptr [rbp-0x60]
+ mov r14, gword ptr [rbp-0x68]
lea rdi, bword ptr [r14+0x38]
mov rsi, r12
call CORINFO_HELP_ASSIGN_REF
mov rdi, r12
mov rsi, r14
- mov rdx, gword ptr [rbp-0x58]
+ mov rdx, gword ptr [rbp-0x60]
mov rcx, rbx
mov r8d, 0xD1FFAB1E
mov rax, 0xD1FFAB1E ; code for System.Threading.Tasks.Task:ContinueWithCore(System.Threading.Tasks.Task,System.Threading.Tasks.TaskScheduler,System.Threading.CancellationToken,int):this
call [rax]System.Threading.Tasks.Task:ContinueWithCore(System.Threading.Tasks.Task,System.Threading.Tasks.TaskScheduler,System.Threading.CancellationToken,int):this
;; size=165 bbWeight=1 PerfScore 31.50
G_M55340_IG29:
test r15d, r15d
je G_M55340_IG09
+ mov rdi, 0xD1FFAB1E ; global ptr
+ test byte ptr [rdi], 1
+ je G_M55340_IG44
+ ;; size=28 bbWeight=1 PerfScore 5.50
+G_M55340_IG30:
+ mov rdi, 0xD1FFAB1E ; data for System.TimeProvider:<System>k__BackingField
+ mov r15, gword ptr [rdi]
+ cmp dword ptr [rbx+0x20], 0
+ jne SHORT G_M55340_IG32
+ mov rdi, 0xD1FFAB1E ; System.Threading.Tasks.Task+DelayPromiseWithCancellation
+ call CORINFO_HELP_NEWSFAST
+ mov r14, rax
+ mov gword ptr [rbp-0x40], rbx
+ mov rdi, r14
+ mov rdx, r15
+ mov esi, 0xD1FFAB1E
+ mov rax, 0xD1FFAB1E ; code for System.Threading.Tasks.Task+DelayPromise:.ctor(uint,System.TimeProvider):this
+ call [rax]System.Threading.Tasks.Task+DelayPromise:.ctor(uint,System.TimeProvider):this
+ mov rdi, 0xD1FFAB1E ; global ptr
+ test byte ptr [rdi], 1
+ je G_M55340_IG45
+ ;; size=83 bbWeight=1 PerfScore 17.00
+G_M55340_IG31:
+ mov rdi, 0xD1FFAB1E ; data for System.Threading.Tasks.Task+DelayPromiseWithCancellation+<>c:<>9__1_0
+ mov rsi, gword ptr [rdi]
+ test rsi, rsi
+ jne SHORT G_M55340_IG34
+ mov rdi, 0xD1FFAB1E ; System.Action`2[System.Object,System.Threading.CancellationToken]
+ call CORINFO_HELP_NEWSFAST
+ mov r15, rax
+ mov rdi, 0xD1FFAB1E ; data for System.Threading.Tasks.Task+DelayPromiseWithCancellation+<>c:<>9
+ mov rsi, gword ptr [rdi]
+ test rsi, rsi
+ jne SHORT G_M55340_IG33
+ jmp G_M55340_IG49
+ ;; size=59 bbWeight=1 PerfScore 10.50
+G_M55340_IG32:
+ mov rdi, rbx
+ mov rax, 0xD1FFAB1E ; code for System.Threading.Tasks.Task:FromCanceled(System.Threading.CancellationToken):System.Threading.Tasks.Task
+ call [rax]System.Threading.Tasks.Task:FromCanceled(System.Threading.CancellationToken):System.Threading.Tasks.Task
+ mov r14, rax
+ jmp G_M55340_IG37
+ ;; size=23 bbWeight=1 PerfScore 5.75
+G_M55340_IG33:
+ lea rdi, bword ptr [r15+0x08]
+ call CORINFO_HELP_ASSIGN_REF
+ mov rdi, 0xD1FFAB1E ; code for System.Threading.Tasks.Task+DelayPromiseWithCancellation+<>c:<.ctor>b__1_0(System.Object,System.Threading.CancellationToken):this
+ mov qword ptr [r15+0x18], rdi
+ mov rdi, 0xD1FFAB1E ; data for System.Threading.Tasks.Task+DelayPromiseWithCancellation+<>c:<>9__1_0
+ mov rsi, r15
+ call CORINFO_HELP_ASSIGN_REF
+ mov rsi, r15
+ ;; size=44 bbWeight=1 PerfScore 4.50
+G_M55340_IG34:
+ test rsi, rsi
+ je G_M55340_IG48
+ mov rdi, gword ptr [rbp-0x40]
+ test rdi, rdi
+ jne SHORT G_M55340_IG35
+ xor rsi, rsi
+ xor r15d, r15d
+ jmp SHORT G_M55340_IG36
+ ;; size=25 bbWeight=1 PerfScore 6.00
+G_M55340_IG35:
+ mov rdx, r14
+ xor rcx, rcx
+ xor r8, r8
+ mov rax, 0xD1FFAB1E ; code for System.Threading.CancellationTokenSource:Register(System.Delegate,System.Object,System.Threading.SynchronizationContext,System.Threading.ExecutionContext):System.Threading.CancellationTokenRegistration:this
+ call [rax]System.Threading.CancellationTokenSource:Register(System.Delegate,System.Object,System.Threading.SynchronizationContext,System.Threading.ExecutionContext):System.Threading.CancellationTokenRegistration:this
+ mov rsi, rax
+ mov r15, rdx
+ ;; size=26 bbWeight=1 PerfScore 4.50
+G_M55340_IG36:
+ lea rdi, bword ptr [r14+0x40]
+ call CORINFO_HELP_ASSIGN_REF
+ mov qword ptr [r14+0x48], r15
+ test dword ptr [r14+0x34], 0xD1FFAB1E
+ je SHORT G_M55340_IG37
+ lea r15, bword ptr [r14+0x40]
+ mov r12, gword ptr [r15]
+ test r12, r12
+ je SHORT G_M55340_IG37
+ mov rdi, gword ptr [r12+0x08]
+ mov rsi, qword ptr [r15+0x08]
+ mov rdx, r12
+ mov rax, 0xD1FFAB1E ; code for System.Threading.CancellationTokenSource+Registrations:Unregister(long,System.Threading.CancellationTokenSource+CallbackNode):ubyte:this
+ cmp dword ptr [rdi], edi
+ call [rax]System.Threading.CancellationTokenSource+Registrations:Unregister(long,System.Threading.CancellationTokenSource+CallbackNode):ubyte:this
+ test eax, eax
+ jne SHORT G_M55340_IG37
+ mov r15, qword ptr [r15+0x08]
+ mov rax, gword ptr [r12+0x08]
+ mov rax, gword ptr [rax+0x08]
+ cmp dword ptr [rax+0x20], 0
+ je SHORT G_M55340_IG37
+ cmp dword ptr [rax+0x20], 2
+ je SHORT G_M55340_IG37
+ mov rax, gword ptr [r12+0x08]
+ mov eax, dword ptr [rax+0x30]
+ mov dword ptr [rbp-0x6C], eax
+ call System.Environment:get_CurrentManagedThreadId():int
+ cmp dword ptr [rbp-0x6C], eax
+ je SHORT G_M55340_IG37
+ mov rdi, gword ptr [r12+0x08]
+ mov rsi, r15
+ mov rax, 0xD1FFAB1E ; code for System.Threading.CancellationTokenSource+Registrations:WaitForCallbackToComplete(long):this
+ cmp dword ptr [rdi], edi
+ call [rax]System.Threading.CancellationTokenSource+Registrations:WaitForCallbackToComplete(long):this
+ ;; size=133 bbWeight=1 PerfScore 53.50
+G_M55340_IG37:
mov rdi, 0xD1FFAB1E ; System.Action`1[System.Threading.Tasks.Task]
call CORINFO_HELP_NEWSFAST
mov r15, rax
- mov rdi, 0xD1FFAB1E ; global ptr
- test byte ptr [rdi], 1
- je G_M55340_IG37
- ;; size=46 bbWeight=1 PerfScore 7.00
-G_M55340_IG30:
- mov rsi, 0xD1FFAB1E ; data for System.TimeProvider:<System>k__BackingField
- mov rsi, gword ptr [rsi]
- mov rdx, rbx
- mov edi, 0xD1FFAB1E
- mov rax, 0xD1FFAB1E ; code for System.Threading.Tasks.Task:Delay(uint,System.TimeProvider,System.Threading.CancellationToken):System.Threading.Tasks.Task
- call [rax]System.Threading.Tasks.Task:Delay(uint,System.TimeProvider,System.Threading.CancellationToken):System.Threading.Tasks.Task
- mov r14, rax
lea rdi, bword ptr [r15+0x08]
mov rsi, r13
call CORINFO_HELP_ASSIGN_REF
mov rdi, 0xD1FFAB1E ; code for System.Net.Http.HttpConnectionPool+<>c__DisplayClass141_0:<BlocklistAuthority>b__1(System.Threading.Tasks.Task):this
mov qword ptr [r15+0x18], rdi
mov rdi, 0xD1FFAB1E ; global ptr
test byte ptr [rdi], 1
- je G_M55340_IG38
- ;; size=81 bbWeight=1 PerfScore 13.50
-G_M55340_IG31:
+ je G_M55340_IG46
+ ;; size=63 bbWeight=1 PerfScore 8.75
+G_M55340_IG38:
mov rdi, 0xD1FFAB1E ; data for System.Threading.Tasks.TaskScheduler:s_defaultTaskScheduler
mov r13, gword ptr [rdi]
cmp byte ptr [r14], r14b
test r13, r13
- je G_M55340_IG39
+ je G_M55340_IG47
mov rdi, 0xD1FFAB1E ; System.Threading.Tasks.ContinuationTaskFromTask
call CORINFO_HELP_NEWSFAST
mov r12, rax
xor rdi, rdi
mov gword ptr [rsp], rdi
mov rdi, r12
mov rsi, r15
mov r9d, 512
xor rcx, rcx
xor r8d, r8d
xor rdx, rdx
mov rax, 0xD1FFAB1E ; code for System.Threading.Tasks.Task:TaskConstructorCore(System.Delegate,System.Object,System.Threading.CancellationToken,int,int,System.Threading.Tasks.TaskScheduler):this
call [rax]System.Threading.Tasks.Task:TaskConstructorCore(System.Delegate,System.Object,System.Threading.CancellationToken,int,int,System.Threading.Tasks.TaskScheduler):this
mov rax, 0xD1FFAB1E ; code for System.Threading.ExecutionContext:Capture():System.Threading.ExecutionContext
call [rax]System.Threading.ExecutionContext:Capture():System.Threading.ExecutionContext
mov rsi, rax
mov rdi, r12
mov rax, 0xD1FFAB1E ; code for System.Threading.Tasks.Task:set_CapturedContext(System.Threading.ExecutionContext):this
call [rax]System.Threading.Tasks.Task:set_CapturedContext(System.Threading.ExecutionContext):this
lea rdi, bword ptr [r12+0x38]
mov rsi, r14
call CORINFO_HELP_ASSIGN_REF
mov rdi, r14
mov rsi, r12
mov rdx, r13
mov rcx, rbx
mov r8d, 0xD1FFAB1E
mov rax, 0xD1FFAB1E ; code for System.Threading.Tasks.Task:ContinueWithCore(System.Threading.Tasks.Task,System.Threading.Tasks.TaskScheduler,System.Threading.CancellationToken,int):this
call [rax]System.Threading.Tasks.Task:ContinueWithCore(System.Threading.Tasks.Task,System.Threading.Tasks.TaskScheduler,System.Threading.CancellationToken,int):this
jmp G_M55340_IG09
;; size=158 bbWeight=1 PerfScore 29.25
-G_M55340_IG32:
+G_M55340_IG39:
mov rdi, rsp
;; size=3 bbWeight=1 PerfScore 0.25
-G_M55340_IG33:
- call G_M55340_IG50
+G_M55340_IG40:
+ call G_M55340_IG58
jmp G_M55340_IG09
;; size=10 bbWeight=1 PerfScore 3.00
-G_M55340_IG34:
+G_M55340_IG41:
mov rdi, 0xD1FFAB1E ; System.TimeProvider
call CORINFO_HELP_GET_NONGCSTATIC_BASE
jmp G_M55340_IG20
;; size=20 bbWeight=0 PerfScore 0.00
-G_M55340_IG35:
+G_M55340_IG42:
mov rdi, 0xD1FFAB1E ; System.Threading.Tasks.Task+DelayPromiseWithCancellation+<>c
call CORINFO_HELP_GET_GCSTATIC_BASE
jmp G_M55340_IG21
;; size=20 bbWeight=0 PerfScore 0.00
-G_M55340_IG36:
+G_M55340_IG43:
mov rdi, 0xD1FFAB1E ; System.Threading.Tasks.TaskScheduler
call CORINFO_HELP_GET_NONGCSTATIC_BASE
jmp G_M55340_IG28
;; size=20 bbWeight=0 PerfScore 0.00
-G_M55340_IG37:
+G_M55340_IG44:
mov rdi, 0xD1FFAB1E ; System.TimeProvider
call CORINFO_HELP_GET_NONGCSTATIC_BASE
jmp G_M55340_IG30
;; size=20 bbWeight=0 PerfScore 0.00
-G_M55340_IG38:
- mov rdi, 0xD1FFAB1E ; System.Threading.Tasks.TaskScheduler
- call CORINFO_HELP_GET_NONGCSTATIC_BASE
+G_M55340_IG45:
+ mov rdi, 0xD1FFAB1E ; System.Threading.Tasks.Task+DelayPromiseWithCancellation+<>c
+ call CORINFO_HELP_GET_GCSTATIC_BASE
jmp G_M55340_IG31
;; size=20 bbWeight=0 PerfScore 0.00
-G_M55340_IG39:
+G_M55340_IG46:
+ mov rdi, 0xD1FFAB1E ; System.Threading.Tasks.TaskScheduler
+ call CORINFO_HELP_GET_NONGCSTATIC_BASE
+ jmp G_M55340_IG38
+ ;; size=20 bbWeight=0 PerfScore 0.00
+G_M55340_IG47:
mov edi, 47
mov rax, 0xD1FFAB1E ; code for System.ThrowHelper:ThrowArgumentNullException(int)
call [rax]System.ThrowHelper:ThrowArgumentNullException(int)
int3
;; size=18 bbWeight=0 PerfScore 0.00
-G_M55340_IG40:
+G_M55340_IG48:
mov edi, 0x9D7
mov rsi, 0xD1FFAB1E
call CORINFO_HELP_STRCNS
mov rdi, rax
mov rax, 0xD1FFAB1E ; code for System.ArgumentNullException:Throw(System.String)
call [rax]System.ArgumentNullException:Throw(System.String)
int3
;; size=36 bbWeight=0 PerfScore 0.00
-G_M55340_IG41:
+G_M55340_IG49:
mov rax, 0xD1FFAB1E ; code for System.MulticastDelegate:ThrowNullThisInDelegateToInstance()
call [rax]System.MulticastDelegate:ThrowNullThisInDelegateToInstance()
int3
;; size=13 bbWeight=0 PerfScore 0.00
-G_M55340_IG42:
- push rbp
- push r15
- push r14
- push r13
- push r12
- push rbx
- sub rsp, 24
- mov rbp, qword ptr [rdi+0x08]
- mov qword ptr [rsp+0x08], rbp
- lea rbp, [rbp+0x80]
- ;; size=30 bbWeight=1 PerfScore 9.75
-G_M55340_IG43:
- cmp byte ptr [rbp-0x30], 0
- je SHORT G_M55340_IG44
- mov rdi, gword ptr [rbp-0x40]
- call System.Threading.Monitor:Exit(System.Object)
- ;; size=15 bbWeight=1 PerfScore 5.00
-G_M55340_IG44:
- nop
- ;; size=1 bbWeight=1 PerfScore 0.25
-G_M55340_IG45:
- add rsp, 24
- pop rbx
- pop r12
- pop r13
- pop r14
- pop r15
- pop rbp
- ret
- ;; size=15 bbWeight=1 PerfScore 4.25
-G_M55340_IG46:
- push rbp
- push r15
- push r14
- push r13
- push r12
- push rbx
- sub rsp, 24
- mov rbp, qword ptr [rdi+0x08]
- mov qword ptr [rsp+0x08], rbp
- lea rbp, [rbp+0x80]
- ;; size=30 bbWeight=0 PerfScore 0.00
-G_M55340_IG47:
- cmp byte ptr [rbp-0x30], 0
- je SHORT G_M55340_IG48
- mov rdi, gword ptr [rbp-0x48]
- call System.Threading.Monitor:Exit(System.Object)
- ;; size=15 bbWeight=0 PerfScore 0.00
-G_M55340_IG48:
- nop
- ;; size=1 bbWeight=0 PerfScore 0.00
-G_M55340_IG49:
- add rsp, 24
- pop rbx
- pop r12
- pop r13
- pop r14
- pop r15
- pop rbp
- ret
- ;; size=15 bbWeight=0 PerfScore 0.00
G_M55340_IG50:
push rbp
push r15
push r14
push r13
push r12
push rbx
sub rsp, 24
mov rbp, qword ptr [rdi+0x08]
mov qword ptr [rsp+0x08], rbp
lea rbp, [rbp+0x80]
;; size=30 bbWeight=1 PerfScore 9.75
G_M55340_IG51:
cmp byte ptr [rbp-0x30], 0
je SHORT G_M55340_IG52
- mov rdi, gword ptr [rbp-0x40]
+ mov rdi, gword ptr [rbp-0x48]
call System.Threading.Monitor:Exit(System.Object)
;; size=15 bbWeight=1 PerfScore 5.00
G_M55340_IG52:
nop
;; size=1 bbWeight=1 PerfScore 0.25
G_M55340_IG53:
add rsp, 24
pop rbx
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
;; size=15 bbWeight=1 PerfScore 4.25
+G_M55340_IG54:
+ push rbp
+ push r15
+ push r14
+ push r13
+ push r12
+ push rbx
+ sub rsp, 24
+ mov rbp, qword ptr [rdi+0x08]
+ mov qword ptr [rsp+0x08], rbp
+ lea rbp, [rbp+0x80]
+ ;; size=30 bbWeight=0 PerfScore 0.00
+G_M55340_IG55:
+ cmp byte ptr [rbp-0x30], 0
+ je SHORT G_M55340_IG56
+ mov rdi, gword ptr [rbp-0x50]
+ call System.Threading.Monitor:Exit(System.Object)
+ ;; size=15 bbWeight=0 PerfScore 0.00
+G_M55340_IG56:
+ nop
+ ;; size=1 bbWeight=0 PerfScore 0.00
+G_M55340_IG57:
+ add rsp, 24
+ pop rbx
+ pop r12
+ pop r13
+ pop r14
+ pop r15
+ pop rbp
+ ret
+ ;; size=15 bbWeight=0 PerfScore 0.00
+G_M55340_IG58:
+ push rbp
+ push r15
+ push r14
+ push r13
+ push r12
+ push rbx
+ sub rsp, 24
+ mov rbp, qword ptr [rdi+0x08]
+ mov qword ptr [rsp+0x08], rbp
+ lea rbp, [rbp+0x80]
+ ;; size=30 bbWeight=1 PerfScore 9.75
+G_M55340_IG59:
+ cmp byte ptr [rbp-0x30], 0
+ je SHORT G_M55340_IG60
+ mov rdi, gword ptr [rbp-0x48]
+ call System.Threading.Monitor:Exit(System.Object)
+ ;; size=15 bbWeight=1 PerfScore 5.00
+G_M55340_IG60:
+ nop
+ ;; size=1 bbWeight=1 PerfScore 0.25
+G_M55340_IG61:
+ add rsp, 24
+ pop rbx
+ pop r12
+ pop r13
+ pop r14
+ pop r15
+ pop rbp
+ ret
+ ;; size=15 bbWeight=1 PerfScore 4.25
-; Total bytes of code 1945, prolog size 41, PerfScore 397.50, instruction count 465, allocated bytes for code 1945 (MethodHash=59b227d3) for method System.Net.Http.HttpConnectionPool:BlocklistAuthority(System.Net.Http.HttpAuthority,System.Exception):this (FullOpts)
+; Total bytes of code 2326, prolog size 45, PerfScore 494.00, instruction count 553, allocated bytes for code 2326 (MethodHash=59b227d3) for method System.Net.Http.HttpConnectionPool:BlocklistAuthority(System.Net.Http.HttpAuthority,System.Exception):this (FullOpts)
; ============================================================
122 (2.22 % of base) - System.Globalization.TimeSpanParse:ProcessTerminal_HM_S_D(byref,ubyte,byref):ubyte
; Assembly listing for method System.Globalization.TimeSpanParse:ProcessTerminal_HM_S_D(byref,ubyte,byref):ubyte (FullOpts)
; Emitting BLENDED_CODE for X64 with AVX - Unix
; FullOpts code
; optimized code
; rbp based frame
; partially interruptible
; No PGO data
; 0 inlinees with PGO data; 108 single block inlinees; 49 inlinees without PGO data
; Final local variable assignments
;
; V00 arg0 [V00,T00] (106, 54.50) byref -> rbx single-def
; V01 arg1 [V01,T07] ( 3, 2.50) ubyte -> rsi single-def
; V02 arg2 [V02,T06] ( 5, 3.50) byref -> r15 single-def
; V03 loc0 [V03,T150] ( 2, 1 ) ubyte -> r14
; V04 loc1 [V04,T05] ( 14, 7 ) ubyte -> r13
; V05 loc2 [V05,T01] ( 37, 18.50) ubyte -> r12
; V06 loc3 [V06,T03] ( 25, 12.50) ubyte -> [rbp-0x2C]
; V07 loc4 [V07,T02] ( 26, 13 ) struct (32) [rbp-0x50] do-not-enreg[SF] must-init ld-addr-op <System.Globalization.TimeSpanParse+TimeSpanToken>
; V08 loc5 [V08 ] ( 17, 8.50) long -> [rbp-0x58] do-not-enreg[X] addr-exposed ld-addr-op
; V09 OutArgs [V09 ] ( 1, 1 ) struct (160) [rsp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
;* V10 tmp1 [V10 ] ( 0, 0 ) struct ( 8) zero-ref ld-addr-op "NewObj constructor temp" <System.TimeSpan>
; V11 tmp2 [V11,T70] ( 2, 2 ) struct (40) [rbp-0x80] do-not-enreg[HS] must-init hidden-struct-arg "spilled call-like call argument" <System.Globalization.TimeSpanFormat+FormatLiterals>
; V12 tmp3 [V12,T104] ( 3, 1.50) int -> rax
;* V13 tmp4 [V13 ] ( 0, 0 ) struct (40) zero-ref do-not-enreg[S] "spilled call-like call argument" <System.Globalization.TimeSpanFormat+FormatLiterals>
; V14 tmp5 [V14,T105] ( 3, 1.50) int -> rsi
;* V15 tmp6 [V15 ] ( 0, 0 ) struct (40) zero-ref do-not-enreg[S] "spilled call-like call argument" <System.Globalization.TimeSpanFormat+FormatLiterals>
; V16 tmp7 [V16,T106] ( 3, 1.50) int -> rsi
;* V17 tmp8 [V17 ] ( 0, 0 ) struct (40) zero-ref do-not-enreg[S] "spilled call-like call argument" <System.Globalization.TimeSpanFormat+FormatLiterals>
; V18 tmp9 [V18,T107] ( 3, 1.50) int -> rsi
;* V19 tmp10 [V19 ] ( 0, 0 ) struct (40) zero-ref do-not-enreg[S] "spilled call-like call argument" <System.Globalization.TimeSpanFormat+FormatLiterals>
; V20 tmp11 [V20,T108] ( 3, 1.50) int -> rsi
;* V21 tmp12 [V21 ] ( 0, 0 ) struct (40) zero-ref do-not-enreg[S] "spilled call-like call argument" <System.Globalization.TimeSpanFormat+FormatLiterals>
; V22 tmp13 [V22,T109] ( 3, 1.50) int -> rsi
; V23 tmp14 [V23,T110] ( 3, 1.50) int -> rsi
; V24 tmp15 [V24,T111] ( 3, 1.50) int -> rcx
; V25 tmp16 [V25,T112] ( 3, 1.50) int -> rcx
; V26 tmp17 [V26,T113] ( 3, 1.50) int -> rcx
; V27 tmp18 [V27,T114] ( 3, 1.50) int -> rdx
; V28 tmp19 [V28,T151] ( 2, 1 ) int -> rdx
;* V29 tmp20 [V29 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
;* V30 tmp21 [V30 ] ( 0, 0 ) struct (16) zero-ref "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V31 tmp22 [V31,T152] ( 2, 1 ) ubyte -> rdi "Inline return value spill temp"
;* V32 tmp23 [V32 ] ( 0, 0 ) struct (40) zero-ref do-not-enreg[SF] ld-addr-op "Inlining Arg" <System.Globalization.TimeSpanFormat+FormatLiterals>
;* V33 tmp24 [V33 ] ( 0, 0 ) struct (16) zero-ref "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
;* V34 tmp25 [V34 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V35 tmp26 [V35 ] ( 0, 0 ) struct (16) zero-ref "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
;* V36 tmp27 [V36 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V37 tmp28 [V37 ] ( 0, 0 ) struct (16) zero-ref "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
;* V38 tmp29 [V38 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V39 tmp30 [V39 ] ( 0, 0 ) struct (16) zero-ref "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
;* V40 tmp31 [V40 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V41 tmp32 [V41 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V42 tmp33 [V42,T08] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.String>
-;* V43 tmp34 [V43 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V44 tmp35 [V44 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V43 tmp34 [V43 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V44 tmp35 [V44 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V45 tmp36 [V45,T47] ( 2, 2 ) byref -> r10 single-def "Inlining Arg"
; V46 tmp37 [V46,T71] ( 2, 2 ) int -> rsi "Inlining Arg"
; V47 tmp38 [V47,T153] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V48 tmp39 [V48 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V49 tmp40 [V49 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V50 tmp41 [V50,T154] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V51 tmp42 [V51 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V52 tmp43 [V52 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V53 tmp44 [V53 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V54 tmp45 [V54 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V55 tmp46 [V55 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
;* V56 tmp47 [V56 ] ( 0, 0 ) byref -> zero-ref single-def "impAppendStmt"
;* V57 tmp48 [V57 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V58 tmp49 [V58 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V59 tmp50 [V59 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V60 tmp51 [V60 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V61 tmp52 [V61 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V62 tmp53 [V62,T09] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.String>
-;* V63 tmp54 [V63 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V64 tmp55 [V64 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V63 tmp54 [V63 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V64 tmp55 [V64 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V65 tmp56 [V65,T48] ( 2, 2 ) byref -> r10 single-def "Inlining Arg"
; V66 tmp57 [V66,T72] ( 2, 2 ) int -> rsi "Inlining Arg"
; V67 tmp58 [V67,T155] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V68 tmp59 [V68 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V69 tmp60 [V69 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V70 tmp61 [V70,T156] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V71 tmp62 [V71 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V72 tmp63 [V72 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V73 tmp64 [V73 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V74 tmp65 [V74 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V75 tmp66 [V75 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
;* V76 tmp67 [V76 ] ( 0, 0 ) byref -> zero-ref single-def "impAppendStmt"
;* V77 tmp68 [V77 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V78 tmp69 [V78 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V79 tmp70 [V79 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V80 tmp71 [V80 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V81 tmp72 [V81 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V82 tmp73 [V82,T10] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.String>
-;* V83 tmp74 [V83 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V84 tmp75 [V84 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V83 tmp74 [V83 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V84 tmp75 [V84 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V85 tmp76 [V85,T49] ( 2, 2 ) byref -> r10 single-def "Inlining Arg"
; V86 tmp77 [V86,T73] ( 2, 2 ) int -> rsi "Inlining Arg"
; V87 tmp78 [V87,T157] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V88 tmp79 [V88 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V89 tmp80 [V89 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V90 tmp81 [V90,T158] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V91 tmp82 [V91 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V92 tmp83 [V92 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V93 tmp84 [V93 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V94 tmp85 [V94 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V95 tmp86 [V95 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
;* V96 tmp87 [V96 ] ( 0, 0 ) byref -> zero-ref single-def "impAppendStmt"
;* V97 tmp88 [V97 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V98 tmp89 [V98 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V99 tmp90 [V99 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V100 tmp91 [V100 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V101 tmp92 [V101 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V102 tmp93 [V102,T11] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.String>
-;* V103 tmp94 [V103 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V104 tmp95 [V104 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V103 tmp94 [V103 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V104 tmp95 [V104 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V105 tmp96 [V105,T50] ( 2, 2 ) byref -> r8 single-def "Inlining Arg"
; V106 tmp97 [V106,T74] ( 2, 2 ) int -> rsi "Inlining Arg"
; V107 tmp98 [V107,T42] ( 4, 2 ) ubyte -> registers "Inline return value spill temp"
;* V108 tmp99 [V108 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V109 tmp100 [V109 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V110 tmp101 [V110,T159] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V111 tmp102 [V111 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V112 tmp103 [V112 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V113 tmp104 [V113 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V114 tmp105 [V114 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V115 tmp106 [V115 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
;* V116 tmp107 [V116 ] ( 0, 0 ) byref -> zero-ref single-def "impAppendStmt"
;* V117 tmp108 [V117 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V118 tmp109 [V118 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V119 tmp110 [V119 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V120 tmp111 [V120 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V121 tmp112 [V121,T160] ( 2, 1 ) ubyte -> rdi "Inline return value spill temp"
;* V122 tmp113 [V122 ] ( 0, 0 ) struct (40) zero-ref do-not-enreg[SF] ld-addr-op "Inlining Arg" <System.Globalization.TimeSpanFormat+FormatLiterals>
;* V123 tmp114 [V123 ] ( 0, 0 ) struct (16) zero-ref "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
;* V124 tmp115 [V124 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V125 tmp116 [V125 ] ( 0, 0 ) struct (16) zero-ref "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
;* V126 tmp117 [V126 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V127 tmp118 [V127 ] ( 0, 0 ) struct (16) zero-ref "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
;* V128 tmp119 [V128 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V129 tmp120 [V129 ] ( 0, 0 ) struct (16) zero-ref "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
;* V130 tmp121 [V130 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V131 tmp122 [V131 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V132 tmp123 [V132,T12] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.String>
-;* V133 tmp124 [V133 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V134 tmp125 [V134 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V133 tmp124 [V133 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V134 tmp125 [V134 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V135 tmp126 [V135,T51] ( 2, 2 ) byref -> r10 single-def "Inlining Arg"
; V136 tmp127 [V136,T75] ( 2, 2 ) int -> rsi "Inlining Arg"
; V137 tmp128 [V137,T161] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V138 tmp129 [V138 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V139 tmp130 [V139 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V140 tmp131 [V140,T162] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V141 tmp132 [V141 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V142 tmp133 [V142 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V143 tmp134 [V143 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V144 tmp135 [V144 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V145 tmp136 [V145 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
;* V146 tmp137 [V146 ] ( 0, 0 ) byref -> zero-ref single-def "impAppendStmt"
;* V147 tmp138 [V147 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V148 tmp139 [V148 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V149 tmp140 [V149 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V150 tmp141 [V150 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V151 tmp142 [V151 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V152 tmp143 [V152,T13] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.String>
-;* V153 tmp144 [V153 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V154 tmp145 [V154 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V153 tmp144 [V153 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V154 tmp145 [V154 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V155 tmp146 [V155,T52] ( 2, 2 ) byref -> r10 single-def "Inlining Arg"
; V156 tmp147 [V156,T76] ( 2, 2 ) int -> rsi "Inlining Arg"
; V157 tmp148 [V157,T163] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V158 tmp149 [V158 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V159 tmp150 [V159 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V160 tmp151 [V160,T164] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V161 tmp152 [V161 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V162 tmp153 [V162 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V163 tmp154 [V163 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V164 tmp155 [V164 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V165 tmp156 [V165 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
;* V166 tmp157 [V166 ] ( 0, 0 ) byref -> zero-ref single-def "impAppendStmt"
;* V167 tmp158 [V167 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V168 tmp159 [V168 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V169 tmp160 [V169 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V170 tmp161 [V170 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V171 tmp162 [V171 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V172 tmp163 [V172,T14] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.String>
-;* V173 tmp164 [V173 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V174 tmp165 [V174 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V173 tmp164 [V173 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V174 tmp165 [V174 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V175 tmp166 [V175,T53] ( 2, 2 ) byref -> r10 single-def "Inlining Arg"
; V176 tmp167 [V176,T77] ( 2, 2 ) int -> rsi "Inlining Arg"
; V177 tmp168 [V177,T165] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V178 tmp169 [V178 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V179 tmp170 [V179 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V180 tmp171 [V180,T166] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V181 tmp172 [V181 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V182 tmp173 [V182 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V183 tmp174 [V183 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V184 tmp175 [V184 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V185 tmp176 [V185 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
;* V186 tmp177 [V186 ] ( 0, 0 ) byref -> zero-ref single-def "impAppendStmt"
;* V187 tmp178 [V187 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V188 tmp179 [V188 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V189 tmp180 [V189 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V190 tmp181 [V190 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V191 tmp182 [V191 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V192 tmp183 [V192,T15] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.String>
-;* V193 tmp184 [V193 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V194 tmp185 [V194 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V193 tmp184 [V193 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V194 tmp185 [V194 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V195 tmp186 [V195,T54] ( 2, 2 ) byref -> r8 single-def "Inlining Arg"
; V196 tmp187 [V196,T78] ( 2, 2 ) int -> rsi "Inlining Arg"
; V197 tmp188 [V197,T43] ( 4, 2 ) ubyte -> registers "Inline return value spill temp"
;* V198 tmp189 [V198 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V199 tmp190 [V199 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V200 tmp191 [V200,T167] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V201 tmp192 [V201 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V202 tmp193 [V202 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V203 tmp194 [V203 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V204 tmp195 [V204 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V205 tmp196 [V205 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
;* V206 tmp197 [V206 ] ( 0, 0 ) byref -> zero-ref single-def "impAppendStmt"
;* V207 tmp198 [V207 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V208 tmp199 [V208 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V209 tmp200 [V209 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V210 tmp201 [V210 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V211 tmp202 [V211,T168] ( 2, 1 ) ubyte -> rcx "Inline return value spill temp"
;* V212 tmp203 [V212 ] ( 0, 0 ) struct (40) zero-ref do-not-enreg[SF] ld-addr-op "Inlining Arg" <System.Globalization.TimeSpanFormat+FormatLiterals>
;* V213 tmp204 [V213 ] ( 0, 0 ) struct (16) zero-ref "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
;* V214 tmp205 [V214 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V215 tmp206 [V215 ] ( 0, 0 ) struct (16) zero-ref "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
;* V216 tmp207 [V216 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V217 tmp208 [V217 ] ( 0, 0 ) struct (16) zero-ref "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
;* V218 tmp209 [V218 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V219 tmp210 [V219 ] ( 0, 0 ) struct (16) zero-ref "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
;* V220 tmp211 [V220 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V221 tmp212 [V221 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V222 tmp213 [V222,T16] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.String>
-;* V223 tmp214 [V223 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V224 tmp215 [V224 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V223 tmp214 [V223 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V224 tmp215 [V224 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V225 tmp216 [V225,T55] ( 2, 2 ) byref -> r9 single-def "Inlining Arg"
; V226 tmp217 [V226,T79] ( 2, 2 ) int -> rsi "Inlining Arg"
; V227 tmp218 [V227,T169] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V228 tmp219 [V228 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V229 tmp220 [V229 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V230 tmp221 [V230,T170] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V231 tmp222 [V231 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V232 tmp223 [V232 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V233 tmp224 [V233 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V234 tmp225 [V234 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V235 tmp226 [V235 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
;* V236 tmp227 [V236 ] ( 0, 0 ) byref -> zero-ref single-def "impAppendStmt"
;* V237 tmp228 [V237 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V238 tmp229 [V238 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V239 tmp230 [V239 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V240 tmp231 [V240 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V241 tmp232 [V241 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V242 tmp233 [V242,T17] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.String>
-;* V243 tmp234 [V243 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V244 tmp235 [V244 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V243 tmp234 [V243 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V244 tmp235 [V244 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V245 tmp236 [V245,T56] ( 2, 2 ) byref -> r9 single-def "Inlining Arg"
; V246 tmp237 [V246,T80] ( 2, 2 ) int -> rsi "Inlining Arg"
; V247 tmp238 [V247,T171] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V248 tmp239 [V248 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V249 tmp240 [V249 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V250 tmp241 [V250,T172] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V251 tmp242 [V251 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V252 tmp243 [V252 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V253 tmp244 [V253 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V254 tmp245 [V254 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V255 tmp246 [V255 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
;* V256 tmp247 [V256 ] ( 0, 0 ) byref -> zero-ref single-def "impAppendStmt"
;* V257 tmp248 [V257 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V258 tmp249 [V258 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V259 tmp250 [V259 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V260 tmp251 [V260 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V261 tmp252 [V261 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
;* V262 tmp253 [V262 ] ( 0, 0 ) ref -> zero-ref class-hnd exact single-def "Inlining Arg" <System.String>
-;* V263 tmp254 [V263 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V264 tmp255 [V264 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V263 tmp254 [V263 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V264 tmp255 [V264 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V265 tmp256 [V265,T57] ( 2, 2 ) byref -> rsi single-def "Inlining Arg"
;* V266 tmp257 [V266,T205] ( 0, 0 ) int -> zero-ref "Inlining Arg"
; V267 tmp258 [V267,T173] ( 2, 1 ) ubyte -> rdx "Inline return value spill temp"
;* V268 tmp259 [V268 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V269 tmp260 [V269 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V270 tmp261 [V270,T174] ( 2, 1 ) ubyte -> rdx "Inline return value spill temp"
;* V271 tmp262 [V271 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V272 tmp263 [V272 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V273 tmp264 [V273 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V274 tmp265 [V274 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V275 tmp266 [V275 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
;* V276 tmp267 [V276 ] ( 0, 0 ) byref -> zero-ref single-def "impAppendStmt"
;* V277 tmp268 [V277 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V278 tmp269 [V278 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V279 tmp270 [V279 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V280 tmp271 [V280 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V281 tmp272 [V281 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V282 tmp273 [V282,T18] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.String>
-;* V283 tmp274 [V283 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V284 tmp275 [V284 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V283 tmp274 [V283 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V284 tmp275 [V284 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V285 tmp276 [V285,T58] ( 2, 2 ) byref -> rcx single-def "Inlining Arg"
; V286 tmp277 [V286,T81] ( 2, 2 ) int -> rsi "Inlining Arg"
; V287 tmp278 [V287,T44] ( 4, 2 ) ubyte -> registers "Inline return value spill temp"
;* V288 tmp279 [V288 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V289 tmp280 [V289 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V290 tmp281 [V290,T175] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V291 tmp282 [V291 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V292 tmp283 [V292 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V293 tmp284 [V293 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V294 tmp285 [V294 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V295 tmp286 [V295 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
;* V296 tmp287 [V296 ] ( 0, 0 ) byref -> zero-ref single-def "impAppendStmt"
;* V297 tmp288 [V297 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V298 tmp289 [V298 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V299 tmp290 [V299 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V300 tmp291 [V300 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V301 tmp292 [V301,T59] ( 2, 2 ) byref -> rdi single-def "impAppendStmt"
;* V302 tmp293 [V302 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V303 tmp294 [V303 ] ( 0, 0 ) struct (16) zero-ref multireg-arg "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V304 tmp295 [V304,T19] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.String>
-;* V305 tmp296 [V305 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V306 tmp297 [V306 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V305 tmp296 [V305 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V306 tmp297 [V306 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V307 tmp298 [V307,T60] ( 2, 2 ) byref -> rdx single-def "Inlining Arg"
; V308 tmp299 [V308,T82] ( 2, 2 ) int -> rsi "Inlining Arg"
; V309 tmp300 [V309,T61] ( 2, 2 ) byref -> rdi single-def "impAppendStmt"
;* V310 tmp301 [V310 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V311 tmp302 [V311 ] ( 0, 0 ) struct (16) zero-ref multireg-arg "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V312 tmp303 [V312,T20] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.String>
-;* V313 tmp304 [V313 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V314 tmp305 [V314 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V313 tmp304 [V313 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V314 tmp305 [V314 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V315 tmp306 [V315,T62] ( 2, 2 ) byref -> rdx single-def "Inlining Arg"
; V316 tmp307 [V316,T83] ( 2, 2 ) int -> rsi "Inlining Arg"
; V317 tmp308 [V317,T63] ( 2, 2 ) byref -> rdi single-def "impAppendStmt"
;* V318 tmp309 [V318 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V319 tmp310 [V319 ] ( 0, 0 ) struct (16) zero-ref multireg-arg "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V320 tmp311 [V320,T21] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.String>
-;* V321 tmp312 [V321 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V322 tmp313 [V322 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V321 tmp312 [V321 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V322 tmp313 [V322 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V323 tmp314 [V323,T64] ( 2, 2 ) byref -> rdx single-def "Inlining Arg"
; V324 tmp315 [V324,T84] ( 2, 2 ) int -> rsi "Inlining Arg"
; V325 tmp316 [V325,T65] ( 2, 2 ) byref -> rdi single-def "impAppendStmt"
;* V326 tmp317 [V326 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V327 tmp318 [V327 ] ( 0, 0 ) struct (16) zero-ref multireg-arg "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V328 tmp319 [V328,T22] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.String>
-;* V329 tmp320 [V329 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V330 tmp321 [V330 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V329 tmp320 [V329 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V330 tmp321 [V330 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V331 tmp322 [V331,T66] ( 2, 2 ) byref -> rdx single-def "Inlining Arg"
; V332 tmp323 [V332,T85] ( 2, 2 ) int -> rsi "Inlining Arg"
; V333 tmp324 [V333,T67] ( 2, 2 ) byref -> rdi single-def "impAppendStmt"
;* V334 tmp325 [V334 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V335 tmp326 [V335 ] ( 0, 0 ) struct (16) zero-ref multireg-arg "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V336 tmp327 [V336,T23] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.String>
-;* V337 tmp328 [V337 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V338 tmp329 [V338 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V337 tmp328 [V337 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V338 tmp329 [V338 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V339 tmp330 [V339,T68] ( 2, 2 ) byref -> rdx single-def "Inlining Arg"
; V340 tmp331 [V340,T86] ( 2, 2 ) int -> rsi "Inlining Arg"
; V341 tmp332 [V341,T87] ( 2, 2 ) long -> rax "Inlining Arg"
; V342 tmp333 [V342,T26] ( 3, 3 ) int -> rax "Single return block return value"
; V343 tmp334 [V343,T176] ( 2, 1 ) long -> rax "field V10._ticks (fldOffset=0x0)" P-INDEP
;* V344 tmp335 [V344 ] ( 0, 0 ) byref -> zero-ref single-def "field V29._reference (fldOffset=0x0)" P-INDEP
;* V345 tmp336 [V345 ] ( 0, 0 ) int -> zero-ref "field V29._length (fldOffset=0x8)" P-INDEP
;* V346 tmp337 [V346 ] ( 0, 0 ) byref -> zero-ref single-def "field V30._reference (fldOffset=0x0)" P-INDEP
;* V347 tmp338 [V347 ] ( 0, 0 ) int -> zero-ref "field V30._length (fldOffset=0x8)" P-INDEP
; V348 tmp339 [V348,T120] ( 2, 1 ) byref -> rdi single-def "field V33._reference (fldOffset=0x0)" P-INDEP
; V349 tmp340 [V349,T177] ( 2, 1 ) int -> rdx "field V33._length (fldOffset=0x8)" P-INDEP
;* V350 tmp341 [V350 ] ( 0, 0 ) byref -> zero-ref single-def "field V34._reference (fldOffset=0x0)" P-INDEP
;* V351 tmp342 [V351 ] ( 0, 0 ) int -> zero-ref "field V34._length (fldOffset=0x8)" P-INDEP
; V352 tmp343 [V352,T121] ( 2, 1 ) byref -> rdi single-def "field V35._reference (fldOffset=0x0)" P-INDEP
; V353 tmp344 [V353,T178] ( 2, 1 ) int -> rdx "field V35._length (fldOffset=0x8)" P-INDEP
;* V354 tmp345 [V354 ] ( 0, 0 ) byref -> zero-ref single-def "field V36._reference (fldOffset=0x0)" P-INDEP
;* V355 tmp346 [V355 ] ( 0, 0 ) int -> zero-ref "field V36._length (fldOffset=0x8)" P-INDEP
; V356 tmp347 [V356,T122] ( 2, 1 ) byref -> rdi single-def "field V37._reference (fldOffset=0x0)" P-INDEP
; V357 tmp348 [V357,T179] ( 2, 1 ) int -> rdx "field V37._length (fldOffset=0x8)" P-INDEP
;* V358 tmp349 [V358 ] ( 0, 0 ) byref -> zero-ref single-def "field V38._reference (fldOffset=0x0)" P-INDEP
;* V359 tmp350 [V359 ] ( 0, 0 ) int -> zero-ref "field V38._length (fldOffset=0x8)" P-INDEP
; V360 tmp351 [V360,T123] ( 2, 1 ) byref -> rdi single-def "field V39._reference (fldOffset=0x0)" P-INDEP
; V361 tmp352 [V361,T180] ( 2, 1 ) int -> rdx "field V39._length (fldOffset=0x8)" P-INDEP
;* V362 tmp353 [V362 ] ( 0, 0 ) byref -> zero-ref single-def "field V40._reference (fldOffset=0x0)" P-INDEP
;* V363 tmp354 [V363 ] ( 0, 0 ) int -> zero-ref "field V40._length (fldOffset=0x8)" P-INDEP
-; V364 tmp355 [V364,T88] ( 3, 1.50) byref -> r10 "field V41._reference (fldOffset=0x0)" P-INDEP
-; V365 tmp356 [V365,T28] ( 5, 2.50) int -> rsi "field V41._length (fldOffset=0x8)" P-INDEP
-; V366 tmp357 [V366,T124] ( 2, 1 ) byref -> r10 single-def "field V43._reference (fldOffset=0x0)" P-INDEP
-; V367 tmp358 [V367,T181] ( 2, 1 ) int -> rsi "field V43._length (fldOffset=0x8)" P-INDEP
-;* V368 tmp359 [V368 ] ( 0, 0 ) byref -> zero-ref single-def "field V44._reference (fldOffset=0x0)" P-INDEP
-;* V369 tmp360 [V369 ] ( 0, 0 ) int -> zero-ref "field V44._length (fldOffset=0x8)" P-INDEP
+; V364 tmp355 [V364,T88] ( 3, 1.50) byref -> registers "field V41._reference (fldOffset=0x0)" P-INDEP
+; V365 tmp356 [V365,T28] ( 5, 2.50) int -> registers "field V41._length (fldOffset=0x8)" P-INDEP
+;* V366 tmp357 [V366 ] ( 0, 0 ) byref -> zero-ref single-def "field V43._reference (fldOffset=0x0)" P-INDEP
+;* V367 tmp358 [V367 ] ( 0, 0 ) int -> zero-ref "field V43._length (fldOffset=0x8)" P-INDEP
+; V368 tmp359 [V368,T124] ( 2, 1 ) byref -> r10 single-def "field V44._reference (fldOffset=0x0)" P-INDEP
+; V369 tmp360 [V369,T181] ( 2, 1 ) int -> rsi "field V44._length (fldOffset=0x8)" P-INDEP
;* V370 tmp361 [V370 ] ( 0, 0 ) byref -> zero-ref single-def "field V48._reference (fldOffset=0x0)" P-INDEP
;* V371 tmp362 [V371 ] ( 0, 0 ) int -> zero-ref "field V48._length (fldOffset=0x8)" P-INDEP
;* V372 tmp363 [V372 ] ( 0, 0 ) byref -> zero-ref single-def "field V49._reference (fldOffset=0x0)" P-INDEP
;* V373 tmp364 [V373 ] ( 0, 0 ) int -> zero-ref "field V49._length (fldOffset=0x8)" P-INDEP
;* V374 tmp365 [V374 ] ( 0, 0 ) byref -> zero-ref single-def "field V51._reference (fldOffset=0x0)" P-INDEP
;* V375 tmp366 [V375 ] ( 0, 0 ) int -> zero-ref "field V51._length (fldOffset=0x8)" P-INDEP
;* V376 tmp367 [V376 ] ( 0, 0 ) byref -> zero-ref single-def "field V53._reference (fldOffset=0x0)" P-INDEP
;* V377 tmp368 [V377 ] ( 0, 0 ) int -> zero-ref "field V53._length (fldOffset=0x8)" P-INDEP
;* V378 tmp369 [V378 ] ( 0, 0 ) byref -> zero-ref single-def "field V57._reference (fldOffset=0x0)" P-INDEP
;* V379 tmp370 [V379 ] ( 0, 0 ) int -> zero-ref "field V57._length (fldOffset=0x8)" P-INDEP
;* V380 tmp371 [V380 ] ( 0, 0 ) byref -> zero-ref single-def "field V58._reference (fldOffset=0x0)" P-INDEP
;* V381 tmp372 [V381 ] ( 0, 0 ) int -> zero-ref "field V58._length (fldOffset=0x8)" P-INDEP
;* V382 tmp373 [V382 ] ( 0, 0 ) byref -> zero-ref "field V59._reference (fldOffset=0x0)" P-INDEP
;* V383 tmp374 [V383 ] ( 0, 0 ) int -> zero-ref "field V59._length (fldOffset=0x8)" P-INDEP
;* V384 tmp375 [V384 ] ( 0, 0 ) byref -> zero-ref "field V60._reference (fldOffset=0x0)" P-INDEP
;* V385 tmp376 [V385 ] ( 0, 0 ) int -> zero-ref "field V60._length (fldOffset=0x8)" P-INDEP
-; V386 tmp377 [V386,T89] ( 3, 1.50) byref -> r10 "field V61._reference (fldOffset=0x0)" P-INDEP
-; V387 tmp378 [V387,T29] ( 5, 2.50) int -> rsi "field V61._length (fldOffset=0x8)" P-INDEP
-; V388 tmp379 [V388,T125] ( 2, 1 ) byref -> r10 single-def "field V63._reference (fldOffset=0x0)" P-INDEP
-; V389 tmp380 [V389,T182] ( 2, 1 ) int -> rsi "field V63._length (fldOffset=0x8)" P-INDEP
-;* V390 tmp381 [V390 ] ( 0, 0 ) byref -> zero-ref single-def "field V64._reference (fldOffset=0x0)" P-INDEP
-;* V391 tmp382 [V391 ] ( 0, 0 ) int -> zero-ref "field V64._length (fldOffset=0x8)" P-INDEP
+; V386 tmp377 [V386,T89] ( 3, 1.50) byref -> registers "field V61._reference (fldOffset=0x0)" P-INDEP
+; V387 tmp378 [V387,T29] ( 5, 2.50) int -> registers "field V61._length (fldOffset=0x8)" P-INDEP
+;* V388 tmp379 [V388 ] ( 0, 0 ) byref -> zero-ref single-def "field V63._reference (fldOffset=0x0)" P-INDEP
+;* V389 tmp380 [V389 ] ( 0, 0 ) int -> zero-ref "field V63._length (fldOffset=0x8)" P-INDEP
+; V390 tmp381 [V390,T125] ( 2, 1 ) byref -> r10 single-def "field V64._reference (fldOffset=0x0)" P-INDEP
+; V391 tmp382 [V391,T182] ( 2, 1 ) int -> rsi "field V64._length (fldOffset=0x8)" P-INDEP
;* V392 tmp383 [V392 ] ( 0, 0 ) byref -> zero-ref single-def "field V68._reference (fldOffset=0x0)" P-INDEP
;* V393 tmp384 [V393 ] ( 0, 0 ) int -> zero-ref "field V68._length (fldOffset=0x8)" P-INDEP
;* V394 tmp385 [V394 ] ( 0, 0 ) byref -> zero-ref single-def "field V69._reference (fldOffset=0x0)" P-INDEP
;* V395 tmp386 [V395 ] ( 0, 0 ) int -> zero-ref "field V69._length (fldOffset=0x8)" P-INDEP
;* V396 tmp387 [V396 ] ( 0, 0 ) byref -> zero-ref single-def "field V71._reference (fldOffset=0x0)" P-INDEP
;* V397 tmp388 [V397 ] ( 0, 0 ) int -> zero-ref "field V71._length (fldOffset=0x8)" P-INDEP
;* V398 tmp389 [V398 ] ( 0, 0 ) byref -> zero-ref single-def "field V73._reference (fldOffset=0x0)" P-INDEP
;* V399 tmp390 [V399 ] ( 0, 0 ) int -> zero-ref "field V73._length (fldOffset=0x8)" P-INDEP
;* V400 tmp391 [V400 ] ( 0, 0 ) byref -> zero-ref single-def "field V77._reference (fldOffset=0x0)" P-INDEP
;* V401 tmp392 [V401 ] ( 0, 0 ) int -> zero-ref "field V77._length (fldOffset=0x8)" P-INDEP
;* V402 tmp393 [V402 ] ( 0, 0 ) byref -> zero-ref single-def "field V78._reference (fldOffset=0x0)" P-INDEP
;* V403 tmp394 [V403 ] ( 0, 0 ) int -> zero-ref "field V78._length (fldOffset=0x8)" P-INDEP
;* V404 tmp395 [V404 ] ( 0, 0 ) byref -> zero-ref "field V79._reference (fldOffset=0x0)" P-INDEP
;* V405 tmp396 [V405 ] ( 0, 0 ) int -> zero-ref "field V79._length (fldOffset=0x8)" P-INDEP
;* V406 tmp397 [V406 ] ( 0, 0 ) byref -> zero-ref "field V80._reference (fldOffset=0x0)" P-INDEP
;* V407 tmp398 [V407 ] ( 0, 0 ) int -> zero-ref "field V80._length (fldOffset=0x8)" P-INDEP
-; V408 tmp399 [V408,T90] ( 3, 1.50) byref -> r10 "field V81._reference (fldOffset=0x0)" P-INDEP
-; V409 tmp400 [V409,T30] ( 5, 2.50) int -> rsi "field V81._length (fldOffset=0x8)" P-INDEP
-; V410 tmp401 [V410,T126] ( 2, 1 ) byref -> r10 single-def "field V83._reference (fldOffset=0x0)" P-INDEP
-; V411 tmp402 [V411,T183] ( 2, 1 ) int -> rsi "field V83._length (fldOffset=0x8)" P-INDEP
-;* V412 tmp403 [V412 ] ( 0, 0 ) byref -> zero-ref single-def "field V84._reference (fldOffset=0x0)" P-INDEP
-;* V413 tmp404 [V413 ] ( 0, 0 ) int -> zero-ref "field V84._length (fldOffset=0x8)" P-INDEP
+; V408 tmp399 [V408,T90] ( 3, 1.50) byref -> registers "field V81._reference (fldOffset=0x0)" P-INDEP
+; V409 tmp400 [V409,T30] ( 5, 2.50) int -> registers "field V81._length (fldOffset=0x8)" P-INDEP
+;* V410 tmp401 [V410 ] ( 0, 0 ) byref -> zero-ref single-def "field V83._reference (fldOffset=0x0)" P-INDEP
+;* V411 tmp402 [V411 ] ( 0, 0 ) int -> zero-ref "field V83._length (fldOffset=0x8)" P-INDEP
+; V412 tmp403 [V412,T126] ( 2, 1 ) byref -> r10 single-def "field V84._reference (fldOffset=0x0)" P-INDEP
+; V413 tmp404 [V413,T183] ( 2, 1 ) int -> rsi "field V84._length (fldOffset=0x8)" P-INDEP
;* V414 tmp405 [V414 ] ( 0, 0 ) byref -> zero-ref single-def "field V88._reference (fldOffset=0x0)" P-INDEP
;* V415 tmp406 [V415 ] ( 0, 0 ) int -> zero-ref "field V88._length (fldOffset=0x8)" P-INDEP
;* V416 tmp407 [V416 ] ( 0, 0 ) byref -> zero-ref single-def "field V89._reference (fldOffset=0x0)" P-INDEP
;* V417 tmp408 [V417 ] ( 0, 0 ) int -> zero-ref "field V89._length (fldOffset=0x8)" P-INDEP
;* V418 tmp409 [V418 ] ( 0, 0 ) byref -> zero-ref single-def "field V91._reference (fldOffset=0x0)" P-INDEP
;* V419 tmp410 [V419 ] ( 0, 0 ) int -> zero-ref "field V91._length (fldOffset=0x8)" P-INDEP
;* V420 tmp411 [V420 ] ( 0, 0 ) byref -> zero-ref single-def "field V93._reference (fldOffset=0x0)" P-INDEP
;* V421 tmp412 [V421 ] ( 0, 0 ) int -> zero-ref "field V93._length (fldOffset=0x8)" P-INDEP
;* V422 tmp413 [V422 ] ( 0, 0 ) byref -> zero-ref single-def "field V97._reference (fldOffset=0x0)" P-INDEP
;* V423 tmp414 [V423 ] ( 0, 0 ) int -> zero-ref "field V97._length (fldOffset=0x8)" P-INDEP
;* V424 tmp415 [V424 ] ( 0, 0 ) byref -> zero-ref single-def "field V98._reference (fldOffset=0x0)" P-INDEP
;* V425 tmp416 [V425 ] ( 0, 0 ) int -> zero-ref "field V98._length (fldOffset=0x8)" P-INDEP
;* V426 tmp417 [V426 ] ( 0, 0 ) byref -> zero-ref "field V99._reference (fldOffset=0x0)" P-INDEP
;* V427 tmp418 [V427 ] ( 0, 0 ) int -> zero-ref "field V99._length (fldOffset=0x8)" P-INDEP
;* V428 tmp419 [V428 ] ( 0, 0 ) byref -> zero-ref "field V100._reference (fldOffset=0x0)" P-INDEP
;* V429 tmp420 [V429 ] ( 0, 0 ) int -> zero-ref "field V100._length (fldOffset=0x8)" P-INDEP
-; V430 tmp421 [V430,T91] ( 3, 1.50) byref -> r8 "field V101._reference (fldOffset=0x0)" P-INDEP
-; V431 tmp422 [V431,T31] ( 5, 2.50) int -> rsi "field V101._length (fldOffset=0x8)" P-INDEP
-; V432 tmp423 [V432,T127] ( 2, 1 ) byref -> r8 single-def "field V103._reference (fldOffset=0x0)" P-INDEP
-; V433 tmp424 [V433,T184] ( 2, 1 ) int -> rsi "field V103._length (fldOffset=0x8)" P-INDEP
-;* V434 tmp425 [V434 ] ( 0, 0 ) byref -> zero-ref single-def "field V104._reference (fldOffset=0x0)" P-INDEP
-;* V435 tmp426 [V435 ] ( 0, 0 ) int -> zero-ref "field V104._length (fldOffset=0x8)" P-INDEP
+; V430 tmp421 [V430,T91] ( 3, 1.50) byref -> registers "field V101._reference (fldOffset=0x0)" P-INDEP
+; V431 tmp422 [V431,T31] ( 5, 2.50) int -> registers "field V101._length (fldOffset=0x8)" P-INDEP
+;* V432 tmp423 [V432 ] ( 0, 0 ) byref -> zero-ref single-def "field V103._reference (fldOffset=0x0)" P-INDEP
+;* V433 tmp424 [V433 ] ( 0, 0 ) int -> zero-ref "field V103._length (fldOffset=0x8)" P-INDEP
+; V434 tmp425 [V434,T127] ( 2, 1 ) byref -> r8 single-def "field V104._reference (fldOffset=0x0)" P-INDEP
+; V435 tmp426 [V435,T184] ( 2, 1 ) int -> rsi "field V104._length (fldOffset=0x8)" P-INDEP
;* V436 tmp427 [V436 ] ( 0, 0 ) byref -> zero-ref single-def "field V108._reference (fldOffset=0x0)" P-INDEP
;* V437 tmp428 [V437 ] ( 0, 0 ) int -> zero-ref "field V108._length (fldOffset=0x8)" P-INDEP
;* V438 tmp429 [V438 ] ( 0, 0 ) byref -> zero-ref single-def "field V109._reference (fldOffset=0x0)" P-INDEP
;* V439 tmp430 [V439 ] ( 0, 0 ) int -> zero-ref "field V109._length (fldOffset=0x8)" P-INDEP
;* V440 tmp431 [V440 ] ( 0, 0 ) byref -> zero-ref single-def "field V111._reference (fldOffset=0x0)" P-INDEP
;* V441 tmp432 [V441 ] ( 0, 0 ) int -> zero-ref "field V111._length (fldOffset=0x8)" P-INDEP
;* V442 tmp433 [V442 ] ( 0, 0 ) byref -> zero-ref single-def "field V113._reference (fldOffset=0x0)" P-INDEP
;* V443 tmp434 [V443 ] ( 0, 0 ) int -> zero-ref "field V113._length (fldOffset=0x8)" P-INDEP
;* V444 tmp435 [V444 ] ( 0, 0 ) byref -> zero-ref single-def "field V117._reference (fldOffset=0x0)" P-INDEP
;* V445 tmp436 [V445 ] ( 0, 0 ) int -> zero-ref "field V117._length (fldOffset=0x8)" P-INDEP
;* V446 tmp437 [V446 ] ( 0, 0 ) byref -> zero-ref single-def "field V118._reference (fldOffset=0x0)" P-INDEP
;* V447 tmp438 [V447 ] ( 0, 0 ) int -> zero-ref "field V118._length (fldOffset=0x8)" P-INDEP
;* V448 tmp439 [V448 ] ( 0, 0 ) byref -> zero-ref "field V119._reference (fldOffset=0x0)" P-INDEP
;* V449 tmp440 [V449 ] ( 0, 0 ) int -> zero-ref "field V119._length (fldOffset=0x8)" P-INDEP
;* V450 tmp441 [V450 ] ( 0, 0 ) byref -> zero-ref "field V120._reference (fldOffset=0x0)" P-INDEP
;* V451 tmp442 [V451 ] ( 0, 0 ) int -> zero-ref "field V120._length (fldOffset=0x8)" P-INDEP
; V452 tmp443 [V452,T128] ( 2, 1 ) byref -> rdi single-def "field V123._reference (fldOffset=0x0)" P-INDEP
; V453 tmp444 [V453,T185] ( 2, 1 ) int -> rdx "field V123._length (fldOffset=0x8)" P-INDEP
;* V454 tmp445 [V454 ] ( 0, 0 ) byref -> zero-ref single-def "field V124._reference (fldOffset=0x0)" P-INDEP
;* V455 tmp446 [V455 ] ( 0, 0 ) int -> zero-ref "field V124._length (fldOffset=0x8)" P-INDEP
; V456 tmp447 [V456,T129] ( 2, 1 ) byref -> rdi single-def "field V125._reference (fldOffset=0x0)" P-INDEP
; V457 tmp448 [V457,T186] ( 2, 1 ) int -> rdx "field V125._length (fldOffset=0x8)" P-INDEP
;* V458 tmp449 [V458 ] ( 0, 0 ) byref -> zero-ref single-def "field V126._reference (fldOffset=0x0)" P-INDEP
;* V459 tmp450 [V459 ] ( 0, 0 ) int -> zero-ref "field V126._length (fldOffset=0x8)" P-INDEP
; V460 tmp451 [V460,T130] ( 2, 1 ) byref -> rdi single-def "field V127._reference (fldOffset=0x0)" P-INDEP
; V461 tmp452 [V461,T187] ( 2, 1 ) int -> rdx "field V127._length (fldOffset=0x8)" P-INDEP
;* V462 tmp453 [V462 ] ( 0, 0 ) byref -> zero-ref single-def "field V128._reference (fldOffset=0x0)" P-INDEP
;* V463 tmp454 [V463 ] ( 0, 0 ) int -> zero-ref "field V128._length (fldOffset=0x8)" P-INDEP
; V464 tmp455 [V464,T131] ( 2, 1 ) byref -> rdi single-def "field V129._reference (fldOffset=0x0)" P-INDEP
; V465 tmp456 [V465,T188] ( 2, 1 ) int -> rdx "field V129._length (fldOffset=0x8)" P-INDEP
;* V466 tmp457 [V466 ] ( 0, 0 ) byref -> zero-ref single-def "field V130._reference (fldOffset=0x0)" P-INDEP
;* V467 tmp458 [V467 ] ( 0, 0 ) int -> zero-ref "field V130._length (fldOffset=0x8)" P-INDEP
-; V468 tmp459 [V468,T92] ( 3, 1.50) byref -> r10 "field V131._reference (fldOffset=0x0)" P-INDEP
-; V469 tmp460 [V469,T32] ( 5, 2.50) int -> rsi "field V131._length (fldOffset=0x8)" P-INDEP
-; V470 tmp461 [V470,T132] ( 2, 1 ) byref -> r10 single-def "field V133._reference (fldOffset=0x0)" P-INDEP
-; V471 tmp462 [V471,T189] ( 2, 1 ) int -> rsi "field V133._length (fldOffset=0x8)" P-INDEP
-;* V472 tmp463 [V472 ] ( 0, 0 ) byref -> zero-ref single-def "field V134._reference (fldOffset=0x0)" P-INDEP
-;* V473 tmp464 [V473 ] ( 0, 0 ) int -> zero-ref "field V134._length (fldOffset=0x8)" P-INDEP
+; V468 tmp459 [V468,T92] ( 3, 1.50) byref -> registers "field V131._reference (fldOffset=0x0)" P-INDEP
+; V469 tmp460 [V469,T32] ( 5, 2.50) int -> registers "field V131._length (fldOffset=0x8)" P-INDEP
+;* V470 tmp461 [V470 ] ( 0, 0 ) byref -> zero-ref single-def "field V133._reference (fldOffset=0x0)" P-INDEP
+;* V471 tmp462 [V471 ] ( 0, 0 ) int -> zero-ref "field V133._length (fldOffset=0x8)" P-INDEP
+; V472 tmp463 [V472,T132] ( 2, 1 ) byref -> r10 single-def "field V134._reference (fldOffset=0x0)" P-INDEP
+; V473 tmp464 [V473,T189] ( 2, 1 ) int -> rsi "field V134._length (fldOffset=0x8)" P-INDEP
;* V474 tmp465 [V474 ] ( 0, 0 ) byref -> zero-ref single-def "field V138._reference (fldOffset=0x0)" P-INDEP
;* V475 tmp466 [V475 ] ( 0, 0 ) int -> zero-ref "field V138._length (fldOffset=0x8)" P-INDEP
;* V476 tmp467 [V476 ] ( 0, 0 ) byref -> zero-ref single-def "field V139._reference (fldOffset=0x0)" P-INDEP
;* V477 tmp468 [V477 ] ( 0, 0 ) int -> zero-ref "field V139._length (fldOffset=0x8)" P-INDEP
;* V478 tmp469 [V478 ] ( 0, 0 ) byref -> zero-ref single-def "field V141._reference (fldOffset=0x0)" P-INDEP
;* V479 tmp470 [V479 ] ( 0, 0 ) int -> zero-ref "field V141._length (fldOffset=0x8)" P-INDEP
;* V480 tmp471 [V480 ] ( 0, 0 ) byref -> zero-ref single-def "field V143._reference (fldOffset=0x0)" P-INDEP
;* V481 tmp472 [V481 ] ( 0, 0 ) int -> zero-ref "field V143._length (fldOffset=0x8)" P-INDEP
;* V482 tmp473 [V482 ] ( 0, 0 ) byref -> zero-ref single-def "field V147._reference (fldOffset=0x0)" P-INDEP
;* V483 tmp474 [V483 ] ( 0, 0 ) int -> zero-ref "field V147._length (fldOffset=0x8)" P-INDEP
;* V484 tmp475 [V484 ] ( 0, 0 ) byref -> zero-ref single-def "field V148._reference (fldOffset=0x0)" P-INDEP
;* V485 tmp476 [V485 ] ( 0, 0 ) int -> zero-ref "field V148._length (fldOffset=0x8)" P-INDEP
;* V486 tmp477 [V486 ] ( 0, 0 ) byref -> zero-ref "field V149._reference (fldOffset=0x0)" P-INDEP
;* V487 tmp478 [V487 ] ( 0, 0 ) int -> zero-ref "field V149._length (fldOffset=0x8)" P-INDEP
;* V488 tmp479 [V488 ] ( 0, 0 ) byref -> zero-ref "field V150._reference (fldOffset=0x0)" P-INDEP
;* V489 tmp480 [V489 ] ( 0, 0 ) int -> zero-ref "field V150._length (fldOffset=0x8)" P-INDEP
-; V490 tmp481 [V490,T93] ( 3, 1.50) byref -> r10 "field V151._reference (fldOffset=0x0)" P-INDEP
-; V491 tmp482 [V491,T33] ( 5, 2.50) int -> rsi "field V151._length (fldOffset=0x8)" P-INDEP
-; V492 tmp483 [V492,T133] ( 2, 1 ) byref -> r10 single-def "field V153._reference (fldOffset=0x0)" P-INDEP
-; V493 tmp484 [V493,T190] ( 2, 1 ) int -> rsi "field V153._length (fldOffset=0x8)" P-INDEP
-;* V494 tmp485 [V494 ] ( 0, 0 ) byref -> zero-ref single-def "field V154._reference (fldOffset=0x0)" P-INDEP
-;* V495 tmp486 [V495 ] ( 0, 0 ) int -> zero-ref "field V154._length (fldOffset=0x8)" P-INDEP
+; V490 tmp481 [V490,T93] ( 3, 1.50) byref -> registers "field V151._reference (fldOffset=0x0)" P-INDEP
+; V491 tmp482 [V491,T33] ( 5, 2.50) int -> registers "field V151._length (fldOffset=0x8)" P-INDEP
+;* V492 tmp483 [V492 ] ( 0, 0 ) byref -> zero-ref single-def "field V153._reference (fldOffset=0x0)" P-INDEP
+;* V493 tmp484 [V493 ] ( 0, 0 ) int -> zero-ref "field V153._length (fldOffset=0x8)" P-INDEP
+; V494 tmp485 [V494,T133] ( 2, 1 ) byref -> r10 single-def "field V154._reference (fldOffset=0x0)" P-INDEP
+; V495 tmp486 [V495,T190] ( 2, 1 ) int -> rsi "field V154._length (fldOffset=0x8)" P-INDEP
;* V496 tmp487 [V496 ] ( 0, 0 ) byref -> zero-ref single-def "field V158._reference (fldOffset=0x0)" P-INDEP
;* V497 tmp488 [V497 ] ( 0, 0 ) int -> zero-ref "field V158._length (fldOffset=0x8)" P-INDEP
;* V498 tmp489 [V498 ] ( 0, 0 ) byref -> zero-ref single-def "field V159._reference (fldOffset=0x0)" P-INDEP
;* V499 tmp490 [V499 ] ( 0, 0 ) int -> zero-ref "field V159._length (fldOffset=0x8)" P-INDEP
;* V500 tmp491 [V500 ] ( 0, 0 ) byref -> zero-ref single-def "field V161._reference (fldOffset=0x0)" P-INDEP
;* V501 tmp492 [V501 ] ( 0, 0 ) int -> zero-ref "field V161._length (fldOffset=0x8)" P-INDEP
;* V502 tmp493 [V502 ] ( 0, 0 ) byref -> zero-ref single-def "field V163._reference (fldOffset=0x0)" P-INDEP
;* V503 tmp494 [V503 ] ( 0, 0 ) int -> zero-ref "field V163._length (fldOffset=0x8)" P-INDEP
;* V504 tmp495 [V504 ] ( 0, 0 ) byref -> zero-ref single-def "field V167._reference (fldOffset=0x0)" P-INDEP
;* V505 tmp496 [V505 ] ( 0, 0 ) int -> zero-ref "field V167._length (fldOffset=0x8)" P-INDEP
;* V506 tmp497 [V506 ] ( 0, 0 ) byref -> zero-ref single-def "field V168._reference (fldOffset=0x0)" P-INDEP
;* V507 tmp498 [V507 ] ( 0, 0 ) int -> zero-ref "field V168._length (fldOffset=0x8)" P-INDEP
;* V508 tmp499 [V508 ] ( 0, 0 ) byref -> zero-ref "field V169._reference (fldOffset=0x0)" P-INDEP
;* V509 tmp500 [V509 ] ( 0, 0 ) int -> zero-ref "field V169._length (fldOffset=0x8)" P-INDEP
;* V510 tmp501 [V510 ] ( 0, 0 ) byref -> zero-ref "field V170._reference (fldOffset=0x0)" P-INDEP
;* V511 tmp502 [V511 ] ( 0, 0 ) int -> zero-ref "field V170._length (fldOffset=0x8)" P-INDEP
-; V512 tmp503 [V512,T94] ( 3, 1.50) byref -> r10 "field V171._reference (fldOffset=0x0)" P-INDEP
-; V513 tmp504 [V513,T34] ( 5, 2.50) int -> rsi "field V171._length (fldOffset=0x8)" P-INDEP
-; V514 tmp505 [V514,T134] ( 2, 1 ) byref -> r10 single-def "field V173._reference (fldOffset=0x0)" P-INDEP
-; V515 tmp506 [V515,T191] ( 2, 1 ) int -> rsi "field V173._length (fldOffset=0x8)" P-INDEP
-;* V516 tmp507 [V516 ] ( 0, 0 ) byref -> zero-ref single-def "field V174._reference (fldOffset=0x0)" P-INDEP
-;* V517 tmp508 [V517 ] ( 0, 0 ) int -> zero-ref "field V174._length (fldOffset=0x8)" P-INDEP
+; V512 tmp503 [V512,T94] ( 3, 1.50) byref -> registers "field V171._reference (fldOffset=0x0)" P-INDEP
+; V513 tmp504 [V513,T34] ( 5, 2.50) int -> registers "field V171._length (fldOffset=0x8)" P-INDEP
+;* V514 tmp505 [V514 ] ( 0, 0 ) byref -> zero-ref single-def "field V173._reference (fldOffset=0x0)" P-INDEP
+;* V515 tmp506 [V515 ] ( 0, 0 ) int -> zero-ref "field V173._length (fldOffset=0x8)" P-INDEP
+; V516 tmp507 [V516,T134] ( 2, 1 ) byref -> r10 single-def "field V174._reference (fldOffset=0x0)" P-INDEP
+; V517 tmp508 [V517,T191] ( 2, 1 ) int -> rsi "field V174._length (fldOffset=0x8)" P-INDEP
;* V518 tmp509 [V518 ] ( 0, 0 ) byref -> zero-ref single-def "field V178._reference (fldOffset=0x0)" P-INDEP
;* V519 tmp510 [V519 ] ( 0, 0 ) int -> zero-ref "field V178._length (fldOffset=0x8)" P-INDEP
;* V520 tmp511 [V520 ] ( 0, 0 ) byref -> zero-ref single-def "field V179._reference (fldOffset=0x0)" P-INDEP
;* V521 tmp512 [V521 ] ( 0, 0 ) int -> zero-ref "field V179._length (fldOffset=0x8)" P-INDEP
;* V522 tmp513 [V522 ] ( 0, 0 ) byref -> zero-ref single-def "field V181._reference (fldOffset=0x0)" P-INDEP
;* V523 tmp514 [V523 ] ( 0, 0 ) int -> zero-ref "field V181._length (fldOffset=0x8)" P-INDEP
;* V524 tmp515 [V524 ] ( 0, 0 ) byref -> zero-ref single-def "field V183._reference (fldOffset=0x0)" P-INDEP
;* V525 tmp516 [V525 ] ( 0, 0 ) int -> zero-ref "field V183._length (fldOffset=0x8)" P-INDEP
;* V526 tmp517 [V526 ] ( 0, 0 ) byref -> zero-ref single-def "field V187._reference (fldOffset=0x0)" P-INDEP
;* V527 tmp518 [V527 ] ( 0, 0 ) int -> zero-ref "field V187._length (fldOffset=0x8)" P-INDEP
;* V528 tmp519 [V528 ] ( 0, 0 ) byref -> zero-ref single-def "field V188._reference (fldOffset=0x0)" P-INDEP
;* V529 tmp520 [V529 ] ( 0, 0 ) int -> zero-ref "field V188._length (fldOffset=0x8)" P-INDEP
;* V530 tmp521 [V530 ] ( 0, 0 ) byref -> zero-ref "field V189._reference (fldOffset=0x0)" P-INDEP
;* V531 tmp522 [V531 ] ( 0, 0 ) int -> zero-ref "field V189._length (fldOffset=0x8)" P-INDEP
;* V532 tmp523 [V532 ] ( 0, 0 ) byref -> zero-ref "field V190._reference (fldOffset=0x0)" P-INDEP
;* V533 tmp524 [V533 ] ( 0, 0 ) int -> zero-ref "field V190._length (fldOffset=0x8)" P-INDEP
-; V534 tmp525 [V534,T95] ( 3, 1.50) byref -> r8 "field V191._reference (fldOffset=0x0)" P-INDEP
-; V535 tmp526 [V535,T35] ( 5, 2.50) int -> rsi "field V191._length (fldOffset=0x8)" P-INDEP
-; V536 tmp527 [V536,T135] ( 2, 1 ) byref -> r8 single-def "field V193._reference (fldOffset=0x0)" P-INDEP
-; V537 tmp528 [V537,T192] ( 2, 1 ) int -> rsi "field V193._length (fldOffset=0x8)" P-INDEP
-;* V538 tmp529 [V538 ] ( 0, 0 ) byref -> zero-ref single-def "field V194._reference (fldOffset=0x0)" P-INDEP
-;* V539 tmp530 [V539 ] ( 0, 0 ) int -> zero-ref "field V194._length (fldOffset=0x8)" P-INDEP
+; V534 tmp525 [V534,T95] ( 3, 1.50) byref -> registers "field V191._reference (fldOffset=0x0)" P-INDEP
+; V535 tmp526 [V535,T35] ( 5, 2.50) int -> registers "field V191._length (fldOffset=0x8)" P-INDEP
+;* V536 tmp527 [V536 ] ( 0, 0 ) byref -> zero-ref single-def "field V193._reference (fldOffset=0x0)" P-INDEP
+;* V537 tmp528 [V537 ] ( 0, 0 ) int -> zero-ref "field V193._length (fldOffset=0x8)" P-INDEP
+; V538 tmp529 [V538,T135] ( 2, 1 ) byref -> r8 single-def "field V194._reference (fldOffset=0x0)" P-INDEP
+; V539 tmp530 [V539,T192] ( 2, 1 ) int -> rsi "field V194._length (fldOffset=0x8)" P-INDEP
;* V540 tmp531 [V540 ] ( 0, 0 ) byref -> zero-ref single-def "field V198._reference (fldOffset=0x0)" P-INDEP
;* V541 tmp532 [V541 ] ( 0, 0 ) int -> zero-ref "field V198._length (fldOffset=0x8)" P-INDEP
;* V542 tmp533 [V542 ] ( 0, 0 ) byref -> zero-ref single-def "field V199._reference (fldOffset=0x0)" P-INDEP
;* V543 tmp534 [V543 ] ( 0, 0 ) int -> zero-ref "field V199._length (fldOffset=0x8)" P-INDEP
;* V544 tmp535 [V544 ] ( 0, 0 ) byref -> zero-ref single-def "field V201._reference (fldOffset=0x0)" P-INDEP
;* V545 tmp536 [V545 ] ( 0, 0 ) int -> zero-ref "field V201._length (fldOffset=0x8)" P-INDEP
;* V546 tmp537 [V546 ] ( 0, 0 ) byref -> zero-ref single-def "field V203._reference (fldOffset=0x0)" P-INDEP
;* V547 tmp538 [V547 ] ( 0, 0 ) int -> zero-ref "field V203._length (fldOffset=0x8)" P-INDEP
;* V548 tmp539 [V548 ] ( 0, 0 ) byref -> zero-ref single-def "field V207._reference (fldOffset=0x0)" P-INDEP
;* V549 tmp540 [V549 ] ( 0, 0 ) int -> zero-ref "field V207._length (fldOffset=0x8)" P-INDEP
;* V550 tmp541 [V550 ] ( 0, 0 ) byref -> zero-ref single-def "field V208._reference (fldOffset=0x0)" P-INDEP
;* V551 tmp542 [V551 ] ( 0, 0 ) int -> zero-ref "field V208._length (fldOffset=0x8)" P-INDEP
;* V552 tmp543 [V552 ] ( 0, 0 ) byref -> zero-ref "field V209._reference (fldOffset=0x0)" P-INDEP
;* V553 tmp544 [V553 ] ( 0, 0 ) int -> zero-ref "field V209._length (fldOffset=0x8)" P-INDEP
;* V554 tmp545 [V554 ] ( 0, 0 ) byref -> zero-ref "field V210._reference (fldOffset=0x0)" P-INDEP
;* V555 tmp546 [V555 ] ( 0, 0 ) int -> zero-ref "field V210._length (fldOffset=0x8)" P-INDEP
; V556 tmp547 [V556,T136] ( 2, 1 ) byref -> rdi single-def "field V213._reference (fldOffset=0x0)" P-INDEP
; V557 tmp548 [V557,T193] ( 2, 1 ) int -> rdx "field V213._length (fldOffset=0x8)" P-INDEP
;* V558 tmp549 [V558 ] ( 0, 0 ) byref -> zero-ref single-def "field V214._reference (fldOffset=0x0)" P-INDEP
;* V559 tmp550 [V559 ] ( 0, 0 ) int -> zero-ref "field V214._length (fldOffset=0x8)" P-INDEP
; V560 tmp551 [V560,T137] ( 2, 1 ) byref -> rdi single-def "field V215._reference (fldOffset=0x0)" P-INDEP
; V561 tmp552 [V561,T194] ( 2, 1 ) int -> rdx "field V215._length (fldOffset=0x8)" P-INDEP
;* V562 tmp553 [V562 ] ( 0, 0 ) byref -> zero-ref single-def "field V216._reference (fldOffset=0x0)" P-INDEP
;* V563 tmp554 [V563 ] ( 0, 0 ) int -> zero-ref "field V216._length (fldOffset=0x8)" P-INDEP
; V564 tmp555 [V564,T138] ( 2, 1 ) byref -> rdx single-def "field V217._reference (fldOffset=0x0)" P-INDEP
; V565 tmp556 [V565,T195] ( 2, 1 ) int -> rdi "field V217._length (fldOffset=0x8)" P-INDEP
;* V566 tmp557 [V566 ] ( 0, 0 ) byref -> zero-ref single-def "field V218._reference (fldOffset=0x0)" P-INDEP
;* V567 tmp558 [V567 ] ( 0, 0 ) int -> zero-ref "field V218._length (fldOffset=0x8)" P-INDEP
; V568 tmp559 [V568,T139] ( 2, 1 ) byref -> rdi single-def "field V219._reference (fldOffset=0x0)" P-INDEP
; V569 tmp560 [V569,T196] ( 2, 1 ) int -> rdx "field V219._length (fldOffset=0x8)" P-INDEP
;* V570 tmp561 [V570 ] ( 0, 0 ) byref -> zero-ref single-def "field V220._reference (fldOffset=0x0)" P-INDEP
;* V571 tmp562 [V571 ] ( 0, 0 ) int -> zero-ref "field V220._length (fldOffset=0x8)" P-INDEP
-; V572 tmp563 [V572,T96] ( 3, 1.50) byref -> r9 "field V221._reference (fldOffset=0x0)" P-INDEP
-; V573 tmp564 [V573,T36] ( 5, 2.50) int -> rsi "field V221._length (fldOffset=0x8)" P-INDEP
-; V574 tmp565 [V574,T140] ( 2, 1 ) byref -> r9 single-def "field V223._reference (fldOffset=0x0)" P-INDEP
-; V575 tmp566 [V575,T197] ( 2, 1 ) int -> rsi "field V223._length (fldOffset=0x8)" P-INDEP
-;* V576 tmp567 [V576 ] ( 0, 0 ) byref -> zero-ref single-def "field V224._reference (fldOffset=0x0)" P-INDEP
-;* V577 tmp568 [V577 ] ( 0, 0 ) int -> zero-ref "field V224._length (fldOffset=0x8)" P-INDEP
+; V572 tmp563 [V572,T96] ( 3, 1.50) byref -> registers "field V221._reference (fldOffset=0x0)" P-INDEP
+; V573 tmp564 [V573,T36] ( 5, 2.50) int -> registers "field V221._length (fldOffset=0x8)" P-INDEP
+;* V574 tmp565 [V574 ] ( 0, 0 ) byref -> zero-ref single-def "field V223._reference (fldOffset=0x0)" P-INDEP
+;* V575 tmp566 [V575 ] ( 0, 0 ) int -> zero-ref "field V223._length (fldOffset=0x8)" P-INDEP
+; V576 tmp567 [V576,T140] ( 2, 1 ) byref -> r9 single-def "field V224._reference (fldOffset=0x0)" P-INDEP
+; V577 tmp568 [V577,T197] ( 2, 1 ) int -> rsi "field V224._length (fldOffset=0x8)" P-INDEP
;* V578 tmp569 [V578 ] ( 0, 0 ) byref -> zero-ref single-def "field V228._reference (fldOffset=0x0)" P-INDEP
;* V579 tmp570 [V579 ] ( 0, 0 ) int -> zero-ref "field V228._length (fldOffset=0x8)" P-INDEP
;* V580 tmp571 [V580 ] ( 0, 0 ) byref -> zero-ref single-def "field V229._reference (fldOffset=0x0)" P-INDEP
;* V581 tmp572 [V581 ] ( 0, 0 ) int -> zero-ref "field V229._length (fldOffset=0x8)" P-INDEP
;* V582 tmp573 [V582 ] ( 0, 0 ) byref -> zero-ref single-def "field V231._reference (fldOffset=0x0)" P-INDEP
;* V583 tmp574 [V583 ] ( 0, 0 ) int -> zero-ref "field V231._length (fldOffset=0x8)" P-INDEP
;* V584 tmp575 [V584 ] ( 0, 0 ) byref -> zero-ref single-def "field V233._reference (fldOffset=0x0)" P-INDEP
;* V585 tmp576 [V585 ] ( 0, 0 ) int -> zero-ref "field V233._length (fldOffset=0x8)" P-INDEP
;* V586 tmp577 [V586 ] ( 0, 0 ) byref -> zero-ref single-def "field V237._reference (fldOffset=0x0)" P-INDEP
;* V587 tmp578 [V587 ] ( 0, 0 ) int -> zero-ref "field V237._length (fldOffset=0x8)" P-INDEP
;* V588 tmp579 [V588 ] ( 0, 0 ) byref -> zero-ref single-def "field V238._reference (fldOffset=0x0)" P-INDEP
;* V589 tmp580 [V589 ] ( 0, 0 ) int -> zero-ref "field V238._length (fldOffset=0x8)" P-INDEP
;* V590 tmp581 [V590 ] ( 0, 0 ) byref -> zero-ref "field V239._reference (fldOffset=0x0)" P-INDEP
;* V591 tmp582 [V591 ] ( 0, 0 ) int -> zero-ref "field V239._length (fldOffset=0x8)" P-INDEP
;* V592 tmp583 [V592 ] ( 0, 0 ) byref -> zero-ref "field V240._reference (fldOffset=0x0)" P-INDEP
;* V593 tmp584 [V593 ] ( 0, 0 ) int -> zero-ref "field V240._length (fldOffset=0x8)" P-INDEP
-; V594 tmp585 [V594,T97] ( 3, 1.50) byref -> r9 "field V241._reference (fldOffset=0x0)" P-INDEP
-; V595 tmp586 [V595,T37] ( 5, 2.50) int -> rsi "field V241._length (fldOffset=0x8)" P-INDEP
-; V596 tmp587 [V596,T141] ( 2, 1 ) byref -> r9 single-def "field V243._reference (fldOffset=0x0)" P-INDEP
-; V597 tmp588 [V597,T198] ( 2, 1 ) int -> rsi "field V243._length (fldOffset=0x8)" P-INDEP
-;* V598 tmp589 [V598 ] ( 0, 0 ) byref -> zero-ref single-def "field V244._reference (fldOffset=0x0)" P-INDEP
-;* V599 tmp590 [V599 ] ( 0, 0 ) int -> zero-ref "field V244._length (fldOffset=0x8)" P-INDEP
+; V594 tmp585 [V594,T97] ( 3, 1.50) byref -> registers "field V241._reference (fldOffset=0x0)" P-INDEP
+; V595 tmp586 [V595,T37] ( 5, 2.50) int -> registers "field V241._length (fldOffset=0x8)" P-INDEP
+;* V596 tmp587 [V596 ] ( 0, 0 ) byref -> zero-ref single-def "field V243._reference (fldOffset=0x0)" P-INDEP
+;* V597 tmp588 [V597 ] ( 0, 0 ) int -> zero-ref "field V243._length (fldOffset=0x8)" P-INDEP
+; V598 tmp589 [V598,T141] ( 2, 1 ) byref -> r9 single-def "field V244._reference (fldOffset=0x0)" P-INDEP
+; V599 tmp590 [V599,T198] ( 2, 1 ) int -> rsi "field V244._length (fldOffset=0x8)" P-INDEP
;* V600 tmp591 [V600 ] ( 0, 0 ) byref -> zero-ref single-def "field V248._reference (fldOffset=0x0)" P-INDEP
;* V601 tmp592 [V601 ] ( 0, 0 ) int -> zero-ref "field V248._length (fldOffset=0x8)" P-INDEP
;* V602 tmp593 [V602 ] ( 0, 0 ) byref -> zero-ref single-def "field V249._reference (fldOffset=0x0)" P-INDEP
;* V603 tmp594 [V603 ] ( 0, 0 ) int -> zero-ref "field V249._length (fldOffset=0x8)" P-INDEP
;* V604 tmp595 [V604 ] ( 0, 0 ) byref -> zero-ref single-def "field V251._reference (fldOffset=0x0)" P-INDEP
;* V605 tmp596 [V605 ] ( 0, 0 ) int -> zero-ref "field V251._length (fldOffset=0x8)" P-INDEP
;* V606 tmp597 [V606 ] ( 0, 0 ) byref -> zero-ref single-def "field V253._reference (fldOffset=0x0)" P-INDEP
;* V607 tmp598 [V607 ] ( 0, 0 ) int -> zero-ref "field V253._length (fldOffset=0x8)" P-INDEP
;* V608 tmp599 [V608 ] ( 0, 0 ) byref -> zero-ref single-def "field V257._reference (fldOffset=0x0)" P-INDEP
;* V609 tmp600 [V609 ] ( 0, 0 ) int -> zero-ref "field V257._length (fldOffset=0x8)" P-INDEP
;* V610 tmp601 [V610 ] ( 0, 0 ) byref -> zero-ref single-def "field V258._reference (fldOffset=0x0)" P-INDEP
;* V611 tmp602 [V611 ] ( 0, 0 ) int -> zero-ref "field V258._length (fldOffset=0x8)" P-INDEP
;* V612 tmp603 [V612 ] ( 0, 0 ) byref -> zero-ref "field V259._reference (fldOffset=0x0)" P-INDEP
;* V613 tmp604 [V613 ] ( 0, 0 ) int -> zero-ref "field V259._length (fldOffset=0x8)" P-INDEP
;* V614 tmp605 [V614 ] ( 0, 0 ) byref -> zero-ref "field V260._reference (fldOffset=0x0)" P-INDEP
;* V615 tmp606 [V615 ] ( 0, 0 ) int -> zero-ref "field V260._length (fldOffset=0x8)" P-INDEP
; V616 tmp607 [V616,T142] ( 2, 1 ) byref -> rsi "field V261._reference (fldOffset=0x0)" P-INDEP
;* V617 tmp608 [V617,T207] ( 0, 0 ) int -> zero-ref "field V261._length (fldOffset=0x8)" P-INDEP
-; V618 tmp609 [V618,T143] ( 2, 1 ) byref -> rsi single-def "field V263._reference (fldOffset=0x0)" P-INDEP
-;* V619 tmp610 [V619,T208] ( 0, 0 ) int -> zero-ref "field V263._length (fldOffset=0x8)" P-INDEP
-;* V620 tmp611 [V620 ] ( 0, 0 ) byref -> zero-ref single-def "field V264._reference (fldOffset=0x0)" P-INDEP
-;* V621 tmp612 [V621 ] ( 0, 0 ) int -> zero-ref "field V264._length (fldOffset=0x8)" P-INDEP
+;* V618 tmp609 [V618 ] ( 0, 0 ) byref -> zero-ref single-def "field V263._reference (fldOffset=0x0)" P-INDEP
+;* V619 tmp610 [V619 ] ( 0, 0 ) int -> zero-ref "field V263._length (fldOffset=0x8)" P-INDEP
+; V620 tmp611 [V620,T143] ( 2, 1 ) byref -> rsi single-def "field V264._reference (fldOffset=0x0)" P-INDEP
+;* V621 tmp612 [V621,T208] ( 0, 0 ) int -> zero-ref "field V264._length (fldOffset=0x8)" P-INDEP
;* V622 tmp613 [V622 ] ( 0, 0 ) byref -> zero-ref single-def "field V268._reference (fldOffset=0x0)" P-INDEP
;* V623 tmp614 [V623 ] ( 0, 0 ) int -> zero-ref "field V268._length (fldOffset=0x8)" P-INDEP
;* V624 tmp615 [V624 ] ( 0, 0 ) byref -> zero-ref single-def "field V269._reference (fldOffset=0x0)" P-INDEP
;* V625 tmp616 [V625 ] ( 0, 0 ) int -> zero-ref "field V269._length (fldOffset=0x8)" P-INDEP
;* V626 tmp617 [V626 ] ( 0, 0 ) byref -> zero-ref single-def "field V271._reference (fldOffset=0x0)" P-INDEP
;* V627 tmp618 [V627 ] ( 0, 0 ) int -> zero-ref "field V271._length (fldOffset=0x8)" P-INDEP
;* V628 tmp619 [V628 ] ( 0, 0 ) byref -> zero-ref single-def "field V273._reference (fldOffset=0x0)" P-INDEP
;* V629 tmp620 [V629 ] ( 0, 0 ) int -> zero-ref "field V273._length (fldOffset=0x8)" P-INDEP
;* V630 tmp621 [V630 ] ( 0, 0 ) byref -> zero-ref single-def "field V277._reference (fldOffset=0x0)" P-INDEP
;* V631 tmp622 [V631 ] ( 0, 0 ) int -> zero-ref "field V277._length (fldOffset=0x8)" P-INDEP
;* V632 tmp623 [V632 ] ( 0, 0 ) byref -> zero-ref single-def "field V278._reference (fldOffset=0x0)" P-INDEP
;* V633 tmp624 [V633 ] ( 0, 0 ) int -> zero-ref "field V278._length (fldOffset=0x8)" P-INDEP
;* V634 tmp625 [V634 ] ( 0, 0 ) byref -> zero-ref "field V279._reference (fldOffset=0x0)" P-INDEP
;* V635 tmp626 [V635 ] ( 0, 0 ) int -> zero-ref "field V279._length (fldOffset=0x8)" P-INDEP
;* V636 tmp627 [V636 ] ( 0, 0 ) byref -> zero-ref "field V280._reference (fldOffset=0x0)" P-INDEP
;* V637 tmp628 [V637 ] ( 0, 0 ) int -> zero-ref "field V280._length (fldOffset=0x8)" P-INDEP
-; V638 tmp629 [V638,T98] ( 3, 1.50) byref -> rcx "field V281._reference (fldOffset=0x0)" P-INDEP
-; V639 tmp630 [V639,T38] ( 5, 2.50) int -> rsi "field V281._length (fldOffset=0x8)" P-INDEP
-; V640 tmp631 [V640,T144] ( 2, 1 ) byref -> rcx single-def "field V283._reference (fldOffset=0x0)" P-INDEP
-; V641 tmp632 [V641,T199] ( 2, 1 ) int -> rsi "field V283._length (fldOffset=0x8)" P-INDEP
-;* V642 tmp633 [V642 ] ( 0, 0 ) byref -> zero-ref single-def "field V284._reference (fldOffset=0x0)" P-INDEP
-;* V643 tmp634 [V643 ] ( 0, 0 ) int -> zero-ref "field V284._length (fldOffset=0x8)" P-INDEP
+; V638 tmp629 [V638,T98] ( 3, 1.50) byref -> registers "field V281._reference (fldOffset=0x0)" P-INDEP
+; V639 tmp630 [V639,T38] ( 5, 2.50) int -> registers "field V281._length (fldOffset=0x8)" P-INDEP
+;* V640 tmp631 [V640 ] ( 0, 0 ) byref -> zero-ref single-def "field V283._reference (fldOffset=0x0)" P-INDEP
+;* V641 tmp632 [V641 ] ( 0, 0 ) int -> zero-ref "field V283._length (fldOffset=0x8)" P-INDEP
+; V642 tmp633 [V642,T144] ( 2, 1 ) byref -> rcx single-def "field V284._reference (fldOffset=0x0)" P-INDEP
+; V643 tmp634 [V643,T199] ( 2, 1 ) int -> rsi "field V284._length (fldOffset=0x8)" P-INDEP
;* V644 tmp635 [V644 ] ( 0, 0 ) byref -> zero-ref single-def "field V288._reference (fldOffset=0x0)" P-INDEP
;* V645 tmp636 [V645 ] ( 0, 0 ) int -> zero-ref "field V288._length (fldOffset=0x8)" P-INDEP
;* V646 tmp637 [V646 ] ( 0, 0 ) byref -> zero-ref single-def "field V289._reference (fldOffset=0x0)" P-INDEP
;* V647 tmp638 [V647 ] ( 0, 0 ) int -> zero-ref "field V289._length (fldOffset=0x8)" P-INDEP
;* V648 tmp639 [V648 ] ( 0, 0 ) byref -> zero-ref single-def "field V291._reference (fldOffset=0x0)" P-INDEP
;* V649 tmp640 [V649 ] ( 0, 0 ) int -> zero-ref "field V291._length (fldOffset=0x8)" P-INDEP
;* V650 tmp641 [V650 ] ( 0, 0 ) byref -> zero-ref single-def "field V293._reference (fldOffset=0x0)" P-INDEP
;* V651 tmp642 [V651 ] ( 0, 0 ) int -> zero-ref "field V293._length (fldOffset=0x8)" P-INDEP
;* V652 tmp643 [V652 ] ( 0, 0 ) byref -> zero-ref single-def "field V297._reference (fldOffset=0x0)" P-INDEP
;* V653 tmp644 [V653 ] ( 0, 0 ) int -> zero-ref "field V297._length (fldOffset=0x8)" P-INDEP
;* V654 tmp645 [V654 ] ( 0, 0 ) byref -> zero-ref single-def "field V298._reference (fldOffset=0x0)" P-INDEP
;* V655 tmp646 [V655 ] ( 0, 0 ) int -> zero-ref "field V298._length (fldOffset=0x8)" P-INDEP
;* V656 tmp647 [V656 ] ( 0, 0 ) byref -> zero-ref "field V299._reference (fldOffset=0x0)" P-INDEP
;* V657 tmp648 [V657 ] ( 0, 0 ) int -> zero-ref "field V299._length (fldOffset=0x8)" P-INDEP
;* V658 tmp649 [V658 ] ( 0, 0 ) byref -> zero-ref "field V300._reference (fldOffset=0x0)" P-INDEP
;* V659 tmp650 [V659 ] ( 0, 0 ) int -> zero-ref "field V300._length (fldOffset=0x8)" P-INDEP
;* V660 tmp651 [V660 ] ( 0, 0 ) byref -> zero-ref "field V302._reference (fldOffset=0x0)" P-INDEP
;* V661 tmp652 [V661 ] ( 0, 0 ) int -> zero-ref "field V302._length (fldOffset=0x8)" P-INDEP
-; V662 tmp653 [V662,T99] ( 3, 1.50) byref -> rdx "field V303._reference (fldOffset=0x0)" P-INDEP
-; V663 tmp654 [V663,T115] ( 3, 1.50) int -> rcx "field V303._length (fldOffset=0x8)" P-INDEP
-; V664 tmp655 [V664,T145] ( 2, 1 ) byref -> rdx single-def "field V305._reference (fldOffset=0x0)" P-INDEP
-; V665 tmp656 [V665,T200] ( 2, 1 ) int -> rsi "field V305._length (fldOffset=0x8)" P-INDEP
-;* V666 tmp657 [V666 ] ( 0, 0 ) byref -> zero-ref single-def "field V306._reference (fldOffset=0x0)" P-INDEP
-;* V667 tmp658 [V667 ] ( 0, 0 ) int -> zero-ref "field V306._length (fldOffset=0x8)" P-INDEP
+; V662 tmp653 [V662,T99] ( 3, 1.50) byref -> registers "field V303._reference (fldOffset=0x0)" P-INDEP
+; V663 tmp654 [V663,T115] ( 3, 1.50) int -> registers "field V303._length (fldOffset=0x8)" P-INDEP
+;* V664 tmp655 [V664 ] ( 0, 0 ) byref -> zero-ref single-def "field V305._reference (fldOffset=0x0)" P-INDEP
+;* V665 tmp656 [V665 ] ( 0, 0 ) int -> zero-ref "field V305._length (fldOffset=0x8)" P-INDEP
+; V666 tmp657 [V666,T145] ( 2, 1 ) byref -> rdx single-def "field V306._reference (fldOffset=0x0)" P-INDEP
+; V667 tmp658 [V667,T200] ( 2, 1 ) int -> rsi "field V306._length (fldOffset=0x8)" P-INDEP
;* V668 tmp659 [V668 ] ( 0, 0 ) byref -> zero-ref "field V310._reference (fldOffset=0x0)" P-INDEP
;* V669 tmp660 [V669 ] ( 0, 0 ) int -> zero-ref "field V310._length (fldOffset=0x8)" P-INDEP
-; V670 tmp661 [V670,T100] ( 3, 1.50) byref -> rdx "field V311._reference (fldOffset=0x0)" P-INDEP
-; V671 tmp662 [V671,T116] ( 3, 1.50) int -> rcx "field V311._length (fldOffset=0x8)" P-INDEP
-; V672 tmp663 [V672,T146] ( 2, 1 ) byref -> rdx single-def "field V313._reference (fldOffset=0x0)" P-INDEP
-; V673 tmp664 [V673,T201] ( 2, 1 ) int -> rsi "field V313._length (fldOffset=0x8)" P-INDEP
-;* V674 tmp665 [V674 ] ( 0, 0 ) byref -> zero-ref single-def "field V314._reference (fldOffset=0x0)" P-INDEP
-;* V675 tmp666 [V675 ] ( 0, 0 ) int -> zero-ref "field V314._length (fldOffset=0x8)" P-INDEP
+; V670 tmp661 [V670,T100] ( 3, 1.50) byref -> registers "field V311._reference (fldOffset=0x0)" P-INDEP
+; V671 tmp662 [V671,T116] ( 3, 1.50) int -> registers "field V311._length (fldOffset=0x8)" P-INDEP
+;* V672 tmp663 [V672 ] ( 0, 0 ) byref -> zero-ref single-def "field V313._reference (fldOffset=0x0)" P-INDEP
+;* V673 tmp664 [V673 ] ( 0, 0 ) int -> zero-ref "field V313._length (fldOffset=0x8)" P-INDEP
+; V674 tmp665 [V674,T146] ( 2, 1 ) byref -> rdx single-def "field V314._reference (fldOffset=0x0)" P-INDEP
+; V675 tmp666 [V675,T201] ( 2, 1 ) int -> rsi "field V314._length (fldOffset=0x8)" P-INDEP
;* V676 tmp667 [V676 ] ( 0, 0 ) byref -> zero-ref "field V318._reference (fldOffset=0x0)" P-INDEP
;* V677 tmp668 [V677 ] ( 0, 0 ) int -> zero-ref "field V318._length (fldOffset=0x8)" P-INDEP
-; V678 tmp669 [V678,T101] ( 3, 1.50) byref -> rdx "field V319._reference (fldOffset=0x0)" P-INDEP
-; V679 tmp670 [V679,T117] ( 3, 1.50) int -> rcx "field V319._length (fldOffset=0x8)" P-INDEP
-; V680 tmp671 [V680,T147] ( 2, 1 ) byref -> rdx single-def "field V321._reference (fldOffset=0x0)" P-INDEP
-; V681 tmp672 [V681,T202] ( 2, 1 ) int -> rsi "field V321._length (fldOffset=0x8)" P-INDEP
-;* V682 tmp673 [V682 ] ( 0, 0 ) byref -> zero-ref single-def "field V322._reference (fldOffset=0x0)" P-INDEP
-;* V683 tmp674 [V683 ] ( 0, 0 ) int -> zero-ref "field V322._length (fldOffset=0x8)" P-INDEP
+; V678 tmp669 [V678,T101] ( 3, 1.50) byref -> registers "field V319._reference (fldOffset=0x0)" P-INDEP
+; V679 tmp670 [V679,T117] ( 3, 1.50) int -> registers "field V319._length (fldOffset=0x8)" P-INDEP
+;* V680 tmp671 [V680 ] ( 0, 0 ) byref -> zero-ref single-def "field V321._reference (fldOffset=0x0)" P-INDEP
+;* V681 tmp672 [V681 ] ( 0, 0 ) int -> zero-ref "field V321._length (fldOffset=0x8)" P-INDEP
+; V682 tmp673 [V682,T147] ( 2, 1 ) byref -> rdx single-def "field V322._reference (fldOffset=0x0)" P-INDEP
+; V683 tmp674 [V683,T202] ( 2, 1 ) int -> rsi "field V322._length (fldOffset=0x8)" P-INDEP
;* V684 tmp675 [V684 ] ( 0, 0 ) byref -> zero-ref "field V326._reference (fldOffset=0x0)" P-INDEP
;* V685 tmp676 [V685 ] ( 0, 0 ) int -> zero-ref "field V326._length (fldOffset=0x8)" P-INDEP
-; V686 tmp677 [V686,T102] ( 3, 1.50) byref -> rdx "field V327._reference (fldOffset=0x0)" P-INDEP
-; V687 tmp678 [V687,T118] ( 3, 1.50) int -> rcx "field V327._length (fldOffset=0x8)" P-INDEP
-; V688 tmp679 [V688,T148] ( 2, 1 ) byref -> rdx single-def "field V329._reference (fldOffset=0x0)" P-INDEP
-; V689 tmp680 [V689,T203] ( 2, 1 ) int -> rsi "field V329._length (fldOffset=0x8)" P-INDEP
-;* V690 tmp681 [V690 ] ( 0, 0 ) byref -> zero-ref single-def "field V330._reference (fldOffset=0x0)" P-INDEP
-;* V691 tmp682 [V691 ] ( 0, 0 ) int -> zero-ref "field V330._length (fldOffset=0x8)" P-INDEP
+; V686 tmp677 [V686,T102] ( 3, 1.50) byref -> registers "field V327._reference (fldOffset=0x0)" P-INDEP
+; V687 tmp678 [V687,T118] ( 3, 1.50) int -> registers "field V327._length (fldOffset=0x8)" P-INDEP
+;* V688 tmp679 [V688 ] ( 0, 0 ) byref -> zero-ref single-def "field V329._reference (fldOffset=0x0)" P-INDEP
+;* V689 tmp680 [V689 ] ( 0, 0 ) int -> zero-ref "field V329._length (fldOffset=0x8)" P-INDEP
+; V690 tmp681 [V690,T148] ( 2, 1 ) byref -> rdx single-def "field V330._reference (fldOffset=0x0)" P-INDEP
+; V691 tmp682 [V691,T203] ( 2, 1 ) int -> rsi "field V330._length (fldOffset=0x8)" P-INDEP
;* V692 tmp683 [V692 ] ( 0, 0 ) byref -> zero-ref "field V334._reference (fldOffset=0x0)" P-INDEP
;* V693 tmp684 [V693 ] ( 0, 0 ) int -> zero-ref "field V334._length (fldOffset=0x8)" P-INDEP
-; V694 tmp685 [V694,T103] ( 3, 1.50) byref -> rdx "field V335._reference (fldOffset=0x0)" P-INDEP
-; V695 tmp686 [V695,T119] ( 3, 1.50) int -> rcx "field V335._length (fldOffset=0x8)" P-INDEP
-; V696 tmp687 [V696,T149] ( 2, 1 ) byref -> rdx single-def "field V337._reference (fldOffset=0x0)" P-INDEP
-; V697 tmp688 [V697,T204] ( 2, 1 ) int -> rsi "field V337._length (fldOffset=0x8)" P-INDEP
-;* V698 tmp689 [V698 ] ( 0, 0 ) byref -> zero-ref single-def "field V338._reference (fldOffset=0x0)" P-INDEP
-;* V699 tmp690 [V699 ] ( 0, 0 ) int -> zero-ref "field V338._length (fldOffset=0x8)" P-INDEP
+; V694 tmp685 [V694,T103] ( 3, 1.50) byref -> registers "field V335._reference (fldOffset=0x0)" P-INDEP
+; V695 tmp686 [V695,T119] ( 3, 1.50) int -> registers "field V335._length (fldOffset=0x8)" P-INDEP
+;* V696 tmp687 [V696 ] ( 0, 0 ) byref -> zero-ref single-def "field V337._reference (fldOffset=0x0)" P-INDEP
+;* V697 tmp688 [V697 ] ( 0, 0 ) int -> zero-ref "field V337._length (fldOffset=0x8)" P-INDEP
+; V698 tmp689 [V698,T149] ( 2, 1 ) byref -> rdx single-def "field V338._reference (fldOffset=0x0)" P-INDEP
+; V699 tmp690 [V699,T204] ( 2, 1 ) int -> rsi "field V338._length (fldOffset=0x8)" P-INDEP
; V700 tmp691 [V700,T24] ( 6, 3 ) ref -> [rbp-0x98] spill-single-def "V32.[008..016)"
; V701 tmp692 [V701,T25] ( 6, 3 ) ref -> [rbp-0xA0] spill-single-def "V122.[008..016)"
;* V702 tmp693 [V702,T206] ( 0, 0 ) ref -> zero-ref single-def "V212.[000..008)"
; V703 tmp694 [V703,T27] ( 5, 2.50) ref -> [rbp-0xA8] spill-single-def "V212.[008..016)"
; V704 tmp695 [V704,T69] ( 2, 2 ) ref -> rcx single-def "Spilling address for field-by-field copy"
; V705 cse0 [V705,T41] ( 4, 2 ) ref -> [rbp-0xB0] spill-single-def "CSE #03: conservative"
; V706 cse1 [V706,T39] ( 5, 2.50) int -> [rbp-0x84] spill-single-def "CSE #02: conservative"
; V707 cse2 [V707,T40] ( 5, 2.50) int -> [rbp-0x88] spill-single-def "CSE #04: conservative"
; V708 cse3 [V708,T04] ( 15, 7.50) byref -> [rbp-0xB8] multi-def "CSE #11: aggressive"
; V709 cse4 [V709,T45] ( 4, 2 ) int -> rdx "CSE #01: conservative"
; V710 cse5 [V710,T46] ( 4, 2 ) int -> [rbp-0x8C] spill-single-def "CSE #08: conservative"
;
; Lcl frame size = 312
G_M35317_IG01:
push rbp
push r15
push r14
push r13
push r12
push rbx
sub rsp, 312
lea rbp, [rsp+0x160]
vxorps xmm8, xmm8, xmm8
vmovdqu ymmword ptr [rbp-0x80], ymm8
vmovdqu ymmword ptr [rbp-0x60], ymm8
vmovdqa xmmword ptr [rbp-0x40], xmm8
mov rbx, rdi
mov r15, rdx
;; size=51 bbWeight=1 PerfScore 13.58
G_M35317_IG02:
cmp dword ptr [rbx+0x14], 4
jne G_M35317_IG107
;; size=10 bbWeight=1 PerfScore 4.00
G_M35317_IG03:
movzx rdx, sil
test dl, 4
jne G_M35317_IG107
test dl, 2
setne r14b
movzx r14, r14b
xor r13d, r13d
xor r12d, r12d
xor eax, eax
mov dword ptr [rbp-0x2C], eax
mov byte ptr [rbp-0x50], 2
vxorps xmm0, xmm0, xmm0
vmovdqu xmmword ptr [rbp-0x40], xmm0
xor edi, edi
mov qword ptr [rbp-0x58], rdi
test dl, 1
je G_M35317_IG63
mov rdx, 0xD1FFAB1E ; box for System.Globalization.TimeSpanFormat:PositiveInvariantFormatLiterals
mov rcx, gword ptr [rdx]
mov gword ptr [rbp-0xB0], rcx
mov r8, gword ptr [rcx+0x10]
mov gword ptr [rbp-0x98], r8
cmp dword ptr [rbx+0x14], 4
jne G_M35317_IG18
cmp dword ptr [rbx+0x18], 3
jne G_M35317_IG18
mov rdi, bword ptr [rbx+0x110]
mov edx, dword ptr [rbx+0x118]
mov r9d, dword ptr [r8+0x08]
mov dword ptr [rbp-0x84], r9d
test r9d, r9d
je G_M35317_IG110
mov rsi, gword ptr [r8+0x10]
test rsi, rsi
- je SHORT G_M35317_IG04
+ jne SHORT G_M35317_IG04
+ xor rsi, rsi
+ xor r10d, r10d
+ mov rax, rsi
+ mov esi, r10d
+ mov r10, rax
+ jmp SHORT G_M35317_IG05
+ ;; size=172 bbWeight=0.50 PerfScore 19.29
+G_M35317_IG04:
lea r10, bword ptr [rsi+0x0C]
mov esi, dword ptr [rsi+0x08]
- jmp SHORT G_M35317_IG05
- ;; size=165 bbWeight=0.50 PerfScore 19.92
-G_M35317_IG04:
- xor r10, r10
- xor esi, esi
- ;; size=5 bbWeight=0.50 PerfScore 0.25
+ ;; size=7 bbWeight=0.50 PerfScore 1.25
G_M35317_IG05:
cmp edx, esi
jne G_M35317_IG18
test esi, esi
je SHORT G_M35317_IG06
mov edx, esi
add rdx, rdx
mov rsi, r10
mov r10, 0xD1FFAB1E ; code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
call [r10]System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
test eax, eax
je G_M35317_IG18
;; size=41 bbWeight=0.50 PerfScore 3.88
G_M35317_IG06:
mov rdi, bword ptr [rbx+0x120]
mov edx, dword ptr [rbx+0x128]
cmp dword ptr [rbp-0x84], 2
jbe G_M35317_IG110
mov r8, gword ptr [rbp-0x98]
mov rsi, gword ptr [r8+0x20]
test rsi, rsi
- je SHORT G_M35317_IG07
+ jne SHORT G_M35317_IG07
+ xor rsi, rsi
+ xor r10d, r10d
+ mov rax, rsi
+ mov esi, r10d
+ mov r10, rax
+ jmp SHORT G_M35317_IG08
+ ;; size=58 bbWeight=0.50 PerfScore 7.25
+G_M35317_IG07:
lea r10, bword ptr [rsi+0x0C]
mov esi, dword ptr [rsi+0x08]
- jmp SHORT G_M35317_IG08
- ;; size=51 bbWeight=0.50 PerfScore 7.88
-G_M35317_IG07:
- xor r10, r10
- xor esi, esi
- ;; size=5 bbWeight=0.50 PerfScore 0.25
+ ;; size=7 bbWeight=0.50 PerfScore 1.25
G_M35317_IG08:
cmp edx, esi
jne G_M35317_IG18
test esi, esi
je SHORT G_M35317_IG09
mov edx, esi
add rdx, rdx
mov rsi, r10
mov r10, 0xD1FFAB1E ; code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
call [r10]System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
test eax, eax
je G_M35317_IG18
;; size=41 bbWeight=0.50 PerfScore 3.88
G_M35317_IG09:
mov rdi, bword ptr [rbx+0x130]
mov edx, dword ptr [rbx+0x138]
cmp dword ptr [rbp-0x84], 3
jbe G_M35317_IG110
mov r8, gword ptr [rbp-0x98]
mov rsi, gword ptr [r8+0x28]
test rsi, rsi
- je SHORT G_M35317_IG10
+ jne SHORT G_M35317_IG10
+ xor rsi, rsi
+ xor r10d, r10d
+ mov rax, rsi
+ mov esi, r10d
+ mov r10, rax
+ jmp SHORT G_M35317_IG11
+ ;; size=58 bbWeight=0.50 PerfScore 7.25
+G_M35317_IG10:
lea r10, bword ptr [rsi+0x0C]
mov esi, dword ptr [rsi+0x08]
- jmp SHORT G_M35317_IG11
- ;; size=51 bbWeight=0.50 PerfScore 7.88
-G_M35317_IG10:
- xor r10, r10
- xor esi, esi
- ;; size=5 bbWeight=0.50 PerfScore 0.25
+ ;; size=7 bbWeight=0.50 PerfScore 1.25
G_M35317_IG11:
cmp edx, esi
jne G_M35317_IG18
test esi, esi
je SHORT G_M35317_IG12
mov edx, esi
add rdx, rdx
mov rsi, r10
mov r10, 0xD1FFAB1E ; code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
call [r10]System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
test eax, eax
je G_M35317_IG18
;; size=41 bbWeight=0.50 PerfScore 3.88
G_M35317_IG12:
mov rdi, bword ptr [rbx+0x140]
mov edx, dword ptr [rbx+0x148]
cmp dword ptr [rbp-0x84], 5
jbe G_M35317_IG110
mov r8, gword ptr [rbp-0x98]
mov rsi, gword ptr [r8+0x38]
test rsi, rsi
- je SHORT G_M35317_IG13
+ jne SHORT G_M35317_IG13
+ xor rsi, rsi
+ xor r8d, r8d
+ mov rax, rsi
+ mov esi, r8d
+ mov r8, rax
+ jmp SHORT G_M35317_IG14
+ ;; size=58 bbWeight=0.50 PerfScore 7.25
+G_M35317_IG13:
lea r8, bword ptr [rsi+0x0C]
mov esi, dword ptr [rsi+0x08]
- jmp SHORT G_M35317_IG14
- ;; size=51 bbWeight=0.50 PerfScore 7.88
-G_M35317_IG13:
- xor r8, r8
- xor esi, esi
- ;; size=5 bbWeight=0.50 PerfScore 0.25
+ ;; size=7 bbWeight=0.50 PerfScore 1.25
G_M35317_IG14:
cmp edx, esi
jne SHORT G_M35317_IG16
test esi, esi
je SHORT G_M35317_IG15
mov edx, esi
add rdx, rdx
mov rsi, r8
mov r8, 0xD1FFAB1E ; code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
call [r8]System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
mov edi, eax
jmp SHORT G_M35317_IG17
;; size=33 bbWeight=0.50 PerfScore 4.38
G_M35317_IG15:
mov edi, 1
jmp SHORT G_M35317_IG17
;; size=7 bbWeight=0.50 PerfScore 1.12
G_M35317_IG16:
xor edi, edi
;; size=2 bbWeight=0.50 PerfScore 0.12
G_M35317_IG17:
test edi, edi
je G_M35317_IG18
mov r13d, 1
lea rdi, [rsp]
lea rsi, [rbp-0x50]
movsq
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x10], rcx
add rsi, 8
add rdi, 8
movsq
lea rax, bword ptr [rbx+0x70]
lea rdi, [rsp+0x20]
mov rsi, rax
movsq
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x30], rcx
add rsi, 8
add rdi, 8
movsq
lea rax, bword ptr [rbx+0x90]
lea rdi, [rsp+0x40]
mov rsi, rax
movsq
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x50], rcx
add rsi, 8
add rdi, 8
movsq
lea rax, bword ptr [rbx+0xB0]
lea rdi, [rsp+0x60]
mov rsi, rax
movsq
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x70], rcx
add rsi, 8
add rdi, 8
movsq
lea rdi, [rsp+0x80]
lea rsi, [rbp-0x50]
movsq
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x90], rcx
add rsi, 8
add rdi, 8
movsq
lea rsi, [rbp-0x58]
mov edi, 1
mov rax, 0xD1FFAB1E ; code for System.Globalization.TimeSpanParse:TryTimeToTicks(ubyte,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,byref):ubyte
call [rax]System.Globalization.TimeSpanParse:TryTimeToTicks(ubyte,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,byref):ubyte
mov r12d, eax
test r12d, r12d
sete dl
movzx rdx, dl
movzx rax, dl
mov dword ptr [rbp-0x2C], eax
;; size=228 bbWeight=0.50 PerfScore 23.38
G_M35317_IG18:
test r12d, r12d
jne G_M35317_IG36
mov rcx, gword ptr [rbp-0xB0]
mov r8, gword ptr [rcx+0x10]
mov gword ptr [rbp-0xA0], r8
cmp dword ptr [rbx+0x14], 4
jne G_M35317_IG36
cmp dword ptr [rbx+0x18], 3
jne G_M35317_IG36
mov rdi, bword ptr [rbx+0x110]
mov edx, dword ptr [rbx+0x118]
mov r9d, dword ptr [r8+0x08]
mov dword ptr [rbp-0x88], r9d
test r9d, r9d
je G_M35317_IG110
mov rsi, gword ptr [r8+0x10]
test rsi, rsi
- je SHORT G_M35317_IG19
+ jne SHORT G_M35317_IG19
+ xor rsi, rsi
+ xor r10d, r10d
+ mov rax, rsi
+ mov esi, r10d
+ mov r10, rax
+ jmp SHORT G_M35317_IG20
+ ;; size=105 bbWeight=0.50 PerfScore 14.00
+G_M35317_IG19:
lea r10, bword ptr [rsi+0x0C]
mov esi, dword ptr [rsi+0x08]
- jmp SHORT G_M35317_IG20
- ;; size=98 bbWeight=0.50 PerfScore 14.62
-G_M35317_IG19:
- xor r10, r10
- xor esi, esi
- ;; size=5 bbWeight=0.50 PerfScore 0.25
+ ;; size=7 bbWeight=0.50 PerfScore 1.25
G_M35317_IG20:
cmp edx, esi
jne G_M35317_IG36
test esi, esi
je SHORT G_M35317_IG21
mov edx, esi
add rdx, rdx
mov rsi, r10
mov r10, 0xD1FFAB1E ; code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
call [r10]System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
test eax, eax
je G_M35317_IG36
;; size=41 bbWeight=0.50 PerfScore 3.88
G_M35317_IG21:
mov rdi, bword ptr [rbx+0x120]
mov edx, dword ptr [rbx+0x128]
cmp dword ptr [rbp-0x88], 1
jbe G_M35317_IG110
mov r8, gword ptr [rbp-0xA0]
mov rsi, gword ptr [r8+0x18]
test rsi, rsi
- je SHORT G_M35317_IG22
+ jne SHORT G_M35317_IG22
+ xor rsi, rsi
+ xor r10d, r10d
+ mov rax, rsi
+ mov esi, r10d
+ mov r10, rax
+ jmp SHORT G_M35317_IG23
+ ;; size=58 bbWeight=0.50 PerfScore 7.25
+G_M35317_IG22:
lea r10, bword ptr [rsi+0x0C]
mov esi, dword ptr [rsi+0x08]
- jmp SHORT G_M35317_IG23
- ;; size=51 bbWeight=0.50 PerfScore 7.88
-G_M35317_IG22:
- xor r10, r10
- xor esi, esi
- ;; size=5 bbWeight=0.50 PerfScore 0.25
+ ;; size=7 bbWeight=0.50 PerfScore 1.25
G_M35317_IG23:
cmp edx, esi
jne G_M35317_IG36
test esi, esi
je SHORT G_M35317_IG24
mov edx, esi
add rdx, rdx
mov rsi, r10
mov r10, 0xD1FFAB1E ; code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
call [r10]System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
test eax, eax
je G_M35317_IG36
;; size=41 bbWeight=0.50 PerfScore 3.88
G_M35317_IG24:
mov rdi, bword ptr [rbx+0x130]
mov edx, dword ptr [rbx+0x138]
cmp dword ptr [rbp-0x88], 2
jbe G_M35317_IG110
mov r8, gword ptr [rbp-0xA0]
mov rsi, gword ptr [r8+0x20]
test rsi, rsi
- je SHORT G_M35317_IG25
+ jne SHORT G_M35317_IG25
+ xor rsi, rsi
+ xor r10d, r10d
+ mov rax, rsi
+ mov esi, r10d
+ mov r10, rax
+ jmp SHORT G_M35317_IG26
+ ;; size=58 bbWeight=0.50 PerfScore 7.25
+G_M35317_IG25:
lea r10, bword ptr [rsi+0x0C]
mov esi, dword ptr [rsi+0x08]
- jmp SHORT G_M35317_IG26
- ;; size=51 bbWeight=0.50 PerfScore 7.88
-G_M35317_IG25:
- xor r10, r10
- xor esi, esi
- ;; size=5 bbWeight=0.50 PerfScore 0.25
+ ;; size=7 bbWeight=0.50 PerfScore 1.25
G_M35317_IG26:
cmp edx, esi
jne G_M35317_IG36
test esi, esi
je SHORT G_M35317_IG27
mov edx, esi
add rdx, rdx
mov rsi, r10
mov r10, 0xD1FFAB1E ; code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
call [r10]System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
test eax, eax
je G_M35317_IG36
;; size=41 bbWeight=0.50 PerfScore 3.88
G_M35317_IG27:
mov rdi, bword ptr [rbx+0x140]
mov edx, dword ptr [rbx+0x148]
cmp dword ptr [rbp-0x88], 5
jbe G_M35317_IG110
mov r8, gword ptr [rbp-0xA0]
mov rsi, gword ptr [r8+0x38]
test rsi, rsi
- je SHORT G_M35317_IG28
+ jne SHORT G_M35317_IG28
+ xor rsi, rsi
+ xor r8d, r8d
+ mov rax, rsi
+ mov esi, r8d
+ mov r8, rax
+ jmp SHORT G_M35317_IG29
+ ;; size=58 bbWeight=0.50 PerfScore 7.25
+G_M35317_IG28:
lea r8, bword ptr [rsi+0x0C]
mov esi, dword ptr [rsi+0x08]
- jmp SHORT G_M35317_IG29
- ;; size=51 bbWeight=0.50 PerfScore 7.88
-G_M35317_IG28:
- xor r8, r8
- xor esi, esi
- ;; size=5 bbWeight=0.50 PerfScore 0.25
+ ;; size=7 bbWeight=0.50 PerfScore 1.25
G_M35317_IG29:
cmp edx, esi
jne SHORT G_M35317_IG31
test esi, esi
je SHORT G_M35317_IG30
mov edx, esi
add rdx, rdx
mov rsi, r8
mov r8, 0xD1FFAB1E ; code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
call [r8]System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
mov edi, eax
jmp SHORT G_M35317_IG32
;; size=33 bbWeight=0.50 PerfScore 4.38
G_M35317_IG30:
mov edi, 1
jmp SHORT G_M35317_IG32
;; size=7 bbWeight=0.50 PerfScore 1.12
G_M35317_IG31:
xor edi, edi
;; size=2 bbWeight=0.50 PerfScore 0.12
G_M35317_IG32:
test edi, edi
je G_M35317_IG36
mov r13d, 1
lea rdx, bword ptr [rbx+0x70]
lea rdi, [rsp]
mov rsi, rdx
movsq
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x10], rcx
add rsi, 8
add rdi, 8
movsq
lea rdx, bword ptr [rbx+0x90]
lea rdi, [rsp+0x20]
mov rsi, rdx
movsq
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x30], rcx
add rsi, 8
add rdi, 8
movsq
lea rdx, bword ptr [rbx+0xB0]
lea rdi, [rsp+0x40]
mov rsi, rdx
movsq
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x50], rcx
add rsi, 8
add rdi, 8
movsq
lea rdi, [rsp+0x60]
lea rsi, [rbp-0x50]
movsq
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x70], rcx
add rsi, 8
add rdi, 8
movsq
lea rdi, [rsp+0x80]
lea rsi, [rbp-0x50]
movsq
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x90], rcx
add rsi, 8
add rdi, 8
movsq
lea rsi, [rbp-0x58]
mov edi, 1
mov rcx, 0xD1FFAB1E ; code for System.Globalization.TimeSpanParse:TryTimeToTicks(ubyte,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,byref):ubyte
call [rcx]System.Globalization.TimeSpanParse:TryTimeToTicks(ubyte,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,byref):ubyte
mov r12d, eax
cmp dword ptr [rbp-0x2C], 0
je SHORT G_M35317_IG34
mov edx, 1
;; size=224 bbWeight=0.50 PerfScore 23.62
G_M35317_IG33:
jmp SHORT G_M35317_IG35
;; size=2 bbWeight=0.50 PerfScore 1.00
G_M35317_IG34:
test r12d, r12d
sete dl
movzx rdx, dl
;; size=9 bbWeight=0.50 PerfScore 0.75
G_M35317_IG35:
movzx rax, dl
mov dword ptr [rbp-0x2C], eax
;; size=6 bbWeight=0.50 PerfScore 0.62
G_M35317_IG36:
test r12d, r12d
jne G_M35317_IG51
mov rcx, gword ptr [rbp-0xB0]
mov rcx, gword ptr [rcx+0x10]
mov gword ptr [rbp-0xA8], rcx
cmp dword ptr [rbx+0x14], 4
jne G_M35317_IG51
cmp dword ptr [rbx+0x18], 3
jne G_M35317_IG51
mov rdi, bword ptr [rbx+0x110]
mov edx, dword ptr [rbx+0x118]
mov r8d, dword ptr [rcx+0x08]
mov dword ptr [rbp-0x8C], r8d
test r8d, r8d
je G_M35317_IG110
mov rsi, gword ptr [rcx+0x10]
test rsi, rsi
- je SHORT G_M35317_IG37
+ jne SHORT G_M35317_IG37
+ xor rsi, rsi
+ xor r9d, r9d
+ mov rax, rsi
+ mov esi, r9d
+ mov r9, rax
+ jmp SHORT G_M35317_IG38
+ ;; size=105 bbWeight=0.50 PerfScore 14.00
+G_M35317_IG37:
lea r9, bword ptr [rsi+0x0C]
mov esi, dword ptr [rsi+0x08]
- jmp SHORT G_M35317_IG38
- ;; size=98 bbWeight=0.50 PerfScore 14.62
-G_M35317_IG37:
- xor r9, r9
- xor esi, esi
- ;; size=5 bbWeight=0.50 PerfScore 0.25
+ ;; size=7 bbWeight=0.50 PerfScore 1.25
G_M35317_IG38:
cmp edx, esi
jne G_M35317_IG51
test esi, esi
je SHORT G_M35317_IG39
mov edx, esi
add rdx, rdx
mov rsi, r9
mov r9, 0xD1FFAB1E ; code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
call [r9]System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
test eax, eax
je G_M35317_IG51
;; size=41 bbWeight=0.50 PerfScore 3.88
G_M35317_IG39:
mov rdi, bword ptr [rbx+0x120]
mov edx, dword ptr [rbx+0x128]
cmp dword ptr [rbp-0x8C], 2
jbe G_M35317_IG110
mov rcx, gword ptr [rbp-0xA8]
mov rsi, gword ptr [rcx+0x20]
test rsi, rsi
- je SHORT G_M35317_IG40
+ jne SHORT G_M35317_IG40
+ xor rsi, rsi
+ xor r9d, r9d
+ mov rax, rsi
+ mov esi, r9d
+ mov r9, rax
+ jmp SHORT G_M35317_IG41
+ ;; size=58 bbWeight=0.50 PerfScore 7.25
+G_M35317_IG40:
lea r9, bword ptr [rsi+0x0C]
mov esi, dword ptr [rsi+0x08]
- jmp SHORT G_M35317_IG41
- ;; size=51 bbWeight=0.50 PerfScore 7.88
-G_M35317_IG40:
- xor r9, r9
- xor esi, esi
- ;; size=5 bbWeight=0.50 PerfScore 0.25
+ ;; size=7 bbWeight=0.50 PerfScore 1.25
G_M35317_IG41:
cmp edx, esi
jne G_M35317_IG51
test esi, esi
je SHORT G_M35317_IG42
mov edx, esi
add rdx, rdx
mov rsi, r9
mov r9, 0xD1FFAB1E ; code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
call [r9]System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
test eax, eax
je G_M35317_IG51
;; size=41 bbWeight=0.50 PerfScore 3.88
G_M35317_IG42:
mov rdx, bword ptr [rbx+0x130]
mov edi, dword ptr [rbx+0x138]
mov rsi, 0xD1FFAB1E
cmp edi, 2
jne G_M35317_IG51
mov edx, dword ptr [rdx]
cmp edx, dword ptr [rsi]
sete dl
movzx rdx, dl
test edx, edx
je G_M35317_IG51
mov rdi, bword ptr [rbx+0x140]
mov edx, dword ptr [rbx+0x148]
cmp dword ptr [rbp-0x8C], 5
jbe G_M35317_IG110
mov rcx, gword ptr [rbp-0xA8]
mov rsi, gword ptr [rcx+0x38]
test rsi, rsi
- je SHORT G_M35317_IG43
+ jne SHORT G_M35317_IG43
+ xor rsi, rsi
+ xor ecx, ecx
+ mov eax, ecx
+ mov rcx, rsi
+ mov esi, eax
+ jmp SHORT G_M35317_IG44
+ ;; size=105 bbWeight=0.50 PerfScore 13.75
+G_M35317_IG43:
lea rcx, bword ptr [rsi+0x0C]
mov esi, dword ptr [rsi+0x08]
- jmp SHORT G_M35317_IG44
- ;; size=101 bbWeight=0.50 PerfScore 14.38
-G_M35317_IG43:
- xor rcx, rcx
- xor esi, esi
- ;; size=4 bbWeight=0.50 PerfScore 0.25
+ ;; size=7 bbWeight=0.50 PerfScore 1.25
G_M35317_IG44:
cmp edx, esi
jne SHORT G_M35317_IG46
test esi, esi
je SHORT G_M35317_IG45
mov edx, esi
add rdx, rdx
mov rsi, rcx
mov rcx, 0xD1FFAB1E ; code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
call [rcx]System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
mov ecx, eax
jmp SHORT G_M35317_IG47
;; size=32 bbWeight=0.50 PerfScore 4.38
G_M35317_IG45:
mov ecx, 1
jmp SHORT G_M35317_IG47
;; size=7 bbWeight=0.50 PerfScore 1.12
G_M35317_IG46:
xor ecx, ecx
;; size=2 bbWeight=0.50 PerfScore 0.12
G_M35317_IG47:
test ecx, ecx
je G_M35317_IG51
mov r13d, 1
lea rdi, [rsp]
lea rsi, [rbp-0x50]
movsq
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x10], rcx
add rsi, 8
add rdi, 8
movsq
lea rdx, bword ptr [rbx+0x70]
lea rdi, [rsp+0x20]
mov rsi, rdx
movsq
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x30], rcx
add rsi, 8
add rdi, 8
movsq
lea rdx, bword ptr [rbx+0x90]
lea rdi, [rsp+0x40]
mov rsi, rdx
movsq
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x50], rcx
add rsi, 8
add rdi, 8
movsq
lea rdi, [rsp+0x60]
lea rsi, [rbp-0x50]
movsq
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x70], rcx
add rsi, 8
add rdi, 8
movsq
lea rdx, bword ptr [rbx+0xB0]
lea rdi, [rsp+0x80]
mov rsi, rdx
movsq
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x90], rcx
add rsi, 8
add rdi, 8
movsq
lea rsi, [rbp-0x58]
mov edi, 1
mov rcx, 0xD1FFAB1E ; code for System.Globalization.TimeSpanParse:TryTimeToTicks(ubyte,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,byref):ubyte
call [rcx]System.Globalization.TimeSpanParse:TryTimeToTicks(ubyte,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,byref):ubyte
mov r12d, eax
cmp dword ptr [rbp-0x2C], 0
je SHORT G_M35317_IG49
mov ecx, 1
;; size=224 bbWeight=0.50 PerfScore 23.62
G_M35317_IG48:
jmp SHORT G_M35317_IG50
;; size=2 bbWeight=0.50 PerfScore 1.00
G_M35317_IG49:
test r12d, r12d
sete cl
movzx rcx, cl
;; size=9 bbWeight=0.50 PerfScore 0.75
G_M35317_IG50:
movzx rax, cl
mov dword ptr [rbp-0x2C], eax
;; size=6 bbWeight=0.50 PerfScore 0.62
G_M35317_IG51:
test r12d, r12d
jne G_M35317_IG55
mov rcx, 0xD1FFAB1E ; box for System.Globalization.TimeSpanFormat:NegativeInvariantFormatLiterals
mov rdx, gword ptr [rcx]
add rdx, 8
lea rdi, [rsp]
mov rsi, rdx
mov rcx, gword ptr [rsi]
mov gword ptr [rsp], rcx
add rsi, 8
add rdi, 8
mov rcx, gword ptr [rsi]
mov gword ptr [rsp+0x08], rcx
add rsi, 8
add rdi, 8
movsq
movsq
movsq
mov rdi, rbx
mov rcx, 0xD1FFAB1E ; code for System.Globalization.TimeSpanParse+TimeSpanRawInfo:FullHMSMatch(System.Globalization.TimeSpanFormat+FormatLiterals):ubyte:this
call [rcx]System.Globalization.TimeSpanParse+TimeSpanRawInfo:FullHMSMatch(System.Globalization.TimeSpanFormat+FormatLiterals):ubyte:this
test eax, eax
je G_M35317_IG55
xor r13d, r13d
lea rdi, [rsp]
lea rsi, [rbp-0x50]
movsq
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x10], rcx
add rsi, 8
add rdi, 8
movsq
lea rax, bword ptr [rbx+0x70]
lea rdi, [rsp+0x20]
mov rsi, rax
movsq
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x30], rcx
add rsi, 8
add rdi, 8
movsq
lea rax, bword ptr [rbx+0x90]
lea rdi, [rsp+0x40]
mov rsi, rax
movsq
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x50], rcx
add rsi, 8
add rdi, 8
movsq
lea rax, bword ptr [rbx+0xB0]
lea rdi, [rsp+0x60]
mov rsi, rax
movsq
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x70], rcx
;; size=224 bbWeight=0.50 PerfScore 24.38
G_M35317_IG52:
add rsi, 8
add rdi, 8
movsq
lea rdi, [rsp+0x80]
lea rsi, [rbp-0x50]
movsq
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x90], rcx
add rsi, 8
add rdi, 8
movsq
lea rsi, [rbp-0x58]
xor edi, edi
mov rax, 0xD1FFAB1E ; code for System.Globalization.TimeSpanParse:TryTimeToTicks(ubyte,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,byref):ubyte
call [rax]System.Globalization.TimeSpanParse:TryTimeToTicks(ubyte,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,byref):ubyte
mov r12d, eax
cmp dword ptr [rbp-0x2C], 0
je SHORT G_M35317_IG53
mov ecx, 1
jmp SHORT G_M35317_IG54
;; size=81 bbWeight=0.50 PerfScore 9.25
G_M35317_IG53:
test r12d, r12d
sete cl
movzx rcx, cl
;; size=9 bbWeight=0.50 PerfScore 0.75
G_M35317_IG54:
movzx rax, cl
mov dword ptr [rbp-0x2C], eax
;; size=6 bbWeight=0.50 PerfScore 0.62
G_M35317_IG55:
test r12d, r12d
jne G_M35317_IG59
mov rcx, 0xD1FFAB1E ; box for System.Globalization.TimeSpanFormat:NegativeInvariantFormatLiterals
mov rdx, gword ptr [rcx]
add rdx, 8
lea rdi, [rsp]
mov rsi, rdx
mov rcx, gword ptr [rsi]
mov gword ptr [rsp], rcx
add rsi, 8
add rdi, 8
mov rcx, gword ptr [rsi]
mov gword ptr [rsp+0x08], rcx
add rsi, 8
add rdi, 8
movsq
movsq
movsq
mov rdi, rbx
mov rcx, 0xD1FFAB1E ; code for System.Globalization.TimeSpanParse+TimeSpanRawInfo:FullDHMMatch(System.Globalization.TimeSpanFormat+FormatLiterals):ubyte:this
call [rcx]System.Globalization.TimeSpanParse+TimeSpanRawInfo:FullDHMMatch(System.Globalization.TimeSpanFormat+FormatLiterals):ubyte:this
test eax, eax
je G_M35317_IG59
xor r13d, r13d
lea rax, bword ptr [rbx+0x70]
lea rdi, [rsp]
mov rsi, rax
movsq
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x10], rcx
add rsi, 8
add rdi, 8
movsq
lea rax, bword ptr [rbx+0x90]
lea rdi, [rsp+0x20]
mov rsi, rax
movsq
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x30], rcx
add rsi, 8
add rdi, 8
movsq
lea rax, bword ptr [rbx+0xB0]
lea rdi, [rsp+0x40]
mov rsi, rax
movsq
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x50], rcx
add rsi, 8
add rdi, 8
movsq
lea rdi, [rsp+0x60]
lea rsi, [rbp-0x50]
movsq
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x70], rcx
;; size=224 bbWeight=0.50 PerfScore 24.38
G_M35317_IG56:
add rsi, 8
add rdi, 8
movsq
lea rdi, [rsp+0x80]
lea rsi, [rbp-0x50]
movsq
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x90], rcx
add rsi, 8
add rdi, 8
movsq
lea rsi, [rbp-0x58]
xor edi, edi
mov rax, 0xD1FFAB1E ; code for System.Globalization.TimeSpanParse:TryTimeToTicks(ubyte,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,byref):ubyte
call [rax]System.Globalization.TimeSpanParse:TryTimeToTicks(ubyte,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,byref):ubyte
mov r12d, eax
cmp dword ptr [rbp-0x2C], 0
je SHORT G_M35317_IG57
mov ecx, 1
jmp SHORT G_M35317_IG58
;; size=81 bbWeight=0.50 PerfScore 9.25
G_M35317_IG57:
test r12d, r12d
sete cl
movzx rcx, cl
;; size=9 bbWeight=0.50 PerfScore 0.75
G_M35317_IG58:
movzx rax, cl
mov dword ptr [rbp-0x2C], eax
;; size=6 bbWeight=0.50 PerfScore 0.62
G_M35317_IG59:
test r12d, r12d
jne G_M35317_IG63
mov rcx, 0xD1FFAB1E ; box for System.Globalization.TimeSpanFormat:NegativeInvariantFormatLiterals
mov rdx, gword ptr [rcx]
add rdx, 8
lea rdi, [rsp]
mov rsi, rdx
mov rcx, gword ptr [rsi]
mov gword ptr [rsp], rcx
add rsi, 8
add rdi, 8
mov rcx, gword ptr [rsi]
mov gword ptr [rsp+0x08], rcx
add rsi, 8
add rdi, 8
movsq
movsq
movsq
mov rdi, rbx
mov rcx, 0xD1FFAB1E ; code for System.Globalization.TimeSpanParse+TimeSpanRawInfo:PartialAppCompatMatch(System.Globalization.TimeSpanFormat+FormatLiterals):ubyte:this
call [rcx]System.Globalization.TimeSpanParse+TimeSpanRawInfo:PartialAppCompatMatch(System.Globalization.TimeSpanFormat+FormatLiterals):ubyte:this
test eax, eax
je G_M35317_IG63
xor r13d, r13d
lea rdi, [rsp]
lea rsi, [rbp-0x50]
movsq
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x10], rcx
add rsi, 8
add rdi, 8
movsq
lea rax, bword ptr [rbx+0x70]
lea rdi, [rsp+0x20]
mov rsi, rax
movsq
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x30], rcx
add rsi, 8
add rdi, 8
movsq
lea rax, bword ptr [rbx+0x90]
lea rdi, [rsp+0x40]
mov rsi, rax
movsq
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x50], rcx
add rsi, 8
add rdi, 8
movsq
lea rdi, [rsp+0x60]
lea rsi, [rbp-0x50]
movsq
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x70], rcx
add rsi, 8
;; size=222 bbWeight=0.50 PerfScore 24.38
G_M35317_IG60:
add rdi, 8
movsq
lea rax, bword ptr [rbx+0xB0]
lea rdi, [rsp+0x80]
mov rsi, rax
movsq
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x90], rcx
add rsi, 8
add rdi, 8
movsq
lea rsi, [rbp-0x58]
xor edi, edi
mov rax, 0xD1FFAB1E ; code for System.Globalization.TimeSpanParse:TryTimeToTicks(ubyte,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,byref):ubyte
call [rax]System.Globalization.TimeSpanParse:TryTimeToTicks(ubyte,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,byref):ubyte
mov r12d, eax
cmp dword ptr [rbp-0x2C], 0
je SHORT G_M35317_IG61
mov esi, 1
jmp SHORT G_M35317_IG62
;; size=83 bbWeight=0.50 PerfScore 9.25
G_M35317_IG61:
test r12d, r12d
sete sil
movzx rsi, sil
;; size=11 bbWeight=0.50 PerfScore 0.75
G_M35317_IG62:
movzx rax, sil
mov dword ptr [rbp-0x2C], eax
;; size=7 bbWeight=0.50 PerfScore 0.62
G_M35317_IG63:
test r14d, r14d
je G_M35317_IG102
test r12d, r12d
jne G_M35317_IG70
cmp byte ptr [rbx+0x1D], 0
jne SHORT G_M35317_IG66
lea rdi, bword ptr [rbx+0x20]
xor esi, esi
mov qword ptr [rdi], rsi
mov qword ptr [rdi+0x08], rsi
mov qword ptr [rdi+0x10], rsi
mov qword ptr [rdi+0x18], rsi
mov qword ptr [rdi+0x20], rsi
mov rsi, gword ptr [rbx]
test rsi, rsi
- je SHORT G_M35317_IG64
+ jne SHORT G_M35317_IG64
+ xor rsi, rsi
+ xor edx, edx
+ mov ecx, edx
+ mov rdx, rsi
+ jmp SHORT G_M35317_IG65
+ ;; size=68 bbWeight=0.50 PerfScore 9.25
+G_M35317_IG64:
lea rdx, bword ptr [rsi+0x0C]
mov esi, dword ptr [rsi+0x08]
mov ecx, esi
- jmp SHORT G_M35317_IG65
- ;; size=68 bbWeight=0.50 PerfScore 10.12
-G_M35317_IG64:
- xor rdx, rdx
- xor ecx, ecx
- ;; size=4 bbWeight=0.50 PerfScore 0.25
+ ;; size=9 bbWeight=0.50 PerfScore 1.38
G_M35317_IG65:
mov rsi, rdx
mov edx, ecx
xor ecx, ecx
mov r8, 0xD1FFAB1E ; code for System.Globalization.TimeSpanFormat+FormatLiterals:Init(System.ReadOnlySpan`1[ushort],ubyte):this
call [r8]System.Globalization.TimeSpanFormat+FormatLiterals:Init(System.ReadOnlySpan`1[ushort],ubyte):this
mov byte ptr [rbx+0x1D], 1
;; size=24 bbWeight=0.50 PerfScore 2.50
G_M35317_IG66:
lea rdi, bword ptr [rbx+0x20]
mov bword ptr [rbp-0xB8], rdi
mov rdx, bword ptr [rbp-0xB8]
lea rdi, [rsp]
mov rsi, rdx
mov rcx, gword ptr [rsi]
mov gword ptr [rsp], rcx
add rsi, 8
add rdi, 8
mov rcx, gword ptr [rsi]
mov gword ptr [rsp+0x08], rcx
add rsi, 8
add rdi, 8
movsq
movsq
movsq
mov rdi, rbx
mov rcx, 0xD1FFAB1E ; code for System.Globalization.TimeSpanParse+TimeSpanRawInfo:FullHMSMatch(System.Globalization.TimeSpanFormat+FormatLiterals):ubyte:this
call [rcx]System.Globalization.TimeSpanParse+TimeSpanRawInfo:FullHMSMatch(System.Globalization.TimeSpanFormat+FormatLiterals):ubyte:this
test eax, eax
je G_M35317_IG70
mov r13d, 1
lea rdi, [rsp]
lea rsi, [rbp-0x50]
movsq
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x10], rcx
add rsi, 8
add rdi, 8
movsq
lea rax, bword ptr [rbx+0x70]
lea rdi, [rsp+0x20]
mov rsi, rax
movsq
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x30], rcx
add rsi, 8
add rdi, 8
movsq
lea rax, bword ptr [rbx+0x90]
lea rdi, [rsp+0x40]
mov rsi, rax
movsq
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x50], rcx
add rsi, 8
add rdi, 8
movsq
lea rax, bword ptr [rbx+0xB0]
lea rdi, [rsp+0x60]
mov rsi, rax
movsq
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x70], rcx
add rsi, 8
add rdi, 8
movsq
lea rdi, [rsp+0x80]
;; size=237 bbWeight=0.50 PerfScore 24.75
G_M35317_IG67:
lea rsi, [rbp-0x50]
movsq
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x90], rcx
add rsi, 8
add rdi, 8
movsq
lea rsi, [rbp-0x58]
mov edi, 1
mov rax, 0xD1FFAB1E ; code for System.Globalization.TimeSpanParse:TryTimeToTicks(ubyte,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,byref):ubyte
call [rax]System.Globalization.TimeSpanParse:TryTimeToTicks(ubyte,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,byref):ubyte
mov r12d, eax
cmp dword ptr [rbp-0x2C], 0
je SHORT G_M35317_IG68
mov esi, 1
jmp SHORT G_M35317_IG69
;; size=66 bbWeight=0.50 PerfScore 8.25
G_M35317_IG68:
test r12d, r12d
sete sil
movzx rsi, sil
;; size=11 bbWeight=0.50 PerfScore 0.75
G_M35317_IG69:
movzx rax, sil
mov dword ptr [rbp-0x2C], eax
;; size=7 bbWeight=0.50 PerfScore 0.62
G_M35317_IG70:
test r12d, r12d
jne G_M35317_IG77
cmp byte ptr [rbx+0x1D], 0
jne SHORT G_M35317_IG73
lea rdx, bword ptr [rbx+0x20]
xor esi, esi
mov qword ptr [rdx], rsi
mov qword ptr [rdx+0x08], rsi
mov qword ptr [rdx+0x10], rsi
mov qword ptr [rdx+0x18], rsi
mov qword ptr [rdx+0x20], rsi
mov rdi, rdx
mov rsi, gword ptr [rbx]
test rsi, rsi
- je SHORT G_M35317_IG71
+ jne SHORT G_M35317_IG71
+ xor rsi, rsi
+ xor edx, edx
+ mov ecx, edx
+ mov rdx, rsi
+ jmp SHORT G_M35317_IG72
+ ;; size=62 bbWeight=0.50 PerfScore 8.75
+G_M35317_IG71:
lea rdx, bword ptr [rsi+0x0C]
mov esi, dword ptr [rsi+0x08]
mov ecx, esi
- jmp SHORT G_M35317_IG72
- ;; size=62 bbWeight=0.50 PerfScore 9.62
-G_M35317_IG71:
- xor rdx, rdx
- xor ecx, ecx
- ;; size=4 bbWeight=0.50 PerfScore 0.25
+ ;; size=9 bbWeight=0.50 PerfScore 1.38
G_M35317_IG72:
mov rsi, rdx
mov edx, ecx
xor ecx, ecx
mov r8, 0xD1FFAB1E ; code for System.Globalization.TimeSpanFormat+FormatLiterals:Init(System.ReadOnlySpan`1[ushort],ubyte):this
call [r8]System.Globalization.TimeSpanFormat+FormatLiterals:Init(System.ReadOnlySpan`1[ushort],ubyte):this
mov byte ptr [rbx+0x1D], 1
;; size=24 bbWeight=0.50 PerfScore 2.50
G_M35317_IG73:
lea rdx, bword ptr [rbx+0x20]
lea rdi, [rsp]
mov rsi, rdx
mov rcx, gword ptr [rsi]
mov gword ptr [rsp], rcx
add rsi, 8
add rdi, 8
mov rcx, gword ptr [rsi]
mov gword ptr [rsp+0x08], rcx
add rsi, 8
add rdi, 8
movsq
movsq
movsq
mov rdi, rbx
mov rcx, 0xD1FFAB1E ; code for System.Globalization.TimeSpanParse+TimeSpanRawInfo:FullDHMMatch(System.Globalization.TimeSpanFormat+FormatLiterals):ubyte:this
call [rcx]System.Globalization.TimeSpanParse+TimeSpanRawInfo:FullDHMMatch(System.Globalization.TimeSpanFormat+FormatLiterals):ubyte:this
test eax, eax
je G_M35317_IG77
mov r13d, 1
lea rax, bword ptr [rbx+0x70]
lea rdi, [rsp]
mov rsi, rax
movsq
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x10], rcx
add rsi, 8
add rdi, 8
movsq
lea rax, bword ptr [rbx+0x90]
lea rdi, [rsp+0x20]
mov rsi, rax
movsq
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x30], rcx
add rsi, 8
add rdi, 8
movsq
lea rax, bword ptr [rbx+0xB0]
lea rdi, [rsp+0x40]
mov rsi, rax
movsq
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x50], rcx
add rsi, 8
add rdi, 8
movsq
lea rdi, [rsp+0x60]
lea rsi, [rbp-0x50]
movsq
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x70], rcx
add rsi, 8
add rdi, 8
movsq
lea rdi, [rsp+0x80]
lea rsi, [rbp-0x50]
movsq
;; size=229 bbWeight=0.50 PerfScore 24.50
G_M35317_IG74:
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x90], rcx
add rsi, 8
add rdi, 8
movsq
lea rsi, [rbp-0x58]
mov edi, 1
mov rax, 0xD1FFAB1E ; code for System.Globalization.TimeSpanParse:TryTimeToTicks(ubyte,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,byref):ubyte
call [rax]System.Globalization.TimeSpanParse:TryTimeToTicks(ubyte,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,byref):ubyte
mov r12d, eax
cmp dword ptr [rbp-0x2C], 0
je SHORT G_M35317_IG75
mov esi, 1
jmp SHORT G_M35317_IG76
;; size=60 bbWeight=0.50 PerfScore 7.50
G_M35317_IG75:
test r12d, r12d
sete sil
movzx rsi, sil
;; size=11 bbWeight=0.50 PerfScore 0.75
G_M35317_IG76:
movzx rax, sil
mov dword ptr [rbp-0x2C], eax
;; size=7 bbWeight=0.50 PerfScore 0.62
G_M35317_IG77:
test r12d, r12d
jne G_M35317_IG84
cmp byte ptr [rbx+0x1D], 0
jne SHORT G_M35317_IG80
lea rdx, bword ptr [rbx+0x20]
xor esi, esi
mov qword ptr [rdx], rsi
mov qword ptr [rdx+0x08], rsi
mov qword ptr [rdx+0x10], rsi
mov qword ptr [rdx+0x18], rsi
mov qword ptr [rdx+0x20], rsi
mov rdi, rdx
mov rsi, gword ptr [rbx]
test rsi, rsi
- je SHORT G_M35317_IG78
+ jne SHORT G_M35317_IG78
+ xor rsi, rsi
+ xor edx, edx
+ mov ecx, edx
+ mov rdx, rsi
+ jmp SHORT G_M35317_IG79
+ ;; size=62 bbWeight=0.50 PerfScore 8.75
+G_M35317_IG78:
lea rdx, bword ptr [rsi+0x0C]
mov esi, dword ptr [rsi+0x08]
mov ecx, esi
- jmp SHORT G_M35317_IG79
- ;; size=62 bbWeight=0.50 PerfScore 9.62
-G_M35317_IG78:
- xor rdx, rdx
- xor ecx, ecx
- ;; size=4 bbWeight=0.50 PerfScore 0.25
+ ;; size=9 bbWeight=0.50 PerfScore 1.38
G_M35317_IG79:
mov rsi, rdx
mov edx, ecx
xor ecx, ecx
mov r8, 0xD1FFAB1E ; code for System.Globalization.TimeSpanFormat+FormatLiterals:Init(System.ReadOnlySpan`1[ushort],ubyte):this
call [r8]System.Globalization.TimeSpanFormat+FormatLiterals:Init(System.ReadOnlySpan`1[ushort],ubyte):this
mov byte ptr [rbx+0x1D], 1
;; size=24 bbWeight=0.50 PerfScore 2.50
G_M35317_IG80:
lea rdx, bword ptr [rbx+0x20]
lea rdi, [rsp]
mov rsi, rdx
mov rcx, gword ptr [rsi]
mov gword ptr [rsp], rcx
add rsi, 8
add rdi, 8
mov rcx, gword ptr [rsi]
mov gword ptr [rsp+0x08], rcx
add rsi, 8
add rdi, 8
movsq
movsq
movsq
mov rdi, rbx
mov rcx, 0xD1FFAB1E ; code for System.Globalization.TimeSpanParse+TimeSpanRawInfo:PartialAppCompatMatch(System.Globalization.TimeSpanFormat+FormatLiterals):ubyte:this
call [rcx]System.Globalization.TimeSpanParse+TimeSpanRawInfo:PartialAppCompatMatch(System.Globalization.TimeSpanFormat+FormatLiterals):ubyte:this
test eax, eax
je G_M35317_IG84
mov r13d, 1
lea rdi, [rsp]
lea rsi, [rbp-0x50]
movsq
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x10], rcx
add rsi, 8
add rdi, 8
movsq
lea rax, bword ptr [rbx+0x70]
lea rdi, [rsp+0x20]
mov rsi, rax
movsq
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x30], rcx
add rsi, 8
add rdi, 8
movsq
lea rax, bword ptr [rbx+0x90]
lea rdi, [rsp+0x40]
mov rsi, rax
movsq
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x50], rcx
add rsi, 8
add rdi, 8
movsq
lea rdi, [rsp+0x60]
lea rsi, [rbp-0x50]
movsq
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x70], rcx
add rsi, 8
add rdi, 8
movsq
lea rax, bword ptr [rbx+0xB0]
lea rdi, [rsp+0x80]
mov rsi, rax
movsq
;; size=229 bbWeight=0.50 PerfScore 24.50
G_M35317_IG81:
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x90], rcx
add rsi, 8
add rdi, 8
movsq
lea rsi, [rbp-0x58]
mov edi, 1
mov rax, 0xD1FFAB1E ; code for System.Globalization.TimeSpanParse:TryTimeToTicks(ubyte,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,byref):ubyte
call [rax]System.Globalization.TimeSpanParse:TryTimeToTicks(ubyte,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,byref):ubyte
mov r12d, eax
cmp dword ptr [rbp-0x2C], 0
je SHORT G_M35317_IG82
mov esi, 1
jmp SHORT G_M35317_IG83
;; size=60 bbWeight=0.50 PerfScore 7.50
G_M35317_IG82:
test r12d, r12d
sete sil
movzx rsi, sil
;; size=11 bbWeight=0.50 PerfScore 0.75
G_M35317_IG83:
movzx rax, sil
mov dword ptr [rbp-0x2C], eax
;; size=7 bbWeight=0.50 PerfScore 0.62
G_M35317_IG84:
test r12d, r12d
jne G_M35317_IG91
cmp byte ptr [rbx+0x1E], 0
jne SHORT G_M35317_IG87
xor esi, esi
mov qword ptr [rbx+0x48], rsi
mov qword ptr [rbx+0x50], rsi
mov qword ptr [rbx+0x58], rsi
mov qword ptr [rbx+0x60], rsi
mov qword ptr [rbx+0x68], rsi
lea rdi, bword ptr [rbx+0x48]
mov rsi, gword ptr [rbx+0x08]
test rsi, rsi
- je SHORT G_M35317_IG85
+ jne SHORT G_M35317_IG85
+ xor rsi, rsi
+ xor edx, edx
+ mov ecx, edx
+ mov rdx, rsi
+ jmp SHORT G_M35317_IG86
+ ;; size=61 bbWeight=0.50 PerfScore 8.62
+G_M35317_IG85:
lea rdx, bword ptr [rsi+0x0C]
mov esi, dword ptr [rsi+0x08]
mov ecx, esi
- jmp SHORT G_M35317_IG86
- ;; size=61 bbWeight=0.50 PerfScore 9.50
-G_M35317_IG85:
- xor rdx, rdx
- xor ecx, ecx
- ;; size=4 bbWeight=0.50 PerfScore 0.25
+ ;; size=9 bbWeight=0.50 PerfScore 1.38
G_M35317_IG86:
mov rsi, rdx
mov edx, ecx
xor ecx, ecx
mov r8, 0xD1FFAB1E ; code for System.Globalization.TimeSpanFormat+FormatLiterals:Init(System.ReadOnlySpan`1[ushort],ubyte):this
call [r8]System.Globalization.TimeSpanFormat+FormatLiterals:Init(System.ReadOnlySpan`1[ushort],ubyte):this
mov byte ptr [rbx+0x1E], 1
;; size=24 bbWeight=0.50 PerfScore 2.50
G_M35317_IG87:
lea rdx, bword ptr [rbx+0x48]
lea rdi, [rsp]
mov rsi, rdx
mov rcx, gword ptr [rsi]
mov gword ptr [rsp], rcx
add rsi, 8
add rdi, 8
mov rcx, gword ptr [rsi]
mov gword ptr [rsp+0x08], rcx
add rsi, 8
add rdi, 8
movsq
movsq
movsq
mov rdi, rbx
mov rcx, 0xD1FFAB1E ; code for System.Globalization.TimeSpanParse+TimeSpanRawInfo:FullHMSMatch(System.Globalization.TimeSpanFormat+FormatLiterals):ubyte:this
call [rcx]System.Globalization.TimeSpanParse+TimeSpanRawInfo:FullHMSMatch(System.Globalization.TimeSpanFormat+FormatLiterals):ubyte:this
test eax, eax
je G_M35317_IG91
xor r13d, r13d
lea rdi, [rsp]
lea rsi, [rbp-0x50]
movsq
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x10], rcx
add rsi, 8
add rdi, 8
movsq
lea rax, bword ptr [rbx+0x70]
lea rdi, [rsp+0x20]
mov rsi, rax
movsq
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x30], rcx
add rsi, 8
add rdi, 8
movsq
lea rax, bword ptr [rbx+0x90]
lea rdi, [rsp+0x40]
mov rsi, rax
movsq
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x50], rcx
add rsi, 8
add rdi, 8
movsq
lea rax, bword ptr [rbx+0xB0]
lea rdi, [rsp+0x60]
mov rsi, rax
movsq
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x70], rcx
add rsi, 8
add rdi, 8
movsq
lea rdi, [rsp+0x80]
lea rsi, [rbp-0x50]
movsq
;; size=226 bbWeight=0.50 PerfScore 24.50
G_M35317_IG88:
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x90], rcx
add rsi, 8
add rdi, 8
movsq
lea rsi, [rbp-0x58]
xor edi, edi
mov rax, 0xD1FFAB1E ; code for System.Globalization.TimeSpanParse:TryTimeToTicks(ubyte,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,byref):ubyte
call [rax]System.Globalization.TimeSpanParse:TryTimeToTicks(ubyte,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,byref):ubyte
mov r12d, eax
cmp dword ptr [rbp-0x2C], 0
je SHORT G_M35317_IG89
mov esi, 1
jmp SHORT G_M35317_IG90
;; size=57 bbWeight=0.50 PerfScore 7.50
G_M35317_IG89:
test r12d, r12d
sete sil
movzx rsi, sil
;; size=11 bbWeight=0.50 PerfScore 0.75
G_M35317_IG90:
movzx rax, sil
mov dword ptr [rbp-0x2C], eax
;; size=7 bbWeight=0.50 PerfScore 0.62
G_M35317_IG91:
test r12d, r12d
jne G_M35317_IG98
cmp byte ptr [rbx+0x1E], 0
jne SHORT G_M35317_IG94
xor esi, esi
mov qword ptr [rbx+0x48], rsi
mov qword ptr [rbx+0x50], rsi
mov qword ptr [rbx+0x58], rsi
mov qword ptr [rbx+0x60], rsi
mov qword ptr [rbx+0x68], rsi
lea rdi, bword ptr [rbx+0x48]
mov rsi, gword ptr [rbx+0x08]
test rsi, rsi
- je SHORT G_M35317_IG92
+ jne SHORT G_M35317_IG92
+ xor rsi, rsi
+ xor edx, edx
+ mov ecx, edx
+ mov rdx, rsi
+ jmp SHORT G_M35317_IG93
+ ;; size=61 bbWeight=0.50 PerfScore 8.62
+G_M35317_IG92:
lea rdx, bword ptr [rsi+0x0C]
mov esi, dword ptr [rsi+0x08]
mov ecx, esi
- jmp SHORT G_M35317_IG93
- ;; size=61 bbWeight=0.50 PerfScore 9.50
-G_M35317_IG92:
- xor rdx, rdx
- xor ecx, ecx
- ;; size=4 bbWeight=0.50 PerfScore 0.25
+ ;; size=9 bbWeight=0.50 PerfScore 1.38
G_M35317_IG93:
mov rsi, rdx
mov edx, ecx
xor ecx, ecx
mov r8, 0xD1FFAB1E ; code for System.Globalization.TimeSpanFormat+FormatLiterals:Init(System.ReadOnlySpan`1[ushort],ubyte):this
call [r8]System.Globalization.TimeSpanFormat+FormatLiterals:Init(System.ReadOnlySpan`1[ushort],ubyte):this
mov byte ptr [rbx+0x1E], 1
;; size=24 bbWeight=0.50 PerfScore 2.50
G_M35317_IG94:
lea rdx, bword ptr [rbx+0x48]
lea rdi, [rsp]
mov rsi, rdx
mov rcx, gword ptr [rsi]
mov gword ptr [rsp], rcx
add rsi, 8
add rdi, 8
mov rcx, gword ptr [rsi]
mov gword ptr [rsp+0x08], rcx
add rsi, 8
add rdi, 8
movsq
movsq
movsq
mov rdi, rbx
mov rcx, 0xD1FFAB1E ; code for System.Globalization.TimeSpanParse+TimeSpanRawInfo:FullDHMMatch(System.Globalization.TimeSpanFormat+FormatLiterals):ubyte:this
call [rcx]System.Globalization.TimeSpanParse+TimeSpanRawInfo:FullDHMMatch(System.Globalization.TimeSpanFormat+FormatLiterals):ubyte:this
test eax, eax
je G_M35317_IG98
xor r13d, r13d
lea rax, bword ptr [rbx+0x70]
lea rdi, [rsp]
mov rsi, rax
movsq
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x10], rcx
add rsi, 8
add rdi, 8
movsq
lea rax, bword ptr [rbx+0x90]
lea rdi, [rsp+0x20]
mov rsi, rax
movsq
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x30], rcx
add rsi, 8
add rdi, 8
movsq
lea rax, bword ptr [rbx+0xB0]
lea rdi, [rsp+0x40]
mov rsi, rax
movsq
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x50], rcx
add rsi, 8
add rdi, 8
movsq
lea rdi, [rsp+0x60]
lea rsi, [rbp-0x50]
movsq
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x70], rcx
add rsi, 8
add rdi, 8
movsq
lea rdi, [rsp+0x80]
lea rsi, [rbp-0x50]
movsq
;; size=226 bbWeight=0.50 PerfScore 24.50
G_M35317_IG95:
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x90], rcx
add rsi, 8
add rdi, 8
movsq
lea rsi, [rbp-0x58]
xor edi, edi
mov rax, 0xD1FFAB1E ; code for System.Globalization.TimeSpanParse:TryTimeToTicks(ubyte,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,byref):ubyte
call [rax]System.Globalization.TimeSpanParse:TryTimeToTicks(ubyte,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,byref):ubyte
mov r12d, eax
cmp dword ptr [rbp-0x2C], 0
je SHORT G_M35317_IG96
mov esi, 1
jmp SHORT G_M35317_IG97
;; size=57 bbWeight=0.50 PerfScore 7.50
G_M35317_IG96:
test r12d, r12d
sete sil
movzx rsi, sil
;; size=11 bbWeight=0.50 PerfScore 0.75
G_M35317_IG97:
movzx rax, sil
mov dword ptr [rbp-0x2C], eax
;; size=7 bbWeight=0.50 PerfScore 0.62
G_M35317_IG98:
test r12d, r12d
jne G_M35317_IG102
lea rsi, [rbp-0x80]
mov rdi, rbx
mov rcx, 0xD1FFAB1E ; code for System.Globalization.TimeSpanParse+TimeSpanRawInfo:get_NegativeLocalized():System.Globalization.TimeSpanFormat+FormatLiterals:this
call [rcx]System.Globalization.TimeSpanParse+TimeSpanRawInfo:get_NegativeLocalized():System.Globalization.TimeSpanFormat+FormatLiterals:this
lea rdi, [rsp]
lea rsi, [rbp-0x80]
mov rcx, gword ptr [rsi]
mov gword ptr [rsp], rcx
add rsi, 8
add rdi, 8
mov rcx, gword ptr [rsi]
mov gword ptr [rsp+0x08], rcx
add rsi, 8
add rdi, 8
movsq
movsq
movsq
mov rdi, rbx
mov rax, 0xD1FFAB1E ; code for System.Globalization.TimeSpanParse+TimeSpanRawInfo:PartialAppCompatMatch(System.Globalization.TimeSpanFormat+FormatLiterals):ubyte:this
call [rax]System.Globalization.TimeSpanParse+TimeSpanRawInfo:PartialAppCompatMatch(System.Globalization.TimeSpanFormat+FormatLiterals):ubyte:this
test eax, eax
je G_M35317_IG102
xor r13d, r13d
lea rdi, [rsp]
lea rsi, [rbp-0x50]
movsq
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x10], rcx
add rsi, 8
add rdi, 8
movsq
lea rax, bword ptr [rbx+0x70]
lea rdi, [rsp+0x20]
mov rsi, rax
movsq
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x30], rcx
add rsi, 8
add rdi, 8
movsq
lea rax, bword ptr [rbx+0x90]
lea rdi, [rsp+0x40]
mov rsi, rax
movsq
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x50], rcx
add rsi, 8
add rdi, 8
movsq
lea rdi, [rsp+0x60]
lea rsi, [rbp-0x50]
movsq
movsq
;; size=213 bbWeight=0.50 PerfScore 23.62
G_M35317_IG99:
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x70], rcx
add rsi, 8
add rdi, 8
movsq
add rbx, 176
lea rdi, [rsp+0x80]
mov rsi, rbx
movsq
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x90], rcx
add rsi, 8
add rdi, 8
movsq
lea rsi, [rbp-0x58]
xor edi, edi
mov rax, 0xD1FFAB1E ; code for System.Globalization.TimeSpanParse:TryTimeToTicks(ubyte,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,byref):ubyte
call [rax]System.Globalization.TimeSpanParse:TryTimeToTicks(ubyte,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,byref):ubyte
mov r12d, eax
cmp dword ptr [rbp-0x2C], 0
je SHORT G_M35317_IG100
mov eax, 1
jmp SHORT G_M35317_IG101
;; size=95 bbWeight=0.50 PerfScore 10.75
G_M35317_IG100:
test r12d, r12d
sete al
movzx rax, al
;; size=9 bbWeight=0.50 PerfScore 0.75
G_M35317_IG101:
movzx rax, al
mov r14d, eax
mov dword ptr [rbp-0x2C], r14d
;; size=10 bbWeight=0.50 PerfScore 0.75
G_M35317_IG102:
test r12d, r12d
jne SHORT G_M35317_IG104
cmp dword ptr [rbp-0x2C], 0
je SHORT G_M35317_IG107
;; size=11 bbWeight=0.50 PerfScore 2.12
G_M35317_IG103:
mov rdi, r15
mov rax, 0xD1FFAB1E ; code for System.Globalization.TimeSpanParse+TimeSpanResult:SetOverflowFailure():ubyte:this
call [rax]System.Globalization.TimeSpanParse+TimeSpanResult:SetOverflowFailure():ubyte:this
jmp SHORT G_M35317_IG108
;; size=17 bbWeight=0.50 PerfScore 2.75
G_M35317_IG104:
test r13d, r13d
jne SHORT G_M35317_IG105
mov rax, qword ptr [rbp-0x58]
neg rax
mov qword ptr [rbp-0x58], rax
cmp qword ptr [rbp-0x58], 0
jg SHORT G_M35317_IG103
;; size=23 bbWeight=0.50 PerfScore 3.25
G_M35317_IG105:
mov rax, qword ptr [rbp-0x58]
mov qword ptr [r15], rax
mov eax, 1
;; size=12 bbWeight=0.50 PerfScore 1.12
G_M35317_IG106:
add rsp, 312
pop rbx
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
;; size=18 bbWeight=0.50 PerfScore 2.12
G_M35317_IG107:
mov rdi, r15
mov rax, 0xD1FFAB1E ; code for System.Globalization.TimeSpanParse+TimeSpanResult:SetBadTimeSpanFailure():ubyte:this
call [rax]System.Globalization.TimeSpanParse+TimeSpanResult:SetBadTimeSpanFailure():ubyte:this
;; size=15 bbWeight=0.50 PerfScore 1.75
G_M35317_IG108:
movzx rax, al
;; size=3 bbWeight=0.50 PerfScore 0.12
G_M35317_IG109:
add rsp, 312
pop rbx
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
;; size=18 bbWeight=0.50 PerfScore 2.12
G_M35317_IG110:
call CORINFO_HELP_RNGCHKFAIL
int3
;; size=6 bbWeight=0 PerfScore 0.00
-; Total bytes of code 5501, prolog size 45, PerfScore 648.50, instruction count 1470, allocated bytes for code 5501 (MethodHash=e312760a) for method System.Globalization.TimeSpanParse:ProcessTerminal_HM_S_D(byref,ubyte,byref):ubyte (FullOpts)
+; Total bytes of code 5623, prolog size 45, PerfScore 653.88, instruction count 1513, allocated bytes for code 5623 (MethodHash=e312760a) for method System.Globalization.TimeSpanParse:ProcessTerminal_HM_S_D(byref,ubyte,byref):ubyte (FullOpts)
; ============================================================
106 (5.80 % of base) - System.Globalization.TimeSpanParse:ProcessTerminal_HM(byref,ubyte,byref):ubyte
; Assembly listing for method System.Globalization.TimeSpanParse:ProcessTerminal_HM(byref,ubyte,byref):ubyte (FullOpts)
; Emitting BLENDED_CODE for X64 with AVX - Unix
; FullOpts code
; optimized code
; rbp based frame
; partially interruptible
; No PGO data
; 0 inlinees with PGO data; 103 single block inlinees; 44 inlinees without PGO data
; Final local variable assignments
;
; V00 arg0 [V00,T00] ( 48, 25.50) byref -> rbx single-def
; V01 arg1 [V01,T02] ( 3, 2.50) ubyte -> rsi single-def
; V02 arg2 [V02,T01] ( 5, 3.50) byref -> r15 single-def
; V03 loc0 [V03,T119] ( 2, 1 ) ubyte -> r14
; V04 loc1 [V04,T17] ( 7, 3.50) ubyte -> r13
; V05 loc2 [V05,T18] ( 6, 3 ) ubyte -> r12
; V06 loc3 [V06,T24] ( 5, 2.50) struct (32) [rbp-0x48] do-not-enreg[SF] must-init ld-addr-op <System.Globalization.TimeSpanParse+TimeSpanToken>
; V07 loc4 [V07 ] ( 5, 2.50) long -> [rbp-0x50] do-not-enreg[X] addr-exposed ld-addr-op
; V08 OutArgs [V08 ] ( 1, 1 ) struct (160) [rsp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
;* V09 tmp1 [V09 ] ( 0, 0 ) struct ( 8) zero-ref ld-addr-op "NewObj constructor temp" <System.TimeSpan>
;* V10 tmp2 [V10 ] ( 0, 0 ) struct (40) zero-ref do-not-enreg[S] "spilled call-like call argument" <System.Globalization.TimeSpanFormat+FormatLiterals>
;* V11 tmp3 [V11 ] ( 0, 0 ) struct (40) zero-ref do-not-enreg[S] "spilled call-like call argument" <System.Globalization.TimeSpanFormat+FormatLiterals>
; V12 tmp4 [V12,T120] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V13 tmp5 [V13 ] ( 0, 0 ) struct (40) zero-ref do-not-enreg[SF] ld-addr-op "Inlining Arg" <System.Globalization.TimeSpanFormat+FormatLiterals>
;* V14 tmp6 [V14 ] ( 0, 0 ) struct (16) zero-ref "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
;* V15 tmp7 [V15 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V16 tmp8 [V16 ] ( 0, 0 ) struct (16) zero-ref "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
;* V17 tmp9 [V17 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V18 tmp10 [V18 ] ( 0, 0 ) struct (16) zero-ref "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
;* V19 tmp11 [V19 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V20 tmp12 [V20 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V21 tmp13 [V21,T03] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.String>
-;* V22 tmp14 [V22 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V23 tmp15 [V23 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V22 tmp14 [V22 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V23 tmp15 [V23 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V24 tmp16 [V24,T46] ( 2, 2 ) byref -> r8 single-def "Inlining Arg"
; V25 tmp17 [V25,T62] ( 2, 2 ) int -> rsi "Inlining Arg"
; V26 tmp18 [V26,T121] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V27 tmp19 [V27 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V28 tmp20 [V28 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V29 tmp21 [V29,T122] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V30 tmp22 [V30 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V31 tmp23 [V31 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V32 tmp24 [V32 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V33 tmp25 [V33 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V34 tmp26 [V34 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
;* V35 tmp27 [V35 ] ( 0, 0 ) byref -> zero-ref single-def "impAppendStmt"
;* V36 tmp28 [V36 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V37 tmp29 [V37 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V38 tmp30 [V38 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V39 tmp31 [V39 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V40 tmp32 [V40 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V41 tmp33 [V41,T04] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.String>
-;* V42 tmp34 [V42 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V43 tmp35 [V43 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V42 tmp34 [V42 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V43 tmp35 [V43 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V44 tmp36 [V44,T47] ( 2, 2 ) byref -> r8 single-def "Inlining Arg"
; V45 tmp37 [V45,T63] ( 2, 2 ) int -> rsi "Inlining Arg"
; V46 tmp38 [V46,T123] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V47 tmp39 [V47 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V48 tmp40 [V48 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V49 tmp41 [V49,T124] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V50 tmp42 [V50 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V51 tmp43 [V51 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V52 tmp44 [V52 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V53 tmp45 [V53 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V54 tmp46 [V54 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
;* V55 tmp47 [V55 ] ( 0, 0 ) byref -> zero-ref single-def "impAppendStmt"
;* V56 tmp48 [V56 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V57 tmp49 [V57 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V58 tmp50 [V58 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V59 tmp51 [V59 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V60 tmp52 [V60 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V61 tmp53 [V61,T05] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.String>
-;* V62 tmp54 [V62 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V63 tmp55 [V63 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V62 tmp54 [V62 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V63 tmp55 [V63 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V64 tmp56 [V64,T48] ( 2, 2 ) byref -> rax single-def "Inlining Arg"
; V65 tmp57 [V65,T64] ( 2, 2 ) int -> rsi "Inlining Arg"
; V66 tmp58 [V66,T37] ( 4, 2 ) ubyte -> rax "Inline return value spill temp"
;* V67 tmp59 [V67 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V68 tmp60 [V68 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V69 tmp61 [V69,T125] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V70 tmp62 [V70 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V71 tmp63 [V71 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V72 tmp64 [V72 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V73 tmp65 [V73 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V74 tmp66 [V74 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
;* V75 tmp67 [V75 ] ( 0, 0 ) byref -> zero-ref single-def "impAppendStmt"
;* V76 tmp68 [V76 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V77 tmp69 [V77 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V78 tmp70 [V78 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V79 tmp71 [V79 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V80 tmp72 [V80,T126] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V81 tmp73 [V81 ] ( 0, 0 ) struct (40) zero-ref do-not-enreg[SF] ld-addr-op "Inlining Arg" <System.Globalization.TimeSpanFormat+FormatLiterals>
;* V82 tmp74 [V82 ] ( 0, 0 ) struct (16) zero-ref "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
;* V83 tmp75 [V83 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V84 tmp76 [V84 ] ( 0, 0 ) struct (16) zero-ref "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
;* V85 tmp77 [V85 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V86 tmp78 [V86 ] ( 0, 0 ) struct (16) zero-ref "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
;* V87 tmp79 [V87 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V88 tmp80 [V88 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V89 tmp81 [V89,T06] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.String>
-;* V90 tmp82 [V90 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V91 tmp83 [V91 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V90 tmp82 [V90 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V91 tmp83 [V91 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V92 tmp84 [V92,T49] ( 2, 2 ) byref -> r8 single-def "Inlining Arg"
; V93 tmp85 [V93,T65] ( 2, 2 ) int -> rsi "Inlining Arg"
; V94 tmp86 [V94,T127] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V95 tmp87 [V95 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V96 tmp88 [V96 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V97 tmp89 [V97,T128] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V98 tmp90 [V98 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V99 tmp91 [V99 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V100 tmp92 [V100 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V101 tmp93 [V101 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V102 tmp94 [V102 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
;* V103 tmp95 [V103 ] ( 0, 0 ) byref -> zero-ref single-def "impAppendStmt"
;* V104 tmp96 [V104 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V105 tmp97 [V105 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V106 tmp98 [V106 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V107 tmp99 [V107 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V108 tmp100 [V108 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V109 tmp101 [V109,T07] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.String>
-;* V110 tmp102 [V110 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V111 tmp103 [V111 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V110 tmp102 [V110 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V111 tmp103 [V111 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V112 tmp104 [V112,T50] ( 2, 2 ) byref -> r8 single-def "Inlining Arg"
; V113 tmp105 [V113,T66] ( 2, 2 ) int -> rsi "Inlining Arg"
; V114 tmp106 [V114,T129] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V115 tmp107 [V115 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V116 tmp108 [V116 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V117 tmp109 [V117,T130] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V118 tmp110 [V118 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V119 tmp111 [V119 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V120 tmp112 [V120 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V121 tmp113 [V121 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V122 tmp114 [V122 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
;* V123 tmp115 [V123 ] ( 0, 0 ) byref -> zero-ref single-def "impAppendStmt"
;* V124 tmp116 [V124 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V125 tmp117 [V125 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V126 tmp118 [V126 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V127 tmp119 [V127 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V128 tmp120 [V128 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V129 tmp121 [V129,T08] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.String>
-;* V130 tmp122 [V130 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V131 tmp123 [V131 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V130 tmp122 [V130 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V131 tmp123 [V131 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V132 tmp124 [V132,T51] ( 2, 2 ) byref -> rax single-def "Inlining Arg"
; V133 tmp125 [V133,T67] ( 2, 2 ) int -> rsi "Inlining Arg"
; V134 tmp126 [V134,T38] ( 4, 2 ) ubyte -> rax "Inline return value spill temp"
;* V135 tmp127 [V135 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V136 tmp128 [V136 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V137 tmp129 [V137,T131] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V138 tmp130 [V138 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V139 tmp131 [V139 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V140 tmp132 [V140 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V141 tmp133 [V141 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V142 tmp134 [V142 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
;* V143 tmp135 [V143 ] ( 0, 0 ) byref -> zero-ref single-def "impAppendStmt"
;* V144 tmp136 [V144 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V145 tmp137 [V145 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V146 tmp138 [V146 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V147 tmp139 [V147 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V148 tmp140 [V148,T52] ( 2, 2 ) byref -> rdi single-def "impAppendStmt"
;* V149 tmp141 [V149 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V150 tmp142 [V150 ] ( 0, 0 ) struct (16) zero-ref multireg-arg "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V151 tmp143 [V151,T09] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.String>
-;* V152 tmp144 [V152 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V153 tmp145 [V153 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V152 tmp144 [V152 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V153 tmp145 [V153 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V154 tmp146 [V154,T53] ( 2, 2 ) byref -> rdx single-def "Inlining Arg"
; V155 tmp147 [V155,T68] ( 2, 2 ) int -> rsi "Inlining Arg"
; V156 tmp148 [V156,T132] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V157 tmp149 [V157 ] ( 0, 0 ) struct (40) zero-ref do-not-enreg[SF] ld-addr-op "Inlining Arg" <System.Globalization.TimeSpanFormat+FormatLiterals>
;* V158 tmp150 [V158 ] ( 0, 0 ) struct (16) zero-ref "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
;* V159 tmp151 [V159 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V160 tmp152 [V160 ] ( 0, 0 ) struct (16) zero-ref "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
;* V161 tmp153 [V161 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V162 tmp154 [V162 ] ( 0, 0 ) struct (16) zero-ref "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
;* V163 tmp155 [V163 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V164 tmp156 [V164 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V165 tmp157 [V165,T10] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.String>
-;* V166 tmp158 [V166 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V167 tmp159 [V167 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V166 tmp158 [V166 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V167 tmp159 [V167 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V168 tmp160 [V168,T54] ( 2, 2 ) byref -> rcx single-def "Inlining Arg"
; V169 tmp161 [V169,T69] ( 2, 2 ) int -> rsi "Inlining Arg"
; V170 tmp162 [V170,T133] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V171 tmp163 [V171 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V172 tmp164 [V172 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V173 tmp165 [V173,T134] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V174 tmp166 [V174 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V175 tmp167 [V175 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V176 tmp168 [V176 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V177 tmp169 [V177 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V178 tmp170 [V178 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
;* V179 tmp171 [V179 ] ( 0, 0 ) byref -> zero-ref single-def "impAppendStmt"
;* V180 tmp172 [V180 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V181 tmp173 [V181 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V182 tmp174 [V182 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V183 tmp175 [V183 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V184 tmp176 [V184 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V185 tmp177 [V185,T11] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.String>
-;* V186 tmp178 [V186 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V187 tmp179 [V187 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V186 tmp178 [V186 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V187 tmp179 [V187 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V188 tmp180 [V188,T55] ( 2, 2 ) byref -> rcx single-def "Inlining Arg"
; V189 tmp181 [V189,T70] ( 2, 2 ) int -> rsi "Inlining Arg"
; V190 tmp182 [V190,T135] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V191 tmp183 [V191 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V192 tmp184 [V192 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V193 tmp185 [V193,T136] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V194 tmp186 [V194 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V195 tmp187 [V195 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V196 tmp188 [V196 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V197 tmp189 [V197 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V198 tmp190 [V198 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
;* V199 tmp191 [V199 ] ( 0, 0 ) byref -> zero-ref single-def "impAppendStmt"
;* V200 tmp192 [V200 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V201 tmp193 [V201 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V202 tmp194 [V202 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V203 tmp195 [V203 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V204 tmp196 [V204 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V205 tmp197 [V205,T12] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.String>
-;* V206 tmp198 [V206 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V207 tmp199 [V207 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V206 tmp198 [V206 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V207 tmp199 [V207 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V208 tmp200 [V208,T56] ( 2, 2 ) byref -> rax single-def "Inlining Arg"
; V209 tmp201 [V209,T71] ( 2, 2 ) int -> rsi "Inlining Arg"
; V210 tmp202 [V210,T39] ( 4, 2 ) ubyte -> rax "Inline return value spill temp"
;* V211 tmp203 [V211 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V212 tmp204 [V212 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V213 tmp205 [V213,T137] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V214 tmp206 [V214 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V215 tmp207 [V215 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V216 tmp208 [V216 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V217 tmp209 [V217 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V218 tmp210 [V218 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
;* V219 tmp211 [V219 ] ( 0, 0 ) byref -> zero-ref single-def "impAppendStmt"
;* V220 tmp212 [V220 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V221 tmp213 [V221 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V222 tmp214 [V222 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V223 tmp215 [V223 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V224 tmp216 [V224,T57] ( 2, 2 ) byref -> rdi single-def "impAppendStmt"
;* V225 tmp217 [V225 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V226 tmp218 [V226 ] ( 0, 0 ) struct (16) zero-ref multireg-arg "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V227 tmp219 [V227,T13] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.String>
-;* V228 tmp220 [V228 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V229 tmp221 [V229 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V228 tmp220 [V228 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V229 tmp221 [V229 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V230 tmp222 [V230,T58] ( 2, 2 ) byref -> rdx single-def "Inlining Arg"
; V231 tmp223 [V231,T72] ( 2, 2 ) int -> rsi "Inlining Arg"
; V232 tmp224 [V232,T138] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V233 tmp225 [V233 ] ( 0, 0 ) struct (40) zero-ref do-not-enreg[SF] ld-addr-op "Inlining Arg" <System.Globalization.TimeSpanFormat+FormatLiterals>
;* V234 tmp226 [V234 ] ( 0, 0 ) struct (16) zero-ref "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
;* V235 tmp227 [V235 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V236 tmp228 [V236 ] ( 0, 0 ) struct (16) zero-ref "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
;* V237 tmp229 [V237 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V238 tmp230 [V238 ] ( 0, 0 ) struct (16) zero-ref "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
;* V239 tmp231 [V239 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V240 tmp232 [V240 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V241 tmp233 [V241,T14] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.String>
-;* V242 tmp234 [V242 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V243 tmp235 [V243 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V242 tmp234 [V242 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V243 tmp235 [V243 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V244 tmp236 [V244,T59] ( 2, 2 ) byref -> rcx single-def "Inlining Arg"
; V245 tmp237 [V245,T73] ( 2, 2 ) int -> rsi "Inlining Arg"
; V246 tmp238 [V246,T139] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V247 tmp239 [V247 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V248 tmp240 [V248 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V249 tmp241 [V249,T140] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V250 tmp242 [V250 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V251 tmp243 [V251 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V252 tmp244 [V252 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V253 tmp245 [V253 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V254 tmp246 [V254 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
;* V255 tmp247 [V255 ] ( 0, 0 ) byref -> zero-ref single-def "impAppendStmt"
;* V256 tmp248 [V256 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V257 tmp249 [V257 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V258 tmp250 [V258 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V259 tmp251 [V259 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V260 tmp252 [V260 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V261 tmp253 [V261,T15] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.String>
-;* V262 tmp254 [V262 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V263 tmp255 [V263 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V262 tmp254 [V262 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V263 tmp255 [V263 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V264 tmp256 [V264,T60] ( 2, 2 ) byref -> rcx single-def "Inlining Arg"
; V265 tmp257 [V265,T74] ( 2, 2 ) int -> rsi "Inlining Arg"
; V266 tmp258 [V266,T141] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V267 tmp259 [V267 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V268 tmp260 [V268 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V269 tmp261 [V269,T142] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V270 tmp262 [V270 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V271 tmp263 [V271 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V272 tmp264 [V272 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V273 tmp265 [V273 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V274 tmp266 [V274 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
;* V275 tmp267 [V275 ] ( 0, 0 ) byref -> zero-ref single-def "impAppendStmt"
;* V276 tmp268 [V276 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V277 tmp269 [V277 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V278 tmp270 [V278 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V279 tmp271 [V279 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V280 tmp272 [V280 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V281 tmp273 [V281,T16] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.String>
-;* V282 tmp274 [V282 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V283 tmp275 [V283 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V282 tmp274 [V282 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V283 tmp275 [V283 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V284 tmp276 [V284,T61] ( 2, 2 ) byref -> rax single-def "Inlining Arg"
; V285 tmp277 [V285,T75] ( 2, 2 ) int -> rsi "Inlining Arg"
; V286 tmp278 [V286,T40] ( 4, 2 ) ubyte -> rax "Inline return value spill temp"
;* V287 tmp279 [V287 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V288 tmp280 [V288 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V289 tmp281 [V289,T143] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V290 tmp282 [V290 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V291 tmp283 [V291 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V292 tmp284 [V292 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V293 tmp285 [V293 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V294 tmp286 [V294 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
;* V295 tmp287 [V295 ] ( 0, 0 ) byref -> zero-ref single-def "impAppendStmt"
;* V296 tmp288 [V296 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V297 tmp289 [V297 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V298 tmp290 [V298 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V299 tmp291 [V299 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V300 tmp292 [V300 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
;* V301 tmp293 [V301 ] ( 0, 0 ) struct (16) zero-ref "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V302 tmp294 [V302,T76] ( 2, 2 ) long -> rax "Inlining Arg"
; V303 tmp295 [V303,T19] ( 3, 3 ) int -> rax "Single return block return value"
; V304 tmp296 [V304,T144] ( 2, 1 ) long -> rax "field V09._ticks (fldOffset=0x0)" P-INDEP
; V305 tmp297 [V305,T93] ( 2, 1 ) byref -> rdi single-def "field V14._reference (fldOffset=0x0)" P-INDEP
; V306 tmp298 [V306,T145] ( 2, 1 ) int -> rdx "field V14._length (fldOffset=0x8)" P-INDEP
;* V307 tmp299 [V307 ] ( 0, 0 ) byref -> zero-ref single-def "field V15._reference (fldOffset=0x0)" P-INDEP
;* V308 tmp300 [V308 ] ( 0, 0 ) int -> zero-ref "field V15._length (fldOffset=0x8)" P-INDEP
; V309 tmp301 [V309,T94] ( 2, 1 ) byref -> rdi single-def "field V16._reference (fldOffset=0x0)" P-INDEP
; V310 tmp302 [V310,T146] ( 2, 1 ) int -> rdx "field V16._length (fldOffset=0x8)" P-INDEP
;* V311 tmp303 [V311 ] ( 0, 0 ) byref -> zero-ref single-def "field V17._reference (fldOffset=0x0)" P-INDEP
;* V312 tmp304 [V312 ] ( 0, 0 ) int -> zero-ref "field V17._length (fldOffset=0x8)" P-INDEP
; V313 tmp305 [V313,T95] ( 2, 1 ) byref -> rdi single-def "field V18._reference (fldOffset=0x0)" P-INDEP
; V314 tmp306 [V314,T147] ( 2, 1 ) int -> rdx "field V18._length (fldOffset=0x8)" P-INDEP
;* V315 tmp307 [V315 ] ( 0, 0 ) byref -> zero-ref single-def "field V19._reference (fldOffset=0x0)" P-INDEP
;* V316 tmp308 [V316 ] ( 0, 0 ) int -> zero-ref "field V19._length (fldOffset=0x8)" P-INDEP
-; V317 tmp309 [V317,T77] ( 3, 1.50) byref -> r8 "field V20._reference (fldOffset=0x0)" P-INDEP
-; V318 tmp310 [V318,T25] ( 5, 2.50) int -> rsi "field V20._length (fldOffset=0x8)" P-INDEP
-; V319 tmp311 [V319,T96] ( 2, 1 ) byref -> r8 single-def "field V22._reference (fldOffset=0x0)" P-INDEP
-; V320 tmp312 [V320,T148] ( 2, 1 ) int -> rsi "field V22._length (fldOffset=0x8)" P-INDEP
-;* V321 tmp313 [V321 ] ( 0, 0 ) byref -> zero-ref single-def "field V23._reference (fldOffset=0x0)" P-INDEP
-;* V322 tmp314 [V322 ] ( 0, 0 ) int -> zero-ref "field V23._length (fldOffset=0x8)" P-INDEP
+; V317 tmp309 [V317,T77] ( 3, 1.50) byref -> registers "field V20._reference (fldOffset=0x0)" P-INDEP
+; V318 tmp310 [V318,T25] ( 5, 2.50) int -> registers "field V20._length (fldOffset=0x8)" P-INDEP
+;* V319 tmp311 [V319 ] ( 0, 0 ) byref -> zero-ref single-def "field V22._reference (fldOffset=0x0)" P-INDEP
+;* V320 tmp312 [V320 ] ( 0, 0 ) int -> zero-ref "field V22._length (fldOffset=0x8)" P-INDEP
+; V321 tmp313 [V321,T96] ( 2, 1 ) byref -> r8 single-def "field V23._reference (fldOffset=0x0)" P-INDEP
+; V322 tmp314 [V322,T148] ( 2, 1 ) int -> rsi "field V23._length (fldOffset=0x8)" P-INDEP
;* V323 tmp315 [V323 ] ( 0, 0 ) byref -> zero-ref single-def "field V27._reference (fldOffset=0x0)" P-INDEP
;* V324 tmp316 [V324 ] ( 0, 0 ) int -> zero-ref "field V27._length (fldOffset=0x8)" P-INDEP
;* V325 tmp317 [V325 ] ( 0, 0 ) byref -> zero-ref single-def "field V28._reference (fldOffset=0x0)" P-INDEP
;* V326 tmp318 [V326 ] ( 0, 0 ) int -> zero-ref "field V28._length (fldOffset=0x8)" P-INDEP
;* V327 tmp319 [V327 ] ( 0, 0 ) byref -> zero-ref single-def "field V30._reference (fldOffset=0x0)" P-INDEP
;* V328 tmp320 [V328 ] ( 0, 0 ) int -> zero-ref "field V30._length (fldOffset=0x8)" P-INDEP
;* V329 tmp321 [V329 ] ( 0, 0 ) byref -> zero-ref single-def "field V32._reference (fldOffset=0x0)" P-INDEP
;* V330 tmp322 [V330 ] ( 0, 0 ) int -> zero-ref "field V32._length (fldOffset=0x8)" P-INDEP
;* V331 tmp323 [V331 ] ( 0, 0 ) byref -> zero-ref single-def "field V36._reference (fldOffset=0x0)" P-INDEP
;* V332 tmp324 [V332 ] ( 0, 0 ) int -> zero-ref "field V36._length (fldOffset=0x8)" P-INDEP
;* V333 tmp325 [V333 ] ( 0, 0 ) byref -> zero-ref single-def "field V37._reference (fldOffset=0x0)" P-INDEP
;* V334 tmp326 [V334 ] ( 0, 0 ) int -> zero-ref "field V37._length (fldOffset=0x8)" P-INDEP
;* V335 tmp327 [V335 ] ( 0, 0 ) byref -> zero-ref "field V38._reference (fldOffset=0x0)" P-INDEP
;* V336 tmp328 [V336 ] ( 0, 0 ) int -> zero-ref "field V38._length (fldOffset=0x8)" P-INDEP
;* V337 tmp329 [V337 ] ( 0, 0 ) byref -> zero-ref "field V39._reference (fldOffset=0x0)" P-INDEP
;* V338 tmp330 [V338 ] ( 0, 0 ) int -> zero-ref "field V39._length (fldOffset=0x8)" P-INDEP
-; V339 tmp331 [V339,T78] ( 3, 1.50) byref -> r8 "field V40._reference (fldOffset=0x0)" P-INDEP
-; V340 tmp332 [V340,T26] ( 5, 2.50) int -> rsi "field V40._length (fldOffset=0x8)" P-INDEP
-; V341 tmp333 [V341,T97] ( 2, 1 ) byref -> r8 single-def "field V42._reference (fldOffset=0x0)" P-INDEP
-; V342 tmp334 [V342,T149] ( 2, 1 ) int -> rsi "field V42._length (fldOffset=0x8)" P-INDEP
-;* V343 tmp335 [V343 ] ( 0, 0 ) byref -> zero-ref single-def "field V43._reference (fldOffset=0x0)" P-INDEP
-;* V344 tmp336 [V344 ] ( 0, 0 ) int -> zero-ref "field V43._length (fldOffset=0x8)" P-INDEP
+; V339 tmp331 [V339,T78] ( 3, 1.50) byref -> registers "field V40._reference (fldOffset=0x0)" P-INDEP
+; V340 tmp332 [V340,T26] ( 5, 2.50) int -> registers "field V40._length (fldOffset=0x8)" P-INDEP
+;* V341 tmp333 [V341 ] ( 0, 0 ) byref -> zero-ref single-def "field V42._reference (fldOffset=0x0)" P-INDEP
+;* V342 tmp334 [V342 ] ( 0, 0 ) int -> zero-ref "field V42._length (fldOffset=0x8)" P-INDEP
+; V343 tmp335 [V343,T97] ( 2, 1 ) byref -> r8 single-def "field V43._reference (fldOffset=0x0)" P-INDEP
+; V344 tmp336 [V344,T149] ( 2, 1 ) int -> rsi "field V43._length (fldOffset=0x8)" P-INDEP
;* V345 tmp337 [V345 ] ( 0, 0 ) byref -> zero-ref single-def "field V47._reference (fldOffset=0x0)" P-INDEP
;* V346 tmp338 [V346 ] ( 0, 0 ) int -> zero-ref "field V47._length (fldOffset=0x8)" P-INDEP
;* V347 tmp339 [V347 ] ( 0, 0 ) byref -> zero-ref single-def "field V48._reference (fldOffset=0x0)" P-INDEP
;* V348 tmp340 [V348 ] ( 0, 0 ) int -> zero-ref "field V48._length (fldOffset=0x8)" P-INDEP
;* V349 tmp341 [V349 ] ( 0, 0 ) byref -> zero-ref single-def "field V50._reference (fldOffset=0x0)" P-INDEP
;* V350 tmp342 [V350 ] ( 0, 0 ) int -> zero-ref "field V50._length (fldOffset=0x8)" P-INDEP
;* V351 tmp343 [V351 ] ( 0, 0 ) byref -> zero-ref single-def "field V52._reference (fldOffset=0x0)" P-INDEP
;* V352 tmp344 [V352 ] ( 0, 0 ) int -> zero-ref "field V52._length (fldOffset=0x8)" P-INDEP
;* V353 tmp345 [V353 ] ( 0, 0 ) byref -> zero-ref single-def "field V56._reference (fldOffset=0x0)" P-INDEP
;* V354 tmp346 [V354 ] ( 0, 0 ) int -> zero-ref "field V56._length (fldOffset=0x8)" P-INDEP
;* V355 tmp347 [V355 ] ( 0, 0 ) byref -> zero-ref single-def "field V57._reference (fldOffset=0x0)" P-INDEP
;* V356 tmp348 [V356 ] ( 0, 0 ) int -> zero-ref "field V57._length (fldOffset=0x8)" P-INDEP
;* V357 tmp349 [V357 ] ( 0, 0 ) byref -> zero-ref "field V58._reference (fldOffset=0x0)" P-INDEP
;* V358 tmp350 [V358 ] ( 0, 0 ) int -> zero-ref "field V58._length (fldOffset=0x8)" P-INDEP
;* V359 tmp351 [V359 ] ( 0, 0 ) byref -> zero-ref "field V59._reference (fldOffset=0x0)" P-INDEP
;* V360 tmp352 [V360 ] ( 0, 0 ) int -> zero-ref "field V59._length (fldOffset=0x8)" P-INDEP
-; V361 tmp353 [V361,T79] ( 3, 1.50) byref -> rax "field V60._reference (fldOffset=0x0)" P-INDEP
-; V362 tmp354 [V362,T27] ( 5, 2.50) int -> rsi "field V60._length (fldOffset=0x8)" P-INDEP
-; V363 tmp355 [V363,T98] ( 2, 1 ) byref -> rax single-def "field V62._reference (fldOffset=0x0)" P-INDEP
-; V364 tmp356 [V364,T150] ( 2, 1 ) int -> rsi "field V62._length (fldOffset=0x8)" P-INDEP
-;* V365 tmp357 [V365 ] ( 0, 0 ) byref -> zero-ref single-def "field V63._reference (fldOffset=0x0)" P-INDEP
-;* V366 tmp358 [V366 ] ( 0, 0 ) int -> zero-ref "field V63._length (fldOffset=0x8)" P-INDEP
+; V361 tmp353 [V361,T79] ( 3, 1.50) byref -> registers "field V60._reference (fldOffset=0x0)" P-INDEP
+; V362 tmp354 [V362,T27] ( 5, 2.50) int -> registers "field V60._length (fldOffset=0x8)" P-INDEP
+;* V363 tmp355 [V363 ] ( 0, 0 ) byref -> zero-ref single-def "field V62._reference (fldOffset=0x0)" P-INDEP
+;* V364 tmp356 [V364 ] ( 0, 0 ) int -> zero-ref "field V62._length (fldOffset=0x8)" P-INDEP
+; V365 tmp357 [V365,T98] ( 2, 1 ) byref -> rax single-def "field V63._reference (fldOffset=0x0)" P-INDEP
+; V366 tmp358 [V366,T150] ( 2, 1 ) int -> rsi "field V63._length (fldOffset=0x8)" P-INDEP
;* V367 tmp359 [V367 ] ( 0, 0 ) byref -> zero-ref single-def "field V67._reference (fldOffset=0x0)" P-INDEP
;* V368 tmp360 [V368 ] ( 0, 0 ) int -> zero-ref "field V67._length (fldOffset=0x8)" P-INDEP
;* V369 tmp361 [V369 ] ( 0, 0 ) byref -> zero-ref single-def "field V68._reference (fldOffset=0x0)" P-INDEP
;* V370 tmp362 [V370 ] ( 0, 0 ) int -> zero-ref "field V68._length (fldOffset=0x8)" P-INDEP
;* V371 tmp363 [V371 ] ( 0, 0 ) byref -> zero-ref single-def "field V70._reference (fldOffset=0x0)" P-INDEP
;* V372 tmp364 [V372 ] ( 0, 0 ) int -> zero-ref "field V70._length (fldOffset=0x8)" P-INDEP
;* V373 tmp365 [V373 ] ( 0, 0 ) byref -> zero-ref single-def "field V72._reference (fldOffset=0x0)" P-INDEP
;* V374 tmp366 [V374 ] ( 0, 0 ) int -> zero-ref "field V72._length (fldOffset=0x8)" P-INDEP
;* V375 tmp367 [V375 ] ( 0, 0 ) byref -> zero-ref single-def "field V76._reference (fldOffset=0x0)" P-INDEP
;* V376 tmp368 [V376 ] ( 0, 0 ) int -> zero-ref "field V76._length (fldOffset=0x8)" P-INDEP
;* V377 tmp369 [V377 ] ( 0, 0 ) byref -> zero-ref single-def "field V77._reference (fldOffset=0x0)" P-INDEP
;* V378 tmp370 [V378 ] ( 0, 0 ) int -> zero-ref "field V77._length (fldOffset=0x8)" P-INDEP
;* V379 tmp371 [V379 ] ( 0, 0 ) byref -> zero-ref "field V78._reference (fldOffset=0x0)" P-INDEP
;* V380 tmp372 [V380 ] ( 0, 0 ) int -> zero-ref "field V78._length (fldOffset=0x8)" P-INDEP
;* V381 tmp373 [V381 ] ( 0, 0 ) byref -> zero-ref "field V79._reference (fldOffset=0x0)" P-INDEP
;* V382 tmp374 [V382 ] ( 0, 0 ) int -> zero-ref "field V79._length (fldOffset=0x8)" P-INDEP
; V383 tmp375 [V383,T99] ( 2, 1 ) byref -> rdi single-def "field V82._reference (fldOffset=0x0)" P-INDEP
; V384 tmp376 [V384,T151] ( 2, 1 ) int -> rdx "field V82._length (fldOffset=0x8)" P-INDEP
;* V385 tmp377 [V385 ] ( 0, 0 ) byref -> zero-ref single-def "field V83._reference (fldOffset=0x0)" P-INDEP
;* V386 tmp378 [V386 ] ( 0, 0 ) int -> zero-ref "field V83._length (fldOffset=0x8)" P-INDEP
; V387 tmp379 [V387,T100] ( 2, 1 ) byref -> rdi single-def "field V84._reference (fldOffset=0x0)" P-INDEP
; V388 tmp380 [V388,T152] ( 2, 1 ) int -> rdx "field V84._length (fldOffset=0x8)" P-INDEP
;* V389 tmp381 [V389 ] ( 0, 0 ) byref -> zero-ref single-def "field V85._reference (fldOffset=0x0)" P-INDEP
;* V390 tmp382 [V390 ] ( 0, 0 ) int -> zero-ref "field V85._length (fldOffset=0x8)" P-INDEP
; V391 tmp383 [V391,T101] ( 2, 1 ) byref -> rdi single-def "field V86._reference (fldOffset=0x0)" P-INDEP
; V392 tmp384 [V392,T153] ( 2, 1 ) int -> rdx "field V86._length (fldOffset=0x8)" P-INDEP
;* V393 tmp385 [V393 ] ( 0, 0 ) byref -> zero-ref single-def "field V87._reference (fldOffset=0x0)" P-INDEP
;* V394 tmp386 [V394 ] ( 0, 0 ) int -> zero-ref "field V87._length (fldOffset=0x8)" P-INDEP
-; V395 tmp387 [V395,T80] ( 3, 1.50) byref -> r8 "field V88._reference (fldOffset=0x0)" P-INDEP
-; V396 tmp388 [V396,T28] ( 5, 2.50) int -> rsi "field V88._length (fldOffset=0x8)" P-INDEP
-; V397 tmp389 [V397,T102] ( 2, 1 ) byref -> r8 single-def "field V90._reference (fldOffset=0x0)" P-INDEP
-; V398 tmp390 [V398,T154] ( 2, 1 ) int -> rsi "field V90._length (fldOffset=0x8)" P-INDEP
-;* V399 tmp391 [V399 ] ( 0, 0 ) byref -> zero-ref single-def "field V91._reference (fldOffset=0x0)" P-INDEP
-;* V400 tmp392 [V400 ] ( 0, 0 ) int -> zero-ref "field V91._length (fldOffset=0x8)" P-INDEP
+; V395 tmp387 [V395,T80] ( 3, 1.50) byref -> registers "field V88._reference (fldOffset=0x0)" P-INDEP
+; V396 tmp388 [V396,T28] ( 5, 2.50) int -> registers "field V88._length (fldOffset=0x8)" P-INDEP
+;* V397 tmp389 [V397 ] ( 0, 0 ) byref -> zero-ref single-def "field V90._reference (fldOffset=0x0)" P-INDEP
+;* V398 tmp390 [V398 ] ( 0, 0 ) int -> zero-ref "field V90._length (fldOffset=0x8)" P-INDEP
+; V399 tmp391 [V399,T102] ( 2, 1 ) byref -> r8 single-def "field V91._reference (fldOffset=0x0)" P-INDEP
+; V400 tmp392 [V400,T154] ( 2, 1 ) int -> rsi "field V91._length (fldOffset=0x8)" P-INDEP
;* V401 tmp393 [V401 ] ( 0, 0 ) byref -> zero-ref single-def "field V95._reference (fldOffset=0x0)" P-INDEP
;* V402 tmp394 [V402 ] ( 0, 0 ) int -> zero-ref "field V95._length (fldOffset=0x8)" P-INDEP
;* V403 tmp395 [V403 ] ( 0, 0 ) byref -> zero-ref single-def "field V96._reference (fldOffset=0x0)" P-INDEP
;* V404 tmp396 [V404 ] ( 0, 0 ) int -> zero-ref "field V96._length (fldOffset=0x8)" P-INDEP
;* V405 tmp397 [V405 ] ( 0, 0 ) byref -> zero-ref single-def "field V98._reference (fldOffset=0x0)" P-INDEP
;* V406 tmp398 [V406 ] ( 0, 0 ) int -> zero-ref "field V98._length (fldOffset=0x8)" P-INDEP
;* V407 tmp399 [V407 ] ( 0, 0 ) byref -> zero-ref single-def "field V100._reference (fldOffset=0x0)" P-INDEP
;* V408 tmp400 [V408 ] ( 0, 0 ) int -> zero-ref "field V100._length (fldOffset=0x8)" P-INDEP
;* V409 tmp401 [V409 ] ( 0, 0 ) byref -> zero-ref single-def "field V104._reference (fldOffset=0x0)" P-INDEP
;* V410 tmp402 [V410 ] ( 0, 0 ) int -> zero-ref "field V104._length (fldOffset=0x8)" P-INDEP
;* V411 tmp403 [V411 ] ( 0, 0 ) byref -> zero-ref single-def "field V105._reference (fldOffset=0x0)" P-INDEP
;* V412 tmp404 [V412 ] ( 0, 0 ) int -> zero-ref "field V105._length (fldOffset=0x8)" P-INDEP
;* V413 tmp405 [V413 ] ( 0, 0 ) byref -> zero-ref "field V106._reference (fldOffset=0x0)" P-INDEP
;* V414 tmp406 [V414 ] ( 0, 0 ) int -> zero-ref "field V106._length (fldOffset=0x8)" P-INDEP
;* V415 tmp407 [V415 ] ( 0, 0 ) byref -> zero-ref "field V107._reference (fldOffset=0x0)" P-INDEP
;* V416 tmp408 [V416 ] ( 0, 0 ) int -> zero-ref "field V107._length (fldOffset=0x8)" P-INDEP
-; V417 tmp409 [V417,T81] ( 3, 1.50) byref -> r8 "field V108._reference (fldOffset=0x0)" P-INDEP
-; V418 tmp410 [V418,T29] ( 5, 2.50) int -> rsi "field V108._length (fldOffset=0x8)" P-INDEP
-; V419 tmp411 [V419,T103] ( 2, 1 ) byref -> r8 single-def "field V110._reference (fldOffset=0x0)" P-INDEP
-; V420 tmp412 [V420,T155] ( 2, 1 ) int -> rsi "field V110._length (fldOffset=0x8)" P-INDEP
-;* V421 tmp413 [V421 ] ( 0, 0 ) byref -> zero-ref single-def "field V111._reference (fldOffset=0x0)" P-INDEP
-;* V422 tmp414 [V422 ] ( 0, 0 ) int -> zero-ref "field V111._length (fldOffset=0x8)" P-INDEP
+; V417 tmp409 [V417,T81] ( 3, 1.50) byref -> registers "field V108._reference (fldOffset=0x0)" P-INDEP
+; V418 tmp410 [V418,T29] ( 5, 2.50) int -> registers "field V108._length (fldOffset=0x8)" P-INDEP
+;* V419 tmp411 [V419 ] ( 0, 0 ) byref -> zero-ref single-def "field V110._reference (fldOffset=0x0)" P-INDEP
+;* V420 tmp412 [V420 ] ( 0, 0 ) int -> zero-ref "field V110._length (fldOffset=0x8)" P-INDEP
+; V421 tmp413 [V421,T103] ( 2, 1 ) byref -> r8 single-def "field V111._reference (fldOffset=0x0)" P-INDEP
+; V422 tmp414 [V422,T155] ( 2, 1 ) int -> rsi "field V111._length (fldOffset=0x8)" P-INDEP
;* V423 tmp415 [V423 ] ( 0, 0 ) byref -> zero-ref single-def "field V115._reference (fldOffset=0x0)" P-INDEP
;* V424 tmp416 [V424 ] ( 0, 0 ) int -> zero-ref "field V115._length (fldOffset=0x8)" P-INDEP
;* V425 tmp417 [V425 ] ( 0, 0 ) byref -> zero-ref single-def "field V116._reference (fldOffset=0x0)" P-INDEP
;* V426 tmp418 [V426 ] ( 0, 0 ) int -> zero-ref "field V116._length (fldOffset=0x8)" P-INDEP
;* V427 tmp419 [V427 ] ( 0, 0 ) byref -> zero-ref single-def "field V118._reference (fldOffset=0x0)" P-INDEP
;* V428 tmp420 [V428 ] ( 0, 0 ) int -> zero-ref "field V118._length (fldOffset=0x8)" P-INDEP
;* V429 tmp421 [V429 ] ( 0, 0 ) byref -> zero-ref single-def "field V120._reference (fldOffset=0x0)" P-INDEP
;* V430 tmp422 [V430 ] ( 0, 0 ) int -> zero-ref "field V120._length (fldOffset=0x8)" P-INDEP
;* V431 tmp423 [V431 ] ( 0, 0 ) byref -> zero-ref single-def "field V124._reference (fldOffset=0x0)" P-INDEP
;* V432 tmp424 [V432 ] ( 0, 0 ) int -> zero-ref "field V124._length (fldOffset=0x8)" P-INDEP
;* V433 tmp425 [V433 ] ( 0, 0 ) byref -> zero-ref single-def "field V125._reference (fldOffset=0x0)" P-INDEP
;* V434 tmp426 [V434 ] ( 0, 0 ) int -> zero-ref "field V125._length (fldOffset=0x8)" P-INDEP
;* V435 tmp427 [V435 ] ( 0, 0 ) byref -> zero-ref "field V126._reference (fldOffset=0x0)" P-INDEP
;* V436 tmp428 [V436 ] ( 0, 0 ) int -> zero-ref "field V126._length (fldOffset=0x8)" P-INDEP
;* V437 tmp429 [V437 ] ( 0, 0 ) byref -> zero-ref "field V127._reference (fldOffset=0x0)" P-INDEP
;* V438 tmp430 [V438 ] ( 0, 0 ) int -> zero-ref "field V127._length (fldOffset=0x8)" P-INDEP
-; V439 tmp431 [V439,T82] ( 3, 1.50) byref -> rax "field V128._reference (fldOffset=0x0)" P-INDEP
-; V440 tmp432 [V440,T30] ( 5, 2.50) int -> rsi "field V128._length (fldOffset=0x8)" P-INDEP
-; V441 tmp433 [V441,T104] ( 2, 1 ) byref -> rax single-def "field V130._reference (fldOffset=0x0)" P-INDEP
-; V442 tmp434 [V442,T156] ( 2, 1 ) int -> rsi "field V130._length (fldOffset=0x8)" P-INDEP
-;* V443 tmp435 [V443 ] ( 0, 0 ) byref -> zero-ref single-def "field V131._reference (fldOffset=0x0)" P-INDEP
-;* V444 tmp436 [V444 ] ( 0, 0 ) int -> zero-ref "field V131._length (fldOffset=0x8)" P-INDEP
+; V439 tmp431 [V439,T82] ( 3, 1.50) byref -> registers "field V128._reference (fldOffset=0x0)" P-INDEP
+; V440 tmp432 [V440,T30] ( 5, 2.50) int -> registers "field V128._length (fldOffset=0x8)" P-INDEP
+;* V441 tmp433 [V441 ] ( 0, 0 ) byref -> zero-ref single-def "field V130._reference (fldOffset=0x0)" P-INDEP
+;* V442 tmp434 [V442 ] ( 0, 0 ) int -> zero-ref "field V130._length (fldOffset=0x8)" P-INDEP
+; V443 tmp435 [V443,T104] ( 2, 1 ) byref -> rax single-def "field V131._reference (fldOffset=0x0)" P-INDEP
+; V444 tmp436 [V444,T156] ( 2, 1 ) int -> rsi "field V131._length (fldOffset=0x8)" P-INDEP
;* V445 tmp437 [V445 ] ( 0, 0 ) byref -> zero-ref single-def "field V135._reference (fldOffset=0x0)" P-INDEP
;* V446 tmp438 [V446 ] ( 0, 0 ) int -> zero-ref "field V135._length (fldOffset=0x8)" P-INDEP
;* V447 tmp439 [V447 ] ( 0, 0 ) byref -> zero-ref single-def "field V136._reference (fldOffset=0x0)" P-INDEP
;* V448 tmp440 [V448 ] ( 0, 0 ) int -> zero-ref "field V136._length (fldOffset=0x8)" P-INDEP
;* V449 tmp441 [V449 ] ( 0, 0 ) byref -> zero-ref single-def "field V138._reference (fldOffset=0x0)" P-INDEP
;* V450 tmp442 [V450 ] ( 0, 0 ) int -> zero-ref "field V138._length (fldOffset=0x8)" P-INDEP
;* V451 tmp443 [V451 ] ( 0, 0 ) byref -> zero-ref single-def "field V140._reference (fldOffset=0x0)" P-INDEP
;* V452 tmp444 [V452 ] ( 0, 0 ) int -> zero-ref "field V140._length (fldOffset=0x8)" P-INDEP
;* V453 tmp445 [V453 ] ( 0, 0 ) byref -> zero-ref single-def "field V144._reference (fldOffset=0x0)" P-INDEP
;* V454 tmp446 [V454 ] ( 0, 0 ) int -> zero-ref "field V144._length (fldOffset=0x8)" P-INDEP
;* V455 tmp447 [V455 ] ( 0, 0 ) byref -> zero-ref single-def "field V145._reference (fldOffset=0x0)" P-INDEP
;* V456 tmp448 [V456 ] ( 0, 0 ) int -> zero-ref "field V145._length (fldOffset=0x8)" P-INDEP
;* V457 tmp449 [V457 ] ( 0, 0 ) byref -> zero-ref "field V146._reference (fldOffset=0x0)" P-INDEP
;* V458 tmp450 [V458 ] ( 0, 0 ) int -> zero-ref "field V146._length (fldOffset=0x8)" P-INDEP
;* V459 tmp451 [V459 ] ( 0, 0 ) byref -> zero-ref "field V147._reference (fldOffset=0x0)" P-INDEP
;* V460 tmp452 [V460 ] ( 0, 0 ) int -> zero-ref "field V147._length (fldOffset=0x8)" P-INDEP
;* V461 tmp453 [V461 ] ( 0, 0 ) byref -> zero-ref "field V149._reference (fldOffset=0x0)" P-INDEP
;* V462 tmp454 [V462 ] ( 0, 0 ) int -> zero-ref "field V149._length (fldOffset=0x8)" P-INDEP
-; V463 tmp455 [V463,T83] ( 3, 1.50) byref -> rdx "field V150._reference (fldOffset=0x0)" P-INDEP
-; V464 tmp456 [V464,T91] ( 3, 1.50) int -> rcx "field V150._length (fldOffset=0x8)" P-INDEP
-; V465 tmp457 [V465,T105] ( 2, 1 ) byref -> rdx single-def "field V152._reference (fldOffset=0x0)" P-INDEP
-; V466 tmp458 [V466,T157] ( 2, 1 ) int -> rsi "field V152._length (fldOffset=0x8)" P-INDEP
-;* V467 tmp459 [V467 ] ( 0, 0 ) byref -> zero-ref single-def "field V153._reference (fldOffset=0x0)" P-INDEP
-;* V468 tmp460 [V468 ] ( 0, 0 ) int -> zero-ref "field V153._length (fldOffset=0x8)" P-INDEP
+; V463 tmp455 [V463,T83] ( 3, 1.50) byref -> registers "field V150._reference (fldOffset=0x0)" P-INDEP
+; V464 tmp456 [V464,T91] ( 3, 1.50) int -> registers "field V150._length (fldOffset=0x8)" P-INDEP
+;* V465 tmp457 [V465 ] ( 0, 0 ) byref -> zero-ref single-def "field V152._reference (fldOffset=0x0)" P-INDEP
+;* V466 tmp458 [V466 ] ( 0, 0 ) int -> zero-ref "field V152._length (fldOffset=0x8)" P-INDEP
+; V467 tmp459 [V467,T105] ( 2, 1 ) byref -> rdx single-def "field V153._reference (fldOffset=0x0)" P-INDEP
+; V468 tmp460 [V468,T157] ( 2, 1 ) int -> rsi "field V153._length (fldOffset=0x8)" P-INDEP
; V469 tmp461 [V469,T106] ( 2, 1 ) byref -> rdi single-def "field V158._reference (fldOffset=0x0)" P-INDEP
; V470 tmp462 [V470,T158] ( 2, 1 ) int -> rdx "field V158._length (fldOffset=0x8)" P-INDEP
;* V471 tmp463 [V471 ] ( 0, 0 ) byref -> zero-ref single-def "field V159._reference (fldOffset=0x0)" P-INDEP
;* V472 tmp464 [V472 ] ( 0, 0 ) int -> zero-ref "field V159._length (fldOffset=0x8)" P-INDEP
; V473 tmp465 [V473,T107] ( 2, 1 ) byref -> rdi single-def "field V160._reference (fldOffset=0x0)" P-INDEP
; V474 tmp466 [V474,T159] ( 2, 1 ) int -> rdx "field V160._length (fldOffset=0x8)" P-INDEP
;* V475 tmp467 [V475 ] ( 0, 0 ) byref -> zero-ref single-def "field V161._reference (fldOffset=0x0)" P-INDEP
;* V476 tmp468 [V476 ] ( 0, 0 ) int -> zero-ref "field V161._length (fldOffset=0x8)" P-INDEP
; V477 tmp469 [V477,T108] ( 2, 1 ) byref -> rdi single-def "field V162._reference (fldOffset=0x0)" P-INDEP
; V478 tmp470 [V478,T160] ( 2, 1 ) int -> rdx "field V162._length (fldOffset=0x8)" P-INDEP
;* V479 tmp471 [V479 ] ( 0, 0 ) byref -> zero-ref single-def "field V163._reference (fldOffset=0x0)" P-INDEP
;* V480 tmp472 [V480 ] ( 0, 0 ) int -> zero-ref "field V163._length (fldOffset=0x8)" P-INDEP
-; V481 tmp473 [V481,T84] ( 3, 1.50) byref -> rcx "field V164._reference (fldOffset=0x0)" P-INDEP
-; V482 tmp474 [V482,T31] ( 5, 2.50) int -> rsi "field V164._length (fldOffset=0x8)" P-INDEP
-; V483 tmp475 [V483,T109] ( 2, 1 ) byref -> rcx single-def "field V166._reference (fldOffset=0x0)" P-INDEP
-; V484 tmp476 [V484,T161] ( 2, 1 ) int -> rsi "field V166._length (fldOffset=0x8)" P-INDEP
-;* V485 tmp477 [V485 ] ( 0, 0 ) byref -> zero-ref single-def "field V167._reference (fldOffset=0x0)" P-INDEP
-;* V486 tmp478 [V486 ] ( 0, 0 ) int -> zero-ref "field V167._length (fldOffset=0x8)" P-INDEP
+; V481 tmp473 [V481,T84] ( 3, 1.50) byref -> registers "field V164._reference (fldOffset=0x0)" P-INDEP
+; V482 tmp474 [V482,T31] ( 5, 2.50) int -> registers "field V164._length (fldOffset=0x8)" P-INDEP
+;* V483 tmp475 [V483 ] ( 0, 0 ) byref -> zero-ref single-def "field V166._reference (fldOffset=0x0)" P-INDEP
+;* V484 tmp476 [V484 ] ( 0, 0 ) int -> zero-ref "field V166._length (fldOffset=0x8)" P-INDEP
+; V485 tmp477 [V485,T109] ( 2, 1 ) byref -> rcx single-def "field V167._reference (fldOffset=0x0)" P-INDEP
+; V486 tmp478 [V486,T161] ( 2, 1 ) int -> rsi "field V167._length (fldOffset=0x8)" P-INDEP
;* V487 tmp479 [V487 ] ( 0, 0 ) byref -> zero-ref single-def "field V171._reference (fldOffset=0x0)" P-INDEP
;* V488 tmp480 [V488 ] ( 0, 0 ) int -> zero-ref "field V171._length (fldOffset=0x8)" P-INDEP
;* V489 tmp481 [V489 ] ( 0, 0 ) byref -> zero-ref single-def "field V172._reference (fldOffset=0x0)" P-INDEP
;* V490 tmp482 [V490 ] ( 0, 0 ) int -> zero-ref "field V172._length (fldOffset=0x8)" P-INDEP
;* V491 tmp483 [V491 ] ( 0, 0 ) byref -> zero-ref single-def "field V174._reference (fldOffset=0x0)" P-INDEP
;* V492 tmp484 [V492 ] ( 0, 0 ) int -> zero-ref "field V174._length (fldOffset=0x8)" P-INDEP
;* V493 tmp485 [V493 ] ( 0, 0 ) byref -> zero-ref single-def "field V176._reference (fldOffset=0x0)" P-INDEP
;* V494 tmp486 [V494 ] ( 0, 0 ) int -> zero-ref "field V176._length (fldOffset=0x8)" P-INDEP
;* V495 tmp487 [V495 ] ( 0, 0 ) byref -> zero-ref single-def "field V180._reference (fldOffset=0x0)" P-INDEP
;* V496 tmp488 [V496 ] ( 0, 0 ) int -> zero-ref "field V180._length (fldOffset=0x8)" P-INDEP
;* V497 tmp489 [V497 ] ( 0, 0 ) byref -> zero-ref single-def "field V181._reference (fldOffset=0x0)" P-INDEP
;* V498 tmp490 [V498 ] ( 0, 0 ) int -> zero-ref "field V181._length (fldOffset=0x8)" P-INDEP
;* V499 tmp491 [V499 ] ( 0, 0 ) byref -> zero-ref "field V182._reference (fldOffset=0x0)" P-INDEP
;* V500 tmp492 [V500 ] ( 0, 0 ) int -> zero-ref "field V182._length (fldOffset=0x8)" P-INDEP
;* V501 tmp493 [V501 ] ( 0, 0 ) byref -> zero-ref "field V183._reference (fldOffset=0x0)" P-INDEP
;* V502 tmp494 [V502 ] ( 0, 0 ) int -> zero-ref "field V183._length (fldOffset=0x8)" P-INDEP
-; V503 tmp495 [V503,T85] ( 3, 1.50) byref -> rcx "field V184._reference (fldOffset=0x0)" P-INDEP
-; V504 tmp496 [V504,T32] ( 5, 2.50) int -> rsi "field V184._length (fldOffset=0x8)" P-INDEP
-; V505 tmp497 [V505,T110] ( 2, 1 ) byref -> rcx single-def "field V186._reference (fldOffset=0x0)" P-INDEP
-; V506 tmp498 [V506,T162] ( 2, 1 ) int -> rsi "field V186._length (fldOffset=0x8)" P-INDEP
-;* V507 tmp499 [V507 ] ( 0, 0 ) byref -> zero-ref single-def "field V187._reference (fldOffset=0x0)" P-INDEP
-;* V508 tmp500 [V508 ] ( 0, 0 ) int -> zero-ref "field V187._length (fldOffset=0x8)" P-INDEP
+; V503 tmp495 [V503,T85] ( 3, 1.50) byref -> registers "field V184._reference (fldOffset=0x0)" P-INDEP
+; V504 tmp496 [V504,T32] ( 5, 2.50) int -> registers "field V184._length (fldOffset=0x8)" P-INDEP
+;* V505 tmp497 [V505 ] ( 0, 0 ) byref -> zero-ref single-def "field V186._reference (fldOffset=0x0)" P-INDEP
+;* V506 tmp498 [V506 ] ( 0, 0 ) int -> zero-ref "field V186._length (fldOffset=0x8)" P-INDEP
+; V507 tmp499 [V507,T110] ( 2, 1 ) byref -> rcx single-def "field V187._reference (fldOffset=0x0)" P-INDEP
+; V508 tmp500 [V508,T162] ( 2, 1 ) int -> rsi "field V187._length (fldOffset=0x8)" P-INDEP
;* V509 tmp501 [V509 ] ( 0, 0 ) byref -> zero-ref single-def "field V191._reference (fldOffset=0x0)" P-INDEP
;* V510 tmp502 [V510 ] ( 0, 0 ) int -> zero-ref "field V191._length (fldOffset=0x8)" P-INDEP
;* V511 tmp503 [V511 ] ( 0, 0 ) byref -> zero-ref single-def "field V192._reference (fldOffset=0x0)" P-INDEP
;* V512 tmp504 [V512 ] ( 0, 0 ) int -> zero-ref "field V192._length (fldOffset=0x8)" P-INDEP
;* V513 tmp505 [V513 ] ( 0, 0 ) byref -> zero-ref single-def "field V194._reference (fldOffset=0x0)" P-INDEP
;* V514 tmp506 [V514 ] ( 0, 0 ) int -> zero-ref "field V194._length (fldOffset=0x8)" P-INDEP
;* V515 tmp507 [V515 ] ( 0, 0 ) byref -> zero-ref single-def "field V196._reference (fldOffset=0x0)" P-INDEP
;* V516 tmp508 [V516 ] ( 0, 0 ) int -> zero-ref "field V196._length (fldOffset=0x8)" P-INDEP
;* V517 tmp509 [V517 ] ( 0, 0 ) byref -> zero-ref single-def "field V200._reference (fldOffset=0x0)" P-INDEP
;* V518 tmp510 [V518 ] ( 0, 0 ) int -> zero-ref "field V200._length (fldOffset=0x8)" P-INDEP
;* V519 tmp511 [V519 ] ( 0, 0 ) byref -> zero-ref single-def "field V201._reference (fldOffset=0x0)" P-INDEP
;* V520 tmp512 [V520 ] ( 0, 0 ) int -> zero-ref "field V201._length (fldOffset=0x8)" P-INDEP
;* V521 tmp513 [V521 ] ( 0, 0 ) byref -> zero-ref "field V202._reference (fldOffset=0x0)" P-INDEP
;* V522 tmp514 [V522 ] ( 0, 0 ) int -> zero-ref "field V202._length (fldOffset=0x8)" P-INDEP
;* V523 tmp515 [V523 ] ( 0, 0 ) byref -> zero-ref "field V203._reference (fldOffset=0x0)" P-INDEP
;* V524 tmp516 [V524 ] ( 0, 0 ) int -> zero-ref "field V203._length (fldOffset=0x8)" P-INDEP
-; V525 tmp517 [V525,T86] ( 3, 1.50) byref -> rax "field V204._reference (fldOffset=0x0)" P-INDEP
-; V526 tmp518 [V526,T33] ( 5, 2.50) int -> rsi "field V204._length (fldOffset=0x8)" P-INDEP
-; V527 tmp519 [V527,T111] ( 2, 1 ) byref -> rax single-def "field V206._reference (fldOffset=0x0)" P-INDEP
-; V528 tmp520 [V528,T163] ( 2, 1 ) int -> rsi "field V206._length (fldOffset=0x8)" P-INDEP
-;* V529 tmp521 [V529 ] ( 0, 0 ) byref -> zero-ref single-def "field V207._reference (fldOffset=0x0)" P-INDEP
-;* V530 tmp522 [V530 ] ( 0, 0 ) int -> zero-ref "field V207._length (fldOffset=0x8)" P-INDEP
+; V525 tmp517 [V525,T86] ( 3, 1.50) byref -> registers "field V204._reference (fldOffset=0x0)" P-INDEP
+; V526 tmp518 [V526,T33] ( 5, 2.50) int -> registers "field V204._length (fldOffset=0x8)" P-INDEP
+;* V527 tmp519 [V527 ] ( 0, 0 ) byref -> zero-ref single-def "field V206._reference (fldOffset=0x0)" P-INDEP
+;* V528 tmp520 [V528 ] ( 0, 0 ) int -> zero-ref "field V206._length (fldOffset=0x8)" P-INDEP
+; V529 tmp521 [V529,T111] ( 2, 1 ) byref -> rax single-def "field V207._reference (fldOffset=0x0)" P-INDEP
+; V530 tmp522 [V530,T163] ( 2, 1 ) int -> rsi "field V207._length (fldOffset=0x8)" P-INDEP
;* V531 tmp523 [V531 ] ( 0, 0 ) byref -> zero-ref single-def "field V211._reference (fldOffset=0x0)" P-INDEP
;* V532 tmp524 [V532 ] ( 0, 0 ) int -> zero-ref "field V211._length (fldOffset=0x8)" P-INDEP
;* V533 tmp525 [V533 ] ( 0, 0 ) byref -> zero-ref single-def "field V212._reference (fldOffset=0x0)" P-INDEP
;* V534 tmp526 [V534 ] ( 0, 0 ) int -> zero-ref "field V212._length (fldOffset=0x8)" P-INDEP
;* V535 tmp527 [V535 ] ( 0, 0 ) byref -> zero-ref single-def "field V214._reference (fldOffset=0x0)" P-INDEP
;* V536 tmp528 [V536 ] ( 0, 0 ) int -> zero-ref "field V214._length (fldOffset=0x8)" P-INDEP
;* V537 tmp529 [V537 ] ( 0, 0 ) byref -> zero-ref single-def "field V216._reference (fldOffset=0x0)" P-INDEP
;* V538 tmp530 [V538 ] ( 0, 0 ) int -> zero-ref "field V216._length (fldOffset=0x8)" P-INDEP
;* V539 tmp531 [V539 ] ( 0, 0 ) byref -> zero-ref single-def "field V220._reference (fldOffset=0x0)" P-INDEP
;* V540 tmp532 [V540 ] ( 0, 0 ) int -> zero-ref "field V220._length (fldOffset=0x8)" P-INDEP
;* V541 tmp533 [V541 ] ( 0, 0 ) byref -> zero-ref single-def "field V221._reference (fldOffset=0x0)" P-INDEP
;* V542 tmp534 [V542 ] ( 0, 0 ) int -> zero-ref "field V221._length (fldOffset=0x8)" P-INDEP
;* V543 tmp535 [V543 ] ( 0, 0 ) byref -> zero-ref "field V222._reference (fldOffset=0x0)" P-INDEP
;* V544 tmp536 [V544 ] ( 0, 0 ) int -> zero-ref "field V222._length (fldOffset=0x8)" P-INDEP
;* V545 tmp537 [V545 ] ( 0, 0 ) byref -> zero-ref "field V223._reference (fldOffset=0x0)" P-INDEP
;* V546 tmp538 [V546 ] ( 0, 0 ) int -> zero-ref "field V223._length (fldOffset=0x8)" P-INDEP
;* V547 tmp539 [V547 ] ( 0, 0 ) byref -> zero-ref "field V225._reference (fldOffset=0x0)" P-INDEP
;* V548 tmp540 [V548 ] ( 0, 0 ) int -> zero-ref "field V225._length (fldOffset=0x8)" P-INDEP
-; V549 tmp541 [V549,T87] ( 3, 1.50) byref -> rdx "field V226._reference (fldOffset=0x0)" P-INDEP
-; V550 tmp542 [V550,T92] ( 3, 1.50) int -> rcx "field V226._length (fldOffset=0x8)" P-INDEP
-; V551 tmp543 [V551,T112] ( 2, 1 ) byref -> rdx single-def "field V228._reference (fldOffset=0x0)" P-INDEP
-; V552 tmp544 [V552,T164] ( 2, 1 ) int -> rsi "field V228._length (fldOffset=0x8)" P-INDEP
-;* V553 tmp545 [V553 ] ( 0, 0 ) byref -> zero-ref single-def "field V229._reference (fldOffset=0x0)" P-INDEP
-;* V554 tmp546 [V554 ] ( 0, 0 ) int -> zero-ref "field V229._length (fldOffset=0x8)" P-INDEP
+; V549 tmp541 [V549,T87] ( 3, 1.50) byref -> registers "field V226._reference (fldOffset=0x0)" P-INDEP
+; V550 tmp542 [V550,T92] ( 3, 1.50) int -> registers "field V226._length (fldOffset=0x8)" P-INDEP
+;* V551 tmp543 [V551 ] ( 0, 0 ) byref -> zero-ref single-def "field V228._reference (fldOffset=0x0)" P-INDEP
+;* V552 tmp544 [V552 ] ( 0, 0 ) int -> zero-ref "field V228._length (fldOffset=0x8)" P-INDEP
+; V553 tmp545 [V553,T112] ( 2, 1 ) byref -> rdx single-def "field V229._reference (fldOffset=0x0)" P-INDEP
+; V554 tmp546 [V554,T164] ( 2, 1 ) int -> rsi "field V229._length (fldOffset=0x8)" P-INDEP
; V555 tmp547 [V555,T113] ( 2, 1 ) byref -> rdi single-def "field V234._reference (fldOffset=0x0)" P-INDEP
; V556 tmp548 [V556,T165] ( 2, 1 ) int -> rdx "field V234._length (fldOffset=0x8)" P-INDEP
;* V557 tmp549 [V557 ] ( 0, 0 ) byref -> zero-ref single-def "field V235._reference (fldOffset=0x0)" P-INDEP
;* V558 tmp550 [V558 ] ( 0, 0 ) int -> zero-ref "field V235._length (fldOffset=0x8)" P-INDEP
; V559 tmp551 [V559,T114] ( 2, 1 ) byref -> rdi single-def "field V236._reference (fldOffset=0x0)" P-INDEP
; V560 tmp552 [V560,T166] ( 2, 1 ) int -> rdx "field V236._length (fldOffset=0x8)" P-INDEP
;* V561 tmp553 [V561 ] ( 0, 0 ) byref -> zero-ref single-def "field V237._reference (fldOffset=0x0)" P-INDEP
;* V562 tmp554 [V562 ] ( 0, 0 ) int -> zero-ref "field V237._length (fldOffset=0x8)" P-INDEP
; V563 tmp555 [V563,T115] ( 2, 1 ) byref -> rdi single-def "field V238._reference (fldOffset=0x0)" P-INDEP
; V564 tmp556 [V564,T167] ( 2, 1 ) int -> rdx "field V238._length (fldOffset=0x8)" P-INDEP
;* V565 tmp557 [V565 ] ( 0, 0 ) byref -> zero-ref single-def "field V239._reference (fldOffset=0x0)" P-INDEP
;* V566 tmp558 [V566 ] ( 0, 0 ) int -> zero-ref "field V239._length (fldOffset=0x8)" P-INDEP
-; V567 tmp559 [V567,T88] ( 3, 1.50) byref -> rcx "field V240._reference (fldOffset=0x0)" P-INDEP
-; V568 tmp560 [V568,T34] ( 5, 2.50) int -> rsi "field V240._length (fldOffset=0x8)" P-INDEP
-; V569 tmp561 [V569,T116] ( 2, 1 ) byref -> rcx single-def "field V242._reference (fldOffset=0x0)" P-INDEP
-; V570 tmp562 [V570,T168] ( 2, 1 ) int -> rsi "field V242._length (fldOffset=0x8)" P-INDEP
-;* V571 tmp563 [V571 ] ( 0, 0 ) byref -> zero-ref single-def "field V243._reference (fldOffset=0x0)" P-INDEP
-;* V572 tmp564 [V572 ] ( 0, 0 ) int -> zero-ref "field V243._length (fldOffset=0x8)" P-INDEP
+; V567 tmp559 [V567,T88] ( 3, 1.50) byref -> registers "field V240._reference (fldOffset=0x0)" P-INDEP
+; V568 tmp560 [V568,T34] ( 5, 2.50) int -> registers "field V240._length (fldOffset=0x8)" P-INDEP
+;* V569 tmp561 [V569 ] ( 0, 0 ) byref -> zero-ref single-def "field V242._reference (fldOffset=0x0)" P-INDEP
+;* V570 tmp562 [V570 ] ( 0, 0 ) int -> zero-ref "field V242._length (fldOffset=0x8)" P-INDEP
+; V571 tmp563 [V571,T116] ( 2, 1 ) byref -> rcx single-def "field V243._reference (fldOffset=0x0)" P-INDEP
+; V572 tmp564 [V572,T168] ( 2, 1 ) int -> rsi "field V243._length (fldOffset=0x8)" P-INDEP
;* V573 tmp565 [V573 ] ( 0, 0 ) byref -> zero-ref single-def "field V247._reference (fldOffset=0x0)" P-INDEP
;* V574 tmp566 [V574 ] ( 0, 0 ) int -> zero-ref "field V247._length (fldOffset=0x8)" P-INDEP
;* V575 tmp567 [V575 ] ( 0, 0 ) byref -> zero-ref single-def "field V248._reference (fldOffset=0x0)" P-INDEP
;* V576 tmp568 [V576 ] ( 0, 0 ) int -> zero-ref "field V248._length (fldOffset=0x8)" P-INDEP
;* V577 tmp569 [V577 ] ( 0, 0 ) byref -> zero-ref single-def "field V250._reference (fldOffset=0x0)" P-INDEP
;* V578 tmp570 [V578 ] ( 0, 0 ) int -> zero-ref "field V250._length (fldOffset=0x8)" P-INDEP
;* V579 tmp571 [V579 ] ( 0, 0 ) byref -> zero-ref single-def "field V252._reference (fldOffset=0x0)" P-INDEP
;* V580 tmp572 [V580 ] ( 0, 0 ) int -> zero-ref "field V252._length (fldOffset=0x8)" P-INDEP
;* V581 tmp573 [V581 ] ( 0, 0 ) byref -> zero-ref single-def "field V256._reference (fldOffset=0x0)" P-INDEP
;* V582 tmp574 [V582 ] ( 0, 0 ) int -> zero-ref "field V256._length (fldOffset=0x8)" P-INDEP
;* V583 tmp575 [V583 ] ( 0, 0 ) byref -> zero-ref single-def "field V257._reference (fldOffset=0x0)" P-INDEP
;* V584 tmp576 [V584 ] ( 0, 0 ) int -> zero-ref "field V257._length (fldOffset=0x8)" P-INDEP
;* V585 tmp577 [V585 ] ( 0, 0 ) byref -> zero-ref "field V258._reference (fldOffset=0x0)" P-INDEP
;* V586 tmp578 [V586 ] ( 0, 0 ) int -> zero-ref "field V258._length (fldOffset=0x8)" P-INDEP
;* V587 tmp579 [V587 ] ( 0, 0 ) byref -> zero-ref "field V259._reference (fldOffset=0x0)" P-INDEP
;* V588 tmp580 [V588 ] ( 0, 0 ) int -> zero-ref "field V259._length (fldOffset=0x8)" P-INDEP
-; V589 tmp581 [V589,T89] ( 3, 1.50) byref -> rcx "field V260._reference (fldOffset=0x0)" P-INDEP
-; V590 tmp582 [V590,T35] ( 5, 2.50) int -> rsi "field V260._length (fldOffset=0x8)" P-INDEP
-; V591 tmp583 [V591,T117] ( 2, 1 ) byref -> rcx single-def "field V262._reference (fldOffset=0x0)" P-INDEP
-; V592 tmp584 [V592,T169] ( 2, 1 ) int -> rsi "field V262._length (fldOffset=0x8)" P-INDEP
-;* V593 tmp585 [V593 ] ( 0, 0 ) byref -> zero-ref single-def "field V263._reference (fldOffset=0x0)" P-INDEP
-;* V594 tmp586 [V594 ] ( 0, 0 ) int -> zero-ref "field V263._length (fldOffset=0x8)" P-INDEP
+; V589 tmp581 [V589,T89] ( 3, 1.50) byref -> registers "field V260._reference (fldOffset=0x0)" P-INDEP
+; V590 tmp582 [V590,T35] ( 5, 2.50) int -> registers "field V260._length (fldOffset=0x8)" P-INDEP
+;* V591 tmp583 [V591 ] ( 0, 0 ) byref -> zero-ref single-def "field V262._reference (fldOffset=0x0)" P-INDEP
+;* V592 tmp584 [V592 ] ( 0, 0 ) int -> zero-ref "field V262._length (fldOffset=0x8)" P-INDEP
+; V593 tmp585 [V593,T117] ( 2, 1 ) byref -> rcx single-def "field V263._reference (fldOffset=0x0)" P-INDEP
+; V594 tmp586 [V594,T169] ( 2, 1 ) int -> rsi "field V263._length (fldOffset=0x8)" P-INDEP
;* V595 tmp587 [V595 ] ( 0, 0 ) byref -> zero-ref single-def "field V267._reference (fldOffset=0x0)" P-INDEP
;* V596 tmp588 [V596 ] ( 0, 0 ) int -> zero-ref "field V267._length (fldOffset=0x8)" P-INDEP
;* V597 tmp589 [V597 ] ( 0, 0 ) byref -> zero-ref single-def "field V268._reference (fldOffset=0x0)" P-INDEP
;* V598 tmp590 [V598 ] ( 0, 0 ) int -> zero-ref "field V268._length (fldOffset=0x8)" P-INDEP
;* V599 tmp591 [V599 ] ( 0, 0 ) byref -> zero-ref single-def "field V270._reference (fldOffset=0x0)" P-INDEP
;* V600 tmp592 [V600 ] ( 0, 0 ) int -> zero-ref "field V270._length (fldOffset=0x8)" P-INDEP
;* V601 tmp593 [V601 ] ( 0, 0 ) byref -> zero-ref single-def "field V272._reference (fldOffset=0x0)" P-INDEP
;* V602 tmp594 [V602 ] ( 0, 0 ) int -> zero-ref "field V272._length (fldOffset=0x8)" P-INDEP
;* V603 tmp595 [V603 ] ( 0, 0 ) byref -> zero-ref single-def "field V276._reference (fldOffset=0x0)" P-INDEP
;* V604 tmp596 [V604 ] ( 0, 0 ) int -> zero-ref "field V276._length (fldOffset=0x8)" P-INDEP
;* V605 tmp597 [V605 ] ( 0, 0 ) byref -> zero-ref single-def "field V277._reference (fldOffset=0x0)" P-INDEP
;* V606 tmp598 [V606 ] ( 0, 0 ) int -> zero-ref "field V277._length (fldOffset=0x8)" P-INDEP
;* V607 tmp599 [V607 ] ( 0, 0 ) byref -> zero-ref "field V278._reference (fldOffset=0x0)" P-INDEP
;* V608 tmp600 [V608 ] ( 0, 0 ) int -> zero-ref "field V278._length (fldOffset=0x8)" P-INDEP
;* V609 tmp601 [V609 ] ( 0, 0 ) byref -> zero-ref "field V279._reference (fldOffset=0x0)" P-INDEP
;* V610 tmp602 [V610 ] ( 0, 0 ) int -> zero-ref "field V279._length (fldOffset=0x8)" P-INDEP
-; V611 tmp603 [V611,T90] ( 3, 1.50) byref -> rax "field V280._reference (fldOffset=0x0)" P-INDEP
-; V612 tmp604 [V612,T36] ( 5, 2.50) int -> rsi "field V280._length (fldOffset=0x8)" P-INDEP
-; V613 tmp605 [V613,T118] ( 2, 1 ) byref -> rax single-def "field V282._reference (fldOffset=0x0)" P-INDEP
-; V614 tmp606 [V614,T170] ( 2, 1 ) int -> rsi "field V282._length (fldOffset=0x8)" P-INDEP
-;* V615 tmp607 [V615 ] ( 0, 0 ) byref -> zero-ref single-def "field V283._reference (fldOffset=0x0)" P-INDEP
-;* V616 tmp608 [V616 ] ( 0, 0 ) int -> zero-ref "field V283._length (fldOffset=0x8)" P-INDEP
+; V611 tmp603 [V611,T90] ( 3, 1.50) byref -> registers "field V280._reference (fldOffset=0x0)" P-INDEP
+; V612 tmp604 [V612,T36] ( 5, 2.50) int -> registers "field V280._length (fldOffset=0x8)" P-INDEP
+;* V613 tmp605 [V613 ] ( 0, 0 ) byref -> zero-ref single-def "field V282._reference (fldOffset=0x0)" P-INDEP
+;* V614 tmp606 [V614 ] ( 0, 0 ) int -> zero-ref "field V282._length (fldOffset=0x8)" P-INDEP
+; V615 tmp607 [V615,T118] ( 2, 1 ) byref -> rax single-def "field V283._reference (fldOffset=0x0)" P-INDEP
+; V616 tmp608 [V616,T170] ( 2, 1 ) int -> rsi "field V283._length (fldOffset=0x8)" P-INDEP
;* V617 tmp609 [V617 ] ( 0, 0 ) byref -> zero-ref single-def "field V287._reference (fldOffset=0x0)" P-INDEP
;* V618 tmp610 [V618 ] ( 0, 0 ) int -> zero-ref "field V287._length (fldOffset=0x8)" P-INDEP
;* V619 tmp611 [V619 ] ( 0, 0 ) byref -> zero-ref single-def "field V288._reference (fldOffset=0x0)" P-INDEP
;* V620 tmp612 [V620 ] ( 0, 0 ) int -> zero-ref "field V288._length (fldOffset=0x8)" P-INDEP
;* V621 tmp613 [V621 ] ( 0, 0 ) byref -> zero-ref single-def "field V290._reference (fldOffset=0x0)" P-INDEP
;* V622 tmp614 [V622 ] ( 0, 0 ) int -> zero-ref "field V290._length (fldOffset=0x8)" P-INDEP
;* V623 tmp615 [V623 ] ( 0, 0 ) byref -> zero-ref single-def "field V292._reference (fldOffset=0x0)" P-INDEP
;* V624 tmp616 [V624 ] ( 0, 0 ) int -> zero-ref "field V292._length (fldOffset=0x8)" P-INDEP
;* V625 tmp617 [V625 ] ( 0, 0 ) byref -> zero-ref single-def "field V296._reference (fldOffset=0x0)" P-INDEP
;* V626 tmp618 [V626 ] ( 0, 0 ) int -> zero-ref "field V296._length (fldOffset=0x8)" P-INDEP
;* V627 tmp619 [V627 ] ( 0, 0 ) byref -> zero-ref single-def "field V297._reference (fldOffset=0x0)" P-INDEP
;* V628 tmp620 [V628 ] ( 0, 0 ) int -> zero-ref "field V297._length (fldOffset=0x8)" P-INDEP
;* V629 tmp621 [V629 ] ( 0, 0 ) byref -> zero-ref "field V298._reference (fldOffset=0x0)" P-INDEP
;* V630 tmp622 [V630 ] ( 0, 0 ) int -> zero-ref "field V298._length (fldOffset=0x8)" P-INDEP
;* V631 tmp623 [V631 ] ( 0, 0 ) byref -> zero-ref "field V299._reference (fldOffset=0x0)" P-INDEP
;* V632 tmp624 [V632 ] ( 0, 0 ) int -> zero-ref "field V299._length (fldOffset=0x8)" P-INDEP
;* V633 tmp625 [V633 ] ( 0, 0 ) byref -> zero-ref single-def "field V300._reference (fldOffset=0x0)" P-INDEP
;* V634 tmp626 [V634 ] ( 0, 0 ) int -> zero-ref "field V300._length (fldOffset=0x8)" P-INDEP
;* V635 tmp627 [V635 ] ( 0, 0 ) byref -> zero-ref single-def "field V301._reference (fldOffset=0x0)" P-INDEP
;* V636 tmp628 [V636 ] ( 0, 0 ) int -> zero-ref "field V301._length (fldOffset=0x8)" P-INDEP
; V637 tmp629 [V637,T20] ( 5, 2.50) ref -> [rbp-0x68] spill-single-def "V13.[008..016)"
; V638 tmp630 [V638,T21] ( 5, 2.50) ref -> [rbp-0x70] spill-single-def "V81.[008..016)"
; V639 tmp631 [V639,T22] ( 5, 2.50) ref -> r14 single-def "V157.[008..016)"
; V640 tmp632 [V640,T23] ( 5, 2.50) ref -> r14 single-def "V233.[008..016)"
; V641 cse0 [V641,T41] ( 4, 2 ) int -> rdx "CSE #01: conservative"
; V642 cse1 [V642,T42] ( 4, 2 ) int -> [rbp-0x54] spill-single-def "CSE #02: conservative"
; V643 cse2 [V643,T43] ( 4, 2 ) int -> [rbp-0x58] spill-single-def "CSE #03: conservative"
; V644 cse3 [V644,T44] ( 4, 2 ) int -> [rbp-0x5C] spill-single-def "CSE #05: conservative"
; V645 cse4 [V645,T45] ( 4, 2 ) int -> [rbp-0x60] spill-single-def "CSE #07: conservative"
;
; Lcl frame size = 232
G_M20866_IG01:
push rbp
push r15
push r14
push r13
push r12
push rbx
sub rsp, 232
lea rbp, [rsp+0x110]
xor eax, eax
mov qword ptr [rbp-0x48], rax
vxorps xmm8, xmm8, xmm8
vmovdqa xmmword ptr [rbp-0x40], xmm8
mov qword ptr [rbp-0x30], rax
mov rbx, rdi
mov r15, rdx
;; size=51 bbWeight=1 PerfScore 11.83
G_M20866_IG02:
cmp dword ptr [rbx+0x14], 3
jne G_M20866_IG62
;; size=10 bbWeight=1 PerfScore 4.00
G_M20866_IG03:
movzx rdx, sil
test dl, 4
jne G_M20866_IG62
test dl, 2
setne r14b
movzx r14, r14b
xor r13d, r13d
xor r12d, r12d
test dl, 1
je G_M20866_IG28
mov rdx, 0xD1FFAB1E ; box for System.Globalization.TimeSpanFormat:PositiveInvariantFormatLiterals
mov rdx, gword ptr [rdx]
mov rax, gword ptr [rdx+0x10]
mov gword ptr [rbp-0x68], rax
cmp dword ptr [rbx+0x18], 2
jne G_M20866_IG15
mov rdi, bword ptr [rbx+0x110]
mov edx, dword ptr [rbx+0x118]
mov ecx, dword ptr [rax+0x08]
mov dword ptr [rbp-0x54], ecx
test ecx, ecx
je G_M20866_IG68
mov rsi, gword ptr [rax+0x10]
test rsi, rsi
- je SHORT G_M20866_IG04
+ jne SHORT G_M20866_IG04
+ xor rsi, rsi
+ xor r8d, r8d
+ mov rax, rsi
+ mov esi, r8d
+ mov r8, rax
+ jmp SHORT G_M20866_IG05
+ ;; size=122 bbWeight=0.50 PerfScore 14.38
+G_M20866_IG04:
lea r8, bword ptr [rsi+0x0C]
mov esi, dword ptr [rsi+0x08]
- jmp SHORT G_M20866_IG05
- ;; size=115 bbWeight=0.50 PerfScore 15.00
-G_M20866_IG04:
- xor r8, r8
- xor esi, esi
- ;; size=5 bbWeight=0.50 PerfScore 0.25
+ ;; size=7 bbWeight=0.50 PerfScore 1.25
G_M20866_IG05:
cmp edx, esi
jne G_M20866_IG15
test esi, esi
je SHORT G_M20866_IG06
mov edx, esi
add rdx, rdx
mov rsi, r8
mov r8, 0xD1FFAB1E ; code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
call [r8]System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
test eax, eax
je G_M20866_IG15
;; size=41 bbWeight=0.50 PerfScore 3.88
G_M20866_IG06:
mov rdi, bword ptr [rbx+0x120]
mov edx, dword ptr [rbx+0x128]
cmp dword ptr [rbp-0x54], 2
jbe G_M20866_IG68
mov rax, gword ptr [rbp-0x68]
mov rsi, gword ptr [rax+0x20]
test rsi, rsi
- je SHORT G_M20866_IG07
+ jne SHORT G_M20866_IG07
+ xor rsi, rsi
+ xor r8d, r8d
+ mov rax, rsi
+ mov esi, r8d
+ mov r8, rax
+ jmp SHORT G_M20866_IG08
+ ;; size=52 bbWeight=0.50 PerfScore 7.25
+G_M20866_IG07:
lea r8, bword ptr [rsi+0x0C]
mov esi, dword ptr [rsi+0x08]
- jmp SHORT G_M20866_IG08
- ;; size=45 bbWeight=0.50 PerfScore 7.88
-G_M20866_IG07:
- xor r8, r8
- xor esi, esi
- ;; size=5 bbWeight=0.50 PerfScore 0.25
+ ;; size=7 bbWeight=0.50 PerfScore 1.25
G_M20866_IG08:
cmp edx, esi
jne G_M20866_IG15
test esi, esi
je SHORT G_M20866_IG09
mov edx, esi
add rdx, rdx
mov rsi, r8
mov r8, 0xD1FFAB1E ; code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
call [r8]System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
test eax, eax
je SHORT G_M20866_IG15
;; size=37 bbWeight=0.50 PerfScore 3.88
G_M20866_IG09:
mov rdi, bword ptr [rbx+0x130]
mov edx, dword ptr [rbx+0x138]
cmp dword ptr [rbp-0x54], 5
jbe G_M20866_IG68
mov rax, gword ptr [rbp-0x68]
mov rsi, gword ptr [rax+0x38]
test rsi, rsi
- je SHORT G_M20866_IG10
+ jne SHORT G_M20866_IG10
+ xor rsi, rsi
+ xor eax, eax
+ mov ecx, eax
+ mov rax, rsi
+ mov esi, ecx
+ jmp SHORT G_M20866_IG11
+ ;; size=49 bbWeight=0.50 PerfScore 7.25
+G_M20866_IG10:
lea rax, bword ptr [rsi+0x0C]
mov esi, dword ptr [rsi+0x08]
- jmp SHORT G_M20866_IG11
- ;; size=45 bbWeight=0.50 PerfScore 7.88
-G_M20866_IG10:
- xor rax, rax
- xor esi, esi
- ;; size=4 bbWeight=0.50 PerfScore 0.25
+ ;; size=7 bbWeight=0.50 PerfScore 1.25
G_M20866_IG11:
cmp edx, esi
jne SHORT G_M20866_IG13
test esi, esi
je SHORT G_M20866_IG12
mov edx, esi
add rdx, rdx
mov rsi, rax
mov rax, 0xD1FFAB1E ; code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
call [rax]System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
jmp SHORT G_M20866_IG14
;; size=30 bbWeight=0.50 PerfScore 4.25
G_M20866_IG12:
mov eax, 1
jmp SHORT G_M20866_IG14
;; size=7 bbWeight=0.50 PerfScore 1.12
G_M20866_IG13:
xor eax, eax
;; size=2 bbWeight=0.50 PerfScore 0.12
G_M20866_IG14:
test eax, eax
jne G_M20866_IG27
;; size=8 bbWeight=0.50 PerfScore 0.62
G_M20866_IG15:
mov rdx, 0xD1FFAB1E ; box for System.Globalization.TimeSpanFormat:NegativeInvariantFormatLiterals
mov rdx, gword ptr [rdx]
mov rax, gword ptr [rdx+0x10]
mov gword ptr [rbp-0x70], rax
cmp dword ptr [rbx+0x14], 3
jne G_M20866_IG28
cmp dword ptr [rbx+0x18], 2
jne G_M20866_IG28
mov rdi, bword ptr [rbx+0x110]
mov edx, dword ptr [rbx+0x118]
mov ecx, dword ptr [rax+0x08]
mov dword ptr [rbp-0x58], ecx
test ecx, ecx
je G_M20866_IG68
mov rsi, gword ptr [rax+0x10]
test rsi, rsi
- je SHORT G_M20866_IG16
+ jne SHORT G_M20866_IG16
+ xor rsi, rsi
+ xor r8d, r8d
+ mov rax, rsi
+ mov esi, r8d
+ mov r8, rax
+ jmp SHORT G_M20866_IG17
+ ;; size=93 bbWeight=0.50 PerfScore 14.00
+G_M20866_IG16:
lea r8, bword ptr [rsi+0x0C]
mov esi, dword ptr [rsi+0x08]
- jmp SHORT G_M20866_IG17
- ;; size=86 bbWeight=0.50 PerfScore 14.62
-G_M20866_IG16:
- xor r8, r8
- xor esi, esi
- ;; size=5 bbWeight=0.50 PerfScore 0.25
+ ;; size=7 bbWeight=0.50 PerfScore 1.25
G_M20866_IG17:
cmp edx, esi
jne G_M20866_IG28
test esi, esi
je SHORT G_M20866_IG18
mov edx, esi
add rdx, rdx
mov rsi, r8
mov r8, 0xD1FFAB1E ; code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
call [r8]System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
test eax, eax
je G_M20866_IG28
;; size=41 bbWeight=0.50 PerfScore 3.88
G_M20866_IG18:
mov rdi, bword ptr [rbx+0x120]
mov edx, dword ptr [rbx+0x128]
cmp dword ptr [rbp-0x58], 2
jbe G_M20866_IG68
mov rax, gword ptr [rbp-0x70]
mov rsi, gword ptr [rax+0x20]
test rsi, rsi
- je SHORT G_M20866_IG19
+ jne SHORT G_M20866_IG19
+ xor rsi, rsi
+ xor r8d, r8d
+ mov rax, rsi
+ mov esi, r8d
+ mov r8, rax
+ jmp SHORT G_M20866_IG20
+ ;; size=52 bbWeight=0.50 PerfScore 7.25
+G_M20866_IG19:
lea r8, bword ptr [rsi+0x0C]
mov esi, dword ptr [rsi+0x08]
- jmp SHORT G_M20866_IG20
- ;; size=45 bbWeight=0.50 PerfScore 7.88
-G_M20866_IG19:
- xor r8, r8
- xor esi, esi
- ;; size=5 bbWeight=0.50 PerfScore 0.25
+ ;; size=7 bbWeight=0.50 PerfScore 1.25
G_M20866_IG20:
cmp edx, esi
jne G_M20866_IG28
test esi, esi
je SHORT G_M20866_IG21
mov edx, esi
add rdx, rdx
mov rsi, r8
mov r8, 0xD1FFAB1E ; code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
call [r8]System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
test eax, eax
je SHORT G_M20866_IG28
;; size=37 bbWeight=0.50 PerfScore 3.88
G_M20866_IG21:
mov rdi, bword ptr [rbx+0x130]
mov edx, dword ptr [rbx+0x138]
cmp dword ptr [rbp-0x58], 5
jbe G_M20866_IG68
mov rax, gword ptr [rbp-0x70]
mov rsi, gword ptr [rax+0x38]
test rsi, rsi
- je SHORT G_M20866_IG22
+ jne SHORT G_M20866_IG22
+ xor rsi, rsi
+ xor eax, eax
+ mov ecx, eax
+ mov rax, rsi
+ mov esi, ecx
+ jmp SHORT G_M20866_IG23
+ ;; size=49 bbWeight=0.50 PerfScore 7.25
+G_M20866_IG22:
lea rax, bword ptr [rsi+0x0C]
mov esi, dword ptr [rsi+0x08]
- jmp SHORT G_M20866_IG23
- ;; size=45 bbWeight=0.50 PerfScore 7.88
-G_M20866_IG22:
- xor rax, rax
- xor esi, esi
- ;; size=4 bbWeight=0.50 PerfScore 0.25
+ ;; size=7 bbWeight=0.50 PerfScore 1.25
G_M20866_IG23:
cmp edx, esi
jne SHORT G_M20866_IG25
test esi, esi
je SHORT G_M20866_IG24
mov edx, esi
add rdx, rdx
mov rsi, rax
mov rax, 0xD1FFAB1E ; code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
call [rax]System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
jmp SHORT G_M20866_IG26
;; size=30 bbWeight=0.50 PerfScore 4.25
G_M20866_IG24:
mov eax, 1
jmp SHORT G_M20866_IG26
;; size=7 bbWeight=0.50 PerfScore 1.12
G_M20866_IG25:
xor eax, eax
;; size=2 bbWeight=0.50 PerfScore 0.12
G_M20866_IG26:
test eax, eax
je SHORT G_M20866_IG28
mov r12d, 1
xor r13d, r13d
jmp SHORT G_M20866_IG28
;; size=15 bbWeight=0.50 PerfScore 1.88
G_M20866_IG27:
mov r12d, 1
mov r13d, 1
;; size=12 bbWeight=0.50 PerfScore 0.25
G_M20866_IG28:
test r14d, r14d
je G_M20866_IG61
test r12d, r12d
jne G_M20866_IG61
cmp byte ptr [rbx+0x1D], 0
jne SHORT G_M20866_IG31
xor esi, esi
mov qword ptr [rbx+0x20], rsi
mov qword ptr [rbx+0x28], rsi
mov qword ptr [rbx+0x30], rsi
mov qword ptr [rbx+0x38], rsi
mov qword ptr [rbx+0x40], rsi
lea rdi, bword ptr [rbx+0x20]
mov rsi, gword ptr [rbx]
test rsi, rsi
- je SHORT G_M20866_IG29
+ jne SHORT G_M20866_IG29
+ xor rsi, rsi
+ xor edx, edx
+ mov ecx, edx
+ mov rdx, rsi
+ jmp SHORT G_M20866_IG30
+ ;; size=69 bbWeight=0.50 PerfScore 9.25
+G_M20866_IG29:
lea rdx, bword ptr [rsi+0x0C]
mov esi, dword ptr [rsi+0x08]
mov ecx, esi
- jmp SHORT G_M20866_IG30
- ;; size=69 bbWeight=0.50 PerfScore 10.12
-G_M20866_IG29:
- xor rdx, rdx
- xor ecx, ecx
- ;; size=4 bbWeight=0.50 PerfScore 0.25
+ ;; size=9 bbWeight=0.50 PerfScore 1.38
G_M20866_IG30:
mov rsi, rdx
mov edx, ecx
xor ecx, ecx
mov rax, 0xD1FFAB1E ; code for System.Globalization.TimeSpanFormat+FormatLiterals:Init(System.ReadOnlySpan`1[ushort],ubyte):this
call [rax]System.Globalization.TimeSpanFormat+FormatLiterals:Init(System.ReadOnlySpan`1[ushort],ubyte):this
mov byte ptr [rbx+0x1D], 1
;; size=23 bbWeight=0.50 PerfScore 2.50
G_M20866_IG31:
mov r14, gword ptr [rbx+0x28]
cmp dword ptr [rbx+0x14], 3
jne G_M20866_IG43
cmp dword ptr [rbx+0x18], 2
jne G_M20866_IG43
mov rdi, bword ptr [rbx+0x110]
mov edx, dword ptr [rbx+0x118]
mov eax, dword ptr [r14+0x08]
mov dword ptr [rbp-0x5C], eax
test eax, eax
je G_M20866_IG68
mov rsi, gword ptr [r14+0x10]
test rsi, rsi
- je SHORT G_M20866_IG32
+ jne SHORT G_M20866_IG32
+ xor rsi, rsi
+ xor ecx, ecx
+ mov eax, ecx
+ mov rcx, rsi
+ mov esi, eax
+ jmp SHORT G_M20866_IG33
+ ;; size=74 bbWeight=0.50 PerfScore 12.38
+G_M20866_IG32:
lea rcx, bword ptr [rsi+0x0C]
mov esi, dword ptr [rsi+0x08]
- jmp SHORT G_M20866_IG33
- ;; size=70 bbWeight=0.50 PerfScore 13.00
-G_M20866_IG32:
- xor rcx, rcx
- xor esi, esi
- ;; size=4 bbWeight=0.50 PerfScore 0.25
+ ;; size=7 bbWeight=0.50 PerfScore 1.25
G_M20866_IG33:
cmp edx, esi
jne G_M20866_IG43
test esi, esi
je SHORT G_M20866_IG34
mov edx, esi
add rdx, rdx
mov rsi, rcx
mov rcx, 0xD1FFAB1E ; code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
call [rcx]System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
test eax, eax
je G_M20866_IG43
;; size=40 bbWeight=0.50 PerfScore 3.88
G_M20866_IG34:
mov rdi, bword ptr [rbx+0x120]
mov edx, dword ptr [rbx+0x128]
cmp dword ptr [rbp-0x5C], 2
jbe G_M20866_IG68
mov rsi, gword ptr [r14+0x20]
test rsi, rsi
- je SHORT G_M20866_IG35
+ jne SHORT G_M20866_IG35
+ xor rsi, rsi
+ xor ecx, ecx
+ mov eax, ecx
+ mov rcx, rsi
+ mov esi, eax
+ jmp SHORT G_M20866_IG36
+ ;; size=45 bbWeight=0.50 PerfScore 6.75
+G_M20866_IG35:
lea rcx, bword ptr [rsi+0x0C]
mov esi, dword ptr [rsi+0x08]
- jmp SHORT G_M20866_IG36
- ;; size=41 bbWeight=0.50 PerfScore 7.38
-G_M20866_IG35:
- xor rcx, rcx
- xor esi, esi
- ;; size=4 bbWeight=0.50 PerfScore 0.25
+ ;; size=7 bbWeight=0.50 PerfScore 1.25
G_M20866_IG36:
cmp edx, esi
- jne SHORT G_M20866_IG43
+ jne G_M20866_IG43
test esi, esi
je SHORT G_M20866_IG37
mov edx, esi
add rdx, rdx
mov rsi, rcx
mov rcx, 0xD1FFAB1E ; code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
call [rcx]System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
test eax, eax
je SHORT G_M20866_IG43
- ;; size=32 bbWeight=0.50 PerfScore 3.88
+ ;; size=36 bbWeight=0.50 PerfScore 3.88
G_M20866_IG37:
mov rdi, bword ptr [rbx+0x130]
mov edx, dword ptr [rbx+0x138]
cmp dword ptr [rbp-0x5C], 5
jbe G_M20866_IG68
mov rsi, gword ptr [r14+0x38]
test rsi, rsi
- je SHORT G_M20866_IG38
+ jne SHORT G_M20866_IG38
+ xor rsi, rsi
+ xor eax, eax
+ mov ecx, eax
+ mov rax, rsi
+ mov esi, ecx
+ jmp SHORT G_M20866_IG39
+ ;; size=45 bbWeight=0.50 PerfScore 6.75
+G_M20866_IG38:
lea rax, bword ptr [rsi+0x0C]
mov esi, dword ptr [rsi+0x08]
- jmp SHORT G_M20866_IG39
- ;; size=41 bbWeight=0.50 PerfScore 7.38
-G_M20866_IG38:
- xor rax, rax
- xor esi, esi
- ;; size=4 bbWeight=0.50 PerfScore 0.25
+ ;; size=7 bbWeight=0.50 PerfScore 1.25
G_M20866_IG39:
cmp edx, esi
jne SHORT G_M20866_IG41
test esi, esi
je SHORT G_M20866_IG40
mov edx, esi
add rdx, rdx
mov rsi, rax
mov rax, 0xD1FFAB1E ; code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
call [rax]System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
jmp SHORT G_M20866_IG42
;; size=30 bbWeight=0.50 PerfScore 4.25
G_M20866_IG40:
mov eax, 1
jmp SHORT G_M20866_IG42
;; size=7 bbWeight=0.50 PerfScore 1.12
G_M20866_IG41:
xor eax, eax
;; size=2 bbWeight=0.50 PerfScore 0.12
G_M20866_IG42:
test eax, eax
jne G_M20866_IG60
;; size=8 bbWeight=0.50 PerfScore 0.62
G_M20866_IG43:
cmp byte ptr [rbx+0x1E], 0
jne SHORT G_M20866_IG46
xor esi, esi
mov qword ptr [rbx+0x48], rsi
mov qword ptr [rbx+0x50], rsi
mov qword ptr [rbx+0x58], rsi
mov qword ptr [rbx+0x60], rsi
mov qword ptr [rbx+0x68], rsi
lea rdi, bword ptr [rbx+0x48]
mov rsi, gword ptr [rbx+0x08]
test rsi, rsi
- je SHORT G_M20866_IG44
+ jne SHORT G_M20866_IG44
+ xor rsi, rsi
+ xor edx, edx
+ mov ecx, edx
+ mov rdx, rsi
+ jmp SHORT G_M20866_IG45
+ ;; size=52 bbWeight=0.50 PerfScore 8.00
+G_M20866_IG44:
lea rdx, bword ptr [rsi+0x0C]
mov esi, dword ptr [rsi+0x08]
mov ecx, esi
- jmp SHORT G_M20866_IG45
- ;; size=52 bbWeight=0.50 PerfScore 8.88
-G_M20866_IG44:
- xor rdx, rdx
- xor ecx, ecx
- ;; size=4 bbWeight=0.50 PerfScore 0.25
+ ;; size=9 bbWeight=0.50 PerfScore 1.38
G_M20866_IG45:
mov rsi, rdx
mov edx, ecx
xor ecx, ecx
mov rax, 0xD1FFAB1E ; code for System.Globalization.TimeSpanFormat+FormatLiterals:Init(System.ReadOnlySpan`1[ushort],ubyte):this
call [rax]System.Globalization.TimeSpanFormat+FormatLiterals:Init(System.ReadOnlySpan`1[ushort],ubyte):this
mov byte ptr [rbx+0x1E], 1
;; size=23 bbWeight=0.50 PerfScore 2.50
G_M20866_IG46:
mov r14, gword ptr [rbx+0x50]
cmp dword ptr [rbx+0x14], 3
jne G_M20866_IG61
cmp dword ptr [rbx+0x18], 2
jne G_M20866_IG61
mov rdi, bword ptr [rbx+0x110]
mov edx, dword ptr [rbx+0x118]
mov eax, dword ptr [r14+0x08]
mov dword ptr [rbp-0x60], eax
test eax, eax
je G_M20866_IG68
mov rsi, gword ptr [r14+0x10]
test rsi, rsi
- je SHORT G_M20866_IG47
+ jne SHORT G_M20866_IG47
+ xor rsi, rsi
+ xor ecx, ecx
+ mov eax, ecx
+ mov rcx, rsi
+ mov esi, eax
+ jmp SHORT G_M20866_IG48
+ ;; size=74 bbWeight=0.50 PerfScore 12.38
+G_M20866_IG47:
lea rcx, bword ptr [rsi+0x0C]
mov esi, dword ptr [rsi+0x08]
- jmp SHORT G_M20866_IG48
- ;; size=70 bbWeight=0.50 PerfScore 13.00
-G_M20866_IG47:
- xor rcx, rcx
- xor esi, esi
- ;; size=4 bbWeight=0.50 PerfScore 0.25
+ ;; size=7 bbWeight=0.50 PerfScore 1.25
G_M20866_IG48:
cmp edx, esi
jne G_M20866_IG61
test esi, esi
je SHORT G_M20866_IG49
mov edx, esi
add rdx, rdx
mov rsi, rcx
mov rcx, 0xD1FFAB1E ; code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
call [rcx]System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
test eax, eax
je G_M20866_IG61
;; size=40 bbWeight=0.50 PerfScore 3.88
G_M20866_IG49:
mov rdi, bword ptr [rbx+0x120]
mov edx, dword ptr [rbx+0x128]
cmp dword ptr [rbp-0x60], 2
jbe G_M20866_IG68
mov rsi, gword ptr [r14+0x20]
test rsi, rsi
- je SHORT G_M20866_IG50
+ jne SHORT G_M20866_IG50
+ xor rsi, rsi
+ xor ecx, ecx
+ mov eax, ecx
+ mov rcx, rsi
+ mov esi, eax
+ jmp SHORT G_M20866_IG51
+ ;; size=45 bbWeight=0.50 PerfScore 6.75
+G_M20866_IG50:
lea rcx, bword ptr [rsi+0x0C]
mov esi, dword ptr [rsi+0x08]
- jmp SHORT G_M20866_IG51
- ;; size=41 bbWeight=0.50 PerfScore 7.38
-G_M20866_IG50:
- xor rcx, rcx
- xor esi, esi
- ;; size=4 bbWeight=0.50 PerfScore 0.25
+ ;; size=7 bbWeight=0.50 PerfScore 1.25
G_M20866_IG51:
cmp edx, esi
jne G_M20866_IG61
test esi, esi
je SHORT G_M20866_IG52
mov edx, esi
add rdx, rdx
mov rsi, rcx
mov rcx, 0xD1FFAB1E ; code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
call [rcx]System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
test eax, eax
je G_M20866_IG61
;; size=40 bbWeight=0.50 PerfScore 3.88
G_M20866_IG52:
mov rdi, bword ptr [rbx+0x130]
mov edx, dword ptr [rbx+0x138]
cmp dword ptr [rbp-0x60], 5
jbe G_M20866_IG68
mov rsi, gword ptr [r14+0x38]
test rsi, rsi
- je SHORT G_M20866_IG53
+ jne SHORT G_M20866_IG53
+ xor rsi, rsi
+ xor eax, eax
+ mov ecx, eax
+ mov rax, rsi
+ mov esi, ecx
+ jmp SHORT G_M20866_IG54
+ ;; size=45 bbWeight=0.50 PerfScore 6.75
+G_M20866_IG53:
lea rax, bword ptr [rsi+0x0C]
mov esi, dword ptr [rsi+0x08]
- jmp SHORT G_M20866_IG54
- ;; size=41 bbWeight=0.50 PerfScore 7.38
-G_M20866_IG53:
- xor rax, rax
- xor esi, esi
- ;; size=4 bbWeight=0.50 PerfScore 0.25
+ ;; size=7 bbWeight=0.50 PerfScore 1.25
G_M20866_IG54:
cmp edx, esi
jne SHORT G_M20866_IG56
test esi, esi
je SHORT G_M20866_IG55
mov edx, esi
add rdx, rdx
mov rsi, rax
mov rax, 0xD1FFAB1E ; code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
call [rax]System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
jmp SHORT G_M20866_IG57
;; size=30 bbWeight=0.50 PerfScore 4.25
G_M20866_IG55:
mov eax, 1
jmp SHORT G_M20866_IG57
;; size=7 bbWeight=0.50 PerfScore 1.12
G_M20866_IG56:
xor eax, eax
;; size=2 bbWeight=0.50 PerfScore 0.12
G_M20866_IG57:
test eax, eax
je G_M20866_IG61
xor r13d, r13d
;; size=11 bbWeight=0.50 PerfScore 0.75
G_M20866_IG58:
mov byte ptr [rbp-0x48], 2
vxorps xmm0, xmm0, xmm0
vmovdqu xmmword ptr [rbp-0x38], xmm0
lea rdi, [rsp]
lea rsi, [rbp-0x48]
movsq
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x10], rcx
add rsi, 8
add rdi, 8
movsq
lea rax, bword ptr [rbx+0x70]
lea rdi, [rsp+0x20]
mov rsi, rax
movsq
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x30], rcx
add rsi, 8
add rdi, 8
movsq
add rbx, 144
lea rdi, [rsp+0x40]
mov rsi, rbx
movsq
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x50], rcx
add rsi, 8
add rdi, 8
movsq
lea rdi, [rsp+0x60]
lea rsi, [rbp-0x48]
movsq
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x70], rcx
add rsi, 8
add rdi, 8
movsq
lea rdi, [rsp+0x80]
lea rsi, [rbp-0x48]
movsq
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x90], rcx
add rsi, 8
add rdi, 8
movsq
lea rsi, [rbp-0x50]
mov edi, r13d
mov rax, 0xD1FFAB1E ; code for System.Globalization.TimeSpanParse:TryTimeToTicks(ubyte,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,byref):ubyte
call [rax]System.Globalization.TimeSpanParse:TryTimeToTicks(ubyte,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,byref):ubyte
test eax, eax
jne SHORT G_M20866_IG65
;; size=205 bbWeight=0.50 PerfScore 22.67
G_M20866_IG59:
mov rdi, r15
mov rax, 0xD1FFAB1E ; code for System.Globalization.TimeSpanParse+TimeSpanResult:SetOverflowFailure():ubyte:this
call [rax]System.Globalization.TimeSpanParse+TimeSpanResult:SetOverflowFailure():ubyte:this
jmp SHORT G_M20866_IG63
;; size=17 bbWeight=0.50 PerfScore 2.75
G_M20866_IG60:
mov r12d, 1
mov r13d, 1
;; size=12 bbWeight=0.50 PerfScore 0.25
G_M20866_IG61:
test r12d, r12d
jne G_M20866_IG58
;; size=9 bbWeight=0.50 PerfScore 0.62
G_M20866_IG62:
mov rdi, r15
mov rax, 0xD1FFAB1E ; code for System.Globalization.TimeSpanParse+TimeSpanResult:SetBadTimeSpanFailure():ubyte:this
call [rax]System.Globalization.TimeSpanParse+TimeSpanResult:SetBadTimeSpanFailure():ubyte:this
;; size=15 bbWeight=0.50 PerfScore 1.75
G_M20866_IG63:
movzx rax, al
;; size=3 bbWeight=0.50 PerfScore 0.12
G_M20866_IG64:
add rsp, 232
pop rbx
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
;; size=18 bbWeight=0.50 PerfScore 2.12
G_M20866_IG65:
test r13d, r13d
jne SHORT G_M20866_IG66
mov rax, qword ptr [rbp-0x50]
neg rax
mov qword ptr [rbp-0x50], rax
cmp qword ptr [rbp-0x50], 0
jg SHORT G_M20866_IG59
;; size=23 bbWeight=0.50 PerfScore 3.25
G_M20866_IG66:
mov rax, qword ptr [rbp-0x50]
mov qword ptr [r15], rax
mov eax, 1
;; size=12 bbWeight=0.50 PerfScore 1.12
G_M20866_IG67:
add rsp, 232
pop rbx
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
;; size=18 bbWeight=0.50 PerfScore 2.12
G_M20866_IG68:
call CORINFO_HELP_RNGCHKFAIL
int3
;; size=6 bbWeight=0 PerfScore 0.00
-; Total bytes of code 1829, prolog size 45, PerfScore 253.88, instruction count 509, allocated bytes for code 1829 (MethodHash=7c17ae7d) for method System.Globalization.TimeSpanParse:ProcessTerminal_HM(byref,ubyte,byref):ubyte (FullOpts)
+; Total bytes of code 1935, prolog size 45, PerfScore 258.88, instruction count 549, allocated bytes for code 1935 (MethodHash=7c17ae7d) for method System.Globalization.TimeSpanParse:ProcessTerminal_HM(byref,ubyte,byref):ubyte (FullOpts)
; ============================================================
74 (5.03 % of base) - System.Globalization.TimeSpanParse:ProcessTerminal_D(byref,ubyte,byref):ubyte
; Assembly listing for method System.Globalization.TimeSpanParse:ProcessTerminal_D(byref,ubyte,byref):ubyte (FullOpts)
; Emitting BLENDED_CODE for X64 with AVX - Unix
; FullOpts code
; optimized code
; rbp based frame
; partially interruptible
; No PGO data
; 0 inlinees with PGO data; 71 single block inlinees; 32 inlinees without PGO data
; Final local variable assignments
;
; V00 arg0 [V00,T00] ( 39, 21 ) byref -> rbx single-def
; V01 arg1 [V01,T02] ( 3, 2.50) ubyte -> rsi single-def
; V02 arg2 [V02,T01] ( 5, 3.50) byref -> r15 single-def
; V03 loc0 [V03,T91] ( 2, 1 ) ubyte -> r14
; V04 loc1 [V04,T13] ( 7, 3.50) ubyte -> r13
; V05 loc2 [V05,T14] ( 6, 3 ) ubyte -> r12
; V06 loc3 [V06,T15] ( 6, 3 ) struct (32) [rbp-0x48] do-not-enreg[SF] must-init ld-addr-op <System.Globalization.TimeSpanParse+TimeSpanToken>
; V07 loc4 [V07 ] ( 5, 2.50) long -> [rbp-0x50] do-not-enreg[X] addr-exposed ld-addr-op
; V08 OutArgs [V08 ] ( 1, 1 ) struct (160) [rsp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
;* V09 tmp1 [V09 ] ( 0, 0 ) struct ( 8) zero-ref ld-addr-op "NewObj constructor temp" <System.TimeSpan>
;* V10 tmp2 [V10 ] ( 0, 0 ) struct (40) zero-ref do-not-enreg[S] "spilled call-like call argument" <System.Globalization.TimeSpanFormat+FormatLiterals>
;* V11 tmp3 [V11 ] ( 0, 0 ) struct (40) zero-ref do-not-enreg[S] "spilled call-like call argument" <System.Globalization.TimeSpanFormat+FormatLiterals>
; V12 tmp4 [V12,T92] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V13 tmp5 [V13 ] ( 0, 0 ) struct (40) zero-ref do-not-enreg[SF] ld-addr-op "Inlining Arg" <System.Globalization.TimeSpanFormat+FormatLiterals>
;* V14 tmp6 [V14 ] ( 0, 0 ) struct (16) zero-ref "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
;* V15 tmp7 [V15 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V16 tmp8 [V16 ] ( 0, 0 ) struct (16) zero-ref "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
;* V17 tmp9 [V17 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V18 tmp10 [V18 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V19 tmp11 [V19,T03] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.String>
-;* V20 tmp12 [V20 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V21 tmp13 [V21 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V20 tmp12 [V20 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V21 tmp13 [V21 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V22 tmp14 [V22,T34] ( 2, 2 ) byref -> r8 single-def "Inlining Arg"
; V23 tmp15 [V23,T46] ( 2, 2 ) int -> rsi "Inlining Arg"
; V24 tmp16 [V24,T93] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V25 tmp17 [V25 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V26 tmp18 [V26 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V27 tmp19 [V27,T94] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V28 tmp20 [V28 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V29 tmp21 [V29 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V30 tmp22 [V30 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V31 tmp23 [V31 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V32 tmp24 [V32 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
;* V33 tmp25 [V33 ] ( 0, 0 ) byref -> zero-ref single-def "impAppendStmt"
;* V34 tmp26 [V34 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V35 tmp27 [V35 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V36 tmp28 [V36 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V37 tmp29 [V37 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V38 tmp30 [V38 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V39 tmp31 [V39,T04] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.String>
-;* V40 tmp32 [V40 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V41 tmp33 [V41 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V40 tmp32 [V40 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V41 tmp33 [V41 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V42 tmp34 [V42,T35] ( 2, 2 ) byref -> rax single-def "Inlining Arg"
; V43 tmp35 [V43,T47] ( 2, 2 ) int -> rsi "Inlining Arg"
; V44 tmp36 [V44,T29] ( 4, 2 ) ubyte -> rax "Inline return value spill temp"
;* V45 tmp37 [V45 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V46 tmp38 [V46 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V47 tmp39 [V47,T95] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V48 tmp40 [V48 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V49 tmp41 [V49 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V50 tmp42 [V50 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V51 tmp43 [V51 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V52 tmp44 [V52 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
;* V53 tmp45 [V53 ] ( 0, 0 ) byref -> zero-ref single-def "impAppendStmt"
;* V54 tmp46 [V54 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V55 tmp47 [V55 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V56 tmp48 [V56 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V57 tmp49 [V57 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V58 tmp50 [V58,T96] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V59 tmp51 [V59 ] ( 0, 0 ) struct (40) zero-ref do-not-enreg[SF] ld-addr-op "Inlining Arg" <System.Globalization.TimeSpanFormat+FormatLiterals>
;* V60 tmp52 [V60 ] ( 0, 0 ) struct (16) zero-ref "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
;* V61 tmp53 [V61 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V62 tmp54 [V62 ] ( 0, 0 ) struct (16) zero-ref "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
;* V63 tmp55 [V63 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V64 tmp56 [V64 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V65 tmp57 [V65,T05] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.String>
-;* V66 tmp58 [V66 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V67 tmp59 [V67 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V66 tmp58 [V66 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V67 tmp59 [V67 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V68 tmp60 [V68,T36] ( 2, 2 ) byref -> r8 single-def "Inlining Arg"
; V69 tmp61 [V69,T48] ( 2, 2 ) int -> rsi "Inlining Arg"
; V70 tmp62 [V70,T97] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V71 tmp63 [V71 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V72 tmp64 [V72 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V73 tmp65 [V73,T98] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V74 tmp66 [V74 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V75 tmp67 [V75 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V76 tmp68 [V76 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V77 tmp69 [V77 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V78 tmp70 [V78 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
;* V79 tmp71 [V79 ] ( 0, 0 ) byref -> zero-ref single-def "impAppendStmt"
;* V80 tmp72 [V80 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V81 tmp73 [V81 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V82 tmp74 [V82 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V83 tmp75 [V83 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V84 tmp76 [V84 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V85 tmp77 [V85,T06] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.String>
-;* V86 tmp78 [V86 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V87 tmp79 [V87 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V86 tmp78 [V86 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V87 tmp79 [V87 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V88 tmp80 [V88,T37] ( 2, 2 ) byref -> rax single-def "Inlining Arg"
; V89 tmp81 [V89,T49] ( 2, 2 ) int -> rsi "Inlining Arg"
; V90 tmp82 [V90,T30] ( 4, 2 ) ubyte -> rax "Inline return value spill temp"
;* V91 tmp83 [V91 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V92 tmp84 [V92 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V93 tmp85 [V93,T99] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V94 tmp86 [V94 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V95 tmp87 [V95 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V96 tmp88 [V96 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V97 tmp89 [V97 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V98 tmp90 [V98 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
;* V99 tmp91 [V99 ] ( 0, 0 ) byref -> zero-ref single-def "impAppendStmt"
;* V100 tmp92 [V100 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V101 tmp93 [V101 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V102 tmp94 [V102 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V103 tmp95 [V103 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V104 tmp96 [V104,T38] ( 2, 2 ) byref -> rdi single-def "impAppendStmt"
;* V105 tmp97 [V105 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V106 tmp98 [V106 ] ( 0, 0 ) struct (16) zero-ref multireg-arg "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V107 tmp99 [V107,T07] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.String>
-;* V108 tmp100 [V108 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V109 tmp101 [V109 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V108 tmp100 [V108 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V109 tmp101 [V109 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V110 tmp102 [V110,T39] ( 2, 2 ) byref -> rdx single-def "Inlining Arg"
; V111 tmp103 [V111,T50] ( 2, 2 ) int -> rsi "Inlining Arg"
; V112 tmp104 [V112,T100] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V113 tmp105 [V113 ] ( 0, 0 ) struct (40) zero-ref do-not-enreg[SF] ld-addr-op "Inlining Arg" <System.Globalization.TimeSpanFormat+FormatLiterals>
;* V114 tmp106 [V114 ] ( 0, 0 ) struct (16) zero-ref "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
;* V115 tmp107 [V115 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V116 tmp108 [V116 ] ( 0, 0 ) struct (16) zero-ref "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
;* V117 tmp109 [V117 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V118 tmp110 [V118 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V119 tmp111 [V119,T08] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.String>
-;* V120 tmp112 [V120 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V121 tmp113 [V121 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V120 tmp112 [V120 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V121 tmp113 [V121 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V122 tmp114 [V122,T40] ( 2, 2 ) byref -> rcx single-def "Inlining Arg"
; V123 tmp115 [V123,T51] ( 2, 2 ) int -> rsi "Inlining Arg"
; V124 tmp116 [V124,T101] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V125 tmp117 [V125 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V126 tmp118 [V126 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V127 tmp119 [V127,T102] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V128 tmp120 [V128 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V129 tmp121 [V129 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V130 tmp122 [V130 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V131 tmp123 [V131 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V132 tmp124 [V132 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
;* V133 tmp125 [V133 ] ( 0, 0 ) byref -> zero-ref single-def "impAppendStmt"
;* V134 tmp126 [V134 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V135 tmp127 [V135 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V136 tmp128 [V136 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V137 tmp129 [V137 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V138 tmp130 [V138 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V139 tmp131 [V139,T09] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.String>
-;* V140 tmp132 [V140 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V141 tmp133 [V141 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V140 tmp132 [V140 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V141 tmp133 [V141 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V142 tmp134 [V142,T41] ( 2, 2 ) byref -> rax single-def "Inlining Arg"
; V143 tmp135 [V143,T52] ( 2, 2 ) int -> rsi "Inlining Arg"
; V144 tmp136 [V144,T31] ( 4, 2 ) ubyte -> rax "Inline return value spill temp"
;* V145 tmp137 [V145 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V146 tmp138 [V146 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V147 tmp139 [V147,T103] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V148 tmp140 [V148 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V149 tmp141 [V149 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V150 tmp142 [V150 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V151 tmp143 [V151 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V152 tmp144 [V152 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
;* V153 tmp145 [V153 ] ( 0, 0 ) byref -> zero-ref single-def "impAppendStmt"
;* V154 tmp146 [V154 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V155 tmp147 [V155 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V156 tmp148 [V156 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V157 tmp149 [V157 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V158 tmp150 [V158,T42] ( 2, 2 ) byref -> rdi single-def "impAppendStmt"
;* V159 tmp151 [V159 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V160 tmp152 [V160 ] ( 0, 0 ) struct (16) zero-ref multireg-arg "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V161 tmp153 [V161,T10] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.String>
-;* V162 tmp154 [V162 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V163 tmp155 [V163 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V162 tmp154 [V162 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V163 tmp155 [V163 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V164 tmp156 [V164,T43] ( 2, 2 ) byref -> rdx single-def "Inlining Arg"
; V165 tmp157 [V165,T53] ( 2, 2 ) int -> rsi "Inlining Arg"
; V166 tmp158 [V166,T104] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V167 tmp159 [V167 ] ( 0, 0 ) struct (40) zero-ref do-not-enreg[SF] ld-addr-op "Inlining Arg" <System.Globalization.TimeSpanFormat+FormatLiterals>
;* V168 tmp160 [V168 ] ( 0, 0 ) struct (16) zero-ref "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
;* V169 tmp161 [V169 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V170 tmp162 [V170 ] ( 0, 0 ) struct (16) zero-ref "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
;* V171 tmp163 [V171 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V172 tmp164 [V172 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V173 tmp165 [V173,T11] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.String>
-;* V174 tmp166 [V174 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V175 tmp167 [V175 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V174 tmp166 [V174 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V175 tmp167 [V175 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V176 tmp168 [V176,T44] ( 2, 2 ) byref -> rcx single-def "Inlining Arg"
; V177 tmp169 [V177,T54] ( 2, 2 ) int -> rsi "Inlining Arg"
; V178 tmp170 [V178,T105] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V179 tmp171 [V179 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V180 tmp172 [V180 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V181 tmp173 [V181,T106] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V182 tmp174 [V182 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V183 tmp175 [V183 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V184 tmp176 [V184 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V185 tmp177 [V185 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V186 tmp178 [V186 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
;* V187 tmp179 [V187 ] ( 0, 0 ) byref -> zero-ref single-def "impAppendStmt"
;* V188 tmp180 [V188 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V189 tmp181 [V189 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V190 tmp182 [V190 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V191 tmp183 [V191 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V192 tmp184 [V192 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V193 tmp185 [V193,T12] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.String>
-;* V194 tmp186 [V194 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V195 tmp187 [V195 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V194 tmp186 [V194 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V195 tmp187 [V195 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V196 tmp188 [V196,T45] ( 2, 2 ) byref -> rax single-def "Inlining Arg"
; V197 tmp189 [V197,T55] ( 2, 2 ) int -> rsi "Inlining Arg"
; V198 tmp190 [V198,T32] ( 4, 2 ) ubyte -> rax "Inline return value spill temp"
;* V199 tmp191 [V199 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V200 tmp192 [V200 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V201 tmp193 [V201,T107] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V202 tmp194 [V202 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V203 tmp195 [V203 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V204 tmp196 [V204 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V205 tmp197 [V205 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V206 tmp198 [V206 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
;* V207 tmp199 [V207 ] ( 0, 0 ) byref -> zero-ref single-def "impAppendStmt"
;* V208 tmp200 [V208 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V209 tmp201 [V209 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V210 tmp202 [V210 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V211 tmp203 [V211 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V212 tmp204 [V212 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
;* V213 tmp205 [V213 ] ( 0, 0 ) struct (16) zero-ref "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V214 tmp206 [V214,T56] ( 2, 2 ) long -> rax "Inlining Arg"
; V215 tmp207 [V215,T16] ( 3, 3 ) int -> rax "Single return block return value"
; V216 tmp208 [V216,T108] ( 2, 1 ) long -> rax "field V09._ticks (fldOffset=0x0)" P-INDEP
; V217 tmp209 [V217,T73] ( 2, 1 ) byref -> rdi single-def "field V14._reference (fldOffset=0x0)" P-INDEP
; V218 tmp210 [V218,T109] ( 2, 1 ) int -> rdx "field V14._length (fldOffset=0x8)" P-INDEP
;* V219 tmp211 [V219 ] ( 0, 0 ) byref -> zero-ref single-def "field V15._reference (fldOffset=0x0)" P-INDEP
;* V220 tmp212 [V220 ] ( 0, 0 ) int -> zero-ref "field V15._length (fldOffset=0x8)" P-INDEP
; V221 tmp213 [V221,T74] ( 2, 1 ) byref -> rdi single-def "field V16._reference (fldOffset=0x0)" P-INDEP
; V222 tmp214 [V222,T110] ( 2, 1 ) int -> rdx "field V16._length (fldOffset=0x8)" P-INDEP
;* V223 tmp215 [V223 ] ( 0, 0 ) byref -> zero-ref single-def "field V17._reference (fldOffset=0x0)" P-INDEP
;* V224 tmp216 [V224 ] ( 0, 0 ) int -> zero-ref "field V17._length (fldOffset=0x8)" P-INDEP
-; V225 tmp217 [V225,T57] ( 3, 1.50) byref -> r8 "field V18._reference (fldOffset=0x0)" P-INDEP
-; V226 tmp218 [V226,T17] ( 5, 2.50) int -> rsi "field V18._length (fldOffset=0x8)" P-INDEP
-; V227 tmp219 [V227,T75] ( 2, 1 ) byref -> r8 single-def "field V20._reference (fldOffset=0x0)" P-INDEP
-; V228 tmp220 [V228,T111] ( 2, 1 ) int -> rsi "field V20._length (fldOffset=0x8)" P-INDEP
-;* V229 tmp221 [V229 ] ( 0, 0 ) byref -> zero-ref single-def "field V21._reference (fldOffset=0x0)" P-INDEP
-;* V230 tmp222 [V230 ] ( 0, 0 ) int -> zero-ref "field V21._length (fldOffset=0x8)" P-INDEP
+; V225 tmp217 [V225,T57] ( 3, 1.50) byref -> registers "field V18._reference (fldOffset=0x0)" P-INDEP
+; V226 tmp218 [V226,T17] ( 5, 2.50) int -> registers "field V18._length (fldOffset=0x8)" P-INDEP
+;* V227 tmp219 [V227 ] ( 0, 0 ) byref -> zero-ref single-def "field V20._reference (fldOffset=0x0)" P-INDEP
+;* V228 tmp220 [V228 ] ( 0, 0 ) int -> zero-ref "field V20._length (fldOffset=0x8)" P-INDEP
+; V229 tmp221 [V229,T75] ( 2, 1 ) byref -> r8 single-def "field V21._reference (fldOffset=0x0)" P-INDEP
+; V230 tmp222 [V230,T111] ( 2, 1 ) int -> rsi "field V21._length (fldOffset=0x8)" P-INDEP
;* V231 tmp223 [V231 ] ( 0, 0 ) byref -> zero-ref single-def "field V25._reference (fldOffset=0x0)" P-INDEP
;* V232 tmp224 [V232 ] ( 0, 0 ) int -> zero-ref "field V25._length (fldOffset=0x8)" P-INDEP
;* V233 tmp225 [V233 ] ( 0, 0 ) byref -> zero-ref single-def "field V26._reference (fldOffset=0x0)" P-INDEP
;* V234 tmp226 [V234 ] ( 0, 0 ) int -> zero-ref "field V26._length (fldOffset=0x8)" P-INDEP
;* V235 tmp227 [V235 ] ( 0, 0 ) byref -> zero-ref single-def "field V28._reference (fldOffset=0x0)" P-INDEP
;* V236 tmp228 [V236 ] ( 0, 0 ) int -> zero-ref "field V28._length (fldOffset=0x8)" P-INDEP
;* V237 tmp229 [V237 ] ( 0, 0 ) byref -> zero-ref single-def "field V30._reference (fldOffset=0x0)" P-INDEP
;* V238 tmp230 [V238 ] ( 0, 0 ) int -> zero-ref "field V30._length (fldOffset=0x8)" P-INDEP
;* V239 tmp231 [V239 ] ( 0, 0 ) byref -> zero-ref single-def "field V34._reference (fldOffset=0x0)" P-INDEP
;* V240 tmp232 [V240 ] ( 0, 0 ) int -> zero-ref "field V34._length (fldOffset=0x8)" P-INDEP
;* V241 tmp233 [V241 ] ( 0, 0 ) byref -> zero-ref single-def "field V35._reference (fldOffset=0x0)" P-INDEP
;* V242 tmp234 [V242 ] ( 0, 0 ) int -> zero-ref "field V35._length (fldOffset=0x8)" P-INDEP
;* V243 tmp235 [V243 ] ( 0, 0 ) byref -> zero-ref "field V36._reference (fldOffset=0x0)" P-INDEP
;* V244 tmp236 [V244 ] ( 0, 0 ) int -> zero-ref "field V36._length (fldOffset=0x8)" P-INDEP
;* V245 tmp237 [V245 ] ( 0, 0 ) byref -> zero-ref "field V37._reference (fldOffset=0x0)" P-INDEP
;* V246 tmp238 [V246 ] ( 0, 0 ) int -> zero-ref "field V37._length (fldOffset=0x8)" P-INDEP
-; V247 tmp239 [V247,T58] ( 3, 1.50) byref -> rax "field V38._reference (fldOffset=0x0)" P-INDEP
-; V248 tmp240 [V248,T18] ( 5, 2.50) int -> rsi "field V38._length (fldOffset=0x8)" P-INDEP
-; V249 tmp241 [V249,T76] ( 2, 1 ) byref -> rax single-def "field V40._reference (fldOffset=0x0)" P-INDEP
-; V250 tmp242 [V250,T112] ( 2, 1 ) int -> rsi "field V40._length (fldOffset=0x8)" P-INDEP
-;* V251 tmp243 [V251 ] ( 0, 0 ) byref -> zero-ref single-def "field V41._reference (fldOffset=0x0)" P-INDEP
-;* V252 tmp244 [V252 ] ( 0, 0 ) int -> zero-ref "field V41._length (fldOffset=0x8)" P-INDEP
+; V247 tmp239 [V247,T58] ( 3, 1.50) byref -> registers "field V38._reference (fldOffset=0x0)" P-INDEP
+; V248 tmp240 [V248,T18] ( 5, 2.50) int -> registers "field V38._length (fldOffset=0x8)" P-INDEP
+;* V249 tmp241 [V249 ] ( 0, 0 ) byref -> zero-ref single-def "field V40._reference (fldOffset=0x0)" P-INDEP
+;* V250 tmp242 [V250 ] ( 0, 0 ) int -> zero-ref "field V40._length (fldOffset=0x8)" P-INDEP
+; V251 tmp243 [V251,T76] ( 2, 1 ) byref -> rax single-def "field V41._reference (fldOffset=0x0)" P-INDEP
+; V252 tmp244 [V252,T112] ( 2, 1 ) int -> rsi "field V41._length (fldOffset=0x8)" P-INDEP
;* V253 tmp245 [V253 ] ( 0, 0 ) byref -> zero-ref single-def "field V45._reference (fldOffset=0x0)" P-INDEP
;* V254 tmp246 [V254 ] ( 0, 0 ) int -> zero-ref "field V45._length (fldOffset=0x8)" P-INDEP
;* V255 tmp247 [V255 ] ( 0, 0 ) byref -> zero-ref single-def "field V46._reference (fldOffset=0x0)" P-INDEP
;* V256 tmp248 [V256 ] ( 0, 0 ) int -> zero-ref "field V46._length (fldOffset=0x8)" P-INDEP
;* V257 tmp249 [V257 ] ( 0, 0 ) byref -> zero-ref single-def "field V48._reference (fldOffset=0x0)" P-INDEP
;* V258 tmp250 [V258 ] ( 0, 0 ) int -> zero-ref "field V48._length (fldOffset=0x8)" P-INDEP
;* V259 tmp251 [V259 ] ( 0, 0 ) byref -> zero-ref single-def "field V50._reference (fldOffset=0x0)" P-INDEP
;* V260 tmp252 [V260 ] ( 0, 0 ) int -> zero-ref "field V50._length (fldOffset=0x8)" P-INDEP
;* V261 tmp253 [V261 ] ( 0, 0 ) byref -> zero-ref single-def "field V54._reference (fldOffset=0x0)" P-INDEP
;* V262 tmp254 [V262 ] ( 0, 0 ) int -> zero-ref "field V54._length (fldOffset=0x8)" P-INDEP
;* V263 tmp255 [V263 ] ( 0, 0 ) byref -> zero-ref single-def "field V55._reference (fldOffset=0x0)" P-INDEP
;* V264 tmp256 [V264 ] ( 0, 0 ) int -> zero-ref "field V55._length (fldOffset=0x8)" P-INDEP
;* V265 tmp257 [V265 ] ( 0, 0 ) byref -> zero-ref "field V56._reference (fldOffset=0x0)" P-INDEP
;* V266 tmp258 [V266 ] ( 0, 0 ) int -> zero-ref "field V56._length (fldOffset=0x8)" P-INDEP
;* V267 tmp259 [V267 ] ( 0, 0 ) byref -> zero-ref "field V57._reference (fldOffset=0x0)" P-INDEP
;* V268 tmp260 [V268 ] ( 0, 0 ) int -> zero-ref "field V57._length (fldOffset=0x8)" P-INDEP
; V269 tmp261 [V269,T77] ( 2, 1 ) byref -> rdi single-def "field V60._reference (fldOffset=0x0)" P-INDEP
; V270 tmp262 [V270,T113] ( 2, 1 ) int -> rdx "field V60._length (fldOffset=0x8)" P-INDEP
;* V271 tmp263 [V271 ] ( 0, 0 ) byref -> zero-ref single-def "field V61._reference (fldOffset=0x0)" P-INDEP
;* V272 tmp264 [V272 ] ( 0, 0 ) int -> zero-ref "field V61._length (fldOffset=0x8)" P-INDEP
; V273 tmp265 [V273,T78] ( 2, 1 ) byref -> rdi single-def "field V62._reference (fldOffset=0x0)" P-INDEP
; V274 tmp266 [V274,T114] ( 2, 1 ) int -> rdx "field V62._length (fldOffset=0x8)" P-INDEP
;* V275 tmp267 [V275 ] ( 0, 0 ) byref -> zero-ref single-def "field V63._reference (fldOffset=0x0)" P-INDEP
;* V276 tmp268 [V276 ] ( 0, 0 ) int -> zero-ref "field V63._length (fldOffset=0x8)" P-INDEP
-; V277 tmp269 [V277,T59] ( 3, 1.50) byref -> r8 "field V64._reference (fldOffset=0x0)" P-INDEP
-; V278 tmp270 [V278,T19] ( 5, 2.50) int -> rsi "field V64._length (fldOffset=0x8)" P-INDEP
-; V279 tmp271 [V279,T79] ( 2, 1 ) byref -> r8 single-def "field V66._reference (fldOffset=0x0)" P-INDEP
-; V280 tmp272 [V280,T115] ( 2, 1 ) int -> rsi "field V66._length (fldOffset=0x8)" P-INDEP
-;* V281 tmp273 [V281 ] ( 0, 0 ) byref -> zero-ref single-def "field V67._reference (fldOffset=0x0)" P-INDEP
-;* V282 tmp274 [V282 ] ( 0, 0 ) int -> zero-ref "field V67._length (fldOffset=0x8)" P-INDEP
+; V277 tmp269 [V277,T59] ( 3, 1.50) byref -> registers "field V64._reference (fldOffset=0x0)" P-INDEP
+; V278 tmp270 [V278,T19] ( 5, 2.50) int -> registers "field V64._length (fldOffset=0x8)" P-INDEP
+;* V279 tmp271 [V279 ] ( 0, 0 ) byref -> zero-ref single-def "field V66._reference (fldOffset=0x0)" P-INDEP
+;* V280 tmp272 [V280 ] ( 0, 0 ) int -> zero-ref "field V66._length (fldOffset=0x8)" P-INDEP
+; V281 tmp273 [V281,T79] ( 2, 1 ) byref -> r8 single-def "field V67._reference (fldOffset=0x0)" P-INDEP
+; V282 tmp274 [V282,T115] ( 2, 1 ) int -> rsi "field V67._length (fldOffset=0x8)" P-INDEP
;* V283 tmp275 [V283 ] ( 0, 0 ) byref -> zero-ref single-def "field V71._reference (fldOffset=0x0)" P-INDEP
;* V284 tmp276 [V284 ] ( 0, 0 ) int -> zero-ref "field V71._length (fldOffset=0x8)" P-INDEP
;* V285 tmp277 [V285 ] ( 0, 0 ) byref -> zero-ref single-def "field V72._reference (fldOffset=0x0)" P-INDEP
;* V286 tmp278 [V286 ] ( 0, 0 ) int -> zero-ref "field V72._length (fldOffset=0x8)" P-INDEP
;* V287 tmp279 [V287 ] ( 0, 0 ) byref -> zero-ref single-def "field V74._reference (fldOffset=0x0)" P-INDEP
;* V288 tmp280 [V288 ] ( 0, 0 ) int -> zero-ref "field V74._length (fldOffset=0x8)" P-INDEP
;* V289 tmp281 [V289 ] ( 0, 0 ) byref -> zero-ref single-def "field V76._reference (fldOffset=0x0)" P-INDEP
;* V290 tmp282 [V290 ] ( 0, 0 ) int -> zero-ref "field V76._length (fldOffset=0x8)" P-INDEP
;* V291 tmp283 [V291 ] ( 0, 0 ) byref -> zero-ref single-def "field V80._reference (fldOffset=0x0)" P-INDEP
;* V292 tmp284 [V292 ] ( 0, 0 ) int -> zero-ref "field V80._length (fldOffset=0x8)" P-INDEP
;* V293 tmp285 [V293 ] ( 0, 0 ) byref -> zero-ref single-def "field V81._reference (fldOffset=0x0)" P-INDEP
;* V294 tmp286 [V294 ] ( 0, 0 ) int -> zero-ref "field V81._length (fldOffset=0x8)" P-INDEP
;* V295 tmp287 [V295 ] ( 0, 0 ) byref -> zero-ref "field V82._reference (fldOffset=0x0)" P-INDEP
;* V296 tmp288 [V296 ] ( 0, 0 ) int -> zero-ref "field V82._length (fldOffset=0x8)" P-INDEP
;* V297 tmp289 [V297 ] ( 0, 0 ) byref -> zero-ref "field V83._reference (fldOffset=0x0)" P-INDEP
;* V298 tmp290 [V298 ] ( 0, 0 ) int -> zero-ref "field V83._length (fldOffset=0x8)" P-INDEP
-; V299 tmp291 [V299,T60] ( 3, 1.50) byref -> rax "field V84._reference (fldOffset=0x0)" P-INDEP
-; V300 tmp292 [V300,T20] ( 5, 2.50) int -> rsi "field V84._length (fldOffset=0x8)" P-INDEP
-; V301 tmp293 [V301,T80] ( 2, 1 ) byref -> rax single-def "field V86._reference (fldOffset=0x0)" P-INDEP
-; V302 tmp294 [V302,T116] ( 2, 1 ) int -> rsi "field V86._length (fldOffset=0x8)" P-INDEP
-;* V303 tmp295 [V303 ] ( 0, 0 ) byref -> zero-ref single-def "field V87._reference (fldOffset=0x0)" P-INDEP
-;* V304 tmp296 [V304 ] ( 0, 0 ) int -> zero-ref "field V87._length (fldOffset=0x8)" P-INDEP
+; V299 tmp291 [V299,T60] ( 3, 1.50) byref -> registers "field V84._reference (fldOffset=0x0)" P-INDEP
+; V300 tmp292 [V300,T20] ( 5, 2.50) int -> registers "field V84._length (fldOffset=0x8)" P-INDEP
+;* V301 tmp293 [V301 ] ( 0, 0 ) byref -> zero-ref single-def "field V86._reference (fldOffset=0x0)" P-INDEP
+;* V302 tmp294 [V302 ] ( 0, 0 ) int -> zero-ref "field V86._length (fldOffset=0x8)" P-INDEP
+; V303 tmp295 [V303,T80] ( 2, 1 ) byref -> rax single-def "field V87._reference (fldOffset=0x0)" P-INDEP
+; V304 tmp296 [V304,T116] ( 2, 1 ) int -> rsi "field V87._length (fldOffset=0x8)" P-INDEP
;* V305 tmp297 [V305 ] ( 0, 0 ) byref -> zero-ref single-def "field V91._reference (fldOffset=0x0)" P-INDEP
;* V306 tmp298 [V306 ] ( 0, 0 ) int -> zero-ref "field V91._length (fldOffset=0x8)" P-INDEP
;* V307 tmp299 [V307 ] ( 0, 0 ) byref -> zero-ref single-def "field V92._reference (fldOffset=0x0)" P-INDEP
;* V308 tmp300 [V308 ] ( 0, 0 ) int -> zero-ref "field V92._length (fldOffset=0x8)" P-INDEP
;* V309 tmp301 [V309 ] ( 0, 0 ) byref -> zero-ref single-def "field V94._reference (fldOffset=0x0)" P-INDEP
;* V310 tmp302 [V310 ] ( 0, 0 ) int -> zero-ref "field V94._length (fldOffset=0x8)" P-INDEP
;* V311 tmp303 [V311 ] ( 0, 0 ) byref -> zero-ref single-def "field V96._reference (fldOffset=0x0)" P-INDEP
;* V312 tmp304 [V312 ] ( 0, 0 ) int -> zero-ref "field V96._length (fldOffset=0x8)" P-INDEP
;* V313 tmp305 [V313 ] ( 0, 0 ) byref -> zero-ref single-def "field V100._reference (fldOffset=0x0)" P-INDEP
;* V314 tmp306 [V314 ] ( 0, 0 ) int -> zero-ref "field V100._length (fldOffset=0x8)" P-INDEP
;* V315 tmp307 [V315 ] ( 0, 0 ) byref -> zero-ref single-def "field V101._reference (fldOffset=0x0)" P-INDEP
;* V316 tmp308 [V316 ] ( 0, 0 ) int -> zero-ref "field V101._length (fldOffset=0x8)" P-INDEP
;* V317 tmp309 [V317 ] ( 0, 0 ) byref -> zero-ref "field V102._reference (fldOffset=0x0)" P-INDEP
;* V318 tmp310 [V318 ] ( 0, 0 ) int -> zero-ref "field V102._length (fldOffset=0x8)" P-INDEP
;* V319 tmp311 [V319 ] ( 0, 0 ) byref -> zero-ref "field V103._reference (fldOffset=0x0)" P-INDEP
;* V320 tmp312 [V320 ] ( 0, 0 ) int -> zero-ref "field V103._length (fldOffset=0x8)" P-INDEP
;* V321 tmp313 [V321 ] ( 0, 0 ) byref -> zero-ref "field V105._reference (fldOffset=0x0)" P-INDEP
;* V322 tmp314 [V322 ] ( 0, 0 ) int -> zero-ref "field V105._length (fldOffset=0x8)" P-INDEP
-; V323 tmp315 [V323,T61] ( 3, 1.50) byref -> rdx "field V106._reference (fldOffset=0x0)" P-INDEP
-; V324 tmp316 [V324,T67] ( 3, 1.50) int -> rcx "field V106._length (fldOffset=0x8)" P-INDEP
-; V325 tmp317 [V325,T81] ( 2, 1 ) byref -> rdx single-def "field V108._reference (fldOffset=0x0)" P-INDEP
-; V326 tmp318 [V326,T117] ( 2, 1 ) int -> rsi "field V108._length (fldOffset=0x8)" P-INDEP
-;* V327 tmp319 [V327 ] ( 0, 0 ) byref -> zero-ref single-def "field V109._reference (fldOffset=0x0)" P-INDEP
-;* V328 tmp320 [V328 ] ( 0, 0 ) int -> zero-ref "field V109._length (fldOffset=0x8)" P-INDEP
+; V323 tmp315 [V323,T61] ( 3, 1.50) byref -> registers "field V106._reference (fldOffset=0x0)" P-INDEP
+; V324 tmp316 [V324,T67] ( 3, 1.50) int -> registers "field V106._length (fldOffset=0x8)" P-INDEP
+;* V325 tmp317 [V325 ] ( 0, 0 ) byref -> zero-ref single-def "field V108._reference (fldOffset=0x0)" P-INDEP
+;* V326 tmp318 [V326 ] ( 0, 0 ) int -> zero-ref "field V108._length (fldOffset=0x8)" P-INDEP
+; V327 tmp319 [V327,T81] ( 2, 1 ) byref -> rdx single-def "field V109._reference (fldOffset=0x0)" P-INDEP
+; V328 tmp320 [V328,T117] ( 2, 1 ) int -> rsi "field V109._length (fldOffset=0x8)" P-INDEP
; V329 tmp321 [V329,T82] ( 2, 1 ) byref -> rdi single-def "field V114._reference (fldOffset=0x0)" P-INDEP
; V330 tmp322 [V330,T118] ( 2, 1 ) int -> rdx "field V114._length (fldOffset=0x8)" P-INDEP
;* V331 tmp323 [V331 ] ( 0, 0 ) byref -> zero-ref single-def "field V115._reference (fldOffset=0x0)" P-INDEP
;* V332 tmp324 [V332 ] ( 0, 0 ) int -> zero-ref "field V115._length (fldOffset=0x8)" P-INDEP
; V333 tmp325 [V333,T83] ( 2, 1 ) byref -> rdi single-def "field V116._reference (fldOffset=0x0)" P-INDEP
; V334 tmp326 [V334,T119] ( 2, 1 ) int -> rdx "field V116._length (fldOffset=0x8)" P-INDEP
;* V335 tmp327 [V335 ] ( 0, 0 ) byref -> zero-ref single-def "field V117._reference (fldOffset=0x0)" P-INDEP
;* V336 tmp328 [V336 ] ( 0, 0 ) int -> zero-ref "field V117._length (fldOffset=0x8)" P-INDEP
-; V337 tmp329 [V337,T62] ( 3, 1.50) byref -> rcx "field V118._reference (fldOffset=0x0)" P-INDEP
-; V338 tmp330 [V338,T21] ( 5, 2.50) int -> rsi "field V118._length (fldOffset=0x8)" P-INDEP
-; V339 tmp331 [V339,T84] ( 2, 1 ) byref -> rcx single-def "field V120._reference (fldOffset=0x0)" P-INDEP
-; V340 tmp332 [V340,T120] ( 2, 1 ) int -> rsi "field V120._length (fldOffset=0x8)" P-INDEP
-;* V341 tmp333 [V341 ] ( 0, 0 ) byref -> zero-ref single-def "field V121._reference (fldOffset=0x0)" P-INDEP
-;* V342 tmp334 [V342 ] ( 0, 0 ) int -> zero-ref "field V121._length (fldOffset=0x8)" P-INDEP
+; V337 tmp329 [V337,T62] ( 3, 1.50) byref -> registers "field V118._reference (fldOffset=0x0)" P-INDEP
+; V338 tmp330 [V338,T21] ( 5, 2.50) int -> registers "field V118._length (fldOffset=0x8)" P-INDEP
+;* V339 tmp331 [V339 ] ( 0, 0 ) byref -> zero-ref single-def "field V120._reference (fldOffset=0x0)" P-INDEP
+;* V340 tmp332 [V340 ] ( 0, 0 ) int -> zero-ref "field V120._length (fldOffset=0x8)" P-INDEP
+; V341 tmp333 [V341,T84] ( 2, 1 ) byref -> rcx single-def "field V121._reference (fldOffset=0x0)" P-INDEP
+; V342 tmp334 [V342,T120] ( 2, 1 ) int -> rsi "field V121._length (fldOffset=0x8)" P-INDEP
;* V343 tmp335 [V343 ] ( 0, 0 ) byref -> zero-ref single-def "field V125._reference (fldOffset=0x0)" P-INDEP
;* V344 tmp336 [V344 ] ( 0, 0 ) int -> zero-ref "field V125._length (fldOffset=0x8)" P-INDEP
;* V345 tmp337 [V345 ] ( 0, 0 ) byref -> zero-ref single-def "field V126._reference (fldOffset=0x0)" P-INDEP
;* V346 tmp338 [V346 ] ( 0, 0 ) int -> zero-ref "field V126._length (fldOffset=0x8)" P-INDEP
;* V347 tmp339 [V347 ] ( 0, 0 ) byref -> zero-ref single-def "field V128._reference (fldOffset=0x0)" P-INDEP
;* V348 tmp340 [V348 ] ( 0, 0 ) int -> zero-ref "field V128._length (fldOffset=0x8)" P-INDEP
;* V349 tmp341 [V349 ] ( 0, 0 ) byref -> zero-ref single-def "field V130._reference (fldOffset=0x0)" P-INDEP
;* V350 tmp342 [V350 ] ( 0, 0 ) int -> zero-ref "field V130._length (fldOffset=0x8)" P-INDEP
;* V351 tmp343 [V351 ] ( 0, 0 ) byref -> zero-ref single-def "field V134._reference (fldOffset=0x0)" P-INDEP
;* V352 tmp344 [V352 ] ( 0, 0 ) int -> zero-ref "field V134._length (fldOffset=0x8)" P-INDEP
;* V353 tmp345 [V353 ] ( 0, 0 ) byref -> zero-ref single-def "field V135._reference (fldOffset=0x0)" P-INDEP
;* V354 tmp346 [V354 ] ( 0, 0 ) int -> zero-ref "field V135._length (fldOffset=0x8)" P-INDEP
;* V355 tmp347 [V355 ] ( 0, 0 ) byref -> zero-ref "field V136._reference (fldOffset=0x0)" P-INDEP
;* V356 tmp348 [V356 ] ( 0, 0 ) int -> zero-ref "field V136._length (fldOffset=0x8)" P-INDEP
;* V357 tmp349 [V357 ] ( 0, 0 ) byref -> zero-ref "field V137._reference (fldOffset=0x0)" P-INDEP
;* V358 tmp350 [V358 ] ( 0, 0 ) int -> zero-ref "field V137._length (fldOffset=0x8)" P-INDEP
-; V359 tmp351 [V359,T63] ( 3, 1.50) byref -> rax "field V138._reference (fldOffset=0x0)" P-INDEP
-; V360 tmp352 [V360,T22] ( 5, 2.50) int -> rsi "field V138._length (fldOffset=0x8)" P-INDEP
-; V361 tmp353 [V361,T85] ( 2, 1 ) byref -> rax single-def "field V140._reference (fldOffset=0x0)" P-INDEP
-; V362 tmp354 [V362,T121] ( 2, 1 ) int -> rsi "field V140._length (fldOffset=0x8)" P-INDEP
-;* V363 tmp355 [V363 ] ( 0, 0 ) byref -> zero-ref single-def "field V141._reference (fldOffset=0x0)" P-INDEP
-;* V364 tmp356 [V364 ] ( 0, 0 ) int -> zero-ref "field V141._length (fldOffset=0x8)" P-INDEP
+; V359 tmp351 [V359,T63] ( 3, 1.50) byref -> registers "field V138._reference (fldOffset=0x0)" P-INDEP
+; V360 tmp352 [V360,T22] ( 5, 2.50) int -> registers "field V138._length (fldOffset=0x8)" P-INDEP
+;* V361 tmp353 [V361 ] ( 0, 0 ) byref -> zero-ref single-def "field V140._reference (fldOffset=0x0)" P-INDEP
+;* V362 tmp354 [V362 ] ( 0, 0 ) int -> zero-ref "field V140._length (fldOffset=0x8)" P-INDEP
+; V363 tmp355 [V363,T85] ( 2, 1 ) byref -> rax single-def "field V141._reference (fldOffset=0x0)" P-INDEP
+; V364 tmp356 [V364,T121] ( 2, 1 ) int -> rsi "field V141._length (fldOffset=0x8)" P-INDEP
;* V365 tmp357 [V365 ] ( 0, 0 ) byref -> zero-ref single-def "field V145._reference (fldOffset=0x0)" P-INDEP
;* V366 tmp358 [V366 ] ( 0, 0 ) int -> zero-ref "field V145._length (fldOffset=0x8)" P-INDEP
;* V367 tmp359 [V367 ] ( 0, 0 ) byref -> zero-ref single-def "field V146._reference (fldOffset=0x0)" P-INDEP
;* V368 tmp360 [V368 ] ( 0, 0 ) int -> zero-ref "field V146._length (fldOffset=0x8)" P-INDEP
;* V369 tmp361 [V369 ] ( 0, 0 ) byref -> zero-ref single-def "field V148._reference (fldOffset=0x0)" P-INDEP
;* V370 tmp362 [V370 ] ( 0, 0 ) int -> zero-ref "field V148._length (fldOffset=0x8)" P-INDEP
;* V371 tmp363 [V371 ] ( 0, 0 ) byref -> zero-ref single-def "field V150._reference (fldOffset=0x0)" P-INDEP
;* V372 tmp364 [V372 ] ( 0, 0 ) int -> zero-ref "field V150._length (fldOffset=0x8)" P-INDEP
;* V373 tmp365 [V373 ] ( 0, 0 ) byref -> zero-ref single-def "field V154._reference (fldOffset=0x0)" P-INDEP
;* V374 tmp366 [V374 ] ( 0, 0 ) int -> zero-ref "field V154._length (fldOffset=0x8)" P-INDEP
;* V375 tmp367 [V375 ] ( 0, 0 ) byref -> zero-ref single-def "field V155._reference (fldOffset=0x0)" P-INDEP
;* V376 tmp368 [V376 ] ( 0, 0 ) int -> zero-ref "field V155._length (fldOffset=0x8)" P-INDEP
;* V377 tmp369 [V377 ] ( 0, 0 ) byref -> zero-ref "field V156._reference (fldOffset=0x0)" P-INDEP
;* V378 tmp370 [V378 ] ( 0, 0 ) int -> zero-ref "field V156._length (fldOffset=0x8)" P-INDEP
;* V379 tmp371 [V379 ] ( 0, 0 ) byref -> zero-ref "field V157._reference (fldOffset=0x0)" P-INDEP
;* V380 tmp372 [V380 ] ( 0, 0 ) int -> zero-ref "field V157._length (fldOffset=0x8)" P-INDEP
;* V381 tmp373 [V381 ] ( 0, 0 ) byref -> zero-ref "field V159._reference (fldOffset=0x0)" P-INDEP
;* V382 tmp374 [V382 ] ( 0, 0 ) int -> zero-ref "field V159._length (fldOffset=0x8)" P-INDEP
-; V383 tmp375 [V383,T64] ( 3, 1.50) byref -> rdx "field V160._reference (fldOffset=0x0)" P-INDEP
-; V384 tmp376 [V384,T68] ( 3, 1.50) int -> rcx "field V160._length (fldOffset=0x8)" P-INDEP
-; V385 tmp377 [V385,T86] ( 2, 1 ) byref -> rdx single-def "field V162._reference (fldOffset=0x0)" P-INDEP
-; V386 tmp378 [V386,T122] ( 2, 1 ) int -> rsi "field V162._length (fldOffset=0x8)" P-INDEP
-;* V387 tmp379 [V387 ] ( 0, 0 ) byref -> zero-ref single-def "field V163._reference (fldOffset=0x0)" P-INDEP
-;* V388 tmp380 [V388 ] ( 0, 0 ) int -> zero-ref "field V163._length (fldOffset=0x8)" P-INDEP
+; V383 tmp375 [V383,T64] ( 3, 1.50) byref -> registers "field V160._reference (fldOffset=0x0)" P-INDEP
+; V384 tmp376 [V384,T68] ( 3, 1.50) int -> registers "field V160._length (fldOffset=0x8)" P-INDEP
+;* V385 tmp377 [V385 ] ( 0, 0 ) byref -> zero-ref single-def "field V162._reference (fldOffset=0x0)" P-INDEP
+;* V386 tmp378 [V386 ] ( 0, 0 ) int -> zero-ref "field V162._length (fldOffset=0x8)" P-INDEP
+; V387 tmp379 [V387,T86] ( 2, 1 ) byref -> rdx single-def "field V163._reference (fldOffset=0x0)" P-INDEP
+; V388 tmp380 [V388,T122] ( 2, 1 ) int -> rsi "field V163._length (fldOffset=0x8)" P-INDEP
; V389 tmp381 [V389,T87] ( 2, 1 ) byref -> rdi single-def "field V168._reference (fldOffset=0x0)" P-INDEP
; V390 tmp382 [V390,T123] ( 2, 1 ) int -> rdx "field V168._length (fldOffset=0x8)" P-INDEP
;* V391 tmp383 [V391 ] ( 0, 0 ) byref -> zero-ref single-def "field V169._reference (fldOffset=0x0)" P-INDEP
;* V392 tmp384 [V392 ] ( 0, 0 ) int -> zero-ref "field V169._length (fldOffset=0x8)" P-INDEP
; V393 tmp385 [V393,T88] ( 2, 1 ) byref -> rdi single-def "field V170._reference (fldOffset=0x0)" P-INDEP
; V394 tmp386 [V394,T124] ( 2, 1 ) int -> rdx "field V170._length (fldOffset=0x8)" P-INDEP
;* V395 tmp387 [V395 ] ( 0, 0 ) byref -> zero-ref single-def "field V171._reference (fldOffset=0x0)" P-INDEP
;* V396 tmp388 [V396 ] ( 0, 0 ) int -> zero-ref "field V171._length (fldOffset=0x8)" P-INDEP
-; V397 tmp389 [V397,T65] ( 3, 1.50) byref -> rcx "field V172._reference (fldOffset=0x0)" P-INDEP
-; V398 tmp390 [V398,T23] ( 5, 2.50) int -> rsi "field V172._length (fldOffset=0x8)" P-INDEP
-; V399 tmp391 [V399,T89] ( 2, 1 ) byref -> rcx single-def "field V174._reference (fldOffset=0x0)" P-INDEP
-; V400 tmp392 [V400,T125] ( 2, 1 ) int -> rsi "field V174._length (fldOffset=0x8)" P-INDEP
-;* V401 tmp393 [V401 ] ( 0, 0 ) byref -> zero-ref single-def "field V175._reference (fldOffset=0x0)" P-INDEP
-;* V402 tmp394 [V402 ] ( 0, 0 ) int -> zero-ref "field V175._length (fldOffset=0x8)" P-INDEP
+; V397 tmp389 [V397,T65] ( 3, 1.50) byref -> registers "field V172._reference (fldOffset=0x0)" P-INDEP
+; V398 tmp390 [V398,T23] ( 5, 2.50) int -> registers "field V172._length (fldOffset=0x8)" P-INDEP
+;* V399 tmp391 [V399 ] ( 0, 0 ) byref -> zero-ref single-def "field V174._reference (fldOffset=0x0)" P-INDEP
+;* V400 tmp392 [V400 ] ( 0, 0 ) int -> zero-ref "field V174._length (fldOffset=0x8)" P-INDEP
+; V401 tmp393 [V401,T89] ( 2, 1 ) byref -> rcx single-def "field V175._reference (fldOffset=0x0)" P-INDEP
+; V402 tmp394 [V402,T125] ( 2, 1 ) int -> rsi "field V175._length (fldOffset=0x8)" P-INDEP
;* V403 tmp395 [V403 ] ( 0, 0 ) byref -> zero-ref single-def "field V179._reference (fldOffset=0x0)" P-INDEP
;* V404 tmp396 [V404 ] ( 0, 0 ) int -> zero-ref "field V179._length (fldOffset=0x8)" P-INDEP
;* V405 tmp397 [V405 ] ( 0, 0 ) byref -> zero-ref single-def "field V180._reference (fldOffset=0x0)" P-INDEP
;* V406 tmp398 [V406 ] ( 0, 0 ) int -> zero-ref "field V180._length (fldOffset=0x8)" P-INDEP
;* V407 tmp399 [V407 ] ( 0, 0 ) byref -> zero-ref single-def "field V182._reference (fldOffset=0x0)" P-INDEP
;* V408 tmp400 [V408 ] ( 0, 0 ) int -> zero-ref "field V182._length (fldOffset=0x8)" P-INDEP
;* V409 tmp401 [V409 ] ( 0, 0 ) byref -> zero-ref single-def "field V184._reference (fldOffset=0x0)" P-INDEP
;* V410 tmp402 [V410 ] ( 0, 0 ) int -> zero-ref "field V184._length (fldOffset=0x8)" P-INDEP
;* V411 tmp403 [V411 ] ( 0, 0 ) byref -> zero-ref single-def "field V188._reference (fldOffset=0x0)" P-INDEP
;* V412 tmp404 [V412 ] ( 0, 0 ) int -> zero-ref "field V188._length (fldOffset=0x8)" P-INDEP
;* V413 tmp405 [V413 ] ( 0, 0 ) byref -> zero-ref single-def "field V189._reference (fldOffset=0x0)" P-INDEP
;* V414 tmp406 [V414 ] ( 0, 0 ) int -> zero-ref "field V189._length (fldOffset=0x8)" P-INDEP
;* V415 tmp407 [V415 ] ( 0, 0 ) byref -> zero-ref "field V190._reference (fldOffset=0x0)" P-INDEP
;* V416 tmp408 [V416 ] ( 0, 0 ) int -> zero-ref "field V190._length (fldOffset=0x8)" P-INDEP
;* V417 tmp409 [V417 ] ( 0, 0 ) byref -> zero-ref "field V191._reference (fldOffset=0x0)" P-INDEP
;* V418 tmp410 [V418 ] ( 0, 0 ) int -> zero-ref "field V191._length (fldOffset=0x8)" P-INDEP
-; V419 tmp411 [V419,T66] ( 3, 1.50) byref -> rax "field V192._reference (fldOffset=0x0)" P-INDEP
-; V420 tmp412 [V420,T24] ( 5, 2.50) int -> rsi "field V192._length (fldOffset=0x8)" P-INDEP
-; V421 tmp413 [V421,T90] ( 2, 1 ) byref -> rax single-def "field V194._reference (fldOffset=0x0)" P-INDEP
-; V422 tmp414 [V422,T126] ( 2, 1 ) int -> rsi "field V194._length (fldOffset=0x8)" P-INDEP
-;* V423 tmp415 [V423 ] ( 0, 0 ) byref -> zero-ref single-def "field V195._reference (fldOffset=0x0)" P-INDEP
-;* V424 tmp416 [V424 ] ( 0, 0 ) int -> zero-ref "field V195._length (fldOffset=0x8)" P-INDEP
+; V419 tmp411 [V419,T66] ( 3, 1.50) byref -> registers "field V192._reference (fldOffset=0x0)" P-INDEP
+; V420 tmp412 [V420,T24] ( 5, 2.50) int -> registers "field V192._length (fldOffset=0x8)" P-INDEP
+;* V421 tmp413 [V421 ] ( 0, 0 ) byref -> zero-ref single-def "field V194._reference (fldOffset=0x0)" P-INDEP
+;* V422 tmp414 [V422 ] ( 0, 0 ) int -> zero-ref "field V194._length (fldOffset=0x8)" P-INDEP
+; V423 tmp415 [V423,T90] ( 2, 1 ) byref -> rax single-def "field V195._reference (fldOffset=0x0)" P-INDEP
+; V424 tmp416 [V424,T126] ( 2, 1 ) int -> rsi "field V195._length (fldOffset=0x8)" P-INDEP
;* V425 tmp417 [V425 ] ( 0, 0 ) byref -> zero-ref single-def "field V199._reference (fldOffset=0x0)" P-INDEP
;* V426 tmp418 [V426 ] ( 0, 0 ) int -> zero-ref "field V199._length (fldOffset=0x8)" P-INDEP
;* V427 tmp419 [V427 ] ( 0, 0 ) byref -> zero-ref single-def "field V200._reference (fldOffset=0x0)" P-INDEP
;* V428 tmp420 [V428 ] ( 0, 0 ) int -> zero-ref "field V200._length (fldOffset=0x8)" P-INDEP
;* V429 tmp421 [V429 ] ( 0, 0 ) byref -> zero-ref single-def "field V202._reference (fldOffset=0x0)" P-INDEP
;* V430 tmp422 [V430 ] ( 0, 0 ) int -> zero-ref "field V202._length (fldOffset=0x8)" P-INDEP
;* V431 tmp423 [V431 ] ( 0, 0 ) byref -> zero-ref single-def "field V204._reference (fldOffset=0x0)" P-INDEP
;* V432 tmp424 [V432 ] ( 0, 0 ) int -> zero-ref "field V204._length (fldOffset=0x8)" P-INDEP
;* V433 tmp425 [V433 ] ( 0, 0 ) byref -> zero-ref single-def "field V208._reference (fldOffset=0x0)" P-INDEP
;* V434 tmp426 [V434 ] ( 0, 0 ) int -> zero-ref "field V208._length (fldOffset=0x8)" P-INDEP
;* V435 tmp427 [V435 ] ( 0, 0 ) byref -> zero-ref single-def "field V209._reference (fldOffset=0x0)" P-INDEP
;* V436 tmp428 [V436 ] ( 0, 0 ) int -> zero-ref "field V209._length (fldOffset=0x8)" P-INDEP
;* V437 tmp429 [V437 ] ( 0, 0 ) byref -> zero-ref "field V210._reference (fldOffset=0x0)" P-INDEP
;* V438 tmp430 [V438 ] ( 0, 0 ) int -> zero-ref "field V210._length (fldOffset=0x8)" P-INDEP
;* V439 tmp431 [V439 ] ( 0, 0 ) byref -> zero-ref "field V211._reference (fldOffset=0x0)" P-INDEP
;* V440 tmp432 [V440 ] ( 0, 0 ) int -> zero-ref "field V211._length (fldOffset=0x8)" P-INDEP
;* V441 tmp433 [V441 ] ( 0, 0 ) byref -> zero-ref single-def "field V212._reference (fldOffset=0x0)" P-INDEP
;* V442 tmp434 [V442 ] ( 0, 0 ) int -> zero-ref "field V212._length (fldOffset=0x8)" P-INDEP
;* V443 tmp435 [V443 ] ( 0, 0 ) byref -> zero-ref single-def "field V213._reference (fldOffset=0x0)" P-INDEP
;* V444 tmp436 [V444 ] ( 0, 0 ) int -> zero-ref "field V213._length (fldOffset=0x8)" P-INDEP
; V445 tmp437 [V445,T25] ( 4, 2 ) ref -> [rbp-0x68] spill-single-def "V13.[008..016)"
; V446 tmp438 [V446,T26] ( 4, 2 ) ref -> [rbp-0x70] spill-single-def "V59.[008..016)"
; V447 tmp439 [V447,T27] ( 4, 2 ) ref -> r14 single-def "V113.[008..016)"
; V448 tmp440 [V448,T28] ( 4, 2 ) ref -> r14 single-def "V167.[008..016)"
; V449 cse0 [V449,T69] ( 3, 1.50) int -> [rbp-0x54] spill-single-def "CSE #02: conservative"
; V450 cse1 [V450,T70] ( 3, 1.50) int -> [rbp-0x58] spill-single-def "CSE #03: conservative"
; V451 cse2 [V451,T71] ( 3, 1.50) int -> [rbp-0x5C] spill-single-def "CSE #05: conservative"
; V452 cse3 [V452,T72] ( 3, 1.50) int -> [rbp-0x60] spill-single-def "CSE #07: conservative"
; V453 cse4 [V453,T33] ( 4, 2 ) int -> rdx "CSE #01: conservative"
;
; Lcl frame size = 232
G_M10435_IG01:
push rbp
push r15
push r14
push r13
push r12
push rbx
sub rsp, 232
lea rbp, [rsp+0x110]
xor eax, eax
mov qword ptr [rbp-0x48], rax
vxorps xmm8, xmm8, xmm8
vmovdqa xmmword ptr [rbp-0x40], xmm8
mov qword ptr [rbp-0x30], rax
mov rbx, rdi
mov r15, rdx
;; size=51 bbWeight=1 PerfScore 11.83
G_M10435_IG02:
cmp dword ptr [rbx+0x14], 2
jne G_M10435_IG50
;; size=10 bbWeight=1 PerfScore 4.00
G_M10435_IG03:
movzx rdx, sil
test dl, 4
jne G_M10435_IG50
test dl, 2
setne r14b
movzx r14, r14b
xor r13d, r13d
xor r12d, r12d
test dl, 1
je G_M10435_IG22
mov rdx, 0xD1FFAB1E ; box for System.Globalization.TimeSpanFormat:PositiveInvariantFormatLiterals
mov rdx, gword ptr [rdx]
mov rax, gword ptr [rdx+0x10]
mov gword ptr [rbp-0x68], rax
cmp dword ptr [rbx+0x18], 1
jne G_M10435_IG12
mov rdi, bword ptr [rbx+0x110]
mov edx, dword ptr [rbx+0x118]
mov ecx, dword ptr [rax+0x08]
mov dword ptr [rbp-0x54], ecx
test ecx, ecx
je G_M10435_IG56
mov rsi, gword ptr [rax+0x10]
test rsi, rsi
- je SHORT G_M10435_IG04
+ jne SHORT G_M10435_IG04
+ xor rsi, rsi
+ xor r8d, r8d
+ mov rax, rsi
+ mov esi, r8d
+ mov r8, rax
+ jmp SHORT G_M10435_IG05
+ ;; size=122 bbWeight=0.50 PerfScore 14.38
+G_M10435_IG04:
lea r8, bword ptr [rsi+0x0C]
mov esi, dword ptr [rsi+0x08]
- jmp SHORT G_M10435_IG05
- ;; size=115 bbWeight=0.50 PerfScore 15.00
-G_M10435_IG04:
- xor r8, r8
- xor esi, esi
- ;; size=5 bbWeight=0.50 PerfScore 0.25
+ ;; size=7 bbWeight=0.50 PerfScore 1.25
G_M10435_IG05:
cmp edx, esi
jne G_M10435_IG12
test esi, esi
je SHORT G_M10435_IG06
mov edx, esi
add rdx, rdx
mov rsi, r8
mov r8, 0xD1FFAB1E ; code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
call [r8]System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
test eax, eax
je SHORT G_M10435_IG12
;; size=37 bbWeight=0.50 PerfScore 3.88
G_M10435_IG06:
mov rdi, bword ptr [rbx+0x120]
mov edx, dword ptr [rbx+0x128]
cmp dword ptr [rbp-0x54], 5
jbe G_M10435_IG56
mov rax, gword ptr [rbp-0x68]
mov rsi, gword ptr [rax+0x38]
test rsi, rsi
- je SHORT G_M10435_IG07
+ jne SHORT G_M10435_IG07
+ xor rsi, rsi
+ xor eax, eax
+ mov ecx, eax
+ mov rax, rsi
+ mov esi, ecx
+ jmp SHORT G_M10435_IG08
+ ;; size=49 bbWeight=0.50 PerfScore 7.25
+G_M10435_IG07:
lea rax, bword ptr [rsi+0x0C]
mov esi, dword ptr [rsi+0x08]
- jmp SHORT G_M10435_IG08
- ;; size=45 bbWeight=0.50 PerfScore 7.88
-G_M10435_IG07:
- xor rax, rax
- xor esi, esi
- ;; size=4 bbWeight=0.50 PerfScore 0.25
+ ;; size=7 bbWeight=0.50 PerfScore 1.25
G_M10435_IG08:
cmp edx, esi
jne SHORT G_M10435_IG10
test esi, esi
je SHORT G_M10435_IG09
mov edx, esi
add rdx, rdx
mov rsi, rax
mov rax, 0xD1FFAB1E ; code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
call [rax]System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
jmp SHORT G_M10435_IG11
;; size=30 bbWeight=0.50 PerfScore 4.25
G_M10435_IG09:
mov eax, 1
jmp SHORT G_M10435_IG11
;; size=7 bbWeight=0.50 PerfScore 1.12
G_M10435_IG10:
xor eax, eax
;; size=2 bbWeight=0.50 PerfScore 0.12
G_M10435_IG11:
test eax, eax
jne G_M10435_IG21
;; size=8 bbWeight=0.50 PerfScore 0.62
G_M10435_IG12:
mov rdx, 0xD1FFAB1E ; box for System.Globalization.TimeSpanFormat:NegativeInvariantFormatLiterals
mov rdx, gword ptr [rdx]
mov rax, gword ptr [rdx+0x10]
mov gword ptr [rbp-0x70], rax
cmp dword ptr [rbx+0x14], 2
jne G_M10435_IG22
cmp dword ptr [rbx+0x18], 1
jne G_M10435_IG22
mov rdi, bword ptr [rbx+0x110]
mov edx, dword ptr [rbx+0x118]
mov ecx, dword ptr [rax+0x08]
mov dword ptr [rbp-0x58], ecx
test ecx, ecx
je G_M10435_IG56
mov rsi, gword ptr [rax+0x10]
test rsi, rsi
- je SHORT G_M10435_IG13
+ jne SHORT G_M10435_IG13
+ xor rsi, rsi
+ xor r8d, r8d
+ mov rax, rsi
+ mov esi, r8d
+ mov r8, rax
+ jmp SHORT G_M10435_IG14
+ ;; size=93 bbWeight=0.50 PerfScore 14.00
+G_M10435_IG13:
lea r8, bword ptr [rsi+0x0C]
mov esi, dword ptr [rsi+0x08]
- jmp SHORT G_M10435_IG14
- ;; size=86 bbWeight=0.50 PerfScore 14.62
-G_M10435_IG13:
- xor r8, r8
- xor esi, esi
- ;; size=5 bbWeight=0.50 PerfScore 0.25
+ ;; size=7 bbWeight=0.50 PerfScore 1.25
G_M10435_IG14:
cmp edx, esi
jne G_M10435_IG22
test esi, esi
je SHORT G_M10435_IG15
mov edx, esi
add rdx, rdx
mov rsi, r8
mov r8, 0xD1FFAB1E ; code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
call [r8]System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
test eax, eax
je SHORT G_M10435_IG22
;; size=37 bbWeight=0.50 PerfScore 3.88
G_M10435_IG15:
mov rdi, bword ptr [rbx+0x120]
mov edx, dword ptr [rbx+0x128]
cmp dword ptr [rbp-0x58], 5
jbe G_M10435_IG56
mov rax, gword ptr [rbp-0x70]
mov rsi, gword ptr [rax+0x38]
test rsi, rsi
- je SHORT G_M10435_IG16
+ jne SHORT G_M10435_IG16
+ xor rsi, rsi
+ xor eax, eax
+ mov ecx, eax
+ mov rax, rsi
+ mov esi, ecx
+ jmp SHORT G_M10435_IG17
+ ;; size=49 bbWeight=0.50 PerfScore 7.25
+G_M10435_IG16:
lea rax, bword ptr [rsi+0x0C]
mov esi, dword ptr [rsi+0x08]
- jmp SHORT G_M10435_IG17
- ;; size=45 bbWeight=0.50 PerfScore 7.88
-G_M10435_IG16:
- xor rax, rax
- xor esi, esi
- ;; size=4 bbWeight=0.50 PerfScore 0.25
+ ;; size=7 bbWeight=0.50 PerfScore 1.25
G_M10435_IG17:
cmp edx, esi
jne SHORT G_M10435_IG19
test esi, esi
je SHORT G_M10435_IG18
mov edx, esi
add rdx, rdx
mov rsi, rax
mov rax, 0xD1FFAB1E ; code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
call [rax]System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
jmp SHORT G_M10435_IG20
;; size=30 bbWeight=0.50 PerfScore 4.25
G_M10435_IG18:
mov eax, 1
jmp SHORT G_M10435_IG20
;; size=7 bbWeight=0.50 PerfScore 1.12
G_M10435_IG19:
xor eax, eax
;; size=2 bbWeight=0.50 PerfScore 0.12
G_M10435_IG20:
test eax, eax
je SHORT G_M10435_IG22
mov r12d, 1
xor r13d, r13d
jmp SHORT G_M10435_IG22
;; size=15 bbWeight=0.50 PerfScore 1.88
G_M10435_IG21:
mov r12d, 1
mov r13d, 1
;; size=12 bbWeight=0.50 PerfScore 0.25
G_M10435_IG22:
test r14d, r14d
je G_M10435_IG49
test r12d, r12d
jne G_M10435_IG49
cmp byte ptr [rbx+0x1D], 0
jne SHORT G_M10435_IG25
xor esi, esi
mov qword ptr [rbx+0x20], rsi
mov qword ptr [rbx+0x28], rsi
mov qword ptr [rbx+0x30], rsi
mov qword ptr [rbx+0x38], rsi
mov qword ptr [rbx+0x40], rsi
lea rdi, bword ptr [rbx+0x20]
mov rsi, gword ptr [rbx]
test rsi, rsi
- je SHORT G_M10435_IG23
+ jne SHORT G_M10435_IG23
+ xor rsi, rsi
+ xor edx, edx
+ mov ecx, edx
+ mov rdx, rsi
+ jmp SHORT G_M10435_IG24
+ ;; size=69 bbWeight=0.50 PerfScore 9.25
+G_M10435_IG23:
lea rdx, bword ptr [rsi+0x0C]
mov esi, dword ptr [rsi+0x08]
mov ecx, esi
- jmp SHORT G_M10435_IG24
- ;; size=69 bbWeight=0.50 PerfScore 10.12
-G_M10435_IG23:
- xor rdx, rdx
- xor ecx, ecx
- ;; size=4 bbWeight=0.50 PerfScore 0.25
+ ;; size=9 bbWeight=0.50 PerfScore 1.38
G_M10435_IG24:
mov rsi, rdx
mov edx, ecx
xor ecx, ecx
mov rax, 0xD1FFAB1E ; code for System.Globalization.TimeSpanFormat+FormatLiterals:Init(System.ReadOnlySpan`1[ushort],ubyte):this
call [rax]System.Globalization.TimeSpanFormat+FormatLiterals:Init(System.ReadOnlySpan`1[ushort],ubyte):this
mov byte ptr [rbx+0x1D], 1
;; size=23 bbWeight=0.50 PerfScore 2.50
G_M10435_IG25:
mov r14, gword ptr [rbx+0x28]
cmp dword ptr [rbx+0x14], 2
jne G_M10435_IG34
cmp dword ptr [rbx+0x18], 1
jne G_M10435_IG34
mov rdi, bword ptr [rbx+0x110]
mov edx, dword ptr [rbx+0x118]
mov eax, dword ptr [r14+0x08]
mov dword ptr [rbp-0x5C], eax
test eax, eax
je G_M10435_IG56
mov rsi, gword ptr [r14+0x10]
test rsi, rsi
- je SHORT G_M10435_IG26
+ jne SHORT G_M10435_IG26
+ xor rsi, rsi
+ xor ecx, ecx
+ mov eax, ecx
+ mov rcx, rsi
+ mov esi, eax
+ jmp SHORT G_M10435_IG27
+ ;; size=74 bbWeight=0.50 PerfScore 12.38
+G_M10435_IG26:
lea rcx, bword ptr [rsi+0x0C]
mov esi, dword ptr [rsi+0x08]
- jmp SHORT G_M10435_IG27
- ;; size=70 bbWeight=0.50 PerfScore 13.00
-G_M10435_IG26:
- xor rcx, rcx
- xor esi, esi
- ;; size=4 bbWeight=0.50 PerfScore 0.25
+ ;; size=7 bbWeight=0.50 PerfScore 1.25
G_M10435_IG27:
cmp edx, esi
- jne SHORT G_M10435_IG34
+ jne G_M10435_IG34
test esi, esi
je SHORT G_M10435_IG28
mov edx, esi
add rdx, rdx
mov rsi, rcx
mov rcx, 0xD1FFAB1E ; code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
call [rcx]System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
test eax, eax
je SHORT G_M10435_IG34
- ;; size=32 bbWeight=0.50 PerfScore 3.88
+ ;; size=36 bbWeight=0.50 PerfScore 3.88
G_M10435_IG28:
mov rdi, bword ptr [rbx+0x120]
mov edx, dword ptr [rbx+0x128]
cmp dword ptr [rbp-0x5C], 5
jbe G_M10435_IG56
mov rsi, gword ptr [r14+0x38]
test rsi, rsi
- je SHORT G_M10435_IG29
+ jne SHORT G_M10435_IG29
+ xor rsi, rsi
+ xor eax, eax
+ mov ecx, eax
+ mov rax, rsi
+ mov esi, ecx
+ jmp SHORT G_M10435_IG30
+ ;; size=45 bbWeight=0.50 PerfScore 6.75
+G_M10435_IG29:
lea rax, bword ptr [rsi+0x0C]
mov esi, dword ptr [rsi+0x08]
- jmp SHORT G_M10435_IG30
- ;; size=41 bbWeight=0.50 PerfScore 7.38
-G_M10435_IG29:
- xor rax, rax
- xor esi, esi
- ;; size=4 bbWeight=0.50 PerfScore 0.25
+ ;; size=7 bbWeight=0.50 PerfScore 1.25
G_M10435_IG30:
cmp edx, esi
jne SHORT G_M10435_IG32
test esi, esi
je SHORT G_M10435_IG31
mov edx, esi
add rdx, rdx
mov rsi, rax
mov rax, 0xD1FFAB1E ; code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
call [rax]System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
jmp SHORT G_M10435_IG33
;; size=30 bbWeight=0.50 PerfScore 4.25
G_M10435_IG31:
mov eax, 1
jmp SHORT G_M10435_IG33
;; size=7 bbWeight=0.50 PerfScore 1.12
G_M10435_IG32:
xor eax, eax
;; size=2 bbWeight=0.50 PerfScore 0.12
G_M10435_IG33:
test eax, eax
jne G_M10435_IG48
;; size=8 bbWeight=0.50 PerfScore 0.62
G_M10435_IG34:
cmp byte ptr [rbx+0x1E], 0
jne SHORT G_M10435_IG37
xor esi, esi
mov qword ptr [rbx+0x48], rsi
mov qword ptr [rbx+0x50], rsi
mov qword ptr [rbx+0x58], rsi
mov qword ptr [rbx+0x60], rsi
mov qword ptr [rbx+0x68], rsi
lea rdi, bword ptr [rbx+0x48]
mov rsi, gword ptr [rbx+0x08]
test rsi, rsi
- je SHORT G_M10435_IG35
+ jne SHORT G_M10435_IG35
+ xor rsi, rsi
+ xor edx, edx
+ mov ecx, edx
+ mov rdx, rsi
+ jmp SHORT G_M10435_IG36
+ ;; size=52 bbWeight=0.50 PerfScore 8.00
+G_M10435_IG35:
lea rdx, bword ptr [rsi+0x0C]
mov esi, dword ptr [rsi+0x08]
mov ecx, esi
- jmp SHORT G_M10435_IG36
- ;; size=52 bbWeight=0.50 PerfScore 8.88
-G_M10435_IG35:
- xor rdx, rdx
- xor ecx, ecx
- ;; size=4 bbWeight=0.50 PerfScore 0.25
+ ;; size=9 bbWeight=0.50 PerfScore 1.38
G_M10435_IG36:
mov rsi, rdx
mov edx, ecx
xor ecx, ecx
mov rax, 0xD1FFAB1E ; code for System.Globalization.TimeSpanFormat+FormatLiterals:Init(System.ReadOnlySpan`1[ushort],ubyte):this
call [rax]System.Globalization.TimeSpanFormat+FormatLiterals:Init(System.ReadOnlySpan`1[ushort],ubyte):this
mov byte ptr [rbx+0x1E], 1
;; size=23 bbWeight=0.50 PerfScore 2.50
G_M10435_IG37:
mov r14, gword ptr [rbx+0x50]
cmp dword ptr [rbx+0x14], 2
jne G_M10435_IG49
cmp dword ptr [rbx+0x18], 1
jne G_M10435_IG49
mov rdi, bword ptr [rbx+0x110]
mov edx, dword ptr [rbx+0x118]
mov eax, dword ptr [r14+0x08]
mov dword ptr [rbp-0x60], eax
test eax, eax
je G_M10435_IG56
mov rsi, gword ptr [r14+0x10]
test rsi, rsi
- je SHORT G_M10435_IG38
+ jne SHORT G_M10435_IG38
+ xor rsi, rsi
+ xor ecx, ecx
+ mov eax, ecx
+ mov rcx, rsi
+ mov esi, eax
+ jmp SHORT G_M10435_IG39
+ ;; size=74 bbWeight=0.50 PerfScore 12.38
+G_M10435_IG38:
lea rcx, bword ptr [rsi+0x0C]
mov esi, dword ptr [rsi+0x08]
- jmp SHORT G_M10435_IG39
- ;; size=70 bbWeight=0.50 PerfScore 13.00
-G_M10435_IG38:
- xor rcx, rcx
- xor esi, esi
- ;; size=4 bbWeight=0.50 PerfScore 0.25
+ ;; size=7 bbWeight=0.50 PerfScore 1.25
G_M10435_IG39:
cmp edx, esi
jne G_M10435_IG49
test esi, esi
je SHORT G_M10435_IG40
mov edx, esi
add rdx, rdx
mov rsi, rcx
mov rcx, 0xD1FFAB1E ; code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
call [rcx]System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
test eax, eax
je G_M10435_IG49
;; size=40 bbWeight=0.50 PerfScore 3.88
G_M10435_IG40:
mov rdi, bword ptr [rbx+0x120]
mov edx, dword ptr [rbx+0x128]
cmp dword ptr [rbp-0x60], 5
jbe G_M10435_IG56
mov rsi, gword ptr [r14+0x38]
test rsi, rsi
- je SHORT G_M10435_IG41
+ jne SHORT G_M10435_IG41
+ xor rsi, rsi
+ xor eax, eax
+ mov ecx, eax
+ mov rax, rsi
+ mov esi, ecx
+ jmp SHORT G_M10435_IG42
+ ;; size=45 bbWeight=0.50 PerfScore 6.75
+G_M10435_IG41:
lea rax, bword ptr [rsi+0x0C]
mov esi, dword ptr [rsi+0x08]
- jmp SHORT G_M10435_IG42
- ;; size=41 bbWeight=0.50 PerfScore 7.38
-G_M10435_IG41:
- xor rax, rax
- xor esi, esi
- ;; size=4 bbWeight=0.50 PerfScore 0.25
+ ;; size=7 bbWeight=0.50 PerfScore 1.25
G_M10435_IG42:
cmp edx, esi
jne SHORT G_M10435_IG44
test esi, esi
je SHORT G_M10435_IG43
mov edx, esi
add rdx, rdx
mov rsi, rax
mov rax, 0xD1FFAB1E ; code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
call [rax]System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
jmp SHORT G_M10435_IG45
;; size=30 bbWeight=0.50 PerfScore 4.25
G_M10435_IG43:
mov eax, 1
jmp SHORT G_M10435_IG45
;; size=7 bbWeight=0.50 PerfScore 1.12
G_M10435_IG44:
xor eax, eax
;; size=2 bbWeight=0.50 PerfScore 0.12
G_M10435_IG45:
test eax, eax
je G_M10435_IG49
xor r13d, r13d
;; size=11 bbWeight=0.50 PerfScore 0.75
G_M10435_IG46:
mov byte ptr [rbp-0x48], 2
vxorps xmm0, xmm0, xmm0
vmovdqu xmmword ptr [rbp-0x38], xmm0
add rbx, 112
lea rdi, [rsp]
mov rsi, rbx
movsq
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x10], rcx
add rsi, 8
add rdi, 8
movsq
lea rdi, [rsp+0x20]
lea rsi, [rbp-0x48]
movsq
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x30], rcx
add rsi, 8
add rdi, 8
movsq
lea rdi, [rsp+0x40]
lea rsi, [rbp-0x48]
movsq
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x50], rcx
add rsi, 8
add rdi, 8
movsq
lea rdi, [rsp+0x60]
lea rsi, [rbp-0x48]
movsq
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x70], rcx
add rsi, 8
add rdi, 8
movsq
lea rdi, [rsp+0x80]
lea rsi, [rbp-0x48]
movsq
movsq
mov rcx, bword ptr [rsi]
mov bword ptr [rsp+0x90], rcx
add rsi, 8
add rdi, 8
movsq
lea rsi, [rbp-0x50]
mov edi, r13d
mov rax, 0xD1FFAB1E ; code for System.Globalization.TimeSpanParse:TryTimeToTicks(ubyte,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,byref):ubyte
call [rax]System.Globalization.TimeSpanParse:TryTimeToTicks(ubyte,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,System.Globalization.TimeSpanParse+TimeSpanToken,byref):ubyte
test eax, eax
jne SHORT G_M10435_IG53
;; size=199 bbWeight=0.50 PerfScore 22.54
G_M10435_IG47:
mov rdi, r15
mov rax, 0xD1FFAB1E ; code for System.Globalization.TimeSpanParse+TimeSpanResult:SetOverflowFailure():ubyte:this
call [rax]System.Globalization.TimeSpanParse+TimeSpanResult:SetOverflowFailure():ubyte:this
jmp SHORT G_M10435_IG51
;; size=17 bbWeight=0.50 PerfScore 2.75
G_M10435_IG48:
mov r12d, 1
mov r13d, 1
;; size=12 bbWeight=0.50 PerfScore 0.25
G_M10435_IG49:
test r12d, r12d
jne G_M10435_IG46
;; size=9 bbWeight=0.50 PerfScore 0.62
G_M10435_IG50:
mov rdi, r15
mov rax, 0xD1FFAB1E ; code for System.Globalization.TimeSpanParse+TimeSpanResult:SetBadTimeSpanFailure():ubyte:this
call [rax]System.Globalization.TimeSpanParse+TimeSpanResult:SetBadTimeSpanFailure():ubyte:this
;; size=15 bbWeight=0.50 PerfScore 1.75
G_M10435_IG51:
movzx rax, al
;; size=3 bbWeight=0.50 PerfScore 0.12
G_M10435_IG52:
add rsp, 232
pop rbx
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
;; size=18 bbWeight=0.50 PerfScore 2.12
G_M10435_IG53:
test r13d, r13d
jne SHORT G_M10435_IG54
mov rax, qword ptr [rbp-0x50]
neg rax
mov qword ptr [rbp-0x50], rax
cmp qword ptr [rbp-0x50], 0
jg SHORT G_M10435_IG47
;; size=23 bbWeight=0.50 PerfScore 3.25
G_M10435_IG54:
mov rax, qword ptr [rbp-0x50]
mov qword ptr [r15], rax
mov eax, 1
;; size=12 bbWeight=0.50 PerfScore 1.12
G_M10435_IG55:
add rsp, 232
pop rbx
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
;; size=18 bbWeight=0.50 PerfScore 2.12
G_M10435_IG56:
call CORINFO_HELP_RNGCHKFAIL
int3
;; size=6 bbWeight=0 PerfScore 0.00
-; Total bytes of code 1471, prolog size 45, PerfScore 206.75, instruction count 414, allocated bytes for code 1471 (MethodHash=d6b4d73c) for method System.Globalization.TimeSpanParse:ProcessTerminal_D(byref,ubyte,byref):ubyte (FullOpts)
+; Total bytes of code 1545, prolog size 45, PerfScore 210.25, instruction count 442, allocated bytes for code 1545 (MethodHash=d6b4d73c) for method System.Globalization.TimeSpanParse:ProcessTerminal_D(byref,ubyte,byref):ubyte (FullOpts)
; ============================================================
42 (0.73 % of base) - System.DateTimeFormat:FormatCustomized[ubyte](System.DateTime,System.ReadOnlySpan`1[ushort],System.Globalization.DateTimeFormatInfo,System.TimeSpan,byref)
; Assembly listing for method System.DateTimeFormat:FormatCustomized[ubyte](System.DateTime,System.ReadOnlySpan`1[ushort],System.Globalization.DateTimeFormatInfo,System.TimeSpan,byref) (FullOpts)
; Emitting BLENDED_CODE for X64 with AVX - Unix
; FullOpts code
; optimized code
; rbp based frame
; fully interruptible
; No PGO data
; 0 inlinees with PGO data; 98 single block inlinees; 94 inlinees without PGO data
; Final local variable assignments
;
; V00 arg0 [V00 ] ( 19, 37 ) struct ( 8) [rbp-0x30] do-not-enreg[XS] addr-exposed ld-addr-op single-def <System.DateTime>
;* V01 arg1 [V01 ] ( 0, 0 ) struct (16) zero-ref multireg-arg ld-addr-op single-def <System.ReadOnlySpan`1[ushort]>
; V02 arg2 [V02,T13] ( 36, 83 ) ref -> r13 class-hnd single-def <System.Globalization.DateTimeFormatInfo>
;* V03 arg3 [V03 ] ( 0, 0 ) struct ( 8) zero-ref single-def <System.TimeSpan>
; V04 arg4 [V04,T00] ( 99,318 ) byref -> rbx single-def
; V05 loc0 [V05,T34] ( 15, 40 ) ref -> [rbp-0xA0] class-hnd spill-single-def <System.Globalization.Calendar>
; V06 loc1 [V06,T171] ( 4, 7 ) ubyte -> [rbp-0x34] spill-single-def
; V07 loc2 [V07,T280] ( 2, 3 ) ubyte -> [rbp-0x38] spill-single-def
; V08 loc3 [V08,T57] ( 3, 19 ) ubyte -> [rbp-0x3C]
; V09 loc4 [V09,T06] ( 33,113 ) int -> [rbp-0x40]
; V10 loc5 [V10,T02] ( 51,224 ) int -> [rbp-0x44] ld-addr-op
; V11 loc6 [V11,T72] ( 7, 14 ) int -> rsi
; V12 loc7 [V12,T03] ( 39,208 ) ushort -> [rbp-0x48] spill-single-def
;* V13 loc8 [V13 ] ( 0, 0 ) int -> zero-ref
; V14 loc9 [V14,T73] ( 7, 14 ) int -> [rbp-0x4C] spill-single-def
; V15 loc10 [V15,T05] ( 11,116 ) int -> [rbp-0x50] ld-addr-op spill-single-def
; V16 loc11 [V16,T18] ( 8, 58 ) int -> rsi
; V17 loc12 [V17,T19] ( 7, 56 ) int -> rdi
;* V18 loc13 [V18 ] ( 0, 0 ) int -> zero-ref
;* V19 loc14 [V19 ] ( 0, 0 ) ref -> zero-ref class-hnd <System.String>
; V20 loc15 [V20,T186] ( 3, 6 ) int -> rax
; V21 loc16 [V21,T187] ( 3, 6 ) int -> rax
; V22 loc17 [V22 ] ( 2, 4 ) ushort -> [rbp-0x54] do-not-enreg[X] addr-exposed ld-addr-op
;# V23 OutArgs [V23 ] ( 1, 1 ) struct ( 0) [rsp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
; V24 tmp1 [V24,T08] ( 4, 96 ) ref -> rax class-hnd exact "impAppendStmt" <System.String>
;* V25 tmp2 [V25 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V26 tmp3 [V26 ] ( 0, 0 ) int -> zero-ref "impAppendStmt"
; V27 tmp4 [V27,T85] ( 3, 12 ) int -> rdi "Span.get_Item index"
; V28 tmp5 [V28,T159] ( 2, 8 ) int -> rsi "impAppendStmt"
;* V29 tmp6 [V29 ] ( 0, 0 ) byref -> zero-ref
;* V30 tmp7 [V30 ] ( 0, 0 ) byref -> zero-ref
;* V31 tmp8 [V31 ] ( 0, 0 ) struct (16) zero-ref multireg-arg <System.ReadOnlySpan`1[ubyte]>
; V32 tmp9 [V32,T103] ( 4, 8 ) ref -> rax
; V33 tmp10 [V33,T160] ( 2, 8 ) int -> rsi "impAppendStmt"
;* V34 tmp11 [V34 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
; V35 tmp12 [V35,T303] ( 3, 0 ) ref -> rbx class-hnd exact "NewObj constructor temp" <System.FormatException>
;* V36 tmp13 [V36 ] ( 0, 0 ) int -> zero-ref "impAppendStmt"
;* V37 tmp14 [V37 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V38 tmp15 [V38 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V39 tmp16 [V39 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V40 tmp17 [V40 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V41 tmp18 [V41 ] ( 0, 0 ) byref -> zero-ref
;* V42 tmp19 [V42 ] ( 0, 0 ) ref -> zero-ref
;* V43 tmp20 [V43 ] ( 0, 0 ) int -> zero-ref
;* V44 tmp21 [V44 ] ( 0, 0 ) byref -> zero-ref
;* V45 tmp22 [V45 ] ( 0, 0 ) ref -> zero-ref
;* V46 tmp23 [V46 ] ( 0, 0 ) int -> zero-ref
; V47 tmp24 [V47,T188] ( 3, 6 ) int -> rdx
;* V48 tmp25 [V48 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V49 tmp26 [V49 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
; V50 tmp27 [V50,T304] ( 3, 0 ) ref -> rbx class-hnd exact "NewObj constructor temp" <System.FormatException>
; V51 tmp28 [V51,T161] ( 2, 8 ) int -> rsi "impAppendStmt"
;* V52 tmp29 [V52 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[SBR] multireg-ret "spilled call-like call argument" <System.ReadOnlySpan`1[ubyte]>
;* V53 tmp30 [V53 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[SBR] multireg-ret "spilled call-like call argument" <System.ReadOnlySpan`1[ubyte]>
; V54 tmp31 [V54,T305] ( 3, 0 ) ref -> rbx class-hnd exact "NewObj constructor temp" <System.FormatException>
;* V55 tmp32 [V55 ] ( 0, 0 ) struct (16) zero-ref multireg-arg ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
;* V56 tmp33 [V56 ] ( 0, 0 ) struct ( 8) zero-ref "impAppendStmt" <System.DateTime>
; V57 tmp34 [V57,T114] ( 4, 8 ) int -> rdi "Inline stloc first use temp"
;* V58 tmp35 [V58 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V59 tmp36 [V59 ] ( 0, 0 ) struct (16) zero-ref multireg-arg "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V60 tmp37 [V60,T59] ( 4, 16 ) ref -> rax class-hnd exact "Inlining Arg" <System.String>
-;* V61 tmp38 [V61 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V62 tmp39 [V62 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V61 tmp38 [V61 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V62 tmp39 [V62 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V63 tmp40 [V63,T138] ( 2, 8 ) byref -> rcx "Inlining Arg"
-; V64 tmp41 [V64,T162] ( 2, 8 ) int -> rax "Inlining Arg"
+; V64 tmp41 [V64,T162] ( 2, 8 ) int -> r8 "Inlining Arg"
; V65 tmp42 [V65,T139] ( 2, 8 ) ref -> [rbp-0xA8] class-hnd exact spill-single-def "impAppendStmt" <System.Text.UTF8Encoding+UTF8EncodingSealed>
;* V66 tmp43 [V66 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.Span`1[ubyte]>
;* V67 tmp44 [V67 ] ( 0, 0 ) struct (16) zero-ref multireg-arg multireg-ret "Inline return value spill temp" <System.Span`1[ubyte]>
; V68 tmp45 [V68,T115] ( 4, 8 ) int -> rcx "Inline stloc first use temp"
;* V69 tmp46 [V69 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline stloc first use temp" <System.Span`1[ubyte]>
; V70 tmp47 [V70,T47] ( 5, 20 ) int -> rax "Inlining Arg"
;* V71 tmp48 [V71 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[SBR] multireg-ret "Return value temp for multireg return" <System.Span`1[ubyte]>
;* V72 tmp49 [V72 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.Span`1[ubyte]>
;* V73 tmp50 [V73 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
; V74 tmp51 [V74,T116] ( 4, 8 ) int -> rsi "Inline stloc first use temp"
;* V75 tmp52 [V75 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V76 tmp53 [V76,T189] ( 3, 6 ) int -> rdx "Inline return value spill temp"
;* V77 tmp54 [V77 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
; V78 tmp55 [V78,T117] ( 4, 8 ) int -> rdi "Inline stloc first use temp"
;* V79 tmp56 [V79 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V80 tmp57 [V80,T190] ( 3, 6 ) int -> rdx "Inline return value spill temp"
;* V81 tmp58 [V81 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
; V82 tmp59 [V82,T118] ( 4, 8 ) int -> rdi "Inline stloc first use temp"
;* V83 tmp60 [V83 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V84 tmp61 [V84,T191] ( 3, 6 ) int -> rdx "Inline return value spill temp"
;* V85 tmp62 [V85 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
; V86 tmp63 [V86,T119] ( 4, 8 ) int -> rdi "Inline stloc first use temp"
;* V87 tmp64 [V87 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V88 tmp65 [V88,T192] ( 3, 6 ) int -> rdx "Inline return value spill temp"
;* V89 tmp66 [V89 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
; V90 tmp67 [V90,T120] ( 4, 8 ) int -> r9 "Inline stloc first use temp"
;* V91 tmp68 [V91 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V92 tmp69 [V92 ] ( 0, 0 ) struct (16) zero-ref "ReadOnlySpan<T> for CreateSpan<T>" <System.ReadOnlySpan`1[int]>
;* V93 tmp70 [V93 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline stloc first use temp" <System.ReadOnlySpan`1[int]>
; V94 tmp71 [V94,T86] ( 3, 12 ) int -> rax "Inlining Arg"
;* V95 tmp72 [V95 ] ( 0, 0 ) struct (16) zero-ref multireg-arg "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V96 tmp73 [V96,T60] ( 4, 16 ) ref -> rdx class-hnd exact "Inlining Arg" <System.String>
-;* V97 tmp74 [V97 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V98 tmp75 [V98 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V97 tmp74 [V97 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V98 tmp75 [V98 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V99 tmp76 [V99,T140] ( 2, 8 ) byref -> rdi "Inlining Arg"
; V100 tmp77 [V100,T163] ( 2, 8 ) int -> rdx "Inlining Arg"
;* V101 tmp78 [V101 ] ( 0, 0 ) struct (16) zero-ref multireg-arg "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V102 tmp79 [V102,T61] ( 4, 16 ) ref -> rdx class-hnd exact "Inlining Arg" <System.String>
-;* V103 tmp80 [V103 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V104 tmp81 [V104 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V103 tmp80 [V103 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V104 tmp81 [V104 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V105 tmp82 [V105,T141] ( 2, 8 ) byref -> rdi "Inlining Arg"
; V106 tmp83 [V106,T164] ( 2, 8 ) int -> rdx "Inlining Arg"
; V107 tmp84 [V107,T87] ( 3, 12 ) int -> rdx "Inlining Arg"
; V108 tmp85 [V108,T78] ( 3, 12 ) byref -> rsi "Span.get_Item ptrToSpan"
;* V109 tmp86 [V109 ] ( 0, 0 ) ubyte -> zero-ref "Inlining Arg"
;* V110 tmp87 [V110 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
; V111 tmp88 [V111,T121] ( 4, 8 ) int -> r9 "Inline stloc first use temp"
;* V112 tmp89 [V112 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V113 tmp90 [V113 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline return value spill temp" <System.String>
; V114 tmp91 [V114,T43] ( 5, 20 ) ref -> [rbp-0xB0] class-hnd exact spill-single-def "Inlining Arg" <System.Globalization.CultureData>
; V115 tmp92 [V115,T142] ( 2, 8 ) ref -> rsi class-hnd exact "dup spill" <System.String>
; V116 tmp93 [V116,T104] ( 4, 8 ) ref -> rsi
; V117 tmp94 [V117,T79] ( 3, 12 ) ref -> [rbp-0xB8] class-hnd exact spill-single-def "dup spill" <System.String>
;* V118 tmp95 [V118 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inline stloc first use temp" <System.String>
;* V119 tmp96 [V119 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline return value spill temp" <System.String>
;* V120 tmp97 [V120 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline return value spill temp" <System.String>
; V121 tmp98 [V121,T44] ( 5, 20 ) ref -> [rbp-0xC0] class-hnd exact spill-single-def "Inlining Arg" <System.Globalization.CultureData>
; V122 tmp99 [V122,T143] ( 2, 8 ) ref -> rsi class-hnd exact "dup spill" <System.String>
; V123 tmp100 [V123,T105] ( 4, 8 ) ref -> rsi
; V124 tmp101 [V124,T80] ( 3, 12 ) ref -> [rbp-0xC8] class-hnd exact spill-single-def "dup spill" <System.String>
;* V125 tmp102 [V125 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inline stloc first use temp" <System.String>
;* V126 tmp103 [V126 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline return value spill temp" <System.String>
; V127 tmp104 [V127,T64] ( 4, 16 ) ushort -> rax "Inlining Arg"
;* V128 tmp105 [V128 ] ( 0, 0 ) struct ( 8) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.Text.Rune>
;* V129 tmp106 [V129 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.Span`1[ubyte]>
;* V130 tmp107 [V130 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.Span`1[ubyte]>
; V131 tmp108 [V131,T122] ( 4, 8 ) int -> rax "Inline stloc first use temp"
;* V132 tmp109 [V132 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline stloc first use temp" <System.Span`1[ubyte]>
; V133 tmp110 [V133,T88] ( 3, 12 ) ubyte -> rsi "Inlining Arg"
; V134 tmp111 [V134,T193] ( 3, 6 ) int -> rax "Inline stloc first use temp"
;* V135 tmp112 [V135 ] ( 0, 0 ) struct (16) zero-ref multireg-ret "Inline return value spill temp" <System.Span`1[ubyte]>
; V136 tmp113 [V136,T123] ( 4, 8 ) int -> rcx "Inline stloc first use temp"
;* V137 tmp114 [V137 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline stloc first use temp" <System.Span`1[ubyte]>
; V138 tmp115 [V138,T48] ( 5, 20 ) int -> rax "Inlining Arg"
;* V139 tmp116 [V139 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[SBR] multireg-ret "Return value temp for multireg return" <System.Span`1[ubyte]>
;* V140 tmp117 [V140 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.Span`1[ubyte]>
;* V141 tmp118 [V141 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
;* V142 tmp119 [V142 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.Span`1[ubyte]>
;* V143 tmp120 [V143 ] ( 0, 0 ) struct (16) zero-ref multireg-arg ld-addr-op "NewObj constructor temp" <System.Span`1[ubyte]>
;* V144 tmp121 [V144 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.Span`1[ubyte]>
;* V145 tmp122 [V145 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
;* V146 tmp123 [V146 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
; V147 tmp124 [V147 ] ( 1, 2 ) int -> [rbp-0x60] do-not-enreg[X] addr-exposed ld-addr-op "Inline ldloca(s) first use temp"
;* V148 tmp125 [V148 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ubyte]>
; V149 tmp126 [V149,T144] ( 2, 8 ) ref -> rax class-hnd "dup spill" <ubyte[]>
; V150 tmp127 [V150,T74] ( 6, 12 ) ref -> rax
; V151 tmp128 [V151,T145] ( 2, 8 ) ref -> [rbp-0xD0] class-hnd exact spill-single-def "impAppendStmt" <System.Text.UTF8Encoding+UTF8EncodingSealed>
; V152 tmp129 [V152,T81] ( 3, 12 ) ref -> [rbp-0xD8] class-hnd spill-single-def "dup spill" <ubyte[]>
;* V153 tmp130 [V153 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <ubyte[]>
;* V154 tmp131 [V154 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline return value spill temp" <System.String>
; V155 tmp132 [V155,T45] ( 5, 20 ) ref -> [rbp-0xE0] class-hnd exact spill-single-def "Inlining Arg" <System.Globalization.CultureData>
; V156 tmp133 [V156,T146] ( 2, 8 ) ref -> rsi class-hnd exact "dup spill" <System.String>
; V157 tmp134 [V157,T106] ( 4, 8 ) ref -> rsi
; V158 tmp135 [V158,T82] ( 3, 12 ) ref -> [rbp-0xE8] class-hnd exact spill-single-def "dup spill" <System.String>
;* V159 tmp136 [V159 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inline stloc first use temp" <System.String>
;* V160 tmp137 [V160 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline return value spill temp" <System.String>
;* V161 tmp138 [V161 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ubyte]>
;* V162 tmp139 [V162 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ubyte]>
; V163 tmp140 [V163,T147] ( 2, 8 ) ref -> rax class-hnd "dup spill" <ubyte[]>
; V164 tmp141 [V164,T75] ( 6, 12 ) ref -> rax
; V165 tmp142 [V165,T148] ( 2, 8 ) ref -> [rbp-0xF0] class-hnd exact spill-single-def "impAppendStmt" <System.Text.UTF8Encoding+UTF8EncodingSealed>
; V166 tmp143 [V166,T83] ( 3, 12 ) ref -> [rbp-0xF8] class-hnd spill-single-def "dup spill" <ubyte[]>
;* V167 tmp144 [V167 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <ubyte[]>
;* V168 tmp145 [V168 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline return value spill temp" <System.String>
; V169 tmp146 [V169,T46] ( 5, 20 ) ref -> [rbp-0x100] class-hnd exact spill-single-def "Inlining Arg" <System.Globalization.CultureData>
; V170 tmp147 [V170,T149] ( 2, 8 ) ref -> rsi class-hnd exact "dup spill" <System.String>
; V171 tmp148 [V171,T107] ( 4, 8 ) ref -> rsi
; V172 tmp149 [V172,T84] ( 3, 12 ) ref -> [rbp-0x108] class-hnd exact spill-single-def "dup spill" <System.String>
;* V173 tmp150 [V173 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inline stloc first use temp" <System.String>
;* V174 tmp151 [V174 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline return value spill temp" <System.String>
;* V175 tmp152 [V175 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ubyte]>
; V176 tmp153 [V176,T49] ( 5, 20 ) int -> rax "Inline stloc first use temp"
;* V177 tmp154 [V177 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline stloc first use temp" <System.Span`1[ubyte]>
;* V178 tmp155 [V178 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
; V179 tmp156 [V179,T124] ( 4, 8 ) int -> r9 "Inline stloc first use temp"
;* V180 tmp157 [V180 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V181 tmp158 [V181,T95] ( 5, 10 ) ref -> rax class-hnd "Inline return value spill temp" <System.String>
;* V182 tmp159 [V182 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
;* V183 tmp160 [V183 ] ( 0, 0 ) struct (16) zero-ref multireg-arg "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
-;* V184 tmp161 [V184 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V185 tmp162 [V185 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V184 tmp161 [V184 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V185 tmp162 [V185 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V186 tmp163 [V186,T150] ( 2, 8 ) byref -> rcx "Inlining Arg"
-; V187 tmp164 [V187,T165] ( 2, 8 ) int -> rax "Inlining Arg"
+; V187 tmp164 [V187,T165] ( 2, 8 ) int -> r8 "Inlining Arg"
; V188 tmp165 [V188,T151] ( 2, 8 ) ref -> [rbp-0x110] class-hnd exact spill-single-def "impAppendStmt" <System.Text.UTF8Encoding+UTF8EncodingSealed>
;* V189 tmp166 [V189 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.Span`1[ubyte]>
;* V190 tmp167 [V190 ] ( 0, 0 ) struct (16) zero-ref multireg-arg multireg-ret "Inline return value spill temp" <System.Span`1[ubyte]>
; V191 tmp168 [V191,T125] ( 4, 8 ) int -> rcx "Inline stloc first use temp"
;* V192 tmp169 [V192 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline stloc first use temp" <System.Span`1[ubyte]>
; V193 tmp170 [V193,T50] ( 5, 20 ) int -> rax "Inlining Arg"
;* V194 tmp171 [V194 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[SBR] multireg-ret "Return value temp for multireg return" <System.Span`1[ubyte]>
;* V195 tmp172 [V195 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.Span`1[ubyte]>
;* V196 tmp173 [V196 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
; V197 tmp174 [V197,T126] ( 4, 8 ) int -> rdi "Inline stloc first use temp"
;* V198 tmp175 [V198 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V199 tmp176 [V199 ] ( 0, 0 ) struct (16) zero-ref multireg-arg "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V200 tmp177 [V200,T62] ( 4, 16 ) ref -> rax class-hnd exact "Inlining Arg" <System.String>
-;* V201 tmp178 [V201 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V202 tmp179 [V202 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V201 tmp178 [V201 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V202 tmp179 [V202 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V203 tmp180 [V203,T152] ( 2, 8 ) byref -> rcx "Inlining Arg"
-; V204 tmp181 [V204,T166] ( 2, 8 ) int -> rax "Inlining Arg"
+; V204 tmp181 [V204,T166] ( 2, 8 ) int -> r8 "Inlining Arg"
; V205 tmp182 [V205,T153] ( 2, 8 ) ref -> [rbp-0x118] class-hnd exact spill-single-def "impAppendStmt" <System.Text.UTF8Encoding+UTF8EncodingSealed>
;* V206 tmp183 [V206 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.Span`1[ubyte]>
;* V207 tmp184 [V207 ] ( 0, 0 ) struct (16) zero-ref multireg-arg multireg-ret "Inline return value spill temp" <System.Span`1[ubyte]>
; V208 tmp185 [V208,T127] ( 4, 8 ) int -> rcx "Inline stloc first use temp"
;* V209 tmp186 [V209 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline stloc first use temp" <System.Span`1[ubyte]>
; V210 tmp187 [V210,T51] ( 5, 20 ) int -> rax "Inlining Arg"
;* V211 tmp188 [V211 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[SBR] multireg-ret "Return value temp for multireg return" <System.Span`1[ubyte]>
;* V212 tmp189 [V212 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.Span`1[ubyte]>
;* V213 tmp190 [V213 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
; V214 tmp191 [V214,T194] ( 3, 6 ) int -> rsi "Inline return value spill temp"
;* V215 tmp192 [V215 ] ( 0, 0 ) struct (16) zero-ref multireg-arg "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V216 tmp193 [V216,T63] ( 4, 16 ) ref -> rax class-hnd exact "Inlining Arg" <System.String>
-;* V217 tmp194 [V217 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V218 tmp195 [V218 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V217 tmp194 [V217 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V218 tmp195 [V218 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V219 tmp196 [V219,T154] ( 2, 8 ) byref -> rcx "Inlining Arg"
-; V220 tmp197 [V220,T167] ( 2, 8 ) int -> rax "Inlining Arg"
+; V220 tmp197 [V220,T167] ( 2, 8 ) int -> r8 "Inlining Arg"
; V221 tmp198 [V221,T155] ( 2, 8 ) ref -> [rbp-0x120] class-hnd exact spill-single-def "impAppendStmt" <System.Text.UTF8Encoding+UTF8EncodingSealed>
;* V222 tmp199 [V222 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.Span`1[ubyte]>
;* V223 tmp200 [V223 ] ( 0, 0 ) struct (16) zero-ref multireg-arg multireg-ret "Inline return value spill temp" <System.Span`1[ubyte]>
; V224 tmp201 [V224,T128] ( 4, 8 ) int -> rcx "Inline stloc first use temp"
;* V225 tmp202 [V225 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline stloc first use temp" <System.Span`1[ubyte]>
; V226 tmp203 [V226,T52] ( 5, 20 ) int -> rax "Inlining Arg"
;* V227 tmp204 [V227 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[SBR] multireg-ret "Return value temp for multireg return" <System.Span`1[ubyte]>
;* V228 tmp205 [V228 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.Span`1[ubyte]>
;* V229 tmp206 [V229 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
; V230 tmp207 [V230,T96] ( 5, 10 ) ref -> rax class-hnd "Inline return value spill temp" <System.String>
;* V231 tmp208 [V231 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
;* V232 tmp209 [V232 ] ( 0, 0 ) struct (16) zero-ref multireg-arg "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
-;* V233 tmp210 [V233 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V234 tmp211 [V234 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V233 tmp210 [V233 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V234 tmp211 [V234 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V235 tmp212 [V235,T156] ( 2, 8 ) byref -> rcx "Inlining Arg"
-; V236 tmp213 [V236,T168] ( 2, 8 ) int -> rax "Inlining Arg"
+; V236 tmp213 [V236,T168] ( 2, 8 ) int -> r8 "Inlining Arg"
; V237 tmp214 [V237,T157] ( 2, 8 ) ref -> [rbp-0x128] class-hnd exact spill-single-def "impAppendStmt" <System.Text.UTF8Encoding+UTF8EncodingSealed>
;* V238 tmp215 [V238 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.Span`1[ubyte]>
;* V239 tmp216 [V239 ] ( 0, 0 ) struct (16) zero-ref multireg-arg multireg-ret "Inline return value spill temp" <System.Span`1[ubyte]>
; V240 tmp217 [V240,T129] ( 4, 8 ) int -> rcx "Inline stloc first use temp"
;* V241 tmp218 [V241 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline stloc first use temp" <System.Span`1[ubyte]>
; V242 tmp219 [V242,T53] ( 5, 20 ) int -> rax "Inlining Arg"
;* V243 tmp220 [V243 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[SBR] multireg-ret "Return value temp for multireg return" <System.Span`1[ubyte]>
;* V244 tmp221 [V244 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.Span`1[ubyte]>
;* V245 tmp222 [V245 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
; V246 tmp223 [V246,T250] ( 2, 4 ) ubyte -> rax "Inline return value spill temp"
;* V247 tmp224 [V247,T279] ( 0, 0 ) ushort -> zero-ref "Inlining Arg"
;* V248 tmp225 [V248 ] ( 0, 0 ) struct ( 8) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.Text.Rune>
;* V249 tmp226 [V249 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.Span`1[ubyte]>
;* V250 tmp227 [V250 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.Span`1[ubyte]>
;* V251 tmp228 [V251 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V252 tmp229 [V252 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline stloc first use temp" <System.Span`1[ubyte]>
;* V253 tmp230 [V253 ] ( 0, 0 ) ubyte -> zero-ref "Inlining Arg"
;* V254 tmp231 [V254,T291] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V255 tmp232 [V255 ] ( 0, 0 ) struct (16) zero-ref multireg-ret "Inline return value spill temp" <System.Span`1[ubyte]>
; V256 tmp233 [V256,T130] ( 4, 8 ) int -> rcx "Inline stloc first use temp"
;* V257 tmp234 [V257 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline stloc first use temp" <System.Span`1[ubyte]>
; V258 tmp235 [V258,T54] ( 5, 20 ) int -> rax "Inlining Arg"
;* V259 tmp236 [V259 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[SBR] multireg-ret "Return value temp for multireg return" <System.Span`1[ubyte]>
;* V260 tmp237 [V260 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.Span`1[ubyte]>
;* V261 tmp238 [V261 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
;* V262 tmp239 [V262 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.Span`1[ubyte]>
;* V263 tmp240 [V263 ] ( 0, 0 ) struct (16) zero-ref multireg-arg ld-addr-op "NewObj constructor temp" <System.Span`1[ubyte]>
;* V264 tmp241 [V264 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.Span`1[ubyte]>
;* V265 tmp242 [V265 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
;* V266 tmp243 [V266 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
; V267 tmp244 [V267 ] ( 1, 2 ) int -> [rbp-0x68] do-not-enreg[X] addr-exposed ld-addr-op "Inline ldloca(s) first use temp"
;* V268 tmp245 [V268 ] ( 0, 0 ) ushort -> zero-ref "Inline stloc first use temp"
;* V269 tmp246 [V269 ] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
; V270 tmp247 [V270,T37] ( 3, 32 ) int -> rdx "Inline return value spill temp"
;* V271 tmp248 [V271 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
;* V272 tmp249 [V272 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Globalization.CultureInfo>
; V273 tmp250 [V273,T35] ( 3, 32 ) ref -> rax class-hnd "Inline return value spill temp" <System.String>
;* V274 tmp251 [V274 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
; V275 tmp252 [V275,T33] ( 2, 48 ) ref -> rdi class-hnd exact "Inlining Arg" <System.Globalization.CultureInfo>
;* V276 tmp253 [V276 ] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
; V277 tmp254 [V277,T66] ( 2, 16 ) ref -> rax class-hnd "Inline return value spill temp" <System.Globalization.NumberFormatInfo>
;* V278 tmp255 [V278 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Globalization.CultureInfo>
; V279 tmp256 [V279,T20] ( 6, 56 ) ref -> rax class-hnd "Inline return value spill temp" <System.String>
;* V280 tmp257 [V280 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
; V281 tmp258 [V281,T16] ( 3, 64 ) ref -> rcx class-hnd exact "Inlining Arg" <System.Globalization.CultureInfo>
;* V282 tmp259 [V282,T170] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
; V283 tmp260 [V283,T67] ( 2, 16 ) ref -> rax class-hnd "Inline return value spill temp" <System.Globalization.NumberFormatInfo>
;* V284 tmp261 [V284 ] ( 0, 0 ) struct (16) zero-ref multireg-arg "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
-;* V285 tmp262 [V285 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V286 tmp263 [V286 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V285 tmp262 [V285 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V286 tmp263 [V286 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V287 tmp264 [V287,T39] ( 2, 32 ) byref -> rcx "Inlining Arg"
-; V288 tmp265 [V288,T40] ( 2, 32 ) int -> rax "Inlining Arg"
+; V288 tmp265 [V288,T40] ( 2, 32 ) int -> r8 "Inlining Arg"
; V289 tmp266 [V289,T17] ( 2, 64 ) ref -> [rbp-0x130] class-hnd exact spill-single-def "impAppendStmt" <System.Text.UTF8Encoding+UTF8EncodingSealed>
;* V290 tmp267 [V290 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.Span`1[ubyte]>
;* V291 tmp268 [V291 ] ( 0, 0 ) struct (16) zero-ref multireg-arg multireg-ret "Inline return value spill temp" <System.Span`1[ubyte]>
; V292 tmp269 [V292,T29] ( 4, 48 ) int -> rcx "Inline stloc first use temp"
;* V293 tmp270 [V293 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline stloc first use temp" <System.Span`1[ubyte]>
; V294 tmp271 [V294,T07] ( 5,112 ) int -> rax "Inlining Arg"
;* V295 tmp272 [V295 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[SBR] multireg-ret "Return value temp for multireg return" <System.Span`1[ubyte]>
;* V296 tmp273 [V296 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.Span`1[ubyte]>
;* V297 tmp274 [V297 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
; V298 tmp275 [V298,T97] ( 5, 10 ) int -> rcx "Inline stloc first use temp"
;* V299 tmp276 [V299 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline stloc first use temp" <System.Span`1[ubyte]>
;* V300 tmp277 [V300 ] ( 0, 0 ) struct (16) zero-ref multireg-arg multireg-ret ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
; V301 tmp278 [V301,T98] ( 5, 10 ) int -> rcx "Inline stloc first use temp"
;* V302 tmp279 [V302 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline stloc first use temp" <System.Span`1[ubyte]>
;* V303 tmp280 [V303 ] ( 0, 0 ) struct (16) zero-ref multireg-arg multireg-ret ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ubyte]>
; V304 tmp281 [V304,T99] ( 5, 10 ) int -> rsi "Inline return value spill temp"
;* V305 tmp282 [V305 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V306 tmp283 [V306,T131] ( 4, 8 ) int -> rdi "Inline return value spill temp"
;* V307 tmp284 [V307 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V308 tmp285 [V308,T100] ( 5, 10 ) int -> r8 "Inline stloc first use temp"
;* V309 tmp286 [V309 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline stloc first use temp" <System.Span`1[ubyte]>
; V310 tmp287 [V310,T89] ( 3, 12 ) ubyte -> rsi "Inlining Arg"
;* V311 tmp288 [V311 ] ( 0, 0 ) struct ( 8) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.Text.Rune>
;* V312 tmp289 [V312 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.Span`1[ubyte]>
;* V313 tmp290 [V313 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.Span`1[ubyte]>
; V314 tmp291 [V314,T101] ( 5, 10 ) int -> r8 "Inline stloc first use temp"
;* V315 tmp292 [V315 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline stloc first use temp" <System.Span`1[ubyte]>
; V316 tmp293 [V316,T90] ( 3, 12 ) ubyte -> rsi "Inlining Arg"
; V317 tmp294 [V317,T195] ( 3, 6 ) int -> rsi "Inline stloc first use temp"
;* V318 tmp295 [V318 ] ( 0, 0 ) struct (16) zero-ref multireg-ret "Inline return value spill temp" <System.Span`1[ubyte]>
; V319 tmp296 [V319,T132] ( 4, 8 ) int -> rcx "Inline stloc first use temp"
;* V320 tmp297 [V320 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline stloc first use temp" <System.Span`1[ubyte]>
; V321 tmp298 [V321,T55] ( 5, 20 ) int -> rax "Inlining Arg"
;* V322 tmp299 [V322 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[SBR] multireg-ret "Return value temp for multireg return" <System.Span`1[ubyte]>
;* V323 tmp300 [V323 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.Span`1[ubyte]>
;* V324 tmp301 [V324 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
;* V325 tmp302 [V325 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.Span`1[ubyte]>
;* V326 tmp303 [V326 ] ( 0, 0 ) struct (16) zero-ref multireg-arg ld-addr-op "NewObj constructor temp" <System.Span`1[ubyte]>
;* V327 tmp304 [V327 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.Span`1[ubyte]>
;* V328 tmp305 [V328 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
;* V329 tmp306 [V329 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
; V330 tmp307 [V330 ] ( 1, 2 ) int -> [rbp-0x70] do-not-enreg[X] addr-exposed ld-addr-op "Inline ldloca(s) first use temp"
; V331 tmp308 [V331 ] ( 19, 37 ) long -> [rbp-0x30] do-not-enreg[X] addr-exposed single-def "field V00._dateData (fldOffset=0x0)" P-DEP
; V332 tmp309 [V332,T04] ( 20,169 ) byref -> r14 single-def "field V01._reference (fldOffset=0x0)" P-INDEP
; V333 tmp310 [V333,T01] ( 26,222 ) int -> r15 single-def "field V01._length (fldOffset=0x8)" P-INDEP
; V334 tmp311 [V334,T102] ( 4, 7 ) long -> r12 single-def "field V03._ticks (fldOffset=0x0)" P-INDEP
;* V335 tmp312 [V335 ] ( 0, 0 ) byref -> zero-ref "field V25._reference (fldOffset=0x0)" P-INDEP
;* V336 tmp313 [V336 ] ( 0, 0 ) int -> zero-ref "field V25._length (fldOffset=0x8)" P-INDEP
; V337 tmp314 [V337,T76] ( 4, 12 ) byref -> rsi "field V31._reference (fldOffset=0x0)" P-INDEP
; V338 tmp315 [V338,T77] ( 4, 12 ) int -> rdx "field V31._length (fldOffset=0x8)" P-INDEP
;* V339 tmp316 [V339 ] ( 0, 0 ) byref -> zero-ref "field V34._reference (fldOffset=0x0)" P-INDEP
;* V340 tmp317 [V340 ] ( 0, 0 ) int -> zero-ref "field V34._length (fldOffset=0x8)" P-INDEP
;* V341 tmp318 [V341 ] ( 0, 0 ) byref -> zero-ref "field V37._reference (fldOffset=0x0)" P-INDEP
;* V342 tmp319 [V342 ] ( 0, 0 ) int -> zero-ref "field V37._length (fldOffset=0x8)" P-INDEP
;* V343 tmp320 [V343 ] ( 0, 0 ) byref -> zero-ref "field V38._reference (fldOffset=0x0)" P-INDEP
;* V344 tmp321 [V344 ] ( 0, 0 ) int -> zero-ref "field V38._length (fldOffset=0x8)" P-INDEP
;* V345 tmp322 [V345 ] ( 0, 0 ) byref -> zero-ref "field V39._reference (fldOffset=0x0)" P-INDEP
;* V346 tmp323 [V346 ] ( 0, 0 ) int -> zero-ref "field V39._length (fldOffset=0x8)" P-INDEP
;* V347 tmp324 [V347 ] ( 0, 0 ) byref -> zero-ref "field V40._reference (fldOffset=0x0)" P-INDEP
;* V348 tmp325 [V348 ] ( 0, 0 ) int -> zero-ref "field V40._length (fldOffset=0x8)" P-INDEP
;* V349 tmp326 [V349 ] ( 0, 0 ) byref -> zero-ref "field V48._reference (fldOffset=0x0)" P-INDEP
;* V350 tmp327 [V350 ] ( 0, 0 ) int -> zero-ref "field V48._length (fldOffset=0x8)" P-INDEP
;* V351 tmp328 [V351 ] ( 0, 0 ) byref -> zero-ref "field V49._reference (fldOffset=0x0)" P-INDEP
;* V352 tmp329 [V352 ] ( 0, 0 ) int -> zero-ref "field V49._length (fldOffset=0x8)" P-INDEP
;* V353 tmp330 [V353 ] ( 0, 0 ) byref -> zero-ref "field V52._reference (fldOffset=0x0)" P-DEP
;* V354 tmp331 [V354 ] ( 0, 0 ) int -> zero-ref "field V52._length (fldOffset=0x8)" P-DEP
;* V355 tmp332 [V355 ] ( 0, 0 ) byref -> zero-ref "field V53._reference (fldOffset=0x0)" P-DEP
;* V356 tmp333 [V356 ] ( 0, 0 ) int -> zero-ref "field V53._length (fldOffset=0x8)" P-DEP
;* V357 tmp334 [V357,T281] ( 0, 0 ) byref -> zero-ref "field V55._reference (fldOffset=0x0)" P-INDEP
;* V358 tmp335 [V358,T292] ( 0, 0 ) int -> zero-ref "field V55._length (fldOffset=0x8)" P-INDEP
; V359 tmp336 [V359,T251] ( 2, 4 ) long -> rdi "field V56._dateData (fldOffset=0x0)" P-INDEP
;* V360 tmp337 [V360,T282] ( 0, 0 ) byref -> zero-ref "field V58._reference (fldOffset=0x0)" P-INDEP
;* V361 tmp338 [V361,T293] ( 0, 0 ) int -> zero-ref "field V58._length (fldOffset=0x8)" P-INDEP
; V362 tmp339 [V362,T108] ( 4, 8 ) byref -> [rbp-0x138] "field V59._reference (fldOffset=0x0)" P-INDEP
; V363 tmp340 [V363,T133] ( 4, 8 ) int -> [rbp-0x74] "field V59._length (fldOffset=0x8)" P-INDEP
-; V364 tmp341 [V364,T219] ( 2, 4 ) byref -> rcx "field V61._reference (fldOffset=0x0)" P-INDEP
-; V365 tmp342 [V365,T252] ( 2, 4 ) int -> rax "field V61._length (fldOffset=0x8)" P-INDEP
-;* V366 tmp343 [V366 ] ( 0, 0 ) byref -> zero-ref "field V62._reference (fldOffset=0x0)" P-INDEP
-;* V367 tmp344 [V367 ] ( 0, 0 ) int -> zero-ref "field V62._length (fldOffset=0x8)" P-INDEP
+;* V364 tmp341 [V364 ] ( 0, 0 ) byref -> zero-ref "field V61._reference (fldOffset=0x0)" P-INDEP
+;* V365 tmp342 [V365 ] ( 0, 0 ) int -> zero-ref "field V61._length (fldOffset=0x8)" P-INDEP
+; V366 tmp343 [V366,T219] ( 2, 4 ) byref -> rcx "field V62._reference (fldOffset=0x0)" P-INDEP
+; V367 tmp344 [V367,T252] ( 2, 4 ) int -> r8 "field V62._length (fldOffset=0x8)" P-INDEP
;* V368 tmp345 [V368 ] ( 0, 0 ) byref -> zero-ref "field V66._reference (fldOffset=0x0)" P-INDEP
;* V369 tmp346 [V369 ] ( 0, 0 ) int -> zero-ref "field V66._length (fldOffset=0x8)" P-INDEP
; V370 tmp347 [V370,T172] ( 3, 6 ) byref -> rax "field V67._reference (fldOffset=0x0)" P-INDEP
; V371 tmp348 [V371,T196] ( 3, 6 ) int -> rdx "field V67._length (fldOffset=0x8)" P-INDEP
; V372 tmp349 [V372,T220] ( 2, 4 ) byref -> rdx "field V69._reference (fldOffset=0x0)" P-INDEP
; V373 tmp350 [V373,T253] ( 2, 4 ) int -> rdi "field V69._length (fldOffset=0x8)" P-INDEP
;* V374 tmp351 [V374 ] ( 0, 0 ) byref -> zero-ref "field V71._reference (fldOffset=0x0)" P-DEP
;* V375 tmp352 [V375 ] ( 0, 0 ) int -> zero-ref "field V71._length (fldOffset=0x8)" P-DEP
; V376 tmp353 [V376,T221] ( 2, 4 ) byref -> rcx "field V72._reference (fldOffset=0x0)" P-INDEP
; V377 tmp354 [V377,T254] ( 2, 4 ) int -> rdx "field V72._length (fldOffset=0x8)" P-INDEP
;* V378 tmp355 [V378,T283] ( 0, 0 ) byref -> zero-ref "field V75._reference (fldOffset=0x0)" P-INDEP
;* V379 tmp356 [V379,T294] ( 0, 0 ) int -> zero-ref "field V75._length (fldOffset=0x8)" P-INDEP
;* V380 tmp357 [V380,T284] ( 0, 0 ) byref -> zero-ref "field V79._reference (fldOffset=0x0)" P-INDEP
;* V381 tmp358 [V381,T295] ( 0, 0 ) int -> zero-ref "field V79._length (fldOffset=0x8)" P-INDEP
;* V382 tmp359 [V382,T285] ( 0, 0 ) byref -> zero-ref "field V83._reference (fldOffset=0x0)" P-INDEP
;* V383 tmp360 [V383,T296] ( 0, 0 ) int -> zero-ref "field V83._length (fldOffset=0x8)" P-INDEP
;* V384 tmp361 [V384,T286] ( 0, 0 ) byref -> zero-ref "field V87._reference (fldOffset=0x0)" P-INDEP
;* V385 tmp362 [V385,T297] ( 0, 0 ) int -> zero-ref "field V87._length (fldOffset=0x8)" P-INDEP
;* V386 tmp363 [V386,T287] ( 0, 0 ) byref -> zero-ref "field V91._reference (fldOffset=0x0)" P-INDEP
;* V387 tmp364 [V387,T298] ( 0, 0 ) int -> zero-ref "field V91._length (fldOffset=0x8)" P-INDEP
;* V388 tmp365 [V388 ] ( 0, 0 ) byref -> zero-ref "field V92._reference (fldOffset=0x0)" P-INDEP
;* V389 tmp366 [V389 ] ( 0, 0 ) int -> zero-ref "field V92._length (fldOffset=0x8)" P-INDEP
;* V390 tmp367 [V390 ] ( 0, 0 ) byref -> zero-ref "field V93._reference (fldOffset=0x0)" P-INDEP
;* V391 tmp368 [V391 ] ( 0, 0 ) int -> zero-ref "field V93._length (fldOffset=0x8)" P-INDEP
-; V392 tmp369 [V392,T173] ( 3, 6 ) byref -> rdi "field V95._reference (fldOffset=0x0)" P-INDEP
-; V393 tmp370 [V393,T197] ( 3, 6 ) int -> rax "field V95._length (fldOffset=0x8)" P-INDEP
-; V394 tmp371 [V394,T222] ( 2, 4 ) byref -> rdi "field V97._reference (fldOffset=0x0)" P-INDEP
-; V395 tmp372 [V395,T255] ( 2, 4 ) int -> rdx "field V97._length (fldOffset=0x8)" P-INDEP
-;* V396 tmp373 [V396 ] ( 0, 0 ) byref -> zero-ref "field V98._reference (fldOffset=0x0)" P-INDEP
-;* V397 tmp374 [V397 ] ( 0, 0 ) int -> zero-ref "field V98._length (fldOffset=0x8)" P-INDEP
-; V398 tmp375 [V398,T174] ( 3, 6 ) byref -> rdi "field V101._reference (fldOffset=0x0)" P-INDEP
-; V399 tmp376 [V399,T198] ( 3, 6 ) int -> rax "field V101._length (fldOffset=0x8)" P-INDEP
-; V400 tmp377 [V400,T223] ( 2, 4 ) byref -> rdi "field V103._reference (fldOffset=0x0)" P-INDEP
-; V401 tmp378 [V401,T256] ( 2, 4 ) int -> rdx "field V103._length (fldOffset=0x8)" P-INDEP
-;* V402 tmp379 [V402 ] ( 0, 0 ) byref -> zero-ref "field V104._reference (fldOffset=0x0)" P-INDEP
-;* V403 tmp380 [V403 ] ( 0, 0 ) int -> zero-ref "field V104._length (fldOffset=0x8)" P-INDEP
+; V392 tmp369 [V392,T173] ( 3, 6 ) byref -> registers "field V95._reference (fldOffset=0x0)" P-INDEP
+; V393 tmp370 [V393,T197] ( 3, 6 ) int -> registers "field V95._length (fldOffset=0x8)" P-INDEP
+;* V394 tmp371 [V394 ] ( 0, 0 ) byref -> zero-ref "field V97._reference (fldOffset=0x0)" P-INDEP
+;* V395 tmp372 [V395 ] ( 0, 0 ) int -> zero-ref "field V97._length (fldOffset=0x8)" P-INDEP
+; V396 tmp373 [V396,T222] ( 2, 4 ) byref -> rdi "field V98._reference (fldOffset=0x0)" P-INDEP
+; V397 tmp374 [V397,T255] ( 2, 4 ) int -> rdx "field V98._length (fldOffset=0x8)" P-INDEP
+; V398 tmp375 [V398,T174] ( 3, 6 ) byref -> registers "field V101._reference (fldOffset=0x0)" P-INDEP
+; V399 tmp376 [V399,T198] ( 3, 6 ) int -> registers "field V101._length (fldOffset=0x8)" P-INDEP
+;* V400 tmp377 [V400 ] ( 0, 0 ) byref -> zero-ref "field V103._reference (fldOffset=0x0)" P-INDEP
+;* V401 tmp378 [V401 ] ( 0, 0 ) int -> zero-ref "field V103._length (fldOffset=0x8)" P-INDEP
+; V402 tmp379 [V402,T223] ( 2, 4 ) byref -> rdi "field V104._reference (fldOffset=0x0)" P-INDEP
+; V403 tmp380 [V403,T256] ( 2, 4 ) int -> rdx "field V104._length (fldOffset=0x8)" P-INDEP
;* V404 tmp381 [V404,T288] ( 0, 0 ) byref -> zero-ref "field V112._reference (fldOffset=0x0)" P-INDEP
;* V405 tmp382 [V405,T299] ( 0, 0 ) int -> zero-ref "field V112._length (fldOffset=0x8)" P-INDEP
; V406 tmp383 [V406,T199] ( 3, 6 ) int -> [rbp-0x78] spill-single-def "field V128._value (fldOffset=0x0)" P-INDEP
;* V407 tmp384 [V407 ] ( 0, 0 ) byref -> zero-ref "field V129._reference (fldOffset=0x0)" P-INDEP
;* V408 tmp385 [V408 ] ( 0, 0 ) int -> zero-ref "field V129._length (fldOffset=0x8)" P-INDEP
;* V409 tmp386 [V409 ] ( 0, 0 ) byref -> zero-ref "field V130._reference (fldOffset=0x0)" P-INDEP
;* V410 tmp387 [V410 ] ( 0, 0 ) int -> zero-ref "field V130._length (fldOffset=0x8)" P-INDEP
; V411 tmp388 [V411,T224] ( 2, 4 ) byref -> rcx "field V132._reference (fldOffset=0x0)" P-INDEP
; V412 tmp389 [V412,T257] ( 2, 4 ) int -> rdi "field V132._length (fldOffset=0x8)" P-INDEP
; V413 tmp390 [V413,T175] ( 3, 6 ) byref -> rsi "field V135._reference (fldOffset=0x0)" P-INDEP
; V414 tmp391 [V414,T200] ( 3, 6 ) int -> rdx "field V135._length (fldOffset=0x8)" P-INDEP
; V415 tmp392 [V415,T225] ( 2, 4 ) byref -> rdx "field V137._reference (fldOffset=0x0)" P-INDEP
; V416 tmp393 [V416,T258] ( 2, 4 ) int -> rdi "field V137._length (fldOffset=0x8)" P-INDEP
;* V417 tmp394 [V417 ] ( 0, 0 ) byref -> zero-ref "field V139._reference (fldOffset=0x0)" P-DEP
;* V418 tmp395 [V418 ] ( 0, 0 ) int -> zero-ref "field V139._length (fldOffset=0x8)" P-DEP
; V419 tmp396 [V419,T226] ( 2, 4 ) byref -> rsi "field V140._reference (fldOffset=0x0)" P-INDEP
; V420 tmp397 [V420,T259] ( 2, 4 ) int -> rdx "field V140._length (fldOffset=0x8)" P-INDEP
;* V421 tmp398 [V421 ] ( 0, 0 ) byref -> zero-ref "field V142._reference (fldOffset=0x0)" P-INDEP
;* V422 tmp399 [V422 ] ( 0, 0 ) int -> zero-ref "field V142._length (fldOffset=0x8)" P-INDEP
; V423 tmp400 [V423,T227] ( 2, 4 ) byref -> rsi "field V143._reference (fldOffset=0x0)" P-INDEP
; V424 tmp401 [V424,T260] ( 2, 4 ) int -> rdx "field V143._length (fldOffset=0x8)" P-INDEP
;* V425 tmp402 [V425 ] ( 0, 0 ) byref -> zero-ref "field V144._reference (fldOffset=0x0)" P-INDEP
;* V426 tmp403 [V426 ] ( 0, 0 ) int -> zero-ref "field V144._length (fldOffset=0x8)" P-INDEP
;* V427 tmp404 [V427 ] ( 0, 0 ) byref -> zero-ref "field V148._reference (fldOffset=0x0)" P-INDEP
;* V428 tmp405 [V428 ] ( 0, 0 ) int -> zero-ref "field V148._length (fldOffset=0x8)" P-INDEP
; V429 tmp406 [V429,T176] ( 3, 6 ) byref -> rsi "field V161._reference (fldOffset=0x0)" P-INDEP
; V430 tmp407 [V430,T201] ( 3, 6 ) int -> rdx "field V161._length (fldOffset=0x8)" P-INDEP
;* V431 tmp408 [V431 ] ( 0, 0 ) byref -> zero-ref "field V162._reference (fldOffset=0x0)" P-INDEP
;* V432 tmp409 [V432 ] ( 0, 0 ) int -> zero-ref "field V162._length (fldOffset=0x8)" P-INDEP
; V433 tmp410 [V433,T177] ( 3, 6 ) byref -> rsi "field V175._reference (fldOffset=0x0)" P-INDEP
; V434 tmp411 [V434,T202] ( 3, 6 ) int -> rdx "field V175._length (fldOffset=0x8)" P-INDEP
; V435 tmp412 [V435,T158] ( 2, 8 ) byref -> rcx "field V177._reference (fldOffset=0x0)" P-INDEP
; V436 tmp413 [V436,T91] ( 3, 12 ) int -> r8 "field V177._length (fldOffset=0x8)" P-INDEP
;* V437 tmp414 [V437 ] ( 0, 0 ) byref -> zero-ref "field V178._reference (fldOffset=0x0)" P-INDEP
;* V438 tmp415 [V438 ] ( 0, 0 ) int -> zero-ref "field V178._length (fldOffset=0x8)" P-INDEP
;* V439 tmp416 [V439,T289] ( 0, 0 ) byref -> zero-ref "field V180._reference (fldOffset=0x0)" P-INDEP
;* V440 tmp417 [V440,T300] ( 0, 0 ) int -> zero-ref "field V180._length (fldOffset=0x8)" P-INDEP
; V441 tmp418 [V441,T109] ( 4, 8 ) byref -> [rbp-0x140] "field V183._reference (fldOffset=0x0)" P-INDEP
; V442 tmp419 [V442,T134] ( 4, 8 ) int -> [rbp-0x7C] "field V183._length (fldOffset=0x8)" P-INDEP
-; V443 tmp420 [V443,T228] ( 2, 4 ) byref -> rcx "field V184._reference (fldOffset=0x0)" P-INDEP
-; V444 tmp421 [V444,T261] ( 2, 4 ) int -> rax "field V184._length (fldOffset=0x8)" P-INDEP
-;* V445 tmp422 [V445 ] ( 0, 0 ) byref -> zero-ref "field V185._reference (fldOffset=0x0)" P-INDEP
-;* V446 tmp423 [V446 ] ( 0, 0 ) int -> zero-ref "field V185._length (fldOffset=0x8)" P-INDEP
+;* V443 tmp420 [V443 ] ( 0, 0 ) byref -> zero-ref "field V184._reference (fldOffset=0x0)" P-INDEP
+;* V444 tmp421 [V444 ] ( 0, 0 ) int -> zero-ref "field V184._length (fldOffset=0x8)" P-INDEP
+; V445 tmp422 [V445,T228] ( 2, 4 ) byref -> rcx "field V185._reference (fldOffset=0x0)" P-INDEP
+; V446 tmp423 [V446,T261] ( 2, 4 ) int -> r8 "field V185._length (fldOffset=0x8)" P-INDEP
;* V447 tmp424 [V447 ] ( 0, 0 ) byref -> zero-ref "field V189._reference (fldOffset=0x0)" P-INDEP
;* V448 tmp425 [V448 ] ( 0, 0 ) int -> zero-ref "field V189._length (fldOffset=0x8)" P-INDEP
; V449 tmp426 [V449,T178] ( 3, 6 ) byref -> rax "field V190._reference (fldOffset=0x0)" P-INDEP
; V450 tmp427 [V450,T203] ( 3, 6 ) int -> rdx "field V190._length (fldOffset=0x8)" P-INDEP
; V451 tmp428 [V451,T229] ( 2, 4 ) byref -> rdx "field V192._reference (fldOffset=0x0)" P-INDEP
; V452 tmp429 [V452,T262] ( 2, 4 ) int -> rdi "field V192._length (fldOffset=0x8)" P-INDEP
;* V453 tmp430 [V453 ] ( 0, 0 ) byref -> zero-ref "field V194._reference (fldOffset=0x0)" P-DEP
;* V454 tmp431 [V454 ] ( 0, 0 ) int -> zero-ref "field V194._length (fldOffset=0x8)" P-DEP
; V455 tmp432 [V455,T230] ( 2, 4 ) byref -> rcx "field V195._reference (fldOffset=0x0)" P-INDEP
; V456 tmp433 [V456,T263] ( 2, 4 ) int -> rdx "field V195._length (fldOffset=0x8)" P-INDEP
;* V457 tmp434 [V457,T290] ( 0, 0 ) byref -> zero-ref "field V198._reference (fldOffset=0x0)" P-INDEP
;* V458 tmp435 [V458,T301] ( 0, 0 ) int -> zero-ref "field V198._length (fldOffset=0x8)" P-INDEP
; V459 tmp436 [V459,T110] ( 4, 8 ) byref -> [rbp-0x148] "field V199._reference (fldOffset=0x0)" P-INDEP
; V460 tmp437 [V460,T135] ( 4, 8 ) int -> [rbp-0x80] "field V199._length (fldOffset=0x8)" P-INDEP
-; V461 tmp438 [V461,T231] ( 2, 4 ) byref -> rcx "field V201._reference (fldOffset=0x0)" P-INDEP
-; V462 tmp439 [V462,T264] ( 2, 4 ) int -> rax "field V201._length (fldOffset=0x8)" P-INDEP
-;* V463 tmp440 [V463 ] ( 0, 0 ) byref -> zero-ref "field V202._reference (fldOffset=0x0)" P-INDEP
-;* V464 tmp441 [V464 ] ( 0, 0 ) int -> zero-ref "field V202._length (fldOffset=0x8)" P-INDEP
+;* V461 tmp438 [V461 ] ( 0, 0 ) byref -> zero-ref "field V201._reference (fldOffset=0x0)" P-INDEP
+;* V462 tmp439 [V462 ] ( 0, 0 ) int -> zero-ref "field V201._length (fldOffset=0x8)" P-INDEP
+; V463 tmp440 [V463,T231] ( 2, 4 ) byref -> rcx "field V202._reference (fldOffset=0x0)" P-INDEP
+; V464 tmp441 [V464,T264] ( 2, 4 ) int -> r8 "field V202._length (fldOffset=0x8)" P-INDEP
;* V465 tmp442 [V465 ] ( 0, 0 ) byref -> zero-ref "field V206._reference (fldOffset=0x0)" P-INDEP
;* V466 tmp443 [V466 ] ( 0, 0 ) int -> zero-ref "field V206._length (fldOffset=0x8)" P-INDEP
; V467 tmp444 [V467,T179] ( 3, 6 ) byref -> rax "field V207._reference (fldOffset=0x0)" P-INDEP
; V468 tmp445 [V468,T204] ( 3, 6 ) int -> rdx "field V207._length (fldOffset=0x8)" P-INDEP
; V469 tmp446 [V469,T232] ( 2, 4 ) byref -> rdx "field V209._reference (fldOffset=0x0)" P-INDEP
; V470 tmp447 [V470,T265] ( 2, 4 ) int -> rdi "field V209._length (fldOffset=0x8)" P-INDEP
;* V471 tmp448 [V471 ] ( 0, 0 ) byref -> zero-ref "field V211._reference (fldOffset=0x0)" P-DEP
;* V472 tmp449 [V472 ] ( 0, 0 ) int -> zero-ref "field V211._length (fldOffset=0x8)" P-DEP
; V473 tmp450 [V473,T233] ( 2, 4 ) byref -> rcx "field V212._reference (fldOffset=0x0)" P-INDEP
; V474 tmp451 [V474,T266] ( 2, 4 ) int -> rdx "field V212._length (fldOffset=0x8)" P-INDEP
; V475 tmp452 [V475,T111] ( 4, 8 ) byref -> [rbp-0x150] "field V215._reference (fldOffset=0x0)" P-INDEP
; V476 tmp453 [V476,T136] ( 4, 8 ) int -> [rbp-0x84] "field V215._length (fldOffset=0x8)" P-INDEP
-; V477 tmp454 [V477,T234] ( 2, 4 ) byref -> rcx "field V217._reference (fldOffset=0x0)" P-INDEP
-; V478 tmp455 [V478,T267] ( 2, 4 ) int -> rax "field V217._length (fldOffset=0x8)" P-INDEP
-;* V479 tmp456 [V479 ] ( 0, 0 ) byref -> zero-ref "field V218._reference (fldOffset=0x0)" P-INDEP
-;* V480 tmp457 [V480 ] ( 0, 0 ) int -> zero-ref "field V218._length (fldOffset=0x8)" P-INDEP
+;* V477 tmp454 [V477 ] ( 0, 0 ) byref -> zero-ref "field V217._reference (fldOffset=0x0)" P-INDEP
+;* V478 tmp455 [V478 ] ( 0, 0 ) int -> zero-ref "field V217._length (fldOffset=0x8)" P-INDEP
+; V479 tmp456 [V479,T234] ( 2, 4 ) byref -> rcx "field V218._reference (fldOffset=0x0)" P-INDEP
+; V480 tmp457 [V480,T267] ( 2, 4 ) int -> r8 "field V218._length (fldOffset=0x8)" P-INDEP
;* V481 tmp458 [V481 ] ( 0, 0 ) byref -> zero-ref "field V222._reference (fldOffset=0x0)" P-INDEP
;* V482 tmp459 [V482 ] ( 0, 0 ) int -> zero-ref "field V222._length (fldOffset=0x8)" P-INDEP
; V483 tmp460 [V483,T180] ( 3, 6 ) byref -> rax "field V223._reference (fldOffset=0x0)" P-INDEP
; V484 tmp461 [V484,T205] ( 3, 6 ) int -> rdx "field V223._length (fldOffset=0x8)" P-INDEP
; V485 tmp462 [V485,T235] ( 2, 4 ) byref -> rdx "field V225._reference (fldOffset=0x0)" P-INDEP
; V486 tmp463 [V486,T268] ( 2, 4 ) int -> rdi "field V225._length (fldOffset=0x8)" P-INDEP
;* V487 tmp464 [V487 ] ( 0, 0 ) byref -> zero-ref "field V227._reference (fldOffset=0x0)" P-DEP
;* V488 tmp465 [V488 ] ( 0, 0 ) int -> zero-ref "field V227._length (fldOffset=0x8)" P-DEP
; V489 tmp466 [V489,T236] ( 2, 4 ) byref -> rcx "field V228._reference (fldOffset=0x0)" P-INDEP
; V490 tmp467 [V490,T269] ( 2, 4 ) int -> rdx "field V228._length (fldOffset=0x8)" P-INDEP
; V491 tmp468 [V491,T112] ( 4, 8 ) byref -> [rbp-0x158] "field V232._reference (fldOffset=0x0)" P-INDEP
; V492 tmp469 [V492,T137] ( 4, 8 ) int -> [rbp-0x88] "field V232._length (fldOffset=0x8)" P-INDEP
-; V493 tmp470 [V493,T237] ( 2, 4 ) byref -> rcx "field V233._reference (fldOffset=0x0)" P-INDEP
-; V494 tmp471 [V494,T270] ( 2, 4 ) int -> rax "field V233._length (fldOffset=0x8)" P-INDEP
-;* V495 tmp472 [V495 ] ( 0, 0 ) byref -> zero-ref "field V234._reference (fldOffset=0x0)" P-INDEP
-;* V496 tmp473 [V496 ] ( 0, 0 ) int -> zero-ref "field V234._length (fldOffset=0x8)" P-INDEP
+;* V493 tmp470 [V493 ] ( 0, 0 ) byref -> zero-ref "field V233._reference (fldOffset=0x0)" P-INDEP
+;* V494 tmp471 [V494 ] ( 0, 0 ) int -> zero-ref "field V233._length (fldOffset=0x8)" P-INDEP
+; V495 tmp472 [V495,T237] ( 2, 4 ) byref -> rcx "field V234._reference (fldOffset=0x0)" P-INDEP
+; V496 tmp473 [V496,T270] ( 2, 4 ) int -> r8 "field V234._length (fldOffset=0x8)" P-INDEP
;* V497 tmp474 [V497 ] ( 0, 0 ) byref -> zero-ref "field V238._reference (fldOffset=0x0)" P-INDEP
;* V498 tmp475 [V498 ] ( 0, 0 ) int -> zero-ref "field V238._length (fldOffset=0x8)" P-INDEP
; V499 tmp476 [V499,T181] ( 3, 6 ) byref -> rax "field V239._reference (fldOffset=0x0)" P-INDEP
; V500 tmp477 [V500,T206] ( 3, 6 ) int -> rdx "field V239._length (fldOffset=0x8)" P-INDEP
; V501 tmp478 [V501,T238] ( 2, 4 ) byref -> rdx "field V241._reference (fldOffset=0x0)" P-INDEP
; V502 tmp479 [V502,T271] ( 2, 4 ) int -> rdi "field V241._length (fldOffset=0x8)" P-INDEP
;* V503 tmp480 [V503 ] ( 0, 0 ) byref -> zero-ref "field V243._reference (fldOffset=0x0)" P-DEP
;* V504 tmp481 [V504 ] ( 0, 0 ) int -> zero-ref "field V243._length (fldOffset=0x8)" P-DEP
; V505 tmp482 [V505,T239] ( 2, 4 ) byref -> rcx "field V244._reference (fldOffset=0x0)" P-INDEP
; V506 tmp483 [V506,T272] ( 2, 4 ) int -> rdx "field V244._length (fldOffset=0x8)" P-INDEP
;* V507 tmp484 [V507,T302] ( 0, 0 ) int -> zero-ref "field V248._value (fldOffset=0x0)" P-INDEP
;* V508 tmp485 [V508 ] ( 0, 0 ) byref -> zero-ref "field V249._reference (fldOffset=0x0)" P-INDEP
;* V509 tmp486 [V509 ] ( 0, 0 ) int -> zero-ref "field V249._length (fldOffset=0x8)" P-INDEP
;* V510 tmp487 [V510 ] ( 0, 0 ) byref -> zero-ref "field V250._reference (fldOffset=0x0)" P-INDEP
;* V511 tmp488 [V511 ] ( 0, 0 ) int -> zero-ref "field V250._length (fldOffset=0x8)" P-INDEP
;* V512 tmp489 [V512 ] ( 0, 0 ) byref -> zero-ref "field V252._reference (fldOffset=0x0)" P-INDEP
;* V513 tmp490 [V513 ] ( 0, 0 ) int -> zero-ref "field V252._length (fldOffset=0x8)" P-INDEP
; V514 tmp491 [V514,T182] ( 3, 6 ) byref -> rsi "field V255._reference (fldOffset=0x0)" P-INDEP
; V515 tmp492 [V515,T207] ( 3, 6 ) int -> rdx "field V255._length (fldOffset=0x8)" P-INDEP
; V516 tmp493 [V516,T240] ( 2, 4 ) byref -> rdx "field V257._reference (fldOffset=0x0)" P-INDEP
; V517 tmp494 [V517,T273] ( 2, 4 ) int -> rdi "field V257._length (fldOffset=0x8)" P-INDEP
;* V518 tmp495 [V518 ] ( 0, 0 ) byref -> zero-ref "field V259._reference (fldOffset=0x0)" P-DEP
;* V519 tmp496 [V519 ] ( 0, 0 ) int -> zero-ref "field V259._length (fldOffset=0x8)" P-DEP
; V520 tmp497 [V520,T241] ( 2, 4 ) byref -> rsi "field V260._reference (fldOffset=0x0)" P-INDEP
; V521 tmp498 [V521,T274] ( 2, 4 ) int -> rdx "field V260._length (fldOffset=0x8)" P-INDEP
;* V522 tmp499 [V522 ] ( 0, 0 ) byref -> zero-ref "field V262._reference (fldOffset=0x0)" P-INDEP
;* V523 tmp500 [V523 ] ( 0, 0 ) int -> zero-ref "field V262._length (fldOffset=0x8)" P-INDEP
; V524 tmp501 [V524,T242] ( 2, 4 ) byref -> rsi "field V263._reference (fldOffset=0x0)" P-INDEP
; V525 tmp502 [V525,T275] ( 2, 4 ) int -> rdx "field V263._length (fldOffset=0x8)" P-INDEP
;* V526 tmp503 [V526 ] ( 0, 0 ) byref -> zero-ref "field V264._reference (fldOffset=0x0)" P-INDEP
;* V527 tmp504 [V527 ] ( 0, 0 ) int -> zero-ref "field V264._length (fldOffset=0x8)" P-INDEP
; V528 tmp505 [V528,T28] ( 4, 48 ) byref -> [rbp-0x160] "field V284._reference (fldOffset=0x0)" P-INDEP
; V529 tmp506 [V529,T30] ( 4, 48 ) int -> [rbp-0x8C] "field V284._length (fldOffset=0x8)" P-INDEP
-; V530 tmp507 [V530,T68] ( 2, 16 ) byref -> rcx "field V285._reference (fldOffset=0x0)" P-INDEP
-; V531 tmp508 [V531,T70] ( 2, 16 ) int -> rax "field V285._length (fldOffset=0x8)" P-INDEP
-;* V532 tmp509 [V532 ] ( 0, 0 ) byref -> zero-ref "field V286._reference (fldOffset=0x0)" P-INDEP
-;* V533 tmp510 [V533 ] ( 0, 0 ) int -> zero-ref "field V286._length (fldOffset=0x8)" P-INDEP
+;* V530 tmp507 [V530 ] ( 0, 0 ) byref -> zero-ref "field V285._reference (fldOffset=0x0)" P-INDEP
+;* V531 tmp508 [V531 ] ( 0, 0 ) int -> zero-ref "field V285._length (fldOffset=0x8)" P-INDEP
+; V532 tmp509 [V532,T68] ( 2, 16 ) byref -> rcx "field V286._reference (fldOffset=0x0)" P-INDEP
+; V533 tmp510 [V533,T70] ( 2, 16 ) int -> r8 "field V286._length (fldOffset=0x8)" P-INDEP
;* V534 tmp511 [V534 ] ( 0, 0 ) byref -> zero-ref "field V290._reference (fldOffset=0x0)" P-INDEP
;* V535 tmp512 [V535 ] ( 0, 0 ) int -> zero-ref "field V290._length (fldOffset=0x8)" P-INDEP
; V536 tmp513 [V536,T36] ( 3, 32 ) byref -> rax "field V291._reference (fldOffset=0x0)" P-INDEP
; V537 tmp514 [V537,T38] ( 3, 32 ) int -> rdx "field V291._length (fldOffset=0x8)" P-INDEP
; V538 tmp515 [V538,T42] ( 2, 24 ) byref -> rdx "field V293._reference (fldOffset=0x0)" P-INDEP
; V539 tmp516 [V539,T41] ( 2, 32 ) int -> rdi "field V293._length (fldOffset=0x8)" P-INDEP
;* V540 tmp517 [V540 ] ( 0, 0 ) byref -> zero-ref "field V295._reference (fldOffset=0x0)" P-DEP
;* V541 tmp518 [V541 ] ( 0, 0 ) int -> zero-ref "field V295._length (fldOffset=0x8)" P-DEP
; V542 tmp519 [V542,T69] ( 2, 16 ) byref -> rcx "field V296._reference (fldOffset=0x0)" P-INDEP
; V543 tmp520 [V543,T71] ( 2, 16 ) int -> rdx "field V296._length (fldOffset=0x8)" P-INDEP
; V544 tmp521 [V544,T243] ( 2, 4 ) byref -> r8 "field V299._reference (fldOffset=0x0)" P-INDEP
; V545 tmp522 [V545,T208] ( 3, 6 ) int -> r9 "field V299._length (fldOffset=0x8)" P-INDEP
; V546 tmp523 [V546,T183] ( 3, 6 ) byref -> rax "field V300._reference (fldOffset=0x0)" P-INDEP
; V547 tmp524 [V547,T209] ( 3, 6 ) int -> rdx "field V300._length (fldOffset=0x8)" P-INDEP
; V548 tmp525 [V548,T244] ( 2, 4 ) byref -> r8 "field V302._reference (fldOffset=0x0)" P-INDEP
; V549 tmp526 [V549,T210] ( 3, 6 ) int -> r9 "field V302._length (fldOffset=0x8)" P-INDEP
; V550 tmp527 [V550,T184] ( 3, 6 ) byref -> rax "field V303._reference (fldOffset=0x0)" P-INDEP
; V551 tmp528 [V551,T211] ( 3, 6 ) int -> rdx "field V303._length (fldOffset=0x8)" P-INDEP
;* V552 tmp529 [V552 ] ( 0, 0 ) byref -> zero-ref "field V305._reference (fldOffset=0x0)" P-INDEP
;* V553 tmp530 [V553 ] ( 0, 0 ) int -> zero-ref "field V305._length (fldOffset=0x8)" P-INDEP
;* V554 tmp531 [V554 ] ( 0, 0 ) byref -> zero-ref "field V307._reference (fldOffset=0x0)" P-INDEP
;* V555 tmp532 [V555 ] ( 0, 0 ) int -> zero-ref "field V307._length (fldOffset=0x8)" P-INDEP
; V556 tmp533 [V556,T245] ( 2, 4 ) byref -> r9 "field V309._reference (fldOffset=0x0)" P-INDEP
; V557 tmp534 [V557,T212] ( 3, 6 ) int -> r10 "field V309._length (fldOffset=0x8)" P-INDEP
; V558 tmp535 [V558,T213] ( 3, 6 ) int -> [rbp-0x90] spill-single-def "field V311._value (fldOffset=0x0)" P-INDEP
;* V559 tmp536 [V559 ] ( 0, 0 ) byref -> zero-ref "field V312._reference (fldOffset=0x0)" P-INDEP
;* V560 tmp537 [V560 ] ( 0, 0 ) int -> zero-ref "field V312._length (fldOffset=0x8)" P-INDEP
;* V561 tmp538 [V561 ] ( 0, 0 ) byref -> zero-ref "field V313._reference (fldOffset=0x0)" P-INDEP
;* V562 tmp539 [V562 ] ( 0, 0 ) int -> zero-ref "field V313._length (fldOffset=0x8)" P-INDEP
; V563 tmp540 [V563,T246] ( 2, 4 ) byref -> r9 "field V315._reference (fldOffset=0x0)" P-INDEP
; V564 tmp541 [V564,T214] ( 3, 6 ) int -> r10 "field V315._length (fldOffset=0x8)" P-INDEP
; V565 tmp542 [V565,T185] ( 3, 6 ) byref -> rsi "field V318._reference (fldOffset=0x0)" P-INDEP
; V566 tmp543 [V566,T215] ( 3, 6 ) int -> rdx "field V318._length (fldOffset=0x8)" P-INDEP
; V567 tmp544 [V567,T247] ( 2, 4 ) byref -> rdx "field V320._reference (fldOffset=0x0)" P-INDEP
; V568 tmp545 [V568,T276] ( 2, 4 ) int -> rdi "field V320._length (fldOffset=0x8)" P-INDEP
;* V569 tmp546 [V569 ] ( 0, 0 ) byref -> zero-ref "field V322._reference (fldOffset=0x0)" P-DEP
;* V570 tmp547 [V570 ] ( 0, 0 ) int -> zero-ref "field V322._length (fldOffset=0x8)" P-DEP
; V571 tmp548 [V571,T248] ( 2, 4 ) byref -> rsi "field V323._reference (fldOffset=0x0)" P-INDEP
; V572 tmp549 [V572,T277] ( 2, 4 ) int -> rdx "field V323._length (fldOffset=0x8)" P-INDEP
;* V573 tmp550 [V573 ] ( 0, 0 ) byref -> zero-ref "field V325._reference (fldOffset=0x0)" P-INDEP
;* V574 tmp551 [V574 ] ( 0, 0 ) int -> zero-ref "field V325._length (fldOffset=0x8)" P-INDEP
; V575 tmp552 [V575,T249] ( 2, 4 ) byref -> rsi "field V326._reference (fldOffset=0x0)" P-INDEP
; V576 tmp553 [V576,T278] ( 2, 4 ) int -> rdx "field V326._length (fldOffset=0x8)" P-INDEP
;* V577 tmp554 [V577 ] ( 0, 0 ) byref -> zero-ref "field V327._reference (fldOffset=0x0)" P-INDEP
;* V578 tmp555 [V578 ] ( 0, 0 ) int -> zero-ref "field V327._length (fldOffset=0x8)" P-INDEP
; V579 tmp556 [V579,T09] ( 3, 96 ) ref -> rdi "argument with side effect"
; V580 tmp557 [V580,T169] ( 2, 8 ) int -> rsi "argument with side effect"
; V581 tmp558 [V581,T306] ( 2, 0 ) ref -> rsi "argument with side effect"
; V582 tmp559 [V582,T307] ( 2, 0 ) ref -> rsi "argument with side effect"
; V583 tmp560 [V583,T65] ( 4, 16 ) long -> rsi "fgMakeTemp is creating a new local variable"
; V584 tmp561 [V584,T308] ( 2, 0 ) ref -> rsi "argument with side effect"
; V585 cse0 [V585,T32] ( 3, 48 ) int -> rdx "CSE #09: moderate"
; V586 cse1 [V586,T56] ( 4, 19 ) long -> [rbp-0x98] spill-single-def "CSE #02: conservative"
; V587 cse2 [V587,T216] ( 3, 6 ) int -> rdi "CSE #12: conservative"
; V588 cse3 [V588,T12] ( 22, 86 ) ref -> registers multi-def "CSE #04: moderate"
; V589 cse4 [V589,T31] ( 3, 48 ) ref -> [rbp-0x168] spill-single-def "CSE #34: moderate"
; V590 cse5 [V590,T113] ( 4, 8 ) ref -> rax multi-def "CSE #07: conservative"
; V591 cse6 [V591,T217] ( 3, 6 ) int -> rdi "CSE #27: conservative"
; V592 cse7 [V592,T218] ( 3, 6 ) int -> rsi "CSE #23: conservative"
; V593 cse8 [V593,T58] ( 8, 16 ) int -> rdi "CSE #28: conservative"
; V594 rat0 [V594,T21] ( 6, 52 ) long -> rdi "Widened IV V86"
; V595 rat1 [V595,T22] ( 6, 52 ) long -> r9 "Widened IV V111"
; V596 rat2 [V596,T23] ( 6, 52 ) long -> rdi "Widened IV V82"
; V597 rat3 [V597,T24] ( 6, 52 ) long -> rsi "Widened IV V74"
; V598 rat4 [V598,T25] ( 6, 52 ) long -> rdi "Widened IV V57"
; V599 rat5 [V599,T14] ( 7, 68 ) long -> r9 "Widened IV V179"
; V600 rat6 [V600,T15] ( 7, 68 ) long -> rdi "Widened IV V197"
; V601 rat7 [V601,T26] ( 6, 52 ) long -> rdi "Widened IV V78"
; V602 rat8 [V602,T27] ( 6, 52 ) long -> r9 "Widened IV V90"
; V603 rat9 [V603,T94] ( 3, 11.33) int -> rdi "ReplaceWithLclVar is creating a new local variable"
; V604 rat10 [V604,T92] ( 3, 12 ) long -> rsi "ReplaceWithLclVar is creating a new local variable"
; V605 rat11 [V605,T93] ( 3, 12 ) long -> rdx "ReplaceWithLclVar is creating a new local variable"
; V606 rat12 [V606,T10] ( 3, 96 ) int -> rdx "ReplaceWithLclVar is creating a new local variable"
; V607 rat13 [V607,T11] ( 3, 96 ) int -> rdx "ReplaceWithLclVar is creating a new local variable"
;
; Lcl frame size = 328
G_M51644_IG01:
push rbp
push r15
push r14
push r13
push r12
push rbx
sub rsp, 328
lea rbp, [rsp+0x170]
mov qword ptr [rbp-0x30], rdi
mov r14, rsi
mov r15d, edx
mov r13, rcx
mov r12, r8
mov rbx, r9
;; size=44 bbWeight=1 PerfScore 9.00
G_M51644_IG02:
mov rax, gword ptr [r13+0x90]
mov gword ptr [rbp-0xA0], rax
mov rdi, rax
mov rcx, qword ptr [rax]
mov rcx, qword ptr [rcx+0x40]
mov qword ptr [rbp-0x98], rcx
call [rcx+0x38]System.Globalization.Calendar:get_ID():ushort:this
cmp eax, 8
sete al
movzx rax, al
mov dword ptr [rbp-0x34], eax
mov rdi, gword ptr [rbp-0xA0]
mov rcx, qword ptr [rbp-0x98]
call [rcx+0x38]System.Globalization.Calendar:get_ID():ushort:this
cmp eax, 3
sete al
movzx rax, al
mov dword ptr [rbp-0x38], eax
mov dword ptr [rbp-0x3C], 1
xor edx, edx
test r15d, r15d
jle G_M51644_IG23
;; size=93 bbWeight=1 PerfScore 23.75
G_M51644_IG03:
cmp edx, r15d
jae G_M51644_IG181
mov dword ptr [rbp-0x40], edx
mov edi, edx
movzx r8, word ptr [r14+2*rdi]
mov dword ptr [rbp-0x48], r8d
cmp r8d, 75
jle G_M51644_IG137
;; size=33 bbWeight=4 PerfScore 27.00
G_M51644_IG04:
cmp r8d, 109
jle G_M51644_IG71
cmp r8d, 116
jle G_M51644_IG35
cmp r8d, 121
jne G_M51644_IG34
mov rdi, gword ptr [rbp-0xA0]
mov rsi, qword ptr [rbp-0x30]
mov rcx, qword ptr [rdi]
mov rcx, qword ptr [rcx+0x60]
call [rcx+0x20]System.Globalization.Calendar:GetYear(System.DateTime):int:this
mov dword ptr [rbp-0x50], eax
mov rdi, r14
mov esi, r15d
mov edx, dword ptr [rbp-0x40]
mov ecx, dword ptr [rbp-0x48]
mov rax, 0xD1FFAB1E ; code for System.DateTimeFormat:ParseRepeatPattern(System.ReadOnlySpan`1[ushort],int,ushort):int
call [rax]System.DateTimeFormat:ParseRepeatPattern(System.ReadOnlySpan`1[ushort],int,ushort):int
mov dword ptr [rbp-0x44], eax
cmp dword ptr [rbp-0x38], 0
je G_M51644_IG07
mov rdi, 0xD1FFAB1E ; static handle
mov edi, dword ptr [rdi]
test edi, edi
jl SHORT G_M51644_IG05
test edi, edi
jg G_M51644_IG07
mov rdi, 0xD1FFAB1E ; 'Switch.System.Globalization.FormatJapaneseFirstYearAsANumber'
mov rsi, 0xD1FFAB1E ; static handle
mov rdx, 0xD1FFAB1E ; code for System.LocalAppContextSwitches:GetCachedSwitchValueInternal(System.String,byref):ubyte
call [rdx]System.LocalAppContextSwitches:GetCachedSwitchValueInternal(System.String,byref):ubyte
test eax, eax
jne SHORT G_M51644_IG07
;; size=151 bbWeight=2 PerfScore 66.50
G_M51644_IG05:
cmp dword ptr [rbp-0x50], 1
jne SHORT G_M51644_IG07
mov eax, dword ptr [rbp-0x44]
mov edi, eax
add edi, dword ptr [rbp-0x40]
cmp edi, r15d
jge SHORT G_M51644_IG06
cmp edi, r15d
jae G_M51644_IG181
mov r8d, edi
cmp word ptr [r14+2*r8], 0x5E74
je G_M51644_IG31
;; size=44 bbWeight=2 PerfScore 26.00
G_M51644_IG06:
lea r8d, [r15-0x01]
cmp edi, r8d
jge SHORT G_M51644_IG07
cmp edi, r15d
jae G_M51644_IG181
mov r8d, edi
cmp word ptr [r14+2*r8], 39
jne SHORT G_M51644_IG07
inc edi
cmp edi, r15d
jae G_M51644_IG181
cmp word ptr [r14+2*rdi], 0x5E74
je G_M51644_IG31
;; size=53 bbWeight=2 PerfScore 25.50
G_M51644_IG07:
mov rdi, gword ptr [r13+0x90]
mov r8, qword ptr [rdi]
mov r8, qword ptr [r8+0x40]
call [r8+0x38]System.Globalization.Calendar:get_ID():ushort:this
add eax, -3
cmp eax, 1
jbe G_M51644_IG27
mov rdi, gword ptr [rbp-0xA0]
mov rax, qword ptr [rbp-0x98]
call [rax+0x38]System.Globalization.Calendar:get_ID():ushort:this
cmp eax, 8
je G_M51644_IG26
mov eax, dword ptr [rbp-0x44]
cmp eax, 2
jle G_M51644_IG25
cmp eax, 16
jle G_M51644_IG24
mov rdi, 0xD1FFAB1E ; const ptr
mov rcx, gword ptr [rdi]
mov gword ptr [rbp-0x168], rcx
mov rdi, rcx
test eax, eax
jl SHORT G_M51644_IG09
;; size=104 bbWeight=16 PerfScore 400.00
G_M51644_IG08:
mov dword ptr [rbp-0x44], eax
mov edi, eax
mov rdx, 0xD1FFAB1E ; code for System.Number:UInt32ToDecStr(uint):System.String
call [rdx]System.Number:UInt32ToDecStr(uint):System.String
jmp SHORT G_M51644_IG10
;; size=19 bbWeight=8 PerfScore 52.00
G_M51644_IG09:
mov dword ptr [rbp-0x44], eax
mov rdx, 0xD1FFAB1E ; code for System.Globalization.NumberFormatInfo:<GetInstance>g__GetProviderNonNull|58_0(System.IFormatProvider):System.Globalization.NumberFormatInfo
call [rdx]System.Globalization.NumberFormatInfo:<GetInstance>g__GetProviderNonNull|58_0(System.IFormatProvider):System.Globalization.NumberFormatInfo
mov rdx, gword ptr [rax+0x28]
mov edi, dword ptr [rbp-0x44]
mov esi, -1
mov rax, 0xD1FFAB1E ; code for System.Number:NegativeInt32ToDecStr(int,int,System.String):System.String
call [rax]System.Number:NegativeInt32ToDecStr(int,int,System.String):System.String
;; size=39 bbWeight=8 PerfScore 86.00
G_M51644_IG10:
mov rsi, rax
mov rdi, 0xD1FFAB1E ; 'D'
mov rax, 0xD1FFAB1E ; code for System.String:Concat(System.String,System.String):System.String
call [rax]System.String:Concat(System.String,System.String):System.String
mov rcx, gword ptr [rbp-0x168]
test rax, rax
je SHORT G_M51644_IG12
;; size=37 bbWeight=16 PerfScore 96.00
G_M51644_IG11:
cmp dword ptr [rax+0x08], 0
je SHORT G_M51644_IG12
mov edi, dword ptr [rbp-0x50]
mov rdx, rax
mov esi, -1
mov rax, 0xD1FFAB1E ; code for System.Number:<FormatInt32>g__FormatInt32Slow|18_0(int,int,System.String,System.IFormatProvider):System.String
call [rax]System.Number:<FormatInt32>g__FormatInt32Slow|18_0(int,int,System.String,System.IFormatProvider):System.String
jmp SHORT G_M51644_IG14
;; size=31 bbWeight=8 PerfScore 86.00
G_M51644_IG12:
mov esi, dword ptr [rbp-0x50]
test esi, esi
jl SHORT G_M51644_IG13
mov edi, esi
mov rax, 0xD1FFAB1E ; code for System.Number:UInt32ToDecStr(uint):System.String
call [rax]System.Number:UInt32ToDecStr(uint):System.String
jmp SHORT G_M51644_IG14
;; size=23 bbWeight=8 PerfScore 62.00
G_M51644_IG13:
mov rdi, rcx
mov rax, 0xD1FFAB1E ; code for System.Globalization.NumberFormatInfo:<GetInstance>g__GetProviderNonNull|58_0(System.IFormatProvider):System.Globalization.NumberFormatInfo
call [rax]System.Globalization.NumberFormatInfo:<GetInstance>g__GetProviderNonNull|58_0(System.IFormatProvider):System.Globalization.NumberFormatInfo
mov rdx, gword ptr [rax+0x28]
mov edi, dword ptr [rbp-0x50]
mov esi, -1
mov rax, 0xD1FFAB1E ; code for System.Number:NegativeInt32ToDecStr(int,int,System.String):System.String
call [rax]System.Number:NegativeInt32ToDecStr(int,int,System.String):System.String
;; size=39 bbWeight=8 PerfScore 80.00
G_M51644_IG14:
test rax, rax
- je SHORT G_M51644_IG16
+ jne SHORT G_M51644_IG16
;; size=5 bbWeight=16 PerfScore 20.00
G_M51644_IG15:
- lea rcx, bword ptr [rax+0x0C]
- mov eax, dword ptr [rax+0x08]
- jmp SHORT G_M51644_IG17
- ;; size=9 bbWeight=8 PerfScore 36.00
-G_M51644_IG16:
xor rcx, rcx
- xor eax, eax
- ;; size=4 bbWeight=8 PerfScore 4.00
+ xor r8d, r8d
+ mov rax, rcx
+ mov ecx, r8d
+ jmp SHORT G_M51644_IG17
+ ;; size=13 bbWeight=8 PerfScore 24.00
+G_M51644_IG16:
+ lea rcx, bword ptr [rax+0x0C]
+ mov r8d, dword ptr [rax+0x08]
+ mov rax, rcx
+ mov ecx, r8d
+ ;; size=14 bbWeight=8 PerfScore 24.00
G_M51644_IG17:
mov rsi, 0xD1FFAB1E ; const ptr
mov r8, gword ptr [rsi]
mov gword ptr [rbp-0x130], r8
- mov bword ptr [rbp-0x160], rcx
- mov rsi, rcx
- mov dword ptr [rbp-0x8C], eax
- mov edx, eax
+ mov bword ptr [rbp-0x160], rax
+ mov rsi, rax
+ mov dword ptr [rbp-0x8C], ecx
+ mov edx, ecx
mov rdi, r8
mov r8, 0xD1FFAB1E ; code for System.Text.UTF8Encoding:GetByteCount(System.ReadOnlySpan`1[ushort]):int:this
call [r8]System.Text.UTF8Encoding:GetByteCount(System.ReadOnlySpan`1[ushort]):int:this
mov ecx, dword ptr [rbx+0x08]
mov rdx, bword ptr [rbx+0x10]
mov edi, dword ptr [rbx+0x18]
mov esi, ecx
mov r8d, eax
add rsi, r8
cmp rsi, rdi
jbe SHORT G_M51644_IG19
;; size=77 bbWeight=16 PerfScore 276.00
G_M51644_IG18:
mov rdi, rbx
mov esi, eax
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.ValueListBuilder`1[ubyte]:AppendSpanWithGrow(int):System.Span`1[ubyte]:this
call [rax]System.Collections.Generic.ValueListBuilder`1[ubyte]:AppendSpanWithGrow(int):System.Span`1[ubyte]:this
jmp SHORT G_M51644_IG20
;; size=19 bbWeight=8 PerfScore 46.00
G_M51644_IG19:
lea r8d, [rcx+rax]
mov dword ptr [rbx+0x08], r8d
mov ecx, ecx
add rcx, rdx
mov edx, eax
mov rax, rcx
;; size=18 bbWeight=8 PerfScore 20.00
G_M51644_IG20:
mov rcx, rax
mov r8d, edx
mov rsi, bword ptr [rbp-0x160]
mov edx, dword ptr [rbp-0x8C]
mov rdi, gword ptr [rbp-0x130]
mov rax, 0xD1FFAB1E ; code for System.Text.UTF8Encoding:GetBytes(System.ReadOnlySpan`1[ushort],System.Span`1[ubyte]):int:this
call [rax]System.Text.UTF8Encoding:GetBytes(System.ReadOnlySpan`1[ushort],System.Span`1[ubyte]):int:this
;; size=38 bbWeight=16 PerfScore 108.00
G_M51644_IG21:
xor ecx, ecx
mov dword ptr [rbp-0x3C], ecx
;; size=5 bbWeight=16 PerfScore 20.00
G_M51644_IG22:
mov r10d, dword ptr [rbp-0x44]
mov edx, r10d
add edx, dword ptr [rbp-0x40]
mov edi, edx
cmp edi, r15d
mov edx, edi
jl G_M51644_IG03
;; size=23 bbWeight=16 PerfScore 80.00
G_M51644_IG23:
add rsp, 328
pop rbx
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
;; size=18 bbWeight=1 PerfScore 4.25
G_M51644_IG24:
mov rdi, rbx
mov esi, dword ptr [rbp-0x50]
mov dword ptr [rbp-0x44], eax
mov edx, eax
mov rcx, 0xD1FFAB1E ; code for System.DateTimeFormat:FormatDigits[ubyte](byref,int,int)
call [rcx]System.DateTimeFormat:FormatDigits[ubyte](byref,int,int)
jmp SHORT G_M51644_IG21
;; size=25 bbWeight=16 PerfScore 124.00
G_M51644_IG25:
mov dword ptr [rbp-0x44], eax
mov edx, 0xD1FFAB1E
mov edi, dword ptr [rbp-0x50]
mov eax, edx
imul edx:eax, edi
mov esi, edx
shr esi, 31
sar edx, 5
add esi, edx
imul esi, esi, 100
sub edi, esi
mov esi, edi
mov rdi, rbx
mov edx, dword ptr [rbp-0x44]
mov rax, 0xD1FFAB1E ; code for System.DateTimeFormat:FormatDigits[ubyte](byref,int,int)
call [rax]System.DateTimeFormat:FormatDigits[ubyte](byref,int,int)
jmp SHORT G_M51644_IG21
;; size=52 bbWeight=16 PerfScore 256.00
G_M51644_IG26:
mov rdi, rbx
mov esi, dword ptr [rbp-0x50]
mov rax, 0xD1FFAB1E ; code for System.Globalization.HebrewNumber:Append[ubyte](byref,int)
call [rax]System.Globalization.HebrewNumber:Append[ubyte](byref,int)
jmp G_M51644_IG21
;; size=23 bbWeight=16 PerfScore 104.00
G_M51644_IG27:
mov eax, dword ptr [rbp-0x44]
cmp eax, 2
jg SHORT G_M51644_IG29
;; size=8 bbWeight=16 PerfScore 36.00
G_M51644_IG28:
mov dword ptr [rbp-0x44], eax
mov edx, eax
jmp SHORT G_M51644_IG30
;; size=7 bbWeight=8 PerfScore 26.00
G_M51644_IG29:
mov edx, 2
mov dword ptr [rbp-0x44], eax
;; size=8 bbWeight=8 PerfScore 10.00
G_M51644_IG30:
mov rdi, rbx
mov esi, dword ptr [rbp-0x50]
mov rcx, 0xD1FFAB1E ; code for System.DateTimeFormat:FormatDigits[ubyte](byref,int,int)
call [rcx]System.DateTimeFormat:FormatDigits[ubyte](byref,int,int)
jmp G_M51644_IG21
;; size=23 bbWeight=16 PerfScore 104.00
G_M51644_IG31:
mov edi, 0x5143
mov rsi, 0xD1FFAB1E ; code for System.Text.UnicodeUtility:GetUtf8SequenceLength(uint):int
call [rsi]System.Text.UnicodeUtility:GetUtf8SequenceLength(uint):int
mov ecx, dword ptr [rbx+0x08]
mov rdx, bword ptr [rbx+0x10]
mov edi, dword ptr [rbx+0x18]
mov esi, ecx
mov r8d, eax
add rsi, r8
cmp rsi, rdi
jbe SHORT G_M51644_IG32
mov rdi, rbx
mov esi, eax
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.ValueListBuilder`1[ubyte]:AppendSpanWithGrow(int):System.Span`1[ubyte]:this
call [rax]System.Collections.Generic.ValueListBuilder`1[ubyte]:AppendSpanWithGrow(int):System.Span`1[ubyte]:this
mov rsi, rax
jmp SHORT G_M51644_IG33
- align [6 bytes for IG36]
- ;; size=68 bbWeight=2 PerfScore 35.00
+ align [0 bytes for IG36]
+ ;; size=62 bbWeight=2 PerfScore 35.00
G_M51644_IG32:
lea esi, [rcx+rax]
mov dword ptr [rbx+0x08], esi
mov esi, ecx
add rsi, rdx
mov edx, eax
;; size=13 bbWeight=2 PerfScore 4.50
G_M51644_IG33:
lea rcx, [rbp-0x68]
mov edi, 0x5143
mov rax, 0xD1FFAB1E ; code for System.Text.Rune:TryEncodeToUtf8(System.Text.Rune,System.Span`1[ubyte],byref):ubyte
call [rax]System.Text.Rune:TryEncodeToUtf8(System.Text.Rune,System.Span`1[ubyte],byref):ubyte
test eax, eax
jne G_M51644_IG21
jmp G_M51644_IG178
;; size=34 bbWeight=2 PerfScore 14.50
G_M51644_IG34:
mov r8d, dword ptr [rbp-0x48]
cmp r8d, 122
jne G_M51644_IG166
mov rdi, r14
mov esi, r15d
mov edx, dword ptr [rbp-0x40]
mov ecx, r8d
mov r8, 0xD1FFAB1E ; code for System.DateTimeFormat:ParseRepeatPattern(System.ReadOnlySpan`1[ushort],int,ushort):int
call [r8]System.DateTimeFormat:ParseRepeatPattern(System.ReadOnlySpan`1[ushort],int,ushort):int
mov rdi, qword ptr [rbp-0x30]
mov rsi, r12
mov dword ptr [rbp-0x44], eax
mov edx, eax
mov ecx, dword ptr [rbp-0x3C]
mov r8, rbx
mov r9, 0xD1FFAB1E ; code for System.DateTimeFormat:FormatCustomizedTimeZone[ubyte](System.DateTime,System.TimeSpan,int,ubyte,byref)
call [r9]System.DateTimeFormat:FormatCustomizedTimeZone[ubyte](System.DateTime,System.TimeSpan,int,ubyte,byref)
jmp G_M51644_IG22
;; size=75 bbWeight=2 PerfScore 32.50
G_M51644_IG35:
cmp r8d, 115
jne G_M51644_IG41
mov edx, dword ptr [rbp-0x40]
lea edi, [rdx+0x01]
jmp SHORT G_M51644_IG37
;; size=18 bbWeight=2 PerfScore 9.50
G_M51644_IG36:
inc edi
;; size=2 bbWeight=8 PerfScore 2.00
G_M51644_IG37:
cmp edi, r15d
jae SHORT G_M51644_IG38
movzx rsi, word ptr [r14+2*rdi]
cmp esi, r8d
je SHORT G_M51644_IG36
;; size=15 bbWeight=16 PerfScore 72.00
G_M51644_IG38:
mov dword ptr [rbp-0x40], edx
sub edi, edx
mov r9d, edi
mov rdi, 0xD1FFAB1E
and rdi, qword ptr [rbp-0x30]
mov rsi, 0xD1FFAB1E
mov rax, rdi
mul rdx:rax, rsi
mov rsi, rdx
shr rsi, 22
mov rdx, 0xD1FFAB1E
mov rax, rsi
mul rdx:rax, rdx
imul rdi, rdx, 60
sub rsi, rdi
cmp r9d, 2
jg SHORT G_M51644_IG39
mov dword ptr [rbp-0x44], r9d
mov edx, r9d
jmp SHORT G_M51644_IG40
- align [12 bytes for IG42]
- ;; size=95 bbWeight=2 PerfScore 36.50
+ align [4 bytes for IG42]
+ ;; size=87 bbWeight=2 PerfScore 36.50
G_M51644_IG39:
mov edx, 2
mov dword ptr [rbp-0x44], r9d
;; size=9 bbWeight=2 PerfScore 2.50
G_M51644_IG40:
mov rdi, rbx
mov rax, 0xD1FFAB1E ; code for System.DateTimeFormat:FormatDigits[ubyte](byref,int,int)
call [rax]System.DateTimeFormat:FormatDigits[ubyte](byref,int,int)
jmp G_M51644_IG22
;; size=20 bbWeight=2 PerfScore 11.00
G_M51644_IG41:
cmp r8d, 116
jne G_M51644_IG166
mov edx, dword ptr [rbp-0x40]
lea r9d, [rdx+0x01]
jmp SHORT G_M51644_IG43
;; size=19 bbWeight=2 PerfScore 9.50
G_M51644_IG42:
inc r9d
;; size=3 bbWeight=8 PerfScore 2.00
G_M51644_IG43:
cmp r9d, r15d
jae SHORT G_M51644_IG44
movzx rdi, word ptr [r14+2*r9]
cmp edi, r8d
je SHORT G_M51644_IG42
;; size=15 bbWeight=16 PerfScore 72.00
G_M51644_IG44:
mov dword ptr [rbp-0x40], edx
sub r9d, edx
mov esi, r9d
mov dword ptr [rbp-0x44], esi
cmp esi, 1
je G_M51644_IG60
;; size=21 bbWeight=2 PerfScore 7.50
G_M51644_IG45:
lea rdi, [rbp-0x30]
mov r8, 0xD1FFAB1E ; code for System.DateTime:get_Hour():int:this
call [r8]System.DateTime:get_Hour():int:this
cmp eax, 12
jge G_M51644_IG52
;; size=26 bbWeight=4 PerfScore 20.00
G_M51644_IG46:
mov rax, gword ptr [r13+0x70]
test rax, rax
jne G_M51644_IG49
mov rsi, 0xD1FFAB1E ; const ptr
mov r8, gword ptr [rsi]
mov rax, r8
mov gword ptr [rbp-0xF0], rax
cmp gword ptr [r13+0x30], 0
mov rax, gword ptr [rbp-0xF0]
jne SHORT G_M51644_IG48
mov r8, gword ptr [r13+0x08]
mov gword ptr [rbp-0x100], r8
mov rsi, gword ptr [r8+0x130]
test rsi, rsi
jne SHORT G_M51644_IG47
mov rsi, gword ptr [r8+0x10]
mov rdi, r8
mov edx, 40
xor rcx, rcx
mov r9, 0xD1FFAB1E ; code for System.Globalization.CultureData:IcuGetLocaleInfo(System.String,uint,System.String):System.String:this
call [r9]System.Globalization.CultureData:IcuGetLocaleInfo(System.String,uint,System.String):System.String:this
mov rsi, rax
mov gword ptr [rbp-0x108], rsi
mov rdi, gword ptr [rbp-0x100]
lea rdi, bword ptr [rdi+0x130]
call CORINFO_HELP_ASSIGN_REF
mov rsi, gword ptr [rbp-0x108]
;; size=136 bbWeight=2 PerfScore 57.50
G_M51644_IG47:
lea rdi, bword ptr [r13+0x30]
call CORINFO_HELP_ASSIGN_REF
mov rax, gword ptr [rbp-0xF0]
;; size=16 bbWeight=2 PerfScore 5.00
G_M51644_IG48:
mov rsi, gword ptr [r13+0x30]
mov rdi, rax
mov rax, 0xD1FFAB1E ; code for System.Text.UTF8Encoding+UTF8EncodingSealed:GetBytes(System.String):ubyte[]:this
call [rax]System.Text.UTF8Encoding+UTF8EncodingSealed:GetBytes(System.String):ubyte[]:this
mov gword ptr [rbp-0xF8], rax
lea rdi, bword ptr [r13+0x70]
mov rsi, rax
call CORINFO_HELP_ASSIGN_REF
mov rax, gword ptr [rbp-0xF8]
;; size=45 bbWeight=2 PerfScore 18.50
G_M51644_IG49:
test rax, rax
je SHORT G_M51644_IG50
lea rsi, bword ptr [rax+0x10]
mov edx, dword ptr [rax+0x08]
jmp SHORT G_M51644_IG51
align [0 bytes for IG74]
;; size=14 bbWeight=2 PerfScore 11.50
G_M51644_IG50:
xor rsi, rsi
xor edx, edx
;; size=4 bbWeight=2 PerfScore 1.00
G_M51644_IG51:
jmp G_M51644_IG57
;; size=5 bbWeight=2 PerfScore 4.00
G_M51644_IG52:
mov rax, gword ptr [r13+0x78]
test rax, rax
jne G_M51644_IG55
mov rsi, 0xD1FFAB1E ; const ptr
mov rax, gword ptr [rsi]
mov gword ptr [rbp-0xD0], rax
cmp gword ptr [r13+0x38], 0
mov rax, gword ptr [rbp-0xD0]
jne SHORT G_M51644_IG54
mov r8, gword ptr [r13+0x08]
mov gword ptr [rbp-0xE0], r8
mov rsi, gword ptr [r8+0x138]
test rsi, rsi
jne SHORT G_M51644_IG53
mov rsi, gword ptr [r8+0x10]
mov rdi, r8
mov edx, 41
xor rcx, rcx
mov r9, 0xD1FFAB1E ; code for System.Globalization.CultureData:IcuGetLocaleInfo(System.String,uint,System.String):System.String:this
call [r9]System.Globalization.CultureData:IcuGetLocaleInfo(System.String,uint,System.String):System.String:this
mov rsi, rax
mov gword ptr [rbp-0xE8], rsi
mov rdi, gword ptr [rbp-0xE0]
lea rdi, bword ptr [rdi+0x138]
call CORINFO_HELP_ASSIGN_REF
mov rsi, gword ptr [rbp-0xE8]
;; size=133 bbWeight=2 PerfScore 57.00
G_M51644_IG53:
lea rdi, bword ptr [r13+0x38]
call CORINFO_HELP_ASSIGN_REF
mov rax, gword ptr [rbp-0xD0]
;; size=16 bbWeight=2 PerfScore 5.00
G_M51644_IG54:
mov rsi, gword ptr [r13+0x38]
mov rdi, rax
mov rax, 0xD1FFAB1E ; code for System.Text.UTF8Encoding+UTF8EncodingSealed:GetBytes(System.String):ubyte[]:this
call [rax]System.Text.UTF8Encoding+UTF8EncodingSealed:GetBytes(System.String):ubyte[]:this
mov gword ptr [rbp-0xD8], rax
lea rdi, bword ptr [r13+0x78]
mov rsi, rax
call CORINFO_HELP_ASSIGN_REF
mov rax, gword ptr [rbp-0xD8]
;; size=45 bbWeight=2 PerfScore 18.50
G_M51644_IG55:
test rax, rax
je SHORT G_M51644_IG56
lea rsi, bword ptr [rax+0x10]
mov edx, dword ptr [rax+0x08]
jmp SHORT G_M51644_IG57
;; size=14 bbWeight=2 PerfScore 11.50
G_M51644_IG56:
xor rsi, rsi
xor edx, edx
;; size=4 bbWeight=2 PerfScore 1.00
G_M51644_IG57:
mov eax, dword ptr [rbx+0x08]
mov rcx, bword ptr [rbx+0x10]
mov r8d, dword ptr [rbx+0x18]
cmp edx, 1
jne SHORT G_M51644_IG58
cmp eax, r8d
jb SHORT G_M51644_IG59
;; size=21 bbWeight=4 PerfScore 34.00
G_M51644_IG58:
mov rdi, rbx
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.ValueListBuilder`1[ubyte]:AppendMultiChar(System.ReadOnlySpan`1[ubyte]):this
call [rax]System.Collections.Generic.ValueListBuilder`1[ubyte]:AppendMultiChar(System.ReadOnlySpan`1[ubyte]):this
jmp G_M51644_IG22
;; size=20 bbWeight=4 PerfScore 22.00
G_M51644_IG59:
cmp eax, r8d
jae G_M51644_IG181
mov edi, eax
movzx rdx, byte ptr [rsi]
mov byte ptr [rcx+rdi], dl
inc eax
mov dword ptr [rbx+0x08], eax
jmp G_M51644_IG22
;; size=27 bbWeight=4 PerfScore 31.00
G_M51644_IG60:
lea rdi, [rbp-0x30]
mov r8, 0xD1FFAB1E ; code for System.DateTime:get_Hour():int:this
call [r8]System.DateTime:get_Hour():int:this
cmp eax, 12
jge SHORT G_M51644_IG63
cmp gword ptr [r13+0x30], 0
jne SHORT G_M51644_IG62
mov rax, gword ptr [r13+0x08]
mov gword ptr [rbp-0xC0], rax
mov rsi, gword ptr [rax+0x130]
test rsi, rsi
jne SHORT G_M51644_IG61
mov rsi, gword ptr [rax+0x10]
mov rdi, rax
mov edx, 40
xor rcx, rcx
mov r8, 0xD1FFAB1E ; code for System.Globalization.CultureData:IcuGetLocaleInfo(System.String,uint,System.String):System.String:this
call [r8]System.Globalization.CultureData:IcuGetLocaleInfo(System.String,uint,System.String):System.String:this
mov rsi, rax
mov gword ptr [rbp-0xC8], rsi
mov rdi, gword ptr [rbp-0xC0]
lea rdi, bword ptr [rdi+0x130]
call CORINFO_HELP_ASSIGN_REF
mov rsi, gword ptr [rbp-0xC8]
;; size=115 bbWeight=2 PerfScore 52.00
G_M51644_IG61:
lea rdi, bword ptr [r13+0x30]
call CORINFO_HELP_ASSIGN_REF
;; size=9 bbWeight=2 PerfScore 3.00
G_M51644_IG62:
mov rax, gword ptr [r13+0x30]
jmp SHORT G_M51644_IG66
;; size=6 bbWeight=2 PerfScore 8.00
G_M51644_IG63:
cmp gword ptr [r13+0x38], 0
jne SHORT G_M51644_IG65
mov rax, gword ptr [r13+0x08]
mov gword ptr [rbp-0xB0], rax
mov rsi, gword ptr [rax+0x138]
test rsi, rsi
jne SHORT G_M51644_IG64
mov rsi, gword ptr [rax+0x10]
mov rdi, rax
mov edx, 41
xor rcx, rcx
mov r8, 0xD1FFAB1E ; code for System.Globalization.CultureData:IcuGetLocaleInfo(System.String,uint,System.String):System.String:this
call [r8]System.Globalization.CultureData:IcuGetLocaleInfo(System.String,uint,System.String):System.String:this
mov rsi, rax
mov gword ptr [rbp-0xB8], rsi
mov rdi, gword ptr [rbp-0xB0]
lea rdi, bword ptr [rdi+0x138]
call CORINFO_HELP_ASSIGN_REF
mov rsi, gword ptr [rbp-0xB8]
;; size=93 bbWeight=2 PerfScore 42.00
G_M51644_IG64:
lea rdi, bword ptr [r13+0x38]
call CORINFO_HELP_ASSIGN_REF
;; size=9 bbWeight=2 PerfScore 3.00
G_M51644_IG65:
mov rax, gword ptr [r13+0x38]
;; size=4 bbWeight=2 PerfScore 4.00
G_M51644_IG66:
cmp dword ptr [rax+0x08], 0
jle G_M51644_IG22
movzx rax, word ptr [rax+0x0C]
cmp eax, 127
jle G_M51644_IG69
lea edi, [rax-0xD800]
cmp edi, 0x7FF
jbe G_M51644_IG179
mov dword ptr [rbp-0x78], eax
mov edi, eax
mov rcx, 0xD1FFAB1E ; code for System.Text.UnicodeUtility:GetUtf8SequenceLength(uint):int
call [rcx]System.Text.UnicodeUtility:GetUtf8SequenceLength(uint):int
mov ecx, dword ptr [rbx+0x08]
mov rdx, bword ptr [rbx+0x10]
mov edi, dword ptr [rbx+0x18]
mov esi, ecx
mov r8d, eax
add rsi, r8
cmp rsi, rdi
jbe SHORT G_M51644_IG67
mov rdi, rbx
mov esi, eax
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.ValueListBuilder`1[ubyte]:AppendSpanWithGrow(int):System.Span`1[ubyte]:this
call [rax]System.Collections.Generic.ValueListBuilder`1[ubyte]:AppendSpanWithGrow(int):System.Span`1[ubyte]:this
mov rsi, rax
jmp SHORT G_M51644_IG68
;; size=103 bbWeight=2 PerfScore 55.00
G_M51644_IG67:
lea esi, [rcx+rax]
mov dword ptr [rbx+0x08], esi
mov esi, ecx
add rsi, rdx
mov edx, eax
;; size=13 bbWeight=2 PerfScore 4.50
G_M51644_IG68:
lea rcx, [rbp-0x60]
mov edi, dword ptr [rbp-0x78]
mov rax, 0xD1FFAB1E ; code for System.Text.Rune:TryEncodeToUtf8(System.Text.Rune,System.Span`1[ubyte],byref):ubyte
call [rax]System.Text.Rune:TryEncodeToUtf8(System.Text.Rune,System.Span`1[ubyte],byref):ubyte
test eax, eax
jne G_M51644_IG22
jmp G_M51644_IG178
;; size=32 bbWeight=2 PerfScore 16.00
G_M51644_IG69:
movzx rsi, al
mov eax, dword ptr [rbx+0x08]
mov rcx, bword ptr [rbx+0x10]
mov edi, dword ptr [rbx+0x18]
cmp eax, edi
jb SHORT G_M51644_IG70
mov rdi, rbx
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.ValueListBuilder`1[ubyte]:AddWithResize(ubyte):this
call [rax]System.Collections.Generic.ValueListBuilder`1[ubyte]:AddWithResize(ubyte):this
jmp G_M51644_IG22
;; size=38 bbWeight=2 PerfScore 26.00
G_M51644_IG70:
mov edi, eax
mov byte ptr [rcx+rdi], sil
inc eax
mov dword ptr [rbx+0x08], eax
jmp G_M51644_IG22
;; size=16 bbWeight=2 PerfScore 9.00
G_M51644_IG71:
cmp r8d, 92
jle G_M51644_IG107
lea edi, [r8-0x64]
cmp edi, 4
ja G_M51644_IG101
;; size=23 bbWeight=2 PerfScore 6.00
G_M51644_IG72:
mov edi, edi
lea rsi, [reloc @RWD00]
mov esi, dword ptr [rsi+4*rdi]
lea r9, G_M51644_IG02
add rsi, r9
jmp rsi
;; size=24 bbWeight=1.67 PerfScore 10.00
G_M51644_IG73:
mov edx, dword ptr [rbp-0x40]
lea esi, [rdx+0x01]
jmp SHORT G_M51644_IG75
;; size=8 bbWeight=2 PerfScore 7.00
G_M51644_IG74:
inc esi
;; size=2 bbWeight=8 PerfScore 2.00
G_M51644_IG75:
cmp esi, r15d
jae SHORT G_M51644_IG76
movzx rdi, word ptr [r14+2*rsi]
cmp edi, r8d
je SHORT G_M51644_IG74
;; size=15 bbWeight=16 PerfScore 72.00
G_M51644_IG76:
mov dword ptr [rbp-0x40], edx
sub esi, edx
mov dword ptr [rbp-0x44], esi
lea rdi, [rbp-0x30]
mov r8, 0xD1FFAB1E ; code for System.DateTime:get_Hour():int:this
call [r8]System.DateTime:get_Hour():int:this
mov esi, eax
cmp esi, 12
jg SHORT G_M51644_IG77
test esi, esi
jne SHORT G_M51644_IG78
mov esi, 12
jmp SHORT G_M51644_IG78
align [12 bytes for IG82]
;; size=55 bbWeight=2 PerfScore 22.00
G_M51644_IG77:
add esi, -12
;; size=3 bbWeight=2 PerfScore 0.50
G_M51644_IG78:
mov eax, dword ptr [rbp-0x44]
cmp eax, 2
jg SHORT G_M51644_IG79
mov dword ptr [rbp-0x44], eax
mov edx, eax
jmp SHORT G_M51644_IG80
;; size=15 bbWeight=2 PerfScore 11.00
G_M51644_IG79:
mov edx, 2
mov dword ptr [rbp-0x44], eax
;; size=8 bbWeight=2 PerfScore 2.50
G_M51644_IG80:
mov rdi, rbx
mov rcx, 0xD1FFAB1E ; code for System.DateTimeFormat:FormatDigits[ubyte](byref,int,int)
call [rcx]System.DateTimeFormat:FormatDigits[ubyte](byref,int,int)
jmp G_M51644_IG22
;; size=20 bbWeight=2 PerfScore 11.00
G_M51644_IG81:
mov edx, dword ptr [rbp-0x40]
lea edi, [rdx+0x01]
jmp SHORT G_M51644_IG83
;; size=8 bbWeight=2 PerfScore 7.00
G_M51644_IG82:
inc edi
;; size=2 bbWeight=8 PerfScore 2.00
G_M51644_IG83:
cmp edi, r15d
jae SHORT G_M51644_IG84
movzx rsi, word ptr [r14+2*rdi]
cmp esi, r8d
je SHORT G_M51644_IG82
;; size=15 bbWeight=16 PerfScore 72.00
G_M51644_IG84:
mov dword ptr [rbp-0x40], edx
sub edi, edx
mov dword ptr [rbp-0x44], edi
mov rdi, gword ptr [rbp-0xA0]
mov rsi, qword ptr [rbp-0x30]
mov r8, qword ptr [rdi]
mov r8, qword ptr [r8+0x58]
call [r8+0x08]System.Globalization.Calendar:GetEra(System.DateTime):int:this
mov esi, eax
mov rdi, r13
mov rax, 0xD1FFAB1E ; code for System.Globalization.DateTimeFormatInfo:GetEraName(int):System.String:this
call [rax]System.Globalization.DateTimeFormatInfo:GetEraName(int):System.String:this
test rax, rax
- je SHORT G_M51644_IG85
- lea rcx, bword ptr [rax+0x0C]
- mov eax, dword ptr [rax+0x08]
- jmp SHORT G_M51644_IG86
- align [11 bytes for IG90]
- ;; size=72 bbWeight=2 PerfScore 41.50
-G_M51644_IG85:
+ jne SHORT G_M51644_IG85
xor rcx, rcx
- xor eax, eax
- ;; size=4 bbWeight=2 PerfScore 1.00
+ xor r8d, r8d
+ mov rax, rcx
+ mov ecx, r8d
+ jmp SHORT G_M51644_IG86
+ align [0 bytes for IG90]
+ ;; size=65 bbWeight=2 PerfScore 38.50
+G_M51644_IG85:
+ lea rcx, bword ptr [rax+0x0C]
+ mov r8d, dword ptr [rax+0x08]
+ mov rax, rcx
+ mov ecx, r8d
+ ;; size=14 bbWeight=2 PerfScore 6.00
G_M51644_IG86:
mov rsi, 0xD1FFAB1E ; const ptr
mov rsi, gword ptr [rsi]
mov r8, rsi
mov gword ptr [rbp-0xA8], r8
- mov bword ptr [rbp-0x138], rcx
- mov rsi, rcx
- mov dword ptr [rbp-0x74], eax
- mov edx, eax
+ mov bword ptr [rbp-0x138], rax
+ mov rsi, rax
+ mov dword ptr [rbp-0x74], ecx
+ mov edx, ecx
mov rdi, r8
mov r8, 0xD1FFAB1E ; code for System.Text.UTF8Encoding:GetByteCount(System.ReadOnlySpan`1[ushort]):int:this
call [r8]System.Text.UTF8Encoding:GetByteCount(System.ReadOnlySpan`1[ushort]):int:this
mov ecx, dword ptr [rbx+0x08]
mov rdx, bword ptr [rbx+0x10]
mov edi, dword ptr [rbx+0x18]
mov esi, ecx
mov r8d, eax
add rsi, r8
cmp rsi, rdi
jbe SHORT G_M51644_IG87
mov rdi, rbx
mov esi, eax
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.ValueListBuilder`1[ubyte]:AppendSpanWithGrow(int):System.Span`1[ubyte]:this
call [rax]System.Collections.Generic.ValueListBuilder`1[ubyte]:AppendSpanWithGrow(int):System.Span`1[ubyte]:this
jmp SHORT G_M51644_IG88
;; size=96 bbWeight=2 PerfScore 46.50
G_M51644_IG87:
lea r8d, [rcx+rax]
mov dword ptr [rbx+0x08], r8d
mov ecx, ecx
add rcx, rdx
mov edx, eax
mov rax, rcx
;; size=18 bbWeight=2 PerfScore 5.00
G_M51644_IG88:
mov rcx, rax
mov r8d, edx
mov rsi, bword ptr [rbp-0x138]
mov edx, dword ptr [rbp-0x74]
mov rdi, gword ptr [rbp-0xA8]
mov rax, 0xD1FFAB1E ; code for System.Text.UTF8Encoding:GetBytes(System.ReadOnlySpan`1[ushort],System.Span`1[ubyte]):int:this
call [rax]System.Text.UTF8Encoding:GetBytes(System.ReadOnlySpan`1[ushort],System.Span`1[ubyte]):int:this
jmp G_M51644_IG22
;; size=40 bbWeight=2 PerfScore 17.50
G_M51644_IG89:
mov edx, dword ptr [rbp-0x40]
lea r9d, [rdx+0x01]
jmp SHORT G_M51644_IG91
;; size=9 bbWeight=2 PerfScore 7.00
G_M51644_IG90:
inc r9d
;; size=3 bbWeight=8 PerfScore 2.00
G_M51644_IG91:
cmp r9d, r15d
jae SHORT G_M51644_IG92
cmp r9d, r15d
jae G_M51644_IG181
movzx rdi, word ptr [r14+2*r9]
cmp edi, r8d
je SHORT G_M51644_IG90
;; size=24 bbWeight=16 PerfScore 92.00
G_M51644_IG92:
mov dword ptr [rbp-0x40], edx
sub r9d, edx
mov ecx, r9d
mov dword ptr [rbp-0x44], ecx
cmp ecx, 2
jle G_M51644_IG99
mov rdi, gword ptr [rbp-0xA0]
mov rsi, qword ptr [rbp-0x30]
mov r8, qword ptr [rdi]
mov r8, qword ptr [r8+0x50]
call [r8+0x18]System.Globalization.Calendar:GetDayOfWeek(System.DateTime):int:this
cmp dword ptr [rbp-0x44], 3
je SHORT G_M51644_IG93
mov rdi, r13
mov esi, eax
mov rax, 0xD1FFAB1E ; code for System.Globalization.DateTimeFormatInfo:GetDayName(int):System.String:this
call [rax]System.Globalization.DateTimeFormatInfo:GetDayName(int):System.String:this
jmp SHORT G_M51644_IG94
- align [10 bytes for IG102]
- ;; size=78 bbWeight=2 PerfScore 43.00
+ align [0 bytes for IG102]
+ ;; size=68 bbWeight=2 PerfScore 43.00
G_M51644_IG93:
mov rdi, r13
mov esi, eax
mov rax, 0xD1FFAB1E ; code for System.Globalization.DateTimeFormatInfo:GetAbbreviatedDayName(int):System.String:this
call [rax]System.Globalization.DateTimeFormatInfo:GetAbbreviatedDayName(int):System.String:this
;; size=17 bbWeight=2 PerfScore 7.50
G_M51644_IG94:
test rax, rax
- je SHORT G_M51644_IG95
- lea rcx, bword ptr [rax+0x0C]
- mov eax, dword ptr [rax+0x08]
- jmp SHORT G_M51644_IG96
- ;; size=14 bbWeight=2 PerfScore 11.50
-G_M51644_IG95:
+ jne SHORT G_M51644_IG95
xor rcx, rcx
- xor eax, eax
- ;; size=4 bbWeight=2 PerfScore 1.00
+ xor r8d, r8d
+ mov rax, rcx
+ mov ecx, r8d
+ jmp SHORT G_M51644_IG96
+ ;; size=18 bbWeight=2 PerfScore 8.50
+G_M51644_IG95:
+ lea rcx, bword ptr [rax+0x0C]
+ mov r8d, dword ptr [rax+0x08]
+ mov rax, rcx
+ mov ecx, r8d
+ ;; size=14 bbWeight=2 PerfScore 6.00
G_M51644_IG96:
mov rsi, 0xD1FFAB1E ; const ptr
mov r8, gword ptr [rsi]
mov gword ptr [rbp-0x110], r8
- mov bword ptr [rbp-0x140], rcx
- mov rsi, rcx
- mov dword ptr [rbp-0x7C], eax
- mov edx, eax
+ mov bword ptr [rbp-0x140], rax
+ mov rsi, rax
+ mov dword ptr [rbp-0x7C], ecx
+ mov edx, ecx
mov rdi, r8
mov r8, 0xD1FFAB1E ; code for System.Text.UTF8Encoding:GetByteCount(System.ReadOnlySpan`1[ushort]):int:this
call [r8]System.Text.UTF8Encoding:GetByteCount(System.ReadOnlySpan`1[ushort]):int:this
mov ecx, dword ptr [rbx+0x08]
mov rdx, bword ptr [rbx+0x10]
mov edi, dword ptr [rbx+0x18]
mov esi, ecx
mov r8d, eax
add rsi, r8
cmp rsi, rdi
jbe SHORT G_M51644_IG97
mov rdi, rbx
mov esi, eax
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.ValueListBuilder`1[ubyte]:AppendSpanWithGrow(int):System.Span`1[ubyte]:this
call [rax]System.Collections.Generic.ValueListBuilder`1[ubyte]:AppendSpanWithGrow(int):System.Span`1[ubyte]:this
jmp SHORT G_M51644_IG98
;; size=93 bbWeight=2 PerfScore 46.00
G_M51644_IG97:
lea r8d, [rcx+rax]
mov dword ptr [rbx+0x08], r8d
mov ecx, ecx
add rcx, rdx
mov edx, eax
mov rax, rcx
;; size=18 bbWeight=2 PerfScore 5.00
G_M51644_IG98:
mov rcx, rax
mov r8d, edx
mov rsi, bword ptr [rbp-0x140]
mov edx, dword ptr [rbp-0x7C]
mov rdi, gword ptr [rbp-0x110]
mov rax, 0xD1FFAB1E ; code for System.Text.UTF8Encoding:GetBytes(System.ReadOnlySpan`1[ushort],System.Span`1[ubyte]):int:this
call [rax]System.Text.UTF8Encoding:GetBytes(System.ReadOnlySpan`1[ushort],System.Span`1[ubyte]):int:this
jmp G_M51644_IG21
;; size=40 bbWeight=2 PerfScore 17.50
G_M51644_IG99:
mov rdi, gword ptr [rbp-0xA0]
mov rsi, qword ptr [rbp-0x30]
mov r8, qword ptr [rdi]
mov r8, qword ptr [r8+0x50]
call [r8+0x10]System.Globalization.Calendar:GetDayOfMonth(System.DateTime):int:this
cmp dword ptr [rbp-0x34], 0
jne SHORT G_M51644_IG100
mov rdi, rbx
mov esi, eax
mov edx, dword ptr [rbp-0x44]
mov rax, 0xD1FFAB1E ; code for System.DateTimeFormat:FormatDigits[ubyte](byref,int,int)
call [rax]System.DateTimeFormat:FormatDigits[ubyte](byref,int,int)
jmp G_M51644_IG21
;; size=53 bbWeight=2 PerfScore 37.50
G_M51644_IG100:
mov rdi, rbx
mov esi, eax
mov rax, 0xD1FFAB1E ; code for System.Globalization.HebrewNumber:Append[ubyte](byref,int)
call [rax]System.Globalization.HebrewNumber:Append[ubyte](byref,int)
jmp G_M51644_IG21
;; size=22 bbWeight=2 PerfScore 11.50
G_M51644_IG101:
cmp r8d, 109
jne G_M51644_IG166
mov edx, dword ptr [rbp-0x40]
lea edi, [rdx+0x01]
jmp SHORT G_M51644_IG103
;; size=18 bbWeight=2 PerfScore 9.50
G_M51644_IG102:
inc edi
;; size=2 bbWeight=8 PerfScore 2.00
G_M51644_IG103:
cmp edi, r15d
jae SHORT G_M51644_IG104
movzx rsi, word ptr [r14+2*rdi]
cmp esi, r8d
je SHORT G_M51644_IG102
;; size=15 bbWeight=16 PerfScore 72.00
G_M51644_IG104:
mov dword ptr [rbp-0x40], edx
sub edi, edx
mov dword ptr [rbp-0x44], edi
lea rdi, [rbp-0x30]
mov r8, 0xD1FFAB1E ; code for System.DateTime:get_Minute():int:this
call [r8]System.DateTime:get_Minute():int:this
mov esi, eax
mov eax, dword ptr [rbp-0x44]
cmp eax, 2
jg SHORT G_M51644_IG105
mov dword ptr [rbp-0x44], eax
mov edx, eax
jmp SHORT G_M51644_IG106
- align [7 bytes for IG108]
- ;; size=49 bbWeight=2 PerfScore 23.50
+ align [0 bytes for IG108]
+ ;; size=42 bbWeight=2 PerfScore 23.50
G_M51644_IG105:
mov edx, 2
mov dword ptr [rbp-0x44], eax
;; size=8 bbWeight=2 PerfScore 2.50
G_M51644_IG106:
mov rdi, rbx
mov rcx, 0xD1FFAB1E ; code for System.DateTimeFormat:FormatDigits[ubyte](byref,int,int)
call [rcx]System.DateTimeFormat:FormatDigits[ubyte](byref,int,int)
jmp G_M51644_IG22
;; size=20 bbWeight=2 PerfScore 11.00
G_M51644_IG107:
cmp r8d, 77
jne G_M51644_IG133
mov edx, dword ptr [rbp-0x40]
lea edi, [rdx+0x01]
jmp SHORT G_M51644_IG109
;; size=18 bbWeight=2 PerfScore 9.50
G_M51644_IG108:
inc edi
;; size=2 bbWeight=8 PerfScore 2.00
G_M51644_IG109:
cmp edi, r15d
jae SHORT G_M51644_IG110
cmp edi, r15d
jae G_M51644_IG181
movzx rsi, word ptr [r14+2*rdi]
cmp esi, r8d
je SHORT G_M51644_IG108
;; size=24 bbWeight=16 PerfScore 92.00
G_M51644_IG110:
mov dword ptr [rbp-0x40], edx
sub edi, edx
mov dword ptr [rbp-0x44], edi
mov rdi, gword ptr [rbp-0xA0]
mov rsi, qword ptr [rbp-0x30]
mov rcx, qword ptr [rdi]
mov rcx, qword ptr [rcx+0x58]
call [rcx+0x30]System.Globalization.Calendar:GetMonth(System.DateTime):int:this
mov dword ptr [rbp-0x4C], eax
cmp dword ptr [rbp-0x44], 2
jle G_M51644_IG131
cmp dword ptr [rbp-0x34], 0
jne G_M51644_IG126
mov esi, dword ptr [r13+0x180]
cmp esi, -1
je SHORT G_M51644_IG111
jmp SHORT G_M51644_IG112
align [0 bytes for IG138]
;; size=66 bbWeight=2 PerfScore 47.00
G_M51644_IG111:
mov rdi, r13
mov rsi, 0xD1FFAB1E ; code for System.Globalization.DateTimeFormatInfo:InitializeFormatFlags():int:this
call [rsi]System.Globalization.DateTimeFormatInfo:InitializeFormatFlags():int:this
mov esi, eax
;; size=17 bbWeight=2 PerfScore 7.50
G_M51644_IG112:
test sil, 1
jne G_M51644_IG119
cmp dword ptr [rbp-0x44], 3
je SHORT G_M51644_IG113
mov rdi, r13
mov esi, dword ptr [rbp-0x4C]
mov rcx, 0xD1FFAB1E ; code for System.Globalization.DateTimeFormatInfo:GetMonthName(int):System.String:this
call [rcx]System.Globalization.DateTimeFormatInfo:GetMonthName(int):System.String:this
jmp SHORT G_M51644_IG114
;; size=36 bbWeight=2 PerfScore 21.50
G_M51644_IG113:
mov rdi, r13
mov esi, dword ptr [rbp-0x4C]
mov rcx, 0xD1FFAB1E ; code for System.Globalization.DateTimeFormatInfo:GetAbbreviatedMonthName(int):System.String:this
call [rcx]System.Globalization.DateTimeFormatInfo:GetAbbreviatedMonthName(int):System.String:this
;; size=18 bbWeight=2 PerfScore 9.00
G_M51644_IG114:
test rax, rax
- je SHORT G_M51644_IG115
- lea rcx, bword ptr [rax+0x0C]
- mov eax, dword ptr [rax+0x08]
- jmp SHORT G_M51644_IG116
- ;; size=14 bbWeight=2 PerfScore 11.50
-G_M51644_IG115:
+ jne SHORT G_M51644_IG115
xor rcx, rcx
- xor eax, eax
- ;; size=4 bbWeight=2 PerfScore 1.00
+ xor r8d, r8d
+ mov rax, rcx
+ mov ecx, r8d
+ jmp SHORT G_M51644_IG116
+ ;; size=18 bbWeight=2 PerfScore 8.50
+G_M51644_IG115:
+ lea rcx, bword ptr [rax+0x0C]
+ mov r8d, dword ptr [rax+0x08]
+ mov rax, rcx
+ mov ecx, r8d
+ ;; size=14 bbWeight=2 PerfScore 6.00
G_M51644_IG116:
mov rsi, 0xD1FFAB1E ; const ptr
mov r8, gword ptr [rsi]
mov gword ptr [rbp-0x128], r8
- mov bword ptr [rbp-0x158], rcx
- mov rsi, rcx
- mov dword ptr [rbp-0x88], eax
- mov edx, eax
+ mov bword ptr [rbp-0x158], rax
+ mov rsi, rax
+ mov dword ptr [rbp-0x88], ecx
+ mov edx, ecx
mov rdi, r8
mov r8, 0xD1FFAB1E ; code for System.Text.UTF8Encoding:GetByteCount(System.ReadOnlySpan`1[ushort]):int:this
call [r8]System.Text.UTF8Encoding:GetByteCount(System.ReadOnlySpan`1[ushort]):int:this
mov ecx, dword ptr [rbx+0x08]
mov rdx, bword ptr [rbx+0x10]
mov edi, dword ptr [rbx+0x18]
mov esi, ecx
mov r8d, eax
add rsi, r8
cmp rsi, rdi
jbe SHORT G_M51644_IG117
mov rdi, rbx
mov esi, eax
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.ValueListBuilder`1[ubyte]:AppendSpanWithGrow(int):System.Span`1[ubyte]:this
call [rax]System.Collections.Generic.ValueListBuilder`1[ubyte]:AppendSpanWithGrow(int):System.Span`1[ubyte]:this
jmp SHORT G_M51644_IG118
;; size=96 bbWeight=2 PerfScore 46.00
G_M51644_IG117:
lea r8d, [rcx+rax]
mov dword ptr [rbx+0x08], r8d
mov ecx, ecx
add rcx, rdx
mov edx, eax
mov rax, rcx
;; size=18 bbWeight=2 PerfScore 5.00
G_M51644_IG118:
mov rcx, rax
mov r8d, edx
mov rsi, bword ptr [rbp-0x158]
mov edx, dword ptr [rbp-0x88]
mov rdi, gword ptr [rbp-0x128]
mov rax, 0xD1FFAB1E ; code for System.Text.UTF8Encoding:GetBytes(System.ReadOnlySpan`1[ushort],System.Span`1[ubyte]):int:this
call [rax]System.Text.UTF8Encoding:GetBytes(System.ReadOnlySpan`1[ushort],System.Span`1[ubyte]):int:this
jmp G_M51644_IG21
;; size=43 bbWeight=2 PerfScore 17.50
G_M51644_IG119:
mov rdi, r14
mov esi, r15d
mov edx, dword ptr [rbp-0x40]
mov ecx, dword ptr [rbp-0x44]
mov r8d, 100
mov rax, 0xD1FFAB1E ; code for System.DateTimeFormat:IsUseGenitiveForm(System.ReadOnlySpan`1[ushort],int,int,ushort):ubyte
call [rax]System.DateTimeFormat:IsUseGenitiveForm(System.ReadOnlySpan`1[ushort],int,int,ushort):ubyte
test eax, eax
je SHORT G_M51644_IG120
mov edx, 1
jmp SHORT G_M51644_IG121
;; size=41 bbWeight=2 PerfScore 19.00
G_M51644_IG120:
xor edx, edx
;; size=2 bbWeight=2 PerfScore 0.50
G_M51644_IG121:
cmp dword ptr [rbp-0x44], 3
sete cl
movzx rcx, cl
mov rdi, r13
mov esi, dword ptr [rbp-0x4C]
mov r8, 0xD1FFAB1E ; code for System.Globalization.DateTimeFormatInfo:InternalGetMonthName(int,int,ubyte):System.String:this
call [r8]System.Globalization.DateTimeFormatInfo:InternalGetMonthName(int,int,ubyte):System.String:this
test rax, rax
- je SHORT G_M51644_IG122
- lea rcx, bword ptr [rax+0x0C]
- mov eax, dword ptr [rax+0x08]
- jmp SHORT G_M51644_IG123
- ;; size=43 bbWeight=2 PerfScore 27.00
-G_M51644_IG122:
+ jne SHORT G_M51644_IG122
xor rcx, rcx
- xor eax, eax
- ;; size=4 bbWeight=2 PerfScore 1.00
+ xor r8d, r8d
+ mov rax, rcx
+ mov ecx, r8d
+ jmp SHORT G_M51644_IG123
+ ;; size=47 bbWeight=2 PerfScore 24.00
+G_M51644_IG122:
+ lea rcx, bword ptr [rax+0x0C]
+ mov r8d, dword ptr [rax+0x08]
+ mov rax, rcx
+ mov ecx, r8d
+ ;; size=14 bbWeight=2 PerfScore 6.00
G_M51644_IG123:
mov rsi, 0xD1FFAB1E ; const ptr
mov r8, gword ptr [rsi]
mov gword ptr [rbp-0x120], r8
- mov bword ptr [rbp-0x150], rcx
- mov rsi, rcx
- mov dword ptr [rbp-0x84], eax
- mov edx, eax
+ mov bword ptr [rbp-0x150], rax
+ mov rsi, rax
+ mov dword ptr [rbp-0x84], ecx
+ mov edx, ecx
mov rdi, r8
mov r8, 0xD1FFAB1E ; code for System.Text.UTF8Encoding:GetByteCount(System.ReadOnlySpan`1[ushort]):int:this
call [r8]System.Text.UTF8Encoding:GetByteCount(System.ReadOnlySpan`1[ushort]):int:this
mov ecx, dword ptr [rbx+0x08]
mov rdx, bword ptr [rbx+0x10]
mov edi, dword ptr [rbx+0x18]
mov esi, ecx
mov r8d, eax
add rsi, r8
cmp rsi, rdi
jbe SHORT G_M51644_IG124
mov rdi, rbx
mov esi, eax
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.ValueListBuilder`1[ubyte]:AppendSpanWithGrow(int):System.Span`1[ubyte]:this
call [rax]System.Collections.Generic.ValueListBuilder`1[ubyte]:AppendSpanWithGrow(int):System.Span`1[ubyte]:this
jmp SHORT G_M51644_IG125
;; size=96 bbWeight=2 PerfScore 46.00
G_M51644_IG124:
lea r8d, [rcx+rax]
mov dword ptr [rbx+0x08], r8d
mov ecx, ecx
add rcx, rdx
mov edx, eax
mov rax, rcx
;; size=18 bbWeight=2 PerfScore 5.00
G_M51644_IG125:
mov rcx, rax
mov r8d, edx
mov rsi, bword ptr [rbp-0x150]
mov edx, dword ptr [rbp-0x84]
mov rdi, gword ptr [rbp-0x120]
mov rax, 0xD1FFAB1E ; code for System.Text.UTF8Encoding:GetBytes(System.ReadOnlySpan`1[ushort],System.Span`1[ubyte]):int:this
call [rax]System.Text.UTF8Encoding:GetBytes(System.ReadOnlySpan`1[ushort],System.Span`1[ubyte]):int:this
jmp G_M51644_IG21
;; size=43 bbWeight=2 PerfScore 17.50
G_M51644_IG126:
mov eax, dword ptr [rbp-0x4C]
mov ecx, dword ptr [rbp-0x44]
mov rdi, qword ptr [rbp-0x30]
mov esi, eax
mov dword ptr [rbp-0x44], ecx
mov edx, ecx
mov rcx, r13
mov rax, 0xD1FFAB1E ; code for System.DateTimeFormat:FormatHebrewMonthName(System.DateTime,int,int,System.Globalization.DateTimeFormatInfo):System.String
call [rax]System.DateTimeFormat:FormatHebrewMonthName(System.DateTime,int,int,System.Globalization.DateTimeFormatInfo):System.String
test rax, rax
- je SHORT G_M51644_IG127
- lea rcx, bword ptr [rax+0x0C]
- mov eax, dword ptr [rax+0x08]
- jmp SHORT G_M51644_IG128
- ;; size=46 bbWeight=2 PerfScore 27.50
-G_M51644_IG127:
+ jne SHORT G_M51644_IG127
xor rcx, rcx
- xor eax, eax
- ;; size=4 bbWeight=2 PerfScore 1.00
+ xor r8d, r8d
+ mov rax, rcx
+ mov ecx, r8d
+ jmp SHORT G_M51644_IG128
+ ;; size=50 bbWeight=2 PerfScore 24.50
+G_M51644_IG127:
+ lea rcx, bword ptr [rax+0x0C]
+ mov r8d, dword ptr [rax+0x08]
+ mov rax, rcx
+ mov ecx, r8d
+ ;; size=14 bbWeight=2 PerfScore 6.00
G_M51644_IG128:
mov rsi, 0xD1FFAB1E ; const ptr
mov r8, gword ptr [rsi]
mov gword ptr [rbp-0x118], r8
- mov bword ptr [rbp-0x148], rcx
- mov rsi, rcx
- mov dword ptr [rbp-0x80], eax
- mov edx, eax
+ mov bword ptr [rbp-0x148], rax
+ mov rsi, rax
+ mov dword ptr [rbp-0x80], ecx
+ mov edx, ecx
mov rdi, r8
mov r8, 0xD1FFAB1E ; code for System.Text.UTF8Encoding:GetByteCount(System.ReadOnlySpan`1[ushort]):int:this
call [r8]System.Text.UTF8Encoding:GetByteCount(System.ReadOnlySpan`1[ushort]):int:this
mov ecx, dword ptr [rbx+0x08]
mov rdx, bword ptr [rbx+0x10]
mov edi, dword ptr [rbx+0x18]
mov esi, ecx
mov r8d, eax
add rsi, r8
cmp rsi, rdi
jbe SHORT G_M51644_IG129
mov rdi, rbx
mov esi, eax
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.ValueListBuilder`1[ubyte]:AppendSpanWithGrow(int):System.Span`1[ubyte]:this
call [rax]System.Collections.Generic.ValueListBuilder`1[ubyte]:AppendSpanWithGrow(int):System.Span`1[ubyte]:this
jmp SHORT G_M51644_IG130
;; size=93 bbWeight=2 PerfScore 46.00
G_M51644_IG129:
lea r8d, [rcx+rax]
mov dword ptr [rbx+0x08], r8d
mov ecx, ecx
add rcx, rdx
mov edx, eax
mov rax, rcx
;; size=18 bbWeight=2 PerfScore 5.00
G_M51644_IG130:
mov rcx, rax
mov r8d, edx
mov rsi, bword ptr [rbp-0x148]
mov edx, dword ptr [rbp-0x80]
mov rdi, gword ptr [rbp-0x118]
mov rax, 0xD1FFAB1E ; code for System.Text.UTF8Encoding:GetBytes(System.ReadOnlySpan`1[ushort],System.Span`1[ubyte]):int:this
call [rax]System.Text.UTF8Encoding:GetBytes(System.ReadOnlySpan`1[ushort],System.Span`1[ubyte]):int:this
jmp G_M51644_IG21
;; size=40 bbWeight=2 PerfScore 17.50
G_M51644_IG131:
mov eax, dword ptr [rbp-0x4C]
mov ecx, dword ptr [rbp-0x44]
cmp dword ptr [rbp-0x34], 0
jne SHORT G_M51644_IG132
mov rdi, rbx
mov esi, eax
mov dword ptr [rbp-0x44], ecx
mov edx, ecx
mov rax, 0xD1FFAB1E ; code for System.DateTimeFormat:FormatDigits[ubyte](byref,int,int)
call [rax]System.DateTimeFormat:FormatDigits[ubyte](byref,int,int)
jmp G_M51644_IG21
;; size=39 bbWeight=2 PerfScore 24.00
G_M51644_IG132:
mov dword ptr [rbp-0x44], ecx
mov rdi, rbx
mov esi, eax
mov rax, 0xD1FFAB1E ; code for System.Globalization.HebrewNumber:Append[ubyte](byref,int)
call [rax]System.Globalization.HebrewNumber:Append[ubyte](byref,int)
jmp G_M51644_IG21
;; size=25 bbWeight=2 PerfScore 13.50
G_M51644_IG133:
cmp r8d, 92
jne G_M51644_IG166
mov edx, dword ptr [rbp-0x40]
lea edi, [rdx+0x01]
cmp edi, r15d
jae SHORT G_M51644_IG134
mov dword ptr [rbp-0x40], edx
lea edi, [rdx+0x01]
movzx rdi, word ptr [r14+2*rdi]
mov edx, dword ptr [rbp-0x40]
jmp SHORT G_M51644_IG135
;; size=37 bbWeight=2 PerfScore 21.00
G_M51644_IG134:
mov edi, -1
;; size=5 bbWeight=2 PerfScore 0.50
G_M51644_IG135:
test edi, edi
jl G_M51644_IG176
movzx rsi, dil
mov r8d, dword ptr [rbx+0x08]
mov r9, bword ptr [rbx+0x10]
mov r10d, dword ptr [rbx+0x18]
cmp r8d, r10d
jb SHORT G_M51644_IG136
mov dword ptr [rbp-0x40], edx
mov rdi, rbx
mov r8, 0xD1FFAB1E ; code for System.Collections.Generic.ValueListBuilder`1[ubyte]:AddWithResize(ubyte):this
call [r8]System.Collections.Generic.ValueListBuilder`1[ubyte]:AddWithResize(ubyte):this
jmp G_M51644_IG175
;; size=53 bbWeight=2 PerfScore 30.50
G_M51644_IG136:
cmp r8d, r10d
jae G_M51644_IG181
mov edi, r8d
mov byte ptr [r9+rdi], sil
inc r8d
mov dword ptr [rbx+0x08], r8d
mov dword ptr [rbp-0x40], edx
jmp G_M51644_IG175
;; size=31 bbWeight=2 PerfScore 13.50
G_M51644_IG137:
cmp r8d, 47
jle G_M51644_IG160
cmp r8d, 70
jle G_M51644_IG144
cmp r8d, 72
jne SHORT G_M51644_IG143
mov edx, dword ptr [rbp-0x40]
lea edi, [rdx+0x01]
jmp SHORT G_M51644_IG139
;; size=34 bbWeight=2 PerfScore 14.50
G_M51644_IG138:
inc edi
;; size=2 bbWeight=8 PerfScore 2.00
G_M51644_IG139:
cmp edi, r15d
jae SHORT G_M51644_IG140
movzx rsi, word ptr [r14+2*rdi]
cmp esi, r8d
je SHORT G_M51644_IG138
;; size=15 bbWeight=16 PerfScore 72.00
G_M51644_IG140:
mov dword ptr [rbp-0x40], edx
sub edi, edx
mov dword ptr [rbp-0x44], edi
lea rdi, [rbp-0x30]
mov r8, 0xD1FFAB1E ; code for System.DateTime:get_Hour():int:this
call [r8]System.DateTime:get_Hour():int:this
mov esi, eax
mov eax, dword ptr [rbp-0x44]
cmp eax, 2
jg SHORT G_M51644_IG141
mov dword ptr [rbp-0x44], eax
mov edx, eax
jmp SHORT G_M51644_IG142
- align [10 bytes for IG149]
- ;; size=52 bbWeight=2 PerfScore 23.50
+ align [0 bytes for IG149]
+ ;; size=42 bbWeight=2 PerfScore 23.50
G_M51644_IG141:
mov edx, 2
mov dword ptr [rbp-0x44], eax
;; size=8 bbWeight=2 PerfScore 2.50
G_M51644_IG142:
mov rdi, rbx
mov rcx, 0xD1FFAB1E ; code for System.DateTimeFormat:FormatDigits[ubyte](byref,int,int)
call [rcx]System.DateTimeFormat:FormatDigits[ubyte](byref,int,int)
jmp G_M51644_IG22
;; size=20 bbWeight=2 PerfScore 11.00
G_M51644_IG143:
cmp r8d, 75
jne G_M51644_IG166
mov dword ptr [rbp-0x44], 1
mov rdi, qword ptr [rbp-0x30]
mov rsi, r12
mov rdx, rbx
mov r8, 0xD1FFAB1E ; code for System.DateTimeFormat:FormatCustomizedRoundripTimeZone[ubyte](System.DateTime,System.TimeSpan,byref)
call [r8]System.DateTimeFormat:FormatCustomizedRoundripTimeZone[ubyte](System.DateTime,System.TimeSpan,byref)
jmp G_M51644_IG22
;; size=45 bbWeight=2 PerfScore 18.00
G_M51644_IG144:
cmp r8d, 58
jne SHORT G_M51644_IG147
mov rdi, r13
mov rsi, 0xD1FFAB1E ; code for System.Globalization.DateTimeFormatInfo:TimeSeparatorTChar[ubyte]():System.ReadOnlySpan`1[ubyte]:this
call [rsi]System.Globalization.DateTimeFormatInfo:TimeSeparatorTChar[ubyte]():System.ReadOnlySpan`1[ubyte]:this
mov ecx, dword ptr [rbx+0x08]
mov r8, bword ptr [rbx+0x10]
mov r9d, dword ptr [rbx+0x18]
cmp edx, 1
jne SHORT G_M51644_IG145
cmp ecx, r9d
jb SHORT G_M51644_IG146
;; size=42 bbWeight=2 PerfScore 26.50
G_M51644_IG145:
mov rsi, rax
mov rdi, rbx
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.ValueListBuilder`1[ubyte]:AppendMultiChar(System.ReadOnlySpan`1[ubyte]):this
call [rax]System.Collections.Generic.ValueListBuilder`1[ubyte]:AppendMultiChar(System.ReadOnlySpan`1[ubyte]):this
jmp G_M51644_IG171
;; size=23 bbWeight=2 PerfScore 11.50
G_M51644_IG146:
cmp ecx, r9d
jae G_M51644_IG181
mov edx, ecx
movzx rax, byte ptr [rax]
mov byte ptr [r8+rdx], al
inc ecx
mov dword ptr [rbx+0x08], ecx
jmp G_M51644_IG171
;; size=28 bbWeight=2 PerfScore 15.50
G_M51644_IG147:
cmp r8d, 70
jne G_M51644_IG166
;; size=10 bbWeight=2 PerfScore 2.50
G_M51644_IG148:
mov edx, dword ptr [rbp-0x40]
lea r9d, [rdx+0x01]
jmp SHORT G_M51644_IG150
;; size=9 bbWeight=2 PerfScore 7.00
G_M51644_IG149:
inc r9d
;; size=3 bbWeight=8 PerfScore 2.00
G_M51644_IG150:
cmp r9d, r15d
jae SHORT G_M51644_IG151
movzx rdi, word ptr [r14+2*r9]
cmp edi, r8d
je SHORT G_M51644_IG149
;; size=15 bbWeight=16 PerfScore 72.00
G_M51644_IG151:
mov dword ptr [rbp-0x40], edx
sub r9d, edx
cmp r9d, 7
jg G_M51644_IG177
mov rsi, 0xD1FFAB1E
and rsi, qword ptr [rbp-0x30]
mov rdi, 0xD1FFAB1E
mov rax, rdi
imul rdx:rax, rsi
add rdx, rsi
mov rax, rdx
shr rax, 63
sar rdx, 23
add rax, rdx
imul rax, rax, 0xD1FFAB1E
sub rsi, rax
mov eax, r9d
neg eax
add eax, 7
cmp eax, 8
jae G_M51644_IG181
mov edi, eax
mov r10, 0xD1FFAB1E ; static handle
mov eax, esi
cdq
idiv edx:eax, dword ptr [r10+4*rdi]
mov esi, eax
cmp r8d, 102
je G_M51644_IG157
mov edi, r9d
mov dword ptr [rbp-0x44], r9d
test r9d, r9d
jle SHORT G_M51644_IG153
align [0 bytes for IG152]
;; size=133 bbWeight=2 PerfScore 89.00
G_M51644_IG152:
mov edx, 0xD1FFAB1E
mov eax, edx
imul edx:eax, esi
mov eax, edx
shr eax, 31
sar edx, 2
add edx, eax
lea eax, [rdx+4*rdx]
add eax, eax
mov r8d, esi
sub r8d, eax
jne SHORT G_M51644_IG153
mov esi, edx
dec edi
test edi, edi
jg SHORT G_M51644_IG152
;; size=40 bbWeight=16 PerfScore 144.00
G_M51644_IG153:
test edi, edi
jg SHORT G_M51644_IG154
cmp dword ptr [rbx+0x08], 0
jle G_M51644_IG22
mov edi, dword ptr [rbx+0x08]
dec edi
mov edx, edi
lea rsi, bword ptr [rbx+0x10]
cmp edx, dword ptr [rsi+0x08]
jae G_M51644_IG181
mov rsi, bword ptr [rsi]
cmp byte ptr [rsi+rdx], 46
jne G_M51644_IG22
mov dword ptr [rbx+0x08], edi
jmp G_M51644_IG22
;; size=55 bbWeight=2 PerfScore 42.50
G_M51644_IG154:
lea edx, [rdi-0x01]
mov rax, 0xD1FFAB1E ; const ptr
mov rax, gword ptr [rax]
cmp edx, 7
jae G_M51644_IG181
lea edx, [rdi-0x01]
mov rdx, gword ptr [rax+8*rdx+0x10]
test rdx, rdx
- je SHORT G_M51644_IG155
+ jne SHORT G_M51644_IG155
+ xor rdx, rdx
+ xor edi, edi
+ mov eax, edi
+ mov rdi, rdx
+ jmp SHORT G_M51644_IG156
+ ;; size=49 bbWeight=2 PerfScore 21.50
+G_M51644_IG155:
lea rdi, bword ptr [rdx+0x0C]
mov edx, dword ptr [rdx+0x08]
mov eax, edx
- jmp SHORT G_M51644_IG156
- ;; size=49 bbWeight=2 PerfScore 25.00
-G_M51644_IG155:
- xor rdi, rdi
- xor eax, eax
- ;; size=4 bbWeight=2 PerfScore 1.00
+ ;; size=9 bbWeight=2 PerfScore 5.50
G_M51644_IG156:
mov rdx, rdi
mov ecx, eax
mov rdi, rbx
mov rax, 0xD1FFAB1E ; code for System.DateTimeFormat:FormatFraction[ubyte](byref,int,System.ReadOnlySpan`1[ushort])
call [rax]System.DateTimeFormat:FormatFraction[ubyte](byref,int,System.ReadOnlySpan`1[ushort])
jmp G_M51644_IG22
;; size=25 bbWeight=2 PerfScore 12.00
G_M51644_IG157:
lea edx, [r9-0x01]
mov rdi, 0xD1FFAB1E ; const ptr
mov rax, gword ptr [rdi]
cmp edx, 7
jae G_M51644_IG181
mov dword ptr [rbp-0x44], r9d
lea edx, [r9-0x01]
mov rdx, gword ptr [rax+8*rdx+0x10]
test rdx, rdx
- je SHORT G_M51644_IG158
+ jne SHORT G_M51644_IG158
+ xor rdx, rdx
+ xor edi, edi
+ mov eax, edi
+ mov rdi, rdx
+ jmp SHORT G_M51644_IG159
+ ;; size=55 bbWeight=2 PerfScore 23.50
+G_M51644_IG158:
lea rdi, bword ptr [rdx+0x0C]
mov edx, dword ptr [rdx+0x08]
mov eax, edx
- jmp SHORT G_M51644_IG159
- ;; size=55 bbWeight=2 PerfScore 27.00
-G_M51644_IG158:
- xor rdi, rdi
- xor eax, eax
- ;; size=4 bbWeight=2 PerfScore 1.00
+ ;; size=9 bbWeight=2 PerfScore 5.50
G_M51644_IG159:
mov rdx, rdi
mov ecx, eax
mov rdi, rbx
mov rax, 0xD1FFAB1E ; code for System.DateTimeFormat:FormatFraction[ubyte](byref,int,System.ReadOnlySpan`1[ushort])
call [rax]System.DateTimeFormat:FormatFraction[ubyte](byref,int,System.ReadOnlySpan`1[ushort])
jmp G_M51644_IG22
;; size=25 bbWeight=2 PerfScore 12.00
G_M51644_IG160:
cmp r8d, 37
jle SHORT G_M51644_IG163
cmp r8d, 39
je SHORT G_M51644_IG164
cmp r8d, 47
jne G_M51644_IG166
mov rdi, r13
mov rsi, 0xD1FFAB1E ; code for System.Globalization.DateTimeFormatInfo:DateSeparatorTChar[ubyte]():System.ReadOnlySpan`1[ubyte]:this
call [rsi]System.Globalization.DateTimeFormatInfo:DateSeparatorTChar[ubyte]():System.ReadOnlySpan`1[ubyte]:this
mov ecx, dword ptr [rbx+0x08]
mov r8, bword ptr [rbx+0x10]
mov r9d, dword ptr [rbx+0x18]
cmp edx, 1
jne SHORT G_M51644_IG161
cmp ecx, r9d
jb SHORT G_M51644_IG162
;; size=58 bbWeight=2 PerfScore 31.50
G_M51644_IG161:
mov rsi, rax
mov rdi, rbx
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.ValueListBuilder`1[ubyte]:AppendMultiChar(System.ReadOnlySpan`1[ubyte]):this
call [rax]System.Collections.Generic.ValueListBuilder`1[ubyte]:AppendMultiChar(System.ReadOnlySpan`1[ubyte]):this
jmp G_M51644_IG171
;; size=23 bbWeight=2 PerfScore 11.50
G_M51644_IG162:
cmp ecx, r9d
jae G_M51644_IG181
mov edi, ecx
movzx rsi, byte ptr [rax]
mov byte ptr [r8+rdi], sil
inc ecx
mov dword ptr [rbx+0x08], ecx
jmp G_M51644_IG171
;; size=29 bbWeight=2 PerfScore 15.50
G_M51644_IG163:
cmp r8d, 34
jne SHORT G_M51644_IG165
;; size=6 bbWeight=2 PerfScore 2.50
G_M51644_IG164:
mov rdi, r14
mov esi, r15d
mov edx, dword ptr [rbp-0x40]
mov rcx, rbx
mov r8, 0xD1FFAB1E ; code for System.DateTimeFormat:ParseQuoteString[ubyte](System.ReadOnlySpan`1[ushort],int,byref):int
call [r8]System.DateTimeFormat:ParseQuoteString[ubyte](System.ReadOnlySpan`1[ushort],int,byref):int
mov dword ptr [rbp-0x44], eax
jmp G_M51644_IG22
;; size=33 bbWeight=4 PerfScore 32.00
G_M51644_IG165:
cmp r8d, 37
je G_M51644_IG172
;; size=10 bbWeight=2 PerfScore 2.50
G_M51644_IG166:
cmp r8d, 127
jle G_M51644_IG169
mov esi, r8d
lea edi, [rsi-0xD800]
cmp edi, 0x7FF
jbe G_M51644_IG179
mov dword ptr [rbp-0x90], esi
mov edi, esi
mov r8, 0xD1FFAB1E ; code for System.Text.UnicodeUtility:GetUtf8SequenceLength(uint):int
call [r8]System.Text.UnicodeUtility:GetUtf8SequenceLength(uint):int
mov ecx, dword ptr [rbx+0x08]
mov rdx, bword ptr [rbx+0x10]
mov edi, dword ptr [rbx+0x18]
mov esi, ecx
mov r8d, eax
add rsi, r8
cmp rsi, rdi
jbe SHORT G_M51644_IG167
mov rdi, rbx
mov esi, eax
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.ValueListBuilder`1[ubyte]:AppendSpanWithGrow(int):System.Span`1[ubyte]:this
call [rax]System.Collections.Generic.ValueListBuilder`1[ubyte]:AppendSpanWithGrow(int):System.Span`1[ubyte]:this
mov rsi, rax
jmp SHORT G_M51644_IG168
;; size=97 bbWeight=2 PerfScore 43.50
G_M51644_IG167:
lea esi, [rcx+rax]
mov dword ptr [rbx+0x08], esi
mov esi, ecx
add rsi, rdx
mov edx, eax
;; size=13 bbWeight=2 PerfScore 4.50
G_M51644_IG168:
lea rcx, [rbp-0x70]
mov edi, dword ptr [rbp-0x90]
mov rax, 0xD1FFAB1E ; code for System.Text.Rune:TryEncodeToUtf8(System.Text.Rune,System.Span`1[ubyte],byref):ubyte
call [rax]System.Text.Rune:TryEncodeToUtf8(System.Text.Rune,System.Span`1[ubyte],byref):ubyte
test eax, eax
jne SHORT G_M51644_IG171
jmp G_M51644_IG178
;; size=31 bbWeight=2 PerfScore 16.00
G_M51644_IG169:
movzx rsi, r8b
mov r8d, dword ptr [rbx+0x08]
mov r9, bword ptr [rbx+0x10]
mov r10d, dword ptr [rbx+0x18]
cmp r8d, r10d
jb SHORT G_M51644_IG170
mov rdi, rbx
mov r8, 0xD1FFAB1E ; code for System.Collections.Generic.ValueListBuilder`1[ubyte]:AddWithResize(ubyte):this
call [r8]System.Collections.Generic.ValueListBuilder`1[ubyte]:AddWithResize(ubyte):this
jmp SHORT G_M51644_IG171
;; size=39 bbWeight=2 PerfScore 26.00
G_M51644_IG170:
cmp r8d, r10d
jae G_M51644_IG181
mov edi, r8d
mov byte ptr [r9+rdi], sil
inc r8d
mov dword ptr [rbx+0x08], r8d
;; size=23 bbWeight=2 PerfScore 7.50
G_M51644_IG171:
mov r10d, 1
mov dword ptr [rbp-0x44], r10d
jmp G_M51644_IG22
;; size=15 bbWeight=4 PerfScore 13.00
G_M51644_IG172:
mov edx, dword ptr [rbp-0x40]
lea esi, [rdx+0x01]
cmp esi, r15d
jae SHORT G_M51644_IG173
mov dword ptr [rbp-0x40], edx
lea esi, [rdx+0x01]
movzx rsi, word ptr [r14+2*rsi]
mov edx, dword ptr [rbp-0x40]
jmp SHORT G_M51644_IG174
;; size=27 bbWeight=2 PerfScore 18.50
G_M51644_IG173:
mov esi, -1
;; size=5 bbWeight=2 PerfScore 0.50
G_M51644_IG174:
test esi, esi
jl G_M51644_IG180
cmp esi, 37
mov dword ptr [rbp-0x40], edx
je G_M51644_IG180
movzx rsi, si
mov dword ptr [rbp-0x54], esi
mov rdi, qword ptr [rbp-0x30]
lea rsi, bword ptr [rbp-0x54]
mov edx, 1
mov rcx, r13
mov r8, r12
mov r9, rbx
mov r10, 0xD1FFAB1E ; code for System.DateTimeFormat:FormatCustomized[ubyte](System.DateTime,System.ReadOnlySpan`1[ushort],System.Globalization.DateTimeFormatInfo,System.TimeSpan,byref)
call [r10]System.DateTimeFormat:FormatCustomized[ubyte](System.DateTime,System.ReadOnlySpan`1[ushort],System.Globalization.DateTimeFormatInfo,System.TimeSpan,byref)
;; size=61 bbWeight=2 PerfScore 21.00
G_M51644_IG175:
mov r10d, 2
mov dword ptr [rbp-0x44], r10d
jmp G_M51644_IG22
;; size=15 bbWeight=4 PerfScore 13.00
G_M51644_IG176:
mov rdi, 0xD1FFAB1E ; System.FormatException
call CORINFO_HELP_NEWSFAST
mov rbx, rax
mov rax, 0xD1FFAB1E ; code for System.SR:get_Format_InvalidString():System.String
call [rax]System.SR:get_Format_InvalidString():System.String
mov rsi, rax
mov rdi, rbx
mov rax, 0xD1FFAB1E ; code for System.FormatException:.ctor(System.String):this
call [rax]System.FormatException:.ctor(System.String):this
mov rdi, rbx
call CORINFO_HELP_THROW
int3
;; size=57 bbWeight=0 PerfScore 0.00
G_M51644_IG177:
mov rdi, 0xD1FFAB1E ; System.FormatException
call CORINFO_HELP_NEWSFAST
mov rbx, rax
mov rax, 0xD1FFAB1E ; code for System.SR:get_Format_InvalidString():System.String
call [rax]System.SR:get_Format_InvalidString():System.String
mov rsi, rax
mov rdi, rbx
mov rax, 0xD1FFAB1E ; code for System.FormatException:.ctor(System.String):this
call [rax]System.FormatException:.ctor(System.String):this
mov rdi, rbx
call CORINFO_HELP_THROW
int3
;; size=57 bbWeight=0 PerfScore 0.00
G_M51644_IG178:
mov rax, 0xD1FFAB1E ; code for System.ThrowHelper:ThrowArgumentException_DestinationTooShort()
call [rax]System.ThrowHelper:ThrowArgumentException_DestinationTooShort()
int3
;; size=13 bbWeight=0 PerfScore 0.00
G_M51644_IG179:
mov edi, 13
mov rax, 0xD1FFAB1E ; code for System.ThrowHelper:ThrowArgumentOutOfRangeException(int)
call [rax]System.ThrowHelper:ThrowArgumentOutOfRangeException(int)
int3
;; size=18 bbWeight=0 PerfScore 0.00
G_M51644_IG180:
mov rdi, 0xD1FFAB1E ; System.FormatException
call CORINFO_HELP_NEWSFAST
mov rbx, rax
mov rax, 0xD1FFAB1E ; code for System.SR:get_Format_InvalidString():System.String
call [rax]System.SR:get_Format_InvalidString():System.String
mov rsi, rax
mov rdi, rbx
mov rax, 0xD1FFAB1E ; code for System.FormatException:.ctor(System.String):this
call [rax]System.FormatException:.ctor(System.String):this
mov rdi, rbx
call CORINFO_HELP_THROW
int3
;; size=57 bbWeight=0 PerfScore 0.00
G_M51644_IG181:
call CORINFO_HELP_RNGCHKFAIL
int3
;; size=6 bbWeight=0 PerfScore 0.00
RWD00 dd G_M51644_IG89 - G_M51644_IG02
dd G_M51644_IG166 - G_M51644_IG02
dd G_M51644_IG148 - G_M51644_IG02
dd G_M51644_IG81 - G_M51644_IG02
dd G_M51644_IG73 - G_M51644_IG02
-; Total bytes of code 5741, prolog size 44, PerfScore 5362.00, instruction count 1449, allocated bytes for code 5741 (MethodHash=c4ca3643) for method System.DateTimeFormat:FormatCustomized[ubyte](System.DateTime,System.ReadOnlySpan`1[ushort],System.Globalization.DateTimeFormatInfo,System.TimeSpan,byref) (FullOpts)
+; Total bytes of code 5783, prolog size 44, PerfScore 5382.00, instruction count 1477, allocated bytes for code 5783 (MethodHash=c4ca3643) for method System.DateTimeFormat:FormatCustomized[ubyte](System.DateTime,System.ReadOnlySpan`1[ushort],System.Globalization.DateTimeFormatInfo,System.TimeSpan,byref) (FullOpts)
; ============================================================
42 (7.49 % of base) - System.Globalization.TimeSpanParse+TimeSpanRawInfo:FullMatch(System.Globalization.TimeSpanFormat+FormatLiterals):ubyte:this
; Assembly listing for method System.Globalization.TimeSpanParse+TimeSpanRawInfo:FullMatch(System.Globalization.TimeSpanFormat+FormatLiterals):ubyte:this (FullOpts)
; Emitting BLENDED_CODE for X64 with AVX - Unix
; FullOpts code
; optimized code
; rbp based frame
; partially interruptible
; No PGO data
; 0 inlinees with PGO data; 48 single block inlinees; 18 inlinees without PGO data
; Final local variable assignments
;
; V00 this [V00,T00] ( 16, 9.50) byref -> rbx this single-def
; V01 arg1 [V01,T69] ( 1, 1 ) struct (40) [rbp+0x10] do-not-enreg[SF] ld-addr-op single-def <System.Globalization.TimeSpanFormat+FormatLiterals>
;# V02 OutArgs [V02 ] ( 1, 1 ) struct ( 0) [rsp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
;* V03 tmp1 [V03 ] ( 0, 0 ) struct (16) zero-ref "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
;* V04 tmp2 [V04 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V05 tmp3 [V05 ] ( 0, 0 ) struct (16) zero-ref "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
;* V06 tmp4 [V06 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V07 tmp5 [V07 ] ( 0, 0 ) struct (16) zero-ref "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
;* V08 tmp6 [V08 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V09 tmp7 [V09 ] ( 0, 0 ) struct (16) zero-ref "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
;* V10 tmp8 [V10 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V11 tmp9 [V11 ] ( 0, 0 ) struct (16) zero-ref "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
;* V12 tmp10 [V12 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V13 tmp11 [V13 ] ( 0, 0 ) struct (16) zero-ref "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
;* V14 tmp12 [V14 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V15 tmp13 [V15 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V16 tmp14 [V16,T02] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.String>
-;* V17 tmp15 [V17 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V18 tmp16 [V18 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V17 tmp15 [V17 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V18 tmp16 [V18 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V19 tmp17 [V19,T16] ( 2, 2 ) byref -> rax single-def "Inlining Arg"
; V20 tmp18 [V20,T22] ( 2, 2 ) int -> rsi "Inlining Arg"
; V21 tmp19 [V21,T46] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V22 tmp20 [V22 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V23 tmp21 [V23 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V24 tmp22 [V24,T47] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V25 tmp23 [V25 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V26 tmp24 [V26 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V27 tmp25 [V27 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V28 tmp26 [V28 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V29 tmp27 [V29 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
;* V30 tmp28 [V30 ] ( 0, 0 ) byref -> zero-ref single-def "impAppendStmt"
;* V31 tmp29 [V31 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V32 tmp30 [V32 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V33 tmp31 [V33 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V34 tmp32 [V34 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V35 tmp33 [V35 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V36 tmp34 [V36,T03] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.String>
-;* V37 tmp35 [V37 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V38 tmp36 [V38 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V37 tmp35 [V37 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V38 tmp36 [V38 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V39 tmp37 [V39,T17] ( 2, 2 ) byref -> rax single-def "Inlining Arg"
; V40 tmp38 [V40,T23] ( 2, 2 ) int -> rsi "Inlining Arg"
; V41 tmp39 [V41,T48] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V42 tmp40 [V42 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V43 tmp41 [V43 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V44 tmp42 [V44,T49] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V45 tmp43 [V45 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V46 tmp44 [V46 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V47 tmp45 [V47 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V48 tmp46 [V48 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V49 tmp47 [V49 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
;* V50 tmp48 [V50 ] ( 0, 0 ) byref -> zero-ref single-def "impAppendStmt"
;* V51 tmp49 [V51 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V52 tmp50 [V52 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V53 tmp51 [V53 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V54 tmp52 [V54 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V55 tmp53 [V55 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V56 tmp54 [V56,T04] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.String>
-;* V57 tmp55 [V57 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V58 tmp56 [V58 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V57 tmp55 [V57 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V58 tmp56 [V58 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V59 tmp57 [V59,T18] ( 2, 2 ) byref -> rax single-def "Inlining Arg"
; V60 tmp58 [V60,T24] ( 2, 2 ) int -> rsi "Inlining Arg"
; V61 tmp59 [V61,T50] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V62 tmp60 [V62 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V63 tmp61 [V63 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V64 tmp62 [V64,T51] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V65 tmp63 [V65 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V66 tmp64 [V66 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V67 tmp65 [V67 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V68 tmp66 [V68 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V69 tmp67 [V69 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
;* V70 tmp68 [V70 ] ( 0, 0 ) byref -> zero-ref single-def "impAppendStmt"
;* V71 tmp69 [V71 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V72 tmp70 [V72 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V73 tmp71 [V73 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V74 tmp72 [V74 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V75 tmp73 [V75 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V76 tmp74 [V76,T05] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.String>
-;* V77 tmp75 [V77 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V78 tmp76 [V78 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V77 tmp75 [V77 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V78 tmp76 [V78 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V79 tmp77 [V79,T19] ( 2, 2 ) byref -> rax single-def "Inlining Arg"
; V80 tmp78 [V80,T25] ( 2, 2 ) int -> rsi "Inlining Arg"
; V81 tmp79 [V81,T52] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V82 tmp80 [V82 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V83 tmp81 [V83 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V84 tmp82 [V84,T53] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V85 tmp83 [V85 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V86 tmp84 [V86 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V87 tmp85 [V87 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V88 tmp86 [V88 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V89 tmp87 [V89 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
;* V90 tmp88 [V90 ] ( 0, 0 ) byref -> zero-ref single-def "impAppendStmt"
;* V91 tmp89 [V91 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V92 tmp90 [V92 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V93 tmp91 [V93 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V94 tmp92 [V94 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V95 tmp93 [V95 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V96 tmp94 [V96,T06] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.String>
-;* V97 tmp95 [V97 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V98 tmp96 [V98 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V97 tmp95 [V97 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V98 tmp96 [V98 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V99 tmp97 [V99,T20] ( 2, 2 ) byref -> rax single-def "Inlining Arg"
; V100 tmp98 [V100,T26] ( 2, 2 ) int -> rsi "Inlining Arg"
; V101 tmp99 [V101,T54] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V102 tmp100 [V102 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V103 tmp101 [V103 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V104 tmp102 [V104,T55] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V105 tmp103 [V105 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V106 tmp104 [V106 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V107 tmp105 [V107 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V108 tmp106 [V108 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V109 tmp107 [V109 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
;* V110 tmp108 [V110 ] ( 0, 0 ) byref -> zero-ref single-def "impAppendStmt"
;* V111 tmp109 [V111 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V112 tmp110 [V112 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V113 tmp111 [V113 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V114 tmp112 [V114 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V115 tmp113 [V115 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V116 tmp114 [V116,T07] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.String>
-;* V117 tmp115 [V117 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V118 tmp116 [V118 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V117 tmp115 [V117 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V118 tmp116 [V118 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V119 tmp117 [V119,T21] ( 2, 2 ) byref -> rax single-def "Inlining Arg"
; V120 tmp118 [V120,T27] ( 2, 2 ) int -> rsi "Inlining Arg"
; V121 tmp119 [V121,T15] ( 4, 2 ) ubyte -> rax "Inline return value spill temp"
;* V122 tmp120 [V122 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V123 tmp121 [V123 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V124 tmp122 [V124,T56] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V125 tmp123 [V125 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V126 tmp124 [V126 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V127 tmp125 [V127 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V128 tmp126 [V128 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V129 tmp127 [V129 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
;* V130 tmp128 [V130 ] ( 0, 0 ) byref -> zero-ref single-def "impAppendStmt"
;* V131 tmp129 [V131 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V132 tmp130 [V132 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V133 tmp131 [V133 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V134 tmp132 [V134 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V135 tmp133 [V135,T34] ( 2, 1 ) byref -> rdi single-def "field V03._reference (fldOffset=0x0)" P-INDEP
; V136 tmp134 [V136,T57] ( 2, 1 ) int -> rdx "field V03._length (fldOffset=0x8)" P-INDEP
;* V137 tmp135 [V137 ] ( 0, 0 ) byref -> zero-ref single-def "field V04._reference (fldOffset=0x0)" P-INDEP
;* V138 tmp136 [V138 ] ( 0, 0 ) int -> zero-ref "field V04._length (fldOffset=0x8)" P-INDEP
; V139 tmp137 [V139,T35] ( 2, 1 ) byref -> rdi single-def "field V05._reference (fldOffset=0x0)" P-INDEP
; V140 tmp138 [V140,T58] ( 2, 1 ) int -> rdx "field V05._length (fldOffset=0x8)" P-INDEP
;* V141 tmp139 [V141 ] ( 0, 0 ) byref -> zero-ref single-def "field V06._reference (fldOffset=0x0)" P-INDEP
;* V142 tmp140 [V142 ] ( 0, 0 ) int -> zero-ref "field V06._length (fldOffset=0x8)" P-INDEP
; V143 tmp141 [V143,T36] ( 2, 1 ) byref -> rdi single-def "field V07._reference (fldOffset=0x0)" P-INDEP
; V144 tmp142 [V144,T59] ( 2, 1 ) int -> rdx "field V07._length (fldOffset=0x8)" P-INDEP
;* V145 tmp143 [V145 ] ( 0, 0 ) byref -> zero-ref single-def "field V08._reference (fldOffset=0x0)" P-INDEP
;* V146 tmp144 [V146 ] ( 0, 0 ) int -> zero-ref "field V08._length (fldOffset=0x8)" P-INDEP
; V147 tmp145 [V147,T37] ( 2, 1 ) byref -> rdi single-def "field V09._reference (fldOffset=0x0)" P-INDEP
; V148 tmp146 [V148,T60] ( 2, 1 ) int -> rdx "field V09._length (fldOffset=0x8)" P-INDEP
;* V149 tmp147 [V149 ] ( 0, 0 ) byref -> zero-ref single-def "field V10._reference (fldOffset=0x0)" P-INDEP
;* V150 tmp148 [V150 ] ( 0, 0 ) int -> zero-ref "field V10._length (fldOffset=0x8)" P-INDEP
; V151 tmp149 [V151,T38] ( 2, 1 ) byref -> rdi single-def "field V11._reference (fldOffset=0x0)" P-INDEP
; V152 tmp150 [V152,T61] ( 2, 1 ) int -> rdx "field V11._length (fldOffset=0x8)" P-INDEP
;* V153 tmp151 [V153 ] ( 0, 0 ) byref -> zero-ref single-def "field V12._reference (fldOffset=0x0)" P-INDEP
;* V154 tmp152 [V154 ] ( 0, 0 ) int -> zero-ref "field V12._length (fldOffset=0x8)" P-INDEP
; V155 tmp153 [V155,T39] ( 2, 1 ) byref -> rdi single-def "field V13._reference (fldOffset=0x0)" P-INDEP
; V156 tmp154 [V156,T62] ( 2, 1 ) int -> rdx "field V13._length (fldOffset=0x8)" P-INDEP
;* V157 tmp155 [V157 ] ( 0, 0 ) byref -> zero-ref single-def "field V14._reference (fldOffset=0x0)" P-INDEP
;* V158 tmp156 [V158 ] ( 0, 0 ) int -> zero-ref "field V14._length (fldOffset=0x8)" P-INDEP
-; V159 tmp157 [V159,T28] ( 3, 1.50) byref -> rax "field V15._reference (fldOffset=0x0)" P-INDEP
-; V160 tmp158 [V160,T09] ( 5, 2.50) int -> rsi "field V15._length (fldOffset=0x8)" P-INDEP
-; V161 tmp159 [V161,T40] ( 2, 1 ) byref -> rax single-def "field V17._reference (fldOffset=0x0)" P-INDEP
-; V162 tmp160 [V162,T63] ( 2, 1 ) int -> rsi "field V17._length (fldOffset=0x8)" P-INDEP
-;* V163 tmp161 [V163 ] ( 0, 0 ) byref -> zero-ref single-def "field V18._reference (fldOffset=0x0)" P-INDEP
-;* V164 tmp162 [V164 ] ( 0, 0 ) int -> zero-ref "field V18._length (fldOffset=0x8)" P-INDEP
+; V159 tmp157 [V159,T28] ( 3, 1.50) byref -> registers "field V15._reference (fldOffset=0x0)" P-INDEP
+; V160 tmp158 [V160,T09] ( 5, 2.50) int -> registers "field V15._length (fldOffset=0x8)" P-INDEP
+;* V161 tmp159 [V161 ] ( 0, 0 ) byref -> zero-ref single-def "field V17._reference (fldOffset=0x0)" P-INDEP
+;* V162 tmp160 [V162 ] ( 0, 0 ) int -> zero-ref "field V17._length (fldOffset=0x8)" P-INDEP
+; V163 tmp161 [V163,T40] ( 2, 1 ) byref -> rax single-def "field V18._reference (fldOffset=0x0)" P-INDEP
+; V164 tmp162 [V164,T63] ( 2, 1 ) int -> rsi "field V18._length (fldOffset=0x8)" P-INDEP
;* V165 tmp163 [V165 ] ( 0, 0 ) byref -> zero-ref single-def "field V22._reference (fldOffset=0x0)" P-INDEP
;* V166 tmp164 [V166 ] ( 0, 0 ) int -> zero-ref "field V22._length (fldOffset=0x8)" P-INDEP
;* V167 tmp165 [V167 ] ( 0, 0 ) byref -> zero-ref single-def "field V23._reference (fldOffset=0x0)" P-INDEP
;* V168 tmp166 [V168 ] ( 0, 0 ) int -> zero-ref "field V23._length (fldOffset=0x8)" P-INDEP
;* V169 tmp167 [V169 ] ( 0, 0 ) byref -> zero-ref single-def "field V25._reference (fldOffset=0x0)" P-INDEP
;* V170 tmp168 [V170 ] ( 0, 0 ) int -> zero-ref "field V25._length (fldOffset=0x8)" P-INDEP
;* V171 tmp169 [V171 ] ( 0, 0 ) byref -> zero-ref single-def "field V27._reference (fldOffset=0x0)" P-INDEP
;* V172 tmp170 [V172 ] ( 0, 0 ) int -> zero-ref "field V27._length (fldOffset=0x8)" P-INDEP
;* V173 tmp171 [V173 ] ( 0, 0 ) byref -> zero-ref single-def "field V31._reference (fldOffset=0x0)" P-INDEP
;* V174 tmp172 [V174 ] ( 0, 0 ) int -> zero-ref "field V31._length (fldOffset=0x8)" P-INDEP
;* V175 tmp173 [V175 ] ( 0, 0 ) byref -> zero-ref single-def "field V32._reference (fldOffset=0x0)" P-INDEP
;* V176 tmp174 [V176 ] ( 0, 0 ) int -> zero-ref "field V32._length (fldOffset=0x8)" P-INDEP
;* V177 tmp175 [V177 ] ( 0, 0 ) byref -> zero-ref "field V33._reference (fldOffset=0x0)" P-INDEP
;* V178 tmp176 [V178 ] ( 0, 0 ) int -> zero-ref "field V33._length (fldOffset=0x8)" P-INDEP
;* V179 tmp177 [V179 ] ( 0, 0 ) byref -> zero-ref "field V34._reference (fldOffset=0x0)" P-INDEP
;* V180 tmp178 [V180 ] ( 0, 0 ) int -> zero-ref "field V34._length (fldOffset=0x8)" P-INDEP
-; V181 tmp179 [V181,T29] ( 3, 1.50) byref -> rax "field V35._reference (fldOffset=0x0)" P-INDEP
-; V182 tmp180 [V182,T10] ( 5, 2.50) int -> rsi "field V35._length (fldOffset=0x8)" P-INDEP
-; V183 tmp181 [V183,T41] ( 2, 1 ) byref -> rax single-def "field V37._reference (fldOffset=0x0)" P-INDEP
-; V184 tmp182 [V184,T64] ( 2, 1 ) int -> rsi "field V37._length (fldOffset=0x8)" P-INDEP
-;* V185 tmp183 [V185 ] ( 0, 0 ) byref -> zero-ref single-def "field V38._reference (fldOffset=0x0)" P-INDEP
-;* V186 tmp184 [V186 ] ( 0, 0 ) int -> zero-ref "field V38._length (fldOffset=0x8)" P-INDEP
+; V181 tmp179 [V181,T29] ( 3, 1.50) byref -> registers "field V35._reference (fldOffset=0x0)" P-INDEP
+; V182 tmp180 [V182,T10] ( 5, 2.50) int -> registers "field V35._length (fldOffset=0x8)" P-INDEP
+;* V183 tmp181 [V183 ] ( 0, 0 ) byref -> zero-ref single-def "field V37._reference (fldOffset=0x0)" P-INDEP
+;* V184 tmp182 [V184 ] ( 0, 0 ) int -> zero-ref "field V37._length (fldOffset=0x8)" P-INDEP
+; V185 tmp183 [V185,T41] ( 2, 1 ) byref -> rax single-def "field V38._reference (fldOffset=0x0)" P-INDEP
+; V186 tmp184 [V186,T64] ( 2, 1 ) int -> rsi "field V38._length (fldOffset=0x8)" P-INDEP
;* V187 tmp185 [V187 ] ( 0, 0 ) byref -> zero-ref single-def "field V42._reference (fldOffset=0x0)" P-INDEP
;* V188 tmp186 [V188 ] ( 0, 0 ) int -> zero-ref "field V42._length (fldOffset=0x8)" P-INDEP
;* V189 tmp187 [V189 ] ( 0, 0 ) byref -> zero-ref single-def "field V43._reference (fldOffset=0x0)" P-INDEP
;* V190 tmp188 [V190 ] ( 0, 0 ) int -> zero-ref "field V43._length (fldOffset=0x8)" P-INDEP
;* V191 tmp189 [V191 ] ( 0, 0 ) byref -> zero-ref single-def "field V45._reference (fldOffset=0x0)" P-INDEP
;* V192 tmp190 [V192 ] ( 0, 0 ) int -> zero-ref "field V45._length (fldOffset=0x8)" P-INDEP
;* V193 tmp191 [V193 ] ( 0, 0 ) byref -> zero-ref single-def "field V47._reference (fldOffset=0x0)" P-INDEP
;* V194 tmp192 [V194 ] ( 0, 0 ) int -> zero-ref "field V47._length (fldOffset=0x8)" P-INDEP
;* V195 tmp193 [V195 ] ( 0, 0 ) byref -> zero-ref single-def "field V51._reference (fldOffset=0x0)" P-INDEP
;* V196 tmp194 [V196 ] ( 0, 0 ) int -> zero-ref "field V51._length (fldOffset=0x8)" P-INDEP
;* V197 tmp195 [V197 ] ( 0, 0 ) byref -> zero-ref single-def "field V52._reference (fldOffset=0x0)" P-INDEP
;* V198 tmp196 [V198 ] ( 0, 0 ) int -> zero-ref "field V52._length (fldOffset=0x8)" P-INDEP
;* V199 tmp197 [V199 ] ( 0, 0 ) byref -> zero-ref "field V53._reference (fldOffset=0x0)" P-INDEP
;* V200 tmp198 [V200 ] ( 0, 0 ) int -> zero-ref "field V53._length (fldOffset=0x8)" P-INDEP
;* V201 tmp199 [V201 ] ( 0, 0 ) byref -> zero-ref "field V54._reference (fldOffset=0x0)" P-INDEP
;* V202 tmp200 [V202 ] ( 0, 0 ) int -> zero-ref "field V54._length (fldOffset=0x8)" P-INDEP
-; V203 tmp201 [V203,T30] ( 3, 1.50) byref -> rax "field V55._reference (fldOffset=0x0)" P-INDEP
-; V204 tmp202 [V204,T11] ( 5, 2.50) int -> rsi "field V55._length (fldOffset=0x8)" P-INDEP
-; V205 tmp203 [V205,T42] ( 2, 1 ) byref -> rax single-def "field V57._reference (fldOffset=0x0)" P-INDEP
-; V206 tmp204 [V206,T65] ( 2, 1 ) int -> rsi "field V57._length (fldOffset=0x8)" P-INDEP
-;* V207 tmp205 [V207 ] ( 0, 0 ) byref -> zero-ref single-def "field V58._reference (fldOffset=0x0)" P-INDEP
-;* V208 tmp206 [V208 ] ( 0, 0 ) int -> zero-ref "field V58._length (fldOffset=0x8)" P-INDEP
+; V203 tmp201 [V203,T30] ( 3, 1.50) byref -> registers "field V55._reference (fldOffset=0x0)" P-INDEP
+; V204 tmp202 [V204,T11] ( 5, 2.50) int -> registers "field V55._length (fldOffset=0x8)" P-INDEP
+;* V205 tmp203 [V205 ] ( 0, 0 ) byref -> zero-ref single-def "field V57._reference (fldOffset=0x0)" P-INDEP
+;* V206 tmp204 [V206 ] ( 0, 0 ) int -> zero-ref "field V57._length (fldOffset=0x8)" P-INDEP
+; V207 tmp205 [V207,T42] ( 2, 1 ) byref -> rax single-def "field V58._reference (fldOffset=0x0)" P-INDEP
+; V208 tmp206 [V208,T65] ( 2, 1 ) int -> rsi "field V58._length (fldOffset=0x8)" P-INDEP
;* V209 tmp207 [V209 ] ( 0, 0 ) byref -> zero-ref single-def "field V62._reference (fldOffset=0x0)" P-INDEP
;* V210 tmp208 [V210 ] ( 0, 0 ) int -> zero-ref "field V62._length (fldOffset=0x8)" P-INDEP
;* V211 tmp209 [V211 ] ( 0, 0 ) byref -> zero-ref single-def "field V63._reference (fldOffset=0x0)" P-INDEP
;* V212 tmp210 [V212 ] ( 0, 0 ) int -> zero-ref "field V63._length (fldOffset=0x8)" P-INDEP
;* V213 tmp211 [V213 ] ( 0, 0 ) byref -> zero-ref single-def "field V65._reference (fldOffset=0x0)" P-INDEP
;* V214 tmp212 [V214 ] ( 0, 0 ) int -> zero-ref "field V65._length (fldOffset=0x8)" P-INDEP
;* V215 tmp213 [V215 ] ( 0, 0 ) byref -> zero-ref single-def "field V67._reference (fldOffset=0x0)" P-INDEP
;* V216 tmp214 [V216 ] ( 0, 0 ) int -> zero-ref "field V67._length (fldOffset=0x8)" P-INDEP
;* V217 tmp215 [V217 ] ( 0, 0 ) byref -> zero-ref single-def "field V71._reference (fldOffset=0x0)" P-INDEP
;* V218 tmp216 [V218 ] ( 0, 0 ) int -> zero-ref "field V71._length (fldOffset=0x8)" P-INDEP
;* V219 tmp217 [V219 ] ( 0, 0 ) byref -> zero-ref single-def "field V72._reference (fldOffset=0x0)" P-INDEP
;* V220 tmp218 [V220 ] ( 0, 0 ) int -> zero-ref "field V72._length (fldOffset=0x8)" P-INDEP
;* V221 tmp219 [V221 ] ( 0, 0 ) byref -> zero-ref "field V73._reference (fldOffset=0x0)" P-INDEP
;* V222 tmp220 [V222 ] ( 0, 0 ) int -> zero-ref "field V73._length (fldOffset=0x8)" P-INDEP
;* V223 tmp221 [V223 ] ( 0, 0 ) byref -> zero-ref "field V74._reference (fldOffset=0x0)" P-INDEP
;* V224 tmp222 [V224 ] ( 0, 0 ) int -> zero-ref "field V74._length (fldOffset=0x8)" P-INDEP
-; V225 tmp223 [V225,T31] ( 3, 1.50) byref -> rax "field V75._reference (fldOffset=0x0)" P-INDEP
-; V226 tmp224 [V226,T12] ( 5, 2.50) int -> rsi "field V75._length (fldOffset=0x8)" P-INDEP
-; V227 tmp225 [V227,T43] ( 2, 1 ) byref -> rax single-def "field V77._reference (fldOffset=0x0)" P-INDEP
-; V228 tmp226 [V228,T66] ( 2, 1 ) int -> rsi "field V77._length (fldOffset=0x8)" P-INDEP
-;* V229 tmp227 [V229 ] ( 0, 0 ) byref -> zero-ref single-def "field V78._reference (fldOffset=0x0)" P-INDEP
-;* V230 tmp228 [V230 ] ( 0, 0 ) int -> zero-ref "field V78._length (fldOffset=0x8)" P-INDEP
+; V225 tmp223 [V225,T31] ( 3, 1.50) byref -> registers "field V75._reference (fldOffset=0x0)" P-INDEP
+; V226 tmp224 [V226,T12] ( 5, 2.50) int -> registers "field V75._length (fldOffset=0x8)" P-INDEP
+;* V227 tmp225 [V227 ] ( 0, 0 ) byref -> zero-ref single-def "field V77._reference (fldOffset=0x0)" P-INDEP
+;* V228 tmp226 [V228 ] ( 0, 0 ) int -> zero-ref "field V77._length (fldOffset=0x8)" P-INDEP
+; V229 tmp227 [V229,T43] ( 2, 1 ) byref -> rax single-def "field V78._reference (fldOffset=0x0)" P-INDEP
+; V230 tmp228 [V230,T66] ( 2, 1 ) int -> rsi "field V78._length (fldOffset=0x8)" P-INDEP
;* V231 tmp229 [V231 ] ( 0, 0 ) byref -> zero-ref single-def "field V82._reference (fldOffset=0x0)" P-INDEP
;* V232 tmp230 [V232 ] ( 0, 0 ) int -> zero-ref "field V82._length (fldOffset=0x8)" P-INDEP
;* V233 tmp231 [V233 ] ( 0, 0 ) byref -> zero-ref single-def "field V83._reference (fldOffset=0x0)" P-INDEP
;* V234 tmp232 [V234 ] ( 0, 0 ) int -> zero-ref "field V83._length (fldOffset=0x8)" P-INDEP
;* V235 tmp233 [V235 ] ( 0, 0 ) byref -> zero-ref single-def "field V85._reference (fldOffset=0x0)" P-INDEP
;* V236 tmp234 [V236 ] ( 0, 0 ) int -> zero-ref "field V85._length (fldOffset=0x8)" P-INDEP
;* V237 tmp235 [V237 ] ( 0, 0 ) byref -> zero-ref single-def "field V87._reference (fldOffset=0x0)" P-INDEP
;* V238 tmp236 [V238 ] ( 0, 0 ) int -> zero-ref "field V87._length (fldOffset=0x8)" P-INDEP
;* V239 tmp237 [V239 ] ( 0, 0 ) byref -> zero-ref single-def "field V91._reference (fldOffset=0x0)" P-INDEP
;* V240 tmp238 [V240 ] ( 0, 0 ) int -> zero-ref "field V91._length (fldOffset=0x8)" P-INDEP
;* V241 tmp239 [V241 ] ( 0, 0 ) byref -> zero-ref single-def "field V92._reference (fldOffset=0x0)" P-INDEP
;* V242 tmp240 [V242 ] ( 0, 0 ) int -> zero-ref "field V92._length (fldOffset=0x8)" P-INDEP
;* V243 tmp241 [V243 ] ( 0, 0 ) byref -> zero-ref "field V93._reference (fldOffset=0x0)" P-INDEP
;* V244 tmp242 [V244 ] ( 0, 0 ) int -> zero-ref "field V93._length (fldOffset=0x8)" P-INDEP
;* V245 tmp243 [V245 ] ( 0, 0 ) byref -> zero-ref "field V94._reference (fldOffset=0x0)" P-INDEP
;* V246 tmp244 [V246 ] ( 0, 0 ) int -> zero-ref "field V94._length (fldOffset=0x8)" P-INDEP
-; V247 tmp245 [V247,T32] ( 3, 1.50) byref -> rax "field V95._reference (fldOffset=0x0)" P-INDEP
-; V248 tmp246 [V248,T13] ( 5, 2.50) int -> rsi "field V95._length (fldOffset=0x8)" P-INDEP
-; V249 tmp247 [V249,T44] ( 2, 1 ) byref -> rax single-def "field V97._reference (fldOffset=0x0)" P-INDEP
-; V250 tmp248 [V250,T67] ( 2, 1 ) int -> rsi "field V97._length (fldOffset=0x8)" P-INDEP
-;* V251 tmp249 [V251 ] ( 0, 0 ) byref -> zero-ref single-def "field V98._reference (fldOffset=0x0)" P-INDEP
-;* V252 tmp250 [V252 ] ( 0, 0 ) int -> zero-ref "field V98._length (fldOffset=0x8)" P-INDEP
+; V247 tmp245 [V247,T32] ( 3, 1.50) byref -> registers "field V95._reference (fldOffset=0x0)" P-INDEP
+; V248 tmp246 [V248,T13] ( 5, 2.50) int -> registers "field V95._length (fldOffset=0x8)" P-INDEP
+;* V249 tmp247 [V249 ] ( 0, 0 ) byref -> zero-ref single-def "field V97._reference (fldOffset=0x0)" P-INDEP
+;* V250 tmp248 [V250 ] ( 0, 0 ) int -> zero-ref "field V97._length (fldOffset=0x8)" P-INDEP
+; V251 tmp249 [V251,T44] ( 2, 1 ) byref -> rax single-def "field V98._reference (fldOffset=0x0)" P-INDEP
+; V252 tmp250 [V252,T67] ( 2, 1 ) int -> rsi "field V98._length (fldOffset=0x8)" P-INDEP
;* V253 tmp251 [V253 ] ( 0, 0 ) byref -> zero-ref single-def "field V102._reference (fldOffset=0x0)" P-INDEP
;* V254 tmp252 [V254 ] ( 0, 0 ) int -> zero-ref "field V102._length (fldOffset=0x8)" P-INDEP
;* V255 tmp253 [V255 ] ( 0, 0 ) byref -> zero-ref single-def "field V103._reference (fldOffset=0x0)" P-INDEP
;* V256 tmp254 [V256 ] ( 0, 0 ) int -> zero-ref "field V103._length (fldOffset=0x8)" P-INDEP
;* V257 tmp255 [V257 ] ( 0, 0 ) byref -> zero-ref single-def "field V105._reference (fldOffset=0x0)" P-INDEP
;* V258 tmp256 [V258 ] ( 0, 0 ) int -> zero-ref "field V105._length (fldOffset=0x8)" P-INDEP
;* V259 tmp257 [V259 ] ( 0, 0 ) byref -> zero-ref single-def "field V107._reference (fldOffset=0x0)" P-INDEP
;* V260 tmp258 [V260 ] ( 0, 0 ) int -> zero-ref "field V107._length (fldOffset=0x8)" P-INDEP
;* V261 tmp259 [V261 ] ( 0, 0 ) byref -> zero-ref single-def "field V111._reference (fldOffset=0x0)" P-INDEP
;* V262 tmp260 [V262 ] ( 0, 0 ) int -> zero-ref "field V111._length (fldOffset=0x8)" P-INDEP
;* V263 tmp261 [V263 ] ( 0, 0 ) byref -> zero-ref single-def "field V112._reference (fldOffset=0x0)" P-INDEP
;* V264 tmp262 [V264 ] ( 0, 0 ) int -> zero-ref "field V112._length (fldOffset=0x8)" P-INDEP
;* V265 tmp263 [V265 ] ( 0, 0 ) byref -> zero-ref "field V113._reference (fldOffset=0x0)" P-INDEP
;* V266 tmp264 [V266 ] ( 0, 0 ) int -> zero-ref "field V113._length (fldOffset=0x8)" P-INDEP
;* V267 tmp265 [V267 ] ( 0, 0 ) byref -> zero-ref "field V114._reference (fldOffset=0x0)" P-INDEP
;* V268 tmp266 [V268 ] ( 0, 0 ) int -> zero-ref "field V114._length (fldOffset=0x8)" P-INDEP
-; V269 tmp267 [V269,T33] ( 3, 1.50) byref -> rax "field V115._reference (fldOffset=0x0)" P-INDEP
-; V270 tmp268 [V270,T14] ( 5, 2.50) int -> rsi "field V115._length (fldOffset=0x8)" P-INDEP
-; V271 tmp269 [V271,T45] ( 2, 1 ) byref -> rax single-def "field V117._reference (fldOffset=0x0)" P-INDEP
-; V272 tmp270 [V272,T68] ( 2, 1 ) int -> rsi "field V117._length (fldOffset=0x8)" P-INDEP
-;* V273 tmp271 [V273 ] ( 0, 0 ) byref -> zero-ref single-def "field V118._reference (fldOffset=0x0)" P-INDEP
-;* V274 tmp272 [V274 ] ( 0, 0 ) int -> zero-ref "field V118._length (fldOffset=0x8)" P-INDEP
+; V269 tmp267 [V269,T33] ( 3, 1.50) byref -> registers "field V115._reference (fldOffset=0x0)" P-INDEP
+; V270 tmp268 [V270,T14] ( 5, 2.50) int -> registers "field V115._length (fldOffset=0x8)" P-INDEP
+;* V271 tmp269 [V271 ] ( 0, 0 ) byref -> zero-ref single-def "field V117._reference (fldOffset=0x0)" P-INDEP
+;* V272 tmp270 [V272 ] ( 0, 0 ) int -> zero-ref "field V117._length (fldOffset=0x8)" P-INDEP
+; V273 tmp271 [V273,T45] ( 2, 1 ) byref -> rax single-def "field V118._reference (fldOffset=0x0)" P-INDEP
+; V274 tmp272 [V274,T68] ( 2, 1 ) int -> rsi "field V118._length (fldOffset=0x8)" P-INDEP
;* V275 tmp273 [V275 ] ( 0, 0 ) byref -> zero-ref single-def "field V122._reference (fldOffset=0x0)" P-INDEP
;* V276 tmp274 [V276 ] ( 0, 0 ) int -> zero-ref "field V122._length (fldOffset=0x8)" P-INDEP
;* V277 tmp275 [V277 ] ( 0, 0 ) byref -> zero-ref single-def "field V123._reference (fldOffset=0x0)" P-INDEP
;* V278 tmp276 [V278 ] ( 0, 0 ) int -> zero-ref "field V123._length (fldOffset=0x8)" P-INDEP
;* V279 tmp277 [V279 ] ( 0, 0 ) byref -> zero-ref single-def "field V125._reference (fldOffset=0x0)" P-INDEP
;* V280 tmp278 [V280 ] ( 0, 0 ) int -> zero-ref "field V125._length (fldOffset=0x8)" P-INDEP
;* V281 tmp279 [V281 ] ( 0, 0 ) byref -> zero-ref single-def "field V127._reference (fldOffset=0x0)" P-INDEP
;* V282 tmp280 [V282 ] ( 0, 0 ) int -> zero-ref "field V127._length (fldOffset=0x8)" P-INDEP
;* V283 tmp281 [V283 ] ( 0, 0 ) byref -> zero-ref single-def "field V131._reference (fldOffset=0x0)" P-INDEP
;* V284 tmp282 [V284 ] ( 0, 0 ) int -> zero-ref "field V131._length (fldOffset=0x8)" P-INDEP
;* V285 tmp283 [V285 ] ( 0, 0 ) byref -> zero-ref single-def "field V132._reference (fldOffset=0x0)" P-INDEP
;* V286 tmp284 [V286 ] ( 0, 0 ) int -> zero-ref "field V132._length (fldOffset=0x8)" P-INDEP
;* V287 tmp285 [V287 ] ( 0, 0 ) byref -> zero-ref "field V133._reference (fldOffset=0x0)" P-INDEP
;* V288 tmp286 [V288 ] ( 0, 0 ) int -> zero-ref "field V133._length (fldOffset=0x8)" P-INDEP
;* V289 tmp287 [V289 ] ( 0, 0 ) byref -> zero-ref "field V134._reference (fldOffset=0x0)" P-INDEP
;* V290 tmp288 [V290 ] ( 0, 0 ) int -> zero-ref "field V134._length (fldOffset=0x8)" P-INDEP
; V291 tmp289 [V291,T01] ( 8, 4.50) ref -> r15 single-def "V01.[008..016)"
; V292 cse0 [V292,T08] ( 7, 3.50) int -> r14 "CSE #01: moderate"
;
; Lcl frame size = 8
G_M31334_IG01:
push rbp
push r15
push r14
push rbx
push rax
lea rbp, [rsp+0x20]
mov rbx, rdi
;; size=15 bbWeight=1 PerfScore 5.75
G_M31334_IG02:
mov r15, gword ptr [rbp+0x18]
cmp dword ptr [rbx+0x14], 6
jne G_M31334_IG18
;; size=14 bbWeight=1 PerfScore 5.00
G_M31334_IG03:
cmp dword ptr [rbx+0x18], 5
jne G_M31334_IG18
mov rdi, bword ptr [rbx+0x110]
mov edx, dword ptr [rbx+0x118]
mov r14d, dword ptr [r15+0x08]
test r14d, r14d
je G_M31334_IG26
mov rsi, gword ptr [r15+0x10]
test rsi, rsi
- je SHORT G_M31334_IG04
+ jne SHORT G_M31334_IG04
+ xor rsi, rsi
+ xor eax, eax
+ mov ecx, eax
+ mov rax, rsi
+ mov esi, ecx
+ jmp SHORT G_M31334_IG05
+ ;; size=58 bbWeight=0.50 PerfScore 8.88
+G_M31334_IG04:
lea rax, bword ptr [rsi+0x0C]
mov esi, dword ptr [rsi+0x08]
- jmp SHORT G_M31334_IG05
- ;; size=54 bbWeight=0.50 PerfScore 9.50
-G_M31334_IG04:
- xor rax, rax
- xor esi, esi
- ;; size=4 bbWeight=0.50 PerfScore 0.25
+ ;; size=7 bbWeight=0.50 PerfScore 1.25
G_M31334_IG05:
cmp edx, esi
jne G_M31334_IG18
test esi, esi
je SHORT G_M31334_IG06
mov edx, esi
add rdx, rdx
mov rsi, rax
mov rax, 0xD1FFAB1E ; code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
call [rax]System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
test eax, eax
je G_M31334_IG18
;; size=40 bbWeight=0.50 PerfScore 3.88
G_M31334_IG06:
mov rdi, bword ptr [rbx+0x120]
mov edx, dword ptr [rbx+0x128]
cmp r14d, 1
jbe G_M31334_IG26
mov rsi, gword ptr [r15+0x18]
test rsi, rsi
- je SHORT G_M31334_IG07
+ jne SHORT G_M31334_IG07
+ xor rsi, rsi
+ xor eax, eax
+ mov ecx, eax
+ mov rax, rsi
+ mov esi, ecx
+ jmp SHORT G_M31334_IG08
+ ;; size=45 bbWeight=0.50 PerfScore 5.88
+G_M31334_IG07:
lea rax, bword ptr [rsi+0x0C]
mov esi, dword ptr [rsi+0x08]
- jmp SHORT G_M31334_IG08
- ;; size=41 bbWeight=0.50 PerfScore 6.50
-G_M31334_IG07:
- xor rax, rax
- xor esi, esi
- ;; size=4 bbWeight=0.50 PerfScore 0.25
+ ;; size=7 bbWeight=0.50 PerfScore 1.25
G_M31334_IG08:
cmp edx, esi
jne G_M31334_IG18
test esi, esi
je SHORT G_M31334_IG09
mov edx, esi
add rdx, rdx
mov rsi, rax
mov rax, 0xD1FFAB1E ; code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
call [rax]System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
test eax, eax
je G_M31334_IG18
;; size=40 bbWeight=0.50 PerfScore 3.88
G_M31334_IG09:
mov rdi, bword ptr [rbx+0x130]
mov edx, dword ptr [rbx+0x138]
cmp r14d, 2
jbe G_M31334_IG26
mov rsi, gword ptr [r15+0x20]
test rsi, rsi
- je SHORT G_M31334_IG10
+ jne SHORT G_M31334_IG10
+ xor rsi, rsi
+ xor eax, eax
+ mov ecx, eax
+ mov rax, rsi
+ mov esi, ecx
+ jmp SHORT G_M31334_IG11
+ ;; size=45 bbWeight=0.50 PerfScore 5.88
+G_M31334_IG10:
lea rax, bword ptr [rsi+0x0C]
mov esi, dword ptr [rsi+0x08]
- jmp SHORT G_M31334_IG11
- ;; size=41 bbWeight=0.50 PerfScore 6.50
-G_M31334_IG10:
- xor rax, rax
- xor esi, esi
- ;; size=4 bbWeight=0.50 PerfScore 0.25
+ ;; size=7 bbWeight=0.50 PerfScore 1.25
G_M31334_IG11:
cmp edx, esi
jne G_M31334_IG18
test esi, esi
je SHORT G_M31334_IG12
mov edx, esi
add rdx, rdx
mov rsi, rax
mov rax, 0xD1FFAB1E ; code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
call [rax]System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
test eax, eax
je G_M31334_IG18
;; size=40 bbWeight=0.50 PerfScore 3.88
G_M31334_IG12:
mov rdi, bword ptr [rbx+0x140]
mov edx, dword ptr [rbx+0x148]
cmp r14d, 3
jbe G_M31334_IG26
mov rsi, gword ptr [r15+0x28]
test rsi, rsi
- je SHORT G_M31334_IG13
+ jne SHORT G_M31334_IG13
+ xor rsi, rsi
+ xor eax, eax
+ mov ecx, eax
+ mov rax, rsi
+ mov esi, ecx
+ jmp SHORT G_M31334_IG14
+ ;; size=45 bbWeight=0.50 PerfScore 5.88
+G_M31334_IG13:
lea rax, bword ptr [rsi+0x0C]
mov esi, dword ptr [rsi+0x08]
- jmp SHORT G_M31334_IG14
- ;; size=41 bbWeight=0.50 PerfScore 6.50
-G_M31334_IG13:
- xor rax, rax
- xor esi, esi
- ;; size=4 bbWeight=0.50 PerfScore 0.25
+ ;; size=7 bbWeight=0.50 PerfScore 1.25
G_M31334_IG14:
cmp edx, esi
jne SHORT G_M31334_IG18
test esi, esi
je SHORT G_M31334_IG15
mov edx, esi
add rdx, rdx
mov rsi, rax
mov rax, 0xD1FFAB1E ; code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
call [rax]System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
test eax, eax
je SHORT G_M31334_IG18
;; size=32 bbWeight=0.50 PerfScore 3.88
G_M31334_IG15:
mov rdi, bword ptr [rbx+0x150]
mov edx, dword ptr [rbx+0x158]
cmp r14d, 4
jbe G_M31334_IG26
mov rsi, gword ptr [r15+0x30]
test rsi, rsi
- je SHORT G_M31334_IG16
+ jne SHORT G_M31334_IG16
+ xor rsi, rsi
+ xor eax, eax
+ mov ecx, eax
+ mov rax, rsi
+ mov esi, ecx
+ jmp SHORT G_M31334_IG17
+ ;; size=45 bbWeight=0.50 PerfScore 5.88
+G_M31334_IG16:
lea rax, bword ptr [rsi+0x0C]
mov esi, dword ptr [rsi+0x08]
- jmp SHORT G_M31334_IG17
- ;; size=41 bbWeight=0.50 PerfScore 6.50
-G_M31334_IG16:
- xor rax, rax
- xor esi, esi
- ;; size=4 bbWeight=0.50 PerfScore 0.25
+ ;; size=7 bbWeight=0.50 PerfScore 1.25
G_M31334_IG17:
cmp edx, esi
jne SHORT G_M31334_IG18
test esi, esi
je SHORT G_M31334_IG20
mov edx, esi
add rdx, rdx
mov rsi, rax
mov rax, 0xD1FFAB1E ; code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
call [rax]System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
test eax, eax
jne SHORT G_M31334_IG20
;; size=32 bbWeight=0.50 PerfScore 3.88
G_M31334_IG18:
xor eax, eax
;; size=2 bbWeight=0.50 PerfScore 0.12
G_M31334_IG19:
add rsp, 8
pop rbx
pop r14
pop r15
pop rbp
ret
;; size=11 bbWeight=0.50 PerfScore 1.62
G_M31334_IG20:
mov rdi, bword ptr [rbx+0x160]
mov edx, dword ptr [rbx+0x168]
cmp r14d, 5
jbe SHORT G_M31334_IG26
mov rsi, gword ptr [r15+0x38]
test rsi, rsi
- je SHORT G_M31334_IG21
+ jne SHORT G_M31334_IG21
+ xor rsi, rsi
+ xor eax, eax
+ mov ecx, eax
+ mov rax, rsi
+ mov esi, ecx
+ jmp SHORT G_M31334_IG22
+ ;; size=41 bbWeight=0.50 PerfScore 5.88
+G_M31334_IG21:
lea rax, bword ptr [rsi+0x0C]
mov esi, dword ptr [rsi+0x08]
- jmp SHORT G_M31334_IG22
- ;; size=37 bbWeight=0.50 PerfScore 6.50
-G_M31334_IG21:
- xor rax, rax
- xor esi, esi
- ;; size=4 bbWeight=0.50 PerfScore 0.25
+ ;; size=7 bbWeight=0.50 PerfScore 1.25
G_M31334_IG22:
cmp edx, esi
jne SHORT G_M31334_IG24
test esi, esi
je SHORT G_M31334_IG23
mov edx, esi
add rdx, rdx
mov rsi, rax
mov rax, 0xD1FFAB1E ; code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
call [rax]System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
jmp SHORT G_M31334_IG25
;; size=30 bbWeight=0.50 PerfScore 4.25
G_M31334_IG23:
mov eax, 1
jmp SHORT G_M31334_IG25
;; size=7 bbWeight=0.50 PerfScore 1.12
G_M31334_IG24:
xor eax, eax
;; size=2 bbWeight=0.50 PerfScore 0.12
G_M31334_IG25:
add rsp, 8
pop rbx
pop r14
pop r15
pop rbp
ret
;; size=11 bbWeight=0.50 PerfScore 1.62
G_M31334_IG26:
call CORINFO_HELP_RNGCHKFAIL
int3
;; size=6 bbWeight=0 PerfScore 0.00
-; Total bytes of code 561, prolog size 12, PerfScore 82.50, instruction count 168, allocated bytes for code 561 (MethodHash=553a8599) for method System.Globalization.TimeSpanParse+TimeSpanRawInfo:FullMatch(System.Globalization.TimeSpanFormat+FormatLiterals):ubyte:this (FullOpts)
+; Total bytes of code 603, prolog size 12, PerfScore 84.75, instruction count 186, allocated bytes for code 603 (MethodHash=553a8599) for method System.Globalization.TimeSpanParse+TimeSpanRawInfo:FullMatch(System.Globalization.TimeSpanFormat+FormatLiterals):ubyte:this (FullOpts)
; ============================================================
37 (6.37 % of base) - System.Collections.Generic.HashSet`1[System.__Canon]:Remove(System.__Canon):ubyte:this
; Assembly listing for method System.Collections.Generic.HashSet`1[System.__Canon]:Remove(System.__Canon):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; 3 single block inlinees; 0 inlinees without PGO data
; Final local variable assignments
;
; V00 this [V00,T02] ( 14, 11.50) ref -> rbx this class-hnd single-def <System.Collections.Generic.HashSet`1[System.__Canon]>
; V01 arg1 [V01,T09] ( 6, 7 ) ref -> r15 ld-addr-op class-hnd single-def <System.__Canon>
; V02 loc0 [V02,T10] ( 4, 9 ) ref -> r14 class-hnd exact single-def <System.Collections.Generic.HashSet`1+Entry[System.__Canon][]>
; V03 loc1 [V03,T03] ( 4, 12.50) int -> r13
; V04 loc2 [V04,T14] ( 5, 6 ) int -> r12
; V05 loc3 [V05,T16] ( 4, 5 ) ref -> [rbp-0x48] class-hnd spill-single-def <System.Collections.Generic.IEqualityComparer`1[System.__Canon]>
; V06 loc4 [V06,T17] ( 3, 5 ) int -> [rbp-0x34] spill-single-def
; V07 loc5 [V07,T22] ( 3, 1.50) byref -> [rbp-0x50] spill-single-def
; V08 loc6 [V08,T00] ( 8, 21.50) int -> [rbp-0x38]
; V09 loc7 [V09,T01] ( 9, 18 ) byref -> [rbp-0x58] spill-single-def
;# V10 OutArgs [V10 ] ( 1, 1 ) struct ( 0) [rsp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-;* V11 tmp1 [V11 ] ( 0, 0 ) long -> zero-ref "spilling helperCall"
-; V12 tmp2 [V12,T18] ( 4, 3 ) long -> r11 "VirtualCall with runtime lookup"
-; V13 tmp3 [V13,T24] ( 3, 1.50) int -> registers
-;* V14 tmp4 [V14 ] ( 0, 0 ) long -> zero-ref "spilling helperCall"
-; V15 tmp5 [V15,T05] ( 4, 12 ) long -> r11 "VirtualCall with runtime lookup"
-; V16 tmp6 [V16,T15] ( 3, 6 ) int -> rax
-;* V17 tmp7 [V17 ] ( 0, 0 ) long -> zero-ref "spilling helperCall"
+; V11 tmp1 [V11,T24] ( 3, 1.50) int -> registers
+;* V12 tmp2 [V12 ] ( 0, 0 ) long -> zero-ref "spilling helperCall"
+; V13 tmp3 [V13,T05] ( 4, 12 ) long -> r11 "VirtualCall with runtime lookup"
+; V14 tmp4 [V14,T15] ( 3, 6 ) int -> rax
+;* V15 tmp5 [V15 ] ( 0, 0 ) long -> zero-ref "spilling helperCall"
+;* V16 tmp6 [V16 ] ( 0, 0 ) long -> zero-ref "spilling helperCall"
+; V17 tmp7 [V17,T18] ( 4, 3 ) long -> r11 "VirtualCall with runtime lookup"
; V18 tmp8 [V18,T26] ( 2, 1 ) byref -> rdx single-def "Inline return value spill temp"
; V19 tmp9 [V19,T23] ( 3, 1.50) ref -> rdi class-hnd single-def "Inline stloc first use temp" <int[]>
;* V20 tmp10 [V20 ] ( 0, 0 ) long -> zero-ref "Inlining Arg"
;* V21 tmp11 [V21 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
;* V22 tmp12 [V22 ] ( 0, 0 ) long -> zero-ref "Inlining Arg"
; V23 tmp13 [V23,T19] ( 3, 3 ) int -> rsi "index expr"
; V24 tmp14 [V24,T06] ( 3, 12 ) ref -> rdi "argument with side effect"
; V25 cse0 [V25,T25] ( 3, 1.50) int -> rdx "CSE #01: moderate"
; V26 cse1 [V26,T04] ( 4, 12.50) int -> [rbp-0x3C] spill-single-def "CSE #03: aggressive"
; V27 rat0 [V27,T21] ( 3, 2.20) long -> rdi "Spilling to split statement for tree"
; V28 rat1 [V28,T20] ( 3, 2.80) long -> r11 "fgMakeTemp is creating a new local variable"
; V29 rat2 [V29,T11] ( 3, 8.80) long -> rdi "Spilling to split statement for tree"
; V30 rat3 [V30,T13] ( 3, 8 ) long -> rsi "runtime lookup"
; V31 rat4 [V31,T07] ( 3, 11.20) long -> rsi "fgMakeTemp is creating a new local variable"
; V32 rat5 [V32,T12] ( 3, 8.80) long -> rdi "Spilling to split statement for tree"
; V33 rat6 [V33,T08] ( 3, 11.20) long -> r11 "fgMakeTemp is creating a new local variable"
;
; Lcl frame size = 56
G_M34406_IG01:
push rbp
push r15
push r14
push r13
push r12
push rbx
sub rsp, 56
lea rbp, [rsp+0x60]
mov qword ptr [rbp-0x30], rdi
mov rbx, rdi
mov r15, rsi
;; size=29 bbWeight=1 PerfScore 8.25
G_M34406_IG02:
cmp gword ptr [rbx+0x08], 0
je G_M34406_IG18
;; size=11 bbWeight=1 PerfScore 4.00
G_M34406_IG03:
mov r14, gword ptr [rbx+0x10]
xor r13d, r13d
mov r12d, -1
mov rax, gword ptr [rbx+0x18]
mov gword ptr [rbp-0x48], rax
test r15, r15
- je SHORT G_M34406_IG06
+ jne SHORT G_M34406_IG04
+ mov rax, gword ptr [rbp-0x48]
+ xor ecx, ecx
+ jmp SHORT G_M34406_IG06
+ ;; size=34 bbWeight=0.50 PerfScore 5.00
+G_M34406_IG04:
mov rax, gword ptr [rbp-0x48]
mov rdi, qword ptr [rbx]
mov rsi, qword ptr [rdi+0x30]
mov rsi, qword ptr [rsi]
- mov r11, qword ptr [rsi+0x28]
+ mov r11, qword ptr [rsi+0x30]
test r11, r11
- je SHORT G_M34406_IG05
- ;; size=49 bbWeight=0.50 PerfScore 8.50
-G_M34406_IG04:
+ je G_M34406_IG12
+ ;; size=27 bbWeight=0.50 PerfScore 5.12
+G_M34406_IG05:
mov rdi, rax
mov rsi, r15
call [r11]
mov ecx, eax
- jmp SHORT G_M34406_IG07
- ;; size=13 bbWeight=0.50 PerfScore 2.88
-G_M34406_IG05:
- mov rsi, 0xD1FFAB1E ; global ptr
- mov rcx, 0xD1FFAB1E ; code for CORINFO_HELP_RUNTIMEHANDLE_CLASS
- call [rcx]CORINFO_HELP_RUNTIMEHANDLE_CLASS
- mov r11, rax
mov rax, gword ptr [rbp-0x48]
- jmp SHORT G_M34406_IG04
- ;; size=31 bbWeight=0.10 PerfScore 0.68
+ ;; size=15 bbWeight=0.50 PerfScore 2.38
G_M34406_IG06:
- xor edi, edi
- xor ecx, ecx
- ;; size=4 bbWeight=0.50 PerfScore 0.25
-G_M34406_IG07:
mov dword ptr [rbp-0x34], ecx
mov rdi, gword ptr [rbx+0x08]
mov esi, ecx
imul rsi, qword ptr [rbx+0x20]
shr rsi, 32
inc rsi
mov edx, dword ptr [rdi+0x08]
mov r8d, edx
imul rsi, r8
shr rsi, 32
cmp esi, edx
jae G_M34406_IG24
mov esi, esi
lea rdx, bword ptr [rdi+4*rsi+0x10]
mov bword ptr [rbp-0x50], rdx
mov r8d, dword ptr [rdx]
dec r8d
js G_M34406_IG18
;; size=66 bbWeight=0.50 PerfScore 10.25
-G_M34406_IG08:
+G_M34406_IG07:
mov r9d, dword ptr [r14+0x08]
mov dword ptr [rbp-0x3C], r9d
cmp r8d, r9d
jae G_M34406_IG24
mov dword ptr [rbp-0x38], r8d
mov edi, r8d
shl rdi, 4
lea r10, bword ptr [r14+rdi+0x10]
mov bword ptr [rbp-0x58], r10
cmp dword ptr [r10+0x08], ecx
jne G_M34406_IG17
;; size=47 bbWeight=4 PerfScore 48.00
-G_M34406_IG09:
- cmp gword ptr [rbp-0x48], 0
- je SHORT G_M34406_IG12
- mov rax, gword ptr [rbp-0x48]
- mov rdi, qword ptr [rbx]
- mov rsi, qword ptr [rdi+0x30]
- mov rsi, qword ptr [rsi]
- mov r11, qword ptr [rsi+0x30]
- test r11, r11
- je SHORT G_M34406_IG11
- ;; size=30 bbWeight=2 PerfScore 26.50
-G_M34406_IG10:
- mov r10, bword ptr [rbp-0x58]
- mov rsi, gword ptr [r10]
- mov rdi, rax
- mov rdx, r15
- call [r11]
- jmp SHORT G_M34406_IG14
- ;; size=18 bbWeight=2 PerfScore 17.00
-G_M34406_IG11:
- mov rsi, 0xD1FFAB1E ; global ptr
- mov r11, 0xD1FFAB1E ; code for CORINFO_HELP_RUNTIMEHANDLE_CLASS
- call [r11]CORINFO_HELP_RUNTIMEHANDLE_CLASS
- mov r11, rax
- mov rax, gword ptr [rbp-0x48]
- jmp SHORT G_M34406_IG10
- ;; size=32 bbWeight=0.40 PerfScore 2.70
-G_M34406_IG12:
+G_M34406_IG08:
+ test rax, rax
+ jne G_M34406_IG13
mov rdi, qword ptr [rbx]
mov rsi, qword ptr [rdi+0x30]
mov rsi, qword ptr [rsi]
mov rsi, qword ptr [rsi+0x18]
test rsi, rsi
- je SHORT G_M34406_IG16
- ;; size=19 bbWeight=2 PerfScore 18.50
-G_M34406_IG13:
+ je G_M34406_IG16
+ ;; size=32 bbWeight=2 PerfScore 21.00
+G_M34406_IG09:
mov rdi, rsi
call CORINFO_HELP_GET_GCSTATIC_BASE
mov rdi, gword ptr [rax]
mov rax, bword ptr [rbp-0x58]
mov rsi, gword ptr [rax]
mov rdx, r15
mov rcx, qword ptr [rdi]
mov rcx, qword ptr [rcx+0x40]
call [rcx+0x20]System.Collections.Generic.EqualityComparer`1[System.__Canon]:Equals(System.__Canon,System.__Canon):ubyte:this
;; size=31 bbWeight=2 PerfScore 27.00
-G_M34406_IG14:
+G_M34406_IG10:
test eax, eax
- je SHORT G_M34406_IG17
- ;; size=4 bbWeight=2 PerfScore 2.50
-G_M34406_IG15:
+ mov rax, gword ptr [rbp-0x48]
+ je G_M34406_IG17
+ ;; size=12 bbWeight=2 PerfScore 4.50
+G_M34406_IG11:
test r12d, r12d
- jge SHORT G_M34406_IG20
+ jge G_M34406_IG20
mov r10, bword ptr [rbp-0x58]
mov eax, dword ptr [r10+0x0C]
inc eax
mov rdx, bword ptr [rbp-0x50]
mov dword ptr [rdx], eax
- jmp SHORT G_M34406_IG21
- ;; size=23 bbWeight=0.50 PerfScore 4.25
+ jmp G_M34406_IG21
+ ;; size=30 bbWeight=0.50 PerfScore 4.25
+G_M34406_IG12:
+ mov rsi, 0xD1FFAB1E ; global ptr
+ mov rcx, 0xD1FFAB1E ; code for CORINFO_HELP_RUNTIMEHANDLE_CLASS
+ call [rcx]CORINFO_HELP_RUNTIMEHANDLE_CLASS
+ mov r11, rax
+ mov rax, gword ptr [rbp-0x48]
+ jmp G_M34406_IG05
+ ;; size=34 bbWeight=0.10 PerfScore 0.68
+G_M34406_IG13:
+ mov rax, gword ptr [rbp-0x48]
+ mov rdi, qword ptr [rbx]
+ mov rsi, qword ptr [rdi+0x30]
+ mov rsi, qword ptr [rsi]
+ mov r11, qword ptr [rsi+0x28]
+ test r11, r11
+ je SHORT G_M34406_IG15
+ ;; size=23 bbWeight=2 PerfScore 20.50
+G_M34406_IG14:
+ mov r10, bword ptr [rbp-0x58]
+ mov rsi, gword ptr [r10]
+ mov rdi, rax
+ mov rdx, r15
+ call [r11]
+ jmp SHORT G_M34406_IG10
+ ;; size=18 bbWeight=2 PerfScore 17.00
+G_M34406_IG15:
+ mov rsi, 0xD1FFAB1E ; global ptr
+ mov r11, 0xD1FFAB1E ; code for CORINFO_HELP_RUNTIMEHANDLE_CLASS
+ call [r11]CORINFO_HELP_RUNTIMEHANDLE_CLASS
+ mov r11, rax
+ mov rax, gword ptr [rbp-0x48]
+ jmp SHORT G_M34406_IG14
+ ;; size=32 bbWeight=0.40 PerfScore 2.70
G_M34406_IG16:
mov rsi, 0xD1FFAB1E ; global ptr
mov r11, 0xD1FFAB1E ; code for CORINFO_HELP_RUNTIMEHANDLE_CLASS
call [r11]CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov rsi, rax
- jmp SHORT G_M34406_IG13
- ;; size=28 bbWeight=0.40 PerfScore 2.30
+ jmp G_M34406_IG09
+ ;; size=31 bbWeight=0.40 PerfScore 2.30
G_M34406_IG17:
mov r8d, dword ptr [rbp-0x38]
mov r12d, r8d
mov r10, bword ptr [rbp-0x58]
mov r8d, dword ptr [r10+0x0C]
inc r13d
cmp dword ptr [rbp-0x3C], r13d
jb SHORT G_M34406_IG23
test r8d, r8d
mov ecx, dword ptr [rbp-0x34]
- jge G_M34406_IG08
+ jge G_M34406_IG07
;; size=36 bbWeight=4 PerfScore 39.00
G_M34406_IG18:
xor eax, eax
;; size=2 bbWeight=0.50 PerfScore 0.12
G_M34406_IG19:
add rsp, 56
pop rbx
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
;; size=15 bbWeight=0.50 PerfScore 2.12
G_M34406_IG20:
cmp r12d, dword ptr [rbp-0x3C]
jae SHORT G_M34406_IG24
mov edx, r12d
shl rdx, 4
mov r10, bword ptr [rbp-0x58]
mov eax, dword ptr [r10+0x0C]
mov dword ptr [r14+rdx+0x1C], eax
;; size=26 bbWeight=0.50 PerfScore 3.88
G_M34406_IG21:
mov eax, dword ptr [rbx+0x2C]
neg eax
add eax, -3
mov dword ptr [r10+0x0C], eax
xor rax, rax
mov gword ptr [r10], rax
mov r8d, dword ptr [rbp-0x38]
mov dword ptr [rbx+0x2C], r8d
inc dword ptr [rbx+0x30]
mov eax, 1
;; size=33 bbWeight=0.50 PerfScore 5.00
G_M34406_IG22:
add rsp, 56
pop rbx
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
;; size=15 bbWeight=0.50 PerfScore 2.12
G_M34406_IG23:
mov rax, 0xD1FFAB1E ; code for System.ThrowHelper:ThrowInvalidOperationException_ConcurrentOperationsNotSupported()
call [rax]System.ThrowHelper:ThrowInvalidOperationException_ConcurrentOperationsNotSupported()
int3
;; size=13 bbWeight=0 PerfScore 0.00
G_M34406_IG24:
call CORINFO_HELP_RNGCHKFAIL
int3
;; size=6 bbWeight=0 PerfScore 0.00
-; Total bytes of code 581, prolog size 29, PerfScore 235.80, instruction count 169, allocated bytes for code 581 (MethodHash=faa87999) for method System.Collections.Generic.HashSet`1[System.__Canon]:Remove(System.__Canon):ubyte:this (FullOpts)
+; Total bytes of code 618, prolog size 29, PerfScore 235.17, instruction count 171, allocated bytes for code 618 (MethodHash=faa87999) for method System.Collections.Generic.HashSet`1[System.__Canon]:Remove(System.__Canon):ubyte:this (FullOpts)
; ============================================================
36 (4.20 % of base) - System.Data.Common.DbCommand:ExecuteNonQueryAsync(System.Threading.CancellationToken):System.Threading.Tasks.Task`1[int]:this
; Assembly listing for method System.Data.Common.DbCommand:ExecuteNonQueryAsync(System.Threading.CancellationToken):System.Threading.Tasks.Task`1[int]:this (FullOpts)
; Emitting BLENDED_CODE for X64 with AVX - Unix
; FullOpts code
; optimized code
; rbp based frame
; fully interruptible
; No PGO data
; 0 inlinees with PGO data; 9 single block inlinees; 9 inlinees without PGO data
; Final local variable assignments
;
; V00 this [V00,T04] ( 5, 5 ) ref -> rbx this class-hnd single-def <System.Data.Common.DbCommand>
-; V01 arg1 [V01 ] ( 7, 7 ) struct ( 8) [rbp-0x20] do-not-enreg[SF] ld-addr-op single-def <System.Threading.CancellationToken>
+; V01 arg1 [V01 ] ( 7, 7 ) struct ( 8) [rbp-0x30] do-not-enreg[SF] ld-addr-op single-def <System.Threading.CancellationToken>
;* V02 loc0 [V02 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op <System.Threading.CancellationTokenRegistration>
-; V03 loc1 [V03,T19] ( 3, 2 ) ref -> [rbp-0x38] do-not-enreg[M] class-hnd EH-live <System.Threading.Tasks.Task`1[int]>
+; V03 loc1 [V03,T19] ( 3, 2 ) ref -> [rbp-0x48] do-not-enreg[M] class-hnd EH-live <System.Threading.Tasks.Task`1[int]>
;# V04 OutArgs [V04 ] ( 1, 1 ) struct ( 0) [rsp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
; V05 tmp1 [V05,T23] ( 2, 0 ) ref -> rdi class-hnd single-def "impSpillSpecialSideEff" <System.Exception>
; V06 tmp2 [V06,T11] ( 2, 4 ) ref -> r15 class-hnd single-def "dup spill" <System.Action`1[System.Object]>
;* V07 tmp3 [V07 ] ( 0, 0 ) byref -> zero-ref
; V08 tmp4 [V08,T08] ( 5, 5 ) ref -> r15
; V09 tmp5 [V09,T00] ( 5, 10 ) ref -> r15 class-hnd exact single-def "NewObj constructor temp" <System.Action`1[System.Object]>
;* V10 tmp6 [V10,T21] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
;* V11 tmp7 [V11 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.Threading.CancellationTokenSource>
-; V12 tmp8 [V12 ] ( 2, 4 ) struct ( 8) [rbp-0x28] do-not-enreg[SF] must-init ld-addr-op "NewObj constructor temp" <System.Threading.CancellationToken>
+; V12 tmp8 [V12 ] ( 2, 4 ) struct ( 8) [rbp-0x38] do-not-enreg[SF] must-init ld-addr-op "NewObj constructor temp" <System.Threading.CancellationToken>
;* V13 tmp9 [V13 ] ( 0, 0 ) byref -> zero-ref
;* V14 tmp10 [V14 ] ( 0, 0 ) byref -> zero-ref
;* V15 tmp11 [V15 ] ( 0, 0 ) ref -> zero-ref
; V16 tmp12 [V16,T05] ( 3, 6 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.Data.Common.DbCommand+<>c>
;* V17 tmp13 [V17 ] ( 0, 0 ) struct (16) zero-ref multireg-ret "Inline return value spill temp" <System.Threading.CancellationTokenRegistration>
; V18 tmp14 [V18,T14] ( 3, 3 ) ref -> r14 class-hnd single-def "Inline stloc first use temp" <System.Threading.CancellationTokenSource>
-;* V19 tmp15 [V19 ] ( 0, 0 ) ref -> zero-ref
+;* V19 tmp15 [V19 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.Threading.CancellationTokenRegistration>
;* V20 tmp16 [V20 ] ( 0, 0 ) ref -> zero-ref
;* V21 tmp17 [V21 ] ( 0, 0 ) ref -> zero-ref
;* V22 tmp18 [V22 ] ( 0, 0 ) ref -> zero-ref
;* V23 tmp19 [V23 ] ( 0, 0 ) ref -> zero-ref
;* V24 tmp20 [V24 ] ( 0, 0 ) ref -> zero-ref
;* V25 tmp21 [V25 ] ( 0, 0 ) ref -> zero-ref
;* V26 tmp22 [V26 ] ( 0, 0 ) ref -> zero-ref
;* V27 tmp23 [V27 ] ( 0, 0 ) ref -> zero-ref
;* V28 tmp24 [V28 ] ( 0, 0 ) ref -> zero-ref
;* V29 tmp25 [V29 ] ( 0, 0 ) ref -> zero-ref
;* V30 tmp26 [V30 ] ( 0, 0 ) ref -> zero-ref
;* V31 tmp27 [V31 ] ( 0, 0 ) ref -> zero-ref
;* V32 tmp28 [V32 ] ( 0, 0 ) ref -> zero-ref
;* V33 tmp29 [V33 ] ( 0, 0 ) ref -> zero-ref
;* V34 tmp30 [V34 ] ( 0, 0 ) ref -> zero-ref
-;* V35 tmp31 [V35 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[SBR] multireg-ret "Return value temp for multireg return" <System.Threading.CancellationTokenRegistration>
-;* V36 tmp32 [V36 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.Threading.CancellationTokenRegistration>
+;* V35 tmp31 [V35 ] ( 0, 0 ) ref -> zero-ref
+;* V36 tmp32 [V36 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[SBR] multireg-ret "Return value temp for multireg return" <System.Threading.CancellationTokenRegistration>
; V37 tmp33 [V37,T15] ( 3, 3 ) ref -> rax class-hnd "Inline return value spill temp" <System.Threading.Tasks.Task`1[int]>
; V38 tmp34 [V38,T07] ( 3, 6 ) int -> rbx ld-addr-op "Inlining Arg"
;* V39 tmp35 [V39 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
; V40 tmp36 [V40,T03] ( 4, 8 ) ref -> rax class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.Task`1[int]>
;* V41 tmp37 [V41 ] ( 0, 0 ) ref -> zero-ref ld-addr-op class-hnd "Inline stloc first use temp" <System.Threading.Tasks.Task`1[int]>
;* V42 tmp38 [V42 ] ( 0, 0 ) struct ( 8) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.Threading.CancellationToken>
;* V43 tmp39 [V43 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
;* V44 tmp40 [V44 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V45 tmp41 [V45 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inline stloc first use temp" <System.Threading.CancellationTokenSource+CallbackNode>
; V46 tmp42 [V46,T13] ( 6, 3 ) ref -> rbx class-hnd "Inline stloc first use temp" <System.Threading.CancellationTokenSource>
;* V47 tmp43 [V47 ] ( 0, 0 ) int -> zero-ref "non-inline candidate call"
;* V48 tmp44 [V48 ] ( 0, 0 ) long -> zero-ref "Inlining Arg"
-; V49 tmp45 [V49,T01] ( 7, 7 ) ref -> [rbp-0x20] do-not-enreg[] single-def "field V01._source (fldOffset=0x0)" P-DEP
-; V50 tmp46 [V50,T02] ( 14, 8 ) ref -> [rbp-0x40] do-not-enreg[M] EH-live "field V02._node (fldOffset=0x0)" P-INDEP
-; V51 tmp47 [V51,T09] ( 6, 4 ) long -> [rbp-0x30] do-not-enreg[Z] EH-live "field V02._id (fldOffset=0x8)" P-INDEP
-; V52 tmp48 [V52,T18] ( 2, 3 ) ref -> [rbp-0x28] do-not-enreg[] "field V12._source (fldOffset=0x0)" P-DEP
-; V53 tmp49 [V53,T16] ( 3, 3 ) ref -> rax single-def "field V17._node (fldOffset=0x0)" P-INDEP
-; V54 tmp50 [V54,T17] ( 3, 3 ) long -> rdx "field V17._id (fldOffset=0x8)" P-INDEP
-;* V55 tmp51 [V55 ] ( 0, 0 ) ref -> zero-ref "field V35._node (fldOffset=0x0)" P-DEP
-;* V56 tmp52 [V56 ] ( 0, 0 ) long -> zero-ref "field V35._id (fldOffset=0x8)" P-DEP
-;* V57 tmp53 [V57 ] ( 0, 0 ) ref -> zero-ref single-def "field V36._node (fldOffset=0x0)" P-INDEP
-;* V58 tmp54 [V58 ] ( 0, 0 ) long -> zero-ref "field V36._id (fldOffset=0x8)" P-INDEP
+; V49 tmp45 [V49,T01] ( 7, 7 ) ref -> [rbp-0x30] do-not-enreg[] single-def "field V01._source (fldOffset=0x0)" P-DEP
+; V50 tmp46 [V50,T02] ( 14, 8 ) ref -> [rbp-0x50] do-not-enreg[M] EH-live "field V02._node (fldOffset=0x0)" P-INDEP
+; V51 tmp47 [V51,T09] ( 6, 4 ) long -> [rbp-0x40] do-not-enreg[Z] EH-live "field V02._id (fldOffset=0x8)" P-INDEP
+; V52 tmp48 [V52,T18] ( 2, 3 ) ref -> [rbp-0x38] do-not-enreg[] "field V12._source (fldOffset=0x0)" P-DEP
+; V53 tmp49 [V53,T16] ( 3, 3 ) ref -> r13 single-def "field V17._node (fldOffset=0x0)" P-INDEP
+; V54 tmp50 [V54,T17] ( 3, 3 ) long -> r12 "field V17._id (fldOffset=0x8)" P-INDEP
+;* V55 tmp51 [V55 ] ( 0, 0 ) ref -> zero-ref single-def "field V19._node (fldOffset=0x0)" P-INDEP
+;* V56 tmp52 [V56 ] ( 0, 0 ) long -> zero-ref "field V19._id (fldOffset=0x8)" P-INDEP
+;* V57 tmp53 [V57 ] ( 0, 0 ) ref -> zero-ref "field V36._node (fldOffset=0x0)" P-DEP
+;* V58 tmp54 [V58 ] ( 0, 0 ) long -> zero-ref "field V36._id (fldOffset=0x8)" P-DEP
;* V59 tmp55 [V59 ] ( 0, 0 ) ref -> zero-ref "field V42._source (fldOffset=0x0)" P-INDEP
; V60 tmp56 [V60,T12] ( 2, 4 ) ref -> r8 single-def "argument with side effect"
; V61 tmp57 [V61,T06] ( 3, 6 ) ref -> rsi single-def "arr expr"
-; V62 PSPSym [V62,T22] ( 1, 1 ) long -> [rbp-0x50] do-not-enreg[V] "PSPSym"
+; V62 PSPSym [V62,T22] ( 1, 1 ) long -> [rbp-0x60] do-not-enreg[V] "PSPSym"
;* V63 cse0 [V63,T20] ( 0, 0 ) byref -> zero-ref "CSE #02: moderate"
; V64 cse1 [V64,T10] ( 4, 4 ) int -> r15 "CSE #04: moderate"
;
; Lcl frame size = 56
G_M11801_IG01:
push rbp
push r15
push r14
+ push r13
+ push r12
push rbx
sub rsp, 56
- lea rbp, [rsp+0x50]
+ lea rbp, [rsp+0x60]
xor eax, eax
- mov qword ptr [rbp-0x28], rax
- mov qword ptr [rbp-0x50], rsp
- mov gword ptr [rbp-0x20], rsi
+ mov qword ptr [rbp-0x38], rax
+ mov qword ptr [rbp-0x60], rsp
+ mov gword ptr [rbp-0x30], rsi
mov rbx, rdi
- ;; size=32 bbWeight=1 PerfScore 8.25
+ ;; size=36 bbWeight=1 PerfScore 10.25
G_M11801_IG02:
- cmp gword ptr [rbp-0x20], 0
+ cmp gword ptr [rbp-0x30], 0
je SHORT G_M11801_IG03
- mov rdi, gword ptr [rbp-0x20]
+ mov rdi, gword ptr [rbp-0x30]
cmp dword ptr [rdi+0x20], 0
jne G_M11801_IG19
;; size=21 bbWeight=1 PerfScore 8.00
G_M11801_IG03:
xor rdi, rdi
- mov gword ptr [rbp-0x40], rdi
+ mov gword ptr [rbp-0x50], rdi
;; size=6 bbWeight=1 PerfScore 1.25
G_M11801_IG04:
- mov qword ptr [rbp-0x30], rdi
- cmp gword ptr [rbp-0x20], 0
+ mov qword ptr [rbp-0x40], rdi
+ cmp gword ptr [rbp-0x30], 0
je G_M11801_IG09
mov rdi, 0xD1FFAB1E ; global ptr
test byte ptr [rdi], 1
je G_M11801_IG22
;; size=34 bbWeight=1 PerfScore 8.25
G_M11801_IG05:
mov rdi, 0xD1FFAB1E ; data for System.Data.Common.DbCommand+<>c:<>9__52_0
mov r15, gword ptr [rdi]
test r15, r15
jne SHORT G_M11801_IG06
mov rdi, 0xD1FFAB1E ; System.Action`1[System.Object]
call CORINFO_HELP_NEWSFAST
mov r15, rax
mov rdi, 0xD1FFAB1E ; data for System.Data.Common.DbCommand+<>c:<>9
mov rsi, gword ptr [rdi]
test rsi, rsi
je G_M11801_IG24
lea rdi, bword ptr [r15+0x08]
call CORINFO_HELP_ASSIGN_REF
mov rdi, 0xD1FFAB1E ; code for System.Data.Common.DbCommand+<>c:<ExecuteNonQueryAsync>b__52_0(System.Object):this
mov qword ptr [r15+0x18], rdi
mov rdi, 0xD1FFAB1E ; data for System.Data.Common.DbCommand+<>c:<>9__52_0
mov rsi, r15
call CORINFO_HELP_ASSIGN_REF
;; size=99 bbWeight=1 PerfScore 12.75
G_M11801_IG06:
test r15, r15
je G_M11801_IG23
- mov r14, gword ptr [rbp-0x20]
+ mov r14, gword ptr [rbp-0x30]
test r14, r14
- je SHORT G_M11801_IG07
+ jne SHORT G_M11801_IG07
+ xor r13, r13
+ xor r12d, r12d
+ jmp SHORT G_M11801_IG08
+ ;; size=26 bbWeight=1 PerfScore 6.00
+G_M11801_IG07:
mov rax, 0xD1FFAB1E ; code for System.Threading.ExecutionContext:Capture():System.Threading.ExecutionContext
call [rax]System.Threading.ExecutionContext:Capture():System.Threading.ExecutionContext
mov r8, rax
mov rsi, r15
mov rdx, rbx
mov rdi, r14
xor rcx, rcx
mov rax, 0xD1FFAB1E ; code for System.Threading.CancellationTokenSource:Register(System.Delegate,System.Object,System.Threading.SynchronizationContext,System.Threading.ExecutionContext):System.Threading.CancellationTokenRegistration:this
call [rax]System.Threading.CancellationTokenSource:Register(System.Delegate,System.Object,System.Threading.SynchronizationContext,System.Threading.ExecutionContext):System.Threading.CancellationTokenRegistration:this
- jmp SHORT G_M11801_IG08
- ;; size=58 bbWeight=1 PerfScore 13.25
-G_M11801_IG07:
- xor rax, rax
- xor edx, edx
- ;; size=4 bbWeight=1 PerfScore 0.50
+ mov r13, rax
+ mov r12, rdx
+ ;; size=44 bbWeight=1 PerfScore 8.25
G_M11801_IG08:
- mov gword ptr [rbp-0x40], rax
- mov qword ptr [rbp-0x30], rdx
+ mov gword ptr [rbp-0x50], r13
+ mov qword ptr [rbp-0x40], r12
;; size=8 bbWeight=1 PerfScore 2.00
G_M11801_IG09:
mov rdi, rbx
mov rax, qword ptr [rbx]
mov rax, qword ptr [rax+0x60]
call [rax+0x28]System.Data.Common.DbCommand:ExecuteNonQuery():int:this
mov ebx, eax
lea r15d, [rbx+0x01]
cmp r15d, 10
jb SHORT G_M11801_IG10
mov rdi, 0xD1FFAB1E ; System.Threading.Tasks.Task`1[int]
call CORINFO_HELP_NEWSFAST
mov dword ptr [rax+0x34], 0xD1FFAB1E
mov dword ptr [rax+0x38], ebx
jmp SHORT G_M11801_IG12
;; size=52 bbWeight=1 PerfScore 14.50
G_M11801_IG10:
mov rdi, 0xD1FFAB1E ; global ptr
test byte ptr [rdi], 1
je SHORT G_M11801_IG13
;; size=15 bbWeight=1 PerfScore 4.25
G_M11801_IG11:
mov rsi, 0xD1FFAB1E ; data for System.Threading.Tasks.TaskCache:s_int32Tasks
mov rsi, gword ptr [rsi]
cmp r15d, dword ptr [rsi+0x08]
jae SHORT G_M11801_IG14
mov edi, r15d
mov rax, gword ptr [rsi+8*rdi+0x10]
;; size=27 bbWeight=1 PerfScore 8.50
G_M11801_IG12:
- mov gword ptr [rbp-0x38], rax
+ mov gword ptr [rbp-0x48], rax
jmp SHORT G_M11801_IG16
;; size=6 bbWeight=1 PerfScore 3.00
G_M11801_IG13:
mov rdi, 0xD1FFAB1E ; System.Threading.Tasks.TaskCache
call CORINFO_HELP_GET_GCSTATIC_BASE
jmp SHORT G_M11801_IG11
;; size=17 bbWeight=0 PerfScore 0.00
G_M11801_IG14:
call CORINFO_HELP_RNGCHKFAIL
int3
;; size=6 bbWeight=0 PerfScore 0.00
G_M11801_IG15:
nop
;; size=1 bbWeight=0 PerfScore 0.00
G_M11801_IG16:
- cmp gword ptr [rbp-0x40], 0
+ cmp gword ptr [rbp-0x50], 0
je SHORT G_M11801_IG17
- mov rdi, gword ptr [rbp-0x40]
+ mov rdi, gword ptr [rbp-0x50]
mov rdi, gword ptr [rdi+0x08]
- mov rsi, qword ptr [rbp-0x30]
- mov rdx, gword ptr [rbp-0x40]
+ mov rsi, qword ptr [rbp-0x40]
+ mov rdx, gword ptr [rbp-0x50]
mov rax, 0xD1FFAB1E ; code for System.Threading.CancellationTokenSource+Registrations:Unregister(long,System.Threading.CancellationTokenSource+CallbackNode):ubyte:this
cmp dword ptr [rdi], edi
call [rax]System.Threading.CancellationTokenSource+Registrations:Unregister(long,System.Threading.CancellationTokenSource+CallbackNode):ubyte:this
test eax, eax
jne SHORT G_M11801_IG17
- mov rax, gword ptr [rbp-0x40]
+ mov rax, gword ptr [rbp-0x50]
mov rax, gword ptr [rax+0x08]
mov rbx, gword ptr [rax+0x08]
cmp dword ptr [rbx+0x20], 0
je SHORT G_M11801_IG17
cmp dword ptr [rbx+0x20], 2
je SHORT G_M11801_IG17
- mov rax, gword ptr [rbp-0x40]
+ mov rax, gword ptr [rbp-0x50]
mov rax, gword ptr [rax+0x08]
mov ebx, dword ptr [rax+0x30]
call System.Environment:get_CurrentManagedThreadId():int
cmp ebx, eax
je SHORT G_M11801_IG17
- mov rdi, gword ptr [rbp-0x40]
+ mov rdi, gword ptr [rbp-0x50]
mov rdi, gword ptr [rdi+0x08]
- mov rsi, qword ptr [rbp-0x30]
+ mov rsi, qword ptr [rbp-0x40]
mov rax, 0xD1FFAB1E ; code for System.Threading.CancellationTokenSource+Registrations:WaitForCallbackToComplete(long):this
cmp dword ptr [rdi], edi
call [rax]System.Threading.CancellationTokenSource+Registrations:WaitForCallbackToComplete(long):this
;; size=111 bbWeight=1 PerfScore 46.00
G_M11801_IG17:
- mov rax, gword ptr [rbp-0x38]
+ mov rax, gword ptr [rbp-0x48]
;; size=4 bbWeight=1 PerfScore 1.00
G_M11801_IG18:
add rsp, 56
pop rbx
+ pop r12
+ pop r13
pop r14
pop r15
pop rbp
ret
- ;; size=11 bbWeight=1 PerfScore 3.25
+ ;; size=15 bbWeight=1 PerfScore 4.25
G_M11801_IG19:
mov rdi, 0xD1FFAB1E ; global ptr
test byte ptr [rdi], 1
je SHORT G_M11801_IG25
;; size=15 bbWeight=1 PerfScore 4.25
G_M11801_IG20:
mov rdi, 0xD1FFAB1E ; data for System.Threading.CancellationTokenSource:s_canceledSource
mov rdi, gword ptr [rdi]
- mov gword ptr [rbp-0x28], rdi
- mov rdi, gword ptr [rbp-0x28]
+ mov gword ptr [rbp-0x38], rdi
+ mov rdi, gword ptr [rbp-0x38]
mov rax, 0xD1FFAB1E ; code for System.Threading.Tasks.Task:FromCanceled[int](System.Threading.CancellationToken):System.Threading.Tasks.Task`1[int]
call [rax]System.Threading.Tasks.Task:FromCanceled[int](System.Threading.CancellationToken):System.Threading.Tasks.Task`1[int]
nop
;; size=34 bbWeight=1 PerfScore 7.75
G_M11801_IG21:
add rsp, 56
pop rbx
+ pop r12
+ pop r13
pop r14
pop r15
pop rbp
ret
- ;; size=11 bbWeight=1 PerfScore 3.25
+ ;; size=15 bbWeight=1 PerfScore 4.25
G_M11801_IG22:
mov rdi, 0xD1FFAB1E ; System.Data.Common.DbCommand+<>c
call CORINFO_HELP_GET_GCSTATIC_BASE
jmp G_M11801_IG05
;; size=20 bbWeight=0 PerfScore 0.00
G_M11801_IG23:
mov edi, 0x9D7
mov rsi, 0xD1FFAB1E
call CORINFO_HELP_STRCNS
mov rdi, rax
mov rax, 0xD1FFAB1E ; code for System.ArgumentNullException:Throw(System.String)
call [rax]System.ArgumentNullException:Throw(System.String)
int3
;; size=36 bbWeight=0 PerfScore 0.00
G_M11801_IG24:
mov rax, 0xD1FFAB1E ; code for System.MulticastDelegate:ThrowNullThisInDelegateToInstance()
call [rax]System.MulticastDelegate:ThrowNullThisInDelegateToInstance()
int3
;; size=13 bbWeight=0 PerfScore 0.00
G_M11801_IG25:
mov rdi, 0xD1FFAB1E ; System.Threading.CancellationTokenSource
call CORINFO_HELP_GET_GCSTATIC_BASE
jmp G_M11801_IG20
;; size=20 bbWeight=0 PerfScore 0.00
G_M11801_IG26:
push rbp
push r15
push r14
+ push r13
+ push r12
push rbx
push rax
mov rbp, qword ptr [rdi]
mov qword ptr [rsp], rbp
- lea rbp, [rbp+0x50]
- ;; size=18 bbWeight=0 PerfScore 0.00
+ lea rbp, [rbp+0x60]
+ ;; size=22 bbWeight=0 PerfScore 0.00
G_M11801_IG27:
mov rdi, rsi
mov rax, 0xD1FFAB1E ; code for System.Threading.Tasks.Task:FromException[int](System.Exception):System.Threading.Tasks.Task`1[int]
call [rax]System.Threading.Tasks.Task:FromException[int](System.Exception):System.Threading.Tasks.Task`1[int]
- mov gword ptr [rbp-0x38], rax
+ mov gword ptr [rbp-0x48], rax
lea rax, G_M11801_IG15
;; size=26 bbWeight=0 PerfScore 0.00
G_M11801_IG28:
add rsp, 8
pop rbx
+ pop r12
+ pop r13
pop r14
pop r15
pop rbp
ret
- ;; size=11 bbWeight=0 PerfScore 0.00
+ ;; size=15 bbWeight=0 PerfScore 0.00
G_M11801_IG29:
push rbp
push r15
push r14
+ push r13
+ push r12
push rbx
push rax
mov rbp, qword ptr [rdi]
mov qword ptr [rsp], rbp
- lea rbp, [rbp+0x50]
- ;; size=18 bbWeight=0 PerfScore 0.00
+ lea rbp, [rbp+0x60]
+ ;; size=22 bbWeight=0 PerfScore 0.00
G_M11801_IG30:
- cmp gword ptr [rbp-0x40], 0
+ cmp gword ptr [rbp-0x50], 0
je SHORT G_M11801_IG31
- mov rdi, gword ptr [rbp-0x40]
+ mov rdi, gword ptr [rbp-0x50]
mov rdi, gword ptr [rdi+0x08]
- mov rsi, qword ptr [rbp-0x30]
- mov rdx, gword ptr [rbp-0x40]
+ mov rsi, qword ptr [rbp-0x40]
+ mov rdx, gword ptr [rbp-0x50]
mov rax, 0xD1FFAB1E ; code for System.Threading.CancellationTokenSource+Registrations:Unregister(long,System.Threading.CancellationTokenSource+CallbackNode):ubyte:this
cmp dword ptr [rdi], edi
call [rax]System.Threading.CancellationTokenSource+Registrations:Unregister(long,System.Threading.CancellationTokenSource+CallbackNode):ubyte:this
test eax, eax
jne SHORT G_M11801_IG31
- mov rax, gword ptr [rbp-0x40]
+ mov rax, gword ptr [rbp-0x50]
mov rax, gword ptr [rax+0x08]
mov rbx, gword ptr [rax+0x08]
cmp dword ptr [rbx+0x20], 0
je SHORT G_M11801_IG31
cmp dword ptr [rbx+0x20], 2
je SHORT G_M11801_IG31
- mov rax, gword ptr [rbp-0x40]
+ mov rax, gword ptr [rbp-0x50]
mov rax, gword ptr [rax+0x08]
mov ebx, dword ptr [rax+0x30]
call System.Environment:get_CurrentManagedThreadId():int
cmp ebx, eax
je SHORT G_M11801_IG31
- mov rdi, gword ptr [rbp-0x40]
+ mov rdi, gword ptr [rbp-0x50]
mov rdi, gword ptr [rdi+0x08]
- mov rsi, qword ptr [rbp-0x30]
+ mov rsi, qword ptr [rbp-0x40]
mov rax, 0xD1FFAB1E ; code for System.Threading.CancellationTokenSource+Registrations:WaitForCallbackToComplete(long):this
cmp dword ptr [rdi], edi
call [rax]System.Threading.CancellationTokenSource+Registrations:WaitForCallbackToComplete(long):this
;; size=111 bbWeight=0 PerfScore 0.00
G_M11801_IG31:
nop
;; size=1 bbWeight=0 PerfScore 0.00
G_M11801_IG32:
add rsp, 8
pop rbx
+ pop r12
+ pop r13
pop r14
pop r15
pop rbp
ret
- ;; size=11 bbWeight=0 PerfScore 0.00
+ ;; size=15 bbWeight=0 PerfScore 0.00
-; Total bytes of code 857, prolog size 32, PerfScore 150.00, instruction count 224, allocated bytes for code 857 (MethodHash=7c1bd1e6) for method System.Data.Common.DbCommand:ExecuteNonQueryAsync(System.Threading.CancellationToken):System.Threading.Tasks.Task`1[int]:this (FullOpts)
+; Total bytes of code 893, prolog size 36, PerfScore 154.50, instruction count 240, allocated bytes for code 893 (MethodHash=7c1bd1e6) for method System.Data.Common.DbCommand:ExecuteNonQueryAsync(System.Threading.CancellationToken):System.Threading.Tasks.Task`1[int]:this (FullOpts)
; ============================================================
36 (3.71 % of base) - System.Data.Common.DbCommand:ExecuteScalarAsync(System.Threading.CancellationToken):System.Threading.Tasks.Task`1[System.Object]:this
; Assembly listing for method System.Data.Common.DbCommand:ExecuteScalarAsync(System.Threading.CancellationToken):System.Threading.Tasks.Task`1[System.Object]: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; 13 single block inlinees; 13 inlinees without PGO data
; Final local variable assignments
;
; V00 this [V00,T06] ( 5, 5 ) ref -> rbx this class-hnd single-def <System.Data.Common.DbCommand>
-; V01 arg1 [V01 ] ( 7, 7 ) struct ( 8) [rbp-0x20] do-not-enreg[SF] ld-addr-op single-def <System.Threading.CancellationToken>
+; V01 arg1 [V01 ] ( 7, 7 ) struct ( 8) [rbp-0x30] do-not-enreg[SF] ld-addr-op single-def <System.Threading.CancellationToken>
;* V02 loc0 [V02 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op <System.Threading.CancellationTokenRegistration>
-; V03 loc1 [V03,T19] ( 3, 2 ) ref -> [rbp-0x38] do-not-enreg[M] class-hnd EH-live <System.Threading.Tasks.Task`1[System.Object]>
+; V03 loc1 [V03,T19] ( 3, 2 ) ref -> [rbp-0x48] do-not-enreg[M] class-hnd EH-live <System.Threading.Tasks.Task`1[System.Object]>
;# V04 OutArgs [V04 ] ( 1, 1 ) struct ( 0) [rsp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
; V05 tmp1 [V05,T23] ( 2, 0 ) ref -> rsi class-hnd single-def "impSpillSpecialSideEff" <System.Exception>
; V06 tmp2 [V06,T12] ( 2, 4 ) ref -> r15 class-hnd single-def "dup spill" <System.Action`1[System.Object]>
;* V07 tmp3 [V07 ] ( 0, 0 ) byref -> zero-ref
; V08 tmp4 [V08,T09] ( 5, 5 ) ref -> r15
; V09 tmp5 [V09,T00] ( 5, 10 ) ref -> r15 class-hnd exact single-def "NewObj constructor temp" <System.Action`1[System.Object]>
;* V10 tmp6 [V10,T21] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
;* V11 tmp7 [V11 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.Threading.CancellationTokenSource>
-; V12 tmp8 [V12 ] ( 4, 8 ) struct ( 8) [rbp-0x28] do-not-enreg[SF] must-init ld-addr-op "NewObj constructor temp" <System.Threading.CancellationToken>
+; V12 tmp8 [V12 ] ( 4, 8 ) struct ( 8) [rbp-0x38] do-not-enreg[SF] must-init ld-addr-op "NewObj constructor temp" <System.Threading.CancellationToken>
;* V13 tmp9 [V13 ] ( 0, 0 ) byref -> zero-ref
;* V14 tmp10 [V14 ] ( 0, 0 ) byref -> zero-ref
;* V15 tmp11 [V15 ] ( 0, 0 ) ref -> zero-ref
;* V16 tmp12 [V16 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inline return value spill temp" <System.Threading.Tasks.Task`1[System.Object]>
;* V17 tmp13 [V17 ] ( 0, 0 ) struct ( 8) zero-ref ld-addr-op "Inlining Arg" <System.Threading.CancellationToken>
;* V18 tmp14 [V18 ] ( 0, 0 ) ref -> zero-ref ld-addr-op class-hnd "Inline ldloca(s) first use temp" <System.Object>
; V19 tmp15 [V19,T04] ( 4, 8 ) ref -> rbx class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.Task`1[System.Object]>
;* V20 tmp16 [V20,T24] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
;* V21 tmp17 [V21 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.Threading.CancellationTokenSource>
;* V22 tmp18 [V22 ] ( 0, 0 ) struct ( 8) zero-ref "Inlining Arg" <System.Threading.CancellationToken>
;* V23 tmp19 [V23 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
; V24 tmp20 [V24,T01] ( 5, 10 ) ref -> r15 class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.Task+ContingentProperties>
; V25 tmp21 [V25,T07] ( 3, 6 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.Data.Common.DbCommand+<>c>
;* V26 tmp22 [V26 ] ( 0, 0 ) struct (16) zero-ref multireg-ret "Inline return value spill temp" <System.Threading.CancellationTokenRegistration>
; V27 tmp23 [V27,T15] ( 3, 3 ) ref -> r14 class-hnd single-def "Inline stloc first use temp" <System.Threading.CancellationTokenSource>
-;* V28 tmp24 [V28 ] ( 0, 0 ) ref -> zero-ref
+;* V28 tmp24 [V28 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.Threading.CancellationTokenRegistration>
;* V29 tmp25 [V29 ] ( 0, 0 ) ref -> zero-ref
;* V30 tmp26 [V30 ] ( 0, 0 ) ref -> zero-ref
;* V31 tmp27 [V31 ] ( 0, 0 ) ref -> zero-ref
;* V32 tmp28 [V32 ] ( 0, 0 ) ref -> zero-ref
;* V33 tmp29 [V33 ] ( 0, 0 ) ref -> zero-ref
;* V34 tmp30 [V34 ] ( 0, 0 ) ref -> zero-ref
;* V35 tmp31 [V35 ] ( 0, 0 ) ref -> zero-ref
;* V36 tmp32 [V36 ] ( 0, 0 ) ref -> zero-ref
;* V37 tmp33 [V37 ] ( 0, 0 ) ref -> zero-ref
;* V38 tmp34 [V38 ] ( 0, 0 ) ref -> zero-ref
;* V39 tmp35 [V39 ] ( 0, 0 ) ref -> zero-ref
;* V40 tmp36 [V40 ] ( 0, 0 ) ref -> zero-ref
;* V41 tmp37 [V41 ] ( 0, 0 ) ref -> zero-ref
;* V42 tmp38 [V42 ] ( 0, 0 ) ref -> zero-ref
;* V43 tmp39 [V43 ] ( 0, 0 ) ref -> zero-ref
-;* V44 tmp40 [V44 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[SBR] multireg-ret "Return value temp for multireg return" <System.Threading.CancellationTokenRegistration>
-;* V45 tmp41 [V45 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.Threading.CancellationTokenRegistration>
+;* V44 tmp40 [V44 ] ( 0, 0 ) ref -> zero-ref
+;* V45 tmp41 [V45 ] ( 0, 0 ) struct (16) zero-ref do-not-enreg[SBR] multireg-ret "Return value temp for multireg return" <System.Threading.CancellationTokenRegistration>
; V46 tmp42 [V46,T16] ( 3, 3 ) ref -> r15 class-hnd "Inline return value spill temp" <System.Threading.Tasks.Task`1[System.Object]>
; V47 tmp43 [V47,T08] ( 3, 6 ) ref -> rbx ld-addr-op class-hnd single-def "Inlining Arg" <System.Object>
; V48 tmp44 [V48,T05] ( 4, 8 ) ref -> r15 class-hnd exact single-def "NewObj constructor temp" <System.Threading.Tasks.Task`1[System.Object]>
;* V49 tmp45 [V49 ] ( 0, 0 ) struct ( 8) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.Threading.CancellationToken>
;* V50 tmp46 [V50 ] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inlining Arg" <System.Object>
;* V51 tmp47 [V51 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V52 tmp48 [V52 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inline stloc first use temp" <System.Threading.CancellationTokenSource+CallbackNode>
; V53 tmp49 [V53,T14] ( 6, 3 ) ref -> rbx class-hnd "Inline stloc first use temp" <System.Threading.CancellationTokenSource>
;* V54 tmp50 [V54 ] ( 0, 0 ) int -> zero-ref "non-inline candidate call"
;* V55 tmp51 [V55 ] ( 0, 0 ) long -> zero-ref "Inlining Arg"
-; V56 tmp52 [V56,T02] ( 7, 7 ) ref -> [rbp-0x20] do-not-enreg[] single-def "field V01._source (fldOffset=0x0)" P-DEP
-; V57 tmp53 [V57,T03] ( 14, 8 ) ref -> [rbp-0x40] do-not-enreg[M] EH-live "field V02._node (fldOffset=0x0)" P-INDEP
-; V58 tmp54 [V58,T11] ( 6, 4 ) long -> [rbp-0x30] do-not-enreg[Z] EH-live "field V02._id (fldOffset=0x8)" P-INDEP
-; V59 tmp55 [V59,T10] ( 4, 5 ) ref -> [rbp-0x28] do-not-enreg[] "field V12._source (fldOffset=0x0)" P-DEP
+; V56 tmp52 [V56,T02] ( 7, 7 ) ref -> [rbp-0x30] do-not-enreg[] single-def "field V01._source (fldOffset=0x0)" P-DEP
+; V57 tmp53 [V57,T03] ( 14, 8 ) ref -> [rbp-0x50] do-not-enreg[M] EH-live "field V02._node (fldOffset=0x0)" P-INDEP
+; V58 tmp54 [V58,T11] ( 6, 4 ) long -> [rbp-0x40] do-not-enreg[Z] EH-live "field V02._id (fldOffset=0x8)" P-INDEP
+; V59 tmp55 [V59,T10] ( 4, 5 ) ref -> [rbp-0x38] do-not-enreg[] "field V12._source (fldOffset=0x0)" P-DEP
;* V60 tmp56 [V60 ] ( 0, 0 ) ref -> zero-ref single-def "field V17._source (fldOffset=0x0)" P-INDEP
;* V61 tmp57 [V61 ] ( 0, 0 ) ref -> zero-ref single-def "field V22._source (fldOffset=0x0)" P-INDEP
-; V62 tmp58 [V62,T17] ( 3, 3 ) ref -> rax single-def "field V26._node (fldOffset=0x0)" P-INDEP
-; V63 tmp59 [V63,T18] ( 3, 3 ) long -> rdx "field V26._id (fldOffset=0x8)" P-INDEP
-;* V64 tmp60 [V64 ] ( 0, 0 ) ref -> zero-ref "field V44._node (fldOffset=0x0)" P-DEP
-;* V65 tmp61 [V65 ] ( 0, 0 ) long -> zero-ref "field V44._id (fldOffset=0x8)" P-DEP
-;* V66 tmp62 [V66 ] ( 0, 0 ) ref -> zero-ref single-def "field V45._node (fldOffset=0x0)" P-INDEP
-;* V67 tmp63 [V67 ] ( 0, 0 ) long -> zero-ref "field V45._id (fldOffset=0x8)" P-INDEP
+; V62 tmp58 [V62,T17] ( 3, 3 ) ref -> r13 single-def "field V26._node (fldOffset=0x0)" P-INDEP
+; V63 tmp59 [V63,T18] ( 3, 3 ) long -> r12 "field V26._id (fldOffset=0x8)" P-INDEP
+;* V64 tmp60 [V64 ] ( 0, 0 ) ref -> zero-ref single-def "field V28._node (fldOffset=0x0)" P-INDEP
+;* V65 tmp61 [V65 ] ( 0, 0 ) long -> zero-ref "field V28._id (fldOffset=0x8)" P-INDEP
+;* V66 tmp62 [V66 ] ( 0, 0 ) ref -> zero-ref "field V45._node (fldOffset=0x0)" P-DEP
+;* V67 tmp63 [V67 ] ( 0, 0 ) long -> zero-ref "field V45._id (fldOffset=0x8)" P-DEP
;* V68 tmp64 [V68 ] ( 0, 0 ) ref -> zero-ref "field V49._source (fldOffset=0x0)" P-INDEP
; V69 tmp65 [V69,T13] ( 2, 4 ) ref -> r8 single-def "argument with side effect"
-; V70 PSPSym [V70,T22] ( 1, 1 ) long -> [rbp-0x50] do-not-enreg[V] "PSPSym"
+; V70 PSPSym [V70,T22] ( 1, 1 ) long -> [rbp-0x60] do-not-enreg[V] "PSPSym"
;* V71 cse0 [V71,T20] ( 0, 0 ) byref -> zero-ref "CSE #02: moderate"
;
; Lcl frame size = 56
G_M42079_IG01:
push rbp
push r15
push r14
+ push r13
+ push r12
push rbx
sub rsp, 56
- lea rbp, [rsp+0x50]
+ lea rbp, [rsp+0x60]
xor eax, eax
- mov qword ptr [rbp-0x28], rax
- mov qword ptr [rbp-0x50], rsp
- mov gword ptr [rbp-0x20], rsi
+ mov qword ptr [rbp-0x38], rax
+ mov qword ptr [rbp-0x60], rsp
+ mov gword ptr [rbp-0x30], rsi
mov rbx, rdi
- ;; size=32 bbWeight=1 PerfScore 8.25
+ ;; size=36 bbWeight=1 PerfScore 10.25
G_M42079_IG02:
- cmp gword ptr [rbp-0x20], 0
+ cmp gword ptr [rbp-0x30], 0
je SHORT G_M42079_IG03
- mov rdi, gword ptr [rbp-0x20]
+ mov rdi, gword ptr [rbp-0x30]
cmp dword ptr [rdi+0x20], 0
jne G_M42079_IG18
;; size=21 bbWeight=1 PerfScore 8.00
G_M42079_IG03:
xor rdi, rdi
- mov gword ptr [rbp-0x40], rdi
+ mov gword ptr [rbp-0x50], rdi
;; size=6 bbWeight=1 PerfScore 1.25
G_M42079_IG04:
- mov qword ptr [rbp-0x30], rdi
- cmp gword ptr [rbp-0x20], 0
+ mov qword ptr [rbp-0x40], rdi
+ cmp gword ptr [rbp-0x30], 0
je G_M42079_IG09
mov rdi, 0xD1FFAB1E ; global ptr
test byte ptr [rdi], 1
je G_M42079_IG21
;; size=34 bbWeight=1 PerfScore 8.25
G_M42079_IG05:
mov rdi, 0xD1FFAB1E ; data for System.Data.Common.DbCommand+<>c:<>9__59_0
mov r15, gword ptr [rdi]
test r15, r15
jne SHORT G_M42079_IG06
mov rdi, 0xD1FFAB1E ; System.Action`1[System.Object]
call CORINFO_HELP_NEWSFAST
mov r15, rax
mov rdi, 0xD1FFAB1E ; data for System.Data.Common.DbCommand+<>c:<>9
mov rsi, gword ptr [rdi]
test rsi, rsi
je G_M42079_IG23
lea rdi, bword ptr [r15+0x08]
call CORINFO_HELP_ASSIGN_REF
mov rdi, 0xD1FFAB1E ; code for System.Data.Common.DbCommand+<>c:<ExecuteScalarAsync>b__59_0(System.Object):this
mov qword ptr [r15+0x18], rdi
mov rdi, 0xD1FFAB1E ; data for System.Data.Common.DbCommand+<>c:<>9__59_0
mov rsi, r15
call CORINFO_HELP_ASSIGN_REF
;; size=99 bbWeight=1 PerfScore 12.75
G_M42079_IG06:
test r15, r15
je G_M42079_IG22
- mov r14, gword ptr [rbp-0x20]
+ mov r14, gword ptr [rbp-0x30]
test r14, r14
- je SHORT G_M42079_IG07
+ jne SHORT G_M42079_IG07
+ xor r13, r13
+ xor r12d, r12d
+ jmp SHORT G_M42079_IG08
+ ;; size=26 bbWeight=1 PerfScore 6.00
+G_M42079_IG07:
mov rax, 0xD1FFAB1E ; code for System.Threading.ExecutionContext:Capture():System.Threading.ExecutionContext
call [rax]System.Threading.ExecutionContext:Capture():System.Threading.ExecutionContext
mov r8, rax
mov rsi, r15
mov rdx, rbx
mov rdi, r14
xor rcx, rcx
mov rax, 0xD1FFAB1E ; code for System.Threading.CancellationTokenSource:Register(System.Delegate,System.Object,System.Threading.SynchronizationContext,System.Threading.ExecutionContext):System.Threading.CancellationTokenRegistration:this
call [rax]System.Threading.CancellationTokenSource:Register(System.Delegate,System.Object,System.Threading.SynchronizationContext,System.Threading.ExecutionContext):System.Threading.CancellationTokenRegistration:this
- jmp SHORT G_M42079_IG08
- ;; size=58 bbWeight=1 PerfScore 13.25
-G_M42079_IG07:
- xor rax, rax
- xor edx, edx
- ;; size=4 bbWeight=1 PerfScore 0.50
+ mov r13, rax
+ mov r12, rdx
+ ;; size=44 bbWeight=1 PerfScore 8.25
G_M42079_IG08:
- mov gword ptr [rbp-0x40], rax
- mov qword ptr [rbp-0x30], rdx
+ mov gword ptr [rbp-0x50], r13
+ mov qword ptr [rbp-0x40], r12
;; size=8 bbWeight=1 PerfScore 2.00
G_M42079_IG09:
mov rdi, rbx
mov rax, qword ptr [rbx]
mov rax, qword ptr [rax+0x68]
call [rax+0x18]System.Data.Common.DbCommand:ExecuteScalar():System.Object:this
mov rbx, rax
test rbx, rbx
je SHORT G_M42079_IG10
mov rdi, 0xD1FFAB1E ; System.Threading.Tasks.Task`1[System.Object]
call CORINFO_HELP_NEWSFAST
mov r15, rax
mov dword ptr [r15+0x34], 0xD1FFAB1E
lea rdi, bword ptr [r15+0x38]
mov rsi, rbx
call CORINFO_HELP_ASSIGN_REF
jmp SHORT G_M42079_IG12
;; size=61 bbWeight=1 PerfScore 15.00
G_M42079_IG10:
mov rdi, 0xD1FFAB1E ; global ptr
test byte ptr [rdi], 1
je SHORT G_M42079_IG13
;; size=15 bbWeight=1 PerfScore 4.25
G_M42079_IG11:
mov rsi, 0xD1FFAB1E ; data for System.Threading.Tasks.Task`1[System.Object]:s_defaultResultTask
mov r15, gword ptr [rsi]
;; size=13 bbWeight=1 PerfScore 2.25
G_M42079_IG12:
- mov gword ptr [rbp-0x38], r15
+ mov gword ptr [rbp-0x48], r15
jmp SHORT G_M42079_IG15
;; size=6 bbWeight=1 PerfScore 3.00
G_M42079_IG13:
mov rdi, 0xD1FFAB1E ; System.Threading.Tasks.Task`1[System.Object]
call CORINFO_HELP_GET_GCSTATIC_BASE
jmp SHORT G_M42079_IG11
;; size=17 bbWeight=0 PerfScore 0.00
G_M42079_IG14:
nop
;; size=1 bbWeight=0 PerfScore 0.00
G_M42079_IG15:
- cmp gword ptr [rbp-0x40], 0
+ cmp gword ptr [rbp-0x50], 0
je SHORT G_M42079_IG16
- mov rdi, gword ptr [rbp-0x40]
+ mov rdi, gword ptr [rbp-0x50]
mov rdi, gword ptr [rdi+0x08]
- mov rsi, qword ptr [rbp-0x30]
- mov rdx, gword ptr [rbp-0x40]
+ mov rsi, qword ptr [rbp-0x40]
+ mov rdx, gword ptr [rbp-0x50]
mov rax, 0xD1FFAB1E ; code for System.Threading.CancellationTokenSource+Registrations:Unregister(long,System.Threading.CancellationTokenSource+CallbackNode):ubyte:this
cmp dword ptr [rdi], edi
call [rax]System.Threading.CancellationTokenSource+Registrations:Unregister(long,System.Threading.CancellationTokenSource+CallbackNode):ubyte:this
test eax, eax
jne SHORT G_M42079_IG16
- mov rax, gword ptr [rbp-0x40]
+ mov rax, gword ptr [rbp-0x50]
mov rax, gword ptr [rax+0x08]
mov rbx, gword ptr [rax+0x08]
cmp dword ptr [rbx+0x20], 0
je SHORT G_M42079_IG16
cmp dword ptr [rbx+0x20], 2
je SHORT G_M42079_IG16
- mov rax, gword ptr [rbp-0x40]
+ mov rax, gword ptr [rbp-0x50]
mov rax, gword ptr [rax+0x08]
mov ebx, dword ptr [rax+0x30]
call System.Environment:get_CurrentManagedThreadId():int
cmp ebx, eax
je SHORT G_M42079_IG16
- mov rdi, gword ptr [rbp-0x40]
+ mov rdi, gword ptr [rbp-0x50]
mov rdi, gword ptr [rdi+0x08]
- mov rsi, qword ptr [rbp-0x30]
+ mov rsi, qword ptr [rbp-0x40]
mov rax, 0xD1FFAB1E ; code for System.Threading.CancellationTokenSource+Registrations:WaitForCallbackToComplete(long):this
cmp dword ptr [rdi], edi
call [rax]System.Threading.CancellationTokenSource+Registrations:WaitForCallbackToComplete(long):this
;; size=111 bbWeight=1 PerfScore 46.00
G_M42079_IG16:
- mov rax, gword ptr [rbp-0x38]
+ mov rax, gword ptr [rbp-0x48]
;; size=4 bbWeight=1 PerfScore 1.00
G_M42079_IG17:
add rsp, 56
pop rbx
+ pop r12
+ pop r13
pop r14
pop r15
pop rbp
ret
- ;; size=11 bbWeight=1 PerfScore 3.25
+ ;; size=15 bbWeight=1 PerfScore 4.25
G_M42079_IG18:
mov rdi, 0xD1FFAB1E ; global ptr
test byte ptr [rdi], 1
je G_M42079_IG24
;; size=19 bbWeight=1 PerfScore 4.25
G_M42079_IG19:
mov rdi, 0xD1FFAB1E ; data for System.Threading.CancellationTokenSource:s_canceledSource
mov rdi, gword ptr [rdi]
- mov gword ptr [rbp-0x28], rdi
- cmp gword ptr [rbp-0x28], 0
+ mov gword ptr [rbp-0x38], rdi
+ cmp gword ptr [rbp-0x38], 0
je G_M42079_IG25
- mov rdi, gword ptr [rbp-0x28]
+ mov rdi, gword ptr [rbp-0x38]
cmp dword ptr [rdi+0x20], 0
je G_M42079_IG25
mov rdi, 0xD1FFAB1E ; System.Threading.Tasks.Task`1[System.Object]
call CORINFO_HELP_NEWSFAST
mov rbx, rax
mov dword ptr [rbx+0x34], 0xD1FFAB1E
mov rdi, 0xD1FFAB1E ; System.Threading.Tasks.Task+ContingentProperties
call CORINFO_HELP_NEWSFAST
mov r15, rax
mov dword ptr [r15+0x3C], 1
lea rdi, bword ptr [r15+0x40]
- mov rsi, gword ptr [rbp-0x28]
+ mov rsi, gword ptr [rbp-0x38]
call CORINFO_HELP_ASSIGN_REF
mov dword ptr [r15+0x38], 1
lea rdi, bword ptr [rbx+0x28]
mov rsi, r15
call CORINFO_HELP_ASSIGN_REF
mov rax, rbx
;; size=129 bbWeight=1 PerfScore 21.75
G_M42079_IG20:
add rsp, 56
pop rbx
+ pop r12
+ pop r13
pop r14
pop r15
pop rbp
ret
- ;; size=11 bbWeight=1 PerfScore 3.25
+ ;; size=15 bbWeight=1 PerfScore 4.25
G_M42079_IG21:
mov rdi, 0xD1FFAB1E ; System.Data.Common.DbCommand+<>c
call CORINFO_HELP_GET_GCSTATIC_BASE
jmp G_M42079_IG05
;; size=20 bbWeight=0 PerfScore 0.00
G_M42079_IG22:
mov edi, 0x9D7
mov rsi, 0xD1FFAB1E
call CORINFO_HELP_STRCNS
mov rdi, rax
mov rax, 0xD1FFAB1E ; code for System.ArgumentNullException:Throw(System.String)
call [rax]System.ArgumentNullException:Throw(System.String)
int3
;; size=36 bbWeight=0 PerfScore 0.00
G_M42079_IG23:
mov rax, 0xD1FFAB1E ; code for System.MulticastDelegate:ThrowNullThisInDelegateToInstance()
call [rax]System.MulticastDelegate:ThrowNullThisInDelegateToInstance()
int3
;; size=13 bbWeight=0 PerfScore 0.00
G_M42079_IG24:
mov rdi, 0xD1FFAB1E ; System.Threading.CancellationTokenSource
call CORINFO_HELP_GET_GCSTATIC_BASE
jmp G_M42079_IG19
;; size=20 bbWeight=0 PerfScore 0.00
G_M42079_IG25:
mov edi, 56
mov rax, 0xD1FFAB1E ; code for System.ThrowHelper:ThrowArgumentOutOfRangeException(int)
call [rax]System.ThrowHelper:ThrowArgumentOutOfRangeException(int)
int3
;; size=18 bbWeight=0 PerfScore 0.00
G_M42079_IG26:
push rbp
push r15
push r14
+ push r13
+ push r12
push rbx
push rax
mov rbp, qword ptr [rdi]
mov qword ptr [rsp], rbp
- lea rbp, [rbp+0x50]
- ;; size=18 bbWeight=0 PerfScore 0.00
+ lea rbp, [rbp+0x60]
+ ;; size=22 bbWeight=0 PerfScore 0.00
G_M42079_IG27:
mov rdi, 0xD1FFAB1E ; System.Threading.Tasks.Task:FromException[System.Object](System.Exception):System.Threading.Tasks.Task`1[System.Object]
mov rax, 0xD1FFAB1E ; code for System.Threading.Tasks.Task:FromException[System.__Canon](System.Exception):System.Threading.Tasks.Task`1[System.__Canon]
call [rax]System.Threading.Tasks.Task:FromException[System.__Canon](System.Exception):System.Threading.Tasks.Task`1[System.__Canon]
- mov gword ptr [rbp-0x38], rax
+ mov gword ptr [rbp-0x48], rax
lea rax, G_M42079_IG14
;; size=33 bbWeight=0 PerfScore 0.00
G_M42079_IG28:
add rsp, 8
pop rbx
+ pop r12
+ pop r13
pop r14
pop r15
pop rbp
ret
- ;; size=11 bbWeight=0 PerfScore 0.00
+ ;; size=15 bbWeight=0 PerfScore 0.00
G_M42079_IG29:
push rbp
push r15
push r14
+ push r13
+ push r12
push rbx
push rax
mov rbp, qword ptr [rdi]
mov qword ptr [rsp], rbp
- lea rbp, [rbp+0x50]
- ;; size=18 bbWeight=0 PerfScore 0.00
+ lea rbp, [rbp+0x60]
+ ;; size=22 bbWeight=0 PerfScore 0.00
G_M42079_IG30:
- cmp gword ptr [rbp-0x40], 0
+ cmp gword ptr [rbp-0x50], 0
je SHORT G_M42079_IG31
- mov rdi, gword ptr [rbp-0x40]
+ mov rdi, gword ptr [rbp-0x50]
mov rdi, gword ptr [rdi+0x08]
- mov rsi, qword ptr [rbp-0x30]
- mov rdx, gword ptr [rbp-0x40]
+ mov rsi, qword ptr [rbp-0x40]
+ mov rdx, gword ptr [rbp-0x50]
mov rax, 0xD1FFAB1E ; code for System.Threading.CancellationTokenSource+Registrations:Unregister(long,System.Threading.CancellationTokenSource+CallbackNode):ubyte:this
cmp dword ptr [rdi], edi
call [rax]System.Threading.CancellationTokenSource+Registrations:Unregister(long,System.Threading.CancellationTokenSource+CallbackNode):ubyte:this
test eax, eax
jne SHORT G_M42079_IG31
- mov rax, gword ptr [rbp-0x40]
+ mov rax, gword ptr [rbp-0x50]
mov rax, gword ptr [rax+0x08]
mov rbx, gword ptr [rax+0x08]
cmp dword ptr [rbx+0x20], 0
je SHORT G_M42079_IG31
cmp dword ptr [rbx+0x20], 2
je SHORT G_M42079_IG31
- mov rax, gword ptr [rbp-0x40]
+ mov rax, gword ptr [rbp-0x50]
mov rax, gword ptr [rax+0x08]
mov ebx, dword ptr [rax+0x30]
call System.Environment:get_CurrentManagedThreadId():int
cmp ebx, eax
je SHORT G_M42079_IG31
- mov rdi, gword ptr [rbp-0x40]
+ mov rdi, gword ptr [rbp-0x50]
mov rdi, gword ptr [rdi+0x08]
- mov rsi, qword ptr [rbp-0x30]
+ mov rsi, qword ptr [rbp-0x40]
mov rax, 0xD1FFAB1E ; code for System.Threading.CancellationTokenSource+Registrations:WaitForCallbackToComplete(long):this
cmp dword ptr [rdi], edi
call [rax]System.Threading.CancellationTokenSource+Registrations:WaitForCallbackToComplete(long):this
;; size=111 bbWeight=0 PerfScore 0.00
G_M42079_IG31:
nop
;; size=1 bbWeight=0 PerfScore 0.00
G_M42079_IG32:
add rsp, 8
pop rbx
+ pop r12
+ pop r13
pop r14
pop r15
pop rbp
ret
- ;; size=11 bbWeight=0 PerfScore 0.00
+ ;; size=15 bbWeight=0 PerfScore 0.00
-; Total bytes of code 970, prolog size 32, PerfScore 158.25, instruction count 241, allocated bytes for code 970 (MethodHash=134a5ba0) for method System.Data.Common.DbCommand:ExecuteScalarAsync(System.Threading.CancellationToken):System.Threading.Tasks.Task`1[System.Object]:this (FullOpts)
+; Total bytes of code 1006, prolog size 36, PerfScore 162.75, instruction count 257, allocated bytes for code 1006 (MethodHash=134a5ba0) for method System.Data.Common.DbCommand:ExecuteScalarAsync(System.Threading.CancellationToken):System.Threading.Tasks.Task`1[System.Object]:this (FullOpts)
; ============================================================
35 (7.51 % of base) - System.Globalization.TimeSpanParse+TimeSpanRawInfo:FullAppCompatMatch(System.Globalization.TimeSpanFormat+FormatLiterals):ubyte:this
; Assembly listing for method System.Globalization.TimeSpanParse+TimeSpanRawInfo:FullAppCompatMatch(System.Globalization.TimeSpanFormat+FormatLiterals):ubyte:this (FullOpts)
; Emitting BLENDED_CODE for X64 with AVX - Unix
; FullOpts code
; optimized code
; rbp based frame
; partially interruptible
; No PGO data
; 0 inlinees with PGO data; 39 single block inlinees; 15 inlinees without PGO data
; Final local variable assignments
;
; V00 this [V00,T00] ( 14, 8.50) byref -> rbx this single-def
; V01 arg1 [V01,T29] ( 2, 1.50) struct (40) [rbp+0x10] do-not-enreg[SF] ld-addr-op single-def <System.Globalization.TimeSpanFormat+FormatLiterals>
;# V02 OutArgs [V02 ] ( 1, 1 ) struct ( 0) [rsp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
;* V03 tmp1 [V03 ] ( 0, 0 ) struct (16) zero-ref "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
;* V04 tmp2 [V04 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V05 tmp3 [V05 ] ( 0, 0 ) struct (16) zero-ref "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
;* V06 tmp4 [V06 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V07 tmp5 [V07 ] ( 0, 0 ) struct (16) zero-ref "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
;* V08 tmp6 [V08 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V09 tmp7 [V09 ] ( 0, 0 ) struct (16) zero-ref "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
;* V10 tmp8 [V10 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V11 tmp9 [V11 ] ( 0, 0 ) struct (16) zero-ref "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
;* V12 tmp10 [V12 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V13 tmp11 [V13 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V14 tmp12 [V14,T01] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.String>
-;* V15 tmp13 [V15 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V16 tmp14 [V16 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V15 tmp13 [V15 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V16 tmp14 [V16 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V17 tmp15 [V17,T14] ( 2, 2 ) byref -> rax single-def "Inlining Arg"
; V18 tmp16 [V18,T19] ( 2, 2 ) int -> rsi "Inlining Arg"
; V19 tmp17 [V19,T40] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V20 tmp18 [V20 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V21 tmp19 [V21 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V22 tmp20 [V22,T41] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V23 tmp21 [V23 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V24 tmp22 [V24 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V25 tmp23 [V25 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V26 tmp24 [V26 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V27 tmp25 [V27 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
;* V28 tmp26 [V28 ] ( 0, 0 ) byref -> zero-ref single-def "impAppendStmt"
;* V29 tmp27 [V29 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V30 tmp28 [V30 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V31 tmp29 [V31 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V32 tmp30 [V32 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V33 tmp31 [V33 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V34 tmp32 [V34,T02] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.String>
-;* V35 tmp33 [V35 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V36 tmp34 [V36 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V35 tmp33 [V35 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V36 tmp34 [V36 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V37 tmp35 [V37,T15] ( 2, 2 ) byref -> rax single-def "Inlining Arg"
; V38 tmp36 [V38,T20] ( 2, 2 ) int -> rsi "Inlining Arg"
; V39 tmp37 [V39,T42] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V40 tmp38 [V40 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V41 tmp39 [V41 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V42 tmp40 [V42,T43] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V43 tmp41 [V43 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V44 tmp42 [V44 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V45 tmp43 [V45 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V46 tmp44 [V46 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V47 tmp45 [V47 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
;* V48 tmp46 [V48 ] ( 0, 0 ) byref -> zero-ref single-def "impAppendStmt"
;* V49 tmp47 [V49 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V50 tmp48 [V50 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V51 tmp49 [V51 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V52 tmp50 [V52 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V53 tmp51 [V53 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V54 tmp52 [V54,T03] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.String>
-;* V55 tmp53 [V55 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V56 tmp54 [V56 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V55 tmp53 [V55 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V56 tmp54 [V56 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V57 tmp55 [V57,T16] ( 2, 2 ) byref -> rax single-def "Inlining Arg"
; V58 tmp56 [V58,T21] ( 2, 2 ) int -> rsi "Inlining Arg"
; V59 tmp57 [V59,T44] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V60 tmp58 [V60 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V61 tmp59 [V61 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V62 tmp60 [V62,T45] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V63 tmp61 [V63 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V64 tmp62 [V64 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V65 tmp63 [V65 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V66 tmp64 [V66 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V67 tmp65 [V67 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
;* V68 tmp66 [V68 ] ( 0, 0 ) byref -> zero-ref single-def "impAppendStmt"
;* V69 tmp67 [V69 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V70 tmp68 [V70 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V71 tmp69 [V71 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V72 tmp70 [V72 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V73 tmp71 [V73 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V74 tmp72 [V74,T04] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.String>
-;* V75 tmp73 [V75 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V76 tmp74 [V76 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V75 tmp73 [V75 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V76 tmp74 [V76 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V77 tmp75 [V77,T17] ( 2, 2 ) byref -> rax single-def "Inlining Arg"
; V78 tmp76 [V78,T22] ( 2, 2 ) int -> rsi "Inlining Arg"
; V79 tmp77 [V79,T46] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V80 tmp78 [V80 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V81 tmp79 [V81 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V82 tmp80 [V82,T47] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V83 tmp81 [V83 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V84 tmp82 [V84 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V85 tmp83 [V85 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V86 tmp84 [V86 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V87 tmp85 [V87 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
;* V88 tmp86 [V88 ] ( 0, 0 ) byref -> zero-ref single-def "impAppendStmt"
;* V89 tmp87 [V89 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V90 tmp88 [V90 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V91 tmp89 [V91 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V92 tmp90 [V92 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V93 tmp91 [V93 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V94 tmp92 [V94,T05] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.String>
-;* V95 tmp93 [V95 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V96 tmp94 [V96 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V95 tmp93 [V95 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V96 tmp94 [V96 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V97 tmp95 [V97,T18] ( 2, 2 ) byref -> rax single-def "Inlining Arg"
; V98 tmp96 [V98,T23] ( 2, 2 ) int -> rsi "Inlining Arg"
; V99 tmp97 [V99,T13] ( 4, 2 ) ubyte -> rax "Inline return value spill temp"
;* V100 tmp98 [V100 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V101 tmp99 [V101 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V102 tmp100 [V102,T48] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V103 tmp101 [V103 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V104 tmp102 [V104 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V105 tmp103 [V105 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V106 tmp104 [V106 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V107 tmp105 [V107 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
;* V108 tmp106 [V108 ] ( 0, 0 ) byref -> zero-ref single-def "impAppendStmt"
;* V109 tmp107 [V109 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V110 tmp108 [V110 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V111 tmp109 [V111 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V112 tmp110 [V112 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V113 tmp111 [V113,T30] ( 2, 1 ) byref -> rdi single-def "field V03._reference (fldOffset=0x0)" P-INDEP
; V114 tmp112 [V114,T49] ( 2, 1 ) int -> rdx "field V03._length (fldOffset=0x8)" P-INDEP
;* V115 tmp113 [V115 ] ( 0, 0 ) byref -> zero-ref single-def "field V04._reference (fldOffset=0x0)" P-INDEP
;* V116 tmp114 [V116 ] ( 0, 0 ) int -> zero-ref "field V04._length (fldOffset=0x8)" P-INDEP
; V117 tmp115 [V117,T31] ( 2, 1 ) byref -> rdi single-def "field V05._reference (fldOffset=0x0)" P-INDEP
; V118 tmp116 [V118,T50] ( 2, 1 ) int -> rdx "field V05._length (fldOffset=0x8)" P-INDEP
;* V119 tmp117 [V119 ] ( 0, 0 ) byref -> zero-ref single-def "field V06._reference (fldOffset=0x0)" P-INDEP
;* V120 tmp118 [V120 ] ( 0, 0 ) int -> zero-ref "field V06._length (fldOffset=0x8)" P-INDEP
; V121 tmp119 [V121,T32] ( 2, 1 ) byref -> rdi single-def "field V07._reference (fldOffset=0x0)" P-INDEP
; V122 tmp120 [V122,T51] ( 2, 1 ) int -> rdx "field V07._length (fldOffset=0x8)" P-INDEP
;* V123 tmp121 [V123 ] ( 0, 0 ) byref -> zero-ref single-def "field V08._reference (fldOffset=0x0)" P-INDEP
;* V124 tmp122 [V124 ] ( 0, 0 ) int -> zero-ref "field V08._length (fldOffset=0x8)" P-INDEP
; V125 tmp123 [V125,T33] ( 2, 1 ) byref -> rdi single-def "field V09._reference (fldOffset=0x0)" P-INDEP
; V126 tmp124 [V126,T52] ( 2, 1 ) int -> rdx "field V09._length (fldOffset=0x8)" P-INDEP
;* V127 tmp125 [V127 ] ( 0, 0 ) byref -> zero-ref single-def "field V10._reference (fldOffset=0x0)" P-INDEP
;* V128 tmp126 [V128 ] ( 0, 0 ) int -> zero-ref "field V10._length (fldOffset=0x8)" P-INDEP
; V129 tmp127 [V129,T34] ( 2, 1 ) byref -> rdi single-def "field V11._reference (fldOffset=0x0)" P-INDEP
; V130 tmp128 [V130,T53] ( 2, 1 ) int -> rdx "field V11._length (fldOffset=0x8)" P-INDEP
;* V131 tmp129 [V131 ] ( 0, 0 ) byref -> zero-ref single-def "field V12._reference (fldOffset=0x0)" P-INDEP
;* V132 tmp130 [V132 ] ( 0, 0 ) int -> zero-ref "field V12._length (fldOffset=0x8)" P-INDEP
-; V133 tmp131 [V133,T24] ( 3, 1.50) byref -> rax "field V13._reference (fldOffset=0x0)" P-INDEP
-; V134 tmp132 [V134,T07] ( 5, 2.50) int -> rsi "field V13._length (fldOffset=0x8)" P-INDEP
-; V135 tmp133 [V135,T35] ( 2, 1 ) byref -> rax single-def "field V15._reference (fldOffset=0x0)" P-INDEP
-; V136 tmp134 [V136,T54] ( 2, 1 ) int -> rsi "field V15._length (fldOffset=0x8)" P-INDEP
-;* V137 tmp135 [V137 ] ( 0, 0 ) byref -> zero-ref single-def "field V16._reference (fldOffset=0x0)" P-INDEP
-;* V138 tmp136 [V138 ] ( 0, 0 ) int -> zero-ref "field V16._length (fldOffset=0x8)" P-INDEP
+; V133 tmp131 [V133,T24] ( 3, 1.50) byref -> registers "field V13._reference (fldOffset=0x0)" P-INDEP
+; V134 tmp132 [V134,T07] ( 5, 2.50) int -> registers "field V13._length (fldOffset=0x8)" P-INDEP
+;* V135 tmp133 [V135 ] ( 0, 0 ) byref -> zero-ref single-def "field V15._reference (fldOffset=0x0)" P-INDEP
+;* V136 tmp134 [V136 ] ( 0, 0 ) int -> zero-ref "field V15._length (fldOffset=0x8)" P-INDEP
+; V137 tmp135 [V137,T35] ( 2, 1 ) byref -> rax single-def "field V16._reference (fldOffset=0x0)" P-INDEP
+; V138 tmp136 [V138,T54] ( 2, 1 ) int -> rsi "field V16._length (fldOffset=0x8)" P-INDEP
;* V139 tmp137 [V139 ] ( 0, 0 ) byref -> zero-ref single-def "field V20._reference (fldOffset=0x0)" P-INDEP
;* V140 tmp138 [V140 ] ( 0, 0 ) int -> zero-ref "field V20._length (fldOffset=0x8)" P-INDEP
;* V141 tmp139 [V141 ] ( 0, 0 ) byref -> zero-ref single-def "field V21._reference (fldOffset=0x0)" P-INDEP
;* V142 tmp140 [V142 ] ( 0, 0 ) int -> zero-ref "field V21._length (fldOffset=0x8)" P-INDEP
;* V143 tmp141 [V143 ] ( 0, 0 ) byref -> zero-ref single-def "field V23._reference (fldOffset=0x0)" P-INDEP
;* V144 tmp142 [V144 ] ( 0, 0 ) int -> zero-ref "field V23._length (fldOffset=0x8)" P-INDEP
;* V145 tmp143 [V145 ] ( 0, 0 ) byref -> zero-ref single-def "field V25._reference (fldOffset=0x0)" P-INDEP
;* V146 tmp144 [V146 ] ( 0, 0 ) int -> zero-ref "field V25._length (fldOffset=0x8)" P-INDEP
;* V147 tmp145 [V147 ] ( 0, 0 ) byref -> zero-ref single-def "field V29._reference (fldOffset=0x0)" P-INDEP
;* V148 tmp146 [V148 ] ( 0, 0 ) int -> zero-ref "field V29._length (fldOffset=0x8)" P-INDEP
;* V149 tmp147 [V149 ] ( 0, 0 ) byref -> zero-ref single-def "field V30._reference (fldOffset=0x0)" P-INDEP
;* V150 tmp148 [V150 ] ( 0, 0 ) int -> zero-ref "field V30._length (fldOffset=0x8)" P-INDEP
;* V151 tmp149 [V151 ] ( 0, 0 ) byref -> zero-ref "field V31._reference (fldOffset=0x0)" P-INDEP
;* V152 tmp150 [V152 ] ( 0, 0 ) int -> zero-ref "field V31._length (fldOffset=0x8)" P-INDEP
;* V153 tmp151 [V153 ] ( 0, 0 ) byref -> zero-ref "field V32._reference (fldOffset=0x0)" P-INDEP
;* V154 tmp152 [V154 ] ( 0, 0 ) int -> zero-ref "field V32._length (fldOffset=0x8)" P-INDEP
-; V155 tmp153 [V155,T25] ( 3, 1.50) byref -> rax "field V33._reference (fldOffset=0x0)" P-INDEP
-; V156 tmp154 [V156,T08] ( 5, 2.50) int -> rsi "field V33._length (fldOffset=0x8)" P-INDEP
-; V157 tmp155 [V157,T36] ( 2, 1 ) byref -> rax single-def "field V35._reference (fldOffset=0x0)" P-INDEP
-; V158 tmp156 [V158,T55] ( 2, 1 ) int -> rsi "field V35._length (fldOffset=0x8)" P-INDEP
-;* V159 tmp157 [V159 ] ( 0, 0 ) byref -> zero-ref single-def "field V36._reference (fldOffset=0x0)" P-INDEP
-;* V160 tmp158 [V160 ] ( 0, 0 ) int -> zero-ref "field V36._length (fldOffset=0x8)" P-INDEP
+; V155 tmp153 [V155,T25] ( 3, 1.50) byref -> registers "field V33._reference (fldOffset=0x0)" P-INDEP
+; V156 tmp154 [V156,T08] ( 5, 2.50) int -> registers "field V33._length (fldOffset=0x8)" P-INDEP
+;* V157 tmp155 [V157 ] ( 0, 0 ) byref -> zero-ref single-def "field V35._reference (fldOffset=0x0)" P-INDEP
+;* V158 tmp156 [V158 ] ( 0, 0 ) int -> zero-ref "field V35._length (fldOffset=0x8)" P-INDEP
+; V159 tmp157 [V159,T36] ( 2, 1 ) byref -> rax single-def "field V36._reference (fldOffset=0x0)" P-INDEP
+; V160 tmp158 [V160,T55] ( 2, 1 ) int -> rsi "field V36._length (fldOffset=0x8)" P-INDEP
;* V161 tmp159 [V161 ] ( 0, 0 ) byref -> zero-ref single-def "field V40._reference (fldOffset=0x0)" P-INDEP
;* V162 tmp160 [V162 ] ( 0, 0 ) int -> zero-ref "field V40._length (fldOffset=0x8)" P-INDEP
;* V163 tmp161 [V163 ] ( 0, 0 ) byref -> zero-ref single-def "field V41._reference (fldOffset=0x0)" P-INDEP
;* V164 tmp162 [V164 ] ( 0, 0 ) int -> zero-ref "field V41._length (fldOffset=0x8)" P-INDEP
;* V165 tmp163 [V165 ] ( 0, 0 ) byref -> zero-ref single-def "field V43._reference (fldOffset=0x0)" P-INDEP
;* V166 tmp164 [V166 ] ( 0, 0 ) int -> zero-ref "field V43._length (fldOffset=0x8)" P-INDEP
;* V167 tmp165 [V167 ] ( 0, 0 ) byref -> zero-ref single-def "field V45._reference (fldOffset=0x0)" P-INDEP
;* V168 tmp166 [V168 ] ( 0, 0 ) int -> zero-ref "field V45._length (fldOffset=0x8)" P-INDEP
;* V169 tmp167 [V169 ] ( 0, 0 ) byref -> zero-ref single-def "field V49._reference (fldOffset=0x0)" P-INDEP
;* V170 tmp168 [V170 ] ( 0, 0 ) int -> zero-ref "field V49._length (fldOffset=0x8)" P-INDEP
;* V171 tmp169 [V171 ] ( 0, 0 ) byref -> zero-ref single-def "field V50._reference (fldOffset=0x0)" P-INDEP
;* V172 tmp170 [V172 ] ( 0, 0 ) int -> zero-ref "field V50._length (fldOffset=0x8)" P-INDEP
;* V173 tmp171 [V173 ] ( 0, 0 ) byref -> zero-ref "field V51._reference (fldOffset=0x0)" P-INDEP
;* V174 tmp172 [V174 ] ( 0, 0 ) int -> zero-ref "field V51._length (fldOffset=0x8)" P-INDEP
;* V175 tmp173 [V175 ] ( 0, 0 ) byref -> zero-ref "field V52._reference (fldOffset=0x0)" P-INDEP
;* V176 tmp174 [V176 ] ( 0, 0 ) int -> zero-ref "field V52._length (fldOffset=0x8)" P-INDEP
-; V177 tmp175 [V177,T26] ( 3, 1.50) byref -> rax "field V53._reference (fldOffset=0x0)" P-INDEP
-; V178 tmp176 [V178,T09] ( 5, 2.50) int -> rsi "field V53._length (fldOffset=0x8)" P-INDEP
-; V179 tmp177 [V179,T37] ( 2, 1 ) byref -> rax single-def "field V55._reference (fldOffset=0x0)" P-INDEP
-; V180 tmp178 [V180,T56] ( 2, 1 ) int -> rsi "field V55._length (fldOffset=0x8)" P-INDEP
-;* V181 tmp179 [V181 ] ( 0, 0 ) byref -> zero-ref single-def "field V56._reference (fldOffset=0x0)" P-INDEP
-;* V182 tmp180 [V182 ] ( 0, 0 ) int -> zero-ref "field V56._length (fldOffset=0x8)" P-INDEP
+; V177 tmp175 [V177,T26] ( 3, 1.50) byref -> registers "field V53._reference (fldOffset=0x0)" P-INDEP
+; V178 tmp176 [V178,T09] ( 5, 2.50) int -> registers "field V53._length (fldOffset=0x8)" P-INDEP
+;* V179 tmp177 [V179 ] ( 0, 0 ) byref -> zero-ref single-def "field V55._reference (fldOffset=0x0)" P-INDEP
+;* V180 tmp178 [V180 ] ( 0, 0 ) int -> zero-ref "field V55._length (fldOffset=0x8)" P-INDEP
+; V181 tmp179 [V181,T37] ( 2, 1 ) byref -> rax single-def "field V56._reference (fldOffset=0x0)" P-INDEP
+; V182 tmp180 [V182,T56] ( 2, 1 ) int -> rsi "field V56._length (fldOffset=0x8)" P-INDEP
;* V183 tmp181 [V183 ] ( 0, 0 ) byref -> zero-ref single-def "field V60._reference (fldOffset=0x0)" P-INDEP
;* V184 tmp182 [V184 ] ( 0, 0 ) int -> zero-ref "field V60._length (fldOffset=0x8)" P-INDEP
;* V185 tmp183 [V185 ] ( 0, 0 ) byref -> zero-ref single-def "field V61._reference (fldOffset=0x0)" P-INDEP
;* V186 tmp184 [V186 ] ( 0, 0 ) int -> zero-ref "field V61._length (fldOffset=0x8)" P-INDEP
;* V187 tmp185 [V187 ] ( 0, 0 ) byref -> zero-ref single-def "field V63._reference (fldOffset=0x0)" P-INDEP
;* V188 tmp186 [V188 ] ( 0, 0 ) int -> zero-ref "field V63._length (fldOffset=0x8)" P-INDEP
;* V189 tmp187 [V189 ] ( 0, 0 ) byref -> zero-ref single-def "field V65._reference (fldOffset=0x0)" P-INDEP
;* V190 tmp188 [V190 ] ( 0, 0 ) int -> zero-ref "field V65._length (fldOffset=0x8)" P-INDEP
;* V191 tmp189 [V191 ] ( 0, 0 ) byref -> zero-ref single-def "field V69._reference (fldOffset=0x0)" P-INDEP
;* V192 tmp190 [V192 ] ( 0, 0 ) int -> zero-ref "field V69._length (fldOffset=0x8)" P-INDEP
;* V193 tmp191 [V193 ] ( 0, 0 ) byref -> zero-ref single-def "field V70._reference (fldOffset=0x0)" P-INDEP
;* V194 tmp192 [V194 ] ( 0, 0 ) int -> zero-ref "field V70._length (fldOffset=0x8)" P-INDEP
;* V195 tmp193 [V195 ] ( 0, 0 ) byref -> zero-ref "field V71._reference (fldOffset=0x0)" P-INDEP
;* V196 tmp194 [V196 ] ( 0, 0 ) int -> zero-ref "field V71._length (fldOffset=0x8)" P-INDEP
;* V197 tmp195 [V197 ] ( 0, 0 ) byref -> zero-ref "field V72._reference (fldOffset=0x0)" P-INDEP
;* V198 tmp196 [V198 ] ( 0, 0 ) int -> zero-ref "field V72._length (fldOffset=0x8)" P-INDEP
-; V199 tmp197 [V199,T27] ( 3, 1.50) byref -> rax "field V73._reference (fldOffset=0x0)" P-INDEP
-; V200 tmp198 [V200,T10] ( 5, 2.50) int -> rsi "field V73._length (fldOffset=0x8)" P-INDEP
-; V201 tmp199 [V201,T38] ( 2, 1 ) byref -> rax single-def "field V75._reference (fldOffset=0x0)" P-INDEP
-; V202 tmp200 [V202,T57] ( 2, 1 ) int -> rsi "field V75._length (fldOffset=0x8)" P-INDEP
-;* V203 tmp201 [V203 ] ( 0, 0 ) byref -> zero-ref single-def "field V76._reference (fldOffset=0x0)" P-INDEP
-;* V204 tmp202 [V204 ] ( 0, 0 ) int -> zero-ref "field V76._length (fldOffset=0x8)" P-INDEP
+; V199 tmp197 [V199,T27] ( 3, 1.50) byref -> registers "field V73._reference (fldOffset=0x0)" P-INDEP
+; V200 tmp198 [V200,T10] ( 5, 2.50) int -> registers "field V73._length (fldOffset=0x8)" P-INDEP
+;* V201 tmp199 [V201 ] ( 0, 0 ) byref -> zero-ref single-def "field V75._reference (fldOffset=0x0)" P-INDEP
+;* V202 tmp200 [V202 ] ( 0, 0 ) int -> zero-ref "field V75._length (fldOffset=0x8)" P-INDEP
+; V203 tmp201 [V203,T38] ( 2, 1 ) byref -> rax single-def "field V76._reference (fldOffset=0x0)" P-INDEP
+; V204 tmp202 [V204,T57] ( 2, 1 ) int -> rsi "field V76._length (fldOffset=0x8)" P-INDEP
;* V205 tmp203 [V205 ] ( 0, 0 ) byref -> zero-ref single-def "field V80._reference (fldOffset=0x0)" P-INDEP
;* V206 tmp204 [V206 ] ( 0, 0 ) int -> zero-ref "field V80._length (fldOffset=0x8)" P-INDEP
;* V207 tmp205 [V207 ] ( 0, 0 ) byref -> zero-ref single-def "field V81._reference (fldOffset=0x0)" P-INDEP
;* V208 tmp206 [V208 ] ( 0, 0 ) int -> zero-ref "field V81._length (fldOffset=0x8)" P-INDEP
;* V209 tmp207 [V209 ] ( 0, 0 ) byref -> zero-ref single-def "field V83._reference (fldOffset=0x0)" P-INDEP
;* V210 tmp208 [V210 ] ( 0, 0 ) int -> zero-ref "field V83._length (fldOffset=0x8)" P-INDEP
;* V211 tmp209 [V211 ] ( 0, 0 ) byref -> zero-ref single-def "field V85._reference (fldOffset=0x0)" P-INDEP
;* V212 tmp210 [V212 ] ( 0, 0 ) int -> zero-ref "field V85._length (fldOffset=0x8)" P-INDEP
;* V213 tmp211 [V213 ] ( 0, 0 ) byref -> zero-ref single-def "field V89._reference (fldOffset=0x0)" P-INDEP
;* V214 tmp212 [V214 ] ( 0, 0 ) int -> zero-ref "field V89._length (fldOffset=0x8)" P-INDEP
;* V215 tmp213 [V215 ] ( 0, 0 ) byref -> zero-ref single-def "field V90._reference (fldOffset=0x0)" P-INDEP
;* V216 tmp214 [V216 ] ( 0, 0 ) int -> zero-ref "field V90._length (fldOffset=0x8)" P-INDEP
;* V217 tmp215 [V217 ] ( 0, 0 ) byref -> zero-ref "field V91._reference (fldOffset=0x0)" P-INDEP
;* V218 tmp216 [V218 ] ( 0, 0 ) int -> zero-ref "field V91._length (fldOffset=0x8)" P-INDEP
;* V219 tmp217 [V219 ] ( 0, 0 ) byref -> zero-ref "field V92._reference (fldOffset=0x0)" P-INDEP
;* V220 tmp218 [V220 ] ( 0, 0 ) int -> zero-ref "field V92._length (fldOffset=0x8)" P-INDEP
-; V221 tmp219 [V221,T28] ( 3, 1.50) byref -> rax "field V93._reference (fldOffset=0x0)" P-INDEP
-; V222 tmp220 [V222,T11] ( 5, 2.50) int -> rsi "field V93._length (fldOffset=0x8)" P-INDEP
-; V223 tmp221 [V223,T39] ( 2, 1 ) byref -> rax single-def "field V95._reference (fldOffset=0x0)" P-INDEP
-; V224 tmp222 [V224,T58] ( 2, 1 ) int -> rsi "field V95._length (fldOffset=0x8)" P-INDEP
-;* V225 tmp223 [V225 ] ( 0, 0 ) byref -> zero-ref single-def "field V96._reference (fldOffset=0x0)" P-INDEP
-;* V226 tmp224 [V226 ] ( 0, 0 ) int -> zero-ref "field V96._length (fldOffset=0x8)" P-INDEP
+; V221 tmp219 [V221,T28] ( 3, 1.50) byref -> registers "field V93._reference (fldOffset=0x0)" P-INDEP
+; V222 tmp220 [V222,T11] ( 5, 2.50) int -> registers "field V93._length (fldOffset=0x8)" P-INDEP
+;* V223 tmp221 [V223 ] ( 0, 0 ) byref -> zero-ref single-def "field V95._reference (fldOffset=0x0)" P-INDEP
+;* V224 tmp222 [V224 ] ( 0, 0 ) int -> zero-ref "field V95._length (fldOffset=0x8)" P-INDEP
+; V225 tmp223 [V225,T39] ( 2, 1 ) byref -> rax single-def "field V96._reference (fldOffset=0x0)" P-INDEP
+; V226 tmp224 [V226,T58] ( 2, 1 ) int -> rsi "field V96._length (fldOffset=0x8)" P-INDEP
;* V227 tmp225 [V227 ] ( 0, 0 ) byref -> zero-ref single-def "field V100._reference (fldOffset=0x0)" P-INDEP
;* V228 tmp226 [V228 ] ( 0, 0 ) int -> zero-ref "field V100._length (fldOffset=0x8)" P-INDEP
;* V229 tmp227 [V229 ] ( 0, 0 ) byref -> zero-ref single-def "field V101._reference (fldOffset=0x0)" P-INDEP
;* V230 tmp228 [V230 ] ( 0, 0 ) int -> zero-ref "field V101._length (fldOffset=0x8)" P-INDEP
;* V231 tmp229 [V231 ] ( 0, 0 ) byref -> zero-ref single-def "field V103._reference (fldOffset=0x0)" P-INDEP
;* V232 tmp230 [V232 ] ( 0, 0 ) int -> zero-ref "field V103._length (fldOffset=0x8)" P-INDEP
;* V233 tmp231 [V233 ] ( 0, 0 ) byref -> zero-ref single-def "field V105._reference (fldOffset=0x0)" P-INDEP
;* V234 tmp232 [V234 ] ( 0, 0 ) int -> zero-ref "field V105._length (fldOffset=0x8)" P-INDEP
;* V235 tmp233 [V235 ] ( 0, 0 ) byref -> zero-ref single-def "field V109._reference (fldOffset=0x0)" P-INDEP
;* V236 tmp234 [V236 ] ( 0, 0 ) int -> zero-ref "field V109._length (fldOffset=0x8)" P-INDEP
;* V237 tmp235 [V237 ] ( 0, 0 ) byref -> zero-ref single-def "field V110._reference (fldOffset=0x0)" P-INDEP
;* V238 tmp236 [V238 ] ( 0, 0 ) int -> zero-ref "field V110._length (fldOffset=0x8)" P-INDEP
;* V239 tmp237 [V239 ] ( 0, 0 ) byref -> zero-ref "field V111._reference (fldOffset=0x0)" P-INDEP
;* V240 tmp238 [V240 ] ( 0, 0 ) int -> zero-ref "field V111._length (fldOffset=0x8)" P-INDEP
;* V241 tmp239 [V241 ] ( 0, 0 ) byref -> zero-ref "field V112._reference (fldOffset=0x0)" P-INDEP
;* V242 tmp240 [V242 ] ( 0, 0 ) int -> zero-ref "field V112._length (fldOffset=0x8)" P-INDEP
; V243 tmp241 [V243,T06] ( 6, 3.50) ref -> r15 single-def "V01.[008..016)"
; V244 cse0 [V244,T12] ( 5, 2.50) int -> r14 "CSE #01: moderate"
;
; Lcl frame size = 8
G_M47843_IG01:
push rbp
push r15
push r14
push rbx
push rax
lea rbp, [rsp+0x20]
mov rbx, rdi
;; size=15 bbWeight=1 PerfScore 5.75
G_M47843_IG02:
mov r15, gword ptr [rbp+0x18]
cmp dword ptr [rbx+0x14], 5
jne G_M47843_IG15
;; size=14 bbWeight=1 PerfScore 5.00
G_M47843_IG03:
cmp dword ptr [rbx+0x18], 4
jne G_M47843_IG15
mov rdi, bword ptr [rbx+0x110]
mov edx, dword ptr [rbx+0x118]
mov r14d, dword ptr [r15+0x08]
test r14d, r14d
je G_M47843_IG23
mov rsi, gword ptr [r15+0x10]
test rsi, rsi
- je SHORT G_M47843_IG04
+ jne SHORT G_M47843_IG04
+ xor rsi, rsi
+ xor eax, eax
+ mov ecx, eax
+ mov rax, rsi
+ mov esi, ecx
+ jmp SHORT G_M47843_IG05
+ ;; size=58 bbWeight=0.50 PerfScore 8.88
+G_M47843_IG04:
lea rax, bword ptr [rsi+0x0C]
mov esi, dword ptr [rsi+0x08]
- jmp SHORT G_M47843_IG05
- ;; size=54 bbWeight=0.50 PerfScore 9.50
-G_M47843_IG04:
- xor rax, rax
- xor esi, esi
- ;; size=4 bbWeight=0.50 PerfScore 0.25
+ ;; size=7 bbWeight=0.50 PerfScore 1.25
G_M47843_IG05:
cmp edx, esi
jne G_M47843_IG15
test esi, esi
je SHORT G_M47843_IG06
mov edx, esi
add rdx, rdx
mov rsi, rax
mov rax, 0xD1FFAB1E ; code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
call [rax]System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
test eax, eax
je G_M47843_IG15
;; size=40 bbWeight=0.50 PerfScore 3.88
G_M47843_IG06:
mov rdi, bword ptr [rbx+0x120]
mov edx, dword ptr [rbx+0x128]
cmp r14d, 1
jbe G_M47843_IG23
mov rsi, gword ptr [r15+0x18]
test rsi, rsi
- je SHORT G_M47843_IG07
+ jne SHORT G_M47843_IG07
+ xor rsi, rsi
+ xor eax, eax
+ mov ecx, eax
+ mov rax, rsi
+ mov esi, ecx
+ jmp SHORT G_M47843_IG08
+ ;; size=45 bbWeight=0.50 PerfScore 5.88
+G_M47843_IG07:
lea rax, bword ptr [rsi+0x0C]
mov esi, dword ptr [rsi+0x08]
- jmp SHORT G_M47843_IG08
- ;; size=41 bbWeight=0.50 PerfScore 6.50
-G_M47843_IG07:
- xor rax, rax
- xor esi, esi
- ;; size=4 bbWeight=0.50 PerfScore 0.25
+ ;; size=7 bbWeight=0.50 PerfScore 1.25
G_M47843_IG08:
cmp edx, esi
jne G_M47843_IG15
test esi, esi
je SHORT G_M47843_IG09
mov edx, esi
add rdx, rdx
mov rsi, rax
mov rax, 0xD1FFAB1E ; code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
call [rax]System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
test eax, eax
je G_M47843_IG15
;; size=40 bbWeight=0.50 PerfScore 3.88
G_M47843_IG09:
mov rdi, bword ptr [rbx+0x130]
mov edx, dword ptr [rbx+0x138]
cmp r14d, 2
jbe G_M47843_IG23
mov rsi, gword ptr [r15+0x20]
test rsi, rsi
- je SHORT G_M47843_IG10
+ jne SHORT G_M47843_IG10
+ xor rsi, rsi
+ xor eax, eax
+ mov ecx, eax
+ mov rax, rsi
+ mov esi, ecx
+ jmp SHORT G_M47843_IG11
+ ;; size=45 bbWeight=0.50 PerfScore 5.88
+G_M47843_IG10:
lea rax, bword ptr [rsi+0x0C]
mov esi, dword ptr [rsi+0x08]
- jmp SHORT G_M47843_IG11
- ;; size=41 bbWeight=0.50 PerfScore 6.50
-G_M47843_IG10:
- xor rax, rax
- xor esi, esi
- ;; size=4 bbWeight=0.50 PerfScore 0.25
+ ;; size=7 bbWeight=0.50 PerfScore 1.25
G_M47843_IG11:
cmp edx, esi
jne SHORT G_M47843_IG15
test esi, esi
je SHORT G_M47843_IG12
mov edx, esi
add rdx, rdx
mov rsi, rax
mov rax, 0xD1FFAB1E ; code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
call [rax]System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
test eax, eax
je SHORT G_M47843_IG15
;; size=32 bbWeight=0.50 PerfScore 3.88
G_M47843_IG12:
mov rdi, bword ptr [rbx+0x140]
mov edx, dword ptr [rbx+0x148]
mov rsi, gword ptr [rbp+0x10]
test rsi, rsi
- je SHORT G_M47843_IG13
+ jne SHORT G_M47843_IG13
+ xor rsi, rsi
+ xor eax, eax
+ mov ecx, eax
+ mov rax, rsi
+ mov esi, ecx
+ jmp SHORT G_M47843_IG14
+ ;; size=35 bbWeight=0.50 PerfScore 4.75
+G_M47843_IG13:
lea rax, bword ptr [rsi+0x0C]
mov esi, dword ptr [rsi+0x08]
- jmp SHORT G_M47843_IG14
- ;; size=31 bbWeight=0.50 PerfScore 5.38
-G_M47843_IG13:
- xor rax, rax
- xor esi, esi
- ;; size=4 bbWeight=0.50 PerfScore 0.25
+ ;; size=7 bbWeight=0.50 PerfScore 1.25
G_M47843_IG14:
cmp edx, esi
jne SHORT G_M47843_IG15
test esi, esi
je SHORT G_M47843_IG17
mov edx, esi
add rdx, rdx
mov rsi, rax
mov rax, 0xD1FFAB1E ; code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
call [rax]System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
test eax, eax
jne SHORT G_M47843_IG17
;; size=32 bbWeight=0.50 PerfScore 3.88
G_M47843_IG15:
xor eax, eax
;; size=2 bbWeight=0.50 PerfScore 0.12
G_M47843_IG16:
add rsp, 8
pop rbx
pop r14
pop r15
pop rbp
ret
;; size=11 bbWeight=0.50 PerfScore 1.62
G_M47843_IG17:
mov rdi, bword ptr [rbx+0x150]
mov edx, dword ptr [rbx+0x158]
cmp r14d, 5
jbe SHORT G_M47843_IG23
mov rsi, gword ptr [r15+0x38]
test rsi, rsi
- je SHORT G_M47843_IG18
+ jne SHORT G_M47843_IG18
+ xor rsi, rsi
+ xor eax, eax
+ mov ecx, eax
+ mov rax, rsi
+ mov esi, ecx
+ jmp SHORT G_M47843_IG19
+ ;; size=41 bbWeight=0.50 PerfScore 5.88
+G_M47843_IG18:
lea rax, bword ptr [rsi+0x0C]
mov esi, dword ptr [rsi+0x08]
- jmp SHORT G_M47843_IG19
- ;; size=37 bbWeight=0.50 PerfScore 6.50
-G_M47843_IG18:
- xor rax, rax
- xor esi, esi
- ;; size=4 bbWeight=0.50 PerfScore 0.25
+ ;; size=7 bbWeight=0.50 PerfScore 1.25
G_M47843_IG19:
cmp edx, esi
jne SHORT G_M47843_IG21
test esi, esi
je SHORT G_M47843_IG20
mov edx, esi
add rdx, rdx
mov rsi, rax
mov rax, 0xD1FFAB1E ; code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
call [rax]System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
jmp SHORT G_M47843_IG22
;; size=30 bbWeight=0.50 PerfScore 4.25
G_M47843_IG20:
mov eax, 1
jmp SHORT G_M47843_IG22
;; size=7 bbWeight=0.50 PerfScore 1.12
G_M47843_IG21:
xor eax, eax
;; size=2 bbWeight=0.50 PerfScore 0.12
G_M47843_IG22:
add rsp, 8
pop rbx
pop r14
pop r15
pop rbp
ret
;; size=11 bbWeight=0.50 PerfScore 1.62
G_M47843_IG23:
call CORINFO_HELP_RNGCHKFAIL
int3
;; size=6 bbWeight=0 PerfScore 0.00
-; Total bytes of code 466, prolog size 12, PerfScore 70.75, instruction count 143, allocated bytes for code 466 (MethodHash=1d27451c) for method System.Globalization.TimeSpanParse+TimeSpanRawInfo:FullAppCompatMatch(System.Globalization.TimeSpanFormat+FormatLiterals):ubyte:this (FullOpts)
+; Total bytes of code 501, prolog size 12, PerfScore 72.62, instruction count 158, allocated bytes for code 501 (MethodHash=1d27451c) for method System.Globalization.TimeSpanParse+TimeSpanRawInfo:FullAppCompatMatch(System.Globalization.TimeSpanFormat+FormatLiterals):ubyte:this (FullOpts)
; ============================================================
35 (7.35 % of base) - System.Globalization.TimeSpanParse+TimeSpanRawInfo:FullDHMSMatch(System.Globalization.TimeSpanFormat+FormatLiterals):ubyte:this
; Assembly listing for method System.Globalization.TimeSpanParse+TimeSpanRawInfo:FullDHMSMatch(System.Globalization.TimeSpanFormat+FormatLiterals):ubyte:this (FullOpts)
; Emitting BLENDED_CODE for X64 with AVX - Unix
; FullOpts code
; optimized code
; rbp based frame
; partially interruptible
; No PGO data
; 0 inlinees with PGO data; 40 single block inlinees; 15 inlinees without PGO data
; Final local variable assignments
;
; V00 this [V00,T00] ( 14, 8.50) byref -> rbx this single-def
; V01 arg1 [V01,T58] ( 1, 1 ) struct (40) [rbp+0x10] do-not-enreg[SF] ld-addr-op single-def <System.Globalization.TimeSpanFormat+FormatLiterals>
;# V02 OutArgs [V02 ] ( 1, 1 ) struct ( 0) [rsp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
;* V03 tmp1 [V03 ] ( 0, 0 ) struct (16) zero-ref "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
;* V04 tmp2 [V04 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V05 tmp3 [V05 ] ( 0, 0 ) struct (16) zero-ref "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
;* V06 tmp4 [V06 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V07 tmp5 [V07 ] ( 0, 0 ) struct (16) zero-ref "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
;* V08 tmp6 [V08 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V09 tmp7 [V09 ] ( 0, 0 ) struct (16) zero-ref "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
;* V10 tmp8 [V10 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V11 tmp9 [V11 ] ( 0, 0 ) struct (16) zero-ref "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
;* V12 tmp10 [V12 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V13 tmp11 [V13 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V14 tmp12 [V14,T02] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.String>
-;* V15 tmp13 [V15 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V16 tmp14 [V16 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V15 tmp13 [V15 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V16 tmp14 [V16 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V17 tmp15 [V17,T14] ( 2, 2 ) byref -> rax single-def "Inlining Arg"
; V18 tmp16 [V18,T19] ( 2, 2 ) int -> rsi "Inlining Arg"
; V19 tmp17 [V19,T39] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V20 tmp18 [V20 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V21 tmp19 [V21 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V22 tmp20 [V22,T40] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V23 tmp21 [V23 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V24 tmp22 [V24 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V25 tmp23 [V25 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V26 tmp24 [V26 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V27 tmp25 [V27 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
;* V28 tmp26 [V28 ] ( 0, 0 ) byref -> zero-ref single-def "impAppendStmt"
;* V29 tmp27 [V29 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V30 tmp28 [V30 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V31 tmp29 [V31 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V32 tmp30 [V32 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V33 tmp31 [V33 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V34 tmp32 [V34,T03] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.String>
-;* V35 tmp33 [V35 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V36 tmp34 [V36 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V35 tmp33 [V35 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V36 tmp34 [V36 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V37 tmp35 [V37,T15] ( 2, 2 ) byref -> rax single-def "Inlining Arg"
; V38 tmp36 [V38,T20] ( 2, 2 ) int -> rsi "Inlining Arg"
; V39 tmp37 [V39,T41] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V40 tmp38 [V40 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V41 tmp39 [V41 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V42 tmp40 [V42,T42] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V43 tmp41 [V43 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V44 tmp42 [V44 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V45 tmp43 [V45 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V46 tmp44 [V46 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V47 tmp45 [V47 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
;* V48 tmp46 [V48 ] ( 0, 0 ) byref -> zero-ref single-def "impAppendStmt"
;* V49 tmp47 [V49 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V50 tmp48 [V50 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V51 tmp49 [V51 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V52 tmp50 [V52 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V53 tmp51 [V53 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V54 tmp52 [V54,T04] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.String>
-;* V55 tmp53 [V55 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V56 tmp54 [V56 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V55 tmp53 [V55 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V56 tmp54 [V56 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V57 tmp55 [V57,T16] ( 2, 2 ) byref -> rax single-def "Inlining Arg"
; V58 tmp56 [V58,T21] ( 2, 2 ) int -> rsi "Inlining Arg"
; V59 tmp57 [V59,T43] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V60 tmp58 [V60 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V61 tmp59 [V61 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V62 tmp60 [V62,T44] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V63 tmp61 [V63 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V64 tmp62 [V64 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V65 tmp63 [V65 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V66 tmp64 [V66 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V67 tmp65 [V67 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
;* V68 tmp66 [V68 ] ( 0, 0 ) byref -> zero-ref single-def "impAppendStmt"
;* V69 tmp67 [V69 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V70 tmp68 [V70 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V71 tmp69 [V71 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V72 tmp70 [V72 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V73 tmp71 [V73 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V74 tmp72 [V74,T05] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.String>
-;* V75 tmp73 [V75 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V76 tmp74 [V76 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V75 tmp73 [V75 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V76 tmp74 [V76 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V77 tmp75 [V77,T17] ( 2, 2 ) byref -> rax single-def "Inlining Arg"
; V78 tmp76 [V78,T22] ( 2, 2 ) int -> rsi "Inlining Arg"
; V79 tmp77 [V79,T45] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V80 tmp78 [V80 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V81 tmp79 [V81 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V82 tmp80 [V82,T46] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V83 tmp81 [V83 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V84 tmp82 [V84 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V85 tmp83 [V85 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V86 tmp84 [V86 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V87 tmp85 [V87 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
;* V88 tmp86 [V88 ] ( 0, 0 ) byref -> zero-ref single-def "impAppendStmt"
;* V89 tmp87 [V89 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V90 tmp88 [V90 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V91 tmp89 [V91 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V92 tmp90 [V92 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V93 tmp91 [V93 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V94 tmp92 [V94,T06] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.String>
-;* V95 tmp93 [V95 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V96 tmp94 [V96 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V95 tmp93 [V95 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V96 tmp94 [V96 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V97 tmp95 [V97,T18] ( 2, 2 ) byref -> rax single-def "Inlining Arg"
; V98 tmp96 [V98,T23] ( 2, 2 ) int -> rsi "Inlining Arg"
; V99 tmp97 [V99,T13] ( 4, 2 ) ubyte -> rax "Inline return value spill temp"
;* V100 tmp98 [V100 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V101 tmp99 [V101 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V102 tmp100 [V102,T47] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V103 tmp101 [V103 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V104 tmp102 [V104 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V105 tmp103 [V105 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V106 tmp104 [V106 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V107 tmp105 [V107 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
;* V108 tmp106 [V108 ] ( 0, 0 ) byref -> zero-ref single-def "impAppendStmt"
;* V109 tmp107 [V109 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V110 tmp108 [V110 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V111 tmp109 [V111 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V112 tmp110 [V112 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V113 tmp111 [V113,T29] ( 2, 1 ) byref -> rdi single-def "field V03._reference (fldOffset=0x0)" P-INDEP
; V114 tmp112 [V114,T48] ( 2, 1 ) int -> rdx "field V03._length (fldOffset=0x8)" P-INDEP
;* V115 tmp113 [V115 ] ( 0, 0 ) byref -> zero-ref single-def "field V04._reference (fldOffset=0x0)" P-INDEP
;* V116 tmp114 [V116 ] ( 0, 0 ) int -> zero-ref "field V04._length (fldOffset=0x8)" P-INDEP
; V117 tmp115 [V117,T30] ( 2, 1 ) byref -> rdi single-def "field V05._reference (fldOffset=0x0)" P-INDEP
; V118 tmp116 [V118,T49] ( 2, 1 ) int -> rdx "field V05._length (fldOffset=0x8)" P-INDEP
;* V119 tmp117 [V119 ] ( 0, 0 ) byref -> zero-ref single-def "field V06._reference (fldOffset=0x0)" P-INDEP
;* V120 tmp118 [V120 ] ( 0, 0 ) int -> zero-ref "field V06._length (fldOffset=0x8)" P-INDEP
; V121 tmp119 [V121,T31] ( 2, 1 ) byref -> rdi single-def "field V07._reference (fldOffset=0x0)" P-INDEP
; V122 tmp120 [V122,T50] ( 2, 1 ) int -> rdx "field V07._length (fldOffset=0x8)" P-INDEP
;* V123 tmp121 [V123 ] ( 0, 0 ) byref -> zero-ref single-def "field V08._reference (fldOffset=0x0)" P-INDEP
;* V124 tmp122 [V124 ] ( 0, 0 ) int -> zero-ref "field V08._length (fldOffset=0x8)" P-INDEP
; V125 tmp123 [V125,T32] ( 2, 1 ) byref -> rdi single-def "field V09._reference (fldOffset=0x0)" P-INDEP
; V126 tmp124 [V126,T51] ( 2, 1 ) int -> rdx "field V09._length (fldOffset=0x8)" P-INDEP
;* V127 tmp125 [V127 ] ( 0, 0 ) byref -> zero-ref single-def "field V10._reference (fldOffset=0x0)" P-INDEP
;* V128 tmp126 [V128 ] ( 0, 0 ) int -> zero-ref "field V10._length (fldOffset=0x8)" P-INDEP
; V129 tmp127 [V129,T33] ( 2, 1 ) byref -> rdi single-def "field V11._reference (fldOffset=0x0)" P-INDEP
; V130 tmp128 [V130,T52] ( 2, 1 ) int -> rdx "field V11._length (fldOffset=0x8)" P-INDEP
;* V131 tmp129 [V131 ] ( 0, 0 ) byref -> zero-ref single-def "field V12._reference (fldOffset=0x0)" P-INDEP
;* V132 tmp130 [V132 ] ( 0, 0 ) int -> zero-ref "field V12._length (fldOffset=0x8)" P-INDEP
-; V133 tmp131 [V133,T24] ( 3, 1.50) byref -> rax "field V13._reference (fldOffset=0x0)" P-INDEP
-; V134 tmp132 [V134,T08] ( 5, 2.50) int -> rsi "field V13._length (fldOffset=0x8)" P-INDEP
-; V135 tmp133 [V135,T34] ( 2, 1 ) byref -> rax single-def "field V15._reference (fldOffset=0x0)" P-INDEP
-; V136 tmp134 [V136,T53] ( 2, 1 ) int -> rsi "field V15._length (fldOffset=0x8)" P-INDEP
-;* V137 tmp135 [V137 ] ( 0, 0 ) byref -> zero-ref single-def "field V16._reference (fldOffset=0x0)" P-INDEP
-;* V138 tmp136 [V138 ] ( 0, 0 ) int -> zero-ref "field V16._length (fldOffset=0x8)" P-INDEP
+; V133 tmp131 [V133,T24] ( 3, 1.50) byref -> registers "field V13._reference (fldOffset=0x0)" P-INDEP
+; V134 tmp132 [V134,T08] ( 5, 2.50) int -> registers "field V13._length (fldOffset=0x8)" P-INDEP
+;* V135 tmp133 [V135 ] ( 0, 0 ) byref -> zero-ref single-def "field V15._reference (fldOffset=0x0)" P-INDEP
+;* V136 tmp134 [V136 ] ( 0, 0 ) int -> zero-ref "field V15._length (fldOffset=0x8)" P-INDEP
+; V137 tmp135 [V137,T34] ( 2, 1 ) byref -> rax single-def "field V16._reference (fldOffset=0x0)" P-INDEP
+; V138 tmp136 [V138,T53] ( 2, 1 ) int -> rsi "field V16._length (fldOffset=0x8)" P-INDEP
;* V139 tmp137 [V139 ] ( 0, 0 ) byref -> zero-ref single-def "field V20._reference (fldOffset=0x0)" P-INDEP
;* V140 tmp138 [V140 ] ( 0, 0 ) int -> zero-ref "field V20._length (fldOffset=0x8)" P-INDEP
;* V141 tmp139 [V141 ] ( 0, 0 ) byref -> zero-ref single-def "field V21._reference (fldOffset=0x0)" P-INDEP
;* V142 tmp140 [V142 ] ( 0, 0 ) int -> zero-ref "field V21._length (fldOffset=0x8)" P-INDEP
;* V143 tmp141 [V143 ] ( 0, 0 ) byref -> zero-ref single-def "field V23._reference (fldOffset=0x0)" P-INDEP
;* V144 tmp142 [V144 ] ( 0, 0 ) int -> zero-ref "field V23._length (fldOffset=0x8)" P-INDEP
;* V145 tmp143 [V145 ] ( 0, 0 ) byref -> zero-ref single-def "field V25._reference (fldOffset=0x0)" P-INDEP
;* V146 tmp144 [V146 ] ( 0, 0 ) int -> zero-ref "field V25._length (fldOffset=0x8)" P-INDEP
;* V147 tmp145 [V147 ] ( 0, 0 ) byref -> zero-ref single-def "field V29._reference (fldOffset=0x0)" P-INDEP
;* V148 tmp146 [V148 ] ( 0, 0 ) int -> zero-ref "field V29._length (fldOffset=0x8)" P-INDEP
;* V149 tmp147 [V149 ] ( 0, 0 ) byref -> zero-ref single-def "field V30._reference (fldOffset=0x0)" P-INDEP
;* V150 tmp148 [V150 ] ( 0, 0 ) int -> zero-ref "field V30._length (fldOffset=0x8)" P-INDEP
;* V151 tmp149 [V151 ] ( 0, 0 ) byref -> zero-ref "field V31._reference (fldOffset=0x0)" P-INDEP
;* V152 tmp150 [V152 ] ( 0, 0 ) int -> zero-ref "field V31._length (fldOffset=0x8)" P-INDEP
;* V153 tmp151 [V153 ] ( 0, 0 ) byref -> zero-ref "field V32._reference (fldOffset=0x0)" P-INDEP
;* V154 tmp152 [V154 ] ( 0, 0 ) int -> zero-ref "field V32._length (fldOffset=0x8)" P-INDEP
-; V155 tmp153 [V155,T25] ( 3, 1.50) byref -> rax "field V33._reference (fldOffset=0x0)" P-INDEP
-; V156 tmp154 [V156,T09] ( 5, 2.50) int -> rsi "field V33._length (fldOffset=0x8)" P-INDEP
-; V157 tmp155 [V157,T35] ( 2, 1 ) byref -> rax single-def "field V35._reference (fldOffset=0x0)" P-INDEP
-; V158 tmp156 [V158,T54] ( 2, 1 ) int -> rsi "field V35._length (fldOffset=0x8)" P-INDEP
-;* V159 tmp157 [V159 ] ( 0, 0 ) byref -> zero-ref single-def "field V36._reference (fldOffset=0x0)" P-INDEP
-;* V160 tmp158 [V160 ] ( 0, 0 ) int -> zero-ref "field V36._length (fldOffset=0x8)" P-INDEP
+; V155 tmp153 [V155,T25] ( 3, 1.50) byref -> registers "field V33._reference (fldOffset=0x0)" P-INDEP
+; V156 tmp154 [V156,T09] ( 5, 2.50) int -> registers "field V33._length (fldOffset=0x8)" P-INDEP
+;* V157 tmp155 [V157 ] ( 0, 0 ) byref -> zero-ref single-def "field V35._reference (fldOffset=0x0)" P-INDEP
+;* V158 tmp156 [V158 ] ( 0, 0 ) int -> zero-ref "field V35._length (fldOffset=0x8)" P-INDEP
+; V159 tmp157 [V159,T35] ( 2, 1 ) byref -> rax single-def "field V36._reference (fldOffset=0x0)" P-INDEP
+; V160 tmp158 [V160,T54] ( 2, 1 ) int -> rsi "field V36._length (fldOffset=0x8)" P-INDEP
;* V161 tmp159 [V161 ] ( 0, 0 ) byref -> zero-ref single-def "field V40._reference (fldOffset=0x0)" P-INDEP
;* V162 tmp160 [V162 ] ( 0, 0 ) int -> zero-ref "field V40._length (fldOffset=0x8)" P-INDEP
;* V163 tmp161 [V163 ] ( 0, 0 ) byref -> zero-ref single-def "field V41._reference (fldOffset=0x0)" P-INDEP
;* V164 tmp162 [V164 ] ( 0, 0 ) int -> zero-ref "field V41._length (fldOffset=0x8)" P-INDEP
;* V165 tmp163 [V165 ] ( 0, 0 ) byref -> zero-ref single-def "field V43._reference (fldOffset=0x0)" P-INDEP
;* V166 tmp164 [V166 ] ( 0, 0 ) int -> zero-ref "field V43._length (fldOffset=0x8)" P-INDEP
;* V167 tmp165 [V167 ] ( 0, 0 ) byref -> zero-ref single-def "field V45._reference (fldOffset=0x0)" P-INDEP
;* V168 tmp166 [V168 ] ( 0, 0 ) int -> zero-ref "field V45._length (fldOffset=0x8)" P-INDEP
;* V169 tmp167 [V169 ] ( 0, 0 ) byref -> zero-ref single-def "field V49._reference (fldOffset=0x0)" P-INDEP
;* V170 tmp168 [V170 ] ( 0, 0 ) int -> zero-ref "field V49._length (fldOffset=0x8)" P-INDEP
;* V171 tmp169 [V171 ] ( 0, 0 ) byref -> zero-ref single-def "field V50._reference (fldOffset=0x0)" P-INDEP
;* V172 tmp170 [V172 ] ( 0, 0 ) int -> zero-ref "field V50._length (fldOffset=0x8)" P-INDEP
;* V173 tmp171 [V173 ] ( 0, 0 ) byref -> zero-ref "field V51._reference (fldOffset=0x0)" P-INDEP
;* V174 tmp172 [V174 ] ( 0, 0 ) int -> zero-ref "field V51._length (fldOffset=0x8)" P-INDEP
;* V175 tmp173 [V175 ] ( 0, 0 ) byref -> zero-ref "field V52._reference (fldOffset=0x0)" P-INDEP
;* V176 tmp174 [V176 ] ( 0, 0 ) int -> zero-ref "field V52._length (fldOffset=0x8)" P-INDEP
-; V177 tmp175 [V177,T26] ( 3, 1.50) byref -> rax "field V53._reference (fldOffset=0x0)" P-INDEP
-; V178 tmp176 [V178,T10] ( 5, 2.50) int -> rsi "field V53._length (fldOffset=0x8)" P-INDEP
-; V179 tmp177 [V179,T36] ( 2, 1 ) byref -> rax single-def "field V55._reference (fldOffset=0x0)" P-INDEP
-; V180 tmp178 [V180,T55] ( 2, 1 ) int -> rsi "field V55._length (fldOffset=0x8)" P-INDEP
-;* V181 tmp179 [V181 ] ( 0, 0 ) byref -> zero-ref single-def "field V56._reference (fldOffset=0x0)" P-INDEP
-;* V182 tmp180 [V182 ] ( 0, 0 ) int -> zero-ref "field V56._length (fldOffset=0x8)" P-INDEP
+; V177 tmp175 [V177,T26] ( 3, 1.50) byref -> registers "field V53._reference (fldOffset=0x0)" P-INDEP
+; V178 tmp176 [V178,T10] ( 5, 2.50) int -> registers "field V53._length (fldOffset=0x8)" P-INDEP
+;* V179 tmp177 [V179 ] ( 0, 0 ) byref -> zero-ref single-def "field V55._reference (fldOffset=0x0)" P-INDEP
+;* V180 tmp178 [V180 ] ( 0, 0 ) int -> zero-ref "field V55._length (fldOffset=0x8)" P-INDEP
+; V181 tmp179 [V181,T36] ( 2, 1 ) byref -> rax single-def "field V56._reference (fldOffset=0x0)" P-INDEP
+; V182 tmp180 [V182,T55] ( 2, 1 ) int -> rsi "field V56._length (fldOffset=0x8)" P-INDEP
;* V183 tmp181 [V183 ] ( 0, 0 ) byref -> zero-ref single-def "field V60._reference (fldOffset=0x0)" P-INDEP
;* V184 tmp182 [V184 ] ( 0, 0 ) int -> zero-ref "field V60._length (fldOffset=0x8)" P-INDEP
;* V185 tmp183 [V185 ] ( 0, 0 ) byref -> zero-ref single-def "field V61._reference (fldOffset=0x0)" P-INDEP
;* V186 tmp184 [V186 ] ( 0, 0 ) int -> zero-ref "field V61._length (fldOffset=0x8)" P-INDEP
;* V187 tmp185 [V187 ] ( 0, 0 ) byref -> zero-ref single-def "field V63._reference (fldOffset=0x0)" P-INDEP
;* V188 tmp186 [V188 ] ( 0, 0 ) int -> zero-ref "field V63._length (fldOffset=0x8)" P-INDEP
;* V189 tmp187 [V189 ] ( 0, 0 ) byref -> zero-ref single-def "field V65._reference (fldOffset=0x0)" P-INDEP
;* V190 tmp188 [V190 ] ( 0, 0 ) int -> zero-ref "field V65._length (fldOffset=0x8)" P-INDEP
;* V191 tmp189 [V191 ] ( 0, 0 ) byref -> zero-ref single-def "field V69._reference (fldOffset=0x0)" P-INDEP
;* V192 tmp190 [V192 ] ( 0, 0 ) int -> zero-ref "field V69._length (fldOffset=0x8)" P-INDEP
;* V193 tmp191 [V193 ] ( 0, 0 ) byref -> zero-ref single-def "field V70._reference (fldOffset=0x0)" P-INDEP
;* V194 tmp192 [V194 ] ( 0, 0 ) int -> zero-ref "field V70._length (fldOffset=0x8)" P-INDEP
;* V195 tmp193 [V195 ] ( 0, 0 ) byref -> zero-ref "field V71._reference (fldOffset=0x0)" P-INDEP
;* V196 tmp194 [V196 ] ( 0, 0 ) int -> zero-ref "field V71._length (fldOffset=0x8)" P-INDEP
;* V197 tmp195 [V197 ] ( 0, 0 ) byref -> zero-ref "field V72._reference (fldOffset=0x0)" P-INDEP
;* V198 tmp196 [V198 ] ( 0, 0 ) int -> zero-ref "field V72._length (fldOffset=0x8)" P-INDEP
-; V199 tmp197 [V199,T27] ( 3, 1.50) byref -> rax "field V73._reference (fldOffset=0x0)" P-INDEP
-; V200 tmp198 [V200,T11] ( 5, 2.50) int -> rsi "field V73._length (fldOffset=0x8)" P-INDEP
-; V201 tmp199 [V201,T37] ( 2, 1 ) byref -> rax single-def "field V75._reference (fldOffset=0x0)" P-INDEP
-; V202 tmp200 [V202,T56] ( 2, 1 ) int -> rsi "field V75._length (fldOffset=0x8)" P-INDEP
-;* V203 tmp201 [V203 ] ( 0, 0 ) byref -> zero-ref single-def "field V76._reference (fldOffset=0x0)" P-INDEP
-;* V204 tmp202 [V204 ] ( 0, 0 ) int -> zero-ref "field V76._length (fldOffset=0x8)" P-INDEP
+; V199 tmp197 [V199,T27] ( 3, 1.50) byref -> registers "field V73._reference (fldOffset=0x0)" P-INDEP
+; V200 tmp198 [V200,T11] ( 5, 2.50) int -> registers "field V73._length (fldOffset=0x8)" P-INDEP
+;* V201 tmp199 [V201 ] ( 0, 0 ) byref -> zero-ref single-def "field V75._reference (fldOffset=0x0)" P-INDEP
+;* V202 tmp200 [V202 ] ( 0, 0 ) int -> zero-ref "field V75._length (fldOffset=0x8)" P-INDEP
+; V203 tmp201 [V203,T37] ( 2, 1 ) byref -> rax single-def "field V76._reference (fldOffset=0x0)" P-INDEP
+; V204 tmp202 [V204,T56] ( 2, 1 ) int -> rsi "field V76._length (fldOffset=0x8)" P-INDEP
;* V205 tmp203 [V205 ] ( 0, 0 ) byref -> zero-ref single-def "field V80._reference (fldOffset=0x0)" P-INDEP
;* V206 tmp204 [V206 ] ( 0, 0 ) int -> zero-ref "field V80._length (fldOffset=0x8)" P-INDEP
;* V207 tmp205 [V207 ] ( 0, 0 ) byref -> zero-ref single-def "field V81._reference (fldOffset=0x0)" P-INDEP
;* V208 tmp206 [V208 ] ( 0, 0 ) int -> zero-ref "field V81._length (fldOffset=0x8)" P-INDEP
;* V209 tmp207 [V209 ] ( 0, 0 ) byref -> zero-ref single-def "field V83._reference (fldOffset=0x0)" P-INDEP
;* V210 tmp208 [V210 ] ( 0, 0 ) int -> zero-ref "field V83._length (fldOffset=0x8)" P-INDEP
;* V211 tmp209 [V211 ] ( 0, 0 ) byref -> zero-ref single-def "field V85._reference (fldOffset=0x0)" P-INDEP
;* V212 tmp210 [V212 ] ( 0, 0 ) int -> zero-ref "field V85._length (fldOffset=0x8)" P-INDEP
;* V213 tmp211 [V213 ] ( 0, 0 ) byref -> zero-ref single-def "field V89._reference (fldOffset=0x0)" P-INDEP
;* V214 tmp212 [V214 ] ( 0, 0 ) int -> zero-ref "field V89._length (fldOffset=0x8)" P-INDEP
;* V215 tmp213 [V215 ] ( 0, 0 ) byref -> zero-ref single-def "field V90._reference (fldOffset=0x0)" P-INDEP
;* V216 tmp214 [V216 ] ( 0, 0 ) int -> zero-ref "field V90._length (fldOffset=0x8)" P-INDEP
;* V217 tmp215 [V217 ] ( 0, 0 ) byref -> zero-ref "field V91._reference (fldOffset=0x0)" P-INDEP
;* V218 tmp216 [V218 ] ( 0, 0 ) int -> zero-ref "field V91._length (fldOffset=0x8)" P-INDEP
;* V219 tmp217 [V219 ] ( 0, 0 ) byref -> zero-ref "field V92._reference (fldOffset=0x0)" P-INDEP
;* V220 tmp218 [V220 ] ( 0, 0 ) int -> zero-ref "field V92._length (fldOffset=0x8)" P-INDEP
-; V221 tmp219 [V221,T28] ( 3, 1.50) byref -> rax "field V93._reference (fldOffset=0x0)" P-INDEP
-; V222 tmp220 [V222,T12] ( 5, 2.50) int -> rsi "field V93._length (fldOffset=0x8)" P-INDEP
-; V223 tmp221 [V223,T38] ( 2, 1 ) byref -> rax single-def "field V95._reference (fldOffset=0x0)" P-INDEP
-; V224 tmp222 [V224,T57] ( 2, 1 ) int -> rsi "field V95._length (fldOffset=0x8)" P-INDEP
-;* V225 tmp223 [V225 ] ( 0, 0 ) byref -> zero-ref single-def "field V96._reference (fldOffset=0x0)" P-INDEP
-;* V226 tmp224 [V226 ] ( 0, 0 ) int -> zero-ref "field V96._length (fldOffset=0x8)" P-INDEP
+; V221 tmp219 [V221,T28] ( 3, 1.50) byref -> registers "field V93._reference (fldOffset=0x0)" P-INDEP
+; V222 tmp220 [V222,T12] ( 5, 2.50) int -> registers "field V93._length (fldOffset=0x8)" P-INDEP
+;* V223 tmp221 [V223 ] ( 0, 0 ) byref -> zero-ref single-def "field V95._reference (fldOffset=0x0)" P-INDEP
+;* V224 tmp222 [V224 ] ( 0, 0 ) int -> zero-ref "field V95._length (fldOffset=0x8)" P-INDEP
+; V225 tmp223 [V225,T38] ( 2, 1 ) byref -> rax single-def "field V96._reference (fldOffset=0x0)" P-INDEP
+; V226 tmp224 [V226,T57] ( 2, 1 ) int -> rsi "field V96._length (fldOffset=0x8)" P-INDEP
;* V227 tmp225 [V227 ] ( 0, 0 ) byref -> zero-ref single-def "field V100._reference (fldOffset=0x0)" P-INDEP
;* V228 tmp226 [V228 ] ( 0, 0 ) int -> zero-ref "field V100._length (fldOffset=0x8)" P-INDEP
;* V229 tmp227 [V229 ] ( 0, 0 ) byref -> zero-ref single-def "field V101._reference (fldOffset=0x0)" P-INDEP
;* V230 tmp228 [V230 ] ( 0, 0 ) int -> zero-ref "field V101._length (fldOffset=0x8)" P-INDEP
;* V231 tmp229 [V231 ] ( 0, 0 ) byref -> zero-ref single-def "field V103._reference (fldOffset=0x0)" P-INDEP
;* V232 tmp230 [V232 ] ( 0, 0 ) int -> zero-ref "field V103._length (fldOffset=0x8)" P-INDEP
;* V233 tmp231 [V233 ] ( 0, 0 ) byref -> zero-ref single-def "field V105._reference (fldOffset=0x0)" P-INDEP
;* V234 tmp232 [V234 ] ( 0, 0 ) int -> zero-ref "field V105._length (fldOffset=0x8)" P-INDEP
;* V235 tmp233 [V235 ] ( 0, 0 ) byref -> zero-ref single-def "field V109._reference (fldOffset=0x0)" P-INDEP
;* V236 tmp234 [V236 ] ( 0, 0 ) int -> zero-ref "field V109._length (fldOffset=0x8)" P-INDEP
;* V237 tmp235 [V237 ] ( 0, 0 ) byref -> zero-ref single-def "field V110._reference (fldOffset=0x0)" P-INDEP
;* V238 tmp236 [V238 ] ( 0, 0 ) int -> zero-ref "field V110._length (fldOffset=0x8)" P-INDEP
;* V239 tmp237 [V239 ] ( 0, 0 ) byref -> zero-ref "field V111._reference (fldOffset=0x0)" P-INDEP
;* V240 tmp238 [V240 ] ( 0, 0 ) int -> zero-ref "field V111._length (fldOffset=0x8)" P-INDEP
;* V241 tmp239 [V241 ] ( 0, 0 ) byref -> zero-ref "field V112._reference (fldOffset=0x0)" P-INDEP
;* V242 tmp240 [V242 ] ( 0, 0 ) int -> zero-ref "field V112._length (fldOffset=0x8)" P-INDEP
; V243 tmp241 [V243,T01] ( 7, 4 ) ref -> r15 single-def "V01.[008..016)"
; V244 cse0 [V244,T07] ( 6, 3 ) int -> r14 "CSE #01: moderate"
;
; Lcl frame size = 8
G_M48212_IG01:
push rbp
push r15
push r14
push rbx
push rax
lea rbp, [rsp+0x20]
mov rbx, rdi
;; size=15 bbWeight=1 PerfScore 5.75
G_M48212_IG02:
mov r15, gword ptr [rbp+0x18]
cmp dword ptr [rbx+0x14], 5
jne G_M48212_IG15
;; size=14 bbWeight=1 PerfScore 5.00
G_M48212_IG03:
cmp dword ptr [rbx+0x18], 4
jne G_M48212_IG15
mov rdi, bword ptr [rbx+0x110]
mov edx, dword ptr [rbx+0x118]
mov r14d, dword ptr [r15+0x08]
test r14d, r14d
je G_M48212_IG23
mov rsi, gword ptr [r15+0x10]
test rsi, rsi
- je SHORT G_M48212_IG04
+ jne SHORT G_M48212_IG04
+ xor rsi, rsi
+ xor eax, eax
+ mov ecx, eax
+ mov rax, rsi
+ mov esi, ecx
+ jmp SHORT G_M48212_IG05
+ ;; size=58 bbWeight=0.50 PerfScore 8.88
+G_M48212_IG04:
lea rax, bword ptr [rsi+0x0C]
mov esi, dword ptr [rsi+0x08]
- jmp SHORT G_M48212_IG05
- ;; size=54 bbWeight=0.50 PerfScore 9.50
-G_M48212_IG04:
- xor rax, rax
- xor esi, esi
- ;; size=4 bbWeight=0.50 PerfScore 0.25
+ ;; size=7 bbWeight=0.50 PerfScore 1.25
G_M48212_IG05:
cmp edx, esi
jne G_M48212_IG15
test esi, esi
je SHORT G_M48212_IG06
mov edx, esi
add rdx, rdx
mov rsi, rax
mov rax, 0xD1FFAB1E ; code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
call [rax]System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
test eax, eax
je G_M48212_IG15
;; size=40 bbWeight=0.50 PerfScore 3.88
G_M48212_IG06:
mov rdi, bword ptr [rbx+0x120]
mov edx, dword ptr [rbx+0x128]
cmp r14d, 1
jbe G_M48212_IG23
mov rsi, gword ptr [r15+0x18]
test rsi, rsi
- je SHORT G_M48212_IG07
+ jne SHORT G_M48212_IG07
+ xor rsi, rsi
+ xor eax, eax
+ mov ecx, eax
+ mov rax, rsi
+ mov esi, ecx
+ jmp SHORT G_M48212_IG08
+ ;; size=45 bbWeight=0.50 PerfScore 5.88
+G_M48212_IG07:
lea rax, bword ptr [rsi+0x0C]
mov esi, dword ptr [rsi+0x08]
- jmp SHORT G_M48212_IG08
- ;; size=41 bbWeight=0.50 PerfScore 6.50
-G_M48212_IG07:
- xor rax, rax
- xor esi, esi
- ;; size=4 bbWeight=0.50 PerfScore 0.25
+ ;; size=7 bbWeight=0.50 PerfScore 1.25
G_M48212_IG08:
cmp edx, esi
jne G_M48212_IG15
test esi, esi
je SHORT G_M48212_IG09
mov edx, esi
add rdx, rdx
mov rsi, rax
mov rax, 0xD1FFAB1E ; code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
call [rax]System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
test eax, eax
je G_M48212_IG15
;; size=40 bbWeight=0.50 PerfScore 3.88
G_M48212_IG09:
mov rdi, bword ptr [rbx+0x130]
mov edx, dword ptr [rbx+0x138]
cmp r14d, 2
jbe G_M48212_IG23
mov rsi, gword ptr [r15+0x20]
test rsi, rsi
- je SHORT G_M48212_IG10
+ jne SHORT G_M48212_IG10
+ xor rsi, rsi
+ xor eax, eax
+ mov ecx, eax
+ mov rax, rsi
+ mov esi, ecx
+ jmp SHORT G_M48212_IG11
+ ;; size=45 bbWeight=0.50 PerfScore 5.88
+G_M48212_IG10:
lea rax, bword ptr [rsi+0x0C]
mov esi, dword ptr [rsi+0x08]
- jmp SHORT G_M48212_IG11
- ;; size=41 bbWeight=0.50 PerfScore 6.50
-G_M48212_IG10:
- xor rax, rax
- xor esi, esi
- ;; size=4 bbWeight=0.50 PerfScore 0.25
+ ;; size=7 bbWeight=0.50 PerfScore 1.25
G_M48212_IG11:
cmp edx, esi
jne SHORT G_M48212_IG15
test esi, esi
je SHORT G_M48212_IG12
mov edx, esi
add rdx, rdx
mov rsi, rax
mov rax, 0xD1FFAB1E ; code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
call [rax]System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
test eax, eax
je SHORT G_M48212_IG15
;; size=32 bbWeight=0.50 PerfScore 3.88
G_M48212_IG12:
mov rdi, bword ptr [rbx+0x140]
mov edx, dword ptr [rbx+0x148]
cmp r14d, 3
jbe G_M48212_IG23
mov rsi, gword ptr [r15+0x28]
test rsi, rsi
- je SHORT G_M48212_IG13
+ jne SHORT G_M48212_IG13
+ xor rsi, rsi
+ xor eax, eax
+ mov ecx, eax
+ mov rax, rsi
+ mov esi, ecx
+ jmp SHORT G_M48212_IG14
+ ;; size=45 bbWeight=0.50 PerfScore 5.88
+G_M48212_IG13:
lea rax, bword ptr [rsi+0x0C]
mov esi, dword ptr [rsi+0x08]
- jmp SHORT G_M48212_IG14
- ;; size=41 bbWeight=0.50 PerfScore 6.50
-G_M48212_IG13:
- xor rax, rax
- xor esi, esi
- ;; size=4 bbWeight=0.50 PerfScore 0.25
+ ;; size=7 bbWeight=0.50 PerfScore 1.25
G_M48212_IG14:
cmp edx, esi
jne SHORT G_M48212_IG15
test esi, esi
je SHORT G_M48212_IG17
mov edx, esi
add rdx, rdx
mov rsi, rax
mov rax, 0xD1FFAB1E ; code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
call [rax]System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
test eax, eax
jne SHORT G_M48212_IG17
;; size=32 bbWeight=0.50 PerfScore 3.88
G_M48212_IG15:
xor eax, eax
;; size=2 bbWeight=0.50 PerfScore 0.12
G_M48212_IG16:
add rsp, 8
pop rbx
pop r14
pop r15
pop rbp
ret
;; size=11 bbWeight=0.50 PerfScore 1.62
G_M48212_IG17:
mov rdi, bword ptr [rbx+0x150]
mov edx, dword ptr [rbx+0x158]
cmp r14d, 5
jbe SHORT G_M48212_IG23
mov rsi, gword ptr [r15+0x38]
test rsi, rsi
- je SHORT G_M48212_IG18
+ jne SHORT G_M48212_IG18
+ xor rsi, rsi
+ xor eax, eax
+ mov ecx, eax
+ mov rax, rsi
+ mov esi, ecx
+ jmp SHORT G_M48212_IG19
+ ;; size=41 bbWeight=0.50 PerfScore 5.88
+G_M48212_IG18:
lea rax, bword ptr [rsi+0x0C]
mov esi, dword ptr [rsi+0x08]
- jmp SHORT G_M48212_IG19
- ;; size=37 bbWeight=0.50 PerfScore 6.50
-G_M48212_IG18:
- xor rax, rax
- xor esi, esi
- ;; size=4 bbWeight=0.50 PerfScore 0.25
+ ;; size=7 bbWeight=0.50 PerfScore 1.25
G_M48212_IG19:
cmp edx, esi
jne SHORT G_M48212_IG21
test esi, esi
je SHORT G_M48212_IG20
mov edx, esi
add rdx, rdx
mov rsi, rax
mov rax, 0xD1FFAB1E ; code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
call [rax]System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
jmp SHORT G_M48212_IG22
;; size=30 bbWeight=0.50 PerfScore 4.25
G_M48212_IG20:
mov eax, 1
jmp SHORT G_M48212_IG22
;; size=7 bbWeight=0.50 PerfScore 1.12
G_M48212_IG21:
xor eax, eax
;; size=2 bbWeight=0.50 PerfScore 0.12
G_M48212_IG22:
add rsp, 8
pop rbx
pop r14
pop r15
pop rbp
ret
;; size=11 bbWeight=0.50 PerfScore 1.62
G_M48212_IG23:
call CORINFO_HELP_RNGCHKFAIL
int3
;; size=6 bbWeight=0 PerfScore 0.00
-; Total bytes of code 476, prolog size 12, PerfScore 71.88, instruction count 145, allocated bytes for code 476 (MethodHash=f6e143ab) for method System.Globalization.TimeSpanParse+TimeSpanRawInfo:FullDHMSMatch(System.Globalization.TimeSpanFormat+FormatLiterals):ubyte:this (FullOpts)
+; Total bytes of code 511, prolog size 12, PerfScore 73.75, instruction count 160, allocated bytes for code 511 (MethodHash=f6e143ab) for method System.Globalization.TimeSpanParse+TimeSpanRawInfo:FullDHMSMatch(System.Globalization.TimeSpanFormat+FormatLiterals):ubyte:this (FullOpts)
; ============================================================
35 (7.35 % of base) - System.Globalization.TimeSpanParse+TimeSpanRawInfo:FullHMSFMatch(System.Globalization.TimeSpanFormat+FormatLiterals):ubyte:this
; Assembly listing for method System.Globalization.TimeSpanParse+TimeSpanRawInfo:FullHMSFMatch(System.Globalization.TimeSpanFormat+FormatLiterals):ubyte:this (FullOpts)
; Emitting BLENDED_CODE for X64 with AVX - Unix
; FullOpts code
; optimized code
; rbp based frame
; partially interruptible
; No PGO data
; 0 inlinees with PGO data; 40 single block inlinees; 15 inlinees without PGO data
; Final local variable assignments
;
; V00 this [V00,T00] ( 14, 8.50) byref -> rbx this single-def
; V01 arg1 [V01,T58] ( 1, 1 ) struct (40) [rbp+0x10] do-not-enreg[SF] ld-addr-op single-def <System.Globalization.TimeSpanFormat+FormatLiterals>
;# V02 OutArgs [V02 ] ( 1, 1 ) struct ( 0) [rsp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
;* V03 tmp1 [V03 ] ( 0, 0 ) struct (16) zero-ref "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
;* V04 tmp2 [V04 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V05 tmp3 [V05 ] ( 0, 0 ) struct (16) zero-ref "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
;* V06 tmp4 [V06 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V07 tmp5 [V07 ] ( 0, 0 ) struct (16) zero-ref "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
;* V08 tmp6 [V08 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V09 tmp7 [V09 ] ( 0, 0 ) struct (16) zero-ref "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
;* V10 tmp8 [V10 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V11 tmp9 [V11 ] ( 0, 0 ) struct (16) zero-ref "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
;* V12 tmp10 [V12 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V13 tmp11 [V13 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V14 tmp12 [V14,T02] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.String>
-;* V15 tmp13 [V15 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V16 tmp14 [V16 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V15 tmp13 [V15 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V16 tmp14 [V16 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V17 tmp15 [V17,T14] ( 2, 2 ) byref -> rax single-def "Inlining Arg"
; V18 tmp16 [V18,T19] ( 2, 2 ) int -> rsi "Inlining Arg"
; V19 tmp17 [V19,T39] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V20 tmp18 [V20 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V21 tmp19 [V21 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V22 tmp20 [V22,T40] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V23 tmp21 [V23 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V24 tmp22 [V24 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V25 tmp23 [V25 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V26 tmp24 [V26 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V27 tmp25 [V27 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
;* V28 tmp26 [V28 ] ( 0, 0 ) byref -> zero-ref single-def "impAppendStmt"
;* V29 tmp27 [V29 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V30 tmp28 [V30 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V31 tmp29 [V31 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V32 tmp30 [V32 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V33 tmp31 [V33 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V34 tmp32 [V34,T03] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.String>
-;* V35 tmp33 [V35 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V36 tmp34 [V36 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V35 tmp33 [V35 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V36 tmp34 [V36 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V37 tmp35 [V37,T15] ( 2, 2 ) byref -> rax single-def "Inlining Arg"
; V38 tmp36 [V38,T20] ( 2, 2 ) int -> rsi "Inlining Arg"
; V39 tmp37 [V39,T41] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V40 tmp38 [V40 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V41 tmp39 [V41 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V42 tmp40 [V42,T42] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V43 tmp41 [V43 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V44 tmp42 [V44 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V45 tmp43 [V45 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V46 tmp44 [V46 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V47 tmp45 [V47 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
;* V48 tmp46 [V48 ] ( 0, 0 ) byref -> zero-ref single-def "impAppendStmt"
;* V49 tmp47 [V49 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V50 tmp48 [V50 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V51 tmp49 [V51 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V52 tmp50 [V52 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V53 tmp51 [V53 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V54 tmp52 [V54,T04] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.String>
-;* V55 tmp53 [V55 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V56 tmp54 [V56 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V55 tmp53 [V55 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V56 tmp54 [V56 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V57 tmp55 [V57,T16] ( 2, 2 ) byref -> rax single-def "Inlining Arg"
; V58 tmp56 [V58,T21] ( 2, 2 ) int -> rsi "Inlining Arg"
; V59 tmp57 [V59,T43] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V60 tmp58 [V60 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V61 tmp59 [V61 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V62 tmp60 [V62,T44] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V63 tmp61 [V63 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V64 tmp62 [V64 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V65 tmp63 [V65 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V66 tmp64 [V66 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V67 tmp65 [V67 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
;* V68 tmp66 [V68 ] ( 0, 0 ) byref -> zero-ref single-def "impAppendStmt"
;* V69 tmp67 [V69 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V70 tmp68 [V70 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V71 tmp69 [V71 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V72 tmp70 [V72 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V73 tmp71 [V73 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V74 tmp72 [V74,T05] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.String>
-;* V75 tmp73 [V75 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V76 tmp74 [V76 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V75 tmp73 [V75 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V76 tmp74 [V76 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V77 tmp75 [V77,T17] ( 2, 2 ) byref -> rax single-def "Inlining Arg"
; V78 tmp76 [V78,T22] ( 2, 2 ) int -> rsi "Inlining Arg"
; V79 tmp77 [V79,T45] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V80 tmp78 [V80 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V81 tmp79 [V81 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V82 tmp80 [V82,T46] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V83 tmp81 [V83 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V84 tmp82 [V84 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V85 tmp83 [V85 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V86 tmp84 [V86 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V87 tmp85 [V87 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
;* V88 tmp86 [V88 ] ( 0, 0 ) byref -> zero-ref single-def "impAppendStmt"
;* V89 tmp87 [V89 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V90 tmp88 [V90 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V91 tmp89 [V91 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V92 tmp90 [V92 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V93 tmp91 [V93 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V94 tmp92 [V94,T06] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.String>
-;* V95 tmp93 [V95 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V96 tmp94 [V96 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V95 tmp93 [V95 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V96 tmp94 [V96 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V97 tmp95 [V97,T18] ( 2, 2 ) byref -> rax single-def "Inlining Arg"
; V98 tmp96 [V98,T23] ( 2, 2 ) int -> rsi "Inlining Arg"
; V99 tmp97 [V99,T13] ( 4, 2 ) ubyte -> rax "Inline return value spill temp"
;* V100 tmp98 [V100 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V101 tmp99 [V101 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V102 tmp100 [V102,T47] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V103 tmp101 [V103 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V104 tmp102 [V104 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V105 tmp103 [V105 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V106 tmp104 [V106 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V107 tmp105 [V107 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
;* V108 tmp106 [V108 ] ( 0, 0 ) byref -> zero-ref single-def "impAppendStmt"
;* V109 tmp107 [V109 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V110 tmp108 [V110 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V111 tmp109 [V111 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V112 tmp110 [V112 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V113 tmp111 [V113,T29] ( 2, 1 ) byref -> rdi single-def "field V03._reference (fldOffset=0x0)" P-INDEP
; V114 tmp112 [V114,T48] ( 2, 1 ) int -> rdx "field V03._length (fldOffset=0x8)" P-INDEP
;* V115 tmp113 [V115 ] ( 0, 0 ) byref -> zero-ref single-def "field V04._reference (fldOffset=0x0)" P-INDEP
;* V116 tmp114 [V116 ] ( 0, 0 ) int -> zero-ref "field V04._length (fldOffset=0x8)" P-INDEP
; V117 tmp115 [V117,T30] ( 2, 1 ) byref -> rdi single-def "field V05._reference (fldOffset=0x0)" P-INDEP
; V118 tmp116 [V118,T49] ( 2, 1 ) int -> rdx "field V05._length (fldOffset=0x8)" P-INDEP
;* V119 tmp117 [V119 ] ( 0, 0 ) byref -> zero-ref single-def "field V06._reference (fldOffset=0x0)" P-INDEP
;* V120 tmp118 [V120 ] ( 0, 0 ) int -> zero-ref "field V06._length (fldOffset=0x8)" P-INDEP
; V121 tmp119 [V121,T31] ( 2, 1 ) byref -> rdi single-def "field V07._reference (fldOffset=0x0)" P-INDEP
; V122 tmp120 [V122,T50] ( 2, 1 ) int -> rdx "field V07._length (fldOffset=0x8)" P-INDEP
;* V123 tmp121 [V123 ] ( 0, 0 ) byref -> zero-ref single-def "field V08._reference (fldOffset=0x0)" P-INDEP
;* V124 tmp122 [V124 ] ( 0, 0 ) int -> zero-ref "field V08._length (fldOffset=0x8)" P-INDEP
; V125 tmp123 [V125,T32] ( 2, 1 ) byref -> rdi single-def "field V09._reference (fldOffset=0x0)" P-INDEP
; V126 tmp124 [V126,T51] ( 2, 1 ) int -> rdx "field V09._length (fldOffset=0x8)" P-INDEP
;* V127 tmp125 [V127 ] ( 0, 0 ) byref -> zero-ref single-def "field V10._reference (fldOffset=0x0)" P-INDEP
;* V128 tmp126 [V128 ] ( 0, 0 ) int -> zero-ref "field V10._length (fldOffset=0x8)" P-INDEP
; V129 tmp127 [V129,T33] ( 2, 1 ) byref -> rdi single-def "field V11._reference (fldOffset=0x0)" P-INDEP
; V130 tmp128 [V130,T52] ( 2, 1 ) int -> rdx "field V11._length (fldOffset=0x8)" P-INDEP
;* V131 tmp129 [V131 ] ( 0, 0 ) byref -> zero-ref single-def "field V12._reference (fldOffset=0x0)" P-INDEP
;* V132 tmp130 [V132 ] ( 0, 0 ) int -> zero-ref "field V12._length (fldOffset=0x8)" P-INDEP
-; V133 tmp131 [V133,T24] ( 3, 1.50) byref -> rax "field V13._reference (fldOffset=0x0)" P-INDEP
-; V134 tmp132 [V134,T08] ( 5, 2.50) int -> rsi "field V13._length (fldOffset=0x8)" P-INDEP
-; V135 tmp133 [V135,T34] ( 2, 1 ) byref -> rax single-def "field V15._reference (fldOffset=0x0)" P-INDEP
-; V136 tmp134 [V136,T53] ( 2, 1 ) int -> rsi "field V15._length (fldOffset=0x8)" P-INDEP
-;* V137 tmp135 [V137 ] ( 0, 0 ) byref -> zero-ref single-def "field V16._reference (fldOffset=0x0)" P-INDEP
-;* V138 tmp136 [V138 ] ( 0, 0 ) int -> zero-ref "field V16._length (fldOffset=0x8)" P-INDEP
+; V133 tmp131 [V133,T24] ( 3, 1.50) byref -> registers "field V13._reference (fldOffset=0x0)" P-INDEP
+; V134 tmp132 [V134,T08] ( 5, 2.50) int -> registers "field V13._length (fldOffset=0x8)" P-INDEP
+;* V135 tmp133 [V135 ] ( 0, 0 ) byref -> zero-ref single-def "field V15._reference (fldOffset=0x0)" P-INDEP
+;* V136 tmp134 [V136 ] ( 0, 0 ) int -> zero-ref "field V15._length (fldOffset=0x8)" P-INDEP
+; V137 tmp135 [V137,T34] ( 2, 1 ) byref -> rax single-def "field V16._reference (fldOffset=0x0)" P-INDEP
+; V138 tmp136 [V138,T53] ( 2, 1 ) int -> rsi "field V16._length (fldOffset=0x8)" P-INDEP
;* V139 tmp137 [V139 ] ( 0, 0 ) byref -> zero-ref single-def "field V20._reference (fldOffset=0x0)" P-INDEP
;* V140 tmp138 [V140 ] ( 0, 0 ) int -> zero-ref "field V20._length (fldOffset=0x8)" P-INDEP
;* V141 tmp139 [V141 ] ( 0, 0 ) byref -> zero-ref single-def "field V21._reference (fldOffset=0x0)" P-INDEP
;* V142 tmp140 [V142 ] ( 0, 0 ) int -> zero-ref "field V21._length (fldOffset=0x8)" P-INDEP
;* V143 tmp141 [V143 ] ( 0, 0 ) byref -> zero-ref single-def "field V23._reference (fldOffset=0x0)" P-INDEP
;* V144 tmp142 [V144 ] ( 0, 0 ) int -> zero-ref "field V23._length (fldOffset=0x8)" P-INDEP
;* V145 tmp143 [V145 ] ( 0, 0 ) byref -> zero-ref single-def "field V25._reference (fldOffset=0x0)" P-INDEP
;* V146 tmp144 [V146 ] ( 0, 0 ) int -> zero-ref "field V25._length (fldOffset=0x8)" P-INDEP
;* V147 tmp145 [V147 ] ( 0, 0 ) byref -> zero-ref single-def "field V29._reference (fldOffset=0x0)" P-INDEP
;* V148 tmp146 [V148 ] ( 0, 0 ) int -> zero-ref "field V29._length (fldOffset=0x8)" P-INDEP
;* V149 tmp147 [V149 ] ( 0, 0 ) byref -> zero-ref single-def "field V30._reference (fldOffset=0x0)" P-INDEP
;* V150 tmp148 [V150 ] ( 0, 0 ) int -> zero-ref "field V30._length (fldOffset=0x8)" P-INDEP
;* V151 tmp149 [V151 ] ( 0, 0 ) byref -> zero-ref "field V31._reference (fldOffset=0x0)" P-INDEP
;* V152 tmp150 [V152 ] ( 0, 0 ) int -> zero-ref "field V31._length (fldOffset=0x8)" P-INDEP
;* V153 tmp151 [V153 ] ( 0, 0 ) byref -> zero-ref "field V32._reference (fldOffset=0x0)" P-INDEP
;* V154 tmp152 [V154 ] ( 0, 0 ) int -> zero-ref "field V32._length (fldOffset=0x8)" P-INDEP
-; V155 tmp153 [V155,T25] ( 3, 1.50) byref -> rax "field V33._reference (fldOffset=0x0)" P-INDEP
-; V156 tmp154 [V156,T09] ( 5, 2.50) int -> rsi "field V33._length (fldOffset=0x8)" P-INDEP
-; V157 tmp155 [V157,T35] ( 2, 1 ) byref -> rax single-def "field V35._reference (fldOffset=0x0)" P-INDEP
-; V158 tmp156 [V158,T54] ( 2, 1 ) int -> rsi "field V35._length (fldOffset=0x8)" P-INDEP
-;* V159 tmp157 [V159 ] ( 0, 0 ) byref -> zero-ref single-def "field V36._reference (fldOffset=0x0)" P-INDEP
-;* V160 tmp158 [V160 ] ( 0, 0 ) int -> zero-ref "field V36._length (fldOffset=0x8)" P-INDEP
+; V155 tmp153 [V155,T25] ( 3, 1.50) byref -> registers "field V33._reference (fldOffset=0x0)" P-INDEP
+; V156 tmp154 [V156,T09] ( 5, 2.50) int -> registers "field V33._length (fldOffset=0x8)" P-INDEP
+;* V157 tmp155 [V157 ] ( 0, 0 ) byref -> zero-ref single-def "field V35._reference (fldOffset=0x0)" P-INDEP
+;* V158 tmp156 [V158 ] ( 0, 0 ) int -> zero-ref "field V35._length (fldOffset=0x8)" P-INDEP
+; V159 tmp157 [V159,T35] ( 2, 1 ) byref -> rax single-def "field V36._reference (fldOffset=0x0)" P-INDEP
+; V160 tmp158 [V160,T54] ( 2, 1 ) int -> rsi "field V36._length (fldOffset=0x8)" P-INDEP
;* V161 tmp159 [V161 ] ( 0, 0 ) byref -> zero-ref single-def "field V40._reference (fldOffset=0x0)" P-INDEP
;* V162 tmp160 [V162 ] ( 0, 0 ) int -> zero-ref "field V40._length (fldOffset=0x8)" P-INDEP
;* V163 tmp161 [V163 ] ( 0, 0 ) byref -> zero-ref single-def "field V41._reference (fldOffset=0x0)" P-INDEP
;* V164 tmp162 [V164 ] ( 0, 0 ) int -> zero-ref "field V41._length (fldOffset=0x8)" P-INDEP
;* V165 tmp163 [V165 ] ( 0, 0 ) byref -> zero-ref single-def "field V43._reference (fldOffset=0x0)" P-INDEP
;* V166 tmp164 [V166 ] ( 0, 0 ) int -> zero-ref "field V43._length (fldOffset=0x8)" P-INDEP
;* V167 tmp165 [V167 ] ( 0, 0 ) byref -> zero-ref single-def "field V45._reference (fldOffset=0x0)" P-INDEP
;* V168 tmp166 [V168 ] ( 0, 0 ) int -> zero-ref "field V45._length (fldOffset=0x8)" P-INDEP
;* V169 tmp167 [V169 ] ( 0, 0 ) byref -> zero-ref single-def "field V49._reference (fldOffset=0x0)" P-INDEP
;* V170 tmp168 [V170 ] ( 0, 0 ) int -> zero-ref "field V49._length (fldOffset=0x8)" P-INDEP
;* V171 tmp169 [V171 ] ( 0, 0 ) byref -> zero-ref single-def "field V50._reference (fldOffset=0x0)" P-INDEP
;* V172 tmp170 [V172 ] ( 0, 0 ) int -> zero-ref "field V50._length (fldOffset=0x8)" P-INDEP
;* V173 tmp171 [V173 ] ( 0, 0 ) byref -> zero-ref "field V51._reference (fldOffset=0x0)" P-INDEP
;* V174 tmp172 [V174 ] ( 0, 0 ) int -> zero-ref "field V51._length (fldOffset=0x8)" P-INDEP
;* V175 tmp173 [V175 ] ( 0, 0 ) byref -> zero-ref "field V52._reference (fldOffset=0x0)" P-INDEP
;* V176 tmp174 [V176 ] ( 0, 0 ) int -> zero-ref "field V52._length (fldOffset=0x8)" P-INDEP
-; V177 tmp175 [V177,T26] ( 3, 1.50) byref -> rax "field V53._reference (fldOffset=0x0)" P-INDEP
-; V178 tmp176 [V178,T10] ( 5, 2.50) int -> rsi "field V53._length (fldOffset=0x8)" P-INDEP
-; V179 tmp177 [V179,T36] ( 2, 1 ) byref -> rax single-def "field V55._reference (fldOffset=0x0)" P-INDEP
-; V180 tmp178 [V180,T55] ( 2, 1 ) int -> rsi "field V55._length (fldOffset=0x8)" P-INDEP
-;* V181 tmp179 [V181 ] ( 0, 0 ) byref -> zero-ref single-def "field V56._reference (fldOffset=0x0)" P-INDEP
-;* V182 tmp180 [V182 ] ( 0, 0 ) int -> zero-ref "field V56._length (fldOffset=0x8)" P-INDEP
+; V177 tmp175 [V177,T26] ( 3, 1.50) byref -> registers "field V53._reference (fldOffset=0x0)" P-INDEP
+; V178 tmp176 [V178,T10] ( 5, 2.50) int -> registers "field V53._length (fldOffset=0x8)" P-INDEP
+;* V179 tmp177 [V179 ] ( 0, 0 ) byref -> zero-ref single-def "field V55._reference (fldOffset=0x0)" P-INDEP
+;* V180 tmp178 [V180 ] ( 0, 0 ) int -> zero-ref "field V55._length (fldOffset=0x8)" P-INDEP
+; V181 tmp179 [V181,T36] ( 2, 1 ) byref -> rax single-def "field V56._reference (fldOffset=0x0)" P-INDEP
+; V182 tmp180 [V182,T55] ( 2, 1 ) int -> rsi "field V56._length (fldOffset=0x8)" P-INDEP
;* V183 tmp181 [V183 ] ( 0, 0 ) byref -> zero-ref single-def "field V60._reference (fldOffset=0x0)" P-INDEP
;* V184 tmp182 [V184 ] ( 0, 0 ) int -> zero-ref "field V60._length (fldOffset=0x8)" P-INDEP
;* V185 tmp183 [V185 ] ( 0, 0 ) byref -> zero-ref single-def "field V61._reference (fldOffset=0x0)" P-INDEP
;* V186 tmp184 [V186 ] ( 0, 0 ) int -> zero-ref "field V61._length (fldOffset=0x8)" P-INDEP
;* V187 tmp185 [V187 ] ( 0, 0 ) byref -> zero-ref single-def "field V63._reference (fldOffset=0x0)" P-INDEP
;* V188 tmp186 [V188 ] ( 0, 0 ) int -> zero-ref "field V63._length (fldOffset=0x8)" P-INDEP
;* V189 tmp187 [V189 ] ( 0, 0 ) byref -> zero-ref single-def "field V65._reference (fldOffset=0x0)" P-INDEP
;* V190 tmp188 [V190 ] ( 0, 0 ) int -> zero-ref "field V65._length (fldOffset=0x8)" P-INDEP
;* V191 tmp189 [V191 ] ( 0, 0 ) byref -> zero-ref single-def "field V69._reference (fldOffset=0x0)" P-INDEP
;* V192 tmp190 [V192 ] ( 0, 0 ) int -> zero-ref "field V69._length (fldOffset=0x8)" P-INDEP
;* V193 tmp191 [V193 ] ( 0, 0 ) byref -> zero-ref single-def "field V70._reference (fldOffset=0x0)" P-INDEP
;* V194 tmp192 [V194 ] ( 0, 0 ) int -> zero-ref "field V70._length (fldOffset=0x8)" P-INDEP
;* V195 tmp193 [V195 ] ( 0, 0 ) byref -> zero-ref "field V71._reference (fldOffset=0x0)" P-INDEP
;* V196 tmp194 [V196 ] ( 0, 0 ) int -> zero-ref "field V71._length (fldOffset=0x8)" P-INDEP
;* V197 tmp195 [V197 ] ( 0, 0 ) byref -> zero-ref "field V72._reference (fldOffset=0x0)" P-INDEP
;* V198 tmp196 [V198 ] ( 0, 0 ) int -> zero-ref "field V72._length (fldOffset=0x8)" P-INDEP
-; V199 tmp197 [V199,T27] ( 3, 1.50) byref -> rax "field V73._reference (fldOffset=0x0)" P-INDEP
-; V200 tmp198 [V200,T11] ( 5, 2.50) int -> rsi "field V73._length (fldOffset=0x8)" P-INDEP
-; V201 tmp199 [V201,T37] ( 2, 1 ) byref -> rax single-def "field V75._reference (fldOffset=0x0)" P-INDEP
-; V202 tmp200 [V202,T56] ( 2, 1 ) int -> rsi "field V75._length (fldOffset=0x8)" P-INDEP
-;* V203 tmp201 [V203 ] ( 0, 0 ) byref -> zero-ref single-def "field V76._reference (fldOffset=0x0)" P-INDEP
-;* V204 tmp202 [V204 ] ( 0, 0 ) int -> zero-ref "field V76._length (fldOffset=0x8)" P-INDEP
+; V199 tmp197 [V199,T27] ( 3, 1.50) byref -> registers "field V73._reference (fldOffset=0x0)" P-INDEP
+; V200 tmp198 [V200,T11] ( 5, 2.50) int -> registers "field V73._length (fldOffset=0x8)" P-INDEP
+;* V201 tmp199 [V201 ] ( 0, 0 ) byref -> zero-ref single-def "field V75._reference (fldOffset=0x0)" P-INDEP
+;* V202 tmp200 [V202 ] ( 0, 0 ) int -> zero-ref "field V75._length (fldOffset=0x8)" P-INDEP
+; V203 tmp201 [V203,T37] ( 2, 1 ) byref -> rax single-def "field V76._reference (fldOffset=0x0)" P-INDEP
+; V204 tmp202 [V204,T56] ( 2, 1 ) int -> rsi "field V76._length (fldOffset=0x8)" P-INDEP
;* V205 tmp203 [V205 ] ( 0, 0 ) byref -> zero-ref single-def "field V80._reference (fldOffset=0x0)" P-INDEP
;* V206 tmp204 [V206 ] ( 0, 0 ) int -> zero-ref "field V80._length (fldOffset=0x8)" P-INDEP
;* V207 tmp205 [V207 ] ( 0, 0 ) byref -> zero-ref single-def "field V81._reference (fldOffset=0x0)" P-INDEP
;* V208 tmp206 [V208 ] ( 0, 0 ) int -> zero-ref "field V81._length (fldOffset=0x8)" P-INDEP
;* V209 tmp207 [V209 ] ( 0, 0 ) byref -> zero-ref single-def "field V83._reference (fldOffset=0x0)" P-INDEP
;* V210 tmp208 [V210 ] ( 0, 0 ) int -> zero-ref "field V83._length (fldOffset=0x8)" P-INDEP
;* V211 tmp209 [V211 ] ( 0, 0 ) byref -> zero-ref single-def "field V85._reference (fldOffset=0x0)" P-INDEP
;* V212 tmp210 [V212 ] ( 0, 0 ) int -> zero-ref "field V85._length (fldOffset=0x8)" P-INDEP
;* V213 tmp211 [V213 ] ( 0, 0 ) byref -> zero-ref single-def "field V89._reference (fldOffset=0x0)" P-INDEP
;* V214 tmp212 [V214 ] ( 0, 0 ) int -> zero-ref "field V89._length (fldOffset=0x8)" P-INDEP
;* V215 tmp213 [V215 ] ( 0, 0 ) byref -> zero-ref single-def "field V90._reference (fldOffset=0x0)" P-INDEP
;* V216 tmp214 [V216 ] ( 0, 0 ) int -> zero-ref "field V90._length (fldOffset=0x8)" P-INDEP
;* V217 tmp215 [V217 ] ( 0, 0 ) byref -> zero-ref "field V91._reference (fldOffset=0x0)" P-INDEP
;* V218 tmp216 [V218 ] ( 0, 0 ) int -> zero-ref "field V91._length (fldOffset=0x8)" P-INDEP
;* V219 tmp217 [V219 ] ( 0, 0 ) byref -> zero-ref "field V92._reference (fldOffset=0x0)" P-INDEP
;* V220 tmp218 [V220 ] ( 0, 0 ) int -> zero-ref "field V92._length (fldOffset=0x8)" P-INDEP
-; V221 tmp219 [V221,T28] ( 3, 1.50) byref -> rax "field V93._reference (fldOffset=0x0)" P-INDEP
-; V222 tmp220 [V222,T12] ( 5, 2.50) int -> rsi "field V93._length (fldOffset=0x8)" P-INDEP
-; V223 tmp221 [V223,T38] ( 2, 1 ) byref -> rax single-def "field V95._reference (fldOffset=0x0)" P-INDEP
-; V224 tmp222 [V224,T57] ( 2, 1 ) int -> rsi "field V95._length (fldOffset=0x8)" P-INDEP
-;* V225 tmp223 [V225 ] ( 0, 0 ) byref -> zero-ref single-def "field V96._reference (fldOffset=0x0)" P-INDEP
-;* V226 tmp224 [V226 ] ( 0, 0 ) int -> zero-ref "field V96._length (fldOffset=0x8)" P-INDEP
+; V221 tmp219 [V221,T28] ( 3, 1.50) byref -> registers "field V93._reference (fldOffset=0x0)" P-INDEP
+; V222 tmp220 [V222,T12] ( 5, 2.50) int -> registers "field V93._length (fldOffset=0x8)" P-INDEP
+;* V223 tmp221 [V223 ] ( 0, 0 ) byref -> zero-ref single-def "field V95._reference (fldOffset=0x0)" P-INDEP
+;* V224 tmp222 [V224 ] ( 0, 0 ) int -> zero-ref "field V95._length (fldOffset=0x8)" P-INDEP
+; V225 tmp223 [V225,T38] ( 2, 1 ) byref -> rax single-def "field V96._reference (fldOffset=0x0)" P-INDEP
+; V226 tmp224 [V226,T57] ( 2, 1 ) int -> rsi "field V96._length (fldOffset=0x8)" P-INDEP
;* V227 tmp225 [V227 ] ( 0, 0 ) byref -> zero-ref single-def "field V100._reference (fldOffset=0x0)" P-INDEP
;* V228 tmp226 [V228 ] ( 0, 0 ) int -> zero-ref "field V100._length (fldOffset=0x8)" P-INDEP
;* V229 tmp227 [V229 ] ( 0, 0 ) byref -> zero-ref single-def "field V101._reference (fldOffset=0x0)" P-INDEP
;* V230 tmp228 [V230 ] ( 0, 0 ) int -> zero-ref "field V101._length (fldOffset=0x8)" P-INDEP
;* V231 tmp229 [V231 ] ( 0, 0 ) byref -> zero-ref single-def "field V103._reference (fldOffset=0x0)" P-INDEP
;* V232 tmp230 [V232 ] ( 0, 0 ) int -> zero-ref "field V103._length (fldOffset=0x8)" P-INDEP
;* V233 tmp231 [V233 ] ( 0, 0 ) byref -> zero-ref single-def "field V105._reference (fldOffset=0x0)" P-INDEP
;* V234 tmp232 [V234 ] ( 0, 0 ) int -> zero-ref "field V105._length (fldOffset=0x8)" P-INDEP
;* V235 tmp233 [V235 ] ( 0, 0 ) byref -> zero-ref single-def "field V109._reference (fldOffset=0x0)" P-INDEP
;* V236 tmp234 [V236 ] ( 0, 0 ) int -> zero-ref "field V109._length (fldOffset=0x8)" P-INDEP
;* V237 tmp235 [V237 ] ( 0, 0 ) byref -> zero-ref single-def "field V110._reference (fldOffset=0x0)" P-INDEP
;* V238 tmp236 [V238 ] ( 0, 0 ) int -> zero-ref "field V110._length (fldOffset=0x8)" P-INDEP
;* V239 tmp237 [V239 ] ( 0, 0 ) byref -> zero-ref "field V111._reference (fldOffset=0x0)" P-INDEP
;* V240 tmp238 [V240 ] ( 0, 0 ) int -> zero-ref "field V111._length (fldOffset=0x8)" P-INDEP
;* V241 tmp239 [V241 ] ( 0, 0 ) byref -> zero-ref "field V112._reference (fldOffset=0x0)" P-INDEP
;* V242 tmp240 [V242 ] ( 0, 0 ) int -> zero-ref "field V112._length (fldOffset=0x8)" P-INDEP
; V243 tmp241 [V243,T01] ( 7, 4 ) ref -> r15 single-def "V01.[008..016)"
; V244 cse0 [V244,T07] ( 6, 3 ) int -> r14 "CSE #01: moderate"
;
; Lcl frame size = 8
G_M3094_IG01:
push rbp
push r15
push r14
push rbx
push rax
lea rbp, [rsp+0x20]
mov rbx, rdi
;; size=15 bbWeight=1 PerfScore 5.75
G_M3094_IG02:
mov r15, gword ptr [rbp+0x18]
cmp dword ptr [rbx+0x14], 5
jne G_M3094_IG15
;; size=14 bbWeight=1 PerfScore 5.00
G_M3094_IG03:
cmp dword ptr [rbx+0x18], 4
jne G_M3094_IG15
mov rdi, bword ptr [rbx+0x110]
mov edx, dword ptr [rbx+0x118]
mov r14d, dword ptr [r15+0x08]
test r14d, r14d
je G_M3094_IG23
mov rsi, gword ptr [r15+0x10]
test rsi, rsi
- je SHORT G_M3094_IG04
+ jne SHORT G_M3094_IG04
+ xor rsi, rsi
+ xor eax, eax
+ mov ecx, eax
+ mov rax, rsi
+ mov esi, ecx
+ jmp SHORT G_M3094_IG05
+ ;; size=58 bbWeight=0.50 PerfScore 8.88
+G_M3094_IG04:
lea rax, bword ptr [rsi+0x0C]
mov esi, dword ptr [rsi+0x08]
- jmp SHORT G_M3094_IG05
- ;; size=54 bbWeight=0.50 PerfScore 9.50
-G_M3094_IG04:
- xor rax, rax
- xor esi, esi
- ;; size=4 bbWeight=0.50 PerfScore 0.25
+ ;; size=7 bbWeight=0.50 PerfScore 1.25
G_M3094_IG05:
cmp edx, esi
jne G_M3094_IG15
test esi, esi
je SHORT G_M3094_IG06
mov edx, esi
add rdx, rdx
mov rsi, rax
mov rax, 0xD1FFAB1E ; code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
call [rax]System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
test eax, eax
je G_M3094_IG15
;; size=40 bbWeight=0.50 PerfScore 3.88
G_M3094_IG06:
mov rdi, bword ptr [rbx+0x120]
mov edx, dword ptr [rbx+0x128]
cmp r14d, 2
jbe G_M3094_IG23
mov rsi, gword ptr [r15+0x20]
test rsi, rsi
- je SHORT G_M3094_IG07
+ jne SHORT G_M3094_IG07
+ xor rsi, rsi
+ xor eax, eax
+ mov ecx, eax
+ mov rax, rsi
+ mov esi, ecx
+ jmp SHORT G_M3094_IG08
+ ;; size=45 bbWeight=0.50 PerfScore 5.88
+G_M3094_IG07:
lea rax, bword ptr [rsi+0x0C]
mov esi, dword ptr [rsi+0x08]
- jmp SHORT G_M3094_IG08
- ;; size=41 bbWeight=0.50 PerfScore 6.50
-G_M3094_IG07:
- xor rax, rax
- xor esi, esi
- ;; size=4 bbWeight=0.50 PerfScore 0.25
+ ;; size=7 bbWeight=0.50 PerfScore 1.25
G_M3094_IG08:
cmp edx, esi
jne G_M3094_IG15
test esi, esi
je SHORT G_M3094_IG09
mov edx, esi
add rdx, rdx
mov rsi, rax
mov rax, 0xD1FFAB1E ; code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
call [rax]System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
test eax, eax
je G_M3094_IG15
;; size=40 bbWeight=0.50 PerfScore 3.88
G_M3094_IG09:
mov rdi, bword ptr [rbx+0x130]
mov edx, dword ptr [rbx+0x138]
cmp r14d, 3
jbe G_M3094_IG23
mov rsi, gword ptr [r15+0x28]
test rsi, rsi
- je SHORT G_M3094_IG10
+ jne SHORT G_M3094_IG10
+ xor rsi, rsi
+ xor eax, eax
+ mov ecx, eax
+ mov rax, rsi
+ mov esi, ecx
+ jmp SHORT G_M3094_IG11
+ ;; size=45 bbWeight=0.50 PerfScore 5.88
+G_M3094_IG10:
lea rax, bword ptr [rsi+0x0C]
mov esi, dword ptr [rsi+0x08]
- jmp SHORT G_M3094_IG11
- ;; size=41 bbWeight=0.50 PerfScore 6.50
-G_M3094_IG10:
- xor rax, rax
- xor esi, esi
- ;; size=4 bbWeight=0.50 PerfScore 0.25
+ ;; size=7 bbWeight=0.50 PerfScore 1.25
G_M3094_IG11:
cmp edx, esi
jne SHORT G_M3094_IG15
test esi, esi
je SHORT G_M3094_IG12
mov edx, esi
add rdx, rdx
mov rsi, rax
mov rax, 0xD1FFAB1E ; code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
call [rax]System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
test eax, eax
je SHORT G_M3094_IG15
;; size=32 bbWeight=0.50 PerfScore 3.88
G_M3094_IG12:
mov rdi, bword ptr [rbx+0x140]
mov edx, dword ptr [rbx+0x148]
cmp r14d, 4
jbe G_M3094_IG23
mov rsi, gword ptr [r15+0x30]
test rsi, rsi
- je SHORT G_M3094_IG13
+ jne SHORT G_M3094_IG13
+ xor rsi, rsi
+ xor eax, eax
+ mov ecx, eax
+ mov rax, rsi
+ mov esi, ecx
+ jmp SHORT G_M3094_IG14
+ ;; size=45 bbWeight=0.50 PerfScore 5.88
+G_M3094_IG13:
lea rax, bword ptr [rsi+0x0C]
mov esi, dword ptr [rsi+0x08]
- jmp SHORT G_M3094_IG14
- ;; size=41 bbWeight=0.50 PerfScore 6.50
-G_M3094_IG13:
- xor rax, rax
- xor esi, esi
- ;; size=4 bbWeight=0.50 PerfScore 0.25
+ ;; size=7 bbWeight=0.50 PerfScore 1.25
G_M3094_IG14:
cmp edx, esi
jne SHORT G_M3094_IG15
test esi, esi
je SHORT G_M3094_IG17
mov edx, esi
add rdx, rdx
mov rsi, rax
mov rax, 0xD1FFAB1E ; code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
call [rax]System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
test eax, eax
jne SHORT G_M3094_IG17
;; size=32 bbWeight=0.50 PerfScore 3.88
G_M3094_IG15:
xor eax, eax
;; size=2 bbWeight=0.50 PerfScore 0.12
G_M3094_IG16:
add rsp, 8
pop rbx
pop r14
pop r15
pop rbp
ret
;; size=11 bbWeight=0.50 PerfScore 1.62
G_M3094_IG17:
mov rdi, bword ptr [rbx+0x150]
mov edx, dword ptr [rbx+0x158]
cmp r14d, 5
jbe SHORT G_M3094_IG23
mov rsi, gword ptr [r15+0x38]
test rsi, rsi
- je SHORT G_M3094_IG18
+ jne SHORT G_M3094_IG18
+ xor rsi, rsi
+ xor eax, eax
+ mov ecx, eax
+ mov rax, rsi
+ mov esi, ecx
+ jmp SHORT G_M3094_IG19
+ ;; size=41 bbWeight=0.50 PerfScore 5.88
+G_M3094_IG18:
lea rax, bword ptr [rsi+0x0C]
mov esi, dword ptr [rsi+0x08]
- jmp SHORT G_M3094_IG19
- ;; size=37 bbWeight=0.50 PerfScore 6.50
-G_M3094_IG18:
- xor rax, rax
- xor esi, esi
- ;; size=4 bbWeight=0.50 PerfScore 0.25
+ ;; size=7 bbWeight=0.50 PerfScore 1.25
G_M3094_IG19:
cmp edx, esi
jne SHORT G_M3094_IG21
test esi, esi
je SHORT G_M3094_IG20
mov edx, esi
add rdx, rdx
mov rsi, rax
mov rax, 0xD1FFAB1E ; code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
call [rax]System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
jmp SHORT G_M3094_IG22
;; size=30 bbWeight=0.50 PerfScore 4.25
G_M3094_IG20:
mov eax, 1
jmp SHORT G_M3094_IG22
;; size=7 bbWeight=0.50 PerfScore 1.12
G_M3094_IG21:
xor eax, eax
;; size=2 bbWeight=0.50 PerfScore 0.12
G_M3094_IG22:
add rsp, 8
pop rbx
pop r14
pop r15
pop rbp
ret
;; size=11 bbWeight=0.50 PerfScore 1.62
G_M3094_IG23:
call CORINFO_HELP_RNGCHKFAIL
int3
;; size=6 bbWeight=0 PerfScore 0.00
-; Total bytes of code 476, prolog size 12, PerfScore 71.88, instruction count 145, allocated bytes for code 476 (MethodHash=3bd8f3e9) for method System.Globalization.TimeSpanParse+TimeSpanRawInfo:FullHMSFMatch(System.Globalization.TimeSpanFormat+FormatLiterals):ubyte:this (FullOpts)
+; Total bytes of code 511, prolog size 12, PerfScore 73.75, instruction count 160, allocated bytes for code 511 (MethodHash=3bd8f3e9) for method System.Globalization.TimeSpanParse+TimeSpanRawInfo:FullHMSFMatch(System.Globalization.TimeSpanFormat+FormatLiterals):ubyte:this (FullOpts)
; ============================================================
28 (7.16 % of base) - System.Globalization.TimeSpanParse+TimeSpanRawInfo:FullDHMMatch(System.Globalization.TimeSpanFormat+FormatLiterals):ubyte:this
; Assembly listing for method System.Globalization.TimeSpanParse+TimeSpanRawInfo:FullDHMMatch(System.Globalization.TimeSpanFormat+FormatLiterals):ubyte:this (FullOpts)
; Emitting BLENDED_CODE for X64 with AVX - Unix
; FullOpts code
; optimized code
; rbp based frame
; partially interruptible
; No PGO data
; 0 inlinees with PGO data; 32 single block inlinees; 12 inlinees without PGO data
; Final local variable assignments
;
; V00 this [V00,T00] ( 12, 7.50) byref -> rbx this single-def
; V01 arg1 [V01,T47] ( 1, 1 ) struct (40) [rbp+0x10] do-not-enreg[SF] ld-addr-op single-def <System.Globalization.TimeSpanFormat+FormatLiterals>
;# V02 OutArgs [V02 ] ( 1, 1 ) struct ( 0) [rsp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
;* V03 tmp1 [V03 ] ( 0, 0 ) struct (16) zero-ref "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
;* V04 tmp2 [V04 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V05 tmp3 [V05 ] ( 0, 0 ) struct (16) zero-ref "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
;* V06 tmp4 [V06 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V07 tmp5 [V07 ] ( 0, 0 ) struct (16) zero-ref "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
;* V08 tmp6 [V08 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V09 tmp7 [V09 ] ( 0, 0 ) struct (16) zero-ref "impAppendStmt" <System.ReadOnlySpan`1[ushort]>
;* V10 tmp8 [V10 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.ReadOnlySpan`1[ushort]>
;* V11 tmp9 [V11 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V12 tmp10 [V12,T01] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.String>
-;* V13 tmp11 [V13 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V14 tmp12 [V14 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V13 tmp11 [V13 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V14 tmp12 [V14 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V15 tmp13 [V15,T12] ( 2, 2 ) byref -> rax single-def "Inlining Arg"
; V16 tmp14 [V16,T16] ( 2, 2 ) int -> rsi "Inlining Arg"
; V17 tmp15 [V17,T32] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V18 tmp16 [V18 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V19 tmp17 [V19 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V20 tmp18 [V20,T33] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V21 tmp19 [V21 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V22 tmp20 [V22 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V23 tmp21 [V23 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V24 tmp22 [V24 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V25 tmp23 [V25 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
;* V26 tmp24 [V26 ] ( 0, 0 ) byref -> zero-ref single-def "impAppendStmt"
;* V27 tmp25 [V27 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V28 tmp26 [V28 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V29 tmp27 [V29 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V30 tmp28 [V30 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V31 tmp29 [V31 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V32 tmp30 [V32,T02] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.String>
-;* V33 tmp31 [V33 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V34 tmp32 [V34 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V33 tmp31 [V33 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V34 tmp32 [V34 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V35 tmp33 [V35,T13] ( 2, 2 ) byref -> rax single-def "Inlining Arg"
; V36 tmp34 [V36,T17] ( 2, 2 ) int -> rsi "Inlining Arg"
; V37 tmp35 [V37,T34] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V38 tmp36 [V38 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V39 tmp37 [V39 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V40 tmp38 [V40,T35] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V41 tmp39 [V41 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V42 tmp40 [V42 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V43 tmp41 [V43 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V44 tmp42 [V44 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V45 tmp43 [V45 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
;* V46 tmp44 [V46 ] ( 0, 0 ) byref -> zero-ref single-def "impAppendStmt"
;* V47 tmp45 [V47 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V48 tmp46 [V48 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V49 tmp47 [V49 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V50 tmp48 [V50 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V51 tmp49 [V51 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V52 tmp50 [V52,T03] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.String>
-;* V53 tmp51 [V53 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V54 tmp52 [V54 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V53 tmp51 [V53 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V54 tmp52 [V54 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V55 tmp53 [V55,T14] ( 2, 2 ) byref -> rax single-def "Inlining Arg"
; V56 tmp54 [V56,T18] ( 2, 2 ) int -> rsi "Inlining Arg"
; V57 tmp55 [V57,T36] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V58 tmp56 [V58 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V59 tmp57 [V59 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V60 tmp58 [V60,T37] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V61 tmp59 [V61 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V62 tmp60 [V62 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V63 tmp61 [V63 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V64 tmp62 [V64 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V65 tmp63 [V65 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
;* V66 tmp64 [V66 ] ( 0, 0 ) byref -> zero-ref single-def "impAppendStmt"
;* V67 tmp65 [V67 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V68 tmp66 [V68 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V69 tmp67 [V69 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V70 tmp68 [V70 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V71 tmp69 [V71 ] ( 0, 0 ) struct (16) zero-ref "Inline return value spill temp" <System.ReadOnlySpan`1[ushort]>
; V72 tmp70 [V72,T04] ( 4, 4 ) ref -> rsi class-hnd exact single-def "Inlining Arg" <System.String>
-;* V73 tmp71 [V73 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
-;* V74 tmp72 [V74 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V73 tmp71 [V73 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline ldloca(s) first use temp" <System.ReadOnlySpan`1[ushort]>
+;* V74 tmp72 [V74 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.ReadOnlySpan`1[ushort]>
; V75 tmp73 [V75,T15] ( 2, 2 ) byref -> rax single-def "Inlining Arg"
; V76 tmp74 [V76,T19] ( 2, 2 ) int -> rsi "Inlining Arg"
; V77 tmp75 [V77,T11] ( 4, 2 ) ubyte -> rax "Inline return value spill temp"
;* V78 tmp76 [V78 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V79 tmp77 [V79 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V80 tmp78 [V80,T38] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V81 tmp79 [V81 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V82 tmp80 [V82 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V83 tmp81 [V83 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V84 tmp82 [V84 ] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
;* V85 tmp83 [V85 ] ( 0, 0 ) byref -> zero-ref "impAppendStmt"
;* V86 tmp84 [V86 ] ( 0, 0 ) byref -> zero-ref single-def "impAppendStmt"
;* V87 tmp85 [V87 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V88 tmp86 [V88 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V89 tmp87 [V89 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
;* V90 tmp88 [V90 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.ReadOnlySpan`1[ushort]>
; V91 tmp89 [V91,T24] ( 2, 1 ) byref -> rdi single-def "field V03._reference (fldOffset=0x0)" P-INDEP
; V92 tmp90 [V92,T39] ( 2, 1 ) int -> rdx "field V03._length (fldOffset=0x8)" P-INDEP
;* V93 tmp91 [V93 ] ( 0, 0 ) byref -> zero-ref single-def "field V04._reference (fldOffset=0x0)" P-INDEP
;* V94 tmp92 [V94 ] ( 0, 0 ) int -> zero-ref "field V04._length (fldOffset=0x8)" P-INDEP
; V95 tmp93 [V95,T25] ( 2, 1 ) byref -> rdi single-def "field V05._reference (fldOffset=0x0)" P-INDEP
; V96 tmp94 [V96,T40] ( 2, 1 ) int -> rdx "field V05._length (fldOffset=0x8)" P-INDEP
;* V97 tmp95 [V97 ] ( 0, 0 ) byref -> zero-ref single-def "field V06._reference (fldOffset=0x0)" P-INDEP
;* V98 tmp96 [V98 ] ( 0, 0 ) int -> zero-ref "field V06._length (fldOffset=0x8)" P-INDEP
; V99 tmp97 [V99,T26] ( 2, 1 ) byref -> rdi single-def "field V07._reference (fldOffset=0x0)" P-INDEP
; V100 tmp98 [V100,T41] ( 2, 1 ) int -> rdx "field V07._length (fldOffset=0x8)" P-INDEP
;* V101 tmp99 [V101 ] ( 0, 0 ) byref -> zero-ref single-def "field V08._reference (fldOffset=0x0)" P-INDEP
;* V102 tmp100 [V102 ] ( 0, 0 ) int -> zero-ref "field V08._length (fldOffset=0x8)" P-INDEP
; V103 tmp101 [V103,T27] ( 2, 1 ) byref -> rdi single-def "field V09._reference (fldOffset=0x0)" P-INDEP
; V104 tmp102 [V104,T42] ( 2, 1 ) int -> rdx "field V09._length (fldOffset=0x8)" P-INDEP
;* V105 tmp103 [V105 ] ( 0, 0 ) byref -> zero-ref single-def "field V10._reference (fldOffset=0x0)" P-INDEP
;* V106 tmp104 [V106 ] ( 0, 0 ) int -> zero-ref "field V10._length (fldOffset=0x8)" P-INDEP
-; V107 tmp105 [V107,T20] ( 3, 1.50) byref -> rax "field V11._reference (fldOffset=0x0)" P-INDEP
-; V108 tmp106 [V108,T06] ( 5, 2.50) int -> rsi "field V11._length (fldOffset=0x8)" P-INDEP
-; V109 tmp107 [V109,T28] ( 2, 1 ) byref -> rax single-def "field V13._reference (fldOffset=0x0)" P-INDEP
-; V110 tmp108 [V110,T43] ( 2, 1 ) int -> rsi "field V13._length (fldOffset=0x8)" P-INDEP
-;* V111 tmp109 [V111 ] ( 0, 0 ) byref -> zero-ref single-def "field V14._reference (fldOffset=0x0)" P-INDEP
-;* V112 tmp110 [V112 ] ( 0, 0 ) int -> zero-ref "field V14._length (fldOffset=0x8)" P-INDEP
+; V107 tmp105 [V107,T20] ( 3, 1.50) byref -> registers "field V11._reference (fldOffset=0x0)" P-INDEP
+; V108 tmp106 [V108,T06] ( 5, 2.50) int -> registers "field V11._length (fldOffset=0x8)" P-INDEP
+;* V109 tmp107 [V109 ] ( 0, 0 ) byref -> zero-ref single-def "field V13._reference (fldOffset=0x0)" P-INDEP
+;* V110 tmp108 [V110 ] ( 0, 0 ) int -> zero-ref "field V13._length (fldOffset=0x8)" P-INDEP
+; V111 tmp109 [V111,T28] ( 2, 1 ) byref -> rax single-def "field V14._reference (fldOffset=0x0)" P-INDEP
+; V112 tmp110 [V112,T43] ( 2, 1 ) int -> rsi "field V14._length (fldOffset=0x8)" P-INDEP
;* V113 tmp111 [V113 ] ( 0, 0 ) byref -> zero-ref single-def "field V18._reference (fldOffset=0x0)" P-INDEP
;* V114 tmp112 [V114 ] ( 0, 0 ) int -> zero-ref "field V18._length (fldOffset=0x8)" P-INDEP
;* V115 tmp113 [V115 ] ( 0, 0 ) byref -> zero-ref single-def "field V19._reference (fldOffset=0x0)" P-INDEP
;* V116 tmp114 [V116 ] ( 0, 0 ) int -> zero-ref "field V19._length (fldOffset=0x8)" P-INDEP
;* V117 tmp115 [V117 ] ( 0, 0 ) byref -> zero-ref single-def "field V21._reference (fldOffset=0x0)" P-INDEP
;* V118 tmp116 [V118 ] ( 0, 0 ) int -> zero-ref "field V21._length (fldOffset=0x8)" P-INDEP
;* V119 tmp117 [V119 ] ( 0, 0 ) byref -> zero-ref single-def "field V23._reference (fldOffset=0x0)" P-INDEP
;* V120 tmp118 [V120 ] ( 0, 0 ) int -> zero-ref "field V23._length (fldOffset=0x8)" P-INDEP
;* V121 tmp119 [V121 ] ( 0, 0 ) byref -> zero-ref single-def "field V27._reference (fldOffset=0x0)" P-INDEP
;* V122 tmp120 [V122 ] ( 0, 0 ) int -> zero-ref "field V27._length (fldOffset=0x8)" P-INDEP
;* V123 tmp121 [V123 ] ( 0, 0 ) byref -> zero-ref single-def "field V28._reference (fldOffset=0x0)" P-INDEP
;* V124 tmp122 [V124 ] ( 0, 0 ) int -> zero-ref "field V28._length (fldOffset=0x8)" P-INDEP
;* V125 tmp123 [V125 ] ( 0, 0 ) byref -> zero-ref "field V29._reference (fldOffset=0x0)" P-INDEP
;* V126 tmp124 [V126 ] ( 0, 0 ) int -> zero-ref "field V29._length (fldOffset=0x8)" P-INDEP
;* V127 tmp125 [V127 ] ( 0, 0 ) byref -> zero-ref "field V30._reference (fldOffset=0x0)" P-INDEP
;* V128 tmp126 [V128 ] ( 0, 0 ) int -> zero-ref "field V30._length (fldOffset=0x8)" P-INDEP
-; V129 tmp127 [V129,T21] ( 3, 1.50) byref -> rax "field V31._reference (fldOffset=0x0)" P-INDEP
-; V130 tmp128 [V130,T07] ( 5, 2.50) int -> rsi "field V31._length (fldOffset=0x8)" P-INDEP
-; V131 tmp129 [V131,T29] ( 2, 1 ) byref -> rax single-def "field V33._reference (fldOffset=0x0)" P-INDEP
-; V132 tmp130 [V132,T44] ( 2, 1 ) int -> rsi "field V33._length (fldOffset=0x8)" P-INDEP
-;* V133 tmp131 [V133 ] ( 0, 0 ) byref -> zero-ref single-def "field V34._reference (fldOffset=0x0)" P-INDEP
-;* V134 tmp132 [V134 ] ( 0, 0 ) int -> zero-ref "field V34._length (fldOffset=0x8)" P-INDEP
+; V129 tmp127 [V129,T21] ( 3, 1.50) byref -> registers "field V31._reference (fldOffset=0x0)" P-INDEP
+; V130 tmp128 [V130,T07] ( 5, 2.50) int -> registers "field V31._length (fldOffset=0x8)" P-INDEP
+;* V131 tmp129 [V131 ] ( 0, 0 ) byref -> zero-ref single-def "field V33._reference (fldOffset=0x0)" P-INDEP
+;* V132 tmp130 [V132 ] ( 0, 0 ) int -> zero-ref "field V33._length (fldOffset=0x8)" P-INDEP
+; V133 tmp131 [V133,T29] ( 2, 1 ) byref -> rax single-def "field V34._reference (fldOffset=0x0)" P-INDEP
+; V134 tmp132 [V134,T44] ( 2, 1 ) int -> rsi "field V34._length (fldOffset=0x8)" P-INDEP
;* V135 tmp133 [V135 ] ( 0, 0 ) byref -> zero-ref single-def "field V38._reference (fldOffset=0x0)" P-INDEP
;* V136 tmp134 [V136 ] ( 0, 0 ) int -> zero-ref "field V38._length (fldOffset=0x8)" P-INDEP
;* V137 tmp135 [V137 ] ( 0, 0 ) byref -> zero-ref single-def "field V39._reference (fldOffset=0x0)" P-INDEP
;* V138 tmp136 [V138 ] ( 0, 0 ) int -> zero-ref "field V39._length (fldOffset=0x8)" P-INDEP
;* V139 tmp137 [V139 ] ( 0, 0 ) byref -> zero-ref single-def "field V41._reference (fldOffset=0x0)" P-INDEP
;* V140 tmp138 [V140 ] ( 0, 0 ) int -> zero-ref "field V41._length (fldOffset=0x8)" P-INDEP
;* V141 tmp139 [V141 ] ( 0, 0 ) byref -> zero-ref single-def "field V43._reference (fldOffset=0x0)" P-INDEP
;* V142 tmp140 [V142 ] ( 0, 0 ) int -> zero-ref "field V43._length (fldOffset=0x8)" P-INDEP
;* V143 tmp141 [V143 ] ( 0, 0 ) byref -> zero-ref single-def "field V47._reference (fldOffset=0x0)" P-INDEP
;* V144 tmp142 [V144 ] ( 0, 0 ) int -> zero-ref "field V47._length (fldOffset=0x8)" P-INDEP
;* V145 tmp143 [V145 ] ( 0, 0 ) byref -> zero-ref single-def "field V48._reference (fldOffset=0x0)" P-INDEP
;* V146 tmp144 [V146 ] ( 0, 0 ) int -> zero-ref "field V48._length (fldOffset=0x8)" P-INDEP
;* V147 tmp145 [V147 ] ( 0, 0 ) byref -> zero-ref "field V49._reference (fldOffset=0x0)" P-INDEP
;* V148 tmp146 [V148 ] ( 0, 0 ) int -> zero-ref "field V49._length (fldOffset=0x8)" P-INDEP
;* V149 tmp147 [V149 ] ( 0, 0 ) byref -> zero-ref "field V50._reference (fldOffset=0x0)" P-INDEP
;* V150 tmp148 [V150 ] ( 0, 0 ) int -> zero-ref "field V50._length (fldOffset=0x8)" P-INDEP
-; V151 tmp149 [V151,T22] ( 3, 1.50) byref -> rax "field V51._reference (fldOffset=0x0)" P-INDEP
-; V152 tmp150 [V152,T08] ( 5, 2.50) int -> rsi "field V51._length (fldOffset=0x8)" P-INDEP
-; V153 tmp151 [V153,T30] ( 2, 1 ) byref -> rax single-def "field V53._reference (fldOffset=0x0)" P-INDEP
-; V154 tmp152 [V154,T45] ( 2, 1 ) int -> rsi "field V53._length (fldOffset=0x8)" P-INDEP
-;* V155 tmp153 [V155 ] ( 0, 0 ) byref -> zero-ref single-def "field V54._reference (fldOffset=0x0)" P-INDEP
-;* V156 tmp154 [V156 ] ( 0, 0 ) int -> zero-ref "field V54._length (fldOffset=0x8)" P-INDEP
+; V151 tmp149 [V151,T22] ( 3, 1.50) byref -> registers "field V51._reference (fldOffset=0x0)" P-INDEP
+; V152 tmp150 [V152,T08] ( 5, 2.50) int -> registers "field V51._length (fldOffset=0x8)" P-INDEP
+;* V153 tmp151 [V153 ] ( 0, 0 ) byref -> zero-ref single-def "field V53._reference (fldOffset=0x0)" P-INDEP
+;* V154 tmp152 [V154 ] ( 0, 0 ) int -> zero-ref "field V53._length (fldOffset=0x8)" P-INDEP
+; V155 tmp153 [V155,T30] ( 2, 1 ) byref -> rax single-def "field V54._reference (fldOffset=0x0)" P-INDEP
+; V156 tmp154 [V156,T45] ( 2, 1 ) int -> rsi "field V54._length (fldOffset=0x8)" P-INDEP
;* V157 tmp155 [V157 ] ( 0, 0 ) byref -> zero-ref single-def "field V58._reference (fldOffset=0x0)" P-INDEP
;* V158 tmp156 [V158 ] ( 0, 0 ) int -> zero-ref "field V58._length (fldOffset=0x8)" P-INDEP
;* V159 tmp157 [V159 ] ( 0, 0 ) byref -> zero-ref single-def "field V59._reference (fldOffset=0x0)" P-INDEP
;* V160 tmp158 [V160 ] ( 0, 0 ) int -> zero-ref "field V59._length (fldOffset=0x8)" P-INDEP
;* V161 tmp159 [V161 ] ( 0, 0 ) byref -> zero-ref single-def "field V61._reference (fldOffset=0x0)" P-INDEP
;* V162 tmp160 [V162 ] ( 0, 0 ) int -> zero-ref "field V61._length (fldOffset=0x8)" P-INDEP
;* V163 tmp161 [V163 ] ( 0, 0 ) byref -> zero-ref single-def "field V63._reference (fldOffset=0x0)" P-INDEP
;* V164 tmp162 [V164 ] ( 0, 0 ) int -> zero-ref "field V63._length (fldOffset=0x8)" P-INDEP
;* V165 tmp163 [V165 ] ( 0, 0 ) byref -> zero-ref single-def "field V67._reference (fldOffset=0x0)" P-INDEP
;* V166 tmp164 [V166 ] ( 0, 0 ) int -> zero-ref "field V67._length (fldOffset=0x8)" P-INDEP
;* V167 tmp165 [V167 ] ( 0, 0 ) byref -> zero-ref single-def "field V68._reference (fldOffset=0x0)" P-INDEP
;* V168 tmp166 [V168 ] ( 0, 0 ) int -> zero-ref "field V68._length (fldOffset=0x8)" P-INDEP
;* V169 tmp167 [V169 ] ( 0, 0 ) byref -> zero-ref "field V69._reference (fldOffset=0x0)" P-INDEP
;* V170 tmp168 [V170 ] ( 0, 0 ) int -> zero-ref "field V69._length (fldOffset=0x8)" P-INDEP
;* V171 tmp169 [V171 ] ( 0, 0 ) byref -> zero-ref "field V70._reference (fldOffset=0x0)" P-INDEP
;* V172 tmp170 [V172 ] ( 0, 0 ) int -> zero-ref "field V70._length (fldOffset=0x8)" P-INDEP
-; V173 tmp171 [V173,T23] ( 3, 1.50) byref -> rax "field V71._reference (fldOffset=0x0)" P-INDEP
-; V174 tmp172 [V174,T09] ( 5, 2.50) int -> rsi "field V71._length (fldOffset=0x8)" P-INDEP
-; V175 tmp173 [V175,T31] ( 2, 1 ) byref -> rax single-def "field V73._reference (fldOffset=0x0)" P-INDEP
-; V176 tmp174 [V176,T46] ( 2, 1 ) int -> rsi "field V73._length (fldOffset=0x8)" P-INDEP
-;* V177 tmp175 [V177 ] ( 0, 0 ) byref -> zero-ref single-def "field V74._reference (fldOffset=0x0)" P-INDEP
-;* V178 tmp176 [V178 ] ( 0, 0 ) int -> zero-ref "field V74._length (fldOffset=0x8)" P-INDEP
+; V173 tmp171 [V173,T23] ( 3, 1.50) byref -> registers "field V71._reference (fldOffset=0x0)" P-INDEP
+; V174 tmp172 [V174,T09] ( 5, 2.50) int -> registers "field V71._length (fldOffset=0x8)" P-INDEP
+;* V175 tmp173 [V175 ] ( 0, 0 ) byref -> zero-ref single-def "field V73._reference (fldOffset=0x0)" P-INDEP
+;* V176 tmp174 [V176 ] ( 0, 0 ) int -> zero-ref "field V73._length (fldOffset=0x8)" P-INDEP
+; V177 tmp175 [V177,T31] ( 2, 1 ) byref -> rax single-def "field V74._reference (fldOffset=0x0)" P-INDEP
+; V178 tmp176 [V178,T46] ( 2, 1 ) int -> rsi "field V74._length (fldOffset=0x8)" P-INDEP
;* V179 tmp177 [V179 ] ( 0, 0 ) byref -> zero-ref single-def "field V78._reference (fldOffset=0x0)" P-INDEP
;* V180 tmp178 [V180 ] ( 0, 0 ) int -> zero-ref "field V78._length (fldOffset=0x8)" P-INDEP
;* V181 tmp179 [V181 ] ( 0, 0 ) byref -> zero-ref single-def "field V79._reference (fldOffset=0x0)" P-INDEP
;* V182 tmp180 [V182 ] ( 0, 0 ) int -> zero-ref "field V79._length (fldOffset=0x8)" P-INDEP
;* V183 tmp181 [V183 ] ( 0, 0 ) byref -> zero-ref single-def "field V81._reference (fldOffset=0x0)" P-INDEP
;* V184 tmp182 [V184 ] ( 0, 0 ) int -> zero-ref "field V81._length (fldOffset=0x8)" P-INDEP
;* V185 tmp183 [V185 ] ( 0, 0 ) byref -> zero-ref single-def "field V83._reference (fldOffset=0x0)" P-INDEP
;* V186 tmp184 [V186 ] ( 0, 0 ) int -> zero-ref "field V83._length (fldOffset=0x8)" P-INDEP
;* V187 tmp185 [V187 ] ( 0, 0 ) byref -> zero-ref single-def "field V87._reference (fldOffset=0x0)" P-INDEP
;* V188 tmp186 [V188 ] ( 0, 0 ) int -> zero-ref "field V87._length (fldOffset=0x8)" P-INDEP
;* V189 tmp187 [V189 ] ( 0, 0 ) byref -> zero-ref single-def "field V88._reference (fldOffset=0x0)" P-INDEP
;* V190 tmp188 [V190 ] ( 0, 0 ) int -> zero-ref "field V88._length (fldOffset=0x8)" P-INDEP
;* V191 tmp189 [V191 ] ( 0, 0 ) byref -> zero-ref "field V89._reference (fldOffset=0x0)" P-INDEP
;* V192 tmp190 [V192 ] ( 0, 0 ) int -> zero-ref "field V89._length (fldOffset=0x8)" P-INDEP
;* V193 tmp191 [V193 ] ( 0, 0 ) byref -> zero-ref "field V90._reference (fldOffset=0x0)" P-INDEP
;* V194 tmp192 [V194 ] ( 0, 0 ) int -> zero-ref "field V90._length (fldOffset=0x8)" P-INDEP
; V195 tmp193 [V195,T05] ( 6, 3.50) ref -> r15 single-def "V01.[008..016)"
; V196 cse0 [V196,T10] ( 5, 2.50) int -> r14 "CSE #01: moderate"
;
; Lcl frame size = 8
G_M38759_IG01:
push rbp
push r15
push r14
push rbx
push rax
lea rbp, [rsp+0x20]
mov rbx, rdi
;; size=15 bbWeight=1 PerfScore 5.75
G_M38759_IG02:
mov r15, gword ptr [rbp+0x18]
cmp dword ptr [rbx+0x14], 4
jne G_M38759_IG12
;; size=14 bbWeight=1 PerfScore 5.00
G_M38759_IG03:
cmp dword ptr [rbx+0x18], 3
jne G_M38759_IG12
mov rdi, bword ptr [rbx+0x110]
mov edx, dword ptr [rbx+0x118]
mov r14d, dword ptr [r15+0x08]
test r14d, r14d
je G_M38759_IG20
mov rsi, gword ptr [r15+0x10]
test rsi, rsi
- je SHORT G_M38759_IG04
+ jne SHORT G_M38759_IG04
+ xor rsi, rsi
+ xor eax, eax
+ mov ecx, eax
+ mov rax, rsi
+ mov esi, ecx
+ jmp SHORT G_M38759_IG05
+ ;; size=58 bbWeight=0.50 PerfScore 8.88
+G_M38759_IG04:
lea rax, bword ptr [rsi+0x0C]
mov esi, dword ptr [rsi+0x08]
- jmp SHORT G_M38759_IG05
- ;; size=54 bbWeight=0.50 PerfScore 9.50
-G_M38759_IG04:
- xor rax, rax
- xor esi, esi
- ;; size=4 bbWeight=0.50 PerfScore 0.25
+ ;; size=7 bbWeight=0.50 PerfScore 1.25
G_M38759_IG05:
cmp edx, esi
jne G_M38759_IG12
test esi, esi
je SHORT G_M38759_IG06
mov edx, esi
add rdx, rdx
mov rsi, rax
mov rax, 0xD1FFAB1E ; code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
call [rax]System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
test eax, eax
je G_M38759_IG12
;; size=40 bbWeight=0.50 PerfScore 3.88
G_M38759_IG06:
mov rdi, bword ptr [rbx+0x120]
mov edx, dword ptr [rbx+0x128]
cmp r14d, 1
jbe G_M38759_IG20
mov rsi, gword ptr [r15+0x18]
test rsi, rsi
- je SHORT G_M38759_IG07
+ jne SHORT G_M38759_IG07
+ xor rsi, rsi
+ xor eax, eax
+ mov ecx, eax
+ mov rax, rsi
+ mov esi, ecx
+ jmp SHORT G_M38759_IG08
+ ;; size=45 bbWeight=0.50 PerfScore 5.88
+G_M38759_IG07:
lea rax, bword ptr [rsi+0x0C]
mov esi, dword ptr [rsi+0x08]
- jmp SHORT G_M38759_IG08
- ;; size=41 bbWeight=0.50 PerfScore 6.50
-G_M38759_IG07:
- xor rax, rax
- xor esi, esi
- ;; size=4 bbWeight=0.50 PerfScore 0.25
+ ;; size=7 bbWeight=0.50 PerfScore 1.25
G_M38759_IG08:
cmp edx, esi
jne SHORT G_M38759_IG12
test esi, esi
je SHORT G_M38759_IG09
mov edx, esi
add rdx, rdx
mov rsi, rax
mov rax, 0xD1FFAB1E ; code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
call [rax]System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
test eax, eax
je SHORT G_M38759_IG12
;; size=32 bbWeight=0.50 PerfScore 3.88
G_M38759_IG09:
mov rdi, bword ptr [rbx+0x130]
mov edx, dword ptr [rbx+0x138]
cmp r14d, 2
jbe G_M38759_IG20
mov rsi, gword ptr [r15+0x20]
test rsi, rsi
- je SHORT G_M38759_IG10
+ jne SHORT G_M38759_IG10
+ xor rsi, rsi
+ xor eax, eax
+ mov ecx, eax
+ mov rax, rsi
+ mov esi, ecx
+ jmp SHORT G_M38759_IG11
+ ;; size=45 bbWeight=0.50 PerfScore 5.88
+G_M38759_IG10:
lea rax, bword ptr [rsi+0x0C]
mov esi, dword ptr [rsi+0x08]
- jmp SHORT G_M38759_IG11
- ;; size=41 bbWeight=0.50 PerfScore 6.50
-G_M38759_IG10:
- xor rax, rax
- xor esi, esi
- ;; size=4 bbWeight=0.50 PerfScore 0.25
+ ;; size=7 bbWeight=0.50 PerfScore 1.25
G_M38759_IG11:
cmp edx, esi
jne SHORT G_M38759_IG12
test esi, esi
je SHORT G_M38759_IG14
mov edx, esi
add rdx, rdx
mov rsi, rax
mov rax, 0xD1FFAB1E ; code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
call [rax]System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
test eax, eax
jne SHORT G_M38759_IG14
;; size=32 bbWeight=0.50 PerfScore 3.88
G_M38759_IG12:
xor eax, eax
;; size=2 bbWeight=0.50 PerfScore 0.12
G_M38759_IG13:
add rsp, 8
pop rbx
pop r14
pop r15
pop rbp
ret
;; size=11 bbWeight=0.50 PerfScore 1.62
G_M38759_IG14:
mov rdi, bword ptr [rbx+0x140]
mov edx, dword ptr [rbx+0x148]
cmp r14d, 5
jbe SHORT G_M38759_IG20
mov rsi, gword ptr [r15+0x38]
test rsi, rsi
- je SHORT G_M38759_IG15
+ jne SHORT G_M38759_IG15
+ xor rsi, rsi
+ xor eax, eax
+ mov ecx, eax
+ mov rax, rsi
+ mov esi, ecx
+ jmp SHORT G_M38759_IG16
+ ;; size=41 bbWeight=0.50 PerfScore 5.88
+G_M38759_IG15:
lea rax, bword ptr [rsi+0x0C]
mov esi, dword ptr [rsi+0x08]
- jmp SHORT G_M38759_IG16
- ;; size=37 bbWeight=0.50 PerfScore 6.50
-G_M38759_IG15:
- xor rax, rax
- xor esi, esi
- ;; size=4 bbWeight=0.50 PerfScore 0.25
+ ;; size=7 bbWeight=0.50 PerfScore 1.25
G_M38759_IG16:
cmp edx, esi
jne SHORT G_M38759_IG18
test esi, esi
je SHORT G_M38759_IG17
mov edx, esi
add rdx, rdx
mov rsi, rax
mov rax, 0xD1FFAB1E ; code for System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
call [rax]System.SpanHelpers:SequenceEqual(byref,byref,ulong):ubyte
jmp SHORT G_M38759_IG19
;; size=30 bbWeight=0.50 PerfScore 4.25
G_M38759_IG17:
mov eax, 1
jmp SHORT G_M38759_IG19
;; size=7 bbWeight=0.50 PerfScore 1.12
G_M38759_IG18:
xor eax, eax
;; size=2 bbWeight=0.50 PerfScore 0.12
G_M38759_IG19:
add rsp, 8
pop rbx
pop r14
pop r15
pop rbp
ret
;; size=11 bbWeight=0.50 PerfScore 1.62
G_M38759_IG20:
call CORINFO_HELP_RNGCHKFAIL
int3
;; size=6 bbWeight=0 PerfScore 0.00
-; Total bytes of code 391, prolog size 12, PerfScore 61.25, instruction count 122, allocated bytes for code 391 (MethodHash=b7746898) for method System.Globalization.TimeSpanParse+TimeSpanRawInfo:FullDHMMatch(System.Globalization.TimeSpanFormat+FormatLiterals):ubyte:this (FullOpts)
+; Total bytes of code 419, prolog size 12, PerfScore 62.75, instruction count 134, allocated bytes for code 419 (MethodHash=b7746898) for method System.Globalization.TimeSpanParse+TimeSpanRawInfo:FullDHMMatch(System.Globalization.TimeSpanFormat+FormatLiterals):ubyte:this (FullOpts)
; ============================================================
22 (12.15 % of base) - System.Threading.Tasks.ValueTask`1[System.__Canon]:Equals(System.Object):ubyte:this
; Assembly listing for method System.Threading.Tasks.ValueTask`1[System.__Canon]:Equals(System.Object):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; 1 single block inlinees; 1 inlinees without PGO data
; Final local variable assignments
;
; V00 this [V00,T02] ( 5, 3.50) byref -> rbx this single-def
; V01 TypeCtx [V01,T01] ( 6, 3.85) long -> rsi single-def
; V02 arg1 [V02,T00] ( 7, 4.75) ref -> rdx class-hnd single-def <System.Object>
;# V03 OutArgs [V03 ] ( 1, 1 ) struct ( 0) [rsp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
;* V04 tmp1 [V04 ] ( 0, 0 ) int -> zero-ref "spilling qmarkNull"
; V05 tmp2 [V05,T08] ( 3, 1.50) ubyte -> rax "Inline return value spill temp"
;* V06 tmp3 [V06 ] ( 0, 0 ) struct (24) zero-ref "Inlining Arg" <System.Threading.Tasks.ValueTask`1[System.__Canon]>
;* V07 tmp4 [V07 ] ( 0, 0 ) long -> zero-ref "Inlining Arg"
;* V08 tmp5 [V08 ] ( 0, 0 ) long -> zero-ref "spilling helperCall"
;* V09 tmp6 [V09 ] ( 0, 0 ) long -> zero-ref "Inlining Arg"
-; V10 tmp7 [V10,T06] ( 3, 1.50) ref -> rax single-def "field V06._obj (fldOffset=0x0)" P-INDEP
-; V11 tmp8 [V11,T09] ( 2, 1 ) ref -> r15 single-def "field V06._result (fldOffset=0x8)" P-INDEP
-; V12 tmp9 [V12,T10] ( 2, 1 ) short -> rdi "field V06._token (fldOffset=0x10)" P-INDEP
+; V10 tmp7 [V10,T06] ( 3, 1.50) ref -> r15 single-def "field V06._obj (fldOffset=0x0)" P-INDEP
+; V11 tmp8 [V11,T09] ( 2, 1 ) ref -> r14 single-def "field V06._result (fldOffset=0x8)" P-INDEP
+; V12 tmp9 [V12,T10] ( 2, 1 ) short -> r13 "field V06._token (fldOffset=0x10)" P-INDEP
;* V13 tmp10 [V13 ] ( 0, 0 ) ubyte -> zero-ref "field V06._continueOnCapturedContext (fldOffset=0x12)" P-INDEP
; V14 tmp11 [V14,T03] ( 3, 3 ) ref -> rdi single-def "argument with side effect"
-; V15 cse0 [V15,T07] ( 3, 1.50) ref -> rcx "CSE #01: moderate"
+; V15 cse0 [V15,T07] ( 3, 1.50) ref -> r12 "CSE #01: moderate"
; V16 rat0 [V16,T05] ( 3, 2 ) long -> rdi "runtime lookup"
; V17 rat1 [V17,T04] ( 3, 2.80) long -> rdi "fgMakeTemp is creating a new local variable"
;
-; Lcl frame size = 16
+; Lcl frame size = 8
G_M59413_IG01:
push rbp
push r15
+ push r14
+ push r13
+ push r12
push rbx
- sub rsp, 16
- lea rbp, [rsp+0x20]
- mov qword ptr [rbp-0x18], rsi
+ push rax
+ lea rbp, [rsp+0x30]
+ mov qword ptr [rbp-0x30], rsi
mov rbx, rdi
- ;; size=20 bbWeight=1 PerfScore 5.00
+ ;; size=23 bbWeight=1 PerfScore 8.75
G_M59413_IG02:
test rdx, rdx
je G_M59413_IG11
;; size=9 bbWeight=1 PerfScore 1.25
G_M59413_IG03:
cmp qword ptr [rdx], rsi
jne G_M59413_IG11
;; size=9 bbWeight=0.25 PerfScore 1.00
G_M59413_IG04:
- mov rax, gword ptr [rdx+0x08]
- mov r15, gword ptr [rdx+0x10]
- movsx rdi, word ptr [rdx+0x18]
- mov rcx, gword ptr [rbx]
- mov rdx, rcx
- or rdx, rax
- je SHORT G_M59413_IG07
- cmp rcx, rax
- je SHORT G_M59413_IG05
- xor eax, eax
- jmp SHORT G_M59413_IG06
- ;; size=33 bbWeight=0.50 PerfScore 7.50
-G_M59413_IG05:
- cmp word ptr [rbx+0x10], di
- sete al
- movzx rax, al
- ;; size=10 bbWeight=0.50 PerfScore 2.12
-G_M59413_IG06:
- add rsp, 16
- pop rbx
- pop r15
- pop rbp
- ret
- ;; size=9 bbWeight=0.50 PerfScore 1.38
-G_M59413_IG07:
+ mov r15, gword ptr [rdx+0x08]
+ mov r14, gword ptr [rdx+0x10]
+ movsx r13, word ptr [rdx+0x18]
+ mov r12, gword ptr [rbx]
+ mov rdi, r12
+ or rdi, r15
+ jne SHORT G_M59413_IG08
mov rdi, qword ptr [rsi+0x30]
mov rdi, qword ptr [rdi]
mov rdi, qword ptr [rdi+0x10]
test rdi, rdi
- je SHORT G_M59413_IG10
- ;; size=16 bbWeight=0.50 PerfScore 3.62
-G_M59413_IG08:
+ je SHORT G_M59413_IG07
+ ;; size=40 bbWeight=0.50 PerfScore 9.38
+G_M59413_IG05:
call CORINFO_HELP_GET_GCSTATIC_BASE
mov rdi, gword ptr [rax]
mov rsi, gword ptr [rbx+0x08]
- mov rdx, r15
+ mov rdx, r14
mov rax, qword ptr [rdi]
mov rax, qword ptr [rax+0x40]
;; size=22 bbWeight=0.50 PerfScore 4.62
-G_M59413_IG09:
- add rsp, 16
+G_M59413_IG06:
+ add rsp, 8
pop rbx
+ pop r12
+ pop r13
+ pop r14
pop r15
pop rbp
tail.jmp [rax+0x20]System.Collections.Generic.EqualityComparer`1[System.__Canon]:Equals(System.__Canon,System.__Canon):ubyte:this
- ;; size=12 bbWeight=0.50 PerfScore 1.88
-G_M59413_IG10:
+ ;; size=18 bbWeight=0.50 PerfScore 2.62
+G_M59413_IG07:
mov rdi, rsi
mov rsi, 0xD1FFAB1E ; global ptr
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_RUNTIMEHANDLE_CLASS
call [rax]CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov rdi, rax
- jmp SHORT G_M59413_IG08
+ jmp SHORT G_M59413_IG05
;; size=30 bbWeight=0.10 PerfScore 0.60
+G_M59413_IG08:
+ cmp r12, r15
+ je SHORT G_M59413_IG09
+ xor eax, eax
+ jmp SHORT G_M59413_IG10
+ ;; size=9 bbWeight=0.50 PerfScore 1.75
+G_M59413_IG09:
+ cmp word ptr [rbx+0x10], r13w
+ sete al
+ movzx rax, al
+ ;; size=11 bbWeight=0.50 PerfScore 2.12
+G_M59413_IG10:
+ add rsp, 8
+ pop rbx
+ pop r12
+ pop r13
+ pop r14
+ pop r15
+ pop rbp
+ ret
+ ;; size=15 bbWeight=0.50 PerfScore 2.12
G_M59413_IG11:
xor eax, eax
;; size=2 bbWeight=0.50 PerfScore 0.12
G_M59413_IG12:
- add rsp, 16
+ add rsp, 8
pop rbx
+ pop r12
+ pop r13
+ pop r14
pop r15
pop rbp
ret
- ;; size=9 bbWeight=0.50 PerfScore 1.38
+ ;; size=15 bbWeight=0.50 PerfScore 2.12
-; Total bytes of code 181, prolog size 20, PerfScore 30.47, instruction count 58, allocated bytes for code 181 (MethodHash=df8c17ea) for method System.Threading.Tasks.ValueTask`1[System.__Canon]:Equals(System.Object):ubyte:this (FullOpts)
+; Total bytes of code 203, prolog size 23, PerfScore 36.47, instruction count 70, allocated bytes for code 203 (MethodHash=df8c17ea) for method System.Threading.Tasks.ValueTask`1[System.__Canon]:Equals(System.Object):ubyte:this (FullOpts)
; ============================================================
19 (2.48 % of base) - System.Collections.Generic.HashSet`1[System.__Canon]:AddIfNotPresent(System.__Canon,byref):ubyte:this
; Assembly listing for method System.Collections.Generic.HashSet`1[System.__Canon]:AddIfNotPresent(System.__Canon,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; 5 single block inlinees; 0 inlinees without PGO data
; Final local variable assignments
;
; V00 this [V00,T00] ( 24, 17 ) ref -> rbx this class-hnd single-def <System.Collections.Generic.HashSet`1[System.__Canon]>
; V01 arg1 [V01,T09] ( 7, 6.50) ref -> r15 ld-addr-op class-hnd single-def <System.__Canon>
; V02 arg2 [V02,T12] ( 5, 3.50) byref -> r14 single-def
; V03 loc0 [V03,T05] ( 10, 12.50) ref -> registers class-hnd <System.Collections.Generic.HashSet`1+Entry[System.__Canon][]>
; V04 loc1 [V04,T13] ( 4, 4 ) ref -> r12 class-hnd single-def <System.Collections.Generic.IEqualityComparer`1[System.__Canon]>
; V05 loc2 [V05,T10] ( 5, 7 ) int -> [rbp-0x34] spill-single-def
; V06 loc3 [V06,T04] ( 5, 13.50) int -> [rbp-0x38]
; V07 loc4 [V07,T16] ( 5, 3.50) byref -> [rbp-0x50]
; V08 loc5 [V08,T15] ( 7, 3.50) int -> [rbp-0x3C]
;* V09 loc6 [V09 ] ( 0, 0 ) int -> zero-ref
;* V10 loc7 [V10 ] ( 0, 0 ) byref -> zero-ref
; V11 loc8 [V11,T01] ( 7, 18.50) int -> [rbp-0x40]
; V12 loc9 [V12,T03] ( 4, 14 ) byref -> [rbp-0x58] spill-single-def
; V13 loc10 [V13,T28] ( 3, 1.50) int -> [rbp-0x44] spill-single-def
;# V14 OutArgs [V14 ] ( 1, 1 ) struct ( 0) [rsp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-;* V15 tmp1 [V15 ] ( 0, 0 ) long -> zero-ref "spilling helperCall"
-; V16 tmp2 [V16,T17] ( 4, 3 ) long -> r11 "VirtualCall with runtime lookup"
-; V17 tmp3 [V17,T24] ( 3, 2 ) int -> registers
-;* V18 tmp4 [V18 ] ( 0, 0 ) long -> zero-ref "spilling helperCall"
-; V19 tmp5 [V19,T06] ( 4, 12 ) long -> r11 "VirtualCall with runtime lookup"
-; V20 tmp6 [V20,T14] ( 4, 4 ) byref -> rdi single-def "dup spill"
+; V15 tmp1 [V15,T24] ( 3, 2 ) int -> registers
+;* V16 tmp2 [V16 ] ( 0, 0 ) long -> zero-ref "spilling helperCall"
+; V17 tmp3 [V17,T06] ( 4, 12 ) long -> r11 "VirtualCall with runtime lookup"
+; V18 tmp4 [V18,T14] ( 4, 4 ) byref -> rdi single-def "dup spill"
+;* V19 tmp5 [V19 ] ( 0, 0 ) long -> zero-ref "spilling helperCall"
+; V20 tmp6 [V20,T17] ( 4, 3 ) long -> r11 "VirtualCall with runtime lookup"
; V21 tmp7 [V21,T25] ( 2, 2 ) byref -> rdx single-def "Inline return value spill temp"
; V22 tmp8 [V22,T18] ( 3, 3 ) ref -> rdi class-hnd single-def "Inline stloc first use temp" <int[]>
;* V23 tmp9 [V23 ] ( 0, 0 ) long -> zero-ref "Inlining Arg"
;* V24 tmp10 [V24 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
; V25 tmp11 [V25,T33] ( 2, 1 ) byref -> rdx single-def "Inline return value spill temp"
; V26 tmp12 [V26,T27] ( 3, 1.50) ref -> rdi class-hnd single-def "Inline stloc first use temp" <int[]>
;* V27 tmp13 [V27 ] ( 0, 0 ) long -> zero-ref "Inlining Arg"
;* V28 tmp14 [V28 ] ( 0, 0 ) int -> zero-ref "Inlining Arg"
; V29 tmp15 [V29,T11] ( 3, 6 ) int -> rsi "index expr"
; V30 tmp16 [V30,T26] ( 2, 2 ) int -> rsi "argument with side effect"
; V31 tmp17 [V31,T19] ( 3, 3 ) int -> rsi "index expr"
; V32 tmp18 [V32,T20] ( 3, 3 ) int -> rdi "index expr"
; V33 cse0 [V33,T29] ( 3, 1.50) int -> rax "CSE #08: moderate"
; V34 cse1 [V34,T30] ( 3, 1.50) int -> rsi "CSE #04: moderate"
; V35 cse2 [V35,T31] ( 3, 1.50) int -> rdi "CSE #05: moderate"
; V36 cse3 [V36,T32] ( 3, 1.50) int -> rdi "CSE #06: moderate"
; V37 cse4 [V37,T02] ( 7, 14 ) int -> [rbp-0x48] multi-def "CSE #03: aggressive"
; V38 cse5 [V38,T21] ( 3, 3 ) int -> rdx "CSE #01: moderate"
; V39 rat0 [V39,T23] ( 3, 2.20) long -> rdi "Spilling to split statement for tree"
; V40 rat1 [V40,T22] ( 3, 2.80) long -> r11 "fgMakeTemp is creating a new local variable"
; V41 rat2 [V41,T08] ( 3, 8.80) long -> rdi "Spilling to split statement for tree"
; V42 rat3 [V42,T07] ( 3, 11.20) long -> r11 "fgMakeTemp is creating a new local variable"
;
; Lcl frame size = 56
G_M3382_IG01:
push rbp
push r15
push r14
push r13
push r12
push rbx
sub rsp, 56
lea rbp, [rsp+0x60]
mov qword ptr [rbp-0x30], rdi
mov rbx, rdi
mov r15, rsi
mov r14, rdx
;; size=32 bbWeight=1 PerfScore 8.50
G_M3382_IG02:
cmp gword ptr [rbx+0x08], 0
jne SHORT G_M3382_IG04
;; size=7 bbWeight=1 PerfScore 4.00
G_M3382_IG03:
mov rdi, rbx
xor esi, esi
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.HashSet`1[System.__Canon]:Initialize(int):int:this
call [rax]System.Collections.Generic.HashSet`1[System.__Canon]:Initialize(int):int:this
;; size=17 bbWeight=0.50 PerfScore 1.88
G_M3382_IG04:
mov r13, gword ptr [rbx+0x10]
mov r12, gword ptr [rbx+0x18]
xor eax, eax
mov dword ptr [rbp-0x38], eax
test r15, r15
- je SHORT G_M3382_IG08
+ jne SHORT G_M3382_IG06
;; size=18 bbWeight=1 PerfScore 6.50
G_M3382_IG05:
+ xor ecx, ecx
+ jmp SHORT G_M3382_IG08
+ ;; size=4 bbWeight=0.50 PerfScore 1.12
+G_M3382_IG06:
mov rdi, qword ptr [rbx]
mov rsi, qword ptr [rdi+0x30]
mov rsi, qword ptr [rsi]
- mov r11, qword ptr [rsi+0x28]
+ mov r11, qword ptr [rsi+0x30]
test r11, r11
- je SHORT G_M3382_IG07
- ;; size=19 bbWeight=0.50 PerfScore 4.62
-G_M3382_IG06:
+ je G_M3382_IG15
+ ;; size=23 bbWeight=0.50 PerfScore 4.62
+G_M3382_IG07:
mov rdi, r12
mov rsi, r15
call [r11]
mov ecx, eax
- jmp SHORT G_M3382_IG09
- ;; size=13 bbWeight=0.50 PerfScore 2.88
-G_M3382_IG07:
- mov rsi, 0xD1FFAB1E ; global ptr
- mov rcx, 0xD1FFAB1E ; code for CORINFO_HELP_RUNTIMEHANDLE_CLASS
- call [rcx]CORINFO_HELP_RUNTIMEHANDLE_CLASS
- mov r11, rax
- jmp SHORT G_M3382_IG06
- ;; size=27 bbWeight=0.10 PerfScore 0.58
+ ;; size=11 bbWeight=0.50 PerfScore 1.88
G_M3382_IG08:
- xor edi, edi
- xor ecx, ecx
- ;; size=4 bbWeight=0.50 PerfScore 0.25
-G_M3382_IG09:
mov dword ptr [rbp-0x34], ecx
mov rdi, gword ptr [rbx+0x08]
mov esi, ecx
imul rsi, qword ptr [rbx+0x20]
shr rsi, 32
inc rsi
mov edx, dword ptr [rdi+0x08]
mov r8d, edx
imul rsi, r8
shr rsi, 32
cmp esi, edx
jae G_M3382_IG25
mov esi, esi
lea rdx, bword ptr [rdi+4*rsi+0x10]
mov bword ptr [rbp-0x50], rdx
mov r8d, dword ptr [rdx]
dec r8d
- jns SHORT G_M3382_IG12
- ;; size=62 bbWeight=1 PerfScore 20.50
+ js G_M3382_IG16
+ jmp SHORT G_M3382_IG10
+ ;; size=68 bbWeight=1 PerfScore 22.50
+G_M3382_IG09:
+ mov ecx, dword ptr [rbp-0x34]
+ ;; size=3 bbWeight=2 PerfScore 2.00
G_M3382_IG10:
+ mov r9d, dword ptr [r13+0x08]
+ mov dword ptr [rbp-0x48], r9d
+ cmp r8d, r9d
+ jae G_M3382_IG25
+ mov dword ptr [rbp-0x40], r8d
+ mov edi, r8d
+ shl rdi, 4
+ lea r10, bword ptr [r13+rdi+0x10]
+ mov bword ptr [rbp-0x58], r10
+ cmp dword ptr [r10+0x08], ecx
+ jne G_M3382_IG18
+ ;; size=47 bbWeight=4 PerfScore 52.00
+G_M3382_IG11:
+ mov rdi, qword ptr [rbx]
+ mov rsi, qword ptr [rdi+0x30]
+ mov rsi, qword ptr [rsi]
+ mov r11, qword ptr [rsi+0x28]
+ test r11, r11
+ je G_M3382_IG17
+ ;; size=23 bbWeight=2 PerfScore 18.50
+G_M3382_IG12:
+ mov r10, bword ptr [rbp-0x58]
+ mov rsi, gword ptr [r10]
+ mov rdi, r12
+ mov rdx, r15
+ call [r11]
+ test eax, eax
+ je G_M3382_IG18
+ ;; size=24 bbWeight=2 PerfScore 15.50
+G_M3382_IG13:
+ mov r8d, dword ptr [rbp-0x40]
+ mov dword ptr [r14], r8d
+ xor eax, eax
+ ;; size=9 bbWeight=0.50 PerfScore 1.12
+G_M3382_IG14:
+ add rsp, 56
+ pop rbx
+ pop r12
+ pop r13
+ pop r14
+ pop r15
+ pop rbp
+ ret
+ ;; size=15 bbWeight=0.50 PerfScore 2.12
+G_M3382_IG15:
+ mov rsi, 0xD1FFAB1E ; global ptr
+ mov rcx, 0xD1FFAB1E ; code for CORINFO_HELP_RUNTIMEHANDLE_CLASS
+ call [rcx]CORINFO_HELP_RUNTIMEHANDLE_CLASS
+ mov r11, rax
+ jmp G_M3382_IG07
+ ;; size=30 bbWeight=0.10 PerfScore 0.58
+G_M3382_IG16:
mov esi, dword ptr [rbx+0x30]
test esi, esi
- jle G_M3382_IG19
+ jle SHORT G_M3382_IG19
mov edi, dword ptr [rbx+0x2C]
mov r8d, edi
dec esi
mov dword ptr [rbx+0x30], esi
mov r9d, dword ptr [r13+0x08]
mov esi, r9d
cmp edi, esi
jae G_M3382_IG25
shl rdi, 4
mov edi, dword ptr [r13+rdi+0x1C]
neg edi
add edi, -3
mov dword ptr [rbx+0x2C], edi
jmp G_M3382_IG21
- ;; size=59 bbWeight=0.50 PerfScore 8.12
-G_M3382_IG11:
- mov ecx, dword ptr [rbp-0x34]
- ;; size=3 bbWeight=2 PerfScore 2.00
-G_M3382_IG12:
- mov r9d, dword ptr [r13+0x08]
- mov dword ptr [rbp-0x48], r9d
- cmp r8d, r9d
- jae G_M3382_IG25
- mov dword ptr [rbp-0x40], r8d
- mov edi, r8d
- shl rdi, 4
- lea r10, bword ptr [r13+rdi+0x10]
- mov bword ptr [rbp-0x58], r10
- cmp dword ptr [r10+0x08], ecx
- jne SHORT G_M3382_IG18
- ;; size=43 bbWeight=4 PerfScore 52.00
-G_M3382_IG13:
- mov rdi, qword ptr [rbx]
- mov rsi, qword ptr [rdi+0x30]
- mov rsi, qword ptr [rsi]
- mov r11, qword ptr [rsi+0x30]
- test r11, r11
- je SHORT G_M3382_IG17
- ;; size=19 bbWeight=2 PerfScore 18.50
-G_M3382_IG14:
- mov r10, bword ptr [rbp-0x58]
- mov rsi, gword ptr [r10]
- mov rdi, r12
- mov rdx, r15
- call [r11]
- test eax, eax
- je SHORT G_M3382_IG18
- ;; size=20 bbWeight=2 PerfScore 15.50
-G_M3382_IG15:
- mov r8d, dword ptr [rbp-0x40]
- mov dword ptr [r14], r8d
- xor eax, eax
- ;; size=9 bbWeight=0.50 PerfScore 1.12
-G_M3382_IG16:
- add rsp, 56
- pop rbx
- pop r12
- pop r13
- pop r14
- pop r15
- pop rbp
- ret
- ;; size=15 bbWeight=0.50 PerfScore 2.12
+ ;; size=55 bbWeight=0.50 PerfScore 8.12
G_M3382_IG17:
mov rsi, 0xD1FFAB1E ; global ptr
mov r11, 0xD1FFAB1E ; code for CORINFO_HELP_RUNTIMEHANDLE_CLASS
call [r11]CORINFO_HELP_RUNTIMEHANDLE_CLASS
mov r11, rax
- jmp SHORT G_M3382_IG14
- ;; size=28 bbWeight=0.40 PerfScore 2.30
+ jmp G_M3382_IG12
+ ;; size=31 bbWeight=0.40 PerfScore 2.30
G_M3382_IG18:
mov r10, bword ptr [rbp-0x58]
mov r8d, dword ptr [r10+0x0C]
mov esi, r8d
mov eax, dword ptr [rbp-0x38]
inc eax
mov dword ptr [rbp-0x38], eax
cmp dword ptr [rbp-0x48], eax
jb G_M3382_IG24
test esi, esi
mov r8d, esi
- jge G_M3382_IG11
- jmp G_M3382_IG10
- ;; size=44 bbWeight=4 PerfScore 48.00
+ jge G_M3382_IG09
+ jmp SHORT G_M3382_IG16
+ ;; size=41 bbWeight=4 PerfScore 48.00
G_M3382_IG19:
mov edi, dword ptr [rbx+0x28]
mov r8d, edi
mov dword ptr [rbp-0x44], r8d
mov r9d, dword ptr [r13+0x08]
cmp r9d, r8d
jne SHORT G_M3382_IG20
mov rdx, 0xD1FFAB1E ; code for System.Collections.HashHelpers:ExpandPrime(int):int
call [rdx]System.Collections.HashHelpers:ExpandPrime(int):int
mov esi, eax
mov rdi, rbx
xor edx, edx
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.HashSet`1[System.__Canon]:Resize(int,ubyte):this
call [rax]System.Collections.Generic.HashSet`1[System.__Canon]:Resize(int,ubyte):this
mov rdi, gword ptr [rbx+0x08]
mov r13d, dword ptr [rbp-0x34]
mov esi, r13d
imul rsi, qword ptr [rbx+0x20]
shr rsi, 32
inc rsi
mov eax, dword ptr [rdi+0x08]
mov ecx, eax
imul rsi, rcx
shr rsi, 32
cmp esi, eax
jae G_M3382_IG25
mov esi, esi
lea rdx, bword ptr [rdi+4*rsi+0x10]
mov rax, rdx
mov bword ptr [rbp-0x50], rax
;; size=108 bbWeight=0.50 PerfScore 15.62
G_M3382_IG20:
mov r8d, dword ptr [rbp-0x44]
mov r13d, r8d
lea edi, [r13+0x01]
mov dword ptr [rbx+0x28], edi
mov rdi, gword ptr [rbx+0x10]
mov r8, rdi
mov rax, r8
mov r8d, r13d
mov r13, rax
;; size=30 bbWeight=0.50 PerfScore 2.88
G_M3382_IG21:
cmp r8d, dword ptr [r13+0x08]
jae G_M3382_IG25
mov dword ptr [rbp-0x3C], r8d
mov edi, r8d
shl rdi, 4
lea rdi, bword ptr [r13+rdi+0x10]
mov ecx, dword ptr [rbp-0x34]
mov dword ptr [rdi+0x08], ecx
mov rdx, bword ptr [rbp-0x50]
mov esi, dword ptr [rdx]
dec esi
mov dword ptr [rdi+0x0C], esi
mov rsi, r15
call CORINFO_HELP_ASSIGN_REF
mov esi, dword ptr [rbp-0x3C]
lea edi, [rsi+0x01]
mov rdx, bword ptr [rbp-0x50]
mov dword ptr [rdx], edi
inc dword ptr [rbx+0x34]
mov dword ptr [r14], esi
cmp dword ptr [rbp-0x38], 100
jbe SHORT G_M3382_IG22
mov rsi, r12
mov rdi, 0xD1FFAB1E ; System.Collections.Generic.NonRandomizedStringEqualityComparer
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_ISINSTANCEOFCLASS
call [rax]CORINFO_HELP_ISINSTANCEOFCLASS
test rax, rax
je SHORT G_M3382_IG22
mov esi, dword ptr [r13+0x08]
mov rdi, rbx
mov edx, 1
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.HashSet`1[System.__Canon]:Resize(int,ubyte):this
call [rax]System.Collections.Generic.HashSet`1[System.__Canon]:Resize(int,ubyte):this
mov rdi, rbx
mov rsi, r15
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.HashSet`1[System.__Canon]:FindItemIndex(System.__Canon):int:this
call [rax]System.Collections.Generic.HashSet`1[System.__Canon]:FindItemIndex(System.__Canon):int:this
mov dword ptr [r14], eax
;; size=150 bbWeight=0.50 PerfScore 20.62
G_M3382_IG22:
mov eax, 1
;; size=5 bbWeight=0.50 PerfScore 0.12
G_M3382_IG23:
add rsp, 56
pop rbx
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
;; size=15 bbWeight=0.50 PerfScore 2.12
G_M3382_IG24:
mov rax, 0xD1FFAB1E ; code for System.ThrowHelper:ThrowInvalidOperationException_ConcurrentOperationsNotSupported()
call [rax]System.ThrowHelper:ThrowInvalidOperationException_ConcurrentOperationsNotSupported()
int3
;; size=13 bbWeight=0 PerfScore 0.00
G_M3382_IG25:
call CORINFO_HELP_RNGCHKFAIL
int3
;; size=6 bbWeight=0 PerfScore 0.00
-; Total bytes of code 766, prolog size 32, PerfScore 240.75, instruction count 220, allocated bytes for code 766 (MethodHash=bbfcf2c9) for method System.Collections.Generic.HashSet`1[System.__Canon]:AddIfNotPresent(System.__Canon,byref):ubyte:this (FullOpts)
+; Total bytes of code 785, prolog size 32, PerfScore 242.62, instruction count 220, allocated bytes for code 785 (MethodHash=bbfcf2c9) for method System.Collections.Generic.HashSet`1[System.__Canon]:AddIfNotPresent(System.__Canon,byref):ubyte:this (FullOpts)
; ============================================================
19 (35.19 % of base) - System.Threading.Tasks.ValueTask`1[System.__Canon]:GetHashCode():int:this
; Assembly listing for method System.Threading.Tasks.ValueTask`1[System.__Canon]:GetHashCode():int:this (FullOpts)
; Emitting BLENDED_CODE for X64 with AVX - Unix
; FullOpts code
; optimized code
; rbp based frame
; partially interruptible
; No PGO data
; Final local variable assignments
;
; V00 this [V00,T00] ( 4, 3.50) byref -> rdi this single-def
;* V01 TypeCtx [V01 ] ( 0, 0 ) long -> zero-ref single-def
;* V02 loc0 [V02 ] ( 0, 0 ) ref -> zero-ref ld-addr-op class-hnd <System.__Canon>
;# V03 OutArgs [V03 ] ( 1, 1 ) struct ( 0) [rsp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-; V04 tmp1 [V04,T01] ( 3, 3 ) ref -> rax single-def "argument with side effect"
+; V04 tmp1 [V04,T01] ( 3, 3 ) ref -> rdi single-def "argument with side effect"
; V05 tmp2 [V05,T02] ( 3, 3 ) ref -> rdi single-def "argument with side effect"
-; V06 cse0 [V06,T04] ( 3, 1.50) ref -> rdi "CSE #01: moderate"
-; V07 cse1 [V07,T03] ( 3, 2.50) ref -> rax "CSE #02: aggressive"
+; V06 cse0 [V06,T04] ( 3, 1.50) ref -> rdi "CSE #02: moderate"
+; V07 cse1 [V07,T03] ( 3, 2.50) ref -> rbx "CSE #01: aggressive"
;
-; Lcl frame size = 0
+; Lcl frame size = 8
G_M55889_IG01:
push rbp
- mov rbp, rsp
- ;; size=4 bbWeight=1 PerfScore 1.25
+ push rbx
+ push rax
+ lea rbp, [rsp+0x10]
+ ;; size=8 bbWeight=1 PerfScore 3.50
G_M55889_IG02:
- mov rax, gword ptr [rdi]
- test rax, rax
- je SHORT G_M55889_IG05
+ mov rbx, gword ptr [rdi]
+ test rbx, rbx
+ jne SHORT G_M55889_IG07
;; size=8 bbWeight=1 PerfScore 3.25
G_M55889_IG03:
- mov rdi, rax
- mov rax, qword ptr [rax]
- mov rax, qword ptr [rax+0x40]
- call [rax+0x18]System.Object:GetHashCode():int:this
- nop
- ;; size=14 bbWeight=0.50 PerfScore 3.75
-G_M55889_IG04:
- pop rbp
- ret
- ;; size=2 bbWeight=0.50 PerfScore 0.75
-G_M55889_IG05:
mov rdi, gword ptr [rdi+0x08]
test rdi, rdi
- je SHORT G_M55889_IG07
+ jne SHORT G_M55889_IG05
+ xor eax, eax
+ ;; size=11 bbWeight=0.50 PerfScore 1.75
+G_M55889_IG04:
+ add rsp, 8
+ pop rbx
+ pop rbp
+ ret
+ ;; size=7 bbWeight=0.50 PerfScore 1.12
+G_M55889_IG05:
mov rax, qword ptr [rdi]
mov rax, qword ptr [rax+0x40]
call [rax+0x18]System.Object:GetHashCode():int:this
nop
- ;; size=20 bbWeight=0.50 PerfScore 5.25
+ ;; size=11 bbWeight=0.50 PerfScore 3.62
G_M55889_IG06:
+ add rsp, 8
+ pop rbx
pop rbp
ret
- ;; size=2 bbWeight=0.50 PerfScore 0.75
+ ;; size=7 bbWeight=0.50 PerfScore 1.12
G_M55889_IG07:
- xor eax, eax
- ;; size=2 bbWeight=0.50 PerfScore 0.12
+ mov rdi, rbx
+ mov rax, qword ptr [rdi]
+ mov rax, qword ptr [rax+0x40]
+ call [rax+0x18]System.Object:GetHashCode():int:this
+ nop
+ ;; size=14 bbWeight=0.50 PerfScore 3.75
G_M55889_IG08:
+ add rsp, 8
+ pop rbx
pop rbp
ret
- ;; size=2 bbWeight=0.50 PerfScore 0.75
+ ;; size=7 bbWeight=0.50 PerfScore 1.12
-; Total bytes of code 54, prolog size 4, PerfScore 15.88, instruction count 24, allocated bytes for code 54 (MethodHash=9c3225ae) for method System.Threading.Tasks.ValueTask`1[System.__Canon]:GetHashCode():int:this (FullOpts)
+; Total bytes of code 73, prolog size 8, PerfScore 19.25, instruction count 32, allocated bytes for code 73 (MethodHash=9c3225ae) for method System.Threading.Tasks.ValueTask`1[System.__Canon]:GetHashCode():int:this (FullOpts)
; ============================================================